/* Light theme — surfaces, overlays, and glass panels */

/* Header */
.mkt-header-shell {
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 252, 0.92) 100%);
  border: 1px solid rgba(226, 232, 240, 0.95);
  box-shadow:
    var(--mkt-shadow-md),
    0 0 0 1px rgba(255, 255, 255, 0.85) inset;
}
.mkt-header-shell::before {
  background: linear-gradient(
    90deg,
    transparent,
    rgba(59, 130, 246, 0.35),
    rgba(245, 158, 11, 0.25),
    transparent
  );
}
.mkt-header.is-scrolled .mkt-header-shell {
  background: rgba(255, 255, 255, 0.98);
  border-bottom: 1px solid #e2e8f0;
  box-shadow: 0 10px 36px rgba(15, 23, 42, 0.07);
}
.mkt-body-home .mkt-header:not(.is-scrolled) .mkt-header-shell {
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.9) 0%, rgba(248, 250, 252, 0.88) 100%);
  border-color: rgba(226, 232, 240, 0.95);
  box-shadow:
    var(--mkt-shadow-md),
    0 0 40px rgba(59, 130, 246, 0.06);
}
.mkt-btn-header-outline {
  background: #ffffff;
  color: #334155;
  border: 1px solid #e2e8f0;
  box-shadow: var(--mkt-shadow-sm);
}
.mkt-btn-header-outline:hover {
  background: #eff6ff;
  border-color: #93c5fd;
  color: var(--mkt-primary);
  box-shadow: 0 8px 24px rgba(37, 99, 235, 0.12);
}
.mkt-header-shell .mkt-nav-lux a {
  color: #334155;
}
.mkt-header-shell .mkt-brand-logo-digital { fill: #0f172a; }
.mkt-header-shell .mkt-brand-logo-marketing { fill: #2563eb; }
.mkt-header-shell .mkt-nav-lux a:hover {
  background: rgba(37, 99, 235, 0.08);
  color: var(--mkt-text);
}
.mkt-header-shell .mkt-nav-lux a.is-active {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  color: var(--mkt-primary);
  box-shadow: 0 4px 16px rgba(37, 99, 235, 0.1);
}
.mkt-header-shell .mkt-menu-btn {
  border-color: #e2e8f0;
  background: #ffffff;
  color: var(--mkt-text);
}
.mkt-header-shell .mkt-menu-btn:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  color: var(--mkt-primary);
}
.mkt-mobile-nav {
  background: rgba(255, 255, 255, 0.98);
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-lg);
}

/* Buttons */
.mkt-btn-outline {
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: var(--mkt-text);
  box-shadow: var(--mkt-shadow-sm);
}
.mkt-btn-outline:hover {
  background: #eff6ff;
  border-color: #93c5fd;
}
.mkt-welcome-pill {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  box-shadow: var(--mkt-shadow-sm);
}

/* Hero overlays — soft light wash (video + photography) */
.mkt-hero-bg-overlay {
  background:
    linear-gradient(105deg,
      rgba(255, 255, 255, 0.92) 0%,
      rgba(248, 250, 252, 0.78) 38%,
      rgba(241, 245, 249, 0.52) 62%,
      rgba(255, 255, 255, 0.28) 100%),
    linear-gradient(180deg,
      rgba(255, 255, 255, 0.45) 0%,
      rgba(255, 255, 255, 0.12) 45%,
      rgba(241, 245, 249, 0.42) 100%);
}
.mkt-hero-has-video .mkt-hero-bg-overlay {
  background:
    linear-gradient(105deg,
      rgba(255, 255, 255, 0.94) 0%,
      rgba(248, 250, 252, 0.82) 42%,
      rgba(241, 245, 249, 0.55) 68%,
      rgba(255, 255, 255, 0.35) 100%),
    linear-gradient(180deg,
      rgba(255, 255, 255, 0.5) 0%,
      rgba(255, 255, 255, 0.15) 50%,
      rgba(241, 245, 249, 0.45) 100%);
}
.mkt-hero-glow {
  background: radial-gradient(circle, rgba(59, 130, 246, 0.18) 0%, transparent 70%);
}
.mkt-hero-photo {
  box-shadow: var(--mkt-shadow-lg);
  border: 1px solid rgba(226, 232, 240, 0.9);
}
.mkt-hero-photo-circle {
  background: linear-gradient(145deg, #eff6ff 0%, #ffffff 100%);
  box-shadow:
    0 0 0 10px rgba(37, 99, 235, 0.08),
    0 0 48px rgba(59, 130, 246, 0.15),
    var(--mkt-shadow-lg);
}
.mkt-hero-photo-circle::after {
  box-shadow: inset 0 0 40px rgba(148, 163, 184, 0.15);
}
.mkt-hero-seo-bg .mkt-hero-photo-circle {
  box-shadow:
    0 0 0 12px rgba(37, 99, 235, 0.1),
    0 0 48px rgba(56, 189, 248, 0.18),
    var(--mkt-shadow-lg);
}
.mkt-float {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid #e2e8f0;
  box-shadow: var(--mkt-shadow-md);
}
.mkt-trust-strip {
  background: rgba(255, 255, 255, 0.75);
  border-color: #e2e8f0;
  backdrop-filter: blur(8px);
}

/* Services page */
.mkt-services-page-overlay {
  background:
    linear-gradient(105deg,
      rgba(255, 255, 255, 0.93) 0%,
      rgba(248, 250, 252, 0.85) 42%,
      rgba(241, 245, 249, 0.6) 62%,
      rgba(255, 255, 255, 0.4) 100%),
    linear-gradient(180deg,
      rgba(255, 255, 255, 0.5) 0%,
      rgba(255, 255, 255, 0.2) 45%,
      rgba(241, 245, 249, 0.5) 100%),
    radial-gradient(ellipse 70% 55% at 12% 0%, rgba(59, 130, 246, 0.1), transparent 55%);
}

/* Luxury pages */
.mkt-lux-page-overlay {
  background:
    linear-gradient(105deg, rgba(255, 255, 255, 0.92) 0%, rgba(248, 250, 252, 0.82) 40%, rgba(241, 245, 249, 0.65) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.45) 0%, rgba(255, 255, 255, 0.15) 50%, rgba(241, 245, 249, 0.45) 100%),
    radial-gradient(ellipse 70% 50% at 15% 0%, rgba(59, 130, 246, 0.1), transparent 55%);
}
.mkt-lux-page-glow {
  background: radial-gradient(circle, rgba(59, 130, 246, 0.14) 0%, transparent 70%);
}
.mkt-lux-hero-copy h1 {
  text-shadow: none;
}
.mkt-lux-hero-copy p {
  color: var(--mkt-muted);
}
.mkt-lux-visual-card {
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-md);
}
.mkt-lux-visual-badge {
  background: rgba(255, 255, 255, 0.95);
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-sm);
}
.mkt-card-lux,
.mkt-lux-stats,
.mkt-lux-cta-inner,
.mkt-blog-card-lux,
.mkt-article-body-lux,
.mkt-contact-card-lux {
  background: rgba(255, 255, 255, 0.92);
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-sm);
}
.mkt-card-lux:hover,
.mkt-blog-card-lux:hover {
  border-color: #93c5fd;
  box-shadow: var(--mkt-shadow-md);
}
.mkt-blog-card-cat {
  background: rgba(255, 255, 255, 0.95);
  border-color: #bfdbfe;
  color: var(--mkt-primary);
}
.mkt-article-hero-img {
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-md);
}

/* Footer — light surfaces, dark text (Appac-style) */
.mkt-footer-cta-appac {
  background: linear-gradient(125deg, #1e40af 0%, #2563eb 50%, #1d4ed8 100%);
  border-top: none;
}
.mkt-footer-cta-appac .mkt-footer-cta-label { color: #fde68a; }
.mkt-footer-cta-appac .mkt-footer-cta-copy h2 { color: #ffffff; }
.mkt-footer-cta-appac .mkt-footer-cta-copy p { color: rgba(255, 255, 255, 0.82); }
.mkt-footer-cta-appac .mkt-btn-outline {
  border-color: rgba(255, 255, 255, 0.45);
  background: transparent;
  color: #ffffff;
}
.mkt-footer-cta-appac .mkt-btn-outline:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: #ffffff;
  color: #ffffff;
}
.mkt-footer-cta-appac .mkt-btn-primary {
  background: linear-gradient(135deg, #fbbf24, #f59e0b);
  color: #0f172a;
}
.mkt-footer-appac {
  background: #ffffff;
  border-top: 1px solid #e2e8f0;
  padding: 56px 0 0;
}
.mkt-footer-appac-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  gap: 40px;
  margin-bottom: 40px;
}
.mkt-footer-appac h4 {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #0f172a;
  margin-bottom: 18px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e2e8f0;
}
.mkt-footer-appac ul { list-style: none; }
.mkt-footer-appac ul li { margin-bottom: 10px; }
.mkt-footer-appac a {
  color: #475569;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: color 0.2s;
}
.mkt-footer-appac a:hover { color: #2563eb; }
.mkt-footer-appac-desc {
  color: #64748b;
  font-size: 14px;
  line-height: 1.7;
  margin: 16px 0 20px;
  max-width: 300px;
}
.mkt-logo-footer-appac {
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
}
.mkt-logo-footer-appac .mkt-brand-logo-digital { fill: #0f172a; }
.mkt-logo-footer-appac .mkt-brand-logo-marketing { fill: #2563eb; }
.mkt-social-appac a {
  border-color: #e2e8f0;
  background: #f8fafc;
  color: #475569;
}
.mkt-social-appac a:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #2563eb;
}
.mkt-footer-contact-appac li { color: #475569; }
.mkt-footer-contact-appac i { color: #2563eb; }
.mkt-footer-contact-appac a {
  color: #475569;
  text-decoration: none;
  transition: color 0.2s ease;
}
.mkt-footer-contact-appac a:hover { color: #2563eb; }
.mkt-footer-address span {
  display: block;
  line-height: 1.55;
  font-size: 14px;
}
.mkt-contact-item span a,
.mkt-contact-address {
  color: var(--mkt-muted);
  font-size: 15px;
  line-height: 1.6;
  font-style: normal;
  text-decoration: none;
}
.mkt-contact-item span a:hover { color: var(--mkt-primary-light); }
.mkt-contact-item-address .mkt-contact-address { margin-top: 2px; }
.mkt-footer-bottom-appac {
  margin-top: 0;
  padding: 20px 0 28px;
  border-top: 1px solid #e2e8f0;
  color: #64748b;
}
.mkt-footer-bottom-appac a { color: #64748b; }
.mkt-footer-bottom-appac a:hover { color: #2563eb; }
.mkt-footer-bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}
.mkt-footer-bottom-links {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.mkt-mobile-nav a {
  color: #334155;
  font-weight: 600;
}
.mkt-mobile-nav a:hover { color: #2563eb; }
@media (max-width: 900px) {
  .mkt-footer-appac-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .mkt-footer-appac-grid { grid-template-columns: 1fr; }
}

/* Enquiry form */
.mkt-enquiry-lux-card {
  background: #ffffff;
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-lg);
}
.mkt-enquiry-lux-aside {
  border-right-color: #e2e8f0;
}
.mkt-enquiry-lux-aside-overlay {
  background: linear-gradient(180deg, transparent 30%, rgba(15, 23, 42, 0.55) 100%);
}
.mkt-enquiry-lux-perks {
  background: #f8fafc;
}
.mkt-enquiry-perk {
  color: #334155;
}
.mkt-field-lux input,
.mkt-field-lux select,
.mkt-field-lux textarea {
  background: #f8fafc;
  border-color: #e2e8f0;
  color: var(--mkt-text);
}
.mkt-field-lux input:focus,
.mkt-field-lux select:focus,
.mkt-field-lux textarea:focus {
  background: #ffffff;
  border-color: #93c5fd;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

/* Premium frames */
.mkt-premium-frame {
  box-shadow: var(--mkt-shadow-lg), 0 0 40px rgba(59, 130, 246, 0.08);
}
.mkt-premium-frame-flat::before {
  background: linear-gradient(180deg, transparent 55%, rgba(15, 23, 42, 0.45) 100%);
}

/* Cards */
.mkt-card {
  box-shadow: var(--mkt-shadow-sm);
}
.mkt-card:hover {
  box-shadow: var(--mkt-shadow-md);
  border-color: #bfdbfe;
}

/* Nav pills (non-header) */
.mkt-nav-lux a.is-active {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  color: var(--mkt-primary);
  box-shadow: 0 4px 16px rgba(37, 99, 235, 0.08);
}

/* Services page blocks */
.mkt-page-hero-services {
  border-bottom-color: #e2e8f0;
}
.mkt-page-hero-services h1 {
  text-shadow: none;
}
.mkt-services-page .mkt-service-block {
  background: rgba(255, 255, 255, 0.94);
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-sm);
}
.mkt-services-page .mkt-service-block:hover {
  border-color: #93c5fd;
  box-shadow: var(--mkt-shadow-md);
}
.mkt-services-page .mkt-service-block p {
  color: var(--mkt-muted);
}
.mkt-services-cta-inner {
  background: #ffffff;
  border-color: #e2e8f0;
  box-shadow: var(--mkt-shadow-md);
}

/* Forms & alerts */
.mkt-form {
  box-shadow: var(--mkt-shadow-md);
  border-color: #e2e8f0;
}
.mkt-field input,
.mkt-field select,
.mkt-field textarea {
  background: #f8fafc;
  border-color: #e2e8f0;
}
.mkt-field input:focus,
.mkt-field select:focus,
.mkt-field textarea:focus {
  background: #ffffff;
  border-color: #93c5fd;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}
.mkt-alert-success {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}
.mkt-alert-error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b91c1c;
}
.mkt-form-status.is-error { color: #b91c1c; }
.mkt-form-status.is-success { color: #047857; }
.mkt-enquiry {
  background: linear-gradient(180deg, transparent, rgba(59, 130, 246, 0.04));
}

/* Motion — light page heroes */
.mkt-body-services .mkt-page-hero-motion h1 {
  color: #0f172a;
  text-shadow: none;
}
.mkt-body-services .mkt-page-hero-motion p {
  color: #64748b;
}
.mkt-lux-section-alt {
  background: linear-gradient(180deg, #eef2f9 0%, #f8fafc 100%);
}
.mkt-lux-section {
  background: rgba(255, 255, 255, 0.4);
}
.mkt-body-lux .mkt-lux-page-inner > .mkt-lux-section,
.mkt-body-lux .mkt-lux-page-inner > .mkt-lux-section-alt {
  backdrop-filter: blur(4px);
}

/* Legal pages — Privacy & Terms */
.mkt-legal-section {
  padding-top: 0;
  padding-bottom: 64px;
}
.mkt-legal-card {
  max-width: 860px;
  margin: 0 auto;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}
.mkt-legal-card-head {
  padding: 28px 32px 8px;
  border-bottom: 1px solid #eef2f7;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}
.mkt-legal-effective {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: #64748b;
  margin-bottom: 14px;
}
.mkt-legal-effective i { color: #2563eb; }
.mkt-legal-intro {
  font-size: 16px;
  line-height: 1.75;
  color: #475569;
  margin: 0;
}
.mkt-legal-card .mkt-legal {
  padding: 8px 32px 24px;
}
.mkt-legal-card .mkt-legal h2 {
  font-size: 1.25rem;
  font-weight: 800;
  color: #0f172a;
  margin: 28px 0 12px;
  padding-top: 8px;
  border-top: 1px dashed #e2e8f0;
}
.mkt-legal-card .mkt-legal h2:first-child {
  border-top: none;
  margin-top: 12px;
  padding-top: 0;
}
.mkt-legal-card .mkt-legal p,
.mkt-legal-card .mkt-legal li {
  color: #475569;
  line-height: 1.75;
  font-size: 15px;
}
.mkt-legal-card .mkt-legal ul {
  margin: 12px 0 16px;
  padding-left: 22px;
}
.mkt-legal-card .mkt-legal li { margin-bottom: 8px; }
.mkt-legal-card .mkt-legal a {
  color: #2563eb;
  text-decoration: none;
  font-weight: 600;
}
.mkt-legal-card .mkt-legal a:hover { text-decoration: underline; }
.mkt-legal-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 20px 32px 28px;
  border-top: 1px solid #eef2f7;
  background: #f8fafc;
}
@media (max-width: 640px) {
  .mkt-legal-card-head,
  .mkt-legal-card .mkt-legal,
  .mkt-legal-foot {
    padding-left: 20px;
    padding-right: 20px;
  }
}
