/* Ansora theme: 1:1 port of the live Bricks + ACSS 3.3.8 + Frames look.
   Tokens are unlayered in :root (values and clamp() formulas copied from the live automatic.css,
   root font size 62.5% as live, so 1rem = 10px), element resets in @layer base, components in
   @layer custom. Breakpoints are the live Bricks ones in em: 1210px 75.625em, 992px 62em,
   768px 48em, 480px 30em. */

@layer base, custom;

/* ---------------------------------------------------------------- fonts (PT Sans, self-hosted) */
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-latin-ext.woff2") format("woff2"); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-cyrillic.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-cyrillic-ext.woff2") format("woff2"); unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: "PT Sans"; font-style: italic; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-italic-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "PT Sans"; font-style: italic; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-italic-latin-ext.woff2") format("woff2"); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "PT Sans"; font-style: italic; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-italic-cyrillic.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "PT Sans"; font-style: italic; font-weight: 400; font-display: swap; src: url("/assets/fonts/PTSans-400-italic-cyrillic-ext.woff2") format("woff2"); unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/PTSans-700-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/PTSans-700-latin-ext.woff2") format("woff2"); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/PTSans-700-cyrillic.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "PT Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/PTSans-700-cyrillic-ext.woff2") format("woff2"); unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }

/* ---------------------------------------------------------------- tokens */
:root {
  --font: "PT Sans", sans-serif;

  --primary: #f8ae3f;
  --primary-light: #ffedb3;
  --primary-dark: #806200;
  --primary-ultra-dark: #332700;
  --primary-trans-10: rgb(248 174 63 / 0.1);
  --primary-trans-20: rgb(248 174 63 / 0.2);
  --primary-trans-30: rgb(248 174 63 / 0.3);
  --primary-trans-40: rgb(248 174 63 / 0.4);
  --primary-trans-70: rgb(248 174 63 / 0.7);
  --primary-trans-80: rgb(248 174 63 / 0.8);
  --primary-trans-90: rgb(248 174 63 / 0.9);
  --primary-dark-trans-10: rgb(128 98 0 / 0.1);
  --primary-dark-trans-80: rgb(128 98 0 / 0.8);
  --primary-ultra-dark-trans-20: rgb(51 39 0 / 0.2);
  --bg-ultra-dark: #1a1a1a;
  --bg-ultra-light: rgb(248 174 63 / 0.2);
  --bg-trans-1: rgb(0 0 0 / 0.2);
  --bg-trans-2: rgb(0 0 0 / 0.3);
  --neutral-dark: #404040;
  --neutral-ultra-light: #f2f2f2;
  --neutral-ultra-dark-trans-40: rgb(26 26 26 / 0.4);
  --neutral-ultra-dark-trans-90: rgb(26 26 26 / 0.9);
  --white: #fff;
  --white-trans-10: rgb(255 255 255 / 0.1);
  --text-color: rgb(255 255 255 / 0.5);
  --text-light-muted: rgb(255 255 255 / 0.7);
  --text-dark: #1a1a1a;
  --text-dark-muted: rgb(26 26 26 / 0.8);
  --danger: #dc3848;
  --whatsapp: #2db742;

  /* ACSS fluid scale, 360 to 1440 */
  --text-xs: clamp(1.2rem, calc(-0.0444444444vw + 1.216rem), 1.152rem);
  --text-s: clamp(1.3rem, calc(0.1296296296vw + 1.2533333333rem), 1.44rem);
  --text-m: clamp(1.6rem, calc(0.1851851852vw + 1.5333333333rem), 1.8rem);
  --text-l: clamp(1.92rem, calc(0.3055555556vw + 1.81rem), 2.25rem);
  --text-xl: clamp(2.304rem, calc(0.4708333333vw + 2.1345rem), 2.8125rem);
  --h1: clamp(3.2rem, calc(3.5185185185vw + 1.9333333333rem), 7rem);
  --h2: clamp(2.592rem, calc(1.461362963vw + 2.0659093333rem), 4.170272rem);
  --h3: clamp(2.16rem, calc(0.6740740741vw + 1.9173333333rem), 2.888rem);
  --h4: clamp(1.8rem, calc(0.1851851852vw + 1.7333333333rem), 2rem);
  --space-xs: clamp(1.3333333333rem, calc(-0.0160573332vw + 1.3564558932rem), 1.3506752532rem);
  --space-s: clamp(1.8004501125rem, calc(0.1847684143vw + 1.7339334834rem), 2rem);
  --space-m: clamp(2.4rem, calc(0.5555555556vw + 2.2rem), 3rem);
  --space-l: clamp(3.1992rem, calc(1.2044444444vw + 2.7656rem), 4.5rem);
  --space-xl: clamp(4.2645336rem, calc(2.3013577778vw + 3.4360448rem), 6.75rem);
  --space-xxl: clamp(5.6846232888rem, calc(4.1114599178vw + 4.2044977184rem), 10.125rem);
  --section-space-xs: clamp(2.7013505064rem, calc(1.2024532348vw + 2.2684673419rem), 4rem);
  --section-space-s: clamp(3.6009002251rem, calc(2.2213886805vw + 2.8012003001rem), 6rem);
  --section-space-m: clamp(4.8rem, calc(3.8888888889vw + 3.4rem), 9rem);
  --section-space-l: clamp(6.3984rem, calc(6.5755555556vw + 4.0312rem), 13.5rem);
  --gutter: clamp(1.6rem, calc(4.0740740741vw + 0.1333333333rem), 6rem);

  --content-width: 144rem;
  --width-m: calc(var(--content-width) * 0.4);
  --width-l: calc(var(--content-width) * 0.6);
  --width-xl: calc(var(--content-width) * 0.8);
  --content-gap: var(--space-m);
  --container-gap: var(--space-xl);
  --grid-gap: var(--space-l);
  --card-padding: var(--space-m);
  --card-gap: var(--space-s);

  --text-lh: calc(6px + 2ex);
  --heading-lh: calc(4px + 1.8ex);
  --radius: 2px;
  --divider: 1px solid rgb(0 0 0 / 0.2);
  --border: 1.5px solid var(--primary-trans-20);
  --transition: background 0.2s ease-in-out, color 0.2s ease-in-out, border 0.2s ease-in-out;
  --header-h: 0px;
}

/* ---------------------------------------------------------------- base */
@layer base {
  *, *::before, *::after { box-sizing: border-box; }
  html {
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    scroll-padding-top: var(--header-h);
    interpolate-size: allow-keywords;
  }
  html.lenis { scroll-behavior: auto; }
  html.lenis, html.lenis body { height: auto; }
  .lenis.lenis-stopped { overflow: clip; }
  .lenis [data-lenis-prevent] { overscroll-behavior: contain; }
  .lenis.lenis-smooth iframe { pointer-events: none; }

  body {
    margin: 0;
    min-block-size: 100vh;
    font-family: var(--font);
    font-size: var(--text-m);
    font-weight: 400;
    line-height: var(--text-lh);
    color: var(--text-color);
    background-color: var(--bg-ultra-dark);
    background-image:
      linear-gradient(var(--primary-dark-trans-10) 2px, transparent 2px),
      linear-gradient(90deg, var(--primary-dark-trans-10) 2px, transparent 2px),
      linear-gradient(var(--primary-dark-trans-10) 1px, transparent 1px),
      linear-gradient(90deg, var(--primary-dark-trans-10) 1px, transparent 1px);
    background-size: 100px 100px, 100px 100px, 50px 50px, 50px 50px;
    border-image: linear-gradient(to left, var(--bg-ultra-dark), var(--primary-ultra-dark-trans-20), var(--primary-ultra-dark-trans-20), var(--bg-ultra-dark)) fill 1;
    -webkit-font-smoothing: antialiased;
    overflow-x: clip;
    display: flex;
    flex-direction: column;
  }
  main { flex: 1 0 auto; }
  :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li, figure, blockquote) { margin: 0; }
  :where(h1, h2, h3, h4, h5, h6) {
    font-family: var(--font);
    /* Live asks for 500 but ships no 500 face, so browsers render the 400 face: keep the rendered look. */
    font-weight: 400;
    line-height: var(--heading-lh);
    color: var(--text-light-muted);
    text-wrap: balance;
  }
  h1 { font-size: var(--h1); }
  h2 { font-size: var(--h2); }
  h3 { font-size: var(--h3); }
  h4 { font-size: var(--h4); }
  /* ACSS line-height calc(6px + 2ex) resolves per element, so set it where text sits (inheriting would freeze the body value). */
  :where(p, li, figcaption, blockquote, dd, label, input, textarea) { line-height: var(--text-lh); }
  p, li, figcaption, blockquote { text-wrap: pretty; }
  :where(p, li, figcaption, blockquote):has(br) { text-wrap: wrap; }
  img, svg { display: block; max-inline-size: 100%; }
  img { block-size: auto; }
  input, button, textarea, select { font: inherit; color: inherit; }
  button { cursor: pointer; }
  a {
    color: var(--primary);
    text-underline-offset: 0.3em;
    transition: var(--transition);
  }
  @media (hover: hover) {
    a:hover { color: var(--primary-light); }
  }
  :focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
  [id] { scroll-margin-top: 0; }
  [hidden] { display: none !important; }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      scroll-behavior: auto !important;
    }
  }
}

/* ---------------------------------------------------------------- components */
@layer custom {
  /* ---------- utilities */
  .visually-hidden {
    position: absolute !important;
    inline-size: 1px !important;
    block-size: 1px !important;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
  }
  .nowrap, a[href^="tel:"], a[href^="mailto:"] { white-space: nowrap; }
  .skip-link {
    position: absolute;
    inset-block-start: 1rem;
    inset-inline-start: 1rem;
    z-index: 2000;
    padding: 1.2rem 2.4rem;
    background: var(--primary);
    color: var(--primary-ultra-dark);
    text-decoration: none;
    translate: 0 -200%;
  }
  .skip-link:focus { translate: 0; outline-color: var(--primary-dark); }
  main:focus, .site-footer:focus { outline: none; }

  .title--primary { color: var(--primary-trans-80); }
  .bg--glow {
    background-color: var(--bg-trans-2);
    border-block-start: 1px solid;
    border-image: linear-gradient(to left, transparent, var(--primary-trans-30), transparent) 1;
  }
  .container {
    inline-size: 100%;
    max-inline-size: var(--content-width);
    margin-inline: auto;
  }
  .prose > * + * { margin-block-start: 1em; }
  .prose em { font-style: italic; }

  /* ---------- buttons (ACSS .btn--primary) */
  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-inline-size: 14rem;
    padding: 0.9em 1.5em;
    border: 2px solid transparent;
    border-radius: var(--radius);
    font-weight: 400;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    transition: var(--transition);
  }
  .btn > span { text-box: trim-both cap alphabetic; }
  .btn--primary {
    background-color: var(--primary-trans-70);
    border-color: var(--primary-ultra-dark-trans-20);
    color: var(--primary-ultra-dark);
  }
  @media (hover: hover) and (pointer: fine) {
    .btn--primary:hover { background-color: var(--primary); border-color: var(--primary-trans-90); color: var(--primary-ultra-dark); }
  }
  .btn--primary:focus-visible { outline-color: var(--primary-dark); }

  /* ---------- header (not sticky, as live) */
  .header { position: relative; }
  .header__top {
    display: flex;
    min-block-size: 2.6em;
    padding: 0.5em var(--gutter);
    background-color: var(--bg-trans-2);
    font-size: var(--text-s);
  }
  .header__top-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    column-gap: 2em;
    row-gap: 0.5em;
    inline-size: 100%;
    max-inline-size: var(--content-width);
    margin-inline: auto;
  }
  .lang-switch {
    position: relative;
    display: flex;
    column-gap: var(--space-xs);
    padding: 0 var(--space-m) 0 0;
    margin: 0;
    list-style: none;
  }
  .lang-switch::after {
    content: "";
    position: absolute;
    inset-block-start: 15%;
    inset-inline-end: 0;
    block-size: 75%;
    border-inline-end: var(--border);
  }
  .lang-switch__link,
  .header__phone {
    color: var(--text-color);
    line-height: 1.6em;
    text-decoration: none;
  }
  .lang-switch__link { display: block; padding: 0 0.2em; }
  .lang-switch__link--current {
    text-decoration: underline;
    text-underline-offset: 0.25em;
    pointer-events: none;
  }
  .header__phone { display: flex; align-items: center; column-gap: 0.5em; white-space: nowrap; }
  .header__phone-icon { inline-size: 1.1em; block-size: 1.1em; flex: none; }
  @media (hover: hover) {
    .lang-switch__link:hover, .header__phone:hover { color: var(--primary-dark); text-decoration-color: var(--primary-dark); }
    .header__phone:hover .header__phone-icon { color: var(--primary); }
  }

  .header__main {
    padding: var(--space-s) var(--gutter);
    background-color: var(--bg-trans-1);
    border-block: var(--divider);
  }
  .header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--content-gap);
    max-inline-size: var(--content-width);
    margin-inline: auto;
  }
  .header__logo { flex: none; inline-size: 10em; }
  .header__logo img { inline-size: 100%; }
  .nav { flex: 1; }
  .nav__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--content-gap);
    padding: 0;
    margin: 0;
    list-style: none;
  }
  .nav__link {
    display: block;
    padding-block: 0.75em;
    color: var(--text-color);
    line-height: 1;
    text-decoration: none;
  }
  .nav__link--active { color: var(--primary); }
  @media (hover: hover) {
    .nav__link:hover { color: var(--primary); }
  }
  .header__cta { flex: none; font-size: calc(var(--text-s) * 1.1); }

  .burger {
    position: relative;
    z-index: 1001;
    display: none;
    flex: none;
    inline-size: 3rem;
    block-size: 2rem;
    padding: 0;
    margin-inline-start: auto;
    border: 0;
    background: none;
    color: var(--primary-trans-70);
  }
  .burger__bar {
    position: absolute;
    inset-inline: 0;
    block-size: 2px;
    background-color: currentColor;
    transition: all 0.1s;
  }
  .burger__bar:nth-child(1) { inset-block-start: 0.2rem; }
  .burger__bar:nth-child(2) { inset-block-start: calc(50% - 1px); }
  .burger__bar:nth-child(3) { inset-block-end: 0.2rem; }
  .burger[aria-expanded="true"] { color: var(--bg-ultra-light); }
  .burger[aria-expanded="true"] .burger__bar:nth-child(1) { inset-block-start: calc(50% - 1px); rotate: 45deg; }
  .burger[aria-expanded="true"] .burger__bar:nth-child(2) { opacity: 0; }
  .burger[aria-expanded="true"] .burger__bar:nth-child(3) { inset-block-end: calc(50% - 1px); rotate: -45deg; }
  .burger:focus-visible { outline-color: var(--primary); outline-offset: 4px; }

  @media (width <= 62em) {
    .nav { display: none; }
    .burger { display: block; }
    .header__cta { margin-inline-start: auto; }
    .header__cta + .burger { margin-inline-start: 0; }
  }
  @media (width <= 30em) {
    .header__top-inner { column-gap: 1em; }
    .lang-switch { padding-inline-end: var(--space-s); }
    .header__cta { display: none; }
    .header__cta + .burger { margin-inline-start: auto; }
  }

  /* ---------- mobile drawer (300px from the right, 0.2s, as live) */
  .drawer {
    position: fixed;
    inset: 0;
    z-index: 1000;
    visibility: hidden;
    transition: visibility 0s linear 0.2s;
  }
  .drawer.is-open { visibility: visible; transition-delay: 0s; }
  .drawer__overlay {
    position: absolute;
    inset: 0;
    background-color: rgb(0 0 0 / 0.25);
    opacity: 0;
    transition: opacity 0.2s;
  }
  .drawer.is-open .drawer__overlay { opacity: 1; }
  .drawer__panel {
    position: absolute;
    inset-block: 0;
    inset-inline-end: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    inline-size: min(300px, 100%);
    background-color: var(--neutral-ultra-dark-trans-90);
    overflow-y: auto;
    overscroll-behavior: contain;
    transform: translateX(100%);
    transition: transform 0.2s;
  }
  .drawer.is-open .drawer__panel { transform: none; }
  .drawer__list { padding: 0; margin: 0; list-style: none; }
  .drawer__link {
    display: block;
    padding: 0 30px;
    color: var(--white);
    font-size: var(--text-m);
    line-height: 60px;
    text-decoration: none;
    white-space: nowrap;
  }
  .drawer__link--active { color: var(--primary); }
  @media (hover: hover) {
    .drawer__link:hover { color: var(--primary); }
  }
  .drawer__link:focus-visible { outline-offset: -4px; }

  /* ---------- sections */
  .hero-index, .cta-11, .featured-front, .hero-bravo, .values, .services, .approvals, .contact-info {
    padding: var(--section-space-m) var(--gutter);
  }

  /* ---------- home hero */
  .hero-index { padding-block: 0; }
  .hero-index__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--container-gap);
  }
  .hero-index__info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--content-gap) * 2);
    padding-block: var(--section-space-m);
  }
  .hero-index__intro { display: flex; flex-direction: column; gap: var(--content-gap); }
  .hero-index__description { max-inline-size: var(--width-m); }
  .feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: calc(var(--grid-gap) / 2);
    inline-size: 100%;
    max-inline-size: calc(var(--width-m) * 1.25);
    padding: 0;
    list-style: none;
  }
  .feature-card {
    display: flex;
    flex-direction: column;
    gap: var(--card-gap);
    padding: 0 var(--card-padding) var(--card-padding);
    background-color: var(--bg-trans-1);
    border: 1px solid var(--white-trans-10);
    border-radius: var(--radius);
  }
  .feature-card__icon {
    inline-size: 2em;
    block-size: 2em;
    margin-block-start: calc(var(--card-padding) * -0.5);
    filter: drop-shadow(3px 5px 20px var(--primary));
  }
  .feature-card__heading { font-size: calc(var(--text-m) * 0.9); color: var(--text-light-muted); }

  .hero-index__media {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-m);
    block-size: 90svh;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to top, transparent, #000 50px, #000 calc(100% - 50px), transparent);
    mask-image: linear-gradient(to top, transparent, #000 50px, #000 calc(100% - 50px), transparent);
  }
  /* Live pitch = item margin + flex gap (60px at 1440); the end padding repeats the gap at the seam so -100% loops seamlessly. */
  .hero-index__list { display: flex; flex-direction: column; gap: var(--space-m); padding: 0; list-style: none; }
  .hero-index__column--up .hero-index__list { padding-block-end: var(--space-m); }
  .hero-index__column--down .hero-index__list { padding-block-start: var(--space-m); }
  .hero-index__column--up .hero-index__list { animation: marquee-up 133s linear infinite; }
  .hero-index__column--down .hero-index__list { animation: marquee-down 133s linear infinite; }
  .hero-index__column--up .hero-index__item { margin-block-end: var(--space-m); }
  .hero-index__column--down .hero-index__item { margin-block-start: var(--space-m); }
  .hero-index__media.is-paused .hero-index__list { animation-play-state: paused; }
  .hero-index__img { inline-size: 100%; border-radius: var(--radius); }
  @keyframes marquee-up { from { transform: translateY(0); } to { transform: translateY(-100%); } }
  @keyframes marquee-down { from { transform: translateY(-100%); } to { transform: translateY(0); } }
  @media (prefers-reduced-motion: reduce) {
    .hero-index__column--up .hero-index__list,
    .hero-index__column--down .hero-index__list { animation: none; }
    .hero-index__column--down .hero-index__list { transform: translateY(-100%); }
  }
  @media (width <= 62em) {
    .hero-index__grid { column-gap: var(--space-s); }
    .hero-index__media { gap: var(--space-s); }
    .feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
  @media (width <= 61.9375em) {
    .hero-index__column--up .hero-index__item { margin-block-end: var(--space-s); }
    .hero-index__column--down .hero-index__item { margin-block-start: var(--space-s); }
  }
  @media (width <= 48em) {
    .hero-index__grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .hero-index__info { order: 2; }
    .hero-index__media { order: 1; block-size: auto; aspect-ratio: 1 / 1; }
  }
  @media (width <= 30em) {
    .feature-grid { grid-template-columns: minmax(0, 1fr); gap: var(--grid-gap); }
  }

  /* ---------- home: three image + text rows (cta-11) */
  .cta-11 { display: flex; flex-direction: column; align-items: center; gap: var(--container-gap); }
  .cta-11__row {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    column-gap: var(--content-gap);
    inline-size: 100%;
    max-inline-size: var(--width-xl);
  }
  .cta-11__box {
    grid-column: 2 / -1;
    grid-row: 1;
    display: flex;
    flex-direction: column;
    gap: var(--content-gap);
    padding: var(--space-xl) var(--space-l) var(--space-xl) min(22vw, 22rem);
    border-radius: var(--radius);
  }
  .cta-11__media {
    position: relative;
    grid-column: 1 / 3;
    grid-row: 1;
    display: flex;
    flex-direction: column;
    padding-block: var(--space-m);
  }
  .cta-11__image {
    flex: 1 1 auto;
    inline-size: 100%;
    aspect-ratio: 6 / 4;
    object-fit: cover;
    border-radius: var(--radius);
  }
  .cta-11__row--reverse .cta-11__box { grid-column: 1 / -2; padding-inline: var(--space-l) min(22vw, 22rem); }
  .cta-11__row--reverse .cta-11__media { grid-column: 5 / 7; }
  @media (width <= 30em) {
    .cta-11__row { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .cta-11__box,
    .cta-11__row--reverse .cta-11__box { grid-column: auto; grid-row: auto; padding: var(--space-l); }
    .cta-11__media,
    .cta-11__row--reverse .cta-11__media { grid-column: auto; grid-row: auto; order: -1; padding-block: 0; }
  }

  /* ---------- home: completed projects card */
  .featured-front { padding-block-end: var(--container-gap); }
  .featured-front__card {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: var(--grid-gap);
    overflow: hidden;
    isolation: isolate;
    border-radius: var(--radius);
  }
  .featured-front__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: center;
    gap: var(--space-l);
    padding: var(--space-xxl) 0 var(--space-xxl) var(--space-xxl);
  }
  .featured-front__body { display: flex; flex-direction: column; gap: var(--content-gap); }
  .featured-front__text { display: flex; flex-direction: column; gap: 1em; max-inline-size: var(--width-m); }
  .icon-link {
    display: inline-flex;
    align-items: center;
    gap: 0.25em;
    color: var(--text-light-muted);
    text-decoration: underline;
    text-underline-offset: 0.25em;
  }
  .icon-link__icon { inline-size: 1em; block-size: 1em; transition: translate 300ms ease-in-out; }
  @media (hover: hover) {
    .icon-link:hover { color: var(--primary); }
    .icon-link:hover .icon-link__icon { translate: 0.25em 0; }
  }
  .featured-front__media { position: relative; align-self: stretch; aspect-ratio: 4 / 3; }
  .featured-front__grid {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-end: 50%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--grid-gap);
    inline-size: 49.4rem;
    min-inline-size: 28rem;
    padding: 0;
    margin: 0;
    list-style: none;
    transform: translateX(50%) translateY(-50%) rotate(12deg);
  }
  .featured-front__tile { position: relative; aspect-ratio: 1 / 1; }
  .featured-front__tile:first-child { grid-column: 1 / -1; }
  .featured-front__img {
    position: absolute;
    inset: 0;
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
    border-radius: var(--radius);
  }
  @media (width <= 62em) {
    .featured-front__card { grid-template-columns: minmax(0, 1fr); }
    .featured-front__info { padding-inline-end: var(--space-xl); }
    .featured-front__media {
      overflow: hidden;
      -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 120px), transparent);
      mask-image: linear-gradient(to bottom, #000 calc(100% - 120px), transparent);
    }
    .featured-front__grid { inline-size: 75%; }
  }
  @media (width <= 30em) {
    .featured-front__info { padding: var(--space-l) var(--space-m); }
  }

  /* ---------- testimonials (home footer block) */
  .testimonials {
    display: flex;
    flex-direction: column;
    gap: calc(var(--grid-gap) / 2 + var(--content-gap));
    padding: 0 0 var(--section-space-m);
  }
  .testimonials__intro { padding-inline: var(--gutter); text-align: center; }
  .slider { position: relative; --per: 3; --gap: var(--grid-gap); }
  .slider__viewport { overflow: hidden; touch-action: pan-y; cursor: ew-resize; }
  .slider__track {
    display: flex;
    gap: var(--gap);
    padding: 0;
    margin: 0;
    list-style: none;
    will-change: transform;
    user-select: none;
  }
  .slider__slide {
    display: flex;
    flex: 0 0 calc((100% - var(--gap) * (var(--per) - 1)) / var(--per));
  }
  .slider__arrows {
    position: absolute;
    inset-inline: 0;
    inset-block-end: -4rem;
    display: flex;
    justify-content: space-between;
    padding-inline: 0.5em;
    pointer-events: none;
  }
  .slider__arrow {
    display: grid;
    place-items: center;
    inline-size: 3.2rem;
    block-size: 3.2rem;
    padding: 0;
    border: 0;
    border-radius: 100%;
    background: transparent;
    color: var(--primary-trans-40);
    pointer-events: auto;
    transition: opacity 0.3s ease, color 0.3s ease, background-color 0.3s ease;
  }
  .slider__arrow-icon { inline-size: 100%; block-size: 100%; }
  @media (width <= 62em) {
    .slider { --per: 2; }
  }
  @media (width <= 30em) {
    .testimonials { padding-block-end: var(--section-space-l); }
    .slider__slide { flex-basis: 90vw; }
    .slider__arrows { padding-inline: var(--gutter); }
  }
  .testimonial-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: var(--card-gap);
    inline-size: 100%;
    padding: var(--space-m);
    border: 1px solid var(--primary-trans-10);
    border-radius: var(--radius);
  }
  .testimonial-card__quote { font-size: calc(var(--text-s) * 1.1); }
  .testimonial-card__quote > * + * { margin-block-start: 1em; }
  .testimonial-card__footer {
    display: flex;
    flex-grow: 1;
    align-items: flex-end;
    justify-content: space-between;
    gap: 3rem 1rem;
  }
  .testimonial-card__person { display: flex; flex-direction: column; gap: 0.25em; }
  .testimonial-card__name { font-size: var(--text-xs); }
  .rating { display: flex; gap: 0.07em; font-size: var(--text-xs); color: var(--primary-dark); }
  .rating__icon { inline-size: 0.8em; block-size: 0.8em; }
  .testimonial-card__verified {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.2em;
    inline-size: 8.5rem;
    font-size: var(--text-xs);
    line-height: 1;
  }
  .testimonial-card__badge { inline-size: auto; block-size: 1.6rem; filter: contrast(60%); }

  /* ---------- footer CTA (CTA Echo) */
  .cta-echo {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    block-size: 16em;
    padding: var(--space-l);
    overflow: hidden;
  }
  .cta-echo__bg, .cta-echo__overlay { position: absolute; inset: 0; z-index: -1; inline-size: 100%; block-size: 100%; }
  .cta-echo__bg { object-fit: cover; object-position: 50% 55%; }
  .cta-echo__overlay { background-color: var(--primary-trans-70); }
  .cta-echo__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-m);
    max-inline-size: 35em;
    padding-block-end: var(--content-gap);
    border-block-end: 1px solid var(--neutral-ultra-dark-trans-40);
    text-align: center;
  }
  .cta-echo__heading { color: var(--text-dark); }
  .cta-echo__lede { font-size: var(--text-l); color: var(--text-dark-muted); }
  .cta-echo__lede a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
  @media (hover: hover) {
    .cta-echo__lede a:hover { color: var(--text-dark); }
  }
  .cta-echo__lede a:focus-visible { outline-color: var(--text-dark); }

  /* ---------- footer (Footer Golf) */
  .footer__top { padding: var(--section-space-s) var(--gutter); }
  .footer__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--grid-gap);
    max-inline-size: var(--content-width);
    margin-inline: auto;
  }
  .footer__logo { flex: none; inline-size: 7.7em; }
  .footer__logo img { inline-size: 100%; }
  .footer-nav__list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--content-gap);
    padding: 0;
    margin: 0;
    list-style: none;
  }
  .footer-nav__link {
    display: block;
    padding-block: 0.75em;
    color: var(--text-light-muted);
    font-size: var(--text-s);
    line-height: 1;
    text-decoration: none;
  }
  .footer-nav__link--active { color: var(--primary); }
  @media (hover: hover) {
    .footer-nav__link:hover { color: var(--primary); }
  }
  .footer__end { display: flex; align-items: center; gap: var(--content-gap); margin-inline-start: auto; }
  .social { display: flex; gap: 0.3em; padding: 0; margin: 0; list-style: none; }
  .social__link {
    display: flex;
    padding: 0.25em;
    color: var(--primary-dark);
    transition: all 0.3s ease-in-out, color 0.2s ease-in-out;
  }
  .social__icon { inline-size: 2.2em; block-size: 2.2em; }
  @media (hover: hover) {
    .social__link:hover { color: var(--primary); transform: translateY(-0.015em); }
  }
  .footer__cta { font-size: var(--text-s); }
  .footer__bottom { padding: var(--space-xs) var(--gutter); background-color: var(--bg-ultra-dark); }
  .footer__copy { font-size: var(--text-xs); color: var(--text-light-muted); text-align: center; }
  @media (width <= 62em) {
    .footer__logo { inline-size: 10em; }
    .footer__end { margin-inline-start: 0; }
  }
  @media (width <= 48em) {
    .footer__inner { flex-direction: column; align-items: flex-start; }
    .footer__end { flex-direction: column; align-items: flex-start; }
  }
  @media (width <= 48em) {
    /* Keep the footer button clear of the fixed WhatsApp button at the end of the page (live overlap). */
    body:has(.wa) .footer__top { padding-block-end: max(var(--section-space-s), 7rem); }
  }
  @media (width <= 30em) {
    .footer-nav__list { flex-direction: column; gap: 0; }
    .footer-nav__link { font-size: var(--text-m); }
    .footer__cta { font-size: var(--text-m); }
  }

  /* ---------- inner hero (Hero Bravo) */
  .hero-bravo__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: calc(var(--content-gap) * 2); }
  .hero-bravo--split .hero-bravo__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hero-bravo__content { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-m); }
  .hero-bravo__heading { max-inline-size: 25.7ch; font-size: calc(var(--h2) * 1.2); }
  .hero-bravo__text { max-inline-size: 80ch; }
  .hero-bravo__text a { font-size: inherit; }
  @media (width <= 48em) {
    .hero-bravo--split .hero-bravo__grid { grid-template-columns: minmax(0, 1fr); }
  }

  /* ---------- centred section intro (services, approvals) */
  .section-intro {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--content-gap);
    text-align: center;
  }
  .section-intro__heading { font-size: var(--h3); }
  .section-intro__lede { max-inline-size: 70ch; }
  @media (width <= 30em) {
    .section-intro { align-items: flex-start; text-align: start; }
  }

  /* ---------- about: values around the emblem (Feature Section November) */
  .values { padding-block-end: 0; }
  .values__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: end;
    gap: var(--grid-gap);
  }
  .values__list {
    grid-row: 1;
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--content-gap);
    block-size: 100%;
    padding: 0 0 var(--container-gap);
    list-style: none;
  }
  .value-card {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    gap: var(--card-gap);
    padding: var(--card-padding);
  }
  .value-card:nth-child(odd) { grid-column-start: 1; text-align: end; }
  .value-card:nth-child(even) { grid-column-start: 3; }
  .value-card__heading { font-size: var(--h3); }
  .value-card__text { color: var(--text-light-muted); }
  .values__emblem {
    grid-row: 1;
    grid-column: 2;
    padding-inline: var(--space-m);
    filter: drop-shadow(3px 5px 20px var(--primary-dark-trans-80));
  }
  .values__emblem-svg { inline-size: 100%; block-size: auto; aspect-ratio: 202.7 / 293.2; }
  @media (width <= 62em) {
    .values__list { grid-row: 2; grid-template-columns: minmax(0, 1fr); }
    .value-card:nth-child(odd) { text-align: start; }
    .value-card:nth-child(even) { grid-column-start: 1; }
    .values__emblem { grid-column: 1 / -1; aspect-ratio: 1 / 1; display: flex; justify-content: center; }
    .values__emblem-svg { inline-size: auto; block-size: 100%; }
  }

  /* ---------- services list */
  .services__inner { display: flex; flex-direction: column; align-items: center; gap: calc(var(--content-gap) * 2); }
  .services-list {
    inline-size: 100%;
    columns: 4;
    column-gap: var(--grid-gap);
    padding: 0 0 0 1em;
    margin: 0;
    list-style: none;
    text-indent: -1.075em;
  }
  .services-list__item { break-inside: avoid; }
  .services-list__item + .services-list__item { margin-block-start: 0.5em; }
  .services-list__item::before { content: "\2713"; margin-inline-end: 0.3em; color: var(--primary); }
  @media (width <= 48em) { .services-list { columns: 3; } }
  @media (width <= 30em) { .services-list { columns: 1; } }

  /* ---------- approvals accordion (native details, exclusive via name) */
  .approvals__inner { display: flex; flex-direction: column; align-items: center; gap: var(--container-gap); }
  .accordion { display: flex; flex-direction: column; inline-size: 100%; max-inline-size: var(--width-l); }
  .accordion__item { scroll-margin-top: var(--space-m); }
  .accordion__summary {
    display: flex;
    align-items: flex-start;
    font-size: var(--h3);
    justify-content: space-between;
    gap: var(--space-s);
    padding: var(--section-space-xs);
    border-radius: var(--radius);
    cursor: pointer;
    list-style: none;
    transition: 0.3s ease-out;
  }
  .accordion__summary::-webkit-details-marker { display: none; }
  .accordion__summary:focus-visible { outline-offset: -2px; }
  .accordion__title {
    padding-block: max(0px, (var(--text-m) * 2 - (4px + 1.8ex)) / 2);
    font-size: var(--h3);
    color: var(--text-light-muted);
    transition: color 0.3s ease-out;
  }
  .accordion__item[open]:not(.is-closing) .accordion__title { color: var(--primary-trans-70); }
  /* Icon 2em of the body size (live); the title is padded to the icon height so the row matches live and a wrapped title keeps the icon on its first line. */
  .accordion__icon {
    flex: none;
    inline-size: calc(var(--text-m) * 2);
    block-size: calc(var(--text-m) * 2);

    color: var(--bg-ultra-light);
    transition: transform 0.3s ease-in-out;
  }
  .accordion__item[open]:not(.is-closing) .accordion__icon { transform: rotate(45deg); }
  .accordion__body { padding: 0 var(--section-space-xs) var(--section-space-xs); }
  .accordion__item::details-content {
    block-size: 0;
    overflow: clip;
    transition: block-size 0.3s ease-out, content-visibility 0.3s allow-discrete;
  }
  .accordion__item[open]::details-content { block-size: auto; }
  .accordion:is(.is-instant, .is-js) .accordion__item::details-content { transition: none; }
  @media (prefers-reduced-motion: reduce) {
    .accordion__item::details-content { transition: none; }
  }
  @media (hover: hover) {
    .accordion__summary:hover .accordion__title { color: var(--primary-trans-70); }
  }

  /* ---------- contact: form */
  .contact-form { position: relative; display: flex; flex-direction: column; gap: var(--space-m); text-align: start; }
  .contact-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.4rem 2rem; }
  .field { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 0.6rem; }
  .field--half { grid-column: auto; }
  .field__input {
    inline-size: 100%;
    min-block-size: 5rem;
    padding: 0.9rem 1.8rem;
    border: 1px solid var(--primary-trans-30);
    border-radius: var(--radius);
    background-color: var(--neutral-dark);
    color: var(--neutral-ultra-light);
    font-size: max(1.8rem, 16px);
    line-height: 3rem;
    outline: none;
    transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  }
  .field__input::placeholder { color: rgb(242 242 242 / 0.55); opacity: 1; }
  .field__input--area { min-block-size: calc(4lh + 2rem); line-height: 1.4; resize: vertical; field-sizing: content; }
  .field__input:focus-visible,
  .field__input:focus { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary); }
  .field__input[aria-invalid="true"] { border-color: var(--danger); }
  .field__input[aria-invalid="true"]:focus { box-shadow: 0 0 0 1px var(--danger); }
  .field__error { font-size: 1.4rem; line-height: 1.4; color: var(--danger); }
  .contact-form__submit { inline-size: 100%; font-size: 1.8rem; padding-block: 0.9em; }
  .contact-form__submit:disabled { opacity: 0.6; cursor: progress; }
  /* Turnstile, appearance interaction-only (fleet rule, Sten 2026-11-11): no box and no reserved space for normal
     visitors; the box opens (.is-interactive) only when Cloudflare needs the visitor. The slot is always out of flow,
     anchored under the button (hero bottom padding + the next section's top padding hold the 65 px box), so opening
     it moves nothing: in flow it pushed .contact-info down 65 px, CLS 0.17 on every headless/bot visit (Lighthouse
     desktop, D21 2026-11-12). line-height/font-size 0 keep the inline iframe off a text baseline. */
  .contact-form__turnstile {
    position: absolute; inset-block-start: calc(100% + 1.2rem); inset-inline-start: 0; z-index: 2;
    line-height: 0; font-size: 0;
  }
  .contact-form__turnstile.is-interactive { min-block-size: 65px; }
  .contact-form__status { font-size: 1.6rem; color: var(--text-light-muted); }
  .contact-form__status[data-state="error"] { color: var(--danger); }
  .contact-form__success { padding: var(--space-m); border: 1px solid var(--primary-trans-30); border-radius: var(--radius); color: var(--text-light-muted); }
  .contact-form__success:focus { outline: none; }
  @media (width <= 48em) {
    .contact-form__grid { grid-template-columns: minmax(0, 1fr); }
  }

  /* ---------- contact: info cards + map */
  .contact-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--grid-gap);
    padding: 0;
    margin: 0;
    list-style: none;
  }
  .contact-card { display: flex; gap: var(--card-gap); padding: var(--card-padding); }
  .contact-card__icon { flex: none; inline-size: var(--text-xl); block-size: var(--text-xl); color: var(--primary-trans-80); }
  .contact-card__body { display: flex; flex-direction: column; gap: var(--card-gap); }
  .contact-card__heading { font-size: var(--h4); }
  .contact-card__text { color: var(--text-light-muted); }
  .contact-card__link { color: inherit; text-decoration: none; }
  @media (hover: hover) {
    .contact-card__link:hover { color: var(--primary); }
  }
  @media (width <= 62em) { .contact-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (width <= 48em) { .contact-cards { grid-template-columns: minmax(0, 1fr); } }
  .map { block-size: 40rem; }
  .map__frame { display: block; inline-size: 100%; block-size: 40rem; border: 0; }

  /* ---------- WhatsApp button + popup (EN pages, "WhatsApp for WordPress" look) */
  .wa { font-family: Arial, Helvetica, sans-serif; }
  .wa__toggle {
    position: fixed;
    inset-block-end: 3rem;
    inset-inline-end: 3rem;
    z-index: 999;
    display: grid;
    place-items: center;
    inline-size: 5.6rem;
    block-size: 5.6rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background-color: var(--whatsapp);
    color: var(--white);
    box-shadow: 0 6px 8px 2px rgb(0 0 0 / 0.14);
  }
  .wa__toggle:focus-visible { outline-color: var(--white); outline-offset: 3px; }
  .wa__icon { grid-area: 1 / 1; transition: transform 0.4s ease, opacity 0.4s ease; }
  .wa__icon--open { inline-size: 3rem; block-size: 3rem; }
  .wa__icon--close { inline-size: 2.2rem; block-size: 2.2rem; opacity: 0; transform: scale(0) rotate(-1turn); }
  .wa.is-open .wa__icon--open { opacity: 0; transform: scale(0) rotate(1turn); }
  .wa.is-open .wa__icon--close { opacity: 1; transform: none; }
  .wa__popup {
    position: fixed;
    inset-block-end: 10.2rem;
    inset-inline-end: 3rem;
    z-index: 998;
    inline-size: 35.1rem;
    max-inline-size: calc(100% - 5rem);
    overflow: hidden;
    border-radius: 5px 5px 8px 8px;
    box-shadow: 0 10px 10px 4px rgb(0 0 0 / 0.04);
    opacity: 0;
    visibility: hidden;
    transform: translateY(5rem);
    transition: all 0.4s ease;
  }
  .wa.is-open .wa__popup { opacity: 1; visibility: visible; transform: none; }
  @media (hover: hover) {
    .wa__popup:hover { box-shadow: 0 10px 10px 4px rgb(32 32 37 / 0.23); }
  }
  .wa__head { position: relative; padding: 1.5rem 4.3rem 1.7rem 7.4rem; background-color: var(--whatsapp); }
  .wa__head-icon { position: absolute; inset-block-start: 2rem; inset-inline-start: 2.4rem; inline-size: 3.3rem; block-size: 3.3rem; color: var(--white); }
  .wa__title { padding-block: 0.2rem 2rem; font-size: 1.8rem; line-height: 2.4rem; color: var(--white); }
  .wa__body { padding: 1.3rem 2rem 2.1rem 1.9rem; background-color: var(--white); }
  .wa__notice { padding: 0 0.3rem; font-size: 1.1rem; line-height: 1.4; color: #6f7581; }
  .wa__account {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin-block-start: 1.4rem;
    padding: 1.3rem 4rem 1.2rem 1.2rem;
    border-inline-start: 2px solid var(--whatsapp);
    border-radius: 2px 4px;
    background-color: #f5f7f9;
    text-decoration: none;
    transition: background-color 0.4s ease, box-shadow 0.4s ease;
  }
  @media (hover: hover) {
    .wa__account:hover { background-color: var(--white); box-shadow: 0 7px 15px 1px rgb(55 62 70 / 0.07); }
  }
  .wa__account:focus-visible { outline-color: var(--whatsapp); outline-offset: 0; }
  .wa__account-icon { position: absolute; inset-block-start: 50%; inset-inline-end: 1.4rem; inline-size: 2rem; block-size: 2rem; margin-block-start: -1rem; color: var(--whatsapp); }
  .wa__avatar { flex: none; inline-size: 4.8rem; block-size: 4.8rem; color: var(--white); }
  .wa__txt { display: flex; flex-direction: column; gap: 0.2rem; }
  .wa__name { font-size: 1.4rem; line-height: 1.2; color: #363c47; }
  .wa__label { font-size: 1.1rem; line-height: 1.1; color: #6f7378; }

  /* ---------- 404 */
  .not-found .hero-bravo__content { min-block-size: 30vh; justify-content: center; }
}
