*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--forest-deep: #1d3307;--forest-mid: #345C0D;--forest-light: #4a7a1a;--bark-dark: #042547;--bark-mid: #0d3a6b;--bark-light: #1a5294;--bark-pale: #6b8db5;--cream: #FAF9F2;--cream-dark: #EDE8DA;--warm-white: #FAF9F2;--parchment: #E8E3D5;--fire-orange: #e8611a;--fire-amber: #f4a300;--fire-yellow: #fdd835;--fire-glow: #ff6f00;--ember: #bf360c;--flame-blue: #042547;--flame-blue-light: #1a5294;--night: #021830;--night-mid: #042547;--star-white: #fffde7;--font-script: "Caveat", cursive;--font-serif: "Cormorant Garamond", serif;--font-sans: "Inter", sans-serif;--font-typewriter: "Special Elite", monospace;--section-pad: clamp(4rem, 8vw, 8rem);--content-max: 1200px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1)}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--cream);color:var(--bark-dark);line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s var(--ease-out-expo),transform .8s var(--ease-out-expo)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.section-container{max-width:var(--content-max);margin:0 auto;padding:0 clamp(1.5rem,4vw,3rem)}:root{--env-w: min(90vw, 460px);--env-h: calc(var(--env-w) * .66)}html.env-locked,html.env-locked body{overflow:hidden}.env-stage{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:1rem;background:radial-gradient(120% 85% at 50% 4%,#0a4570,#053257 34%,#042547 58%,#021830 80%,#010d1d);transition:opacity .6s ease}.env-stage.is-gone{opacity:0;pointer-events:none}.env-stage.is-zooming .env__back,.env-stage.is-zooming .env__front,.env-stage.is-zooming .env__flap,.env-stage.is-zooming .env__stamp,.env-stage.is-zooming .env__address,.env-stage.is-zooming .env-unlock,.env-stage.is-zooming .env-hint{opacity:0;transition:opacity .4s ease;pointer-events:none}.env-stage:after{content:"";position:absolute;left:50%;bottom:-28%;width:130%;height:60%;transform:translate(-50%);background:radial-gradient(closest-side,rgba(244,163,0,.3),rgba(232,97,26,.12) 52%,transparent 74%);pointer-events:none}.env-stage__stars{position:absolute;inset:0;pointer-events:none}.env-stage__stars i{position:absolute;display:block;background:var(--star-white, #fffde7);border-radius:50%;animation:envTwinkle 3.4s infinite alternate ease-in-out}@keyframes envTwinkle{0%{opacity:.2;transform:scale(1)}to{opacity:1;transform:scale(1.45)}}.env-stage__ridge{position:absolute;left:0;right:0;bottom:0;height:15vh;background:#010a16;pointer-events:none;clip-path:polygon(0% 100%,0% 58%,4% 82%,8% 44%,12% 80%,16% 56%,20% 86%,24% 46%,28% 82%,32% 60%,36% 88%,40% 44%,44% 80%,48% 62%,52% 86%,56% 46%,60% 82%,64% 56%,68% 88%,72% 48%,76% 80%,80% 60%,84% 86%,88% 46%,92% 82%,96% 62%,100% 80%,100% 100%)}.env-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.5rem;z-index:2}.env{position:relative;width:var(--env-w);height:var(--env-h);perspective:1500px;transform-style:preserve-3d;filter:drop-shadow(0 26px 42px rgba(0,0,0,.45))}.env__back{position:absolute;inset:0;z-index:1;border-radius:8px;background:linear-gradient(160deg,#e9e2d0,#ddd3bd);box-shadow:inset 0 8px 22px #0000004d}.env__card{position:absolute;inset:11% 7% 13%;z-index:2;transition:transform .8s cubic-bezier(.34,1.56,.64,1);will-change:transform}.env__card.is-lifting{transform:translateY(-52%);z-index:30}.env__card.is-zoom{transform:translateY(-52%) scale(2.7);opacity:0;transition:transform 1s cubic-bezier(.62,0,.32,1),opacity .7s ease .15s;z-index:30}.env__card3d{position:absolute;inset:0;transform-style:preserve-3d}.env__half{position:absolute;left:0;right:0;height:50%;backface-visibility:hidden}.env__half--lower{top:50%}.env__half--upper{top:0;transform-origin:bottom center;transform:rotateX(180deg);transform-style:preserve-3d;transition:transform .85s cubic-bezier(.16,1,.3,1)}.env__half--upper.is-unfolded{transform:rotateX(0)}.env__cover{position:absolute;inset:0;backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:var(--cream);box-shadow:0 4px 14px #00000038}.env__cover--lower{background:linear-gradient(180deg,#042c4f,#021830 70%,#010f20);border-radius:0 0 7px 7px;gap:.25rem;padding-top:.3rem}.env__cover--upper{background:linear-gradient(180deg,#0a3b63,#063055);border-radius:7px 7px 0 0;justify-content:flex-end;gap:.5rem;padding-bottom:.4rem}.env__cover-names{font-family:var(--font-serif);font-size:clamp(1.5rem,5.5vw,2.4rem);line-height:1;color:var(--cream)}.env__cover-names span{color:var(--fire-amber)}.env__cover-tag{font-family:var(--font-script);font-size:clamp(.85rem,3vw,1.15rem);color:var(--fire-amber)}.env__cover-prelude{font-family:var(--font-script);font-size:clamp(.9rem,3vw,1.2rem);color:var(--fire-amber)}.env__cover-play svg{width:clamp(34px,12%,46px);height:auto}.env__cover-play circle{fill:#ffffff1f;stroke:#fffde7b3;stroke-width:2}.env__cover-play path{fill:var(--cream)}.env__cover-back{position:absolute;inset:0;transform:rotateX(180deg);backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:7px;background:linear-gradient(165deg,#fff,#f5f1e6);box-shadow:0 4px 14px #0003}.env__card-monogram{font-family:var(--font-serif);font-size:clamp(1.8rem,6vw,2.8rem);color:var(--forest-mid);letter-spacing:.04em;line-height:1}.env__card-monogram span{color:var(--fire-amber)}.env__card-sub{font-family:var(--font-script);font-size:clamp(1rem,3.4vw,1.4rem);color:var(--bark-dark);margin-top:.3rem}.env__card-rule{width:42%;height:1px;background:linear-gradient(90deg,transparent,var(--forest-mid),transparent);margin:.5rem auto;opacity:.6}.env__card-foot{font-family:var(--font-typewriter);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bark-pale)}.env__front{position:absolute;inset:36% 0 0;z-index:3;background:linear-gradient(160deg,#f4efe1,#e7dfcc);clip-path:polygon(0 14%,50% 0,100% 14%,100% 100%,0 100%);box-shadow:0 -2px 10px #0000001a;border-radius:0 0 8px 8px}.env__front:before{content:"";position:absolute;inset:0;clip-path:inherit;background:linear-gradient(to right,rgba(0,0,0,.06),transparent 28%,transparent 72%,rgba(0,0,0,.06))}.env__address{position:absolute;left:11%;bottom:13%;z-index:5;transform:rotate(-2deg);pointer-events:none}.env__address-line{display:block;font-family:var(--font-script);color:#3a4a5a;opacity:.82;font-size:clamp(.9rem,3.2vw,1.2rem);line-height:1.25}.env__address-line--sm{font-size:clamp(.72rem,2.6vw,.92rem);opacity:.62}.env__stamp{position:absolute;top:7%;right:7%;z-index:14;transform:rotate(-9deg);border:2px dashed rgba(4,37,71,.55);border-radius:8px;background:#ffffff59;padding:.28rem .42rem;cursor:pointer;color:var(--bark-dark);transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.env__stamp-inner{display:flex;flex-direction:column;align-items:center;gap:1px}.env__stamp-top{font-family:var(--font-typewriter);font-size:.42rem;letter-spacing:.08em}.env__stamp-mid{font-size:.85rem;line-height:1}.env__stamp-bot{font-family:var(--font-typewriter);font-size:.4rem;letter-spacing:.04em;max-width:86px;text-align:center}.env__stamp.is-thunk{animation:stampThunk .35s cubic-bezier(.34,1.56,.64,1)}@keyframes stampThunk{0%{transform:rotate(-9deg) scale(1)}40%{transform:rotate(-5deg) scale(1.2)}to{transform:rotate(-9deg) scale(1)}}.env__flap{position:absolute;left:0;right:0;top:0;height:54%;z-index:12;background:linear-gradient(160deg,#f2ecdc,#e3dac4);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top center;transform:rotateX(0);transition:transform .8s cubic-bezier(.16,1,.3,1);backface-visibility:hidden;box-shadow:0 3px 8px #0000001a}.env__flap.is-open{transform:rotateX(-172deg);z-index:2}.env__flap.is-flutter{animation:envFlutter .7s ease}@keyframes envFlutter{0%,to{transform:rotateX(0)}25%{transform:rotateX(-17deg)}55%{transform:rotateX(-6deg)}80%{transform:rotateX(-12deg)}}.env__seal{position:absolute;top:41%;left:50%;width:clamp(66px,19%,96px);aspect-ratio:1;transform:translate(-50%,-50%);z-index:20;border:none;cursor:pointer;border-radius:50%;background:radial-gradient(circle at 36% 30%,#4f821c,#345c0d 55%,#1d3307);box-shadow:0 3px 9px #00000061,inset 0 2px 6px #ffffff47,inset 0 -5px 9px #0006;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:12% 0 9%;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.env__seal:before{content:"";position:absolute;inset:-3px;border-radius:50%;background:repeating-conic-gradient(from 0deg,#345c0d 0deg 12deg,#2a4a0a 12deg 24deg);z-index:-1;filter:blur(.4px)}.env__lock{width:52%;height:52%;overflow:visible}.env__lock-shackle{fill:none;stroke:#f3d883;stroke-width:7;stroke-linecap:round;transform-box:fill-box;transform-origin:92% 96%;transition:transform .55s cubic-bezier(.34,1.56,.64,1)}.env__lock-body{fill:#ecca6a;stroke:#b8902f;stroke-width:2}.env__lock-hole{fill:#6b4f17}.env__lock-shine{fill:#ffffff59}.env__lock.is-open .env__lock-shackle{transform:rotate(-38deg) translateY(-3px)}.env__lock.is-rattle{animation:lockRattle .45s ease}@keyframes lockRattle{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg)}55%{transform:rotate(6deg)}80%{transform:rotate(-3deg)}}.env__seal-mono{font-family:var(--font-serif);font-weight:700;font-size:clamp(.55rem,2vw,.78rem);letter-spacing:.06em;color:#eef3e2}.env__seal.is-bounce{animation:sealBounce .35s cubic-bezier(.34,1.56,.64,1)}@keyframes sealBounce{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}to{transform:translate(-50%,-50%) scale(1)}}.env__seal.is-cracking{animation:sealCrack .45s cubic-bezier(.34,1.56,.64,1) forwards;pointer-events:none}@keyframes sealCrack{0%{transform:translate(-50%,-50%) scale(1) rotate(0)}35%{transform:translate(-50%,-50%) scale(1.18) rotate(-6deg)}to{transform:translate(-50%,-50%) scale(0) rotate(16deg);opacity:0}}.env__seal-bubble{position:absolute;top:6%;left:50%;transform:translate(-50%,-10px);z-index:25;background:#fff;color:var(--bark-dark);font-family:var(--font-script);font-size:1rem;padding:.3rem .7rem;border-radius:10px;white-space:nowrap;box-shadow:0 6px 16px #00000040;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s cubic-bezier(.16,1,.3,1)}.env__seal-bubble[hidden]{display:none}.env__seal-bubble.is-shown{opacity:1;transform:translate(-50%,-22px)}.env__seal-bubble:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#fff;border-bottom:0}.env-puff{position:absolute;top:26%;font-size:1.15rem;z-index:26;pointer-events:none;animation:envPuff 1.3s ease forwards}@keyframes envPuff{0%{opacity:0;transform:translate(0) scale(.6)}20%{opacity:1}to{opacity:0;transform:translate(var(--dx, 0),-95px) scale(1.2)}}.env-hint{color:var(--cream);font-family:var(--font-script);font-size:1.35rem;opacity:.92;text-align:center;transition:opacity .4s ease,transform .4s ease}.env-hint.is-hidden{opacity:0;transform:translateY(8px);pointer-events:none}.env-unlock{display:flex;flex-direction:column;align-items:center;gap:.6rem;opacity:0;transform:translateY(14px)}.env-unlock[hidden]{display:none}.env-unlock.is-shown{animation:envRevealUp .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes envRevealUp{to{opacity:1;transform:translateY(0)}}.env-unlock__label{color:var(--fire-amber);font-family:var(--font-script);font-size:1.4rem}.env-unlock__row{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.env-unlock__input{font-size:16px;font-family:var(--font-sans);padding:.7rem .9rem;border-radius:10px;border:2px solid rgba(255,255,255,.5);background:#fffffff5;color:var(--bark-dark);width:min(64vw,240px);outline:none}.env-unlock__input:focus{border-color:var(--fire-amber)}.env-unlock__btn{font-family:var(--font-sans);font-weight:600;cursor:pointer;padding:.7rem 1.2rem;border-radius:10px;border:none;background:linear-gradient(135deg,var(--forest-mid),var(--forest-light));color:var(--cream);min-width:96px}.env-unlock__btn:disabled{opacity:.6;cursor:not-allowed}.env-unlock.is-wrong .env-unlock__input{animation:envShake .4s ease;border-color:#ff6b6b}.env-unlock__err{color:#ffb4a8;font-family:var(--font-sans);font-size:.85rem}.env-unlock__err[hidden]{display:none}@keyframes envShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}#letter-mount{position:fixed;inset:0;z-index:9500;opacity:0;transform:scale(.34);transform-origin:50% 42%;pointer-events:none;overflow:hidden;will-change:transform,opacity;transition:opacity .5s ease,transform 1.05s cubic-bezier(.62,0,.32,1)}#letter-mount.is-revealed{opacity:1;transform:scale(1);pointer-events:auto}#letter-mount.is-flow{position:static;transform:none;overflow:visible;z-index:auto;transition:none;will-change:auto}@media(prefers-reduced-motion:reduce){.env-stage,.env__card,.env__half--upper,.env__flap,.env__seal,.env__lock-shackle,#letter-mount{transition:none!important;animation:none!important}}
