@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap");

:root{
  --sig-pine:#173d2c;
  --sig-pine-2:#0f2c20;
  --sig-leaf:#2e664a;
  --sig-moss:#71845d;
  --sig-bark:#79553b;
  --sig-clay:#a77957;
  --sig-oat:#ece2d2;
  --sig-ivory:#f8f3e9;
  --sig-sage:#dce3cf;
  --sig-gold:#d7b56f;
  --sig-ink:#24352c;
  --sig-muted:#62695f;
  --sig-line:rgba(44,62,50,.13);
  --sig-shadow:0 26px 70px rgba(22,42,30,.12);
  --sig-shadow-soft:0 16px 40px rgba(58,45,31,.08);
  --sig-radius:28px;
  --sig-display:"Fraunces","Cormorant Infant",Georgia,serif;
}

/* Base rhythm */
html{scroll-padding-top:124px;background:var(--sig-ivory)}
body{background:var(--sig-ivory);color:var(--sig-ink)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}
.shell{width:min(1240px,calc(100% - 72px))}
.shell-wide{width:min(1420px,calc(100% - 36px))}
.section{padding:clamp(92px,8vw,132px) 0;overflow:hidden;isolation:isolate}
.display,.hero h1,.inner-hero h1,.cta h2,.drawer-feature h2,.story-copy h3,.campus-caption h3{font-family:var(--sig-display)!important}
.display{font-size:clamp(54px,6.4vw,92px);line-height:.9;letter-spacing:-.045em}
.display em,.inner-hero h1 em{font-style:italic;color:var(--sig-bark)}
.lead{max-width:720px}
.eyebrow{color:var(--sig-bark);letter-spacing:.2em}
.eyebrow::before{width:42px}
.text-link{font-weight:700;text-underline-offset:6px;text-decoration-thickness:1px}

/* Smart, refined header */
.site-header{top:12px!important;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .35s ease!important;will-change:transform}
.site-header.signature-header-hidden{transform:translate3d(0,-145%,0)!important;opacity:0!important;pointer-events:none}
.header-card{height:72px!important;border-radius:24px!important;background:rgba(249,246,238,.93)!important;border:1px solid rgba(74,64,49,.10)!important;box-shadow:0 15px 44px rgba(18,38,27,.11)!important;padding:0 14px!important}
.site-header.scrolled .header-card{background:rgba(249,246,238,.97)!important;box-shadow:0 12px 36px rgba(18,38,27,.13)!important}
.brand{gap:11px!important}
.brand img{width:52px!important;height:52px!important;filter:none!important}
.brand b{font-family:var(--sig-display)!important;font-size:20px!important;letter-spacing:-.025em;color:var(--sig-pine)!important}
.brand small{font-size:8px!important;letter-spacing:.13em!important;color:var(--sig-bark)!important}
.menu-button{width:44px!important;height:44px!important;border-radius:50%!important;background:var(--sig-pine)!important;transition:transform .25s ease,background .25s ease!important}
.menu-button:hover{transform:rotate(5deg) scale(1.04);background:var(--sig-bark)!important}
.header-action,.header-link{min-height:40px!important;padding:10px 15px!important;border-radius:999px!important;border-color:rgba(121,85,59,.24)!important;background:rgba(255,253,248,.72)!important;color:var(--sig-pine)!important}
.header-action.visit{background:var(--sig-pine)!important;color:#fff!important;border-color:var(--sig-pine)!important}
.header-action:hover,.header-link:hover{background:#fff!important;transform:translateY(-1px)}
.nav-ribbon{margin-top:7px!important;padding:8px 18px!important;border-radius:18px!important;background:rgba(248,243,233,.9)!important;border:1px solid rgba(74,64,49,.08)!important;box-shadow:0 9px 28px rgba(18,38,27,.065)!important;gap:20px!important;justify-content:center!important;backdrop-filter:blur(14px)}
.nav-ribbon a{font-size:10px!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:700!important;color:#3f5146!important;padding:3px 0 6px!important;position:relative}
.nav-ribbon a::after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:1.5px;background:var(--sig-bark);transition:.25s}
.nav-ribbon a:hover::after,.nav-ribbon a.active::after{left:0;right:0}

/* Drawer */
.drawer{background:linear-gradient(135deg,#102e22 0%,#1f5038 68%,#7b573d 140%)!important}
.drawer-shell{gap:64px!important;align-items:center!important}
.drawer-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:42px!important}
.drawer-links a{border-color:rgba(255,255,255,.13)!important;padding:15px 0!important}
.drawer-links strong{font-family:var(--sig-display)!important;font-size:clamp(28px,3.4vw,48px)!important;font-weight:500!important}
.drawer-feature{min-height:560px!important;border-radius:34px 34px 150px 34px!important;background:linear-gradient(180deg,rgba(122,86,58,.93),rgba(79,55,39,.97)),url("images/learning.webp") center/cover!important;box-shadow:0 30px 80px rgba(0,0,0,.22)!important}
.drawer-plant{opacity:.14!important;right:-45px!important;top:-45px!important;width:300px!important}

/* Hero: cinematic but grounded */
.hero{min-height:820px!important;height:min(92svh,920px)!important;background:var(--sig-pine-2)!important}
.hero-media img{object-position:center 42%!important;animation:none!important;transform:scale(1.025)}
.hero-overlay{background:linear-gradient(90deg,rgba(8,31,21,.82) 0%,rgba(8,31,21,.49) 43%,rgba(8,31,21,.12) 74%),linear-gradient(180deg,rgba(20,24,18,.06) 55%,rgba(51,36,24,.57) 100%)!important}
.hero::after{content:"";position:absolute;left:-3%;right:-3%;bottom:-58px;height:126px;background:var(--sig-ivory);border-radius:52% 48% 0 0/58% 58% 0 0;z-index:4;transform:rotate(-.5deg)}
.hero-grid{padding-top:155px!important;align-items:center!important}
.hero-copy{max-width:850px!important}
.hero h1{font-size:clamp(74px,9vw,142px)!important;line-height:.78!important;letter-spacing:-.065em!important;margin:18px 0 28px!important;text-shadow:0 6px 30px rgba(0,0,0,.16)}
.hero h1 em{color:#edd9b6!important}
.hero-copy>p{max-width:630px!important;font-size:16px!important;line-height:1.75!important;color:rgba(255,255,255,.87)!important}
.hero-side{display:grid!important;grid-template-columns:1fr 1fr!important;align-items:end!important;gap:12px!important;align-self:end!important;margin-bottom:110px!important}
.hero-script{grid-column:1/-1!important;font-size:clamp(28px,3vw,46px)!important;color:#f0dfbf!important;line-height:1!important;transform:rotate(-4deg)!important;text-shadow:0 3px 18px rgba(0,0,0,.16)}
.hero-mini{border:1px solid rgba(255,255,255,.24)!important;background:rgba(255,255,255,.08)!important;backdrop-filter:blur(8px)!important;border-radius:22px!important;padding:18px!important;min-width:125px!important}
.hero-mini b{font-family:var(--sig-display)!important;font-size:34px!important}
.hero-leaf{opacity:.13!important;filter:brightness(0) invert(1)!important}
.hero-leaf-a{width:300px!important;left:-70px!important;bottom:4%!important}.hero-leaf-b{width:330px!important;right:-90px!important;top:16%!important}
.hero-scroll{bottom:42px!important;z-index:7!important}

/* Buttons: restrained nature families */
.btn{border-radius:999px!important;min-height:50px!important;padding:14px 22px!important;box-shadow:none!important;transition:transform .25s ease,box-shadow .25s ease,background .25s ease!important;position:relative;overflow:visible!important}
.btn:hover{transform:translateY(-3px)!important;box-shadow:0 13px 28px rgba(25,48,35,.13)!important}
.btn.gold{background:var(--sig-gold)!important;color:#4c371f!important;border-color:var(--sig-gold)!important}
.btn.forest{background:var(--sig-pine)!important;color:#fff!important;border-color:var(--sig-pine)!important}
.btn.brown{background:var(--sig-bark)!important;color:#fff!important;border-color:var(--sig-bark)!important}
.btn.sand{background:var(--sig-oat)!important;color:var(--sig-pine)!important;border-color:var(--sig-oat)!important}
.btn-seed::before{transform:scale(.78);opacity:.8}.btn-branch::after{opacity:.5}.btn-leaf::before{opacity:.75}.btn-flower::after{opacity:.7}.btn-water::after{opacity:.55}.btn-vine::after{opacity:.52}

/* Quick routes: floating editorial navigation */
.quick-routes{width:min(1230px,calc(100% - 72px))!important;margin:-50px auto 34px!important;position:relative!important;z-index:9!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;border:0!important;background:rgba(248,243,233,.97)!important;border-radius:28px!important;box-shadow:var(--sig-shadow)!important;overflow:hidden!important}
.quick-routes a{min-height:112px!important;padding:20px 18px!important;border-right:1px solid var(--sig-line)!important;display:grid!important;grid-template-columns:42px 1fr auto!important;gap:12px!important;align-items:center!important;transition:background .25s ease,transform .25s ease!important}
.quick-routes a:last-child{border-right:0!important}.quick-routes a:hover{background:#fff!important;transform:translateY(-3px)!important}.quick-routes img{width:38px!important;max-height:44px!important;color:var(--sig-moss)!important}.quick-routes b{font-family:var(--sig-display)!important;font-size:19px!important;line-height:1.05!important}.quick-routes small{font-size:8px!important;letter-spacing:.16em!important;color:var(--sig-bark)!important}

/* Controlled botanical system – decorative assets never float with the viewport */
.botanical,.nature-sketch,.section-ornament{transform:none!important;transition:none!important;pointer-events:none!important;z-index:0!important}
.section-ornament{display:none!important}.nature-sketch{display:none!important}
.section-botanical>.shell,.section-botanical>.experience-rail,.section-botanical>.cta-copy{position:relative;z-index:2}
.section-botanical::before,.section-botanical::after{content:"";position:absolute;z-index:0;pointer-events:none;background-repeat:no-repeat;background-size:contain;opacity:.07}
.section-botanical:nth-of-type(4n+1)::before{width:300px;height:340px;left:-80px;top:7%;background-image:url("sketches/fern-solid.svg");transform:rotate(9deg)}
.section-botanical:nth-of-type(4n+2)::after{width:330px;height:310px;right:-95px;bottom:4%;background-image:url("sketches/leaf-fan-solid.svg");transform:rotate(-12deg)}
.section-botanical:nth-of-type(4n+3)::before{width:360px;height:230px;left:-90px;bottom:6%;background-image:url("sketches/branch-solid.svg");transform:rotate(5deg)}
.section-botanical:nth-of-type(4n)::after{width:280px;height:280px;right:-75px;top:8%;background-image:url("sketches/petal-cluster-solid.svg");transform:rotate(10deg)}
.deep.section-botanical::before,.deep.section-botanical::after,.forest.section-botanical::before,.forest.section-botanical::after,.cta.section-botanical::before,.cta.section-botanical::after{filter:brightness(0) invert(1);opacity:.055}

/* Philosophy collage */
.intro{background:linear-gradient(180deg,#f8f3e9 0%,#f4ede1 100%)!important}
.split{gap:clamp(55px,7vw,100px)!important;align-items:center!important}
.image-collage{min-height:610px!important}
.img-organic{width:74%!important;height:520px!important;clip-path:polygon(8% 0,95% 5%,100% 82%,88% 100%,0 94%,2% 14%)!important;border-radius:0!important;box-shadow:var(--sig-shadow)!important;transform:rotate(-2deg)!important}
.img-round{width:250px!important;height:250px!important;right:-10px!important;bottom:20px!important;border-radius:50%!important;border:10px solid var(--sig-ivory)!important;box-shadow:var(--sig-shadow-soft)!important;transform:rotate(3deg)!important}
.line-vine{width:170px!important;left:48%!important;top:45%!important;color:var(--sig-bark)!important;opacity:.6!important}.scribble{font-family:"Caveat",cursive!important;color:var(--sig-bark)!important}
.value-trio{border-top:1px solid var(--sig-line)!important;border-bottom:1px solid var(--sig-line)!important;gap:0!important}.value-trio>div{padding:20px 18px!important;border-right:1px solid var(--sig-line)!important}.value-trio>div:last-child{border-right:0!important}.value-trio b{font-family:var(--sig-display)!important;font-size:24px!important;color:var(--sig-pine)!important}

/* Curriculum: fewer card-like boxes, more depth */
.roots{background:radial-gradient(circle at 85% 10%,rgba(215,181,111,.08),transparent 26%),linear-gradient(160deg,#0e2a1f 0%,#183e2c 58%,#244d38 100%)!important}
.roots-art{opacity:.08!important;width:650px!important;left:2%!important;bottom:-40px!important}.bamboo-art{opacity:.07!important;width:330px!important;right:-70px!important}
.pillar-grid{gap:16px!important}.pillar{min-height:390px!important;border:1px solid rgba(255,255,255,.13)!important;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035))!important;border-radius:26px!important;padding:32px!important;box-shadow:none!important;overflow:hidden!important;transition:transform .35s ease,background .35s ease!important}.pillar:nth-child(1){border-radius:95px 26px 26px 26px!important}.pillar:nth-child(2){border-radius:26px!important}.pillar:nth-child(3){border-radius:26px 26px 95px 26px!important}.pillar:hover{transform:translateY(-7px)!important;background:rgba(255,255,255,.09)!important}.pillar h3{font-family:var(--sig-display)!important;font-size:48px!important;line-height:.88!important}.pillar p{color:rgba(255,255,255,.74)!important}.pillar>img{opacity:.18!important;max-width:170px!important}

/* Stages */
.stages{background:linear-gradient(180deg,#ece2d2 0%,#f3ecdf 100%)!important}
.stage-layout{grid-template-columns:.72fr 1.28fr!important;gap:80px!important}.stage-layout>div:first-child{position:sticky!important;top:170px!important;align-self:start!important}.stage-cards{gap:18px!important}.stage-card{height:520px!important;box-shadow:var(--sig-shadow-soft)!important;background:#fff!important;overflow:hidden!important;transition:transform .35s ease,box-shadow .35s ease!important}.stage-card:hover{transform:translateY(-7px) rotate(.5deg)!important;box-shadow:var(--sig-shadow)!important}.stage-card.arch{border-radius:180px 24px 24px 24px!important}.stage-card.round{border-radius:24px 24px 180px 24px!important}.stage-card.cut{clip-path:polygon(0 4%,94% 0,100% 91%,91% 100%,4% 96%,0 14%)!important;border-radius:0!important}.stage-card>div{background:linear-gradient(transparent,rgba(12,34,24,.88))!important;padding:32px!important}.stage-card b{font-family:var(--sig-display)!important;font-size:29px!important}.stage-card span{font-size:11px!important}

/* Story slider – the hero interaction */
.story-lab{background:linear-gradient(145deg,#f8f3e9 0%,#eee2d0 100%)!important}
.story-slider{grid-template-columns:1.08fr .92fr!important;gap:0!important;background:#fffaf3!important;border:1px solid rgba(86,69,49,.09)!important;border-radius:34px!important;overflow:hidden!important;box-shadow:var(--sig-shadow)!important;min-height:650px!important}
.story-visual{min-height:650px!important;background:var(--sig-pine-2)!important;position:relative!important;overflow:hidden!important}.story-image-frame{position:absolute!important;inset:0!important;border-radius:0!important;clip-path:none!important}.story-image-frame img{width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .3s ease!important}.story-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(12,33,24,.66) 100%);pointer-events:none}.story-counter{left:28px!important;bottom:28px!important;top:auto!important;color:#fff!important;background:rgba(15,44,31,.62)!important;backdrop-filter:blur(9px)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:999px!important;padding:9px 14px!important;z-index:3!important}.story-orbit{width:180px!important;right:-30px!important;top:-30px!important;color:#e5d8bc!important;opacity:.22!important;z-index:2!important}.story-copy{padding:56px clamp(34px,4vw,64px)!important;display:flex!important;flex-direction:column!important;justify-content:center!important}.story-tabs{display:flex!important;gap:7px!important;overflow:auto!important;padding-bottom:10px!important;scrollbar-width:none!important;margin-bottom:30px!important}.story-tabs::-webkit-scrollbar{display:none}.story-tabs button{flex:0 0 auto!important;border:1px solid rgba(41,68,51,.14)!important;border-radius:999px!important;padding:9px 12px!important;background:transparent!important;font-size:9px!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--sig-muted)!important}.story-tabs button.active{background:var(--sig-pine)!important;color:#fff!important;border-color:var(--sig-pine)!important}.story-copy h3{font-size:clamp(40px,4.3vw,67px)!important;line-height:.94!important;letter-spacing:-.04em!important;color:var(--sig-pine)!important;margin:14px 0 20px!important}.story-copy>p{font-size:15px!important;line-height:1.75!important;color:#596158!important}.story-controls{margin-top:34px!important;display:flex!important;align-items:center!important;gap:12px!important}.story-controls>button{width:52px!important;height:52px!important;border-radius:50%!important;border:1px solid rgba(31,74,52,.20)!important;background:#fff!important;color:var(--sig-pine)!important;font-size:20px!important;transition:.25s!important}.story-controls>button:hover{background:var(--sig-pine)!important;color:#fff!important;transform:scale(1.05)}.story-dots button{width:7px!important;height:7px!important;border-radius:50%!important;background:#a8a99f!important}.story-dots button.active{width:25px!important;border-radius:999px!important;background:var(--sig-bark)!important}

/* Experiences rail + controls */
.experiences{background:linear-gradient(180deg,#ead9c6 0%,#f0e5d7 100%)!important}.experience-rail{gap:20px!important;padding-inline:max(36px,calc((100vw - 1240px)/2))!important;scroll-snap-type:x mandatory!important;scroll-behavior:smooth!important;scrollbar-width:none!important}.experience-rail::-webkit-scrollbar{display:none}.experience-card{flex-basis:min(390px,82vw)!important;height:560px!important;scroll-snap-align:center!important;box-shadow:var(--sig-shadow-soft)!important;transition:transform .35s ease,box-shadow .35s ease!important}.experience-card:hover{transform:translateY(-8px)!important;box-shadow:var(--sig-shadow)!important}.experience-card img{transition:transform .7s ease!important}.experience-card:hover img{transform:scale(1.045)!important}.experience-card>div{padding:30px!important;background:linear-gradient(transparent,rgba(12,31,22,.88))!important}.experience-card h3{font-family:var(--sig-display)!important;font-size:38px!important;line-height:.94!important}.experience-card.organic-a{clip-path:polygon(2% 4%,95% 0,100% 89%,90% 100%,0 95%,0 17%)!important}.experience-card.arch{border-radius:190px 26px 26px 26px!important}.experience-card.circle-top{border-radius:50% 50% 24px 24px/28% 28% 24px 24px!important}.experience-card.organic-b{clip-path:polygon(7% 0,100% 5%,96% 100%,0 94%,3% 16%)!important}.signature-rail-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:-58px;margin-bottom:30px;position:relative;z-index:4}.signature-rail-controls button{width:48px;height:48px;border-radius:50%;border:1px solid rgba(44,62,50,.18);background:rgba(255,253,248,.82);color:var(--sig-pine);font-size:21px;cursor:pointer;transition:.25s}.signature-rail-controls button:hover{background:var(--sig-pine);color:#fff}.signature-rail-controls span{font-size:10px;letter-spacing:.14em;color:var(--sig-bark);text-transform:uppercase;margin-right:5px}

/* School explorer */
.school-world{background:linear-gradient(145deg,#173d2c 0%,#244e38 58%,#63472f 140%)!important}.campus-explorer{grid-template-columns:340px 1fr!important;gap:18px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.11)!important;border-radius:32px!important;padding:18px!important;box-shadow:0 30px 80px rgba(8,26,18,.18)!important}.campus-tabs{border-radius:22px!important;overflow:hidden!important;background:rgba(9,34,22,.22)!important}.campus-tabs button{padding:18px 20px!important;border-bottom:1px solid rgba(255,255,255,.10)!important;background:transparent!important}.campus-tabs button.active{background:var(--sig-gold)!important;color:#4a331f!important}.campus-stage{min-height:600px!important;border-radius:24px!important;overflow:hidden!important;box-shadow:none!important}.campus-stage img#campusImage{transition:opacity .35s ease,transform .7s cubic-bezier(.2,.8,.2,1)!important}.campus-stage.is-switching img#campusImage{opacity:.35!important;transform:scale(1.045)!important}.campus-caption{padding:34px!important;max-width:680px!important}.campus-caption h3{font-size:clamp(48px,5vw,76px)!important}.campus-map-mini{margin-top:32px!important;border-radius:30px!important;overflow:hidden!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.11)!important}.map-wrap{border-radius:22px!important;overflow:hidden!important;margin:18px!important}

/* Journal masonry */
.field-journal{background:#f6f0e6!important}.journal-grid{gap:16px!important}.journal-card{border-radius:26px!important;overflow:hidden!important;box-shadow:var(--sig-shadow-soft)!important;min-height:330px!important}.journal-card--wide{min-height:420px!important}.journal-card--tall{min-height:560px!important;border-radius:120px 26px 26px 26px!important}.journal-card img{transition:transform .65s ease!important}.journal-card:hover img{transform:scale(1.045)!important}.journal-card span{background:rgba(16,47,33,.74)!important;backdrop-filter:blur(8px)!important;border-radius:999px!important;padding:8px 12px!important;margin:0 12px 12px!important;width:auto!important}

/* Student profile reminiscent of nature community circles */
.profile{background:linear-gradient(180deg,#f8f3e9,#efe7da)!important}.center-copy{max-width:930px!important}.circle-gallery{gap:32px!important;align-items:end!important}.circle-gallery figure{aspect-ratio:1/1!important;border-radius:50%!important;border:0!important;box-shadow:var(--sig-shadow-soft)!important;overflow:hidden!important}.circle-gallery figure:nth-child(1){border-radius:44% 56% 50% 50%/58% 45% 55% 42%!important;transform:rotate(-2deg)}.circle-gallery figure:nth-child(3){border-radius:56% 44% 48% 52%/42% 58% 44% 56%!important;transform:rotate(2deg)}

/* CTA + footer */
.cta{min-height:630px!important;display:grid!important;place-items:center!important}.cta-shade{background:linear-gradient(180deg,rgba(11,32,23,.55),rgba(18,38,28,.83))!important}.cta-copy h2{font-size:clamp(62px,8vw,112px)!important;line-height:.83!important;letter-spacing:-.05em!important}.cta-leaf{opacity:.16!important;filter:brightness(0) invert(1)!important}
.site-footer{background:linear-gradient(155deg,#102d21,#173d2c 58%,#4b3527 130%)!important;padding:86px 0 26px!important}.footer-botanical{opacity:.07!important;filter:brightness(0) invert(1)!important}.footer-top{padding-bottom:30px!important;border-bottom:1px solid rgba(255,255,255,.12)!important}.footer-brand img{width:70px!important;height:70px!important;background:#fff!important;border-radius:20px!important;padding:5px!important}.footer-brand h3{font-family:var(--sig-display)!important;font-size:32px!important;color:#fff!important}.footer-grid{grid-template-columns:1.25fr .75fr .75fr 1fr!important;gap:42px!important;padding:34px 0!important}.footer-grid h4{color:var(--sig-gold)!important}.footer-grid p,.footer-grid a{color:rgba(255,255,255,.72)!important;line-height:1.7!important}.footer-grid a:hover{color:#fff!important}.footer-bottom{font-size:11px!important;color:rgba(255,255,255,.58)!important}.footer-bottom b{color:#efd7aa!important}

/* Inner pages */
.inner-hero{padding:170px 0 110px!important;min-height:650px!important;background:linear-gradient(135deg,#eee4d4 0%,#f8f3e9 72%)!important}.inner-hero::before{content:"";position:absolute;left:-90px;bottom:-30px;width:330px;height:350px;background:url("sketches/fern-solid.svg") center/contain no-repeat;opacity:.06;transform:rotate(7deg)}.inner-hero .inner-grid{gap:78px!important;align-items:center!important}.inner-hero h1{font-size:clamp(66px,7.6vw,118px)!important;line-height:.82!important;letter-spacing:-.052em!important;color:var(--sig-pine)!important}.inner-visual{height:480px!important;border-radius:34px 34px 140px 34px!important;overflow:hidden!important;box-shadow:var(--sig-shadow)!important;transform:rotate(1.2deg)}.inner-visual img{width:100%!important;height:100%!important;object-fit:cover!important}.inner-visual .scribble{right:22px!important;bottom:18px!important;background:rgba(248,243,233,.92)!important;padding:6px 14px!important;border-radius:999px!important;color:var(--sig-bark)!important}.page-learning .inner-visual{border-radius:140px 34px 34px 34px!important}.page-levels .inner-visual{clip-path:polygon(4% 0,100% 7%,94% 100%,0 92%,2% 16%)!important;border-radius:0!important}.page-experiences .inner-visual{border-radius:50% 50% 34px 34px/24% 24% 34px 34px!important}.page-school .inner-visual{border-radius:34px 140px 34px 34px!important}.page-library .inner-visual{border-radius:140px 34px 140px 34px!important}

/* Generic inner content polish */
.editorial{gap:80px!important}.editorial>aside,.sticky-block{top:150px!important}.quote-block{background:#efe5d6!important;border-left:4px solid var(--sig-bark)!important;border-radius:0 24px 24px 0!important}.method-grid article,.curriculum-cards article,.trait-grid article,.facility-grid article,.calendar-notes article,.contact-grid article,.faq-grid details{border-color:rgba(49,66,53,.10)!important;box-shadow:0 11px 30px rgba(38,49,39,.05)!important;background:rgba(255,253,248,.75)!important;border-radius:22px!important}.method-grid article:nth-child(3n+1),.facility-grid article:nth-child(4n+1){border-radius:70px 22px 22px 22px!important}.method-grid article:nth-child(3n),.facility-grid article:nth-child(4n){border-radius:22px 22px 70px 22px!important}.level-stack article,.experience-list article{gap:58px!important;padding-block:68px!important}.level-stack article figure,.experience-list article figure{border-radius:32px!important;overflow:hidden!important;box-shadow:var(--sig-shadow-soft)!important}.level-stack article:nth-child(even) figure,.experience-list article:nth-child(even) figure{border-radius:110px 32px 32px 32px!important}.level-stack article:nth-child(odd) figure,.experience-list article:nth-child(odd) figure{border-radius:32px 32px 110px 32px!important}.profile-schedule-source img{border-radius:28px!important;box-shadow:var(--sig-shadow-soft)!important}

/* Motion system: stronger and clearly visible */
body.signature-motion [data-reveal]{opacity:0!important;filter:blur(7px)!important;transition:opacity .8s ease,transform 1.05s cubic-bezier(.16,.82,.28,1),clip-path 1.05s cubic-bezier(.16,.82,.28,1),filter .8s ease!important;transition-delay:var(--sig-delay,0ms)!important;will-change:transform,opacity,clip-path}
body.signature-motion [data-reveal="from-left"]{transform:translate3d(-92px,0,0)!important}
body.signature-motion [data-reveal="from-right"]{transform:translate3d(92px,0,0)!important}
body.signature-motion [data-reveal="from-top"]{transform:translate3d(0,-84px,0)!important}
body.signature-motion [data-reveal="from-bottom"]{transform:translate3d(0,84px,0)!important}
body.signature-motion [data-reveal="scale"]{transform:scale(.88)!important}
body.signature-motion [data-reveal="tilt-left"]{transform:translate3d(-30px,54px,0) rotate(-5deg) scale(.96)!important}
body.signature-motion [data-reveal="tilt-right"]{transform:translate3d(30px,54px,0) rotate(5deg) scale(.96)!important}
body.signature-motion [data-reveal="wipe-left"]{clip-path:inset(0 100% 0 0)!important;transform:scale(1.035)!important;filter:none!important}
body.signature-motion [data-reveal="wipe-right"]{clip-path:inset(0 0 0 100%)!important;transform:scale(1.035)!important;filter:none!important}
body.signature-motion [data-reveal].sig-in{opacity:1!important;filter:none!important;transform:none!important;clip-path:inset(0)!important}

/* Reveal decorative details separately */
.signature-ornament-pulse{animation:sig-float 7s ease-in-out infinite alternate}@keyframes sig-float{from{transform:translate3d(0,0,0) rotate(-2deg)}to{transform:translate3d(0,-12px,0) rotate(2deg)}}

/* Responsive */
@media(max-width:1180px){
 .quick-routes{grid-template-columns:repeat(3,1fr)!important}.quick-routes a:nth-child(n+4){border-top:1px solid var(--sig-line)!important}
 .stage-layout{grid-template-columns:1fr!important}.stage-layout>div:first-child{position:relative!important;top:auto!important}.stage-cards{grid-template-columns:repeat(3,1fr)!important}
 .story-slider{grid-template-columns:1fr!important}.story-visual{min-height:560px!important}.story-copy{padding:46px!important}
 .campus-explorer{grid-template-columns:280px 1fr!important}
 .drawer-shell{grid-template-columns:1fr!important}.drawer-feature{display:none!important}
 .footer-grid{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:900px){
 .shell{width:min(100% - 34px,1240px)!important}.shell-wide{width:min(100% - 22px,1420px)!important}
 .site-header{top:8px!important}.header-card{height:64px!important;border-radius:20px!important}.brand img{width:45px!important;height:45px!important}.brand b{font-size:17px!important}.brand small{display:none!important}.nav-ribbon{display:none!important}.header-action,.header-right{display:none!important}
 .hero{min-height:740px!important;height:86svh!important}.hero-grid{padding-top:130px!important}.hero h1{font-size:clamp(58px,15vw,96px)!important}.hero-side{display:none!important}.hero-copy>p{font-size:14px!important}.hero-leaf-a{width:220px!important}.hero-leaf-b{width:240px!important}
 .quick-routes{grid-template-columns:1fr 1fr!important;margin-top:-34px!important;width:calc(100% - 30px)!important}.quick-routes a{min-height:92px!important}.quick-routes a:last-child{grid-column:1/-1!important;border-top:1px solid var(--sig-line)!important}
 .split,.inner-hero .inner-grid,.editorial,.teacher-grid,.school-grid{grid-template-columns:1fr!important}.image-collage{min-height:510px!important}.img-organic{height:430px!important}.img-round{width:190px!important;height:190px!important}
 .pillar-grid,.stage-cards{grid-template-columns:1fr!important}.pillar{min-height:330px!important}.stage-card{height:450px!important}
 .story-slider{border-radius:26px!important}.story-visual{min-height:430px!important}.story-copy{padding:34px 26px!important}.story-tabs{margin-bottom:18px!important}.story-copy h3{font-size:42px!important}
 .campus-explorer{grid-template-columns:1fr!important;padding:12px!important}.campus-tabs{display:flex!important;overflow:auto!important;scrollbar-width:none!important}.campus-tabs button{flex:0 0 220px!important;border-right:1px solid rgba(255,255,255,.1)!important;border-bottom:0!important}.campus-stage{min-height:500px!important}.campus-map-mini{grid-template-columns:1fr!important}
 .experience-card{height:500px!important;flex-basis:78vw!important}.signature-rail-controls{margin-top:12px!important;justify-content:flex-start!important}
 .journal-grid{grid-template-columns:1fr 1fr!important}.journal-card--wide{grid-column:auto!important}.journal-card--tall{min-height:430px!important}
 .circle-gallery{grid-template-columns:1fr 1fr 1fr!important;gap:14px!important}
 .inner-hero{padding:128px 0 80px!important;min-height:auto!important}.inner-visual{height:360px!important}.inner-hero h1{font-size:clamp(56px,14vw,84px)!important}
 .footer-grid{grid-template-columns:1fr!important}.footer-top,.footer-bottom{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}
}
@media(max-width:600px){
 .section{padding:78px 0!important}.display{font-size:clamp(44px,13vw,64px)!important}.lead{font-size:20px!important}
 .quick-routes{grid-template-columns:1fr!important}.quick-routes a:last-child{grid-column:auto!important}.quick-routes a{border-right:0!important;border-bottom:1px solid var(--sig-line)!important}.quick-routes a:last-child{border-bottom:0!important}
 .hero{min-height:700px!important}.hero-grid{padding-top:112px!important}.hero h1{font-size:clamp(54px,16vw,82px)!important}.hero-copy .button-row{gap:8px!important}.hero-copy .btn{padding-inline:16px!important}
 .image-collage{min-height:440px!important}.img-organic{width:86%!important;height:390px!important}.img-round{width:150px!important;height:150px!important;right:0!important}
 .value-trio{grid-template-columns:1fr!important}.value-trio>div{border-right:0!important;border-bottom:1px solid var(--sig-line)!important}.value-trio>div:last-child{border-bottom:0!important}
 .story-visual{min-height:360px!important}.story-copy{padding:30px 22px!important}.story-copy h3{font-size:36px!important}.story-tabs button{font-size:8px!important}
 .experience-card{flex-basis:86vw!important;height:470px!important}
 .campus-stage{min-height:450px!important}.campus-caption{padding:24px!important}.campus-caption h3{font-size:44px!important}
 .journal-grid{grid-template-columns:1fr!important}.journal-card,.journal-card--tall,.journal-card--wide{min-height:360px!important;border-radius:24px!important}
 .circle-gallery{grid-template-columns:1fr!important}.circle-gallery figure{width:min(82vw,330px)!important;margin-inline:auto!important}
 .cta{min-height:560px!important}.cta-copy h2{font-size:clamp(54px,15vw,78px)!important}
 .inner-visual{height:300px!important;border-radius:24px 24px 84px 24px!important}.inner-hero{padding-top:110px!important}
 .drawer-links{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){body.signature-motion [data-reveal]{opacity:1!important;filter:none!important;transform:none!important;clip-path:none!important;transition:none!important}.signature-ornament-pulse{animation:none!important}}

/* QA refinements */
@media(min-width:1101px){
  .nav-ribbon{display:flex!important}
  .header-action.visit{display:inline-flex!important}
}
body.signature-motion [data-reveal="wipe-left"]{clip-path:none!important;transform:translate3d(-84px,0,0) scale(.96)!important}
body.signature-motion [data-reveal="wipe-right"]{clip-path:none!important;transform:translate3d(84px,0,0) scale(.96)!important}
body.signature-motion [data-reveal="wipe-left"].sig-in,
body.signature-motion [data-reveal="wipe-right"].sig-in{transform:none!important}
.site-footer [data-reveal]{opacity:1!important;filter:none!important;transform:none!important;clip-path:none!important;transition:none!important}
body.footer-visible .section-trail{opacity:0!important;pointer-events:none!important;transform:translate(-10px,-50%)!important}
.section-trail{transition:opacity .3s ease,transform .3s ease!important}
@media(max-width:600px){.story-copy h3{font-size:32px!important;line-height:.96!important;overflow-wrap:break-word!important}.story-tabs{padding-right:10px!important}}
