/* The opening product story only. Film and technical sections retain their design. */
.eliza-opening {
  position: relative;
  isolation: isolate;
  background:
    radial-gradient(ellipse 80% 720px at 90% 260px, #183c43 0%, transparent 76%),
    radial-gradient(ellipse 55% 640px at 2% 720px, rgba(115, 92, 63, .17), transparent 80%),
    radial-gradient(ellipse 70% 950px at 100% 39%, rgba(31, 89, 89, .24), transparent 80%),
    radial-gradient(ellipse 70% 850px at 0% 66%, rgba(115, 92, 63, .14), transparent 85%),
    linear-gradient(180deg, #0b1519, #0b1116 44%, #080e13 88%, transparent);
}
.eliza-opening::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .18;
  background-image: url("../images/eliza-opening-lines.svg");
  background-size: 1600px 1000px;
  background-position: center top;
  background-repeat: repeat-y;
  mask-image: linear-gradient(#000, rgba(0, 0, 0, .5) 55%, transparent 96%);
}
.eliza-opening .eliza-hero {
  min-height: min(900px, 100svh);
  padding: 150px 0 80px;
}
.eliza-opening .eliza-hero::before {
  opacity: 1;
  background: url("../images/eliza-opening-lines.svg") center / cover no-repeat;
  mask-image: linear-gradient(#000, #000 72%, transparent);
}
.eliza-opening .eliza-hero__glow {
  width: min(75vw, 1100px);
  right: -12%;
  top: 6%;
  background: radial-gradient(ellipse, rgba(98, 191, 174, .18), rgba(204, 175, 118, .09) 46%, transparent 70%);
  animation: none;
  filter: blur(32px);
}
.eliza-opening .eliza-hero__inner {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(28px, 4vw, 72px);
  max-width: 1800px;
}
.eliza-opening .eliza-hero h1 {
  max-width: 12ch;
  font-size: clamp(3.2rem, 5.6vw, 6.6rem);
  line-height: 1.02;
  margin-block: 24px 28px;
}
.eliza-opening .eliza-hero h1 span {
  color: #dbc9aa;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  font-style: italic;
  letter-spacing: -.055em;
}
.eliza-opening .eliza-hero__lead {
  max-width: 570px;
  font-size: clamp(1.08rem, 1.35vw, 1.25rem);
  color: #c2cdcd;
  line-height: 1.75;
}
.eliza-opening .eliza-hero__actions { margin-top: 30px; }
.eliza-hero__explore { display: flex; flex-wrap: wrap; gap: 12px 26px; margin-top: 24px; }
.eliza-hero__explore a { color: #bfcaca; font-size: .9rem; padding-block: 6px; border-bottom: 1px solid #637c78; }
.eliza-hero__explore a:hover { color: #fff; border-color: #b1d9c9; }
.eliza-hero__explore a span { margin-left: 8px; color: #b1d9c9; }
.eliza-hero__explore a:focus-visible { outline: 2px solid #b1d9c9; outline-offset: 6px; }
.eliza-opening .eliza-portrait {
  width: min(100%, 680px);
  aspect-ratio: 1;
}
.eliza-opening .eliza-portrait::before {
  inset: 5% -6%;
  border-radius: 40%;
  background: radial-gradient(ellipse, rgba(48, 157, 166, .25), transparent 68%);
}
.eliza-opening .eliza-portrait img {
  border-radius: 34% 34% 18% 18%;
  animation: none;
  filter: saturate(.8) contrast(1.06);
  mask-image: radial-gradient(ellipse 63% 66% at 50% 43%, #000 52%, transparent 88%);
}
.eliza-opening .eliza-portrait figcaption {
  bottom: 3%;
  border-radius: 10px;
  border-color: rgba(151, 210, 195, .22);
  background: rgba(11, 27, 31, .85);
  padding: 13px 20px;
  color: #d1e0dc;
}
.eliza-opening .eliza-guide-nav {
  padding-block: 25px;
  gap: 8px 28px;
  border-top: 1px solid rgba(164, 203, 196, .17);
  border-bottom: 1px solid rgba(164, 203, 196, .17);
}
.eliza-opening .eliza-guide-nav a {
  padding: 9px 0;
  border-radius: 0;
  border: 0;
  background: transparent;
  color: #cad9d4;
  box-shadow: inset 0 -1px transparent;
}
.eliza-opening .eliza-guide-nav a:hover { color: #fff; box-shadow: inset 0 -1px #8acbb9; }
.eliza-opening .eliza-guide {
  position: relative;
  padding-block: clamp(42px, 5vw, 88px);
  border-bottom: 1px solid rgba(164, 203, 196, .10);
}
.eliza-opening .eliza-guide:last-child { border-bottom: 0; }
.eliza-opening .eliza-guide__heading h2 { max-width: 20ch; }
.eliza-opening .eliza-guide__grid article {
  background:
    radial-gradient(ellipse at top right, rgba(125, 202, 181, .08), transparent 75%),
    linear-gradient(145deg, rgba(28, 47, 49, .85), rgba(12, 25, 31, .88));
  border-color: rgba(175, 208, 197, .19);
  box-shadow: inset 0 1px rgba(222, 239, 223, .045), 0 16px 45px rgba(0, 0, 0, .12);
}
.eliza-opening .eliza-guide__grid article:nth-child(3n + 2) {
  background:
    radial-gradient(ellipse at top right, rgba(210, 178, 125, .075), transparent 75%),
    linear-gradient(145deg, rgba(35, 43, 43, .85), rgba(15, 26, 31, .88));
}
.eliza-opening .eliza-guide__kicker { color: #9fd3bd; }
.eliza-opening .eliza-guide__example { color: #cfdecb; border-color: #8caf98; }
.eliza-opening .eliza-guide--connection { background: none; }
@media (min-width: 1800px) {
  .eliza-opening .eliza-hero { min-height: 920px; }
}
@media (max-width: 900px) {
  .eliza-opening .eliza-hero { min-height: auto; padding: 130px 0 65px; }
  .eliza-opening .eliza-hero__inner { grid-template-columns: 1fr; gap: 30px; }
  .eliza-opening .eliza-hero__copy { max-width: 640px; }
  .eliza-opening .eliza-hero h1 { font-size: clamp(3.4rem, 8vw, 5rem); max-width: 14ch; }
  .eliza-opening .eliza-portrait { width: min(76vw, 540px); }
}
@media (max-width: 640px) {
  .eliza-opening .eliza-hero { padding-top: 115px; padding-bottom: 40px; }
  .eliza-opening .eliza-hero h1 { font-size: clamp(2.9rem, 11.5vw, 4.1rem); }
  .eliza-opening .eliza-hero__actions { flex-direction: row; gap: 10px; }
  .eliza-opening .eliza-hero__actions .button { padding: 13px 17px; font-size: .87rem; }
  .eliza-opening .eliza-portrait { width: min(92vw, 430px); }
  .eliza-opening .eliza-portrait figcaption { font-size: .78rem; padding: 11px 14px; }
  .eliza-opening .eliza-guide-nav { gap: 8px 22px; padding-block: 18px; }
  .eliza-opening .eliza-guide-nav a { font-size: .84rem; }
}
@media (prefers-reduced-motion: reduce) {
  .eliza-opening .eliza-pulse { animation: none; }
}
