/* ORGANISATIESPAGINA (/organisaties/): alle regels zijn gescoped op .org-page of staan in een eigen klasse.
   De header, topbar, mobiele menu en gedeelde stijlen (base.css) worden hier niet aangepast.
   Het goedgekeurde ontwerp (hero tot FAQ) gebruikt DM Sans 400/500 uitsluitend in de .ss-modern secties;
   header, hero, aanvraagsectie, formulier en footer houden hun eigen typografie. */

@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-latin-400.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-latin-500.woff2) format('woff2')}

.org-page{--org-pad:clamp(1.9rem,4vw,3.25rem);
  --ss-berry:#982060; --ss-deep:#6d1746; --ss-white:#ffffff;
  --ss-soft:#fbf7fa; --ss-ink:#221426; --ss-muted:#6d5f6a;
  --ss-line:rgba(34,20,38,.12)}
.org-page h3{line-height:1.25;letter-spacing:-.01em}
.org-icons{position:absolute;width:0;height:0;overflow:hidden}
/* iconen uit het goedgekeurde concept: 16 px met lijndikte 1,6 */
.org-ic{display:block;flex:none;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* ---- HERO: compact, header blijft transparant erboven (klasse .hero blijft nodig voor de headerdetectie) ---- */
.org-page .hero{position:relative;background:#150d13;min-height:calc(clamp(420px,52vh,540px) - var(--hdr-h));display:flex;align-items:center;padding:clamp(1.25rem,2.6vw,2rem) 0 clamp(1.75rem,3vw,2.5rem);overflow:hidden;isolation:isolate}
.org-page .hero>.wide{width:100%}
.org-page .hero-img{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:-2;width:min(100%,1800px);height:100%;object-fit:cover;object-position:50% 30%;pointer-events:none;filter:brightness(.9) saturate(.97)}
.org-page .hero-scrim{position:absolute;inset:0;z-index:-1;background:
  linear-gradient(180deg,rgba(4,17,19,.56) 0%,rgba(4,17,19,.2) 24%,transparent 44%),
  linear-gradient(100deg,rgba(6,20,22,.78) 0%,rgba(6,20,22,.56) 42%,rgba(6,20,22,.26) 72%,rgba(6,20,22,.14) 100%),
  linear-gradient(rgba(5,15,17,.2),rgba(5,15,17,.2))}
.org-page .hero-copy{max-width:690px}
.org-page .hero .crumb{margin-bottom:.9rem}
.org-page .hero h1{font-size:clamp(2rem,4.4vw,3.2rem);letter-spacing:-.035em;margin-bottom:.9rem;color:#fff;text-wrap:balance}
.org-page .hero h1 .b{color:#fff}
.org-page .hero h1 .g{color:var(--teal-2)}
.org-page .hero .lead{font-size:clamp(1.02rem,1.4vw,1.15rem);color:rgba(255,255,255,.9);max-width:56ch;margin-bottom:1.4rem}
.org-page .hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.org-page .org-points{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem 1.4rem;margin-top:1.1rem;color:#fff;font-weight:600;font-size:.95rem}
.org-page .org-points li{display:flex;align-items:center;gap:.4rem}
.org-page .org-points svg{flex:0 0 auto}
@media(max-width:767px){
  /* foto vult de hele hero als achtergrond (zelfde opbouw als desktop); scrim houdt de tekst leesbaar */
  .org-page .hero{padding:clamp(5rem,32vw,10rem) 0 1.75rem;min-height:0;display:block}
  .org-page .hero-scrim{background:linear-gradient(180deg,rgba(21,13,19,0) 0%,rgba(21,13,19,0) 20%,rgba(21,13,19,.74) 50%,rgba(21,13,19,.92) 100%)}
  .org-page .hero-top-scrim{position:absolute;top:0;left:0;right:0;height:0;display:none;z-index:1;background:linear-gradient(to bottom,rgba(4,17,19,.6),rgba(4,17,19,.2) 70%,transparent);pointer-events:none}
  .org-page .hero-copy{max-width:none;position:relative;z-index:1}
  .org-page .hero-actions{gap:.6rem}
  .org-page .hero-actions .btn{flex:1 1 100%}
  .org-page .hero .lead{margin-bottom:1.1rem}
  .org-page .org-points{margin-top:.9rem;gap:.25rem 1.1rem;font-size:.9rem}
}
@media(min-width:768px){
  .org-page .hero-top-scrim{display:none}
}

/* ---- Goedgekeurd ontwerp: klikbare zin, samenwerking met Lars, werkwijze, werkvelden, klantreactie en FAQ ---- */
.org-page .ss-modern { font-family:'DM Sans',Arial,sans-serif; font-weight:400; }
.org-page .ss-modern :is(h2,h3) { font-family:inherit; }
/* In het goedgekeurde referentiebestand renderen alinea's in het systeemlettertype van de site (de weergave
   van het concept overschreef p), terwijl koppen, labels, knoppen en links DM Sans gebruiken. Zo overgenomen;
   voor DM Sans in alinea's: deze regel verwijderen. */
.org-page .ss-modern p { font-family:var(--fb); }
.org-page .ss-wrap { width:100%; max-width:1180px; margin:0 auto; padding:0 48px; }
.org-page .ss-h2 { font-size:clamp(30px,3.8vw,42px); line-height:1.12; letter-spacing:-1.5px; font-weight:500; margin:0; text-wrap:balance; }
.org-page .ss-body { color:var(--ss-muted); font-size:16px; line-height:1.65; }
.org-page .ss-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:11px 21px; border-radius:25px; background:var(--ss-berry); color:var(--ss-white); border:0; font:500 14px/1.5 'DM Sans',Arial,sans-serif; text-decoration:none; transition:background 160ms ease; max-width:100%; text-align:center; }
.org-page .ss-button:hover { background:var(--ss-deep); }
.org-page .ss-link { color:var(--ss-berry); font-weight:500; text-decoration:underline; text-underline-offset:5px; }
.org-page .ss-situations { padding:30px 0 38px; }
.org-page .ss-conversation { width:100%; min-width:0; padding:44px 36px 42px; border-radius:12px; background:var(--ss-white); color:#352c36; }
.org-page .ss-composition { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:center; gap:42px; }
.org-page .ss-question h2 { font-size:clamp(32px,5.1vw,39px); line-height:1.13; letter-spacing:-1.4px; font-weight:500; margin:0; }
.org-page .ss-choices { margin-top:26px; display:grid; row-gap:8px; }
.org-page .ss-choice { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; width:100%; padding:3px 0; background:transparent; border:0; color:#716572; font-family:inherit; font-size:clamp(21px,3.4vw,25px); font-weight:400; line-height:1.3; letter-spacing:-.6px; text-align:left; transition:color 160ms ease; }
.org-page .ss-choice[aria-pressed="true"] { color:var(--ss-berry); font-weight:500; }
.org-page .ss-choice[aria-pressed="false"]:hover { color:var(--ss-ink); }
.org-page .ss-confirmation { flex:0 0 18px; display:flex; align-items:center; justify-content:center; visibility:hidden; }
.org-page .ss-choice[aria-pressed="true"] .ss-confirmation { visibility:visible; }
.org-page .ss-responses { display:grid; min-width:0; padding-top:30px; }
.org-page .ss-response { grid-area:1/1; min-width:0; display:flex; flex-direction:column; align-items:flex-start; visibility:hidden; pointer-events:none; }
.org-page .ss-response.is-active { visibility:visible; pointer-events:auto; }
.org-page .ss-response h3 { margin:0 0 15px; font-size:25px; line-height:1.2; letter-spacing:-.75px; font-weight:500; }
.org-page .ss-response p { margin:0 0 25px; max-width:30ch; color:#716572; font-size:16px; line-height:1.65; }
.org-page .ss-response .ss-button { margin-top:auto; padding:11px 19px; }
.org-page .ss-match { padding:0 0 116px; }
.org-page .ss-match-stage { position:relative; }
.org-page .ss-match-surface { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-areas:"list intro"; column-gap:58px; padding:56px 48px 112px; background:var(--ss-berry); color:var(--ss-white); border-radius:16px 72px 16px 16px; }
.org-page .ss-match-intro { grid-area:intro; max-width:330px; }
.org-page .ss-match-intro p { font-size:17px; line-height:1.65; color:rgba(255,255,255,.9); margin-top:23px; max-width:30ch; }
.org-page .ss-fit-list { grid-area:list; margin:0; }
.org-page .ss-fit-list>div { display:grid; grid-template-columns:92px minmax(0,1fr); column-gap:16px; padding:15px 0; border-bottom:1px solid rgba(255,255,255,.24); }
.org-page .ss-fit-list>div:first-child { padding-top:5px; }
.org-page .ss-fit-list dt { font-size:17px; line-height:1.5; font-weight:500; }
.org-page .ss-fit-list dd { margin:0; color:rgba(255,255,255,.9); font-size:15px; line-height:1.65; }
.org-page .ss-lars { position:absolute; z-index:2; left:48px; bottom:-74px; width:330px; padding:23px 25px 20px; border-radius:18px; background:var(--ss-white); color:var(--ss-ink); box-shadow:0 14px 32px -18px rgba(64,18,52,.35); }
.org-page .ss-lars-top { display:flex; align-items:center; gap:13px; }
.org-page .ss-lars-symbol { width:42px; height:40px; object-fit:contain; flex:0 0 42px; }
.org-page .ss-lars h3 { font-size:19px; line-height:1.3; letter-spacing:-.5px; font-weight:500; margin:0; }
.org-page .ss-lars p { margin:13px 0 10px; font-size:14px; line-height:1.6; color:var(--ss-muted); }
.org-page .ss-lars-contact { display:flex; align-items:center; gap:9px; min-height:36px; color:var(--ss-berry); font-size:14px; font-weight:500; overflow-wrap:anywhere; }
.org-page .ss-lars-contact:hover { text-decoration:underline; text-underline-offset:4px; }
.org-page .ss-workflow { padding:32px 0 64px; }
.org-page .ss-workflow-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr); gap:62px; align-items:start; }
.org-page .ss-workflow-heading p { margin-top:20px; max-width:29ch; }
.org-page .ss-process-choices { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.org-page .ss-process-button { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:0 0 13px; min-height:80px; font:400 13px/1.35 'DM Sans',Arial,sans-serif; color:var(--ss-muted); background:transparent; border:0; border-bottom:2px solid var(--ss-line); text-align:left; }
.org-page .ss-process-button .ss-step-number { display:flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:50%; background:var(--ss-soft); color:var(--ss-muted); font-size:14px; }
.org-page .ss-process-button[aria-pressed="true"] { color:var(--ss-berry); border-color:var(--ss-berry); font-weight:500; }
.org-page .ss-process-button[aria-pressed="true"] .ss-step-number { background:var(--ss-berry); color:var(--ss-white); }
.org-page .ss-process-panels { display:grid; margin-top:27px; }
.org-page .ss-process-panel { grid-area:1/1; visibility:hidden; pointer-events:none; }
.org-page .ss-process-panel.is-active { visibility:visible; pointer-events:auto; }
.org-page .ss-process-panel h3 { font-size:25px; font-weight:500; letter-spacing:-.7px; margin:0 0 12px; line-height:1.25; }
.org-page .ss-process-panel p { max-width:46ch; }
.org-page .ss-process-note { margin-top:21px; color:var(--ss-muted); font-size:13px; line-height:1.6; }
.org-page .ss-fields { background:var(--ss-soft); padding:58px 0 62px; }
.org-page .ss-fields-top { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); grid-template-areas:"intro heading"; column-gap:46px; align-items:start; margin-bottom:34px; }
.org-page .ss-fields-top h2 { grid-area:heading; max-width:420px; }
.org-page .ss-fields-top p { grid-area:intro; max-width:34ch; margin-top:3px; }
.org-page .ss-fields-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); grid-template-areas:"panels choices"; gap:46px; align-items:stretch; }
.org-page .ss-field-choices { grid-area:choices; display:flex; flex-direction:column; align-items:stretch; justify-content:center; }
.org-page .ss-field-button { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:56px; padding:9px 0; border:0; background:transparent; text-align:left; color:var(--ss-muted); font:400 clamp(20px,2.5vw,26px)/1.3 'DM Sans',Arial,sans-serif; letter-spacing:-.7px; }
.org-page .ss-field-button::after { content:''; width:8px; height:8px; border-radius:50%; background:var(--ss-berry); flex:0 0 8px; opacity:0; }
.org-page .ss-field-button[aria-pressed="true"] { color:var(--ss-berry); font-weight:500; }
.org-page .ss-field-button[aria-pressed="true"]::after { opacity:1; }
.org-page .ss-field-button:hover { color:var(--ss-berry); }
.org-page .ss-field-panels { grid-area:panels; display:grid; background:var(--ss-white); border-radius:16px; padding:33px 34px; }
.org-page .ss-field-panel { grid-area:1/1; visibility:hidden; pointer-events:none; display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.org-page .ss-field-panel.is-active { visibility:visible; pointer-events:auto; }
.org-page .ss-field-panel h3 { max-width:17ch; font-size:30px; line-height:1.15; letter-spacing:-1px; font-weight:500; margin:0 0 18px; }
.org-page .ss-field-panel p { max-width:37ch; margin:0 0 28px; }
.org-page .ss-field-panel .ss-link { display:inline-flex; align-items:center; min-height:44px; font-size:14px; margin-top:auto; }
.org-page .ss-review { padding:62px 0; }
.org-page .ss-review-inner { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,.65fr); grid-template-areas:"quote intro"; gap:70px; align-items:start; }
.org-page .ss-review-intro { grid-area:intro; }
.org-page .ss-review-body { grid-area:quote; min-width:0; }
.org-page .ss-review-intro h2 { font-size:29px; line-height:1.2; letter-spacing:-1px; font-weight:500; max-width:14ch; margin:0; }
.org-page .ss-review blockquote { margin:0; font-size:clamp(23px,2.9vw,30px); line-height:1.38; letter-spacing:-.8px; font-weight:400; }
.org-page .ss-review-company { font-size:15px; font-weight:500; margin-top:23px; color:var(--ss-berry); }
.org-page .ss-faq { padding:18px 0 66px; }
.org-page .ss-faq-title { display:grid; grid-template-columns:36px minmax(0,1fr); align-items:start; gap:14px; }
.org-page .ss-faq-symbol { display:block; width:36px; height:36px; object-fit:contain; margin-top:4px; }
.org-page .ss-faq-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr); gap:62px; }
.org-page .ss-faq-head p { margin:21px 0 8px; max-width:27ch; }
.org-page .ss-faq-head a { display:inline-flex; min-height:44px; align-items:center; font-size:15px; }
.org-page .ss-faq-list { border-top:1px solid var(--ss-line); }
.org-page .ss-faq details { border-bottom:1px solid var(--ss-line); }
.org-page .ss-faq summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:63px; padding:15px 0; list-style:none; color:var(--ss-ink); font-size:16px; font-weight:500; line-height:1.4; }
.org-page .ss-faq summary::-webkit-details-marker { display:none; }
.org-page .ss-faq-plus { flex:0 0 26px; display:flex; align-items:center; justify-content:center; width:26px; height:26px; color:var(--ss-berry); transition:transform 180ms ease; }
.org-page .ss-faq details[open] .ss-faq-plus { transform:rotate(45deg); }
.org-page .ss-faq details[open] summary { color:var(--ss-berry); }
.org-page .ss-faq-answer { overflow:hidden; }
.org-page .ss-faq-answer p { padding:0 34px 20px 0; font-size:15px; line-height:1.65; color:var(--ss-muted); }
@media(max-width:850px) {
  .org-page .ss-wrap { padding:0 30px; }
  .org-page .ss-situations { padding:32px 0 38px; }
  .org-page .ss-match-surface { gap:32px; padding:42px 32px 124px; border-top-right-radius:48px; }
  .org-page .ss-fit-list>div { grid-template-columns:1fr; gap:3px; }
  .org-page .ss-lars { left:32px; }
  .org-page .ss-workflow-grid, .org-page .ss-faq-grid { gap:32px; grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr); }
  .org-page .ss-fields-top { column-gap:30px; }
  .org-page .ss-fields-grid { gap:30px; }
  .org-page .ss-field-panels { padding:27px; }
  .org-page .ss-review-inner { gap:32px; }
}
/* Integratiecorrectie, niet in het concept: tussen 621 en 1110 px bedekte de Lars-kaart de laatste regel van "Planning".
   Meer ruimte onder de lijst houdt de kaartpositie en -afmetingen ongewijzigd en laat alle tekst vrij. */
@media(min-width:621px) and (max-width:1110px) {
  .org-page .ss-match-surface { padding-bottom:176px; }
}
/* Boven de Lars-kaart staat net zoveel ruimte (46 px) als boven de Janis-kaart: de laatste rij ("Planning") loopt hier
   over twee regels, dus het vlak krijgt extra ruimte onderaan; kaartpositie en -maten blijven gelijk. */
@media(min-width:1111px) {
  .org-page .ss-match-surface { padding-bottom:158px; }
}
@media(max-width:620px) {
  .org-page .ss-wrap { padding:0 24px; }
  .org-page .ss-h2 { font-size:33px; letter-spacing:-1.1px; }
  .org-page .ss-conversation { padding:32px 24px 30px; }
  .org-page .ss-situations>.ss-wrap { padding:0; }
  .org-page .ss-composition { grid-template-columns:minmax(0,1fr); gap:29px; }
  .org-page .ss-question h2 { font-size:34px; }
  .org-page .ss-choices { margin-top:20px; gap:8px; }
  .org-page .ss-choice { font-size:23px; }
  .org-page .ss-responses { padding-top:0; }
  .org-page .ss-response h3 { font-size:24px; }
  .org-page .ss-response h3 br { display:none; }
  .org-page .ss-response p { max-width:36ch; margin-bottom:21px; }
  .org-page .ss-match { padding-bottom:54px; }
  .org-page .ss-match-surface { grid-template-columns:1fr; grid-template-areas:"intro" "list"; padding:35px 27px 105px; row-gap:26px; border-radius:16px 44px 16px 16px; }
  .org-page .ss-match-intro { max-width:none; }
  .org-page .ss-match-intro p { margin-top:18px; max-width:32ch; font-size:16px; }
  .org-page .ss-fit-list>div { grid-template-columns:83px minmax(0,1fr); column-gap:12px; padding:13px 0; }
  .org-page .ss-fit-list dt { font-size:15px; }
  .org-page .ss-fit-list dd { font-size:14px; }
  .org-page .ss-lars { position:relative; width:calc(100% - 32px); max-width:330px; left:auto; bottom:auto; margin:-65px auto 0 16px; padding:22px; }
  .org-page .ss-lars-contact { min-height:44px; }
  .org-page .ss-workflow { padding:0 0 48px; }
  .org-page .ss-workflow-grid { grid-template-columns:1fr; gap:25px; }
  .org-page .ss-workflow-heading p { max-width:34ch; margin-top:17px; }
  .org-page .ss-process-choices { gap:10px; }
  .org-page .ss-process-button { font-size:12px; min-height:82px; }
  .org-page .ss-process-panel h3 { font-size:24px; }
  .org-page .ss-fields { padding:43px 0 45px; }
  .org-page .ss-fields-top { display:block; margin-bottom:22px; }
  .org-page .ss-fields-top p { margin-top:17px; max-width:33ch; }
  .org-page .ss-fields-grid { grid-template-columns:1fr; grid-template-areas:"choices" "panels"; gap:24px; }
  .org-page .ss-field-button { min-height:48px; font-size:23px; }
  .org-page .ss-field-panels { padding:27px; }
  .org-page .ss-field-panel h3 { font-size:28px; }
  .org-page .ss-review { padding:44px 0; }
  .org-page .ss-review-inner { grid-template-columns:1fr; grid-template-areas:"intro" "quote"; gap:23px; }
  .org-page .ss-review-intro h2 { max-width:none; font-size:27px; }
  .org-page .ss-review blockquote { font-size:25px; }
  .org-page .ss-faq { padding:4px 0 46px; }
  .org-page .ss-faq-title { grid-template-columns:32px minmax(0,1fr); gap:12px; }
  .org-page .ss-faq-symbol { width:32px; height:32px; margin-top:3px; }
  .org-page .ss-faq-grid { grid-template-columns:1fr; gap:24px; }
  .org-page .ss-faq-head p { margin-top:17px; max-width:none; }
  .org-page .ss-faq summary { font-size:15px; }
  .org-page .ss-faq-answer p { padding-right:10px; }
}
@media(max-width:350px) {
  .org-page .ss-wrap { padding:0 20px; }
  .org-page .ss-conversation { padding-left:20px; padding-right:20px; }
  .org-page .ss-question h2 { font-size:31px; }
  .org-page .ss-choice { font-size:21px; letter-spacing:-.5px; gap:8px; }
  .org-page .ss-match-surface { padding-left:23px; padding-right:23px; }
  .org-page .ss-fit-list>div { grid-template-columns:1fr; gap:3px; }
  .org-page .ss-process-choices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .org-page .ss-process-button { min-height:75px; font-size:13px; }
  .org-page .ss-lars { width:calc(100% - 24px); margin-left:12px; padding:20px; }
}

/* ---- G. Aanvraag: het ene sterkere huisstijlvlak ---- */
.org-page .cta{position:relative;overflow:hidden;color:#fff;isolation:isolate;background:var(--teal);padding:var(--org-pad) 0}
.org-page .cta-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1.75rem 3.5rem;align-items:start}
.org-page .cta h2{font-size:clamp(1.5rem,2.2vw + 1rem,2.25rem);letter-spacing:-.025em;margin-bottom:.6rem}
.org-page .cta p.l{font-size:1.05rem;margin-bottom:1.1rem;max-width:44ch}
.org-page .cta-usps{list-style:none;display:grid;gap:.5rem;margin-bottom:1.25rem;font-weight:500}
.org-page .cta-usps li{display:flex;gap:.6rem;align-items:flex-start}
.org-page .cta-usps svg{flex:0 0 auto;margin-top:.2rem}
.org-page .cta-copy .btn{min-height:48px}
.org-page .cform{padding:clamp(1.15rem,2.6vw,1.75rem);box-shadow:var(--sh)}
.org-page .cform h2{font-size:1.35rem;color:var(--ink);margin-bottom:.25rem;letter-spacing:-.015em}
.org-page .cform .fstatus h3{color:var(--ink)}
/* Compacte ingang naar /personeel-aanvragen/ (vervangt het dubbele formulier in deze sectie) */
.org-page .cta-grid:has(.org-entry){align-items:center}
.org-page .org-entry .fstep-sub{margin-bottom:1rem}
.org-page .org-entry .btn{width:100%}
@media(max-width:900px){
  .org-page .cta-grid{grid-template-columns:minmax(0,1fr)}
}

/* ---- Formulier: drie stappen, alleen de actieve stap telt mee (niet afhankelijk van homepage-CSS) ---- */
.org-page .form-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:1rem 0 1.2rem}
.org-page .form-steps li{display:flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;color:var(--muted);padding-bottom:.7rem;border-bottom:2px solid var(--line);line-height:1.25}
.org-page .form-steps li span{display:grid;place-items:center;flex:0 0 26px;height:26px;border:1px solid var(--line);border-radius:50%;font-size:.8rem}
.org-page .form-steps li[aria-current],.org-page .form-steps li.complete{border-color:var(--berry);color:var(--berry)}
.org-page .form-steps li[aria-current] span{background:var(--berry);color:#fff;border-color:var(--berry)}
.org-page .form-steps li.complete span{background:var(--berry-tint);border-color:var(--berry-tint)}
.org-page .form-panel{min-width:0;animation:org-panel-in .22s ease-out}
.org-page .form-panel[hidden],.org-page .form-actions[hidden],.org-page .form-actions .btn[hidden]{display:none}
.org-page .form-panel:focus{outline:none}
.org-page .cform .form-panel h3{font-size:1.1rem;line-height:1.3;margin-bottom:.3rem}
.org-page .form-panel .fradio-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.org-page .form-panel .fradio{padding:.75rem;font-size:.95rem;line-height:1.3;height:100%;margin-bottom:0}
.org-page .form-panel label.fradio{display:flex;align-items:center;gap:.65rem}
.org-page .cform .fradio input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--berry);margin:0;padding:0;min-height:0}
.org-page .form-panel input,.org-page .form-panel select,.org-page .form-panel textarea{margin-bottom:.6rem}
.org-page .form-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}
.org-page .form-actions .btn{flex:1;min-width:0;width:auto!important;min-height:48px}
.org-page .form-actions [data-step-back]{flex:0 0 auto;padding-left:1.2rem;padding-right:1.2rem}
@keyframes org-panel-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:480px){
  .org-page .form-steps{gap:.35rem}
  .org-page .form-steps li{font-size:.8rem;gap:.3rem}
  .org-page .form-steps li span{flex-basis:22px;height:22px}
  .org-page .form-panel .fradio-group{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){
  .org-page .form-panel{animation:none}
}
