:root{--paper:#faf8f2;--ink:#283c35;--muted:#69746b;--gold:#886837;--line:#dedfd3;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b28c52;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(44px,5.2vw,76px);letter-spacing:-2px}h2{font-size:clamp(34px,3.8vw,54px);letter-spacing:-1.5px}h3{font-size:25px}em{color:var(--gold);font-weight:400}small{font-size:12px}section[id]{scroll-margin-top:30px}.section-wrap{max-width:1240px;margin:auto;padding:88px 48px}.site-header{max-width:1440px;margin:auto;padding:26px 48px;display:flex;justify-content:space-between;align-items:center;gap:24px}.wordmark{font:italic 35px var(--serif);letter-spacing:-2px;white-space:nowrap}.wordmark span{font-style:normal;font-size:27px;letter-spacing:-2px}.wordmark i{font:25px var(--serif);color:var(--gold);padding-left:5px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:500}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--ink);color:#fff;padding:17px 25px;border-radius:4px;font-size:13px;font-weight:500;min-height:48px;transition:background .2s,transform .2s}.button:hover{background:#3c5346;transform:translateY(-2px)}.button.small{padding:11px 20px;gap:22px;min-height:44px}.button span{font-size:20px;font-weight:400}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;margin-bottom:24px;color:var(--gold);display:flex;align-items:center;gap:10px}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:var(--gold)}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding-top:48px;padding-bottom:70px;gap:32px;min-height:730px}.intro{max-width:425px;margin:30px 0;color:var(--muted);font-size:14px;line-height:1.9}.actions{display:flex;align-items:center;gap:28px}.text-link{font-size:12px;border-bottom:1px solid #adb2a4;padding:8px 0}.text-link span{margin-left:15px}.hero-note{margin-top:30px;font-size:10px;color:var(--muted)}.hero-scene{position:relative;display:flex;justify-content:center;align-items:center;min-height:590px;background:radial-gradient(ellipse at center,#ece7d8,transparent 67%)}.scene-orbit{position:absolute;border:1px solid #d6d6c4;width:90%;height:85%;border-radius:50%;transform:rotate(-25deg)}.orbit-two{width:75%;height:100%;transform:rotate(30deg);border-style:dashed;opacity:.6}.scene-star{position:absolute;font-size:45px;color:var(--gold)}.star-one{left:9%;top:6%}.star-two{right:9%;bottom:7%;font-size:25px}.phone-frame{width:252px;height:520px;border:7px solid #edece6;outline:1px solid #bdbdb2;border-radius:40px;box-shadow:14px 22px 55px #283c3520;transform:rotate(7deg);position:relative;overflow:hidden;background:#112435}.phone-top{position:absolute;top:7px;left:84px;width:70px;height:17px;background:#111b23;border-radius:12px;z-index:2}.phone-invitation{height:100%;padding:45px 12px 18px;text-align:center}.rose{--theme-bg:#102335;--theme-ink:#e7d7b6;--theme-accent:#c9ac73;background:var(--theme-bg);color:var(--theme-ink)}.mini-eyebrow{font-size:8px;letter-spacing:2.5px;color:var(--theme-accent)}.phone-name{font:italic 44px var(--serif);margin:12px 0 0}.mini-subtitle{font:italic 15px var(--serif);opacity:.8}.rose-art{width:190px;height:260px;display:block;margin:auto}.phone-invitation .rose-art{width:150px;height:208px;margin-top:-7px}.mini-date{font-size:9px;letter-spacing:3px}.mini-divider{width:65px;height:1px;background:#c9ac7360;margin:17px auto}.mini-message{font:italic 13px/1.6 var(--serif)}.mini-button{display:inline-block;border:1px solid #c9ac7355;padding:8px 13px;font-size:7px;letter-spacing:1px;margin-top:17px}.floating-note{position:absolute;background:#fffdf8;border:1px solid #e7e4d8;box-shadow:0 8px 25px #303a2c09;padding:13px 17px;display:flex;align-items:center;gap:11px;font:italic 16px var(--serif);border-radius:6px}.floating-note>span{font:25px var(--serif);color:var(--gold)}.floating-note small{display:block;font:9px system-ui;color:var(--muted);margin-top:5px}.note-left{left:-4%;bottom:19%;transform:rotate(-6deg)}.note-right{right:-5%;top:22%;transform:rotate(5deg)}.promise-strip{display:flex;justify-content:center;align-items:center;gap:50px;border-block:1px solid var(--line);padding:24px;font-size:9px;letter-spacing:2px}.promise-strip i{color:var(--gold);font-style:normal}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-heading>p{font-size:13px;line-height:1.9;color:var(--muted)}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.demo-art{display:block;position:relative;border-radius:150px 150px 5px 5px;min-height:465px;overflow:hidden;transition:transform .25s}.demo-art:hover{transform:translateY(-5px)}.demo-label{position:absolute;left:25px;top:25px;font-size:7px;letter-spacing:2px;border:1px solid currentColor;padding:5px 10px;opacity:.65;border-radius:20px}.invitation-cover{margin:40px 35px 20px;text-align:center;border:1px solid color-mix(in srgb,var(--theme-accent),transparent 70%);border-radius:130px 130px 0 0;padding:35px 15px 20px}.cover-top{font-size:8px;letter-spacing:3px}.invitation-cover h3{font-size:48px;font-style:italic;margin:12px 0 8px}.invitation-cover>p{font:italic 13px var(--serif)}.invitation-cover .rose-art{height:235px;margin:-5px auto}.cover-date{font-size:9px;letter-spacing:3px}.garden{--theme-bg:#e9eee0;--theme-ink:#465843;--theme-accent:#64714b;background:var(--theme-bg);color:var(--theme-ink)}.garden-art{height:230px;max-width:230px;position:relative;margin:auto}.garden-art span{position:absolute;font-family:var(--serif);color:#c29990;font-size:100px;line-height:1;left:67px;top:32px;text-shadow:1px 3px #f2e7db;z-index:2}.garden-art span:nth-child(2){left:10px;top:90px;font-size:85px;color:#e3c9ad;transform:rotate(-20deg)}.garden-art span:nth-child(3){left:130px;top:90px;font-size:85px;color:#c8a391;transform:rotate(20deg)}.garden-art i{position:absolute;bottom:30px;left:107px;height:100px;width:4px;background:#879778;transform:rotate(8deg)}.garden-art i:before,.garden-art i:after{content:'';position:absolute;width:62px;height:20px;background:#93a180;border-radius:0 100% 0 100%;left:-58px;top:27px;transform:rotate(12deg)}.garden-art i:after{left:0;top:50px;transform:rotate(-32deg);background:#a5b095}.demo-description{display:flex;justify-content:space-between;gap:24px;padding:25px 0 0;align-items:center}.demo-description h3{font-size:25px}.demo-description p{font-size:12px;color:var(--muted);margin-top:10px;max-width:340px;line-height:1.8}.circle-link{display:flex;width:44px;height:44px;border:1px solid #c9cdbc;border-radius:50%;align-items:center;justify-content:center;flex-shrink:0;font-size:22px}.section-footnote{color:var(--muted);font-size:11px;text-align:center;margin-top:35px}.how-section{background:#eeeee4;border-block:1px solid var(--line)}.how-section h2{margin-bottom:55px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.steps article>span{font:italic 42px var(--serif);color:#a4ac94;display:block;padding-bottom:22px;border-bottom:1px solid #cfd3c1;margin-bottom:23px}.steps h3{font-size:25px;margin-bottom:16px}.steps p{color:var(--muted);font-size:13px;line-height:1.9}.details-section{display:grid;grid-template-columns:1fr 1fr;gap:80px}.feature-list article{display:flex;gap:25px;padding:24px 0;border-bottom:1px solid var(--line)}.feature-list article:first-child{padding-top:0}.feature-list article>span{font-size:10px;color:var(--gold);margin-top:3px}.feature-list h3{font-size:23px;margin-bottom:12px}.feature-list p{font-size:13px;color:var(--muted)}.faq-section{padding-top:0;max-width:900px}.faq-section h2{font-size:36px;margin-bottom:35px}.faq-section details{border-bottom:1px solid var(--line);padding:22px 0}.faq-section summary{cursor:pointer;font-size:14px;padding-right:15px}.faq-section details p{color:var(--muted);font-size:13px;padding:20px 20px 0 0}.closing{text-align:center;background:#eeeade;border-radius:170px 170px 0 0;max-width:1144px;padding:60px 30px 75px;margin:0 auto 60px}.closing>span{font:48px var(--serif);color:var(--gold)}.closing .eyebrow{justify-content:center;margin:12px 0 22px}.closing>p:not(.eyebrow){font-size:13px;color:var(--muted);margin:24px 0}.closing .button{margin-top:6px}.site-footer{display:flex;max-width:1240px;padding:30px 48px 45px;align-items:center;margin:auto;gap:30px;flex-wrap:wrap;border-top:1px solid var(--line)}.site-footer p{font:italic 15px var(--serif);color:var(--muted)}.site-footer div{display:flex;gap:25px;margin-left:auto;font-size:12px}.site-footer small{width:100%;text-align:center;color:var(--muted);font-size:10px}.skip-link{position:absolute;left:16px;top:-100px;background:#fff;padding:12px;z-index:10}.skip-link:focus{top:12px}.demo-banner{padding:15px 30px;background:#eeeee4;display:flex;justify-content:center;gap:30px;align-items:center;font-size:11px}.demo-banner a{text-decoration:underline;text-underline-offset:4px}.invitation-demo{text-align:center}.invitation-hero{padding:70px 24px 50px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--theme-accent),transparent 91%),transparent 65%)}.invitation-arch{max-width:610px;margin:auto;border:1px solid color-mix(in srgb,var(--theme-accent),transparent 65%);border-radius:300px 300px 0 0;padding:75px 24px 45px}.invitation-hero h1{font-size:clamp(62px,10vw,110px);font-style:italic;letter-spacing:-3px;margin-top:25px}.invitation-tagline{font:italic 19px var(--serif);margin:20px 0 0}.invitation-hero .rose-art{height:300px;width:220px;margin:12px auto}.invitation-hero .garden-art{margin:30px auto}.invitation-date{font-size:12px;letter-spacing:4px}.invitation-greeting{font:italic 19px/1.9 var(--serif);margin:30px 0}.demo-scroll{font-size:10px;letter-spacing:1px;border-bottom:1px solid var(--theme-accent);padding:10px 0;display:inline-flex;gap:20px}.invitation-quote{padding:65px 24px}.invitation-quote>span{font-size:35px;color:var(--theme-accent)}.invitation-quote p{font:italic clamp(28px,5vw,42px)/1.3 var(--serif);margin:20px 0}.invitation-quote small{opacity:.65}.demo-program{max-width:950px;margin:auto;padding:70px 25px}.demo-program h2,.demo-rsvp h2{font-size:48px;margin:25px 0 45px}.program-events{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.program-events article>span{display:block;font-size:30px;color:var(--theme-accent);margin-bottom:15px}.program-events p{font:25px var(--serif);margin-bottom:15px}.program-events strong{display:block;font-size:12px;letter-spacing:2px;font-weight:400;margin-bottom:12px}.program-events small{display:block;opacity:.65;line-height:1.9}.dress-code{font:italic 17px var(--serif);border-block:1px solid color-mix(in srgb,var(--theme-accent),transparent 70%);padding:25px;margin-top:50px}.demo-rsvp{padding:60px 24px;max-width:650px;margin:auto}.demo-rsvp>p{font-size:13px}.demo-rsvp .mini-eyebrow{font-size:8px}.demo-rsvp-controls{margin-top:25px}.demo-rsvp fieldset{border:0;padding:0;display:flex;gap:20px;justify-content:center;margin:20px 0}.demo-rsvp legend{font-size:11px;padding-bottom:18px;opacity:.7}.demo-rsvp label{font-size:12px;cursor:pointer}.demo-seats-label{display:block;margin:25px auto;max-width:200px}.demo-rsvp select{display:block;margin:12px auto;width:100%;padding:10px;background:transparent;color:inherit;border:1px solid var(--theme-accent);border-radius:4px}.demo-rsvp option{color:#263c35;background:#faf8f2}.demo-rsvp button{border:1px solid var(--theme-accent);background:var(--theme-accent);color:var(--theme-bg);padding:14px 25px;border-radius:3px;cursor:pointer;font-size:12px}.demo-rsvp [hidden]{display:none}.demo-rsvp #demo-feedback{font-size:11px;opacity:.75;margin:20px auto;max-width:390px;min-height:45px}.demo-ending{font:italic 24px var(--serif);padding:20px 24px 70px}.demo-ending span{padding:0 15px;color:var(--theme-accent)}.demo-cta{text-align:center}.demo-cta .eyebrow{justify-content:center}.demo-cta>p:not(.eyebrow){font-size:13px;color:var(--muted);margin:25px 0}.demo-cta .button{margin-top:12px}@media(min-width:1500px){.hero{min-height:790px}}@media(max-width:1000px){.site-header nav{gap:20px}.site-header,.section-wrap{padding-left:30px;padding-right:30px}.hero{gap:10px}h1{font-size:53px}.note-left{left:-5%;bottom:8%}.note-right{right:-3%;top:10%}.promise-strip{gap:25px;font-size:8px}.steps{gap:30px}.details-section{gap:40px}}@media(max-width:720px){.site-header{padding:20px;gap:14px;flex-wrap:wrap}.site-header nav{gap:18px;font-size:11px}.site-header .desktop-link{display:none}.site-header .button.small{padding:9px 13px;gap:9px;min-height:42px;font-size:11px}.wordmark{font-size:30px}.wordmark span{font-size:23px}.site-header .wordmark i{display:none}.section-wrap{padding:60px 24px}.hero{grid-template-columns:1fr;padding-top:30px;gap:35px}.hero-copy{text-align:center}.hero .eyebrow{justify-content:center;font-size:8px;letter-spacing:1.2px}h1{font-size:clamp(44px,9vw,63px)}.intro{margin:25px auto;font-size:13px;max-width:370px}.actions{justify-content:center;gap:20px}.hero-note{font-size:9px}.hero-scene{min-height:540px;max-width:430px;width:100%;margin:auto}.phone-frame{width:232px;height:490px}.phone-top{left:74px}.phone-invitation{padding-top:40px}.phone-name{font-size:39px}.phone-invitation .rose-art{height:195px}.floating-note{padding:10px 13px;font-size:13px}.floating-note small{font-size:8px}.note-left{left:-4px;bottom:17%}.note-right{right:0;top:14%}.promise-strip{padding:19px 24px;gap:15px;flex-wrap:wrap;font-size:7px;letter-spacing:1px}.promise-strip>span:last-child,.promise-strip>i:last-of-type{display:none}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.demo-grid{grid-template-columns:1fr;gap:40px}.demo-art{min-height:435px;max-width:470px;margin:auto}.demo-description{padding-top:20px}.demo-description h3{font-size:25px}.section-footnote{font-size:10px}.steps{grid-template-columns:1fr;gap:30px}.steps article{position:relative;padding-left:64px}.steps article>span{position:absolute;left:0;top:0;border:0;font-size:34px}.steps h3{font-size:25px;margin-bottom:12px}.how-section h2{margin-bottom:40px}.details-section{grid-template-columns:1fr;gap:35px}.faq-section{padding-top:0}.faq-section h2{font-size:32px}.closing{margin:0 16px 35px;padding:55px 25px;border-radius:100px 100px 0 0}.closing .eyebrow{font-size:8px;letter-spacing:1px}.site-footer{padding:30px 24px;gap:20px}.site-footer p{font-size:12px}.site-footer div{width:100%;margin:0}.demo-banner{display:block;text-align:center;padding:13px 20px;font-size:10px}.demo-banner a{display:inline-block;margin-top:6px}.invitation-hero{padding:40px 16px}.invitation-arch{padding:65px 15px 35px}.invitation-hero h1{font-size:64px}.invitation-greeting{font-size:17px}.invitation-date{font-size:10px}.program-events{grid-template-columns:1fr;gap:40px}.demo-program{padding:40px 24px}.demo-rsvp{padding:40px 24px}.demo-rsvp fieldset{gap:18px}.demo-rsvp h2{font-size:40px}.demo-rsvp .mini-eyebrow{letter-spacing:1px}.demo-cta>p br{display:none}}@media(max-width:380px){.site-header nav{gap:12px}.site-header{gap:8px}.site-header .wordmark{font-size:26px}.site-header .wordmark span{font-size:20px}.site-header .button.small span{display:none}.actions{gap:13px}.actions .button{padding:15px 16px;gap:15px}.demo-description p{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
