/* New lead and document surfaces inherit the Euromedic palette and typography. */
.lead-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:clamp(2rem,5vw,5rem); align-items:start; }
.lead-layout>div>p { max-width:48ch; }
.lead-form { min-width:0; padding:clamp(1rem,3vw,2rem); background:var(--surface); border:1px solid var(--line); }
.lead-form fieldset { min-width:0; margin:0 0 1.4rem; padding:0; border:0; }
.lead-form legend { font-weight:600; margin-bottom:.8rem; }
.lead-form label:not(.intent-option) { display:block; margin:.8rem 0 .3rem; }
.lead-form input:not([type=radio]),.lead-form select { width:100%; min-width:0; min-height:48px; padding:.7rem; border:1px solid #848d86; border-radius:3px; background:#fff; color:var(--text); }
.lead-form [hidden] { display:none !important; }
.intent-picker { display:grid; gap:.7rem; }
.intent-option { display:flex; align-items:flex-start; gap:.8rem; padding:1rem; border:1px solid var(--line); cursor:pointer; }
.intent-option:has(input:checked) { border-color:var(--accent); background:#faf0eb; }
.intent-option:has(input:focus-visible) { outline:3px solid var(--accent); outline-offset:3px; }
.intent-option input { width:20px; height:20px; flex:none; margin:.2rem 0 0; accent-color:var(--accent); }
.intent-option strong,.intent-option small { display:block; }
.intent-option small { margin-top:.25rem; color:var(--muted); }
.lead-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.form-status { margin:1rem 0 0; font-size:.95rem; }
.lead-form>.button { width:100%; white-space:normal; }
.lead-form>.form-hint { margin-top:1.25rem; }
.lead-form input:focus-visible,.lead-form select:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.download-list { margin:2rem 0 3rem; }
.download-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1.5rem; align-items:center; padding:1.65rem 0; border-bottom:1px solid var(--line); }
.package-documents .download-list + h3,
.package-documents .download-list + h2,
.package-documents .actions + h3 { margin-top:2.5rem; }
.download-row:first-child { border-top:1px solid var(--line); }
.download-row h3 { margin:0 0 .55rem; font-size:clamp(1.2rem,2vw,1.55rem); }
.download-row p { max-width:65ch; margin-bottom:.5rem; }
.download-row small { color:var(--muted); }
.download-actions { display:flex; gap:.6rem; flex-wrap:wrap; }
.method-points { margin:2rem 0 0; }
.method-points>div { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:2rem; padding:1.5rem 0; border-top:1px solid var(--line); }
.method-points dt { font-family:var(--display); font-size:1.35rem; line-height:1.3; }
.method-points dd { margin:0; max-width:70ch; }
.implementation-steps { counter-reset:steps; list-style:none; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem 3rem; }
.implementation-steps li { counter-increment:steps; padding:1.25rem 0 0; border-top:1px solid var(--line); }
.implementation-steps li::before { content:counter(steps,decimal-leading-zero); display:block; color:var(--accent); font-size:1.2rem; margin-bottom:.75rem; font-variant-numeric:tabular-nums; }
.implementation-steps p { max-width:60ch; }
.faq-topics { display:flex; flex-wrap:wrap; gap:.8rem 1.5rem; padding-bottom:2rem; border-bottom:1px solid var(--line); }
.faq-topics a { padding:.4rem 0; }
.faq-group { margin-top:4rem; scroll-margin-top:8rem; }
.faq-group h2 { font-size:clamp(1.7rem,3vw,2.5rem); }
.lead-section { scroll-margin-top:6rem; }
.lead-anchor { display:block; scroll-margin-top:9rem; }
.lead-form>.form-columns { margin-bottom:1.25rem; }
.lead-links { display:flex; gap:1rem; flex-wrap:wrap; margin:1.5rem 0; }
@media(max-width:800px) { .lead-layout,.method-points>div,.download-row { grid-template-columns:minmax(0,1fr); } .method-points>div { gap:.7rem; } .download-actions .button { flex:1; } }
@media(max-width:480px) { .implementation-steps { grid-template-columns:minmax(0,1fr); } .lead-form .form-columns { display:block; } .download-actions { flex-direction:column; } .lead-links .button { width:100%; } }
@media(prefers-reduced-motion:reduce) { .lead-section { scroll-behavior:auto; } }
