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

    :root {
      --border-w: 18px;
      --color-primary-red: #e5343f;
      --color-secundary-white: rgb(249, 240, 223);
      --font: 'brandon-grotesque', sans-serif;
    }

    html, body {
      height: 100%;
      width: 100%;
      overflow: hidden;
    }

    body {
      padding: var(--border-w);
      background: var(--color-primary-red);
      font-family: var(--font);
    }

    /* ── STAGE ── */
    .stage {
      position: relative;
      width: 100%;
      height: 100%;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
    }

    /* ── BACKGROUND SLIDES ── */
    .bg-slide {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-position: center;
      opacity: 0;
      transition: opacity 1.8s cubic-bezier(0.4, 0, 0.2, 1);
      z-index: 0;
      transform: scale(1.04);
      animation: slowZoom 20s ease-in-out infinite alternate;
    }

    .bg-slide.active { opacity: 1; }

    .bg-slide:nth-child(1) { background-image: url('images/background_00.jpg'); }
    .bg-slide:nth-child(2) { background-image: url('images/background_01.jpg'); }
    .bg-slide:nth-child(3) { background-image: url('images/background_02.jpg'); }
    .bg-slide:nth-child(4) { background-image: url('images/background_03.jpg'); }
    .bg-slide:nth-child(5) { background-image: url('images/background_04.jpg'); }
    .bg-slide:nth-child(6) { background-image: url('images/background_05.jpg'); }

    @keyframes slowZoom {
      from { transform: scale(1.00); }
      to   { transform: scale(1.1); }
    }

    /* ── OVERLAY ── */
    .overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(
        to bottom,
        rgba(249, 240, 223, 0.60) 0%,
        rgba(249, 240, 223, 0.50) 45%,
        rgba(249, 240, 223, 0.70) 100%
      );
      backdrop-filter: grayscale(100%);
      z-index: 1;
    }

    /* ── CENTER CONTENT ── */
    .center {
      padding-top: 80px;
      position: relative;
      z-index: 2;
      display: flex;
      flex-direction: column;
      align-items: center;
      animation: riseIn 1.4s ease both;
    }

    /* ── LOGO ── */
    .logo-wrap {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
      margin-bottom: 24px;
    }

    .logo-mark svg {
      width: 360px;
      height: auto;
      overflow: visible;
    }

    .logo-sub {
      font-weight: 600;
      font-size: 1rem;
      letter-spacing: 0.4em;
      text-transform: uppercase;
      color: var(--color-primary-red);
    }

    /* ── NAV BUTTONS ── */
    nav {
      display: flex;
      gap: 6px;
    }

    nav a {
      font-weight: 300;
      font-size: 0.8rem;
      letter-spacing: 0.3em;
      text-transform: uppercase;
      text-decoration: none;
      color: var(--color-secundary-white);
      padding: 14px 44px;
      border: 1px solid var(--color-primary-red);
      backdrop-filter: blur(6px);
      background: var(--color-primary-red);
      position: relative;
      overflow: hidden;
      transition: color 0.35s;
    }

    nav a::before {
      content: '';
      position: absolute;
      inset: 0;
      background: var(--color-secundary-white);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform 0.38s cubic-bezier(0.4,0,0.2,1);
      z-index: -1;
    }

    nav a:hover { color: var(--color-primary-red); }
    nav a:hover::before { transform: scaleX(1); }

    /* –– SOCIAL –– */
    .social {
      margin-top: 32px;
      font-size: 0.8rem;
      font-weight: 300;
      letter-spacing: 0.3em;
      text-transform: uppercase;
    }
    .social a { color: var(--color-primary-red); text-decoration: none; }

    /* ── FOOTER ── */
    footer {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 3;
      padding: 18px 34px;
      display: flex;
      justify-content: space-around;
      align-items: center;
      /* justify-content: space-between; */
      /* align-items: flex-end; */
    }

    footer address, footer a {
      font-size: 0.8rem;
      font-weight: 300;
      letter-spacing: 0.3em;
      text-transform: uppercase;
      color: black;
      font-style: normal;
      text-decoration: none;
      line-height: 1.2;
      transition: color 0.25s;
    }

    footer address { text-align: center; }

    footer a:hover { color: var(--color-primary-red); }

    /* ── ANIMATION ── */
    @keyframes riseIn {
      from { opacity: 0; transform: translateY(22px); }
      to   { opacity: 1; transform: translateY(0); }
    }

    @media (max-width: 480px) {
      :root { --border-w: 10px; }
      nav { flex-direction: column; align-items: center; gap: 8px; }
      nav a { padding: 13px 52px; }
      footer { padding: 14px 18px; }
      .center { padding-top: 40px;}
      .logo-mark svg { width: 240px; }
    }