/* ---------- HERO ---------- */
  .hero {
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:100vh;
    min-height:100svh;
    min-height:100dvh;
    background:
      linear-gradient(180deg, rgba(28,52,56,0.45) 0%, rgba(28,52,56,0.55) 60%, rgba(28,52,56,0.85) 100%),
      url('../assets/images/hero.jpg')
      center top / cover no-repeat;
    background-color:var(--deep);
    color:var(--paper);
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    padding:clamp(118px, 15vh, 164px) 0 0;
  }
  .hero .wrap {
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.1fr 0.7fr;
    gap:40px;
    align-items:center;
    width:100%;
    flex:1;
    padding-bottom:clamp(34px, 6vh, 64px);
  }
  .hero-eyebrow {
    color:#c9d6c2;
  }
  .hero h1 {
    font-size:clamp(2.6rem, 5.6vw, 4.7rem);
    color:var(--paper);
    max-width:14ch;
    text-shadow:0 2px 20px rgba(0,0,0,0.35);
  }
  .hero h1 i {
    font-style:italic;
    color:#e7b98e;
  }
  .hero-sub {
    text-shadow:0 1px 12px rgba(0,0,0,0.3);
    max-width:36ch;
    color:#d6ddd4;
    font-size:1.02rem;
    margin-top:22px;
    padding-bottom:6px;
  }
  .hero-sub-mobile { display:none; }
  .hero-cta {
    display:flex;
    gap:14px;
    margin-top:32px;
    flex-wrap:wrap;
  }
  .hero .btn-ghost {
    border-color:rgba(247,244,236,0.5);
    color:var(--paper);
  }
  .hero .btn-ghost:hover {
    background:var(--paper);
    color:var(--deep);
  }

  .hero-meta {
    font-family:'JetBrains Mono', monospace;
    font-size:0.78rem;
    color:#a9c0b9;
    line-height:1.9;
    text-align:right;
  }
