/* Ackermann Institutet — front-end helper styles for block sections */

.site-header { position: sticky; top: 0; z-index: 50; backdrop-filter: blur(8px); }

/* Language-aware primary nav */
.a-nav { display: flex; gap: 22px; font-family: "Plus Jakarta Sans", sans-serif; font-weight: 500; font-size: 15px; }
.a-nav a { white-space: nowrap; padding: 6px 0; border-bottom: 2px solid transparent; color: var(--wp--preset--color--ink); text-decoration: none; }
.a-nav a:hover, .a-nav a.is-current { border-color: var(--wp--preset--color--yellow); }
/* Booking buttons — yellow = course (primary), neutral outline = treatment booking */
.a-boka { display: inline-flex; align-items: center; gap: 6px;
  background: #fff; color: var(--wp--preset--color--ink);
  border: 1.5px solid var(--wp--preset--color--line);
  font-family: "Plus Jakarta Sans", sans-serif; font-weight: 700; font-size: 0.9rem;
  padding: 9.5px 19px; border-radius: 999px; text-decoration: none; white-space: nowrap; }
.a-boka:hover { border-color: var(--wp--preset--color--ink); background: var(--wp--preset--color--cream); }
.a-nav-cb, .a-nav-burger { display: none; }

@media (max-width: 900px) {
  .a-nav-burger { display: inline-flex; align-items: center; font-size: 26px; cursor: pointer; color: var(--wp--preset--color--ink); }
  .a-nav { display: none; position: absolute; left: 0; right: 0; top: 100%; flex-direction: column; gap: 0;
    background: #fff; padding: 8px 24px 16px; border-bottom: 1px solid var(--wp--preset--color--line); }
  .a-nav a { padding: 12px 0; border-bottom: 1px solid var(--wp--preset--color--line); }
  .a-nav-cb:checked ~ .a-nav { display: flex; }
}

/* Language switcher */
.lang-switch { font-family: "Plus Jakarta Sans", sans-serif; font-size: 0.85rem; font-weight: 500;
  color: var(--wp--preset--color--muted); display: inline-flex; align-items: center; gap: 8px; }
.lang-switch a { color: var(--wp--preset--color--muted); text-decoration: none; }
.lang-switch a:hover { color: var(--wp--preset--color--ink); }
.lang-switch .is-active { color: var(--wp--preset--color--ink); font-weight: 700; }
.lang-switch .sep { opacity: .45; }

/* Eyebrow label */
.eyebrow { font-family: "Plus Jakarta Sans", sans-serif; font-weight: 700; font-size: 0.78rem;
  letter-spacing: 0.18em; text-transform: uppercase; color: #9a8a18; }

/* Cards */
.a-card { border: 1px solid var(--wp--preset--color--line); border-radius: 18px; background: #fff;
  padding: 28px; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; height: 100%; }
.a-card:hover { transform: translateY(-3px); border-color: rgba(17,17,16,.14);
  box-shadow: 0 24px 50px -34px rgba(0,0,0,.35); }
.a-ic { width: 54px; height: 54px; border-radius: 14px; background: var(--wp--preset--color--cream);
  display: grid; place-items: center; color: #9a8a18; font-size: 26px; margin-bottom: 18px; }

/* Hero art — image fills a rounded frame with a yellow block offset behind it */
.hero-art { position: relative; }
.hero-art .wp-block-image { position: relative; margin: 0; z-index: 1; }
.hero-art .wp-block-image img { border-radius: 26px; display: block; width: 100%; height: auto;
  aspect-ratio: 4 / 4.3; object-fit: cover; }
.hero-art .wp-block-image::after { content: ""; position: absolute; right: -20px; bottom: -20px;
  width: 62%; height: 58%; background: var(--wp--preset--color--yellow); border-radius: 26px; z-index: -1; }

/* Avatars (team) */
.avatar { width: 84px; height: 84px; border-radius: 50%; background: var(--wp--preset--color--cream);
  color: #9a8a18; display: grid; place-items: center; font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700; font-size: 26px; margin: 0 auto 14px; }

/* Stars */
.stars { color: var(--wp--preset--color--yellow-deep); letter-spacing: 3px; }

/* Full-bleed bands keep their rounded CTA look */
.cta-band { border-radius: 28px; }

/* Grid helper for when core grid wraps oddly on small screens */
@media (max-width: 640px) {
  .site-header .wp-block-navigation { display: none; }
}

/* Consistent left edge on wide desktop: line up narrow (constrained) section content
   — hero eyebrow/heading/intro/buttons, prose paragraphs — with the wide card grids,
   so pages don't jump between a centered column and full-width sections. The shift is a
   constant (wideSize - contentSize)/2 and only kicks in once the wide grids are themselves
   centered (>= wideSize + padding), so nothing overflows on tablet/mobile. Scoped to
   top-level full-width sections only; cards and nested groups keep normal flow. */
@media (min-width: 1248px) {
  main .wp-block-group.alignfull.is-layout-constrained > :where(:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright)) {
    position: relative;
    left: calc((var(--wp--style--global--content-size) - var(--wp--style--global--wide-size)) / 2);
  }
}

/* Treatment tag chips (Ackermann Kliniken section) */
.a-tags { display: flex; flex-wrap: wrap; gap: 10px; }
.a-tag { display: inline-flex; align-items: center; padding: 9px 16px; border-radius: 999px;
  border: 1px solid var(--wp--preset--color--line); background: var(--wp--preset--color--cream);
  font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 600; font-size: 0.85rem;
  color: var(--wp--preset--color--ink); }

/* Blue (course) buttons need their own hover — the theme's button element style
   hovers to yellow-deep, which the !important preset background would otherwise freeze. */
.wp-block-button__link.has-blue-background-color:hover,
.wp-block-button__link.has-blue-background-color:focus {
  background-color: var(--wp--preset--color--blue-deep) !important;
}

/* Teacher / staff photo inside a card */
.a-card .a-photo { margin: 0 0 18px; }
.a-card .a-photo img { display: block; width: 100%; aspect-ratio: 4 / 4.4;
  object-fit: cover; object-position: center top; border-radius: 14px; }

/* Staff photo avatar (replaces the initials circle) */
.avatar-photo { width: 84px; margin: 0 auto 14px; }
.avatar-photo img { display: block; width: 84px; height: 84px; border-radius: 50%;
  object-fit: cover; object-position: center top; }

/* Course-booking button (yellow) — yellow means "course" everywhere */
.a-boka-kurs { background: var(--wp--preset--color--yellow); color: #1a1700; border-color: transparent; }
.a-boka-kurs:hover { background: var(--wp--preset--color--yellow-deep); border-color: transparent; }

/* Two-up split cards (College | Kliniken) — height:auto lets the flex row
   stretch both columns to equal height. (.a-card sets height:100%, but an
   explicit height on a flex item defeats align-items:stretch and, with an
   indefinite parent height, collapses to content height.) */
.a-split { padding: 32px; display: flex; flex-direction: column; height: auto; align-self: stretch; }
.a-split .wp-block-buttons { margin-top: auto; }
.college-flag { margin: 0 0 4px; }
.college-flag img { display: block; width: 100%; height: auto;
  aspect-ratio: 16 / 10; object-fit: contain; object-position: center; }

/* Numbered course steps */
.a-step-num { width: 38px; height: 38px; border-radius: 50%;
  margin-left: 0 !important; margin-right: auto !important;
  background: var(--wp--preset--color--blue); color: #fff;
  font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 800; font-size: 1rem;
  display: grid; place-items: center; margin-bottom: 14px; }

/* Refresher callout */
.a-refresher { border-radius: 20px; }

/* Photo inside sections/cards */
.a-shot { margin: 0; }
.a-shot img { display: block; width: 100%; height: auto; border-radius: 18px;
  aspect-ratio: 1 / 1; object-fit: cover; object-position: center; }
.clinic-shot { margin-bottom: 4px; }
.clinic-shot img { aspect-ratio: 16 / 10; object-fit: cover; }

/* Footer */
.a-foot-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px; }
.a-foot-col h2 { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 0.78rem; font-weight: 700;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--muted);
  margin: 0 0 14px; }
.a-foot-col ul { list-style: none; margin: 0; padding: 0; }
.a-foot-col li { margin-bottom: 9px; }
.a-foot-col a { color: var(--wp--preset--color--ink); text-decoration: none; font-size: 0.94rem; }
.a-foot-col a:hover { text-decoration: underline; }
.a-foot-name { font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 800;
  letter-spacing: 0.04em; margin: 0 0 12px; }
.a-foot-addr { font-size: 0.9rem; color: var(--wp--preset--color--muted); margin: 0 0 10px; line-height: 1.6; }
.a-foot-addr a { color: var(--wp--preset--color--muted); font-size: 0.9rem; }
@media (max-width: 900px) { .a-foot-grid { grid-template-columns: 1fr 1fr; gap: 30px; } }
@media (max-width: 560px) { .a-foot-grid { grid-template-columns: 1fr; } }

/* Reusable clinic-team grid ([ackermann_team]) — one source, used on home + clinic */
.a-team-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 20px; }
.a-team-card { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; text-align: center; }
.a-team-card .avatar-photo { width: 104px; margin: 0 0 16px; }
.a-team-card .avatar-photo img { width: 104px; height: 104px; }
.a-team-card h3 { font-size: 1.15rem; margin: 0 0 3px; }
.a-team-role { color: var(--wp--preset--color--muted); font-size: 0.9rem; margin: 0; }

/* Contact page details list */
.a-contact-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.a-contact-list li { display: flex; align-items: flex-start; gap: 12px; line-height: 1.5; }
.a-contact-list i { color: #9a8a18; font-size: 22px; line-height: 1.5; flex: none; }
.a-contact-list a { color: var(--wp--preset--color--ink); text-decoration: none; }
.a-contact-list a:hover { text-decoration: underline; }

/* Gravity Forms — match the theme (contact form on /kontakt/) */
.gform_wrapper input[type=text],
.gform_wrapper input[type=email],
.gform_wrapper input[type=tel],
.gform_wrapper textarea {
  border: 1px solid var(--wp--preset--color--line); border-radius: 10px;
  padding: 11px 14px; font-family: "Inter", sans-serif; font-size: 1rem;
  background: #fff; width: 100%; }
.gform_wrapper input:focus,
.gform_wrapper textarea:focus {
  outline: none; border-color: var(--wp--preset--color--ink); }
.gform_wrapper .gfield_label { font-family: "Plus Jakarta Sans", sans-serif; font-weight: 600; }
.gform_wrapper .gform_footer input[type=submit],
.gform_wrapper .gform_footer button {
  background: var(--wp--preset--color--ink); color: #fff; border: 0;
  font-family: "Plus Jakarta Sans", sans-serif; font-weight: 700; font-size: 0.95rem;
  padding: 12px 26px; border-radius: 999px; cursor: pointer; transition: background .15s ease; }
.gform_wrapper .gform_footer input[type=submit]:hover,
.gform_wrapper .gform_footer button:hover { background: #000; }

/* Full-width rectangular banner image (under hero on home + College) */
.a-banner img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9;
  object-fit: cover; object-position: center 30%; border-radius: 20px; }

/* Team avatar placeholder — person without a photo yet */
.a-team-card .avatar-ph { width: 104px; height: 104px; border-radius: 50%;
  background: var(--wp--preset--color--cream); display: grid; place-items: center; }
.a-team-card .avatar-ph i { font-size: 48px; color: #9a8a18; }

/* College teacher photo placeholder — teacher without a photo yet */
.a-photo-ph { margin: 0 0 18px; width: 100%; aspect-ratio: 4 / 4.4; border-radius: 14px;
  background: var(--wp--preset--color--cream); display: grid; place-items: center; }
.a-photo-ph i { font-size: 64px; color: #9a8a18; }

/* Client "lite mindre rubriker" — moderate, site-wide step down on default
   headings, made responsive (clamp) so they also shrink on mobile. Excludes
   any heading with an inline font-size (hero h1 clamps, stat numbers 3.2rem,
   CTA-band 2.3rem, card h3s) so those keep their bespoke sizes. */
main h1:not([style*="font-size"]) { font-size: clamp(1.9rem, 3.8vw, 2.85rem); line-height: 1.12; }
main h2:not([style*="font-size"]) { font-size: clamp(1.6rem, 2.6vw, 2.1rem); }

/* Text-on-image hero (wp:cover) — keep the eyebrow readable on the dark overlay */
.a-hero-cover .eyebrow { color: #FFDE00; }
.a-hero-cover .wp-block-cover__inner-container { width: 100%; }

/* Contact Form 7 — match the theme (replaces Gravity Forms styling) */
.wpcf7 label { font-family: "Plus Jakarta Sans", sans-serif; font-weight: 600; display: block; }
.wpcf7 input[type=text], .wpcf7 input[type=email], .wpcf7 input[type=tel], .wpcf7 textarea {
  border: 1px solid var(--wp--preset--color--line); border-radius: 10px;
  padding: 11px 14px; font-family: "Inter", sans-serif; font-size: 1rem;
  background: #fff; width: 100%; margin-top: 6px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { outline: none; border-color: var(--wp--preset--color--ink); }
.wpcf7 .wpcf7-acceptance { font-family: "Inter", sans-serif; font-size: 0.95rem; }
.wpcf7 .wpcf7-submit {
  background: var(--wp--preset--color--ink); color: #fff; border: 0;
  font-family: "Plus Jakarta Sans", sans-serif; font-weight: 700; font-size: 0.95rem;
  padding: 12px 26px; border-radius: 999px; cursor: pointer; transition: background .15s ease; }
.wpcf7 .wpcf7-submit:hover { background: #000; }
.wpcf7 .wpcf7-response-output { border-radius: 10px; margin: 1rem 0 0; }

/* Course list ([ackermann_kurser]) */
.a-kurser { display: flex; flex-direction: column; gap: 2.5rem; }
.a-kurs-title { font-size: 1.5rem; margin: 0 0 0.75rem; }
.a-kurs-desc { color: var(--wp--preset--color--muted); margin-bottom: 1.25rem; }
.a-kurs-rows { display: flex; flex-direction: column; gap: 12px; }
.a-kurs-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  border: 1px solid var(--wp--preset--color--line); border-radius: 14px; padding: 16px 20px;
  background: #fff; flex-wrap: wrap; }
.a-kurs-info { display: flex; align-items: baseline; gap: 1.25rem; flex-wrap: wrap; }
.a-kurs-lvl { font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 700; }
.a-kurs-loc, .a-kurs-date { color: var(--wp--preset--color--muted); }
.a-kurs-dl { color: var(--wp--preset--color--muted); font-size: 0.85rem; }
.a-kurs-none { color: var(--wp--preset--color--muted); }

/* ---- Dropdown navigation (2026-08-11) ---- */
.a-nav { align-items: center; }
.a-nav-group { position: relative; }
.a-nav-parent { display: inline-flex; align-items: center; gap: 3px; }
.a-nav-arrow { font-size: 14px; line-height: 1; transition: transform .15s ease; }
.a-nav-group:hover .a-nav-arrow, .a-nav-group:focus-within .a-nav-arrow { transform: rotate(180deg); }
.a-nav-menu { display: none; position: absolute; top: 100%; left: 0; min-width: 200px;
	background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 12px;
	box-shadow: 0 14px 34px rgba(0,0,0,.12); padding: 8px; flex-direction: column; gap: 2px; z-index: 60; }
.a-nav-menu::before { content: ""; position: absolute; top: -12px; left: 0; right: 0; height: 12px; }
.a-nav-group:hover .a-nav-menu, .a-nav-group:focus-within .a-nav-menu { display: flex; }
.a-nav-menu a { white-space: nowrap; padding: 9px 12px; border: 0; border-radius: 8px; }
.a-nav-menu a:hover, .a-nav-menu a.is-current { background: var(--wp--preset--color--cream); border: 0; }
.a-nav-group.is-current > .a-nav-parent { border-color: var(--wp--preset--color--yellow); }

@media (max-width: 900px) {
	.a-nav { align-items: stretch; }
	.a-nav-group { position: static; }
	.a-nav-parent { justify-content: space-between; }
	.a-nav-arrow { display: none; }
	.a-nav-menu { display: flex; position: static; min-width: 0; padding: 0 0 0 18px;
		background: transparent; border: 0; border-radius: 0; box-shadow: none; }
	.a-nav-menu::before { display: none; }
	.a-nav-menu a { padding: 12px 0; border-bottom: 1px solid var(--wp--preset--color--line); border-radius: 0; }
	.a-nav-menu a:hover, .a-nav-menu a.is-current { background: transparent; }
}

/* keep autop paragraph from breaking the nav layout / burger toggle */
.site-header p:has(.a-nav){display:contents;}
.site-header p{margin:0;padding:0;}

/* Mobile: header actions (lang + booking) move into the burger menu */
.a-nav-actions{display:none;}
@media (max-width: 900px){
	.site-header .a-header-actions{display:none;}
	.a-nav-actions{display:flex;flex-direction:column;gap:14px;padding:18px 0 6px;margin-top:6px;border-top:1px solid var(--wp--preset--color--line);}
	.a-nav-actions .lang-switch{font-size:16px;}
	.a-nav-actions .a-boka{display:block;text-align:center;}
}

.a-nav-actions .lang-switch a{border-bottom:0;padding:0;}

/* ---- Therapist "Läs mer" + bio modal (2026-08-11) ---- */
.a-team-more{margin-top:12px;background:none;border:0;padding:2px 0;font:inherit;font-weight:600;
	color:var(--wp--preset--color--ink);cursor:pointer;display:inline-flex;align-items:center;gap:5px;
	border-bottom:2px solid var(--wp--preset--color--yellow);}
.a-team-more:hover{opacity:.7;}
.a-team-more .ti{font-size:15px;}

.a-modal{position:fixed;inset:0;z-index:1000;display:none;}
.a-modal.is-open{display:block;}
.a-modal-backdrop{position:absolute;inset:0;background:rgba(20,20,20,.55);}
.a-modal-box{position:relative;z-index:1;max-width:520px;width:calc(100% - 40px);margin:9vh auto 0;
	background:#fff;border-radius:18px;padding:32px;box-shadow:0 30px 80px rgba(0,0,0,.32);
	max-height:82vh;overflow:auto;}
.a-modal-x{position:absolute;top:12px;right:16px;background:none;border:0;font-size:28px;line-height:1;
	cursor:pointer;color:var(--wp--preset--color--muted);}
.a-modal-x:hover{color:var(--wp--preset--color--ink);}
.a-modal-head{display:flex;align-items:center;gap:16px;margin-bottom:16px;}
.a-modal-head img{width:74px;height:74px;border-radius:50%;object-fit:cover;flex:none;}
.a-modal-head h3{margin:0;}
.a-modal-head .a-team-role{margin:3px 0 0;color:var(--wp--preset--color--muted);}
.a-modal-body p{margin:0;line-height:1.6;}
body.a-modal-lock{overflow:hidden;}
@media (max-width:560px){ .a-modal-box{margin:0;width:100%;min-height:100%;border-radius:0;padding:26px 22px;max-height:none;} }

/* ---- College image carousel (2026-08-13) ---- */
.a-carousel{position:relative;max-width:var(--wp--style--global--wide-size,1100px);margin-inline:auto;border-radius:16px;overflow:hidden;}
.a-carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.a-carousel-track::-webkit-scrollbar{display:none;}
.a-slide{flex:0 0 100%;scroll-snap-align:center;margin:0;}
.a-slide img{display:block;width:100%;height:clamp(300px,44vw,500px);object-fit:cover;}
.a-carousel-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:#1a1a1a;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,.2);z-index:2;}
.a-carousel-nav:hover{background:#fff;}
.a-prev{left:14px;} .a-next{right:14px;}
@media (max-width:560px){ .a-carousel-nav{width:40px;height:40px;font-size:22px;} }

/* Center incomplete last rows in .a-card grids (WP grid left-aligns them) — 2026-08-13 */
.wp-block-group.is-layout-grid:has(> .a-card){
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:2rem;
}
.wp-block-group.is-layout-grid:has(> .a-card) > .a-card{
	flex:0 1 calc((100% - 4rem)/3);
	min-width:262px;
}

/* ---- Course occasion: time / seats-left / fully-booked (2026-08-19) ---- */
.a-kurs-time{color:var(--wp--preset--color--muted);}
.a-kurs-time::before{content:"·";margin:0 8px;color:var(--wp--preset--color--line);}
.a-kurs-left{color:#b26a00;font-weight:600;}
.a-kurs-left::before{content:"·";margin:0 8px;color:var(--wp--preset--color--line);font-weight:400;}
.a-kurs-row.is-full{opacity:.72;}
.a-kurs-fullmark{display:inline-flex;align-items:center;font-weight:600;color:var(--wp--preset--color--muted);
	border:1px solid var(--wp--preset--color--line);border-radius:999px;padding:8px 16px;white-space:nowrap;}
.a-kurs-note{color:var(--wp--preset--color--muted);font-style:italic;}
.a-kurs-note::before{content:"·";margin:0 8px;font-style:normal;color:var(--wp--preset--color--line);}

/* ---- Course application form: 2-step, compact (2026-08-19) ---- */
.a-appform{max-width:680px;}
.a-hidden{display:none !important;}
.a-appform-course{padding:14px 18px;border-radius:12px;background:var(--wp--preset--color--cream);
	color:var(--wp--preset--color--muted);margin-bottom:26px;font-weight:600;font-size:.95rem;}
.a-appform-course.is-set{background:var(--wp--preset--color--ink);color:#fff;}
.a-step{border:0;padding:0;margin:0;min-width:0;}
.a-step[hidden]{display:none;}
.a-step-label{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.06em;
	text-transform:uppercase;color:var(--wp--preset--color--muted);margin:0 0 18px;}
.a-appform .a-grid2{display:grid;grid-template-columns:1fr 1fr;gap:2px 22px;}
.a-appform label{display:block;font-weight:600;font-size:.9rem;margin:0 0 16px;color:var(--wp--preset--color--ink);}
.a-appform label .wpcf7-form-control-wrap{display:block;margin-top:6px;}
.a-appform input:not([type=checkbox]),.a-appform select{width:100%;}
.a-appform .a-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;font-weight:400;
	font-size:.92rem;margin-top:10px;}
.a-appform .a-consent .wpcf7-form-control-wrap{display:inline;margin:0;}
.a-appform .a-consent input{width:auto;margin-top:3px;}
.a-step-nav{display:flex;align-items:center;gap:14px;margin-top:12px;}
.a-btn-ghost{background:none;border:0;font:inherit;font-weight:600;color:var(--wp--preset--color--muted);
	cursor:pointer;padding:12px 4px;}
.a-btn-ghost:hover{color:var(--wp--preset--color--ink);}
.a-appform .a-field-bad input,.a-appform input.a-field-bad,.a-appform select.a-field-bad{border-color:#c0392b !important;}
@media(max-width:600px){.a-appform .a-grid2{grid-template-columns:1fr;}}

/* ---- Course application form: spacing refinements (2026-08-19b) ---- */
.a-appform label{display:block;font-weight:600;font-size:.9rem;line-height:1.3;margin:0 0 22px;color:var(--wp--preset--color--ink);}
.a-appform label .wpcf7-form-control-wrap{display:block;margin-top:8px;}
.a-appform .a-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;align-items:start;}
.a-appform input:not([type=checkbox]),.a-appform select{width:100%;box-sizing:border-box;}
.a-appform .a-consent{grid-column:auto;display:block;font-weight:400;font-size:.92rem;line-height:1.5;margin:4px 0 0;}
.a-appform .a-consent .wpcf7-form-control-wrap{display:inline;margin:0;}
.a-appform .a-consent .wpcf7-list-item{margin:0;display:inline;}
.a-appform .a-consent input[type=checkbox]{width:auto;margin:0 8px 0 0;vertical-align:middle;}
.a-appform .a-step-nav{margin-top:20px;}

/* ---- Styled select (custom chevron, matches inputs) 2026-08-19 ---- */
.wpcf7 select, .a-appform select{
	-webkit-appearance:none;-moz-appearance:none;appearance:none;
	border:1px solid var(--wp--preset--color--line);border-radius:10px;
	padding:11px 44px 11px 14px;font-family:"Inter",sans-serif;font-size:1rem;line-height:1.3;
	color:var(--wp--preset--color--ink);background-color:#fff;cursor:pointer;width:100%;margin-top:6px;
	background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2716%27 height=%2716%27 fill=%27none%27 stroke=%27%231a1a1a%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 viewBox=%270 0 24 24%27%3E%3Cpolyline points=%276 9 12 15 18 9%27/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 15px center;background-size:16px;
}
.wpcf7 select:focus, .a-appform select:focus{outline:none;border-color:var(--wp--preset--color--ink);}
.wpcf7 select:hover, .a-appform select:hover{border-color:var(--wp--preset--color--muted);}
.a-tack-kurs-line{margin:0 0 1.5rem;}
.a-tack-kurs{display:inline-block;font-weight:600;background:var(--wp--preset--color--cream);border:1px solid var(--wp--preset--color--line);border-radius:10px;padding:10px 16px;}

/* ---- College carousel: full-bleed + cover its block (2026-08-27) ---- */
.a-carousel{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);border-radius:0;}
.a-carousel .a-slide img{height:clamp(320px,46vw,560px);}
.a-carousel-nav{width:52px;height:52px;font-size:28px;}

/* ---- Teachers: round avatars, centered — same format as therapists (2026-08-27) ---- */
.a-card:has(.a-photo), .a-card:has(.a-photo-ph){ text-align:center; }
.a-card .a-photo{ width:104px; margin:0 auto 16px; }
.a-card .a-photo img{ width:104px; height:104px; aspect-ratio:1/1; border-radius:50%; object-fit:cover; object-position:center top; }
.a-card .a-photo-ph{ width:104px; height:104px; margin:0 auto 16px; aspect-ratio:1/1; border-radius:50%; }
.a-card .a-photo-ph i{ font-size:44px; }

/* ---- Course info box above the application form (2026-08-27) ---- */
.a-kursinfo{max-width:680px;background:var(--wp--preset--color--cream);border-radius:16px;padding:28px 32px;margin:0 0 2.5rem;}
.a-kursinfo p{margin:0 0 1rem;line-height:1.6;}
.a-kursinfo h3{font-size:1.15rem;margin:1.6rem 0 .5rem;}
.a-kursinfo .a-kursinfo-tip{background:#fff;border-radius:10px;padding:12px 16px;}
.a-kursinfo ul{margin:.5rem 0 0;padding-left:1.2rem;}
.a-kursinfo li{margin:0 0 .4rem;line-height:1.5;}

/* ---- Symptom card descriptions (place prepared for client texts 2026-08-27) ---- */
.a-symptom-desc{color:var(--wp--preset--color--muted);font-size:.92rem;line-height:1.5;margin:.5rem 0 0;}
.a-symptom-desc:empty{display:none;}

/* ---- College teachers: tune round-avatar crop (faces sit higher than clinic portraits) ---- */
.a-teacher-grid .avatar-photo img{object-position:center 12%;}

/* ---- News system (2026-08-27) ---- */
.a-news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px;}
.a-news-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease;}
.a-news-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.10);}
.a-news-thumb{aspect-ratio:16/10;overflow:hidden;background:var(--wp--preset--color--cream);}
.a-news-img{width:100%;height:100%;object-fit:cover;display:block;}
.a-news-thumb-ph{display:grid;place-items:center;}
.a-news-thumb-ph i{font-size:44px;color:#c9b93f;}
.a-news-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1;}
.a-news-date{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--wp--preset--color--muted);}
.a-news-ext{color:#b79a12;}
.a-news-title{font-size:1.25rem;margin:.5rem 0 .5rem;line-height:1.25;}
.a-news-excerpt{color:var(--wp--preset--color--muted);font-size:.95rem;line-height:1.5;margin:0 0 1.1rem;}
.a-news-cta{margin-top:auto;font-weight:600;}
.a-news-empty{color:var(--wp--preset--color--muted);font-size:1.05rem;}
.a-news-back{display:inline-block;font-weight:600;text-decoration:none;font-size:.95rem;}
.a-news-back:hover{opacity:.7;}
@media(max-width:600px){.a-news-grid{grid-template-columns:1fr;}}

/* News: left-align the grid (was centered by WP constrained layout) */
.a-news-grid{max-width:none;margin-inline:0;}
.a-news-empty{max-width:none;margin-inline:0;}
