:root{
  --bg:#060606;
  --panel:#101010;
  --panel-2:#151515;
  --border:rgba(202,163,92,.42);
  --border-soft:rgba(255,255,255,.08);
  --text:#f3f0ea;
  --muted:#b9b0a1;
  --gold:#caa35c;
  --shadow:0 24px 60px rgba(0,0,0,.38);
}

*{box-sizing:border-box}
html,body{min-height:100%}
body{
  margin:0;
  background:radial-gradient(circle at top, #16120c 0%, #090909 24%, #050505 62%, #000 100%);
  color:var(--text);
  font-family:Arial, Helvetica, sans-serif;
  text-align:center;
}

a{color:inherit}
img{display:block;max-width:100%}

.wrap{
  width:min(1180px, calc(100% - 32px));
  margin:0 auto;
}

.hero-card,
.access-panel,
.video-page-card,
.doc-card{
  background:linear-gradient(180deg, rgba(20,20,20,.96), rgba(9,9,9,.96));
  border:1px solid var(--border-soft);
  border-radius:24px;
  box-shadow:var(--shadow);
}

.hero-main-image,
.discovery-hero{
  width:min(880px, 100%);
  overflow:hidden;
}

.hero-image{width:100%;height:auto}

.access-wrap{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:28px;
  padding:42px 0 48px;
}

.access-panel{
  width:min(560px, 100%);
  padding:34px 30px 28px;
}

.access-title{
  margin:0 0 20px;
  font-size:clamp(1.45rem, 2vw, 1.9rem);
  font-weight:600;
  letter-spacing:.04em;
}

.pin-form{display:flex;flex-direction:column;align-items:center;width:100%;max-width:260px;margin:0 auto}
.pin-row{display:flex;justify-content:center;gap:10px;flex-wrap:nowrap;width:auto}

.pin-box{
  width:44px;
  height:54px;
  border-radius:15px;
  border:1px solid var(--border);
  background:#080808;
  color:var(--text);
  font-size:1.75rem;
  text-align:center;
  outline:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
}

.pin-box:focus{
  border-color:#dfbb76;
  box-shadow:0 0 0 3px rgba(202,163,92,.16);
}

.enter-btn,
.overlay-enter-btn,
.doc-btn,
.portal-btn{
  appearance:none;
  border:1px solid var(--border);
  background:linear-gradient(180deg, rgba(202,163,92,.16), rgba(202,163,92,.06));
  color:var(--text);
  text-decoration:none;
  border-radius:14px;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
  box-shadow:0 10px 24px rgba(0,0,0,.24);
}

.enter-btn:hover,
.overlay-enter-btn:hover,
.doc-btn:hover,
.portal-btn:hover{
  transform:translateY(-1px);
  border-color:#dfbb76;
  background:linear-gradient(180deg, rgba(202,163,92,.22), rgba(202,163,92,.09));
}

.enter-btn:disabled,
.overlay-enter-btn:disabled{
  opacity:.72;
  cursor:default;
  transform:none;
}

.enter-btn{
  margin-top:38px;
  min-width:190px;
  padding:13px 30px;
  font-size:1rem;
  letter-spacing:.04em;
}

.pin-message{
  min-height:1.4em;
  margin:16px 0 0;
  color:#f1c47a;
}

.discovery-actions{padding:6px 0 0}

.overlay-enter-btn{
  min-width:220px;
  padding:14px 28px;
  font-size:1rem;
  letter-spacing:.04em;
}

.pitch-wrap{padding:30px 0 48px}

.portal-image-card{
  width:min(1040px, 100%);
  margin:0 auto 22px;
  overflow:hidden;
}

.portal-head,
.video-page-head{
  margin:0 auto 20px;
  max-width:820px;
}

.eyebrow{
  margin:0 0 10px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.72rem;
}

.portal-head h1,
.video-page-head h1{
  margin:0;
  font-size:clamp(1.9rem, 3vw, 2.65rem);
  font-weight:600;
}

.gold-divider{
  width:116px;
  height:2px;
  margin:15px auto 0;
  background:linear-gradient(90deg, transparent, var(--gold), transparent);
}

.portal-grid{
  width:min(1040px, 100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}

.portal-grid-sequence{position:relative}

@media (min-width: 981px){
  .portal-grid-sequence::before{
    content:"Quantum Highway";
    position:absolute;
    left:calc((100% / 3) * .18);
    right:calc((100% / 3) * .18);
    top:68px;
    height:1px;
    border-top:1px solid rgba(202,163,92,.24);
    color:rgba(202,163,92,.42);
    font-size:.68rem;
    letter-spacing:.26em;
    text-transform:uppercase;
    text-align:center;
    line-height:0;
    z-index:0;
    pointer-events:none;
  }

  .portal-grid-sequence::after{
    content:"";
    position:absolute;
    left:calc((100% / 3) * .18);
    right:calc((100% / 3) * .18);
    top:68px;
    height:28px;
    background:linear-gradient(90deg, transparent, rgba(202,163,92,.08), transparent);
    transform:translateY(-14px);
    z-index:0;
    pointer-events:none;
  }

  .portal-grid-sequence .top-sequence-card{position:relative; z-index:1;}
}

.doc-card{
  padding:20px 22px 18px;
  min-height:136px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:center;
}

.doc-card h3{
  margin:0;
  font-size:1.15rem;
  font-weight:600;
}

.card-divider{
  width:54px;
  height:2px;
  margin:10px auto 14px;
  background:linear-gradient(90deg, transparent, var(--gold), transparent);
  opacity:.95;
}

.action-row{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:auto;
}

.portal-grid .action-row.single{display:block;width:100%}

.doc-btn,
.portal-btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-width:108px;
  padding:10px 16px;
  font-size:.96rem;
}

.portal-grid .action-row.single .doc-btn{
  display:flex;
  width:100%;
  min-width:0;
}

.video-wrap,
.screening-wrap{
  width:min(1160px, calc(100% - 32px));
  margin:0 auto;
  padding:44px 0 52px;
}

.video-page-head .action-row{margin-top:18px}

.video-page-card{
  width:min(1080px, 100%);
  margin:0 auto;
  padding:18px;
}

.player-frame{
  width:100%;
  border-radius:18px;
  overflow:hidden;
  background:#000;
  border:1px solid rgba(255,255,255,.06);
}

.ratio-frame{
  position:relative;
  aspect-ratio:16 / 9;
  min-height:340px;
}

.ratio-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}

@media (max-width: 980px){
  .portal-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
}

@media (max-width: 640px){
  .wrap,
  .video-wrap,
  .screening-wrap{width:min(100% - 22px, 1180px)}
  .access-wrap{padding:28px 0 34px; gap:20px}
  .access-panel{padding:24px 16px 20px}
  .pin-row{gap:10px}
  .pin-box{width:58px;height:64px;font-size:1.75rem}
  .enter-btn{margin-top:26px;width:100%}
  .overlay-enter-btn{width:100%}
  .portal-grid{grid-template-columns:1fr; gap:18px}
  .doc-card{min-height:auto}
  .video-page-card{padding:10px}
  .ratio-frame{min-height:220px}
}


.dual-access-panel{
  width:min(620px, 100%);
  padding:30px 30px 24px;
}

.single-access-panel{
  width:min(620px, 100%);
  padding:34px 30px 30px;
}

.primary-entry-solo{
  margin-bottom:0;
  gap:18px;
}

.primary-entry{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  margin-bottom:16px;
}

.hero-enter-btn{
  min-width:300px;
  padding:17px 38px;
  font-size:1.08rem;
  font-weight:600;
  letter-spacing:.05em;
}

.access-note{
  margin:0;
  color:rgba(185,176,161,.72);
  font-size:.78rem;
  letter-spacing:.04em;
}

.access-code-btn{
  margin-top:14px;
  min-width:120px;
  padding:8px 18px;
  font-size:.9rem;
  letter-spacing:.03em;
  background:linear-gradient(180deg, rgba(202,163,92,.11), rgba(202,163,92,.04));
}

.access-code-btn:hover{
  background:linear-gradient(180deg, rgba(202,163,92,.18), rgba(202,163,92,.07));
}

.direct-access-note{
  color:rgba(243,240,234,.9);
  font-size:.92rem;
  letter-spacing:.02em;
}

.fallback-pin-form{
  margin-top:18px;
  opacity:.5;
}

.fallback-pin-form .pin-row{
  gap:8px;
}

.fallback-pin-form .pin-box{
  width:40px;
  height:48px;
  font-size:1.35rem;
}

.fallback-pin-form .access-code-btn{
  margin-top:12px;
  min-width:104px;
  padding:7px 16px;
}

.fallback-pin-form::before{
  content:"Have a code? (optional)";
  display:block;
  margin:0 0 12px;
  color:rgba(185,176,161,.55);
  font-size:.72rem;
  letter-spacing:.05em;
}

@media (max-width: 640px){
  .direct-access-note{font-size:.86rem;}
  .fallback-pin-form{margin-top:20px; opacity:.46;}
  .fallback-pin-form .pin-box{width:38px; height:46px; font-size:1.25rem;}
}

.featured-card{
  border-color:rgba(202,163,92,.68);
  box-shadow:0 0 0 1px rgba(202,163,92,.22), 0 24px 60px rgba(0,0,0,.42), 0 0 24px rgba(202,163,92,.12);
}

.featured-trailer-card{
  background:linear-gradient(180deg, rgba(28,24,18,.98), rgba(10,10,10,.98));
}

.gold-title{
  color:var(--gold);
}

.featured-title-card .card-divider,
.featured-trailer-card .card-divider{
  width:72px;
  background:linear-gradient(90deg, transparent, #e0bf7c, transparent);
}

.featured-btn{
  border-color:rgba(202,163,92,.62);
  background:linear-gradient(180deg, rgba(202,163,92,.24), rgba(202,163,92,.1));
}

.featured-btn:hover{
  border-color:#e5c684;
  background:linear-gradient(180deg, rgba(202,163,92,.3), rgba(202,163,92,.14));
}

@media (max-width: 640px){
  .dual-access-panel{padding:22px 16px 20px}
  .hero-enter-btn{width:100%; min-width:0}
  .pin-form{max-width:220px}
  .pin-row{gap:8px}
  .pin-box{width:42px;height:52px;font-size:1.45rem}
  .access-code-btn{min-width:112px;padding:8px 16px}
}

.access-trailer-panel{
  background:linear-gradient(180deg, rgba(28,24,18,.98), rgba(10,10,10,.98));
  border-color:rgba(202,163,92,.5);
}

.access-featured-btn{
  min-width:320px;
  font-size:1.1rem;
  font-weight:600;
  letter-spacing:.05em;
  box-shadow:0 0 0 1px rgba(202,163,92,.14), 0 18px 38px rgba(0,0,0,.34), 0 0 18px rgba(202,163,92,.08);
}

@media (max-width: 640px){
  .access-featured-btn{
    width:100%;
    min-width:0;
  }
}


.access-entry-card{
  padding:34px 26px 28px;
}

.access-entry-content{
  gap:18px;
}

.access-entry-title{
  margin:0;
  font-size:clamp(2rem, 3vw, 2.45rem);
  font-weight:700;
  letter-spacing:-0.02em;
  text-shadow:0 0 16px rgba(202,163,92,.08);
}

.access-entry-divider{
  width:120px;
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(0,0,0,0), rgba(224,191,124,.14) 18%, rgba(238,208,145,.98) 50%, rgba(224,191,124,.14) 82%, rgba(0,0,0,0));
  box-shadow:0 0 18px rgba(202,163,92,.22);
}

.access-featured-btn{
  min-width:320px;
  font-size:1.1rem;
  font-weight:700;
  letter-spacing:.01em;
  box-shadow:0 0 0 1px rgba(202,163,92,.14), 0 18px 38px rgba(0,0,0,.34), 0 0 18px rgba(202,163,92,.08);
  color:#f4f0e8;
}

@media (max-width: 640px){
  .access-entry-card{padding:24px 16px 22px;}
  .access-entry-title{font-size:1.95rem;}
  .access-entry-divider{width:104px;}
}


.access-entry-card{
  width:min(760px, 100%);
  padding:26px 30px 24px;
}

.access-entry-content-compact{
  gap:14px;
}

.access-entry-divider-fine{
  width:92px;
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(0,0,0,0), rgba(224,191,124,.05) 18%, rgba(238,208,145,.92) 50%, rgba(224,191,124,.05) 82%, rgba(0,0,0,0));
  box-shadow:0 0 10px rgba(202,163,92,.14);
}

.access-featured-btn-compact{
  min-width:0;
  width:min(620px, 100%);
  padding:18px 28px;
  border-radius:24px;
  font-size:clamp(1.05rem, 2.4vw, 1.32rem);
  font-weight:700;
  letter-spacing:-0.01em;
  color:var(--gold);
  background:linear-gradient(180deg, rgba(202,163,92,.22), rgba(202,163,92,.08));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 0 0 1px rgba(202,163,92,.12), 0 16px 34px rgba(0,0,0,.28), 0 0 14px rgba(202,163,92,.06);
}

.access-featured-btn-compact:hover{
  background:linear-gradient(180deg, rgba(202,163,92,.28), rgba(202,163,92,.1));
}

@media (max-width: 640px){
  .access-entry-card{padding:20px 14px 18px;}
  .access-featured-btn-compact{width:100%; border-radius:22px; padding:16px 20px;}
  .access-entry-divider-fine{width:74px;}
}


.access-wrap{
  gap:12px;
  padding:36px 0 42px;
}

.access-button-row{
  width:min(880px, 100%);
  display:flex;
  justify-content:center;
  margin-top:-2px;
}

.subtle-enter-btn{
  min-width:0;
  width:min(340px, 72vw);
  padding:14px 28px;
  border-radius:18px;
  font-size:clamp(1rem, 1.6vw, 1.18rem);
  font-weight:700;
  letter-spacing:.01em;
  color:var(--gold);
  background:linear-gradient(180deg, rgba(202,163,92,.14), rgba(202,163,92,.05));
  box-shadow:0 8px 22px rgba(0,0,0,.26);
}

.subtle-enter-btn:hover{
  background:linear-gradient(180deg, rgba(202,163,92,.18), rgba(202,163,92,.08));
}

@media (max-width: 700px){
  .access-wrap{
    gap:10px;
    padding:24px 0 30px;
  }

  .access-button-row{
    margin-top:0;
  }

  .subtle-enter-btn{
    width:min(300px, 82vw);
    padding:13px 22px;
    border-radius:16px;
  }
}


.real-world-signals{
  width:min(520px, 100%);
  margin:28px auto 0;
  min-height:auto;
}

.real-world-signals .eyebrow{
  margin-bottom:8px;
}

.real-world-signals .reference-description{
  margin:0 0 16px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.45;
}

/* Subtle visible SEO/supporting copy: intentionally low-impact, not hidden. */
.seo-note,
.portal-seo-note{
  width:min(760px, 100%);
  margin:8px auto 0;
  color:var(--muted);
  opacity:.78;
  font-size:.82rem;
  line-height:1.45;
  letter-spacing:.01em;
}

.portal-seo-note{
  margin-top:14px;
}
