/* FAQ hub — shared Cedar Grove RAL 1015 palette and typography. */
.faqs-page{background:var(--paper)}
.faqs-hero{padding:25px 0 64px;background:var(--cream)}
.faqs-page .breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:10px;color:var(--body);margin-bottom:38px}
.faqs-page .breadcrumb a:hover{text-decoration:underline}
.faqs-page .breadcrumb>span[aria-hidden]{color:#9a8d7b}
.faqs-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}
.faqs-hero .eyebrow{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:1.5px;margin-bottom:21px}
.faqs-hero h1{font-family:var(--serif);font-size:clamp(52px,5.2vw,73px);font-weight:400;line-height:1.13;letter-spacing:-2.5px}
.faqs-hero h1 em{font-weight:400;color:var(--accent)}
.faqs-intro{max-width:430px;padding-top:28px}
.faqs-intro>p:first-child{font-size:17px;line-height:1.85;color:var(--ink)}
.faqs-intro>p+p{font-size:14px;line-height:1.9;margin-top:14px}
.faqs-intro .text-link{font-size:13px;margin-top:23px}
.faqs-directory{background:var(--sand);border-top:1px solid #ddcbb1;border-bottom:1px solid #ddcbb1}
.faqs-directory>.wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-block:23px}
.faqs-directory a{display:flex;align-items:center;gap:15px;padding:5px 24px;border-right:1px solid #cfbda4}
.faqs-directory a:first-child{padding-left:0}
.faqs-directory a:last-child{padding-right:0;border-right:0}
.faq-directory-number{font-size:10px;color:var(--accent);letter-spacing:.08em}
.faqs-directory strong{display:block;font-size:13px;font-weight:500;line-height:1.6}
.faqs-directory small{display:block;font-size:10px;color:var(--body);margin-top:3px}
.faqs-directory .icon{width:18px;height:18px;margin-left:auto;transition:transform .2s}
.faqs-directory a:hover strong{text-decoration:underline;text-underline-offset:4px}
.faqs-directory a:hover .icon{transform:translateX(3px)}
.faq-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:26px;padding-bottom:5px}
.faq-controls>p{font-size:12px}
.faq-controls button{font-size:12px;color:var(--ink);background:transparent;border:0;min-height:44px;padding:7px 0;text-decoration:underline;text-underline-offset:4px}
.faq-controls button:hover{color:var(--accent)}
.faq-section{padding:44px 0 58px;scroll-margin-top:25px}
.faq-section+.faq-section{padding-top:58px;border-top:1px solid var(--line)}
.faq-section:nth-child(even){background:var(--cream)}
.faq-section-grid{display:grid;grid-template-columns:.73fr 1.7fr;gap:83px;align-items:start}
.faq-group-heading{padding-top:2px;max-width:310px}
.faq-group-icon{width:47px;height:47px;border:1px solid #cebaa0;border-radius:50%;display:grid;place-items:center;margin-bottom:21px;background:var(--pale);color:var(--accent)}
.faq-group-icon .icon{width:24px;height:24px}
.faq-group-heading .eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:13px}
.faq-group-heading h2{font-size:35px;line-height:1.25;letter-spacing:-1.2px}
.faq-group-heading>p:last-child{font-size:13px;line-height:1.9;max-width:265px;margin-top:16px}
.faq-list{min-width:0;border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);scroll-margin-top:122px}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:22px;list-style:none;cursor:pointer;padding:22px 0;min-height:78px;color:var(--ink);font-size:16px;font-weight:500;line-height:1.65}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:hover{color:var(--accent)}
.faq-plus{position:relative;width:27px;height:27px;flex-shrink:0;border:1px solid #d1c2ad;border-radius:50%;background:var(--cream)}
.faq-plus::before,.faq-plus::after{content:"";position:absolute;left:8px;right:8px;top:12px;height:1px;background:var(--ink);transition:transform .2s}
.faq-plus::after{transform:rotate(90deg)}
.faq-list details[open] .faq-plus{background:var(--sand);border-color:#bca27f}
.faq-list details[open] .faq-plus::after{transform:rotate(0)}
.faq-answer{padding:0 48px 25px 0;font-size:14px;line-height:1.95;overflow-wrap:anywhere}
.faq-answer strong{color:var(--ink);font-weight:500}
.faq-answer a{color:var(--ink);text-decoration:underline;text-decoration-color:#ad9779;text-underline-offset:3px;text-decoration-thickness:1px}
.faq-answer a:hover{text-decoration-color:var(--ink)}
.faqs-next{background:var(--brand);padding:65px 0 70px;border-top:1px solid #d2b998}
.faqs-next-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}
.faqs-next .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:17px}
.faqs-next h2{font-size:48px;line-height:1.18;letter-spacing:-1.6px}
.faqs-next h2 em{color:var(--accent)}
.faqs-next-grid>div:last-child>p{font-size:14px;line-height:1.9;max-width:470px}
.faqs-next-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:25px}
.faqs-next-actions .button{font-size:13px;gap:21px}
.faqs-next-actions .text-link{font-size:12px;gap:11px}
.faqs-phone{display:inline-block;font-size:12px;margin-top:21px}
.faqs-phone:hover{text-decoration:underline}
@media(max-width:1200px){
 .faqs-hero-grid{gap:65px}.faqs-directory a{padding-inline:18px;gap:12px}.faqs-directory strong{font-size:12px}
 .faq-section-grid{gap:55px;grid-template-columns:.75fr 1.7fr}.faq-group-heading h2{font-size:32px}.faq-list summary{font-size:15px}
 .faqs-next-grid{gap:65px}
}
@media(max-width:980px){
 .faqs-hero{padding:23px 0 47px}.faqs-hero-grid{gap:42px}.faqs-hero h1{font-size:6.2vw;letter-spacing:-2px}.faqs-hero .eyebrow{font-size:8px;letter-spacing:1px}
 .faqs-intro{padding-top:22px}.faqs-intro>p:first-child{font-size:15px}.faqs-intro>p+p{font-size:12px}.faqs-intro .text-link{font-size:12px;margin-top:19px}
 .faqs-directory>.wrap{grid-template-columns:repeat(2,1fr);padding-block:6px}.faqs-directory a{padding:17px 23px}.faqs-directory a:first-child{padding-left:0}.faqs-directory a:nth-child(2){border-right:0;padding-right:0}.faqs-directory a:nth-child(3){padding-left:0;border-top:1px solid #cfbda4}.faqs-directory a:last-child{border-top:1px solid #cfbda4}.faqs-directory strong{font-size:13px}
 .faq-section-grid{grid-template-columns:.75fr 1.65fr;gap:38px}.faq-group-heading h2{font-size:29px}.faq-group-heading>p:last-child{font-size:12px}.faq-list summary{font-size:14px;gap:17px;min-height:76px;padding-block:21px}.faq-answer{font-size:13px;padding-right:25px}
 .faqs-next-grid{gap:45px}.faqs-next h2{font-size:42px}.faqs-next-grid>div:last-child>p{font-size:13px}.faqs-next-actions{gap:18px}.faqs-next-actions .button{font-size:12px;padding-inline:19px;gap:15px}.faqs-next-actions .text-link{font-size:11px}
}
@media(max-width:760px){
 .faqs-hero{padding:19px 0 36px}.faqs-page .breadcrumb{font-size:9px;margin-bottom:28px}.faqs-hero-grid{grid-template-columns:1fr;gap:22px}.faqs-hero h1{font-size:clamp(45px,11vw,66px);letter-spacing:-2px}.faqs-hero .eyebrow{font-size:8px;letter-spacing:1.15px;margin-bottom:18px}
 .faqs-intro{padding:0;max-width:510px}.faqs-intro>p:first-child{font-size:14px;line-height:1.9}.faqs-intro>p+p{font-size:12px;margin-top:11px}.faqs-intro .text-link{font-size:12px;margin-top:17px}
 .faqs-directory>.wrap{padding-block:3px}.faqs-directory a{padding:16px 13px;gap:10px}.faqs-directory strong{font-size:11px;line-height:1.5}.faqs-directory small{font-size:9px}.faq-directory-number{font-size:8px}.faqs-directory .icon{width:14px;height:14px}
 .faq-controls{padding-top:17px;padding-bottom:0;gap:15px}.faq-controls>p{font-size:10px}.faq-controls button{font-size:11px;flex-shrink:0}
 .faq-section{padding:29px 0 36px;scroll-margin-top:15px}.faq-section+.faq-section{padding-top:36px}.faq-section-grid{grid-template-columns:1fr;gap:25px}
 .faq-group-heading{max-width:100%;display:grid;grid-template-columns:43px 1fr;column-gap:16px;padding:0}.faq-group-icon{height:43px;width:43px;grid-row:1/4;align-self:start;margin:3px 0 0}.faq-group-icon .icon{height:22px;width:22px}.faq-group-heading .eyebrow{font-size:8px;margin-bottom:7px}.faq-group-heading h2{font-size:29px;letter-spacing:-.9px}.faq-group-heading>p:last-child{font-size:12px;max-width:420px;margin-top:12px;grid-column:2}
 .faq-list summary{font-size:14px;min-height:74px;gap:18px;padding-block:20px}.faq-answer{font-size:13px;line-height:1.95;padding:0 12px 23px 0}.faq-plus{width:25px;height:25px}.faq-plus::before,.faq-plus::after{left:7px;right:7px;top:11px}.faq-list details{scroll-margin-top:102px}
 .faqs-next{padding:42px 0 46px}.faqs-next-grid{grid-template-columns:1fr;gap:22px}.faqs-next .eyebrow{font-size:8px;margin-bottom:15px}.faqs-next h2{font-size:41px;letter-spacing:-1.3px}.faqs-next-grid>div:last-child>p{font-size:13px;max-width:460px}.faqs-next-actions{gap:20px;margin-top:23px}.faqs-next-actions .button{min-height:51px;font-size:12px;gap:15px;padding-inline:18px}.faqs-next-actions .text-link{font-size:11px;gap:8px}.faqs-phone{font-size:11px;margin-top:19px}
}
@media(max-width:375px){
 .faqs-directory a{gap:8px;padding-inline:10px}.faqs-directory strong{font-size:10px}.faqs-directory .icon{width:12px;height:12px}.faqs-directory small{font-size:8px}.faq-group-heading{column-gap:13px}.faq-group-heading h2{font-size:27px}.faq-list summary{font-size:13px}.faqs-next-actions{gap:17px}.faqs-next-actions .button{font-size:11px;padding-inline:15px}.faqs-next-actions .text-link{font-size:10px}
}
@media print{
 .topbar,.site-header,.site-footer,.mobile-contact,.faqs-directory,.faq-controls,.faqs-next{display:none!important}.wrap{width:100%;max-width:none}.faqs-hero{padding:0 0 25px;background:white}.faqs-page .breadcrumb{display:none}.faqs-hero-grid{display:block}.faqs-hero h1{font-size:31pt}.faqs-intro{padding-top:14px;max-width:none}.faqs-intro .text-link{display:none}.faq-section,.faq-section+.faq-section{padding:22px 0;background:white}.faq-section-grid{display:block}.faq-group-heading{display:block;max-width:none;margin-bottom:18px}.faq-group-heading h2{font-size:21pt}.faq-group-heading>p:last-child{max-width:none}.faq-group-icon,.faq-group-heading .eyebrow,.faq-plus{display:none}.faq-list summary{font-size:12pt;min-height:0;padding:13px 0 7px;break-after:avoid}.faq-answer{display:block!important;font-size:10pt;padding:0 0 14px;line-height:1.6}.faq-list details::details-content{content-visibility:visible}.faq-list details{break-inside:avoid}.faq-answer a{color:inherit;text-decoration:none}
}
