/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.table{display:table}}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-italic.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-ext-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/ebgaramond-latin-ext-italic.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--ink:#163024;--ink-muted:#5c6a60;--line:#16302429;--paper:#f4f2ea;--surface:#faf8f2;--accent:#233115;--accent-hover:#17250f;--accent-wash:#e6ece2;--petal:#a2757f;--petal-ink:#8a5f69;--petal-light:#e2c8cd;--sage:#e6ece2;--sage-mid:#d9e3d5;--forest:#233115;--forest-deep:#17250f;--positive:#234836;--warn:#8a5a2b;--danger:#8c3a34;--display:"EB Garamond", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--ui:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--radius:18px;--radius-sm:11px;--blush-wash:#f7efec;--band:clamp(76px, 13vw, 170px);--gutter:clamp(20px, 5.2vw, 40px)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--ui);letter-spacing:-.009em;-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}picture{display:contents}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}:is(.wedding-footer :focus-visible,.rsvp-section :focus-visible,.story-band :focus-visible,.site-header--inverse :focus-visible){outline-color:#f7f4ed}::selection{background:var(--petal-light);color:var(--forest-deep)}h1,h2,h3{font-family:var(--display);letter-spacing:-.035em;text-wrap:balance;margin:0;font-weight:400;line-height:1.03}p{text-wrap:pretty}.page-shell{width:min(100% - (var(--gutter) * 2), 1280px);margin-inline:auto}.eyebrow{color:var(--petal-ink);letter-spacing:.2em;text-transform:uppercase;margin:0 0 16px;font-size:11px;font-weight:600;line-height:1.3}.site-header{border-bottom:1px solid #28513e2e;justify-content:space-between;align-items:center;gap:18px;min-height:68px;display:flex}.wordmark{min-height:44px;font-family:var(--display);letter-spacing:.1em;white-space:nowrap;align-items:center;font-size:19px;display:inline-flex}.wordmark span{color:var(--petal);font-style:italic}.site-header nav{align-items:center;gap:clamp(15px,4.4vw,30px);display:flex}.site-header nav a{letter-spacing:.04em;align-items:center;min-height:44px;font-size:13px;display:inline-flex;position:relative}.site-header nav a:after{content:"";opacity:0;background:currentColor;height:1px;transition:opacity .18s;position:absolute;bottom:9px;left:0;right:0}.site-header nav a:hover:after,.site-header nav a[aria-current=page]:after{opacity:1}.site-header--inverse{z-index:2;color:#fff;border-color:#ffffff4d;position:relative}.site-header--inverse .wordmark span{color:var(--petal-light)}.wedding-home{background:var(--paper)}.wedding-hero{isolation:isolate;background:var(--forest-deep);color:#fff;min-height:100svh;position:relative}.wedding-hero__image{z-index:-2;object-fit:cover;object-position:center 46%;width:100%;height:100%;position:absolute;inset:0}.wedding-hero__shade{z-index:-1;background:linear-gradient(#0a180c94 0%,#0a180c4d 34%,#0a180c57 56%,#0a180ccc 100%);position:absolute;inset:0}.wedding-hero__content{flex-direction:column;min-height:100svh;display:flex}.wedding-hero__title{text-align:center;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;padding:40px 0 clamp(44px,9vh,92px);display:flex}.wedding-hero__eyebrow{letter-spacing:.26em;text-transform:uppercase;margin:0 0 20px;font-size:11px;font-weight:600}.wedding-hero__title h1{letter-spacing:-.05em;text-shadow:0 2px 28px #0003;font-size:clamp(56px,min(17.5vw,26vh),170px);line-height:.9}.wedding-hero__title h1 i{color:#ecd6d9;font-size:.8em}.wedding-hero__date{font-family:var(--display);letter-spacing:.05em;align-items:center;gap:clamp(12px,3.5vw,20px);margin:clamp(22px,4vh,32px) 0 0;font-size:clamp(16px,4.3vw,21px);font-style:italic;display:flex}.wedding-hero__date:before,.wedding-hero__date:after{content:"";background:#ecd6d9bf;width:clamp(22px,8vw,58px);height:1px}.wedding-hero__scroll{letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid #fff9;align-items:center;gap:10px;margin-top:clamp(26px,5vh,42px);padding:13px 2px 11px;font-size:12px;display:inline-flex}.photo-intro{--fade:clamp(150px, 26vw, 300px);padding:12px;padding-bottom:calc(var(--fade) * .72);color:#f7f4ed;background:linear-gradient(180deg, var(--forest) 0%, var(--forest) calc(100% - var(--fade)), #1d2c15 calc(100% - var(--fade) * .84), #2b3a20 calc(100% - var(--fade) * .68), #435030 calc(100% - var(--fade) * .52), #687349 calc(100% - var(--fade) * .37), #98a077 calc(100% - var(--fade) * .24), #c3c8a9 calc(100% - var(--fade) * .12), #dfe4d5 100%);gap:12px;display:grid}.photo-intro figure{border-radius:var(--radius);margin:0;overflow:hidden}.photo-intro img{object-fit:cover;width:100%;height:100%;display:block}.photo-intro__wide{aspect-ratio:3/2}.photo-intro__wide img{object-position:60% center}.photo-intro__copy{text-align:left;flex-direction:column;justify-content:center;padding:clamp(30px,8vw,60px) clamp(18px,5vw,48px);display:flex}.photo-intro__copy .eyebrow{color:#d3b6bd}.photo-intro__copy h2{color:#f7f4ed;font-size:clamp(40px,10.5vw,76px)}.photo-intro__copy h2 i{color:var(--petal-light)}.photo-intro__copy p:not(.eyebrow){color:#c6d4c9;max-width:46ch;margin:clamp(18px,4vw,26px) 0 0;font-size:17px;line-height:1.75}.day-section{background:linear-gradient(172deg, #dfe4d5 0%, #f2ece7 34%, var(--sage) 68%, #e2ebde 100%);padding:var(--band) 0;text-align:center;border-top:0}.day-section__inner{flex-direction:column;align-items:center;display:flex}.day-section__inner>:first-child{margin-top:0}.day-section .eyebrow{color:var(--petal)}.day-section h2{max-width:900px;font-size:clamp(44px,12vw,108px)}.day-section__intro{max-width:470px;color:var(--ink-muted);margin:clamp(24px,5vw,36px) auto 0;font-size:17px;line-height:1.75}.schedule__list h3,.faq summary{font-family:var(--display);margin:0;font-size:clamp(30px,7vw,45px);font-weight:400;line-height:1.05}.schedule__list a{min-height:44px;color:var(--accent);text-underline-offset:5px;align-items:center;font-size:13px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.schedule{text-align:left;width:min(100%,880px)}.schedule__thumb{grid-area:1/1/span 2;align-self:start;margin:0}.schedule__thumb img{mix-blend-mode:multiply;width:100%;height:auto;-webkit-mask-image:radial-gradient(46% 52%,#000 86%,#0000 100%);mask-image:radial-gradient(46% 52%,#000 86%,#0000 100%)}.schedule__detail{grid-area:1/3/span 2}.schedule__list{margin:0;padding:0;list-style:none}.schedule__list li{border-top:1px solid #a2757f4d;grid-template-columns:92px 54px 1fr;gap:4px clamp(10px,2.8vw,20px);padding:clamp(18px,3.6vw,24px) 0;display:grid}.schedule__list time{grid-area:1/2;font-size:clamp(17px,4.4vw,27px)}.schedule__list li:last-child{border-bottom:1px solid #a2757f4d}.schedule__list time{color:var(--petal-ink);font-family:var(--display);font-variant-numeric:tabular-nums;font-size:clamp(21px,5.4vw,27px);font-style:italic;line-height:1.25}.schedule__list h3{font-size:clamp(21px,5.4vw,34px);line-height:1.1}.schedule__where{color:var(--ink-muted);margin:6px 0 0;font-size:14.5px;line-height:1.55}.countdown{text-align:center;border-top:1px solid #e2c8cd47;flex-direction:column;grid-column:1/-1;align-items:center;gap:clamp(14px,3vw,20px);padding:clamp(26px,5vw,40px) clamp(14px,4vw,30px) clamp(20px,4vw,30px);display:flex}.countdown__label{color:var(--petal-light);letter-spacing:.22em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.countdown__figures{align-items:flex-start;margin:0;display:flex}.countdown__figures>div{min-width:clamp(66px,19vw,104px);padding-inline:clamp(6px,2.4vw,18px)}.countdown__figures>div+div{border-left:1px solid #e2c8cd4d}.countdown__figures dd{color:#f7f4ed;font-family:var(--display);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(30px,8.6vw,52px);line-height:1}.countdown__figures dt{color:var(--petal-light);letter-spacing:.18em;text-transform:uppercase;margin-top:8px;font-size:10px}.rsvp-modal{z-index:60;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.rsvp-modal__scrim{cursor:pointer;background:#0b160c61;border:0;animation:.28s ease-out both scrim-in;position:absolute;inset:0}.rsvp-modal__panel{border-radius:var(--radius) var(--radius) 0 0;width:100%;max-height:92svh;padding:clamp(30px, 7vw, 48px) var(--gutter) clamp(24px, 6vw, 40px);background:var(--surface);animation:.42s cubic-bezier(.2,.8,.2,1) both panel-in;position:relative;overflow-y:auto}.rsvp-modal__panel:focus{outline:none}.rsvp-modal__panel h2{font-size:clamp(34px,8.4vw,46px)}.rsvp-modal__intro{max-width:46ch;color:var(--ink-muted);margin:clamp(12px,3vw,16px) 0 clamp(24px,5vw,32px);line-height:1.65}.rsvp-modal__close{width:44px;height:44px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;font-size:26px;line-height:1;position:absolute;top:10px;right:10px}.rsvp-modal__close:hover{color:var(--ink)}.rsvp-modal__later{min-height:44px;color:var(--ink-muted);cursor:pointer;text-underline-offset:5px;background:0 0;border:0;margin:18px auto 0;font-size:13px;text-decoration:underline;display:block}.rsvp-modal__later:hover{color:var(--ink)}.rsvp-modal .rsvp-form{box-shadow:none;background:0 0;border:0;margin-inline:0;padding:0}.rsvp-modal .rsvp-success{background:0 0;border:0;margin-inline:0;padding:clamp(24px,6vw,40px) 0}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}@keyframes panel-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@media (min-width:640px){.rsvp-modal{align-items:center;padding:24px}.rsvp-modal__panel{border-radius:var(--radius);max-width:620px;max-height:88svh;padding-inline:clamp(34px,5vw,54px);box-shadow:0 16px 40px -26px #0b160c4d}}.faq{width:min(100%,880px);margin-top:var(--band);text-align:left}.faq__list{margin:0;padding:0;list-style:none}.faq__list li{border-top:1px solid #a2757f4d}.faq__list li:last-child{border-bottom:1px solid #a2757f4d}.faq summary{cursor:pointer;font-family:var(--display);letter-spacing:-.025em;justify-content:space-between;align-items:baseline;gap:20px;padding:clamp(18px,4vw,24px) 0;font-size:clamp(21px,5.2vw,28px);line-height:1.18;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq__mark{flex:none;width:14px;height:14px;transition:transform .2s;position:relative}.faq__mark:before,.faq__mark:after{content:"";background:var(--petal-ink);width:100%;height:1px;position:absolute;top:50%;left:0}.faq__mark:after{transform:rotate(90deg)}.faq details[open] .faq__mark{transform:rotate(45deg)}.faq__answer{max-width:62ch;color:var(--ink-muted);padding:0 0 clamp(20px,4vw,28px)}.faq__answer p{margin:0;line-height:1.7}.faq__links{flex-wrap:wrap;gap:4px 26px;margin-top:8px;display:flex}.faq__links a{min-height:44px;color:var(--accent);text-underline-offset:5px;align-items:center;font-size:13px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.story-band{background:var(--forest-deep)}.story-band img{border-radius:var(--radius);object-fit:cover;object-position:center 58%;width:100%;height:clamp(420px,78vh,780px);display:block}.rsvp-section{padding:var(--band) 0;background:var(--forest);color:#f7f4ed;border-top:1px solid #a2757f52}.rsvp-section__inner{align-items:start;gap:clamp(38px,7vw,60px);display:grid}.rsvp-section__heading .eyebrow{color:#d3b6bd}.rsvp-section__heading h2{color:#f7f4ed;letter-spacing:-.045em;max-width:480px;font-size:clamp(46px,12vw,90px);line-height:.98}.rsvp-section__heading>p:not(.eyebrow){color:#c6d4c9;max-width:390px;margin:24px 0 0;font-size:16px;line-height:1.75}.rsvp-section__figure{aspect-ratio:4/5;border-radius:var(--radius);margin:clamp(26px,5vw,38px) 0 0;overflow:hidden}.rsvp-section__figure img{object-fit:cover;width:100%;height:100%}.rsvp-form{border-radius:var(--radius);color:var(--ink);background:#f6f4ee;border:1px solid #e2c8cd80;gap:26px;padding:clamp(26px,6vw,52px) clamp(20px,5vw,40px);display:grid}.rsvp-form__row{gap:18px;display:grid}.rsvp-form label>span,.rsvp-form legend{margin-bottom:7px;font-size:13px;font-weight:600;display:block}.rsvp-form label small{color:var(--ink-muted);font-weight:400}.rsvp-form input:not([type=radio]),.rsvp-form textarea{background:0 0;border:0;border-bottom:1px solid #cfc8bd;border-radius:0;outline:0;width:100%;min-height:46px;padding:10px 0;font-size:16px}.rsvp-form input:focus,.rsvp-form textarea:focus{border-color:var(--accent);box-shadow:0 1px 0 var(--accent)}.rsvp-form fieldset{border:0;margin:0;padding:0}.rsvp-options{gap:10px;display:grid}.rsvp-options label{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:12px;min-height:58px;padding:12px 16px;display:flex}.rsvp-options label:has(input:checked){border-color:var(--accent);background:var(--sage)}.rsvp-options input{width:20px;height:20px;accent-color:var(--accent)}.rsvp-options label span{font-family:var(--display);margin:0;font-size:18px;font-weight:400}.rsvp-form__attending{gap:26px;display:grid}.rsvp-diet{gap:12px;display:grid}.rsvp-diet__chips{flex-wrap:wrap;gap:8px;display:flex}.rsvp-diet__chips label{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:0 15px;font-size:14px;transition:background .15s,border-color .15s;display:inline-flex}.rsvp-diet__chips label:hover{border-color:var(--petal)}.rsvp-diet__chips label.is-on{border-color:var(--petal);background:var(--blush-wash);color:var(--ink)}.rsvp-diet__chips input{width:16px;height:16px;accent-color:var(--petal)}.rsvp-diet legend small{color:var(--ink-muted);font-weight:400}.rsvp-submit{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:0 22px;font-weight:600;transition:background .16s;display:flex}.rsvp-submit:hover{background:var(--accent-hover);box-shadow:inset 0 -3px 0 var(--petal)}.rsvp-submit:disabled{cursor:wait;opacity:.65}.rsvp-error{color:var(--danger);margin:-12px 0 0;font-size:13px}.rsvp-privacy{max-width:480px;color:var(--ink-muted);margin:-10px 0 0;font-size:11px;line-height:1.5}.rsvp-honeypot{position:absolute;left:-10000px}.rsvp-success{border-radius:var(--radius);border:1px solid var(--line);color:var(--ink);text-align:center;background:#f6f4ee;padding:clamp(40px,10vw,90px) clamp(20px,5vw,40px)}.rsvp-success>span{color:var(--accent)}.rsvp-success h3{font-family:var(--display);margin:18px 0 10px;font-size:clamp(38px,9vw,54px);font-weight:400}.rsvp-success p{max-width:430px;color:var(--ink-muted);margin:0 auto}.registry-invite{padding:var(--band) 0;align-items:center;gap:clamp(36px,7vw,90px);display:grid}.registry-band{background:var(--blush-wash)}.registry-invite figure{aspect-ratio:4/3;border-radius:var(--radius);margin:0;overflow:hidden}.registry-invite figure img{object-fit:cover;object-position:center 40%;width:100%;height:100%}.registry-invite>div{max-width:500px}.registry-invite h2{font-size:clamp(38px,9.5vw,72px)}.registry-invite>div>p:not(.eyebrow){color:var(--ink-muted);margin:24px 0 30px;font-size:17px;line-height:1.75}.editorial-button{border-radius:var(--radius-sm);background:var(--accent);color:#fff;letter-spacing:.04em;align-items:center;gap:20px;min-height:52px;padding:0 22px;font-size:13px;transition:background .16s;display:inline-flex;box-shadow:inset 0 -3px #a2757f8c}.editorial-button:hover{background:var(--accent-hover);box-shadow:inset 0 -3px 0 var(--petal)}.wedding-footer{background:var(--forest-deep);color:#f7f4ed;border-top:1px solid #a2757f57;padding:clamp(48px,10vw,76px) 0 28px}.wedding-footer .page-shell{text-align:center;justify-items:center;gap:22px;display:grid}.wedding-footer p{font-family:var(--display);margin:0;font-size:clamp(34px,10vw,62px);line-height:1}.wedding-footer p i{color:var(--petal-light)}.wedding-footer>div>span{font-family:var(--display);opacity:.82;font-size:15px;font-style:italic}.wedding-footer nav{gap:24px;font-size:12px;display:flex}.wedding-footer nav a{opacity:.8;align-items:center;min-height:44px;display:inline-flex}.wedding-footer nav a:hover{opacity:1}.hero{flex-direction:column;justify-content:center;max-width:900px;min-height:0;padding:clamp(48px,11vw,78px) 0 clamp(60px,12vw,96px);display:flex}.hero h1{letter-spacing:-.04em;max-width:880px;font-size:clamp(42px,10.5vw,94px);line-height:1}.hero__intro{max-width:650px;color:var(--ink-muted);margin:clamp(24px,5vw,34px) 0 30px;font-size:17px;line-height:1.7}.down-link,.underlined-link{border-bottom:1px solid var(--ink);align-self:flex-start;align-items:center;min-height:44px;font-size:14px;font-weight:500;display:inline-flex}.down-link span{margin-left:8px;display:inline-block}.collection{background:var(--surface);padding:92px 0 120px}.collection-heading{justify-content:space-between;align-items:end;margin-bottom:42px;display:flex}.collection-heading h2{font-family:var(--display);letter-spacing:-.025em;margin:0;font-size:39px;font-weight:400}.text-button{border:0;border-bottom:1px solid var(--ink);min-height:44px;color:var(--ink);cursor:pointer;background:0 0;padding:0;font-size:14px}.registry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 24px;display:grid}.item-card{min-width:0;display:block}.item-card__image{aspect-ratio:4/5;border-radius:var(--radius);background:var(--paper);border:1px solid #0000;transition:border-color .18s;overflow:hidden}.item-card__image img{object-fit:cover;width:100%;height:100%;transition:transform .2s cubic-bezier(.2,0,.2,1)}.item-card:hover .item-card__image{border-color:var(--line)}.item-card:hover .item-card__image img{transform:scale(1.02)}.item-card__copy{padding-top:17px}.item-card__retailer{color:var(--ink-muted);letter-spacing:.05em;text-transform:uppercase;margin:0 0 4px;font-size:12px}.item-card h3{font-family:var(--display);letter-spacing:-.018em;margin:0;font-size:23px;font-weight:400;line-height:1.25}.item-card__price{font-variant-numeric:tabular-nums;margin:8px 0 0}.product-placeholder{color:#1c1b19ad;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.product-placeholder:before,.product-placeholder:after{content:"";border:1px solid #1c1b1914;border-radius:50%;position:absolute}.product-placeholder:before{aspect-ratio:1;width:62%;top:14%;left:19%}.product-placeholder:after{aspect-ratio:1;width:28%;bottom:18%;right:14%}.product-placeholder span{z-index:1;font-family:var(--display);font-size:34px;font-style:italic;position:relative}.product-placeholder small{z-index:1;letter-spacing:.08em;text-transform:uppercase;margin-top:9px;font-size:11px;position:relative}.placeholder-item-1{background:#e6d5c4}.placeholder-item-2{background:#d8dfcf}.placeholder-item-3{background:#d9d3c7}.placeholder-item-4{background:#cbd1c6}.placeholder-item-5{background:#d9c8b8}.placeholder-item-6{background:#d9dedb}.progress-block{margin-top:13px}.progress-label{color:var(--ink-muted);font-variant-numeric:tabular-nums;justify-content:space-between;gap:16px;margin-bottom:8px;font-size:12px;display:flex}.progress-track{background:var(--line);height:6px;overflow:hidden}.progress-track span{background:var(--accent);height:100%;display:block}.site-footer{border-top:1px solid var(--line);background:var(--surface);font-family:var(--display);padding:34px 0}.site-footer .page-shell{justify-content:space-between;display:flex}.site-footer nav{font-family:var(--ui);gap:24px;font-size:13px;display:flex}.detail-layout{grid-template-columns:minmax(0,1.2fr) minmax(340px,.75fr);align-items:start;gap:clamp(48px,8vw,120px);padding:42px 0 100px;display:grid}.back-link{color:var(--ink-muted);margin-bottom:28px;font-size:14px;display:inline-block}.detail-image{aspect-ratio:4/3;border-radius:var(--radius);margin-bottom:30px;overflow:hidden}.detail-image img{object-fit:cover;width:100%;height:100%}.detail-product h1{max-width:700px;font-family:var(--display);letter-spacing:-.04em;margin:4px 0 0;font-size:clamp(42px,5vw,64px);font-weight:400;line-height:1.06}.detail-price{font-variant-numeric:tabular-nums;margin:12px 0 28px;font-size:20px}.detail-progress{max-width:600px;margin:-5px 0 30px}.detail-description{max-width:660px;color:var(--ink-muted);font-size:18px}.detail-product blockquote{border-left:2px solid var(--accent);max-width:640px;font-family:var(--display);margin:35px 0;padding:0 0 0 24px;font-size:22px;line-height:1.5}.detail-layout aside{position:sticky;top:24px}.contribution-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:34px}.contribution-card h2{font-family:var(--display);margin:0;font-size:31px;font-weight:400;line-height:1.15}.form-intro{color:var(--ink-muted);margin:14px 0 28px;font-size:14px}.quantity-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin:0 -34px;padding:22px 34px;display:flex}.field-label{font-size:14px;font-weight:600;display:block}.quantity-row small{color:var(--ink-muted);font-size:12px;display:block}.stepper{border:1px solid var(--line);align-items:center;display:flex}.stepper button{cursor:pointer;background:0 0;border:0;width:44px;height:44px;font-size:20px}.stepper output{text-align:center;font-variant-numeric:tabular-nums;width:36px}.amount-fieldset{border:0;margin:0;padding:0}.amount-fieldset legend{margin-bottom:10px;font-size:14px;font-weight:600}.amount-options{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.amount-options button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;min-height:48px}.amount-options button.selected{border-color:var(--accent);background:var(--accent);color:#fff}.custom-amount{margin-top:14px;display:block}.custom-amount>span:first-child{margin-bottom:6px;font-size:13px;display:block}.currency-input{border:1px solid var(--line);align-items:center;display:flex}.currency-input b{padding-left:12px;font-weight:400}.currency-input input{border:0;outline:0;width:100%;padding:12px 8px}.guest-fields{gap:18px;margin-top:25px;display:grid}.guest-fields label>span:first-child{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.guest-fields label small{color:var(--ink-muted);font-weight:400}.guest-fields input:not([type=checkbox]),.guest-fields textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:100%;padding:12px}.guest-fields input:focus,.guest-fields textarea:focus{border-color:var(--accent);outline:3px solid var(--accent-wash)}.check-row{color:var(--ink-muted);grid-template-columns:18px 1fr;align-items:start;gap:10px;font-size:12px;line-height:1.4;display:grid}.check-row input{width:18px;height:18px;accent-color:var(--accent);margin:0}.check-row span{font-size:inherit!important;margin:0!important;font-weight:400!important}.contribution-total{border-top:1px solid var(--line);justify-content:space-between;margin:26px 0 16px;padding-top:18px;font-size:14px;display:flex}.contribution-total strong{font-variant-numeric:tabular-nums;font-size:20px}.primary-button{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;letter-spacing:.04em;border:0;justify-content:center;align-items:center;width:100%;min-height:50px;padding:12px 24px;font-size:13px;transition:background .16s;display:flex}.primary-button:hover{background:var(--accent-hover)}.primary-button:active{transform:scale(.99)}.secure-note{color:var(--ink-muted);text-align:center;margin:12px 0 0;font-size:11px}.form-notice{background:var(--accent-wash);color:var(--accent-hover);padding:12px;font-size:12px;line-height:1.4}.prose-page{max-width:820px;margin:0 auto;padding:92px 0 120px}.prose-page h1{font-family:var(--display);letter-spacing:-.04em;margin:0;font-size:clamp(50px,7vw,78px);font-weight:400;line-height:1}.prose-page .lead{color:var(--ink-muted);margin:30px 0 72px;font-size:20px;line-height:1.7}.steps{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.steps li{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr;gap:16px;padding:36px 0;display:grid}.steps li>span{color:var(--accent);letter-spacing:.12em;font-size:12px}.steps h2,.plain-note h2,.legal h2{font-family:var(--display);margin:0 0 8px;font-size:28px;font-weight:400}.steps p{color:var(--ink-muted);margin:0}.plain-note{background:var(--accent-wash);margin:64px 0 40px;padding:32px}.plain-note p{color:var(--ink-muted);margin-bottom:0}.inline-button{width:auto;display:inline-flex}.legal{max-width:700px}.legal h1{margin-bottom:40px}.legal h2{margin-top:40px}.legal p{color:var(--ink-muted)}.admin-shell{color:#24231f;background:#f6f4ef;min-height:100vh;font-size:14px}.admin-topbar{background:#fff;border-bottom:1px solid #ded9cf;justify-content:space-between;align-items:center;height:66px;padding:0 clamp(20px,4vw,56px);display:flex}.admin-brand{font-family:var(--display);font-size:20px;font-weight:600}.admin-topbar nav{color:var(--ink-muted);align-items:center;gap:24px;display:flex}.admin-page{width:min(100% - 40px,1180px);margin:0 auto;padding:50px 0 90px}.admin-page>h1,.admin-title-row h1{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:42px;font-weight:500;line-height:1.1}.admin-kicker{color:var(--ink-muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-size:11px;font-weight:600}.admin-lead{color:var(--ink-muted);margin:10px 0 34px}.admin-primary,.admin-secondary{border:1px solid var(--accent);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;min-height:42px;padding:9px 16px;font-weight:600;display:inline-flex}.admin-primary{background:var(--accent);color:#fff}.admin-primary:disabled{cursor:wait;opacity:.65}.admin-secondary{color:var(--accent);background:#fff}.admin-title-row{justify-content:space-between;align-items:end;margin-bottom:28px;display:flex}.metric-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.metric-grid article,.panel{background:#fff;border:1px solid #ded9cf}.metric-grid article{padding:20px}.metric-grid article>span{color:var(--ink-muted);font-size:12px;display:block}.metric-grid strong{font-family:var(--display);font-variant-numeric:tabular-nums;margin:4px 0 2px;font-size:31px;font-weight:500;display:block}.metric-grid small{color:var(--ink-muted)}.metric-grid .attention{color:var(--danger)}.dashboard-grid{grid-template-columns:2fr 1fr;gap:12px;margin-top:12px;display:grid}.panel{padding:24px}.panel-heading{justify-content:space-between;align-items:start;gap:24px;display:flex}.panel h2{font-family:var(--display);margin:0;font-size:24px;font-weight:500}.panel-heading>strong{font-variant-numeric:tabular-nums;font-size:20px}.mini-chart{border-bottom:1px solid var(--line);background:repeating-linear-gradient(#0000,#0000 39px,#eeeae2 40px);align-items:end;gap:8px;height:160px;margin-top:24px;padding-top:16px;display:flex}.mini-chart span{background:var(--accent);opacity:.82;flex:1;min-height:8px}.funding-panel>strong{font-variant-numeric:tabular-nums;margin:24px 0 12px;font-size:27px;display:block}.funding-panel small{color:var(--ink-muted);margin-top:9px;display:block}.funding-panel a{color:var(--accent);margin-top:24px;font-weight:600;display:inline-block}.ledger-panel{margin-top:12px;padding:0}.ledger-panel>.panel-heading{border-bottom:1px solid var(--line);padding:22px 24px}.ledger-actions{gap:8px;display:flex}.ledger-actions button{border:1px solid var(--line);cursor:pointer;background:#fff;min-height:36px;padding:6px 10px}.table-wrap{overflow-x:auto}.ledger-panel table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.ledger-panel th{color:var(--ink-muted);letter-spacing:.08em;text-align:left;text-transform:uppercase;background:#faf9f6;padding:11px 16px;font-size:10px}.ledger-panel td{white-space:nowrap;border-top:1px solid #eeeae2;padding:15px 16px}.ledger-panel td strong,.ledger-panel td small{display:block}.ledger-panel td small{color:var(--ink-muted);font-size:10px}.ledger-panel td input{width:18px;height:18px;accent-color:var(--accent)}.status{background:var(--accent-wash);color:var(--positive);border-radius:10px;padding:3px 7px;font-size:10px;display:inline-block}.status-manual{color:var(--warn);background:#f2ede4}.admin-signin{background:var(--paper);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.admin-signin h1{font-family:var(--display);margin:0;font-size:42px}.admin-signin p{color:var(--ink-muted)}.admin-signin .admin-primary{margin-top:14px}.admin-signin__form{text-align:left;gap:14px;width:min(100%,320px);margin-top:22px;display:grid}.admin-signin__form label>span{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.admin-signin__form input{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:100%;min-height:46px;padding:10px 12px}.admin-signin__error{color:var(--danger);font-size:13px}.new-item-flow{gap:16px;display:grid}.url-capture{background:#fff;border:1px solid #ded9cf;padding:26px}.url-capture>label{margin-bottom:8px;font-weight:600;display:block}.url-capture>div{grid-template-columns:1fr auto;gap:8px;display:grid}.url-capture input{border:1px solid #cdc7bc;min-height:44px;padding:10px 12px}.url-capture p{color:var(--ink-muted);margin:8px 0 0;font-size:12px}.admin-status{border-left:3px solid var(--accent);background:var(--accent-wash);color:var(--accent-hover);padding:13px 16px}.item-review{background:#fff;border:1px solid #ded9cf;margin-top:16px;padding:28px}.review-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;margin-bottom:24px;padding-bottom:20px;display:flex}.review-heading h2{font-family:var(--display);margin:0;font-size:28px;font-weight:500}.draft-pill{color:var(--warn);text-transform:uppercase;background:#f1ede4;border-radius:10px;padding:3px 8px;font-size:10px;font-weight:600}.review-grid{grid-template-columns:minmax(240px,.72fr) minmax(0,1.3fr);gap:36px;display:grid}.image-review>img,.image-review>div{aspect-ratio:4/5;object-fit:contain;background:var(--paper);width:100%}.image-review>div{color:var(--ink-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.image-review>div span{font-size:12px}.image-review label{margin-top:14px;font-size:12px;font-weight:600;display:block}.image-review input{border:1px solid var(--line);width:100%;margin-top:5px;padding:9px;font-size:12px}.image-review p{color:var(--ink-muted);font-size:11px}.product-fields{gap:16px;display:grid}.product-fields label>span,.product-fields legend{margin-bottom:6px;font-size:12px;font-weight:600;display:block}.product-fields input,.product-fields textarea,.product-fields select{background:#fff;border:1px solid #cdc7bc;border-radius:3px;width:100%;padding:10px}.split-fields{grid-template-columns:2fr 1fr;gap:12px;display:grid}.product-fields fieldset{border:0;margin:0;padding:0}.kind-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.kind-options label{border:1px solid var(--line);cursor:pointer;align-items:start;gap:10px;padding:12px;display:flex}.kind-options input{width:auto;accent-color:var(--accent);margin-top:4px}.kind-options strong,.kind-options small{display:block}.kind-options small{color:var(--ink-muted);font-size:11px}.product-fields details{border-top:1px solid var(--line);padding-top:14px}.product-fields summary{cursor:pointer;color:var(--ink-muted);font-size:12px}.product-fields details label{margin-top:12px;display:block}.review-actions{justify-content:flex-end;gap:9px;padding-top:8px;display:flex}@media (min-width:600px){.rsvp-form__row,.rsvp-options{grid-template-columns:1fr 1fr}}@media (min-width:720px){.wedding-footer .page-shell{text-align:left;grid-template-columns:1fr auto 1fr;place-items:baseline stretch}.wedding-footer>div>span{justify-self:center}.wedding-footer nav{justify-content:flex-end}}@media (min-width:900px){.site-header{min-height:104px}.site-header--quiet{min-height:88px}.wordmark{font-size:22px}.site-header nav{gap:28px}.site-header nav a{font-size:14px}.wedding-hero__title{justify-content:center;padding-bottom:17vh}.wedding-hero__image{object-position:center 44%}.wedding-hero__shade{background:linear-gradient(#0a180c80 0%,#0a180c4d 30%,#0a180c57 58%,#0a180c9e 100%)}.photo-intro{grid-template-columns:1.05fr .95fr;gap:14px;padding:14px}.photo-intro__wide{aspect-ratio:auto;min-height:520px}.schedule__list li{grid-template-columns:170px 128px 1fr;align-items:start}.schedule__list time{grid-area:1/2}.schedule__thumb{grid-area:1/1}.schedule__detail{grid-area:1/3}.rsvp-section__inner{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:clamp(56px,9vw,145px)}.rsvp-section__heading{position:sticky;top:40px}.rsvp-form{box-shadow:20px 20px #071b1433}.registry-invite{grid-template-columns:1.08fr .92fr}.registry-invite figure{aspect-ratio:3/2;box-shadow:20px 20px 0 var(--sage-mid)}.hero{min-height:520px}}@media (max-height:500px) and (orientation:landscape){.wedding-hero__title{padding:16px 0 24px}.wedding-hero__eyebrow{margin-bottom:10px}.wedding-hero__date{margin-top:14px}.wedding-hero__scroll{margin-top:18px}}@media (max-width:900px){.registry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:1fr}.detail-layout aside{position:static}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.review-grid{grid-template-columns:1fr}.image-review{max-width:440px}}@media (max-width:640px){.collection{padding:68px 0 84px}.collection-heading{align-items:start;gap:20px}.collection-heading h2{font-size:34px}.registry-grid{grid-template-columns:1fr;gap:48px}.item-card h3{font-size:25px}.site-footer .page-shell{flex-direction:column;gap:20px}.detail-layout{padding-top:24px}.detail-image{margin-inline:calc(var(--gutter) * -1);aspect-ratio:1}.contribution-card{margin-inline:calc(var(--gutter) * -1);padding:28px var(--gutter)}.quantity-row{margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter)}.amount-options{grid-template-columns:repeat(2,1fr)}.prose-page{padding:70px 0 90px}.steps li{grid-template-columns:50px 1fr}.admin-page{width:min(100% - 24px,1180px);padding-top:30px}.admin-topbar nav a{display:none}.admin-title-row{align-items:start}.metric-grid{grid-template-columns:1fr 1fr}.metric-grid article{padding:16px}.dashboard-grid{grid-template-columns:1fr}.url-capture,.item-review{padding:18px}.url-capture>div,.split-fields,.kind-options{grid-template-columns:1fr}.review-actions{flex-direction:column-reverse}.review-actions button{width:100%}}@media (min-width:1400px){.registry-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
