.demo-main { padding-block:64px 88px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:start; }
.demo-main h1,.audience-hero h1 { font-size:clamp(34px,4.2vw,62px); line-height:1.12; letter-spacing:-.03em; margin:16px 0 24px; }
.demo-intro .intro,.audience-hero .intro { font-size:19px; line-height:1.6; max-width:55ch; }
.demo-form { display:grid; gap:12px; padding:28px; border:1px solid var(--line); border-radius:12px; min-width:0; }
.demo-form label { font-weight:600; font-size:14px; }
.demo-form input,.demo-form textarea { width:100%; min-width:0; padding:12px; border:1px solid var(--line); border-radius:6px; background:var(--bg); color:var(--ink); font:inherit; }
.demo-form textarea { resize:vertical; min-height:120px; }
.demo-form .button { justify-self:start; min-height:44px; }
.demo-form [aria-invalid="true"] { border-color:#ab4238; }
.demo-form [disabled] { cursor:wait; opacity:.7; }
.demo-privacy,.demo-status { font-size:14px; line-height:1.6; margin:4px 0; }
.demo-status:empty { display:none; }
.demo-status[data-state="error"] { color:#a23328; }
[data-theme="dark"] .demo-status[data-state="error"] { color:#ffaba0; }
[data-theme="dark"] .demo-form { background:#192016; }
[data-theme="dark"] .demo-form input,[data-theme="dark"] .demo-form textarea { background:#11160f; color:#f7f8f2; border-color:#536348; }
.audience-main { padding-block:64px 88px; }
.audience-hero,.demo-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; }
.audience-art { width:100%; height:auto; object-fit:contain; }
.audience-hero .button { margin-block-start:20px; }
.audience-section { padding-block:56px; border-bottom:1px solid var(--line); scroll-margin-top:110px; }
.audience-section h2 { font-size:clamp(26px,3vw,40px); margin:0 0 24px; }
.audience-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.audience-cards h3 { font-size:22px; margin-block:16px 10px; }
.audience-cards p,.audience-callout p,.audience-price p,.demo-layout p { line-height:1.7; }
.audience-price { padding:32px; margin-block:24px; border:1px solid var(--line); border-radius:12px; }
.audience-price li { margin-block:12px; }
.audience-links { display:flex; flex-wrap:wrap; gap:16px; margin-block:24px; }
@media(max-width:800px) { .demo-main,.audience-hero,.demo-layout { grid-template-columns:minmax(0,1fr); gap:32px; } .audience-art { max-width:520px; justify-self:center; } }
@media(max-width:640px) { .demo-main,.audience-main { padding-block:36px 56px; } .demo-form,.audience-price { padding:20px; } .audience-cards { grid-template-columns:minmax(0,1fr); gap:24px; } .audience-section { padding-block:32px; } }
