:root{
  --navy:#0B1F5F;
  --bg:#F5F9FF;
  --white:#FFFFFF;
  --text:#0B1F5F;
  --muted:#5B6B8C;
  --accent:#2563EB;
  --accent-hover:#1D4ED8;
  --accent-bg:#E8F1FF;
  --teal:#12D6C5;
  --teal-hover:#0BBFB0;
  --teal-bg:#E7FFFB;
  --gold:#C6A75E;
  --gold-light:#E8D5A8;
  --gold-soft:rgba(198,167,94,.18);
  --ink:#071633;
  --success:#12D6C5;
  --border:#D7E3F4;
  --font:"Inter", system-ui, sans-serif;
  --container-max:1360px;
  --container-padding:20px;
  --container-width:1360px;
  --header-height:64px;
  --header-h:64px;
  --section-padding:56px;
  --section-gap:32px;
  --section:56px;
  --card-radius:24px;
  --radius:24px;
  --shadow-soft:0 12px 40px rgba(7,22,51,.07);
  --shadow:var(--shadow-soft);
  --shadow-hover:0 22px 50px rgba(7,22,51,.12);
  --title-h1:clamp(42px,5vw,52px);
  --title-h2:clamp(34px,4vw,40px);
  --title-h3:clamp(24px,3vw,28px);
  --text-large:20px;
  --text-body:18px;
  --text-small:16px;
  --text-max:680px;
  --button-height:48px;
  --badge-height:34px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{
  scroll-behavior:smooth;
  background:#d8e2f0;
}
body{
  font-family:var(--font);
  background:transparent;
  color:var(--text);
  overflow-x:hidden;
  line-height:1.7;
  font-size:18px;
  min-height:100vh;
  position:relative;
}
body::before,
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-2;
}
body::before{
  background:
    radial-gradient(ellipse 85% 55% at 6% 0%, rgba(18,214,197,.16), transparent 58%),
    radial-gradient(ellipse 65% 45% at 94% 8%, rgba(198,167,94,.14), transparent 52%),
    radial-gradient(ellipse 75% 50% at 55% 100%, rgba(11,31,95,.09), transparent 62%),
    linear-gradient(180deg, #eef3fb 0%, #f6f9fd 38%, #e2eaf6 100%);
}
body::after{
  z-index:-1;
  opacity:.42;
  background-image:
    linear-gradient(rgba(11,31,95,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(11,31,95,.04) 1px, transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(180deg, #000 0%, rgba(0,0,0,.35) 78%, transparent 100%);
}
img{max-width:100%;display:block;}
a{color:inherit;}
.section-inner{
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 var(--container-padding);
}
.section-pad{padding:var(--section-padding) 0;}
.section-title{
  font-size:var(--title-h2);
  color:var(--ink);
  font-weight:750;
  line-height:1.15;
  margin-bottom:16px;
  letter-spacing:-.035em;
  max-width:var(--text-max);
}
.section-lead{
  color:var(--muted);
  font-size:var(--text-body);
  max-width:var(--text-max);
  margin-bottom:var(--section-gap);
  line-height:1.6;
}
.page-hero h1{max-width:var(--text-max);}

/* Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:var(--button-height);
  padding:0 22px;
  border-radius:16px;
  font-weight:650;
  font-size:16px;
  text-decoration:none;
  border:1.5px solid transparent;
  transition:transform .25s,background .25s,box-shadow .25s,color .25s,border-color .25s;
  cursor:pointer;
  font-family:inherit;
  text-align:center;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary,.btn--gold,.btn--burgundy{
  background:linear-gradient(165deg, #16e0cd 0%, var(--teal) 42%, #0fb8a9 100%);
  color:var(--ink);
  border:1px solid rgba(198,167,94,.45);
  box-shadow:0 10px 28px rgba(11,31,95,.12), 0 4px 14px rgba(18,214,197,.22);
}
.btn-primary:hover,.btn--gold:hover,.btn--burgundy:hover{
  background:linear-gradient(165deg, #14dcc9 0%, var(--teal-hover) 100%);
  color:var(--ink);
  box-shadow:0 14px 32px rgba(11,31,95,.14), 0 6px 18px rgba(18,214,197,.28);
}
.btn--outline,.btn--outline-dark{
  background:var(--white);
  border-color:var(--accent);
  color:var(--accent);
}
.btn--outline:hover,.btn--outline-dark:hover{background:var(--accent-bg);}
.buttons{display:flex;flex-wrap:wrap;gap:12px;}

/* Header */
.header{
  position:fixed;
  inset:0 0 auto 0;
  height:var(--header-h);
  z-index:200;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
  transition:height .28s ease,background .28s ease,box-shadow .28s ease;
  box-shadow:0 8px 32px rgba(7,22,51,.06);
}
.header::before{
  content:"";
  position:absolute;left:0;right:0;top:0;
  height:3px;
  background:linear-gradient(90deg, var(--gold) 0%, var(--gold-light) 35%, var(--teal) 70%, var(--gold) 100%);
}
.header::after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(198,167,94,.35), transparent);
}
.header.is-scrolled{
  height:60px;
  background:rgba(255,255,255,.94);
}
.header.is-scrolled .header__logo img{height:42px;}
.header__inner{
  height:100%;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 var(--container-padding);
  display:flex;
  align-items:center;
  gap:10px;
}
.header__logo{display:flex;align-items:center;flex-shrink:0;}
.header__logo img{height:42px;width:auto;max-width:none;}
.header__nav{
  display:none;
  align-items:center;
  gap:6px 12px;
  flex-wrap:nowrap;
  justify-content:center;
  flex:1;
}
.header__nav a{
  text-decoration:none;
  color:var(--muted);
  font-weight:600;
  font-size:15px;
  padding:6px 2px;
  white-space:nowrap;
}
.header__nav a:hover,.header__nav a.is-current{color:var(--navy);}
.header__nav a.is-current{box-shadow:inset 0 -2px 0 var(--gold);}
.header__cta{
  margin-left:auto;
  height:44px;
  padding:0 16px;
  font-size:14px;
  white-space:nowrap;
}
.header.is-open .header__nav{
  display:flex;
  position:absolute;
  top:var(--header-h);left:0;right:0;
  background:#fff;
  padding:16px 20px 22px;
  flex-direction:column;
  align-items:stretch;
  box-shadow:var(--shadow);
}
.header.is-open .header__nav a{padding:12px 4px;font-size:16px;}
.nav-toggle{
  display:flex;
  width:44px;height:44px;
  border:0;background:transparent;cursor:pointer;
  flex-direction:column;justify-content:center;gap:6px;
}
.nav-toggle span{
  display:block;height:2px;width:22px;background:var(--text);margin:0 auto;border-radius:2px;
}

/* Page hero */
.page-hero{
  padding:calc(var(--header-h) + 36px) 0 28px;
  background:linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(232,241,255,.72) 100%);
  border-bottom:1px solid rgba(198,167,94,.14);
  box-shadow:0 12px 40px rgba(7,22,51,.04);
}
.page-hero .section-inner{
  padding-bottom:8px;
  border-bottom:1px solid rgba(198,167,94,.2);
}
.page-hero h1{
  font-size:var(--title-h1);
  color:var(--text);
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1.15;
  margin-bottom:12px;
}

/* Home hero */
.hero{
  position:relative;
  overflow:hidden;
  background:linear-gradient(125deg, rgba(255,255,255,.94) 0%, rgba(231,255,251,.5) 45%, rgba(228,237,250,.75) 100%);
  padding:calc(var(--header-h) + 24px) 0 32px;
  overflow-x:hidden;
  max-height:none;
  border-bottom:1px solid rgba(198,167,94,.12);
  box-shadow:0 16px 48px rgba(7,22,51,.05);
}
.hero::before{
  content:"";
  position:absolute;
  right:-8%;
  top:5%;
  width:min(48vw,480px);
  height:min(48vw,480px);
  border-radius:50%;
  background:radial-gradient(circle, rgba(18,214,197,.2) 0%, transparent 68%);
  pointer-events:none;
}
.hero::after{
  content:"";
  position:absolute;
  left:-12%;
  bottom:-20%;
  width:min(42vw,420px);
  height:min(42vw,420px);
  border-radius:50%;
  background:radial-gradient(circle, rgba(198,167,94,.12) 0%, transparent 70%);
  pointer-events:none;
}
.hero__inner{
  position:relative;
  z-index:1;
  max-width:var(--container-max);
  margin:0 auto;
  padding:0 var(--container-padding);
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:center;
}
.hero__text{max-width:none;}
.hero h1{
  font-family:"Inter","Manrope",var(--font);
  font-size:clamp(28px,4vw,46px);
  line-height:1.05;
  color:#0F2F7D;
  font-weight:700;
  letter-spacing:-.03em;
  margin-bottom:10px;
  overflow-wrap:break-word;
  max-width:none;
}
.hero__lead,.hero__sub{
  font-size:clamp(16px,1.6vw,18px);
  color:#5B6B86;
  margin-bottom:12px;
  max-width:none;
  font-weight:500;
  line-height:1.5;
  overflow-wrap:break-word;
}
.hero__chips{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  margin:0 0 14px;
  width:100%;
  max-width:none;
}
.hero__chips li{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:fit-content;
  height:34px;
  box-sizing:border-box;
  gap:6px;
  padding:0 12px;
  white-space:nowrap;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--ink);
  font-size:14px;
  font-weight:600;
  border:1px solid rgba(198,167,94,.25);
  box-shadow:0 6px 18px rgba(7,22,51,.06);
}
.hero__chips span{color:var(--gold);font-weight:800;font-size:16px;line-height:1;}
.badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 14px;
  border-radius:999px;
  background:var(--teal-bg);
  color:var(--navy);
  font-weight:650;
  font-size:14px;
  margin-bottom:18px;
}
.badge svg{width:15px;height:15px;}
.hero .btn{
  height:48px;
  padding:0 18px;
  font-size:16px;
  font-weight:700;
  width:auto;
  border-radius:16px;
}
.hero__buttons{gap:12px;}
.hero .btn-primary{
  background:#12D6C5;
  color:#0F2F7D;
  box-shadow:0 10px 22px rgba(18,214,197,.26);
}
.hero .btn-primary:hover{
  background:#0BBFB0;
  color:#0F2F7D;
  transform:translateY(-2px);
}
.hero .btn--outline{
  background:#fff;
  border-color:#0F2F7D;
  color:#0F2F7D;
}
.hero .btn--outline:hover{
  background:#F6FAFF;
  transform:translateY(-2px);
}
.hero__photo{
  position:relative;
  border-radius:24px;
  z-index:1;
  width:100%;
  max-width:420px;
  margin:0 auto;
  box-shadow:0 24px 60px rgba(7,22,51,.14), 0 0 0 1px rgba(198,167,94,.2);
}
.hero__photo::before{display:none;}
.hero__photo img{
  position:relative;
  z-index:1;
  width:100%;
  height:auto;
  aspect-ratio:4/5;
  max-height:420px;
  object-fit:cover;
  object-position:50% 50%;
  border-radius:24px;
  box-shadow:0 14px 32px rgba(15,47,125,.14);
}

/* Trust */
.trust{padding:var(--section-padding) 0;}
main > section.trust{
  border-top:1px solid rgba(255,255,255,.55);
}
main > section.trust:nth-of-type(odd){
  background:linear-gradient(180deg, rgba(255,255,255,.86) 0%, rgba(231,255,251,.42) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}
main > section.trust:nth-of-type(even){
  background:linear-gradient(180deg, rgba(236,243,255,.82) 0%, rgba(255,255,255,.5) 100%);
}
.trust__head{margin-bottom:32px;}
.trust__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
}
/* MBuh Design System 2026 — unified card chrome */
.mb-card,
.trust-card,
.process-step,
.why-card,
.service-card,
.review-card,
.blog-card,
.value-card,
.price-card,
.cat-card,
.faq-item,
.contacts-panel,
.map-card,
.about__story,
.quote-card{
  background:linear-gradient(165deg, #ffffff 0%, #f6faff 48%, #f0f6ff 100%);
  border:1px solid rgba(11,31,95,.08);
  border-radius:24px;
  padding:20px;
  box-shadow:var(--shadow-soft);
  position:relative;
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease;
}
.trust-card{cursor:pointer;}
.trust-card:not([data-trust]),
.process-step,
.why-card,
.value-card,
.review-card,
.price-card,
.faq-item,
.contacts-panel,
.map-card,
.about__story,
.quote-card{cursor:default;}
.trust-card:focus{outline:none;}
.trust-card:focus-visible,
.svc-card:focus-visible{
  box-shadow:var(--shadow-soft),0 0 0 3px rgba(18,214,197,.35);
}
.mb-card::before,
.trust-card::before,
.process-step::before,
.why-card::before,
.service-card::before,
.blog-card::before,
.review-card::before,
.price-card::before,
.value-card::before,
.cat-card::before,
.faq-item::before,
.contacts-panel::before,
.map-card::before,
.about__story::before,
.quote-card::before{
  content:"";
  position:absolute;left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg, var(--gold) 0%, var(--teal) 52%, #8AEDE4 100%);
  transform:scaleX(1);
  transform-origin:left;
  z-index:2;
  transition:background .25s ease,box-shadow .25s ease;
}
.mb-card:hover,
.trust-card:hover,
.trust-card.reveal.is-visible:hover,
.process-step:hover,
.process-step.reveal.is-visible:hover,
.why-card:hover,
.service-card:hover,
.review-card:hover,
.blog-card:hover,
.value-card:hover,
.price-card:hover,
.cat-card:hover,
.faq-item:hover,
.contacts-panel:hover,
.map-card:hover,
.about__story:hover,
.quote-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(11,31,95,.14),0 10px 28px rgba(18,214,197,.22);
}
.mb-card:hover::before,
.trust-card:hover::before,
.process-step:hover::before,
.why-card:hover::before,
.service-card:hover::before,
.blog-card:hover::before,
.review-card:hover::before,
.price-card:hover::before,
.value-card:hover::before,
.cat-card:hover::before,
.faq-item:hover::before,
.contacts-panel:hover::before,
.map-card:hover::before,
.about__story:hover::before,
.quote-card:hover::before{
  background:var(--teal);
  box-shadow:0 0 16px rgba(18,214,197,.85);
}
.trust-card__num{
  font-size:44px;font-weight:750;color:var(--teal);margin-bottom:10px;letter-spacing:-.04em;line-height:1;
}
.trust-card__num--text{font-size:22px;}
.trust-card h3{font-size:18px;color:var(--text);font-weight:650;margin-bottom:8px;line-height:1.3;}
.trust-card p{color:var(--muted);font-size:16px;line-height:1.65;}

.trust-modal{
  position:fixed;inset:0;z-index:400;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .25s ease,visibility 0s linear .25s;
}
.trust-modal.is-open{
  opacity:1;visibility:visible;pointer-events:auto;
  transition:opacity .25s ease,visibility 0s;
}
.trust-modal.is-closing{
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .2s ease,visibility 0s linear .2s;
}
.trust-modal__backdrop{
  position:absolute;inset:0;
  background:rgba(5,20,40,.45);
}
.trust-modal__dialog{
  position:relative;z-index:1;
  width:560px;max-width:92%;
  max-height:min(86vh,720px);
  overflow:auto;
  background:var(--white);
  color:var(--text);
  border-radius:24px;
  padding:28px 28px 24px;
  box-shadow:0 24px 60px rgba(11,31,95,.18);
  transform:scale(.96);
  opacity:0;
  transition:transform .25s ease,opacity .25s ease;
}
.trust-modal.is-open .trust-modal__dialog{
  transform:scale(1);opacity:1;
}
.trust-modal.is-closing .trust-modal__dialog{
  transform:scale(.96);opacity:0;
  transition:transform .2s ease,opacity .2s ease;
}
.trust-modal__top{
  position:absolute;top:16px;right:16px;
  display:flex;align-items:center;gap:8px;
}
.trust-modal__mark{
  width:36px;height:36px;border-radius:12px;
  background:var(--teal-bg);color:var(--teal);
  display:grid;place-items:center;
}
.trust-modal__mark svg{width:18px;height:18px;display:block;}
.trust-modal__x{
  width:36px;height:36px;border-radius:50%;
  border:1px solid var(--border);background:var(--white);
  color:var(--navy);cursor:pointer;
  display:grid;place-items:center;
  transition:background .2s ease,transform .2s ease;
}
.trust-modal__x:hover{background:var(--bg);transform:translateY(-1px);}
.trust-modal__x svg{width:16px;height:16px;}
.trust-modal__icon{
  width:52px;height:52px;border-radius:16px;
  background:var(--teal-bg);color:var(--teal);
  display:grid;place-items:center;
  margin:8px 52px 16px 0;
}
.trust-modal__icon svg{width:28px;height:28px;display:block;}
.trust-modal__title{
  color:var(--navy);
  font-size:clamp(22px,2.4vw,28px);
  font-weight:750;
  line-height:1.25;
  margin:0 0 12px;
}
.trust-modal__text{
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
  margin:0 0 22px;
}
.trust-modal__actions{
  display:flex;flex-wrap:wrap;gap:10px;
  margin-bottom:14px;
}
.trust-modal__actions .btn{
  width:auto;flex:1 1 180px;
  font-size:16px;padding:12px 20px;
}
.trust-modal__wa{
  display:inline-flex;align-items:center;
  color:var(--accent);
  font-size:15px;font-weight:650;
  text-decoration:none;
}
.trust-modal__wa:hover{color:var(--teal);}
@media (prefers-reduced-motion:reduce){
  .trust-modal,.trust-modal__dialog,.trust-modal.is-closing .trust-modal__dialog{
    transition:none;
  }
}

.stats{padding:0 0 var(--section);}
.stats__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.stat-card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:22px 18px;
  box-shadow:var(--shadow);
}
.stat-card__num{font-size:44px;font-weight:750;color:var(--teal);margin-bottom:6px;line-height:1;}
.stat-card h3{font-size:14px;color:var(--muted);font-weight:600;}

/* Process */
.process{padding:0 0 var(--section);}
.process__line{
  list-style:none;
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  position:relative;
}
.process-step{z-index:1;}
.process-step__icon{display:none;}
.process-step__num{display:none;}
.process-step h3{color:var(--text);font-size:18px;margin-bottom:8px;font-weight:650;line-height:1.3;}
.process-step p{color:var(--muted);font-size:16px;line-height:1.65;}

.why,.services,.prices,.reviews,.blog,.faq,.about,.contacts-page,.instagram{padding:var(--section-padding) 0;}
.contacts-page{
  background:linear-gradient(180deg, rgba(255,255,255,.75) 0%, rgba(231,255,251,.35) 100%);
}
.card-grid,.why__grid,.services__grid,.reviews__grid,.blog__grid,.values__grid{
  display:grid;grid-template-columns:1fr;gap:24px;
}
.why-card,.service-card,.review-card,.blog-card,.value-card,.price-card,.cat-card{
  display:flex;
  flex-direction:column;
  height:100%;
  gap:8px;
}
.why-card{
  height:auto;
  min-height:0;
  justify-content:flex-start;
}
.ico{
  width:40px;height:40px;color:var(--teal);margin-bottom:16px;
  background:var(--teal-bg);
  border-radius:12px;
  display:grid;place-items:center;
  padding:8px;
  transition:transform .28s;
}
.ico svg{width:100%;height:100%;display:block;}
.why-card:hover .ico,.service-card:hover .ico{transform:scale(1.08);}
.why-card h3,.service-card h3,.cat-card h3,.blog-card h3,.value-card h3{
  color:var(--text);font-size:18px;margin:0 0 8px;font-weight:650;line-height:1.3;
}
.why-card p,.service-card p,.cat-card p,.blog-card p,.review-card p,.value-card p{color:var(--muted);font-size:16px;line-height:1.65;margin:0;}
.why-card .ico{margin-bottom:10px;}
.link-more{
  margin-top:auto;
  padding-top:14px;
  color:var(--accent);
  font-weight:650;
  text-decoration:none;
  font-size:15px;
}
.link-more:hover{color:var(--accent-hover);}
.category{margin-bottom:48px;}
.category h2{margin-bottom:20px;}

/* Prices */
.prices__grid{display:grid;grid-template-columns:1fr;gap:24px;margin-bottom:40px;align-items:stretch;}
.price-card{min-height:100%;}
.price-card__name{color:var(--teal);font-weight:750;letter-spacing:-.02em;font-size:18px;margin-bottom:6px;}
.price-card h3{color:var(--text);font-size:18px;margin-bottom:8px;font-weight:650;line-height:1.3;}
.price-card__sum{font-size:36px;font-weight:750;color:var(--teal);margin-bottom:16px;line-height:1;}
.price-card__sum span{font-size:14px;color:var(--muted);font-weight:600;}
.price-card--featured{
  border:1px solid var(--border);
}
.price-card--featured::after{display:none;}
.price-card__badge{
  display:inline-block;
  background:var(--teal-bg);
  color:var(--navy);
  font-size:12px;
  font-weight:700;
  padding:4px 10px;
  border-radius:999px;
  margin-bottom:12px;
  width:fit-content;
}
.price-card__list{list-style:none;margin:0 0 20px;display:grid;gap:8px;}
.price-card__list li{
  position:relative;
  padding-left:18px;
  color:var(--muted);
  font-size:15px;
  line-height:1.5;
}
.price-card__list li::before{
  content:"";
  position:absolute;left:0;top:10px;
  width:7px;height:7px;border-radius:50%;background:var(--teal);
}
.price-card .btn{margin-top:auto;}
.price-table{
  width:100%;
  border-collapse:collapse;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:var(--shadow);
}
.price-table th,.price-table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--border);}
.price-table th{background:var(--teal-bg);color:var(--navy);}
.price-table td:last-child{color:var(--navy);font-weight:700;white-space:nowrap;}
.price-table-wrap{overflow-x:auto;}

/* Reviews — Google style */
.stars{color:#F4B400;letter-spacing:2px;font-size:14px;line-height:1;}
.review-card{min-height:0;gap:12px;display:flex;flex-direction:column;}
.review-card p{font-size:16px;line-height:1.65;margin:0 0 10px;}
.review-card p:last-child{margin-bottom:0;}
.review-card__rating{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 14px;
  margin-bottom:4px;
}
.review-card__date{
  font-size:13px;
  color:var(--muted);
  font-weight:500;
}
.review-card__head{
  display:flex;align-items:center;gap:12px;margin-bottom:0;
}
.review-card__ava{
  width:48px;height:48px;border-radius:50%;
  background:var(--teal-bg);color:#fff;
  display:grid;place-items:center;font-weight:750;font-size:15px;flex-shrink:0;
  text-transform:uppercase;
}
.review-card__ava--purple{background:#7c5cbf;}
.review-card__ava--brown{background:#8b6914;}
.review-card__ava--blue{background:#2f6fd6;}
.review-card__ava--green{background:#2d9d4a;}
.review-card__ava--orange{background:#d97706;}
.review-card__ava--rose{background:#c45c8a;}
.review-card__ava--teal{background:#0d9488;color:#fff;}
.review-card__meta{display:flex;flex-direction:column;line-height:1.35;gap:2px;}
.review-card__meta strong{color:var(--text);font-size:16px;font-weight:650;}
.review-card__meta span{color:var(--muted);font-size:13px;}
.reviews--2gis{
  background:linear-gradient(180deg, rgba(255,255,255,.78) 0%, rgba(232,241,255,.45) 100%);
}
.reviews__source{
  margin:0 0 24px;
  font-size:14px;
  color:var(--muted);
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.reviews__source-badge{
  display:inline-block;
  padding:4px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink);
  background:var(--gold-soft);
  border:1px solid rgba(198,167,94,.35);
}
.reviews-page .reviews__grid{
  grid-template-columns:1fr;
  gap:20px;
}
@media (min-width:768px){
  .reviews-page .reviews__grid{grid-template-columns:1fr 1fr;}
}
@media (min-width:1200px){
  .reviews-page .reviews__grid{grid-template-columns:repeat(2,1fr);}
}
.center-action{margin-top:28px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;}

.instagram__box{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:40px 24px;
  text-align:center;
}
.instagram__handle{font-size:22px;font-weight:750;color:var(--text);margin:0 0 20px;}

/* About */
.about__grid{display:grid;grid-template-columns:1fr;gap:var(--section-gap);align-items:center;margin-bottom:40px;}
.about__photo{border-radius:var(--card-radius);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-soft);max-width:100%;}
.about__photo img{width:100%;min-height:0;max-height:none;height:auto;object-fit:cover;object-position:center 18%;}
.about__story{margin-top:8px;}
.about__story p{color:var(--muted);margin-bottom:12px;max-width:640px;font-size:var(--text-body);}
.about .page-hero .section-lead,
.about__grid .section-lead{max-width:640px;}
.quote-card{
  margin-top:24px;
  color:var(--text);
  font-size:22px;
  font-weight:600;
  line-height:1.45;
}
.quote-card + .btn{margin-top:22px;}
.calc-perks{list-style:none;display:grid;gap:8px;margin-top:14px;}
.calc-perks li{
  display:flex;align-items:center;gap:8px;
  color:var(--text);font-weight:600;font-size:15px;
}
.calc-perks li::before{
  content:"";
  width:7px;height:7px;border-radius:50%;
  background:var(--teal);flex-shrink:0;
}

/* Blog — Medium */
.blog-card{min-height:100%;padding:0;gap:0;}
.blog-card p{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:var(--text-small);
}
.blog-card__cover{
  height:148px;
  background:
    radial-gradient(circle at 20% 20%, rgba(18,214,197,.28), transparent 40%),
    radial-gradient(circle at 80% 80%, rgba(37,99,235,.14), transparent 42%),
    linear-gradient(160deg,#E7FFFB,#F5F9FF 60%);
}
.blog-card__body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1;}
.blog-card__tag{
  display:inline-block;margin-bottom:8px;
  color:var(--teal);font-size:18px;font-weight:750;letter-spacing:-.02em;text-transform:none;
}
.blog-card__date{color:var(--muted);font-size:13px;margin-bottom:10px;}

/* FAQ */
.faq__list{display:grid;gap:24px;}
.faq-item{padding:4px 16px 4px;}
.faq-item[open]{border-color:var(--border);}
.faq-item summary{
  cursor:pointer;list-style:none;padding:16px 8px 16px 0;
  font-size:20px;font-weight:650;color:var(--text);position:relative;
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{
  content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);
  color:var(--teal);font-size:22px;
}
.faq-item[open] summary::after{content:"–";}
.faq-item p{padding:0 28px 16px 0;color:var(--muted);font-size:16px;}

/* Contacts */
.contacts-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:stretch;
}
.contacts-panel{
  display:grid;
  gap:16px;
  align-content:start;
}
.contacts-panel__heading{
  font-size:22px;
  font-weight:750;
  color:#0F2F7D;
  margin:0 0 4px;
  line-height:1.2;
}
.contacts-panel__lead{
  margin:-8px 0 4px;
  font-size:15px;
  line-height:1.45;
  color:var(--muted);
}
.contacts-panel__actions{margin-top:8px;}
.contacts-panel--form .lead-form{margin-top:4px;}
.contacts-panel h3{font-size:15px;color:var(--muted);font-weight:600;margin-bottom:4px;}
.contacts-panel p,.contacts-panel a{color:var(--text);font-weight:650;text-decoration:none;}
.contacts-panel a:hover{color:var(--accent);}
.contacts-grid{display:grid;grid-template-columns:1fr;gap:14px;}
.map-card{
  padding:0;
  min-height:280px;
  display:flex;
  flex-direction:column;
}
.map-card__visual{
  flex:1;
  min-height:220px;
  background:
    radial-gradient(circle at 50% 46%, rgba(18,214,197,.35) 0 12px, transparent 13px),
    linear-gradient(180deg,#E7FFFB 0%,#D7E3F4 100%);
  position:relative;
}
.map-card img{width:100%;height:280px;object-fit:cover;}
.map-card__bar{padding:22px 20px;display:flex;flex-direction:column;gap:14px;}
.map-card__bar p{color:var(--muted);}
.about .section-title{margin-top:40px;}
.about .section-inner > .section-title:first-of-type{margin-top:0;}
.contact-card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:22px 20px;
  box-shadow:var(--shadow);
}
.contact-card h3{color:var(--text);margin-bottom:8px;font-size:22px;font-weight:650;}
.contact-card p{color:var(--muted);}
.contact-card strong{color:var(--text);}

/* CTA */
.calc-cta{
  padding:var(--section-padding) var(--container-padding);
  background:linear-gradient(180deg, rgba(11,31,95,.05) 0%, rgba(18,214,197,.08) 55%, rgba(198,167,94,.06) 100%);
}
.calc-cta__box{
  max-width:var(--container-max);margin:0 auto;text-align:center;
  background:linear-gradient(135deg, var(--ink) 0%, #0B1F5F 48%, #0d2848 100%);
  border:1px solid rgba(198,167,94,.35);
  border-radius:var(--radius);
  padding:44px 36px;
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  box-shadow:0 24px 56px rgba(7,22,51,.2);
}
.calc-cta__box h2{color:#fff;font-size:clamp(28px,3.6vw,42px);margin-bottom:12px;line-height:1.2;font-weight:750;}
.calc-cta__box p{color:rgba(255,255,255,.78);margin-bottom:22px;}
.calc-cta__box .btn--outline{
  background:transparent;
  border-color:rgba(198,167,94,.55);
  color:#fff;
}
.calc-cta__box .btn--outline:hover{
  background:rgba(198,167,94,.12);
  border-color:var(--gold-light);
  color:#fff;
}

/* Footer */
.site-footer{
  background:linear-gradient(180deg, #0B1F5F 0%, var(--ink) 100%);
  color:rgba(255,255,255,.88);
  padding:40px var(--container-padding) 28px;
  border-top:3px solid var(--gold);
}
.site-footer__main{
  max-width:var(--container-max);margin:0 auto;
  display:grid;grid-template-columns:1fr;gap:20px;
  align-items:start;
}
.site-footer__logo{
  display:block;width:90px;height:auto;margin:0 0 8px;
}
.site-footer__tag{
  color:rgba(255,255,255,.92);font-size:14px;line-height:1.3;font-weight:600;margin:0 0 4px;
}
.site-footer__lead{
  color:rgba(255,255,255,.62);font-size:14px;line-height:1.35;margin:0;max-width:36ch;
}
.site-footer__nav{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 32px;
  align-content:start;
}
.site-footer__col{display:grid;gap:10px;}
.site-footer__nav a{
  color:rgba(255,255,255,.62);
  text-decoration:none;
  font-weight:500;
  font-size:15px;
  white-space:nowrap;
  line-height:1;
  transition:color .25s ease;
}
.site-footer__nav a:hover{color:var(--gold-light);}
.site-footer__contacts{
  display:grid;gap:6px;align-content:start;justify-items:start;
}
.site-footer__item{
  display:flex;align-items:center;gap:8px;
  margin:0;font-size:14px;line-height:1.2;
  color:rgba(255,255,255,.62);text-decoration:none;font-weight:500;
  transition:color .25s ease;
}
.site-footer__item svg{
  width:16px;height:16px;flex-shrink:0;color:var(--gold-light);
}
.site-footer__item span{color:rgba(255,255,255,.78);transition:color .25s ease;}
.site-footer__item:hover,
.site-footer__item:hover span{color:var(--gold-light);}
.site-footer__route{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  margin-top:4px;width:fit-content;
  padding:7px 14px;border-radius:999px;
  background:rgba(198,167,94,.18);
  border:1px solid rgba(198,167,94,.4);
  color:var(--gold-light);
  font-size:13px;font-weight:650;text-decoration:none;
  box-shadow:none;
  transition:transform .25s ease,background .25s ease;
}
.site-footer__route svg{width:14px;height:14px;}
.site-footer__route:hover{transform:translateY(-1px);background:rgba(198,167,94,.28);}
.site-footer__bottom{
  max-width:var(--container-max);margin:0 auto;padding-top:16px;
  border-top:1px solid rgba(255,255,255,.12);
  font-size:13px;color:rgba(255,255,255,.5);
  line-height:1.3;
}
.site-footer__bottom p{margin:0;}

/* Floating */
.float-wa{
  position:fixed;right:18px;bottom:18px;z-index:300;
  width:52px;height:52px;border-radius:50%;
  background:var(--teal);color:var(--navy);
  display:grid;place-items:center;
  box-shadow:0 8px 20px rgba(11,31,95,.12);
  transition:transform .25s ease,box-shadow .25s ease;
}
.float-wa:hover{transform:translateY(-2px);}
.float-wa svg{width:24px;height:24px;}
.to-top{
  position:fixed;right:18px;bottom:82px;z-index:300;
  width:48px;height:48px;border-radius:50%;
  border:0;background:var(--navy);color:#fff;cursor:pointer;
  opacity:0;pointer-events:none;
  transform:translateY(8px);
  box-shadow:0 8px 20px rgba(11,31,95,.12);
  transition:opacity .28s ease,transform .28s ease,background .28s ease;
}
.to-top.is-visible{opacity:1;pointer-events:auto;transform:none;}
.to-top.is-visible:hover{transform:translateY(-2px);}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;}
.reveal.is-visible{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
}

.error-page{min-height:70vh;padding:calc(var(--header-h) + 60px) 20px 80px;text-align:center;}
.error-page h1{font-size:72px;color:var(--text);}
.error-page .section-lead{margin-left:auto;margin-right:auto;max-width:var(--text-max);}
.error-page .buttons{justify-content:center;}

/* Calculator */
.calculator{
  background:var(--bg);
  padding:calc(var(--header-h) + 28px) 16px 72px;
}
.calculator__inner{max-width:1280px;margin:0 auto;}
.calculator__intro{margin-bottom:28px;}
.calculator__layout{display:grid;grid-template-columns:1fr;gap:20px;}
.back-link{display:inline-block;margin-bottom:14px;color:var(--accent);font-weight:600;text-decoration:none;}
.calc-header{margin-bottom:8px;}
.calc-header h1,.calc-header h2{
  font-size:clamp(36px,4.4vw,52px);
  color:var(--text);font-weight:750;margin-bottom:16px;line-height:1.12;
}
.calc-intro-card{
  width:100%;
  padding:22px 24px;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  border-left:4px solid var(--teal);
}
.calculator__lead{
  color:var(--text);
  font-size:clamp(17px,2vw,19px);
  line-height:1.55;
  max-width:none;
  margin:0;
  font-weight:500;
}
.calc-intro-card__note{
  margin:16px 0 0;
  padding-top:16px;
  border-top:1px solid var(--border);
  font-size:15px;
  color:var(--muted);
  line-height:1.45;
}
.calc-intro-card__note strong{color:var(--text);font-weight:650;}
@media (min-width:1024px){
  .calc-intro-card{padding:26px 32px;}
  .calculator__lead{line-height:1.5;}
}
.calculator__form{display:grid;gap:18px;}
.calculator__card.calc-panel{
  background:var(--white);border:1px solid var(--border);
  border-radius:var(--radius);padding:22px 18px;box-shadow:var(--shadow);
}
.calc-panel--monthly{border-top:4px solid var(--teal);}
.calc-panel--once{
  border-top:4px solid var(--navy);
  background:linear-gradient(180deg,#f8fafc 0%,var(--white) 120px);
}
.calc-panel__head{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--border);}
.calc-panel__badge{
  display:inline-block;margin:0 0 8px;padding:4px 12px;border-radius:999px;
  font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  background:var(--teal-bg);color:var(--navy);
}
.calc-panel__badge--once{background:#eef2ff;color:var(--navy);}
.calc-panel__title{font-size:22px;font-weight:750;color:var(--text);margin:0 0 6px;line-height:1.2;}
.calc-panel__desc{margin:0;font-size:14px;color:var(--muted);max-width:48ch;line-height:1.45;}
.calc-step__hint{margin:-4px 0 12px 42px;font-size:13px;color:var(--muted);}
.calc-checks--once{grid-template-columns:1fr;}
@media (min-width:640px){
  .calc-checks--once{grid-template-columns:1fr 1fr;}
}
.calc-step{margin-bottom:28px;}
.calc-step:last-child{margin-bottom:0;}
.calc-step__title{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.calc-step__num{
  width:32px;height:32px;border-radius:50%;background:var(--teal);color:var(--navy);
  display:grid;place-items:center;font-weight:750;font-size:14px;
}
.calc-step__title h3{color:var(--text);font-size:20px;margin:0;font-weight:650;}
.calc-cards{display:grid;gap:10px;}
.calc-cards--2,.calc-cards--3{grid-template-columns:1fr;}
.calc-pick{
  appearance:none;border:1.5px solid var(--border);background:#fff;border-radius:18px;
  padding:16px 14px;text-align:left;cursor:pointer;font:inherit;
  display:flex;flex-direction:column;gap:6px;min-height:110px;transition:.25s;
}
.calc-pick:hover{border-color:var(--teal);transform:translateY(-2px);}
.calc-pick.is-active{border-color:var(--teal);background:var(--teal-bg);}
.calc-pick strong{color:var(--text);font-size:15px;}
.calc-pick span{color:var(--muted);font-size:13px;}
.calc-tax-hint{
  margin-top:10px;padding:10px 12px;background:var(--teal-bg);
  border-left:4px solid var(--teal);border-radius:12px;color:var(--text);font-size:14px;
}
.calc-slider-box{
  background:var(--bg);border:1px solid var(--border);border-radius:18px;padding:18px 14px 12px;
}
.calc-slider-value{text-align:center;font-size:40px;font-weight:700;color:var(--teal);margin-bottom:10px;line-height:1;}
.calc-range{
  -webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:999px;
  background:var(--teal-bg);outline:none;cursor:pointer;
}
.calc-range::-webkit-slider-thumb{
  -webkit-appearance:none;width:24px;height:24px;border-radius:50%;
  background:var(--teal);border:4px solid #fff;
}
.calc-range::-moz-range-thumb{
  width:24px;height:24px;border-radius:50%;background:var(--teal);border:4px solid #fff;
}
.calc-slider-scale{margin-top:8px;text-align:center;font-size:12px;color:var(--muted);}
.calc-yn{display:flex;gap:8px;flex-wrap:wrap;}
.calc-yn__btn{
  appearance:none;border:1.5px solid var(--border);background:#fff;color:var(--text);
  font:inherit;font-weight:700;padding:10px 28px;border-radius:999px;cursor:pointer;
}
.calc-yn__btn.is-active{background:var(--teal);border-color:var(--teal);color:var(--navy);}
.calc-checks{display:grid;gap:8px;}
.calc-check{
  display:flex;align-items:center;gap:10px;padding:12px;
  border:1px solid var(--border);border-radius:14px;background:#fff;cursor:pointer;
}
.calc-check:has(input:checked){border-color:var(--teal);background:var(--teal-bg);}
.calc-check input{width:17px;height:17px;accent-color:var(--teal);}
.calc-check span{flex:1;color:var(--text);font-weight:600;font-size:14px;}
.calc-check em{font-style:normal;color:var(--navy);font-weight:700;font-size:13px;}
.calc-panel--once .calc-check:has(input:checked){
  border-color:var(--navy);
  background:#eef2ff;
}
.calculator__result{display:grid;gap:14px;}
.calc-result-stack{display:grid;gap:12px;}
.calc-total-card--monthly{
  background:linear-gradient(145deg,var(--white) 0%,var(--teal-bg) 100%);
  border-color:#B7F3EC;
}
.calc-total-card--once{
  background:linear-gradient(145deg,#fff 0%,#eef2ff 100%);
  border-color:#c7d2fe;
}
.calc-total-card__price--once span{color:var(--navy);}
.calc-breakdown-card--once{border-color:#e0e7ff;}
.calc-total-row--once{border-top-color:var(--navy);}
.calc-total-row--once strong{color:var(--navy);}
.calc-split-note{
  margin:0;padding:12px 14px;font-size:13px;line-height:1.45;color:var(--muted);
  background:var(--bg);border:1px dashed var(--border);border-radius:14px;text-align:center;
}
.calc-once-block{display:grid;gap:12px;padding-top:4px;border-top:1px dashed var(--border);}
.calc-total-card{
  padding:28px 22px;border-radius:var(--radius);text-align:center;
  background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow);
}
.calc-total-card__label{font-weight:650;color:var(--muted);margin-bottom:8px;}
.calc-total-card__price span{
  display:block;font-size:clamp(40px,6vw,56px);font-weight:750;color:var(--teal);line-height:1;
}
.calc-total-card__price small{display:block;margin-top:4px;font-size:16px;font-weight:650;color:var(--muted);}
.calc-total-card__once{margin-top:8px;font-size:13px;color:var(--muted);}
.calc-breakdown-card,.calc-disclaimer,.calc-table-card{
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius);
  padding:20px 18px;box-shadow:var(--shadow);
}
.calc-breakdown-card h3,.calc-disclaimer h3,.calc-table-card h3{
  color:var(--text);font-size:18px;margin-bottom:12px;
}
.calc-lines{list-style:none;display:grid;gap:8px;}
.calc-lines li{
  display:flex;justify-content:space-between;gap:10px;font-size:14px;
  padding-bottom:8px;border-bottom:1px dashed var(--border);
}
.calc-lines span{color:var(--muted);}
.calc-lines strong{color:var(--text);}
.calc-total-row{
  display:flex;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:2px solid var(--teal);
}
.calc-total-row span{font-weight:750;color:var(--text);}
.calc-total-row strong{font-size:20px;color:var(--navy);}
.calc-disclaimer{background:var(--teal-bg);border-color:#B7F3EC;}
.calc-disclaimer__icon{width:36px;height:36px;color:var(--teal);margin-bottom:8px;}
.calc-disclaimer__icon svg{width:100%;height:100%;}
.calc-disclaimer p{color:var(--muted);font-size:14px;margin-bottom:8px;}
.calc-table{width:100%;border-collapse:collapse;font-size:14px;}
.calc-table th,.calc-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border);}
.calc-table th{background:var(--teal-bg);color:var(--text);}
.calc-table td:last-child{color:var(--navy);font-weight:700;}
.calc-wa{display:block;width:100%;text-align:center;padding:16px 20px;}

@media (max-width:767px){
  .hero__chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;}
  .hero__chips li{font-size:12px;padding:0 10px;height:36px;width:100%;justify-content:flex-start;}
  .hero__chips li:last-child{grid-column:1/-1;width:fit-content;}
  .hero h1{max-width:none;}
  .hero .btn{width:100%;}
}
@media (min-width:768px){
  :root{--container-padding:24px;}
  .stats__grid,.services__grid,.reviews__grid,.blog__grid,.values__grid,.prices__grid,.contacts-grid,.calc-cards--2,.why__grid,.process__line{grid-template-columns:1fr 1fr;}
  .trust__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));}
  .hero__inner{grid-template-columns:minmax(0,1fr) minmax(280px,38%);gap:32px;align-items:center;}
  .hero__photo{width:100%;max-width:none;margin:0;}
  .hero__photo img{max-height:480px;}
  .buttons .btn{width:auto;}
  .contacts-layout{grid-template-columns:1fr 1fr;align-items:start;gap:28px;}
}
@media (min-width:1024px){
  :root{--container-padding:32px;}
  .hero{padding:calc(var(--header-h) + 16px) 0 32px;max-height:none;}
  .hero__inner{grid-template-columns:55fr 45fr;gap:48px;align-items:center;}
  .hero__chips{flex-wrap:nowrap;}
  .hero__photo{width:100%;max-width:none;margin:0;}
  .hero__photo img{width:100%;height:auto;max-height:min(68vh,640px);aspect-ratio:4/5;}
  .stats__grid{grid-template-columns:repeat(4,1fr);}
  .trust__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));}
  .services__grid,.reviews__grid,.blog__grid,.values__grid,.why__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));}
  .prices__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));}
  .about__grid{grid-template-columns:.9fr 1.1fr;}
  .contacts-grid{grid-template-columns:1fr 1fr;}
  .contacts-layout{grid-template-columns:1fr 1fr;align-items:start;}
  .map-card{min-height:100%;}
  .site-footer__main{
    grid-template-columns:1fr 1fr 1fr;
    gap:24px 48px;
    align-items:start;
  }
  .site-footer__lead{max-width:none;}
  .calc-cards--3{grid-template-columns:repeat(3,1fr);}
  .calculator__layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;}
  .calculator__result{position:sticky;top:92px;}
  .calculator{padding:calc(var(--header-h) + 36px) 28px 80px;}
  .process__line{grid-template-columns:repeat(4,1fr);gap:24px;}
  .process__line::before{display:none;}
}
@media (min-width:1280px){
  .nav-toggle{display:none;}
  .header__nav{display:flex;}
  .header.is-open .header__nav{
    position:static;padding:0;background:transparent;box-shadow:none;
    flex-direction:row;align-items:center;
  }
  .header.is-open .header__nav a{padding:6px 4px;font-size:15px;}
  .header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;}
  .header__cta{margin-left:0;}
  .header__nav{gap:6px 14px;}
  .header__nav a{font-size:15px;padding:6px 4px;}
  .home-page .header__nav a,
  .services-page .header__nav a,
  .about-page .header__nav a,
  .blog-page .header__nav a,
  .reviews-page .header__nav a,
  .contacts-page-body .header__nav a,
  .service-detail-page .header__nav a,
  .faq-page .header__nav a,
  .error-page-body .header__nav a{font-size:15px;}
}
@media (min-width:1440px){
  .hero__photo img{max-height:min(72vh,680px);}
}
@media (min-width:1024px) and (max-height:720px){
  .hero{padding:calc(var(--header-h) + 16px) 0 20px;}
  .hero h1{font-size:clamp(34px,3.6vw,42px);}
  .hero__inner{gap:32px;}
  .hero__photo img{max-height:380px;}
}
@media (max-width:767px){
  .buttons{width:100%;}
  .buttons .btn,.center-action .btn,.instagram__box .btn,.page-hero .btn,.map-card .btn{width:100%;}
  .header__cta{max-width:38vw;overflow:hidden;text-overflow:ellipsis;padding:0 10px;font-size:12px;}
}

/* Home compact sections — do not affect calculator */
.error-page-body{background:transparent;}
.home-page,
.services-page,
.about-page,
.blog-page,
.reviews-page,
.contacts-page-body,
.service-detail-page,
.faq-page,
.error-page-body{background:transparent;}
.home-page .trust,
.home-page .process{padding:var(--section-padding) 0;}
.home-page .calc-cta{padding:var(--section-padding) var(--container-padding);}
.home-page .trust .section-title,
.home-page .process .section-title{
  font-size:var(--title-h2);
  font-weight:700;
  color:#0F2F7D;
  margin-bottom:8px;
}
.home-page .trust .section-lead,
.home-page .process .section-lead{
  font-size:var(--text-body);
  margin-bottom:20px;
}
.home-page .trust-card,
.home-page .process-step{
  min-height:180px;
  max-height:180px;
  height:180px;
  padding:18px 16px;
}
.home-page .trust-card__num,
.home-page .process-step .trust-card__num{font-size:32px;margin-bottom:6px;}
.home-page .trust-card h3,
.home-page .process-step h3{font-size:16px;margin-bottom:4px;}
.home-page .trust-card p,
.home-page .process-step p{font-size:14px;line-height:1.4;}
.home-page .calc-cta__box{padding:32px 40px;min-height:220px;}
.home-page .hero .reveal{opacity:1;transform:none;}

/* Services landing — cards match homepage trust cards */
.svc-block{padding:48px 0;}
.svc-block--first{padding-top:calc(var(--header-h) + 32px);padding-bottom:48px;}
.svc-block .section-title{
  color:#0F2F7D;
  font-size:38px;
  font-weight:700;
  margin-bottom:8px;
  letter-spacing:-.03em;
  line-height:1.15;
}
.svc-block--first .section-title{margin-top:0;}
.svc-block .section-lead{
  margin-bottom:20px;
  font-size:18px;
  line-height:1.5;
  color:#4B5E82;
  max-width:var(--text-max);
}
.svc-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:stretch;
}
a.svc-card,
.svc-card{
  position:relative;
  display:flex;
  flex-direction:column;
  height:220px;
  min-height:220px;
  max-height:220px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  padding:20px;
  gap:6px;
  box-shadow:var(--shadow-soft);
  cursor:pointer;
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  pointer-events:auto;
  transition:transform .25s ease,box-shadow .25s ease;
}
.svc-card > *,
.svc-card::before{
  pointer-events:none;
}
.svc-card .ico{
  width:40px;
  height:40px;
  margin:0 0 4px;
  flex:0 0 auto;
}
.svc-card::before{
  content:"";
  position:absolute;left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg, var(--gold) 0%, var(--teal) 52%, #8AEDE4 100%);
  transform:scaleX(1);
  transition:background .25s ease,box-shadow .25s ease;
}
.svc-card:hover,.svc-card:focus-visible{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(11,31,95,.14),0 10px 28px rgba(18,214,197,.22);
  outline:none;
}
.svc-card:hover::before,.svc-card:focus-visible::before{
  background:var(--teal);
  box-shadow:0 0 16px rgba(18,214,197,.85);
}
.svc-card__num{
  font-size:22px;
  font-weight:750;
  color:var(--teal);
  line-height:1;
  letter-spacing:-.04em;
  margin:0 0 6px;
  flex:0 0 auto;
}
.svc-card h3{
  color:#0F2F7D;
  font-size:18px;
  font-weight:650;
  line-height:1.3;
  margin:0;
  overflow-wrap:break-word;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.svc-card p{
  color:#4B5E82;
  font-size:14px;
  line-height:1.4;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.svc-card__more{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:auto;
  padding-top:4px;
  color:#2563EB;
  font-weight:650;
  font-size:14px;
  flex:0 0 auto;
}
.svc-card__arrow{
  display:inline-block;
  color:inherit;
  font-size:16px;
  line-height:1;
  transition:transform .25s ease;
}
.svc-card:hover .svc-card__arrow,.svc-card:focus-visible .svc-card__arrow{
  transform:translateX(6px);
}
.svc-card:hover .ico,.svc-card:focus-visible .ico{transform:scale(1.08);}
.svc-flow{padding:48px 0;}
.svc-flow .section-title{font-size:38px;font-weight:700;color:#0F2F7D;margin-bottom:24px;letter-spacing:-.03em;}
.svc-flow__grid{
  list-style:none;
  margin:0;
  padding:0;
  align-items:stretch;
}
.svc-flow .trust-card,
.svc-flow .mb-card,
.svc-flow__step{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  height:180px;
  min-height:180px;
  max-height:180px;
  padding:18px 16px;
  gap:4px;
  cursor:default;
  transition:transform .25s ease,box-shadow .25s ease;
}
.svc-flow .trust-card::before,
.svc-flow .mb-card::before,
.svc-flow__step::before{
  height:4px;
  background:linear-gradient(90deg, var(--gold) 0%, var(--teal) 52%, #8AEDE4 100%);
  transform:scaleX(1);
  transition:background .25s ease,box-shadow .25s ease;
}
.svc-flow .trust-card:hover,
.svc-flow .mb-card:hover,
.svc-flow__step:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(11,31,95,.14),0 10px 28px rgba(18,214,197,.22);
}
.svc-flow .trust-card:hover::before,
.svc-flow .mb-card:hover::before,
.svc-flow__step:hover::before{
  background:var(--teal);
  height:4px;
  box-shadow:0 0 16px rgba(18,214,197,.85);
}
.svc-flow__step .ico{
  width:24px;
  height:24px;
  padding:4px;
  margin:0 0 6px;
  flex:0 0 auto;
}
.svc-flow__num{
  display:block;
  color:var(--teal);
  font-weight:750;
  font-size:22px;
  line-height:1;
  letter-spacing:-.04em;
  margin:0 0 6px;
}
.svc-flow__step h3{
  color:#0F2F7D;
  font-size:16px;
  font-weight:650;
  line-height:1.3;
  margin:0 0 4px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.svc-flow__step p{
  color:#4B5E82;
  font-size:14px;
  line-height:1.4;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.svc-cta{padding:0 0 48px;}
.svc-cta__box{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:24px;
  max-width:none;
  min-height:220px;
  padding:40px;
  background:#F6FAFF;
  border:1px solid #D9E8FF;
  border-radius:28px;
  box-shadow:var(--shadow-soft);
}
.svc-cta__box:hover{transform:none;box-shadow:var(--shadow-soft);}
.svc-cta__title{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:0 0 10px;
}
.svc-cta__icon{
  width:28px;
  height:28px;
  flex:0 0 28px;
  color:var(--teal);
  margin-top:6px;
}
.svc-cta h2{
  color:#0F2F7D;
  font-size:38px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.03em;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.svc-cta p{
  color:#4B5E82;
  font-size:18px;
  line-height:1.5;
  max-width:620px;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.svc-cta__actions{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  align-items:center;
  width:100%;
}
.svc-cta__actions .btn{
  width:100%;
  height:48px;
  border-radius:16px;
}
.svc-cta .btn--outline{
  background:#fff;
  border:1px solid #0F2F7D;
  color:#0F2F7D;
  box-shadow:none;
}
.svc-cta .btn--outline:hover{background:var(--accent-bg);color:#0F2F7D;border-color:#0F2F7D;}
.svc-modal__label{
  color:#0B1F5F;
  font-weight:750;
  font-size:16px;
  margin:0 0 10px;
}
.svc-modal__list{
  list-style:none;
  margin:0 0 22px;
  padding:0;
}
.svc-modal__list li{
  position:relative;
  padding:8px 0 8px 22px;
  color:#5B6B86;
  font-size:16px;
  line-height:1.55;
  border-bottom:1px solid #EEF3FA;
}
.svc-modal__list li:last-child{border-bottom:0;}
.svc-modal__list li::before{
  content:"";
  position:absolute;left:0;top:16px;
  width:8px;height:8px;border-radius:50%;
  background:var(--teal);
}
#serviceModal .trust-modal__text{margin-bottom:16px;}
#serviceModal .trust-modal__dialog{
  display:flex;
  flex-direction:column;
  max-height:min(88vh,760px);
}
#serviceModal .svc-modal__list{flex:1 1 auto;}
#serviceModal .trust-modal__actions{
  position:sticky;
  bottom:0;
  background:#fff;
  padding-top:14px;
  margin-bottom:0;
}
@media (min-width:768px){
  .svc-grid,.svc-grid--3,.svc-grid--4,.svc-flow__grid{grid-template-columns:1fr 1fr;}
}
@media (min-width:1024px){
  .svc-block{padding:48px 0;}
  .svc-block--first{padding-top:calc(var(--header-h) + 32px);padding-bottom:48px;}
  .svc-grid,.svc-grid--3,.svc-grid--4{grid-template-columns:repeat(4,1fr);}
  .svc-flow__grid{grid-template-columns:repeat(4,1fr);}
  .svc-cta__box{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:32px;
  }
  .svc-cta__copy{flex:1;min-width:0;max-width:none;}
  .svc-cta__actions{
    flex:0 0 auto;
    width:auto;
    min-width:420px;
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:767px){
  .svc-block .section-title{font-size:32px;}
  .svc-cta__box{padding:28px 20px;}
  .svc-cta h2{font-size:28px;-webkit-line-clamp:3;}
  .svc-cta__actions{width:100%;}
}
#serviceModal .trust-modal__icon{
  width:auto;
  min-width:52px;
  height:auto;
  padding:10px 14px;
  font-size:18px;
  font-weight:700;
  line-height:1.2;
}
#serviceModal .trust-modal__mark{
  width:auto;
  min-width:36px;
  padding:0 10px;
  font-size:13px;
  font-weight:700;
  white-space:nowrap;
}
@media (prefers-reduced-motion:reduce){
  .svc-card,.svc-card__arrow,.svc-card::before,.mb-card,.trust-card,.process-step,.why-card,.review-card,.blog-card,.value-card,.price-card,.faq-item,.contacts-panel,.map-card{transition:none;}
  .svc-card:hover,.svc-card:focus-visible,.mb-card:hover,.trust-card:hover,.process-step:hover,.why-card:hover,.review-card:hover,.blog-card:hover,.value-card:hover,.price-card:hover{transform:none;}
}

/* Prices page — KenesBuh tariff cards, isolated from calculator */
.prices-page{background:#F6FAFF;}
.prices-page .pr-hero{
  padding:calc(var(--header-h) + 32px) 0 24px;
}
.prices-page .pr-hero h1{
  color:#0F2F7D;
  font-size:var(--title-h1);
  font-weight:800;
  letter-spacing:-.04em;
  line-height:1.12;
  margin:0 0 12px;
  max-width:var(--text-max);
}
.prices-page .pr-hero .section-lead{margin-bottom:20px;}
.prices-page .pr-hero .buttons{margin-top:4px;}
.prices-page .pr-block{padding:0 0 48px;}
.prices-page .pr-block .section-title{
  color:#0F2F7D;
  font-size:var(--title-h2);
  font-weight:700;
  margin-bottom:20px;
  letter-spacing:-.03em;
}
.prices-page .pr-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:stretch;
}
.prices-page .pr-card{
  display:flex;
  flex-direction:column;
  height:240px;
  min-height:240px;
  max-height:240px;
  padding:16px;
  gap:4px;
  overflow:hidden;
}
.prices-page .pr-card h3{
  color:#0F2F7D;
  font-size:16px;
  font-weight:700;
  line-height:1.25;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.prices-page .pr-card__sum{
  color:var(--teal);
  font-size:28px;
  font-weight:750;
  line-height:1.1;
  letter-spacing:-.03em;
  margin:0;
}
.prices-page .pr-card__sum span{
  font-size:13px;
  color:#4B5E82;
  font-weight:600;
}
.prices-page .pr-card__lead{
  color:#4B5E82;
  font-size:13px;
  line-height:1.4;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.prices-page .pr-card__label{
  color:#0F2F7D;
  font-size:12px;
  font-weight:700;
  margin:2px 0 0;
}
.prices-page .pr-card__num{
  color:var(--teal);
  font-size:22px;
  font-weight:750;
  letter-spacing:-.04em;
  line-height:1;
  margin:0 0 6px;
}
.prices-page .pr-card__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:3px;
  overflow:auto;
  flex:1 1 auto;
  min-height:0;
}
.prices-page .pr-card__list li{
  position:relative;
  padding-left:14px;
  color:#4B5E82;
  font-size:12px;
  line-height:1.35;
}
.prices-page .pr-card__list li::before{
  content:"";
  position:absolute;left:0;top:6px;
  width:6px;height:6px;border-radius:50%;
  background:var(--teal);
}
.prices-page .pr-card__list--price li{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
}
.prices-page .pr-card__list--price li::before{top:7px;}
.prices-page .pr-card__list--price span{min-width:0;}
.prices-page .pr-card__list--price strong{
  color:#0F2F7D;
  font-weight:700;
  white-space:nowrap;
  font-size:12px;
}
.prices-page .pr-card__more{
  margin-top:auto;
  padding-top:4px;
  color:#2563EB;
  font-weight:700;
  font-size:14px;
  text-decoration:none;
  flex:0 0 auto;
}
.prices-page .pr-card__more:hover{color:var(--accent-hover);}
.prices-page .pr-card--info p{
  color:#4B5E82;
  font-size:14px;
  line-height:1.4;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.prices-page .pr-card--chief .pr-card__sum{font-size:32px;}
.prices-page .pr-cta{padding:0 0 48px;}
.prices-page .pr-cta__box{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:24px;
  min-height:220px;
  padding:40px;
  background:#F6FAFF;
  border:1px solid #D9E8FF;
  border-radius:28px;
  box-shadow:var(--shadow-soft);
}
.prices-page .pr-cta__box:hover{transform:none;box-shadow:var(--shadow-soft);}
.prices-page .pr-cta h2{
  color:#0F2F7D;
  font-size:clamp(28px,3vw,38px);
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.03em;
  margin:0 0 10px;
}
.prices-page .pr-cta p{
  color:#4B5E82;
  font-size:18px;
  line-height:1.5;
  margin:0;
  max-width:620px;
}
.prices-page .pr-cta__actions{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}
.prices-page .pr-cta__actions .btn{width:100%;height:48px;border-radius:16px;}
.prices-page .pr-cta .btn--outline{
  background:#fff;
  border:1px solid #0F2F7D;
  color:#0F2F7D;
  box-shadow:none;
}
.prices-page .pr-cta .btn--outline:hover{background:var(--accent-bg);color:#0F2F7D;border-color:#0F2F7D;}
@media (min-width:768px){
  .prices-page .pr-grid--4,
  .prices-page .pr-grid--2,
  .prices-page .pr-grid--once{grid-template-columns:1fr 1fr;}
}
@media (min-width:1024px){
  .prices-page .pr-grid--4{grid-template-columns:repeat(4,1fr);}
  .prices-page .pr-grid--2{grid-template-columns:1fr 1fr;}
  .prices-page .pr-grid--once{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));}
  .prices-page .pr-cta__box{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:32px;
  }
  .prices-page .pr-cta__copy{flex:1;min-width:0;}
  .prices-page .pr-cta__actions{
    flex:0 0 auto;
    width:auto;
    min-width:420px;
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:767px){
  .prices-page .pr-cta__box{padding:28px 20px;}
  .prices-page .pr-hero .buttons .btn{width:100%;}
}

/* Service detail pages */
.service-detail-page{background:#F6FAFF;}
.sd-hero{padding:calc(var(--header-h) + 24px) 0 32px;}
.sd-hero__inner{
  width:min(100%,var(--container-max));
  margin:0 auto;
  padding:0 var(--container-padding);
  display:grid;
  grid-template-columns:1fr;
  gap:28px;
  align-items:center;
}
.sd-kicker{
  font-size:14px;
  font-weight:650;
  color:#4B5E82;
  margin:0 0 10px;
}
.sd-kicker a{color:var(--accent);text-decoration:none;}
.sd-kicker a:hover{color:var(--accent-hover);}
.sd-hero h1{
  color:#0F2F7D;
  font-size:var(--title-h1);
  font-weight:800;
  letter-spacing:-.04em;
  line-height:1.12;
  margin:0 0 12px;
}
.sd-hero .section-lead{margin-bottom:20px;}
.sd-hero .buttons{margin-top:4px;}
.sd-hero .btn--outline{
  background:#fff;
  border-color:#0F2F7D;
  color:#0F2F7D;
}
.sd-hero .btn--outline:hover{
  background:#F6FAFF;
  transform:translateY(-2px);
}
.sd-hero__photo{
  border-radius:24px;
  overflow:hidden;
  border:1px solid var(--border);
  box-shadow:var(--shadow-soft);
}
.sd-hero__photo img{
  width:100%;
  height:auto;
  max-height:min(56vh,520px);
  object-fit:cover;
  object-position:50% 50%;
}
.sd-block{padding:0 0 48px;}
.sd-block .section-title{
  color:#0F2F7D;
  font-size:var(--title-h2);
  font-weight:700;
  margin-bottom:20px;
}
.sd-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
}
.sd-card{
  display:flex;
  flex-direction:column;
  height:220px;
  min-height:220px;
  max-height:220px;
  padding:20px;
  overflow:hidden;
}
.sd-card .ico{margin:0 0 8px;flex:0 0 auto;}
.sd-card h3{
  color:#0F2F7D;
  font-size:18px;
  font-weight:650;
  line-height:1.3;
  margin:0 0 8px;
}
.sd-card p{
  color:#4B5E82;
  font-size:16px;
  line-height:1.45;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.sd-card__num{
  color:var(--teal);
  font-size:22px;
  font-weight:750;
  letter-spacing:-.04em;
  line-height:1;
  margin:0 0 10px;
}
.sd-price{
  padding:28px 24px;
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  max-width:680px;
}
.sd-price h3{
  color:#0F2F7D;
  font-size:22px;
  font-weight:700;
  margin:0 0 12px;
}
.sd-price__sum{
  color:var(--teal);
  font-size:clamp(32px,4vw,44px);
  font-weight:750;
  letter-spacing:-.04em;
  line-height:1.1;
  margin:0 0 12px;
}
.sd-price__sum span{font-size:18px;color:#4B5E82;font-weight:600;}
.sd-price p{color:#4B5E82;font-size:16px;line-height:1.5;margin:0;max-width:520px;}
.service-detail-page .faq__list{gap:16px;}
.service-detail-page .faq-item{
  min-height:0;
  height:auto;
  max-height:none;
  padding:4px 16px;
}
@media (max-width:767px){
  .sd-hero .buttons .btn{width:100%;}
}
@media (min-width:768px){
  .sd-grid{grid-template-columns:1fr 1fr;}
  .sd-grid--3,.sd-grid--4{grid-template-columns:1fr 1fr;}
}
@media (min-width:1024px){
  .sd-hero__inner{grid-template-columns:55fr 45fr;gap:48px;}
  .sd-grid--3{grid-template-columns:repeat(3,1fr);}
  .sd-grid--4{grid-template-columns:repeat(4,1fr);}
  .sd-grid--6{grid-template-columns:repeat(3,1fr);}
}

/* Calculator — content layout only (header matches site shell) */
body:has(.calculator) .calculator{
  padding:calc(var(--header-h) + 28px) var(--container-padding) 72px;
}
body:has(.calculator) .calculator__inner{max-width:1280px;margin:0 auto;}
body:has(.calculator) .calculator .btn{
  height:auto;
  padding:14px 26px;
  border-radius:999px;
  font-size:18px;
}

/* Recovery V1 — restore etalon layout without a new design */
html,body{max-width:100%;overflow-x:hidden;}
a.trust-card,a.pr-card,a.mb-card,a.review-card,a.blog-card{
  text-decoration:none;
  color:inherit;
  cursor:pointer;
}
.trust-card:not([data-trust]){cursor:pointer;}

@media (min-width:1024px){
  .home-page .hero,
  .services-page .hero,
  .about-page .hero,
  .blog-page .page-hero,
  .reviews-page .page-hero,
  .prices-page .hero{
    padding:calc(var(--header-h) + 12px) 0 12px;
  }
  .home-page .hero__inner,
  .services-page .hero__inner,
  .about-page .hero__inner,
  .prices-page .hero__inner{
    grid-template-columns:minmax(0,1fr) 430px;
    gap:40px;
    align-items:center;
    min-height:460px;
  }
  .home-page .hero__chips,
  .services-page .hero__chips,
  .about-page .hero__chips,
  .prices-page .hero__chips{flex-wrap:wrap;}
  .home-page .hero__photo,
  .services-page .hero__photo,
  .about-page .hero__photo,
  .prices-page .hero__photo{
    width:430px;
    max-width:430px;
    margin:0 0 0 auto;
  }
  .home-page .hero__photo img,
  .services-page .hero__photo img,
  .about-page .hero__photo img,
  .prices-page .hero__photo img{
    width:430px;
    height:460px;
    max-height:460px;
    aspect-ratio:auto;
    object-fit:cover;
    object-position:50% 50%;
  }
  .sd-hero__inner{grid-template-columns:minmax(0,1fr) 430px;gap:40px;}
  .sd-hero__photo{width:430px;max-width:430px;margin-left:auto;}
  .sd-hero__photo img{
    width:430px;
    height:460px;
    max-height:460px;
    aspect-ratio:auto;
    object-position:50% 50%;
  }
}

.home-page .home-block{padding:var(--section-padding) 0;}
.home-page .home-block .section-title{
  font-size:var(--title-h2);
  font-weight:700;
  color:#0F2F7D;
  margin-bottom:8px;
}
.home-page .home-block .section-lead{
  font-size:var(--text-body);
  margin-bottom:20px;
}
.home-page .home-preview .trust-card{
  min-height:220px;
  max-height:220px;
  height:220px;
  padding:20px;
}
.home-page .home-preview .svc-ico{
  width:40px;height:40px;color:var(--teal);margin-bottom:8px;flex:0 0 40px;
}
.home-page .home-preview .svc-ico svg{width:40px;height:40px;display:block;}
.home-page .home-prices .pr-card{
  height:auto;
  min-height:220px;
  max-height:none;
  overflow:visible;
  padding:22px 20px;
}
.home-page .reviews__grid .review-card,
.reviews .review-card{
  height:100%;
  min-height:260px;
  max-height:none;
  overflow:visible;
  display:flex;
  flex-direction:column;
}
.home-page .blog__grid .blog-card,
.blog .blog-card{
  height:100%;
  min-height:360px;
  max-height:none;
  display:flex;
  flex-direction:column;
}
.home-page .home-more{margin-top:24px;}

.services-page .trust-card[data-trust]{
  height:auto;
  min-height:188px;
  max-height:none;
  padding:22px 24px;
  border-radius:24px;
  overflow:hidden;
  box-sizing:border-box;
}
.services-page .trust-card[data-trust]::before{height:4px;transform:scaleX(1);background:linear-gradient(90deg, var(--gold) 0%, var(--teal) 52%, #8AEDE4 100%);}
.services-page .svc-ico{
  width:48px;height:48px;flex:0 0 48px;color:var(--teal);margin-bottom:8px;
}
.services-page .svc-ico svg{width:48px;height:48px;display:block;}
.services-page .trust-card[data-trust] h3{
  font-size:20px;font-weight:700;line-height:1.25;margin:0 0 8px;flex:0 0 auto;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.services-page .trust-card[data-trust] p{
  font-size:16px;line-height:1.5;margin:0;flex:1 1 auto;min-height:0;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.services-page .trust{padding:28px 0;}
.services-page .trust:first-of-type{padding-top:16px;}
.services-page .trust + .trust{padding-top:8px;}
.services-page .trust__head{margin-bottom:20px;}
.services-page .trust__grid{gap:16px;}
@media (min-width:1024px){
  .services-page .trust__grid{grid-template-columns:repeat(4,1fr);}
}

.prices-page .pr-card{
  height:auto !important;
  min-height:280px;
  max-height:none !important;
  overflow:visible;
  padding:28px;
  gap:8px;
}
.prices-page .pr-card h3{
  -webkit-line-clamp:unset;
  overflow:visible;
  font-size:20px;
}
.prices-page .pr-card__lead,
.prices-page .pr-card p{
  display:block;
  -webkit-line-clamp:unset;
  overflow:visible;
}
.prices-page .pr-card__list{overflow:visible;}
.prices-page a.pr-card{display:flex;flex-direction:column;}
.prices-page .pr-extra .pr-grid{grid-auto-rows:1fr;}
.prices-page .pr-extra .pr-card{min-height:240px;height:100%;}
@media (min-width:1024px){
  .prices-page .pr-grid--4{grid-template-columns:repeat(4,1fr);}
  .prices-page .pr-grid--5{grid-template-columns:repeat(5,1fr);}
}

.sd-card{
  height:auto !important;
  min-height:220px;
  max-height:none !important;
  overflow:visible;
}
.sd-card p{
  display:block;
  -webkit-line-clamp:unset;
  overflow:visible;
}

.lead-form{
  display:grid;
  gap:14px;
  margin-top:8px;
}
.lead-form label{
  display:grid;
  gap:6px;
  font-size:14px;
  font-weight:650;
  color:#0F2F7D;
}
.lead-form input,
.lead-form select,
.lead-form textarea{
  width:100%;
  border:1px solid var(--border);
  border-radius:16px;
  padding:12px 14px;
  font:inherit;
  color:var(--text);
  background:#fff;
}
.lead-form textarea{min-height:110px;resize:vertical;}
.lead-form .btn{width:100%;justify-content:center;}
.map-card__iframe{
  width:100%;
  height:280px;
  border:0;
  display:block;
}
.contacts-panel--form{align-content:start;}

.pr-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:stretch;
}
.pr-card__sum{
  color:var(--teal);
  font-size:28px;
  font-weight:750;
  line-height:1.1;
  letter-spacing:-.03em;
  margin:0;
}
.pr-card__sum span{font-size:14px;color:#4B5E82;font-weight:600;}
.pr-card__more{
  margin-top:auto;
  color:#2563EB;
  font-weight:650;
  font-size:14px;
}
@media (min-width:768px){
  .pr-grid--4,.pr-grid--5{grid-template-columns:1fr 1fr;}
}
@media (min-width:1024px){
  .pr-grid--4{grid-template-columns:repeat(4,1fr);}
  .pr-grid--5{grid-template-columns:repeat(5,1fr);}
  .home-page .reviews__grid{grid-template-columns:repeat(3,1fr);}
  .home-page .blog__grid{grid-template-columns:repeat(3,1fr);}
  .home-page .home-preview .trust__grid{grid-template-columns:repeat(4,1fr);}
}
.home-page .home-preview .trust-card h3{font-size:18px;}
.home-page .home-preview .trust-card p{font-size:15px;line-height:1.4;}
.about .value-card,.about .why-card{
  height:100%;
  min-height:180px;
}

/* Inner pages — service detail layout width */
body.service-detail-page .section-inner,
body.service-detail-page .header__inner,
body.service-detail-page .hero__inner,
body.service-detail-page .sd-hero__inner,
body.service-detail-page .site-footer__main,
body.service-detail-page .site-footer__bottom{
  max-width:1360px;
}
@media (min-width:1024px){
  body.service-detail-page .section-inner,
  body.service-detail-page .header__inner,
  body.service-detail-page .hero__inner,
  body.service-detail-page .sd-hero__inner,
  body.service-detail-page .site-footer__main,
  body.service-detail-page .site-footer__bottom{
    width:calc(100% - 64px);
    padding-left:0;
    padding-right:0;
  }
}
.services-page .trust-card[data-trust] .pr-card__more{margin-top:auto;padding-top:8px;}
.services-page .trust-card[data-trust] p{
  -webkit-line-clamp:2;
  font-size:17px;
}
.services-page .trust-card[data-trust] h3{font-size:20px;}
.prices-page .pr-card,
.prices-page a.pr-card{
  height:255px !important;
  min-height:255px !important;
  max-height:255px !important;
  padding:28px;
  overflow:hidden;
}
.prices-page .pr-card__lead{display:none;}
.about-page .trust-card,
.about-page .value-card,
.about-page .why-card{
  height:255px;
  min-height:255px;
  max-height:255px;
  padding:28px;
  box-sizing:border-box;
}
.reviews-page .review-card{
  height:auto;
  min-height:0;
  max-height:none;
  padding:24px 22px;
  overflow:visible;
}
.reviews-page .review-card p{
  display:block;
  overflow:visible;
  -webkit-line-clamp:unset;
  font-size:16px;
  line-height:1.62;
}
.blog-page .blog-card{
  height:255px;
  min-height:255px;
  max-height:255px;
}
.blog-page .blog-card__cover{height:72px;min-height:72px;}
.blog-page .blog-card__body{padding:16px 18px 18px;}
.blog-page .blog-grid-status{
  margin:0 0 16px;
  min-height:1.5em;
}
.blog-page .blog-grid-status:empty{display:none;}
.blog-page a.blog-card{
  display:flex;
  flex-direction:column;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
}
.blog-page a.blog-card .link-more{margin-top:auto;padding-top:12px;}
.blog-article-page .blog-article{padding:0 0 48px;}
.blog-article-page .blog-article__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-size:14px;
  margin:0 0 12px;
}
.blog-article-page .blog-article__body{max-width:720px;}
.blog-article-page .blog-article__body p{font-size:17px;line-height:1.7;margin:0 0 1rem;}
.blog-article-page .blog-article__back{margin:24px 0 0;}
.sd-card{
  height:255px !important;
  min-height:255px !important;
  max-height:255px !important;
  padding:28px;
}
.service-detail-page .review-card{
  height:255px;
  min-height:255px;
  max-height:255px;
  padding:28px;
}
.service-detail-page .sd-related a.trust-card{
  height:255px;
  min-height:255px;
  max-height:255px;
  padding:28px;
}
.service-detail-page .sd-related a.trust-card h3{
  font-size:18px;
  font-weight:650;
  color:#0F2F7D;
  line-height:1.3;
  margin:0 0 8px;
}
.service-detail-page .sd-related a.trust-card p{
  font-size:16px;
  line-height:1.45;
  color:#4B5E82;
}
.service-detail-page .sd-related .svc-ico svg{width:48px;height:48px;display:block;}
.sd-intro{padding:0 0 48px;}
.sd-intro p{font-size:20px;line-height:1.6;color:#4B5E82;max-width:820px;}
.review-card__ava{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#E7FFFB;
  color:#0F2F7D;
  font-weight:750;
}
.site-footer__legal{
  display:flex;
  flex-wrap:wrap;
  gap:12px 20px;
  align-items:center;
  justify-content:space-between;
}
.site-footer__legal a{color:var(--gold-light);}
.site-footer__legal a:hover{color:#fff;}
@media (max-width:767px){
  .services-page .trust-card[data-trust],
  .prices-page .pr-card,
  .about-page .trust-card,
  .about-page .value-card,
  .reviews-page .review-card,
  .sd-card{height:auto !important;max-height:none !important;min-height:220px;}
}

/* Unified shell — header, container width, hero titles (not calculator) */
body:not(:has(.calculator)) .header__logo img,
body:not(:has(.calculator)) .header.is-scrolled .header__logo img{
  height:42px;
  width:auto;
  max-width:none;
}
body:not(:has(.calculator)) .header__nav a{
  font-size:15px;
  font-weight:600;
}
body:not(:has(.calculator)) .header__cta{
  height:44px;
  padding:0 16px;
  font-size:14px;
}
.hero h1,
.page-hero h1,
.sd-hero h1{
  font-family:"Inter","Manrope",var(--font);
  font-size:clamp(28px,4vw,46px);
  line-height:1.05;
  color:#0F2F7D;
  font-weight:700;
  letter-spacing:-.03em;
}
.page-hero .section-lead,
.sd-hero__lead,
.sd-hero .hero__lead{
  font-size:clamp(16px,1.6vw,18px);
  color:#5B6B86;
  font-weight:500;
  line-height:1.5;
}
body:is(.home-page,.services-page,.about-page,.blog-page,.reviews-page,.contacts-page-body,.service-detail-page,.faq-page,.error-page-body) .section-inner,
body:is(.home-page,.services-page,.about-page,.blog-page,.reviews-page,.contacts-page-body,.service-detail-page,.faq-page,.error-page-body) .header__inner,
body:is(.home-page,.services-page,.about-page,.blog-page,.reviews-page,.contacts-page-body,.service-detail-page,.faq-page,.error-page-body) .hero__inner,
body:is(.home-page,.services-page,.about-page,.blog-page,.reviews-page,.contacts-page-body,.service-detail-page,.faq-page,.error-page-body) .site-footer__main,
body:is(.home-page,.services-page,.about-page,.blog-page,.reviews-page,.contacts-page-body,.service-detail-page,.faq-page,.error-page-body) .site-footer__bottom{
  max-width:var(--container-max);
}
.services-page .trust .section-title,
.about-page .trust .section-title{
  font-size:var(--title-h2);
  font-weight:700;
  color:#0F2F7D;
  margin-bottom:8px;
  max-width:none;
}
.services-page .trust .section-lead,
.about-page .trust .section-lead{
  font-size:var(--text-body);
  margin-bottom:20px;
  max-width:none;
}

/* About page — refreshed layout */
.about-page .about-eyebrow{
  display:inline-block;
  margin:0 0 12px;
  padding:5px 12px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink);
  background:var(--gold-soft);
  border:1px solid rgba(198,167,94,.35);
}
.about-page .about-hero .hero__text h1{
  font-size:clamp(32px,4.2vw,48px);
  line-height:1.1;
  letter-spacing:-.02em;
}
.about-page .about-stats{padding:var(--section-padding) 0;}
.about-page .about-stats__grid{gap:20px;}
.about-page .about-stats .trust-card{
  height:auto;
  min-height:200px;
  max-height:none;
  border-radius:24px;
  transition:transform .25s,box-shadow .25s;
}
.about-page .about-stats .trust-card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(15,47,125,.08);
}
.about-mission{padding:var(--section-padding) 0;}
.about-mission__grid{
  display:grid;
  gap:24px;
  align-items:stretch;
}
.about-mission__card{
  padding:32px 28px;
  background:linear-gradient(145deg,#fff 0%,var(--teal-bg) 120%);
  border:1px solid #B7F3EC;
  border-radius:28px;
  box-shadow:var(--shadow);
}
.about-mission__title{
  font-size:clamp(24px,3vw,32px);
  font-weight:750;
  color:#0F2F7D;
  line-height:1.2;
  margin:0 0 14px;
}
.about-mission__card p{
  margin:0;
  font-size:17px;
  line-height:1.55;
  color:var(--muted);
  max-width:52ch;
}
.about-pillars{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.about-pillars li{
  display:flex;
  gap:16px;
  align-items:flex-start;
  padding:18px 20px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow:var(--shadow-soft);
}
.about-pillars__num{
  flex-shrink:0;
  font-size:13px;
  font-weight:800;
  color:var(--teal);
  letter-spacing:.04em;
}
.about-pillars li strong{
  display:block;
  font-size:16px;
  color:var(--text);
  margin-bottom:4px;
}
.about-pillars li span{
  font-size:14px;
  line-height:1.45;
  color:var(--muted);
}
.about-values{padding:0 0 var(--section-padding);}
.about-section-head{margin-bottom:24px;}
.about-section-head .section-title{margin-bottom:8px;}
.about-values__grid{
  display:grid;
  gap:16px;
  grid-template-columns:1fr;
}
.about-value-card{
  padding:24px 22px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  box-shadow:var(--shadow-soft);
  transition:transform .25s,border-color .25s;
}
.about-value-card:hover{
  transform:translateY(-3px);
  border-color:#B7F3EC;
}
.about-value-card__icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  margin-bottom:14px;
  border-radius:14px;
  background:var(--teal-bg);
  color:var(--navy);
}
.about-value-card__icon svg{width:22px;height:22px;}
.about-value-card h3{
  font-size:18px;
  font-weight:700;
  color:#0F2F7D;
  margin:0 0 8px;
}
.about-value-card p{
  margin:0;
  font-size:15px;
  line-height:1.45;
  color:var(--muted);
}
.about-timeline{
  padding:var(--section-padding) 0;
  background:linear-gradient(180deg,transparent 0%,rgba(183,243,236,.15) 50%,transparent 100%);
}
.about-timeline__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:0;
  max-width:720px;
}
.about-timeline__item{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:20px;
  padding:0 0 28px;
  position:relative;
}
.about-timeline__item:not(:last-child)::before{
  content:"";
  position:absolute;
  left:7px;
  top:20px;
  bottom:0;
  width:2px;
  background:linear-gradient(180deg,var(--teal),#B7F3EC);
}
.about-timeline__dot{
  width:16px;
  height:16px;
  margin-top:4px;
  border-radius:50%;
  background:var(--teal);
  box-shadow:0 0 0 4px var(--teal-bg);
}
.about-timeline__item h3{
  font-size:18px;
  font-weight:700;
  color:#0F2F7D;
  margin:0 0 6px;
}
.about-timeline__item p{
  margin:0;
  font-size:15px;
  line-height:1.5;
  color:var(--muted);
}
.about-office{padding:0 0 var(--section-padding);}
.about-office__grid{
  display:grid;
  gap:24px;
  align-items:center;
}
.about-office__media{
  border-radius:28px;
  overflow:hidden;
  border:1px solid var(--border);
  box-shadow:var(--shadow);
}
.about-office__media img{
  width:100%;
  height:auto;
  min-height:260px;
  object-fit:cover;
  object-position:center 20%;
  display:block;
}
.about-office__info{
  padding:28px 24px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:28px;
  box-shadow:var(--shadow);
}
.about-office__title{
  font-size:clamp(22px,2.8vw,28px);
  font-weight:750;
  color:#0F2F7D;
  line-height:1.2;
  margin:0 0 12px;
}
.about-office__text{
  font-size:16px;
  font-weight:600;
  color:var(--text);
  margin:0 0 14px;
}
.about-office__meta{
  list-style:none;
  margin:0 0 20px;
  padding:0;
  display:grid;
  gap:8px;
}
.about-office__meta li{
  font-size:14px;
  color:var(--muted);
  padding-left:18px;
  position:relative;
}
.about-office__meta li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--teal);
}
.about-office__actions .btn{flex:1;min-width:140px;}
.about-nav-cards{padding:0 0 var(--section-padding);}
.about-nav-cards__grid{
  display:grid;
  gap:14px;
  grid-template-columns:1fr;
}
.about-nav-card{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:22px 24px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:22px;
  text-decoration:none;
  box-shadow:var(--shadow-soft);
  transition:transform .25s,border-color .25s,background .25s;
}
.about-nav-card:hover{
  transform:translateY(-3px);
  border-color:var(--teal);
  background:var(--teal-bg);
}
.about-nav-card span{
  font-size:18px;
  font-weight:700;
  color:#0F2F7D;
}
.about-nav-card p{
  margin:0;
  font-size:14px;
  color:var(--muted);
}
.about-page .calc-cta{padding:0 var(--container-padding) var(--section-padding);}
@media (min-width:768px){
  .about-mission__grid{grid-template-columns:1.1fr .9fr;}
  .about-values__grid{grid-template-columns:1fr 1fr;}
  .about-office__grid{grid-template-columns:1.05fr .95fr;}
  .about-nav-cards__grid{grid-template-columns:repeat(3,1fr);}
  .about-page .about-stats__grid{grid-template-columns:repeat(2,1fr);}
}
@media (min-width:1024px){
  .about-page .about-stats__grid{grid-template-columns:repeat(4,1fr);}
  .about-values__grid{grid-template-columns:repeat(4,1fr);}
  .about-page .hero__chips{flex-wrap:wrap;}
}

.about-page .about-stats{
  background:linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(232,241,255,.55) 100%);
}
.about-mission{
  background:linear-gradient(180deg, rgba(231,255,251,.35) 0%, rgba(255,255,255,.65) 100%);
}
.about-values{
  background:linear-gradient(180deg, rgba(255,255,255,.7) 0%, rgba(228,237,250,.45) 100%);
}
.about-office{
  background:linear-gradient(180deg, rgba(236,243,255,.6) 0%, rgba(255,255,255,.4) 100%);
}
.about-nav-cards{
  background:linear-gradient(180deg, transparent, rgba(11,31,95,.04));
}
.calculator__card.calc-panel,
.calc-intro-card,
.calc-total-card,
.calc-breakdown-card{
  background:linear-gradient(165deg, rgba(255,255,255,.97) 0%, rgba(244,248,255,.94) 100%);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
body:has(.calculator)::after{opacity:.3;}
body:has(.calculator) .calculator{background:transparent;}

/* Calculator — same header/footer width as rest of site */
body:has(.calculator) .header{height:var(--header-h);}
body:has(.calculator) .header.is-scrolled{height:60px;}
body:has(.calculator) .header__logo img,
body:has(.calculator) .header.is-scrolled .header__logo img{
  height:42px;
  width:auto;
  max-width:none;
}
body:has(.calculator) .header__nav a{font-size:15px;font-weight:600;}
body:has(.calculator) .header__cta{
  height:44px;
  padding:0 16px;
  font-size:14px;
  border-radius:16px;
}
body:has(.calculator) .header__inner,
body:has(.calculator) .site-footer__main,
body:has(.calculator) .site-footer__bottom{max-width:var(--container-max);}
