/* ==========================================================================
   Calm Teal Skin: Calming teal with warm sand, Nunito + Source Sans 3
   ========================================================================== */
.style-calm-teal {
    --color-primary: #2a9d8f;
    --color-primary-dark: #218377;
    --color-accent: #e9c46a;
    --color-bg: #ffffff;
    --color-bg-secondary: #f1f8f6;
    --color-text: #2b3a39;
    --color-text-muted: #5d6f6d;
    --color-border: #dfeae7;
    --font-heading: 'Nunito', sans-serif;
    --font-body: 'Source Sans 3', sans-serif;
    --letter-spacing-heading: 0;
}

.style-calm-teal h1,
.style-calm-teal h2,
.style-calm-teal h3 { font-weight: 800; }

/* Accent is a warm sand, so accent buttons need dark text for contrast */
.style-calm-teal .btn--accent {
    color: #4a3a14;
}

.style-calm-teal .btn--accent:hover,
.style-calm-teal .btn--accent:focus {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: #ffffff;
}

.style-calm-teal .mobile-cta__book {
    color: #4a3a14;
}

/* --- Header --- */
.style-calm-teal .calm-teal-header__top {
    background-color: var(--color-primary);
    color: rgba(255, 255, 255, 0.9);
    padding: 0.5rem 0;
    font-size: 0.8125rem;
}

.style-calm-teal .calm-teal-header__top-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.style-calm-teal .calm-teal-header__top-text {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: #ffffff;
    font-weight: 700;
}

.style-calm-teal .calm-teal-header__top-text svg { color: var(--color-accent); }

.style-calm-teal .calm-teal-header__top-actions {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.style-calm-teal .calm-teal-header__top-link {
    color: rgba(255, 255, 255, 0.82);
    text-decoration: none;
    font-size: 0.8125rem;
    transition: color 200ms ease;
}

.style-calm-teal .calm-teal-header__top-link:hover { color: #ffffff; text-decoration: none; }

.style-calm-teal .calm-teal-header__main {
    background-color: var(--color-white);
    border-bottom: 1px solid var(--color-border);
}

.style-calm-teal .calm-teal-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    height: 78px;
}

.style-calm-teal .calm-teal-header__logo {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    text-decoration: none;
}

.style-calm-teal .calm-teal-header__logo-icon { color: var(--color-primary); }

.style-calm-teal .calm-teal-header__logo-text {
    font-family: var(--font-heading);
    font-size: 1.375rem;
    font-weight: 800;
    color: var(--color-primary);
}

@media (max-width: 620px) {
    .style-calm-teal .calm-teal-header__logo-text { font-size: 1.1875rem; }
}

.style-calm-teal .calm-teal-nav .main-nav__link {
    color: var(--color-text);
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 0.9375rem;
}

.style-calm-teal .calm-teal-nav .main-nav__link:hover,
.style-calm-teal .calm-teal-nav .main-nav__link.is-active { color: var(--color-primary); }

.style-calm-teal .calm-teal-header__right {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.style-calm-teal .calm-teal-header__phone {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    color: var(--color-text);
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 1rem;
}

.style-calm-teal .calm-teal-header__phone svg { color: var(--color-primary); }

.style-calm-teal .calm-teal-header__cta { display: none; }

@media (min-width: 1024px) {
    .style-calm-teal .calm-teal-header__cta { display: inline-flex; }
}

.style-calm-teal .mobile-nav { background-color: var(--color-bg-secondary); }

/* --- Trust bar --- */
.style-calm-teal .trust-bar {
    background-color: var(--color-bg-secondary);
    border-color: var(--color-border);
}

.style-calm-teal .trust-bar__item {
    color: var(--color-text);
    font-family: var(--font-heading);
    font-weight: 700;
}

.style-calm-teal .trust-bar__item svg { color: var(--color-primary); }
.style-calm-teal .trust-bar__sep { background-color: var(--color-accent); }

/* --- Buttons --- */
.style-calm-teal .btn {
    font-family: var(--font-heading);
    font-weight: 700;
    border-radius: var(--radius-full);
}

/* --- Softer, rounder cards --- */
.style-calm-teal .service-card,
.style-calm-teal .care-card,
.style-calm-teal .testimonial-card,
.style-calm-teal .team-card,
.style-calm-teal .cert-badge { border-radius: 20px; }

/* --- Footer --- */
.style-calm-teal .calm-teal-footer { background-color: #1c3d39; }
.style-calm-teal .cta-banner { background-color: var(--color-primary); }
