/* ==========================================================================
   Keyhan Loans — front-end styles
   Layout follows the reference loan landing pages; colours are Keyhan Kala's.
   Tokens read Elementor globals first, so editing Site Settings → Global
   Colors/Fonts restyles everything. --kk-brand is the per-loan colour.
   ========================================================================== */
:root{
	--kk-primary:var(--e-global-color-kkprimary,var(--e-global-color-primary,#1E5BD8));
	--kk-navy:var(--e-global-color-kknavy,#0B1F4B);
	--kk-bg:var(--e-global-color-kkbg,#F4F6FA);
	--kk-surface:#fff;
	--kk-text:var(--e-global-color-kktext,#0F172A);
	--kk-muted:var(--e-global-color-kkmuted,#5B6474);
	--kk-border:var(--e-global-color-kkborder,#E3E8F1);
	--kk-success:var(--e-global-color-kksuccess,#16A34A);
	--kk-error:var(--e-global-color-kkerror,#DC2626);
	--kk-radius:32px;--kk-radius-sm:16px;--kk-radius-xs:12px;
	--kk-gap:16px;--kk-pad:24px;
	--kk-font:Vazirmatn,var(--e-global-typography-text-font-family,Tahoma),Tahoma,sans-serif;
	--kk-shadow:0 1px 2px rgba(11,31,75,.04),0 8px 24px rgba(11,31,75,.06);
}
.kk,.kk *{box-sizing:border-box}
.kk{min-width:0;max-width:100%}
.elementor-widget-shortcode:has(.kk),.elementor-widget-text-editor.kk-readmore{min-width:0;max-width:100%}
.kk{font-family:var(--kk-font);color:var(--kk-text);direction:rtl;text-align:right;line-height:1.9;font-size:16px;--b:var(--kk-brand,var(--kk-primary));--bi:color-mix(in srgb,var(--b) 62%,#000);--bt:color-mix(in srgb,var(--b) 12%,#fff)}
.kk :where(h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote){margin:0}
.kk img{max-width:100%;height:auto}
.kk a{color:inherit}
.kk-page{display:flex;flex-direction:column;gap:var(--kk-gap)}
.kk-card{background:var(--kk-surface);border-radius:var(--kk-radius);padding:var(--kk-pad);box-shadow:var(--kk-shadow)}
.kk-h2{font-size:24px;line-height:32px;font-weight:700;color:var(--bi);margin-bottom:16px}
.kk-h3{font-size:18px;line-height:24px;font-weight:700;color:var(--bi);margin-bottom:8px}
.kk-center{text-align:center}
.kk-lead{color:var(--kk-muted);font-size:15px;line-height:28px;margin-bottom:16px}
.kk-rich{font-size:16px;line-height:32px;color:rgba(15,23,42,.85)}
.kk-rich p+p,.kk-rich ul,.kk-rich ol{margin-top:12px}
.kk-rich ul,.kk-rich ol{padding-right:22px}
.kk-rich li{margin:4px 0}
.kk-rich h3{font-size:18px;font-weight:700;color:var(--kk-text);margin:8px 0}
.kk-rich a{color:var(--bi);text-decoration:underline;text-underline-offset:3px}
.kk :focus-visible{outline:3px solid color-mix(in srgb,var(--b) 55%,transparent);outline-offset:2px;border-radius:8px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- buttons ---------- */
.kk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:500 15px/1 var(--kk-font);text-decoration:none!important;border-radius:999px;padding:14px 24px;background:var(--bi);color:#fff!important;border:1px solid transparent;transition:filter .2s,transform .2s,background .2s;cursor:pointer;white-space:nowrap}
.kk-btn:hover{filter:brightness(1.08)}
.kk-btn:active{transform:translateY(1px)}
.kk-btn-sm{padding:10px 16px;font-size:13px;border-radius:var(--kk-radius-xs)}
.kk-btn-ghost{background:transparent;color:var(--bi)!important;border-color:var(--kk-border)}
.kk-btn-ghost:hover{background:color-mix(in srgb,var(--b) 8%,#fff)}
.kk-btn .kk-ico{flex:none}

/* ---------- breadcrumb ---------- */
.kk-breadcrumb{font-size:12px;color:#9aa3b2;padding:8px 0;display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.kk-breadcrumb a{color:#9aa3b2;text-decoration:none}
.kk-breadcrumb a:hover{color:var(--kk-primary)}
.kk-breadcrumb [aria-current],.kk-breadcrumb .breadcrumb_last{color:var(--kk-text)}

/* ---------- hero ---------- */
.kk-hero{display:grid;grid-template-columns:1fr 1fr;gap:var(--kk-gap)}
.kk-hero-banner{position:relative;overflow:hidden;border-radius:var(--kk-radius);padding:var(--kk-pad);min-height:260px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(135deg,color-mix(in srgb,var(--b) 70%,#000) 0%,color-mix(in srgb,var(--b) 62%,#000) 55%,color-mix(in srgb,var(--b) 48%,#000) 100%)}
.kk-hero-banner::after{content:"";position:absolute;inset:auto auto -40% -20%;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.18),transparent);pointer-events:none}
.kk-hero-top{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding-bottom:24px}
.kk .kk-hero-logo{height:32px;width:auto;max-width:180px;object-fit:contain}
.kk-hero-logo-chip{background:#fff;border-radius:10px;padding:4px 10px;display:inline-flex}
.kk .kk-hero-logo-chip img{height:24px;width:auto}
.kk-h1{color:#fff;font-weight:300;font-size:32px;line-height:48px}
.kk-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:24px}
.kk-hero-sub{font-weight:300;font-size:26px;line-height:40px}
.kk-hero-bottom .kk-ico{opacity:.9}
.kk-info{background:var(--kk-surface);border-radius:var(--kk-radius);padding:var(--kk-pad);display:flex;flex-direction:column;justify-content:center;box-shadow:var(--kk-shadow)}
.kk-info-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.05)}
.kk-info-row:first-child{padding-top:0}.kk-info-row:last-child{border-bottom:0;padding-bottom:0}
.kk-info-row>.kk-ico{color:var(--bi);flex:none;opacity:.85}
.kk-info-txt{display:flex;flex-direction:column;gap:2px}
.kk-info dt{color:rgba(0,0,0,.5);font-weight:300;font-size:16px;line-height:24px}
.kk-info dd{color:var(--bi);font-weight:500;font-size:24px;line-height:32px}

/* ---------- video ---------- */
.kk-video-frame{position:relative;aspect-ratio:16/9;border-radius:var(--kk-radius);overflow:hidden;background:#000}
.kk-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---------- quick steps ---------- */
.kk-steps-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0}
.kk-step{padding:0 0 0 16px;margin-left:16px;border-left:1px solid #eceef5}
.kk-step:last-child{border-left:0;margin-left:0}
.kk-step-num{display:block;font-size:48px;line-height:48px;font-weight:700;color:var(--bi);opacity:.9;margin-bottom:8px;background:linear-gradient(180deg,var(--b),color-mix(in srgb,var(--b) 15%,#fff));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.kk-step-text{font-size:14px;line-height:24px;color:var(--kk-muted)}
.kk-step-text a{color:var(--bi)}

/* ---------- calculator ---------- */
.kk-calc-plan{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.kk-calc-plan label{font-weight:500;color:var(--kk-muted)}
.kk-calc-select{font:inherit;border:1px solid var(--kk-border);border-radius:var(--kk-radius-xs);padding:10px 14px;background:#fff;min-width:220px}
.kk-calc-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.kk-calc-tab{flex:1 0 auto;min-width:110px;border:0;border-radius:999px;padding:14px 22px;font:400 16px/1 var(--kk-font);cursor:pointer;background:var(--bt);color:var(--bi);transition:background .2s}
.kk-calc-tab[aria-selected=true]{background:var(--bi);color:#fff}
.kk-calc-tab:not([aria-selected=true]):hover{background:color-mix(in srgb,var(--b) 22%,#fff)}
.kk-calc-body{display:grid;grid-template-columns:240px 1fr;gap:16px;margin-top:16px}
.kk-calc-amounts{display:flex;flex-direction:column;gap:8px;border-left:2px solid var(--bi);padding-left:16px;max-height:330px;overflow-y:auto}
.kk-calc-amount{border:0;border-radius:999px;padding:14px 16px;font:400 15px/1 var(--kk-font);cursor:pointer;background:var(--bt);color:var(--bi);text-align:center}
.kk-calc-amount[aria-selected=true]{background:var(--bi);color:#fff}
.kk-calc-result{display:flex;flex-direction:column}
.kk-calc-result>div{display:flex;justify-content:space-between;align-items:center;padding:14px 12px;border-bottom:1px solid #eceef5}
.kk-calc-result>div:last-child{border-bottom:0}
.kk-calc-result dt{color:var(--kk-muted)}
.kk-calc-result dd{font-size:14px;color:var(--kk-muted)}
.kk-calc-result b{font-size:22px;font-weight:500;color:var(--kk-text);margin-left:4px}
.kk-calc-note{font-size:12px;color:#8a93a3;margin-top:12px}
.kk-calc-link{margin-top:12px}

/* ---------- process ---------- */
.kk-collapse>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}
.kk-collapse>summary::-webkit-details-marker{display:none}
.kk-collapse>summary .kk-h2{margin:0}
.kk-collapse-ico{position:relative;width:16px;height:16px;flex:none}
.kk-collapse-ico::before,.kk-collapse-ico::after{content:"";position:absolute;top:7px;right:0;width:16px;height:2px;border-radius:2px;background:var(--b);transition:transform .2s}
.kk-collapse-ico::after{transform:rotate(90deg)}
.kk-collapse[open] .kk-collapse-ico::after{transform:rotate(0)}
.kk-collapse>.kk-lead{margin-top:16px}
.kk-pblock{display:grid;grid-template-columns:1fr;gap:24px;padding:24px 0;border-bottom:1px dashed #eceef5}
.kk-pblock:last-child{border-bottom:0}
.kk-pblock.has-media{grid-template-columns:1.1fr 1fr;align-items:center}
.kk-pblock-text h3{font-size:20px;line-height:30px;color:var(--kk-text)}
.kk-pblock-text strong{color:var(--kk-text)}
.kk-pblock-media{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.kk-pblock-media img{width:150px;max-width:31%;border-radius:20px;box-shadow:0 6px 18px rgba(11,31,75,.12);background:#fff}

/* ---------- conditions ---------- */
.kk-conditions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.kk-checklist{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}
.kk-checklist li{display:flex;gap:8px;align-items:flex-start;line-height:28px}
.kk-checklist .kk-ico{color:var(--bi);flex:none;margin-top:4px}

/* ---------- categories ---------- */
.kk-cats{list-style:none;padding:0;display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
.kk-cats>li{flex:0 0 calc((100% - 40px)/6);scroll-snap-align:start;min-width:104px}
.kk-cats-grid{flex-wrap:wrap;justify-content:center;overflow:visible}
.kk-cats-grid>li{flex:0 0 120px}
.kk-cat{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none!important;padding:8px;border-radius:var(--kk-radius-sm);transition:background .2s}
a.kk-cat:hover{background:color-mix(in srgb,var(--b) 7%,#fff)}
.kk-cat-ico{width:80px;height:80px;border-radius:50%;background:var(--kk-bg);display:grid;place-items:center;overflow:hidden;color:var(--bi)}
.kk-cat-ico img{width:100%;height:100%;object-fit:contain;padding:8px}
.kk-cat-name{font-size:14px;font-weight:500;text-align:center;line-height:22px}

/* ---------- FAQ ---------- */
.kk-faq-list{display:flex;flex-direction:column}
.kk-faq-item{border-bottom:1px solid #eceef5}
.kk-faq-item:last-child{border-bottom:0}
.kk-faq-item>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;cursor:pointer}
.kk-faq-item>summary::-webkit-details-marker{display:none}
.kk-faq-q{font-size:16px;font-weight:500;line-height:26px;color:var(--kk-text)}
.kk-faq-item>summary .kk-ico{flex:none;color:var(--kk-muted);transition:transform .2s}
.kk-faq-item[open]>summary .kk-ico{transform:rotate(180deg);color:var(--bi)}
.kk-faq-item[open]>summary .kk-faq-q{color:var(--bi)}
.kk-faq-a{padding:0 0 16px;font-size:15px;line-height:28px}

/* ---------- related ---------- */
.kk-related-list{list-style:none;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4.2);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
.kk-related-list>li{scroll-snap-align:start}
.kk-related-card{display:flex;flex-direction:column;height:100%;border:1px solid #eceef5;border-radius:var(--kk-radius-xs);overflow:hidden;text-decoration:none!important;background:#fff;transition:box-shadow .2s}
.kk-related-card:hover{box-shadow:var(--kk-shadow)}
.kk-related-card img,.kk-related-ph{width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--kk-bg);display:block}
.kk-related-title{padding:10px 12px;font-size:14px;line-height:24px}

/* ---------- comments ---------- */
.kk-comments-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.kk-comments-head .kk-h2{margin:0}
.kk-badge{border:1px solid #d1d5db;border-radius:999px;padding:2px 10px;font-size:12px;color:#9ca3af}

/* ---------- inline + sticky CTA ---------- */
.kk-cta-inline{display:flex;justify-content:center}
.kk-btn-cta{font-size:20px;font-weight:500;padding:16px 28px 16px 20px;box-shadow:0 10px 24px color-mix(in srgb,var(--b) 35%,transparent);background:var(--bi)}
.kk-sticky-cta{position:sticky;bottom:0;z-index:40;display:flex;justify-content:center;pointer-events:none;padding:24px 16%;background:linear-gradient(rgba(255,255,255,0),#fff);transition:opacity .25s,transform .25s}
.kk-sticky-cta .kk-btn{pointer-events:auto}
.kk-sticky-cta.is-hidden{opacity:0;transform:translateY(16px)}
.kk-sticky-cta.is-hidden .kk-btn{pointer-events:none}

/* ---------- list page: table ---------- */
.kk-table-wrap{background:#fff;border-radius:var(--kk-radius);box-shadow:var(--kk-shadow);overflow:hidden}
.kk-table{width:100%;border-collapse:collapse;font-size:14px}
.kk-table thead th{background:color-mix(in srgb,var(--kk-primary) 18%,#fff);color:var(--kk-navy);font-weight:700;padding:16px 12px;text-align:center;white-space:nowrap}
.kk-table td,.kk-table tbody th{padding:14px 12px;border-top:1px solid #eef1f6;text-align:center;vertical-align:middle;font-weight:400}
.kk-table tbody tr:hover{background:#fafbfe}
.kk-tname{display:flex;align-items:center;gap:8px;text-decoration:none!important;color:var(--bi)!important;font-weight:700;justify-content:flex-start}
.kk-tlogo{width:28px;height:28px;object-fit:contain;border-radius:8px}
.kk-tcredit{color:var(--kk-navy);font-weight:700;white-space:nowrap}
.kk-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:240px;margin:auto}
.kk-ranks{display:inline-flex;gap:4px}
.kk-rank{width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;font-size:11px;font-weight:700;background:#E9F7EF;color:#15803D}
.kk-rank-b{background:#EAF1FF;color:#1D4ED8}.kk-rank-c{background:#FFF4E5;color:#C2410C}.kk-rank-d{background:#FDECEC;color:#B91C1C}
.kk-table tr.is-off{opacity:.6}
.kk-table tr.is-off .kk-tname{color:var(--kk-muted)!important}
.kk-off{display:inline-block;margin-top:4px;border:1px solid var(--kk-border);border-radius:999px;padding:0 8px;font-size:11px;color:var(--kk-muted)}

/* list menu + cards */
.kk-menu-title{font-weight:700;margin-bottom:8px}
.kk-menu{list-style:none;padding:0}
.kk-menu a{display:block;padding:10px 4px;border-bottom:1px solid #f1f2f6;text-decoration:none;font-size:14px}
.kk-menu a:hover,.kk-menu a[aria-current]{color:var(--kk-primary)}
.kk-cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.kk-lcard{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--kk-border);border-radius:var(--kk-radius-sm);padding:16px;text-decoration:none!important;height:100%;transition:border-color .2s,box-shadow .2s}
.kk-lcard:hover{border-color:var(--bi);box-shadow:var(--kk-shadow)}
.kk-lcard-logo img{height:32px;width:auto}
.kk-lcard-name{font-weight:700;color:var(--bi)}
.kk-lcard-credit{font-weight:500}
.kk-lcard-inst{font-size:13px;color:var(--kk-muted)}

/* ---------- homepage / landing loan slider (comparison cards) ---------- */
.kk-plans{position:relative}
.kk-plans-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px 2px 10px;outline:none;-webkit-overflow-scrolling:touch}
.kk-plans-viewport::-webkit-scrollbar{display:none}
.kk-plans-track{display:flex;gap:14px;align-items:stretch}
.kk-plan{flex:0 0 calc((100% - 42px)/4);scroll-snap-align:start;display:flex;flex-direction:column;background:#fff;border:1px solid #E4E9F2;border-radius:16px;overflow:hidden;color:inherit;text-decoration:none!important;transition:box-shadow .2s,border-color .2s;min-width:0;min-height:100%}
.kk-plan:hover{box-shadow:0 10px 28px rgba(14,31,69,.1);border-color:#D5DCEC}
.kk-plan-head{background:#EAF1FF;padding:12px 14px 14px;display:flex;flex-direction:column;gap:10px}
.kk-plan-head-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.kk-plan-brand{display:flex;align-items:center;gap:8px;min-width:0}
.kk-plan-brand-logo{width:28px;height:28px;object-fit:contain;flex:0 0 auto;border-radius:6px;background:#fff}
.kk-plan-brand-name{font-size:15px;font-weight:800;color:var(--kk-primary,#1E5BD8);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kk-plan-chip{flex:0 0 auto;max-width:48%;font-size:11px;font-weight:700;line-height:1.3;color:#fff;background:var(--kk-navy,#0B1F4B);padding:4px 10px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kk-plan-credit{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;padding-top:2px}
.kk-plan-credit-label{font-size:12px;font-weight:500;color:var(--kk-muted,#5B6474);line-height:1.4}
.kk-plan-credit-val{font-size:26px;font-weight:800;line-height:1.25;color:var(--kk-navy,#0B1F4B);letter-spacing:-.02em}
.kk-plan-rows{display:flex;flex-direction:column;padding:0 14px;flex:1}
.kk-plan-row{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-bottom:1px solid #EEF2F8}
.kk-plan-row:last-child{border-bottom:0}
.kk-plan-row-label{font-size:12px;font-weight:500;color:#8B93A7;line-height:1.5}
.kk-plan-row-val{font-size:13px;font-weight:600;color:var(--kk-text,#0F172A);line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kk-plan-row-val .kk-ranks{margin-top:2px}
.kk-plan-cta{display:flex;align-items:center;justify-content:center;margin:12px 14px 14px;height:44px;padding:0 12px;border-radius:12px;background:var(--kk-primary,#1E5BD8);color:#fff!important;font-size:13px;font-weight:700;text-align:center;line-height:1.3}
.kk-plan:hover .kk-plan-cta{filter:brightness(1.06)}
/* Theme button styles (WoodMart/Elementor) must not leak into the arrows, hence the !important resets. */
.kk-plans-stage{position:relative}
.kk.kk-plans .kk-plans-nav{position:absolute!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;margin:0!important;padding:0!important;width:40px!important;height:40px!important;min-width:0!important;min-height:0!important;max-width:none!important;line-height:1!important;font-size:0!important;border-radius:50%!important;border:1px solid #E4E9F2!important;background:#fff!important;color:var(--kk-navy,#0B1F4B)!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer;box-shadow:0 6px 16px rgba(14,31,69,.12)!important;z-index:3;text-transform:none!important;letter-spacing:0!important;transition:background .2s,color .2s,opacity .2s}
.kk.kk-plans .kk-plans-nav:hover,.kk.kk-plans .kk-plans-nav:focus-visible{background:var(--kk-primary,#1E5BD8)!important;color:#fff!important;border-color:var(--kk-primary,#1E5BD8)!important}
.kk.kk-plans .kk-plans-nav[disabled]{opacity:0!important;pointer-events:none}
.kk.kk-plans .kk-prev{right:6px!important;left:auto!important}
.kk.kk-plans .kk-next{left:6px!important;right:auto!important}
.kk.kk-plans .kk-plans-arrow{display:block!important;width:10px;height:10px;border:solid currentColor;border-width:0 2.5px 2.5px 0;border-radius:1px}
.kk.kk-plans .kk-prev .kk-plans-arrow{transform:translateX(-2px) rotate(-45deg)}
.kk.kk-plans .kk-next .kk-plans-arrow{transform:translateX(2px) rotate(135deg)}
.kk-plans-empty{margin:0;padding:20px;text-align:center;color:var(--kk-muted);background:var(--kk-bg);border-radius:14px}
@media (max-width:1100px){.kk-plan{flex-basis:calc((100% - 14px)/2)}.kk-plan-credit-val{font-size:22px}}
@media (max-width:767px){.kk-plan{flex-basis:86%}.kk.kk-plans .kk-plans-nav{display:none!important}.kk-plan-credit-val{font-size:22px}.kk-plan-row{padding:8px 0}}
@media (prefers-reduced-motion:reduce){.kk-plans-viewport{scroll-behavior:auto}.kk-plan{transition:none}}

/* reviews */
.kk-reviews-list{list-style:none;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:16px;overflow-x:auto}
.kk-review{border:1px solid #eceef5;border-radius:var(--kk-radius-sm);padding:20px;text-align:center;display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.kk-review blockquote{font-size:14px;line-height:26px}
.kk-review-by span{display:block;font-size:12px;color:var(--kk-muted)}

/* read more (Elementor text widget with CSS class kk-readmore) */
.kk-readmore.is-collapsed>.kk-rm-body{max-height:220px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,transparent);mask-image:linear-gradient(#000 60%,transparent)}
.kk-rm-btn{display:flex;margin:8px auto 0;background:none;border:0;color:var(--kk-primary);font:500 14px var(--kk-font);cursor:pointer;gap:4px;align-items:center}

/* ---------- loan request form (Elementor Pro form with CSS class kk-loan-form) ---------- */
.kk-loan-form .elementor-field-group .elementor-field-label{font-family:var(--kk-font);font-size:14px;font-weight:500;color:#374151}
.kk-loan-form .elementor-field-group .elementor-field-textual{font-family:var(--kk-font);border-radius:var(--kk-radius-xs)!important;border-color:var(--kk-border)!important}
.kk-loan-form .elementor-field-group.elementor-field-required .elementor-field-label::after{color:var(--kk-error)}
.kk-loan-form .kk-field-error{display:block;color:var(--kk-error);font-size:12px;margin-top:4px;font-family:var(--kk-font)}
.kk-loan-form .elementor-field.kk-invalid{border-color:var(--kk-error)!important}
.kk-loan-form input[dir=ltr]{text-align:left}

/* ---------- responsive ---------- */
@media (max-width:1024px){
	.kk-related-list{grid-auto-columns:calc((100% - 32px)/2.6)}
	.kk-cats>li{flex-basis:calc((100% - 24px)/4)}
	.kk-calc-body{grid-template-columns:190px 1fr}
}
@media (max-width:767px){
	:root{--kk-radius:24px;--kk-pad:20px}
	.kk-hero{grid-template-columns:1fr}
	.kk-hero-banner{min-height:200px}
	.kk-h1{font-size:24px;line-height:38px}
	.kk-hero-sub{font-size:20px;line-height:32px}
	.kk-info dd{font-size:20px;line-height:30px}
	.kk-info dt{font-size:14px}
	.kk-h2{font-size:20px;line-height:30px}
	.kk-steps-list{grid-template-columns:1fr}
	.kk-step{border-left:0;margin:0;padding:0 0 12px;margin-bottom:12px;border-bottom:1px solid #eceef5}
	.kk-step:last-child{border-bottom:0;margin-bottom:0}
	.kk-calc-body{grid-template-columns:1fr}
	.kk-calc-amounts{flex-direction:row;overflow-x:auto;border-left:0;border-bottom:2px solid var(--b);padding:0 0 10px;max-height:none}
	.kk-calc-amount{flex:0 0 auto}
	.kk-calc-tab{min-width:auto;padding:12px 16px;font-size:14px}
	.kk-calc-plan{flex-direction:column;align-items:stretch}
	.kk-pblock.has-media{grid-template-columns:1fr}
	.kk-pblock-media img{width:30%}
	.kk-cats>li{flex-basis:calc((100% - 16px)/3);min-width:96px}
	.kk-cat-ico{width:64px;height:64px}
	.kk-related-list{grid-auto-columns:72%}
	.kk-btn-cta{font-size:16px}
	.kk-sticky-cta{padding:16px}
	/* table → stacked cards */
	.kk-table-wrap{background:transparent;box-shadow:none;border-radius:0;overflow:visible}
	.kk-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
	.kk-table,.kk-table tbody,.kk-table tr,.kk-table td,.kk-table tbody th{display:block;width:100%}
	.kk-table tr{background:#fff;border-radius:var(--kk-radius-sm);box-shadow:var(--kk-shadow);margin-bottom:12px;padding:8px 16px}
	.kk-table td,.kk-table tbody th{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;border-top:1px solid #f1f3f8;padding:10px 0}
	.kk-table tbody th{border-top:0;font-size:16px}
	.kk-table td::before{content:attr(data-label);color:var(--kk-muted);font-weight:500;text-align:right;flex:none;max-width:45%}
	.kk-table tbody th::before{content:none}
	.kk-table td:last-child{justify-content:center}
	.kk-table td:last-child::before{content:none}
	.kk-table td:last-child .kk-btn{width:100%}
	.kk-clamp{margin:0;text-align:left;max-width:55%}
}
@media (prefers-reduced-motion:reduce){.kk *{transition:none!important;scroll-behavior:auto!important}}
/* comment form guard (theme styles still apply) */
.kk-comments textarea,.kk-comments input:not([type=checkbox]):not([type=radio]),.kk-comments select{max-width:100%;box-sizing:border-box}
.kk-comments textarea{width:100%}
.kk-comments{overflow-wrap:anywhere}
