/* México-3 — Midnight / copper — layout + contrast fixed */
.rtl-ltr-switcher-btn { display: none !important; }

:root {
  --font-primary: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --font-secondary: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --font-4: "Segoe UI", "Helvetica Neue", Arial, sans-serif;

  --brand: #C2410C;
  --brand-dark: #9A3412;
  --brand-light: #FDBA74;
  --brand-soft: #FFF7ED;
  --ink: #0B1220;
  --ink-2: #1E293B;
  --muted: #4B5563;
  --surface: #FFFFFF;
  --surface-2: #F8FAFC;
  --border: #E5E7EB;
  --on-brand: #FFFFFF;
  --footer-bg: #0B1220;
  --footer-text: #F8FAFC;
  --footer-muted: #94A3B8;
  --dark-panel: #111827;

  --color-blue: var(--brand);
  --color-sky: var(--brand-light);
  --color-primary: var(--dark-panel);
  --color-secondary: var(--ink-2);
  --color-body: var(--muted);
  --color-heading-1: var(--ink);
  --color-title: var(--ink);
  --color-heading-dark: var(--ink);
  --color-border: var(--border);
  --bg-dark-1: var(--footer-bg);
}

html, body {
  background: var(--surface-2) !important;
  color: var(--muted) !important;
  font-family: var(--font-primary) !important;
}

a { color: var(--brand); }
a:hover { color: var(--brand-dark); }

/* ========== BUTTONS ========== */
.rts-btn.btn-primary:not(.btn-white):not(.btn-border) {
  background: var(--brand) !important;
  border-color: var(--brand) !important;
  color: #fff !important;
}
.rts-btn.btn-primary:not(.btn-white):not(.btn-border):hover {
  background: var(--brand-dark) !important;
  border-color: var(--brand-dark) !important;
  color: #fff !important;
}
.rts-btn.btn-primary.btn-white {
  background: #fff !important;
  color: var(--ink) !important;
}
.rts-btn.btn-primary.btn-border {
  background: #fff !important;
  color: var(--ink) !important;
  border: 1px solid var(--ink) !important;
}

/* ========== HEADER: always solid dark — never blends ========== */
header.header-one,
header.header-one.top-transparent-header,
header.header-one.style-four,
header.header-one.header--sticky,
header.header-one.header--sticky.sticky {
  background: var(--ink) !important;
  background-image: none !important;
  border-bottom: 1px solid rgba(255,255,255,.08);
  position: relative;
  z-index: 1000;
}
header.header-one.header--sticky.sticky {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  box-shadow: 0 10px 30px rgba(0,0,0,.28);
}

.header-top-area-wrapper,
.top-transparent-header .header-top-area-wrapper,
header.header-one .header-top-area-wrapper {
  background: transparent !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}
/* Kill template dark-on-transparent text */
.top-transparent-header .header-top-area-wrapper *,
.top-transparent-header .header-top-area-wrapper .header-top-one-wrapper .right p,
.top-transparent-header .header-top-area-wrapper .header-top-one-wrapper .right p a,
.top-transparent-header .header-top-area-wrapper .header-top-one-wrapper .left a,
header.header-one .header-top-one-wrapper .left a,
header.header-one .header-top-one-wrapper .right p,
header.header-one .header-top-one-wrapper .right a,
header.header-one .main-nav > a,
header.header-one .brand-wordmark {
  color: #F8FAFC !important;
  text-shadow: none !important;
}
header.header-one .header-top-one-wrapper .right a {
  color: var(--brand-light) !important;
}
header.header-one .main-nav > a:hover {
  color: var(--brand-light) !important;
}

.brand-wordmark {
  font-weight: 800 !important;
  font-size: clamp(1.1rem, 1.35vw, 1.5rem) !important;
  letter-spacing: -0.03em;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.header-main-one-wrapper {
  gap: 12px;
}
.header-one .main-nav > a {
  font-size: 13px !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  white-space: nowrap;
}
.header-one .button-area .rts-btn.header-one-btn {
  margin-left: 6px !important;
  padding: 10px 14px !important;
  font-size: 13px !important;
  white-space: nowrap;
}
.header-one .menu-btn img,
.header-one .menu-btn .menu-light {
  filter: brightness(0) invert(1);
}

.side-bar .brand-wordmark,
.logo-1.brand-wordmark {
  color: var(--ink) !important;
  max-width: none;
  font-size: 1.7rem !important;
}

/* ========== HERO ========== */
.rts-banner-area-eight,
.banner-bg_eight {
  position: relative !important;
  isolation: isolate;
  min-height: 720px;
  height: auto !important;
  padding: 160px 0 220px !important;
  display: flex !important;
  align-items: center;
  background-size: cover !important;
  background-position: center !important;
}
/* Strong dark veil — banner photo is light, text must stay white */
.rts-banner-area-eight::before,
.banner-bg_eight::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    105deg,
    rgba(11, 18, 32, 0.92) 0%,
    rgba(11, 18, 32, 0.82) 45%,
    rgba(11, 18, 32, 0.72) 100%
  ) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}
.rts-banner-area-eight > .container,
.rts-banner-area-eight .rts-counter-up-area-eight,
.rts-banner-area-eight .banner-shape-area {
  position: relative;
  z-index: 2;
}
.banner-shape-area { display: none !important; }

.banner-inner-content-eight {
  padding-bottom: 40px !important;
  max-width: 820px;
}
.banner-inner-content-eight .title {
  font-size: clamp(2.2rem, 5vw, 3.6rem) !important;
  line-height: 1.15 !important;
  color: #ffffff !important;
  text-transform: none !important;
}
.banner-inner-content-eight .title span {
  color: var(--brand-light) !important;
  font-weight: 700 !important;
}
.banner-inner-content-eight .disc,
.banner-inner-content-eight p {
  color: #E5E7EB !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  max-width: 560px;
}
.banner-inner-content-eight .pre-title-area {
  border-color: rgba(253, 186, 116, 0.55) !important;
  background: rgba(11, 18, 32, 0.35);
}
.banner-inner-content-eight .pre-title-area p {
  color: var(--brand-light) !important;
  margin: 0;
}

/* ========== COUNTER: stop overlapping services ========== */
.rts-counter-up-area-eight {
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  margin-top: 48px !important;
  width: 100% !important;
  z-index: 3;
}
.counter-up-area-eight-banner-bottom {
  position: relative !important;
  width: 100% !important;
  max-width: 1100px;
  height: auto !important;
  min-height: 180px;
  padding: 36px 40px !important;
  gap: 40px !important;
  background: var(--dark-panel) !important;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 20px 50px rgba(0,0,0,.35);
  overflow: hidden;
}
.counter-up-area-eight-banner-bottom .title,
.counter-up-area-eight-banner-bottom .counter,
.counter-up-area-eight-banner-bottom .business,
.counter-up-area-eight-banner-bottom span,
.counter-up-area-eight-banner-bottom i {
  color: #ffffff !important;
}
.counter-up-area-eight-banner-bottom .absolute-image {
  position: absolute !important;
  right: 24px !important;
  bottom: 0 !important;
  max-width: 160px !important;
  opacity: 0.9;
  pointer-events: none;
}
.counter-up-area-eight-banner-bottom .absolute-image img {
  width: 160px !important;
  height: 190px !important;
  object-fit: cover !important;
  border-radius: 14px 14px 0 0;
  position: static !important;
}

/* Services must not sit under counter */
.rts-service-area-start .padding-extend-300,
.container.padding-extend-300 {
  padding-top: 80px !important;
}
.rts-service-area-start {
  position: relative;
  z-index: 1;
  background: var(--surface) !important;
  padding-top: 40px;
  padding-bottom: 60px;
}

/* ========== LIGHT SECTIONS ========== */
.rts-service-area-start .title,
.our-experties-area .title,
.rts-business-case-area .title,
.rts-why-choose-area .title,
.rts-faq-area .title,
.rts-team-area-start-four .title,
.rts-pricing-area-one .title,
.rts-testimonials-area .title,
.rts-blog-area .title,
.title-style-one .title {
  color: var(--ink) !important;
}
.title-style-one .pre,
.rts-why-choose-area .pre,
.our-experties-area .pre,
.rts-faq-area .pre {
  color: var(--brand) !important;
}
.title-style-one .title > span,
.rts-why-choose-area .title > span,
.rts-business-case-area .title > span {
  color: var(--brand) !important;
}

.rts-service-area-start,
.rts-faq-area,
.rts-faq-area.faq-bg-one,
.rts-faq-area.bg_image,
.rts-pricing-area-one,
.rts-blog-area {
  background: var(--surface) !important;
  background-image: none !important;
}
.our-experties-area,
.rts-business-case-area,
.rts-why-choose-area,
.rts-team-area-start-four,
.rts-testimonials-area {
  background: var(--brand-soft) !important;
  background-image: none !important;
}

section.main-wrapper-sticky .sticky-statement {
  background: #fff !important;
  border: 1px solid var(--border) !important;
}
section.main-wrapper-sticky .sticky-statement .title {
  color: var(--ink) !important;
}

.pricing-wrapper-one,
.single-blog-area-start,
.accordion-item {
  background: #fff !important;
  border: 1px solid var(--border) !important;
  box-shadow: 0 10px 28px rgba(11,18,32,.06);
}
.rts-team-area-start-four .single-team-area-one-start {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.rts-team-area-start-four .single-team-area-one-start .inner-content {
  background: #fff !important;
  border: 1px solid var(--border) !important;
  box-shadow: 0 10px 28px rgba(11, 18, 32, 0.08);
}
.accordion-button { color: var(--ink) !important; background: #fff !important; }
.accordion-body { color: var(--muted) !important; background: var(--brand-soft) !important; }

/* ========== DARK PANELS ========== */
.rts-about-us-area-8,
.rts-about-us-area-8.bg_primary {
  background: var(--dark-panel) !important;
  height: auto !important;
  min-height: 420px;
  overflow: hidden;
}
.rts-about-us-area-8 span.pre { color: var(--brand-light) !important; }
.rts-about-us-area-8 .title,
.rts-about-us-area-8 .title span,
.rts-about-us-area-8 .counter,
.rts-about-us-area-8 .number,
.rts-about-us-area-8 h1,
.rts-about-us-area-8 h2,
.rts-about-us-area-8 h3,
.rts-about-us-area-8 h4,
.rts-about-us-area-8 h5 {
  color: #ffffff !important;
}
.rts-about-us-area-8 p.disc,
.rts-about-us-area-8 .bottom,
.rts-about-us-area-8 .number-area-start > span {
  color: #CBD5E1 !important;
}
.rts-about-us-area-8 img.large-image,
.rts-about-us-area-8 .large-image {
  width: 100%;
  max-width: 420px;
  height: auto;
  max-height: 520px;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center 18%;
  border-radius: 16px;
}
.rts-about-us-area-8 .right-content-image {
  bottom: auto !important;
  top: 2.5rem !important;
}
@media only screen and (max-width: 1199px) {
  .rts-about-us-area-8 .right-content-image {
    top: 1.25rem !important;
  }
}

.service-bottom-cta {
  background: var(--dark-panel) !important;
}
.service-bottom-cta,
.service-bottom-cta * { color: #F8FAFC !important; }
.service-bottom-cta img {
  width: 72px !important;
  height: 72px !important;
  object-fit: cover !important;
  border-radius: 50%;
}

/* ========== EQUAL MEDIA ========== */
.single-case-studies-four {
  aspect-ratio: 810 / 852;
  overflow: hidden;
  border-radius: 12px;
}
.single-case-studies-four img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.single-team-area-one-start img {
  width: 100% !important;
  aspect-ratio: 615 / 675;
  object-fit: cover !important;
  border-radius: 10px;
}
.rts-blog-area img,
.blog-swiper-style-one img {
  width: 100% !important;
  aspect-ratio: 410 / 303;
  object-fit: cover !important;
  border-radius: 10px;
}
.thumbnail-why-choose-8 img {
  width: 100% !important;
  max-width: 520px;
  aspect-ratio: 1 / 1;
  object-fit: cover !important;
  border-radius: 18px;
}
.rts-testimonials-area img[src*="avatar"] {
  width: 56px !important;
  height: 56px !important;
  object-fit: cover !important;
  border-radius: 50%;
}
.rts-faq-area img[src*="faq/"] {
  width: 100% !important;
  max-width: 480px;
  aspect-ratio: 31 / 36;
  object-fit: cover !important;
  object-position: center;
  border-radius: 16px;
}

/* ========== FOOTER ========== */
.footer-8-area-bg,
.footer-8-area-bg.bg_image {
  background: var(--footer-bg) !important;
  background-image: none !important;
}
.footer-8-area-bg *,
.footer-8-area-bg .title,
.footer-8-area-bg a,
.footer-8-area-bg p,
.copyright-8-wrapper,
.copyright-8-wrapper p,
.copyright-8-wrapper a,
.signle-footer-contact-8 .title,
.signle-footer-contact-8 a {
  color: var(--footer-text) !important;
}
.footer-8-area-bg a:hover,
.copyright-8-wrapper a:hover { color: var(--brand-light) !important; }
.footer-logo-area-left-8 p.disc,
.footer-8-area-bg .disc { color: var(--footer-muted) !important; }
.copyright-area-main-wrapper,
.copyright-8-wrapper {
  border-top: 1px solid rgba(148,163,184,.28) !important;
}
.logo_footer.brand-wordmark {
  color: #fff !important;
  font-size: clamp(1.6rem, 2vw, 2.2rem) !important;
  max-width: none;
  margin-bottom: 1rem;
}

input, textarea, select {
  color: var(--ink) !important;
  background: #fff !important;
  border-color: var(--border) !important;
}
label { color: var(--ink-2) !important; }

.progress-bar { background-color: var(--brand) !important; }
.progress-wrap svg path { stroke: var(--brand) !important; }

@media only screen and (max-width: 991px) {
  .rts-banner-area-eight,
  .banner-bg_eight {
    padding: 130px 0 80px !important;
    min-height: 0;
  }
  .counter-up-area-eight-banner-bottom .absolute-image { display: none !important; }
  .container.padding-extend-300 { padding-top: 40px !important; }
}
@media only screen and (max-width: 575px) {
  .brand-wordmark { font-size: 1.25rem !important; max-width: 140px; }
  .banner-inner-content-eight .title { font-size: 2rem !important; }
}

/* === LAYOUT FIX PASS === */

/* Menu button: readable on dark header, not a blank white square */
header.header-one #menu-btn,
header.header-one .menu.menu-btn {
  background: rgba(255,255,255,.1) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  color: #fff !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  border-radius: 12px !important;
  display: none !important;
  align-items: center;
  justify-content: center;
  box-shadow: none !important;
}
header.header-one #menu-btn i,
header.header-one .menu.menu-btn i {
  color: #ffffff !important;
  font-size: 18px !important;
  line-height: 1 !important;
}
header.header-one #menu-btn img,
header.header-one .menu.menu-btn img {
  display: none !important;
}
@media only screen and (max-width: 1199px) {
  header.header-one #menu-btn,
  header.header-one .menu.menu-btn {
    display: inline-flex !important;
  }
}

/* Service CTA row: no giant floating gap */
.rts-service-area-start .row.service-cta-row,
.rts-service-area-start .row.rts-section-gap {
  padding: 24px 0 10px !important;
  margin: 0 !important;
}
.service-bottom-cta {
  position: relative !important;
  overflow: visible !important;
  min-height: 92px;
  padding: 22px 48px !important;
  gap: 24px;
  background: var(--dark-panel) !important;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 16px 40px rgba(11,18,32,.18);
}
.service-bottom-cta .title,
.service-bottom-cta p,
.service-bottom-cta a {
  color: #fff !important;
  position: relative;
  z-index: 2;
}
.service-bottom-cta .mid-image {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 88px !important;
  height: 88px !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  border: 4px solid #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  z-index: 1;
  background: #fff;
}
.service-bottom-cta .mid-image img,
.service-bottom-cta img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  display: block !important;
}
@media (max-width: 991px) {
  .service-bottom-cta .mid-image { display: none !important; }
}

/* Hero: content not glued to edges — editorial inset */
.rts-banner-area-eight > .container {
  padding-left: clamp(20px, 6vw, 80px) !important;
  padding-right: clamp(20px, 6vw, 80px) !important;
}
.banner-inner-content-eight {
  max-width: 720px !important;
  margin-right: auto !important;
  padding: 28px 32px 32px !important;
  border-radius: 20px;
  background: rgba(11, 18, 32, 0.55);
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(8px);
  box-shadow: 0 24px 60px rgba(0,0,0,.28);
}
.banner-inner-content-eight .title {
  font-size: clamp(2rem, 4.2vw, 3.25rem) !important;
  margin-bottom: 16px !important;
}
.banner-inner-content-eight .disc {
  margin-bottom: 22px !important;
}
.rts-banner-area-eight,
.banner-bg_eight {
  padding: 140px 0 100px !important;
}

/* Sticky service list: sane height so CTA doesn't float in void */
section.main-wrapper-sticky {
  height: auto !important;
  max-height: none !important;
}
section.main-wrapper-sticky .sticky-statement {
  position: relative !important;
  top: auto !important;
  margin-bottom: 16px !important;
  padding: 22px 24px !important;
}
.rts-service-area-start .title-style-one.position-sticky {
  position: relative !important;
  top: auto !important;
}
.service-arrow-bottom-main { display: none !important; }

/* ===== CONTRAST HARDENING v2: text never blends ===== */
/* Default readable text on light UI */
body, p, .disc, li, span.bototm, .price-details {
  color: var(--muted-safe, #475569) !important;
}
.rts-about-area .title,
.rts-about-area h1, .rts-about-area h2, .rts-about-area h3,
.why-choose-us-area .title,
.business-solution-area .title,
.rts-brand-area .title,
.rts-blog-area .title,
.rts-team-area .title,
.rts-service .title,
.single-feature-wrapper .title,
.single-why-choose-four .title,
.single-team-area-one-start .title,
.title-style-one .title,
.title-style-four .title,
.color-title {
  color: var(--ink, #0B1220) !important;
  text-shadow: none !important;
}
.title span, .title > span, .title span.in {
  color: var(--brand) !important;
}

/* Photo / dark panels ONLY — force light text + veil */
.banner-four-area-main-wrapper,
.banner-seven,
.banner-ten-area,
.banner-accountent-two,
.banner-service-wrapper-bg,
.banner-swiper-two,
.rts-banner-area-two,
.rts-banner-area-six,
.rts-banner-area-9,
.rts-banner-area-start-11,
.rts-banner-area,
[class*="rts-banner"],
.rts-call-to-action-area-two,
.rts-call-to-action-area-three,
.rts-cta-area-six,
.cta-main-area-wrapper-one,
.rts-appoinment-area-9,
.business-solution-cta,
.rts-callto-action-area,
.bg_testimonials-6,
.brand-bg-three,
.gallery-bg,
.faq-bg-dark,
[class*="newsletter-area"],
.rts-footer-area,
footer {
  position: relative !important;
  isolation: isolate;
}
.banner-four-area-main-wrapper::before,
.banner-seven::before,
.banner-ten-area::before,
.banner-accountent-two::before,
.banner-service-wrapper-bg::before,
.banner-swiper-two::before,
.rts-banner-area-two::before,
.rts-banner-area-six::before,
.rts-banner-area-9::before,
.rts-banner-area-start-11::before,
.rts-banner-area::before,
.rts-call-to-action-area-two::before,
.rts-call-to-action-area-three::before,
.rts-cta-area-six::before,
.cta-main-area-wrapper-one::before,
.rts-appoinment-area-9::before,
.bg_testimonials-6::before,
.brand-bg-three::before,
.gallery-bg::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(105deg, rgba(8,15,28,.88) 0%, rgba(8,15,28,.62) 48%, rgba(8,15,28,.45) 100%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
.banner-four-area-main-wrapper > *,
.banner-seven > *,
.banner-ten-area > *,
.banner-accountent-two > *,
.banner-service-wrapper-bg > *,
.banner-swiper-two > *,
.rts-banner-area-two > *,
.rts-banner-area-six > *,
.rts-banner-area-9 > *,
.rts-banner-area-start-11 > *,
.rts-banner-area > *,
.rts-call-to-action-area-two > *,
.rts-call-to-action-area-three > *,
.rts-cta-area-six > *,
.cta-main-area-wrapper-one > *,
.rts-appoinment-area-9 > * {
  position: relative !important;
  z-index: 1 !important;
}

/* Light text only inside dark/photo panels */
.banner-four-area-main-wrapper .title,
.banner-four-area-main-wrapper h1,
.banner-four-area-main-wrapper h2,
.banner-four-area-main-wrapper p,
.banner-four-area-main-wrapper .disc,
.banner-four-area-main-wrapper .pre,
.banner-four-area-main-wrapper .pre-title,
.banner-seven .title,
.banner-seven h1,
.banner-seven h2,
.banner-seven p,
.banner-seven .disc,
.banner-seven .pre,
.banner-ten-area .title,
.banner-ten-area h1,
.banner-ten-area p,
.banner-ten-area .disc,
.banner-ten-area .pre,
.banner-accountent-two .title,
.banner-accountent-two h1,
.banner-accountent-two p,
.banner-accountent-two .disc,
.banner-service-wrapper-bg .title,
.banner-service-wrapper-bg h1,
.banner-service-wrapper-bg p,
.banner-service-wrapper-bg .disc,
.banner-swiper-two .title,
.banner-swiper-two h1,
.banner-swiper-two p,
.banner-swiper-two .disc,
.banner-swiper-two .pre-title,
.rts-banner-area-two .title,
.rts-banner-area-two h1,
.rts-banner-area-two p,
.rts-banner-area-two .disc,
.rts-banner-area-six .title,
.rts-banner-area-six h1,
.rts-banner-area-six p,
.rts-banner-area-six .disc,
.rts-banner-area-9 .title,
.rts-banner-area-9 h1,
.rts-banner-area-9 p,
.rts-banner-area-9 .disc,
.rts-banner-area-9 .pre,
.rts-banner-area-start-11 .title,
.rts-banner-area-start-11 h1,
.rts-banner-area-start-11 h2,
.rts-banner-area-start-11 p,
.rts-banner-area-start-11 .disc,
.rts-banner-area-start-11 .pre,
.rts-call-to-action-area-two .title,
.rts-call-to-action-area-two h2,
.rts-call-to-action-area-two p,
.rts-call-to-action-area-two .disc,
.rts-call-to-action-area-three .title,
.rts-call-to-action-area-three p,
.rts-cta-area-six .title,
.rts-cta-area-six h2,
.rts-cta-area-six p,
.cta-main-area-wrapper-one .title,
.cta-main-area-wrapper-one h2,
.cta-main-area-wrapper-one p,
.rts-appoinment-area-9 .title,
.rts-appoinment-area-9 p,
.rts-appoinment-area-9 label,
.faq-bg-dark .title,
.faq-bg-dark p,
.faq-bg-dark .accordion-button,
[class*="newsletter-area"] .title,
[class*="newsletter-area"] p {
  color: #F8FAFC !important;
  text-shadow: 0 1px 12px rgba(0,0,0,.45) !important;
}
.banner-four-area-main-wrapper .title span,
.banner-seven .title span,
.banner-ten-area .title span,
.banner-accountent-two .title span,
.banner-service-wrapper-bg .title span,
.rts-banner-area-two .title span,
.rts-banner-area-six .title span,
.rts-banner-area-9 .title span,
.rts-banner-area-start-11 .title span {
  color: var(--accent, var(--brand-light)) !important;
}

/* Footer always dark + light text */
.rts-footer-area, footer, .footer-area {
  background: var(--footer-bg, #0B1220) !important;
}
.rts-footer-area,
.rts-footer-area a,
.rts-footer-area p,
.rts-footer-area .title,
.rts-footer-area .disc,
.rts-footer-area li,
footer,
footer a,
footer p,
footer .title,
footer .disc,
footer li {
  color: #F8FAFC !important;
}
footer .disc, .rts-footer-area .disc, footer p {
  color: var(--footer-muted, #94A3B8) !important;
}

/* Light sections must stay dark text (override accidental white) */
.rts-about-area .title,
.rts-about-area p,
.rts-about-area .disc,
.about-area-wrapper-content-10 .title,
.about-area-wrapper-content-10 p,
.why-choose-us-area .title,
.why-choose-us-area p,
.why-choose-us-area .disc,
.business-solution-area .title,
.business-solution-area p,
.business-solution-area .disc,
.rts-brand-area .title,
.rts-blog-area .title,
.rts-blog-area p,
.rts-blog-area .disc,
.rts-team-area .title,
.rts-team-area p,
.single-blog-area-one .title,
.single-blog-area-one p,
.project-style-one .title,
.project-style-one p,
.single-team-area-one-start .title,
.single-why-choose-four .title,
.single-why-choose-four p,
.single-feature-wrapper .title,
.single-feature-wrapper p,
.pricing-wrapper .title,
.pricing-wrapper p,
.rts-service .title,
.rts-service p,
.accordion-button,
.accordion-body,
.faq-area:not(.faq-bg-dark) .title,
.faq-area:not(.faq-bg-dark) p {
  color: var(--ink, #0B1220) !important;
  text-shadow: none !important;
}
.single-why-choose-four .disc,
.single-feature-wrapper .disc,
.business-solution-area .disc,
.about-area-wrapper-content-10 .disc,
.rts-blog-area .disc {
  color: var(--muted-safe, #475569) !important;
}

/* CTA request bar — ensure dark panel + white text */
.rts-callto-acction-area-4,
.rts-call-to-action-area,
.callto-action-area,
.request-a-call-area {
  background: var(--footer-bg, #0B1220) !important;
}
.rts-callto-acction-area-4 .title,
.rts-callto-acction-area-4 h3,
.rts-callto-acction-area-4 span,
.rts-call-to-action-area .title,
.rts-call-to-action-area h3 {
  color: #F8FAFC !important;
}

/* Forms */
input, textarea, select, .form-control {
  background: #fff !important;
  color: #0F172A !important;
  border: 1px solid #E2E8F0 !important;
}


/* Extra dark panels: FAQ photo bg + CTA call bars */
.faq-bg-one,
.faq-bg-one.bg_image,
.rts-faq-area.bg_image,
.bg_call-toaction-4,
.rts-call-to-action-area.bg_image,
.cta-four-wrapper {
  position: relative !important;
  isolation: isolate;
}
.faq-bg-one::before,
.rts-faq-area.bg_image::before,
.bg_call-toaction-4::before,
.rts-call-to-action-area.bg_image::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(105deg, rgba(8,15,28,.90) 0%, rgba(8,15,28,.72) 55%, rgba(8,15,28,.55) 100%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
.faq-bg-one > *,
.rts-faq-area.bg_image > *,
.bg_call-toaction-4 > *,
.rts-call-to-action-area.bg_image > *,
.cta-four-wrapper > * {
  position: relative !important;
  z-index: 1 !important;
}
.faq-bg-one .title,
.faq-bg-one h2,
.faq-bg-one h3,
.faq-bg-one p,
.faq-bg-one .disc,
.faq-bg-one .accordion-button,
.faq-bg-one .accordion-body,
.rts-faq-area.bg_image .title,
.rts-faq-area.bg_image h2,
.rts-faq-area.bg_image p,
.rts-call-to-action-area .title,
.rts-call-to-action-area h2,
.rts-call-to-action-area h3,
.rts-call-to-action-area span,
.rts-call-to-action-area p,
.cta-four-wrapper .title,
.cta-four-wrapper h2,
.cta-four-wrapper h3,
.cta-four-wrapper span,
.cta-four-wrapper p {
  color: #F8FAFC !important;
  text-shadow: 0 1px 10px rgba(0,0,0,.4) !important;
}
.faq-bg-one .accordion-button,
.faq-bg-one .accordion-item,
.faq-bg-one .accordion-body {
  background: rgba(15,23,42,.55) !important;
  border-color: rgba(255,255,255,.12) !important;
}
/* Keep accordion answers readable */
.faq-bg-one .accordion-body,
.faq-bg-one .accordion-body p {
  color: #E2E8F0 !important;
}

/* Banner inner content safety */
.inner-content-wrapper-four-banner .title,
.inner-content-wrapper-four-banner h1,
.inner-content-wrapper-four-banner p,
.inner-content-wrapper-four-banner .disc,
.inner-content-wrapper-four-banner .pre {
  color: #F8FAFC !important;
  text-shadow: 0 1px 14px rgba(0,0,0,.5) !important;
}
.inner-content-wrapper-four-banner .title span {
  color: var(--accent, var(--brand-light)) !important;
}


/* Kill hollow/outline title spans — they blend into photo/dark panels */
.title span,
.title .in,
h1 span, h2 span, h3 span {
  -webkit-text-fill-color: currentColor !important;
  -webkit-text-stroke: 0 !important;
  text-stroke: 0 !important;
  color: inherit !important;
}
.banner-four-area-main-wrapper .title span,
.banner-seven .title span,
.banner-ten-area .title span,
.banner-accountent-two .title span,
.banner-service-wrapper-bg .title span,
.rts-banner-area-two .title span,
.rts-banner-area-six .title span,
.rts-banner-area-9 .title span,
.rts-banner-area-start-11 .title span,
.inner-content-wrapper-four-banner .title span,
.faq-bg-one .title span {
  color: var(--accent, var(--brand-light, #E8B86D)) !important;
  -webkit-text-fill-color: var(--accent, var(--brand-light, #E8B86D)) !important;
}
/* Light sections: brand-colored span stays solid brand */
.rts-about-area .title span,
.why-choose-us-area .title span,
.business-solution-area .title span,
.single-why-choose-four .title span,
.rts-blog-area .title span,
.rts-team-area .title span,
.pricing-wrapper .title span {
  color: var(--brand) !important;
  -webkit-text-fill-color: var(--brand) !important;
}


/* Header contrast over dark heroes */
header,
.header-one,
.header-two,
.header-three,
.header-four,
.header-five,
.rts-header-area,
.header-main-wrapper,
.header-style-four {
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(8px);
}
header .logo a,
header .logo,
.header-one .logo a,
.logo-area a,
.logo a,
.header-top a,
.header-main a,
.rts-header-area a:not(.rts-btn):not(.btn),
.header-style-four .logo a {
  color: #0B1220 !important;
}
/* ensure brand wordmark readable */
.logo a, .logo_footer a, a.logo {
  font-weight: 700 !important;
}


/* === CONTRAST FIX v3: dark cards / light links === */
.read-more,
a.read-more,
.rts-blog-area a.read-more,
.single-blog-area-style a {
  color: var(--brand) !important;
  -webkit-text-fill-color: var(--brand) !important;
}
/* Project / case overlays on photos */
.project-style-one .title,
.project-style-one h3,
.project-style-one h4,
.single-project .title,
.case-study .title,
.rts-business-case .title,
.swiper-slide .project-style-one .title {
  color: #F8FAFC !important;
  text-shadow: 0 1px 10px rgba(0,0,0,.55) !important;
}
/* Pricing amounts readable */
.pricing-wrapper .title,
.single-pricing .title,
.price-area .title,
.pricing-wrapper h3,
.single-pricing h3,
.pricing-wrapper h4 {
  color: var(--ink, #0B1220) !important;
}
.single-pricing.active .title,
.single-pricing.active h3,
.pricing-wrapper .active .title {
  color: #F8FAFC !important;
}
/* Top header strip */
.header-top,
.header-top-one,
.header-top-area {
  background: #0B1220 !important;
}
.header-top a,
.header-top p,
.header-top span,
.header-top-one a,
.header-top-one p,
.header-top-area a {
  color: #F8FAFC !important;
}
/* Appointment / contact light section titles */
.rts-appoinment-area:not(.rts-appoinment-area-9) .title,
.rts-contact-area .title,
.appoinment-area .title {
  color: var(--ink, #0B1220) !important;
  text-shadow: none !important;
}
.rts-appoinment-area:not(.rts-appoinment-area-9) .pre,
.rts-contact-area .pre {
  color: var(--brand) !important;
}
/* Hide decorative near-invisible watermark letters if present */
.section-title-watermark,
.title-watermark,
.big-text,
.water-mark {
  opacity: 0.12 !important;
  color: var(--ink) !important;
}


/* ===== HEADER-TOP: never blend (beats .top-transparent-header * rule) ===== */
.top-transparent-header .header-top-area-wrapper,
header .header-top-area-wrapper,
.header-one .header-top-area-wrapper,
.header-top-area-wrapper {
  background: #0B1220 !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}
.top-transparent-header .header-top-area-wrapper,
.top-transparent-header .header-top-area-wrapper *,
.top-transparent-header .header-top-area-wrapper a,
.top-transparent-header .header-top-area-wrapper p,
.top-transparent-header .header-top-area-wrapper span,
.top-transparent-header .header-top-area-wrapper i,
.header-top-area-wrapper,
.header-top-area-wrapper *,
.header-top-area-wrapper a,
.header-top-area-wrapper p,
.header-top-area-wrapper span,
.header-top-area-wrapper i,
.header-top-one-wrapper,
.header-top-one-wrapper *,
.header-top-one-wrapper a,
.header-top-one-wrapper p {
  color: #F8FAFC !important;
  -webkit-text-fill-color: #F8FAFC !important;
  text-shadow: none !important;
}
.top-transparent-header .header-top-area-wrapper .header-top-one-wrapper .right p a,
.top-transparent-header .header-top-area-wrapper .header-top-one-wrapper .right p a i,
.header-top-area-wrapper a:hover,
.header-top-one-wrapper a:hover {
  color: var(--accent, #E8B86D) !important;
  -webkit-text-fill-color: var(--accent, #E8B86D) !important;
}
.header-top-area-wrapper .mail::after,
.header-top-area-wrapper .left .mail::after {
  background: rgba(255,255,255,.35) !important;
}

/* Brand logos strip: clean contain, no weird crop overlays */
.rts-brand-area .mySwiper-brand-2 img,
.rts-brand-area .mySwiper-brand img,
.rts-brand-area .single-brand img,
.brand-style-two-wrapper img,
.mySwiper-brand-2 .single-brand img {
  width: auto !important;
  max-width: 160px !important;
  height: 56px !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 0 !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  background: transparent !important;
}
.rts-brand-area .single-brand {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  box-shadow: none !important;
}
.rts-brand-area .single-brand::before,
.rts-brand-area .single-brand::after,
.mySwiper-brand-2 .single-brand::before,
.mySwiper-brand-2 .single-brand::after,
.mySwiper-brand-2 .swiper-slide::before,
.mySwiper-brand-2 .swiper-slide::after {
  content: none !important;
  display: none !important;
}

/* ===== mexico-3 contrast & layout fixes (v3) ===== */
.rts-about-us-area-8 .title-style-one .title,
.rts-about-us-area-8 .title-style-one .title > span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.rts-about-us-area-8 .title-style-one .title > span {
  color: var(--brand-light) !important;
  -webkit-text-fill-color: var(--brand-light) !important;
}
.rts-about-us-area-8 .text-stock-area .border-text {
  -webkit-text-stroke-color: rgba(255, 255, 255, 0.18) !important;
  opacity: 0.85;
}

.rts-pricing-area-one .pricing-wrapper-one .plane-process .title,
.rts-pricing-area-one .pricing-wrapper-one .plane-process span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.pricing-wrapper-one .plane-process {
  animation: none !important;
  background: var(--brand) !important;
  box-shadow: 0 8px 24px rgba(194, 65, 12, 0.35);
}

.testimonails-8-mian-wrapper .testimonails-inner-content .author-area .content .title,
.testimonails-8-mian-wrapper .testimonails-inner-content .author-area .content h5.title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.testimonails-8-mian-wrapper .circle-text {
  width: min(100%, 320px);
  aspect-ratio: 1;
  margin: 0 auto;
  border-radius: 50%;
  overflow: hidden;
  border: 4px solid rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(11, 18, 32, 0.15);
}
.testimonails-8-mian-wrapper .circle-text img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center 28% !important;
  transform: scale(0.96) !important;
  transform-origin: center 30% !important;
  border-radius: 0 !important;
}
.testimonails-8-mian-wrapper > .testimonial-split-row {
  margin: 0;
}
.testimonails-8-mian-wrapper .testimonial-split-row > .col-lg-4 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.75rem 1.25rem 1.75rem 2rem;
  background: transparent;
}
.testimonails-8-mian-wrapper .testimonial-split-row > .col-lg-8 {
  padding: 1.75rem 2rem 1.75rem 1rem;
}
@media (max-width: 991px) {
  .testimonails-8-mian-wrapper .testimonial-split-row > .col-lg-4,
  .testimonails-8-mian-wrapper .testimonial-split-row > .col-lg-8 {
    padding: 1.25rem 1.5rem;
  }
}

/* FAQ + Por qué elegirnos — sin franja blanca a la izquierda de col-lg-6 */
#faq .faq-split-row {
  margin-left: 0;
  margin-right: 0;
}
#faq .faq-split-row > .col-lg-6:first-child {
  padding-left: 0 !important;
  padding-right: clamp(1rem, 2.5vw, 2rem) !important;
}
#faq .faq-split-row > .col-lg-6:last-child {
  padding-left: clamp(1rem, 2.5vw, 2rem) !important;
  padding-right: 0 !important;
}
#faq .faq-main-wrapper-content-inner-four {
  margin-right: 0 !important;
  max-width: 100%;
}
#faq .faq-one-thumbnail-wrapper-right {
  width: 100%;
  margin: 0;
  padding: 0;
}
#faq .faq-one-thumbnail-wrapper-right img {
  border-radius: 12px;
  width: 100% !important;
  max-width: 100% !important;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center 20%;
}

.rts-why-choose-area .row.align-items-center > .col-lg-6 {
  padding-left: 0 !important;
}
.rts-why-choose-area .row.align-items-center > .col-lg-6 + .col-lg-6 {
  padding-left: clamp(1rem, 2vw, 1.75rem) !important;
}
.rts-why-choose-area .thumbnail-why-choose-8 {
  width: 100%;
  margin: 0;
  line-height: 0;
}
.rts-why-choose-area .thumbnail-why-choose-8 img {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  object-position: center 24% !important;
  border-radius: 16px !important;
}

/* Escenarios de inversión — hover caption + centered layout */
.rts-business-case-area .flowating-right {
  width: 100% !important;
  max-width: 1140px;
  margin-left: auto !important;
  margin-right: auto !important;
}
.rts-business-case-area .container-1680 {
  max-width: 1140px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.rts-business-case-area .case-studies-wrapper-main-5,
.rts-business-case-area .mySwiper-case-studies-5 {
  margin-left: auto;
  margin-right: auto;
}
.mySwiper-case-studies-5 .swiper-slide {
  display: flex !important;
  justify-content: center !important;
}
.single-case-studies-four {
  width: 100%;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}
.single-case-studies-four .inner,
.single-case-studies-four:hover .inner {
  background: rgba(11, 18, 32, 0.94) !important;
  border-left: 6px solid var(--brand-light) !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35) !important;
  z-index: 4;
}
.single-case-studies-four .inner a,
.single-case-studies-four .inner .title,
.single-case-studies-four .inner h3,
.single-case-studies-four .inner h3.title,
.single-case-studies-four .inner span,
.single-case-studies-four:hover .inner .title,
.single-case-studies-four:hover .inner span,
.single-case-studies-four .inner *,
.single-case-studies-four:hover .inner * {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}

/* FAQ — light 2-column layout (no empty dark right side) */
#faq.rts-faq-area.faq-bg-one,
#faq.rts-faq-area.bg_image {
  background: linear-gradient(165deg, var(--brand-soft) 0%, #ffffff 55%) !important;
  background-image: none !important;
}
#faq.rts-faq-area::before,
#faq.faq-bg-one::before {
  display: none !important;
}
#faq .faq-main-wrapper-content-inner-four .title-style-one .title,
#faq .faq-main-wrapper-content-inner-four .title-style-one .pre,
#faq .faq-main-wrapper-content-inner-four .title-style-one .title > span {
  color: var(--ink) !important;
  -webkit-text-fill-color: var(--ink) !important;
  text-shadow: none !important;
}
#faq .faq-main-wrapper-content-inner-four .title-style-one .title > span {
  color: var(--brand) !important;
  -webkit-text-fill-color: var(--brand) !important;
}
#faq .faq-main-wrapper-content-inner-four .accordion-item {
  border-color: var(--border) !important;
  background: #fff !important;
}
#faq .faq-main-wrapper-content-inner-four .accordion-button {
  background: #fff !important;
  color: var(--ink) !important;
}
#faq .faq-main-wrapper-content-inner-four .accordion-button::after {
  filter: none !important;
}
#faq .faq-main-wrapper-content-inner-four .accordion-body {
  background: var(--brand-soft) !important;
  color: var(--muted) !important;
}
#faq .faq-one-thumbnail-wrapper-right {
  flex-direction: column;
  align-items: stretch;
  gap: 1.25rem;
  width: 100%;
}
#faq .faq-one-thumbnail-wrapper-right .thumbnail,
#faq .faq-side-image {
  clip-path: none !important;
  max-width: 100% !important;
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(11, 18, 32, 0.1);
}
#faq .faq-one-thumbnail-wrapper-right img {
  width: 100% !important;
  display: block;
  object-fit: cover;
  aspect-ratio: 4 / 5;
}
/* Team section — titles always visible */
.rts-team-area-start-four .title-style-one.eight .pre,
.rts-team-area-start-four .title-style-one.eight .title,
.rts-team-area-start-four .title-style-one.eight .title > span {
  color: var(--ink) !important;
  -webkit-text-fill-color: unset !important;
}
.rts-team-area-start-four .title-style-one.eight .title > span {
  color: var(--brand) !important;
}
