/* P4YE full-flow preview. Shared by every page.
   Brand accent: supplied logo green. No separate adult/youth visual themes. */
:root{
 --green:#97b21d;--green-hover:#abc832;--forest:#52651c;--ink:#111a12;
 --black:#07100d;--mint:#f4f6ed;--mist:#f5f7f5;--muted:#576057;
 --line:#e2e6dd;--wrap:1240px;--radius:8px;
}
html{scroll-behavior:smooth;scroll-padding-top:100px;text-size-adjust:100%}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.65;background:#fff;color:var(--ink);overflow-wrap:break-word}
[hidden]{display:none!important}
h1,h2,h3{overflow-wrap:normal}
a,button,summary{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #758917;outline-offset:5px}
:where(.flow-hero,.hero,.flow-cta,.site-header,.site-footer) a:focus-visible{outline-color:#c5da5d}
.wrap,.chrome-container{width:calc(100% - 64px);max-width:1240px;margin-inline:auto}
.button{border-radius:5px;min-height:46px;font-size:13px;box-shadow:none;letter-spacing:0}
.button-green{color:#142008;background:var(--green)}
.button-green:hover{background:var(--green-hover)}
.eyebrow{font-size:11px;color:var(--forest);font-weight:700;letter-spacing:.12em;line-height:1.5;text-transform:uppercase}
.text-link{font-size:13px;color:var(--forest);min-height:44px;line-height:1.45;gap:9px;text-underline-offset:4px}
.text-link .icon{width:18px;height:18px}
.site-header{background:var(--black);backdrop-filter:none}
.site-header .header-inner{height:78px;gap:26px}
.site-header .primary-nav{gap:22px}
.site-header .primary-nav a{font-size:12px;position:relative}
.site-header .header-referral{font-size:11px;color:#142008;min-height:44px}
.site-header .menu-toggle{border-color:#ffffff55}
.site-footer{background:var(--black);padding-top:38px}
.site-footer .footer-grid{gap:42px}
.site-footer .footer-brand .brand{margin-bottom:14px}
.site-footer .preview-note{font-size:10px;max-width:1060px;color:#b7c0b7}
.site-footer .footer-brand .company{color:#b7c0b7;margin-top:12px}
.site-footer .footer-bottom{font-size:11px;color:#b7c0b7}
.site-footer .footer-group a{font-size:12px}
.brand .logo-window{width:162px;height:auto;margin:0}
.brand .logo.logo-supplied{margin:0!important;mix-blend-mode:screen}
.dialog-head{background:var(--mint)}
.mobile-menu{border-radius:8px}
.mobile-menu nav a{min-height:48px}
.nojs{background:var(--mint);color:var(--ink)}
/* Selected hero A: one continuous photo, dark fade and a VERY light bottom tint. */
.page-index .hero{isolation:isolate}
.page-index .hero>.wrap{position:relative;z-index:1}
.flow-home-green-wash{pointer-events:none;position:absolute;z-index:0;inset:auto 0 0;height:44%;background:linear-gradient(to top,rgba(151,178,29,.135) 0%,rgba(151,178,29,.08) 43%,rgba(151,178,29,.02) 74%,transparent 100%)}
.hero-option-a .hero-pathways-inner{border-top-color:#ffffff2b}
.hero-option-a .hero-route+.hero-route{border-left-color:#ffffff24}
.hero-option-a .hero-route-title{font-size:25px}
.hero-option-a .hero-route-description{color:#c2ccbd}
.hero-option-a .hero-caption{color:#a8b39f}
.hero-option-a .route-audience{color:#d0d8c8}
/* Preserve the original six-tile homepage Youth Voice layout and wording. */
.page-index .voice-category{min-height:88px;border-radius:9px}
.page-index .voice-categories{grid-template-columns:repeat(3,minmax(0,1fr))}
.page-index .voice-category span{font-family:inherit}
.page-index .voice-category .icon{color:var(--forest)}
.page-index .voice-visual img{height:184px}
.page-index .service-grid-canonical{grid-template-columns:repeat(5,minmax(0,1fr))}
.page-index .involved-card{background:#f1f4e9}
.page-index .involved-card:before{background:linear-gradient(90deg,#f1f4e9 6%,#f1f4e9f5 30%,#f1f4e985 57%,#f1f4e900)}
.page-index .service-card:hover,.page-index .voice-category:hover{background:var(--mint);border-color:#b5c58c}
/* Interior heroes share the same image/charcoal/olive composition. */
.flow-hero{position:relative;isolation:isolate;overflow:hidden;color:white;background:var(--black)}
.flow-hero-photo{position:absolute;inset:0 0 0 auto;width:65%;height:100%;object-fit:cover;z-index:-3}
.flow-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#07100d 0%,#07100dfa 29%,#07100de0 40%,#07100d70 56%,#07100d10 82%)}
.flow-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#07100df5 0%,#07100d38 52%,#07100d08 100%)}
.flow-hero-wash{position:absolute;pointer-events:none;z-index:0;inset:auto 0 0;height:44%;background:linear-gradient(0deg,rgba(151,178,29,.10),rgba(151,178,29,.045) 42%,transparent)}
.flow-hero>.wrap{position:relative;z-index:1}
.flow-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:13px 0 6px;font-size:11px;color:#c5cdbe;line-height:1.6;min-height:42px}
.flow-breadcrumbs a{padding:2px 0;text-underline-offset:3px}
.flow-breadcrumbs a:hover{color:#fff;text-decoration:underline}
.flow-breadcrumbs>span[aria-hidden]{opacity:.6}
.flow-hero-inner{min-height:305px;display:flex;align-items:center;padding:15px 0 32px}
.flow-hero-copy{width:58%;max-width:670px}
.flow-hero-copy>.eyebrow{color:var(--green);margin-bottom:13px}
.flow-hero-copy h1{font-size:clamp(37px,3.65vw,52px);line-height:1.055;letter-spacing:-.043em;font-weight:800}
.flow-hero-copy h1 span{display:block;color:var(--green);margin-top:3px}
.flow-hero-copy>p:not(.eyebrow){color:#d3dccd;font-size:16px;line-height:1.6;max-width:495px;margin-top:17px}
.flow-hero-action{display:inline-flex;align-items:center;gap:24px;font-size:13px;font-weight:700;margin-top:15px;min-height:44px;color:white}
.flow-hero-action .icon{color:var(--green);width:19px;height:19px}
.flow-hero-action:hover{color:var(--green)}
.flow-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:0 24px}
/* Prominent registration CTA used only by Youth Forum and Steering Group heroes. */
.flow-hero-registration{
 display:inline-flex;align-items:center;justify-content:space-between;
 min-height:54px;min-width:242px;max-width:100%;gap:18px;
 margin-top:20px;padding:9px 10px 9px 20px;
 border:1px solid #b7ca64;border-radius:10px;
 background:var(--green);color:#101d0c;
 box-shadow:0 6px 20px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.22);
 font-size:14px;font-weight:800;letter-spacing:-.01em;line-height:1.35;text-align:left;
 transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.flow-hero-registration>span{
 display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;
 border-radius:8px;background:#12210d;color:#fff;font-size:17px;font-weight:500;line-height:1;
 transition:background-color .18s ease,transform .18s ease;
}
.flow-hero-registration:hover{
 background:var(--green-hover);border-color:#c9da79;
 box-shadow:0 10px 25px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.26);
 transform:translateY(-1px);
}
.flow-hero-registration:hover>span{background:#07160a;transform:translate(1px,-1px)}
.flow-hero-registration:focus-visible{outline:3px solid #d8ec84;outline-offset:4px}
.flow-hero-registration:active{transform:translateY(0);box-shadow:0 3px 9px rgba(0,0,0,.14)}
@media(max-width:700px){
 .flow-hero-registration{min-width:0;min-height:52px;gap:13px;padding:8px 9px 8px 16px;font-size:13px}
 .flow-hero-registration>span{flex-basis:32px;width:32px;height:32px}
}

.flow-image-credit{position:absolute;bottom:10px;right:0;color:#b5beac;font-size:9px;line-height:1.4;letter-spacing:.02em}
.flow-hero-text:before{background:radial-gradient(ellipse at 88% 40%,rgba(82,101,28,.25),transparent 60%)}
.flow-hero-text .flow-hero-copy{width:82%;max-width:950px}
.flow-hero-text .flow-hero-inner{min-height:260px;padding-bottom:35px}
.flow-hero-text .flow-hero-copy>p:not(.eyebrow){max-width:660px}
/* Content uses a restrained rhythm, small corners and few competing actions. */
.flow-section{padding:43px 0}
.flow-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:25px}
.flow-section-head .eyebrow{margin-bottom:8px}
.flow-section-head h2{font-size:clamp(27px,2.6vw,35px);line-height:1.13;letter-spacing:-.035em}
.flow-section-head p:not(.eyebrow){max-width:760px;font-size:15px;line-height:1.65;margin-top:10px}
.flow-soft{background:#f5f7f2;border-top:1px solid #edf0e8;border-bottom:1px solid #edf0e8}
.flow-split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}
.flow-split>*{min-width:0}
.flow-align-center{align-items:center}
.flow-reading{font-size:15px;line-height:1.8;max-width:740px}
.flow-reading>p+p{margin-top:15px}
.flow-reading>.text-link{margin-top:10px;margin-right:12px}
.flow-prose{max-width:800px}
.flow-prose>h3{font-size:20px;margin:25px 0 10px}
.flow-prose>.text-link{display:flex;width:fit-content}
.flow-grid{display:grid;gap:19px;align-items:stretch}
.flow-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.flow-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.flow-grid>*{min-width:0}
.flow-tile{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;background:white;transition:border-color .15s,background-color .15s;position:relative;overflow:hidden}
.flow-tile:hover{border-color:#a7ba73;background:#fbfcf7}
.flow-tile-body{padding:22px;flex:1;display:flex;flex-direction:column;align-items:flex-start}
.flow-tile-body>.icon{width:25px;height:25px;color:var(--forest);margin-bottom:14px}
.flow-tile h3{font-size:20px;line-height:1.2;letter-spacing:-.025em}
.flow-tile p:not(.eyebrow){font-size:14px;line-height:1.6;margin:10px 0 16px}
.flow-tile-link{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:12px;font-weight:700;color:var(--forest);width:100%;margin-top:auto;min-height:28px}
.flow-tile-link .icon{width:18px;height:18px}
.flow-tile-image>img{width:100%;height:167px;object-fit:cover;object-position:50% 38%}
.flow-tile-image .flow-tile-body>.icon{display:none}
.flow-links{border-top:1px solid var(--line)}
.flow-link-row{display:flex;align-items:center;gap:17px;min-height:78px;padding:17px 1px;border-bottom:1px solid var(--line);background:none}
.flow-link-row>.icon:first-child{color:var(--forest);width:22px;height:22px}
.flow-link-row>span{flex:1;min-width:0}
.flow-link-row strong{display:block;font-size:16px;line-height:1.35;letter-spacing:-.015em}
.flow-link-row small{display:block;font-size:13px;color:var(--muted);line-height:1.5;margin-top:4px}
.flow-link-row>.icon:last-child{width:18px;height:18px;color:var(--forest)}
.flow-link-row:hover strong{color:var(--forest);text-decoration:underline;text-underline-offset:4px}
.flow-note{font-size:12px;line-height:1.6;color:#606958;padding:12px 0;max-width:900px}
.flow-note .text-link{font-size:12px}
.flow-section-head+.flow-note{padding-top:0;margin-top:-7px;margin-bottom:13px}
.flow-inline-photo{width:100%;aspect-ratio:1.75;object-fit:cover;border-radius:8px}
.flow-image-right>.flow-inline-photo{order:2}
.flow-image-right>.flow-reading{order:1}
.flow-additional-text{white-space:pre-line}
@media(max-width:700px){.flow-image-right>.flow-inline-photo,.flow-image-right>.flow-reading{order:initial}}
.flow-feature-list{border-top:1px solid var(--line)}
.flow-feature{display:flex;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}
.flow-feature>.icon{color:var(--forest);width:24px;height:24px;margin-top:3px}
.flow-feature h3{font-size:17px;line-height:1.35}
.flow-feature p{font-size:14px;line-height:1.6;margin-top:5px}
.flow-steps{list-style:none;margin:0;padding:0;display:flex;gap:34px;counter-reset:steps}
.flow-steps li{flex:1;min-width:0;position:relative;padding-top:17px;border-top:1px solid #c9d1bc}
.step-number{font-size:12px;font-weight:700;display:block;color:var(--forest);margin-bottom:11px;font-variant-numeric:tabular-nums}
.flow-steps h3{font-size:18px;line-height:1.25}
.flow-steps p{font-size:14px;line-height:1.65;margin-top:9px}
.flow-split .flow-steps{flex-direction:column;gap:0}
.flow-split .flow-steps li{display:grid;grid-template-columns:31px 1fr;gap:0 8px;padding:14px 0}
.flow-split .step-number{grid-row:1/3;padding-top:1px;margin:0}
.flow-split .flow-steps p{grid-column:2;margin-top:5px}
.flow-route-panel{padding:23px 23px 10px;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;background:white}
.flow-route-icon{color:var(--forest);margin-bottom:14px}
.flow-route-panel h3{font-size:24px;line-height:1.15;margin:8px 0 13px;max-width:270px}
.flow-route-panel>p:not(.eyebrow){font-size:14px;line-height:1.65;margin-bottom:16px}
.flow-route-actions{display:flex;flex-wrap:wrap;column-gap:15px;border-top:1px solid var(--line);padding-top:7px;margin-top:auto}
.flow-route-actions .text-link{font-size:12px}
/* Evidence belongs to its service page. Community listing links directly to its id. */
.flow-case-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white;display:flex;flex-direction:column}
.flow-case-card>img{height:171px;object-fit:cover;object-position:50% 40%;width:100%}
.flow-case-card>div{display:flex;flex-direction:column;padding:22px;flex:1}
.flow-case-card .eyebrow{font-size:9px;letter-spacing:.09em}
.flow-case-card h3{font-size:22px;line-height:1.2;margin:10px 0}
.flow-case-card p:not(.eyebrow){font-size:14px;line-height:1.7;margin-bottom:12px}
.flow-case-card .text-link{margin-top:auto;font-size:12px;justify-content:space-between}
.flow-case-card .text-link .icon{margin-left:12px}
.flow-case-detail{display:grid;grid-template-columns:.95fr 1.05fr;gap:37px;align-items:start;padding-top:8px;scroll-margin-top:102px}
.flow-case-detail+.flow-case-detail{border-top:1px solid var(--line);padding-top:34px;margin-top:32px}
.flow-case-detail figure{border-radius:8px;overflow:hidden;background:var(--black);margin:0}
.flow-case-detail figure img{width:100%;aspect-ratio:1.6;object-fit:cover}
.flow-case-detail figcaption{padding:10px 15px;font-size:10px;color:#cdd4c6;line-height:1.4}
.flow-case-detail h3{font-size:28px;line-height:1.14;margin:9px 0 12px}
.flow-case-detail p:not(.eyebrow){font-size:14px;line-height:1.65}
.flow-evidence-fields{margin:16px 0 8px}
.flow-evidence-fields>div{border-top:1px solid #d5dccb;padding:10px 0}
.flow-evidence-fields dt{font-weight:700;font-size:13px;color:var(--ink)}
.flow-evidence-fields dd{margin:3px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}
.flow-inline-links{display:flex;flex-wrap:wrap;gap:4px 23px}
.flow-filter{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.flow-filter button{padding:8px 16px;min-height:42px;border:1px solid var(--line);border-radius:5px;background:white;font-size:12px;font-weight:700;line-height:1.3}
.flow-filter button:hover{border-color:#aabd6c}
.flow-filter button[aria-pressed=true]{color:#fff;border-color:var(--ink);background:var(--ink)}
.flow-result-count{font-size:11px;color:var(--muted);margin-bottom:16px;min-height:18px}
.flow-activity{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white}
.flow-activity>img{width:100%;height:179px;object-fit:cover;object-position:50% 40%}
.flow-activity>div{padding:23px}
.flow-activity h3{font-size:22px;margin:8px 0}
.flow-activity p{font-size:14px;line-height:1.6}
.flow-activity details{border-top:1px solid var(--line);margin-top:15px}
.flow-activity summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;font-weight:700;min-height:46px;color:var(--forest);cursor:pointer}
.flow-activity summary .icon{width:16px;height:16px}
.flow-activity details[open] summary .icon{transform:rotate(45deg)}
/* No invented form fields: a genuine, explicit integration position. */
.flow-form-slot{border:1px solid #dce3cd;border-radius:8px;background:var(--mint);padding:26px}
.flow-form-heading{display:flex;align-items:flex-start;gap:13px;margin-bottom:20px}
.flow-form-heading>.icon{width:25px;height:25px;color:var(--forest);margin-top:3px}
.flow-form-heading>div{flex:1;min-width:0}
.flow-form-heading h3{font-size:22px;line-height:1.2;margin-top:5px}
.flow-form-slot p:not(.eyebrow){font-size:14px;line-height:1.7}
.flow-form-slot .flow-note{font-size:12px;border-top:1px solid #d9e0ca;margin-top:18px;padding-top:17px}
.flow-status{display:inline-flex;border:1px solid #d6dec7;border-radius:4px;padding:5px 8px;color:#536139;background:#fff;font-size:10px;line-height:1.4;white-space:nowrap;font-weight:700}
.flow-form-heading .flow-status{margin-top:3px}
.flow-form-live>.text-link{display:flex;width:fit-content}
.flow-form-live iframe{width:100%;height:720px;border:1px solid var(--line);margin-top:20px;background:white}
.flow-form-live .button{margin-top:12px}
.flow-form-live .flow-note{margin-top:10px}
.flow-empty{display:flex;gap:21px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;padding:27px;background:white}
.flow-empty>.icon{color:var(--forest);width:29px;height:29px;flex-shrink:0;margin-top:3px}
.flow-empty>div{flex:1;min-width:0}
.flow-empty h3{font-size:22px;line-height:1.2}
.flow-empty p{font-size:14px;line-height:1.7;margin-top:10px;max-width:660px}
.flow-empty .flow-status{margin-left:auto}
.flow-empty+.flow-links{margin-top:26px}
.flow-contact{margin-top:32px}
.flow-contact>div:first-child{flex:0 0 29px;color:var(--forest)}
.flow-faq{max-width:960px}
.flow-faq details{border-top:1px solid var(--line)}
.flow-faq details:last-child{border-bottom:1px solid var(--line)}
.flow-faq summary{list-style:none;cursor:pointer;font-size:16px;font-weight:700;padding:17px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:59px;line-height:1.45}
.flow-faq summary .icon{color:var(--forest);width:18px;height:18px;transition:transform .15s}
.flow-faq details[open] summary .icon{transform:rotate(45deg)}
.flow-faq details>div{padding:0 25px 20px 0;max-width:780px;font-size:14px;line-height:1.7}
.flow-faq .text-link{margin-right:18px}
/* The organisational route stays available without a second directory. */
.flow-cta{position:relative;isolation:isolate;background:var(--black);color:#fff;border-top:1px solid #ffffff18;overflow:hidden}
.flow-cta:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 100% 100%,rgba(151,178,29,.115),transparent 72%)}
.flow-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:48px;padding:36px 0}
.flow-cta-inner>div:first-child{max-width:710px}
.flow-cta .eyebrow{color:var(--green);margin-bottom:8px}
.flow-cta h2{font-size:29px;line-height:1.15;letter-spacing:-.025em}
.flow-cta p:not(.eyebrow){font-size:14px;line-height:1.65;color:#cbd4c5;max-width:670px;margin-top:10px}
.flow-cta-actions{min-width:194px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.flow-quiet-link{display:flex;align-items:center;gap:12px;min-height:44px;color:#d5ddcd;font-size:11px;line-height:1.4}
.flow-quiet-link:hover{color:var(--green)}
.flow-quiet-link .icon{width:16px;height:16px;color:var(--green)}
/* Tablet keeps shared navigation and moves dense content into appropriate rows. */
@media(max-width:1199px){
 .site-header .primary-nav{gap:15px}.site-header .header-inner{gap:19px}
 .site-header .primary-nav a{font-size:11px}
 .flow-hero-copy{width:61%}.flow-hero-copy h1{font-size:44px}
 .flow-split{gap:33px}.flow-grid{gap:15px}.flow-tile-body{padding:21px}
 .flow-form-heading{flex-wrap:wrap}.flow-form-heading .flow-status{margin-left:38px}
 .flow-case-detail{gap:27px}.flow-case-detail h3{font-size:25px}
}
@media(max-width:1023px){
 .site-header .primary-nav{display:none}.site-header .header-referral{margin-left:auto}.site-header .menu-toggle{display:block}
 .flow-hero-photo{width:78%}.flow-hero-copy{width:65%}.flow-hero-copy h1{font-size:41px}
 .flow-hero-inner{min-height:290px}.flow-hero-copy>p:not(.eyebrow){font-size:15px}
 .flow-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
 .page-youth-voice .flow-grid-3>.flow-route-panel:last-child{grid-column:1/-1}
 .flow-route-panel h3{max-width:100%;font-size:23px}
 .flow-case-card:last-child{grid-column:auto}.flow-split{gap:27px}
 .flow-cta-inner{gap:32px}.flow-cta h2{font-size:27px}
 .site-footer .footer-grid{gap:22px}
 .page-index .voice-categories{grid-template-columns:repeat(6,minmax(0,1fr))}
 .page-index .voice-category span{font-size:11px}
 .page-index .service-grid-canonical{grid-template-columns:repeat(3,minmax(0,1fr))}
 .flow-form-slot{padding:21px}.flow-form-heading h3{font-size:20px}
 .flow-empty{flex-wrap:wrap}.flow-empty .flow-status{margin-left:50px}
}
@media(max-width:700px){
 html{scroll-padding-top:90px}
 .wrap,.chrome-container{width:calc(100% - 36px);max-width:1240px}
 .site-header .header-inner{height:72px;display:grid;grid-template-columns:minmax(0,1fr) auto 42px;gap:9px}
 .site-header .header-referral{font-size:9px;padding:10px 11px;min-height:42px;gap:7px;margin:0}
 .site-header .header-referral .icon{width:15px;height:15px}
 .site-header .menu-toggle{width:42px;height:42px}
 .brand .logo-window{width:123px}
 .flow-home-green-wash{height:36%;background:linear-gradient(to top,rgba(151,178,29,.115),rgba(151,178,29,.04) 68%,transparent)}
 .hero-option-a .hero-route-title{font-size:20px}
 .hero-option-a .hero-route-description{font-size:13px}
 .page-index .voice-categories{grid-template-columns:repeat(3,minmax(0,1fr))}
 .page-index .voice-category{min-height:95px;padding:12px 6px}
 .page-index .voice-category span{font-size:11px}
 .page-index .voice-visual img{height:auto;aspect-ratio:1.75;object-fit:cover}
 .page-index .service-grid-canonical{grid-template-columns:repeat(2,minmax(0,1fr))}
 .page-index .service-grid-canonical .service-card:last-child{grid-column:1/-1}
 .flow-hero-photo{width:100%;height:265px;object-position:65% 36%!important}
 .flow-hero:before{background:linear-gradient(180deg,#07100d48 0%,#07100d5c 24%,#07100dea 56%,#07100d 76%)}
 .flow-hero:after{background:linear-gradient(90deg,#07100d44,transparent)}
 .flow-breadcrumbs{font-size:10px;gap:7px;min-height:38px;padding-top:13px;position:relative;z-index:1}
 .flow-hero-inner{min-height:355px;padding:88px 0 33px;align-items:flex-end}
 .flow-hero-copy{width:100%;max-width:570px}
 .flow-hero-copy .eyebrow{margin-bottom:11px;font-size:10px}
 .flow-hero-copy h1{font-size:clamp(31px,8.25vw,40px);line-height:1.065;letter-spacing:-.035em}
 .flow-hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.65;max-width:100%;margin-top:15px}
 .flow-hero-action{font-size:13px;margin-top:12px;gap:17px;min-height:44px}
 .flow-image-credit{font-size:8px;bottom:7px}
 .flow-hero-text .flow-hero-inner{min-height:240px;padding:24px 0 32px}
 .flow-hero-text .flow-hero-copy{width:100%}
 .flow-hero-text:before{background:radial-gradient(ellipse at 90% 90%,rgba(82,101,28,.22),transparent 70%)}
 .flow-section{padding:31px 0}.flow-section-head{margin-bottom:21px;display:block}
 .flow-section-head .eyebrow{font-size:10px;margin-bottom:8px}
 .flow-section-head h2{font-size:27px;line-height:1.15}
 .flow-section-head p:not(.eyebrow){font-size:14px;line-height:1.7}
 .flow-split,.flow-grid-3,.flow-grid-2,.flow-case-detail{grid-template-columns:minmax(0,1fr);gap:24px}
 .flow-grid{gap:14px}.page-youth-voice .flow-grid-3>.flow-route-panel:last-child{grid-column:auto}
 .flow-reading{font-size:14px;line-height:1.8}
 .flow-tile-body{padding:20px}.flow-tile h3{font-size:21px}
 .flow-tile-body>.icon{width:24px;height:24px;margin-bottom:11px}
 .flow-tile p:not(.eyebrow){font-size:14px;margin-bottom:11px}
 .flow-tile-image>img{height:175px}.flow-tile-link{min-height:34px;font-size:12px}
 .flow-link-row{padding:15px 0;gap:13px;min-height:79px}.flow-link-row strong{font-size:16px}.flow-link-row small{font-size:13px}
 .flow-link-row>.icon:first-child{width:21px;height:21px}
 .flow-inline-photo{aspect-ratio:1.55}
 .flow-steps{flex-direction:column;gap:18px}
 .flow-steps li{padding-top:13px}.step-number{margin-bottom:8px}
 .flow-steps h3{font-size:19px}
 .flow-feature{gap:15px;padding:16px 0}.flow-feature h3{font-size:17px}
 .flow-route-panel{padding:21px 21px 12px}.flow-route-panel h3{font-size:23px;max-width:320px;margin-top:7px}
 .flow-route-actions{column-gap:18px}.flow-route-actions .text-link{font-size:13px}
 .flow-case-card>img{height:177px}.flow-case-card>div{padding:21px}
 .flow-case-card h3{font-size:23px}.flow-case-card .text-link{font-size:13px}
 .flow-case-detail{gap:20px;padding-top:0}.flow-case-detail h3{font-size:26px;line-height:1.16}
 .flow-case-detail+.flow-case-detail{margin-top:26px;padding-top:26px}
 .flow-case-detail figure img{aspect-ratio:1.6}.flow-case-detail figcaption{font-size:10px}
 .flow-inline-links{column-gap:18px}.flow-inline-links .text-link{font-size:12px}
 .flow-filter{gap:7px}.flow-filter button{font-size:11px;padding:9px 12px;min-height:42px}
 .flow-result-count{margin-bottom:13px}
 .flow-activity>img{height:167px}.flow-activity>div{padding:20px}.flow-activity h3{font-size:22px}
 .flow-activity summary{min-height:48px}
 .flow-form-slot{padding:21px}.flow-form-heading{gap:12px;flex-wrap:wrap}
 .flow-form-heading h3{font-size:22px}.flow-form-heading .flow-status{margin-left:37px}
 .flow-form-heading>div{flex:1 1 calc(100% - 50px)}
 .flow-form-slot .flow-note{font-size:12px}.flow-form-live iframe{height:650px}
 .flow-empty{padding:22px;gap:15px}.flow-empty>div{flex:1 1 calc(100% - 51px)}
 .flow-empty h3{font-size:21px}.flow-empty .flow-status{margin-left:44px}
 .flow-empty p{font-size:14px}.flow-contact>div:first-child{flex:0 0 28px}
 .flow-faq summary{font-size:15px;padding:17px 0;min-height:57px}
 .flow-faq details>div{padding-right:0;font-size:14px}
 .flow-cta-inner{flex-direction:column;align-items:flex-start;padding:29px 0;gap:18px}
 .flow-cta h2{font-size:27px}.flow-cta p:not(.eyebrow){font-size:14px}
 .flow-cta-actions{gap:4px;min-width:0}.flow-quiet-link{font-size:12px}
 .flow-note{font-size:12px}.flow-section-head+.flow-note{margin-top:-5px;padding-bottom:10px}
 .site-footer{padding-top:30px}.site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 20px}
 .site-footer .footer-brand{grid-column:1/-1}.site-footer .footer-brand .brand{margin-bottom:10px}
 .site-footer .footer-brand p{font-size:13px}.site-footer .footer-brand .company{font-size:11px}
 .site-footer .footer-group h3{font-size:13px}.site-footer .footer-group a{font-size:12px;min-height:38px;padding:9px 0}
 .site-footer .footer-bottom{display:block;padding-top:15px}.site-footer .footer-legal{gap:19px;margin-top:4px}
 .site-footer .preview-note{font-size:10px;line-height:1.7;padding-top:8px}
}
@media(max-width:360px){
 .site-header .header-inner{gap:7px}.brand .logo-window{width:101px}
 .site-header .header-referral{font-size:8px;padding:10px 9px;gap:5px}
 .site-header .header-referral .icon{display:none}
 .flow-hero-copy h1{font-size:30px}.flow-hero-copy .eyebrow{font-size:9px}
 .page-index .hero h1{font-size:31px}
 .flow-route-actions{flex-direction:column}.flow-route-actions .text-link{width:100%;justify-content:space-between}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.flow-cta,.mobile-menu{display:none}.flow-hero{color:black;background:white}.flow-hero h1 span{color:black}.flow-hero-photo,.flow-hero:before,.flow-hero:after,.flow-hero-wash{display:none}.flow-hero-copy p{color:black!important}.flow-hero-inner{min-height:0}.flow-grid,.flow-split{break-inside:avoid}.wrap{width:100%}}
/* Five services form two balanced rows, rather than an empty sixth card. */
@media(min-width:1024px){
 .page-services #our-services .flow-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
 .page-services #our-services .flow-tile{grid-column:span 2}
 .page-services #our-services .flow-tile:nth-child(n+4){grid-column:span 3}
}
@media(min-width:701px) and (max-width:1023px){
 .page-services #our-services .flow-tile:last-child{grid-column:1/-1}
}

/* Show complete Youth Voice project photos without trimming heads or edges. */
:is(.page-youth-forum, .page-steering-group) #projects .flow-tile-image > img {
    display: block;
    width: 100%;
    height: clamp(250px, 29vw, 370px);
    object-fit: contain;
    object-position: center;
    background: #f5f7f2;
}
@media (max-width: 700px) {
    :is(.page-youth-forum, .page-steering-group) #projects .flow-tile-image > img {
        height: clamp(240px, 75vw, 340px);
    }
}


/* Steering Group + Youth Forum: clear registration journey and alternating page sections. */
:is(.page-youth-forum, .page-steering-group) .flow-registration-section {
    background:#f3f6ed;
    border-top:1px solid #e4e9db;
    border-bottom:1px solid #e4e9db;
    padding-block:clamp(42px,5vw,72px);
}
:is(.page-youth-forum, .page-steering-group) .flow-before-join {
    background:#f7f9f6;
}
.flow-registration-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);
    align-items:center;
    gap:clamp(26px,5.5vw,76px);
}
.flow-registration-copy {min-width:0;max-width:570px}
.flow-registration-copy>.eyebrow {margin-bottom:10px}
.flow-registration-copy h2 {font-size:clamp(28px,2.8vw,39px);line-height:1.13;letter-spacing:-.038em;margin:0 0 20px}
.flow-registration-copy .flow-reading {max-width:520px;font-size:15px;line-height:1.72;color:#46534a}
.flow-registration-copy .flow-reading>p+p {margin-top:12px}
.flow-registration-back {display:inline-flex;align-items:center;margin-top:16px;font-weight:700}
.flow-registration-card {
    min-width:0;
    padding:clamp(25px,3vw,37px);
    color:#fff;background:#071a11;
    border:1px solid #28402d;border-radius:13px;
    box-shadow:0 12px 36px rgba(7,26,17,.13);
}
.flow-registration-card-heading {display:flex;align-items:center;gap:16px;margin-bottom:25px}
.flow-registration-card-heading>div {min-width:0}
.flow-registration-icon {
    display:grid;place-items:center;flex:0 0 49px;width:49px;height:49px;
    color:#b5d44b;background:#1d3522;border:1px solid #415839;border-radius:11px;
}
.flow-registration-icon>.icon {width:25px;height:25px}
.flow-registration-card .eyebrow {color:#b6d54c;margin:0 0 5px;font-size:10px}
.flow-registration-card h3 {color:#fff;font-size:clamp(19px,2vw,25px);letter-spacing:-.025em;line-height:1.2}
.flow-registration-button {
    display:flex;align-items:center;justify-content:space-between;
    width:100%;min-height:55px;gap:16px;
    padding:9px 10px 9px 18px;
    color:#142008;background:var(--green);border:1px solid #b3c961;border-radius:9px;
    font-size:14px;font-weight:800;line-height:1.4;text-decoration:none;
    transition:background-color .18s ease, transform .18s ease;
}
.flow-registration-arrow {
    display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;
    color:#fff;background:#14270f;border-radius:7px;font-size:19px;font-weight:500;
}
.flow-registration-button:hover {background:var(--green-hover);transform:translateY(-1px)}
.flow-registration-button:focus-visible {outline:3px solid #d7ec81;outline-offset:4px}
.flow-registration-note {color:#c1cdc1;font-size:12px;line-height:1.65;margin:15px 0 0}
.flow-registration-unavailable {color:#fff;font-size:14px;line-height:1.65}
@media(max-width:700px) {
    .flow-registration-layout {grid-template-columns:minmax(0,1fr);gap:25px}
    .flow-registration-copy h2 {font-size:29px;margin-bottom:16px}
    .flow-registration-copy .flow-reading {font-size:14px}
    .flow-registration-card {padding:22px;border-radius:11px}
    .flow-registration-card-heading {gap:13px;margin-bottom:20px}
    .flow-registration-icon {flex-basis:43px;width:43px;height:43px}
    .flow-registration-card h3 {font-size:20px}
    .flow-registration-button {min-height:52px;font-size:13px;padding-left:15px}
}
@media(prefers-reduced-motion:reduce){.flow-registration-button:hover{transform:none}}
