

@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap");

:root {
  --color-ink-950: #08131b;
  --color-navy-900: #0d202c;
  --color-navy-800: #143142;
  --color-navy-700: #1b4050;
  --color-forest-600: #496b58;
  --color-forest-500: #63816b;
  --color-sand-100: #f2e7cf;
  --color-sand-300: #cdbf9f;
  --color-sand-500: #a98d5c;
  --color-gold-300: #d7b875;
  --color-danger-400: #c97965;
  --color-border: #315265;

  --font-body: "IBM Plex Sans", Arial, sans-serif;
  --font-heading: "Barlow Condensed", "IBM Plex Sans", Arial, sans-serif;

  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.5rem;
  --text-2xl: clamp(1.75rem, 2.5vw, 2rem);
  --text-3xl: clamp(2.25rem, 4vw, 3rem);
  --text-4xl: clamp(2.75rem, 5vw, 4rem);

  --leading-tight: 1;
  --leading-heading: 1.12;
  --leading-body: 1.625;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;

  --container-max: 75rem;
  --gutter: 1.5rem;
  --section-space: 6rem;
  --hero-space: 7.5rem;

  --radius-sm: 0.125rem;
  --radius-md: 0.25rem;
  --radius-lg: 0.5rem;

  --shadow-raised: 0 8px 24px rgba(0, 0, 0, 0.24);
  --shadow-card-hover: 0 10px 28px rgba(0, 0, 0, 0.28);

  --transition-fast: 180ms ease;
}

@media (max-width: 1100px) {
  :root {
    --gutter: 1.25rem;
    --section-space: 4.5rem;
    --hero-space: 5.5rem;
  }
}

@media (max-width: 600px) {
  :root {
    --gutter: 1rem;
    --section-space: 3.25rem;
    --hero-space: 4rem;
  }
}

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

html {
  min-width: 320px;
  background: var(--color-ink-950);
  color-scheme: dark;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  background-color: var(--color-ink-950);
  background-image:
    linear-gradient(rgba(242, 231, 207, 0.012), rgba(242, 231, 207, 0.012)),
    repeating-linear-gradient(
      90deg,
      rgba(242, 231, 207, 0.008) 0,
      rgba(242, 231, 207, 0.008) 1px,
      transparent 1px,
      transparent 5px
    );
  color: var(--color-sand-300);
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-weight: 400;
  line-height: var(--leading-body);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

main,
header,
footer,
section,
article,
aside,
nav {
  min-width: 0;
}

img,
picture,
svg,
video,
canvas,
iframe {
  display: block;
  max-width: 100%;
}

img,
video {
  height: auto;
}

img {
  object-fit: cover;
}

svg {
  fill: currentColor;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

button,
input,
select,
textarea {
  color: inherit;
  font: inherit;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}

button {
  border: 0;
}

textarea {
  min-height: 7rem;
  resize: vertical;
}

fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

legend {
  padding: 0;
}

a {
  color: var(--color-sand-100);
  text-decoration-color: var(--color-sand-500);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
  transition:
    color var(--transition-fast),
    text-decoration-color var(--transition-fast);
}

a:hover {
  color: var(--color-sand-100);
  text-decoration-color: var(--color-gold-300);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--color-gold-300);
  outline-offset: 3px;
}

::selection {
  background: var(--color-forest-600);
  color: var(--color-sand-100);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 var(--space-4);
  color: var(--color-sand-100);
  font-family: var(--font-heading);
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: var(--leading-heading);
  text-wrap: balance;
}

h1 {
  font-size: var(--text-4xl);
  line-height: 1;
}

h2 {
  font-size: var(--text-3xl);
}

h3 {
  font-size: var(--text-2xl);
}

h4 {
  font-size: var(--text-xl);
  line-height: 1.2;
}

h5,
h6 {
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-weight: 600;
  line-height: 1.35;
}

p {
  margin: 0 0 var(--space-4);
}

ul,
ol {
  margin: 0 0 var(--space-4);
  padding-left: 1.35em;
}

li::marker {
  color: var(--color-sand-500);
}

blockquote {
  margin: 0 0 var(--space-5);
  padding: var(--space-4) 0 var(--space-4) var(--space-5);
  border-left: 2px solid var(--color-sand-500);
  color: var(--color-sand-100);
}

blockquote p:last-child {
  margin-block-end: 0;
}

hr {
  height: 1px;
  margin: var(--space-6) 0;
  border: 0;
  background: var(--color-border);
}

figure {
  margin: 0 0 var(--space-5);
}

figcaption {
  margin-top: var(--space-2);
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  line-height: 1.45;
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

code,
kbd {
  padding: 0.1em 0.35em;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-navy-900);
  color: var(--color-sand-100);
  font-size: 0.9em;
}

pre {
  max-width: 100%;
  margin: 0 0 var(--space-5);
  padding: var(--space-4);
  overflow: auto;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-900);
  color: var(--color-sand-100);
}

small {
  font-size: var(--text-xs);
  line-height: 1.35;
}

strong {
  color: var(--color-sand-100);
  font-weight: 600;
}

label {
  display: inline-block;
  margin-bottom: var(--space-2);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
  line-height: 1.35;
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-900);
  color: var(--color-sand-100);
  line-height: 1.5;
}

input,
select {
  min-height: 2.75rem;
  padding: 0.625rem 0.75rem;
}

textarea {
  padding: 0.75rem;
}

input::placeholder,
textarea::placeholder {
  color: color-mix(in srgb, var(--color-sand-300) 68%, transparent);
  opacity: 1;
}

input:disabled,
select:disabled,
textarea:disabled,
button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

input:invalid:not(:placeholder-shown),
textarea:invalid:not(:placeholder-shown),
select:invalid {
  border-color: var(--color-danger-400);
}

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

.section {
  padding-block: var(--section-space);
}

.section--hero {
  padding-block: var(--hero-space);
}

.surface {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background-color: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.panel {
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background-color: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.card {
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background-color: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
  transition:
    transform var(--transition-fast),
    box-shadow var(--transition-fast),
    border-color var(--transition-fast);
}

.card:hover {
  border-color: var(--color-gold-300);
  box-shadow: var(--shadow-card-hover), inset 0 1px 0 rgba(242, 231, 207, 0.06);
  transform: translateY(-2px);
}

.content-group > :last-child,
.panel > :last-child,
.card > :last-child,
.surface > :last-child {
  margin-block-end: 0;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-3);
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.35;
  text-transform: uppercase;
}

.eyebrow::before {
  width: 0.5rem;
  height: 0.5rem;
  flex: 0 0 auto;
  border: 1px solid currentColor;
  border-radius: var(--radius-sm);
  content: "";
  transform: rotate(45deg);
}

.lead {
  color: var(--color-sand-100);
  font-size: var(--text-lg);
  line-height: 1.56;
}

.meta {
  color: var(--color-sand-300);
  font-size: var(--text-xs);
  letter-spacing: 0.05em;
  line-height: 1.35;
  text-transform: uppercase;
}

.numeric,
.stat-value {
  font-variant-numeric: tabular-nums lining-nums;
}

.rule {
  height: 1px;
  border: 0;
  background: var(--color-sand-500);
  opacity: 0.72;
}

.button,
.button-primary,
.button-secondary {
  display: inline-flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 0.625rem 1rem;
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  font-family: var(--font-body);
  font-size: var(--text-base);
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition:
    background-color var(--transition-fast),
    border-color var(--transition-fast),
    color var(--transition-fast);
}

.button-primary {
  border-color: var(--color-forest-600);
  background: var(--color-forest-600);
  color: var(--color-sand-100);
}

.button-primary:hover {
  border-color: var(--color-gold-300);
  background: var(--color-forest-500);
  color: var(--color-sand-100);
  text-decoration: none;
}

.button-secondary {
  border-color: var(--color-sand-500);
  background: transparent;
  color: var(--color-sand-100);
}

.button-secondary:hover {
  border-color: var(--color-gold-300);
  background: var(--color-navy-700);
  color: var(--color-sand-100);
  text-decoration: none;
}

.link-rule {
  color: var(--color-sand-100);
  font-weight: 600;
  text-decoration-color: var(--color-sand-500);
}

.stack {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
}

.stack > * {
  min-width: 0;
}

.stack--2 {
  gap: var(--space-2);
}

.stack--3 {
  gap: var(--space-3);
}

.stack--4 {
  gap: var(--space-4);
}

.stack--5 {
  gap: var(--space-5);
}

.cluster {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.cluster > * {
  min-width: 0;
}

.stat-list {
  display: grid;
  margin: 0;
  border-top: 1px solid var(--color-border);
}

.stat-list > div {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-4);
  align-items: baseline;
  padding-block: var(--space-3);
  border-bottom: 1px solid var(--color-border);
}

.stat-list dt {
  min-width: 0;
  color: var(--color-sand-300);
  font-size: var(--text-sm);
}

.stat-list dd {
  min-width: 0;
  margin: 0;
  color: var(--color-sand-100);
  font-weight: 600;
  font-variant-numeric: tabular-nums lining-nums;
  text-align: right;
}

.table-wrap {
  max-width: 100%;
  margin-bottom: var(--space-5);
  overflow-x: auto;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  -webkit-overflow-scrolling: touch;
}

.table-wrap table {
  min-width: 38rem;
  margin: 0;
}

th,
td {
  min-width: 0;
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
  text-align: left;
  vertical-align: top;
}

th {
  color: var(--color-sand-100);
  background: var(--color-navy-700);
  font-size: var(--text-sm);
  font-weight: 600;
}

td {
  color: var(--color-sand-300);
}

tr:last-child td {
  border-bottom: 0;
}

@media (max-width: 600px) {
  body {
    line-height: 1.7;
  }

  .panel,
  .card {
    padding: var(--space-4);
  }

  .button,
  .button-primary,
  .button-secondary {
    min-height: 2.75rem;
  }
}

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

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  .card:hover {
    transform: none;
  }
}


.site-header {
  position: sticky;
  z-index: 900;
  top: 0;
  width: 100%;
  border-bottom: 1px solid var(--color-border);
  background: rgba(13, 32, 44, 0.98);
  box-shadow: inset 0 -1px 0 rgba(242, 231, 207, 0.04);
}

.site-header__inner {
  display: flex;
  min-height: 4.5rem;
  align-items: center;
  gap: 1.25rem;
}

.site-header__brand {
  display: inline-flex;
  min-width: 0;
  flex: 0 1 auto;
  align-items: center;
  gap: 0.625rem;
  color: var(--color-sand-100);
  text-decoration: none;
}

.site-header__logo {
  width: 2.5rem;
  height: 2.5rem;
  flex: 0 0 2.5rem;
  object-fit: contain;
}

.site-header__brand-name {
  overflow: hidden;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.site-header__navigation {
  min-width: 0;
  margin-left: auto;
}

.site-header__list {
  display: flex;
  align-items: center;
  gap: 1.125rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-header__list li,
.site-header__list li + li {
  display: flex;
  min-width: 0;
  margin: 0;
  padding: 0;
}

.site-header__link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-sand-300);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}

.site-header__link::after {
  width: 0;
  height: 1px;
  position: absolute;
  bottom: 0.4rem;
  left: 0;
  background: var(--color-sand-100);
  content: "";
  transition: width var(--transition-fast);
}

.site-header__link {
  position: relative;
}

.site-header__link:hover,
.site-header__link[aria-current="page"] {
  color: var(--color-sand-100);
}

.site-header__link:hover::after,
.site-header__link[aria-current="page"]::after {
  width: 100%;
}

.site-header__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
}

.site-header__play {
  min-height: 2.75rem;
  padding-inline: 0.875rem;
  font-size: 0.875rem;
  white-space: nowrap;
}

.site-header__external-icon {
  width: 0.875rem;
  height: 0.875rem;
  flex: 0 0 auto;
}

.site-header__toggle {
  display: none;
  width: 2.75rem;
  min-height: 2.75rem;
  flex: 0 0 2.75rem;
  align-items: center;
  justify-content: center;
  padding: 0.625rem;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-sand-100);
}

.site-header__toggle-lines,
.site-header__toggle-lines::before,
.site-header__toggle-lines::after {
  display: block;
  width: 1.25rem;
  height: 1px;
  background: currentColor;
  content: "";
  transition: transform var(--transition-fast), opacity var(--transition-fast);
}

.site-header__toggle-lines {
  position: relative;
}

.site-header__toggle-lines::before,
.site-header__toggle-lines::after {
  position: absolute;
  left: 0;
}

.site-header__toggle-lines::before {
  top: -0.375rem;
}

.site-header__toggle-lines::after {
  top: 0.375rem;
}

.site-header__toggle[aria-expanded="true"] {
  border-color: var(--color-gold-300);
  background: var(--color-navy-700);
}

.site-header__toggle[aria-expanded="true"] .site-header__toggle-lines {
  background: transparent;
}

.site-header__toggle[aria-expanded="true"] .site-header__toggle-lines::before {
  top: 0;
  transform: rotate(45deg);
}

.site-header__toggle[aria-expanded="true"] .site-header__toggle-lines::after {
  top: 0;
  transform: rotate(-45deg);
}

@media (max-width: 1100px) and (min-width: 861px) {
  .site-header__inner {
    gap: 0.875rem;
  }

  .site-header__list {
    gap: 0.75rem;
  }

  .site-header__link,
  .site-header__play {
    font-size: 0.75rem;
  }

  .site-header__play {
    padding-inline: 0.625rem;
  }
}

@media (max-width: 860px) {
  body.site-nav-open {
    overflow: hidden;
  }

  .site-header__inner {
    min-height: 4rem;
    justify-content: space-between;
    gap: 0.75rem;
  }

  .site-header__logo {
    width: 2.125rem;
    height: 2.125rem;
    flex-basis: 2.125rem;
  }

  .site-header__brand-name {
    font-size: 1rem;
  }

  .site-header__toggle {
    display: inline-flex;
    margin-left: auto;
  }

  .site-header__navigation {
    position: fixed;
    z-index: 899;
    top: 4rem;
    right: 0;
    left: 0;
    display: grid;
    max-height: calc(100dvh - 4rem);
    padding: 1rem var(--gutter) calc(1rem + env(safe-area-inset-bottom));
    overflow-y: auto;
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-sand-500);
    background: var(--color-navy-900);
    box-shadow: var(--shadow-raised);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-0.5rem);
    transition: opacity var(--transition-fast), transform var(--transition-fast);
  }

  .site-header__navigation--open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }

  .site-header__list {
    display: grid;
    gap: 0;
    border-top: 1px solid var(--color-border);
  }

  .site-header__list li {
    border-bottom: 1px solid var(--color-border);
  }

  .site-header__link {
    width: 100%;
    min-height: 3rem;
    justify-content: space-between;
    font-size: 1rem;
  }

  .site-header__link::after {
    right: auto;
    bottom: 0;
  }

  .site-header__actions {
    display: none;
  }

  .site-header__navigation::after {
    display: block;
    margin-top: 1rem;
    content: "";
  }

  .site-header__navigation .site-header__mobile-action {
    display: flex;
    margin-top: 1rem;
  }
}

@media (min-width: 861px) {
  .site-header__mobile-action {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header__link::after,
  .site-header__toggle-lines,
  .site-header__toggle-lines::before,
  .site-header__toggle-lines::after,
  .site-header__navigation {
    transition: none;
  }
}


.site-footer {
  border-top: 1px solid var(--color-sand-500);
  background: var(--color-navy-900);
}

.site-footer__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(10rem, 1fr));
  gap: 3rem;
  padding-block: 3.5rem 2.5rem;
}

.site-footer__brand,
.site-footer__column {
  min-width: 0;
}

.site-footer__brand {
  display: grid;
  gap: 1rem;
  align-content: start;
}

.site-footer__identity {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--color-sand-100);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
}

.site-footer__mark {
  width: 2rem;
  height: 2rem;
  object-fit: contain;
}

.site-footer__description {
  max-width: 34rem;
  margin: 0;
  color: var(--color-sand-300);
  font-size: 0.875rem;
  line-height: 1.6;
}

.site-footer__play {
  justify-self: start;
}

.site-footer__column {
  display: grid;
  gap: 0.875rem;
  align-content: start;
}

.site-footer__title {
  margin: 0;
  color: var(--color-sand-500);
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.35;
  text-transform: uppercase;
}

.site-footer__list {
  display: grid;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer__list li,
.site-footer__list li + li {
  margin: 0;
  padding: 0;
}

.site-footer__list a {
  color: var(--color-sand-300);
  font-size: 0.875rem;
  line-height: 1.45;
}

.site-footer__list a:hover {
  color: var(--color-sand-100);
}

.site-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.75rem 1.5rem;
  padding-block: 1.25rem;
  border-top: 1px solid var(--color-border);
  color: var(--color-sand-300);
  font-size: 0.75rem;
  line-height: 1.5;
}

.site-footer__bottom p {
  margin: 0;
}

.site-consent {
  position: fixed;
  z-index: 1000;
  right: max(1rem, env(safe-area-inset-right));
  bottom: max(1rem, env(safe-area-inset-bottom));
  left: max(1rem, env(safe-area-inset-left));
  width: min(100% - 2rem, 42rem);
  margin-left: auto;
  padding: 1rem;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: var(--shadow-raised), inset 0 1px 0 rgba(242, 231, 207, 0.06);
  opacity: 0;
  transform: translateY(1rem);
  transition: opacity var(--transition-fast), transform var(--transition-fast);
}

.site-consent--visible {
  opacity: 1;
  transform: translateY(0);
}

.site-consent--hiding {
  opacity: 0;
  transform: translateY(1rem);
}

.site-consent__content {
  display: grid;
  gap: 0.75rem;
}

.site-consent__title {
  margin: 0;
  color: var(--color-sand-100);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: 1;
}

.site-consent__text {
  margin: 0;
  color: var(--color-sand-300);
  font-size: 0.875rem;
  line-height: 1.55;
}

.site-consent__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.25rem;
}

.site-consent__actions .button-secondary {
  color: var(--color-sand-100);
}

@media (max-width: 860px) {
  .site-footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.5rem 2rem;
  }

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

@media (max-width: 600px) {
  .site-footer__inner {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding-block: 2.75rem 2rem;
  }

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

  .site-footer__bottom {
    display: grid;
  }

  .site-consent {
    right: max(0.75rem, env(safe-area-inset-right));
    bottom: max(0.75rem, env(safe-area-inset-bottom));
    left: max(0.75rem, env(safe-area-inset-left));
    width: auto;
  }

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

  .site-consent__actions .button-primary,
  .site-consent__actions .button-secondary {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-consent {
    transition: none;
  }
}


.aszf-page {
  min-width: 0;
}

.aszf-page__hero {
  background: var(--color-navy-900);
}

.aszf-page__hero-grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
  row-gap: var(--space-5);
}

.aszf-page__hero-copy {
  grid-column: 1 / span 7;
  min-width: 0;
  max-width: 45rem;
}

.aszf-page__hero-space {
  grid-column: 8 / span 5;
  min-width: 0;
}

.aszf-page__hero-rule {
  grid-column: 1 / -1;
  width: 100%;
  margin: 0;
}

.aszf-index {
  padding-block: var(--space-7);
  background: var(--color-navy-900);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.aszf-index__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.aszf-index__intro {
  grid-column: 1 / span 3;
  min-width: 0;
  max-width: 16.25rem;
}

.aszf-index__intro > :last-child {
  margin-bottom: 0;
}

.aszf-index__links {
  display: grid;
  grid-column: 4 / span 9;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 var(--space-5);
}

.aszf-index__links > a {
  display: grid;
  min-width: 0;
  min-height: 3.25rem;
  grid-template-columns: 2rem minmax(0, 1fr) auto;
  gap: var(--space-2);
  align-items: center;
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--color-sand-500);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
}

.aszf-index__links > a:hover {
  border-bottom-color: var(--color-gold-300);
}

.aszf-index__links > a > span:first-child {
  min-width: 0;
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums lining-nums;
}

.aszf-index__links > a > span:nth-child(2) {
  min-width: 0;
}

.aszf-index__links > a > b {
  min-width: 0;
  color: var(--color-sand-500);
  font-weight: 500;
}

.aszf-terms__stack {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-7);
}

.aszf-term {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
  row-gap: var(--space-5);
  scroll-margin-top: 6rem;
}

.aszf-term__meta {
  display: flex;
  grid-column: 1 / span 2;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  align-items: flex-start;
  padding-top: var(--space-5);
}

.aszf-term__meta > span {
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1;
}

.aszf-term__meta > small {
  color: var(--color-sand-300);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.aszf-term__panel {
  grid-column: 3 / span 7;
  min-width: 0;
  max-width: 42.5rem;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.aszf-term__panel > :last-child {
  margin-bottom: 0;
}

.aszf-term__panel h2 {
  scroll-margin-top: 6rem;
}

.aszf-term__panel h3 {
  margin-bottom: var(--space-3);
  font-size: var(--text-xl);
}

.aszf-term__opening {
  color: var(--color-sand-100);
  font-size: var(--text-lg);
  line-height: 1.56;
}

.aszf-inline-list {
  color: var(--color-sand-100);
}

.aszf-inline-list i {
  display: inline-block;
  width: 1px;
  height: 0.8em;
  margin: 0 var(--space-2);
  background: var(--color-sand-500);
  vertical-align: -0.08em;
}

.aszf-term__rules,
.aszf-mini-rules {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.aszf-term__rules {
  padding-left: 1.35em;
}

.aszf-mini-rules {
  margin-left: 0;
  padding-left: 0;
  list-style-position: inside;
}

.aszf-mini-rules > li {
  min-width: 0;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-sand-500);
}

.aszf-note {
  margin-top: var(--space-5);
  padding: var(--space-4) 0 var(--space-4) var(--space-5);
  border-left: 2px solid var(--color-sand-500);
}

.aszf-note > :last-child,
.aszf-brand-note > :last-child,
.aszf-liability > :last-child,
.aszf-external-boundary > :last-child,
.aszf-change > :last-child {
  margin-bottom: 0;
}

.aszf-brand-note {
  margin-top: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background: var(--color-navy-900);
}

.aszf-play-link {
  width: max-content;
  max-width: 100%;
  margin-bottom: var(--space-5);
}

.aszf-external-boundary {
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-sand-500);
}

.aszf-liability {
  margin-top: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-700);
}

.aszf-status {
  margin-bottom: var(--space-5);
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.aszf-change {
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-sand-500);
}

.aszf-closing {
  margin-top: var(--space-5);
  margin-bottom: 0;
  color: var(--color-sand-100);
}

.aszf-term__final-rule {
  grid-column: 1 / -1;
  width: 100%;
  margin: 0;
}

.aszf-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 1100px) {
  .aszf-page__hero-grid,
  .aszf-index__grid,
  .aszf-term {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--space-4);
  }

  .aszf-page__hero-copy {
    grid-column: 1 / span 5;
  }

  .aszf-page__hero-space {
    grid-column: 6 / span 3;
  }

  .aszf-index__intro {
    grid-column: 1 / span 2;
  }

  .aszf-index__links {
    grid-column: 3 / span 6;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 var(--space-4);
  }

  .aszf-term__meta {
    grid-column: 1 / span 2;
  }

  .aszf-term__panel {
    grid-column: 3 / span 6;
  }
}

@media (max-width: 860px) {
  .aszf-page__hero-copy,
  .aszf-page__hero-space,
  .aszf-index__intro,
  .aszf-index__links,
  .aszf-term__meta,
  .aszf-term__panel,
  .aszf-term__final-rule {
    grid-column: 1 / -1;
  }

  .aszf-page__hero-space {
    display: none;
  }

  .aszf-page__hero-copy {
    max-width: 45rem;
  }

  .aszf-index__intro {
    max-width: none;
  }

  .aszf-index__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .aszf-term {
    row-gap: var(--space-3);
  }

  .aszf-term__meta {
    flex-direction: row;
    align-items: baseline;
    padding-top: 0;
  }

  .aszf-term__panel {
    max-width: 42.5rem;
  }
}

@media (max-width: 600px) {
  .aszf-page__hero-grid,
  .aszf-index__grid,
  .aszf-term {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    row-gap: var(--space-4);
  }

  .aszf-page__hero h1 {
    font-size: 2.25rem;
    line-height: 1.11;
  }

  .aszf-page__hero-copy .lead,
  .aszf-term__panel p,
  .aszf-term__panel li {
    font-size: 1rem;
    line-height: 1.75;
  }

  .aszf-index {
    padding-block: var(--space-6);
  }

  .aszf-index__links {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  .aszf-index__links > a {
    min-height: 2.75rem;
  }

  .aszf-terms__stack {
    gap: var(--space-6);
  }

  .aszf-term__panel {
    padding: var(--space-4);
  }

  .aszf-term__panel h2 {
    font-size: 1.75rem;
    line-height: 1.14;
  }

  .aszf-term__opening {
    font-size: 1rem;
    line-height: 1.75;
  }

  .aszf-inline-list i {
    display: block;
    width: 100%;
    height: 1px;
    margin: var(--space-2) 0;
  }

  .aszf-note {
    padding-left: var(--space-4);
  }

  .aszf-brand-note,
  .aszf-liability {
    padding: var(--space-4);
  }

  .aszf-play-link {
    min-height: 2.75rem;
  }
}

@media (max-width: 280px) {
  .aszf-play-link {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aszf-page * {
    scroll-behavior: auto;
  }
}


.cookie-policy-page {
  min-width: 0;
}

.cookie-policy-page :is(section, div, article, aside, nav, details) {
  min-width: 0;
}

.cookie-policy-page__intro {
  background: var(--color-navy-900);
  border-bottom: 1px solid var(--color-border);
}

.cookie-policy-page__intro-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
}

.cookie-policy-page__intro-copy {
  grid-column: 1 / span 7;
  min-width: 0;
}

.cookie-policy-page__intro-copy .lead {
  max-width: 40rem;
}

.cookie-policy-page__intro-copy .rule {
  margin: var(--space-6) 0 var(--space-5);
}

.cookie-policy-page__intro-aside {
  grid-column: 8 / span 5;
  min-width: 0;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding-bottom: var(--space-3);
}

.cookie-policy-page__intro-aside span {
  display: block;
  border-left: 1px solid var(--color-sand-500);
  padding-left: var(--space-3);
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.35;
  text-transform: uppercase;
}

.cookie-policy-page__contents {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.cookie-policy-page__contents > * {
  min-width: 0;
}

.cookie-policy-page__contents p {
  margin: 0;
}

.cookie-policy-page__contents ul {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none;
}

.cookie-policy-page__contents li {
  min-width: 0;
}

.cookie-policy-page__contents a {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
  text-decoration-color: var(--color-sand-500);
}

.cookie-policy-page__contents a span {
  color: var(--color-forest-500);
  font-size: var(--text-xs);
  font-variant-numeric: tabular-nums lining-nums;
}

.cookie-policy-page__section-heading {
  display: flex;
  width: min(100%, 42.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-3);
  margin-bottom: var(--space-7);
}

.cookie-policy-page__section-heading > * {
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__section-heading p:not(.eyebrow) {
  max-width: 42.5rem;
}

.cookie-policy-page__definition {
  display: grid;
  width: min(100%, 42.5rem);
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-4);
  padding: var(--space-5);
}

.cookie-policy-page__definition > * {
  min-width: 0;
}

.cookie-policy-page__number {
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  font-variant-numeric: tabular-nums lining-nums;
}

.cookie-policy-page__definition p:last-child {
  margin-bottom: 0;
}

.cookie-policy-page__process {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin-top: var(--space-7);
}

.cookie-policy-page__process > * {
  min-width: 0;
}

.cookie-policy-page__process-title {
  margin: 0;
}

.cookie-policy-page__process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--color-sand-500);
  border-bottom: 1px solid var(--color-border);
}

.cookie-policy-page__process-step {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  padding: var(--space-5);
  border-right: 1px solid var(--color-border);
}

.cookie-policy-page__process-step:last-child {
  border-right: 0;
}

.cookie-policy-page__process-step > * {
  min-width: 0;
}

.cookie-policy-page__process-step > span {
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: var(--text-xl);
  font-weight: 600;
  line-height: 1;
  font-variant-numeric: tabular-nums lining-nums;
}

.cookie-policy-page__process-step h4 {
  margin-bottom: var(--space-2);
}

.cookie-policy-page__process-step p {
  margin: 0;
  font-size: var(--text-sm);
  line-height: 1.55;
}

.cookie-policy-page__boundary {
  display: flex;
  width: min(100%, 42.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-2);
  margin-top: var(--space-6);
  padding: var(--space-4) 0 var(--space-4) var(--space-5);
  border-left: 2px solid var(--color-forest-500);
}

.cookie-policy-page__boundary > * {
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__boundary h3 {
  font-family: var(--font-body);
  font-size: var(--text-base);
}

.cookie-policy-page__purposes,
.cookie-policy-page__faq-section {
  background: var(--color-navy-900);
  border-block: 1px solid var(--color-border);
}

.cookie-policy-page__purpose-table {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin-top: var(--space-5);
  border-top: 1px solid var(--color-sand-500);
  border-left: 1px solid var(--color-border);
  border-right: 1px solid var(--color-border);
}

.cookie-policy-page__purpose-header,
.cookie-policy-page__purpose-row {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 5fr) minmax(0, 4fr);
  min-width: 0;
}

.cookie-policy-page__purpose-header > *,
.cookie-policy-page__purpose-row > * {
  min-width: 0;
}

.cookie-policy-page__purpose-header {
  background: var(--color-navy-700);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

.cookie-policy-page__purpose-header > * {
  padding: var(--space-3) var(--space-4);
  border-right: 1px solid var(--color-border);
}

.cookie-policy-page__purpose-header > *:last-child {
  border-right: 0;
}

.cookie-policy-page__purpose-row {
  border-bottom: 1px solid var(--color-border);
  background: var(--color-navy-800);
}

.cookie-policy-page__purpose-row--essential {
  box-shadow: inset 0 1px 0 var(--color-sand-500);
}

.cookie-policy-page__purpose-row > * {
  padding: var(--space-5) var(--space-4);
  border-right: 1px solid var(--color-border);
}

.cookie-policy-page__purpose-row > *:last-child {
  border-right: 0;
}

.cookie-policy-page__purpose-row .meta {
  display: none;
}

.cookie-policy-page__purpose-row h3 {
  margin: 0;
  font-size: var(--text-xl);
}

.cookie-policy-page__purpose-row p {
  margin: 0;
  font-size: var(--text-sm);
  line-height: 1.65;
}

.cookie-policy-page__purpose-summary {
  display: flex;
  width: min(100%, 40.625rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-sand-500);
}

.cookie-policy-page__purpose-summary > * {
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__purpose-summary h3 {
  font-size: var(--text-xl);
}

.cookie-policy-page__choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.cookie-policy-page__choice-panel {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-4);
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__choice-panel > * {
  min-width: 0;
}

.cookie-policy-page__choice-content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

.cookie-policy-page__choice-content > * {
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__choice-content h3 {
  font-size: var(--text-xl);
}

.cookie-policy-page__choice-content ol {
  padding-left: 1.35em;
}

.cookie-policy-page__choice-content li + li {
  margin-top: var(--space-3);
}

.cookie-policy-page__status-example {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-2) var(--space-4);
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
  color: var(--color-sand-300);
  font-size: var(--text-xs);
}

.cookie-policy-page__status-example > * {
  min-width: 0;
}

.cookie-policy-page__status-example strong {
  color: var(--color-forest-500);
  font-size: var(--text-xs);
  text-align: right;
}

.cookie-policy-page__external-note {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
  gap: var(--space-5);
  min-width: 0;
  margin-top: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-sm);
  background: var(--color-navy-900);
}

.cookie-policy-page__external-note > * {
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__external-note h3 {
  font-size: var(--text-xl);
}

.cookie-policy-page__external-note p {
  font-size: var(--text-sm);
}

.cookie-policy-page__faq-list {
  display: flex;
  width: min(100%, 50rem);
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  border-top: 1px solid var(--color-sand-500);
}

.cookie-policy-page__faq-list > * {
  min-width: 0;
}

.cookie-policy-page__faq-item {
  overflow: hidden;
  border-bottom: 1px solid var(--color-border);
  background: var(--color-navy-800);
}

.cookie-policy-page__faq-item summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2.75rem;
  min-height: 4rem;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-3) var(--space-4) var(--space-3) var(--space-5);
  color: var(--color-sand-100);
  cursor: pointer;
  font-weight: 600;
  list-style: none;
}

.cookie-policy-page__faq-item summary::-webkit-details-marker {
  display: none;
}

.cookie-policy-page__faq-item summary > * {
  min-width: 0;
}

.cookie-policy-page__faq-item summary b {
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border-left: 1px solid var(--color-border);
  color: var(--color-sand-500);
  font-size: var(--text-xl);
  font-weight: 400;
  line-height: 1;
}

.cookie-policy-page__faq-item[open] summary {
  background: var(--color-navy-700);
}

.cookie-policy-page__faq-item[open] summary b {
  color: var(--color-forest-500);
  font-size: 0;
}

.cookie-policy-page__faq-item[open] summary b::after {
  content: "−";
  font-size: var(--text-xl);
}

.cookie-policy-page__faq-answer {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height 180ms ease, opacity 180ms ease;
}

.cookie-policy-page__faq-item[open] .cookie-policy-page__faq-answer {
  max-height: 24rem;
  opacity: 1;
}

.cookie-policy-page__faq-answer p {
  width: min(100%, 38.75rem);
  margin: 0;
  padding: 0 var(--space-5) var(--space-5);
}

.cookie-policy-page__closing-copy {
  display: flex;
  width: min(100%, 42.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

.cookie-policy-page__closing-copy > * {
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__closing-panel {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-4);
}

.cookie-policy-page__closing-panel > * {
  min-width: 0;
}

.cookie-policy-page__closing-panel p {
  margin: 0;
}

.cookie-policy-page__closing-summary {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-sand-500);
}

.cookie-policy-page__closing-summary > * {
  min-width: 0;
  margin: 0;
}

.cookie-policy-page__closing-summary h3 {
  font-size: var(--text-xl);
}

.cookie-policy-page :is(section[id], article[id]) {
  scroll-margin-top: 6rem;
}

@media (max-width: 1100px) {
  .cookie-policy-page__intro-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .cookie-policy-page__intro-copy {
    grid-column: 1 / -1;
  }

  .cookie-policy-page__intro-aside {
    display: none;
  }

  .cookie-policy-page__process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cookie-policy-page__process-step:nth-child(2) {
    border-right: 0;
  }

  .cookie-policy-page__process-step:nth-child(3) {
    grid-column: 1 / span 2;
    border-top: 1px solid var(--color-border);
  }

  .cookie-policy-page__purpose-header,
  .cookie-policy-page__purpose-row {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr) minmax(0, 3fr);
  }

  .cookie-policy-page__choice-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .cookie-policy-page__section-heading {
    width: min(100%, 42.5rem);
  }

  .cookie-policy-page__choice-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cookie-policy-page__purpose-table {
    border-left: 0;
    border-right: 0;
  }

  .cookie-policy-page__purpose-header {
    display: none;
  }

  .cookie-policy-page__purpose-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
    padding: var(--space-5);
  }

  .cookie-policy-page__purpose-row > * {
    padding: 0;
    border-right: 0;
  }

  .cookie-policy-page__purpose-row .meta {
    display: block;
    margin-bottom: var(--space-2);
  }

  .cookie-policy-page__purpose-category {
    padding-bottom: var(--space-4) !important;
    border-bottom: 1px solid var(--color-border);
  }

  .cookie-policy-page__external-note {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }
}

@media (max-width: 600px) {
  .cookie-policy-page__intro-copy .lead {
    max-width: none;
  }

  .cookie-policy-page__contents ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
  }

  .cookie-policy-page__contents li {
    min-width: 0;
  }

  .cookie-policy-page__contents a {
    width: 100%;
    align-items: flex-start;
    line-height: 1.3;
  }

  .cookie-policy-page__section-heading {
    gap: var(--space-3);
    margin-bottom: var(--space-6);
  }

  .cookie-policy-page__section-heading h2,
  .cookie-policy-page__closing-copy h2 {
    font-size: 2rem;
    line-height: 1.125;
  }

  .cookie-policy-page__definition,
  .cookie-policy-page__choice-panel,
  .cookie-policy-page__closing-panel {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
    padding: var(--space-4);
  }

  .cookie-policy-page__number {
    font-size: var(--text-xl);
  }

  .cookie-policy-page__process {
    margin-top: var(--space-6);
  }

  .cookie-policy-page__process-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cookie-policy-page__process-step,
  .cookie-policy-page__process-step:nth-child(3) {
    grid-column: auto;
    grid-template-columns: 2rem minmax(0, 1fr);
    min-height: 4rem;
    padding: var(--space-4);
    border-right: 0;
    border-top: 1px solid var(--color-border);
  }

  .cookie-policy-page__process-step:first-child {
    border-top: 0;
  }

  .cookie-policy-page__boundary {
    width: 100%;
    margin-top: var(--space-5);
    padding-left: var(--space-4);
  }

  .cookie-policy-page__purpose-row {
    padding: var(--space-4);
  }

  .cookie-policy-page__choice-content {
    gap: var(--space-4);
  }

  .cookie-policy-page__choice-content h3,
  .cookie-policy-page__external-note h3 {
    font-size: var(--text-xl);
  }

  .cookie-policy-page__choice-content ol {
    margin-left: 0;
  }

  .cookie-policy-page__choice-content li {
    min-height: 2.75rem;
  }

  .cookie-policy-page__external-note {
    padding: var(--space-4);
  }

  .cookie-policy-page__faq-list {
    width: 100%;
  }

  .cookie-policy-page__faq-item summary {
    grid-template-columns: minmax(0, 1fr) 2.75rem;
    min-height: 3.5rem;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-3) var(--space-3) var(--space-4);
    font-size: var(--text-base);
    line-height: 1.45;
  }

  .cookie-policy-page__faq-answer p {
    width: 100%;
    padding: 0 var(--space-4) var(--space-4);
  }

  .cookie-policy-page__closing-copy {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-policy-page__faq-answer {
    transition: none;
  }
}


.privacy-page {
  background: var(--color-ink-950);
}

.privacy-page .privacy-hero {
  background: var(--color-navy-900);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-hero__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

.privacy-page .privacy-hero__copy {
  grid-column: 1 / span 8;
  min-width: 0;
  max-width: 42.5rem;
}

.privacy-page .privacy-hero__copy .lead {
  max-width: 38.75rem;
}

.privacy-page .privacy-hero__identifier {
  display: flex;
  grid-column: 9 / span 4;
  min-width: 15rem;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-5);
  border-top: 1px solid var(--color-sand-500);
  border-bottom: 1px solid var(--color-border);
  color: var(--color-sand-300);
}

.privacy-page .privacy-hero__identifier strong {
  color: var(--color-sand-100);
}

.privacy-page .privacy-hero__scope {
  grid-column: 1 / span 8;
  min-width: 0;
  max-width: 42.5rem;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-sand-500);
}

.privacy-page .privacy-hero__scope .meta {
  display: block;
  margin-bottom: var(--space-2);
}

.privacy-page .privacy-hero__scope p:last-child {
  max-width: 42.5rem;
  margin-bottom: 0;
}

.privacy-page .privacy-context__intro,
.privacy-page .privacy-principles__intro,
.privacy-page .privacy-legal__intro,
.privacy-page .privacy-security__intro,
.privacy-page .privacy-rights__intro,
.privacy-page .privacy-closing__intro {
  width: min(100%, 42.5rem);
  min-width: 0;
}

.privacy-page .privacy-context__intro,
.privacy-page .privacy-principles__intro,
.privacy-page .privacy-legal__intro,
.privacy-page .privacy-security__intro,
.privacy-page .privacy-rights__intro,
.privacy-page .privacy-closing__intro {
  margin-bottom: var(--space-7);
}

.privacy-page .privacy-context__panels {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.privacy-page .privacy-info-row {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.privacy-page .privacy-info-row__label {
  grid-column: 1 / span 3;
  min-width: 0;
}

.privacy-page .privacy-info-row__label .meta {
  display: block;
  margin-bottom: var(--space-2);
}

.privacy-page .privacy-info-row__label h3 {
  margin-bottom: 0;
}

.privacy-page .privacy-info-row__body {
  grid-column: 4 / span 7;
  min-width: 0;
  max-width: 42.5rem;
}

.privacy-page .privacy-info-row__body p,
.privacy-page .privacy-principles__meaning,
.privacy-page .privacy-legal__body,
.privacy-page .privacy-closing__body {
  overflow-wrap: anywhere;
}

.privacy-page .privacy-info-row__body p:last-child {
  margin-bottom: 0;
}

.privacy-page .privacy-info-row__space {
  grid-column: 11 / span 2;
  min-width: 0;
}

.privacy-page .privacy-principles {
  border-top: 1px solid rgba(49, 82, 101, 0.7);
}

.privacy-page .privacy-principles__table {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  margin-bottom: var(--space-6);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-principles__row {
  display: grid;
  grid-column: 1 / span 10;
  min-width: 0;
  grid-template-columns: 3fr 7fr;
  gap: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-principles__row:last-child {
  border-bottom: 0;
}

.privacy-page .privacy-principles__term {
  min-width: 0;
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

.privacy-page .privacy-principles__meaning {
  min-width: 0;
  max-width: 42.5rem;
}

.privacy-page .privacy-principles__note,
.privacy-page .privacy-security__advice {
  width: min(100%, 42.5rem);
  min-width: 0;
  padding: var(--space-5);
  border-left: 2px solid var(--color-sand-500);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  background: var(--color-navy-700);
}

.privacy-page .privacy-principles__note h3,
.privacy-page .privacy-security__advice h3 {
  margin-bottom: var(--space-3);
}

.privacy-page .privacy-principles__note p:last-child,
.privacy-page .privacy-security__advice p:last-child {
  margin-bottom: 0;
}

.privacy-page .privacy-legal {
  background: rgba(13, 32, 44, 0.58);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-legal__module {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  margin-bottom: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.privacy-page .privacy-legal__row {
  display: grid;
  grid-column: 1 / span 10;
  min-width: 0;
  grid-template-columns: 3fr 7fr;
  gap: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-legal__row:last-child {
  border-bottom: 0;
}

.privacy-page .privacy-legal__label {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-2);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

.privacy-page .privacy-legal__label span {
  color: var(--color-sand-500);
}

.privacy-page .privacy-legal__body {
  min-width: 0;
  max-width: 42.5rem;
}

.privacy-page .privacy-legal__retention {
  width: min(100%, 41.25rem);
  min-width: 0;
  padding: var(--space-5);
  border-top: 1px solid var(--color-sand-500);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-navy-900);
}

.privacy-page .privacy-legal__retention h3 {
  margin-bottom: var(--space-3);
}

.privacy-page .privacy-legal__retention p:last-child {
  margin-bottom: 0;
}

.privacy-page .privacy-security__cards {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-bottom: var(--space-6);
}

.privacy-page .privacy-security__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.privacy-page .privacy-security__card > * {
  min-width: 0;
}

.privacy-page .privacy-security__card .meta {
  color: var(--color-sand-500);
}

.privacy-page .privacy-security__card h3,
.privacy-page .privacy-security__card p {
  margin: 0;
}

.privacy-page .privacy-security__card::after {
  width: 100%;
  height: 1px;
  margin-top: auto;
  background: var(--color-sand-500);
  content: "";
  opacity: 0.72;
}

.privacy-page .privacy-rights {
  border-top: 1px solid rgba(49, 82, 101, 0.7);
}

.privacy-page .privacy-rights__list {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--space-6);
  margin-bottom: var(--space-6);
  border-top: 1px solid var(--color-border);
}

.privacy-page .privacy-rights__item {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 34%) minmax(0, 66%);
  gap: var(--space-4);
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-rights__item h3,
.privacy-page .privacy-rights__item p {
  min-width: 0;
  margin: 0;
}

.privacy-page .privacy-rights__item h3 {
  font-family: var(--font-body);
  font-size: var(--text-sm);
  font-weight: 600;
}

.privacy-page .privacy-rights__item p {
  overflow-wrap: anywhere;
}

.privacy-page .privacy-rights__note {
  width: min(100%, 42.5rem);
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.privacy-page .privacy-rights__note h3 {
  margin-bottom: var(--space-3);
}

.privacy-page .privacy-rights__note p:last-child {
  margin-bottom: 0;
}

.privacy-page .privacy-closing {
  background: var(--color-navy-900);
  border-top: 1px solid var(--color-border);
}

.privacy-page .privacy-closing__checks {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  margin-bottom: var(--space-6);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-closing__check {
  display: grid;
  grid-column: 1 / span 10;
  min-width: 0;
  grid-template-columns: 3fr 7fr;
  gap: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--color-border);
}

.privacy-page .privacy-closing__check:last-child {
  border-bottom: 0;
}

.privacy-page .privacy-closing__label {
  min-width: 0;
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

.privacy-page .privacy-closing__body {
  min-width: 0;
  max-width: 42.5rem;
}

.privacy-page .privacy-closing__summary {
  width: min(100%, 42.5rem);
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background: var(--color-navy-900);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

.privacy-page .privacy-closing__summary h3 {
  margin-bottom: var(--space-3);
}

.privacy-page .privacy-closing__statement {
  color: var(--color-sand-100);
  font-size: var(--text-lg);
  font-weight: 600;
}

.privacy-page .privacy-closing__summary p:last-child {
  margin-bottom: 0;
}

@media (max-width: 1100px) {
  .privacy-page .privacy-hero__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .privacy-page .privacy-hero__copy {
    grid-column: 1 / span 6;
  }

  .privacy-page .privacy-hero__identifier {
    grid-column: 7 / span 2;
    min-width: 0;
  }

  .privacy-page .privacy-hero__scope {
    grid-column: 1 / span 6;
  }

  .privacy-page .privacy-info-row {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .privacy-page .privacy-info-row__label {
    grid-column: 1 / span 2;
  }

  .privacy-page .privacy-info-row__body {
    grid-column: 3 / span 6;
  }

  .privacy-page .privacy-info-row__space {
    display: none;
  }

  .privacy-page .privacy-rights__list {
    gap: 0 var(--space-5);
  }
}

@media (max-width: 1020px) {
  .privacy-page .privacy-hero__identifier {
    grid-column: 1 / span 8;
    width: 100%;
    min-width: 0;
  }

  .privacy-page .privacy-hero__scope {
    grid-column: 1 / span 8;
  }

  .privacy-page .privacy-security__cards {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .privacy-page .privacy-security__card:nth-child(1),
  .privacy-page .privacy-security__card:nth-child(2) {
    grid-column: span 4;
  }

  .privacy-page .privacy-security__card:nth-child(3) {
    grid-column: 1 / span 8;
  }
}

@media (max-width: 940px) {
  .privacy-page .privacy-legal__module {
    grid-template-columns: 1fr;
  }

  .privacy-page .privacy-legal__row {
    grid-column: 1;
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
}

@media (max-width: 900px) {
  .privacy-page .privacy-principles__table,
  .privacy-page .privacy-closing__checks {
    grid-template-columns: 1fr;
  }

  .privacy-page .privacy-principles__row,
  .privacy-page .privacy-closing__check {
    grid-column: 1;
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
}

@media (max-width: 860px) {
  .privacy-page .privacy-rights__list {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .privacy-page .privacy-rights__item {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
}

@media (max-width: 760px) {
  .privacy-page .privacy-info-row {
    grid-template-columns: 1fr;
    gap: var(--space-3);
    padding: var(--space-5);
  }

  .privacy-page .privacy-info-row__label,
  .privacy-page .privacy-info-row__body {
    grid-column: 1;
    width: 100%;
    max-width: none;
  }

  .privacy-page .privacy-security__cards {
    grid-template-columns: 1fr;
  }

  .privacy-page .privacy-security__card:nth-child(1),
  .privacy-page .privacy-security__card:nth-child(2),
  .privacy-page .privacy-security__card:nth-child(3) {
    grid-column: 1;
  }
}

@media (max-width: 600px) {
  .privacy-page .privacy-hero__grid {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }

  .privacy-page .privacy-hero__copy,
  .privacy-page .privacy-hero__identifier,
  .privacy-page .privacy-hero__scope {
    grid-column: 1;
    width: 100%;
    max-width: none;
  }

  .privacy-page .privacy-hero__copy h1 {
    font-size: 2.25rem;
    line-height: 1.11;
  }

  .privacy-page .privacy-hero__copy .lead {
    max-width: none;
    font-size: var(--text-lg);
    line-height: 1.56;
  }

  .privacy-page .privacy-hero__identifier {
    min-height: 2.75rem;
    padding: var(--space-3) var(--space-4);
  }

  .privacy-page .privacy-hero__identifier span:last-child {
    display: none;
  }

  .privacy-page .privacy-context__intro,
  .privacy-page .privacy-principles__intro,
  .privacy-page .privacy-legal__intro,
  .privacy-page .privacy-security__intro,
  .privacy-page .privacy-rights__intro,
  .privacy-page .privacy-closing__intro {
    width: 100%;
    margin-bottom: var(--space-6);
  }

  .privacy-page .privacy-info-row,
  .privacy-page .privacy-principles__row,
  .privacy-page .privacy-legal__row,
  .privacy-page .privacy-closing__check {
    padding: var(--space-4);
  }

  .privacy-page .privacy-principles__note,
  .privacy-page .privacy-security__advice,
  .privacy-page .privacy-legal__retention,
  .privacy-page .privacy-rights__note,
  .privacy-page .privacy-closing__summary {
    width: 100%;
    padding: var(--space-4);
  }

  .privacy-page .privacy-security__card {
    padding: var(--space-4);
  }

  .privacy-page .privacy-rights__list {
    margin-bottom: var(--space-5);
  }
}


.kapcsolat-page {
  overflow-wrap: anywhere;
}

.kapcsolat-hero {
  position: relative;
  border-bottom: 1px solid var(--color-border);
  background-color: var(--color-navy-900);
  background-image: repeating-linear-gradient(0deg, rgba(242, 231, 207, 0.022) 0, rgba(242, 231, 207, 0.022) 1px, transparent 1px, transparent 8px);
}

.kapcsolat-hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

.kapcsolat-hero__copy {
  grid-column: 1 / span 7;
  min-width: 0;
}

.kapcsolat-hero__copy > .lead {
  max-width: 58ch;
}

.kapcsolat-hero__emphasis {
  border-bottom: 1px solid var(--color-sand-500);
  color: var(--color-sand-100);
  font-weight: 600;
}

.kapcsolat-hero__actions {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  margin-top: var(--space-5);
}

.kapcsolat-hero__actions > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-hero__panel {
  grid-column: 9 / span 4;
  min-width: 0;
  padding: var(--space-5);
}

.kapcsolat-hero__panel-title {
  margin-bottom: var(--space-4);
}

.kapcsolat-hero__types {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0;
  padding: 0;
  list-style: none;
}

.kapcsolat-hero__types li {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: baseline;
  min-width: 0;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  line-height: 1.45;
}

.kapcsolat-hero__types li:first-child {
  padding-top: 0;
  border-top: 0;
}

.kapcsolat-hero__types .numeric {
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
}

.kapcsolat-topics__heading {
  width: 50%;
  max-width: 58ch;
}

.kapcsolat-topics__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}

.kapcsolat-topic-card {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
}

.kapcsolat-topic-card__number {
  min-width: 0;
  color: var(--color-sand-500);
  font-size: var(--text-sm);
  font-weight: 600;
}

.kapcsolat-topic-card__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-3);
}

.kapcsolat-topic-card__content > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-topic-card__content h3 {
  font-size: 1.5rem;
  line-height: 1.2;
}

.kapcsolat-topic-card__micro {
  margin-top: auto;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
  font-size: var(--text-sm);
  line-height: 1.5;
}

.kapcsolat-topic-card__micro strong {
  display: block;
  margin-bottom: var(--space-2);
}

.kapcsolat-topic-card__micro ul {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  margin: 0;
  padding-left: 1.1em;
}

.kapcsolat-tag {
  display: inline-flex;
  width: fit-content;
  min-width: 0;
  padding: 0.2rem 0.45rem;
  border: 1px solid var(--color-forest-500);
  border-radius: var(--radius-sm);
  color: var(--color-sand-100);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1.35;
  text-transform: uppercase;
}

.kapcsolat-form-section {
  background: var(--color-navy-900);
  border-block: 1px solid var(--color-border);
}

.kapcsolat-form-section__heading {
  width: 50%;
  max-width: 60ch;
}

.kapcsolat-form {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  margin-top: var(--space-6);
  padding: var(--space-6);
}

.kapcsolat-form > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-form__summary {
  padding: var(--space-3) var(--space-4);
  border-left: 2px solid var(--color-danger-400);
  background: rgba(201, 121, 101, 0.11);
  color: var(--color-sand-100);
}

.kapcsolat-form__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5) var(--space-5);
  min-width: 0;
}

.kapcsolat-field {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-2);
}

.kapcsolat-field > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-field--name,
.kapcsolat-field--email,
.kapcsolat-field--subject,
.kapcsolat-field--context {
  grid-column: span 6;
}

.kapcsolat-field--message,
.kapcsolat-form__consent,
.kapcsolat-form__actions {
  grid-column: 1 / -1;
  min-width: 0;
}

.kapcsolat-field textarea {
  min-height: 10rem;
  background: var(--color-navy-800);
}

.kapcsolat-field input,
.kapcsolat-field select {
  background: var(--color-navy-800);
}

.kapcsolat-required {
  color: var(--color-gold-300);
}

.kapcsolat-optional {
  color: var(--color-sand-300);
  font-weight: 400;
}

.kapcsolat-field__help {
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  line-height: 1.45;
}

.kapcsolat-field__error {
  min-height: 1.35em;
  color: var(--color-danger-400);
  font-size: var(--text-sm);
  font-weight: 500;
  line-height: 1.45;
}

.kapcsolat-is-invalid {
  border-color: var(--color-danger-400) !important;
}

.kapcsolat-form__consent {
  display: grid;
  grid-template-columns: 1.5rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
}

.kapcsolat-form__consent input {
  width: 1.5rem;
  height: 1.5rem;
  min-height: 1.5rem;
  margin: 0.1rem 0 0;
  accent-color: var(--color-forest-600);
}

.kapcsolat-form__consent label {
  min-width: 0;
  margin: 0;
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  font-weight: 400;
  line-height: 1.55;
}

.kapcsolat-form__consent .kapcsolat-field__error {
  grid-column: 2;
}

.kapcsolat-form__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
}

.kapcsolat-form__actions > * {
  min-width: 0;
}

.kapcsolat-form__submit {
  min-height: 3rem;
}

.kapcsolat-form__status {
  flex: 1 1 20rem;
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  line-height: 1.45;
}

.kapcsolat-form--success .kapcsolat-form__status {
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-forest-500);
  background: var(--color-forest-600);
  color: var(--color-sand-100);
}

.kapcsolat-form--failure .kapcsolat-form__status {
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-danger-400);
  color: var(--color-sand-100);
}

.kapcsolat-routing__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

.kapcsolat-routing__intro {
  grid-column: 1 / span 5;
  min-width: 0;
}

.kapcsolat-routing__rule-copy {
  max-width: 60ch;
  padding-left: var(--space-5);
  border-left: 1px solid var(--color-gold-300);
}

.kapcsolat-routing__cards {
  display: flex;
  grid-column: 7 / span 6;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.kapcsolat-routing__cards > * {
  min-width: 0;
}

.kapcsolat-routing-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-3);
  padding: var(--space-5);
}

.kapcsolat-routing-card > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-routing-card h3 {
  font-size: 1.5rem;
  line-height: 1.2;
}

.kapcsolat-routing-card ul {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  margin: 0;
  padding-left: 1.2em;
}

.kapcsolat-routing-card__link {
  display: inline-flex;
  width: fit-content;
  min-height: 2.75rem;
  align-items: center;
  margin-top: auto;
}

.kapcsolat-guides__heading {
  width: 50%;
  max-width: 56ch;
}

.kapcsolat-guide-row {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr) minmax(14rem, 18rem);
  gap: var(--space-5);
  align-items: center;
  min-width: 0;
  margin-top: var(--space-6);
  padding: var(--space-5);
}

.kapcsolat-guide-row > * {
  min-width: 0;
}

.kapcsolat-guide-row__number,
.kapcsolat-guide-panel__number {
  color: var(--color-sand-500);
  font-size: var(--text-sm);
  font-weight: 600;
}

.kapcsolat-guide-row__copy h3,
.kapcsolat-guide-panel__copy h3 {
  font-size: 1.5rem;
  line-height: 1.2;
}

.kapcsolat-guide-row__copy > :last-child,
.kapcsolat-guide-panel__copy > :last-child {
  margin-bottom: 0;
}

.kapcsolat-guide-row__link,
.kapcsolat-guide-card__link,
.kapcsolat-guide-panel__link,
.kapcsolat-privacy__link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  width: fit-content;
}

.kapcsolat-guides__pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-5);
}

.kapcsolat-guide-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-3);
}

.kapcsolat-guide-card > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-guide-card h3 {
  font-size: 1.5rem;
  line-height: 1.2;
}

.kapcsolat-guide-card__link {
  margin-top: auto;
}

.kapcsolat-guide-panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  min-width: 0;
  margin-top: var(--space-5);
}

.kapcsolat-guide-panel__item {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: var(--space-3);
  min-width: 0;
  padding: var(--space-5);
  border-left: 1px solid var(--color-border);
}

.kapcsolat-guide-panel__item:first-child {
  border-left: 0;
}

.kapcsolat-guide-panel__copy {
  min-width: 0;
}

.kapcsolat-guide-panel__copy > :last-child {
  margin-bottom: 0;
}

.kapcsolat-guide-panel__link {
  grid-column: 2;
}

.kapcsolat-guide-row:hover,
.kapcsolat-guide-panel__item:hover {
  background: var(--color-navy-700);
}

.kapcsolat-editorial {
  border-block: 1px solid var(--color-border);
  background: var(--color-navy-900);
}

.kapcsolat-editorial__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

.kapcsolat-editorial__copy {
  grid-column: 1 / span 7;
  min-width: 0;
}

.kapcsolat-editorial__copy > h2 {
  max-width: 22ch;
}

.kapcsolat-editorial__journal {
  display: flex;
  min-width: 0;
  max-width: 42.5rem;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-5);
  border-left-color: var(--color-sand-500);
}

.kapcsolat-editorial__journal > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-editorial__panel {
  display: flex;
  grid-column: 9 / span 4;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

.kapcsolat-editorial__panel > * {
  min-width: 0;
  margin: 0;
}

.kapcsolat-editorial__panel h3 {
  font-size: 1.5rem;
  line-height: 1.2;
}

.kapcsolat-editorial__panel .stat-list {
  margin: 0;
}

.kapcsolat-editorial__panel .stat-list dd {
  font-size: var(--text-sm);
}

.kapcsolat-editorial__panel > p:last-child {
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  line-height: 1.5;
}

.kapcsolat-privacy__block {
  width: 58.333%;
  max-width: 38.75rem;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-sand-500);
}

.kapcsolat-privacy__block > h2 {
  font-size: 1.5rem;
  line-height: 1.2;
}

.kapcsolat-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 1100px) {
  .kapcsolat-hero__grid,
  .kapcsolat-form__grid,
  .kapcsolat-routing__grid,
  .kapcsolat-editorial__grid {
    column-gap: var(--space-4);
  }

  .kapcsolat-hero__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .kapcsolat-hero__copy {
    grid-column: 1 / span 5;
  }

  .kapcsolat-hero__panel {
    grid-column: 6 / span 3;
  }

  .kapcsolat-topics__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .kapcsolat-topic-card:nth-child(1),
  .kapcsolat-topic-card:nth-child(2) {
    grid-column: span 4;
  }

  .kapcsolat-topic-card:nth-child(3) {
    grid-column: 1 / span 8;
  }

  .kapcsolat-routing__grid,
  .kapcsolat-editorial__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .kapcsolat-routing__intro {
    grid-column: 1 / -1;
  }

  .kapcsolat-routing__cards {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4);
  }

  .kapcsolat-editorial__copy {
    grid-column: 1 / -1;
  }

  .kapcsolat-editorial__panel {
    grid-column: 1 / -1;
  }
}

@media (max-width: 1000px) {
  .kapcsolat-editorial__journal {
    max-width: none;
  }
}

@media (max-width: 980px) {
  .kapcsolat-hero__copy,
  .kapcsolat-hero__panel {
    grid-column: 1 / -1;
  }

  .kapcsolat-hero__panel {
    max-width: none;
  }

  .kapcsolat-hero__types {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-3);
  }

  .kapcsolat-hero__types li,
  .kapcsolat-hero__types li:first-child {
    padding-top: 0;
    border-top: 0;
    border-left: 1px solid var(--color-border);
    padding-left: var(--space-3);
  }

  .kapcsolat-hero__types li:first-child {
    border-left: 0;
    padding-left: 0;
  }
}

@media (max-width: 860px) {
  .kapcsolat-form-section__heading,
  .kapcsolat-topics__heading,
  .kapcsolat-guides__heading {
    width: 100%;
  }

  .kapcsolat-field--name,
  .kapcsolat-field--email,
  .kapcsolat-field--subject,
  .kapcsolat-field--context {
    grid-column: 1 / -1;
  }

  .kapcsolat-guides__pair {
    grid-template-columns: 1fr;
  }

  .kapcsolat-guide-panel {
    grid-template-columns: 1fr;
  }

  .kapcsolat-guide-panel__item,
  .kapcsolat-guide-panel__item:first-child {
    border-top: 1px solid var(--color-border);
    border-left: 0;
  }

  .kapcsolat-guide-panel__item:first-child {
    border-top: 0;
  }
}

@media (max-width: 760px) {
  .kapcsolat-routing__cards {
    grid-template-columns: 1fr;
  }

  .kapcsolat-guide-row {
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: var(--space-3);
  }

  .kapcsolat-guide-row__link {
    grid-column: 2;
  }
}

@media (max-width: 600px) {
  .kapcsolat-hero__grid,
  .kapcsolat-routing__grid,
  .kapcsolat-editorial__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-5);
  }

  .kapcsolat-hero__copy,
  .kapcsolat-hero__panel,
  .kapcsolat-routing__intro,
  .kapcsolat-routing__cards,
  .kapcsolat-editorial__copy,
  .kapcsolat-editorial__panel {
    grid-column: 1 / -1;
  }

  .kapcsolat-hero h1 {
    font-size: 2.25rem;
    line-height: 1.11;
  }

  .kapcsolat-hero__button {
    width: 100%;
    min-height: 3rem;
  }

  .kapcsolat-hero__types {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .kapcsolat-hero__types li,
  .kapcsolat-hero__types li:first-child {
    grid-template-columns: 2rem minmax(0, 1fr);
    padding: var(--space-3) 0;
    border-top: 1px solid var(--color-border);
    border-left: 0;
  }

  .kapcsolat-hero__types li:first-child {
    padding-top: 0;
    border-top: 0;
  }

  .kapcsolat-topics__grid {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }

  .kapcsolat-topic-card:nth-child(1),
  .kapcsolat-topic-card:nth-child(2),
  .kapcsolat-topic-card:nth-child(3) {
    grid-column: 1;
  }

  .kapcsolat-form {
    padding: var(--space-4);
  }

  .kapcsolat-form__grid {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }

  .kapcsolat-field--name,
  .kapcsolat-field--email,
  .kapcsolat-field--subject,
  .kapcsolat-field--context,
  .kapcsolat-field--message,
  .kapcsolat-form__consent,
  .kapcsolat-form__actions {
    grid-column: 1;
  }

  .kapcsolat-field textarea {
    min-height: 10rem;
  }

  .kapcsolat-form__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .kapcsolat-form__submit {
    width: 100%;
  }

  .kapcsolat-form__status {
    flex-basis: auto;
  }

  .kapcsolat-routing__rule-copy {
    padding-left: var(--space-4);
  }

  .kapcsolat-guide-row {
    margin-top: var(--space-5);
    padding: var(--space-4);
  }

  .kapcsolat-guide-panel__item {
    padding: var(--space-4);
  }

  .kapcsolat-guide-row__link,
  .kapcsolat-guide-card__link,
  .kapcsolat-guide-panel__link,
  .kapcsolat-routing-card__link,
  .kapcsolat-privacy__link {
    width: 100%;
  }

  .kapcsolat-editorial__journal {
    padding: var(--space-4);
  }

  .kapcsolat-privacy__block {
    width: 100%;
    max-width: 38.75rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kapcsolat-guide-row:hover,
  .kapcsolat-guide-panel__item:hover {
    background: inherit;
  }
}


.home-page {
  background: var(--color-ink-950);
}

.home-page .home-hero {
  background: var(--color-navy-900);
  border-bottom: 1px solid var(--color-border);
}

.home-page .home-hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: center;
}

.home-page .home-hero__copy {
  grid-column: 1 / span 5;
  min-width: 390px;
  max-width: 31.25rem;
}

.home-page .home-hero__copy h1 {
  font-size: clamp(3rem, 5vw, 4rem);
}

.home-page .home-hero__copy .lead {
  max-width: 31rem;
}

.home-page .home-hero__actions {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.home-page .home-hero__microcopy,
.home-page .home-final-cta__microcopy {
  margin: 0;
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  line-height: 1.45;
}

.home-page .home-hero__media {
  grid-column: 6 / span 7;
  width: 100%;
  min-width: 460px;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  background: var(--color-ink-950);
  box-shadow: var(--shadow-raised), inset 0 0 0 4px var(--color-navy-900);
}

.home-page .home-hero__media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.home-page .home-hero__focus {
  grid-column: 1 / -1;
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--color-sand-500);
}

.home-page .home-focus-item {
  display: flex;
  min-width: 0;
  min-height: 4.5rem;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-1);
  padding: var(--space-3) var(--space-4);
  border-right: 1px solid var(--color-border);
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  line-height: 1.4;
  text-decoration: none;
}

.home-page .home-focus-item:first-child { padding-left: 0; }
.home-page .home-focus-item:last-child { border-right: 0; }
.home-page .home-focus-item strong { color: var(--color-sand-100); }

.home-page .home-pathways__intro,
.home-page .home-tactics__intro,
.home-page .home-levels__intro,
.home-page .home-features__intro,
.home-page .home-articles__intro,
.home-page .home-faq__intro {
  max-width: 38.75rem;
}

.home-page .home-pathways__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}

.home-page .home-path-card {
  display: flex;
  min-width: 0;
  min-height: 20rem;
  flex-direction: column;
  align-items: stretch;
}

.home-page .home-path-card__number {
  margin: 0 0 var(--space-5);
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: 2rem;
  line-height: 1;
}

.home-page .home-path-card__link {
  margin-top: auto;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}

.home-page .home-mechanics {
  background: var(--color-navy-900);
}

.home-page .home-mechanics__intro {
  width: min(100%, 35rem);
  margin-bottom: var(--space-6);
}

.home-page .home-mechanics__table {
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-sm);
  background: var(--color-navy-800);
}

.home-page .home-mechanics__head,
.home-page .home-mechanics__row {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 22fr) minmax(0, 52fr) minmax(0, 26fr);
}

.home-page .home-mechanics__head {
  background: var(--color-navy-700);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

.home-page .home-mechanics__head > *,
.home-page .home-mechanics__row > * {
  min-width: 0;
  margin: 0;
  padding: var(--space-4);
  border-right: 1px solid var(--color-border);
}

.home-page .home-mechanics__head > *:last-child,
.home-page .home-mechanics__row > *:last-child { border-right: 0; }
.home-page .home-mechanics__row { border-top: 1px solid var(--color-border); }
.home-page .home-mechanics__row h3 { font-size: var(--text-xl); }
.home-page .home-mechanics__takeaway { display: flex; flex-direction: column; gap: var(--space-2); }
.home-page .home-mechanics__takeaway strong { font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; }
.home-page .home-mechanics__link,
.home-page .home-tactics__link,
.home-page .home-features__link { display: inline-block; margin-top: var(--space-5); }

.home-page .home-deck__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

.home-page .home-deck__media {
  grid-column: 1 / span 5;
  width: 100%;
  min-width: 0;
  margin: 0;
}

.home-page .home-deck__media img {
  width: 100%;
  aspect-ratio: 3 / 2;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-sm);
  object-fit: cover;
}

.home-page .home-deck__content {
  grid-column: 7 / span 6;
  min-width: 0;
  width: 100%;
}

.home-page .home-deck__content > .lead { max-width: 35rem; }

.home-page .home-deck__roles {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: var(--space-5) 0;
  border: 1px solid var(--color-border);
  background: var(--color-border);
}

.home-page .home-deck__roles > article {
  min-width: 0;
  padding: var(--space-4);
  background: var(--color-navy-800);
}

.home-page .home-deck__roles h3 { margin-bottom: var(--space-2); font-size: var(--text-xl); }
.home-page .home-deck__roles p { margin: 0; font-size: var(--text-sm); line-height: 1.55; }

.home-page .home-deck__principle {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0 0 var(--space-4);
  padding: var(--space-4);
  border: 1px solid var(--color-gold-300);
  background: var(--color-navy-900);
}

.home-page .home-deck__principle p { margin: 0; }

.home-page .home-tactics__intro { max-width: 37.5rem; }
.home-page .home-tactics__media { width: 100%; margin: var(--space-6) 0; overflow: hidden; border: 1px solid var(--color-sand-500); border-radius: var(--radius-lg); }
.home-page .home-tactics__media img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

.home-page .home-tactics__steps {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--color-sand-500);
}

.home-page .home-tactics__steps > article {
  display: grid;
  min-width: 0;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-3);
  padding: var(--space-5);
  border-right: 1px solid var(--color-border);
}

.home-page .home-tactics__steps > article:first-child { padding-left: 0; }
.home-page .home-tactics__steps > article:last-child { border-right: 0; padding-right: 0; }
.home-page .home-tactics__steps > article > span { min-width: 0; color: var(--color-sand-500); font-family: var(--font-heading); font-size: 2rem; line-height: 1; }
.home-page .home-tactics__steps h3 { font-size: var(--text-xl); }
.home-page .home-tactics__steps p { margin: 0; }

.home-page .home-levels { background: var(--color-navy-900); }
.home-page .home-levels__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}

.home-page .home-level-card { display: flex; min-width: 0; flex-direction: column; align-items: stretch; gap: var(--space-4); }
.home-page .home-level-card--beginner { border-left: 3px solid var(--color-forest-500); }
.home-page .home-level-card--advanced { border-top-color: var(--color-sand-500); }
.home-page .home-level-card h3 { margin: 0; }
.home-page .home-level-card__list { display: grid; min-width: 0; margin: 0; border-top: 1px solid var(--color-border); }
.home-page .home-level-card__list > div { display: grid; min-width: 0; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: var(--space-4); padding: var(--space-3) 0; border-bottom: 1px solid var(--color-border); }
.home-page .home-level-card__list dt,
.home-page .home-level-card__list dd { min-width: 0; margin: 0; }
.home-page .home-level-card__list dt { color: var(--color-sand-100); font-weight: 600; }

.home-page .home-features__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: var(--space-6);
  border-top: 1px solid var(--color-sand-500);
  border-bottom: 1px solid var(--color-sand-500);
}

.home-page .home-features__grid > article {
  display: grid;
  min-width: 0;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  gap: var(--space-3);
  padding: var(--space-5) var(--space-4);
  border-right: 1px solid var(--color-border);
}

.home-page .home-features__grid > article:first-child { padding-left: 0; }
.home-page .home-features__grid > article:last-child { padding-right: 0; border-right: 0; }
.home-page .home-features__grid > article > span { color: var(--color-sand-500); font-family: var(--font-heading); font-size: var(--text-xl); line-height: 1; }
.home-page .home-features__grid h3 { margin-bottom: var(--space-2); font-size: var(--text-xl); }
.home-page .home-features__grid p { margin: 0; font-size: var(--text-sm); line-height: 1.55; }

.home-page .home-article-index { display: grid; min-width: 0; margin-top: var(--space-6); border-top: 1px solid var(--color-sand-500); }
.home-page .home-article-row {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 2fr) minmax(0, 7fr) minmax(0, 3fr);
  gap: var(--space-5);
  align-items: center;
  padding: var(--space-5) 0;
  border-bottom: 1px solid var(--color-sand-500);
  color: var(--color-sand-300);
  text-decoration: none;
}
.home-page .home-article-row:hover { background: var(--color-navy-700); }
.home-page .home-article-row > * { min-width: 0; }
.home-page .home-article-row h3 { margin-bottom: var(--space-2); }
.home-page .home-article-row p { max-width: 37.5rem; margin: 0; }
.home-page .home-article-row__go { justify-self: end; color: var(--color-sand-100); font-weight: 600; }
.home-page .home-article-row__go b { color: var(--color-sand-500); font-size: 1.25rem; }

.home-page .home-faq { background: var(--color-navy-900); }
.home-page .home-faq__list { display: grid; min-width: 0; width: min(100%, 51.25rem); margin-top: var(--space-6); border-top: 1px solid var(--color-sand-500); }
.home-page .home-faq__item { min-width: 0; border-bottom: 1px solid var(--color-sand-500); }
.home-page .home-faq__item button { display: grid; width: 100%; min-width: 0; min-height: 3.25rem; grid-template-columns: minmax(0, 1fr) 2rem; gap: var(--space-3); align-items: center; padding: var(--space-4) 0; background: transparent; color: var(--color-sand-100); font-weight: 600; text-align: left; }
.home-page .home-faq__icon { display: grid; width: 2rem; min-width: 2rem; height: 2rem; place-items: center; border-left: 1px solid var(--color-border); color: var(--color-sand-500); font-size: 1.5rem; font-weight: 400; }
.home-page .home-faq__answer { display: grid; grid-template-rows: 0fr; min-width: 0; opacity: 0; transition: grid-template-rows 180ms ease, opacity 180ms ease; }
.home-page .home-faq__answer > div { min-width: 0; overflow: hidden; }
.home-page .home-faq__answer p { margin: 0; padding: 0 3rem var(--space-4) 0; }
.home-page .home-faq__item.is-open .home-faq__answer { grid-template-rows: 1fr; opacity: 1; }
.home-page .home-faq__item.is-open .home-faq__icon { color: var(--color-gold-300); }
.home-page .home-faq__item.is-open .home-faq__icon::before { content: ""; }
.home-page .home-faq__item.is-open .home-faq__icon { font-size: 0; }
.home-page .home-faq__item.is-open .home-faq__icon::after { content: "−"; font-size: 1.5rem; }

.home-page .home-final-cta { background: var(--color-navy-900); border-top: 1px solid var(--color-sand-500); }
.home-page .home-final-cta__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: center; }
.home-page .home-final-cta__copy { grid-column: 1 / span 7; display: flex; min-width: 0; max-width: 47.5rem; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-page .home-final-cta__copy h2,
.home-page .home-final-cta__copy p { margin: 0; }
.home-page .home-final-cta__copy h2 { max-width: 38.75rem; }
.home-page .home-final-cta__copy > p:not(.home-final-cta__microcopy) { max-width: 43.75rem; }
.home-page .home-final-cta__motif { grid-column: 9 / span 4; display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.home-page .home-final-cta__motif span { display: block; min-width: 0; aspect-ratio: 3 / 4; border: 1px solid var(--color-sand-500); background: var(--color-navy-800); transform: rotate(4deg); }
.home-page .home-final-cta__motif span:nth-child(2) { transform: translateY(-1rem) rotate(-4deg); background: var(--color-navy-700); }
.home-page .home-final-cta__motif span:nth-child(3) { transform: rotate(6deg); }

@media (max-width: 1100px) {
  .home-page .home-hero__grid,
  .home-page .home-deck__grid,
  .home-page .home-final-cta__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: var(--space-4); }
  .home-page .home-hero__copy { grid-column: 1 / span 4; min-width: 0; }
  .home-page .home-hero__media { grid-column: 5 / span 4; min-width: 0; }
  .home-page .home-deck__media { grid-column: 1 / span 3; }
  .home-page .home-deck__content { grid-column: 4 / span 5; }
  .home-page .home-final-cta__copy { grid-column: 1 / span 6; }
  .home-page .home-final-cta__motif { grid-column: 7 / span 2; }
  .home-page .home-features__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .home-features__grid > article:nth-child(2) { border-right: 0; padding-right: 0; }
  .home-page .home-features__grid > article:nth-child(3) { padding-left: 0; border-top: 1px solid var(--color-border); }
  .home-page .home-features__grid > article:nth-child(4) { border-top: 1px solid var(--color-border); border-right: 0; padding-right: 0; }
}

@media (max-width: 860px) {
  .home-page .home-hero__grid,
  .home-page .home-deck__grid,
  .home-page .home-final-cta__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .home-page .home-hero__copy,
  .home-page .home-hero__media,
  .home-page .home-hero__focus,
  .home-page .home-deck__content,
  .home-page .home-deck__media,
  .home-page .home-final-cta__copy { grid-column: 1 / -1; }
  .home-page .home-hero__media { order: 2; }
  .home-page .home-hero__focus { order: 3; }
  .home-page .home-hero__copy .lead { max-width: 36ch; }
  .home-page .home-pathways__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .home-pathways__grid > article:nth-child(3) { grid-column: 1 / -1; }
  .home-page .home-deck__media { order: 2; }
  .home-page .home-deck__content { order: 1; }
  .home-page .home-tactics__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .home-tactics__steps > article:nth-child(1) { padding-left: 0; }
  .home-page .home-tactics__steps > article:nth-child(2) { padding-right: 0; border-right: 0; }
  .home-page .home-tactics__steps > article:nth-child(3) { grid-column: 1 / -1; padding-left: 0; border-top: 1px solid var(--color-border); }
  .home-page .home-levels__grid { grid-template-columns: 1fr; }
  .home-page .home-article-row { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
  .home-page .home-article-row__go { justify-self: start; }
  .home-page .home-final-cta__motif { display: none; }
}

@media (max-width: 600px) {
  .home-page .home-hero__copy h1 { font-size: 2.25rem; line-height: 1.1; }
  .home-page .home-hero__copy .lead { max-width: 36ch; font-size: var(--text-lg); }
  .home-page .home-hero__focus { grid-template-columns: 1fr; }
  .home-page .home-focus-item,
  .home-page .home-focus-item:first-child { min-height: 2.75rem; padding: var(--space-3) 0; border-right: 0; border-bottom: 1px solid var(--color-border); }
  .home-page .home-focus-item:last-child { border-bottom: 0; }
  .home-page .home-pathways__grid,
  .home-page .home-tactics__steps,
  .home-page .home-features__grid { grid-template-columns: 1fr; }
  .home-page .home-pathways__grid > article:nth-child(3) { grid-column: auto; }
  .home-page .home-path-card { min-height: 11rem; }
  .home-page .home-mechanics__head { display: none; }
  .home-page .home-mechanics__row { grid-template-columns: 1fr; padding: var(--space-4); }
  .home-page .home-mechanics__row > * { padding: 0; border-right: 0; }
  .home-page .home-mechanics__row h3 { margin-bottom: var(--space-3); }
  .home-page .home-mechanics__row p { margin-bottom: var(--space-4); }
  .home-page .home-mechanics__row .home-mechanics__takeaway { margin: 0; padding-top: var(--space-3); border-top: 1px solid var(--color-border); }
  .home-page .home-deck__roles { grid-template-columns: 1fr; }
  .home-page .home-tactics__steps > article,
  .home-page .home-tactics__steps > article:nth-child(1),
  .home-page .home-tactics__steps > article:nth-child(2),
  .home-page .home-tactics__steps > article:nth-child(3) { grid-column: auto; padding: var(--space-4) 0; border-right: 0; border-top: 1px solid var(--color-border); }
  .home-page .home-tactics__steps > article:first-child { border-top: 0; }
  .home-page .home-level-card__list > div { grid-template-columns: 1fr; gap: var(--space-2); }
  .home-page .home-features__grid > article,
  .home-page .home-features__grid > article:first-child,
  .home-page .home-features__grid > article:nth-child(2),
  .home-page .home-features__grid > article:nth-child(3),
  .home-page .home-features__grid > article:nth-child(4) { padding: var(--space-4) 0; border-right: 0; border-top: 1px solid var(--color-border); }
  .home-page .home-features__grid > article:first-child { border-top: 0; }
  .home-page .home-article-row { padding: var(--space-4) 0; }
  .home-page .home-faq__answer p { padding-right: 0; }
  .home-page .home-final-cta__copy { align-items: stretch; }
  .home-page .home-final-cta__copy .button-primary { width: 100%; min-height: 3rem; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .home-faq__answer { transition: none; }
}


.jf-page {
  min-width: 0;
  overflow: hidden;
}

.jf-page .section {
  position: relative;
}

.jf-page .jf-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.jf-page .jf-store-link {
  width: fit-content;
}

.jf-page .jf-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-5);
  align-items: center;
}

.jf-page .jf-hero__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.jf-page .jf-hero__copy > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-hero__copy h1 {
  max-width: 15ch;
  font-size: clamp(3rem, 5vw, 4rem);
  line-height: 0.98;
}

.jf-page .jf-hero__copy .lead {
  max-width: 34ch;
}

.jf-page .jf-hero__figure {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  background: var(--color-navy-900);
  box-shadow: var(--shadow-raised);
}

.jf-page .jf-hero__figure img {
  width: 100%;
  min-width: 0;
  height: clamp(29.4rem, 44vw, 35rem);
  object-fit: cover;
  object-position: center;
}

.jf-page .jf-hero__figure figcaption {
  min-width: 0;
  margin: 0;
  padding: 0 var(--space-4) var(--space-3);
}

.jf-page .jf-map,
.jf-page .jf-combo,
.jf-page .jf-path,
.jf-page .jf-faq {
  background: var(--color-navy-900);
  border-block: 1px solid rgba(169, 141, 92, 0.38);
}

.jf-page .jf-section-head {
  min-width: 0;
}

.jf-page .jf-section-head > :last-child {
  margin-bottom: 0;
}

.jf-page .jf-map__head {
  max-width: 58ch;
  margin-bottom: var(--space-7);
}

.jf-page .jf-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5);
}

.jf-page .jf-feature-grid > * {
  min-width: 0;
}

.jf-page .jf-feature-card,
.jf-page .jf-deck-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.jf-page .jf-feature-card > *,
.jf-page .jf-deck-card > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-feature-card p,
.jf-page .jf-deck-card p {
  flex: 1 1 auto;
}

.jf-page .jf-card-number,
.jf-page .jf-path-number {
  color: var(--color-sand-500);
  font-size: var(--text-sm);
  font-weight: 700;
  font-variant-numeric: tabular-nums lining-nums;
  letter-spacing: 0.1em;
}

.jf-page .jf-text-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  width: fit-content;
}

.jf-page .jf-battle .container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.jf-page .jf-battle__copy {
  display: flex;
  grid-column: 1 / span 7;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  max-width: 68ch;
}

.jf-page .jf-battle__copy > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-takeaway {
  grid-column: 1 / span 7;
  min-width: 0;
  padding: var(--space-4) 0 var(--space-4) var(--space-5);
  border-left: 2px solid var(--color-sand-500);
}

.jf-page .jf-takeaway > :last-child {
  margin-bottom: 0;
}

.jf-page .jf-decision-table {
  display: grid;
  grid-column: 1 / -1;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
}

.jf-page .jf-decision-table__head,
.jf-page .jf-decision-table__row {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 3fr) minmax(0, 4fr) minmax(0, 5fr);
}

.jf-page .jf-decision-table__head > *,
.jf-page .jf-decision-table__row > * {
  min-width: 0;
  padding: var(--space-3) var(--space-4);
  border-right: 1px solid var(--color-border);
}

.jf-page .jf-decision-table__head > *:last-child,
.jf-page .jf-decision-table__row > *:last-child {
  border-right: 0;
}

.jf-page .jf-decision-table__head {
  color: var(--color-sand-100);
  background: var(--color-navy-700);
  font-size: var(--text-sm);
  font-weight: 600;
}

.jf-page .jf-decision-table__row {
  border-top: 1px solid var(--color-border);
  color: var(--color-sand-300);
}

.jf-page .jf-decision-table__row:hover {
  background: rgba(27, 64, 80, 0.56);
}

.jf-page .jf-mobile-label {
  display: none;
}

.jf-page .jf-deck__head {
  max-width: 64ch;
  margin-bottom: var(--space-7);
}

.jf-page .jf-deck-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

.jf-page .jf-deck-grid > * {
  min-width: 0;
}

.jf-page .jf-combo__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-5);
  align-items: start;
}

.jf-page .jf-combo__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

.jf-page .jf-combo__copy > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-combo__copy h2,
.jf-page .jf-combo__copy > p:not(.eyebrow) {
  max-width: 38ch;
}

.jf-page .jf-checklist {
  display: grid;
  min-width: 0;
  border-top: 1px solid var(--color-border);
}

.jf-page .jf-checklist > div {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(7rem, 0.7fr) minmax(0, 1.3fr);
  gap: var(--space-3);
  padding-block: var(--space-3);
  border-bottom: 1px solid var(--color-border);
}

.jf-page .jf-checklist strong,
.jf-page .jf-checklist span {
  min-width: 0;
}

.jf-page .jf-combo-note {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-sand-500);
  background: var(--color-navy-800);
}

.jf-page .jf-combo-note > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-combo__figure {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
}

.jf-page .jf-combo__figure img {
  width: 100%;
  min-width: 0;
  aspect-ratio: 3 / 2;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  object-fit: cover;
  object-position: center;
}

.jf-page .jf-combo__figure figcaption {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-depth__head,
.jf-page .jf-path__head,
.jf-page .jf-faq__head,
.jf-page .jf-next__head {
  max-width: 62ch;
  margin-bottom: var(--space-7);
}

.jf-page .jf-depth-grid,
.jf-page .jf-next-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.jf-page .jf-depth-grid > *,
.jf-page .jf-next-grid > * {
  min-width: 0;
}

.jf-page .jf-depth-panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.jf-page .jf-depth-panel > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-depth-panel ul {
  padding-left: 1.35em;
}

.jf-page .jf-path-list {
  display: grid;
  min-width: 0;
  border-top: 1px solid var(--color-border);
}

.jf-page .jf-path-row {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr) minmax(0, 4fr) minmax(0, 5fr) minmax(0, 2fr);
  gap: var(--space-4);
  align-items: start;
  padding: var(--space-4);
  border-bottom: 1px solid var(--color-border);
}

.jf-page .jf-path-row > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-path-row:hover {
  background: rgba(27, 64, 80, 0.52);
}

.jf-page .jf-path-row__links {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
}

.jf-page .jf-cta .container {
  display: flex;
  min-width: 0;
  justify-content: center;
}

.jf-page .jf-cta__panel {
  display: flex;
  width: min(100%, 50rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  border-color: var(--color-sand-500);
}

.jf-page .jf-cta__panel > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-cta__panel h2 {
  max-width: 25ch;
}

.jf-page .jf-cta__panel > p:not(.eyebrow):not(.jf-independence) {
  max-width: 52ch;
}

.jf-page .jf-cta__panel .rule {
  width: 100%;
}

.jf-page .jf-independence {
  max-width: 46ch;
  color: var(--color-sand-300);
  font-size: var(--text-sm);
}

.jf-page .jf-faq-list {
  display: grid;
  width: min(100%, 50rem);
  min-width: 0;
  border-top: 1px solid var(--color-border);
}

.jf-page .jf-faq-item {
  min-width: 0;
  border-bottom: 1px solid var(--color-border);
}

.jf-page .jf-faq-button {
  display: grid;
  width: 100%;
  min-width: 0;
  min-height: 3.5rem;
  grid-template-columns: minmax(0, 1fr) 2.75rem;
  gap: var(--space-3);
  align-items: center;
  padding: var(--space-3) 0;
  background: transparent;
  color: var(--color-sand-100);
  font-weight: 600;
  text-align: left;
}

.jf-page .jf-faq-button > * {
  min-width: 0;
}

.jf-page .jf-faq-icon {
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border-left: 1px solid var(--color-border);
  color: var(--color-sand-500);
  font-size: 1.5rem;
  line-height: 1;
}

.jf-page .jf-faq-button[aria-expanded="true"] .jf-faq-icon {
  color: var(--color-gold-300);
}

.jf-page .jf-faq-button[aria-expanded="true"] .jf-faq-icon::before {
  content: "−";
}

.jf-page .jf-faq-button[aria-expanded="true"] .jf-faq-icon {
  font-size: 0;
}

.jf-page .jf-faq-button[aria-expanded="true"] .jf-faq-icon::before {
  font-size: 1.5rem;
}

.jf-page .jf-faq-answer {
  display: grid;
  min-width: 0;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows var(--transition-fast), opacity var(--transition-fast);
}

.jf-page .jf-faq-answer > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  overflow: hidden;
}

.jf-page .jf-faq-answer p,
.jf-page .jf-faq-answer a {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-faq-answer p {
  max-width: 60ch;
}

.jf-page .jf-faq-answer.is-open {
  grid-template-rows: 1fr;
  opacity: 1;
}

.jf-page .jf-faq-answer.is-open > div {
  padding: 0 var(--space-5) var(--space-5) 0;
}

.jf-page .jf-next-grid {
  gap: var(--space-5);
}

.jf-page .jf-next-card {
  display: flex;
  min-width: 0;
  min-height: 10rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
  text-decoration: none;
  transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.jf-page .jf-next-card > * {
  min-width: 0;
  margin: 0;
}

.jf-page .jf-next-card p {
  flex: 1 1 auto;
}

.jf-page .jf-next-card:hover {
  border-color: var(--color-gold-300);
  box-shadow: var(--shadow-card-hover), inset 0 1px 0 rgba(242, 231, 207, 0.06);
  transform: translateY(-2px);
}

@media (max-width: 1100px) {
  .jf-page .jf-hero__grid {
    grid-template-columns: minmax(0, 3fr) minmax(0, 5fr);
    gap: var(--space-4);
  }

  .jf-page .jf-hero__figure img {
    height: clamp(25rem, 48vw, 30rem);
  }

  .jf-page .jf-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .jf-page .jf-deck-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .jf-page .jf-deck-grid > :nth-child(3) {
    grid-column: 1 / -1;
  }

  .jf-page .jf-path-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) minmax(0, 3fr) minmax(0, 2fr);
  }
}

@media (max-width: 980px) {
  .jf-page .jf-combo__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .jf-page .jf-combo__copy h2,
  .jf-page .jf-combo__copy > p:not(.eyebrow) {
    max-width: 50ch;
  }
}

@media (max-width: 860px) {
  .jf-page .jf-hero__grid,
  .jf-page .jf-feature-grid,
  .jf-page .jf-deck-grid,
  .jf-page .jf-depth-grid,
  .jf-page .jf-next-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .jf-page .jf-hero__copy .lead {
    max-width: 40rem;
  }

  .jf-page .jf-hero__figure {
    order: 2;
  }

  .jf-page .jf-hero__figure img {
    height: auto;
    aspect-ratio: 16 / 10;
  }

  .jf-page .jf-deck-grid > :nth-child(3) {
    grid-column: auto;
  }

  .jf-page .jf-battle .container {
    grid-template-columns: minmax(0, 1fr);
  }

  .jf-page .jf-battle__copy,
  .jf-page .jf-takeaway,
  .jf-page .jf-decision-table {
    grid-column: auto;
  }

  .jf-page .jf-battle__copy {
    max-width: 40rem;
  }

  .jf-page .jf-decision-table {
    gap: var(--space-3);
    border: 0;
    border-radius: 0;
  }

  .jf-page .jf-decision-table__head {
    display: none;
  }

  .jf-page .jf-decision-table__row {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
    padding: var(--space-4);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-navy-800);
  }

  .jf-page .jf-decision-table__row > * {
    padding: 0;
    border: 0;
  }

  .jf-page .jf-mobile-label {
    display: block;
    margin-bottom: var(--space-1);
    color: var(--color-sand-500);
    font-size: var(--text-xs);
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .jf-page .jf-path-row {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
  }

  .jf-page .jf-path-row__links {
    gap: var(--space-2);
  }

  .jf-page .jf-cta__panel {
    width: 100%;
  }

  .jf-page .jf-faq-list {
    width: 100%;
  }
}

@media (max-width: 600px) {
  .jf-page .jf-hero__copy h1 {
    font-size: 2.25rem;
    line-height: 1.11;
  }

  .jf-page .jf-hero__copy .lead {
    max-width: 32ch;
  }

  .jf-page .jf-hero__figure img {
    min-height: 16.25rem;
  }

  .jf-page .jf-feature-card,
  .jf-page .jf-deck-card {
    padding: var(--space-4);
  }

  .jf-page .jf-checklist > div {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-1);
  }

  .jf-page .jf-takeaway {
    padding-left: var(--space-4);
  }

  .jf-page .jf-cta__panel {
    padding: var(--space-5);
  }

  .jf-page .jf-cta__panel .jf-store-link {
    width: 100%;
  }

  .jf-page .jf-faq-button {
    min-height: 3.5rem;
  }

  .jf-page .jf-faq-answer.is-open > div {
    padding-right: var(--space-4);
    padding-bottom: var(--space-4);
  }

  .jf-page .jf-next-card {
    min-height: 7rem;
    padding: var(--space-4);
  }
}

@media (hover: none) {
  .jf-page .card:hover,
  .jf-page .jf-next-card:hover {
    box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .jf-page .jf-faq-answer,
  .jf-page .jf-next-card {
    transition: none;
  }

  .jf-page .jf-next-card:hover {
    transform: none;
  }
}


.mechanics-page {
  overflow: clip;
}

.mechanics-page .section {
  position: relative;
}

.mechanics-page__play-link span {
  font-size: 1.05em;
  line-height: 1;
}

.mechanics-hero {
  background: var(--color-navy-900);
  border-bottom: 1px solid var(--color-border);
}

.mechanics-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-5);
  align-items: center;
}

.mechanics-hero__copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.mechanics-hero__copy > * {
  min-width: 0;
  margin: 0;
}

.mechanics-hero__copy h1,
.mechanics-hero__copy .lead {
  max-width: 34ch;
}

.mechanics-hero__visual {
  min-width: 0;
  margin: 0;
  padding: var(--space-2);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  background: var(--color-navy-800);
  box-shadow: var(--shadow-raised);
}

.mechanics-hero__visual img {
  width: 100%;
  max-width: 100%;
  min-height: 30rem;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
  border-radius: var(--radius-md);
}

.mechanics-hero__visual figcaption {
  margin: var(--space-2) var(--space-2) 0;
}

.mechanics-section-head {
  min-width: 0;
}

.mechanics-section-head > :last-child {
  margin-bottom: 0;
}

.mechanics-reading__head {
  width: min(100%, 42ch);
  margin-bottom: var(--space-6);
}

.mechanics-reading__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
}

.mechanics-reading__grid > * {
  min-width: 0;
}

.mechanics-stage {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-3);
}

.mechanics-stage > * {
  min-width: 0;
  margin: 0;
}

.mechanics-stage__top {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
}

.mechanics-stage__top > * {
  min-width: 0;
  margin: 0;
}

.mechanics-stage__top .numeric {
  color: var(--color-sand-500);
  font-weight: 700;
}

.mechanics-stage__top h3 {
  font-size: 1.5rem;
}

.mechanics-balance {
  background: var(--color-navy-900);
  border-block: 1px solid var(--color-border);
}

.mechanics-balance__head {
  width: min(100%, 54ch);
  margin-bottom: var(--space-6);
}

.mechanics-balance__table {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-sm);
}

.mechanics-balance__table-head,
.mechanics-balance__row {
  display: grid;
  grid-template-columns: minmax(8rem, 1.1fr) minmax(0, 2fr) minmax(0, 1.55fr) minmax(0, 1.55fr);
  min-width: 0;
}

.mechanics-balance__table-head > *,
.mechanics-balance__row > * {
  min-width: 0;
  padding: var(--space-4);
  border-right: 1px solid var(--color-border);
}

.mechanics-balance__table-head > *:last-child,
.mechanics-balance__row > *:last-child {
  border-right: 0;
}

.mechanics-balance__table-head {
  background: var(--color-navy-700);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

.mechanics-balance__row {
  border-top: 1px solid var(--color-border);
  background: var(--color-navy-800);
}

.mechanics-balance__row h3,
.mechanics-balance__row p {
  margin: 0;
}

.mechanics-balance__row h3 {
  color: var(--color-sand-100);
  font-size: var(--text-xl);
}

.mechanics-balance__row p span {
  display: none;
}

.mechanics-decks__head {
  width: min(100%, 58ch);
  margin-bottom: var(--space-6);
}

.mechanics-decks__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}

.mechanics-decks__grid > * {
  min-width: 0;
}

.mechanics-deck-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

.mechanics-deck-card:nth-child(2) {
  background: var(--color-navy-700);
}

.mechanics-deck-card > * {
  min-width: 0;
  margin: 0;
}

.mechanics-check {
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
}

.mechanics-plan__heading {
  width: min(100%, 52ch);
  margin-bottom: var(--space-6);
}

.mechanics-plan__heading > :last-child {
  margin-bottom: 0;
}

.mechanics-plan__grid {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 1fr) minmax(0, 5fr);
  gap: var(--space-5);
  align-items: center;
}

.mechanics-plan__image {
  grid-column: 1;
  min-width: 0;
  margin: 0;
  padding: var(--space-2);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
}

.mechanics-plan__image img {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: center;
  border-radius: var(--radius-sm);
}

.mechanics-plan__image figcaption {
  margin: var(--space-2) var(--space-2) 0;
}

.mechanics-plan__copy {
  grid-column: 3;
  min-width: 0;
  width: min(100%, 52ch);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

.mechanics-plan__copy > * {
  min-width: 0;
  margin: 0;
}

.mechanics-plan__questions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  border-top: 1px solid var(--color-sand-500);
}

.mechanics-plan__questions > div {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  padding-block: var(--space-3);
  border-bottom: 1px solid var(--color-border);
}

.mechanics-plan__questions > div > * {
  min-width: 0;
  margin: 0;
}

.mechanics-plan__questions .numeric {
  color: var(--color-sand-500);
  font-weight: 700;
}

.mechanics-scenarios {
  background: var(--color-navy-900);
  border-block: 1px solid var(--color-border);
}

.mechanics-scenarios__head {
  width: min(100%, 56ch);
  margin-bottom: var(--space-6);
}

.mechanics-scenarios__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3fr) minmax(0, 4fr);
  gap: var(--space-4);
}

.mechanics-scenarios__grid > * {
  min-width: 0;
}

.mechanics-scenario {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
}

.mechanics-scenario > * {
  min-width: 0;
  margin: 0;
}

.mechanics-scenario--secure {
  border-color: var(--color-forest-500);
}

.mechanics-scenario dl {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin: 0;
  border-top: 1px solid var(--color-border);
}

.mechanics-scenario dl > div {
  min-width: 0;
  padding-block: var(--space-3);
  border-bottom: 1px solid var(--color-border);
}

.mechanics-scenario dt {
  margin-bottom: var(--space-1);
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mechanics-scenario dd {
  margin: 0;
}

.mechanics-growth__head {
  width: min(100%, 52ch);
  margin-bottom: var(--space-6);
}

.mechanics-growth__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 5fr);
  gap: var(--space-5);
  align-items: stretch;
}

.mechanics-growth__grid > * {
  min-width: 0;
}

.mechanics-growth__panel {
  width: min(100%, 52ch);
}

.mechanics-growth__panel > :last-child {
  margin-bottom: 0;
}

.mechanics-growth__link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
}

.mechanics-growth__divider {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  border-inline: 1px solid var(--color-sand-500);
}

.mechanics-growth__divider span {
  writing-mode: vertical-rl;
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.mechanics-growth__takeaway {
  width: min(100%, 68ch);
  margin: var(--space-6) 0 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-sand-500);
  color: var(--color-sand-100);
}

.mechanics-index {
  background: var(--color-navy-900);
  border-block: 1px solid var(--color-border);
}

.mechanics-index__head {
  width: min(100%, 56ch);
  margin-bottom: var(--space-6);
}

.mechanics-index__list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  border-top: 1px solid var(--color-sand-500);
}

.mechanics-index__row {
  display: grid;
  grid-template-columns: minmax(2.5rem, 1fr) minmax(0, 3fr) minmax(0, 6fr) minmax(2.5rem, 2fr);
  gap: var(--space-4);
  align-items: center;
  min-width: 0;
  min-height: 5rem;
  padding: var(--space-4);
  border-bottom: 1px solid var(--color-border);
  color: var(--color-sand-300);
  text-decoration: none;
  transition: background-color var(--transition-fast);
}

.mechanics-index__row > * {
  min-width: 0;
  margin: 0;
}

.mechanics-index__row:hover {
  background: var(--color-navy-700);
}

.mechanics-index__row h3 {
  color: var(--color-sand-100);
  font-size: var(--text-xl);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
  transition: text-decoration-color var(--transition-fast);
}

.mechanics-index__row:hover h3 {
  text-decoration-color: var(--color-gold-300);
}

.mechanics-index__row > span:first-child {
  color: var(--color-sand-500);
  font-weight: 700;
}

.mechanics-index__row > span:last-child {
  color: var(--color-sand-100);
  font-size: var(--text-xl);
  text-align: right;
}

.mechanics-faq__head {
  width: min(100%, 60ch);
  margin-bottom: var(--space-6);
}

.mechanics-faq__list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  border-top: 1px solid var(--color-sand-500);
}

.mechanics-faq__item {
  min-width: 0;
  border-bottom: 1px solid var(--color-border);
  background: var(--color-navy-800);
}

.mechanics-faq__button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2.75rem;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  min-height: 4rem;
  align-items: center;
  padding: var(--space-4);
  background: transparent;
  color: var(--color-sand-100);
  font-weight: 600;
  text-align: left;
}

.mechanics-faq__button > * {
  min-width: 0;
}

.mechanics-faq__icon {
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border-left: 1px solid var(--color-border);
  color: var(--color-sand-500);
  font-size: 1.5rem;
  line-height: 1;
}

.mechanics-faq__answer {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows 180ms ease, opacity 180ms ease;
}

.mechanics-faq__answer > div {
  min-width: 0;
  overflow: hidden;
}

.mechanics-faq__answer p {
  width: min(100%, 68ch);
  margin: 0;
  padding: 0 var(--space-4) var(--space-5);
}

.mechanics-faq__item.is-open .mechanics-faq__answer {
  grid-template-rows: 1fr;
  opacity: 1;
}

.mechanics-faq__item.is-open .mechanics-faq__icon {
  color: var(--color-gold-300);
}

.mechanics-faq__item.is-open .mechanics-faq__icon::before {
  content: "−";
}

.mechanics-faq__item.is-open .mechanics-faq__icon {
  font-size: 0;
}

.mechanics-faq__item.is-open .mechanics-faq__icon::before {
  font-size: 1.5rem;
}

.mechanics-review {
  padding-block: var(--space-7);
}

.mechanics-review__copy {
  width: min(100%, 62ch);
  padding-block: var(--space-5);
  border-block: 1px solid var(--color-sand-500);
}

.mechanics-review__copy > :last-child {
  margin-bottom: 0;
}

.mechanics-cta__panel {
  width: min(100%, 66.666%);
  margin-inline: auto;
  padding: var(--space-7);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  border-color: var(--color-sand-500);
  text-align: center;
}

.mechanics-cta__panel > * {
  min-width: 0;
  margin: 0;
}

.mechanics-cta__panel .lead {
  width: min(100%, 48ch);
  margin-inline: auto;
}

@media (max-width: 1100px) {
  .mechanics-hero__grid {
    grid-template-columns: minmax(20rem, 3fr) minmax(0, 5fr);
    gap: var(--space-4);
  }

  .mechanics-hero__visual img {
    min-height: 26.25rem;
  }

  .mechanics-reading__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mechanics-balance__table-head {
    display: none;
  }

  .mechanics-balance__row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    padding: var(--space-4);
    gap: var(--space-4);
  }

  .mechanics-balance__row > * {
    padding: 0;
    border-right: 0;
  }

  .mechanics-balance__row h3 {
    grid-column: 1 / -1;
  }

  .mechanics-balance__row p span {
    display: block;
    margin-bottom: var(--space-1);
    color: var(--color-sand-500);
    font-size: var(--text-xs);
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
  }

  .mechanics-decks__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mechanics-decks__grid > :nth-child(3) {
    grid-column: 1 / -1;
  }

  .mechanics-plan__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-5);
  }

  .mechanics-plan__image,
  .mechanics-plan__copy {
    grid-column: auto;
  }

  .mechanics-scenarios__grid {
    grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
  }

  .mechanics-scenarios__grid > :nth-child(3) {
    grid-column: 1 / -1;
  }

  .mechanics-growth__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mechanics-growth__divider {
    display: none;
  }

  .mechanics-growth__panel {
    width: 100%;
  }

  .mechanics-index__row {
    grid-template-columns: minmax(2.5rem, 1fr) minmax(0, 5fr) minmax(2.5rem, 1fr);
  }

  .mechanics-index__row p {
    grid-column: 2;
  }

  .mechanics-index__row > span:last-child {
    grid-column: 3;
    grid-row: 1 / span 2;
  }

  .mechanics-cta__panel {
    width: 100%;
  }
}

@media (max-width: 860px) {
  .mechanics-hero__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .mechanics-hero__copy h1,
  .mechanics-hero__copy .lead {
    max-width: 100%;
  }

  .mechanics-hero__visual img {
    min-height: 0;
  }

  .mechanics-plan__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mechanics-plan__heading {
    margin-bottom: var(--space-5);
  }

  .mechanics-plan__copy {
    width: 100%;
  }

  .mechanics-plan__image {
    order: 2;
  }

  .mechanics-plan__copy {
    order: 1;
  }

  .mechanics-growth__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .mechanics-growth__panel + .mechanics-growth__panel {
    padding-top: var(--space-5);
    border-top: 1px solid var(--color-sand-500);
  }
}

@media (max-width: 600px) {
  .mechanics-hero__copy {
    gap: var(--space-4);
  }

  .mechanics-hero__copy h1 {
    font-size: 2.25rem;
    line-height: 1.11;
  }

  .mechanics-hero__visual {
    padding: var(--space-1);
  }

  .mechanics-reading__head,
  .mechanics-balance__head,
  .mechanics-decks__head,
  .mechanics-plan__heading,
  .mechanics-scenarios__head,
  .mechanics-growth__head,
  .mechanics-index__head,
  .mechanics-faq__head {
    width: 100%;
    margin-bottom: var(--space-5);
  }

  .mechanics-reading__grid,
  .mechanics-decks__grid,
  .mechanics-scenarios__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mechanics-decks__grid > :nth-child(3),
  .mechanics-scenarios__grid > :nth-child(3) {
    grid-column: auto;
  }

  .mechanics-balance__row {
    grid-template-columns: minmax(0, 1fr);
  }

  .mechanics-balance__row h3 {
    grid-column: auto;
  }

  .mechanics-plan__image {
    order: 1;
  }

  .mechanics-plan__copy {
    order: 2;
  }

  .mechanics-index__row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-2) var(--space-4);
    min-height: 4.5rem;
    padding: var(--space-4);
  }

  .mechanics-index__row > span:first-child {
    grid-column: 1;
    grid-row: 1;
  }

  .mechanics-index__row h3 {
    grid-column: 1 / -1;
    grid-row: 2;
    font-size: 1.35rem;
  }

  .mechanics-index__row p {
    grid-column: 1 / -1;
    grid-row: 3;
  }

  .mechanics-index__row > span:last-child {
    grid-column: 2;
    grid-row: 1;
  }

  .mechanics-faq__button {
    min-height: 3.5rem;
    padding: var(--space-3) var(--space-4);
  }

  .mechanics-faq__answer p {
    padding: 0 var(--space-4) var(--space-4);
  }

  .mechanics-review {
    padding-block: var(--space-6);
  }

  .mechanics-review__copy {
    width: 100%;
  }

  .mechanics-cta__panel {
    padding: var(--space-5);
  }

  .mechanics-cta__panel h2 {
    font-size: 2rem;
  }

  .mechanics-cta__panel .lead {
    width: min(100%, 34ch);
  }

  .mechanics-cta__panel .button-primary {
    width: 100%;
    min-height: 3rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mechanics-faq__answer {
    transition: none;
  }
}


main[data-strategy-page] {
  background: var(--color-ink-950);
}

.strategy-page__hero {
  background: var(--color-navy-900);
}

.strategy-page__hero-grid,
.strategy-page__principles-grid,
.strategy-page__plan-grid,
.strategy-page__situations-head,
.strategy-page__situations-grid,
.strategy-page__advanced-top,
.strategy-page__advanced-panels,
.strategy-page__cta-grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.strategy-page__hero-copy {
  grid-column: 1 / span 5;
  min-width: 0;
  max-width: 48ch;
}

.strategy-page__hero-copy .lead {
  max-width: 46ch;
}

.strategy-page__hero-visual {
  grid-column: 6 / span 7;
  min-width: 0;
  width: 100%;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  background: var(--color-navy-800);
  box-shadow: var(--shadow-raised);
}

.strategy-page__hero-visual img {
  width: 100%;
  min-height: 360px;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: right center;
}

.strategy-page__hero-copy,
.strategy-page__hero-copy .cluster {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.strategy-page__hero-copy h1,
.strategy-page__hero-copy p,
.strategy-page__hero-copy .eyebrow,
.strategy-page__hero-copy .meta {
  margin: 0;
}

.strategy-page__hero-format {
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-sand-500);
}

.strategy-page__play-link svg {
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
}

.strategy-page__section-heading {
  min-width: 0;
}

.strategy-page__section-heading > :last-child {
  margin-bottom: 0;
}

.strategy-page__principles-heading {
  grid-column: 1 / span 5;
  max-width: 52ch;
}

.strategy-page__principles-grid {
  margin-top: var(--space-7);
}

.strategy-page__principle-card {
  grid-column: span 4;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.strategy-page__principle-card > * {
  margin: 0;
}

.strategy-page__card-number {
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: var(--text-2xl);
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.strategy-page__takeaway {
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

.strategy-page__plan-band,
.strategy-page__cta-band {
  background: var(--color-navy-900);
}

.strategy-page__plan-heading {
  grid-column: 1 / span 4;
  max-width: 42ch;
}

.strategy-page__plan-list {
  grid-column: 5 / span 8;
  display: grid;
  min-width: 0;
  grid-template-columns: 1fr;
  margin: 0;
  border-top: 1px solid var(--color-sand-500);
}

.strategy-page__plan-item {
  display: grid;
  min-width: 0;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: var(--space-4);
  padding: var(--space-5) 0;
  border-bottom: 1px solid var(--color-border);
}

.strategy-page__plan-number {
  min-width: 0;
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: var(--text-xl);
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.strategy-page__plan-copy {
  min-width: 0;
  max-width: 62ch;
}

.strategy-page__plan-copy h3,
.strategy-page__plan-copy p {
  margin-top: 0;
}

.strategy-page__plan-question {
  color: var(--color-sand-100);
}

.strategy-page__deck-intro {
  max-width: 58ch;
}

.strategy-page__deck-table {
  display: table;
  width: 100%;
  margin-top: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  overflow: hidden;
}

.strategy-page__deck-table th,
.strategy-page__deck-table td {
  vertical-align: top;
}

.strategy-page__deck-table th:nth-child(1) { width: 20%; }
.strategy-page__deck-table th:nth-child(2) { width: 29%; }
.strategy-page__deck-table th:nth-child(3) { width: 29%; }
.strategy-page__deck-table th:nth-child(4) { width: 22%; }

.strategy-page__deck-table td strong {
  display: block;
  margin-bottom: var(--space-2);
}

.strategy-page__situations-head {
  align-items: end;
}

.strategy-page__situations-heading {
  grid-column: 1 / span 5;
  max-width: 52ch;
}

.strategy-page__situation-image {
  grid-column: 10 / span 3;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
}

.strategy-page__situation-image img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.strategy-page__situations-grid {
  margin-top: var(--space-6);
}

.strategy-page__situation-card {
  grid-column: span 4;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.strategy-page__situation-card:nth-child(2) {
  transform: translateY(20px);
}

.strategy-page__situation-card > * {
  margin: 0;
}

.strategy-page__situation-part {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
}

.strategy-page__situation-part p,
.strategy-page__situation-part h4 {
  margin: 0;
}

.strategy-page__situation-label {
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.strategy-page__now-later {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}

.strategy-page__now-later > div {
  min-width: 0;
  padding: var(--space-3);
  border: 1px solid var(--color-border);
  background: var(--color-navy-900);
}

.strategy-page__now-later p {
  margin: 0;
}

.strategy-page__sequence {
  margin: 0;
  padding-left: 1.35em;
}

.strategy-page__advanced-top {
  align-items: center;
}

.strategy-page__advanced-heading {
  grid-column: 1 / span 5;
  max-width: 54ch;
}

.strategy-page__advanced-image {
  grid-column: 6 / span 7;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
}

.strategy-page__advanced-image img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.strategy-page__advanced-panels {
  margin-top: var(--space-6);
}

.strategy-page__advanced-panel {
  grid-column: span 6;
  min-width: 0;
}

.strategy-page__advanced-panel h3 {
  margin-top: 0;
}

.strategy-page__advanced-panel p:last-child {
  margin-bottom: 0;
}

.strategy-page__checklist-panel {
  width: min(100%, 800px);
  margin-inline: auto;
}

.strategy-page__checklist-heading {
  max-width: 54ch;
}

.strategy-page__checklist-heading > :last-child {
  margin-bottom: 0;
}

.strategy-page__checklist {
  display: grid;
  min-width: 0;
  grid-template-columns: 1fr;
  margin-top: var(--space-5);
  border-top: 1px solid var(--color-border);
}

.strategy-page__check-item {
  display: grid;
  min-width: 0;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
  min-height: 52px;
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--color-border);
  cursor: pointer;
}

.strategy-page__check-item input {
  width: 24px;
  height: 24px;
  min-height: 24px;
  margin: 0;
  accent-color: var(--color-forest-600);
}

.strategy-page__check-item span {
  min-width: 0;
}

.strategy-page__check-item strong,
.strategy-page__check-item small {
  display: block;
}

.strategy-page__check-item small {
  margin-top: var(--space-1);
  color: var(--color-sand-300);
  font-size: var(--text-sm);
}

.strategy-page__related-heading {
  max-width: 58ch;
}

.strategy-page__article-index {
  display: grid;
  min-width: 0;
  grid-template-columns: 1fr;
  margin-top: var(--space-6);
  border-top: 1px solid var(--color-sand-500);
}

.strategy-page__article-row {
  display: grid;
  min-width: 0;
  grid-template-columns: 48px minmax(0, 3fr) minmax(0, 6fr) 44px;
  gap: var(--space-4);
  align-items: center;
  padding: var(--space-5) 0;
  border-bottom: 1px solid var(--color-border);
  color: inherit;
  text-decoration: none;
}

.strategy-page__article-row:hover {
  background: rgba(27, 64, 80, 0.22);
}

.strategy-page__article-number,
.strategy-page__article-arrow {
  min-width: 0;
  color: var(--color-sand-500);
  font-family: var(--font-heading);
  font-size: var(--text-xl);
  font-weight: 700;
  text-align: center;
}

.strategy-page__article-title,
.strategy-page__article-excerpt {
  min-width: 0;
}

.strategy-page__article-title {
  color: var(--color-sand-100);
  font-family: var(--font-heading);
  font-size: var(--text-2xl);
  font-weight: 600;
  line-height: 1.1;
}

.strategy-page__article-excerpt {
  max-width: 52ch;
  color: var(--color-sand-300);
}

.strategy-page__cta-copy {
  grid-column: 1 / span 7;
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  max-width: 52ch;
}

.strategy-page__cta-copy > * {
  margin: 0;
}

.strategy-page__cycle-panel {
  grid-column: 9 / span 4;
  min-width: 0;
}

.strategy-page__cycle-list {
  display: grid;
  min-width: 0;
  grid-template-columns: 1fr;
  margin: 0;
  border-top: 1px solid var(--color-sand-500);
}

.strategy-page__cycle-list div {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-3);
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--color-border);
}

.strategy-page__cycle-list dt,
.strategy-page__cycle-list dd {
  min-width: 0;
  margin: 0;
}

.strategy-page__cycle-list dt {
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.strategy-page__cycle-list dd {
  color: var(--color-sand-100);
  text-align: right;
}

.strategy-page__faq-heading {
  max-width: 60ch;
}

.strategy-page__faq-list {
  display: grid;
  min-width: 0;
  grid-template-columns: 1fr;
  margin-top: var(--space-6);
  border-top: 1px solid var(--color-sand-500);
}

.strategy-page__faq-item {
  min-width: 0;
  border-bottom: 1px solid var(--color-border);
}

.strategy-page__faq-button {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr) 44px;
  gap: var(--space-4);
  align-items: center;
  padding: var(--space-4) 0;
  background: transparent;
  color: var(--color-sand-100);
  font-family: var(--font-heading);
  font-size: var(--text-xl);
  font-weight: 600;
  line-height: 1.2;
  text-align: left;
}

.strategy-page__faq-indicator {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  color: var(--color-sand-500);
  font-family: var(--font-body);
  font-size: 1.5rem;
  font-weight: 400;
}

.strategy-page__faq-button[aria-expanded="true"] .strategy-page__faq-indicator::before {
  content: "−";
}

.strategy-page__faq-button[aria-expanded="false"] .strategy-page__faq-indicator::before {
  content: "+";
}

.strategy-page__faq-answer {
  overflow: hidden;
  max-width: 68ch;
  padding-bottom: var(--space-5);
  opacity: 0;
  transition: opacity 180ms ease;
}

.strategy-page__faq-answer.is-open {
  opacity: 1;
}

.strategy-page__faq-answer p {
  margin: 0;
}

@media (max-width: 1100px) {
  .strategy-page__hero-grid,
  .strategy-page__principles-grid,
  .strategy-page__plan-grid,
  .strategy-page__situations-head,
  .strategy-page__situations-grid,
  .strategy-page__advanced-top,
  .strategy-page__advanced-panels,
  .strategy-page__cta-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: var(--space-4);
  }

  .strategy-page__hero-copy { grid-column: 1 / span 4; }
  .strategy-page__hero-visual { grid-column: 5 / span 4; }
  .strategy-page__principles-heading { grid-column: 1 / span 5; }
  .strategy-page__principle-card { grid-column: span 4; }
  .strategy-page__principle-card:nth-child(3) { grid-column: 1 / span 8; }
  .strategy-page__plan-heading { grid-column: 1 / span 8; }
  .strategy-page__plan-list { grid-column: 1 / span 8; }
  .strategy-page__situations-heading { grid-column: 1 / span 5; }
  .strategy-page__situation-image { grid-column: 6 / span 3; }
  .strategy-page__situation-card { grid-column: span 4; }
  .strategy-page__situation-card:nth-child(3) { grid-column: 1 / span 8; }
  .strategy-page__advanced-heading { grid-column: 1 / span 4; }
  .strategy-page__advanced-image { grid-column: 5 / span 4; }
  .strategy-page__advanced-panel { grid-column: span 4; }
  .strategy-page__cta-copy { grid-column: 1 / span 5; }
  .strategy-page__cycle-panel { grid-column: 6 / span 3; }
}

@media (max-width: 860px) {
  .strategy-page__hero-grid,
  .strategy-page__principles-grid,
  .strategy-page__plan-grid,
  .strategy-page__situations-head,
  .strategy-page__situations-grid,
  .strategy-page__advanced-top,
  .strategy-page__advanced-panels,
  .strategy-page__cta-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .strategy-page__hero-copy,
  .strategy-page__hero-visual,
  .strategy-page__principles-heading,
  .strategy-page__principle-card,
  .strategy-page__principle-card:nth-child(3),
  .strategy-page__plan-heading,
  .strategy-page__plan-list,
  .strategy-page__situations-heading,
  .strategy-page__situation-image,
  .strategy-page__situation-card,
  .strategy-page__situation-card:nth-child(3),
  .strategy-page__advanced-heading,
  .strategy-page__advanced-image,
  .strategy-page__advanced-panel,
  .strategy-page__cta-copy,
  .strategy-page__cycle-panel {
    grid-column: 1 / span 4;
  }

  .strategy-page__hero-copy { max-width: 36ch; }
  .strategy-page__hero-visual { order: 2; }
  .strategy-page__hero-format { order: 3; }
  .strategy-page__hero-visual img { min-height: 280px; }
  .strategy-page__principles-grid { margin-top: var(--space-6); }
  .strategy-page__plan-list { margin-top: var(--space-5); }
  .strategy-page__situations-head { align-items: stretch; }
  .strategy-page__situation-image { margin-top: var(--space-2); }
  .strategy-page__situation-card:nth-child(2) { transform: none; }
  .strategy-page__advanced-top { align-items: stretch; }
  .strategy-page__advanced-panels { margin-top: var(--space-5); }
  .strategy-page__checklist-panel { width: 100%; }
  .strategy-page__deck-table { display: none; }
  .strategy-page__deck-mobile { display: grid; }
  .strategy-page__article-row {
    grid-template-columns: 48px minmax(0, 1fr) 44px;
    gap: var(--space-3);
  }
  .strategy-page__article-excerpt {
    grid-column: 2 / span 2;
    max-width: 52ch;
  }
  .strategy-page__cta-copy { max-width: 52ch; }
}

@media (min-width: 861px) {
  .strategy-page__deck-mobile { display: none; }
}

.strategy-page__deck-mobile {
  gap: var(--space-4);
  margin-top: var(--space-6);
}

.strategy-page__deck-role {
  min-width: 0;
}

.strategy-page__deck-role h3 {
  margin-top: 0;
}

.strategy-page__deck-role dl {
  display: grid;
  min-width: 0;
  grid-template-columns: 1fr;
  gap: var(--space-3);
  margin: 0;
}

.strategy-page__deck-role dl div {
  min-width: 0;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
}

.strategy-page__deck-role dt,
.strategy-page__deck-role dd {
  margin: 0;
}

.strategy-page__deck-role dt {
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.strategy-page__deck-role dd {
  margin-top: var(--space-1);
}

@media (max-width: 600px) {
  .strategy-page__hero-copy h1 {
    font-size: 2.25rem;
    line-height: 1.1;
  }

  .strategy-page__play-link {
    width: 100%;
    min-height: 48px;
  }

  .strategy-page__principle-card,
  .strategy-page__situation-card {
    padding: var(--space-5);
  }

  .strategy-page__plan-item {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: var(--space-3);
    padding: var(--space-4) 0;
  }

  .strategy-page__now-later {
    grid-template-columns: 1fr;
  }

  .strategy-page__situations-grid {
    display: flex;
    width: calc(100% + var(--gutter));
    margin-right: calc(var(--gutter) * -1);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-right: var(--gutter);
    -webkit-overflow-scrolling: touch;
  }

  .strategy-page__situations-grid.has-overflow::after {
    flex: 0 0 1px;
    content: "";
  }

  .strategy-page__situation-card {
    width: 86vw;
    min-width: 86vw;
    scroll-snap-align: start;
  }

  .strategy-page__article-row {
    padding: var(--space-4) 0;
  }

  .strategy-page__article-title {
    font-size: 1.25rem;
  }

  .strategy-page__article-excerpt {
    font-size: var(--text-base);
  }

  .strategy-page__cta-copy .button-primary {
    width: 100%;
    min-height: 48px;
  }

  .strategy-page__faq-button {
    min-height: 56px;
    font-size: 1.25rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .strategy-page__situation-card:nth-child(2) {
    transform: none;
  }

  .strategy-page__faq-answer {
    transition: none;
  }
}


.beginner-guide {
  background: var(--color-ink-950);
}

.beginner-guide__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.beginner-guide__hero {
  background: var(--color-navy-900);
}

.beginner-guide__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-5);
  align-items: center;
}

.beginner-guide__hero-copy,
.beginner-guide__hero-media,
.beginner-guide__section-head,
.beginner-guide__anchor-card,
.beginner-guide__deck-card,
.beginner-guide__plan-copy,
.beginner-guide__plan-media,
.beginner-guide__connections-head,
.beginner-guide__connection-media,
.beginner-guide__closing-panel {
  min-width: 0;
}

.beginner-guide__hero-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.beginner-guide__hero-copy .eyebrow,
.beginner-guide__hero-copy h1,
.beginner-guide__hero-copy p,
.beginner-guide__hero-copy .lead {
  margin: 0;
}

.beginner-guide__hero-copy h1 {
  font-size: clamp(2.75rem, 5vw, 4rem);
}

.beginner-guide__hero-lead {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  max-width: 38rem;
}

.beginner-guide__hero-statements {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: var(--space-3);
}

.beginner-guide__hero-statements p {
  padding-left: var(--space-4);
  border-left: 1px solid var(--color-sand-500);
}

.beginner-guide__play-link {
  min-height: 2.75rem;
}

.beginner-guide__hero-media {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  box-shadow: inset 0 0 0 5px var(--color-navy-900), var(--shadow-raised);
}

.beginner-guide__hero-media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: 65% center;
}

.beginner-guide__section-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.beginner-guide__section-head .eyebrow,
.beginner-guide__section-head h2,
.beginner-guide__section-head p {
  margin: 0;
}

.beginner-guide__anchors {
  background: var(--color-navy-900);
}

.beginner-guide__anchors-head {
  width: min(100%, 35rem);
  margin-bottom: var(--space-6);
}

.beginner-guide__anchor-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

.beginner-guide__anchor-card {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
}

.beginner-guide__anchor-card h3,
.beginner-guide__anchor-card p {
  margin: 0;
}

.beginner-guide__anchor-card > div:last-child {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-3);
}

.beginner-guide__number {
  color: var(--color-sand-500);
  font-size: var(--text-xl);
  font-weight: 600;
  font-variant-numeric: tabular-nums lining-nums;
  line-height: 1.2;
}

.beginner-guide__watch {
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  line-height: 1.5;
}

.beginner-guide__map-head {
  width: min(100%, 40rem);
  margin-bottom: var(--space-6);
}

.beginner-guide__decision-table {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-navy-800);
}

.beginner-guide__decision-table table {
  width: 100%;
  table-layout: fixed;
}

.beginner-guide__decision-table th,
.beginner-guide__decision-table td {
  padding: var(--space-4);
}

.beginner-guide__decision-table thead th:nth-child(1) { width: 22%; }
.beginner-guide__decision-table thead th:nth-child(2) { width: 50%; }
.beginner-guide__decision-table thead th:nth-child(3) { width: 28%; }

.beginner-guide__decision-table tbody th {
  background: var(--color-navy-900);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
}

.beginner-guide__map-note {
  width: min(100%, 42rem);
  margin: var(--space-5) 0 0;
  color: var(--color-sand-100);
}

.beginner-guide__deck {
  background: var(--color-ink-950);
}

.beginner-guide__deck-top {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3fr) minmax(0, 4fr);
  gap: var(--space-5);
  align-items: start;
  margin-bottom: var(--space-6);
}

.beginner-guide__deck-head {
  grid-column: 1 / span 2;
  width: min(100%, 39rem);
}

.beginner-guide__principle {
  grid-column: 3;
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-3);
  margin: 0;
}

.beginner-guide__principle p,
.beginner-guide__principle .meta {
  margin: 0;
}

.beginner-guide__deck-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

.beginner-guide__deck-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  gap: var(--space-3);
}

.beginner-guide__deck-card .meta,
.beginner-guide__deck-card h3,
.beginner-guide__deck-card p,
.beginner-guide__deck-card dl {
  margin: 0;
}

.beginner-guide__deck-card dl {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: var(--space-3);
}

.beginner-guide__deck-card dl div {
  display: grid;
  grid-template-columns: 6.25rem minmax(0, 1fr);
  gap: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
}

.beginner-guide__deck-card dt {
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.beginner-guide__deck-card dd {
  margin: 0;
}

.beginner-guide__internal-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  margin-top: auto;
}

.beginner-guide__plan {
  background: var(--color-navy-900);
}

.beginner-guide__plan-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
  gap: var(--space-5);
  align-items: center;
}

.beginner-guide__plan-copy {
  grid-column: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.beginner-guide__step-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-top: 1px solid var(--color-border);
}

.beginner-guide__step {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-3);
  padding: var(--space-4) 0;
  border-bottom: 1px solid var(--color-border);
  background: transparent;
  color: var(--color-sand-300);
  text-align: left;
}

.beginner-guide__step > span:first-child {
  color: var(--color-sand-500);
  font-variant-numeric: tabular-nums lining-nums;
}

.beginner-guide__step > span:last-child {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-1);
}

.beginner-guide__step strong { color: var(--color-sand-100); }
.beginner-guide__step small { color: var(--color-sand-300); }

.beginner-guide__step.is-active {
  box-shadow: inset 2px 0 0 var(--color-forest-600);
  padding-left: var(--space-3);
}

.beginner-guide__step-detail {
  display: none;
  padding: var(--space-3) 0 var(--space-4) calc(2.25rem + var(--space-3));
  border-bottom: 1px solid var(--color-border);
  color: var(--color-sand-100);
}

.beginner-guide__step-detail.is-active { display: block; }

.beginner-guide__takeaway {
  margin: 0;
  padding-left: var(--space-4);
  border-left: 1px solid var(--color-sand-500);
  color: var(--color-sand-100);
}

.beginner-guide__plan-media {
  grid-column: 3;
  width: 100%;
  margin: 0;
}

.beginner-guide__plan-media img {
  width: 100%;
  aspect-ratio: 16 / 10;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  object-fit: cover;
}

.beginner-guide__connections-top {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 1fr) minmax(0, 5fr);
  gap: var(--space-5);
  align-items: center;
  margin-bottom: var(--space-6);
}

.beginner-guide__connections-head {
  grid-column: 1;
  width: min(100%, 42rem);
}

.beginner-guide__connection-mark {
  color: var(--color-sand-500);
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.beginner-guide__connection-media {
  grid-column: 3;
  width: 100%;
  margin: 0;
}

.beginner-guide__connection-media img {
  width: 100%;
  aspect-ratio: 3 / 2;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  object-fit: cover;
}

.beginner-guide__connection-rows {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-top: 1px solid var(--color-border);
}

.beginner-guide__connection-rows article {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(2rem, 1fr) minmax(0, 8fr);
  gap: var(--space-4);
  align-items: start;
  padding: var(--space-5) 0;
  border-bottom: 1px solid var(--color-border);
}

.beginner-guide__connection-label {
  color: var(--color-sand-500);
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.beginner-guide__connection-arrow {
  color: var(--color-sand-500);
  text-align: center;
}

.beginner-guide__connection-rows h3,
.beginner-guide__connection-rows p { margin: 0; }
.beginner-guide__connection-rows article > div:last-child { display: flex; flex-direction: column; min-width: 0; gap: var(--space-2); }

.beginner-guide__mistakes { background: var(--color-navy-900); }
.beginner-guide__mistakes-head { width: min(100%, 37rem); margin-bottom: var(--space-6); }

.beginner-guide__mistake-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-top: 1px solid var(--color-border);
}

.beginner-guide__mistake-list article {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-6);
  padding: var(--space-5) 0;
  border-bottom: 1px solid var(--color-border);
}

.beginner-guide__mistake-list article > div { min-width: 0; }
.beginner-guide__mistake-list h3,
.beginner-guide__mistake-list p,
.beginner-guide__mistake-list .meta { margin: 0; }
.beginner-guide__mistake-list article > div:first-child { display: flex; flex-direction: column; gap: var(--space-2); }
.beginner-guide__repair { display: flex; flex-direction: column; gap: var(--space-2); padding-left: var(--space-4); border-left: 2px solid var(--color-forest-500); }

.beginner-guide__next-head { width: min(100%, 40rem); margin-bottom: var(--space-6); }
.beginner-guide__next-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }

.beginner-guide__next-card {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  color: var(--color-sand-300);
  text-decoration: none;
}

.beginner-guide__next-card h3,
.beginner-guide__next-card p { margin: 0; }
.beginner-guide__next-card .link-rule { margin-top: auto; min-height: 2.75rem; display: inline-flex; align-items: center; }

.beginner-guide__faq { background: var(--color-ink-950); }
.beginner-guide__faq-head { width: min(100%, 39rem); margin-bottom: var(--space-6); }

.beginner-guide__faq-list {
  display: flex;
  flex-direction: column;
  width: min(100%, 56.25rem);
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
}

.beginner-guide__faq-list article { min-width: 0; border-bottom: 1px solid var(--color-border); }
.beginner-guide__faq-list article:last-child { border-bottom: 0; }

.beginner-guide__faq-list button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2rem;
  width: 100%;
  min-width: 0;
  min-height: 3.5rem;
  gap: var(--space-4);
  align-items: center;
  padding: var(--space-4);
  background: transparent;
  color: var(--color-sand-100);
  font-weight: 600;
  text-align: left;
}

.beginner-guide__faq-list button:hover { background: var(--color-navy-700); }
.beginner-guide__faq-symbol { color: var(--color-sand-500); font-size: 1.5rem; line-height: 1; text-align: center; }

.beginner-guide__faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows 180ms ease, opacity 180ms ease;
}

.beginner-guide__faq-answer:not([hidden]) { grid-template-rows: 1fr; opacity: 1; }
.beginner-guide__faq-answer > div { min-height: 0; overflow: hidden; padding: 0 var(--space-6) var(--space-5) var(--space-4); }
.beginner-guide__faq-answer p { width: min(100%, 62ch); margin: 0; }

.beginner-guide__closing { padding-top: 0; }
.beginner-guide__closing-panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  padding: 4.5rem var(--space-6);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  background: var(--color-navy-900);
  text-align: center;
}

.beginner-guide__closing-panel .eyebrow,
.beginner-guide__closing-panel h2,
.beginner-guide__closing-panel p { margin: 0; }
.beginner-guide__closing-panel p { width: min(100%, 35rem); }

@media (max-width: 1100px) {
  .beginner-guide__hero-grid { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: var(--space-4); }
  .beginner-guide__hero-copy { grid-column: 1 / span 4; }
  .beginner-guide__hero-media { grid-column: 5 / span 4; }
  .beginner-guide__anchor-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .beginner-guide__anchor-card:nth-child(3) { grid-column: 1 / span 2; }
  .beginner-guide__deck-top { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .beginner-guide__deck-head { grid-column: 1 / span 5; }
  .beginner-guide__principle { grid-column: 6 / span 3; }
  .beginner-guide__deck-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .beginner-guide__deck-card:nth-child(3) { grid-column: 1 / span 2; }
  .beginner-guide__plan-grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .beginner-guide__plan-copy { grid-column: 1 / span 4; }
  .beginner-guide__plan-media { grid-column: 5 / span 4; }
  .beginner-guide__connections-top { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .beginner-guide__connections-head { grid-column: 1 / span 5; }
  .beginner-guide__connection-media { grid-column: 6 / span 3; }
  .beginner-guide__mistake-list article { grid-template-columns: minmax(0, 3fr) minmax(0, 5fr); }
  .beginner-guide__next-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .beginner-guide__next-card:nth-child(3) { grid-column: 1 / span 2; }
}

@media (max-width: 860px) {
  .beginner-guide__hero-grid,
  .beginner-guide__plan-grid,
  .beginner-guide__connections-top { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .beginner-guide__hero-copy,
  .beginner-guide__hero-media,
  .beginner-guide__plan-copy,
  .beginner-guide__plan-media,
  .beginner-guide__connections-head,
  .beginner-guide__connection-media { grid-column: 1 / -1; }
  .beginner-guide__hero-copy { order: 1; }
  .beginner-guide__hero-media { order: 2; }
  .beginner-guide__plan-copy { order: 1; }
  .beginner-guide__plan-media { order: 2; }
  .beginner-guide__connections-head { order: 1; }
  .beginner-guide__connection-media { order: 2; width: min(100%, 38rem); }
  .beginner-guide__anchor-grid,
  .beginner-guide__deck-grid,
  .beginner-guide__next-grid { grid-template-columns: minmax(0, 1fr); }
  .beginner-guide__anchor-card:nth-child(3),
  .beginner-guide__deck-card:nth-child(3),
  .beginner-guide__next-card:nth-child(3) { grid-column: 1; }
  .beginner-guide__deck-top { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .beginner-guide__deck-head { grid-column: 1 / -1; }
  .beginner-guide__principle { grid-column: 1 / -1; width: min(100%, 38rem); }
  .beginner-guide__connection-rows article { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
  .beginner-guide__connection-arrow { text-align: left; transform: rotate(90deg); width: 1.5rem; }
  .beginner-guide__mistake-list article { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
  .beginner-guide__faq-list { width: 100%; }
}

@media (max-width: 600px) {
  .beginner-guide__hero-grid,
  .beginner-guide__deck-top,
  .beginner-guide__plan-grid,
  .beginner-guide__connections-top { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .beginner-guide__hero-copy,
  .beginner-guide__hero-media,
  .beginner-guide__deck-head,
  .beginner-guide__principle,
  .beginner-guide__plan-copy,
  .beginner-guide__plan-media,
  .beginner-guide__connections-head,
  .beginner-guide__connection-media { grid-column: 1 / -1; }
  .beginner-guide__hero-copy h1 { font-size: 2.25rem; line-height: 1.11; }
  .beginner-guide__hero-lead { max-width: none; }
  .beginner-guide__play-link { width: 100%; min-height: 3rem; }
  .beginner-guide__anchor-grid,
  .beginner-guide__deck-grid,
  .beginner-guide__next-grid { gap: var(--space-4); }
  .beginner-guide__anchor-card { grid-template-columns: 2rem minmax(0, 1fr); }
  .beginner-guide__decision-table { border: 0; border-radius: 0; background: transparent; }
  .beginner-guide__decision-table table,
  .beginner-guide__decision-table tbody,
  .beginner-guide__decision-table tr,
  .beginner-guide__decision-table th,
  .beginner-guide__decision-table td { display: block; width: 100%; }
  .beginner-guide__decision-table thead { display: none; }
  .beginner-guide__decision-table tr { margin-bottom: var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-sm); background: var(--color-navy-800); }
  .beginner-guide__decision-table tbody th { padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--color-border); }
  .beginner-guide__decision-table td { padding: var(--space-3) var(--space-4); border-bottom: 0; }
  .beginner-guide__decision-table td::before { display: block; margin-bottom: var(--space-1); color: var(--color-sand-500); content: attr(data-label); font-size: var(--text-xs); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
  .beginner-guide__deck-card dl div { grid-template-columns: 1fr; gap: var(--space-1); }
  .beginner-guide__step { min-height: 3.25rem; }
  .beginner-guide__step-detail { padding-left: 0; }
  .beginner-guide__connection-media { width: 100%; }
  .beginner-guide__mistake-list article { padding: var(--space-4) 0; }
  .beginner-guide__faq-list button { min-height: 3.25rem; padding: var(--space-3) var(--space-4); }
  .beginner-guide__faq-answer > div { padding: 0 var(--space-4) var(--space-4); }
  .beginner-guide__closing-panel { padding: var(--space-6) var(--space-4); }
  .beginner-guide__closing-panel .button-primary { width: 100%; min-height: 3rem; }
}

@media (prefers-reduced-motion: reduce) {
  .beginner-guide__faq-answer { transition: none; }
}


.pakliepites-page { background: var(--color-ink-950); }
.pakliepites-page .section { position: relative; }
.pakli-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.pakli-hero { background: var(--color-navy-900); }
.pakli-hero__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; align-items: center; }
.pakli-hero__copy { grid-column: 1 / span 5; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.pakli-hero__copy h1, .pakli-hero__copy p { margin: 0; }
.pakli-hero__copy h1 { max-width: 13ch; }
.pakli-hero__copy .lead { max-width: 48ch; }
.pakli-play-link { min-height: 48px; }
.pakli-hero__media { grid-column: 6 / span 7; min-width: 0; width: 100%; margin: 0; aspect-ratio: 4 / 3; overflow: hidden; border: 1px solid var(--color-sand-500); border-radius: var(--radius-lg); background: var(--color-navy-800); box-shadow: var(--shadow-raised), inset 0 1px 0 rgba(242,231,207,.06); }
.pakli-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pakli-hero__scope { grid-column: 1 / span 5; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-top: -8px; padding-top: 16px; border-top: 1px solid var(--color-border); }
.pakli-hero__scope p { max-width: 46ch; margin: 0; font-size: var(--text-sm); }
.pakli-hero__scope-list { display: flex; min-width: 0; flex-wrap: wrap; gap: 8px 16px; color: var(--color-sand-100); font-size: var(--text-xs); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.pakli-hero__scope-list span { min-width: 0; }
.pakli-decisions__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; align-items: start; }
.pakli-decisions__intro { grid-column: 1 / span 4; min-width: 0; }
.pakli-decisions__intro p { max-width: 40ch; }
.pakli-decisions__cards { grid-column: 5 / span 8; display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.pakli-decision-card { min-width: 0; min-height: 100%; padding: 24px; border: 1px solid var(--color-border); border-top-color: var(--color-sand-500); border-radius: var(--radius-md); background: var(--color-navy-800); transition: border-color var(--transition-fast), background-color var(--transition-fast); }
.pakli-decision-card:hover { border-color: var(--color-sand-500); background: var(--color-navy-700); }
.pakli-card-number { margin: 0 0 16px; color: var(--color-sand-500); font-size: var(--text-sm); font-variant-numeric: tabular-nums; font-weight: 600; }
.pakli-decision-card h3 { font-size: 1.7rem; }
.pakli-decision-card p { max-width: 32ch; }
.pakli-callout { margin-bottom: 0; padding-top: 12px; border-top: 1px solid var(--color-border); color: var(--color-sand-100); font-size: var(--text-sm); font-weight: 600; }
.pakli-roles { background: var(--color-navy-900); }
.pakli-roles__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px 24px; align-items: start; }
.pakli-roles__intro { grid-column: 1 / span 7; min-width: 0; }
.pakli-roles__intro p { max-width: 56ch; }
.pakli-role-table { grid-column: 1 / -1; min-width: 0; overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-sm); }
.pakli-role-table__head, .pakli-role-row { display: grid; min-width: 0; grid-template-columns: minmax(0, 22fr) minmax(0, 48fr) minmax(0, 30fr); }
.pakli-role-table__head > *, .pakli-role-row > * { min-width: 0; padding: 16px 20px; border-right: 1px solid var(--color-border); }
.pakli-role-table__head > *:last-child, .pakli-role-row > *:last-child { border-right: 0; }
.pakli-role-table__head { background: var(--color-navy-700); color: var(--color-sand-100); font-size: var(--text-sm); font-weight: 600; }
.pakli-role-row { border-top: 1px solid var(--color-border); transition: background-color var(--transition-fast); }
.pakli-role-row:hover { background: var(--color-navy-700); }
.pakli-role-row h3, .pakli-role-row p { margin: 0; }
.pakli-role-row h3 { font-size: 1.5rem; }
.pakli-role-row--featured h3 { border-left: 2px solid var(--color-sand-500); padding-left: 18px; }
.pakli-roles__note { grid-column: 1 / span 7; min-width: 0; display: flex; align-items: center; min-height: 100%; }
.pakli-roles__note p { max-width: 46ch; margin: 0; color: var(--color-sand-100); }
.pakli-roles__media { grid-column: 8 / span 5; min-width: 0; width: 100%; margin: 0; }
.pakli-roles__media img { width: 100%; aspect-ratio: 3 / 2; border: 1px solid var(--color-sand-500); border-radius: var(--radius-sm); object-fit: cover; }
.pakli-roles__media figcaption { max-width: 42ch; }
.pakli-flow__intro { max-width: 48ch; }
.pakli-flow__steps { display: grid; min-width: 0; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; margin-top: 32px; }
.pakli-flow-step { position: relative; min-width: 0; display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; padding: 20px 12px 20px 0; border-top: 1px solid var(--color-border); }
.pakli-flow-step > span { display: grid; width: 36px; height: 36px; align-items: center; justify-content: center; border: 1px solid var(--color-sand-500); color: var(--color-sand-100); font-size: var(--text-sm); font-weight: 600; font-variant-numeric: tabular-nums; }
.pakli-flow-step > div { min-width: 0; }
.pakli-flow-step h3 { font-size: 1.45rem; }
.pakli-flow-step p { margin-bottom: 0; font-size: var(--text-sm); }
.pakli-flow-step--last { border-top-color: var(--color-sand-500); }
.pakli-synergy__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px 24px; }
.pakli-synergy__intro { grid-column: 1 / span 6; min-width: 0; }
.pakli-synergy__intro p { max-width: 52ch; }
.pakli-synergy__cards { grid-column: 1 / -1; display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.pakli-synergy-card { min-width: 0; padding: 24px; border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-navy-800); transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast); }
.pakli-synergy-card:hover { border-color: var(--color-gold-300); box-shadow: var(--shadow-card-hover); transform: translateY(-2px); }
.pakli-synergy-card--featured { border-color: var(--color-sand-500); background: var(--color-navy-700); }
.pakli-synergy-card p { max-width: 35ch; }
.pakli-diagram { display: flex; min-width: 0; justify-content: space-between; gap: 8px; margin-bottom: 24px; padding-bottom: 12px; border-bottom: 1px solid var(--color-sand-500); color: var(--color-sand-100); font-size: var(--text-sm); font-weight: 600; letter-spacing: .08em; }
.pakli-diagram b { color: var(--color-forest-500); }
.pakli-matchplan { background: var(--color-navy-900); }
.pakli-matchplan__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px 24px; align-items: start; }
.pakli-matchplan__intro { grid-column: 1 / span 7; min-width: 0; }
.pakli-matchplan__intro p { max-width: 58ch; }
.pakli-matchplan__panels { grid-column: 1 / span 7; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.pakli-prose-panel { min-width: 0; padding: 24px; border: 1px solid var(--color-border); border-left-color: var(--color-sand-500); border-radius: var(--radius-md); background: var(--color-navy-800); }
.pakli-prose-panel h3 { margin-bottom: 12px; }
.pakli-prose-panel p { max-width: 50ch; }
.pakli-matchplan__media { grid-column: 8 / span 5; grid-row: 2 / span 1; min-width: 0; width: 100%; margin: 0; }
.pakli-matchplan__media img { width: 100%; aspect-ratio: 16 / 9; border: 1px solid var(--color-sand-500); border-radius: var(--radius-sm); object-fit: cover; }
.pakli-takeaway { grid-column: 1 / -1; min-width: 0; padding: 24px 0 0; border-top: 1px solid var(--color-gold-300); }
.pakli-takeaway h3, .pakli-takeaway p { max-width: 68ch; }
.pakli-paths__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; }
.pakli-paths__intro { grid-column: 1 / span 6; min-width: 0; }
.pakli-paths__intro p { max-width: 54ch; }
.pakli-path-panel { grid-column: span 6; min-width: 0; padding: 24px; border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-navy-800); }
.pakli-path-panel--advanced { background: var(--color-navy-700); }
.pakli-path-panel ol { display: flex; flex-direction: column; gap: 16px; margin-bottom: 0; padding-left: 1.5em; }
.pakli-path-panel li { min-width: 0; padding-bottom: 16px; border-bottom: 1px solid var(--color-border); }
.pakli-path-panel li:last-child { padding-bottom: 0; border-bottom: 0; }
.pakli-paths__closing { grid-column: 1 / -1; max-width: 68ch; margin: 0; padding: 16px 0 16px 24px; border-left: 2px solid var(--color-sand-500); color: var(--color-sand-100); }
.pakli-errors { background: var(--color-navy-900); }
.pakli-errors__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px 24px; }
.pakli-errors__intro { grid-column: 1 / span 6; min-width: 0; }
.pakli-errors__intro p { max-width: 54ch; }
.pakli-errors__cards { grid-column: 1 / -1; display: grid; min-width: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.pakli-error-card { min-width: 0; display: flex; flex-direction: column; justify-content: space-between; gap: 16px; padding: 24px; border: 1px solid var(--color-border); border-top-color: var(--color-sand-500); border-radius: var(--radius-md); background: var(--color-navy-800); transition: transform var(--transition-fast), border-color var(--transition-fast); }
.pakli-error-card:hover { border-color: var(--color-gold-300); transform: translateY(-2px); }
.pakli-error-card h3, .pakli-error-card p { margin: 0; }
.pakli-error-card p { max-width: 31ch; }
.pakli-error-card p:last-child { padding-top: 12px; border-top: 1px solid var(--color-border); color: var(--color-sand-100); font-size: var(--text-sm); }
.pakli-checklist__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px 24px; }
.pakli-checklist__intro { grid-column: 1 / span 6; min-width: 0; }
.pakli-checklist__intro p { max-width: 52ch; }
.pakli-checklist__list { grid-column: 1 / -1; min-width: 0; border-top: 1px solid var(--color-border); }
.pakli-check-row { display: grid; width: 100%; min-width: 0; grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 16px; align-items: start; padding: 16px 0; border-bottom: 1px solid var(--color-border); background: transparent; color: inherit; text-align: left; }
.pakli-check-box { display: grid; width: 44px; height: 44px; align-items: center; justify-content: center; border: 1px solid var(--color-sand-500); border-radius: var(--radius-sm); }
.pakli-check-box::after { color: var(--color-sand-100); content: ""; }
.pakli-check-row.is-checked .pakli-check-box { border-color: var(--color-gold-300); background: var(--color-forest-600); }
.pakli-check-row.is-checked .pakli-check-box::after { content: "✓"; }
.pakli-check-copy { min-width: 0; max-width: 68ch; display: flex; flex-direction: column; gap: 4px; }
.pakli-check-copy strong { min-width: 0; }
.pakli-check-index { min-width: 0; color: var(--color-sand-500); font-size: var(--text-sm); font-variant-numeric: tabular-nums; text-align: right; }
.pakli-faq { background: var(--color-navy-900); }
.pakli-faq__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px 24px; }
.pakli-faq__intro { grid-column: 1 / span 7; min-width: 0; }
.pakli-faq__intro p { max-width: 56ch; }
.pakli-faq__list { grid-column: 1 / -1; min-width: 0; border-top: 1px solid var(--color-border); }
.pakli-faq-item { min-width: 0; border-bottom: 1px solid var(--color-border); }
.pakli-faq-item summary { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) 44px; gap: 16px; align-items: center; min-height: 56px; padding: 16px 0; color: var(--color-sand-100); font-weight: 600; cursor: pointer; list-style: none; }
.pakli-faq-item summary::-webkit-details-marker { display: none; }
.pakli-faq-item summary span { position: relative; width: 44px; height: 44px; }
.pakli-faq-item summary span::before, .pakli-faq-item summary span::after { position: absolute; top: 50%; left: 50%; width: 14px; height: 1px; background: var(--color-sand-500); content: ""; transform: translate(-50%, -50%); }
.pakli-faq-item summary span::after { transition: transform 180ms ease; transform: translate(-50%, -50%) rotate(90deg); }
.pakli-faq-item[open] summary span::after { transform: translate(-50%, -50%) rotate(0deg); }
.pakli-faq-answer { display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows 180ms ease, opacity 180ms ease; }
.pakli-faq-item[open] .pakli-faq-answer { grid-template-rows: 1fr; opacity: 1; }
.pakli-faq-answer > p { min-width: 0; max-width: 64ch; margin: 0; overflow: hidden; padding-bottom: 20px; }
.pakli-final__panel { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; align-items: center; padding: 48px; border: 1px solid var(--color-sand-500); border-radius: var(--radius-lg); background: var(--color-navy-800); box-shadow: inset 0 1px 0 rgba(242,231,207,.06); }
.pakli-final__copy { grid-column: 1 / span 8; min-width: 0; }
.pakli-final__copy p { max-width: 60ch; margin-bottom: 0; }
.pakli-final__action { grid-column: 9 / span 4; min-width: 0; justify-self: end; }
@media (max-width: 1100px) { .pakli-hero__grid, .pakli-decisions__grid, .pakli-roles__grid, .pakli-synergy__grid, .pakli-matchplan__grid, .pakli-paths__grid, .pakli-errors__grid, .pakli-checklist__grid, .pakli-faq__grid, .pakli-final__panel { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 20px 16px; } .pakli-hero__copy { grid-column: 1 / span 3; } .pakli-hero__media { grid-column: 4 / span 5; } .pakli-hero__scope { grid-column: 1 / span 3; } .pakli-decisions__intro { grid-column: 1 / span 8; } .pakli-decisions__cards { grid-column: 1 / span 8; grid-template-columns: repeat(2, minmax(0, 1fr)); } .pakli-decisions__cards > :last-child { grid-column: 1 / span 2; } .pakli-roles__intro, .pakli-matchplan__intro, .pakli-faq__intro { grid-column: 1 / span 6; } .pakli-roles__note { grid-column: 1 / span 4; } .pakli-roles__media { grid-column: 5 / span 4; } .pakli-flow__steps { grid-template-columns: repeat(3, minmax(0, 1fr)); } .pakli-synergy__intro, .pakli-paths__intro, .pakli-errors__intro, .pakli-checklist__intro { grid-column: 1 / span 5; } .pakli-matchplan__panels { grid-column: 1 / span 5; } .pakli-matchplan__media { grid-column: 6 / span 3; } .pakli-path-panel { grid-column: span 4; } .pakli-errors__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pakli-final__copy { grid-column: 1 / span 5; } .pakli-final__action { grid-column: 6 / span 3; } }
@media (max-width: 860px) { .pakli-hero__grid, .pakli-decisions__grid, .pakli-roles__grid, .pakli-synergy__grid, .pakli-matchplan__grid, .pakli-paths__grid, .pakli-errors__grid, .pakli-checklist__grid, .pakli-faq__grid, .pakli-final__panel { grid-template-columns: repeat(4, minmax(0, 1fr)); } .pakli-hero__copy, .pakli-hero__media, .pakli-hero__scope, .pakli-decisions__intro, .pakli-decisions__cards, .pakli-roles__intro, .pakli-roles__note, .pakli-roles__media, .pakli-synergy__intro, .pakli-synergy__cards, .pakli-matchplan__intro, .pakli-matchplan__panels, .pakli-matchplan__media, .pakli-takeaway, .pakli-paths__intro, .pakli-path-panel, .pakli-paths__closing, .pakli-errors__intro, .pakli-errors__cards, .pakli-checklist__intro, .pakli-checklist__list, .pakli-faq__intro, .pakli-faq__list, .pakli-final__copy, .pakli-final__action { grid-column: 1 / -1; } .pakli-hero__grid { gap: 24px; } .pakli-hero__copy { order: 1; } .pakli-hero__media { order: 2; } .pakli-hero__scope { order: 3; margin-top: 0; } .pakli-hero__copy .lead { max-width: 38ch; } .pakli-hero__media { max-width: none; } .pakli-play-link { width: 100%; } .pakli-decisions__cards { grid-template-columns: 1fr; } .pakli-decisions__cards > :last-child { grid-column: 1; } .pakli-role-table { border: 0; overflow: visible; } .pakli-role-table__head { display: none; } .pakli-role-row { display: grid; grid-template-columns: 1fr; gap: 0; margin-bottom: 16px; border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-navy-800); } .pakli-role-row > * { padding: 14px 20px; border-right: 0; border-bottom: 1px solid var(--color-border); } .pakli-role-row > *:last-child { border-bottom: 0; } .pakli-role-row h3 { border-left: 0; } .pakli-role-row h3::after { display: block; margin-top: 4px; color: var(--color-sand-500); font-family: var(--font-body); font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; content: "Szerepkör"; } .pakli-role-row p:nth-of-type(1)::before, .pakli-role-row p:nth-of-type(2)::before { display: block; margin-bottom: 4px; color: var(--color-sand-500); font-size: var(--text-xs); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; } .pakli-role-row p:nth-of-type(1)::before { content: "Mikor jó?"; } .pakli-role-row p:nth-of-type(2)::before { content: "Figyelj rá"; } .pakli-roles__note { order: 3; } .pakli-roles__media { order: 4; } .pakli-flow__steps { grid-template-columns: 1fr; gap: 0; border-left: 1px solid var(--color-border); } .pakli-flow-step { grid-template-columns: 36px minmax(0, 1fr); padding: 20px 0 20px 16px; border-top: 0; } .pakli-flow-step--last { border-top: 0; } .pakli-synergy__cards, .pakli-errors__cards { grid-template-columns: 1fr; } .pakli-matchplan__media { order: 3; } .pakli-takeaway { order: 4; } .pakli-path-panel { min-height: 0; } .pakli-final__panel { padding: 32px; } .pakli-final__action { justify-self: stretch; } }
@media (max-width: 600px) { .pakli-hero__copy h1 { font-size: 2.25rem; line-height: 1.1; } .pakli-hero__copy .lead { font-size: 1.125rem; line-height: 1.56; } .pakli-decision-card, .pakli-synergy-card, .pakli-prose-panel, .pakli-path-panel, .pakli-error-card { padding: 20px; } .pakli-flow-step { padding-left: 12px; } .pakli-check-row { grid-template-columns: 44px minmax(0, 1fr); gap: 12px; min-height: 64px; } .pakli-check-index { grid-column: 2; grid-row: 1; align-self: start; text-align: left; } .pakli-check-copy { grid-column: 2; grid-row: 1 / span 2; padding-right: 0; } .pakli-faq-item summary { grid-template-columns: minmax(0, 1fr) 44px; font-size: 1rem; line-height: 1.5; } .pakli-faq-answer > p { max-width: 40ch; } .pakli-final__panel { padding: 20px; } }
@media (prefers-reduced-motion: reduce) { .pakli-synergy-card:hover, .pakli-error-card:hover { transform: none; } .pakli-faq-answer, .pakli-faq-item summary span::after { transition: none; } }


[data-tactics-page] {
  --tactics-rule: var(--color-sand-500);
  --tactics-gap: var(--space-5);
}

[data-tactics-page] .tactics-section--band {
  background: var(--color-navy-900);
  border-block: 1px solid var(--color-border);
}

[data-tactics-page] .tactics-section__head {
  min-width: 0;
}

[data-tactics-page] .tactics-section__head > :last-child,
[data-tactics-page] .tactics-copy > :last-child,
[data-tactics-page] .tactics-hero__copy > :last-child {
  margin-bottom: 0;
}

[data-tactics-page] .tactics-section__intro {
  max-width: 58ch;
}

[data-tactics-page] .tactics-hero {
  padding-top: 7.5rem;
}

[data-tactics-page] .tactics-hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: center;
}

[data-tactics-page] .tactics-hero__copy {
  grid-column: 1 / span 5;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

[data-tactics-page] .tactics-hero__copy .eyebrow,
[data-tactics-page] .tactics-hero__copy h1,
[data-tactics-page] .tactics-hero__copy p {
  margin: 0;
}

[data-tactics-page] .tactics-hero__lead {
  max-width: 42ch;
}

[data-tactics-page] .tactics-hero__note {
  max-width: 38ch;
  color: var(--color-sand-300);
  font-size: var(--text-sm);
  line-height: 1.5;
}

[data-tactics-page] .tactics-cta-row {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

[data-tactics-page] .tactics-cta-row > * {
  min-width: 0;
}

[data-tactics-page] .tactics-cta-row small {
  max-width: 26ch;
  color: var(--color-sand-300);
}

[data-tactics-page] .tactics-external-icon {
  width: 0.9em;
  height: 0.9em;
  flex: 0 0 auto;
}

[data-tactics-page] .tactics-hero__media {
  grid-column: 6 / -1;
  min-width: 0;
  width: 100%;
  margin: 0;
}

[data-tactics-page] .tactics-media-frame {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  background: var(--color-navy-900);
  box-shadow: inset 0 0 0 4px rgba(8, 19, 27, 0.56), var(--shadow-raised);
}

[data-tactics-page] .tactics-hero__media .tactics-media-frame {
  aspect-ratio: 16 / 10;
}

[data-tactics-page] .tactics-media-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

[data-tactics-page] .tactics-hero__media figcaption {
  margin: var(--space-2) 0 0;
}

[data-tactics-page] .tactics-principles__head {
  width: min(100%, 34rem);
  margin-bottom: var(--space-6);
}

[data-tactics-page] .tactics-principles__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

[data-tactics-page] .tactics-principle {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

[data-tactics-page] .tactics-principle > * {
  min-width: 0;
  margin: 0;
}

[data-tactics-page] .tactics-principle__number {
  color: var(--color-sand-500);
  font-size: var(--text-sm);
  font-weight: 600;
  font-variant-numeric: tabular-nums lining-nums;
  letter-spacing: 0.08em;
}

[data-tactics-page] .tactics-principle h3 {
  font-size: 1.75rem;
}

[data-tactics-page] .tactics-question-line {
  margin-top: auto !important;
  padding-top: var(--space-3);
  border-top: 1px solid var(--tactics-rule);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
}

[data-tactics-page] .tactics-combo__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

[data-tactics-page] .tactics-combo__copy {
  grid-column: 1 / span 4;
  min-width: 0;
}

[data-tactics-page] .tactics-combo__copy .tactics-copy {
  max-width: 56ch;
}

[data-tactics-page] .tactics-combo__statement {
  margin: var(--space-5) 0 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--tactics-rule);
  color: var(--color-sand-100);
}

[data-tactics-page] .tactics-combo__work {
  grid-column: 5 / -1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

[data-tactics-page] .tactics-combo__media .tactics-media-frame {
  aspect-ratio: 3 / 2;
}

[data-tactics-page] .tactics-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: tactical-steps;
}

[data-tactics-page] .tactics-steps > li {
  min-width: 0;
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-3);
  padding: var(--space-4);
  border-top: 1px solid var(--color-border);
  background: var(--color-navy-900);
  counter-increment: tactical-steps;
}

[data-tactics-page] .tactics-steps > li::before {
  color: var(--color-sand-500);
  content: counter(tactical-steps, decimal-leading-zero);
  font-size: var(--text-sm);
  font-weight: 700;
  font-variant-numeric: tabular-nums lining-nums;
}

[data-tactics-page] .tactics-steps > li:last-child {
  background: var(--color-navy-700);
}

[data-tactics-page] .tactics-step__body {
  min-width: 0;
}

[data-tactics-page] .tactics-step__body h3,
[data-tactics-page] .tactics-step__body p {
  margin: 0;
}

[data-tactics-page] .tactics-step__body h3 {
  margin-bottom: var(--space-2);
  font-size: 1.5rem;
}

[data-tactics-page] .tactics-step__why {
  display: block;
  margin-top: var(--space-2);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
}

[data-tactics-page] .tactics-situation {
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

[data-tactics-page] .tactics-situation__head {
  width: min(100%, 38rem);
  margin-bottom: var(--space-5);
}

[data-tactics-page] .tactics-situation__controls {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
  margin-bottom: var(--space-5);
}

[data-tactics-page] .tactics-situation__button {
  min-width: 0;
  min-height: 2.75rem;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-navy-900);
  color: var(--color-sand-100);
  font-weight: 600;
  text-align: left;
  transition: background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);
}

[data-tactics-page] .tactics-situation__button:hover,
[data-tactics-page] .tactics-situation__button--active {
  border-color: var(--color-gold-300);
  background: var(--color-forest-600);
}

[data-tactics-page] .tactics-situation__panel {
  min-width: 0;
  animation: tactics-panel-in 180ms ease both;
}

[data-tactics-page] .tactics-situation__panel[hidden] {
  display: none;
}

[data-tactics-page] .tactics-situation__panel-inner {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-5);
  min-width: 0;
  padding-top: var(--space-5);
  border-top: 1px solid var(--tactics-rule);
}

[data-tactics-page] .tactics-situation__reading,
[data-tactics-page] .tactics-situation__watch {
  min-width: 0;
}

[data-tactics-page] .tactics-situation__reading {
  max-width: 60ch;
}

[data-tactics-page] .tactics-situation__reading h3,
[data-tactics-page] .tactics-situation__reading p,
[data-tactics-page] .tactics-situation__watch h4,
[data-tactics-page] .tactics-situation__watch ul {
  margin: 0;
}

[data-tactics-page] .tactics-situation__reading h3 {
  margin-bottom: var(--space-3);
}

[data-tactics-page] .tactics-situation__watch {
  padding: var(--space-4);
  background: var(--color-navy-700);
}

[data-tactics-page] .tactics-situation__watch h4 {
  margin-bottom: var(--space-3);
}

[data-tactics-page] .tactics-situation__watch ul {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding-left: 1.2em;
}

[data-tactics-page] .tactics-plan__head {
  width: min(100%, 34rem);
  margin-bottom: var(--space-6);
}

[data-tactics-page] .tactics-plan-table {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr) minmax(0, 4fr) minmax(0, 3fr);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  overflow: hidden;
}

[data-tactics-page] .tactics-plan-table > * {
  min-width: 0;
}

[data-tactics-page] .tactics-plan-table__cell {
  padding: var(--space-4);
  border-right: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}

[data-tactics-page] .tactics-plan-table__cell:nth-child(4n) {
  border-right: 0;
}

[data-tactics-page] .tactics-plan-table__head {
  background: var(--color-navy-700);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
  font-weight: 600;
}

[data-tactics-page] .tactics-plan-table__phase {
  color: var(--color-sand-100);
  font-weight: 600;
}

[data-tactics-page] .tactics-plan-table__cell:nth-last-child(-n + 4) {
  border-bottom: 0;
}

[data-tactics-page] .tactics-plan-table__alternate {
  background: rgba(27, 64, 80, 0.52);
}

[data-tactics-page] .tactics-plan__reminder {
  margin: var(--space-4) 0 0;
  color: var(--color-sand-100);
  font-size: var(--text-sm);
}

[data-tactics-page] .tactics-practice__head {
  width: min(100%, 34rem);
  margin-bottom: var(--space-6);
}

[data-tactics-page] .tactics-practice__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}

[data-tactics-page] .tactics-practice-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

[data-tactics-page] .tactics-practice-card > * {
  min-width: 0;
  margin: 0;
}

[data-tactics-page] .tactics-practice-card h3 {
  font-size: 1.75rem;
}

[data-tactics-page] .tactics-practice-card__result {
  margin-top: auto !important;
  padding-top: var(--space-3);
  border-top: 1px solid var(--tactics-rule);
  color: var(--color-sand-100);
  font-size: var(--text-sm);
}

[data-tactics-page] .tactics-deck__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: center;
}

[data-tactics-page] .tactics-deck__media {
  grid-column: 1 / span 5;
  min-width: 0;
}

[data-tactics-page] .tactics-deck__media .tactics-media-frame {
  aspect-ratio: 4 / 3;
}

[data-tactics-page] .tactics-deck__content {
  grid-column: 6 / -1;
  min-width: 0;
  padding: var(--space-6);
}

[data-tactics-page] .tactics-deck__copy {
  max-width: 56ch;
}

[data-tactics-page] .tactics-roles {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin-top: var(--space-5);
}

[data-tactics-page] .tactics-role {
  min-width: 0;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}

[data-tactics-page] .tactics-role h3,
[data-tactics-page] .tactics-role p {
  margin: 0;
}

[data-tactics-page] .tactics-role h3 {
  margin-bottom: var(--space-2);
  font-size: 1.5rem;
}

[data-tactics-page] .tactics-role__label {
  display: block;
  margin-bottom: var(--space-1);
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

[data-tactics-page] .tactics-cases__head {
  width: min(100%, 38rem);
  margin-bottom: var(--space-6);
}

[data-tactics-page] .tactics-cases__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

[data-tactics-page] .tactics-case {
  min-width: 0;
  padding: var(--space-5);
}

[data-tactics-page] .tactics-case h3 {
  margin-bottom: var(--space-4);
}

[data-tactics-page] .tactics-case__rows {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

[data-tactics-page] .tactics-case__row {
  display: grid;
  grid-template-columns: 5.75rem minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
}

[data-tactics-page] .tactics-case__row dt,
[data-tactics-page] .tactics-case__row dd {
  min-width: 0;
  margin: 0;
}

[data-tactics-page] .tactics-case__row dt {
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

[data-tactics-page] .tactics-case__row--risk {
  padding: var(--space-3);
  border-top: 0;
  background: var(--color-navy-700);
}

[data-tactics-page] .tactics-cases__summary {
  margin: var(--space-5) 0 0;
  color: var(--color-sand-100);
}

[data-tactics-page] .tactics-related__head {
  width: min(100%, 34rem);
  margin-bottom: var(--space-5);
}

[data-tactics-page] .tactics-related__list {
  border-top: 1px solid var(--color-border);
}

[data-tactics-page] .tactics-related__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(0, 5fr) minmax(0, 4fr);
  gap: var(--space-4);
  align-items: center;
  min-width: 0;
  padding: var(--space-5) 0;
  border-bottom: 1px solid var(--color-border);
}

[data-tactics-page] .tactics-related__item > * {
  min-width: 0;
}

[data-tactics-page] .tactics-related__number {
  color: var(--color-sand-500);
  font-size: var(--text-sm);
  font-weight: 700;
  font-variant-numeric: tabular-nums lining-nums;
}

[data-tactics-page] .tactics-related__category {
  color: var(--color-sand-500);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

[data-tactics-page] .tactics-related__body h3,
[data-tactics-page] .tactics-related__body p {
  margin: 0;
}

[data-tactics-page] .tactics-related__body h3 {
  margin-bottom: var(--space-2);
  font-size: 1.5rem;
}

[data-tactics-page] .tactics-related__link {
  justify-self: start;
}

[data-tactics-page] .tactics-faq__layout {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

[data-tactics-page] .tactics-faq__head {
  grid-column: 1 / span 5;
  min-width: 0;
}

[data-tactics-page] .tactics-faq__list {
  grid-column: 2 / span 8;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

[data-tactics-page] .tactics-faq__item {
  min-width: 0;
  border: 1px solid var(--color-border);
  background: var(--color-navy-800);
}

[data-tactics-page] .tactics-faq__item summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2.75rem;
  gap: var(--space-3);
  align-items: center;
  min-height: 2.75rem;
  padding: var(--space-4);
  color: var(--color-sand-100);
  cursor: pointer;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.15;
  list-style: none;
}

[data-tactics-page] .tactics-faq__item summary::-webkit-details-marker {
  display: none;
}

[data-tactics-page] .tactics-faq__item summary::after {
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border-left: 1px solid var(--color-border);
  color: var(--color-sand-500);
  content: "+";
  font-family: var(--font-body);
  font-size: 1.5rem;
  font-weight: 400;
}

[data-tactics-page] .tactics-faq__item[open] summary::after {
  content: "−";
}

[data-tactics-page] .tactics-faq__answer {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 180ms ease, opacity 180ms ease, padding 180ms ease;
}

[data-tactics-page] .tactics-faq__item[open] .tactics-faq__answer {
  max-height: 40rem;
  padding: 0 var(--space-5) var(--space-5);
  opacity: 1;
}

[data-tactics-page] .tactics-faq__answer-inner {
  max-width: 62ch;
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}

[data-tactics-page] .tactics-faq__answer-inner > :last-child {
  margin-bottom: 0;
}

[data-tactics-page] .tactics-closing {
  padding-top: var(--section-space);
}

[data-tactics-page] .tactics-closing__panel {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  min-width: 0;
  padding: var(--space-7);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-lg);
  background: var(--color-navy-800);
  box-shadow: inset 0 1px 0 rgba(242, 231, 207, 0.06);
}

[data-tactics-page] .tactics-closing__copy {
  grid-column: 1 / span 7;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

[data-tactics-page] .tactics-closing__copy > * {
  margin: 0;
}

[data-tactics-page] .tactics-closing__copy p {
  max-width: 54ch;
}

[data-tactics-page] .tactics-closing__note {
  color: var(--color-sand-300);
  font-size: var(--text-sm);
}

[data-tactics-page] .tactics-closing__mark {
  grid-column: 8 / -1;
  min-width: 0;
  position: relative;
  align-self: stretch;
  border-left: 1px solid var(--tactics-rule);
}

[data-tactics-page] .tactics-closing__mark::before,
[data-tactics-page] .tactics-closing__mark::after {
  position: absolute;
  content: "";
}

[data-tactics-page] .tactics-closing__mark::before {
  top: 50%;
  left: 50%;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid var(--color-sand-500);
  transform: translate(-50%, -50%) rotate(45deg);
}

[data-tactics-page] .tactics-closing__mark::after {
  top: calc(50% - 0.4rem);
  left: calc(50% - 0.4rem);
  width: 0.8rem;
  height: 0.8rem;
  background: var(--color-forest-600);
  transform: rotate(45deg);
}

@keyframes tactics-panel-in {
  from { opacity: 0; transform: translateY(2px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1100px) {
  [data-tactics-page] .tactics-hero__grid,
  [data-tactics-page] .tactics-combo__grid,
  [data-tactics-page] .tactics-deck__grid,
  [data-tactics-page] .tactics-faq__layout,
  [data-tactics-page] .tactics-closing__panel {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  [data-tactics-page] .tactics-hero__copy { grid-column: 1 / span 3; }
  [data-tactics-page] .tactics-hero__media { grid-column: 4 / -1; }
  [data-tactics-page] .tactics-principles__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-tactics-page] .tactics-principles__grid > :last-child { grid-column: 1 / span 2; }
  [data-tactics-page] .tactics-combo__copy { grid-column: 1 / span 8; }
  [data-tactics-page] .tactics-combo__work { grid-column: 1 / span 8; }
  [data-tactics-page] .tactics-situation__panel-inner { grid-template-columns: minmax(0, 1fr); }
  [data-tactics-page] .tactics-plan-table { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-tactics-page] .tactics-plan-table__cell { border-right: 1px solid var(--color-border); }
  [data-tactics-page] .tactics-plan-table__cell:nth-child(4n) { border-right: 1px solid var(--color-border); }
  [data-tactics-page] .tactics-plan-table__cell:nth-child(2n) { border-right: 0; }
  [data-tactics-page] .tactics-plan-table__cell:nth-last-child(-n + 4) { border-bottom: 1px solid var(--color-border); }
  [data-tactics-page] .tactics-plan-table__cell:nth-last-child(-n + 2) { border-bottom: 0; }
  [data-tactics-page] .tactics-plan-table__head { display: none; }
  [data-tactics-page] .tactics-plan-table__cell::before { display: block; margin-bottom: var(--space-2); color: var(--color-sand-500); content: attr(data-label); font-size: var(--text-xs); font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
  [data-tactics-page] .tactics-practice__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-tactics-page] .tactics-practice__grid > :last-child { grid-column: 1 / span 1; }
  [data-tactics-page] .tactics-deck__media { grid-column: 1 / span 4; }
  [data-tactics-page] .tactics-deck__content { grid-column: 5 / -1; }
  [data-tactics-page] .tactics-related__item { grid-template-columns: minmax(3rem, 1fr) minmax(0, 2fr) minmax(0, 5fr); }
  [data-tactics-page] .tactics-related__link { grid-column: 3; }
  [data-tactics-page] .tactics-faq__head { grid-column: 1 / span 5; }
  [data-tactics-page] .tactics-faq__list { grid-column: 1 / span 8; }
  [data-tactics-page] .tactics-closing__copy { grid-column: 1 / span 5; }
  [data-tactics-page] .tactics-closing__mark { grid-column: 6 / -1; }
}

@media (max-width: 960px) {
  [data-tactics-page] .tactics-combo__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  [data-tactics-page] .tactics-combo__copy,
  [data-tactics-page] .tactics-combo__work { grid-column: 1 / -1; }
  [data-tactics-page] .tactics-steps { grid-template-columns: minmax(0, 1fr); }
  [data-tactics-page] .tactics-deck__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  [data-tactics-page] .tactics-deck__media,
  [data-tactics-page] .tactics-deck__content { grid-column: 1 / -1; }
}

@media (max-width: 860px) {
  [data-tactics-page] .tactics-hero { padding-top: var(--hero-space); }
  [data-tactics-page] .tactics-hero__grid,
  [data-tactics-page] .tactics-faq__layout,
  [data-tactics-page] .tactics-closing__panel { grid-template-columns: minmax(0, 1fr); }
  [data-tactics-page] .tactics-hero__copy,
  [data-tactics-page] .tactics-hero__media,
  [data-tactics-page] .tactics-faq__head,
  [data-tactics-page] .tactics-faq__list,
  [data-tactics-page] .tactics-closing__copy,
  [data-tactics-page] .tactics-closing__mark { grid-column: 1; }
  [data-tactics-page] .tactics-hero__copy { order: 1; }
  [data-tactics-page] .tactics-hero__media { order: 2; }
  [data-tactics-page] .tactics-hero__media .tactics-media-frame { aspect-ratio: 4 / 3; }
  [data-tactics-page] .tactics-situation__controls { grid-template-columns: minmax(0, 1fr); }
  [data-tactics-page] .tactics-practice__grid { grid-template-columns: minmax(0, 1fr); }
  [data-tactics-page] .tactics-practice__grid > :last-child { grid-column: 1; }
  [data-tactics-page] .tactics-related__item { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
  [data-tactics-page] .tactics-related__number,
  [data-tactics-page] .tactics-related__category { display: inline-block; }
  [data-tactics-page] .tactics-related__link { grid-column: 1; }
  [data-tactics-page] .tactics-faq__list { gap: var(--space-3); }
  [data-tactics-page] .tactics-closing__mark { display: none; }
}

@media (max-width: 760px) {
  [data-tactics-page] .tactics-cases__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 600px) {
  [data-tactics-page] .tactics-hero__copy { gap: var(--space-4); }
  [data-tactics-page] .tactics-hero h1 { font-size: 2.25rem; line-height: 1.1; }
  [data-tactics-page] .tactics-hero__lead { font-size: 1.125rem; line-height: 1.56; }
  [data-tactics-page] .tactics-cta-row { align-items: flex-start; flex-direction: column; }
  [data-tactics-page] .tactics-principles__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
  [data-tactics-page] .tactics-principles__grid > :last-child { grid-column: 1; }
  [data-tactics-page] .tactics-principle { padding: var(--space-5); }
  [data-tactics-page] .tactics-combo__media .tactics-media-frame { aspect-ratio: 4 / 3; }
  [data-tactics-page] .tactics-steps > li { padding: var(--space-4); }
  [data-tactics-page] .tactics-situation { padding: var(--space-5); }
  [data-tactics-page] .tactics-situation__panel-inner { gap: var(--space-4); }
  [data-tactics-page] .tactics-plan-table { grid-template-columns: minmax(0, 1fr); }
  [data-tactics-page] .tactics-plan-table__cell,
  [data-tactics-page] .tactics-plan-table__cell:nth-child(2n),
  [data-tactics-page] .tactics-plan-table__cell:nth-child(4n) { border-right: 0; border-bottom: 1px solid var(--color-border); }
  [data-tactics-page] .tactics-plan-table__cell:nth-last-child(-n + 2) { border-bottom: 1px solid var(--color-border); }
  [data-tactics-page] .tactics-plan-table__cell:last-child { border-bottom: 0; }
  [data-tactics-page] .tactics-deck__content { padding: var(--space-5); }
  [data-tactics-page] .tactics-case { padding: var(--space-5); }
  [data-tactics-page] .tactics-case__row { grid-template-columns: minmax(0, 1fr); gap: var(--space-1); }
  [data-tactics-page] .tactics-case__row--risk { padding: var(--space-3); }
  [data-tactics-page] .tactics-faq__item summary { padding: var(--space-4); font-size: 1.35rem; }
  [data-tactics-page] .tactics-faq__item[open] .tactics-faq__answer { padding: 0 var(--space-4) var(--space-4); }
  [data-tactics-page] .tactics-closing { padding-top: var(--section-space); }
  [data-tactics-page] .tactics-closing__panel { padding: var(--space-5); }
}

@media (prefers-reduced-motion: reduce) {
  [data-tactics-page] .tactics-situation__panel { animation: none; }
  [data-tactics-page] .tactics-faq__answer { transition: none; }
}


body.thank-you-page {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

.thank-you-page main {
  display: flex;
  flex: 1 0 auto;
  align-items: center;
}

.thank-you {
  width: 100%;
}

.thank-you__layout {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.thank-you__panel {
  grid-column: 3 / span 8;
  padding: clamp(2rem, 5vw, 4rem);
  border-color: var(--color-sand-500);
  text-align: center;
}

.thank-you__mark {
  display: grid;
  width: 3.5rem;
  height: 3.5rem;
  place-items: center;
  margin: 0 auto var(--space-5);
  border: 1px solid var(--color-sand-500);
  border-radius: var(--radius-md);
  background: var(--color-navy-700);
  color: var(--color-sand-100);
  font-family: var(--font-heading);
  font-size: 1.75rem;
  line-height: 1;
}

.thank-you__eyebrow {
  justify-content: center;
}

.thank-you__title {
  margin-bottom: var(--space-4);
}

.thank-you__copy {
  max-width: 42rem;
  margin-inline: auto;
  text-align: center;
}

.thank-you__copy p:last-child {
  margin-bottom: 0;
}

.thank-you__next {
  max-width: 42rem;
  margin: var(--space-6) auto 0;
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
  text-align: center;
}

.thank-you__next-title {
  margin-bottom: var(--space-2);
  color: var(--color-sand-100);
  font-family: var(--font-body);
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.35;
  text-transform: uppercase;
}

.thank-you__next-copy {
  max-width: 38rem;
  margin: 0 auto;
  text-align: center;
}

.thank-you__actions {
  justify-content: center;
  margin-top: var(--space-5);
}

.thank-you__actions .button-primary,
.thank-you__actions .button-secondary {
  min-width: 13rem;
}

.thank-you__external-icon {
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
}

@media (max-width: 1100px) {
  .thank-you__panel {
    grid-column: 2 / span 10;
  }
}

@media (max-width: 860px) {
  .thank-you-page main {
    align-items: flex-start;
  }

  .thank-you__panel {
    grid-column: 1 / -1;
  }
}

@media (max-width: 600px) {
  .thank-you__panel {
    padding: var(--space-6) var(--space-4);
  }

  .thank-you__mark {
    width: 3rem;
    height: 3rem;
    margin-bottom: var(--space-4);
    font-size: 1.5rem;
  }

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

  .thank-you__actions .button-primary,
  .thank-you__actions .button-secondary {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .thank-you__actions .button-primary,
  .thank-you__actions .button-secondary {
    transition: none;
  }
}