.faq-hero { display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(2.5rem,8vw,8rem); align-items:end; max-width:1280px; margin:0 auto; padding:clamp(4.5rem,10vw,8.5rem) clamp(1.5rem,5vw,5rem) clamp(3.8rem,8vw,6rem); }
.faq-hero h1 { margin-bottom:0; }
.faq-hero > p { max-width:410px; margin:0 0 .4rem; color:var(--ink-soft); }
.faq-section { max-width:1280px; margin:0 auto; padding:clamp(4rem,9vw,7.5rem) clamp(1.5rem,5vw,5rem); border-top:1px solid var(--line); }
.faq-intro { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2.5rem,8vw,7rem); align-items:end; margin-bottom:3.5rem; }
.faq-intro .section-label { margin:0; }
.faq-intro h2 { max-width:690px; margin:0; }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:1.55rem 0; cursor:pointer; color:var(--ink); font:500 clamp(1.3rem,2.1vw,1.8rem)/1.2 var(--serif); list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { flex:0 0 auto; color:var(--gold); font:400 2rem/1 var(--serif); transition:transform 180ms ease; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-list details > div { max-width:680px; padding:0 4rem 1.55rem 0; color:var(--ink-soft); }
.faq-list details p { margin:0; }
.faq-list a { color:var(--ink); text-decoration-color:var(--gold); text-underline-offset:.2rem; }
.faq-contact { display:grid; grid-template-columns:1.1fr auto; gap:3rem; align-items:end; padding:clamp(4rem,8vw,7rem) max(1.5rem,calc((100vw - 1280px)/2 + 5vw)); background:var(--ink); color:var(--paper); }
.faq-contact .section-label,.faq-contact .section-label span { color:var(--gold-light); }
.faq-contact h2 { max-width:620px; margin-bottom:1.2rem; color:var(--paper); }
.faq-contact h2 em { color:var(--gold-light); }
.faq-contact > div > p:not(.section-label) { max-width:560px; margin:0; color:#d8d4cd; }
.faq-actions { display:grid; gap:1.2rem; justify-items:start; }
.faq-contact .button { min-width:245px; background:var(--gold-light); color:var(--ink); }
.faq-phone { color:var(--paper); font-size:.77rem; text-decoration:none; }
.faq-phone span { display:block; margin-top:.2rem; color:var(--gold-light); font:400 1.25rem var(--serif); }
.faq-contact + .disclaimer { max-width:none; margin:0; padding:0 max(1.5rem,calc((100vw - 1280px)/2 + 5vw)) clamp(2.5rem,5vw,4rem); background:var(--ink); color:rgba(244,240,232,.7); font-size:.74rem; }
@media (max-width:760px) { .faq-hero,.faq-intro,.faq-contact { grid-template-columns:1fr; gap:1.7rem; } .faq-hero { padding-top:4.5rem; } .faq-list summary { padding:1.25rem 0; font-size:1.38rem; } .faq-list details > div { padding:0 1.5rem 1.35rem 0; } .faq-contact { align-items:start; } }
