.al-help { border-top: 1px solid var(--c-border); }
.al-help__intro { display:grid; grid-template-columns:1.1fr 1fr; gap:48px; align-items:end; margin-bottom:40px; }
.al-help__intro h2,.al-key-guide h2,.al-faq h2 { font-size:clamp(1.65rem,3.3vw,2.65rem); letter-spacing:-.035em; margin-bottom:20px; }
.al-help__intro p,.al-help__row p,.al-key-guide p,.al-faq p { color:var(--c-text2); }
.al-help__row { display:grid; grid-template-columns:52px 1fr 1.5fr; gap:28px; padding:32px 0; border-top:1px solid var(--c-border); }
.al-help__number { color:var(--c-accent); font-size:.85rem; font-weight:800; padding-top:5px; }
.al-help__row h3 { font-size:1.3rem; line-height:1.45; }
.al-help__row a { font-size:.9rem; font-weight:700; }
.al-key-guide { background:var(--c-surface); }
.al-key-guide__grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; }
.al-key-guide__check { border-left:3px solid var(--c-accent); padding:8px 0 8px 32px; }
.al-key-guide__check h3 { margin-bottom:24px; }
.al-key-guide__check ol { padding-left:22px; }
.al-key-guide__check li { padding:0 0 20px 8px; color:var(--c-text2); }
.al-key-guide__check li::marker { color:var(--c-accent); font-weight:700; }
.al-key-guide__check strong { color:var(--c-text); }
.al-key-guide .al-btn { margin-top:16px; }
.al-faq__grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; align-items:start; }
.al-faq__phone { display:inline-block; font-size:1.5rem; font-weight:800; margin:8px 0 24px; }
.al-faq details { border-bottom:1px solid var(--c-border); }
.al-faq details:first-child { border-top:1px solid var(--c-border); }
.al-faq summary { cursor:pointer; padding:22px 32px 22px 0; font-weight:700; line-height:1.5; position:relative; list-style:none; }
.al-faq summary::-webkit-details-marker { display:none; }
.al-faq summary::after { content:'+'; position:absolute; right:4px; top:20px; color:var(--c-accent); font-size:1.25rem; }
.al-faq details[open] summary::after { content:'−'; }
.al-faq details p { padding:0 26px 12px 0; font-size:.95rem; }
.al-faq summary:focus-visible,.al-help a:focus-visible { outline:2px solid var(--c-accent); outline-offset:4px; }
[id^="service-"],#key-help,#key-cost,#questions { scroll-margin-top:calc(var(--header-h) + 24px); }
.al-services-note { margin-top:24px; max-width:850px; color:var(--c-text2); font-size:.9rem; }
@media(max-width:767px) {
 .al-help__intro,.al-key-guide__grid,.al-faq__grid { grid-template-columns:1fr; gap:24px; }
 .al-help__row { grid-template-columns:32px 1fr; gap:12px; padding:24px 0; }
 .al-help__row>div { grid-column:2; }
 .al-key-guide__check { padding-left:20px; margin-top:16px; }
 .al-help__intro h2,.al-key-guide h2 { overflow-wrap:anywhere; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 .al-hero__slide { transition:none!important; }
 .pulse-dot { animation:none!important; }
}
