@font-face{font-family:Cormorant;src:url(/fonts/cormorant.woff2)format("woff2-variations");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:Great Vibes;src:url(/fonts/greatvibes.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Mont;src:url(/fonts/montserrat.woff2)format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}:root{--paper:#f5f1e8;--ink:#1b1813;--ink-soft:#5c564b;--hairline:#1b18132e;--accent:#b0492f;--serif:"Cormorant", "Times New Roman", serif;--sans:"Mont", "Helvetica Neue", Arial, sans-serif;--script:"Great Vibes", cursive;--col:480px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5;overflow-x:clip}::selection{background:var(--accent);color:var(--paper)}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}:focus-visible{outline:1px solid var(--ink);outline-offset:3px}.caps{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;font-size:11px;font-weight:500}.num{font-variant-numeric:tabular-nums}.accent{color:var(--accent)}.bleed,.mast-toprow,.mast-rule,.footer-rule{margin-inline:calc(50% - 50vw)}.page{max-width:var(--col);margin:0 auto;padding:0 24px}.masthead{padding-top:18px}.mast-toprow{color:var(--ink);justify-content:space-between;gap:16px;padding:14px calc(50vw - 50%);display:flex;position:relative}.mast-toprow:before,.mast-toprow:after{content:"";background:var(--hairline);transform-origin:0;height:1px;animation:.7s cubic-bezier(.22,1,.36,1) both draw-in;position:absolute;left:0;right:0}.mast-toprow:before{top:0}.mast-toprow:after{animation-delay:80ms;bottom:0}.mast-toprow .caps{animation:.55s ease-out .2s both rise-in}.mast-names{padding:40px 0 30px;font-weight:300}.mast-name{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(72px,22vw,120px);font-weight:300;line-height:.95;display:block}.mast-name-1{animation:.6s ease-out .35s both rise-in}.mast-name-2{text-align:right;animation:.6s ease-out .65s both rise-in}.mast-amp{z-index:1;font-family:var(--serif);color:var(--accent);margin:-.42em 0 -.46em 17%;font-size:clamp(52px,15vw,84px);font-style:italic;font-weight:300;line-height:1;animation:.6s ease-out .5s both rise-in;display:block;position:relative}.mast-rule{background:var(--ink);transform-origin:0;height:1px;animation:.8s cubic-bezier(.22,1,.36,1) .85s both draw-in}.mast-date{font-family:var(--serif);letter-spacing:.01em;justify-content:space-between;align-items:baseline;padding:22px 0 4px;font-size:clamp(56px,17vw,92px);font-weight:300;line-height:1;animation:.6s ease-out 1s both rise-in;display:flex}.mast-date .dot{color:var(--accent);font-size:.55em;transform:translateY(-.15em)}.mast-sub{color:var(--ink-soft);padding:10px 0 0;animation:.6s ease-out 1.2s both rise-in}.mast-sub .bull{color:var(--accent);margin:0 .35em}@keyframes draw-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.sec{padding-top:72px}.sec-head{align-items:baseline;gap:14px;margin-bottom:34px;display:flex}.sec-num{font-family:var(--serif);color:var(--accent);font-variant-numeric:tabular-nums;font-size:22px;font-weight:400;line-height:1}.sec-title{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;font-size:11px;font-weight:600}.sec-rule{background:var(--hairline);flex:1;align-self:center;height:1px;margin-right:calc(50% - 50vw)}.invite{position:relative}.invite-body{padding-right:30px}.invite-text{font-family:var(--serif);max-width:40ch;font-size:20px;font-weight:400;line-height:1.7}.invite-lead{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;font-size:11px;font-weight:600}.invite-sign{font-family:var(--script);color:var(--ink-soft);margin-top:20px;font-size:24px;line-height:1}.invite-sidenote{writing-mode:vertical-rl;color:var(--ink-soft);font-size:9px;position:absolute;top:74px;right:0}@media (max-width:380px){.invite-sidenote{display:none}.invite-body{padding-right:0}}.count-row{border:1px solid var(--hairline);grid-template-columns:repeat(4,1fr);display:grid}.count-cell{flex-direction:column;align-items:center;gap:8px;padding:22px 4px 18px;display:flex}.count-cell+.count-cell{border-left:1px solid var(--hairline)}.count-num{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:clamp(36px,11vw,56px);font-weight:300;line-height:1}.count-label{color:var(--ink-soft);font-size:9px}.count-today{border:1px solid var(--hairline);text-align:center;font-family:var(--serif);padding:30px;font-size:44px;font-weight:300;line-height:1}.plan-list{border-top:1px solid var(--hairline);list-style:none}.plan-list li{border-bottom:1px solid var(--hairline)}.plan-row{text-align:left;grid-template-columns:72px 1fr;align-items:start;width:100%;min-height:44px;padding:18px 0;display:grid}.plan-time{font-family:var(--serif);color:var(--accent);font-size:20px;font-weight:500;line-height:1.2}.plan-row.active .plan-time{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.plan-cell{border-left:1px solid var(--hairline);padding-left:18px;display:block}.plan-title{font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.2;display:block}.plan-note{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-top:4px;font-size:10px;font-weight:500;display:block}.plan-modal{z-index:50;background:#1b181359;justify-content:center;align-items:center;padding:24px;animation:.18s ease-out both modal-fade;display:flex;position:fixed;inset:0}.plan-card{background:var(--paper);border:1px solid var(--ink);width:100%;max-width:400px;padding:22px 24px 26px;animation:.18s ease-out both modal-fade}.plan-card-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding-bottom:14px;display:flex}.plan-card-head .caps{white-space:pre;font-weight:600}.plan-close{width:44px;height:44px;color:var(--ink);justify-content:center;align-items:center;margin:-12px -14px -12px 0;display:flex}.plan-close:hover{color:var(--accent)}.plan-detail{font-family:var(--serif);font-size:19px;line-height:1.65}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.venue-name{font-family:var(--serif);letter-spacing:-.01em;font-size:clamp(44px,13vw,68px);font-weight:300;line-height:1}.venue-city{color:var(--ink-soft);margin-top:12px}.venue-figure{border:1px solid var(--hairline);margin-top:30px;padding:22px 18px 0}.venue-sketch{width:100%;height:auto;color:var(--ink);display:block}.venue-photo{width:100%;height:auto;display:block}.venue-caption{border-top:1px solid var(--hairline);color:var(--ink-soft);text-align:center;margin-top:16px;padding:12px 0;font-size:9px;display:block}.venue-actions{grid-template-columns:1fr 1fr;gap:12px;margin-top:28px;display:grid}.btn{border:1px solid var(--ink);min-height:46px;font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;justify-content:center;align-items:center;gap:10px;padding:12px 14px;font-size:11px;font-weight:600;text-decoration:none;transition:background .15s ease-out,color .15s ease-out;display:inline-flex}.btn:hover{background:var(--ink);color:var(--paper)}.venue-calendar{text-align:center;margin-top:18px}.venue-calendar a{min-height:44px;font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--accent);text-underline-offset:5px;padding:12px 8px;font-size:11px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;display:inline-block}.footer{text-align:center;margin-top:84px;padding-bottom:44px}.footer-rule{background:var(--hairline);height:1px}.footer-family{font-family:var(--serif);padding-top:36px;font-size:22px;font-weight:400}.footer-initials{font-family:var(--serif);letter-spacing:.35em;margin-top:14px;font-size:15px;font-weight:300}.footer-meta{border-top:1px solid var(--hairline);color:var(--ink-soft);justify-content:space-between;margin-top:40px;padding-top:14px;font-size:9px;display:flex}.reveal{opacity:0;transition:opacity .3s ease-out,transform .3s ease-out;transform:translateY(10px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
