/* Migranta — light theme tokens */

:root {
  color-scheme: light;

  --t-nav-bg: rgba(255, 255, 255, 0.96);
  --t-nav-border: #E4E7EE;
  --t-nav-shadow: rgba(28, 45, 107, 0.05);
  --t-nav-link: #1A1F2E;
  --t-nav-link-hover: #1C2D6B;
  --t-nav-underline: #1C2D6B;
  --t-nav-cta-bg: #1C2D6B;
  --t-nav-cta-text: #FFFFFF;
  --t-nav-cta-border: #1C2D6B;
  --t-nav-cta-hover-bg: #FFFFFF;
  --t-nav-cta-hover-text: #1C2D6B;

  --t-switch-bg: #FFFFFF;
  --t-switch-border: #E4E7EE;
  --t-switch-muted: #5B6479;
  --t-switch-active-bg: #1C2D6B;
  --t-switch-active-text: #FFFFFF;

  --t-section-alt-bg: #F4F5F8;
  --t-section-bg: #FFFFFF;
  --t-surface-heading: #1C2D6B;
  --t-surface-text: #5B6479;
  --t-surface-eyebrow: #1C2D6B;
  --t-surface-line: #E4E7EE;
  --t-surface-em: #A8B2C8;

  --t-card-bg: #FFFFFF;
  --t-card-border: #E4E7EE;
  --t-card-shadow: rgba(28, 45, 107, 0.25);
  --t-card-accent: #1C2D6B;
  --t-card-icon: #1C2D6B;
  --t-card-title: #1C2D6B;
  --t-card-text: #5B6479;
  --t-card-more: #1C2D6B;

  --t-modal-bg: #FFFFFF;
  --t-modal-border: #E4E7EE;
  --t-modal-close-bg: #FFFFFF;
  --t-modal-close-border: #E4E7EE;
  --t-modal-close-text: #1C2D6B;
  --t-modal-title: #1C2D6B;
  --t-modal-subtitle: #C7CDD9;
  --t-modal-body: #5B6479;
  --t-modal-cta-bg: #1C2D6B;
  --t-modal-cta-text: #FFFFFF;

  --t-about-text: #5B6479;
  --t-stats-border: rgba(168, 178, 200, 0.18);
  --t-stats-value: #1C2D6B;
  --t-stats-label: #5B6479;

  --t-form-label: #5B6479;
  --t-form-input: #1A1F2E;
  --t-form-border: #E4E7EE;
  --t-form-placeholder: #A8B2C8;
  --t-surface-btn-primary-bg: #1C2D6B;
  --t-surface-btn-primary-text: #FFFFFF;
  --t-surface-btn-ghost-border: #A8B2C8;
  --t-surface-btn-ghost-text: #1C2D6B;

  --t-selection-bg: #FFFFFF;
  --t-selection-text: #1C2D6B;
}

/* Nav */
.nav {
  background: var(--t-nav-bg);
}
.nav.scrolled {
  border-bottom-color: var(--t-nav-border);
  box-shadow: 0 1px 24px var(--t-nav-shadow);
}
.nav-logo { color: var(--t-nav-link-hover); }
.nav-links a {
  color: var(--t-nav-link);
}
.nav-links a:hover { color: var(--t-nav-link-hover); }
.nav-links a::after { background: var(--t-nav-underline); }
.nav-cta {
  background: var(--t-nav-cta-bg);
  color: var(--t-nav-cta-text);
  border-color: var(--t-nav-cta-border);
}
.nav-cta:hover {
  background: var(--t-nav-cta-hover-bg);
  color: var(--t-nav-cta-hover-text);
  border-color: var(--t-nav-cta-hover-bg);
}
.lang-switch {
  border-color: var(--t-switch-border);
  background: var(--t-switch-bg);
}
.lang-switch button {
  color: var(--t-switch-muted);
}
.lang-switch button.active {
  background: var(--t-switch-active-bg);
  color: var(--t-switch-active-text);
}
.lang-switch button:hover:not(.active) {
  color: var(--t-nav-link-hover);
}

.nav-toggle {
  border-color: var(--t-switch-border);
  background: var(--t-switch-bg);
}
.nav-toggle-bar {
  background: var(--t-nav-link-hover);
}
@media (max-width: 900px) {
  .nav-links a {
    border-bottom-color: var(--t-nav-border);
  }
}

/* Surface sections */
.section--light {
  background: var(--t-section-alt-bg);
  color: var(--t-surface-heading);
}
.section--light h1,
.section--light h2,
.section--light h3,
.section--light h4 { color: var(--t-surface-heading); }
.section--light p { color: var(--t-surface-text); }
.section--light .eyebrow { color: var(--t-surface-eyebrow); }

.section--white {
  background: var(--t-section-bg);
  color: var(--t-surface-heading);
}
.section--white h1,
.section--white h2,
.section--white h3,
.section--white h4 { color: var(--t-surface-heading); }
.section--white h2 em {
  color: var(--t-surface-em) !important;
}
.section--white p { color: var(--t-surface-text); }
.section--white .eyebrow { color: var(--t-surface-eyebrow); }

.section--white .about-stats { border-top-color: var(--t-stats-border); }
.section--white .about-stats .v { color: var(--t-stats-value); }
.section--white .about-stats .k { color: var(--t-stats-label); }

.section--white .field label { color: var(--t-form-label); }
.section--white .field input,
.section--white .field textarea {
  color: var(--t-form-input);
  border-bottom-color: var(--t-form-border);
}
.section--white .field input:focus,
.section--white .field textarea:focus { border-color: var(--t-surface-heading); }
.section--white .field input::placeholder,
.section--white .field textarea::placeholder { color: var(--t-form-placeholder); }

.section--light .btn-primary,
.section--white .btn-primary {
  background: var(--t-surface-btn-primary-bg);
  color: var(--t-surface-btn-primary-text);
}
.section--light .btn-ghost,
.section--white .btn-ghost {
  border-color: var(--t-surface-btn-ghost-border);
  color: var(--t-surface-btn-ghost-text);
}
.section--light .btn-ghost:hover,
.section--white .btn-ghost:hover {
  background: var(--t-surface-btn-primary-bg);
  color: var(--t-surface-btn-primary-text);
  border-color: var(--t-surface-btn-primary-bg);
}

.about-copy p { color: var(--t-about-text); }

/* Service cards */
.service-card {
  background: var(--t-card-bg);
  border-color: var(--t-card-border);
}
.service-card::before { background: var(--t-card-accent); }
.service-card:hover {
  box-shadow: 0 24px 40px -20px var(--t-card-shadow);
}
.service-card .icon { color: var(--t-card-icon); }
.service-card h3 { color: var(--t-card-title); }
.service-card p { color: var(--t-card-text); }
.service-card .more { color: var(--t-card-more); }

/* Modal */
.svc-modal__dialog {
  background: var(--t-modal-bg);
  border: 1px solid var(--t-modal-border);
}
.svc-modal__close {
  background: var(--t-modal-close-bg);
  border-color: var(--t-modal-close-border);
  color: var(--t-modal-close-text);
}
.svc-modal__close:hover {
  background: var(--t-modal-cta-bg);
  color: var(--t-modal-cta-text);
  border-color: var(--t-modal-cta-bg);
}
.svc-modal__icon { color: var(--t-card-icon); }
.svc-modal__title { color: var(--t-modal-title); }
.svc-modal__subtitle { color: var(--t-modal-subtitle); }
.svc-modal__body { color: var(--t-modal-body); }
.svc-modal__cta {
  background: var(--t-modal-cta-bg);
  color: var(--t-modal-cta-text);
}
.svc-modal__cta:hover {
  background: var(--t-surface-em);
}

::selection {
  background: var(--t-selection-bg);
  color: var(--t-selection-text);
}

.section--white .world-map .pulse {
  background: var(--navy);
  box-shadow: 0 0 0 4px rgba(28, 45, 107, 0.12);
}
.section--white .world-map .pulse::after {
  border-color: var(--navy);
}
.section--white .world-map .pulse .lbl-pin {
  color: var(--navy);
}

/* Contact direct card — always a dark panel */
.section--white .contact-direct h3,
.contact-direct h3 {
  color: var(--white);
}
.section--white .contact-direct .sub,
.contact-direct .sub {
  color: var(--white-70);
}
.section--white .contact-direct .ch-label,
.contact-direct .ch-label {
  color: var(--silver);
}
.section--white .contact-direct .ch-value,
.contact-direct .ch-value {
  color: var(--white);
}
.section--white .contact-direct .channel .ch-icon,
.contact-direct .channel .ch-icon {
  color: var(--white);
}
