/**
 * Site-wide dark mode polish — syncs with Website Settings tokens.
 * Booking form dark rules live in booking.css.
 */

/* ── Section dividers ───────────────────────────────────────────────────── */

[data-theme="dark"] .mk-section--curved::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 20'%3E%3Cpath fill='%23111010' d='M0 0c360 20 720 20 1080 0h360v20H0V0z'/%3E%3C/svg%3E");
}

/* ── Inverted “dark band” sections (use band tokens, not --mk-primary) ── */

[data-theme="dark"] .mk-section--dark {
  background-color: var(--mk-band-bg);
  color: var(--mk-band-text);
}

[data-theme="dark"] .mk-section--dark p,
[data-theme="dark"] .mk-section--dark h1,
[data-theme="dark"] .mk-section--dark h2,
[data-theme="dark"] .mk-section--dark h3,
[data-theme="dark"] .mk-section--dark h4 {
  color: var(--mk-band-text);
}

[data-theme="dark"] .mk-cta--dark,
[data-theme="dark"] .mk-cta-banner,
[data-theme="dark"] .mk-final-cta--dark:not(.mk-final-cta--has-bg) {
  background-color: var(--mk-band-bg);
  color: var(--mk-band-text);
  border: 1px solid var(--mk-border);
}

[data-theme="dark"] .mk-cta--dark h2,
[data-theme="dark"] .mk-cta--dark h3,
[data-theme="dark"] .mk-cta-banner h3,
[data-theme="dark"] .mk-final-cta--dark:not(.mk-final-cta--has-bg) .mk-final-cta__heading {
  color: var(--mk-band-text);
}

[data-theme="dark"] .mk-cta--dark p,
[data-theme="dark"] .mk-cta-banner p,
[data-theme="dark"] .mk-final-cta--dark:not(.mk-final-cta--has-bg) .mk-final-cta__text,
[data-theme="dark"] .mk-final-cta--dark:not(.mk-final-cta--has-bg) .mk-eyebrow {
  color: var(--mk-band-text-muted);
}

[data-theme="dark"] .mk-final-cta--dark:not(.mk-final-cta--has-bg) .mk-btn--primary {
  background-color: var(--mk-accent);
  color: var(--mk-on-accent);
  border-color: var(--mk-accent);
}

[data-theme="dark"] .mk-final-cta--dark:not(.mk-final-cta--has-bg) .mk-btn--primary:hover {
  background-color: var(--mk-accent-hover);
  border-color: var(--mk-accent-hover);
  color: var(--mk-on-accent);
}

/* ── Hero / utility ───────────────────────────────────────────────────── */

[data-theme="dark"] .mk-hero:not([style*="background-image"]) {
  background-color: var(--mk-surface);
  color: var(--mk-text);
}

[data-theme="dark"] .mk-skip-link {
  background: var(--mk-accent);
  color: var(--mk-on-accent);
}

[data-theme="dark"] .mk-hero-collage__photo {
  border-color: var(--mk-surface);
}

/* ── Footer ─────────────────────────────────────────────────────────── */

[data-theme="dark"] .mk-footer {
  background: var(--mk-bg);
}

/* ── Session page ───────────────────────────────────────────────────── */

[data-theme="dark"] .mk-session-page .mk-session-hero__actions .mk-btn--outline {
  background-color: transparent;
  color: var(--mk-text);
  border-color: var(--mk-border);
}

[data-theme="dark"] .mk-session-page .mk-session-hero__actions .mk-btn--outline:hover {
  background-color: var(--mk-surface);
  color: var(--mk-text);
  border-color: color-mix(in srgb, var(--mk-border) 55%, var(--mk-text));
}

/* ── Investment cards ─────────────────────────────────────────────────── */

[data-theme="dark"] .mk-invest-card {
  box-shadow: var(--shadow-sm);
}

[data-theme="dark"] .mk-invest-card:hover {
  box-shadow: var(--shadow-md);
}

[data-theme="dark"] .mk-invest-card__media,
[data-theme="dark"] .mk-invest-card__image-wrap {
  background: var(--mk-surface-2);
}

/* ── Gift card promo (investment page) ────────────────────────────────── */

[data-theme="dark"] .mk-gift-cta .mk-gift-card {
  box-shadow: var(--shadow-sm);
}

[data-theme="dark"] .mk-gift-cta .mk-gift-card__mockup {
  background: var(--mk-surface-2);
  box-shadow: var(--shadow-lg);
}

[data-theme="dark"] .mk-gift-cta .mk-gift-card__stamp {
  color: var(--mk-text);
}

[data-theme="dark"] .mk-gift-cta .mk-gift-card__label {
  color: var(--mk-muted);
}

/* ── Contact — CRM form (.cp-cf) ─────────────────────────────────────── */

html[data-theme="dark"] .mk-contact__form-panel .cp-cf {
  --cp-cf-accent: var(--mk-accent);
  --cp-heading-text: var(--mk-text);
  --cp-card-bg: var(--mk-bg);
  --cp-border: var(--mk-border);
  color: var(--mk-text) !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-label {
  color: var(--mk-text-2) !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-input,
html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-select,
html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-textarea {
  background-color: var(--mk-bg) !important;
  border-color: var(--mk-border) !important;
  color: var(--mk-text) !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-input::placeholder,
html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-textarea::placeholder {
  color: var(--mk-text-2) !important;
  opacity: 0.72;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-input:focus,
html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-select:focus,
html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-textarea:focus {
  border-color: var(--mk-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--mk-accent) 22%, transparent) !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-select {
  background-color: var(--mk-bg) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23c8c3bc' stroke-width='1.5' fill='none'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 10px 6px !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-submit {
  background: var(--mk-accent) !important;
  color: var(--mk-on-accent) !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-submit:hover {
  filter: brightness(1.06);
}

/* ── Gift card page — CRM checkout (.cp-gc-purchase) ──────────────────── */

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase {
  --cp-gc-accent: var(--mk-accent);
  --cp-heading-text: var(--mk-text);
  --cp-card-bg: var(--mk-surface);
  --cp-border: var(--mk-border);
  --cp-muted-62: var(--mk-text-2);
  color: var(--mk-text) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-card,
html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-header {
  background: var(--mk-surface) !important;
  border-color: var(--mk-border) !important;
  color: var(--mk-text) !important;
  box-shadow: var(--shadow-md) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-header h2 {
  color: var(--mk-text) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-header p,
html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field label,
html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field__hint {
  color: var(--mk-text-2) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field input,
html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field textarea {
  background: var(--mk-bg) !important;
  border-color: var(--mk-border) !important;
  color: var(--mk-text) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field input::placeholder,
html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field textarea::placeholder {
  color: var(--mk-muted) !important;
  opacity: 1;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field input:focus,
html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-field textarea:focus {
  border-color: var(--mk-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--mk-accent) 22%, transparent) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-preset {
  background: var(--mk-bg) !important;
  border-color: var(--mk-border) !important;
  color: var(--mk-text-2) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-preset:hover,
html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-preset.is-active {
  background: color-mix(in srgb, var(--mk-accent) 12%, var(--mk-bg)) !important;
  border-color: var(--mk-accent) !important;
  color: var(--mk-text) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-done h3 {
  color: var(--mk-text) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-done p {
  color: var(--mk-text-2) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-done .cp-gc-code {
  background: var(--mk-bg) !important;
  border-color: var(--mk-border) !important;
  color: var(--mk-accent-emphasis, var(--mk-link)) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-another {
  background: var(--mk-accent) !important;
  color: var(--mk-on-accent) !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-msg--ok {
  background: color-mix(in srgb, #16a34a 12%, var(--mk-surface)) !important;
  border-color: color-mix(in srgb, #16a34a 28%, var(--mk-border)) !important;
  color: #4ade80 !important;
}

html[data-theme="dark"] .mk-gift__checkout .cp-gc-purchase .cp-gc-msg--err {
  background: color-mix(in srgb, #dc2626 10%, var(--mk-surface)) !important;
  border-color: color-mix(in srgb, #dc2626 25%, var(--mk-border)) !important;
  color: #fca5a5 !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-success {
  background: color-mix(in srgb, #16a34a 12%, var(--mk-surface)) !important;
  border-color: color-mix(in srgb, #16a34a 28%, var(--mk-border)) !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-success h3 {
  color: #4ade80 !important;
}

html[data-theme="dark"] .mk-contact__form-panel .cp-cf .cp-cf-success p {
  color: var(--mk-text-2) !important;
}

/* ── Accent emphasis text on dark surfaces ───────────────────────────── */

[data-theme="dark"] .mk-invest-card__category,
[data-theme="dark"] .mk-invest-card__badge,
[data-theme="dark"] .mk-invest-card__price,
[data-theme="dark"] .mk-about-split__stat-number,
[data-theme="dark"] .mk-stats__number,
[data-theme="dark"] .mk-session-plan__price,
[data-theme="dark"] .mk-testimonial-card__stars,
[data-theme="dark"] .mk-process__number {
  color: var(--mk-accent-emphasis, var(--mk-link));
}

[data-theme="dark"] .mk-process__number {
  border-color: var(--mk-accent-emphasis, var(--mk-link));
}

[data-theme="dark"] .mk-testimonial-card::before {
  color: var(--mk-accent-emphasis, var(--mk-link));
}

/* ── Cards & process steps — lift off page background ──────────────── */

[data-theme="dark"] .mk-testimonial-card {
  background-color: var(--mk-surface);
}

[data-theme="dark"] .mk-testimonial-card__subtitle {
  color: var(--mk-text-2);
}

[data-theme="dark"] .mk-process__step {
  background-color: var(--mk-surface);
}

[data-theme="dark"] .mk-process__title {
  color: var(--mk-text);
}

[data-theme="dark"] .mk-process__text {
  color: var(--mk-text-2);
}

[data-theme="dark"] .mk-invest-card {
  background: var(--mk-surface);
  border-color: var(--mk-border);
}

/* ── Testimonial slider controls ─────────────────────────────────────── */

[data-theme="dark"] .mk-testimonials-slider.mk-slider .mk-slider__btn,
[data-theme="dark"] .mk-testimonial-slider .mk-slider__btn {
  background: var(--mk-surface);
  border-color: var(--mk-border);
  color: var(--mk-text);
}

[data-theme="dark"] .mk-testimonials-slider.mk-slider .mk-slider__btn:hover,
[data-theme="dark"] .mk-testimonial-slider .mk-slider__btn:hover {
  border-color: var(--mk-link);
  color: var(--mk-link);
  background: var(--mk-surface-2);
}

[data-theme="dark"] .mk-slider__dot {
  background: var(--mk-border);
}

[data-theme="dark"] .mk-slider__dot--active {
  background: var(--mk-accent-emphasis, var(--mk-link));
}

/* ── Navigation active / hover ───────────────────────────────────────── */

[data-theme="dark"] .mk-nav__link:hover,
[data-theme="dark"] .mk-nav__link.is-active,
[data-theme="dark"] .current-menu-item > .mk-nav__link,
[data-theme="dark"] .current_page_item > .mk-nav__link,
[data-theme="dark"] .current-menu-ancestor > .mk-nav__link {
  color: var(--mk-link);
}

[data-theme="dark"] .mk-nav__link::after {
  background-color: var(--mk-link);
}

[data-theme="dark"] .mk-header__nav .mk-nav__link--top:hover,
[data-theme="dark"] .mk-header__nav .mk-nav__link--top.is-active,
[data-theme="dark"] .mk-header__nav .current-menu-item > .mk-nav__link--top,
[data-theme="dark"] .mk-header__nav .current_page_item > .mk-nav__link--top,
[data-theme="dark"] .mk-header__nav .current-menu-ancestor > .mk-nav__link--top {
  color: var(--mk-text);
  background-color: color-mix(in srgb, var(--mk-text) 9%, transparent);
}

[data-theme="dark"] .mk-header__nav .current-menu-item > .mk-nav__link--top,
[data-theme="dark"] .mk-header__nav .current_page_item > .mk-nav__link--top {
  background-color: color-mix(in srgb, var(--mk-text) 12%, transparent);
}

/* ── Session pricing labels ──────────────────────────────────────────── */

[data-theme="dark"] .mk-session-plan__features-label {
  color: var(--mk-text-2);
}

/* ── Policy pages ────────────────────────────────────────────────────── */

[data-theme="dark"] .mk-policy {
  background: var(--mk-surface);
  border-color: var(--mk-border);
  box-shadow: var(--shadow-sm);
}

[data-theme="dark"] .is-policy-page .mk-page-hero--policy:not(.mk-page-hero--has-bg) {
  background: linear-gradient(
    180deg,
    var(--mk-surface) 0%,
    var(--mk-bg) 100%
  );
}

/* ── Modern homepage layout ──────────────────────────────────────────── */

[data-theme="dark"] .mk-modern-sessions,
[data-theme="dark"] .mk-modern-testimonials {
  background: var(--mk-surface);
}

[data-theme="dark"] .mk-modern-session__media {
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.28);
}

[data-theme="dark"] .mk-modern-about__photo {
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .mk-modern-intro__scrim-glow {
	background: linear-gradient(180deg, rgba(8, 8, 10, 0.2) 0%, rgba(8, 8, 10, 0.62) 100%);
}

/* ── Header utility bar ─────────────────────────────────────────────── */

[data-theme="dark"] .mk-header-utility {
	background-color: var(--mk-header-utility-overlay-bg);
	border-bottom-color: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.82);
}

[data-theme="dark"] .mk-site-header.is-scrolled .mk-header-utility {
	background-color: var(--mk-header-utility-overlay-bg);
	border-bottom-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] body.home-layout--modern .mk-site-header .mk-header,
[data-theme="dark"] body.home-layout--modern .mk-site-header:not(.is-scrolled) .mk-header {
	background-color: var(--mk-bg);
	border-bottom-color: color-mix(in srgb, var(--mk-border) 55%, transparent);
}
