/* Kalameh homepage FAQ — isolated, no JS or heavy GPU effects */
.km-home-faq{background:#f9fafc;position:relative;padding:clamp(72px,8vw,118px) 0;color:#121c35;overflow:hidden}
.km-home-faq::before{content:"";pointer-events:none;position:absolute;inset:0;background-image:radial-gradient(#1b3b8230 .8px,transparent .8px);background-size:26px 26px;opacity:.14;mask-image:linear-gradient(90deg,transparent,#000 50%,transparent)}
.km-home-faq-grid{display:grid;grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(35px,6vw,100px);align-items:start;position:relative}
.km-home-faq-intro{min-width:0;text-align:right}.km-home-faq-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#54617d;letter-spacing:.07em;font-weight:750}.km-home-faq-eyebrow span{height:7px;width:7px;border-radius:50%;background:#012bf9}
.km-home-faq-intro h2{font-size:clamp(1.85rem,2.75vw,2.75rem);line-height:1.48;letter-spacing:-.025em;font-weight:850;margin:18px 0;color:#111827;max-width:530px}
.km-home-faq-intro>p{max-width:430px;font-size:15px;line-height:2;color:#606d85;margin:0 0 22px}
.km-home-faq-picture{max-width:430px;margin:12px 0 24px}.km-home-faq-picture img{display:block;width:100%;height:auto;object-fit:contain;max-height:350px}
.km-home-faq-contact{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid currentColor;padding:8px 0;font-size:14px;font-weight:700;color:#152540;text-decoration:none;transition:color .2s ease}.km-home-faq-contact:hover{color:#012bf9}
.km-home-faq-accordion{display:grid;align-content:start;gap:11px;min-width:0;padding-top:24px}
.km-home-faq-item{background:#eef0f5;border:1px solid transparent;border-radius:21px;overflow:hidden;transition:background-color .2s,border-color .2s}
.km-home-faq-item[open]{background:#dfe6ff;border-color:#cfdaff}
.km-home-faq-item summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 23px;min-height:65px;font-size:15px;font-weight:750;line-height:1.8;color:#19223a;cursor:pointer}
.km-home-faq-item summary::-webkit-details-marker{display:none}.km-home-faq-item summary::marker{content:""}
.km-home-faq-item summary:focus-visible{outline:3px solid #012bf9;outline-offset:-4px;border-radius:18px}
.km-home-faq-question{min-width:0}.km-home-faq-symbol{width:22px;height:22px;flex:none;display:grid;place-items:center;position:relative;color:#012bf9}
.km-home-faq-symbol::before,.km-home-faq-symbol::after{content:"";position:absolute;background:currentColor;border-radius:2px;width:14px;height:2px;transition:transform .2s ease}.km-home-faq-symbol::after{transform:rotate(90deg)}
.km-home-faq-item[open] .km-home-faq-symbol::after{transform:rotate(0)}
.km-home-faq-answer{padding:0 23px 21px}.km-home-faq-answer p{margin:0;line-height:2.12;font-size:14px;color:#425170;overflow-wrap:anywhere}
html[data-km-theme="dark"] .km-home-faq{background:#0f1728;color:#f3f6ff}
html[data-km-theme="dark"] .km-home-faq::before{background-image:radial-gradient(#b5c6ff30 .8px,transparent .8px)}
html[data-km-theme="dark"] .km-home-faq-intro h2{color:#f5f7ff}
html[data-km-theme="dark"] .km-home-faq-intro>p,html[data-km-theme="dark"] .km-home-faq-eyebrow{color:#b7c4dc}
html[data-km-theme="dark"] .km-home-faq-contact{color:#edf3ff}
html[data-km-theme="dark"] .km-home-faq-item{background:#19243a;border-color:#2a3954}
html[data-km-theme="dark"] .km-home-faq-item[open]{background:#203359;border-color:#4261a6}
html[data-km-theme="dark"] .km-home-faq-item summary{color:#f6f8ff}
html[data-km-theme="dark"] .km-home-faq-answer p{color:#c6d3ea}
html[data-km-theme="dark"] .km-home-faq-symbol{color:#86a1ff}
@media(max-width:850px){.km-home-faq-grid{grid-template-columns:1fr;gap:28px}.km-home-faq-intro h2{max-width:none}.km-home-faq-picture{max-width:420px}.km-home-faq-accordion{padding-top:0}}
@media(max-width:540px){.km-home-faq{padding:62px 0}.km-home-faq-intro h2{font-size:clamp(1.7rem,6.5vw,2rem)}.km-home-faq-accordion{gap:9px}.km-home-faq-item{border-radius:16px}.km-home-faq-item summary{padding:15px 17px;font-size:14px;min-height:58px}.km-home-faq-answer{padding:0 17px 18px}.km-home-faq-answer p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.km-home-faq-item,.km-home-faq-symbol::after,.km-home-faq-contact{transition:none}}

/* v1.9.91: stable desktop FAQ layout while open cards expand inside the FAQ list. */
@media (min-width:851px){
 .km-home-faq-accordion{
  height:520px;
  min-height:520px;
  overflow-y:auto;
  overscroll-behavior-y:contain;
  padding:24px 8px 16px 2px;
  scrollbar-width:thin;
  scrollbar-color:#cad6f4 transparent;
  align-content:start;
  grid-auto-rows:max-content;
 }
 .km-home-faq-item{min-height:0}
 html[data-km-theme="dark"] .km-home-faq-accordion{scrollbar-color:#536997 transparent}
}
@media(max-width:850px){
 .km-home-faq-accordion{height:auto;min-height:0;max-height:none;overflow:visible;padding:0}
}
/* Native details transitions where supported, no animation library or layout polling. */
@supports (interpolate-size:allow-keywords){
 .km-home-faq-accordion{interpolate-size:allow-keywords}
 .km-home-faq-item::details-content{height:0;overflow:hidden;opacity:0;transition:height .24s ease,opacity .2s ease,content-visibility .24s allow-discrete}
 .km-home-faq-item[open]::details-content{height:auto;opacity:1}
}
@media(prefers-reduced-motion:reduce){
 .km-home-faq-item::details-content{transition:none}
}
