/*
  Атмосфера секцій: градієнти + SVG-коридори, без фото.
  Reusable .atmosphere--* — ті самі значення, що й #id на home (comma-group).
  Фон дублюється на секцію і на .section__parallax-layer —
  паралакс робить секцію прозорою, а без JS лишається фон на самій секції.
*/

/* ---------- Reusable light atmospheres ---------- */
.atmosphere--arcs {
  --atmosphere:
    url("../../media/patterns/arcs-light.svg") no-repeat 50% -8% / min(1400px, 165%) auto,
    radial-gradient(80% 70% at 0% 0%, rgba(29, 78, 216, 0.22), transparent 52%),
    radial-gradient(70% 60% at 100% 100%, rgba(14, 165, 233, 0.16), transparent 48%),
    #c5d3e6;
  background: var(--atmosphere);
}
.atmosphere--arcs .section__parallax-layer { background: var(--atmosphere); }

.atmosphere--hubs,
#services {
  --atmosphere:
    url("../../media/patterns/hubs-light.svg") repeat,
    radial-gradient(70% 60% at 100% 0%, rgba(29, 78, 216, 0.12), transparent 50%),
    #c8d6e8;
  background: var(--atmosphere);
}
.atmosphere--hubs .section__parallax-layer,
#services .section__parallax-layer { background: var(--atmosphere); }

.atmosphere--lanes {
  --atmosphere:
    url("../../media/patterns/lanes-light.svg") repeat,
    radial-gradient(90% 80% at 50% 0%, rgba(29, 78, 216, 0.1), transparent 55%),
    #d0dcea;
  background: var(--atmosphere);
}
.atmosphere--lanes .section__parallax-layer { background: var(--atmosphere); }

/* ---------- Chapters (канон фонів — тільки тут) ---------- */
.chapter--regions,
#calc-teaser {
  --atmosphere:
    url("../../media/patterns/arcs-light.svg") no-repeat 50% 12% / min(1400px, 170%) auto,
    radial-gradient(70% 80% at 0% 30%, rgba(29, 78, 216, 0.16), transparent 55%),
    radial-gradient(70% 80% at 100% 70%, rgba(217, 119, 6, 0.12), transparent 52%),
    #d0dcec;
  --section-parallax-bg: var(--atmosphere);
  background: var(--atmosphere);
}
#calc-teaser .section__parallax-layer { background: var(--atmosphere); }

/* Сценарії: editorial dark без сітки — продовження hero */
.atmosphere--editorial,
#scenarios {
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(70% 80% at 0% 0%, rgba(196, 165, 116, 0.14), transparent 55%),
    radial-gradient(70% 55% at 100% 100%, rgba(29, 78, 216, 0.26), transparent 52%),
    linear-gradient(180deg, #152338 0%, #0f172a 100%);
  color: var(--color-text-inverse);
  border-bottom: 1px solid rgba(196, 165, 116, 0.18);
}
.atmosphere--editorial .section__eyebrow,
#scenarios .section__eyebrow { color: #d2c0a0; }
.atmosphere--editorial .section__title,
#scenarios .section__title { color: var(--color-text-inverse); }
.atmosphere--editorial .section__lead,
#scenarios .section__lead { color: var(--color-text-inverse-muted); }

/* Коридор: editorial dark без сітки — шов перед «технічними» маршрутами */
#corridor-bridge {
  background:
    radial-gradient(65% 70% at 0% 40%, rgba(196, 165, 116, 0.12), transparent 55%),
    radial-gradient(75% 55% at 100% 0%, rgba(29, 78, 216, 0.22), transparent 52%),
    linear-gradient(180deg, #152338 0%, #0f172a 100%);
  color: var(--color-text-inverse);
  border-block: 0;
  border-bottom: 1px solid rgba(196, 165, 116, 0.18);
}
#corridor-bridge .section__eyebrow { color: #d2c0a0; }
#corridor-bridge .section__title { color: var(--color-text-inverse); }
#corridor-bridge .section__lead { color: var(--color-text-inverse-muted); }
#corridor-bridge .corridor-bridge__facts li {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(196, 165, 116, 0.22);
  box-shadow: inset 3px 0 0 rgba(196, 165, 116, 0.55);
}
#corridor-bridge .corridor-bridge__facts strong { color: #fff; }
#corridor-bridge .corridor-bridge__facts span { color: var(--color-text-inverse-muted); }

/* Процес: editorial dark — удар у світлому прогоні */
#process {
  background:
    radial-gradient(70% 70% at 100% 0%, rgba(196, 165, 116, 0.12), transparent 55%),
    radial-gradient(70% 55% at 0% 100%, rgba(29, 78, 216, 0.24), transparent 52%),
    linear-gradient(180deg, #152338 0%, #0f172a 100%);
}
#process .step__title { color: #fff; }
#process .step__text { color: var(--color-text-inverse-muted); }
#process .step__station {
  background: #d2c0a0;
  color: #0f172a;
  box-shadow: 0 0 0 4px rgba(196, 165, 116, 0.22);
}
#process .step:not(:last-child)::after {
  background: linear-gradient(180deg, #d2c0a0 0%, rgba(196, 165, 116, 0.12) 100%);
}
@media (min-width: 768px) {
  #process .steps::before {
    background: linear-gradient(90deg, #d2c0a0 0%, rgba(196, 165, 116, 0.18) 100%);
  }
}
@media (max-width: 1023px) and (min-width: 768px) {
  #process { padding-block: clamp(2.75rem, 5vw, 4rem); }
}
@media (max-width: 767px) {
  #process {
    padding-block: clamp(2.5rem, 8vw, 3.5rem);
    padding-bottom: calc(clamp(2.5rem, 8vw, 3.5rem) + env(safe-area-inset-bottom, 0px));
  }
  #process .step { min-height: 44px; }
}

/* Відгуки: editorial dark — цитатна смуга */
#reviews {
  background:
    radial-gradient(65% 70% at 0% 0%, rgba(196, 165, 116, 0.14), transparent 55%),
    radial-gradient(75% 55% at 100% 100%, rgba(29, 78, 216, 0.22), transparent 52%),
    linear-gradient(180deg, #152338 0%, #0f172a 100%);
}
#reviews .review-card {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(196, 165, 116, 0.22);
  box-shadow: inset 3px 0 0 rgba(196, 165, 116, 0.55);
  color: var(--color-text-inverse);
}
#reviews .review-card__stars { color: #d2c0a0; }
#reviews .review-card__quote { color: var(--color-text-inverse-muted); }
#reviews .review-card__author { color: #fff; }
#reviews .review-card__flag { color: rgba(210, 192, 160, 0.72); }
#reviews .review-card__source { color: rgba(210, 192, 160, 0.58); }
#reviews .review-card__source-link { color: #d2c0a0; }
#reviews .review-card__source-link:hover,
#reviews .review-card__source-link:focus-visible { color: #fff; }
@media (hover: hover) and (pointer: fine) {
  #reviews .review-card:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(196, 165, 116, 0.35);
    box-shadow: inset 3px 0 0 rgba(196, 165, 116, 0.7);
  }
}
@media (max-width: 1023px) and (min-width: 768px) {
  #reviews { padding-block: clamp(2.75rem, 5vw, 4rem); }
}
@media (max-width: 767px) {
  #reviews {
    padding-block: clamp(2.5rem, 8vw, 3.5rem);
    padding-bottom: calc(clamp(2.5rem, 8vw, 3.5rem) + env(safe-area-inset-bottom, 0px));
  }
}

/* Маршрути: ops-сітка + холодні світіння — контраст до editorial-коридору */
.chapter--routes {
  background:
    url("../../media/patterns/grid-dark.svg") repeat,
    radial-gradient(85% 55% at 50% -8%, rgba(56, 189, 248, 0.18), transparent 46%),
    radial-gradient(70% 50% at 100% 100%, rgba(29, 78, 216, 0.28), transparent 48%),
    #080e1a;
}
.chapter--routes::before {
  background: linear-gradient(90deg, transparent, rgba(147, 197, 253, 0.22) 20%, rgba(147, 197, 253, 0.22) 80%, transparent);
}
.chapter--routes .chapter__surface--routes-head,
.chapter--routes .chapter__surface--routes-head .section__title,
.chapter--routes .section__title {
  color: var(--color-text-inverse);
  text-shadow: none;
}
.chapter--routes .chapter__surface--routes-head .section__eyebrow,
.chapter--routes .section__eyebrow {
  color: #93c5fd;
}
.chapter--routes .chapter__surface--routes-head .section__lead,
.chapter--routes .section__lead {
  color: var(--color-text-inverse-muted);
}

.chapter--fleet {
  background:
    url("../../media/patterns/grid-dark.svg") repeat,
    radial-gradient(80% 70% at 100% 0%, rgba(29, 78, 216, 0.28), transparent 52%),
    linear-gradient(160deg, #16213b 0%, #0f172a 100%);
}
.chapter--fleet::before {
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.12) 20%, rgba(255, 255, 255, 0.12) 80%, transparent);
}

/* ---------- Home section ids (унікальні рецепти) ---------- */
#advantages {
  --atmosphere:
    url("../../media/patterns/hubs-light.svg") repeat,
    radial-gradient(80% 70% at 0% 100%, rgba(14, 165, 233, 0.12), transparent 50%),
    #cdd9ea;
  background: var(--atmosphere);
}
#advantages .section__parallax-layer { background: var(--atmosphere); }

#gallery {
  background:
    url("../../media/patterns/grid-dark.svg") repeat,
    radial-gradient(70% 60% at 0% 100%, rgba(196, 165, 116, 0.12), transparent 50%),
    radial-gradient(75% 55% at 100% 0%, rgba(29, 78, 216, 0.2), transparent 52%),
    linear-gradient(180deg, #152338 0%, #0f172a 100%);
}
#gallery .section__title { color: #fff; }
#gallery .section__eyebrow { color: #d2c0a0; }
@media (max-width: 1023px) and (min-width: 768px) {
  #gallery { padding-block: clamp(2.75rem, 5vw, 4rem); }
}

#faq {
  --atmosphere:
    url("../../media/patterns/hubs-light.svg") repeat,
    #d2dcec;
  background: var(--atmosphere);
}
#faq .section__parallax-layer { background: var(--atmosphere); }

#partners {
  --atmosphere:
    url("../../media/patterns/lanes-light.svg") repeat,
    #d0dbea;
  background: var(--atmosphere);
}
#partners .section__parallax-layer { background: var(--atmosphere); }

#career-teaser {
  --atmosphere:
    url("../../media/patterns/hubs-light.svg") repeat,
    radial-gradient(80% 70% at 100% 50%, rgba(29, 78, 216, 0.14), transparent 50%),
    #c2d0e4;
  background: var(--atmosphere);
}
#career-teaser .section__parallax-layer { background: var(--atmosphere); }

/* Dark grid — lead CTA (канон фону; layout форми лишається в home.css) */
.atmosphere--dark-grid {
  overflow: hidden;
  isolation: isolate;
  background:
    url("../../media/patterns/grid-dark.svg") repeat,
    radial-gradient(80% 60% at 10% 0%, rgba(29, 78, 216, 0.32), transparent 55%),
    var(--color-bg-dark);
}
/* overflow:hidden ламає scroll-margin для #lead-form — лишаємо лише isolation */
.lead-section {
  isolation: isolate;
  background:
    url("../../media/patterns/grid-dark.svg") repeat,
    radial-gradient(80% 60% at 10% 0%, rgba(29, 78, 216, 0.32), transparent 55%),
    var(--color-bg-dark);
}
