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

:root {
  --red:    #C8102E;
  --red-dk: #96001A;
  --font-d: 'Barlow Condensed', sans-serif;
}

html, body { height: 100%; background: #0E0E0E; }

.hero {
  min-height: 100dvh;
  background: url('hero.jpg.webp') left center / cover no-repeat #0E0E0E;
  display: flex;
  align-items: flex-end;
  padding: 3rem 2.5rem;
}

.cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  background: var(--red);
  color: #fff;
  text-decoration: none;
  font-family: var(--font-d);
  font-weight: 700;
  font-size: 1.05rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 1rem 2rem;
  transition: background 0.2s;
}
.cta-btn:hover { background: var(--red-dk); }

/* Hidden on desktop — only shown on mobile */
.mobile-text { display: none; }

@media (max-width: 640px) {
  .hero {
    padding: 2rem 1.5rem;
    background-image: url('hero-mobile.png');
    background-position: center top;
    justify-content: flex-end;
    flex-direction: column;
  }
  .mobile-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 2.5rem;
    gap: 0.3rem;
  }
  .mobile-brand {
    font-family: var(--font-d);
    font-weight: 900;
    font-size: 3.5rem;
    letter-spacing: 0.2em;
    color: #fff;
    text-transform: uppercase;
    line-height: 1;
  }
  .mobile-sub {
    font-family: var(--font-d);
    font-weight: 700;
    font-size: 1.1rem;
    letter-spacing: 0.3em;
    color: var(--red);
    text-transform: uppercase;
  }
  .cta-btn { width: 100%; justify-content: center; }
}
