/* FAQ reference layout; native details provide keyboard-accessible dropdowns. */
.faq-page {background:var(--paper);color:var(--ink);}
.faq-hero {display:flex;align-items:center;width:100%;aspect-ratio:2 / 1;background:linear-gradient(90deg,rgba(5,34,27,.82),rgba(5,34,27,.45) 60%,rgba(5,34,27,.18)),url('assets/faq-library.jpg') center/cover no-repeat;color:#fff8ef;}
.faq-hero > div {width:100%;padding:32px 8vw;}
.faq-hero .eyebrow {color:#e5c18d;margin-bottom:24px;}
.faq-hero h1 {font-family:var(--serif);font-weight:500;letter-spacing:-.045em;margin:0 0 30px;}
body main.faq-page .faq-hero p:last-child {font-size:19.25px!important;line-height:1.45!important;font-family:var(--serif);max-width:680px;}
.faq-questions {background:var(--cream);padding:110px 8vw;}
.faq-accordion {width:57%;margin-left:auto;}
.faq-accordion details {border-top:1px solid var(--line);}
.faq-accordion details:last-child {border-bottom:1px solid var(--line);}
.faq-accordion summary {position:relative;cursor:pointer;list-style:none;padding:26px 30px 26px 0;font:500 24px/1.25 var(--serif);}
.faq-accordion summary::-webkit-details-marker {display:none;}
.faq-accordion summary::after {content:'+';position:absolute;right:0;top:26px;color:var(--copper);font:500 22px/1.25 var(--sans);}
.faq-accordion details[open] summary::after {content:'−';}
.faq-accordion summary:focus-visible {outline:2px solid var(--copper);outline-offset:4px;}
body main.faq-page .faq-accordion details > p {font-size:13px!important;line-height:1.8!important;color:var(--muted);margin:0;padding:0 24px 28px 0;}
.faq-policies {padding:110px 8vw;}
.faq-policies h2 {font-family:var(--serif);font-weight:500;letter-spacing:-.035em;margin:28px 0;}
.faq-policies > p:last-of-type {color:var(--muted);}
.faq-policy-grid {margin-top:55px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);}
.faq-policy-grid article {padding:34px;min-height:210px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);}
body main.faq-page .faq-policy-grid h3 {font:500 24px/1.2 var(--serif)!important;margin:0 0 18px;}
body main.faq-page .faq-policy-grid p {font-size:13px!important;line-height:1.8!important;color:var(--muted);margin:0;}
.faq-cta {background:var(--copper);color:#fff8ef;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:90px 8vw;}
.faq-cta .eyebrow {color:#efcfaa;}
body main.faq-page .faq-cta h2 {font:500 clamp(27.2px,3.2vw,43.2px)/1.02 var(--serif)!important;letter-spacing:-.04em;margin:24px 0;}
.faq-cta p:last-child {font-family:var(--serif);margin:0;}
.faq-cta > .btn {flex-shrink:0;background:#f7f1e6;color:#062d25;border:0;min-width:165px;min-height:48px;padding:16px 22px;}
@media(max-width:900px) {.faq-accordion {width:75%;}.faq-policy-grid article {padding:24px;}}
@media(max-width:760px) {
.faq-hero {aspect-ratio:3 / 4;}
.faq-hero > div {padding:24px 8vw;}
body main.faq-page .faq-hero p:last-child {font-size:14px!important;}
.faq-questions,.faq-policies,.faq-cta {padding:55px 7vw;}
.faq-accordion {width:100%;}
.faq-accordion summary {font-size:22px;}
.faq-policy-grid {grid-template-columns:1fr;}
.faq-policy-grid article {min-height:0;padding:28px;}
.faq-cta {flex-direction:column;align-items:flex-start;gap:28px;}
}
