/* FAQ is a native editable WordPress page; styles stay in the child theme. */
body:has(.pp-faq) .page-title { display:none; }
body:has(.pp-faq) .main-page-wrapper { background:#f5f5f5; padding-top:12px; }
body:has(.pp-faq) .content-layout-wrapper { padding-top:0; }
.pp-faq-page { width:100%; min-width:0; }
.pp-faq { display:grid; grid-template-columns:minmax(0,3.05fr) minmax(260px,1fr); gap:14px; align-items:start; color:#303238; }
.pp-faq-main { background:#fff; border-radius:6px; padding:44px 42px; min-width:0; box-shadow:0 1px 3px #00000010; }
body .main-page-wrapper .pp-faq h1 { font-size:20px!important; font-weight:500!important; line-height:1.5; margin:0 0 20px; }
.pp-faq-group { margin:0 0 38px; }
.pp-faq-group:last-child { margin-bottom:0; }
body .main-page-wrapper .pp-faq-group h2 { font-size:26px!important; font-weight:400!important; line-height:1.7; margin:0 0 18px; }
.pp-faq-group h2:after { content:""; display:block; width:82px; height:6px; border-radius:5px; background:var(--pp-accent,#ed2939); margin-top:8px; }
.pp-faq details { background:#fff; border-radius:4px; box-shadow:0 2px 7px #0000000d; margin:0 0 10px; overflow:hidden; }
.pp-faq details:nth-of-type(odd) { background:#f1f1f1; }
.pp-faq summary { position:relative; display:block; list-style:none; padding:22px 22px 22px 54px; cursor:pointer; font-size:14px; line-height:1.8; font-weight:500; color:#25282c; }
.pp-faq summary::-webkit-details-marker { display:none; }
.pp-faq summary:after { content:""; position:absolute; left:23px; top:29px; width:11px; height:11px; border:solid #41464b; border-width:0 1.5px 1.5px 0; transform:rotate(45deg); }
.pp-faq details[open] > summary:after { transform:rotate(225deg); top:33px; }
.pp-faq summary:focus-visible { outline:2px solid var(--pp-accent,#ed2939); outline-offset:-3px; }
.pp-faq-answer { padding:0 22px 25px; font-size:14px; line-height:2; overflow-wrap:anywhere; }
.pp-faq-answer a { color:var(--pp-accent,#ed2939); font-weight:500; }
.pp-faq-answer a:hover { text-decoration:underline; }
.pp-faq-aside { display:grid; gap:14px; min-width:0; }
.pp-faq-aside section { border-radius:6px; overflow:hidden; box-shadow:0 2px 3px #00000014; }
.pp-faq-guide { position:relative; background:#fff; min-height:300px; padding:22px; }
.pp-faq-guide p { position:relative; z-index:1; font-size:14px; line-height:1.8; margin:0 0 8px; }
.pp-faq-guide > a:not(.pp-faq-button) { position:relative; z-index:1; color:var(--pp-accent,#ed2939); font-size:13px; }
.pp-faq-book { position:relative; width:145px; height:170px; margin:22px 0 -5px auto; background:#f5f5f5; border-right:9px solid #e5e7e9; box-shadow:-12px 12px 18px #00000014; transform:rotate(-14deg); padding:15px; color:#bd424b; }
.pp-faq-book span { display:block; font-size:10px; color:#686d74; margin-bottom:15px; }
.pp-faq-book strong { font-size:20px; font-weight:400; line-height:1.7; }
.pp-faq-book i { display:block; width:54px; height:35px; margin-top:12px; border-block:1px solid #d5d7da; transform:skew(-15deg); }
.pp-faq .pp-faq-button { position:relative; z-index:1; display:inline-flex; align-items:center; gap:16px; padding:9px 18px; border-radius:26px; background:var(--pp-accent,#ed2939); color:#fff; font-size:13px; line-height:1.6; }
.pp-faq-guide .pp-faq-button { margin-top:-18px; }
.pp-faq-drawings { padding:26px 22px; min-height:380px; display:flex; flex-direction:column; justify-content:flex-end; align-items:flex-start; background:linear-gradient(#1c2c3a70,#101e2af5),url('assets/schemes-background.svg') center/cover,#768591; color:#fff; }
.pp-faq-drawings > span { font-size:16px; margin-bottom:auto; }
.pp-faq-drawings h2 { font-size:27px!important; font-weight:400!important; color:#fff; line-height:1.7; margin:22px 0 10px; }
.pp-faq-drawings p { font-size:13px; line-height:1.9; margin-bottom:18px; }
.pp-faq-contact { padding:22px; background:#fff; }
.pp-faq-contact h2 { font-size:18px!important; font-weight:500!important; line-height:1.8; margin:0 0 4px; }
.pp-faq-contact p { margin-bottom:12px; font-size:13px; }
.pp-faq-contact a { display:block; color:var(--pp-accent,#ed2939); font-size:16px; line-height:2; }
.pp-faq-contact small { display:block; color:#757b82; margin-top:12px; font-size:11px; }
@media(max-width:1024px) {
 .pp-faq { grid-template-columns:minmax(0,1fr) 245px; }
 .pp-faq-main { padding:28px 22px; }
 body .main-page-wrapper .pp-faq-group h2 { font-size:23px!important; }
}
@media(max-width:767px) {
 .pp-faq { grid-template-columns:1fr; }
 .pp-faq-main { padding:24px 16px; }
 body .main-page-wrapper .pp-faq-group h2 { font-size:21px!important; }
 .pp-faq summary { padding:18px 16px 18px 42px; font-size:13px; }
 .pp-faq summary:after { left:17px; top:25px; }
 .pp-faq details[open] > summary:after { top:29px; }
 .pp-faq-answer { padding:0 16px 20px; font-size:13px; }
 .pp-faq-guide { min-height:290px; }
 .pp-faq-drawings { min-height:300px; }
}
