/* Quiet practical answers on the paper section itself. */
.faq-section{padding:clamp(72px,8vw,112px) 5vw clamp(104px,10vw,144px);scroll-margin-top:96px;background:var(--paper)}
.faq-inner{display:grid;gap:40px;max-width:1100px;margin:0 auto}
.faq-eyebrow{margin:0 0 16px;font:600 12px/1.5 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}
.faq-intro h2{max-width:14ch;font:400 clamp(36px,3.6vw,48px)/1.12 var(--serif);letter-spacing:-.04em;text-wrap:balance}
.faq-support{max-width:32ch;margin-top:20px;font:400 16px/1.7 var(--sans);color:var(--muted);text-wrap:pretty}
.faq-contact{margin-top:28px;font:400 14px/1.65 var(--sans);color:var(--muted)}
.faq-contact a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;color:var(--teal);text-decoration:none;text-underline-offset:4px;text-decoration-thickness:1px}
.faq-contact a:hover{color:var(--action-hover);text-decoration:underline}
.faq-contact a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px;border-radius:2px}
.faq-list{min-width:0;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item>h3{margin:0;font:inherit}
.faq-item>summary,.faq-question{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:76px;padding:24px 0;cursor:pointer;text-align:left;color:var(--ink);list-style:none}
.faq-question{border:0;border-radius:0;background:transparent;font:400 22px/1.4 var(--serif);letter-spacing:-.015em}
.faq-question>span:first-child{min-width:0}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary::marker{content:''}
.faq-item>summary:focus-visible,.faq-question:focus-visible{outline:2px solid var(--focus-ring);outline-offset:5px;border-radius:2px}
.faq-item>summary h3{font:400 22px/1.4 var(--serif);letter-spacing:-.015em}
.faq-item>summary:hover h3,.faq-item[open]>summary h3,.faq-question:hover,.faq-question[aria-expanded="true"]{color:var(--teal)}
.faq-indicator{position:relative;display:block;flex:0 0 32px;width:32px;height:32px;border:1px solid color-mix(in srgb,var(--teal) 22%,transparent);border-radius:50%;color:var(--teal);transition:background-color 200ms ease-out,border-color 200ms ease-out}
.faq-indicator::before,.faq-indicator::after{content:'';position:absolute;background:currentColor}
.faq-indicator::before{width:12px;height:1px;left:50%;top:50%;transform:translate(-50%,-50%)}
.faq-indicator::after{width:1px;height:12px;left:50%;top:50%;transform:translate(-50%,-50%) scaleY(1);transform-origin:center;transition:transform 200ms cubic-bezier(.25,1,.5,1),opacity 180ms ease-out}
.faq-item[open] .faq-indicator::after,.faq-item.is-open .faq-indicator::after{transform:translate(-50%,-50%) scaleY(0);opacity:0}
.faq-item[open] .faq-indicator,.faq-item.is-open .faq-indicator,.faq-item>summary:focus-visible .faq-indicator,.faq-question:focus-visible .faq-indicator{background:var(--brand-10);border-color:var(--brand-200)}
.faq-answer p{max-width:62ch;padding:0 56px 28px 0;font:400 16px/1.7 var(--sans);color:var(--muted);text-wrap:pretty}
@media(hover:hover){
 .faq-item>summary:hover .faq-indicator,.faq-question:hover .faq-indicator{background:var(--brand-10);border-color:var(--brand-200)}
}
/* Intrinsic grid expansion adapts to wrapping and font changes without measured heights. */
.faq-item.is-enhanced .faq-answer{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows 220ms cubic-bezier(.25,1,.5,1),opacity 180ms ease-out,visibility 0s 220ms}
.faq-item.is-enhanced .faq-answer-inner{min-height:0;overflow:hidden}
.faq-item.is-enhanced.is-open .faq-answer{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows 220ms cubic-bezier(.25,1,.5,1),opacity 180ms ease-out,visibility 0s}
@media(min-width:900px){
 .faq-section{padding-inline:4vw}
 .faq-inner{grid-template-columns:minmax(0,.46fr) minmax(0,1fr);gap:clamp(48px,6vw,88px);align-items:start}
 .faq-list{margin-top:12px}
}
@media(max-width:600px){
 .faq-section{padding-inline:6vw;scroll-margin-top:86px}
 .faq-inner{gap:32px}
 .faq-intro h2{font-size:36px}
 .faq-support{max-width:none;margin-top:18px}
 .faq-contact{margin-top:24px}
 .faq-item>summary,.faq-question{gap:20px;padding:22px 0;min-height:76px}
 .faq-item>summary h3,.faq-question{font-size:21px;line-height:1.35}
 .faq-answer p{padding-right:0;padding-bottom:24px}
}
@media(prefers-reduced-motion:reduce){
 .faq-item.is-enhanced .faq-answer,.faq-item.is-enhanced.is-open .faq-answer,.faq-indicator,.faq-indicator::after{transition:none}
}

/* The shorter support paragraph balances the new editorial headline at desktop. */
@media(min-width:1100px){
 .faq-intro h2{max-width:12ch;line-height:1.1}
 .faq-support{max-width:29ch;margin-top:24px}
 .faq-contact{margin-top:26px}
}
