*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;--paper:#f7f2e9;--ink:#554735;--accent:#a0875f;--line:#d5c7b3;--soft:#ece2d4;background:var(--paper);color:var(--ink);font:15px/1.7 Arial,sans-serif}body.burgundy{--paper:#f6eddf;--ink:#542533;--accent:#8c4a59;--line:#c8a5a5;--soft:#e8d6cd}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit}button,.button{cursor:pointer;text-decoration:none;padding:14px 24px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:11px;letter-spacing:.14em;text-transform:uppercase;display:inline-block;line-height:1.5;border-radius:0}button:hover,.button:hover{filter:brightness(1.13)}button.outline,.button.outline{background:transparent;color:var(--ink)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1}h1{font-size:clamp(72px,10vw,150px);letter-spacing:-.07em}h2{font-size:clamp(38px,5vw,68px);letter-spacing:-.05em}h3{font-size:28px}small,.small{font-size:12px}.eyebrow{font-size:10px;letter-spacing:.24em;text-transform:uppercase}.demo-bar{padding:9px 20px;text-align:center;background:var(--ink);color:var(--paper);font-size:10px;letter-spacing:.06em}.demo-bar a{margin-left:12px}nav{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 5%;border-bottom:1px solid var(--line)}.monogram{font:italic 25px Georgia,serif;text-decoration:none}nav .links{display:flex;gap:25px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}nav .links a{text-decoration:none}#sound{padding:8px 12px;background:transparent;color:var(--ink);font-size:9px}.hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:720px}.hero-copy{padding:80px 8%;display:flex;flex-direction:column;justify-content:center;align-items:start}.hero-copy h1{margin:35px 0}.hero-copy .amp{font-style:italic;font-size:.6em}.hero-copy p{max-width:410px}.hero-copy .button{margin-top:30px}.hero-image{margin:35px 40px 35px 0;position:relative}.hero-image img{width:100%;height:100%;position:absolute;object-fit:cover;border-radius:220px 220px 0 0}.hero-image:after{content:'';position:absolute;inset:14px;border:1px solid #fff9;border-radius:210px 210px 0 0;pointer-events:none}.burgundy .hero{position:relative;display:block;background:var(--ink);color:var(--paper);min-height:700px;overflow:hidden;text-align:center}.burgundy .hero-copy{align-items:center;position:relative;z-index:1;padding:75px 20px}.burgundy .hero h1{font-size:clamp(80px,13vw,180px);line-height:.85;margin:40px 0}.burgundy .hero .button{border-color:var(--paper);color:var(--paper);background:transparent}.burgundy .hero:before,.burgundy .hero:after{content:'';position:absolute;width:460px;height:460px;border:1px solid #dec7b94d;border-radius:50%;top:100px;left:-240px;box-shadow:0 0 0 40px #dec7b910,0 0 0 80px #dec7b908}.burgundy .hero:after{left:auto;right:-240px}.date-strip{padding:28px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;font-size:11px;letter-spacing:.22em;word-spacing:.15em}.section{max-width:1180px;margin:auto;padding:100px 40px}.center{text-align:center}.section .eyebrow{margin-bottom:22px}.lede{font:italic 25px/1.6 Georgia,serif;max-width:670px;margin:30px auto}.countdown{display:flex;justify-content:center;gap:60px;margin:40px 0}.countdown b{font:55px Georgia,serif;display:block}.countdown span{font-size:9px;letter-spacing:.2em;text-transform:uppercase}.soft{background:var(--soft)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.split .body-copy p{margin-bottom:20px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:55px}.timeline article{padding-top:20px;border-top:1px solid var(--line)}.timeline time{font-size:11px;letter-spacing:.12em}.timeline h3{margin:22px 0 15px}.timeline p{font-size:13px}.dress{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.dress-figures{display:flex;align-items:end;justify-content:center;min-height:340px;gap:35px;background:var(--soft);padding:35px}.dress-figures svg{height:270px;width:125px}.swatches{display:flex;gap:12px;margin:25px 0}.swatches span{width:35px;height:35px;border-radius:50%;border:1px solid #0002}.seat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.table-card{border:1px solid var(--line);padding:30px 20px;text-align:center}.table-card strong{width:70px;height:70px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;font:22px Georgia,serif;margin:0 auto 20px}.table-card h3{font-size:22px}.table-card p{font-size:12px;margin-top:14px}.form-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.form-card{border:1px solid var(--line);background:var(--paper);padding:35px}label{display:block;font-size:12px;letter-spacing:.02em;margin-bottom:20px}input,select,textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);padding:12px 0;border-radius:0}textarea{min-height:90px;resize:vertical}select option{background:var(--paper);color:var(--ink)}input[type=checkbox]{display:inline;width:auto;margin-right:8px}.consent{display:flex;align-items:start;gap:8px;font-size:11px}.consent input{margin-top:5px;flex-shrink:0}.status{font-size:12px;margin-top:18px}.hint{font-size:11px;opacity:.8;margin:15px 0}.form-card button{width:100%}video{width:100%;margin-top:15px}.notes{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:35px}.notes article{background:var(--soft);padding:30px}.notes p{font:italic 23px/1.5 Georgia,serif}.notes span{display:block;margin-top:25px;font-size:10px}.closing{background:var(--ink);color:var(--paper);text-align:center;padding:90px 25px}.closing h2{font-size:clamp(55px,8vw,110px)}.closing p{margin:25px auto;max-width:500px}.closing a{font-size:12px}footer{padding:25px;text-align:center;font-size:10px}footer button{padding:8px 15px;margin:15px;font-size:9px}.intro{position:fixed;inset:0;z-index:20;background:var(--paper);display:flex;align-items:center;justify-content:center;padding:24px;transition:opacity .8s .2s,visibility .8s}.intro-inner{text-align:center;max-width:520px;width:100%}.intro .eyebrow{margin-bottom:30px}.envelope{height:290px;background:#eadcc6;position:relative;display:flex;align-items:center;justify-content:center;margin:0 auto 35px;box-shadow:0 25px 60px #4b393218;border:1px solid #d5c7b3;max-width:450px}.envelope:before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,transparent 49.7%,#c7b18c 50%,transparent 50.3%),linear-gradient(215deg,transparent 49.7%,#c7b18c 50%,transparent 50.3%);transition:transform .8s}.seal{border:1px solid #ad9571;border-radius:50%;width:80px;height:80px;display:grid;place-items:center;background:#d4bc91;font:italic 30px Georgia,serif;z-index:1;box-shadow:0 4px 12px #0001}.burgundy .intro{background:#542533;color:#f6eddf}.burgundy .envelope{background:#652d3d;border-color:#9d6a72}.burgundy .envelope:before{background:linear-gradient(145deg,transparent 49.7%,#a66d79 50%,transparent 50.3%),linear-gradient(215deg,transparent 49.7%,#a66d79 50%,transparent 50.3%)}.burgundy .intro button{background:#f6eddf;color:#542533}.intro p:last-child{font-size:11px;margin-top:20px}.opened{opacity:0;pointer-events:none}.opened .envelope:before{transform:translateY(-80px) rotateX(70deg)}.opened .seal{transform:scale(.5);opacity:0;transition:.7s}.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.visible{opacity:1;transform:none}section[id]{scroll-margin-top:30px}
@media(max-width:750px){nav{padding:15px 20px}nav .links{gap:12px;font-size:9px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:55px 25px}.hero h1{font-size:83px}.hero-image{height:400px;margin:0 25px 35px}.section{padding:65px 24px}.split,.dress,.form-wrap{grid-template-columns:1fr;gap:35px}.countdown{gap:25px}.countdown b{font-size:39px}.timeline{grid-template-columns:1fr 1fr;gap:30px}.seat-grid{grid-template-columns:1fr}.notes{grid-template-columns:1fr}.form-card{padding:25px}.burgundy .hero{min-height:620px}.burgundy .hero h1{font-size:100px}.date-strip{font-size:9px;line-height:2}.envelope{height:235px}.intro .eyebrow{font-size:9px}.demo-bar{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}}
#couple-title:focus{outline:none}
