@font-face{font-family:Vazirmatn;src:url('/fonts/Vazirmatn-Regular.woff2') format('woff2');font-display:swap}
@font-face{font-family:Vazirmatn;src:url('/fonts/Vazirmatn-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Estedad;src:url('/fonts/Estedad-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--navy:#2f4d36;--teal:#557b46;--coral:#a96245;--yellow:#96bf60;--sky:#a7c994;--cream:#f7f8f1;--ink:#29372d;--muted:#59695c;--line:#dae4d7;--paper:#fffefa}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font:16px/1.8 Vazirmatn,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Estedad,Vazirmatn,sans-serif;line-height:1.4}h1{font-size:clamp(2.6rem,5vw,5.2rem);letter-spacing:-.045em}h2{font-size:clamp(1.75rem,3vw,2.7rem);letter-spacing:-.025em}h3{font-size:1.2rem}p{max-width:68ch}img{max-width:100%;height:auto}.wrap{width:min(100% - 48px,1200px);margin-inline:auto}.skip-link{position:absolute;top:-60px;right:20px;background:white;padding:.4rem 1rem;z-index:30}.skip-link:focus{top:10px}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.site-header{position:relative;z-index:10;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.header-inner{min-height:86px;display:flex;align-items:center;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.75rem;white-space:nowrap;color:var(--navy)}.brand strong{display:block;font:700 1.55rem/1 Estedad}.brand small{display:block;color:var(--muted);font-size:.68rem;margin-top:.35rem}.desktop-nav{display:flex;align-items:center;gap:1.15rem;margin-inline:auto;font-size:.86rem;white-space:nowrap}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--teal)}.header-actions{display:flex;align-items:center;gap:.55rem}.button{display:inline-flex;justify-content:center;align-items:center;gap:.45rem;padding:.65rem 1.15rem;border-radius:8px;font-size:.87rem;font-weight:700;border:1px solid transparent;min-height:42px;transition:background-color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-accent{background:var(--coral);color:white}.button-accent:hover{background:#c95445}.button-quiet{background:#eff5f3;color:var(--navy)}.button-navy{background:var(--navy);color:white}.button-outline{border-color:var(--navy);color:var(--navy)}.menu-button{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px}.menu-button span{display:block;height:2px;background:var(--navy);margin:5px 0}.menu-backdrop{position:fixed;inset:0;background:#0c263690;z-index:19}.mobile-nav{position:fixed;z-index:20;inset-block:0;right:0;width:min(88vw,350px);overflow:auto;background:var(--cream);box-shadow:-10px 0 35px #0002;padding:1.4rem;display:flex;flex-direction:column;gap:.25rem}.mobile-nav[hidden],.menu-backdrop[hidden]{display:none}.mobile-nav-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.mobile-nav-head button{border:0;background:transparent;font-size:2rem;color:var(--navy)}.mobile-nav a{padding:.6rem .5rem;border-bottom:1px solid var(--line)}
.eyebrow{color:var(--teal);font-size:.78rem;font-weight:700;letter-spacing:.02em}.eyebrow:before{content:'';display:inline-block;width:18px;height:2px;background:var(--teal);vertical-align:middle;margin-left:.45rem}.hero{background:var(--cream);overflow:hidden}.hero-grid{min-height:580px;display:grid;grid-template-columns:1fr .95fr;align-items:center;gap:4rem;padding-block:5rem}.hero h1{color:var(--navy);max-width:12ch;margin:.8rem 0 1.2rem}.hero h1 em{font-style:normal;color:var(--coral)}.hero p{font-size:1.1rem;color:#4d5d63;max-width:46ch}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2rem}
.strip{border-block:1px solid var(--line);background:white}.strip-grid{display:grid;grid-template-columns:repeat(3,1fr)}.strip-item{padding:1.5rem;border-left:1px solid var(--line)}.strip-item:last-child{border-left:0}.strip-item strong{display:block;color:var(--navy);font:700 1.25rem Estedad}.strip-item span{color:var(--muted);font-size:.86rem}
.section{padding-block:5rem}.section-cream{background:var(--cream)}.section-blue{background:#edf5ec}.section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}.section-head p{color:var(--muted);margin:0}.section-head h2{color:var(--navy);margin:.4rem 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.story-board{position:relative;background:#eaf2ed;border-radius:10px;min-height:350px;padding:2rem;overflow:hidden}.story-board:before,.story-board:after{content:'';position:absolute;border:2px solid var(--teal);border-radius:50%;width:250px;height:250px;left:-70px;bottom:-150px}.story-board:after{width:140px;height:140px;left:auto;right:-35px;top:-50px;border-color:var(--coral)}.story-board blockquote{position:relative;z-index:1;color:var(--navy);font:700 clamp(1.6rem,3vw,2.4rem)/1.7 Estedad;margin:2rem auto;max-width:14ch}.pills{display:flex;gap:.5rem;flex-wrap:wrap}.pill{background:white;border:1px solid var(--line);border-radius:100px;padding:.3rem .85rem;font-size:.84rem}.journey{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.journey article{padding:1.7rem;border-top:4px solid var(--teal);background:white;min-height:215px}.journey article:nth-child(2){border-color:var(--yellow)}.journey article:nth-child(3){border-color:var(--coral)}.journey strong{display:block;font:700 1.3rem Estedad;color:var(--navy)}.journey small{display:block;color:var(--teal);margin:.6rem 0}.journey p{color:var(--muted);font-size:.91rem}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.article-card{border:1px solid var(--line);background:white;padding:1.5rem;border-radius:7px;min-height:240px;display:flex;flex-direction:column}.article-card .meta{color:var(--teal);font-size:.8rem}.article-card h3{color:var(--navy);margin:.7rem 0}.article-card p{color:var(--muted);font-size:.89rem}.article-card a{color:var(--teal);font-weight:700;margin-top:auto}.empty{background:#f5f7f4;color:var(--muted);padding:1.5rem;border-right:3px solid var(--teal);border-radius:4px}.page-hero{padding:4rem 0 3rem;background:var(--cream)}.page-hero h1{font-size:clamp(2.2rem,4vw,3.8rem);color:var(--navy);margin:.5rem 0 1rem}.page-hero p{color:var(--muted)}.breadcrumbs{color:var(--muted);font-size:.84rem}.breadcrumbs a{color:var(--teal)}.article-body{max-width:760px;margin:4rem auto;padding-inline:24px;white-space:pre-line;line-height:2.1}.detail-meta{color:var(--muted);font-size:.88rem}.detail-back{display:inline-block;margin-top:2rem;color:var(--teal);font-weight:700}.contact-band{background:var(--navy);color:white;padding:4rem 0}.contact-band h2{color:white}.contact-band p{opacity:.83}.contact-band .button{background:white;color:var(--navy)}.contact-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.contact-card{background:white;border:1px solid var(--line);padding:1.5rem}.contact-card strong{display:block;color:var(--navy)}
.form-wrap{max-width:850px}.notice{padding:1.25rem 1.5rem;background:#eef5f2;border-right:3px solid var(--teal);color:var(--navy);margin:1.5rem 0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.field{display:flex;flex-direction:column;gap:.3rem}.field label{font-size:.86rem;font-weight:700}.field input,.field select{border:1px solid #b9c9c7;border-radius:7px;padding:.6rem .75rem;background:white;width:100%;min-height:45px}.field input:focus,.field select:focus{outline:2px solid var(--teal)}.field-full{grid-column:1/-1}.form-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:1.2rem}.form-message{min-height:1.5rem;color:var(--navy);margin-top:.8rem}.check-row{display:flex;align-items:flex-start;gap:.6rem;margin-top:1.2rem}.check-row input{margin-top:.45rem}.honeypot{position:absolute;left:-9999px}
.site-footer{background:#263f30;color:#e9f1e8;padding:4rem 0 1rem}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:2rem}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:start;gap:.55rem}.footer-grid strong{color:white;margin-bottom:.4rem}.footer-grid a{color:#d4e3e2;font-size:.88rem}.footer-grid a:hover{color:var(--yellow)}.footer-brand{font:700 2.8rem Estedad;color:white}.site-footer p{font-size:.9rem}.site-footer .subtle{opacity:.6}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #ffffff26;margin-top:3rem;padding-top:1rem;font-size:.75rem;color:#afc3c3}.mobile-cta{display:none}
@media(max-width:1120px){.desktop-nav{gap:.65rem;font-size:.79rem}.header-inner{gap:1rem}.brand small{display:none}.header-actions .button{padding:.55rem .7rem}}
@media(max-width:900px){.desktop-nav,.desktop-only{display:none}.menu-button{display:block}.header-inner{justify-content:space-between}.hero-grid{gap:2rem}.article-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.wrap{width:min(100% - 32px,1200px)}.header-inner{min-height:70px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-block:3.5rem 2rem}.hero h1{font-size:clamp(2.5rem,10vw,3.6rem)}.hero p{font-size:1rem}.section{padding-block:3.4rem}.section-head{align-items:start;flex-direction:column;gap:.8rem}.strip-grid{grid-template-columns:1fr}.strip-item{border-left:0;border-bottom:1px solid var(--line);padding:.95rem 0}.two-col,.journey,.article-grid,.contact-list,.form-grid{grid-template-columns:1fr}.story-board{min-height:230px}.story-board blockquote{margin:1rem}.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.site-footer{padding-bottom:6rem}.mobile-cta{position:fixed;z-index:9;bottom:0;left:0;right:0;display:flex;gap:.6rem;background:white;box-shadow:0 -8px 30px #2f4d361c;padding:.65rem 1rem env(safe-area-inset-bottom)}.mobile-cta .button{flex:1}.page-hero{padding:2.5rem 0}.article-body{margin:2.5rem auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Hiva visual language: school green, editorial type, and layered information. */
.site-header{position:sticky;top:0;box-shadow:0 8px 28px #23412a0a;backdrop-filter:blur(14px)}
.header-inner{min-height:90px}
.brand-logo{display:block;flex:none;width:64px;height:64px;object-fit:contain;mix-blend-mode:multiply}
.brand .brand-caption{max-width:12rem;margin:0;font-size:.72rem;font-weight:700;line-height:1.6;color:var(--navy)}
.desktop-nav a{position:relative;padding:.4rem .12rem;transition:color .2s}
.desktop-nav a::after{content:'';position:absolute;right:0;left:100%;bottom:0;height:2px;background:var(--teal);transition:left .2s}
.desktop-nav a:hover::after,.desktop-nav a[aria-current=page]::after{left:0}
.button{min-height:46px;border-radius:11px;transition:transform .2s,background-color .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 9px 18px #24422c1b}
.button-accent{background:#a3c972;color:#243c2a}
.button-accent:hover{background:#92bc60}
.button-outline:hover{background:#fff;color:var(--navy)}
.hero{overflow:visible;background:#f2f6ec}
.hero-grid{min-height:600px;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,5.5rem);padding-block:5rem 6.2rem}
.hero-copy{align-self:center;padding-bottom:1rem}
.hero .eyebrow{display:inline-flex;align-items:center;min-height:34px;padding:.32rem .8rem;border:1px solid #c7dcb6;border-radius:30px;background:#e8f2dd;color:#426b3d}
.hero .eyebrow::before{width:7px;height:7px;border-radius:50%;background:#72a34e}
.hero h1{max-width:13ch;margin:1.1rem 0 1.25rem;font-size:clamp(3rem,5.2vw,5.4rem);line-height:1.35;letter-spacing:-.055em}
.hero p{max-width:43ch;color:#526254;font-size:1.09rem;line-height:2}
.hero-actions{margin-top:2rem}
.hero-actions .button{padding-inline:1.45rem}
.hero-stage{position:relative;min-width:0;min-height:500px;padding-bottom:3rem}
.hero-stage-surface{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:455px;overflow:hidden;padding:2rem 2.25rem 5.3rem;border-radius:30px 30px 105px 30px;background:#a1c875;color:#294c32;box-shadow:0 28px 45px #2b513222}
.hero-stage-surface::before{content:'';position:absolute;left:-105px;bottom:-205px;width:450px;height:450px;border:2px solid #ffffff78;border-radius:66% 34% 66% 34%;transform:rotate(27deg);pointer-events:none}
.hero-stage-head{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;font-size:.87rem;font-weight:700}
.hero-stage-logo{display:block;width:82px;height:82px;object-fit:contain;padding:5px;border-radius:18px;background:white;box-shadow:0 12px 20px #284b2f17}
.hero-stage-word{position:relative;z-index:1;display:block;margin-top:auto;font:700 clamp(6.4rem,13vw,11rem)/1 Estedad,Vazirmatn,sans-serif;letter-spacing:-.09em;color:#26482f}
.hero-stage-values{position:relative;z-index:1;font-size:.88rem;font-weight:700;color:#365f3a}
.hero-stage-ticket{position:absolute;z-index:2;right:1.2rem;left:1.2rem;bottom:0;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:1rem;min-height:103px;padding:1.15rem 1.5rem;border-radius:17px;background:#2f4d36;color:white;box-shadow:0 18px 28px #24442b36}
.hero-stage-program{display:grid;gap:.12rem}
.hero-stage-program span{font-size:.76rem;color:#cfe5c6}
.hero-stage-program strong{font:700 .99rem Estedad,Vazirmatn,sans-serif;white-space:nowrap}
.hero-stage-link{padding-inline-start:1rem;border-inline-start:1px solid #ffffff4f;color:#d1eead;font-size:.82rem;font-weight:700;white-space:nowrap}
.hero-stage-link:hover{text-decoration:underline}
.home-paths{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:-2.4rem;margin-bottom:1.5rem;overflow:hidden;border:1px solid #e0e9dc;border-radius:17px;background:#fff;box-shadow:0 22px 40px #2a4d3218}
.home-path{display:flex;align-items:center;gap:1rem;min-width:0;min-height:104px;padding:1.2rem 1.5rem;border-inline-end:1px solid #e4ece0;transition:background .2s}
.home-path:last-child{border-inline-end:0}
.home-path:hover{background:#f1f7eb}
.home-path-copy{display:grid;min-width:0;line-height:1.55}
.home-path-copy strong{color:var(--navy);font:700 1.02rem Estedad,Vazirmatn,sans-serif}
.home-path-copy small{color:var(--muted);font-size:.76rem;line-height:1.6}
.home-path-arrow{display:grid;place-items:center;flex:none;width:32px;height:32px;margin-inline-start:auto;border-radius:50%;background:#edf4e7;color:#476d3c;font-size:1rem;transition:transform .2s}
.home-path:hover .home-path-arrow{transform:translateX(-3px)}
.section{padding-block:5.5rem}
.section-cream{background:#f8f9f4}
.two-col{gap:clamp(2rem,6vw,6rem)}
.story-board{display:grid;grid-template-rows:auto 1fr;gap:1rem;min-height:360px;padding:0;overflow:visible;border:0;border-radius:0;background:transparent}
.story-board::before,.story-board::after{display:none}
.story-board-label{color:#507746;font-size:.83rem;font-weight:700}
.story-pillars{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.story-pillar{display:grid;place-items:center;min-height:126px;padding:1rem;border:1px solid #d9e6d5;border-radius:18px;background:#fff;color:#2d5035;font:700 clamp(1.15rem,2vw,1.55rem) Estedad,Vazirmatn,sans-serif;text-align:center}
.story-pillar:first-child{border-color:#36583e;background:#36583e;color:#fff}
.story-pillar:nth-child(2){border-color:#b9d89c;background:#b9d89c}
.story-pillar:nth-child(3){background:#edf4e6}
.section-head{margin-bottom:2.3rem}
.journey{gap:1rem}
.journey article{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:325px;overflow:hidden;padding:1.7rem;border:1px solid #dce8d8;border-radius:24px 7px 24px 7px;background:#f3f8ec;box-shadow:0 13px 25px #2b50300b}
.journey article:nth-child(2){border-color:#dce7d6;background:#fbfcf8}
.journey article:nth-child(3){border-color:#2f4d36;background:#2f4d36;color:#fff}
.journey-range{display:block;margin-bottom:auto;color:#82ac63;font:700 clamp(3.5rem,6vw,5.2rem)/1 Estedad,Vazirmatn,sans-serif;letter-spacing:-.06em}
.journey article:nth-child(3) .journey-range{color:#acd77c}
.journey strong{display:block;margin-top:1.25rem;color:var(--navy);font:700 1.28rem Estedad,Vazirmatn,sans-serif}
.journey small{display:block;margin:.4rem 0;color:#537746}
.journey p{margin:.6rem 0 0;color:#667467;font-size:.9rem}
.journey article:nth-child(3) strong,.journey article:nth-child(3) small,.journey article:nth-child(3) p{color:#fff}
.admissions-section{padding-block:1.5rem 5rem;background:#fffefa}
.admissions-card{position:relative;display:flex;align-items:end;justify-content:space-between;gap:2rem;min-height:330px;overflow:hidden;padding:clamp(2rem,5vw,4rem);border-radius:28px 28px 100px 28px;background:#b8d88f;color:#294a30}
.admissions-card::before{content:'';position:absolute;left:-140px;bottom:-260px;width:520px;height:520px;border:2px solid #ffffff80;border-radius:66% 34% 66% 34%;transform:rotate(27deg);pointer-events:none}
.admissions-copy,.admissions-card .button{position:relative;z-index:1}
.admissions-card .eyebrow{color:#315a35}
.admissions-card h2{max-width:16ch;margin:.7rem 0;font-size:clamp(2.2rem,4vw,3.7rem);color:#294a30}
.admissions-card p{margin:0;color:#395942}
.admissions-card .button{white-space:nowrap;padding-inline:1.6rem}
.contact-band{background:#31543b}
.contact-band .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem 3rem;align-items:center}
.contact-band .eyebrow{grid-column:1/-1;color:#c6e3ab}
.contact-band .eyebrow::before{background:#a6d47c}
.contact-band h2{margin:.5rem 0}
.contact-band p{margin:0}
.contact-band .button{grid-column:2;grid-row:2/4;padding-inline:1.5rem;border-radius:11px}
.article-card{border-radius:17px;transition:box-shadow .2s,transform .2s}
.article-card:hover{transform:translateY(-3px);box-shadow:0 16px 24px #2a4a3017}
.mobile-nav a{min-height:44px;display:flex;align-items:center;font-weight:700;color:var(--navy)}
@media(max-width:1120px){.hero-stage-ticket{grid-template-columns:1fr 1fr}.hero-stage-link{grid-column:1/-1;padding:0;border:0}}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr 1fr;gap:2rem}.hero-stage{min-height:475px}.hero-stage-surface{min-height:430px}.hero-stage-word{font-size:clamp(5.5rem,12vw,8rem)}.home-path{padding:1rem}}
@media(max-width:680px){.brand-logo{width:56px;height:56px}.hero-grid{display:flex;gap:1.7rem;min-height:0;padding-block:3rem 4.5rem}.hero h1{font-size:clamp(2.7rem,10vw,3.8rem)}.hero p{font-size:1rem}.hero-actions .button{flex:1 1 135px}.hero-stage{min-height:0;padding:0}.hero-stage-surface{min-height:300px;padding:1.3rem 1.4rem 4rem;border-radius:23px 23px 80px 23px}.hero-stage-logo{width:68px;height:68px}.hero-stage-word{font-size:clamp(5.7rem,24vw,8rem)}.hero-stage-values{font-size:.76rem}.hero-stage-ticket{position:relative;right:auto;left:auto;bottom:auto;grid-template-columns:1fr 1fr;gap:.6rem;margin:-1.9rem .75rem 0;padding:.9rem 1rem;min-height:0}.hero-stage-program strong{font-size:.84rem}.hero-stage-link{grid-column:1/-1;margin-top:.2rem;padding-top:.55rem;border-top:1px solid #ffffff4f;font-size:.76rem}.home-paths{grid-template-columns:1fr;margin-top:-2rem;border-radius:14px}.home-path,.home-path:last-child{min-height:73px;padding:.75rem 1rem;border-inline-end:0;border-top:1px solid #e4ece0}.home-path:first-child{border-top:0}.home-path-copy small{font-size:.71rem}.story-board{min-height:0}.story-pillar{min-height:100px}.journey article{min-height:245px}.journey-range{font-size:3.7rem}.section.admissions-section{padding-block:1rem 3rem}.admissions-card{display:block;min-height:0;padding:2rem;border-radius:24px 24px 70px 24px}.admissions-card p{margin-bottom:1.6rem}.contact-band .wrap{grid-template-columns:1fr}.contact-band .eyebrow,.contact-band .button{grid-column:1;grid-row:auto}.contact-band .button{justify-self:start;margin-top:1.2rem}.section{padding-block:3.6rem}}
@media(prefers-reduced-motion:reduce){.home-path-arrow,.article-card{transition:none}}

/* Real school moments and the workshop poster archive. */
.workshops-section{scroll-margin-top:100px}
.workshops-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem}
.workshops-heading .section-head{flex:1}
.workshops-heading .detail-back{flex:none;margin:0 0 2.3rem;color:#3f653d}
.workshops-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;align-items:stretch}
.workshop-card,.workshop-moments{min-width:0;overflow:hidden;border:1px solid #dce8d8;border-radius:20px;background:#fff;box-shadow:0 12px 30px #2b50300b}
.workshop-card{display:flex;flex-direction:column}
.workshop-poster{display:block;overflow:hidden;background:#edf2e9}
.workshop-poster img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;transition:transform .35s}
.workshop-poster:hover img{transform:scale(1.025)}
.workshop-card-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:1.3rem 1.45rem 1.55rem}
.workshop-card h3,.workshop-moments h3{margin:.65rem 0 .35rem;color:#2f4d36;font-size:1.18rem}
.workshop-card p,.workshop-moments p{margin:0;color:#607061;font-size:.86rem}
.workshop-source{margin-top:auto;padding-top:1.1rem;color:#41683d;font-size:.84rem;font-weight:700}
.workshop-source:hover{text-decoration:underline}
.workshop-moments{display:flex;flex-direction:column;background:#34573c;border-color:#34573c}
.workshop-moment-media{display:grid;grid-template-columns:1fr 1fr;gap:3px;min-height:0;aspect-ratio:3/4;overflow:hidden;background:#25452f}
.workshop-moment-media a{display:block;min-width:0;height:100%;overflow:hidden}
.workshop-moment-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 34%;transition:transform .35s}
.workshop-moment-media a:hover img{transform:scale(1.04)}
.workshop-moment-copy{padding:1.3rem 1.45rem 1.55rem}
.workshop-moment-copy .eyebrow{color:#c8e7ad}
.workshop-moment-copy h3,.workshop-moment-copy p{color:#fff}
.workshop-moment-copy p{opacity:.8}
.workshop-note{margin:1.1rem 0 0;color:#667567;font-size:.79rem;line-height:1.8}
@media(max-width:1080px){.desktop-nav,.desktop-only{display:none}.menu-button{display:block}.header-inner{justify-content:space-between}}
@media(max-width:900px){.workshops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workshop-moments{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.workshop-moment-media{aspect-ratio:4/3}.workshop-moment-copy{align-self:center}}
@media(max-width:680px){.workshops-heading{display:block}.workshops-heading .section-head{margin-bottom:.5rem}.workshops-heading .detail-back{display:inline-block;margin:0 0 1.5rem}.workshops-grid{grid-template-columns:1fr}.workshop-moments{grid-column:auto;display:flex}.workshop-moment-media{aspect-ratio:4/3}.workshop-card-copy,.workshop-moment-copy{padding:1.1rem 1.2rem 1.3rem}.workshop-poster img{aspect-ratio:3/4}}

.story-board-body{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:.75rem;min-height:300px}
.story-photo{display:block;align-self:center;min-width:0;height:220px;overflow:hidden;border-radius:18px;background:#e7ecdf}
.story-photo img{display:block;width:100%;height:220px;object-fit:cover;object-position:center 43%;transition:transform .35s}
.story-photo:hover img{transform:scale(1.035)}
.story-board-body .story-pillars{grid-template-columns:1fr 1fr;gap:.6rem}
.story-board-body .story-pillar{min-height:0;padding:.75rem;font-size:clamp(.95rem,1.45vw,1.25rem)}
.grade-moment-section{padding-block:1rem 5rem}
.grade-moment{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:clamp(2rem,6vw,6rem);align-items:center;overflow:hidden;border:1px solid #dce8d8;border-radius:24px;background:#fff}
.grade-moment-copy{padding:clamp(2rem,5vw,4.5rem)}
.grade-moment-copy h2{margin:.75rem 0;color:var(--navy)}
.grade-moment-copy p{color:var(--muted)}
.grade-moment-copy .detail-back{margin-top:1rem}
.grade-moment-photo{display:block;align-self:center;min-width:0;height:340px;overflow:hidden;background:#f5f4f0}
.grade-moment-photo img{display:block;width:100%;height:340px;object-fit:cover;object-position:center 42%;transition:transform .35s}
.grade-moment-photo:hover img{transform:scale(1.035)}
@media(max-width:900px){.story-board-body{grid-template-columns:1fr}.story-board-body .story-pillar{min-height:90px}.grade-moment{grid-template-columns:1fr 1fr;gap:1rem}.grade-moment-photo,.grade-moment-photo img{height:260px}}
@media(max-width:680px){.story-board-body{min-height:0}.story-photo,.story-photo img{height:240px}.story-board-body .story-pillars{grid-template-columns:1fr 1fr}.grade-moment-section{padding-block:0 3rem}.grade-moment{grid-template-columns:1fr}.grade-moment-copy{padding:1.5rem}.grade-moment-photo{grid-row:1}.grade-moment-photo,.grade-moment-photo img{height:280px}}
