/* Consolidated from R45 in original cascade order. */
 :root { --cream: #fbf7f1; --soft: #f2eadf; --sage: #7f9a8b; --sage-dark: #456556; --ink: #25302b; --muted: #6b746f; --white: #ffffff; --gold: #caa96a; --line: rgba(37,48,43,.12); --shadow: 0 24px 70px rgba(54, 72, 64, .12); --radius: 28px; } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; font-family: 'Manrope', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; background: var(--cream); color: var(--ink); line-height: 1.6; } a { color: inherit; text-decoration: none; } img { max-width: 100%; display: block; } .container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; } header { position: sticky; top: 0; z-index: 50; backdrop-filter: blur(18px); background: rgba(251,247,241,.88); border-bottom: 1px solid var(--line); } .nav { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 24px; } .brand { display: flex; flex-direction: column; line-height: 1.1; font-weight: 700; letter-spacing: -.02em; } .brand span:first-child { font-size: 1.15rem; } .brand span:last-child { font-size: .78rem; color: var(--muted); font-weight: 500; margin-top: 4px; } .nav-links { display: flex; gap: 24px; align-items: center; color: var(--muted); font-size: .95rem; } .nav-links a:hover { color: var(--sage-dark); } .btn { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; padding: 13px 22px; font-weight: 700; border: 1px solid transparent; transition: .2s ease; cursor: pointer; white-space: nowrap; } .btn-primary { background: var(--sage-dark); color: var(--white); box-shadow: 0 14px 28px rgba(69,101,86,.18); } .btn-primary:hover { transform: translateY(-2px); background: #344f42; } .btn-secondary { border-color: var(--line); background: rgba(255,255,255,.58); color: var(--sage-dark); } .btn-secondary:hover { background: var(--white); transform: translateY(-2px); } .hero { padding: 0 0 68px; position: relative; overflow: hidden; } .hero::before { content: ""; position: absolute; inset: -180px -120px auto auto; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(127,154,139,.28), transparent 68%); z-index: -1; } .hero-grid { display: grid; grid-template-columns: 1.03fr .97fr; gap: 54px; align-items: center; } .eyebrow { display: inline-flex; gap: 8px; align-items: center; color: var(--sage-dark); background: rgba(127,154,139,.13); border: 1px solid rgba(127,154,139,.22); padding: 8px 13px; border-radius: 999px; font-size: .88rem; font-weight: 700; margin-bottom: 22px; } h1 { font-size: clamp(2.55rem, 6vw, 5rem); line-height: 1.02; letter-spacing: -.07em; margin: 0 0 22px; } .hero p { font-size: 1.18rem; color: var(--muted); max-width: 640px; margin: 0 0 30px; } .hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 28px; } .trust-line { display: flex; gap: 16px; flex-wrap: wrap; color: var(--muted); font-size: .95rem; } .trust-line span { display: inline-flex; align-items: center; gap: 7px; } .hero-card { background: linear-gradient(180deg, rgba(255,255,255,.80), rgba(255,255,255,.58)), radial-gradient(circle at 80% 20%, rgba(202,169,106,.18), transparent 38%); border: 1px solid rgba(255,255,255,.75); border-radius: 36px; box-shadow: var(--shadow); padding: 22px; position: relative; } .portrait { min-height: 583px; border-radius: 28px; background: linear-gradient(140deg, rgba(69,101,86,.30), rgba(251,247,241,.10)), url("https://images.unsplash.com/photo-1544717305-2782549b5136?auto=format&fit=crop&w=1100&q=80") center/cover; position: relative; overflow: hidden; } .portrait-note { position: absolute; left: 24px; right: 24px; bottom: 24px; background: rgba(255,255,255,.86); backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,.9); border-radius: 24px; padding: 20px; box-shadow: 0 16px 40px rgba(0,0,0,.09); } .portrait-note strong { display: block; margin-bottom: 5px; } .portrait-note p { margin: 0; color: var(--muted); font-size: .95rem; } section { padding: 78px 0; } .section-head { display: flex; justify-content: space-between; gap: 28px; align-items: end; margin-bottom: 34px; } .section-head h2 { margin: 0; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.08; letter-spacing: -.05em; max-width: 720px; } .section-head p { margin: 0; color: var(--muted); max-width: 390px; } .cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; } .card { background: rgba(255,255,255,.66); border: 1px solid rgba(255,255,255,.85); border-radius: var(--radius); padding: 28px; box-shadow: 0 18px 46px rgba(54,72,64,.08); transition: .2s ease; } .card:hover { transform: translateY(-4px); box-shadow: var(--shadow); } .icon { width: 46px; height: 46px; border-radius: 16px; background: rgba(127,154,139,.16); display: grid; place-items: center; margin-bottom: 18px; color: var(--sage-dark); font-weight: 800; } .card h3 { margin: 0 0 10px; font-size: 1.22rem; letter-spacing: -.02em; } .card p { margin: 0; color: var(--muted); } .about { background: var(--soft); } .about-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 42px; align-items: center; } .about-image { min-height: 480px; border-radius: 36px; background: linear-gradient(180deg, rgba(37,48,43,.05), rgba(37,48,43,.15)), url("sheetal-singhania.webp") center/cover; box-shadow: var(--shadow); } .about-copy h2 { font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.08; letter-spacing: -.05em; margin: 0 0 18px; } .about-copy p { color: var(--muted); font-size: 1.05rem; } .ticks { display: grid; gap: 12px; margin-top: 24px; } .ticks div { background: rgba(255,255,255,.58); border: 1px solid rgba(255,255,255,.8); border-radius: 18px; padding: 14px 16px; color: var(--ink); font-weight: 650; } .process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: step; } .step { background: rgba(255,255,255,.68); border: 1px solid rgba(255,255,255,.86); border-radius: var(--radius); padding: 26px; position: relative; } .step::before { counter-increment: step; content: "0" counter(step); display: inline-block; color: var(--gold); font-weight: 800; margin-bottom: 28px; letter-spacing: .08em; } .step h3 { margin: 0 0 8px; } .step p { margin: 0; color: var(--muted); font-size: .96rem; } .cta { padding: 74px 0; } .cta-box { border-radius: 38px; background: radial-gradient(circle at 15% 20%, rgba(202,169,106,.24), transparent 34%), linear-gradient(135deg, #385645, #6f8b7c); color: white; padding: clamp(34px, 6vw, 64px); box-shadow: var(--shadow); display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center; } .cta-box h2 { margin: 0 0 12px; font-size: clamp(2rem, 4vw, 3.3rem); line-height: 1.08; letter-spacing: -.05em; } .cta-box p { margin: 0; max-width: 680px; color: rgba(255,255,255,.82); } .cta-box .btn { background: white; color: var(--sage-dark); } .faq { background: var(--soft); } .faq-list { display: grid; gap: 14px; max-width: 900px; margin: 0 auto; } details { background: rgba(255,255,255,.68); border: 1px solid rgba(255,255,255,.86); border-radius: 22px; padding: 18px 22px; } summary { cursor: pointer; font-weight: 800; color: var(--ink); } details p { margin: 12px 0 0; color: var(--muted); } .contact-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 28px; align-items: start; } .contact-panel { background: rgba(255,255,255,.68); border: 1px solid rgba(255,255,255,.86); border-radius: 32px; padding: 30px; box-shadow: 0 18px 46px rgba(54,72,64,.08); } .contact-panel h2 { margin-top: 0; font-size: 2.2rem; letter-spacing: -.04em; line-height: 1.1; } .contact-panel p { color: var(--muted); } form { display: grid; gap: 14px; } input, textarea, select { width: 100%; border: 1px solid var(--line); border-radius: 16px; padding: 15px 16px; font: inherit; background: rgba(255,255,255,.86); color: var(--ink); outline: none; } textarea { min-height: 130px; resize: vertical; } input:focus, textarea:focus, select:focus { border-color: rgba(69,101,86,.55); box-shadow: 0 0 0 4px rgba(127,154,139,.12); } footer { padding: 34px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: .95rem; } .footer-inner { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }  70% { transform: scale(1.25); opacity: 0; } 100% { transform: scale(1.25); opacity: 0; }
} @media (max-width: 900px) { .top-strip{display:none!important;height:0!important;} .site-header .nav { align-items: flex-start; padding: 14px 0; } .site-header .nav-links { display: flex; flex-wrap: wrap; gap: 12px 18px; width: 100%; order: 3; } .site-header .btn-primary { width: auto; } .site-footer .footer-inner { grid-template-columns: 1fr; } .whatsapp { top: auto; bottom: 22px; transform: none; } .whatsapp:hover { transform: scale(1.06); }
} /* Restored navigation/footer based on videowall.sg structure only */
.site-nav{position:sticky;top:0;z-index:50;background:#ffffff;border-bottom:1px solid rgba(0,0,0,.05);padding:0 20px;height:68px;display:flex;align-items:center;font-family:'Manrope',sans-serif;font-size:15px;}
.site-nav .nav-inner{max-width:1200px;width:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.site-nav .brand-link{text-decoration:none;color:#0e4b4a;font-size:22px;font-weight:800;letter-spacing:-.04em;line-height:1;white-space:nowrap;}
.site-nav .nav-menu{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:400;color:#56706f;}
.site-nav .nav-menu a{text-decoration:none;color:#56706f;line-height:1;}
.site-nav .nav-menu a:hover{color:#0e4b4a;}
.site-nav .nav-cta{display:inline-flex!important;align-items:center;justify-content:center;background:#15b7c8!important;color:#fff!important;padding:10px 20px!important;border-radius:14px!important;font-size:14px!important;font-weight:600!important;line-height:1!important;box-shadow:none!important;text-decoration:none!important;white-space:nowrap;}
.site-nav .nav-cta:hover{opacity:.95;transform:none!important;}
.footer-standard{margin-top:16px;padding:24px 0;text-align:center;color:#fff;font-size:14px;background:#111827;font-family:'Manrope',sans-serif;font-size:15px;}
.footer-standard a{text-decoration:none;color:rgba(255,255,255,.80);}
.footer-standard a:hover{color:#fff;}
.footer-standard .footer-box{max-width:620px;margin:0 auto;padding:0 24px;display:grid;gap:4px;}
.footer-standard .footer-title{font-weight:600;color:#fff;}
.footer-standard .footer-muted{color:rgba(255,255,255,.70);}
.footer-standard .footer-copy{padding-top:4px;color:rgba(255,255,255,.40);}

@media(max-width:900px){.site-nav{padding:0 16px}.site-nav .nav-menu{display:none}.site-nav .brand-link{font-size:22px}.whatsapp-float{right:16px;bottom:20px;top:auto;transform:none}.whatsapp-float:hover{transform:scale(1.05)}} /* Clean title system applied site-wide — no pill / bubble title styling */
.eyebrow { display: block !important; width: auto !important; background: transparent !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; margin: 0 0 14px !important; font-family: 'Manrope', sans-serif !important; font-size: 12px !important; line-height: 1.2 !important; font-weight: 800 !important; letter-spacing: 0.18em !important; text-transform: uppercase !important; color: #15b7c8 !important;
} h1 { font-family: 'Manrope', sans-serif !important; font-size: clamp(2.7rem, 5.2vw, 4.35rem) !important; line-height: 1.03 !important; letter-spacing: -0.045em !important; font-weight: 800 !important; color: #0e4b4a !important; margin: 0 0 22px !important;
} .section-head h2,
.about-copy h2,
.contact-panel h2 { font-family: 'Manrope', sans-serif !important; font-size: clamp(2rem, 3.8vw, 3.05rem) !important; line-height: 1.06 !important; letter-spacing: -0.04em !important; font-weight: 800 !important; color: #0e4b4a !important; margin-top: 0 !important;
} .cta-box h2 { font-family: 'Manrope', sans-serif !important; font-size: clamp(2rem, 3.8vw, 3.05rem) !important; line-height: 1.06 !important; letter-spacing: -0.04em !important; font-weight: 800 !important; color: #ffffff !important;
} .card h3,
.step h3 { font-family: 'Manrope', sans-serif !important; font-weight: 800 !important; letter-spacing: -0.025em !important; color: #0e4b4a !important;
} .hero p,
.section-head p,
.about-copy p,
.contact-panel p { color: #56706f;
} /* FINAL NAVIGATION OVERRIDE — videowall-style spacing, corrected left/right indent */
.site-header,
.site-header * { all: unset;
} .site-nav { position: sticky; top: 0; z-index: 80; width: 100%; height: 68px; background: #ffffff; border-bottom: 1px solid rgba(0,0,0,.05); font-family: 'Manrope', sans-serif; box-sizing: border-box;
} .site-nav *,
.site-nav *::before,
.site-nav *::after { box-sizing: border-box;
} .site-nav .nav-inner { width: min(1720px, calc(100% - 48px)); height: 68px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between;
} .site-nav .brand-link { display: inline-flex; align-items: center; color: #0e4b4a; font-size: 22px; line-height: 1; font-weight: 800; letter-spacing: -0.04em; text-decoration: none; white-space: nowrap;
} .site-nav .nav-right { display: flex; align-items: center; gap: 28px; margin-left: auto;
} .site-nav .nav-menu { display: flex; align-items: center; gap: 28px; color: #56706f; font-size: 14px; line-height: 1; font-weight: 400;
} .site-nav .nav-menu a { color: #56706f; text-decoration: none; white-space: nowrap;
} .site-nav .nav-menu a:hover { color: #0e4b4a;
} .site-nav .nav-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 22px; border-radius: 14px; background: #15b7c8; color: #ffffff; font-size: 14px; line-height: 1; font-weight: 600; text-decoration: none; white-space: nowrap; box-shadow: none;
} .site-nav .nav-cta:hover { opacity: .95;
} @media (max-width: 900px) { .site-nav .nav-inner { width: min(100% - 32px, 1720px); } .site-nav .brand-link { font-size: 21px; } .site-nav .nav-menu { display: none; } .site-nav .nav-right { gap: 0; } .site-nav .nav-cta { min-height: 40px; padding: 0 16px; font-size: 13px; }
} @media (max-width: 560px) { .site-nav .brand-link { font-size: 18px; } .site-nav .nav-cta { font-size: 12px; padding: 0 13px; }
} /* VIDEOWALL.SG COLOUR SCHEME TEST — colour-only override */
:root { --bg: #edf2ea; --surface: #f8faf4; --surface-2: #f1f5ee; --ink: #0e4b4a; --muted: #56706f; --line: rgba(14,75,74,0.12); --brand: #0f5a52; --brand-2: #15b7c8;
} html,
body { background: var(--bg) !important; color: var(--ink) !important;
} section,
.hero,
.about,
.faq,
.testimonials { background-color: var(--bg) !important;
} .card,
.step,
.contact-panel,
.testimonial-card,
details,
.hero-card,
.portrait-note { background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.90)) !important; border-color: var(--line) !important;
} .section-label,
.eyebrow { color: var(--brand-2) !important;
} .section-title,
h1,
h2,
h3,
.brand-link { color: var(--ink) !important;
} .section-subtitle,
p,
.card p,
.step p,
details p,
.contact-panel p { color: var(--muted) !important;
} .btn-primary,
.nav-cta,
.cta-box .btn,
button.btn-primary { background: linear-gradient(135deg, var(--brand), var(--brand-2)) !important; color: #ffffff !important;
} .btn-secondary { background: rgba(255,255,255,.78) !important; color: var(--ink) !important; border-color: var(--line) !important;
} .cta-box { background: radial-gradient(circle at 15% 20%, rgba(21,183,200,.24), transparent 34%), linear-gradient(135deg, var(--brand), var(--brand-2)) !important;
} .site-nav { background: #ffffff !important; border-bottom: 1px solid rgba(0,0,0,.05) !important;
} .site-nav .brand-link { color: var(--ink) !important;
} .site-nav .nav-menu,
.site-nav .nav-menu a { color: var(--muted) !important;
} .site-nav .nav-menu a:hover { color: var(--ink) !important;
} .site-nav .nav-cta { background: #15b7c8 !important; color: #ffffff !important;
} footer,
.footer-standard { background: #111827 !important; color: #ffffff !important;
} .whatsapp,
.whatsapp-float { background: #25D366 !important;
} /* Homepage about summary with clickable card */
.about-summary-section { background: var(--bg) !important;
} .about-summary-card { display: block;
} .about-summary-link { display: block; color: inherit; text-decoration: none;
} .about-summary-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 44px; align-items: center; background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.90)); border: 1px solid var(--line); border-radius: 32px; padding: clamp(24px, 4vw, 42px); box-shadow: 0 24px 60px rgba(15,23,42,.08); transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
} .about-summary-link:hover .about-summary-grid { transform: translateY(-3px); box-shadow: 0 28px 70px rgba(15,23,42,.12); border-color: rgba(21,183,200,.25);
} .about-summary-grid .about-copy p { font-size: 1.03rem; line-height: 1.78; margin: 0 0 14px;
} .about-photo-wrap { overflow: hidden; border-radius: 28px; box-shadow: 0 20px 55px rgba(15,23,42,.13); background: #fff;
} .about-photo { width: 100%; height: 520px; object-fit: cover; object-position: center; display: block; transition: transform .45s ease;
} .about-summary-link:hover .about-photo { transform: scale(1.025);
} .read-more { display: inline-flex; align-items: center; gap: 8px; margin-top: 10px; color: #0f5a52; font-weight: 800; font-size: 14px;
} .read-more span { transition: transform .2s ease;
} .about-summary-link:hover .read-more span { transform: translateX(4px);
} @media (max-width: 900px) { .about-summary-grid { grid-template-columns: 1fr; } .about-photo { height: auto; max-height: 520px; }
} @media (max-width: 760px) { footer > div { grid-template-columns: 1fr !important; gap: 26px !important; }
} /* FAQ preview — clickable main page section */
.faq-preview-link { display: block; color: inherit; text-decoration: none;
} .faq-preview-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;
} .faq-preview-card { background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.90)); border: 1px solid var(--line); border-radius: 24px; padding: 22px; box-shadow: 0 18px 46px rgba(15,23,42,.06); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
} .faq-preview-link:hover .faq-preview-card { transform: translateY(-3px); border-color: rgba(21,183,200,.24); box-shadow: 0 24px 58px rgba(15,23,42,.10);
} .faq-preview-card h3 { margin: 0 0 10px; font-size: 1.02rem; line-height: 1.25; letter-spacing: -.025em; color: #0e4b4a;
} .faq-preview-card p { margin: 0; color: #56706f; font-size: .95rem; line-height: 1.65;
} .faq-more-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; color: #0f5a52; font-size: 14px; font-weight: 800;
} .faq-more-link span { transition: transform .2s ease;
} .faq-preview-link:hover .faq-more-link span { transform: translateX(4px);
} @media (max-width: 1000px) { .faq-preview-grid { grid-template-columns: repeat(2, 1fr); }
} @media (max-width: 560px) { .faq-preview-grid { grid-template-columns: 1fr; }
} /* Refined FAQ preview design */
.faq-preview-section { padding: 84px 0 !important; background: radial-gradient(circle at 12% 10%, rgba(21,183,200,.10), transparent 30%), radial-gradient(circle at 88% 0%, rgba(15,90,82,.10), transparent 28%), var(--bg) !important;
} .faq-preview-link { display: block; color: inherit; text-decoration: none;
} .faq-preview-shell { position: relative; overflow: hidden; border-radius: 34px; padding: clamp(28px, 5vw, 48px); background: linear-gradient(180deg, rgba(255,255,255,.97), rgba(248,250,244,.92)); border: 1px solid rgba(14,75,74,.12); box-shadow: 0 26px 72px rgba(15,23,42,.09); transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
} .faq-preview-shell::after { content: ""; position: absolute; right: -120px; top: -120px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle, rgba(21,183,200,.16), transparent 68%); pointer-events: none;
} .faq-preview-link:hover .faq-preview-shell { transform: translateY(-4px); border-color: rgba(21,183,200,.28); box-shadow: 0 32px 86px rgba(15,23,42,.13);
} .faq-preview-intro { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr .72fr; gap: 32px; align-items: end; margin-bottom: 30px;
} .faq-preview-intro h2 { margin: 0; max-width: 760px; font-size: clamp(2rem, 3.8vw, 3.15rem); line-height: 1.04; letter-spacing: -.045em; font-weight: 800; color: #0e4b4a;
} .faq-preview-intro p { margin: 0; color: #56706f !important; line-height: 1.75; font-size: 1.02rem;
} .faq-preview-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
} .faq-preview-card { min-height: 220px; padding: 24px; border-radius: 24px; background: rgba(255,255,255,.72); border: 1px solid rgba(14,75,74,.10); box-shadow: 0 14px 36px rgba(15,23,42,.055); transition: transform .22s ease, background .22s ease;
} .faq-preview-link:hover .faq-preview-card { transform: translateY(-2px); background: rgba(255,255,255,.92);
} .faq-preview-number { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; margin-bottom: 18px; background: linear-gradient(135deg, rgba(15,90,82,.12), rgba(21,183,200,.16)); color: #0f5a52; font-size: 12px; font-weight: 800; letter-spacing: .08em;
} .faq-preview-card h3 { margin: 0 0 10px; font-size: 1.18rem; line-height: 1.22; letter-spacing: -.03em; color: #0e4b4a;
} .faq-preview-card p { margin: 0; color: #56706f !important; line-height: 1.7; font-size: .96rem;
} .faq-preview-footer { position: relative; z-index: 1; margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(14,75,74,.10); display: flex; justify-content: space-between; gap: 18px; align-items: center; color: #56706f;
} .faq-preview-footer strong { color: #0f5a52; font-size: .95rem;
} @media (max-width: 900px) { .faq-preview-intro { grid-template-columns: 1fr; gap: 14px; } .faq-preview-grid { grid-template-columns: 1fr; } .faq-preview-card { min-height: 0; } .faq-preview-footer { align-items: flex-start; flex-direction: column; }
} /* Service card clickable hover effects */
.service-cards { align-items: stretch;
} .service-card-link { position: relative; display: block; min-height: 100%; overflow: hidden; color: inherit; text-decoration: none; isolation: isolate;
} .service-card-link::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 82% 12%, rgba(21,183,200,.16), transparent 34%), linear-gradient(180deg, rgba(255,255,255,0), rgba(21,183,200,.04)); opacity: 0; transition: opacity .25s ease; z-index: -1;
} .service-card-link::after { content: ""; position: absolute; left: 28px; right: 28px; bottom: 0; height: 4px; border-radius: 999px 999px 0 0; background: linear-gradient(90deg, #0f5a52, #15b7c8); transform: scaleX(0); transform-origin: left; transition: transform .25s ease;
} .service-card-link:hover { transform: translateY(-7px); box-shadow: 0 28px 70px rgba(15,23,42,.13) !important; border-color: rgba(21,183,200,.26) !important;
} .service-card-link:hover::before { opacity: 1;
} .service-card-link:hover::after { transform: scaleX(1);
} .service-card-link .icon { transition: transform .25s ease, background .25s ease, color .25s ease;
} .service-card-link:hover .icon { transform: translateY(-2px) scale(1.04); background: linear-gradient(135deg, rgba(15,90,82,.16), rgba(21,183,200,.18)); color: #0f5a52;
} .service-card-more { display: inline-flex; align-items: center; gap: 8px; margin-top: 20px; color: #0f5a52; font-size: 14px; font-weight: 800;
} .service-card-more span { transition: transform .2s ease;
} .service-card-link:hover .service-card-more span { transform: translateX(4px);
} 
/* Experiences of support — matched reference style */
.experiences-refined {
  background: #eef2ec !important;
  padding: 92px 0 96px !important;
}

.experiences-refined .container {
  width: min(1760px, calc(100% - 120px));
  max-width: none;
}

.experiences-head {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  align-items: end;
  gap: 64px;
  margin-bottom: 44px;
}

.experiences-head h2 {
  margin: 0;
  color: #0e4b4a !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: clamp(4.2rem, 5.2vw, 6.2rem) !important;
  line-height: .98 !important;
  letter-spacing: -0.06em !important;
  font-weight: 800 !important;
}

.experiences-head p {
  margin: 0;
  max-width: 560px;
  color: #56706f !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: clamp(1.35rem, 1.55vw, 1.75rem) !important;
  line-height: 1.55 !important;
  font-weight: 500;
}

.experiences-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.experience-card {
  min-height: 230px;
  background: #ffffff;
  border: 1px solid rgba(14,75,74,.08);
  border-radius: 32px;
  padding: 42px 40px;
  box-shadow: 0 26px 60px rgba(15,23,42,.08);
  color: #56706f;
  font-family: 'Manrope', sans-serif;
  font-size: clamp(1.28rem, 1.45vw, 1.65rem);
  line-height: 1.55;
  font-weight: 500;
}

@media (max-width: 1100px) {
  .experiences-refined .container {
    width: min(100% - 48px, 1160px);
  }

  .experiences-head {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .experiences-head h2 {
    font-size: clamp(3rem, 10vw, 5rem) !important;
  }

  .experiences-grid {
    grid-template-columns: 1fr;
  }

  .experience-card {
    min-height: auto;
  }
}

@media (max-width: 560px) {
  .experiences-refined {
    padding: 66px 0 72px !important;
  }

  .experiences-refined .container {
    width: min(100% - 28px, 1160px);
  }

  .experience-card {
    border-radius: 24px;
    padding: 28px;
    font-size: 1.08rem;
  }
}


/* 0305a production polish: tighter spacing, crisper type, consistent grid */
.container { width: min(1120px, calc(100% - 48px)) !important; margin-left: auto !important; margin-right: auto !important; }
section { padding-top: 58px !important; padding-bottom: 58px !important; }
h1, h2, h3 { text-wrap: balance; }
p { text-wrap: pretty; }
.card, .service-panel, .contact-panel, .faq-item, details { box-shadow: 0 14px 36px rgba(54,72,64,.075) !important; }
.contact-grid { gap: 26px !important; align-items: stretch !important; }
.site-nav .nav-menu { gap: 24px !important; }
@media (max-width: 700px) { .container { width: min(100% - 30px, 1120px) !important; } section { padding-top: 44px !important; padding-bottom: 44px !important; } }



/* === FINAL CLEAN HOMEPAGE WIDTH SYSTEM ===
   Rebuilt from clean_full_website baseline.
   Applies only to main page content sections.
   Navigation and footer are intentionally untouched. */
main > section > .container,
main > section > .container.hero-grid,
main > section > .container.contact-grid,
main > section > .container.about-summary-card {
  width: min(1760px, calc(100% - 120px)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

main > section {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Keep inner content using the full adopted section width where earlier rules narrowed it. */
main .faq-list,
main .cards,
main .service-cards,
main .process,
main .experiences-grid,
main .cta-box,
main .about-summary-card,
main .contact-grid {
  width: 100% !important;
  max-width: none !important;
}

@media (max-width: 1100px) {
  main > section > .container,
  main > section > .container.hero-grid,
  main > section > .container.contact-grid,
  main > section > .container.about-summary-card {
    width: min(100% - 48px, 1160px) !important;
  }
}

@media (max-width: 640px) {
  main > section > .container,
  main > section > .container.hero-grid,
  main > section > .container.contact-grid,
  main > section > .container.about-summary-card {
    width: min(100% - 28px, 1160px) !important;
  }
}



/* Production consistency pass */
:root { --site-container: 1120px; }
main > section > .container,
main > section > .container.hero-grid,
main > section > .container.contact-grid,
main > section > .container.about-summary-card {
  width: min(var(--site-container), calc(100% - 48px)) !important;
  max-width: var(--site-container) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
section { padding-top: clamp(54px, 6vw, 78px); padding-bottom: clamp(54px, 6vw, 78px); }
.section-head { margin-bottom: clamp(24px, 3vw, 34px); }
.card, .step, .contact-panel, .service-panel { box-shadow: 0 18px 46px rgba(54,72,64,.08); }
.service-page .service-page-grid {
  display: block !important;
  width: min(var(--site-container), calc(100% - 48px)) !important;
  max-width: var(--site-container) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.service-page .service-page-intro {
  max-width: 980px;
  margin-bottom: clamp(28px, 4vw, 42px);
}
.service-page .hero-copy { max-width: 980px; }
.service-page .service-page-grid > div:last-child {
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
}
.service-page .service-panel { width: 100%; margin: 0; }
.service-page .service-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.service-page .service-steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.service-page .service-step,
.service-page .service-list li { min-height: auto; }
.validated-contact-form input[name="country_code"] { max-width: 110px; }
.validated-contact-form input[name="contact_no"] { min-width: 0; }
.form-field.invalid input,
.form-field.invalid textarea,
.form-field.invalid select { border-color: #b84a4a !important; }
.form-field .error-message { display: none; color: #9b3333; font-size: .85rem; margin-top: 6px; }
.form-field.invalid .error-message { display: block; }
@media (max-width: 900px) {
  main > section > .container,
  main > section > .container.hero-grid,
  main > section > .container.contact-grid,
  main > section > .container.about-summary-card,
  .service-page .service-page-grid {
    width: min(100% - 32px, var(--site-container)) !important;
  }
  .service-page .service-list { grid-template-columns: 1fr; }
}



/* === Final global polish pass === */
:root { --brand: #0e6f69; --brand-2: #1bb4c4; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
section { padding-top: clamp(54px, 6vw, 78px); padding-bottom: clamp(54px, 6vw, 78px); }
.section-head h2, h1, h2 { text-wrap: balance; }
.card, .step, .contact-panel, details, .service-panel, .profile-card { border-color: rgba(255,255,255,.9) !important; box-shadow: 0 18px 48px rgba(54,72,64,.075) !important; }
.btn, button { transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.btn:hover, button:hover { transform: translateY(-2px); }
input, textarea, select { min-height: 52px; }
textarea { min-height: 140px; }

/* Unified premium CTA style for About + Service pages */
.about-cta .cta-box,
.service-cta-panel,
.cta-box.final-polish-cta {
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 16% 22%, rgba(255,255,255,.18), transparent 36%),
    linear-gradient(135deg, #0d6c66 0%, #18b9c8 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  border-radius: 38px !important;
  box-shadow: 0 28px 76px rgba(20, 96, 92, .18) !important;
}
.about-cta .cta-box::after,
.service-cta-panel::after,
.cta-box.final-polish-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.12), transparent 62%);
  pointer-events: none;
}
.about-cta .cta-box > *,
.service-cta-panel > *,
.cta-box.final-polish-cta > * { position: relative; z-index: 1; }
.about-cta .cta-box h2,
.service-cta-panel h2,
.cta-box.final-polish-cta h2 {
  color: #ffffff !important;
  font-family: 'Manrope', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size: clamp(2.1rem, 4.4vw, 4.1rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.055em !important;
  font-weight: 800 !important;
  margin: 0 0 16px !important;
  max-width: 1040px;
}
.about-cta .cta-box p,
.service-cta-panel p,
.cta-box.final-polish-cta p {
  color: rgba(255,255,255,.92) !important;
  font-size: clamp(1.05rem, 1.6vw, 1.34rem) !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
  margin: 0 !important;
  max-width: 980px !important;
}
.about-cta .cta-box .btn,
.cta-box.final-polish-cta .btn {
  background: rgba(5, 83, 78, .42) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,.14) !important;
}
.about-cta .cta-box .btn:hover,
.cta-box.final-polish-cta .btn:hover { background: rgba(5, 83, 78, .58) !important; }
@media (max-width: 760px) {
  .about-cta .cta-box,
  .service-cta-panel,
  .cta-box.final-polish-cta { border-radius: 28px !important; padding: 34px 24px !important; }
  .about-cta .cta-box h2,
  .service-cta-panel h2,
  .cta-box.final-polish-cta h2 { font-size: clamp(2rem, 10vw, 3rem) !important; }
  .about-cta .cta-box p,
  .service-cta-panel p,
  .cta-box.final-polish-cta p { font-size: 1.05rem !important; }
}



/* FINAL USER REQUEST: logo/tagline left, navigation right, same constrained header width */
.site-nav.tep-approved-header{
  width:100% !important;
  background:#fff !important;
  border-bottom:0!important;
  overflow:visible !important;
}
.site-nav.tep-approved-header .tep-header-inner{
  width:min(1160px, calc(100% - 40px)) !important;
  max-width:1160px !important;
  margin:0 auto !important;
  min-height:118px !important;
  padding:14px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;
}
.site-nav.tep-approved-header .tep-brand-block{
  flex:0 0 250px !important;
  width:250px !important;
  margin:0 !important;
}
.site-nav.tep-approved-header .tep-logo{width:250px !important;}
.site-nav.tep-approved-header .tep-divider{
  flex:0 0 2px !important;
  width:2px !important;
  height:72px !important;
  margin:0 24px !important;
}
.site-nav.tep-approved-header .tep-service-lockup{
  flex:0 0 295px !important;
  width:295px !important;
  font-size:13px !important;
  line-height:1.55 !important;
  letter-spacing:.28em !important;
}
.site-nav.tep-approved-header .tep-nav-menu{
  margin-left:auto !important;
  padding-top:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:24px !important;
  flex:0 0 auto !important;
  min-width:0 !important;
}
.site-nav.tep-approved-header .tep-nav-menu a{
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1 !important;
}
.site-nav.tep-approved-header .tep-nav-menu a.active::after{
  bottom:-22px !important;
  width:54px !important;
  height:3px !important;
}
@media(max-width:1200px){
  .site-nav.tep-approved-header .tep-header-inner{width:min(1000px, calc(100% - 36px)) !important; min-height:104px !important;}
  .site-nav.tep-approved-header .tep-brand-block{flex-basis:205px !important; width:205px !important;}
  .site-nav.tep-approved-header .tep-logo{width:205px !important;}
  .site-nav.tep-approved-header .tep-divider{height:62px !important; margin:0 16px !important;}
  .site-nav.tep-approved-header .tep-service-lockup{flex-basis:245px !important; width:245px !important; font-size:10.5px !important;}
  .site-nav.tep-approved-header .tep-nav-menu{margin-left:auto !important; gap:16px !important;}
  .site-nav.tep-approved-header .tep-nav-menu a{font-size:13px !important;}
}
@media(max-width:900px){
  .site-nav.tep-approved-header .tep-header-inner{display:block !important; width:min(720px, calc(100% - 32px)) !important; min-height:0 !important; padding:18px 0 !important;}
  .site-nav.tep-approved-header .tep-brand-block{display:block !important; width:220px !important; margin:0 auto 12px !important;}
  .site-nav.tep-approved-header .tep-logo{width:220px !important; margin:0 auto !important;}
  .site-nav.tep-approved-header .tep-divider,.site-nav.tep-approved-header .tep-service-lockup{display:none !important;}
  .site-nav.tep-approved-header .tep-nav-menu{margin:12px 0 0 !important; justify-content:center !important; flex-wrap:wrap !important; gap:14px 22px !important;}
  .site-nav.tep-approved-header .tep-nav-menu a{font-size:14px !important;}
}


/* Full generated hero image - final approved wide hero */
.hero.hero-full { 
  padding: 0 !important; 
  margin: 0 !important; 
  background: transparent !important; 
  overflow: hidden !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}
.hero.hero-full::before { display: none !important; }
.hero.hero-full > .container { 
  width: 100% !important; 
  max-width: none !important; 
  margin: 0 !important; 
  padding: 0 !important; 
}
.hero-art { 
  position: relative !important; 
  width: 100% !important; 
  height: auto !important; 
  border-radius: 0 !important; 
  overflow: hidden !important; 
  box-shadow: none !important; 
  background: transparent !important; 
}
.hero-art img { 
  width: 100% !important; 
  height: auto !important; 
  max-width: none !important; 
  display: block !important; 
  object-fit: contain !important; transform: none !important; 
  object-position: center center !important; 
}
.hero-art-link { position:absolute; display:block; border-radius:999px; text-indent:-9999px; overflow:hidden; }
.hero-art-link.session { left: 5.8%; top: 64.2%; width: 14.4%; height: 6.8%; }
.hero-art-link.services { left: 22.3%; top: 64.2%; width: 12.5%; height: 6.8%; }
@media (max-width: 900px) {
  .hero.hero-full { padding: 0 !important; }
  .hero-art-link { display:none !important; }
}

/* Hero flush edge fix */
.hero.hero-full { background: #fff !important; margin-top: 0 !important; border-top: 0 !important; }
.hero.hero-full > .container, .hero-art { background: transparent !important; }
.hero-art { line-height: 0 !important; }
.hero-art img { width: 100% !important; height: auto !important; transform: none !important; object-fit: contain !important; object-position: center center !important; }
header, .site-nav, .tep-approved-header { margin-bottom: 0 !important; }
header + main, header + main > .hero.hero-full { margin-top: 0 !important; }

/* ChatGPT fix: remove green border and reduce hero height ~5% */
.hero.hero-full{background:#fff!important;padding:0!important;margin:0!important;border:0!important;}
.hero.hero-full>.container{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;}
.hero-art{background:#fff!important;padding:0!important;margin:0!important;}
.hero-art img{
display:block!important;
width:95%!important;
margin:0 auto!important;
height:auto!important;
object-fit:contain!important;
}



.whatsapp-float {
  position: fixed;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: #25D366;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 28px rgba(0,0,0,0.22);
  z-index: 9999;
  transition: transform .2s ease, box-shadow .2s ease;
}
.whatsapp-float:hover {
  transform: translateY(-50%) scale(1.08);
}
.whatsapp-float svg {
  width: 30px;
  height: 30px;
  fill: #ffffff;
}
@media (max-width: 768px) {
  .whatsapp-float {
    right: 16px;
    width: 52px;
    height: 52px;
  }
}



/* PIXEL PERFECT EXPERIENCES SECTION */
.experiences-refined {
  background:#eef2ec !important;
  padding:90px 0 90px !important;
}

.experiences-refined .container{
  width:min(1700px, calc(100% - 120px));
  max-width:none;
}

.experiences-head{
  display:grid;
  grid-template-columns:1.2fr 0.8fr;
  gap:60px;
  align-items:end;
  margin-bottom:48px;
}

.experiences-head h2{
  margin:0;
  font-size:88px !important;
  line-height:0.95 !important;
  letter-spacing:-0.06em !important;
  font-weight:800 !important;
  color:#0e4b4a !important;
}

.experiences-head p{
  margin:0;
  font-size:20px !important;
  line-height:1.6 !important;
  color:#5f7372 !important;
  max-width:520px;
}

.experiences-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:28px;
}

.experience-card{
  background:#ffffff;
  border-radius:28px;
  padding:38px;
  box-shadow:0 18px 45px rgba(0,0,0,0.08);
  font-size:20px !important;
  line-height:1.65 !important;
  color:#5f7372;
  font-weight:500;
}

/* responsive */
@media(max-width:1100px){
  .experiences-head{
    grid-template-columns:1fr;
    gap:20px;
  }

  .experiences-head h2{
    font-size:52px !important;
  }

  .experiences-grid{
    grid-template-columns:1fr;
  }
}



/* FINAL FONT TUNING */
.experiences-head h2{
  font-size:64px !important;
  line-height:1.02 !important;
  letter-spacing:-0.045em !important;
}

.experiences-head p{
  font-size:18px !important;
  line-height:1.6 !important;
}

.experience-card{
  font-size:18px !important;
  line-height:1.7 !important;
  padding:32px !important;
}



/* MATCH PROCESS SECTION STYLE */
.experiences-head h2{
  font-size:48px !important;
  font-weight:700 !important;
  letter-spacing:-0.03em !important;
  line-height:1.1 !important;
}

.experiences-head p{
  font-size:16px !important;
  color:#6b7c7b !important;
  line-height:1.7 !important;
}

.experiences-grid{
  gap:20px !important;
}

.experience-card{
  font-size:16px !important;
  line-height:1.7 !important;
  padding:28px !important;
  border-radius:24px !important;
  box-shadow:0 10px 25px rgba(0,0,0,0.05) !important;
}



/* FIX HERO / STATEMENT VISIBILITY */
.hero p,
.hero .subtext,
.hero .highlight-text {
  color: #0e4b4a !important;
}

/* if it's inside light background */
section.hero,
.hero {
  color: #0e4b4a !important;
}



.hero .support-line {
  font-size: 21px;
  font-weight: 600;
  color: #0e4b4a;
  line-height: 1.6;
  max-width: 520px;
  margin-top: 16px;
  opacity: 0;
  transform: translateY(10px);
  animation: fadeInUp 0.8s ease forwards;
  animation-delay: 0.4s;
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}



/* CTA support line visibility fix */
.cta-box .support-line,
.cta-box p.support-line {
  color: rgba(255,255,255,0.88) !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
  max-width: 720px !important;
  margin: 10px 0 0 !important;
}



.contact-reassurance {
  display: grid;
  gap: 12px;
  margin-top: 26px;
}

.contact-reassurance div {
  background: rgba(21,183,200,.08);
  border: 1px solid rgba(14,75,74,.10);
  border-radius: 16px;
  padding: 14px 16px;
  color: #0e4b4a;
  font-weight: 700;
  font-size: 15px;
}



/* Contact form validation styling */
.validated-contact-form {
  display: grid;
  gap: 16px;
}

.form-field {
  display: grid;
  gap: 7px;
}

.form-field label {
  color: #0e4b4a;
  font-size: 14px;
  font-weight: 800;
}

.phone-row {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 10px;
}

.validated-contact-form input,
.validated-contact-form textarea {
  width: 100%;
}

.validated-contact-form textarea {
  min-height: 140px;
}

.error-message {
  display: none;
  color: #b42318;
  font-size: 12px;
  font-weight: 700;
}

.form-field.invalid input,
.form-field.invalid textarea {
  border-color: #b42318 !important;
  box-shadow: 0 0 0 4px rgba(180,35,24,.10) !important;
}

.form-field.invalid .error-message {
  display: block;
}

@media (max-width: 560px) {
  .phone-row {
    grid-template-columns: 92px 1fr;
  }
}



/* Final logo + favicon integration */
.site-nav .brand-link,
.brand-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
}

.nav-logo-icon {
  width: 34px;
  height: 34px;
  display: block;
  flex: 0 0 auto;
}

.nav-logo-text {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  line-height: 1;
}

.nav-logo-title {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #0e4b4a;
  white-space: nowrap;
}

.nav-logo-tagline {
  font-size: 10px;
  font-weight: 600;
  color: #56706f;
  letter-spacing: -0.01em;
  white-space: nowrap;
}

.footer-logo-lockup {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
}

.footer-logo-lockup img {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  display: block;
}

.footer-logo-lockup-title {
  color: #ffffff;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.15;
}

.footer-logo-lockup-tagline {
  color: rgba(255,255,255,.70);
  font-size: 12px;
  line-height: 1.35;
  margin-top: 4px;
}

.footer-four-grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
  display: grid;
  grid-template-columns: 1.25fr .85fr .85fr 1fr;
  gap: 34px;
}

.footer-four-grid a {
  color: inherit;
  text-decoration: none;
}

.footer-four-heading {
  color: #ffffff;
  font-size: 14px;
  font-weight: 800;
  margin-bottom: 10px;
}

.footer-four-text {
  color: rgba(255,255,255,.82);
  font-size: 14px;
  line-height: 1.75;
}

@media (max-width: 900px) {
  .footer-four-grid {
    grid-template-columns: 1fr 1fr;
    gap: 26px;
  }
}

@media (max-width: 560px) {
  .nav-logo-icon {
    width: 30px;
    height: 30px;
  }

  .nav-logo-title {
    font-size: 15px;
  }

  .nav-logo-tagline {
    display: none;
  }

  .footer-four-grid {
    grid-template-columns: 1fr;
  }
}




.footer-company-details {
  color: rgba(255,255,255,.84);
  font-size: 14px;
  line-height: 1.65;
  max-width: 310px;
}

.footer-company-name {
  color: #ffffff;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.35;
  margin-bottom: 8px;
}

/* Corrected premium logo spacing */
.footer-full-logo-wrap {
  display: block;
  max-width: 300px;
}

.footer-full-logo {
  width: 100%;
  max-width: 300px;
  height: auto;
  display: block;
}

.nav-logo-icon {
  width: 34px;
  height: 34px;
  object-fit: contain;
}



/* 0305a homepage polish: crisper typography and tighter vertical rhythm */
html { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
body { line-height: 1.55 !important; }
.hero { padding: 58px 0 46px !important; }
section { padding: 52px 0 !important; }
.section-head { margin-bottom: 24px !important; gap: 22px !important; }
.section-head h2, .about-copy h2, .contact-panel h2 { line-height: 1.04 !important; letter-spacing: -0.045em !important; }
.section-head p, .about-copy p, .contact-panel p, .card p, .step p, details p { line-height: 1.6 !important; }
.eyebrow { margin-bottom: 10px !important; letter-spacing: .02em !important; }
h1 { line-height: 1.01 !important; margin-bottom: 18px !important; }
.hero p { margin-bottom: 22px !important; color: #4f6867 !important; }
.hero-actions { margin-bottom: 20px !important; }
.card, .step, .contact-panel, details, .about-summary-grid, .faq-preview-shell, .faq-preview-card, .experience-card {
  border-color: rgba(14,75,74,.12) !important;
  box-shadow: 0 14px 34px rgba(15,23,42,.055) !important;
}
.card { padding: 24px !important; }
.step { padding: 22px !important; }
.cta { padding: 48px 0 !important; }
.cta-box { padding: clamp(28px, 4.5vw, 48px) !important; }
.about-summary-section { padding: 52px 0 !important; }
.about-summary-grid { gap: 32px !important; padding: clamp(22px, 3.5vw, 34px) !important; }
.about-summary-grid .about-copy p { line-height: 1.62 !important; margin-bottom: 10px !important; }
.faq-preview-section { padding: 52px 0 !important; }
.faq-preview-shell { padding: clamp(24px, 4vw, 38px) !important; }
.experiences-refined { padding: 56px 0 58px !important; }
.experiences-head { margin-bottom: 28px !important; }
.experiences-head h2 { font-size: clamp(3rem, 4.7vw, 5.2rem) !important; line-height: .96 !important; }
.experiences-head p { font-size: clamp(1.08rem, 1.3vw, 1.35rem) !important; line-height: 1.52 !important; }
.experience-card { min-height: 0 !important; padding: 26px !important; line-height: 1.62 !important; }
.contact-panel { padding: 26px !important; }
footer, .footer-standard { margin-top: 0 !important; }
@media (max-width: 900px) {
  .hero { padding: 44px 0 36px !important; }
  section, .about-summary-section, .faq-preview-section { padding: 42px 0 !important; }
  .section-head { margin-bottom: 20px !important; }
  .experiences-refined { padding: 46px 0 !important; }
}



/* 0305a final homepage polish: consistent section indent, tighter rhythm, equal cards */
.experiences-refined {
  padding-top: 78px !important;
  padding-bottom: 46px !important;
}

.experiences-refined .container,
#approach > .container {
  width: min(1700px, calc(100% - 120px)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#approach {
  padding-top: 46px !important;
  padding-bottom: 70px !important;
  background: #eef2ec;
}

.experiences-head,
#approach .section-head {
  margin-bottom: 30px !important;
}

#approach .section-head h2,
.experiences-head h2 {
  color: #0e4b4a !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
}

#approach .section-head p,
.experiences-head p {
  color: #5f7372 !important;
  font-weight: 500 !important;
}

.experiences-grid,
.process {
  align-items: stretch !important;
}

.experience-card,
.step {
  height: 100%;
  border: 1px solid rgba(14,75,74,.08) !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 16px 34px rgba(15,23,42,.06) !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.experience-card:hover,
.step:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 48px rgba(15,23,42,.09) !important;
  border-color: rgba(14,75,74,.14) !important;
}

.step {
  min-height: 210px;
  padding: 30px 30px 28px !important;
}

.step::before {
  margin-bottom: 24px !important;
}

.step h3 {
  color: #0e4b4a !important;
  font-size: 1.08rem;
  line-height: 1.25;
  margin-bottom: 12px !important;
}

.step p {
  font-size: .98rem;
  line-height: 1.55;
  color: #5f7372 !important;
}

@media (max-width: 1100px) {
  .experiences-refined .container,
  #approach > .container {
    width: min(100% - 48px, 1160px) !important;
  }

  #approach .section-head {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    align-items: start;
  }

  .process {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 640px) {
  .experiences-refined .container,
  #approach > .container {
    width: min(100% - 28px, 1160px) !important;
  }

  .experiences-refined {
    padding-top: 58px !important;
    padding-bottom: 32px !important;
  }

  #approach {
    padding-top: 34px !important;
    padding-bottom: 56px !important;
  }

  .process {
    grid-template-columns: 1fr !important;
  }
}



/* 0305a alignment fix: testimonials and process follow the main page container indent */
.experiences-refined .container,
#approach > .container {
  width: min(1160px, calc(100% - 40px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.experiences-grid {
  gap: 18px !important;
}

.experience-card {
  padding: 28px !important;
  font-size: 1.03rem !important;
  line-height: 1.62 !important;
  border-radius: 28px !important;
}

.experiences-head h2 {
  font-size: clamp(2.5rem, 4.2vw, 4.4rem) !important;
}

.experiences-head p {
  font-size: 1.05rem !important;
  max-width: 390px !important;
}

.process {
  gap: 16px !important;
}

@media (max-width: 900px) {
  .experiences-refined .container,
  #approach > .container {
    width: min(100% - 32px, 1160px) !important;
  }
}



/* FINAL 0305a WIDTH CORRECTION
   Restores a controlled premium homepage width.
   Applies only to main page content sections; navigation and footer are untouched. */
body main > section > .container,
body main > section > .container.hero-grid,
body main > section > .container.about-summary-card,
body main > section > .container.contact-grid,
body main .experiences-refined > .container,
body main #approach > .container {
  width: min(1160px, calc(100% - 96px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body main > section {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body main .faq-list,
body main .cards,
body main .service-cards,
body main .process,
body main .experiences-grid,
body main .cta-box,
body main .about-summary-card,
body main .contact-grid {
  max-width: 100% !important;
}

@media (max-width: 900px) {
  body main > section > .container,
  body main > section > .container.hero-grid,
  body main > section > .container.about-summary-card,
  body main > section > .container.contact-grid,
  body main .experiences-refined > .container,
  body main #approach > .container {
    width: min(100% - 40px, 1160px) !important;
    max-width: 1160px !important;
  }
}

@media (max-width: 560px) {
  body main > section > .container,
  body main > section > .container.hero-grid,
  body main > section > .container.about-summary-card,
  body main > section > .container.contact-grid,
  body main .experiences-refined > .container,
  body main #approach > .container {
    width: min(100% - 28px, 1160px) !important;
  }
}



/* Form security and validation polish */
.form-honeypot { position:absolute !important; left:-10000px !important; top:auto !important; width:1px !important; height:1px !important; overflow:hidden !important; opacity:0 !important; pointer-events:none !important; }
.recaptcha-wrap { margin: 18px 0 8px; }
.form-security-note { margin: 10px 0 0; font-size: .82rem; line-height: 1.45; color: rgba(95,115,114,.88); }
.form-status-message { display:none; margin: 12px 0 0; padding: 10px 12px; border-radius: 14px; background: rgba(31,111,104,.09); color: #0e4b4a; font-size: .9rem; }
.form-status-message.is-visible { display:block; }
.g-recaptcha { transform-origin: left top; }
@media (max-width: 380px) { .g-recaptcha { transform: scale(.88); } .recaptcha-wrap { min-height: 70px; } }



/* Final WhatsApp CTA position: fixed, right side, vertically centered on desktop */
.whatsapp,
.whatsapp-float {
  position: fixed !important;
  right: 22px !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  z-index: 9999 !important;
}
.whatsapp:hover,
.whatsapp-float:hover {
  transform: translateY(-50%) scale(1.06) !important;
}
@media (max-width: 768px) {
  .whatsapp,
  .whatsapp-float {
    right: 18px !important;
    top: auto !important;
    bottom: 20px !important;
    transform: none !important;
  }
  .whatsapp:hover,
  .whatsapp-float:hover {
    transform: scale(1.05) !important;
  }
}



/* FINAL approved Option 2 header/footer layout */
.site-nav.tep-approved-header, .site-nav.tep-approved-header * { box-sizing: border-box !important; }
.site-nav.tep-approved-header { all: unset; display:block !important; position:sticky !important; top:0 !important; z-index:999 !important; width:100% !important; background:#fff !important; border-bottom:0!important; box-shadow:0 1px 0 rgba(0,0,0,.08) !important; font-family:'Manrope',Arial,sans-serif !important; }
.tep-header-inner { width:min(1840px, calc(100% - 96px)) !important; min-height:176px !important; margin:0 auto !important; display:flex !important; align-items:center !important; gap:0 !important; }
.tep-brand-block { display:block !important; flex:0 0 372px !important; color:inherit !important; text-decoration:none !important; }
.tep-logo { width:372px !important; text-align:center !important; color:#0b4a47 !important; line-height:1 !important; font-family: Georgia, 'Times New Roman', serif !important; transform:translateY(2px) !important; }
.tep-logo-the { font:700 26px/1 Georgia,'Times New Roman',serif !important; letter-spacing:.45em !important; padding-left:.45em !important; color:#0b4a47 !important; margin-bottom:7px !important; }
.tep-logo-ember { font:700 63px/.86 Georgia,'Times New Roman',serif !important; letter-spacing:.18em !important; padding-left:.18em !important; color:#0b4a47 !important; text-shadow:0 8px 10px rgba(0,0,0,.10) !important; }
.tep-logo-practice { margin-top:10px !important; display:flex !important; align-items:center !important; justify-content:center !important; gap:17px !important; color:#c8953d !important; font-family:'Manrope',Arial,sans-serif !important; }
.tep-logo-practice span { display:block !important; width:78px !important; height:2px !important; background:#c8953d !important; }
.tep-logo-practice b { font:800 21px/1 'Manrope',Arial,sans-serif !important; letter-spacing:.36em !important; color:#c8953d !important; }
.tep-divider { flex:0 0 2px !important; width:2px !important; height:104px !important; background:#c8953d !important; margin:0 42px !important; }
.tep-service-lockup { flex:0 0 420px !important; color:#0b4a47 !important; font-family:'Manrope',Arial,sans-serif !important; font-size:21px !important; line-height:1.55 !important; font-weight:800 !important; letter-spacing:.31em !important; white-space:nowrap !important; }
.tep-nav-menu { margin-left:96px !important; padding-top:2px !important; display:flex !important; align-items:center !important; gap:54px !important; font-family:'Manrope',Arial,sans-serif !important; }
.tep-nav-menu a { position:relative !important; display:inline-block !important; color:#192024 !important; text-decoration:none !important; font-size:22px !important; line-height:1 !important; font-weight:500 !important; white-space:nowrap !important; }
.tep-nav-menu a.active::after { content:'' !important; position:absolute !important; left:0 !important; bottom:-32px !important; width:84px !important; height:4px !important; background:#c8953d !important; }
.tep-nav-menu .chev { font-size:18px !important; padding-left:8px !important; color:#192024 !important; }

.tep-approved-footer, .tep-approved-footer * { box-sizing:border-box !important; }
.tep-approved-footer { display:block !important; margin:0 !important; padding:76px 0 !important; background:#f7fbf7 !important; color:#1b2428 !important; border-top:1px solid rgba(0,0,0,.06) !important; font-family:'Manrope',Arial,sans-serif !important; }
.tep-footer-inner { width:min(1840px, calc(100% - 96px)) !important; margin:0 auto !important; display:grid !important; grid-template-columns: 390px 2px 395px 2px minmax(390px, 1fr) 2px 330px !important; align-items:center !important; gap:46px !important; }
.tep-footer-brand .tep-logo { width:360px !important; transform:none !important; }
.tep-footer-brand .tep-logo-the { font-size:25px !important; }
.tep-footer-brand .tep-logo-ember { font-size:60px !important; }
.tep-footer-brand .tep-logo-practice b { font-size:20px !important; }
.tep-footer-brand .tep-logo-practice span { width:74px !important; }
.tep-footer-service .tep-service-lockup { width:100% !important; flex:unset !important; font-size:20px !important; line-height:1.55 !important; letter-spacing:.30em !important; }
.tep-footer-inner > .tep-divider { width:2px !important; height:128px !important; margin:0 !important; justify-self:center !important; background:#c8953d !important; flex:unset !important; }
.tep-footer-inner > .tep-divider.tep-soft-divider { height:208px !important; background:rgba(11,74,71,.18) !important; }
.tep-footer-contact h3, .tep-footer-social h3 { margin:0 0 24px !important; color:#0b4a47 !important; font-size:21px !important; line-height:1.2 !important; font-weight:800 !important; text-transform:uppercase !important; letter-spacing:.03em !important; }
.tep-footer-contact p { display:grid !important; grid-template-columns:34px 1fr !important; align-items:start !important; gap:14px !important; margin:0 0 18px !important; color:#1d2528 !important; font-size:18px !important; line-height:1.45 !important; }
.tep-footer-contact a { color:#1d2528 !important; text-decoration:none !important; }
.tep-icon { color:#c8953d !important; font-size:23px !important; line-height:1.2 !important; font-weight:700 !important; }
.tep-footer-social { text-align:center !important; }
.tep-socials { display:flex !important; justify-content:center !important; gap:16px !important; margin-bottom:42px !important; }
.tep-socials a { width:42px !important; height:42px !important; border-radius:10px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; background:#0b4a47 !important; color:#fff !important; font-weight:800 !important; text-decoration:none !important; font-size:22px !important; }
.tep-copy { margin:0 !important; color:#1d2528 !important; font-size:16px !important; line-height:1.8 !important; }

@media (max-width: 1600px) {
  .tep-header-inner { width:min(1360px, calc(100% - 64px)) !important; min-height:142px !important; }
  .tep-brand-block { flex-basis:300px !important; }
  .tep-logo { width:300px !important; }
  .tep-logo-the { font-size:21px !important; margin-bottom:6px !important; }
  .tep-logo-ember { font-size:51px !important; }
  .tep-logo-practice { margin-top:8px !important; gap:13px !important; }
  .tep-logo-practice span { width:60px !important; }
  .tep-logo-practice b { font-size:17px !important; }
  .tep-divider { height:88px !important; margin:0 32px !important; }
  .tep-service-lockup { flex-basis:360px !important; font-size:17px !important; letter-spacing:.27em !important; }
  .tep-nav-menu { margin-left:52px !important; gap:40px !important; }
  .tep-nav-menu a { font-size:19px !important; }
  .tep-nav-menu a.active::after { bottom:-24px !important; width:72px !important; height:3px !important; }
  .tep-footer-inner { width:min(1360px, calc(100% - 64px)) !important; grid-template-columns:300px 2px 330px 2px minmax(330px, 1fr) 2px 230px !important; gap:30px !important; }
  .tep-footer-brand .tep-logo { width:300px !important; }
  .tep-footer-brand .tep-logo-the { font-size:21px !important; }
  .tep-footer-brand .tep-logo-ember { font-size:50px !important; }
  .tep-footer-brand .tep-logo-practice b { font-size:17px !important; }
  .tep-footer-brand .tep-logo-practice span { width:58px !important; }
  .tep-footer-service .tep-service-lockup { font-size:16px !important; letter-spacing:.25em !important; }
  .tep-footer-contact h3, .tep-footer-social h3 { font-size:17px !important; }
  .tep-footer-contact p { font-size:16px !important; }
  .tep-copy { font-size:14px !important; }
}
@media (max-width: 1100px) {
  .site-nav.tep-approved-header { border-bottom-width:0!important; }
  .tep-header-inner { width:calc(100% - 32px) !important; min-height:120px !important; flex-wrap:wrap !important; padding:18px 0 !important; }
  .tep-brand-block { flex:0 0 245px !important; }
  .tep-header-inner > .tep-divider, .tep-header-inner > .tep-service-lockup { display:none !important; }
  .tep-logo { width:245px !important; text-align:left !important; }
  .tep-logo-the { font-size:18px !important; padding-left:.35em !important; }
  .tep-logo-ember { font-size:44px !important; padding-left:.08em !important; }
  .tep-logo-practice { justify-content:flex-start !important; gap:10px !important; }
  .tep-logo-practice span { width:46px !important; }
  .tep-logo-practice b { font-size:15px !important; }
  .tep-nav-menu { margin-left:auto !important; gap:18px !important; flex-wrap:wrap !important; justify-content:flex-end !important; }
  .tep-nav-menu a { font-size:15px !important; }
  .tep-nav-menu a.active::after { display:none !important; }
  .tep-approved-footer { padding:44px 0 !important; }
  .tep-footer-inner { width:calc(100% - 40px) !important; grid-template-columns:1fr !important; gap:28px !important; text-align:left !important; }
  .tep-footer-inner > .tep-divider { display:none !important; }
  .tep-footer-brand .tep-logo { width:270px !important; transform:none !important; }
  .tep-footer-social { text-align:left !important; }
  .tep-socials { justify-content:flex-start !important; margin-bottom:20px !important; }
}
@media (max-width: 560px) {
  .tep-header-inner { display:block !important; }
  .tep-nav-menu { margin:18px 0 0 !important; justify-content:flex-start !important; gap:14px 18px !important; }
  .tep-nav-menu a { font-size:14px !important; }
}



/* FINAL SIZE/POSITION CORRECTION - 2026-05-29 */
.site-nav.tep-approved-header { border-bottom:0!important; }
.tep-header-inner { width:min(1740px, calc(100% - 96px)) !important; min-height:150px !important; }
.tep-brand-block { flex:0 0 330px !important; }
.tep-logo { width:330px !important; }
.tep-logo-the { font-size:22px !important; margin-bottom:6px !important; letter-spacing:.45em !important; }
.tep-logo-ember { font-size:56px !important; letter-spacing:.18em !important; }
.tep-logo-practice { margin-top:8px !important; gap:14px !important; }
.tep-logo-practice span { width:68px !important; height:2px !important; }
.tep-logo-practice b { font-size:18px !important; letter-spacing:.34em !important; }
.tep-divider { height:96px !important; margin:0 36px !important; }
.tep-service-lockup { flex:0 0 410px !important; font-size:18px !important; line-height:1.55 !important; letter-spacing:.28em !important; }
.tep-nav-menu { margin-left:44px !important; gap:44px !important; }
.tep-nav-menu a { font-size:19px !important; }
.tep-nav-menu .chev { font-size:16px !important; padding-left:6px !important; }
.tep-nav-menu a.active::after { bottom:-27px !important; width:78px !important; height:3px !important; }

.tep-approved-footer { padding:62px 0 !important; overflow:hidden !important; }
.tep-footer-inner { width:min(1720px, calc(100% - 96px)) !important; grid-template-columns:330px 2px 410px 2px 440px 2px 250px !important; gap:36px !important; align-items:center !important; }
.tep-footer-brand .tep-logo { width:330px !important; }
.tep-footer-brand .tep-logo-the { font-size:22px !important; margin-bottom:6px !important; }
.tep-footer-brand .tep-logo-ember { font-size:56px !important; }
.tep-footer-brand .tep-logo-practice { margin-top:8px !important; gap:14px !important; }
.tep-footer-brand .tep-logo-practice b { font-size:18px !important; }
.tep-footer-brand .tep-logo-practice span { width:68px !important; }
.tep-footer-service .tep-service-lockup { font-size:17px !important; line-height:1.55 !important; letter-spacing:.27em !important; }
.tep-footer-inner > .tep-divider { height:112px !important; }
.tep-footer-inner > .tep-divider.tep-soft-divider { height:180px !important; background:rgba(11,74,71,.16) !important; }
.tep-footer-contact h3, .tep-footer-social h3 { font-size:18px !important; margin-bottom:20px !important; }
.tep-footer-contact p { grid-template-columns:28px 1fr !important; gap:12px !important; font-size:16px !important; line-height:1.45 !important; margin-bottom:16px !important; }
.tep-icon { font-size:18px !important; }
.tep-socials { gap:14px !important; margin-bottom:34px !important; }
.tep-socials a { width:42px !important; height:42px !important; font-size:20px !important; }
.tep-copy { font-size:14px !important; line-height:1.7 !important; }

@media (max-width: 1600px) {
  .tep-header-inner { width:min(1320px, calc(100% - 64px)) !important; min-height:132px !important; }
  .tep-brand-block { flex-basis:275px !important; }
  .tep-logo { width:275px !important; }
  .tep-logo-the { font-size:19px !important; }
  .tep-logo-ember { font-size:47px !important; }
  .tep-logo-practice b { font-size:15px !important; }
  .tep-logo-practice span { width:54px !important; }
  .tep-divider { height:82px !important; margin:0 28px !important; }
  .tep-service-lockup { flex-basis:335px !important; font-size:15px !important; letter-spacing:.25em !important; }
  .tep-nav-menu { margin-left:32px !important; gap:34px !important; }
  .tep-nav-menu a { font-size:17px !important; }
  .tep-nav-menu a.active::after { bottom:-22px !important; width:66px !important; }

  .tep-footer-inner { width:min(1320px, calc(100% - 64px)) !important; grid-template-columns:275px 2px 315px 2px 390px 2px 210px !important; gap:22px !important; }
  .tep-footer-brand .tep-logo { width:275px !important; }
  .tep-footer-brand .tep-logo-the { font-size:19px !important; }
  .tep-footer-brand .tep-logo-ember { font-size:47px !important; }
  .tep-footer-brand .tep-logo-practice b { font-size:15px !important; }
  .tep-footer-brand .tep-logo-practice span { width:54px !important; }
  .tep-footer-service .tep-service-lockup { font-size:14px !important; letter-spacing:.24em !important; }
  .tep-footer-contact h3, .tep-footer-social h3 { font-size:15px !important; }
  .tep-footer-contact p { font-size:14px !important; }
  .tep-copy { font-size:12px !important; }
}



/* Final container-width adjustment: match main site section width and approved Option 2 proportions */
.site-nav.tep-approved-header { background:#fff !important; border-bottom:0!important; overflow:visible !important; }
.site-nav.tep-approved-header .tep-header-inner {
  width:min(1120px, calc(100% - 48px)) !important;
  max-width:1120px !important;
  min-height:118px !important;
  margin:0 auto !important;
  padding:12px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;
  overflow:visible !important;
}
.site-nav.tep-approved-header .tep-brand-block { flex:0 0 245px !important; width:245px !important; }
.site-nav.tep-approved-header .tep-logo { width:245px !important; transform:none !important; }
.site-nav.tep-approved-header .tep-logo-the { font-size:17px !important; letter-spacing:.43em !important; padding-left:.43em !important; margin-bottom:5px !important; }
.site-nav.tep-approved-header .tep-logo-ember { font-size:42px !important; letter-spacing:.17em !important; padding-left:.17em !important; line-height:.9 !important; text-shadow:0 5px 8px rgba(0,0,0,.08) !important; }
.site-nav.tep-approved-header .tep-logo-practice { margin-top:7px !important; gap:10px !important; }
.site-nav.tep-approved-header .tep-logo-practice span { width:48px !important; height:2px !important; }
.site-nav.tep-approved-header .tep-logo-practice b { font-size:14px !important; letter-spacing:.34em !important; }
.site-nav.tep-approved-header .tep-divider { flex:0 0 2px !important; width:2px !important; height:74px !important; margin:0 24px !important; }
.site-nav.tep-approved-header .tep-service-lockup { flex:0 0 300px !important; width:300px !important; font-size:13.5px !important; line-height:1.55 !important; letter-spacing:.27em !important; white-space:nowrap !important; }
.site-nav.tep-approved-header .tep-nav-menu { margin-left:34px !important; padding-top:0 !important; display:flex !important; align-items:center !important; gap:24px !important; flex:1 1 auto !important; justify-content:flex-start !important; }
.site-nav.tep-approved-header .tep-nav-menu a { font-size:15px !important; line-height:1 !important; font-weight:500 !important; white-space:nowrap !important; }
.site-nav.tep-approved-header .tep-nav-menu .chev { font-size:12px !important; padding-left:4px !important; }
.site-nav.tep-approved-header .tep-nav-menu a.active::after { bottom:-20px !important; width:52px !important; height:3px !important; }

.tep-approved-footer { padding:56px 0 !important; overflow:hidden !important; }
.tep-approved-footer .tep-footer-inner {
  width:min(1120px, calc(100% - 48px)) !important;
  max-width:1120px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:230px 1px 280px 1px 340px 1px 190px !important;
  gap:12px !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}
.tep-approved-footer .tep-footer-brand .tep-logo { width:230px !important; transform:none !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-the { font-size:16px !important; letter-spacing:.43em !important; padding-left:.43em !important; margin-bottom:5px !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-ember { font-size:39px !important; letter-spacing:.17em !important; padding-left:.17em !important; line-height:.9 !important; text-shadow:0 5px 8px rgba(0,0,0,.08) !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-practice { margin-top:7px !important; gap:9px !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-practice span { width:44px !important; height:2px !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-practice b { font-size:13px !important; letter-spacing:.34em !important; }
.tep-approved-footer .tep-footer-service .tep-service-lockup { width:280px !important; flex:unset !important; font-size:12.5px !important; line-height:1.55 !important; letter-spacing:.25em !important; white-space:nowrap !important; }
.tep-approved-footer .tep-footer-inner > .tep-divider { width:1px !important; height:86px !important; margin:0 !important; justify-self:center !important; flex:unset !important; }
.tep-approved-footer .tep-footer-inner > .tep-divider.tep-soft-divider { height:142px !important; background:rgba(11,74,71,.16) !important; }
.tep-approved-footer .tep-footer-contact h3, .tep-approved-footer .tep-footer-social h3 { font-size:14px !important; line-height:1.2 !important; margin:0 0 14px !important; letter-spacing:.03em !important; }
.tep-approved-footer .tep-footer-contact p { display:grid !important; grid-template-columns:20px 1fr !important; gap:8px !important; font-size:13px !important; line-height:1.42 !important; margin:0 0 10px !important; }
.tep-approved-footer .tep-icon { font-size:15px !important; line-height:1.25 !important; }
.tep-approved-footer .tep-footer-social { text-align:center !important; min-width:0 !important; }
.tep-approved-footer .tep-socials { gap:10px !important; margin-bottom:26px !important; }
.tep-approved-footer .tep-socials a { width:34px !important; height:34px !important; border-radius:8px !important; font-size:16px !important; }
.tep-approved-footer .tep-copy { font-size:11.5px !important; line-height:1.65 !important; margin:0 !important; }

@media (max-width: 1180px) {
  .site-nav.tep-approved-header .tep-header-inner { width:min(1000px, calc(100% - 36px)) !important; min-height:110px !important; }
  .site-nav.tep-approved-header .tep-brand-block { flex-basis:210px !important; width:210px !important; }
  .site-nav.tep-approved-header .tep-logo { width:210px !important; }
  .site-nav.tep-approved-header .tep-logo-the { font-size:15px !important; }
  .site-nav.tep-approved-header .tep-logo-ember { font-size:36px !important; }
  .site-nav.tep-approved-header .tep-logo-practice b { font-size:12px !important; }
  .site-nav.tep-approved-header .tep-logo-practice span { width:38px !important; }
  .site-nav.tep-approved-header .tep-divider { height:66px !important; margin:0 18px !important; }
  .site-nav.tep-approved-header .tep-service-lockup { flex-basis:260px !important; width:260px !important; font-size:12px !important; }
  .site-nav.tep-approved-header .tep-nav-menu { margin-left:22px !important; gap:18px !important; }
  .site-nav.tep-approved-header .tep-nav-menu a { font-size:14px !important; }
  .tep-approved-footer .tep-footer-inner { width:min(1000px, calc(100% - 36px)) !important; grid-template-columns:200px 1px 245px 1px 315px 1px 160px !important; gap:10px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo { width:200px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-the { font-size:14px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-ember { font-size:34px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-practice b { font-size:11px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-practice span { width:36px !important; }
  .tep-approved-footer .tep-footer-service .tep-service-lockup { width:245px !important; font-size:11px !important; }
  .tep-approved-footer .tep-footer-contact h3, .tep-approved-footer .tep-footer-social h3 { font-size:12.5px !important; }
  .tep-approved-footer .tep-footer-contact p { font-size:11.5px !important; }
}
@media (max-width: 900px) {
  .site-nav.tep-approved-header .tep-header-inner { display:block !important; width:min(720px, calc(100% - 32px)) !important; min-height:0 !important; padding:18px 0 !important; }
  .site-nav.tep-approved-header .tep-brand-block { display:block !important; width:220px !important; margin:0 auto 12px !important; }
  .site-nav.tep-approved-header .tep-logo { width:220px !important; margin:0 auto !important; }
  .site-nav.tep-approved-header .tep-divider, .site-nav.tep-approved-header .tep-service-lockup { display:none !important; }
  .site-nav.tep-approved-header .tep-nav-menu { margin:12px 0 0 !important; justify-content:center !important; flex-wrap:wrap !important; gap:14px 22px !important; }
  .site-nav.tep-approved-header .tep-nav-menu a { font-size:14px !important; }
  .site-nav.tep-approved-header .tep-nav-menu a.active::after { display:none !important; }
  .tep-approved-footer .tep-footer-inner { width:min(720px, calc(100% - 32px)) !important; display:grid !important; grid-template-columns:1fr !important; gap:22px !important; text-align:center !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo { width:220px !important; margin:0 auto !important; }
  .tep-approved-footer .tep-footer-service .tep-service-lockup { width:auto !important; text-align:center !important; }
  .tep-approved-footer .tep-footer-inner > .tep-divider { display:none !important; }
  .tep-approved-footer .tep-footer-contact p { display:block !important; text-align:center !important; }
}



/* Match the approved logo sample: same visual weight, height and proportions; no page content/font changes. */
.site-nav.tep-approved-header {
  background:#fff !important;
  border-bottom:0!important;
  overflow:hidden !important;
}
.site-nav.tep-approved-header .tep-header-inner {
  width:min(1840px, calc(100% - 128px)) !important;
  max-width:1840px !important;
  min-height:168px !important;
  margin:0 auto !important;
  padding:18px 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;
}
.site-nav.tep-approved-header .tep-brand-block { flex:0 0 382px !important; width:382px !important; }
.site-nav.tep-approved-header .tep-logo {
  width:382px !important;
  text-align:center !important;
  transform:none !important;
  color:#0b4a47 !important;
  font-family:Georgia,'Times New Roman',serif !important;
  line-height:1 !important;
}
.site-nav.tep-approved-header .tep-logo-the {
  font:700 25px/1 Georgia,'Times New Roman',serif !important;
  letter-spacing:.44em !important;
  padding-left:.44em !important;
  margin:0 0 7px !important;
  color:#0b4a47 !important;
}
.site-nav.tep-approved-header .tep-logo-ember {
  font:700 62px/.88 Georgia,'Times New Roman',serif !important;
  letter-spacing:.18em !important;
  padding-left:.18em !important;
  color:#0b4a47 !important;
  text-shadow:0 7px 10px rgba(0,0,0,.11) !important;
}
.site-nav.tep-approved-header .tep-logo-practice {
  margin-top:10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:17px !important;
  color:#c8953d !important;
  font-family:'Manrope',Arial,sans-serif !important;
}
.site-nav.tep-approved-header .tep-logo-practice span { width:74px !important; height:2px !important; background:#c8953d !important; }
.site-nav.tep-approved-header .tep-logo-practice b {
  font:800 20px/1 'Manrope',Arial,sans-serif !important;
  letter-spacing:.35em !important;
  color:#c8953d !important;
}
.site-nav.tep-approved-header .tep-divider { flex:0 0 2px !important; width:2px !important; height:104px !important; margin:0 44px !important; background:#c8953d !important; }
.site-nav.tep-approved-header .tep-service-lockup {
  flex:0 0 430px !important;
  width:430px !important;
  color:#0b4a47 !important;
  font-family:'Manrope',Arial,sans-serif !important;
  font-size:20px !important;
  line-height:1.55 !important;
  font-weight:800 !important;
  letter-spacing:.30em !important;
  white-space:nowrap !important;
}
.site-nav.tep-approved-header .tep-nav-menu {
  margin-left:auto !important;
  padding-top:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:48px !important;
  flex:1 1 auto !important;
  font-family:'Manrope',Arial,sans-serif !important;
}
.site-nav.tep-approved-header .tep-nav-menu a { font-size:20px !important; line-height:1 !important; font-weight:500 !important; white-space:nowrap !important; color:#192024 !important; text-decoration:none !important; }
.site-nav.tep-approved-header .tep-nav-menu .chev { font-size:16px !important; padding-left:7px !important; }
.site-nav.tep-approved-header .tep-nav-menu a.active::after { bottom:-32px !important; width:82px !important; height:4px !important; background:#c8953d !important; }

.tep-approved-footer { background:#f7fbf7 !important; padding:74px 0 !important; overflow:hidden !important; }
.tep-approved-footer .tep-footer-inner {
  width:min(1840px, calc(100% - 128px)) !important;
  max-width:1840px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:382px 2px 430px 2px minmax(440px, 1fr) 2px 260px !important;
  gap:38px !important;
  align-items:center !important;
}
.tep-approved-footer .tep-footer-brand .tep-logo { width:382px !important; transform:none !important; text-align:center !important; font-family:Georgia,'Times New Roman',serif !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-the { font-size:25px !important; letter-spacing:.44em !important; padding-left:.44em !important; margin-bottom:7px !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-ember { font-size:62px !important; line-height:.88 !important; letter-spacing:.18em !important; padding-left:.18em !important; text-shadow:0 7px 10px rgba(0,0,0,.11) !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-practice { margin-top:10px !important; gap:17px !important; justify-content:center !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-practice span { width:74px !important; height:2px !important; }
.tep-approved-footer .tep-footer-brand .tep-logo-practice b { font-size:20px !important; letter-spacing:.35em !important; }
.tep-approved-footer .tep-footer-service .tep-service-lockup { width:430px !important; flex:unset !important; font-size:19px !important; line-height:1.55 !important; letter-spacing:.29em !important; white-space:nowrap !important; }
.tep-approved-footer .tep-footer-inner > .tep-divider { width:2px !important; height:118px !important; margin:0 !important; justify-self:center !important; background:#c8953d !important; flex:unset !important; }
.tep-approved-footer .tep-footer-inner > .tep-divider.tep-soft-divider { height:190px !important; background:rgba(11,74,71,.16) !important; }
.tep-approved-footer .tep-footer-contact h3, .tep-approved-footer .tep-footer-social h3 { font-size:18px !important; margin:0 0 22px !important; color:#0b4a47 !important; font-weight:800 !important; }
.tep-approved-footer .tep-footer-contact p { grid-template-columns:30px 1fr !important; gap:12px !important; font-size:16px !important; line-height:1.45 !important; margin:0 0 16px !important; }
.tep-approved-footer .tep-icon { font-size:20px !important; color:#c8953d !important; }
.tep-approved-footer .tep-socials a { width:42px !important; height:42px !important; border-radius:9px !important; font-size:19px !important; }
.tep-approved-footer .tep-copy { font-size:14px !important; line-height:1.7 !important; }

@media (max-width: 1600px) {
  .site-nav.tep-approved-header .tep-header-inner { width:min(1360px, calc(100% - 64px)) !important; min-height:142px !important; padding:16px 0 !important; }
  .site-nav.tep-approved-header .tep-brand-block { flex-basis:305px !important; width:305px !important; }
  .site-nav.tep-approved-header .tep-logo { width:305px !important; }
  .site-nav.tep-approved-header .tep-logo-the { font-size:20px !important; margin-bottom:6px !important; }
  .site-nav.tep-approved-header .tep-logo-ember { font-size:50px !important; }
  .site-nav.tep-approved-header .tep-logo-practice { margin-top:8px !important; gap:13px !important; }
  .site-nav.tep-approved-header .tep-logo-practice span { width:58px !important; }
  .site-nav.tep-approved-header .tep-logo-practice b { font-size:16px !important; }
  .site-nav.tep-approved-header .tep-divider { height:84px !important; margin:0 30px !important; }
  .site-nav.tep-approved-header .tep-service-lockup { flex-basis:340px !important; width:340px !important; font-size:16px !important; letter-spacing:.27em !important; }
  .site-nav.tep-approved-header .tep-nav-menu { gap:34px !important; }
  .site-nav.tep-approved-header .tep-nav-menu a { font-size:17px !important; }
  .site-nav.tep-approved-header .tep-nav-menu a.active::after { bottom:-25px !important; width:68px !important; height:3px !important; }

  .tep-approved-footer .tep-footer-inner { width:min(1360px, calc(100% - 64px)) !important; grid-template-columns:305px 2px 340px 2px minmax(360px, 1fr) 2px 205px !important; gap:24px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo { width:305px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-the { font-size:20px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-ember { font-size:50px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-practice b { font-size:16px !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo-practice span { width:58px !important; }
  .tep-approved-footer .tep-footer-service .tep-service-lockup { width:340px !important; font-size:15px !important; letter-spacing:.26em !important; }
  .tep-approved-footer .tep-footer-contact h3, .tep-approved-footer .tep-footer-social h3 { font-size:15px !important; }
  .tep-approved-footer .tep-footer-contact p { font-size:13.5px !important; }
  .tep-approved-footer .tep-copy { font-size:12px !important; }
}
@media (max-width: 1050px) {
  .site-nav.tep-approved-header .tep-header-inner { display:block !important; width:min(720px, calc(100% - 32px)) !important; min-height:0 !important; padding:18px 0 !important; }
  .site-nav.tep-approved-header .tep-brand-block { display:block !important; width:240px !important; margin:0 auto 12px !important; }
  .site-nav.tep-approved-header .tep-logo { width:240px !important; margin:0 auto !important; }
  .site-nav.tep-approved-header .tep-logo-the { font-size:16px !important; }
  .site-nav.tep-approved-header .tep-logo-ember { font-size:40px !important; }
  .site-nav.tep-approved-header .tep-logo-practice b { font-size:13px !important; }
  .site-nav.tep-approved-header .tep-divider, .site-nav.tep-approved-header .tep-service-lockup { display:none !important; }
  .site-nav.tep-approved-header .tep-nav-menu { margin:14px 0 0 !important; justify-content:center !important; flex-wrap:wrap !important; gap:14px 22px !important; }
  .site-nav.tep-approved-header .tep-nav-menu a { font-size:14px !important; }
  .site-nav.tep-approved-header .tep-nav-menu a.active::after { display:none !important; }
  .tep-approved-footer .tep-footer-inner { width:min(720px, calc(100% - 32px)) !important; display:grid !important; grid-template-columns:1fr !important; gap:24px !important; text-align:center !important; }
  .tep-approved-footer .tep-footer-brand .tep-logo { width:250px !important; margin:0 auto !important; }
  .tep-approved-footer .tep-footer-service .tep-service-lockup { width:auto !important; text-align:center !important; }
  .tep-approved-footer .tep-footer-inner > .tep-divider { display:none !important; }
  .tep-approved-footer .tep-footer-contact p { display:block !important; text-align:center !important; }
}



/* FINAL OVERRIDE: keep header/footer inside the same central width as site sections, with scaled Option 2 lockup. */
.site-nav.tep-approved-header{background:#fff!important;border-bottom:0!important;overflow:visible!important;}
.site-nav.tep-approved-header .tep-header-inner{
  width:min(1160px,calc(100% - 40px))!important;max-width:1160px!important;margin:0 auto!important;
  min-height:118px!important;padding:14px 0!important;display:flex!important;align-items:center!important;
  justify-content:flex-start!important;gap:0!important;overflow:visible!important;
}
.site-nav.tep-approved-header .tep-brand-block{flex:0 0 250px!important;width:250px!important;}
.site-nav.tep-approved-header .tep-logo{width:250px!important;text-align:center!important;transform:none!important;color:#0b4a47!important;font-family:Georgia,'Times New Roman',serif!important;line-height:1!important;}
.site-nav.tep-approved-header .tep-logo-the{font:700 16px/1 Georgia,'Times New Roman',serif!important;letter-spacing:.44em!important;padding-left:.44em!important;margin:0 0 5px!important;color:#0b4a47!important;}
.site-nav.tep-approved-header .tep-logo-ember{font:700 41px/.88 Georgia,'Times New Roman',serif!important;letter-spacing:.18em!important;padding-left:.18em!important;color:#0b4a47!important;text-shadow:0 5px 8px rgba(0,0,0,.10)!important;}
.site-nav.tep-approved-header .tep-logo-practice{margin-top:7px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;color:#c8953d!important;font-family:'Manrope',Arial,sans-serif!important;}
.site-nav.tep-approved-header .tep-logo-practice span{width:48px!important;height:2px!important;background:#c8953d!important;}
.site-nav.tep-approved-header .tep-logo-practice b{font:800 13px/1 'Manrope',Arial,sans-serif!important;letter-spacing:.35em!important;color:#c8953d!important;}
.site-nav.tep-approved-header .tep-divider{flex:0 0 2px!important;width:2px!important;height:72px!important;margin:0 24px!important;background:#c8953d!important;}
.site-nav.tep-approved-header .tep-service-lockup{flex:0 0 295px!important;width:295px!important;color:#0b4a47!important;font-family:'Manrope',Arial,sans-serif!important;font-size:13px!important;line-height:1.55!important;font-weight:800!important;letter-spacing:.28em!important;white-space:nowrap!important;}
.site-nav.tep-approved-header .tep-nav-menu{margin-left:28px!important;padding-top:0!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:22px!important;flex:1 1 auto!important;font-family:'Manrope',Arial,sans-serif!important;min-width:0!important;}
.site-nav.tep-approved-header .tep-nav-menu a{font-size:14px!important;line-height:1!important;font-weight:500!important;white-space:nowrap!important;color:#192024!important;text-decoration:none!important;}
.site-nav.tep-approved-header .tep-nav-menu .chev{font-size:11px!important;padding-left:3px!important;}
.site-nav.tep-approved-header .tep-nav-menu a.active::after{bottom:-22px!important;width:54px!important;height:3px!important;background:#c8953d!important;}

.tep-approved-footer{background:#f7fbf7!important;padding:52px 0!important;overflow:visible!important;}
.tep-approved-footer .tep-footer-inner{
  width:min(1160px,calc(100% - 40px))!important;max-width:1160px!important;margin:0 auto!important;
  display:grid!important;grid-template-columns:235px 1px 285px 1px minmax(290px,1fr) 1px 145px!important;
  gap:22px!important;align-items:center!important;overflow:visible!important;
}
.tep-approved-footer .tep-footer-brand .tep-logo{width:235px!important;transform:none!important;text-align:center!important;font-family:Georgia,'Times New Roman',serif!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-the{font-size:15px!important;letter-spacing:.44em!important;padding-left:.44em!important;margin-bottom:5px!important;color:#0b4a47!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-ember{font-size:38px!important;line-height:.88!important;letter-spacing:.18em!important;padding-left:.18em!important;color:#0b4a47!important;text-shadow:0 5px 8px rgba(0,0,0,.10)!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-practice{margin-top:7px!important;gap:9px!important;justify-content:center!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-practice span{width:44px!important;height:2px!important;background:#c8953d!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-practice b{font-size:12px!important;letter-spacing:.35em!important;color:#c8953d!important;}
.tep-approved-footer .tep-footer-service .tep-service-lockup{width:285px!important;flex:unset!important;font-size:12px!important;line-height:1.55!important;letter-spacing:.27em!important;white-space:nowrap!important;color:#0b4a47!important;font-weight:800!important;}
.tep-approved-footer .tep-footer-inner>.tep-divider{width:1px!important;height:86px!important;margin:0!important;justify-self:center!important;background:#c8953d!important;flex:unset!important;}
.tep-approved-footer .tep-footer-inner>.tep-divider.tep-soft-divider{height:146px!important;background:rgba(11,74,71,.16)!important;}
.tep-approved-footer .tep-footer-contact h3,.tep-approved-footer .tep-footer-social h3{font-size:13px!important;line-height:1.2!important;margin:0 0 14px!important;color:#0b4a47!important;font-weight:800!important;}
.tep-approved-footer .tep-footer-contact p{display:grid!important;grid-template-columns:20px 1fr!important;gap:8px!important;font-size:12px!important;line-height:1.42!important;margin:0 0 10px!important;color:#192024!important;}
.tep-approved-footer .tep-icon{font-size:14px!important;color:#c8953d!important;line-height:1.2!important;}
.tep-approved-footer .tep-footer-social{text-align:center!important;min-width:0!important;}
.tep-approved-footer .tep-socials{gap:10px!important;margin-bottom:24px!important;display:flex!important;justify-content:center!important;}
.tep-approved-footer .tep-socials a{width:34px!important;height:34px!important;border-radius:8px!important;font-size:16px!important;}
.tep-approved-footer .tep-copy{font-size:11px!important;line-height:1.65!important;margin:0!important;}
@media(max-width:1200px){
 .site-nav.tep-approved-header .tep-header-inner{width:min(1000px,calc(100% - 36px))!important;min-height:104px!important;}
 .site-nav.tep-approved-header .tep-brand-block{flex-basis:205px!important;width:205px!important}.site-nav.tep-approved-header .tep-logo{width:205px!important}.site-nav.tep-approved-header .tep-logo-the{font-size:13px!important}.site-nav.tep-approved-header .tep-logo-ember{font-size:34px!important}.site-nav.tep-approved-header .tep-logo-practice b{font-size:10.5px!important}.site-nav.tep-approved-header .tep-logo-practice span{width:36px!important}.site-nav.tep-approved-header .tep-divider{height:62px!important;margin:0 16px!important}.site-nav.tep-approved-header .tep-service-lockup{flex-basis:245px!important;width:245px!important;font-size:10.5px!important}.site-nav.tep-approved-header .tep-nav-menu{margin-left:18px!important;gap:16px!important}.site-nav.tep-approved-header .tep-nav-menu a{font-size:13px!important}
 .tep-approved-footer .tep-footer-inner{width:min(1000px,calc(100% - 36px))!important;grid-template-columns:190px 1px 235px 1px minmax(260px,1fr) 1px 130px!important;gap:16px!important}.tep-approved-footer .tep-footer-brand .tep-logo{width:190px!important}.tep-approved-footer .tep-footer-brand .tep-logo-the{font-size:12px!important}.tep-approved-footer .tep-footer-brand .tep-logo-ember{font-size:31px!important}.tep-approved-footer .tep-footer-brand .tep-logo-practice b{font-size:10px!important}.tep-approved-footer .tep-footer-brand .tep-logo-practice span{width:32px!important}.tep-approved-footer .tep-footer-service .tep-service-lockup{width:235px!important;font-size:10px!important}.tep-approved-footer .tep-footer-contact p{font-size:11px!important}.tep-approved-footer .tep-footer-contact h3,.tep-approved-footer .tep-footer-social h3{font-size:12px!important}
}
@media(max-width:900px){
 .site-nav.tep-approved-header .tep-header-inner{display:block!important;width:min(720px,calc(100% - 32px))!important;min-height:0!important;padding:18px 0!important}.site-nav.tep-approved-header .tep-brand-block{display:block!important;width:220px!important;margin:0 auto 12px!important}.site-nav.tep-approved-header .tep-logo{width:220px!important;margin:0 auto!important}.site-nav.tep-approved-header .tep-logo-the{font-size:14px!important}.site-nav.tep-approved-header .tep-logo-ember{font-size:36px!important}.site-nav.tep-approved-header .tep-logo-practice b{font-size:11px!important}.site-nav.tep-approved-header .tep-divider,.site-nav.tep-approved-header .tep-service-lockup{display:none!important}.site-nav.tep-approved-header .tep-nav-menu{margin:12px 0 0!important;justify-content:center!important;flex-wrap:wrap!important;gap:14px 22px!important}.site-nav.tep-approved-header .tep-nav-menu a{font-size:14px!important}.site-nav.tep-approved-header .tep-nav-menu a.active::after{display:none!important}
 .tep-approved-footer .tep-footer-inner{width:min(720px,calc(100% - 32px))!important;display:grid!important;grid-template-columns:1fr!important;gap:22px!important;text-align:center!important}.tep-approved-footer .tep-footer-brand .tep-logo{width:220px!important;margin:0 auto!important}.tep-approved-footer .tep-footer-service .tep-service-lockup{width:auto!important;text-align:center!important}.tep-approved-footer .tep-footer-inner>.tep-divider{display:none!important}.tep-approved-footer .tep-footer-contact p{display:block!important;text-align:center!important}
}



/* FINAL FIX: left brand lockup, right-aligned navigation, contained footer. */
.site-nav.tep-approved-header,
.site-nav.tep-approved-header *{box-sizing:border-box!important;}
.site-nav.tep-approved-header{
  all:unset!important;display:block!important;position:sticky!important;top:0!important;z-index:999!important;
  width:100%!important;background:#fff!important;border-bottom:0!important;
  font-family:'Manrope',Arial,sans-serif!important;overflow:visible!important;
}
.site-nav.tep-approved-header .tep-header-inner{
  width:min(1280px,calc(100% - 80px))!important;max-width:1280px!important;margin:0 auto!important;
  min-height:118px!important;padding:14px 0!important;display:flex!important;align-items:center!important;
  justify-content:flex-start!important;gap:0!important;overflow:visible!important;
}
.site-nav.tep-approved-header .tep-brand-block{display:block!important;flex:0 0 250px!important;width:250px!important;margin:0!important;text-decoration:none!important;}
.site-nav.tep-approved-header .tep-logo{width:250px!important;text-align:center!important;color:#0b4a47!important;font-family:Georgia,'Times New Roman',serif!important;line-height:1!important;}
.site-nav.tep-approved-header .tep-logo-the{font:700 16px/1 Georgia,'Times New Roman',serif!important;letter-spacing:.44em!important;padding-left:.44em!important;margin:0 0 5px!important;color:#0b4a47!important;}
.site-nav.tep-approved-header .tep-logo-ember{font:700 41px/.88 Georgia,'Times New Roman',serif!important;letter-spacing:.18em!important;padding-left:.18em!important;color:#0b4a47!important;text-shadow:0 5px 8px rgba(0,0,0,.10)!important;}
.site-nav.tep-approved-header .tep-logo-practice{margin-top:7px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;color:#c8953d!important;font-family:'Manrope',Arial,sans-serif!important;}
.site-nav.tep-approved-header .tep-logo-practice span{display:block!important;width:48px!important;height:2px!important;background:#c8953d!important;}
.site-nav.tep-approved-header .tep-logo-practice b{font:800 13px/1 'Manrope',Arial,sans-serif!important;letter-spacing:.35em!important;color:#c8953d!important;}
.site-nav.tep-approved-header .tep-divider{display:block!important;flex:0 0 2px!important;width:2px!important;height:72px!important;margin:0 24px!important;background:#c8953d!important;}
.site-nav.tep-approved-header .tep-service-lockup{display:block!important;flex:0 0 295px!important;width:295px!important;color:#0b4a47!important;font-family:'Manrope',Arial,sans-serif!important;font-size:13px!important;line-height:1.55!important;font-weight:800!important;letter-spacing:.28em!important;white-space:nowrap!important;}
.site-nav.tep-approved-header .tep-nav-menu{
  margin-left:auto!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;
  gap:34px!important;flex:0 1 auto!important;min-width:0!important;font-family:'Manrope',Arial,sans-serif!important;
}
.site-nav.tep-approved-header .tep-nav-menu a{position:relative!important;display:inline-block!important;font-size:15px!important;line-height:1!important;font-weight:500!important;white-space:nowrap!important;color:#192024!important;text-decoration:none!important;}
.site-nav.tep-approved-header .tep-nav-menu .chev{font-size:11px!important;padding-left:4px!important;color:#192024!important;}
.site-nav.tep-approved-header .tep-nav-menu a.active::after{content:''!important;position:absolute!important;left:0!important;bottom:-24px!important;width:58px!important;height:3px!important;background:#c8953d!important;}

.tep-approved-footer{background:#f7fbf7!important;padding:52px 0!important;overflow:hidden!important;}
.tep-approved-footer .tep-footer-inner{
  width:min(1160px,calc(100% - 40px))!important;max-width:1160px!important;margin:0 auto!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;overflow:hidden!important;
}
.tep-approved-footer .tep-footer-brand{flex:0 0 220px!important;min-width:220px!important;}
.tep-approved-footer .tep-footer-brand .tep-logo{width:220px!important;transform:none!important;text-align:center!important;font-family:Georgia,'Times New Roman',serif!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-the{font-size:14px!important;letter-spacing:.44em!important;padding-left:.44em!important;margin-bottom:5px!important;color:#0b4a47!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-ember{font-size:36px!important;line-height:.88!important;letter-spacing:.18em!important;padding-left:.18em!important;color:#0b4a47!important;text-shadow:0 5px 8px rgba(0,0,0,.10)!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-practice{margin-top:7px!important;gap:8px!important;justify-content:center!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-practice span{width:40px!important;height:2px!important;background:#c8953d!important;}
.tep-approved-footer .tep-footer-brand .tep-logo-practice b{font-size:11px!important;letter-spacing:.35em!important;color:#c8953d!important;}
.tep-approved-footer .tep-footer-service{flex:0 0 260px!important;min-width:260px!important;}
.tep-approved-footer .tep-footer-service .tep-service-lockup{width:260px!important;flex:unset!important;font-size:11px!important;line-height:1.55!important;letter-spacing:.25em!important;white-space:nowrap!important;color:#0b4a47!important;font-weight:800!important;}
.tep-approved-footer .tep-footer-inner>.tep-divider{flex:0 0 1px!important;width:1px!important;height:82px!important;margin:0!important;background:#c8953d!important;}
.tep-approved-footer .tep-footer-inner>.tep-divider.tep-soft-divider{height:140px!important;background:rgba(11,74,71,.16)!important;}
.tep-approved-footer .tep-footer-contact{flex:0 1 330px!important;min-width:300px!important;}
.tep-approved-footer .tep-footer-contact h3,.tep-approved-footer .tep-footer-social h3{font-size:13px!important;line-height:1.2!important;margin:0 0 14px!important;color:#0b4a47!important;font-weight:800!important;}
.tep-approved-footer .tep-footer-contact p{display:grid!important;grid-template-columns:20px 1fr!important;gap:8px!important;font-size:12px!important;line-height:1.42!important;margin:0 0 10px!important;color:#192024!important;}
.tep-approved-footer .tep-icon{font-size:14px!important;color:#c8953d!important;line-height:1.2!important;}
.tep-approved-footer .tep-footer-social{flex:0 0 130px!important;text-align:center!important;min-width:130px!important;}
.tep-approved-footer .tep-socials{gap:10px!important;margin-bottom:24px!important;display:flex!important;justify-content:center!important;}
.tep-approved-footer .tep-socials a{width:34px!important;height:34px!important;border-radius:8px!important;font-size:16px!important;}
.tep-approved-footer .tep-copy{font-size:11px!important;line-height:1.65!important;margin:0!important;}

@media(max-width:1320px){
  .site-nav.tep-approved-header .tep-header-inner{width:min(1160px,calc(100% - 40px))!important;min-height:108px!important;}
  .site-nav.tep-approved-header .tep-brand-block{flex-basis:210px!important;width:210px!important}.site-nav.tep-approved-header .tep-logo{width:210px!important}.site-nav.tep-approved-header .tep-logo-the{font-size:13.5px!important}.site-nav.tep-approved-header .tep-logo-ember{font-size:34px!important}.site-nav.tep-approved-header .tep-logo-practice b{font-size:10.5px!important}.site-nav.tep-approved-header .tep-logo-practice span{width:36px!important}.site-nav.tep-approved-header .tep-divider{height:62px!important;margin:0 16px!important}.site-nav.tep-approved-header .tep-service-lockup{flex-basis:245px!important;width:245px!important;font-size:10.5px!important}.site-nav.tep-approved-header .tep-nav-menu{gap:20px!important}.site-nav.tep-approved-header .tep-nav-menu a{font-size:13.5px!important}.site-nav.tep-approved-header .tep-nav-menu a.active::after{bottom:-21px!important;width:52px!important}
}
@media(max-width:980px){
  .site-nav.tep-approved-header .tep-header-inner{display:block!important;width:min(720px,calc(100% - 32px))!important;min-height:0!important;padding:18px 0!important}.site-nav.tep-approved-header .tep-brand-block{display:block!important;width:220px!important;margin:0 auto 12px!important}.site-nav.tep-approved-header .tep-logo{width:220px!important;margin:0 auto!important}.site-nav.tep-approved-header .tep-logo-the{font-size:14px!important}.site-nav.tep-approved-header .tep-logo-ember{font-size:36px!important}.site-nav.tep-approved-header .tep-logo-practice b{font-size:11px!important}.site-nav.tep-approved-header .tep-divider,.site-nav.tep-approved-header .tep-service-lockup{display:none!important}.site-nav.tep-approved-header .tep-nav-menu{margin:12px 0 0!important;justify-content:center!important;flex-wrap:wrap!important;gap:14px 22px!important}.site-nav.tep-approved-header .tep-nav-menu a{font-size:14px!important}.site-nav.tep-approved-header .tep-nav-menu a.active::after{display:none!important}
  .tep-approved-footer .tep-footer-inner{width:min(720px,calc(100% - 32px))!important;display:grid!important;grid-template-columns:1fr!important;gap:22px!important;text-align:center!important;overflow:visible!important}.tep-approved-footer .tep-footer-brand{min-width:0!important}.tep-approved-footer .tep-footer-brand .tep-logo{width:220px!important;margin:0 auto!important}.tep-approved-footer .tep-footer-service{min-width:0!important}.tep-approved-footer .tep-footer-service .tep-service-lockup{width:auto!important;text-align:center!important}.tep-approved-footer .tep-footer-inner>.tep-divider{display:none!important}.tep-approved-footer .tep-footer-contact{min-width:0!important}.tep-approved-footer .tep-footer-contact p{display:block!important;text-align:center!important}.tep-approved-footer .tep-footer-social{min-width:0!important}
}



/* FINAL WIDTH ALIGNMENT: match all page content to approved header width */
:root { --approved-content-width: 1160px; --approved-content-gutter: 40px; }

/* Keep section backgrounds full-width, but constrain the content inside them */
.container,
main > section > .container,
main > section > .container.hero-grid,
main > section > .container.contact-grid,
main > section > .container.about-summary-card,
.experiences-refined .container,
.faq-preview .container,
.about-summary-section .container,
.cta .container,
.faq .container,
.about .container,
.testimonials .container,
.cred-strip .container,
section > .container {
  width: min(var(--approved-content-width), calc(100% - var(--approved-content-gutter))) !important;
  max-width: var(--approved-content-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Make wider feature grids align to the same container instead of stretching */
.experiences-refined .container,
.experiences-grid,
.service-cards,
.cards,
.process,
.faq-preview-grid,
.contact-grid,
.hero-grid,
.about-summary-card,
.about-summary-grid {
  max-width: var(--approved-content-width) !important;
}

/* Header and footer stay on the same visual grid as the rest of the site */
.site-nav.tep-approved-header .tep-header-inner,
.site-footer.tep-approved-footer .tep-footer-inner {
  width: min(var(--approved-content-width), calc(100% - var(--approved-content-gutter))) !important;
  max-width: var(--approved-content-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 900px) {
  :root { --approved-content-gutter: 32px; }
}

@media (max-width: 560px) {
  :root { --approved-content-gutter: 24px; }
}

/* Final hero fix: full-width banner, no green/white border, 5% shorter via cropped image asset */
html, body { margin: 0 !important; padding: 0 !important; }
main { background: #ffffff !important; margin: 0 !important; padding: 0 !important; }
header, .site-nav, .tep-approved-header { margin-bottom: 0 !important; }
header + main, header + main > .hero.hero-full { margin-top: 0 !important; }
.hero.hero-full {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #ffffff !important;
  overflow: hidden !important;
  line-height: 0 !important;
}
.hero.hero-full::before, .hero.hero-full::after { display: none !important; content: none !important; }
.hero.hero-full > .container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
}
.hero-art {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden !important;
  line-height: 0 !important;
}
.hero-art img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  transform: none !important;
  object-fit: contain !important;
  object-position: center top !important;
}
.hero-art-link.session { top: 62.3% !important; }
.hero-art-link.services { top: 62.3% !important; }



/* Final fix: remove any green/cream separator above the hero and make hero image flush full-width */
html, body {
  margin: 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
}
body::before, body::after,
main::before, main::after,
.site-nav::before, .site-nav::after,
.tep-approved-header::before, .tep-approved-header::after,
.hero.hero-full::before, .hero.hero-full::after {
  display: none !important;
  content: none !important;
  height: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.site-nav,
.tep-approved-header,
header.site-nav {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
main {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
}
header + main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
main > .hero.hero-full:first-child {
  margin-top: -1px !important; /* closes any sub-pixel seam under header */
}
.hero.hero-full {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #ffffff !important;
  overflow: hidden !important;
  line-height: 0 !important;
}
.hero.hero-full > .container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
  line-height: 0 !important;
}
.hero-art {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden !important;
  line-height: 0 !important;
}
.hero-art img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: contain !important;
  object-position: center top !important;
  transform: none !important;
}



/* Final override: remove the pale green header separator above the hero */
html, body { margin:0 !important; padding:0 !important; }
.site-nav.tep-approved-header,
header.site-nav.tep-approved-header,
header[aria-label="Primary navigation"],
.site-nav {
  border-bottom: 0 !important;
  border-bottom-width: 0 !important;
  box-shadow: none !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.site-nav.tep-approved-header::after,
.site-nav.tep-approved-header::before,
header.site-nav.tep-approved-header::after,
header.site-nav.tep-approved-header::before {
  display:none !important;
  content:none !important;
  height:0 !important;
  background:transparent !important;
  border:0 !important;
}
header + main, main, main > section.hero.hero-full:first-child, .hero.hero-full {
  margin-top:0 !important;
  padding-top:0 !important;
  border-top:0 !important;
}



.hero-carousel-section,.hero-carousel{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;overflow:hidden!important;line-height:0!important}
.hero-carousel-track{position:relative!important;width:100%!important;aspect-ratio:1536/1126!important;overflow:hidden!important;background:#fff!important}
.hero-carousel-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;visibility:hidden!important;z-index:0!important;pointer-events:none!important;transition:opacity .7s ease,visibility .7s ease!important}
.hero-carousel-slide.is-active{opacity:1!important;visibility:visible!important;z-index:2!important;pointer-events:auto!important}
.hero-carousel-slide img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;box-shadow:none!important;transform:none!important}
.hero-carousel-slide:first-child img{object-fit:cover!important;object-position:center center!important;}
.hero-carousel-slide .hero-click-zone{position:absolute!important;}

.hero-click-zone{position:absolute!important;z-index:6!important;display:block!important;overflow:hidden!important;text-indent:-9999px!important;white-space:nowrap!important}
.hero-click-book{left:5.0%!important;top:77.2%!important;width:14.5%!important;height:5.8%!important}
.hero-click-learn{left:20.4%!important;top:77.2%!important;width:13.2%!important;height:5.8%!important}
.hero-carousel-arrow{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;z-index:7!important;width:48px!important;height:48px!important;border-radius:999px!important;border:0!important;background:rgba(255,255,255,.95)!important;color:#0b4a47!important;box-shadow:0 12px 28px rgba(0,0,0,.14)!important;cursor:pointer!important;font-size:36px!important;line-height:1!important;display:flex!important;align-items:center!important;justify-content:center!important}
.hero-carousel-prev{left:22px!important}.hero-carousel-next{right:86px!important}
.hero-carousel-dots{position:absolute!important;left:50%!important;bottom:4.15%!important;transform:translateX(-50%)!important;z-index:8!important;display:flex!important;gap:12px!important;align-items:center!important;justify-content:center!important;line-height:0!important}
.hero-carousel-dots button{width:12px!important;height:12px!important;min-width:12px!important;min-height:12px!important;border-radius:999px!important;border:1.5px solid #0b4a47!important;background:rgba(255,255,255,.78)!important;padding:0!important;margin:0!important;cursor:pointer!important}
.hero-carousel-dots button.is-active{background:#0b4a47!important}
.whatsapp{z-index:20!important;right:18px!important;bottom:22px!important}
@media(max-width:760px){.hero-carousel-arrow{width:38px!important;height:38px!important;font-size:30px!important}.hero-carousel-prev{left:8px!important}.hero-carousel-next{right:58px!important}.hero-carousel-dots{bottom:3.2%!important;gap:8px!important}.hero-carousel-dots button{width:9px!important;height:9px!important;min-width:9px!important;min-height:9px!important}}



.hero-carousel-slide .hm-hero-master{position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate;background:#fbf7ef;color:#10242c;line-height:normal;font-family:Inter,Arial,sans-serif;}
.hm-hero-photo{position:absolute;inset:0;background-image:url('hero-couples-counselling-clear.webp');background-size:cover;background-position:center center;z-index:0;transform:none;image-rendering:auto;}
.hm-hero-master::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.02));z-index:0;pointer-events:none;}
.hm-hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,247,239,.98) 0%,rgba(251,247,239,.96) 34%,rgba(251,247,239,.82) 43%,rgba(251,247,239,.38) 54%,rgba(251,247,239,.06) 68%,rgba(251,247,239,0) 78%),radial-gradient(circle at 21% 48%,rgba(255,255,255,.62),rgba(255,255,255,0) 45%);z-index:1;}
.hm-hero-content{position:relative;z-index:3;width:46.4%;padding:5.0% 0 0 4.62%;}
.hm-hero-content h1{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:700;line-height:.96;letter-spacing:-.035em;color:#075646;font-size:clamp(42px,4.55vw,82px);}
.hm-support-line{margin:10px 0 0!important;font-family:Georgia,'Times New Roman',serif!important;font-style:italic;font-weight:700;line-height:1.02!important;letter-spacing:-.03em;color:#84998e!important;font-size:clamp(30px,3.15vw,56px)!important;max-width:none!important;}
.hm-divider{display:flex;align-items:center;gap:16px;margin:3.8% 0 3.0%;color:#84998e}.hm-divider span{width:84px;height:1.5px;background:currentColor;opacity:.85}.hm-divider svg{width:78px;height:24px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hm-intro{font-size:clamp(14px,1.13vw,20px)!important;line-height:1.28!important;margin:0 0 4.0%!important;font-weight:500;letter-spacing:-.02em;color:#12252d!important;max-width:none!important;}
.hm-actions{display:flex;align-items:center;gap:32px;margin-bottom:8.3%;}
.hm-btn{height:62px;border-radius:8px;padding:0 28px;display:inline-flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;font-weight:700;font-size:clamp(15px,1.13vw,20px);letter-spacing:-.01em;min-width:238px;box-shadow:none;line-height:1!important}.hm-btn svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.hm-btn-primary{background:#075646;color:#fff;box-shadow:0 16px 24px rgba(5,86,70,.18)}.hm-btn-secondary{background:rgba(251,247,239,.6);border:1.6px solid #075646;color:#075646}.hm-btn-secondary svg{margin-left:12px}
.hm-features{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;width:720px;max-width:92vw}.hm-feature{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;position:relative;min-width:0;color:#075646}.hm-feature:not(:last-child)::after{content:"";position:absolute;right:-10px;top:4px;width:1.5px;height:67px;background:#075646;opacity:.45}.hm-feature>svg{width:54px;height:54px;fill:none;stroke:#075646;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.hm-feature strong{display:block;font-size:clamp(11px,.79vw,14px);line-height:1.1;margin-bottom:9px;font-weight:800;letter-spacing:-.02em}.hm-feature span{display:block;font-size:clamp(11px,.79vw,14px);line-height:1.42;color:#10242c;font-weight:450}.hm-bottom-wave{position:absolute;left:0;right:0;bottom:0;width:100%;height:12.45%;z-index:4;pointer-events:none}.hm-wave-shadow{fill:#dfe4dd}.hm-wave-main{fill:#c5cec1}
@media(max-width:980px){.hero-carousel-track{aspect-ratio:auto!important;min-height:900px!important}.hm-hero-photo{inset:48% 0 0 0;background-position:center center}.hm-hero-fade{background:linear-gradient(180deg,#fbf7ef 0%,#fbf7ef 45%,rgba(251,247,239,.82) 55%,rgba(251,247,239,0) 78%)}.hm-hero-content{width:100%;padding:56px 28px 0}.hm-actions{gap:14px;flex-wrap:wrap;margin-bottom:40px}.hm-btn{min-width:0;width:calc(50% - 7px);font-size:16px;padding:0 12px;height:54px}.hm-features{grid-template-columns:1fr;gap:18px;width:auto}.hm-feature:not(:last-child)::after{display:none}.hm-bottom-wave{height:72px}.hero-click-zone{display:none!important}}



/* Move the rebuilt master slide content higher and force true left alignment. */
.hero-carousel-slide .hm-hero-master .hm-hero-content{
  padding-top:3.15% !important;
  padding-left:4.62% !important;
  text-align:left !important;
}
.hero-carousel-slide .hm-hero-master .hm-hero-content h1,
.hero-carousel-slide .hm-hero-master .hm-support-line,
.hero-carousel-slide .hm-hero-master .hm-intro,
.hero-carousel-slide .hm-hero-master .hm-feature,
.hero-carousel-slide .hm-hero-master .hm-feature strong,
.hero-carousel-slide .hm-hero-master .hm-feature span{
  text-align:left !important;
}
.hero-carousel-slide .hm-hero-master .hm-divider,
.hero-carousel-slide .hm-hero-master .hm-actions{
  justify-content:flex-start !important;
}
.hero-carousel-slide .hm-hero-master .hm-features{
  justify-items:start !important;
  text-align:left !important;
}
@media(max-width:980px){
  .hero-carousel-slide .hm-hero-master .hm-hero-content{
    padding-top:34px !important;
    text-align:left !important;
  }
}



/* Final correction: Slide 1/hero carousel stays full width. Keep original layout and image clarity fixes only. */
.hero-carousel-section{width:100%!important;max-width:none!important;background:#fff!important;padding:0!important;margin:0!important;overflow:hidden!important;}
.hero-carousel{width:100%!important;max-width:none!important;margin:0!important;overflow:hidden!important;box-shadow:none!important;}
.hero-carousel-track{width:100%!important;aspect-ratio:1536/1126!important;height:auto!important;}
.hero-carousel-slide img{image-rendering:auto!important;}
.hero-carousel-prev{left:18px!important;}
.hero-carousel-next{right:18px!important;}
@media(max-width:980px){.hero-carousel-section{padding:0!important}.hero-carousel{width:100%!important;max-width:none!important}.hero-carousel-next{right:58px!important}.hero-carousel-prev{left:8px!important}}



/* Restore the approved Slide 1 layout while reducing hero height ~17%.
   The hero image itself has been rebuilt at a shorter height so all content,
   CTA buttons, dots and the trust feature bar remain visible inside the hero. */
.hero-carousel-section, .hero-carousel {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
}
.hero-carousel-track {
  width: 100% !important;
  aspect-ratio: 3072 / 1700 !important;
  height: auto !important;
  min-height: 0 !important;
}
.hero-carousel-slide img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.hero-carousel-slide:first-child img {
  object-fit: contain !important;
  object-position: center center !important;
  background: #fff !important;
}
.hero-carousel-dots {
  bottom: 7.6% !important;
}
.hero-carousel-prev { left: 18px !important; }
.hero-carousel-next { right: 18px !important; }
@media (max-width: 760px) {
  .hero-carousel-track { aspect-ratio: 3072 / 1700 !important; }
  .hero-carousel-dots { bottom: 6.2% !important; }
  .hero-carousel-next { right: 58px !important; }
}



/* Final correction: keep Slide 1 full browser width, preserve the restored layout,
   keep reduced height using the 3072x1700 rebuilt banner, and prevent image skew. */
html, body { margin:0 !important; padding:0 !important; overflow-x:hidden !important; }
.hero-carousel-section,
.hero-carousel {
  display:block !important;
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#fff !important;
  line-height:0 !important;
}
.hero-carousel-track {
  position:relative !important;
  width:100vw !important;
  max-width:none !important;
  aspect-ratio:3072 / 1700 !important;
  height:auto !important;
  min-height:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}
.hero-carousel-slide {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
}
.hero-carousel-slide img,
.hero-carousel-slide:first-child img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  border:0 !important;
  border-radius:0 !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  image-rendering:auto !important;
}
.hero-carousel-dots { bottom:7.4% !important; }
.hero-carousel-prev { left:18px !important; }
.hero-carousel-next { right:18px !important; }
@media(max-width:760px){
  .hero-carousel-track{ aspect-ratio:3072 / 1700 !important; }
  .hero-carousel-dots{ bottom:6.2% !important; }
  .hero-carousel-next{ right:58px !important; }
}



/* Final correction: use original non-distorted Slide 1 artwork, keep full width, and move dots away from content. */
.hero-carousel-section,
.hero-carousel{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
  line-height:0!important;
}
.hero-carousel-track{
  position:relative!important;
  width:100vw!important;
  max-width:none!important;
  aspect-ratio:1536 / 1024!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
  background:#fff!important;
}
.hero-carousel-slide,
.hero-carousel-slide.is-active{
  width:100%!important;
  height:100%!important;
}
.hero-carousel-slide img,
.hero-carousel-slide:first-child img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  border:0!important;
  border-radius:0!important;
  margin:0!important;
  padding:0!important;
  image-rendering:auto!important;
}
/* Dots moved into the clean space above the lower trust bar, not on top of the feature content. */
.hero-carousel-dots{
  bottom:16.8%!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  z-index:30!important;
}
.hero-carousel-prev{left:18px!important;}
.hero-carousel-next{right:18px!important;}
.whatsapp{z-index:40!important;}
@media(max-width:760px){
  .hero-carousel-track{aspect-ratio:1536 / 1024!important;}
  .hero-carousel-dots{bottom:15.5%!important;}
  .hero-carousel-next{right:58px!important;}
}



/* Crisp layered Slide 1: full width, reduced height, no image/text scaling. */
.hero-carousel-section,.hero-carousel{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;padding:0!important;overflow:hidden!important;background:#fff!important;line-height:normal!important;}
.hero-carousel-track{position:relative!important;width:100vw!important;max-width:none!important;height:clamp(690px,72vh,820px)!important;aspect-ratio:auto!important;min-height:0!important;overflow:hidden!important;background:#fff!important;}
.hero-carousel-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;visibility:hidden!important;z-index:0!important;pointer-events:none!important;transition:opacity .7s ease,visibility .7s ease!important;}
.hero-carousel-slide.is-active{opacity:1!important;visibility:visible!important;z-index:2!important;pointer-events:auto!important;}
.hero-carousel-slide:not(:first-child) img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;transform:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;}
.hero-carousel-slide:first-child>img{display:none!important;}
.slide1-layered{position:relative;width:100%;height:100%;overflow:hidden;background:#fbf7ef;color:#0b4a47;font-family:Inter,Arial,sans-serif;line-height:1.2;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;}
.slide1-photo{position:absolute;inset:0;background:url('hero-couples-counselling-clear.webp') center center/cover no-repeat;z-index:0;}
.slide1-fade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#fbf7ef 0%,rgba(251,247,239,.98) 26%,rgba(251,247,239,.87) 35%,rgba(251,247,239,.48) 47%,rgba(251,247,239,.10) 62%,rgba(251,247,239,0) 74%);pointer-events:none;}
.slide1-leaves{position:absolute;left:0;bottom:0;width:145px;height:210px;z-index:2;opacity:.62;background:radial-gradient(ellipse at 20% 80%,#8aa397 0 12%,transparent 13%),radial-gradient(ellipse at 40% 70%,#8aa397 0 11%,transparent 12%),radial-gradient(ellipse at 12% 52%,#8aa397 0 10%,transparent 11%);}
.slide1-content{position:relative;z-index:3;width:min(44vw,610px);padding:4.4vh 0 0 4.7vw;text-align:left;}
.slide1-kicker{font-size:clamp(15px,1.12vw,22px);font-weight:800;letter-spacing:.04em;color:#075646;display:flex;align-items:center;gap:12px;margin-bottom:12px;white-space:nowrap;}
.leaf-icon{font-size:28px;line-height:1;color:#5d8073;transform:rotate(45deg);display:inline-block;}
.slide1-kicker-line{width:120px;height:1.5px;background:#9eb0a8;margin:0 0 17px 0;}
.slide1-content h1{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:700;letter-spacing:-.035em;line-height:.95;color:#063f38;font-size:clamp(52px,4.05vw,78px);text-align:left;}
.slide1-content h1 span{color:#6f897d;}
.slide1-divider{display:flex;align-items:center;gap:18px;margin:22px 0 18px;color:#7d978b;width:360px;max-width:90%;}
.slide1-divider i{display:block;height:1.5px;background:#a8b8b0;flex:1;}.slide1-divider span{font-size:32px;line-height:1;}
.slide1-intro{margin:0 0 22px!important;max-width:500px!important;font-size:clamp(16px,1.15vw,21px)!important;line-height:1.38!important;color:#17262b!important;font-weight:500;text-align:left!important;}
.slide1-card{width:min(590px,40vw);background:rgba(255,255,255,.92);border-radius:14px;box-shadow:0 16px 36px rgba(27,47,45,.16);display:grid;grid-template-columns:1fr 1fr;gap:0;padding:19px 18px;margin-bottom:18px;backdrop-filter:none;}
.mini-feature{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:10px 14px;align-items:start;border-bottom:1px solid rgba(8,77,67,.12);}
.mini-feature:nth-child(odd){border-right:1px solid rgba(8,77,67,.16)}.mini-feature:nth-child(n+3){border-bottom:0}.mini-icon{width:42px;height:42px;border-radius:50%;background:#dce8e2;color:#075646;display:flex;align-items:center;justify-content:center;font-size:23px;font-weight:700;}
.mini-feature strong{display:block;font-size:clamp(12px,.82vw,16px);line-height:1.15;color:#111;font-weight:800;margin-bottom:5px;text-align:left;}.mini-feature p{margin:0!important;font-size:clamp(11px,.74vw,14px)!important;line-height:1.32!important;color:#202a2c!important;text-align:left!important;}
.slide1-actions{display:flex;gap:28px;align-items:center;}.slide1-btn{height:56px;border-radius:8px;padding:0 28px;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;font-weight:800;font-size:clamp(16px,1.05vw,20px);letter-spacing:-.01em;line-height:1;}.slide1-btn.primary{background:#075646;color:white;min-width:220px;box-shadow:0 14px 24px rgba(5,86,70,.16)}.slide1-btn.secondary{background:rgba(255,255,255,.58);color:#075646;border:1.5px solid #075646;min-width:205px;}
.slide1-trustbar{position:absolute;left:4.7vw;right:4.7vw;bottom:3.6%;height:96px;z-index:4;background:rgba(255,255,255,.88);border-radius:14px;box-shadow:0 14px 36px rgba(27,47,45,.08);display:grid;grid-template-columns:repeat(4,1fr);align-items:center;padding:0 34px;gap:0;line-height:normal;}
.slide1-trustbar>div{display:flex;align-items:center;justify-content:center;gap:24px;color:#075646;min-width:0;position:relative;}.slide1-trustbar>div:not(:last-child)::after{content:"";position:absolute;right:0;width:1px;height:52px;background:#c6d0cb;}.trust-icon{font-size:44px;line-height:1;color:#075646;font-weight:400;}.slide1-trustbar strong{font-size:clamp(14px,1.05vw,20px);line-height:1.22;font-weight:500;text-align:left;white-space:nowrap;}
.hero-carousel-dots{position:absolute!important;left:50%!important;bottom:11.2%!important;transform:translateX(-50%)!important;z-index:9!important;display:flex!important;gap:11px!important;align-items:center!important;justify-content:center!important;line-height:0!important;}.hero-carousel-dots button{width:12px!important;height:12px!important;min-width:12px!important;min-height:12px!important;border-radius:999px!important;border:1.6px solid #075646!important;background:rgba(255,255,255,.9)!important;padding:0!important;margin:0!important;}.hero-carousel-dots button.is-active{background:#075646!important;}
.hero-carousel-arrow{z-index:10!important;}.hero-carousel-prev{left:18px!important}.hero-carousel-next{right:18px!important}.whatsapp{z-index:40!important;}
.hero-click-book{left:4.7vw!important;top:auto!important;bottom:14.2%!important;width:220px!important;height:56px!important}.hero-click-learn{left:calc(4.7vw + 248px)!important;top:auto!important;bottom:14.2%!important;width:205px!important;height:56px!important}
@media(max-width:1180px){.hero-carousel-track{height:760px!important}.slide1-content{width:52vw}.slide1-card{width:48vw}.slide1-content h1{font-size:56px}.slide1-trustbar{height:90px}.slide1-trustbar strong{font-size:15px}.trust-icon{font-size:34px}}
@media(max-width:760px){.hero-carousel-track{height:920px!important}.slide1-photo{inset:44% 0 0 0;background-position:center center}.slide1-fade{background:linear-gradient(180deg,#fbf7ef 0%,#fbf7ef 45%,rgba(251,247,239,.72) 60%,rgba(251,247,239,0) 78%)}.slide1-content{width:auto;padding:34px 26px 0}.slide1-content h1{font-size:44px}.slide1-card{width:auto;grid-template-columns:1fr;padding:12px}.mini-feature{border-right:0!important}.mini-feature:nth-child(n+3){border-bottom:1px solid rgba(8,77,67,.12)}.slide1-actions{gap:12px}.slide1-btn{height:50px;min-width:0!important;flex:1;padding:0 12px;font-size:15px}.slide1-trustbar{left:18px;right:18px;bottom:22px;height:auto;grid-template-columns:1fr 1fr;padding:16px 12px;gap:10px}.slide1-trustbar>div{gap:10px;justify-content:flex-start}.slide1-trustbar>div::after{display:none}.trust-icon{font-size:26px}.slide1-trustbar strong{font-size:13px}.hero-carousel-dots{bottom:155px!important}.hero-carousel-next{right:58px!important}.hero-click-zone{display:none!important}}



/* Final Slide 1 fix: keep the current full-width layout, use the clean photo only, and prevent any overlap. */
.hero-carousel-section,
.hero-carousel{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
}
.hero-carousel-track{
  width:100vw!important;
  max-width:none!important;
  height:clamp(650px,68vh,740px)!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
}
.hero-carousel-slide:first-child>img{display:none!important;}
.slide1-layered{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  background:#fbf7ef!important;
  line-height:normal!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:optimizeLegibility!important;
}
.slide1-photo{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-image:url('hero-couples-counselling-clear.webp')!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  transform:none!important;
  filter:none!important;
}
.slide1-fade{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,
    #fbf7ef 0%,
    rgba(251,247,239,.99) 25%,
    rgba(251,247,239,.92) 34%,
    rgba(251,247,239,.62) 45%,
    rgba(251,247,239,.16) 57%,
    rgba(251,247,239,0) 69%)!important;
}
.slide1-content{
  position:relative!important;
  z-index:4!important;
  width:min(42vw,620px)!important;
  padding:34px 0 0 4.2vw!important;
  text-align:left!important;
}
.slide1-kicker{font-size:clamp(14px,1.05vw,20px)!important;margin-bottom:10px!important;gap:11px!important;}
.slide1-kicker-line{width:112px!important;margin-bottom:12px!important;}
.slide1-content h1{
  font-size:clamp(48px,3.45vw,70px)!important;
  line-height:.94!important;
  margin:0!important;
  letter-spacing:-.035em!important;
}
.slide1-divider{width:330px!important;margin:16px 0 14px!important;gap:16px!important;}
.slide1-divider span{font-size:24px!important;}
.slide1-intro{
  max-width:520px!important;
  margin:0 0 16px!important;
  font-size:clamp(15px,1vw,19px)!important;
  line-height:1.36!important;
}
.slide1-card{
  width:min(575px,39vw)!important;
  padding:12px 14px!important;
  margin:0 0 14px!important;
  border-radius:12px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 12px 30px rgba(27,47,45,.14)!important;
  backdrop-filter:none!important;
}
.mini-feature{grid-template-columns:38px 1fr!important;gap:10px!important;padding:8px 10px!important;min-height:54px!important;}
.mini-icon{width:34px!important;height:34px!important;font-size:18px!important;}
.mini-feature strong{font-size:clamp(11px,.72vw,14px)!important;line-height:1.1!important;margin-bottom:3px!important;}
.mini-feature p{font-size:clamp(10px,.67vw,12.5px)!important;line-height:1.25!important;}
.slide1-actions{gap:22px!important;margin:0!important;position:relative!important;z-index:5!important;}
.slide1-btn{height:50px!important;border-radius:7px!important;font-size:clamp(14px,.9vw,18px)!important;padding:0 22px!important;}
.slide1-btn.primary{min-width:196px!important;}.slide1-btn.secondary{min-width:178px!important;}
.slide1-trustbar{
  position:absolute!important;
  left:4.2vw!important;
  right:4.2vw!important;
  bottom:18px!important;
  height:82px!important;
  z-index:4!important;
  padding:0 28px!important;
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  align-items:center!important;
  background:rgba(255,255,255,.92)!important;
  border-radius:14px!important;
  box-shadow:0 12px 30px rgba(27,47,45,.08)!important;
}
.slide1-trustbar>div{gap:18px!important;justify-content:center!important;}
.slide1-trustbar>div:not(:last-child)::after{height:48px!important;background:#c9d2ce!important;}
.trust-icon{font-size:34px!important;}
.slide1-trustbar strong{font-size:clamp(13px,.95vw,17px)!important;line-height:1.18!important;}
.hero-carousel-dots{
  position:absolute!important;
  left:50%!important;
  bottom:52px!important;
  transform:translateX(-50%)!important;
  z-index:10!important;
  display:flex!important;
  gap:11px!important;
}
.hero-carousel-dots button{width:11px!important;height:11px!important;min-width:11px!important;min-height:11px!important;}
.hero-carousel-prev{left:18px!important;}.hero-carousel-next{right:18px!important;}
.hero-click-book{left:4.2vw!important;bottom:116px!important;width:196px!important;height:50px!important;}
.hero-click-learn{left:calc(4.2vw + 218px)!important;bottom:116px!important;width:178px!important;height:50px!important;}
@media(max-width:1180px){
  .hero-carousel-track{height:720px!important;}
  .slide1-content{width:50vw!important;padding-top:30px!important;}
  .slide1-card{width:46vw!important;}
  .slide1-content h1{font-size:52px!important;}
}
@media(max-width:760px){
  .hero-carousel-track{height:900px!important;}
  .slide1-photo{background-position:center bottom!important;}
  .slide1-fade{background:linear-gradient(180deg,#fbf7ef 0%,#fbf7ef 46%,rgba(251,247,239,.7) 64%,rgba(251,247,239,0) 80%)!important;}
  .slide1-content{width:auto!important;padding:30px 24px 0!important;}
  .slide1-card{width:auto!important;grid-template-columns:1fr!important;}
  .mini-feature{border-right:0!important;}
  .slide1-actions{gap:12px!important;}
  .slide1-btn{min-width:0!important;flex:1!important;}
  .slide1-trustbar{left:16px!important;right:16px!important;bottom:18px!important;height:auto!important;grid-template-columns:1fr 1fr!important;padding:14px!important;gap:10px!important;}
  .slide1-trustbar>div::after{display:none!important;}
  .hero-carousel-dots{bottom:132px!important;}
  .hero-carousel-next{right:58px!important;}
  .hero-click-zone{display:none!important;}
}



/* Final typography fix for Slide 1: more breathing room, smaller headline, clearer separation. */
.slide1-content{
  width:min(43vw,650px)!important;
  padding-top:38px!important;
}
.slide1-content h1{
  font-size:clamp(42px,3.05vw,60px)!important;
  line-height:1.06!important;
  letter-spacing:-.03em!important;
  margin:0!important;
}
.slide1-content h1 span{
  display:block!important;
  margin-top:18px!important;
}
.slide1-divider{
  margin:24px 0 20px!important;
  width:300px!important;
}
.slide1-intro{
  margin-bottom:18px!important;
  font-size:clamp(14px,.95vw,18px)!important;
  line-height:1.42!important;
  max-width:560px!important;
}
.slide1-card{
  width:min(590px,40vw)!important;
  padding:14px 16px!important;
  margin-bottom:16px!important;
}
.mini-feature{
  padding:8px 12px!important;
}
.hero-carousel-dots{
  bottom:50px!important;
}
@media(max-width:1180px){
  .slide1-content h1{font-size:48px!important;line-height:1.07!important;}
  .slide1-content h1 span{margin-top:14px!important;}
}
@media(max-width:760px){
  .slide1-content{padding-top:30px!important;width:auto!important;}
  .slide1-content h1{font-size:40px!important;line-height:1.08!important;}
  .slide1-content h1 span{margin-top:12px!important;}
}



/* Show more of the original counselling photo without changing headline/text size. */
.slide1-content{
  width:min(36.5vw,560px)!important;
  padding-left:3.9vw!important;
}
.slide1-card{
  width:min(520px,34.5vw)!important;
}
.slide1-intro{
  max-width:500px!important;
}
.slide1-photo{
  background-image:url('hero-couples-counselling-clear.webp')!important;
  background-size:cover!important;
  background-position:center center!important;
}
.slide1-fade{
  background:linear-gradient(90deg,
    #fbf7ef 0%,
    rgba(251,247,239,.99) 20%,
    rgba(251,247,239,.88) 28%,
    rgba(251,247,239,.50) 36%,
    rgba(251,247,239,.14) 45%,
    rgba(251,247,239,0) 54%)!important;
}
.slide1-actions{gap:18px!important;}
.slide1-btn.primary{min-width:188px!important;}
.slide1-btn.secondary{min-width:170px!important;}
.hero-click-book{left:3.9vw!important;width:188px!important;}
.hero-click-learn{left:calc(3.9vw + 206px)!important;width:170px!important;}
@media(max-width:1180px){
  .slide1-content{width:42vw!important;}
  .slide1-card{width:39vw!important;}
}
@media(max-width:760px){
  .slide1-content{width:auto!important;padding-left:24px!important;}
  .slide1-card{width:auto!important;}
  .slide1-fade{background:linear-gradient(180deg,#fbf7ef 0%,#fbf7ef 46%,rgba(251,247,239,.68) 63%,rgba(251,247,239,0) 79%)!important;}
}



/* Use the uploaded 3-person hero banner as Slide 1 and prevent old layered Slide 1 CSS from interfering. */
.hero-carousel-section,.hero-carousel{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;overflow:hidden!important;background:#fff!important;}
.hero-carousel-track{width:100vw!important;max-width:none!important;height:auto!important;aspect-ratio:1792 / 1024!important;min-height:0!important;overflow:hidden!important;background:#fff!important;}
.hero-carousel-slide:first-child>img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;transform:none!important;filter:none!important;image-rendering:auto!important;}
.hero-carousel-slide:first-child .slide1-layered,.hero-carousel-slide:first-child .slide1-photo,.hero-carousel-slide:first-child .slide1-content,.hero-carousel-slide:first-child .slide1-trustbar{display:none!important;}
.hero-click-book{left:4.9%!important;top:74.2%!important;width:12.1%!important;height:5.6%!important;}
.hero-click-learn{left:18.0%!important;top:74.2%!important;width:11.7%!important;height:5.6%!important;}
.hero-carousel-dots{bottom:14.2%!important;z-index:9!important;}
.hero-carousel-prev{left:18px!important;z-index:10!important;}
.hero-carousel-next{right:18px!important;z-index:10!important;}
@media(max-width:760px){.hero-carousel-track{aspect-ratio:1792 / 1024!important;}.hero-click-zone{display:none!important;}.hero-carousel-dots{bottom:12.5%!important;}.hero-carousel-next{right:58px!important;}}



/* Clean rebuild: one Slide 1 layer only, crisp HTML text, one dot row, no cropped content. */
.hero-carousel-section,.hero-carousel{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;padding:0!important;overflow:hidden!important;background:#fbf7ef!important;}
.hero-carousel-track{position:relative!important;width:100vw!important;max-width:none!important;height:clamp(800px,78vh,900px)!important;min-height:800px!important;aspect-ratio:auto!important;overflow:hidden!important;background:#fbf7ef!important;}
.hero-carousel-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;visibility:hidden!important;z-index:0!important;pointer-events:none!important;transition:opacity .65s ease!important;}
.hero-carousel-slide.is-active{opacity:1!important;visibility:visible!important;z-index:2!important;pointer-events:auto!important;}
.hero-carousel-slide:first-child>img{display:none!important;}
.hero-carousel-slide:not(:first-child) img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;}
.cs-slide1{position:relative!important;width:100%!important;height:100%!important;overflow:hidden!important;background:#fbf7ef!important;font-family:Manrope,Arial,sans-serif!important;color:#074d43!important;-webkit-font-smoothing:antialiased!important;text-rendering:optimizeLegibility!important;}
.cs-slide1-photo{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:31.5%!important;background-image:url('hero-counselling-3people.webp')!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;z-index:1!important;transform:none!important;filter:none!important;}
.cs-slide1-fade{position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none!important;background:linear-gradient(90deg,#fbf7ef 0%,#fbf7ef 29%,rgba(251,247,239,.96) 36%,rgba(251,247,239,.70) 43%,rgba(251,247,239,.24) 52%,rgba(251,247,239,0) 64%)!important;}
.cs-slide1-content{position:absolute!important;left:4.8vw!important;top:42px!important;z-index:4!important;width:min(610px,38vw)!important;transform:none!important;filter:none!important;opacity:1!important;text-align:left!important;}
.cs-top-line{width:118px!important;height:2px!important;background:#d5a94d!important;margin:0 0 24px 0!important;}
.cs-slide1 h1{margin:0!important;padding:0!important;font-family:Manrope,Arial,sans-serif!important;font-size:clamp(48px,3.45vw,68px)!important;line-height:.97!important;letter-spacing:-.055em!important;font-weight:800!important;color:#074d43!important;text-shadow:none!important;filter:none!important;transform:none!important;}
.cs-slide1 h1 span{display:block!important;white-space:nowrap!important;}
.cs-slide1 h1 .soft{color:#789187!important;margin-top:6px!important;}
.cs-divider{display:flex!important;align-items:center!important;gap:22px!important;width:300px!important;margin:18px 0 18px!important;color:#caa13f!important;}
.cs-divider span{height:2px!important;background:#d5a94d!important;flex:1!important;display:block!important;}
.cs-divider b{font-size:22px!important;line-height:1!important;font-weight:500!important;}
.cs-intro{margin:0 0 18px!important;max-width:560px!important;font-size:clamp(14px,.9vw,17px)!important;line-height:1.45!important;color:#17262b!important;font-weight:600!important;text-shadow:none!important;filter:none!important;}
.cs-mini-card{width:min(570px,37vw)!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;background:rgba(255,255,255,.96)!important;border-radius:14px!important;box-shadow:0 12px 30px rgba(27,47,45,.12)!important;padding:14px 16px!important;margin:0 0 18px!important;backdrop-filter:none!important;}
.cs-mini-card div{display:grid!important;grid-template-columns:42px 1fr!important;grid-template-rows:auto auto!important;column-gap:12px!important;align-items:center!important;padding:10px 12px!important;border-bottom:1px solid rgba(8,77,67,.12)!important;color:#111!important;}
.cs-mini-card div:nth-child(odd){border-right:1px solid rgba(8,77,67,.14)!important}.cs-mini-card div:nth-child(n+3){border-bottom:0!important;}
.cs-mini-card i{grid-row:1/3!important;width:36px!important;height:36px!important;border-radius:50%!important;background:#dfeae5!important;display:flex!important;align-items:center!important;justify-content:center!important;font-style:normal!important;color:#075646!important;font-size:17px!important;line-height:1!important;}
.cs-mini-card i.gold{background:#fff1d2!important;color:#c79316!important;}
.cs-mini-card strong{font-size:clamp(11px,.74vw,14px)!important;line-height:1.15!important;font-weight:800!important;margin:0 0 4px!important;color:#111!important;}
.cs-mini-card small{font-size:clamp(10px,.66vw,12.5px)!important;line-height:1.28!important;color:#1e2a2c!important;font-weight:500!important;}
.cs-actions{display:flex!important;align-items:center!important;gap:22px!important;margin:0!important;position:relative!important;z-index:5!important;}
.cs-btn{height:50px!important;border-radius:7px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;font-weight:800!important;font-size:clamp(14px,.9vw,18px)!important;line-height:1!important;padding:0 24px!important;white-space:nowrap!important;}
.cs-primary{background:#075646!important;color:#fff!important;min-width:200px!important;box-shadow:0 12px 25px rgba(5,86,70,.15)!important}.cs-secondary{background:rgba(255,255,255,.78)!important;color:#075646!important;border:1.5px solid #075646!important;min-width:178px!important;}
.cs-trustbar{position:absolute!important;left:3.2vw!important;right:3.2vw!important;bottom:22px!important;height:96px!important;z-index:4!important;background:rgba(255,255,255,.94)!important;border-radius:14px!important;box-shadow:0 12px 32px rgba(27,47,45,.09)!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;align-items:center!important;padding:0 34px!important;}
.cs-trustbar div{display:flex!important;align-items:center!important;justify-content:center!important;gap:22px!important;position:relative!important;color:#075646!important;}
.cs-trustbar div:not(:last-child)::after{content:''!important;position:absolute!important;right:0!important;width:1px!important;height:52px!important;background:#c5cfca!important;}
.cs-trustbar b{font-size:34px!important;line-height:1!important;font-weight:500!important;color:#075646!important;}
.cs-trustbar span{font-size:clamp(14px,1vw,19px)!important;line-height:1.18!important;font-weight:700!important;text-align:left!important;}
.hero-carousel-dots{position:absolute!important;left:50%!important;bottom:140px!important;transform:translateX(-50%)!important;z-index:20!important;display:flex!important;gap:13px!important;align-items:center!important;justify-content:center!important;line-height:0!important;}
.hero-carousel-dots button{width:13px!important;height:13px!important;min-width:13px!important;min-height:13px!important;border-radius:50%!important;border:2px solid #fff!important;background:transparent!important;padding:0!important;margin:0!important;box-shadow:0 0 0 1px rgba(7,86,70,.45)!important;opacity:1!important;}
.hero-carousel-dots button.is-active{background:#078078!important;border-color:#078078!important;box-shadow:none!important;}
.hero-carousel-arrow{z-index:30!important}.hero-carousel-prev{left:18px!important}.hero-carousel-next{right:18px!important}.whatsapp{z-index:40!important;}
.hero-click-book{left:4.8vw!important;top:auto!important;bottom:150px!important;width:200px!important;height:50px!important}.hero-click-learn{left:calc(4.8vw + 222px)!important;top:auto!important;bottom:150px!important;width:178px!important;height:50px!important}
@media(max-width:1180px){.hero-carousel-track{height:840px!important;min-height:840px!important}.cs-slide1-photo{left:34%!important}.cs-slide1-content{width:43vw!important;top:36px!important}.cs-slide1 h1{font-size:48px!important}.cs-mini-card{width:42vw!important;padding:10px!important}.cs-trustbar{height:90px!important}.hero-carousel-dots{bottom:126px!important}}
@media(max-width:760px){.hero-carousel-track{height:940px!important;min-height:940px!important}.cs-slide1-photo{left:0!important;top:42%!important;background-position:center center!important}.cs-slide1-fade{background:linear-gradient(180deg,#fbf7ef 0%,#fbf7ef 45%,rgba(251,247,239,.72) 62%,rgba(251,247,239,0) 78%)!important}.cs-slide1-content{left:24px!important;right:24px!important;top:28px!important;width:auto!important}.cs-slide1 h1{font-size:40px!important;line-height:1!important}.cs-slide1 h1 .soft{margin-top:4px!important}.cs-mini-card{width:auto!important;grid-template-columns:1fr!important;padding:10px!important}.cs-mini-card div{border-right:0!important}.cs-mini-card div:not(:last-child){border-bottom:1px solid rgba(8,77,67,.12)!important}.cs-actions{gap:12px!important}.cs-btn{min-width:0!important;flex:1!important;font-size:14px!important;padding:0 12px!important}.cs-trustbar{left:16px!important;right:16px!important;bottom:16px!important;height:auto!important;grid-template-columns:1fr 1fr!important;padding:14px!important;gap:12px!important}.cs-trustbar div{justify-content:flex-start!important;gap:10px!important}.cs-trustbar div:after{display:none!important}.cs-trustbar b{font-size:25px!important}.cs-trustbar span{font-size:13px!important}.hero-carousel-dots{bottom:130px!important}.hero-carousel-next{right:58px!important}.hero-click-zone{display:none!important}}



.hero-single-final{width:100%;max-width:none;margin:0;padding:0;background:#f4f7ef;overflow:hidden;}
.hero-final-inner{position:relative;width:100%;min-height:clamp(650px,78vh,760px);background:#fbf7ef;overflow:hidden;}
.hero-final-media{position:absolute;inset:0 0 0 37%;background-image:linear-gradient(90deg,rgba(251,247,239,.95) 0%,rgba(251,247,239,.72) 15%,rgba(251,247,239,.33) 31%,rgba(251,247,239,.08) 48%,rgba(251,247,239,0) 68%),url('hero-counselling-3people.webp');background-size:cover;background-position:42% center;filter:saturate(.88) contrast(.96) brightness(1.05);}
.hero-final-fade{position:absolute;inset:0;background:linear-gradient(90deg,#fbf7ef 0%,#fbf7ef 30%,rgba(251,247,239,.88) 39%,rgba(251,247,239,.45) 50%,rgba(251,247,239,.05) 63%,rgba(251,247,239,0) 72%);pointer-events:none;}
.hero-final-copy{position:relative;z-index:3;width:min(43vw,650px);padding:clamp(44px,6vh,70px) 0 0 clamp(42px,5.4vw,104px);color:#073f3c;}
.hero-final-kicker{display:flex;align-items:center;gap:18px;margin:0 0 22px;color:#d2a13d;font-weight:700;}
.hero-final-line{display:block;width:82px;height:3px;background:#d2a13d;border-radius:4px;}
.hero-final-leaf{font-size:18px;color:#d2a13d;line-height:1;}
.hero-final-copy h1{font-family:Georgia,'Times New Roman',serif;margin:0;color:#064640;font-size:clamp(52px,5.3vw,92px);line-height:.95;letter-spacing:-.045em;font-weight:800;text-shadow:none;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;}
.hero-final-copy h1 span{color:#759188;font-weight:800;}
.hero-final-copy p{max-width:620px;margin:28px 0 0;color:#1d3d3f;font-size:clamp(17px,1.18vw,21px);line-height:1.55;font-weight:500;}
.hero-final-actions{display:flex;gap:22px;align-items:center;margin-top:30px;}
.hero-final-btn{display:inline-flex;align-items:center;justify-content:center;min-width:190px;height:58px;border-radius:9px;font-size:18px;font-weight:800;text-decoration:none;box-sizing:border-box;}
.hero-final-btn-primary{background:#006150;color:#fff;box-shadow:0 14px 28px rgba(0,97,80,.18);}
.hero-final-btn-primary::before{content:'▣';font-size:15px;margin-right:12px;}
.hero-final-btn-secondary{background:rgba(255,255,255,.62);color:#006150;border:2px solid #006150;backdrop-filter:blur(8px);}
.hero-final-btn-secondary span{font-size:26px;margin-left:14px;line-height:0;}
.hero-final-statbar{position:absolute;z-index:4;left:5.4%;right:5.4%;bottom:34px;min-height:104px;padding:18px 28px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:rgba(255,255,255,.74);border:1px solid rgba(255,255,255,.84);border-radius:24px;box-shadow:0 22px 48px rgba(17,33,28,.16);backdrop-filter:blur(18px);}
.hero-final-stat{display:flex;align-items:center;gap:22px;padding:0 28px;border-right:1px solid rgba(6,70,64,.18);}
.hero-final-stat:last-child{border-right:0;}
.hero-final-icon{width:64px;height:64px;flex:0 0 64px;border-radius:999px;background:rgba(218,230,220,.70);display:flex;align-items:center;justify-content:center;color:#006150;font-size:30px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(6,70,64,.05);}
.hero-final-stat strong{display:block;color:#006150;font-size:clamp(28px,2.3vw,42px);line-height:1;font-weight:900;letter-spacing:-.035em;}
.hero-final-stat span{display:block;margin-top:4px;color:#183136;font-size:clamp(14px,1vw,18px);line-height:1.22;font-weight:800;}
.hero-carousel-section,.hero-carousel{display:none!important;}
.hero-carousel-dots{display:none!important;}
.hero-carousel-arrow{display:none!important;}
.whatsapp{right:22px!important;bottom:28px!important;z-index:50!important;}
@media(max-width:1024px){.hero-final-inner{min-height:820px}.hero-final-media{inset:0;background-position:center top;opacity:.28}.hero-final-fade{background:linear-gradient(180deg,#fbf7ef 0%,rgba(251,247,239,.93) 55%,rgba(251,247,239,.82) 100%)}.hero-final-copy{width:auto;max-width:720px;padding:44px 30px 0}.hero-final-statbar{grid-template-columns:repeat(2,1fr);bottom:24px}.hero-final-stat:nth-child(2){border-right:0}.hero-final-stat{padding:18px 20px}.hero-final-actions{flex-wrap:wrap}}
@media(max-width:640px){.hero-final-inner{min-height:880px}.hero-final-copy h1{font-size:52px}.hero-final-copy p{font-size:16px}.hero-final-btn{min-width:100%;}.hero-final-actions{gap:12px}.hero-final-statbar{grid-template-columns:1fr;left:18px;right:18px;min-height:0;padding:8px 16px}.hero-final-stat{border-right:0;border-bottom:1px solid rgba(6,70,64,.12);padding:12px 4px;gap:14px}.hero-final-stat:last-child{border-bottom:0}.hero-final-icon{width:46px;height:46px;flex-basis:46px;font-size:22px}.hero-final-stat strong{font-size:26px}.hero-final-stat span{font-size:14px}.whatsapp{bottom:18px!important;right:14px!important}}



/* Remove the pale green gap caused by global section padding above the hero. */
html, body { margin:0 !important; padding:0 !important; }
body { background:#ffffff !important; }
main { margin:0 !important; padding:0 !important; background:#ffffff !important; }
header.site-nav.tep-approved-header { margin-bottom:0 !important; border-bottom:0 !important; }
header.site-nav.tep-approved-header + main { margin-top:0 !important; padding-top:0 !important; }
main > section.hero-single-final:first-child,
section.hero-single-final,
.hero-single-final {
  margin-top:0 !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  margin-bottom:0 !important;
  background:#fbf7ef !important;
  border-top:0 !important;
}
.hero-final-inner {
  margin-top:0 !important;
  padding-top:0 !important;
  border-top:0 !important;
}
/* Keep the next section from tucking underneath the hero. */
.hero-single-final + section { margin-top:0 !important; }



  .hero-image2-section{width:100%;background:#fbf7ef;overflow:hidden;margin:0;padding:0;}
  .hero-image2-wrap{position:relative;width:100%;max-width:1920px;margin:0 auto;line-height:0;background:#fbf7ef;}
  .hero-image2-img{display:block;width:100%;height:auto;border:0;margin:0;padding:0;}
  .hero-hotspot{position:absolute;display:block;z-index:5;border-radius:12px;background:transparent;text-indent:-9999px;overflow:hidden;}
  .hero-hotspot-book{left:4.5%;top:56.0%;width:15.2%;height:7.4%;}
  .hero-hotspot-learn{left:21.6%;top:56.0%;width:15.0%;height:7.4%;}
  .hero-hotspot-whatsapp{right:3.0%;bottom:2.6%;width:5.8%;height:9.8%;border-radius:50%;}
  .hero-hotspot:focus-visible{outline:3px solid #006150;outline-offset:3px;background:rgba(255,255,255,.12);}
  @media (max-width:760px){
    .hero-image2-wrap{width:190%;margin-left:-44%;}
    .hero-hotspot-book,.hero-hotspot-learn,.hero-hotspot-whatsapp{display:none;}
  }



  /* Restore header while keeping the hero tight under it, with no green spacer. */
  header.site-nav.tep-approved-header, header.site-nav {
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  header.site-nav.tep-approved-header + main { margin-top:0 !important; padding-top:0 !important; }
  main, main > .hero-image2-section:first-child, .hero-image2-section, .hero-image2-wrap, .hero-image2-img {
    margin-top:0 !important;
    padding-top:0 !important;
  }
  .hero-hotspot-whatsapp { display:none !important; }
  .whatsapp-float {
    position:fixed !important;
    right:24px !important;
    bottom:24px !important;
    width:62px !important;
    height:62px !important;
    border-radius:50% !important;
    background:#25D366 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:9999 !important;
    box-shadow:0 12px 30px rgba(0,0,0,.18) !important;
    text-decoration:none !important;
  }
  .whatsapp-float svg { width:34px !important; height:34px !important; display:block !important; }
  .whatsapp-float:hover { transform:scale(1.05) !important; }
  @media (max-width:760px){
    .whatsapp-float{right:16px !important; bottom:18px !important; width:56px !important; height:56px !important;}
  }



/* Final layered hero: crisp HTML text/buttons/stats over a cleaned therapy-room image. Header remains unchanged. */
.hero-image2-section{display:none!important;}
.hero-layered-section{position:relative!important;overflow:hidden!important;background:#fbf7f1!important;margin:0!important;padding:0!important;min-height:704px!important;height:704px!important;border-top:0!important;}
.hero-layered-bg{position:absolute!important;inset:0 0 0 34%!important;background:url('hero-session-clean.webp') center right/cover no-repeat!important;z-index:0!important;}
.hero-layered-fade{position:absolute!important;inset:0!important;background:linear-gradient(90deg,#fbf7f1 0%,#fbf7f1 25%,rgba(251,247,241,.92) 36%,rgba(251,247,241,.62) 48%,rgba(251,247,241,.12) 62%,rgba(251,247,241,0) 78%)!important;z-index:1!important;pointer-events:none!important;}
.hero-layered-inner{position:relative!important;z-index:2!important;width:min(1320px,calc(100% - 96px))!important;height:100%!important;margin:0 auto!important;}
.hero-layered-copy{position:absolute!important;left:0!important;top:92px!important;width:min(500px,44vw)!important;}
.hero-kicker{display:flex!important;align-items:center!important;gap:18px!important;margin-bottom:22px!important;color:#c99a2e!important;font-weight:800!important;}
.hero-kicker span{display:block!important;width:70px!important;height:3px!important;background:#d19a2c!important;border-radius:999px!important;}
.hero-layered-copy h1{margin:0 0 24px!important;font-size:clamp(52px,5.2vw,82px)!important;line-height:.96!important;letter-spacing:-.07em!important;color:#00584f!important;font-weight:800!important;}
.hero-layered-copy h1 em{font-style:normal!important;color:#78968e!important;}
.hero-layered-copy p{margin:0 0 30px!important;color:#426562!important;font-size:20px!important;line-height:1.55!important;max-width:540px!important;font-weight:500!important;}
.hero-layered-actions{display:flex!important;gap:20px!important;align-items:center!important;}
.hero-layered-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:58px!important;border-radius:8px!important;padding:0 28px!important;font-size:18px!important;font-weight:800!important;text-decoration:none!important;box-shadow:none!important;}
.hero-layered-btn.primary{background:#006f61!important;color:#fff!important;}
.hero-layered-btn.secondary{background:#fff!important;color:#006356!important;border:2px solid #006356!important;}
.hero-layered-statbar{position:absolute!important;left:0!important;right:0!important;bottom:42px!important;min-height:116px!important;background:rgba(255,255,255,.94)!important;border-radius:24px!important;box-shadow:0 18px 45px rgba(37,48,43,.13)!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;align-items:center!important;padding:18px 34px!important;backdrop-filter:blur(8px)!important;}
.hero-layered-stat{display:grid!important;grid-template-columns:74px auto!important;grid-template-rows:auto auto!important;column-gap:18px!important;align-items:center!important;border-right:1px solid rgba(0,88,79,.18)!important;padding:0 28px!important;color:#082a2a!important;}
.hero-layered-stat:last-child{border-right:0!important;}
.hero-layered-stat i{grid-row:1 / span 2!important;width:58px!important;height:58px!important;border-radius:50%!important;background:#e6eee8!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#006356!important;font-size:32px!important;font-style:normal!important;font-weight:800!important;}
.hero-layered-stat strong{display:block!important;color:#00584f!important;font-size:34px!important;line-height:1!important;font-weight:800!important;letter-spacing:-.04em!important;}
.hero-layered-stat span{display:block!important;font-size:16px!important;line-height:1.25!important;font-weight:800!important;color:#102828!important;margin-top:5px!important;}
.whatsapp-float{position:fixed!important;right:24px!important;bottom:24px!important;top:auto!important;transform:none!important;width:62px!important;height:62px!important;border-radius:50%!important;z-index:9999!important;}
.whatsapp-float:hover{transform:scale(1.05)!important;}
@media(max-width:900px){.hero-layered-section{height:auto!important;min-height:820px!important}.hero-layered-bg{inset:250px 0 0 0!important;background-position:center top!important}.hero-layered-fade{background:linear-gradient(180deg,#fbf7f1 0%,#fbf7f1 32%,rgba(251,247,241,.72) 50%,rgba(251,247,241,.05) 80%)!important}.hero-layered-inner{width:calc(100% - 34px)!important;min-height:820px!important}.hero-layered-copy{position:relative!important;top:36px!important;width:100%!important}.hero-layered-copy h1{font-size:54px!important}.hero-layered-copy p{font-size:17px!important}.hero-layered-actions{flex-wrap:wrap!important}.hero-layered-btn{width:100%!important}.hero-layered-statbar{grid-template-columns:1fr!important;bottom:22px!important;left:0!important;right:0!important;padding:12px 20px!important}.hero-layered-stat{border-right:0!important;border-bottom:1px solid rgba(0,88,79,.14)!important;padding:12px 0!important}.hero-layered-stat:last-child{border-bottom:0!important}.whatsapp-float{right:16px!important;bottom:18px!important;width:56px!important;height:56px!important}}



/* Confirmed fix: make the full-width hero carousel 10% taller than previous build */
.hero-carousel-section,.hero-carousel{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#fff!important;}
.hero-carousel-track{aspect-ratio:1536/1126!important;min-height:clamp(560px,73.3vw,1126px)!important;}
.hero-carousel-slide img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;}
@media(max-width:760px){.hero-carousel-track{aspect-ratio:1536/1180!important;min-height:auto!important;}}



/* Visible final fix: force the homepage hero/banner to be about 10% taller on desktop. */
.hero-carousel-section,
.hero-carousel{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  padding:0!important;
  background:#fff!important;
  overflow:hidden!important;
}
.hero-carousel-track{
  width:100vw!important;
  max-width:none!important;
  aspect-ratio:auto!important;
  height:840px!important;
  min-height:840px!important;
  max-height:none!important;
  overflow:hidden!important;
  background:#fff!important;
}
.hero-carousel-slide,
.hero-carousel-slide.hero-image-slide{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
.hero-carousel-slide.hero-image-slide>img,
.hero-carousel-slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}
/* Keep CTA hotspot placement aligned with the now-taller hero image. */
.hero-click-book{top:66.0%!important;}
.hero-click-learn{top:66.0%!important;}
.whatsapp-float{position:fixed!important;right:24px!important;bottom:24px!important;z-index:9999!important;}
@media(max-width:1366px){
  .hero-carousel-track{height:760px!important;min-height:760px!important;}
}
@media(max-width:1024px){
  .hero-carousel-track{height:720px!important;min-height:720px!important;}
}
@media(max-width:760px){
  .hero-carousel-track{height:760px!important;min-height:760px!important;}
  .hero-click-zone{display:none!important;}
}



/* Actual fix: active layered hero increased by 10% from 640px to 704px */
@media (min-width: 901px) {
  body main > section.hero-layered-section {
    height: 704px !important;
    min-height: 704px !important;
    max-height: none !important;
  }
  body main > section.hero-layered-section .hero-layered-inner {
    height: 704px !important;
    min-height: 704px !important;
  }
  body main > section.hero-layered-section .hero-layered-copy {
    top: 92px !important;
  }
  body main > section.hero-layered-section .hero-layered-statbar {
    bottom: 42px !important;
  }
}



/* Final hero correction: make therapy image cover the full hero height and keep stat bar inside hero image area */
@media (min-width: 901px) {
  body main > section.hero-layered-section {
    position: relative !important;
    height: 704px !important;
    min-height: 704px !important;
    max-height: none !important;
    overflow: hidden !important;
    background: #fbf7f1 !important;
  }
  body main > section.hero-layered-section .hero-layered-bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-image: url('hero-session-clean.webp') !important;
    background-size: cover !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    z-index: 0 !important;
  }
  body main > section.hero-layered-section .hero-layered-fade {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(90deg,
      #fbf7f1 0%,
      #fbf7f1 24%,
      rgba(251,247,241,.92) 34%,
      rgba(251,247,241,.60) 45%,
      rgba(251,247,241,.16) 58%,
      rgba(251,247,241,0) 74%) !important;
    z-index: 1 !important;
    pointer-events: none !important;
  }
  body main > section.hero-layered-section .hero-layered-inner {
    height: 704px !important;
    min-height: 704px !important;
    z-index: 2 !important;
  }
  body main > section.hero-layered-section .hero-layered-copy {
    top: 64px !important;
    width: min(500px, 42vw) !important;
  }
  body main > section.hero-layered-section .hero-layered-copy h1 {
    font-size: clamp(48px, 4.75vw, 74px) !important;
    margin-bottom: 18px !important;
  }
  body main > section.hero-layered-section .hero-layered-copy p {
    font-size: 18px !important;
    line-height: 1.48 !important;
    margin-bottom: 22px !important;
    max-width: 500px !important;
  }
  body main > section.hero-layered-section .hero-layered-btn {
    height: 52px !important;
    padding: 0 24px !important;
    font-size: 16px !important;
  }
  body main > section.hero-layered-section .hero-layered-statbar {
    left: 0 !important;
    right: 0 !important;
    bottom: 32px !important;
    min-height: 112px !important;
    padding: 16px 32px !important;
    z-index: 4 !important;
  }
}
/* Hide only the company address line; keep the older approved footer layout intact */
.tep-footer-address { display: none !important; }



/* Force WhatsApp button to the right-centre of the viewport */
.whatsapp-float,
a.whatsapp-float {
  position: fixed !important;
  right: 24px !important;
  top: 50% !important;
  bottom: auto !important;
  left: auto !important;
  transform: translateY(-50%) !important;
  z-index: 99999 !important;
}
.whatsapp-float:hover,
a.whatsapp-float:hover {
  transform: translateY(-50%) scale(1.05) !important;
}
@media (max-width: 900px) {
  .whatsapp-float, a.whatsapp-float {
    right: 16px !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
  }
  .whatsapp-float:hover, a.whatsapp-float:hover {
    transform: translateY(-50%) scale(1.05) !important;
  }
}



.tep-home-hero{
  position:relative;
  overflow:hidden;
  background:#fbf7f1;
  min-height:775px;
  height:775px;
  margin:0;
}
.tep-home-hero__inner{
  position:relative;
  z-index:3;
  width:min(1380px, calc(100% - 72px));
  height:100%;
  margin:0 auto;
}
.tep-home-hero__media{
  position:absolute;
  inset:0 0 0 40%;
  background:url('hero-counselling-3people.webp') center center / cover no-repeat;
  z-index:1;
}
.tep-home-hero__fade{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg,
    #fbf7f1 0%,
    #fbf7f1 24%,
    rgba(251,247,241,.98) 31%,
    rgba(251,247,241,.90) 38%,
    rgba(251,247,241,.70) 46%,
    rgba(251,247,241,.42) 54%,
    rgba(251,247,241,.16) 63%,
    rgba(251,247,241,0) 73%);
}
.tep-home-hero__copy{
  position:absolute;
  left:0;
  top:58px;
  width:min(520px, 38vw);
}
.tep-home-hero__kicker{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:22px;
  color:#c89a39;
  font-weight:800;
}
.tep-home-hero__kicker span{
  display:block;
  width:88px;
  height:3px;
  background:#c89a39;
  border-radius:999px;
}
.tep-home-hero__kicker b{
  font-size:20px;
  line-height:1;
}
.tep-home-hero__copy h1{
  margin:0 0 20px;
  font-size:clamp(58px, 5vw, 86px);
  line-height:.94;
  letter-spacing:-.07em;
  font-weight:800;
  color:#07584d;
}
.tep-home-hero__copy h1 span{
  color:#88a196;
}
.tep-home-hero__copy p{
  margin:0 0 30px;
  max-width:540px;
  color:#4a6763;
  font-size:20px;
  line-height:1.55;
  font-weight:500;
}
.tep-home-hero__actions{
  display:flex;
  gap:20px;
  align-items:center;
}
.tep-home-hero__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:204px;
  height:60px;
  padding:0 28px;
  border-radius:10px;
  font-size:17px;
  font-weight:800;
  text-decoration:none;
  line-height:1;
  transition:.2s ease;
}
.tep-home-hero__btn.primary{
  background:#006f61;
  color:#fff;
  box-shadow:0 14px 28px rgba(0,111,97,.18);
}
.tep-home-hero__btn.secondary{
  background:rgba(255,255,255,.72);
  color:#006356;
  border:2px solid #006356;
}
.tep-home-hero__btn:hover{ transform:translateY(-2px); }
.tep-home-hero__stats{
  position:absolute;
  left:0;
  right:0;
  bottom:2px;
  z-index:4;
  min-height:120px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  padding:18px 26px 16px;
  border-radius:26px;
  background:rgba(255,255,255,.95);
  box-shadow:0 18px 44px rgba(37,48,43,.12);
  backdrop-filter:blur(10px);
}
.tep-home-hero__stat{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:16px;
  align-items:center;
  padding:0 22px;
  position:relative;
}
.tep-home-hero__stat:not(:last-child)::after{
  content:'';
  position:absolute;
  right:0;
  top:12px;
  width:1px;
  height:58px;
  background:rgba(7,88,77,.16);
}
.tep-home-hero__icon{
  width:58px;
  height:58px;
  border-radius:50%;
  background:#e8efea;
  color:#0a6a5d;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:30px;
  font-weight:800;
}
.tep-home-hero__meta strong{
  display:block;
  color:#07584d;
  font-size:27px;
  line-height:1.05;
  font-weight:800;
  letter-spacing:-.04em;
}
.tep-home-hero__meta span{
  display:block;
  margin-top:6px;
  color:#1d2b2a;
  font-size:16px;
  line-height:1.28;
  font-weight:700;
}
@media (max-width: 1180px){
  .tep-home-hero{min-height:745px;height:745px;}
  .tep-home-hero__inner{width:min(1380px, calc(100% - 44px));}
  .tep-home-hero__copy{width:min(480px, 37vw); top:52px;}
  .tep-home-hero__copy h1{font-size:clamp(50px, 4.7vw, 74px);} 
  .tep-home-hero__copy p{font-size:18px;}
  .tep-home-hero__btn{min-width:180px;}
  .tep-home-hero__stats{padding:16px 16px;}
  .tep-home-hero__stat{padding:0 14px; gap:12px;}
  .tep-home-hero__meta strong{font-size:23px;}
  .tep-home-hero__meta span{font-size:15px;}
}
@media (max-width: 900px){
  .tep-home-hero{
    height:auto;
    min-height:940px;
  }
  .tep-home-hero__inner{
    width:calc(100% - 28px);
    min-height:920px;
  }
  .tep-home-hero__media{
    inset:40% 0 0 0;
    background-position:center top;
  }
  .tep-home-hero__fade{
    background:linear-gradient(180deg,
      #fbf7f1 0%,
      #fbf7f1 40%,
      rgba(251,247,241,.80) 55%,
      rgba(251,247,241,.16) 74%,
      rgba(251,247,241,0) 84%);
  }
  .tep-home-hero__copy{
    position:relative;
    top:34px;
    width:100%;
  }
  .tep-home-hero__copy p{max-width:none; font-size:17px;}
  .tep-home-hero__actions{flex-wrap:wrap; gap:14px;}
  .tep-home-hero__btn{width:100%; min-width:0;}
  .tep-home-hero__stats{
    left:0;
    right:0;
    bottom:18px;
    grid-template-columns:1fr 1fr;
    min-height:auto;
    padding:14px 12px;
    row-gap:12px;
  }
  .tep-home-hero__stat{
    padding:8px 10px;
  }
  .tep-home-hero__stat::after{display:none !important;}
}
@media (max-width: 640px){
  .tep-home-hero{min-height:980px;}
  .tep-home-hero__inner{min-height:980px;}
  .tep-home-hero__copy h1{font-size:46px;}
  .tep-home-hero__copy p{font-size:16px;}
  .tep-home-hero__kicker span{width:74px;}
  .tep-home-hero__stats{grid-template-columns:1fr;}
}



/* Navigation refinement: chevrons only for items with sub-pages, with elegant dropdowns. */
.tep-nav-menu{align-items:center!important;}
.tep-nav-menu .nav-dropdown{position:relative;display:flex;align-items:center;}
.tep-nav-menu .nav-dropdown>a{display:inline-flex;align-items:center;gap:5px;}
.tep-nav-menu .nav-dropdown .chev{font-size:.9em;line-height:1;opacity:.9;}
.tep-nav-menu .nav-submenu{
  position:absolute;
  top:calc(100% + 16px);
  left:50%;
  transform:translateX(-50%) translateY(8px);
  min-width:230px;
  padding:10px;
  border-radius:18px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(37,48,43,.10);
  box-shadow:0 18px 45px rgba(37,48,43,.14);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  z-index:1000;
}
.tep-nav-menu .nav-submenu::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-18px;
  height:18px;
}
.tep-nav-menu .nav-dropdown:hover .nav-submenu,
.tep-nav-menu .nav-dropdown:focus-within .nav-submenu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.tep-nav-menu .nav-submenu a{
  display:block!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  font-size:14px!important;
  line-height:1.2!important;
  color:#1f2d2a!important;
  white-space:nowrap!important;
}
.tep-nav-menu .nav-submenu a:hover{
  background:#f2eadf!important;
  color:#0b4a47!important;
}
@media(max-width:900px){
  .tep-nav-menu .nav-submenu{display:none!important;}
}



/* Mobile responsiveness hardening for all small screens */
html, body { max-width:100%; overflow-x:hidden !important; }
*, *::before, *::after { box-sizing:border-box; }
img, svg, video { max-width:100%; height:auto; }

@media (max-width: 980px){
  .container,
  .loc-wrap,
  .locations-page-redesign .loc-wrap,
  .tep-header-inner,
  .hero-layered-inner,
  .tep-home-hero__inner{
    width:calc(100% - 32px) !important;
    max-width:none !important;
  }
  section { padding-left:0 !important; padding-right:0 !important; }
  .cards,
  .service-cards,
  .service-grid,
  .process,
  .about-grid,
  .about-summary-grid,
  .contact-grid,
  .loc-hero-grid,
  .loc-choice-strip,
  .loc-card,
  .loc-card:nth-child(even),
  .loc-access-grid,
  .loc-booking-note,
  .locations-summary,
  .locations-hero-grid,
  .locations-list-v2,
  .experiences-grid,
  .faq-grid {
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    max-width:100% !important;
  }
  .loc-card:nth-child(even) .loc-card-aside,
  .loc-card:nth-child(even) .loc-card-main { order:initial !important; }
  .section-head,
  .loc-section-head,
  .experiences-head {
    display:block !important;
    text-align:left !important;
  }
  .section-head p,
  .loc-section-head p,
  .experiences-head p { margin-top:14px !important; max-width:100% !important; }
  .card,
  .service-card-link,
  .step,
  .contact-panel,
  .loc-card-main,
  .loc-card-aside,
  .faq-preview-card,
  .experience-card {
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  .contact-panel { padding:24px !important; }
  .contact-panel h2,
  .section-head h2,
  .about-copy h2,
  .loc-section-head h2 {
    font-size:clamp(2rem, 8vw, 3rem) !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
  }
  .contact-panel p,
  .card p,
  .service-card-link p,
  .step p,
  .loc-access p,
  .loc-lede {
    font-size:1rem !important;
    line-height:1.6 !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
  }
  .validated-contact-form,
  .validated-contact-form .form-field,
  .validated-contact-form input,
  .validated-contact-form textarea,
  .validated-contact-form button {
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  .phone-row {
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    gap:12px !important;
    width:100% !important;
  }
  .validated-contact-form input[name="country_code"] { max-width:96px !important; }
  .recaptcha-wrap { width:100% !important; overflow:hidden !important; }
  .g-recaptcha { transform-origin:left top !important; max-width:100% !important; }
  .whatsapp-float,
  a.whatsapp-float {
    width:58px !important;
    height:58px !important;
    right:16px !important;
    bottom:18px !important;
    top:auto !important;
    transform:none !important;
    z-index:9999 !important;
  }
  .whatsapp-float:hover,
  a.whatsapp-float:hover { transform:scale(1.04) !important; }
}

@media (min-width: 641px) and (max-width: 980px){
  .cards,
  .service-cards,
  .service-grid { grid-template-columns:repeat(2, minmax(0,1fr)) !important; }
}

@media (max-width: 640px){
  .container,
  .loc-wrap,
  .locations-page-redesign .loc-wrap,
  .tep-header-inner,
  .hero-layered-inner,
  .tep-home-hero__inner { width:calc(100% - 28px) !important; }
  body { font-size:16px !important; }
  h1,
  .hero h1,
  .tep-home-hero__copy h1,
  .hero-layered-copy h1,
  .loc-hero h1,
  .locations-hero h1 {
    font-size:clamp(2.65rem, 13vw, 4rem) !important;
    line-height:1.02 !important;
    letter-spacing:-.055em !important;
    max-width:100% !important;
  }
  .hero p,
  .tep-home-hero__copy p,
  .hero-layered-copy p,
  .loc-lede { font-size:1rem !important; max-width:100% !important; }
  .hero-actions,
  .hero-layered-actions,
  .tep-home-hero__actions { display:grid !important; grid-template-columns:1fr !important; gap:12px !important; width:100% !important; }
  .btn,
  .btn-primary,
  .btn-secondary,
  .hero-layered-btn,
  .tep-home-hero__btn { width:100% !important; min-width:0 !important; max-width:100% !important; text-align:center !important; }
  /* Homepage hero: avoid content/stat bar overlapping the image on phones */
  .tep-home-hero,
  .hero-layered-section { height:auto !important; min-height:0 !important; overflow:hidden !important; }
  .tep-home-hero__inner,
  .hero-layered-inner { height:auto !important; min-height:0 !important; display:flex !important; flex-direction:column !important; padding:34px 0 24px !important; }
  .tep-home-hero__copy,
  .hero-layered-copy { position:relative !important; left:auto !important; top:auto !important; width:100% !important; max-width:100% !important; z-index:4 !important; padding:0 !important; }
  .tep-home-hero__media,
  .hero-layered-bg { position:relative !important; inset:auto !important; order:2 !important; width:100vw !important; margin-left:calc(50% - 50vw) !important; height:360px !important; min-height:360px !important; background-position:center center !important; background-size:cover !important; opacity:1 !important; }
  .tep-home-hero__fade,
  .hero-layered-fade { display:none !important; }
  .tep-home-hero__stats,
  .hero-layered-statbar {
    position:relative !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    order:3 !important;
    width:100% !important;
    margin:18px 0 0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    min-height:0 !important;
    padding:18px 18px !important;
    border-radius:24px !important;
  }
  .tep-home-hero__stat,
  .hero-layered-stat {
    display:grid !important;
    grid-template-columns:58px 1fr !important;
    gap:14px !important;
    padding:14px 4px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(7,88,77,.12) !important;
  }
  .tep-home-hero__stat:last-child,
  .hero-layered-stat:last-child { border-bottom:0 !important; }
  .tep-home-hero__stat::after { display:none !important; }
  .tep-home-hero__icon,
  .hero-layered-stat i { width:52px !important; height:52px !important; font-size:26px !important; }
  .tep-home-hero__meta strong,
  .hero-layered-stat strong { font-size:28px !important; }
  .tep-home-hero__meta span,
  .hero-layered-stat span { font-size:16px !important; }
  .cards,
  .service-cards,
  .service-grid { grid-template-columns:1fr !important; gap:16px !important; }
  .service-card-link,
  .card { padding:24px !important; }
  .service-card-link h3,
  .card h3 { font-size:1.65rem !important; line-height:1.18 !important; word-break:normal !important; overflow-wrap:normal !important; }
  .service-card-link p,
  .card p { font-size:1rem !important; line-height:1.55 !important; }
  .contact-grid { gap:18px !important; }
  .contact-panel h2 { font-size:2.25rem !important; }
  input, textarea, select { font-size:16px !important; padding:14px 15px !important; }
  .g-recaptcha { transform:scale(.92) !important; }
  .tep-approved-footer .tep-footer-inner { width:calc(100% - 28px) !important; }
}

@media (max-width: 380px){
  .g-recaptcha { transform:scale(.84) !important; }
  .phone-row { grid-template-columns:84px minmax(0,1fr) !important; gap:10px !important; }
  .validated-contact-form input[name="country_code"] { max-width:84px !important; }
}

/* R53: preserve the full replacement portrait outside the hero. */
.about-summary-section .about-photo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #eef1eb;
}

.about-summary-section .about-photo {
  width: 100% !important;
  height: 520px !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}

.about-summary-section .about-summary-link:hover .about-photo {
  transform: none !important;
}

@media (max-width: 900px) {
  .about-summary-section .about-photo {
    height: auto !important;
    max-height: none !important;
  }
}

/* R54: make the frame follow the portrait ratio so the image fills it
   edge-to-edge without cropping or artificial side panels. */
.about-summary-section .about-photo-wrap {
  width: min(100%, 430px) !important;
  aspect-ratio: 941 / 1672 !important;
  justify-self: center !important;
  background: transparent !important;
}

.about-summary-section .about-photo {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media (max-width: 900px) {
  .about-summary-section .about-photo-wrap {
    width: min(100%, 460px) !important;
  }
}

/* R56: rebalance the homepage counsellor card so the tall portrait supports
   the introduction instead of dominating it. */
@media (min-width: 901px) {
  .about-summary-section .about-summary-grid {
    grid-template-columns: minmax(0, 1fr) 340px !important;
  }

  .about-summary-section .about-photo-wrap {
    width: 340px !important;
  }
}

@media (min-width: 601px) and (max-width: 900px) {
  .about-summary-section .about-photo-wrap {
    width: min(100%, 340px) !important;
  }
}

@media (max-width: 600px) {
  .about-summary-section .about-photo-wrap {
    width: min(82vw, 310px) !important;
  }
}



.tep-hero-slider{
  position:relative;
  width:100%;
  margin:0;
  overflow:hidden;
  background:#fbf7f1;
}
.tep-hero-slider__track{
  display:grid;
  width:100%;
}
.tep-hero-slider [data-hero-slide]{
  grid-area:1 / 1;
  width:100%;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:0;
  transition:opacity .65s ease, visibility .65s ease;
}
.tep-hero-slider [data-hero-slide].is-active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  z-index:2;
}
.tep-home-hero--medical .tep-home-hero__media{
  background-image:url('medical-practitioner-counselling-sheetal.webp');
  background-position:62% center;
  background-size:cover;
  image-rendering:auto;
}
.tep-home-hero--medical .tep-home-hero__fade{
  background:linear-gradient(90deg,
    #fbf7f1 0%,
    #fbf7f1 23%,
    rgba(251,247,241,.98) 30%,
    rgba(251,247,241,.91) 36%,
    rgba(251,247,241,.72) 43%,
    rgba(251,247,241,.43) 50%,
    rgba(251,247,241,.17) 58%,
    rgba(251,247,241,.04) 65%,
    rgba(251,247,241,0) 72%);
}
.tep-home-hero--medical .tep-home-hero__copy{
  width:min(600px,43vw);
}
.tep-home-hero--medical .tep-home-hero__copy h1{
  font-size:clamp(52px,4.55vw,80px);
}
.tep-hero-slider__dots{
  position:absolute;
  top:18px;
  right:28px;
  z-index:21;
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 10px;
  border:1px solid rgba(7,88,77,.10);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  box-shadow:0 8px 22px rgba(37,48,43,.08);
  backdrop-filter:blur(8px);
}
.tep-hero-slider__dot{
  width:11px;
  height:11px;
  min-width:11px;
  min-height:11px;
  margin:0;
  padding:0;
  border:1.5px solid #07584d;
  border-radius:50%;
  background:transparent;
  cursor:pointer;
}
.tep-hero-slider__dot.is-active{background:#07584d;}
@media(max-width:1180px){
  .tep-home-hero--medical .tep-home-hero__copy{width:min(540px,43vw);}
  .tep-home-hero--medical .tep-home-hero__copy h1{font-size:clamp(46px,4.3vw,66px);}
}
@media(max-width:900px){
  .tep-home-hero--medical .tep-home-hero__copy{width:100%;}
  .tep-home-hero--medical .tep-home-hero__media{
    background-position:64% top!important;
  }
  .tep-home-hero--medical .tep-home-hero__fade{
    background:linear-gradient(180deg,
      #fbf7f1 0%,
      #fbf7f1 40%,
      rgba(251,247,241,.82) 54%,
      rgba(251,247,241,.28) 69%,
      rgba(251,247,241,0) 82%);
  }
}
@media(max-width:640px){
  .tep-home-hero--medical .tep-home-hero__copy h1{font-size:46px!important;}
  .tep-home-hero--medical .tep-home-hero__media{background-position:64% top!important;}
  .tep-hero-slider__dots{top:10px;right:14px;padding:7px 9px;}
  .tep-hero-slider__dot{width:10px;height:10px;min-width:10px;min-height:10px;}
}
@media(prefers-reduced-motion:reduce){
  .tep-hero-slider [data-hero-slide]{transition:none;}
}

/* R4 hero refinement: tighten the copy/photo join and place the proof bar
   beneath the photograph on both slides so the coffee table remains visible. */
@media(min-width:901px){
  .tep-home-hero{
    height:850px;
    min-height:850px;
  }
  .tep-home-hero__media{
    inset:0 0 132px 36%;
  }
  .tep-home-hero__fade{
    bottom:132px;
  }
  .tep-home-hero__copy{
    width:min(600px,41vw);
  }
  .tep-home-hero__stats{
    bottom:0;
  }
  .tep-home-hero--medical .tep-home-hero__media{
    background-image:url('medical-practitioner-counselling-sheetal.webp');
    background-position:54% center;
  }
  .tep-home-hero--medical .tep-home-hero__fade{
    bottom:132px;
    background:linear-gradient(90deg,
      #fbf7f1 0%,
      #fbf7f1 20%,
      rgba(251,247,241,.98) 27%,
      rgba(251,247,241,.88) 34%,
      rgba(251,247,241,.60) 41%,
      rgba(251,247,241,.28) 48%,
      rgba(251,247,241,.08) 55%,
      rgba(251,247,241,0) 63%);
  }
  .tep-home-hero--medical .tep-home-hero__copy{
    width:min(620px,42vw);
  }
}
@media(min-width:901px) and (max-width:1180px){
  .tep-home-hero{
    height:820px;
    min-height:820px;
  }
  .tep-home-hero__media{
    inset:0 0 122px 37%;
  }
  .tep-home-hero__fade,
  .tep-home-hero--medical .tep-home-hero__fade{
    bottom:122px;
  }
}



/* R5: retain the approved slide structure while tightening the medical
   photograph/copy blend and providing visible manual carousel controls. */
.tep-home-hero--medical .tep-home-hero__media{
  left:0;
  background-image:url('medical-practitioner-counselling-sheetal.webp');
  background-position:center center;
  background-size:cover;
  image-rendering:auto;
}
.tep-home-hero--medical .tep-home-hero__fade{
  background:linear-gradient(90deg,
    #fbf7f1 0%,
    #fbf7f1 24%,
    rgba(251,247,241,.98) 29%,
    rgba(251,247,241,.91) 33%,
    rgba(251,247,241,.68) 37%,
    rgba(251,247,241,.38) 41%,
    rgba(251,247,241,.14) 45%,
    rgba(251,247,241,.03) 48%,
    rgba(251,247,241,0) 51%);
}
.tep-hero-slider__arrow{
  position:absolute;
  top:50%;
  z-index:24;
  width:50px;
  height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid rgba(7,88,77,.15);
  border-radius:50%;
  background:rgba(255,255,255,.94);
  color:#07584d;
  box-shadow:0 10px 28px rgba(29,48,43,.18);
  font:600 38px/1 Arial,sans-serif;
  cursor:pointer;
  transform:translateY(-50%);
  transition:background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.tep-hero-slider__arrow:hover{
  background:#fff;
  transform:translateY(-50%) scale(1.05);
  box-shadow:0 12px 32px rgba(29,48,43,.22);
}
.tep-hero-slider__arrow:focus-visible{
  outline:3px solid rgba(200,154,57,.75);
  outline-offset:3px;
}
.tep-hero-slider__arrow--prev{left:22px;}
.tep-hero-slider__arrow--next{right:22px;}
.whatsapp-float,
a.whatsapp-float{
  top:72% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
}
.whatsapp-float:hover,
a.whatsapp-float:hover{
  transform:translateY(-50%) scale(1.05) !important;
}
@media(max-width:900px){
  .tep-home-hero--medical .tep-home-hero__media{
    left:0;
    background-position:66% top!important;
  }
  .tep-home-hero--medical .tep-home-hero__fade{
    background:linear-gradient(180deg,
      #fbf7f1 0%,
      #fbf7f1 38%,
      rgba(251,247,241,.88) 48%,
      rgba(251,247,241,.48) 57%,
      rgba(251,247,241,.12) 66%,
      rgba(251,247,241,0) 72%);
  }
  .tep-hero-slider__arrow{
    width:42px;
    height:42px;
    font-size:32px;
  }
  .tep-hero-slider__arrow--prev{left:10px;}
  .tep-hero-slider__arrow--next{right:10px;}
  .whatsapp-float,
  a.whatsapp-float{
    top:74% !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .tep-hero-slider__arrow{transition:none;}
}



/* R6: remove the top-right selector and use the newly composed, wider scene. */
.tep-hero-slider__dots{display:none!important;}
.tep-home-hero--medical .tep-home-hero__media{
  background-image:url('medical-practitioner-counselling-sheetal.webp');
  background-position:center center;
  background-size:cover;
}
@media(min-width:901px){
  .tep-home-hero--medical .tep-home-hero__fade{
    background:linear-gradient(90deg,
      #fbf7f1 0%,
      #fbf7f1 22%,
      rgba(251,247,241,.97) 27%,
      rgba(251,247,241,.82) 31%,
      rgba(251,247,241,.52) 35%,
      rgba(251,247,241,.22) 38%,
      rgba(251,247,241,.06) 41%,
      rgba(251,247,241,0) 44%);
  }
}
@media(max-width:900px){
  .tep-home-hero--medical .tep-home-hero__media{
    background-position:69% top!important;
  }
}



/* R23: preserve the approved layout and use the natural, identity-matched
   medical-practitioner photograph. */
.tep-home-hero--medical .tep-home-hero__media{
  left:0;
  background-color:#fbf7f1;
  background-image:url('medical-practitioner-counselling-sheetal.webp');
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  image-rendering:auto;
}
@media(min-width:901px){
  .tep-home-hero--medical .tep-home-hero__copy{
    width:min(660px,44vw);
  }
  .tep-home-hero--medical .tep-home-hero__fade{
    background:linear-gradient(90deg,
      #fbf7f1 0%,
      #fbf7f1 27%,
      rgba(251,247,241,.98) 33%,
      rgba(251,247,241,.88) 38%,
      rgba(251,247,241,.68) 42%,
      rgba(251,247,241,.43) 46%,
      rgba(251,247,241,.22) 49%,
      rgba(251,247,241,.08) 52%,
      rgba(251,247,241,0) 56%);
  }
}
@media(max-width:900px){
  .tep-home-hero--medical .tep-home-hero__media{
    background-position:70% top!important;
  }
  .tep-home-hero--medical .tep-home-hero__fade{
    background:linear-gradient(180deg,
      #fbf7f1 0%,
      #fbf7f1 39%,
      rgba(251,247,241,.90) 48%,
      rgba(251,247,241,.58) 57%,
      rgba(251,247,241,.20) 65%,
      rgba(251,247,241,0) 72%);
  }
}


@media(max-width:700px){.tep-home-hero--medical .tep-home-hero__media{background-image:url('medical-practitioner-counselling-sheetal-mobile.webp')!important}}
