﻿/* Promo banner (AURA sync) */
.promo-banner-section { padding: var(--section-y) 0; background: #fff; }
.promo-banner__shell {
  --promo-h: 300px;
  display: grid;
  grid-template-columns: minmax(200px, 36%) 1fr;
  height: var(--promo-h);
  min-height: var(--promo-h);
  max-height: var(--promo-h);
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(90deg, #F58220 0%, #FFCC00 100%);
}
.promo-banner__photo {
  position: relative;
  overflow: hidden;
  height: 100%;
  min-height: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.promo-banner__photo img {
  position: absolute;
  bottom: 0;
  left: 50%;
  height: 92%;
  width: auto;
  transform: translateX(-50%) scale(1.18);
  transform-origin: bottom center;
  object-fit: contain;
  object-position: bottom center;
}
.promo-banner__content { padding: clamp(1.5rem, 3vw, 2.5rem); display: flex; flex-direction: column; justify-content: center; color: #1a1208; }
.promo-banner__title { margin: 0 0 1rem; }
.promo-banner__list { margin: .85rem 0 1.15rem; padding: 0; list-style: none; display: flex; flex-direction: column; gap: .38rem; }
.promo-banner__list li { position: relative; padding-left: 1.1rem; font-size: .9rem; line-height: 1.42; }
.promo-banner__list li::before { content: ""; position: absolute; left: 0; top: .58em; width: 5px; height: 5px; border-radius: 50%; background: #1a1208; }
@media (min-width: 769px) {
  .promo-banner__content .btn--white {
    align-self: flex-start;
    width: auto;
    max-width: 14rem;
    min-width: 11rem;
    padding: .75rem 1.5rem;
    border-radius: 10px !important;
    background: linear-gradient(160deg, #FF6A2F 0%, #F24E1E 100%);
    color: #fff;
    border: none;
    box-shadow: 0 6px 18px rgba(242, 78, 30, 0.32);
    display: inline-flex;
    justify-content: center;
    text-align: center;
  }
  .promo-banner__content .btn--white:hover {
    color: #fff;
    filter: brightness(1.06);
    background: linear-gradient(160deg, #FF6A2F 0%, #F24E1E 100%);
  }
}



/* Footer CTA — photo banner before footer */
.footer-cta-section { padding: var(--section-y) 0; background: #fff; }
.footer-cta__shell {
  --footer-cta-h: 300px;
  position: relative;
  height: var(--footer-cta-h);
  min-height: var(--footer-cta-h);
  max-height: var(--footer-cta-h);
  border-radius: 20px;
  overflow: hidden;
}
.footer-cta__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 72% center;
}
.footer-cta__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.9) 0%, rgba(0,0,0,.78) 34%, rgba(0,0,0,.45) 52%, rgba(0,0,0,.18) 68%, rgba(0,0,0,.05) 82%, transparent 100%);
  pointer-events: none;
}
.footer-cta__content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.35rem, 3vw, 2.5rem);
  max-width: min(62%, 680px);
  color: #fff;
}
.footer-cta__title {
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2.5vw, 2.05rem);
  font-weight: 700;
  line-height: 1.14;
  margin: 0 0 .8rem;
  color: #fff;
}
.footer-cta__text {
  margin: 0 0 0.55rem;
  font-size: clamp(.84rem, 1.05vw, .94rem);
  line-height: 1.48;
  color: rgba(255,255,255,.9);
  max-width: 44ch;
}
.footer-cta__btn {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  background: var(--color-accent);
  color: var(--color-black) !important;
  border: 0;
  padding: .78rem 1.35rem;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: .86rem;
  line-height: 1.2;
  border-radius: 6px;
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
  margin-top: -.15rem;
  transition: filter .2s ease, transform .2s ease;
}
.footer-cta__btn:hover { filter: brightness(1.04); transform: translateY(-1px); }
.footer-cta__btn-icon { width: 18px; height: 18px; flex-shrink: 0; }
@media (max-width: 960px) {
  .footer-cta__shell { height: auto; min-height: 300px; max-height: none; }
  .footer-cta__content { max-width: 100%; }
  .footer-cta__overlay {
    background: linear-gradient(180deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.62) 48%, rgba(0,0,0,.42) 100%);
  }
  .footer-cta__bg { object-position: center 30%; }
}

:root {
  --color-black: #000000;
  --color-off-white: #F0F0F0;
  --color-accent: #F5C518;
  --color-border: #E0E0E0;
  --color-cta-bg: #101010;
  --font-display: "TildaSans", "Golos Text", system-ui, sans-serif;
  --font-body: "TildaSans", "Golos Text", system-ui, sans-serif;
  --font-hero: "TildaSans", "Golos Text", system-ui, sans-serif;
  --container-max: min(1200px, calc(100% - 48px));
  --gutter: 24px;
  --header-h: 64px;
  --hero-banner-min-h: clamp(480px, 56vh, 580px);
  --marquee-h: 12px;
  --section-y: 2.5rem;
  --radius-btn: 10px;
  --radius-input: 6px;
  --radius-card: 14px;
  --reading-width: 680px;
  --measure: 65ch;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.48;
  color: var(--color-black);
  background: var(--color-off-white);
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
.container { width: var(--container-max); margin-inline: auto; padding-inline: var(--gutter); }

.skip-link {
  position: absolute;
  left: -999px;
  top: 0;
  z-index: 100000;
  padding: 0.75rem 1rem;
  background: linear-gradient(180deg, rgba(0,0,0,.9) 0%, rgba(0,0,0,.72) 40%, rgba(0,0,0,.45) 70%, rgba(0,0,0,.18) 90%, transparent 100%);
  color: var(--color-off-white);
  text-shadow: 0 1px 4px rgba(0,0,0,.55);
}
.skip-link:focus { left: 1rem; top: 1rem; }
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}

/* Header */
#header.header {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.92);
  color: var(--color-off-white);
  min-height: var(--header-h);
  box-shadow: none;
}
#header.header.is-scrolled {
  background: rgba(0, 0, 0, 0.92);
  box-shadow: none;
}
.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: var(--header-h);
}
.header__logo-accent,
.site-footer__brand-accent { color: #F5C518; }
.header__logo {
  font-family: var(--font-hero);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: none;
  text-decoration: none;
  color: var(--color-off-white);
}
.header__nav { flex: 1; display: flex; justify-content: center; }
.primary-nav {
  display: flex;
  gap: 1.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.primary-nav__link {
  text-decoration: none;
  font-family: var(--font-hero);
  font-size: 0.9375rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0.02em;
  color: var(--color-off-white);
}
.primary-nav__link:hover { color: var(--color-accent); }
.primary-nav__item--dropdown { position: relative; }
.primary-nav__dropdown-toggle {
  background: none;
  border: 0;
  cursor: pointer;
  font: inherit;
  padding: 0;
  color: var(--color-off-white);
}
.primary-nav__submenu { list-style: none; margin: 0; padding: .45rem 0; position: absolute; top: calc(100% + .35rem); left: 0; min-width: 220px; background: #101010; border: 1px solid rgba(240,240,240,.14); box-shadow: 0 12px 28px rgba(0,0,0,.35); opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .2s ease, transform .2s ease, visibility .2s ease; z-index: 30; }
.primary-nav__item--dropdown:hover .primary-nav__submenu, .primary-nav__item--dropdown:focus-within .primary-nav__submenu, .primary-nav__item--dropdown.is-open .primary-nav__submenu { opacity: 1; visibility: visible; transform: translateY(0); }
.primary-nav__sublink { display: block; padding: .55rem 1rem; color: var(--color-off-white); text-decoration: none; font-family: var(--font-hero); font-size: .8125rem; font-weight: 600; letter-spacing: .04em; text-shadow: none; white-space: nowrap; }
.primary-nav__sublink:hover { color: var(--color-accent); background: rgba(245,197,24,.08); }
.primary-nav__link, .header__logo { text-shadow: none; }
.header__phone { font-family: var(--font-hero); font-size: 0.875rem; font-weight: 600; letter-spacing: 0.04em; color: var(--color-off-white); text-decoration: none; white-space: nowrap; text-shadow: none; }
.header__phone:hover { color: var(--color-accent); }
.header__actions { display: flex; align-items: center; gap: 0.75rem; }
.header__burger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: transparent;
  border: 0;
  cursor: pointer;
  padding: 0.5rem;
}
.header__burger-bar {
  width: 22px;
  height: 2px;
  background: var(--color-off-white);
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.85rem 1.25rem;
  border-radius: var(--radius-btn);
  border: 1px solid transparent;
  font-family: var(--font-display);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: none;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.2s ease, background 0.2s ease;
}
.btn--primary, .btn--cta {
  background: var(--color-cta-bg);
  color: var(--color-off-white);
  border-color: var(--color-black);
}
.btn--primary:hover, .btn--cta:hover { background: var(--color-accent); }
.btn--accent { background: var(--color-accent); color: #101010; }
.btn--white {
  background: #fff;
  color: #1a1208;
  border: 1px solid #fff;
  padding: .7rem 1.45rem;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(0,0,0,.12);
  text-decoration: none;
}
.btn--white:hover { background: #f5f5f5; color: #1a1208; }
.btn--telegram{background:transparent;color:#229ED9;border:1.5px solid #229ED9;font-weight:700;text-transform:uppercase;letter-spacing:.04em;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn--telegram:hover{background:#229ED9;color:#fff;border-color:#229ED9}.btn--whatsapp{background:transparent;color:#1FA74F;border:1.5px solid #25D366;font-weight:700;text-transform:uppercase;letter-spacing:.04em;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn--whatsapp:hover{background:#25D366;color:#fff;border-color:#25D366}.btn__icon{width:20px;height:20px;flex:0 0 auto;display:block}.benefits .hero__actions{flex-wrap:wrap;gap:.75rem}.benefits .hero__actions .btn--telegram,.benefits .hero__actions .btn--whatsapp{flex:1 1 0;min-width:150px;max-width:220px;padding:.85rem 1rem}

/* Checkerboard services */
.checkerboard {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border: 1px solid var(--color-border);
}
.checkerboard__cell {
  min-height: 220px;
  padding: 1.5rem;
  border: 1px solid var(--color-border);
}
.checkerboard__cell:nth-child(odd) { background: var(--color-off-white); }
.checkerboard__cell:nth-child(even) { background: var(--color-black); color: var(--color-off-white); }

/* Footer */
.site-footer {
  background: var(--color-black);
  color: var(--color-off-white);
  padding-block: 3rem 1.5rem;
}
.site-footer__inner {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1fr;
  gap: 2rem;
}
.site-footer__brand {
  font-family: var(--font-hero);
  font-weight: 700;
  letter-spacing: 0.04em;
  font-size: 1rem;
}
.site-footer__title {
  font-family: var(--font-display);
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-accent);
}
.site-footer__list, .site-footer__messengers, .site-footer__legal {
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer__list a, .site-footer__messengers a, .site-footer__legal a {
  text-decoration: none;
  opacity: 0.9;
  font-weight: 400;
}
.site-footer__list a:hover { color: var(--color-accent); }
.site-footer__messengers { display: flex; flex-direction: column; gap: 0.35rem; }
.site-footer__messenger {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 44px;
  padding: 0.35rem 0;
  text-decoration: none;
  color: var(--color-off-white);
  opacity: 0.92;
  font-size: 0.9rem;
  font-weight: 400;
}
.site-footer__messenger:hover { color: var(--color-accent); opacity: 1; }
.site-footer__messenger-icon { width: 20px; height: 20px; flex: 0 0 auto; display: block; }
.site-footer__phone { display: block; margin-top: 0.65rem; font-size: 0.95rem; font-weight: 400; color: var(--color-off-white); text-decoration: none; opacity: 0.92; }
.site-footer__phone:hover { color: var(--color-accent); opacity: 1; }
.site-footer__social a {
  font-size: 0.875rem;
  text-decoration: none;
  color: var(--color-off-white);
  opacity: 0.85;
}
.site-footer__social a:hover { color: var(--color-accent); opacity: 1; }
.site-footer__bottom { margin-top: 2rem; border-top: 1px solid rgba(240,240,240,0.15); padding-top: 1rem; font-size: 0.85rem; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem 1.5rem; }
.site-footer__legal { display:flex; flex-wrap:wrap; gap:.75rem 1.25rem; margin:0; }
.site-footer__legal a { color:inherit; opacity:.9; text-decoration:none; }
.site-footer__legal a:hover { color:var(--color-accent); opacity:1; }
.site-footer__copy { margin:0; }

/* Forms — Teya lead-form.pattern.html */

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.lead-form { max-width: 100%; width: 100%; }

.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }

.form-field--full { grid-column: 1 / -1; }

.form-field input, .form-field textarea, .lead-form__field input, .lead-form__field textarea {

  width: 100%;

  min-height: 48px;

  padding: 12px 16px;

  border: 1px solid var(--color-border);

  border-radius: var(--radius-input);

  background: #fff;

  font-family: var(--font-body);
  font-size: inherit;
  line-height: inherit;

  transition: border-color 0.2s ease, box-shadow 0.2s ease;

}

.form-field input:focus, .form-field textarea:focus, .lead-form__field input:focus, .lead-form__field textarea:focus {

  outline: none;

  border-color: var(--color-black);

  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);

}

.lead-form--card{
  background: linear-gradient(180deg, #FFFCFA 0%, #FAF6EE 100%);
  border: 1px solid #ECE3D2;
  border-radius: 14px;
  padding: 1.5rem 1.4rem 1.35rem;
  box-shadow: 0 10px 28px rgba(60, 40, 10, 0.06);
}
.lead-form--card .form-label{
  display:block;
  margin:0 0 0.45rem;
  font-family: var(--font-body);
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  color: #3a2a18;
}
.lead-form--card .form-grid{
  gap: 0.9rem 1rem;
}
.lead-form--card .form-grid--no-phone{
  grid-template-columns: 1fr 1fr;
}
.lead-form--card .form-field input,
.lead-form--card .form-field textarea{
  min-height: 50px;
  padding: 0.85rem 1rem;
  border: 1px solid #E4D8C4;
  border-radius: 10px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}
.lead-form--card .form-field input:hover,
.lead-form--card .form-field textarea:hover{
  border-color: #d4c4a8;
}
.lead-form--card .form-field input:focus,
.lead-form--card .form-field textarea:focus{
  border-color: var(--color-accent, #E3B45A);
  box-shadow: 0 0 0 3px rgba(227, 180, 90, 0.22);
}
.lead-form--card .form-field textarea{
  min-height: 128px;
}
.lead-form--card .lead-form__consent,
.lead-form--card .form-consent{
  margin-top: 1.1rem;
  padding: 0.75rem 0.85rem;
  background: rgba(255,255,255,0.65);
  border-radius: 8px;
  border: 1px solid rgba(228, 216, 196, 0.7);
  font-size: 0.8rem;
  line-height: 1.45;
  color: #5a4a38;
}
.lead-form--card .lead-form__consent input[type="checkbox"],
.lead-form--card .form-consent input[type="checkbox"]{
  margin-right: 0.45rem;
  accent-color: var(--color-accent, #E3B45A);
}
.lead-form--card .lead-form__actions{
  margin-top: 1.15rem;
}
.lead-form--card .btn--block{
  width: 100%;
  justify-content: center;
  min-height: 50px;
  border-radius: 10px;
  font-weight: 600;
}
@media (max-width: 640px){
  .lead-form--card .form-grid--no-phone{ grid-template-columns: 1fr; }
  .lead-form--card{ padding: 1.2rem 1rem 1.15rem; border-radius: 12px; }
}

.form-field textarea, .lead-form__field textarea { min-height: 120px; resize: vertical; }

.form-field input::placeholder, .form-field textarea::placeholder { color: #666; opacity: 1; }

.lead-form__field { margin-bottom: 0; }

.lead-form__hp { position: absolute; left: -9999px; height: 0; overflow: hidden; }

.lead-form__consent, .form-consent { font-size: 0.85rem; line-height: 1.5; margin: 1rem 0 0; }

.form-actions, .lead-form__actions { margin-top: 1rem; display: flex; flex-wrap: wrap; gap: 0.75rem; }

/* Cookie banner */
.cookie-banner {
  position: fixed;
  inset-inline: 0;
  bottom: 0;
  z-index: 2000;
  background: var(--color-black);
  color: var(--color-off-white);
  border-top: 1px solid rgba(240,240,240,0.2);
}
.cookie-banner__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-block: 1rem;
}
.cookie-banner a { color: var(--color-accent); }

/* Content */
.site-main { padding-block: var(--section-y); min-height: 50vh; }
.entry__title a { text-decoration: none; }

/* Motion hooks */
[data-motion="header"] { will-change: transform; }

@media (max-width: 900px) {
  #header.header,
  #header.header.is-scrolled,
  body.nav-open #header.header {
    background: rgba(26, 18, 8, 0.96);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
  }
  .header__inner {
    justify-content: space-between;
    gap: 0.75rem;
  }
  .header__brand,
  .header__actions {
    flex-shrink: 0;
  }
  .header__logo,
  .header__logo-accent { color: #fff; text-shadow: none; }
  .header__logo-accent { color: #F5C518; }
  .header__burger-bar { background: #fff; }
  .header__burger { display: flex; }
  .header__actions .header__phone { display: none !important; }
  .header__nav {
    flex: none;
    position: fixed;
    top: var(--header-h);
    left: 0;
    right: 0;
    bottom: auto;
    z-index: 999;
    background: rgba(26, 18, 8, 0.98);
    padding: 1rem var(--gutter);
    margin: 0;
    transition: transform 0.3s ease, opacity 0.25s ease, visibility 0.25s ease;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.4);
    max-height: calc(100dvh - var(--header-h));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
  .header__nav:not(.is-open) {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-120%);
  }
  .header__nav.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    top: var(--header-h);
  }
  .primary-nav { flex-direction: column; }
  .primary-nav__submenu { position: static; transform: none; opacity: 1; visibility: visible; display: none; border: 0; box-shadow: none; background: transparent; padding: .25rem 0 .5rem .75rem; }
  .primary-nav__item--dropdown.is-open .primary-nav__submenu { display: block; }
  .primary-nav__sublink { padding: .45rem 0; }
  .primary-nav__item--contact {
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid rgba(240, 240, 240, 0.14);
  }
  .primary-nav__link--phone {
    font-weight: 600;
    color: var(--color-accent);
  }
  .site-footer__inner { grid-template-columns: 1fr; }
  .checkerboard { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* === PAGE BUILDER (AURA match) === */
h1:not(.hero__title),h2:not(.hero__title),h3,.section-title,.page-hero__title{font-family:var(--font-display);text-transform:none;letter-spacing:-.01em;line-height:1.2;font-weight:700}
h1,.page-hero__title{font-size:clamp(2rem,5vw,3.25rem);margin:0 0 1rem}
.hero .hero__title{font-family:var(--font-hero);font-size:clamp(1.75rem,4.2vw,3rem);font-weight:700;line-height:1.2;letter-spacing:-.01em;text-transform:none;max-width:14ch}
.hero__title-accent{color:var(--color-accent)}
h2,.section-title{font-size:clamp(1.35rem,3vw,2rem);margin:0 0 1rem}
.section-title--inverse{color:var(--color-off-white)}
.label{font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);display:block;margin-bottom:1rem}
.lead{max-width:65ch;font-size:1rem;line-height:1.5;color:#333;margin:0 0 1rem}
.lead--inverse{color:rgba(240,240,240,.88)}
.lead, p, .nap-list, .nap-list li, .disclaimer, .faq__a, .service-block__text { font-family: var(--font-body); }
.form-field label, .lead-form__field label,
.form-field input, .form-field textarea,
.lead-form__field input, .lead-form__field textarea,
.lead-form__consent, .form-consent { font-family: var(--font-body); }
h1,h2,h3,.section-title,.page-hero__title { font-family: var(--font-display); }
.link-accent{color:var(--color-accent)}
.disclaimer{font-size:.8rem;color:#b8a98a;font-style:italic;max-width:60rem}
.section{padding-block:var(--section-y)}
.section--white{background:#fff}
.section--dark{background:var(--color-black);color:var(--color-off-white)}
.section--compact{padding-block:1.65rem}
.site-main--front{padding-block:0}
.site-main--inner{padding-block:0}
.page-hero{position:relative;min-height:clamp(300px,40vh,360px);display:flex;align-items:center;padding-block:calc(var(--header-h) + 1.5rem) 1.5rem;background:#1a1208;color:var(--color-off-white);overflow:hidden}.page-hero::before{content:'';position:absolute;inset:0;z-index:0;background:url(../images/hero-boat-map.jpg) center 62%/cover no-repeat;filter:brightness(.7)}.page-hero::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.34) 24%,rgba(0,0,0,.12) 42%,transparent 62%)}.page-hero .container{position:relative;z-index:3;max-width:60rem}.page-hero__title{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.45)}.page-hero .lead,.page-hero .lead--inverse{color:var(--color-off-white);text-shadow:0 1px 10px rgba(0,0,0,.5);max-width:46rem}.page-hero .label{display:none}

/* Hero */
.hero{position:relative;display:flex;flex-direction:column;min-height:var(--hero-banner-min-h);background:#1a1208;color:var(--color-off-white);overflow:hidden;padding-top:var(--header-h)}
.hero__bg{position:absolute;inset:0;z-index:0;overflow:hidden}.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:62% center;filter:none}.hero__overlay{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.80) 0%,rgba(0,0,0,.58) 28%,rgba(0,0,0,.30) 52%,rgba(0,0,0,.10) 72%,transparent 90%)}.hero__overlay-gloss{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.18;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 52%,transparent 52%);mask-image:linear-gradient(90deg,#000 0%,#000 52%,transparent 52%);background:linear-gradient(112deg,transparent 0%,rgba(255,255,255,.04) 14%,rgba(255,255,255,.07) 20%,transparent 36%)}.hero__hollow{position:absolute;top:12%;left:58%;transform:translateX(-50%);font-family:var(--font-hero);font-size:clamp(2.5rem,9vw,7rem);font-weight:700;color:transparent;-webkit-text-stroke:1px rgba(240,240,240,.1);white-space:nowrap;pointer-events:none;z-index:1;opacity:.55}
.hero__three{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;opacity:.12}
.hero__inner{position:relative;z-index:3;flex:1;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:stretch;min-height:calc(var(--hero-banner-min-h) - var(--header-h) - var(--marquee-h));padding:1rem 0 0}
.hero__subtitle{font-family:var(--font-hero);font-size:clamp(1rem,1.6vw,1.25rem);font-weight:400;line-height:1.55;max-width:42ch;color:#D8D8D8;margin:.75rem 0 1rem;text-shadow:0 1px 8px rgba(0,0,0,.55)}
.hero__copy{display:flex;flex-direction:column;justify-content:center;align-self:center}.hero__title{text-shadow:0 2px 18px rgba(0,0,0,.4)}.hero__actions{display:flex;flex-wrap:wrap;gap:1rem}
.hero__visual{position:relative;min-height:min(320px,42vh);display:flex;justify-content:center;align-items:flex-end;align-self:end;margin-bottom:0}
.hero__circle{position:absolute;width:min(420px,42vw);aspect-ratio:1;border-radius:50%;border:1px solid rgba(240,240,240,.2);top:6%;right:2%}
.hero__figure{position:relative;z-index:3;width:auto;max-width:min(598px,52vw);max-height:min(676px,calc(var(--hero-banner-min-h) - var(--header-h) - var(--marquee-h)));margin-bottom:0;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 32px rgba(0,0,0,.22))}
.hero__dot{position:absolute;bottom:18%;left:0;width:72px;height:72px;background-image:radial-gradient(circle,#666 1.5px,transparent 1.5px);background-size:12px 12px;opacity:.45}
.hero__red{position:absolute;width:12px;height:12px;background:var(--color-accent);border-radius:50%;top:28%;right:14%}
.btn--outline{background:transparent;color:var(--color-off-white);border-color:rgba(240,240,240,.45)}
.btn--on-light{color:var(--color-black);border-color:var(--color-black)}

.product-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.tier-card{position:relative;overflow:hidden;border:1px solid var(--color-border);min-height:min(360px,42vw);display:flex;flex-direction:column;justify-content:flex-start}
.tier-card--photo{background-size:cover;background-position:center;background-repeat:no-repeat}
.tier-card--tier1{background-image:url(../images/tier-tier1.png)}
.tier-card--tier2{background-image:url(../images/tier-tier2.png)}
.tier-card--tier3{background-image:url(../images/tier-tier3.png)}
.tier-card__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.6) 40%,rgba(0,0,0,.35) 70%,rgba(0,0,0,.55) 100%);pointer-events:none}
.tier-card__body{position:relative;z-index:1;padding:1.75rem;color:var(--color-off-white);display:flex;flex-direction:column;gap:.85rem;flex:1;align-self:stretch}
.tier-card__level{font-family:var(--font-display);font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}
.tier-card h3{font-family:var(--font-display);font-size:.9375rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--color-off-white);margin:0;line-height:1.3}
.tier-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;font-size:.875rem;line-height:1.5;color:rgba(240,240,240,.9)}
.tier-card ul li{position:relative;padding-left:1rem}
.tier-card ul li::before{content:'';position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--color-accent)}
.site-footer__social{display:flex;flex-wrap:wrap;gap:.6rem}.site-footer__social-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:10px;background:transparent;transition:transform .2s ease,filter .2s ease}.site-footer__social-link .social-icon{display:block;width:40px;height:40px;border-radius:10px}.site-footer__social-link:hover{transform:translateY(-2px);filter:brightness(1.08)}.site-footer__social-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
/* Marquee */
.motion-marquee{background:var(--color-accent);color:#101010;padding:0;overflow:hidden;margin-top:0;position:relative;z-index:4;height:12px;min-height:12px}.motion-marquee--attached{margin-top:0;flex-shrink:0}
.motion-marquee__track{display:none!important}
@keyframes mkb-marquee{to{transform:translateX(-50%)}}

/* Stats */
.stats{background:var(--color-off-white);border-top:1px solid var(--color-border)}
.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;gap:1rem}
.stats__item{padding:1rem;position:relative}
.stats__num{font-family:var(--font-display);font-size:clamp(1.25rem,3vw,2rem);font-weight:700}
.stats__num--a{color:var(--color-accent)}
.stats__label{font-size:.8125rem;color:#444;max-width:18ch;margin:.5rem auto 0}

/* Checkerboard */
.checkerboard{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--color-border)}.checkerboard--2{grid-template-columns:repeat(2,1fr)}.checkerboard--2 .cell{aspect-ratio:auto;min-height:210px}.checkerboard--2 .cell.cell--photo.has-list{min-height:248px}.checkerboard--2 .cell--img--labeled{aspect-ratio:4/3;min-height:0}.cell--img{position:relative;overflow:hidden}.cell--img img{width:100%;height:100%;object-fit:cover;display:block}.cell--img--labeled{min-height:220px}.cell__plate--br{position:absolute;right:0;bottom:0;z-index:2;margin:0;padding:.5rem .8rem;background:rgba(245,197,24,.95);border-left:3px solid #101010;max-width:75%}.cell__plate--br h3{color:#101010;margin:0;font-size:.82rem;font-weight:700;letter-spacing:.02em;line-height:1.3;text-shadow:none}
.cell{aspect-ratio:1;min-height:200px;padding:1.25rem;border:1px solid var(--color-border);display:flex;flex-direction:column;justify-content:flex-start;gap:0;text-decoration:none;color:inherit}
.cell h3{font-size:.8125rem;font-weight:700;letter-spacing:.02em;line-height:1.35;margin:0 0 .85rem;text-transform:none}
.cell__list{list-style:none;margin:.85rem 0 0;padding:0;display:flex;flex-direction:column;gap:.42rem;flex:1}
.cell__list li{position:relative;padding-left:.85rem;font-size:.78rem;line-height:1.45;opacity:.92}
.cell__list li::before{content:'';position:absolute;left:0;top:.55em;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.65}
.cell--red .cell__list li::before{background:#101010;opacity:.8}
.cell--dark{background:var(--color-black);color:var(--color-off-white)}
.cell--red{background:var(--color-accent);color:#101010}
.cell--img{padding:0;overflow:hidden;position:relative}
.cell--img img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%) contrast(1.1)}
.cell--photo{position:relative;padding:0;overflow:hidden;background:#1a1208}
.cell--photo .cell__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(45%) brightness(.62)}
.cell--photo .cell__plate{position:relative;z-index:2;display:inline-block;align-self:flex-start;margin:1rem;padding:.55rem .85rem;background:rgba(0,0,0,.72);border-left:3px solid var(--color-accent);max-width:calc(100% - 2rem)}
.cell--photo .cell__plate h3{color:var(--color-off-white);margin:0;font-size:.84rem;font-weight:700;letter-spacing:.02em;line-height:1.3;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.cell--photo.cell--photo--accent .cell__plate{background:rgba(245,197,24,.92);border-left-color:#101010}
.cell--photo.cell--photo--accent .cell__plate h3{color:#101010;text-shadow:none}
.cell--img--labeled .cell__plate--br{position:absolute;right:1rem;bottom:1rem;z-index:3;display:inline-block;max-width:calc(100% - 2rem);padding:.55rem .85rem;background:#F5C518;border-left:3px solid #101010}
.cell--img--labeled .cell__plate--br h3{color:#101010;margin:0;font-size:.84rem;font-weight:700;letter-spacing:.02em;line-height:1.3;text-shadow:none}

/* Benefits */
.benefits{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.benefits__ring{position:relative;max-width:420px;margin-inline:auto}
.benefits__ring-img,.benefits__ring img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;border:1px solid var(--color-border);filter:grayscale(100%)}.benefits__ring-svg{width:100%;aspect-ratio:1;border-radius:50%;border:1px solid var(--color-border);display:block;filter:none}
.benefits__dot{position:absolute;width:22px;height:22px;background:var(--color-accent);border-radius:50%;bottom:10%;right:8%}
.benefits ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem}
.benefits ul li{padding-left:1.5rem;position:relative}
.benefits ul li::before{content:'';position:absolute;left:0;top:.55em;width:8px;height:8px;background:var(--color-accent);border-radius:50%}
.benefits__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.1rem}
.benefits__list li{padding-left:1.5rem;position:relative}
.benefits__list li::before{content:'';position:absolute;left:0;top:.55em;width:8px;height:8px;background:var(--color-accent);border-radius:50%}

/* Steps */
.steps-list{max-width:60ch;line-height:1.7;padding-left:1.25rem}
.steps-list li{margin-bottom:.75rem}

/* CTA band */
.cta-band{background:var(--color-black);color:var(--color-off-white);padding:var(--section-y) 0}
.cta-band__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem}.cta-band,#tax2026.section--dark{position:relative;background:#1a1208;color:var(--color-off-white);overflow:hidden}.cta-band::before,#tax2026.section--dark::before{content:'';position:absolute;inset:0;z-index:0;background:url(../images/hero-boat-map.jpg) center 62%/cover no-repeat;filter:brightness(.5) saturate(.85);opacity:.5}.cta-band::after,#tax2026.section--dark::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(26,18,8,.84) 0%,rgba(26,18,8,.62) 100%)}.cta-band .container,#tax2026 .container{position:relative;z-index:3}.cta-band{padding:1.6rem 0}#tax2026{padding-block:1.8rem}#tax2026 .section-title,#tax2026 .lead--inverse,#tax2026 .label{position:relative;z-index:3}#tax2026 .section-title{text-shadow:0 2px 14px rgba(0,0,0,.5)}#tax2026 .lead--inverse{text-shadow:0 1px 8px rgba(0,0,0,.5)}.cta-band .section-title--inverse,.cta-band .lead--inverse{position:relative;z-index:3;text-shadow:0 2px 14px rgba(0,0,0,.5)}

/* FAQ */
.faq{display:flex;flex-direction:column;gap:1.25rem;align-items:stretch}
.faq__list{background:#fff;border:1px solid #EDEDED;border-radius:14px;overflow:hidden;padding:0 1.25rem;width:100%}
.faq__item{border-bottom:1px solid var(--color-border)}
.faq__q{width:100%;text-align:left;background:none;border:none;padding:.7rem 0;font-family:var(--font-display);font-size:.9rem;font-weight:600;letter-spacing:0;text-transform:none;cursor:pointer;display:flex;justify-content:space-between;gap:.75rem;min-height:40px;line-height:1.35;color:inherit}
.faq__q::after{content:'+';color:var(--color-accent);font-size:1.25rem}
.faq__item.open .faq__q::after{content:'\2212'}
.faq__a{display:none;padding-bottom:.7rem;color:#444;max-width:100%;width:100%;line-height:1.5;font-size:.95rem}
.faq__item.open .faq__a{display:block}

/* Blog cards */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:stretch}
.blog-grid--home{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
.blog-card{border:2px solid #C5C5C5;background:#fff;display:flex;flex-direction:column;box-shadow:0 2px 10px rgba(0,0,0,.07);min-height:100%;overflow:hidden;border-radius:var(--radius-card,14px);transition:border-color .2s ease,box-shadow .2s ease}
.blog-card:hover{border-color:var(--color-accent);box-shadow:0 6px 20px rgba(0,0,0,.11)}
.blog-card__img{position:relative;aspect-ratio:4/3;overflow:hidden;background:#f5f5f5}
.blog-card__img img,.blog-card__img .blog-card__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(15%) contrast(1.02)}
.blog-card__body{padding:.85rem .95rem .85rem;flex:1;display:flex;flex-direction:column;border-top:0;gap:.3rem}
.blog-card__title{font-family:var(--font-display);font-size:.9rem;font-weight:700;text-transform:none;letter-spacing:0;line-height:1.35;margin:.25rem 0 .35rem}
.blog-card__teaser{font-size:.82rem;color:#555;margin:0;flex:1;line-height:1.4}
.blog-card__label{display:none}
.blog-card__link{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);text-decoration:none;margin-top:.5rem;padding-top:.4rem}
.blog-deferred-note{font-size:.85rem;color:#666;margin-bottom:1.5rem}
.blog-deferred-note--inverse{color:rgba(240,240,240,.65)}

/* Contact */
#contact .container.contact,.contact,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}
#contact .container.contact > :nth-child(1),
.contact > :nth-child(1),
.contact-grid > :nth-child(1) { grid-column: 1; grid-row: 1; }
#contact .container.contact > :nth-child(2),
.contact > :nth-child(2),
.contact-grid > :nth-child(2) { grid-column: 2; grid-row: 1; }
#contact h2 {
  font-family: var(--font-display);
  text-transform: none;
  letter-spacing: 0.02em;
  font-size: clamp(1.4rem, 3vw, 2rem);
  line-height: 1.2;
  font-weight: 600;
  margin: 0 0 1rem;
}
.contact .lead { margin-bottom: 0; max-width: none; }
@media (min-width: 901px) {
  #contact .container.contact,
  .contact,
  .contact-grid {
    grid-template-columns: 1fr 1fr;
  }
}
.nap-list{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.75rem}
.anchor-nav{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.anchor-nav a{text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-display);font-size:.7rem;color:var(--color-accent);text-decoration:none}

/* Service blocks */
.service-block__grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}
.service-block__grid--reverse .service-block__img{order:2}
.service-block__img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:grayscale(90%) contrast(1.05);border:1px solid var(--color-border)}
.prose{max-width:none;width:100%}

@media(max-width:900px){
  .hero__inner,.benefits,.faq,.contact,.contact-grid,.service-block__grid,.service-block__grid--reverse,.form-grid,.product-tiers{grid-template-columns:1fr}
  .tier-card{min-height:280px}
  .hero__visual{min-height:280px;margin-bottom:0}
  .hero__figure{max-width:min(598px,78vw);max-height:min(676px,62vh)}
  .service-block__grid--reverse .service-block__img{order:0}
  .checkerboard{grid-template-columns:repeat(2,1fr)}
  .blog-grid--home{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-grid:not(.blog-grid--home){grid-template-columns:1fr}
  .stats__grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){.hero .hero__title{max-width:none;font-size:clamp(1.75rem,7vw,2.5rem)}.hero__figure{max-height:min(572px,65vh)}}
@media(max-width:480px){
  .checkerboard{grid-template-columns:1fr}
  .hero__figure{max-width:92vw;max-height:min(520px,62vh);margin-bottom:0}
  .hero__visual{margin-bottom:-12px}
}
@media (prefers-reduced-motion: reduce){
  .motion-marquee__track{animation:none}
}

/* === MOTION IMPLEMENT (aurora-team-motion) === */
body[data-reduced-motion="true"] .motion-marquee__track { animation: none; }
body[data-reduced-motion="true"] .hero__three { display: none; }
html[data-reduced-motion="true"] .hero__three { display: none; }

#stats{display:none!important}
.blog-deferred-note{display:none!important}

/* === MOTION DISABLED (client request) === */
html[data-reduced-motion="true"] .motion-marquee__track,
body[data-reduced-motion="true"] .motion-marquee__track,
.motion-marquee__track { animation:none!important; transform:none!important; flex-wrap:wrap; justify-content:center; row-gap:.35rem; }
html[data-reduced-motion="true"] .hero__three, body[data-reduced-motion="true"] .hero__three, .hero__three { display:none!important; }
html, body { scroll-behavior:auto!important; }

/* === Polish 1.0.21: hero form compact (banner height restored) === */

.hero__visual--form{min-height:0!important;display:flex;align-items:center;justify-content:center;align-self:center;margin-bottom:0;max-height:calc(var(--hero-banner-min-h) - var(--header-h) - var(--marquee-h) - 1.5rem)}

.hero-form{width:100%;max-width:min(420px,44vw);display:flex;flex-direction:column;gap:.45rem;background:#fff;border:1px solid var(--color-border);padding:.85rem .9rem .95rem}

.hero-form__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#f7f7f7;border:1px solid var(--color-border);padding:.55rem 0;text-align:center;margin:0}

.hero-form__stats>div{position:relative;padding:0 .35rem}

.hero-form__stats>div+div::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:1px;background:var(--color-border)}

.hero-form__stats strong{display:block;font-family:var(--font-display);font-size:clamp(.92rem,1.4vw,1.12rem);font-weight:700;color:var(--color-black);line-height:1.05}

.hero-form__stats span{display:block;font-size:.62rem;line-height:1.25;color:#555;margin-top:.15rem}

.hero-form__title{font-family:var(--font-display);font-size:.95rem;font-weight:700;line-height:1.25;color:var(--color-black);margin:0;text-transform:none;letter-spacing:0}

.hero-form .lead-form{border:none;padding:0;background:transparent;margin:0}

.hero-form .form-grid{grid-template-columns:1fr 1fr;gap:.5rem}

.hero-form .form-field input,.hero-form .lead-form__field input{min-height:40px;padding:8px 12px;font-size:.875rem}

.hero-form .form-field textarea,.hero-form .lead-form__field textarea{min-height:38px;height:38px;padding:8px 12px;font-size:.875rem;resize:vertical;line-height:1.4}

.hero-form .form-field--full{grid-column:1 / -1}

.hero-form .lead-form__consent{font-size:.7rem;line-height:1.35;margin:.4rem 0 0;color:#444}

.hero-form .lead-form__actions{margin-top:.5rem}

.hero-form .btn--accent{width:100%;padding:.6rem 1rem;font-size:.8125rem}

@media(max-width:900px){.hero__visual--form{margin-top:1.5rem}.hero-form{max-width:520px}.hero__inner{grid-template-columns:1fr}.hero-form .form-grid{grid-template-columns:1fr 1fr}}

@media(max-width:480px){.hero-form__stats strong{font-size:.95rem}.hero-form__stats span{font-size:.6rem}.hero-form .form-grid{grid-template-columns:1fr}}

/* cell--photo with list (dark/red) — bg photo + scrim, list on top */
.cell.cell--photo.has-list{padding:1.25rem}
.cell.cell--photo.has-list .cell__photo{filter:grayscale(22%) brightness(.6) contrast(1.05)}
.cell.cell--photo.has-list .cell__scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.5) 100%);pointer-events:none}
.cell.cell--photo.has-list.cell--red .cell__scrim{background:linear-gradient(180deg,rgba(245,197,24,.30) 0%,rgba(0,0,0,.55) 100%)}
.cell.cell--photo.has-list .cell__list,.cell.cell--photo.has-list h3{position:relative;z-index:2}
.cell.cell--photo.has-list.cell--red h3{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.cell.cell--photo.has-list.cell--red .cell__list li::before{background:#F5C518}.cell.cell--photo.has-list.cell--red .cell__list li{color:#fff}.cell.cell--photo.has-list.cell--dark h3,.cell.cell--photo.has-list.cell--dark .cell__list li{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}.cell.cell--photo.has-list.cell--dark .cell__list li::before{background:#F5C518}

/* === Polish 1.0.23: mobile fixes === */
html, body { overflow-x: hidden; max-width: 100%; }
html { scroll-padding-top: calc(var(--header-h) + 8px); }
#contact, .section[id] { scroll-margin-top: calc(var(--header-h) + 8px); }

.hl-yellow{background:#F5C518;color:#101010;padding:0 .18em;box-decoration-break:clone;-webkit-box-decoration-break:clone}

.blog-carousel{position:relative}
.blog-nav{display:none;position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:40px;height:40px;border:0;border-radius:50%;background:#F5C518;color:#101010;font-size:1.5rem;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.18);align-items:center;justify-content:center}
.blog-nav--prev{left:-6px}
.blog-nav--next{right:-6px}
.blog-nav:hover{background:#101010;color:#F5C518}

@media(max-width:900px){
  #contact .container.contact,.contact,.contact-grid{grid-template-columns:1fr !important;gap:2rem;align-items:start}
  #contact .container.contact > :nth-child(1),.contact > :nth-child(1),.contact-grid > :nth-child(1),
  #contact .container.contact > :nth-child(2),.contact > :nth-child(2),.contact-grid > :nth-child(2){grid-column:1 !important;grid-row:auto !important}
  #contact .lead-form--card,#contact .lead-form{width:100%;max-width:100%;padding:1.25rem}
  #contact .form-grid{grid-template-columns:1fr}
  .hero__subtitle{color:#fff !important;text-shadow:0 1px 4px rgba(0,0,0,.6) !important}
  .hero-form{max-width:100% !important;width:100% !important}
  .hero__inner{grid-template-columns:1fr !important;min-width:0;padding-bottom:clamp(12px,3vw,20px)}
  .hero__copy,.hero__visual--form{min-width:0}
  .hero__visual--form{margin-bottom:clamp(12px,3vw,20px)}
  .product-tiers{grid-template-columns:1fr !important;gap:1rem}
  .tier-card{min-width:0;max-width:100%}
  .checkerboard{grid-template-columns:1fr !important}
  .cell{min-width:0;max-width:100%;aspect-ratio:auto;min-height:200px}
}

@media(max-width:480px){
  .hero-form{max-width:100% !important;width:100% !important;padding:.75rem}
  .hero-form .form-grid{grid-template-columns:1fr !important}
  .hero-form__stats{grid-template-columns:repeat(3,1fr);min-width:0}
  .hero-form__stats > div{padding:0 .2rem;min-width:0}
  .hero-form__stats strong{font-size:.95rem}
  .hero-form__stats span{font-size:.58rem}
  .hero__inner{gap:1rem}
  .container{padding-inline:16px}
  :root{--gutter:16px;--container-max:calc(100% - 0px)}
  .stats__grid{grid-template-columns:repeat(2,1fr);gap:.5rem}
  .site-footer__bottom{flex-direction:column;align-items:flex-start;gap:.75rem}
}

.site-footer__phone{display:block;margin-top:1rem;font-family:var(--font-display);font-size:1rem;font-weight:400;letter-spacing:.02em;color:var(--color-off-white);text-decoration:none;white-space:nowrap}.site-footer__phone:hover{color:var(--color-accent)}.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem}.svc-card{display:flex;flex-direction:column;gap:.7rem;background:#FAF6EE;border:1px solid #ECE3D2;border-radius:10px;padding:1.4rem 1.35rem 1.25rem;text-decoration:none;color:#1a1208;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.svc-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(60,40,10,.10);border-color:#E3B45A}.svc-card__icon-badge{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:10px;background:linear-gradient(160deg,#FF6A2F 0%,#F24E1E 100%);color:#fff}.svc-card__icon{width:26px;height:26px;display:block}.svc-card__title{font-family:var(--font-display);font-size:1.05rem;font-weight:700;line-height:1.25;margin:0;color:#1a1208}.svc-card__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;flex:1}.svc-card__list li{position:relative;padding-left:1rem;font-size:.85rem;line-height:1.4;color:#3a2e1a}.svc-card__list li::before{content:'';position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:#E3B45A}.svc-card__more{font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#1a1208;margin-top:.4rem}.svc-card:hover .svc-card__more{color:#b98a1f}@media(max-width:900px){.svc-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.svc-grid{grid-template-columns:1fr}}.section--compact{padding-block:2.25rem}.benefits--compact{align-items:center;gap:2.5rem}.ai-buttons{display:flex;flex-direction:column;gap:.8rem;width:100%;max-width:300px;margin-inline:auto}.ai-buttons .btn{width:100%;min-height:54px;padding:.85rem 1.25rem;font-size:1rem}.ai-buttons--left{margin-inline:0;max-width:300px}.nap-form{min-width:0}.service-article__container{max-width:var(--container-max);width:100%;margin-inline:auto;box-sizing:border-box}.service-article__intro{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.service-article__img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;border:1px solid var(--color-border)}.service-article__section{margin-top:2rem}.service-article__section .cell__list{margin-top:.75rem;max-width:60ch}.service-article__body .section-title{font-size:clamp(1.3rem,2.6vw,1.7rem)}.service-article__points .cell__list{max-width:60ch}.service-article__cta{margin-top:2.5rem;padding:1.75rem;background:#FAF6EE;border:1px solid #ECE3D2;border-radius:10px}.service-article__faq--legacy{display:none!important}@media(max-width:768px){.service-article__cta{padding:1.25rem}}/* Tier cards — light warm cards with chess sketch */
.tier-card{background:#FAF6EE!important;border:1px solid #ECE3D2!important;border-radius:10px;overflow:hidden}
.tier-card--tier1,.tier-card--tier2,.tier-card--tier3{background-image:none!important}
.tier-card__scrim{display:none}
.tier-card__chess{position:absolute;right:-14px;bottom:-18px;width:170px;height:170px;color:#D9B777;opacity:.22;pointer-events:none;line-height:0;z-index:0}
.tier-card--tier2 .tier-card__chess{color:#C9A14A;opacity:.20}
.tier-card--tier3 .tier-card__chess{color:#B98A1F;opacity:.26}
.tier-card__chess .chess-sketch{width:100%;height:100%;display:block}
.tier-card__body{color:#1a1208!important}
.tier-card__level{display:inline-flex;align-self:flex-start;padding:.28rem .7rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.06em}
.tier-card--tier1 .tier-card__level{background:transparent!important;color:#1a1208!important;border:1.5px solid var(--color-accent)}
.tier-card--tier2 .tier-card__level{background:var(--color-accent)!important;color:#1a1208!important;border:none}
.tier-card--tier3 .tier-card__level{background:#1a1208!important;color:var(--color-accent)!important;border:none}
.tier-card h3{color:#1a1208!important}
.tier-card ul{color:#3a2e1a!important}
.tier-card ul li::before{background:#E3B45A!important}
@media(max-width:768px){.tier-card__chess{width:130px;height:130px;opacity:.18}}
/* FAQ section — soft warm highlight */
.faq-section{background:#FAF6EE!important;border-top:1px solid #EFE6D4;border-bottom:1px solid #EFE6D4}
/* CTA band — bottom, square corners, prettified */
.cta-band{border-radius:0!important;border-top:3px solid var(--color-accent);padding:2.1rem 0!important}
.cta-band__inner{align-items:center}
.cta-band .btn--accent{border-radius:var(--radius-btn);padding:.95rem 1.7rem;font-weight:700;letter-spacing:.02em;box-shadow:0 6px 18px rgba(245,197,24,.18);text-transform:none}
.cta-band .btn--accent:hover{filter:brightness(1.06)}
.cta-band .section-title--inverse{margin:0 0 .25rem}
.cta-band .section-title,
.cta-band .section-title--inverse {
  color: var(--color-off-white) !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.55);
}
.cta-band .section-title--inverse {
  margin: 0;
}

/* AI block — light warm highlight + square buttons (style of previous edits) */
#ai.section--white{background:#FAF6EE!important;border-top:1px solid #EFE6D4;border-bottom:1px solid #EFE6D4}
#ai .label{color:#b98a1f}
.ai-buttons .btn,.ai-buttons .btn--telegram,.ai-buttons .btn--whatsapp{border-radius:var(--radius-btn)}
/* Site-wide compact rhythm */
.section-title{margin:0 0 .65rem}
.label{margin-bottom:.45rem}
.faq-section{padding-block:2rem!important}
.faq__intro .section-title{margin-bottom:.5rem}

.benefits--compact{gap:1.75rem!important}
#ai .lead{margin-bottom:.5rem}
#ai .section-title{max-width:28ch}
/* CTA promo card (orange) */
.cta-promo-wrap{padding-block:2rem!important}
.cta-promo{display:grid;grid-template-columns:minmax(220px,.95fr) 1.05fr;gap:1.5rem;align-items:stretch;background:linear-gradient(135deg,#FF6A2F 0%,#F24E1E 100%);border-radius:18px;overflow:hidden;min-height:300px;padding:1.25rem 1.5rem 1.25rem 1rem;color:#fff}
.cta-promo__visual{position:relative;min-height:260px;display:flex;align-items:flex-end;justify-content:center}
.cta-promo__person{width:auto;max-width:100%;max-height:320px;height:auto;object-fit:contain;object-position:bottom center;display:block;filter:drop-shadow(0 10px 22px rgba(0,0,0,.18))}
.cta-promo__badge{position:absolute;display:flex;align-items:center;gap:.55rem;background:rgba(255,255,255,.18);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:.55rem .7rem;color:#fff;font-size:.78rem;line-height:1.2;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.cta-promo__badge small{display:block;opacity:.85;font-size:.68rem;margin-top:.1rem}
.cta-promo__badge-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.22);font-size:.95rem;flex:0 0 auto}
.cta-promo__badge--left{left:4%;top:18%}
.cta-promo__badge--right{right:2%;top:42%}
.cta-promo__content{display:flex;flex-direction:column;justify-content:center;padding:.5rem .25rem .5rem 0}
.cta-promo__title{font-family:var(--font-display);font-size:clamp(1.35rem,2.4vw,2rem);font-weight:700;line-height:1.15;margin:0 0 1rem;color:#fff}
.cta-promo__list{list-style:none;margin:0 0 1.25rem;padding:0;display:flex;flex-direction:column;gap:.45rem}
.cta-promo__list li{position:relative;padding-left:1rem;font-size:.9rem;line-height:1.4;color:rgba(255,255,255,.95)}
.cta-promo__list li::before{content:'';position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:#fff}
.cta-promo__btn{align-self:flex-start;background:#fff!important;color:#101010!important;border:0!important;border-radius:0!important;padding:.9rem 1.5rem;font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.cta-promo__btn:hover{filter:brightness(.97);transform:translateY(-1px)}
@media(max-width:900px){.cta-promo{grid-template-columns:1fr;padding:1.1rem 1rem 1.25rem}.cta-promo__visual{min-height:220px}.cta-promo__person{max-height:260px}.cta-promo__badge--left{left:2%;top:8%}.cta-promo__badge--right{right:2%;top:38%}}
@media(max-width:560px){.cta-promo__badge{font-size:.72rem;padding:.45rem .55rem}.cta-promo__badge-icon{width:24px;height:24px}.cta-promo__title{font-size:1.25rem}}
/* CTA grid (copy + photo) */
.cta-grid-wrap{padding-block:2rem!important}
.cta-grid{display:grid;gap:1rem;align-items:stretch}
.cta-grid__copy{display:flex;flex-direction:column;gap:.55rem}
.cta-grid__title{font-family:var(--font-display);font-size:clamp(1.45rem,2.5vw,2.1rem);font-weight:700;line-height:1.12;margin:0;color:#1a1208}
.cta-grid__lead{margin:0;font-size:.95rem;line-height:1.45;color:#5a4e3a}
.cta-grid__expert{margin:0;font-size:.88rem;line-height:1.45;color:#4a4030}
.cta-grid__bullets{margin:0;padding-left:1.15rem;display:flex;flex-direction:column;gap:.35rem}
.cta-grid__bullets li{font-size:.88rem;line-height:1.42;color:#4a4030}
.cta-grid__points{display:flex;flex-direction:column;gap:.35rem}
.cta-grid__points p{margin:0;font-size:.84rem;line-height:1.38;color:#4a4030}
.cta-grid__points strong{color:#1a1208;font-weight:700}
.btn--compact{min-height:42px!important;padding:.55rem .95rem!important;font-size:.78rem!important;letter-spacing:.03em!important;border-radius:var(--radius-btn)}
.btn--compact .btn__icon{width:16px!important;height:16px!important}
.cta-grid__photo{background:linear-gradient(160deg,#FF6A2F 0%,#F24E1E 100%);border-radius:14px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;position:relative}
.cta-grid__person{width:auto;height:100%;max-height:100%;max-width:100%;object-fit:contain;object-position:bottom center;transform:none;display:block}
@media(min-width:769px){.cta-grid-wrap{padding-block:1.25rem!important}.cta-grid{grid-template-columns:1fr minmax(168px,.52fr);grid-template-rows:1fr;min-height:clamp(185px,24vw,265px);align-items:stretch}.cta-grid__copy{grid-column:1;grid-row:1;justify-content:center;height:100%;min-height:0;overflow:hidden}.cta-grid__photo{grid-column:2;grid-row:1;min-height:100%}.cta-grid__person{width:auto;height:100%;max-height:100%;max-width:100%;object-fit:contain;object-position:bottom center;transform:none}.cta-grid__title{font-size:clamp(1.22rem,1.75vw,1.68rem);line-height:1.12}.cta-grid__lead{font-size:.84rem;line-height:1.36;max-width:none}.cta-grid__expert{font-size:.78rem;line-height:1.34;max-width:none}.cta-grid__bullets{gap:.2rem;padding-left:1.05rem}.cta-grid__bullets li{font-size:.76rem;line-height:1.32}.cta-grid__points{gap:.28rem}.cta-grid__points p{font-size:.8rem;line-height:1.36}}
@media(max-width:640px){.cta-grid__actions{flex-direction:column;align-items:stretch}.cta-grid__actions .btn{width:100%;max-width:220px}}

/* Blog — all topics text link */
.blog-teaser__more{grid-column:3;margin:0;padding:0 1.1rem;align-self:start}.blog-teaser__all{font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-accent);text-decoration:none}.blog-teaser__all:hover,.blog-teaser__all:focus{color:var(--color-accent);text-decoration:none}.container>.blog-teaser__more{grid-column:auto;text-align:right;margin:.75rem 0 0;padding:0}@media(max-width:960px){.blog-teaser__more{grid-column:1}.container>.blog-teaser__more{text-align:left}}

/* SECTION HEADINGS LOCK — unified font/size/weight (not bold) */
:root{--section-heading-size:clamp(1.5rem,3.2vw,2.25rem);--section-heading-weight:400}
.section-title,.promo-banner__title,.cta-grid__title{font-family:var(--font-display)!important;font-size:var(--section-heading-size)!important;font-weight:var(--section-heading-weight)!important;letter-spacing:-.01em;line-height:1.2;text-transform:none;color:#1a1208}
.faq__intro .section-title{font-size:var(--section-heading-size)!important;font-weight:var(--section-heading-weight)!important;text-transform:none}

/* Services grid (AURA sync) */
.services-grid { padding: var(--section-y) 0; background: var(--color-section-warm); }
.svc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin-top: 1rem; }
.svc-card {
  display: flex; flex-direction: column; gap: .65rem; background: #FAF6EE; border: 1px solid #ECE3D2;
  border-radius: 10px; padding: 1.35rem 1.25rem 1.15rem; text-decoration: none; color: #1a1208;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.svc-card:hover { transform: translateY(-3px); box-shadow: 0 10px 26px rgba(60,40,10,.10); border-color: #E3B45A; }
.svc-card__icon-badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 46px; height: 46px; border-radius: 10px;
  background: linear-gradient(160deg, #FF6A2F 0%, #F24E1E 100%);
  color: #fff;
}
.svc-card__icon { width: 26px; height: 26px; display: block; }
.svc-card__title { font-family: var(--font-display); font-size: 1.05rem; font-weight: 700; line-height: 1.25; margin: 0; }
.svc-card__list { list-style: none; margin: .85rem 0 0; padding: 0; display: flex; flex-direction: column; gap: .35rem; flex: 1; }
.svc-card__list li { position: relative; padding-left: 1rem; font-size: .85rem; line-height: 1.4; color: #3a2e1a; }
.svc-card__list li::before { content: ''; position: absolute; left: 0; top: .5em; width: 6px; height: 6px; border-radius: 50%; background: #E3B45A; }
.svc-card__more {
  font-family: var(--font-display); font-size: .78rem; font-weight: 700; letter-spacing: .04em;
  text-transform: uppercase; color: #1a1208; margin-top: .25rem;
}
/* MKB AURA SYNC */
.product-tiers { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 1.5rem !important; margin-top: 1rem !important; }
@media (max-width: 768px) { .product-tiers { grid-template-columns: 1fr !important; } }
.tier-card__tags { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: auto; }
.tier-card__tag { font-size: .68rem; padding: .2rem .5rem; border-radius: 6px; background: #fff; border: 1px solid #E8E0D0; color: #6a5c48; }
.services-grid .svc-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 1.25rem !important; margin-top: 1rem !important; }
@media (max-width: 1100px) { .services-grid .svc-grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 768px) { .services-grid .svc-grid { grid-template-columns: 1fr !important; } }
.cta-grid-wrap { padding: var(--section-y, 2rem) 0 !important; background: #fff !important; }
@media (min-width: 769px) {
  .cta-grid { display: grid !important; grid-template-columns: 1fr minmax(168px, 0.52fr) !important; grid-template-rows: 1fr !important; gap: 1rem !important; align-items: stretch !important; min-height: clamp(185px, 24vw, 265px) !important; }
  .cta-grid__copy { grid-column: 1 !important; grid-row: 1 !important; display: flex !important; flex-direction: column !important; justify-content: center !important; gap: .55rem !important; height: 100% !important; min-height: 0 !important; overflow: hidden !important; }
  .cta-grid__photo { grid-column: 2 !important; grid-row: 1 !important; position: relative !important; min-height: 100% !important; align-items: flex-end !important; }
  .cta-grid__person { width: auto !important; height: 100% !important; max-height: 100% !important; max-width: 100% !important; object-fit: contain !important; object-position: bottom center !important; transform: none !important; }
  .cta-grid__title { font-size: clamp(1.22rem, 1.75vw, 1.68rem) !important; line-height: 1.12 !important; }
  .cta-grid__lead { font-size: .84rem !important; line-height: 1.36 !important; max-width: none !important; }
  .cta-grid__expert { font-size: .78rem !important; line-height: 1.34 !important; max-width: none !important; }
  .cta-grid__bullets { gap: .2rem !important; margin: 0 !important; padding-left: 1.05rem !important; }
  .cta-grid__bullets li { font-size: .76rem !important; line-height: 1.32 !important; }
  .cta-grid__points { gap: .28rem !important; }
  .cta-grid__points p { margin: 0 !important; font-size: .8rem !important; line-height: 1.36 !important; }
}
.faq-section .faq__list { background: #fff !important; border: 1px solid #EDEDED !important; border-radius: var(--radius-card, 14px) !important; overflow: hidden !important; padding: 0 1.25rem !important; width: 100% !important; }
.faq-section .faq__item { border-bottom: 1px solid #EDEDED !important; padding: 0 !important; }
.faq-section .faq__item:last-child { border-bottom: none !important; }
.faq-section .faq__q { width: 100% !important; text-align: left !important; background: none !important; border: none !important; padding: 1.1rem 0 !important; font-family: var(--font-display) !important; font-size: clamp(0.78rem, 1.1vw, 0.9rem) !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; cursor: pointer !important; display: flex !important; justify-content: space-between !important; align-items: center !important; gap: 1rem !important; line-height: 1.35 !important; color: #1a1208 !important; min-height: 3.25rem !important; margin: 0 !important; }
.faq-section .faq__q::after { content: '+' !important; color: #E3B45A !important; font-size: 1.5rem !important; font-weight: 400 !important; flex-shrink: 0 !important; line-height: 1 !important; }
.faq-section .faq__item.open .faq__q::after { content: '\2212' !important; }
.faq-section .faq__a { display: none !important; padding: 0 0 1.15rem !important; margin-top: -0.35rem !important; color: #444 !important; max-width: 100% !important; width: 100% !important; line-height: 1.55 !important; font-size: 0.95rem !important; text-transform: none !important; font-family: var(--font-body) !important; }
.faq-section .faq__item.open .faq__a { display: block !important; }
.faq-section .faq__a a { color: #b98a1f !important; }

/* MKB MOBILE SYNC */
@media (max-width: 960px) {
  .cta-grid__bullets { gap: 0.3rem !important; }
  .footer-cta__btn { align-self: stretch !important; width: 100% !important; justify-content: center !important; }
}
@media (max-width: 900px) {
  body.nav-open { overflow: hidden !important; }
  .header__burger { display: flex !important; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0.5rem; }
  .btn, .btn--compact, .faq-section .faq__q { min-height: 44px !important; }
}
@media (max-width: 768px) {
  .hero__overlay { background: linear-gradient(180deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.72) 32%, rgba(0,0,0,.48) 58%, rgba(0,0,0,.28) 100%) !important; }
  .hero__overlay-gloss { opacity: 0.08 !important; }

  /* banner-mobile-overlay — promo_banner (full_figure_text_plates) */
  .promo-banner__shell,
  .cta-grid,
  .footer-cta__shell,
  .blog-grid--home .blog-card,
  .blog-grid--archive .blog-card,
  .blog-article-cover__frame {
    --mkb-banner-mobile-h: clamp(520px, 72vh, 640px);
  }
  .promo-banner__shell {
    position: relative;
    display: grid !important;
    grid-template-columns: 1fr !important;
    height: var(--mkb-banner-mobile-h) !important;
    min-height: var(--mkb-banner-mobile-h) !important;
    max-height: var(--mkb-banner-mobile-h) !important;
    overflow: hidden;
  }
  .promo-banner__photo {
    position: absolute;
    inset: 0;
    z-index: 0;
    order: unset !important;
    height: 100% !important;
    min-height: 0 !important;
  }
  .promo-banner__photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.15) 45%, rgba(0,0,0,.35) 100%);
    pointer-events: none;
  }
  .promo-banner__photo img {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    transform: none !important;
    left: auto !important;
    bottom: auto !important;
    margin-inline: 0 !important;
  }
  .promo-banner__content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1.25rem 1rem 1.5rem;
    height: 100%;
    overflow: hidden;
    color: #fff;
  }
  .promo-banner__title {
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    color: #1a1208;
    padding: 0.85rem 1rem;
    border-radius: 10px;
    margin: 0;
  }
  .promo-banner__list {
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    color: #1a1208;
    padding: 0.85rem 1rem;
    border-radius: 10px;
    margin: 0 0 0.25rem;
  }
  .promo-banner__content .btn--white {
    background: #F5C518 !important;
    color: #1a1208 !important;
    border: 2px solid #1a1208 !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.28) !important;
    width: 100%;
    min-height: 48px;
    justify-content: center;
    align-self: stretch;
  }

  /* banner-mobile-overlay — cta_grid (figure_plus_overlay_copy) */
  .cta-grid {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 1fr !important;
    gap: 0 !important;
    height: var(--mkb-banner-mobile-h) !important;
    min-height: var(--mkb-banner-mobile-h) !important;
    max-height: var(--mkb-banner-mobile-h) !important;
    overflow: hidden !important;
  }
  .cta-grid__photo {
    position: absolute !important;
    inset: 0 !important;
    order: unset !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden;
    z-index: 0;
  }
  .cta-grid__photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.15) 45%, rgba(0,0,0,.35) 100%);
    pointer-events: none;
  }
  .cta-grid__person {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    transform: none !important;
  }
  .cta-grid__copy {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    gap: 0.75rem !important;
    padding: 1.25rem 1rem 1.5rem !important;
    height: 100% !important;
    overflow: hidden !important;
    color: #fff;
  }
  .cta-grid__title {
    color: #1a1208 !important;
    margin: 0 !important;
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    padding: 0.85rem 1rem;
    border-radius: 10px;
  }
  .cta-grid__lead,
  .cta-grid__expert {
    color: #1a1208 !important;
    max-width: none !important;
    margin: 0 !important;
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    padding: 0.75rem 1rem;
    border-radius: 10px;
  }
  .cta-grid__actions { display: none !important; }
  .cta-grid__bullets {
    background: rgba(255,255,255,.18) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    padding: 0.75rem 0.85rem 0.75rem 1.35rem !important;
    border-radius: 10px !important;
    margin: 0 !important;
  }
  .cta-grid__bullets li { color: rgba(255,255,255,.95) !important; }
  .cta-grid__points { display: none !important; }

  /* banner-mobile-overlay — footer_cta (unified tall banner) */
  .footer-cta__shell {
    position: relative !important;
    display: block !important;
    height: var(--mkb-banner-mobile-h) !important;
    min-height: var(--mkb-banner-mobile-h) !important;
    max-height: var(--mkb-banner-mobile-h) !important;
    overflow: hidden !important;
  }
  .footer-cta__bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: unset !important;
    object-fit: cover !important;
    object-position: 88% center !important;
  }
  .footer-cta__overlay {
    background: linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.15) 45%, rgba(0,0,0,.35) 100%) !important;
  }
  .footer-cta__title {
    background: rgba(255,255,255,.22) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    color: #1a1208 !important;
    padding: 0.85rem 1rem !important;
    border-radius: 10px !important;
    margin: 0 !important;
  }
  .footer-cta__text {
    background: rgba(255,255,255,.22) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    color: #1a1208 !important;
    padding: 0.75rem 1rem !important;
    border-radius: 10px !important;
    margin: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }
  .footer-cta__btn {
    background: #F5C518 !important;
    color: #1a1208 !important;
    border: 2px solid #1a1208 !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.28) !important;
  }
  .footer-cta__content {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2;
    height: 100% !important;
    max-width: 100% !important;
    padding: 1.25rem 1rem 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 0.75rem;
    overflow: hidden;
  }
  .footer-cta__btn {
    align-self: stretch !important;
    width: 100% !important;
    min-height: 48px !important;
    justify-content: center !important;
    border-radius: 10px !important;
  }
}
@media (max-width: 600px) {
  .cookie-banner__inner { flex-direction: column !important; align-items: stretch !important; text-align: left; gap: 0.75rem; }
  .cookie-banner__inner .btn { width: 100% !important; min-height: 44px !important; }
}
@media (max-width: 480px) {
  .header__phone { display: none !important; }
  .product-tiers { grid-template-columns: 1fr !important; }
  .services-grid .svc-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 375px) {
  .faq-section .faq__list { padding: 0 1rem !important; }
  .faq-section .faq__q { font-size: 0.72rem !important; padding: 0.85rem 0 !important; gap: 0.65rem !important; letter-spacing: 0.03em !important; }
  .faq-section .faq__q::after { font-size: 1.25rem !important; }
  .faq-section .faq__a { font-size: 0.85rem !important; padding-bottom: 0.9rem !important; }
}

/* === v1.0.61: mobile banners unified height + semi-transparent plates === */
/* === v1.0.71: blog mobile overlay cards — banner height + glass plates === */
/* === v1.0.60: blog mobile carousel — portrait cards + transform === */
@media (min-width: 769px) {
  .blog-grid--home { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 768px) {
  .blog-carousel { padding-inline: 28px; }
  .blog-carousel__viewport { overflow: hidden; width: 100%; min-width: 0; }
  .blog-nav { display: inline-flex !important; }
  .blog-nav--prev { left: 0 !important; }
  .blog-nav--next { right: 0 !important; }
  .blog-grid--home {
    display: flex !important;
    flex-wrap: nowrap;
    gap: 1rem;
    transition: transform 0.35s ease;
    will-change: transform;
    grid-template-columns: none !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
    overflow: visible;
    scroll-snap-type: none;
  }
  .blog-grid--home .blog-card,
  .blog-grid--archive .blog-card {
    position: relative;
    display: block;
    overflow: hidden;
    height: var(--mkb-banner-mobile-h);
    min-height: var(--mkb-banner-mobile-h);
    max-height: var(--mkb-banner-mobile-h);
    min-width: 0;
    margin: 0;
  }
  .blog-grid--home .blog-card {
    flex: 0 0 var(--blog-carousel-item-width, 100%);
    max-width: none;
  }
  .blog-grid--home .blog-card__img,
  .blog-grid--archive .blog-card__img {
    position: absolute;
    inset: 0;
    z-index: 0;
    aspect-ratio: unset;
    flex: unset;
    min-height: 0;
  }
  .blog-grid--home .blog-card__img::after,
  .blog-grid--archive .blog-card__img::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.15) 45%, rgba(0,0,0,.35) 100%);
    pointer-events: none;
  }
  .blog-grid--home .blog-card__img img,
  .blog-grid--archive .blog-card__img img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .blog-grid--home .blog-card__body,
  .blog-grid--archive .blog-card__body {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1.25rem 1rem 1.5rem;
    flex: unset;
    border-top: 0;
  }
  .blog-grid--home .blog-card__title,
  .blog-grid--archive .blog-card__title {
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    color: #1a1208;
    padding: 0.75rem 0.9rem;
    border-radius: 10px;
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.35;
  }
  .blog-grid--home .blog-card__teaser,
  .blog-grid--archive .blog-card__teaser {
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.28);
    color: #1a1208;
    padding: 0.65rem 0.9rem;
    border-radius: 10px;
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex: unset;
  }
  .blog-grid--home .blog-card__link,
  .blog-grid--archive .blog-card__link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    min-height: 44px;
    padding: 0.55rem 1rem;
    margin: 0;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #1a1208;
    background: #F5C518;
    border: 2px solid #1a1208;
    border-radius: 10px;
    box-shadow: 0 4px 14px rgba(0,0,0,.28);
    text-decoration: none;
  }
  .blog-grid--archive {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
  .blog-nav:disabled { opacity: 0.35; cursor: default; }
}
/* === Testimonials / reviews carousel === */
.testimonials { padding-block: 2rem; }
.testimonials__list { list-style: none; margin: 0; padding: 0; }
.testimonials__list--grid { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.testimonial-card { display: flex; flex-direction: column; gap: 0.75rem; padding: 1.25rem; border: 1px solid #ECE3D2; border-radius: 12px; background: #FAF6EE; min-height: 100%; }
.testimonial-card__rating { color: var(--color-accent, #E3B45A); letter-spacing: 0.12em; font-size: 0.95rem; }
.testimonial-card__quote { margin: 0; font-size: 0.95rem; line-height: 1.5; color: #1a1208; }
.testimonial-card__author { margin: 0; margin-top: auto; }
.testimonial-card__meta { display: flex; flex-direction: column; gap: 0.2rem; }
.testimonial-card__name { font-weight: 600; color: #1a1208; }
.testimonial-card__role { font-size: 0.85rem; color: #5a4e3a; }
.testimonials__footer { margin: 1.25rem 0 0; text-align: center; }
.testimonials__more { font-weight: 600; color: var(--color-accent, #E3B45A); text-decoration: none; }
.testimonials__more:hover { text-decoration: underline; }
.reviews-carousel__shell { display: flex; align-items: center; gap: 0.5rem; margin-top: 1.25rem; }
.reviews-carousel__viewport { overflow: hidden; flex: 1; }
.reviews-carousel__track { display: flex; gap: 1rem; transition: transform 0.35s ease; will-change: transform; }
.reviews-carousel__track.testimonials__list { display: flex !important; grid-template-columns: none !important; }
.reviews-carousel__item { flex: 0 0 var(--carousel-item-width, calc((100% - 2rem) / 3)); min-width: 0; box-sizing: border-box; }
.reviews-carousel__nav {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  border: 1.5px solid rgba(26, 18, 8, 0.18);
  background: #fff;
  color: #1a1208;
  cursor: pointer;
  flex-shrink: 0;
  font-size: 1.45rem;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 10px rgba(26, 18, 8, 0.1);
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}
.reviews-carousel__nav:hover:not(:disabled) {
  background: var(--color-accent, #F5C518);
  border-color: var(--color-accent, #F5C518);
  color: #1a1208;
  box-shadow: 0 4px 14px rgba(26, 18, 8, 0.16);
  transform: translateY(-1px);
}
.reviews-carousel__nav:focus-visible {
  outline: 2px solid var(--color-accent, #F5C518);
  outline-offset: 2px;
}
.reviews-carousel__nav:disabled {
  opacity: 0.55;
  cursor: default;
  color: #5a4e3a;
  border-color: rgba(26, 18, 8, 0.12);
  box-shadow: 0 1px 4px rgba(26, 18, 8, 0.06);
  background: #faf6ee;
}
@media (max-width: 600px) { .testimonials__list--grid { grid-template-columns: 1fr; } }
@media (min-width: 769px) { .testimonials__list--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; } }
@media (min-width: 1024px) { .testimonials__list--grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }


@media (max-width: 600px) {
  .reviews-carousel__shell { gap: 0.35rem; }
  .reviews-carousel__viewport { flex: 1; width: 100%; min-width: 0; }
  .reviews-carousel__item { flex: 0 0 92vw; }
  .reviews-carousel__item .testimonial-card,
  .testimonials .testimonial-card { min-height: 220px; padding: 1.35rem; }
  .reviews-carousel__nav { width: 2.4rem; height: 2.4rem; font-size: 1.25rem; flex-shrink: 0; }
}


/* === v1.0.63: services cards mobile horizontal layout === */
@media (max-width: 768px) {
  .svc-card {
    display: grid;
    grid-template-columns: 46px 1fr;
    grid-template-rows: auto 1fr auto;
    column-gap: 0.85rem;
    row-gap: 0.35rem;
    padding: 1rem 1.1rem;
    align-items: start;
  }
  .svc-card__icon-badge { grid-column: 1; grid-row: 1 / -1; align-self: start; }
  .svc-card__title { grid-column: 2; grid-row: 1; margin: 0; }
  .svc-card__list { grid-column: 2; grid-row: 2; }
  .svc-card__more { grid-column: 2; grid-row: 3; }
}

/* === v1.0.61: mobile header — logo+burger bar, nav panel flush === */

a.blog-card{text-decoration:none;color:inherit}
.blog-grid--archive{margin-bottom:1rem}
.site-main--blog-article{padding-top:var(--header-h)}
.blog-article-cover{padding:1.25rem var(--gutter) 0;background:#fff}
.blog-article-cover__frame{position:relative;max-width:var(--container-max);margin:0 auto;border-radius:var(--radius-card,14px);overflow:hidden}
.blog-article-cover__img{display:block;width:100%;height:auto;max-height:420px;object-fit:cover;object-position:center}
.blog-article-cover__overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.65rem;padding:1.25rem;background:linear-gradient(180deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.42) 100%)}
.blog-article-cover__plate{background:rgba(255,255,255,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.28);border-radius:10px;padding:.75rem 1rem;max-width:min(54ch,94%)}
.blog-article-cover__title{margin:0;font-size:clamp(1.15rem,2.8vw,1.75rem);color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.5);line-height:1.2}
.blog-article-cover__teaser{margin:0;font-size:.9rem;color:#fff;line-height:1.4;text-shadow:0 1px 6px rgba(0,0,0,.45)}
.blog-article-cover__label{color:var(--color-accent);text-shadow:0 1px 6px rgba(0,0,0,.55)}
@media (min-width:769px){.blog-article-cover__frame{width:70%;max-width:70%}.blog-article-cover__img{max-height:294px}}
@media (max-width:768px){
  body:has(.site-main--blog-article) #header.header{box-shadow:none}
  .site-main--blog-article{padding-block:0;padding-top:var(--header-h)}
  .blog-article-cover{
    padding:0;
    margin:0;
    background:transparent;
    width:100vw;
    max-width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
  }
  .blog-article-cover__frame{
    max-width:none;
    width:100%;
    margin:0;
    border-radius:0;
  }
  .blog-article-cover__img{
    width:100%;
    height:var(--mkb-banner-mobile-h,clamp(520px,72vh,640px));
    max-height:none;
    object-fit:cover;
    object-position:center;
  }
  .blog-article-cover__overlay{
    padding:1rem var(--gutter) 1.25rem;
    background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.5) 100%);
  }
}
.blog-article__body{padding-block:1.5rem 2rem}
.blog-pagination{margin-top:2rem}
.blog-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;padding:0 .5rem;margin:0 .15rem;border:1px solid #C5C5C5;border-radius:6px;text-decoration:none;color:inherit;font-weight:600}
.blog-pagination .page-numbers.current{background:var(--color-accent);border-color:var(--color-accent);color:#fff}
.blog-pagination ul{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;padding:0;margin:0}
/* === v1.0.82: service landing TOC + callouts === */
.service-toc{margin:1.5rem 0 2rem;padding:1rem 1.25rem;background:#FAF6EE;border:1px solid #ECE3D2;border-radius:10px}
.service-toc ol{margin:0;padding-left:1.25rem;display:grid;gap:.35rem}
.service-toc a{color:#1a1208;text-decoration:none;font-size:.92rem}
.service-toc a:hover{color:var(--color-accent)}
.service-callout{margin:1.25rem 0;padding:1rem 1.15rem;border-radius:10px;border-left:4px solid var(--color-accent);background:#FFF9EE;font-size:.95rem;line-height:1.5}
.service-callout--info{border-left-color:#3B82F6;background:#F0F7FF}
.service-article__section-img{width:100%;max-height:320px;object-fit:cover;border-radius:10px;margin:2.5rem 0 2.75rem}
.service-article__section + .service-article__section{margin-top:4rem}
/* v1.0.84: blog article body */
.blog-article__content-wrap{margin-top:1rem}
.blog-article__content{font-size:1rem;line-height:1.65;color:#1a1208}
.blog-article__content h2{margin:2rem 0 .75rem;font-size:1.35rem;line-height:1.25}
.blog-article__content p{margin:0 0 1rem}
.blog-article__content ul,.blog-article__content ol{margin:.85rem 0 1rem 1.25rem}
.blog-article__content a{color:var(--color-accent);text-decoration:underline}
.blog-table{width:100%;border-collapse:collapse;margin-block:2.5rem !important;margin-inline:0 !important;font-size:.92rem}
.blog-table th,.blog-table td{border:1px solid #ECE3D2;padding:.5rem .65rem;text-align:left}
.blog-table th{background:#FAF6EE;font-weight:600}
.blog-faq{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #ECE3D2}
.blog-faq h2{margin-bottom:1rem}
.blog-faq .faq-list__item{margin-bottom:1rem}
.blog-faq dt{font-weight:600;margin-bottom:.25rem}
.blog-faq dd{margin:0 0 0 1rem;color:#3d3428;line-height:1.5}

/* === v1.0.85: cta-grid copy fill === */
@media (min-width: 769px) {
  .cta-grid__copy { gap: .5rem !important; justify-content: center !important; }
  .cta-grid__lead { font-size: .86rem !important; line-height: 1.42 !important; }
  .cta-grid__expert { font-size: .82rem !important; line-height: 1.38 !important; display: block !important; }
  .cta-grid__bullets {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 1.1rem !important;
    row-gap: .28rem !important;
    padding-left: 1.1rem !important;
    margin-top: .15rem !important;
  }
  .cta-grid__bullets li { font-size: .78rem !important; line-height: 1.34 !important; }
}
@media (max-width: 768px) {
  .cta-grid__expert { font-size: .9rem !important; line-height: 1.45 !important; }
  .cta-grid__bullets li { font-size: .88rem !important; line-height: 1.42 !important; }
}

/* v1.0.86 service richtext + flow */
.service-article__richtext{max-width:none;width:100%;font-size:.95rem;line-height:1.6;color:#3a2e1a}
.service-article__richtext p{margin:.75rem 0}
.service-article__richtext ul,.service-article__richtext ol{margin:.85rem 0 .75rem 1.25rem;padding:0}
.service-article__richtext a{color:#b98a1f;text-decoration:underline;text-underline-offset:2px}
.service-article__scheme{margin:1rem 0 1.25rem}
.service-flow{display:flex;flex-wrap:wrap;gap:.75rem;margin:2.5rem 0 3rem}
.service-flow__step{flex:1 1 140px;min-width:0;background:#FAF6EE;border:1px solid #ECE3D2;border-radius:10px;padding:.85rem 1rem;display:flex;gap:.65rem;align-items:flex-start}
.service-flow__num{flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:8px;background:linear-gradient(160deg,#FF6A2F,#F24E1E);color:#fff;font-family:var(--font-display);font-weight:700;font-size:.85rem;display:inline-flex;align-items:center;justify-content:center}
.service-flow__step p{margin:.35rem 0 0;font-size:.82rem;line-height:1.45;color:#3a2e1a}
.service-article__section-img--scheme{object-fit:contain;background:#faf6ee;max-height:280px;padding:.5rem}
.service-article__intro--no-image .lead{margin:0}
@media(max-width:768px){.service-flow{flex-direction:column}}

/* === v1.0.87: CTA desktop height lock (revert giant banner) === */
@media (min-width: 769px) {
  .cta-grid-wrap { padding-block: 1rem !important; }
  .cta-grid {
    min-height: clamp(185px, 24vw, 265px) !important;
    grid-template-columns: 1fr minmax(168px, 0.52fr) !important;
    align-items: stretch !important;
  }
  .cta-grid__photo {
    min-height: 0 !important;
    max-height: 265px !important;
    overflow: hidden !important;
  }
  .cta-grid__person {
    width: auto !important;
    height: auto !important;
    max-height: min(100%, 248px) !important;
    max-width: 88% !important;
    object-fit: contain !important;
    object-position: bottom center !important;
  }
  .cta-grid__copy {
    overflow: visible !important;
    gap: .42rem !important;
  }
}

/* === v1.0.88: site chrome + FAQ canonical (homepage) === */
#header.header .primary-nav__link,
#header.header .primary-nav__dropdown-toggle {
  font-family: var(--font-hero) !important;
  font-size: 0.9375rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}
#header.header .primary-nav__sublink {
  font-family: var(--font-hero) !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
}
#header.header .header__phone {
  font-family: var(--font-hero) !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
}
#header.header .header__logo {
  font-family: var(--font-hero) !important;
}
#colophon.site-footer .site-footer__brand {
  font-family: var(--font-hero) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
}
#colophon.site-footer .site-footer__title {
  font-family: var(--font-display) !important;
  font-size: 0.75rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--color-accent) !important;
}
#colophon.site-footer .site-footer__list a,
#colophon.site-footer .site-footer__messengers a,
#colophon.site-footer .site-footer__legal a,
#colophon.site-footer .site-footer__messenger span {
  font-family: var(--font-body) !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
}
#colophon.site-footer .site-footer__phone {
  font-family: var(--font-display) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
}
#colophon.site-footer .site-footer__bottom,
#colophon.site-footer .site-footer__copy {
  font-family: var(--font-body) !important;
  font-size: 0.85rem !important;
}
/* FAQ: only .faq-section (same as homepage) */
.faq-section .faq__list .faq__item:last-child { border-bottom: none !important; }
/* blog-faq unhidden — parity with faq-section; Excalibur uses .article-faq */


/* === v1.0.90: header solid always (no scroll gradient) === */
#header.header,
#header.header.is-scrolled {
  background: rgba(0, 0, 0, 0.92) !important;
  box-shadow: none !important;
}
#header.header .primary-nav__link,
#header.header .primary-nav__dropdown-toggle,
#header.header .header__logo,
#header.header .header__phone {
  text-shadow: none !important;
}


/* === v1.0.93: footer links normal weight (no faux-bold) === */
#colophon.site-footer .site-footer__list a,
#colophon.site-footer .site-footer__messengers a,
#colophon.site-footer .site-footer__legal a,
#colophon.site-footer .site-footer__messenger,
#colophon.site-footer .site-footer__messenger span,
#colophon.site-footer .site-footer__phone {
  font-weight: 400 !important;
}
#colophon.site-footer strong {
  font-weight: inherit;
}

/* === v1.0.95: CTA desktop +40% from v1.0.87 baseline (strict math) === */
/* v1.0.87 baseline → ×1.4:
   min-height clamp(185px, 24vw, 265px) → clamp(259px, 33.6vw, 371px)
   photo col minmax(168px, 0.52fr) → minmax(235px, 0.52fr)
   person max-height 248px → fills 100% of photo column (proportional)
   title clamp(1.22rem, 1.75vw, 1.68rem) → clamp(1.71rem, 2.45vw, 2.35rem)
   lead .84rem→1.18rem | expert/process .78rem→1.09rem | bullets .76rem→1.06rem
   MOBILE: not touched (overlay rules max-width 768px stay as-is) */
@media (min-width: 769px) {
  #cta-grid.cta-grid-wrap {
    padding-block: 1.4rem !important;
  }
  #cta-grid .cta-grid {
    display: grid !important;
    grid-template-columns: 1fr minmax(235px, 0.52fr) !important;
    grid-template-rows: 1fr !important;
    gap: 1.4rem !important;
    align-items: stretch !important;
    min-height: clamp(259px, 33.6vw, 371px) !important;
    height: auto !important;
    max-height: none !important;
    position: static !important;
    overflow: visible !important;
  }
  #cta-grid .cta-grid__copy {
    position: static !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 0.58rem !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    color: inherit !important;
    inset: auto !important;
    z-index: auto !important;
  }
  #cta-grid .cta-grid__photo {
    position: relative !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    inset: auto !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
  }
  #cta-grid .cta-grid__photo::after {
    display: none !important;
  }
  #cta-grid .cta-grid__person {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    height: 100% !important;
    max-height: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: bottom center !important;
    transform: none !important;
  }
  #cta-grid .cta-grid__title {
    font-size: clamp(1.71rem, 2.45vw, 2.35rem) !important;
    line-height: 1.12 !important;
    color: #1a1208 !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    backdrop-filter: none !important;
  }
  #cta-grid .cta-grid__lead {
    font-size: 1.18rem !important;
    line-height: 1.4 !important;
    color: #5a4e3a !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
  }
  #cta-grid .cta-grid__expert,
  #cta-grid .cta-grid__process {
    font-size: 1.09rem !important;
    line-height: 1.38 !important;
    margin: 0 !important;
    color: #4a4030 !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    display: block !important;
  }
  #cta-grid .cta-grid__bullets {
    gap: 0.28rem !important;
    margin: 0 !important;
    padding-left: 1.15rem !important;
    columns: 2 !important;
    column-gap: 1.4rem !important;
    display: block !important;
  }
  #cta-grid .cta-grid__bullets li {
    font-size: 1.06rem !important;
    line-height: 1.36 !important;
    color: #4a4030 !important;
    break-inside: avoid !important;
  }
}

/* === v1.0.96: typography canon (info text) — single source === */
:root {
  --text-info-size: 1rem;
  --text-info-line: 1.5;
  --text-info-color: #333333;
  --text-info-muted-color: #444444;
  --text-list-size: 0.9rem;
  --text-list-line: 1.45;
  --text-list-color: #444444;
}

.section--white .lead,
.contact-grid .lead,
.site-main--front .lead {
  font-family: var(--font-body) !important;
  font-size: var(--text-info-size) !important;
  line-height: var(--text-info-line) !important;
  color: var(--text-info-color) !important;
}

/* CTA banner copy = same canon as .lead on homepage sections (desktop only) */
@media (min-width: 769px) {
#cta-grid .cta-grid__title {
  font-family: var(--font-display) !important;
  font-size: var(--section-heading-size) !important;
  font-weight: var(--section-heading-weight) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
  color: #1a1208 !important;
}

#cta-grid .cta-grid__lead,
#cta-grid .cta-grid__expert,
#cta-grid .cta-grid__process {
  font-family: var(--font-body) !important;
  font-size: var(--text-info-size) !important;
  line-height: var(--text-info-line) !important;
  color: var(--text-info-color) !important;
  font-weight: 400 !important;
}

#cta-grid .cta-grid__bullets li {
  font-family: var(--font-body) !important;
  font-size: var(--text-list-size) !important;
  line-height: var(--text-list-line) !important;
  color: var(--text-list-color) !important;
  font-weight: 400 !important;
}
}

/* Sitewide informational body (services, blog) */
.service-article__intro .lead,
.service-article__section > p,
.service-article__richtext p,
.blog-article__content.entry-content p {
  font-family: var(--font-body);
  font-size: var(--text-info-size);
  line-height: var(--text-info-line);
  color: var(--text-info-color);
}

.service-article__richtext li,
.blog-article__content.entry-content li {
  font-family: var(--font-body);
  font-size: var(--text-list-size);
  line-height: var(--text-list-line);
  color: var(--text-list-color);
}

/* === v1.0.97: page-hero lead readable + blog cover flush to header (desktop) === */

/* v1.0.96 .lead broke dark heroes — restore light subtitle on page-hero */
.page-hero .lead,
.page-hero .lead--inverse {
  font-family: var(--font-body) !important;
  font-size: clamp(1rem, 1.6vw, 1.125rem) !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  color: rgba(240, 240, 240, 0.96) !important;
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.7), 0 2px 20px rgba(0, 0, 0, 0.45) !important;
  max-width: 46rem;
}

@media (min-width: 769px) {
  .site-main--blog-article {
    padding-top: var(--header-h) !important;
    padding-bottom: 0 !important;
  }
  .site-main--blog-article .blog-article-cover {
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }
  .site-main--blog-article .blog-article-cover__frame {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  .site-main--blog-article .blog-article-cover__img {
    width: 100% !important;
    max-height: min(42vh, 420px) !important;
    object-fit: cover !important;
    object-position: center top !important;
  }
}

/* === v1.0.98: CTA mobile restore + desktop/mobile copy split === */
@media (min-width: 769px) {
  #cta-grid .cta-grid__copy--mobile { display: none !important; }
}
@media (max-width: 768px) {
  #cta-grid .cta-grid__copy--desktop { display: none !important; }
  #cta-grid .cta-grid__copy--mobile .cta-grid__title,
  #cta-grid .cta-grid__copy--mobile .cta-grid__lead,
  #cta-grid .cta-grid__copy--mobile .cta-grid__expert,
  #cta-grid .cta-grid__copy--mobile .cta-grid__process {
    font-family: var(--font-body) !important;
    font-size: 0.88rem !important;
    line-height: 1.38 !important;
    font-weight: 400 !important;
    color: #1a1208 !important;
    background: rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    padding: 0.75rem 1rem !important;
    border-radius: 10px !important;
    margin: 0 !important;
    max-width: none !important;
  }
  #cta-grid .cta-grid__copy--mobile .cta-grid__process:empty { display: none !important; }
  #cta-grid .cta-grid__copy--mobile .cta-grid__bullets {
    background: rgba(255, 255, 255, 0.18) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    padding: 0.75rem 0.85rem 0.75rem 1.35rem !important;
    border-radius: 10px !important;
    columns: 1 !important;
  }
  #cta-grid .cta-grid__copy--mobile .cta-grid__bullets li {
    font-size: 0.82rem !important;
    line-height: 1.34 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    font-weight: 400 !important;
  }
}

/* === v1.0.99: CTA mobile — no bullets, text bottom, white === */
@media (max-width: 768px) {
  #cta-grid .cta-grid__copy--mobile {
    justify-content: flex-end !important;
    align-items: stretch !important;
    padding: 40% 1rem 1.1rem !important;
    gap: 0.5rem !important;
  }
  #cta-grid .cta-grid__copy--mobile .cta-grid__bullets {
    display: none !important;
  }
  #cta-grid .cta-grid__copy--mobile .cta-grid__title,
  #cta-grid .cta-grid__copy--mobile .cta-grid__lead,
  #cta-grid .cta-grid__copy--mobile .cta-grid__expert,
  #cta-grid .cta-grid__copy--mobile .cta-grid__process {
    color: rgba(255, 255, 255, 0.98) !important;
    background: rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    text-shadow: none !important;
    font-size: 0.86rem !important;
    line-height: 1.36 !important;
  }
  #cta-grid .cta-grid__copy--mobile .cta-grid__title {
    font-size: 0.92rem !important;
    font-weight: 600 !important;
  }
}

/* === v1.0.101: transparent header restored; banner images flush top, dark under header === */
#header.header,
#header.header.is-scrolled,
body.nav-open #header.header {
  background: rgba(0, 0, 0, 0.92) !important;
  box-shadow: none !important;
}
@media (max-width: 900px) {
  #header.header,
  #header.header.is-scrolled,
  body.nav-open #header.header {
    background: rgba(0, 0, 0, 0.92) !important;
    box-shadow: none !important;
  }
}
/* Dark substrate — background-color only (not shorthand) */
.hero,
.page-hero {
  background-color: #1a1208 !important;
}
.hero__bg img {
  object-position: 62% center !important;
  max-height: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.promo-banner__photo img {
  max-height: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
}
/* Hide empty SEO/pad paragraphs that create multi-blank gaps */
.blog-article__body > p:empty,
.entry-content > p:empty,
.teya-cms-body p:empty {
  display: none;
}
.blog-article__body > p + p,
.entry-content > p + p {
  margin-block-start: 0.85em;
}
/* Gap-only fix: two SEO helper .sections stacked → collapse top padding of the second.
   Do NOT restyle typography/background (keep .section--white). */
.section.teya-seo-info + .section.teya-seo-info,
.section.teya-seo-info + .section.teya-seo-tails,
.section.teya-seo-info + .section.teya-seo-vol,
.section.teya-seo-tails + .section.teya-seo-tails,
.section.teya-seo-tails + .section.teya-seo-vol,
.section.teya-seo-vol + .section.teya-seo-vol {
  padding-block-start: 0.75rem !important;
  margin-top: calc(0px - var(--section-y, 2.5rem) + 0.75rem) !important;
}
.page-hero::before {
  background-position: center top !important;
}

/* === v1.0.102: CTA mobile plates — light glass restored (user request) === */
@media (max-width: 768px) {
  #cta-grid .cta-grid__copy--mobile .cta-grid__title,
  #cta-grid .cta-grid__copy--mobile .cta-grid__lead,
  #cta-grid .cta-grid__copy--mobile .cta-grid__expert,
  #cta-grid .cta-grid__copy--mobile .cta-grid__process {
    background: rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    text-shadow: none !important;
  }
}






/* === v1.0.104: promo mobile white text; no button borders site-wide === */

/* Promo banner — mobile only */
@media (max-width: 768px) {
  .promo-banner__content {
    padding: 42% 1rem 1.5rem !important;
  }
  .promo-banner__title,
  .promo-banner__list {
    color: rgba(255, 255, 255, 0.98) !important;
  }
  .promo-banner__list li::before {
    background: rgba(255, 255, 255, 0.95) !important;
  }
  .promo-banner__content .btn--white {
    border: none !important;
    border-width: 0 !important;
  }
}

/* Buttons: no visible borders anywhere */
.btn,
a.btn,
button.btn,
input[type="submit"].btn,
.btn--primary,
.btn--cta,
.btn--accent,
.btn--white,
.btn--outline,
.btn--on-light,
.btn--compact,
.btn--telegram,
.btn--whatsapp,
.promo-banner__content .btn--white,
.footer-cta__btn,
.cta-promo__btn,
.cta-band .btn--accent,
.lead-form .btn,
.hero-form .btn,
.ai-buttons .btn {
  border: none !important;
  border-width: 0 !important;
}
.btn--telegram:hover,
.btn--whatsapp:hover,
.btn--primary:hover,
.btn--cta:hover,
.btn--white:hover {
  border: none !important;
}
@media (max-width: 768px) {
  .footer-cta__btn,
  .blog-grid--home .blog-card__link,
  .blog-grid--archive .blog-card__link {
    border: none !important;
    border-width: 0 !important;
  }
}
/* === v1.0.125: blog style parity with global page-hero / FAQ / prose === */
.blog-article-hero{margin:0;padding-block:1.75rem 1.5rem}
.blog-article-cover--image-only .blog-article-cover__frame--image-only{position:relative}
.blog-article-cover--image-only .blog-article-cover__img{max-height:360px}
@media (min-width:769px){
  .blog-article-cover--image-only .blog-article-cover__frame{width:100%!important;max-width:var(--container-max)!important;margin:0 auto!important;border-radius:var(--radius-card,14px)!important}
  .blog-article-cover--image-only .blog-article-cover__img{max-height:320px!important}
}
.blog-article__body{max-width:var(--container-max);margin-inline:auto}
.blog-article__content,
.blog-article__content.entry-content,
.blog-article__content.prose{
  max-width:var(--reading-width,680px);
  margin-inline:auto;
  font-family:var(--font-body);
  font-size:var(--text-info-size,1rem);
  line-height:var(--text-info-line,1.65);
  color:var(--text-info-color,#1a1208);
}
.blog-article__content h2,
.blog-article__content.entry-content h2{
  font-family:var(--font-display)!important;
  font-size:var(--section-heading-size,clamp(1.35rem,2.5vw,1.85rem))!important;
  font-weight:var(--section-heading-weight,400)!important;
  line-height:1.25!important;
  color:#1a1208!important;
  margin:2rem 0 .75rem!important;
  letter-spacing:-.01em;
}
.blog-article__content h3,
.blog-article__content.entry-content h3{
  font-family:var(--font-display)!important;
  font-size:clamp(1.1rem,2vw,1.35rem)!important;
  font-weight:600!important;
  margin:1.5rem 0 .5rem!important;
  color:#1a1208!important;
}
.blog-article__content p,
.blog-article__content.entry-content p{max-width:none;margin:0 0 1rem}
.blog-article__content ul,
.blog-article__content ol,
.blog-article__content.entry-content ul,
.blog-article__content.entry-content ol{margin:.85rem 0 1rem 1.25rem;max-width:none}
.blog-article__content a,
.blog-article__content.entry-content a{color:#b98a1f!important;text-decoration:underline;text-underline-offset:2px}
.blog-article__disclaimer{max-width:var(--reading-width,680px);margin:1.5rem auto 0;font-size:.85rem;color:#6a5c48;line-height:1.45}

/* Excalibur FAQ (.article-faq / details) → same visual language as .faq-section */
.article-faq,
.blog-article__content .article-faq{
  margin:2.5rem 0 1rem;
  padding:0;
  background:#FAF6EE;
  border:1px solid #EFE6D4;
  border-radius:var(--radius-card,14px);
  overflow:hidden;
}
.article-faq > h2,
.article-faq .article-faq__title{
  font-family:var(--font-display)!important;
  font-size:var(--section-heading-size)!important;
  font-weight:var(--section-heading-weight,400)!important;
  margin:0!important;
  padding:1.25rem 1.25rem .5rem!important;
  color:#1a1208!important;
}
.article-faq .faq-item,
.article-faq details.faq-item{
  border-bottom:1px solid #EDEDED;
  padding:0 1.25rem;
  background:#fff;
}
.article-faq .faq-item:last-child,
.article-faq details.faq-item:last-child{border-bottom:none}
.article-faq .faq-item summary,
.article-faq details.faq-item > summary{
  list-style:none;
  cursor:pointer;
  padding:1.1rem 0;
  font-family:var(--font-display)!important;
  font-size:clamp(0.78rem,1.1vw,0.9rem)!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  color:#1a1208!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:1rem!important;
  line-height:1.35!important;
}
.article-faq .faq-item summary::-webkit-details-marker{display:none}
.article-faq .faq-item summary::after{
  content:'+';
  color:#E3B45A;
  font-size:1.5rem;
  font-weight:400;
  flex-shrink:0;
  line-height:1;
}
.article-faq .faq-item[open] summary::after{content:'\2212'}
.article-faq .faq-item .faq-a,
.article-faq .faq-item p,
.article-faq details.faq-item > *:not(summary){
  padding:0 0 1.1rem;
  margin:0;
  color:#444;
  max-width:60ch;
  line-height:1.5;
  font-size:.9rem;
  font-family:var(--font-body);
}
.article-faq .faq-item a{color:#b98a1f!important}

/* === v1.0.127: blog cover = sole header (no page-hero) === */
.blog-article-hero{display:block}
.site-main--blog-article .blog-article-cover{
  padding:0;
  background:transparent;
}
.site-main--blog-article .blog-article-cover__frame{
  width:100%;
  max-width:none;
  margin:0;
  border-radius:0;
  min-height:clamp(280px,38vh,360px);
}
.site-main--blog-article .blog-article-cover__img{
  width:100%;
  height:clamp(280px,38vh,360px);
  max-height:none;
  object-fit:cover;
  object-position:center;
}
.site-main--blog-article .blog-article-cover__overlay{
  justify-content:flex-end;
  align-items:flex-start;
  text-align:left;
  padding:clamp(1.25rem,3vw,2.5rem);
  background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.45) 42%,rgba(0,0,0,.18) 68%,transparent 88%);
}
.site-main--blog-article .blog-article-cover__plate{
  background:rgba(0,0,0,.28);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.18);
  max-width:min(54rem,94%);
}
.site-main--blog-article .blog-article-cover__title{
  font-size:clamp(1.5rem,3.6vw,2.6rem);
  font-family:var(--font-display);
  font-weight:700;
}
@media (min-width:769px){
  .site-main--blog-article .blog-article-cover__frame{width:100%!important;max-width:none!important}
  .site-main--blog-article .blog-article-cover__img{max-height:none!important;height:clamp(300px,40vh,360px)}
}


/* === v1.0.129: blog-card preview images visible (absolute fill) === */
.blog-grid--archive .blog-card__img,
.blog-grid--home .blog-card__img{
  position:relative;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#ece7dc;
}
.blog-grid--archive .blog-card__img img,
.blog-grid--archive .blog-card__img .blog-card__image,
.blog-grid--home .blog-card__img img,
.blog-grid--home .blog-card__img .blog-card__image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}


/* === v1.0.130: blog cover overlay centered === */
.site-main--blog-article .blog-article-cover__overlay{
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  padding:clamp(1.25rem,3vw,2.75rem)!important;
  background:linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.45) 55%,rgba(0,0,0,.55) 100%)!important;
}
.site-main--blog-article .blog-article-cover__plate{
  margin-inline:auto;
  max-width:min(42rem,86%)!important;
  text-align:center;
}
.site-main--blog-article .blog-article-cover__label{
  display:inline-block;
  margin-bottom:.35rem;
}
.site-main--blog-article .blog-article-cover__title{
  text-align:center;
}
.site-main--blog-article .blog-article-cover__teaser{
  text-align:center;
  max-width:min(40rem,90%);
  margin-inline:auto;
}


/* === v1.0.130: blog cover overlay centered stack === */
.site-main--blog-article .blog-article-cover__overlay{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:clamp(1.25rem,3vw,2.25rem);
  background:linear-gradient(180deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,.28) 42%,rgba(0,0,0,.5) 100%);
}
.site-main--blog-article .blog-article-cover__plate{
  width:min(46rem,88%);
  margin-inline:auto;
  text-align:center;
}
.site-main--blog-article .blog-article-cover__title,
.site-main--blog-article .blog-article-cover__teaser{
  text-align:center;
}

/* === v1.0.132: blog page-hero visible + article-faq already mapped to faq-section === */
.site-main--blog-article .blog-article-hero{display:block!important;margin:0}
.site-main--blog-article .blog-article-cover--image-only{padding-bottom:0}
.site-main--blog-article .faq-section.article-faq{margin-top:2rem}

/* v1.0.134 service CTA — cream scrim under text, bright photo */
.service-cta-banner{position:relative;margin-top:3.75rem;border-radius:12px;overflow:hidden;border-top:3px solid var(--color-accent);background:#EDE4D4;color:#1a1208;min-height:220px}
.service-cta-banner::before{content:'';position:absolute;inset:0;z-index:0;background-image:var(--svc-cta-bg,url(../images/hero-boat-map.jpg));background-size:cover;background-position:center 35%;filter:brightness(1.02) saturate(1.05);opacity:1}
.service-cta-banner__overlay{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(105deg,#FAF6EE 0%,rgba(250,246,238,.96) 38%,rgba(250,246,238,.72) 58%,rgba(250,246,238,.18) 78%,rgba(250,246,238,0) 100%)}
.service-cta-banner__inner{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.85rem 1.6rem}
.service-cta-banner__copy{flex:1 1 280px;max-width:38rem}
.service-cta-banner__copy .label,
.service-cta-banner__copy .label--inverse{color:#B98A1F;background:transparent;opacity:1}
.service-cta-banner__copy .section-title,
.service-cta-banner__copy .section-title--inverse{margin:.35rem 0 .55rem;color:#1a1208;text-shadow:none}
.service-cta-banner__copy .lead,
.service-cta-banner__copy .lead--inverse{margin:0 0 .4rem;color:#5C4A32;text-shadow:none;opacity:1}
.service-cta-banner__sub{margin:0;font-size:.92rem;line-height:1.5;color:#5C4A32;opacity:1}
.service-cta-banner__action{flex:0 0 auto}
.service-cta-banner .btn--accent{box-shadow:0 6px 18px rgba(245,197,24,.28)}
.service-article__richtext .blog-table,.service-article__richtext table.blog-table{width:100%;border-collapse:collapse;margin-block:2.5rem !important;margin-inline:0 !important;font-size:.9rem}
.service-article__richtext .blog-table th,.service-article__richtext .blog-table td{border:1px solid #ECE3D2;padding:.5rem .65rem;text-align:left}
.service-article__richtext .blog-table th{background:#FAF6EE;font-weight:600}
@media(max-width:768px){
.service-cta-banner__overlay{background:linear-gradient(180deg,#FAF6EE 0%,rgba(250,246,238,.97) 55%,rgba(250,246,238,.55) 78%,rgba(250,246,238,.12) 100%)}
.service-cta-banner__inner{padding:1.4rem 1.15rem}
.service-cta-banner__action{width:100%}
.service-cta-banner__action .btn{width:100%;text-align:center}
}
/* v1.0.136 blog single hero + container */
.blog-article__body{max-width:var(--container-max);width:100%;margin-inline:auto;padding-block:2rem 3rem}
.blog-article__content{max-width:none;width:100%}
.blog-article__content.prose{max-width:none;width:100%}

/* v1.0.137 / v1.0.142 content-shell-width — ONE effective width (no double nest on services) */
:root{
  --container-max: min(1200px, calc(100% - 48px));
  --reading-width: var(--container-max);
}
.container,
.blog-article__body,
.service-article__container,
.page-content{
  width: var(--container-max);
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--gutter, 1.25rem);
  box-sizing: border-box;
}
/* outer .service-article is a section shell only — width comes from nested .container */
.service-article{
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding-inline: 0;
  box-sizing: border-box;
}
.prose,
.entry-content,
.blog-article__content,
.blog-article__content.prose,
.service-article__richtext,
.article__body{
  max-width: none !important;
  width: 100%;
}
.prose table,
.prose .blog-table,
.prose .data-table,
.entry-content table,
.service-article__richtext table,
.blog-article__content table,
.article__table{
  width: 100%;
  max-width: none;
  display: table;
  table-layout: auto;
}
.service-flow,
.process-steps,
.data-table-section{
  width: 100%;
  max-width: none;
}
.blog-article__content p,
.blog-article__content.entry-content p,
.blog-article__content ul,
.blog-article__content ol,
.blog-article__content.entry-content ul,
.blog-article__content.entry-content ol{
  max-width: none;
}
@media (max-width: 900px){
  .container,
  .blog-article__body,
  .service-article__container,
  .page-content{
    width: 100%;
    max-width: 100%;
  }
}

/* v1.0.138 about page parity */
.page-about .about-expert__grid{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:2rem;align-items:center;margin-top:1rem}
.page-about .about-expert__grid .benefits__ring{max-width:280px;margin:0}
.page-about .about-expert__grid .section-title,
.page-about .about-expert__grid .lead{color:#1a1208}
.page-about .service-toc{margin:1.5rem 0 2rem}
@media(max-width:768px){
.page-about .about-expert__grid{grid-template-columns:1fr;justify-items:center;text-align:left}
.page-about .about-expert__grid .benefits__ring{margin-inline:auto}
}

/* v1.0.139 service-article shell full width */
.service-article__container{max-width:var(--container-max)!important;width:100%;margin-inline:auto;box-sizing:border-box}
.service-article .lead,
.page-about .lead{max-width:none}
.service-article__section .cell__list,
.service-article__points .cell__list{max-width:none}

/* === v1.0.141: blog FAQ bare-details + typography/spacing === */
.blog-article__content,
.blog-article__content.entry-content,
.blog-article__content.prose{
  font-family:var(--font-body)!important;
  color:var(--text-info-color,#1a1208);
}
.blog-article__content h2,
.blog-article__content h3,
.blog-article__content.entry-content h2,
.blog-article__content.entry-content h3{
  font-family:var(--font-display)!important;
}
.blog-article__content h2,
.blog-article__content.entry-content h2{margin:1.5rem 0 .65rem!important}
.blog-article__content h3,
.blog-article__content.entry-content h3{margin:1.15rem 0 .45rem!important}
.blog-article__content p,
.blog-article__content.entry-content p{margin:0 0 .85rem!important}
.blog-article__content ul,
.blog-article__content ol,
.blog-article__content.entry-content ul,
.blog-article__content.entry-content ol{margin:.85rem 0 .85rem 1.25rem!important}

/* v1.0.142 figures: full-bleed banners inside content shell (parity with service section imgs) */
.blog-article__content figure{
  display:block;
  width:100%!important;
  max-width:100%!important;
  margin:1.5rem 0 1.65rem!important;
  padding:0;
  border:0;
  background:transparent;
  overflow:hidden;
}
.blog-article__content figure + figure{
  margin-top:2rem!important;
}
.blog-article__content figure img{
  display:block;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:21/9;
  max-height:min(320px,42vw);
  object-fit:cover!important;
  object-position:center;
  background:transparent;
  border-radius:var(--radius-card,14px);
  border:1px solid #EFE6D4;
}
@media (min-width:769px){
  .blog-article__content figure img{
    max-height:340px;
  }
}
.blog-article__content figcaption{
  margin:.4rem 0 0!important;
  padding:0 .15rem;
  font-family:var(--font-body)!important;
  font-size:.82rem!important;
  font-style:normal!important;
  font-weight:500;
  line-height:1.4;
  color:#6a5c48!important;
  text-align:left;
  letter-spacing:.01em;
}
.blog-article__content figcaption i,
.blog-article__content figcaption em{
  font-style:normal!important;
  font-family:inherit!important;
}

/* cover: avoid huge blank when pale/broken */
.site-main--blog-article .blog-article-cover__frame{
  min-height:0!important;
  max-height:320px;
  aspect-ratio:21/9;
  background:#ece7dc;
}
.site-main--blog-article .blog-article-cover__img{
  height:100%!important;
  max-height:320px!important;
  min-height:0!important;
  object-fit:cover;
  background:#ece7dc;
}
@media (min-width:769px){
  .site-main--blog-article .blog-article-cover__frame{max-height:340px}
  .site-main--blog-article .blog-article-cover__img{max-height:340px!important;height:100%!important}
}

/* normalized FAQ inside post content (homepage classes) */
.blog-article__content .faq-section,
.blog-article__content.entry-content .faq-section{
  margin:1.75rem 0 1rem!important;
  padding:0!important;
  max-width:none!important;
  width:100%!important;
  background:#FAF6EE!important;
  border:1px solid #EFE6D4!important;
  border-radius:var(--radius-card,14px)!important;
  overflow:hidden;
}
.blog-article__content .faq-section .container.faq,
.blog-article__content .faq-section .faq{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:1.1rem 1.15rem 1.25rem!important;
  box-sizing:border-box;
}
.blog-article__content .faq-section .faq__intro{margin-bottom:.65rem}
.blog-article__content .faq-section .faq__intro .label{margin-bottom:.35rem}
.blog-article__content .faq-section .section-title{
  font-family:var(--font-display)!important;
  font-size:clamp(1.15rem,2.2vw,1.45rem)!important;
  margin:0!important;
  color:#1a1208!important;
}
.blog-article__content .faq-section .faq__list{
  background:#fff!important;
  border:1px solid #EDEDED!important;
  border-radius:var(--radius-card,14px)!important;
  overflow:hidden!important;
  padding:0 1.1rem!important;
}
.blog-article__content .faq-section .faq__q{
  font-family:var(--font-display)!important;
}
.blog-article__content .faq-section .faq__a{
  font-family:var(--font-body)!important;
  max-width:100%!important;
  width:100%!important;
}
.faq-section .faq__a > p{margin:0 0 .65rem!important;max-width:none!important}
.faq-section .faq__a > p:last-child{margin-bottom:0!important}
.faq-section .faq__a ul.article__list,
.faq-section .faq__a ol.article__list,
.faq-section .faq__a ul,
.faq-section .faq__a ol{
  margin:.35rem 0 .75rem 1.1rem!important;
  padding:0!important;
  max-width:none!important;
  width:auto!important;
}
.faq-section .faq__a li{
  margin:0 0 .4rem!important;
  line-height:1.5!important;
  max-width:none!important;
}
.faq-section .faq__a a{
  color:#b98a1f!important;
  text-decoration:underline!important;
  text-underline-offset:2px;
}


/* bare details fallback if filter missed (pre-normalize / cache) */
.blog-article__content details.faq-item{
  border-bottom:1px solid #EDEDED;
  padding:0 1.1rem;
  background:#fff;
  margin:0;
}
.blog-article__content details.faq-item:first-of-type{
  border-top:1px solid #EDEDED;
  border-radius:var(--radius-card,14px) var(--radius-card,14px) 0 0;
}
.blog-article__content details.faq-item:last-of-type{
  border-bottom:1px solid #EDEDED;
  border-radius:0 0 var(--radius-card,14px) var(--radius-card,14px);
}
.blog-article__content details.faq-item > summary{
  list-style:none;
  cursor:pointer;
  padding:1rem 0;
  font-family:var(--font-display)!important;
  font-size:clamp(.78rem,1.1vw,.9rem)!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  color:#1a1208!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:1rem!important;
}
.blog-article__content details.faq-item > summary::-webkit-details-marker{display:none}
.blog-article__content details.faq-item > summary::after{
  content:'+';
  color:#E3B45A;
  font-size:1.5rem;
  font-weight:400;
  flex-shrink:0;
  line-height:1;
}
.blog-article__content details.faq-item[open] > summary::after{content:'\2212'}
.blog-article__content details.faq-item > *:not(summary){
  padding:0 0 1rem;
  margin:0;
  color:#444;
  font-family:var(--font-body)!important;
  font-size:.9rem;
  line-height:1.5;
}
.blog-article__body{padding-block:1.15rem 1.75rem}

/* === v1.0.143: unordered list breathing room (sitewide, not nav/footer/faq/menus) === */
.cell__list{margin-top:.85rem}
.svc-card__list,.promo-banner__list{margin-top:.85rem}
p + .svc-card__list, h2 + .svc-card__list, h3 + .svc-card__list,
.svc-card__title + .svc-card__list{margin-top:.85rem}

p + ul, h2 + ul, h3 + ul, .lead + ul,
p + .cell__list, h2 + .cell__list, h3 + .cell__list, .lead + .cell__list{margin-top:.85rem}
.blog-article__content ul,
.blog-article__content.entry-content ul,
.blog-article__content.prose ul,
.service-article__richtext ul,
.prose ul,
.entry-content ul{
  margin-top:.85rem;
}
.site-header ul, .site-nav ul, .primary-nav ul, .menu ul,
.site-footer ul, .footer-nav ul, .faq-section ul, .faq-list ul,
.article-faq ul, .blog-pagination ul, .pagination ul,
.nav-menu, .wp-block-navigation ul{margin-top:0}

/* === v1.0.147: thank-you page after form submit === */
.page-thanks__section{
  padding-top:calc(var(--header-h, 72px) + 2.75rem);
  padding-bottom:4.5rem;
  min-height:calc(70vh - var(--header-h, 72px));
  display:flex;
  align-items:center;
  background:#fff;
}
.page-thanks__wrap{width:100%}
.thanks-card{
  max-width:38rem;
  margin:0 auto;
  background:#FAF6EE;
  border:1px solid #ECE3D2;
  border-radius:12px;
  padding:clamp(1.75rem,4vw,2.75rem) clamp(1.35rem,3.5vw,2.25rem);
  text-align:center;
  box-shadow:0 10px 28px rgba(60,40,10,.06);
}
.thanks-card__title{
  font-family:var(--font-display);
  font-size:clamp(1.75rem,4vw,2.5rem);
  font-weight:700;
  letter-spacing:-.01em;
  line-height:1.2;
  color:#1a1208;
  margin:0 0 1rem;
}
.thanks-card__text{
  margin:0 auto 1.75rem;
  max-width:32rem;
  font-family:var(--font-body);
  font-size:1.0625rem;
  line-height:1.55;
  color:#3a3228;
}
.thanks-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  justify-content:center;
}
.thanks-card__actions .btn{min-width:9.5rem}
.thanks-card__actions .btn--on-light{
  background:transparent;
  color:#1a1208;
  border:1.5px solid rgba(26,18,8,.35);
}
.thanks-card__actions .btn--on-light:hover{
  border-color:#1a1208;
  background:rgba(26,18,8,.04);
}
@media(max-width:640px){
  .thanks-card__actions{flex-direction:column;align-items:stretch}
  .thanks-card__actions .btn{width:100%}
}

/* === v1.0.150: content tables = blog-table styling + spacing === */
.blog-article__content table,
.entry-content table,
.prose table,
.service-article__richtext table,
table.blog-table,
.blog-table{
  width:100%;
  max-width:none;
  border-collapse:collapse;
  margin-block:2.5rem !important;margin-inline:0 !important;
  font-size:.92rem;
  display:table;
  table-layout:auto;
  text-align:left;
}
.blog-article__content table th,
.blog-article__content table td,
.entry-content table th,
.entry-content table td,
.prose table th,
.prose table td,
.service-article__richtext table th,
.service-article__richtext table td,
table.blog-table th,
table.blog-table td,
.blog-table th,
.blog-table td{
  border:1px solid #ECE3D2;
  padding:.5rem .65rem;
  text-align:left;
}
.blog-article__content table th,
.entry-content table th,
.prose table th,
.service-article__richtext table th,
table.blog-table th,
.blog-table th{
  background:#FAF6EE;
  font-weight:600;
}
.service-article__richtext table,
.service-article__richtext .blog-table,
.service-article__richtext table.blog-table{
  font-size:.9rem;
}


/* Callback modal — white panel, MKB accent CTA */
.callback-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
}
.callback-modal[hidden] {
  display: none !important;
}
.callback-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  cursor: pointer;
}
.callback-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 26rem);
  max-height: calc(100vh - 2.5rem);
  overflow: auto;
  background: #ffffff;
  border: 1px solid #ECE3D2;
  border-radius: var(--radius-card, 14px);
  box-shadow: 0 18px 48px rgba(26, 18, 8, 0.18);
  padding: 1.35rem 1.35rem 1.25rem;
  color: #1a1208;
  font-family: var(--font-body);
}
.callback-modal__close {
  position: absolute;
  top: 0.55rem;
  right: 0.65rem;
  z-index: 2;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #5a4e3a;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}
.callback-modal__close:hover {
  color: #1a1208;
  background: rgba(26, 18, 8, 0.06);
}
.callback-modal__title {
  margin: 0 0 0.45rem;
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.25;
  color: #1a1208;
  padding-right: 1.75rem;
}
.callback-modal__sub {
  margin: 0 0 1rem;
  font-size: 0.9rem;
  line-height: 1.45;
  color: #5a4e3a;
}
.callback-modal__form .form-field {
  margin-bottom: 0.65rem;
}
.callback-modal__form .form-field input {
  width: 100%;
  min-height: 44px;
  border: 1px solid #E3D9C8;
  border-radius: var(--radius-input, 6px);
  padding: 0.65rem 0.85rem;
  background: #FAF6EE;
  color: #1a1208;
  font-family: var(--font-body);
}
.callback-modal__form .form-field input::placeholder {
  color: rgba(26, 18, 8, 0.45);
}
.callback-modal__form .form-field input:focus {
  outline: 2px solid var(--color-accent, #F5C518);
  outline-offset: 1px;
  border-color: #E3B45A;
  background: #ffffff;
}
.callback-modal__form .form-actions {
  margin-top: 0.85rem;
}
.callback-modal__form .btn--accent,
.callback-modal__thanks .btn--accent {
  width: 100%;
  justify-content: center;
}
.callback-modal__consent {
  margin-top: 0.75rem;
  font-size: 0.78rem;
  line-height: 1.4;
  color: #5a4e3a;
}
.callback-modal__consent a {
  color: #C9A227;
  text-decoration: underline;
}
.callback-modal .form-status--err {
  margin: 0.5rem 0 0;
  color: #c62828;
  font-size: 0.85rem;
  font-weight: 600;
}
.callback-modal__thanks {
  text-align: center;
  padding: 0.75rem 0 0.25rem;
}
.callback-modal__thanks .btn--accent {
  margin-top: 1rem;
}
body.has-callback-open {
  overflow: hidden;
}

button.footer-cta__btn {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  font: inherit;
}
body.has-callback-open {
  overflow: hidden;
}
/* === v1.0.181: table spacing from prose (anti margin-collapse) === */
.blog-article__content table,
.entry-content table,
.prose table,
.service-article__richtext table,
table.blog-table,
.blog-table,
.article__table{
  margin-block:2.5rem !important;
  margin-inline:0 !important;
}
.service-article__richtext > p:has(+ table),
.blog-article__content > p:has(+ table),
.entry-content > p:has(+ table),
.prose > p:has(+ table){
  margin-bottom:0 !important;
}
.service-article__richtext > table + p,
.blog-article__content > table + p,
.entry-content > table + p,
.prose > table + p{
  margin-top:0 !important;
}

/* Blog article CTA band — copy + action */
.cta-band--article .cta-band__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem}
.cta-band--article .cta-band__copy{flex:1 1 280px;max-width:40rem}
.cta-band--article .cta-band__action{flex:0 0 auto}
.cta-band--article .cta-band__action .btn{min-width:16rem}
.blog-article__content .cta--callback{margin:2rem 0;text-align:left}
.blog-article__content .cta--callback .btn{display:inline-flex}

/* === v1.0.187: cta-band content-shell before FAQ === */
/* cta-band-content-shell.pattern.css
 * Prize/consult CTA: content-shell width (not full-bleed), before FAQ.
 * Canon: shared/cta-band-before-faq-contract.md
 * Scope: wrap in .theme-<slug> or global theme
 */

.cta-band.cta-band--shell {
  width: var(--container-max, min(1200px, calc(100% - 48px)));
  max-width: var(--container-max, min(1200px, calc(100% - 48px)));
  margin-inline: auto;
  margin-block: 1.5rem 1.25rem;
  border-radius: var(--radius-card, 14px);
  overflow: hidden;
  box-sizing: border-box;
  padding-block: 1.6rem !important;
}

.cta-band.cta-band--shell .container,
.cta-band.cta-band--shell .cta-band__inner {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding-inline: 1.35rem;
  box-sizing: border-box;
}

/* Keep CTA inside blog/page content shell visually aligned with FAQ */
.blog-article__body > .cta-band.cta-band--shell,
.site-main--blog-article > .cta-band.cta-band--shell {
  width: 100%;
  max-width: none;
}

@media (max-width: 900px) {
  .cta-band.cta-band--shell {
    width: calc(100% - 0px);
    max-width: 100%;
    border-radius: var(--radius-card, 12px);
  }
}


/* FAQ sibling after CTA (extracted from content) — same shell look */
.blog-article__body > .faq-section,
.blog-article__body > .faq-section.article-faq {
  margin: 1.25rem 0 0.5rem !important;
  padding: 0 !important;
  max-width: none !important;
  width: 100% !important;
  background: #FAF6EE !important;
  border: 1px solid #EFE6D4 !important;
  border-radius: var(--radius-card, 14px) !important;
  overflow: hidden;
}
.blog-article__body > .faq-section .container.faq,
.blog-article__body > .faq-section .faq {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 1.1rem 1.15rem 1.25rem !important;
  box-sizing: border-box;
}
.site-main--blog-article > .cta-band.cta-band--shell {
  width: var(--container-max);
  max-width: var(--container-max);
  margin-inline: auto;
}
.site-main--blog-article > .faq-section {
  width: var(--container-max);
  max-width: var(--container-max);
  margin-inline: auto;
  border-radius: var(--radius-card, 14px);
  overflow: hidden;
}

/* === v1.0.187b: all non-home .cta-band = content-shell (CMS + PHP) === */
body:not(.home):not(.front-page) .cta-band {
  width: var(--container-max, min(1200px, calc(100% - 48px))) !important;
  max-width: var(--container-max, min(1200px, calc(100% - 48px))) !important;
  margin-inline: auto !important;
  margin-block: 1.5rem 1.25rem !important;
  border-radius: var(--radius-card, 14px) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  padding-block: 1.6rem !important;
}
body:not(.home):not(.front-page) .cta-band .container,
body:not(.home):not(.front-page) .cta-band .cta-band__inner {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 1.35rem !important;
  box-sizing: border-box !important;
}
body:not(.home):not(.front-page) .blog-article__body > .cta-band {
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 900px) {
  body:not(.home):not(.front-page) .cta-band {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* === TEA section-stack-spacing (CONTROLLED by teya_section_stack_spacing_gate.py) === */
.service-article__section-img,
.service-article__scheme,
.service-flow,
.service-article__richtext .blog-table,
.service-article__richtext table,
table.blog-table,
.blog-table {
  margin-top: var(--space-40, 2.5rem);
  margin-bottom: var(--space-40, 2.5rem);
}
.service-article__section + .service-article__section {
  margin-top: var(--space-56, 3.5rem);
}
.service-article__richtext .blog-table,
.service-article__richtext table,
table.blog-table,
.blog-table {
  margin-block: var(--space-40, 2.5rem);
}
/* === /TEA section-stack-spacing === */
