:root{--sage:#687c64;--ink:#354333;--muted:#657060;--blush:#f6ece9;--paper:#fffefa}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font:300 16px/1.7 Jost,sans-serif}a{color:inherit;text-decoration:none}.example-banner{padding:10px 18px;text-align:center;background:#edf1e9;color:#354333;font:400 12px/1.6 Jost,sans-serif}.example-banner a{text-decoration:underline;text-underline-offset:3px}.wedding-page{position:relative}header{position:absolute;top:0;left:0;z-index:2;width:100%;padding:24px 6%;display:flex;justify-content:space-between;align-items:center;color:white}.monogram{font:28px 'Cormorant Garamond',serif;letter-spacing:6px}.monogram i{font:27px Parisienne,cursive}nav{display:flex;gap:35px;align-items:center;font-size:13px;letter-spacing:1px}nav a{display:inline-flex;align-items:center;min-height:44px}.nav-rsvp{border:1px solid #ffffff80;padding:8px 25px}.hero{height:100svh;min-height:690px;position:relative;color:white;display:grid;place-items:center;text-align:center;background:#52674e}.hero-photo,.shade{position:absolute;width:100%;height:100%;inset:0;object-fit:cover}.hero-photo{object-position:center 58%}.shade{background:linear-gradient(180deg,#14231645,#17271950 70%,#15251055)}.hero-copy{position:relative;padding:80px 20px}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:400;margin:0 0 20px}h1{font:400 clamp(75px,10vw,145px)/1.15 Parisienne,cursive;margin:15px 0}h1 span{font-size:.64em;display:inline-block;margin:0 .14em}.invitation{font:300 28px 'Cormorant Garamond',serif;margin:0}.hero-rule{height:1px;background:#ffffff80;width:50px;margin:27px auto}.date{font-size:16px;letter-spacing:4px;margin:0}.location{font:300 24px 'Cormorant Garamond',serif;margin:8px 0 28px}.hero-button{display:inline-flex;gap:40px;border-bottom:1px solid #ffffffb0;padding:8px 0;font-size:13px}.scroll{position:absolute;bottom:22px;font-size:9px;letter-spacing:2px}.scroll span{font-size:22px;display:block;margin-top:5px}h2{font:300 clamp(38px,4.5vw,58px)/1.1 'Cormorant Garamond',serif;margin:0 0 24px}h3{font:400 25px/1.2 'Cormorant Garamond',serif}p{margin:0 0 18px}.welcome{text-align:center;padding:100px 20px 65px;position:relative}.flower{width:100px;height:150px}.welcome>.flower{position:absolute;left:9%;top:110px;transform:rotate(-20deg)}.welcome>p:not(.eyebrow){color:var(--muted)}.script{font-family:Parisienne,cursive}.signoff{font-size:32px;margin:26px 0 56px}.date-strip{max-width:1000px;display:flex;justify-content:space-around;gap:20px;align-items:center;margin:auto;border-top:1px solid #dce1d7;border-bottom:1px solid #dce1d7;padding:27px 0}.date-strip span{font-size:10px;letter-spacing:2px}.date-strip strong{font:300 30px 'Cormorant Garamond',serif;letter-spacing:4px}.date-strip i{color:#bdc8b5;font-style:normal}.day{text-align:center;padding:70px 6% 90px;background:linear-gradient(var(--paper),#f2f4ee,var(--paper))}.intro{color:var(--muted)}.timeline{max-width:1100px;margin:55px auto 35px;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.timeline article{padding:15px 22px;border-top:1px solid #d7dece}.number{font:italic 22px 'Cormorant Garamond',serif;color:#85927b}.time{font-size:11px;letter-spacing:2px;margin:14px 0}.timeline h3{margin:0 0 12px}.timeline article>p:last-child,.small{font-size:13px;color:var(--muted)}.venue{display:grid;grid-template-columns:1fr 1fr;max-width:1400px;margin:0 auto;padding:35px 6% 100px;gap:8%;align-items:center}.venue-photo{position:relative;height:620px}.venue-photo img{width:100%;height:100%;object-fit:cover;border-radius:46% 46% 0 0}.venue-photo span{position:absolute;bottom:25px;left:0;width:100%;text-align:center;font:27px Parisienne,cursive;color:white;text-shadow:0 1px 7px #000}.venue-copy{position:relative}.venue-copy>.flower{position:absolute;right:25px;top:-65px;width:70px;transform:rotate(25deg);opacity:.7}.serif-sub{font:italic 27px 'Cormorant Garamond',serif;margin-top:-15px;color:var(--sage)}.button{display:inline-flex;align-items:center;justify-content:center;gap:40px;padding:15px 28px;border:1px solid var(--sage);background:var(--sage);color:white;font:400 12px Jost,sans-serif;letter-spacing:1px;cursor:pointer;transition:background .3s}.button:hover{background:#4d6249}.travel{border-top:1px solid #d7dece;padding-top:5px;margin-top:32px;font-size:14px}.travel h3{font-size:24px}.rsvp{padding:90px max(6%,calc((100% - 1120px)/2));background:linear-gradient(var(--paper),var(--blush) 15%,#f8f0ed);display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.rsvp-heading .flower{margin-left:35px;transform:rotate(18deg)}form{text-align:left}label{display:block;font-size:13px;font-weight:400;margin-bottom:22px}input,select{width:100%;border:0;border-bottom:1px solid #adb5a4;padding:13px 2px;background:transparent;border-radius:0;color:var(--ink);font:300 15px Jost,sans-serif;min-height:48px}input::placeholder{color:#6e756a}small{display:block;font-size:11px;font-weight:300;margin-top:7px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.privacy{font-size:11px;line-height:1.6;color:#626b5e}.honeypot,[hidden]{display:none}#form-status{margin-top:15px;font-size:14px}footer{text-align:center;padding:55px 20px 35px}footer .script{font-size:43px;margin-bottom:6px}footer p:not(.script){font-size:9px;letter-spacing:2px}footer span{font:italic 18px 'Cormorant Garamond',serif}.reveal{animation:fade-in 1.1s ease both}@keyframes fade-in{from{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:none}}:focus-visible{outline:2px solid #bd887e;outline-offset:5px}@media(max-width:700px){header{padding:20px 6%}nav{gap:16px;font-size:11px}.nav-rsvp{padding:6px 14px}.monogram{font-size:22px}.hero{min-height:650px}.hero-copy .eyebrow{font-size:9px;letter-spacing:2px}.hero-copy{padding-top:60px}.welcome{padding-top:75px}.welcome>.flower{position:static;width:55px;height:90px;margin-bottom:20px}.welcome br{display:none}.date-strip{flex-direction:column;padding:25px;gap:10px}.timeline{grid-template-columns:1fr 1fr;gap:22px 12px}.timeline article{padding:15px 5px}.timeline h3{font-size:23px}.venue{grid-template-columns:1fr;gap:55px;padding-bottom:65px}.venue-photo{height:440px;margin:0 6%}.venue-copy{padding:0 4%}.venue-copy>.flower{right:25px;top:-30px}.rsvp{grid-template-columns:1fr;gap:15px;padding:65px 8%}.rsvp-heading{text-align:center}.rsvp-heading .flower{width:55px;height:85px;margin:0 0 25px}.form-grid{grid-template-columns:1fr;gap:0}.rsvp form .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}}