.legal-body{max-width:760px;margin:0 auto;padding:72px 0 100px}
.legal-body h2{font-family:'DM Serif Display',serif;font-size:24px;color:var(--gray-900);margin:48px 0 14px}
.legal-body h3{font-size:16px;font-weight:600;color:var(--gray-900);margin:28px 0 10px}
.legal-body p{font-size:15px;color:var(--gray-500);line-height:1.8;margin-bottom:16px}
.legal-body ul,.legal-body ol{padding-left:20px;margin-bottom:16px}
.legal-body li{font-size:15px;color:var(--gray-500);line-height:1.8;margin-bottom:6px}
.legal-body a{color:var(--teal);text-decoration:none}
.legal-meta{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:48px;padding-bottom:32px;border-bottom:1px solid var(--gray-100)}
.legal-meta-item{font-size:13px;color:var(--gray-300)}
.legal-meta-item strong{color:var(--gray-700)}
.legal-toc{background:#daeee9;border-radius:var(--radius-md);padding:24px 28px;margin-bottom:48px}
.legal-toc-title{font-size:13px;font-weight:600;color:var(--gray-700);letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.legal-toc ol{padding-left:18px;margin:0}
.legal-toc li{font-size:14px;margin-bottom:6px}
.legal-toc a{color:var(--teal);text-decoration:none}
.legal-highlight{background:var(--teal-xlight);border-left:3px solid var(--teal);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:16px 20px;margin:24px 0}
.legal-highlight p{margin:0;font-size:14px;color:var(--gray-700)}
.legal-warning{background:#fff8f0;border-left:3px solid #e85d04;border-radius:0 var(--radius-md) var(--radius-md) 0;padding:16px 20px;margin:24px 0}
.legal-warning p{margin:0;font-size:14px;color:#7a3a00}
.legal-divider{border:none;border-top:1px solid var(--gray-100);margin:48px 0}

/* ── UNIFORM SEAFOAM BACKGROUND ── */
body,
section,
.page-header,
.hero,
.tech-bar,
.commit-section,
.why-section {
  background: #d6ede8 !important;
}

/* ── CTA SECTION — original navy with light text ── */
.cta-section {
  background: #2b4a6b !important;
}
.cta-title {
  color: #ffffff !important;
}
.cta-title em {
  color: #e8f4f2 !important;
}
.cta-sub {
  color: rgba(255,255,255,0.7) !important;
}

/* ── FOOTER — original dark with light text ── */
footer.site-footer {
  background: #1a1a18 !important;
}
.footer-tagline,
.footer-links a,
.footer-copy,
.footer-legal a {
  color: rgba(255,255,255,0.55) !important;
}
.footer-col-title {
  color: rgba(255,255,255,0.45) !important;
}
.footer-links a:hover,
.footer-legal a:hover {
  color: #ffffff !important;
}

/* ── CARDS AND INNER ELEMENTS — slightly lighter than page ── */
.service-card,
.price-card,
.tpl-card,
.commit-card,
.booking-form,
.faq-still {
  background: #e8f4f1 !important;
}

/* ── FEATURED PRICING CARD — keep teal ── */
.price-card.featured {
  background: var(--teal) !important;
}
.price-card.featured .price-name,
.price-card.featured .price-number,
.price-card.featured .price-currency,
.price-card.featured .price-period,
.price-card.featured .price-feature,
.price-card.featured .price-desc,
.price-card.featured .price-tag {
  color: #ffffff !important;
}

/* ═══════════════════════════════════════════
   SERVICES PAGE — IMAGE LAYOUT
═══════════════════════════════════════════ */

.service-detail {
  padding: 80px 0;
}
.service-detail--alt {
  background: rgba(255,255,255,0.25);
}

.service-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}

.service-layout--flip .service-content { order: 1; }
.service-layout--flip .service-image-wrap  { order: 2; }

.service-image-wrap {
  position: relative;
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: 0 12px 48px rgba(45,107,98,0.18);
  aspect-ratio: 4 / 3;
}

.service-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.service-image-wrap:hover .service-photo {
  transform: scale(1.04);
}

.service-image-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(45,107,98,0.28) 0%, transparent 55%);
  pointer-events: none;
}

.service-icon-badge {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 64px;
  height: 64px;
  background: var(--teal-dark);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(45,107,98,0.4);
  z-index: 2;
}

.service-content .eyebrow {
  color: var(--teal);
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.service-content h2 {
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  color: var(--gray-900);
  margin-bottom: 18px;
  line-height: 1.2;
}

.service-content p {
  color: var(--gray-700);
  line-height: 1.75;
  margin-bottom: 14px;
}

.service-features {
  list-style: none;
  padding: 0;
  margin: 22px 0 30px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.service-features li {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--gray-700);
  font-size: 0.95rem;
}

.service-features li::before {
  content: '';
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--teal-light);
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='8' viewBox='0 0 10 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 4l2.5 2.5L9 1' stroke='%232d6b62' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
}

@media (max-width: 900px) {
  .service-layout,
  .service-layout--flip {
    grid-template-columns: 1fr;
    gap: 36px;
  }
  .service-layout--flip .service-content { order: 2; }
  .service-layout--flip .service-image-wrap  { order: 1; }
  .service-detail { padding: 56px 0; }
}

@media (max-width: 600px) {
  .service-image-wrap {
    border-radius: var(--radius-lg);
    aspect-ratio: 16 / 9;
  }
  .service-icon-badge {
    width: 52px;
    height: 52px;
    top: 14px;
    left: 14px;
  }
  .service-icon-badge svg {
    width: 28px;
    height: 28px;
  }
}

/* ── CTA SECTION TEXT FIX ─────────────── */
.cta-section h2,.cta-section h3{color:#fff!important}
.cta-section p{color:rgba(255,255,255,0.8)!important}