:root{--gold:#967638;--ink:#191919;--muted:#666;--line:#d8c9a8;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:-90px;z-index:5;background:white;padding:12px}.skip:focus{top:0}header{max-width:1320px;margin:auto;height:100px;padding:0 55px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee}.monogram{display:block;line-height:0}.monogram img{height:48px;width:auto}nav{display:flex;gap:38px;font-size:13px;letter-spacing:.4px}nav a:hover{color:var(--gold)}nav a:last-child span{display:none}.hero{max-width:1200px;margin:42px auto 0;padding:12px;border:1px solid var(--line)}.invitation{border:1px solid var(--line);text-align:center;padding:55px 25px 38px;position:relative}.crest{width:150px;margin:0 auto 26px}.crest img{display:block;width:100%;height:auto}.eyebrow{font-size:11px;letter-spacing:3px;line-height:1.6;font-weight:400;color:var(--gold)}h1{font:400 clamp(60px,7.3vw,100px)/1.15 'Baskerville','Times New Roman',serif;letter-spacing:-3px;margin:23px 0 25px}.names-art{max-width:560px;margin:22px auto 26px}.names-art img{display:block;width:100%;height:auto}.gold-rule{width:160px;margin:0 auto 20px;display:flex;align-items:center;gap:12px;color:var(--gold);font-size:15px}.gold-rule:before,.gold-rule:after{content:'';height:1px;background:var(--line);flex:1}.invitation-line{font:italic 19px/1.7 Georgia,serif;color:var(--muted);margin:15px 0 28px}.wedding-date{font:30px Georgia,serif;margin:0;display:flex;justify-content:center;align-items:center;gap:22px}.wedding-date span{font:12px Arial,sans-serif;letter-spacing:3px;border-right:1px solid var(--line);border-left:1px solid var(--line);padding:5px 22px}.hero-place{font-size:11px;letter-spacing:2px;margin:20px 0}.hero-link{font-size:12px;display:inline-flex;gap:20px;margin-top:14px;padding-bottom:3px;border-bottom:1px solid var(--line)}.portrait{max-width:650px;margin:80px auto 0;padding:12px;border:1px solid var(--line)}.portrait img{display:block;width:100%;height:680px;object-fit:cover;object-position:center 35%}.portrait figcaption{text-align:center;font:italic 16px Georgia,serif;margin:17px 0 7px;color:var(--muted)}.section{max-width:1160px;margin:auto;padding:110px 40px}h2{font:400 clamp(38px,4.5vw,55px)/1.2 'Baskerville','Times New Roman',serif;margin:17px 0 25px;letter-spacing:-1px}.section-intro{text-align:center;max-width:640px;margin:0 auto 55px}.section-intro>p:last-child{color:var(--muted);font-size:15px}.full-names{display:block;font:20px/1.8 Georgia,serif;color:var(--ink);margin:25px 0}.events{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:45px 0}.event{text-align:center;padding:0 35px;display:flex;flex-direction:column;align-items:center}.event+.event{border-left:1px solid var(--line)}.ornament{display:none}.event h3{font:27px/1.3 Georgia,serif;margin:18px 0}.event p:not(.eyebrow){font-size:14px;color:var(--muted);margin:8px 0}.event .eyebrow{margin:0}.button{display:inline-block;font-size:12px;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--gold);padding:10px 0 5px;margin-top:auto}.event p:last-of-type{padding-bottom:20px}.photos{padding-top:5px}.gallery-title{text-align:center;margin-bottom:44px}.gallery-title>p{font-size:14px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo{background:none;border:0;padding:0;cursor:zoom-in;overflow:hidden}.photo img{width:100%;height:430px;object-fit:cover;object-position:center 35%;display:block;transition:transform .4s}.photo:hover img{transform:scale(1.025)}.gifts{max-width:none;border-top:1px solid var(--line);text-align:center;background:#fcfcfb;padding:85px 40px 95px}.gifts>p:not(.eyebrow){color:var(--muted);font-size:15px}.registry-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1020px;margin:50px auto 0}.registry{padding:30px;border-right:1px solid var(--line)}.registry:last-child{border:0}.store{font:30px Georgia,serif;letter-spacing:1px;display:block}.smile{display:none}.amazon{text-transform:capitalize}.camicado{text-transform:capitalize}.holy{text-transform:uppercase;letter-spacing:5px;font-size:26px}.registry p{font-size:13px;color:var(--muted)}.pending,.small-note{font-size:12px;letter-spacing:1px;color:var(--muted);font-style:italic}.registry-link{font-size:13px;border-bottom:1px solid var(--gold);padding-bottom:5px}footer{text-align:center;padding:65px 25px;background:#191919;color:white}footer>p:first-child{font:italic 17px Georgia,serif;color:#d0b77e}.signature{max-width:320px;margin:24px auto 22px}.signature img{display:block;width:100%;height:auto}footer>span{font-size:10px;letter-spacing:2px;color:#ddd}dialog{border:1px solid var(--gold);background:#171717;color:white;max-width:95vw;max-height:94svh;padding:40px 15px 10px}dialog::backdrop{background:#000d}dialog img{display:block;max-width:85vw;max-height:76svh;object-fit:contain}dialog button{position:absolute;right:8px;top:0;background:none;border:0;color:white;font-size:32px;cursor:pointer;width:44px;height:40px}dialog p{text-align:center;font-size:13px;margin:8px}body:has(dialog[open]){overflow:hidden}@media(max-width:750px){header{height:80px;padding:0 20px}.monogram img{height:40px}nav{gap:16px;font-size:11px;letter-spacing:0}.hero{margin:22px 16px 0;padding:7px}.invitation{padding:35px 12px 30px}.crest{width:112px;margin-bottom:22px}.eyebrow{font-size:10px;letter-spacing:2px}h1{font-size:clamp(42px,10vw,65px);letter-spacing:-1.8px;margin:24px 0}.names-art{max-width:290px;margin:20px auto 22px}.invitation-line{font-size:16px;max-width:260px;margin:20px auto 25px}.wedding-date{font-size:25px;gap:16px}.wedding-date span{font-size:11px;padding:5px 16px}.hero-place{font-size:10px;letter-spacing:1.5px}.portrait{margin:45px 30px 0;padding:8px}.portrait img{height:auto;aspect-ratio:3/4}.section{padding:65px 25px}.section-intro{margin-bottom:30px}.full-names{font-size:18px}.events{grid-template-columns:1fr;padding:0}.event{padding:30px 10px}.event+.event{border-left:0;border-top:1px solid var(--line)}.event h3{font-size:25px}.event p:not(.eyebrow){font-size:14px}.photos{padding-top:0}.gallery{grid-template-columns:1fr 1fr;gap:12px}.photo img{height:auto;aspect-ratio:3/4}.gallery-title{margin-bottom:30px}.registry-grid{grid-template-columns:1fr;margin-top:25px}.registry{border-right:0;border-bottom:1px solid var(--line);padding:28px}.gifts{padding:55px 25px}.signature{max-width:250px}footer>span{font-size:9px;letter-spacing:1.2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}
.countdown{max-width:430px;margin:34px auto 0;padding-top:25px;border-top:1px solid var(--line)}.countdown .eyebrow{font-size:10px;letter-spacing:2px;margin:0 0 19px}.countdown-values{display:grid;grid-template-columns:repeat(4,1fr)}.countdown-values>div+div{border-left:1px solid var(--line)}.countdown-values span{display:block;font:32px/1.2 Georgia,serif;font-variant-numeric:tabular-nums}.countdown-values small{display:block;margin-top:9px;font:10px/1.5 Arial,sans-serif;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}@media(max-width:750px){.countdown{margin-top:28px;padding-top:23px}.countdown-values span{font-size:27px}.countdown-values small{font-size:9px;letter-spacing:.7px}}
