/* =========================================================
   HERON TECHNOLOGIES — SHARED SITE STYLESHEET
   Extracted from the site's common design system (nav, footer,
   sections, buttons, cards, ambient background, reveal/scroll
   effects). Page-specific styles live in each template's
   {% block extra_css %}.
   ========================================================= */


    /* =========================================================
       ROOT
       ========================================================= */

    :root {
      --bg: #070908;
      --bg-soft: #0b0e0c;
      --panel: #101410;
      --panel-2: #151a15;

      --lime: #33c6ff;
      --lime-soft: #1ea7e6;
      --lime-pale: #aee6ff;

      --white: #f7f8f4;
      --text: #eef0e9;
      --muted: #9da59a;

      --border: rgba(255, 255, 255, 0.10);
      --lime-border: rgba(51, 198, 255, 0.25);

      --shadow:
        0 30px 80px rgba(0, 0, 0, 0.45);

      --radius-sm: 14px;
      --radius-md: 22px;
      --radius-lg: 32px;
      --radius-xl: 44px;

      --container: 1180px;
    }


    /* =========================================================
       RESET
       ========================================================= */

    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    img, svg, video {
      max-width: 100%;
      height: auto;
      display: block;
    }

    table {
      max-width: 100%;
    }

    body {
      min-height: 100vh;

      font-family:
        "Manrope",
        sans-serif;

      color:
        var(--text);

      background:
        radial-gradient(
          circle at 12% 8%,
          rgba(51, 198, 255, 0.08),
          transparent 27%
        ),
        radial-gradient(
          circle at 88% 34%,
          rgba(51, 198, 255, 0.045),
          transparent 24%
        ),
        var(--bg);

      line-height: 1.7;

      overflow-x: hidden;
    }

    body::before {
      content: "";

      position: fixed;
      inset: 0;

      z-index: -3;

      pointer-events: none;

      background-image:
        linear-gradient(
          rgba(255, 255, 255, 0.025) 1px,
          transparent 1px
        ),
        linear-gradient(
          90deg,
          rgba(255, 255, 255, 0.025) 1px,
          transparent 1px
        );

      background-size:
        72px 72px;

      mask-image:
        linear-gradient(
          to bottom,
          rgba(0, 0, 0, 0.9),
          transparent 92%
        );
    }

    ::selection {
      color: #050705;
      background: var(--lime);
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    img,
    svg {
      display: block;
    }

    button {
      font: inherit;
    }

    .container {
      width:
        min(
          calc(100% - 40px),
          var(--container)
        );

      margin-inline: auto;
    }


    /* =========================================================
       AMBIENT BACKGROUND
       ========================================================= */

    .ambient {
      position: fixed;
      inset: 0;

      z-index: -2;

      pointer-events: none;

      overflow: hidden;
    }

    .ambient-orb {
      position: absolute;

      border-radius: 50%;

      filter: blur(12px);

      opacity: 0.7;
    }

    .ambient-orb.one {
      width: 520px;
      height: 520px;

      right: -220px;
      top: 100px;

      background:
        radial-gradient(
          circle,
          rgba(51, 198, 255, 0.10),
          transparent 68%
        );

      animation:
        ambientFloat 9s
        ease-in-out
        infinite;
    }

    .ambient-orb.two {
      width: 400px;
      height: 400px;

      left: -190px;
      top: 760px;

      background:
        radial-gradient(
          circle,
          rgba(51, 198, 255, 0.06),
          transparent 70%
        );

      animation:
        ambientFloat 11s
        ease-in-out
        infinite reverse;
    }


    /* =========================================================
       NAVBAR
       ========================================================= */

     .site-header {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 1000;

      padding: 18px 0;
      transition:
        background 0.35s ease,
        border-color 0.35s ease,
        padding 0.35s ease;
    }


    .site-header.scrolled {
      padding: 10px 0;
      background: rgba(7, 9, 8, 0.82);
      border-bottom: 1px solid var(--border);
      backdrop-filter: blur(20px);
    }
    .nav-wrap {
      display: flex;

      align-items: center;
      justify-content: space-between;

      gap: 30px;
    }


    /* BRAND */

    .brand-logo {
      height: 52px;
      width: auto;
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 12px;

      font-family: "Space Grotesk", sans-serif;
      font-size: 20px;
      font-weight: 700;
      letter-spacing: -0.5px;
    }

  .brand-mark {
      width: 42px;
      height: 42px;
      border-radius: 50%;

      display: grid;
      place-items: center;

      color: #050705;
      background: var(--lime);

      box-shadow:
        0 0 35px rgba(51, 198, 255, 0.22);
    }

    .brand:hover .brand-mark {
      transform:
        rotate(-7deg)
        scale(1.06);

      box-shadow:
        0 0 0 1px
        rgba(51, 198, 255, 0.35),

        0 0 45px
        rgba(51, 198, 255, 0.28);
    }

    .brand-mark svg {
      width: 25px;
      height: 25px;
    }

    .brand-text {
      display: flex;

      flex-direction: column;

      line-height: 1;
    }

    .brand-text strong {
      color:
        var(--white);

      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        19px;

      font-weight:
        700;

      letter-spacing:
        -0.5px;
    }

    .brand-text small {
      margin-top: 5px;

      color:
        var(--lime);

      font-size:
        8px;

      font-weight:
        800;

      letter-spacing:
        2.1px;
    }


    /* NAV LINKS */

    .nav-links {
      display: flex;
      align-items: center;
      gap: 28px;
    }

   .nav-links a {
      display: inline-flex;
      align-items: center;
      white-space: nowrap;

      color: #c8cec4;
      font-size: 14px;
      font-weight: 600;
      transition: color 0.25s ease;
    }

    .nav-links a:hover {
      color: var(--lime);
    }

    .nav-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;

      min-height: 46px;
      padding: 0 25px;

      border-radius: 999px;
      background: var(--lime);
      color: #070907 !important;

      font-weight: 800 !important;
    }

    /* MOBILE BUTTON */

    .menu-btn {
      display: none;

      width: 46px;
      height: 46px;

      padding: 0;

      border:
        1px solid var(--border);

      border-radius:
        50%;

      background:
        rgba(255, 255, 255, 0.04);

      cursor: pointer;

      align-items: center;
      justify-content: center;

      flex-direction: column;

      gap: 5px;
    }

    .menu-btn span {
      display: block;

      width: 18px;
      height: 1.5px;

      border-radius:
        999px;

      background:
        var(--white);

      transition:
        transform 0.3s ease,
        opacity 0.3s ease;
    }

    .menu-btn.active span:nth-child(1) {
      transform:
        translateY(6.5px)
        rotate(45deg);
    }

    .menu-btn.active span:nth-child(2) {
      opacity: 0;
    }

    .menu-btn.active span:nth-child(3) {
      transform:
        translateY(-6.5px)
        rotate(-45deg);
    }


    /* =========================================================
       COMMON
       ========================================================= */

    .eyebrow {
      display: inline-flex;

      align-items: center;

      gap: 9px;

      color:
        var(--lime);

      font-size:
        11px;

      font-weight:
        800;

      letter-spacing:
        1.8px;

      text-transform:
        uppercase;
    }

    .eyebrow::before {
      content: "";

      width: 20px;
      height: 1px;

      background:
        var(--lime);

      box-shadow:
        0 0 10px
        rgba(51, 198, 255, 0.7);
    }

    .section {
      position: relative;

      padding:
        120px 0;
    }

    .section-alt {
      background:
        radial-gradient(
          circle at 82% 18%,
          rgba(51, 198, 255, 0.06),
          transparent 28%
        ),
        #0a0d0a;

      border-top:
        1px solid var(--border);

      border-bottom:
        1px solid var(--border);
    }

    .section-head {
      max-width:
        760px;

      margin-bottom:
        55px;
    }

    .section-head h2,
    .grid-2 h2 {
      margin-top:
        17px;

      color:
        var(--white);

      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        clamp(
          36px,
          5vw,
          62px
        );

      line-height:
        1.03;

      letter-spacing:
        -2.6px;
    }

    .section-head p {
      margin-top:
        18px;

      color:
        var(--muted);
    }


    /* =========================================================
       PAGE HEADER
       ========================================================= */
.page-header {
  position: relative;

  min-height: 90vh;

  display: flex;
  align-items: flex-end;

  padding: 170px 0 90px;

  overflow: hidden;

  border-bottom: 1px solid var(--border);

  background-image:
    linear-gradient(
      180deg,
      rgba(7, 9, 8, 0.88) 0%,
      rgba(7, 9, 8, 0.75) 40%,
      rgba(7, 9, 8, 0.96) 100%
    ),
    url("/static/images/page-bg.webp");

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

    .page-header::before {
      content: "";

      position: absolute;

      width:
        620px;

      height:
        620px;

      right:
        -180px;

      top:
        -140px;

      border-radius:
        50%;

      background:
        radial-gradient(
          circle,
          rgba(51, 198, 255, 0.16),
          rgba(51, 198, 255, 0.035) 42%,
          transparent 70%
        );

      animation:
        breathe 5s
        ease-in-out
        infinite;
    }

    .page-header::after {
      content: "";
      
      position: absolute;

      left:
        30%;

      bottom:
        200px;

      width:
        430px;

      height:
        430px;

      border-radius:
        50%;

      border:
        1px solid
        rgba(51, 198, 255, 0.18);

      box-shadow:
        0 0 0 55px
        rgba(51, 198, 255, 0.025),

        0 0 0 110px
        rgba(51, 198, 255, 0.014);
    }

    .page-header .container {
      position: relative;

      z-index: 2;
    }

    .breadcrumb {
      display: flex;

      align-items: center;

      gap: 10px;

      margin-bottom: 32px;
      color:
        var(--muted);

      font-size:
        12px;

      font-weight:
        600;

      text-transform:
        uppercase;

      letter-spacing:
        1px;
    }

    .breadcrumb a {
      color:
        var(--white);

      transition:
        color 0.25s ease;
    }

    .breadcrumb a:hover {
      color:
        var(--lime);
    }

    .breadcrumb .sep {
      color:
        var(--lime);
    }

    .page-header h1 {
      max-width:1000px;
      margin-top:20px;
      color:var(--white);
      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        clamp(
          54px,
          8vw,
          104px
        );

      line-height:
        0.94;

      letter-spacing:
        -5px;
    }

    .page-header p {
      max-width: 640px;

      margin-top:
        28px;
      color:
        #abb3a8;

      font-size:
        17px;

      line-height:
        1.8;
    }


    /* =========================================================
       WHO WE ARE
       ========================================================= */

    .grid-2 {
      display: grid;

      grid-template-columns:
        1fr 1fr;

      gap:
        70px;

      align-items:
        start;
    }

    .grid-2 > div:first-child p {
      margin-top:
        22px;

      color:
        var(--muted);

      font-size:
        15px;

      line-height:
        1.9;
    }


    /* =========================================================
       MISSION / VISION CARDS
       ========================================================= */

    .card {
      position: relative;

      min-height:
        260px;

      padding:
        30px;

      border:
        1px solid var(--border);

      border-radius:
        var(--radius-md);

      background:
        linear-gradient(
          145deg,
          rgba(255, 255, 255, 0.055),
          rgba(255, 255, 255, 0.018)
        );

      overflow: hidden;

      transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
    }

    .card::before {
      content: "";

      position: absolute;

      width:
        190px;

      height:
        190px;

      right:
        -100px;

      top:
        -100px;

      border-radius:
        50%;

      background:
        radial-gradient(
          circle,
          rgba(51, 198, 255, 0.16),
          transparent 68%
        );

      opacity: 0;

      transition:
        opacity 0.35s ease;
    }

    .card::after {
      content: "";

      position: absolute;

      left: 0;
      bottom: 0;

      width: 0;
      height: 2px;

      background:
        var(--lime);

      transition:
        width 0.4s ease;
    }

    .card:hover {
      transform:
        translateY(-8px);

      border-color:
        var(--lime-border);

      box-shadow:
        0 30px 65px
        rgba(0, 0, 0, 0.36);
    }

    .card:hover::before {
      opacity: 1;
    }

    .card:hover::after {
      width: 100%;
    }

    .card-icon {
      width:
        58px;

      height:
        58px;

      display:
        grid;

      place-items:
        center;

      margin-bottom:
        30px;

      border:
        1px solid
        var(--lime-border);

      border-radius:
        18px;

      color:
        var(--lime);

      background:
        rgba(51, 198, 255, 0.08);
    }

    .card-icon svg {
      width:
        27px;

      height:
        27px;
    }

    .card-ref {
      position:
        absolute;

      top:
        28px;

      right:
        28px;

      color:
        #6d756b;

      font-size:
        10px;

      font-weight:
        800;

      letter-spacing:
        1.5px;
    }

    .card h3 {
      color:
        var(--white);

      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        25px;

      letter-spacing:
        -0.7px;
    }

    .card p {
      margin-top:
        12px;

      color:
        var(--muted);

      font-size:
        14px;

      line-height:
        1.8;
    }


    /* =========================================================
       STATS
       ========================================================= */

    .stats-strip {
      position:
        relative;

      padding:
        20px 0 70px;
    }

    .stats-grid {
      display:
        grid;

      grid-template-columns:
        repeat(4, 1fr);

      border:
        1px solid
        var(--border);

      border-radius:
        var(--radius-lg);

      background:
        linear-gradient(
          135deg,
          rgba(255, 255, 255, 0.055),
          rgba(255, 255, 255, 0.018)
        );

      backdrop-filter:
        blur(18px);

      overflow:
        hidden;

      box-shadow:
        var(--shadow);
    }

    .stat-cell {
      padding:
        34px 25px;

      text-align:
        center;
    }

    .stat-cell:not(:last-child) {
      border-right:
        1px solid
        var(--border);
    }

    .stat-icon {
      width:
        44px;

      height:
        44px;

      display:
        grid;

      place-items:
        center;

      margin:
        0 auto 13px;

      border-radius:
        50%;

      color:
        var(--lime);

      background:
        rgba(51, 198, 255, 0.08);
    }

    .stat-icon svg {
      width:
        21px;

      height:
        21px;
    }

    .stat-value {
      color:
        var(--white);

      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        35px;

      font-weight:
        700;

      letter-spacing:
        -1px;
    }

    .stat-label {
      margin-top:
        5px;

      color:
        var(--muted);

      font-size:
        11px;

      font-weight:
        700;

      letter-spacing:
        1px;

      text-transform:
        uppercase;
    }


    /* =========================================================
       WHY HERON
       ========================================================= */

    .feature-list {
      display:
        grid;

      grid-template-columns:
        repeat(3, 1fr);

      gap:
        20px;
    }

    .feature-item {
      position:
        relative;

      padding:
        35px;

      border-top:
        1px solid
        var(--border);

      border-bottom:
        1px solid
        var(--border);

      transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
    }

    .feature-item:hover {
      transform:
        translateY(-7px);

      border-color:
        var(--lime-border);

      background:
        linear-gradient(
          180deg,
          rgba(51, 198, 255, 0.05),
          transparent
        );
    }

    .feature-icon {
      width:
        56px;

      height:
        56px;

      display:
        grid;

      place-items:
        center;

      margin-bottom:
        28px;

      border-radius:
        50%;

      color:
        #080a08;

      background:
        var(--lime);

      box-shadow:
        0 12px 35px
        rgba(51, 198, 255, 0.12);
    }

    .feature-icon svg {
      width:
        25px;

      height:
        25px;
    }

    .feature-item h4 {
      color:
        var(--white);

      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        21px;
    }

    .feature-item p {
      margin-top:
        12px;

      color:
        var(--muted);

      font-size:
        14px;
    }


    /* =========================================================
       CTA
       ========================================================= */

    .cta-band {
      padding:
        100px 0;
    }

    .cta-band .container {
      position:
        relative;

      display:
        flex;

      align-items:
        center;

      justify-content:
        space-between;

      gap:
        35px;

      padding:
        58px 60px;

      border:
        1px solid
        var(--lime-border);

      border-radius:
        var(--radius-xl);

      background:
        radial-gradient(
          circle at 90% 10%,
          rgba(51, 198, 255, 0.20),
          transparent 30%
        ),
        linear-gradient(
          135deg,
          #151b14,
          #0b0e0b
        );

      overflow:
        hidden;
    }

    .cta-band .container::before {
      content: "";

      position:
        absolute;

      width:
        290px;

      height:
        290px;

      right:
        16%;

      top:
        -180px;

      border-radius:
        50%;

      border:
        1px solid
        rgba(51, 198, 255, 0.16);

      box-shadow:
        0 0 0 45px
        rgba(51, 198, 255, 0.025),

        0 0 0 90px
        rgba(51, 198, 255, 0.015);
    }

    .cta-band h3 {
      position:
        relative;

      z-index:
        2;

      color:
        var(--white);

      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        clamp(
          32px,
          4vw,
          52px
        );

      line-height:
        1;

      letter-spacing:
        -2px;
    }

    .cta-band p {
      position:
        relative;

      z-index:
        2;

      margin-top:
        13px;

      color:
        var(--muted);
    }

    .btn {
      position:
        relative;

      z-index:
        2;

      display:
        inline-flex;

      align-items:
        center;

      justify-content:
        center;

      min-height:
        54px;

      padding:
        0 25px;

      border-radius:
        999px;

      font-size:
        14px;

      font-weight:
        800;

      transition:
        transform 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
    }

    .btn-primary {
      color:
        #070907;

      background:
        var(--lime);

      box-shadow:
        0 16px 40px
        rgba(51, 198, 255, 0.14);
    }

    .btn-primary:hover {
      transform:
        translateY(-3px);

      background:
        var(--lime-pale);

      box-shadow:
        0 20px 55px
        rgba(51, 198, 255, 0.22);
    }


    /* =========================================================
       FOOTER
       ========================================================= */

    .footer {
      position:
        relative;

      padding:
        80px 0 30px;

      border-top:
        1px solid
        var(--border);

      background:
        #080a08;
    }

    .footer-grid {
      display:
        grid;

      grid-template-columns:
        1.4fr 0.8fr 0.8fr 1.2fr;

      gap:
        45px;
    }

    .footer-brand {
      margin-bottom:
        18px;
    }

    .footer-description {
      max-width:
        300px;

      color:
        var(--muted);

      font-size:
        14px;
    }

    .footer h5 {
      margin-bottom:
        20px;

      color:
        var(--white);

      font-family:
        "Space Grotesk",
        sans-serif;

      font-size:
        15px;
    }

    .footer ul {
      list-style:
        none;
    }

    .footer li {
      margin-bottom:
        11px;

      color:
        var(--muted);

      font-size:
        13px;
    }

    .footer a {
      transition:
        color 0.25s ease;
    }

    .footer a:hover {
      color:
        var(--lime);
    }

    .footer-bottom {
      display:
        flex;

      align-items:
        center;

      justify-content:
        space-between;

      gap:
        20px;

      margin-top:
        55px;

      padding-top:
        25px;

      border-top:
        1px solid
        var(--border);

      color:
        #747c72;

      font-size:
        12px;
    }


    /* =========================================================
       WHATSAPP
       ========================================================= */

    .wa-float {
      position:
        fixed;

      right:
        24px;

      bottom:
        24px;

      z-index:
        999;

      width:
        58px;

      height:
        58px;

      display:
        grid;

      place-items:
        center;

      border-radius:
        50%;

      color:
        #071007;

      background:
        var(--lime);

      box-shadow:
        0 15px 40px
        rgba(51, 198, 255, 0.22);

      transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
    }

    .wa-float:hover {
      transform:
        translateY(-5px)
        scale(1.04);

      box-shadow:
        0 20px 55px
        rgba(51, 198, 255, 0.30);
    }

    .wa-float svg {
      width:
        27px;

      height:
        27px;
    }


    /* =========================================================
       REVEAL
       ========================================================= */

    .reveal {
      opacity:
        0;

      transform:
        translateY(35px)
        scale(0.985);

      transition:
        opacity 0.8s
        cubic-bezier(.2, .7, .2, 1),

        transform 0.8s
        cubic-bezier(.2, .7, .2, 1);
    }

    .reveal.in-view {
      opacity:
        1;

      transform:
        translateY(0)
        scale(1);
    }


    /* =========================================================
       KEYFRAMES
       ========================================================= */

    @keyframes breathe {
      0%,
      100% {
        transform:
          scale(0.94);

        opacity:
          0.65;
      }

      50% {
        transform:
          scale(1.07);

        opacity:
          1;
      }
    }

    @keyframes ambientFloat {
      0%,
      100% {
        transform:
          translate3d(0, 0, 0);
      }

      50% {
        transform:
          translate3d(
            25px,
            -30px,
            0
          );
      }
    }


    /* =========================================================
       RESPONSIVE
       ========================================================= */

    @media (max-width: 1050px) {
      .nav-links a {
        padding:
          0 10px;

        font-size:
          12px;
      }

      .footer-grid {
        grid-template-columns:
          repeat(2, 1fr);
      }
    }


    @media (max-width: 900px) {
      .menu-btn {
        display:
          flex;
      }

      .nav-cta-btn {
        display:
          none;
      }

      .nav-links {
        position:
          fixed;

        top:
          82px;

        left:
          20px;

        right:
          20px;

        display:
          flex;

        flex-direction:
          column;

        align-items:
          stretch;

        gap:
          5px;

        margin:
          0;

        padding:
          18px;

        border:
          1px solid
          var(--border);

        border-radius:
          24px;

        background:
          rgba(8, 11, 8, 0.97);

        backdrop-filter:
          blur(24px);

        -webkit-backdrop-filter:
          blur(24px);

        box-shadow:
          0 30px 80px
          rgba(0, 0, 0, 0.55);

        opacity:
          0;

        visibility:
          hidden;

        pointer-events:
          none;

        transform:
          translateY(-14px)
          scale(0.98);

        transition:
          opacity 0.3s ease,
          visibility 0.3s ease,
          transform 0.3s ease;
      }

      .nav-links.active {
        opacity:
          1;

        visibility:
          visible;

        pointer-events:
          auto;

        transform:
          translateY(0)
          scale(1);
      }

      .nav-links a {
        min-height:
          50px;

        justify-content:
          flex-start;

        padding:
          0 18px;

        font-size:
          14px;
      }

      .grid-2 {
        grid-template-columns:
          1fr;

        gap:
          45px;
      }

      .stats-grid {
        grid-template-columns:
          repeat(2, 1fr);
      }

      .stat-cell:nth-child(2) {
        border-right:
          0;
      }

      .stat-cell:nth-child(-n+2) {
        border-bottom:
          1px solid
          var(--border);
      }

      .feature-list {
        grid-template-columns:
          1fr;
      }

      .cta-band .container {
        flex-direction:
          column;

        align-items:
          flex-start;
      }
    }


    @media (max-width: 650px) {
      .container {
        width:
          min(
            calc(100% - 28px),
            var(--container)
          );
      }

      .brand-mark {
        width:
          42px;

        height:
          42px;
      }

      .brand-text strong {
        font-size:
          16px;
      }

      .brand-text small {
        font-size:
          7px;

        letter-spacing:
          1.6px;
      }

      .page-header {
        min-height:
          560px;

        padding:
          145px 0 70px;
      }

      .page-header h1 {
        font-size:
          clamp(
            48px,
            15vw,
            72px
          );

        letter-spacing:
          -3px;
      }

      .page-header p {
        font-size:
          15px;
      }

      .section {
        padding:
          85px 0;
      }

      .section-head h2,
      .grid-2 h2 {
        letter-spacing:
          -1.8px;
      }

      .stats-grid {
        grid-template-columns:
          1fr;
      }

      .stat-cell {
        border-right:
          0 !important;

        border-bottom:
          1px solid
          var(--border);
      }

      .stat-cell:last-child {
        border-bottom:
          0;
      }

      .cta-band {
        padding:
          75px 0;
      }

      .cta-band .container {
        padding:
          40px 28px;
      }

      .footer-grid {
        grid-template-columns:
          1fr;
      }

      .footer-bottom {
        flex-direction:
          column;

        align-items:
          flex-start;
      }
    }


    /* Extra-small phones (iPhone SE, older Android, ~360-400px wide) */
    @media (max-width: 400px) {
      .page-header h1 {
        font-size:
          clamp(36px, 13vw, 48px);

        letter-spacing:
          -2px;
      }

      .btn,
      .nav-cta-btn {
        width:
          100%;

        justify-content:
          center;
      }

      .stats-grid {
        grid-template-columns:
          1fr;
      }
    }


    @media (prefers-reduced-motion: reduce) {
      *,
      *::before,
      *::after {
        scroll-behavior:
          auto !important;

        animation-duration:
          0.01ms !important;

        animation-iteration-count:
          1 !important;

        transition-duration:
          0.01ms !important;
      }
    }
  .footer-logo {
  width: 180px;
  height: auto;
}