

:root {
  --color-velvet-black: #0b0c0e;
  --color-graphite-panel: #15181c;
  --color-graphite-raised: #1d2227;
  --color-primary-white: #f7f5f0;
  --color-platinum-silver: #b9bec4;
  --color-platinum-bright: #e0e3e5;
  --color-champagne-gold: #c9a66b;
  --color-champagne-light: #e0c58f;
  --color-felt-green: #173d35;
  --color-success-mint: #a7d8c5;
  --color-error-coral: #f09a8a;

  --color-background: var(--color-velvet-black);
  --color-surface: var(--color-graphite-panel);
  --color-surface-raised: var(--color-graphite-raised);
  --color-text: var(--color-primary-white);
  --color-text-muted: var(--color-platinum-silver);
  --color-border: rgba(185, 190, 196, 0.62);
  --color-border-active: var(--color-platinum-bright);
  --color-accent: var(--color-champagne-gold);
  --color-accent-hover: var(--color-champagne-light);
  --color-focus: var(--color-platinum-bright);

  --font-heading: "Cormorant Garamond", Georgia, serif;
  --font-body: "Manrope", Arial, sans-serif;

  --text-display: clamp(3.25rem, 7vw, 7.5rem);
  --text-h1: clamp(2.75rem, 5vw, 5.5rem);
  --text-h2: clamp(2.1rem, 3.7vw, 4rem);
  --text-h3: clamp(1.45rem, 2vw, 2.15rem);
  --text-lead: clamp(1.1rem, 1.5vw, 1.35rem);
  --text-body: 1rem;
  --text-small: 0.78rem;
  --text-meta: 0.72rem;

  --leading-display: 0.92;
  --leading-h1: 0.96;
  --leading-h2: 1.02;
  --leading-h3: 1.1;
  --leading-body: 1.65;
  --leading-lead: 1.55;
  --leading-small: 1.35;

  --tracking-display: -0.045em;
  --tracking-h1: -0.035em;
  --tracking-h2: -0.025em;
  --tracking-h3: -0.015em;
  --tracking-meta: 0.1em;

  --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;
  --space-10: 8rem;
  --space-11: 10rem;

  --container-max: 80rem;
  --container-padding: 2rem;
  --section-space: clamp(4rem, 8vw, 10rem);

  --radius-sm: 2px;
  --radius-md: 2px;

  --border-default: 1px solid var(--color-border);
  --border-active: 1px solid var(--color-border-active);
  --shadow-raised: 0 18px 50px rgba(0, 0, 0, 0.28);

  --transition-fast: 180ms ease-out;
  --transition-base: 220ms ease-out;
}

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

html {
  min-width: 320px;
  scroll-behavior: smooth;
  background: var(--color-background);
  color-scheme: dark;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  background: var(--color-background);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--text-body);
  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,
figure,
form {
  min-width: 0;
}

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

img,
video {
  height: auto;
}

svg {
  fill: currentColor;
}

a {
  color: inherit;
  text-decoration-color: currentColor;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
  transition: color var(--transition-fast), text-decoration-color var(--transition-fast);
}

a:hover {
  color: var(--color-champagne-light);
}

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-focus);
  outline-offset: 2px;
}

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

button,
select {
  text-transform: none;
}

button {
  border: 0;
  cursor: pointer;
}

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

input,
select,
textarea {
  width: 100%;
  min-height: 3.25rem;
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  color: var(--color-text);
  padding: 0.75rem 1rem;
  transition: border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);
}

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

input::placeholder,
textarea::placeholder {
  color: color-mix(in srgb, var(--color-platinum-silver) 74%, transparent);
  opacity: 1;
}

input:hover,
select:hover,
textarea:hover {
  border-color: var(--color-platinum-bright);
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--color-platinum-bright);
  background: var(--color-surface-raised);
  box-shadow: 0 0 0 2px var(--color-platinum-bright);
  outline: none;
}

input[type="checkbox"],
input[type="radio"] {
  width: 1rem;
  min-height: 1rem;
  accent-color: var(--color-champagne-gold);
}

label {
  display: inline-block;
  margin-block-end: var(--space-2);
  color: var(--color-primary-white);
  font-size: var(--text-small);
  font-weight: 700;
  letter-spacing: 0.04em;
}

fieldset {
  min-width: 0;
  margin: 0 0 var(--space-5);
  padding: var(--space-5);
  border: var(--border-default);
}

legend {
  padding-inline: var(--space-2);
  color: var(--color-primary-white);
  font-weight: 700;
}

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

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

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

th {
  color: var(--color-primary-white);
  font-size: var(--text-small);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 var(--space-4);
  color: var(--color-primary-white);
  font-family: var(--font-heading);
  font-weight: 700;
  text-wrap: balance;
}

h1 {
  font-size: var(--text-h1);
  line-height: var(--leading-h1);
  letter-spacing: var(--tracking-h1);
}

h2 {
  font-size: var(--text-h2);
  line-height: var(--leading-h2);
  letter-spacing: var(--tracking-h2);
}

h3 {
  font-size: var(--text-h3);
  line-height: var(--leading-h3);
  letter-spacing: var(--tracking-h3);
}

h4 {
  font-size: clamp(1.25rem, 1.5vw, 1.5rem);
  line-height: 1.2;
  letter-spacing: -0.01em;
}

h5,
h6 {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.35;
  letter-spacing: 0.04em;
}

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

ul,
ol {
  margin: 0 0 var(--space-5);
  padding-inline-start: 1.25rem;
}

li::marker {
  color: var(--color-champagne-gold);
}

blockquote {
  margin: 0 0 var(--space-5);
  padding: var(--space-4) 0 var(--space-4) var(--space-5);
  border-inline-start: 1px solid var(--color-champagne-gold);
  color: var(--color-primary-white);
  font-family: var(--font-heading);
  font-size: clamp(1.45rem, 2.2vw, 2.3rem);
  line-height: 1.18;
}

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

figcaption {
  margin-block-start: var(--space-3);
  color: var(--color-text-muted);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

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

dt {
  color: var(--color-primary-white);
  font-weight: 700;
}

dd {
  margin: 0 0 var(--space-3);
  color: var(--color-text-muted);
}

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

::selection {
  background: var(--color-champagne-gold);
  color: var(--color-velvet-black);
}

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

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

.surface-panel {
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-surface);
}

.surface-raised {
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-surface-raised);
  box-shadow: var(--shadow-raised);
}

.eyebrow,
.meta {
  margin: 0 0 var(--space-3);
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: var(--tracking-meta);
  line-height: var(--leading-small);
  text-transform: uppercase;
}

.eyebrow--accent {
  color: var(--color-champagne-gold);
}

.display {
  margin: 0 0 var(--space-5);
  color: var(--color-primary-white);
  font-family: var(--font-heading);
  font-size: var(--text-display);
  font-weight: 700;
  letter-spacing: var(--tracking-display);
  line-height: var(--leading-display);
  text-wrap: balance;
}

.lead {
  margin: 0 0 var(--space-5);
  color: var(--color-platinum-bright);
  font-size: var(--text-lead);
  line-height: var(--leading-lead);
}

.text-muted {
  color: var(--color-text-muted);
}

.text-accent {
  color: var(--color-champagne-gold);
}

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

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

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

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

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

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

.cluster--spread {
  justify-content: space-between;
}

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

.action-group > * {
  min-width: 0;
}

.button {
  display: inline-flex;
  min-width: 0;
  min-height: 3rem;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  padding: 0.75rem 1.25rem;
  color: var(--color-velvet-black);
  background: var(--color-champagne-gold);
  font-family: var(--font-body);
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base), transform var(--transition-base);
}

.button:hover {
  color: var(--color-velvet-black);
  background: var(--color-champagne-light);
}

.button:active {
  transform: translateY(1px);
}

.button--secondary {
  border-color: var(--color-border);
  color: var(--color-primary-white);
  background: transparent;
}

.button--secondary:hover {
  border-color: var(--color-platinum-bright);
  color: var(--color-primary-white);
  background: var(--color-surface-raised);
}

.button--text {
  min-height: auto;
  justify-content: flex-start;
  padding: 0;
  color: var(--color-platinum-bright);
  background: transparent;
  text-decoration: underline;
  text-decoration-color: var(--color-border);
  text-underline-offset: 0.28em;
}

.button--text:hover {
  color: var(--color-champagne-light);
  background: transparent;
  text-decoration-color: currentColor;
}

.card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  padding: var(--space-5);
  transition: border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base), box-shadow var(--transition-base);
}

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

.card > :last-child {
  margin-block-end: 0;
}

.card:hover {
  border-color: var(--color-platinum-bright);
  background: var(--color-surface-raised);
  box-shadow: var(--shadow-raised);
  transform: scale(1.02);
}

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

.badge {
  display: inline-flex;
  min-height: 1.75rem;
  align-items: center;
  justify-content: center;
  border: var(--border-default);
  border-radius: var(--radius-sm);
  padding: 0.25rem var(--space-2);
  color: var(--color-platinum-bright);
  background: transparent;
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.15;
  text-transform: uppercase;
}

.badge--green {
  border-color: color-mix(in srgb, var(--color-felt-green) 72%, var(--color-platinum-silver));
  background: var(--color-felt-green);
  color: var(--color-primary-white);
}

.badge--gold {
  border-color: var(--color-champagne-gold);
  color: var(--color-champagne-light);
}

.divider {
  width: 100%;
  height: 1px;
  background: var(--color-border);
}

.status-success {
  color: var(--color-success-mint);
}

.status-error {
  color: var(--color-error-coral);
}

.field-error {
  border-color: var(--color-error-coral);
}

.field-success {
  border-color: var(--color-success-mint);
}

@media (max-width: 64rem) {
  :root {
    --container-padding: 1.5rem;
    --section-space: clamp(3.5rem, 8vw, 6rem);
  }
}

@media (max-width: 40rem) {
  :root {
    --container-padding: 1.25rem;
    --section-space: clamp(3rem, 10vw, 4.5rem);
  }

  .card {
    padding: var(--space-5);
  }

  .card:hover {
    transform: none;
  }

  .button {
    min-height: 3.25rem;
  }

  .action-group {
    align-items: stretch;
  }

  .action-group .button {
    flex: 1 1 100%;
  }
}

@media (hover: none) {
  .card:hover {
    border-color: var(--color-border);
    background: var(--color-surface);
    box-shadow: none;
    transform: none;
  }

  .button:hover {
    background: var(--color-champagne-gold);
  }

  .button--secondary:hover {
    border-color: var(--color-border);
    background: transparent;
  }
}

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

  *,
  *::before,
  *::after {
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
  }
}

ul { list-style: none !important; }

.nav-toggle { flex-direction: column; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  width: 100%;
  border-bottom: 1px solid var(--color-border);
  background: color-mix(in srgb, var(--color-velvet-black) 94%, transparent);
  backdrop-filter: blur(14px);
}

.site-header__inner {
  display: flex;
  min-height: 5.25rem;
  align-items: center;
  gap: var(--space-5);
}

.site-header__brand {
  display: inline-flex;
  min-width: 0;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.7rem;
  color: var(--color-primary-white);
  text-decoration: none;
}

.site-header__brand:hover { color: var(--color-primary-white); }

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

.site-header__brand-name {
  white-space: nowrap;
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.site-header__nav {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-4);
}

.site-header__nav-list {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: clamp(0.7rem, 1.4vw, 1.35rem);
  margin: 0;
  padding: 0;
  list-style: none !important;
}

.site-header__nav-list li,
.site-header__nav-list .site-header__nav-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  white-space: nowrap;
  color: var(--color-platinum-bright);
  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

.site-header__nav-link::after {
  width: 0;
  height: 1px;
  margin-left: 0.35rem;
  background: var(--color-champagne-gold);
  content: "";
  transition: width var(--transition-fast);
}

.site-header__nav-link:hover,
.site-header__nav-link:focus-visible { color: var(--color-champagne-light); }
.site-header__nav-link:hover::after,
.site-header__nav-link:focus-visible::after { width: 0.65rem; }

.site-header__cta { flex: 0 0 auto; white-space: nowrap; }

.nav-toggle {
  display: none;
  width: 3rem;
  min-height: 3rem;
  flex-direction: column;
  flex: 0 0 3rem;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: transparent;
  color: var(--color-primary-white);
}

.nav-toggle:hover { border-color: var(--color-platinum-bright); background: var(--color-graphite-raised); }

.nav-toggle__line {
  display: block;
  width: 1.25rem;
  height: 1px;
  background: currentColor;
  transition: transform var(--transition-fast), opacity var(--transition-fast);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__line:nth-child(1) { transform: translateY(0.4rem) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle__line:nth-child(2) { opacity: 0; }
.nav-toggle[aria-expanded="true"] .nav-toggle__line:nth-child(3) { transform: translateY(-0.4rem) rotate(-45deg); }

@media (max-width: 68rem) {
  .site-header__inner { min-height: 4.75rem; justify-content: space-between; }
  .site-header__logo { width: 2.125rem; height: 2.125rem; flex-basis: 2.125rem; }
  .site-header__brand-name { font-size: 1.05rem; }
  .nav-toggle { display: inline-flex; }
  .site-header__nav {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    display: none;
    max-height: calc(100vh - 4.75rem);
    overflow-y: auto;
    border-bottom: 1px solid var(--color-border);
    background: var(--color-velvet-black);
    padding: var(--space-5) max(var(--container-padding), env(safe-area-inset-right)) var(--space-6) max(var(--container-padding), env(safe-area-inset-left));
  }
  .site-header__nav.is-open { display: flex; flex-direction: column; align-items: stretch; gap: var(--space-5); }
  .site-header__nav-list { flex-direction: column; align-items: stretch; gap: 0; border-top: 1px solid var(--color-border); }
  .site-header__nav-list li { width: 100%; border-bottom: 1px solid var(--color-border); }
  .site-header__nav-link { width: 100%; min-height: 3.25rem; justify-content: space-between; font-size: 0.78rem; }
  .site-header__cta { width: 100%; min-height: 3.25rem; }
}

@media (max-width: 25rem) {
  .site-header__inner { gap: var(--space-3); }
  .site-header__brand { gap: 0.5rem; }
  .site-header__brand-name { font-size: 0.93rem; letter-spacing: 0.09em; }
}

ul { list-style: none !important; }

.nav-toggle { flex-direction: column; }

.site-footer {
  border-top: 1px solid var(--color-border);
  background: var(--color-graphite-panel);
  padding-top: clamp(3rem, 6vw, 5rem);
}

.site-footer__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(10rem, 0.8fr) minmax(12rem, 0.9fr);
  gap: clamp(2rem, 5vw, 5rem);
  padding-bottom: clamp(2.5rem, 5vw, 4rem);
}

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

.site-footer__brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  margin-bottom: var(--space-4);
  color: var(--color-primary-white);
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

.site-footer__brand-lockup:hover { color: var(--color-primary-white); }
.site-footer__logo { width: 2.25rem; height: 2.25rem; object-fit: contain; }

.site-footer__brand p,
.site-footer__hours {
  max-width: 28rem;
  margin: 0;
  color: var(--color-platinum-silver);
  font-size: var(--text-small);
  line-height: 1.65;
}

.site-footer__title {
  margin: 0 0 var(--space-4);
  font-family: var(--font-body);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
  line-height: var(--leading-small);
  text-transform: uppercase;
}

.site-footer__list,
.site-footer__legal-list {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none !important;
}

.site-footer__list { flex-direction: column; gap: 0.5rem; }
.site-footer__list li,
.site-footer__legal-list li,
.site-footer__list li + li,
.site-footer__legal-list .site-footer__list a,
.site-footer__contact a,
.site-footer__contact address {
  color: var(--color-platinum-bright);
  font-size: var(--text-small);
  font-style: normal;
  line-height: 1.65;
}

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

.site-footer__contact .site-footer__title { margin-bottom: var(--space-2); }
.site-footer__contact address { margin-bottom: var(--space-2); }

.site-footer__lower {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  border-top: 1px solid var(--color-border);
  padding-top: var(--space-5);
  padding-bottom: var(--space-5);
}

.site-footer__lower p {
  margin: 0;
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  letter-spacing: 0.05em;
}

.site-footer__legal-list { flex-wrap: wrap; gap: var(--space-4); }
.site-footer__legal-list a { color: var(--color-platinum-silver); font-size: var(--text-meta); }

.consent-banner[hidden],
[data-age-modal][hidden] { display: none !important; }

.consent-banner {
  position: fixed;
  right: max(var(--space-4), env(safe-area-inset-right));
  bottom: max(var(--space-4), env(safe-area-inset-bottom));
  left: max(var(--space-4), env(safe-area-inset-left));
  z-index: 1100;
}

.consent-banner__inner {
  display: flex;
  width: min(100%, 52rem);
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  margin-inline: auto;
  border: var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--color-graphite-panel);
  box-shadow: var(--shadow-raised);
  padding: var(--space-4) var(--space-5);
}

.consent-banner p { margin: 0; color: var(--color-platinum-bright); font-size: var(--text-small); line-height: 1.5; }
.consent-banner__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: var(--space-2); }
.consent-banner__button { min-height: 2.75rem; padding-inline: 1rem; }

.age-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  overflow-y: auto;
  place-items: center;
  background: rgba(11, 12, 14, 0.92);
  padding: max(var(--space-5), env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-5), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));
}

.age-modal__panel {
  width: min(100%, 36rem);
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
  box-shadow: var(--shadow-raised);
  padding: clamp(1.5rem, 4vw, 3rem);
}

.age-modal__eyebrow {
  margin: 0 0 var(--space-3);
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
  text-transform: uppercase;
}

.age-modal h2 { margin-bottom: var(--space-4); font-size: clamp(2rem, 5vw, 3.4rem); }
.age-modal__panel > p:not(.age-modal__eyebrow) { margin-bottom: var(--space-5); color: var(--color-platinum-bright); }
.age-modal__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }

@media (max-width: 48rem) {
  .site-footer__inner { grid-template-columns: 1fr 1fr; }
  .site-footer__brand { grid-column: 1 / -1; }
}

@media (max-width: 40rem) {
  .site-footer__inner { grid-template-columns: 1fr; gap: var(--space-6); }
  .site-footer__brand { grid-column: auto; }
  .site-footer__lower { align-items: flex-start; flex-direction: column; }
  .site-footer__legal-list { gap: var(--space-3); }
  .consent-banner__inner { align-items: stretch; flex-direction: column; padding: var(--space-4); }
  .consent-banner__actions { width: 100%; }
  .consent-banner__button { flex: 1 1 0; }
  .age-modal__actions { flex-direction: column; }
  .age-modal__actions .button { width: 100%; }
}

ul { list-style: none !important; }

.nav-toggle { flex-direction: column; }

.regulamin-page {
  background: var(--color-velvet-black);
}

.regulamin-page .regulamin-hero {
  padding-block: clamp(6rem, 10vw, 10rem) var(--space-8);
}

.regulamin-page .regulamin-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: start;
}

.regulamin-page .regulamin-hero__content {
  grid-column: 1;
  min-width: 0;
  width: 100%;
  max-width: 38.75rem;
}

.regulamin-page .regulamin-hero__space {
  grid-column: 2;
  min-width: 0;
  width: 100%;
}

.regulamin-page .regulamin-hero__accent {
  display: flex;
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.5rem;
  align-items: center;
  justify-content: center;
  margin-block: var(--space-5);
  border: 1px solid var(--color-champagne-gold);
  color: var(--color-champagne-gold);
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}

.regulamin-page .regulamin-hero__accent span {
  font-family: var(--font-heading);
  font-size: 1.05rem;
  font-weight: 700;
}

.regulamin-page .regulamin-hero__lead {
  max-width: 37.5rem;
}

.regulamin-page .regulamin-hero__meta {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-block-end: 0;
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: var(--tracking-meta);
  line-height: var(--leading-small);
  text-transform: uppercase;
}

.regulamin-page .regulamin-hero__meta > * {
  min-width: 0;
}

.regulamin-page .regulamin-hero__meta > span[aria-hidden="true"] {
  width: 1px;
  height: 1rem;
  background: var(--color-border);
}

.regulamin-page .regulamin-hero__meta strong {
  color: var(--color-primary-white);
}

.regulamin-page .regulamin-toc-section {
  padding-block: var(--space-7) var(--section-space);
}

.regulamin-page .regulamin-toc {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-6);
  width: min(100%, 51.25rem);
  min-width: 0;
  padding: var(--space-6);
}

.regulamin-page .regulamin-toc__intro {
  min-width: 0;
  width: 100%;
  max-width: 35rem;
}

.regulamin-page .regulamin-toc__intro > :last-child {
  margin-block-end: 0;
}

.regulamin-page .regulamin-toc__nav {
  min-width: 0;
  width: 100%;
}

.regulamin-page .regulamin-toc__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--space-6);
  margin: 0;
  padding: 0;
  list-style: none !important;
  border-top: var(--border-default);
}

.regulamin-page .regulamin-toc__list > li {
  min-width: 0;
  width: 100%;
  border-bottom: var(--border-default);
}

.regulamin-page .regulamin-toc__list > li:nth-child(odd):last-child {
  grid-column: 1;
}

.regulamin-page .regulamin-toc__list a {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-3);
  width: 100%;
  min-width: 0;
  min-height: 3.25rem;
  align-items: center;
  padding-block: var(--space-3);
  color: var(--color-primary-white);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
  transition: color var(--transition-fast), background-color var(--transition-fast);
}

.regulamin-page .regulamin-toc__list a > span {
  min-width: 0;
}

.regulamin-page .regulamin-toc__list a > span:first-child {
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  letter-spacing: var(--tracking-meta);
}

.regulamin-page .regulamin-toc__list a:hover,
.regulamin-page .regulamin-toc__list a.is-active {
  color: var(--color-champagne-light);
}

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

.regulamin-page .regulamin-section + .regulamin-section {
  padding-block-start: 0;
}

.regulamin-page .regulamin-section__grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 7fr) minmax(0, 3fr);
  min-width: 0;
  padding-block-start: var(--section-space);
  border-top: var(--border-default);
}

.regulamin-page .regulamin-section__index {
  display: flex;
  grid-column: 1;
  min-width: 0;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  padding-inline-end: var(--space-5);
}

.regulamin-page .regulamin-section__index span {
  color: var(--color-champagne-gold);
  font-size: clamp(1.45rem, 2vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1;
}

.regulamin-page .regulamin-section__index small {
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: var(--tracking-meta);
  text-transform: uppercase;
}

.regulamin-page .regulamin-section__content {
  grid-column: 2;
  min-width: 0;
  width: 100%;
  max-width: 42.5rem;
}

.regulamin-page .regulamin-section__content > h2 {
  max-width: 36rem;
}

.regulamin-page .regulamin-clauses {
  display: flex;
  min-width: 0;
  width: 100%;
  flex-direction: column;
  gap: var(--space-5);
  margin: 0;
  padding: 0;
  list-style: none !important;
  counter-reset: clause;
}

.regulamin-page .regulamin-clauses > li {
  position: relative;
  min-width: 0;
  width: 100%;
  padding-inline-start: var(--space-6);
  counter-increment: clause;
}

.regulamin-page .regulamin-clauses > li::before {
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.25rem;
  color: var(--color-champagne-gold);
  content: counter(clause) ".";
  font-size: var(--text-small);
  font-weight: 800;
}

.regulamin-page .regulamin-clauses p {
  margin-block-end: 0;
}

.regulamin-page .regulamin-clauses strong {
  color: var(--color-primary-white);
  font-weight: 800;
}

.regulamin-page .regulamin-clauses a,
.regulamin-page .regulamin-contact__links a {
  color: var(--color-platinum-bright);
  overflow-wrap: anywhere;
  text-decoration-color: var(--color-border);
  text-underline-offset: 0.25em;
}

.regulamin-page .regulamin-clauses a:hover,
.regulamin-page .regulamin-contact__links a:hover {
  color: var(--color-champagne-light);
  text-decoration-color: currentColor;
}

.regulamin-page .regulamin-definitions {
  display: flex;
  min-width: 0;
  width: 100%;
  flex-direction: column;
  gap: var(--space-3);
  margin: var(--space-4) 0 0;
}

.regulamin-page .regulamin-definitions > div {
  display: grid;
  grid-template-columns: minmax(0, 8.5rem) minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  width: 100%;
}

.regulamin-page .regulamin-definitions dt,
.regulamin-page .regulamin-definitions dd {
  min-width: 0;
  margin: 0;
}

.regulamin-page .regulamin-definitions dd {
  color: var(--color-text-muted);
}

.regulamin-page .regulamin-query-clause {
  border-left: 2px solid var(--color-felt-green);
  background: var(--color-graphite-panel);
  padding: var(--space-5) var(--space-5) var(--space-5) calc(var(--space-6) + var(--space-5)) !important;
}

.regulamin-page .regulamin-query-clause::before {
  inset-inline-start: var(--space-5);
  inset-block-start: var(--space-5);
}

.regulamin-page .regulamin-section--final {
  padding-block-end: var(--section-space);
}

.regulamin-page .regulamin-contact {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-4);
  min-width: 0;
  width: 100%;
  max-width: 32.5rem;
  margin-block-start: var(--space-7);
  padding: var(--space-5);
}

.regulamin-page .regulamin-contact__mark {
  grid-column: 1;
  width: 1.5rem;
  height: 1.5rem;
  min-width: 1.5rem;
  margin-block-start: 0.2rem;
  border: 1px solid var(--color-champagne-gold);
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}

.regulamin-page .regulamin-contact__content {
  display: flex;
  grid-column: 2;
  min-width: 0;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.regulamin-page .regulamin-contact__content > * {
  min-width: 0;
  margin: 0;
}

.regulamin-page .regulamin-contact__content h3 {
  margin: 0;
}

.regulamin-page .regulamin-contact__links {
  display: flex;
  min-width: 0;
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  margin-block-start: var(--space-2);
}

.regulamin-page .regulamin-contact__links a {
  display: inline-flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: 0.03em;
}

@media (max-width: 56.25rem) {
  .regulamin-page .regulamin-hero__grid,
  .regulamin-page .regulamin-section__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .regulamin-page .regulamin-hero {
    padding-block: var(--space-9) var(--space-7);
  }

  .regulamin-page .regulamin-hero__content,
  .regulamin-page .regulamin-hero__space,
  .regulamin-page .regulamin-section__index,
  .regulamin-page .regulamin-section__content {
    grid-column: 1;
  }

  .regulamin-page .regulamin-hero__content,
  .regulamin-page .regulamin-section__content {
    max-width: 42.5rem;
  }

  .regulamin-page .regulamin-hero__space {
    display: none;
  }

  .regulamin-page .regulamin-section__grid {
    gap: var(--space-4);
  }

  .regulamin-page .regulamin-section__index {
    flex-direction: row;
    align-items: baseline;
    gap: var(--space-3);
    padding-inline-end: 0;
  }
}

@media (max-width: 45rem) {
  .regulamin-page .regulamin-toc__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  .regulamin-page .regulamin-toc__list > li:nth-child(odd):last-child {
    grid-column: auto;
  }
}

@media (max-width: 40rem) {
  .regulamin-page .regulamin-hero {
    padding-block: var(--space-8) var(--space-6);
  }

  .regulamin-page .regulamin-hero__accent {
    margin-block: var(--space-4);
  }

  .regulamin-page .regulamin-hero__meta {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--space-2);
  }

  .regulamin-page .regulamin-hero__meta > span[aria-hidden="true"] {
    display: none;
  }

  .regulamin-page .regulamin-toc-section {
    padding-block: var(--space-6) var(--space-8);
  }

  .regulamin-page .regulamin-toc {
    gap: var(--space-5);
    padding: var(--space-5);
  }

  .regulamin-page .regulamin-toc__list a {
    min-height: 3.5rem;
    grid-template-columns: 2.75rem minmax(0, 1fr);
  }

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

  .regulamin-page .regulamin-section__grid {
    padding-block-start: var(--space-8);
  }

  .regulamin-page .regulamin-clauses {
    gap: var(--space-5);
  }

  .regulamin-page .regulamin-clauses > li {
    padding-inline-start: var(--space-5);
  }

  .regulamin-page .regulamin-query-clause {
    padding: var(--space-5) var(--space-4) var(--space-5) calc(var(--space-5) + var(--space-4)) !important;
  }

  .regulamin-page .regulamin-query-clause::before {
    inset-inline-start: var(--space-4);
  }

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

  .regulamin-page .regulamin-contact {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
    margin-block-start: var(--space-6);
  }

  .regulamin-page .regulamin-contact__mark,
  .regulamin-page .regulamin-contact__content {
    grid-column: 1;
  }
}

@media (hover: none) {
  .regulamin-page .regulamin-toc__list a:hover,
  .regulamin-page .regulamin-clauses a:hover,
  .regulamin-page .regulamin-contact__links a:hover {
    color: inherit;
  }
}

.cookies-page {
  overflow: hidden;
}

.cookies-page a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}

.cookies-page__hero {
  padding-block: clamp(4.5rem, 9vw, 9rem) clamp(3.5rem, 7vw, 6rem);
  border-bottom: var(--border-default);
}

.cookies-page__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 8fr) minmax(0, 1fr);
  column-gap: var(--space-6);
}

.cookies-page__hero-grid > * {
  min-width: 0;
}

.cookies-page__hero-copy {
  grid-column: 2;
  width: 100%;
  max-width: 42rem;
}

.cookies-page__hero-copy .lead {
  max-width: 36.25rem;
}

.cookies-page__hero-copy .lead a {
  color: var(--color-platinum-bright);
  text-decoration-color: var(--color-border);
}

.cookies-page__hero-copy .lead a:hover {
  color: var(--color-champagne-light);
  text-decoration-color: currentColor;
}

.cookies-page__effective-date {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: baseline;
  gap: var(--space-3);
  border-top: var(--border-default);
  padding-top: var(--space-4);
  color: var(--color-platinum-silver);
  font-size: var(--text-small);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.cookies-page__effective-date strong {
  min-width: 0;
  color: var(--color-champagne-gold);
}

.cookies-page__document-mark {
  display: flex;
  grid-column: 3;
  width: 100%;
  min-width: 0;
  align-items: flex-start;
  justify-content: flex-end;
  padding-top: var(--space-3);
}

.cookies-page__document-mark span {
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border: 1px solid var(--color-champagne-gold);
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
}

.cookies-page__document-layout {
  display: grid;
  grid-template-columns: minmax(8rem, 2fr) minmax(0, 8fr) minmax(0, 2fr);
  column-gap: var(--space-6);
  align-items: start;
  padding-block: clamp(4rem, 7vw, 6rem) var(--section-space);
}

.cookies-page__document-layout > * {
  min-width: 0;
}

.cookies-page__index {
  grid-column: 1;
  position: sticky;
  top: var(--space-6);
  width: 100%;
  min-width: 0;
  padding-right: var(--space-4);
}

.cookies-page__index .meta {
  margin-bottom: var(--space-4);
}

.cookies-page__index ol {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0;
  padding: 0;
  list-style: none !important;
}

.cookies-page__index li {
  width: 100%;
  min-width: 0;
}

.cookies-page__index a {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: baseline;
  gap: var(--space-2);
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: var(--leading-small);
  text-decoration: none;
  transition: color var(--transition-fast);
}

.cookies-page__index a span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.cookies-page__index a:hover,
.cookies-page__index a[aria-current="true"] {
  color: var(--color-champagne-gold);
}

.cookies-page__sections {
  display: flex;
  grid-column: 2;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: clamp(4rem, 7vw, 6rem);
}

.cookies-section {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr) minmax(0, 7fr);
  column-gap: var(--space-6);
  align-items: start;
}

.cookies-section > * {
  min-width: 0;
}

.cookies-section__number {
  grid-column: 1;
  width: 100%;
  min-width: 0;
  padding-top: 0.4rem;
}

.cookies-section__number a {
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
  line-height: var(--leading-small);
  text-decoration: none;
}

.cookies-section__number a:hover {
  color: var(--color-champagne-light);
}

.cookies-section__content {
  grid-column: 2;
  width: 100%;
  min-width: 0;
}

.cookies-section__content--reading {
  max-width: 42.5rem;
}

.cookies-section__content--wide {
  max-width: 51.25rem;
}

.cookies-section__content h2 {
  max-width: 37.5rem;
}

.cookies-section__content p {}

.cookies-section__content a {
  color: var(--color-platinum-bright);
  text-decoration-color: var(--color-border);
}

.cookies-section__content a:hover {
  color: var(--color-champagne-light);
  text-decoration-color: currentColor;
}

.cookies-section__subcopy {
  width: 100%;
  max-width: 42.5rem;
  border-top: var(--border-default);
  padding-top: var(--space-4);
}

.cookies-section__subcopy > :last-child,
.cookies-section__technology-note,
.cookies-function-list > :last-child p,
.cookies-section__heading > :last-child,
.cookies-category-card > :last-child,
.cookies-duration-card > :last-child,
.cookies-management-item > :last-child,
.cookies-important-note > :last-child,
.cookies-update-item > :last-child,
.cookies-contact > :last-child {
  margin-bottom: 0;
}

.cookies-section__content--definition {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  padding: var(--space-6);
}

.cookies-section__content--definition h2,
.cookies-section__content--definition p {
  margin: 0;
}

.cookies-section__technology-note {
  width: 100%;
  max-width: 41.25rem;
  border-top: var(--border-default);
  padding-top: var(--space-5);
  color: var(--color-text-muted);
}

.cookies-function-list {
  display: flex;
  width: 100%;
  max-width: 37.5rem;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none !important;
}

.cookies-function-list li {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: 0.75rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
}

.cookies-function-list li > * {
  min-width: 0;
}

.cookies-function-list li > span {
  width: 0.625rem;
  height: 0.625rem;
  margin-top: 0.48rem;
  border: 1px solid var(--color-champagne-gold);
  transform: rotate(45deg);
}

.cookies-function-list strong {
  display: block;
  color: var(--color-primary-white);
  font-size: var(--text-small);
  letter-spacing: 0.02em;
}

.cookies-function-list p {
  margin: var(--space-1) 0 0;
  color: var(--color-text-muted);
}

.cookies-section__heading {
  width: 100%;
  max-width: 37.5rem;
  margin-bottom: var(--space-6);
}

.cookies-section__heading h2 {
  margin-bottom: var(--space-4);
}

.cookies-category-grid {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.cookies-category-grid > * {
  min-width: 0;
}

.cookies-category-card {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  gap: var(--space-4);
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  padding: var(--space-5);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.cookies-category-card:hover,
.cookies-category-card:focus-within {
  border-color: var(--color-platinum-bright);
  background: var(--color-surface-raised);
}

.cookies-category-card h3,
.cookies-category-card p {
  margin: 0;
}

.cookies-category-card__label,
.cookies-duration-card__label,
.cookies-management-item__label,
.cookies-important-note__label,
.cookies-update-item__label {
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
  line-height: var(--leading-small);
  text-transform: uppercase;
}

.cookies-category-card__label {
  color: var(--color-champagne-gold);
}

.cookies-category-card p:not(.cookies-category-card__label) {
  color: var(--color-platinum-bright);
}

.cookies-duration-grid {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.cookies-duration-grid > * {
  min-width: 0;
}

.cookies-duration-card {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-5);
}

.cookies-duration-card h3,
.cookies-duration-card p {
  margin: 0;
}

.cookies-duration-card__label {
  color: var(--color-champagne-gold);
}

.cookies-duration-card p:not(.cookies-duration-card__label) {
  color: var(--color-platinum-bright);
}

.cookies-duration-note {
  width: 100%;
  max-width: 38.75rem;
  margin: var(--space-5) 0 0;
  border-top: var(--border-default);
  padding-top: var(--space-4);
  color: var(--color-text-muted);
}

.cookies-section__content--management {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  padding: var(--space-6);
}

.cookies-section__content--management h2,
.cookies-management-item p,
.cookies-important-note p {
  margin: 0;
}

.cookies-management-item {
  display: flex;
  width: 100%;
  max-width: 41.25rem;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.cookies-management-item + .cookies-management-item {
  border-top: var(--border-default);
  padding-top: var(--space-5);
}

.cookies-management-item__label {
  color: var(--color-champagne-gold);
}

.cookies-important-note {
  display: flex;
  width: 100%;
  max-width: 37.5rem;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  border-left: 1px solid var(--color-champagne-gold);
  padding-left: var(--space-4);
}

.cookies-important-note__label {
  color: var(--color-champagne-light);
}

.cookies-important-note p:not(.cookies-important-note__label) {
  color: var(--color-platinum-bright);
}

.cookies-update-item {
  display: flex;
  width: 100%;
  max-width: 42.5rem;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.cookies-update-item p {
  margin: 0;
}

.cookies-update-item--separated {
  margin-top: var(--space-5);
  border-top: var(--border-default);
  padding-top: var(--space-5);
}

.cookies-update-item__label--gold {
  color: var(--color-champagne-gold);
}

.cookies-contact {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: 51.25rem;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
}

.cookies-contact .eyebrow,
.cookies-contact h2,
.cookies-contact p {
  margin: 0;
}

.cookies-contact p {
  width: 100%;color: var(--color-platinum-bright);
}

.cookies-contact__email {
  display: inline-flex;
  width: fit-content;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-primary-white);
  font-size: clamp(1.05rem, 1.8vw, 1.3rem);
  font-weight: 700;
  overflow-wrap: anywhere;
  text-decoration-color: var(--color-champagne-gold);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.28em;
}

.cookies-contact__email:hover {
  color: var(--color-champagne-light);
}

.cookies-contact__email span {
  color: var(--color-champagne-gold);
  transition: transform var(--transition-fast);
}

.cookies-contact__email:hover span {
  transform: translateX(4px);
}

@media (max-width: 61.25rem) {
  .cookies-page__hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 7fr);
  }

  .cookies-page__hero-copy {
    grid-column: 2;
  }

  .cookies-page__document-mark {
    display: none;
  }

  .cookies-page__document-layout {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-6);
  }

  .cookies-page__index {
    grid-column: 1;
    position: static;
    padding: 0;
  }

  .cookies-page__index ol {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-3) var(--space-4);
  }

  .cookies-page__sections {
    grid-column: 1;
  }

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

  .cookies-section__number,
  .cookies-section__content {
    grid-column: 1;
  }

  .cookies-section__number {
    padding-top: 0;
  }

  .cookies-section__content--reading,
  .cookies-section__content--wide,
  .cookies-contact {
    max-width: 51.25rem;
  }
}

@media (max-width: 51.25rem) {
  .cookies-page__hero {
    padding-block: 4.5rem 3.5rem;
  }

  .cookies-page__hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cookies-page__hero-copy {
    grid-column: 1;
  }

  .cookies-duration-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 47.5rem) {
  .cookies-category-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cookies-page__index ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 40rem) {
  .cookies-page__hero {
    padding-block: 3.75rem 3rem;
  }

  .cookies-page__hero-copy h1 {
    font-size: clamp(2.75rem, 13vw, 4rem);
  }

  .cookies-page__effective-date {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-1);
  }

  .cookies-page__document-layout {
    padding-block: 3rem var(--section-space);
  }

  .cookies-page__index ol {
    grid-template-columns: minmax(0, 1fr);
  }

  .cookies-page__sections {
    gap: 3.5rem;
  }

  .cookies-section__content--definition,
  .cookies-section__content--management,
  .cookies-contact {
    padding: var(--space-5);
  }

  .cookies-category-card,
  .cookies-duration-card {
    padding: var(--space-5);
  }

  .cookies-contact__email {
    width: 100%;
  }
}

@media (hover: none) {
  .cookies-category-card:hover {
    border-color: var(--color-border);
    background: var(--color-surface);
  }
}

.privacy-page {
  overflow: clip;
}

.privacy-page section[id] {
  scroll-margin-top: 7rem;
}

.privacy-hero {
  padding-block: clamp(8rem, 12vw, 10rem) clamp(5rem, 8vw, 8rem);
}

.privacy-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  min-width: 0;
}

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

.privacy-hero__copy {
  width: 100%;
  max-width: 38.75rem;
}

.privacy-hero__copy > :last-child {
  margin-block-end: 0;
}

.privacy-hero__date {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  gap: var(--space-3);
  border-inline-start: 1px solid var(--color-border);
  padding-inline-start: var(--space-4);
}

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

.privacy-hero__date p {
  margin: 0;
  color: var(--color-platinum-bright);
  font-size: var(--text-small);
  font-weight: 700;
  letter-spacing: 0.03em;
}

.privacy-section-number,
.privacy-purpose-row__number,
.privacy-information-panel__number,
.privacy-right-card__number {
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
  line-height: var(--leading-small);
}

.privacy-hero__detail {
  display: flex;
  min-width: 0;
  justify-content: flex-end;
  padding-inline-end: clamp(1rem, 4vw, 5rem);
}

.privacy-hero__detail span {
  position: relative;
  display: block;
  width: 1px;
  height: min(19vw, 15rem);
  background: var(--color-border);
}

.privacy-hero__detail span::after {
  position: absolute;
  inset-inline-start: 50%;
  inset-block-end: -0.35rem;
  width: 0.7rem;
  height: 0.7rem;
  border: 1px solid var(--color-champagne-gold);
  background: var(--color-velvet-black);
  content: "";
  transform: translateX(-50%) rotate(45deg);
}

.privacy-index__grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 7fr);
  column-gap: calc(var(--space-6) * 2);
  align-items: start;
}

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

.privacy-index__intro {
  width: 100%;
  max-width: 32.5rem;
}

.privacy-index__intro > :last-child,
.privacy-section__heading > :last-child {
  margin-block-end: 0;
}

.privacy-index__panel {
  width: 100%;
  padding: var(--space-5);
}

.privacy-index__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none !important;
}

.privacy-index__list li {
  min-width: 0;
  border-bottom: 1px solid var(--color-border);
}

.privacy-index__list li:nth-last-child(-n + 2) {
  border-bottom: 0;
}

.privacy-index__list li:nth-child(odd) {
  border-inline-end: 1px solid var(--color-border);
}

.privacy-index__list a {
  display: flex;
  min-width: 0;
  min-height: 3.5rem;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  color: var(--color-platinum-bright);
  font-size: var(--text-small);
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
}

.privacy-index__list a span {
  flex: 0 0 auto;
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  letter-spacing: var(--tracking-meta);
}

.privacy-index__list a:hover,
.privacy-index__list a[aria-current="true"] {
  color: var(--color-primary-white);
  text-decoration: underline;
  text-decoration-color: var(--color-champagne-gold);
  text-underline-offset: 0.28em;
}

.privacy-section__track {
  width: 66.6667%;
  min-width: 0;
}

.privacy-section__heading {
  width: 100%;
  max-width: 42.5rem;
  margin-block-end: var(--space-6);
}

.privacy-section__heading--wide {
  width: 58.3333%;
  max-width: 42.5rem;
}

.privacy-section__heading--purpose {
  width: 70%;
  max-width: 40rem;
}

.privacy-section__heading--rights {
  width: 70%;
  max-width: 40rem;
}

.privacy-copy--legal {
  width: 100%;
  max-width: 42.5rem;
}

.privacy-contact-panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  max-width: 47.5rem;
  margin-block: var(--space-6);
  padding: var(--space-5);
}

.privacy-contact-panel > div {
  min-width: 0;
  padding-inline: var(--space-4);
  border-inline-end: 1px solid var(--color-border);
}

.privacy-contact-panel > div:first-child {
  padding-inline-start: 0;
}

.privacy-contact-panel > div:last-child {
  border-inline-end: 0;
  padding-inline-end: 0;
}

.privacy-contact-panel span {
  display: block;
  margin-block-end: var(--space-2);
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
  text-transform: uppercase;
}

.privacy-contact-panel strong,
.privacy-contact-panel a {
  display: block;
  color: var(--color-primary-white);
  font-size: 0.9rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.privacy-contact-panel a:hover {
  color: var(--color-champagne-light);
}

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

.privacy-help-list li {
  min-width: 0;
  position: relative;
  padding-inline-start: var(--space-5);
}

.privacy-help-list li::before {
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.7em;
  width: 0.45rem;
  height: 0.45rem;
  background: var(--color-champagne-gold);
  content: "";
  transform: rotate(45deg);
}

.privacy-data-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  width: 100%;
  margin-block-start: var(--space-7);
}

.privacy-data-cards > * {
  min-width: 0;
}

.privacy-data-card {
  min-height: 100%;
}

.privacy-data-card p:last-child {
  margin-block-end: 0;
}

.privacy-minimisation {
  width: 100%;
  max-width: 42.5rem;
  margin-block-start: var(--space-6);
  border-top: 1px solid var(--color-border);
  padding-block-start: var(--space-5);
}

.privacy-minimisation p {
  margin: 0;
}

.privacy-purpose__container {
  min-width: 0;
}

.privacy-purpose-list {
  width: 83.3333%;
  min-width: 0;
  border-top: 1px solid var(--color-border);
}

.privacy-purpose-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) minmax(0, 5fr) minmax(0, 3fr);
  column-gap: var(--space-4);
  width: 100%;
  min-width: 0;
  border-bottom: 1px solid var(--color-border);
  padding-block: var(--space-5);
}

.privacy-purpose-row > * {
  min-width: 0;
  margin: 0;
}

.privacy-purpose-row h3 {
  font-size: clamp(1.3rem, 1.7vw, 1.75rem);
}

.privacy-purpose-row p {
  color: var(--color-platinum-bright);
  font-size: 0.94rem;
  line-height: 1.6;
}

.privacy-purpose-row .privacy-legal-basis {
  align-self: start;
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.45;
  text-transform: uppercase;
}

.privacy-information-panels {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  width: 100%;
}

.privacy-information-panel {
  display: grid;
  grid-template-columns: minmax(3rem, 1fr) minmax(0, 7fr);
  column-gap: var(--space-4);
  width: 100%;
  padding: var(--space-5);
}

.privacy-information-panel > * {
  min-width: 0;
}

.privacy-information-panel h3,
.privacy-information-panel p {}

.privacy-information-panel p:last-child {
  margin-block-end: 0;
}

.privacy-information-panel--retention div > p:last-child {
  border-top: 1px solid var(--color-champagne-gold);
  padding-top: var(--space-4);
}

.privacy-rights__container {
  min-width: 0;
}

.privacy-rights-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 5fr)) minmax(0, 2fr);
  gap: var(--space-5);
  width: 83.3333%;
  min-width: 0;
  margin-block-start: var(--space-7);
}

.privacy-rights-grid > * {
  min-width: 0;
}

.privacy-right-card:nth-child(1) {
  grid-column: 1;
}

.privacy-right-card:nth-child(2) {
  grid-column: 2;
}

.privacy-right-card:nth-child(3) {
  grid-column: 1;
}

.privacy-right-card__number {
  display: block;
  margin-block-end: var(--space-4);
}

.privacy-right-card p:last-child {
  margin-block-end: 0;
}

.privacy-request-panel {
  width: 66.6667%;
  min-width: 0;
  max-width: 47.5rem;
  margin-block-start: var(--space-6);
  padding: var(--space-6);
}

.privacy-request-panel > :last-child,
.privacy-complaint > :last-child,
.privacy-copy--closing > :last-child,
.privacy-update-panel > :last-child {
  margin-block-end: 0;
}

.privacy-request-panel a {
  color: var(--color-champagne-light);
  font-weight: 700;
}

.privacy-complaint {
  width: 66.6667%;
  min-width: 0;
  max-width: 47.5rem;
  margin-block-start: var(--space-6);
}

.privacy-copy--closing {
  width: 100%;
  max-width: 42.5rem;
}

.privacy-cookies-link {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  margin-block: var(--space-6);
  border-block: 1px solid var(--color-border);
  padding-block: var(--space-5);
}

.privacy-cookies-link > * {
  min-width: 0;
}

.privacy-cookies-link > div {
  width: 70%;
}

.privacy-cookies-link p:last-child {
  margin-block-end: 0;
}

.privacy-cookies-link .button {
  flex: 0 0 auto;
}

.privacy-cookies-link .button span {
  transition: transform var(--transition-fast);
}

.privacy-cookies-link .button:hover span {
  transform: translateX(0.25rem);
}

.privacy-update-panel {
  width: 100%;
  max-width: 42.5rem;
  padding: var(--space-6);
}

.privacy-update-panel__date {
  color: var(--color-champagne-gold);
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: 0.04em;
}

@media (max-width: 64rem) {
  .privacy-hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .privacy-hero__detail {
    display: none;
  }

  .privacy-index__grid {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-5);
  }

  .privacy-section__track,
  .privacy-section__heading--wide,
  .privacy-section__heading--purpose,
  .privacy-section__heading--rights,
  .privacy-purpose-list,
  .privacy-rights-grid,
  .privacy-request-panel,
  .privacy-complaint {
    width: 100%;
  }

  .privacy-purpose-row {
    grid-template-columns: minmax(0, 4fr) minmax(0, 4fr);
    gap: var(--space-3) var(--space-5);
  }

  .privacy-purpose-row__number,
  .privacy-purpose-row h3 {
    grid-row: 1;
  }

  .privacy-purpose-row__number {
    grid-column: 1;
  }

  .privacy-purpose-row h3 {
    grid-column: 2;
  }

  .privacy-purpose-row > p {
    grid-column: 1 / -1;
  }

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

  .privacy-right-card:nth-child(1),
  .privacy-right-card:nth-child(2),
  .privacy-right-card:nth-child(3) {
    grid-column: auto;
  }
}

@media (max-width: 56.25rem) {
  .privacy-data-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .privacy-data-card:nth-child(3) {
    grid-column: 1 / -1;
  }
}

@media (max-width: 50rem) {
  .privacy-rights-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .privacy-contact-panel {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .privacy-contact-panel > div,
  .privacy-contact-panel > div:first-child,
  .privacy-contact-panel > div:last-child {
    border-inline-end: 0;
    border-bottom: 1px solid var(--color-border);
    padding-inline: 0;
    padding-bottom: var(--space-4);
  }

  .privacy-contact-panel > div:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
}

@media (max-width: 38.75rem) {
  .privacy-hero {
    padding-block: 7rem var(--space-9);
  }

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

  .privacy-index__list {
    grid-template-columns: minmax(0, 1fr);
  }

  .privacy-index__list li,
  .privacy-index__list li:nth-last-child(-n + 2),
  .privacy-index__list li:nth-child(odd) {
    border-inline-end: 0;
    border-bottom: 1px solid var(--color-border);
  }

  .privacy-index__list li:last-child {
    border-bottom: 0;
  }

  .privacy-index__list a {
    min-height: 3rem;
    padding-inline: 0;
  }

  .privacy-data-cards {
    grid-template-columns: minmax(0, 1fr);
  }

  .privacy-data-card:nth-child(3) {
    grid-column: auto;
  }

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

  .privacy-purpose-row__number,
  .privacy-purpose-row h3,
  .privacy-purpose-row > p {
    grid-column: 1;
    grid-row: auto;
  }

  .privacy-information-panel {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-3);
    padding: var(--space-5);
  }

  .privacy-request-panel,
  .privacy-update-panel {
    padding: var(--space-5);
  }

  .privacy-cookies-link {
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-4);
  }

  .privacy-cookies-link > div {
    width: 100%;
  }

  .privacy-cookies-link .button {
    min-height: 3rem;
  }
}

@media (hover: none) {
  .privacy-data-card:hover,
  .privacy-right-card:hover {
    border-color: var(--color-border);
    background: var(--color-surface);
    box-shadow: none;
    transform: none;
  }
}

.gallery-page {
  background: var(--color-velvet-black);
}

.gallery-page ul,
.gallery-page ol {
  list-style: none !important;
}

.gallery-section-number {
  color: var(--color-champagne-gold);
  margin-inline-end: var(--space-2);
}

.gallery-hero {
  padding-block: clamp(5rem, 10vw, 10rem) var(--section-space);
}

.gallery-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  column-gap: clamp(2rem, 6vw, 6rem);
  align-items: center;
  min-height: 45rem;
}

.gallery-hero__grid > * {
  min-width: 0;
  width: 100%;
}

.gallery-hero__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  max-width: 38.75rem;
}

.gallery-hero__content > * {
  min-width: 0;
  margin: 0;
}

.gallery-hero__content h1 {
  max-width: 11ch;
}

.gallery-hero__content .lead {
  max-width: 38rem;
}

.gallery-hero__actions {
  width: 100%;
}

.gallery-hero__legend {
  width: 100%;
  border-top: var(--border-default);
  padding-top: var(--space-4);
  color: var(--color-platinum-silver);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.gallery-hero__media,
.gallery-project__media {
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
  margin: 0;
}

.gallery-hero__media {
  align-self: end;
  aspect-ratio: 16 / 10;
}

.gallery-hero__media img,
.gallery-project__media img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-base);
}

.gallery-hero__media img {
  object-position: 72% center;
}

.gallery-context__intro {
  width: min(100%, 38.75rem);
}

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

.gallery-context__cards > * {
  min-width: 0;
  width: 100%;
}

.gallery-note {
  min-height: 100%;
}

.gallery-note__mark {
  display: inline-flex;
  width: 2rem;
  min-width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border: var(--border-default);
  color: var(--color-champagne-light);
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: 0.08em;
}

.gallery-note--green .gallery-note__mark {
  border-color: color-mix(in srgb, var(--color-felt-green) 72%, var(--color-platinum-silver));
  background: var(--color-felt-green);
  color: var(--color-primary-white);
}

.gallery-filter {
  padding-top: 0;
}

.gallery-filter__layout {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 5fr);
  justify-content: space-between;
  gap: clamp(2rem, 8vw, 10rem);
  border-bottom: var(--border-default);
  padding-bottom: var(--space-6);
}

.gallery-filter__layout > * {
  width: 100%;
  min-width: 0;
}

.gallery-filter__copy {
  max-width: 28.125rem;
}

.gallery-filter__controls {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-end;
  gap: var(--space-3);
}

.gallery-filter__controls > * {
  width: auto;
  min-width: 0;
}

.gallery-filter__button {
  min-height: 3rem;
  border: var(--border-default);
  border-radius: var(--radius-sm);
  padding: 0.65rem 1rem;
  color: var(--color-primary-white);
  background: transparent;
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.2;
  transition: border-color var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);
}

.gallery-filter__button:hover,
.gallery-filter__button:focus-visible {
  border-color: var(--color-platinum-bright);
}

.gallery-filter__button.is-active {
  border-color: var(--color-champagne-gold);
  color: var(--color-velvet-black);
  background: var(--color-champagne-gold);
}

.gallery-projects {
  padding-top: var(--space-8);
}

.gallery-projects__list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: clamp(5rem, 10vw, 10rem);
}

.gallery-projects__list > * {
  width: 100%;
  min-width: 0;
}

.gallery-project {
  display: grid;
  min-width: 0;
  gap: var(--space-6);
  padding-bottom: clamp(4rem, 8vw, 8rem);
  border-bottom: var(--border-default);
}

.gallery-project > * {
  min-width: 0;
  width: 100%;
}

.gallery-project__copy {
  max-width: 33.75rem;
}

.gallery-project__copy h2,
.gallery-project__live-intro h2 {
  max-width: 15ch;
}

.gallery-project--corporate {
  grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 4fr);
  align-items: start;
}

.gallery-project--corporate .gallery-project__copy {
  grid-column: 1 / 2;
}

.gallery-project--corporate .gallery-project__media {
  grid-column: 3 / 4;
  grid-row: 1 / 3;
}

.gallery-project--corporate .gallery-project__details {
  grid-column: 1 / 3;
}

.gallery-project__media--gala,
.gallery-project__media--private {
  aspect-ratio: 4 / 5;
}

.gallery-project__media--gala img {
  object-position: 58% center;
}

.gallery-project--private {
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  column-gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
}

.gallery-project--private .gallery-project__media {
  grid-column: 1 / 2;
  grid-row: 1 / 3;
}

.gallery-project--private .gallery-project__copy,
.gallery-project--private .gallery-project__details {
  grid-column: 2 / 3;
}

.gallery-project__media--private img {
  object-position: center center;
}

.gallery-project__details {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  max-width: 43rem;
}

.gallery-project__details > * {
  min-width: 0;
  width: 100%;
  margin: 0;
}

.gallery-detail {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-4);
  border-top: var(--border-default);
  padding-top: var(--space-4);
}

.gallery-detail > * {
  min-width: 0;
}

.gallery-detail__number {
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
}

.gallery-detail h3 {
  margin-bottom: var(--space-2);
}

.gallery-detail p {
  margin: 0;}

.gallery-detail--mocktail .gallery-detail__number {
  color: var(--color-success-mint);
}

.gallery-project--live {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
  row-gap: var(--space-7);
}

.gallery-project__live-intro {
  grid-column: 1 / 8;
  max-width: 37.5rem;
}

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

.gallery-project__modules > * {
  min-width: 0;
  width: 100%;
}

.gallery-live-module {
  grid-column: span 3;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
  padding: var(--space-5);
  transition: border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base);
}

.gallery-live-module > * {
  min-width: 0;
  margin: 0;
}

.gallery-live-module--featured {
  grid-column: span 6;
  background: var(--color-felt-green);
  border-color: color-mix(in srgb, var(--color-felt-green) 52%, var(--color-platinum-bright));
}

.gallery-live-module p:not(.meta) {
  max-width: 24rem;
}

.gallery-project__live-link {
  grid-column: 1 / 8;
  width: max-content;
}

.gallery-process__intro {
  width: min(100%, 37.5rem);
}

.gallery-process__intro .lead {
  max-width: 37.5rem;
}

.gallery-process__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: var(--space-7);
}

.gallery-process__steps > * {
  min-width: 0;
  width: 100%;
}

.gallery-step {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: 0 var(--space-6);
  border-inline-start: var(--border-default);
}

.gallery-step:first-child {
  padding-inline-start: 0;
  border-inline-start: 0;
}

.gallery-step > * {
  min-width: 0;
  margin: 0;
}

.gallery-step__number {
  color: var(--color-champagne-gold);
  font-family: var(--font-heading);
  font-size: clamp(2.4rem, 4vw, 4.5rem);
  font-weight: 700;
  letter-spacing: var(--tracking-h2);
  line-height: 1;
}

.gallery-step p {}

.gallery-standard > .container > h2 {
  max-width: 18ch;
}

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

.gallery-standard__panels > * {
  min-width: 0;
  width: 100%;
}

.gallery-standard__panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
  padding: clamp(1.5rem, 3vw, 3rem);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.gallery-standard__panel > * {
  min-width: 0;
  margin: 0;
}

.gallery-standard__panel h3,
.gallery-standard__panel p:not(.eyebrow) {
  max-width: 31rem;
}

.gallery-standard__panel--mocktail {
  border-inline-start-color: var(--color-felt-green);
}

.gallery-standard__note {
  width: min(100%, 42.5rem);
  margin-top: var(--space-5);
  color: var(--color-platinum-bright);
}

.gallery-cta {
  padding-top: var(--space-8);
}

.gallery-cta__panel {
  display: flex;
  width: min(100%, 53.333rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  margin-inline: auto;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
  padding: clamp(2.5rem, 6vw, 5rem);
}

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

.gallery-cta__panel h2,
.gallery-cta__panel > p:not(.eyebrow) {
  max-width: 38.75rem;
}

.gallery-cta__actions {
  width: 100%;
}

@media (hover: hover) {
  .gallery-hero__media:hover img,
  .gallery-project__media:hover img {
    transform: scale(1.025);
  }

  .gallery-live-module:hover,
  .gallery-standard__panel:hover {
    border-color: var(--color-platinum-bright);
    background: var(--color-graphite-raised);
  }

  .gallery-live-module--featured:hover {
    background: color-mix(in srgb, var(--color-felt-green) 88%, black);
  }
}

@media (max-width: 62.5rem) {
  .gallery-hero__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: var(--space-6);
    min-height: auto;
  }

  .gallery-hero__content {
    grid-column: span 4;
  }

  .gallery-hero__media {
    grid-column: span 4;
    align-self: center;
  }

  .gallery-project--corporate {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .gallery-project--corporate .gallery-project__copy {
    grid-column: 1 / 6;
  }

  .gallery-project--corporate .gallery-project__media {
    grid-column: 6 / 9;
    grid-row: 1 / 3;
    aspect-ratio: 3 / 4;
  }

  .gallery-project--corporate .gallery-project__details {
    grid-column: 1 / 6;
  }

  .gallery-project--private {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: var(--space-6);
  }

  .gallery-project--private .gallery-project__media {
    grid-column: 1 / 5;
  }

  .gallery-project--private .gallery-project__copy,
  .gallery-project--private .gallery-project__details {
    grid-column: 5 / 9;
  }
}

@media (max-width: 56.25rem) {
  .gallery-context__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gallery-context__cards > :last-child {
    grid-column: 1 / -1;
  }

  .gallery-filter__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .gallery-filter__controls {
    justify-content: flex-start;
  }

  .gallery-project--live {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .gallery-project__live-intro {
    grid-column: 1 / 7;
  }

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

  .gallery-live-module--featured,
  .gallery-live-module {
    grid-column: span 4;
  }

  .gallery-project__modules > :last-child {
    grid-column: 1 / -1;
  }

  .gallery-project__live-link {
    grid-column: 1 / 7;
  }

  .gallery-process__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: var(--space-6);
  }

  .gallery-step:nth-child(3) {
    grid-column: 1 / -1;
    padding-inline-start: 0;
    border-inline-start: 0;
    border-top: var(--border-default);
    padding-top: var(--space-6);
  }
}

@media (max-width: 45rem) {
  .gallery-hero {
    padding-top: var(--space-9);
  }

  .gallery-hero__grid,
  .gallery-project--corporate,
  .gallery-project--private {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .gallery-hero__content,
  .gallery-hero__media,
  .gallery-project--corporate .gallery-project__copy,
  .gallery-project--corporate .gallery-project__media,
  .gallery-project--corporate .gallery-project__details,
  .gallery-project--private .gallery-project__media,
  .gallery-project--private .gallery-project__copy,
  .gallery-project--private .gallery-project__details {
    grid-column: 1;
    grid-row: auto;
  }

  .gallery-hero__content {
    max-width: none;
  }

  .gallery-hero__content h1 {
    max-width: 12ch;
    font-size: clamp(2.8rem, 11vw, 3.4rem);
  }

  .gallery-hero__media {
    aspect-ratio: 4 / 3;
  }

  .gallery-project__copy,
  .gallery-project__live-intro {
    max-width: none;
  }

  .gallery-project__copy h2,
  .gallery-project__live-intro h2 {
    max-width: 17ch;
    font-size: clamp(2.2rem, 9vw, 2.7rem);
  }

  .gallery-project__media--gala,
  .gallery-project__media--private {
    aspect-ratio: 4 / 5;
  }

  .gallery-project__details {
    max-width: none;
  }

  .gallery-project--live {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .gallery-project__live-intro,
  .gallery-project__modules,
  .gallery-project__live-link {
    grid-column: 1;
  }

  .gallery-project__modules {
    grid-template-columns: minmax(0, 1fr);
  }

  .gallery-live-module,
  .gallery-live-module--featured,
  .gallery-project__modules > :last-child {
    grid-column: 1;
  }

  .gallery-project__live-link {
    width: 100%;
  }

  .gallery-process__steps,
  .gallery-standard__panels {
    grid-template-columns: minmax(0, 1fr);
  }

  .gallery-step,
  .gallery-step:nth-child(3) {
    grid-column: 1;
    border-inline-start: 0;
    border-top: var(--border-default);
    padding: var(--space-5) 0 0;
  }

  .gallery-step:first-child {
    border-top: 0;
    padding-top: 0;
  }
}

@media (max-width: 40rem) {
  .gallery-context__cards {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
    margin-top: var(--space-6);
  }

  .gallery-context__cards > :last-child {
    grid-column: 1;
  }

  .gallery-filter__button {
    min-height: 2.75rem;
  }

  .gallery-detail {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }

  .gallery-standard__panels {
    gap: var(--space-4);
    margin-top: var(--space-6);
  }

  .gallery-cta__panel {
    width: 100%;
    padding: var(--space-6) var(--space-5);
  }

  .gallery-cta__panel h2 {
    font-size: clamp(2.3rem, 9vw, 2.8rem);
  }

  .gallery-cta__actions {
    align-items: flex-start;
  }
}

@media (hover: none) {
  .gallery-live-module:hover,
  .gallery-standard__panel:hover {
    border-color: var(--color-border);
    background: var(--color-graphite-panel);
  }

  .gallery-live-module--featured:hover {
    background: var(--color-felt-green);
  }
}

.kontakt-page {
  overflow: clip;
}

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

.kontakt-hero {
  min-height: 41.25rem;
  padding-block: var(--space-10);
}

.kontakt-hero::before,
.kontakt-hero::after {
  position: absolute;
  width: 20vw;
  height: 1px;
  background: var(--color-border);
  content: "";
}

.kontakt-hero::before { top: 24%; right: 0; }
.kontakt-hero::after { bottom: 19%; left: 0; }

.kontakt-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 4fr);
  column-gap: 8.333%;
  align-items: center;
}

.kontakt-hero__grid > * { min-width: 0; }

.kontakt-hero__content {
  width: 100%;
  max-width: 38.75rem;
}

.kontakt-hero__actions,
.kontakt-final__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}

.kontakt-hero__actions > *,
.kontakt-final__actions > * { min-width: 0; }

.kontakt-hero__note {
  max-width: 34rem;
  margin-bottom: 0;
  color: var(--color-text-muted);
  font-size: var(--text-small);
}

.kontakt-hero__panel {
  display: flex;
  min-width: 0;
  min-height: 22rem;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-4);
  border: var(--border-default);
  background: var(--color-surface);
  padding: var(--space-7);
}

.kontakt-hero__panel > * { min-width: 0; }
.kontakt-hero__panel p { margin: 0; }
.kontakt-hero__panel > .meta { color: var(--color-platinum-silver); }
.kontakt-hero__panel > p:last-child { max-width: 15rem; color: var(--color-platinum-bright); font-family: var(--font-heading); font-size: clamp(1.5rem, 2vw, 2rem); line-height: 1.1; }

.kontakt-hero__number,
.kontakt-form__number {
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
}

.kontakt-hero__diamond {
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid var(--color-champagne-gold);
  transform: rotate(45deg);
}

.kontakt-channels {
  background: var(--color-surface);
}

.kontakt-channels__intro,
.kontakt-scope__intro,
.kontakt-form-section__intro,
.kontakt-process__intro {
  width: 100%;
  max-width: 38.75rem;
}

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

.kontakt-channels__grid > * { min-width: 0; }

.kontakt-channel-card {
  min-height: 27rem;
  gap: var(--space-4);
  padding: var(--space-6);
}

.kontakt-channel-card > * { min-width: 0; }
.kontakt-channel-card p,
.kontakt-channel-card h3 { margin: 0; }
.kontakt-channel-card .button { margin-top: auto; }

.kontakt-channel-card__number,
.kontakt-guide-item__number,
.kontakt-process__step > span {
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
}

.kontakt-channel-card__value {
  overflow-wrap: anywhere;
  color: var(--color-primary-white);
  font-size: clamp(1.15rem, 1.7vw, 1.45rem);
  font-weight: 700;
  line-height: 1.25;
}

.kontakt-channel-card__address {
  margin-top: auto;
  color: var(--color-primary-white);
  font-style: normal;
  font-weight: 700;
  line-height: 1.5;
}

.kontakt-brief-guide__intro {
  width: 100%;
  max-width: 36.25rem;
}

.kontakt-brief-guide__list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin-top: var(--space-7);
  border-top: var(--border-default);
}

.kontakt-guide-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) minmax(0, 5fr) minmax(0, 3fr);
  column-gap: var(--space-4);
  align-items: start;
  border-bottom: var(--border-default);
  padding-block: var(--space-6);
}

.kontakt-guide-item > * { min-width: 0; }
.kontakt-guide-item h3,
.kontakt-guide-item p { margin: 0; }
.kontakt-guide-item p { grid-column: 3;color: var(--color-text-muted); }
.kontakt-guide-item .button { grid-column: 3; width: max-content; margin-top: var(--space-4); }
.kontakt-guide-item--accent .kontakt-guide-item__number { border-left: 3px solid var(--color-felt-green); padding-left: var(--space-2); }

.kontakt-scope {
  background: var(--color-surface);
}

.kontakt-scope__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3fr) minmax(0, 4fr);
  gap: var(--space-5);
  align-items: stretch;
  margin-top: var(--space-7);
}

.kontakt-scope__grid > * { min-width: 0; }

.kontakt-scope-card {
  min-height: 25rem;
  gap: var(--space-4);
  padding: var(--space-6);
}

.kontakt-scope-card > * { min-width: 0; }
.kontakt-scope-card h3,
.kontakt-scope-card p { margin: 0; }
.kontakt-scope-card p { color: var(--color-text-muted); }
.kontakt-scope-card__link { margin-top: auto; }
.kontakt-scope-card--green { border-color: color-mix(in srgb, var(--color-felt-green) 72%, var(--color-platinum-silver)); background: var(--color-felt-green); }
.kontakt-scope-card--green p { color: var(--color-primary-white); }
.kontakt-scope-card__badges { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-2); }
.kontakt-scope-card__badges > * { min-width: 0; }

.kontakt-form-section {
  background: var(--color-surface);
}

.kontakt-form {
  position: relative;
  width: calc(91.666% - var(--space-4));
  margin-top: var(--space-7);
  padding: var(--space-7);
}

.kontakt-form__number {
  display: block;
  margin-bottom: var(--space-5);
}

.kontakt-form__status:empty { display: none; }
.kontakt-form__status { margin-bottom: var(--space-5); font-weight: 700; }
.kontakt-form__status.status-success { color: var(--color-success-mint); }
.kontakt-form__status.status-error { color: var(--color-error-coral); }

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

.kontakt-form__fieldset > * { min-width: 0; }
.kontakt-form__fieldset:last-of-type { margin-bottom: var(--space-6); }
.kontakt-form__field-note { margin: 0; max-width: 42rem; color: var(--color-text-muted); font-size: var(--text-small); }

.kontakt-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5) var(--space-4);
}

.kontakt-form__grid > * { min-width: 0; }

.kontakt-form__field {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.kontakt-form__field > * { min-width: 0; }
.kontakt-form__field label { margin: 0; }
.kontakt-form__field label span { color: var(--color-text-muted); font-weight: 400; }
.kontakt-form__error { min-height: 1.35em; color: var(--color-error-coral); font-size: var(--text-small); line-height: var(--leading-small); }
.kontakt-form__field--full { margin-top: var(--space-5); }

.kontakt-form__choices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3) var(--space-5);
}

.kontakt-form__choices > * { min-width: 0; }

.kontakt-form__choice,
.kontakt-form__consent {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-3);
  margin: 0;
  color: var(--color-platinum-bright);
  font-size: var(--text-small);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5;
}

.kontakt-form__choice > *,
.kontakt-form__consent > * { min-width: 0; }
.kontakt-form__choice input,
.kontakt-form__consent input { flex: 0 0 auto; margin-top: 0.25rem; }
.kontakt-form__choice small { display: block; color: var(--color-champagne-light); }

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

.kontakt-form__submit > * { min-width: 0; }
.kontakt-form__submit p {margin: 0; color: var(--color-text-muted); font-size: var(--text-small); }

.kontakt-process__steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.kontakt-process__steps::before {
  position: absolute;
  top: 0.45rem;
  right: 16.666%;
  left: 16.666%;
  height: 1px;
  background: var(--color-border);
  content: "";
}

.kontakt-process__steps > * { min-width: 0; }
.kontakt-process__step { position: relative; z-index: 1; background: var(--color-background); padding-right: var(--space-4); }
.kontakt-process__step h3 { margin-top: var(--space-5); }
.kontakt-process__step p {color: var(--color-text-muted); }

.kontakt-email {
  background: var(--color-surface);
}

.kontakt-email__panel {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
  gap: var(--space-7);
  width: calc(66.666% - var(--space-4));
  margin-inline: auto;
  padding: var(--space-7);
}

.kontakt-email__panel > * { min-width: 0; }
.kontakt-email__message p {}
.kontakt-email__message .meta { margin-bottom: var(--space-2); }
.kontakt-email__address { overflow-wrap: anywhere; color: var(--color-champagne-gold); font-size: clamp(1.25rem, 2.2vw, 1.8rem); font-weight: 700; line-height: 1.25; text-decoration-color: var(--color-champagne-gold); }
.kontakt-email__tips h3 { margin-bottom: var(--space-5); }
.kontakt-email__tips ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); margin: 0; padding: 0; list-style: none !important; }
.kontakt-email__tips li { position: relative; min-width: 0; padding-left: var(--space-4); color: var(--color-text-muted); font-size: var(--text-small); }
.kontakt-email__tips li::before { position: absolute; top: 0.42em; left: 0; width: 0.42rem; height: 0.42rem; border: 1px solid var(--color-champagne-gold); content: ""; transform: rotate(45deg); }

.kontakt-final {
  padding-block: var(--space-10);
}

.kontakt-final__content {
  display: flex;
  width: calc(58.333% - var(--space-4));
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  margin-inline: auto;
  text-align: center;
}

.kontakt-final__content > * { min-width: 0; }
.kontakt-final__content .eyebrow,
.kontakt-final__content h2,
.kontakt-final__content .lead { margin: 0; }
.kontakt-final__content .lead { max-width: 33.75rem; }
.kontakt-final__line { width: 3.5rem; height: 1px; background: var(--color-champagne-gold); }
.kontakt-final__actions { justify-content: center; margin: var(--space-2) 0 0; }

@media (max-width: 61.25rem) {
  .kontakt-hero { min-height: auto; padding-block: var(--space-9); }
  .kontakt-hero__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 3fr); gap: var(--space-5); }
  .kontakt-hero__panel { min-height: 18rem; padding: var(--space-5); }
  .kontakt-scope__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 3fr); }
  .kontakt-scope-card--green { grid-column: 1 / -1; }
}

@media (max-width: 56.25rem) {
  .kontakt-guide-item { grid-template-columns: minmax(0, 1fr) minmax(0, 7fr); row-gap: var(--space-3); }
  .kontakt-guide-item h3,
  .kontakt-guide-item p,
  .kontakt-guide-item .button { grid-column: 2; }
  .kontakt-guide-item .button { margin-top: var(--space-2); }
}

@media (max-width: 53.75rem) {
  .kontakt-channels__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kontakt-channel-card:last-child { grid-column: 1 / -1; }
  .kontakt-channel-card:last-child { min-height: 23rem; }
}

@media (max-width: 51.25rem) {
  .kontakt-form { width: 100%; }
  .kontakt-form__grid { grid-template-columns: minmax(0, 1fr); }
  .kontakt-form__choices { grid-template-columns: minmax(0, 1fr); }
  .kontakt-process__steps { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .kontakt-process__steps::before { top: 0; bottom: 0; left: 0.34rem; right: auto; width: 1px; height: auto; }
  .kontakt-process__step { padding: 0 0 var(--space-6) var(--space-6); }
  .kontakt-process__step:last-child { padding-bottom: 0; }
  .kontakt-process__step > span { position: absolute; top: 0; left: 0; background: var(--color-background); }
  .kontakt-process__step h3 { margin-top: 0; }
  .kontakt-email__panel { grid-template-columns: minmax(0, 1fr); width: 100%; gap: var(--space-6); }
}

@media (max-width: 45rem) {
  .kontakt-hero__grid { grid-template-columns: minmax(0, 1fr); }
  .kontakt-hero__content { max-width: 100%; }
  .kontakt-hero__panel { min-height: auto; }
  .kontakt-scope__grid { grid-template-columns: minmax(0, 1fr); }
  .kontakt-scope-card--green { grid-column: auto; }
}

@media (max-width: 40rem) {
  .kontakt-hero { padding-block: var(--space-8); }
  .kontakt-hero__actions,
  .kontakt-final__actions { flex-direction: column; align-items: stretch; }
  .kontakt-hero__actions .button,
  .kontakt-final__actions .button { width: 100%; }
  .kontakt-channels__grid { grid-template-columns: minmax(0, 1fr); }
  .kontakt-channel-card:last-child { grid-column: auto; }
  .kontakt-channel-card { min-height: 0; padding: var(--space-5); }
  .kontakt-guide-item { display: flex; flex-direction: column; gap: var(--space-3); padding-block: var(--space-5); }
  .kontakt-guide-item h3,
  .kontakt-guide-item p,
  .kontakt-guide-item .button { margin: 0; }
  .kontakt-guide-item .button { width: max-content; margin-top: var(--space-2); }
  .kontakt-scope-card { min-height: 15rem; padding: var(--space-5); }
  .kontakt-form { padding: var(--space-5); }
  .kontakt-form__fieldset { padding: var(--space-4); }
  .kontakt-email__panel { padding: var(--space-5); }
  .kontakt-email__tips ul { grid-template-columns: minmax(0, 1fr); }
  .kontakt-final { padding-block: var(--space-9); }
  .kontakt-final__content { width: 100%; }
}

@media (hover: hover) {
  .kontakt-channel-card:hover,
  .kontakt-scope-card:hover { border-color: var(--color-platinum-bright); transform: scale(1.02); }
  .kontakt-scope-card--green:hover { background: color-mix(in srgb, var(--color-felt-green) 88%, var(--color-graphite-raised)); }
  .kontakt-hero__actions .button:hover span,
  .kontakt-final__actions .button:hover span { transform: translateX(4px); }
  .kontakt-hero__actions .button span,
  .kontakt-final__actions .button span { transition: transform var(--transition-fast); }
}

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

.features-page {
  overflow: clip;
}

.features-page .section {
  padding-block: clamp(6rem, 9vw, 10rem);
}

.features-page .features-hero {
  padding-block: clamp(4rem, 7vw, 7rem) clamp(6rem, 9vw, 10rem);
}

.features-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
  align-items: center;
  min-height: 47.5rem;
}

.features-hero__content {
  grid-column: 1 / span 1;
  min-width: 0;
  max-width: 38.75rem;
}

.features-hero__content h1 {
  max-width: 36rem;
}

.features-hero__content > .lead {
  max-width: 38.75rem;
}

.features-hero__actions {
  margin-block: var(--space-6);
}

.features-hero__actions .button span,
.features-final__actions .button span {
  transition: transform var(--transition-fast);
}

.features-fact-strip {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2) var(--space-3);
  margin: 0;
  padding: 0;
  color: var(--color-platinum-silver);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: var(--tracking-meta);
  line-height: var(--leading-small);
  text-transform: uppercase;
  list-style: none !important;
}

.features-fact-strip > li {
  min-width: 0;
}

.features-fact-strip > li:not(:last-child)::after {
  margin-inline-start: var(--space-3);
  color: var(--color-champagne-gold);
  content: "·";
}

.features-hero__media {
  grid-column: 3 / span 1;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  background: var(--color-surface);
}

.features-hero__media img {
  width: 100%;
  height: clamp(31rem, 48vw, 41rem);
  object-fit: cover;
  object-position: 68% center;
  transition: transform var(--transition-base);
}

.features-stage__intro {
  width: min(100%, 38.75rem);
}

.features-stage__intro .lead {
  max-width: 35rem;
}

.features-stage__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: var(--space-5);
  margin-top: var(--space-8);
}

.features-stage-card {
  display: grid;
  grid-template-columns: minmax(2rem, 0.18fr) minmax(0, 1fr);
  min-width: 0;
  align-items: start;
  gap: var(--space-4);
  border-top: var(--border-default);
  padding: var(--space-5) 0 0;
}

.features-stage-card--panel {
  border: var(--border-default);
  background: var(--color-surface);
  padding: var(--space-6);
  transition: border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base), box-shadow var(--transition-base);
}

.features-stage-card__number,
.features-role__number,
.features-step__number {
  margin: 0;
  color: var(--color-champagne-gold);
  font-size: var(--text-meta);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
  line-height: 1.35;
}

.features-stage-card__copy {
  min-width: 0;
}

.features-stage-card__copy h3 {
  max-width: 20rem;
}

.features-stage-card__copy p {}

.features-stage-card__statement {
  color: var(--color-platinum-bright);
  font-weight: 700;
}

.features-stage-card__badges {
  margin-bottom: var(--space-4);
}

.features-mobility__heading {
  width: min(100%, 35rem);
  margin-bottom: var(--space-8);
}

.features-mobility__layout {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 5fr);
  align-items: start;
}

.features-mobility__media {
  grid-column: 1 / span 1;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
}

.features-mobility__media img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center center;
}

.features-mobility__modules {
  display: flex;
  grid-column: 3 / span 1;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.features-config {
  min-width: 0;
  border-top: var(--border-default);
  padding: var(--space-5) 0 0;
}

.features-config h3,
.features-config p {}

.features-config--panel {
  border: var(--border-default);
  background: var(--color-surface);
  padding: var(--space-6);
}

.features-config__top {
  margin-bottom: var(--space-4);
}

.features-mobility__closing {
  width: min(100%, 38.75rem);
  margin: var(--space-8) 0 0;
}

.features-mobility__closing a {
  color: var(--color-platinum-bright);
  text-decoration-color: var(--color-border);
}

.features-dealers__layout {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
  align-items: start;
}

.features-dealers__intro {
  grid-column: 1 / span 1;
  min-width: 0;
}

.features-dealers__intro .lead {
  max-width: 37.5rem;
}

.features-dealers__sequence {
  display: flex;
  grid-column: 3 / span 1;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.features-role {
  display: grid;
  grid-template-columns: minmax(2.5rem, 1fr) minmax(0, 5fr);
  min-width: 0;
  gap: var(--space-4);
  border-top: var(--border-default);
  padding: var(--space-5) 0 0;
}

.features-role__copy {
  min-width: 0;
}

.features-role__copy h3,
.features-role__copy p {}

.features-role--panel {
  border: var(--border-default);
  background: var(--color-surface);
  padding: var(--space-6);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.features-role--panel .button--text {
  margin-top: var(--space-2);
}

.features-mocktail {
  padding-block: clamp(6rem, 8vw, 8rem);
  background: var(--color-felt-green);
}

.features-mocktail__inner {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-8);
}

.features-mocktail__intro {
  width: min(100%, 40.625rem);
}

.features-mocktail__intro .eyebrow {
  color: var(--color-primary-white);
}

.features-mocktail__intro .lead {
  max-width: 40.625rem;
}

.features-mocktail__cards {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 5fr);
  align-items: start;
}

.features-mocktail-card {
  position: relative;
  min-width: 0;
  border-top: 1px solid rgba(247, 245, 240, 0.46);
  padding-top: var(--space-5);
}

.features-mocktail-card:first-child {
  grid-column: 1 / span 1;
}

.features-mocktail-card:last-child {
  grid-column: 3 / span 1;
}

.features-mocktail-card h3,
.features-mocktail-card p {}

.features-mocktail-card .button--text {
  color: var(--color-primary-white);
  text-decoration-color: rgba(247, 245, 240, 0.5);
}

.features-diamond {
  display: block;
  width: 0.75rem;
  height: 0.75rem;
  margin-bottom: var(--space-5);
  border: 1px solid var(--color-champagne-light);
  transform: rotate(45deg);
}

.features-formats__intro {
  width: min(100%, 36.25rem);
}

.features-formats__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: var(--space-5);
  margin-top: var(--space-8);
}

.features-format-card {
  display: flex;
  min-width: 0;
  min-height: 25rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  border: var(--border-default);
  padding: var(--space-7);
  transition: border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base), box-shadow var(--transition-base);
}

.features-format-card--corporate {
  background: var(--color-surface);
}

.features-format-card--private {
  background: var(--color-velvet-black);
}

.features-format-card h3,
.features-format-card p {
  margin: 0;}

.features-format-card .button--text {
  margin-top: auto;
}

.features-formats__note {
  width: min(100%, 42.5rem);
  margin: var(--space-7) 0 0;
  border-top: var(--border-default);
  padding-top: var(--space-5);
  color: var(--color-platinum-bright);
}

.features-detail__layout {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr);
  align-items: start;
}

.features-detail__intro {
  grid-column: 1 / span 1;
  min-width: 0;
}

.features-detail__intro p {}

.features-detail__visual {
  grid-column: 3 / span 1;
  min-width: 0;
}

.features-detail__media {
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
}

.features-detail__media img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: center center;
  transition: transform var(--transition-base);
}

.features-detail__captions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: var(--space-4);
  margin-top: var(--space-5);
}

.features-caption {
  min-width: 0;
}

.features-caption p {}

.features-caption .eyebrow {
  margin-bottom: var(--space-2);
}

.features-caption__marker {
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  margin-right: var(--space-2);
  background: var(--color-felt-green);
  transform: rotate(45deg);
}

.features-process__intro {
  width: min(100%, 38.75rem);
}

.features-process__intro .lead {
  max-width: 38.75rem;
}

.features-process__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  margin-top: var(--space-8);
  border-top: var(--border-default);
}

.features-step {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  border-right: var(--border-default);
  padding: var(--space-6);
}

.features-step:first-child {
  border-left: var(--border-default);
}

.features-step--panel {
  background: var(--color-surface);
}

.features-step h3,
.features-step p {
  margin: 0;}

.features-step .button {
  width: 100%;
  margin-top: auto;
}

.features-faq__container {
  width: min(100% - (var(--container-padding) * 2), 60rem);
}

.features-faq__intro {
  width: min(100%, 33.75rem);
}

.features-faq__list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  margin-top: var(--space-7);
  border: var(--border-default);
  background: var(--color-surface);
}

.features-faq-item {
  min-width: 0;
  border-bottom: var(--border-default);
}

.features-faq-item:last-child {
  border-bottom: 0;
}

.features-faq-item h3 {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1rem;
  letter-spacing: 0;
}

.features-faq-trigger {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 3.75rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-5);
  color: var(--color-primary-white);
  background: transparent;
  font-weight: 700;
  text-align: left;
}

.features-faq-trigger > span {
  flex: 0 0 auto;
  color: var(--color-champagne-gold);
  font-size: 1.4rem;
  line-height: 1;
  transition: transform var(--transition-base);
}

.features-faq-trigger[aria-expanded="true"] > span {
  transform: rotate(180deg);
}

.features-faq-answer {
  min-width: 0;
  padding: 0 var(--space-5) var(--space-5);
}

.features-faq-answer p {
  width: min(100%, 38.75rem);
  margin: 0;
  color: var(--color-platinum-bright);
}

.features-final__panel {
  display: flex;
  min-width: 0;
  justify-content: center;
  border: var(--border-default);
  background: var(--color-surface);
  padding: clamp(4rem, 8vw, 6rem) var(--space-6);
}

.features-final__content {
  display: flex;
  width: min(100%, 40rem);
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-5);
  text-align: center;
}

.features-final__content h2,
.features-final__content p {
  margin: 0;
}

.features-final__content p:not(.eyebrow) {
  max-width: 35rem;
}

.features-final__actions {
  justify-content: center;
}

@media (hover: hover) {
  .features-hero__media:hover img,
  .features-detail__media:hover img {
    transform: scale(1.025);
  }

  .features-stage-card--panel:hover,
  .features-format-card:hover {
    border-color: var(--color-platinum-bright);
    background: var(--color-surface-raised);
    box-shadow: var(--shadow-raised);
    transform: scale(1.02);
  }

  .features-role--panel:hover {
    border-color: var(--color-platinum-bright);
    background: var(--color-surface-raised);
  }

  .features-hero__actions .button:hover span,
  .features-final__actions .button:hover span {
    transform: translateX(0.25rem);
  }
}

@media (max-width: 64rem) {
  .features-hero__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    align-items: start;
    gap: var(--space-7) var(--space-5);
    min-height: 0;
  }

  .features-hero__content {
    grid-column: 1 / span 7;
  }

  .features-hero__media {
    grid-column: 3 / span 6;
  }

  .features-hero__media img {
    height: auto;
    aspect-ratio: 16 / 10;
  }

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

  .features-stage-card:nth-child(3) {
    grid-column: 1 / -1;
  }

  .features-dealers__layout {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }

  .features-dealers__intro,
  .features-dealers__sequence {
    grid-column: 1 / -1;
  }

  .features-detail__layout {
    grid-template-columns: 1fr;
    gap: var(--space-7);
  }

  .features-detail__intro,
  .features-detail__visual {
    grid-column: 1 / -1;
  }

  .features-detail__intro {
    width: min(100%, 31.25rem);
  }
}

@media (max-width: 61.25rem) {
  .features-process__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .features-step:nth-child(3) {
    border-left: var(--border-default);
    border-top: var(--border-default);
  }

  .features-step:nth-child(4) {
    border-top: var(--border-default);
  }
}

@media (max-width: 60rem) {
  .features-mobility__layout {
    grid-template-columns: minmax(0, 3fr) minmax(0, 5fr);
    gap: var(--space-5);
  }

  .features-mobility__media {
    grid-column: 1 / span 1;
  }

  .features-mobility__modules {
    grid-column: 2 / span 1;
  }
}

@media (max-width: 56.25rem) {
  .features-stage__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 56.25rem) {
  .features-detail__captions {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .features-caption {
    border-top: var(--border-default);
    padding-block: var(--space-4);
  }

  .features-caption:last-child {
    border-bottom: var(--border-default);
  }

  .features-caption p {margin: 0;
  }
}

@media (max-width: 51.25rem) {
  .features-formats__cards {
    grid-template-columns: 1fr;
  }

  .features-format-card {
    min-height: 17.5rem;
  }
}

@media (max-width: 47.5rem) {
  .features-mocktail__cards {
    grid-template-columns: 1fr;
    gap: var(--space-6);
  }

  .features-mocktail-card:first-child,
  .features-mocktail-card:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 40rem) {
  .features-page .section {
    padding-block: clamp(4rem, 12vw, 5rem);
  }

  .features-page .features-hero {
    padding-top: var(--space-8);
  }

  .features-hero__grid {
    grid-template-columns: 1fr;
    gap: var(--space-7);
  }

  .features-hero__content,
  .features-hero__media {
    grid-column: 1 / -1;
    max-width: none;
  }

  .features-hero__media img {
    aspect-ratio: 4 / 5;
    object-position: 67% center;
  }

  .features-fact-strip {
    flex-direction: column;
    align-items: flex-start;
  }

  .features-fact-strip > li:not(:last-child)::after {
    display: none;
  }

  .features-stage__cards,
  .features-mobility__layout,
  .features-process__steps {
    grid-template-columns: 1fr;
  }

  .features-stage-card,
  .features-stage-card:nth-child(3),
  .features-mobility__media,
  .features-mobility__modules {
    grid-column: 1 / -1;
  }

  .features-stage-card {
    padding: var(--space-5);
    border: var(--border-default);
  }

  .features-stage-card--panel {
    padding: var(--space-5);
  }

  .features-mobility__layout {
    gap: var(--space-6);
  }

  .features-mobility__media img {
    aspect-ratio: 4 / 5;
  }

  .features-config--panel,
  .features-role--panel {
    padding: var(--space-5);
  }

  .features-role {
    grid-template-columns: 1fr;
    gap: var(--space-3);
    padding: var(--space-5);
    border: var(--border-default);
  }

  .features-role--panel {
    padding: var(--space-5);
  }

  .features-mocktail {
    padding-block: var(--space-8);
  }

  .features-mocktail__inner {
    gap: var(--space-7);
  }

  .features-format-card {
    min-height: 17.5rem;
    padding: var(--space-6);
  }

  .features-step,
  .features-step:first-child,
  .features-step:nth-child(3),
  .features-step:nth-child(4) {
    border: var(--border-default);
    border-bottom: 0;
    padding: var(--space-5);
  }

  .features-step:last-child {
    border-bottom: var(--border-default);
  }

  .features-faq__container {
    width: min(100% - (var(--container-padding) * 2), var(--container-max));
  }

  .features-faq-trigger {
    min-height: 3.25rem;
    padding: var(--space-4);
  }

  .features-faq-answer {
    padding: 0 var(--space-4) var(--space-5);
  }

  .features-final__panel {
    padding: var(--space-7) var(--space-5);
  }

  .features-final__actions {
    width: 100%;
  }

  .features-final__actions .button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .features-page *,
  .features-page *::before,
  .features-page *::after {
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
  }
}

.corporate-page {
  overflow: clip;
}

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

.corporate-hero {
  padding-block: clamp(4rem, 8vw, 7.5rem) clamp(5rem, 10vw, 10rem);
}

.corporate-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(2rem, 1fr) minmax(0, 6fr);
  align-items: center;
}

.corporate-hero__content {
  grid-column: 1;
  min-width: 0;
  max-width: 38.75rem;
}

.corporate-hero__content h1 {
  max-width: 35rem;
}

.corporate-hero__content .lead {
  max-width: 38.75rem;
}

.corporate-hero__actions {
  margin-block: var(--space-6) var(--space-5);
}

.corporate-hero__badges {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.corporate-hero__badges > * {
  min-width: 0;
}

.corporate-hero__media {
  grid-column: 3;
  width: 100%;
  min-width: 0;
  margin: var(--space-7) 0 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  aspect-ratio: 4 / 5;
  background: var(--color-graphite-panel);
}

.corporate-hero__media img,
.corporate-live__media img,
.corporate-mocktail__media img,
.corporate-portfolio__figure img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-base);
}

.corporate-hero__media img { object-position: 72% 50%; }
.corporate-live__media img { object-position: 56% 50%; }
.corporate-mocktail__media img { object-position: 54% 50%; }
.corporate-portfolio__figure--wide img { object-position: 50% 50%; }
.corporate-portfolio__figure--tall img { object-position: 50% 45%; }

.corporate-purpose__intro,
.corporate-scope__intro,
.corporate-scenarios__intro,
.corporate-process__intro,
.corporate-portfolio__intro,
.corporate-brief__intro,
.corporate-mocktail__intro {
  min-width: 0;
}

.corporate-purpose__intro {
  width: min(100%, 38.125rem);
}

.corporate-purpose__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
  align-items: start;
}

.corporate-purpose__cards > * { min-width: 0; width: 100%; }
.corporate-purpose__card { min-height: 100%; }
.corporate-purpose__card--raised { margin-top: var(--space-5); }
.corporate-purpose__card--lined { border-inline-start-color: var(--color-platinum-bright); }

.corporate-scope {
  background: linear-gradient(180deg, var(--color-velvet-black), var(--color-graphite-panel) 50%, var(--color-velvet-black));
}

.corporate-scope__intro {
  width: min(100%, 37.5rem);
}

.corporate-scope__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
  align-items: start;
}

.corporate-scope__grid > * { min-width: 0; width: 100%; }
.corporate-scope__card { min-height: 100%; }
.corporate-scope__card--offset { margin-top: var(--space-5); }
.corporate-scope__card--dark { background: var(--color-velvet-black); }
.corporate-scope__card .badge { align-self: flex-start; margin-bottom: var(--space-4); }
.corporate-scope__card .button { margin-top: auto; }

.corporate-live__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(2rem, 1fr) minmax(0, 6fr);
  align-items: center;
}

.corporate-live__content {
  grid-column: 1;
  min-width: 0;
  width: min(100%, 32.5rem);
}

.corporate-live__statement {
  margin-bottom: var(--space-5);
  color: var(--color-primary-white);
  font-size: clamp(1.25rem, 1.8vw, 1.65rem);
  font-weight: 700;
  line-height: 1.35;
}

.corporate-live__dealer {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin-top: var(--space-6);
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-felt-green);
  padding: var(--space-5);
}

.corporate-live__dealer > * { min-width: 0; margin: 0; }
.corporate-live__dealer h3 { color: var(--color-primary-white); }
.corporate-live__dealer p {}
.corporate-live__link { margin-top: var(--space-6); }

.corporate-live__media {
  grid-column: 3;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  aspect-ratio: 4 / 5;
  background: var(--color-graphite-panel);
}

.corporate-mocktail__intro { width: min(100%, 38.125rem); }

.corporate-mocktail__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
  align-items: end;
}

.corporate-mocktail__grid > * { min-width: 0; width: 100%; }

.corporate-mocktail__argument {
  min-height: 100%;
  border-top: var(--border-default);
  padding-top: var(--space-5);
}

.corporate-mocktail__argument--lined { border-top-color: var(--color-platinum-bright); }

.corporate-mocktail__media {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  aspect-ratio: 3 / 2;
  background: var(--color-graphite-panel);
}

.corporate-scenarios { background: var(--color-graphite-panel); }
.corporate-scenarios__intro { width: min(100%, 36.25rem); }

.corporate-scenarios__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
  align-items: stretch;
}

.corporate-scenarios__grid > * { min-width: 0; width: 100%; }
.corporate-scenarios__card { min-height: 100%; }
.corporate-scenarios__card .button { margin-top: auto; }

.corporate-process__intro { width: min(100%, 37.5rem); }

.corporate-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.corporate-process__grid > * { min-width: 0; width: 100%; }

.corporate-process__step {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  gap: var(--space-4);
  border-top: var(--border-default);
  padding-top: var(--space-5);
}

.corporate-process__step > * { min-width: 0; margin: 0; }
.corporate-process__step h3 { min-height: calc(var(--text-h3) * 2.2); }
.corporate-process__step .button { margin-top: auto; }

.corporate-process__number {
  display: block;
  color: var(--color-champagne-gold);
  font-family: var(--font-heading);
  font-size: clamp(2.3rem, 3vw, 3.5rem);
  font-weight: 700;
  line-height: 0.9;
}

.corporate-portfolio__intro { width: min(100%, 35rem); }
.corporate-portfolio__intro .button { margin-top: var(--space-2); }

.corporate-portfolio__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(2rem, 1fr) minmax(0, 4fr);
  margin-top: var(--space-7);
  align-items: start;
}

.corporate-portfolio__grid > * { min-width: 0; width: 100%; }

.corporate-portfolio__figure {
  margin: 0;
  min-width: 0;
}

.corporate-portfolio__figure a {
  display: block;
  width: 100%;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
}

.corporate-portfolio__figure--wide { grid-column: 1; }
.corporate-portfolio__figure--tall { grid-column: 3; margin-top: var(--space-8); }
.corporate-portfolio__figure--wide a { aspect-ratio: 3 / 2; }
.corporate-portfolio__figure--tall a { aspect-ratio: 4 / 5; }

.corporate-brief { background: var(--color-graphite-panel); }
.corporate-brief__intro { width: min(100%, 35.625rem); }

.corporate-brief__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-7);
  align-items: stretch;
}

.corporate-brief__grid > * { min-width: 0; width: 100%; }
.corporate-brief__card { grid-column: span 3; min-height: 100%; }
.corporate-brief__card--wide { grid-column: span 4; }
.corporate-brief__card--compact { grid-column: span 2; }
.corporate-brief__card .button { margin-top: auto; }

.corporate-brief__cta {
  display: flex;
  min-width: 0;
  width: min(100%, 40rem);
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  margin-top: var(--space-6);
  padding: var(--space-6);
}

.corporate-brief__cta > * { min-width: 0; }
.corporate-brief__cta h3 { margin-bottom: var(--space-3); }
.corporate-brief__cta p { margin-bottom: 0; }
.corporate-brief__cta .button { flex: 0 0 auto; }

.corporate-final { padding-top: var(--space-9); }

.corporate-final__panel {
  display: flex;
  min-width: 0;
  width: min(100%, 53.333rem);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  margin-inline: auto;
  border: var(--border-default);
  border-radius: var(--radius-md);
  padding: clamp(var(--space-6), 7vw, var(--space-9));
  background: var(--color-velvet-black);
}

.corporate-final__panel > * { min-width: 0; margin: 0; }
.corporate-final__panel h2 { max-width: 42.5rem; }
.corporate-final__panel .lead { max-width: 31.25rem; }

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

.corporate-final__actions > * { min-width: 0; }

@media (hover: hover) {
  .corporate-hero__media:hover img,
  .corporate-live__media:hover img,
  .corporate-mocktail__media:hover img,
  .corporate-portfolio__figure a:hover img {
    transform: scale(1.025);
  }
}

@media (max-width: 63.75rem) {
  .corporate-hero__grid,
  .corporate-live__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: var(--space-5);
  }

  .corporate-hero__content,
  .corporate-live__content { grid-column: span 4; width: 100%; }
  .corporate-hero__media,
  .corporate-live__media { grid-column: span 4; }
  .corporate-hero__media { margin-top: var(--space-5); }

  .corporate-scope__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .corporate-scope__card--offset { margin-top: 0; }

  .corporate-process__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .corporate-process__step h3 { min-height: 0; }

  .corporate-brief__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .corporate-brief__card,
  .corporate-brief__card--wide,
  .corporate-brief__card--compact { grid-column: span 4; }
}

@media (max-width: 56.25rem) {
  .corporate-purpose__cards,
  .corporate-scenarios__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .corporate-purpose__card--raised { margin-top: 0; }
  .corporate-purpose__card--lined,
  .corporate-scenarios__card:last-child { grid-column: span 2; }

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

  .corporate-mocktail__media { grid-column: span 2; order: 3; }

  .corporate-portfolio__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-5);
  }

  .corporate-portfolio__figure--wide,
  .corporate-portfolio__figure--tall { grid-column: span 1; margin-top: 0; }
}

@media (max-width: 42.5rem) {
  .corporate-hero { padding-block: var(--space-8) var(--space-9); }

  .corporate-hero__grid,
  .corporate-live__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .corporate-hero__content,
  .corporate-live__content,
  .corporate-hero__media,
  .corporate-live__media { grid-column: 1; }

  .corporate-hero__media { margin: 0; }
  .corporate-hero__content h1 { max-width: none; }
  .corporate-hero__actions { align-items: stretch; }
  .corporate-hero__actions .button { width: 100%; }

  .corporate-purpose__cards,
  .corporate-scope__grid,
  .corporate-scenarios__grid,
  .corporate-process__grid,
  .corporate-mocktail__grid,
  .corporate-portfolio__grid,
  .corporate-brief__grid { grid-template-columns: minmax(0, 1fr); }

  .corporate-purpose__card--lined,
  .corporate-scenarios__card:last-child,
  .corporate-mocktail__media,
  .corporate-portfolio__figure--wide,
  .corporate-portfolio__figure--tall,
  .corporate-brief__card,
  .corporate-brief__card--wide,
  .corporate-brief__card--compact { grid-column: 1; }

  .corporate-purpose__cards,
  .corporate-scope__grid,
  .corporate-scenarios__grid,
  .corporate-process__grid,
  .corporate-mocktail__grid,
  .corporate-portfolio__grid,
  .corporate-brief__grid { gap: var(--space-4); }

  .corporate-mocktail__media { order: 0; }
  .corporate-portfolio__figure--tall { margin-top: 0; }

  .corporate-process__grid {
    position: relative;
    padding-left: var(--space-6);
  }

  .corporate-process__grid::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0.75rem;
    width: 1px;
    background: var(--color-border);
    content: "";
  }

  .corporate-process__step { border-top: 0; padding-top: 0; }
  .corporate-process__number { margin-left: calc(var(--space-6) * -1); }

  .corporate-brief__cta {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-5);
    padding: var(--space-5);
  }

  .corporate-brief__cta .button { width: 100%; }
  .corporate-final { padding-top: var(--space-7); }
  .corporate-final__panel { width: 100%; padding: var(--space-5); }
  .corporate-final__actions { width: 100%; align-items: stretch; }
  .corporate-final__actions .button { width: 100%; }
}

.services-page {
  overflow: clip;
}

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

.services-page .button {
  min-height: 3.25rem;
}

.services-page .services-cta span {
  transition: transform var(--transition-base);
}

.services-page .services-cta:hover span {
  transform: translateX(0.25rem);
}

.services-hero {
  padding-block: clamp(6rem, 9vw, 8rem) var(--section-space);
}

.services-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  column-gap: minmax(2rem, 6vw, 6rem);
  align-items: center;
  min-height: 45rem;
}

.services-hero__content,
.services-hero__media,
.services-map__intro,
.services-story__intro,
.services-live__intro,
.services-zero__intro,
.services-formats__intro,
.services-process__intro,
.services-detail__intro,
.services-brief__intro {
  min-width: 0;
}

.services-hero__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  width: 100%;
  max-width: 38.75rem;
}

.services-hero__content > * {
  min-width: 0;
  margin: 0;
}

.services-hero__content h1 {
  width: 100%;
}

.services-hero__content .lead {
  width: 100%;
  color: var(--color-platinum-silver);
}

.services-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
  width: 100%;
}

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

.services-hero__highlights {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  width: 100%;
  margin: var(--space-2) 0 0;
  padding: 0;
  border-top: var(--border-default);
  border-left: var(--border-default);
  list-style: none !important;
}

.services-hero__highlights li {
  position: relative;
  min-width: 0;
  border-right: var(--border-default);
  border-bottom: var(--border-default);
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-5);
  color: var(--color-platinum-bright);
  font-size: var(--text-small);
  font-weight: 700;
  line-height: var(--leading-small);
}

.services-hero__highlights li::before {
  position: absolute;
  top: 50%;
  left: var(--space-3);
  width: 0.4rem;
  height: 0.4rem;
  background: var(--color-champagne-gold);
  content: "";
  transform: translateY(-50%) rotate(45deg);
}

.services-hero__media,
.services-live__media,
.services-detail__media {
  width: 100%;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-surface);
}

.services-hero__media {
  align-self: end;
  aspect-ratio: 16 / 10;
}

.services-hero__media img,
.services-live__media img,
.services-detail__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.82) contrast(1.08);
  transition: transform var(--transition-base);
}

.services-hero__media img {
  object-position: 68% center;
}

@media (hover: hover) {
  .services-live__media:hover img,
  .services-detail__media:hover img {
    transform: scale(1.025);
  }
}

.services-map__intro {
  width: 100%;
  max-width: 38.125rem;
}

.services-map__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  width: 100%;
  margin-top: var(--space-7);
}

.services-map__card {
  min-width: 0;
  gap: var(--space-4);
}

.services-map__card > * {
  margin: 0;
}

.services-map__card p:not(.meta) {
  color: var(--color-text-muted);
}

.services-map__card .button {
  margin-top: auto;
}

.services-map__card--production {
  grid-column: span 5;
}

.services-map__card--corporate {
  grid-column: span 3;
}

.services-map__card--private {
  grid-column: 1 / span 4;
}

.services-map__card--live {
  grid-column: 5 / span 5;
}

.services-story__intro {
  width: 100%;
  max-width: 40.625rem;
}

.services-story__chapters {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  margin-top: var(--space-7);
}

.services-story__chapter {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 6fr) minmax(0, 4fr);
  gap: var(--space-5);
  width: 100%;
  min-width: 0;
  border-top: var(--border-default);
  padding-block: var(--space-6);
}

.services-story__chapter:last-child {
  border-bottom: var(--border-default);
}

.services-story__number,
.services-process__number {
  margin: 0;
  color: var(--color-champagne-gold);
  font-family: var(--font-heading);
  font-size: clamp(2.8rem, 4vw, 4.5rem);
  font-weight: 700;
  letter-spacing: var(--tracking-h2);
  line-height: 0.8;
}

.services-story__copy {
  display: flex;
  grid-column: 2 / span 1;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  max-width: 35.625rem;
}

.services-story__copy > * {
  min-width: 0;
  margin: 0;
}

.services-story__copy p {
  color: var(--color-text-muted);
}

.services-live__intro {
  width: 100%;
  max-width: 37.5rem;
}

.services-live__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  gap: minmax(2rem, 6vw, 6rem);
  align-items: start;
  width: 100%;
  margin-top: var(--space-7);
}

.services-live__media {
  aspect-ratio: 4 / 5;
}

.services-live__media img {
  object-position: center center;
}

.services-live__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  width: 100%;
  min-width: 0;
}

.services-live__panel {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  padding: var(--space-6);
}

.services-live__panel > * {
  min-width: 0;
  margin: 0;
}

.services-live__panel p:not(.eyebrow) {
  width: 100%;
  max-width: 30rem;
  color: var(--color-text-muted);
}

.services-live__panel--green {
  border-color: color-mix(in srgb, var(--color-felt-green) 72%, var(--color-platinum-silver));
  background: color-mix(in srgb, var(--color-felt-green) 56%, var(--color-graphite-panel));
}

.services-live__closing {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  padding: var(--space-5) 0 0;
}

.services-live__closing > * {
  min-width: 0;
  margin: 0;
}

.services-live__closing p {
  width: 100%;color: var(--color-text-muted);
}

.services-zero__intro {
  width: 100%;
  max-width: 38.75rem;
}

.services-zero__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  margin-top: var(--space-7);
  border-top: var(--border-default);
  border-left: var(--border-default);
}

.services-zero__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  border-right: var(--border-default);
  border-bottom: var(--border-default);
  padding: var(--space-6);
}

.services-zero__item > * {
  min-width: 0;
  margin: 0;
}

.services-zero__item p:not(.services-zero__statement) {
  width: 100%;
  max-width: 22.5rem;
  color: var(--color-text-muted);
}

.services-zero__mark {
  display: grid;
  width: 5.75rem;
  min-height: 5.75rem;
  place-items: center;
  background: var(--color-felt-green);
  color: var(--color-primary-white);
  font-family: var(--font-heading);
  font-size: 1.85rem;
  font-weight: 700;
  line-height: 0.78;
  text-align: center;
}

.services-zero__mark span {
  color: var(--color-champagne-light);
}

.services-zero__statement {
  color: var(--color-primary-white);
  font-family: var(--font-heading);
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.12;
}

.services-formats__intro {
  width: 100%;
  max-width: 37.5rem;
}

.services-formats__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  width: 100%;
  margin-top: var(--space-7);
}

.services-formats__panel {
  display: flex;
  grid-column: span 6;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  min-width: 0;
  padding: var(--space-6);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.services-formats__panel--private {
  grid-column: 8 / span 5;
  margin-top: var(--space-7);
}

.services-formats__panel > * {
  min-width: 0;
  margin: 0;
}

.services-formats__panel p {
  width: 100%;color: var(--color-text-muted);
}

.services-formats__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  width: 100%;
  margin: 0;
  padding: 0;
  color: var(--color-platinum-bright);
  font-size: var(--text-small);
  font-weight: 700;
  list-style: none !important;
}

.services-formats__list li {
  position: relative;
  width: 100%;
  padding-left: var(--space-4);
}

.services-formats__list li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 0.35rem;
  height: 0.35rem;
  background: var(--color-champagne-gold);
  content: "";
  transform: rotate(45deg);
}

.services-formats__panel .button {
  margin-top: auto;
}

@media (hover: hover) {
  .services-formats__panel:hover {
    border-color: var(--color-platinum-bright);
    background: var(--color-surface-raised);
  }
}

.services-formats__closing {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  max-width: 35rem;
  margin-top: var(--space-7);
}

.services-formats__closing > * {
  min-width: 0;
  margin: 0;
}

.services-formats__closing p {
  color: var(--color-text-muted);
}

.services-process__intro {
  width: 100%;
  max-width: 40rem;
}

.services-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  margin: var(--space-7) 0 0;
  padding: 0;
  border-top: var(--border-default);
  list-style: none !important;
}

.services-process__step {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  border-right: var(--border-default);
  border-bottom: var(--border-default);
  padding: var(--space-6);
}

.services-process__step:first-child {
  border-left: var(--border-default);
}

.services-process__step > * {
  min-width: 0;
  margin: 0;
}

.services-process__step p:not(.services-process__number) {
  color: var(--color-text-muted);
}

.services-process__step:last-child .services-process__number {
  color: var(--color-champagne-light);
}

.services-detail__intro {
  width: 100%;
  max-width: 35rem;
}

.services-detail__media {
  aspect-ratio: 16 / 9;
  margin-top: var(--space-7);
}

.services-detail__media img {
  object-position: 68% center;
}

.services-detail__caption {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: center;
  gap: var(--space-5);
  width: 100%;
  margin: 0;
  border-top: var(--border-default);
  padding: var(--space-5) 0 0;
}

.services-detail__caption > * {
  min-width: 0;
}

.services-detail__caption p {
  margin: 0;
  color: var(--color-text-muted);
}

.services-detail__caption .eyebrow {
  margin-bottom: var(--space-2);
}

.services-detail__caption .button {
  justify-self: end;
}

.services-brief__intro {
  width: 100%;
  max-width: 38.75rem;
}

.services-brief__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  margin-top: var(--space-7);
  border-top: var(--border-default);
  border-left: var(--border-default);
}

.services-brief__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  width: 100%;
  min-width: 0;
  border-right: var(--border-default);
  border-bottom: var(--border-default);
  padding: var(--space-6);
}

.services-brief__item > * {
  min-width: 0;
  margin: 0;
}

.services-brief__item p {
  width: 100%;color: var(--color-text-muted);
}

.services-brief__item .button {
  margin-top: auto;
}

.services-final {
  padding-top: var(--space-9);
}

.services-final__panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-5);
  width: min(100%, 66.666%);
  min-width: 0;
  margin-inline: auto;
  padding: clamp(4rem, 7vw, 5rem);
  text-align: center;
}

.services-final__panel > * {
  min-width: 0;
  margin: 0;
}

.services-final__panel h2,
.services-final__panel p {
  width: 100%;}

.services-final__panel p:not(.eyebrow) {
  color: var(--color-text-muted);
}

@media (max-width: 61.25rem) {
  .services-hero__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--space-6);
    min-height: 0;
  }

  .services-hero__content {
    max-width: none;
  }

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

  .services-map__card--production,
  .services-map__card--corporate,
  .services-map__card--private,
  .services-map__card--live {
    grid-column: auto;
  }

  .services-story__chapter {
    grid-template-columns: minmax(0, 2fr) minmax(0, 6fr);
  }

  .services-live__grid {
    gap: var(--space-6);
  }

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

  .services-process__step:nth-child(3) {
    border-left: var(--border-default);
  }

  .services-final__panel {
    width: min(100%, 83.333%);
  }
}

@media (max-width: 57.5rem) {
  .services-live__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .services-live__media {
    max-width: 36rem;
  }

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

  .services-formats__panel,
  .services-formats__panel--private {
    grid-column: auto;
    margin-top: 0;
  }
}

@media (max-width: 52.5rem) {
  .services-zero__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .services-zero__item:nth-child(3) {
    grid-column: 1 / -1;
  }

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

  .services-brief__item:nth-child(3) {
    grid-column: 1 / -1;
  }
}

@media (max-width: 47.5rem) {
  .services-hero {
    padding-top: var(--space-9);
  }

  .services-hero__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-7);
  }

  .services-hero__media {
    aspect-ratio: 4 / 5;
  }

  .services-hero__media img {
    object-position: 58% center;
  }

  .services-detail__media {
    aspect-ratio: 4 / 5;
  }

  .services-detail__media img {
    object-position: 68% center;
  }

  .services-detail__caption {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .services-detail__caption .button {
    justify-self: start;
  }
}

@media (max-width: 40rem) {
  .services-hero__content {
    gap: var(--space-4);
  }

  .services-hero__content h1 {
    font-size: clamp(2.75rem, 12vw, 3.25rem);
  }

  .services-hero__actions {
    align-items: stretch;
  }

  .services-hero__actions .button {
    width: 100%;
  }

  .services-hero__highlights {
    grid-template-columns: minmax(0, 1fr);
  }

  .services-map__grid,
  .services-formats__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .services-map__card,
  .services-formats__panel,
  .services-live__panel {
    padding: 1.75rem;
  }

  .services-story__chapter {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .services-story__copy {
    grid-column: auto;
    max-width: none;
  }

  .services-zero__grid,
  .services-brief__grid,
  .services-process__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .services-zero__item:nth-child(3),
  .services-brief__item:nth-child(3) {
    grid-column: auto;
  }

  .services-zero__item,
  .services-brief__item,
  .services-process__step {
    padding: var(--space-5);
  }

  .services-process__step,
  .services-process__step:nth-child(3) {
    border-left: var(--border-default);
  }

  .services-live__media {
    max-width: none;
  }

  .services-final__panel {
    width: 100%;
    padding: var(--space-6) var(--space-5);
  }

  .services-final__panel .button {
    width: 100%;
  }
}

.contact-page {
  overflow: hidden;
}

.contact-page a:focus-visible,
.contact-page button:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}

.contact-hero {
  padding-block: clamp(4rem, 8vw, 8rem);
}

.contact-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(2rem, 1fr) minmax(0, 6fr);
  align-items: center;
  min-height: 45rem;
}

.contact-hero__grid > * { min-width: 0; }

.contact-hero__content {
  grid-column: 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
  max-width: 38.75rem;
}

.contact-hero__content > * { min-width: 0; margin: 0; }
.contact-hero__content .lead { max-width: 38.75rem; }

.contact-hero__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
}
.contact-hero__actions > * { min-width: 0; }
.contact-hero__actions .button span { transition: transform var(--transition-base); }
.contact-hero__actions .button:hover span { transform: translateX(4px); }

.contact-hero__media {
  grid-column: 3;
  width: 100%;
  max-width: 100%;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  aspect-ratio: 4 / 5;
}

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

.contact-occasions__intro,
.contact-experience__intro,
.contact-brief__intro,
.contact-form-section__intro,
.contact-process__intro,
.contact-faq__intro,
.contact-closing__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.contact-occasions__intro > *,
.contact-experience__intro > *,
.contact-brief__intro > *,
.contact-form-section__intro > *,
.contact-process__intro > *,
.contact-faq__intro > *,
.contact-closing__content > * { min-width: 0; margin: 0; }

.contact-occasions__intro { width: min(100%, 38.75rem); }
.contact-experience__intro { width: min(100%, 38.75rem); }
.contact-brief__intro { width: min(100%, 35rem); }
.contact-form-section__intro { width: min(100%, 38.75rem); }
.contact-process__intro { width: min(100%, 35rem); }
.contact-faq__intro { width: min(100%, 36.25rem); }

.contact-occasions__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-8);
}
.contact-occasions__grid > * { min-width: 0; width: 100%; }

.contact-occasion {
  gap: var(--space-5);
  padding: var(--space-6);
}
.contact-occasion > * { min-width: 0; margin: 0; }
.contact-occasion .button--text { margin-top: auto; }
.contact-occasion--offset { transform: translateY(var(--space-5)); }

.contact-occasion__top {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}
.contact-occasion__top > * { min-width: 0; }
.contact-occasion__number,
.contact-brief__item > span,
.contact-process__step > span {
  color: var(--color-champagne-gold);
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
}

.contact-experience__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: stretch;
  gap: var(--space-5);
  margin-top: var(--space-8);
}
.contact-experience__grid > * { min-width: 0; width: 100%; }

.contact-live-panel,
.contact-mocktail-panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
}
.contact-live-panel > *,
.contact-mocktail-panel > * { min-width: 0; }

.contact-live-panel__image {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  aspect-ratio: 16 / 10;
}
.contact-live-panel__image img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform var(--transition-base);
}
.contact-live-panel:hover img { transform: scale(1.025); }

.contact-live-panel__content,
.contact-mocktail-panel__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
}
.contact-live-panel__content > *,
.contact-mocktail-panel__content > * { min-width: 0; margin: 0; }
.contact-live-panel__content p {}
.contact-mocktail-panel__content p {}

.contact-mocktail-panel {
  justify-content: space-between;
  background: var(--color-felt-green);
}

.contact-brief-list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  border-top: var(--border-default);
  padding: var(--space-6);
}
.contact-brief-list > * { min-width: 0; margin: 0; }
.contact-brief-list ol { padding-inline-start: var(--space-5); }
.contact-brief-list .contact-brief__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: var(--space-8);
  border-block: var(--border-default);
}
.contact-brief__grid > * { min-width: 0; width: 100%; }

.contact-brief__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--space-4);
  padding: var(--space-6);
}
.contact-brief__item + .contact-brief__item { border-inline-start: var(--border-default); }
.contact-brief__item > div { min-width: 0; }
.contact-brief__item h3 { margin-bottom: var(--space-3); }
.contact-brief__item p { margin: 0; }
.contact-brief__note {
  width: min(100%, 47rem);
  margin: var(--space-6) 0 0;
  border-inline-start: 1px solid var(--color-champagne-gold);
  padding-inline-start: var(--space-5);
  color: var(--color-platinum-bright);
}

.contact-form-section { background: var(--color-velvet-black); }
.contact-form-section__intro { margin-bottom: var(--space-7); }

.contact-form {
  display: flex;
  width: min(100%, 66.666% + 10.666rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-7);
  margin-inline: auto;
  padding: clamp(1.25rem, 4vw, 3rem);
}
.contact-form > * { min-width: 0; margin: 0; }

.contact-form__group {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  border: 0;
  padding: 0;
}
.contact-form__group > * { min-width: 0; margin: 0; }
.contact-form__group h3,
.contact-form__group legend { margin: 0; }
.contact-form__helper { color: var(--color-text-muted); }

.contact-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}
.contact-form__grid > * { min-width: 0; width: 100%; }

.contact-field {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}
.contact-field > * { min-width: 0; margin: 0; }
.contact-field label { margin: 0; }
.contact-field label span { color: var(--color-text-muted); font-weight: 400; }
.contact-field__error {
  min-height: 1.1rem;
  color: var(--color-error-coral);
  font-size: var(--text-small);
  line-height: var(--leading-small);
}

.contact-form__services {
  border: var(--border-default);
  padding: var(--space-5);
}
.contact-form__checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}
.contact-form__checks > * { min-width: 0; width: 100%; }
.contact-form__checks label,
.contact-consent label {
  display: flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  gap: var(--space-3);
  margin: 0;
  padding: var(--space-2);
  font-size: var(--text-small);
  letter-spacing: 0;
}
.contact-form__checks input,
.contact-consent input { flex: 0 0 1rem; }
.contact-form__checks span,
.contact-consent span { min-width: 0; }

.contact-consent {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
}
.contact-consent > * { min-width: 0; margin: 0; }
.contact-consent > p {color: var(--color-text-muted); font-size: var(--text-small); }
.contact-consent .contact-field__error { color: var(--color-error-coral); }
.contact-form__message-group .button { align-self: flex-start; }
.contact-form__success {
  border: 1px solid var(--color-success-mint);
  padding: var(--space-4);
  color: var(--color-success-mint);
  background: var(--color-graphite-raised);
}

.contact-process__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: var(--space-8);
}
.contact-process__grid > * { min-width: 0; width: 100%; }
.contact-process__step {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-5);
}
.contact-process__step > * { min-width: 0; margin: 0; }
.contact-process__step + .contact-process__step { border-inline-start: var(--border-default); }
.contact-process__step p {}
.contact-process__note {
  width: min(100%, 38.75rem);
  margin: var(--space-6) 0 0;
  border: var(--border-default);
  background: var(--color-graphite-panel);
  padding: var(--space-4);
  color: var(--color-platinum-bright);
}

.contact-faq { background: var(--color-graphite-panel); }
.contact-faq__inner {
  width: min(100%, 53.333rem);
  margin-inline: auto;
}
.contact-faq__list {
  margin-top: var(--space-7);
  border-top: var(--border-default);
}
.contact-faq__item { border-bottom: var(--border-default); }
.contact-faq__item h3 { margin: 0; }
.contact-faq__item button {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 3.25rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  padding: var(--space-5) 0;
  color: var(--color-primary-white);
  background: transparent;
  font-family: var(--font-heading);
  font-size: var(--text-h3);
  font-weight: 700;
  letter-spacing: var(--tracking-h3);
  line-height: var(--leading-h3);
  text-align: left;
}
.contact-faq__item button > span {
  flex: 0 0 1.5rem;
  color: var(--color-platinum-bright);
  font-family: var(--font-body);
  font-size: 1.5rem;
  font-weight: 400;
  text-align: center;
}
.contact-faq__answer { max-width: 42.5rem; padding-bottom: var(--space-5); }
.contact-faq__answer p { margin: 0; }

.contact-closing { border-top: var(--border-default); }
.contact-closing__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
}
.contact-closing__grid > * { min-width: 0; }
.contact-closing__content { grid-column: 1; width: min(100%, 38.75rem); }
.contact-closing__content .lead { max-width: 38.75rem; }
.contact-direct {
  display: flex;
  width: min(100%, 38.75rem);
  min-width: 0;
  flex-direction: column;
  gap: 0;
  margin-top: var(--space-5);
  border-top: var(--border-default);
}
.contact-direct > * { min-width: 0; margin: 0; }
.contact-direct .meta { padding-top: var(--space-4); }
.contact-direct > div {
  display: grid;
  grid-template-columns: minmax(7rem, 1fr) minmax(0, 2fr);
  gap: var(--space-4);
  min-height: 2.75rem;
  align-items: center;
  border-bottom: var(--border-default);
  padding-block: var(--space-3);
}
.contact-direct span { color: var(--color-text-muted); font-size: var(--text-small); font-weight: 700; letter-spacing: .04em; }
.contact-direct a { min-width: 0; overflow-wrap: anywhere; }

@media (max-width: 61.25rem) {
  .contact-hero__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); min-height: 0; }
  .contact-hero__content { grid-column: 1; }
  .contact-hero__media { grid-column: 2; }
}

@media (max-width: 58.75rem) {
  .contact-experience__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-live-panel__image { aspect-ratio: 4 / 5; }
  .contact-brief__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-brief__item + .contact-brief__item { border-inline-start: 0; }
  .contact-brief__item:nth-child(2) { border-inline-start: var(--border-default); }
  .contact-brief__item:nth-child(3) { grid-column: 1 / -1; border-top: var(--border-default); }
}

@media (max-width: 56.25rem) {
  .contact-occasions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-occasion--offset { transform: none; }
  .contact-occasions__grid > :last-child { grid-column: 1 / -1; }
}

@media (max-width: 52.5rem) {
  .contact-process__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-process__step + .contact-process__step { border-inline-start: 0; }
  .contact-process__step:nth-child(2) { border-inline-start: var(--border-default); }
  .contact-process__step:nth-child(3) { grid-column: 1 / -1; border-top: var(--border-default); }
}

@media (max-width: 47.5rem) {
  .contact-form { width: 100%; }
}

@media (max-width: 43.75rem) {
  .contact-hero__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-7); }
  .contact-hero__content,
  .contact-hero__media { grid-column: 1; }
  .contact-hero__content { max-width: none; }
  .contact-hero__media { aspect-ratio: 4 / 5; }
  .contact-experience__grid { grid-template-columns: minmax(0, 1fr); }
  .contact-live-panel__image { aspect-ratio: 4 / 5; }
}

@media (max-width: 40rem) {
  .contact-occasions__grid,
  .contact-brief__grid,
  .contact-process__grid { grid-template-columns: minmax(0, 1fr); }
  .contact-occasions__grid > :last-child,
  .contact-brief__item:nth-child(3),
  .contact-process__step:nth-child(3) { grid-column: 1; }
  .contact-brief__item,
  .contact-brief__item:nth-child(2),
  .contact-process__step:nth-child(2) { border-inline-start: 0; }
  .contact-brief__item + .contact-brief__item,
  .contact-process__step + .contact-process__step { border-top: var(--border-default); }
  .contact-form__grid,
  .contact-form__checks { grid-template-columns: minmax(0, 1fr); }
  .contact-form__message-group .button { width: 100%; }
  .contact-faq__inner { width: 100%; }
  .contact-faq__item button { font-size: clamp(1.45rem, 7vw, 2.15rem); }
  .contact-closing__grid { grid-template-columns: minmax(0, 1fr); }
  .contact-closing__content { grid-column: 1; width: 100%; }
}

@media (max-width: 26.25rem) {
  .contact-brief__item { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
  .contact-direct > div { grid-template-columns: minmax(0, 1fr); gap: var(--space-1); }
}

@media (hover: none) {
  .contact-live-panel:hover img { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .contact-hero__actions .button span,
  .contact-live-panel__image img { transition: none; }
  .contact-hero__actions .button:hover span,
  .contact-live-panel:hover img { transform: none; }
}

.home-page {
  background: var(--color-velvet-black);
}

.home-page .button--text {
  width: fit-content;
}

.home-page .home-hero {
  padding-block: clamp(4rem, 8vw, 8rem) var(--section-space);
}

.home-page .home-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
  align-items: center;
  min-height: 47.5rem;
  gap: 0;
}

.home-page .home-hero__content {
  grid-column: 1 / span 1;
  min-width: 0;
}

.home-page .home-hero__content > :last-child,
.home-page .home-hero__promise > :last-child,
.home-page .home-offer__heading > :last-child,
.home-page .home-live__heading > :last-child,
.home-page .home-mocktail__manifest > :last-child,
.home-page .home-mocktail__detail > :last-child,
.home-page .home-process__intro > :last-child,
.home-page .home-portfolio__intro > :last-child,
.home-page .home-audience__heading > :last-child,
.home-page .home-cta__panel > :last-child,
.home-page .home-routes__heading > :last-child {
  margin-block-end: 0;
}

.home-page .home-hero h1 {
  max-width: 38rem;
}

.home-page .home-hero .lead {
  max-width: 38.75rem;
}

.home-page .home-hero__actions {
  margin-block-end: var(--space-7);
}

.home-page .home-hero__media {
  grid-column: 3 / span 1;
  width: 100%;
  min-width: 0;
  height: clamp(40rem, 55vw, 45rem);
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
}

.home-page .home-hero__media img,
.home-page .home-live__media img,
.home-page .home-mocktail__media img,
.home-page .home-portfolio__tile img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-page .home-hero__media img {
  object-position: 74% center;
}

.home-page .home-hero__promises {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  border-top: var(--border-default);
  border-bottom: var(--border-default);
}

.home-page .home-hero__promise {
  position: relative;
  min-width: 0;
  padding: var(--space-4) var(--space-3);
}

.home-page .home-hero__promise:first-child {
  padding-inline-start: 0;
}

.home-page .home-hero__promise + .home-hero__promise {
  border-inline-start: var(--border-default);
}

.home-page .home-hero__promise p:not(.meta) {
  margin: 0;
  color: var(--color-platinum-bright);
  font-size: 0.82rem;
  line-height: 1.5;
}

.home-page .home-hero__diamond {
  position: absolute;
  top: -0.35rem;
  left: 0;
  width: 0.65rem;
  height: 0.65rem;
  border: 1px solid var(--color-champagne-gold);
  background: var(--color-velvet-black);
  transform: rotate(45deg);
}

.home-page .home-direction__intro {
  width: 50%;
  min-width: 0;
}

.home-page .home-direction__intro .lead {
  max-width: 41.25rem;
}

.home-page .home-direction__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  margin-top: var(--space-8);
  border-top: var(--border-default);
  border-bottom: var(--border-default);
}

.home-page .home-direction__item {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  min-width: 0;
  padding: var(--space-6) var(--space-5);
}

.home-page .home-direction__item:first-child {
  padding-inline-start: 0;
}

.home-page .home-direction__item + .home-direction__item {
  border-inline-start: var(--border-default);
}

.home-page .home-direction__number,
.home-page .home-process__number,
.home-page .home-routes__number {
  color: var(--color-champagne-gold);
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: var(--tracking-meta);
}

.home-page .home-direction__number--green,
.home-page .home-process__number--green {
  color: var(--color-success-mint);
}

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

.home-page .home-direction__copy h3,
.home-page .home-direction__copy p {
  margin: 0;
}

.home-page .home-direction__copy p {color: var(--color-text-muted);
}

.home-page .home-offer {
  background: linear-gradient(180deg, var(--color-velvet-black), rgba(21, 24, 28, 0.58));
}

.home-page .home-offer__heading {
  width: 50%;
  min-width: 0;
}

.home-page .home-offer__heading .lead {
  max-width: 38rem;
}

.home-page .home-offer__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(15.5rem, auto));
  width: 100%;
  min-width: 0;
  gap: var(--space-5);
  margin-top: var(--space-8);
}

.home-page .home-offer__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-6);
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
  padding: var(--space-6);
  color: var(--color-text);
  text-decoration: none;
  transition: border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base), box-shadow var(--transition-base);
}

.home-page .home-offer__card:hover {
  border-color: var(--color-platinum-bright);
  background: var(--color-graphite-raised);
  box-shadow: var(--shadow-raised);
  color: var(--color-primary-white);
  transform: scale(1.02);
}

.home-page .home-offer__card--corporate {
  grid-column: 1 / span 7;
  grid-row: 1 / span 2;
}

.home-page .home-offer__card--private {
  grid-column: 8 / span 5;
  grid-row: 1 / span 1;
}

.home-page .home-offer__card--live {
  grid-column: 8 / span 5;
  grid-row: 2 / span 1;
  border-color: color-mix(in srgb, var(--color-felt-green) 65%, var(--color-platinum-silver));
  background: linear-gradient(135deg, var(--color-graphite-panel), var(--color-felt-green));
}

.home-page .home-offer__number {
  color: var(--color-champagne-gold);
  font-family: var(--font-heading);
  font-size: clamp(3.5rem, 7vw, 6rem);
  font-weight: 700;
  line-height: 0.8;
}

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

.home-page .home-offer__card-copy > * {
  min-width: 0;
  margin: 0;
}

.home-page .home-offer__card--corporate .home-offer__card-copy {
  max-width: 26.875rem;
}

.home-page .home-offer__card--private .home-offer__card-copy,
.home-page .home-offer__card--live .home-offer__card-copy {
  max-width: 18.125rem;
}

.home-page .home-offer__card-copy p:not(.meta):not(.home-offer__statement) {
  color: var(--color-text-muted);
}

.home-page .home-offer__statement {
  color: var(--color-primary-white);
  font-size: 1.06rem;
  font-weight: 700;
  line-height: 1.45;
}

.home-page .home-offer__link {
  margin-top: var(--space-2);
  color: var(--color-platinum-bright);
  font-size: var(--text-small);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-decoration: underline;
  text-decoration-color: var(--color-border);
  text-underline-offset: 0.3em;
}

.home-page .home-live {
  background: var(--color-graphite-panel);
}

.home-page .home-live__heading {
  width: 58.333%;
  min-width: 0;
}

.home-page .home-live__heading .lead {
  max-width: 38.75rem;
}

.home-page .home-live__layout {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  gap: var(--space-5);
  margin-top: var(--space-8);
}

.home-page .home-live__media {
  grid-column: 1 / span 5;
  width: 100%;
  min-width: 0;
  height: auto;
  aspect-ratio: 4 / 5;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
}

.home-page .home-live__media img {
  object-position: 55% center;
  transition: transform var(--transition-base);
}

.home-page .home-live__media:hover img {
  transform: scale(1.025);
}

.home-page .home-live__arguments {
  grid-column: 7 / span 6;
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
}

.home-page .home-live__argument {
  display: flex;
  min-width: 0;
  flex: 1 1 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding-block: var(--space-5);
  border-top: var(--border-default);
}

.home-page .home-live__argument:last-child {
  border-bottom: var(--border-default);
}

.home-page .home-live__argument > * {
  min-width: 0;
  margin: 0;
}

.home-page .home-live__argument p {color: var(--color-text-muted);
}

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

.home-page .home-mocktail__manifest {
  grid-column: 1 / span 6;
  min-width: 0;
}

.home-page .home-mocktail__manifest .lead {
  max-width: 38.75rem;
}

.home-page .home-mocktail__manifest > p:not(.eyebrow):not(.lead) {
  max-width: 38.75rem;
}

.home-page .home-mocktail__promise {
  color: var(--color-primary-white);
  font-weight: 700;
}

.home-page .home-mocktail__promise::after {
  display: block;
  width: 10rem;
  height: 1px;
  margin-top: var(--space-4);
  background: var(--color-champagne-gold);
  content: "";
}

.home-page .home-mocktail__media {
  grid-column: 8 / span 5;
  width: 100%;
  min-width: 0;
  height: auto;
  aspect-ratio: 3 / 2;
  margin: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
}

.home-page .home-mocktail__media img {
  object-position: 72% center;
}

.home-page .home-mocktail__details {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  gap: var(--space-5);
  margin-top: var(--space-8);
}

.home-page .home-mocktail__detail {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding-top: var(--space-5);
  border-top: var(--border-default);
}

.home-page .home-mocktail__detail--panel {
  grid-column: 1 / span 5;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
  padding: var(--space-6);
}

.home-page .home-mocktail__detail:not(.home-mocktail__detail--panel) {
  grid-column: 8 / span 5;
}

.home-page .home-mocktail__detail > * {
  min-width: 0;
  margin: 0;
}

.home-page .home-mocktail__detail p {color: var(--color-text-muted);
}

.home-page .home-process__intro {
  width: 50%;
  min-width: 0;
}

.home-page .home-process__intro .lead {
  max-width: 36.25rem;
}

.home-page .home-process__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  margin-top: var(--space-8);
  border-top: var(--border-default);
  border-bottom: var(--border-default);
}

.home-page .home-process__step {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  min-width: 0;
  padding: var(--space-6) var(--space-4);
}

.home-page .home-process__step:first-child {
  padding-inline-start: 0;
}

.home-page .home-process__step + .home-process__step {
  border-inline-start: var(--border-default);
}

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

.home-page .home-process__copy > * {
  min-width: 0;
  margin: 0;
}

.home-page .home-process__copy p {color: var(--color-text-muted);
}

.home-page .home-portfolio__intro {
  width: 50%;
  min-width: 0;
}

.home-page .home-portfolio__intro .lead {
  max-width: 37.5rem;
}

.home-page .home-portfolio__grid {
  display: grid;
  grid-template-columns: 5fr 3fr 4fr;
  width: 100%;
  min-width: 0;
  gap: var(--space-5);
  margin-top: var(--space-8);
}

.home-page .home-portfolio__tile {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--color-graphite-panel);
}

.home-page .home-portfolio__tile--gala,
.home-page .home-portfolio__tile--bar {
  aspect-ratio: 4 / 5;
}

.home-page .home-portfolio__tile--table {
  aspect-ratio: 3 / 4;
}

.home-page .home-portfolio__tile img {
  transition: transform var(--transition-base);
}

.home-page .home-portfolio__tile--gala img {
  object-position: 68% center;
}

.home-page .home-portfolio__tile--table img {
  object-position: 55% center;
}

.home-page .home-portfolio__tile--bar img {
  object-position: 72% center;
}

.home-page .home-portfolio__tile:hover img {
  transform: scale(1.025);
}

.home-page .home-portfolio__caption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-7) var(--space-5) var(--space-5);
  background: linear-gradient(transparent, rgba(11, 12, 14, 0.92) 65%);
}

.home-page .home-portfolio__caption .meta {
  margin: 0;
}

.home-page .home-portfolio__caption strong {
  max-width: 11.25rem;
  color: var(--color-primary-white);
  font-family: var(--font-heading);
  font-size: clamp(1.3rem, 2vw, 1.85rem);
  line-height: 1.06;
}

.home-page .home-portfolio__action {
  margin-top: var(--space-6);
}

.home-page .home-audience {
  background: rgba(21, 24, 28, 0.38);
}

.home-page .home-audience__heading {
  width: 50%;
  min-width: 0;
}

.home-page .home-audience__panels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  gap: var(--space-5);
  margin-top: var(--space-7);
}

.home-page .home-audience__panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.home-page .home-audience__panel:hover {
  border-color: var(--color-platinum-bright);
  background: var(--color-graphite-raised);
}

.home-page .home-audience__panel > * {
  min-width: 0;
  margin: 0;
}

.home-page .home-audience__panel p {color: var(--color-text-muted);
}

.home-page .home-audience__common {
  width: 100%;
  min-width: 0;
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: var(--border-default);
}

.home-page .home-audience__common p {margin: 0;
  color: var(--color-platinum-bright);
}

.home-page .home-cta__panel {
  display: flex;
  width: 66.666%;
  min-width: 0;
  margin-inline: auto;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: clamp(4rem, 6vw, 5rem);
}

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

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

.home-page .home-cta__button {
  margin-top: var(--space-2);
}

.home-page .home-cta__button span {
  transition: transform var(--transition-fast);
}

.home-page .home-cta__button:hover span {
  transform: translateX(0.25rem);
}

.home-page .home-routes {
  padding-top: 0;
}

.home-page .home-routes__layout {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  width: min(100% - (var(--container-padding) * 2), var(--container-max));
  min-width: 0;
  gap: var(--space-5);
  padding-top: var(--section-space);
  border-top: var(--border-default);
}

.home-page .home-routes__heading {
  grid-column: 1 / span 4;
  min-width: 0;
}

.home-page .home-routes__heading h2 {
  max-width: 32.5rem;
}

.home-page .home-routes__list {
  grid-column: 5 / span 8;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
}

.home-page .home-routes__item {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr) 1rem;
  min-width: 0;
  min-height: 12rem;
  align-content: start;
  gap: var(--space-3);
  padding: 0 var(--space-4);
  color: var(--color-text);
  text-decoration: none;
}

.home-page .home-routes__item + .home-routes__item {
  border-inline-start: var(--border-default);
}

.home-page .home-routes__item:first-child {
  padding-inline-start: 0;
}

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

.home-page .home-routes__copy strong {
  color: var(--color-primary-white);
  font-family: var(--font-heading);
  font-size: 1.45rem;
  line-height: 1.08;
}

.home-page .home-routes__copy span {
  max-width: 15.625rem;
  color: var(--color-text-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.home-page .home-routes__arrow {
  color: var(--color-champagne-gold);
  font-size: 1.25rem;
  line-height: 1;
  transition: transform var(--transition-fast);
}

.home-page .home-routes__item:hover .home-routes__arrow {
  transform: translateX(0.25rem);
}

@media (max-width: 65rem) {
  .home-page .home-hero__grid {
    grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
    min-height: auto;
    gap: var(--space-5);
  }

  .home-page .home-hero__media {
    grid-column: 2 / span 1;
    height: 38rem;
  }

  .home-page .home-hero__promises {
    grid-template-columns: 1fr;
  }

  .home-page .home-hero__promise,
  .home-page .home-hero__promise:first-child {
    padding: var(--space-3) 0;
  }

  .home-page .home-hero__promise + .home-hero__promise {
    border-top: var(--border-default);
    border-inline-start: 0;
  }

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

  .home-page .home-direction__item:nth-child(3) {
    grid-column: 1 / span 2;
    border-top: var(--border-default);
    border-inline-start: 0;
    padding-inline-start: 0;
  }

  .home-page .home-offer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
  }

  .home-page .home-offer__card--corporate,
  .home-page .home-offer__card--private {
    grid-column: auto;
    grid-row: auto;
    min-height: 29rem;
  }

  .home-page .home-offer__card--live {
    grid-column: 1 / span 2;
    grid-row: auto;
    min-height: 18rem;
  }

  .home-page .home-offer__card--private .home-offer__card-copy,
  .home-page .home-offer__card--live .home-offer__card-copy {
    max-width: 25rem;
  }

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

  .home-page .home-live__media {
    grid-column: 1 / span 3;
  }

  .home-page .home-live__arguments {
    grid-column: 4 / span 5;
  }

  .home-page .home-mocktail__top,
  .home-page .home-mocktail__details {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .home-page .home-mocktail__manifest {
    grid-column: 1 / span 5;
  }

  .home-page .home-mocktail__media {
    grid-column: 6 / span 3;
  }

  .home-page .home-mocktail__detail--panel {
    grid-column: 1 / span 4;
  }

  .home-page .home-mocktail__detail:not(.home-mocktail__detail--panel) {
    grid-column: 5 / span 4;
  }

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

  .home-page .home-process__step {
    padding-inline-start: 0;
  }

  .home-page .home-process__step:nth-child(3),
  .home-page .home-process__step:nth-child(4) {
    border-top: var(--border-default);
  }

  .home-page .home-process__step:nth-child(3) {
    border-inline-start: 0;
  }

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

  .home-page .home-portfolio__tile--gala {
    grid-column: 1 / span 2;
    aspect-ratio: 8 / 5;
  }

  .home-page .home-portfolio__tile--table,
  .home-page .home-portfolio__tile--bar {
    aspect-ratio: 4 / 5;
  }

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

  .home-page .home-routes__heading {
    grid-column: 1 / span 8;
  }

  .home-page .home-routes__list {
    grid-column: 1 / span 8;
  }
}

@media (max-width: 60rem) {
  .home-page .home-mocktail__top {
    grid-template-columns: 1fr;
  }

  .home-page .home-mocktail__manifest,
  .home-page .home-mocktail__media {
    grid-column: 1 / span 1;
  }

  .home-page .home-mocktail__media {
    width: 100%;
  }
}

@media (max-width: 57.5rem) {
  .home-page .home-live__layout {
    grid-template-columns: 1fr;
  }

  .home-page .home-live__media,
  .home-page .home-live__arguments {
    grid-column: 1 / span 1;
  }

  .home-page .home-live__media {
    width: min(100%, 34rem);
  }

  .home-page .home-live__argument p {}
}

@media (max-width: 50rem) {
  .home-page .home-hero__grid {
    grid-template-columns: 1fr;
  }

  .home-page .home-hero__content,
  .home-page .home-hero__media {
    grid-column: 1 / span 1;
  }

  .home-page .home-hero__media {
    height: auto;
    aspect-ratio: 4 / 5;
  }

  .home-page .home-hero__promises {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .home-page .home-hero__promise,
  .home-page .home-hero__promise:first-child {
    padding: var(--space-4) var(--space-3);
  }

  .home-page .home-hero__promise:first-child {
    padding-inline-start: 0;
  }

  .home-page .home-hero__promise + .home-hero__promise {
    border-top: 0;
    border-inline-start: var(--border-default);
  }

  .home-page .home-direction__intro,
  .home-page .home-offer__heading,
  .home-page .home-live__heading,
  .home-page .home-process__intro,
  .home-page .home-portfolio__intro,
  .home-page .home-audience__heading {
    width: 100%;
  }

  .home-page .home-offer__card--corporate,
  .home-page .home-offer__card--private {
    min-height: 23rem;
  }

  .home-page .home-routes__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .home-page .home-routes__item {
    grid-template-columns: 1fr;
    min-height: 0;
    padding-inline: var(--space-3);
  }

  .home-page .home-routes__item:first-child {
    padding-inline-start: 0;
  }

  .home-page .home-routes__arrow {
    display: none;
  }
}

@media (max-width: 42.5rem) {
  .home-page .home-hero {
    padding-top: var(--space-8);
  }

  .home-page .home-hero h1 {
    font-size: clamp(2.7rem, 12vw, 4rem);
  }

  .home-page .home-hero__actions {
    align-items: stretch;
    margin-block-end: var(--space-6);
  }

  .home-page .home-hero__actions .button,
  .home-page .home-hero__actions .button--text {
    width: 100%;
  }

  .home-page .home-hero__actions .button--text {
    min-height: 3.25rem;
    justify-content: center;
    border: var(--border-default);
    padding: 0.75rem 1.25rem;
  }

  .home-page .home-hero__promises {
    grid-template-columns: 1fr;
  }

  .home-page .home-hero__promise,
  .home-page .home-hero__promise:first-child {
    padding: var(--space-3) 0;
  }

  .home-page .home-hero__promise + .home-hero__promise {
    border-top: var(--border-default);
    border-inline-start: 0;
  }

  .home-page .home-direction__items,
  .home-page .home-offer__grid,
  .home-page .home-mocktail__details,
  .home-page .home-process__steps,
  .home-page .home-portfolio__grid,
  .home-page .home-audience__panels,
  .home-page .home-routes__layout,
  .home-page .home-routes__list {
    grid-template-columns: 1fr;
  }

  .home-page .home-direction__item,
  .home-page .home-direction__item:nth-child(3),
  .home-page .home-process__step {
    grid-column: 1 / span 1;
    border-top: var(--border-default);
    border-inline-start: 0;
    padding: var(--space-5) 0;
  }

  .home-page .home-direction__item:first-child,
  .home-page .home-process__step:first-child {
    border-top: 0;
  }

  .home-page .home-direction__copy p {}

  .home-page .home-offer__grid {
    grid-template-rows: auto;
  }

  .home-page .home-offer__card--corporate,
  .home-page .home-offer__card--private,
  .home-page .home-offer__card--live {
    grid-column: 1 / span 1;
    grid-row: auto;
    min-height: 14.5rem;
    padding: var(--space-5);
  }

  .home-page .home-offer__card--corporate .home-offer__card-copy,
  .home-page .home-offer__card--private .home-offer__card-copy,
  .home-page .home-offer__card--live .home-offer__card-copy {
    max-width: 100%;
  }

  .home-page .home-live__media {
    width: 100%;
  }

  .home-page .home-mocktail__detail--panel,
  .home-page .home-mocktail__detail:not(.home-mocktail__detail--panel) {
    grid-column: 1 / span 1;
  }

  .home-page .home-mocktail__detail:not(.home-mocktail__detail--panel) {
    padding: var(--space-5) 0 0;
  }

  .home-page .home-process__step + .home-process__step,
  .home-page .home-process__step:nth-child(3) {
    border-inline-start: 0;
  }

  .home-page .home-portfolio__tile--gala,
  .home-page .home-portfolio__tile--table,
  .home-page .home-portfolio__tile--bar {
    grid-column: 1 / span 1;
  }

  .home-page .home-portfolio__tile--gala,
  .home-page .home-portfolio__tile--bar {
    aspect-ratio: 4 / 5;
  }

  .home-page .home-portfolio__tile--table {
    aspect-ratio: 3 / 2;
  }

  .home-page .home-cta__panel {
    width: 100%;
    padding: var(--space-6);
  }

  .home-page .home-cta__button {
    width: 100%;
  }

  .home-page .home-routes__heading,
  .home-page .home-routes__list {
    grid-column: 1 / span 1;
  }

  .home-page .home-routes__item,
  .home-page .home-routes__item:first-child {
    grid-template-columns: 2rem minmax(0, 1fr) 1rem;
    min-height: 3.25rem;
    padding: var(--space-5) 0;
    border-bottom: var(--border-default);
    border-inline-start: 0;
  }

  .home-page .home-routes__arrow {
    display: block;
  }

  .home-page .home-routes__copy span {
    max-width: 100%;
  }
}

@media (max-width: 23.75rem) {
  .home-page .home-direction__item,
  .home-page .home-process__step {
    grid-template-columns: 1fr;
    gap: var(--space-3);
  }
}

@media (hover: none) {
  .home-page .home-offer__card:hover {
    border-color: var(--color-border);
    background: var(--color-graphite-panel);
    box-shadow: none;
    transform: none;
  }

  .home-page .home-offer__card--live:hover {
    background: linear-gradient(135deg, var(--color-graphite-panel), var(--color-felt-green));
  }

  .home-page .home-live__media:hover img,
  .home-page .home-portfolio__tile:hover img {
    transform: none;
  }

  .home-page .home-audience__panel:hover {
    border-color: var(--color-border);
    background: var(--color-surface);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .home-live__media img,
  .home-page .home-portfolio__tile img,
  .home-page .home-cta__button span,
  .home-page .home-routes__arrow {
    transition: none;
  }
}

.thank-you {
  display: flex;
  min-height: min(46rem, calc(100vh - 12rem));
  align-items: center;
}

.thank-you__section {
  width: 100%;
  padding-block: clamp(4rem, 10vw, 9rem);
}

.thank-you__panel {
  display: flex;
  max-width: 48rem;
  flex-direction: column;
  align-items: center;
  margin-inline: auto;
  padding: clamp(2rem, 5vw, 4rem);
  text-align: center;
}

.thank-you__mark {
  display: grid;
  width: 3.5rem;
  height: 3.5rem;
  place-items: center;
  margin-block-end: var(--space-5);
  border: 1px solid var(--color-success-mint);
  border-radius: 50%;
  color: var(--color-success-mint);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
}

.thank-you__panel .eyebrow {
  margin-block-end: var(--space-4);
}

.thank-you__content {
  max-width: 38rem;
  margin-inline: auto;
  text-align: center;
}

.thank-you__content h1 {
  margin-block-end: var(--space-5);
}

.thank-you__content .lead {
  margin-block-end: var(--space-4);
}

.thank-you__next-step {
  margin-block-end: 0;
  color: var(--color-text-muted);
}

.thank-you__actions {
  justify-content: center;
  margin-block-start: var(--space-7);
}

.thank-you__contact {
  margin: var(--space-6) 0 0;
  color: var(--color-text-muted);
  font-size: var(--text-small);
}

.thank-you__contact a {
  color: var(--color-primary-white);
}

.thank-you__contact a:hover {
  color: var(--color-champagne-light);
}

@media (max-width: 40rem) {
  .thank-you {
    min-height: auto;
  }

  .thank-you__panel {
    padding: var(--space-6) var(--space-5);
  }

  .thank-you__mark {
    width: 3.125rem;
    height: 3.125rem;
    margin-block-end: var(--space-4);
  }

  .thank-you__actions {
    width: 100%;
    margin-block-start: var(--space-6);
  }
}
html, body {
  overflow-x: clip;
  max-width: 100%;
}

img, video, svg {
  max-width: 100%;
  height: auto;
}
