
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f6f3eb;--ink:#272724;--muted:#817a71;--line:#d8d1c7;--red:#a14839;--cream:#fffefa}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body{background:var(--paper);color:var(--ink);font-family:'DM Sans','Avenir Next',Avenir,Arial,sans-serif;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
header nav{display:flex;gap:clamp(14px,3.1vw,46px);align-items:center;justify-content:center;flex-wrap:wrap;padding:34px 16px 31px;border-bottom:1px solid var(--line);font:600 clamp(12px,1.4vw,17px)/1.2 'DM Sans','Avenir Next',sans-serif;letter-spacing:.115em}
header nav span{white-space:nowrap}
header nav .active{color:var(--red);position:relative}
header nav .active:after{content:"";position:absolute;bottom:-11px;left:0;right:0;border-bottom:1px solid var(--red)}
main{margin:0 auto;max-width:870px;padding:clamp(64px,9vw,118px) clamp(20px,5.2vw,52px) 92px}
.kicker{font-weight:700;font-size:10px;letter-spacing:.29em;color:var(--red);text-align:center;margin:0 0 25px}
h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(65px,8.6vw,114px);letter-spacing:-.043em;line-height:.89;text-align:center;margin:0 0 27px}
.subhead{font-size:12px;line-height:1.8;letter-spacing:.045em;color:var(--muted);text-align:center;margin:0 auto 67px;max-width:450px}
.form-wrap{max-width:660px;margin:0 auto}
fieldset{border:0;margin:0 0 29px;padding:0;min-width:0}
legend,label.field-label{display:block;font-weight:700;font-size:11px;line-height:1.4;letter-spacing:.16em;text-transform:uppercase;margin-bottom:13px;color:var(--ink)}
legend{padding:0}
.options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.options label{position:relative;cursor:pointer}
.options input{position:absolute;opacity:0;inset:0}
.options span{display:flex;align-items:center;justify-content:center;min-height:48px;padding:9px 7px;border:1px solid var(--line);font-weight:600;letter-spacing:.1em;font-size:11px;text-align:center;transition:background .18s,color .18s,border-color .18s}
.options input:checked+span{background:#2d2926;border-color:#2d2926;color:#fffefa}
.options input:focus-visible+span{outline:2px solid var(--red);outline-offset:3px}
textarea,input[type=email]{font:400 15px/1.75 'DM Sans','Avenir Next',sans-serif;color:var(--ink);width:100%;background:var(--cream);border:1px solid #cfc6b9;border-radius:0;padding:17px 20px;outline:0;transition:border-color .15s,box-shadow .15s}
textarea{display:block;min-height:235px;resize:vertical}
textarea::placeholder,input::placeholder{color:#ada69d}
textarea:focus,input:focus{border-color:var(--red);box-shadow:0 0 0 2px rgba(161,72,57,.11)}
.field{margin:0 0 28px}
.field-label em{font-style:normal;font-weight:400;color:var(--muted);letter-spacing:.02em;text-transform:none;margin-left:7px}
.field-detail{font-size:11px;line-height:1.7;color:var(--muted);margin:9px 0 0}
.submit{appearance:none;width:100%;border:1px solid #2d2926;background:#2d2926;color:var(--cream);font:700 clamp(13px,1.5vw,16px)/1.3 'DM Sans',sans-serif;letter-spacing:.145em;text-align:center;padding:21px 18px;cursor:pointer;transition:background .2s,border-color .2s,transform .15s}
.submit:hover{background:#8c372c;border-color:#8c372c}
.submit:active{transform:translateY(1px)}
.submit:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.prototype{margin:12px auto 0;text-align:center;font-size:10px;color:#958a7c;letter-spacing:.035em}
.fine-print{max-width:660px;margin:58px auto 0;border-top:1px solid var(--line);padding-top:27px;font-size:13px;line-height:1.9;color:#5e5851}
.fine-print p{margin:0 0 19px}
.fine-print p:last-child{margin-bottom:0}
.fine-print a{color:var(--red)}
footer{border-top:1px solid var(--line);padding:31px 14px 36px;text-align:center;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.18em}
.receipt{margin:0 auto;max-width:660px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:58px 16px 64px}
.receipt h2{font-size:clamp(25px,4vw,43px);font-weight:600;line-height:1.13;letter-spacing:.04em;margin:22px 0 20px}
.receipt p{font-size:13px;line-height:1.8;color:var(--muted);max-width:530px;margin:0 auto 18px}
.receipt .demo-status{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--red);font-weight:700}
.receipt button{border:1px solid var(--ink);color:var(--ink);background:transparent;padding:15px 26px;margin-top:19px;font:600 11px 'DM Sans',sans-serif;letter-spacing:.14em;cursor:pointer}
.receipt button:hover{background:var(--ink);color:white}
@media(max-width:600px){header nav{gap:12px 24px;padding:24px 12px;font-size:12px;line-height:1.5}main{padding:60px 19px 70px}h1{font-size:clamp(53px,11.5vw,84px)}.subhead{margin-bottom:48px}.options span{font-size:9px;letter-spacing:.05em;min-height:48px}.fine-print{font-size:12px;margin-top:42px}.field-label em{display:inline}}
