/* ============================================================
   Aivelapack — Semantic CSS  |  namespace: .av-
   Primary #F5A623 · Green #1B5E20 · Dark #1a1a1a
============================================================ */
@import url("https://fonts.googleapis.com/css2?family=Anton&family=Inter:wght@400;500;600;700&display=swap");

/* ── Variables ── */
.av-wrap {
  --pr: #F5A623;
  --gr: #1B5E20;
  --dk: #1a1a1a;
  --bd: #e5e7eb;
  --sh1: 0 2px 12px rgba(0,0,0,0.06);
  --sh2: 0 4px 24px rgba(0,0,0,0.10);
}

/* ── Base reset ── */
.av-wrap * { box-sizing: border-box; margin: 0; padding: 0; }
.av-wrap {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: var(--dk);
  background: #fff;
  overflow-x: hidden;
}
.av-wrap img { display: block; max-width: 100%; height: auto; }
.av-wrap a { text-decoration: none; color: inherit; }
.av-wrap button { cursor: pointer; font-family: inherit; border: none; }
.av-wrap input { font-family: inherit; }
.av-wrap ul { list-style: none; }
.av-wrap svg { display: block; }

/* ── Container ── */
.av-container {
  width: 100%;
  max-width: 1460px;
  margin-inline: auto;
  padding-inline: 1rem;
}

/* ── Section badge (green pill) ── */
.av-badge {
  display: inline-block;
  padding: .5rem 1.375rem;
  background: rgba(27,94,32,.1);
  color: var(--gr);
  font-size: 1rem;
  font-weight: 600;
  border-radius: 9999px;
  margin-bottom: 1rem;
}

/* ── Scroll reveal ── */
[data-reveal] { opacity: 0; transform: translateY(20px); transition: opacity .5s ease, transform .5s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }

/* ══════════════ HEADER ══════════════ */
.av-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid #f3f4f6;
  box-shadow: 0 1px 4px rgba(0,0,0,.06);
}
.av-header-inner {
  display: flex; align-items: center; justify-content: space-between;
  padding: .5rem 1rem;
  max-width: 1400px; margin-inline: auto;
}
.av-logo img { width: 7rem; }
.av-nav { display: none; align-items: center; gap: 1.5rem; }
.av-nav a { font-size: .875rem; font-weight: 500; color: #000 transition: color .2s; }
.av-nav a:hover { color: #000;; }
.av-header-right { display: none; align-items: center; gap: 1rem; }
.av-header-phone { font-size: 1rem; font-weight: 700; color: var(--gr); transition: color .2s; }
.av-header-phone:hover { color: var(--pr); }
.av-btn-cta {
  display: inline-block; padding: .5rem 1.25rem; border-radius: 9999px;
  background: var(--pr); color: #fff; font-size: .875rem; font-weight: 700;
  transition: background .2s;
}
.av-btn-cta:hover { background: #e09500; }
.av-burger { display: flex; padding: .5rem; background: none; border-radius: .5rem; }
.av-burger:hover { background: #f9fafb; }
.av-mobile-menu { display: none; background: white; border-top: 1px solid #f3f4f6; padding: 0 1rem 1.25rem; }
.av-mobile-menu.is-open { display: block; }
.av-mobile-menu a { display: block; padding: .75rem 0; font-size: .875rem; font-weight: 500; color: #374151; border-bottom: 1px solid #f9fafb; text-align: center; }
.av-mobile-menu .av-btn-cta { display: block; margin-top: .75rem; text-align: center; }

/* ══════════════ HERO ══════════════ */
.av-hero { background: white; padding-top: 80px; }
.av-hero-inner { display: grid; gap: 1.5rem; padding-top: 4.5rem; padding-bottom: 1rem; align-items: start; }
.av-hero-eyebrow { color: #9ca3af; font-size: .8125rem; letter-spacing: .05em; margin-bottom: 1.25rem; text-align: center; }
.av-hero-title {
  font-family: 'Anton', sans-serif; font-weight: 900;
  font-size: clamp(1.75rem,5vw,3.2rem); line-height: 1.15;
  color: var(--dk); margin-bottom: 1.5rem; text-align: center;
}
.av-hero-title .oa { color: var(--pr); }
.av-hero-features { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem 1rem; margin-top: 2.5rem; }
.av-hero-feat { display: flex; align-items: flex-start; gap: .5rem; }
.av-hero-feat svg { width: 1.75rem; height: 1.75rem; flex-shrink: 0; }
.av-hero-feat p { font-size: .75rem; color: #374151; line-height: 1.4; }
.av-hero-img-wrap { display: none; align-items: center; justify-content: flex-end; overflow: visible; }
.av-hero-img {
  width: 100%; max-width: 40rem; display: block;
  transform: scale(.88) translateX(12%); transform-origin: center;
  mix-blend-mode: multiply; filter: contrast(1.05) saturate(1.1);
  animation: avFloat 4s ease-in-out infinite;
}
@keyframes avFloat {
  0%,100% { transform: scale(.88) translateX(12%) translateY(0); }
  50%      { transform: scale(.88) translateX(12%) translateY(-10px); }
}

/* ══════════════ MARKETPLACES ══════════════ */
.av-mp { background: white; padding-top: 1.25rem; padding-bottom: 1.5rem; }
.av-mp-label { font-size: .6875rem; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .16em; text-align: center; margin-bottom: 1.5rem; }
.av-mp-list { display: flex; align-items: flex-start; justify-content: center; gap: 2rem; }
.av-mp-item { display: flex; flex-direction: column; align-items: center; gap: .5rem; width: 5rem; transition: transform .2s; }
.av-mp-item:hover { transform: scale(1.06) translateY(-4px); }
.av-mp-circle { width: 4rem; height: 4rem; border-radius: 50%; overflow: hidden; box-shadow: 0 4px 8px rgba(0,0,0,.12); }
.av-mp-circle img { width: 100%; height: 100%; object-fit: cover; }
.av-mp-name { font-size: .75rem; color: #6b7280; font-weight: 600; text-align: center; }

/* ══════════════ INFO BAR ══════════════ */
.av-infobar { background: #1B5E20; padding: 1.25rem 0; margin-top: 4rem; }
.av-infobar-list { display: none; flex-wrap: wrap; justify-content: center; gap: .5rem 2.5rem; }
.av-infobar-item { display: flex; align-items: center; gap: .5rem; color: rgba(255,255,255,.8); font-size: .875rem; font-weight: 500; }
.av-infobar-dot { width: .375rem; height: .375rem; border-radius: 50%; background: var(--pr); flex-shrink: 0; }
.av-infobar-mobile { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem 1rem; padding: 0 1rem; }
.av-infobar-mobile span {
  display: flex; align-items: flex-start; gap: .5rem;
  color: rgba(255,255,255,.95); font-size: .8125rem; font-weight: 500; line-height: 1.35;
}
.av-infobar-mobile span::before {
  content: ''; flex-shrink: 0; width: .375rem; height: .375rem;
  border-radius: 50%; background: var(--pr); margin-top: .35rem;
}

/* ══════════════ ABOUT ══════════════ */
.av-about { background: white; padding-block: 4rem; }
.av-about-inner { text-align: center; }
.av-about-title {
  font-family: 'Anton', sans-serif; font-weight: 900;
  font-size: clamp(1.75rem,5vw,3.2rem); line-height: 1.08;
  color: var(--dk); margin-bottom: 2rem;
}
.av-about-title .gr { color: var(--gr); }
.av-about-title .oa { color: var(--pr); }
.av-about-body { color: #6b7280; line-height: 1.7; font-size: 1.05rem; margin-bottom: 3rem; }
.av-about-body p + p { margin-top: 1.25rem; }
.av-about-body strong { color: var(--gr); }
.av-about-actions { display: flex; flex-direction: column; align-items: center; gap: 1.25rem; }
.av-btn-outline {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0 2.5rem; height: 3.5rem;
  border: 2px solid var(--gr) !important; border-radius: .75rem;
  background: transparent; color: var(--gr);
  font-weight: 700; font-size: .85rem; text-transform: uppercase; letter-spacing: .1em;
  transition: all .2s;
}
.av-btn-outline:hover { background: var(--gr); color: #ffffff; transform: scale(1.05); }
.av-about-hint { color: #9ca3af; font-size: .875rem; font-style: italic; }

/* ══════════════ NUMBERS / STATS ══════════════ */
.av-numbers { background: white; padding-bottom: 3.5rem; }
.av-numbers-head { text-align: center; padding-top: 2.5rem; margin-bottom: 1.5rem; }
.av-numbers-title { font-family:'Anton',sans-serif; font-weight:900; font-size:clamp(1.75rem,5vw,3.2rem); line-height:1.08; color:var(--dk); margin-top:.6rem; }
.av-numbers-title .oa { color:var(--pr); }
.av-stats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 1rem; }
.av-stat {
  background: white; border-radius: 1rem; padding: 1.25rem;
  display: flex; flex-direction: column; position: relative; overflow: hidden;
  min-height: 10rem; border: 2px solid var(--gr);
  transition: transform .15s ease; cursor: default;
}
.av-stat:hover { transform: translateY(-5px); }
.av-stat.oa-border { border-color: var(--pr); }
.av-stat-lbl {
  font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .15em;
  color: rgba(26,26,46,.55); margin-bottom: .75rem; min-height: 2.8rem; display: block;
}
.av-stat.oa-border .av-stat-lbl { color: var(--pr); }
.av-stat-val {
  font-family: 'Anton', sans-serif; font-size: clamp(2.6rem,5vw,4rem);
  font-weight: 900; line-height: 1; color: var(--dk);
}
.av-stat.oa-border .av-stat-val { color: var(--pr); }
.av-stat-note { font-size: .875rem; color: rgba(26,26,46,.75); margin-top: .5rem; line-height: 1.35; }
.av-stat-wide {
  background: white; border-radius: 1rem; padding: 1.25rem;
  border: 2px solid var(--pr); display: flex; flex-direction: column; gap: 1rem;
  transition: transform .15s ease; cursor: default;
}
.av-stat-wide:hover { transform: translateY(-4px); }
.av-stat-wide-left {}
.av-stat-wide-num { font-family:'Anton',sans-serif; font-size:clamp(3rem,7vw,5.5rem); font-weight:900; line-height:1; color:var(--dk); white-space:nowrap; }
.av-stat-wide-unit { font-size:.875rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--pr); margin-top:.5rem; }
.av-stat-wide-desc { font-size:1rem; color:rgba(26,26,46,.75); line-height:1.6; font-weight:500; }

/* ══ Shared section heading ══ */
.av-section-title {
  font-family:'Anton',sans-serif; font-weight:900;
  font-size:clamp(1.75rem,5vw,3.2rem); line-height:1.08;
  color:var(--dk);
}

/* ══════════════ SERVICES ══════════════ */
.av-services { background: white; padding-block: 1.5rem; }
.av-services-head { text-align: center; margin-bottom: 1.5rem; }
.av-services-title { color: var(--pr) !important; }
.av-services-grid { display: grid; gap: 2rem; }
.av-svc {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  cursor: default; transition: transform .15s ease;
}
.av-svc:hover { transform: translateY(-5px); }
.av-svc-icon { width: 5rem; height: 5rem; color: var(--gr); margin-bottom: 1.25rem; transition: color .3s; }
.av-svc:hover .av-svc-icon { color: var(--pr); }
.av-svc-divider { width: 2.5rem; height: 2px; background: var(--pr); margin-bottom: 1rem; transition: width .3s; }
.av-svc:hover .av-svc-divider { width: 4rem; }
.av-svc-title { font-family:'Anton',sans-serif; font-size:1.5rem; color:var(--gr); margin-bottom:.75rem; }
.av-svc-desc { color:#6b7280; font-size:.875rem; line-height:1.6; max-width:18rem; }

/* ══════════════ FBO / FBS ══════════════ */
.av-fbo { background: #f9fafb; padding-block: 3.5rem; }
.av-fbo-head { display:flex; flex-direction:column; align-items:center; text-align: center; margin-bottom: 1.5rem; }
.av-fbo-sub { color:#6b7280; font-size:1rem; max-width:36rem; margin:1rem auto 0; }
.av-fbo-cards { display:grid; gap:1.5rem; max-width:48rem; margin-inline:auto; }
.av-scheme {
  background: white; border: 1px solid #f3f4f6; border-radius: 1rem;
  box-shadow: var(--sh1); overflow: hidden; display: flex; flex-direction: column;
}
.av-scheme-bar { height: .375rem; }
.av-scheme-body { padding: 2rem; flex: 1; display: flex; flex-direction: column; }
.av-scheme-lbl { display:flex; align-items:center; gap:.75rem; margin-bottom:1.25rem; }
.av-scheme-icon {
  display:inline-flex; align-items:center; justify-content:center;
  width:3.5rem; height:3.5rem; border-radius:.75rem;
  color:white; font-family:'Anton',sans-serif; font-size:1.25rem; font-weight:900; letter-spacing:.08em;
}
.av-scheme-name { font-family:'Anton',sans-serif; font-size:1.25rem; font-weight:900; color:var(--dk); letter-spacing:.08em; }
.av-scheme-full { font-size:.75rem; color:#6b7280; }
.av-scheme-desc { color:#4b5563; font-size:.875rem; line-height:1.7; flex:1; margin-bottom:2rem; }
.av-btn-solid {
  display:block; width:100%; padding:.75rem; border-radius:.75rem;
  color:white; font-size:.875rem; font-weight:600; text-align:center;
  transition: box-shadow .2s, transform .1s; cursor:pointer;
}
.av-btn-solid:hover { box-shadow:0 4px 16px rgba(0,0,0,.2); }
.av-btn-solid:active { transform:scale(.98); }

/* ══════════════ WORK STAGES ══════════════ */
.av-stages { background: #fafafa; padding-block: 1.5rem; }
.av-stages-head { text-align:center; margin-bottom:1.5rem; }
.av-stages-sub { color:#6b7280; font-size:1rem; max-width:36rem; margin:.75rem auto 0; }
.av-stages-list { display:flex; flex-direction:column; gap:1.25rem; max-width:54rem; margin-inline:auto; }
.av-stage-card {
  display:flex; flex-direction:column; border-radius:1rem; overflow:hidden;
  box-shadow:0 4px 16px rgba(0,0,0,.08); border:1.5px solid #e8e8e8; background:white;
}
.av-scene {
  position:relative; min-height:180px; padding:1rem;
  display:flex; align-items:center; justify-content:center; overflow:hidden; flex-shrink:0;
}
.av-scene-num {
  position:absolute; top:.75rem; left:.75rem;
  width:2rem; height:2rem; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-weight:900; font-size:.7rem; z-index:10;
}
.av-stage-text { padding:1.75rem 2rem; display:flex; flex-direction:column; justify-content:center; }
.av-stage-title { font-family:'Anton',sans-serif; font-size:1.2rem; font-weight:900; color:var(--dk); margin-bottom:.625rem; }
.av-stage-desc { color:#6b7280; font-size:.9rem; line-height:1.7; }

/* Scene S01 – dark bg */
.av-s01 { background:#1a1a1a; }
.av-s01-doc {
  position:relative; width:110px; height:130px;
  background:white; border:1.5px solid rgba(245,166,35,.2); border-radius:.5rem;
  overflow:hidden; animation:avFloatSm 3.5s ease-in-out infinite;
}
.av-s01-lines { position:absolute; left:12px; right:12px; top:16px; display:flex; flex-direction:column; gap:8px; }
.av-s01-ln {
  height:6px; border-radius:9999px; background:rgba(26,26,46,.12);
  transform-origin:left center; transform:scaleX(0);
}
.av-s01-ln:nth-child(1){width:100%;animation:avGrowLine .5s .2s ease-out infinite alternate,avGrowCycle 4s .2s ease-in-out infinite;}
.av-s01-ln:nth-child(2){width:85%;animation:avGrowLine .5s .35s ease-out infinite alternate,avGrowCycle 4s .35s ease-in-out infinite;}
.av-s01-ln:nth-child(3){width:95%;animation:avGrowLine .5s .5s ease-out infinite alternate,avGrowCycle 4s .5s ease-in-out infinite;}
.av-s01-ln:nth-child(4){width:70%;animation:avGrowLine .5s .65s ease-out infinite alternate,avGrowCycle 4s .65s ease-in-out infinite;}
.av-s01-sigline { position:absolute; left:12px; right:12px; bottom:28px; height:1px; background:rgba(26,26,46,.2); }
.av-s01-sig { position:absolute; left:12px; bottom:16px; overflow:visible; }
.av-s01-sig path {
  fill:none; stroke:#F5A623; stroke-width:2.2; stroke-linecap:round;
  stroke-dasharray:120; stroke-dashoffset:120;
  animation:avSigDraw 4s ease-in-out infinite;
}
@keyframes avFloatSm { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-3px)} }
@keyframes avGrowLine { from{transform:scaleX(0)} to{transform:scaleX(1)} }
@keyframes avGrowCycle { 0%,100%{transform:scaleX(0)} 15%,85%{transform:scaleX(1)} }
@keyframes avSigDraw { 0%{stroke-dashoffset:120} 45%,80%{stroke-dashoffset:0} 100%{stroke-dashoffset:120} }

/* Scene S02 – orange bg, truck arriving */
.av-s02 { background:var(--pr); overflow:hidden; }
.av-s02-road { position:absolute; left:0; right:0; bottom:10px; height:1px; background:rgba(26,26,46,.15); }
.av-s02-dash {
  position:absolute; bottom:4px; height:3px; width:24px;
  background:rgba(26,26,46,.25); border-radius:2px;
  animation:avRoadDash 2s linear infinite;
}
.av-s02-wh { position:absolute; left:8px; bottom:10px; }
.av-s02-truck { position:absolute; bottom:0; left:0; color:#1a1a1a; animation:avTruckArrive 5s cubic-bezier(0,0,.2,1) infinite; }
.av-s02-truck svg { animation:avDriveBobFlip .28s ease-in-out infinite; }
@keyframes avRoadDash { from{transform:translateX(-30px)} to{transform:translateX(220px)} }
@keyframes avTruckArrive { 0%,5%{transform:translateX(260px)} 50%,100%{transform:translateX(88px)} }
@keyframes avDriveBobFlip { 0%,100%{transform:scaleX(-1) translateY(0)} 50%{transform:scaleX(-1) translateY(-1.5px)} }

/* Scene S03 – dark bg, scanner */
.av-s03 { background:#1a1a1a; }
.av-s03-inner { position:relative; display:flex; align-items:center; gap:12px; }
.av-s03-box {
  width:104px; height:104px; background:rgba(245,166,35,.1);
  border:2px solid rgba(245,166,35,.55); border-radius:8px;
  position:relative; overflow:hidden; flex-shrink:0;
}
.av-s03-scan {
  position:absolute; left:-2px; right:-2px; height:2px;
  background:linear-gradient(90deg,transparent 5%,#F5A623 50%,transparent 95%);
  box-shadow:0 0 10px 2px rgba(245,166,35,.7);
  animation:avScan 2.2s ease-in-out infinite;
}
.av-s03-bars {
  position:absolute; bottom:10px; left:50%; transform:translateX(-50%);
  display:flex; gap:2px; align-items:flex-end;
}
.av-s03-bar { background:rgba(245,166,35,.75); border-radius:1px; }
.av-s03-beam {
  position:absolute; right:38px; height:2px; width:12px;
  background:linear-gradient(90deg,#F5A623,transparent);
  box-shadow:0 0 4px #F5A623;
  top:50%; transform:translateY(-50%);
  animation:avBeamPulse 2.2s ease-in-out infinite;
}
@keyframes avScan { 0%,100%{top:8%} 50%{top:68%} }
@keyframes avBeamPulse { 0%,100%{opacity:.4} 50%{opacity:1} }

/* Scene S04 – orange bg, labeling */
.av-s04 { background:var(--pr); }
.av-s04-box { display:flex; align-items:center; justify-content:center; }
.av-s04-pkg { position:relative; animation:avFloatSm 3s ease-in-out infinite; }
.av-s04-tape { position:absolute; top:0; left:0; pointer-events:none; }
.av-s04-tape path {
  stroke-dasharray:38;
  stroke-dashoffset:38;
  animation:avTapeDraw 5s ease-out infinite;
}
@keyframes avTapeDraw {
  0%,8%{stroke-dashoffset:38;opacity:0}
  38%{stroke-dashoffset:0;opacity:1}
  85%{stroke-dashoffset:0;opacity:1}
  96%,100%{stroke-dashoffset:38;opacity:0}
}
.av-s04-label {
  position:absolute; right:-6px; top:4px;
  width:46px; height:28px;
  background:#fff; border-radius:3px;
  border:1.5px solid rgba(26,26,46,.15);
  box-shadow:0 3px 10px rgba(0,0,0,.2);
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  gap:2px; padding:3px 4px; overflow:hidden;
  animation:avLabelDrop 5s ease-out infinite;
}
.av-s04-bars { display:flex; gap:1.5px; align-items:flex-end; }
.av-s04-barnum { font-size:5px; color:#1a1a1a; letter-spacing:1.2px; font-weight:700; font-family:monospace; }
@keyframes avLabelDrop {
  0%,42%{opacity:0;transform:translateY(-28px)}
  55%{opacity:1;transform:translateY(0)}
  88%{opacity:1;transform:translateY(0)}
  100%{opacity:0;transform:translateY(-6px)}
}
.av-s04-check {
  position:absolute; bottom:-8px; right:-8px;
  width:26px; height:26px; border-radius:50%;
  background:#1a1a1a;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.35);
  animation:avCheckPop2 5s ease-out infinite;
}
@keyframes avCheckPop2 {
  0%,60%{transform:scale(0);opacity:0}
  68%{transform:scale(1.2);opacity:1}
  74%,92%{transform:scale(1);opacity:1}
  100%{transform:scale(0);opacity:0}
}

/* Scene S05 – dark bg, truck departing */
.av-s05 { background:#1a1a1a; overflow:hidden; }
.av-s05-road { position:absolute; left:0; right:0; bottom:32px; height:1px; background:rgba(245,166,35,.15); }
.av-s05-spd {
  position:absolute; height:1.5px; width:22px;
  background:rgba(245,166,35,.35); border-radius:9999px;
  animation:avSpeedLine 1.1s linear infinite;
}
.av-s05-truck { position:absolute; bottom:28px; left:0; color:#F5A623; animation:avTruckDepart 3.2s linear infinite; }
.av-s05-truck svg { animation:avDriveBob .28s ease-in-out infinite; }
.av-s05-wh { position:absolute; left:8px; bottom:32px; }
@keyframes avTruckDepart { from{transform:translateX(88px)} to{transform:translateX(300px)} }
@keyframes avSpeedLine { from{transform:translateX(240px)} to{transform:translateX(-30px)} }
@keyframes avDriveBob { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-1.5px)} }

/* Scene S06 – orange bg, store */
.av-s06 { background:var(--pr); }
.av-s06-inner { position:relative; width:180px; height:130px; }
.av-s06-store { position:absolute; left:50%; top:50%; color:#1a1a1a; animation:avStoreFloat 3s ease-in-out infinite; }
@keyframes avStoreFloat { 0%,100%{transform:translate(-50%,-50%) translateY(0)} 50%{transform:translate(-50%,-50%) translateY(-2px)} }
.av-s06-bdgs { position:absolute; bottom:2px; left:50%; transform:translateX(-50%); display:flex; gap:6px; }
.av-s06-bdg { padding:3px 8px; border-radius:4px; color:white; font-size:10px; font-weight:700; letter-spacing:.5px; }
.av-s06-bdg:nth-child(1){background:#8800c0;animation:avBdgPulse 1.6s ease-in-out infinite;}
.av-s06-bdg:nth-child(2){background:#005bff;animation:avBdgPulse 1.6s .4s ease-in-out infinite;}
.av-s06-bdg:nth-child(3){background:#FF4C00;animation:avBdgPulse 1.6s .8s ease-in-out infinite;}
.av-s06-spark { position:absolute; width:14px; height:14px; }
.av-s06-spark:nth-child(1){left:18px;top:18px;animation:avSparkle 2.2s ease-in-out infinite;}
.av-s06-spark:nth-child(2){left:150px;top:14px;animation:avSparkle 2.2s .4s ease-in-out infinite;}
.av-s06-spark:nth-child(3){left:10px;top:80px;animation:avSparkle 2.2s .8s ease-in-out infinite;}
.av-s06-spark:nth-child(4){left:158px;top:78px;animation:avSparkle 2.2s 1.2s ease-in-out infinite;}
.av-s06-spark:nth-child(5){left:88px;top:6px;animation:avSparkle 2.2s .6s ease-in-out infinite;}
@keyframes avBdgPulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.06)} }
@keyframes avSparkle { 0%,100%{transform:scale(0) rotate(0deg);opacity:0} 50%{transform:scale(1) rotate(90deg);opacity:1} }

/* ══════════════ WHY US ══════════════ */
.av-why { background: white; padding-top: 0.75rem; padding-bottom: 3.5rem; }
.av-why-head { display:flex; flex-direction:column; align-items:center; text-align:center; margin-bottom:1.5rem; }
.av-why-grid { display:grid; gap:1.25rem; }
.av-adv {
  background:white; border:1px solid var(--bd); border-radius:1rem; padding:1.75rem;
  box-shadow:var(--sh1); position:relative; overflow:hidden;
  transition:transform .15s ease; cursor:default;
}
.av-adv:hover { transform:translateY(-6px); }
.av-adv-ico {
  width:3.5rem; height:3.5rem; border-radius:1rem;
  background:rgba(245,166,35,.12); display:flex; align-items:center; justify-content:center; margin-bottom:1.25rem;
}
.av-adv-ico svg { width:1.75rem; height:1.75rem; color:var(--pr); }
.av-adv-title { font-family:'Anton',sans-serif; font-size:1.125rem; color:var(--dk); margin-bottom:.375rem; min-height:2.4rem; display:flex; align-items:flex-start; }
.av-adv-desc { font-size:.875rem; color:#6b7280; line-height:1.6; }
.av-adv-bar { position:absolute; bottom:0; left:0; height:2px; width:0; background:var(--pr); transition:width .3s; }
.av-adv:hover .av-adv-bar { width:100%; }

/* ══════════════ CALCULATOR ══════════════ */
.av-calc { background:white; padding-block:1.5rem; }
.av-calc-head { text-align:center; margin-bottom:1.5rem; }
.av-calc-sub { color:#6b7280; font-size:1rem; max-width:36rem; margin:.75rem auto 0; }
.av-calc-card {
  max-width:64rem; margin-inline:auto; border-radius:1.5rem;
  overflow:hidden; box-shadow:var(--sh2); display:grid;
}
.av-calc-left { background:white; padding:1.25rem; }
.av-calc-sec + .av-calc-sec { margin-top:1.25rem; }
.av-calc-lbl {
  font-family:'Anton',sans-serif; font-size:.875rem; text-transform:uppercase;
  letter-spacing:.18em; color:var(--gr); display:block; margin-bottom:.625rem;
}
.av-type-btns { display:flex; flex-wrap:wrap; gap:.375rem; }
.av-tbtn {
  padding:.375rem .75rem; font-size:.875rem; font-weight:500; border-radius:9999px;
  border:2px solid var(--bd); background:white; color:#4b5563; transition:all .15s; cursor:pointer;
}
.av-tbtn.active { border-color:var(--gr); background:var(--gr); color:white; }
.av-tbtn.cust-active { border-color:var(--pr); background:#FFF8E7; color:#B45309; }
.av-custom-box { margin-top:.75rem; display:none; }
.av-custom-box.show { display:block; }
.av-custom-box input {
  width:100%; border:2px solid var(--bd); border-radius:.75rem;
  padding:.625rem 1rem; font-size:.875rem; color:#374151; outline:none; transition:border-color .2s;
}
.av-custom-box input:focus { border-color:var(--pr); }
.av-units-row { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:.625rem; }
.av-units-inp {
  font-family:'Anton',sans-serif; font-size:1.5rem; text-align:right; width:6rem;
  border:0; border-bottom:2px solid var(--pr); background:transparent; color:var(--pr); outline:none;
}
.av-slider {
  -webkit-appearance:none; width:100%; height:4px; border-radius:2px; background:#e5e7eb; outline:none;
}
.av-slider::-webkit-slider-thumb {
  -webkit-appearance:none; width:18px; height:18px; border-radius:50%;
  background:var(--gr); cursor:pointer; box-shadow:0 0 0 3px rgba(27,94,32,.15);
}
.av-slider::-moz-range-thumb {
  width:18px; height:18px; border-radius:50%; background:var(--gr);
  cursor:pointer; border:none; box-shadow:0 0 0 3px rgba(27,94,32,.15);
}
.av-slider-hlp { display:flex; justify-content:space-between; font-size:.75rem; color:#9ca3af; margin-top:.375rem; }
.av-radio-row, .av-check-row { display:flex; align-items:center; gap:.75rem; cursor:pointer; padding:.25rem 0; }
.av-rdot, .av-ckdot {
  flex-shrink:0; width:1.25rem; height:1.25rem; border-radius:50%;
  border:2px solid #d1d5db; display:flex; align-items:center; justify-content:center; transition:border-color .15s;
}
.av-ckdot { border-radius:4px; }
.av-rdot.on { border-color:var(--gr); }
.av-ckdot.on { border-color:var(--gr); background:var(--gr); }
.av-rdot-inner { width:.625rem; height:.625rem; border-radius:50%; background:var(--gr); display:none; }
.av-rdot.on .av-rdot-inner { display:block; }
.av-ckmark { display:none; }
.av-ckdot.on .av-ckmark { display:block; }
.av-opt-lbl { font-size:.875rem; color:#374151; user-select:none; }
.av-calc-right {
  background:white; border:2px solid var(--gr); border-radius:1rem; margin:.75rem;
  padding:1.25rem; display:flex; flex-direction:column; justify-content:center;
}
.av-res-lbl { font-size:.7rem; text-transform:uppercase; letter-spacing:.2em; font-weight:600; color:rgba(27,94,32,.7); margin-bottom:.75rem; }
.av-res-total { font-family:'Anton',sans-serif; font-size:clamp(2.4rem,5vw,3.8rem); color:var(--gr); line-height:1; margin-bottom:.25rem; transition:all .2s; }
.av-res-unit { font-size:.875rem; color:rgba(26,26,46,.5); margin-bottom:1.75rem; }
.av-breakdown { border-top:1px solid rgba(27,94,32,.15); padding-top:1.25rem; margin-bottom:1.75rem; }
.av-brow { display:flex; justify-content:space-between; gap:.5rem; font-size:.875rem; margin-bottom:.625rem; }
.av-brow-item { color:rgba(26,26,46,.6); }
.av-brow-val { font-weight:600; color:var(--dk); white-space:nowrap; }
.av-btn-green {
  display:block; width:100%; padding:.75rem; background:var(--gr); color:white;
  font-weight:700; font-size:.875rem; text-transform:uppercase; letter-spacing:.1em;
  border:2px solid var(--gr); border-radius:.75rem; text-align:center; cursor:pointer; transition:opacity .2s;
}
.av-btn-green:hover { opacity:.9; }
.av-calc-disc { font-size:.75rem; text-align:center; color:rgba(26,26,46,.4); margin-top:1rem; line-height:1.5; }

/* ══════════════ PRICING ══════════════ */
.av-pricing { background:#f9fafb; padding-top:3.5rem; padding-bottom:3.5rem; }
.av-pricing-head { text-align:center; margin-bottom:1.5rem; padding-top:2rem; }
.av-pricing-title { color:var(--pr) !important; }
.av-pricing-sub { color:#4b5563; margin-top:1rem; }
.av-price-groups { display:flex; flex-direction:column; gap:1.25rem; margin-bottom:4rem; }
.av-pg {
  background:white; border:1px solid var(--bd); border-radius:1rem;
  overflow:hidden; box-shadow:var(--sh1);
}
.av-pg-head { display:flex; justify-content:center; padding:1.25rem 2rem 1rem; border-top:3px solid var(--gr); }
.av-pg-title { font-family:'Inter',sans-serif; text-transform:uppercase; letter-spacing:.18em; font-size:.95rem; font-weight:800; color:var(--gr); }
.av-pg-div { height:1px; background:#f3f4f6; margin:0 1.5rem; }
.av-pg-rows { display:grid; }
.av-prow {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; gap:.375rem; padding:1.25rem 2rem; transition:background .2s;
}
.av-prow:hover { background:#f9fafb; }
.av-prow + .av-prow { border-top:1px solid #f3f4f6; }
/* Split layout: 1 top full-width + 2 below side-by-side */
.av-pg-rows--split { display:block; }
.av-prow--top {
  border-bottom:1px solid #f3f4f6;
  padding:1.5rem 2rem 1.25rem;
}
.av-prow--top .av-prow-val { font-size:1rem; }
.av-prow--top:hover { background:#f9fafb; }
.av-pg-rows-sub { display:grid; grid-template-columns:1fr 1fr; }
.av-pg-rows-sub .av-prow + .av-prow { border-top:none; border-left:1px solid #f3f4f6; }
.av-prow-lbl { color:#4b5563; font-size:.875rem; line-height:1.4; }
.av-prow-val { font-size:.875rem; font-weight:700; }
.av-prow-val.free { color:#16a34a; }
.av-prow-val.paid { color:var(--pr); }
.av-pkgs-head { text-align:center; margin-bottom:1.5rem; }
.av-pkgs { display:grid; gap:1.5rem; max-width:48rem; margin-inline:auto; }
.av-pkg {
  background:white; border:1px solid var(--bd); border-radius:1rem; overflow:hidden;
  display:flex; flex-direction:column; box-shadow:var(--sh1); transition:transform .15s ease; cursor:default;
}
.av-pkg:hover { transform:translateY(-6px); }
.av-pkg.feat { border:2px solid var(--gr); box-shadow:0 8px 40px rgba(27,94,32,.14); }
.av-pkg-top { padding:2rem 2rem 1.5rem; }
.av-pkg-badge {
  display:inline-block; font-size:.7rem; font-weight:700; padding:.375rem 1rem;
  border-radius:9999px; text-transform:uppercase; letter-spacing:.1em; margin-bottom:1.25rem;
}
.av-pkg-badge.on { background:var(--gr); color:white; }
.av-pkg-badge.off { opacity:0; }
.av-pkg-name { font-family:'Anton',sans-serif; font-size:1.875rem; color:var(--gr); line-height:1.15; }
.av-pkg-div { height:1px; background:#f3f4f6; margin:0 2rem; }
.av-pkg-items { flex:1; padding:1.5rem 2rem; display:flex; flex-direction:column; gap:.75rem; }
.av-pkg-item { display:flex; align-items:flex-start; gap:.75rem; }
.av-pkg-item svg { width:1rem; height:1rem; margin-top:.125rem; flex-shrink:0; color:var(--gr); }
.av-pkg-item span { font-size:.875rem; color:#4b5563; line-height:1.4; }
.av-pkg-bot { padding:1rem 2rem 2rem; }
.av-pkg-price-div { height:1px; background:#f3f4f6; margin-bottom:1.25rem; }
.av-pkg-price { font-family:'Anton',sans-serif; font-size:2.25rem; color:var(--pr); line-height:1; }
.av-pkg-unit { font-size:.75rem; color:#9ca3af; margin-top:.25rem; margin-bottom:1.25rem; }
.av-pkg-note { font-size:.75rem; color:#d1d5db; text-align:center; margin-top:.75rem; }
.av-pricing-disc { text-align:center; color:#9ca3af; font-size:.75rem; margin-top:2rem; }

/* ══════════════ REVIEWS ══════════════ */
.av-reviews { background:#f9fafb; padding-top:3.5rem; padding-bottom:0; }
.av-reviews-head { text-align:center; margin-bottom:2.5rem; }
.av-reviews-scroll { overflow-x:auto; scrollbar-width:none; -ms-overflow-style:none; }
.av-reviews-scroll::-webkit-scrollbar { display:none; }
.av-reviews-list { display:flex; gap:1rem; padding:0 1rem 1rem; }
.av-rev {
  flex:none; width:82vw; background:white; border:1px solid #f3f4f6;
  border-radius:1rem; padding:2rem; position:relative;
  display:flex; flex-direction:column;
}
.av-rev::before { content:''; position:absolute; top:0; left:0; width:4px; height:100%; background:var(--pr); border-radius:4px 0 0 4px; }
.av-stars { display:flex; gap:.25rem; margin-bottom:1rem; }
.av-star { width:1rem; height:1rem; color:var(--pr); fill:var(--pr); }
.av-rev-text { color:#4b5563; font-size:.875rem; line-height:1.7; font-style:italic; margin-bottom:1.5rem; flex:1; }
.av-rev-name { font-weight:700; color:var(--dk); margin-top:auto; }
.av-rev-co { font-size:.875rem; color:#9ca3af; }

/* ══════════════ CTA / CONTACTS ══════════════ */
.av-cta { background:#1a1a1a; padding-block:3.5rem; position:relative; overflow:hidden; }
.av-cta::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:var(--pr); }
.av-cta-d1 { position:absolute; top:-5rem; right:-5rem; width:16rem; height:16rem; border:1px solid rgba(245,166,35,.1); transform:rotate(45deg); }
.av-cta-d2 { position:absolute; bottom:-5rem; left:-5rem; width:16rem; height:16rem; border:1px solid rgba(245,166,35,.1); transform:rotate(45deg); }
.av-cta-inner { max-width:48rem; margin-inline:auto; text-align:center; }
.av-cta-title { font-family:'Anton',sans-serif; font-weight:900; font-size:clamp(1.75rem,5vw,3.2rem); color:var(--pr); line-height:1.15; margin-bottom:1rem; }
.av-cta-sub { color:rgba(255,255,255,.6); font-size:1.125rem; margin-bottom:2.5rem; }
.av-cta-form { display:flex; flex-direction:column; gap:.75rem; }
.av-cta-inp {
  height:3rem; padding:0 1rem; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2);
  color:white; font-size:.875rem; outline:none; transition:border-color .2s;
}
.av-cta-inp::placeholder { color:rgba(255,255,255,.4); }
.av-cta-inp:focus { border-color:var(--pr); }
.av-cta-btn {
  height:3rem; padding:0 2rem; background:var(--pr); color:var(--dk);
  font-weight:700; font-size:.875rem; text-transform:uppercase; letter-spacing:.1em;
  white-space:nowrap; cursor:pointer; transition:background .2s; flex-shrink:0;
}
.av-cta-btn:hover { background:#e09500; }
.av-cta-gdpr { color:rgba(255,255,255,.3); font-size:.75rem; margin-top:1rem; }

/* ══════════════ MODALS ══════════════ */
.av-modal { display:none; position:fixed; inset:0; z-index:100; background:rgba(0,0,0,.5); backdrop-filter:blur(4px); align-items:center; justify-content:center; padding:1rem; }
.av-modal.open { display:flex; }
.av-modal-box {
  position:relative; width:100%; max-width:42rem; max-height:90vh;
  overflow-y:auto; border-radius:1rem; background:white;
  box-shadow:0 20px 60px rgba(0,0,0,.3); scrollbar-gutter:stable;
  transform:scale(.95) translateY(20px); opacity:0; transition:transform .25s,opacity .25s;
}
.av-modal.open .av-modal-box { transform:scale(1) translateY(0); opacity:1; }
.av-mclose {
  position:absolute; top:1rem; right:1rem; z-index:10;
  width:2rem; height:2rem; border-radius:50%; background:none;
  color:#9ca3af; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .2s;
}
.av-mclose:hover { color:#374151; background:#f3f4f6; }
.av-mbody { padding:2rem; }
.av-mheader { display:flex; align-items:center; gap:.75rem; margin-bottom:1.5rem; }
.av-micon { display:inline-flex; align-items:center; justify-content:center; width:3rem; height:3rem; border-radius:.75rem; color:white; font-family:'Anton',sans-serif; font-size:1.125rem; font-weight:900; letter-spacing:.08em; }
.av-mtitle { font-family:'Anton',sans-serif; font-size:1.5rem; font-weight:900; color:var(--dk); letter-spacing:.05em; }
.av-msub { font-size:.875rem; color:#6b7280; }
.av-mdesc { color:#4b5563; font-size:.875rem; line-height:1.7; margin-bottom:2rem; }
.av-mstitle { font-family:'Anton',sans-serif; font-size:1rem; font-weight:900; color:var(--dk); margin-bottom:1rem; }
.av-pros-cons { display:grid; gap:1.5rem; margin-bottom:2rem; }
.av-pros { background:rgba(27,94,32,.06); border-radius:.75rem; padding:1rem; }
.av-cons { background:#fef2f2; border-radius:.75rem; padding:1rem; }
.av-pros-lbl { font-size:.7rem; font-weight:600; text-transform:uppercase; letter-spacing:.1em; color:var(--gr); margin-bottom:.75rem; }
.av-cons-lbl { font-size:.7rem; font-weight:600; text-transform:uppercase; letter-spacing:.1em; color:#f87171; margin-bottom:.75rem; }
.av-pros li, .av-cons li { display:flex; align-items:flex-start; gap:.625rem; font-size:.875rem; color:#374151; line-height:1.4; margin-bottom:.5rem; }
.av-pros li svg { color:var(--gr); flex-shrink:0; margin-top:2px; }
.av-cons li svg { color:#f87171; flex-shrink:0; margin-top:2px; }
.av-svc-rows { display:flex; flex-direction:column; gap:.5rem; }
.av-svc-row { display:flex; align-items:center; justify-content:space-between; background:#f9fafb; border-radius:.75rem; padding:.75rem 1rem; }
.av-svc-row-lft {}
.av-svc-row-name { font-size:.875rem; font-weight:600; color:var(--dk); }
.av-svc-row-desc { font-size:.75rem; color:#6b7280; margin-top:.125rem; }
.av-svc-row-price { flex-shrink:0; margin-left:1rem; font-size:.875rem; font-weight:700; color:var(--pr); }
.av-fbs-blk { background:#f9fafb; border-radius:.75rem; padding:1rem; margin-bottom:.75rem; }
.av-fbs-blk-h { display:flex; align-items:center; gap:.5rem; margin-bottom:.75rem; }
.av-fbs-blk-h svg { width:1rem; height:1rem; }
.av-fbs-blk-t { font-size:.875rem; font-weight:600; color:var(--dk); }
.av-fbs-blk-p { font-size:.875rem; color:#4b5563; line-height:1.5; }
.av-fbs-2col { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; }

/* ══════════════ RESPONSIVE ══════════════ */
@media (min-width:640px) {
  .av-container { padding-inline:1.5rem; }
  .av-header-inner { padding-inline:1.5rem; }
  .av-logo img { width:9rem; }
  .av-header-right { display:flex; }
  .av-hero-eyebrow { text-align:left; font-size:.9375rem; }
  .av-hero-title { text-align:left; line-height:1.08; margin-bottom:2rem; }
  .av-hero-features { grid-template-columns:repeat(3,1fr); gap:1.75rem 1.5rem; margin-top:3rem; }
  .av-hero-feat svg { width:2rem; height:2rem; }
  .av-hero-feat p { font-size:.875rem; }
  .av-mp-item { width:7rem; }
  .av-mp-circle { width:6rem; height:6rem; }
  .av-mp-list { gap:3rem; }
  .av-infobar-mobile { display:none; }
  .av-infobar-list { display:flex; }
  .av-infobar { padding:.75rem 0; }
  .av-about { padding-block:6rem; }
  .av-about-actions { flex-direction:row; justify-content:center; }
  .av-numbers-head { padding-top:8rem; margin-bottom:4rem; }
  .av-numbers { padding-bottom:6rem; }
  .av-stats-grid { grid-template-columns:repeat(2,1fr); }
  .av-stat-wide { flex-direction:row; align-items:center; padding:2rem; }
  .av-stat-wide-right { padding-left:2rem; border-left:2px solid rgba(26,26,46,.1); }
  .av-stat-wide-desc { font-size:1.125rem; }
  .av-services { padding-block:6rem; }
  .av-services-grid { grid-template-columns:1fr 1fr; gap:3.5rem 2rem; }
  .av-services-head { margin-bottom:4rem; }
  .av-fbo { padding-block:6rem; }
  .av-fbo-cards { grid-template-columns:1fr 1fr; }
  .av-fbo-head { margin-bottom:3.5rem; }
  .av-stages { padding-block:5rem; }
  .av-stages-head { margin-bottom:3.5rem; }
  .av-stage-card { flex-direction:row; }
  .av-scene { width:16rem; flex-shrink:0; }
  .av-why { padding-block:6rem; }
  .av-why-head { margin-bottom:4rem; }
  .av-why-grid { grid-template-columns:1fr 1fr; }
  .av-calc { padding-block:5rem; }
  .av-calc-head { margin-bottom:3.5rem; }
  .av-calc-left { padding:1.5rem 2rem; }
  .av-calc-right { padding:1.5rem 2rem; }
  .av-cta-form { flex-direction:row; }
  .av-pros-cons { grid-template-columns:1fr 1fr; }
  .av-reviews-list { flex-direction:column; }
  .av-rev { width:auto; }
  .av-pricing { padding-block:5rem; }
  .av-pricing-head { margin-bottom:3.5rem; }
  .av-reviews { padding-bottom:0; }
  .av-cta { padding-block:5rem; }
  .av-mp-name { font-size:.875rem; }
  .av-fbo-sub { font-size:1.125rem; }
}
@media (min-width:768px) {
  .av-reviews-list { display:grid; grid-template-columns:repeat(3,1fr); }
  .av-pg-rows { grid-template-columns:1fr 1fr; }
  .av-prow + .av-prow { border-top:none; }
  .av-prow:nth-child(n+3) { border-top:1px solid #f3f4f6; }
  .av-prow:nth-child(even) { border-left:1px solid #f3f4f6; }
  .av-pkgs { grid-template-columns:1fr 1fr; }
  .av-why-grid { grid-template-columns:repeat(2,1fr); }
}
@media (min-width:1024px) {
  .av-container { padding-inline:2rem; }
  .av-header-inner { padding-inline:2rem; }
  .av-logo img { width:10rem; }
  .av-nav { display:flex; }
  .av-burger { display:none; }
  .av-hero-inner { grid-template-columns:1fr 560px; gap:2.5rem; padding-top:7rem; padding-bottom:1.5rem; }
  .av-hero-img-wrap { display:flex; }
  .av-stats-grid { grid-template-columns:repeat(4,1fr); }
  .av-services-grid { grid-template-columns:repeat(3,1fr); }
  .av-why-grid { grid-template-columns:repeat(4,1fr); }
  .av-calc-card { grid-template-columns:1fr 320px; }
  .av-calc-left { padding:2rem; }
  .av-calc-right { padding:2rem; }
  .av-reviews-list { padding-inline:3.5rem; max-width:64rem; margin-inline:auto; }
}
@media (min-width:1280px) {
  .av-hero-inner { grid-template-columns:1fr 640px; }
}
/* Чёрный цвет шрифта в шапке */
.av-wrap .av-header .av-nav a,
.av-wrap .av-header .av-header-phone {
  color: #000 !important;
}

/* Чёрный цвет при наведении */
.av-wrap .av-header .av-nav a:hover,
.av-wrap .av-header .av-header-phone:hover {
  color: #000 !important;
}

/* Белый текст кнопки в шапке */
.av-wrap .av-header .av-btn-cta,
.av-wrap .av-header .av-btn-cta:hover {
  color: #fff !important;
}

/* Одинаковый интервал между бейджем и заголовком в блоках */
.av-wrap .av-numbers-head .av-badge,
.av-wrap .av-fbo-head .av-badge {
  margin-bottom: 1rem !important;
}

.av-wrap .av-numbers-title {
  margin-top: 0 !important;
}

.av-wrap .av-fbo-head .av-section-title {
  margin-top: 0 !important;
}

.av-wrap .av-fbo-head .av-badge {
  margin-bottom: 1rem !important;
}

.av-wrap .av-fbo-head h2 {
  margin: 0 !important;
  padding: 0 !important;
}

/* FBO/FBS — точный интервал между бейджем и заголовком */
.av-wrap .av-fbo-head {
  gap: 0 !important;
}

.av-wrap .av-fbo-head > .av-badge {
  margin-top: 0 !important;
  margin-bottom: 2rem !important;
}

.av-wrap .av-fbo-head > h2.av-section-title {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.08 !important;
}

/* Точные отступы при клике по пунктам меню в шапке */
#about {
  scroll-margin-top: 250px;
}

#services {
  scroll-margin-top: 110px;
}

#stages {
  scroll-margin-top: 120px;
}

#why {
  scroll-margin-top: 100px;
}

#calculator {
  scroll-margin-top: 120px;
}

#pricing {
  scroll-margin-top: 120px;
}

/* Поднять содержимое блока "Прайс" чуть выше */
.av-wrap #pricing.av-pricing {
  padding-top: 5rem !important;
}

.av-wrap #pricing .av-pricing-head {
  padding-top: 0 !important;
}

/* Опустить всё содержимое блока с пакетами */
.av-wrap .av-pkgs-head {
  padding-top: 4rem !important;
}

/* Отступ после заголовка в блоке Отзывы */
.av-wrap .av-reviews .av-section-title {
  margin-bottom: 4rem !important;
}

/* Отступ после карточек отзывов */
.av-wrap .av-reviews-list {
  margin-bottom: 3rem !important;
}

/* Опустить бейдж "Будьте в курсе" ниже после карточек отзывов */
.av-wrap .av-reviews-list + div {
  margin-top: 1rem !important;
}

/* FD401 — уменьшить расстояние между заголовком и карточками */
#rec2406361011 .t-section__topwrapper {
  margin-bottom: 20px !important;
  padding-bottom: 0 !important;
}

/* FD401 — аккуратный интервал между заголовком и карточками */
#rec2406361011 .t-section__title {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

#rec2406361011 .t-feed__container,
#rec2406361011 .t-feed__post-feed {
  margin-top: 24px !important;
  padding-top: 0 !important;
}

/* Опустить "Будьте в курсе" ниже */
.av-wrap .av-reviews > .av-container > div[style*="margin-top"] {
  margin-top: 25rem !important;
}

/* Скролл выше для шаблонного блока Новости */
#rec2406361011 {
  scroll-margin-top: 200px !important;
}

/* Мобильный бургер — чёрный цвет */
.av-wrap .av-burger {
  color: #000 !important;
}

.av-wrap .av-burger svg {
  stroke: #000 !important;
}

/* Мобильное меню — чёрный цвет всех пунктов */
@media (max-width: 1023px) {
  .av-wrap .av-mobile-menu a {
    color: #000 !important;
  }

  .av-wrap .av-mobile-menu a:hover {
    color: #000 !important;
  }
}

/* Мобилка — приподнять всё содержимое блока "Мы в цифрах" */
@media (max-width: 767px) {
  .av-wrap .av-numbers {
    padding-top: 0 !important;
  }

  .av-wrap .av-numbers-head {
    padding-top: 0 !important;
    margin-top: -0,2rem !important;
  }
}

/* Мобилка — отступ сверху у бейджика "Преимущества" */
@media (max-width: 767px) {
  .av-wrap .av-why .av-badge {
    margin-top: 2.5rem !important;
  }
}

/* Мобилка — чуть поднять всё содержимое блока "Прайс" */
@media (max-width: 767px) {
  .av-wrap #pricing.av-pricing {
    padding-top: 3.3rem !important;
  }

  .av-wrap #pricing .av-pricing-head {
    padding-top: 0 !important;
  }
}

/* Мобилка — чуть поднять блок "Пакетные предложения" */
@media (max-width: 767px) {
  .av-wrap #pricing .av-pkgs-head {
    margin-top: -2.5rem !important;
  }
}

/* Кнопки "Выбрать пакет" — белый текст */
.av-wrap a.av-btn-green,
.av-wrap a.av-btn-green:visited,
.av-wrap a.av-btn-green:hover,
.av-wrap a.av-btn-green:active {
  color: #fff !important;
  text-decoration: none !important;
}

/* Мобилка — приподнять всё содержимое блока "Отзывы" */
@media (max-width: 767px) {
  .av-wrap .av-reviews {
    padding-top: 2rem !important;
  }
}

/* Мобилка — уменьшить отступ перед карточками отзывов */
@media (max-width: 767px) {
  .av-wrap .av-reviews .av-section-title {
    margin-bottom: 0rem !important;
  }

  .av-wrap .av-reviews-list {
    margin-top: -1 !important;
  }
}
/* Мобилка — безопасно уменьшить расстояние между заголовком и карточками отзывов */
@media (max-width: 767px) {
  .av-wrap .av-reviews .av-section-title {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .av-wrap .av-reviews-head {
    margin-bottom: 1.5rem !important;
    padding-bottom: 0 !important;
  }

  .av-wrap .av-reviews-list {
    margin-top: 0 !important;
    padding-top: 0 !important;
    transform: none !important;
  }
}

/* Мобилка — уменьшить отступ между заголовком новостей и карточками */
@media (max-width: 767px) {
  #rec2406361011 .t-section__title {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  #rec2406361011 .t-feed__container,
  #rec2406361011 .t-feed__post-feed {
    margin-top: 4px !important;
    padding-top: 0 !important;
  }
}
/* Бейдж "Будьте в курсе" ближе к заголовку новостей */
.av-wrap .av-news-badge-wrap {
  text-align: center !important;
  margin-top: 3rem !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Убрать лишний верхний воздух у блока новостей Tilda */
#rec2406361011 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

#rec2406361011 .t-section__topwrapper {
  margin-top: 0 !important;
  padding-top: 0 !important;
  margin-bottom: 1rem !important;
  padding-bottom: 0 !important;
}

@media (min-width: 1024px) {
  .av-wrap .av-news-badge-wrap {
    margin-top: 4.5rem !important;
  }
}

/* Десктоп — приподнять скролл к блоку новостей */
@media (min-width: 1024px) {
  #rec2406361011 {
    scroll-margin-top: 250px !important;
  }
}

/* МОБИЛКА — инфобар в одну горизонтальную строку со скроллом */
@media (max-width: 767px) {
  .av-wrap .av-infobar-mobile {
    display: flex !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    gap: 2rem !important;
    padding: 0 1rem 0.75rem !important;

    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin !important;
  }

  .av-wrap .av-infobar-mobile span {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;

    white-space: nowrap !important;
    align-items: center !important;
    gap: 0 !important;

    font-size: 0.9rem !important;
    line-height: 1.3 !important;
  }

  .av-wrap .av-infobar-mobile span::before {
    display: none !important;
    content: none !important;
  }

  .av-wrap .av-infobar-mobile::-webkit-scrollbar {
    display: block !important;
    height: 2px !important;
  }

  .av-wrap .av-infobar-mobile::-webkit-scrollbar-track {
    background: rgba(255,255,255,.18) !important;
  }

  .av-wrap .av-infobar-mobile::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,.55) !important;
    border-radius: 999px !important;
  }
}

/* Мобилка — сделать зелёную линию инфобара тоньше */
@media (max-width: 767px) {
  .av-wrap .av-infobar {
    padding: 0.45rem 0 !important;
  }

  .av-wrap .av-infobar-mobile {
    padding: 0 1rem 0.25rem !important;
  }

  .av-wrap .av-infobar-mobile span {
    font-size: 0.85rem !important;
    line-height: 1.2 !important;
  }
}

/* Мобилка — чуть опустить блок "Работаем с маркетплейсами" */
@media (max-width: 767px) {
  .av-wrap .av-mp {
    padding-top: 2.5rem !important;
  }
}

/* Кнопка "Получить консультацию" — белый текст */
.av-wrap a.av-btn-outline,
.av-wrap a.av-btn-outline:visited {
  color: #1B5E20 !important;
  text-decoration: none !important;
}

.av-wrap a.av-btn-outline:hover,
.av-wrap a.av-btn-outline:active {
  color: #fff !important;
  text-decoration: none !important;
}

/* Мобилка — поднять скролл к блоку "О нас" выше */
@media (max-width: 767px) {
  #about {
    scroll-margin-top: 70px !important;
  }
}

/* Мобилка — чуть поднять скролл к блоку "Почему мы" */
@media (max-width: 767px) {
  #why {
    scroll-margin-top: 80px !important;
  }
}

/* Мобилка — скролл к блоку "Прайс" выше */
@media (max-width: 767px) {
  html {
    scroll-padding-top: 60px !important;
  }

  #pricing,
  .av-wrap #pricing,
  section#pricing.av-pricing {
    scroll-margin-top: 60px !important;
  }
}

/* Мобилка — контакты ниже при скролле, чтобы блок было видно */
@media (max-width: 767px) {
  #rec2406170591 {
    scroll-margin-top: 40px !important;
  }
}

/* Мобилка — чуть выше скролл к блоку "Услуги" */
@media (max-width: 767px) {
  #services {
    scroll-margin-top: 70px !important;
  }
}

/* Мобилка — чуть выше скролл к блоку "Этапы работы" */
@media (max-width: 767px) {
  #stages {
    scroll-margin-top: 70px !important;
  }
}

/* Мобилка — чуть выше скролл к блоку "Калькулятор" */
@media (max-width: 767px) {
  #calculator {
    scroll-margin-top: 70px !important;
  }
}

@media (max-width: 767px) {
  #why {
    scroll-margin-top: 40px !important;
  }
}

/* Мобилка — чуть выше скролл к блоку "Новости" */
@media (max-width: 767px) {
  #rec2406361011 {
    scroll-margin-top: 150px !important;
  }
}

/* Мобилка — точный скролл к блоку "Прайс" */
@media (max-width: 767px) {
  #pricing-anchor {
    display: block;
    position: relative;
    top: -35px;
    height: 0;
    visibility: hidden;
  }
}

/* Десктоп — точный скролл к блоку "Прайс" */
@media (min-width: 1024px) {
  #pricing-anchor {
    display: block;
    position: relative;
    top: -120px;
    height: 0;
    visibility: hidden;
  }
}

/* Только мобилка — бесшовная бегущая строка */
@media (max-width: 767px) {
  .av-wrap .av-infobar {
    overflow: hidden !important;
    padding: 0.55rem 0 !important;
  }

  .av-wrap .av-infobar-mobile {
    display: flex !important;
    grid-template-columns: none !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important;
    width: 100% !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  .av-wrap .av-marquee-group {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 2rem !important;
    padding-right: 2rem !important;
    white-space: nowrap !important;
    animation: avMobileMarqueeLoop 18s linear infinite;
  }

  .av-wrap .av-marquee-group span {
    white-space: nowrap !important;
    color: rgba(255,255,255,.95) !important;
    font-size: 0.9rem !important;
    line-height: 1.2 !important;
  }

  .av-wrap .av-marquee-group span::before {
    display: none !important;
    content: none !important;
  }

  @keyframes avMobileMarqueeLoop {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-100%);
    }
  }
}

/* ══════════════ WORK GALLERY / МЫ В РАБОТЕ ══════════════ */

.av-work-gallery {
  background: #fff;
  padding-block: 3.5rem;
}

.av-work-gallery-head {
  text-align: center;
  margin-bottom: 2rem;
}

.av-work-gallery-sub {
  color: #6b7280;
  font-size: 1rem;
  max-width: 42rem;
  margin: 1rem auto 0;
  line-height: 1.6;
}

/* бегущая строка */
.av-wrap .av-work-slider {
  width: 100% !important;
  overflow: hidden !important;
}

.av-wrap .av-work-track {
  display: flex !important;
  align-items: stretch !important;
  gap: 1.5rem !important;
  width: max-content !important;
  padding: 0.5rem 0 1rem !important;
  overflow: visible !important;
  animation: avWorkMarquee 32s linear infinite;
  will-change: transform;
}

/* ширина как раньше: примерно 3 карточки на десктопе */
.av-wrap .av-work-slide {
  flex: 0 0 28rem !important;
  width: 28rem !important;
  min-width: 28rem !important;
  border-radius: 1.25rem !important;
  overflow: hidden !important;
  background: #f3f4f6 !important;
  box-shadow: 0 4px 18px rgba(0,0,0,.08) !important;
}

/* делаем длиннее только по высоте */
.av-wrap .av-work-slide img {
  display: block !important;
  width: 100% !important;
  height: 36rem !important;
  object-fit: cover !important;
}

/* убрать скроллбар */
.av-wrap .av-work-track::-webkit-scrollbar {
  display: none !important;
}

.av-wrap .av-work-track {
  scrollbar-width: none !important;
}

/* бесконечная прокрутка: важно, чтобы фото были продублированы в HTML */
@keyframes avWorkMarquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

/* пауза при наведении на десктопе */
.av-wrap .av-work-slider:hover .av-work-track {
  animation-play-state: paused;
}

/* Планшет */
@media (max-width: 1023px) {
  .av-work-gallery {
    padding-block: 3rem;
  }

  .av-wrap .av-work-slide {
    flex-basis: 22rem !important;
    width: 22rem !important;
    min-width: 22rem !important;
  }

  .av-wrap .av-work-slide img {
    height: 24rem !important;
  }
}

/* Мобилка */
@media (max-width: 767px) {
  .av-work-gallery {
    padding-block: 2.5rem;
  }

  .av-work-gallery-head {
    margin-bottom: 1.5rem;
  }

  .av-work-gallery-sub {
    font-size: .9rem;
    padding-inline: 1rem;
  }

  .av-wrap .av-work-track {
    gap: 1rem !important;
    animation-duration: 24s !important;
  }

  .av-wrap .av-work-slide {
    flex-basis: 18rem !important;
    width: 18rem !important;
    min-width: 18rem !important;
    border-radius: 1rem !important;
  }

  .av-wrap .av-work-slide img {
    height: 20rem !important;
  }
}