:root { --ink:#14231f; --muted:#66736d; --line:#dce3df; --canvas:#eef2ee; --surface:#fff; --sidebar:#17231f; --accent:#a92634; --sage:#557767; --radius:22px; }
* { box-sizing:border-box; }
html { font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--canvas); }
body { min-width:320px; margin:0; background:linear-gradient(135deg,#f3f5f2 0%,#e8eee9 100%); }
button,input,select { font:inherit; }
button,label.secondary-button { cursor:pointer; }
button:focus-visible,input:focus-visible,select:focus-visible { outline:3px solid rgba(169,38,52,.2); outline-offset:2px; }
.site-header { height:82px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 clamp(20px,5vw,72px); border-bottom:1px solid rgba(20,35,31,.1); background:rgba(255,255,255,.87); backdrop-filter:blur(14px); }
.brand { display:flex; align-items:center; gap:12px; color:var(--ink); text-decoration:none; }
.brand-mark { width:43px; height:43px; display:grid; place-items:center; border-radius:50%; background:var(--accent); color:white; font:21px Georgia,serif; box-shadow:inset 0 0 0 5px rgba(255,255,255,.1); }
.brand strong,.brand small { display:block; }
.brand strong { font-size:21px; letter-spacing:.22em; }
.brand small { margin-top:2px; color:#75827c; font-size:10px; letter-spacing:.16em; text-transform:uppercase; }
.secure-pill { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid #d3ddd6; border-radius:999px; color:#52625b; background:white; font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
.secure-pill i { width:7px; height:7px; border-radius:50%; background:#65a778; box-shadow:0 0 0 4px rgba(101,167,120,.12); }
main { max-width:1260px; display:grid; grid-template-columns:minmax(300px,.75fr) minmax(560px,1.25fr); gap:clamp(30px,6vw,86px); align-items:start; padding:clamp(40px,7vw,90px) clamp(20px,5vw,72px) 80px; margin:0 auto; }
.intro { position:sticky; top:125px; padding-top:25px; }
.eyebrow,.step-label { color:var(--accent); font-size:10px; font-weight:850; letter-spacing:.15em; text-transform:uppercase; }
h1 { margin:13px 0 22px; font:500 clamp(48px,7vw,78px)/.9 Georgia,"Times New Roman",serif; letter-spacing:-.055em; }
.intro>p { max-width:490px; color:var(--muted); font-size:16px; line-height:1.7; }
.trust-list { display:grid; gap:17px; margin:34px 0; }
.trust-list>div { display:grid; grid-template-columns:38px 1fr; gap:13px; align-items:start; }
.trust-list>div>span { width:36px; height:36px; display:grid; place-items:center; border:1px solid #c8d3cc; border-radius:50%; color:#456052; font-size:12px; font-weight:800; background:rgba(255,255,255,.55); }
.trust-list p,.trust-list strong,.trust-list small { display:block; margin:0; }
.trust-list strong { font-size:13px; }
.trust-list small { margin-top:3px; color:var(--muted); font-size:11px; line-height:1.45; }
.support-note { padding-top:22px; border-top:1px solid #d1d9d4; font-size:12px!important; }
.form-card,.success-card { overflow:hidden; border:1px solid rgba(20,35,31,.11); border-radius:var(--radius); background:var(--surface); box-shadow:0 25px 70px rgba(21,39,32,.1); }
.demo-warning { display:flex; gap:11px; padding:13px 22px; border-bottom:1px solid #eed7da; background:#fff4f5; color:#6e4a4e; font-size:11px; line-height:1.4; }
.demo-warning strong { color:var(--accent); text-transform:uppercase; letter-spacing:.08em; }
.form-heading { padding:27px 30px 22px; }
.form-heading h2,.success-card h2 { margin:7px 0 6px; font:500 31px Georgia,serif; }
.form-heading p { margin:0; color:var(--muted); font-size:12px; }
form { padding:0 30px 30px; }
.photo-field { display:grid; grid-template-columns:116px 1fr; gap:20px; align-items:center; padding:17px; margin-bottom:22px; border:1px dashed #c9d4cd; border-radius:16px; background:#f8faf8; }
.photo-preview { width:116px; height:116px; display:grid; place-items:center; overflow:hidden; border-radius:16px; background:#e2e9e4; color:#53675d; font-size:32px; }
.photo-preview img { width:100%; height:100%; object-fit:cover; }
.photo-field label { display:block; font-size:13px; font-weight:800; }
.photo-field p { margin:6px 0 11px; color:var(--muted); font-size:11px; line-height:1.45; }
.photo-actions { display:flex; flex-wrap:wrap; gap:7px; }
.secondary-button { min-height:35px; display:inline-flex; align-items:center; justify-content:center; padding:0 11px; border:1px solid #cfd8d2; border-radius:9px; background:white; color:var(--ink); font-size:11px; font-weight:750; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.field.span-2 { grid-column:1/-1; }
.field label { display:block; margin:0 0 6px; color:#65716c; font-size:9px; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.field input,.field select { width:100%; min-height:45px; padding:0 12px; border:1px solid #d3dcd6; border-radius:10px; background:white; color:var(--ink); }
.field small { display:block; margin-top:5px; color:var(--muted); font-size:9px; }
.field.invalid input { border-color:var(--accent); background:#fff8f8; }
.field.invalid small { color:var(--accent); }
.confirmation { display:grid; grid-template-columns:20px 1fr; gap:10px; align-items:start; padding:15px; margin:22px 0; border-radius:12px; background:#f3f6f3; color:#5b6963; font-size:11px; line-height:1.5; }
.confirmation input { width:17px; height:17px; margin:1px 0 0; accent-color:var(--accent); }
.confirmation strong { color:var(--ink); }
.submit-row { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:20px; border-top:1px solid var(--line); }
.submit-row div span,.submit-row div small { display:block; }
.submit-row div span { font-size:11px; font-weight:800; }
.submit-row div small { margin-top:3px; color:var(--muted); font-size:9px; }
.submit-button { min-height:47px; display:inline-flex; align-items:center; gap:14px; padding:0 18px; border:0; border-radius:11px; background:var(--accent); color:white; font-weight:800; }
.submit-button:hover { background:#801a25; }
.success-card { padding:52px; text-align:center; }
.success-icon { width:72px; height:72px; display:grid; place-items:center; margin:0 auto 24px; border-radius:50%; background:#dfece2; color:#416c50; font-size:31px; }
.success-card>p { max-width:500px; margin:14px auto; color:var(--muted); line-height:1.6; }
.receipt { display:flex; justify-content:space-between; gap:15px; padding:15px 17px; margin:26px 0; border-radius:12px; background:#f2f5f2; text-align:left; }
.receipt span { color:var(--muted); font-size:11px; }
.receipt strong { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; }
.success-note { font-size:12px; }
footer { display:flex; justify-content:space-between; gap:20px; padding:22px clamp(20px,5vw,72px); border-top:1px solid rgba(20,35,31,.1); color:#718078; font-size:10px; letter-spacing:.05em; text-transform:uppercase; }
.toast { position:fixed; right:24px; bottom:24px; max-width:340px; padding:13px 17px; border-radius:11px; background:var(--ink); color:white; box-shadow:0 15px 40px rgba(12,25,20,.25); opacity:0; transform:translateY(10px); pointer-events:none; transition:.2s ease; font-size:12px; }
.toast.show { opacity:1; transform:translateY(0); }
[hidden] { display:none!important; }
@media(max-width:900px){ main{grid-template-columns:1fr;max-width:760px}.intro{position:static;padding-top:0}.support-note{display:none}h1 br{display:none}.trust-list{grid-template-columns:repeat(3,1fr)}.trust-list>div{grid-template-columns:1fr}.trust-list small{display:none} }
@media(max-width:620px){.site-header{height:70px}.secure-pill{font-size:0;padding:9px}.secure-pill i{margin:0}main{padding:32px 14px 55px;gap:25px}h1{font-size:49px}.intro>p{font-size:14px}.trust-list{grid-template-columns:1fr;gap:11px}.trust-list>div{grid-template-columns:34px 1fr}.trust-list small{display:block}.form-heading{padding:24px 20px 19px}form{padding:0 20px 22px}.photo-field{grid-template-columns:1fr}.photo-preview{width:100%;height:170px}.form-grid{grid-template-columns:1fr}.field.span-2{grid-column:auto}.submit-row{align-items:stretch;flex-direction:column}.submit-button{width:100%;justify-content:center}.success-card{padding:38px 22px}footer{align-items:flex-start;flex-direction:column}.demo-warning{flex-direction:column;gap:3px}}
