/* AI Answers: hub and article layout. Uses site.css tokens. */
.ans-hero{padding:72px 0 40px;background:linear-gradient(180deg,#fff 0%,var(--bg-soft) 100%)}
.ans-hero h1{font-size:clamp(2rem,4.4vw,3rem);max-width:860px}
.byline{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;margin-top:18px;font-size:.92rem;color:var(--muted)}
.byline img{width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:50% 15%;border:2px solid var(--cyan)}
.byline b{color:var(--ink)}
.ans-wrap{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;align-items:start;padding:48px 0 80px}
@media(max-width:980px){.ans-wrap{grid-template-columns:1fr}.ans-side{display:none}}
.short-answer{background:#fff;border:1px solid var(--line);border-left:5px solid var(--cyan);border-radius:14px;padding:22px 24px;font-size:1.12rem;color:var(--ink);line-height:1.6;box-shadow:0 10px 30px rgba(20,35,63,.06)}
.short-answer .lbl{display:block;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
.takeaways{margin-top:22px;background:var(--accent-soft);border-radius:14px;padding:20px 24px}
.takeaways h2{font-size:1rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:0 0 10px}
.takeaways ul{list-style:none;display:grid;gap:8px}
.takeaways li{padding-left:26px;position:relative;color:var(--ink-2)}
.takeaways li::before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:800}
details.toc{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 20px}
details.toc summary{font-size:.95rem}
details.toc ol{padding:0 0 18px 20px;display:grid;gap:6px;font-size:.95rem}
.ans-body{margin-top:12px}
.ans-body h2{scroll-margin-top:90px}
.ans-offer{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;background:var(--navy);color:#c9d3e3;border-radius:18px;padding:20px 24px;margin:2em 0}
.ans-offer img{border-radius:12px;margin:0!important;width:100%;aspect-ratio:3/2;object-fit:cover;background:#fff}
.ans-offer b{display:block;color:#fff;font-size:1.15rem;margin-bottom:4px}
.ans-offer .btn{margin-top:12px;text-decoration:none!important}
@media(max-width:600px){.ans-offer{grid-template-columns:1fr}}
.ans-faq{margin-top:2.2em}
.ans-faq>h2{margin-bottom:14px}
.related-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.related-answers a{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;color:var(--ink);font-weight:700;text-decoration:none!important;line-height:1.35}
.related-answers a:hover{border-color:var(--ink)}
.related-answers small{display:block;color:var(--accent);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px}
@media(max-width:760px){.related-answers{grid-template-columns:1fr}}
.author{display:grid;grid-template-columns:84px 1fr;gap:18px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:20px;margin-top:2.4em;background:var(--bg-soft)}
.author img{width:84px;height:84px;border-radius:50%;object-fit:cover;object-position:50% 15%;margin:0!important}
.author b{color:var(--ink);display:block}
.ans-side{position:sticky;top:96px;display:grid;gap:16px}
.side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
.side-card.dark{background:var(--ink);border-color:var(--ink);color:#c9d3e3}
.side-card.dark b{color:#fff}
.side-card b{display:block;color:var(--ink);margin-bottom:6px}
.side-card .phone{display:block;font-size:1.35rem;font-weight:800;color:#fff;margin:6px 0 12px}
.side-card ol{padding-left:18px;font-size:.9rem;display:grid;gap:6px}
/* hub */
.ans-cat{margin-top:44px}
.ans-cat>h2{font-size:1.4rem;margin-bottom:16px}
.qgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(max-width:760px){.qgrid{grid-template-columns:1fr}}
.qcard{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;color:inherit;transition:.15s}
.qcard:hover{border-color:var(--ink);transform:translateY(-2px)}
.qcard h3{font-size:1.06rem;margin-bottom:6px}
.qcard p{font-size:.92rem}
.qcard .rt{font-size:.78rem;color:var(--muted);margin-top:8px;display:block}
.qcard[hidden]{display:none}
