:root{--paper:#f2efe5;--ink:#343a2c;--gold:#a78d53;--line:#aaa08066;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);background-image:linear-gradient(#f2efe5d6,#f2efe5d6),url('canvas-hd.webp');background-repeat:repeat;background-size:auto,768px 768px;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.75}body:has(dialog[open]){overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:7px}button{border:0;background:none}p{margin:0 0 1.6rem}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1;margin:0}h2{font-size:clamp(3.5rem,6.8vw,7.6rem);letter-spacing:-.045em}h2 em{font-weight:300;color:var(--gold)}h3{font-size:2.45rem;letter-spacing:-.03em}header{position:absolute;top:0;width:100%;height:110px;display:flex;align-items:center;justify-content:space-between;padding:20px 4.3%;z-index:10;gap:30px}.brand{display:flex;align-items:center;gap:9px;flex-shrink:0}.brand img{width:47px;height:58px;object-fit:contain;mix-blend-mode:multiply}.brand span{font-family:var(--serif);font-weight:500;font-size:18px;line-height:1.05;letter-spacing:.045em}header nav{display:flex;gap:30px;font-size:14px}header nav a{position:relative}header nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--ink);transition:width .25s}header nav a:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:20px}.pill{border:1px solid var(--ink);border-radius:100px;display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:13px 23px;font-size:14px;transition:background .25s,color .25s,transform .25s}.pill:hover{background:var(--ink);color:var(--paper);transform:translateY(-3px)}.pill span{font-size:20px}.menu-toggle{width:32px;padding:5px 0;display:grid;gap:7px}.menu-toggle span{display:block;width:27px;height:1px;background:var(--ink)}.eyebrow,.section-label,.hero-bottom,.chapter-index{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:500}.eyebrow{margin-bottom:23px}.hero{min-height:850px;height:100svh;position:relative;display:flex;justify-content:center;align-items:flex-start;overflow:hidden}.hero-art{position:absolute;inset:0;background:url('hero.webp') center bottom/cover;mix-blend-mode:multiply;opacity:.86;transform:translateY(var(--hero-y,0px)) scale(1.03);will-change:transform}.hero-content{position:relative;text-align:center;padding-top:145px;z-index:2;max-width:900px}.hero h1{font-size:clamp(7rem,12vw,13rem);color:#917b47;line-height:.76;letter-spacing:-.065em;font-weight:300}.hero h1 span{display:block}.hero h1 span+span{margin-top:19px}.script-line{font-family:var(--serif);font-style:italic;font-size:clamp(1.8rem,2.9vw,3rem);margin:25px 0 9px}.hero-description{font-size:15px;line-height:1.65;margin-bottom:21px}.round-link{display:inline-flex;align-items:center;gap:15px;font-size:13px}.round-link i{font-style:normal;font-size:24px;border:1px solid #8f805f;width:45px;height:45px;border-radius:50%;display:grid;place-items:center;transition:transform .3s}.round-link:hover i{transform:translateY(7px)}.cloud{position:absolute;mix-blend-mode:multiply;opacity:.47;pointer-events:none;animation:float 12s ease-in-out infinite alternate}.cloud-left{width:330px;left:-110px;top:26%;transform:rotate(13deg)}.cloud-right{width:240px;right:-30px;top:16%;animation-delay:-5s}.hero-bottom{position:absolute;bottom:27px;left:4.3%;right:4.3%;display:flex;justify-content:space-between;align-items:center;font-size:10px;z-index:3}.hero-bottom button{font-size:12px;letter-spacing:.02em;display:flex;gap:12px;align-items:center}.chapter-index{position:fixed;top:47%;left:25px;z-index:8;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:9px;letter-spacing:.09em}.chapter-index strong{font-family:var(--serif);font-size:29px;font-weight:400;line-height:1}.chapter-dots{display:grid;gap:8px;margin:5px 0}.chapter-dots a{display:block;width:7px;height:7px;border:1px solid var(--gold);border-radius:50%;position:relative}.chapter-dots a:before{content:'';position:absolute;inset:-5px}.chapter-dots a.active{background:var(--gold)}.page-progress{position:fixed;left:0;top:0;height:2px;background:var(--gold);z-index:30;width:var(--progress,0%)}section:not(.hero){position:relative;padding:55px 9% 115px;min-height:760px;border-top:1px solid var(--line)}.section-label{display:flex;justify-content:space-between;margin-bottom:85px;font-size:11px}.story{display:grid;grid-template-columns:1.05fr .8fr;column-gap:10%}.story .section-label{grid-column:1/-1}.story-copy{padding-top:30px;max-width:460px}.ornament{display:block;color:var(--gold);font-family:var(--serif);font-size:65px;line-height:1;margin-bottom:28px}.large-copy{font-family:var(--serif);font-size:29px;line-height:1.3}.story-copy p:not(.large-copy){font-size:15px}.text-button{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--gold);padding:15px 0 12px;font-size:14px;width:100%;text-align:left;transition:color .25s}.text-button span{font-size:25px;font-weight:400}.text-button:hover{color:var(--gold)}.values{display:grid;grid-template-columns:1fr 1fr;gap:0 8%;background:#c9c29e14}.values .section-label{grid-column:1/-1}.values-intro>p:last-child{margin-top:30px;font-size:15px}.values-list{padding-top:25px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:22px 0}summary::-webkit-details-marker{display:none}summary .num{font-size:12px;color:var(--gold)}summary .value-title{font-family:var(--serif);font-size:26px;line-height:1.15}summary .plus{margin-left:auto;font-size:22px;color:var(--gold);transition:transform .3s}details[open] .plus{transform:rotate(45deg)}details p{font-size:15px;margin:0 15px 24px 35px;line-height:1.8}.events{display:grid;grid-template-columns:1fr .85fr;column-gap:12%}.events .section-label{grid-column:1/-1}.event-heading>p:last-child{margin-top:32px;font-size:15px}.event-content{padding-top:30px}.event-content>.eyebrow{border-bottom:1px solid var(--gold);padding-bottom:18px}.empty-events{font-family:var(--serif);font-size:31px;line-height:1.25;margin-bottom:25px}.event-content .pill{margin-bottom:45px}.past-events{font-size:14px}.past-events summary{justify-content:space-between}.event-card{padding:12px 0 27px}.event-card h3{font-size:34px;margin:15px 0}.event-card p{margin:0 0 16px}.event-card .meta{font-size:13px}.center-heading{text-align:center}.center-heading>p:last-child{margin-top:28px;font-size:15px}.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px}.partner-grid article{padding:0 35px;border-right:1px solid var(--line);text-align:center}.partner-grid article:first-child{padding-left:0}.partner-grid article:last-child{padding-right:0;border:0}.partner-num{display:block;font-family:var(--serif);font-size:72px;color:var(--gold);margin-bottom:20px;font-weight:300;line-height:1}.partner-grid h3{font-size:31px}.partner-grid p{font-size:14px;margin-top:22px}.partner-grid .text-button{text-align:left}.donate{background:#333b2e;color:#f3efe1;text-align:center}.donate .section-label{color:#d6ccb1}.donate-content{max-width:1000px;margin:auto}.donate-content>p:not(.eyebrow){max-width:590px;margin:32px auto;font-size:15px}.donate h2 em{color:#c8af74}.light{border-color:#c8af74;background:#c8af74;color:#26301f;min-width:180px}.light:hover{background:#e6d4a9;color:#26301f}.donate-note{display:block;margin:30px auto 0;font-size:13px;border-bottom:1px solid #b3a16e;padding:3px 0}.donate-note span{margin-left:14px}.donate-content p.donate-alt{font-size:13px;margin:15px auto 0;opacity:.85}.donate-alt a{text-decoration:underline}.join-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;max-width:950px;margin:65px auto 0}.join-grid p{font-size:14px;margin-top:20px}.join-grid p.small{font-size:12px;opacity:.7}.involve{display:flex;flex-direction:column;justify-content:center}.involve a{border-bottom:1px solid var(--line);padding:21px 0;display:flex;justify-content:space-between;font-size:15px}.involve a:hover{color:var(--gold)}footer{padding:60px 7% 25px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:35px;align-items:center}.footer-top p,.footer-top a{font-size:13px}.footer-top p{margin:0}.socials{display:flex;gap:25px;margin-top:12px}.footer-bottom{display:flex;justify-content:space-between;margin-top:50px;padding-top:20px;border-top:1px solid var(--line);font-size:11px}.skip{position:fixed;top:-100px;background:var(--paper);padding:15px;z-index:50}.skip:focus{top:0}dialog{border:0;color:var(--ink);background:var(--paper);background-image:linear-gradient(#f2efe5d6,#f2efe5d6),url('canvas-hd.webp');background-repeat:repeat;background-size:auto,768px 768px}dialog::backdrop{background:#1f241f88;backdrop-filter:blur(7px)}.reading-dialog{max-width:800px;width:calc(100% - 35px);max-height:85svh;padding:70px;border:1px solid var(--gold);box-shadow:0 30px 100px #1e251c30}.reading-dialog h2{font-size:58px;margin-bottom:28px}.reading-dialog p{font-size:16px}.reading-dialog .pill{margin-top:15px}.close{position:absolute;right:25px;top:15px;font-size:34px;line-height:1.3}.menu{position:fixed;inset:0 0 0 auto;height:100svh;max-height:none;width:min(620px,100%);max-width:none;margin:0;padding:70px 70px 40px}.menu nav{display:flex;flex-direction:column;margin:20px 0 40px}.menu nav a{font-family:var(--serif);font-size:clamp(2rem,5vh,3.7rem);line-height:1.4}.menu nav a:hover{color:var(--gold)}.menu>a{font-size:14px}.reveal{opacity:1;transform:none}.motion-ready .reveal{opacity:0;transform:translateY(32px);transition:opacity .9s,transform 1.1s cubic-bezier(.2,.7,.2,1)}.motion-ready .reveal.visible{opacity:1;transform:none}.motion-paused *{animation-play-state:paused!important}.motion-paused .reveal{opacity:1;transform:none;transition:none}.motion-paused .hero-art{transform:none!important}@keyframes float{from{translate:0 0}to{translate:25px -18px}}@media(min-width:1600px){.hero-content{padding-top:18vh}.hero h1{font-size:13rem}}@media(max-width:1050px){header nav{gap:18px}.chapter-index{display:none}section:not(.hero){padding-left:7%;padding-right:7%}.hero h1{font-size:clamp(7rem,15vw,11rem)}.story,.events{column-gap:7%}.header-actions .pill{gap:20px}.values{gap:0 6%}.partner-grid article{padding:0 20px}.partner-grid h3{font-size:28px}}@media(max-width:760px){header{height:85px;padding:16px 6%}header nav{display:none}.header-actions>.pill{display:none}.brand img{width:36px;height:42px}.brand span{font-size:16px}.hero{min-height:800px;max-height:1100px}.hero-content{padding:160px 20px 0}.hero .eyebrow{font-size:10px;letter-spacing:.12em}.hero h1{font-size:clamp(5.6rem,18vw,8.5rem)}.hero h1 span+span{margin-top:12px}.script-line{font-size:27px;margin-top:28px}.hero-description{font-size:14px;max-width:290px;margin:0 auto 22px}.hero-art{background-size:auto 78%;background-repeat:no-repeat;background-position:61% bottom;opacity:.7}.cloud-left{width:170px;left:-65px;top:15%}.cloud-right{width:150px;top:11%;right:-50px}.hero-bottom{bottom:20px;left:6%;right:6%;font-size:9px}.hero-bottom>span:first-child{display:none}.hero-bottom>span:last-child{margin-left:auto}.hero-bottom button{font-size:11px}section:not(.hero){min-height:0;padding:35px 7% 75px}.section-label{font-size:9px;margin-bottom:50px;gap:20px}.section-label span:last-child{text-align:right;max-width:48%}h2{font-size:clamp(3.5rem,11vw,5.2rem)}.story,.values,.events{display:block}.story-copy{max-width:none;padding-top:35px}.large-copy{font-size:27px}.ornament{font-size:48px;margin-bottom:20px}.values-list{margin-top:35px}.values-intro>p:last-child{font-size:14px}summary{padding:23px 0}summary .value-title{font-size:25px}.event-content{padding-top:35px}.partner-grid{grid-template-columns:1fr;margin-top:42px}.partner-grid article,.partner-grid article:first-child,.partner-grid article:last-child{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.partner-grid article:last-child{border:0}.partner-num{font-size:50px;margin-bottom:12px}.partner-grid p{max-width:370px;margin:20px auto}.partner-grid .text-button{max-width:370px;margin:auto}.donate-content>p:not(.eyebrow){font-size:14px}.join-grid{grid-template-columns:1fr;gap:30px;margin-top:45px}.footer-top{align-items:flex-start;flex-direction:column;gap:25px}.footer-bottom{gap:20px;flex-wrap:wrap;margin-top:35px}.footer-bottom span:first-child{width:100%}.footer-bottom a{margin-left:auto}.reading-dialog{padding:65px 25px 35px}.reading-dialog h2{font-size:43px}.menu{padding:70px 35px 30px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.hero-art{transform:none!important}}

/* Refined typography, tactile surface, and coordinated motion. */
.hero h1{font-family:var(--sans);font-size:clamp(5rem,10.2vw,10.25rem);font-weight:400;line-height:.98;letter-spacing:-.085em;color:#877242}
.hero h1 .title-line{display:block;overflow:hidden;padding:0 .09em .09em;margin:0;line-height:1.07}
.hero h1 .title-line+.title-line{margin-top:-.11em}
.hero h1 .title-line>span{display:block;margin:0;animation:title-arrive 1.35s cubic-bezier(.16,1,.3,1) both;animation-delay:.12s}
.hero h1 .title-line:nth-child(2)>span{animation-delay:.29s}
.hero-content>.eyebrow{animation:soft-arrive .9s ease both}
.hero-content>.script-line,.hero-content>.hero-description,.hero-content>.round-link{animation:soft-arrive 1.15s ease both;animation-delay:.55s}
.hero-content>.hero-description{animation-delay:.68s}.hero-content>.round-link{animation-delay:.8s}
.hero-art{transform:translate3d(var(--pointer-x,0px),calc(var(--hero-y,0px) + var(--pointer-y,0px)),0) scale(1.055);transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 78% 58%,#ffedaa38,transparent 48%);mix-blend-mode:soft-light;animation:light-breathe 10s ease-in-out infinite alternate}
.hero-bottom{background:#f2efe5c9;border:1px solid #bca77b33;padding:9px 16px;border-radius:2px;backdrop-filter:blur(8px)}
.section-label{position:relative;padding-bottom:17px}.section-label:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--line);transform-origin:left;transform:scaleX(1)}
.motion-ready .chapter .section-label:after{transform:scaleX(0);transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.motion-ready .chapter.in-view .section-label:after{transform:scaleX(1)}
.heading-word{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.09em;margin-bottom:-.09em}.heading-word>span{display:inline-block}
.motion-ready .reveal .heading-word>span{transform:translateY(110%) rotate(3deg);transition:transform 1.05s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--word-index,0)*45ms)}
.motion-ready .reveal.visible .heading-word>span{transform:translateY(0) rotate(0)}
.motion-ready .partner-grid article{opacity:0;transform:translateY(32px);transition:opacity .8s,transform 1s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--item-index,0)*140ms)}
.motion-ready .partner-grid.visible article{opacity:1;transform:translateY(0)}
.partner-grid article{transition:color .3s}.partner-num{transition:transform .7s cubic-bezier(.16,1,.3,1),color .4s}.partner-grid article:hover .partner-num{transform:translateY(-8px);color:var(--ink)}
.ornament{width:fit-content;animation:ornament-turn 30s linear infinite;animation-play-state:paused}.in-view .ornament{animation-play-state:running}
.pill{transform:translate3d(var(--magnet-x,0px),var(--magnet-y,0px),0);transition:background .25s,color .25s,transform .35s cubic-bezier(.2,.7,.2,1)}.pill:hover{transform:translate3d(var(--magnet-x,0px),calc(var(--magnet-y,0px) - 3px),0)}.pill span,.text-button span,.involve a span{display:inline-block;transition:transform .4s cubic-bezier(.16,1,.3,1)}.pill:hover span,.text-button:hover span,.involve a:hover span{transform:translate(3px,-3px)}
.involve a{position:relative}.involve a:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .5s}.involve a:hover:after{transform:scaleX(1)}
.menu[open] nav a{animation:soft-arrive .65s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--item-index,0)*45ms)}
.motion-paused .heading-word>span,.motion-paused .partner-grid article{opacity:1!important;transform:none!important;transition:none!important}.motion-paused .section-label:after{transform:scaleX(1)!important}.motion-paused .hero-content>*{animation:none!important;opacity:1!important;transform:none!important}.motion-paused .hero h1 .title-line>span{animation:none!important;transform:none!important}.motion-paused .pill{transform:none!important}
@keyframes title-arrive{from{transform:translateY(115%) rotate(4deg)}to{transform:translateY(0) rotate(0)}}
@keyframes soft-arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes light-breathe{from{opacity:.25}to{opacity:.8}}
@keyframes ornament-turn{to{rotate:360deg}}
@media(min-width:1600px){.hero h1{font-size:10.25rem}.hero-content{padding-top:16vh}}
@media(max-width:760px){.hero h1{font-size:clamp(3.9rem,13.8vw,6.7rem);letter-spacing:-.075em}.hero-content{padding-top:170px}.hero-bottom{left:6%;right:6%;padding:7px 10px}.hero-art{transform:translateY(var(--hero-y,0px)) scale(1.035)}.hero-content>.eyebrow{font-size:10px}.section-label{padding-bottom:13px}.heading-word{padding-right:.02em;margin-right:-.02em}}
@media(prefers-reduced-motion:reduce){.heading-word>span,.motion-ready .partner-grid article{opacity:1!important;transform:none!important}.motion-ready .chapter .section-label:after{transform:scaleX(1)}.hero h1 .title-line>span{transform:none!important}.hero-content>*{opacity:1!important;transform:none!important}.pill{transform:none!important}}

.motion-paused{scroll-behavior:auto}.motion-paused *{scroll-behavior:auto}html:has(.motion-paused){scroll-behavior:auto}
/* Animated natural scenery, kept behind content and clipped to its own chapter. */
.chapter{isolation:isolate}.chapter:not(.hero)>:not(.atmosphere){position:relative;z-index:1}
.atmosphere{position:absolute!important;inset:0;z-index:0;pointer-events:none;overflow:hidden;contain:layout paint;user-select:none}
.hero .atmosphere{z-index:1}.hero>.cloud{display:none}
.ambient-track{position:absolute;pointer-events:none;animation-duration:var(--duration);animation-delay:var(--delay);animation-iteration-count:infinite;animation-timing-function:linear;animation-play-state:paused}
.ambient-track img{display:block;width:100%;height:auto;object-fit:contain;animation-play-state:paused;pointer-events:none}
.chapter.in-view .ambient-track,.chapter.in-view .ambient-track img,.chapter.in-view .sun-rays{animation-play-state:running}
.ambient-cloud{width:clamp(180px,28vw,470px);left:-11%;top:10%;opacity:.32;mix-blend-mode:multiply;animation-name:cloud-drift}
.ambient-cloud:nth-of-type(even){left:auto;right:-10%;top:57%;width:clamp(150px,24vw,390px);animation-direction:reverse;opacity:.23}
.hero .ambient-cloud{top:18%;opacity:.48}.hero .ambient-cloud:nth-of-type(even){top:47%;opacity:.4}
.ambient-leaf{width:calc(23px + var(--i)*5px);left:var(--side);top:-70px;opacity:0;animation-name:leaf-fall}
.ambient-leaf img{animation:leaf-turn 5.8s ease-in-out infinite alternate;animation-delay:var(--delay);animation-play-state:paused}
.ambient-bird{left:-100px;top:calc(8% + var(--i)*4%);width:calc(44px - var(--i)*6px);opacity:0;animation-name:bird-cross}

.ambient-butterfly{width:33px;left:var(--side);bottom:13%;opacity:.65;animation-name:butterfly-float;animation-timing-function:ease-in-out}
.ambient-butterfly img{animation:butterfly-wing 1.2s ease-in-out infinite;animation-play-state:paused}
.sun-rays{position:absolute;inset:-50% -60% -30%;transform-origin:75% 5%;background:repeating-conic-gradient(from 155deg at 75% 5%,transparent 0deg 7deg,#d7b86d24 8deg 10deg,transparent 12deg 21deg);mask-image:radial-gradient(ellipse at 75% 5%,#0008 5%,#000 27%,transparent 68%);opacity:.5;animation:divine-rays 18s ease-in-out infinite alternate;animation-play-state:paused;pointer-events:none}
.donate .sun-rays{background:repeating-conic-gradient(from 155deg at 75% 5%,transparent 0deg 8deg,#ffe6a523 9deg 11deg,transparent 13deg 23deg);opacity:.8}
.donate .ambient-cloud{mix-blend-mode:screen;opacity:.08}.donate .ambient-bird{filter:sepia(1) brightness(2)}
.motion-dock{display:flex;align-items:center}.motion-docked .motion-dock{position:fixed;bottom:22px;right:25px;z-index:40;background:#f2efe5ef;border:1px solid #aa956a66;border-radius:40px;padding:9px 17px;box-shadow:0 3px 20px #343a2c12;backdrop-filter:blur(10px)}
/* Move the dock out of the hero's clipped stacking context. */
body>.motion-dock{position:fixed;bottom:22px;right:25px;z-index:40;background:#f2efe5f2;border:1px solid #aa956a66;border-radius:40px;padding:9px 17px;box-shadow:0 3px 20px #343a2c12}
body>.motion-dock button{font-size:12px;display:flex;gap:12px;align-items:center}
.motion-paused .atmosphere *,.tab-inactive .atmosphere *{animation-play-state:paused!important}
@keyframes cloud-drift{0%,100%{transform:translate3d(-15px,8px,0)}50%{transform:translate3d(95px,-20px,0)}}
@keyframes leaf-fall{0%{transform:translate3d(0,-30px,0);opacity:0}8%{opacity:.42}35%{transform:translate3d(35px,280px,0)}65%{transform:translate3d(-18px,600px,0);opacity:.42}92%{opacity:.3}100%{transform:translate3d(45px,1050px,0);opacity:0}}
@keyframes leaf-turn{0%{transform:rotate(-25deg) rotateY(-35deg)}100%{transform:rotate(100deg) rotateY(65deg)}}
@keyframes bird-cross{0%{transform:translate3d(-90px,15px,0);opacity:0}6%{opacity:.42}35%{transform:translate3d(43vw,-16px,0);opacity:.42}70%{transform:translate3d(110vw,-45px,0);opacity:0}100%{transform:translate3d(110vw,-45px,0);opacity:0}}

@keyframes butterfly-float{0%,100%{transform:translate3d(0,0,0) rotate(-12deg)}25%{transform:translate3d(25px,-55px,0) rotate(7deg)}50%{transform:translate3d(-12px,-110px,0) rotate(-9deg)}75%{transform:translate3d(30px,-45px,0) rotate(13deg)}}
@keyframes butterfly-wing{0%,100%{transform:scaleX(.94)}50%{transform:scaleX(.42)}}
@keyframes divine-rays{0%{transform:rotate(-7deg);opacity:.2}50%{opacity:.62}100%{transform:rotate(7deg);opacity:.35}}
@media(max-width:760px){.ambient-cloud{width:220px;left:-130px;opacity:.25}.ambient-cloud:nth-of-type(even){right:-125px;width:210px;opacity:.2}.ambient-leaf{width:23px}.ambient-track[style*="--i: 2"],.ambient-track[style*="--i: 3"]{display:none}.ambient-bird{width:30px}.ambient-butterfly{width:25px;bottom:7%}.sun-rays{opacity:.3}.motion-docked .motion-dock,body>.motion-dock{right:14px;bottom:14px;padding:7px 12px}}
@media(prefers-reduced-motion:reduce){.atmosphere .ambient-leaf,.atmosphere .ambient-bird,.atmosphere .ambient-butterfly{display:none}.atmosphere *{animation:none!important}.sun-rays{opacity:.18}}

/* Independent flight choreography: central butterfly loops, broad feather drift. */
.ambient-butterfly{left:50%;top:53%;bottom:auto;opacity:.55;animation-name:butterfly-orbit;animation-direction:var(--orbit-direction);animation-duration:var(--duration);animation-timing-function:cubic-bezier(.45,0,.55,1)}
.ambient-butterfly:nth-child(even){top:64%}
.hero .ambient-butterfly{top:68%}
.ambient-leaf{left:var(--side);width:calc(19px + var(--i)*3px);animation-name:feather-descent}
.ambient-leaf img{animation-name:feather-rock;animation-duration:6.4s;transform-origin:50% 40%}
.ambient-bird{width:calc(57px - var(--i)*7px)}
.bird-flap{display:block;width:100%;aspect-ratio:3/4;background:url('bird-flap.webp') 0% 50%/400% 100% no-repeat;animation:bird-flap-frames var(--flap-duration,1s) step-end infinite;animation-delay:var(--delay);animation-play-state:paused}
.chapter.in-view .bird-flap{animation-play-state:running}
@keyframes bird-flap-frames{0%,100%{background-position:0% 50%}25%{background-position:33.333333% 50%}50%{background-position:66.666667% 50%}75%{background-position:100% 50%}}
@keyframes butterfly-orbit{
 0%,100%{transform:translate3d(-17vw,12px,0) rotate(-16deg)}
 12.5%{transform:translate3d(-10vw,-68px,0) rotate(8deg)}
 25%{transform:translate3d(2vw,-28px,0) rotate(18deg)}
 37.5%{transform:translate3d(15vw,-83px,0) rotate(-7deg)}
 50%{transform:translate3d(20vw,8px,0) rotate(12deg)}
 62.5%{transform:translate3d(10vw,79px,0) rotate(-18deg)}
 75%{transform:translate3d(-2vw,24px,0) rotate(-9deg)}
 87.5%{transform:translate3d(-14vw,76px,0) rotate(8deg)}
}
@keyframes feather-descent{
 0%{transform:translate3d(0,-50px,0);opacity:0}
 8%{opacity:.32}
 25%{transform:translate3d(var(--sway),calc(var(--fall-distance,1000px)*.25),0)}
 50%{transform:translate3d(calc(var(--sway)*-.55),calc(var(--fall-distance,1000px)*.5),0);opacity:.32}
 75%{transform:translate3d(calc(var(--sway)*.75),calc(var(--fall-distance,1000px)*.75),0)}
 92%{opacity:.24}
 100%{transform:translate3d(calc(var(--sway)*-.3),var(--fall-distance,1000px),0);opacity:0}
}
@keyframes feather-rock{0%{transform:rotate(-40deg) rotateY(-15deg)}50%{transform:rotate(12deg) rotateY(20deg)}100%{transform:rotate(55deg) rotateY(-10deg)}}
@media(max-width:760px){.ambient-butterfly{top:57%;left:50%;bottom:auto;width:25px}.hero .ambient-butterfly{top:68%}.ambient-leaf{width:19px}.ambient-bird{width:42px}}

/* Amplified cursor depth; illustration and foreground move on separate planes. */
@media(min-width:761px) and (hover:hover) and (pointer:fine){
 .hero-art{inset:-30px;transform:translate3d(var(--pointer-x,0px),calc(var(--hero-y,0px) + var(--pointer-y,0px)),0) scale(1.14);transition:transform .8s cubic-bezier(.16,1,.3,1)}
 .hero h1{transform:translate3d(calc(var(--pointer-x,0px)*-.24),calc(var(--pointer-y,0px)*-.24),0);transition:transform .95s cubic-bezier(.16,1,.3,1);will-change:transform}
 .hero>.atmosphere{transform:translate3d(calc(var(--pointer-x,0px)*.4),calc(var(--pointer-y,0px)*.4),0);transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
}
.motion-paused .hero h1,.motion-paused .hero>.atmosphere{transform:none!important}
@media(prefers-reduced-motion:reduce){.hero h1,.hero>.atmosphere{transform:none!important}}
