/* FAQ: approved elegant layout, 17 September 2026. Scoped to #faq-page. */
#faq-page { --ink:#36372f;--muted:#727468;--green:#555b49;--line:#deded4;--page:#fafaf7;--gold:#9c8147 }
#faq-page * { box-sizing:border-box }
#faq-page { margin:0;background:var(--page);color:var(--ink);font-family:'webfontDIN',Arial,sans-serif;font-size:17px;line-height:1.6 }
#faq-page button, #faq-page input, #faq-page select { font:inherit }
#faq-page button { cursor:pointer }
#faq-page a { color:inherit }
#faq-page svg { fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round }
#faq-page .faqp-wrap { max-width:1220px;margin:auto;padding:0 40px }
#faq-page .faqp-hero { position:relative;isolation:isolate;min-height:520px;display:flex;align-items:center;background:#e7e3d8;overflow:hidden }
#faq-page .faqp-hero-image { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-1 }
#faq-page .faqp-hero-inner { width:100%;padding-top:46px;padding-bottom:46px }
#faq-page .faqp-hero-copy { background:rgba(250,250,246,.96);padding:39px 42px 33px;max-width:540px }
#faq-page .faqp-eyebrow { display:block;font-size:11px;font-weight:500;letter-spacing:.17em;color:var(--gold);line-height:1.5 }
#faq-page .faqp-hero h1 { font-size:61px;font-weight:300;line-height:1.05;letter-spacing:-.035em;margin:18px 0 22px }
#faq-page .faqp-hero-copy p { font-size:17px;line-height:1.7;color:#606356;margin:0;max-width:430px }
#faq-page .faqp-stats { display:flex;align-items:center;gap:22px;border-top:1px solid #d9dcd0;margin-top:26px;padding-top:20px;color:var(--green);font-size:13px }
#faq-page .faqp-stats>span { display:flex;align-items:baseline;gap:6px;white-space:nowrap }
#faq-page .faqp-stats strong { font-size:23px;line-height:1;font-weight:400 }
#faq-page .faqp-stats .faqp-quick-help { align-items:center }
#faq-page .faqp-stats svg { width:17px;height:17px }
#faq-page .faqp-faq-section { padding-top:60px;padding-bottom:70px }
#faq-page .faqp-search-intro { text-align:center }
#faq-page .faqp-search-intro .faqp-eyebrow { color:var(--muted);font-size:10px }
#faq-page .faqp-search-intro h2 { font-size:34px;letter-spacing:-.02em;line-height:1.3;font-weight:400;margin:11px 0 25px }
#faq-page .faqp-search-box { display:flex;align-items:center;gap:15px;max-width:650px;margin:0 auto;background:#fff;border:1px solid #c7cabc;border-radius:3px;padding:0 21px;text-align:left }
#faq-page .faqp-search-box:focus-within { outline:2px solid var(--green);outline-offset:3px }
#faq-page .faqp-search-box svg { width:22px;height:22px;flex:none;color:var(--green) }
#faq-page .faqp-search-box input { min-width:0;width:100%;height:61px;border:0;outline:0;background:none;color:var(--ink);font-size:16px }
#faq-page .faqp-search-box input::placeholder { color:#7c7d73 }
#faq-page .faqp-search-box input::-webkit-search-cancel-button { display:none }
#faq-page .faqp-search-box button { border:0;background:none;font-size:26px;color:var(--green) }
#faq-page .faqp-topic-filter { margin:38px 0 55px;border-bottom:1px solid var(--line) }
#faq-page .faqp-category-buttons { display:flex;flex-wrap:wrap;justify-content:center;column-gap:26px;row-gap:2px }
#faq-page .faqp-category-buttons button { position:relative;display:flex;align-items:center;gap:7px;min-height:48px;color:#737669;font-size:14px;border:0;border-bottom:2px solid transparent;padding:10px 0 13px;background:none }
#faq-page .faqp-category-buttons button:hover { color:var(--ink);border-color:#b0b4a4 }
#faq-page .faqp-category-buttons button[aria-pressed=true] { color:var(--green);border-color:var(--green);font-weight:500 }
#faq-page .faqp-count { font-size:10px;align-self:flex-start;line-height:2.1;color:inherit }
#faq-page .faqp-reading-layout { display:grid;grid-template-columns:235px minmax(0,1fr);gap:72px;align-items:start }
#faq-page .faqp-reading-aside { position:sticky;top:35px;padding-top:4px }
#faq-page .faqp-reading-aside .faqp-eyebrow { font-size:10px }
#faq-page .faqp-reading-aside h2 { font-size:33px;line-height:1.2;letter-spacing:-.025em;font-weight:400;margin:14px 0 20px }
#faq-page .faqp-reading-aside>p { color:var(--muted);font-size:15px;line-height:1.8;margin:0 }
#faq-page .faqp-results-header { display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding-bottom:23px }
#faq-page .faqp-results-header h2 { font-size:25px;line-height:1.3;font-weight:400;letter-spacing:-.015em;margin:0 }
#faq-page .faqp-results-header>span { color:var(--muted);font-size:12px;white-space:nowrap }
#faq-page .faqp-question-group { margin-bottom:35px }
#faq-page .faqp-question-group h3 { margin:0;padding:13px 0;color:var(--gold);font-size:12px;letter-spacing:.045em;font-weight:400;border-bottom:1px solid var(--line) }
#faq-page details { border-bottom:1px solid var(--line) }
#faq-page summary { list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;font-size:20px;line-height:1.45;padding:23px 0;font-weight:400 }
#faq-page summary::-webkit-details-marker { display:none }
#faq-page summary:hover, #faq-page details[open] summary { color:var(--green) }
#faq-page summary svg { flex:none;width:20px;height:20px;color:var(--green) }
#faq-page details[open] summary .faqp-vertical { display:none }
#faq-page .faqp-answer { font-size:16px;line-height:1.9;color:#676a5f;padding:0 35px 25px 0 }
#faq-page .faqp-answer p { margin:0 0 16px;text-align:left }
#faq-page .faqp-answer p:last-child { margin-bottom:0 }
#faq-page .faqp-answer a { color:var(--green);text-underline-offset:3px }
#faq-page .faqp-answer ul, #faq-page .faqp-answer ol { padding-left:23px }
#faq-page .faqp-empty { padding:30px 0;color:var(--muted) }
#faq-page .faqp-contact-line { display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);margin-top:50px;padding-top:45px }
#faq-page .faqp-contact-line h2 { font-size:26px;font-weight:400;letter-spacing:-.015em;margin:12px 0 6px;line-height:1.3 }
#faq-page .faqp-contact-line p { font-size:15px;color:var(--muted);margin:0 }
#faq-page .faqp-contact-line>a { display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:14px;text-decoration:none;border:1px solid #b5b9aa;border-radius:3px;padding:13px 20px;color:var(--green);white-space:nowrap }
#faq-page .faqp-contact-line>a:hover { background:#eff0e9 }
#faq-page .faqp-mobile-select { display:none }
#faq-page .faqp-sr-only { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap }
#faq-page button:focus-visible, #faq-page summary:focus-visible, #faq-page a:focus-visible, #faq-page select:focus-visible { outline:2px solid var(--green);outline-offset:4px }
@media(min-width:1600px){
#faq-page .faqp-hero { min-height:565px }
#faq-page .faqp-hero-copy { max-width:550px }
#faq-page .faqp-hero-image { object-position:center 58% }
}
@media(max-width:1000px){
#faq-page .faqp-wrap { padding-left:28px;padding-right:28px }
#faq-page .faqp-hero-copy { max-width:495px;padding:32px }
#faq-page .faqp-hero h1 { font-size:54px }
#faq-page .faqp-hero-image { object-position:60% center }
#faq-page .faqp-reading-layout { grid-template-columns:195px minmax(0,1fr);gap:40px }
#faq-page .faqp-reading-aside h2 { font-size:29px }
#faq-page .faqp-category-buttons { column-gap:22px }
}
@media(max-width:700px){
#faq-page .faqp-hero { display:flex;flex-direction:column;min-height:0;overflow:visible;background:#f0f0e9 }
#faq-page .faqp-hero-image { position:static;height:225px;object-position:70% 61%;order:2;z-index:auto }
#faq-page .faqp-hero-inner { padding:0;order:1 }
#faq-page .faqp-hero-copy { max-width:none;padding:31px 24px;background:#f0f0e9 }
#faq-page .faqp-hero h1 { font-size:45px;line-height:1.06;margin:14px 0 18px }
#faq-page .faqp-hero-copy p { font-size:16px;max-width:100% }
#faq-page .faqp-stats { gap:23px;padding-top:18px;margin-top:23px;font-size:12px }
#faq-page .faqp-stats strong { font-size:22px }
#faq-page .faqp-wrap.faqp-faq-section { padding:39px 22px 45px }
#faq-page .faqp-search-intro h2 { font-size:28px;margin:10px 0 23px }
#faq-page .faqp-search-intro .faqp-eyebrow { font-size:9px }
#faq-page .faqp-search-box { padding:0 13px;gap:10px }
#faq-page .faqp-search-box input { height:55px;font-size:15px }
#faq-page .faqp-topic-filter { margin:25px 0 31px;padding-bottom:25px }
#faq-page .faqp-category-buttons { display:none }
#faq-page .faqp-mobile-select { display:block }
#faq-page .faqp-mobile-select label { display:block;font-size:12px;color:var(--muted);margin-bottom:8px }
#faq-page .faqp-mobile-select select { width:100%;height:47px;border:1px solid #c7cabc;border-radius:3px;background:#fff;padding:0 12px;font-size:15px;color:var(--green) }
#faq-page .faqp-reading-layout { display:block }
#faq-page .faqp-reading-aside { display:none }
#faq-page .faqp-results-header { padding-bottom:10px }
#faq-page .faqp-results-header h2 { font-size:25px }
#faq-page .faqp-question-group h3 { font-size:11px }
#faq-page summary { font-size:18px;padding:21px 0;gap:18px }
#faq-page .faqp-answer { font-size:15px;padding-right:5px;line-height:1.8 }
#faq-page .faqp-contact-line { align-items:flex-start;flex-direction:column;margin-top:30px;padding-top:33px;gap:23px }
#faq-page .faqp-contact-line h2 { font-size:26px }
#faq-page .faqp-contact-line .faqp-eyebrow { font-size:10px }
#faq-page .faqp-contact-line>a { min-height:48px }
#faq-page .faqp-stats .faqp-quick-help { gap:3px }
}
@media(prefers-reduced-motion:no-preference){
#faq-page .faqp-hero-copy { animation:faqAppear .55s ease-out }
@keyframes faqAppear{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
}
/* Align below the measured shared header, including mobile navigation height. */
#faq-page { margin-top:var(--faqp-header-height, var(--mobile-header-h, 150px)); letter-spacing:0; }
#faq-page [hidden] { display:none !important; }
#faq-page .faqp-reading-aside { top:calc(var(--faqp-header-height, var(--mobile-header-h, 150px)) + 30px); }
#faq-page .faqp-search-intro h2 { font-size:34px !important; font-weight:400 !important; line-height:1.3 !important; }
#faq-page .faqp-reading-aside h2 { font-size:33px !important; font-weight:400 !important; line-height:1.2 !important; }
#faq-page .faqp-results-header h2 { font-size:25px !important; font-weight:400 !important; line-height:1.3 !important; }
#faq-page .faqp-contact-line h2 { font-size:26px !important; font-weight:400 !important; line-height:1.3 !important; }
#faq-page .faqp-retry { display:block; margin-top:18px; padding:10px 18px; min-height:44px; border:1px solid #b5b9aa; border-radius:3px; background:#fff; color:var(--green); }
#faq-page .faqp-answer { overflow-wrap:anywhere; }
#faq-page .faqp-answer a { text-decoration:underline; }
#faq-page .faqp-answer img { max-width:100%; height:auto; }
#faq-page .faqp-answer table { display:block; max-width:100%; overflow:auto; }
@media(max-width:1000px) { #faq-page .faqp-reading-aside h2 { font-size:29px !important; } }
@media(max-width:700px) { #faq-page .faqp-search-intro h2 { font-size:28px !important; } }

