
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&family=Montserrat:wght@400;500&display=swap');
:root{--ivory:#faf8f2;--blue:#a8bed3;--ink:#364d63;--gold:#b49a61}*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'Cormorant Garamond',Georgia,serif}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer;font:inherit}html{scroll-behavior:smooth}.eyebrow,nav,button,.small{font-family:Montserrat,sans-serif;font-size:10px;letter-spacing:2.8px;text-transform:uppercase}#entrance{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 10%,#e3edf6,transparent 55%),radial-gradient(ellipse at 90% 90%,#bed0e2,transparent 55%),#f5f5ef;transition:opacity 1s,visibility 1s;overflow:hidden}.invitation{text-align:center;width:min(640px,90vw)}.invitation>p{margin:25px}.envelope{position:relative;width:100%;height:340px;filter:drop-shadow(0 25px 35px #7189a340);perspective:1200px}.back{position:absolute;inset:0;background:#c6d5e4;border:1px solid #afc0d0;border-radius:3px}.letter{position:absolute;inset:20px 30px;background:#fffdf6;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform 1.3s .4s;box-shadow:0 0 0 1px #bba975 inset}.letter img{width:140px;mix-blend-mode:multiply}.letter h2{font-size:32px;margin:5px}.pocket{position:absolute;inset:0;background:linear-gradient(145deg,#d5e1ec,#b6cbde);clip-path:polygon(0 0,50% 60%,100% 0,100% 100%,0 100%)}.flap{position:absolute;inset:0;background:linear-gradient(#dfe9f0,#bccfe1);clip-path:polygon(0 0,100% 0,50% 62%);transform-origin:top;transition:transform 1s}.seal{position:absolute;left:calc(50% - 47px);top:153px;width:94px;height:94px;border-radius:50%;border:5px double #b79a5c;background:#f4e6bd;box-shadow:0 5px 12px #536a7b40;overflow:hidden;transition:opacity .4s}.seal img{width:100%;height:100%;object-fit:cover;transform:scale(1.35);mix-blend-mode:multiply}.opening .flap{transform:rotateX(180deg)}.opening .seal{opacity:0}.opening .letter{transform:translateY(-130px)}#entrance.gone{opacity:0;visibility:hidden}.open-label{border:0;background:none;color:var(--ink);padding:20px}.skip{position:absolute;bottom:24px;border:0;background:none;color:var(--ink)}nav{display:flex;align-items:center;justify-content:space-between;padding:24px 5vw;background:var(--ivory);gap:25px}nav .brand{font-family:Georgia;font-size:22px;letter-spacing:2px}nav .links{display:flex;gap:28px}.hero{position:relative;height:90vh;min-height:600px;overflow:hidden;background:#d8d9d5}.hero img{width:100%;height:100%;object-fit:cover;object-position:center 42%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#16283475)}.hero-title{position:absolute;z-index:1;bottom:7%;left:0;width:100%;text-align:center;color:white}.hero h1{font-weight:400;font-size:clamp(64px,9vw,140px);line-height:.85;margin:24px}.hero h1 em{font-size:.65em}.hero .eyebrow{font-size:11px}.intro{text-align:center;padding:110px 20px 90px;max-width:850px;margin:auto}.intro img{width:150px;mix-blend-mode:multiply}.intro h2,h2{font-size:clamp(42px,5vw,76px);font-weight:400;line-height:1.05;margin:25px 0}.intro p:not(.eyebrow){font-size:24px;line-height:1.5}.rule{width:80px;height:1px;background:var(--gold);margin:35px auto}.portrait-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:0 9vw 110px;align-items:center}.portrait-pair img{width:100%;height:650px;object-fit:cover}.portrait-pair img:nth-child(2){height:530px}.blue{background:#e3edf3;padding:100px 7vw}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-top p{max-width:270px;font-size:20px;line-height:1.4}.film{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 0 30px}.frame{flex:0 0 38%;scroll-snap-align:center}.frame img{width:100%;height:440px;object-fit:cover}.frame span{display:block;margin-top:14px;font-size:10px;letter-spacing:3px;font-family:Montserrat}.events{padding:110px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:80px}.events .event{padding:35px 0;border-top:1px solid #bcc6cc}.event h3{font-size:33px;font-weight:400;margin:10px 0}.event p{font-size:21px}.link{font:10px Montserrat;letter-spacing:2px;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:8px}.gallery{padding:60px 6vw 100px}.gallery-head{text-align:center;margin-bottom:50px}.grid{columns:3;column-gap:22px}.grid button{display:block;border:0;padding:0;margin:0 0 22px;width:100%;background:none}.grid img{width:100%;display:block}.more{display:block;margin:40px auto 0;padding:17px 30px;background:none;border:1px solid #9caebb;color:var(--ink)}.gift{text-align:center;background:#e7eef3;padding:100px 20px}.gift p{font-size:23px;max-width:620px;margin:25px auto;line-height:1.5}.note{font:12px Montserrat!important;letter-spacing:1px;line-height:1.7!important}.story{text-align:center;padding:100px 20px}.story p{font-size:23px}footer{text-align:center;padding:70px 20px}footer img{width:120px;mix-blend-mode:multiply}dialog{border:0;background:#faf8f2;padding:15px;max-width:95vw;max-height:95vh}dialog::backdrop{background:#203246cc}dialog img{max-width:85vw;max-height:82vh;display:block}dialog button{display:block;margin:10px auto;background:none;border:0}.reveal{opacity:0;transform:translateY(25px);transition:1s}.reveal.visible{opacity:1;transform:none}@media(max-width:700px){nav{padding:20px}.links a:nth-child(2),.links a:nth-child(3){display:none}.links{gap:16px!important}.hero{height:78vh;min-height:500px}.hero img{object-position:47% center}.hero h1{font-size:65px}.envelope{height:245px}.seal{top:100px}.portrait-pair{gap:12px;padding:0 20px 70px}.portrait-pair img{height:350px}.portrait-pair img:nth-child(2){height:290px}.events{grid-template-columns:1fr;gap:20px;padding:70px 25px}.frame{flex-basis:85%}.frame img{height:420px}.section-top{display:block}.blue{padding:70px 20px}.grid{columns:2;column-gap:12px}.grid button{margin-bottom:12px}.intro{padding:65px 25px}.letter img{width:100px}.letter h2{font-size:24px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* White, champagne gold, and couture lace */
:root{--ivory:#fffdf9;--blue:#e7dcc8;--ink:#443e35;--gold:#a5874f}body{background:var(--ivory)}body.invite-active{overflow:hidden}nav{border-bottom:1px solid #e8dfce}nav .brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;letter-spacing:.2px;white-space:nowrap}.blue,.gift{background:#f6f2e9}.events .event{border-color:#d6c7ad}.hero:after{background:linear-gradient(transparent 45%,#241d1266)}.hero h1{font-size:clamp(66px,9vw,140px)}.hero-names{font-size:29px;font-style:italic;margin:22px 0}.hero-title .eyebrow{line-height:2}.intro img{width:180px}.intro h2 em,h2 em{color:#9a7b43}.portrait-pair img{object-position:center 35%}.portrait-pair img:nth-child(2){object-position:center 35%}.film{scrollbar-color:#b59c6c #eee6d8}.frame img{height:480px}.gallery{max-width:1500px;margin:auto}.grid{columns:unset;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.grid button{margin:0;overflow:hidden}.grid img{height:450px;object-fit:cover;transition:transform .7s}.grid button:hover img{transform:scale(1.025)}.grid button:nth-child(6n+4){grid-column:span 2}.grid button:nth-child(6n+4) img{height:450px}.more{border-color:#b7a27b}.more[hidden]{display:none}.engagement{padding:100px 7vw;background:#f8f5ef}.engagement-feature{display:grid;grid-template-columns:1fr 1.2fr;gap:7vw;align-items:center;max-width:1250px;margin:auto auto 40px}.photo-button{display:block;border:0;padding:0;background:none;width:100%;overflow:hidden}.photo-button img{width:100%;display:block;object-fit:cover}.engagement-feature>.photo-button img{height:650px}.engagement-feature>div .eyebrow{margin:0 0 30px}.engagement-caption{font-size:25px;font-style:italic;text-align:right}.engagement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1250px;margin:auto}.engagement-grid img{height:220px;object-fit:cover}.fund-title{font-size:31px;font-weight:400;margin:25px 0}.gift{position:relative;border-top:1px solid #e5dac5}.gift h2{font-size:clamp(42px,5vw,70px)}footer img{width:155px}dialog::backdrop{background:#30291ee8}button:focus-visible,a:focus-visible{outline:2px solid #98753c;outline-offset:6px}
#entrance{background:radial-gradient(ellipse at 50% 35%,#fff 0%,#faf7f0 60%,#e8dfcf 100%);transition:opacity 1s ease,visibility 1s;perspective:1800px}.invitation{width:min(680px,86vw);position:relative}.entrance-kicker{color:#907446;margin:0 0 10px!important}.entrance-title{font-size:clamp(38px,5vw,62px);font-weight:400;line-height:1.1;margin:12px 0 38px;color:#6d5632}.envelope{width:100%;height:auto;aspect-ratio:1.65;perspective:1600px;filter:drop-shadow(0 24px 30px #65503326);transform-style:preserve-3d;transition:transform 1.8s 1.7s ease}.back{background:#f9f3e5;border:1px solid #c6b28b;box-shadow:inset 0 0 28px #d3c5a8;border-radius:0}.letter{inset:13px;box-shadow:inset 0 0 0 1px #c5ad7a,inset 0 0 0 9px #fffdf8,inset 0 0 0 10px #e3d7bd;background:#fffdf8;transition:transform 1.7s 1.6s ease,box-shadow 1.5s 1.6s;z-index:1}.letter img{width:135px;mix-blend-mode:multiply;margin:0 0 5px}.letter h2{font-size:37px;color:#79613a;margin:7px 0}.letter .eyebrow{font-size:8px;letter-spacing:2px;margin:8px 0}.letter-date{font-size:20px;margin:8px}.letter-rule{height:1px;width:55px;background:#b89b65;margin:8px}.lace-panel{position:absolute;top:0;bottom:0;width:51%;background:linear-gradient(#ffffff30,#fffdf510),url('assets/ivory-lace.jpg') center/680px;z-index:3;border:1px solid #cdb991;transition:transform 1.75s .65s cubic-bezier(.22,.7,.2,1),filter 1.75s .65s;backface-visibility:visible;transform-style:preserve-3d}.lace-left{left:0;transform-origin:0 50%;clip-path:polygon(0 0,96% 0,100% 5%,96% 10%,100% 15%,96% 20%,100% 25%,96% 30%,100% 35%,96% 40%,100% 45%,96% 50%,100% 55%,96% 60%,100% 65%,96% 70%,100% 75%,96% 80%,100% 85%,96% 90%,100% 95%,96% 100%,0 100%)}.lace-right{right:0;transform-origin:100% 50%;background-position:right center}.ribbon{position:absolute;top:calc(50% - 24px);height:48px;width:51%;z-index:4;background:linear-gradient(#d7c8a5,#fff9e7 22%,#f3e9cd 50%,#e3d3af 80%,#c8b791);border-block:1px solid #e7d7b1;box-shadow:0 3px 6px #65503326;transition:transform .9s .2s ease,opacity .8s .3s}.ribbon-left{left:0;transform-origin:left}.ribbon-right{right:0;transform-origin:right}.seal{z-index:5;top:calc(50% - 56px);left:calc(50% - 56px);width:112px;height:112px;border:3px double #b99a58;background:radial-gradient(circle at 35% 20%,#fff7d8,#d9b870 60%,#a47b35);box-shadow:0 5px 12px #65503355,inset 0 0 0 6px #e7c983;transition:transform .7s,opacity .6s .15s;padding:13px}.seal img{transform:none;object-fit:contain;width:100%;height:100%;border-radius:50%;mix-blend-mode:multiply}.entrance-open{margin-top:25px;font-size:10px;border-bottom:1px solid #bca06b;padding:12px 5px;transition:opacity .4s}.entrance-signoff{margin:17px!important;font-size:19px;color:#8a7656}.skip{bottom:18px;font-size:8px;color:#8a7656;padding:12px}.opening .seal{opacity:0;transform:translateY(-18px) scale(1.18)}.opening .ribbon-left{transform:translateX(-30%) rotate(-8deg);opacity:0}.opening .ribbon-right{transform:translateX(30%) rotate(8deg);opacity:0}.opening .lace-left{transform:rotateY(-155deg);filter:brightness(.94)}.opening .lace-right{transform:rotateY(155deg);filter:brightness(.94)}.opening .letter{transform:translateZ(65px) scale(1.035);box-shadow:inset 0 0 0 1px #c5ad7a,inset 0 0 0 10px #fffdf8,0 15px 40px #65503322}.opening .entrance-open,.opening .entrance-signoff{opacity:0}#entrance.gone{pointer-events:none;opacity:0;visibility:hidden}
@media(max-width:700px){nav .brand{font-size:23px}.links{font-size:8px;letter-spacing:1.2px}.hero h1{font-size:62px}.hero-names{font-size:25px}.hero .eyebrow{font-size:9px;letter-spacing:2px}.hero{min-height:530px}.entrance-title{margin-bottom:36px}.envelope{aspect-ratio:1.3}.letter{inset:9px}.letter img{width:82px}.letter h2{font-size:26px}.letter .eyebrow{font-size:6px;letter-spacing:1.3px}.letter-date{font-size:16px}.seal{width:90px;height:90px;left:calc(50% - 45px);top:calc(50% - 45px);padding:8px}.lace-panel{background-size:440px}.ribbon{height:38px;top:calc(50% - 19px)}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grid img,.grid button:nth-child(6n+4) img{height:260px}.grid button:nth-child(6n+4){grid-column:auto}.grid button:nth-child(7n+3){grid-column:span 2}.grid button:nth-child(7n+3) img{height:340px}.engagement{padding:70px 20px}.engagement-feature{gap:25px;grid-template-columns:1fr}.engagement-feature>.photo-button img{height:auto;max-height:610px;object-fit:contain}.engagement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.engagement-grid img{height:170px}.engagement-feature>div .eyebrow{font-size:8px;text-align:center;margin-top:12px}.engagement-caption{text-align:center}.frame img{height:420px}.invitation{width:86vw}.opening .envelope{transform:scale(.9)}}@media(max-height:650px) and (min-width:701px){.invitation{width:480px}.entrance-title{margin:10px 0 20px;font-size:38px}.letter img{width:85px}.letter h2{font-size:28px}.letter .eyebrow{font-size:7px}.entrance-signoff{display:none}}
/* The Yildirims: ivory silk, lace, and two languages. */
[hidden]{display:none!important}.stage{position:fixed;inset:0;z-index:30;display:grid;place-items:center;overflow:auto;background:radial-gradient(ellipse at top,#fff,#faf7ef);padding:35px 25px;color:var(--ink)}.stage-inner{width:min(900px,100%);text-align:center;margin:auto}.stage-crest{width:140px;mix-blend-mode:multiply;margin-bottom:18px}.stage h2{font-size:clamp(31px,4vw,55px);line-height:1.14;margin:25px 0}.stage h2 em{font-size:.82em}.stage .eyebrow{font-size:9px;line-height:2}.language-prompt{font-size:22px;margin:30px 0}.language-options{display:flex;gap:24px;justify-content:center}.language-options button{display:flex;flex-direction:column;align-items:center;width:210px;padding:28px 20px;background:#fffdf9;border:1px solid #d8c9ac;box-shadow:0 10px 30px #7a603509;transition:transform .3s,box-shadow .3s}.language-options button:hover{transform:translateY(-5px);box-shadow:0 14px 35px #7a603518}.language-options svg{width:64px;border-radius:2px;box-shadow:0 3px 8px #0002;margin-bottom:22px}.language-options strong{font:25px 'Cormorant Garamond',Georgia,serif;letter-spacing:0;text-transform:none}.language-options span{font-size:9px;margin-top:12px;letter-spacing:2px}.language-note{font:11px/1.9 Montserrat,sans-serif;color:#8a806f;margin:30px 0 0;letter-spacing:0}.gold-button{padding:17px 26px;background:#a68b57;color:#fff;border:1px solid #a68b57;font-size:10px;letter-spacing:2px;margin-top:25px}.film-inner{max-width:900px}.video-shell{max-width:850px;margin:25px auto 0;background:#eee8dd;overflow:hidden}.video-shell video{width:100%;max-height:65vh;display:block;background:#181610}#film-pending{height:min(45vh,430px);position:relative}#film-pending>img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}#film-pending:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#18120c99)}#film-pending>div{position:absolute;bottom:25px;left:0;right:0;z-index:1;color:white}#film-pending p{font-size:30px;margin:10px}.site-controls{display:flex;gap:12px;flex-shrink:0}.site-controls button{background:none;border:1px solid #d8c9ac;color:#76613e;padding:9px;font-size:9px;letter-spacing:1px}nav{gap:20px;padding:20px 4vw}nav .links{gap:20px}.hero{height:90vh;min-height:720px;max-height:1050px}.hero>img{object-position:50% 58%;transform:scale(1.02)}.hero:after{background:linear-gradient(#19150f88,transparent 48%,transparent)}.hero-title{top:5%;bottom:auto}.hero h1{font-size:clamp(65px,8vw,120px);margin:15px;line-height:1}.hero-title .hero-names{margin:10px 0 20px}.hero .eyebrow{font-size:10px}.countdown-section{padding:55px 20px 45px;text-align:center;border-bottom:1px solid #e6ddcd;background:#fffdf9}.countdown-section>.eyebrow{color:#927446}.countdown{display:flex;justify-content:center;align-items:center;gap:34px;margin:24px auto}.countdown>div{min-width:90px}.countdown span{font:56px 'Cormorant Garamond',Georgia,serif;display:block;font-variant-numeric:tabular-nums;color:#806438}.countdown small{font:9px Montserrat,sans-serif;letter-spacing:2px;text-transform:uppercase;display:block;margin-top:10px}.countdown i{font-size:27px;color:#bca579}.count-date{font-size:19px;color:#8e7b5b;margin-top:28px}.story-section{padding:110px max(25px,8vw);background:#fffdf9}.story-heading{max-width:800px;text-align:center;margin:0 auto 65px}.story-lead{font-size:24px;line-height:1.6;max-width:640px;margin:28px auto}.story-chapter{max-width:1080px;margin:auto;display:grid;grid-template-columns:90px 1fr;gap:30px;padding:45px 0;border-top:1px solid #ddd0b9}.chapter-num{font:italic 53px 'Cormorant Garamond',Georgia,serif;color:#c4ae82}.story-chapter h3{font-size:36px;font-weight:400;color:#806438;line-height:1.15;margin:0 0 25px}.story-chapter .prose{font-size:21px;line-height:1.8;max-width:810px;margin:0}.story-interlude{max-width:1080px;margin:15px auto 60px;display:grid;grid-template-columns:1fr 1fr;gap:25px}.story-interlude img{width:100%;height:450px;object-fit:cover}.story-quote{grid-column:1/-1;text-align:center;padding:35px 15px 0;font-size:clamp(30px,4vw,49px);font-style:italic;color:#9a7b43}.entrance-title{font-size:clamp(38px,5vw,64px)}.envelope{aspect-ratio:1.6;filter:drop-shadow(0 22px 28px #65503322)}.lace-panel{background:#fffdf8;border-color:#d3c19d;overflow:hidden;clip-path:none;box-shadow:inset 0 0 40px #cbbb9722}.lace-panel:before{content:'';position:absolute;inset:0;background:url('assets/ivory-lace.jpg') center/620px;opacity:.86;mask-image:linear-gradient(90deg,#000 0%,#000 22%,transparent 34%,transparent 83%,#000 96%)}.lace-left{width:50.1%;border-radius:2px 0 0 2px;transform-origin:left center}.lace-right{width:50%;border-radius:0 2px 2px 0;transform-origin:right center}.lace-right:before{transform:scaleX(-1)}.lace-panel:after{content:'';position:absolute;inset:13px;border:1px solid #c7af7c88}.ribbon{top:65%;height:30px;background:linear-gradient(#e4d9c2,#fffff9 35%,#f4eedf 55%,#d9caad);z-index:4}.seal{width:145px;height:145px;top:12%;left:calc(50% - 72.5px);border:0;padding:0;border-radius:0;background:none;box-shadow:none;overflow:visible}.seal img{border-radius:0;mix-blend-mode:multiply;object-fit:contain;transform:none;width:100%;height:100%;filter:drop-shadow(0 2px 2px #a78b5220)}.satin-bow{position:absolute;z-index:5;width:70%;height:65%;left:15%;top:42%;overflow:visible;pointer-events:none;filter:drop-shadow(0 3px 2px #60482226)}.bow-loop{transform-box:fill-box;transform-origin:center;transition:transform 1.2s .1s cubic-bezier(.3,0,.2,1),opacity .5s .9s}.bow-tail{transform-box:fill-box;transform-origin:top center;transition:transform 1.4s .25s,opacity .5s 1s}.bow-knot{transform-box:fill-box;transform-origin:center;transition:transform .7s .6s,opacity .4s .8s}.opening .loop-left{transform:translateX(-30px) scaleX(1.3) scaleY(.08) rotate(-14deg);opacity:0}.opening .loop-right{transform:translateX(30px) scaleX(1.3) scaleY(.08) rotate(14deg);opacity:0}.opening .tail-left{transform:translate(-140px,-60px) rotate(58deg);opacity:0}.opening .tail-right{transform:translate(140px,-60px) rotate(-58deg);opacity:0}.opening .bow-knot{transform:scale(.3) rotate(30deg);opacity:0}.ribbon{transition:transform 1.2s 1s,opacity .8s 1.2s}.opening .ribbon-left{transform:translateX(-45%) rotate(-12deg)}.opening .ribbon-right{transform:translateX(45%) rotate(12deg)}.lace-panel{transition:transform 1.8s 1.75s cubic-bezier(.22,.7,.2,1),filter 1.8s 1.75s}.seal{transition:opacity .7s 1.2s,transform 1s 1s}.letter{transition:transform 1.5s 2.5s,box-shadow 1.5s 2.5s}.opening .letter{transform:translateZ(65px) scale(1.03)}.opening .envelope{transform:none}.letter img{width:150px}.letter .eyebrow{letter-spacing:1.5px}.letter h2{font-size:34px}.grid button:first-child img{object-position:50% 40%}
@media(max-width:900px){nav .links{gap:12px;font-size:8px;letter-spacing:1px}nav .brand{font-size:24px}.site-controls button{padding:8px;font-size:8px}.hero{min-height:650px}.story-section{padding:75px 30px}.story-chapter{grid-template-columns:55px 1fr;gap:15px}.story-chapter h3{font-size:32px}}
@media(max-width:700px){nav{flex-wrap:wrap;gap:12px;padding:16px 20px}nav .brand{font-size:25px}.site-controls{margin-left:auto;order:2}nav .links{order:3;flex-basis:100%;justify-content:space-between;gap:12px!important;padding-top:8px}.links a:nth-child(2),.links a:nth-child(3){display:inline}.hero{height:78svh;min-height:650px;max-height:850px}.hero>img{object-position:50% 77%;transform:scale(1.15)}.hero-title{top:5%}.hero h1{font-size:clamp(49px,12vw,69px);margin:12px 5px}.hero .eyebrow{font-size:7px;letter-spacing:1.6px}.hero-names{font-size:24px}.hero:after{background:linear-gradient(#211b1380,transparent 36%)}.countdown-section{padding:35px 15px}.countdown{gap:10px;margin:18px auto}.countdown>div{min-width:55px}.countdown span{font-size:39px}.countdown small{font-size:7px;letter-spacing:1px}.countdown i{font-size:18px}.count-date{font-size:16px}.story-section{padding:70px 23px}.story-heading{margin-bottom:40px}.story-lead{font-size:21px}.story-chapter{grid-template-columns:1fr;gap:10px;padding:30px 0}.chapter-num{font-size:35px}.story-chapter h3{font-size:31px;margin-bottom:20px}.story-chapter .prose{font-size:20px;line-height:1.75}.story-interlude{gap:12px;margin-bottom:30px}.story-interlude img{height:280px}.stage{padding:24px 20px}.stage-crest{width:105px;margin:0}.stage h2{font-size:32px;margin:22px 0}.stage .eyebrow{font-size:7px;letter-spacing:1.5px}.language-prompt{font-size:19px}.language-options{gap:13px}.language-options button{width:155px;padding:23px 12px}.language-options strong{font-size:24px}.language-note{font-size:9px}.envelope{aspect-ratio:1.2}.seal{width:112px;height:112px;left:calc(50% - 56px);top:10%}.satin-bow{width:90%;left:5%;top:42%;height:65%}.ribbon{top:65%;height:24px}.lace-panel:before{background-size:400px}.letter img{width:100px}.letter h2{font-size:27px}.letter .eyebrow{font-size:5.7px;letter-spacing:1px}.entrance-title{margin-bottom:30px}.entrance-kicker{font-size:7px;letter-spacing:1.6px}.stage-inner.film-inner h2{font-size:38px}#film-pending{height:45vh}.skip{font-size:7px}.opening .envelope{transform:scale(.95)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
.seal{mix-blend-mode:multiply}.seal img{filter:none}
/* Couture gatefold: four embroidered petals, silk release, clean monogram. */
#entrance{background:radial-gradient(ellipse at 50% 35%,#fff 10%,#f5f0e7 100%)}
.invitation{width:min(440px,82vw)}
.entrance-title{font-size:45px;margin:10px 0 22px}.entrance-kicker{font-size:8px;letter-spacing:2px}
.envelope{aspect-ratio:2/3;height:auto;max-height:64svh;filter:drop-shadow(0 18px 28px #61503828);perspective:1600px}
.back{border:1px solid #dfd1b9;background:#fffdf8;box-shadow:0 0 0 7px #fffaf1,inset 0 0 45px #d6c9ae30}
.lace-panel{inset:0;width:100%;height:100%;background:url('assets/couture-lace.png') center/100% 100%;border:0;box-shadow:none;border-radius:0;backface-visibility:hidden;transition:transform 2.6s 1.5s cubic-bezier(.25,.65,.15,1),opacity 1s 3s;will-change:transform}
.lace-panel:before,.lace-panel:after{display:none}
.lace-left{clip-path:polygon(0 0,50% 50%,0 100%);transform-origin:0 50%;z-index:4}
.lace-right{clip-path:polygon(100% 0,50% 50%,100% 100%);transform-origin:100% 50%;z-index:4}
.lace-top{clip-path:polygon(0 0,100% 0,50% 50%);transform-origin:50% 0;z-index:3}
.lace-bottom{clip-path:polygon(0 100%,100% 100%,50% 50%);transform-origin:50% 100%;z-index:3}
.seal{top:50%;left:50%;width:174px;height:174px;transform:translate(-50%,-50%);padding:10px;border-radius:50%;border:4px double #c2a16a;background:#fff;box-shadow:0 8px 20px #5a422f35,inset 0 0 0 4px #fff8e9;mix-blend-mode:normal;transition:transform 1.4s 1s,opacity .8s 1.3s;z-index:7}
.seal img{mix-blend-mode:normal;filter:none;border-radius:50%;object-fit:contain;background:white}
.seal:focus{outline:none}.seal:focus-visible{outline:2px solid #a48750;outline-offset:8px}
.letter{inset:15px;background:#fffdf9;box-shadow:inset 0 0 0 1px #d3bf99,inset 0 0 0 8px #fffdf9,inset 0 0 0 9px #e8ddc8;padding:22px 12px;transition:transform 2s 2.5s,box-shadow 2s 2.5s}
.letter img{width:170px;mix-blend-mode:normal;background:#fff;max-width:65%}.letter h2{font-size:35px}.letter .eyebrow{font-size:7px;line-height:2}.letter-date{font-size:22px}
.satin-bow{width:78%;left:11%;top:51%;height:39%;z-index:6;filter:drop-shadow(0 2px 2px #60482220)}
.ribbon{top:66%;height:18px;width:50%;z-index:5;opacity:.85}
.opening .seal{transform:translate(-50%,-72%) scale(1.08);opacity:0}
.opening .lace-left{transform:translateX(-18%) rotateY(-145deg);opacity:0}
.opening .lace-right{transform:translateX(18%) rotateY(145deg);opacity:0}
.opening .lace-top{transform:translateY(-12%) rotateX(145deg);opacity:0}
.opening .lace-bottom{transform:translateY(12%) rotateX(-145deg);opacity:0}
.opening .letter{transform:translateZ(60px) scale(1.04);box-shadow:inset 0 0 0 1px #d3bf99,inset 0 0 0 8px #fffdf9,inset 0 0 0 9px #e8ddc8,0 15px 35px #8b754733}
.opening .envelope{transform:none}
.entrance-open{margin-top:20px;padding:10px 5px}.entrance-signoff{font-size:17px;margin:12px!important}
.stage-crest,.intro img,footer img{mix-blend-mode:normal;background:#fff;border-radius:50%;padding:8px}
.hero-title [data-i18n=heroDate]{line-height:2.2}.hero-title [data-i18n=heroDate] strong{font-weight:500;letter-spacing:3px;font-size:1.15em}
.film{align-items:stretch}.frame{margin:0!important;transform:none!important;align-self:stretch;flex:0 0 32%}.frame img{display:block;height:460px;width:100%;object-fit:cover}.frame:nth-child(even){padding:0;margin-top:0;transform:none}.frame span{display:none}
.story-chapter{grid-template-columns:180px minmax(0,1fr);gap:40px;border:0;padding:35px 0;position:relative}
.timeline-marker{position:relative;padding:10px 25px 0 0;border-right:1px solid #d9cbb2;font:10px/1.8 Montserrat,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:#947747}
.timeline-marker:after{content:'';position:absolute;top:15px;right:-5px;width:9px;height:9px;border:1px solid #ac905e;background:#fffdf9;transform:rotate(45deg)}
.chapter-copy{padding-bottom:30px}.story-chapter h3{font-size:38px}.story-chapter .prose{font-size:21px;line-height:1.85}
.family-memories{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:35px}.memory-space{min-height:210px;margin:0;padding:30px 20px;border:1px solid #d6c4a4;outline:1px solid #e8decd;outline-offset:-8px;background:linear-gradient(135deg,#fffdf9,#f4eee3);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.memory-wide{grid-column:1/-1;min-height:240px}.memory-flourish{font-size:38px;color:#bda477;line-height:1;margin-bottom:18px}.memory-space figcaption{font-size:24px;font-style:italic;color:#8b7047}.memory-space small{display:block;font:8px/1.8 Montserrat,sans-serif;letter-spacing:1px;text-transform:uppercase;margin-top:15px;color:#96856c}
.timeline-proposal{margin:35px 0 10px}.timeline-proposal img{height:auto;max-height:600px;object-fit:contain}.timeline-proposal figcaption{font-size:23px;font-style:italic;text-align:center;margin-top:18px;color:#987b4c}
.engagement-feature>.photo-button img{height:auto;max-height:650px;object-fit:contain}.engagement-feature{grid-template-columns:1.3fr 1fr;gap:35px}.gift p{max-width:720px}
@media(max-width:700px){.invitation{width:min(370px,84vw)}.envelope{aspect-ratio:2/3;max-height:62svh}.entrance-title{font-size:36px;margin:8px 0 18px}.entrance-kicker{font-size:6.5px;letter-spacing:1.2px}.seal{width:136px;height:136px;top:50%;left:50%;padding:7px}.letter{inset:10px;padding:15px 10px}.letter img{width:125px}.letter h2{font-size:28px}.letter .eyebrow{font-size:6px}.letter-date{font-size:19px}.satin-bow{width:85%;left:7.5%;top:51%;height:39%}.ribbon{height:14px}.entrance-open{margin-top:15px;font-size:9px}.entrance-signoff{font-size:15px;margin:8px!important}.skip{bottom:8px}.frame{flex-basis:82%}.frame img{height:400px}.story-chapter{grid-template-columns:1fr;gap:12px;padding:25px 0 10px 22px;border-left:1px solid #d9cbb2}.timeline-marker{border:0;padding:0;font-size:8px}.timeline-marker:after{left:-27px;right:auto;top:4px}.story-chapter h3{font-size:31px}.story-chapter .prose{font-size:20px}.chapter-copy{padding-bottom:20px}.family-memories{gap:12px}.memory-space{min-height:185px;padding:25px 15px}.memory-space figcaption{font-size:20px}.memory-space small{font-size:7px}.memory-wide{min-height:220px}.engagement-feature{grid-template-columns:1fr}.hero-title [data-i18n=heroDate]{font-size:8px;line-height:2.2}.hero-title{top:4%}}
@media(max-height:750px){.invitation{width:min(340px,82vw)}.entrance-title{font-size:32px;margin:8px 0 14px}.envelope{max-height:59svh}.entrance-signoff{display:none}.seal{width:130px;height:130px}.letter img{width:115px}.letter h2{font-size:26px}.letter .eyebrow{font-size:6px}.entrance-open{margin-top:14px}.entrance-kicker{font-size:6px}}
@media(prefers-reduced-motion:reduce){.lace-panel,.seal,.letter{will-change:auto}.opening .lace-panel{opacity:0}}
/* Personal guest planning, a black-tie weekend, and individual photographic crops. */
.hero-attire{display:inline-block;margin-top:14px;padding:9px 17px;border:1px solid #ffffff99;font:9px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:2px;background:#241c1645;color:#fff}
.attire-section{text-align:center;padding:70px 25px 80px;background:#f4eee3;border-block:1px solid #e0d2b9}.attire-section>.eyebrow{font-size:12px;letter-spacing:3px;color:#81643c}.attire-copy{max-width:750px;font-size:23px;line-height:1.7;margin:25px auto 0}.attire-section h2{font-size:clamp(40px,5vw,65px)}
.early-section{padding:90px max(25px,8vw);display:grid;grid-template-columns:1fr 1.2fr;gap:65px;background:#fffdf9}.early-section .prose,.stay-section .prose{font-size:22px;line-height:1.7}.early-section h2{font-size:clamp(42px,5vw,65px)}fieldset{padding:0;margin:0;border:0}.attendance-options{display:grid;gap:12px}.attendance-options label{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid #d8c8ac;cursor:pointer;font-size:22px;transition:background .2s}.attendance-options label:has(input:checked){background:#f0e7d7;border-color:#a58b58}.attendance-options input{accent-color:#9b7d48;width:18px;height:18px}.field-label{display:block;font:10px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:1.5px;margin-top:25px}.field-label input,.field-label textarea{display:block;width:100%;border:1px solid #d8c8ac;background:#fff;color:#443e35;font:18px/1.5 Georgia;padding:13px;margin-top:10px;border-radius:0}.field-label textarea{resize:vertical}.early-fine,.early-privacy{font:11px/1.8 Montserrat,sans-serif;letter-spacing:0;color:#756b59}.early-fine{margin:25px 0 0}.early-privacy{font-size:10px}.early-section .gold-button{width:100%}#response-status{font-size:19px;line-height:1.5}.sr-only,.honey{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.schedule-section{text-align:center;padding:70px 7vw 90px;background:#fbf8f2}.schedule-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin:50px auto;max-width:1200px}.schedule-grid>div{border-top:1px solid #b9a174;padding:30px 10px}.schedule-grid time{font-size:39px;color:#8c7044}.schedule-grid h3{font:11px/1.7 Montserrat,sans-serif;letter-spacing:1.5px;text-transform:uppercase}.schedule-location{font:10px/1.8 Montserrat,sans-serif;letter-spacing:2px}.punctual{max-width:800px;margin:40px auto 0;padding:30px;border:1px solid #bea679;outline:1px solid #e5d9c1;outline-offset:-7px}.punctual h3{font-size:32px;font-weight:500;margin:5px}.punctual p{font-size:21px;line-height:1.6}.stay-section{text-align:center;padding:90px 25px;background:#f0e8da}.stay-section .prose{max-width:720px;margin:25px auto}.stay-dates{font-size:23px;color:#94764b}.booking-link{display:inline-block;line-height:1.5}.stay-section .note{max-width:650px;margin:25px auto 0}
.film .frame{position:relative;aspect-ratio:3/4;flex:0 0 32%;overflow:hidden;height:auto;padding:0}.film .frame img{position:absolute;max-width:none;object-fit:fill;transform:none;margin:0;display:block}
.seal{border:none;background:none;box-shadow:none;padding:0;border-radius:0;mix-blend-mode:normal;width:185px;height:185px}.seal img{border-radius:0;background:transparent;mix-blend-mode:normal;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 4px #725b3c35)}
.real-bow{position:absolute;left:-3%;top:49%;width:106%;height:43%;z-index:6;pointer-events:none;transform-origin:50% 35%;transition:transform 1.8s .15s cubic-bezier(.3,.1,.2,1),opacity .8s 1s;filter:drop-shadow(0 4px 3px #69533722)}.real-bow img{width:100%;height:100%;object-fit:contain}.opening .real-bow{transform:translateY(24px) scaleX(1.16) rotate(-3deg);opacity:0}.seal{z-index:7;top:47%}
nav .links{gap:14px;font-size:8px;letter-spacing:1.5px}nav .brand{font-size:24px}
@media(max-width:900px){.early-section{gap:35px;padding:70px 25px}nav{flex-wrap:wrap}.links{order:3;width:100%;justify-content:center}.site-controls{margin-left:auto}}
@media(max-width:700px){.early-section{grid-template-columns:1fr;gap:25px;padding:60px 25px}.attire-section{padding:55px 25px}.attire-section>.eyebrow{font-size:10px}.attire-copy{font-size:21px}.schedule-section{padding:60px 25px}.schedule-grid{grid-template-columns:1fr 1fr;gap:18px;margin:30px auto}.schedule-grid time{font-size:33px}.schedule-grid>div{padding:20px 5px}.schedule-grid h3{font-size:9px}.punctual{padding:25px 18px}.punctual h3{font-size:28px}.punctual p{font-size:20px}.stay-section{padding:65px 25px}.hero-attire{font-size:7px;padding:7px 12px;margin-top:7px}.hero-title .hero-names{margin-bottom:10px}.hero-title{top:3%}.film .frame{flex-basis:82%}.seal{width:152px;height:152px}.real-bow{top:49%;height:43%}nav .links{gap:10px!important;flex-wrap:wrap;justify-content:center;font-size:7px}.links a{padding:4px}}
.real-bow{transition:none}.real-bow img{position:absolute;inset:0;transform-origin:50% 36%;transition:transform 1.7s .15s cubic-bezier(.35,0,.2,1),opacity .7s 1s}.silk-left{clip-path:polygon(0 0,49% 0,47% 44%,52% 100%,0 100%)}.silk-right{clip-path:polygon(51% 0,100% 0,100% 100%,48% 100%,53% 44%)}.silk-knot{clip-path:polygon(46% 26%,54% 26%,55% 46%,46% 46%)}.opening .real-bow{transform:none;opacity:1}.opening .silk-left{transform:translate(-26%,12%) rotate(-12deg) scaleX(1.17);opacity:0}.opening .silk-right{transform:translate(26%,15%) rotate(13deg) scaleX(1.17);opacity:0}.opening .silk-knot{transform:translateY(12%) rotate(18deg) scale(.8);opacity:0}
/* A single, jubilant champagne moment. */
.party-section{padding:110px max(5vw,24px) 100px;background:#f4efe5;text-align:center;overflow:hidden}
.party-section .section-top{display:block;margin:0 auto 55px;max-width:1000px}
.party-section .section-top>div{width:auto}.party-section .eyebrow{max-width:none;margin:0 auto 24px}
.party-section h2{font-size:clamp(48px,6.5vw,94px);line-height:1.06;margin:0 0 26px}
.party-section .section-top>p{max-width:none;margin:0;font-size:23px}
.party-photo{max-width:1000px;margin:auto;position:relative;padding:12px;border:1px solid #c5b38d;box-shadow:0 28px 65px #6b542b24}
.party-photo:before,.party-photo:after{content:'✦';position:absolute;color:#ae8d4b;font-size:34px;background:#f4efe5;padding:0 12px;z-index:2;pointer-events:none}
.party-photo:before{top:-25px;left:24px}.party-photo:after{bottom:-25px;right:24px}
.party-photo .photo-button{display:block;width:100%;height:auto;aspect-ratio:1/1;overflow:hidden;border:0;padding:0;background:#1e1810}
.party-photo .photo-button img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 100%;filter:contrast(1.04) saturate(1.04);transition:transform 1.2s ease}
.party-photo .photo-button:hover img{transform:scale(1.025)}
@media(max-width:640px){.party-section{padding:75px 20px}.party-section .section-top{margin-bottom:40px}.party-section h2{font-size:47px}.party-section .section-top>p{font-size:20px}.party-photo{padding:7px}.party-photo .photo-button{aspect-ratio:4/5}}
@media(prefers-reduced-motion:reduce){.party-photo .photo-button img{transition:none}.party-photo .photo-button:hover img{transform:none}}
/* Preserve the complete crest and name line in every placement. */
img[src$="/crest.png"]{height:auto;aspect-ratio:1/1;object-fit:contain;object-position:center;border-radius:0;clip-path:none;mask-image:none;padding:0;background:transparent;mix-blend-mode:multiply;filter:none;flex-shrink:0}
.letter img[src$="/crest.png"]{width:185px;max-width:65%;margin:0 auto 5px}
.stage-crest[src$="/crest.png"]{width:165px;max-width:65vw;margin:0 auto 20px}
.intro img[src$="/crest.png"]{width:210px;max-width:70vw}
footer img[src$="/crest.png"]{width:180px;max-width:65vw}
@media(max-width:700px){.letter img[src$="/crest.png"]{width:138px}.stage-crest[src$="/crest.png"]{width:140px;margin:0 auto 12px}.intro img[src$="/crest.png"]{width:200px}footer img[src$="/crest.png"]{width:170px}}
@media(max-height:750px){.letter img[src$="/crest.png"]{width:125px}}
/* An invitation to linger, with the complete story and albums one tap away. */
#story{padding:85px max(6vw,24px);background:#f5f0e7;scroll-margin-top:25px}
.story-invitation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:65px;align-items:center;max-width:1100px;margin:auto}
.story-cover{margin:0;max-width:460px;padding:10px;border:1px solid #cbb994}
.story-cover img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 42%}
#story .story-heading{text-align:left;margin:0;max-width:none}
#story .story-heading h2{font-size:clamp(40px,4.4vw,66px)}
#story .story-lead{font-size:22px;line-height:1.65;margin:22px 0}
.story-hint{font-size:17px;font-style:italic;color:#89734e;line-height:1.5}
.chapter-disclosure{max-width:1100px;margin:30px auto 0}
.chapter-disclosure>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:22px;padding:20px 28px;width:fit-content;max-width:100%;margin:0 auto;border:1px solid #b59b68;color:#735c35;font:10px/1.7 Montserrat,sans-serif;letter-spacing:2px;text-transform:uppercase;background:#fffdf7;transition:background .2s}
.chapter-disclosure>summary::-webkit-details-marker{display:none}
.chapter-disclosure>summary:hover{background:#ede3d1}
.chapter-disclosure>summary:focus-visible,.story-return:focus-visible{outline:2px solid #806535;outline-offset:5px}
.chapter-disclosure .when-open{display:none}
.chapter-disclosure[open]>summary .when-closed{display:none}
.chapter-disclosure[open]>summary .when-open{display:inline}
.disclosure-mark{width:12px;height:12px;position:relative;flex-shrink:0}
.disclosure-mark:before,.disclosure-mark:after{content:'';position:absolute;background:currentColor;left:0;top:5px;width:12px;height:1px}
.disclosure-mark:after{transform:rotate(90deg)}
.chapter-disclosure[open]>summary .disclosure-mark:after{transform:none}
#full-story[open] #story-chapters{margin-top:55px}
#full-story>summary{margin-right:0;min-width:calc(50% - 32px)}
.story-return{display:block;margin:30px auto 0;border:0;border-bottom:1px solid #baa173;background:none;padding:15px;color:#735c35}
.album-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1100px;margin:auto}
.album-preview .photo-button{border:0;padding:0;background:transparent}
.album-preview img{width:100%;height:340px;object-fit:cover;display:block}
#photo-album[open] #grid,#engagement-album[open] .engagement-grid{margin-top:35px}
.attire-section{padding:48px 24px}.attire-section h2{font-size:42px;margin:16px 0}.attire-copy{margin:18px auto 0}
.intro{padding-top:70px;padding-bottom:65px}
@media(max-width:700px){#story{padding:55px 24px}.story-invitation{grid-template-columns:1fr;gap:28px}.story-cover{width:100%;max-width:360px;margin:auto}.story-cover img{aspect-ratio:5/4;object-position:50% 36%}#story .story-heading{text-align:center}#story .story-heading h2{font-size:42px}#story .story-lead{font-size:20px}.chapter-disclosure>summary{font-size:9px;padding:18px;letter-spacing:1.4px}#full-story>summary{margin:auto;width:100%}.album-preview{gap:9px}.album-preview img{height:190px}.attire-section h2{font-size:34px}}
/* Clear, tactile invitations to read, explore, and book. */
.chapter-disclosure>summary,.booking-link{background:#8b703e;color:#fffdf8;border:1px solid #806433;box-shadow:0 5px 15px #765b2c25,inset 0 0 0 3px #ffffff15;font-size:12px;font-weight:600;letter-spacing:1.7px;min-height:60px;padding:20px 32px;border-radius:2px}
.chapter-disclosure>summary:hover,.booking-link:hover{background:#71582f;color:white;box-shadow:0 7px 19px #765b2c30}
.chapter-disclosure>summary:focus-visible,.booking-link:focus-visible{outline:3px solid #765b2c;outline-offset:5px}
.booking-link{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-width:285px;margin-top:30px}
.booking-link:after{content:'↗';font-size:21px;font-weight:400;line-height:1}
.chapter-disclosure>summary .disclosure-mark{width:16px;height:16px}
.chapter-disclosure>summary .disclosure-mark:before,.chapter-disclosure>summary .disclosure-mark:after{width:16px;height:2px;top:7px}
.hero-address{display:block;font-size:10px;line-height:1.8;letter-spacing:1.3px;margin-top:13px;text-shadow:0 1px 5px #0008}
.hero-address strong{font-size:11px}
@media(max-width:700px){.chapter-disclosure>summary,.booking-link{font-size:11px;letter-spacing:1.2px;padding:19px 20px;min-height:60px;width:100%;min-width:0}.hero-address{font-size:8px;line-height:1.8;letter-spacing:.6px;margin-top:9px}.hero-address strong{font-size:9px}}

.stay-transport{border:1px solid #cfbd98;background:#fffaf1;padding:26px 30px;max-width:780px;margin:28px auto!important;font-size:21px!important;line-height:1.55!important}.stay-transport strong{font-weight:600;color:#70562d}@media(max-width:700px){.stay-transport{padding:22px;font-size:20px!important}}



.entertainment-section{padding:65px 24px 70px;background:#fffdf9;border-top:1px solid #e8dfce;text-align:center}.entertainment-inner{max-width:710px;margin:auto}.entertainment-section h2{font-size:clamp(36px,4vw,52px);margin:18px 0 22px}.entertainment-copy{font-size:23px;line-height:1.55;margin:0 auto 28px}.band-video-link{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:19px 27px;border:1px solid #806433;background:#8b703e;color:#fffdf8;font:600 11px Montserrat,sans-serif;letter-spacing:1.3px;text-transform:uppercase;max-width:100%;line-height:1.6;box-shadow:0 5px 15px #765b2c20}.band-video-link:hover{background:#70562d}.entertainment-hint{font:10px Montserrat,sans-serif;line-height:1.7;color:#756b5b;margin:16px 0 0}@media(max-width:700px){.entertainment-section{padding:48px 25px}.entertainment-copy{font-size:21px}}

.brazil-stay{max-width:800px;text-align:left;margin:35px auto;padding:28px 32px;background:#fffaf1;border:1px solid #cfbd98}.brazil-stay h3{font-size:30px;font-weight:400;margin:0 0 18px}.brazil-stay p{font-size:21px;line-height:1.6}.brazil-stay .brazil-travel{font-size:18px;border-top:1px solid #dfd1b6;padding-top:18px}.brazil-lodging{padding:22px!important;border:1px solid #cfbd98!important;background:#fffaf1;margin:25px 0!important;text-align:left}.brazil-lodging legend{font-size:24px;padding:0 8px}.brazil-lodging p{font-size:18px;line-height:1.5}.brazil-lodging select{width:100%;max-width:100%;padding:14px 10px;font:16px Georgia;background:#fffdf9;color:#443e35;border:1px solid #cdbd9e}.brazil-lodging .lodging-small{font-size:15px;margin-top:5px}@media(max-width:700px){.brazil-stay{padding:22px}.brazil-stay p{font-size:19px}}

/* Center the seal through layout, not an animated horizontal transform. */
#entrance .seal{left:0;right:0;margin-left:auto;margin-right:auto;translate:0 -50%;transform:none;transition:opacity .8s 1.3s}
#entrance.opening .seal{transform:none;opacity:0}

/* Clear arrival details and legible countdown captions. */
.hero-title [data-i18n="heroDate"]{font-size:15px;line-height:1.8;letter-spacing:1.4px;text-shadow:0 2px 7px #0009}
.hero-floor{display:block;font-size:20px;font-weight:600;letter-spacing:1.2px;margin-top:8px}
.hero-title .hero-address{display:block;font-size:13px;line-height:1.7;margin-top:3px;letter-spacing:.7px}
.countdown-section>.eyebrow{font-size:14px;color:#564329;font-weight:600;line-height:1.6;letter-spacing:2px}
.countdown-section .count-date{font-size:24px;color:#564329;font-weight:500}
@media(max-width:700px){.hero-title [data-i18n="heroDate"]{font-size:12px;line-height:1.75;letter-spacing:.8px}.hero-floor{font-size:18px;margin-top:6px}.hero-title .hero-address{font-size:11px;letter-spacing:.2px}.countdown-section>.eyebrow{font-size:12px;letter-spacing:1.3px}.countdown-section .count-date{font-size:21px}}

/* Consistent, readable venue details. */
.hero-title .hero-floor,.hero-title .hero-address{display:block;font-size:15px;font-weight:400;line-height:1.8;letter-spacing:.7px;margin-top:3px}
.eastie-memory{max-width:620px;margin:28px 0 0;aspect-ratio:4/3}
@media(max-width:700px){.hero-title .hero-floor,.hero-title .hero-address{font-size:12px;line-height:1.75;letter-spacing:.2px}}

/* Video → RSVP → celebration: a clear, accessible invitation journey. */
#enter-site{display:block;width:min(620px,100%);min-height:76px;margin:25px auto 0;font-size:clamp(18px,2.2vw,25px);font-weight:600;letter-spacing:1.6px;background:#806438;border-color:#806438;box-shadow:0 8px 24px #80643824}
.rsvp-film-hint{font-size:19px;line-height:1.5;margin:14px auto 0;max-width:600px}
#film-screen .video-shell video{max-height:55svh}
#rsvp-screen{display:block;padding:45px 24px;overscroll-behavior:contain}
.rsvp-inner{max-width:840px;margin:auto}
.rsvp-inner>.eyebrow{text-align:center;color:#806438}
#rsvp-title{text-align:center;font-size:clamp(38px,6vw,70px);margin:12px 0 30px;color:#806438}
#rsvp-form-host .early-section{padding:0;background:none;border:0;max-width:none}
#rsvp-form-host .early-section>div:first-child{text-align:center}
#rsvp-form-host .early-section h2{font-size:36px;margin:12px 0}
#rsvp-form-host .early-section .prose{font-size:21px}
#rsvp-form-host .gold-button{width:100%;min-height:66px;font-size:15px;line-height:1.6;background:#806438}
.rsvp-return{display:block;margin:25px auto 0;padding:16px;background:none;border:0;border-bottom:1px solid #a68b57;color:#735c35;font-size:13px}
.entry-confirmation{margin:0;padding:18px 24px;text-align:center;background:#f1e9da;color:#564329;font-size:19px;line-height:1.5}
@media(max-width:700px){#rsvp-screen{padding:30px 20px}#enter-site{min-height:70px;font-size:18px;letter-spacing:1px}.rsvp-film-hint{font-size:17px}#rsvp-form-host .attendance-options{grid-template-columns:1fr}#rsvp-form-host .attendance-options span{padding:18px}#rsvp-form-host .gold-button{font-size:13px;letter-spacing:1px}#rsvp-form-host input,#rsvp-form-host select,#rsvp-form-host textarea{font-size:16px}}

html[lang="pt-BR"] #early-response{display:flex;flex-direction:column;gap:24px}
html[lang="pt-BR"] #rsvp-form-host #early-response>div:first-child{display:none}
html[lang="pt-BR"] #early-response>.prose{margin:12px 0 0}
html[lang="pt-BR"] #early-response>.brazil-stay{width:100%;margin:0}

.birthday-memory{max-width:390px;margin:32px auto;padding:10px;border:1px solid #d8c8ac;background:#fffdf9}
.birthday-memory video{display:block;width:100%;height:auto;aspect-ratio:8/15;object-fit:contain;background:#17130f}
.birthday-memory figcaption,.eastie-photo figcaption{text-align:center;font-size:20px;font-style:italic;line-height:1.5;color:#806438;margin:15px 8px 5px}
.eastie-photo{max-width:520px;margin:30px auto 0;padding:10px;border:1px solid #d8c8ac;background:#fffdf9}
.eastie-photo-frame{aspect-ratio:738/985;overflow:hidden}
.eastie-photo-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* A clear, understated save-the-date heading. */
.intro h2[data-i18n="introTitle"]{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(32px,5.5vw,66px);font-weight:500;font-style:normal;letter-spacing:.08em;line-height:1.2;text-wrap:balance}

/* One venue, a calm and legible celebration schedule. */
.celebration-details{align-self:center;padding:36px clamp(24px,4vw,48px);border:1px solid #d6c7ad;background:#fffdf8;color:#443b30}
.celebration-venue{text-align:center;padding-bottom:26px}
.celebration-venue h3{font-size:clamp(34px,3.5vw,46px);font-weight:500;line-height:1.15;margin:0 0 10px}
.celebration-venue p{font-size:21px;line-height:1.5;margin:0}
.celebration-details .event{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:23px 0;border-top:1px solid #ded3c1;align-items:baseline}
.celebration-details .event h4,.celebration-details .event .event-time{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(25px,2.4vw,31px);font-weight:500;letter-spacing:0;line-height:1.25;margin:0}
.celebration-details .event .event-time{white-space:nowrap;font-variant-numeric:tabular-nums}
.celebration-details .event .event-checkin{grid-column:1/-1;font-size:19px;line-height:1.5;margin:0}
.celebration-details .invitation-followup{border-top:1px solid #ded3c1;padding-top:23px;margin:0;text-align:center;font-size:19px;line-height:1.6}
@media(max-width:400px){.celebration-details{padding:28px 18px}.celebration-details .event h4,.celebration-details .event .event-time{font-size:24px}.celebration-details .event{column-gap:10px}}

/* A prominent complete crest and one unified wedding-day schedule. */
.intro img[src$="/crest.png"]{display:block;width:330px;max-width:82vw;height:auto;object-fit:contain;margin:0 auto 32px;border-radius:0;padding:0;transform:none}
.schedule-section{background:#fffdf8;padding:85px max(24px,6vw);color:#443b30}
.schedule-section>.eyebrow{font-size:13px;line-height:1.8;letter-spacing:.13em;color:#745d38}
.schedule-section h2{font-size:clamp(44px,5.5vw,70px);font-weight:400;margin:20px 0 24px}
.schedule-location{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(17px,2vw,22px);font-weight:500;line-height:1.6;letter-spacing:.08em;color:#685438}
.schedule-grid{max-width:1150px;gap:0;margin:45px auto 30px;border-top:1px solid #d8c6a6;border-bottom:1px solid #d8c6a6}
.schedule-grid>div{border-top:0;padding:35px 18px;position:relative}
.schedule-grid>div+div:before{content:"";position:absolute;left:0;top:30px;bottom:30px;width:1px;background:#e4d8c3}
.schedule-grid time{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(34px,3.5vw,46px);font-weight:500;color:#92703c;line-height:1.2;font-variant-numeric:tabular-nums}
.schedule-grid h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:23px;font-weight:500;line-height:1.4;letter-spacing:0;text-transform:none;margin:14px 0 0}
.schedule-section>.note{font-family:"Cormorant Garamond",Georgia,serif;font-size:18px;line-height:1.5;color:#6d6050}
@media(max-width:700px){.intro img[src$="/crest.png"]{width:285px;max-width:82vw}.schedule-section{padding:60px 24px}.schedule-grid>div{padding:26px 12px}.schedule-grid>div:nth-child(3),.schedule-grid>div:nth-child(4){border-top:1px solid #e4d8c3}.schedule-grid>div:nth-child(3):before{display:none}.schedule-grid h3{font-size:21px}.schedule-grid time{font-size:36px}}

.intro .save-date-number{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(32px,5.5vw,66px)!important;font-weight:500;font-style:normal;letter-spacing:.08em;line-height:1.2!important;margin:0 0 25px;color:inherit}
.intro h2[data-i18n="introTitle"]{margin-bottom:12px}
