@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Oswald:wght@500;600;700&display=swap&subset=cyrillic');

:root {
  --atb-color-text: #e8eef7;
  --atb-color-background: #090b12;
  --atb-color-surface: #121724;
  --atb-color-primary: #39e7ff;
  --atb-color-secondary: #ff4fd8;
  --atb-color-accent: #ffc857;
  --atb-color-border: #2a3448;
  --atb-font-body: "Manrope", system-ui, sans-serif;
  --atb-font-heading: "Oswald", "Manrope", system-ui, sans-serif;
  --atb-width-max: 73rem;

  --jz-muted: #a9b4c8;
  --jz-dim: #7f8aa2;
  --jz-ink: #070912;
  --jz-surface-2: #182033;
  --jz-surface-3: #0e1422;
  --jz-border-hot: rgba(255, 79, 216, 0.48);
  --jz-border-cool: rgba(57, 231, 255, 0.46);
  --jz-rule: rgba(232, 238, 247, 0.14);
  --jz-radius: 14px;
  --jz-radius-sm: 10px;
  --jz-shadow: 0 1rem 2.5rem rgba(2, 4, 13, 0.42);
  --jz-neon-cyan: 0 0 0.65rem rgba(57, 231, 255, 0.38);
  --jz-neon-pink: 0 0 0.65rem rgba(255, 79, 216, 0.32);
  --jz-pad-x: clamp(1rem, 4vw, 2rem);
  --jz-section-y: clamp(3.5rem, 7vw, 6.5rem);
}
* {
  box-sizing: border-box;
}
html {
  color-scheme: dark;
  background: var(--atb-color-background);
}
body {
  margin: 0;
  background:
    linear-gradient(115deg, rgba(57, 231, 255, 0.08), transparent 30rem),
    linear-gradient(245deg, rgba(255, 79, 216, 0.07), transparent 32rem),
    repeating-linear-gradient(178deg, rgba(232, 238, 247, 0.018) 0 1px, transparent 1px 9px),
    var(--atb-color-background);
  color: var(--atb-color-text);
  font-family: var(--atb-font-body);
  font-size: 1rem;
  line-height: 1.7;
  text-rendering: optimizeLegibility;
}
img {
  max-inline-size: 100%;
}
a {
  color: var(--atb-color-primary);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
  transition: color 180ms ease, border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
a:hover,
a:focus-visible {
  color: #b9f7ff;
}
a:focus-visible,
button:focus-visible,
summary:focus-visible,
.s-booking__input:focus-visible {
  outline: 2px solid var(--atb-color-accent);
  outline-offset: 0.18rem;
}
::selection {
  background: rgba(255, 79, 216, 0.45);
  color: var(--atb-color-text);
}
.skip-link {
  background: var(--atb-color-accent);
  color: var(--jz-ink);
  border-radius: 999px;
  font-weight: 800;
  padding: 0.65rem 1rem;
}
.site-topbar,
.site-prefooter {
  background:
    linear-gradient(90deg, rgba(57, 231, 255, 0.15), transparent 34%),
    linear-gradient(270deg, rgba(255, 79, 216, 0.14), transparent 40%),
    #0b0f19;
  color: var(--atb-color-text);
  border-block: 1px solid var(--jz-rule);
  font-size: 0.9rem;
}
.site-topbar__inner,
.site-prefooter__inner {
  max-inline-size: var(--atb-width-max);
  margin-inline: auto;
  padding: 0.55rem var(--jz-pad-x);
}
.site-topbar__text,
.site-prefooter__text {
  margin: 0;
  color: var(--jz-muted);
}
.site-topbar__link,
.site-prefooter__link {
  color: var(--atb-color-accent);
  font-weight: 800;
}
.site-header__bar {
  background:
    linear-gradient(90deg, rgba(57, 231, 255, 0.08), transparent 30%),
    rgba(9, 11, 18, 0.86);
  color: var(--atb-color-text);
  border-block-end: 1px solid rgba(57, 231, 255, 0.18);
  box-shadow: 0 0.8rem 2rem rgba(2, 4, 13, 0.32);
  backdrop-filter: blur(14px);
}
.site-header__inner {
  padding-block: 0.65rem;
}
.brand {
  color: var(--atb-color-text);
  text-decoration: none;
}
img.brand__mark {
  block-size: 2.4rem;
  inline-size: auto;
  object-fit: contain;
  filter: drop-shadow(0 0 0.55rem rgba(57, 231, 255, 0.55));
}
span.brand__mark {
  inline-size: 2.3rem;
  block-size: 2.3rem;
  border-radius: 0.75rem;
  background:
    linear-gradient(145deg, rgba(57, 231, 255, 0.9), rgba(255, 79, 216, 0.7));
  color: #070912;
  font-family: var(--atb-font-heading);
  font-size: 1.25rem;
  line-height: 2.3rem;
  text-align: center;
  box-shadow: 0 0 0.75rem rgba(57, 231, 255, 0.35);
}
.brand__name {
  color: var(--atb-color-text);
  font-family: var(--atb-font-heading);
  font-size: clamp(1.35rem, 1vw + 1rem, 1.85rem);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  text-shadow: var(--jz-neon-cyan);
}
.brand__tagline {
  color: var(--jz-muted);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.site-nav__link {
  color: var(--jz-muted);
  border-radius: 999px;
  font-family: var(--atb-font-heading);
  font-size: 1rem;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}
.site-header .site-nav .site-nav__link:hover,
.site-header .site-nav .site-nav__link:focus,
.site-header .site-nav .site-nav__link:focus-visible {
  background: rgba(57, 231, 255, 0.13);
  color: var(--atb-color-text);
}
.site-nav__item--current > .site-nav__link,
.site-nav__link.active {
  color: var(--atb-color-primary);
  text-shadow: var(--jz-neon-cyan);
}
.dropdown-menu {
  background-color: #0d1320;
  color: var(--atb-color-text);
  border-color: rgba(57, 231, 255, 0.22);
  border-radius: var(--jz-radius);
  box-shadow: var(--jz-shadow);
}
.site-header__cta {
  background:
    linear-gradient(180deg, #ffe08a, var(--atb-color-accent));
  color: var(--jz-ink);
  border: 1px solid rgba(255, 200, 87, 0.82);
  border-radius: var(--jz-radius-sm);
  font-family: var(--atb-font-heading);
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  box-shadow: 0 0 0.8rem rgba(255, 200, 87, 0.2);
}
.site-header__cta:hover,
.site-header__cta:focus-visible {
  background: #e6a93f;
  color: var(--jz-ink);
}
.site-nav__toggle {
  border-color: rgba(57, 231, 255, 0.34);
  border-radius: var(--jz-radius-sm);
}
.btn--primary,
.btn--ghost,
.search-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55em;
  border-radius: var(--jz-radius-sm);
  font-family: var(--atb-font-heading);
  font-weight: 700;
  letter-spacing: 0.055em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.8rem 1.15rem;
  min-block-size: 2.8rem;
  transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.btn--primary {
  background:
    linear-gradient(180deg, #ffe08a, var(--atb-color-accent));
  color: var(--jz-ink);
  border: 1px solid rgba(255, 200, 87, 0.9);
  box-shadow: 0 0.45rem 1.15rem rgba(255, 200, 87, 0.18), inset 0 1px rgba(255, 255, 255, 0.22);
}
.btn--primary:hover,
.btn--primary:focus-visible {
  background: #d79a33;
  color: var(--jz-ink);
  transform: translateY(-2px);
  box-shadow: 0 0.65rem 1.35rem rgba(255, 200, 87, 0.22);
}
.btn--ghost {
  background: rgba(18, 23, 36, 0.72);
  color: var(--atb-color-text);
  border: 1px solid rgba(57, 231, 255, 0.42);
  box-shadow: inset 0 1px rgba(232, 238, 247, 0.07);
}
.btn--ghost:hover,
.btn--ghost:focus-visible {
  background: rgba(57, 231, 255, 0.16);
  color: var(--atb-color-text);
  border-color: var(--atb-color-primary);
}
.btn--external[data-platform] {
  border-color: rgba(57, 231, 255, 0.58);
}
.site-main {
  background:
    radial-gradient(ellipse at 12% 7%, rgba(57, 231, 255, 0.08), transparent 30rem),
    radial-gradient(ellipse at 88% 18%, rgba(255, 79, 216, 0.075), transparent 34rem);
}
.s {
  max-inline-size: var(--atb-width-max);
  margin-inline: auto;
  padding: var(--jz-section-y) var(--jz-pad-x);
  color: var(--atb-color-text);
}
.s[data-position="first"] {
  padding-block-start: clamp(2rem, 5vw, 4rem);
}
.s[data-position="last"] {
  padding-block-end: clamp(4.5rem, 8vw, 7.5rem);
}
.s[data-position="only"] {
  padding-block: clamp(5rem, 11vw, 9rem);
}
.s.s--alt {
  background:
    linear-gradient(180deg, rgba(18, 23, 36, 0.96), rgba(11, 15, 25, 0.98));
  color: var(--atb-color-text);
  box-shadow: 0 0 0 100vmax rgba(12, 17, 29, 0.96);
  clip-path: inset(0 -100vmax);
  border-block: 1px solid rgba(57, 231, 255, 0.12);
}
.s.s--spotlight {
  background:
    linear-gradient(110deg, rgba(57, 231, 255, 0.18), transparent 34%),
    linear-gradient(285deg, rgba(255, 79, 216, 0.22), transparent 42%),
    #171024;
  color: var(--atb-color-text);
  box-shadow: 0 0 0 100vmax #171024;
  clip-path: inset(0 -100vmax);
  border-block: 1px solid rgba(255, 79, 216, 0.28);
}
.s :is(p, ul, ol, dl, figure, blockquote) {
  margin-block-start: 0;
}
.s :is(h1, h2, h3) {
  font-family: var(--atb-font-heading);
  font-weight: 700;
  line-height: 1.1;
  max-inline-size: 22ch;
  letter-spacing: 0.015em;
  text-transform: uppercase;
}
.s-hero__title {
  font-size: clamp(2rem, 3.5vw + 0.5rem, 3rem);
  color: var(--atb-color-text);
  text-shadow: 0 0 0.7rem rgba(57, 231, 255, 0.45), 0 0 1rem rgba(255, 79, 216, 0.22);
}
.s :is(
  .s-story__title,
  .s-offering__title,
  .s-steps__title,
  .s-checklist__title,
  .s-timeline__title,
  .s-specs__title,
  .s-team__title,
  .s-clients__title,
  .s-cards__title,
  .s-documents__title,
  .s-testimonials__title,
  .s-faq__title,
  .s-gallery__title,
  .s-pricing__title,
  .s-contact__title,
  .s-comparison__title,
  .s-schedule__title,
  .s-locations__title,
  .s-prose__title,
  .s-moment__title,
  .s-inset__title,
  .s-panorama__title,
  .s-duo__title,
  .s-fragments__title,
  .s-booking__title,
  .s-cta__title,
  .s-thanks__title
) {
  font-size: clamp(1.75rem, 2.5vw + 0.5rem, 2.5rem);
}
.s :is(
  .s-story__paragraph,
  .s-offering__intro,
  .s-offering__item-text,
  .s-steps__item-text,
  .s-checklist__intro,
  .s-timeline__intro,
  .s-timeline__item-text,
  .s-specs__intro,
  .s-team__intro,
  .s-team__bio,
  .s-clients__intro,
  .s-cards__intro,
  .s-cards__item-text,
  .s-documents__intro,
  .s-faq__answer,
  .s-gallery__intro,
  .s-pricing__intro,
  .s-contact__text,
  .s-comparison__intro,
  .s-comparison__summary,
  .s-schedule__intro,
  .s-locations__intro,
  .s-locations__address,
  .s-prose__paragraph,
  .s-moment__body,
  .s-inset__text,
  .s-panorama__caption,
  .s-duo__text,
  .s-fragments__text,
  .s-booking__intro,
  .s-booking__note,
  .s-cta__text,
  .s-thanks__lead,
  .s-thanks__paragraph
) {
  color: var(--jz-muted);
}
.s :is(
  .s-hero__media,
  .s-story__media,
  .s-inset__media,
  .s-moment__media,
  .s-panorama__media,
  .s-duo__figure,
  .entry__media,
  .page-header__media
) {
  margin-block-end: 0;
}
.s :is(
  .s-hero__image,
  .s-story__image,
  .s-offering__image,
  .s-team__image,
  .s-cards__image,
  .s-gallery__image,
  .s-moment__image,
  .s-inset__image,
  .s-panorama__image,
  .s-duo__image,
  .s-fragments__image
),
.post-card__image,
.entry__image,
.page-header__media img {
  inline-size: 100%;
  aspect-ratio: 16 / 10;
  max-block-size: min(70vh, 40rem);
  object-fit: cover;
  border-radius: var(--jz-radius);
  border: 1px solid rgba(57, 231, 255, 0.18);
  box-shadow: 0 1.1rem 2.2rem rgba(1, 3, 10, 0.42);
}
.s-hero__image {
  aspect-ratio: 16 / 9;
  max-block-size: min(60vh, 34rem);
}
.s-offering__image,
.s-team__image,
.s-cards__image,
.post-card__image {
  aspect-ratio: 4 / 3;
  max-block-size: min(55vh, 28rem);
}
.s-gallery__image,
.s-fragments__image {
  aspect-ratio: 1 / 1;
  max-block-size: min(60vh, 32rem);
}
.s-hero {
  min-block-size: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 2rem);
  align-items: start;
}
.s-hero__eyebrow {
  margin: 0;
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  font-size: 1rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  text-shadow: var(--jz-neon-cyan);
}
.s-hero__lead {
  max-inline-size: 46rem;
  color: #d7e0ef;
  font-size: clamp(1.08rem, 0.55vw + 0.95rem, 1.28rem);
}
.s-hero__actions,
.s-thanks__actions {
  --atb-actions-gap: 0.8rem;
  gap: var(--atb-actions-gap);
}
.s-hero__caption {
  margin-block-start: 0.6rem;
  color: var(--jz-dim);
  font-size: 0.92rem;
}
.s-hero--split {
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.15fr);
  grid-template-rows: auto auto auto auto;
  column-gap: clamp(2rem, 5vw, 4.5rem);
  row-gap: 1rem;
}
.s-hero--split > .s-hero__eyebrow,
.s-hero--split > .s-hero__title,
.s-hero--split > .s-hero__lead,
.s-hero--split > .s-hero__actions {
  grid-column: 1;
}
.s-hero--split > .s-hero__media {
  grid-column: 2;
  grid-row: 1 / -1;
  align-self: start;
}
.s-hero--split .s-hero__title[data-length="long"] {
  font-size: clamp(1.75rem, 2.5vw + 0.5rem, 2.5rem);
}
.s-hero--stacked {
  grid-template-columns: minmax(0, 1fr);
}
.s-hero--stacked > .s-hero__eyebrow,
.s-hero--stacked > .s-hero__title,
.s-hero--stacked > .s-hero__lead,
.s-hero--stacked > .s-hero__actions,
.s-hero--stacked > .s-hero__media {
  grid-column: 1;
}
.s-hero--stacked > .s-hero__media {
  margin-block-start: clamp(1rem, 3vw, 2rem);
}
.s-story {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 2rem);
}
.s-story__title {
  color: var(--atb-color-primary);
  text-shadow: var(--jz-neon-cyan);
}
.s-story__body {
  max-inline-size: 48rem;
}
.s-story__media {
  order: -1;
}
.s-story--columns > .s-story__title,
.s-story--columns > .s-story__body,
.s-story--columns > .s-story__media {
  grid-column: 1;
}
.s-story--columns .s-story__media {
  order: -1;
}
.s-story--columns .s-story__body {
  columns: 2 18rem;
  column-gap: clamp(1.5rem, 4vw, 3rem);
  max-inline-size: 62rem;
}.s :is(.s-offering__list, .s-steps__list, .s-checklist__list, .s-timeline__list, .s-team__list, .s-clients__list, .s-cards__list, .s-documents__list, .s-testimonials__list, .s-faq__list, .s-gallery__list, .s-pricing__list, .s-comparison__list, .s-schedule__list, .s-locations__list, .s-stats__list) {
  row-gap: clamp(1rem, 2.5vw, 1.6rem);
}
.s :is(.s-offering__item, .s-steps__item, .s-timeline__item, .s-team__item, .s-cards__item, .s-testimonials__item, .s-pricing__item, .s-comparison__item, .s-locations__item) {
  height: 100%;
  display: flex;
  flex-direction: column;
  background:
    linear-gradient(180deg, rgba(232, 238, 247, 0.055), transparent 28%),
    var(--atb-color-surface);
  color: var(--atb-color-text);
  border: 1px solid var(--atb-color-border);
  border-block-start-color: rgba(57, 231, 255, 0.45);
  border-radius: var(--jz-radius);
  padding: clamp(1.15rem, 2.5vw, 1.8rem);
  box-shadow: var(--jz-shadow);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.s :is(.s-offering__item, .s-steps__item, .s-timeline__item, .s-team__item, .s-cards__item, .s-testimonials__item, .s-pricing__item, .s-comparison__item, .s-locations__item):hover {
  transform: translateY(-3px);
  border-color: rgba(57, 231, 255, 0.58);
  box-shadow: 0 1.2rem 2.4rem rgba(1, 3, 10, 0.5), 0 0 0.75rem rgba(57, 231, 255, 0.12);
}
.s :is(.s-offering__item-title, .s-steps__item-title, .s-timeline__item-title, .s-team__name, .s-cards__item-title, .s-pricing__name, .s-comparison__name, .s-locations__name) {
  font-size: clamp(1.25rem, 1vw + 1rem, 1.65rem);
  color: var(--atb-color-text);
  margin-block: 0.35rem 0.55rem;
}
.s-offering__title,
.s-cards__title,
.s-comparison__title {
  color: var(--atb-color-secondary);
  text-shadow: var(--jz-neon-pink);
}
.s-offering__intro,
.s-cards__intro,
.s-comparison__intro {
  max-inline-size: 47rem;
}
.s-offering__image,
.s-cards__image,
.s-team__image {
  margin-block-end: 1rem;
}
.s-offering__list[data-count="2"] .s-offering__item {
  padding: clamp(1.6rem, 4vw, 3rem);
}.s-offering--feature .s-offering__col:first-child {
  width: 100%;
}
.s-offering--feature .s-offering__col:first-child .s-offering__item {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  grid-template-rows: auto auto;
  column-gap: clamp(1.5rem, 4vw, 3.5rem);
  row-gap: 1rem;
  padding: clamp(1.4rem, 4vw, 3rem);
}
.s-offering--feature .s-offering__col:first-child .s-offering__image {
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: start;
}
.s-offering--feature .s-offering__col:first-child .s-offering__item-title,
.s-offering--feature .s-offering__col:first-child .s-offering__item-text {
  grid-column: 2;
}
.s-offering--feature .s-offering__item:not(:has(.s-offering__image)) {
  grid-template-columns: minmax(0, 1fr);
}
.s-offering--feature .s-offering__item:not(:has(.s-offering__image)) .s-offering__item-title,
.s-offering--feature .s-offering__item:not(:has(.s-offering__image)) .s-offering__item-text {
  grid-column: 1;
}
.s-offering--index .s-offering__item {
  background: transparent;
  color: var(--atb-color-text);
  border: 0;
  border-block-start: 1px solid var(--jz-rule);
  border-radius: 0;
  box-shadow: none;
  padding: 1rem 0;
}
.s-offering--index .s-offering__item::before {
  content: counter(offering, decimal-leading-zero);
  counter-increment: offering;
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}.s-offering--index .s-offering__list {
  counter-reset: offering;
}
.s-offering--rows .s-offering__item {
  background: transparent;
  color: var(--atb-color-text);
  border-inline: 0;
  border-radius: 0;
  box-shadow: none;
}
.s-steps__number {
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1;
  opacity: 0.78;
  text-shadow: var(--jz-neon-cyan);
}
.s-steps--horizontal {
  border-block: 1px solid rgba(57, 231, 255, 0.18);
}
.s-steps--horizontal .s-steps__item {
  box-shadow: none;
  border-radius: 0;
  border-inline: 0;
  border-block-end: 0;
  background: linear-gradient(90deg, rgba(57, 231, 255, 0.1), transparent 70%);
}
.s-steps--rail .s-steps__item {
  border-inline-start: 2px solid var(--atb-color-primary);
  border-block-start-color: var(--jz-border-hot);
}
.s-checklist--plain {
  max-inline-size: 52rem;
}
.s-checklist__item {
  height: 100%;
  background: transparent;
  color: var(--atb-color-text);
  border-block-start: 1px solid var(--jz-rule);
  padding: 1rem 0;
}
.s-checklist__text {
  display: block;
  font-weight: 800;
}
.s-checklist__note,
.s-documents__note,
.s-team__role,
.s-testimonials__role,
.s-pricing__note,
.s-comparison__caveat,
.s-schedule__detail,
.s-locations__hours,
.s-clients__note {
  color: var(--jz-dim);
  font-size: 0.94rem;
}
.s-highlight {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.9rem;
  padding-block: clamp(4.5rem, 9vw, 8rem);
}
.s-highlight__claim {
  font-family: var(--atb-font-heading);
  font-size: clamp(1.75rem, 3vw + 0.5rem, 3rem);
  line-height: 1.1;
  max-inline-size: 22ch;
  color: var(--atb-color-text);
  text-shadow: var(--jz-neon-pink);
}
.s-highlight__claim::before {
  content: "“";
  color: var(--atb-color-secondary);
  margin-inline-end: 0.12em;
}
.s-highlight__attribution {
  color: var(--atb-color-primary);
  font-weight: 800;
}
.s-highlight--quote {
  border-block-start: 1px solid rgba(255, 79, 216, 0.35);
}
.s-highlight--marker {
  max-inline-size: none;
  background:
    linear-gradient(90deg, rgba(255, 79, 216, 0.25), transparent 42%),
    #120b1d;
  color: var(--atb-color-text);
  box-shadow: 0 0 0 100vmax #120b1d;
  clip-path: inset(0 -100vmax);
}
.s-highlight--marker .s-highlight__claim {
  max-inline-size: 30ch;
}
.s-timeline__period,
.s-stats__value,
.s-pricing__price {
  color: var(--atb-color-accent);
  font-family: var(--atb-font-heading);
  font-size: clamp(1.7rem, 3vw, 2.7rem);
  line-height: 1.05;
  text-shadow: 0 0 0.5rem rgba(255, 200, 87, 0.24);
}.s-specs__list {
  border-block-start: 1px solid var(--jz-rule);
}.s-contact__details {
  border-block-start: 1px solid var(--jz-rule);
}
.s-specs__item,
.s-contact__item {
  background: transparent;
  color: var(--atb-color-text);
  border-block-end: 1px solid var(--jz-rule);
  padding: clamp(1rem, 2vw, 1.35rem);
}
.s-specs--table .s-specs__item {
  border-inline-start: 1px solid rgba(57, 231, 255, 0.16);
}
.s-specs__label,
.s-contact__label {
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.s-specs__value,
.s-contact__value {
  margin-block-end: 0;
  color: var(--atb-color-text);
  font-weight: 700;
}
.s-clients__item,
.s-stats__item,
.s-documents__item,
.s-gallery__item {
  height: 100%;
  background: rgba(18, 23, 36, 0.66);
  color: var(--atb-color-text);
  border: 1px solid rgba(232, 238, 247, 0.12);
  border-radius: var(--jz-radius-sm);
  padding: clamp(1rem, 2vw, 1.35rem);
}
.s-clients__name {
  display: block;
  font-weight: 800;
}
.s-cards__link,
.s-documents__link,
.s-locations__phone,
.s-thanks__note-link {
  margin-block-start: auto;
  color: var(--atb-color-accent);
  font-weight: 800;
}
.s-cards__link:hover,
.s-cards__link:focus-visible,
.s-documents__link:hover,
.s-documents__link:focus-visible {
  background: rgba(255, 200, 87, 0.14);
  color: var(--atb-color-accent);
}
.s-cards__link--external::after {
  content: " ↗";
}
.s-cards--tiles .s-cards__item {
  padding: 0;
  overflow: hidden;
}
.s-cards--tiles .s-cards__item-title,
.s-cards--tiles .s-cards__item-text,
.s-cards--tiles .s-cards__link {
  margin-inline: clamp(1rem, 2vw, 1.35rem);
}
.s-cards--tiles .s-cards__link {
  margin-block-end: clamp(1rem, 2vw, 1.35rem);
}
.s-cards--list .s-cards__item {
  background: transparent;
  color: var(--atb-color-text);
  border-radius: 0;
  border-inline: 0;
  box-shadow: none;
}
.s-documents--rows .s-documents__item {
  border-radius: 0;
  border-inline: 0;
  background:
    linear-gradient(90deg, rgba(57, 231, 255, 0.08), transparent 70%);
}
.s-documents__item-title {
  font-weight: 800;
}
.s-testimonials__quote {
  margin-block-end: 1rem;
  color: var(--atb-color-text);
  font-size: clamp(1.1rem, 1vw + 0.95rem, 1.35rem);
  line-height: 1.55;
}
.s-testimonials__author {
  margin-block-end: 0.1rem;
  color: var(--atb-color-primary);
  font-weight: 800;
}
.s-faq {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 2rem);
}
.s-faq--split {
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.88fr);
  column-gap: clamp(2rem, 5vw, 4rem);
  row-gap: 1rem;
  align-items: start;
}
.s-faq--split > .s-faq__title {
  grid-column: 1;
}.s-faq--split > .s-faq__list {
  grid-column: 2;
}
.s-faq__item {
  background: rgba(18, 23, 36, 0.76);
  color: var(--atb-color-text);
  border: 1px solid rgba(232, 238, 247, 0.12);
  border-radius: var(--jz-radius);
  padding: 1rem 1.1rem;
}
.s-faq--boxed .s-faq__item {
  border-color: rgba(57, 231, 255, 0.24);
  box-shadow: inset 0 1px rgba(232, 238, 247, 0.06);
}
.s-faq__item[open] {
  background: rgba(20, 30, 49, 0.95);
  color: var(--atb-color-text);
  border-color: rgba(255, 79, 216, 0.5);
}
.s-faq__question {
  cursor: pointer;
  color: var(--atb-color-text);
  font-family: var(--atb-font-heading);
  font-size: 1.2rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.s-faq__question::marker {
  color: var(--atb-color-primary);
}
.s-faq__answer {
  padding-block-start: 0.75rem;
}
.s-pricing__item {
  border-block-start-color: rgba(255, 200, 87, 0.72);
}
.s-comparison--rows .s-comparison__item {
  border-radius: 0;
  border-inline: 0;
  box-shadow: none;
  background: transparent;
}
.s-comparison--columns .s-comparison__item {
  box-shadow: none;
  border-block-start-color: rgba(255, 79, 216, 0.58);
}
.s-comparison__best {
  margin-block-start: auto;
  color: var(--atb-color-primary);
  font-weight: 800;
}.s-schedule__list {
  border-block-start: 1px solid var(--jz-rule);
}
.s-schedule__item {
  background: transparent;
  color: var(--atb-color-text);
  border-block-end: 1px solid var(--jz-rule);
  padding: 1rem 0;
}
.s-schedule__when {
  color: var(--atb-color-secondary);
  font-family: var(--atb-font-heading);
  font-size: 1.25rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.s-schedule__name {
  display: block;
  color: var(--atb-color-text);
  font-weight: 800;
}
.s-contact--columns .s-contact__item {
  background: transparent;
  border-inline: 0;
  padding-inline: 0;
}
.s-prose {
  max-inline-size: 50rem;
}
.s-prose__body {
  color: var(--jz-muted);
  font-size: 1.08rem;
}
.s-moment {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  grid-template-rows: auto auto auto;
  gap: clamp(1rem, 3vw, 2rem);
  align-items: end;
}
.s-moment__media {
  grid-column: 1 / -1;
  grid-row: 1;
}
.s-moment__index {
  grid-column: 1;
  grid-row: 2;
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  letter-spacing: 0.12em;
}
.s-moment__title {
  grid-column: 2;
  grid-row: 2;
}
.s-moment__body {
  grid-column: 2;
  grid-row: 3;
}
.s-lettering {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 2rem);
  overflow-x: clip;
}
.s-lettering__words {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(0.5rem, 2vw, 1rem);
  list-style: none;
  padding: 0;
}
.s-lettering__word {
  color: transparent;
  -webkit-text-stroke: 1px rgba(57, 231, 255, 0.75);
  font-family: var(--atb-font-heading);
  font-size: clamp(2rem, 7vw, 6rem);
  line-height: 0.98;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  text-shadow: 0 0 0.8rem rgba(57, 231, 255, 0.22);
}
.s-lettering__word:nth-child(1) {
  grid-column: 1 / span 3;
}
.s-lettering__word:nth-child(2) {
  grid-column: 4 / span 2;
}
.s-lettering__word:nth-child(3) {
  grid-column: 2 / span 2;
}
.s-lettering__word:nth-child(4) {
  grid-column: 5 / span 2;
}
.s-lettering__word:nth-child(5) {
  grid-column: 1 / -1;
  -webkit-text-stroke-color: rgba(255, 79, 216, 0.78);
}
.s-inset {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  gap: clamp(1rem, 4vw, 3rem);
  align-items: center;
}
.s-inset > .s-inset__media {
  grid-column: 1;
  grid-row: 1 / span 3;
}
.s-inset > .s-inset__title,
.s-inset > .s-inset__text,
.s-inset > .s-inset__action {
  grid-column: 2;
}
.s-inset--left:not(:has(.s-inset__media)) {
  grid-template-columns: minmax(0, 1fr);
}
.s-inset--left:not(:has(.s-inset__media)) > .s-inset__title,
.s-inset--left:not(:has(.s-inset__media)) > .s-inset__text,
.s-inset--left:not(:has(.s-inset__media)) > .s-inset__action {
  grid-column: 1;
}
.s-panorama {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 2rem);
}
.s-panorama__words {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.2rem;
  list-style: none;
  padding: 0;
}
.s-panorama__word {
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  font-size: clamp(1.2rem, 2vw, 1.8rem);
  letter-spacing: 0.1em;
}
.s-panorama__word + .s-panorama__word::before {
  content: "◆";
  color: var(--atb-color-secondary);
  margin-inline-end: 1.2rem;
}
.s-duo {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
  grid-template-rows: auto auto;
  gap: clamp(1rem, 4vw, 3rem);
  align-items: center;
}
.s-duo__media {
  grid-column: 1;
  grid-row: 1 / span 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}
.s-duo__title,
.s-duo__text {
  grid-column: 2;
}
.s-fragments {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  grid-template-rows: auto auto;
  gap: clamp(1rem, 4vw, 3rem);
}
.s-fragments__title,
.s-fragments__text {
  grid-column: 1;
}
.s-fragments__parts {
  grid-column: 2;
  grid-row: 1 / span 2;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: 1rem;
  list-style: none;
  padding: 0;
}
.s-fragments__item {
  background: var(--atb-color-surface);
  color: var(--atb-color-text);
  border-radius: var(--jz-radius);
  border: 1px solid var(--jz-rule);
  padding: 0.8rem;
}
.s-fragments__label {
  color: var(--atb-color-accent);
  font-family: var(--atb-font-heading);
  letter-spacing: 0.1em;
}
.s-fragments__note {
  color: var(--jz-muted);
}
.s-booking {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: clamp(1rem, 4vw, 3rem);
}
.s-booking > .s-booking__title,
.s-booking > .s-booking__intro {
  grid-column: 1;
}
.s-booking > .s-booking__form {
  grid-column: 2;
  grid-row: 1 / span 2;
}
.s-booking--single {
  grid-template-columns: minmax(0, 1fr);
  max-inline-size: 48rem;
}
.s-booking--single > .s-booking__title,
.s-booking--single > .s-booking__intro,
.s-booking--single > .s-booking__form {
  grid-column: 1;
  grid-row: auto;
}
.s-booking__form {
  background:
    linear-gradient(180deg, rgba(232, 238, 247, 0.06), transparent 32%),
    var(--atb-color-surface);
  color: var(--atb-color-text);
  border: 1px solid rgba(57, 231, 255, 0.2);
  border-radius: var(--jz-radius);
  padding: clamp(1.2rem, 3vw, 2rem);
  box-shadow: var(--jz-shadow);
}
.s-booking__field {
  margin-block-end: 1rem;
}
.s-booking__label {
  display: block;
  margin-block-end: 0.35rem;
  color: var(--atb-color-primary);
  font-weight: 800;
}
.s-booking__input {
  background-color: #0b101c;
  color: var(--atb-color-text);
  border-color: rgba(232, 238, 247, 0.18);
  border-radius: var(--jz-radius-sm);
  min-block-size: 2.9rem;
}
.s-booking__input:focus {
  background-color: #0e1627;
  color: var(--atb-color-text);
  border-color: var(--atb-color-primary);
  box-shadow: 0 0 0 0.2rem rgba(57, 231, 255, 0.18);
}
.s-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  justify-items: start;
}
.s-cta__title {
  color: var(--atb-color-accent);
  text-shadow: 0 0 0.7rem rgba(255, 200, 87, 0.25);
}
.s-cta__text {
  max-inline-size: 45rem;
}
.s-cta--band {
  max-inline-size: var(--atb-width-max);
  background:
    linear-gradient(100deg, rgba(57, 231, 255, 0.18), transparent 38%),
    linear-gradient(270deg, rgba(255, 79, 216, 0.18), transparent 44%),
    #111827;
  color: var(--atb-color-text);
  box-shadow: 0 0 0 100vmax #111827;
  clip-path: inset(0 -100vmax);
}
.s-cta--card {
  background:
    linear-gradient(180deg, rgba(255, 79, 216, 0.1), transparent 35%),
    var(--atb-color-surface);
  color: var(--atb-color-text);
  border: 1px solid rgba(255, 79, 216, 0.24);
  border-radius: calc(var(--jz-radius) + 8px);
  box-shadow: var(--jz-shadow);
  padding: clamp(2rem, 6vw, 4rem);
}
.s-thanks {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  max-inline-size: 46rem;
}
.s-thanks__eyebrow {
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.s-html-fragment__content .notice,
.site-header__edit-fragment .notice,
.site-footer__edit-fragment .notice {
  background: rgba(18, 23, 36, 0.8);
  color: var(--jz-muted);
  border: 1px dashed rgba(57, 231, 255, 0.32);
  border-radius: var(--jz-radius-sm);
  padding: 1rem;
}
.archive-header,
.post-list,
.post-pagination,
.entry,
.post-navigation,
article.page,
.not-found {
  max-inline-size: var(--atb-width-max);
  margin-inline: auto;
  padding-inline: var(--jz-pad-x);
}
.archive-header,
.not-found {
  padding-block: clamp(3rem, 7vw, 6rem);
}
.archive-header__title,
.entry__title,
.page-header__title,
.not-found__title,
.post-card__title {
  font-family: var(--atb-font-heading);
  line-height: 1.1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.archive-header__title,
.entry__title,
.page-header__title,
.not-found__title {
  font-size: clamp(1.75rem, 2.5vw + 0.5rem, 2.5rem);
  max-inline-size: 22ch;
}
.archive-header__description,
.post-card__meta,
.post-card__excerpt,
.entry__meta,
.entry__content,
.not-found__text {
  color: var(--jz-muted);
}
.post-list {
  list-style: none;
}
.post-list__item {
  background: var(--atb-color-surface);
  color: var(--atb-color-text);
  border: 1px solid var(--jz-rule);
  border-radius: var(--jz-radius);
  padding: clamp(1rem, 2vw, 1.5rem);
  margin-block-end: 1rem;
}
.post-card__link {
  color: var(--atb-color-text);
  text-decoration: none;
}
.post-card__link:hover,
.post-card__link:focus-visible {
  background: rgba(57, 231, 255, 0.12);
  color: var(--atb-color-text);
}
.entry {
  padding-block: clamp(3rem, 7vw, 6rem);
}
.entry__content {
  max-inline-size: 48rem;
}
.entry__footer {
  color: var(--jz-muted);
  border-block-start: 1px solid var(--jz-rule);
  padding-block-start: 1rem;
}
.atb-breadcrumbs {
  color: var(--jz-dim);
  font-size: 0.9rem;
  letter-spacing: 0.03em;
  --atb-breadcrumb-divider: "›";
}
.atb-breadcrumbs a {
  color: var(--jz-muted);
}
.atb-breadcrumbs a:hover,
.atb-breadcrumbs a:focus-visible {
  background: rgba(57, 231, 255, 0.12);
  color: var(--atb-color-text);
}
.pagination .page-link {
  background-color: var(--atb-color-surface);
  color: var(--atb-color-text);
  border-color: var(--atb-color-border);
}
.pagination .page-link:hover,
.pagination .page-link:focus-visible {
  background-color: rgba(57, 231, 255, 0.16);
  color: var(--atb-color-text);
}
.pagination .active .page-link,
.pagination .current {
  background-color: var(--atb-color-primary);
  color: var(--jz-ink);
  border-color: var(--atb-color-primary);
}
.search-form {
  margin-block-start: 1.3rem;
}
.search-field {
  background-color: #0b101c;
  color: var(--atb-color-text);
  border-color: var(--atb-color-border);
}
.search-submit {
  background: var(--atb-color-accent);
  color: var(--jz-ink);
  border-color: var(--atb-color-accent);
}
.search-submit:hover,
.search-submit:focus-visible {
  background: #d79a33;
  color: var(--jz-ink);
}
.site-prefooter {
  margin-block-start: 2rem;
}
.site-footer {
  background:
    linear-gradient(90deg, rgba(57, 231, 255, 0.08), transparent 32%),
    #070a11;
  color: var(--atb-color-text);
  border-block-start: 1px solid rgba(57, 231, 255, 0.18);
}
.site-footer__inner {
  padding-block: clamp(2.5rem, 5vw, 4rem) 1.4rem;
}
.site-footer__block {
  padding-block: 0.8rem;
}
.site-footer .brand__name {
  color: var(--atb-color-text);
  text-shadow: var(--jz-neon-pink);
}
.site-footer__tagline,
.site-footer__contact,
.site-footer__copyright {
  color: var(--jz-dim);
}
.site-footer__heading {
  color: var(--atb-color-primary);
  font-family: var(--atb-font-heading);
  font-size: 1rem;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
.site-footer__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.site-footer__link {
  color: var(--jz-muted);
  text-decoration: none;
}
.site-footer__link:hover,
.site-footer__link:focus-visible {
  background: rgba(255, 79, 216, 0.14);
  color: var(--atb-color-text);
}
.site-floating {
  background:
    linear-gradient(180deg, var(--atb-color-primary), #1bb1c4);
  color: var(--jz-ink);
  border: 1px solid rgba(185, 247, 255, 0.5);
  border-radius: 999px;
  padding: 0.75rem 1rem;
  font-family: var(--atb-font-heading);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none;
  box-shadow: 0 0.75rem 1.6rem rgba(2, 4, 13, 0.42);
}
.site-floating:hover,
.site-floating:focus-visible {
  background: #b9f7ff;
  color: var(--jz-ink);
}
.consent-banner {
  background:
    linear-gradient(90deg, rgba(57, 231, 255, 0.13), transparent 36%),
    #0b101a;
  color: var(--atb-color-text);
  border-block-start: 1px solid rgba(57, 231, 255, 0.28);
  box-shadow: 0 -1rem 2rem rgba(2, 4, 13, 0.45);
}
.consent-banner__inner {
  max-inline-size: var(--atb-width-max);
  margin-inline: auto;
  padding: 1rem var(--jz-pad-x);
}
.consent-banner__text {
  margin: 0;
  color: var(--jz-muted);
}
.consent-banner__link {
  color: var(--atb-color-primary);
  font-weight: 800;
}
.consent-banner__actions {
  gap: 0.65rem;
}
.consent-banner__button {
  font-size: 0.95rem;
}
.atb-agegate {
  background:
    radial-gradient(circle at 20% 20%, rgba(57, 231, 255, 0.2), transparent 24rem),
    radial-gradient(circle at 80% 30%, rgba(255, 79, 216, 0.18), transparent 28rem),
    rgba(4, 6, 12, 0.9);
  color: var(--atb-color-text);
  backdrop-filter: blur(12px);
}
.atb-agegate__panel {
  max-inline-size: 34rem;
  background:
    linear-gradient(180deg, rgba(232, 238, 247, 0.06), transparent 35%),
    var(--atb-color-surface);
  color: var(--atb-color-text);
  border: 1px solid rgba(57, 231, 255, 0.3);
  border-radius: calc(var(--jz-radius) + 8px);
  padding: clamp(1.4rem, 4vw, 2.4rem);
  box-shadow: var(--jz-shadow);
}
.atb-agegate__eyebrow {
  display: inline-block;
  margin-block: 0 0.7rem;
  background: rgba(255, 200, 87, 0.14);
  color: var(--atb-color-accent);
  border: 1px solid rgba(255, 200, 87, 0.38);
  border-radius: 999px;
  padding: 0.25rem 0.65rem;
  font-family: var(--atb-font-heading);
  letter-spacing: 0.09em;
}
.atb-agegate__title {
  margin-block: 0 0.6rem;
  font-family: var(--atb-font-heading);
  font-size: clamp(1.75rem, 2.5vw + 0.5rem, 2.5rem);
  line-height: 1.1;
  text-transform: uppercase;
}
.atb-agegate__text {
  color: var(--jz-muted);
}
.atb-agegate__actions {
  gap: 0.65rem;
}
@keyframes jz-hero-rise {
  from {
    opacity: 0;
    transform: translateY(0.8rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.s-hero > * {
  animation: jz-hero-rise 520ms ease both;
}
@media (max-width: 90rem) {
  :root {
    --atb-width-max: 68rem;
  }

  .s {
    --jz-section-y: clamp(3rem, 6vw, 5.5rem);
  }
}
@media (max-width: 64rem) {
  .s-hero--split,
  .s-faq--split,
  .s-inset,
  .s-booking,
  .s-moment,
  .s-duo,
  .s-fragments {
    grid-template-columns: minmax(0, 1fr);
  }.s-hero--split > .s-hero__eyebrow,
.s-hero--split > .s-hero__title,
.s-hero--split > .s-hero__lead,
.s-hero--split > .s-hero__actions,
.s-hero--split > .s-hero__media,
.s-faq--split > .s-faq__title,
.s-inset > .s-inset__media,
.s-inset > .s-inset__title,
.s-inset > .s-inset__text,
.s-inset > .s-inset__action,
.s-booking > .s-booking__title,
.s-booking > .s-booking__intro,
.s-booking > .s-booking__form,
.s-moment__media,
.s-moment__index,
.s-moment__title,
.s-moment__body,
.s-duo__media,
.s-duo__title,
.s-duo__text,
.s-fragments__title,
.s-fragments__text,
.s-fragments__parts {
    grid-column: 1;
    grid-row: auto;
  }.s-faq--split > .s-faq__list {
    grid-column: 1;
    grid-row: auto;
}

  .s-offering--feature .s-offering__col:first-child .s-offering__item {
    grid-template-columns: minmax(0, 1fr);
  }

  .s-offering--feature .s-offering__col:first-child .s-offering__image,
  .s-offering--feature .s-offering__col:first-child .s-offering__item-title,
  .s-offering--feature .s-offering__col:first-child .s-offering__item-text {
    grid-column: 1;
    grid-row: auto;
  }
}
@media (max-width: 48rem) {
  :root {
    --jz-pad-x: clamp(1rem, 5vw, 1.35rem);
  }

  .s {
    padding-block: clamp(2.7rem, 9vw, 4.5rem);
  }

  .s :is(
    .s-hero__image,
    .s-story__image,
    .s-offering__image,
    .s-team__image,
    .s-cards__image,
    .s-gallery__image,
    .s-moment__image,
    .s-inset__image,
    .s-panorama__image,
    .s-duo__image,
    .s-fragments__image
  ),
  .post-card__image,
  .entry__image,
  .page-header__media img {
    max-block-size: min(55vh, 28rem);
  }

  .s-hero__image {
    max-block-size: min(52vh, 26rem);
  }

  .s-story--columns .s-story__body {
    columns: auto;
  }

  .s-lettering__words {
    grid-template-columns: minmax(0, 1fr);
  }

  .s-lettering__word:nth-child(n) {
    grid-column: 1;
  }

  .s-panorama__word + .s-panorama__word::before {
    content: "";
    margin-inline-end: 0;
  }

  .btn--primary,
  .btn--ghost,
  .search-submit {
    padding-inline: 0.95rem;
  }

  .consent-banner__inner {
    padding-block: 1rem;
  }
}
@media (max-width: 24.375rem) {
  .s {
    padding-inline: 1rem;
  }

  .brand__name {
    font-size: 1.28rem;
  }

  img.brand__mark {
    block-size: 2rem;
  }

  span.brand__mark {
    inline-size: 2rem;
    block-size: 2rem;
    line-height: 2rem;
  }

  .s :is(
    .s-hero__image,
    .s-story__image,
    .s-offering__image,
    .s-team__image,
    .s-cards__image,
    .s-gallery__image,
    .s-moment__image,
    .s-inset__image,
    .s-panorama__image,
    .s-duo__image,
    .s-fragments__image
  ),
  .post-card__image,
  .entry__image,
  .page-header__media img {
    max-block-size: min(48vh, 23rem);
  }

  .s-hero__lead {
    font-size: 1rem;
  }

  .site-floating {
    padding: 0.65rem 0.85rem;
    font-size: 0.9rem;
  }
}

/* ── Repair (ATB) ──────────────────────────────────────── */
.s-hero--split:not(:has(.s-hero__media)) {
  grid-template-columns: minmax(0, 1fr);
}
.s-hero--split:not(:has(.s-hero__media)) > .s-hero__eyebrow,
.s-hero--split:not(:has(.s-hero__media)) > .s-hero__title,
.s-hero--split:not(:has(.s-hero__media)) > .s-hero__lead,
.s-hero--split:not(:has(.s-hero__media)) > .s-hero__actions {
  grid-column: 1;
  grid-row: auto;
}
.s-inset:not(:has(.s-inset__media)) {
  grid-template-columns: minmax(0, 1fr);
}
.s-inset:not(:has(.s-inset__media)) > .s-inset__title,
.s-inset:not(:has(.s-inset__media)) > .s-inset__text,
.s-inset:not(:has(.s-inset__media)) > .s-inset__action {
  grid-column: 1;
  grid-row: auto;
}

/* ── Token floor (ATB) ─────────────────────────────────
   Declared by the pipeline, not the design: left undeclared these
   fall back to the starter theme's neutral grey and put it under
   the chrome, the bands and every section the sheet did not
   paint itself. Derived from the design's own tokens so they
   follow it, including a palette pinned after this point. */
:root {
	--atb-color-text-muted: color-mix(in srgb, var(--atb-color-text) 65%, var(--atb-color-background));
}


/* ── Safety net (ATB) ─────────────────────────────────── */
html { overflow-x: clip; }
body { overflow-x: clip; max-width: 100%; }
body[class] { max-inline-size: none; margin-inline: 0; padding-inline: 0; }
img, svg, video { max-width: 100%; height: auto; }
.site-main, .site-footer { overflow-wrap: anywhere; }
:where(.s) > * { min-inline-size: 0; }
.s-hero__title {
	font-size: clamp(2rem, 3.5vw + 0.5rem, 3rem);
	line-height: 1.1;
	max-inline-size: 22ch;
}
:where(.s-story__title, .s-offering__title, .s-steps__title, .s-checklist__title, .s-timeline__title, .s-specs__title, .s-team__title, .s-clients__title, .s-cards__title, .s-documents__title, .s-testimonials__title, .s-faq__title, .s-gallery__title, .s-pricing__title, .s-contact__title, .s-prose__title, .s-cta__title) {
	font-size: clamp(1.75rem, 2.5vw + 0.5rem, 2.5rem);
	line-height: 1.1;
	max-inline-size: 22ch;
}
.s-highlight__claim { font-size: clamp(1.75rem, 3vw + 0.5rem, 3rem); line-height: 1.1; }
.s-hero { min-block-size: auto; }
.s[data-position="first"]:not(.s-hero) { padding-block-start: clamp(2rem, 5vw, 4rem); }
:where(.s img) {
	max-block-size: min(78vh, 44rem);
	max-block-size: min(78svh, 44rem);
	object-fit: cover;
}
:where(.s-hero__image) {
	max-block-size: min(68vh, 34rem);
	max-block-size: min(68svh, 34rem);
}
.atb-section-grid :is(.s-specs__item, .s-contact__item),
.atb-no-bootstrap :is(.s-specs__item, .s-contact__item) {
	height: auto;
	block-size: auto;
}
.site-header .site-header__cta[data-platform]::after { content: none; }
@media (min-width: 64.0625rem) {
	.s-hero--split .s-hero__title[data-length="long"] {
		font-size: clamp(1.75rem, 2.5vw + 0.5rem, 2.5rem);
	}
}
@media (max-width: 64rem) {
	.s-hero, .s-hero--split { grid-template-columns: minmax(0, 1fr); }
	.s-hero__media { grid-row: auto; grid-column: 1; }
}
@media (max-width: 767px) {
	.s img { max-height: 55vh; object-fit: cover; }
}
