.demo-section{min-height:calc(100vh - 310px);padding:clamp(54px,7vw,104px) 0 clamp(90px,9vw,140px);background:var(--paper)}
.demo-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(40px,8vw,125px);align-items:start}
.demo-intro{padding-top:9px}
.demo-back{display:inline-flex;margin-bottom:clamp(52px,7vw,94px);color:var(--muted);font-size:.86rem;font-weight:700;text-decoration:none}
.demo-back:hover{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.demo-intro h1{max-width:570px;margin-bottom:24px;font-size:clamp(2.6rem,4.5vw,4.2rem);line-height:1.07}
.demo-intro h1 em{color:var(--green)}
.demo-intro>p:not(.eyebrow){max-width:540px;color:var(--muted);font-size:1.06rem}
.demo-aside{display:flex;gap:17px;max-width:490px;margin-top:55px;padding:24px 0;border-top:1px solid var(--line)}
.demo-aside-icon{display:grid;width:40px;height:40px;flex:none;place-items:center;border-radius:50%;background:var(--green-soft);color:var(--green);font-size:1.15rem}
.demo-aside strong{font-size:.9rem}
.demo-aside p{margin:4px 0 0;color:var(--muted);font-size:.88rem}
.demo-panel{padding:clamp(25px,3.5vw,48px);border:1px solid var(--line);border-radius:14px;background:var(--white);box-shadow:var(--shadow)}
.demo-panel-heading{margin-bottom:30px}
.demo-panel-heading h2{margin-bottom:7px;font-size:1.55rem;letter-spacing:-.035em}
.demo-panel-heading p{margin:0;color:var(--muted);font-size:.85rem}
.demo-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.demo-field{min-width:0;margin-bottom:19px}
.demo-field label{display:block;margin-bottom:8px;font-size:.86rem;font-weight:750}
.demo-field label span:not(.demo-optional),.demo-consent label span{color:#a75239}
.demo-optional{color:var(--muted);font-weight:500}
.demo-field input,.demo-field textarea{display:block;width:100%;min-height:50px;padding:13px 14px;border:1px solid #bbc9be;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:.94rem;line-height:1.45;transition:border-color .18s,box-shadow .18s}
.demo-field textarea{resize:vertical}
.demo-field input::placeholder,.demo-field textarea::placeholder{color:#6b7e73}
.demo-field input:focus,.demo-field textarea:focus{outline:2px solid var(--green);outline-offset:2px;border-color:var(--green)}
.demo-field [aria-invalid=true]{border-color:#ad4b3c;background:#fffaf8}
.demo-field-error{margin:7px 0 0;color:#a13d31;font-size:.82rem;line-height:1.45}
.demo-field-short{max-width:260px}
.demo-consent{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;margin:23px 0 25px;padding:20px 0;border-top:1px solid var(--line)}
.demo-consent input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--green)}
.demo-consent label{font-size:.87rem;font-weight:700;line-height:1.5}
.demo-consent p:not(.demo-field-error){margin:5px 0 0;color:var(--muted);font-size:.8rem}
.demo-consent a{color:var(--green);font-weight:700}
.demo-consent .demo-field-error{grid-column:2;margin:0}
.demo-submit{min-width:225px;cursor:pointer;font:inherit;font-size:.9rem}
.demo-error-summary{margin-bottom:24px;padding:15px 18px;border-left:3px solid #a94333;border-radius:5px;background:#faebe5;color:#783b30}
.demo-error-summary strong{font-size:.9rem}
.demo-error-summary p{margin:4px 0 0;font-size:.84rem}
.demo-success{padding:35px 0}
.demo-success-icon{display:grid;width:54px;height:54px;place-items:center;margin-bottom:27px;border-radius:50%;background:var(--green-soft);color:var(--green);font-size:1.5rem}
.demo-success h2{max-width:430px;margin-bottom:10px;font-size:2rem}
.demo-success p{max-width:430px;margin-bottom:25px;color:var(--muted)}
.demo-honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
@media(max-width:850px){.demo-shell{grid-template-columns:1fr;gap:35px}.demo-back{margin-bottom:38px}.demo-intro h1{max-width:670px}.demo-aside{margin-top:28px;padding-bottom:0}.demo-panel{max-width:720px}}
@media(max-width:480px){.demo-section{padding:38px 0 75px}.demo-back{margin-bottom:32px}.demo-intro h1{font-size:clamp(2.45rem,10vw,3.2rem)}.demo-field-row{grid-template-columns:1fr;gap:0}.demo-panel{padding:24px 19px}.demo-panel-heading h2{font-size:1.4rem}.demo-submit{width:100%}.demo-field-short{max-width:none}}
