
/* YouthImpact: layouts tailored to desktop, tablet and phone. */
*,*::before,*::after{box-sizing:border-box}
.yi-skip{position:fixed;top:8px;left:12px;transform:translateY(-160%);z-index:120;background:#112f2d;color:#fff;padding:12px 18px;border-radius:8px}
.yi-skip:focus{transform:translateY(0)}
.yi-mobile-menu,.yi-bottom-nav{display:none}
.yi-nav{max-width:1440px;min-height:80px}
.yi-links a{display:inline-flex;align-items:center;min-height:44px}
.yi-links a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.yi-links .yi-top-cta{color:#fff!important}
.yi-mobile-menu summary{cursor:pointer;list-style:none}
.yi-mobile-menu summary::-webkit-details-marker{display:none}
.yi-mobile-menu summary:focus-visible,.yi-filter-panel summary:focus-visible{outline:3px solid #36795e;outline-offset:4px}
.yi-page{max-width:1320px;padding-inline:clamp(20px,4vw,60px)}
.yi-page>p,.yi-page>ul,.yi-page>ol{max-width:72ch}
.yi-page h1{max-width:21ch}
.yi-page h1,.yi-section h2,.yi-hero h1{text-wrap:balance}
.yi-filter-panel{margin:26px 0}
.yi-filter-panel>summary{display:none}
.yi-filterbar{margin:0;border-radius:16px;grid-template-columns:minmax(180px,1.4fr) minmax(150px,1fr) minmax(150px,1fr) minmax(150px,.9fr);gap:16px}
.yi-filterbar .yi-filter-submit{display:flex;align-items:center;gap:16px;grid-column:1/-1}
.yi-filterbar .yi-filter-submit button{min-width:200px}
.yi-filterbar .yi-filter-reset{font-size:14px;font-weight:700;min-height:44px;display:inline-flex;align-items:center}
.yi-result-grid{gap:24px}
.yi-result{border-radius:16px;padding:28px;gap:18px}
.yi-result h3{line-height:1.3}
.yi-result-tags{gap:7px}
.yi-result-tag{border-radius:6px;max-width:100%;overflow-wrap:anywhere}
.yi-result-bottom{align-items:flex-start}
.yi-result-bottom>span{flex-basis:100%;line-height:1.55}
.yi-result-bottom>a,.yi-save-action{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.yi-result-bottom>.yi-save-form,.yi-result-bottom>.yi-save-action{margin-left:auto!important}
.yi-fact{overflow-wrap:anywhere}
.yi-opportunity-detail{max-width:960px}
.yi-opportunity-detail>.yi-btn,.yi-opportunity-detail>p>.yi-btn{min-height:48px}
.yi-facts{align-items:start}
.yi-account-section{max-width:1100px}
.yi-alert-form{max-width:600px}
.yi-alert-form input[type=checkbox]{width:20px;height:20px;vertical-align:middle;accent-color:#236447}
.yi-alert-form label:first-of-type{display:flex;align-items:center;gap:10px;min-height:44px}
.yi-saved-item{grid-template-columns:minmax(0,1fr) 260px}
.yi-saved-item select,.yi-alert-form select,.yi-alert-form input:not([type=checkbox]){min-height:48px}
.yi-card-icon{font-size:15px;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.yi-card{border-radius:16px}
.yi-card:focus-visible,.yi-btn:focus-visible,.yi-chips a:focus-visible,.yi-bottom-nav a:focus-visible{outline:3px solid #36795e;outline-offset:4px}
.yi-search-button,.yi-search-input{min-height:50px;font-size:16px}
.yi-search-button{font-family:inherit;font-weight:800}
.yi-category-note{font-size:13px!important;line-height:1.6}
.yi-page .yi-list-articles{max-width:960px}
.yi-footer-shell a{min-height:32px}
.yi-footer-shell{margin-top:0}
@media(min-width:1100px){
 .yi-hero-inner{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);padding-top:88px;padding-bottom:92px}
 .yi-hero h1{font-size:clamp(64px,5.8vw,84px)}
 .yi-hero .yi-glass{align-self:center}
 .yi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .yi-grid .yi-card{display:flex;flex-direction:column;align-items:flex-start}
 .yi-grid .yi-card-link{margin-top:auto}
}
@media(min-width:721px) and (max-width:1099px){
 .yi-nav{padding:14px 24px;flex-wrap:wrap}
 .yi-links{gap:16px;justify-content:flex-end}
 .yi-links a{font-size:13px}
 .yi-hero-inner{grid-template-columns:1fr 1fr;gap:30px;padding:65px 30px}
 .yi-hero h1{font-size:54px}
 .yi-glass{padding:24px}
 .yi-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}
 .yi-result{padding:24px}
}
@media(max-width:720px){
 html{scroll-padding-top:88px}
 body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
 .yi-nav{flex-direction:row;min-height:68px;padding:12px 20px;gap:12px}
 .yi-wordmark{font-size:20px;letter-spacing:-.8px;gap:8px}
 .yi-symbol{width:32px;height:32px;border-radius:9px;font-size:22px}
 .yi-wordmark em{display:none}
 .yi-links{display:none}
 .yi-mobile-menu{display:block;position:relative}
 .yi-mobile-menu>summary{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:64px;border:1px solid #c7d6cc;border-radius:10px;font-size:14px;font-weight:750;padding:8px 12px}
 .yi-mobile-menu[open]>summary{background:#112f2d;color:#fff}
 .yi-mobile-menu-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(300px,calc(100vw - 40px));padding:10px;background:#f7f8f3;border:1px solid #cdded2;box-shadow:0 18px 38px #112f2d24;border-radius:14px;z-index:110}
 .yi-mobile-menu-panel a{display:flex;min-height:48px;align-items:center;text-decoration:none;padding:10px 14px;font-size:15px;border-radius:7px;color:#112f2d}
 .yi-mobile-menu-panel a:hover,.yi-mobile-menu-panel a[aria-current=page]{background:#e2eddf}
 .yi-bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;inset:auto 0 0;z-index:105;gap:4px;background:#f7f8f3;border-top:1px solid #cbded0;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 18px #112f2d0b}
 .yi-bottom-nav a{display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;min-height:50px;text-decoration:none;font-size:11px;line-height:1.25;font-weight:750;color:#365a49;border-radius:10px;margin:0}
 .yi-bottom-nav a[aria-current=page]{background:#e2eddf;color:#112f2d}
 .yi-bottom-nav svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
 .yi-hero{border-radius:0 0 22px 22px}
 .yi-hero-inner{display:flex;flex-direction:column;align-items:stretch;gap:26px;padding:34px 20px 38px}
 .yi-eyebrow{font-size:10px;letter-spacing:.09em;line-height:1.7;margin-bottom:14px}
 .yi-hero h1{font-size:clamp(36px,10vw,52px);line-height:1.08;letter-spacing:-.055em;margin-bottom:18px}
 .yi-lead{font-size:16px;line-height:1.6;margin-bottom:18px}
 .yi-actions{gap:10px}
 .yi-actions>.yi-btn{padding:11px 16px;font-size:13px;min-height:44px}
 .yi-actions>.yi-btn-ghost{background:transparent;border:0;padding-left:0;box-shadow:none}
 .yi-glass{border-radius:18px;padding:22px;max-width:none;width:100%;box-shadow:none;backdrop-filter:none}
 .yi-glass h2{font-size:21px;margin-bottom:18px}
 .yi-glass label{font-size:11px}
 .yi-glass .yi-category-note{margin:16px 0 0}
 .yi-chips{gap:8px}
 .yi-chips a{min-height:44px;display:inline-flex;align-items:center;padding:9px 13px;font-size:13px}
 .yi-section{padding:44px 0}
 .yi-section-sm{padding:32px 0}
 .yi-wrap{padding:0 20px}
 .yi-section h2,.yi-section-sm h2{font-size:30px;line-height:1.2;letter-spacing:-.04em}
 .yi-section-intro{font-size:15px;margin-bottom:24px}
 .yi-grid{grid-template-columns:1fr;gap:12px}
 .yi-grid .yi-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:0 16px;padding:20px}
 .yi-grid .yi-card-icon{grid-column:1;grid-row:1/4;width:40px;height:40px;border-radius:10px;margin:0;font-size:12px}
 .yi-grid .yi-card h3,.yi-grid .yi-card p,.yi-grid .yi-card .yi-card-link{grid-column:2}
 .yi-grid .yi-card h3{font-size:18px;margin-bottom:8px}
 .yi-grid .yi-card p{font-size:14px;line-height:1.55;margin-bottom:12px}
 .yi-grid .yi-card-link{font-size:13px}
 .yi-page{padding:34px 20px 48px}
 .yi-page h1{font-size:34px;line-height:1.14;margin-bottom:16px}
 .yi-page>p{font-size:15px;line-height:1.65}
 .yi-page h2{font-size:26px;margin-top:30px}
 .yi-filter-panel{margin:24px 0 18px;border:1px solid #cdded2;border-radius:14px;background:#e9f2eb}
 .yi-filter-panel>summary{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:14px 18px;list-style:none;font-size:15px;font-weight:750;cursor:pointer}
 .yi-filter-panel>summary::-webkit-details-marker{display:none}
 .yi-filter-panel>summary::after{content:"+";font-size:22px}
 .yi-filter-panel[open]>summary::after{content:"−"}
 .yi-filterbar{grid-template-columns:1fr;border:0;border-top:1px solid #cdded2;border-radius:0 0 14px 14px;padding:18px;gap:16px}
 .yi-filterbar input,.yi-filterbar select{font-size:16px;min-height:50px;margin-top:7px}
 .yi-filterbar .yi-filter-submit{display:flex;flex-direction:column;align-items:stretch;gap:4px;grid-column:auto}
 .yi-filterbar .yi-filter-submit button{min-height:50px;width:100%;font-size:15px}
 .yi-filterbar .yi-filter-reset{justify-content:center}
 .yi-result-count{font-size:13px;margin:18px 0}
 .yi-result-grid{grid-template-columns:1fr;gap:14px}
 .yi-result{padding:21px;border-radius:15px;gap:15px}
 .yi-result h3{font-size:21px;line-height:1.3}
 .yi-result>p{font-size:14px;line-height:1.65}
 .yi-result-tags{gap:6px}
 .yi-result-tag{font-size:11px;padding:5px 8px}
 .yi-result-bottom{gap:10px;font-size:12px}
 .yi-result-bottom>span{font-size:12px}
 .yi-result-bottom>a{font-size:14px}
 .yi-save-action{font-size:13px!important;min-height:44px;padding:9px 13px}
 .yi-result:hover{transform:none;box-shadow:none}
 .yi-opportunity-detail .yi-facts{grid-template-columns:1fr;gap:10px}
 .yi-fact{padding:17px}
 .yi-fact strong{font-size:11px}
 .yi-fact span{font-size:15px;line-height:1.65}
 .yi-opportunity-detail .yi-btn{width:100%;border-radius:12px;text-align:center;font-size:14px}
 .yi-saved-item{grid-template-columns:1fr;gap:14px;padding:19px}
 .yi-saved-item strong{font-size:18px}
 .yi-saved-item form{grid-template-columns:minmax(0,1fr) auto;gap:8px}
 .yi-saved-item form label{grid-column:1/-1}
 .yi-saved-item select{font-size:16px}
 .yi-alert-form{max-width:none;width:100%;padding:20px}
 .yi-alert-form input,.yi-alert-form select{font-size:16px!important}
 .yi-alert-form>button{max-width:none;min-height:50px}
 .yi-footer-shell{padding:38px 20px 26px}
 .yi-footer-inner{grid-template-columns:1fr 1fr;gap:24px}
 .yi-footer-inner>div:first-child{grid-column:1/-1}
 .yi-footer-shell h2{font-size:22px}
 .yi-footer-shell h3{margin-bottom:10px}
 .yi-footer-shell a{font-size:13px;min-height:36px;margin-bottom:4px}
 .yi-footer-bottom{margin-top:24px;font-size:11px;line-height:1.7}
 .yi-banner{padding:26px;border-radius:18px}
 .yi-pages{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.yi-result,.yi-btn,.yi-card{transition:none;transform:none!important}}

.yi-home{width:100%}
@media(max-width:720px){
 .yi-home{display:flex;flex-direction:column}
 .yi-home>section{width:100%;order:4}
 .yi-home>.yi-hero{order:0}
 .yi-home>.yi-home-recent{order:1;padding-top:34px;padding-bottom:10px}
 .yi-home>.yi-home-explore{order:2}
 .yi-home .yi-home-recent .yi-section-intro{margin-bottom:20px}
 .yi-home .yi-home-recent h2{font-size:28px}
}


/* Soft glass navigation: forest, ivory and lime from the existing palette. */
.yi-glass-header{background:rgba(247,248,243,.94);border-bottom:1px solid #dce6dd;box-shadow:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.yi-glass-header .yi-nav{max-width:1480px;min-height:94px;display:flex;flex-wrap:nowrap;gap:20px;padding:16px clamp(20px,3vw,44px)}
.yi-glass-header .yi-wordmark{font-size:21px;letter-spacing:-.8px;gap:8px;flex-shrink:0}
.yi-glass-header .yi-links{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:3px;padding:6px;border:1px solid rgba(105,153,123,.25);border-radius:999px;background:linear-gradient(120deg,rgba(255,255,255,.82),rgba(232,242,226,.76));box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #ffffff9c,0 5px 16px #112f2d08;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);flex:1;min-width:0}
.yi-glass-header .yi-links a{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;flex:1 0 auto;padding:10px 14px;border:1px solid transparent;border-radius:999px;font-size:13px;font-weight:600;line-height:1.3;letter-spacing:-.15px;white-space:nowrap;color:#345b49;text-decoration:none;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease}
.yi-glass-header .yi-links a:hover{background:#ffffffa6;border-color:#cddfd0;color:#112f2d}
.yi-glass-header .yi-links a[aria-current=page]{background:linear-gradient(145deg,#fffffff5,#edf7e6ed);border-color:#a4c694;color:#245938;box-shadow:inset 0 1px 0 #fff,0 3px 9px #234c2c0b;text-decoration:none}
.yi-glass-header .yi-links a[aria-current=page]::before{content:"";width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#548935;box-shadow:0 0 0 4px #b8da9845}
.yi-glass-header .yi-links a:focus-visible{outline:3px solid #508238;outline-offset:2px}
.yi-account-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:10px 15px;border:1px solid #bbcfbd;border-radius:999px;background:#eff4e9;color:#173f2d!important;font-size:12px;font-weight:750;white-space:nowrap;text-decoration:none!important}
.yi-account-link:hover,.yi-account-link[aria-current=page]{background:#deebce;border-color:#8fae79}
.yi-mobile-menu-panel{background:linear-gradient(135deg,#fffffff5,#eff5e9f5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 #fff,0 15px 35px #112f2d14}
.yi-bottom-nav{background:rgba(247,248,243,.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.yi-bottom-nav a[aria-current=page]{border:1px solid #b8d0a5;background:linear-gradient(135deg,#fffffff2,#e9f2df);box-shadow:inset 0 1px 0 #fff}
@media(min-width:721px) and (max-width:1250px){
 .yi-glass-header .yi-nav{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px 28px}
 .yi-glass-header .yi-wordmark{grid-column:1;grid-row:1}
 .yi-glass-header .yi-account-link{grid-column:2;grid-row:1}
 .yi-glass-header .yi-links{grid-column:1/-1;grid-row:2;justify-content:center}
 .yi-glass-header .yi-links a{font-size:14px;padding:11px 18px}
}
@media(max-width:720px){
 html{scroll-padding-top:148px}
 .yi-glass-header .yi-nav{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:12px 16px}
 .yi-glass-header .yi-wordmark{grid-column:1;grid-row:1;font-size:20px}
 .yi-glass-header .yi-account-link{display:none}
 .yi-glass-header .yi-mobile-menu{grid-column:2;grid-row:1}
 .yi-glass-header .yi-mobile-menu>summary{min-height:40px;border-radius:999px;background:#ffffff9c;padding:8px 14px}
 .yi-glass-header .yi-mobile-menu[open]>summary{background:#e4efdb;color:#173f2d}
 .yi-glass-header .yi-links{grid-column:1/-1;grid-row:2;display:flex;justify-content:flex-start;overflow-x:auto;overscroll-behavior-inline:contain;max-width:100%;gap:3px;padding:5px;border-radius:999px;scrollbar-width:none;scroll-padding-inline:8px}
 .yi-glass-header .yi-links::-webkit-scrollbar{display:none}
 .yi-glass-header .yi-links a{flex:0 0 auto;min-height:42px;font-size:13px;padding:10px 15px}
 .yi-glass-header .yi-links a[aria-current=page]::before{width:6px;height:6px;flex-basis:6px;box-shadow:0 0 0 3px #b8da9845}
}
@supports not ((backdrop-filter:blur(10px)) or (-webkit-backdrop-filter:blur(10px))){
 .yi-glass-header,.yi-bottom-nav{background:#f7f8f3}
 .yi-glass-header .yi-links,.yi-mobile-menu-panel{background:#eff4e9}
}
@media(prefers-reduced-transparency:reduce){
 .yi-glass-header,.yi-bottom-nav{background:#f7f8f3;backdrop-filter:none;-webkit-backdrop-filter:none}
 .yi-glass-header .yi-links,.yi-mobile-menu-panel{background:#eff4e9;backdrop-filter:none;-webkit-backdrop-filter:none}
}


/* Contact form: readable labels, touch targets, visible validation. */
.yi-page .wpcf7{max-width:760px;margin:30px 0;padding:clamp(20px,4vw,34px);border:1px solid #d2e2d1;border-radius:20px;background:linear-gradient(135deg,#ffffffde,#eff5e7d9);box-shadow:inset 0 1px 0 #fff,0 10px 30px #143c2b06}
.yi-page .wpcf7 label{font-size:14px;font-weight:650;line-height:1.6;display:block;color:#294d38}
.yi-page .wpcf7 input:not([type=submit]),.yi-page .wpcf7 textarea{display:block;width:100%;max-width:100%;margin-top:8px;border:1px solid #bdcfb7;border-radius:10px;background:#fffffff0;padding:13px 15px;min-height:48px;font:400 16px/1.5 inherit;color:#173f2d;font-family:inherit;font-size:16px}
.yi-page .wpcf7 textarea{min-height:160px;resize:vertical}
.yi-page .wpcf7 input[type=submit]{border:1px solid #8eae70;border-radius:999px;padding:13px 28px;min-height:48px;background:#c6f27d;color:#112f2d;font-family:inherit;font-size:15px;font-weight:750;cursor:pointer}
.yi-page .wpcf7 input:focus-visible,.yi-page .wpcf7 textarea:focus-visible{outline:3px solid #65904b;outline-offset:3px}
.yi-page .wpcf7-not-valid-tip{font-size:13px;line-height:1.6;color:#9c2c25;margin-top:6px}
.yi-page .wpcf7-response-output{margin:20px 0 0;border-radius:10px;font-size:14px;line-height:1.6}

.yi-single-page{max-width:1120px}
.yi-single-page>h1{max-width:28ch}
.yi-single-page .yi-opportunity-detail{max-width:none}
.yi-single-page .yi-breadcrumb{display:flex;align-items:center;gap:10px;margin:0 0 24px;min-height:36px}
.yi-single-page .yi-breadcrumb a{display:inline-flex;align-items:center;min-height:36px}
