@import url('https://fonts.googleapis.com/css2?family=Anuphan:wght@400;500;600&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--paper:#f6f1e8;--ink:#554432;--muted:#8a7965;--line:#d5c8b4;--brown:#72573e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Anuphan',sans-serif;font-weight:300}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #9a7146;outline-offset:5px}[hidden]{display:none!important}.defs{position:absolute}svg{display:block}.eyebrow{font:500 10px/1.8 'Anuphan',sans-serif;letter-spacing:2.6px}.gate{min-height:100svh;padding:30px 7vw;display:flex;align-items:center;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at 48% 30%,#fffaf1,#e6d9c5);overflow:hidden}.gate-top{position:absolute;top:28px;left:6vw;right:6vw;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}.gate>.eyebrow{margin:35px 0 26px;text-align:center}.passport{border:0;background:linear-gradient(115deg,#8b7152,#6b5139 80%);color:#e8d7b4;border-radius:5px 20px 20px 5px;width:300px;height:420px;padding:15px 17px 15px 24px;box-shadow:-5px 0 0 #57422e,3px 4px 0 #d6c7ad,20px 30px 45px #624a3c3d;transform:rotate(-6deg);transition:transform .7s,opacity .7s;position:relative}.passport:after{content:'';position:absolute;left:9px;top:0;bottom:0;border-left:1px solid #ffffff18}.passport:hover{transform:rotate(-2deg) translateY(-6px)}.passport-border{border:1px solid #cdb68a80;border-radius:3px 12px 12px 3px;display:flex;height:100%;align-items:center;flex-direction:column;padding:30px 7px}.passport-title{font-size:27px;letter-spacing:5px}.passport-sub{font-size:8px;letter-spacing:2px;margin-top:7px}.globe{position:relative;font:140px/1.1 Georgia;margin:5px 0;color:#cdb68a}.globe svg{width:60px;height:60px;position:absolute;top:46px;left:36px;transform:rotate(-8deg)}.passport-names{font:italic 31px 'Cormorant Garamond',Georgia,serif}.passport-names i{font-size:22px}.passport-date{font-size:11px;letter-spacing:3px;margin-top:12px}.passport-bottom{font-size:7px;line-height:2.1;letter-spacing:2px;margin-top:auto}.passport-bottom b{font-weight:400}.tap{margin-top:35px;font-size:12px;color:#7e674d}.tap span{margin-left:14px}.gate-footer{font:italic 20px 'Cormorant Garamond',Georgia;margin:18px 0 0;color:#8f775c}.opening .passport{transform:perspective(900px) rotateY(-75deg) rotate(-6deg) scale(1.12);opacity:0}.flight{position:fixed;z-index:20;inset:0;pointer-events:none;visibility:hidden;overflow:hidden;background:#efe5d4;opacity:0}.flight.flying{visibility:visible;animation:veil 2.4s both}.flight>svg{position:absolute;width:130px;height:130px;color:#715437;left:-25%;top:75%;transform:rotate(20deg)}.flying>svg{animation:fly 2.1s cubic-bezier(.5,0,.25,1) both}.flight>span{position:absolute;top:65%;left:0;width:100%;text-align:center;font-size:10px;letter-spacing:4px}.flight-line{position:absolute;left:10%;top:48%;width:75%;height:25%;border-top:1px dashed #ad9471;border-radius:50%;transform:rotate(-20deg)}@keyframes veil{0%{opacity:0}25%,68%{opacity:1}100%{opacity:0}}@keyframes fly{0%{left:-25%;top:80%;transform:rotate(25deg) scale(.5)}50%{left:45%;top:35%;transform:rotate(15deg) scale(1.3)}100%{left:120%;top:-30%;transform:rotate(5deg) scale(4)}}nav{height:85px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 6vw}nav .brand{font:34px 'Cormorant Garamond',Georgia}nav .brand i{font-size:22px}nav>div{display:flex;gap:35px;font-size:11px}nav button{background:none;border:1px solid var(--line);padding:8px 15px;font-size:10px}.hero{max-width:1450px;margin:auto;padding:60px 8vw 0;display:grid;grid-template-columns:1fr 1fr;gap:35px 6vw}.hero-copy{padding:25px 0}.hero h1{font:500 clamp(75px,9vw,128px)/.88 'Cormorant Garamond',Georgia;margin:30px 0}.hero h1>span{font-size:.55em;font-style:italic;color:#a68c68;vertical-align:middle}.intro{font-size:14px;line-height:2}.hero-date{margin:30px 0;display:flex;flex-direction:column;gap:7px}.hero-date>span{font-size:9px;letter-spacing:3px}.hero-date strong{font:30px 'Cormorant Garamond',Georgia;letter-spacing:3px}.text-link{font-size:11px;border-bottom:1px solid var(--ink);padding-bottom:9px;display:inline-flex;gap:40px}.hero-photo{position:relative;padding:8px 8px 30px;border:1px solid var(--line);margin:8px 0 0;transform:rotate(2deg);align-self:center}.hero-photo>img{display:block;width:100%;height:525px;object-fit:cover;object-position:center 45%;filter:saturate(.63)}.photo-caption{font-size:8px;letter-spacing:2px;display:block;text-align:center;margin-top:13px}.stamp{position:absolute;bottom:47px;left:-47px;border:2px solid #f8f0de;color:#f8f0de;background:#71674ecc;border-radius:50%;width:118px;height:118px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:9px;letter-spacing:1px;transform:rotate(-16deg);outline:1px dashed #f8f0de;outline-offset:-8px}.stamp b{font:22px 'Cormorant Garamond',Georgia;margin:5px 0}.stamp span{font-size:8px}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:25px;padding:32px 0;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:2px}.hero-bottom>span{color:#a88c60}.section{max-width:1200px;margin:auto;padding:95px 6vw}h2{font-size:30px;line-height:1.65;font-weight:400;margin:18px 0}p{line-height:1.9}.journey{display:grid;grid-template-columns:1fr 1.2fr;gap:9vw;align-items:center}.polaroid{padding:12px 12px 22px;background:#fffaf1;box-shadow:0 8px 25px #64523c15;transform:rotate(-5deg);max-width:350px}.polaroid img{width:100%;display:block;aspect-ratio:1;object-fit:cover;filter:saturate(.6)}.polaroid>span{display:block;text-align:center;margin-top:18px;font:italic 22px 'Cormorant Garamond',Georgia}.journey-copy>p{font-size:13px}.journey-copy>.eyebrow{font-size:10px}.full-names{margin-top:30px;display:flex;flex-direction:column;gap:2px}.full-names p{margin:0;font:20px/1.5 'Cormorant Garamond',Georgia}.full-names small{display:block;font:8px 'Anuphan',sans-serif;letter-spacing:2px;margin-bottom:5px}.full-names em{font-size:17px;color:#9b805a;margin-left:7px}.full-names>span{font:italic 25px 'Cormorant Garamond',Georgia;color:#a78f6f}.small-plane{width:38px;height:38px;margin:20px 0 0 auto;color:#a78f6f}.boarding{padding-top:0;padding-bottom:65px}.ticket{border:1px solid #bba78a;display:grid;grid-template-columns:1fr 220px;background:#eae0cf;position:relative}.ticket-main{padding:25px 35px}.route{display:flex;align-items:center;justify-content:space-between;margin:24px 0 30px}.route>div{display:flex;flex-direction:column}.route small,.ticket-meta{font-size:8px;letter-spacing:1.5px}.route strong{font:52px 'Cormorant Garamond',Georgia}.route span{font-size:10px}.route>svg{width:48px;height:48px;color:#9a835f;transform:rotate(24deg)}.ticket-meta{display:flex;justify-content:space-between;gap:12px}.ticket-meta b{display:block;margin-top:8px;font-size:10px;font-weight:400;letter-spacing:1px}.palette{display:flex!important;gap:7px}.palette i{width:15px;height:15px;border:1px solid #d5c8b4;border-radius:50%;background:#ffffff}.palette i:nth-child(2){background:#f4e6ce}.palette i:nth-child(3){background:#8c7056}.palette i:nth-child(4){background:#e7b5a4}.ticket-stub{border-left:1px dashed #bba78a;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:25px 10px}.ticket-stub small{font-size:8px;letter-spacing:1px}.ticket-stub strong{font:76px/1.2 'Cormorant Garamond',Georgia}.ticket-stub span{font-size:8px;letter-spacing:3px}.ticket-stub button{background:none;border:0;border-bottom:1px solid var(--muted);font-size:10px;padding:7px 0;margin-top:22px}.itinerary{text-align:center;padding-top:45px}.section-note{font-size:13px;color:var(--muted)}.timeline{display:grid;grid-template-columns:repeat(4,1fr);margin-top:45px}.timeline article{position:relative}.timeline article:before{content:'';position:absolute;top:87px;left:0;right:0;border-top:1px dashed #b9a489}.timeline article:first-child:before{left:50%}.timeline article:last-child:before{right:50%}.timeline svg{width:58px;height:58px;margin:0 auto 24px;color:#977d5b}.dot{display:block;width:9px;height:9px;border:1px solid #947855;border-radius:50%;background:var(--paper);margin:0 auto 18px;position:relative}.timeline time{font:35px 'Cormorant Garamond',Georgia}.timeline h3{font-size:12px;font-weight:400;margin-bottom:5px;padding:0 5px}.timeline p{font:italic 16px 'Cormorant Garamond',Georgia;margin-top:5px;color:var(--muted)}.destination{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr;gap:50px;align-items:center}.venue-en{font:italic 33px 'Cormorant Garamond',Georgia;margin:-12px 0 24px}.venue-copy>p:not(.eyebrow):not(.venue-en){font-size:12px;line-height:2.1}.button{display:inline-flex;gap:40px;padding:14px 22px;background:var(--brown);color:#fff5e7;font-size:11px;margin-top:15px}.qr{display:flex;align-items:center;gap:16px;margin-top:30px}.qr img{width:84px;height:84px;padding:5px;background:#fff}.qr>span{font-size:8px;letter-spacing:1px}.qr small{display:block;font-size:10px;letter-spacing:0;margin-top:9px}.map-panel{padding:20px;border:1px solid var(--line);background:#eee7d9}.map-panel>.eyebrow{text-align:center;font-size:8px}.mini-map{width:100%;height:auto}.map-footer{display:flex;justify-content:space-between;align-items:center;font-size:8px;gap:12px;margin-top:13px}.map-footer button{border:0;border-bottom:1px solid var(--muted);background:none;font-size:9px;padding:3px 0}footer{text-align:center;background:#e7ddcd;padding:55px 20px 35px}footer>svg{width:35px;height:35px;margin:auto;color:#9d835f}footer p{font:38px/1.1 'Cormorant Garamond',Georgia}footer>span{font-size:8px;letter-spacing:2px}footer>a{display:block;font-size:9px;margin-top:26px}dialog{border:1px solid var(--line);padding:35px 20px 20px;background:var(--paper);width:min(95vw,1000px);max-height:90svh;color:var(--ink)}dialog::backdrop{background:#2e211bd9}dialog img{width:100%;display:block}dialog>button{position:absolute;top:5px;right:10px;border:0;background:none}dialog>a{display:block;text-align:center;margin-top:15px;font-size:12px}
@media(min-width:1500px){.hero{padding-left:120px;padding-right:120px}}@media(max-width:760px){nav{height:65px;padding:0 6vw}nav>div{gap:18px;font-size:10px}nav button{padding:6px 9px}nav button span{display:none}.hero{padding:25px 7vw 0;gap:30px;grid-template-columns:1fr}.hero-copy{text-align:center;padding:10px 0}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.hero h1{font-size:86px;line-height:.9;margin:23px 0}.hero h1 br{display:none}.hero h1>span{display:block;font-size:36px;line-height:1.2}.intro{font-size:12px}.hero-date{margin:23px 0}.hero-photo{width:78%;max-width:360px;margin:0 auto}.hero-photo>img{height:auto;aspect-ratio:.79}.stamp{left:-25px;width:95px;height:95px;bottom:40px;font-size:7px}.stamp b{font-size:19px}.stamp span{font-size:7px}.hero-bottom{font-size:7px;gap:14px;padding:20px 0;letter-spacing:1px}.section{padding:65px 7vw}.journey{grid-template-columns:1fr;gap:40px}.polaroid{width:73%;margin:auto}.journey-copy{text-align:center}h2{font-size:26px}.full-names p{font-size:21px}.small-plane{margin:25px auto 0}.boarding{padding-top:0;padding-bottom:30px}.ticket{grid-template-columns:1fr}.ticket-main{padding:20px}.ticket .eyebrow{font-size:7px;letter-spacing:1.5px}.route strong{font-size:45px}.route>svg{width:36px;height:36px}.ticket-meta{font-size:7px}.ticket-meta b{font-size:9px}.ticket-stub{border-left:0;border-top:1px dashed #bba78a;padding:22px}.ticket-stub strong{font-size:62px}.ticket-stub button{margin-top:15px}.itinerary{padding-top:35px}.itinerary h2{font-size:24px}.timeline{grid-template-columns:1fr;margin:35px auto 0;text-align:left;max-width:330px;gap:0}.timeline article{display:grid;grid-template-columns:66px 1fr;column-gap:22px;padding:10px 0 28px}.timeline article:before{top:0;bottom:0;left:32px!important;right:auto!important;border-top:0;border-left:1px dashed #baa688}.timeline article:first-child:before{top:40px}.timeline article:last-child:before{bottom:80px}.timeline svg{grid-column:1;grid-row:1/4;width:54px;height:54px;align-self:center;margin:0;background:var(--paper);position:relative}.timeline .dot{display:none}.timeline time{grid-column:2;font-size:33px}.timeline h3{grid-column:2;margin:3px 0;padding:0}.timeline p{grid-column:2;margin:5px 0;font-size:16px}.destination{grid-template-columns:1fr;gap:35px;padding-top:50px}.venue-copy{text-align:center}.qr{justify-content:center}.map-panel{padding:14px}.map-footer{font-size:7px}.map-footer button{font-size:8px}footer p{font-size:33px}.gate{padding-top:70px;padding-bottom:35px}.gate>.eyebrow{font-size:8px;letter-spacing:1.5px;margin-top:10px}.gate-top{font-size:8px;letter-spacing:1px}.passport{width:270px;height:385px}.passport-border{padding-top:24px}.passport-title{font-size:24px}.globe{font-size:125px}.globe svg{width:53px;height:53px;top:40px;left:33px}.passport-names{font-size:28px}.tap{font-size:11px}.flight>span{font-size:8px;letter-spacing:2px}}
.globe{width:144px;height:144px;margin:8px 0 12px;display:block}.globe img{width:100%;height:100%}nav .brand img{display:block;width:55px;height:55px;filter:brightness(.62)}.wedding-theme{margin:25px 0 18px}.wedding-theme p{font-size:25px;font-weight:400;letter-spacing:2px;margin:0}.wedding-theme span{font-size:8px;letter-spacing:2.5px;color:var(--muted)}.hero h1{font-size:clamp(75px,8vw,116px)}.footer-theme{font-size:22px;margin-bottom:25px}.footer-theme span{display:block;font:italic 22px 'Cormorant Garamond',Georgia;margin-top:4px}.hero-photo>img{height:580px}@media(max-width:760px){.globe{width:130px;height:130px;margin:5px 0 9px}.hero h1{font-size:80px}.hero-photo>img{height:auto}.wedding-theme{margin:22px 0 16px}.wedding-theme p{font-size:23px}nav .brand img{width:44px;height:44px}.journey-copy h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.1s!important;transition-duration:.1s!important}.flight.flying{animation:veil .15s both}}

:root{--paper:#fbf6ee;--peach:#e7b5a4}.ticket{background:#f1e4d4}.wedding-theme p{color:#9d6b57}.stamp{background:#8d6b55e8}.timeline svg{color:#b27e68}.dot{border-color:#b27e68}.journey .polaroid{background:#fffdf9}.hero-bottom>span{color:#d29b88}footer{background:#f0dfd3}.passport{background:linear-gradient(115deg,#8b7056,#69503b 80%)}

/* Passport opening, wedding seal, then a photographic aircraft flyover. */
.gate{position:relative;perspective:1600px}
.passport{z-index:2;transform-origin:left center;backface-visibility:hidden}
.opening .passport{animation:cover-open 1.25s cubic-bezier(.25,.6,.25,1) both;transition:none}
.opening>.eyebrow,.opening>.tap,.opening>.gate-footer{opacity:0;transition:opacity .4s}
.passport-book{position:absolute;z-index:1;top:50%;left:50%;width:min(650px,87vw);aspect-ratio:1.48;display:grid;grid-template-columns:1fr 1fr;opacity:0;pointer-events:none;transform:translate(-50%,-46%) rotate(-2deg) scale(.78);border:7px solid #70563e;border-radius:8px;box-shadow:0 30px 70px #513e3d45;background:#f5eddc}
.opening .passport-book{animation:book-open 1.15s .25s cubic-bezier(.2,.6,.2,1) forwards}
.book-page{position:relative;padding:25px 22px;overflow:hidden;background:repeating-linear-gradient(35deg,transparent 0 8px,#cdbb9f12 9px 10px),#f5eddc;display:flex;flex-direction:column;align-items:center}
.book-left{border-right:1px solid #baa98f;background-color:#f9f2e6;box-shadow:inset -15px 0 20px -16px #62482bb3}
.book-right{box-shadow:inset 15px 0 20px -16px #62482b99}
.book-label{font-size:8px;letter-spacing:1.6px;text-align:center;color:#8f7c65;line-height:1.7}
.book-monogram{width:112px;height:112px;margin:13px 0 2px;filter:brightness(.6)}
.book-theme{font-size:20px;color:#8d6450}
.book-english{font:italic 17px 'Cormorant Garamond',Georgia;margin-top:4px}
.book-details{font-size:9px;letter-spacing:2px;line-height:2;text-align:center;margin-top:18px}
.passport-code{margin-top:auto;padding-top:20px;font:9px/1.7 monospace;letter-spacing:1px;color:#907e66;text-align:center}
.page-watermark{position:absolute;inset:0;display:grid;place-items:center;font:italic 120px 'Cormorant Garamond',Georgia;color:#bda58715}
.wedding-ink-stamp{position:absolute;top:50%;left:50%;width:210px;height:210px;border:2px solid #a57060;border-radius:50%;outline:1px dashed #a57060;outline-offset:-8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9f695a;transform:translate(-50%,-43%) rotate(-14deg) scale(2.2);opacity:0;mix-blend-mode:multiply}
.wedding-ink-stamp>span{font-size:8px;letter-spacing:2px}
.wedding-ink-stamp>img{width:109px;height:94px;object-fit:contain;filter:brightness(.62) sepia(.7) saturate(1.7)}
.wedding-ink-stamp>b{font-size:16px;font-weight:400;line-height:1.5}
.wedding-ink-stamp>small{font-size:6px;letter-spacing:1px;margin-top:8px}
.stamped .wedding-ink-stamp{animation:ink-stamp .65s cubic-bezier(.12,.75,.22,1.2) forwards}
.stamped .passport-book{animation:stamp-impact .25s 0s,book-hold .01s forwards}
.page-number{position:absolute;bottom:18px;right:20px;font-size:9px;color:#9d8a72}
.flight.flying{animation:veil 2.6s both}
.real-airplane{position:absolute;width:clamp(240px,47vw,660px);height:auto;left:-60%;top:90%;transform:translate(-50%,-50%) rotate(48deg);filter:drop-shadow(-20px 35px 18px #59453233);will-change:transform,left,top}
.flying .real-airplane{animation:real-fly 2.6s cubic-bezier(.4,.1,.5,.9) both}
.flight>span{top:auto;bottom:16%;font-size:9px;letter-spacing:3px}
@keyframes cover-open{0%{transform:rotate(-6deg);opacity:1}65%{transform:perspective(1500px) rotate(-4deg) rotateY(-135deg);opacity:.9}100%{transform:perspective(1500px) rotate(-3deg) rotateY(-165deg);opacity:0;visibility:hidden}}
@keyframes book-open{from{opacity:0;transform:translate(-50%,-46%) rotate(-3deg) scale(.78) rotateY(15deg)}to{opacity:1;transform:translate(-50%,-46%) rotate(-2deg) scale(1) rotateY(0)}}
@keyframes ink-stamp{0%{opacity:0;transform:translate(-50%,-43%) rotate(-20deg) scale(2.2)}38%{opacity:.95;transform:translate(-50%,-43%) rotate(-14deg) scale(.93)}65%{opacity:.83;transform:translate(-50%,-43%) rotate(-14deg) scale(1.035)}100%{opacity:.85;transform:translate(-50%,-43%) rotate(-14deg) scale(1)}}
@keyframes stamp-impact{0%,100%{transform:translate(-50%,-46%) rotate(-2deg) scale(1)}40%{transform:translate(-50%,-45.5%) rotate(-1.6deg) scale(.985)}}
@keyframes book-hold{to{opacity:1;transform:translate(-50%,-46%) rotate(-2deg) scale(1)}}
@keyframes real-fly{0%{left:-40%;top:140%;transform:translate(-50%,-50%) rotate(48deg) scale(.55)}45%{left:42%;top:63%;transform:translate(-50%,-50%) rotate(48deg) scale(1.25)}100%{left:155%;top:-80%;transform:translate(-50%,-50%) rotate(43deg) scale(3.7)}}
@media(max-width:760px){.passport-book{width:92vw;aspect-ratio:1.28;border-width:5px}.book-page{padding:17px 10px}.book-label{font-size:6px;letter-spacing:.8px}.book-monogram{width:80px;height:72px;margin-top:10px}.book-theme{font-size:15px}.book-english{font-size:13px}.book-details{font-size:7px;letter-spacing:1px;margin-top:10px}.passport-code{font-size:6px;letter-spacing:0;padding-top:12px}.wedding-ink-stamp{width:clamp(118px,37vw,190px);height:clamp(118px,37vw,190px)}.wedding-ink-stamp>span{font-size:5px;letter-spacing:1px}.wedding-ink-stamp>img{width:70px;height:60px}.wedding-ink-stamp>b{font-size:12px}.wedding-ink-stamp>small{font-size:4px;letter-spacing:.4px;margin-top:5px}.real-airplane{width:85vw}.flight>span{font-size:7px;letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){.opening .passport-book,.stamped .wedding-ink-stamp{animation-duration:.1s}.flight{display:none}}

/* Light cream boarding card with explicit wedding palette and a live clock. */
.ticket{background:#fffaf0;border-color:#d2bda1;grid-template-columns:1fr 290px;box-shadow:0 8px 24px #775d3f08}
.ticket-main{grid-column:1;grid-row:1;padding-bottom:22px}
.ticket-stub{grid-column:2;grid-row:1/3;background:#fffdf7;padding:25px 15px}
.ticket-meta{justify-content:flex-start;gap:55px}
.wedding-color-strip{grid-column:1;grid-row:2;padding:21px 30px 25px;border-top:1px solid #e3d2bd;background:#fffdf9}
.palette-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:17px}
.palette-heading>small{font-size:8px;letter-spacing:1.5px;color:#6d523c}.palette-heading>span{font-size:10px;color:#896b56}
.color-swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.color-swatches>div{display:flex;flex-direction:column;gap:9px;text-align:center}
.color-swatches i{display:block;height:37px;border-radius:3px;border:1px solid #cbb69d;box-shadow:0 2px 4px #5d45350b}
.swatch-white{background:#fff}.swatch-cream{background:#f4e4c7}.swatch-brown{background:#805b43}.swatch-peach{background:#e7aa96}
.color-swatches span{font-size:11px}.color-swatches small{display:block;font-size:7px;letter-spacing:1.5px;color:#9b816b;margin-top:2px}
.countdown-clock{display:flex;align-items:flex-start;justify-content:center;gap:7px;margin:23px 0 17px;width:100%;font-variant-numeric:tabular-nums}
.countdown-clock>div{display:flex;flex-direction:column;align-items:center;min-width:43px}
.ticket-stub .countdown-clock strong{font:43px/1 'Cormorant Garamond',Georgia;letter-spacing:-1px}
.ticket-stub .countdown-clock span{font-size:9px;letter-spacing:0;margin-top:9px;color:#94765d}
.countdown-clock>i{font:27px/1.15 'Cormorant Garamond',Georgia;font-style:normal;color:#bd9c82}
.ticket-stub>#day-label{font-size:7px;letter-spacing:1.3px;text-align:center}
.ticket-stub>small{font-size:8px;letter-spacing:1.4px}
.ticket-stub button{margin-top:26px}
.book-monogram{object-fit:contain}
@media(max-width:900px) and (min-width:761px){.ticket{grid-template-columns:1fr 250px}.ticket-stub .countdown-clock strong{font-size:37px}.countdown-clock{gap:3px}.countdown-clock>div{min-width:39px}.palette-heading{flex-direction:column;align-items:flex-start;gap:4px}}
@media(max-width:760px){.ticket{grid-template-columns:1fr}.ticket-main{grid-column:1;grid-row:1}.wedding-color-strip{grid-column:1;grid-row:2;padding:20px}.ticket-stub{grid-column:1;grid-row:3;padding:25px 20px}.ticket-stub .countdown-clock strong{font-size:47px}.countdown-clock{max-width:330px;gap:10px;margin:22px 0 18px}.countdown-clock>div{min-width:48px}.color-swatches{gap:10px}.color-swatches i{height:40px}.palette-heading>small{font-size:7px}.palette-heading>span{font-size:9px}.ticket-meta{gap:50px}.ticket-stub>#day-label{font-size:8px}}

/* Reception-first invitation with the morning ceremony clearly retained. */
.hero-date{gap:8px;margin:30px 0 20px}.hero-date strong{font-size:43px;letter-spacing:2px;color:#654b36}.hero-date .thai-date{font-size:14px;letter-spacing:1px;color:#8f6d53}
.dining-invite{padding:21px 0 24px;border-top:1px solid #d6bea5;border-bottom:1px solid #d6bea5;margin:24px 0}
.dining-invite>.eyebrow{font-size:9px;color:#996a54;letter-spacing:2px}
.dining-invite>div{display:flex;align-items:center;gap:12px;margin:10px 0 4px}.dining-invite strong{font:64px/.95 'Cormorant Garamond',Georgia;color:#6d4e37}.dining-invite>div>span{font-size:15px;line-height:1.3}.dining-invite small{font-size:8px;letter-spacing:1.5px}
.dining-invite>p{font-size:15px;line-height:1.9;margin:12px 0 15px}.dining-invite b{font-size:12px;font-weight:400;color:#8a6e58}
.dining-invite>a{font-size:10px;color:#977760;border-bottom:1px solid #ccb499;padding-bottom:4px}
.hero-photo{align-self:start;margin-top:45px}.hero-photo>img{height:650px}
.ticket-meta{gap:30px;flex-wrap:wrap}.ticket-meta .dining-ticket-time b{font-size:16px;font-weight:500;color:#7c5039}
.dining-schedule-highlight{display:flex;align-items:center;justify-content:center;gap:21px;padding:23px;background:#fffaf1;border:1px solid #d8b69c;margin:25px auto;max-width:470px}
.dining-schedule-highlight>svg{width:60px;height:60px;color:#b57e66}.dining-schedule-highlight>div{display:flex;align-items:flex-start;flex-direction:column;gap:5px}.dining-schedule-highlight small{font-size:8px;letter-spacing:2px;color:#9f7660}.dining-schedule-highlight strong{font:40px/1.1 'Cormorant Garamond',Georgia}.dining-schedule-highlight span{font-size:13px}.timeline .dining-timeline time{color:#995f44}.timeline .dining-timeline h3{font-weight:500}
.music-bar{position:fixed;right:22px;bottom:20px;z-index:30;display:flex;align-items:center;gap:12px;padding:10px 15px;border:1px solid #cfb99f;border-radius:40px;background:#fffaf1f2;box-shadow:0 3px 20px #6a4b3220;backdrop-filter:blur(8px)}.music-bar button{border:0;background:transparent;font-size:16px;min-width:28px;min-height:30px}.music-bar label{font-size:10px}.music-bar input{width:84px;accent-color:#9f7154}.music-mark{font:21px Georgia;color:#b48368}
@media(max-width:760px){.hero-date strong{font-size:42px}.hero-date .thai-date{font-size:13px}.dining-invite>div{justify-content:center}.dining-invite{padding:23px 0}.dining-invite strong{font-size:63px}.dining-invite>p{font-size:14px}.hero-photo{margin:0 auto}.hero-photo>img{height:auto}.ticket-meta{gap:24px}.ticket-meta>span{font-size:7px}.ticket-meta .dining-ticket-time b{font-size:14px}.dining-schedule-highlight{padding:18px 12px;gap:16px}.dining-schedule-highlight>svg{width:45px;height:45px}.dining-schedule-highlight span{font-size:12px}.music-bar{right:12px;bottom:12px;gap:8px;padding:8px 12px}.music-bar input{width:65px}}
