.theme-light {
  --light-bg: #f6f0e6;
  --light-panel: rgba(255, 252, 246, 0.84);
  --light-panel-strong: rgba(255, 250, 241, 0.94);
  --light-border: rgba(162, 118, 48, 0.12);
  --light-border-strong: rgba(162, 118, 48, 0.22);
  --light-text: #2e2214;
  --light-text-strong: #1a130c;
  --light-muted: #6f5c43;
  --light-accent: #8c6729;
  --light-accent-strong: #cda558;
  --light-hot: #a27630;
  background:
    radial-gradient(circle at 12% 14%, rgba(205, 165, 88, 0.12), transparent 24%),
    radial-gradient(circle at 86% 8%, rgba(242, 227, 174, 0.1), transparent 22%),
    linear-gradient(180deg, #faf7f0 0%, #f6f0e6 48%, #f1e9dd 100%);
  color: var(--light-text);
}

.theme-light .page-shell::before {
  background: rgba(205, 165, 88, 0.12);
}

.theme-light .page-shell::after {
  background: rgba(162, 118, 48, 0.08);
}

.theme-light .site-header {
  border-color: rgba(162, 118, 48, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.82), rgba(249, 244, 235, 0.86));
  box-shadow: 0 0 0 1px rgba(162, 118, 48, 0.08), 0 10px 30px rgba(33, 23, 12, 0.08);
}

.theme-light .wordmark,
.theme-light .hero h1,
.theme-light .section-heading h2,
.theme-light .difference-copy h2,
.theme-light .cta-panel__copy h2,
.theme-light .service-card h3,
.theme-light .fit-card h3,
.theme-light .timeline-step h3,
.theme-light .outcome-card h3,
.theme-light .principles h3,
.theme-light .signal-card strong {
  color: var(--light-text-strong);
  text-shadow: none;
}

.theme-light .wordmark img {
  filter: none;
}

.theme-light .site-nav,
.theme-light .site-nav a,
.theme-light .kicker,
.theme-light .section-label,
.theme-light .signal-card__label,
.theme-light .hero__eyebrow span,
.theme-light .timeline-step span,
.theme-light .contact-form span,
.theme-light .service-card li,
.theme-light .fit-card li,
.theme-light .cta-points span,
.theme-light .service-card__index {
  color: var(--light-accent);
  text-shadow: none;
}

.theme-light .site-nav a:hover {
  color: var(--light-hot);
}

.theme-light .button {
  border-color: rgba(162, 118, 48, 0.22);
  background:
    linear-gradient(135deg, rgba(205, 165, 88, 0.18), rgba(242, 227, 174, 0.14) 48%, rgba(255, 253, 248, 0.94));
  color: var(--light-text-strong);
  box-shadow: 0 0 0 1px rgba(162, 118, 48, 0.08), 0 12px 28px rgba(33, 23, 12, 0.08);
}

.theme-light .button:hover {
  border-color: rgba(205, 165, 88, 0.34);
  box-shadow: 0 0 0 1px rgba(162, 118, 48, 0.12), 0 16px 34px rgba(33, 23, 12, 0.1);
}

.theme-light .button--ghost {
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(249, 244, 236, 0.9));
  border-color: rgba(162, 118, 48, 0.14);
}

.theme-light .hero {
  background: rgba(251, 248, 242, 0.58);
  border-top-color: rgba(162, 118, 48, 0.12);
  border-bottom-color: rgba(162, 118, 48, 0.12);
  box-shadow: 0 24px 70px rgba(33, 23, 12, 0.08);
}

.theme-light .hero__video {
  filter: saturate(0.82) brightness(1.04) contrast(0.96) sepia(0.12);
}

.theme-light .hero__veil {
  background:
    linear-gradient(180deg, rgba(251, 248, 243, 0.12) 0%, rgba(248, 244, 236, 0.44) 48%, rgba(244, 238, 229, 0.8) 100%),
    linear-gradient(90deg, rgba(251, 248, 243, 0.95) 0%, rgba(251, 248, 243, 0.8) 44%, rgba(251, 248, 243, 0.28) 72%, rgba(251, 248, 243, 0.14) 100%),
    radial-gradient(circle at 85% 20%, rgba(242, 227, 174, 0.14), transparent 22%),
    radial-gradient(circle at 20% 74%, rgba(205, 165, 88, 0.1), transparent 28%);
}

.theme-light .hero__grid {
  background-image:
    linear-gradient(rgba(87, 66, 35, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(87, 66, 35, 0.05) 1px, transparent 1px);
  mix-blend-mode: multiply;
  opacity: 0.22;
}

.theme-light .hero__eyebrow span {
  border-color: rgba(162, 118, 48, 0.14);
  background: rgba(255, 251, 245, 0.8);
}

.theme-light .hero h1 span {
  color: var(--light-accent-strong);
  text-shadow: none;
}

.theme-light .hero__lede,
.theme-light .section-heading p,
.theme-light .difference-copy p,
.theme-light .timeline-step p,
.theme-light .outcome-card p,
.theme-light .cta-panel__copy p,
.theme-light .service-card p,
.theme-light .fit-card li,
.theme-light .signal-card p,
.theme-light .principles p,
.theme-light .form-note,
.theme-light .form-feedback {
  color: var(--light-muted);
}

.theme-light .signal-card,
.theme-light .service-card,
.theme-light .fit-card,
.theme-light .outcome-card,
.theme-light .timeline-step,
.theme-light .principles article,
.theme-light .contact-form,
.theme-light .cta-panel,
.theme-light .section {
  border-color: var(--light-border);
  background:
    linear-gradient(180deg, rgba(255, 254, 249, 0.9), rgba(249, 244, 236, 0.94));
  box-shadow: 0 14px 40px rgba(33, 23, 12, 0.06);
}

.theme-light .section--difference,
.theme-light .section--cta,
.theme-light .section--fit {
  background:
    linear-gradient(180deg, rgba(255, 252, 246, 0.95), rgba(248, 242, 232, 0.95));
}

.theme-light .signal-card,
.theme-light .contact-form,
.theme-light .principles article,
.theme-light .cta-panel {
  box-shadow: 0 0 0 1px rgba(162, 118, 48, 0.06), 0 16px 36px rgba(33, 23, 12, 0.06);
}

.theme-light .section--process {
  background:
    linear-gradient(180deg, rgba(255, 251, 245, 0.76), rgba(255, 248, 239, 0.82));
  backdrop-filter: blur(8px);
}

.theme-light .vision-strip__image {
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.996) 7%, rgba(0, 0, 0, 0.996) 93%, transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.996) 7%, rgba(0, 0, 0, 0.996) 93%, transparent 100%);
}

.theme-light .vision-strip__asset--left {
  opacity: 0.92;
  filter: saturate(1.04) brightness(0.88) contrast(1.26);
}

.theme-light .vision-strip__asset--right {
  opacity: 0.88;
  filter: saturate(1) brightness(0.97) contrast(1.1);
}

.theme-light .vision-strip__image::before {
  background:
    linear-gradient(180deg, rgba(246, 240, 230, 0.34), rgba(246, 240, 230, 0) 10%, rgba(246, 240, 230, 0) 90%, rgba(246, 240, 230, 0.34)),
    linear-gradient(90deg, rgba(246, 240, 230, 0.03), transparent 8%, transparent 92%, rgba(246, 240, 230, 0.03));
}

.theme-light .vision-strip__image::after {
  background:
    radial-gradient(circle at 50% 50%, rgba(205, 165, 88, 0.05), transparent 44%),
    linear-gradient(90deg, rgba(205, 165, 88, 0.015), transparent 10%, transparent 90%, rgba(242, 227, 174, 0.03));
  mix-blend-mode: multiply;
}

.theme-light .service-card::before,
.theme-light .fit-card::before,
.theme-light .outcome-card::before,
.theme-light .timeline-step::before,
.theme-light .contact-form::before,
.theme-light .signal-card::before,
.theme-light .principles article::before,
.theme-light .cta-panel::before,
.theme-light .section::before,
.theme-light .hero::before {
  background:
    linear-gradient(90deg, rgba(162, 118, 48, 0.08), transparent 16%, transparent 84%, rgba(205, 165, 88, 0.08));
}

.theme-light .service-card::after,
.theme-light .fit-card::after,
.theme-light .outcome-card::after,
.theme-light .timeline-step::after,
.theme-light .signal-card::after {
  border-top-color: rgba(162, 118, 48, 0.22);
  border-right-color: rgba(162, 118, 48, 0.22);
}

.theme-light .service-card__index,
.theme-light .service-card li,
.theme-light .cta-points span {
  border-color: rgba(162, 118, 48, 0.14);
  background: rgba(255, 249, 239, 0.92);
}

.theme-light .contact-form input,
.theme-light .contact-form textarea {
  border-color: rgba(46, 34, 20, 0.1);
  background: rgba(255, 253, 249, 0.92);
  color: var(--light-text-strong);
}

.theme-light .contact-form input:focus,
.theme-light .contact-form textarea:focus {
  border-color: rgba(162, 118, 48, 0.3);
  background: rgba(255, 254, 251, 0.98);
}

.theme-light .form-feedback {
  color: var(--light-accent);
}

.theme-light .form-note a {
  color: var(--light-accent);
  text-decoration: underline;
  text-underline-offset: 0.18em;
}
