*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#14201b}body.nature-home{overflow:hidden;color:#fff;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}#reflection-world{position:fixed;inset:0;background:#14201b url('/story/assets/reflections/puddle-love.jpg') center/cover no-repeat}#reflection-water{display:block;width:100%;height:100%;opacity:0;transition:opacity .5s}#reflection-water.ready{opacity:1}#reflection-world:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 48%,#00130d35,transparent 75%),linear-gradient(transparent 60%,#07130d45)}body.nature-home.story-open #reflection-world,body.nature-home.story-open #principle{visibility:hidden}#principle{position:fixed;left:50%;top:43%;transform:translate(-50%,-50%);width:min(900px,86vw);padding:12px;border:0;background:transparent;color:#fff;font:600 clamp(38px,5.6vw,82px)/1.08 -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:-.045em;text-wrap:balance;text-align:center;text-shadow:0 2px 20px #000a,0 1px 4px #0006;cursor:pointer;z-index:2;transition:opacity .16s,filter .16s}#principle.changing{opacity:.25;filter:blur(3px)}body.nature-home #enter-story{position:fixed;left:50%;top:60%;width:94px;height:94px;transform:translateX(-50%);display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid #ffffff90;background:linear-gradient(145deg,#ffffff35,#ffffff08 45%,#05131128);box-shadow:inset 0 2px 2px #ffffff95,inset 0 -2px 4px #06101666,0 8px 32px #0004;backdrop-filter:blur(2px) saturate(1.2);-webkit-backdrop-filter:blur(2px) saturate(1.2);filter:none;transition:transform .2s,box-shadow .2s;z-index:3}body.nature-home #enter-story:before{content:none}body.nature-home #enter-story:hover{transform:translateX(-50%) scale(1.045);box-shadow:inset 0 2px 2px #fff,inset 0 -2px 4px #06101666,0 10px 34px #0006}body.nature-home #enter-story:active{transform:translateX(-50%) scale(.96)}body.nature-home #enter-story svg{width:38px;height:38px;margin-left:0;overflow:visible;filter:drop-shadow(0 1px 3px #0005)}body.nature-home #enter-story path{fill:#fff;stroke:none;filter:none}body.nature-home #enter-story .play-label{position:absolute;left:50%;top:calc(100% + 17px);transform:translateX(-50%);white-space:nowrap;font:500 16px/1.3 -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:0;color:white;text-shadow:0 1px 7px #000c;opacity:1}body.nature-home.story-open #enter-story{display:none}body.nature-home #enter-story:disabled{opacity:1;cursor:progress}.no-script{position:fixed;bottom:10%;left:10%;right:10%;text-align:center;color:#fff;z-index:4}.no-script a{color:inherit}@media(max-width:650px){#principle{top:42%;font-size:clamp(36px,9.7vw,54px);width:88vw}body.nature-home #enter-story{top:61%;width:86px;height:86px}}@media(max-height:550px){#principle{top:34%;font-size:clamp(28px,4vw,48px)}body.nature-home #enter-story{top:58%;width:68px;height:68px}body.nature-home #enter-story .play-label{top:calc(100% + 10px);font-size:14px}}@media(prefers-reduced-transparency:reduce){body.nature-home #enter-story{background:#25372f;backdrop-filter:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
body.nature-home #enter-story,body.nature-home #enter-story:hover,body.nature-home #enter-story:active{scale:1}body.nature-home #enter-story svg{position:static;inset:auto;display:block;transform:none}

#principle.water-words{color:transparent;text-shadow:none;transition:none}#principle:focus-visible{outline:2px solid white;outline-offset:8px;border-radius:12px}

/* Home navigation stays separate from the story controls. */
#experience-link{position:fixed;right:max(20px,env(safe-area-inset-right));top:max(20px,env(safe-area-inset-top));z-index:8;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:46px;padding:0 20px;border-radius:28px;text-decoration:none;font:500 15px/1 -apple-system,BlinkMacSystemFont,sans-serif;color:#fff;background:linear-gradient(135deg,#ffffff38,#172b3280 55%,#ffffff1c);text-shadow:0 1px 4px #0008}
#experience-link:hover{background:linear-gradient(135deg,#ffffff50,#172b32a0 55%,#ffffff30)}
body.nature-home:not(.story-open) #contact-open{right:160px}
body.story-open #experience-link{display:none}
@media(prefers-reduced-transparency:reduce){#experience-link{background:#243033;backdrop-filter:none;-webkit-backdrop-filter:none}}

#experience-link{right:132px}
body.nature-home:not(.story-open) #contact-open,#contact-open{right:max(20px,env(safe-area-inset-right));width:auto;min-width:100px;padding:0 18px;border-radius:28px;font:500 15px/1 -apple-system,BlinkMacSystemFont,sans-serif;color:#fff;background:linear-gradient(135deg,#ffffff38,#172b3280 55%,#ffffff1c)}
#contact-dialog{width:min(560px,calc(100vw - 32px));padding:52px 24px 24px;background:linear-gradient(145deg,#253436df,#111e20e8);border-color:#ffffff45;box-shadow:inset 0 1px 0 #ffffff50,0 24px 80px #0005;backdrop-filter:blur(28px) saturate(1.2);-webkit-backdrop-filter:blur(28px) saturate(1.2)}
#contact-dialog::backdrop{background:#06101455;backdrop-filter:blur(8px)}
#contact-form textarea{min-height:200px;border:0;background:transparent;padding:12px 4px;resize:vertical;font-size:clamp(24px,5vw,32px);line-height:1.3}
#contact-form textarea:focus-visible{outline:1px solid #ffffff50;outline-offset:5px}
.contact-footer{display:flex;align-items:center;gap:12px;border-top:1px solid #ffffff26;padding-top:18px;margin-top:12px}
#contact-form .contact-footer input{flex:1;min-width:0;min-height:48px;border:0;border-radius:8px;background:transparent;padding:8px 4px;font-size:17px}
#contact-form .send-contact{flex:none;margin:0;min-height:46px;padding:10px 22px;font-size:16px}
.contact-status:empty{display:none}.contact-status{margin:18px 4px 0;font-size:15px}
@media(max-height:550px){#contact-form textarea{min-height:100px}}
@media(prefers-reduced-transparency:reduce){#contact-dialog{background:#172426;backdrop-filter:none}}
