:root{--paper:#eeeade;--forest:#202c23;--copper:#aa4e36;--muted:#a8ab9d;--rule:rgba(232,230,215,.2);--reading:Georgia,'Times New Roman',serif;--label:Arial,Helvetica,sans-serif}
html{scroll-padding-top:90px}body{background:#101910}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #b36544;outline-offset:6px}.skip-link{position:fixed;left:20px;top:-100px;z-index:200;background:var(--paper);color:var(--forest);padding:12px 20px}.skip-link:focus{top:15px}
body>nav{padding:24px 4.5vw;transition:background .4s,padding .4s;font-family:var(--label);font-size:11px;letter-spacing:.07em}body>nav.scrolled{padding-top:16px;padding-bottom:16px;background:rgba(19,28,20,.94);backdrop-filter:blur(14px)}body>nav .logo{font-size:32px;letter-spacing:-.06em}body>nav ul{gap:30px}body>nav .nav-contact{border-bottom:1px solid #eeeadc77;padding-bottom:5px}.wrap{width:min(1280px,calc(100% - 9vw))}
.stage{height:100svh;min-height:700px;background:#182316;border:0}.stage .bg{opacity:.22;filter:blur(15px) saturate(.65)!important}.stage .ground{opacity:.15!important}.stage .glow{background:radial-gradient(ellipse at 50% 40%,#94975e30,transparent 62%)!important}.stage .vignette{background:linear-gradient(180deg,#0c190730,transparent 30%,#0d190aa0)}.stage .spores{opacity:.45}.stage #glwrap{z-index:2;inset:0 0 4%}.stage .hero-word{position:absolute;top:8%;left:0;right:0;z-index:1;text-align:center;font-size:clamp(120px,23vw,340px);font-family:'Fable Dust',serif;font-weight:400;letter-spacing:-.06em;line-height:1;color:#e9e5d3;opacity:.15;pointer-events:none}.stage .hero-caption{position:absolute;z-index:3;left:4.5vw;bottom:8%;max-width:270px;pointer-events:none}.hero-caption p{font-family:var(--reading);font-size:20px;line-height:1.4;color:#eae4d5}.hero-caption .micro{font:10px/1.5 var(--label);letter-spacing:.17em;margin-bottom:15px;color:#bfc4b0}.stage .hero-index{position:absolute;right:4.5vw;bottom:8%;z-index:4;pointer-events:auto;font:10px/1.6 var(--label);letter-spacing:.15em;border-bottom:1px solid #c8cbbb;padding-bottom:10px}.stage .hint{font-family:var(--label);font-size:10px;letter-spacing:.14em;bottom:5%;z-index:3;color:#bcc8aa}.stage .label{font-size:25px;bottom:11%;z-index:3}.stage .hero-number{position:absolute;left:4.5vw;top:42%;font:10px var(--label);letter-spacing:.2em;writing-mode:vertical-rl;color:#b5c3a1}
section{padding:110px 0}.eyebrow{font:10px/1.5 var(--label);letter-spacing:.16em}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:end}.section-heading h2{font-size:clamp(42px,6vw,90px);max-width:10ch}.section-heading .lede{font:20px/1.55 var(--reading);max-width:40ch;margin:0 0 8px}#worlds{background:var(--paper);color:var(--forest);position:relative}#worlds .eyebrow{color:#68705c}#worlds .lede{color:#59604f}#worlds .section-kicker{display:flex;justify-content:space-between;border-top:1px solid #273b292c;padding-top:15px;margin-bottom:55px}.section-kicker span{font:10px var(--label);letter-spacing:.13em}.filters{display:flex;flex-wrap:wrap;gap:6px;margin-top:46px}.filters button{font:11px var(--label);padding:10px 18px;border:1px solid #26382b30;border-radius:30px;color:#3b4b39;transition:background .2s}.filters button[aria-pressed=true]{background:var(--forest);color:var(--paper)}.filters button:hover{border-color:var(--forest)}.list{margin-top:22px;border:0}.list>a{display:grid;grid-template-columns:45px 1fr 200px 28px;align-items:center;gap:25px;padding:27px 6px;border-top:1px solid #26382b30;border-bottom:0;transition:padding .25s,background .25s}.list>a:last-child{border-bottom:1px solid #26382b30}.list>a:hover{padding-left:18px;background:#dcdccc}.list>a[hidden]{display:none}.list>a:hover .nm{font-style:normal;color:#a24c35}.list .nm{font-size:clamp(25px,3vw,42px);line-height:1.1}.list .st{font:10px/1.5 var(--label);letter-spacing:.04em;white-space:normal;color:#606752}.list .row-index{font:10px var(--label);color:#7c846c}.list .row-arrow{font:24px var(--reading);color:#6b735b}
.featured{background:#202c23;padding:95px 0;color:var(--paper)}.featured .feature-intro{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.featured h2{font-size:clamp(36px,5vw,62px)}.featured .feature-intro p{font:16px var(--reading);max-width:25ch;color:#c8cbb9}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.feature-card{display:block}.feature-art{height:360px;position:relative;overflow:hidden;background:#131b14;border:1px solid #a4ad8629}.feature-art .specimen{position:absolute;inset:0;transition:transform .8s}.feature-card:hover .specimen{transform:scale(1.07) rotate(5deg)}.feature-art .plate-mark{position:absolute;left:22px;top:20px;font:10px var(--label);letter-spacing:.1em;z-index:2}.feature-art .plate-label{position:absolute;bottom:18px;right:20px;font:italic 14px var(--reading)}.feature-info{display:flex;justify-content:space-between;border-bottom:1px solid var(--rule);padding:22px 0;gap:15px}.feature-info h3{font-family:'Fable Dust',serif;font-weight:400;font-size:30px;line-height:1.1}.feature-info p{font:14px/1.5 var(--reading);color:#c2c6b3;margin-top:10px}.feature-info>span{font:26px var(--reading)}
.specimen{isolation:isolate;display:grid;place-items:center;min-height:300px;background:radial-gradient(ellipse at 50% 40%,#8c92752b,transparent 62%)}.specimen:before{content:'';position:absolute;inset:12%;border:1px solid #dce0c522;border-radius:50%}.specimen .petal-study{position:absolute;left:50%;top:49%;width:22%;height:35%;transform-origin:50% 100%;border-radius:80% 0 70% 20%;background-image:linear-gradient(120deg,#edb18520,#3b0d0888),url('/assets/rose-texture.jpg');background-size:cover;box-shadow:inset 1px 0 0 #f6ddb76b,0 6px 14px #0003;transform:translate(-50%,-100%) rotate(calc(var(--i)*45deg));mix-blend-mode:screen;opacity:.8}.specimen .stem-study{position:absolute;width:1px;height:28%;top:53%;left:50%;background:linear-gradient(#d4d4a9,#828c4650);transform:rotate(-10deg);transform-origin:top}.specimen .specimen-letter{font:50px 'Fable Dust',serif;position:relative;z-index:2;background:#182017;border:1px solid #c8ceb84a;display:grid;place-items:center;width:75px;height:75px;border-radius:50%;color:#e8e6d2}.specimen[data-kind=worlds]{filter:hue-rotate(23deg)}.specimen[data-kind=services]{filter:hue-rotate(65deg)}
#work{background:#e4e3d5;color:var(--forest)}#work .eyebrow,#work .lane .who{color:#657059}#work h2{font-size:clamp(42px,6vw,82px);max-width:13ch}.lanes{gap:0 65px;margin-top:65px;counter-reset:lanes}.lane{padding:30px 0 40px;border-color:#24392833;counter-increment:lanes}.lane .who{font:10px var(--label);letter-spacing:.15em;display:flex;justify-content:space-between}.lane .who:after{content:'0'counter(lanes);font:10px var(--label)}.lane h3{font-size:36px;line-height:1.18;max-width:18ch;margin-top:25px}.lane p{font:17px/1.65 var(--reading);color:#55604e;max-width:43ch;margin-top:20px}.lane a{font:11px var(--label);letter-spacing:.04em;color:var(--forest);border-color:#263c2a55;padding-bottom:6px;margin-top:24px}#max{background:#182419}#max .founder{gap:10vw}#max h2{font-size:clamp(50px,7vw,100px)}.founder p{font:19px/1.65 var(--reading);color:#c9ccbb}.founder dl{font:12px/1.6 var(--label)}.founder dt{font-size:10px;letter-spacing:.08em}.founder dl div{padding:20px 0;border-color:var(--rule)}.contact{padding:120px 0;background:#b55238;color:#f4eadb}.contact .eyebrow,.contact .small{color:#efcfb9}.contact h2{font-size:clamp(48px,7vw,110px);max-width:13ch}.contact a.mail{font:clamp(23px,4vw,50px)/1.3 var(--reading);border-color:#f1d6be80;margin-top:40px}.contact .small{font:15px/1.7 var(--reading)}body>footer{font:10px/1.6 var(--label);letter-spacing:.04em;padding-top:32px;padding-bottom:36px;align-items:center}#snd{font:10px var(--label);background:#172116e6;color:#dde2ca;padding:12px 17px;border-color:#b5c69e3b;bottom:20px;right:22px;backdrop-filter:blur(10px)}
.panel{background:#182219}.panel .inner{width:min(1100px,calc(100% - 9vw));padding-top:120px}.panel .tag{font:10px var(--label);letter-spacing:.15em}.panel h2{font-size:clamp(48px,9vw,120px)}.panel .body p{font:19px/1.65 var(--reading);color:#d1d3c1}.panel dl{font:12px/1.6 var(--label)}.panel .body{gap:8vw}.panel dl div{padding:17px 0;border-color:var(--rule)}.panel .cta a{font:12px var(--label);padding:17px 24px}.panel .close{font:11px var(--label);border-radius:0;padding:14px 21px;top:26px;right:4.5vw}.panel .mini{left:4.5vw;top:25px}.panel .nextprev{font:12px var(--label)}
/* Shared brand chapters */
body.chapter{background:var(--paper);color:var(--forest);font:19px/1.65 var(--reading);text-transform:lowercase}.chapter header,.chapter main,.chapter footer{max-width:none;padding:0;margin:0}.chapter header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;border-bottom:1px solid #243b2930;background:var(--paper)}.chapter header>a:first-child{font:32px 'Fable Dust',serif;letter-spacing:-.05em}.chapter header>a:last-child{font:11px var(--label)}.chapter .chapter-hero{display:grid;grid-template-columns:1.2fr 1fr;min-height:640px;border-bottom:1px solid #253c2b33}.chapter .chapter-heading{padding:65px 5vw 65px 4.5vw;display:flex;flex-direction:column;justify-content:center}.chapter .breadcrumb{font:10px var(--label);letter-spacing:.06em;margin-bottom:55px}.chapter .eyebrow{color:#677259;margin:0}.chapter h1{font:clamp(52px,7.5vw,112px)/1.02 'Fable Dust',serif;letter-spacing:-.04em;max-width:12ch;margin:22px 0 35px;overflow-wrap:normal}.chapter .intro{font:23px/1.4 var(--reading);max-width:28ch;margin:0;color:#56634d}.chapter .chapter-plate{position:relative;background:#1a271c;color:var(--paper);overflow:hidden;display:flex;flex-direction:column;justify-content:center}.chapter-plate>.specimen{height:100%;position:absolute;inset:0}.chapter-plate .plate-top,.chapter-plate .plate-bottom{position:absolute;left:35px;right:35px;display:flex;justify-content:space-between;z-index:3;font:10px var(--label);letter-spacing:.1em}.chapter-plate .plate-top{top:30px}.chapter-plate .plate-bottom{bottom:30px}.chapter .chapter-content{padding:85px 4.5vw 100px;display:grid;grid-template-columns:1.2fr 1fr;gap:9vw}.chapter .copy{max-width:690px}.chapter .copy>p{font:20px/1.75 var(--reading);margin:0 0 25px}.chapter .copy>p:first-child:first-letter{float:left;font:72px/1 'Fable Dust',serif;margin-right:10px;color:#9c5036}.chapter dl{font:12px/1.6 var(--label);margin:0 0 35px;border-color:#263b2933}.chapter dl div{padding:18px 0;border-color:#263b2933;grid-template-columns:80px 1fr}.chapter dt{color:#627157}.chapter .actions{display:flex;flex-direction:column;gap:10px}.chapter .actions a{font:12px/1.4 var(--label);padding:18px 22px;text-decoration:none;border:1px solid #253e323b;border-radius:0}.chapter .actions a:first-child{background:var(--forest);color:var(--paper)}.chapter .actions a:hover{background:#b4563e;color:#fff4e1}.chapter .garden-link{font:12px var(--label);display:inline-block;margin-top:35px}.chapter footer{background:#1b281e;color:#e6e7d5;padding:65px 4.5vw 30px}.chapter footer h2{font:48px 'Fable Dust',serif;margin:0 0 30px}.chapter footer nav{display:grid;grid-template-columns:repeat(4,1fr);gap:0 35px;margin:0}.chapter footer nav a{font:15px 'Fable Dust',serif;padding:12px 0;border-bottom:1px solid #e8e9d526;text-decoration:none}.chapter footer>p{font:11px var(--label);margin:50px 0 0;color:#b7bfa7}.chapter a{text-underline-offset:5px}
@media(min-width:1500px){.stage #glwrap{inset:-5% 0 0}.feature-art{height:430px}}
@media(max-width:760px){body>nav{padding:20px 5vw}.stage{min-height:650px}.stage .hero-word{top:20%;font-size:30vw}.stage .hero-caption{bottom:13%;max-width:180px}.hero-caption p{font-size:17px}.hero-caption .micro{font-size:8px;margin-bottom:10px}.stage .hero-index{bottom:6%;font-size:9px}.stage .hint{left:5vw;transform:none;bottom:6%;font-size:8px}.stage .label{bottom:24%;font-size:20px}.stage .hero-number{display:none}.stage #glwrap{inset:-9% 0 2%}section{padding:72px 0}.section-heading{grid-template-columns:1fr;gap:26px}.section-heading h2{font-size:56px;max-width:12ch}.section-heading .lede{font-size:18px}#worlds .section-kicker{margin-bottom:35px}.section-kicker span{font-size:8px}.filters{gap:5px;margin-top:34px}.filters button{font-size:10px;padding:9px 12px}.list>a{grid-template-columns:22px 1fr 18px;gap:13px;padding:23px 0}.list .nm{font-size:29px}.list .st{grid-column:2;grid-row:2;margin-top:-6px;font-size:9px}.list .row-arrow{grid-column:3;grid-row:1/3}.featured{padding:65px 0}.featured .feature-intro{display:block}.featured .feature-intro p{margin-top:20px;font-size:16px}.feature-grid{grid-template-columns:1fr;gap:40px}.feature-art{height:350px}.feature-info h3{font-size:32px}.lanes{grid-template-columns:1fr;margin-top:40px}.lane h3{font-size:34px}.founder dl div{grid-template-columns:90px 1fr}.contact{padding:80px 0}.contact h2{font-size:56px}.contact a.mail{font-size:28px}body>footer{padding-bottom:90px}#snd{padding:10px 13px}.panel .body{grid-template-columns:1fr}.panel .body p{font-size:18px}.panel .nextprev{gap:20px}.panel .cta{gap:10px}.panel .cta a{padding:14px 18px}.chapter .chapter-hero{grid-template-columns:1fr;min-height:0}.chapter .chapter-heading{padding:35px 6vw 45px}.chapter .breadcrumb{margin-bottom:35px}.chapter h1{font-size:60px;max-width:12ch}.chapter .intro{font-size:21px}.chapter .chapter-plate{height:360px}.chapter .chapter-content{grid-template-columns:1fr;padding:55px 6vw 65px;gap:35px}.chapter .copy>p{font-size:18px}.chapter header{height:75px;padding:0 6vw}.chapter footer{padding:50px 6vw 30px}.chapter footer nav{grid-template-columns:1fr 1fr;gap:0 20px}.chapter footer nav a{font-size:14px}.chapter-plate .plate-top,.chapter-plate .plate-bottom{left:25px;right:25px;font-size:9px}.chapter dl div{grid-template-columns:80px 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.specimen{transform:none!important}}
@media(max-width:420px){body>nav{font-size:10px}body>nav ul{gap:14px}body>nav .logo{font-size:29px}.chapter h1{font-size:clamp(43px,14vw,60px);overflow-wrap:anywhere}.stage .hero-index{bottom:9%}.stage .hint{bottom:9%}}

/* Distant California hills remain behind the interactive rose and its flight path. */
.stage .bg{background-image:url('/assets/california-hills.jpg');background-size:cover;background-position:center 46%;opacity:1;filter:saturate(.78) brightness(.78)!important}
.stage .ground{opacity:0!important}.stage .spores{opacity:.16}.stage .glow{opacity:.25}
.stage .vignette{background:linear-gradient(180deg,rgba(16,28,19,.54),rgba(21,32,22,.05) 32%,rgba(18,29,18,.08) 52%,rgba(13,25,16,.84) 100%)}
.stage .hero-word{opacity:.09}.stage .hero-number{color:#e4e5d6}.stage .hero-caption,.stage .hero-index,.stage .hint{text-shadow:0 1px 12px #101c13}
@media(max-width:760px){.stage .bg{background-position:46% center}.stage .hero-word{opacity:.12}}

.consultant .chapter-plate{background:#5b3027}.consultant-monogram{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:'Fable Dust',Georgia,serif;font-size:clamp(130px,19vw,270px);line-height:1;color:#e8dac0;letter-spacing:-.08em}.consultant-monogram span{font:10px/1.5 Arial,sans-serif;letter-spacing:.14em;margin-top:30px}.consultant .consultant-work{margin:0;padding:70px max(5vw,24px);border-top:1px solid #26382b30;background:#e3dfd2}.consultant-work h2{font-size:clamp(38px,5vw,65px);margin:20px 0}.consultant-work p{font:18px/1.6 Georgia,serif;color:#59604f}.consultant .chapter-heading .intro{max-width:18ch}
/* A botanical still life: artwork stays quiet; plucked petals move independently. */
.stage #glwrap{pointer-events:none;perspective:1100px}.rose-art{position:absolute;height:88%;aspect-ratio:2/3;left:50%;top:6%;transform:translateX(-50%);pointer-events:none}.rose-botanical{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 18px 28px #11170d35);transform-origin:50% 85%}.rose-targets{position:absolute;inset:0}.rose-target{position:absolute;width:20%;height:12%;transform:translate(-50%,-50%);border:0;border-radius:50%;background:transparent;cursor:grab;pointer-events:auto;touch-action:none}.rose-target:active{cursor:grabbing}.rose-target:hover{background:radial-gradient(ellipse,#ffe8bf12,transparent 68%)}.rose-target:focus-visible{outline:1px solid #f4e8d4;outline-offset:0;background:#f3e3bc15}.rose-flight{position:fixed;z-index:150;pointer-events:none;transform-origin:50% 65%;will-change:transform,opacity}.rose-reset{position:absolute;left:50%;bottom:2%;transform:translateX(-50%);pointer-events:auto;font:9px Arial,sans-serif;letter-spacing:.12em;color:#eeeade;background:#18251be0;border:1px solid #ede4cd44;padding:9px 14px;border-radius:20px}.rose-reset[hidden]{display:none}.stage .hero-word{opacity:.075}.stage .spores{opacity:.08}.stage .bg{filter:saturate(.68) brightness(.68)!important}
@media(max-width:760px){.rose-art{height:76%;top:13%;max-width:105vw}.rose-reset{bottom:0}.stage .hero-word{top:14%;opacity:.1}}
@media(prefers-reduced-motion:reduce){.rose-botanical{animation:none}}
.stage #gl{display:none}.rose-botanical{animation:botanical-breath 14s ease-in-out infinite}@keyframes botanical-breath{0%,100%{transform:rotate(-.6deg) translateY(0)}50%{transform:rotate(.6deg) translateY(-4px)}}@media(prefers-reduced-motion:reduce){.rose-botanical{animation:none}}
/* Scroll score: the landscape travels slowly, the rose recedes, content arrives in phrases. */
.motion-ready .stage .rose-art{transform:translateX(-50%) translateY(calc(var(--scroll-depth,0)*170px)) rotate(calc(var(--scroll-depth,0)*-7deg)) scale(calc(1 - var(--scroll-depth,0)*.16));opacity:calc(1 - var(--scroll-depth,0)*.65);transform-origin:50% 80%}
.motion-ready .stage .bg{translate:0 calc(var(--scroll-depth,0)*95px)}
.motion-ready .stage .hero-word{translate:0 calc(var(--scroll-depth,0)*55px)}
.motion-ready .stage .hero-caption,.motion-ready .stage .hero-index,.motion-ready .stage .hint{opacity:clamp(0,calc(1 - var(--scroll-depth,0)*2.8),1)}
.motion-ready .motion-reveal{opacity:0;translate:0 28px;transition:opacity .85s cubic-bezier(.2,.65,.2,1),translate 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--entrance-delay,0ms)}
.motion-ready .motion-reveal.motion-entered,.motion-ready .motion-reveal:focus-within{opacity:1;translate:0 0}
.motion-ready .feature-art .specimen,.motion-ready .chapter-plate>.specimen{translate:0 var(--plate-drift,0px)}
.motion-ready body>nav:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:#d7b892;transform:scaleX(var(--reading-progress,0));transform-origin:left;opacity:.65;pointer-events:none}
@media(max-width:760px){.motion-ready .stage .rose-art{transform:translateX(-50%) translateY(calc(var(--scroll-depth,0)*90px)) rotate(calc(var(--scroll-depth,0)*-4deg)) scale(calc(1 - var(--scroll-depth,0)*.1))}.motion-ready .motion-reveal{translate:0 18px}}
@media(prefers-reduced-motion:reduce){.motion-reveal{opacity:1!important;translate:none!important}.stage .bg,.stage .hero-word{translate:none!important}}
/* Articulated bloom: the stem, spiral heart and ten petal layers are independent. */
.rose-art{--bloom:0;perspective:900px}.rose-art .rose-botanical{clip-path:inset(47% 0 0);animation:none}.rose-heart{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;clip-path:inset(0 0 49%);transform-origin:56% 28%;transform:scale(calc(.28 + var(--bloom)*.36));pointer-events:none;z-index:3}
.rose-inner{position:absolute;inset:0;pointer-events:none;z-index:2}.rose-inner img{position:absolute;left:56%;top:28%;width:33%;height:auto;transform-origin:50% 92%;transform:translate(-50%,-92%) rotate(var(--angle)) rotateX(calc(72deg - var(--bloom)*58deg)) scale(calc(.65 + var(--bloom)*.35));filter:brightness(.78)}
.rose-targets{z-index:4;perspective:900px}.rose-target.rose-layer{left:56%;top:28%;width:44%;height:auto;aspect-ratio:1;border-radius:0;transform-origin:50% 92%;clip-path:polygon(50% 2%,89% 12%,98% 50%,72% 80%,50% 99%,28% 80%,2% 50%,11% 12%);transform:translate(-50%,-92%) rotate(var(--angle)) rotateX(calc(78deg - var(--bloom)*70deg)) rotateY(var(--flutter,0deg)) scale(calc(.76 + var(--bloom)*.24));background:none;transition:filter .35s;filter:brightness(.83)}
.rose-layer img{display:block;width:100%;height:auto;pointer-events:none;transform:translateY(calc(var(--pull,0px)*-1));transition:transform .18s ease-out}.rose-target.rose-layer:hover,.rose-target.rose-layer:focus-visible{background:none;filter:brightness(1.08)}.rose-target.rose-layer:hover img{transform:translateY(-9px)}.rose-target.held img{transform:translateY(calc(var(--pull,0px)*-1)) scale(1.04)}.rose-art.plucking .rose-inner{rotate:-2deg;transition:rotate .7s ease-out}.rose-heart{z-index:5}
.rose-target.rose-layer{--opening:clamp(0,calc((var(--bloom) - var(--lag))*1.35),1);transform:translate(-50%,-92%) rotate(var(--angle)) rotateX(calc(78deg - var(--opening)*70deg)) rotateY(calc(var(--flutter,0deg)*var(--polarity,1))) scale(calc(.76 + var(--opening)*.24));filter:brightness(.68) saturate(.88)}.rose-target.rose-layer:hover,.rose-target.rose-layer:focus-visible{filter:brightness(.88) saturate(.94)}.rose-target.held img{transform:translate(var(--drag-x,0px),calc(var(--pull,0px)*-1)) scale(1.04)}
/* Enchanted botanical: spatial petals, a living core, and a quietly legible invitation. */
.rose-art.enchanted-ready{height:100%;top:0;width:min(860px,100vw);max-width:none;aspect-ratio:auto;perspective:none}.enchanted-ready .rose-botanical{position:absolute;left:50%;top:6%;width:auto;height:88%;transform:translateX(-50%);clip-path:inset(47% 0 0);filter:brightness(.9) drop-shadow(0 12px 20px #0002);z-index:0}.enchanted-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:auto;touch-action:pan-y;z-index:2}.enchanted-ready .rose-targets{inset:0;perspective:none;z-index:4;pointer-events:none}.bloom-project-target{position:absolute;width:44px;height:44px;border-radius:50%;transform:translate(-50%,-50%);background:transparent;border:0;opacity:0;pointer-events:none}.bloom-project-target:focus-visible{opacity:1;outline:1px solid #f3dfac;outline-offset:6px;background:#ead8a622;box-shadow:0 0 28px #f1d18555;pointer-events:auto}.bloom-heart-button{position:absolute;left:56%;top:28%;z-index:5;transform:translate(-50%,-50%);width:43px;height:43px;border:1px solid #e7d29a44;border-radius:50%;font:27px 'Fable Dust',Georgia,serif;color:#f1e4c9;background:radial-gradient(circle,#362619c9,#231711a1);box-shadow:0 0 20px #e7b86718;pointer-events:auto;cursor:pointer;transition:box-shadow .4s,background .4s}.bloom-heart-button:hover{box-shadow:0 0 36px #e7b86766;background:#443122cc}.bloom-heart-button:disabled{pointer-events:none}.enchanted-ready .rose-reset{z-index:5;bottom:10%;left:50%}.bloom-invitation{position:absolute;left:50%;bottom:12%;transform:translateX(-50%);z-index:4;pointer-events:none;text-align:center;width:max-content;max-width:85vw;font:15px/1.5 Georgia,serif;color:#eee5d2;text-shadow:0 2px 12px #101a0d}.bloom-invitation span{display:block;font:9px/1.6 Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase;color:#cabb99;margin-bottom:7px}.stage .hint{bottom:7%;opacity:.8}.stage .hero-word{opacity:.065}.stage .spores{display:none}.rose-art.bloom-fallback .rose-botanical{clip-path:none;animation:none}.bloom-fallback .bloom-heart-button{top:28%}
@media(max-width:760px){.rose-art.enchanted-ready{height:100%;top:0;width:100vw}.enchanted-ready .rose-botanical{height:76%;top:13%}.bloom-invitation{bottom:18%;font-size:13px}.bloom-invitation span{font-size:8px}.enchanted-ready .rose-reset{bottom:14%;font-size:8px}.bloom-heart-button{width:35px;height:35px;font-size:23px}.stage .hint{bottom:7%;font-size:8px}.stage .hero-caption{bottom:12%;max-width:130px}.hero-caption p{font-size:15px}.hero-caption .micro{font-size:7px}.stage .hero-index{bottom:9%}}
.enchanted-ready .bloom-project-target{pointer-events:auto;touch-action:none}.enchanted-ready .bloom-project-target:disabled{pointer-events:none}
@media(max-width:760px){.bloom-invitation{bottom:22%}.enchanted-ready .rose-reset{bottom:14%;left:auto;right:5vw;transform:none}.stage .hero-caption{bottom:12%}}
/* Every interaction belongs to the garden: an invitation, a specimen note, a trail. */
body>nav{pointer-events:none}body>nav a{pointer-events:auto}
.enchanted-ready .rose-botanical{mask-image:linear-gradient(to bottom,transparent 46%,#000 57%)}
.enchanted-ready .rose-botanical{transform:translateX(-50%) rotate(var(--stem-sway,0deg));transform-origin:50% 90%}.bloom-invitation{bottom:18%;font-size:18px;transition:opacity .35s,translate .35s}.bloom-invitation span{color:#e1d3b2}.stage .label{display:none}.stage .hint{bottom:4%;font-size:9px;color:#d4d7bb}.stage .hero-caption,.stage .hero-index{bottom:9%}.enchanted-ready .rose-reset{bottom:3%;left:4.5vw;transform:none;border:none;background:transparent;padding:8px 0;color:#d1d3bd}
.petal-preview{position:absolute;z-index:5;right:5vw;top:39%;width:min(23vw,270px);pointer-events:none;opacity:0;translate:0 12px;transition:opacity .3s,translate .45s;color:#f1e8d6;text-shadow:0 2px 20px #132314}.petal-preview.on{opacity:1;translate:0 0}.petal-preview:before{content:'';display:block;width:40px;height:1px;background:#d6bb7b;margin-bottom:20px}.petal-preview>span{font:8px/1.6 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#d8c89f;display:block}.petal-preview strong{display:block;font:clamp(26px,3.1vw,44px)/1.07 'Fable Dust',Georgia,serif;font-weight:400;margin:14px 0}.petal-preview p{font:14px/1.6 Georgia,serif;max-width:26ch;color:#e1e0cd}
.garden-trail{position:absolute;bottom:9%;left:50%;transform:translateX(-50%);z-index:5;text-align:center;width:max-content;max-width:90vw}.garden-progress{font:9px/1.5 Arial,sans-serif;letter-spacing:.12em;color:#c4cdb1;margin:0 0 12px}.garden-trail-links{display:flex;justify-content:center;gap:2px}.garden-trail-link{position:relative;display:grid;place-items:center;width:24px;height:28px;font:8px Arial,sans-serif;color:#b5bea2;transition:color .25s,background .25s;border-radius:50%}.garden-trail-link:after{content:'';position:absolute;bottom:0;width:3px;height:3px;border-radius:50%;background:#a4ac8f66;transition:background .3s,box-shadow .3s}.garden-trail-link:hover,.garden-trail-link:focus-visible{background:#e7d09815;color:#f3e4bf}.garden-trail-link.is-discovered{color:#f4d79d}.garden-trail-link.is-discovered:after{background:#edc982;box-shadow:0 0 9px #f3bc5db0}.garden-trail-link[aria-current]{outline:1px solid #e8d49c66;outline-offset:1px}.garden-panel-note{font:9px/1.5 Arial,sans-serif;letter-spacing:.13em;color:#a9ba98;margin:0 0 26px;padding-bottom:18px;border-bottom:1px solid #d8ddbf22}.panel .close{border:0;color:#e8e5cf}.panel .inner{position:relative;z-index:1}.panel:before{content:'';position:fixed;right:-8vw;top:12vh;width:37vw;height:70vh;background:url('/assets/rose-botanical.png') center/contain no-repeat;opacity:.07;transform:rotate(-18deg);pointer-events:none}.bloom-heart-button:after{content:'';position:absolute;inset:-8px;border:1px solid #d7b87b30;border-radius:50%;pointer-events:none;animation:garden-heart 4s ease-in-out infinite}.is-picking .bloom-heart-button:after{animation:none;opacity:0}@keyframes garden-heart{0%,100%{transform:scale(.92);opacity:.2}50%{transform:scale(1.13);opacity:.75}}
@media(max-width:1050px) and (min-width:761px){.garden-trail-links{gap:0}.garden-trail-link{width:22px}.stage .hero-caption .micro{max-width:150px}.stage .hero-index{font-size:9px}.petal-preview{width:21vw;right:3vw}.petal-preview p{font-size:12px}}
@media(max-width:760px){.stage{min-height:760px}.stage .hero-caption{display:none}.stage .hero-number{display:none}.bloom-invitation{bottom:25%;font-size:17px;width:88vw}.bloom-invitation span{font-size:8px}.garden-trail{bottom:13%;width:300px}.garden-progress{font-size:8px;margin-bottom:10px}.garden-trail-links{display:flex;flex-wrap:wrap;gap:4px 5px;margin:auto;max-width:266px}.garden-trail-link{width:25px;height:27px}.stage .hint{bottom:9%;font-size:8px}.stage .hero-index{bottom:4%;font-size:9px;right:5vw}.enchanted-ready .rose-reset{left:5vw;right:auto;bottom:4%;font-size:8px}.petal-preview{left:50%;right:auto;top:auto;bottom:25%;transform:translateX(-50%);width:86vw;text-align:center}.petal-preview:before{display:none}.petal-preview>span{font-size:7px}.petal-preview strong{font-size:30px;margin:6px 0}.petal-preview p{font-size:12px;max-width:36ch;margin:auto}.petal-hovered .bloom-invitation{opacity:0;translate:0 -8px}.panel .close{font-size:10px}.garden-panel-note{max-width:80%;font-size:8px;line-height:1.7}.panel:before{width:85vw;right:-30vw;opacity:.05}}
@media(prefers-reduced-motion:reduce){.bloom-heart-button:after{animation:none;opacity:.3}.petal-preview,.bloom-invitation{transition:none}.enchanted-ready .rose-botanical{transform:translateX(-50%)}}
.garden-trail .garden-trail-links{position:static;inset:auto;padding:0;width:auto;background:none;border:0;backdrop-filter:none;z-index:auto}.garden-trail-link{flex-shrink:0;font-size:9px}#worldList>a.is-discovered .row-index{color:#a24c35}#worldList>a.is-discovered .row-index:after{content:' ·';color:#a24c35}
.panel .close{background:transparent;border-bottom:1px solid #d6dec444;padding:12px 0}.panel .close:hover{color:#f5cf8b;background:transparent;border-color:#f5cf8b88}@media(max-width:760px){.stage .hero-index{bottom:7%}}

/* The rose leads; the invitation and the visitor's trail follow. */
.stage .bg{filter:saturate(.84) brightness(.79)!important}
.stage .vignette{background:radial-gradient(ellipse at 50% 40%,transparent 24%,#17301b33 65%,#1028198c 100%),linear-gradient(180deg,#1328195c,transparent 36%,#152b1933 64%,#102519c2)}
.stage .hero-number{display:none}
.stage .hero-caption{bottom:15%;max-width:170px}
.stage .hero-caption .micro{display:none}
.stage .hero-caption p{font-size:17px;line-height:1.4;color:#d3ddc9}
.stage .hero-index{left:4.5vw;right:auto;bottom:4.5%;font-size:10px;letter-spacing:.08em;padding-bottom:7px;color:#e4e8d7}
.stage .bloom-invitation{bottom:19%;font-size:22px;line-height:1.35;color:#f2ead9}
.stage .bloom-invitation span{font-size:8px;letter-spacing:.19em;color:#c3cdae;margin-bottom:10px}
.stage .hint{visibility:hidden;opacity:0;bottom:6%;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.08em;pointer-events:none}
.stage:has(.rose-art.is-dragging) .hint,.stage:has(.rose-art.is-picking) .hint{visibility:visible;opacity:.85}
.enchanted-ready .rose-reset{left:50%;right:auto;bottom:1%;transform:translateX(-50%);font-size:9px;letter-spacing:.08em;color:#d2dcc4;padding:10px 12px}
.garden-trail{bottom:11%;width:min(355px,88vw);max-width:88vw}
.garden-trail[hidden]{display:none}
.garden-trail summary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:32px;list-style:none;cursor:pointer;color:#c5d0b5}
.garden-trail summary::-webkit-details-marker{display:none}
.garden-trail summary:focus-visible{outline:1px solid #efd59b;outline-offset:6px;border-radius:3px}
.garden-trail summary:hover{color:#f1e1bc}
.garden-trail summary .garden-progress{font:9px/1.5 Arial,sans-serif;letter-spacing:.03em;color:inherit;margin:0}
.garden-trail-toggle{font:9px/1.5 Arial,sans-serif;letter-spacing:.03em;border-bottom:1px solid #c5d0b54d;padding-bottom:2px}
.garden-trail-toggle:after{content:' +';color:#d9c494}
.garden-trail[open] .garden-trail-toggle:after{content:' −'}
.garden-trail:not([open]) .garden-trail-links{display:none}
.garden-trail[open] .garden-trail-links{display:grid;grid-template-columns:repeat(9,1fr);gap:6px 2px;width:100%;max-width:none;box-sizing:border-box;margin:12px 0 0;padding:13px;background:#172c20ed;border:1px solid #d6ddb326;border-radius:6px;box-shadow:0 12px 25px #0e21192b}
.garden-trail .garden-trail-link{width:100%;min-width:0;height:32px;font-size:10px}
.stage:has(.garden-trail[open]) .bloom-invitation{opacity:0}
@media(max-width:760px){
 .stage .bloom-invitation{bottom:22%;width:88vw;font-size:21px}
 .stage .bloom-invitation span{font-size:8px;margin-bottom:8px}
 .stage .hero-caption{display:none}
 .stage .hero-index{left:5vw;right:auto;bottom:4.5%;font-size:10px}
 .stage .hint{bottom:11%;left:50%;font-size:8px;width:80vw;text-align:center}
 .garden-trail{bottom:15%;width:min(330px,88vw)}
 .garden-trail summary{gap:10px}
 .garden-trail summary .garden-progress,.garden-trail-toggle{font-size:9px}
 .garden-trail[open] .garden-trail-links{padding:10px;gap:6px 1px}
 .garden-trail .garden-trail-link{height:34px;font-size:10px}
 .enchanted-ready .rose-reset{left:50%;right:auto;bottom:0;transform:translateX(-50%);font-size:9px}
 .petal-preview{bottom:22%}
}

/* A quiet credit above the opt-in sound control. */
.soundtrack-credit{position:fixed;right:22px;bottom:66px;z-index:60;max-width:calc(100vw - 44px);margin:0;font:9px/1.5 Arial,sans-serif;letter-spacing:.035em;color:#d8dec8;text-align:right;text-shadow:0 1px 7px #13251b;pointer-events:none}
.soundtrack-credit[hidden],#florra-soundtrack[hidden]{display:none}
.soundtrack-status{position:fixed;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Editorial gestures: a chapter marker, a drawn line, a way back to the bloom. */
.editorial-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.panel .inner{padding-top:124px}
.panel .close{display:flex;align-items:center;justify-content:center;gap:14px;min-height:44px;font:italic 18px/1.25 var(--reading);letter-spacing:-.01em;padding:10px 0 11px;color:#e5e4cd;border-bottom:1px solid #d6dec43d;transition:color .25s,border-color .25s}
.editorial-arrow{display:block;position:relative;width:22px;height:1px;flex:none;background:currentColor;transition:transform .35s cubic-bezier(.22,1,.36,1);transform-origin:center}
.editorial-arrow:after{content:'';position:absolute;right:0;top:-3px;width:6px;height:6px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.panel .close .editorial-arrow{transform:rotate(180deg)}
.panel .close:hover .editorial-arrow,.panel .close:focus-visible .editorial-arrow{transform:translateX(-5px) rotate(180deg)}
.panel .close:focus-visible{outline-color:#e9c791;outline-offset:8px}
.garden-panel-note{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 24px;max-width:none;margin:0 0 35px;padding:0 0 22px;border:0;color:#c5cfb4;font:11px/1.5 var(--label);letter-spacing:.1em}
.garden-panel-note[hidden]{display:none}
.garden-chapter-label{display:inline-flex;align-items:baseline;gap:10px;white-space:nowrap;font:9px/1.5 var(--label);letter-spacing:.16em}
.garden-chapter-number{font:italic 19px/1.2 var(--reading);letter-spacing:.025em;color:#dfdfc5}
.garden-encounter{font:italic 18px/1.4 var(--reading);letter-spacing:0;color:#b9c5a8}
.garden-note-rule{position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,#dedab94f,#dedab912);transform-origin:left}
.panel .tag{font-size:9px;line-height:1.65;letter-spacing:.14em;color:#afbd9d}
.panel h2{letter-spacing:-.025em;text-wrap:balance}
.panel .body{margin-top:40px}
.panel .body p{font-size:clamp(18px,1.7vw,21px);line-height:1.72}
.panel dl dt{font:9px/1.7 var(--label);letter-spacing:.06em}
.panel dl dd{font:15px/1.55 var(--reading)}
.panel .cta a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;font:italic 17px/1.3 var(--reading);border-radius:2px;padding:13px 24px;transition:background .25s,color .25s,border-color .25s}
.panel .nextprev{gap:40px;margin-top:70px;padding-top:24px;border-color:#dedab935}
.panel .nextprev button{position:relative;display:grid;align-content:center;gap:9px;flex:0 1 46%;min-width:0;min-height:68px;padding:10px 0 10px 38px;text-align:left;color:#d7dcc3;transition:color .25s}
.panel .nextprev #nextBtn{text-align:right;padding:10px 38px 10px 0}
.chapter-nav-kicker{font:9px/1.4 var(--label);letter-spacing:.1em;color:#9baa90}
.chapter-nav-name{font:italic clamp(18px,2.1vw,26px)/1.15 var(--reading);overflow-wrap:anywhere}
.panel .nextprev .editorial-arrow{position:absolute;top:50%;width:23px;left:0;transform:rotate(180deg)}
.panel .nextprev #nextBtn .editorial-arrow{left:auto;right:0;transform:none}
.panel .nextprev #prevBtn:hover .editorial-arrow,.panel .nextprev #prevBtn:focus-visible .editorial-arrow{transform:translateX(-5px) rotate(180deg)}
.panel .nextprev #nextBtn:hover .editorial-arrow,.panel .nextprev #nextBtn:focus-visible .editorial-arrow{transform:translateX(5px)}
.panel .nextprev button:hover,.panel .nextprev button:focus-visible{color:#f0ce91}
.garden-trail{width:min(380px,88vw)}
.garden-trail summary{min-height:44px;gap:18px}
.garden-trail summary .garden-progress{font:italic 17px/1.4 var(--reading);letter-spacing:0;color:#d4dec4}
.garden-trail-toggle{font:9px/1.5 var(--label);letter-spacing:.06em;white-space:nowrap}
.garden-trail[open] .garden-trail-links{grid-template-columns:repeat(7,minmax(44px,1fr));gap:3px;width:100%;border-radius:2px;padding:12px;max-height:200px;overflow-y:auto}
.garden-trail .garden-trail-link{height:44px;font:italic 15px/1 var(--reading);border-radius:0}
.garden-trail .garden-trail-link:after{bottom:4px}
.garden-trail[open] .garden-trail-links{animation:trail-unfold .36s cubic-bezier(.22,1,.36,1)}
@keyframes trail-unfold{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
.list .row-arrow,.feature-info>span{display:inline-block;transition:transform .35s cubic-bezier(.22,1,.36,1),color .25s}
.list>a:hover .row-arrow,.list>a:focus-visible .row-arrow{transform:translateX(5px);color:#a24c35}
.feature-card:hover .feature-info>span,.feature-card:focus-visible .feature-info>span{transform:translate(3px,-3px);color:#efcc98}
.filters button,#snd,.stage .hero-index,.enchanted-ready .rose-reset{min-height:44px}
.stage .hero-index{display:flex;align-items:center;padding:10px 0;font:italic 16px/1.3 var(--reading);letter-spacing:0}
.stage .hero-caption p{line-height:1.5}
.chapter .garden-link,.chapter header>a:last-child{font:italic 17px/1.4 var(--reading);min-height:44px;display:inline-flex;align-items:center}
.chapter .actions a{font:italic 18px/1.4 var(--reading);transition:background .25s,color .25s}
.chapter .breadcrumb{font-size:11px;letter-spacing:.04em}
@media(max-width:760px){
 .panel .inner{width:calc(100% - 40px);padding-top:108px;padding-bottom:120px}
 .panel .close{right:20px;top:20px;font-size:17px;gap:12px}
 .panel .mini{left:20px;top:24px}
 .garden-panel-note{max-width:none;gap:9px 18px;margin-bottom:29px;padding-bottom:19px}
 .garden-chapter-label{font-size:8px;gap:8px;letter-spacing:.11em}
 .garden-chapter-number{font-size:17px}
 .garden-encounter{font-size:15px}
 .panel .tag{font-size:8px;letter-spacing:.11em}
 .panel .body{gap:28px;margin-top:30px}
 .panel .body p{font-size:18px;line-height:1.65}
 .panel .nextprev{gap:22px;padding-top:18px;margin-top:52px}
 .panel .nextprev button{padding-left:28px;gap:9px;min-height:76px}
 .panel .nextprev #nextBtn{padding-right:28px}
 .panel .nextprev .editorial-arrow{width:17px}
 .chapter-nav-kicker{font-size:8px;letter-spacing:.035em}
 .chapter-nav-name{font-size:19px;line-height:1.2}
 .panel .cta a{font-size:16px;padding:13px 17px}
 .garden-trail{width:min(330px,88vw)}
 .garden-trail summary{gap:14px}
 .garden-trail summary .garden-progress{font-size:15px}
 .garden-trail-toggle{font-size:9px}
 .garden-trail[open] .garden-trail-links{grid-template-columns:repeat(6,minmax(44px,1fr));gap:2px;padding:8px;max-height:175px}
 .garden-trail .garden-trail-link{height:44px;font-size:14px}
 .stage .hero-index{font-size:14px}
}
@media(max-width:350px){.garden-trail[open] .garden-trail-links{grid-template-columns:repeat(5,minmax(44px,1fr))}.garden-panel-note{column-gap:12px}.garden-encounter{font-size:14px}.panel .nextprev{gap:16px}.chapter-nav-name{font-size:17px}}
@media(prefers-reduced-motion:reduce){.garden-trail[open] .garden-trail-links{animation:none}.editorial-arrow,.list .row-arrow,.feature-info>span{transition:none}.panel .close:hover .editorial-arrow,.panel .close:focus-visible .editorial-arrow{transform:rotate(180deg)}.panel .nextprev #prevBtn:hover .editorial-arrow,.panel .nextprev #prevBtn:focus-visible .editorial-arrow{transform:rotate(180deg)}.panel .nextprev #nextBtn:hover .editorial-arrow,.panel .nextprev #nextBtn:focus-visible .editorial-arrow,.list>a:hover .row-arrow,.list>a:focus-visible .row-arrow,.feature-card:hover .feature-info>span,.feature-card:focus-visible .feature-info>span{transform:none}}
