/* FAQ design refinement: single aligned rows, readable answers and accessible toggles. */
#faq .faq-grid{align-items:start;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:clamp(42px,6vw,90px)}
#faq .faq-grid .intro{position:sticky;top:120px}
#faq .faq-grid .intro h2{font-size:clamp(37px,4.15vw,60px);line-height:1.08;letter-spacing:-.058em;max-width:400px;margin:15px 0 18px}
#faq .faq-grid .intro>p{max-width:345px;font-size:15px;line-height:1.8}
#faq .faq-list{border-top:0;display:grid;gap:10px;min-width:0}
#faq .faq-list details{background:#f9faf5;border:1px solid #dae2d5;border-radius:17px;overflow:hidden;box-shadow:none;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}
#faq .faq-list details[open]{background:#eef3e8;border-color:#b8caae;box-shadow:0 8px 24px rgba(28,47,30,.045)}
#faq .faq-list details:hover{border-color:#9fb58f}
#faq .faq-list summary{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;column-gap:18px;min-height:78px;list-style:none;padding:18px 22px 18px 25px;margin:0;font-size:clamp(15px,1.14vw,17px);font-weight:750;letter-spacing:-.02em;line-height:1.42;color:#1b2a20;cursor:pointer;outline-offset:-4px}
#faq .faq-list summary::-webkit-details-marker{display:none}
#faq .faq-list summary::marker{content:''}
#faq .faq-list summary:after{position:static;content:'+';display:grid;place-items:center;width:32px;height:32px;border:1px solid #ccd9c5;border-radius:50%;background:#f1f5eb;color:#314d31;font-family:Arial,Helvetica,sans-serif;font-size:23px;font-weight:400;line-height:1;transition:background .2s,border-color .2s,transform .2s}
#faq .faq-list details[open] summary:after{content:'−';background:#d9ebad;border-color:#c5d892;color:#233423;transform:rotate(0deg)}
#faq .faq-list summary:hover:after{background:#d7f282;border-color:#d7f282}
#faq .faq-list details>p{display:block;margin:0;padding:0 68px 24px 25px;max-width:100%;color:#59685c;font-size:14px;line-height:1.78;overflow-wrap:break-word}
#faq .faq-list details:not([open])>p{display:none!important}
#faq .faq-list details[open]>p{animation:ipg-faq-appear .24s ease both}
@keyframes ipg-faq-appear{from{opacity:.45;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:980px){#faq .faq-grid{grid-template-columns:1fr;gap:26px}#faq .faq-grid .intro{position:static}#faq .faq-grid .intro h2{max-width:none}#faq .faq-list summary{min-height:74px}}
@media(max-width:640px){#faq .faq-list{gap:9px}#faq .faq-list details{border-radius:14px}#faq .faq-list summary{min-height:68px;padding:15px 14px 15px 17px;column-gap:10px;grid-template-columns:minmax(0,1fr) 30px;font-size:15px}#faq .faq-list summary:after{width:30px;height:30px;font-size:21px}#faq .faq-list details>p{padding:0 18px 19px 17px;font-size:14px;line-height:1.75}}
@media(prefers-reduced-motion:reduce){#faq .faq-list details,#faq .faq-list summary:after,#faq .faq-list details[open]>p{animation:none!important;transition:none!important}}