:root {
  --th-font-heading: "Quicksand", "Segoe UI", sans-serif;
  --th-font-body: "Roboto", "Segoe UI", sans-serif;
  --th-color-primary: #0b5ed7;
  --th-color-primary-strong: #084298;
  --th-color-secondary: #155bcb;
  --th-color-accent: #f59f00;
  --th-color-success: #198754;
  --th-color-danger: #dc3545;
  --th-color-bg: #f4f7fc;
  --th-color-surface: #ffffff;
  --th-color-surface-soft: #f8fbff;
  --th-color-text: #1f2937;
  --th-color-text-muted: #5f6b7a;
  --th-color-border: #dde5f1;
  --th-shadow-sm: 0 4px 16px rgba(15, 57, 113, 0.08);
  --th-shadow-md: 0 10px 28px rgba(15, 57, 113, 0.12);
  --th-radius-sm: 10px;
  --th-radius-md: 14px;
  --th-radius-lg: 18px;
}

body { font-family: var(--th-font-body); color: var(--th-color-text); background: var(--th-color-bg); }
h1, h2, h3, h4, h5, h6, .heading__title, .heading__subtitle, .slide__title, .service__title, .contact__title { font-family: var(--th-font-heading); color: var(--th-color-text); }
p, .heading__desc, .slide__desc, .service__desc, .contact__desc, .process__desc { color: var(--th-color-text-muted); }

.btn__primary, .btn__secondary, .btn.btn-primary { border-radius: var(--th-radius-sm); }
.btn__primary, .btn.btn-primary { background: var(--th-color-primary); border-color: var(--th-color-primary); }
.btn__primary:hover, .btn.btn-primary:hover { background: var(--th-color-primary-strong); border-color: var(--th-color-primary-strong); }
.btn__secondary { background: var(--th-color-secondary); border-color: var(--th-color-secondary); }

.service-item, .contact-box, .howit-step, .usecase-card, .pkg-card { border-radius: var(--th-radius-md); box-shadow: var(--th-shadow-sm); border: 1px solid var(--th-color-border); background: var(--th-color-surface); }
.service-item:hover, .usecase-card:hover, .pkg-card:hover { box-shadow: var(--th-shadow-md); border-color: var(--th-color-primary); }

.usecase-section, .howit-section, .pricing-tabs-wrap, .faq-strip { background: var(--th-color-surface-soft); }

.compare-table thead th.us, .tab-btn.active, .pkg-card .btn-order, .howit-step .step-num, .usecase-card .ic { background: linear-gradient(135deg, var(--th-color-primary), var(--th-color-secondary)); }
.compare-table .yes { color: var(--th-color-success); }
.compare-table .no { color: var(--th-color-danger); }
.tab-btn, .uc-link, .service-price .price, .pkg-card .pkg-price .amount, .pkg-card .pkg-price .currency { color: var(--th-color-primary); }

/* High-contrast text on blue/dark areas */
.slider .slide-item { position: relative; }
.slider .slide-item .bg-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(8, 40, 96, 0.72), rgba(8, 40, 96, 0.28));
}
.slider .slide__content { position: relative; z-index: 2; }

.slider .slide__title,
.slider .slide__desc,
.pricing-hero h1,
.pricing-hero p,
.pricing-hero .compare-pill,
.calc-hero h1,
.calc-hero h2,
.calc-hero h3,
.calc-hero h4,
.calc-hero p,
.calc-hero li,
.page-title .pagetitle__heading,
.page-title .pagetitle__desc,
.page-title .breadcrumb-item,
.page-title .breadcrumb-item a { color: #ffffff !important; }

.slider .slide__title,
.slider .slide__desc,
.pricing-hero h1,
.pricing-hero p { text-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); }

/* One-color pricing cards */
.pkg-card {
  background: linear-gradient(135deg, var(--th-color-primary), var(--th-color-primary-strong)) !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
}
.pkg-card .pkg-img { display: none !important; }
.pkg-card h3,
.pkg-card .pkg-delivery,
.pkg-card ul.feats li,
.pkg-card .pkg-price .period,
.pkg-card .pkg-price .currency,
.pkg-card .pkg-price .amount { color: #ffffff !important; }
.pkg-card ul.feats li::before { color: #c8ffdf !important; }
.pkg-card .btn-order { background: #ffffff !important; color: var(--th-color-primary) !important; }
.pkg-card .btn-order:hover { background: #eef4ff !important; color: var(--th-color-primary-strong) !important; }
