@font-face{font-family:Cormorant;src:url('/assets/cormorant.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/cormorant-italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Lato;src:url('/assets/sans.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--paper:#f8f4ed;--ink:#332d28;--wine:#742e36;--muted:#736d65;--line:#d3cbc1;--field:#fffdf9;--serif:Cormorant,Georgia,serif;--sans:Lato,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit;text-underline-offset:4px}button,input,textarea{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--wine);outline-offset:4px}.page{width:min(1320px,90%);margin:auto}.header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;text-align:center;text-decoration:none;flex-shrink:0}.brand>span{font-family:var(--serif);font-size:33px;letter-spacing:3.6px;line-height:1.1}.brand small{font-size:8px;letter-spacing:4px;margin-top:7px}.brand b{margin:0 7px}.header nav{display:flex;align-items:center;gap:30px}.note-link{font-size:14px;text-decoration:none}.note-link:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--wine);color:#fffaf4;text-decoration:none;border:1px solid var(--wine);border-radius:2px;min-height:50px;padding:13px 30px;font-size:16px;line-height:1.3;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#5f222a;border-color:#5f222a}.button:active{transform:translateY(1px)}.button:disabled{opacity:.65;cursor:wait}.nav-button{min-height:46px;padding:12px 26px;font-size:15px}.hero{display:grid;grid-template-columns:1.03fr 1fr;gap:48px;padding:15px 0 42px;align-items:center}.hero-copy{padding-bottom:16px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(47px,5.55vw,76px);line-height:1.04;letter-spacing:-1.9px;margin:0 0 38px;white-space:nowrap}h1 em{color:var(--wine);font-weight:400}.hero-copy p{font-size:clamp(17px,1.45vw,21px);line-height:1.48;max-width:570px}.hero-copy p+p{margin-top:26px}.hero-button{margin-top:30px}.hero-copy .thank-you{margin-top:31px;font-size:18px}.hero-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.hero-photo figcaption{text-align:center;font-size:13px;margin-top:12px}.connection{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:44px 0 48px}.letter{padding-top:10px;scroll-margin-top:30px}.letter h2{font-size:clamp(42px,4.5vw,61px);line-height:1.13;letter-spacing:-1.1px;margin-bottom:26px}.letter p{font-size:18px;line-height:1.5;max-width:560px}.letter p+p{margin-top:24px}.letter .signature{font-family:var(--serif);font-size:70px;font-style:italic;color:var(--wine);line-height:1.1;margin-top:24px}.form-section h2{font-size:42px;line-height:1.1;letter-spacing:-.6px}.form-intro{margin-top:3px;font-size:17px}.required-note{font-size:12px;color:var(--muted);margin:20px 0 10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{margin-bottom:13px}.field label{display:block;font-size:13px;margin-bottom:5px}.field label span{color:var(--muted)}input:not([type=checkbox]),textarea{width:100%;border:1px solid var(--line);background:var(--field);border-radius:3px;min-height:45px;padding:10px 13px;color:var(--ink);font-size:16px;line-height:1.4;box-shadow:none}input::placeholder,textarea::placeholder{color:#8b857e;opacity:1}textarea{display:block;min-height:108px;resize:vertical}.consent{display:flex;gap:12px;align-items:flex-start;margin-top:18px;font-size:13px;line-height:1.55;cursor:pointer}.consent input{flex:0 0 auto;width:19px;height:19px;margin:0;accent-color:var(--wine)}.privacy-note{font-size:12px;color:var(--muted);line-height:1.6;margin-top:16px}.submit-button{width:100%;margin-top:18px;min-height:48px}.feedback{border-left:3px solid #5b7050;background:#edf0e6;padding:16px;margin-top:18px;line-height:1.5;font-size:15px}.feedback.error{background:#f6e7e5;border-color:var(--wine)}.feedback a{display:inline-block;margin-top:7px}.footer{border-top:1px solid var(--line);padding:23px 0 26px;display:flex;justify-content:space-between;font-size:12px}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.skip-link{position:absolute;left:16px;top:-100px;padding:12px 18px;background:var(--wine);color:white;z-index:10}.skip-link:focus{top:16px}[hidden]{display:none!important}
/* Secondary pages retain the same restrained typography and spacing. */
.narrow{width:min(740px,90%);margin:0 auto;padding:40px 0 70px}.narrow h1{font-size:58px;white-space:normal;margin:35px 0 25px}.narrow h2{font-size:32px;margin:30px 0 12px}.narrow p{margin:12px 0}.back-link{font-size:14px}.admin-shell{width:min(1080px,90%);margin:40px auto}.admin-shell h1{font-size:54px;white-space:normal;margin-bottom:15px}.admin-login{max-width:440px;margin:35px 0}.admin-tools{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:25px 0}.secondary-button{background:transparent;color:var(--wine)}.secondary-button:hover{color:white}.stats{color:var(--muted)}.message-item{border-top:1px solid var(--line);padding:25px 0}.message-item h2{font-size:30px}.message-item p{margin-top:8px}.message-text{white-space:pre-wrap;overflow-wrap:anywhere}.message-meta{font-size:13px;color:var(--muted);margin-top:5px}.message-details{display:flex;flex-wrap:wrap;gap:12px;font-size:14px}.admin-note{font-size:13px;color:var(--muted)}.unsubscribe-form{margin:30px 0}.empty-state{border-top:1px solid var(--line);padding:35px 0}.admin-shell .field{max-width:440px}
@media(min-width:1440px){.hero{gap:66px}.hero-photo img{max-height:735px}.connection{gap:85px}}
@media(max-width:1000px){.page{width:90%}.header{height:100px}.brand>span{font-size:27px;letter-spacing:2px}.brand small{font-size:7px;letter-spacing:3px}.hero{gap:30px}h1{font-size:4.8vw;letter-spacing:-1px;margin-bottom:24px}.hero-copy p{font-size:16px}.hero-copy p+p{margin-top:18px}.hero-copy .thank-you{font-size:15px;margin-top:23px}.hero-button{margin-top:23px}.connection{gap:35px}.letter p{font-size:16px}.letter h2{font-size:40px}.desktop-break{display:none}.hero-photo figcaption{font-size:11px}}
@media(max-width:720px){html{scroll-padding-top:24px}.page{width:88%}.header{height:96px;gap:14px}.brand>span{font-size:23px;letter-spacing:1.4px}.brand small{font-size:6px;letter-spacing:2px;margin-top:5px}.brand b{margin:0 4px}.note-link{display:none}.header nav{gap:0}.nav-button{font-size:12px;padding:10px 13px;min-height:42px}.hero{grid-template-columns:1fr;gap:32px;padding:24px 0 34px}.hero-copy{padding:0}h1{font-size:clamp(39px,7.3vw,55px);line-height:1.05;letter-spacing:-1.1px;margin-bottom:28px}.hero-copy p{font-size:17px;max-width:none}.hero-copy p+p{margin-top:21px}.hero-copy .thank-you{font-size:15px;margin-top:23px}.hero-button{margin-top:25px}.hero-photo img{aspect-ratio:1;object-position:center}.hero-photo figcaption{font-size:11px}.connection{grid-template-columns:1fr;gap:35px;padding:33px 0 36px}.letter{padding:0}.letter h2{font-size:42px;margin-bottom:19px}.letter p{font-size:16px}.letter p+p{margin-top:18px}.letter .signature{font-size:57px;margin-top:16px}.form-section{border-top:1px solid var(--line);padding-top:31px}.form-section h2{font-size:39px}.form-intro{font-size:16px}.field label{font-size:13px}.form-row{grid-template-columns:1fr;gap:0}.consent{font-size:13px}.privacy-note{font-size:12px}.footer{font-size:11px;padding:22px 0}.narrow h1,.admin-shell h1{font-size:44px}.admin-tools{align-items:stretch;flex-direction:column}.admin-tools .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Review-only palette alternatives. The original palette remains the default. */
:root{--button-bg:var(--wine);--button-ink:#fffaf4;--button-hover:#5f222a;--placeholder:#756f68;--success-bg:#edf0e6;--success-ink:#332d28;--error-bg:#f6e7e5;--error-ink:#332d28}
:root[data-palette="classic"]{color-scheme:dark;--paper:#111110;--ink:#f4f1e9;--wine:#c6a453;--muted:#b9b4a9;--line:#575347;--field:#1b1b19;--button-bg:#b28b2e;--button-ink:#17140d;--button-hover:#c6a453;--placeholder:#b2ada3;--success-bg:#25352a;--success-ink:#e4eee1;--error-bg:#422d2d;--error-ink:#f8e7e2}
:root[data-palette="white-gold"]{--paper:#ffffff;--ink:#222222;--wine:#84651c;--muted:#69645c;--line:#c9c3b7;--field:#fcfbf7;--button-bg:#b28b2e;--button-ink:#17140d;--button-hover:#c6a453;--placeholder:#767065}
:root[data-palette="olive"]{--paper:#f5f2e9;--ink:#2f3529;--wine:#536342;--muted:#646b5b;--line:#b9bdac;--field:#fffdf6;--button-bg:#536342;--button-ink:#ffffff;--button-hover:#3e4c31;--placeholder:#74786d}
:root[data-palette="midnight"]{color-scheme:dark;--paper:#15252e;--ink:#f5ece2;--wine:#d5a579;--muted:#bac7cd;--line:#5f6c74;--field:#20343f;--button-bg:#d5a579;--button-ink:#1d2931;--button-hover:#e5b68b;--placeholder:#b0bfc7;--success-bg:#213d34;--success-ink:#e4eee1;--error-bg:#412f36;--error-ink:#f8e7e2}
.button{background:var(--button-bg);color:var(--button-ink);border-color:var(--button-bg)}.button:hover{background:var(--button-hover);border-color:var(--button-hover)}.secondary-button{background:transparent;color:var(--wine)}.secondary-button:hover{color:var(--button-ink)}input::placeholder,textarea::placeholder{color:var(--placeholder)}.feedback{background:var(--success-bg);color:var(--success-ink)}.feedback.error{background:var(--error-bg);color:var(--error-ink)}
.palette-review{background:#eeeae3;color:#28251f;border-bottom:1px solid #c9c3b9;padding:16px 5%;font:14px/1.4 var(--sans);color-scheme:light}.palette-review-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.palette-review-top strong{font-size:15px}.palette-review-top a{font-size:12px;white-space:nowrap}.palette-options{display:flex;flex-wrap:wrap;gap:8px}.palette-choice{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid #c3bdb2;border-radius:5px;background:#faf8f3;color:#28251f;cursor:pointer;font:13px/1.25 var(--sans);min-height:44px}.palette-choice[aria-pressed=true]{border:2px solid #28251f;padding:8px 11px;background:#ffffff;box-shadow:0 0 0 1px #28251f}.palette-choice:focus-visible{outline:3px solid #466693;outline-offset:3px}.palette-swatches{display:flex;flex-shrink:0;border:1px solid #aca69b;border-radius:50px;overflow:hidden;width:39px;height:18px}.palette-swatches i{display:block;flex:1}.palette-choice[data-choice="classic"] i:first-child{background:#111110}.palette-choice[data-choice="classic"] i:last-child{background:#b28b2e}.palette-choice[data-choice="white-gold"] i:first-child{background:#fff}.palette-choice[data-choice="white-gold"] i:last-child{background:#b28b2e}.palette-choice[data-choice="olive"] i:first-child{background:#f5f2e9}.palette-choice[data-choice="olive"] i:last-child{background:#536342}.palette-choice[data-choice="midnight"] i:first-child{background:#15252e}.palette-choice[data-choice="midnight"] i:last-child{background:#d5a579}.palette-choice[data-choice="original"] i:first-child{background:#f8f4ed}.palette-choice[data-choice="original"] i:last-child{background:#742e36}.palette-description{margin:11px 0 0;font-size:12px;color:#5d574f}
@media(max-width:720px){.palette-review{padding:14px 6%}.palette-options{display:grid;grid-template-columns:1fr 1fr}.palette-choice{font-size:12px;padding:9px 8px}.palette-choice[aria-pressed=true]{padding:8px 7px}.palette-swatches{width:30px;height:16px}.palette-review-top{align-items:flex-start;gap:12px}.palette-review-top strong{font-size:14px}.palette-description{font-size:12px}}
