html { background: var(--surface-canvas); scrollbar-gutter: stable; scroll-behavior: smooth; }
.home-hero-title, .home-cta-title {
  font-size: calc(clamp(46px, 9.4vw, 190px) * 0.94);
  font-weight: var(--weight-display);
  letter-spacing: var(--tracking-display);
  line-height: 0.92;
}
.home-hero-title [data-hline], .home-cta-title [data-cline] { padding-bottom: 0.06em; }
.home-hero-title > span:last-child > span, .home-cta-title > span:last-child > span { padding-bottom: 0.12em; }
.home-hero-actions { display: flex; align-items: center; justify-content: space-between; gap: var(--gap-block); }
.home-buttons { display: flex; align-items: center; gap: var(--gap-control); }
.home-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--gap-control);
  height: var(--control-height-xl);
  padding: 0 var(--space-8);
  font-family: var(--font-sans);
  font-size: var(--ui-body-lg);
  font-weight: var(--weight-medium);
  letter-spacing: var(--tracking-label);
  line-height: 1;
  text-decoration: none;
  border: var(--border-width-strong) solid transparent;
  border-radius: var(--radius-button);
  white-space: nowrap;
  transition: var(--transition-control);
}
.home-button svg { flex-shrink: 0; }
.home-button-primary { background: var(--indisea-stone-900); color: var(--indisea-stone-50); }
.home-button-primary:hover { background: var(--indisea-stone-800); color: var(--indisea-stone-50); }
.home-button-primary:active { background: var(--indisea-stone-700); }
.home-button-secondary { background: var(--surface-card); color: var(--text-heading); }
.home-button-secondary:hover { background: color-mix(in srgb, var(--surface-card) 96%, var(--text-heading)); color: var(--text-heading); }
.home-button-secondary:active { background: color-mix(in srgb, var(--surface-card) 93%, var(--text-heading)); }
.home-hero-actions .home-button-secondary { background: transparent; border-color: currentColor; transition: background-color var(--duration-medium) var(--ease-standard); }
.home-hero-actions .home-button-secondary:hover { background: color-mix(in srgb, var(--text-heading) 6%, transparent); }
.home-hero-actions .home-button-secondary:active { background: color-mix(in srgb, var(--text-heading) 10%, transparent); }
.home-final-actions .home-button-secondary { background: color-mix(in srgb, var(--indisea-stone-50) 16%, transparent); color: var(--indisea-stone-50); }
.home-final-actions .home-button-secondary:hover { background: color-mix(in srgb, var(--indisea-stone-50) 20%, transparent); }
.home-final-actions .home-button-secondary:active { background: color-mix(in srgb, var(--indisea-stone-50) 24%, transparent); }
@media (min-width: 1025px) {
  .home-hero-title { max-width: 1080px; }
  .home-hero-title, .home-cta-title { font-size: calc(var(--text-display-xl) * 0.94); }
}
.connector-card-title {
  max-width: 100%;
  font-family: var(--font-sans);
  font-size: var(--ui-title-lg);
  font-weight: var(--weight-semibold);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-heading);
  color: var(--text-heading);
  text-align: center;
  text-wrap: balance;
}
[data-spine-under] { position: relative; z-index: 6; }
[data-spine-front] { position: relative; z-index: 6; }
[data-col="rail"] { grid-column: 1 / span 3; }
[data-col="main"] { grid-column: 5 / span 8; }
[data-col="fine"] { grid-column: 9 / span 4; }
[data-col="foot"]:nth-of-type(2) { grid-column: 7 / span 2; }
@media (max-width: 1024px) {
  [data-g] { grid-template-columns: repeat(8, minmax(0px, 1fr)); }
  [data-col="rail"], [data-col="main"], [data-col="wide"], [data-col="half"], [data-col="fine"], [data-col="brand"] { grid-column: 1 / -1; }
  [data-col="foot"], [data-col="foot"]:nth-of-type(2) { grid-column: span 4; }
  [data-col="third"], [data-col="quarter"] { grid-column: span 4; }
  [data-menu-cols] { grid-template-columns: 1fr !important; }
  [data-menu-field] { display: none !important; }
}
@media (max-width: 640px) {
  .home-hero-actions { gap: 0; }
  .home-buttons { width: 100%; gap: var(--gap-inline); }
  .home-button { flex: 1; padding-inline: var(--space-3); gap: var(--space-2); font-size: var(--ui-body-md); }
  .home-button svg { width: 20px; height: 20px; }
  [data-g] { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
  [data-col] { grid-column: 1 / -1 !important; }
  [data-scroll-cue] { display: none !important; }
  [data-quote] { grid-template-columns: 1fr !important; align-items: start !important; }
  [data-conn] { padding-left: clamp(24px, 7vw, 40px) !important; padding-right: clamp(24px, 7vw, 40px) !important; }
  [data-conn] [data-node] + span { max-width: 6.6em; line-height: 1.3; white-space: normal !important; }
  [data-panel-inner] { grid-template-columns: 1fr !important; grid-template-rows: auto minmax(0px, 1fr) !important; }
  [data-panel-number] { display: flex !important; align-items: center !important; justify-content: center !important; min-height: 0px !important; }
  [data-panel-number] > span { position: relative !important; top: auto !important; left: auto !important; right: auto !important; font-size: 94cqh !important; }
  [data-manifesto] { height: 220vh !important; }
  [data-manifesto] { position: relative; z-index: 6; }
  [data-manifesto] [data-spine-front] { z-index: auto !important; }
  [data-screen-label^="09"] [data-col="main"] { padding-right: clamp(24px, 9vw, 56px); }
}
[data-theme="dark"] [data-partner-mark] { filter: invert(1) hue-rotate(180deg); }
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; }
  html { scroll-behavior: auto; }
}
.scp0:hover { background: var(--indisea-blue-100) !important; color: rgb(38, 38, 38) !important; }
.scp1:hover { background: var(--indisea-yellow-300) !important; color: rgb(38, 38, 38) !important; }
.scp2:hover { background: var(--indisea-link-green) !important; color: rgb(38, 38, 38) !important; }
