:root{--cream:#f8f5ee;--paper:#fffdfa;--ink:#30332e;--muted:#706f67;--line:#d9d5ca;--accent:#8b6749;--dark:#43463d;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.page-shell{max-width:1600px;margin:auto;overflow:hidden}.topbar{height:86px;padding:0 clamp(24px,5.5vw,90px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:2}.brand,.footer-monogram{font:italic 35px/.9 Georgia,serif;letter-spacing:-.12em}.brand-mark{font:15px Arial,sans-serif;vertical-align:top;margin-left:7px;color:var(--accent)}.topbar-note,.eyebrow,.section-index,.nameplate-kicker,.birth-details span,.location>span:first-child,.event-schedule span{font-size:12px;font-weight:700;letter-spacing:.18em}.topbar-note{color:var(--muted)}.topbar-link{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:7px}.topbar-link span,.scroll-cue span,.wishes-head a span{margin-left:12px}.hero{min-height:710px;padding:95px 25px 80px;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;isolation:isolate}.hero-rule{position:absolute;top:26px;left:clamp(24px,5.5vw,90px);right:clamp(24px,5.5vw,90px);display:flex;align-items:center;gap:20px;color:var(--muted);font:italic 15px Georgia,serif}.hero-rule:before,.hero-rule:after{content:"";height:1px;background:var(--line);flex:1}.hero-arch{position:absolute;z-index:-1;width:min(81vw,840px);height:560px;border:1px solid #e7e0d4;border-radius:420px 420px 0 0;top:109px;left:50%;transform:translateX(-50%);opacity:.68;pointer-events:none}.hero .eyebrow{margin:65px 0 20px;color:var(--accent)}h1,h2,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}h1{font-size:clamp(48px,6.3vw,102px);line-height:1.075;margin-bottom:25px}h1 em,h2 em{font-weight:400;color:var(--accent)}.hero-lead{max-width:590px;font-size:18px;line-height:1.75;color:#5b5d55;margin-bottom:33px}.nameplate{padding:27px 40px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:11px;background:rgba(248,245,238,.6)}.nameplate-kicker{color:var(--accent)}.nameplate strong{font:normal clamp(25px,3vw,43px) Georgia,serif;letter-spacing:-.04em}.nameplate-call{font-size:14px;color:var(--muted)}.nameplate-call i{font:italic 21px Georgia,serif;color:var(--accent)}.scroll-cue{margin-top:44px;font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:8px}.chapter{display:grid;grid-template-columns:27% 1fr;padding:118px clamp(24px,8.5vw,136px);gap:25px}.about{background:var(--paper)}.section-index{padding-top:11px;color:var(--accent)}.section-main{max-width:735px}.section-main .eyebrow{color:var(--accent);margin-bottom:21px}.chapter h2{font-size:clamp(44px,5.2vw,76px);line-height:1.1;margin-bottom:33px}.meaning{font:clamp(21px,2.3vw,31px)/1.52 Georgia,serif;letter-spacing:-.025em;max-width:680px;margin-bottom:53px}.birth-details{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.birth-details div{padding:23px 16px 23px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:9px}.birth-details span{color:var(--muted)}.birth-details strong{font:normal 18px Georgia,serif}.invitation{padding:110px 24px;background:var(--dark);color:#f8f5ed;text-align:center;position:relative}.invitation:before,.invitation:after{content:"";position:absolute;width:35%;height:1px;background:#777a6d;top:58px}.invitation:before{left:6%}.invitation:after{right:6%}.invitation-inner{max-width:690px;margin:auto}.small-ornament{font-size:29px;color:#c7aa87}.invitation .eyebrow{color:#d9c7ab;margin:23px 0}.invitation h2{font-size:clamp(44px,5.1vw,75px);line-height:1.12;margin-bottom:24px}.invitation h2 em{color:#dec8a7}.invitation-inner>p:not(.eyebrow){font-size:17px;line-height:1.75;color:#e3e2d8;max-width:555px;margin:0 auto 27px}.invitation .schedule-note{font:italic 17px Georgia,serif!important;color:#dcc8ad!important}.event-schedule{padding:8px 0 29px;display:flex;flex-direction:column;gap:10px}.event-schedule span{color:#d9c7ab}.event-schedule strong{font:normal 22px Georgia,serif}.location{margin:25px auto 19px;padding:25px;border-top:1px solid #777a6d;border-bottom:1px solid #777a6d;display:flex;flex-direction:column;gap:8px}.location>span:first-child{color:#d9c7ab}.location strong{font:normal 30px Georgia,serif}.location>span:last-child{font-size:16px}.invitation .address-help{font-size:14px!important;margin-bottom:20px!important}.contact-links{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.contact-links a{font-size:15px;border-bottom:1px solid #bcb9a8;padding-bottom:7px}.contact-links span{color:#dec8a7;margin-left:5px}.rsvp{background:var(--cream)}.rsvp-intro{font-size:17px;line-height:1.7;color:var(--muted);max-width:550px}.counter{display:flex;align-items:center;gap:19px;margin:31px 0 42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0}.counter>span{font:normal clamp(65px,7vw,105px)/1 Georgia,serif;letter-spacing:-.07em;color:var(--accent);font-variant-numeric:tabular-nums}.counter div{display:flex;flex-direction:column;gap:7px}.counter strong{font:normal 20px Georgia,serif}.counter small{font-size:14px;color:var(--muted)}.rsvp-form{display:flex;flex-direction:column;gap:11px}.rsvp-form label{font-size:14px;font-weight:600;margin-top:9px}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{width:100%;background:var(--paper);border:1px solid #c9c7bd;border-radius:0;color:var(--ink);padding:17px 18px;font-size:16px;outline-offset:0;transition:border-color .2s,box-shadow .2s}.rsvp-form textarea{resize:vertical;min-height:110px}.rsvp-form :is(input,select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 2px #8b674933}.rsvp-form ::placeholder{color:#8a8880}.optional{font-weight:400;color:var(--muted)}.rsvp-form button{border:0;color:white;background:var(--dark);padding:20px 23px;margin-top:9px;display:flex;justify-content:space-between;cursor:pointer;text-align:left;transition:background .2s,transform .2s}.rsvp-form button:hover{background:#656a57;transform:translateY(-2px)}.rsvp-form button:disabled{opacity:.65;cursor:wait;transform:none}.form-status{min-height:22px;margin:2px 0 0;font-size:15px}.form-status.error{color:#8d3c31}.form-status.success{color:#3d6545}.form-fineprint{font-size:13px;color:var(--muted);line-height:1.5;margin:0}.trap{position:absolute!important;left:-9999px!important;height:0;overflow:hidden}.wishes{padding:100px clamp(24px,8.5vw,136px) 125px;background:var(--paper)}.wishes-head{display:flex;justify-content:space-between;align-items:end;gap:25px;border-bottom:1px solid var(--line);padding-bottom:29px}.wishes-head .eyebrow{color:var(--accent);margin-bottom:14px}.wishes h2{font-size:clamp(39px,4.5vw,65px);margin:0}.wishes-head a{white-space:nowrap;font-size:14px;border-bottom:1px solid;padding-bottom:8px}.message-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0 34px}.message-card{padding:34px 0 28px;border-bottom:1px solid var(--line)}.message-card p{font:19px/1.55 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 23px}.message-card div{font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:10px}.message-card strong{font-weight:600;color:var(--ink);overflow-wrap:anywhere}.empty-message{grid-column:1/-1;font:italic 20px Georgia,serif;color:var(--muted);padding-top:37px}footer{background:var(--cream);border-top:1px solid var(--line);text-align:center;padding:56px 20px 66px}footer p{font:italic 20px Georgia,serif;margin:24px 0 13px}footer>span:last-child{font-size:14px;color:var(--muted)}.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}.reveal.in-view{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}@media(max-width:760px){.topbar{height:70px;padding:0 22px}.topbar-note{display:none}.hero{min-height:650px;padding:80px 23px 64px}.hero .eyebrow{margin-top:62px}.hero-arch{top:96px;height:480px;width:91vw}.hero-rule{left:22px;right:22px}.hero-lead{font-size:16px}.nameplate{padding:25px 12px;width:100%}.chapter{grid-template-columns:1fr;padding:85px 24px;gap:18px}.section-index{font-size:11px}.meaning{margin-bottom:42px}.invitation{padding:90px 24px}.invitation:before,.invitation:after{width:30%}.wishes{padding:85px 24px 95px}.message-list{grid-template-columns:repeat(2,1fr);gap:0 20px}}@media(max-width:540px){h1{font-size:clamp(43px,11vw,61px)}.topbar-link{font-size:13px}.hero{min-height:690px}.hero-rule{font-size:13px;gap:10px}.hero-arch{height:520px}.hero-lead{line-height:1.65}.nameplate strong{font-size:27px}.birth-details{grid-template-columns:1fr}.birth-details div{padding:18px 0}.contact-links{gap:15px;flex-direction:column;align-items:center}.wishes-head{align-items:start;flex-direction:column}.message-list{grid-template-columns:1fr}.message-card{padding:26px 0}.invitation h2{font-size:43px}}
