:root{--line:#e8525838;--white:#f7f5f3;--accent:#e85258}
.site-header{
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: minmax(170px, 240px) 1fr auto;
  align-items: center;
  gap: clamp(20px, 4vw, 60px);
  min-height: clamp(76px, 7vw, 98px);
  padding: 0 clamp(18px, 3.2vw, 48px);
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(18px);
}
.brand{
  display: inline-flex;
  align-items: center;
  width: clamp(168px, 18vw, 240px);
  min-width: 0;
}
.brand img{
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 8px 16px rgba(17, 17, 20, 0.08));
}
.site-nav{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(18px, 3vw, 48px);
  color: #18191d;
  font-size: clamp(0.72rem, 0.8vw, 0.92rem);
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  white-space: nowrap;
}
.site-nav a{
  position: relative;
  padding: 10px 0;
}
.site-nav a::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3px;
  height: 2px;
  background: var(--accent);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 220ms ease;
}
.site-nav a:hover::after{
  transform: scaleX(1);
  transform-origin: left;
}
.header-cta{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6em;
  min-height: 44px;
  border-radius: 7px;
  font-size: clamp(0.74rem, 0.8vw, 0.9rem);
  font-weight: 850;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}
.header-cta{
  color: #fff;
  background: linear-gradient(180deg, #e85258, var(--accent));
  box-shadow: 0 16px 30px rgba(232,82,88, 0.24);
}
.header-cta{
  min-width: 168px;
  padding: 0 22px;
}
.header-cta:hover{
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 20px 42px rgba(232,82,88, 0.28);
}
@media (max-width: 980px){.site-header{
    grid-template-columns: auto auto;
    justify-content: space-between;
  }
.site-nav{
    display: none;
  }}
@media (max-width: 640px){.site-header{
    position: sticky;
    grid-template-columns: minmax(116px, 1fr) auto;
    gap: 10px;
    min-height: 66px;
    padding: 0 14px;
  }
.brand{
    width: clamp(118px, 38vw, 150px);
  }
.header-cta{
    min-width: 0;
    min-height: 36px;
    padding: 0 10px;
    font-size: 0.58rem;
    white-space: nowrap;
  }
.header-cta b{
    display: none;
  }}
@media (max-width: 390px){.header-cta{
    max-width: 116px;
    font-size: 0.54rem;
  }}
.nav-toggle{ display:none; }
.site-nav{ gap:clamp(12px,1.8vw,28px); text-transform:none; letter-spacing:0; font-size:13px; }
.site-header{ gap:24px; }
@media(max-width:1100px){.site-header{ grid-template-columns:1fr auto auto; gap:14px; }
.site-header .brand{ grid-column:1; grid-row:1; }
.nav-toggle{ display:block; grid-column:3; grid-row:1; min-height:44px; padding:10px 14px; border:1px solid #ddd; border-radius:9px; background:white; color:#222; font-family:inherit; font-size:13px; font-weight:600; cursor:pointer; }
.header-cta{ grid-column:2; grid-row:1; }
.site-nav{ display:none; position:absolute; top:100%; left:0; right:0; padding:14px 20px; background:white; box-shadow:0 12px 20px #0001; border-bottom:1px solid #eee; white-space:normal; }
.site-nav.is-open{ display:grid; grid-template-columns:1fr 1fr; gap:4px 18px; }
.site-nav a{ padding:14px 8px; min-height:44px; }}
@media(max-width:640px){.site-header{ gap:8px; padding:8px 12px; }
.header-cta{ min-height:44px; font-size:11px; }
.site-header .brand{ width:clamp(110px,28vw,150px); }
.nav-toggle{ padding:10px; }}
.genai-home .site-header{ background:rgba(19,19,19,.96); border-bottom:1px solid var(--line); min-height:96px; padding:0 max(32px,4vw); gap:24px; backdrop-filter:blur(14px); }
.genai-home .brand{ width:158px; }
.genai-home .brand img{ filter:url(#logo-white); }
.genai-home .site-nav{ color:var(--white); background:transparent; gap:26px; font:600 14px Barlow,sans-serif; letter-spacing:.04em; text-transform:uppercase; }
.genai-home .site-nav a:hover{ color:var(--pink); }
.genai-home .header-cta{ display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:53px; padding:15px 24px; font:600 14px Barlow,sans-serif; letter-spacing:.035em; text-transform:uppercase; border-radius:999px; box-shadow:none; transform:none; }
.genai-home .header-cta{ color:var(--white); border:1px solid #e8525870; background:transparent; }
.genai-home .header-cta b{ font-size:23px; font-weight:600; }
.genai-home .header-cta:hover{ border-color:var(--pink); background:#e8525814; }
.genai-home .nav-toggle{ background:none; color:var(--white); border:1px solid var(--line); border-radius:999px; font-family:Barlow,sans-serif; font-size:15px; text-transform:uppercase; }
@media(max-width:1100px){.genai-home .site-nav{ background:var(--panel); border-color:var(--line); gap:4px 18px; padding:16px 24px; }
.genai-home .site-header{ grid-template-columns:1fr auto auto; }}
@media(max-width:640px){.genai-home .site-header{ padding:10px 20px; min-height:78px; gap:10px; }
.genai-home .brand{ width:114px; }
.genai-home .header-cta{ font-size:12px; min-height:44px; padding:12px 16px; gap:8px; }}
@media(max-width:370px){.genai-home .site-header{ padding:10px 12px; gap:7px; }
.genai-home .brand{ width:95px; }
.genai-home .header-cta{ padding:10px 12px; font-size:11px; }}
.genai-home .site-nav{ letter-spacing:.085em; }
.genai-home .header-cta{ letter-spacing:.085em; }
.genai-home .nav-toggle{ letter-spacing:.07em; }
/* Use the homepage header while keeping it above full-screen films. */
.genai-home .site-header{position:fixed;top:0;left:0;right:0;z-index:40;line-height:1.5}
.site-nav a[aria-current="page"]{color:var(--pink)}
.site-nav a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
.sound-toggle{top:112px}.rail{max-height:calc(100svh - 220px)}
@media(max-width:1100px){.genai-home .site-nav{background:#131313}.genai-home .site-nav a[aria-current="page"]{color:var(--pink)}}
@media(max-width:640px){.sound-toggle{top:94px}}
@media(max-width:800px){.rail{max-height:none}}

/* Bold primary navigation across public pages. */
.genai-home .site-nav a,.genai-home .site-header .header-cta{font-weight:800}
