:root{color-scheme:light;--bg:#fff;--panel:#fff;--cream:#172a36;--muted:#465865;--line:#dce5e9;--gold:#ffe044;--coral:#d64b36;--green:#17694a}
body{background:#fff;color:#172a36}h1,h2,h3{font-family:Rajdhani,Arial,sans-serif;font-weight:400}p{line-height:1.7}a:focus-visible{outline-color:#b13d28}.wrap{width:min(1240px,calc(100% - 48px))}
.local-strip{background:#eef6f5;color:#24483f;font-size:.85rem;padding:9px 0}.local-strip .wrap{display:flex;justify-content:space-between;gap:18px}.local-strip a{text-decoration:underline;text-underline-offset:3px}
.site-header,.home-page .site-header{background:#fff;border-bottom:1px solid #dce5e9}.site-header .brand span{color:#172a36;background:none}.site-header .nav{gap:24px}.site-header .nav-links{gap:16px}.site-header .nav-links a{color:#283e4b;font-size:1.05rem;font-style:normal}.site-header .nav-links a:hover{color:#b53e2b}.site-header .nav-links [aria-current=page]{color:#b53e2b}.site-header .nav-links .nav-book{background:#ffe044;color:#172a36;padding:10px 14px;border-radius:5px}
.booking-bar{background:#17694a;color:white;padding:22px 0}.booking-bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.booking-bar p{margin:0;font-size:1.15rem}.button{font-weight:400;border-radius:6px}.button-primary{background:#ffe044;color:#172a36}.button-ghost{background:white;border-color:#6c858f;color:#172a36}.audience-nav{background:#f5f8fa;border-bottom:1px solid #dce5e9}.audience-nav .wrap{display:flex;justify-content:center;gap:50px;padding:20px 0}.audience-nav a{font-size:1.15rem;color:#17694a}.audience-nav a:hover{text-decoration:underline}
.welcome-discovery{background:#fff;padding:70px 0}.welcome-discovery-copy h2{color:#172a36}.welcome-kicker{color:#b53e2b}.welcome-discovery-grid>img{border-radius:8px;box-shadow:none}.welcome-actions a{border-radius:6px;background:#17694a}.welcome-actions a:last-child{background:#ffe044;color:#172a36}
#programs,#approach,#about,.program-page .content-section,.program-page .page-hero+.content-section,.program-page #activities,.program-page #pricing,.program-page #booking,.content-section{--cream:#172a36;--muted:#465865;--gold:#856000;--line:#dce5e9;--panel:#fff;color-scheme:light;color:#172a36;background:#fff;border:0}
#programs{background:#f1f7f5;padding:75px 0}.section-heading{max-width:800px;margin-inline:auto;text-align:center}.section-heading h2{font-size:clamp(2.3rem,4vw,3.5rem)}.section-heading p{margin-inline:auto}.eyebrow{color:#b53e2b;font-weight:400;letter-spacing:.12em}.eyebrow:before{background:#d64b36}.program-grid{grid-template-columns:repeat(3,1fr);gap:24px}
#programs .program-card,#programs .program-card:nth-child(n){background:#fff;border:1px solid #dce5e9;border-top:5px solid #d64b36;padding:24px;border-radius:8px;box-shadow:0 6px 18px #173c3510}#programs .program-card:nth-child(2){border-top-color:#d9af25}#programs .program-card:nth-child(3){border-top-color:#17694a}#programs .program-card:nth-child(4){border-top-color:#27639b}#programs .program-card:nth-child(5){border-top-color:#87539b}#programs .program-card:nth-child(6){border-top-color:#22867e}
#programs .program-card h3,#programs .program-card:nth-child(n) h3{color:#172a36;font-size:2rem}#programs .program-card p{color:#465865}#programs .program-card .link-label{color:#a63324;font-weight:400}.program-card-photo{height:220px;border-radius:5px}#programs .program-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px #173c3518}
.audience-section{padding:75px 0;background:white}.audience-section.alternate{background:#fff9e4}.audience-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.audience-grid>img{width:100%;height:400px;object-fit:contain;background:#f0f3f4;border-radius:8px}.audience-grid h2{font-size:clamp(2.4rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.03em}.audience-grid p{color:#465865}.audience-grid .eyebrow{color:#b53e2b}.alternate .audience-grid>img{order:2}.text-link{color:#a63324;text-decoration:underline;align-self:center;text-underline-offset:4px}
#about{background:#eef6f3;padding:70px 0}#about .band-copy{color:#465865}#about h2{font-size:clamp(2.5rem,4vw,3.8rem)}#approach{padding:75px 0}#approach .pillar{background:#fff;border-color:#dce5e9;color:#172a36;box-shadow:none;padding:24px}#approach .pillar p{color:#465865}#approach .pillar h3{font-size:1.7rem}.home-page .closing{padding:65px 0;background:#172a36;color:white}.home-page .closing .section-heading{margin:0 auto;text-align:center}.home-page .closing .section-heading p{color:#d7e6e7;margin-inline:auto}.home-page .logo-showcase{margin-inline:auto;width:240px}.home-page .discover-tabs{justify-content:center}.home-page .discover-tabs a{background:transparent;color:white;border-color:#cbdcda;font-size:1rem}.home-page .discover-tabs a:hover{background:#ffe044;color:#172a36}
.page-hero,.program-page .page-hero,.inquiry-page .page-hero{background:#eef6f3;color:#172a36;padding:55px 0;border-bottom:1px solid #dce5e9}.page-hero p{color:#465865}.page-hero h1{font-size:clamp(2.8rem,5vw,4.5rem)}.page-hero .program-photo{border:0}.page-hero .program-photo img{border-radius:8px}.program-page .page-hero+.content-section .detail-box,.content-section .detail-box{background:#f1f7f5;color:#172a36;box-shadow:none}.program-page #activities{background:#f5f8fa}.program-page #activities .activity{background:#fff;border:1px solid #dce5e9;border-top:4px solid #17694a;box-shadow:none}.program-page #activities .activity .outcome{color:#172a36}.program-page #pricing .price-card{background:#fff9e4;border-color:#e5dbaa}.program-page #booking{background:#eef6f3}.content-section form{box-shadow:none}.content-section input,.content-section textarea,.content-section select,.content-section .inquiry-preview{background:white;color:#172a36}.gallery-grid figure{background:#fff;border-color:#dce5e9}.gallery-grid figcaption{color:#172a36}.footer{background:#f3f6f7;color:#465865;border-top:1px solid #dce5e9;padding:48px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}.footer-grid h2{font-size:2rem;color:#172a36}.footer-grid h3{font-size:1.4rem;color:#172a36}.footer-grid a{display:block;margin:9px 0;text-decoration:none}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #dce5e9;margin-top:30px;padding-top:20px;font-size:.85rem}
@media(max-width:1050px){.site-header .nav{flex-wrap:wrap}.site-header .nav-links{width:100%;justify-content:flex-start}.program-grid{grid-template-columns:repeat(2,1fr)}.audience-grid{gap:35px}}
@media(max-width:760px){.booking-bar .wrap{flex-direction:column;align-items:flex-start}.audience-nav .wrap{gap:20px;flex-wrap:wrap}.program-grid,.audience-grid,.footer-grid{grid-template-columns:1fr}.alternate .audience-grid>img{order:0}.audience-section{padding:50px 0}.audience-grid>img{height:330px}.local-strip .wrap{flex-wrap:wrap;gap:4px}.home-page .discover-tabs{justify-content:flex-start}.section-pad{padding:55px 0}}

.home-page .approved-hero{background:#fff}

/* Match the selected white opening across every page. */
.page-hero,.program-page .page-hero,.inquiry-page .page-hero{background:#fff;border-bottom:4px solid #0f8b80}.page-hero h1,.welcome-discovery-copy h2,.audience-grid h2,#about h2{color:#075d49}.brand-ribbon{background:#fff;height:140px;overflow:hidden}.brand-ribbon img{width:100%;height:100%;object-fit:cover;object-position:center bottom}.home-page .closing{background:#f0f8f5;color:#075d49}.home-page .closing .section-heading p{color:#465865}.home-page .discover-tabs a{color:#075d49;border-color:#0f8b80;background:#fff}.home-page .closing .logo-showcase{mix-blend-mode:normal;border-radius:12px}.spectrum{background:linear-gradient(90deg,#ff433d,#ffd629,#087e59,#05b7b7)}.footer{background:#fff}.footer-grid h2,.footer-grid h3{color:#075d49}.local-strip{background:#eff8f4}.activity-grid .activity:nth-child(3n+1){border-top-color:#e84a38}.activity-grid .activity:nth-child(3n+2){border-top-color:#d8ad15}.activity-grid .activity:nth-child(3n){border-top-color:#0f8b80}
@media(max-width:760px){.brand-ribbon{height:85px}}

/* Navigation lettering follows the colours in the logo artwork. */
.site-header .nav-links a{--tab-colour:#00865a}
.site-header .nav-links a[href="/math-in-motion/"]{--tab-colour:#d84627}
.site-header .nav-links a[href="/wild-science/"]{--tab-colour:#00865a}
.site-header .nav-links a[href="/engineering-excitement/"]{--tab-colour:#a56a00}
.site-header .nav-links a[href="/computer-science-coll/"]{--tab-colour:#00858c}
.site-header .nav-links a[href="/professional-development/"]{--tab-colour:#d84627}
.site-header .nav-links a[href="/gallery/"]{--tab-colour:#00858c}
.site-header .nav-links a,.site-header .nav-links a:hover,.site-header .nav-links [aria-current=page],.site-header .nav-links .nav-book{color:var(--tab-colour)}
.site-header .nav-links a:hover,.site-header .nav-links [aria-current=page]{text-decoration:underline;text-underline-offset:6px}

/* Navigation lettering follows the colours in the logo artwork. */
.home-page .discover-tabs a{--tab-colour:#00865a}
.home-page .discover-tabs a[href="/math-in-motion/"]{--tab-colour:#d84627}
.home-page .discover-tabs a[href="/wild-science/"]{--tab-colour:#00865a}
.home-page .discover-tabs a[href="/engineering-excitement/"]{--tab-colour:#a56a00}
.home-page .discover-tabs a[href="/computer-science-coll/"]{--tab-colour:#00858c}
.home-page .discover-tabs a[href="/professional-development/"]{--tab-colour:#d84627}
.home-page .discover-tabs a[href="/gallery/"]{--tab-colour:#00858c}
.home-page .discover-tabs a,.home-page .discover-tabs a:hover,.home-page .discover-tabs [aria-current=page],.home-page .discover-tabs .nav-book{color:var(--tab-colour)}
.home-page .discover-tabs a:hover,.home-page .discover-tabs [aria-current=page]{text-decoration:underline;text-underline-offset:6px}

.home-page .discover-tabs a{font-size:1.05rem;font-weight:400;font-style:normal;padding:10px 0;border:0;border-radius:0;background:transparent}.home-page .discover-tabs{gap:16px}.home-page .discover-tabs .nav-book{background:#ffe044;padding:10px 14px;border-radius:5px}

.site-header .brand span{white-space:nowrap;font-size:1.15rem}

/* Smaller header programme tabs. */
.site-header .nav-links a[href="/math-in-motion/"],.site-header .nav-links a[href="/wild-science/"],.site-header .nav-links a[href="/engineering-excitement/"],.site-header .nav-links a[href="/computer-science-coll/"],.site-header .nav-links a[href="/professional-development/"]{font-size:.9rem;line-height:1.4}

/* Requested header order remains in one horizontal row. */
.site-header .nav-links{display:flex;grid-template-columns:none;flex-wrap:nowrap;gap:12px;justify-content:flex-start;overflow-x:auto;min-width:0;scrollbar-width:thin;padding-bottom:8px}
.site-header .nav-links a{flex:0 0 auto;white-space:nowrap}
.site-header .nav{gap:16px}
@media(min-width:1250px){.site-header .nav{flex-wrap:nowrap}.site-header .nav-links{width:auto;flex:1;justify-content:flex-end}}
@media(max-width:1249px){.site-header .nav{flex-wrap:wrap}.site-header .nav-links{width:100%}}

/* All Gallery images match the first three photo frames. */
.gallery-grid figure{min-width:0}
.gallery-grid figure img,.gallery-grid .program-photo img{display:block;width:100%;height:320px;max-height:none;object-fit:contain;object-position:center;background:#f4f1ea}

.site-header .nav-links a,.home-page .discover-tabs a{font-weight:700}

/* Prominent one-line tabs directly beneath the logo and name. */
.site-header .nav{display:flex;flex-direction:column;align-items:flex-start;flex-wrap:nowrap;gap:2px;padding-top:8px;padding-bottom:0;min-height:0}
.site-header .nav-links{width:100%;flex:none;justify-content:flex-start;gap:16px;padding-top:0;padding-bottom:10px;flex-wrap:nowrap}
.site-header .nav-links a,.site-header .nav-links a[href="/math-in-motion/"],.site-header .nav-links a[href="/wild-science/"],.site-header .nav-links a[href="/engineering-excitement/"],.site-header .nav-links a[href="/computer-science-coll/"],.site-header .nav-links a[href="/professional-development/"]{font-size:1.1rem;font-weight:800;line-height:1.4;white-space:nowrap}

/* Laptop sizing preserves the approved layout and artwork. */
@media(min-width:900px) and (max-width:1600px){
 .wrap{width:min(1120px,calc(100% - 48px))}
 .home-page .approved-hero-image{width:100%;height:auto;max-height:calc(100svh - 170px);object-fit:contain;object-position:center}
 .section-pad,.content-section,.welcome-discovery,.audience-section,.home-page .closing{padding-top:48px;padding-bottom:48px}
 .section-heading{margin-bottom:28px}
 .section-heading h2,.band h2{font-size:clamp(2.2rem,3.2vw,3.2rem)}
 .welcome-discovery-copy h2{font-size:clamp(2rem,2.7vw,2.8rem)}
 .welcome-discovery-grid,.audience-grid,.band-grid{gap:32px}
 .welcome-discovery-grid>img,.audience-grid>img{height:290px}
 .page-hero,.program-page .page-hero,.inquiry-page .page-hero{padding-top:32px;padding-bottom:32px}
 .page-hero h1{font-size:clamp(2.5rem,3.8vw,3.5rem);margin-top:12px;margin-bottom:16px}
 .page-hero .program-photo img{height:280px}
 .program-card-photo{height:190px;margin-top:12px;margin-bottom:6px}
 .program-grid{gap:20px}
 .program-card{padding:22px}
 .pillar{padding:24px;min-height:0}
 .approach-photo{height:190px;object-fit:cover}
 .activity-photo{height:180px;object-fit:cover}
 .brand-ribbon{height:100px}
 .footer{padding-top:32px}
 .site-header .nav-links{gap:14px}
 .site-header .nav-links a{font-size:1.1rem}
}
@media(min-width:900px) and (max-height:800px){
 .home-page .approved-hero-image{max-height:calc(100svh - 160px)}
}

/* Match every gallery image to the uploaded portrait photos. */
.gallery-page .gallery-grid figure img,.gallery-page .gallery-grid .program-photo img{width:240px;max-width:100%;height:320px;margin-inline:auto;object-fit:cover;object-position:center;background:#f4f1ea}
.gallery-page .gallery-grid figure{background:#f4f1ea}

/* Every gallery image fills one identical cropped frame. */
.gallery-page .gallery-grid figure{margin:0;min-width:0;background:#fff}
.gallery-page .gallery-grid figure a{display:block}
.gallery-page .gallery-grid figure img,.gallery-page .gallery-grid .program-photo img{display:block;width:100%;max-width:100%;height:320px;margin:0;object-fit:cover;object-position:center}

/* Consistent laptop proportions, including narrower side-by-side previews. */
img{max-width:100%}
main,.wrap,.booking-grid>*{min-width:0}
@media(min-width:801px){
 .wrap{width:min(1120px,calc(100% - 48px))}
 .section-pad,.content-section,.welcome-discovery,.audience-section,.home-page .closing{padding-block:36px}
 .section-heading{margin-bottom:24px}
 .section-heading h2,.band h2{font-size:clamp(2rem,3vw,3rem)}
 .page-hero,.program-page .page-hero,.inquiry-page .page-hero{padding-block:24px}
 .page-hero h1{font-size:clamp(2.5rem,3.7vw,3.5rem);line-height:1.1;margin-block:10px 12px}
 .page-hero .crumb{margin-block:0 10px}
 .page-hero .program-photo{margin-top:18px}
 .page-hero .program-photo img{height:clamp(190px,28svh,260px);object-fit:cover}
 .page-hero .cta-row{margin-top:18px}
 .welcome-discovery-grid>img,.audience-grid>img{height:clamp(220px,35svh,300px);object-fit:cover}
 .program-card-photo,.approach-photo{height:180px;object-fit:cover}
 .activity-photo{height:170px;object-fit:cover}
 .program-card,.pillar,.activity{padding:22px}
 .program-grid,.activity-grid,.pillars{gap:20px}
 .booking-grid{gap:28px}
 .content-section form{padding:24px}
 .brand-ribbon{height:90px}
 .footer{padding-top:28px}
 .home-page .approved-hero-image{width:100%;height:auto;max-height:calc(100svh - 170px);object-fit:contain}
}
@media(min-width:801px) and(max-width:1100px){
 .site-header .nav-links{gap:clamp(6px,1vw,11px)}
 .site-header .nav-links a{font-size:clamp(.875rem,1.45vw,1rem)}
 .site-header .nav-book{padding:10px 12px}
}
@media(max-width:800px){
 .wrap{width:calc(100% - 32px)}
 .page-hero,.content-section,.section-pad,.welcome-discovery,.audience-section{padding-block:28px}
 .booking-grid,.footer-grid{grid-template-columns:1fr}
}

/* Preserve the full four-person Professional Development photograph. */
.program-card .pd-original-photo,.page-hero .program-photo .pd-original-photo,.gallery-page .gallery-grid figure .pd-original-photo{width:100%;height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;object-position:center}

/* Opening artwork fits below the compact header on laptop screens. */
@media(min-width:801px){
 .home-page .approved-hero-image{display:block;width:100%;height:auto;max-height:calc(100svh - 210px);object-fit:contain;object-position:center top}
 .site-header .nav{padding-top:6px;gap:0}
 .site-header .nav-links{padding-bottom:8px}
}

.home-page .closing .discover-tabs a[href="/gallery/"]{color:#00565d;--tab-colour:#00565d}
.home-page .closing .discover-tabs a[href="/gallery/"]:hover{color:#003f45}

.button-primary,.site-header .nav-links .nav-book,.home-page .discover-tabs .nav-book,.welcome-actions a:last-child{font-weight:700}

.home-page .site-header .brand span{font-weight:900;background:linear-gradient(90deg,#d64b36 0%,#dca900 50%,#17694a 100%);-webkit-background-clip:text;background-clip:text;color:transparent}

.home-page .site-header .brand span{font-size:1.65rem}

.home-page .site-header .brand span{font-size:2.1rem;background:linear-gradient(90deg,#dc3025 0%,#dc3025 62%,#dca900 82%,#17694a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:.65px #000;paint-order:stroke fill}

/* Responsive sizing shared by all pages. */
.wrap{max-width:1120px}
.site-header .brand{max-width:100%;min-width:0}
main img{max-width:100%}
.program-grid>*,.activity-grid>*,.pricing-grid>*,.intro-grid>*,.audience-grid>*,.welcome-discovery-grid>*,.band-grid>*,.footer-grid>*,.form-grid>*{min-width:0}
h1,h2,h3,p,li,label{overflow-wrap:break-word}
.button{max-width:100%;white-space:normal;text-align:center;padding-block:12px}
@media(max-width:1100px){
 .site-header .nav-links{flex-wrap:wrap;overflow:visible;gap:8px 18px}
 .site-header .nav-links a,.site-header .nav-links a[href]{font-size:1rem;min-height:40px;display:inline-flex;align-items:center}
 .home-page .discover-tabs{flex-wrap:wrap}
 .home-page .discover-tabs a{white-space:normal}
 .activity-grid,.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
 .wrap{width:calc(100% - 32px)}
 .program-grid,.pillars,.intro-grid,.booking-grid,.audience-grid,.welcome-discovery-grid,.band-grid,.footer-grid{grid-template-columns:1fr;gap:24px}
 .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .home-page .approved-hero-image{max-height:none;width:100%;height:auto}
 .page-hero h1{font-size:clamp(2rem,7vw,3rem)}
 .section-heading h2,.audience-grid h2,.welcome-discovery-copy h2,#about h2{font-size:clamp(1.9rem,6vw,2.6rem)}
 #approach .section-heading h2{white-space:normal;font-size:clamp(1.8rem,5vw,2.6rem)}
 .audience-grid>img,.welcome-discovery-grid>img,.page-hero .program-photo img{height:auto;aspect-ratio:3/2;object-fit:cover}
 .alternate .audience-grid>img{order:0}
 .booking-bar .wrap{flex-direction:column;align-items:flex-start}
 .audience-nav .wrap{flex-wrap:wrap;gap:12px 24px}
 .home-page .closing{padding-block:32px}
}
@media(max-width:540px){
 .wrap{width:calc(100% - 28px)}
 .home-page .site-header .brand span{font-size:clamp(1.65rem,7vw,2.1rem)}
 .site-header .brand span{font-size:clamp(1rem,4.5vw,1.3rem)}
 .site-header .nav-links{gap:4px 14px;padding-block:8px}
 .site-header .nav-links a:first-child{display:inline-flex}
 .activity-grid,.pricing-grid,.form-grid,.gallery-grid{grid-template-columns:1fr}
 .program-card,.pillar,.activity,.price-card,.detail-box,.content-section form{padding:20px}
 .program-card-photo,.approach-photo,.activity-photo{height:auto;aspect-ratio:3/2;object-fit:cover}
 .gallery-page .gallery-grid figure img,.gallery-page .gallery-grid .program-photo img{height:clamp(240px,85vw,380px)}
 .gallery-page .gallery-grid figure .pd-original-photo{height:auto}
 .home-page .discover-tabs{justify-content:flex-start;gap:10px 18px}
 .home-page .discover-tabs a{min-height:40px}
 .footer{padding-top:28px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.program-card{transition:none}}

.discovery-page .welcome-discovery-copy h1{color:#075d49;font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.03em}.discovery-page .welcome-discovery{padding-block:36px}

#programs .program-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#programs .program-card-photo{height:140px;aspect-ratio:auto;object-fit:cover}#programs .program-card{padding:20px}#programs .program-card h3{font-size:1.8rem}@media(max-width:800px){#programs .program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){#programs .program-grid{grid-template-columns:1fr}}

#programs .program-card .pd-original-photo{height:140px;aspect-ratio:auto;object-fit:contain}

/* Broader, shallower Explore cards. */
@media(min-width:801px){#programs>.wrap{width:min(1320px,calc(100% - 48px))}}
#programs .program-grid{gap:16px}
#programs .program-card{padding:16px 20px}
#programs .program-card h3{margin:0 0 10px;font-size:1.7rem;line-height:1.15}
#programs .program-card-photo,#programs .program-card .pd-original-photo{height:105px;margin:8px 0 10px}
#programs .program-card p{line-height:1.5;margin-bottom:10px}
#programs .program-card .link-label{display:block;line-height:1.35}

.activity h3{margin:0 0 14px}.activity-photo{margin:0;display:block}

/* Complete Discovery navigation stays in one accessible horizontal row. */
.site-header .wrap.nav,.home-page .closing>.wrap{width:calc(100% - 32px);max-width:1480px}
.site-header .nav-links,.home-page .discover-tabs{display:flex;flex-wrap:nowrap!important;justify-content:flex-start;gap:clamp(8px,.8vw,14px);max-width:100%;overflow-x:auto!important;overflow-y:hidden;scrollbar-width:thin;padding-bottom:12px}
.site-header .nav-links a,.site-header .nav-links a[href],.home-page .discover-tabs a{flex:0 0 auto;white-space:nowrap!important;font-size:clamp(.875rem,.94vw,1rem);font-weight:800;line-height:1.4;min-height:40px;display:inline-flex;align-items:center}
.site-header .nav-links a[href="/art-in-action/"],.home-page .discover-tabs a[href="/art-in-action/"]{--tab-colour:#d84627}
.site-header .nav-links a[href="/tech-trends/"],.home-page .discover-tabs a[href="/tech-trends/"]{--tab-colour:#a56a00}
.site-header .nav-links a[href="/robotics/"],.home-page .discover-tabs a[href="/robotics/"]{--tab-colour:#00858c}
.site-header .nav-links a:focus-visible,.home-page .discover-tabs a:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
@media(max-width:760px){.site-header .nav-links,.home-page .discover-tabs{gap:16px}.site-header .nav-links a,.site-header .nav-links a[href],.home-page .discover-tabs a{font-size:.9375rem}}

/* Fluid page sizing and a foreground-focused community event frame. */
html,body{width:100%;min-width:0}
.wrap{width:min(1120px,calc(100% - 32px))}
.grid,.intro-grid,.booking-grid,.program-grid,.activity-grid,.gallery-grid{min-width:0}
.park-event-photo{display:block;width:100%;height:auto;aspect-ratio:2.8;object-fit:cover;object-position:center bottom;border-radius:12px;margin-top:24px}
.page-hero p,.intro-grid p,.band-copy{font-size:clamp(1rem,1.3vw,1.15rem)}
.section-pad,.content-section,.welcome-discovery,.audience-section,#approach,#programs,#about{padding-block:clamp(28px,4vw,48px)}
@media(min-width:801px){
 .site-header .nav-links a,.site-header .nav-links a[href]{font-size:clamp(.75rem,.94vw,1rem)}
 .site-header .nav-links{gap:clamp(6px,.7vw,12px)}
 .page-hero .program-photo img{max-height:32svh}
 .audience-grid>img,.welcome-discovery-grid>img{max-height:38svh}
}
@media(min-width:801px) and (max-width:1050px){
 .program-grid,.activity-grid,.pricing-grid,.pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
 .intro-grid,.booking-grid{grid-template-columns:1fr}
}
@media(max-width:800px){
 .program-grid,.audience-grid,.welcome-discovery-grid,.band-grid,.intro-grid,.booking-grid,.footer-grid{grid-template-columns:1fr}
 .activity-grid,.pricing-grid,.pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
 .page-hero .program-photo img,.audience-grid>img,.welcome-discovery-grid>img{max-height:none}
 .park-event-photo{border-radius:8px;margin-top:20px}
}
@media(max-width:540px){
 .activity-grid,.pricing-grid,.pillars,.gallery-grid,.form-grid{grid-template-columns:1fr}
 .program-card,.activity,.pillar,.price-card,form{padding:20px}
 .footer-inner{align-items:flex-start}
}

/* Larger navigation arranged in two rows. */
.site-header .nav-links,.home-page .discover-tabs{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px 16px;overflow:visible!important;width:100%;padding-block:8px 12px}
.site-header .nav-links a,.site-header .nav-links a[href],.home-page .discover-tabs a{font-size:clamp(1.05rem,1.35vw,1.25rem);white-space:normal!important;line-height:1.15;min-height:44px;justify-content:center;text-align:center}
.site-header .nav-links a[href="/pricing-guide/"],.home-page .discover-tabs a[href="/pricing-guide/"]{--tab-colour:#00865a}
.pricing-guide-content{max-width:1000px}.pricing-guide-content h2{margin-top:38px}.pricing-guide-content h2:first-child{margin-top:0}.pricing-draft-note{padding:16px;border-left:4px solid #d8ad15;background:#fff9e4;border-radius:6px}.pricing-table-scroll{overflow:auto;margin-block:20px 28px}.pricing-guide-table{border-collapse:collapse;width:100%;min-width:540px}.pricing-guide-table th,.pricing-guide-table td{padding:15px;text-align:left;border:1px solid #dce5e9;vertical-align:top}.pricing-guide-table th{background:#eef6f3;color:#075d49}.pricing-guide-table td:nth-child(2){white-space:nowrap;font-weight:700}.pricing-guide-table th:first-child{width:25%}.pricing-guide-table th:nth-child(2){width:17%}
@media(max-width:800px){.site-header .nav-links,.home-page .discover-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.site-header .nav-links a,.site-header .nav-links a[href],.home-page .discover-tabs a{font-size:1.05rem}.home-page .approved-hero-image{max-height:none}}
@media(max-width:420px){.site-header .nav-links,.home-page .discover-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-guide-table td,.pricing-guide-table th{padding:12px}}

/* Black outlines on all opening-page lettering. */
.home-page :is(h1,h2,h3,p,a,li,label,.eyebrow,.link-label,.brand span){-webkit-text-stroke:.3px #000;paint-order:stroke fill}
.home-page :is(h1,h2,h3,.brand span){-webkit-text-stroke:.7px #000}

/* Clear black edges around opening-page header lettering. */
.home-page .site-header .nav-links a,.home-page .site-header .nav-links a[href]{-webkit-text-stroke:.8px #000;paint-order:stroke fill;text-shadow:0 0 .35px #000}
.home-page .site-header .brand span{-webkit-text-stroke:1px #000;paint-order:stroke fill}

/* Final responsive handoff: small phones through wide desktop displays. */
.site-header .nav-links a,.home-page .discover-tabs a{min-width:0;overflow-wrap:anywhere;min-height:44px}
.site-header .brand{flex-shrink:1}.site-header .brand span{max-width:100%}
.intro-grid>*,.booking-grid>*,.audience-grid>*,.welcome-discovery-grid>*,.footer-grid>*{min-width:0}
input,select,textarea{max-width:100%;min-width:0;font-size:1rem}
textarea{resize:vertical}.inquiry-preview{white-space:pre-wrap;overflow-wrap:anywhere}
.pricing-table-scroll{max-width:100%;overscroll-behavior-inline:contain}
.cta-row,.welcome-actions{flex-wrap:wrap}
@media(min-width:801px) and (max-width:1100px){
 .site-header .nav-links,.home-page .discover-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
 .site-header .nav-links a,.site-header .nav-links a[href],.home-page .discover-tabs a{font-size:1.05rem}
}
@media(max-width:600px){
 .site-header .nav-links,.home-page .discover-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}
 .site-header .nav-links a,.site-header .nav-links a[href],.home-page .discover-tabs a{font-size:1rem;padding:8px 4px}
 .site-header .nav-links .nav-book,.home-page .discover-tabs .nav-book{padding:10px 6px}
 .site-header .brand span{white-space:normal;line-height:1.15}
 .site-header .header-emblem{flex:0 0 38px}
 .section-heading,.band-copy{max-width:100%}
 .park-event-photo{aspect-ratio:1.8;object-position:center bottom}
 .form-grid{grid-template-columns:1fr}
 .cta-row>.button{width:100%}
}
@media(max-width:360px){
 .wrap,.site-header .wrap.nav,.home-page .closing>.wrap{width:calc(100% - 24px)}
 .home-page .site-header .brand span{font-size:1.6rem}
 .site-header .nav-links a,.site-header .nav-links a[href]{font-size:.9375rem}
 .program-card,.activity,.pillar,.price-card,.detail-box,.content-section form{padding:16px}
}
@media(orientation:landscape) and (max-height:500px){
 .home-page .approved-hero-image{max-height:none;height:auto}
 .page-hero .program-photo img,.audience-grid>img,.welcome-discovery-grid>img{max-height:none}
}
