@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600&display=swap');
:root{--wine:#341923;--rose:#d9a6ac;--gold:#d5b681;--cream:#f8f0e6;--muted:#bda7ad}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--wine);color:var(--cream);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}a:focus-visible,video:focus-visible{outline:3px solid var(--gold);outline-offset:7px}header{max-width:1280px;margin:auto;padding:25px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff20}.brand{font:42px 'Cormorant Garamond',Georgia,serif;line-height:1}.brand span{font:10px Manrope,Arial;letter-spacing:2px;margin-left:10px}.nav{font-size:11px;letter-spacing:2px}.nav span{margin-left:25px;color:var(--gold)}.hero{max-width:1280px;margin:auto;min-height:770px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;padding:64px 6% 80px;gap:70px;position:relative;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:3px;font-weight:600;color:var(--gold);margin:0 0 24px}h1,h2,h3,p{margin-top:0}h1,h2,h3,.signature{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1{font-size:clamp(85px,9vw,132px);letter-spacing:-5px;line-height:.95;margin:30px 0}h1 span{display:block;font-size:25px;letter-spacing:1px;margin:0 0 16px;font-style:italic}h1 .gold{font-size:27px;color:var(--gold);margin:22px 0 0;letter-spacing:0}.intro{color:#dac9cc;font-size:14px;line-height:1.95;margin:32px 0}.button{display:inline-flex;align-items:center;gap:30px;background:var(--gold);color:var(--wine);padding:16px 25px;border-radius:3px;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#ecd2a8;transform:translateY(-2px)}.hero-date{font-size:10px;letter-spacing:1px;margin:27px 0 0;color:var(--muted)}.hero-date i{color:var(--gold);margin:0 12px}.art{position:relative;max-width:400px}.arch{border:1px solid #d5b68188;padding:11px;border-radius:200px 200px 7px 7px;overflow:hidden;background:#53313c;box-shadow:0 30px 80px #17091066}.arch img{display:block;width:100%;border-radius:185px 185px 3px 3px}.art>p{font-family:'Cormorant Garamond',Georgia,serif;text-align:center;font-size:17px;font-style:italic;color:var(--rose);margin:22px 0 0}.seal{position:absolute;top:68%;left:-35px;width:86px;height:86px;background:var(--gold);color:var(--wine);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font:32px Georgia;box-shadow:0 0 0 6px var(--wine),0 0 0 7px #d5b68180}.seal small{font:8px Manrope;letter-spacing:2px;margin-top:4px}.orbit{position:absolute;width:650px;height:650px;left:-360px;top:60px;border:1px solid #d5b68112;border-radius:50%;pointer-events:none}.wish{text-align:center;background:var(--cream);color:var(--wine);padding:85px 20px}.spark{font-size:40px;color:#aa8144;display:block;margin-bottom:20px}.wish .eyebrow,.details .eyebrow{color:#8e6940}h2{font-size:clamp(40px,4.5vw,62px);line-height:1.07;letter-spacing:-1.5px;margin-bottom:25px}h2 em{font-weight:400}.wish>p:not(.eyebrow){color:#765d65;font-size:14px}.countdown{display:flex;justify-content:center;align-items:center;gap:28px;margin:43px 0 22px}.countdown b{font:58px 'Cormorant Garamond',Georgia;display:block;line-height:1.1}.countdown span{font-size:8px;letter-spacing:2px}.countdown i{font-style:normal;color:#b9a093;font-size:25px;margin-top:-20px}.small{font-size:10px!important;letter-spacing:1px}.details{background:#eee2d5;color:var(--wine);padding:90px max(6%,calc((100vw - 1120px)/2));display:grid;grid-template-columns:1fr 1fr;gap:80px}.text-link{font-size:12px;border-bottom:1px solid #9e7e69;padding-bottom:5px;display:inline-block;margin-top:9px}.text-link span{margin-left:20px}.facts article{display:flex;gap:23px;padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid #34192324}.facts article:last-child{margin-bottom:0}.number{font-size:10px;color:#8e6940;padding-top:7px}h3{font-size:29px;margin-bottom:9px;line-height:1.1}.facts p{font-size:13px;margin-bottom:7px}.muted{color:#796269}.film{padding:90px 8%;display:flex;gap:90px;justify-content:center;align-items:center;background:radial-gradient(ellipse at 80% 40%,#683a48 0,transparent 60%)}.film-copy p:not(.eyebrow){color:var(--muted);font-size:14px}.film video{width:min(100%,380px);max-height:570px;background:#1e1016;border:1px solid #d5b68150;border-radius:180px 180px 5px 5px;object-fit:contain}.film .spark{margin-top:35px;color:var(--gold)}.rsvp{text-align:center;padding:85px 20px 95px;border-top:1px solid #ffffff16;background:#2b141e}.rsvp>p:not(.eyebrow){color:var(--muted);font-size:14px}.rsvp .button{margin:10px 0 25px}.rsvp .small{margin:0}footer{padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px}.signature{font-size:34px;font-style:italic}footer p,footer a{font-size:9px;letter-spacing:1px;margin:0}footer p span{margin:0 12px;color:var(--gold)}@media(max-width:700px){header{padding:20px 7%}.hero{grid-template-columns:1fr;text-align:center;padding:50px 7% 45px;gap:40px;min-height:auto}h1{font-size:98px}.hero .eyebrow{font-size:9px;letter-spacing:2px}.hero-copy{z-index:1}.art{width:78%;max-width:330px;margin:auto}.seal{width:68px;height:68px;left:-24px;font-size:26px}.art>p{font-size:15px}.wish{padding:65px 7%}.countdown{gap:16px}.countdown b{font-size:44px}.countdown span{font-size:7px;letter-spacing:1px}.details{grid-template-columns:1fr;gap:40px;padding:65px 8%}.film{flex-direction:column;gap:20px;padding:60px 8%;text-align:center}.film video{max-height:500px;border-radius:8px}.film .spark{display:none}.rsvp{padding:65px 7%}footer{flex-direction:column;gap:12px}h2{font-size:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Compact invitation with prominent actions */
.hero{min-height:0;padding:35px 6% 40px;gap:45px;grid-template-columns:1.25fr .75fr}h1{font-size:105px;margin:20px 0}h1 span{font-size:23px}h1 .gold{font-size:24px}.intro{margin:22px 0}.art{width:100%;max-width:290px;justify-self:end}.art video{display:block;width:100%;aspect-ratio:9/16;object-fit:contain;border:1px solid #d5b68188;border-radius:16px;background:#28131d}.art>p{font-size:13px;margin:10px 0 0}.actions{display:flex;flex-wrap:wrap;gap:12px}.actions .button{justify-content:center;min-height:54px;font-size:14px;padding:14px 22px;gap:0}.route{background:#f8f0e6;color:#341923;border:1px solid #d5b681}.route:hover{background:#ead8c2}.personal{font-size:9px;letter-spacing:1.4px;color:var(--muted);margin:14px 0 0}.hero-date{font-size:11px;margin-top:20px}.details{padding:38px max(6%,calc((100vw - 1120px)/2));gap:45px;grid-template-columns:.85fr 1.4fr}.details h2{font-size:40px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:20px}.facts article{gap:12px;padding-bottom:12px;margin:0}.facts article:nth-child(2){grid-row:span 2}.facts h3{font-size:25px}.facts .button{margin-top:8px;font-size:12px;padding:10px 18px}footer{padding:18px 6%}.quick-actions{display:none}@media(max-width:700px){body{padding-bottom:85px}header{padding:14px 7%}.hero{grid-template-columns:1fr;gap:24px;padding:28px 7%}.hero .eyebrow{margin-bottom:10px}h1{font-size:83px;margin:16px 0}h1 span{font-size:20px;margin-bottom:10px}h1 .gold{font-size:23px;margin-top:16px}.intro{font-size:13px;margin:18px 0}.hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.actions .button{font-size:12px;padding:12px 9px;min-height:51px}.art{width:68%;max-width:245px;justify-self:center}.art>p{font-size:12px}.details{grid-template-columns:1fr;padding:30px 7%;gap:22px}.details h2{font-size:35px;margin-bottom:14px}.details .eyebrow{margin-bottom:12px}.facts{gap:18px}.facts article{gap:8px}.facts h3{font-size:23px}.facts p{font-size:12px}.number{display:none}.quick-actions{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 12px max(10px,env(safe-area-inset-bottom));background:#28131df5;border-top:1px solid #d5b68166;z-index:10;box-shadow:0 -4px 20px #0003;transform:translateY(115%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .22s ease,visibility .32s}.quick-actions.is-visible{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}.quick-actions .actions{display:grid;grid-template-columns:1.12fr 1fr;gap:9px}.quick-actions .button{font-size:12px}footer{gap:7px;padding:20px 6%}.signature{font-size:29px}}

.video-wrap{position:relative;border-radius:16px;overflow:hidden;background:#28131d}.video-play{position:absolute;left:18px;right:18px;bottom:62px;display:flex;flex-direction:column;align-items:center;gap:5px;border:1px solid #d5b681aa;border-radius:12px;padding:15px 10px;background:#29151ee8;color:var(--cream);cursor:pointer;font-family:Manrope,Arial,sans-serif;backdrop-filter:blur(8px)}.video-play>span{background:var(--gold);color:var(--wine);display:grid;place-items:center;border-radius:50%;width:38px;height:38px;padding-left:3px}.video-play strong{font-size:13px;font-weight:500}.video-play small{font-size:9px;color:var(--gold);letter-spacing:1px}.video-play:hover{background:#482532}.video-play:focus-visible{outline:3px solid var(--gold);outline-offset:-4px}.video-play[hidden]{display:none}.video-download{display:block;text-align:center;margin-top:9px;font-size:11px;color:var(--gold);text-decoration:underline;text-underline-offset:4px}.video-status{font-size:12px!important;line-height:1.6!important;color:var(--cream)!important}.wish{padding:52px 7%}.wish .eyebrow{margin-bottom:22px}.wish h2{font-size:clamp(38px,4.5vw,58px)}.wish .countdown{margin:28px 0 18px}.wish>p:last-child{margin-bottom:0}@media(max-width:700px){.art{width:78%;max-width:280px}.wish{padding:38px 7%}.wish h2{font-size:39px}.wish>p:not(.eyebrow){font-size:12px;line-height:1.9}.wish .eyebrow{font-size:9px;letter-spacing:2px}.countdown{gap:16px}.countdown b{font-size:42px}.video-play{bottom:55px;padding:12px 7px}.video-play strong{font-size:12px}}

/* Readable desktop typography, keeping the invitation's elegant hierarchy. */
@media(min-width:701px){body{font-family:"Segoe UI",Arial,sans-serif;font-size:18px;line-height:1.7}.hero{grid-template-columns:minmax(0,1.3fr) minmax(230px,.7fr);gap:40px}.hero-copy{min-width:0}h1{font-size:112px;font-weight:500;letter-spacing:-3px}h1 span{font-size:28px}h1 .gold{font-size:29px}.intro{font-size:18px;line-height:1.8;color:#f0dfe3}.eyebrow{font-size:13px;letter-spacing:2.5px}.nav{font-size:14px}.brand span{font-size:12px}.actions .button{font-size:17px;min-height:58px;padding:15px 23px}.hero-date{font-size:15px;letter-spacing:.3px;color:#e2cbd1}.personal{font-size:12px;letter-spacing:1px;color:#d9c0c7}.wish h2{font-family:Georgia,"Times New Roman",serif;font-size:48px;line-height:1.25;font-weight:400;letter-spacing:-1.3px}.wish>p:not(.eyebrow){font-size:18px;color:#654d55;line-height:1.8}.countdown b{font-size:64px;font-weight:500}.countdown span{font-size:12px;font-weight:600;letter-spacing:1.6px}.wish .small{font-size:14px!important}.details{grid-template-columns:.85fr 1.5fr;gap:40px}.details h2{font-family:Georgia,"Times New Roman",serif;font-size:39px;line-height:1.25;letter-spacing:-1px}.facts h3{font-family:Georgia,"Times New Roman",serif;font-size:27px;line-height:1.25}.facts p{font-size:17px;line-height:1.65}.muted{color:#665159}.facts .button,.text-link{font-size:16px}.number{font-size:13px}.video-play{font-family:"Segoe UI",Arial,sans-serif}.video-play strong{font-size:16px;font-weight:600}.video-play small{font-size:12px}.video-status{font-size:15px!important}.signature{font-size:38px}footer p,footer a{font-size:12px;letter-spacing:.7px}}
@media(min-width:701px) and (max-width:1000px){.hero{gap:25px;padding-inline:5%}h1{font-size:98px}.actions .button{font-size:16px;padding:14px 18px}.details{grid-template-columns:1fr;gap:24px}.details>div:first-child{max-width:600px}.facts{grid-template-columns:1fr 1fr 1fr}.facts article:nth-child(2){grid-row:auto}.facts p{font-size:16px}}
