/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* ═══════════════════════════════════════════════════════
   MOTHER CARE EAST LONDON — ELEMENTOR CUSTOM CSS
   Paste this into: Elementor > Site Settings > Custom CSS
   OR: WordPress > Appearance > Additional CSS
   ═══════════════════════════════════════════════════════ */

/* ── GOOGLE FONTS ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap');

/* ── GLOBAL RESET & BASE ── */
*, *::before, *::after { box-sizing: border-box; }

body,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-widget-heading .elementor-heading-title{
  font-family: 'DM Sans', sans-serif;
}


/* Force heading widget to use Playfair Display */
.elementor-widget-heading .elementor-heading-title {
  font-family: 'Playfair Display', Georgia, serif !important;
}



/* Italic support in headings (for <em> tags) */
.elementor-widget-heading .elementor-heading-title em {
  font-style: italic;
  color: #1A6BBF;
}
.mc-why-section .elementor-widget-heading .elementor-heading-title em,
.mc-cta-band .elementor-widget-heading .elementor-heading-title em {
  color: #7DD3FC;
}

/* ── SECTION LABEL ── */
.mc-label-wrap .elementor-widget-container { line-height: 1; }
.mc-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'DM Sans', sans-serif;
  font-size: 12px !important;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #0A7A6E;
  margin: 0 !important;
}
.mc-label::before {
  content: '';
  display: inline-block;
  width: 28px;
  height: 2px;
  background: #0A7A6E;
  border-radius: 2px;
  flex-shrink: 0;
}
.mc-label-light {
  color: #7DD3FC !important;
}
.mc-label-light::before {
  background: #7DD3FC;
}

/* ── TOP BAR ── */
.mc-cqc-pill {
  display: inline-block;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 4px;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 600;
  color: #fff;
  font-family: 'DM Sans', sans-serif;
}
.mc-topbar-phone, a.mc-topbar-phone { color: rgba(255,255,255,0.7); text-decoration: none; }

/* ── HEADER / NAV ── */
.mc-header { position: sticky; top: 0; z-index: 999; box-shadow: 0 2px 20px rgba(12,35,64,0.08); }
.mc-header > .e-con-inner,
.mc-header > .elementor-container { padding: 0 !important; }

.mc-nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 0;
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
}
.mc-logo {
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
}
.mc-logo-icon {
  width: 50px; height: 50px;
  background: #1356A2;
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem;
  flex-shrink: 0;
}
.mc-logo-name {
  font-family: 'Playfair Display', serif;
  font-size: 1.05rem;
  font-weight: 700;
  color: #0C2340;
  line-height: 1.2;
}
.mc-logo-tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.68rem;
  color: #7A8FA6;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.mc-nav-links {
  display: flex;
  align-items: center;
  gap: 4px;
}
.mc-nav-link {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.88rem;
  font-weight: 500;
  color: #3A4F66;
  padding: 8px 14px;
  border-radius: 6px;
  text-decoration: none;
  transition: 0.25s;
}
.mc-nav-link:hover { color: #1356A2; background: #F0F4FA; }
.mc-nav-active { color: #1356A2 !important; }
.mc-nav-cta {
  background: #1356A2 !important;
  color: #fff !important;
  padding: 10px 20px !important;
  font-weight: 600 !important;
}
.mc-nav-cta:hover { background: #0C2340 !important; color: #fff !important; }

/* Dropdown */
.mc-nav-dropdown { position: relative; }
.mc-dropdown-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 20px 60px rgba(12,35,64,0.15);
  min-width: 260px;
  padding: 8px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: 0.25s;
  border: 1px solid #DDE6F0;
  z-index: 100;
}
.mc-nav-dropdown:hover .mc-dropdown-menu {
  opacity: 1;
  pointer-events: all;
  transform: translateY(0);
}
.mc-di {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 8px;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.85rem;
  color: #3A4F66;
  text-decoration: none;
  transition: 0.2s;
}
.mc-di:hover { background: #F0F4FA; color: #1356A2; }
.mc-di-icon {
  width: 28px; height: 28px;
  background: #F0F4FA;
  border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.9rem;
  flex-shrink: 0;
}

/* ── HERO ── */
.mc-hero { position: relative; }
.mc-hero > .e-con-inner { padding: 0 !important; }

.mc-hero-eyebrow,
p.mc-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.25);
  backdrop-filter: blur(8px);
  color: rgba(255,255,255,0.9);
  font-family: 'DM Sans', sans-serif;
  font-size: 11px !important;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 7px 16px;
  border-radius: 999px;
  margin: 0 !important;
}
.mc-hero-eyebrow .elementor-heading-title{
	display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
.mc-pulse-dot {
  display: inline-block;
  width: 6px; height: 6px;
  background: #4ADE80;
  border-radius: 50%;
  animation: mcpulse 2s infinite;
  vertical-align: middle;
}
@keyframes mcpulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.6; transform: scale(1.3); }
}

/* Hero h1 italic */
.mc-hero-h1 em {
  font-style: italic;
  color: #7DD3FC !important;
}

.mc-hero-sub p {
  max-width: 560px;
  font-family: 'DM Sans', sans-serif;
}

/* Hero floating badge */
.mc-hero-float-badge {
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 20px;
  padding: 20px 24px;
  text-align: center;
  display: inline-block;
  min-width: 160px;
}
.mc-hfb-num {
  font-family: 'Playfair Display', serif;
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.mc-hfb-label {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.72rem;
  color: rgba(255,255,255,0.75);
  margin-top: 4px;
}

/* ── TRUST BAR ── */
.mc-trust-item { transition: background 0.25s; }
.mc-trust-item:hover { background: rgba(255,255,255,0.04) !important; }
.mc-trust-icon {
  display: flex;
  width: 44px; height: 44px;
  background: rgba(255,255,255,0.1);
  border-radius: 10px;
  align-items: center; justify-content: center;
  font-size: 1.2rem;
  flex-shrink: 0;
}

/* ── BUTTONS ── */
/* Primary — blue fill */
.mc-btn-primary .elementor-button {
  background: #1356A2 !important;
  color: #fff !important;
  border: 2px solid #1356A2 !important;
}
.mc-btn-primary .elementor-button:hover {
  background: #0C2340 !important;
  border-color: #0C2340 !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(12,35,64,0.2);
}
/* Navy fill */
.mc-btn-navy .elementor-button {
  background: #0C2340 !important;
  color: #fff !important;
  border: 2px solid #0C2340 !important;
}
.mc-btn-navy .elementor-button:hover {
  background: #1356A2 !important;
  border-color: #1356A2 !important;
  transform: translateY(-2px);
}
/* Ghost (outlined blue) */
.mc-btn-ghost .elementor-button {
  background: transparent !important;
  color: #1356A2 !important;
  border: 2px solid #1356A2 !important;
}
.mc-btn-ghost .elementor-button:hover {
  background: #1356A2 !important;
  color: #fff !important;
}
/* White fill (on blue bg) */
.mc-btn-white .elementor-button {
  background: #fff !important;
  color: #1356A2 !important;
  border: 2px solid #fff !important;
}
.mc-btn-white .elementor-button:hover {
  background: #0C2340 !important;
  color: #fff !important;
  border-color: #0C2340 !important;
}
/* Outline white (on blue bg) */
.mc-btn-outline-white .elementor-button {
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255,255,255,0.4) !important;
}
.mc-btn-outline-white .elementor-button:hover {
  border-color: #fff !important;
  background: rgba(255,255,255,0.1) !important;
}
/* Outline on hero (semi-transparent) */
.mc-btn-outline-hero .elementor-button {
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255,255,255,0.5) !important;
}
.mc-btn-outline-hero .elementor-button:hover {
  background: rgba(255,255,255,0.1) !important;
  border-color: #fff !important;
}
/* Link style (no bg) */
.mc-btn-link .elementor-button {
  background: transparent !important;
  color: #1356A2 !important;
  border: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.mc-btn-link .elementor-button:hover { color: #0C2340 !important; }

/* Teal CTA card button */
.mc-btn-teal-cta .elementor-button {
  background: #fff !important;
  color: #0A7A6E !important;
  border: none !important;
  font-size: 13px !important;
  padding: 8px 20px !important;
}
.mc-btn-teal-cta .elementor-button:hover { background: #0C2340 !important; color: #fff !important; }

/* All buttons transition */
.elementor-button { transition: all 0.3s cubic-bezier(0.4,0,0.2,1) !important; }

/* ── OFFER SECTION — image ── */
.mc-offer-img-col { position: relative; }
.mc-offer-img img {
  border-radius: 32px !important;
  height: 520px !important;
  object-fit: cover !important;
  width: 100% !important;
}

/* ── MINI CARDS ── */
.mc-mini-card { cursor: pointer; transition: all 0.3s; }
.mc-mini-card:hover {
  background: #1356A2 !important;
  border-color: #1356A2 !important;
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(12,35,64,0.15);
}
.mc-mini-card:hover .elementor-heading-title { color: #fff !important; }
.mc-mini-card:hover .elementor-widget-text-editor { color: rgba(255,255,255,0.8) !important; }
.mc-mini-icon { font-size: 1.3rem; }

/* ── SERVICE CARDS ── */
.mc-svc-card { transition: all 0.3s; }
.mc-svc-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 20px 60px rgba(12,35,64,0.15) !important;
  border-color: transparent !important;
}
.mc-svc-img img {
  height: 200px !important;
  object-fit: cover !important;
  width: 100% !important;
}
.mc-svc-icon { 
	font-size: 1.6rem; 
	width: 48px;
    height: 48px;
    background: #F0F4FA;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* font-size: 1.4rem; */
    margin-bottom: 16px;
}
.mc-svc-icon.white{
	background: #fff;
}
.service-card{
	transition:.3s cubic-bezier(.4,0,.2,1);
	
}
.service-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 60px rgba(12,35,64,.18);
    border-color: transparent;
}
.mc-svc-card-wide { transition: all 0.3s; }
.mc-respite-img-col > .e-con-inner { padding: 0 !important; }
.mc-respite-img img {
  height: 100% !important;
  min-height: 220px !important;
  object-fit: cover !important;
  width: 100% !important;
}

/* ── ABOUT — image overlays ── */
.mc-about-img-col { position: relative; padding-bottom: 32px !important; }
.mc-about-main-img img {
  border-radius: 32px !important;
  height: 500px !important;
  object-fit: cover !important;
  width: 100% !important;
}
.mc-about-overlays { pointer-events: none; }
.mc-about-secondary {
  position: absolute;
  bottom: 0;
  left: -28px;
  width: 185px;
  pointer-events: all;
}
.mc-about-sm-img {
  width: 100%;
  height: 155px;
  object-fit: cover;
  border-radius: 12px;
  border: 4px solid #fff;
  box-shadow: 0 20px 60px rgba(12,35,64,0.18);
  display: block;
  background: #DDE6F0;
}
.mc-cqc-card {
  position: absolute;
  top: 28px;
  right: -20px;
  background: #fff;
  border-radius: 12px;
  padding: 16px 20px;
  box-shadow: 0 20px 60px rgba(12,35,64,0.15);
  text-align: center;
  min-width: 130px;
  border: 1px solid #DDE6F0;
  pointer-events: all;
}
.mc-cqc-check { font-size: 1.6rem; margin-bottom: 4px; }
.mc-cqc-label {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.65rem;
  font-weight: 600;
  color: #7A8FA6;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.mc-cqc-num {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.68rem;
  font-weight: 700;
  color: #0C2340;
  margin-top: 5px;
  word-break: break-all;
}
.cqc-badge {
    position: absolute;
    top: 28px;
    right: -20px;
    background: #fff;
    border-radius: 12px;
    padding: 16px 20px;
    box-shadow: 0 20px 60px rgba(12,35,64,.18);
    text-align: center;
    min-width: 130px;
    border: 1px solid #DDE6F0;
}
.cqc-badge-check {
    font-size: 1.6rem;
    margin-bottom: 4px;
}
.cqc-badge-label {
    font-size: .68rem;
    font-weight: 600;
    color: #7A8FA6;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.cqc-badge-reg {
    font-size: .7rem;
    font-weight: 700;
    color: #0C2340;
    margin-top: 6px;
    word-break: break-all;
}
.about-img-secondary {
    position: absolute;
    bottom: -32px;
    left: -32px;
    width: 160px;
}
.about-img-secondary img {
    height: 160px;
    border-radius: 12;
    border: 4px solid #fff;
    box-shadow: 0 20px 60px rgba(12,35,64,.18);
}

/* ── TABS ── */
.mc-tabs { font-family: 'DM Sans', sans-serif; }
.mc-tab-nav {
  display: flex;
  gap: 4px;
  background: #F0F4FA;
  border-radius: 10px;
  padding: 4px;
  margin-bottom: 24px;
}
.mc-tab-btn {
  flex: 1;
  padding: 10px 14px;
  border: none;
  background: transparent;
  border-radius: 7px;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.82rem;
  font-weight: 500;
  color: #7A8FA6;
  cursor: pointer;
  transition: 0.25s;
}
.mc-tab-active {
  background: #fff !important;
  color: #1356A2 !important;
  font-weight: 600 !important;
  box-shadow: 0 2px 8px rgba(12,35,64,0.08);
}
.mc-tab-panel { display: none; }
.mc-panel-active { display: block; animation: mcfadein 0.3s ease; }
@keyframes mcfadein { from { opacity: 0; } to { opacity: 1; } }
.mc-tab-panel p {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.95rem;
  color: #7A8FA6;
  line-height: 1.8;
  margin-bottom: 14px;
}
.mc-values-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.mc-value-item {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 14px;
  background: #F0F4FA;
  border-radius: 8px;
}
.mc-value-item span { font-size: 1.1rem; flex-shrink: 0; margin-top: 1px; }
.mc-value-item strong {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #0C2340;
  display: block;
  margin-bottom: 3px;
}
.mc-value-item p {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.78rem !important;
  color: #7A8FA6;
  line-height: 1.5;
  margin: 0 !important;
}

/* ── WHY SECTION ── */
.mc-why-section { position: relative; overflow: hidden; }
.mc-why-section::before {
  content: '';
  position: absolute;
  top: -150px; right: -150px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(19,86,162,0.35) 0%, transparent 70%);
  pointer-events: none;
}
.mc-why-feat { transition: all 0.25s; }
.mc-why-feat:hover {
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(255,255,255,0.15) !important;
}
.mc-why-icon { 
	font-size: 1.15rem; 
	    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, .1);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}
.mc-why-img img {
  border-radius: 32px !important;
  height: 520px !important;
  object-fit: cover !important;
  width: 100% !important;
}
.mc-stat-label p {
  text-align: center;
  font-family: 'DM Sans', sans-serif;
  line-height: 1.4;
}
.offer-mini-badge{
	    position: absolute;
    top: 28px;
    left: -28px;
    background: #0A7A6E;
    color: #fff;
    border-radius: 12px;
    padding: 14px 18px;
    font-size: .78rem;
    font-weight: 600;
    box-shadow:0 8px 32px rgba(12,35,64,.12);
    max-width: 140px;
    text-align: center;
}
.offer-stat-card{
	    position: absolute;
    bottom: -24px;
    right: -24px;
    background: #0C2340;
    color: #fff;
    border-radius: 12px;
    padding: 20px 24px;
    box-shadow: 0 20px 60px rgba(12,35,64,.18);
}
.offer-stat-num{
	font-family: 'Playfair Display', Georgia, serif;
    font-size: 2rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
}
.offer-stat-label{
	font-size: .78rem;
    color: rgba(255, 255, 255, .65);
    margin-top: 4px;
}
.mc-mini-icon{
	    width: 44px;
    height: 44px;
    background: #fff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    margin-bottom: 14px;
    transition: .3s cubic-bezier(.4,0,.2,1);
    box-shadow: 0 2px 8px rgba(12,35,64,.08);
}
.offer-card{
	border-radius: 12px;
    padding: 22px;
    border: 1px solid #DDE6F0;
    transition: .3s cubic-bezier(.4,0,.2,1);
    cursor: pointer;
}
.offer-card:hover {
    background: #1356A2 !important;
    border-color: #1356A2 !important;
    transform: translateY(-4px);
    box-shadow: 0 8px 32px rgba(12,35,64,.12);
}
.offer-card:hover .mc-mini-icon {
    background: rgba(255, 255, 255, .2) !important;
}
.offer-card:hover .offer-card-title h4, .offer-card:hover .offer-card-text{
	color: #fff !important;
}

/* ── CLIENT CARDS ── */
.mc-client-card { transition: all 0.3s; cursor: pointer; }
.mc-client-card:hover {
  background: #0A7A6E !important;
  border-color: #0A7A6E !important;
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(10,122,110,0.2);
}
.mc-client-card:hover .elementor-heading-title { color: #fff !important; }
.mc-client-card:hover .elementor-widget-text-editor { color: rgba(255,255,255,0.8) !important; }
.mc-client-icon { font-size: 2rem; display: block; }
.mc-center-text p { text-align: center; max-width: 580px; margin: 0 auto; }

/* ── TESTIMONIALS ── */
.mc-test-card { transition: all 0.3s; position: relative; }
.mc-test-card:hover {
  background: #fff !important;
  box-shadow: 0 8px 32px rgba(12,35,64,0.12) !important;
}
.mc-stars { font-size: 14px; letter-spacing: 2px; margin: 0 !important; }
.mc-quote-text {
  font-style: italic;
  line-height: 1.8;
  margin: 0 !important;
}
.mc-avatar {
  display: inline-flex;
  width: 42px; height: 42px;
  border-radius: 50%;
  align-items: center; justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 1rem;
  font-family: 'DM Sans', sans-serif;
  flex-shrink: 0;
}

/* ── CTA BAND ── */
.mc-cta-band { position: relative; overflow: hidden; }
.mc-cta-band::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 50%, rgba(255,255,255,0.07) 0%, transparent 60%),
    radial-gradient(circle at 80% 50%, rgba(10,26,46,0.3) 0%, transparent 60%);
  pointer-events: none;
}
.mc-cta-phone-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 999px;
  padding: 8px 20px;
  color: #fff;
  font-weight: 600;
  font-size: 0.88rem;
  font-family: 'DM Sans', sans-serif;
  text-decoration: none;
}
.mc-cta-phone-link:hover { background: rgba(255,255,255,0.22); color: #fff; }

/* ── PARTNERS ── */
.mc-partner-pill {
  display: inline-block;
  background: #fff;
  border: 1px solid #DDE6F0;
  border-radius: 10px;
  padding: 12px 22px;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.78rem;
  font-weight: 600;
  color: #7A8FA6;
  text-align: center;
  transition: 0.25s;
  cursor: default;
}
.mc-partner-pill:hover { border-color: #1356A2; color: #1356A2; }
.mc-partner-w .elementor-widget-container { display: inline-flex; }

/* ── FOOTER ── */
.mc-footer > .e-con-inner { padding: 0 !important; }
.mc-footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.5fr;
  gap: 56px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 0 60px;
}
.mc-footer-logo {
  display: flex; align-items: center; gap: 14px; margin-bottom: 16px;
}
.mc-fl-icon {
  width: 50px; height: 50px;
  background: #1356A2; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; flex-shrink: 0;
}
.mc-fl-name {
  font-family: 'Playfair Display', serif;
  font-size: 1.05rem; font-weight: 700; color: #fff; line-height: 1.2;
}
.mc-fl-tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.68rem; color: rgba(255,255,255,0.4);
  font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase;
}
.mc-footer-bio {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.84rem; color: rgba(255,255,255,0.5);
  line-height: 1.8; margin-bottom: 20px;
}
.mc-footer-social { display: flex; gap: 10px; margin-bottom: 20px; }
.mc-social-btn {
  width: 36px; height: 36px;
  background: rgba(255,255,255,0.08); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,0.6); font-size: 0.88rem;
  text-decoration: none; transition: 0.2s;
  font-family: 'DM Sans', sans-serif;
}
.mc-social-btn:hover { background: #1356A2; color: #fff; }
.mc-footer-cqc-badge {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 10px; padding: 14px;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.74rem; color: rgba(255,255,255,0.4);
}
.mc-footer-cqc-badge strong {
  color: rgba(255,255,255,0.7); display: block; margin-bottom: 4px; font-size: 0.78rem;
}
.mc-fc-title {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.74rem; font-weight: 700;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: rgba(255,255,255,0.4); margin-bottom: 18px;
}
.mc-footer-col { display: flex; flex-direction: column; gap: 0; }
.mc-fl {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.84rem; color: rgba(255,255,255,0.55);
  text-decoration: none; padding: 5px 0;
  transition: color 0.2s;
}
.mc-fl:hover { color: #fff; }
.mc-fci {
  display: flex; gap: 12px; align-items: flex-start;
  margin-bottom: 14px; font-family: 'DM Sans', sans-serif;
}
.mc-fci > span { font-size: 1rem; flex-shrink: 0; margin-top: 2px; }
.mc-fci strong { font-size: 0.82rem; color: rgba(255,255,255,0.8); display: block; margin-bottom: 2px; }
.mc-fci span, .mc-fci > div > span {
  font-size: 0.82rem; color: rgba(255,255,255,0.5); line-height: 1.5;
}
.mc-fphone { color: rgba(255,255,255,0.55); text-decoration: none; font-size: 0.82rem; }
.mc-fphone:hover { color: #fff; }
.mc-footer-bottom {
  display: flex; justify-content: space-between; align-items: center;
  border-top: 1px solid rgba(255,255,255,0.07);
  padding: 22px 0; max-width: 1200px; margin: 0 auto;
  flex-wrap: wrap; gap: 12px;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.78rem; color: rgba(255,255,255,0.3);
}
.mc-fb-links { display: flex; gap: 18px; }
.mc-fb-links a {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.78rem; color: rgba(255,255,255,0.3);
  text-decoration: none; transition: color 0.2s;
}
.mc-fb-links a:hover { color: rgba(255,255,255,0.7); }

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
  .mc-footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
}
@media (max-width: 768px) {
  .mc-topbar { display: none; }
  .mc-nav-links { display: none; }
  .mc-footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .mc-footer-bottom { flex-direction: column; text-align: center; }
  .mc-about-secondary { display: none; }
  .mc-cqc-card { display: none; }
  .mc-values-grid { grid-template-columns: 1fr; }
  .mc-hero-float-badge { display: none; }
  .mc-cta-band .e-con > .e-con-inner { flex-direction: column !important; }
}

/* ════════════════════════════════════════════════════════
   MOTHER CARE EAST LONDON — HEADER CSS
   Paste into: Elementor → Site Settings → Custom CSS
   ════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=DM+Sans:wght@400;500;600&display=swap');

/* ── TOP BAR ──────────────────────────────────────────── */

.mc-topbar > .e-con-inner { padding: 0 !important; }

/* Strip margin/padding from text-editor paragraphs inside topbar */
.mc-topbar-item .elementor-widget-container p,
.mc-topbar-item .elementor-widget-container { 
  margin: 0 !important; 
  padding: 0 !important;
  line-height: 1.4;
}

/* CQC pill badge */
.mc-topbar-cqc .elementor-widget-container p {
  margin: 0 !important;
}
.mc-cqc-pill {
  display: inline-block;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 4px;
  padding: 3px 10px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.03em;
}

/* Phone button in topbar */
.mc-topbar-phone-btn .elementor-button {
  padding: 4px 0 !important;
  background: transparent !important;
  border: none !important;
  font-size: 13px !important;
  font-family: 'DM Sans', sans-serif !important;
  color: rgba(255,255,255,0.75) !important;
  letter-spacing: 0;
}
.mc-topbar-phone-btn .elementor-button:hover { color: #fff !important; }
.mc-topbar-phone-btn .elementor-button-wrapper { display: flex; }

/* ── SITE HEADER ──────────────────────────────────────── */

/* Sticky + remove inner padding */
.mc-site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
}
.mc-site-header > .e-con-inner { padding: 0 !important; }

/* ── LOGO ICON ─────────────────────────────────────────  */

/* Make the icon widget look like the logo box from the HTML */
.mc-logo-icon-widget .elementor-icon-wrapper {
  width: 50px !important;
  height: 50px !important;
  border-radius: 12px !important;
  flex-shrink: 0;
}
.mc-logo-icon-widget .elementor-icon i { font-size: 20px !important; }
.mc-logo-icon-widget a { text-decoration: none; }

/* Logo name heading — override Playfair being set via widget settings */
.mc-logo-name .elementor-heading-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: #0C2340 !important;
  /* Make it a clickable link feel */
  cursor: pointer;
}
.mc-logo-name a { text-decoration: none; }

/* Tagline */
.mc-logo-tagline .elementor-widget-container p {
  margin: 0 !important;
  font-size: 11px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #7A8FA6;
}

/* ── NAV LINKS ─────────────────────────────────────────── */

/* Hide nav on mobile — we'll add hamburger via CSS later */
@media (max-width: 900px) { .mc-nav-links { display: none !important; } }

/* All nav buttons share base style */
.mc-nav-btn .elementor-button {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  color: #3A4F66 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 8px 14px !important;
  transition: color 0.25s, background 0.25s !important;
  letter-spacing: 0;
}
.mc-nav-btn .elementor-button:hover {
  color: #1356A2 !important;
  background: #F0F4FA !important;
}

/* Active page highlight */
.mc-nav-active .elementor-button {
  color: #1356A2 !important;
  background: #F0F4FA !important;
}

/* CTA "Make a Referral" button */
.mc-nav-cta-btn .elementor-button {
  background: #1356A2 !important;
  color: #fff !important;
  border-radius: 6px !important;
  padding: 10px 20px !important;
  font-weight: 600 !important;
  font-family: 'DM Sans', sans-serif !important;
  transition: background 0.25s !important;
  border: none !important;
}
.mc-nav-cta-btn .elementor-button:hover { background: #0C2340 !important; }

/* ── DROPDOWN SECTION ──────────────────────────────────── */

/* Hidden by default — shown when hovered via JS or always visible in editor */
.mc-dropdown-section {
  /* 
     NOTE: Elementor Theme Builder will place this as a separate 
     section under the header. To make it a true hover dropdown 
     you need Elementor Pro's Nav Menu widget.
     
     For standard Elementor, this renders as a visible sub-nav bar.
     Style it as a clean secondary nav bar:
  */
  background: #fff !important;
}
.mc-dropdown-section > .e-con-inner { padding: 0 !important; }

/* Dropdown item rows */
.mc-ddi-row { transition: background 0.2s; border-radius: 6px !important; cursor: pointer; }
.mc-ddi-row:hover { background: #F0F4FA !important; }

/* Dropdown icon boxes */
.mc-ddi-icon .elementor-icon-wrapper {
  width: 28px !important;
  height: 28px !important;
  border-radius: 6px !important;
  flex-shrink: 0 !important;
}
.mc-ddi-icon .elementor-icon i { font-size: 12px !important; }

/* Dropdown link buttons */
.mc-ddi-link .elementor-button {
  background: transparent !important;
  border: none !important;
  color: #3A4F66 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  padding: 0 !important;
  transition: color 0.2s !important;
}
.mc-ddi-row:hover .mc-ddi-link .elementor-button { color: #1356A2 !important; }

/* ════════════════════════════════════════════════════════
   MOTHER CARE EAST LONDON — FOOTER CSS
   Paste into: Elementor → Site Settings → Custom CSS
   ════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=DM+Sans:wght@400;500;600;700&display=swap');

/* ── OUTER CONTAINERS ──────────────────────────────────── */

.mc-footer > .e-con-inner,
.mc-footer-bottom-wrap > .e-con-inner { padding: 0 !important; }

/* ── FOOTER GRID ROW ───────────────────────────────────── */

/* Responsive: stack to 2 cols on tablet, 1 col on mobile */
@media (max-width: 1024px) {
  .mc-footer-grid { flex-wrap: wrap !important; }
  .mc-footer-brand-col,
  .mc-footer-col { flex-basis: calc(50% - 28px) !important; }
}
@media (max-width: 640px) {
  .mc-footer-brand-col,
  .mc-footer-col { flex-basis: 100% !important; }
}

/* ── BRAND COLUMN ──────────────────────────────────────── */

/* Footer logo icon */
.mc-footer-logo-icon .elementor-icon-wrapper {
  width: 46px !important;
  height: 46px !important;
  border-radius: 10px !important;
  flex-shrink: 0 !important;
}
.mc-footer-logo-icon .elementor-icon i { font-size: 18px !important; }

/* Footer logo name */
.mc-footer-logo-name .elementor-heading-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #fff !important;
  line-height: 1.2 !important;
}

/* Footer logo tagline */
.mc-footer-logo-tagline .elementor-widget-container p {
  margin: 0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
}

/* Bio */
.mc-footer-bio .elementor-widget-container p {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  line-height: 1.8 !important;
  color: rgba(255,255,255,0.50) !important;
  margin: 0 !important;
}

/* Social icons widget */
.mc-footer-social .elementor-social-icons-wrapper { gap: 8px !important; }
.mc-footer-social .elementor-social-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.08) !important;
  transition: background 0.25s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.mc-footer-social .elementor-social-icon:hover { background: #1356A2 !important; }
.mc-footer-social .elementor-social-icon i {
  color: rgba(255,255,255,0.65) !important;
  font-size: 13px !important;
}
.mc-footer-social .elementor-social-icon:hover i { color: #fff !important; }

/* CQC badge */
.mc-footer-cqc-badge .elementor-widget-container p { margin: 0 !important; }

/* ── COLUMN HEADINGS ───────────────────────────────────── */

.mc-footer-col-title .elementor-heading-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.40) !important;
}

/* ── FOOTER LINKS ──────────────────────────────────────── */

/* Each link is a separate text-editor widget */
.mc-footer-link .elementor-widget-container p { margin: 0 !important; padding: 4px 0 !important; }
.mc-footer-link .elementor-widget-container a {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  color: rgba(255,255,255,0.55) !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  line-height: 1.5;
}
.mc-footer-link .elementor-widget-container a:hover { color: #fff !important; }

/* ── CONTACT ITEMS ─────────────────────────────────────── */

/* Contact icon */
.mc-footer-contact-icon .elementor-icon-wrapper {
  width: 32px !important;
  height: 32px !important;
  border-radius: 8px !important;
  flex-shrink: 0 !important;
  margin-top: 2px;
}
.mc-footer-contact-icon .elementor-icon i { font-size: 12px !important; }

/* Contact label (bold title) */
.mc-footer-contact-label .elementor-widget-container p,
.mc-footer-contact-label .elementor-widget-container strong {
  margin: 0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,0.85) !important;
  line-height: 1.4;
}

/* Contact value */
.mc-footer-contact-val .elementor-widget-container p {
  margin: 0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  color: rgba(255,255,255,0.55) !important;
  line-height: 1.6;
}
.mc-footer-contact-val .elementor-widget-container a {
  color: rgba(255,255,255,0.55) !important;
  text-decoration: none !important;
  transition: color 0.2s;
}
.mc-footer-contact-val .elementor-widget-container a:hover { color: #fff !important; }

/* ── FOOTER BOTTOM BAR ─────────────────────────────────── */

.mc-footer-bottom-wrap > .e-con-inner { padding: 0 !important; }

/* Copyright text */
.mc-footer-copyright .elementor-widget-container p {
  margin: 0 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  color: rgba(255,255,255,0.30) !important;
  line-height: 1.5;
}

/* Policy links */
.mc-footer-policy-link .elementor-widget-container p { margin: 0 !important; }
.mc-footer-policy-link .elementor-widget-container a {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  color: rgba(255,255,255,0.30) !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}
.mc-footer-policy-link .elementor-widget-container a:hover { color: rgba(255,255,255,0.70) !important; }

/* ── RESPONSIVE BOTTOM BAR ─────────────────────────────── */
@media (max-width: 640px) {
  .mc-footer-bottom-wrap .e-con[style*="justify-content"] {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center;
  }
}


/* ════════════════════════════════════════════════════════
   MOTHER CARE EAST LONDON — ABOUT US PAGE CSS
   Paste into: Elementor → Site Settings → Custom CSS
   ════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap');

/* ── GLOBAL WIDGET OVERRIDES ──────────────────────────── */
.ab-hero > .e-con-inner,
.ab-cta-section > .e-con-inner { padding: 0 !important; }

/* Playfair for all headings */
.elementor-widget-heading .elementor-heading-title { font-family: 'Playfair Display', serif !important; }
/* Italic em coloring */
.elementor-widget-heading .elementor-heading-title em { font-style: italic; color: #1A6BBF; }
.ab-values-title .elementor-heading-title em,
.ab-hero-title   .elementor-heading-title em { color: #7DD3FC; }
/* Strip default p margin in text-editor */
.elementor-widget-text-editor p { margin-bottom: 0 !important; }

/* ── SECTION LABEL ────────────────────────────────────── */
.ab-label-wrap .elementor-widget-container { line-height: 1; margin-bottom: 14px; }
.ab-label {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: 'DM Sans', sans-serif; font-size: 12px;
  font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase;
  color: #0A7A6E; margin: 0;
}
.ab-label::before {
  content: ''; display: block; width: 28px; height: 2px;
  background: #0A7A6E; border-radius: 2px;
}
.ab-label.ab-label-light       { color: #7DD3FC; }
.ab-label.ab-label-light::before { background: #7DD3FC; }
.ab-intro-center p { text-align: center; max-width: 620px; margin: 0 auto !important; }

/* ── BUTTONS ──────────────────────────────────────────── */
.elementor-widget-button .elementor-button { transition: all 0.3s cubic-bezier(0.4,0,0.2,1) !important; }
.ab-btn-primary .elementor-button         { background: #1356A2 !important; color: #fff !important; border: none !important; }
.ab-btn-primary .elementor-button:hover   { background: #0C2340 !important; transform: translateY(-2px); box-shadow: 0 8px 32px rgba(12,35,64,0.12); }
.ab-btn-outline .elementor-button         { background: transparent !important; color: #fff !important; border: 2px solid rgba(255,255,255,0.4) !important; }
.ab-btn-outline .elementor-button:hover   { border-color: #fff !important; background: rgba(255,255,255,0.10) !important; }
.ab-btn-ghost-blue .elementor-button      { background: transparent !important; color: #1356A2 !important; border: 2px solid #1356A2 !important; }
.ab-btn-ghost-blue .elementor-button:hover{ background: #1356A2 !important; color: #fff !important; }
.ab-btn-white .elementor-button           { background: #fff !important; color: #1356A2 !important; border: none !important; }
.ab-btn-white .elementor-button:hover     { background: #0C2340 !important; color: #fff !important; }
.ab-btn-outline-white .elementor-button   { background: transparent !important; color: #fff !important; border: 2px solid rgba(255,255,255,0.4) !important; }
.ab-btn-outline-white .elementor-button:hover { border-color: #fff !important; background: rgba(255,255,255,0.10) !important; }

/* ── 1. HERO ──────────────────────────────────────────── */
.ab-hero { position: relative !important; }

.ab-breadcrumb .elementor-widget-container p { margin: 0 !important; font-family: 'DM Sans', sans-serif; }
.ab-breadcrumb .elementor-widget-container a { color: rgba(255,255,255,0.60); text-decoration: none; transition: color 0.2s; }
.ab-breadcrumb .elementor-widget-container a:hover { color: #fff; }
.ab-bc-sep { color: rgba(255,255,255,0.35); margin: 0 4px; }

.ab-eyebrow-wrap .elementor-widget-container { line-height: 1; }
.ab-hero-eyebrow {
  display: inline-flex; align-items: center;
  background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.25);
  backdrop-filter: blur(8px); border-radius: 999px;
  padding: 7px 16px; font-family: 'DM Sans', sans-serif;
  font-size: 0.78rem; font-weight: 600; letter-spacing: 0.10em;
  text-transform: uppercase; margin: 0;
}
.ab-hero-sub p { max-width: 540px; font-family: 'DM Sans', sans-serif; line-height: 1.75; }

/* ── 2. STATS STRIP ───────────────────────────────────── */
.ab-stat-item { transition: background 0.3s; }
.ab-stat-item:hover { background: rgba(255,255,255,0.04) !important; }
.ab-stat-num .elementor-heading-title { font-family: 'Playfair Display', serif !important; text-align: center; }
.ab-stat-label p { text-align: center; font-family: 'DM Sans', sans-serif; line-height: 1.5; margin: 0 !important; }

/* ── 3. STORY SECTION ─────────────────────────────────── */
.ab-story-img-col { position: relative; padding-bottom: 32px !important; }
.ab-story-img img { border-radius: 32px !important; height: 500px !important; object-fit: cover !important; width: 100% !important; }

/* Floating stat card — bottom-right overlay */
.ab-story-float-card {
  position: absolute; bottom: -28px; right: -28px;
  min-width: 155px; text-align: center;
  box-shadow: 0 20px 60px rgba(12,35,64,0.18);
}
.ab-story-float-card .elementor-heading-title { text-align: center !important; }
.ab-story-float-label p { text-align: center; line-height: 1.5; margin: 0 !important; font-family: 'DM Sans', sans-serif; }

/* Floating badge — top-left overlay */
.ab-story-float-badge {
  position: absolute; top: 24px; left: -24px;
  background: #0A7A6E; border-radius: 12px;
  padding: 12px 16px; max-width: 130px; text-align: center;
  box-shadow: 0 8px 32px rgba(12,35,64,0.12);
  font-weight: 600; line-height: 1.4;
}
.ab-story-float-badge .elementor-widget-container p { margin: 0 !important; font-family: 'DM Sans', sans-serif; }

/* Highlight items */
.ab-highlight { transition: all 0.25s; }
.ab-highlight:hover { box-shadow: 0 2px 8px rgba(12,35,64,0.08); }
.ab-hl-icon .elementor-icon-wrapper { width: 28px !important; height: 28px !important; border-radius: 6px !important; }
.ab-hl-icon .elementor-icon i { font-size: 12px !important; }

/* ── 4. MISSION SECTION ───────────────────────────────── */
.ab-mission-card { transition: all 0.3s cubic-bezier(0.4,0,0.2,1); }
.ab-mission-card:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(12,35,64,0.18) !important; border-color: transparent !important; }
.ab-mission-card.blue {
    border-top-color: #1356A2 !important;
}
.ab-mission-card.teal {
	border-top-color: #0A7A6E !important;
}
.ab-mission-card.gold {
	border-top-color: #d4960a !important;
}

.ab-mission-icon .elementor-icon-wrapper { width: 56px !important; height: 56px !important; border-radius: 14px !important; }
.ab-mission-icon .elementor-icon i { font-size: 24px !important; }

/* ── 5. DIRECTOR SECTION ──────────────────────────────── */
.ab-dir-img-col { position: relative; padding-bottom: 32px !important; }
.ab-dir-img img { border-radius: 32px !important; height: 540px !important; object-fit: cover !important; width: 100% !important; }

/* Quote card — bottom-right overlay */
.ab-dir-quote-card {
  position: absolute; bottom: -28px; right: -24px;
  max-width: 260px;
}
.ab-quote-mark-wrap .elementor-widget-container { line-height: 0.7; }
.ab-quote-mark { font-family: 'Playfair Display', serif; font-style: italic; line-height: 0.7; margin: 0 !important; }
.ab-quote-text p { font-style: italic; line-height: 1.65; margin: 0 !important; font-family: 'DM Sans', sans-serif; }

/* Director name block */
.ab-dir-name-block { transition: box-shadow 0.2s; }
.ab-dir-name-block:hover { box-shadow: 0 2px 8px rgba(12,35,64,0.08); }
.ab-dir-avatar .elementor-heading-title { text-align: center !important; }

/* Credentials */
.ab-cred-icon .elementor-icon-wrapper { width: 24px !important; height: 24px !important; border-radius: 6px !important; }
.ab-cred-icon .elementor-icon i { font-size: 11px !important; }

/* ── 6. VALUES SECTION ────────────────────────────────── */
.ab-values-section { position: relative !important; overflow: hidden !important; }
.ab-values-section::before {
  content: ''; position: absolute; top: -120px; right: -120px;
  width: 450px; height: 450px;
  background: radial-gradient(circle, rgba(19,86,162,0.40) 0%, transparent 70%);
  pointer-events: none; z-index: 0;
}
.ab-values-section::after {
  content: ''; position: absolute; bottom: -100px; left: -100px;
  width: 350px; height: 350px;
  background: radial-gradient(circle, rgba(10,122,110,0.30) 0%, transparent 70%);
  pointer-events: none; z-index: 0;
}
.ab-values-title .elementor-heading-title { text-align: center !important; }

.ab-value-card { transition: all 0.3s; position: relative; z-index: 1; }
.ab-value-card:hover {
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(255,255,255,0.18) !important;
  transform: translateY(-4px);
}
.ab-value-icon .elementor-icon-wrapper { width: 52px !important; height: 52px !important; border-radius: 12px !important; transition: background 0.3s; background: #FFFFFF1A;display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center; }
.ab-value-icon .elementor-icon i, .ab-value-icon .elementor-icon { font-size: 20px !important; padding: .5em; }
.ab-value-card:hover .ab-value-icon .elementor-icon-wrapper { background: rgba(255,255,255,0.18) !important; }

/* ── 7. APPROACH SECTION ──────────────────────────────── */
.ab-approach-img-col { position: relative; padding-bottom: 28px !important; }
.ab-approach-img img { border-radius: 32px !important; height: 520px !important; object-fit: cover !important; width: 100% !important; }

/* Badge — bottom-left overlay */
.ab-approach-badge {
  position: absolute; bottom: -24px; left: -24px;
  max-width: 200px;
}
.ab-approach-badge .elementor-widget-text-editor p { margin: 0 !important; font-family: 'DM Sans', sans-serif; line-height: 1.5; }
.ab-approach-badge strong { font-weight: 600; }
.ab-approach-badge-icon .elementor-icon-wrapper { width: 40px !important; height: 40px !important; border-radius: 10px !important; }
.ab-approach-badge-icon .elementor-icon i { font-size: 20px !important; }

/* Steps — numbered list with connector line */
.ab-steps-list { position: relative; }
.ab-step { position: relative; }
/* Vertical connector line between steps */
.ab-step:not(:last-child)::after {
  content: ''; position: absolute; left: 19px; top: 40px;
  width: 2px; height: calc(100% - 8px);
  background: #DDE6F0; z-index: 0;
}
.ab-step-num { position: relative; z-index: 1; }
.ab-step-num .elementor-heading-title { text-align: center !important; font-family: 'Playfair Display', serif !important; }

/* ── 8. COMPLIANCE SECTION ────────────────────────────── */
.ab-comp-card { transition: all 0.25s; }
.ab-comp-card:hover { border-color: #1356A2 !important; box-shadow: 0 2px 8px rgba(12,35,64,0.08); }
.ab-comp-icon .elementor-icon-wrapper { width: 40px !important; height: 40px !important; border-radius: 10px !important; }
.ab-comp-icon .elementor-icon i, .ab-comp-icon .elementor-icon { font-size: 26px !important; }

/* CQC reg box */
.ab-cqc-reg-box { position: relative; }
.ab-cqc-label-wrap .elementor-widget-container { line-height: 1; }
.ab-cqc-reg-label { font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 0.10em; text-transform: uppercase; margin: 0 !important; }
.ab-cqc-reg-number .elementor-heading-title { font-family: 'Playfair Display', serif !important; word-break: break-all; }
.ab-cqc-check-icon .elementor-icon-wrapper { background: transparent !important; border: none !important; }
.ab-cqc-check-icon .elementor-icon i { font-size: 13px !important; }

/* ── 9. CTA SECTION ───────────────────────────────────── */
.ab-cta-section { position: relative !important; overflow: hidden !important; }
.ab-cta-section::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(circle at 10% 50%, rgba(255,255,255,0.07) 0%, transparent 50%),
              radial-gradient(circle at 90% 50%, rgba(10,26,46,0.30) 0%, transparent 50%);
  pointer-events: none; z-index: 0;
}
.ab-cta-section > .e-con-inner { position: relative; z-index: 1; }
.ab-cta-phone-wrap .elementor-widget-container p { margin: 0 !important; margin-top: 10px !important; }
a.ab-cta-phone {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,0.15); border: 1px solid rgba(255,255,255,0.25);
  border-radius: 999px; padding: 8px 20px;
  font-family: 'DM Sans', sans-serif; font-size: 0.88rem; font-weight: 600;
  color: #fff; text-decoration: none; transition: background 0.2s;
}
a.ab-cta-phone:hover { background: rgba(255,255,255,0.22); }

/* ── RESPONSIVE ───────────────────────────────────────── */
@media (max-width: 1024px) {
  .ab-story-float-card,
  .ab-story-float-badge,
  .ab-dir-quote-card,
  .ab-approach-badge { display: none !important; }
  .ab-story-img-col,
  .ab-dir-img-col,
  .ab-approach-img-col { padding-bottom: 0 !important; }
}
@media (max-width: 768px) {
  .ab-stat-item { border-right: none !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
  .ab-intro-center p { text-align: left; }
  .ab-values-title .elementor-heading-title { text-align: left !important; }
}



/* ════════════════════════════════════════════════════════
   MOTHER CARE EAST LONDON — CARE & SERVICES PAGE CSS
   Paste into: Elementor → Site Settings → Custom CSS
   ════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap');

/* ── GLOBALS ──────────────────────────────────────────── */
.elementor-widget-heading .elementor-heading-title { font-family:'Playfair Display',serif; }
.elementor-widget-heading .elementor-heading-title em { font-style:italic; color:#1A6BBF; }
.sv-why-title .elementor-heading-title em { color:#7DD3FC; }
.elementor-widget-text-editor p { margin-bottom:0 !important; }
.sv-hero > .e-con-inner,
.sv-cta-section > .e-con-inner { padding:0 !important; }
.sv-intro-center p { text-align:center; max-width:640px; margin:0 auto !important; }

/* ── SECTION LABEL ────────────────────────────────────── */
.sv-label-wrap .elementor-widget-container { line-height:1; margin-bottom:14px; }
.sv-label {
  display:inline-flex; align-items:center; gap:8px;
  font-family:'DM Sans',sans-serif; font-size:12px;
  font-weight:600; letter-spacing:.12em; text-transform:uppercase;
  color:#0A7A6E; margin:0 !important;
}
.sv-label::before { content:''; display:block; width:28px; height:2px; background:#0A7A6E; border-radius:2px; }
.sv-label.sv-label-light       { color:#7DD3FC; }
.sv-label.sv-label-light::before { background:#7DD3FC; }

/* ── BUTTONS ──────────────────────────────────────────── */
.elementor-widget-button .elementor-button { transition:all .3s cubic-bezier(.4,0,.2,1) !important; }
.sv-btn-primary      .elementor-button { background:#1356A2 !important; color:#fff !important; border:none !important; }
.sv-btn-primary      .elementor-button:hover { background:#0C2340 !important; transform:translateY(-2px); box-shadow:0 8px 32px rgba(12,35,64,.12); }
.sv-btn-outline      .elementor-button { background:transparent !important; color:#fff !important; border:2px solid rgba(255,255,255,.4) !important; }
.sv-btn-outline      .elementor-button:hover { border-color:#fff !important; background:rgba(255,255,255,.10) !important; }
.sv-btn-ghost-blue   .elementor-button { background:transparent !important; color:#1356A2 !important; border:2px solid #1356A2 !important; }
.sv-btn-ghost-blue   .elementor-button:hover { background:#1356A2 !important; color:#fff !important; }
.sv-btn-white        .elementor-button { background:#fff !important; color:#1356A2 !important; border:none !important; }
.sv-btn-white        .elementor-button:hover { background:#0C2340 !important; color:#fff !important; }
.sv-btn-outline-white .elementor-button { background:transparent !important; color:#fff !important; border:2px solid rgba(255,255,255,.4) !important; }
.sv-btn-outline-white .elementor-button:hover { border-color:#fff !important; background:rgba(255,255,255,.10) !important; }

/* ── 1. HERO ──────────────────────────────────────────── */
.sv-hero { position:relative !important; }
.sv-breadcrumb .elementor-widget-container p { margin:0 !important; font-family:'DM Sans',sans-serif; }
.sv-breadcrumb a { color:rgba(255,255,255,.6); text-decoration:none; transition:color .2s; }
.sv-breadcrumb a:hover { color:#fff; }
.sv-bc-sep { color:rgba(255,255,255,.35); margin:0 4px; }
.sv-eyebrow-wrap .elementor-widget-container { line-height:1; }
.sv-hero-eyebrow {
  display:inline-flex; align-items:center;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25);
  backdrop-filter:blur(8px); border-radius:999px;
  padding:7px 16px; font-family:'DM Sans',sans-serif;
  font-size:.78rem; font-weight:600; letter-spacing:.10em;
  text-transform:uppercase; margin:0;
}
.sv-hero-sub p { max-width:560px; line-height:1.75; }

/* ── 2. QUICKNAV ──────────────────────────────────────── */
.sv-quicknav { position:sticky !important; top:0 !important; z-index:90 !important; }
.sv-quicknav > .e-con-inner { padding:0 !important; }
.sv-qn-btn .elementor-button {
  font-family:'DM Sans',sans-serif !important; font-size:.83rem !important;
  font-weight:500 !important; color:#7A8FA6 !important;
  background:transparent !important; border:none !important;
  border-bottom:2px solid transparent !important;
  border-radius:0 !important;
  padding:16px 16px !important; white-space:nowrap !important;
  transition:color .25s, border-color .25s !important;
}
.sv-qn-btn .elementor-button:hover { color:#1356A2 !important; border-bottom-color:#1356A2 !important; }
.sv-qn-active .elementor-button { color:#1356A2 !important; border-bottom-color:#1356A2 !important; font-weight:600 !important; }

/* ── 3. INTRO STRIP ───────────────────────────────────── */
.sv-intro-img-col { position:relative; padding-bottom:28px !important; }
.sv-intro-img img { border-radius:32px !important; height:440px !important; object-fit:cover !important; width:100% !important; }
.sv-intro-badge { position:absolute; bottom:-24px; right:-24px; min-width:160px; text-align:center; box-shadow:0 20px 60px rgba(12,35,64,.18); }
.sv-intro-badge-num .elementor-heading-title { text-align:center !important; }
.sv-intro-badge-label p { text-align:center; line-height:1.5; margin:0 !important; font-family:'DM Sans',sans-serif; }
.sv-pillar { transition:all .25s; }
.sv-pillar:hover { border-color:#1356A2 !important; box-shadow:0 2px 8px rgba(12,35,64,.08); }
.sv-pillar-icon .elementor-icon-wrapper, .sv-pillar-icon {  }
.sv-pillar-icon .elementor-icon i, .sv-pillar-icon .elementor-icon { font-size:22px !important; }

/* ── 4. SERVICE CARDS ─────────────────────────────────── */
.sv-card { transition:all .3s cubic-bezier(.4,0,.2,1); }
.sv-card:hover { transform:translateY(-8px); box-shadow:0 20px 60px rgba(12,35,64,.18) !important; border-color:transparent !important; }
/* Card images */
.sv-card-img { overflow:hidden; }
.sv-card-photo img { height:210px !important; object-fit:cover !important; width:100% !important; transition:transform .4s ease !important; }
.sv-card:hover .sv-card-photo img { transform:scale(1.04); }
/* Card tag */
.sv-card-tag-wrap .elementor-widget-container { line-height:1; }
.sv-card-tag {
  display:inline-block; font-family:'DM Sans',sans-serif; font-size:.70rem;
  font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:#0A7A6E; background:#E6F4F2; border-radius:4px;
  padding:3px 9px; margin:0;
}
/* Card icon box */
.sv-card-icon .elementor-icon-wrapper { width:48px !important; height:48px !important; border-radius:12px !important; transition:background .3s !important; }
.sv-card-icon .elementor-icon i { font-size:22px !important; }
.sv-card:hover .sv-card-icon .elementor-icon-wrapper { background:#E6F4F2 !important; }
/* Checklist items */
.sv-feat-item .elementor-widget-container { line-height:1; }
.sv-card-feat {
  display:flex; align-items:center; gap:7px;
  font-family:'DM Sans',sans-serif; font-size:.80rem;
  color:#3A4F66; margin:0 !important; padding:3px 0;
}
.sv-card-feat::before { content:'✓'; color:#0A7A6E; font-weight:700; flex-shrink:0; }
/* Learn More button */
.sv-card-link-btn .elementor-button {
  background:transparent !important; color:#1356A2 !important;
  border:none !important; padding:0 !important;
  font-family:'DM Sans',sans-serif !important; font-size:.85rem !important;
  font-weight:600 !important;
}
.sv-card-link-btn .elementor-button:hover { color:#0C2340 !important; transform:none !important; }
/* Wide Respite card */
.sv-card-wide { transition:all .3s cubic-bezier(.4,0,.2,1); }
.sv-card-wide:hover { transform:translateY(-6px); box-shadow:0 20px 60px rgba(12,35,64,.18) !important; border-color:transparent !important; }
.sv-wide-photo img { height:100% !important; min-height:260px !important; object-fit:cover !important; }

/* ── 5. WHY SECTION ───────────────────────────────────── */
.sv-why-section { position:relative !important; overflow:hidden !important; }
.sv-why-section::before {
  content:''; position:absolute; top:-150px; right:-150px;
  width:500px; height:500px;
  background:radial-gradient(circle,rgba(19,86,162,.40) 0%,transparent 70%);
  pointer-events:none; z-index:0;
}
.sv-why-img-col { position:relative; z-index:1; }
.sv-why-img img { border-radius:32px !important; height:500px !important; object-fit:cover !important; width:100% !important; opacity:.9; }
.sv-why-feat { transition:all .25s; position:relative; z-index:1; }
.sv-why-feat:hover { background:rgba(255,255,255,.10) !important; border-color:rgba(255,255,255,.15) !important; }
.sv-why-feat-icon .elementor-icon-wrapper { width:40px !important; height:40px !important; border-radius:10px !important; }
.sv-why-feat-icon .elementor-icon i { font-size:16px !important; }
.sv-why-stat { transition:all .25s; }
.sv-why-stat:hover { background:rgba(255,255,255,.10) !important; }
.sv-why-stat-num .elementor-heading-title { text-align:center !important; }
.sv-why-stat-label p { text-align:center; margin:0 !important; font-family:'DM Sans',sans-serif; }

/* ── 6. WHO WE SUPPORT ────────────────────────────────── */
.sv-clients-section > .e-con-inner { padding:0 !important; }
.sv-client-card { transition:all .3s cubic-bezier(.4,0,.2,1); }
.sv-client-card:hover { background:#0A7A6E !important; border-color:#0A7A6E !important; transform:translateY(-4px); box-shadow:0 8px 32px rgba(12,35,64,.12); }
.sv-client-card:hover .sv-client-title .elementor-heading-title { color:#fff !important; }
.sv-client-card:hover .sv-client-text p { color:rgba(255,255,255,.75) !important; }
.sv-client-cta:hover { background:#085f55 !important; border-color:#085f55 !important; }
.sv-client-icon .elementor-icon-wrapper { width:52px !important; height:52px !important; border-radius:12px !important; }
.sv-client-icon .elementor-icon i { font-size:24px !important; }
.sv-client-title .elementor-heading-title { text-align:center !important; transition:color .3s; }
.sv-client-text p { text-align:center; margin:0 !important; line-height:1.5; }
.sv-client-cta-btn .elementor-button { background:#fff !important; color:#0A7A6E !important; border:none !important; font-weight:700 !important; font-size:.82rem !important; padding:8px 20px !important; }
.sv-client-cta-btn .elementor-button:hover { background:#0C2340 !important; color:#fff !important; }

/* ── 7. PROCESS ───────────────────────────────────────── */
.sv-process-section > .e-con-inner { padding:0 !important; }
.sv-process-row { position:relative; }
/* Horizontal connector line */
.sv-process-row::before {
  content:''; position:absolute; top:57px; left:12%; right:12%;
  height:2px; background:#DDE6F0; z-index:0; width: 78%;
}
.sv-process-step { position:relative; z-index:1; }
.sv-step-num-box { transition:all .3s; }
.sv-process-step:hover .sv-step-num-box { background:#1356A2 !important; border-color:#1356A2 !important; box-shadow:0 8px 32px rgba(12,35,64,.12) !important; }
.sv-process-step:hover .sv-step-num .elementor-heading-title { color:#fff !important;}
.sv-step-num .elementor-heading-title { text-align:center !important; }
.sv-step-title .elementor-heading-title { text-align:center !important; font-family:'DM Sans',sans-serif !important; }
.sv-step-text p { text-align:center; margin:0 !important; line-height:1.6; }
.sv-process-step:hover .stepbg{
    background: #1356a2 !important;
    border-color: #1356a2;
    color: #fff;
    box-shadow: 0 8px 32px rgba(12,35,64,.12);
}
.stepbg{
	width: 72px;
    height: 72px;
    display: flex;
    justify-content: center;
	box-shadow: 0 2px 8px rgba(12,35,64,.08);
}

/* ── 8. FAQ ───────────────────────────────────────────── */
.sv-faq-list { border-top:1px solid #DDE6F0; }
/* FAQ question row */
.sv-faq-q-wrap .elementor-widget-container { padding:20px 0; cursor:pointer; border:none; background:none; }
.sv-faq-q-wrap .elementor-widget-container p {
  font-family:'DM Sans',sans-serif !important; font-size:.95rem !important;
  font-weight:600 !important; color:#0C2340 !important;
  display:flex; justify-content:space-between; align-items:center;
  margin:0 !important; gap:16px;
}
.sv-faq-q-wrap .elementor-widget-container p::after {
  content:'+'; width:22px; height:22px; border-radius:50%;
  background:#F0F4FA; border:1px solid #DDE6F0;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:.8rem; flex-shrink:0; transition:all .3s;
}
.sv-faq-open .sv-faq-q-wrap .elementor-widget-container p { color:#1356A2 !important; }
.sv-faq-open .sv-faq-q-wrap .elementor-widget-container p::after {
  content:'×'; background:#1356A2; border-color:#1356A2; color:#fff; font-size:1rem;
}
/* FAQ answer */
.sv-faq-a-wrap .elementor-widget-container { padding-bottom:20px; }
.sv-faq-a-wrap.sv-faq-hidden .elementor-widget-container { display:none; }
.sv-faq-a-wrap .elementor-widget-container p { color:#7A8FA6 !important; line-height:1.8 !important; margin:0 !important; }
/* Sidebar */
.sv-faq-sidebar { position:sticky; top:100px; }
.sv-faq-contact-icon .elementor-icon-wrapper { width:32px !important; height:32px !important; border-radius:8px !important; }
.sv-faq-contact-icon .elementor-icon i { font-size:14px !important; }
.sv-contact-val .elementor-widget-container p { margin:0 !important; }
.sv-contact-val .elementor-widget-container a { color:#0C2340; text-decoration:none; }
.sv-contact-val .elementor-widget-container a:hover { color:#1356A2; }

/* ── 9. CTA BAND ──────────────────────────────────────── */
.sv-cta-section { position:relative !important; overflow:hidden !important; }
.sv-cta-section::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 10% 50%,rgba(255,255,255,.07) 0%,transparent 50%),
             radial-gradient(circle at 90% 50%,rgba(10,26,46,.30) 0%,transparent 50%);
  pointer-events:none; z-index:0;
}
.sv-cta-section > .e-con-inner { position:relative; z-index:1; padding:0 !important; }
a.sv-cta-phone {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.25);
  border-radius:999px; padding:8px 20px; color:#fff; text-decoration:none;
  font-family:'DM Sans',sans-serif; font-size:.88rem; font-weight:600;
  transition:background .2s; margin-top:10px !important;
}
a.sv-cta-phone:hover { background:rgba(255,255,255,.22); }
.sv-cta-phone-wrap .elementor-widget-container p { margin:0 !important; }

/* ── RESPONSIVE ───────────────────────────────────────── */
@media (max-width:1024px) {
  .sv-intro-badge { display:none !important; }
  .sv-intro-img-col { padding-bottom:0 !important; }
  .sv-process-row::before { display:none; }
  .sv-faq-sidebar { position:static; top:auto; }
}
@media (max-width:768px) {
  .sv-why-img img { height:300px !important; }
  .sv-card-wide > .e-con:last-child { display:none !important; }
  .sv-intro-center p { text-align:left; }
}

.dmsansfont, .dmsansfont .elementor-heading-title{
  font-family: 'DM Sans', sans-serif !important;
}
