@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Italiana&family=Manrope:wght@300;400;500&display=swap');
:root{--wine:#4b0714;--wine2:#680d20;--wine3:#2c050c;--gold:#c69a43;--gold2:#e1c376;--ivory:#f7efdf;--paper:#efe2ca;--ink:#381019;--muted:#7c6a61;--serif:'Cormorant Garamond',Georgia,serif;--display:'Italiana',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-weight:300}body.no-scroll,body.invitation-closed{overflow:hidden}a{color:inherit}button,input,select{font:inherit}
.opening{position:fixed;z-index:100;inset:0;display:grid;place-items:center;overflow:hidden;background:#25050b;color:#fff1d8;transition:opacity .7s ease,visibility .7s ease}.opening-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 47%,#80182c 0%,#3d0813 38%,#170307 78%)}.opening-glow:after{content:"";position:absolute;inset:0;background:radial-gradient(#ebcb7740 .7px,transparent .7px);background-size:9px 9px;opacity:.28}.opening-door{position:absolute;top:0;bottom:0;width:34%;background:linear-gradient(90deg,#230409,#580c19);border:4px double #a87b32;box-shadow:inset 0 0 0 14px #210409,inset 0 0 0 15px #9c7130;transition:transform 1.1s cubic-bezier(.65,0,.25,1)}.opening-door:before,.opening-door:after{content:"";position:absolute;left:12%;right:12%;border:1px solid #bc8b38;box-shadow:inset 0 0 0 8px #30060c,inset 0 0 0 9px #8b6428}.opening-door:before{top:8%;height:36%;border-radius:50% 50% 0 0}.opening-door:after{bottom:8%;height:36%}.opening-door-left{left:0;border-radius:0 220px 0 0}.opening-door-right{right:0;border-radius:220px 0 0 0;transform:scaleX(-1)}.opening-branch{position:absolute;width:24%;bottom:-8%;z-index:2;opacity:.68;filter:drop-shadow(0 5px 12px #0008)}.opening-branch-left{left:-4%;transform:rotate(-18deg)}.opening-branch-right{right:-4%;transform:scaleX(-1) rotate(-18deg)}.opening-card{position:relative;z-index:4;width:min(460px,78vw);min-height:560px;padding:55px 45px 45px;text-align:center;background:linear-gradient(145deg,#fbf2e0,#ead7b8);color:#55101c;border:1px solid #d8b55e;box-shadow:0 30px 70px #000b;transition:transform .75s ease,opacity .55s ease}.opening-card:before,.opening-card:after{content:"";position:absolute;pointer-events:none}.opening-card:before{inset:10px;border:1px solid #b98c355f}.opening-card:after{inset:18px;border:1px solid #b98c3530}.opening-crown{font-size:30px;color:#b5842f}.opening-monogram{width:87px;height:87px;margin:9px auto 25px;border:1px solid #ba8b36;border-radius:50%;display:grid;place-items:center;outline:1px solid #ba8b36;outline-offset:5px;font:400 31px var(--display);color:#8f1e31}.opening-card>p{font-size:8px;letter-spacing:.22em}.opening-card h1{font:italic 58px/.72 var(--serif);margin:27px 0;color:#81182a}.opening-card h1 span{display:block}.opening-card h1 i{font-size:.48em;color:#bc8c37;line-height:1.3}.opening-rule{display:flex;align-items:center;justify-content:center;gap:12px;color:#b88835;font-size:8px}.opening-rule span{width:50px;height:1px;background:#c79b49}.opening-card>strong{display:block;margin-top:17px;font:500 16px var(--serif);letter-spacing:.12em;text-transform:uppercase}.opening-card>small{display:block;margin-top:6px;font-size:8px;letter-spacing:.16em;text-transform:uppercase}.opening-card button{position:relative;z-index:2;margin-top:27px;min-width:205px;height:47px;border:1px solid #9e6f29;background:linear-gradient(90deg,#6d1021,#951c32,#6d1021);color:#f5dfad;text-transform:uppercase;letter-spacing:.17em;font-size:8px;cursor:pointer}.opening-card button span{margin-left:22px;font-size:15px}.opening-card button:hover{background:#a4782d;color:#2b050c}.opening-note{position:absolute;z-index:3;bottom:24px;font-size:7px;letter-spacing:.28em;color:#d6b665}.opening.is-opening .opening-door-left{transform:translateX(-105%)}.opening.is-opening .opening-door-right{transform:scaleX(-1) translateX(-105%)}.opening.is-opening .opening-card{transform:translateY(-25px) scale(.92);opacity:0}.opening.is-opening .opening-branch{opacity:0;transition:opacity .4s}.opening.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.nav{height:76px;position:absolute;z-index:20;inset:0 0 auto;display:flex;align-items:center;justify-content:center;color:#f7ecd9;border-bottom:1px solid #e0bd6a42;padding:0 5%}.nav-mark{position:absolute;left:5%;width:41px;height:41px;border:1px solid #d1a74c;border-radius:50%;display:grid;place-items:center;color:#edcd78;text-decoration:none;font:italic 16px var(--serif)}.nav nav{display:flex;gap:35px}.nav nav a{font-size:8px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;transition:color .2s}.nav nav a:hover{color:var(--gold2)}.nav-whatsapp{position:absolute;right:5%;border:1px solid #caa04b;padding:11px 15px;text-decoration:none;text-transform:uppercase;font-size:7px;letter-spacing:.15em}.nav-whatsapp span{color:#3bd176;font-size:12px;margin-right:7px}.menu-button{display:none;background:transparent;border:0;color:#f6ead5;font-size:22px}.hero{height:min(930px,100svh);min-height:720px;background:#20050a;position:relative;overflow:hidden;color:#fff7e7}.hero-image,.hero-blur,.hero-shade{position:absolute;inset:0}.hero-blur{display:none;background:center/cover;filter:blur(18px) brightness(.44);transform:scale(1.1)}.hero-image{background-image:var(--hero-desktop,url('assets/images/new-hero.webp'));background-size:cover;background-position:center 44%;transform:scale(1.015)}.hero-shade{background:linear-gradient(90deg,#190308eF 0%,#310811d5 25%,#3007114d 61%,#1d03083c),linear-gradient(0deg,#1c0309c8 0%,transparent 48%)}.hero:after{content:"";position:absolute;inset:14px;border:1px solid #e1bb653d;pointer-events:none}.hero-branch{position:absolute;z-index:2;width:17%;opacity:.65;filter:drop-shadow(0 5px 12px #0007)}.hero-branch-left{left:-3%;bottom:-2%;transform:rotate(-14deg)}.hero-branch-right{right:-2%;top:6%;transform:scaleX(-1) rotate(-15deg)}.hero-crest{position:absolute;z-index:3;left:7%;top:17%;width:140px;text-align:center;color:#dfbc63}.crest-crown{display:block;font-size:26px}.hero-crest strong{display:block;font:400 84px/.67 var(--display);letter-spacing:-.12em;text-shadow:0 2px 16px #0008}.hero-crest i{display:block;font:400 7px var(--sans);letter-spacing:.25em;margin-top:15px}.hero-crest:before,.hero-crest:after{content:"";position:absolute;left:50%;width:88px;height:88px;border:1px solid #d2aa4d6b;border-radius:50%;transform:translateX(-50%) rotate(45deg)}.hero-crest:before{top:22px}.hero-crest:after{top:22px;border-style:dotted;transform:translateX(-50%) rotate(22deg)}.hero-copy{position:absolute;z-index:4;left:6.8%;bottom:12%;width:min(690px,55%)}.hero-kicker{font:italic 16px var(--serif);letter-spacing:.04em;margin:0 0 12px;color:#efdba8}.hero h1{font:400 clamp(78px,9.5vw,145px)/.71 var(--serif);letter-spacing:-.055em;margin:0;text-shadow:0 5px 22px #000b}.hero h1 i{font-size:.38em;color:var(--gold2);font-weight:400;padding:0 .12em}.hero-meta{display:flex;align-items:center;gap:15px;margin:28px 0 0;font-size:9px;letter-spacing:.2em;text-transform:uppercase}.hero-meta b{color:var(--gold);font-size:8px}.gold-button{display:inline-flex;align-items:center;justify-content:space-between;min-width:215px;gap:25px;margin-top:28px;padding:13px 18px;border:1px solid #d0a650;border-radius:2px;color:#fff0d1;background:linear-gradient(90deg,#4a0714c4,#79152ac4);box-shadow:0 0 20px #d2a3441f;text-transform:uppercase;letter-spacing:.16em;font-size:8px;text-decoration:none}.gold-button:hover{background:#b98b38;color:#27040b}.hero-wa{position:absolute;z-index:4;right:5%;bottom:10%;padding:11px 16px;background:#49101bd9;border:1px solid #d1a74e;border-radius:20px;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:7px}.hero-wa span{color:#36d37a;font-size:12px;margin-right:7px}.scroll-cue{position:absolute;z-index:3;right:5%;top:40%;writing-mode:vertical-rl;font-size:7px;letter-spacing:.24em}.scroll-cue i{color:var(--gold2);font-size:16px;margin-top:12px}.invitation-wrap{position:relative;z-index:8;height:165px;background:linear-gradient(90deg,var(--wine3),var(--wine2),var(--wine3));border-top:1px solid #c6973e}.invitation-card{position:absolute;left:50%;top:-39px;transform:translateX(-50%) rotate(-.45deg);width:min(820px,84%);min-height:230px;text-align:center;background:linear-gradient(135deg,#fbf4e8,#eadbc1);padding:31px 100px;color:#54111d;box-shadow:0 17px 40px #17020668;border:1px solid #d7b96b}.invitation-card:before{content:"";position:absolute;inset:9px;border:1px solid #caa24d60;pointer-events:none}.invitation-card .section-eyebrow{color:#7c2030}.invitation-card>p:not(.section-eyebrow){font:400 15px/1.6 var(--serif);max-width:520px;margin:13px auto}.invitation-card h2{font:italic 36px var(--serif);color:#92263a;margin:8px}.invitation-card h2 i{color:#b68b3c}.letter-flourish{color:#bb9142;font-size:22px}.wax{position:absolute;right:-25px;top:60px;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 28%,#bd3045,#650a1c 72%);border:2px solid #ddb95e;color:#f4d98b;font:italic 18px var(--serif);box-shadow:0 5px 14px #2a0309aa}.wax:after{content:"";position:absolute;inset:7px;border:1px solid #f2d47d70;border-radius:50%}.section-eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:8px;color:var(--gold2);font-weight:500}.couple-section{padding:100px 7% 80px;background:var(--ivory);background-image:radial-gradient(#9c743a1a .6px,transparent .6px);background-size:8px 8px}.section-title{text-align:center}.section-title>span{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#7b1c2b}.section-title h2{font:italic 31px var(--serif);color:#8e7036;margin:11px}.couple-grid{max-width:1000px;margin:52px auto 0;display:grid;grid-template-columns:1fr 330px 1fr;gap:6%;align-items:center}.couple-grid article{text-align:center}.couple-grid article>span{font-size:8px;letter-spacing:.19em;text-transform:uppercase;color:#9a7240}.couple-grid article>p:last-child{font:400 14px/1.7 var(--serif);color:#65554d}.script{font:italic 37px var(--serif)!important;color:#9d2539!important;margin:0 0 5px!important}.couple-grid figure{margin:0;position:relative;border-radius:46% 46% 8px 8px;padding:8px;border:1px solid #c79e49;background:#fff8ea}.couple-grid figure img{width:100%;height:400px;display:block;object-fit:cover;object-position:center 24%;border-radius:46% 46% 4px 4px}.portrait-frame{position:absolute;inset:-11px;border:1px solid #d3ab55;border-radius:47% 47% 10px 10px;pointer-events:none}.couple-grid figure:before,.couple-grid figure:after{content:"❦";position:absolute;z-index:2;color:#b78e3d;font-size:30px;top:50%;transform:translateY(-50%)}.couple-grid figure:before{left:-28px}.couple-grid figure:after{right:-28px;transform:translateY(-50%) scaleX(-1)}.highlights{display:grid;grid-template-columns:repeat(4,1fr);background:linear-gradient(135deg,#420711,#720f22,#40060f);color:#f7ebd7;border-top:1px solid #b58a3c;border-bottom:1px solid #b58a3c;padding:29px 7%}.highlights article{text-align:center;padding:5px 20px;border-right:1px solid #d8ae5542}.highlights article:last-child{border:0}.highlights span{font:28px var(--serif);color:#e0b958}.highlights h3{text-transform:uppercase;letter-spacing:.16em;font:500 10px var(--serif);color:#e8c66f;margin:8px 0}.highlights p{font:400 13px var(--serif);margin:0;color:#e7d7c5}.story{min-height:670px;display:grid;grid-template-columns:1.15fr .85fr;background:var(--wine);color:#f7ead5;position:relative;overflow:hidden}.story-photo{background:center 24%/cover;min-height:670px;position:relative}.story-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,var(--wine) 100%),linear-gradient(0deg,#36050fb0,transparent 48%)}.story-copy{padding:90px 12% 70px 8%;align-self:center;position:relative}.story-copy:before{content:"";position:absolute;inset:35px;border:1px solid #d0a64e35;pointer-events:none}.story-copy h2{font:400 clamp(52px,6vw,78px)/.82 var(--display);text-transform:uppercase;letter-spacing:.02em;color:#e3c270;margin:20px 0}.story-copy>p:not(.section-eyebrow){font:400 15px/1.75 var(--serif);color:#e7d9c8}.timeline{margin-top:28px;border-left:1px solid #d1aa5366}.timeline article{display:grid;grid-template-columns:52px 1fr;position:relative;padding:0 0 18px 24px}.timeline-dot{position:absolute;left:-5px;top:6px;width:9px;height:9px;border:2px solid #d3ad56;background:var(--wine);border-radius:50%}.timeline article>b{font:italic 14px var(--serif);color:#e0bd69}.timeline h3{font:500 17px var(--serif);margin:0;color:#f1dfc5}.timeline p{font:400 12px var(--serif);margin:2px 0;color:#cdbfb1}.date-details{min-height:310px;padding:66px 10%;display:grid;grid-template-columns:1fr 240px 1fr;align-items:center;background:var(--ivory);position:relative}.event-panel{text-align:center}.event-panel .event-icon{font-size:24px;color:#a8792e}.event-panel>p{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#7d1c2b;margin:9px}.event-panel h3{font:500 22px var(--serif);color:#9b2538;margin:6px}.event-panel strong{display:block;font:500 17px var(--serif)}.event-panel small{font:400 13px var(--serif);color:#685b55}.date-orbit{display:grid;place-items:center}.date-medallion{width:205px;height:205px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,#741125,#470711 70%);border:4px double #d0a650;outline:1px solid #c69a43;outline-offset:8px;color:#efdbac;box-shadow:0 10px 28px #4b071533}.date-medallion small{text-transform:uppercase;font-size:8px;letter-spacing:.19em}.date-medallion strong{font:400 65px/.8 var(--display);color:#f0ce73}.date-medallion span{text-transform:uppercase;font:500 13px var(--serif);letter-spacing:.13em}.date-medallion b{font:400 12px var(--serif)}.countdown-section{text-align:center;background:#eadcc4;padding:35px 20px;border-top:1px solid #d2b876;border-bottom:1px solid #d2b876}.countdown-section .section-eyebrow{color:#751729}.countdown{display:flex;justify-content:center;align-items:center;gap:clamp(24px,5vw,70px);margin-top:18px}.countdown div{display:flex;flex-direction:column;min-width:62px}.countdown strong{font:400 42px var(--display);color:#8e2033}.countdown span{text-transform:uppercase;font-size:7px;letter-spacing:.18em;margin-top:5px}.countdown i{width:1px;height:38px;background:#b99450}.celebration{min-height:520px;position:relative;background:#26050b;color:#f7ebd7;overflow:hidden;display:flex;align-items:center}.celebration-photo{position:absolute;inset:0;background:center/cover}.celebration:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#2c050cde 0%,#2b050c8c 48%,#2104095e)}.celebration-intro,.schedule-card{position:relative;z-index:2}.celebration-intro{width:43%;padding-left:8%}.celebration-intro h2{font:400 60px/.89 var(--display);text-transform:uppercase;color:#f0d189;margin:17px 0}.celebration-intro>p:last-child{font:400 15px/1.7 var(--serif);max-width:360px}.schedule-card{margin-left:auto;margin-right:8%;width:390px;padding:31px 35px;background:#430a15e8;border:1px solid #c99d485c;box-shadow:0 17px 35px #0006}.schedule-card>.section-eyebrow{text-align:center;display:block;margin-bottom:17px}.schedule-card article{display:grid;grid-template-columns:30px 80px 1fr;align-items:center;padding:8px 0;border-bottom:1px solid #d2ad5652;font:400 13px var(--serif)}.schedule-card article:last-child{border:0}.schedule-card article span{color:#e1ba60}.schedule-card article b{font-weight:500;color:#edcf85}.schedule-card article p{margin:0}.gallery-section{padding:80px 6% 75px;background:var(--ivory);position:relative;overflow:hidden}.gallery-section:before,.gallery-section:after{content:"❦";position:absolute;color:#b88f4254;font-size:120px;top:22px}.gallery-section:before{left:-20px}.gallery-section:after{right:-20px;transform:scaleX(-1)}.gallery{max-width:1160px;margin:45px auto 0;display:grid;grid-template-columns:1fr .72fr 1.25fr .72fr 1fr;gap:13px;align-items:end}.gallery-item{height:330px;padding:6px;border:1px solid #c59c4c;background:#fff7e8;cursor:pointer;overflow:hidden;border-radius:120px 120px 8px 8px;transition:transform .3s}.gallery-item:nth-child(2),.gallery-item:nth-child(4){height:280px}.gallery-item:nth-child(3){height:390px}.gallery-item:hover{transform:translateY(-8px)}.gallery-item img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;border-radius:115px 115px 4px 4px;filter:saturate(.85)}.gallery-all{display:flex;align-items:center;gap:25px;margin:30px auto 0;border:1px solid #a6782f;background:transparent;color:#7e1c2c;padding:11px 20px;text-transform:uppercase;letter-spacing:.17em;font-size:8px;cursor:pointer}.location{min-height:420px;background:linear-gradient(135deg,#390812,#610d1e);color:#f4e6d1;display:grid;grid-template-columns:1.1fr .8fr 1fr;position:relative;overflow:hidden}.venue-photo{background:center/cover;min-height:420px}.venue-copy{padding:70px 9%;align-self:center}.venue-copy h2{font:400 40px var(--display);margin:14px 0;color:#efce7b}.venue-copy>p:not(.section-eyebrow){font:400 14px/1.7 var(--serif)}.gold-button.small{min-width:190px;padding:11px 14px;margin-top:14px}.map-art{margin:45px 8% 45px 0;border:1px solid #d0a64d;background-color:#3c0b14;background-image:linear-gradient(35deg,transparent 44%,#c9983e33 45%,#c9983e33 46%,transparent 47%),linear-gradient(120deg,transparent 44%,#c9983e28 45%,#c9983e28 46%,transparent 47%);background-size:70px 70px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#efd38d;text-align:center}.map-pin{font-size:30px;color:#d6aa50;text-shadow:0 0 12px #d6aa5088}.map-art b{font:500 18px var(--serif)}.map-art small{font-size:8px;letter-spacing:.16em;margin-top:5px}.rsvp{min-height:580px;background:radial-gradient(circle at 50% 35%,#701327,#30060d 72%);color:#f7ecd9;position:relative;overflow:hidden;display:grid;place-items:center;padding:75px 20px}.rsvp:before,.rsvp:after{content:"";position:absolute;bottom:-50px;width:260px;height:360px;background:url('assets/ornaments/royal-botanical.svg') center/contain no-repeat;opacity:.5}.rsvp:before{left:-20px;transform:rotate(-18deg)}.rsvp:after{right:-20px;transform:scaleX(-1) rotate(-18deg)}.door{position:absolute;top:34px;bottom:34px;width:23%;border:3px double #a87930;background:linear-gradient(90deg,#31060d,#5c0e1b);box-shadow:inset 0 0 0 10px #25050b,inset 0 0 0 11px #ae8033}.door:after{content:"";position:absolute;inset:35px 28px;border:1px solid #bd9040;box-shadow:inset 0 0 0 8px #3b0710,inset 0 0 0 9px #936c2e}.door-left{left:2%;border-radius:160px 0 0}.door-right{right:2%;border-radius:0 160px 0 0}.rsvp-inner{position:relative;z-index:2;text-align:center;width:min(700px,80%)}.rsvp-inner h2{font:400 40px/1.1 var(--display);color:#f1d086;margin:18px 0}.rsvp-inner>p:not(.section-eyebrow){font:italic 16px var(--serif)}.rsvp form{max-width:600px;margin:30px auto 0}.fields{display:grid;grid-template-columns:1.4fr .8fr;gap:12px}.fields label{display:flex;flex-direction:column;text-align:left}.fields label>span,.rsvp legend{font-size:7px;letter-spacing:.16em;text-transform:uppercase;color:#e2c16e;margin-bottom:7px}.fields input,.fields select{height:47px;background:#3c0913;border:1px solid #a67b36;color:#f8ead4;padding:0 13px;outline:none}.fields input::placeholder{color:#c7b5a5}.fields select option{color:#321019}.rsvp fieldset{border:0;padding:0;margin:19px 0;text-align:center}.rsvp legend{width:100%;padding:0}.rsvp fieldset label{font:400 13px var(--serif);margin:0 14px}.rsvp input[type=radio]{accent-color:#d5a94d}.form-error{min-height:16px;color:#ffb7a8;font-size:11px;margin:8px}.whatsapp-button{width:100%;height:52px;border:1px solid #e0bd67;border-radius:25px;background:linear-gradient(90deg,#b38432,#e0c272,#b38432);color:#33060d;text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:500;cursor:pointer}.whatsapp-button>span{font-size:15px;margin-right:10px}.whatsapp-button b{float:right;margin-right:17px}.phone-link{display:inline-block;color:#efd185;margin-top:15px;font:500 18px var(--serif);letter-spacing:.12em;text-decoration:none}.floating-wa{position:fixed;z-index:16;right:16px;bottom:15px;display:flex;align-items:center;gap:8px;padding:9px 13px;background:#f4e4c2;color:#3c0811;border:1px solid #b98734;border-radius:22px;text-decoration:none;box-shadow:0 7px 24px #0005}.floating-wa span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#268c55;color:white}.floating-wa b{text-transform:uppercase;font-size:7px;letter-spacing:.12em}footer{text-align:center;padding:55px 20px;background:#23040a;color:#ead9bd;border-top:1px solid #a87b32}.footer-monogram{font:400 40px var(--display);color:#e0bc64}footer p{font:italic 22px var(--serif);margin:9px}footer small{font-size:8px;letter-spacing:.17em;text-transform:uppercase}.lightbox{position:fixed;z-index:50;inset:0;background:#170307f2;display:grid;place-items:center;padding:45px}.lightbox[hidden]{display:none}.lightbox img{max-width:min(1100px,90vw);max-height:84vh;border:1px solid #d2a950;padding:8px;background:#f5ead7;object-fit:contain}.lightbox button{position:absolute;top:20px;right:25px;border:0;background:transparent;color:white;font:40px var(--serif);cursor:pointer}

@media(max-width:900px){.nav nav{gap:17px}.hero-copy{width:62%}.couple-grid{grid-template-columns:1fr 280px 1fr;gap:3%}.story{grid-template-columns:1fr 1fr}.date-details{padding-left:5%;padding-right:5%}.celebration-intro{padding-left:5%}.schedule-card{margin-right:5%}.location{grid-template-columns:1fr 1fr}.venue-photo{display:none}.rsvp-inner{width:70%}}

@media(max-width:650px){.nav{height:66px;justify-content:space-between;padding:0 6%}.nav-mark{position:static;width:36px;height:36px}.nav-whatsapp{right:17%;font-size:0;padding:8px}.nav-whatsapp span{font-size:14px;margin:0}.menu-button{display:block}.nav nav{display:none;position:absolute;top:66px;left:0;right:0;background:#390811ef;padding:24px;flex-direction:column;align-items:center}.nav.menu-open nav{display:flex}.hero{height:94svh;min-height:700px;max-height:900px}.hero-blur{display:block}.hero-image{background-image:var(--hero-mobile,var(--hero-desktop));background-size:contain;background-repeat:no-repeat;background-position:center 37%;transform:none}.hero-shade{background:linear-gradient(0deg,#1d0409f7 0%,#27060dbb 42%,#26060d33 74%,#19030740),linear-gradient(90deg,#26050b66,transparent 50%,#26050b66)}.hero-branch{width:32%}.hero-crest{left:5%;top:14%;width:80px}.hero-crest strong{font-size:49px}.hero-crest:before,.hero-crest:after{width:55px;height:55px;top:17px}.hero-crest i{font-size:5px}.hero-copy{left:7%;right:7%;bottom:8%;width:auto;text-align:center}.hero-kicker{font-size:14px}.hero h1{font-size:clamp(62px,17vw,94px);line-height:.7}.hero-meta{justify-content:center;font-size:7px;gap:8px}.gold-button{margin-top:20px}.hero-wa{right:5%;bottom:auto;top:18%;font-size:0;padding:8px}.hero-wa span{font-size:14px;margin:0}.scroll-cue{display:none}.invitation-wrap{height:215px}.invitation-card{top:-22px;width:90%;min-height:248px;padding:29px 36px}.invitation-card>p:not(.section-eyebrow){font-size:13px}.invitation-card h2{font-size:31px}.wax{width:55px;height:55px;right:-10px;top:83px;font-size:14px}.couple-section{padding:75px 7% 60px}.couple-grid{grid-template-columns:1fr 1fr;gap:25px 10px;margin-top:38px}.couple-grid figure{grid-column:1/-1;grid-row:1;width:min(270px,76%);margin:auto}.couple-grid figure img{height:330px}.couple-grid article>p:last-child{font-size:12px}.script{font-size:27px!important}.highlights{grid-template-columns:1fr 1fr;padding:20px 6%}.highlights article{padding:15px;border-bottom:1px solid #d8ae5542}.highlights article:nth-child(2){border-right:0}.story{grid-template-columns:1fr;min-height:auto}.story-photo{min-height:390px;background-position:center 24%}.story-photo:after{background:linear-gradient(0deg,var(--wine),transparent 55%)}.story-copy{padding:40px 9% 65px}.story-copy:before{inset:12px}.story-copy h2{font-size:51px}.date-details{grid-template-columns:1fr 1fr;padding:70px 7% 50px;gap:25px 8px}.date-orbit{grid-column:1/-1;grid-row:1}.date-medallion{width:170px;height:170px}.date-medallion strong{font-size:53px}.event-panel{grid-row:2}.event-panel h3{font-size:19px}.countdown{gap:clamp(10px,4vw,26px)}.countdown div{min-width:38px}.countdown strong{font-size:30px}.countdown i{height:25px}.celebration{min-height:700px;align-items:flex-start;display:block;padding:65px 7%}.celebration:after{background:linear-gradient(0deg,#2c050cef 0%,#2b050cb5 65%,#2104095e)}.celebration-intro{width:100%;padding:0}.celebration-intro h2{font-size:46px}.schedule-card{width:100%;margin:48px 0 0;padding:25px}.gallery-section{padding:65px 6%}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:280px 190px 190px;gap:8px}.gallery-item{height:auto!important;border-radius:80px 80px 5px 5px}.gallery-item img{border-radius:76px 76px 3px 3px}.gallery-item-1{grid-column:1;grid-row:1/3}.gallery-item-2{grid-column:2;grid-row:1}.gallery-item-3{grid-column:2;grid-row:2}.gallery-item-4{grid-column:1;grid-row:3}.gallery-item-5{grid-column:2;grid-row:3}.location{grid-template-columns:1fr;padding:55px 7%}.venue-copy{padding:0;text-align:center}.map-art{height:260px;margin:35px 0 0}.rsvp{padding:70px 6%}.door{width:13%}.door:after{inset:28px 8px}.rsvp-inner{width:88%}.rsvp-inner h2{font-size:33px}.fields{grid-template-columns:1fr}.rsvp fieldset label{display:block;margin:10px}.rsvp:before,.rsvp:after{width:130px;opacity:.35}.floating-wa b{display:none}.floating-wa{right:10px;bottom:10px;padding:6px}.floating-wa span{width:29px;height:29px}}

@media(max-width:380px){.hero h1{font-size:59px}.hero-copy{bottom:7%}.invitation-card{padding-left:27px;padding-right:27px}.couple-grid{gap:18px 4px}.script{font-size:24px!important}.story-copy h2{font-size:45px}.event-panel strong{font-size:15px}.celebration-intro h2{font-size:40px}.schedule-card article{grid-template-columns:25px 65px 1fr}.rsvp-inner{width:94%}}

@media(max-width:650px){.opening-door{width:20%}.opening-card{width:82vw;min-height:530px;padding:38px 30px 35px}.opening-monogram{width:72px;height:72px;font-size:26px;margin-bottom:20px}.opening-card h1{font-size:49px;margin:23px 0}.opening-card button{margin-top:23px}.opening-branch{width:42%;opacity:.5}.opening-note{bottom:13px;font-size:6px}}

@media(max-height:670px){.opening-card{min-height:0;padding-top:25px;padding-bottom:25px}.opening-monogram{width:58px;height:58px;margin:4px auto 14px}.opening-card h1{font-size:42px;margin:17px}.opening-card button{margin-top:17px;height:42px}.opening-note{display:none}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Live Google Maps venue panel */
.map-art{position:relative;overflow:hidden;display:block;min-height:320px;background:#3c0b14}
.map-art iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.72) sepia(.12) contrast(.96)}
.map-label{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;display:flex;align-items:center;gap:12px;padding:12px 15px;background:#430914e8;border:1px solid #d0a64d;color:#efd38d;text-align:left;box-shadow:0 8px 20px #0005}
.map-label .map-pin{font-size:24px;color:#e2b653;text-shadow:0 0 12px #d6aa5088}
.map-label b{display:block;font:500 17px var(--serif)}
.map-label small{display:block;font-size:7px;letter-spacing:.1em;margin-top:3px}
@media(max-width:650px){.map-art{min-height:285px}.map-label{left:10px;right:10px;bottom:10px;padding:10px 12px}.map-label b{font-size:15px}}

/* Larger, readable gallery */
.gallery{max-width:1180px;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:350px 270px;gap:14px;align-items:stretch}
.gallery-item{position:relative;height:auto!important;min-height:0;border-radius:85px 85px 8px 8px;padding:7px;isolation:isolate}
.gallery-item img{border-radius:79px 79px 4px 4px}
.gallery-item-1{grid-column:1/7;grid-row:1}.gallery-item-2{grid-column:1/4;grid-row:2}.gallery-item-3{grid-column:7/13;grid-row:1}.gallery-item-4{grid-column:4/8;grid-row:2}.gallery-item-5{grid-column:8/13;grid-row:2}
.gallery-caption{position:absolute;z-index:2;left:7px;right:7px;bottom:7px;padding:35px 16px 14px;border-radius:0 0 4px 4px;background:linear-gradient(transparent,#25050bd9);color:#fff2dc;font:italic 14px var(--serif);text-align:left;letter-spacing:.02em;opacity:0;transition:opacity .25s}
.gallery-item:hover .gallery-caption,.gallery-item:focus-visible .gallery-caption{opacity:1}
@media(max-width:650px){
  .gallery-section{padding-left:0;padding-right:0}
  .gallery-section .section-title{padding:0 7%}
  .gallery{display:flex;max-width:none;margin:38px 0 0;gap:14px;overflow-x:auto;padding:0 9vw 22px;scroll-snap-type:x mandatory;scroll-padding-left:9vw;overscroll-behavior-inline:contain;scrollbar-width:none}
  .gallery::-webkit-scrollbar{display:none}
  .gallery-item,.gallery-item-1,.gallery-item-2,.gallery-item-3,.gallery-item-4,.gallery-item-5{flex:0 0 82vw;width:82vw;height:clamp(390px,112vw,480px)!important;grid-column:auto;grid-row:auto;border-radius:125px 125px 9px 9px;scroll-snap-align:center}
  .gallery-item img{border-radius:119px 119px 5px 5px;object-position:center}
  .gallery-caption{opacity:1;border-radius:0 0 5px 5px;padding:48px 18px 15px;font-size:15px}
  .gallery-section:after{content:"SWIPE TO EXPLORE  →";position:static;display:block;transform:none;text-align:center;font:500 7px var(--sans);letter-spacing:.2em;color:#8a672d;margin:3px 0 0}
  .gallery-all{margin-top:18px}
}
