:root{color:#813405;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--paper:#f2e7f0;--ink:#813405;--plum:#8e3572;--sage:#c0c999;--sage-deep:#4f6047;--yellow:#f6e27f;--soft-white:#fffdf8;--line:#8134053d;--serif:"Playfair Display", Georgia, serif;background:#f2e7f0;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;scroll-padding-top:76px}body{min-width:320px;margin:0}body,button,input,select,textarea{font-family:DM Sans,sans-serif}button,input,select,textarea{font-size:inherit}a{color:inherit}::selection{color:var(--paper);background:var(--plum)}.site-header{z-index:3;color:#fff;justify-content:space-between;align-items:center;width:100%;height:82px;padding:0 7.2%;animation:.7s both arrive;display:flex;position:absolute;top:0;left:0}.wordmark,.footer-wordmark{font-family:var(--serif);align-items:center;gap:5px;font-size:19px;text-decoration:none;display:inline-flex}.wordmark svg,.footer-wordmark svg{color:var(--yellow)}.main-nav{align-items:center;gap:clamp(20px,3.2vw,48px);display:flex}.main-nav a,.back-top{align-items:center;gap:5px;font-size:11px;font-weight:500;text-decoration:none;display:inline-flex}.main-nav a:not(.nav-rsvp){opacity:.9;transition:opacity .18s}.main-nav a:not(.nav-rsvp):hover{opacity:.65}.main-nav .nav-rsvp{border:1px solid #ffffff9e;padding:10px 15px;transition:color .18s,background .18s}.main-nav .nav-rsvp:hover{color:var(--ink);background:var(--yellow)}.hero{background:var(--plum);color:#fff;align-items:flex-end;min-height:min(790px,100svh);display:flex;position:relative;overflow:hidden}.hero-image,.hero-shade{width:100%;height:100%;position:absolute;inset:0}.hero-image{object-fit:cover;object-position:center 57%;animation:1.4s both image-arrive}.hero-shade{background:linear-gradient(90deg,#481939b3 0%,#48193961 47%,#48193914 100%),linear-gradient(#0000 52%,#4819394d)}.hero-content{z-index:1;width:min(820px,80%);padding:0 0 9.5% 12.2%;animation:.8s .18s both arrive;position:relative}.eyebrow{color:var(--plum);letter-spacing:1.6px;text-transform:uppercase;margin:0;font-size:9px;font-weight:700;line-height:1.5}.hero-eyebrow{color:var(--yellow)}.hero h1{font-family:var(--serif);letter-spacing:0;margin:21px 0 22px;font-size:clamp(68px,10.4vw,145px);font-weight:500;line-height:.87}.hero h1 span{color:var(--yellow);font-size:.64em;font-style:italic}.hero-date{letter-spacing:.5px;align-items:center;gap:14px;margin:30px 0 32px;font-size:11px;display:flex}.hero-date i,.site-footer i{background:var(--yellow);border-radius:50%;width:3px;height:3px;display:inline-block}.hero-link{border-bottom:1px solid #ffffff8c;align-items:center;gap:12px;padding:0 0 8px;font-size:11px;text-decoration:none;transition:gap .18s;display:inline-flex}.hero-link:hover{gap:18px}.hero-index{font-size:10px;position:absolute;bottom:8%;right:7.2%}.hero-index span{color:var(--yellow);margin:0 8px}.hero-side-note{writing-mode:vertical-rl;color:#ffffffb3;letter-spacing:2px;font-size:8px;position:absolute;top:50%;right:3%}.section-wrap{width:min(100% - 48px,760px);margin:0 auto}.welcome{text-align:center;padding-top:126px;padding-bottom:126px;position:relative}.welcome-stamp{border:1px solid var(--line);width:42px;height:42px;color:var(--plum);border-radius:50%;place-items:center;margin:0 auto 23px;display:grid}.welcome h2,.details-content h2,.rsvp-intro h2,.registry-band h2{font-family:var(--serif);letter-spacing:0;margin:17px 0;font-size:clamp(35px,5vw,58px);font-weight:500;line-height:1.17}.welcome h2 em,.rsvp-intro h2 em,.registry-band h2 em{color:var(--plum);font-weight:500}.welcome-copy{color:#813405c7;max-width:490px;margin:20px auto 34px;font-size:16px;line-height:1.9}.origin-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:690px;margin:38px auto 35px;display:grid}.origin{border-top:1px solid var(--line);justify-items:center;gap:8px;padding:12px 4px 0;display:grid}.origin-number{color:var(--plum);letter-spacing:1.4px;font-size:9px;font-weight:700}.origin-name{color:var(--ink);font-family:var(--serif);font-size:17px;font-style:italic}.origin:nth-child(2n) .origin-name{color:var(--plum)}.welcome-rule{color:#813405c2;justify-content:center;align-items:center;gap:10px;font-size:16px;display:flex}.welcome-rule strong{color:var(--plum);font-family:var(--serif);font-size:15px;font-weight:500}.details-band{background:var(--sage-deep);min-height:590px;color:var(--soft-white);grid-template-columns:1fr 1fr;display:grid}.details-image-wrap{min-height:590px;position:relative;overflow:hidden}.details-image{object-fit:cover;object-position:center;width:100%;height:100%;min-height:590px}.image-caption{color:#fff;font-family:var(--serif);text-shadow:0 1px 8px #00000059;font-size:14px;font-style:italic;position:absolute;bottom:22px;right:24px}.details-content{align-self:center;max-width:570px;padding:76px clamp(36px,8vw,112px)}.details-content .eyebrow,.details-content h2{color:var(--soft-white)}.details-content h2{margin:12px 0;font-size:clamp(39px,5vw,61px)}.details-intro{color:#fffdf8d1;max-width:340px;margin:0 0 32px;font-size:12px;line-height:1.8}.detail-row{border-top:1px solid #fffdf84d;align-items:center;gap:15px;padding:18px 0;display:flex}.detail-icon{width:38px;height:38px;color:var(--soft-white);border:1px solid #fffdf880;border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.calendar-mark{font-size:8px;font-weight:700}.detail-label{color:#fffdf8b8;letter-spacing:1px;text-transform:uppercase;font-size:8px}.detail-row p{color:var(--soft-white);font-family:var(--serif);margin:4px 0 0;font-size:16px}.detail-muted{color:#fffdf8c2;font-family:DM Sans,sans-serif;font-size:10px}.text-link{color:var(--soft-white);align-items:center;gap:9px;margin-top:19px;font-size:10px;font-weight:600;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--yellow)}.rsvp-section{grid-template-columns:minmax(0,.9fr) minmax(380px,1fr);align-items:start;gap:clamp(50px,11vw,170px);width:min(100% - 48px,1020px);margin:0 auto;padding:120px 0 132px;display:grid}.rsvp-intro{padding-top:23px}.rsvp-intro h2{margin:19px 0 20px;font-size:clamp(55px,7vw,84px);line-height:.98}.rsvp-intro>p:not(.eyebrow){color:#68746a;max-width:300px;font-size:12px;line-height:1.85}.rsvp-deadline{color:#813405c2;align-items:center;gap:9px;margin-top:30px;font-size:10px;display:flex}.deadline-dot{background:var(--plum);border-radius:50%;width:6px;height:6px}.rsvp-panel{border-top:1px solid var(--line);padding-top:17px}.form-heading{color:#7d877b;letter-spacing:.7px;text-transform:uppercase;justify-content:space-between;margin-bottom:28px;font-size:9px;display:flex}.form-heading span:first-child{color:var(--plum)}.rsvp-form{gap:18px;display:grid}.field{color:var(--ink);gap:8px;font-size:10px;font-weight:600;display:grid}.field input,.field select,.field textarea{width:100%;color:var(--ink);background:0 0;border:1px solid #d7d9cc;border-radius:0;outline:none;padding:12px 13px;font-size:11px;font-weight:400;transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--plum);box-shadow:0 0 0 2px #8e35721f}.field input::placeholder,.field textarea::placeholder{color:#8134058c}.field textarea{resize:vertical;min-height:77px}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='m2 4 4 4 4-4' fill='none' stroke='%2323352c' stroke-width='1.2'/%3E%3C/svg%3E");background-position:right 13px center;background-repeat:no-repeat}.optional{color:#813405a8;margin-left:5px;font-size:9px;font-weight:400}.attendance-field{border:0;min-width:0;margin:0;padding:0}.attendance-field legend{margin-bottom:9px;font-size:10px;font-weight:600}.choice-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.choice{border:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;align-items:center;gap:8px;padding:9px 10px;font-size:9px;display:flex}.choice input{accent-color:var(--plum)}.choice.is-selected{border-color:var(--plum);color:var(--ink);background:#c0c9995c}.button{cursor:pointer;border:0;justify-content:center;align-items:center;gap:14px;min-height:46px;padding:0 18px;font-size:10px;font-weight:600;transition:background .16s,transform .16s;display:inline-flex}.button-dark{background:var(--plum);color:var(--paper)}.button-dark:hover:not(:disabled){background:var(--yellow);color:var(--ink);transform:translateY(-1px)}.button:disabled{opacity:.65;cursor:wait}.submit-button{justify-self:start;min-width:146px}.form-message{margin:-5px 0 0;font-size:11px;line-height:1.6}.form-message.success{color:var(--ink)}.form-message.error{color:var(--plum)}.registry-band{background:var(--plum);min-height:280px;color:var(--paper);justify-content:space-between;align-items:center;gap:50px;padding:66px max(8%,50% - 510px);display:flex}.registry-band .eyebrow{color:var(--yellow)}.registry-band h2{margin:13px 0 0;font-size:clamp(34px,4.2vw,51px)}.registry-band h2 em{color:var(--yellow)}.registry-note{max-width:250px;color:var(--paper);margin:20px 0 0;font-size:11px;line-height:1.8}.site-footer{color:#813405c7;justify-content:space-between;align-items:center;min-height:86px;padding:0 7.2%;display:flex}.footer-wordmark{color:var(--plum);font-size:15px}.site-footer>span{align-items:center;gap:10px;font-size:9px;display:flex}.back-top{font-size:9px;text-decoration:none}@keyframes arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes image-arrive{0%{opacity:.5;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=760px){.site-header{height:70px;padding:0 24px}.main-nav{gap:18px}.main-nav a{font-size:10px}.main-nav a:first-child{display:none}.hero{min-height:100svh;max-height:900px}.hero-image{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#481939a3,#4819392e 100%),linear-gradient(#0000 30%,#4819397a)}.hero-content{width:100%;padding:0 0 22% 8%}.hero h1{font-size:clamp(70px,17vw,112px)}.hero-side-note{font-size:7px;right:15px}.hero-index{bottom:8%;right:8%}.welcome{padding-top:90px;padding-bottom:90px}.origin-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.details-band{grid-template-columns:1fr}.details-image-wrap,.details-image{min-height:370px;max-height:470px}.details-content{padding:66px 8% 74px}.rsvp-section{grid-template-columns:1fr;gap:48px;width:min(100% - 48px,560px);padding:86px 0 94px}.rsvp-intro h2{font-size:70px}.registry-band{flex-direction:column;align-items:flex-start;gap:12px;min-height:0;padding:62px 8%}.registry-note{margin-top:0}}@media (width<=420px){.site-header{padding:0 19px}.main-nav{gap:12px}.main-nav a{font-size:9px}.main-nav .nav-rsvp{padding:9px 11px}.hero-content{padding-left:7%}.hero h1{font-size:68px}.hero-date{gap:9px;font-size:10px}.welcome h2{font-size:35px}.choice-row{grid-template-columns:1fr}.site-footer{min-height:78px;padding:0 20px}.site-footer>span{gap:6px;font-size:8px}.back-top{font-size:8px}}
