:root{--black: #080b10;--black-2: #0b1018;--black-3: #111a25;--gold: #c9a45c;--gold-soft: #efd899;--gold-bright: #fff5d8;--gryff: #8d1f2d;--huff: #d5ae42;--raven: #1f5685;--slyth: #1b6045;--burgundy: #761f2d;--burgundy-deep: #3b1018;--parchment: #e9ddc3;--parchment-2: #cfb98c;--ink: #080b10;--ink-soft: #5a4c3a;--cream: #fff5d8;--night: #0b1018;--wine: #6b1a27;--font-display: "Cinzel", "Times New Roman", serif;--font-body: "Cormorant Garamond", Georgia, serif;--font-magic: "HarryPotter", "IM Fell English", "MedievalSharp", "Cinzel", serif;--mast-h: 4.75rem;--nav-h: 4.2rem;--ribbon: 4px;--pad: 1.15rem;--max: 42rem}@font-face{font-family:HarryPotter;src:url(/fonts/HARRYP__.TTF) format("truetype");font-weight:400;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}html{background:var(--black);scroll-behavior:smooth;overflow-x:hidden}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;color:var(--cream);font-family:var(--font-body);font-size:1.125rem;line-height:1.55;background:var(--black);text-rendering:optimizeLegibility}img,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:.08em;line-height:1.15;margin:0}p{margin:0}a{color:inherit}code{font-size:.85em;color:var(--gold-soft)}#theme-bgm,#theme-sting{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.skip{position:absolute;left:.75rem;top:-3rem;z-index:40;padding:.5rem .8rem;background:var(--gold);color:var(--black);text-decoration:none}.skip:focus{top:.75rem}.houses{position:fixed;top:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:repeat(4,1fr);height:calc(var(--ribbon) + env(safe-area-inset-top));background:var(--black)}.houses span{margin-top:auto;height:var(--ribbon)}.houses__g{background:var(--gryff)}.houses__h{background:var(--huff)}.houses__r{background:var(--raven)}.houses__s{background:var(--slyth)}.shell{min-height:100dvh;padding-top:calc(var(--mast-h) + var(--ribbon) + env(safe-area-inset-top));padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom))}.mast{position:fixed;top:calc(var(--ribbon) + env(safe-area-inset-top));left:0;right:0;z-index:28;display:flex;align-items:center;justify-content:space-between;gap:1.4rem;height:var(--mast-h);padding:0 clamp(1rem,4vw,4rem);border-bottom:1px solid rgba(201,164,92,.16);background:linear-gradient(180deg,#040609f0,#040609b8);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:inline-flex;align-items:center;gap:.8rem;min-width:0;text-decoration:none;color:inherit}.brand__crest{width:2.85rem;height:2.85rem;flex:none;object-fit:contain}.brand span:last-child{display:flex;flex-direction:column;min-width:0}.brand small{color:var(--gold);font-family:var(--font-display);font-size:.5rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase}.brand strong{margin-top:.25rem;font-family:var(--font-display);font-size:clamp(.88rem,2.4vw,1.15rem);font-weight:500;letter-spacing:.04em}.desk-nav{display:none;align-items:center;gap:clamp(1.2rem,3vw,2.8rem)}.desk-nav__link{position:relative;padding:1.8rem 0 1.5rem;color:#d7d2c8;font-family:var(--font-display);font-size:.62rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-decoration:none}.desk-nav__link:after{content:"";position:absolute;left:50%;bottom:1.05rem;width:0;height:1px;background:var(--gold);transform:translate(-50%);transition:width .25s}.desk-nav__link:hover,.desk-nav__link.is-active{color:var(--gold-soft)}.desk-nav__link:hover:after,.desk-nav__link.is-active:after{width:100%}.mast__tools{margin-left:auto;display:flex;align-items:center;gap:.55rem;flex:none}.sound-btn{display:grid;place-items:center;width:42px;height:42px;min-width:42px;min-height:42px;padding:0;border:1px solid rgba(201,164,92,.36);border-radius:50%;background:#07090d9e;color:var(--gold-bright);cursor:pointer}.sound-btn.is-on{background:var(--gold);color:var(--black)}.sound-btn svg{display:block}.menu-btn{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:0;border:0;background:none;color:var(--gold-bright);cursor:pointer}.menu-btn__label{font-family:var(--font-display);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase}.menu-btn__bars,.menu-btn__bars:before,.menu-btn__bars:after{display:block;width:1.15rem;height:1px;background:var(--gold)}.menu-btn__bars{position:relative}.menu-btn__bars:before,.menu-btn__bars:after{content:"";position:absolute;left:0}.menu-btn__bars:before{top:-5px}.menu-btn__bars:after{top:5px}.menu-btn.is-open .menu-btn__bars{background:transparent}.menu-btn.is-open .menu-btn__bars:before{top:0;transform:rotate(45deg)}.menu-btn.is-open .menu-btn__bars:after{top:0;transform:rotate(-45deg)}.menu{position:fixed;left:0;right:0;bottom:0;z-index:28;display:block;overflow:hidden;background:#04070af0;padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(201,164,92,.32)}.menu:before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--gryff),var(--huff),var(--raven),var(--slyth))}.menu__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:var(--nav-h);align-items:center}.menu__list li{display:flex;align-items:center;justify-content:center;height:100%;min-width:0}.menu__link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.42rem;width:100%;height:100%;min-width:0;min-height:44px;padding:.35rem 0 .55rem;font-family:var(--font-display);font-size:.48rem;letter-spacing:.08em;line-height:1;text-transform:uppercase;text-decoration:none;color:#b3a88f}.menu__icon{display:flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}.menu__icon svg{display:block}.menu__label{display:block;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis}.menu__link.is-active{color:var(--gold-bright)}.stage{animation:rise .55s ease both}@keyframes rise{0%{opacity:0}to{opacity:1}}.page{width:min(100%,var(--max));max-width:100%;margin:0 auto;padding:.5rem var(--pad) 2.4rem}.eyebrow{font-family:var(--font-display);font-size:.68rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:.55rem}.lede{color:#cfc3a6;font-size:1.15rem;margin-top:.7rem}.panel{width:min(100%,var(--max));margin:0 auto;padding:1.75rem var(--pad) 2.4rem}.panel__head h1,.panel__head h2{font-size:clamp(1.7rem,7vw,2.4rem)}.seal-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.4rem;margin-top:1.2rem;border:1px solid var(--gold);background:var(--black);color:var(--gold-bright);font-family:var(--font-display);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;cursor:pointer}.seal-btn:active{transform:translateY(1px)}.home{overflow:clip}.hero{position:relative;min-height:100dvh;display:grid;place-content:center;place-items:center;overflow:hidden}.sky,.hero__video,.hero__veil{position:absolute;inset:0}.sky{background:radial-gradient(ellipse at 50% 120%,#161616 0%,transparent 48%),#000;overflow:hidden}.sky__wash{position:absolute;inset:0;background:radial-gradient(circle at 70% 18%,rgba(201,165,106,.12),transparent 28%)}.sky__aurora{position:absolute;left:-10%;right:-10%;top:8%;height:42%;background:radial-gradient(ellipse at 18% 60%,rgba(122,18,28,.28),transparent 55%),radial-gradient(ellipse at 40% 40%,rgba(201,162,39,.14),transparent 50%),radial-gradient(ellipse at 62% 50%,rgba(22,48,92,.28),transparent 52%),radial-gradient(ellipse at 84% 44%,rgba(26,71,50,.24),transparent 50%);filter:blur(18px);animation:drift 16s ease-in-out infinite alternate}.sky__stars{position:absolute;width:2px;height:2px;border-radius:50%;background:transparent}.sky__stars--near{animation:twinkle 3.6s ease-in-out infinite}.sky__stars--far{opacity:.55}.sky__moon{position:absolute;top:12%;right:14%;width:3.4rem;height:3.4rem;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f7efc8,#c9b56a 70%);box-shadow:0 0 40px #f3e2a847}.sky__mist{position:absolute;left:-20%;right:-20%;bottom:8%;height:38%;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);filter:blur(10px)}.sky__mist--b{bottom:0;opacity:.6;animation:drift 18s ease-in-out infinite alternate-reverse}.sky__castle{position:absolute;left:-5%;right:-5%;bottom:0;width:110%;height:auto}.sky__candles{position:absolute;inset:18% 6% 28%;pointer-events:none}.candle{position:absolute;width:4px;height:18px;background:linear-gradient(#f3e2a8,#c9a227);border-radius:1px 1px 0 0;box-shadow:0 -8px 16px #f3e2a8b3;animation:float 5.5s ease-in-out infinite}.candle:after{content:"";position:absolute;left:50%;top:-7px;width:6px;height:8px;border-radius:50%/60% 60% 40% 40%;background:#ffe9a0;transform:translate(-50%);box-shadow:0 0 10px #ffd978}.candle--1{left:8%;top:20%;animation-delay:0s}.candle--2{left:22%;top:58%;animation-delay:.6s}.candle--3{left:38%;top:12%;animation-delay:1.1s}.candle--4{left:52%;top:46%;animation-delay:.3s}.candle--5{left:66%;top:18%;animation-delay:1.5s}.candle--6{left:78%;top:62%;animation-delay:.8s}.candle--7{left:14%;top:78%;animation-delay:1.8s}.candle--8{left:90%;top:30%;animation-delay:1.2s}.candle--9{left:46%;top:72%;animation-delay:2s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes drift{0%{transform:translate(-2%)}to{transform:translate(3%)}}@keyframes twinkle{0%,to{opacity:1}50%{opacity:.45}}.hero__video{width:100%;height:100%;object-fit:cover;z-index:1;opacity:0;transition:opacity .8s ease}.hero__video.is-ready{opacity:1}.hero__veil{z-index:2;background:linear-gradient(to top,#000,#00000047 32%,#0003)}.hero__copy{position:relative;z-index:3;width:min(100%,36rem);padding:0 var(--pad) 2.4rem;text-align:center}.hero__copy .seal-btn{margin-top:.85rem}.hero__copy .seal-btn+.seal-btn{background:transparent}.hero__names{display:flex;flex-direction:column;align-items:center;font-family:var(--font-magic);font-size:clamp(2.8rem,14vw,5rem);font-weight:400;letter-spacing:.01em;line-height:.92;color:#fff6dc;-webkit-text-stroke:.35px rgba(201,165,106,.55);text-shadow:0 0 18px rgba(243,230,193,.4),0 2px 0 rgba(0,0,0,.55),0 10px 28px rgba(0,0,0,.75)}.hero__amp{font-family:var(--font-magic);font-size:.52em;color:var(--gold);line-height:.85;margin:.08em 0;letter-spacing:0}.hero__tag,.hero__meta{color:#e6d7b3}.hero__tag{margin-top:1rem;font-style:italic;font-size:1.15rem}.hero__meta{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;margin-top:.7rem;font-family:var(--font-display);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.dot{width:4px;height:4px;border-radius:50%;background:var(--gold)}.hero__houses{display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem;width:min(100%,22rem);margin:1rem auto 0;font-family:var(--font-display);font-size:.48rem;letter-spacing:.1em;text-transform:uppercase}.hero__houses span:nth-child(1){color:#e8b4b4}.hero__houses span:nth-child(2){color:var(--huff)}.hero__houses span:nth-child(3){color:#9eb6e0}.hero__houses span:nth-child(4){color:#8fceb0}.invite{width:min(100%,var(--max));margin:0 auto;padding:3rem var(--pad) 3.4rem;text-align:center;scroll-margin-top:calc(var(--mast-h) + var(--ribbon) + env(safe-area-inset-top) + .6rem)}.invite .hero__tag,.invite .hero__meta,.invite .hero__houses,.invite .countdown,.invite .hero__actions{margin-left:auto;margin-right:auto}.hero__actions{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-top:1.2rem}.hero__actions .seal-btn{margin-top:0}.hero__actions .text-link{display:inline-flex;align-items:center;min-height:44px}.countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;width:min(100%,22rem);margin:1.15rem auto 0}.countdown__cell{display:flex;flex-direction:column-reverse;align-items:center;padding:.55rem .2rem .5rem;background:#00000073;text-align:center}.house-gryff{border:1px solid var(--gryff)}.house-huff{border:1px solid var(--huff)}.house-raven{border:1px solid var(--raven)}.house-slyth{border:1px solid var(--slyth)}.countdown dt{font-family:var(--font-display);font-size:.52rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.countdown dd{margin:.15rem 0 0;font-family:var(--font-display);font-size:clamp(1.15rem,5vw,1.55rem);color:var(--gold-bright)}.countdown--done{margin-top:1rem;font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft)}.page.schedule{width:100%;max-width:none;padding:0 0 4rem;background:radial-gradient(circle at 50% 0,#182536,#0a0e14 48%)}.schedule-board{padding:2.4rem 1.5rem 5.5rem}.schedule-tabs{width:min(690px,94%);margin:0 auto 2.25rem;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(201,164,92,.26)}.schedule-tabs button{padding:.88rem .6rem;border:0;border-right:1px solid rgba(201,164,92,.21);background:#ffffff05;color:#a6a49e;cursor:pointer}.schedule-tabs button:last-child{border-right:0}.schedule-tabs button span,.schedule-tabs button strong{display:block}.schedule-tabs button span{font-family:var(--font-body);font-style:italic;font-size:.95rem}.schedule-tabs button strong{margin-top:.25rem;font-family:var(--font-display);font-size:.56rem;font-weight:600;letter-spacing:.12em}.schedule-tabs button.is-active{color:#1b130a;background:var(--gold)}.scroll-card{position:relative;width:min(770px,94%);margin:auto;padding:4.1rem clamp(1.75rem,7vw,5.25rem);color:#352515;background:linear-gradient(90deg,#c4ae7d,#eee1c5 10%,#e6d6b6,#efe2c9 90%,#b99e68);box-shadow:0 26px 80px #00000080,inset 0 0 65px #603c1a26}.scroll-card:before,.scroll-card:after{content:"";position:absolute;left:-3%;width:106%;height:24px;border-radius:50%;background:linear-gradient(#9d824e,#dcc896 45%,#806539);box-shadow:0 6px 12px #0000004d}.scroll-card:before{top:-9px}.scroll-card:after{bottom:-9px}.scroll-card__ornament{text-align:center;color:#835a28;font-size:1.5rem}.scroll-card__kicker{margin:.45rem 0;text-align:center;color:#7a552b;font-style:italic}.scroll-card h3{margin:0 0 2.25rem;text-align:center;font-family:var(--font-magic);font-size:clamp(1.75rem,4vw,2.6rem);font-weight:500}.scroll-card ol{list-style:none;margin:0;padding:0}.scroll-card li{position:relative;display:grid;grid-template-columns:92px 28px 1fr;gap:.75rem;padding-bottom:1.75rem}.scroll-card li:not(:last-child):after{content:"";position:absolute;left:117px;top:27px;bottom:2px;width:1px;background:#603f1f52}.scroll-card time{padding-top:.2rem;text-align:right;font-family:var(--font-display);font-size:.56rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.scroll-card__until{display:block;margin-top:.2rem;opacity:.7}.timeline-star{position:relative;z-index:1;width:28px;height:28px;display:grid;place-items:center;color:#76411e;background:#ddcca8;border:1px solid #8c642d;border-radius:50%}.scroll-card h4{margin:0 0 .25rem;font-family:var(--font-display);font-size:1.2rem;font-weight:600}.scroll-card li p{margin:0 0 .35rem;font-size:1rem;line-height:1.45;opacity:.72}.scroll-card .cal-btn{min-height:0;margin-top:.5rem;color:#70461d;font-size:.5rem;letter-spacing:.1em}.schedule-sky{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#000}.hall{position:absolute;inset:0}.hall__glow{position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,rgba(201,162,39,.1),transparent 26%),radial-gradient(circle at 84% 16%,rgba(243,226,168,.08),transparent 22%),radial-gradient(circle at 70% 78%,rgba(201,162,39,.07),transparent 24%),radial-gradient(circle at 12% 72%,rgba(122,18,28,.08),transparent 28%)}.hall-candle{opacity:.45;box-shadow:0 -6px 12px #f3e2a847}.hall-candle:after{opacity:.7;box-shadow:0 0 8px #ffd97866}.candle--lg{width:6px;height:26px}.hall-candle.candle--lg{opacity:.55}.candle--lg:after{width:9px;height:12px;top:-9px}.hall-candle.candle--lg:after{box-shadow:0 0 10px #ffd97866}.hall-candle--1{left:3%;top:10%;animation-delay:0s}.hall-candle--2{left:9%;top:28%;animation-delay:.5s}.hall-candle--3{left:5%;top:52%;animation-delay:1.1s}.hall-candle--4{left:11%;top:74%;animation-delay:.3s}.hall-candle--5{left:22%;top:8%;animation-delay:1.6s}.hall-candle--6{left:78%;top:9%;animation-delay:.8s}.hall-candle--7{left:91%;top:18%;animation-delay:1.9s}.hall-candle--8{left:96%;top:36%;animation-delay:.4s}.hall-candle--9{left:88%;top:54%;animation-delay:1.3s}.hall-candle--10{left:94%;top:72%;animation-delay:.7s}.hall-candle--11{left:84%;top:86%;animation-delay:2.1s}.hall-candle--12{left:70%;top:6%;animation-delay:1.4s}.hall-candle--13{left:32%;top:5%;animation-delay:.2s}.hall-candle--14{left:48%;top:4%;animation-delay:1.7s}.hall-candle--15{left:16%;top:88%;animation-delay:.9s}.hall-candle--16{left:58%;top:90%;animation-delay:1.5s}.hall-candle--17{left:38%;top:86%;animation-delay:.6s}.hall-candle--18{left:6%;top:40%;animation-delay:2s}.atlas-head,.atlas-sticky,.folio{position:relative;z-index:1}.atlas-sticky{flex:none;z-index:20;margin:.3rem 0 .35rem;padding:.1rem 0 .2rem}.atlas-head{flex:none;text-align:center;padding-top:.15rem}.atlas-head h1{font-family:var(--font-magic);font-weight:400;font-size:clamp(1.2rem,5.2vw,1.85rem);letter-spacing:.02em;color:var(--gold-bright);text-shadow:0 0 22px rgba(243,230,193,.45),0 2px 0 rgba(0,0,0,.55)}.atlas-head .lede{color:var(--gold-soft);font-size:.9rem;line-height:1.4;margin-top:.3rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.atlas-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.28rem;margin:0;padding:0;background:none;width:100%;max-width:100%}.atlas-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;container-type:inline-size;min-width:0;max-width:100%;min-height:42px;padding:.38rem .08rem .32rem;border:1px solid rgba(201,165,106,.22);background:#0806049e;color:var(--gold-soft);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;transition:color .38s ease,border-color .38s ease,background-color .38s ease,box-shadow .42s ease}.atlas-tab__label{font-family:var(--font-display);font-size:clamp(.52rem,8.4cqi,.86rem);letter-spacing:.01em;line-height:1.2;white-space:nowrap}.atlas-tab__dot{color:var(--gold);padding:0 .06rem}.atlas-tab:after{content:"";display:block;width:1.55rem;height:3px;margin-top:.28rem;transform:scaleX(.42);opacity:.38;transform-origin:center;box-shadow:0 0 8px currentColor;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .38s ease}.atlas-tab--huff:after{background:var(--huff);color:var(--huff)}.atlas-tab--gryff:after{background:var(--gryff);color:var(--gryff)}.atlas-tab--raven:after{background:var(--raven);color:var(--raven)}.atlas-tab.is-on{border-color:#f3e6c180;color:var(--gold-bright);background:#140e08c7;box-shadow:0 0 22px #c9a56a38,inset 0 0 16px #c9a56a1a}.atlas-tab.is-on:after{transform:scaleX(1);opacity:1}.folio{position:relative;flex:1;min-height:min(22rem,40dvh);overflow:hidden;margin:0 -.1rem;touch-action:pan-y;overscroll-behavior:contain;cursor:grab}.folio img{-webkit-user-drag:none}.folio.is-drag{cursor:grabbing;-webkit-user-select:none;user-select:none}.folio.is-drag:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(243,230,193,.08),transparent 18%,transparent 82%,rgba(243,230,193,.08));box-shadow:inset 0 0 48px #c9a56a1f}.folio__track{display:flex;align-items:stretch;height:100%;transition:transform .62s cubic-bezier(.22,1,.36,1);will-change:transform}.folio__track.is-drag{transition:none}.folio__page{flex:0 0 100%;width:100%;height:100%;min-height:0;display:flex;padding:.2rem .25rem .25rem}.scroll{--rail: 4.72rem;position:relative;display:flex;flex-direction:column;flex:1;min-height:0;height:100%;color:var(--ink)}.scroll__rod{display:grid;grid-template-columns:1.35rem minmax(0,1fr) 1.35rem;align-items:center;z-index:3;position:relative;flex:none}.scroll__shaft{position:relative;height:1.05rem;border-radius:999px;background:linear-gradient(180deg,#8a6238,#6b4324 28%,#4a2c16 62%,#2e1a0c);box-shadow:inset 0 2px #d2aa6e2e,inset 0 -2px #0006}.scroll__knob{position:relative;z-index:1;width:1.35rem;height:1.35rem;border-radius:50%;background:radial-gradient(circle at 32% 28%,#a07848,#6b4324 48%,#2e1a0c 78%);box-shadow:inset 0 2px 2px #d2aa6e2e,inset 0 -2px 3px #0006}.scroll__sheet{--rail: inherit;position:relative;z-index:1;display:flex;flex-direction:column;flex:1;min-height:0;margin:-.42rem .92rem -.28rem;padding:1.15rem 1.05rem 1.55rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(90,58,18,.35) transparent;background:radial-gradient(ellipse at 14% 8%,rgba(92,52,12,.18),transparent 32%),radial-gradient(ellipse at 88% 14%,rgba(110,70,22,.14),transparent 26%),radial-gradient(circle at 72% 38%,rgba(130,78,24,.1),transparent 18%),radial-gradient(ellipse at 18% 62%,rgba(80,48,10,.1),transparent 28%),repeating-linear-gradient(181deg,rgba(70,42,10,.045) 0 1px,transparent 1px 6px),linear-gradient(180deg,#e4cc96,#d8bc84 55%,#d2b47a);box-shadow:inset 24px 0 26px -16px #4626062e,inset -24px 0 26px -16px #4626062e,inset 0 14px 12px -8px #3c200638}.scroll__ink{display:flex;flex-direction:column;flex:1;min-height:100%}.spell-word{display:inline-block;transform-origin:50% 70%}.spell-unit{transform-origin:50% 60%}.scroll.is-banish .spell-word,.scroll.is-banish .spell-unit{animation:wordVanishOut .26s ease forwards;animation-delay:calc(var(--line) * 36ms + var(--w) * 24ms)}.scroll.is-summon .spell-word,.scroll.is-summon .spell-unit{animation:wordVanishIn .34s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--line) * 42ms + var(--w) * 28ms)}.scroll.is-banish .star__node,.scroll.is-banish .cal-btn{animation:wordVanishOut .26s ease forwards;animation-delay:calc(var(--line, 8) * 36ms + .08s)}.scroll.is-summon .star__node,.scroll.is-summon .cal-btn{animation:wordVanishIn .34s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--line, 8) * 42ms + .1s)}.scroll__crest{position:relative;z-index:1;display:block;flex:none;width:4.4rem;height:4.4rem;margin:auto auto .15rem;padding-top:1.25rem;object-fit:contain;opacity:.58;filter:sepia(.45) contrast(.92) brightness(.92)}.constellation__head,.stars{position:relative;z-index:1}.constellation__head{margin:0 0 .95rem;padding-left:5.55rem;text-align:left}.constellation__kicker,.constellation__weekday{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--burgundy);margin:0}.constellation__kicker{font-size:.46rem;margin-bottom:.16rem;opacity:.85}.constellation__weekday{font-size:.52rem;letter-spacing:.26em;margin-top:.22rem}.constellation__date-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .7rem}.constellation__date{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .45rem;font-family:var(--font-magic);font-weight:400;font-size:clamp(1.15rem,5.2vw,1.65rem);letter-spacing:.02em;line-height:1.05;color:var(--ink);margin:0}.constellation__when{min-width:0}.constellation__year{font-family:var(--font-display);font-size:.58rem;letter-spacing:.16em;color:var(--ink-soft)}.constellation__mark{display:inline-flex;align-items:center;flex:none;margin:0;padding:.3rem .58rem .26rem;border:1px solid rgba(201,165,106,.85);font-family:var(--font-display);font-size:.62rem;letter-spacing:.14em;line-height:1;text-transform:uppercase;color:var(--burgundy);background:linear-gradient(180deg,#f7edd4,#ead6a8);box-shadow:inset 0 1px #fff8e4e6,0 1px #5a340e1f;white-space:nowrap}.stars{position:relative;z-index:1;list-style:none;margin:0;padding:0 0 .25rem;flex:1}.stars:before{content:"";position:absolute;left:var(--rail);top:.35rem;bottom:.85rem;width:2px;margin-left:-1px;background:linear-gradient(180deg,#5a340e80,#5a340e24);border-radius:2px}.star{display:grid;grid-template-columns:3.9rem .85rem minmax(0,1fr);grid-template-areas:"time node body";column-gap:.4rem;align-items:start;padding:0 0 1.05rem}.star:last-child{padding-bottom:.1rem}.star__node{grid-area:node;display:grid;place-items:center;width:.85rem;height:.85rem;margin-top:.12rem;color:var(--gold)}.star__node svg{width:100%;height:100%;fill:currentColor;filter:drop-shadow(0 0 3px rgba(201,165,106,.45))}.star--0 .star__node{color:var(--gryff)}.star--1 .star__node{color:var(--huff)}.star--2 .star__node{color:var(--raven)}.star--3 .star__node{color:var(--slyth)}.star--peak .star__node{width:1.05rem;height:1.05rem;margin-left:-.1rem;margin-top:.02rem;color:var(--gold)}.star__time{grid-area:time;display:flex;flex-direction:column;align-items:flex-end;gap:.08rem;margin:0;padding-top:.16rem;text-align:right;font-family:var(--font-display);font-size:.68rem;letter-spacing:.05em;line-height:1.2;text-transform:uppercase;color:var(--burgundy)}.star__until{color:var(--ink-soft)}.star__until:before{content:none}.star__body{grid-area:body;min-width:0;padding:.02rem 0 .15rem}.star:not(:last-child) .star__body{box-shadow:0 1px #5a340e1f;padding-bottom:.95rem}.star__title{font-family:var(--font-display);font-size:.92rem;letter-spacing:.03em;color:var(--ink);margin:0 0 .2rem}.star--peak .star__title{font-family:var(--font-magic);font-weight:400;font-size:1.05rem;letter-spacing:.02em}.star__place{display:flex;align-items:center;gap:.28rem;margin:0 0 .35rem;color:var(--ink-soft);font-size:.88rem;font-style:italic}.star__pin{display:inline-flex;flex-shrink:0;transform-origin:50% 50%}.star__place svg{flex-shrink:0;color:var(--burgundy)}.star__note{color:var(--ink);font-size:.9rem;line-height:1.42;margin:0 0 .32rem}.star__note:last-of-type{margin-bottom:.08rem}.star .cal-btn{color:var(--burgundy);min-height:36px;font-size:.58rem;letter-spacing:.12em}@keyframes inkWrite{0%{opacity:0;transform:translateY(10px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}@keyframes wordVanishOut{0%{opacity:1;filter:blur(0);transform:scale(1)}to{opacity:0;filter:blur(4px);transform:scale(.86)}}@keyframes wordVanishIn{0%{opacity:0;filter:blur(4px);transform:scale(.86)}to{opacity:1;filter:none;transform:scale(1)}}.folio.is-swap .folio__track,.folio.is-casting .folio__track{transition:none}@media(prefers-reduced-motion:reduce){.scroll.is-banish .spell-word,.scroll.is-summon .spell-word,.scroll.is-banish .spell-unit,.scroll.is-summon .spell-unit,.scroll.is-banish .star__node,.scroll.is-summon .star__node,.scroll.is-banish .cal-btn,.scroll.is-summon .cal-btn{animation:none}.folio__track{transition:none}.atlas-tab,.atlas-tab:after{transition:none}}.cal-btn{display:inline-flex;min-height:44px;align-items:center;gap:.4rem;margin-top:.2rem;padding:0;border:0;background:none;font-family:var(--font-display);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright);cursor:pointer}.cal-btn svg{display:block;flex-shrink:0}.inn__address,.pin__address{display:flex;align-items:flex-start;gap:.4rem;margin:.15rem 0 .65rem;color:var(--gold-soft);font-size:1rem;line-height:1.4;text-decoration:none}.inn__address svg{flex-shrink:0;margin-top:.18rem;color:var(--gold)}.rsvp{padding-top:.4rem}.letter,.inn{position:relative;padding:1.5rem 1.15rem 1.8rem;color:var(--ink);background:radial-gradient(circle at 12% 8%,rgba(255,248,228,.9),transparent 36%),linear-gradient(180deg,var(--parchment),var(--parchment-2));border:1px solid rgba(122,90,40,.28);box-shadow:inset 0 0 0 6px #c9a56a2e,0 18px 40px #00000073}.letter:before,.inn:before{content:"";display:block;height:4px;margin:-1.5rem -1.15rem 1.15rem;background:linear-gradient(90deg,var(--gryff),var(--huff),var(--raven),var(--slyth))}.letter:after,.inn:after{content:"";position:absolute;inset:12px;border:1px solid rgba(122,90,40,.16);pointer-events:none}.letter__filter{position:absolute;width:0;height:0;overflow:hidden}.letter__crest{display:block;width:4.6rem;height:4.6rem;margin:-.4rem auto 1.1rem;object-fit:contain;background:none}.letter h1,.letter h2{color:var(--black);text-align:center}.letter .eyebrow,.letter .lede{color:var(--ink-soft);text-align:center}.letter .lede+.lede{margin-top:.45rem}.letter__from{font-family:var(--font-display);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--burgundy);margin-bottom:.7rem;text-align:center}.form{display:grid;gap:1.05rem;margin-top:1.35rem}.form label,.form fieldset{display:grid;gap:.4rem;font-family:var(--font-display);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--burgundy);border:0;padding:0;margin:0}.form legend{padding:0;margin-bottom:.35rem}.optional{margin-left:.35rem;font-size:.58rem;letter-spacing:.14em;color:var(--ink-soft)}.form__hint{margin-top:.2rem;font-family:var(--font-body);font-size:.95rem;letter-spacing:0;text-transform:none;color:var(--ink-soft)}.pick{display:grid;gap:.55rem}.pick__btn,.house-pick__btn{min-height:48px;padding:.7rem .85rem;border:1px solid rgba(90,60,20,.28);background:#fffaebb8;color:var(--ink);font-family:var(--font-display);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.pick__btn.is-on{background:var(--burgundy-deep);border-color:var(--burgundy);color:var(--gold-bright)}.house-pick{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.house-pick__btn--gryffindor.is-on{background:var(--gryff);border-color:var(--gryff);color:var(--gold-bright)}.house-pick__btn--hufflepuff.is-on{background:#8a7014;border-color:var(--huff);color:#fff6dc}.house-pick__btn--ravenclaw.is-on{background:var(--raven);border-color:var(--raven);color:var(--gold-bright)}.house-pick__btn--slytherin.is-on{background:var(--slyth);border-color:var(--slyth);color:var(--gold-bright)}.form input,.form select,.form textarea{width:100%;min-height:46px;padding:.55rem .7rem;border:0;border-bottom:1px solid rgba(90,60,20,.34);background:#fffaeb8c;color:var(--ink);text-transform:none;letter-spacing:0;font-family:var(--font-body);font-size:1.1rem}.form textarea{min-height:7rem;resize:vertical;border:1px solid rgba(90,60,20,.24)}.form .seal-btn{justify-self:center;margin-top:.4rem}.form .seal-btn:disabled{opacity:.4;cursor:not-allowed}.form__error{margin:.2rem 0 0;color:var(--burgundy);font-size:1rem;text-align:center}.letter--sent{text-align:center;padding-top:2.4rem;padding-bottom:2.4rem}.page.stay{isolation:isolate;position:relative;padding-bottom:0;overflow-x:hidden;background:#0b1018}.stay-section{min-height:860px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(460px,.95fr);background:#0b1018}.stay-section__image{min-height:680px;background:linear-gradient(90deg,transparent 50%,#0b1018),url(/phuket-magic-dusk.png) center / cover no-repeat}.stay-section__content{padding:6.25rem max(1.75rem,6vw) 6.25rem 1.5rem;align-self:center}.stay-section__content h2{margin:.6rem 0 .5rem;font-family:var(--font-magic);font-size:clamp(2.5rem,5vw,3.9rem);font-weight:500;line-height:1}.stay-section__content>.lede{margin:0 0 .85rem;color:#b8b4aa;font-size:1.3rem}.stay-section__note{margin:0 0 1.9rem;color:#8f8c84;font-size:1.05rem;line-height:1.45}.stay-card{margin-top:.95rem;padding:1.55rem 1.7rem;border:1px solid rgba(201,164,92,.21);background:#ffffff06}.stay-card--featured{border-color:#c9a45c94;background:linear-gradient(120deg,#c9a45c1c,#ffffff05)}.stay-card__tag{color:var(--gold);font-family:var(--font-display);font-size:.5rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.stay-card h3{margin:.5rem 0 .45rem;font-family:var(--font-display);font-size:1.45rem;font-weight:500}.stay-card p{margin:0 0 .75rem;color:#a7a59f;font-size:1.05rem;line-height:1.45}.stay-card address{display:flex;gap:.4rem;align-items:center;color:#d5c9b0;font-style:normal;font-size:.95rem}.stay-card__links{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.6rem}.stay-card__links a{min-height:36px;padding:0 .75rem;display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(201,164,92,.35);color:var(--gold-soft);font-family:var(--font-display);font-size:.5rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.stay-card__map{margin-top:1.1rem;overflow:hidden;border:1px solid rgba(201,164,92,.22);background:#080b10}.stay-card__map iframe{display:block;width:100%;height:14rem;border:0}.eyebrow--left:before{content:"";width:1.6rem;height:1px;background:currentColor;opacity:.6}.stay-sky{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#000}.stay-head,.inns,.stay-crest,.page.stay .page-hero{position:relative;z-index:1}.stay-head{text-align:center;padding-top:.15rem}.stay-head h1{font-family:var(--font-magic);font-weight:400;font-size:clamp(1.2rem,5.2vw,1.85rem);letter-spacing:.02em;line-height:1.25;color:var(--gold-bright);text-shadow:0 0 22px rgba(243,230,193,.45),0 2px 0 rgba(0,0,0,.55)}.stay-head .lede{max-width:34rem;margin-left:auto;margin-right:auto;color:var(--gold-soft);font-size:.9rem;line-height:1.4;margin-top:.3rem;text-shadow:0 1px 10px rgba(0,0,0,.7);overflow-wrap:break-word}.stay-head__note{font-size:.9rem;color:var(--gold-soft)}.stay-gift{display:block;box-sizing:border-box;width:fit-content;max-width:100%;margin:.95rem auto 0;padding:.3rem .7rem .26rem;border:1px solid rgba(201,165,106,.85);font-family:var(--font-display);font-size:.58rem;letter-spacing:.1em;line-height:1.45;text-transform:uppercase;color:var(--gold-bright);background:#0806049e;box-shadow:0 0 18px #c9a56a29;white-space:normal}.inns,.pins{list-style:none;margin:1.3rem 0 0;padding:0;display:grid;gap:.9rem}.inns{gap:1.7rem;margin-top:1.55rem;min-width:0;width:100%}.pin{padding:1.05rem 1rem 1.1rem;background:var(--black-2);border:1px solid rgba(201,165,106,.22)}.inn{min-width:0;width:100%;max-width:100%}.inn__kicker{margin:0 0 .35rem;font-family:var(--font-display);font-size:.52rem;letter-spacing:.2em;text-transform:uppercase;color:var(--burgundy)}.inn__tags{display:flex;flex-wrap:wrap;gap:.38rem;margin:.85rem 0 0;padding:0;list-style:none}.inn__tags li{max-width:100%;padding:.28rem .5rem .24rem;border:1px solid rgba(90,60,20,.28);font-family:var(--font-display);font-size:.48rem;letter-spacing:.1em;text-transform:uppercase;color:var(--burgundy);background:#fffaebb8}.atlas-card__head,.ways__head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin:0 0 .6rem}.atlas-card__label,.ways__head p,.atlas-card__head span{margin:0;font-family:var(--font-display);font-size:.52rem;letter-spacing:.18em;text-transform:uppercase;color:var(--burgundy)}.atlas-card__head a:hover,.ways__head a:hover{background:#fffaebf2}.inn__atlas{display:grid;gap:.75rem;margin-top:1.15rem}.atlas-card{min-width:0;background:#fffaeb8c;border:1px solid rgba(90,60,20,.24)}.atlas-card--map{overflow:hidden}.atlas-card__head{flex-wrap:wrap;row-gap:.4rem;padding:.55rem .75rem .45rem;margin:0}.atlas-card__head a,.ways__head a{font-family:var(--font-display);font-size:.5rem;letter-spacing:.14em;text-transform:uppercase;color:var(--burgundy);text-decoration:none;border:1px solid rgba(90,60,20,.28);padding:.22rem .48rem;background:#fffaebb8}.atlas-card--address{padding:.85rem .9rem .95rem}.inn__address-copy{margin:.45rem 0 .7rem;color:var(--ink);font-size:.95rem;line-height:1.45}.atlas-card--address .inn__place{margin:0}.inn__ways{margin-top:1.1rem;padding-top:.95rem;border-top:1px solid rgba(90,60,20,.24)}.ways__hint{margin:0 0 .75rem;color:var(--ink-soft);font-size:.9rem;line-height:1.45}.ways__grid{display:grid;gap:.65rem}.ways__card{display:flex;flex-direction:column;gap:.22rem;min-height:48px;padding:.7rem .85rem;border:1px solid rgba(90,60,20,.28);background:#fffaebb8;text-decoration:none;color:inherit}.ways__card:hover{background:#fffaebf2}.ways__card strong{font-family:var(--font-display);font-size:.78rem;letter-spacing:.04em;color:var(--ink)}.ways__card span{color:var(--ink-soft);font-size:.88rem;line-height:1.35}.inn__top{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-bottom:.7rem}.inn__seal{position:relative;top:auto;right:auto;z-index:2;display:grid;place-items:center;flex:none;width:2.15rem;height:2.15rem;border-radius:50%;font-family:var(--font-magic);font-size:.88rem;color:#f3e6c1;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.22),transparent 40%),radial-gradient(circle at 50% 50%,#9a2430,#5a1018);box-shadow:0 6px 12px #00000047,inset 0 -5px 8px #00000047}.inn--slyth .inn__seal{background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.22),transparent 40%),radial-gradient(circle at 50% 50%,#2d6a4f,#123528)}.inn__from{font-family:var(--font-display);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--burgundy);margin:0}.pin--gryff{border-left:2px solid var(--gryff)}.pin--slyth{border-left:2px solid var(--slyth)}.inn__area,.pin__house,.inn__meta{font-family:var(--font-display);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.inn__area{display:inline-flex;align-items:center;margin:0;padding:.24rem .52rem .2rem;border:1px solid rgba(201,165,106,.7);color:var(--burgundy);background:linear-gradient(180deg,#f7edd4,#ead6a8);box-shadow:inset 0 1px #fff8e4d9}.inn h2,.pin h2{font-size:1.2rem;margin:.35rem 0}.inn h2{display:block;width:100%;font-family:var(--font-display);font-weight:600;font-size:clamp(1.05rem,4.2vw,1.7rem);letter-spacing:.02em;color:var(--ink);margin:0 0 .55rem;line-height:1.2;white-space:normal;overflow-wrap:break-word}.inn__note{color:var(--ink);font-size:.98rem;line-height:1.5;margin:0}.inn .text-link{margin-top:0;text-decoration:none;color:var(--burgundy)}.inn__place{display:flex;align-items:center;gap:.32rem;margin:0 0 .7rem;color:var(--ink-soft);font-size:.95rem;font-style:italic}.inn__place svg{flex-shrink:0;color:var(--burgundy)}.inn .text-link,.pin .text-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:0;min-height:44px}.inn__bottom{display:grid;gap:.85rem}.inn__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem 1rem}.inn .seal-btn{margin-top:0;min-height:42px;padding:.5rem 1.05rem}.stay-crest{display:block;width:4.4rem;height:4.4rem;margin:2.1rem auto .4rem;object-fit:contain;opacity:.58;filter:sepia(.45) contrast(.92) brightness(.92)}.inn__map{display:block;position:relative;height:13.5rem;overflow:hidden;border:0;background:radial-gradient(circle at 50% 48%,rgba(122,18,28,.08),transparent 42%),repeating-linear-gradient(90deg,rgba(90,52,14,.09) 0 1px,transparent 1px 32px),repeating-linear-gradient(0deg,rgba(90,52,14,.09) 0 1px,transparent 1px 32px),#d4bf8a}.inn__map iframe{width:100%;height:100%;border:0;filter:saturate(.82) sepia(.18)}.inn__pin{pointer-events:none;position:absolute;left:50%;top:50%;z-index:3;display:flex;transform:translate(-50%,calc(-100% + 6px));color:var(--gryff);filter:drop-shadow(0 0 1px #f3e6c1) drop-shadow(0 4px 8px rgba(0,0,0,.55))}.inn--slyth .inn__pin{color:#1f6b4a}.inn__pin svg{display:block}.text-link{font-family:var(--font-display);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright)}.map-frame{position:relative;margin-top:1.3rem;height:min(62vw,22rem);overflow:hidden;border:1px solid var(--gold);background:var(--black-2)}.map-frame iframe{width:100%;height:100%;border:0}.map-frame__corners{pointer-events:none;position:absolute;inset:8px;border:1px solid rgba(201,165,106,.35)}.map-frame__corners:before,.map-frame__corners:after{content:"";position:absolute;width:12px;height:12px}.map-frame__corners:before{top:-1px;left:-1px;border-top:2px solid var(--gryff);border-left:2px solid var(--huff)}.map-frame__corners:after{right:-1px;bottom:-1px;border-right:2px solid var(--raven);border-bottom:2px solid var(--slyth)}.frames{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.gallery__empty{margin-top:1.4rem;color:var(--gold-soft);font-size:1.2rem}.frame{width:100%;min-height:10.5rem;padding:.7rem .65rem .8rem;border:1px solid rgba(201,165,106,.35);background:var(--black-3);color:inherit;text-align:left;cursor:pointer}.frame--gryff{background:linear-gradient(160deg,#4a1016,#000)}.frame--huff{background:linear-gradient(160deg,#3a2d12,#000)}.frame--slyth{background:linear-gradient(160deg,#10281c,#000)}.frame--raven{background:linear-gradient(160deg,#10182e,#000)}.frame__portrait{display:block;height:5.6rem;margin-bottom:.55rem;border:1px solid rgba(232,212,139,.28);background:radial-gradient(circle at 50% 30%,rgba(243,226,168,.12),transparent 42%);overflow:hidden}.frame__portrait img,.lightbox__portrait img{width:100%;height:100%;object-fit:cover}.frame__title{display:block;font-family:var(--font-display);font-size:.72rem;letter-spacing:.08em}.frame__caption{display:block;margin-top:.2rem;color:#cfc3a6;font-size:.92rem;font-style:italic}.lightbox{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1rem}.lightbox__scrim{position:absolute;inset:0;border:0;background:#000c}.lightbox__card{position:relative;width:min(100%,24rem);padding:1.4rem 1.2rem 1.5rem;border:1px solid rgba(201,165,106,.45)}.lightbox__portrait{height:11rem;margin-bottom:1rem;border:1px solid rgba(232,212,139,.28);overflow:hidden}@media(min-width:720px){:root{--pad: 1.6rem;--max: 64rem;--mast-h: 4.2rem}.mast{padding-left:1.6rem;padding-right:1.6rem}.mast__crest{width:3.6rem;height:3.6rem}.inns,.pins,.frames{grid-template-columns:1fr 1fr}.inns{grid-template-columns:1fr}.stay-crest{width:5.1rem;height:5.1rem}.inn__atlas{grid-template-columns:1.35fr .8fr;align-items:stretch}.inn__map{height:16.5rem}.ways__grid{grid-template-columns:1fr 1fr}.inn h2{font-size:1.7rem}.letter,.inn{padding:2.1rem 2.2rem 2.4rem}.letter:before,.inn:before{margin:-2.1rem -2.2rem 1.4rem}.letter__crest{width:6.2rem;height:6.2rem}.pick{grid-template-columns:1fr 1fr}.map-frame{height:28rem}.star{grid-template-columns:7.6rem 1.05rem minmax(0,1fr);grid-template-areas:"time node body";column-gap:.75rem;align-items:start;padding-bottom:1.5rem}.scroll{--rail: 8.88rem}.scroll__sheet{padding:1.5rem 1.5rem 1.4rem}.scroll__crest{width:5.1rem;height:5.1rem;margin-top:1.8rem}.constellation__head{padding-left:10.15rem;margin-bottom:1.2rem}.constellation__date{font-size:clamp(1.45rem,4vw,2rem)}.constellation__mark{font-size:.7rem;padding:.34rem .7rem .3rem}.constellation__kicker{font-size:.52rem}.constellation__weekday{font-size:.6rem}.star__time{font-size:.72rem;letter-spacing:.1em;padding-top:.22rem}.star__node{width:1.05rem;height:1.05rem}.star--peak .star__node{width:1.28rem;height:1.28rem;margin-left:-.12rem}.star:not(:last-child) .star__body{padding-bottom:1.25rem}.star__body{max-width:38rem}.star__title{font-size:1.12rem}.star--peak .star__title{font-size:1.32rem}.star__note{font-size:1.02rem;line-height:1.5}.star__place{font-size:1rem}.star .cal-btn{min-height:0;padding:.45rem 0;font-size:.68rem}.atlas-head h1{font-size:clamp(1.5rem,4vw,2.1rem)}.atlas-head .lede{font-size:1.05rem}.atlas-tab{min-height:46px;padding:.42rem .4rem .4rem}.atlas-tab__label{font-size:.84rem;letter-spacing:.03em}}@media(min-width:960px){.shell{padding-bottom:0}.menu{display:none}.desk-nav{display:flex}.mast__tools{margin-left:0}.hero{min-height:100dvh}}@media(min-width:1024px){.frames{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:reduce){.stage,.sky__aurora,.sky__mist--b,.sky__stars--near,.candle,.scroll-cue,.page-hero:before,.hero__image,.stars i,.portrait-frame__image{animation:none}}.shell:has(.home){padding-top:0}.home .hero{min-height:100svh;min-height:100dvh;display:grid;place-content:center;place-items:center;justify-content:center;align-content:center;isolation:isolate;overflow:hidden}.hero__image{position:absolute;inset:0;z-index:0;background:url(/enchanted-castle-hero.png) center 8% / cover no-repeat;animation:hero-breathe 22s ease-in-out infinite alternate}@keyframes hero-breathe{0%{transform:scale(1.03) translateY(3%)}to{transform:scale(1.06) translateY(5%)}}.hero__veil{z-index:2;background:radial-gradient(circle at 50% 42%,#02050912 0,#0205093d 32%,#020408d1),linear-gradient(180deg,#03050947,#0305091a 45%,#080b10)}.stars{position:absolute;inset:0;z-index:2;pointer-events:none}.hero .stars:before{content:none}.stars i{--x: calc((var(--i) * 37) % 97);--y: calc((var(--i) * 53) % 76);position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:3px;height:3px;border-radius:50%;background:#ffe9ac;box-shadow:0 0 8px #ffd679;animation:star-twinkle calc(2.5s + (var(--i) % 4) * 1s) ease-in-out infinite;animation-delay:calc(var(--i) * -.21s)}@keyframes star-twinkle{50%{opacity:.18;transform:scale(.45)}}.home .hero__copy{position:relative;z-index:3;width:min(780px,92vw);margin:0 auto;padding:5.2rem 1.5rem 4.5rem;justify-self:center;align-self:center;text-align:center;text-shadow:0 3px 20px rgba(0,0,0,.88)}.hero__kicker{margin:0 0 1.1rem;color:var(--gold-soft);font-family:var(--font-display);font-size:.62rem;font-weight:500;letter-spacing:.42em;text-transform:uppercase}.hero__names{display:flex;flex-direction:column;align-items:center;font-family:"HarryPotter",var(--font-magic);font-size:clamp(3.6rem,9vw,7.4rem);font-weight:400;letter-spacing:.02em;line-height:.88;color:#fff4d2;-webkit-text-stroke:0;text-shadow:0 3px 20px rgba(0,0,0,.88)}.hero__amp{margin:.08em 0 .02em;font-family:"HarryPotter",var(--font-magic);font-size:.55em;font-style:normal;font-weight:400;color:var(--gold);letter-spacing:0;line-height:1}.hero__date{margin:1.9rem 0 .5rem;color:#e8dbbd;font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase}.hero__place{margin:0;color:#bfb6a4;font-family:var(--font-display);font-size:.62rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase}.hero__actions{margin-top:1.9rem;display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem}.button{min-height:48px;padding:0 1.35rem;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:1px solid transparent;border-radius:2px;cursor:pointer;font-family:var(--font-display);font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s,background .25s,border-color .25s}.button:hover{transform:translateY(-2px)}.button--gold{color:#171006;background:linear-gradient(100deg,#b8893b,#ebd18b,#ad7d32);box-shadow:0 10px 34px #bb8b3b40}.button--glass{border-color:#eed59a8c;color:#f5e7c5;background:#03060a7a;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.button--ink{color:#ead69d;background:#12100d;box-shadow:none}.scroll-cue{position:absolute;bottom:1.5rem;left:50%;z-index:3;display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:0;border:0;background:none;color:#fff1cd94;font-family:var(--font-display);font-size:.5rem;font-weight:500;letter-spacing:.25em;text-transform:uppercase;cursor:pointer;transform:translate(-50%);animation:bob 2s ease-in-out infinite}@keyframes bob{50%{transform:translate(-50%,5px)}}.paper-section{position:relative;color:#2b2116;background:var(--parchment)}.paper-noise{position:absolute;inset:0;opacity:.23;pointer-events:none;background-image:radial-gradient(rgba(52,37,20,.45) .55px,transparent .7px),linear-gradient(90deg,transparent 0 48%,rgba(82,52,25,.025) 50%,transparent 52%);background-size:7px 7px,100% 100%}.invitation{padding:5.5rem 1.5rem 6.5rem;overflow:hidden}.invitation:before,.invitation:after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(74,48,22,.16);border-radius:50%}.invitation:before{left:-260px;top:-180px;box-shadow:0 0 0 14px #4a301606,0 0 0 42px #4a301605}.invitation:after{right:-260px;bottom:-180px;box-shadow:0 0 0 14px #4a301606,0 0 0 42px #4a301605}.invitation__inner{position:relative;z-index:1;max-width:760px;margin:auto;text-align:center}.section-title{width:min(760px,94%);margin:0 auto 3.2rem;text-align:center}.section-title h2{margin:.75rem 0 .85rem;font-family:var(--font-magic);font-size:clamp(2.2rem,5vw,4rem);font-weight:500;letter-spacing:-.02em;line-height:1}.section-title p{max-width:610px;margin:auto;opacity:.68;font-size:1.25rem;line-height:1.5}.eyebrow{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;color:var(--gold);font-family:var(--font-display);font-size:.56rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase}.paper-section .eyebrow{color:#7a5226}.eyebrow i{width:1.9rem;height:1px;background:currentColor;opacity:.5}.eyebrow--left{justify-content:flex-start}.date-lockup{width:220px;margin:2.5rem auto 1.75rem;padding:1rem 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-top:1px solid rgba(71,49,25,.42);border-bottom:1px solid rgba(71,49,25,.42)}.date-lockup strong{padding:0 1.1rem;color:#4d2d16;font-family:var(--font-display);font-size:3.6rem;font-weight:500;line-height:1;border-inline:1px solid rgba(71,49,25,.3)}.date-lockup span{font-family:var(--font-display);font-size:.62rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.invitation__venue{margin:0;font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.14em;line-height:1.9;text-transform:uppercase}.invitation__venue small{display:block;font-size:.5rem;opacity:.6}.countdown-section{position:relative;padding:5.5rem 1.5rem 5.4rem;overflow:hidden;background:radial-gradient(circle at 50% 45%,#172331 0,#0b1018 52%,#070a0e)}.countdown-section:before{content:"";position:absolute;inset:0;opacity:.14;background-image:radial-gradient(circle at 50% 50%,transparent 0 38%,var(--gold) 38.2% 38.4%,transparent 38.6%),linear-gradient(45deg,transparent 49.8%,var(--gold) 50%,transparent 50.2%);background-size:700px 700px,100px 100px;background-position:center}.countdown-section .section-title,.crests-grid,.timezone-note{position:relative;z-index:1}.crests-grid{width:min(1120px,96%);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1.35rem}.house-crest{--house: #8d1f2d;--metal: #d4ab55;position:relative;min-height:20.5rem;display:flex;flex-direction:column;align-items:center;padding:1.6rem 1.1rem 1.35rem;border:1px solid color-mix(in srgb,var(--house) 68%,#d5bb76 32%);background:linear-gradient(180deg,#ffffff09,#0000002e),radial-gradient(circle at 50% 15%,color-mix(in srgb,var(--house) 34%,transparent),transparent 54%);box-shadow:inset 0 0 45px #00000059,0 12px 40px #00000038}.house-crest--badger{--house: #a77d13;--metal: #e5c75e}.house-crest--raven{--house: #1d5689;--metal: #a7824b}.house-crest--serpent{--house: #176044;--metal: #b8c4bf}.house-crest__logo{width:8rem;height:9.4rem;object-fit:contain;object-position:center;filter:drop-shadow(0 10px 18px rgba(0,0,0,.4))}.house-crest--lion .house-crest__logo{transform:scale(1.14);transform-origin:center 40%}.house-crest__name{margin-top:auto;padding-top:1.15rem;color:var(--metal);font-family:var(--font-display);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.house-crest__value{margin-top:.55rem;font-family:var(--font-display);font-size:2.85rem;font-weight:500;line-height:1;font-variant-numeric:tabular-nums}.house-crest__unit{margin-top:.35rem;color:#8f938f;font-family:var(--font-display);font-size:.5rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase}.timezone-note{margin:1.6rem 0 0;text-align:center;color:#737d84;font-family:var(--font-display);font-size:.56rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.page-hero{--page-image: url(/enchanted-castle-hero.png);position:relative;min-height:26rem;margin:0 0 2rem;padding:6.5rem 1.5rem 4.2rem;display:grid;place-items:center;overflow:hidden;isolation:isolate;background:#080b10}.page-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:var(--page-image) center 38% / cover no-repeat;animation:hero-breathe 22s ease-in-out infinite alternate}.modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:1.4rem}.modal__scrim{position:absolute;inset:0;border:0;background:#000000db;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal__close{position:absolute;z-index:2;right:12px;top:12px;width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(238,215,162,.4);border-radius:50%;background:#000000a6;color:#f1dfb5;cursor:pointer}.video-modal,.memory-modal{position:relative;z-index:1;width:min(980px,96vw);padding:14px;border:1px solid rgba(201,164,92,.6);background:#0a0d12;box-shadow:0 30px 100px #000}.memory-modal{width:min(860px,96vw);padding:14px 14px 26px;text-align:center}.memory-modal img{width:100%;max-height:68vh;object-fit:cover}.memory-modal .eyebrow{margin-top:1.35rem}.memory-modal h3{margin:.5rem 0 .2rem;font-family:var(--font-magic);font-size:2.1rem;font-weight:500}.memory-modal p{margin:0;color:#96958f}.memory-modal--album{width:min(920px,96vw)}.memory-stage{position:relative;background:#05070a;touch-action:pan-y}.memory-stage img{display:block;width:100%;max-height:62vh;object-fit:contain;background:#05070a}.memory-nav{position:absolute;top:50%;z-index:2;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(238,215,162,.4);border-radius:50%;background:#000000a6;color:#f1dfb5;font-size:1.7rem;line-height:1;cursor:pointer;transform:translateY(-50%)}.memory-nav--prev{left:10px}.memory-nav--next{right:10px}.memory-count{margin:.85rem 0 0;color:#c7b98f;font-family:var(--font-display);font-size:.56rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.memory-thumbs{display:flex;justify-content:center;flex-wrap:wrap;gap:.45rem;margin:.85rem 0 0}.memory-thumbs button{width:3.4rem;height:2.4rem;border:1px solid rgba(201,164,92,.35);background-position:center;background-size:cover;cursor:pointer;opacity:.55}.memory-thumbs button.is-on{opacity:1;border-color:var(--gold)}.video-wrap{position:relative;aspect-ratio:16 / 9;background:#000}.video-wrap video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}body.is-modal-open{overflow:hidden}.page-hero__veil{position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 35%,#05070a3d,#05080cbd 58%,#0b1018),linear-gradient(180deg,#02040873,#070a0ee0)}.page-hero__content{width:min(820px,94vw);text-align:center;text-shadow:0 3px 25px rgba(0,0,0,.9)}.page-hero__back{display:inline-block;margin-bottom:2.1rem;color:#c7b98f;font-family:var(--font-display);font-size:.5rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}.page-hero h1{margin:.9rem 0 .8rem;color:#fff3cf;font-family:var(--font-magic);font-size:clamp(2.8rem,8vw,5.7rem);font-weight:500;letter-spacing:-.03em;line-height:.95}.page-hero p{max-width:650px;margin:auto;color:#d0c7b5;font-size:1.25rem;line-height:1.45}.page.rsvp,.page.stay,.page.gallery,.page.schedule{width:100%;max-width:none;padding-top:0;padding-left:0;padding-right:0}.page.gallery{background:radial-gradient(circle at 50% 0,#15202d,#080b10 50%)}.gallery-section{padding:4.5rem 1.5rem 8.1rem}.gallery-grid{width:min(1120px,96%);margin:auto;display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:1.55rem;align-items:start}.portrait-frame{width:100%;color:inherit;font:inherit;text-align:inherit;padding:.75rem;border:1px solid #b8934d;background:linear-gradient(145deg,#49351a,#c9aa67 12%,#3b2b17 28%,#b58e47 83%,#3b2815);box-shadow:0 24px 50px #0006,inset 0 0 0 3px #180e048c;cursor:pointer;transform:rotate(-1.3deg);transition:transform .35s,filter .35s}.portrait-frame:nth-child(2){margin-top:4rem;transform:rotate(1.8deg)}.portrait-frame:nth-child(3){margin-top:1.25rem;transform:rotate(-.6deg)}.portrait-frame:hover{transform:translateY(-8px) rotate(0);filter:brightness(1.08)}.portrait-frame__image{display:block;aspect-ratio:4 / 5;border:6px solid #16110b;background-position:center;background-size:cover;animation:portrait-drift 12s ease-in-out infinite alternate}@keyframes portrait-drift{0%{background-size:auto 104%}to{background-size:auto 114%}}.portrait-frame__copy{display:block;padding:1.05rem .6rem .8rem;color:#f2dfb0;background:#080604db;text-align:center}.portrait-frame__copy strong,.portrait-frame__copy small{display:block}.portrait-frame__copy strong{font-family:var(--font-display);font-size:1.05rem;font-weight:500}.portrait-frame__copy small{margin-top:.4rem;color:#a9a291;font-size:.88rem}.page.rsvp{position:relative;isolation:isolate;min-height:calc(100dvh - var(--mast-h) - var(--ribbon) - env(safe-area-inset-top));padding-bottom:4rem;background:#080b10}.page.rsvp:before{content:"";position:absolute;inset:0;z-index:0;background:url(/enchanted-great-hall.png) center / cover no-repeat;pointer-events:none}.page.rsvp:after{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 50% 18%,#05070a2e,#05080c85 42%,#080b10c7),linear-gradient(180deg,#02040847,#080b1094);pointer-events:none}.page.rsvp>*{position:relative;z-index:1}.page.rsvp .page-hero{background:transparent;margin-bottom:0}.page.rsvp .page-hero:before{content:none}.page.rsvp .page-hero__veil{background:radial-gradient(circle at 50% 35%,rgba(5,7,10,.08),rgba(5,8,12,.28) 62%,transparent 100%)}.letter{width:min(720px,calc(100% - 2rem));margin:-3.5rem auto 0;padding:3.8rem clamp(1.5rem,7vw,4.75rem);min-height:32rem;color:#322315;background:linear-gradient(135deg,#f0e5ca,#d9c29b 56%,#eadabc);border:0;box-shadow:0 28px 90px #0009,inset 0 0 70px #5e3a171f}.letter:before{content:"";position:absolute;inset:15px;height:auto;margin:0;border:1px solid rgba(99,64,30,.35);background:none;pointer-events:none}.letter:after{display:none}.letter__fold{position:absolute;inset:0;pointer-events:none;opacity:.08;background:linear-gradient(32deg,transparent 49.7%,#49321a 50%,transparent 50.3%),linear-gradient(-32deg,transparent 49.7%,#49321a 50%,transparent 50.3%)}.letter__monogram{width:54px;height:62px;margin:-1.2rem auto 1.35rem;display:grid;place-items:center;clip-path:polygon(8% 0,92% 0,100% 73%,50% 100%,0 73%);color:#f2dfad;background:var(--wine);font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.04em}.letter h1{font-family:var(--font-magic);font-size:clamp(2rem,5vw,2.6rem);font-weight:500;letter-spacing:-.02em}.letter .form input,.letter .form textarea{background:transparent;border-radius:0}.letter .form input:focus,.letter .form textarea:focus{border-bottom-color:#8a1e31;box-shadow:0 2px #8a1e3126;outline:none}.wax-seal{width:116px;height:116px;margin:1.75rem auto .5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;justify-self:center;border:0;border-radius:50%;color:#f2cfa2;background:radial-gradient(circle at 35% 30%,#a64451 0,#7e1f2c 38%,#55121d 75%,#360b12);box-shadow:0 9px #3b0d15,0 15px 22px #3311105c,inset 0 0 0 5px #54071333,inset 0 0 0 8px #f7b6a61f;cursor:pointer;transition:transform .2s,box-shadow .2s}.wax-seal:hover{transform:translateY(-3px) rotate(-2deg)}.wax-seal:active{transform:translateY(7px);box-shadow:0 2px #3b0d15,0 5px 9px #33111047,inset 0 0 0 5px #54071333}.wax-seal span{display:grid;place-items:center;font-family:var(--font-display);font-size:1.15rem;font-weight:600}.wax-seal span img{width:2.4rem;height:2.4rem;object-fit:contain}.wax-seal small{margin-top:.3rem;font-family:var(--font-display);font-size:.44rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.wax-seal:disabled{filter:grayscale(.7);opacity:.55;cursor:not-allowed}.text-button{display:inline-block;margin:1.4rem auto 0;padding:0;border:0;border-bottom:1px solid currentColor;background:none;color:#73491c;cursor:pointer;font-family:var(--font-display);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}.inn{color:var(--cream);background:#ffffff06;border:1px solid rgba(201,164,92,.21);box-shadow:none}.inn:before,.inn:after{display:none}.inn--featured{border-color:#c9a45c94;background:linear-gradient(120deg,#c9a45c1c,#ffffff05)}.inn h2{color:var(--cream);font-family:var(--font-display);font-size:1.45rem;font-weight:500}.inn__kicker,.inn__tags li{color:var(--gold);background:none;border-color:#c9a45c47}.inn__note,.inn__address-copy,.ways__hint,.ways__card span{color:#a7a59f}.inn__place,.atlas-card__label,.atlas-card__head span,.ways__head p{color:#d5c9b0}.inn__place svg{color:var(--gold)}.atlas-card{background:#080a0e73;border-color:#c9a45c38}.atlas-card__head a,.ways__head a,.ways__card{color:var(--gold-soft);border-color:#c9a45c59;background:transparent}.ways__card strong{color:var(--cream)}.inn__ways{border-top-color:#c9a45c38}.page.stay .stay-head,.page.stay .inns{width:min(100% - 2.3rem,46rem);margin-left:auto;margin-right:auto}.stay-head{text-align:left}.stay-head .lede,.stay-head__note{max-width:none;margin-left:0;color:#b8b4aa}.frames{width:min(1120px,calc(100% - 2rem));margin:0 auto;gap:1.5rem}.gallery__empty{width:min(720px,calc(100% - 2rem));margin:0 auto 3rem;text-align:center}.frame{padding:.75rem;border:1px solid #b8934d;background:linear-gradient(145deg,#49351a,#c9aa67 12%,#3b2b17 28%,#b58e47 83%,#3b2815);box-shadow:0 24px 50px #0006,inset 0 0 0 3px #180e048c;transform:rotate(-1.3deg)}.frames li:nth-child(2n) .frame{transform:rotate(1.8deg)}.frame__portrait{aspect-ratio:4 / 5;height:auto;margin:0;border:6px solid #16110b}.frame__copy{display:block;padding:1rem .6rem .8rem;color:#f2dfb0;background:#080604db;text-align:center}.frame__title{font-size:1.05rem}.frame__caption{color:#a9a291}.atlas-tabs{border:1px solid rgba(201,164,92,.26);gap:0}.atlas-tab{border:0;border-right:1px solid rgba(201,164,92,.21);background:#ffffff05;color:#a6a49e;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.atlas-tab:last-child{border-right:0}.atlas-tab:after{display:none}.atlas-tab__day{display:block;font-family:var(--font-body);font-style:italic;font-size:.95rem;letter-spacing:0;text-transform:none}.atlas-tab__date{display:block;margin-top:.25rem;font-family:var(--font-display);font-size:.56rem;font-weight:600;letter-spacing:.12em}.atlas-tab.is-on{color:#1b130a;background:var(--gold);border-color:transparent;box-shadow:none}.atlas-head h1{font-family:var(--font-magic);font-weight:500;letter-spacing:-.02em}.site-foot{position:relative;z-index:1;padding:4rem 1.5rem calc(1.5rem + var(--nav-h));text-align:center;border-top:1px solid rgba(201,164,92,.18);background:#05070a}.footer-monogram{width:3.4rem;height:3.4rem;margin:0 auto 1.05rem;display:block;object-fit:contain}.site-foot p{color:#d5c9b0;font-family:var(--font-display);font-size:.62rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.site-foot small{display:block;margin-top:.55rem;color:#676b6d;font-size:.75rem}@media(max-width:900px){.crests-grid{grid-template-columns:repeat(2,1fr)}.stay-section{grid-template-columns:1fr}.stay-section__image{min-height:32rem;background:linear-gradient(180deg,transparent 55%,#0b1018),url(/phuket-magic-dusk.png) center / cover no-repeat}.stay-section__content{padding:1.25rem 1.75rem 6.25rem}.gallery-grid{grid-template-columns:repeat(2,1fr)}.portrait-frame:nth-child(3){grid-column:1 / -1;width:48%;justify-self:center}}@media(max-width:720px){:root{--mast-h: 4.2rem}.brand__crest{width:2.4rem;height:2.4rem}.brand small{font-size:.38rem}.brand strong{font-size:.88rem}.sound-btn{width:36px;height:36px;min-width:36px;min-height:36px}.hero__copy{padding:4.8rem 1.1rem 3.1rem}.hero__kicker{font-size:.5rem;letter-spacing:.3em}.hero__names{font-size:clamp(3.25rem,18vw,4.75rem)}.hero__date{font-size:.56rem;letter-spacing:.16em}.hero__actions{flex-direction:column;align-items:center}.hero__actions .button{width:min(320px,100%)}.invitation,.countdown-section{padding:5.2rem 1.1rem}.crests-grid{gap:.6rem}.house-crest{min-height:16rem;padding:1.1rem .5rem .9rem}.house-crest__logo{width:5.6rem;height:6.6rem}.house-crest--lion .house-crest__logo{transform:scale(1.14);transform-origin:center 40%}.house-crest__value{font-size:2.25rem}.page-hero{min-height:22rem;padding:5.5rem 1.1rem 3.2rem}.stay-section{grid-template-columns:1fr}.stay-section__image{min-height:26rem;background:linear-gradient(180deg,transparent 55%,#0b1018),url(/phuket-magic-dusk.png) center / cover no-repeat}.stay-section__content{padding:1.25rem 1.75rem 6.25rem}.stay-section__content h2{font-size:2.6rem}.stay-card{padding:1.35rem 1.1rem}.gallery-section{padding:3.2rem 1.1rem 6.25rem}.gallery-grid{grid-template-columns:1fr;gap:1.9rem}.portrait-frame,.portrait-frame:nth-child(2),.portrait-frame:nth-child(3){width:92%;margin:0 auto;grid-column:auto}.portrait-frame__image{aspect-ratio:4 / 4.7}.schedule-board{padding:1.6rem 1.1rem 4rem}.schedule-tabs{width:100%}.schedule-tabs button span{font-size:.75rem}.scroll-card{width:100%;padding:3rem 1.25rem}.scroll-card li{grid-template-columns:64px 24px 1fr;gap:.5rem}.scroll-card li:not(:last-child):after{left:84px}.timeline-star{width:24px;height:24px}.scroll-card time{font-size:.44rem}.scroll-card h4{font-size:.95rem}.scroll-card li p{font-size:.88rem}}@media(min-width:960px){.site-foot{padding-bottom:4rem}}
