/* AC Brand Guidelines 2026 v2.0 — shared tokens, header, footer, helpers */
@font-face{
  font-family:"Devant Horgen";
  src:url("assets/fonts/DevantHorgen-Regular.182bfe22c1d7.ttf") format("truetype"),
      url("assets/fonts/DevantHorgen-Regular.a7a246d6fe56.otf") format("opentype");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{font-family:"Bebas Neue";src:url("assets/fonts/google/BebasNeue-Regular.895af0d79aeb.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Quicksand";src:url("assets/fonts/google/Quicksand-Regular.784272d18f3e.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Quicksand";src:url("assets/fonts/google/Quicksand-Medium.f897a9a3b250.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Quicksand";src:url("assets/fonts/google/Quicksand-SemiBold.bd15fb62d2b8.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Quicksand";src:url("assets/fonts/google/Quicksand-Bold.42579e634c5d.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Raleway";src:url("assets/fonts/google/Raleway-SemiBold.d35d6e93cc0a.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Raleway";src:url("assets/fonts/google/Raleway-Bold.a88a63883f98.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Raleway";src:url("assets/fonts/google/Raleway-ExtraBold.9d931171c908.ttf") format("truetype");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Raleway";src:url("assets/fonts/google/Raleway-Black.8ce3062d5133.ttf") format("truetype");font-weight:900;font-style:normal;font-display:swap}
:root{
  --display:"Devant Horgen","Bebas Neue",Impact,sans-serif;
  /* Verified from official Brand Assets (Shapes RGB + AC_Colours and Font.pdf) */
  --purple:#663a59;     /* primary — dominant */
  --deep:#2a5f55;       /* primary — dark green, structure */
  --green:#698e4e;      /* primary — warmth */
  --mid:#aab855;        /* primary — mid green, accent */
  --turquoise:#5bc9c6;  /* primary — warmth */
  --cream:#f4f4d8;      /* primary — light panel */
  --magenta:#d84ea3;    /* additional — accent, use sparingly */
  --teal:#00a388;       /* additional — bold accent */
  --ink:#2a2230;
  --copy:#3b3140;
  --line:#e4e0d2;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--copy);font-family:Quicksand,"Segoe UI",Arial,sans-serif;font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:var(--deep)}
h1,h2,h3,.display{font-family:var(--display);font-weight:400;font-synthesis:none;text-transform:uppercase;line-height:.9;letter-spacing:.01em;margin:0}
.eyebrow{font-family:Raleway,Arial,sans-serif;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;margin:0 0 .6rem}
.skip-link{position:absolute;left:-999px}
.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:50}
.wrap{width:min(1200px,calc(100% - 2.5rem));margin-inline:auto}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.75rem 1.4rem;border:2px solid var(--purple);background:#fff;color:var(--purple);font-family:Raleway,Arial,sans-serif;font-weight:800;text-decoration:none;border-radius:2px;transition:transform .12s ease}
.btn:hover{transform:translateY(-2px)}
.btn--magenta{background:var(--magenta);border-color:var(--magenta);color:#fff}
.btn--deep{background:var(--deep);border-color:var(--deep);color:#fff}
.btn--ghost{background:transparent;border-color:currentColor}

/* Header (shared) */
.site-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:1.5rem;padding:.7rem clamp(1rem,3vw,2.5rem);background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-header .brand{display:flex;align-items:center;gap:.6rem;text-decoration:none}
.site-header .brand img{width:58px}
.site-header .brand b{font-family:Raleway,Arial,sans-serif;font-weight:800;color:var(--purple);font-size:.95rem;line-height:1.05;letter-spacing:.02em}
.site-nav{display:flex;gap:1.25rem;margin-left:auto;flex-wrap:wrap}
.site-nav a{font-family:Raleway,Arial,sans-serif;font-weight:700;color:var(--purple);text-decoration:none;font-size:.95rem}
.site-nav a:hover{color:var(--magenta)}
.site-nav a.nav-mobile-only{display:none}
.header-actions{display:flex;gap:.45rem;align-items:center;margin-left:.5rem}
.site-header .header-actions .btn{min-height:42px;padding:.5rem .85rem;font-size:.85rem}
.site-nav{font-size:.9rem;gap:.95rem}
.nav-toggle{display:none;margin-left:auto;width:48px;height:48px;border:2px solid var(--purple);border-radius:4px;background:#fff;color:var(--purple);font-size:1.4rem;line-height:1;cursor:pointer}

/* Footer (shared) */
.site-footer{background:var(--purple);color:#fff;padding:clamp(2.5rem,5vw,4rem) 0 2rem}
.site-footer a{color:#fff;text-decoration:none}
.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr 1fr;gap:1.6rem}
.footer-logo{width:72px;background:#fff;padding:.35rem;border-radius:4px}
.site-footer h4{font-family:Raleway,Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;line-height:1.35;min-height:2.7em;color:var(--turquoise);margin:0 0 .9rem}
.site-footer nav a{display:block;padding:.22rem 0;font-size:.95rem}
.site-footer address{font-style:normal;line-height:1.7;font-size:.95rem;opacity:.92}
.footer-social{margin-top:1.1rem}
.footer-social p{margin:0 0 .55rem;font-family:Raleway,Arial,sans-serif;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;color:var(--turquoise)}
.social-links{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
.social-link{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.36);border-radius:50%;font-family:Raleway,Arial,sans-serif;font-size:.72rem;font-weight:900;text-transform:uppercase;text-decoration:none;line-height:1}
.social-icon{width:17px;height:17px;display:block;fill:currentColor}
.social-link:hover{background:rgba(255,255,255,.12);text-decoration:none!important}
.social-links--contact .social-link{border-color:var(--line);color:var(--deep);background:#fff;box-shadow:0 6px 0 rgba(42,95,85,.08)}
.social-links--contact .social-link:hover{background:rgba(91,201,198,.16)}
.footer-legal{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.25);font-size:.82rem;opacity:.8}

/* Shape helpers */
.dots{background-image:radial-gradient(currentColor 30%,transparent 32%);background-size:1.1em 1.1em}
.stripes{background-image:repeating-linear-gradient(135deg,currentColor 0 8px,transparent 8px 20px)}
.arch-top{border-radius:999px 999px 0 0}
.tag{display:inline-block;font-family:var(--display);text-transform:uppercase;line-height:.92}

main{position:relative;overflow:hidden}
main::before,
main::after{content:"";position:absolute;pointer-events:none;background-repeat:no-repeat;background-position:center;background-size:contain;z-index:0}
main::before{left:max(-7rem,calc((100vw - 1200px)/2 - 12rem));top:18rem;width:20rem;aspect-ratio:1;background-image:url("assets/shapes/Primary_Colour_Turquoise_Arch.a698b7096960.png");opacity:.08}
main::after{right:max(-6rem,calc((100vw - 1200px)/2 - 10rem));top:44rem;width:16rem;aspect-ratio:1;background-image:url("assets/shapes/New_Colour_Magenta_Dots.d7eb73781935.png");opacity:.065}
main > section{position:relative;z-index:1}

/* ============ Shared inner-page components ============ */
.fascia{background:var(--deep);color:#fff}
.fascia-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 0;flex-wrap:wrap}
.fascia .tagline{font-family:Raleway,Arial,sans-serif;font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;color:var(--turquoise)}
.fascia .meta{display:flex;gap:1.4rem;font-weight:700;font-size:.9rem}
.fascia .meta a{color:#fff;text-decoration:none}
.fascia .meta a:hover{color:var(--turquoise)}
.m{position:absolute;pointer-events:none;z-index:1}
.m img{display:block;width:100%;height:100%;object-fit:contain}

.page-hero{position:relative;overflow:hidden;color:#fff;padding:clamp(2.2rem,5vw,3.8rem) 0}
.page-hero.acc-deep{background:var(--deep)}
.page-hero.acc-purple{background:var(--purple)}
.page-hero.acc-magenta{background:var(--magenta)}
.page-hero.acc-teal{background:var(--teal)}
.page-hero.acc-green{background:var(--green)}
.page-hero.acc-turquoise{background:var(--turquoise);color:var(--purple)}
.page-hero .crumbs{font-family:Raleway,Arial,sans-serif;font-weight:700;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--turquoise);margin:0 0 .6rem}
.page-hero.acc-turquoise .crumbs{color:var(--deep)}
.page-hero .crumbs a{color:inherit;text-decoration:none}
.page-hero h1{font-size:clamp(2.8rem,6.5vw,5.2rem);position:relative;z-index:2}
.page-hero p{max-width:54ch;font-size:1.15rem;font-weight:600;margin:.8rem 0 0;position:relative;z-index:2}
.page-hero .d-flower{right:5%;top:16%;width:88px;height:88px;opacity:.8}
.page-hero .d-steps{right:17%;bottom:0;width:118px;height:88px;opacity:.18}

.block{position:relative;padding:clamp(2.4rem,5vw,4rem) 0}
.block > .wrap{position:relative;z-index:1}
.block:not(.regulatory-note)::before{content:"";position:absolute;pointer-events:none;background-repeat:no-repeat;background-position:center;background-size:contain;z-index:0;opacity:.045}
.block:nth-of-type(4n+1)::before{left:max(-3rem,calc((100vw - 1200px)/2 - 8rem));top:18%;width:9.5rem;aspect-ratio:1;background-image:url("assets/shapes/Primary_Colour_MidGreen_Circle.cef8dcae8213.png")}
.block:nth-of-type(4n+2)::before{right:max(-3rem,calc((100vw - 1200px)/2 - 8rem));bottom:12%;width:10rem;aspect-ratio:1;background-image:url("assets/shapes/Primary_Colour_Purple_Moons.f4fb5db8355c.png")}
.block:nth-of-type(4n+3)::before{left:max(-3rem,calc((100vw - 1200px)/2 - 7rem));bottom:8%;width:11rem;aspect-ratio:1;background-image:url("assets/shapes/Primary_Colour_Turquoise_Step.d739ecf93657.png")}
.block:nth-of-type(4n)::before{right:max(-3rem,calc((100vw - 1200px)/2 - 7rem));top:10%;width:8.5rem;aspect-ratio:1;background-image:url("assets/shapes/New_Colour_Magenta_Arch.ab5a39bfbb44.png")}
.block .eyebrow{color:var(--magenta)}
.block h2{font-size:clamp(2rem,4.5vw,3.2rem);color:var(--deep);margin-bottom:1.1rem}
.lede{max-width:62ch;font-size:1.15rem}
.lede + .lede{margin-top:1rem}

.cardgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}
.card{position:relative;overflow:hidden;min-height:210px;padding:1.4rem;color:#fff;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;border-radius:80px 16px 16px 16px;transition:transform .12s ease}
.card:hover{transform:translateY(-4px)}
.card h3{font-size:1.6rem;max-width:15ch;position:relative;z-index:2}
.card p{margin:.4rem 0 0;font-size:.92rem;position:relative;z-index:2;color:rgba(255,255,255,.92)}
.card .more{margin-top:1rem;position:relative;z-index:2;display:inline-flex;align-items:center;gap:.5rem;font-family:Raleway,Arial,sans-serif;font-weight:800;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.card .more svg{width:30px;height:12px}
.card.c-deep{background:var(--deep)} .card.c-green{background:var(--green)} .card.c-purple{background:var(--purple)}
.card.c-teal{background:var(--teal)} .card.c-magenta{background:var(--magenta)}
.card.c-turquoise{background:var(--turquoise);color:var(--purple)} .card.c-turquoise p{color:var(--purple)} .card.c-turquoise .more{color:var(--purple)}
.card .d-deco{position:absolute;right:-12px;top:-12px;width:88px;height:88px;opacity:.85}
.badge{display:inline-block;vertical-align:middle;margin-left:.45rem;padding:.12rem .5rem;border-radius:999px;background:#fff;color:var(--magenta);font-family:Raleway,Arial,sans-serif;font-weight:800;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}

.coverlist{background:rgba(91,201,198,.14);border-radius:18px;padding:clamp(1.4rem,3vw,2.2rem)}
.coverlist ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.1rem 2rem}
.coverlist li{position:relative;padding:.6rem 0 .6rem 1.9rem;border-bottom:1px solid rgba(42,95,85,.14);font-weight:600;color:var(--ink)}
.coverlist li::before{content:"";position:absolute;left:0;top:.85rem;width:.95rem;height:.95rem;background:var(--magenta);clip-path:polygon(0 0,100% 50%,0 100%,35% 50%)}

.page-hero .actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.3rem;position:relative;z-index:2}
.prose{max-width:66ch}
.prose p{margin:0 0 1rem}
.prose p:last-child{margin-bottom:0}
.legal-prose table{width:100%;border-collapse:collapse;margin:1rem 0 1.4rem;background:#fff;border:1px solid var(--line);font-size:.92rem;line-height:1.35}
.legal-prose th,.legal-prose td{border:1px solid var(--line);padding:.75rem;text-align:left;vertical-align:top}
.legal-prose th{background:rgba(91,201,198,.14);color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900}
.legal-prose code{background:rgba(244,244,216,.8);border-radius:4px;padding:.08rem .28rem;color:var(--purple)}
.policy-status{margin-bottom:1.5rem}
.policy-status h2{margin-top:0}
.policy-status dl{display:grid;grid-template-columns:minmax(9rem,14rem) 1fr;gap:.45rem 1rem;margin:.8rem 0 0}
.policy-status dt{font-family:Raleway,Arial,sans-serif;text-transform:uppercase;font-size:.76rem;font-weight:900;color:var(--deep)}
.policy-status dd{margin:0}
.admin-gate-wrap{display:grid;place-items:center}
.admin-gate-card{width:min(520px,100%);background:#fff;border:1px solid var(--line);border-top:8px solid var(--magenta);border-radius:14px;padding:clamp(1.1rem,4vw,2rem);box-shadow:18px 18px 0 rgba(91,201,198,.22)}
.admin-gate-card img{width:170px;margin:0 0 1rem}
.admin-gate-card h2{font-size:clamp(2rem,5vw,3rem);color:var(--deep);margin-bottom:.8rem}
.admin-gate-card p{margin:0 0 1rem}
.admin-gate-card .btn{width:100%;margin-top:.5rem}
.admin-gate-small{font-size:.9rem;color:var(--muted);line-height:1.4}
.split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);gap:clamp(1.3rem,4vw,2.4rem);align-items:start}
.deflist{list-style:none;margin:1.1rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}
.deflist li{padding:.85rem 0;border-bottom:1px solid var(--line)}
.deflist b{display:block;color:var(--deep);font-size:1.05rem;margin-bottom:.15rem}
.deflist span{color:var(--copy);font-size:.95rem}
.callout{background:rgba(91,201,198,.14);border-left:6px solid var(--magenta);border-radius:12px;padding:1.1rem 1.3rem;max-width:70ch}
.callout strong{color:var(--deep)}
.access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.2rem}
.access-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:1.1rem 1.2rem;box-shadow:0 6px 0 rgba(42,95,85,.08)}
.access-card h3{margin-top:0}
.access-card p{margin:.35rem 0 0}
.video-embed{position:relative;overflow:hidden;aspect-ratio:16/9;border:6px solid #fff;border-radius:8px;box-shadow:9px 9px 0 rgba(42,95,85,.16);background:#000}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.crisis-key{display:flex;flex-wrap:wrap;gap:.65rem .85rem;margin:1rem 0 1.1rem;font-family:Raleway,Arial,sans-serif;font-weight:800;font-size:.78rem;color:var(--deep)}
.crisis-key .key-sample{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;background:#fff;padding:.32rem .62rem;box-shadow:0 4px 0 rgba(42,95,85,.06)}
.crisis-key .key-sample--time{font-size:.9rem;font-weight:900}
.crisis-key .key-sample--time b,.crisis-key .key-sample--ac b,.crisis-key .key-sample--ac em{font-size:.66rem;font-style:normal;text-transform:uppercase;letter-spacing:.06em;color:var(--deep)}
.crisis-key .key-sample--ac{background:var(--magenta);border-color:var(--magenta);color:#fff;padding-left:.28rem}
.crisis-key .key-sample--ac b,.crisis-key .key-sample--ac em{color:#fff}
.crisis-key .key-sample img{width:22px;height:22px;border-radius:50%;background:#fff;padding:2px;object-fit:contain}
.crisis-key i{width:1rem;height:1rem;border-radius:3px;display:inline-block}
.key-open{background:rgba(91,201,198,.24);border:1px solid rgba(42,95,85,.24)}
.key-ac{background:var(--magenta)}
.crisis-matrix-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 0 rgba(42,95,85,.08)}
.crisis-matrix{width:100%;min-width:940px;border-collapse:separate;border-spacing:0;font-size:.91rem}
.crisis-matrix caption{position:absolute;left:-9999px}
.crisis-matrix th,.crisis-matrix td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:.72rem .65rem;vertical-align:top;text-align:left}
.crisis-matrix thead th{background:var(--deep);color:#fff;font-family:Raleway,Arial,sans-serif;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}
.crisis-matrix th:first-child{position:sticky;left:0;z-index:1;min-width:150px;background:#fff;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900}
.crisis-matrix thead th:first-child{z-index:2;background:var(--deep);color:#fff}
.crisis-matrix td{min-width:112px;background:rgba(244,244,216,.28)}
.crisis-matrix td:empty{background:linear-gradient(135deg,rgba(228,224,210,.35),rgba(255,255,255,.65))}
.cafe-time{display:block;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-size:.96rem;font-weight:900;line-height:1.25}
.ac-visit{display:inline-flex;align-items:center;gap:.34rem;margin-top:.45rem;border-radius:999px;padding:.22rem .56rem .22rem .28rem;width:max-content;max-width:100%;background:var(--magenta);color:#fff;font-family:Raleway,Arial,sans-serif;font-weight:900;font-size:.72rem;line-height:1.2}
.ac-visit img{width:22px;height:22px;border-radius:50%;background:#fff;padding:2px;object-fit:contain;flex:0 0 auto}
.ac-visit b{font-size:.66rem;font-weight:900}
.timetable-note{margin:1rem 0 0;font-size:.95rem;color:var(--copy)}
.funders{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;margin-top:1.2rem}
.funders .logo-chip{background:#fff;border:1px solid var(--line);border-radius:10px;padding:.6rem .9rem;font-weight:800;color:var(--deep);font-size:.85rem}
.logo-panel{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;padding:clamp(1.1rem,3vw,1.6rem);box-shadow:0 10px 24px rgba(42,34,48,.06)}
.logo-panel::before{content:"";position:absolute;right:-28px;top:-28px;width:100px;aspect-ratio:1;border-radius:50%;background:rgba(91,201,198,.14)}
.logo-panel h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;line-height:1.2;font-size:1.05rem;font-weight:800;color:var(--deep);margin:0 0 .55rem}
.logo-panel p{font-size:.95rem;margin:.7rem 0 0}
.logo-panel .btn{margin-top:1rem}
.fundraising-panel .partner-logo{margin-bottom:1rem}
.logo-strip{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.2rem}
.partner-logo{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.85rem 1rem;min-height:86px;min-width:180px;max-width:290px}
.partner-logo img{max-height:62px;max-width:230px;width:auto;height:auto;object-fit:contain}
.partner-logo--large{max-width:390px;min-width:250px;min-height:116px}
.partner-logo--large img{max-height:86px;max-width:330px}
.partner-logo--feature{width:100%;max-width:none;min-height:186px;padding:1.1rem}
.partner-logo--feature img{max-height:156px;max-width:min(520px,100%)}
.partner-logo--wide{min-width:230px;max-width:360px;min-height:104px}
.partner-logo--wide img{max-height:76px;max-width:300px}
.partner-logo--citizens{background:#00539b;border-color:#00539b}
.partner-logo--citizens img{max-height:92px;max-width:240px}
.partner-logo--square{min-width:130px;max-width:150px;aspect-ratio:1;padding:.65rem}
.partner-logo--square img{max-height:120px;max-width:120px}
.partnership-logo-strip{align-items:stretch}
.quality-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem;margin-top:1.4rem;align-items:stretch}
.quality-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.quality-badges .partner-logo{min-width:0;max-width:none;width:100%;min-height:118px}
.quality-badges .partner-logo--square{aspect-ratio:auto;padding:.85rem 1rem}
.quality-badges .partner-logo img{max-width:160px;max-height:82px}
.regulatory-note{background:#f8f8ee;border-top:1px solid var(--line)}
.regulatory-note h2{font-size:clamp(1.8rem,3.5vw,2.5rem)}
.smallprint-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.2rem}
.smallprint-card{background:#fff;border:1px solid var(--line);border-left:6px solid var(--deep);border-radius:8px;padding:1.1rem}
.smallprint-card:nth-child(2){border-left-color:var(--magenta)}
.smallprint-card:nth-child(3){border-left-color:var(--green)}
.smallprint-card h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;line-height:1.2;font-size:1rem;font-weight:800;color:var(--deep);margin:0 0 .55rem}
.smallprint-card p{font-size:.88rem;line-height:1.5;margin:.55rem 0 0}
.smallprint-card p:first-of-type{margin-top:0}

.media-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,3vw,2rem);align-items:center;margin-top:1.6rem}
.media-pair .prose{max-width:none}
.photo-frame{position:relative;isolation:isolate;margin:0;min-height:260px}
.photo-frame::before{content:"";position:absolute;inset:auto -12px -12px auto;width:42%;height:40%;background:var(--turquoise);z-index:-1}
.photo-frame::after{content:"";position:absolute;left:-18px;top:-18px;width:92px;height:70px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.75;z-index:2}
.photo-frame img{width:100%;height:100%;min-height:260px;object-fit:cover;border:6px solid #fff;box-shadow:9px 9px 0 rgba(42,95,85,.18)}
.photo-frame--arch img{border-radius:220px 220px 16px 16px}
.photo-frame--soft img{border-radius:24px 90px 24px 24px}
.photo-frame--tilt{transform:rotate(-1.5deg)}
.photo-frame--tilt img{border-radius:18px;transform:rotate(1.5deg)}
.photo-frame--circle{width:min(360px,100%);aspect-ratio:1;margin-inline:auto}
.photo-frame--circle img{border-radius:50%;min-height:0;aspect-ratio:1}
.photo-frame--green::before{background:var(--green)}
.photo-frame--purple::before{background:var(--purple)}
.photo-frame--magenta::before{background:var(--magenta)}
.photo-frame--mid::before{background:var(--mid)}
.image-note{display:block;margin-top:.8rem;font-family:Raleway,Arial,sans-serif;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;color:var(--green)}
.wide-figure{position:relative;isolation:isolate;margin:1.6rem 0 0}
.wide-figure::before{content:"";position:absolute;right:-14px;bottom:-14px;width:22%;height:26%;background:var(--turquoise);z-index:-1}
.wide-figure::after{content:"";position:absolute;left:-18px;top:-18px;width:112px;height:82px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.55;z-index:2}
.wide-figure img{width:100%;border:6px solid #fff;border-radius:8px;box-shadow:9px 9px 0 rgba(42,95,85,.16);background:#fff}
.report-figure{margin-top:1.7rem}
.report-figure img{display:block}
.report-figure figcaption{margin-top:.75rem;font-size:.92rem;line-height:1.55;color:var(--ink);font-weight:600}
.report-figure--quiet::after{display:none}
.report-map-grid{align-items:start}
.report-map-grid .wide-figure{margin-top:0}
.report-map-grid .wide-figure::after{display:none}
.theory-section{background:#fff}
.theory-section .lede{max-width:76ch}
.theory-frame{margin-top:1.8rem}
.theory-frame::before{background:var(--mid)}
.theory-frame img{border-radius:10px}

.values-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.2rem,4vw,3rem);align-items:center}
.values-intro .lede{max-width:56ch}
.values-poster-feature{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:end}
.values-poster-feature::before{content:"";position:absolute;right:-18px;bottom:-18px;width:42%;height:34%;background:var(--turquoise);z-index:-1}
.values-poster-feature::after{content:"";position:absolute;left:-18px;top:-18px;width:118px;height:86px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.65;z-index:2}
.values-poster-feature img,.value-poster img{width:100%;background:#fff;border:6px solid #fff;border-radius:8px;box-shadow:9px 9px 0 rgba(42,95,85,.16)}
.values-poster-feature img:nth-child(1){transform:rotate(-1.5deg)}
.values-poster-feature img:nth-child(2){transform:rotate(1.2deg);margin-top:2rem}
.values-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(.8rem,2vw,1.2rem);align-items:start;margin-top:1.8rem}
.value-poster{margin:0}
.value-poster figcaption{margin-top:.75rem;font-weight:800;color:var(--deep);line-height:1.25}
.values-principles{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:1.6rem}
.values-principles article{background:#fff;border:1px solid var(--line);border-top:7px solid var(--deep);border-radius:8px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.05)}
.values-principles article:nth-child(2){border-top-color:var(--magenta)}
.values-principles article:nth-child(3){border-top-color:var(--green)}
.values-principles article:nth-child(4){border-top-color:var(--teal)}
.values-principles article:nth-child(5){border-top-color:var(--purple)}
.values-principles h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;line-height:1.15;font-size:1rem;font-weight:900;color:var(--deep);margin:0 0 .5rem}
.values-principles p{font-size:.92rem;line-height:1.45;margin:0;color:var(--copy)}

.story-hero .wrap{max-width:980px}
.story-opener-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);gap:clamp(1.4rem,4vw,3rem);align-items:center}
.story-stamp{position:relative;isolation:isolate;overflow:hidden;background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:1.4rem;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:12px 12px 0 rgba(42,95,85,.12)}
.story-stamp::before{content:"";position:absolute;right:-44px;top:-44px;width:170px;aspect-ratio:1;border-radius:50%;background:var(--turquoise);opacity:.7;z-index:-1}
.story-stamp::after{content:"";position:absolute;left:-30px;bottom:-28px;width:140px;aspect-ratio:1;background:url("assets/shapes/New_Colour_Magenta_Dots.d7eb73781935.png") center/contain no-repeat;opacity:.2;z-index:-1}
.story-stamp img{width:74px;background:#fff;border-radius:999px;padding:.5rem;margin-bottom:auto}
.story-stamp strong{font-family:var(--display);font-size:clamp(5rem,13vw,8rem);line-height:.82;color:var(--purple);font-weight:400}
.story-stamp b{font-family:var(--display);font-size:clamp(2.1rem,5vw,3.4rem);line-height:.9;color:var(--deep);font-weight:400;margin-top:.65rem}
.story-stamp span{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}
.story-band{background:linear-gradient(180deg,rgba(91,201,198,.16),rgba(244,244,216,.38))}
.story-chapters{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.4rem}
.story-chapters article,.story-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.15rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.story-chapters article span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--magenta);color:#fff;font-family:Raleway,Arial,sans-serif;font-weight:900;margin-bottom:.75rem}
.story-chapters article:nth-child(2) span{background:var(--green)}
.story-chapters article:nth-child(3) span{background:var(--teal)}
.story-chapters article:nth-child(4) span{background:var(--purple)}
.story-chapters h3,.story-card h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;line-height:1.12;font-size:1.12rem;font-weight:900;color:var(--deep);margin:0 0 .55rem}
.story-chapters p,.story-card p{font-size:.94rem;line-height:1.5;margin:0;color:var(--copy)}
.story-split{align-items:center}
.story-card{border-left:8px solid var(--magenta);background:var(--cream)}
.story-card h3{font-size:1.45rem;color:var(--purple)}
.story-timeline-section{background:rgba(244,244,216,.45)}
.story-timeline-wrap{max-width:1120px}
.story-timeline{position:relative;display:grid;gap:1.25rem;margin-top:1.9rem;padding:1rem 0}
.story-timeline::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:8px;border-radius:999px;transform:translateX(-50%);background:repeating-linear-gradient(180deg,var(--magenta) 0 30px,var(--turquoise) 30px 60px,var(--green) 60px 90px,var(--purple) 90px 120px)}
.story-timeline article{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);gap:1.2rem;align-items:center;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.story-timeline article::before{content:"";position:absolute;left:50%;top:50%;width:26px;height:26px;border-radius:50%;background:#fff;border:5px solid var(--magenta);box-shadow:0 0 0 6px rgba(216,78,163,.13);transform:translate(-50%,-50%);z-index:2}
.story-timeline article::after{content:"";position:absolute;top:calc(50% - 3px);left:calc(50% - 56px);width:56px;height:6px;border-radius:999px;background:var(--magenta);z-index:1}
.story-timeline article:nth-child(even)::after{left:50%}
.story-timeline article:nth-child(3n+2)::before{border-color:var(--green);box-shadow:0 0 0 5px rgba(105,142,78,.12)}
.story-timeline article:nth-child(3n)::before{border-color:var(--purple);box-shadow:0 0 0 5px rgba(102,58,89,.12)}
.story-timeline article:nth-child(3n+2)::after{background:var(--green)}
.story-timeline article:nth-child(3n)::after{background:var(--purple)}
.story-timeline time{display:grid;place-items:center;grid-column:2;grid-row:1;justify-self:center;width:86px;min-height:74px;border:3px solid currentColor;border-radius:999px 999px 16px 16px;background:#fff;text-align:center;font-family:var(--display);font-size:1.75rem;line-height:.86;color:var(--magenta);padding:.35rem .25rem;box-shadow:0 8px 0 rgba(42,95,85,.1);z-index:3}
.story-timeline article:nth-child(3n+2) time{color:var(--green)}
.story-timeline article:nth-child(3n) time{color:var(--purple)}
.story-timeline h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;line-height:1.12;font-size:1.08rem;font-weight:900;color:var(--deep);margin:0 0 .35rem}
.story-timeline p{font-size:.92rem;line-height:1.45;margin:0}
.timeline-panel{grid-column:1;grid-row:1;background:#fff;border:1px solid var(--line);border-top:8px solid var(--magenta);box-shadow:0 8px 0 rgba(42,95,85,.08);border-radius:12px;padding:1rem}
.story-timeline article:nth-child(even) .timeline-panel{grid-column:3}
.story-timeline article:nth-child(3n+2) .timeline-panel{border-top-color:var(--green)}
.story-timeline article:nth-child(3n) .timeline-panel{border-top-color:var(--purple)}
.timeline-artifact{margin:.85rem 0 0;display:grid;grid-template-columns:120px minmax(0,1fr);gap:.75rem;align-items:center;background:rgba(244,244,216,.55);border-radius:10px;padding:.65rem}
.timeline-artifact a{display:block;position:relative;border-radius:6px;background:#fff;box-shadow:0 0 0 2px transparent;transition:box-shadow .15s ease,transform .15s ease}
.timeline-artifact a:hover,.timeline-artifact a:focus{box-shadow:0 0 0 3px var(--turquoise);transform:translateY(-1px);outline:none}
.timeline-artifact a::after{content:"View";position:absolute;right:.35rem;bottom:.35rem;background:var(--deep);color:#fff;border-radius:999px;padding:.2rem .45rem;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.timeline-artifact img{width:100%;max-height:96px;object-fit:contain;background:#fff;border-radius:6px;display:block}
.timeline-artifact--document img{max-height:150px;object-fit:cover;object-position:top}
.timeline-artifact--press{grid-template-columns:170px minmax(0,1fr)}
.timeline-artifact--press img{max-height:118px;object-fit:cover;object-position:top left}
.timeline-artifact--office{grid-template-columns:180px minmax(0,1fr)}
.timeline-artifact--office img{max-height:120px;object-fit:cover}
.timeline-artifact figcaption{font-size:.84rem;line-height:1.35;font-weight:800;color:var(--deep)}
.timeline-artifact figcaption span{display:block;margin-top:.25rem;color:var(--purple);font-size:.74rem;text-transform:uppercase;letter-spacing:.04em}
.archive-viewer{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:clamp(1rem,3vw,2rem);background:rgba(42,34,48,.86)}
.archive-viewer[aria-hidden=false]{display:flex}
.archive-viewer__panel{position:relative;max-width:min(1120px,96vw);max-height:94vh;display:grid;gap:.7rem}
.archive-viewer__image{display:block;max-width:100%;max-height:82vh;width:auto;height:auto;border-radius:8px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.36)}
.archive-viewer__caption{color:#fff;font-weight:800;line-height:1.35;max-width:78ch}
.archive-viewer__close{position:absolute;top:-.8rem;right:-.8rem;width:42px;height:42px;border:0;border-radius:50%;background:var(--magenta);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.28)}
.archive-viewer__close:focus{outline:3px solid var(--turquoise);outline-offset:3px}
.story-focus{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:clamp(1.4rem,4vw,3rem);align-items:center}
.story-service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}
.story-service-grid span{display:flex;align-items:center;min-height:72px;border-radius:10px;padding:.8rem 1rem;background:var(--deep);color:#fff;font-family:Raleway,Arial,sans-serif;font-weight:900;line-height:1.15;box-shadow:6px 6px 0 rgba(91,201,198,.25)}
.story-service-grid span:nth-child(2n){background:var(--green)}
.story-service-grid span:nth-child(3n){background:var(--purple)}
.story-service-grid span:nth-child(4n){background:var(--magenta)}
.story-future{background:linear-gradient(135deg,rgba(91,201,198,.18),rgba(244,244,216,.55))}
.story-card--green{border-left-color:var(--green);background:#fff}
.story-card--green h3{color:var(--deep);font-size:1.7rem}

.referral-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1rem,3vw,2rem);align-items:start}
.referral-form{display:grid;gap:1.2rem;max-width:980px}
.referral-form--staged{max-width:1180px}
.referral-stage-shell{display:grid;grid-template-columns:minmax(190px,240px) minmax(0,1fr);gap:1.2rem;align-items:start}
.referral-progress{position:sticky;top:1rem;background:var(--deep);color:#fff;border-radius:8px;padding:1rem;box-shadow:0 14px 32px rgba(42,34,48,.14)}
.referral-progress .eyebrow{color:var(--turquoise);margin-bottom:.7rem}
.referral-progress ol{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.referral-progress button{width:100%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;border-radius:8px;padding:.72rem .75rem;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:.55rem;text-align:left;font-weight:800;font-family:Raleway,Arial,sans-serif;cursor:pointer}
.referral-progress button span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--deep);font-family:Quicksand,"Segoe UI",Arial,sans-serif}
.referral-progress button.is-active{background:var(--magenta);border-color:var(--magenta)}
.referral-progress button.is-complete{background:rgba(91,201,198,.2);border-color:rgba(91,201,198,.65)}
.referral-progress button:disabled{opacity:.48;cursor:not-allowed}
.referral-stage-panel{min-width:0}
.referral-form fieldset{border:1px solid var(--line);border-left:7px solid var(--deep);border-radius:8px;background:#fff;padding:clamp(1rem,3vw,1.5rem);margin:0;box-shadow:0 10px 24px rgba(42,34,48,.05)}
.referral-form fieldset:nth-of-type(2n){border-left-color:var(--magenta)}
.referral-form legend{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);padding:0 .4rem;margin-left:-.4rem}
.referral-step[hidden],.referral-stage-actions [hidden]{display:none!important}
.stage-kicker{display:inline-flex;align-items:center;background:#eaf8f7;color:var(--deep);border-radius:999px;padding:.28rem .65rem;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .65rem}
.stage-intro{max-width:720px;color:var(--copy);font-weight:600;margin:.2rem 0 1rem}
.conditional-section h3,.consent-box h3{font-family:Raleway,Arial,sans-serif;color:var(--purple);font-size:1rem;margin:1.2rem 0 .7rem}
.consent-box{margin-top:1rem;background:#f5fbfb;border:1px solid rgba(91,201,198,.45);border-radius:8px;padding:1rem}
.referral-stage-actions{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin-top:1rem;flex-wrap:wrap}
.referral-stage-actions .btn{min-width:150px}
.referral-stage-actions [data-step-next],.referral-stage-actions [data-step-submit]{margin-left:auto}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem}
.form-field{display:flex;flex-direction:column;gap:.3rem}
.form-field--wide{grid-column:1/-1}
.form-field label,.group-label{font-family:Raleway,Arial,sans-serif;font-weight:800;color:var(--deep);font-size:.9rem;margin:0}
.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid var(--line);border-radius:6px;padding:.75rem .85rem;font:inherit;color:var(--ink);background:#fff}
.form-field textarea{min-height:150px;resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:3px solid rgba(91,201,198,.35);border-color:var(--deep)}
.referral-form [aria-invalid=true]{border-color:var(--magenta)!important;outline:3px solid rgba(216,72,166,.2)}
.checkbox-row{display:flex;align-items:flex-start;gap:.7rem;font-weight:700;color:var(--ink)}
.checkbox-row input[type=checkbox]{width:22px;height:22px;min-width:22px;min-height:22px;margin:.05rem 0 0;padding:0;accent-color:var(--deep)}
.checkbox-group ul,.checkbox-group>div[id^="id_"]{list-style:none;margin:.7rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1rem}
.checkbox-group>div[id^="id_"]>div{margin:0}
.checkbox-group li label,.checkbox-group>div[id^="id_"] label{display:grid;grid-template-columns:22px minmax(0,1fr);gap:.65rem;align-items:start;font-weight:700;color:var(--copy);font-family:Quicksand,"Segoe UI",Arial,sans-serif;font-size:1rem;line-height:1.35}
.checkbox-group input[type=checkbox]{width:22px;height:22px;min-width:22px;min-height:22px;margin:.05rem 0 0;padding:0;accent-color:var(--deep)}
.help-text{font-size:.88rem;color:var(--copy);margin:.35rem 0 0}
.field-errors,.form-errors{background:#fff1f7;border-left:5px solid var(--magenta);border-radius:6px;padding:.7rem .85rem;color:var(--purple);font-weight:700}
.field-errors ul,.form-errors ul{margin:.2rem 0;padding-left:1.1rem}
.hidden-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.is-hidden{display:none!important}
.referral-success{margin-bottom:1.4rem}
.referral-gate-band,.referral-switch-band{background:linear-gradient(135deg,rgba(244,244,216,.72),rgba(91,201,198,.14))}
.referral-gate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.1rem 0}
.referral-gate-card{position:relative;overflow:hidden;display:grid;grid-template-columns:86px minmax(0,1fr);gap:1rem;align-items:start;text-decoration:none;color:var(--copy);background:#fff;border:1px solid var(--line);border-top:10px solid var(--magenta);border-radius:14px;padding:1.1rem;box-shadow:0 14px 32px rgba(42,34,48,.09);transition:transform .18s ease,box-shadow .18s ease}
.referral-gate-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(42,34,48,.14)}
.referral-gate-card--housing{border-top-color:var(--turquoise)}
.referral-gate-card::after{content:"";position:absolute;right:-2.5rem;bottom:-2.8rem;width:9rem;height:9rem;border-radius:50%;background:rgba(91,201,198,.16)}
.referral-gate-card--housing::after{background:rgba(216,78,163,.15)}
.referral-gate-icon{position:relative;z-index:1;display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:var(--deep);color:#fff;font-family:var(--display);font-size:1.65rem;line-height:.86;text-align:center}
.referral-gate-card--debt .referral-gate-icon{background:var(--magenta)}
.referral-gate-card--housing .referral-gate-icon{background:var(--turquoise);color:var(--deep)}
.referral-gate-card h3{position:relative;z-index:1;font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.35rem;line-height:1.1;color:var(--deep);margin:0 0 .45rem}
.referral-gate-card p{position:relative;z-index:1;margin:0 0 .8rem;line-height:1.45}
.referral-gate-card strong{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:34px;border-radius:999px;background:rgba(91,201,198,.16);padding:.35rem .7rem;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900}
.referral-tool-switch{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;background:#fff;border:1px solid var(--line);border-left:10px solid var(--magenta);border-radius:14px;padding:1rem;box-shadow:0 12px 28px rgba(42,34,48,.08)}
.referral-tool-switch h2{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.45rem;line-height:1.08;margin:.15rem 0 .45rem;color:var(--deep)}
.referral-tool-switch p{margin:0;line-height:1.45}
.referral-tool-switch__actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}

.debt-tool-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:clamp(1rem,3vw,2rem);align-items:start}
.debt-tool-intro .logo-panel{border-top:7px solid var(--turquoise)}
.debt-tool{max-width:1180px}
.debt-tool-shell{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:1.2rem;align-items:start}
.debt-tool-progress{position:sticky;top:1rem;background:var(--deep);color:#fff;border-radius:8px;padding:1rem;box-shadow:0 14px 32px rgba(42,34,48,.14)}
.debt-tool-progress .eyebrow{color:var(--turquoise);margin-bottom:.7rem}
.debt-tool-progress ol{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.debt-tool-progress button{width:100%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;border-radius:8px;padding:.72rem .75rem;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:.55rem;text-align:left;font-weight:800;font-family:Raleway,Arial,sans-serif;cursor:pointer}
.debt-tool-progress button span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--deep);font-family:Quicksand,"Segoe UI",Arial,sans-serif}
.debt-tool-progress button.is-active{background:var(--magenta);border-color:var(--magenta)}
.debt-tool-progress button.is-complete{background:rgba(91,201,198,.2);border-color:rgba(91,201,198,.65)}
.debt-tool-progress button:disabled{opacity:.48;cursor:not-allowed}
.debt-picture{margin-top:1rem;padding:1rem;background:#f5fbfb;color:var(--ink);border-radius:8px}
.debt-picture h3,.debt-review-box h3,.debt-step h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;line-height:1.2;font-size:1rem;font-weight:900;color:var(--deep);margin:0 0 .65rem}
.debt-picture dl,.debt-review-box dl{margin:0;display:grid;gap:.55rem}
.debt-picture dl div,.debt-review-box dl div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(42,95,85,.14);padding-bottom:.45rem}
.debt-picture dt,.debt-review-box dt{font-size:.82rem;font-weight:800;color:var(--deep)}
.debt-picture dd,.debt-review-box dd{margin:0;font-weight:900;color:var(--purple)}
.debt-picture p{font-size:.82rem;line-height:1.4;margin:.8rem 0 0;color:var(--copy)}
.debt-stage-preview{position:relative;isolation:isolate;margin:1rem 0 0}
.debt-stage-preview::before{content:"";position:absolute;right:-8px;bottom:-8px;width:45%;height:42%;background:var(--turquoise);z-index:-1}
.debt-stage-preview::after{content:"";position:absolute;left:-8px;top:-8px;width:54px;height:38px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:12px 12px;opacity:.7;z-index:2}
.debt-stage-preview img{width:100%;aspect-ratio:4/3;object-fit:cover;border:4px solid #fff;border-radius:8px 54px 8px 8px;box-shadow:7px 7px 0 rgba(42,34,48,.16);background:#fff}
.debt-stage-preview figcaption{margin-top:.65rem;font-size:.8rem;line-height:1.35;font-weight:900;color:#fff}
.debt-tool-panel{min-width:0}
.debt-step{border:1px solid var(--line);border-left:7px solid var(--deep);border-radius:8px;background:#fff;padding:clamp(1rem,3vw,1.5rem);margin:0;box-shadow:0 10px 24px rgba(42,34,48,.05)}
.debt-step:nth-of-type(2n){border-left-color:var(--magenta)}
.debt-step[hidden],.debt-tool-actions [hidden]{display:none!important}
.debt-step legend{font-family:var(--display);font-size:clamp(2rem,4.5vw,3rem);line-height:.9;color:var(--deep);padding:0;margin:0}
.debt-step-image{position:relative;isolation:isolate;margin:.85rem 0 1.1rem;width:min(100%,680px)}
.debt-step-image::before{content:"";position:absolute;right:-10px;bottom:-10px;width:28%;height:38%;background:var(--turquoise);z-index:-1}
.debt-step-image::after{content:"";position:absolute;left:-12px;top:-12px;width:80px;height:58px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:14px 14px;opacity:.48;z-index:2}
.debt-step-image img{width:100%;height:clamp(130px,18vw,190px);object-fit:cover;border:5px solid #fff;border-radius:8px 90px 8px 8px;box-shadow:8px 8px 0 rgba(42,95,85,.14);background:#fff}
.debt-step-image--urgent::before,.debt-step-image--debts::before{background:var(--magenta)}
.debt-step-image--money::before{background:var(--mid)}
.debt-step-image--review::before{background:var(--green)}
.debt-step-image--send::before{background:var(--purple)}
.debt-step-image--debts img,.debt-step-image--send img{border-radius:8px 8px 88px 8px}
.debt-step-image--route img{object-position:center 24%}
.debt-step-image--send img{object-fit:contain;object-position:center bottom;background:linear-gradient(135deg,#eaf8f7 0%,#fff 60%);padding:.35rem 2rem 0}
.debt-route-section + .debt-route-section{margin-top:1.2rem}
.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem}
.route-grid label{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:.75rem;align-items:start;min-height:112px;border:1px solid var(--line);border-radius:8px;padding:1rem;background:#fff;color:var(--ink);font-weight:800;cursor:pointer}
.route-grid label:has(input:checked){border-color:var(--deep);box-shadow:inset 0 0 0 2px var(--deep);background:#f5fbfb}
.route-grid input[type=radio],.checkbox-card-grid input[type=checkbox]{width:24px;height:24px;min-width:24px;min-height:24px;margin:.1rem 0 0;padding:0;accent-color:var(--deep)}
.checkbox-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem .9rem;margin:.8rem 0 1.2rem}
.checkbox-card-grid label{display:grid;grid-template-columns:28px minmax(0,1fr);gap:.65rem;align-items:start;border:1px solid var(--line);border-radius:8px;background:#fff;padding:.85rem;font-weight:800;color:var(--copy);line-height:1.35}
.checkbox-card-grid label:has(input:checked){border-color:var(--turquoise);background:#f5fbfb}
.shortcut-panel{background:#f8f8ee;border:1px solid var(--line);border-left:7px solid var(--magenta);border-radius:8px;padding:1rem}
.shortcut-panel p{margin:.45rem 0 0;font-weight:600}
.debt-urgent-note{margin-top:.8rem}
.debt-review-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:1rem;margin:1rem 0}
.debt-review-box{background:#fff;border:1px solid var(--line);border-radius:8px;padding:1rem}
.debt-review-box ul{margin:.2rem 0 0;padding-left:1.1rem}
.debt-review-box li{margin:.55rem 0;font-weight:650}
.solution-results-wrap{margin-top:1rem}
.sfs-groups{display:grid;gap:1rem;margin-top:1rem}
.sfs-group{background:#fff;border:1px solid var(--line);border-radius:8px;padding:1rem}
.sfs-group h3{border-bottom:1px solid rgba(42,95,85,.14);padding-bottom:.55rem}
.sfs-entry{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(0,1.35fr);gap:.8rem;align-items:center;padding:.58rem 0;border-bottom:1px solid rgba(42,95,85,.08)}
.sfs-entry:last-child{border-bottom:0;padding-bottom:0}
.sfs-entry label{font-weight:850;color:var(--deep);line-height:1.3}
.sfs-entry__controls{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(120px,.7fr) minmax(110px,.8fr);gap:.55rem;align-items:center}
.sfs-entry__controls input,.sfs-entry__controls select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:.55rem .65rem;font:inherit;font-weight:750;color:var(--ink)}
.sfs-entry__controls span{font-size:.82rem;font-weight:900;color:var(--purple);text-align:right}
.ie-breakdown ul{list-style:none;margin:.55rem 0 0;padding:0;display:grid;gap:.45rem}
.ie-breakdown li{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(42,95,85,.1);padding-bottom:.45rem}
.ie-breakdown li span{font-weight:800;color:var(--copy)}
.ie-breakdown li strong{font-weight:950;color:var(--deep);text-align:right}
.solution-results{display:grid;gap:.75rem}
.solution-results>p{margin:0;font-weight:650}
.solution-card{border:1px solid var(--line);border-left:7px solid var(--green);border-radius:8px;padding:.85rem;background:#fff}
.solution-card.is-less-likely{border-left-color:var(--purple)}
.solution-card.is-check{border-left-color:var(--turquoise)}
.solution-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.45rem}
.solution-card h4{font-family:Raleway,Arial,sans-serif;font-size:.95rem;line-height:1.2;color:var(--deep);margin:0}
.solution-card__head span{flex:0 0 auto;border-radius:999px;background:#eaf8f7;color:var(--deep);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;padding:.22rem .5rem}
.solution-card.is-relevant .solution-card__head span{background:#edf5e8;color:var(--deep)}
.solution-card.is-less-likely .solution-card__head span{background:#f4e8f0;color:var(--purple)}
.solution-card.is-check .solution-card__head span{background:#eaf8f7;color:var(--deep)}
.solution-card p{font-size:.88rem;line-height:1.45;margin:0;font-weight:600}
.debt-option-guide{margin:1rem 0;background:#f8f8ee;border:1px solid var(--line);border-radius:8px;padding:1rem}
.debt-option-guide h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;line-height:1.2;font-size:1rem;font-weight:900;color:var(--deep);margin:0 0 .8rem}
.debt-option-guide>div{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.debt-option-guide article{background:#fff;border:1px solid rgba(42,95,85,.14);border-radius:8px;padding:.9rem}
.debt-option-guide h4{font-family:Raleway,Arial,sans-serif;font-size:.92rem;color:var(--purple);margin:0 0 .35rem}
.debt-option-guide p{font-size:.9rem;line-height:1.45;margin:0;font-weight:600}
.debt-tool-actions{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin-top:1rem;flex-wrap:wrap}
.debt-tool-actions .btn{min-width:150px}
.debt-tool-actions [data-debt-next],.debt-tool-actions [data-debt-submit]{margin-left:auto}
.debt-tool [aria-invalid=true]{border-color:var(--magenta)!important;outline:3px solid rgba(216,72,166,.2)}
.debt-tool .form-field input,.debt-tool .form-field select,.debt-tool .form-field textarea{min-height:48px}
.debt-tool .consent-box .checkbox-row input[type=checkbox]{width:24px;height:24px;min-width:24px;min-height:24px}

.cta-band{background:var(--deep);color:#fff;padding:clamp(1.8rem,4vw,3rem) 0}
.cta-band .inner{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.cta-band h2{font-size:clamp(2rem,5vw,3.2rem);color:#fff;margin:.1rem 0}
.cta-band .eyebrow{color:var(--turquoise)}
.cta-band .btns{display:flex;gap:.7rem;flex-wrap:wrap}

.stat-band{position:relative;overflow:hidden;background:var(--deep);color:#fff;padding:clamp(2.2rem,5vw,3.4rem) 0}
.stat-band .eyebrow{color:var(--turquoise)}
.stat-band h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1.2rem}
.stat-band .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;position:relative;z-index:2}
.stat-band .n{font-family:var(--display);font-weight:400;font-size:clamp(2.8rem,5.5vw,4.4rem);line-height:.82;color:var(--turquoise)}
.stat-band .stat:nth-child(2) .n{color:var(--mid)} .stat-band .stat:nth-child(4) .n{color:#fff}
.stat-band .stat p{margin:.3rem 0 0;font-size:.92rem;max-width:24ch}

.case-hero .wrap{max-width:980px}
.case-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:clamp(1.2rem,4vw,2.4rem);align-items:start}
.case-promise{background:var(--deep);color:#fff;border-radius:12px;padding:1.2rem;box-shadow:0 14px 34px rgba(42,34,48,.16)}
.case-promise .eyebrow{color:var(--turquoise)}
.case-promise ul{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}
.case-promise li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:.75rem;align-items:start}
.case-promise li::before{content:"";grid-row:1/3;width:32px;height:32px;border-radius:50%;background:var(--magenta);box-shadow:10px 10px 0 rgba(91,201,198,.35)}
.case-promise b{display:block;color:#fff;font-family:Raleway,Arial,sans-serif;font-weight:900}
.case-promise span{display:block;color:rgba(255,255,255,.86);line-height:1.45;font-size:.94rem}
.case-promise b,.case-promise span{grid-column:2}
.case-feature{background:linear-gradient(135deg,rgba(244,244,216,.75),rgba(91,201,198,.18))}
.case-lead-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:clamp(1rem,3vw,2rem);align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:14px;padding:clamp(1.1rem,3vw,2rem);box-shadow:0 16px 36px rgba(42,34,48,.08);position:relative;overflow:hidden}
.case-lead-card::after{content:"";position:absolute;right:-3rem;top:-3rem;width:9rem;height:9rem;border-radius:50%;background:rgba(216,78,163,.16)}
.case-lead-card h2{font-size:clamp(2rem,4.8vw,3.35rem);line-height:.92;margin:.2rem 0 .8rem}
.case-kicker{font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--magenta);font-size:.78rem;margin:0 0 .6rem}
.case-outcome-card{background:var(--purple);color:#fff;border-radius:12px;padding:1.1rem;display:grid;align-content:start;gap:.75rem;position:relative;z-index:1}
.case-outcome-card span{font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--turquoise)}
.case-outcome-card ul{margin:0;padding-left:1.1rem;display:grid;gap:.45rem}
.case-outcome-card blockquote,.case-story blockquote{margin:.4rem 0 0;padding:.8rem 0 0;border-top:1px solid rgba(255,255,255,.35);font-weight:900;line-height:1.35}
.case-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.case-story{display:grid;gap:.75rem;align-content:start;background:#fff;border:1px solid var(--line);border-top:8px solid var(--deep);border-radius:12px;padding:1.05rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.case-story.c-purple{border-top-color:var(--purple)}
.case-story.c-green{border-top-color:var(--green)}
.case-story.c-deep{border-top-color:var(--deep)}
.case-story.c-magenta{border-top-color:var(--magenta)}
.case-story.c-teal{border-top-color:var(--turquoise)}
.case-story h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.35rem;line-height:1.08;color:var(--deep);margin:0}
.case-story p{margin:0;line-height:1.48}
.case-before{font-weight:700;color:var(--copy)}
.case-turning-point{background:rgba(244,244,216,.65);border-left:6px solid var(--turquoise);border-radius:8px;padding:.8rem}
.case-turning-point b{display:block;font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--purple);margin-bottom:.25rem}
.case-now{font-weight:800;color:var(--deep)}
.case-story blockquote{border-top-color:var(--line);color:var(--purple)}
.case-story--summary{background:var(--deep);color:#fff;border-top-color:var(--magenta)}
.case-story--summary h3,.case-story--summary p{color:#fff}
.case-story--summary .btn{justify-self:start;margin-top:.2rem}
.case-impact-strip{background:rgba(244,244,216,.45)}
.case-mini-outcomes{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}
.case-mini-outcomes span{display:inline-flex;align-items:center;min-height:44px;border-radius:999px;background:#fff;border:1px solid var(--line);padding:.55rem .85rem;font-weight:900;color:var(--deep);box-shadow:0 6px 0 rgba(91,201,198,.16)}

.report-feature-band{background:linear-gradient(135deg,#18232b 0%,#21332f 52%,rgba(91,201,198,.28) 100%);color:#fff;overflow:hidden}
.report-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(1.2rem,4vw,2.8rem);align-items:center;position:relative}
.report-feature::before{content:"";position:absolute;right:-6rem;top:-5rem;width:18rem;height:18rem;border:32px solid rgba(113,213,75,.28);border-radius:50%}
.report-feature-copy{position:relative;z-index:1}
.report-feature h2{color:#fff;font-size:clamp(2.7rem,7vw,5.2rem);line-height:.84;margin:.2rem 0 .8rem}
.report-feature .lede{color:#fff;font-weight:800;max-width:62ch}
.report-feature p{color:rgba(255,255,255,.9)}
.report-logo-row{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;margin-bottom:1rem}
.report-logo-row img{width:116px;height:auto;background:#18232b;border-radius:6px;padding:.45rem}
.report-logo-row span{font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--turquoise);font-size:.78rem}
.report-logo-row--light img{background:#18232b}
.report-quote{display:inline-block;margin:1rem 0 1.1rem;padding:.8rem 1rem;border-radius:10px;background:var(--turquoise);color:#18232b;font-family:Raleway,Arial,sans-serif;font-weight:900;font-size:clamp(1.15rem,2.4vw,1.65rem);line-height:1.12;box-shadow:10px 10px 0 rgba(113,213,75,.45)}
.report-quote--green{background:#71d54b;color:#18232b;box-shadow:10px 10px 0 rgba(91,201,198,.45)}
.report-actions{display:flex;gap:.7rem;flex-wrap:wrap}
.report-cover-card{position:relative;z-index:1;margin:0;transform:rotate(1.5deg);background:#fff;border-radius:12px;padding:.75rem;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.report-cover-card img{display:block;width:100%;border-radius:8px}
.report-cover-card figcaption{font-size:.82rem;line-height:1.35;color:var(--deep);font-weight:800;margin:.55rem .15rem 0}
.report-cover-card--large{transform:rotate(-1deg)}
.stability-grid,.stability-work-grid,.report-impact-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:start}
.stability-national{background:rgba(244,244,216,.48)}
.study-sites{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.study-sites article{background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.study-sites article.is-ac{background:var(--deep);border-top-color:var(--magenta);color:#fff;transform:translateY(-.45rem)}
.study-sites strong{display:block;font-family:var(--display);font-size:2rem;line-height:.9;color:var(--purple);margin-bottom:.5rem}
.study-sites .is-ac strong{color:var(--turquoise)}
.study-sites span{font-weight:800;line-height:1.4}
.advice-pillars{display:grid;gap:.8rem}
.advice-pillars article{display:grid;grid-template-columns:52px minmax(0,1fr);gap:.8rem;align-items:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;box-shadow:0 8px 0 rgba(91,201,198,.16)}
.advice-pillars span{display:grid;grid-row:1 / span 2;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--magenta);color:#fff;font-family:var(--display);font-size:1.8rem}
.advice-pillars h3{margin:0 0 .25rem;font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);font-size:1.08rem}
.advice-pillars p{margin:0;line-height:1.45;font-size:.94rem}
.advice-pillars h3,.advice-pillars p{grid-column:2}
.report-quote-band{background:var(--purple);color:#fff;overflow:hidden}
.report-quote-feature{max-width:900px}
.report-quote-feature .eyebrow{color:var(--turquoise)}
.report-quote-feature blockquote{margin:0;padding:0;color:var(--turquoise);font-family:var(--display);font-size:clamp(3rem,8vw,6rem);line-height:.82}
.report-quote-feature p{font-weight:800;max-width:62ch}
.impact-map-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}
.impact-map-grid span{display:flex;align-items:center;min-height:58px;border-radius:999px;background:#fff;border:1px solid var(--line);padding:.65rem 1rem;font-weight:900;color:var(--deep);box-shadow:0 6px 0 rgba(91,201,198,.16)}
.stability-system{background:linear-gradient(135deg,rgba(91,201,198,.18),rgba(244,244,216,.65))}
.source-note{font-size:.88rem;font-weight:800;color:var(--deep);background:#fff;border-left:6px solid var(--turquoise);border-radius:8px;padding:.8rem}
.annual-report-hero{overflow:hidden}
.annual-report-feature-band{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--deep) 0%,var(--purple) 56%,rgba(91,201,198,.46) 100%);color:#fff}
.annual-report-feature-band::after{content:"";position:absolute;right:-5rem;bottom:-7rem;width:18rem;height:18rem;border:34px solid rgba(244,244,216,.2);border-radius:50%}
.annual-report-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.58fr);gap:clamp(1.1rem,4vw,2.6rem);align-items:stretch;position:relative;z-index:1}
.annual-report-feature h2{color:#fff;font-size:clamp(2.4rem,6.4vw,4.8rem);line-height:.86;margin:.2rem 0 .8rem}
.annual-report-feature p{color:rgba(255,255,255,.9)}
.annual-report-feature .lede{font-weight:900;color:#fff;max-width:62ch}
.annual-report-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}
.annual-report-snapshot{display:grid;gap:.75rem;align-content:start;background:#fff;color:var(--deep);border-radius:16px;padding:1rem;box-shadow:14px 14px 0 rgba(91,201,198,.34);position:relative;overflow:hidden}
.annual-report-snapshot::before{content:"";position:absolute;right:-2.4rem;top:-2.4rem;width:7rem;height:7rem;border-radius:50%;background:rgba(216,78,163,.18)}
.annual-report-year{position:relative;z-index:1;display:inline-grid;place-items:center;justify-self:start;min-width:92px;height:92px;border-radius:50%;background:var(--magenta);color:#fff;font-family:var(--display);font-size:2rem;line-height:.85}
.annual-report-stat{position:relative;z-index:1;display:grid;grid-template-columns:100px minmax(0,1fr);gap:.75rem;align-items:center;border:1px solid var(--line);border-radius:12px;padding:.75rem;background:rgba(244,244,216,.45)}
.annual-report-stat strong{font-family:var(--display);font-size:2.2rem;line-height:.85;color:var(--purple)}
.annual-report-stat span{font-weight:900;line-height:1.32}
.annual-report-list{display:grid;gap:.8rem;margin-top:1rem}
.annual-report-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;background:#fff;border:1px solid var(--line);border-left:8px solid var(--turquoise);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.annual-report-row:nth-child(2n){border-left-color:var(--green)}
.annual-report-row:nth-child(3n){border-left-color:var(--magenta)}
.annual-report-row span{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:rgba(91,201,198,.16);padding:.25rem .65rem;font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.76rem;color:var(--deep)}
.annual-report-row h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.18rem;line-height:1.1;color:var(--deep);margin:.45rem 0 .25rem}
.annual-report-row p{margin:0;line-height:1.45}
.annual-report-archive-band{background:linear-gradient(135deg,rgba(244,244,216,.7),rgba(91,201,198,.18))}
.annual-report-archive-intro{max-width:790px;margin-bottom:1rem}
.annual-archive-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem}
.annual-archive-grid a{position:relative;overflow:hidden;display:grid;gap:.55rem;min-height:165px;align-content:end;text-decoration:none;background:var(--deep);color:#fff;border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.08)}
.annual-archive-grid a::before{content:"";position:absolute;right:-2.2rem;top:-2.2rem;width:7rem;height:7rem;border-radius:50%;background:rgba(91,201,198,.28)}
.annual-archive-grid a:nth-child(2n){background:var(--purple)}
.annual-archive-grid a:nth-child(3n){background:var(--green)}
.annual-archive-grid span,.annual-archive-grid strong{position:relative;z-index:1}
.annual-archive-grid span{font-family:var(--display);font-size:2.4rem;line-height:.86;color:var(--turquoise)}
.annual-archive-grid a:nth-child(3n) span{color:var(--cream)}
.annual-archive-grid strong{font-family:Raleway,Arial,sans-serif;font-weight:900;line-height:1.1}
.overcrowding-promo-band{background:linear-gradient(135deg,rgba(91,201,198,.16),rgba(244,244,216,.58))}
.overcrowding-tool{--oc-border:#d9d3c5}
.oc-shell{display:grid;gap:1rem}
.oc-progress ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;list-style:none;margin:0;padding:0}
.oc-progress button{width:100%;min-height:58px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:.5rem;align-items:center;text-align:left;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--deep);font-weight:900;cursor:pointer}
.oc-progress button span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(91,201,198,.2);font-family:var(--display);font-size:1.25rem}
.oc-progress button.is-active{border-color:var(--magenta);box-shadow:0 7px 0 rgba(216,78,163,.18)}
.oc-progress button.is-active span,.oc-progress button.is-complete span{background:var(--magenta);color:#fff}
.oc-stage{background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:14px;padding:clamp(1rem,3vw,1.5rem);box-shadow:0 14px 36px rgba(42,34,48,.08)}
.oc-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.48fr);gap:1rem}
.oc-info-panel,.oc-rule-panel,.oc-panel,.oc-room-editor{background:rgba(244,244,216,.48);border:1px solid var(--line);border-radius:12px;padding:1rem}
.oc-info-panel{display:grid;gap:.8rem;align-content:start}
.oc-info-panel h3,.oc-rule-panel h3,.oc-panel h3,.oc-room-editor h3{font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:none;letter-spacing:0;color:var(--deep);margin:.1rem 0 .5rem}
.oc-info-panel ul,.oc-rule-panel ul,.oc-panel ul{margin:.2rem 0 .6rem;padding-left:1.1rem}
.oc-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}
.oc-section-head h2{margin:.1rem 0 .4rem}
.oc-action-row{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center}
.oc-live-summary{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,1fr);gap:.7rem;align-items:center;background:var(--deep);color:#fff;border-radius:12px;padding:.85rem 1rem;margin:0 0 1rem}
.oc-live-summary strong{font-family:Raleway,Arial,sans-serif;font-weight:900}
.oc-live-summary span{color:rgba(255,255,255,.86)}
.oc-card-grid{display:grid;gap:1rem}
.oc-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.oc-person-card,.oc-room-card,.oc-relationship-row{display:grid;gap:.8rem;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;box-shadow:0 8px 0 rgba(91,201,198,.14)}
.oc-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.oc-card-head h3{margin:0;font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;color:var(--deep);font-size:1.16rem}
.oc-card-head button{width:34px;height:34px;border-radius:50%;border:0;background:var(--purple);color:#fff;font-size:1.45rem;line-height:1;cursor:pointer}
.oc-person-card label,.oc-room-editor label,.oc-relationship-row label,.oc-summary-actions label{display:grid;gap:.28rem;font-weight:900;color:var(--deep)}
.oc-person-card input,.oc-person-card select,.oc-room-editor input,.oc-room-editor select,.oc-room-editor textarea,.oc-relationship-row select,.oc-summary-actions textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:.62rem .7rem;font:inherit;background:#fff;color:var(--copy)}
.oc-check{display:flex!important;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:.5rem;font-weight:800!important;color:var(--copy)!important}
.oc-check input{width:20px!important;height:20px;margin:.1rem 0 0;accent-color:var(--magenta)}
.oc-empty{border:1px dashed var(--line);border-radius:12px;padding:1rem;background:rgba(91,201,198,.08);font-weight:800}
.oc-unit-switch{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;margin:0 0 1rem}
.oc-unit-switch button,.oc-planner-toolbar button,.oc-furniture-tray button,.oc-action-row button{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--deep);font-weight:900;padding:.55rem .85rem;cursor:pointer}
.oc-unit-switch button.is-active,.oc-floor-tabs button.is-active{background:var(--deep);border-color:var(--deep);color:#fff}
.oc-unit-switch span{font-size:.88rem;font-weight:800;color:var(--copy)}
.oc-planner-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:1rem;align-items:start}
.oc-planner-panel{display:grid;gap:.65rem;min-width:0}
.oc-floor-tabs{display:flex;gap:.45rem;flex-wrap:wrap}
.oc-floor-tabs button{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--deep);font-weight:900;padding:.5rem .8rem;cursor:pointer}
.oc-planner-toolbar{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap;background:rgba(244,244,216,.48);border:1px solid var(--line);border-radius:10px;padding:.65rem}
.oc-planner-toolbar label{display:flex;gap:.45rem;align-items:center;font-weight:900;color:var(--deep)}
.oc-planner-people{display:grid;gap:.55rem;background:#fff;border:1px solid var(--line);border-left:8px solid var(--magenta);border-radius:12px;padding:.75rem;box-shadow:0 8px 0 rgba(91,201,198,.12)}
.oc-planner-people__head{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap}
.oc-planner-people__head strong{display:block;font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep)}
.oc-planner-people__head span{display:block;font-size:.86rem;color:var(--copy);line-height:1.3}
.oc-planner-people__head button,.oc-quick-person button{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--deep);font-weight:900;padding:.42rem .68rem;cursor:pointer}
.oc-people-bin{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;min-height:44px;border:1px dashed rgba(15,90,79,.28);border-radius:10px;background:rgba(91,201,198,.08);padding:.45rem}
.oc-people-bin>span{font-size:.8rem;font-weight:900;color:var(--deep);text-transform:uppercase;letter-spacing:.04em}
.oc-quick-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}
.oc-quick-person{display:grid;grid-template-columns:auto minmax(88px,1fr) 60px 82px auto;gap:.35rem;align-items:end;border:1px solid rgba(15,90,79,.16);border-radius:10px;background:rgba(244,244,216,.35);padding:.45rem}
.oc-quick-person label{display:grid;gap:.12rem;font-size:.72rem;font-weight:900;color:var(--deep)}
.oc-quick-person input,.oc-quick-person select{width:100%;min-width:0;border:1px solid var(--line);border-radius:7px;padding:.34rem .42rem;font:inherit;background:#fff;color:var(--copy)}
.oc-person-chip{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border:0;border-radius:999px;background:var(--purple);color:#fff;font-family:Raleway,Arial,sans-serif;font-size:.78rem;font-weight:900;line-height:1;padding:.32rem .55rem;cursor:grab;box-shadow:0 3px 0 rgba(42,34,48,.16)}
.oc-person-chip:active{cursor:grabbing}
.oc-canvas{position:relative;min-height:460px;overflow:auto;border:2px dashed rgba(15,90,79,.25);border-radius:14px;background-color:#fbfbf5;background-image:linear-gradient(rgba(15,90,79,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(15,90,79,.06) 1px,transparent 1px);background-size:24px 24px;transform-origin:top left}
.oc-canvas-empty{position:absolute;inset:1rem;display:grid;place-items:center;text-align:center;font-weight:900;color:var(--deep);background:rgba(255,255,255,.7);border-radius:12px}
.oc-room-tile{position:absolute;display:grid;align-content:start;gap:.18rem;min-width:58px;min-height:58px;border:3px solid #fff;border-radius:16px 16px 8px 8px;background:var(--turquoise);box-shadow:8px 8px 0 rgba(15,90,79,.16);padding:.55rem;text-align:left;color:var(--deep);cursor:grab;touch-action:none;overflow:hidden;transform:scale(var(--zoom));transform-origin:top left}
.oc-room-tile__select{display:grid;gap:.18rem;text-align:left;border:0;background:transparent;color:inherit;padding:0;cursor:pointer}
.oc-room-tile.is-counted{background:var(--turquoise)}
.oc-room-tile.is-uncertain{background:var(--cream)}
.oc-room-tile.is-not-counted{background:#e9edf0}
.oc-room-tile.is-selected{outline:4px solid var(--magenta);z-index:8;overflow:visible}
.oc-room-tile strong{font-family:Raleway,Arial,sans-serif;font-weight:900;font-size:.92rem;line-height:1.05}
.oc-room-tile span,.oc-room-tile small,.oc-room-tile i{font-size:.72rem;line-height:1.15;font-style:normal}
.oc-room-tile em{justify-self:start;border-radius:999px;background:rgba(255,255,255,.7);padding:.1rem .38rem;font-size:.68rem;font-weight:900;font-style:normal}
.oc-room-tile b{position:absolute;right:0;bottom:0;width:22px;height:22px;border-radius:14px 0 4px 0;background:var(--purple);cursor:nwse-resize}
.oc-room-people{display:flex;align-items:center;gap:.22rem;flex-wrap:wrap;min-height:31px;border:1px dashed rgba(15,90,79,.25);border-radius:8px;background:rgba(255,255,255,.46);padding:.22rem;cursor:auto}
.oc-room-people>span:not(.oc-room-person){font-size:.68rem;font-weight:900;color:rgba(15,90,79,.72)}
.oc-room-person{display:inline-flex;align-items:center;gap:.12rem}
.oc-room-person .oc-person-chip{min-height:24px;font-size:.68rem;padding:.25rem .42rem}
.oc-unassign-person{display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:50%;background:var(--magenta);color:#fff;font-size:.74rem;font-weight:900;line-height:1;cursor:pointer}
.oc-tile-dims{position:absolute;left:.3rem;right:.3rem;bottom:-46px;display:grid;grid-template-columns:1fr 1fr;gap:.28rem;min-width:132px;border:1px solid rgba(15,90,79,.24);border-radius:10px;background:#fff;padding:.32rem;box-shadow:0 8px 18px rgba(42,34,48,.16);cursor:auto;touch-action:manipulation}
.oc-tile-dims label{display:grid;gap:.08rem;font-size:.64rem;font-weight:900;color:var(--deep)}
.oc-tile-dims input{width:100%;min-width:0;border:1px solid rgba(15,90,79,.28);border-radius:6px;background:rgba(255,255,255,.96);padding:.2rem .25rem;font:inherit;color:var(--deep)}
.oc-furniture-tray{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}
.oc-furniture-tray strong{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep)}
.oc-room-editor{position:sticky;top:1rem;display:grid;gap:.55rem;font-size:.92rem}
.oc-room-editor fieldset{border:1px solid var(--line);border-radius:10px;padding:.62rem;display:grid;gap:.45rem;background:#fff}
.oc-room-editor legend{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);padding:0 .25rem}
.oc-dim-pair{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.oc-class-note,.oc-threshold-note{border-left:6px solid var(--turquoise);background:rgba(91,201,198,.12);border-radius:8px;padding:.65rem;margin:0;font-weight:800}
.oc-room-list{margin-top:1rem}
.oc-room-list h3{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep)}
.oc-room-card{margin-bottom:.65rem}
.oc-room-card button{display:flex;gap:.6rem;align-items:center;justify-content:space-between;text-align:left;border:0;background:transparent;color:var(--deep);font:inherit;cursor:pointer;padding:0}
.oc-room-card strong{font-family:Raleway,Arial,sans-serif;font-weight:900}
.oc-room-card p{margin:0}
.oc-relationship-list{display:grid;gap:.8rem}
.oc-relationship-row{grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end}
.oc-relationship-row button{border:0;border-radius:999px;background:var(--purple);color:#fff;font-weight:900;padding:.7rem .9rem;cursor:pointer}
.oc-results{display:grid;gap:1rem}
.oc-result-hero{border-radius:14px;padding:clamp(1rem,3vw,1.6rem);color:#fff;background:var(--deep);box-shadow:10px 10px 0 rgba(91,201,198,.25)}
.oc-result-hero h2{color:#fff;font-size:clamp(2rem,5vw,3.7rem);line-height:.9}
.oc-result-hero p{color:rgba(255,255,255,.9);max-width:74ch}
.oc-result-hero.is-likely-overcrowded{background:var(--purple)}
.oc-result-hero.is-may-be-overcrowded{background:linear-gradient(135deg,var(--purple),var(--deep))}
.oc-result-hero.is-not-shown-overcrowded{background:var(--deep)}
.oc-scenario-table{overflow-x:auto}
.oc-scenario-table table{width:100%;border-collapse:collapse;background:#fff}
.oc-scenario-table th,.oc-scenario-table td{border:1px solid var(--line);padding:.65rem;text-align:left;vertical-align:top}
.oc-scenario-table th{background:var(--deep);color:#fff;font-family:Raleway,Arial,sans-serif}
.oc-breakdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.oc-breakdown-grid section{background:#fff;border:1px solid var(--line);border-radius:10px;padding:.85rem}
.oc-breakdown-grid h4{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);margin:.1rem 0 .4rem}
.oc-evidence-list{columns:2}
.oc-summary-preview{white-space:pre-wrap;background:#18232b;color:#fff;border-radius:10px;padding:1rem;max-height:260px;overflow:auto}
.oc-nav{display:flex;justify-content:space-between;gap:.75rem}
@media print{
  .fascia,.site-header,.site-footer,.oc-progress,.oc-nav,.oc-planner-panel,.oc-room-editor,.oc-summary-actions .oc-action-row,.wagtail-userbar{display:none!important}
  .oc-stage,.oc-panel,.oc-result-hero{box-shadow:none!important;border-color:#999!important}
  body{background:#fff!important}
}
.news-latest-band{background:linear-gradient(135deg,rgba(244,244,216,.7),rgba(91,201,198,.18))}
.news-feature-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:clamp(1rem,4vw,2.3rem);align-items:stretch;background:var(--deep);color:#fff;border-radius:12px;padding:clamp(1.1rem,3vw,2rem);box-shadow:0 18px 44px rgba(42,34,48,.16)}
.news-feature-card::after{content:"";position:absolute;right:-3rem;bottom:-3.5rem;width:13rem;height:13rem;border-radius:50%;background:rgba(91,201,198,.2)}
.news-feature-card h3{font-size:clamp(2rem,4vw,3.4rem);line-height:.9;color:#fff;margin:.35rem 0 .8rem}
.news-feature-card p{color:rgba(255,255,255,.9)}
.news-meta{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin:0 0 .85rem;font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.07em;font-size:.78rem;color:var(--magenta)}
.news-feature-card .news-meta{color:var(--turquoise)}
.news-meta span,.news-meta time{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:rgba(91,201,198,.16);padding:.25rem .65rem}
.news-feature-card .news-meta span,.news-feature-card .news-meta time{background:rgba(255,255,255,.12)}
.news-award-banner{position:relative;z-index:1;margin:0;align-self:center;background:#090807;border-radius:12px;padding:.45rem;box-shadow:16px 16px 0 rgba(113,213,75,.5)}
.news-award-banner img,.news-article-banner img{display:block;width:100%;height:auto;border-radius:8px}
.news-article-banner{margin:1rem 0 1.25rem;background:#090807;border-radius:12px;padding:.5rem;box-shadow:10px 10px 0 rgba(91,201,198,.28)}
.news-article-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(1.2rem,4vw,2.4rem);align-items:start}
.news-article{max-width:760px}
.news-awards-panel{display:grid;gap:1rem;position:sticky;top:1rem}
.news-award-tile{background:#fff;border:1px solid var(--line);border-top:8px solid var(--magenta);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.news-award-tile:nth-child(3){border-top-color:var(--turquoise)}
.news-award-tile span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--deep);color:#fff;font-family:var(--display);font-size:1.7rem;margin-bottom:.7rem}
.news-award-tile h2{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.3rem;line-height:1.1;margin:.2rem 0 .5rem;color:var(--deep)}
.news-award-tile p{margin:0;line-height:1.45}
.news-video-card{margin:0;background:var(--deep);border-radius:12px;padding:.65rem;box-shadow:0 10px 24px rgba(42,34,48,.12)}
.news-video-card video{display:block;width:100%;border-radius:8px;background:#000}
.news-video-card figcaption{color:#fff;font-size:.86rem;font-weight:800;line-height:1.35;margin:.55rem .1rem 0}
.news-impact-strip{background:rgba(244,244,216,.45)}
.news-story-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.news-card{display:flex;min-width:0;flex-direction:column;gap:.75rem;color:var(--copy);text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.75rem;box-shadow:0 10px 24px rgba(42,34,48,.06);transition:transform .18s ease,box-shadow .18s ease}
.news-card:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(42,34,48,.12)}
.news-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#fff}
.news-card--logo img{object-fit:contain;padding:1rem;background:#fff}
.news-card h3{font-family:Raleway,Arial,sans-serif;font-weight:900;font-size:1.12rem;line-height:1.15;color:var(--deep);margin:0}
.news-card p{margin:0;line-height:1.45;font-size:.95rem}
.news-card .news-meta{margin:0}
.news-article-banner--light{background:#fff}
.news-photo-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:.85rem;align-items:stretch}
.news-photo-grid img{display:block;width:100%;height:100%;min-height:220px;object-fit:cover;border:6px solid #fff;border-radius:12px;box-shadow:9px 9px 0 rgba(91,201,198,.18)}
.news-photo-grid img:nth-child(1){border-radius:160px 160px 16px 16px}
.news-photo-grid img:nth-child(2){border-radius:18px 90px 18px 18px}
.news-photo-grid img:nth-child(3){border-radius:50%;aspect-ratio:1;min-height:0;align-self:center}
.event-feature-card{position:relative;overflow:hidden;display:grid;grid-template-columns:150px minmax(0,1fr) minmax(240px,.42fr);gap:clamp(1rem,3vw,1.8rem);align-items:center;background:var(--deep);color:#fff;border-radius:16px;padding:clamp(1rem,3vw,1.7rem);box-shadow:0 18px 44px rgba(42,34,48,.16)}
.event-feature-card::before{content:"";position:absolute;right:2rem;top:-3rem;width:10rem;height:10rem;border-radius:50%;background:rgba(216,78,163,.28)}
.event-feature-card h3{font-size:clamp(2rem,4vw,3.5rem);line-height:.88;color:#fff;margin:.35rem 0 .8rem}
.event-feature-card p{color:rgba(255,255,255,.9)}
.event-date-card{position:relative;z-index:1;display:grid;place-items:center;align-self:stretch;min-height:160px;border-radius:90px 90px 18px 18px;background:var(--magenta);color:#fff;text-align:center;box-shadow:10px 10px 0 rgba(91,201,198,.4);padding:1rem}
.event-date-card span,.event-date-card em{font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-style:normal}
.event-date-card strong{font-family:var(--display);font-size:clamp(4.4rem,9vw,6.3rem);line-height:.75;color:#fff}
.event-date-card--large{min-height:190px;margin:-.2rem 0 1rem}
.event-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:1rem 0}
.event-detail-grid span{display:block;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:.7rem;line-height:1.35;color:#fff}
.event-detail-grid b{display:block;font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;color:var(--turquoise);margin-bottom:.2rem}
.event-feature-photo{position:relative;z-index:1;margin:0;align-self:stretch}
.event-feature-photo::before{content:"";position:absolute;left:-1rem;top:-1rem;width:86px;height:70px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:16px 16px;opacity:.65;z-index:2}
.event-feature-photo img{display:block;width:100%;height:100%;min-height:230px;object-fit:cover;border:7px solid #fff;border-radius:18px 110px 18px 18px;box-shadow:12px 12px 0 rgba(91,201,198,.32)}
.event-mini-grid,.event-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.event-mini-grid article,.event-highlight-grid article{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.event-mini-grid article:nth-child(2),.event-highlight-grid article:nth-child(2n){border-top-color:var(--magenta)}
.event-mini-grid article:nth-child(3),.event-highlight-grid article:nth-child(3n){border-top-color:var(--turquoise)}
.event-mini-grid span,.event-highlight-grid span{display:inline-grid;place-items:center;min-width:46px;height:46px;border-radius:999px;background:var(--deep);color:#fff;font-family:var(--display);font-size:1.45rem;margin-bottom:.7rem;padding:0 .65rem}
.event-mini-grid h3,.event-highlight-grid h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.16rem;line-height:1.1;color:var(--deep);margin:0 0 .45rem}
.event-mini-grid p,.event-highlight-grid p{margin:0;line-height:1.45}
.event-hero-band{background:linear-gradient(135deg,rgba(244,244,216,.72),rgba(91,201,198,.16))}
.event-article-layout,.event-history-grid,.event-speaker-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:start}
.event-info-panel{position:relative;display:grid;gap:.85rem;background:#fff;border:1px solid var(--line);border-radius:16px;padding:1rem;box-shadow:0 18px 44px rgba(42,34,48,.12)}
.event-info-panel figure{margin:-1rem -1rem 0;position:relative;overflow:hidden;border-radius:16px 16px 0 0}
.event-info-panel figure img{display:block;width:100%;aspect-ratio:5/3;object-fit:cover}
.event-info-panel dl{display:grid;gap:.65rem;margin:0}
.event-info-panel dl div{border-left:6px solid var(--turquoise);background:rgba(244,244,216,.52);border-radius:8px;padding:.65rem .75rem}
.event-info-panel dt{font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;color:var(--magenta);margin-bottom:.15rem}
.event-info-panel dd{margin:0;line-height:1.35;color:var(--deep);font-weight:800}
.event-quote{display:inline-block;margin:1rem 0 0;padding:.8rem 1rem;border-radius:12px;background:var(--magenta);color:#fff;font-family:var(--display);font-size:clamp(2rem,5vw,3.6rem);line-height:.85;box-shadow:10px 10px 0 rgba(91,201,198,.28)}
.event-history-band,.event-gallery-band{background:rgba(244,244,216,.45)}
.event-memory-stack{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:0}
.event-memory-stack img{display:block;width:100%;height:100%;min-height:220px;object-fit:cover;background:#fff;border:6px solid #fff;box-shadow:10px 10px 0 rgba(91,201,198,.18)}
.event-memory-stack img:first-child{border-radius:130px 130px 14px 14px;object-fit:contain;padding:1rem}
.event-memory-stack img:last-child{border-radius:16px 90px 16px 16px}
.event-highlight-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.event-speaker-band{background:linear-gradient(135deg,var(--deep),#263d37);color:#fff;overflow:hidden}
.event-speaker-band .eyebrow{color:var(--turquoise)}
.event-speaker-band h2{color:#fff}
.event-speaker-band p{color:rgba(255,255,255,.9)}
.event-photo-stack{position:relative;display:grid;grid-template-columns:1fr .82fr;gap:.85rem;margin:0;align-items:end}
.event-photo-stack::after{content:"";position:absolute;right:-1rem;bottom:-1rem;width:45%;height:38%;background:var(--turquoise);z-index:0}
.event-photo-stack img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;border:7px solid #fff;box-shadow:10px 10px 0 rgba(216,78,163,.2)}
.event-photo-stack img:first-child{min-height:360px;border-radius:20px 120px 20px 20px}
.event-photo-stack img:last-child{min-height:230px;border-radius:120px 120px 18px 18px;margin-bottom:1.2rem}
.event-gallery{display:grid;grid-template-columns:1.25fr 1fr .85fr;gap:.85rem;align-items:stretch}
.event-gallery img{display:block;width:100%;height:100%;min-height:240px;object-fit:cover;border:7px solid #fff;box-shadow:9px 9px 0 rgba(91,201,198,.18)}
.event-gallery img:nth-child(1){border-radius:18px 120px 18px 18px}
.event-gallery img:nth-child(2){border-radius:140px 140px 18px 18px}
.event-gallery img:nth-child(3){border-radius:50%;aspect-ratio:1;min-height:0;align-self:center}
.renters-feature-band{background:linear-gradient(135deg,var(--deep),#263d37 58%,rgba(91,201,198,.34));color:#fff;overflow:hidden}
.renters-feature{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:clamp(1.2rem,5vw,3rem);align-items:center}
.renters-feature::before{content:"";position:absolute;right:-6rem;top:-5rem;width:20rem;height:20rem;border-radius:50%;border:34px solid rgba(216,78,163,.25)}
.renters-feature-copy{position:relative;z-index:1}
.renters-feature h2{color:#fff;font-size:clamp(3rem,7vw,5.8rem);line-height:.82;margin:.25rem 0 .9rem}
.renters-feature p{color:rgba(255,255,255,.9)}
.renters-feature .lede{color:#fff;font-weight:900;max-width:64ch}
.renters-house-graphic{position:relative;z-index:1;display:grid;gap:1rem;justify-items:center}
.renters-house{display:grid;place-items:center;width:min(320px,80vw);aspect-ratio:1;border-radius:50% 50% 18px 18px;background:var(--turquoise);box-shadow:18px 18px 0 rgba(216,78,163,.48);position:relative;overflow:hidden}
.renters-house::before{content:"";position:absolute;left:12%;top:18%;width:76%;height:44%;background:#fff;border-radius:16px 16px 0 0;clip-path:polygon(50% 0,100% 45%,100% 100%,0 100%,0 45%)}
.renters-house::after{content:"";position:absolute;right:-20%;bottom:-25%;width:72%;height:72%;border-radius:50%;background:var(--green)}
.renters-house span{position:relative;z-index:1;display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background:var(--deep);color:#fff;font-family:Raleway,Arial,sans-serif;font-weight:900;font-size:2rem}
.renters-house-graphic ul{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;list-style:none;margin:0;padding:0;width:min(360px,100%)}
.renters-house-graphic li{display:grid;place-items:center;min-height:46px;border-radius:999px;background:#fff;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;box-shadow:0 6px 0 rgba(91,201,198,.18)}
.renters-feature-photo{position:relative;z-index:1;margin:0;align-self:stretch;background:#fff;border-radius:20px 120px 20px 20px;padding:.55rem;box-shadow:18px 18px 0 rgba(216,78,163,.42)}
.renters-feature-photo::before{content:"";position:absolute;left:-1.15rem;top:-1.15rem;width:104px;height:86px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.72;z-index:2}
.renters-feature-photo::after{content:"";position:absolute;right:-1.1rem;bottom:-1.05rem;width:42%;height:32%;background:var(--turquoise);z-index:-1}
.renters-feature-photo img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover;object-position:center center;border-radius:16px 112px 16px 16px}
.renters-feature-photo figcaption{margin:.55rem .15rem .05rem;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900;line-height:1.25;font-size:.88rem}
.renters-change-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.renters-change-grid article{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.renters-change-grid article:nth-child(2n){border-top-color:var(--magenta)}
.renters-change-grid article:nth-child(3n){border-top-color:var(--turquoise)}
.renters-change-grid span{display:inline-grid;place-items:center;min-width:48px;height:48px;border-radius:999px;background:var(--deep);color:#fff;font-family:var(--display);font-size:1.35rem;margin-bottom:.8rem;padding:0 .7rem}
.renters-change-grid h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.12rem;line-height:1.1;color:var(--deep);margin:0 0 .45rem}
.renters-change-grid p{margin:0;line-height:1.44;font-size:.94rem}
.renters-section-21-band{background:var(--purple);color:#fff;overflow:hidden}
.renters-section-21-band .eyebrow{color:var(--turquoise)}
.renters-section-21-band h2{color:#fff;font-size:clamp(2.4rem,6vw,5rem);line-height:.85}
.renters-section-21-band p{color:rgba(255,255,255,.9)}
.renters-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:start}
.renters-alert{background:var(--magenta);color:#fff;border-radius:18px;padding:1.2rem;box-shadow:14px 14px 0 rgba(91,201,198,.34)}
.renters-alert span{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#fff;color:var(--magenta);font-family:var(--display);font-size:3rem;margin-bottom:1rem}
.renters-alert h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;color:#fff;font-size:1.35rem;line-height:1.12;margin:0 0 .55rem}
.renters-alert p{margin:0;color:#fff;line-height:1.45}
.renters-mini-panel,.renters-source-card{background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:14px;padding:1.1rem;box-shadow:0 12px 28px rgba(42,34,48,.08)}
.renters-mini-panel h3,.renters-source-card h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;color:var(--deep);font-size:1.25rem;margin:0 0 .6rem}
.renters-mini-panel p,.renters-source-card p{margin:.55rem 0 0;line-height:1.48}
.renters-practical-band{background:linear-gradient(135deg,rgba(244,244,216,.68),rgba(91,201,198,.14))}
.renters-action-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-top:1rem}
.renters-action-list article{display:grid;grid-template-columns:46px minmax(0,1fr);gap:.75rem;align-items:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;box-shadow:0 8px 0 rgba(91,201,198,.14)}
.renters-action-list span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--magenta);color:#fff;font-family:var(--display);font-size:1.6rem}
.renters-action-list p{margin:0;line-height:1.45;font-weight:800;color:var(--deep)}
.landlord-hero{overflow:hidden}
.landlord-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:center}
.landlord-hero .report-actions{margin-top:1.1rem}
.landlord-hero-card{position:relative;margin:0;background:#fff;border-radius:18px;padding:.75rem;box-shadow:18px 18px 0 rgba(91,201,198,.34);transform:rotate(1.2deg)}
.landlord-hero-card::before{content:"";position:absolute;left:-1.2rem;top:-1.2rem;width:7.5rem;height:7.5rem;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.72}
.landlord-hero-card img{position:relative;display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}
.landlord-hero-card figcaption{display:grid;gap:.35rem;margin-top:.65rem;color:var(--deep)}
.landlord-hero-card span{font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--magenta);font-size:.76rem}
.landlord-hero-card strong{font-size:1.08rem;line-height:1.18}
.landlord-intro{background:linear-gradient(135deg,rgba(244,244,216,.72),rgba(91,201,198,.12))}
.landlord-intro-grid,.landlord-media-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:clamp(1.2rem,4vw,2.4rem);align-items:start}
.landlord-summary-card{background:var(--deep);color:#fff;border-radius:14px;padding:1.15rem;box-shadow:0 16px 34px rgba(42,34,48,.14)}
.landlord-summary-card .eyebrow{color:var(--turquoise)}
.landlord-summary-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}
.landlord-summary-card li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:.7rem;align-items:start}
.landlord-summary-card li::before{content:"";width:26px;height:26px;border-radius:50%;background:var(--magenta);box-shadow:8px 8px 0 rgba(91,201,198,.35)}
.landlord-summary-card b,.landlord-summary-card span{grid-column:2}
.landlord-summary-card b{display:block;color:#fff;font-family:Raleway,Arial,sans-serif;font-weight:900}
.landlord-summary-card span{display:block;color:rgba(255,255,255,.86);line-height:1.42;font-size:.94rem}
.landlord-stat-band .stats{grid-template-columns:repeat(3,1fr)}
.landlord-benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.landlord-benefit-grid article{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:12px;padding:1rem;box-shadow:0 9px 0 rgba(91,201,198,.14)}
.landlord-benefit-grid article:nth-child(2n){border-top-color:var(--magenta)}
.landlord-benefit-grid article:nth-child(3n){border-top-color:var(--purple)}
.landlord-benefit-grid span{display:inline-flex;align-items:center;min-height:30px;border-radius:999px;background:rgba(91,201,198,.18);padding:.25rem .65rem;font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;color:var(--deep)}
.landlord-benefit-grid h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.18rem;line-height:1.08;color:var(--deep);margin:.85rem 0 .45rem}
.landlord-benefit-grid p{margin:0;line-height:1.45}
.landlord-responsibilities{background:rgba(244,244,216,.45)}
.landlord-responsibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.2rem 0}
.landlord-resp-card{background:#fff;border:1px solid var(--line);border-left:10px solid var(--green);border-radius:12px;padding:1.1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.landlord-resp-card--ac{border-left-color:var(--magenta)}
.landlord-resp-card h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;color:var(--deep);font-size:1.25rem;margin:0 0 .8rem}
.landlord-resp-card ul{margin:0;padding-left:1.1rem;display:grid;gap:.45rem;line-height:1.45}
.landlord-process-wrap{max-width:1120px}
.landlord-process{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin:1.2rem 0}
.landlord-process article{background:var(--deep);color:#fff;border-radius:14px;padding:1rem;box-shadow:0 10px 0 rgba(91,201,198,.18)}
.landlord-process article:nth-child(2){background:var(--purple)}
.landlord-process article:nth-child(3){background:var(--green)}
.landlord-process article:nth-child(4){background:var(--magenta)}
.landlord-process span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--deep);font-family:var(--display);font-size:1.7rem;margin-bottom:.85rem}
.landlord-process h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;color:#fff;font-size:1.06rem;line-height:1.1;margin:0 0 .45rem}
.landlord-process p{margin:0;color:rgba(255,255,255,.9);line-height:1.42;font-size:.94rem}
.landlord-faq-band{background:linear-gradient(135deg,rgba(91,201,198,.14),rgba(244,244,216,.65))}
.landlord-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.landlord-faq-grid details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;box-shadow:0 8px 0 rgba(91,201,198,.12)}
.landlord-faq-grid summary{cursor:pointer;font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);line-height:1.2}
.landlord-faq-grid p{margin:.75rem 0 0;line-height:1.48}
.landlord-cta h2{max-width:820px}
.real-team-band{background:linear-gradient(135deg,rgba(244,244,216,.7),rgba(91,201,198,.16))}
.real-team-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.86fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:center}
.team-photo-mosaic{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin:0;isolation:isolate}
.team-photo-mosaic::before{content:"";position:absolute;right:-1.1rem;bottom:-1rem;width:45%;height:34%;background:var(--turquoise);z-index:-1}
.team-photo-mosaic::after{content:"";position:absolute;left:-1.2rem;top:-1.1rem;width:104px;height:84px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.68;z-index:2}
.team-photo-mosaic img{display:block;width:100%;height:100%;min-height:190px;object-fit:cover;border:6px solid #fff;box-shadow:9px 9px 0 rgba(42,95,85,.14);background:#fff}
.team-photo-mosaic img.photo-crop-john{object-position:68% center}
.team-photo-mosaic img.photo-crop-erica{object-position:76% center}
.team-photo-mosaic img:nth-child(1){border-radius:160px 160px 16px 16px;transform:rotate(-1.2deg)}
.team-photo-mosaic img:nth-child(2){border-radius:18px 80px 18px 18px;margin-top:2rem;transform:rotate(1.4deg)}
.team-photo-mosaic img:nth-child(3){border-radius:18px 18px 18px 80px;transform:rotate(1deg)}
.team-photo-mosaic img:nth-child(4){border-radius:50%;aspect-ratio:1;min-height:0;transform:rotate(-1.5deg)}
.team-photo-mosaic--wide{grid-template-columns:1.15fr .85fr}
.team-photo-mosaic--wide img:nth-child(1){grid-row:span 2;min-height:390px;border-radius:24px 120px 24px 24px}
.team-photo-mosaic--wide img:nth-child(2),.team-photo-mosaic--wide img:nth-child(3){min-height:180px}
.team-photo-mosaic--wide img:nth-child(4){display:none}
.team-photo-note{display:inline-block;margin-top:1rem;padding:.65rem .8rem;border-radius:999px;background:var(--deep);color:#fff;font-family:Raleway,Arial,sans-serif;font-weight:900;font-size:.86rem}
.team-photo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:1.2rem}
.team-photo-strip img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:6px solid #fff;box-shadow:8px 8px 0 rgba(91,201,198,.18)}
.team-photo-strip img:nth-child(1){border-radius:140px 140px 14px 14px}
.team-photo-strip img:nth-child(2){border-radius:18px 80px 18px 18px}
.team-photo-strip img:nth-child(3){border-radius:50%;aspect-ratio:1;align-self:center}
.team-callout{background:var(--deep);color:#fff;border-radius:14px;padding:1.2rem;box-shadow:0 16px 34px rgba(42,34,48,.14)}
.team-callout .eyebrow{color:var(--turquoise)}
.team-callout h2{color:#fff}
.team-callout p{color:rgba(255,255,255,.9)}
.commission-hero{overflow:hidden}
.commission-hero-grid,.commission-intro-grid,.commission-proof-grid,.commission-measure-grid,.commission-partner-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:start}
.commission-hero-grid{align-items:center}
.commission-hero .report-actions{margin-top:1.1rem}
.commission-hero-proof{position:relative;background:#fff;color:var(--deep);border-radius:18px;padding:clamp(1.1rem,3vw,1.6rem);box-shadow:18px 18px 0 rgba(91,201,198,.34);overflow:hidden}
.commission-hero-proof::before{content:"";position:absolute;right:-2.5rem;top:-2.5rem;width:9rem;height:9rem;border-radius:50%;background:rgba(216,78,163,.18)}
.commission-hero-proof span{position:relative;display:block;font-family:var(--display);font-size:clamp(5rem,10vw,7.4rem);line-height:.8;color:var(--magenta)}
.commission-hero-proof strong{position:relative;display:block;font-family:Raleway,Arial,sans-serif;font-weight:900;font-size:1.2rem;line-height:1.18;margin:.35rem 0 .7rem}
.commission-hero-proof p{position:relative;margin:0;color:var(--copy);line-height:1.48}
.commission-teaser-band,.commission-intro-band{background:linear-gradient(135deg,rgba(244,244,216,.72),rgba(91,201,198,.16))}
.commission-teaser{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:center}
.commission-stat-band .stats{grid-template-columns:repeat(3,1fr)}
.commission-proof-card{background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:14px;padding:1.15rem;box-shadow:0 12px 28px rgba(42,34,48,.08)}
.commission-proof-card h2{font-size:clamp(1.75rem,3vw,2.5rem);line-height:.96}
.commission-proof-card--deep{background:var(--deep);color:#fff;border-top-color:var(--magenta)}
.commission-proof-card--deep .eyebrow{color:var(--turquoise)}
.commission-proof-card--deep h2{color:#fff}
.commission-proof-card--deep p{color:rgba(255,255,255,.9)}
.commission-value-band{background:rgba(244,244,216,.45)}
.commission-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}
.commission-value-grid article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;box-shadow:0 8px 0 rgba(91,201,198,.12)}
.commission-value-grid span{display:inline-flex;align-items:center;min-height:30px;border-radius:999px;background:var(--deep);color:#fff;padding:.25rem .65rem;font-family:Raleway,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}
.commission-value-grid article:nth-child(2n) span{background:var(--magenta)}
.commission-value-grid article:nth-child(3n) span{background:var(--green)}
.commission-value-grid p{margin:.75rem 0 0;font-weight:800;line-height:1.42;color:var(--deep)}
.commission-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.commission-service-grid article{background:#fff;border:1px solid var(--line);border-left:8px solid var(--turquoise);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.commission-service-grid article:nth-child(3n+2){border-left-color:var(--magenta)}
.commission-service-grid article:nth-child(3n){border-left-color:var(--green)}
.commission-service-grid h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.12rem;line-height:1.1;color:var(--deep);margin:0 0 .55rem}
.commission-service-grid p{margin:0;line-height:1.45}
.commission-partners-band{background:linear-gradient(135deg,var(--deep),#263d37);color:#fff}
.commission-partners-band .eyebrow{color:var(--turquoise)}
.commission-partners-band h2{color:#fff}
.commission-partners-band p{color:rgba(255,255,255,.9)}
.commission-measure-list{display:grid;gap:.8rem}
.commission-measure-list article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:.8rem;align-items:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;box-shadow:0 8px 0 rgba(91,201,198,.14)}
.commission-measure-list span{display:grid;grid-row:1 / span 2;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--magenta);color:#fff;font-family:var(--display);font-size:1.65rem}
.commission-measure-list h3,.commission-measure-list p{grid-column:2}
.commission-measure-list h3{margin:0 0 .25rem;font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.04rem;line-height:1.1;color:var(--deep)}
.commission-measure-list p{margin:0;line-height:1.45;font-size:.94rem}
.commission-design-band{background:rgba(244,244,216,.55)}
.commission-design-band .impact-map-grid{grid-template-columns:repeat(5,1fr)}
.commission-design-band .impact-map-grid span{border-radius:14px;justify-content:center;text-align:center}
.commission-growth .photo-frame img{object-fit:contain;background:#fff}
.commission-cta h2{max-width:850px}
.training-hero{overflow:hidden}
.training-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:center}
.training-hero .report-actions{margin-top:1.1rem}
.training-hero-photo{position:relative;margin:0;background:#fff;border-radius:24px 130px 24px 24px;padding:.6rem;box-shadow:18px 18px 0 rgba(91,201,198,.36);transform:rotate(1deg)}
.training-hero-photo::before{content:"";position:absolute;left:-1.15rem;top:-1.15rem;width:104px;height:86px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.72;z-index:2}
.training-hero-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px 118px 18px 18px}
.training-hero-photo--logo{background:#fff;border-radius:24px 118px 24px 24px}
.training-hero-photo--logo img{aspect-ratio:1;object-fit:contain;padding:clamp(.75rem,3vw,1.6rem);background:#fff}
.training-hero-photo figcaption{margin:.55rem .15rem .05rem;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900;line-height:1.25;font-size:.88rem}
.training-intro-band,.training-photo-band,.training-specialist-band{background:linear-gradient(135deg,rgba(244,244,216,.72),rgba(91,201,198,.14))}
.training-intro-grid,.training-detail-grid,.training-bespoke-grid,.training-why-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:clamp(1.2rem,4vw,2.4rem);align-items:start}
.training-audience-card,.training-format-card{background:var(--deep);color:#fff;border-radius:14px;padding:1.15rem;box-shadow:0 16px 34px rgba(42,34,48,.14)}
.training-audience-card .eyebrow{color:var(--turquoise)}
.training-audience-card ul,.training-format-card ul{list-style:none;margin:.8rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.training-audience-card li,.training-format-card li{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:.55rem .75rem;font-weight:900;line-height:1.2}
.training-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.training-course-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.training-course-card:nth-child(2n){border-top-color:var(--magenta)}
.training-course-card:nth-child(3n){border-top-color:var(--turquoise)}
.training-course-card span{display:inline-grid;place-items:center;min-width:50px;height:42px;border-radius:999px;background:var(--deep);color:#fff;font-family:var(--display);font-size:1.2rem;line-height:.9;margin-bottom:.85rem;padding:0 .75rem}
.training-course-card h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.18rem;line-height:1.1;color:var(--deep);margin:0 0 .5rem}
.training-course-card p{margin:0 0 .8rem;line-height:1.45}
.training-course-card a{font-weight:900;color:var(--purple)}
.training-detail-band{background:rgba(244,244,216,.42)}
.training-detail-list{background:#fff;border:1px solid var(--line);border-left:8px solid var(--magenta);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.training-detail-list h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.08rem;line-height:1.1;color:var(--deep);margin:0 0 .6rem}
.training-detail-list h3+ul{margin-top:0}
.training-detail-list ul{display:grid;gap:.42rem;margin:.4rem 0 1rem;padding-left:1.1rem;line-height:1.42}
.training-detail-list ul:last-child{margin-bottom:0}
.training-specialist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.training-specialist-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem;box-shadow:0 12px 28px rgba(42,34,48,.08)}
.training-specialist-grid figure{position:relative;margin:0 0 1rem}
.training-specialist-grid figure::after{content:"";position:absolute;right:-.5rem;bottom:-.5rem;width:42%;height:34%;background:var(--turquoise);z-index:0}
.training-specialist-grid img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:6px solid #fff;border-radius:12px 80px 12px 12px;box-shadow:8px 8px 0 rgba(42,95,85,.12);background:#fff}
.training-specialist-grid article:nth-child(2) img{border-radius:90px 90px 14px 14px}
.training-specialist-grid article:nth-child(3) img{border-radius:14px 14px 90px 14px}
.training-specialist-grid h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.22rem;line-height:1.1;color:var(--deep);margin:0 0 .55rem}
.training-specialist-grid p{margin:0 0 .75rem;line-height:1.45}
.training-specialist-grid ul{margin:0;padding-left:1.05rem;display:grid;gap:.35rem;line-height:1.38}
.training-warning{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.85rem;align-items:center;margin-top:1rem;background:var(--purple);color:#fff;border-radius:14px;padding:1rem;box-shadow:10px 10px 0 rgba(91,201,198,.22)}
.training-warning strong{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--turquoise)}
.training-warning span{line-height:1.45}
.training-format-card{background:var(--magenta)}
.training-why-band{background:var(--deep);color:#fff}
.training-why-band .eyebrow{color:var(--turquoise)}
.training-why-band h2{color:#fff}
.training-why-band p{color:rgba(255,255,255,.9)}
.training-why-band .commission-measure-list article{background:#fff}
.training-cta h2{max-width:850px}
.careers-hero{overflow:hidden}
.careers-hero-grid,.careers-intro-grid,.careers-growth-grid,.careers-learning-grid,.careers-wellbeing-grid,.careers-inclusive-grid,.careers-feel-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:center}
.careers-hero .report-actions{margin-top:1.1rem}
.careers-hero-photo{position:relative;margin:0;background:#fff;border-radius:28px 120px 28px 28px;padding:.6rem;box-shadow:18px 18px 0 rgba(91,201,198,.36);transform:rotate(1deg)}
.careers-hero-photo::before{content:"";position:absolute;left:-1rem;top:-1rem;width:104px;height:86px;background-image:radial-gradient(var(--magenta) 30%,transparent 32%);background-size:18px 18px;opacity:.72;z-index:2}
.careers-hero-photo img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:22px 104px 22px 22px}
.careers-hero-photo figcaption{margin:.55rem .15rem .05rem;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900;line-height:1.25;font-size:.88rem}
.careers-intro-band,.careers-learning-band{background:linear-gradient(135deg,rgba(244,244,216,.72),rgba(91,201,198,.14))}
.careers-values-card,.careers-award-card{background:var(--deep);color:#fff;border-radius:14px;padding:1.15rem;box-shadow:0 16px 34px rgba(42,34,48,.14)}
.careers-values-card .eyebrow,.careers-wellbeing-band .eyebrow{color:var(--turquoise)}
.careers-values-card ul{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.55rem}
.careers-values-card li{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:.62rem .82rem;font-weight:900;line-height:1.2}
.careers-value-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.careers-value-grid article{background:#fff;border:1px solid var(--line);border-top:8px solid var(--deep);border-radius:12px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.careers-value-grid article:nth-child(2){border-top-color:var(--magenta)}
.careers-value-grid article:nth-child(3){border-top-color:var(--green)}
.careers-value-grid article:nth-child(4){border-top-color:var(--turquoise)}
.careers-value-grid article:nth-child(5){border-top-color:var(--purple)}
.careers-value-grid span{display:block;font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);line-height:1.1;margin-bottom:.55rem}
.careers-value-grid p{font-size:.92rem;line-height:1.45;margin:0}
.careers-growth-band,.careers-wellbeing-band{background:var(--deep);color:#fff}
.careers-growth-band h2,.careers-wellbeing-band h2{color:#fff}
.careers-growth-band p,.careers-wellbeing-band p{color:rgba(255,255,255,.9)}
.careers-pathway{display:grid;gap:.85rem}
.careers-pathway article{position:relative;background:#fff;color:var(--deep);border:1px solid var(--line);border-left:8px solid var(--magenta);border-radius:14px;padding:1rem;box-shadow:10px 10px 0 rgba(91,201,198,.16)}
.careers-pathway article:nth-child(2){border-left-color:var(--turquoise)}
.careers-pathway article:nth-child(3){border-left-color:var(--green)}
.careers-pathway span{display:block;font-family:var(--display);font-size:1.8rem;line-height:.9;color:var(--purple);margin-bottom:.35rem}
.careers-pathway strong{display:block;font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);margin-bottom:.35rem}
.careers-pathway p{color:var(--copy);margin:0;line-height:1.45}
.careers-photo-stack{position:relative;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.careers-photo-stack::after{content:"";position:absolute;right:-1rem;bottom:-1rem;width:38%;height:32%;background:var(--turquoise);z-index:0}
.careers-photo-stack img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border:6px solid #fff;box-shadow:8px 8px 0 rgba(42,95,85,.12);background:#fff}
.careers-photo-stack img:first-child{border-radius:18px 92px 18px 18px;transform:rotate(-1.2deg)}
.careers-photo-stack img:last-child{border-radius:92px 18px 18px 18px;margin-top:2rem;transform:rotate(1.2deg)}
.careers-chip-list{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}
.careers-chip-list span{display:inline-flex;align-items:center;border-radius:999px;background:#fff;border:1px solid var(--line);padding:.55rem .8rem;font-weight:900;color:var(--deep);box-shadow:0 6px 0 rgba(91,201,198,.12)}
.careers-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.careers-benefit-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem;box-shadow:0 12px 28px rgba(42,34,48,.08)}
.career-logo{display:flex;align-items:center;justify-content:center;min-height:112px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.85rem;margin-bottom:.9rem}
.career-logo img{display:block;max-width:100%;max-height:78px;width:auto;height:auto;object-fit:contain}
.career-logo--company-shop{background:#1f6b45;border-color:#1f6b45}
.career-logo--company-shop img{max-height:64px}
.career-logo--wide img{max-height:90px}
.careers-benefit-grid h3,.careers-award-card h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.12rem;line-height:1.1;color:var(--deep);margin:0 0 .55rem}
.careers-benefit-grid p{margin:0;line-height:1.45}
.careers-award-card{background:#fff;color:var(--deep);box-shadow:18px 18px 0 rgba(216,78,163,.25)}
.careers-award-card span{display:block;font-family:var(--display);font-size:4.5rem;line-height:.8;color:var(--magenta);margin-bottom:.65rem}
.careers-award-card p{color:var(--copy);margin:0;line-height:1.45}
.careers-inclusive-band{background:rgba(244,244,216,.5)}
.careers-inclusive-logos{background:#fff;border:1px solid var(--line);border-top:8px solid var(--green);border-radius:14px;padding:1rem;box-shadow:0 12px 28px rgba(42,34,48,.08)}
.careers-inclusive-logos .career-logo{margin-bottom:.85rem}
.careers-inclusive-logos p{margin:.2rem 0 0;line-height:1.45}
.careers-vacancies h2{max-width:780px}
.careers-current-roles{background:linear-gradient(135deg,rgba(91,201,198,.12),rgba(244,244,216,.72))}
.careers-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.careers-role-card{position:relative;background:#fff;border:1px solid var(--line);border-top:8px solid var(--magenta);border-radius:14px;padding:1.05rem;box-shadow:0 14px 30px rgba(42,34,48,.08);overflow:hidden}
.careers-role-card:nth-child(2){border-top-color:var(--turquoise)}
.careers-role-card:nth-child(3){border-top-color:var(--green)}
.careers-role-card:nth-child(4){border-top-color:var(--purple)}
.careers-role-card::after{content:"";position:absolute;right:-38px;top:-38px;width:118px;height:118px;border-radius:50%;background:rgba(91,201,198,.16);z-index:0}
.careers-role-card>*{position:relative;z-index:1}
.careers-role-card h3{font-family:var(--display);font-size:clamp(2rem,4vw,3.1rem);line-height:.88;color:var(--deep);margin:.15rem 0 .8rem}
.careers-role-card dl{display:grid;gap:.55rem;margin:0 0 .85rem}
.careers-role-card dl div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:.6rem;align-items:start;border-bottom:1px solid rgba(42,95,85,.12);padding-bottom:.5rem}
.careers-role-card dt{font-family:Raleway,Arial,sans-serif;font-weight:900;color:var(--deep);font-size:.82rem;text-transform:uppercase}
.careers-role-card dd{margin:0;color:var(--copy);line-height:1.35}
.careers-role-card p:not(.eyebrow){margin:.75rem 0 1rem;line-height:1.5}
.careers-role-card .more{color:var(--deep)}
.volunteer-hero{overflow:hidden}
.volunteer-hero-grid,.volunteer-intro-grid,.volunteer-opportunities-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);gap:clamp(1.2rem,4vw,2.5rem);align-items:center}
.volunteer-hero-photo{position:relative;margin:0;background:#fff;border-radius:120px 28px 28px 28px;padding:.6rem;box-shadow:18px 18px 0 rgba(216,78,163,.28);transform:rotate(-1deg)}
.volunteer-hero-photo::before{content:"";position:absolute;right:-1rem;top:-1rem;width:104px;height:86px;background-image:radial-gradient(var(--turquoise) 30%,transparent 32%);background-size:18px 18px;opacity:.72;z-index:2}
.volunteer-hero-photo img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:104px 22px 22px 22px}
.volunteer-hero-photo figcaption{margin:.55rem .15rem .05rem;color:var(--deep);font-family:Raleway,Arial,sans-serif;font-weight:900;line-height:1.25;font-size:.88rem}
.volunteer-intro-band,.volunteer-opportunities-band{background:linear-gradient(135deg,rgba(244,244,216,.72),rgba(91,201,198,.14))}
.volunteer-values-card{background:var(--deep);color:#fff;border-radius:14px;padding:1.15rem;box-shadow:0 16px 34px rgba(42,34,48,.14)}
.volunteer-values-card .eyebrow{color:var(--turquoise)}
.volunteer-values-card ul{list-style:none;margin:.8rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.volunteer-values-card li{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:.62rem .82rem;font-weight:900;line-height:1.2;text-align:center}
.volunteer-reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.volunteer-reward-grid article{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem;box-shadow:0 10px 24px rgba(42,34,48,.06)}
.volunteer-reward-grid span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--magenta);color:#fff;font-family:var(--display);font-size:1.65rem;margin-bottom:.75rem}
.volunteer-reward-grid article:nth-child(2n) span{background:var(--turquoise);color:var(--deep)}
.volunteer-reward-grid article:nth-child(3n) span{background:var(--green)}
.volunteer-reward-grid h3{font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.08rem;line-height:1.1;color:var(--deep);margin:0 0 .45rem}
.volunteer-reward-grid p{margin:0;line-height:1.45}
.volunteer-process{display:grid;gap:.8rem}
.volunteer-process article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:.8rem;align-items:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;box-shadow:0 8px 0 rgba(91,201,198,.14)}
.volunteer-process span{display:grid;grid-row:1 / span 2;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--purple);color:#fff;font-family:var(--display);font-size:1.65rem}
.volunteer-process h3,.volunteer-process p{grid-column:2}
.volunteer-process h3{margin:0 0 .25rem;font-family:Raleway,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:1.04rem;line-height:1.1;color:var(--deep)}
.volunteer-process p{margin:0;line-height:1.45;font-size:.94rem}
.volunteer-cta h2{max-width:760px}

@media (max-width:860px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .cardgrid{grid-template-columns:1fr 1fr}
  .split{grid-template-columns:1fr}
  .access-grid{grid-template-columns:1fr}
  .stat-band .stats{grid-template-columns:1fr 1fr}
  .smallprint-grid{grid-template-columns:1fr}
  .media-pair{grid-template-columns:1fr}
  .quality-grid{grid-template-columns:1fr}
  .quality-badges{grid-template-columns:1fr 1fr}
  .values-intro{grid-template-columns:1fr}
  .values-grid{grid-template-columns:repeat(2,1fr)}
  .values-principles{grid-template-columns:1fr 1fr}
  .story-opener-grid,.story-focus{grid-template-columns:1fr}
  .story-chapters{grid-template-columns:1fr 1fr}
  .story-archive-grid{grid-template-columns:1fr}
  .case-intro-grid,.case-lead-card{grid-template-columns:1fr}
  .case-story-grid{grid-template-columns:1fr}
  .report-feature,.stability-grid,.stability-work-grid,.report-impact-map,.annual-report-feature{grid-template-columns:1fr}
  .annual-archive-grid{grid-template-columns:1fr 1fr}
  .news-feature-card,.news-article-layout,.news-story-grid,.event-feature-card,.event-article-layout,.event-history-grid,.event-speaker-grid,.renters-feature,.renters-split,.oc-intro-grid,.oc-planner-layout{grid-template-columns:1fr}
  .oc-person-grid,.oc-breakdown-grid{grid-template-columns:1fr}
  .oc-progress ol{grid-template-columns:1fr 1fr}
  .oc-relationship-row{grid-template-columns:1fr}
  .oc-live-summary{grid-template-columns:1fr}
  .event-detail-grid{grid-template-columns:1fr 1fr}
  .event-mini-grid,.event-highlight-grid{grid-template-columns:1fr 1fr}
  .event-gallery{grid-template-columns:1fr 1fr}
  .renters-change-grid,.renters-action-list{grid-template-columns:1fr 1fr}
  .landlord-hero-grid,.landlord-intro-grid,.landlord-media-grid{grid-template-columns:1fr}
  .landlord-benefit-grid{grid-template-columns:1fr 1fr}
  .landlord-responsibility-grid{grid-template-columns:1fr}
  .landlord-process{grid-template-columns:1fr 1fr}
  .landlord-faq-grid{grid-template-columns:1fr}
  .real-team-grid{grid-template-columns:1fr}
  .commission-hero-grid,.commission-intro-grid,.commission-proof-grid,.commission-measure-grid,.commission-partner-grid,.commission-teaser,.training-hero-grid,.training-intro-grid,.training-detail-grid,.training-bespoke-grid,.training-why-grid,.careers-hero-grid,.careers-intro-grid,.careers-growth-grid,.careers-learning-grid,.careers-wellbeing-grid,.careers-inclusive-grid,.careers-feel-grid,.volunteer-hero-grid,.volunteer-intro-grid,.volunteer-opportunities-grid{grid-template-columns:1fr}
  .commission-value-grid,.commission-service-grid{grid-template-columns:1fr 1fr}
  .training-course-grid,.training-specialist-grid,.careers-value-grid,.careers-benefit-grid,.careers-role-grid,.volunteer-reward-grid{grid-template-columns:1fr 1fr}
  .commission-design-band .impact-map-grid{grid-template-columns:1fr 1fr}
  .team-photo-strip{grid-template-columns:1fr 1fr 1fr}
  .news-photo-grid{grid-template-columns:1fr 1fr}
  .news-awards-panel{position:static}
  .study-sites{grid-template-columns:1fr}
  .study-sites article.is-ac{transform:none}
  .impact-map-grid{grid-template-columns:1fr 1fr}
  .story-timeline{gap:1rem;padding-left:0}
  .story-timeline::before{left:28px;transform:none}
  .story-timeline article{grid-template-columns:64px minmax(0,1fr);gap:1rem;align-items:start}
  .story-timeline article::before{left:18px;top:36px;transform:none}
  .story-timeline article::after{left:28px!important;top:47px;width:44px}
  .story-timeline time{grid-column:1;width:58px;min-height:58px;font-size:1.25rem;border-radius:999px}
  .timeline-panel,.story-timeline article:nth-child(even) .timeline-panel{grid-column:2}
  .referral-layout{grid-template-columns:1fr}
  .referral-stage-shell{grid-template-columns:1fr}
  .referral-gate-grid,.referral-tool-switch{grid-template-columns:1fr}
  .referral-tool-switch__actions{justify-content:flex-start}
  .referral-progress{position:static}
  .referral-progress ol{grid-template-columns:1fr 1fr}
  .referral-progress button{grid-template-columns:28px minmax(0,1fr);font-size:.9rem}
  .referral-progress button span{width:28px;height:28px}
  .debt-tool-intro{grid-template-columns:1fr}
  .debt-tool-shell{grid-template-columns:1fr}
  .debt-tool-progress{position:static}
  .debt-tool-progress ol{grid-template-columns:1fr 1fr}
  .debt-tool-progress button{grid-template-columns:28px minmax(0,1fr);font-size:.9rem}
  .debt-tool-progress button span{width:28px;height:28px}
  .debt-stage-preview{display:none}
  .debt-review-grid{grid-template-columns:1fr}
  .sfs-entry{grid-template-columns:1fr}
  .sfs-entry__controls{grid-template-columns:1fr}
  .sfs-entry__controls span{text-align:left}
  .debt-option-guide>div{grid-template-columns:1fr}
}
@media (max-width:540px){
  .cardgrid{grid-template-columns:1fr}
  .coverlist ul{grid-template-columns:1fr}
  .deflist{grid-template-columns:1fr}
  .quality-badges{grid-template-columns:1fr}
  .values-poster-feature{grid-template-columns:1fr 1fr;gap:.6rem}
  .values-grid{grid-template-columns:1fr}
  .values-principles{grid-template-columns:1fr}
  .story-chapters,.story-service-grid{grid-template-columns:1fr}
  .case-promise li{grid-template-columns:34px minmax(0,1fr)}
  .case-promise li::before{width:30px;height:30px}
  .case-lead-card h2{font-size:2rem}
  .case-story{padding:.95rem}
  .report-feature h2{font-size:2.8rem}
  .report-cover-card{transform:none}
  .news-award-banner{max-width:520px}
  .landlord-hero-card{transform:none}
  .landlord-benefit-grid,.landlord-process,.landlord-stat-band .stats{grid-template-columns:1fr}
  .team-photo-mosaic,.team-photo-mosaic--wide{grid-template-columns:1fr 1fr}
  .team-photo-mosaic--wide img:nth-child(1){grid-row:auto;min-height:190px}
  .team-photo-strip{grid-template-columns:1fr}
  .news-photo-grid{grid-template-columns:1fr}
  .event-detail-grid,.event-mini-grid,.event-highlight-grid,.event-photo-stack,.event-gallery,.event-memory-stack{grid-template-columns:1fr}
  .renters-change-grid,.renters-action-list,.renters-house-graphic ul{grid-template-columns:1fr}
  .renters-feature h2{font-size:2.8rem}
  .event-date-card{min-height:130px;border-radius:70px 70px 16px 16px}
  .event-gallery img:nth-child(3){border-radius:18px 80px 18px 18px;aspect-ratio:auto;min-height:220px}
  .commission-value-grid,.commission-service-grid,.commission-stat-band .stats,.commission-design-band .impact-map-grid,.training-course-grid,.training-specialist-grid,.training-audience-card ul,.training-format-card ul,.careers-value-grid,.careers-benefit-grid,.careers-role-grid,.volunteer-reward-grid,.volunteer-values-card ul{grid-template-columns:1fr}
  .training-hero-photo,.careers-hero-photo,.volunteer-hero-photo{transform:none}
  .training-warning{grid-template-columns:1fr}
  .impact-map-grid{grid-template-columns:1fr}
  .oc-progress ol{grid-template-columns:1fr}
  .oc-progress button{min-height:50px}
  .oc-stage{padding:.85rem}
  .oc-canvas{min-height:360px}
  .oc-room-editor{position:static}
  .oc-evidence-list{columns:1}
  .oc-dim-pair{grid-template-columns:1fr}
  .annual-report-row{grid-template-columns:1fr}
  .annual-report-row .btn{justify-self:start}
  .annual-archive-grid{grid-template-columns:1fr}
  .annual-report-stat{grid-template-columns:78px minmax(0,1fr)}
  .annual-report-stat strong{font-size:1.8rem}
  .advice-pillars article{grid-template-columns:44px minmax(0,1fr)}
  .advice-pillars span{width:40px;height:40px;font-size:1.55rem}
  .story-stamp{min-height:240px}
  .story-timeline article{grid-template-columns:54px minmax(0,1fr);gap:.8rem}
  .story-timeline time{width:52px;min-height:52px;font-size:1.05rem}
  .story-timeline article::before{left:13px}
  .story-timeline article::after{left:24px!important;width:32px}
  .timeline-artifact,.timeline-artifact--office{grid-template-columns:1fr}
  .timeline-artifact img,.timeline-artifact--office img{max-height:180px}
  .referral-stage-shell{grid-template-columns:1fr}
  .referral-gate-grid,.referral-gate-card,.referral-tool-switch{grid-template-columns:1fr}
  .referral-gate-icon{width:64px;height:64px;font-size:1.35rem}
  .referral-tool-switch__actions .btn{width:100%;min-width:0}
  .referral-progress{position:static}
  .referral-progress ol{grid-template-columns:1fr 1fr}
  .referral-progress button{grid-template-columns:28px minmax(0,1fr);font-size:.9rem}
  .referral-progress button span{width:28px;height:28px}
  .referral-stage-actions .btn{width:100%;min-width:0}
  .referral-stage-actions [data-step-next],.referral-stage-actions [data-step-submit]{margin-left:0}
  .form-grid{grid-template-columns:1fr}
  .checkbox-group ul,.checkbox-group>div[id^="id_"]{grid-template-columns:1fr}
  .route-grid,.checkbox-card-grid{grid-template-columns:1fr}
  .debt-tool-actions .btn{width:100%;min-width:0}
  .debt-tool-actions [data-debt-next],.debt-tool-actions [data-debt-submit]{margin-left:0}
  .partner-logo,.partner-logo--large{width:100%;max-width:none}
  .fascia .tagline{display:none}
  .fascia-inner{justify-content:center}
}
@media (max-width:860px){
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  body{font-size:16px}
  main::before{left:-8rem;top:18rem;width:15rem;opacity:.055}
  main::after{right:-7rem;top:52rem;width:13rem;opacity:.045}
  .block:not(.regulatory-note)::before{opacity:.035;width:7rem}
  .nav-toggle{display:block}
  .header-actions{display:none}
  .site-nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:.2rem;margin:0;padding:.6rem clamp(1rem,3vw,2.5rem) 1rem;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(42,34,48,.12);display:none}
  .site-header[data-nav-open] .site-nav{display:flex}
  .site-nav a{padding:.6rem 0;font-size:1.05rem;border-bottom:1px solid var(--line)}
  .site-nav a:last-child{border-bottom:0}
  .site-nav a.nav-mobile-only{display:block;color:var(--magenta);font-weight:800}
  .footer-grid{grid-template-columns:1fr}
  .site-footer h4{min-height:0}
}
