
:root{
  --blue:#0964e8; --blue2:#0755c9; --navy:#082766; --green:#18c596;
  --text:#18345f; --muted:#6d7d99; --line:#dce8f6; --soft:#f4f9ff;
  --shadow:0 26px 70px rgba(12,50,108,.12);
  --serif:'Playfair Display',Georgia,serif; --font:'Inter',Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);background:#fff;color:var(--text);overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1500px,calc(100% - 72px));margin:0 auto}
.header{height:76px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1000;backdrop-filter:blur(14px)}
.header__inner{height:100%;display:flex;align-items:center;gap:24px}
.logo{display:flex;align-items:center;gap:12px;min-width:225px}
.logo__mark{width:44px;height:44px;border:4px solid var(--blue);border-radius:13px;display:grid;place-items:center;color:var(--blue)}
.logo__mark svg{width:23px;height:23px}
.logo__text b{display:block;color:var(--blue);font-size:34px;line-height:.85;font-weight:900;letter-spacing:-1.3px}
.logo__text small{display:block;color:var(--blue);font-size:11px;font-weight:900;letter-spacing:2px;margin-top:5px}
.nav{flex:1;display:flex;justify-content:center;gap:24px;white-space:nowrap}
.nav a{font-size:15px;font-weight:800;color:#0b285f}
.nav a:hover{color:var(--blue)}
.header__right{display:flex;align-items:center;gap:14px}
.lang{display:flex;gap:5px;font-weight:900;color:#9aa7bd}
.lang button{border:0;background:none;font:inherit;color:#9aa7bd;cursor:pointer}.lang button.active{color:var(--blue)}
.phone{display:grid;grid-template-columns:42px auto;column-gap:10px;align-items:center;min-width:186px}
.phone__icon{grid-row:1/3;width:42px;height:42px;border-radius:50%;background:#f1f7ff;border:1px solid var(--line);display:grid;place-items:center;color:var(--blue)}
.phone b{font-size:22px;line-height:1;color:#06245e}.phone small{font-size:13px;color:#7787a6}
.burger{display:none;width:42px;height:42px;border:0;background:transparent}.burger span{display:block;height:3px;background:var(--navy);margin:6px 0;border-radius:20px}

/* Home hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(90deg,#fff 0%,#f8fbff 46%,#eaf4fd 100%)}
.hero:before{content:"";position:absolute;top:0;bottom:0;left:31%;right:0;background:url('assets/hero-banner.png') center center/cover no-repeat;z-index:0}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 25%,rgba(255,255,255,.78) 35%,rgba(255,255,255,.32) 47%,rgba(255,255,255,.08) 60%,rgba(255,255,255,.02) 76%);z-index:1}
.hero__grid{min-height:720px;display:grid;grid-template-columns:520px minmax(360px,1fr) 420px;gap:0;position:relative;z-index:2;align-items:start;padding:62px 0 54px}
.hero__content{position:relative;z-index:3}.hero__space{min-height:1px}
.badge{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid #d9e8fa;border-radius:999px;padding:11px 18px;box-shadow:0 18px 35px rgba(9,47,110,.07);font-size:15px;font-weight:800;color:#12326d;margin-bottom:42px}
.badge i{width:8px;height:8px;border-radius:50%;background:var(--green)}
h1{font-family:var(--serif);font-size:62px;line-height:1.04;letter-spacing:-1.7px;color:#0a2865;margin:0 0 27px}
.hero__lead{font-size:18px;line-height:1.52;max-width:470px;margin:0 0 31px;color:#233d70}
.hero__buttons{display:flex;gap:18px;margin-bottom:66px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:58px;border-radius:11px;padding:0 30px;border:0;cursor:pointer;font-weight:900;font-size:17px;transition:.2s}
.btn:hover{transform:translateY(-1px)}.btn:after{content:'→';font-size:22px;line-height:0}
.btn--blue{background:var(--blue);color:#fff;box-shadow:0 16px 30px rgba(11,99,229,.2)}
.btn--ghost{background:#fff;color:var(--blue);border:2px solid var(--blue)}
.btn--green{background:var(--green);color:#fff}.btn--full{width:100%;height:64px}
.hero__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.stat-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#dffaf1;color:var(--green);font-size:19px;margin-bottom:13px}
.stat-icon svg{width:22px;height:22px}
.hero__stats b{display:block;font-size:18px;color:#092967;margin-bottom:7px}.hero__stats small{display:block;color:#7888a6;font-size:15px;line-height:1.35}
.calculator{position:relative;z-index:8;width:420px;max-width:420px;justify-self:start;transform:translateX(-150px);background:#fff;border:1px solid #d7e4f2;border-radius:24px;box-shadow:var(--shadow);padding:34px 32px 28px;margin-top:10px}
.calculator h2{font-size:29px;line-height:1.2;margin:0 0 28px;color:#08265f}.calculator label{display:block;font-size:15px;color:#44577a;font-weight:800;margin:0 0 12px}
.tabs{height:56px;border-radius:999px;border:1px solid #d9e4f2;background:#f6f9fd;padding:5px;display:grid;grid-template-columns:1fr 1fr;margin-bottom:30px}
.tabs button{border:0;border-radius:999px;background:transparent;color:#0a2b6b;font-size:15px;font-weight:900;cursor:pointer}.tabs button.active{background:var(--blue);color:#fff;box-shadow:0 10px 23px rgba(11,99,229,.23)}
.range-block{margin-bottom:27px}.range-head{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:15px;color:#485b7c;font-weight:800;margin-bottom:10px}.range-head b{color:#061f56;font-size:17px}
input[type=range]{width:100%;accent-color:var(--blue)}.scale{display:flex;justify-content:space-between;color:#8593ad;font-size:13px;margin-top:7px}
.rate{display:flex;justify-content:space-between;align-items:baseline;margin:6px 0 20px;font-size:15px;color:#475a7b;font-weight:800}.rate strong{color:var(--green);font-size:28px}.rate em{font-size:15px;font-style:normal}
.payment{border:1.5px solid #f1d6a7;background:#fffcf7;border-radius:14px;text-align:center;padding:19px 10px;margin-bottom:18px}.payment span{display:block;color:#776846;font-size:15px;font-weight:800}.payment b{display:block;color:#092766;font-size:31px;margin-top:6px}.secure{text-align:center;font-size:13px;color:#8494b0;margin:14px 0 0}

.section{padding:48px 0}.section h2{font-size:36px;line-height:1.2;margin:0 0 28px;color:#092967;text-align:center}.section h2 span{color:var(--green)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:0 12px 36px rgba(17,55,105,.05)}
.card h3{font-size:23px;line-height:1.2;margin:0 0 12px;color:#0b2b67}.card p,.card li{color:#5d6f8d;line-height:1.58}.card .icon{width:52px;height:52px;border-radius:16px;background:#e4fbf3;color:var(--green);display:grid;place-items:center;margin-bottom:16px}.card svg{width:26px;height:26px}
.product-card{min-height:185px;background:#fff;border:1px solid #dfe9f5;border-radius:20px;padding:28px 22px;display:grid;grid-template-columns:1fr 170px;align-items:center;box-shadow:0 10px 28px rgba(17,55,105,.04);overflow:hidden}.product-card h3{font-size:22px;line-height:1.2;margin:0 0 10px;color:#0a2b68}.product-card p{color:#637493;font-size:14px;line-height:1.45;margin:0 0 18px}.product-card a,.link-more{color:var(--blue);font-size:14px;font-weight:900}.product-card img{max-height:145px;object-fit:contain;margin-left:auto}
.steps{counter-reset:step}.step-card{position:relative;padding-left:78px}.step-card:before{counter-increment:step;content:counter(step);position:absolute;left:24px;top:26px;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900}
.table-wrap{background:#fff;border:1px solid #dfe8f4;border-radius:18px;overflow:hidden}table{width:100%;border-collapse:collapse}th,td{padding:17px;border-bottom:1px solid #e6edf6;border-right:1px solid #e6edf6;text-align:center;font-size:14px}th:first-child,td:first-child{text-align:left;color:#31476d;font-weight:800}th{background:#fbfdff;color:#0f2c66;font-size:15px}th:nth-child(2){background:var(--green);color:#fff}td:nth-child(2){color:var(--green);font-weight:900}

/* Inner pages */
.page-hero{position:relative;background:linear-gradient(120deg,#f7fbff,#fff);border-bottom:1px solid var(--line);padding:76px 0 58px;overflow:hidden}.page-hero h1{max-width:950px}.page-hero p{font-size:19px;line-height:1.62;color:#445b80;max-width:820px}
.product-hero{background:linear-gradient(120deg,#f7fbff 0%,#fff 62%,#eaf6ff 100%);padding:74px 0;border-bottom:1px solid var(--line)}.product-hero__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.product-hero h1{font-size:58px}.product-hero p{font-size:19px;line-height:1.62;color:#445b80;max-width:740px}.product-hero__visual{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.product-hero__visual img{height:260px;width:100%;object-fit:contain}
.kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.kpi{background:#f8fbff;border:1px solid #e2edf8;border-radius:16px;padding:18px}.kpi b{display:block;color:var(--green);font-size:24px}.kpi span{color:#6e7f9d}
.content-grid{display:grid;grid-template-columns:2fr 420px;gap:28px;align-items:start}.sidebar{position:sticky;top:98px}.list-check{display:grid;gap:12px;padding:0;margin:20px 0}.list-check li{list-style:none;background:#f7fbff;border:1px solid #e1ecf8;border-radius:14px;padding:14px 16px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:12px;padding:18px 20px}.faq summary{font-weight:900;color:#0b2b67;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:'+'}.faq details[open] summary:after{content:'−'}
.blog-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:25px;box-shadow:0 12px 36px rgba(17,55,105,.05)}.blog-card__meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.blog-card__meta span{background:#eef6ff;color:var(--blue);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900}.blog-card h3{font-size:23px;line-height:1.22;margin:0 0 12px;color:#0b2b67}.blog-card p{color:#5d6f8d;line-height:1.58}.article{max-width:920px;margin:0 auto}.article h2{text-align:left;font-size:32px;margin-top:34px}.article p{font-size:18px;line-height:1.75;color:#485e80}
.doc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.doc{display:grid;grid-template-columns:54px 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.doc .icon{width:54px;height:54px;border-radius:16px;background:#eef6ff;color:var(--blue);display:grid;place-items:center}.doc svg{width:25px;height:25px}.doc b{color:#0b2b67}.doc small{display:block;color:#7585a1;margin-top:5px}
.cta{padding:20px 0 54px}.cta__inner{background:linear-gradient(100deg,#0b61de,#0668e9 58%,#04b983);border-radius:18px;padding:30px 38px;display:flex;justify-content:space-between;align-items:center;color:#fff;box-shadow:0 18px 40px rgba(11,99,229,.18)}.cta b{font-size:30px}.cta p{margin:7px 0 0;color:#e9f5ff}
.footer{border-top:1px solid var(--line);background:#fff;padding:36px 0 22px}.footer__grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:34px}.footer .logo{min-width:0;margin-bottom:18px}.footer .logo__mark{width:38px;height:38px;border-width:3px}.footer .logo__text b{font-size:24px}.footer p,.footer a{display:block;color:#647491;font-size:14px;line-height:1.7;margin:0 0 8px}.footer h4{color:#0d2c67;margin:0 0 14px}.copy{padding-top:24px;color:#8b98ae;font-size:13px}

/* Modal */
.modal{position:fixed;inset:0;background:rgba(5,20,48,.58);display:none;align-items:center;justify-content:center;z-index:2000;padding:20px}.modal.open{display:flex}.modal__box{width:min(520px,100%);background:#fff;border-radius:24px;padding:28px;box-shadow:0 30px 100px rgba(0,0,0,.25);position:relative}.modal__close{position:absolute;right:18px;top:16px;border:0;background:#eef6ff;color:#0b2b67;width:36px;height:36px;border-radius:50%;font-size:22px;cursor:pointer}.modal h3{font-size:28px;color:#0b2b67;margin:0 0 10px}.modal p{color:#647592;margin:0 0 18px;line-height:1.5}.form{display:grid;gap:13px}.form input,.form select,.form textarea{width:100%;border:1px solid #dbe7f5;border-radius:13px;height:54px;padding:0 16px;font:600 15px var(--font);outline:none}.form textarea{height:92px;padding-top:14px;resize:vertical}.sms-row{display:none;gap:10px}.sms-row.show{display:grid;grid-template-columns:1fr auto}.error{color:#d73434;font-size:13px;display:none}.success{color:#12966f;font-size:13px;display:none}.form-note{font-size:12px;color:#8190aa}
.thanks{min-height:70vh;display:grid;place-items:center;background:linear-gradient(135deg,#f7fbff,#fff)}.thanks-card{width:min(720px,calc(100% - 32px));background:#fff;border:1px solid var(--line);border-radius:28px;padding:48px;text-align:center;box-shadow:var(--shadow)}.thanks-card .check{width:78px;height:78px;border-radius:50%;background:#ddfbf2;color:var(--green);display:grid;place-items:center;font-size:40px;margin:0 auto 20px}

@media(max-width:1350px){.container{width:min(1220px,calc(100% - 44px))}.nav{gap:14px}.nav a{font-size:14px}.hero__grid{grid-template-columns:430px minmax(330px,1fr) 380px}.calculator{width:380px;max-width:380px;transform:translateX(-115px)}.hero h1,.product-hero h1{font-size:54px}.grid-4{grid-template-columns:repeat(2,1fr)}.blog-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1024px){.nav{display:none}.burger{display:block}.phone b,.phone small{display:none}.phone{min-width:auto}.hero:before,.hero:after{display:none}.hero__grid{display:block;min-height:auto;padding:32px 0}.hero__content:after{content:"";display:block;height:320px;background:url('assets/hero-banner.png') center center/cover no-repeat;border-radius:24px;margin:22px 0;box-shadow:0 20px 50px rgba(20,55,111,.08)}.calculator{width:100%;max-width:none;transform:none}.hero h1{font-size:46px}.hero__stats{gap:15px;margin-bottom:25px}.grid-3,.grid-2,.product-hero__grid,.content-grid,.footer__grid,.doc-grid{grid-template-columns:1fr}.sidebar{position:static}.blog-list{grid-template-columns:1fr}.cta__inner{display:block}.cta .btn{margin-top:20px}}
@media(max-width:640px){.container{width:calc(100% - 24px)}.header{height:68px}.logo{min-width:0}.logo__mark{width:36px;height:36px;border-width:3px}.logo__text b{font-size:24px}.logo__text small{font-size:8px}.lang{display:none}.badge{margin-bottom:25px}h1,.hero h1,.product-hero h1{font-size:38px;line-height:1.08}.hero__buttons{display:grid}.hero__stats{grid-template-columns:1fr 1fr 1fr}.hero__stats b{font-size:13px}.hero__stats small{font-size:11px}.hero__content:after{height:260px}.calculator{border-radius:20px;padding:24px 18px}.product-card{grid-template-columns:1fr 120px;padding:20px}.table-wrap{overflow:auto}table{min-width:720px}.cta__inner{padding:24px}.cta b{font-size:24px}.doc{grid-template-columns:44px 1fr}.btn{font-size:15px;min-height:54px}}

/* FINAL V3 fixes: logo, phones dropdown, main content, quick block */
.logo--image{min-width:185px;display:flex;align-items:center}
.logo__img{width:165px;max-height:62px;object-fit:contain;display:block}
.footer-logo{width:155px;filter:none}
.header .logo__mark,.header .logo__text,.footer .logo__mark,.footer .logo__text{display:none!important}
.phone-dropdown{position:relative}
.phone-main{border:0;background:transparent;display:grid;grid-template-columns:42px auto;column-gap:10px;align-items:center;cursor:pointer;text-align:left;padding:0}
.phone-main b{display:block;font-size:22px;line-height:1;color:#06245e;white-space:nowrap}
.phone-main small{display:block;font-size:13px;color:#7787a6}
.phone-menu{position:absolute;right:0;top:54px;width:220px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:0 22px 60px rgba(17,55,105,.16);display:none;z-index:2000}
.phone-dropdown:hover .phone-menu,.phone-dropdown.open .phone-menu{display:block}
.phone-menu a{display:block;padding:12px 13px;border-radius:12px;color:#0b2b67;font-weight:900}
.phone-menu a:hover{background:#eef6ff;color:var(--blue)}
.header .nav a[href="online-loan.html"]{display:none!important}
#calculator{scroll-margin-top:100px}

.quick-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#ffffff 0%,#f4f9ff 55%,#eaf7ff 100%);border:1px solid #d7e6f5;border-radius:26px;padding:28px;box-shadow:0 24px 70px rgba(12,50,108,.12)}
.quick-card:before{content:"";position:absolute;right:-70px;top:-70px;width:180px;height:180px;border-radius:50%;background:rgba(24,197,150,.14)}
.quick-card:after{content:"";position:absolute;left:-50px;bottom:-65px;width:160px;height:160px;border-radius:50%;background:rgba(9,100,232,.09)}
.quick-card>*{position:relative;z-index:2}.quick-card__icon{width:58px;height:58px;border-radius:18px;background:#e3fbf3;color:var(--green);display:grid;place-items:center;margin-bottom:16px}.quick-card__icon svg{width:30px;height:30px}
.quick-card h3{font-size:28px;line-height:1.15;margin:0 0 12px;color:#082766}.quick-card p{color:#536985;line-height:1.55;margin:0 0 18px}.quick-card .btn{width:100%;margin:4px 0 22px}
.quick-phones{display:grid;gap:10px;margin-top:16px}.quick-phone{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;background:#fff;border:1px solid #e0ebf7;border-radius:14px;color:#0b2b67;font-weight:900}.quick-phone span{color:#18c596;font-size:13px;font-weight:900}
.quick-note{margin-top:14px;padding:13px 14px;border-radius:14px;background:#f8fbff;color:#6a7b99;font-size:13px}
.home-full .panel{min-height:260px}
.bottom-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}
.review{display:grid;grid-template-columns:54px 1fr;gap:12px;margin-bottom:16px}.review img{width:54px;height:54px;border-radius:50%}.review b{display:block;color:#0b2b67}.review small{display:block;color:#7d8ca6;margin:2px 0 8px}.review p{font-size:13px;color:#4b5f80;margin:0 0 6px;line-height:1.45}.review span{color:#ffc03d;letter-spacing:2px}
.doc-row{min-height:58px;border:1px solid #e5edf7;border-radius:14px;display:grid;grid-template-columns:38px 1fr 20px;align-items:center;gap:12px;padding:10px 12px;margin-bottom:12px;color:#0f357a;font-weight:700;background:#fff}.doc-row .icon{width:34px;height:34px;border-radius:10px;background:#eef6ff;display:grid;place-items:center;color:var(--blue)}.doc-row svg{width:19px;height:19px}
.faq-mini details{border-bottom:1px solid #e6edf5;padding:15px 0}.faq-mini summary{cursor:pointer;font-weight:800;color:#0e2d68;list-style:none;display:flex;justify-content:space-between}.faq-mini summary:after{content:'+'}.faq-mini details[open] summary:after{content:'−'}.faq-mini p{color:#647592;font-size:14px;line-height:1.45}
.invest-hero{background:linear-gradient(120deg,#071f57 0%,#0b3b8f 60%,#0bbf91 100%);color:#fff;padding:82px 0;position:relative;overflow:hidden}.invest-hero h1{color:#fff;max-width:900px}.invest-hero p{color:#e7f2ff;max-width:760px;font-size:20px;line-height:1.6}.invest-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px;max-width:760px}.invest-kpis .kpi{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#fff}.invest-kpis .kpi b{color:#fff}.invest-calc{display:grid;grid-template-columns:1fr 420px;gap:28px;align-items:start}.invest-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 14px 40px rgba(17,55,105,.06);margin-bottom:18px}.invest-product{display:grid;grid-template-columns:56px 1fr;gap:18px;align-items:start}.invest-return{background:linear-gradient(145deg,#fff,#f7fbff);border:1px solid #dce8f6;border-radius:26px;padding:30px;box-shadow:var(--shadow)}.invest-income{text-align:center;border:1px solid #f1d6a7;background:#fffdf7;border-radius:18px;padding:20px;margin:22px 0}.invest-income b{display:block;color:#092766;font-size:34px;margin-top:6px}
@media(max-width:1024px){.phone-main b,.phone-main small{display:none}.phone-main{display:block}.phone-menu{right:0}.bottom-grid,.invest-calc,.invest-kpis{grid-template-columns:1fr}.logo__img{width:135px}}


/* ===== V4 FIXES: no duplicates, FAQ wide, animations, calc modal ===== */
@keyframes fadeUp {
  from { opacity:0; transform:translateY(28px); }
  to { opacity:1; transform:translateY(0); }
}
@keyframes softFloat {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(-10px); }
}
@keyframes pulseGlow {
  0%,100% { box-shadow:0 0 0 rgba(24,197,150,0); }
  50% { box-shadow:0 0 34px rgba(24,197,150,.25); }
}
@keyframes chartGrow {
  from { transform:scaleY(.25); opacity:.35; }
  to { transform:scaleY(1); opacity:1; }
}
.hero__content,.calculator,.product-card,.card,.step-card,.panel,.blog-card,.product-hero__visual,.quick-card,.invest-card{
  animation:fadeUp .75s ease both;
}
.product-card:nth-child(2),.card:nth-child(2){animation-delay:.08s}
.product-card:nth-child(3),.card:nth-child(3){animation-delay:.16s}
.product-card:hover,.card:hover,.quick-card:hover,.blog-card:hover{
  transform:translateY(-4px);
  box-shadow:0 28px 80px rgba(12,50,108,.14);
  transition:.25s ease;
}
.btn{
  position:relative;
  overflow:hidden;
}
.btn:before{
  content:"";
  position:absolute;
  top:0;
  left:-120%;
  width:80%;
  height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
  transform:skewX(-18deg);
  transition:.55s ease;
}
.btn:hover:before{left:130%}
.stat-icon,.card .icon,.quick-card__icon{
  animation:pulseGlow 3s ease-in-out infinite;
}

/* FAQ wide instead of documents on main */
.bottom-grid--faq-wide{
  grid-template-columns:.82fr 1.18fr!important;
}
.faq-wide{
  min-height:360px;
}
.faq-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
}
.faq-wide details{
  background:#fff;
  border:1px solid #e7eff8;
  border-radius:14px;
  margin-bottom:12px;
  padding:14px 16px;
}
.faq-wide summary{
  border:0;
}

/* Calculator modal */
.calc-modal .modal__box--calc{
  width:min(620px,100%);
  padding:30px;
}
.calc-modal__head{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:16px;
  align-items:center;
  margin-bottom:18px;
}
.calc-modal__icon{
  width:58px;
  height:58px;
  border-radius:18px;
  background:#e4fbf3;
  color:var(--green);
  display:grid;
  place-items:center;
}
.calc-modal__icon svg{
  width:30px;
  height:30px;
}
.calculator--modal{
  transform:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  box-shadow:none!important;
  border-radius:18px;
  padding:0!important;
  border:0!important;
}
.calculator--modal .payment{
  margin-top:8px;
}

/* Better investment banner */
.invest-hero--premium{
  background:
    radial-gradient(circle at 78% 18%, rgba(24,197,150,.35), transparent 28%),
    radial-gradient(circle at 58% 86%, rgba(9,100,232,.24), transparent 32%),
    linear-gradient(125deg,#061f57 0%,#082d73 52%,#0b9e82 100%);
  min-height:650px;
  display:flex;
  align-items:center;
}
.invest-hero__grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:56px;
  align-items:center;
}
.badge--light{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.25);
  color:#fff;
  backdrop-filter:blur(14px);
}
.btn--light{
  border-color:rgba(255,255,255,.62)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}
.invest-hero__visual{
  position:relative;
  min-height:420px;
}
.invest-visual-card{
  position:absolute;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.7);
  border-radius:28px;
  box-shadow:0 30px 100px rgba(0,0,0,.22);
  color:#082766;
  backdrop-filter:blur(10px);
}
.invest-visual-card--main{
  width:360px;
  min-height:260px;
  right:90px;
  top:40px;
  padding:30px;
  animation:softFloat 5s ease-in-out infinite;
}
.invest-visual-card--main .visual-icon{
  width:62px;
  height:62px;
  border-radius:20px;
  background:#e4fbf3;
  color:var(--green);
  display:grid;
  place-items:center;
  margin-bottom:18px;
}
.invest-visual-card--main svg{width:32px;height:32px}
.invest-visual-card--main b{
  display:block;
  font-size:20px;
  margin-bottom:14px;
}
.invest-visual-card--main strong{
  display:block;
  font-size:58px;
  color:var(--green);
  line-height:1;
}
.invest-visual-card--main small{
  color:#637493;
  font-weight:700;
}
.invest-visual-card--small{
  display:flex;
  align-items:center;
  gap:12px;
  padding:18px 20px;
  min-width:210px;
}
.invest-visual-card--small span{
  width:44px;
  height:44px;
  border-radius:14px;
  background:#eef6ff;
  color:var(--blue);
  display:grid;
  place-items:center;
}
.invest-visual-card--small svg{width:24px;height:24px}
.invest-visual-card--small.one{left:20px;top:95px;animation:softFloat 6s ease-in-out infinite}
.invest-visual-card--small.two{right:20px;bottom:48px;animation:softFloat 5.5s ease-in-out infinite}
.invest-chart{
  position:absolute;
  left:88px;
  bottom:76px;
  height:150px;
  display:flex;
  align-items:end;
  gap:16px;
}
.invest-chart i{
  width:26px;
  border-radius:14px;
  background:linear-gradient(180deg,#6ee7d0,#18c596);
  transform-origin:bottom;
  animation:chartGrow .8s ease both;
}
.invest-chart i:nth-child(1){height:50px;animation-delay:.05s}
.invest-chart i:nth-child(2){height:76px;animation-delay:.12s}
.invest-chart i:nth-child(3){height:102px;animation-delay:.19s}
.invest-chart i:nth-child(4){height:128px;animation-delay:.26s}
.invest-chart i:nth-child(5){height:150px;animation-delay:.33s}

@media(max-width:1024px){
  .bottom-grid--faq-wide,.faq-columns,.invest-hero__grid{
    grid-template-columns:1fr!important;
  }
  .invest-hero__visual{min-height:360px}
  .invest-visual-card--main{right:auto;left:0;top:30px}
  .invest-visual-card--small.two{right:0}
}
@media(max-width:640px){
  .faq-columns{grid-template-columns:1fr}
  .invest-visual-card--main{width:100%;position:relative;left:auto;right:auto;top:auto}
  .invest-visual-card--small,.invest-chart{display:none}
}


/* ===== V5 PAGE BANNERS AND INVEST FIX ===== */
.modal__close{
  z-index:20;
  display:grid;
  place-items:center;
}

.page-hero--visual{
  position:relative;
  padding:88px 0;
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at 78% 22%, rgba(24,197,150,.18), transparent 28%),
    linear-gradient(120deg,#f7fbff 0%,#fff 52%,#eaf6ff 100%);
}
.page-hero--visual:before{
  content:"";
  position:absolute;
  right:8%;
  top:36px;
  width:360px;
  height:220px;
  border-radius:34px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(220,232,246,.8);
  box-shadow:0 30px 90px rgba(12,50,108,.12);
  transform:rotate(-2deg);
}
.page-hero--visual:after{
  content:"";
  position:absolute;
  right:13%;
  bottom:38px;
  width:190px;
  height:110px;
  border-radius:24px;
  background:linear-gradient(135deg,#0964e8,#18c596);
  opacity:.18;
  transform:rotate(6deg);
}
.page-hero--visual .container{
  position:relative;
  z-index:2;
}
.page-hero__label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 16px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dce8f6;
  color:#0964e8;
  font-weight:900;
  margin-bottom:18px;
}
.page-hero__label i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#18c596;
}
.page-hero__actions{
  display:flex;
  gap:14px;
  margin-top:26px;
  flex-wrap:wrap;
}

.invest-hero--premium{
  padding:92px 0!important;
  min-height:0!important;
  background:
    radial-gradient(circle at 78% 18%, rgba(24,197,150,.25), transparent 30%),
    linear-gradient(125deg,#061f57 0%,#083078 55%,#0aa685 100%)!important;
}
.invest-hero__grid{
  display:grid!important;
  grid-template-columns:1fr 460px!important;
  gap:42px!important;
  align-items:center!important;
}
.invest-hero__visual{
  min-height:360px!important;
  position:relative!important;
}
.invest-visual-card--main{
  position:relative!important;
  right:auto!important;
  top:auto!important;
  width:100%!important;
  min-height:280px!important;
  padding:34px!important;
  z-index:3!important;
}
.invest-visual-card--small.one{
  left:-28px!important;
  top:32px!important;
}
.invest-visual-card--small.two{
  right:-20px!important;
  bottom:22px!important;
}
.invest-chart{
  left:42px!important;
  bottom:34px!important;
  z-index:4!important;
}
.invest-visual-card--main strong{
  font-size:54px!important;
}

@media(max-width:1024px){
  .page-hero--visual:before,.page-hero--visual:after{display:none}
  .invest-hero__grid{grid-template-columns:1fr!important}
}


/* ===== V6 HARD FIX: visible banners + clean calc UI ===== */
.inner-banner{
  position:relative;
  overflow:hidden;
  min-height:440px;
  display:flex;
  align-items:center;
  padding:84px 0;
  color:#fff;
  background:
    radial-gradient(circle at 78% 18%, rgba(24,197,150,.38), transparent 28%),
    radial-gradient(circle at 50% 90%, rgba(9,100,232,.28), transparent 32%),
    linear-gradient(125deg,#061f57 0%,#092e73 52%,#0aa685 100%);
}
.inner-banner .container{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:48px;
  align-items:center;
}
.inner-banner h1{
  color:#fff;
  max-width:880px;
  margin-bottom:18px;
}
.inner-banner p{
  color:#eaf4ff;
  max-width:760px;
  font-size:20px;
  line-height:1.6;
}
.inner-banner__label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:11px 17px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
  font-weight:900;
  margin-bottom:20px;
  backdrop-filter:blur(12px);
}
.inner-banner__label i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#18c596;
}
.inner-banner__actions{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-top:28px;
}
.inner-banner .btn--ghost{
  color:#fff;
  border-color:rgba(255,255,255,.65);
  background:rgba(255,255,255,.08);
}
.inner-visual{
  position:relative;
  min-height:310px;
}
.inner-visual__main{
  position:absolute;
  right:30px;
  top:20px;
  width:360px;
  min-height:240px;
  border-radius:30px;
  background:rgba(255,255,255,.96);
  color:#082766;
  padding:30px;
  border:1px solid rgba(255,255,255,.75);
  box-shadow:0 30px 100px rgba(0,0,0,.22);
  animation:softFloat 5s ease-in-out infinite;
}
.inner-visual__main b{
  display:block;
  font-size:22px;
  margin-bottom:12px;
}
.inner-visual__main strong{
  display:block;
  font-size:50px;
  color:#18c596;
  line-height:1;
}
.inner-visual__main small{
  color:#637493;
  font-weight:800;
}
.inner-visual__icon{
  width:62px;
  height:62px;
  border-radius:20px;
  background:#e4fbf3;
  color:#18c596;
  display:grid;
  place-items:center;
  margin-bottom:18px;
}
.inner-visual__pill{
  position:absolute;
  left:10px;
  bottom:42px;
  background:#fff;
  color:#082766;
  border-radius:20px;
  padding:18px 22px;
  display:flex;
  gap:12px;
  align-items:center;
  box-shadow:0 24px 70px rgba(0,0,0,.18);
  font-weight:900;
  animation:softFloat 6s ease-in-out infinite;
}
.inner-visual__chart{
  position:absolute;
  right:0;
  bottom:8px;
  height:128px;
  display:flex;
  align-items:end;
  gap:13px;
}
.inner-visual__chart i{
  width:22px;
  border-radius:14px;
  background:linear-gradient(180deg,#7ee8d2,#18c596);
  animation:chartGrow .8s ease both;
}
.inner-visual__chart i:nth-child(1){height:42px}
.inner-visual__chart i:nth-child(2){height:70px}
.inner-visual__chart i:nth-child(3){height:98px}
.inner-visual__chart i:nth-child(4){height:128px}

/* replace old weak page hero visual */
.page-hero--visual{
  display:none!important;
}

/* investment banner made stable and visible */
.invest-hero--premium{
  min-height:520px!important;
  padding:88px 0!important;
}
.invest-hero--premium .invest-hero__grid{
  grid-template-columns:1fr 460px!important;
}
.invest-visual-card--main{
  position:relative!important;
  width:100%!important;
  right:auto!important;
  top:auto!important;
}
.invest-visual-card--small.one{left:-10px!important;top:32px!important}
.invest-visual-card--small.two{right:-10px!important;bottom:18px!important}

/* modal close absolutely clickable */
.modal__close{
  z-index:9999!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}

/* calculator modal must not inherit side transform */
.calculator--modal{
  transform:none!important;
}
.calc-formula-note{
  font-size:12px;
  color:#8494b0;
  text-align:center;
  margin-top:8px;
}

@media(max-width:1024px){
  .inner-banner .container{
    grid-template-columns:1fr;
  }
  .inner-visual{
    min-height:250px;
  }
  .inner-visual__main{
    position:relative;
    right:auto;
    top:auto;
    width:100%;
  }
  .inner-visual__pill,.inner-visual__chart{
    display:none;
  }
  .invest-hero--premium .invest-hero__grid{
    grid-template-columns:1fr!important;
  }
}


/* ===== V7 FINAL: REAL IMAGE BANNERS + CORRECT INTEREST-ONLY CALCULATOR ===== */

/* показываем нормальные баннеры-картинки, а не абстрактные карточки */
.page-hero--visual{
  display:block!important;
}

.real-image-banner{
  position:relative;
  min-height:430px;
  display:flex;
  align-items:center;
  overflow:hidden;
  padding:82px 0;
  background:#061f57;
  border-bottom:1px solid var(--line);
}
.real-image-banner:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--banner-image);
  background-size:cover;
  background-position:center right;
  z-index:0;
}
.real-image-banner:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(4,20,55,.93) 0%,rgba(5,27,72,.82) 32%,rgba(5,27,72,.38) 58%,rgba(5,27,72,.12) 100%);
  z-index:1;
}
.real-image-banner .container{
  position:relative;
  z-index:2;
}
.real-image-banner h1{
  color:#fff;
  max-width:760px;
  margin-bottom:18px;
}
.real-image-banner p{
  color:#eaf4ff;
  max-width:690px;
  font-size:20px;
  line-height:1.6;
}
.real-image-banner__label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:11px 17px;
  border-radius:999px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
  font-weight:900;
  margin-bottom:20px;
  backdrop-filter:blur(12px);
}
.real-image-banner__label i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#18c596;
}
.real-image-banner__actions{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-top:28px;
}
.real-image-banner .btn--ghost{
  color:#fff;
  border-color:rgba(255,255,255,.68);
  background:rgba(255,255,255,.08);
}

/* инвестиции тоже реальным баннером */
.invest-hero--premium{
  position:relative!important;
  min-height:520px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  padding:88px 0!important;
  background:#061f57!important;
}
.invest-hero--premium:before{
  content:"";
  position:absolute;
  inset:0;
  background:url('assets/banner-invest.png') center right/cover no-repeat;
  z-index:0;
}
.invest-hero--premium:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(4,20,55,.94) 0%,rgba(5,27,72,.84) 34%,rgba(5,27,72,.40) 62%,rgba(5,27,72,.12) 100%);
  z-index:1;
}
.invest-hero--premium .container,
.invest-hero--premium .invest-hero__grid{
  position:relative!important;
  z-index:2!important;
  display:block!important;
}
.invest-hero__visual{
  display:none!important;
}
.invest-hero--premium h1{
  color:#fff!important;
  max-width:820px!important;
}
.invest-hero--premium p{
  max-width:720px!important;
}
.invest-kpis{
  max-width:760px!important;
}

/* исправление калькулятора */
.rate strong{
  white-space:nowrap;
}
.calc-formula-note{
  font-size:12px;
  color:#8494b0;
  text-align:center;
  margin-top:8px;
}

/* модалки закрываются поверх всего */
.modal__close{
  z-index:99999!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}

@media(max-width:1024px){
  .real-image-banner{
    min-height:390px;
    padding:60px 0;
  }
  .real-image-banner:after,
  .invest-hero--premium:after{
    background:linear-gradient(90deg,rgba(4,20,55,.94) 0%,rgba(5,27,72,.76) 100%);
  }
}


/* ===== FINAL ONE-RUN FIX: stable calculator + real banners ===== */
.real-image-banner{
  position:relative;
  min-height:430px;
  display:flex;
  align-items:center;
  overflow:hidden;
  padding:82px 0;
  background:#061f57;
  border-bottom:1px solid var(--line);
}
.real-image-banner:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--banner-image);
  background-size:cover;
  background-position:center right;
  z-index:0;
}
.real-image-banner:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(4,20,55,.94) 0%,rgba(5,27,72,.84) 34%,rgba(5,27,72,.42) 62%,rgba(5,27,72,.12) 100%);
  z-index:1;
}
.real-image-banner .container{position:relative;z-index:2}
.real-image-banner h1{color:#fff;max-width:780px;margin-bottom:18px}
.real-image-banner p{color:#eaf4ff;max-width:700px;font-size:20px;line-height:1.6}
.real-image-banner__label{display:inline-flex;align-items:center;gap:10px;padding:11px 17px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.28);color:#fff;font-weight:900;margin-bottom:20px;backdrop-filter:blur(12px)}
.real-image-banner__label i{width:8px;height:8px;border-radius:50%;background:#18c596}
.real-image-banner__actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}
.real-image-banner .btn--ghost{color:#fff;border-color:rgba(255,255,255,.68);background:rgba(255,255,255,.08)}
.page-hero--visual{display:none!important}

.invest-hero--premium{position:relative!important;min-height:520px!important;display:flex!important;align-items:center!important;overflow:hidden!important;padding:88px 0!important;background:#061f57!important}
.invest-hero--premium:before{content:"";position:absolute;inset:0;background:url('assets/banner-invest.png') center right/cover no-repeat;z-index:0}
.invest-hero--premium:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,55,.94) 0%,rgba(5,27,72,.84) 34%,rgba(5,27,72,.40) 62%,rgba(5,27,72,.12) 100%);z-index:1}
.invest-hero--premium .container,.invest-hero--premium .invest-hero__grid{position:relative!important;z-index:2!important;display:block!important}
.invest-hero__visual{display:none!important}
.invest-hero--premium h1{color:#fff!important;max-width:820px!important}
.invest-hero--premium p{max-width:720px!important}
.invest-kpis{max-width:760px!important}

.calculator .range-block:nth-of-type(2),
.calculator--modal .range-block:nth-of-type(2){
  opacity:.45;
}
.calculator .range-block:nth-of-type(2)::after,
.calculator--modal .range-block:nth-of-type(2)::after{
  content:"Срок для отображения, на месячный процент не влияет";
  display:block;
  color:#8494b0;
  font-size:12px;
  margin-top:6px;
}
.payment span{font-size:14px}
.modal__close{z-index:999999!important;pointer-events:auto!important;cursor:pointer!important}
@media(max-width:1024px){
  .real-image-banner{min-height:390px;padding:60px 0}
  .real-image-banner:after,.invest-hero--premium:after{background:linear-gradient(90deg,rgba(4,20,55,.94) 0%,rgba(5,27,72,.76) 100%)}
}


/* ===== UI FIX: calculator dimmed fields + button spacing ===== */

/* Убираем серое/затемнение с первой строки калькулятора */
.calculator .range-block,
.calculator--modal .range-block,
.calc-modal .range-block {
  opacity: 1 !important;
  filter: none !important;
}

.calculator .range-block *,
.calculator--modal .range-block *,
.calc-modal .range-block * {
  opacity: 1 !important;
  filter: none !important;
}

/* Убираем старое затемнение второго блока, если оно было задано */
.calculator .range-block:nth-of-type(2),
.calculator--modal .range-block:nth-of-type(2),
.calc-modal .range-block:nth-of-type(2) {
  opacity: 1 !important;
  filter: none !important;
}

/* Прячем лишнюю подпись под суммой/сроком, которая забивала интерфейс */
.calculator .range-block:nth-of-type(2)::after,
.calculator--modal .range-block:nth-of-type(2)::after,
.calc-modal .range-block:nth-of-type(2)::after {
  display: none !important;
  content: none !important;
}

/* Нормальный вид range */
.calculator input[type="range"],
.calculator--modal input[type="range"],
.calc-modal input[type="range"] {
  opacity: 1 !important;
  filter: none !important;
  accent-color: var(--blue) !important;
  cursor: pointer;
}

/* Подписи в калькуляторе не должны быть бледными */
.calculator label,
.calculator .range-head,
.calculator .range-head span,
.calculator .range-head b,
.calculator .scale,
.calculator--modal label,
.calculator--modal .range-head,
.calculator--modal .range-head span,
.calculator--modal .range-head b,
.calculator--modal .scale {
  opacity: 1 !important;
}

/* Зазор между кнопками на внутренних баннерах и продуктовых страницах */
.product-hero .btn + .btn,
.product-hero-page .btn + .btn,
.page-hero__actions .btn + .btn,
.real-image-banner__actions .btn + .btn,
.inner-banner__actions .btn + .btn,
.hero__buttons .btn + .btn,
.invest-hero .hero__buttons .btn + .btn {
  margin-left: 14px;
}

/* Если кнопки flex/grid — используем gap */
.product-hero .hero__buttons,
.product-hero-page .hero__buttons,
.page-hero__actions,
.real-image-banner__actions,
.inner-banner__actions,
.invest-hero .hero__buttons {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap;
  align-items: center;
}

/* Мобильный вариант: кнопки одна под другой, но с зазором */
@media (max-width: 640px) {
  .product-hero .hero__buttons,
  .product-hero-page .hero__buttons,
  .page-hero__actions,
  .real-image-banner__actions,
  .inner-banner__actions,
  .invest-hero .hero__buttons {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 12px !important;
  }

  .product-hero .btn + .btn,
  .product-hero-page .btn + .btn,
  .page-hero__actions .btn + .btn,
  .real-image-banner__actions .btn + .btn,
  .inner-banner__actions .btn + .btn,
  .hero__buttons .btn + .btn,
  .invest-hero .hero__buttons .btn + .btn {
    margin-left: 0 !important;
  }
}


/* ===== MOBILE + FOOTER + NAV FINAL FIX ===== */
html{
  scrollbar-gutter: stable;
}
body{
  overflow-x:hidden;
}
.header{
  height:76px!important;
}
.logo__img{
  width:165px!important;
  height:62px!important;
  object-fit:contain!important;
}
.header__inner{
  position:relative;
}
.nav a[href="index.html"]{
  display:inline-flex;
}

/* phone dropdown visible + stable */
.phone-dropdown{
  position:relative;
  z-index:1200;
}
.phone-main{
  border:0;
  background:transparent;
  display:grid;
  grid-template-columns:42px auto;
  column-gap:10px;
  align-items:center;
  cursor:pointer;
  text-align:left;
  padding:0;
}
.phone-main b{
  display:block;
  font-size:22px;
  line-height:1;
  color:#06245e;
  white-space:nowrap;
}
.phone-main small{
  display:block;
  font-size:13px;
  color:#7787a6;
}
.phone-menu{
  position:absolute;
  right:0;
  top:54px;
  width:220px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:10px;
  box-shadow:0 22px 60px rgba(17,55,105,.16);
  display:none;
  z-index:3000;
}
.phone-dropdown:hover .phone-menu,
.phone-dropdown.open .phone-menu{
  display:block;
}
.phone-menu a{
  display:block;
  padding:12px 13px;
  border-radius:12px;
  color:#0b2b67;
  font-weight:900;
}
.phone-menu a:hover{
  background:#eef6ff;
  color:var(--blue);
}

/* mobile header menu */
@media(max-width:1024px){
  .header{
    height:74px!important;
  }
  .header__inner{
    gap:10px;
  }
  .logo{
    min-width:104px!important;
    max-width:128px!important;
  }
  .logo__img{
    width:118px!important;
    height:58px!important;
  }
  .header__right{
    margin-left:auto;
    gap:8px!important;
  }
  .lang{
    display:none!important;
  }
  .phone-main{
    display:grid!important;
    grid-template-columns:34px auto;
    column-gap:6px;
    align-items:center;
  }
  .phone__icon{
    width:38px!important;
    height:38px!important;
  }
  .phone-main b{
    display:block!important;
    font-size:13px!important;
    max-width:92px;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .phone-main small{
    display:none!important;
  }
  .phone-menu{
    right:-54px;
    top:48px;
  }
  .burger{
    display:block!important;
    width:42px;
    height:42px;
    border:0;
    background:transparent;
    z-index:2500;
  }
  .nav{
    position:absolute!important;
    left:12px;
    right:12px;
    top:74px;
    display:none!important;
    grid-template-columns:1fr;
    gap:0!important;
    background:#fff;
    border:1px solid #dce8f6;
    border-radius:18px;
    box-shadow:0 24px 70px rgba(12,50,108,.16);
    padding:10px;
    z-index:2400;
  }
  .nav.open{
    display:grid!important;
  }
  .nav a{
    display:block!important;
    padding:14px 16px;
    border-radius:12px;
    font-size:15px!important;
    white-space:normal;
  }
  .nav a:hover{
    background:#eef6ff;
  }
}

/* mobile main hero: image is background, not separate block */
@media(max-width:1024px){
  .hero{
    position:relative;
    background:#eef6ff!important;
  }
  .hero::before{
    display:block!important;
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:url('assets/hero-banner.png') center bottom/cover no-repeat!important;
    opacity:.30!important;
    z-index:0!important;
  }
  .hero::after{
    display:block!important;
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.82) 58%,rgba(238,246,255,.74) 100%)!important;
    z-index:1!important;
  }
  .hero__grid{
    position:relative!important;
    z-index:2!important;
  }
  .hero__content:after{
    display:none!important;
    content:none!important;
  }
}

/* gaps between buttons everywhere */
.hero__buttons,
.product-hero .hero__buttons,
.product-hero-page .hero__buttons,
.page-hero__actions,
.real-image-banner__actions,
.inner-banner__actions,
.invest-hero .hero__buttons{
  display:flex!important;
  gap:16px!important;
  flex-wrap:wrap!important;
  align-items:center!important;
}
.hero__buttons .btn,
.product-hero .btn,
.product-hero-page .btn,
.page-hero__actions .btn,
.real-image-banner__actions .btn,
.inner-banner__actions .btn,
.invest-hero .hero__buttons .btn{
  margin:0!important;
}
.product-hero .btn + .btn,
.product-hero-page .btn + .btn{
  margin-left:0!important;
}
@media(max-width:640px){
  .hero__buttons,
  .product-hero .hero__buttons,
  .product-hero-page .hero__buttons,
  .page-hero__actions,
  .real-image-banner__actions,
  .inner-banner__actions,
  .invest-hero .hero__buttons{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
}

/* prettier mobile process cards */
@media(max-width:640px){
  .grid-4.steps{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .step-card{
    min-height:auto!important;
    display:grid!important;
    grid-template-columns:46px 1fr!important;
    column-gap:16px!important;
    align-items:start!important;
    padding:18px!important;
    padding-left:18px!important;
  }
  .step-card:before{
    position:static!important;
    width:42px!important;
    height:42px!important;
    grid-row:1 / span 2;
  }
  .step-card h3{
    margin:0 0 6px!important;
    font-size:22px!important;
  }
  .step-card p{
    margin:0!important;
    font-size:15px!important;
    line-height:1.45!important;
  }
}

/* footer socials + developer */
.footer-socials{
  display:flex;
  gap:12px;
  margin-top:18px;
}
.footer-socials a{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid #dce8f6;
  background:#fff;
  box-shadow:0 10px 24px rgba(12,50,108,.06);
}
.footer-socials img{
  width:42px;
  height:42px;
}
.copy{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}
.dev-link{
  display:flex;
  align-items:center;
  gap:10px;
  color:#6d7d99;
  font-size:13px;
  font-weight:800;
}
.dev-link img{
  height:30px;
  width:auto;
  display:block;
}
@media(max-width:640px){
  .footer__grid{
    gap:22px!important;
  }
  .footer-socials{
    margin-bottom:8px;
  }
  .copy{
    justify-content:center;
    text-align:center;
  }
}

/* keep layouts stable between pages */
.page-hero,
.product-hero,
.real-image-banner,
.invest-hero{
  min-height:430px;
}
@media(max-width:640px){
  .page-hero,
  .product-hero,
  .real-image-banner,
  .invest-hero{
    min-height:auto;
  }
}


/* ===== FINAL POLISH: mobile header, button gaps, cards, developer mark ===== */

/* шапка: аккуратный телефон */
@media(max-width:1024px){
  .header{
    height:72px!important;
  }

  .header__inner{
    height:72px!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
  }

  .logo{
    min-width:118px!important;
    max-width:132px!important;
    flex:0 0 132px!important;
  }

  .logo__img{
    width:122px!important;
    height:58px!important;
    object-fit:contain!important;
  }

  .header__right{
    margin-left:auto!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
  }

  .phone-dropdown{
    flex:0 0 auto!important;
  }

  .phone-main{
    height:42px!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    padding:0 8px!important;
    border-radius:999px!important;
    background:#f3f8ff!important;
    border:1px solid #dce8f6!important;
  }

  .phone-main .phone__icon{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    font-size:14px!important;
    background:#fff!important;
  }

  .phone-main span:last-child{
    display:block!important;
  }

  .phone-main b{
    display:block!important;
    max-width:none!important;
    width:auto!important;
    font-size:13px!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
    color:#06245e!important;
  }

  .phone-main small{
    display:none!important;
  }

  .burger{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
  }

  .burger span{
    width:29px!important;
    height:3px!important;
    margin:3px 0!important;
  }

  .phone-menu{
    right:-52px!important;
    top:50px!important;
    width:218px!important;
  }
}

@media(max-width:390px){
  .logo{
    flex-basis:106px!important;
    min-width:106px!important;
    max-width:106px!important;
  }
  .logo__img{
    width:104px!important;
  }
  .phone-main{
    padding:0 7px!important;
  }
  .phone-main b{
    font-size:12px!important;
  }
}

/* зазор между кнопками: убираем налезание outline-кнопки */
.hero__buttons,
.product-hero .hero__buttons,
.product-hero-page .hero__buttons,
.page-hero__actions,
.real-image-banner__actions,
.inner-banner__actions,
.invest-hero .hero__buttons{
  display:flex!important;
  gap:16px!important;
  row-gap:16px!important;
  column-gap:16px!important;
  flex-wrap:wrap!important;
}

.hero__buttons .btn,
.product-hero .hero__buttons .btn,
.product-hero-page .hero__buttons .btn,
.page-hero__actions .btn,
.real-image-banner__actions .btn,
.inner-banner__actions .btn,
.invest-hero .hero__buttons .btn{
  margin:0!important;
}

@media(max-width:640px){
  .hero__buttons,
  .product-hero .hero__buttons,
  .product-hero-page .hero__buttons,
  .page-hero__actions,
  .real-image-banner__actions,
  .inner-banner__actions,
  .invest-hero .hero__buttons{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;
  }

  .hero__buttons .btn,
  .product-hero .hero__buttons .btn,
  .product-hero-page .hero__buttons .btn,
  .page-hero__actions .btn,
  .real-image-banner__actions .btn,
  .inner-banner__actions .btn,
  .invest-hero .hero__buttons .btn{
    width:100%!important;
    min-height:56px!important;
  }
}

/* карточки преимуществ на мобилке — 1 колонка, не узкие плитки */
@media(max-width:640px){
  .section h2{
    font-size:32px!important;
    line-height:1.15!important;
    margin-bottom:22px!important;
  }

  .grid-4{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .grid-4 .card{
    min-height:auto!important;
    display:grid!important;
    grid-template-columns:54px 1fr!important;
    gap:16px!important;
    align-items:start!important;
    padding:20px!important;
    border-radius:20px!important;
  }

  .grid-4 .card .icon{
    margin:0!important;
    width:52px!important;
    height:52px!important;
    grid-row:1 / span 2!important;
  }

  .grid-4 .card h3{
    margin:0 0 7px!important;
    font-size:22px!important;
    line-height:1.16!important;
  }

  .grid-4 .card p{
    margin:0!important;
    font-size:15px!important;
    line-height:1.48!important;
  }

  /* шаги тоже красивыми горизонтальными карточками */
  .grid-4.steps .card.step-card{
    grid-template-columns:50px 1fr!important;
    padding:18px!important;
  }

  .grid-4.steps .card.step-card:before{
    position:static!important;
    width:42px!important;
    height:42px!important;
    grid-row:1 / span 2!important;
  }
}

/* футер: разработчик без огромной уродливой кнопки */
.dev-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#6d7d99!important;
  font-size:12px!important;
  font-weight:700!important;
  text-decoration:none!important;
}

.dev-link img{
  height:22px!important;
  width:auto!important;
  max-width:88px!important;
  display:block!important;
  opacity:.82!important;
  filter:none!important;
}

.dev-link:hover img{
  opacity:1!important;
}

.copy{
  border-top:1px solid #edf3fb;
  margin-top:20px;
  padding-top:18px!important;
}

@media(max-width:640px){
  .copy{
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }

  .dev-link img{
    height:20px!important;
    max-width:82px!important;
  }
}

/* чтобы при переходах меньше прыгала ширина */
html{
  overflow-y:scroll;
}


/* ===== FINAL TEST FIX: mobile language + hard button gaps ===== */

/* Мобильный переключатель языков возвращаем в шапку */
@media(max-width:1024px){
  .header .lang{
    display:flex!important;
    align-items:center!important;
    gap:4px!important;
    flex:0 0 auto!important;
    height:34px!important;
    padding:0 7px!important;
    border-radius:999px!important;
    background:#f3f8ff!important;
    border:1px solid #dce8f6!important;
    font-size:12px!important;
    line-height:1!important;
    margin:0!important;
  }

  .header .lang button{
    font-size:12px!important;
    font-weight:900!important;
    padding:0!important;
    line-height:1!important;
  }

  .header .lang span{
    font-size:12px!important;
    color:#98a8bf!important;
  }

  .header__right{
    gap:6px!important;
  }

  .phone-main{
    padding:0 7px!important;
  }

  .phone-main b{
    font-size:12px!important;
  }
}

/* Если экран очень узкий — телефон оставляем иконкой, языки не прячем */
@media(max-width:380px){
  .phone-main b{
    display:none!important;
  }

  .phone-main{
    width:38px!important;
    padding:0!important;
    justify-content:center!important;
  }
}

/* Жёсткий фикс зазоров между кнопками на мобилке */
@media(max-width:640px){
  .hero__buttons,
  .product-hero .hero__buttons,
  .product-hero-page .hero__buttons,
  .page-hero__actions,
  .real-image-banner__actions,
  .inner-banner__actions,
  .invest-hero .hero__buttons{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:16px!important;
    row-gap:16px!important;
  }

  .hero__buttons > *,
  .product-hero .hero__buttons > *,
  .product-hero-page .hero__buttons > *,
  .page-hero__actions > *,
  .real-image-banner__actions > *,
  .inner-banner__actions > *,
  .invest-hero .hero__buttons > *{
    width:100%!important;
    margin:0!important;
  }

  /* На страницах, где кнопки стоят просто рядом без wrapper */
  .product-hero .btn,
  .product-hero-page .btn,
  .page-hero .btn,
  .real-image-banner .btn,
  .inner-banner .btn,
  .invest-hero .btn{
    width:100%!important;
    max-width:360px!important;
    margin:0 0 16px 0!important;
  }

  .product-hero .btn + .btn,
  .product-hero-page .btn + .btn,
  .page-hero .btn + .btn,
  .real-image-banner .btn + .btn,
  .inner-banner .btn + .btn,
  .invest-hero .btn + .btn{
    margin-top:0!important;
  }

  .product-hero .btn:last-child,
  .product-hero-page .btn:last-child,
  .page-hero .btn:last-child,
  .real-image-banner .btn:last-child,
  .inner-banner .btn:last-child,
  .invest-hero .btn:last-child{
    margin-bottom:0!important;
  }
}


/* ===== FINAL FIX: mobile calc, kpis, floating call widget, 30s promo ===== */

/* modal/calculator should never be cropped on mobile */
.modal{
  overflow-y:auto !important;
  padding:18px 12px !important;
  align-items:flex-start !important;
}
.modal.open{
  display:flex !important;
}
.modal__box{
  position:relative !important;
  margin:24px auto !important;
  max-height:calc(100vh - 48px) !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
}
.modal__close{
  position:sticky !important;
  top:0 !important;
  float:right !important;
  z-index:100 !important;
}
.modal__box--calc{
  width:min(680px, 100%) !important;
}
.calc-modal__head{
  position:relative;
  clear:both;
}

@media (max-width: 640px){
  .modal{
    padding:8px !important;
  }
  .modal__box,
  .modal__box--calc{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    max-height:calc(100vh - 16px) !important;
    border-radius:24px !important;
    padding:18px !important;
    margin:8px auto !important;
  }
  .calc-modal__head{
    grid-template-columns:44px 1fr !important;
    gap:12px !important;
    margin-bottom:10px !important;
  }
  .calc-modal__head h3{
    font-size:28px !important;
    line-height:1.05 !important;
    margin:0 0 6px !important;
  }
  .calc-modal__head p{
    font-size:15px !important;
    line-height:1.45 !important;
  }
  .calculator--modal .tabs{
    grid-template-columns:1fr 1fr !important;
  }
  .calculator--modal .range-block{
    margin-bottom:18px !important;
  }
}

/* prettier KPI blocks on product pages */
.kpi-row{
  display:grid !important;
  grid-template-columns:repeat(3, 1fr) !important;
  gap:18px !important;
  margin-top:22px !important;
}
.kpi{
  background:#fff !important;
  border:1px solid #dce8f6 !important;
  border-radius:22px !important;
  padding:22px 18px !important;
  min-height:136px !important;
  box-shadow:0 10px 28px rgba(17,55,105,.05) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
}
.kpi b{
  color:#18c596 !important;
  font-size:24px !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  display:block !important;
}
.kpi span{
  color:#6e7f9d !important;
  font-size:15px !important;
  line-height:1.35 !important;
  display:block !important;
}

@media (max-width: 640px){
  .kpi-row{
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }
  .kpi-row .kpi:last-child{
    grid-column:1 / -1 !important;
  }
  .kpi{
    min-height:110px !important;
    padding:18px 16px !important;
    border-radius:18px !important;
  }
  .kpi b{
    font-size:20px !important;
  }
  .kpi span{
    font-size:14px !important;
  }
}

/* hard gap for stacked mobile buttons */
@media (max-width:640px){
  .hero__buttons,
  .product-hero .hero__buttons,
  .product-hero-page .hero__buttons,
  .page-hero__actions,
  .real-image-banner__actions,
  .inner-banner__actions,
  .invest-hero .hero__buttons{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
    margin-top:18px !important;
  }
  .hero__buttons .btn,
  .product-hero .hero__buttons .btn,
  .product-hero-page .hero__buttons .btn,
  .page-hero__actions .btn,
  .real-image-banner__actions .btn,
  .inner-banner__actions .btn,
  .invest-hero .hero__buttons .btn{
    width:100% !important;
    margin:0 !important;
    display:flex !important;
  }
}

/* floating call widget */
.floating-call-widget{
  position:fixed;
  right:18px;
  bottom:22px;
  z-index:1400;
}
.floating-call-widget__main{
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#0964e8,#18c596);
  color:#fff;
  box-shadow:0 20px 44px rgba(9,100,232,.28);
  min-height:58px;
  padding:0 18px;
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:900;
  cursor:pointer;
}
.floating-call-widget__icon{
  width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.18);
  display:grid;place-items:center;
  font-size:18px;
}
.floating-call-widget__panel{
  position:absolute;
  right:0;
  bottom:72px;
  width:278px;
  background:#fff;
  border:1px solid #dce8f6;
  border-radius:22px;
  box-shadow:0 24px 70px rgba(12,50,108,.18);
  padding:16px;
  display:none;
}
.floating-call-widget.open .floating-call-widget__panel{
  display:block;
}
.floating-call-widget__head{
  display:flex;justify-content:space-between;align-items:center;
  gap:10px;margin-bottom:12px;
}
.floating-call-widget__head strong{
  color:#0d2e67;font-size:17px;
}
.floating-call-widget__close{
  border:0;background:#eef6ff;color:#0d2e67;border-radius:50%;
  width:34px;height:34px;font-size:22px;cursor:pointer;
}
.floating-call-widget__phones{
  display:grid;gap:10px;margin-bottom:14px;
}
.floating-call-widget__phones a{
  display:block;padding:12px 14px;border-radius:14px;
  background:#f7fbff;border:1px solid #e6eef8;color:#0d2e67;font-weight:900;
}
.floating-call-widget__lead{
  width:100%;min-height:50px;border:0;border-radius:14px;
  background:#18c596;color:#fff;font-weight:900;cursor:pointer;
}
@media (max-width:640px){
  .floating-call-widget{
    right:12px;bottom:14px;
  }
  .floating-call-widget__main{
    min-height:54px;padding:0 16px;
  }
  .floating-call-widget__label{
    display:none;
  }
  .floating-call-widget__panel{
    width:min(280px, calc(100vw - 24px));
    bottom:66px;
  }
}

/* promo popup after 30s */
.promo-popup{
  position:fixed;
  inset:0;
  background:rgba(5,20,48,.48);
  z-index:1450;
  display:none;
  align-items:flex-end;
  justify-content:flex-end;
  padding:18px;
}
.promo-popup.open{display:flex;}
.promo-popup__box{
  width:min(420px,100%);
  background:#fff;
  border-radius:26px;
  box-shadow:0 30px 70px rgba(12,50,108,.25);
  padding:26px;
  position:relative;
  border:1px solid #dce8f6;
}
.promo-popup__close{
  position:absolute;right:14px;top:14px;
  border:0;background:#eef6ff;color:#0d2e67;border-radius:50%;
  width:38px;height:38px;font-size:24px;cursor:pointer;
}
.promo-popup__badge{
  display:inline-flex;align-items:center;
  padding:10px 14px;border-radius:999px;
  background:#eef9f5;border:1px solid #d9f3ea;color:#18c596;
  font-weight:900;font-size:13px;margin-bottom:14px;
}
.promo-popup__box h3{
  font-size:30px;line-height:1.08;color:#0d2e67;margin:0 0 12px;
}
.promo-popup__box p{
  color:#667896;line-height:1.55;margin:0 0 18px;
}
.promo-popup__actions{
  display:flex;gap:12px;flex-wrap:wrap;
}
.promo-popup__btn,.promo-popup__ghost{
  flex:1 1 180px;
}
.promo-popup__ghost{
  min-height:54px;border-radius:16px;border:1px solid #cfe0f5;background:#fff;color:#0d2e67;font-weight:900;
}
@media (max-width:640px){
  .promo-popup{
    padding:10px;
    align-items:flex-end;
    justify-content:center;
  }
  .promo-popup__box{
    width:100%;
    border-radius:22px;
    padding:22px 16px;
  }
  .promo-popup__box h3{
    font-size:24px;
  }
}


/* ===== QUALITY FIX FOR PRODUCT PAGES ===== */
.product-hero--clean{
  padding:48px 0 22px;
}
.product-hero__grid--clean{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(520px, .95fr);
  gap:34px;
  align-items:center;
}
.product-hero__content .badge{
  display:inline-flex;
  align-items:center;
  padding:12px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dce8f6;
  color:#0c2f69;
  font-weight:800;
  margin-bottom:18px;
}
.product-hero__content h1{
  font-size:64px;
  line-height:0.95;
  margin:0 0 18px;
  color:#0b2c66;
}
.product-hero__content p{
  font-size:20px;
  line-height:1.6;
  color:#587096;
  max-width:680px;
}
.product-hero__side{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.product-hero__media{
  position:relative;
  border-radius:32px;
  overflow:hidden;
  border:1px solid #dce8f6;
  background:linear-gradient(180deg,#f7fbff 0%, #edf6ff 100%);
  box-shadow:0 20px 50px rgba(17,55,105,.10);
  min-height:420px;
}
.product-hero__media::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:120px;
  background:linear-gradient(180deg,rgba(255,255,255,0) 0%, rgba(255,255,255,.38) 55%, rgba(255,255,255,.7) 100%);
  pointer-events:none;
}
.product-hero__media img{
  width:100%;
  height:100%;
  min-height:420px;
  object-fit:cover;
  display:block;
}
.kpi-row{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
  margin-top:0 !important;
}
.kpi{
  background:#fff !important;
  border:1px solid #dce8f6 !important;
  border-radius:22px !important;
  padding:20px 18px !important;
  min-height:124px !important;
  box-shadow:0 10px 28px rgba(17,55,105,.05) !important;
}
.kpi b{
  display:block !important;
  color:#18c596 !important;
  font-size:22px !important;
  line-height:1.05 !important;
  margin-bottom:10px !important;
}
.kpi span{
  display:block !important;
  color:#6d7f9d !important;
  font-size:16px !important;
  line-height:1.35 !important;
}
@media (max-width: 1180px){
  .product-hero__grid--clean{
    grid-template-columns:1fr;
    gap:24px;
  }
  .product-hero__content h1{
    font-size:54px;
  }
}
@media (max-width: 640px){
  .product-hero--clean{
    padding:22px 0 14px;
  }
  .product-hero__content .badge{
    padding:10px 16px;
    font-size:14px;
    margin-bottom:14px;
  }
  .product-hero__content h1{
    font-size:34px !important;
    line-height:1.02 !important;
    margin-bottom:14px !important;
  }
  .product-hero__content p{
    font-size:16px !important;
    line-height:1.55 !important;
  }
  .product-hero__media{
    min-height:250px;
    border-radius:24px;
  }
  .product-hero__media img{
    min-height:250px;
  }
  .kpi-row{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .kpi{
    min-height:96px !important;
    padding:14px 12px !important;
    border-radius:16px !important;
  }
  .kpi b{
    font-size:17px !important;
    margin-bottom:8px !important;
  }
  .kpi span{
    font-size:13px !important;
    line-height:1.3 !important;
  }
}


/* ===== FIX PRODUCT HERO, KPI TEXT, FLOATING WIDGET ===== */
.product-hero--stable{
  padding:64px 0 46px !important;
  min-height:auto !important;
  overflow:hidden !important;
  background:linear-gradient(120deg,#f7fbff 0%,#fff 58%,#eef7ff 100%) !important;
}
.product-hero__grid--stable{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) minmax(420px, 560px) !important;
  gap:54px !important;
  align-items:center !important;
}
.product-hero__grid--stable .product-hero__content{
  max-width:680px !important;
}
.product-hero__grid--stable .badge{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  max-width:100% !important;
  padding:11px 18px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid #dce8f6 !important;
  box-shadow:0 18px 35px rgba(9,47,110,.07) !important;
  color:#0c2f69 !important;
  font-weight:900 !important;
  font-size:15px !important;
  margin-bottom:22px !important;
}
.product-hero__grid--stable .badge i{
  width:8px;height:8px;border-radius:50%;background:#18c596;display:block;
}
.product-hero__grid--stable h1{
  font-family:var(--serif) !important;
  font-size:58px !important;
  line-height:1.02 !important;
  letter-spacing:-1.3px !important;
  color:#082766 !important;
  margin:0 0 20px !important;
}
.product-hero__grid--stable p{
  font-size:19px !important;
  line-height:1.62 !important;
  color:#53698d !important;
  margin:0 0 26px !important;
  max-width:650px !important;
}
.product-hero__side{
  display:grid !important;
  gap:18px !important;
}
.product-hero__media{
  border-radius:28px !important;
  border:1px solid #dce8f6 !important;
  overflow:hidden !important;
  height:380px !important;
  min-height:380px !important;
  max-height:380px !important;
  background:#fff !important;
  box-shadow:0 22px 60px rgba(17,55,105,.11) !important;
}
.product-hero__media img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  display:block !important;
}
.product-hero--auto .product-hero__media img{
  object-position:center center !important;
}
.product-hero--realty .product-hero__media img{
  object-position:center center !important;
}
.product-hero__side .kpi-row{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:14px !important;
  margin:0 !important;
}
.product-hero__side .kpi{
  min-height:118px !important;
  padding:18px 16px !important;
  border-radius:20px !important;
  background:#fff !important;
  border:1px solid #dce8f6 !important;
  box-shadow:0 10px 26px rgba(17,55,105,.05) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.product-hero__side .kpi b{
  color:#18c596 !important;
  font-size:21px !important;
  line-height:1.08 !important;
  margin:0 0 8px !important;
  word-break:normal !important;
}
.product-hero__side .kpi span{
  color:#6d7f9d !important;
  font-size:14px !important;
  line-height:1.35 !important;
}
@media(max-width:1100px){
  .product-hero__grid--stable{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  .product-hero__grid--stable h1{
    font-size:48px !important;
  }
}
@media(max-width:640px){
  .product-hero--stable{
    padding:26px 0 22px !important;
  }
  .product-hero__grid--stable{
    gap:20px !important;
  }
  .product-hero__grid--stable h1{
    font-size:34px !important;
    line-height:1.06 !important;
  }
  .product-hero__grid--stable p{
    font-size:16px !important;
    line-height:1.55 !important;
  }
  .product-hero__media{
    height:250px !important;
    min-height:250px !important;
    max-height:250px !important;
    border-radius:22px !important;
  }
  .product-hero__side .kpi-row{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .product-hero__side .kpi{
    min-height:auto !important;
    padding:16px 18px !important;
    display:grid !important;
    grid-template-columns:130px 1fr !important;
    align-items:center !important;
    justify-content:initial !important;
  }
  .product-hero__side .kpi b{
    margin:0 !important;
    font-size:20px !important;
  }
  .product-hero__side .kpi span{
    font-size:14px !important;
  }
}

/* fix floating widget lead button if panel was injected after script */
.floating-call-widget__lead.js-open-lead{
  pointer-events:auto !important;
  cursor:pointer !important;
}


/* ===== HOME-LIKE HERO FOR PRODUCT PAGES ===== */
.inner-home-hero{
  position:relative;
  overflow:hidden;
  background:linear-gradient(90deg,#fff 0%,#f8fbff 48%,#eaf4fd 100%);
}
.inner-home-hero:before{
  content:"";
  position:absolute;
  top:0; bottom:0; left:36%;
  width:64%;
  background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(248,251,255,.35) 30%,rgba(234,244,253,.06) 54%,rgba(234,244,253,0) 100%);
  z-index:1;
  pointer-events:none;
}
.inner-home-hero__grid{
  position:relative;
  z-index:2;
  min-height:720px;
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(320px, .9fr) 392px;
  gap:26px;
  align-items:start;
  padding:58px 0 52px;
}
.inner-home-hero__content{
  position:relative;
  z-index:4;
  padding-top:40px;
}
.inner-home-hero__visual{
  position:relative;
  min-height:540px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.inner-home-hero__image{
  position:relative;
  width:100%;
  max-width:560px;
  height:520px;
  border-radius:32px;
  overflow:hidden;
  box-shadow:0 26px 66px rgba(17,55,105,.12);
  border:1px solid #dce8f6;
  background:#fff;
}
.inner-home-hero__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.inner-home-hero__mini{
  position:absolute;
  left:-8px;
  bottom:34px;
  display:flex;
  align-items:center;
  gap:15px;
  background:rgba(255,255,255,.96);
  border:1px solid #dce8f6;
  border-radius:22px;
  box-shadow:0 18px 48px rgba(17,55,105,.12);
  padding:18px 22px;
  min-width:330px;
}
.mini-icon{
  width:44px;
  height:44px;
  border-radius:50%;
  background:#e8fbf5;
  color:#18c596;
  display:grid;
  place-items:center;
  font-weight:900;
  font-size:22px;
}
.mini-copy{
  display:grid;
  gap:3px;
}
.mini-copy b{
  color:#082766;
  font-size:20px;
  line-height:1.15;
}
.mini-copy span{
  color:#6d7f9d;
  font-size:14px;
}
.mini-bars{
  margin-left:auto;
  display:flex;
  align-items:flex-end;
  gap:8px;
}
.mini-bars i{
  display:block;
  width:10px;
  border-radius:999px;
  background:#8de8cb;
}
.mini-bars i:nth-child(1){height:36px}
.mini-bars i:nth-child(2){height:50px}
.mini-bars i:nth-child(3){height:66px}
.mini-bars i:nth-child(4){height:82px}

.calculator--page{
  position:relative;
  z-index:5;
  margin-top:12px;
  align-self:start;
  display:block !important;
}
.calculator--page h2{
  font-size:28px;
  line-height:1.08;
  color:#082766;
  margin:0 0 24px;
}
.calc-label{
  color:#4c6388;
  font-size:15px;
  font-weight:800;
  margin-bottom:10px;
}
.calculator--page .tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  border:1px solid #dce8f6;
  border-radius:999px;
  padding:4px;
  background:#f7fbff;
  margin-bottom:24px;
}
.calculator--page .tabs button{
  height:48px;
  border-radius:999px;
  border:0;
  background:transparent;
  color:#082766;
  font-weight:900;
  font-size:16px;
  cursor:pointer;
}
.calculator--page .tabs button.active{
  background:var(--blue);
  color:#fff;
  box-shadow:0 10px 22px rgba(11,99,229,.18);
}
.range-block{
  margin-bottom:22px;
}
.range-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.range-head span{
  color:#4c6388;
  font-size:15px;
  font-weight:800;
}
.range-head b{
  color:#082766;
  font-size:16px;
}
.range-block input[type=range]{
  width:100%;
}
.range-meta{
  display:flex;
  justify-content:space-between;
  color:#8b9bb4;
  font-size:13px;
  margin-top:8px;
}
.rate-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  margin:8px 0 18px;
}
.rate-row > span{
  color:#4c6388;
  font-size:15px;
  font-weight:800;
}
.rate-row b{
  color:var(--green);
  font-size:22px;
  line-height:1;
}
.rate-row b small{
  font-size:14px;
  color:var(--green);
}
.payment-box{
  border:1px solid #ead8b7;
  background:#fffaf2;
  border-radius:22px;
  padding:20px 18px;
  text-align:center;
  margin:0 0 18px;
}
.payment-box small{
  display:block;
  color:#977d4c;
  font-weight:800;
  font-size:15px;
  margin-bottom:8px;
}
.payment-box b{
  display:block;
  color:#082766;
  font-size:26px;
  line-height:1.1;
}
.calc-note{
  color:#8b9bb4;
  font-size:13px;
  line-height:1.4;
  text-align:center;
  margin:14px 0 0;
}

/* ensure buttons gap on product pages */
.inner-home-hero .hero__buttons{
  display:flex !important;
  gap:16px !important;
  flex-wrap:wrap;
  margin-bottom:38px !important;
}
.inner-home-hero .hero__buttons .btn{
  margin:0 !important;
}

/* floating widget */
.floating-call-widget{
  z-index:1500 !important;
}
.floating-call-widget__lead{
  display:flex;
  align-items:center;
  justify-content:center;
}

@media(max-width:1200px){
  .inner-home-hero__grid{
    grid-template-columns:minmax(0,1fr) 360px;
    gap:24px;
  }
  .inner-home-hero__visual{
    grid-column:1 / 2;
    order:3;
    min-height:440px;
  }
  .calculator--page{
    grid-column:2 / 3;
    grid-row:1 / span 3;
  }
  .inner-home-hero__content{
    grid-column:1 / 2;
  }
}
@media(max-width:900px){
  .inner-home-hero__grid{
    min-height:unset;
    grid-template-columns:1fr;
    gap:22px;
    padding:30px 0 24px;
  }
  .inner-home-hero__content{
    padding-top:0;
  }
  .calculator--page{
    grid-column:auto;
    grid-row:auto;
    margin-top:0;
  }
  .inner-home-hero__visual{
    min-height:300px;
    order:3;
  }
  .inner-home-hero__image{
    max-width:none;
    width:100%;
    height:320px;
  }
  .inner-home-hero__mini{
    left:14px;
    right:14px;
    min-width:0;
    bottom:14px;
    padding:14px 16px;
  }
  .mini-copy b{
    font-size:17px;
  }
  .mini-bars i:nth-child(1){height:26px}
  .mini-bars i:nth-child(2){height:38px}
  .mini-bars i:nth-child(3){height:50px}
  .mini-bars i:nth-child(4){height:62px}
}
@media(max-width:640px){
  .inner-home-hero__grid{
    gap:18px;
    padding:24px 0 16px;
  }
  .inner-home-hero .badge{
    margin-bottom:18px !important;
  }
  .inner-home-hero h1{
    font-size:38px !important;
    line-height:1.04 !important;
    margin-bottom:16px !important;
  }
  .inner-home-hero .hero__lead{
    font-size:16px !important;
    line-height:1.52 !important;
    margin-bottom:0 !important;
  }
  .inner-home-hero .hero__buttons{
    flex-direction:column !important;
    gap:14px !important;
    margin:20px 0 26px !important;
  }
  .inner-home-hero .hero__buttons .btn{
    width:100% !important;
  }
  .inner-home-hero__stats{
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }
  .inner-home-hero__stats .stat:last-child{
    grid-column:1 / -1;
  }
  .inner-home-hero__image{
    height:250px;
    border-radius:24px;
  }
  .inner-home-hero__mini{
    display:none;
  }
  .calculator--page{
    border-radius:26px !important;
    padding:20px 16px !important;
  }
  .calculator--page h2{
    font-size:24px;
    margin-bottom:18px;
  }
  .rate-row{
    align-items:center;
  }
  .payment-box b{
    font-size:22px;
  }
}


/* ===== FINAL: product pages first block must be exactly like main hero ===== */
body:has(.hero) .inner-home-hero,
body:has(.hero) .product-hero--stable{
  display:none !important;
}

/* На product pages используем стандартный .hero как на главной */
.kredit-page .hero,
.product-page .hero,
body .hero{
  position:relative;
}

/* фикс кнопки "Розрахувати умови" в hero */
.js-scroll-to-page-calculator{
  cursor:pointer;
}

/* убрать влияние старых product hero стилей, если остались классы */
.hero .product-hero__side,
.hero .product-hero__media,
.hero .inner-home-hero__visual,
.hero .inner-home-hero__image{
  all:unset;
}

/* жестко возвращаем главный hero layout */
.hero{
  position:relative !important;
  overflow:hidden !important;
  background:linear-gradient(90deg,#fff 0%,#f8fbff 46%,#eaf4fd 100%) !important;
}
.hero:before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  bottom:0 !important;
  left:31% !important;
  right:0 !important;
  background:url('assets/hero-banner.png') center center/cover no-repeat !important;
  z-index:0 !important;
}
.hero:after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 25%,rgba(255,255,255,.78) 35%,rgba(255,255,255,.32) 47%,rgba(255,255,255,.08) 60%,rgba(255,255,255,.02) 76%) !important;
  z-index:1 !important;
}
.hero__grid{
  min-height:720px !important;
  display:grid !important;
  grid-template-columns:520px minmax(360px,1fr) 420px !important;
  gap:0 !important;
  position:relative !important;
  z-index:2 !important;
  align-items:start !important;
  padding:62px 0 54px !important;
}
.hero__content{
  position:relative !important;
  z-index:3 !important;
}
.hero__space{
  min-height:1px !important;
  display:block !important;
}
.hero .calculator{
  position:relative !important;
  z-index:8 !important;
  width:420px !important;
  max-width:420px !important;
  justify-self:start !important;
  transform:translateX(-150px) !important;
  background:#fff !important;
  border:1px solid #d7e4f2 !important;
  border-radius:24px !important;
  box-shadow:var(--shadow) !important;
  padding:34px 32px 28px !important;
  margin-top:10px !important;
}
.hero .calculator h2{
  font-size:29px !important;
  line-height:1.2 !important;
  margin:0 0 28px !important;
  color:#08265f !important;
}
.hero .payment b,
.hero #paymentText{
  color:#092766 !important;
}

/* mobile как на главной */
@media(max-width:1024px){
  .hero::before{
    display:block !important;
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:url('assets/hero-banner.png') center bottom/cover no-repeat !important;
    opacity:.30 !important;
    z-index:0 !important;
  }
  .hero::after{
    display:block !important;
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.82) 58%,rgba(238,246,255,.74) 100%) !important;
    z-index:1 !important;
  }
  .hero__grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    padding:34px 0 26px !important;
    gap:22px !important;
  }
  .hero__space{
    display:none !important;
  }
  .hero .calculator{
    transform:none !important;
    width:100% !important;
    max-width:none !important;
    justify-self:stretch !important;
    margin-top:0 !important;
  }
}

/* ===== FIX FLOATING CALL WIDGET: must always open/call modal ===== */
.floating-call-widget{
  z-index:99999 !important;
  pointer-events:auto !important;
}
.floating-call-widget *{
  pointer-events:auto !important;
}
.floating-call-widget__main,
.floating-call-widget__lead,
.floating-call-widget__close{
  cursor:pointer !important;
  pointer-events:auto !important;
}
.floating-call-widget.open .floating-call-widget__panel{
  display:block !important;
}


/* ===== INVEST MOBILE KPI FIX ===== */
.invest-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.invest-kpis .kpi{
  background:rgba(255,255,255,.98);
  border:1px solid rgba(255,255,255,.42);
  border-radius:22px;
  box-shadow:0 14px 36px rgba(4,14,51,.18);
  padding:22px 20px;
  min-height:132px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.invest-kpis .kpi b{
  color:#18c596;
  font-size:34px;
  line-height:1.05;
  margin-bottom:10px;
}
.invest-kpis .kpi span{
  color:#677da2;
  font-size:16px;
  line-height:1.35;
}
@media(max-width:640px){
  .invest-hero{
    padding-bottom:24px !important;
  }
  .invest-hero__content .hero__buttons{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    margin-bottom:20px !important;
  }
  .invest-hero__content .hero__buttons .btn{
    width:100% !important;
    margin:0 !important;
  }
  .invest-kpis{
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    margin-top:18px !important;
  }
  .invest-kpis .kpi:last-child{
    grid-column:1 / -1;
  }
  .invest-kpis .kpi{
    min-height:unset !important;
    padding:18px 16px !important;
    border-radius:18px !important;
  }
  .invest-kpis .kpi b{
    font-size:26px !important;
    margin-bottom:8px !important;
  }
  .invest-kpis .kpi span{
    font-size:14px !important;
    line-height:1.35 !important;
  }
}

/* ===== FAQ page improvements ===== */
.faq--wide details{
  margin-bottom:14px;
}
.faq--wide h2{
  margin-bottom:20px;
}
.phones-list{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.phones-list a{
  display:block;
  color:#082766;
  font-weight:800;
  text-decoration:none;
}
