/* Aged wine, smoky umber, and candlelit parchment. */
body{background:#241b17;color:#e1d3c5;background-image:radial-gradient(ellipse at 10% 15%,#4d2c1c66,transparent 55%),url('assets/grain.svg')}
header{border-color:#e1d3c52b}header nav a:hover{color:#d9b68d}.monogram{font-family:'Pirata One',Georgia,serif;color:#e1d3c5}.monogram span{font-family:'Cormorant Garamond',Georgia,serif}.languages{color:#c6aa96}.languages button[aria-pressed=true]{color:#f1e6d7}.skip{background:#e1d3c5;color:#241b17}
.invitation{background:radial-gradient(ellipse at 50% 30%,#733b3f33,transparent 65%),url('assets/grain.svg'),#3b1018;border-color:#a5703877;box-shadow:inset 0 0 65px #180d1099}.invitation:after{border-color:#b98f5c45;inset:10px}.corner{width:19px;height:19px;border-radius:0;background:#3b1018;transform:rotate(45deg);border-color:#a5703877}.tl{top:-10px;left:-10px}.tr{top:-10px;right:-10px}.bl{bottom:-10px;left:-10px}.br{bottom:-10px;right:-10px}
h1{font-family:'Pirata One',Georgia,serif;font-size:clamp(54px,5.1vw,82px);line-height:1.05;color:#eadfce;text-shadow:0 2px 12px #180d1033}h1 small{font-family:'Cormorant Garamond',Georgia,serif;font-size:.37em;line-height:1.2;letter-spacing:.09em;margin-top:6px}h1 em{font-family:'Cormorant Garamond',Georgia,serif;font-size:.48em;margin:10px 0}.ornament{color:#b5a56a}.intro{color:#cdb5a3}.date{color:#eadfce}.date span{border-color:#b98f5c66}.location{color:#d0bba7}.eyebrow{color:#c8a67a}.text-link{border-color:#b98f5c88}.text-link:hover{border-color:#eadfce;color:#f3e8d9}.hero-image img{filter:saturate(.72) sepia(.14) brightness(.85)}.hero-image{box-shadow:0 10px 40px #100b0855}figcaption{color:#eadfce}
.letter h2,.venue h2,.faq h2,.date-band h2{font-family:'Pirata One',Georgia,serif;font-weight:400;color:#e1d3c5;line-height:1.12}.letter h2{font-size:51px}.letter .signature{color:#c9b090}.letter{padding-top:105px;padding-bottom:105px}
.venue{background:linear-gradient(#30251ee8,#30251ee8),url('assets/grain.svg');border-block:1px solid #b98f5c33}.venue h2{font-size:58px}.venue h2 em{font-style:normal}.venue .translation{color:#c1a986}.venue-photo img{border-radius:44% 44% 2px 2px;filter:saturate(.6) sepia(.25) brightness(.83);border:1px solid #b98f5c55}.photo-index{color:#bca58b}.venue-address{color:#e1d3c5}.venue-address span{color:#c7b7a5}
.date-band{background:radial-gradient(ellipse at 50% 0,#733b3f44,transparent 70%),url('assets/grain.svg'),#410d16;border-block:1px solid #a5703855}.date-band h2{font-size:34px}.date-band p:last-child{color:#cbb6a5}.button{border-color:#b98f5c99;color:#eadfce}.button:hover{background:#e1d3c5;color:#410d16}
.faq h2{color:#e1d3c5}.flourish{color:#9d925f}.faq-list,details{border-color:#e1d3c530}summary{color:#e1d3c5}summary:after{color:#c9a479}details p{color:#c8b7a7}footer{border-color:#e1d3c52b}.footer-names{font-family:'Pirata One',Georgia,serif;color:#e1d3c5}.footer-names em{font-family:'Cormorant Garamond',Georgia,serif}.credit{color:#bca38d}
/* Brief, one-time entrances; no perpetual movement or hidden content. */
@keyframes arrive{from{opacity:.35;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
 .invitation{animation:arrive 900ms ease-out both}.hero-image{animation:arrive 1100ms ease-out both}
 .revealed{animation:arrive 850ms ease-out both}
 .text-link,.button,header nav a{transition:color 200ms ease,background-color 200ms ease,border-color 200ms ease}
 summary:after{transition:transform 220ms ease}details[open] summary:after{transform:rotate(180deg)}
 .venue-photo img{transition:filter 600ms ease}.venue-photo:hover img{filter:saturate(.8) sepia(.15) brightness(.95)}
}
@media(max-width:850px){h1{font-size:59px}.venue h2{font-size:47px}.date-band h2{font-size:29px}}
@media(max-width:600px){h1{font-size:68px}.invitation{min-height:680px}.letter{padding:70px 26px}.letter h2{font-size:42px}.venue h2{font-size:51px}.date-band h2{font-size:30px}.footer-names{font-size:33px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Framed wedding-day countdown. */
.countdown-section{padding:65px 8%;background:radial-gradient(ellipse at center,#64582855,transparent 75%),url('assets/grain.svg'),#343420;border-block:1px solid #a5703855;text-align:center}
.countdown-frame{position:relative;max-width:920px;margin:auto;border:1px solid #ba9a6599;outline:1px solid #ba9a6544;outline-offset:8px;padding:48px 35px 42px;box-shadow:inset 0 0 45px #171a1366}
.countdown-frame:before,.countdown-frame:after{content:'◆';position:absolute;top:50%;color:#b39a6c;background:#3b3b27;padding:10px 0;font-size:15px;transform:translateY(-50%)}.countdown-frame:before{left:-8px}.countdown-frame:after{right:-8px}
.countdown-ornament{position:absolute;left:50%;transform:translateX(-50%);font:45px/1 Georgia,serif;color:#b39a6c;background:#3b3b27;padding:0 18px}.countdown-ornament.top{top:-25px}.countdown-ornament.bottom{bottom:-25px;transform:translateX(-50%) rotate(180deg)}
.countdown-frame h2{font:400 clamp(29px,3.4vw,47px)/1.2 'Pirata One',Georgia,serif;color:#eadfce;margin:20px 0 28px}.countdown-digits{display:flex;justify-content:center;align-items:flex-start;gap:15px;color:#eadfce;font-variant-numeric:tabular-nums}.countdown-digits>div{min-width:90px}.countdown-digits span{font:400 clamp(42px,5.2vw,72px)/1 'Cormorant Garamond',Georgia,serif;font-variant-numeric:tabular-nums;display:block}.countdown-digits b{font:400 48px/.95 'Cormorant Garamond',Georgia,serif;opacity:.55}.countdown-digits small{display:block;margin-top:14px;font:9px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;color:#d4c7af}.countdown-note{font:12px/1.7 Georgia,serif;color:#c8bea7;margin:30px auto 0;max-width:420px}.countdown-digits[hidden]{display:none}
@media(max-width:600px){.countdown-section{padding:55px 7%}.countdown-frame{padding:36px 12px}.countdown-frame h2{font-size:29px}.countdown-digits{gap:5px}.countdown-digits>div{min-width:46px}.countdown-digits span{font-size:43px}.countdown-digits b{font-size:32px}.countdown-digits small{font-size:8px;letter-spacing:.6px}.countdown-frame .eyebrow{font-size:8px;letter-spacing:1.5px}.countdown-note{font-size:11px;padding:0 8px}}

/* Carved gilt portrait frame. Nine-slice scaling keeps the corner ornaments intact. */
.hero{min-height:850px;gap:20px}
.invitation{margin:0 8px 0 0;padding:115px 86px 100px;border:0;background:none;box-shadow:none;isolation:isolate}
.invitation:before{content:'';position:absolute;inset:65px 50px 60px;background:radial-gradient(ellipse at 50% 30%,#733b3f44,transparent 65%),url('assets/grain.svg'),#3b1018;box-shadow:inset 0 0 60px #180d10aa;z-index:-1;pointer-events:none}
.invitation:after{inset:0;border:1px solid transparent;border-image-source:url('assets/ornate-gold-frame.png');border-image-slice:22%;border-image-width:130px 98px;border-image-repeat:stretch;filter:saturate(.72) brightness(.88);pointer-events:none;z-index:2}
.invitation .corner{display:none}.invitation .ornament{display:none}
.invitation h1{margin-top:25px}.invitation .eyebrow{margin-top:10px}
.invitation .text-link{font-size:10px;gap:12px}.invitation .location{font-size:8px;letter-spacing:1.1px}
@media(min-width:1550px){.hero{min-height:920px}}
@media(min-width:601px) and (max-width:1000px){.hero{min-height:810px;gap:12px}.invitation{padding:110px 50px 95px}.invitation:after{border-image-width:100px 65px}.invitation:before{inset:58px 35px}.invitation h1{font-size:53px}.invitation .location{font-size:8px;letter-spacing:.3px}}
@media(max-width:600px){.hero{gap:0;min-height:0;margin-inline:4%}.invitation{min-height:780px;margin:0 0 26px;padding:100px 54px 90px}.invitation:after{border-image-width:93px 66px}.invitation:before{inset:50px 35px}.invitation h1{font-size:59px}.invitation .text-link{font-size:9px;gap:8px}.invitation .location{font-size:8px;letter-spacing:.3px}}
@media(max-width:360px){.invitation{padding-inline:46px}.invitation:after{border-image-width:83px 57px}.invitation h1{font-size:52px}.invitation .date{gap:10px}.invitation .date span{min-width:58px}.invitation .location{letter-spacing:0}}

/* Quiet botanical endpaper: etched leaves and wildflowers on the umber areas. */
body{
 background-image:url('assets/botanical.svg'),radial-gradient(ellipse at 10% 15%,#4d2c1c66,transparent 55%),url('assets/grain.svg');
 background-size:640px 800px,100% 100%,auto;
 background-repeat:repeat,no-repeat,repeat;
}
.venue{
 background-image:url('assets/botanical.svg'),url('assets/grain.svg');
 background-color:#30251e;
 background-size:640px 800px,auto;
 background-position:160px 90px,0 0;
}
@media(max-width:600px){
 body{background-size:480px 600px,100% 100%,auto}
 .venue{background-size:480px 600px,auto}
}
