@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Great+Vibes&family=Lora:ital,wght@0,400;0,500;1,400&family=DM+Sans:wght@400;500;600&display=swap');
:root{--ivory:#fff7e7;--paper:#fffaf0;--ink:#60121b;--wine:#770e1b;--pink:#f1bec3;--gold:#bd903f;--teal:#256f70;--muted:#775b48;--serif:'Cormorant Garamond',Georgia,serif;--script:'Great Vibes','Cormorant Garamond',cursive;--sans:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:radial-gradient(ellipse at 30% 0,#ffedc3a0,transparent 50%),var(--ivory);color:var(--ink);font:15px/1.75 'Lora',Georgia,serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:5px}[hidden]{display:none!important}body:before,body:after{content:'';position:fixed;top:0;bottom:0;width:clamp(32px,6vw,100px);z-index:0;pointer-events:none;background-image:url('assets/invitation.png');background-repeat:repeat-y;background-size:800px 1200px;opacity:.8}body:before{left:0;background-position:left top;mask-image:linear-gradient(90deg,#000 25%,#0009 65%,transparent)}body:after{right:0;background-position:right top;mask-image:linear-gradient(-90deg,#000 25%,#0009 65%,transparent)}body>header,body>main,body>footer{position:relative;z-index:1}header{display:flex;align-items:center;justify-content:space-between;padding:25px 7%;border-bottom:1px solid #bd903f55;background:#fff8e8e8;gap:20px}.monogram{font:30px var(--serif);letter-spacing:5px;color:var(--wine)}.monogram span{display:block;font:8px var(--sans);letter-spacing:2px;margin-top:6px;color:#805c3b}nav{display:flex;align-items:center;gap:30px;font:11px var(--sans)}.nav-rsvp{border-bottom:1px solid var(--gold);padding:10px 0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.07;margin:0}h1{font-size:clamp(58px,7vw,104px);letter-spacing:-2px}h2{font-size:clamp(42px,4.7vw,66px);letter-spacing:-1px}h3{font-size:32px}em{font-weight:400;color:var(--wine)}.eyebrow{font:500 9px/1.6 var(--sans);letter-spacing:2.5px;margin:0 0 20px;color:#8f692f}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;min-height:48px;padding:14px 25px;background:var(--wine);border:1px solid var(--wine);color:#fff8e9;font:12px/1.6 var(--sans);border-radius:3px;box-shadow:0 5px 18px #770e1b12;transition:background .2s,transform .2s}.button:hover{background:#921c2b;transform:translateY(-2px)}.quiet-link,.text-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:6px 0;border:0;border-bottom:1px solid #bd903f80;background:none;color:var(--wine);font:11px/1.7 var(--sans);cursor:pointer}.small{font:11px/1.8 var(--sans);color:var(--muted)}.actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:25px}.ornament{display:flex;align-items:center;justify-content:center;gap:16px;color:var(--gold);font:30px var(--serif);margin:24px auto;max-width:270px}.ornament:before,.ornament:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--gold))}.ornament:after{transform:rotate(180deg)}footer{border-top:1px solid #bd903f66;margin:0 7%;padding:30px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font:11px/1.8 var(--sans)}footer p{font-style:italic;color:var(--muted)}section{scroll-margin-top:25px}.skip-link{position:fixed;top:-100px;left:15px;z-index:10;background:var(--paper);padding:15px}.skip-link:focus{top:10px}
@media(max-width:800px){header{padding:20px 7%}nav>a:not(.nav-rsvp){display:none}}@media(max-width:600px){body{font-size:14px}body:before,body:after{width:37px;background-size:490px 735px;opacity:.6}header{padding:18px 7%;background:#fff8e8ed}.monogram{font-size:26px}.monogram span{font-size:6px;letter-spacing:1.5px}nav{font-size:10px}footer{flex-wrap:wrap;margin-inline:8%;padding:25px 0}footer p{display:none}.button{padding:14px 22px}.eyebrow{font-size:8px;letter-spacing:1.8px}h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
