/*
 * Nahum Haver presentation theme.
 * The Hebrew fonts are self-hosted; no CDN request is made at runtime.
 */
@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/assistant-hebrew-400-normal.woff2') format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/assistant-latin-400-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('../fonts/assistant-hebrew-500-normal.woff2') format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('../fonts/assistant-latin-500-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url('../fonts/assistant-hebrew-600-normal.woff2') format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

@font-face {
  font-family: 'Assistant';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url('../fonts/assistant-latin-600-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url('../fonts/heebo-hebrew-600-normal.woff2') format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url('../fonts/heebo-latin-600-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('../fonts/heebo-hebrew-700-normal.woff2') format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('../fonts/heebo-latin-700-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url('../fonts/heebo-hebrew-800-normal.woff2') format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url('../fonts/heebo-latin-800-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url('../fonts/heebo-hebrew-900-normal.woff2') format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url('../fonts/heebo-latin-900-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

:root {
  color-scheme: light;
  --ink: #071326;
  --stage: #071b3d;
  --cobalt: #0a49d8;
  --gold: #f2b544;
  --gold-soft: #ffd879;
  --pale: #eef6ff;
  --cool-white: #f8fafc;
  --white: #ffffff;
  --text: #102038;
  --muted: #52647a;
  --line: rgba(7, 27, 61, 0.15);
  --on-dark: #f8fafc;
  --on-dark-muted: #bfcce0;
  --focus: #84b7ff;
  --page-gutter: clamp(1.15rem, 4vw, 4.5rem);
  --content-max: 78rem;
  --reading-max: 43rem;
  --section-space: clamp(5.5rem, 9vw, 9rem);
  --header-height: 6.75rem;
  --radius-small: 0.8rem;
  --radius-medium: 1.35rem;
  --radius-large: 2rem;
  --shadow-soft: 0 1.5rem 4.5rem rgba(7, 19, 38, 0.13);
  --shadow-dark: 0 1.5rem 5rem rgba(0, 0, 0, 0.32);
}

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

html {
  min-width: 320px;
  background: var(--ink);
  scroll-behavior: smooth;
  scroll-padding-block-start: calc(var(--header-height) + var(--wp-admin--admin-bar--height, 0px));
  scrollbar-gutter: stable;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  overflow-x: clip;
  color: var(--text);
  background: var(--cool-white);
  font-size: 1.08rem;
  line-height: 1.7;
}

.nahum-site {
  min-width: 320px;
  overflow-x: clip;
  overflow-y: visible;
  color: var(--text);
  background: var(--cool-white);
  font-family: 'Assistant', Arial, sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

.nahum-site :where(.site-header, main, .site-footer) button,
.nahum-site :where(.site-header, main, .site-footer) a {
  -webkit-tap-highlight-color: transparent;
}

.nahum-site :where(.site-header, main, .site-footer) button,
.nahum-site :where(.site-header, main, .site-footer) input,
.nahum-site :where(.site-header, main, .site-footer) textarea,
.nahum-site :where(.site-header, main, .site-footer) select {
  font: inherit;
}

.nahum-site :where(.site-header, main, .site-footer) :where(a) {
  color: inherit;
  text-decoration: none;
}

.nahum-site :where(.site-header, main, .site-footer) img,
.nahum-site :where(.site-header, main, .site-footer) svg {
  display: block;
  max-width: 100%;
}

.nahum-site :where(.site-header, main, .site-footer) button {
  color: inherit;
}

.nahum-site :where(.site-header, main, .site-footer) h1,
.nahum-site :where(.site-header, main, .site-footer) h2,
.nahum-site :where(.site-header, main, .site-footer) h3,
.nahum-site :where(.site-header, main, .site-footer) p,
.nahum-site :where(.site-header, main, .site-footer) figure,
.nahum-site :where(.site-header, main, .site-footer) blockquote {
  margin-block-start: 0;
}

.nahum-site :where(.site-header, main, .site-footer) h1,
.nahum-site :where(.site-header, main, .site-footer) h2,
.nahum-site :where(.site-header, main, .site-footer) h3 {
  font-family: 'Heebo', Arial, sans-serif;
  line-height: 1.05;
  text-wrap: balance;
}

.nahum-site :where(.site-header, main, .site-footer) p {
  text-wrap: pretty;
}

::selection {
  color: var(--ink);
  background: var(--gold);
}

.layout-container {
  width: min(calc(100% - 2 * var(--page-gutter)), var(--content-max));
  margin-inline: auto;
}

.skip-link {
  position: fixed;
  inset-block-start: 0.75rem;
  inset-inline-start: 0.75rem;
  z-index: 200;
  padding: 0.75rem 1rem;
  color: var(--ink);
  background: var(--gold);
  border-radius: var(--radius-small);
  font-weight: 700;
  transform: translateY(-180%);
  transition: transform 160ms ease;
}

.skip-link:focus {
  transform: translateY(0);
}

.button {
  display: inline-flex;
  min-height: 3.25rem;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  padding: 0.8rem 1.35rem;
  border: 1px solid transparent;
  border-radius: 0.35rem;
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.1;
  transition:
    transform 180ms cubic-bezier(0.2, 0.8, 0.2, 1),
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

.button svg,
.text-link svg {
  width: 1.15rem;
  height: 1.15rem;
  flex: 0 0 auto;
}

.button svg,
.text-link svg,
.contact-action__arrow {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.button .icon--play {
  fill: currentColor;
  stroke: none;
  transform: none;
}

.button--large {
  min-height: 3.8rem;
  padding-inline: 1.7rem;
  font-size: 1.08rem;
}

.button--gold {
  color: var(--ink);
  background: var(--gold);
  border-color: var(--gold);
  box-shadow: 0 0.75rem 2.4rem rgba(242, 181, 68, 0.18);
}

.button--gold:hover {
  background: var(--gold-soft);
  border-color: var(--gold-soft);
  box-shadow: 0 1rem 3rem rgba(242, 181, 68, 0.28);
  transform: translateY(-2px);
}

.button--outline {
  color: var(--white);
  background: rgba(7, 19, 38, 0.16);
  border-color: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(8px);
}

.button--outline:hover {
  color: var(--ink);
  background: var(--white);
  border-color: var(--white);
  transform: translateY(-2px);
}

.button--ink {
  color: var(--white);
  background: var(--ink);
  border-color: var(--ink);
}

.button--ink:hover {
  background: var(--cobalt);
  border-color: var(--cobalt);
  transform: translateY(-2px);
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: var(--cobalt);
  font-weight: 700;
  line-height: 1.3;
}

.text-link svg,
.button svg {
  transform: scaleX(-1);
}

.text-link:hover {
  color: var(--stage);
}

.source-link {
  display: inline-block;
  border-block-end: 1px solid currentColor;
  color: var(--muted);
  font-size: 0.91rem;
  line-height: 1.35;
}

.source-link:hover {
  color: var(--cobalt);
}

.source-link--light {
  color: var(--gold-soft);
}

.source-link--light:hover {
  color: var(--white);
}

.lead {
  font-size: clamp(1.22rem, 2vw, 1.56rem);
  font-weight: 500;
  line-height: 1.55;
}

/* Header */

.site-header {
  position: absolute;
  inset-block-start: 0;
  inset-inline: 0;
  z-index: 80;
  height: var(--header-height);
  color: var(--white);
  background: linear-gradient(180deg, rgba(7, 19, 38, 0.92), rgba(7, 19, 38, 0.56) 72%, transparent);
}

.admin-bar .site-header {
  inset-block-start: 32px;
}

@media screen and (max-width: 782px) {
  .admin-bar .site-header {
    inset-block-start: 46px;
  }
}

.site-header::after {
  position: absolute;
  inset-inline: var(--page-gutter);
  inset-block-end: 0;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.18) 20%,
    rgba(255, 255, 255, 0.18) 80%,
    transparent
  );
  content: '';
}

.site-header__inner {
  display: grid;
  height: 100%;
  width: min(calc(100% - 2 * var(--page-gutter)), 96rem);
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: clamp(1.2rem, 3vw, 3rem);
}

.brand-mark {
  display: inline-flex;
  align-items: center;
  gap: 0.85rem;
  color: inherit;
}

.brand-mark__image {
  width: 4rem;
  height: 4rem;
  flex: 0 0 auto;
  border: 1px solid rgba(242, 181, 68, 0.82);
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 0 0 0.3rem rgba(242, 181, 68, 0.08);
}

.brand-mark__copy {
  display: grid;
  gap: 0.1rem;
  line-height: 1.1;
}

.brand-mark__copy strong {
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 1.24rem;
  font-weight: 800;
}

.brand-mark__copy span {
  color: var(--gold);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.015em;
}

.brand-mark--compact .brand-mark__image {
  width: 3.45rem;
  height: 3.45rem;
}

.desktop-nav,
.site-nav--desktop,
.desktop-nav > ul,
.site-nav--desktop > ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.05rem, 2.1vw, 2rem);
}

.desktop-nav > ul,
.site-nav--desktop > ul,
.mobile-menu ul,
[data-mobile-menu] ul,
.site-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.nav-link,
.desktop-nav a,
.site-nav--desktop a {
  position: relative;
  padding-block: 0.65rem;
  color: rgba(255, 255, 255, 0.78);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.98rem;
  font-weight: 600;
  white-space: nowrap;
  transition: color 160ms ease;
}

.nav-link::after,
.desktop-nav a::after,
.site-nav--desktop a::after {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0.05rem;
  height: 2px;
  background: var(--gold);
  content: '';
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 180ms ease;
}

.nav-link:hover,
.nav-link.is-active,
.desktop-nav a:hover,
.site-nav--desktop a:hover,
.desktop-nav .current-menu-item > a,
.desktop-nav .current_page_item > a,
.site-nav--desktop .current-menu-item > a,
.site-nav--desktop .current_page_item > a,
.desktop-nav a[aria-current='page'],
.site-nav--desktop a[aria-current='page'] {
  color: var(--white);
}

.nav-link.is-active::after,
.desktop-nav .current-menu-item > a::after,
.desktop-nav .current_page_item > a::after,
.site-nav--desktop .current-menu-item > a::after,
.site-nav--desktop .current_page_item > a::after,
.desktop-nav a[aria-current='page']::after,
.site-nav--desktop a[aria-current='page']::after {
  transform: scaleX(1);
}

.header-cta {
  min-width: 8.7rem;
}

.menu-toggle,
.mobile-menu,
[data-mobile-menu] {
  display: none;
}

[data-mobile-menu][hidden] {
  display: none !important;
}

/* Shared wave and sections */

.section {
  position: relative;
  isolation: isolate;
  padding-block: var(--section-space);
}

.section::after {
  position: absolute;
  inset: 0;
  z-index: 0;
  content: '';
  pointer-events: none;
}

.section > .layout-container {
  position: relative;
  z-index: 2;
}

.section--spotlight::after {
  background:
    radial-gradient(circle at 12% 20%, rgba(10, 73, 216, 0.12), transparent 24rem),
    radial-gradient(circle at 88% 78%, rgba(242, 181, 68, 0.13), transparent 21rem);
}

.section--stage::after {
  background:
    repeating-linear-gradient(116deg, transparent 0 8.5rem, rgba(10, 73, 216, 0.032) 8.5rem 8.65rem),
    radial-gradient(circle at 84% 18%, rgba(10, 73, 216, 0.08), transparent 23rem);
}

.section--constellation::after {
  background:
    radial-gradient(circle at 16% 16%, rgba(10, 73, 216, 0.32), transparent 25rem),
    radial-gradient(circle at 82% 72%, rgba(242, 181, 68, 0.13), transparent 22rem),
    linear-gradient(120deg, transparent 0 64%, rgba(255, 255, 255, 0.035) 64% 64.2%, transparent 64.2%);
}

.section--pulse::after {
  background:
    radial-gradient(circle at 12% 84%, rgba(10, 73, 216, 0.1), transparent 20rem),
    repeating-radial-gradient(circle at 92% 20%, transparent 0 2.8rem, rgba(242, 181, 68, 0.075) 2.8rem 2.9rem);
}

.section--pale {
  background: var(--pale);
}

.section--white {
  background: var(--cool-white);
}

.section--ink {
  color: var(--on-dark);
  background:
    radial-gradient(circle at 12% 20%, rgba(10, 73, 216, 0.18), transparent 28rem),
    linear-gradient(145deg, var(--stage), var(--ink));
}

.wave-divider {
  position: absolute;
  inset-block-start: 1px;
  inset-inline: 0;
  z-index: 1;
  width: 100%;
  height: clamp(4.5rem, 8vw, 8.7rem);
  overflow: hidden;
  pointer-events: none;
  transform: translateY(-99%);
}

.wave-divider svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.wave-divider--reverse .wave-divider__geometry {
  transform: translateX(1600px) scaleX(-1);
  transform-origin: center;
}

.wave-divider--pale .wave-divider__fill {
  fill: var(--pale);
}

.wave-divider--white .wave-divider__fill {
  fill: var(--cool-white);
}

.wave-divider--ink .wave-divider__fill {
  fill: var(--ink);
}

.wave-divider__ribbon {
  fill: none;
  stroke: var(--cobalt);
  stroke-width: 25;
  stroke-linecap: round;
  opacity: 0.88;
  vector-effect: non-scaling-stroke;
}

.wave-divider__line {
  fill: none;
  stroke: var(--gold);
  stroke-width: 7;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
}

.section-heading {
  position: relative;
  display: grid;
  max-width: var(--reading-max);
  gap: 0.9rem;
  margin-block-end: clamp(2.5rem, 5vw, 4.6rem);
  text-align: start;
}

.section-heading::before {
  width: clamp(4.75rem, 9vw, 7.75rem);
  height: 0.28rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--gold), var(--cobalt));
  content: '';
}

.section-heading h2 {
  max-width: 14ch;
  margin-block-end: 0;
  color: var(--ink);
  font-size: clamp(2.25rem, 5vw, 4.75rem);
  font-weight: 900;
  letter-spacing: -0.035em;
}

.section-heading__rule {
  width: clamp(4.75rem, 9vw, 7.75rem);
  height: 0.28rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--gold), var(--cobalt));
}

.section-heading p {
  max-width: 38rem;
  margin-block-end: 0;
  color: var(--muted);
  font-size: 1.16rem;
  line-height: 1.65;
}

.section-heading--center {
  justify-items: center;
  margin-inline: auto;
  text-align: center;
}

.section-heading--center h2 {
  max-width: 16ch;
}

.section-heading--light h2 {
  color: var(--white);
}

.section-heading--light p {
  color: var(--on-dark-muted);
}

.section-heading--light::before {
  background: linear-gradient(90deg, var(--gold), #68a1ff);
}

/* Home hero */

.hero {
  position: relative;
  isolation: isolate;
  min-height: min(58.5rem, 100svh);
  overflow: clip;
  color: var(--white);
  background: var(--ink);
}

.hero__media {
  position: absolute;
  inset: 0;
  z-index: -2;
  display: block;
}

.hero__media picture {
  display: block;
  width: 100%;
  height: 100%;
}

.hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hero__edge-fade {
  position: absolute;
  inset: 0;
  z-index: -1;
  display: block;
  background: linear-gradient(
    90deg,
    transparent 28%,
    rgba(7, 19, 38, 0.7) 48%,
    rgba(7, 19, 38, 0.94) 100%
  );
  pointer-events: none;
}

.hero__content {
  display: flex;
  width: min(calc(100% - 2 * var(--page-gutter)), 96rem);
  min-height: min(58.5rem, 100svh);
  align-items: center;
  padding-block: calc(var(--header-height) + 3rem) clamp(8rem, 14vh, 11rem);
}

.hero__copy {
  width: min(50%, 47rem);
  margin-inline-start: 0;
}

.hero h1 {
  margin-block-end: 1.7rem;
  font-size: clamp(3.9rem, 6.2vw, 6.55rem);
  font-weight: 900;
  letter-spacing: -0.055em;
  text-shadow: 0 0.2rem 2rem rgba(0, 0, 0, 0.28);
}

.hero h1 span {
  display: block;
}

.hero h1 em {
  color: var(--gold);
  font-style: normal;
}

.hero__copy > p {
  max-width: 34rem;
  margin-block-end: 2.2rem;
  color: #dce7f7;
  font-size: clamp(1.16rem, 1.75vw, 1.45rem);
  line-height: 1.6;
}

.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.hero > .wave-divider,
.page-hero > .wave-divider {
  inset-block-start: auto;
  inset-block-end: -1px;
  z-index: 4;
  height: clamp(5rem, 9vw, 9.8rem);
  transform: none;
}

/* Home: audience */

.audience-section {
  padding-block-start: clamp(5.8rem, 8vw, 8.5rem);
}

.audience-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-block: 1px solid var(--line);
}

.audience-panel {
  position: relative;
  display: grid;
  min-height: 27rem;
  align-content: end;
  padding: clamp(2rem, 4vw, 4rem);
  overflow: hidden;
}

.audience-panel:first-child {
  border-inline-end: 1px solid var(--line);
}

.audience-panel::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: '';
  opacity: 0;
  transition: opacity 240ms ease;
}

.audience-panel--business::before {
  background: linear-gradient(145deg, rgba(10, 73, 216, 0.1), transparent 65%);
}

.audience-panel--private::before {
  background: linear-gradient(215deg, rgba(242, 181, 68, 0.13), transparent 65%);
}

.audience-panel:hover::before {
  opacity: 1;
}

.audience-panel__index {
  position: absolute;
  inset-block-start: 1.5rem;
  inset-inline-end: 1.5rem;
  color: rgba(7, 27, 61, 0.08);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(6rem, 12vw, 11rem);
  font-weight: 900;
  line-height: 1;
}

.audience-panel h3 {
  margin-block-end: 1rem;
  color: var(--ink);
  font-size: clamp(2rem, 3.6vw, 3.55rem);
  font-weight: 800;
}

.audience-panel p {
  max-width: 28rem;
  margin-block-end: 1.6rem;
  color: var(--muted);
  font-size: 1.13rem;
}

/* Home: show intro */

.show-intro__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
  align-items: center;
  gap: clamp(3rem, 7vw, 7rem);
}

.show-intro__visual {
  position: relative;
  min-height: 39rem;
}

.format-wordmark {
  position: absolute;
  inset-block-start: 2rem;
  inset-inline-start: -1rem;
  z-index: 0;
  display: grid;
  color: rgba(7, 19, 38, 0.08);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(4.5rem, 9vw, 8.5rem);
  font-weight: 900;
  letter-spacing: -0.07em;
  line-height: 0.78;
}

.format-wordmark strong {
  color: rgba(242, 181, 68, 0.22);
  font-size: 1.15em;
}

.show-intro__portrait {
  position: absolute;
  inset-block-end: 0;
  inset-inline: clamp(0rem, 4vw, 4rem);
  z-index: 1;
  overflow: hidden;
  border-radius: 50% 50% 2rem 2rem / 38% 38% 2rem 2rem;
  box-shadow: var(--shadow-soft);
}

.show-intro__portrait::after {
  position: absolute;
  inset: auto 0 0;
  height: 25%;
  background: linear-gradient(transparent, rgba(7, 19, 38, 0.52));
  content: '';
}

.show-intro__portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.show-intro__copy {
  max-width: 34rem;
}

.show-intro__copy .section-heading {
  margin-block-end: 1.75rem;
}

.show-intro__copy p:not(.lead) {
  color: var(--muted);
}

.show-intro__copy .source-link {
  display: table;
  margin-block: 0.25rem 2rem;
}

.show-intro__visual--graphic {
  display: grid;
  place-items: center;
}

.stage-poster {
  position: relative;
  isolation: isolate;
  display: grid;
  width: min(100%, 34rem);
  aspect-ratio: 4 / 5;
  align-content: center;
  justify-items: start;
  padding: clamp(2.25rem, 5vw, 4.5rem);
  overflow: hidden;
  color: var(--white);
  background:
    radial-gradient(circle at 26% 22%, rgba(10, 73, 216, 0.76), transparent 18rem),
    linear-gradient(145deg, var(--stage), var(--ink));
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 48% 48% 2.2rem 2.2rem / 33% 33% 2.2rem 2.2rem;
  box-shadow: var(--shadow-dark);
}

.stage-poster::before {
  position: absolute;
  inset: 8% -19% auto auto;
  z-index: -1;
  width: 78%;
  aspect-ratio: 1;
  border: 1.15rem solid rgba(242, 181, 68, 0.16);
  border-radius: 50%;
  content: '';
}

.stage-poster::after {
  position: absolute;
  inset: auto -12% -7% -12%;
  z-index: -1;
  height: 28%;
  background: linear-gradient(100deg, var(--cobalt), #1765ff 58%, var(--gold) 58.5%);
  clip-path: polygon(0 42%, 100% 0, 100% 100%, 0 100%);
  content: '';
}

.stage-poster__eyebrow {
  margin-block-end: 1.3rem;
  padding: 0.35rem 0.8rem;
  color: var(--gold-soft);
  border: 1px solid rgba(242, 181, 68, 0.48);
  border-radius: 999px;
  font-size: 0.86rem;
  font-weight: 700;
}

.stage-poster strong,
.stage-poster em {
  position: relative;
  z-index: 1;
  font-family: 'Heebo', Arial, sans-serif;
  font-weight: 900;
  letter-spacing: -0.06em;
  line-height: 0.84;
}

.stage-poster strong {
  font-size: clamp(4.3rem, 8vw, 7.25rem);
}

.stage-poster em {
  color: var(--gold);
  font-size: clamp(5.4rem, 10vw, 9rem);
  font-style: normal;
}

.stage-poster__orbit {
  position: absolute;
  inset-block-start: 13%;
  inset-inline-start: 8%;
  width: 18%;
  aspect-ratio: 1;
  border: 2px solid rgba(255, 255, 255, 0.48);
  border-radius: 50%;
  box-shadow:
    0 0 0 1rem rgba(255, 255, 255, 0.035),
    0 0 0 2.2rem rgba(255, 255, 255, 0.02);
}

/* Videos */

.home-videos {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.moment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, 3vw, 2.5rem);
}

.moment-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-dark);
}

.moment-card a {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: 24rem;
  align-content: end;
  padding: clamp(2rem, 4vw, 3.75rem);
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 15%, rgba(80, 135, 255, 0.36), transparent 16rem),
    linear-gradient(145deg, #0b2e70, var(--stage));
}

.moment-card--gold a {
  background:
    radial-gradient(circle at 18% 20%, rgba(242, 181, 68, 0.3), transparent 15rem),
    linear-gradient(145deg, #1b2740, var(--ink));
}

.moment-card a::before {
  position: absolute;
  inset-block-start: -28%;
  inset-inline-end: -14%;
  z-index: -1;
  width: 68%;
  aspect-ratio: 1;
  border: 1.15rem solid rgba(255, 255, 255, 0.065);
  border-radius: 50%;
  content: '';
  transition: transform 480ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.moment-card a:hover::before {
  transform: scale(1.08) rotate(-7deg);
}

.moment-card__number {
  position: absolute;
  inset-block-start: -1.2rem;
  inset-inline-end: 1rem;
  z-index: -1;
  color: rgba(255, 255, 255, 0.07);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(8rem, 16vw, 13rem);
  font-weight: 900;
  line-height: 1;
}

.moment-card__type {
  margin-block-end: 0.8rem;
  color: var(--gold-soft);
  font-size: 0.88rem;
  font-weight: 700;
}

.moment-card h3 {
  max-width: 10ch;
  margin-block-end: 1.75rem;
  color: var(--white);
  font-size: clamp(2.5rem, 4.7vw, 4.7rem);
  font-weight: 900;
}

.moment-card__link {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 2.75rem;
  padding-inline: 1rem;
  color: var(--ink);
  background: var(--gold);
  border-radius: 999px;
  font-weight: 800;
}

.video-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, 3vw, 2.5rem);
}

.video-card {
  overflow: hidden;
  color: var(--text);
  background: var(--cool-white);
  border-radius: var(--radius-medium);
  box-shadow: var(--shadow-dark);
}

.video-card__media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--stage);
}

.video-card__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(7, 19, 38, 0.74));
  content: '';
  pointer-events: none;
}

.video-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 480ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.video-card__media:hover img {
  transform: scale(1.025);
}

.video-card__play {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  z-index: 2;
  display: grid;
  width: 4.65rem;
  height: 4.65rem;
  place-items: center;
  color: var(--ink);
  background: var(--gold);
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 50%;
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.3);
  transform: translate(50%, -50%);
  transition:
    transform 180ms ease,
    background-color 180ms ease;
}

.video-card__play svg {
  width: 2rem;
  height: 2rem;
  fill: currentColor;
}

.video-card__media:hover .video-card__play {
  background: var(--gold-soft);
  transform: translate(50%, -50%) scale(1.06);
}

.video-card__source {
  position: absolute;
  inset-block-end: 1rem;
  inset-inline-start: 1rem;
  z-index: 2;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.video-card__body {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.6rem 1.7rem 1.8rem;
}

.video-card__body h3 {
  margin-block-end: 0.5rem;
  font-size: 1.55rem;
}

.video-card__body p {
  max-width: 30rem;
  margin-block-end: 0;
  color: var(--muted);
}

.video-card__body .text-link {
  flex: 0 0 auto;
  margin-block-end: 0.18rem;
}

.section-action {
  margin-block-start: 2.4rem;
}

/* Recommendation and CTA */

.recommendation-section__grid,
.video-recommendation__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.recommendation-section .section-heading,
.video-recommendation .section-heading {
  margin-block-end: 0;
}

.quote-block {
  position: relative;
  margin: 0;
  padding: clamp(2.2rem, 4vw, 4rem);
  overflow: hidden;
  color: var(--white);
  background:
    radial-gradient(circle at 10% 10%, rgba(10, 73, 216, 0.48), transparent 19rem),
    linear-gradient(145deg, var(--stage), var(--ink));
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-soft);
}

.quote-block__mark {
  position: absolute;
  inset-block-start: -1.2rem;
  inset-inline-end: 1.2rem;
  color: rgba(242, 181, 68, 0.16);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(9rem, 18vw, 15rem);
  font-weight: 900;
  line-height: 1;
}

.quote-block blockquote {
  position: relative;
  z-index: 1;
  margin-block-end: 2.5rem;
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.7rem, 3.2vw, 2.85rem);
  font-weight: 700;
  line-height: 1.35;
  text-wrap: balance;
}

.quote-block figcaption {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-block-start: 1.15rem;
  border-block-start: 1px solid rgba(255, 255, 255, 0.18);
}

.quote-block figcaption strong {
  color: var(--gold);
}

.quote-block figcaption a {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: var(--on-dark-muted);
  font-size: 0.88rem;
}

.quote-block figcaption svg {
  width: 1.05rem;
  height: 1.05rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
}

.final-cta {
  position: relative;
  isolation: isolate;
  overflow: clip;
  padding-block: clamp(5rem, 9vw, 8rem);
  color: var(--white);
  background: var(--ink);
}

.final-cta__ambient {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(circle at 14% 90%, rgba(10, 73, 216, 0.38), transparent 31rem),
    linear-gradient(120deg, transparent 0 58%, rgba(242, 181, 68, 0.08) 58% 59%, transparent 59%);
}

.final-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(2rem, 6vw, 6rem);
}

.final-cta h2 {
  max-width: 17ch;
  margin-block-end: 1rem;
  font-size: clamp(2.3rem, 4.7vw, 4.65rem);
  font-weight: 900;
  letter-spacing: -0.035em;
}

.final-cta p {
  max-width: 38rem;
  margin-block-end: 0;
  color: var(--on-dark-muted);
  font-size: 1.16rem;
}

.final-cta--light {
  color: var(--ink);
  background: var(--pale);
}

.final-cta--light p {
  color: var(--muted);
}

/* Inner page hero */

.page-hero {
  position: relative;
  isolation: isolate;
  min-height: clamp(35rem, 65vh, 46rem);
  overflow: clip;
  color: var(--white);
  background: var(--ink);
}

.page-hero__ambient {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    radial-gradient(circle at 14% 40%, rgba(10, 73, 216, 0.42), transparent 30rem),
    radial-gradient(circle at 70% 120%, rgba(242, 181, 68, 0.12), transparent 32rem),
    linear-gradient(145deg, var(--stage), var(--ink));
}

.page-hero__ambient::after {
  position: absolute;
  inset-block-end: 8rem;
  inset-inline: -5%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  content: '';
  opacity: 0.34;
  transform: rotate(-4deg);
}

.page-hero__ambient::before {
  position: absolute;
  inset-block-start: 15%;
  inset-inline-end: 7%;
  width: min(38vw, 34rem);
  aspect-ratio: 1;
  border: clamp(0.7rem, 1.5vw, 1.35rem) solid rgba(255, 255, 255, 0.055);
  border-radius: 50%;
  box-shadow:
    0 0 0 clamp(2.2rem, 5vw, 5rem) rgba(255, 255, 255, 0.025),
    0 0 0 clamp(5rem, 10vw, 9rem) rgba(255, 255, 255, 0.014);
  content: '';
}

.page-hero--show .page-hero__ambient {
  background:
    radial-gradient(circle at 18% 34%, rgba(10, 73, 216, 0.62), transparent 29rem),
    linear-gradient(142deg, #071b3d, #061123 72%);
}

.page-hero--show .page-hero__ambient::before {
  border-color: rgba(67, 127, 255, 0.2);
  transform: rotate(-12deg) scaleX(1.22);
}

.page-hero--about .page-hero__ambient {
  background:
    radial-gradient(circle at 76% 28%, rgba(242, 181, 68, 0.22), transparent 25rem),
    radial-gradient(circle at 12% 76%, rgba(10, 73, 216, 0.34), transparent 27rem),
    linear-gradient(145deg, #081b36, var(--ink));
}

.page-hero--about .page-hero__ambient::before {
  border-radius: 44% 56% 65% 35% / 46% 38% 62% 54%;
  border-color: rgba(242, 181, 68, 0.2);
  transform: rotate(18deg);
}

.page-hero--videos .page-hero__ambient {
  background:
    linear-gradient(120deg, rgba(10, 73, 216, 0.34), transparent 47%),
    repeating-linear-gradient(112deg, transparent 0 7rem, rgba(255, 255, 255, 0.035) 7rem 7.15rem),
    linear-gradient(145deg, var(--stage), var(--ink));
}

.page-hero--videos .page-hero__ambient::before {
  border-color: rgba(105, 156, 255, 0.2);
  border-radius: 2.5rem;
  transform: rotate(-9deg);
}

.page-hero--contact .page-hero__ambient {
  background:
    radial-gradient(circle at 82% 24%, rgba(242, 181, 68, 0.18), transparent 24rem),
    linear-gradient(135deg, #06152d, #071326 70%);
}

.page-hero--contact .page-hero__ambient::before {
  width: min(34vw, 30rem);
  border-color: rgba(242, 181, 68, 0.19);
  border-radius: 50% 50% 1.5rem 1.5rem;
  transform: rotate(7deg);
}

.page-hero__content {
  display: flex;
  min-height: clamp(35rem, 65vh, 46rem);
  align-items: center;
  padding-block: calc(var(--header-height) + 3rem) clamp(8rem, 13vw, 10rem);
}

.page-hero__copy {
  position: relative;
  z-index: 2;
  max-width: 52rem;
}

.page-hero__copy::before {
  display: block;
  width: clamp(5rem, 10vw, 9rem);
  height: 0.33rem;
  margin-block-end: 1.5rem;
  background: linear-gradient(90deg, var(--gold), var(--cobalt));
  border-radius: 999px;
  content: '';
}

.page-hero__copy h1 {
  max-width: 14ch;
  margin-block-end: 1.6rem;
  font-size: clamp(3.4rem, 6.8vw, 6.7rem);
  font-weight: 900;
  letter-spacing: -0.055em;
}

.page-hero__copy p {
  max-width: 39rem;
  margin-block-end: 0;
  color: var(--on-dark-muted);
  font-size: clamp(1.18rem, 2vw, 1.48rem);
  line-height: 1.6;
}

.page-hero__actions {
  margin-block-start: 2rem;
}

.page-hero__media {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: max(var(--page-gutter), calc((100vw - var(--content-max)) / 2));
  z-index: -1;
  width: min(43vw, 37rem);
  height: 84%;
  object-fit: cover;
  object-position: top;
  border-start-start-radius: 45%;
  border-start-end-radius: 45%;
  opacity: 0.9;
  -webkit-mask-image: linear-gradient(to bottom, #000 0 80%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0 80%, transparent 100%);
}

.page-hero--with-image .page-hero__copy {
  width: min(54%, 44rem);
}

/* Show page */

.format-rail {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: stretch;
  border-block: 1px solid var(--line);
}

.format-rail__item {
  display: grid;
  min-height: 23rem;
  grid-template-columns: auto 1fr;
  align-content: center;
  gap: clamp(1.2rem, 2.5vw, 2.5rem);
  padding: clamp(2rem, 4vw, 4rem);
}

.format-rail__number {
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.95rem;
  font-weight: 800;
}

.format-rail__item h2 {
  margin-block-end: 1rem;
  font-size: clamp(2.35rem, 4vw, 4rem);
}

.format-rail__item p {
  max-width: 29rem;
  margin-block-end: 0;
  color: var(--muted);
}

.format-rail__plus {
  align-self: center;
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(4rem, 8vw, 7rem);
  font-weight: 300;
}

.topics-section__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.topics-section .section-heading {
  margin-block-end: 1.8rem;
}

.topics-section .source-link {
  margin-block-start: 0.5rem;
}

.topic-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-block-start: 1px solid var(--line);
}

.topic-list li {
  display: grid;
  grid-template-columns: 4rem 1fr;
  align-items: center;
  min-height: 5.5rem;
  border-block-end: 1px solid var(--line);
}

.topic-list span {
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.86rem;
  font-weight: 800;
}

.topic-list strong {
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.35rem, 2.5vw, 2.1rem);
  font-weight: 700;
}

.audience-fit {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.audience-fit__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: end;
  gap: clamp(3rem, 8vw, 8rem);
}

.audience-fit .section-heading {
  margin-block-end: 0;
}

.audience-fit__columns {
  display: grid;
  gap: 0;
  border-block: 1px solid rgba(255, 255, 255, 0.18);
}

.audience-fit__columns > div {
  padding-block: 2.2rem;
}

.audience-fit__columns > div + div {
  border-block-start: 1px solid rgba(255, 255, 255, 0.18);
}

.audience-fit__columns h3 {
  margin-block-end: 0.75rem;
  color: var(--gold);
  font-size: 1.75rem;
}

.audience-fit__columns p {
  margin-block-end: 0;
  color: var(--on-dark-muted);
}

.show-contact__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
}

.show-contact h2 {
  max-width: 17ch;
  margin-block-end: 0.8rem;
  font-size: clamp(2.4rem, 4vw, 4.15rem);
}

.show-contact p {
  margin-block-end: 0;
  color: var(--muted);
}

/* About */

.about-story__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
  gap: clamp(3rem, 8vw, 8rem);
}

.about-story .section-heading {
  margin-block-end: 0;
}

.about-story__copy {
  max-width: 41rem;
}

.about-story__copy p:not(.lead) {
  color: var(--muted);
}

.about-story__media img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-soft);
}

.principles-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-block: 1px solid var(--line);
}

.principle {
  min-height: 24rem;
  padding: clamp(2rem, 3.4vw, 3.5rem);
}

.principle + .principle {
  border-inline-start: 1px solid var(--line);
}

.principle > span {
  display: inline-block;
  margin-block-end: 5rem;
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.9rem;
  font-weight: 800;
}

.principle h3 {
  margin-block-end: 1rem;
  font-size: clamp(1.75rem, 3vw, 2.6rem);
}

.principle p {
  margin-block-end: 0;
  color: var(--muted);
}

.about-gallery {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.about-gallery__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.76fr) minmax(0, 1.24fr);
  align-items: center;
  gap: clamp(3rem, 7vw, 7rem);
}

.about-gallery__copy .section-heading {
  margin-block-end: 2rem;
}

.about-gallery__media {
  position: relative;
  min-height: 32rem;
}

.about-gallery__wide {
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
  width: 86%;
  height: 70%;
  object-fit: cover;
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-dark);
}

.about-gallery__portrait {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  width: 43%;
  aspect-ratio: 1;
  object-fit: cover;
  border: 0.45rem solid var(--ink);
  border-radius: 50%;
  box-shadow: var(--shadow-dark);
}

/* Videos page */

.video-grid--page .video-card {
  box-shadow: var(--shadow-soft);
}

.video-grid--page .video-card__media {
  aspect-ratio: 4 / 3;
}

.media-note {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.media-note__inner,
.contact-social__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
}

.media-note h2,
.contact-social h2 {
  margin-block-end: 0.8rem;
  font-size: clamp(2.4rem, 4.2vw, 4.3rem);
}

.media-note p,
.contact-social p {
  max-width: 42rem;
  margin-block-end: 0;
  color: var(--on-dark-muted);
}

/* Contact */

.contact-page__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  align-items: start;
  gap: clamp(3rem, 8vw, 8rem);
}

.contact-page .section-heading {
  margin-block-end: 2.2rem;
}

.brief-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-block-start: 1px solid var(--line);
}

.brief-list li {
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 1rem;
  padding-block: 0.85rem;
  border-block-end: 1px solid var(--line);
  color: var(--text);
  font-weight: 600;
}

.brief-list span {
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.82rem;
  font-weight: 800;
}

.contact-actions {
  display: grid;
  gap: 1rem;
}

.contact-action {
  display: grid;
  min-height: 8.3rem;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1.25rem;
  padding: 1.4rem 1.6rem;
  color: var(--white);
  background:
    radial-gradient(circle at 10% 50%, rgba(10, 73, 216, 0.4), transparent 16rem),
    var(--ink);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-medium);
  box-shadow: var(--shadow-soft);
  transition:
    transform 180ms ease,
    border-color 180ms ease;
}

.contact-action:hover {
  border-color: rgba(242, 181, 68, 0.65);
  transform: translateY(-2px);
}

.contact-action__icon {
  display: grid;
  width: 3.8rem;
  height: 3.8rem;
  place-items: center;
  color: var(--ink);
  background: var(--gold);
  border-radius: 50%;
}

.contact-action__icon svg {
  width: 1.65rem;
  height: 1.65rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.contact-action small {
  display: block;
  margin-block-end: 0.25rem;
  color: var(--on-dark-muted);
  font-size: 0.85rem;
}

.contact-action strong {
  display: block;
  overflow-wrap: anywhere;
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.2rem, 2.4vw, 1.75rem);
  line-height: 1.3;
}

.contact-action__arrow {
  width: 1.4rem;
  height: 1.4rem;
  color: var(--gold);
}

.contact-actions__note {
  margin: 0.5rem 0 0;
  color: var(--muted);
  font-size: 0.9rem;
}

.contact-actions__note a {
  color: var(--cobalt);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.contact-social {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

/* Footer */

.site-footer {
  color: var(--on-dark);
  background: #040c19;
}

.site-footer__main {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(10rem, 0.65fr) minmax(14rem, 0.8fr);
  gap: clamp(3rem, 8vw, 8rem);
  padding-block: clamp(4rem, 7vw, 6rem);
}

.site-footer__brand > p {
  max-width: 29rem;
  margin-block: 1.4rem 0;
  color: var(--on-dark-muted);
}

.site-footer h2 {
  margin-block-end: 1.2rem;
  color: var(--gold);
  font-size: 1rem;
  font-weight: 700;
}

.site-footer__links,
.site-footer__contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7rem;
}

.site-footer__links a,
.site-footer__contact a {
  color: var(--on-dark-muted);
  line-height: 1.35;
}

.site-footer__links a:hover,
.site-footer__contact a:hover {
  color: var(--white);
}

.site-footer__legal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding-block: 1.5rem;
  border-block-start: 1px solid rgba(255, 255, 255, 0.1);
  color: #8494ac;
  font-size: 0.82rem;
}

.site-footer__legal p {
  margin: 0;
}

.not-found {
  display: grid;
  min-height: 70vh;
  place-items: center;
  padding-block: calc(var(--header-height) + 5rem) 7rem;
  color: var(--white);
  text-align: center;
  background: var(--ink);
}

.not-found__code {
  margin: 0;
  color: var(--gold);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(6rem, 15vw, 13rem);
  font-weight: 900;
  line-height: 0.8;
}

.not-found h1 {
  margin-block: 2rem;
  font-size: clamp(2.5rem, 5vw, 4.5rem);
}

/* Progressive motion enhancement: content is readable when JavaScript fails. */

.motion-ready .nahum-site :where(.site-header, main, .site-footer) [data-reveal] {
  opacity: 1;
  transform: none;
}

.motion-ready .nahum-site :where(.site-header, main, .site-footer) [data-reveal].is-visible {
  animation: nh-reveal-in 560ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
  animation-delay: var(--reveal-delay, 0ms);
}

@keyframes nh-reveal-in {
  from {
    opacity: 0.25;
    transform: translate3d(0, var(--reveal-distance, 1.35rem), 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.motion-ready .wave-divider__line {
  opacity: 0;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  transition:
    stroke-dashoffset 900ms cubic-bezier(0.2, 0.8, 0.2, 1),
    opacity 320ms ease;
}

.motion-ready .wave-divider.is-drawn .wave-divider__line {
  opacity: 0.82;
  stroke-dashoffset: 0;
}

/* Responsive */

@media (max-width: 1120px) {
  :root {
    --header-height: 6rem;
  }

  .site-header__inner {
    grid-template-columns: auto 1fr auto;
  }

  .desktop-nav,
  .site-nav--desktop,
  .desktop-nav > ul,
  .site-nav--desktop > ul {
    gap: 1rem;
  }

  .nav-link {
    font-size: 0.9rem;
  }

  .header-cta {
    min-width: 7.8rem;
  }

  .brand-mark--compact .brand-mark__copy {
    display: none;
  }

  .hero__copy {
    width: min(52%, 38rem);
  }

  .hero h1 {
    font-size: clamp(3.65rem, 6.5vw, 5.5rem);
  }

  .show-intro__visual {
    min-height: 34rem;
  }

  .video-card__body {
    align-items: start;
    flex-direction: column;
  }
}

@media (max-width: 900px) {
  :root {
    --page-gutter: clamp(1rem, 4.8vw, 2.5rem);
  }

  .desktop-nav,
  .site-nav--desktop,
  .header-cta {
    display: none;
  }

  .site-header__inner {
    grid-template-columns: 1fr auto;
  }

  .brand-mark--compact .brand-mark__copy {
    display: grid;
  }

  .menu-toggle {
    display: grid;
    width: 3rem;
    height: 3rem;
    place-items: center;
    padding: 0;
    color: var(--white);
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 50%;
    cursor: pointer;
  }

  .menu-toggle svg {
    width: 1.65rem;
    height: 1.65rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    transition: stroke 180ms ease;
  }

  .mobile-menu,
  [data-mobile-menu] {
    position: absolute;
    inset-block-start: var(--header-height);
    inset-inline: 0;
    display: grid;
    overflow: hidden;
    color: var(--white);
    background: rgba(4, 12, 25, 0.98);
    border-block-end: 1px solid rgba(242, 181, 68, 0.28);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-0.75rem);
    visibility: hidden;
    transition:
      opacity 180ms ease,
      transform 180ms ease;
  }

  .mobile-menu.is-open,
  [data-mobile-menu].is-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
  }

  .mobile-menu__nav,
  [data-mobile-menu] > nav {
    display: grid;
    padding-block: 1rem 1.5rem;
  }

  .mobile-menu .nav-link,
  .mobile-menu a:not(.button),
  [data-mobile-menu] .nav-link,
  [data-mobile-menu] a:not(.button) {
    min-height: 3.2rem;
    padding: 0.8rem 0;
    border-block-end: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 1.05rem;
  }

  .mobile-menu .nav-link::after,
  .mobile-menu a::after,
  [data-mobile-menu] .nav-link::after,
  [data-mobile-menu] a::after {
    display: none;
  }

  .mobile-menu__cta {
    margin-block-start: 1rem;
  }

  .hero__copy {
    width: 54%;
  }

  .hero h1 {
    font-size: clamp(3.1rem, 7.3vw, 4.6rem);
  }

  .hero__copy > p {
    font-size: 1.08rem;
  }

  .audience-split,
  .show-intro__grid,
  .recommendation-section__grid,
  .video-recommendation__grid,
  .topics-section__grid,
  .audience-fit__grid,
  .about-story__grid,
  .about-gallery__grid,
  .contact-page__grid {
    grid-template-columns: 1fr;
  }

  .audience-panel {
    min-height: 22rem;
  }

  .audience-panel:first-child {
    border-inline-end: 0;
    border-block-end: 1px solid var(--line);
  }

  .show-intro__visual {
    order: 2;
    min-height: 38rem;
  }

  .show-intro__copy {
    max-width: 41rem;
  }

  .video-grid {
    grid-template-columns: 1fr;
  }

  .moment-grid {
    grid-template-columns: 1fr;
  }

  .quote-block {
    max-width: 44rem;
  }

  .page-hero--with-image .page-hero__copy {
    width: 58%;
  }

  .page-hero__media {
    width: 49vw;
    opacity: 0.76;
  }

  .format-rail {
    grid-template-columns: 1fr;
  }

  .format-rail__item {
    min-height: 17rem;
  }

  .format-rail__plus {
    justify-self: center;
    line-height: 0.5;
  }

  .about-story__copy {
    max-width: 46rem;
  }

  .principles-list {
    grid-template-columns: 1fr;
  }

  .principle {
    display: grid;
    min-height: 0;
    grid-template-columns: 3rem 1fr;
    column-gap: 1.2rem;
  }

  .principle + .principle {
    border-block-start: 1px solid var(--line);
    border-inline-start: 0;
  }

  .principle > span {
    grid-row: 1 / span 2;
    margin: 0;
  }

  .about-gallery__copy {
    max-width: 40rem;
  }

  .about-gallery__media {
    min-height: 38rem;
  }

  .site-footer__main {
    grid-template-columns: 1fr 1fr;
  }

  .site-footer__brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  :root {
    --header-height: 5.4rem;
    --section-space: clamp(4.5rem, 17vw, 6rem);
  }

  body {
    font-size: 1rem;
  }

  .brand-mark--compact .brand-mark__image {
    width: 3rem;
    height: 3rem;
  }

  .brand-mark__copy strong {
    font-size: 1.06rem;
  }

  .brand-mark__copy span {
    font-size: 0.74rem;
  }

  .wave-divider,
  .hero > .wave-divider,
  .page-hero > .wave-divider {
    height: 4.5rem;
  }

  .wave-divider__line {
    stroke-width: 4;
  }

  .wave-divider__ribbon {
    stroke-width: 16;
  }

  .section-heading {
    gap: 0.75rem;
    margin-block-end: 2.4rem;
  }

  .section-heading h2 {
    font-size: clamp(2.2rem, 11vw, 3.2rem);
  }

  .section-heading p {
    font-size: 1.02rem;
  }

  .hero {
    min-height: 56rem;
  }

  .hero__media {
    height: 57%;
    -webkit-mask-image: linear-gradient(to bottom, #000 0 78%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 0 78%, transparent 100%);
  }

  .hero__media img {
    object-position: 50% 16%;
  }

  .hero__edge-fade {
    background:
      linear-gradient(
        180deg,
        rgba(7, 19, 38, 0.08) 18%,
        rgba(7, 19, 38, 0.58) 52%,
        rgba(7, 19, 38, 0.96) 73%,
        var(--ink) 100%
      ),
      linear-gradient(90deg, rgba(7, 19, 38, 0.18), rgba(7, 19, 38, 0.58));
  }

  .hero__content {
    min-height: 56rem;
    align-items: end;
    padding-block: calc(var(--header-height) + 1rem) 7.5rem;
  }

  .hero__copy {
    width: 100%;
  }

  .hero h1 {
    max-width: 10.5ch;
    margin-block-end: 1.1rem;
    font-size: clamp(3rem, 14.5vw, 4rem);
    letter-spacing: -0.06em;
  }

  .hero__copy > p {
    max-width: 31rem;
    margin-block-end: 1.5rem;
    color: #dbe7f8;
    font-size: 1.03rem;
    line-height: 1.5;
  }

  .hero__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .hero__actions .button {
    width: 100%;
  }

  .audience-panel {
    min-height: 20rem;
    padding: 1.7rem;
  }

  .audience-panel__index {
    inset-block-start: 1rem;
    inset-inline-end: 1rem;
  }

  .show-intro__grid {
    gap: 2rem;
  }

  .show-intro__visual {
    min-height: 29rem;
  }

  .stage-poster {
    width: min(100%, 25rem);
    min-height: 29rem;
    aspect-ratio: auto;
    padding: 2rem;
  }

  .stage-poster strong {
    font-size: clamp(3.8rem, 18vw, 5.2rem);
  }

  .stage-poster em {
    font-size: clamp(4.8rem, 22vw, 6.5rem);
  }

  .moment-card a {
    min-height: 19rem;
    padding: 1.65rem;
  }

  .show-intro__portrait {
    inset-inline: 0;
  }

  .format-wordmark {
    inset-inline-start: 0;
    font-size: clamp(4rem, 20vw, 6rem);
  }

  .video-card__media,
  .video-grid--page .video-card__media {
    aspect-ratio: 4 / 3;
  }

  .video-card__play {
    width: 4rem;
    height: 4rem;
  }

  .video-card__body {
    padding: 1.35rem;
  }

  .final-cta__inner,
  .show-contact__inner,
  .media-note__inner,
  .contact-social__inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .final-cta .button,
  .show-contact .button,
  .media-note .button,
  .contact-social .button {
    width: 100%;
  }

  .page-hero,
  .page-hero__content {
    min-height: 41rem;
  }

  .page-hero--with-image,
  .page-hero--with-image .page-hero__content {
    min-height: 52rem;
  }

  .page-hero__content {
    align-items: end;
    padding-block: calc(var(--header-height) + 3rem) 7rem;
  }

  .page-hero__copy,
  .page-hero--with-image .page-hero__copy {
    width: 100%;
  }

  .page-hero__copy h1 {
    font-size: clamp(3rem, 14vw, 4.2rem);
  }

  .page-hero__copy p {
    font-size: 1.06rem;
  }

  .page-hero__media {
    inset-block-start: var(--header-height);
    inset-block-end: auto;
    inset-inline: 0;
    width: 100%;
    height: 44%;
    border-radius: 0;
    opacity: 0.7;
    object-position: 50% 20%;
    -webkit-mask-image: linear-gradient(to bottom, #000 0 60%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 0 60%, transparent 100%);
  }

  .page-hero__ambient::after {
    display: none;
  }

  .page-hero__ambient::before {
    inset-block-start: 12%;
    inset-inline-end: -12%;
    width: 72vw;
    opacity: 0.72;
  }

  .format-rail__item {
    grid-template-columns: 2.4rem 1fr;
    padding: 1.8rem 0.5rem;
  }

  .topics-section__grid,
  .audience-fit__grid,
  .about-story__grid,
  .contact-page__grid {
    gap: 2.5rem;
  }

  .topic-list li {
    grid-template-columns: 3rem 1fr;
  }

  .about-gallery__media {
    min-height: 25rem;
  }

  .about-gallery__wide {
    width: 94%;
    height: 64%;
  }

  .about-gallery__portrait {
    width: 48%;
  }

  .quote-block {
    padding: 2rem 1.5rem;
  }

  .quote-block blockquote {
    margin-block-end: 2rem;
    font-size: clamp(1.65rem, 8vw, 2.2rem);
  }

  .quote-block figcaption {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-action {
    min-height: 7rem;
    grid-template-columns: auto 1fr;
    padding: 1.1rem;
  }

  .contact-action__icon {
    width: 3.25rem;
    height: 3.25rem;
  }

  .contact-action__arrow {
    display: none;
  }

  .contact-action strong {
    font-size: 1.13rem;
  }

  .site-footer__main {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .site-footer__brand {
    grid-column: auto;
  }

  .site-footer__legal {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 390px) {
  .brand-mark--compact .brand-mark__copy span {
    display: none;
  }

  .hero h1 {
    font-size: clamp(2.85rem, 14vw, 3.4rem);
  }

  .button {
    padding-inline: 1rem;
  }

  .contact-action {
    gap: 0.85rem;
  }

  .contact-action strong {
    font-size: 1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .nahum-site :where(.site-header, main, .site-footer) *,
  .nahum-site :where(.site-header, main, .site-footer) *::before,
  .nahum-site :where(.site-header, main, .site-footer) *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  .motion-ready .nahum-site :where(.site-header, main, .site-footer) [data-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .motion-ready .wave-divider__line {
    opacity: 0.82;
    stroke-dasharray: none;
    stroke-dashoffset: 0;
    transition: none;
  }

  .video-card__media:hover img,
  .video-card__media:hover .video-card__play,
  .button:hover,
  .contact-action:hover {
    transform: none;
  }
}

.nahum-site :where(.site-header, main, .site-footer) :focus-visible {
  outline: 3px solid var(--ink);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px var(--gold);
}

/*
 * Version 1.0.5
 * Editorial stage system, verified media gallery and responsive contact dock.
 */

:root {
  --sand: #fff4de;
  --sky: #dceaff;
  --on-cobalt: #ffffff;
  --on-cobalt-muted: #e4ecff;
  --whatsapp: #45e17d;
  --whatsapp-hover: #78ef9f;
  --ink-glass: rgba(7, 19, 38, 0.88);
}

.section--cobalt {
  color: var(--on-cobalt);
  background:
    radial-gradient(circle at 12% 16%, rgba(255, 255, 255, 0.1), transparent 25rem),
    radial-gradient(circle at 91% 72%, rgba(7, 19, 38, 0.28), transparent 28rem),
    linear-gradient(145deg, #0a49d8, #083cae);
}

.section--cobalt::after {
  background:
    linear-gradient(118deg, transparent 0 63%, rgba(255, 255, 255, 0.06) 63% 63.15%, transparent 63.15%),
    repeating-radial-gradient(circle at 100% 0, transparent 0 4rem, rgba(255, 255, 255, 0.04) 4rem 4.08rem);
}

.section--sand {
  color: var(--text);
  background:
    radial-gradient(circle at 11% 20%, rgba(242, 181, 68, 0.16), transparent 24rem),
    linear-gradient(135deg, var(--sand), #fff9ed);
}

.section--sand::after {
  background:
    repeating-linear-gradient(112deg, transparent 0 10rem, rgba(7, 19, 38, 0.026) 10rem 10.1rem),
    radial-gradient(circle at 88% 82%, rgba(10, 73, 216, 0.07), transparent 24rem);
}

.wave-divider--cobalt .wave-divider__fill {
  fill: var(--cobalt);
}

.wave-divider--sand .wave-divider__fill {
  fill: var(--sand);
}

.section--cobalt .section-heading h2,
.section--cobalt .section-heading h3 {
  color: var(--on-cobalt);
}

.section--cobalt .section-heading p,
.section--cobalt .section-heading--light p {
  color: var(--on-cobalt-muted);
}

.section--cobalt .section-heading::before {
  background: linear-gradient(90deg, var(--gold), #ffffff);
}

.section--sand .section-heading h2 {
  color: var(--ink);
}

.section--sand .section-heading p {
  color: var(--muted);
}

.editorial-media {
  position: relative;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(7, 19, 38, 0.12);
  border-radius: clamp(1.2rem, 3vw, 2.4rem);
  background: var(--ink);
  box-shadow: var(--shadow-soft);
}

.editorial-media::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, transparent 54%, rgba(7, 19, 38, 0.92)),
    linear-gradient(110deg, rgba(10, 73, 216, 0.2), transparent 50%);
  content: '';
  pointer-events: none;
}

.editorial-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 600ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.editorial-media:hover img {
  transform: scale(1.025);
}

.editorial-media figcaption {
  position: absolute;
  inset-inline: clamp(1.2rem, 3vw, 2rem);
  inset-block-end: clamp(1.15rem, 3vw, 1.8rem);
  z-index: 2;
  margin: 0;
  color: #ffffff;
  font-weight: 700;
  line-height: 1.35;
}

/* Home page */

.home-story {
  padding-block-start: clamp(6.7rem, 10vw, 10rem);
}

.home-story__grid {
  display: grid;
  grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8.5rem);
}

.home-story__content {
  min-width: 0;
}

.home-story__content .section-heading {
  margin-block-end: 2rem;
}

.editorial-media--stage {
  height: clamp(34rem, 54vw, 48rem);
  transform: rotate(-1.2deg);
}

.editorial-media--stage img {
  object-position: 50% 28%;
}

.story-beats,
.preflight-list,
.show-duet__parts,
.topic-ledger,
.brief-list,
.contact-brief {
  margin: 0;
  padding: 0;
  list-style: none;
}

.story-beats {
  display: grid;
  margin-block-start: clamp(2.2rem, 4vw, 3.5rem);
  border-block-start: 1px solid var(--line);
}

.story-beats li {
  display: grid;
  grid-template-columns: 3.4rem 1fr;
  gap: 1.1rem;
  padding-block: 1.4rem;
  border-block-end: 1px solid var(--line);
}

.story-beats > li > span {
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.83rem;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.story-beats h3 {
  margin-block-end: 0.45rem;
  color: var(--ink);
  font-size: clamp(1.35rem, 2.2vw, 1.75rem);
  font-weight: 800;
}

.story-beats p {
  margin-block-end: 0;
  color: var(--muted);
}

.plus-editorial {
  overflow: clip;
}

.plus-editorial__rail {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: stretch;
  border-block: 1px solid var(--line);
}

.plus-editorial__rail article {
  position: relative;
  min-height: 23rem;
  padding: clamp(2rem, 4vw, 4rem);
  overflow: hidden;
}

.plus-editorial__rail article:first-child {
  background: linear-gradient(145deg, rgba(10, 73, 216, 0.1), transparent 72%);
}

.plus-editorial__rail article:last-child {
  background: linear-gradient(215deg, rgba(242, 181, 68, 0.16), transparent 72%);
}

.plus-editorial__number {
  display: block;
  margin-block-end: clamp(3.5rem, 7vw, 6rem);
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.82rem;
  font-weight: 800;
}

.plus-editorial__rail h3 {
  margin-block-end: 1rem;
  color: var(--ink);
  font-size: clamp(2rem, 3.2vw, 3rem);
  font-weight: 900;
}

.plus-editorial__rail p {
  max-width: 32rem;
  margin-block-end: 0;
  color: var(--muted);
}

.plus-editorial__mark {
  position: relative;
  z-index: 2;
  display: grid;
  width: clamp(5.5rem, 9vw, 8rem);
  place-items: center;
  color: var(--ink);
  background: var(--gold);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(3.5rem, 6vw, 6rem);
  font-weight: 500;
  line-height: 1;
}

.plus-editorial__closing {
  max-width: 48rem;
  margin: clamp(2.2rem, 4vw, 3.4rem) auto 0;
  color: var(--text);
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  font-weight: 600;
  text-align: center;
}

.plus-editorial .section-action,
.reel-showcase .section-action {
  text-align: center;
}

.reel-showcase {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.reel-showcase__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.42fr) minmax(19rem, 0.58fr);
  gap: clamp(1rem, 2.2vw, 1.8rem);
}

.reel-showcase__stack {
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2.2vw, 1.8rem);
}

.media-card {
  min-width: 0;
  margin: 0;
}

.media-card > a {
  position: relative;
  display: block;
  height: 100%;
  min-height: 18rem;
  overflow: hidden;
  color: #ffffff;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: clamp(1rem, 2vw, 1.6rem);
  box-shadow: 0 1.5rem 4rem rgba(7, 19, 38, 0.24);
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease;
}

.media-card > a:hover {
  border-color: rgba(255, 255, 255, 0.48);
  box-shadow: 0 1.8rem 4.8rem rgba(7, 19, 38, 0.34);
  transform: translateY(-4px);
}

.media-card__image {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
}

.media-card__image::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 19, 38, 0.08) 25%, rgba(7, 19, 38, 0.94) 100%),
    linear-gradient(90deg, rgba(7, 19, 38, 0.2), transparent 70%);
  content: '';
}

.media-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 650ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.media-card__image--landscape-from-portrait img {
  object-position: 50% 25%;
}

.media-card > a:hover .media-card__image img {
  transform: scale(1.035);
}

.media-card__copy {
  position: absolute;
  inset-inline: clamp(1.15rem, 2vw, 1.7rem);
  inset-block-end: clamp(1.1rem, 2vw, 1.6rem);
  z-index: 3;
  display: grid;
  gap: 0.25rem;
}

.media-card__copy small {
  display: inline-flex;
  width: max-content;
  max-width: 100%;
  min-height: 1.65rem;
  align-items: center;
  padding-inline: 0.55rem;
  color: var(--gold);
  background: rgba(7, 19, 38, 0.94);
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
}

.media-card__copy strong {
  color: #ffffff;
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.35rem, 2.4vw, 2.15rem);
  font-weight: 800;
  line-height: 1.15;
}

.media-card__copy > span {
  color: #e4ecff;
  font-size: 0.9rem;
  font-weight: 600;
}

.media-play {
  position: absolute;
  inset-block-start: clamp(1rem, 2vw, 1.5rem);
  inset-inline-end: clamp(1rem, 2vw, 1.5rem);
  z-index: 3;
  display: grid;
  width: clamp(3.5rem, 5vw, 4.7rem);
  height: clamp(3.5rem, 5vw, 4.7rem);
  place-items: center;
  color: var(--ink);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.86);
  border-radius: 50%;
  box-shadow: 0 0.8rem 2.4rem rgba(7, 19, 38, 0.28);
  transition:
    color 180ms ease,
    background-color 180ms ease,
    transform 180ms ease;
}

.media-play svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.3;
}

.media-play svg path:not(.media-play__accent) {
  fill: currentColor;
  stroke: none;
}

.media-play__accent {
  stroke: var(--cobalt);
  stroke-width: 2.2;
  stroke-linecap: round;
}

.media-card > a:hover .media-play,
.contact-media__posters a:hover .media-play {
  color: var(--ink);
  background: var(--gold);
  transform: scale(1.06);
}

.media-card--feature > a {
  min-height: clamp(32rem, 48vw, 43rem);
}

.event-editorial__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(6rem, 0.18fr) minmax(0, 1fr);
  align-items: stretch;
  border-block: 1px solid rgba(7, 19, 38, 0.16);
}

.event-editorial__grid article {
  min-height: 23rem;
  padding: clamp(2rem, 4vw, 4rem);
}

.event-editorial__index {
  display: block;
  margin-block-end: clamp(4rem, 8vw, 7rem);
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.82rem;
  font-weight: 800;
}

.event-editorial__grid h3 {
  margin-block-end: 1rem;
  color: var(--ink);
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  font-weight: 900;
}

.event-editorial__grid p {
  max-width: 32rem;
  margin-block-end: 0;
  color: var(--muted);
}

.event-editorial__cable {
  position: relative;
  min-width: 5.5rem;
  overflow: hidden;
}

.event-editorial__cable::before {
  position: absolute;
  inset-block: -8%;
  inset-inline-start: 50%;
  width: 1.25rem;
  border-inline: 0.24rem solid var(--ink);
  border-radius: 50%;
  content: '';
  transform: rotate(11deg);
}

.event-editorial__cable::after {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  width: 2.4rem;
  height: 2.4rem;
  background: var(--gold);
  border: 0.3rem solid var(--ink);
  border-radius: 50%;
  content: '';
  transform: translate(50%, -50%);
}

.event-editorial__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1rem, 3vw, 2.3rem);
  margin-block-start: clamp(2rem, 4vw, 3.5rem);
}

.event-editorial__cta p {
  margin: 0;
  color: var(--ink);
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  font-weight: 700;
}

.preflight-section__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  align-items: start;
  gap: clamp(3rem, 8vw, 8rem);
}

.preflight-section .section-heading {
  position: sticky;
  inset-block-start: calc(var(--header-height) + 2rem);
  margin-block-end: 0;
}

.preflight-list {
  counter-reset: preflight;
  border-block-start: 1px solid var(--line);
}

.preflight-list li {
  display: grid;
  min-height: 9.5rem;
  grid-template-columns: 4.2rem 1fr;
  align-items: center;
  gap: 1rem;
  border-block-end: 1px solid var(--line);
}

.preflight-list > li > span {
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 1rem;
  font-weight: 800;
}

.preflight-list strong {
  display: block;
  margin-block-end: 0.35rem;
  color: var(--ink);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.35rem, 2vw, 1.75rem);
}

.preflight-list p {
  margin: 0;
  color: var(--muted);
}

.recommendation-section--editorial .quote-block--open,
.video-recommendation--warm .quote-block--open {
  padding: clamp(1rem, 2vw, 2rem) 0;
  overflow: visible;
  color: var(--ink);
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}

.quote-block--open::before {
  display: block;
  margin-block-end: 1rem;
  color: var(--cobalt);
  font-family: Georgia, serif;
  font-size: clamp(5rem, 9vw, 8rem);
  font-weight: 700;
  line-height: 0.55;
  content: '״';
}

.quote-block--open blockquote {
  color: var(--ink);
  font-size: clamp(2rem, 4vw, 3.65rem);
  font-weight: 800;
}

.quote-block--open figcaption {
  border-block-start-color: rgba(7, 19, 38, 0.18);
}

.quote-block--open figcaption strong {
  color: var(--ink);
}

.quote-block--open figcaption a {
  color: #154a9d;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.25em;
}

.final-cta--premium {
  background:
    radial-gradient(circle at 16% 76%, rgba(10, 73, 216, 0.54), transparent 28rem),
    radial-gradient(circle at 90% 0, rgba(242, 181, 68, 0.12), transparent 23rem),
    var(--ink);
}

.final-cta--premium::before {
  position: absolute;
  inset-block: 18% 14%;
  inset-inline-end: 7%;
  width: min(31vw, 28rem);
  border: 1px solid rgba(242, 181, 68, 0.24);
  border-radius: 50%;
  content: '';
  pointer-events: none;
  transform: rotate(-15deg);
}

.final-cta--premium .final-cta__inner {
  position: relative;
  z-index: 1;
}

/* Show page */

.show-duet__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(18rem, 0.88fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.show-duet__parts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-block: 1px solid var(--line);
}

.show-duet__parts article {
  padding: clamp(1.6rem, 3vw, 2.8rem);
}

.show-duet__parts article + article {
  border-inline-start: 1px solid var(--line);
}

.show-duet__parts span {
  display: block;
  margin-block-end: 3rem;
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.82rem;
  font-weight: 800;
}

.show-duet__parts h3 {
  margin-block-end: 0.8rem;
  color: var(--ink);
  font-size: clamp(1.6rem, 2.5vw, 2.25rem);
  font-weight: 900;
}

.show-duet__parts p {
  margin: 0;
  color: var(--muted);
}

.show-duet__summary {
  margin-block: 2rem 0;
  color: var(--ink);
  font-size: 1.18rem;
  font-weight: 700;
}

.editorial-media--audience {
  height: clamp(34rem, 51vw, 46rem);
  transform: rotate(1.4deg);
}

.editorial-media--audience img {
  object-position: 50% 28%;
}

.topics-editorial__intro {
  display: flex;
  justify-content: flex-end;
}

.topics-editorial__intro .section-heading {
  width: min(100%, 52rem);
}

.topic-ledger {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-block-start: 1px solid var(--line);
}

.topic-ledger li {
  display: grid;
  min-height: 12rem;
  grid-template-columns: 3.4rem 1fr;
  align-content: center;
  gap: 1rem;
  padding: clamp(1.6rem, 3vw, 2.5rem);
  border-block-end: 1px solid var(--line);
}

.topic-ledger li:nth-child(odd) {
  border-inline-end: 1px solid var(--line);
}

.topic-ledger > li > span {
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.85rem;
  font-weight: 800;
}

.topic-ledger strong {
  display: block;
  margin-block-end: 0.5rem;
  color: var(--ink);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.35rem, 2.1vw, 1.8rem);
}

.topic-ledger p {
  margin: 0;
  color: var(--muted);
}

.audience-stage {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.audience-stage__grid {
  display: grid;
  grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.audience-stage__media {
  height: clamp(33rem, 49vw, 45rem);
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: clamp(1.2rem, 3vw, 2.3rem);
  box-shadow: var(--shadow-dark);
  transform: rotate(-1.2deg);
}

.audience-stage__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 23%;
}

.audience-stage .section-heading {
  margin-block-end: 0;
}

.audience-stage .section-heading p + p {
  margin-block-start: 0.4rem;
}

.event-fit-editorial__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 3vw, 2rem);
}

.event-fit-editorial__grid article {
  position: relative;
  min-height: 23rem;
  padding: clamp(2rem, 4vw, 4rem);
  overflow: hidden;
  border: 1px solid rgba(7, 19, 38, 0.16);
  border-radius: var(--radius-large);
}

.event-fit-editorial__grid article:first-child {
  color: #ffffff;
  background:
    radial-gradient(circle at 10% 10%, rgba(10, 73, 216, 0.7), transparent 21rem),
    var(--ink);
}

.event-fit-editorial__grid article:last-child {
  background: rgba(255, 255, 255, 0.58);
}

.event-fit-editorial__grid article > span {
  display: inline-flex;
  min-height: 2.25rem;
  align-items: center;
  padding-inline: 0.85rem;
  color: var(--ink);
  background: var(--gold);
  border-radius: 999px;
  font-size: 0.86rem;
  font-weight: 800;
}

.event-fit-editorial__grid h3 {
  max-width: 15ch;
  margin-block: clamp(4rem, 8vw, 7rem) 1rem;
  color: inherit;
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  font-weight: 900;
}

.event-fit-editorial__grid p {
  max-width: 32rem;
  margin: 0;
  color: var(--muted);
}

.event-fit-editorial__grid article:first-child p {
  color: var(--on-dark-muted);
}

.show-brief__grid {
  display: grid;
  gap: clamp(2rem, 4vw, 3rem);
}

.show-brief .section-heading {
  margin-block-end: 0;
}

.brief-list--horizontal {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-block: 1px solid var(--line);
}

.brief-list--horizontal li {
  min-height: 8rem;
  align-content: center;
  border-block-end: 0;
}

.brief-list--horizontal li + li {
  border-inline-start: 1px solid var(--line);
}

.show-brief__action {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}

.show-brief__action p {
  max-width: 42rem;
  margin: 0;
  color: var(--muted);
}

/* About page */

.about-story--expanded .about-story__grid {
  grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.about-story--expanded .about-story__media {
  height: clamp(34rem, 48vw, 43rem);
}

.about-story--expanded .about-story__media img {
  object-position: 50% 28%;
}

.about-story--expanded .section-heading {
  margin-block-end: 2rem;
}

.about-story--expanded .text-link {
  margin-block-start: 1rem;
}

.stage-language {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.stage-language__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-block: 1px solid rgba(255, 255, 255, 0.24);
}

.stage-language__list article {
  min-height: 24rem;
  padding: clamp(2rem, 3vw, 3rem);
}

.stage-language__list article + article {
  border-inline-start: 1px solid rgba(255, 255, 255, 0.24);
}

.stage-language__list article > span {
  display: block;
  margin-block-end: clamp(4rem, 8vw, 7rem);
  color: #ffffff;
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.82rem;
  font-weight: 800;
}

.stage-language__list h3 {
  margin-block-end: 1rem;
  color: #ffffff;
  font-size: clamp(1.55rem, 2.4vw, 2.15rem);
  font-weight: 900;
}

.stage-language__list p {
  margin: 0;
  color: var(--on-cobalt-muted);
}

.about-mosaic__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(22rem, 1.2fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.about-mosaic__copy .section-heading {
  margin-block-end: 2rem;
}

.about-mosaic__copy > p:not(:last-child) {
  color: var(--muted);
  font-size: 1.12rem;
}

.about-mosaic__media {
  position: relative;
  min-height: clamp(35rem, 52vw, 48rem);
}

.about-mosaic__media figure {
  position: absolute;
  margin: 0;
  overflow: hidden;
  border: 0.35rem solid var(--sand);
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-soft);
}

.about-mosaic__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-mosaic__tall {
  inset-block: 0 5%;
  inset-inline-start: 0;
  width: 62%;
  transform: rotate(1.5deg);
}

.about-mosaic__tall img {
  object-position: 50% 27%;
}

.about-mosaic__wide {
  inset-block-end: 0;
  inset-inline-end: 0;
  z-index: 2;
  width: 62%;
  height: 48%;
  transform: rotate(-2deg);
}

.about-mosaic__wide img {
  object-position: 50% 22%;
}

/* Videos page */

.video-watch__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
  align-items: start;
  gap: clamp(3rem, 8vw, 8rem);
}

.video-watch .section-heading {
  position: sticky;
  inset-block-start: calc(var(--header-height) + 2rem);
  margin-block-end: 0;
}

.video-watch__points {
  display: grid;
  border-block-start: 1px solid var(--line);
}

.video-watch__points article {
  display: grid;
  grid-template-columns: 4rem 1fr;
  column-gap: 1.2rem;
  padding-block: 1.7rem;
  border-block-end: 1px solid var(--line);
}

.video-watch__points article > span {
  grid-row: 1 / span 2;
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.9rem;
  font-weight: 800;
}

.video-watch__points h3 {
  margin-block-end: 0.45rem;
  color: var(--ink);
  font-size: clamp(1.45rem, 2.2vw, 1.9rem);
  font-weight: 900;
}

.video-watch__points p {
  margin: 0;
  color: var(--muted);
}

.video-gallery-premium {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.video-gallery-premium__grid {
  display: grid;
  grid-auto-flow: dense;
  grid-auto-rows: 15rem;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.6rem);
}

.video-gallery-premium__grid .media-card {
  grid-column: span 4;
  grid-row: span 2;
}

.video-gallery-premium__grid .media-card--feature {
  grid-column: span 8;
  grid-row: span 3;
}

.video-gallery-premium__grid .media-card--tall {
  grid-row: span 3;
}

.video-gallery-premium__grid .media-card--pair {
  grid-column: span 6;
}

.video-gallery-premium__grid .media-card > a,
.video-gallery-premium__grid .media-card--feature > a {
  min-height: 100%;
}

.video-recommendation--warm {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

/* Contact page */

.contact-page--expanded .contact-page__grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.95fr);
  align-items: start;
  gap: clamp(3rem, 8vw, 8rem);
}

.contact-brief {
  display: grid;
  border-block-start: 1px solid var(--line);
}

.contact-brief li {
  display: grid;
  grid-template-columns: 3.8rem 1fr;
  column-gap: 1rem;
  padding-block: 1.45rem;
  border-block-end: 1px solid var(--line);
}

.contact-brief > li > span {
  grid-row: 1 / span 2;
  color: var(--cobalt);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: 0.84rem;
  font-weight: 800;
}

.contact-brief h3 {
  margin-block-end: 0.4rem;
  color: var(--ink);
  font-size: clamp(1.35rem, 2.1vw, 1.75rem);
  font-weight: 900;
}

.contact-brief p {
  margin: 0;
  color: var(--muted);
}

.contact-direct {
  position: sticky;
  inset-block-start: calc(var(--header-height) + 2rem);
  padding: clamp(1.5rem, 3vw, 2.3rem);
  color: #ffffff;
  background:
    radial-gradient(circle at 0 0, rgba(10, 73, 216, 0.48), transparent 19rem),
    var(--ink);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-soft);
}

.contact-direct__intro h2 {
  margin-block-end: 0.7rem;
  color: #ffffff;
  font-size: clamp(1.9rem, 3vw, 2.7rem);
  font-weight: 900;
}

.contact-direct__intro p {
  margin-block-end: 1.6rem;
  color: var(--on-dark-muted);
}

.contact-direct .contact-action {
  min-height: 6.8rem;
  background: rgba(255, 255, 255, 0.07);
  box-shadow: none;
}

.contact-direct .contact-action:hover {
  background: rgba(255, 255, 255, 0.11);
}

.contact-faq {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.contact-faq__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(0, 1.26fr);
  align-items: start;
  gap: clamp(3rem, 8vw, 8rem);
}

.contact-faq .section-heading {
  position: sticky;
  inset-block-start: calc(var(--header-height) + 2rem);
  margin-block-end: 0;
}

.faq-list {
  margin: 0;
  border-block-start: 1px solid rgba(7, 19, 38, 0.16);
}

.faq-list > div {
  padding-block: clamp(1.5rem, 3vw, 2.2rem);
  border-block-end: 1px solid rgba(7, 19, 38, 0.16);
}

.faq-list dt {
  margin-block-end: 0.65rem;
  color: var(--ink);
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  font-weight: 800;
  line-height: 1.35;
}

.faq-list dd {
  max-width: 45rem;
  margin: 0;
  color: var(--muted);
}

.contact-media {
  padding-block-start: clamp(7rem, 11vw, 11rem);
}

.contact-media__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.68fr) minmax(22rem, 1.32fr);
  align-items: center;
  gap: clamp(3rem, 8vw, 8rem);
}

.contact-media .section-heading {
  margin-block-end: 0;
}

.contact-media__posters {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
}

.contact-media__posters > a {
  position: relative;
  display: block;
  min-height: clamp(24rem, 35vw, 34rem);
  overflow: hidden;
  color: #ffffff;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-dark);
}

.contact-media__posters > a:nth-child(2) {
  transform: translateY(2.5rem);
}

.contact-media__posters > a::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 35%, rgba(7, 19, 38, 0.94));
  content: '';
}

.contact-media__posters img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 24%;
  transition: transform 600ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.contact-media__posters > a:nth-child(2) img {
  object-position: center;
}

.contact-media__posters > a:hover img {
  transform: scale(1.035);
}

.contact-media__posters .media-play {
  z-index: 3;
}

.contact-media__posters > a > span:last-child {
  position: absolute;
  inset-inline: 1.4rem;
  inset-block-end: 1.3rem;
  z-index: 3;
  color: #ffffff;
  font-family: 'Heebo', Arial, sans-serif;
  font-size: clamp(1.2rem, 2vw, 1.65rem);
  font-weight: 800;
  line-height: 1.25;
}

/* Persistent direct contact */

.floating-contact {
  position: fixed;
  inset-inline-end: max(1rem, env(safe-area-inset-right));
  inset-block-end: max(1rem, env(safe-area-inset-bottom));
  z-index: 120;
  display: grid;
  gap: 0.65rem;
  font-family: 'Assistant', Arial, sans-serif;
}

.floating-contact__item {
  display: inline-flex;
  min-width: 8.8rem;
  min-height: 3.2rem;
  align-items: center;
  justify-content: flex-start;
  gap: 0.65rem;
  padding: 0.65rem 1rem;
  color: var(--ink);
  border: 1px solid rgba(7, 19, 38, 0.16);
  border-radius: 999px;
  box-shadow: 0 0.8rem 2.5rem rgba(7, 19, 38, 0.24);
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    box-shadow 180ms ease;
}

.floating-contact__item svg {
  width: 1.35rem;
  height: 1.35rem;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.floating-contact__item--whatsapp {
  background: var(--whatsapp);
}

.floating-contact__item--whatsapp:hover {
  background: var(--whatsapp-hover);
}

.floating-contact__item--phone {
  background: var(--gold);
}

.floating-contact__item--phone:hover {
  background: var(--gold-soft);
}

.floating-contact__item:hover {
  box-shadow: 0 1rem 3rem rgba(7, 19, 38, 0.3);
  transform: translateY(-2px);
}

.floating-contact__item:focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 2px;
  box-shadow: 0 0 0 6px var(--ink);
}

/* Contrast safeguards */

.section--cobalt :where(p, li, dd) {
  color: var(--on-cobalt-muted);
}

.section--cobalt :where(h2, h3, strong, dt) {
  color: var(--on-cobalt);
}

.section--cobalt .button--outline {
  color: #ffffff;
  background: rgba(7, 19, 38, 0.36);
  border-color: rgba(255, 255, 255, 0.86);
}

.section--cobalt .button--outline:hover {
  color: var(--ink);
  background: #ffffff;
}

.section--cobalt .media-card__copy small {
  color: var(--gold);
}

.section--cobalt .media-card__copy strong {
  color: #ffffff;
}

.section--cobalt .media-card__copy > span {
  color: #e4ecff;
}

.section--sand :where(p, li, dd) {
  color: var(--muted);
}

.section--sand :where(h2, h3, strong, dt) {
  color: var(--ink);
}

/* Tablet compositions */

@media (max-width: 1120px) {
  .home-story__grid,
  .show-duet__grid,
  .about-story--expanded .about-story__grid,
  .audience-stage__grid {
    gap: clamp(2.5rem, 5vw, 4.5rem);
  }

  .reel-showcase__grid {
    grid-template-columns: minmax(0, 1.18fr) minmax(17rem, 0.82fr);
  }

  .media-card--feature > a {
    min-height: 36rem;
  }

  .video-gallery-premium__grid {
    grid-auto-rows: 13rem;
  }

  .video-gallery-premium__grid .media-card,
  .video-gallery-premium__grid .media-card--pair {
    grid-column: span 6;
  }

  .video-gallery-premium__grid .media-card--feature {
    grid-column: span 12;
    grid-row: span 3;
  }

  .video-gallery-premium__grid .media-card--tall {
    grid-row: span 2;
  }
}

@media (max-width: 900px) {
  .home-story__grid,
  .preflight-section__grid,
  .show-duet__grid,
  .audience-stage__grid,
  .about-story--expanded .about-story__grid,
  .about-mosaic__grid,
  .video-watch__grid,
  .contact-page--expanded .contact-page__grid,
  .contact-faq__grid,
  .contact-media__grid {
    grid-template-columns: 1fr;
  }

  .home-story__grid,
  .show-duet__grid,
  .about-story--expanded .about-story__grid {
    gap: 3rem;
  }

  .editorial-media--stage,
  .editorial-media--audience,
  .about-story--expanded .about-story__media {
    width: min(100%, 39rem);
    height: min(44rem, 92vw);
    justify-self: center;
  }

  .preflight-section .section-heading,
  .video-watch .section-heading,
  .contact-direct,
  .contact-faq .section-heading {
    position: static;
  }

  .plus-editorial__rail article {
    min-height: 20rem;
  }

  .reel-showcase__grid {
    grid-template-columns: 1fr;
  }

  .reel-showcase__stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: none;
  }

  .reel-showcase__stack .media-card > a {
    min-height: 24rem;
  }

  .event-editorial__grid {
    grid-template-columns: minmax(0, 1fr) 5rem minmax(0, 1fr);
  }

  .event-editorial__grid article {
    padding-inline: 1.5rem;
  }

  .topic-ledger li {
    min-height: 10.5rem;
  }

  .audience-stage__grid .audience-stage__media {
    width: min(100%, 41rem);
    justify-self: center;
  }

  .about-mosaic__copy {
    max-width: 45rem;
  }

  .about-mosaic__media {
    width: min(100%, 44rem);
    justify-self: center;
  }

  .stage-language__list article {
    min-height: 21rem;
    padding-inline: 1.5rem;
  }

  .contact-direct {
    width: min(100%, 42rem);
  }

  .contact-media__posters {
    width: min(100%, 45rem);
    justify-self: center;
  }
}

@media (max-width: 680px) {
  :root {
    --page-gutter: clamp(1rem, 5.2vw, 1.35rem);
  }

  .section {
    padding-block: clamp(4.7rem, 17vw, 6.2rem);
  }

  .section--cobalt,
  .section--sand {
    padding-block-start: clamp(6rem, 22vw, 8rem);
  }

  .section-heading h2 {
    max-width: 13ch;
    font-size: clamp(2.15rem, 10.8vw, 3.25rem);
    line-height: 1.07;
  }

  .section-heading--center {
    justify-items: start;
    margin-inline: 0;
    text-align: start;
  }

  .home-story {
    padding-block-start: 5.8rem;
  }

  .home-story__grid {
    gap: 2.4rem;
  }

  .editorial-media--stage,
  .editorial-media--audience,
  .about-story--expanded .about-story__media {
    width: 100%;
    height: min(38rem, 123vw);
    border-radius: 1.3rem;
    transform: none;
  }

  .story-beats li {
    grid-template-columns: 2.8rem 1fr;
  }

  .plus-editorial__rail {
    grid-template-columns: 1fr;
  }

  .plus-editorial__rail article {
    min-height: 0;
    padding: 2rem 1rem;
  }

  .plus-editorial__rail article + article {
    border-block-start: 1px solid var(--line);
  }

  .plus-editorial__number {
    margin-block-end: 2.5rem;
  }

  .plus-editorial__mark {
    width: 100%;
    min-height: 4.8rem;
    font-size: 3.6rem;
  }

  .reel-showcase__stack {
    grid-template-columns: 1fr;
  }

  .media-card--feature > a,
  .reel-showcase__stack .media-card > a {
    min-height: min(31rem, 118vw);
  }

  .reel-showcase__stack .media-card > a {
    min-height: min(26rem, 104vw);
  }

  .media-card__copy strong {
    font-size: clamp(1.45rem, 7vw, 2rem);
  }

  .media-play {
    width: 3.75rem;
    height: 3.75rem;
  }

  .event-editorial__grid {
    grid-template-columns: 1fr;
  }

  .event-editorial__grid article {
    min-height: 0;
    padding: 2.2rem 1rem;
  }

  .event-editorial__index {
    margin-block-end: 2.7rem;
  }

  .event-editorial__cable {
    min-height: 5rem;
  }

  .event-editorial__cable::before {
    inset-block: 45% auto;
    inset-inline: 5%;
    width: 90%;
    height: 1.3rem;
    border-block: 0.22rem solid var(--ink);
    border-inline: 0;
    transform: none;
  }

  .event-editorial__cable::after {
    inset-block-start: 50%;
    inset-inline-start: 50%;
    transform: translate(50%, -50%);
  }

  .event-editorial__cta {
    align-items: stretch;
    flex-direction: column;
    text-align: center;
  }

  .event-editorial__cta .button {
    width: 100%;
  }

  .preflight-list li {
    min-height: 8rem;
    grid-template-columns: 3rem 1fr;
  }

  .recommendation-section__grid,
  .video-recommendation__grid {
    gap: 2rem;
  }

  .quote-block--open {
    padding-inline: 0;
  }

  .quote-block--open blockquote {
    font-size: clamp(1.8rem, 8.8vw, 2.55rem);
  }

  .quote-block--open figcaption {
    align-items: flex-start;
    flex-direction: column;
  }

  .show-duet__parts,
  .topic-ledger,
  .event-fit-editorial__grid,
  .stage-language__list,
  .brief-list--horizontal,
  .contact-media__posters {
    grid-template-columns: 1fr;
  }

  .show-duet__parts article {
    padding-inline: 0.7rem;
  }

  .show-duet__parts article + article,
  .stage-language__list article + article,
  .brief-list--horizontal li + li {
    border-block-start: 1px solid var(--line);
    border-inline-start: 0;
  }

  .topic-ledger li:nth-child(odd) {
    border-inline-end: 0;
  }

  .topic-ledger li {
    min-height: 9rem;
    grid-template-columns: 2.8rem 1fr;
    padding-inline: 0.5rem;
  }

  .audience-stage__media {
    height: min(38rem, 120vw);
    border-radius: 1.3rem;
    transform: none;
  }

  .event-fit-editorial__grid article {
    min-height: 20rem;
    padding: 1.7rem;
  }

  .event-fit-editorial__grid h3 {
    margin-block-start: 4rem;
  }

  .brief-list--horizontal li {
    min-height: 6rem;
  }

  .show-brief__action {
    align-items: stretch;
    flex-direction: column;
  }

  .show-brief__action .button {
    width: 100%;
  }

  .stage-language__list article {
    min-height: 0;
    padding: 2rem 0.7rem;
  }

  .stage-language__list article > span {
    margin-block-end: 2.5rem;
  }

  .stage-language__list article + article {
    border-block-start-color: rgba(255, 255, 255, 0.24);
  }

  .about-mosaic__media {
    min-height: 31rem;
  }

  .about-mosaic__media figure {
    border-width: 0.25rem;
    border-radius: 1.2rem;
  }

  .about-mosaic__tall {
    width: 72%;
  }

  .about-mosaic__wide {
    width: 68%;
    height: 42%;
  }

  .video-watch__points article,
  .contact-brief li {
    grid-template-columns: 3rem 1fr;
  }

  .video-gallery-premium__grid {
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: 1fr;
  }

  .video-gallery-premium__grid .media-card,
  .video-gallery-premium__grid .media-card--feature,
  .video-gallery-premium__grid .media-card--tall,
  .video-gallery-premium__grid .media-card--pair {
    grid-column: auto;
    grid-row: auto;
  }

  .video-gallery-premium__grid .media-card > a,
  .video-gallery-premium__grid .media-card--feature > a {
    min-height: min(28rem, 112vw);
  }

  .contact-direct {
    padding: 1.25rem;
    border-radius: 1.35rem;
  }

  .contact-direct .contact-action {
    min-height: 6.25rem;
  }

  .contact-media__posters {
    gap: 1rem;
  }

  .contact-media__posters > a,
  .contact-media__posters > a:nth-child(2) {
    min-height: min(30rem, 116vw);
    border-radius: 1.3rem;
    transform: none;
  }

  .final-cta--premium::before {
    inset-inline-end: -20%;
    width: 70vw;
  }

  .site-footer {
    padding-block-end: calc(5.3rem + env(safe-area-inset-bottom));
  }

  .floating-contact {
    inset-inline: 0;
    inset-block-end: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    padding-block-end: env(safe-area-inset-bottom);
    background: var(--ink);
    border-block-start: 1px solid rgba(255, 255, 255, 0.16);
    box-shadow: 0 -0.7rem 2.2rem rgba(7, 19, 38, 0.24);
  }

  .floating-contact__item {
    min-width: 0;
    min-height: 4.8rem;
    justify-content: center;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    font-size: 1rem;
  }

  .floating-contact__item:hover {
    box-shadow: none;
    transform: none;
  }

  .floating-contact__item:focus-visible {
    outline-offset: -5px;
    box-shadow: none;
  }
}

@media (max-width: 390px) {
  .section-heading h2 {
    font-size: clamp(2rem, 10.4vw, 2.8rem);
  }

  .story-beats p,
  .topic-ledger p,
  .contact-brief p {
    font-size: 0.96rem;
  }

  .contact-action strong {
    font-size: 0.95rem;
  }

  .floating-contact__item {
    min-height: 4.6rem;
    padding-inline: 0.65rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .editorial-media:hover img,
  .media-card > a:hover,
  .media-card > a:hover .media-card__image img,
  .media-card > a:hover .media-play,
  .contact-media__posters > a:hover img,
  .contact-media__posters a:hover .media-play,
  .floating-contact__item:hover {
    transform: none;
  }
}
