:root{--ink:#171713;--muted:#716f66;--paper:#f6f2e9;--card:#fffdf8;--accent:#b8945a;--line:#ded7c9;--soft:#eee7da}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}
body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 85% 5%,rgba(184,148,90,.12),transparent 32%),radial-gradient(circle at 5% 95%,rgba(23,23,19,.06),transparent 28%);pointer-events:none}
.shell{width:min(920px,calc(100% - 32px));margin:0 auto;padding:34px 0 24px;position:relative}.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.brand-mark{width:46px;height:46px;border:1px solid var(--ink);display:grid;place-items:center;font-family:"Playfair Display";font-size:26px}.brand-name{font-weight:700;letter-spacing:.2em;font-size:15px}.brand-sub{font-size:10px;letter-spacing:.24em;color:var(--muted);margin-top:3px}
.card{background:rgba(255,253,248,.95);border:1px solid var(--line);border-radius:24px;min-height:600px;padding:52px 64px;box-shadow:0 20px 70px rgba(36,31,22,.07)}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--accent);text-transform:uppercase;margin-bottom:16px}
h1,h2{font-family:"Playfair Display",serif;line-height:1.05;margin:0 0 18px}h1{font-size:clamp(42px,7vw,68px);max-width:760px}h2{font-size:clamp(32px,5vw,50px);max-width:720px}.lede{font-size:18px;line-height:1.65;color:var(--muted);max-width:680px;margin:0 0 26px}.small{font-size:13px;color:var(--muted);line-height:1.5}
button{font:inherit}.primary{border:0;background:var(--ink);color:#fff;padding:15px 22px;border-radius:999px;font-weight:700;cursor:pointer;transition:.2s}.primary:hover{transform:translateY(-1px);background:#2a2924}.ghost,.link-button{border:0;background:transparent;color:var(--muted);cursor:pointer}.link-button{text-decoration:underline;text-underline-offset:4px;padding:16px 0}.actions{display:flex;align-items:center;gap:22px;margin-top:28px;flex-wrap:wrap}
.agent-box{display:flex;gap:15px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:17px 19px;background:#fff;margin:24px 0 16px}.agent-avatar{width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:"Playfair Display";font-size:22px;flex:0 0 auto}.agent-copy strong,.agent-copy span{display:block}.agent-copy span{font-size:13px;color:var(--muted);margin-top:4px;line-height:1.45}
.composer{border:1px solid var(--line);background:#fff;border-radius:18px;padding:14px}.composer textarea{width:100%;border:0;outline:0;background:transparent;resize:vertical;min-height:100px;font:inherit;font-size:16px;line-height:1.55;padding:5px}.composer .primary{margin-top:8px}.trust{margin-top:5px}
.choices,.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;text-align:left;cursor:pointer;min-height:82px;transition:.18s}.choice:hover,.choice.selected{border-color:var(--ink);box-shadow:0 8px 25px rgba(36,31,22,.06);transform:translateY(-1px)}.choice strong{display:block;font-size:16px}.choice span{display:block;color:var(--muted);font-size:13px;margin-top:5px;line-height:1.4}.compact{grid-template-columns:repeat(3,1fr)}.compact .choice{min-height:auto;text-align:center;padding:14px}
.progress-wrap{margin-bottom:40px}.progress-meta{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:10px}.progress{height:3px;background:var(--soft);border-radius:3px;overflow:hidden}.progress div{height:100%;background:var(--accent);transition:width .35s ease}
.field{margin:25px 0 4px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 2px;font:inherit;font-size:18px;outline:none}.field input:focus,.field textarea:focus{border-color:var(--ink)}.field textarea{min-height:80px;resize:vertical}
.heard{border-left:3px solid var(--accent);padding:5px 0 5px 18px;margin:24px 0}.heard span{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--accent);font-weight:700}.heard p{font-family:"Playfair Display";font-size:20px;line-height:1.45;margin:7px 0}.memory-note{display:inline-block;background:#f2ecdf;border-radius:999px;padding:8px 12px;font-size:12px;color:#5f584c;margin-bottom:18px}
.summary{background:#f2ecdf;border-radius:18px;padding:22px;margin:26px 0}.summary-row{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid rgba(23,23,19,.08);font-size:14px}.summary-row:last-child{border:0}.summary-row span:first-child{color:var(--muted)}.summary-row strong{text-align:right}.success-icon{width:58px;height:58px;border-radius:50%;border:1px solid var(--accent);display:grid;place-items:center;font-size:24px;margin-bottom:24px;color:var(--accent)}
footer{text-align:center;color:var(--muted);font-size:11px;letter-spacing:.06em;padding:22px}
@media(max-width:650px){.shell{width:min(100% - 20px,920px);padding-top:18px}.brand{margin:0 10px 18px}.card{padding:32px 22px;min-height:620px;border-radius:20px}.choices,.service-grid{grid-template-columns:1fr}.compact{grid-template-columns:1fr 1fr 1fr}.actions{justify-content:space-between}.primary{padding:14px 19px}h1{font-size:42px}.lede{font-size:16px}.summary-row{display:block}.summary-row strong{display:block;text-align:left;margin-top:3px}}