@font-face{font-family:Western;src:url('./western.e6b27a9599.woff') format('woff');font-display:swap;font-weight:400 800}@font-face{font-family:Plain;src:url('./sans.82b64b4e4e.woff') format('woff');font-display:swap}
:root{--gold:#c49a42;--gold-light:#ead1a0;--cream:#f8f0e2;--paper:#eee1cb;--brown:#563523;--dark:#24170f;--ink:#38261a;--muted:#665343;--line:rgba(159,117,54,.35);--display:Western,Georgia,serif;--body:Plain,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}body{margin:0;background:var(--dark);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.7}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid #e3b456;outline-offset:6px}img{display:block;max-width:100%;height:auto}button[hidden],[hidden]{display:none!important}svg{display:block;width:100%}h1,h2,h3,p{margin:0}h2,h3{font-family:var(--display);font-weight:400}h2{font-size:clamp(34px,4.1vw,60px);line-height:1.16;letter-spacing:-.035em}h2 em{font-weight:400;color:#997134}p{overflow-wrap:break-word}main:focus{outline:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:1000;padding:12px 20px;background:var(--cream);transform:translateY(-150%)}.skip-link:focus{transform:none}.eyebrow{font-size:9px;font-weight:400;text-transform:uppercase;letter-spacing:.23em;line-height:1.8;color:#81602f}.eyebrow.light{color:var(--gold-light)}.flourish{width:180px;height:24px;color:#ad873e;margin:24px auto}.button{display:inline-flex;gap:20px;align-items:center;justify-content:center;min-height:52px;padding:15px 25px;border:1px solid #dbb767;background:linear-gradient(115deg,#ecd29b,#c79f52 65%,#e4c58a);color:#2d1d11;font-size:10px;letter-spacing:.13em;text-transform:uppercase;line-height:1.5;box-shadow:inset 0 0 0 3px #24170f12;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 5px 24px #c49a4220,inset 0 0 0 3px #24170f12}.button span{font-size:19px;line-height:1}.button-outline{background:none;border-color:#a77d3d;color:var(--brown)}.horseshoe{width:72px;height:auto}.topbar{height:74px;padding:0 5vw;display:flex;align-items:center;gap:30px;justify-content:space-between;color:var(--cream);position:absolute;left:0;right:0;top:0;z-index:5;border-bottom:1px solid #f2dfc02b}.wordmark{font-family:var(--display);font-size:14px;letter-spacing:.18em;white-space:nowrap;display:flex;align-items:center;gap:12px}.brand-star{color:#d9b56c;font-family:Georgia;font-size:25px}.topbar-note{font-size:8px;letter-spacing:.2em;margin-left:auto}.reopen{border:0;background:none;color:var(--cream);font-size:9px;min-height:44px;padding:8px 0 8px 8px;white-space:nowrap}.reopen span{margin-left:6px;color:var(--gold-light)}.hero{height:900px;height:100svh;min-height:700px;max-height:1250px;position:relative;overflow:hidden;color:var(--cream);background:#5e3f28;isolation:isolate}.hero-picture,.hero-picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 64%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#1e140de0 0%,#2d1a1078 16%,#2d1a1020 49%,#2d1a1000 65%,#1d130cda 100%)}.hero-content{position:relative;text-align:center;width:min(90%,800px);margin:auto;padding-top:clamp(108px,16svh,185px)}.hero-content>.eyebrow{font-size:10px;letter-spacing:.3em}.hero-small{font-size:11px;letter-spacing:.5em;margin:25px 0 -10px 8px;color:#f3dfb5}.big-xv{font-family:var(--display);font-weight:400;display:block;font-size:clamp(155px,20vw,290px);letter-spacing:-.085em;padding-right:.085em;line-height:1.06;color:#ecd5a0;background:linear-gradient(155deg,#fff6cf 10%,#e5c57f 36%,#a57934 49%,#f8e4b4 52%,#e6c07b 72%,#b18842 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 1px #291a0b85)}.hero-years{display:block;font-family:var(--body);font-size:13px;letter-spacing:.5em;margin:0 0 0 6px;color:#f8e7be}.hero-rule{display:flex;align-items:center;gap:15px;justify-content:center;color:#e7c78b;margin:24px auto 18px;font-size:14px}.hero-rule span{width:55px;height:1px;background:#e7c78b9c}.hero-name{font-size:9px;letter-spacing:.1em;color:#fff0d3}.hero-name.personalized{font-family:var(--display);font-size:32px;letter-spacing:0}.hero-line{max-width:285px;margin:15px auto 0;font-family:var(--display);font-size:18px;line-height:1.5;color:#fff0d3;text-shadow:0 2px 8px #24170f70}.explore{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:13px;padding:20px;white-space:nowrap;font-size:8px;letter-spacing:.25em}.scroll-line{height:45px;width:1px;background:linear-gradient(var(--gold-light),transparent)}.hero-caption{position:absolute;left:5vw;bottom:39px;font-size:8px;letter-spacing:.23em;writing-mode:vertical-rl}.dust{position:absolute;inset:15% 0 10%;z-index:-1;pointer-events:none}.dust i{position:absolute;left:15%;top:50%;width:2px;height:2px;border-radius:50%;background:#ffe3a5;opacity:0;animation:drift 8s infinite ease-in-out}.dust i:nth-child(2){left:30%;top:20%;animation-delay:3s}.dust i:nth-child(3){left:64%;top:55%;animation-delay:2s}.dust i:nth-child(4){left:80%;top:40%;animation-delay:6s}.dust i:nth-child(5){left:68%;top:65%;animation-delay:4s}.dust i:nth-child(6){left:40%;top:70%;animation-delay:7s}.dust i:nth-child(7){left:89%;top:10%;animation-delay:1s}.dust i:nth-child(8){left:25%;top:60%;animation-delay:5s}@keyframes drift{0%,100%{transform:translate(0,0);opacity:0}25%,75%{opacity:.65}95%{transform:translate(25px,-90px);opacity:0}}
.section-pad{padding:90px max(6vw,24px);position:relative}.section-marker{display:flex;gap:15px;align-items:center;color:#90713c;font-size:8px;letter-spacing:.24em;margin-bottom:65px;line-height:1.7}.section-marker span:first-child{font-family:var(--display);font-size:16px;letter-spacing:0;border-right:1px solid #a7865655;padding-right:14px}.letter-section{background:radial-gradient(ellipse at 75% 30%,#fff9ee,#eee1cb);overflow:hidden;isolation:isolate}.letter-layout{max-width:1150px;margin:auto;display:grid;grid-template-columns:.88fr 1fr;gap:8%;align-items:center;padding:0 35px 30px}.letter-art{position:relative;transform:rotate(-4deg);padding:9px;border:1px solid #b2946680;box-shadow:12px 20px 38px #63472c1c}.letter-art img{width:100%;aspect-ratio:3/4;object-fit:cover}.photo-corner{position:absolute;width:55px;height:55px;border-color:#d9b468;border-style:solid;pointer-events:none}.photo-corner.top{top:18px;left:18px;border-width:1px 0 0 1px}.photo-corner.bottom{bottom:18px;right:18px;border-width:0 1px 1px 0}.photo-caption{position:absolute;right:-16px;bottom:35px;color:#e8d2ae;font-family:var(--display);font-style:italic;font-size:14px;writing-mode:vertical-rl}.letter-paper{position:relative;text-align:center;padding:30px 0;z-index:1}.letter-paper:before,.letter-paper:after{content:'';position:absolute;left:25%;right:25%;top:0;height:1px;background:var(--line)}.letter-paper:after{top:auto;bottom:0}.letter-copy{font-size:13px;line-height:2.1;color:#69513d;max-width:335px;margin:28px auto}.seal{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#d1aa63,#85602c);border:3px double #e4c68b;color:#f8e5ba;box-shadow:2px 3px 3px #51321730;font-family:var(--display);font-size:21px;margin:27px auto 18px;transform:rotate(-12deg)}.handwritten{font-family:var(--display);font-style:italic;font-size:15px;color:#795938}.demo-caption{font-size:7px;letter-spacing:.16em;margin-top:16px;color:#6f5a45}.flowers{position:absolute;pointer-events:none;z-index:2}.flowers-letter{width:clamp(180px,27vw,380px);bottom:-10px;left:-25px;transform:rotate(8deg)}.time-section{background:radial-gradient(ellipse at 50% 20%,#352116,#24170f 70%);color:var(--cream);overflow:hidden}.time-section:before,.time-section:after{content:'';position:absolute;width:420px;height:420px;border:1px solid #bc924623;border-radius:50%;left:-240px;top:180px;box-shadow:0 0 0 25px #bc924609,0 0 0 26px #bc924619}.time-section:after{left:auto;right:-270px;top:auto;bottom:40px}.time-section .section-marker,.time-section .eyebrow{color:#d1af70}.time-inner{text-align:center;position:relative;max-width:620px;margin:0 auto 45px}.clock-icon{width:47px;height:55px;margin:0 auto 24px;color:#c5a367}.time-inner h2{margin-top:20px}.time-inner h2 em{color:#dfbc7c}.time-inner .flourish{margin:25px auto}.time-pending{color:#d3bfa3;font-size:12px;line-height:2}.date-pill{display:inline-block;border:1px solid #bc92464d;padding:9px 22px;font-size:8px;letter-spacing:.2em;color:#dfbf84;margin-top:26px}.date-display{color:#e0c99f;font-family:var(--display);font-size:17px;margin-top:14px}.date-display:empty{display:none}.countdown{display:flex;justify-content:center;gap:12px;margin-top:30px}.countdown>div{min-width:72px;padding:12px 8px;background:#271910;border:1px solid #ab87495c;border-radius:45% 45% 0 0}.countdown b{font-family:var(--display);font-weight:400;font-size:38px;line-height:1.3;color:#e9c886;display:block}.countdown span{font-size:7px;letter-spacing:.12em;color:#cbb89a}.places-section{background:var(--cream)}.section-heading{text-align:center}.section-heading h2{margin-top:18px}.stations{display:grid;grid-template-columns:1fr 110px 1fr;max-width:950px;margin:70px auto 20px;align-items:stretch}.station{position:relative;text-align:center;padding:45px 25px 35px;border:1px solid #b2976a75;background:linear-gradient(145deg,#f2e6d1,#faf3e7);outline:1px solid #b2976a30;outline-offset:-8px}.station:nth-last-child(1){background:linear-gradient(145deg,#e9dbc1,#f5ead9)}.station-num{position:absolute;top:-13px;left:calc(50% - 20px);width:40px;background:var(--cream);font-family:var(--display);font-size:17px;line-height:26px;color:#916b34}.station>svg{height:52px;width:50px;margin:0 auto 20px;color:#986d31}.station h3{font-size:33px;line-height:1.3;margin-top:7px}.small-divider{display:block;width:38px;height:1px;background:#b79661;margin:20px auto}.place-name{font-family:var(--display);font-size:17px;line-height:1.5}.address{font-size:11px;color:#6e5842;line-height:1.9;margin-top:11px}.pending-label{display:inline-block;margin-top:22px;padding-bottom:5px;border-bottom:1px solid #b0977055;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#715936}.station .button{margin-top:22px}.trail{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:#b2935b}.trail .horseshoe{width:18px;height:22px;transform:rotate(-20deg);opacity:.7}.trail .horseshoe:last-child{transform:rotate(20deg)}.trail span{height:75px;border-left:1px dashed #b2935b80}.details{text-align:center;background:#e7d7bc}.details h2{margin:16px 0}.closing-section{position:relative;isolation:isolate;overflow:hidden;color:var(--cream);background:#281910;min-height:760px;display:grid;grid-template-columns:.85fr 1fr}.closing-picture{position:relative;overflow:hidden;z-index:-1}.closing-picture img{height:100%;width:100%;object-fit:cover;object-position:50% 65%;opacity:.76}.closing-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,#281910),linear-gradient(0deg,#28191077,transparent 20%)}.closing-inner{text-align:center;padding:85px 50px 70px;align-self:center}.closing-shoe{width:82px;margin:28px auto 26px}.closing-inner h2{font-size:clamp(31px,3.3vw,49px);line-height:1.23}.closing-inner h2 em{color:#d7af65}.rsvp-copy{margin:28px 0 24px;color:#dcc7aa;font-size:12px;line-height:1.9}.closing-note{margin-top:26px;font-size:7px;letter-spacing:.19em;color:#c3aa87}.closing-inner .button{font-size:10px;gap:18px}footer{position:relative;background:#1c120c;color:#c3aa87;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:36px 6vw;border-top:1px solid #ba95562b}.footer-logo{font-family:var(--display);font-size:14px;letter-spacing:.12em;color:#dbc192;display:flex;flex-direction:column;line-height:1.6}.footer-logo span{font-family:var(--body);font-size:7px;letter-spacing:.3em}footer p{font-size:9px}.signature{font-size:12px;letter-spacing:.22em;line-height:1.5;color:#dcc28e}.signature span{display:block;font-size:6px;letter-spacing:.22em}.audio-control{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));right:20px;z-index:15;width:53px;height:53px;border:1px solid #b89555;border-radius:50%;background:#291b11ed;color:#e7c58c;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 16px #0003}.audio-control svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}.audio-state{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.audio-control[aria-pressed=true]{border-style:dashed}.gate-active .audio-control{visibility:hidden}dialog{background:var(--cream);color:var(--ink);width:min(90%,470px);max-height:85svh;border:1px solid #b99656;padding:50px 35px 35px;text-align:center;box-shadow:0 20px 70px #0006}dialog::backdrop{background:#1b100bc9;backdrop-filter:blur(4px)}dialog h2{font-size:34px;margin:15px 0 24px}dialog p:not(.eyebrow){font-size:12px;line-height:1.9;margin-bottom:18px}dialog .button{margin-top:8px}.dialog-close{position:absolute;top:8px;right:10px;min-width:44px;min-height:44px;border:0;background:transparent;color:#624326;font-size:28px}.noscript-note{background:var(--cream);padding:20px;text-align:center;font-size:12px}.asset-unavailable{visibility:hidden}.will-reveal{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.letter-art.will-reveal{transform:rotate(-4deg) translateY(20px)}.will-reveal.is-visible{opacity:1;transform:none}.letter-art.will-reveal.is-visible{transform:rotate(-4deg)}
.gate{position:fixed;inset:0;z-index:100;color:var(--cream);background:transparent;isolation:isolate;perspective:1300px;overflow:hidden}.gate-door{position:absolute;top:0;bottom:0;width:50%;background-image:url('./gate-640.5a78d5d1e6.webp');background-size:200% 100%;backface-visibility:hidden;transition:transform 1.55s cubic-bezier(.65,.02,.25,1);will-change:transform;z-index:-2;background-color:#29170c}.gate-left{left:0;background-position:left center;transform-origin:left center;box-shadow:inset -2px 0 5px #000b}.gate-right{right:0;background-position:right center;transform-origin:right center;box-shadow:inset 2px 0 5px #000b}.gate-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 43%,#1e100955,#130c08b8 75%),linear-gradient(180deg,#100a07aa,transparent 20%,transparent 80%,#100a07dd);z-index:-1;transition:opacity .65s}.gate-top{position:absolute;top:max(30px,env(safe-area-inset-top));left:5vw;right:5vw;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.22em;line-height:1.6;color:#d6bd92;transition:opacity .45s}.gate-copy{position:absolute;text-align:center;width:90%;max-width:650px;left:50%;top:49%;transform:translate(-50%,-50%);transition:opacity .45s,transform .65s}.gate-copy h2{font-family:var(--display);font-size:clamp(48px,8.2vw,110px);line-height:.96;letter-spacing:.04em;margin-top:25px;color:#efd49f;text-shadow:0 2px 1px #180b0799,0 7px 22px #0007}.gate-copy h2 span{font-size:1.22em;letter-spacing:.055em}.gate-copy .flourish{margin:30px auto 15px;color:#dbb775;width:200px}.opening-line{max-width:260px;margin:0 auto 30px;font-family:var(--display);font-size:17px;line-height:1.6;color:#f1dfbf}.gate-copy .button{min-width:240px;font-size:10px;gap:28px}.skip-animation{position:absolute;right:4vw;bottom:max(75px,calc(env(safe-area-inset-bottom) + 50px));font-size:9px;color:#ead5b2;background:none;border:0;padding:12px 15px;min-height:44px;transition:opacity .4s}.gate-bottom{position:absolute;left:0;right:0;bottom:max(28px,env(safe-area-inset-bottom));text-align:center;letter-spacing:.2em;font-size:7px;color:#c1a67e;transition:opacity .4s}.gate-bottom span{margin:0 15px;color:#dbb56c}.gate.opening .gate-left{transform:rotateY(-100deg)}.gate.opening .gate-right{transform:rotateY(100deg)}.gate.opening .gate-copy{opacity:0;transform:translate(-50%,-50%) scale(1.025);pointer-events:none}.gate.opening .gate-top,.gate.opening .gate-bottom,.gate.opening .skip-animation,.gate.opening .gate-vignette{opacity:0;pointer-events:none}body.gate-active{overflow:hidden}
@media(min-width:701px){.gate-door{background-image:url('./gate-1024.4dc4ddd507.webp');background-size:200% auto}.gate-left:after,.gate-right:after{content:'';position:absolute;inset:0;border-top:15px solid #20140c66;border-bottom:15px solid #20140c66;box-shadow:inset 0 0 100px #100b0880}.hero-content{padding-top:120px}.hero{min-height:850px}.hero-line{margin-top:18px}.hero-name{font-size:10px}}
@media(min-width:1100px){.gate-copy{top:48%}.gate-copy h2{font-size:100px}.hero-content{padding-top:110px}.hero-small{margin-top:20px}.big-xv{font-size:250px}.hero-line{max-width:320px}.section-pad{padding-top:85px;padding-bottom:100px}}
@media(max-width:700px){.topbar{height:65px;padding:0 23px;gap:12px}.wordmark{font-size:10px;letter-spacing:.12em;gap:8px}.brand-star{font-size:22px}.topbar-note{display:none}.reopen{font-size:8px}.hero{min-height:700px;max-height:1000px}.hero-picture img{object-position:88% 73%}.hero-shade{background:linear-gradient(180deg,#1c110ccf 0%,#39231555 27%,#34201011 58%,#1b110b04 72%,#21150dee 100%)}.hero-content{padding-top:120px;width:95%}.hero-content>.eyebrow{font-size:8px;letter-spacing:.19em}.hero-small{font-size:9px;margin-top:24px;margin-bottom:-4px}.big-xv{font-size:180px;line-height:1.05}.hero-years{font-size:10px;letter-spacing:.44em}.hero-rule{margin:17px auto 15px}.hero-name{font-size:8px;letter-spacing:.015em}.hero-line{max-width:235px;font-size:17px;margin-top:14px}.hero-caption{left:19px;bottom:40px;font-size:6px}.explore{font-size:7px;letter-spacing:.15em}.scroll-line{height:35px}.section-pad{padding:48px 25px 65px}.section-marker{margin-bottom:44px;font-size:7px;letter-spacing:.2em;gap:12px}.section-marker span:first-child{font-size:14px}.letter-layout{display:flex;flex-direction:column;gap:45px;padding:0 0 15px}.letter-art{width:78%;max-width:345px;margin:4px auto 0}.letter-art img{aspect-ratio:4/5}.letter-paper{padding:30px 8px 0}.letter-paper:after{display:none}.letter-paper h2{font-size:38px}.letter-paper .flourish{margin:15px auto 20px}.letter-paper>.eyebrow{font-size:8px;letter-spacing:.18em}.letter-copy{font-size:12px;line-height:2;margin:24px auto;max-width:300px}.flowers-letter{width:150px;bottom:auto;top:275px;left:-30px;z-index:0}.handwritten{font-size:14px}.demo-caption{font-size:6px}.seal{width:48px;height:48px;font-size:19px}.time-section{padding-top:45px;padding-bottom:65px}.time-inner{margin-bottom:0}.clock-icon{width:40px;margin-bottom:20px}.time-inner h2{font-size:35px;margin-top:17px}.time-inner .eyebrow{font-size:7px}.time-inner .flourish{margin:22px auto}.time-pending{font-size:11px}.date-pill{font-size:7px;padding:8px 17px}.time-section:before{width:320px;height:320px;left:-235px}.time-section:after{width:320px;height:320px;right:-250px}.countdown{gap:6px}.countdown>div{min-width:57px;padding:10px 5px}.countdown b{font-size:28px}.countdown span{font-size:6px}.section-heading>.eyebrow{font-size:7px;letter-spacing:.18em}.section-heading h2{font-size:33px;line-height:1.2;margin-top:16px}.stations{display:flex;flex-direction:column;max-width:340px;margin-top:50px;gap:0}.station{padding:38px 25px 30px}.station h3{font-size:31px}.station>.eyebrow{font-size:8px}.station>svg{height:43px;margin-bottom:16px}.place-name{font-size:16px}.trail{height:90px;flex-direction:row;gap:16px}.trail span{height:42px}.trail .horseshoe{width:16px}.closing-section{min-height:auto;display:block;padding:60px 24px 65px}.closing-picture{position:absolute;inset:0;z-index:-2}.closing-picture img{opacity:.3;object-position:center 85%;filter:brightness(.65)}.closing-picture:after{background:linear-gradient(180deg,#281910,transparent 35%,#28191077 75%,#281910)}.closing-inner{padding:0;max-width:380px;margin:auto}.closing-inner>.eyebrow{font-size:7px;letter-spacing:.17em}.closing-shoe{width:72px;margin:30px auto 25px}.closing-inner h2{font-size:34px}.rsvp-copy{font-size:11px;margin:25px 0 22px}.closing-inner .button{font-size:9px;padding:15px 19px;gap:12px;min-height:51px}.closing-note{font-size:6px;letter-spacing:.1em;margin-top:23px}footer{padding:30px 24px 35px;flex-wrap:wrap;gap:19px}footer p{order:3;width:100%;font-size:8px}.footer-logo{font-size:12px}.footer-logo span{font-size:6px}.signature{font-size:11px}.signature span{font-size:5px}.gate-top{top:23px;left:23px;right:23px;font-size:6px;letter-spacing:.16em}.gate-top span:last-child{max-width:100px;text-align:right}.gate-copy{top:47%;width:90%}.gate-copy>.eyebrow{font-size:8px;letter-spacing:.21em}.gate-copy h2{font-size:50px;margin-top:24px;line-height:1.02}.gate-copy .flourish{width:180px;margin:23px auto 15px}.opening-line{font-size:16px;max-width:225px;margin-bottom:28px}.gate-copy .button{font-size:9px;min-width:230px;padding:15px 22px}.gate-bottom{font-size:5px;letter-spacing:.15em;bottom:max(25px,env(safe-area-inset-bottom))}.gate-bottom span{margin:0 8px}.skip-animation{font-size:8px;right:50%;transform:translateX(50%);bottom:max(58px,calc(env(safe-area-inset-bottom) + 40px));white-space:nowrap}dialog{padding:48px 24px 30px}dialog h2{font-size:30px}.audio-control{width:47px;height:47px;right:15px;bottom:max(15px,env(safe-area-inset-bottom))}}
@media(max-width:360px){.gate-copy h2{font-size:44px}.hero-content{padding-top:115px}.big-xv{font-size:165px}.letter-paper h2{font-size:34px}.letter-copy{font-size:11px}.section-pad{padding-left:21px;padding-right:21px}.section-heading h2{font-size:29px}.closing-inner h2{font-size:30px}.gate-top span:last-child{max-width:85px}.countdown>div{min-width:53px}.gate-bottom{letter-spacing:.07em}.hero-name{font-size:7px}}
@media(max-height:650px) and (min-width:701px){.gate-copy h2{font-size:52px}.gate-copy{top:48%}.gate-copy .flourish{margin:15px auto 10px}.gate-copy h2{margin-top:15px}.opening-line{font-size:14px;margin-bottom:15px}.gate-bottom{bottom:16px}.skip-animation{bottom:26px}.gate-top{top:16px}}
@media(max-height:600px) and (max-width:700px){.gate-copy h2{font-size:36px;margin-top:13px}.gate-copy{top:45%}.gate-copy .flourish{margin:15px auto 10px}.opening-line{font-size:13px;max-width:230px;margin-bottom:18px}.gate-top{top:14px}.gate-copy .button{min-height:44px;padding:10px 20px}.skip-animation{bottom:34px}.gate-bottom{bottom:15px}.hero{min-height:690px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.dust{display:none}.gate.opening{opacity:0}.gate.opening .gate-door{transform:none}.will-reveal{opacity:1;transform:none}.letter-art.will-reveal{transform:rotate(-4deg)}}

/* Capas de contraste local: texto legible sin ocultar el paisaje. */
.hero-name{display:table;margin-left:auto;margin-right:auto;padding:5px 11px;background:#24170f9e;border:1px solid #e8c78b26;text-shadow:0 1px 3px #130c07}.hero-line{padding:6px 10px;background:linear-gradient(90deg,transparent,#24170f85 14%,#24170f85 86%,transparent);text-shadow:0 1px 3px #130c07}
