:root {
    --white: #ffffff;
    --turquoise: #58dce8;
    --turquoise-strong: #28c7dc;
    --blue: #087fe4;
    --blue-soft: #168ade;
    --blue-deep: #0a5f9d;
    --navy: #0b2442;
    --ink: #10213c;
    --muted: rgba(255,255,255,.82);
    --line: rgba(255,255,255,.22);
    --shadow: 0 22px 70px rgba(4, 42, 89, .28);
    --container: 1180px;
}

/* Blog: editorial companion to the existing clinical visual system */
.blog-page,.blog-article{color:var(--ink);background:#fff}.blog-hero{padding:82px 0 90px;background:linear-gradient(125deg,#0b2442,#087fe4 65%,#58dce8);color:#fff}.blog-hero__inner{max-width:1180px;margin:auto;padding:0 24px}.blog-eyebrow,.blog-admin__title span{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:900;color:#58dce8}.blog-hero h1{max-width:720px;margin:14px 0;font-size:clamp(2.35rem,5vw,4.7rem);line-height:1.03}.blog-hero p{margin:0;max-width:600px;font-size:1.1rem;line-height:1.7;color:rgba(255,255,255,.85)}.wide{width:min(calc(100% - 48px),1180px);margin-inline:auto}.blog-doctor{margin-top:-38px;padding:28px;display:grid;grid-template-columns:285px 1fr;gap:42px;align-items:center;background:#fff;border-radius:22px;box-shadow:0 22px 60px rgba(10,37,72,.14)}.blog-doctor img{width:100%;height:260px;object-fit:cover;object-position:50% 20%;border-radius:15px}.blog-doctor h2,.blog-section-heading h2{margin:0 0 14px;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.12}.blog-doctor p{max-width:650px;line-height:1.75;color:#4a5c75}.blog-text-link{color:var(--blue);font-weight:900}.blog-text-link span{margin-left:8px}.blog-featured{padding:92px 0 76px;background:#f1f8fd}.blog-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.blog-section-heading p{margin:0;color:#62728a}.blog-carousel-controls{display:flex;gap:10px}.blog-carousel-button{width:44px;height:44px;border:0;border-radius:50%;background:var(--blue);color:#fff;font-size:1.3rem;cursor:pointer}.blog-carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}.blog-carousel::-webkit-scrollbar{display:none}.blog-card{flex:0 0 calc((100% - 40px)/3);min-width:290px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 12px 32px rgba(10,37,72,.1);scroll-snap-align:start}.blog-card__placeholder{height:185px;display:grid;place-items:center;background:linear-gradient(135deg,#dcebf5,#f7fbfe);border-bottom:1px solid #c9ddec;color:#4a789d}.blog-card__placeholder::before{content:'';position:absolute;width:74px;height:74px;border-radius:50%;border:2px solid rgba(8,127,228,.28);background:radial-gradient(circle at 50% 38%,rgba(8,127,228,.12) 0 17px,transparent 18px),linear-gradient(135deg,transparent 57%,rgba(8,127,228,.1) 58%)}.blog-card__placeholder span{position:relative;margin-top:110px;text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;font-weight:900;color:#5e88a8}.blog-card__body{padding:21px}.blog-card time,.blog-news-item time{color:var(--blue);font-size:.78rem;font-weight:900;letter-spacing:.06em}.blog-card h3{margin:10px 0;font-size:1.2rem;line-height:1.35}.blog-card p{min-height:64px;margin:0 0 16px;color:#607089;line-height:1.55;font-size:.9rem}.blog-card__body span{font-weight:900;color:var(--blue);font-size:.88rem}.blog-latest{padding:90px 0}.blog-news-list{max-height:620px;overflow-y:auto;border-top:1px solid #dce7f1}.blog-news-item{display:grid;grid-template-columns:130px 1fr 40px;gap:22px;align-items:center;padding:25px 8px;border-bottom:1px solid #dce7f1}.blog-news-item h3{margin:0 0 8px;font-size:1.25rem}.blog-news-item h3:hover{color:var(--blue)}.blog-news-item p{margin:0;line-height:1.6;color:#62728a}.blog-news-arrow{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#e9f6fd;color:var(--blue);font-weight:900}.blog-empty{padding:24px;color:#62728a}.blog-article__header{padding:74px 0 40px;max-width:840px}.blog-back{display:inline-block;margin-bottom:48px;color:var(--blue);font-weight:900}.blog-article__header time{font-size:.82rem;color:var(--blue);font-weight:900}.blog-article__header h1{margin:14px 0;font-size:clamp(2.3rem,5vw,4.4rem);line-height:1.06}.blog-article__header p{font-size:1.2rem;line-height:1.65;color:#5c6e86}.blog-article__image{width:min(calc(100% - 48px),1180px);height:min(55vw,560px);margin:auto;object-fit:cover;border-radius:18px}.blog-article__content{width:min(calc(100% - 48px),760px);margin:48px auto 90px;color:#33465e;font-size:1.06rem;line-height:1.9}.blog-admin{color:var(--ink);background:#edf6fb}.blog-admin__shell{min-height:100vh}.blog-admin__login{width:min(calc(100% - 40px),440px);margin:9vh auto;padding:42px;background:#fff;border-radius:22px;box-shadow:0 20px 55px rgba(10,37,72,.14)}.blog-admin__login img{width:215px;margin:0 auto 28px}.blog-admin__login h1{font-size:1.9rem;margin-bottom:8px}.blog-admin__login p{color:#62728a;line-height:1.55}.blog-admin label{display:block;margin:18px 0;font-size:.9rem;font-weight:800}.blog-admin input:not([type=checkbox]),.blog-admin textarea,.blog-admin select{width:100%;margin-top:7px;padding:13px;border:1px solid #cbd9e6;border-radius:8px;background:#fff;font:inherit;color:var(--ink)}.blog-admin textarea{resize:vertical}.admin-button{display:inline-flex;justify-content:center;align-items:center;padding:13px 20px;border:0;border-radius:8px;background:var(--blue);color:#fff;font:inherit;font-weight:900;cursor:pointer}.admin-button--ghost{background:#e6f3fb;color:var(--blue)}.admin-alert{margin:16px 0;padding:12px 14px;border-radius:7px;background:#dff5eb;color:#1b6748}.admin-alert--error{background:#ffeaeb;color:#a02532}.blog-admin__header{display:flex;justify-content:flex-end;align-items:center;gap:24px;padding:16px 5%;background:#0b2442;color:#fff;font-size:.9rem}.blog-admin__content{width:min(calc(100% - 48px),1050px);margin:42px auto}.blog-admin__title{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.blog-admin__title h1{margin:6px 0 0}.blog-editor{padding:28px;background:#fff;border-radius:14px;box-shadow:0 9px 32px rgba(10,37,72,.08)}.blog-editor__options{display:flex;gap:28px;align-items:center}.blog-editor__options label{display:flex;gap:8px;align-items:center}.blog-editor__options select{width:auto;margin:0}.blog-editor__preview{width:160px;height:90px;object-fit:cover;border-radius:8px}.blog-admin__entries{margin-top:48px}.blog-admin__entries>a{display:grid;grid-template-columns:1fr auto auto;gap:20px;padding:17px;border-bottom:1px solid #d5e3ee;background:#fff}.blog-admin__entries small,.blog-admin__entries time{color:#62728a}
@media (max-width:760px){.blog-hero{padding:60px 0 72px}.wide{width:min(calc(100% - 32px),1180px)}.blog-doctor{grid-template-columns:1fr;gap:22px;padding:18px;margin-top:-28px}.blog-doctor img{height:230px}.blog-featured,.blog-latest{padding:62px 0}.blog-card{flex-basis:82%}.blog-carousel-controls{display:none}.blog-news-item{grid-template-columns:1fr 34px;gap:10px;padding:20px 0}.blog-news-item time{grid-column:1/-1}.blog-news-item h3{font-size:1.1rem}.blog-news-item p{font-size:.92rem}.blog-admin__content{width:min(calc(100% - 28px),1050px);margin:25px auto}.blog-admin__title{align-items:start;gap:15px}.blog-admin__entries>a{grid-template-columns:1fr;gap:5px}.blog-editor__options{display:block}}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    min-height: 100%;
    font-family: 'Manrope', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: var(--white);
    background: var(--white);
}

a {
    color: inherit;
    text-decoration: none;
}

img,
svg,
video {
    display: block;
}

button,
a {
    -webkit-tap-highlight-color: transparent;
}

.container {
    width: min(calc(100% - 48px), var(--container));
    margin-inline: auto;
}

.site-shell {
    min-height: 100vh;
    background: var(--white);
}

.desktop-top {
    position: relative;
    z-index: 20;
    background: var(--white);
    color: var(--ink);
    border-bottom: 1px solid rgba(10, 95, 157, .1);
    box-shadow: 0 16px 45px rgba(10, 37, 72, .08);
}

.desktop-top__inner {
    min-height: 82px;
    display: grid;
    grid-template-columns: minmax(215px, 1fr) auto minmax(215px, 1fr);
    align-items: center;
    column-gap: 32px;
}

.brand {
    display: inline-flex;
    align-items: center;
}

.brand--desktop img {
    width: min(228px, 100%);
    height: auto;
}

.desktop-top__contact {
    justify-self: center;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    border: 0;
}

.desktop-top__contact--socials {
    min-height: auto;
}

.social-link {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: var(--white);
    background: linear-gradient(135deg, var(--blue), var(--turquoise-strong));
    box-shadow: 0 13px 30px rgba(40,199,220,.25);
    transition: transform .25s ease, box-shadow .25s ease;
}

.social-link svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
}

.social-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 17px 38px rgba(40,199,220,.34);
}

.social-link--muted {
    background: rgba(8,127,228,.10);
    color: var(--blue);
    box-shadow: none;
}

.social-link--muted svg {
    fill: currentColor;
}

.contact-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 22px;
    border-radius: 999px;
    color: var(--white);
    font-size: .9rem;
    font-weight: 900;
    white-space: nowrap;
    background: linear-gradient(135deg, var(--blue), var(--turquoise-strong));
    box-shadow: 0 16px 36px rgba(8,127,228,.28);
    transition: transform .25s ease, box-shadow .25s ease;
}

.contact-chip:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 42px rgba(8,127,228,.34);
}

.desktop-top__right {
    justify-self: end;
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.lang-switch {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px;
    border-radius: 999px;
    background: rgba(8,127,228,.08);
    border: 1px solid rgba(8,127,228,.12);
}

.lang-switch__link {
    min-width: 44px;
    padding: 10px 12px;
    border-radius: 999px;
    text-align: center;
    font-size: .86rem;
    font-weight: 800;
    color: rgba(16,33,60,.7);
    transition: background .25s ease, color .25s ease, transform .25s ease;
}

.lang-switch__link.is-active,
.lang-switch__link:hover {
    color: var(--white);
    background: linear-gradient(135deg, var(--blue), var(--turquoise-strong));
    transform: translateY(-1px);
}

.mobile-top,
.mobile-menu {
    display: none;
}

.hero {
    position: relative;
    isolation: isolate;
    min-height: calc(100vh - 82px);
    overflow: hidden;
    background: var(--blue-deep);
}

.hero__video,
.hero__overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.hero__video {
    z-index: -3;
    object-fit: cover;
    object-position: center center;
    filter: saturate(1.06) contrast(1.02);
}

.hero__overlay {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(5,17,33,.72) 0%, rgba(5,17,33,.54) 34%, rgba(5,17,33,.30) 58%, rgba(5,17,33,.20) 100%),
        linear-gradient(180deg, rgba(5,17,33,.12) 0%, rgba(5,17,33,.36) 100%);
}

.hero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 82% 18%, rgba(255,255,255,.10), transparent 24%),
        radial-gradient(circle at 20% 80%, rgba(255,255,255,.05), transparent 30%);
    pointer-events: none;
}

.hero__line {
    position: absolute;
    z-index: 0;
    pointer-events: none;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 999px;
    transform: rotate(-8deg);
}

.hero__line--one {
    width: 64vw;
    height: 18vw;
    right: -15vw;
    top: 12vh;
}

.hero__line--two {
    width: 56vw;
    height: 14vw;
    left: -20vw;
    bottom: 4vh;
}

.hero__inner {
    position: relative;
    z-index: 2;
    min-height: calc(100vh - 82px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-block: 86px 58px;
}

.hero__copy {
    max-width: 760px;
}

.hero__eyebrow {
    display: inline-flex;
    align-items: center;
    padding: 10px 18px;
    margin-bottom: 24px;
    border-radius: 999px;
    color: var(--white);
    font-size: .92rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 800;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.22);
    backdrop-filter: blur(18px);
}

.hero h1 {
    margin: 0;
    max-width: 820px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(4.2rem, 7vw, 7.8rem);
    line-height: .88;
    letter-spacing: -.045em;
    text-wrap: balance;
    text-shadow: 0 18px 50px rgba(0,0,0,.28);
}

.hero p {
    margin: 28px 0 0;
    max-width: 670px;
    font-size: clamp(1.12rem, 1.55vw, 1.35rem);
    line-height: 1.65;
    font-weight: 700;
    color: rgba(255,255,255,.9);
    text-shadow: 0 10px 34px rgba(0,0,0,.24);
}

.hero__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    margin-top: 34px;
}

.btn {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 28px;
    border-radius: 999px;
    font-weight: 900;
    letter-spacing: -.01em;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}

.btn:hover {
    transform: translateY(-2px);
}

.btn--primary {
    color: var(--white);
    background: linear-gradient(135deg, var(--blue), var(--turquoise-strong));
    box-shadow: 0 18px 42px rgba(8,127,228,.38);
}




.about-doctor {
    position: relative;
    background: #ffffff;
}

.about-doctor__visual {
    position: relative;
    overflow: hidden;
    background: #08111f;
}

.about-doctor__bg {
    width: 100%;
    height: auto;
    min-height: 760px;
    display: block;
    object-fit: cover;
    object-position: center center;
}

.mobile-action-bar {
    display: none;
}

.reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .85s ease, transform .85s ease;
}

.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 1180px) {
    .about-doctor__bg {
        min-height: 700px;
        object-position: center center;
    }
}

@media (max-width: 980px) {
    .desktop-top__inner {
        grid-template-columns: auto 1fr auto;
        column-gap: 18px;
    }

    .brand--desktop img {
        width: 205px;
    }

    .desktop-top__contact {
        gap: 10px;
    }

    .contact-chip {
        padding: 0 18px;
    }
}

@media (max-width: 760px) {
    body {
        background: var(--blue-deep);
    }

    .container {
        width: min(calc(100% - 40px), var(--container));
    }

    .desktop-top {
        display: none;
    }

    .mobile-top {
        position: relative;
        z-index: 30;
        min-height: 68px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 8px 14px;
        background: linear-gradient(90deg, var(--blue-deep), var(--blue));
        box-shadow: 0 12px 36px rgba(0,0,0,.18);
    }

    .brand--mobile {
        width: 162px;
        height: 48px;
        padding: 5px 8px;
        border-radius: 3px;
        background: var(--white);
        overflow: hidden;
    }

    .brand--mobile img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .mobile-menu-toggle {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        color: var(--white);
        background: transparent;
        border: 0;
        font-family: inherit;
        font-size: .93rem;
        font-weight: 900;
        letter-spacing: .02em;
        cursor: pointer;
    }

    .mobile-menu-toggle i,
    .mobile-menu-toggle i::before,
    .mobile-menu-toggle i::after {
        display: block;
        width: 25px;
        height: 2px;
        border-radius: 99px;
        background: currentColor;
        transition: transform .25s ease, opacity .25s ease;
    }

    .mobile-menu-toggle i {
        position: relative;
    }

    .mobile-menu-toggle i::before,
    .mobile-menu-toggle i::after {
        content: '';
        position: absolute;
        left: 0;
    }

    .mobile-menu-toggle i::before {
        top: -7px;
    }

    .mobile-menu-toggle i::after {
        top: 7px;
    }

    .mobile-menu-toggle.is-open i {
        transform: rotate(45deg);
    }

    .mobile-menu-toggle.is-open i::before {
        transform: translateY(7px) rotate(90deg);
    }

    .mobile-menu-toggle.is-open i::after {
        opacity: 0;
    }

    .mobile-menu {
        position: fixed;
        z-index: 25;
        top: 68px;
        left: 0;
        right: 0;
        display: grid;
        gap: 14px;
        padding: 18px 20px 22px;
        background: rgba(255,255,255,.98);
        color: var(--ink);
        border-bottom: 1px solid rgba(8,127,228,.15);
        box-shadow: 0 24px 60px rgba(0,0,0,.18);
        transform: translateY(-120%);
        transition: transform .28s ease;
    }

    .mobile-menu.is-open {
        transform: translateY(0);
    }

    .mobile-menu > a,
    .mobile-menu__languages {
        border-radius: 18px;
        background: rgba(8,127,228,.06);
        border: 1px solid rgba(8,127,228,.1);
    }

    .mobile-menu > a {
        padding: 15px 16px;
        font-weight: 900;
    }

    .mobile-menu__cta {
        text-align: center;
    }

    .mobile-menu__languages {
        display: grid;
        grid-template-columns: 1fr 1fr;
        padding: 5px;
        gap: 6px;
    }

    .mobile-menu__languages a {
        text-align: center;
        padding: 12px;
        border-radius: 14px;
        font-weight: 900;
    }

    .mobile-menu__languages a.is-active,
    .mobile-menu__cta {
        color: var(--white) !important;
        background: linear-gradient(135deg, var(--blue), var(--turquoise-strong)) !important;
    }

    .mobile-menu__socials {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 14px;
        padding: 4px 0 2px;
    }

    .mobile-social {
        width: 46px;
        height: 46px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        color: var(--white);
        background: linear-gradient(135deg, var(--blue), var(--turquoise-strong));
        box-shadow: 0 12px 28px rgba(8,127,228,.20);
    }

    .mobile-social svg {
        width: 21px;
        height: 21px;
        fill: currentColor;
    }

    .mobile-social--muted {
        color: var(--blue);
        background: rgba(8,127,228,.08);
        box-shadow: none;
        border: 1px solid rgba(8,127,228,.12);
    }

    .about-doctor__bg {
        min-height: 760px;
        object-position: center top;
    }

    .hero {
        min-height: calc(100svh - 68px);
    }

    .hero__video {
        object-position: center center;
    }

    .hero__overlay {
        background:
            linear-gradient(180deg, rgba(5,17,33,.18) 0%, rgba(5,17,33,.14) 24%, rgba(5,17,33,.72) 76%, rgba(5,17,33,.92) 100%),
            linear-gradient(90deg, rgba(5,17,33,.54), rgba(5,17,33,.12));
    }

    .hero::after {
        background: radial-gradient(circle at 82% 20%, rgba(255,255,255,.08), transparent 24%);
    }

    .hero__line--one {
        width: 120vw;
        height: 45vw;
        right: -48vw;
        top: 11vh;
    }

    .hero__line--two {
        display: none;
    }

    .hero__inner {
        min-height: calc(100svh - 68px);
        justify-content: flex-start;
        padding-block: 64px 118px;
    }

    .hero__copy {
        max-width: 100%;
    }

    .hero__eyebrow {
        padding: 8px 12px;
        margin-bottom: 16px;
        font-size: .72rem;
        letter-spacing: .1em;
    }

    .hero h1 {
        max-width: 95%;
        font-size: clamp(3rem, 14vw, 4.8rem);
        line-height: .9;
    }

    .hero p {
        max-width: 94%;
        margin-top: 18px;
        font-size: clamp(1rem, 4.2vw, 1.16rem);
        line-height: 1.45;
    }

    .hero__actions {
        display: none;
    }

    .about-doctor {
        padding: 42px 0 0;
        background: #dce9ec;
    }

    .about-doctor::before {
        display: none;
    }

    .about-doctor__card {
        min-height: auto;
        display: flex;
        flex-direction: column;
        gap: 0;
        padding: 0 18px 24px;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .about-doctor__media {
        position: relative;
        right: auto;
        top: auto;
        order: -1;
        transform: none;
        align-self: center;
        margin-bottom: -44px;
        z-index: 4;
    }

    .about-doctor__photo-ring {
        width: min(270px, 82vw);
        padding: 8px;
        box-shadow: 0 28px 74px rgba(8, 48, 90, .20);
    }

    .about-doctor__content {
        width: 100%;
        max-width: 460px;
        margin: 0 auto;
        padding: 82px 30px 34px;
        border-radius: 22px;
        background: var(--white);
        box-shadow: 0 24px 70px rgba(8, 48, 90, .10);
    }

    .section-eyebrow {
        margin-bottom: 20px;
        font-size: .82rem;
        letter-spacing: .21em;
        line-height: 1.35;
    }

    .about-doctor__content h2 {
        font-size: clamp(2.15rem, 10vw, 3.4rem);
        line-height: 1.02;
        letter-spacing: -.055em;
    }

    .about-doctor__content > p {
        margin-top: 20px;
        font-size: .98rem;
        line-height: 1.78;
    }

    .about-doctor__link {
        margin-top: 24px;
        font-size: .98rem;
    }

    .about-stats-wrap {
        padding: 38px 0 86px;
        background: #fbfbfb;
    }

    .about-stats {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .about-stats__item strong {
        font-size: 3rem;
    }

    .about-stats__item span:last-child {
        font-size: .98rem;
    }

    .mobile-action-bar {
        position: fixed;
        z-index: 35;
        left: 0;
        right: 0;
        bottom: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        height: 54px;
        box-shadow: 0 -12px 30px rgba(0,0,0,.2);
    }

    .mobile-action-bar a {
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 900;
        letter-spacing: .03em;
        font-size: .9rem;
    }

    .mobile-action-bar a:first-child {
        color: var(--ink);
        background: var(--white);
    }

    .mobile-action-bar a:last-child {
        color: var(--white);
        background: var(--blue);
    }
}

@media (max-width: 420px) {
    .container {
        width: min(calc(100% - 30px), var(--container));
    }

    .brand--mobile {
        width: 148px;
    }

    .hero__inner {
        padding-top: 48px;
    }

    .hero h1 {
        font-size: clamp(2.65rem, 13.4vw, 4.1rem);
    }

    .about-doctor__photo-ring {
        width: min(236px, 82vw);
    }

    .about-doctor__content {
        padding: 74px 24px 30px;
    }
}


/* ===== ABOUT DOCTOR V12 OVERRIDE ===== */
.about-doctor {
    position: relative;
    padding: 0 !important;
    background: #08111f !important;
}

.about-doctor__visual {
    position: relative;
    overflow: hidden;
    background: #08111f;
    min-height: 760px;
}

.about-doctor__bg {
    width: 100%;
    min-height: 760px;
    height: 760px;
    display: block;
    object-fit: cover;
    object-position: center center;
}

.about-doctor__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(4,11,22,0.12) 0%, rgba(4,11,22,0.10) 35%, rgba(4,11,22,0.52) 58%, rgba(4,11,22,0.92) 100%),
        linear-gradient(180deg, rgba(4,11,22,0.08) 0%, rgba(4,11,22,0.18) 50%, rgba(4,11,22,0.28) 100%);
}

.about-doctor__content-wrap {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    padding-top: 48px;
    padding-bottom: 48px;
}

.about-doctor__copy {
    width: min(100%, 560px);
    color: #fff;
    text-align: left;
    margin-right: 0;
}

.about-doctor__eyebrow {
    color: rgba(255,255,255,.96);
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.18);
    margin-bottom: 18px;
}

.about-doctor__copy h2 {
    margin: 0;
    color: #fff;
    font-family: 'Playfair Display', serif;
    font-size: clamp(2.7rem, 4vw, 5rem);
    line-height: 0.94;
    letter-spacing: -.045em;
    text-wrap: balance;
    text-shadow: 0 6px 22px rgba(0,0,0,.22);
}

.about-doctor__copy p {
    margin: 20px 0 0;
    max-width: 52ch;
    color: rgba(255,255,255,.9);
    font-size: 1rem;
    line-height: 1.82;
    text-shadow: 0 3px 14px rgba(0,0,0,.18);
}

.about-logos {
    width: min(100%, 560px);
    margin-top: 34px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 26px;
}

.about-logo {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 74px;
    color: #fff;
}

.about-logo__text {
    display: grid;
    gap: 3px;
}

.about-logo__text strong,
.about-logo__text span {
    display: block;
    color: #fff;
    line-height: 1.06;
}

.about-logo__text strong {
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: .01em;
}

.about-logo__text span {
    font-size: .95rem;
    opacity: .92;
}

.about-logo__mark {
    position: relative;
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.about-logo__mark--shield {
    border: 2px solid rgba(255,255,255,.85);
    clip-path: polygon(50% 0, 92% 12%, 92% 54%, 50% 100%, 8% 54%, 8% 12%);
    font-family: 'Playfair Display', serif;
    font-size: 1.7rem;
    line-height: 1;
}

.about-logo__mark--minimed {
    border: 2px solid rgba(255,255,255,.9);
    border-radius: 999px;
    overflow: hidden;
}

.about-logo__mark--minimed::before,
.about-logo__mark--minimed::after,
.about-logo__mark--minimed i {
    content: '';
    position: absolute;
    display: block;
    background: rgba(255,255,255,.96);
    border-radius: 999px;
}

.about-logo__mark--minimed::before {
    width: 8px;
    height: 30px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.about-logo__mark--minimed::after {
    width: 30px;
    height: 8px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.about-logo__mark--minimed i {
    inset: 8px;
    background: transparent;
    border: 2px solid rgba(255,255,255,.22);
}

.about-logo__text--minimed {
    gap: 2px;
}

.about-logo__wordmark {
    display: inline-flex;
    align-items: baseline;
    gap: 0;
    font-style: italic;
    letter-spacing: -.02em;
}

.about-logo__wordmark span {
    font-weight: 500;
}

.about-logo__wordmark em {
    font-style: italic;
    font-weight: 800;
}

.about-logo__wordmark span,
.about-logo__wordmark em {
    display: inline;
    color: inherit;
    line-height: 1;
}

.about-logo__mark--squares {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
    padding: 8px;
}

.about-logo__mark--squares i {
    display: block;
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255,255,255,.88);
}

.about-logo__mark--robotic i,
.about-logo__mark--circles i,
.about-logo__mark--laparo i {
    position: absolute;
    display: block;
}

.about-logo__mark--robotic::before,
.about-logo__mark--robotic::after {
    content: '';
    position: absolute;
    height: 2px;
    background: rgba(255,255,255,.86);
    transform-origin: left center;
}

.about-logo__mark--robotic::before {
    width: 27px;
    left: 18px;
    top: 19px;
    transform: rotate(12deg);
}

.about-logo__mark--robotic::after {
    width: 22px;
    left: 18px;
    top: 33px;
    transform: rotate(-18deg);
}

.about-logo__mark--robotic i:nth-child(1),
.about-logo__mark--robotic i:nth-child(2),
.about-logo__mark--robotic i:nth-child(3) {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
}

.about-logo__mark--robotic i:nth-child(1) { left: 10px; top: 14px; }
.about-logo__mark--robotic i:nth-child(2) { right: 8px; top: 19px; }
.about-logo__mark--robotic i:nth-child(3) { left: 24px; bottom: 9px; }

.about-logo__mark--laparo::before,
.about-logo__mark--laparo::after {
    content: '';
    position: absolute;
    background: rgba(255,255,255,.88);
}

.about-logo__mark--laparo::before {
    width: 34px;
    height: 2px;
    top: 24px;
    left: 12px;
    transform: rotate(-28deg);
}

.about-logo__mark--laparo::after {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.88);
    background: transparent;
    top: 12px;
    left: 30px;
}

.about-logo__mark--laparo i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
    left: 11px;
    top: 34px;
}

.about-logo__mark--circles {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.about-logo__mark--circles i {
    position: static;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #fff;
}

.about-logo__mark--circles::after {
    content: '+';
    position: absolute;
    right: 4px;
    top: 1px;
    font-size: 1rem;
    font-weight: 700;
}

.about-logo--bariatric {
    grid-column: 1 / -1;
}

@media (max-width: 1180px) {
    .about-doctor__content-wrap {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .about-doctor__copy,
    .about-logos {
        width: min(100%, 480px);
    }

    .about-doctor__bg {
        object-position: 38% center;
    }
}

@media (max-width: 760px) {
    .about-doctor {
        background: #08111f !important;
    }

    .about-doctor__visual {
        min-height: 980px;
    }

    .about-doctor__bg {
        min-height: 980px;
        height: 980px;
        object-position: 24% center;
    }

    .about-doctor__overlay {
        background: linear-gradient(180deg, rgba(4,11,22,0.12) 0%, rgba(4,11,22,0.28) 36%, rgba(4,11,22,0.82) 62%, rgba(4,11,22,0.98) 100%);
    }

    .about-doctor__content-wrap {
        align-items: stretch;
        justify-content: flex-end;
        padding-top: 40px;
        padding-bottom: 36px;
    }

    .about-doctor__copy,
    .about-logos {
        width: 100%;
    }

    .about-doctor__copy h2 {
        font-size: clamp(2.35rem, 12vw, 4.1rem);
        max-width: 9.5ch;
    }

    .about-doctor__copy p {
        font-size: .98rem;
        line-height: 1.72;
        max-width: none;
    }

    .about-logos {
        margin-top: 26px;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .about-logo {
        min-height: 60px;
        gap: 12px;
    }

    .about-logo__mark {
        flex-basis: 50px;
        width: 50px;
        height: 50px;
    }

    .about-logo__text strong {
        font-size: 1rem;
    }

    .about-logo__text span {
        font-size: .88rem;
    }
}

@media (max-width: 420px) {
    .about-doctor__visual {
        min-height: 1040px;
    }

    .about-doctor__bg {
        min-height: 1040px;
        height: 1040px;
        object-position: 26% center;
    }

    .about-doctor__content-wrap {
        padding-bottom: 92px;
    }
}


/* ===== ABOUT DOCTOR V13 FIX FULLSCREEN ===== */
.about-doctor__visual {
    aspect-ratio: 1672 / 941;
    min-height: clamp(860px, 56.25vw, 1080px);
}

.about-doctor__bg {
    height: 100%;
    min-height: 0;
    object-position: center center;
}

.about-doctor__content-wrap {
    justify-content: center;
    padding-top: clamp(34px, 4vw, 62px);
    padding-bottom: clamp(34px, 4vw, 62px);
}

.about-doctor__copy,
.about-logos {
    width: min(100%, 525px);
}

.about-doctor__copy h2 {
    font-size: clamp(2.55rem, 4.4vw, 4.95rem);
    max-width: 9.8ch;
}

.about-doctor__copy p {
    max-width: 50ch;
    font-size: 1rem;
    line-height: 1.72;
}

.about-logos {
    margin-top: 28px;
    gap: 16px 24px;
}

.about-logo {
    align-items: center;
    min-height: 64px;
}

.about-logo__mark {
    flex-basis: 54px;
    width: 54px;
    height: 54px;
    opacity: .98;
}

.about-logo__text strong {
    font-size: 1.06rem;
}

.about-logo__text span {
    font-size: .92rem;
}

.about-logo__mark--shield,
.about-logo__mark--squares i,
.about-logo__mark--robotic::before,
.about-logo__mark--robotic::after,
.about-logo__mark--laparo::before,
.about-logo__mark--laparo::after {
    filter: drop-shadow(0 2px 10px rgba(255,255,255,.08));
}

@media (min-width: 1600px) {
    .about-doctor__content-wrap {
        padding-right: 10px;
    }

    .about-doctor__copy,
    .about-logos {
        width: min(100%, 560px);
    }
}

@media (max-width: 1280px) {
    .about-doctor__visual {
        min-height: clamp(820px, 60vw, 980px);
    }

    .about-doctor__copy,
    .about-logos {
        width: min(100%, 470px);
    }

    .about-doctor__copy h2 {
        font-size: clamp(2.35rem, 4.7vw, 4.3rem);
    }
}

@media (max-width: 980px) {
    .about-doctor__visual {
        min-height: 900px;
    }

    .about-doctor__bg {
        object-position: 36% center;
    }

    .about-doctor__content-wrap {
        padding-top: 44px;
        padding-bottom: 44px;
    }

    .about-doctor__copy,
    .about-logos {
        width: min(100%, 430px);
    }
}

@media (max-width: 760px) {
    .about-doctor__visual {
        aspect-ratio: auto;
        min-height: 1060px;
    }

    .about-doctor__bg {
        height: 1060px;
        object-position: 28% center;
    }

    .about-doctor__copy,
    .about-logos {
        width: 100%;
    }

    .about-doctor__copy h2 {
        max-width: 9ch;
        font-size: clamp(2.2rem, 11vw, 4rem);
    }
}


/* ===== ABOUT DOCTOR V14 REFINEMENT ===== */
.about-doctor__content-wrap {
    padding-right: clamp(34px, 5vw, 110px);
}

.about-doctor__copy,
.about-logos {
    width: min(100%, 500px);
}

.about-title--mobile,
.about-copy--mobile {
    display: none;
}

.about-logo--panama {
    grid-column: 1 / -1;
}

.about-logo__mark--panama {
    border: 2px solid rgba(255,255,255,.88);
    clip-path: polygon(50% 0, 92% 12%, 92% 58%, 50% 100%, 8% 58%, 8% 12%);
    font-family: 'Playfair Display', serif;
    font-size: 1.7rem;
    line-height: 1;
}

.about-logo__mark--panama::before,
.about-logo__mark--panama::after {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 78px;
    max-width: calc(100% + 18px);
    height: 1.5px;
    background: rgba(255,255,255,.7);
}

.about-logo__mark--panama::before {
    bottom: -10px;
}

.about-logo__mark--panama::after {
    bottom: -17px;
}

.about-logo__mark--panama b {
    font-weight: 400;
}

@media (min-width: 1400px) {
    .about-doctor__content-wrap {
        padding-right: clamp(60px, 8vw, 150px);
    }

    .about-doctor__copy,
    .about-logos {
        width: min(100%, 520px);
    }
}

@media (max-width: 980px) {
    .about-doctor__content-wrap {
        padding-right: clamp(18px, 4vw, 36px);
    }
}

@media (max-width: 760px) {
    .about-doctor__content-wrap {
        padding-right: 0;
    }

    .about-title--desktop,
    .about-copy--desktop {
        display: none;
    }

    .about-title--mobile,
    .about-copy--mobile {
        display: block;
    }

    .about-doctor__copy h2 {
        max-width: 7.4ch;
        font-size: clamp(2rem, 10.5vw, 3.5rem);
        line-height: .93;
    }

    .about-copy--mobile {
        margin-top: 16px;
        max-width: 26ch;
        font-size: .98rem;
        line-height: 1.6;
    }

    .about-logos {
        margin-top: 24px;
        gap: 12px;
    }

    .about-logo {
        min-height: 54px;
    }

    .about-logo__mark {
        flex-basis: 42px;
        width: 42px;
        height: 42px;
    }

    .about-logo__mark--shield,
    .about-logo__mark--panama {
        font-size: 1.28rem;
    }

    .about-logo__mark--squares i {
        width: 13px;
        height: 13px;
    }

    .about-logo__text strong {
        font-size: .94rem;
    }

    .about-logo__text span {
        font-size: .82rem;
    }

    .about-logo__mark--panama::before,
    .about-logo__mark--panama::after {
        width: 56px;
    }
}


/* ===== ABOUT DOCTOR V15 SHIFT RIGHT ===== */
@media (min-width: 981px) {
    .about-doctor__content-wrap {
        padding-right: clamp(18px, 2.2vw, 44px);
    }

    .about-doctor__copy,
    .about-logos {
        width: min(100%, 455px);
    }

    .about-doctor__copy {
        margin-left: auto;
    }

    .about-doctor__copy h2 {
        max-width: 8.3ch;
    }

    .about-doctor__copy p {
        max-width: 44ch;
    }
}


/* ===== DOCTOR STATS + ABOUT DOCTOR V16 ===== */
.doctor-stats {
    position: relative;
    background:
        linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
    border-top: 1px solid rgba(8,127,228,.08);
    border-bottom: 1px solid rgba(8,127,228,.08);
    overflow: hidden;
}

.doctor-stats::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 14% 20%, rgba(8,127,228,.06), transparent 24%),
        radial-gradient(circle at 82% 50%, rgba(14,207,214,.08), transparent 26%),
        linear-gradient(120deg, rgba(8,127,228,.03) 0%, transparent 28%, transparent 72%, rgba(14,207,214,.04) 100%);
    pointer-events: none;
}

.doctor-stats .container {
    position: relative;
    z-index: 1;
}

.doctor-stats__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.doctor-stat {
    position: relative;
    padding: 42px 26px 38px;
    text-align: center;
}

.doctor-stat:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: 1px;
    height: 86px;
    transform: translateY(-50%);
    background: linear-gradient(180deg, rgba(8,127,228,0), rgba(8,127,228,.18), rgba(8,127,228,0));
}

.doctor-stat__value {
    display: block;
    margin-bottom: 12px;
    font-size: clamp(2.6rem, 3.9vw, 4.15rem);
    line-height: .95;
    letter-spacing: -.05em;
    font-weight: 800;
    color: var(--blue);
}

.doctor-stat p {
    margin: 0 auto;
    max-width: 22ch;
    color: rgba(16,33,60,.75);
    font-size: 1.03rem;
    line-height: 1.45;
    font-weight: 700;
}

.about-logo--bariatric,
.about-logo--panama {
    grid-column: auto;
}

@media (min-width: 981px) {
    .about-doctor__content-wrap {
        width: min(calc(100% - 28px), 1440px);
        padding-right: clamp(8px, 1.2vw, 24px);
    }

    .about-doctor__copy,
    .about-logos {
        width: min(100%, 525px);
    }

    .about-doctor__copy h2 {
        max-width: 9.1ch;
    }

    .about-doctor__copy p {
        max-width: 48ch;
    }
}

@media (max-width: 980px) {
    .doctor-stats__grid {
        grid-template-columns: 1fr;
    }

    .doctor-stat {
        padding: 28px 20px;
    }

    .doctor-stat:not(:last-child)::after {
        right: 20px;
        left: 20px;
        top: auto;
        bottom: 0;
        width: auto;
        height: 1px;
        transform: none;
        background: linear-gradient(90deg, rgba(8,127,228,0), rgba(8,127,228,.18), rgba(8,127,228,0));
    }
}

@media (max-width: 760px) {
    .doctor-stat__value {
        font-size: clamp(2.5rem, 12vw, 3.5rem);
    }

    .doctor-stat p {
        font-size: .98rem;
        max-width: 24ch;
    }

    .about-doctor__visual {
        min-height: 1120px;
    }

    .about-doctor__bg {
        height: 1120px;
        min-height: 1120px;
        object-position: 42% top;
    }

    .about-doctor__overlay {
        background:
            linear-gradient(180deg, rgba(4,11,22,0.04) 0%, rgba(4,11,22,0.12) 18%, rgba(4,11,22,0.70) 56%, rgba(4,11,22,0.97) 100%),
            linear-gradient(90deg, rgba(4,11,22,0.78) 0%, rgba(4,11,22,0.50) 34%, rgba(4,11,22,0.18) 72%, rgba(4,11,22,0.08) 100%);
    }

    .about-doctor__content-wrap {
        padding-top: 34px;
        padding-bottom: 44px;
    }

    .about-doctor__copy h2 {
        max-width: 6.8ch;
        font-size: clamp(1.95rem, 10vw, 3.35rem);
    }

    .about-copy--mobile {
        max-width: 18.5ch;
        font-size: .96rem;
        line-height: 1.58;
    }

    .about-logos {
        margin-top: 18px;
        gap: 10px;
    }
}

@media (max-width: 420px) {
    .about-doctor__visual {
        min-height: 1140px;
    }

    .about-doctor__bg {
        height: 1140px;
        min-height: 1140px;
        object-position: 41% top;
    }
}

/* ===== SERVICES SHOWCASE V2 ===== */
.services-showcase {
    position: relative;
    overflow: hidden;
    padding: clamp(92px, 8vw, 132px) 0 clamp(100px, 8vw, 146px);
    color: var(--ink);
    background:
        radial-gradient(circle at 10% 14%, rgba(88,220,232,.08), transparent 24%),
        radial-gradient(circle at 88% 12%, rgba(8,127,228,.06), transparent 24%),
        linear-gradient(180deg, #ffffff 0%, #f9fcff 54%, #ffffff 100%);
}

.services-showcase::before {
    content: '';
    position: absolute;
    inset: 44px clamp(18px, 3vw, 44px) auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(8,127,228,.18), rgba(88,220,232,.22), transparent);
    pointer-events: none;
}

.services-showcase .container {
    position: relative;
    z-index: 1;
}

.services-showcase__intro {
    display: grid;
    grid-template-columns: minmax(0, .96fr) minmax(320px, .8fr);
    align-items: end;
    gap: clamp(30px, 6vw, 96px);
    margin-bottom: clamp(34px, 4vw, 52px);
}

.services-showcase__eyebrow {
    color: var(--blue);
    background: rgba(8,127,228,.07);
    border: 1px solid rgba(8,127,228,.12);
    margin-bottom: 22px;
}

.services-showcase__heading h2 {
    margin: 0;
    max-width: 800px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(3.15rem, 5.5vw, 6.4rem);
    line-height: .9;
    letter-spacing: -.05em;
    color: var(--navy);
    text-wrap: balance;
}

.services-showcase__intro > p {
    margin: 0 0 8px;
    max-width: 600px;
    color: rgba(16,33,60,.68);
    font-size: clamp(1rem, 1.18vw, 1.14rem);
    line-height: 1.82;
    font-weight: 650;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(20px, 2vw, 28px);
    align-items: stretch;
}

.service-card {
    position: relative;
    min-height: 460px;
    overflow: hidden;
    border-radius: clamp(24px, 2.1vw, 34px);
    background: #0c2038;
    cursor: default;
    isolation: isolate;
    box-shadow: 0 24px 70px rgba(8, 48, 90, .11);
    border: 1px solid rgba(11, 63, 112, .08);
    transition: transform .45s ease, box-shadow .45s ease, border-color .45s ease;
}

.service-card__media,
.service-card__media img,
.service-card__shade {
    position: absolute;
    inset: 0;
}

.service-card__media {
    z-index: -3;
}

.service-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.02);
    filter: saturate(.92) brightness(.9);
    transition: transform .7s ease, filter .55s ease;
}

.service-card__shade {
    z-index: -2;
    background:
        linear-gradient(180deg, rgba(7,30,54,.12) 0%, rgba(8,127,228,.16) 36%, rgba(8,53,96,.42) 68%, rgba(7,26,49,.78) 100%),
        linear-gradient(135deg, rgba(88,220,232,.08) 0%, rgba(8,127,228,.14) 50%, rgba(7,26,49,.24) 100%);
    transition: opacity .45s ease, background .45s ease;
}

.service-card::before {
    content: '';
    position: absolute;
    inset: 16px;
    z-index: -1;
    border-radius: calc(clamp(24px, 2.1vw, 34px) - 8px);
    border: 1px solid rgba(255,255,255,.18);
    pointer-events: none;
    opacity: .72;
    transition: inset .45s ease, opacity .45s ease;
}

.service-card__content {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    padding: 28px 24px 30px;
    color: var(--white);
    text-align: center;
}

.service-card__content span {
    margin-bottom: 12px;
    color: rgba(255,255,255,.8);
    font-size: .76rem;
    letter-spacing: .32em;
    font-weight: 900;
}

.service-card__content h3 {
    margin: 0;
    max-width: 15ch;
    color: #ffffff;
    font-size: clamp(1.14rem, 1.3vw, 1.45rem);
    line-height: 1.16;
    letter-spacing: .13em;
    text-transform: uppercase;
    font-weight: 900;
    text-shadow: 0 10px 26px rgba(0,0,0,.28);
}

.service-card__content p {
    margin: 12px auto 0;
    max-width: 30ch;
    color: rgba(255,255,255,.88);
    font-size: .93rem;
    line-height: 1.56;
    font-weight: 650;
    text-shadow: 0 6px 22px rgba(0,0,0,.22);
}

.service-card:hover,
.service-card:focus-visible,
.service-card:active {
    transform: translateY(-8px);
    box-shadow: 0 34px 86px rgba(8, 48, 90, .18);
    border-color: rgba(88,220,232,.26);
}

.service-card:hover .service-card__media img,
.service-card:focus-visible .service-card__media img,
.service-card:active .service-card__media img {
    transform: scale(1.07);
    filter: saturate(1.02) brightness(1);
}

.service-card:hover .service-card__shade,
.service-card:focus-visible .service-card__shade,
.service-card:active .service-card__shade {
    opacity: .15;
}

.service-card:hover::before,
.service-card:focus-visible::before,
.service-card:active::before {
    inset: 12px;
    opacity: .95;
}

@media (max-width: 1080px) {
    .services-showcase__intro {
        grid-template-columns: 1fr;
        gap: 22px;
        align-items: start;
    }

    .services-showcase__intro > p {
        max-width: 720px;
    }

    .services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .services-showcase {
        padding: 70px 0 80px;
    }

    .services-showcase::before {
        top: 28px;
    }

    .services-showcase__intro {
        margin-bottom: 28px;
    }

    .services-showcase__eyebrow {
        margin-bottom: 16px;
    }

    .services-showcase__heading h2 {
        font-size: clamp(2.4rem, 11.6vw, 3.9rem);
        line-height: .94;
        max-width: 10.5ch;
    }

    .services-showcase__intro > p {
        font-size: .98rem;
        line-height: 1.7;
        max-width: 35ch;
    }

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

    .service-card {
        min-height: 420px;
        border-radius: 28px;
    }

    .service-card::before {
        inset: 14px;
        border-radius: 20px;
    }

    .service-card__content {
        padding: 30px 22px 32px;
    }

    .service-card__content h3 {
        font-size: 1.12rem;
        letter-spacing: .11em;
        max-width: 18ch;
    }

    .service-card__content p {
        max-width: 29ch;
        font-size: .9rem;
    }
}

@media (max-width: 420px) {
    .services-showcase {
        padding-top: 62px;
    }

    .service-card {
        min-height: 390px;
    }

    .service-card__content {
        padding-inline: 18px;
    }
}



/* ===== PATIENT STORIES CAROUSEL V2 ===== */
.patient-stories {
    position: relative;
    overflow: hidden;
    padding: clamp(84px, 8vw, 126px) 0 clamp(92px, 8vw, 132px);
    color: var(--navy);
    background:
        radial-gradient(circle at 12% 18%, rgba(255,255,255,.72), transparent 28%),
        radial-gradient(circle at 82% 78%, rgba(8,127,228,.08), transparent 30%),
        linear-gradient(135deg, #e9fbff 0%, #d7f5fb 48%, #eefcff 100%);
}

.patient-stories::before {
    content: '';
    position: absolute;
    inset: 38px clamp(20px, 3vw, 52px) auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(8,127,228,.16), rgba(88,220,232,.38), transparent);
}

.patient-stories__head {
    max-width: 880px;
    margin: 0 auto clamp(34px, 4vw, 54px);
    text-align: center;
}

.patient-stories__eyebrow {
    margin-bottom: 18px;
    color: var(--blue);
    background: rgba(255,255,255,.62);
    border: 1px solid rgba(8,127,228,.12);
}

.patient-stories__head h2 {
    margin: 0;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(3rem, 5.2vw, 5.8rem);
    line-height: .92;
    letter-spacing: -.05em;
    color: var(--navy);
}

.patient-stories__head p {
    margin: 22px auto 0;
    max-width: 760px;
    color: rgba(16,33,60,.68);
    font-size: clamp(1rem, 1.2vw, 1.12rem);
    line-height: 1.78;
    font-weight: 650;
}

.patient-stories__carousel {
    position: relative;
    padding: 0 clamp(48px, 5vw, 74px);
}

.patient-stories__slides {
    position: relative;
    min-height: clamp(580px, 43vw, 690px);
}

.patient-story {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: minmax(540px, 1.28fr) minmax(300px, .72fr);
    gap: clamp(34px, 5vw, 76px);
    align-items: center;
    padding: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(24px);
    transition: opacity .48s ease, transform .48s ease, visibility .48s ease;
    pointer-events: none;
}

.patient-story.is-active {
    z-index: 2;
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
    pointer-events: auto;
}

.patient-story.is-entering.is-next {
    transform: translateX(34px);
}

.patient-story.is-entering.is-prev {
    transform: translateX(-34px);
}

.patient-story.is-leaving {
    z-index: 1;
    opacity: 0;
    visibility: visible;
    pointer-events: none;
}

.patient-story.is-leaving.is-prev {
    transform: translateX(-34px);
}

.patient-story.is-leaving.is-next {
    transform: translateX(34px);
}

.patient-story__media {
    position: relative;
    overflow: hidden;
    border-radius: clamp(24px, 2.6vw, 38px);
    background: rgba(255,255,255,.38);
    box-shadow: 0 34px 92px rgba(8,48,90,.18);
    height: clamp(520px, 38vw, 660px);
    width: 100%;
}

.patient-story__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transform: scale(1.01);
    transition: transform .55s ease, filter .55s ease;
}

.patient-story.is-active .patient-story__media img {
    transform: scale(1.02);
}

.patient-story__media::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(6,25,47,0) 56%, rgba(6,25,47,.42) 100%),
        linear-gradient(135deg, rgba(8,127,228,.08) 0%, rgba(88,220,232,.03) 48%, rgba(6,25,47,.06) 100%);
    pointer-events: none;
}

.patient-story__media span {
    position: absolute;
    left: clamp(18px, 2vw, 26px);
    bottom: clamp(18px, 2vw, 26px);
    z-index: 2;
    padding: 11px 16px;
    border-radius: 999px;
    color: #ffffff;
    background: rgba(5,61,109,.76);
    backdrop-filter: blur(12px);
    font-size: .74rem;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 900;
}

.patient-story__copy {
    position: relative;
    max-width: 560px;
    padding: clamp(18px, 2vw, 28px) 0;
}

.patient-story__copy::before {
    content: '';
    position: absolute;
    left: -28px;
    top: 28px;
    bottom: 28px;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(8,127,228,.24), rgba(88,220,232,.38), transparent);
}

.patient-story__copy small {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    margin-bottom: 22px;
    border-radius: 50%;
    color: var(--blue);
    background: rgba(255,255,255,.72);
    box-shadow: 0 14px 34px rgba(8,48,90,.10);
    font-weight: 900;
    letter-spacing: .14em;
}

.patient-story__copy h3 {
    margin: 0;
    max-width: 570px;
    color: var(--navy);
    font-size: clamp(1.85rem, 3vw, 3.35rem);
    line-height: 1.08;
    letter-spacing: -.03em;
    font-weight: 800;
}

.patient-story__copy p {
    margin: 22px 0 0;
    max-width: 540px;
    color: rgba(16,33,60,.72);
    font-size: clamp(1rem, 1.16vw, 1.14rem);
    line-height: 1.75;
    font-weight: 650;
}

.patient-story__copy em {
    display: block;
    margin-top: 24px;
    color: rgba(16,33,60,.56);
    font-size: .9rem;
    line-height: 1.5;
    font-style: normal;
    font-weight: 750;
}

.patient-stories__arrow {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    color: var(--blue);
    background: rgba(255,255,255,.86);
    box-shadow: 0 16px 38px rgba(8,48,90,.12);
    cursor: pointer;
    transform: translateY(-50%);
    transition: transform .3s ease, background .3s ease, color .3s ease, box-shadow .3s ease;
}

.patient-stories__arrow svg {
    display: block;
    width: 24px;
    height: 24px;
    fill: currentColor;
}

.patient-stories__arrow:hover {
    color: #ffffff;
    background: var(--blue);
    transform: translateY(-50%) scale(1.06);
    box-shadow: 0 20px 44px rgba(8,127,228,.26);
}

.patient-stories__arrow--prev {
    left: 0;
}

.patient-stories__arrow--next {
    right: 0;
}

.patient-stories__dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    margin-top: 30px;
}

.patient-stories__dots button {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(8,127,228,.24);
    cursor: pointer;
    transition: width .3s ease, background .3s ease;
}

.patient-stories__dots button.is-active {
    width: 34px;
    background: var(--blue);
}

.patient-stories__cta,
.gallery-module__actions,
.feature-module__actions,
.faq-clean__actions {
    display: flex;
    margin-top: 34px;
}

.patient-stories__cta,
.gallery-module__actions,
.faq-clean__actions {
    justify-content: center;
}

.feature-module__actions {
    justify-content: flex-start;
}

.patient-stories__cta .btn,
.gallery-module__actions .btn,
.feature-module__actions .btn,
.faq-clean__actions .btn,
.faq-clean-home__cta a {
    text-transform: uppercase;
    letter-spacing: .06em;
}

@media (max-width: 1080px) {
    .patient-stories__carousel {
        padding: 0;
    }

    .patient-stories__slides {
        min-height: auto;
    }

    .patient-story {
        position: relative;
        display: none;
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 0;
        transform: translateY(16px);
    }

    .patient-story.is-active {
        display: grid;
        transform: translateY(0);
    }

    .patient-story.is-leaving {
        display: none;
    }

    .patient-story__media {
        height: auto;
        aspect-ratio: 1 / 1;
        max-width: 720px;
        margin: 0 auto;
    }

    .patient-story__copy {
        max-width: 720px;
        padding: 0 8px 8px;
        margin: 0 auto;
        text-align: center;
    }

    .patient-story__copy::before {
        display: none;
    }

    .patient-story__copy small {
        width: 48px;
        height: 48px;
        margin-bottom: 16px;
    }

    .patient-stories__arrow {
        top: auto;
        bottom: -22px;
        transform: none;
    }

    .patient-stories__arrow:hover {
        transform: scale(1.05);
    }

    .patient-stories__arrow--prev {
        left: 18px;
    }

    .patient-stories__arrow--next {
        right: 18px;
    }

    .patient-stories__dots {
        margin-top: 42px;
    }
}

@media (max-width: 520px) {
    .patient-stories {
        padding: 66px 0 86px;
    }

    .patient-stories__head {
        text-align: left;
        margin-bottom: 28px;
    }

    .patient-stories__head h2 {
        font-size: clamp(2.45rem, 11vw, 3.45rem);
    }

    .patient-stories__head p {
        font-size: .96rem;
        line-height: 1.7;
    }

    .patient-story__media {
        border-radius: 24px;
    }

    .patient-story__copy h3 {
        font-size: 1.65rem;
    }

    .patient-story__copy p {
        font-size: .96rem;
        line-height: 1.68;
    }
}

/* ===== PATIENT REVIEWS TESTIMONIALS V1 ===== */
.patient-reviews {
    position: relative;
    min-height: clamp(720px, 68vw, 850px);
    overflow: hidden;
    color: #ffffff;
    background: #061c33;
    isolation: isolate;
}

.patient-reviews__picture,
.patient-reviews__bg,
.patient-reviews__overlay {
    position: absolute;
    inset: 0;
}

.patient-reviews__picture {
    z-index: -3;
}

.patient-reviews__bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.02);
    filter: saturate(1.03) contrast(1.02);
}

.patient-reviews__overlay {
    z-index: -2;
    background:
        radial-gradient(circle at 82% 20%, rgba(88,220,232,.22), transparent 34%),
        linear-gradient(115deg, rgba(5,25,45,.82) 0%, rgba(5,25,45,.68) 34%, rgba(0,130,150,.35) 58%, rgba(0,0,0,.58) 100%),
        linear-gradient(180deg, rgba(5,25,45,.30) 0%, rgba(5,25,45,.80) 100%);
}

.patient-reviews__inner {
    min-height: inherit;
    display: grid;
    grid-template-rows: auto 1fr;
    align-items: center;
    padding-top: clamp(74px, 7vw, 112px);
    padding-bottom: clamp(66px, 7vw, 106px);
}

.patient-reviews__intro {
    width: min(100%, 720px);
}

.patient-reviews__eyebrow {
    display: inline-flex;
    align-items: center;
    margin-bottom: 20px;
    color: var(--turquoise);
    font-size: .76rem;
    letter-spacing: .22em;
    text-transform: uppercase;
    font-weight: 900;
}

.patient-reviews__intro h2 {
    margin: 0;
    max-width: 700px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(3.2rem, 6.1vw, 7rem);
    line-height: .9;
    letter-spacing: -.05em;
    color: #ffffff;
    text-shadow: 0 22px 70px rgba(0,0,0,.35);
}

.patient-reviews__intro p {
    margin: 22px 0 0;
    max-width: 470px;
    color: rgba(255,255,255,.86);
    font-size: clamp(1rem, 1.2vw, 1.18rem);
    line-height: 1.75;
    font-weight: 650;
}

.patient-reviews__intro::after {
    content: '';
    display: block;
    width: 72px;
    height: 2px;
    margin-top: 24px;
    background: linear-gradient(90deg, var(--turquoise), transparent);
}

.patient-reviews__carousel {
    position: relative;
    margin-top: clamp(34px, 5vw, 64px);
    min-height: clamp(355px, 33vw, 440px);
}

.patient-reviews__viewport {
    position: relative;
    min-height: clamp(330px, 31vw, 410px);
    overflow: visible;
}

.patient-review-card {
    position: absolute;
    top: 50%;
    left: 50%;
    width: min(620px, 47vw);
    min-height: 330px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: clamp(34px, 3.8vw, 56px) clamp(30px, 4vw, 62px);
    text-align: center;
    border-radius: 28px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.25);
    box-shadow: 0 32px 90px rgba(0,0,0,.28);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    opacity: 0;
    transform: translate(-50%, -50%) scale(.72);
    transition: transform .6s cubic-bezier(.22,.8,.24,1), opacity .6s ease, filter .6s ease;
    pointer-events: none;
    will-change: transform, opacity;
}

.patient-review-card.is-active {
    z-index: 5;
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    pointer-events: auto;
}

.patient-review-card.is-prev {
    z-index: 3;
    opacity: .48;
    filter: blur(.2px);
    transform: translate(calc(-50% - min(470px, 35vw)), -50%) scale(.78);
}

.patient-review-card.is-next {
    z-index: 3;
    opacity: .48;
    filter: blur(.2px);
    transform: translate(calc(-50% + min(470px, 35vw)), -50%) scale(.78);
}

.patient-review-card.is-far {
    z-index: 1;
    opacity: 0;
    transform: translate(-50%, -50%) scale(.62);
}

.patient-review-card__stars {
    margin-bottom: 24px;
    color: #f6c94d;
    font-size: clamp(1.25rem, 1.6vw, 1.65rem);
    letter-spacing: .18em;
    text-shadow: 0 10px 30px rgba(246,201,77,.22);
}

.patient-review-card p {
    margin: 0;
    max-width: 820px;
    color: rgba(255,255,255,.94);
    font-size: clamp(1.18rem, 1.95vw, 2rem);
    line-height: 1.55;
    font-weight: 650;
    text-shadow: 0 12px 42px rgba(0,0,0,.32);
}

.patient-review-card__person {
    display: grid;
    justify-items: center;
    gap: 10px;
    margin-top: 28px;
}

.patient-review-card__person span {
    width: 54px;
    height: 2px;
    border-radius: 999px;
    background: var(--turquoise);
}

.patient-review-card__person strong {
    color: #ffffff;
    font-size: clamp(1.04rem, 1.1vw, 1.2rem);
    letter-spacing: .02em;
    font-weight: 900;
}

.patient-review-card__person small {
    color: rgba(255,255,255,.72);
    font-size: .86rem;
    line-height: 1.4;
    font-weight: 700;
}

.patient-reviews__arrow {
    position: absolute;
    top: 50%;
    z-index: 7;
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    padding: 0;
    border: 1px solid rgba(88,220,232,.38);
    border-radius: 999px;
    color: #ffffff;
    background: rgba(0,146,170,.26);
    box-shadow: 0 20px 54px rgba(0,0,0,.26);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    cursor: pointer;
    transform: translateY(-50%);
    transition: transform .3s ease, background .3s ease, border-color .3s ease;
}

.patient-reviews__arrow svg {
    display: block;
    width: 24px;
    height: 24px;
    fill: currentColor;
}

.patient-reviews__arrow:hover {
    background: rgba(0,188,210,.48);
    border-color: rgba(255,255,255,.56);
    transform: translateY(-50%) scale(1.06);
}

.patient-reviews__arrow--prev {
    left: clamp(8px, 1vw, 18px);
}

.patient-reviews__arrow--next {
    right: clamp(8px, 1vw, 18px);
}

.patient-reviews__dots {
    position: relative;
    z-index: 8;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 11px;
    margin-top: 24px;
}

.patient-reviews__dots button {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255,255,255,.56);
    cursor: pointer;
    transition: width .3s ease, background .3s ease, opacity .3s ease;
}

.patient-reviews__dots button.is-active {
    width: 34px;
    background: var(--turquoise);
}

@media (max-width: 980px) {
    .patient-reviews {
        min-height: 740px;
    }

    .patient-reviews__inner {
        align-items: start;
        padding-top: 72px;
        padding-bottom: 62px;
    }

    .patient-reviews__intro {
        text-align: left;
    }

    .patient-reviews__intro h2 {
        max-width: 9.5ch;
        font-size: clamp(3rem, 12vw, 4.65rem);
    }

    .patient-reviews__intro p {
        max-width: 340px;
        font-size: 1rem;
        line-height: 1.7;
    }

    .patient-reviews__carousel {
        min-height: 405px;
        margin-top: 36px;
    }

    .patient-reviews__viewport {
        min-height: 360px;
    }

    .patient-review-card,
    .patient-review-card.is-prev,
    .patient-review-card.is-next,
    .patient-review-card.is-far {
        width: min(100%, 430px);
        min-height: 350px;
        opacity: 0;
        transform: translate(-50%, -50%) scale(.9);
        pointer-events: none;
        filter: none;
    }

    .patient-review-card.is-active {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
        pointer-events: auto;
    }

    .patient-review-card p {
        font-size: clamp(1.02rem, 4.5vw, 1.22rem);
        line-height: 1.7;
    }

    .patient-reviews__arrow {
        top: auto;
        bottom: -4px;
        width: 46px;
        height: 46px;
        transform: none;
    }

    .patient-reviews__arrow:hover {
        transform: scale(1.04);
    }

    .patient-reviews__arrow--prev {
        left: 0;
    }

    .patient-reviews__arrow--next {
        right: 0;
    }

    .patient-reviews__dots {
        margin-top: 34px;
    }
}

@media (max-width: 520px) {
    .patient-reviews {
        min-height: 760px;
    }

    .patient-reviews__bg {
        object-position: center top;
    }

    .patient-reviews__overlay {
        background:
            radial-gradient(circle at 78% 14%, rgba(88,220,232,.18), transparent 34%),
            linear-gradient(180deg, rgba(5,25,45,.76) 0%, rgba(5,25,45,.66) 45%, rgba(0,130,150,.30) 72%, rgba(0,0,0,.62) 100%);
    }

    .patient-reviews__inner {
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .patient-reviews__eyebrow {
        margin-bottom: 14px;
        font-size: .68rem;
    }

    .patient-reviews__intro h2 {
        font-size: clamp(2.7rem, 13vw, 3.65rem);
    }

    .patient-reviews__intro p {
        max-width: 300px;
        margin-top: 16px;
        font-size: .95rem;
    }

    .patient-reviews__intro::after {
        margin-top: 18px;
    }

    .patient-review-card {
        min-height: 340px;
        padding: 30px 24px;
        border-radius: 24px;
    }

    .patient-review-card__stars {
        margin-bottom: 18px;
        font-size: 1.04rem;
    }

    .patient-review-card__person {
        margin-top: 20px;
    }
}


/* ===== BMI CALCULATOR V1 ===== */
.bmi-calculator {
    position: relative;
    overflow: hidden;
    padding: clamp(82px, 7.5vw, 128px) 0 clamp(88px, 7.8vw, 136px);
    background:
        radial-gradient(circle at 10% 18%, rgba(88,220,232,.09), transparent 28%),
        radial-gradient(circle at 90% 18%, rgba(8,127,228,.06), transparent 26%),
        #ffffff;
    color: var(--ink);
}

.bmi-calculator::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 38px;
    width: min(920px, 82vw);
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, transparent, rgba(8,127,228,.18), rgba(88,220,232,.24), transparent);
}

.bmi-calculator__intro {
    margin: 0 auto clamp(34px, 4vw, 54px);
    max-width: 840px;
    text-align: center;
}

.bmi-calculator__eyebrow {
    margin-bottom: 18px;
    color: var(--blue);
    background: rgba(8,127,228,.07);
    border: 1px solid rgba(8,127,228,.12);
}

.bmi-calculator__intro h2 {
    margin: 0;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(2.9rem, 5.4vw, 6.25rem);
    line-height: .92;
    letter-spacing: -.05em;
    color: var(--navy);
}

.bmi-calculator__intro p {
    margin: 18px auto 0;
    max-width: 680px;
    color: rgba(16,33,60,.68);
    font-size: clamp(1rem, 1.18vw, 1.15rem);
    line-height: 1.78;
    font-weight: 650;
}

.bmi-calculator__panel {
    display: grid;
    grid-template-columns: minmax(310px, .92fr) minmax(340px, 1.08fr);
    gap: clamp(22px, 3vw, 34px);
    align-items: stretch;
    max-width: 1180px;
    margin: 0 auto;
}

.bmi-calculator__form-card,
.bmi-calculator__result-card {
    border-radius: clamp(28px, 3vw, 42px);
    box-shadow: 0 28px 90px rgba(8, 48, 90, .13);
}

.bmi-calculator__form-card {
    position: relative;
    overflow: hidden;
    padding: clamp(28px, 3.4vw, 48px);
    background:
        radial-gradient(circle at 92% 10%, rgba(88,220,232,.18), transparent 28%),
        linear-gradient(145deg, #072e55 0%, #061e38 100%);
    color: #ffffff;
    border: 1px solid rgba(255,255,255,.14);
}

.bmi-calculator__form-card::after {
    content: '';
    position: absolute;
    inset: 18px;
    border-radius: 28px;
    border: 1px solid rgba(255,255,255,.10);
    pointer-events: none;
}

.bmi-calculator__form-head {
    position: relative;
    z-index: 1;
    margin-bottom: 28px;
}

.bmi-calculator__form-head span {
    display: inline-flex;
    margin-bottom: 14px;
    color: rgba(88,220,232,.96);
    font-size: .76rem;
    line-height: 1;
    letter-spacing: .22em;
    text-transform: uppercase;
    font-weight: 900;
}

.bmi-calculator__form-head h3 {
    margin: 0;
    max-width: 12ch;
    font-size: clamp(2rem, 3.3vw, 3.25rem);
    line-height: .98;
    letter-spacing: -.04em;
    color: #ffffff;
}

.bmi-form {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 16px;
}

.bmi-form label {
    display: grid;
    gap: 8px;
}

.bmi-form label span {
    color: rgba(255,255,255,.78);
    font-size: .85rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 850;
}

.bmi-form input {
    width: 100%;
    min-height: 62px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 18px;
    padding: 0 18px;
    background: rgba(255,255,255,.96);
    color: var(--navy);
    font: inherit;
    font-weight: 800;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.75);
    transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.bmi-form input:focus {
    border-color: rgba(88,220,232,.88);
    box-shadow: 0 0 0 4px rgba(88,220,232,.16), inset 0 1px 0 rgba(255,255,255,.75);
    transform: translateY(-1px);
}

.bmi-form button,
.bmi-result__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    border-radius: 999px;
    border: 0;
    padding: 0 24px;
    background: linear-gradient(135deg, var(--turquoise), #18aee6);
    color: #06233f;
    font: inherit;
    font-size: .88rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 950;
    text-decoration: none;
    cursor: pointer;
    box-shadow: 0 18px 44px rgba(14,207,214,.22);
    transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
}

.bmi-form button:hover,
.bmi-result__cta:hover {
    transform: translateY(-2px);
    filter: saturate(1.08);
    box-shadow: 0 22px 54px rgba(14,207,214,.30);
}

.bmi-form__error {
    display: none;
    margin: 0;
    color: #ffd1d1;
    font-size: .9rem;
    line-height: 1.45;
    font-weight: 750;
}

.bmi-form.has-error .bmi-form__error {
    display: block;
}

.bmi-calculator__note {
    position: relative;
    z-index: 1;
    margin: 24px 0 0;
    color: rgba(255,255,255,.66);
    font-size: .9rem;
    line-height: 1.65;
    font-weight: 650;
}

.bmi-calculator__result-card {
    position: relative;
    overflow: hidden;
    padding: clamp(28px, 3.6vw, 52px);
    background:
        radial-gradient(circle at 86% 10%, rgba(88,220,232,.13), transparent 26%),
        linear-gradient(145deg, rgba(255,255,255,.98), rgba(245,251,255,.96));
    border: 1px solid rgba(8,127,228,.12);
    color: var(--navy);
    min-height: 100%;
    transition: border-color .35s ease, box-shadow .35s ease, transform .35s ease;
}

.bmi-calculator__result-card.is-ready {
    transform: translateY(-2px);
}

.bmi-result__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: clamp(22px, 3vw, 38px);
}

.bmi-result__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 22px;
    background: rgba(8,127,228,.08);
    font-size: 1.7rem;
    transition: transform .35s ease, background .35s ease;
}

.bmi-calculator__result-card.is-ready .bmi-result__icon {
    transform: scale(1.04) rotate(-2deg);
}

.bmi-result__top small {
    color: rgba(16,33,60,.62);
    font-size: .82rem;
    line-height: 1.3;
    letter-spacing: .16em;
    text-align: right;
    text-transform: uppercase;
    font-weight: 950;
}

.bmi-result__number-wrap {
    display: grid;
    gap: 6px;
    margin-bottom: 14px;
}

.bmi-result__label {
    color: rgba(16,33,60,.54);
    font-size: .78rem;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-weight: 950;
}

.bmi-result__number-wrap strong {
    display: block;
    color: var(--navy);
    font-size: clamp(4.2rem, 8vw, 7.4rem);
    line-height: .9;
    letter-spacing: -.07em;
    font-weight: 950;
    transition: color .35s ease;
}

.bmi-calculator__result-card h3 {
    margin: 0;
    color: var(--navy);
    font-size: clamp(1.6rem, 2.3vw, 2.45rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.bmi-gauge {
    position: relative;
    display: grid;
    grid-template-columns: .7fr 1fr 1fr 1.8fr;
    gap: 4px;
    height: 16px;
    margin: 30px 0 24px;
    padding: 0;
}

.bmi-gauge__segment {
    display: block;
    border-radius: 999px;
    opacity: .9;
}

.bmi-gauge__segment--under { background: #5aa7e8; }
.bmi-gauge__segment--normal { background: #39c78a; }
.bmi-gauge__segment--over { background: #f3c34f; }
.bmi-gauge__segment--obesity { background: linear-gradient(90deg, #f09a3e, #d84949, #9f2f55); }

.bmi-gauge__needle {
    position: absolute;
    left: var(--bmi-progress, 0%);
    top: 50%;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    border: 5px solid var(--bmi-accent, var(--blue));
    box-shadow: 0 12px 26px rgba(8,48,90,.18);
    transition: left .65s cubic-bezier(.2,.8,.2,1), border-color .35s ease;
}

.bmi-result__message {
    margin: 0;
    max-width: 58ch;
    color: rgba(16,33,60,.70);
    font-size: clamp(1rem, 1.12vw, 1.12rem);
    line-height: 1.75;
    font-weight: 700;
}

.bmi-result__cta {
    width: fit-content;
    margin-top: 26px;
}

.bmi-result__cta[hidden] {
    display: none;
}

.bmi-calculator__result-card.result--under { --bmi-accent: #5aa7e8; border-color: rgba(90,167,232,.30); }
.bmi-calculator__result-card.result--normal { --bmi-accent: #39c78a; border-color: rgba(57,199,138,.28); }
.bmi-calculator__result-card.result--overweight { --bmi-accent: #f3c34f; border-color: rgba(243,195,79,.34); }
.bmi-calculator__result-card.result--obesity1 { --bmi-accent: #f09a3e; border-color: rgba(240,154,62,.34); }
.bmi-calculator__result-card.result--obesity2 { --bmi-accent: #d84949; border-color: rgba(216,73,73,.32); }
.bmi-calculator__result-card.result--obesity3 { --bmi-accent: #9f2f55; border-color: rgba(159,47,85,.32); }

.bmi-calculator__result-card.result--normal .bmi-result__number-wrap strong,
.bmi-calculator__result-card.result--normal h3 {
    color: #0b6d4e;
}

.bmi-calculator__result-card:not(.is-empty) .bmi-result__number-wrap strong {
    color: var(--bmi-accent, var(--navy));
}

@media (max-width: 980px) {
    .bmi-calculator__panel {
        grid-template-columns: 1fr;
        max-width: 720px;
    }

    .bmi-calculator__form-head h3 {
        max-width: 100%;
    }
}

@media (max-width: 760px) {
    .bmi-calculator {
        padding: 66px 0 76px;
    }

    .bmi-calculator__intro {
        text-align: left;
        margin-bottom: 26px;
    }

    .bmi-calculator__intro h2 {
        font-size: clamp(2.45rem, 12vw, 4rem);
        line-height: .94;
    }

    .bmi-calculator__intro p {
        margin-left: 0;
        font-size: .98rem;
        line-height: 1.68;
    }

    .bmi-calculator__form-card,
    .bmi-calculator__result-card {
        border-radius: 28px;
    }

    .bmi-calculator__form-card,
    .bmi-calculator__result-card {
        padding: 26px 22px;
    }

    .bmi-calculator__form-card::after {
        inset: 12px;
        border-radius: 22px;
    }

    .bmi-result__top {
        align-items: flex-start;
    }

    .bmi-result__icon {
        width: 56px;
        height: 56px;
        border-radius: 18px;
    }

    .bmi-result__top small {
        max-width: 18ch;
    }

    .bmi-form input,
    .bmi-form button,
    .bmi-result__cta {
        min-height: 56px;
    }

    .bmi-result__cta {
        width: 100%;
    }
}


/* ===== CHOICE DIFFERENCE V1 ===== */
.choice-difference {
    position: relative;
    overflow: hidden;
    padding: clamp(86px, 7.8vw, 132px) 0 clamp(96px, 8vw, 142px);
    background:
        radial-gradient(circle at 9% 16%, rgba(88,220,232,.09), transparent 26%),
        radial-gradient(circle at 86% 12%, rgba(8,127,228,.07), transparent 25%),
        linear-gradient(180deg, #ffffff 0%, #f8fcff 58%, #ffffff 100%);
    color: var(--ink);
}

.choice-difference::before {
    content: '';
    position: absolute;
    left: -110px;
    top: 86px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(88,220,232,.13), transparent 68%);
    pointer-events: none;
}

.choice-difference::after {
    content: '';
    position: absolute;
    right: clamp(18px, 6vw, 96px);
    top: 44px;
    width: min(720px, 64vw);
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(8,127,228,.20), rgba(88,220,232,.28), transparent);
    pointer-events: none;
}

.choice-difference .container {
    position: relative;
    z-index: 1;
}

.choice-difference__intro {
    max-width: 900px;
    margin-bottom: clamp(32px, 4.6vw, 62px);
}

.choice-difference__eyebrow {
    margin-bottom: 22px;
    color: var(--blue);
    background: rgba(8,127,228,.07);
    border: 1px solid rgba(8,127,228,.12);
}

.choice-difference__intro h2 {
    margin: 0;
    max-width: 820px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(3rem, 5.3vw, 6.35rem);
    line-height: .9;
    letter-spacing: -.052em;
    color: var(--navy);
    text-wrap: balance;
}

.choice-difference__intro p {
    margin: 24px 0 0;
    max-width: 760px;
    color: rgba(16,33,60,.70);
    font-size: clamp(1rem, 1.15vw, 1.16rem);
    line-height: 1.82;
    font-weight: 650;
}

.choice-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 22px;
}

.choice-highlight {
    min-height: 132px;
    padding: 24px;
    border-radius: 28px;
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(8,127,228,.10);
    box-shadow: 0 22px 60px rgba(8,48,90,.08);
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: transform .45s ease, box-shadow .45s ease, border-color .45s ease;
}

.choice-highlight:hover {
    transform: translateY(-5px);
    border-color: rgba(88,220,232,.36);
    box-shadow: 0 30px 74px rgba(8,48,90,.13);
}

.choice-highlight strong {
    display: block;
    margin-bottom: 8px;
    color: var(--blue-deep);
    font-size: clamp(1.9rem, 2.8vw, 3.15rem);
    line-height: 1;
    letter-spacing: -.04em;
    font-weight: 900;
}

.choice-highlight span {
    color: rgba(16,33,60,.70);
    font-size: .92rem;
    line-height: 1.45;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.choice-compare {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: clamp(18px, 2.2vw, 28px);
    align-items: stretch;
}

.choice-card {
    position: relative;
    overflow: hidden;
    min-height: 560px;
    padding: clamp(30px, 3.6vw, 54px);
    border-radius: clamp(28px, 2.8vw, 42px);
    transition: transform .45s ease, box-shadow .45s ease, border-color .45s ease;
}

.choice-card--doctor {
    background:
        radial-gradient(circle at 18% 10%, rgba(88,220,232,.18), transparent 30%),
        linear-gradient(145deg, #071d36 0%, #0b3158 48%, #0a5f9d 100%);
    color: #ffffff;
    box-shadow: 0 34px 92px rgba(8,48,90,.26);
    border: 1px solid rgba(88,220,232,.26);
}

.choice-card--doctor::before {
    content: '';
    position: absolute;
    inset: 18px;
    border-radius: calc(clamp(28px, 2.8vw, 42px) - 10px);
    border: 1px solid rgba(255,255,255,.14);
    pointer-events: none;
}

.choice-card--generic {
    background: rgba(255,255,255,.9);
    color: var(--ink);
    border: 1px solid rgba(8,127,228,.10);
    box-shadow: 0 28px 76px rgba(8,48,90,.10);
}

.choice-card--generic::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(8,127,228,.035), transparent 55%, rgba(88,220,232,.05));
    pointer-events: none;
}

.choice-card:hover {
    transform: translateY(-8px);
}

.choice-card--doctor:hover {
    box-shadow: 0 42px 110px rgba(8,48,90,.32);
}

.choice-card--generic:hover {
    box-shadow: 0 34px 86px rgba(8,48,90,.15);
    border-color: rgba(88,220,232,.26);
}

.choice-card__kicker {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    font-size: .78rem;
    line-height: 1;
    letter-spacing: .24em;
    text-transform: uppercase;
    font-weight: 900;
}

.choice-card--doctor .choice-card__kicker {
    color: var(--turquoise);
}

.choice-card--generic .choice-card__kicker {
    color: var(--blue-deep);
}

.choice-card__kicker::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 6px rgba(88,220,232,.14);
}

.choice-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 clamp(26px, 3vw, 44px);
    max-width: 13ch;
    font-size: clamp(2.2rem, 3.6vw, 4.6rem);
    line-height: .93;
    letter-spacing: -.05em;
    font-family: 'Playfair Display', Georgia, serif;
}

.choice-card ul {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 18px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.choice-card li {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 14px;
    align-items: start;
    font-size: clamp(.98rem, 1.05vw, 1.08rem);
    line-height: 1.58;
    font-weight: 750;
}

.choice-card li::before {
    content: '✓';
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: .86rem;
    font-weight: 900;
}

.choice-card--doctor li {
    color: rgba(255,255,255,.90);
}

.choice-card--doctor li::before {
    color: #05243f;
    background: var(--turquoise);
    box-shadow: 0 10px 24px rgba(88,220,232,.24);
}

.choice-card--generic li {
    color: rgba(16,33,60,.74);
}

.choice-card--generic li::before {
    color: var(--blue-deep);
    background: rgba(8,127,228,.08);
    border: 1px solid rgba(8,127,228,.14);
}

.choice-card.reveal.is-visible li {
    animation: choiceItemIn .54s ease both;
}

.choice-card.reveal.is-visible li:nth-child(2) { animation-delay: .08s; }
.choice-card.reveal.is-visible li:nth-child(3) { animation-delay: .16s; }
.choice-card.reveal.is-visible li:nth-child(4) { animation-delay: .24s; }
.choice-card.reveal.is-visible li:nth-child(5) { animation-delay: .32s; }
.choice-card.reveal.is-visible li:nth-child(6) { animation-delay: .40s; }

@keyframes choiceItemIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.choice-difference__footer {
    margin: clamp(22px, 3vw, 34px) auto 0;
    max-width: 920px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 18px 20px 18px 28px;
    border-radius: 999px;
    background: rgba(255,255,255,.85);
    border: 1px solid rgba(8,127,228,.10);
    box-shadow: 0 20px 58px rgba(8,48,90,.08);
}

.choice-difference__footer p {
    margin: 0;
    color: rgba(16,33,60,.72);
    font-weight: 750;
    line-height: 1.55;
}

.choice-difference__footer a {
    flex: 0 0 auto;
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    border-radius: 999px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--blue-deep), var(--blue));
    box-shadow: 0 18px 38px rgba(8,127,228,.20);
    font-size: .82rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
    transition: transform .35s ease, box-shadow .35s ease;
}

.choice-difference__footer a:hover {
    transform: translateY(-3px);
    box-shadow: 0 24px 50px rgba(8,127,228,.28);
}

@media (max-width: 980px) {
    .choice-highlights,
    .choice-compare {
        grid-template-columns: 1fr;
    }

    .choice-highlights {
        max-width: 720px;
    }

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

    .choice-card h3 {
        max-width: 100%;
    }

    .choice-difference__footer {
        max-width: 720px;
        align-items: flex-start;
        border-radius: 30px;
        flex-direction: column;
    }
}

@media (max-width: 760px) {
    .choice-difference {
        padding: 68px 0 82px;
    }

    .choice-difference__intro {
        margin-bottom: 28px;
    }

    .choice-difference__intro h2 {
        font-size: clamp(2.42rem, 11.8vw, 4rem);
        line-height: .94;
    }

    .choice-difference__intro p {
        font-size: .98rem;
        line-height: 1.68;
    }

    .choice-highlight {
        min-height: 112px;
        border-radius: 24px;
        padding: 20px;
    }

    .choice-card {
        padding: 28px 22px;
        border-radius: 30px;
    }

    .choice-card--doctor::before {
        inset: 12px;
        border-radius: 22px;
    }

    .choice-card h3 {
        font-size: clamp(2.15rem, 10vw, 3.35rem);
    }

    .choice-card li {
        grid-template-columns: 26px 1fr;
        gap: 12px;
        font-size: .96rem;
    }

    .choice-card li::before {
        width: 26px;
        height: 26px;
    }

    .choice-difference__footer {
        padding: 22px;
    }

    .choice-difference__footer a {
        width: 100%;
    }
}


/* ===== CHOICE DIFFERENCE V2: SIN MÉTRICAS + ENTRADA LATERAL ===== */
.choice-highlights {
    display: none !important;
}

.choice-difference__intro {
    margin-bottom: clamp(34px, 4.2vw, 58px);
}

.choice-compare {
    margin-top: 0;
}

.choice-card--doctor.reveal {
    transform: translateX(-64px);
}

.choice-card--generic.reveal {
    transform: translateX(64px);
}

.choice-card--doctor.reveal.is-visible,
.choice-card--generic.reveal.is-visible {
    transform: translateX(0);
}

.choice-card.reveal {
    transition: opacity .9s cubic-bezier(.2,.8,.2,1), transform .9s cubic-bezier(.2,.8,.2,1), box-shadow .45s ease, border-color .45s ease;
}

.choice-card.reveal.is-visible:hover {
    transform: translateY(-8px);
}

.choice-card--doctor.reveal.is-visible li,
.choice-card--generic.reveal.is-visible li {
    animation: choiceItemIn .54s ease both;
}

@media (max-width: 980px) {
    .choice-card--doctor.reveal,
    .choice-card--generic.reveal {
        transform: translateY(22px);
    }

    .choice-card--doctor.reveal.is-visible,
    .choice-card--generic.reveal.is-visible {
        transform: translateY(0);
    }

    .choice-card.reveal.is-visible:hover {
        transform: translateY(-6px);
    }
}


/* ===== CONSULT PARALLAX SECTION V3 ===== */
.consult-parallax {
    --consult-parallax-y: 0px;
    position: relative;
    min-height: clamp(660px, 72vw, 820px);
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: clamp(76px, 7.5vw, 118px) 0;
    background: #ffffff;
    color: var(--navy);
    isolation: isolate;
}

.consult-parallax__media {
    position: absolute;
    inset: -18% 0;
    z-index: -1;
    overflow: hidden;
    pointer-events: none;
}

.consult-parallax__media picture,
.consult-parallax__media img {
    display: block;
    width: 100%;
    height: 100%;
}

.consult-parallax__media img {
    object-fit: cover;
    object-position: center;
    transform: translate3d(0, var(--consult-parallax-y), 0) scale(1.16);
    will-change: transform;
}

.consult-parallax__inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.consult-parallax__copy {
    max-width: min(560px, 94vw);
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    backdrop-filter: none;
}

.consult-parallax__eyebrow {
    color: var(--blue);
    background: transparent;
    border: 0;
    margin-bottom: 16px;
    padding-left: 0;
}

.consult-parallax__copy h2 {
    margin: 0;
    max-width: 12.2ch;
    font-family: 'Playfair Display', Georgia, serif;
    color: var(--navy);
    font-size: clamp(2.7rem, 5vw, 5.45rem);
    line-height: .91;
    letter-spacing: -.055em;
    text-wrap: balance;
    text-shadow: 0 12px 42px rgba(255,255,255,.55);
}

.consult-parallax__lead {
    margin: 24px 0 0;
    max-width: 470px;
    color: rgba(16,33,60,.82);
    font-size: clamp(1rem, 1.1vw, 1.14rem);
    line-height: 1.65;
    font-weight: 850;
    text-shadow: 0 10px 32px rgba(255,255,255,.62);
}

.consult-parallax__includes {
    margin-top: 22px;
    max-width: 520px;
    color: rgba(16,33,60,.86);
    text-shadow: 0 10px 32px rgba(255,255,255,.62);
}

.consult-parallax__includes strong {
    display: block;
    margin-bottom: 12px;
    color: var(--blue);
    font-size: .78rem;
    letter-spacing: .22em;
    text-transform: uppercase;
    font-weight: 950;
}

.consult-parallax__includes ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.consult-parallax__includes li {
    position: relative;
    padding-left: 18px;
    font-size: .98rem;
    line-height: 1.42;
    font-weight: 800;
}

.consult-parallax__includes li::before {
    content: '';
    position: absolute;
    left: 0;
    top: .62em;
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--blue), var(--turquoise));
    box-shadow: 0 0 0 4px rgba(88,220,232,.16);
}

.consult-parallax__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    margin-top: 28px;
    padding: 0 30px;
    border: 0;
    border-radius: 999px;
    color: #ffffff;
    text-decoration: none;
    font-family: inherit;
    font-size: .96rem;
    font-weight: 950;
    letter-spacing: .02em;
    background: linear-gradient(135deg, var(--blue), var(--turquoise));
    box-shadow: 0 18px 44px rgba(8, 127, 228, .24);
    cursor: default;
    transition: transform .35s ease, box-shadow .35s ease;
}

.consult-parallax__cta:hover {
    transform: translateY(-3px);
    box-shadow: 0 24px 54px rgba(8, 127, 228, .30);
}

.consult-parallax__steps,
.consult-step {
    display: none !important;
}

@media (max-width: 900px) {
    .consult-parallax {
        min-height: 760px;
        align-items: flex-end;
        padding: 360px 0 62px;
    }

    .consult-parallax__media {
        inset: -13% 0 -13%;
    }

    .consult-parallax__media img {
        object-position: center top;
        transform: translate3d(0, var(--consult-parallax-y), 0) scale(1.13);
    }

    .consult-parallax__copy {
        max-width: 100%;
    }

    .consult-parallax__copy h2 {
        max-width: 9.5ch;
        font-size: clamp(2.45rem, 12vw, 4.05rem);
        line-height: .93;
    }

    .consult-parallax__lead {
        max-width: 31ch;
        margin-top: 18px;
        font-size: .98rem;
        line-height: 1.56;
    }

    .consult-parallax__includes {
        margin-top: 18px;
        max-width: 34ch;
    }

    .consult-parallax__includes ul {
        display: block;
    }

    .consult-parallax__includes li {
        margin-top: 8px;
        font-size: .92rem;
    }

    .consult-parallax__cta {
        margin-top: 22px;
        min-height: 50px;
        padding-inline: 24px;
    }
}

@media (max-width: 420px) {
    .consult-parallax {
        min-height: 735px;
        padding-top: 330px;
        padding-bottom: 52px;
    }

    .consult-parallax__media {
        inset: -10% 0 -14%;
    }

    .consult-parallax__media img {
        object-position: 54% top;
    }
}



/* ===== LOCATION MAP SECTION V2 ===== */
.location-map {
    position: relative;
    overflow: hidden;
    background: #ffffff;
    color: var(--ink);
    padding: clamp(72px, 7vw, 112px) 0 0;
}

.location-map::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(8,127,228,.18), rgba(88,220,232,.25), transparent);
}

.location-map__intro {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin: 0 auto clamp(26px, 3vw, 42px);
    text-align: center;
}

.location-map__eyebrow {
    color: var(--blue);
    background: rgba(8,127,228,.07);
    border: 1px solid rgba(8,127,228,.12);
    margin-bottom: 18px;
}

.location-map__intro h2 {
    margin: 0;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(3rem, 5.4vw, 6.3rem);
    line-height: .92;
    letter-spacing: -.05em;
    color: var(--navy);
    text-wrap: balance;
}

.location-map__details {
    position: relative;
    z-index: 3;
    margin-bottom: clamp(30px, 4vw, 56px);
}

.location-map__info {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, .92fr) auto;
    align-items: center;
    gap: clamp(20px, 3vw, 46px);
    width: 100%;
    padding: clamp(24px, 2.6vw, 36px);
    border-radius: 34px;
    background:
        linear-gradient(135deg, rgba(4,31,61,.98), rgba(6,79,119,.92));
    border: 1px solid rgba(88,220,232,.22);
    box-shadow: 0 24px 70px rgba(4,31,61,.16);
}

.location-map__info-block {
    min-width: 0;
}

.location-map__info span {
    display: block;
    margin-bottom: 10px;
    color: var(--turquoise);
    font-size: .74rem;
    letter-spacing: .24em;
    text-transform: uppercase;
    font-weight: 950;
}

.location-map__info h3,
.location-map__info p {
    margin: 0;
    color: #ffffff;
    font-weight: 800;
}

.location-map__info h3 {
    max-width: 820px;
    font-size: clamp(1.05rem, 1.45vw, 1.34rem);
    line-height: 1.44;
}

.location-map__info p {
    color: rgba(255,255,255,.82);
    font-size: clamp(.94rem, 1vw, 1rem);
    line-height: 1.62;
}

.location-map__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 12px;
}

.location-map__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 22px;
    border-radius: 999px;
    text-decoration: none;
    white-space: nowrap;
    font-size: .82rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    font-weight: 950;
    transition: transform .35s ease, box-shadow .35s ease, background .35s ease, color .35s ease;
}

.location-map__btn--primary {
    color: #041f3d;
    background: linear-gradient(135deg, #ffffff, #dff9ff);
    box-shadow: 0 18px 38px rgba(0,0,0,.16);
}

.location-map__btn--ghost {
    color: #ffffff;
    border: 1px solid rgba(255,255,255,.32);
    background: rgba(255,255,255,.08);
}

.location-map__btn:hover {
    transform: translateY(-3px);
}

.location-map__btn--primary:hover {
    box-shadow: 0 24px 48px rgba(0,0,0,.22);
}

.location-map__btn--ghost:hover {
    background: rgba(255,255,255,.15);
}

.location-map__canvas-wrap {
    position: relative;
    width: 100%;
    min-height: clamp(520px, 45vw, 680px);
    background: #eaf7fb;
    isolation: isolate;
}

.location-map__iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: inherit;
    filter: saturate(.94) contrast(1.02);
}

@media (max-width: 1080px) {
    .location-map__info {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .location-map__actions {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .location-map {
        padding-top: 64px;
    }

    .location-map__intro {
        margin-bottom: 24px;
        text-align: left;
    }

    .location-map__intro h2 {
        font-size: clamp(2.45rem, 12vw, 3.75rem);
        line-height: .94;
    }

    .location-map__details {
        margin-bottom: 24px;
    }

    .location-map__info {
        padding: 22px 18px;
        border-radius: 24px;
        gap: 20px;
    }

    .location-map__info h3 {
        font-size: 1rem;
    }

    .location-map__info p {
        font-size: .92rem;
        line-height: 1.58;
    }

    .location-map__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .location-map__canvas-wrap {
        min-height: 520px;
    }
}



/* ===== FAQ + FOOTER V1 ===== */
.faq-section {
    position: relative;
    overflow: hidden;
    padding: clamp(86px, 8vw, 132px) 0;
    background:
        radial-gradient(circle at 10% 12%, rgba(88,220,232,.13), transparent 30%),
        radial-gradient(circle at 90% 80%, rgba(8,127,228,.09), transparent 28%),
        linear-gradient(180deg, #ffffff 0%, #f7fbff 52%, #ffffff 100%);
}

.faq-section::before {
    content: '';
    position: absolute;
    left: -80px;
    bottom: 30px;
    width: 360px;
    height: 360px;
    background: linear-gradient(135deg, rgba(8,127,228,.08), rgba(88,220,232,.05));
    clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
    opacity: .55;
    pointer-events: none;
}

.faq-section__inner {
    position: relative;
    z-index: 1;
}

.faq-section__head {
    max-width: 900px;
    margin: 0 auto clamp(38px, 5vw, 68px);
    text-align: center;
}

.faq-section__eyebrow {
    color: var(--blue);
    background: rgba(8,127,228,.07);
    border: 1px solid rgba(8,127,228,.12);
}

.faq-section__head h2 {
    margin: 18px 0 16px;
    color: var(--navy);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(2.7rem, 5vw, 5.8rem);
    line-height: .94;
    letter-spacing: -.05em;
    text-wrap: balance;
}

.faq-section__head p {
    margin: 0 auto;
    max-width: 660px;
    color: rgba(16,33,60,.68);
    font-size: clamp(1rem, 1.2vw, 1.14rem);
    line-height: 1.78;
    font-weight: 650;
}

.faq-section__layout {
    display: grid;
    grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
    gap: clamp(22px, 3vw, 42px);
    align-items: start;
}

.faq-section__card {
    position: sticky;
    top: 112px;
    overflow: hidden;
    border-radius: 34px;
    padding: clamp(28px, 3vw, 44px);
    color: #ffffff;
    background:
        radial-gradient(circle at 86% 10%, rgba(88,220,232,.26), transparent 34%),
        linear-gradient(145deg, #06213e 0%, #07365f 48%, #031325 100%);
    box-shadow: 0 30px 90px rgba(5, 25, 45, .22);
    border: 1px solid rgba(255,255,255,.12);
}

.faq-section__card::after {
    content: '';
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 210px;
    height: 210px;
    border-radius: 50%;
    border: 1px solid rgba(88,220,232,.28);
}

.faq-section__card span {
    display: inline-flex;
    margin-bottom: 18px;
    color: #5de8ef;
    font-size: .76rem;
    letter-spacing: .23em;
    text-transform: uppercase;
    font-weight: 950;
}

.faq-section__card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 18px;
    max-width: 12ch;
    color: #ffffff;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(2.15rem, 3vw, 3.35rem);
    line-height: .98;
    letter-spacing: -.04em;
}

.faq-section__card p {
    position: relative;
    z-index: 1;
    margin: 0 0 26px;
    color: rgba(255,255,255,.78);
    line-height: 1.72;
    font-weight: 650;
}

.faq-section__card a {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 22px;
    border-radius: 999px;
    color: #041f3d;
    background: linear-gradient(135deg, #ffffff, #dffbff 48%, #58dce8);
    text-decoration: none;
    font-size: .82rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    font-weight: 950;
    box-shadow: 0 18px 42px rgba(0,0,0,.18);
    transition: transform .35s ease, box-shadow .35s ease;
}

.faq-section__card a:hover {
    transform: translateY(-3px);
    box-shadow: 0 24px 54px rgba(0,0,0,.24);
}

.faq-list {
    display: grid;
    gap: 14px;
}

.faq-item {
    border-radius: 24px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(8,127,228,.10);
    box-shadow: 0 18px 52px rgba(8,48,90,.08);
    overflow: hidden;
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.faq-item:hover,
.faq-item[open] {
    transform: translateY(-2px);
    border-color: rgba(88,220,232,.34);
    box-shadow: 0 24px 70px rgba(8,48,90,.12);
}

.faq-item summary {
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 24px 26px;
    color: var(--navy);
    font-size: clamp(1rem, 1.2vw, 1.16rem);
    line-height: 1.35;
    font-weight: 900;
}

.faq-item summary::-webkit-details-marker {
    display: none;
}

.faq-item summary i {
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: rgba(8,127,228,.08);
    border: 1px solid rgba(8,127,228,.13);
    position: relative;
}

.faq-item summary i::before,
.faq-item summary i::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 13px;
    height: 2px;
    background: var(--blue);
    transform: translate(-50%, -50%);
    border-radius: 999px;
    transition: transform .3s ease;
}

.faq-item summary i::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item[open] summary i::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.faq-item p {
    margin: -6px 26px 24px;
    max-width: 760px;
    color: rgba(16,33,60,.68);
    line-height: 1.72;
    font-weight: 650;
}

.site-footer {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(circle at 18% 10%, rgba(88,220,232,.14), transparent 28%),
        radial-gradient(circle at 84% 14%, rgba(8,127,228,.16), transparent 30%),
        linear-gradient(180deg, #061d36 0%, #041426 58%, #020914 100%);
    padding: clamp(72px, 7vw, 116px) 0 28px;
}

.site-footer::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(120deg, rgba(255,255,255,.04) 0 1px, transparent 1px 120px),
        linear-gradient(30deg, rgba(255,255,255,.035) 0 1px, transparent 1px 140px);
    opacity: .35;
    pointer-events: none;
}

.site-footer__orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(4px);
    pointer-events: none;
}

.site-footer__orb--one {
    width: 360px;
    height: 360px;
    left: -140px;
    top: 80px;
    background: radial-gradient(circle, rgba(88,220,232,.16), transparent 68%);
}

.site-footer__orb--two {
    width: 430px;
    height: 430px;
    right: -170px;
    bottom: -160px;
    background: radial-gradient(circle, rgba(8,127,228,.20), transparent 68%);
}

.site-footer__inner {
    position: relative;
    z-index: 1;
}

.site-footer__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    gap: clamp(18px, 2vw, 28px);
    align-items: stretch;
    margin-bottom: clamp(34px, 4vw, 56px);
}

.site-footer__brand-card,
.site-footer__contact-card {
    border-radius: 34px;
    background: rgba(255,255,255,.075);
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 26px 80px rgba(0,0,0,.18);
    backdrop-filter: blur(16px);
}

.site-footer__brand-card {
    padding: clamp(28px, 3.4vw, 48px);
}

.site-footer__logo {
    display: inline-flex;
    width: min(280px, 82vw);
    min-height: 82px;
    align-items: center;
    padding: 14px 18px;
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 18px 48px rgba(0,0,0,.18);
}

.site-footer__logo img {
    display: block;
    max-width: 100%;
    height: auto;
}

.site-footer__brand-card p {
    margin: 28px 0 0;
    max-width: 720px;
    color: rgba(255,255,255,.78);
    font-size: clamp(1rem, 1.2vw, 1.14rem);
    line-height: 1.76;
    font-weight: 650;
}

.site-footer__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.site-footer__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 0 24px;
    border-radius: 999px;
    text-decoration: none;
    font-size: .82rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    font-weight: 950;
    transition: transform .35s ease, box-shadow .35s ease, background .35s ease;
}

.site-footer__btn--primary {
    color: #03172b;
    background: linear-gradient(135deg, #ffffff, #dffbff 45%, #5de8ef);
    box-shadow: 0 18px 42px rgba(0,0,0,.20);
}

.site-footer__btn--ghost {
    color: #ffffff;
    border: 1px solid rgba(255,255,255,.2);
    background: rgba(255,255,255,.06);
}

.site-footer__btn:hover {
    transform: translateY(-3px);
}

.site-footer__contact-card {
    padding: clamp(28px, 3vw, 42px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 14px;
}

.site-footer__contact-card span,
.site-footer__column h3 {
    color: #5de8ef;
    font-size: .74rem;
    letter-spacing: .22em;
    text-transform: uppercase;
    font-weight: 950;
}

.site-footer__contact-card a {
    color: #ffffff;
    text-decoration: none;
    font-size: clamp(1.02rem, 1.25vw, 1.22rem);
    font-weight: 850;
    transition: color .25s ease, transform .25s ease;
}

.site-footer__contact-card a:hover,
.site-footer__column a:hover {
    color: #5de8ef;
    transform: translateX(3px);
}

.site-footer__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(22px, 3vw, 44px);
    padding: clamp(28px, 3.4vw, 46px) 0;
    border-top: 1px solid rgba(255,255,255,.10);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.site-footer__column {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.site-footer__column h3 {
    margin: 0 0 7px;
}

.site-footer__column a,
.site-footer__column p {
    color: rgba(255,255,255,.72);
    text-decoration: none;
    line-height: 1.62;
    font-size: .95rem;
    font-weight: 650;
    transition: color .25s ease, transform .25s ease;
}

.site-footer__column--info h3:not(:first-child) {
    margin-top: 18px;
}

.site-footer__bottom {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-top: 28px;
    color: rgba(255,255,255,.58);
    font-size: .88rem;
    line-height: 1.55;
}

.site-footer__bottom p,
.site-footer__bottom small {
    margin: 0;
}

@media (max-width: 980px) {
    .faq-section__layout,
    .site-footer__hero,
    .site-footer__grid {
        grid-template-columns: 1fr;
    }

    .faq-section__card {
        position: relative;
        top: auto;
    }

    .site-footer__grid {
        gap: 28px;
    }
}

@media (max-width: 640px) {
    .faq-section {
        padding: 68px 0;
    }

    .faq-section__head {
        text-align: left;
        margin-bottom: 28px;
    }

    .faq-section__head h2 {
        font-size: clamp(2.45rem, 12vw, 3.7rem);
    }

    .faq-section__card,
    .site-footer__brand-card,
    .site-footer__contact-card {
        border-radius: 26px;
    }

    .faq-item summary {
        padding: 20px 18px;
    }

    .faq-item p {
        margin: -4px 18px 20px;
        font-size: .94rem;
    }

    .site-footer {
        padding-top: 64px;
    }

    .site-footer__actions,
    .site-footer__bottom {
        display: grid;
        grid-template-columns: 1fr;
    }

    .site-footer__btn {
        width: 100%;
    }
}


/* =========================
   PATCH LULAB — HOME RESTAURADO + NAVEGACIÓN MULTIPÁGINA
   ========================= */
.home-nav-bar{
    background:rgba(255,255,255,.98);
    border-top:1px solid rgba(9,70,128,.08);
    border-bottom:1px solid rgba(9,70,128,.12);
    position:sticky;
    top:0;
    z-index:80;
    backdrop-filter:blur(16px);
}
.home-nav-bar__inner{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:2px;
    min-height:58px;
}
.home-nav-link{
    display:flex;
    align-items:center;
    min-height:58px;
    padding:0 13px;
    font-size:13px;
    font-weight:900;
    color:#183457;
    letter-spacing:.01em;
    white-space:nowrap;
}
.home-nav-link:hover{color:#087fe4;}
.home-nav-dropdown{position:relative;}
.home-nav-dropdown__panel{
    position:absolute;
    left:0;
    top:100%;
    min-width:315px;
    background:#fff;
    border:1px solid rgba(8,127,228,.12);
    box-shadow:0 28px 70px rgba(4,42,89,.16);
    padding:16px;
    display:none;
    z-index:95;
}
.home-nav-dropdown:hover .home-nav-dropdown__panel{display:grid;}
.home-nav-dropdown__panel a{
    color:#25476c;
    font-size:14px;
    font-weight:800;
    padding:10px 12px;
    border-bottom:1px solid rgba(8,127,228,.08);
}
.home-nav-dropdown__panel a:hover{color:#087fe4;}
.mobile-menu__nav{
    display:grid;
    gap:4px;
    margin:14px 0 4px;
    padding:14px 0;
    border-top:1px solid rgba(255,255,255,.14);
    border-bottom:1px solid rgba(255,255,255,.14);
}
.mobile-menu__nav a{
    color:#fff;
    font-weight:900;
    padding:10px 0;
    letter-spacing:.01em;
}
.about-doctor__learn-more,
.section-learn-more,
.bmi-calculator__learn-more{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:18px;
    font-weight:900;
    color:#fff;
    border-bottom:2px solid currentColor;
}
.about-doctor__learn-more::after,
.section-learn-more::after,
.bmi-calculator__learn-more::after{content:'→';}
.section-learn-more--center{color:#087fe4;margin-top:20px;}
.section-learn-more--light{color:#fff;}
.bmi-calculator__learn-more{color:#087fe4;margin-top:18px;}
.service-card--link{cursor:pointer;}
.service-card--link:focus-visible{outline:4px solid rgba(88,220,232,.85);outline-offset:6px;}
.consult-parallax__cta{text-decoration:none;}

/* FAQ limpio solicitado */
.faq-section--clean{
    padding:110px 0;
    background:#fff;
    color:#10213c;
}
.faq-clean-home__inner{
    display:grid;
    grid-template-columns:.62fr 1fr;
    gap:72px;
    align-items:start;
}
.faq-section__head--clean{
    max-width:440px;
    position:sticky;
    top:96px;
}
.faq-section--clean .faq-section__head h2{color:#0b2442;}
.faq-section--clean .faq-section__head p{color:#576b81;}
.faq-list--clean{
    display:block;
    background:transparent;
    border:0;
}
.faq-item--clean{
    border:0;
    border-top:1px solid rgba(8,127,228,.16);
    border-radius:0;
    padding:0;
    background:transparent;
    box-shadow:none;
}
.faq-item--clean:last-child{border-bottom:1px solid rgba(8,127,228,.16);}
.faq-item--clean summary{
    list-style:none;
    cursor:pointer;
    padding:25px 0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    color:#10213c;
    font-weight:900;
    font-size:19px;
}
.faq-item--clean summary::-webkit-details-marker{display:none;}
.faq-item--clean summary i{
    width:34px;
    height:34px;
    border-radius:50%;
    border:1px solid rgba(8,127,228,.28);
    flex:0 0 34px;
    position:relative;
}
.faq-item--clean summary i:before,
.faq-item--clean summary i:after{
    content:'';
    position:absolute;
    background:#087fe4;
    left:50%;top:50%;
    transform:translate(-50%,-50%);
}
.faq-item--clean summary i:before{width:14px;height:2px;}
.faq-item--clean summary i:after{width:2px;height:14px;}
.faq-item--clean[open] summary i:after{opacity:0;}
.faq-item--clean p{
    color:#53687f;
    font-size:17px;
    line-height:1.75;
    max-width:820px;
    margin:0;
    padding:0 0 26px;
}
.faq-clean-home__cta{
    grid-column:2;
    border-top:1px solid rgba(8,127,228,.16);
    padding-top:28px;
}
.faq-clean-home__cta p{color:#53687f;margin:0 0 18px;}
.faq-clean-home__cta a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:13px 22px;
    border-radius:999px;
    background:#087fe4;
    color:#fff;
    font-weight:900;
}

/* Footer home limpio, ancho y sin recuadros */
.clean-site-footer{
    background:#fff;
    color:#183457;
    border-top:1px solid rgba(8,127,228,.14);
    padding:86px 0 0;
}
.clean-site-footer__inner{
    display:grid;
    grid-template-columns:1.18fr 1.05fr .88fr .88fr;
    gap:56px;
    align-items:start;
}
.clean-site-footer__logo img{width:240px;height:auto;margin-bottom:26px;}
.clean-site-footer p{color:#52677f;line-height:1.75;font-size:15px;margin:0 0 14px;}
.clean-site-footer h3{
    color:#0b2442;
    font-family:'Manrope',system-ui,sans-serif;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.16em;
    margin:0 0 22px;
    font-weight:900;
}
.clean-site-footer a{color:#274a70;font-weight:800;}
.clean-site-footer a:hover{color:#087fe4;}
.clean-site-footer__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}
.clean-site-footer__actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(8,127,228,.18);
    border-radius:999px;
    padding:11px 16px;
    color:#0b2442;
}
.clean-site-footer__contact a,
.clean-site-footer__links a{
    display:block;
    margin:0 0 11px;
}
.clean-site-footer__bottom{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:24px;
    border-top:1px solid rgba(8,127,228,.12);
    margin-top:64px;
    padding:24px 0;
}
.clean-site-footer__bottom p,
.clean-site-footer__bottom small{font-size:13px;color:#64778c;line-height:1.6;}

/* Estilos multipágina internos — sin tocar el home restaurado */
.wide{width:min(1240px,calc(100% - 56px));margin-left:auto;margin-right:auto;}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(8,127,228,.12);color:#183457;}
.site-header .topline{font-size:13px;border-bottom:1px solid rgba(8,127,228,.10);color:#50677f;}
.site-header .topline .wide{min-height:36px;display:flex;align-items:center;gap:26px;}
.site-header .topline__right{margin-left:auto;display:flex;gap:14px;align-items:center;}
.site-header .lang{font-weight:900;color:#70839a;}
.site-header .lang.is-active{color:#087fe4;}
.site-header .mainnav{height:82px;display:flex;align-items:center;gap:26px;}
.site-header .brand img{width:210px;height:auto;}
.site-header .desktop-nav{display:flex;gap:2px;align-items:center;margin-left:auto;}
.site-header .nav-link{display:block;padding:28px 13px;font-size:14px;font-weight:900;color:#203a58;white-space:nowrap;}
.site-header .nav-link:hover,.site-header .nav-link.is-active{color:#087fe4;}
.site-header .nav-dropdown{position:relative;}
.site-header .dropdown-panel{position:absolute;left:0;top:100%;min-width:315px;background:#fff;box-shadow:0 30px 90px rgba(8,43,87,.14);border:1px solid rgba(8,127,228,.12);padding:18px;display:none;grid-template-columns:1fr;gap:2px;}
.site-header .nav-dropdown:hover .dropdown-panel{display:grid;}
.site-header .dropdown-panel a{padding:10px 12px;border-bottom:1px solid #eef4fb;color:#23384f;font-weight:800;font-size:14px;}
.site-header .dropdown-panel a:hover{color:#087fe4;}
.site-header .nav-cta{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 20px;font-weight:900;background:#087fe4;color:#fff;box-shadow:0 12px 30px rgba(8,127,228,.25);}
.site-header .menu-toggle{display:none;margin-left:auto;background:transparent;border:0;font-weight:900;color:#0b2442;align-items:center;gap:10px;}
.site-header .menu-toggle i{width:34px;height:2px;background:#0b2442;display:block;position:relative;}
.site-header .menu-toggle i:before,.site-header .menu-toggle i:after{content:'';position:absolute;left:0;width:34px;height:2px;background:#0b2442;}
.site-header .menu-toggle i:before{top:-8px;}.site-header .menu-toggle i:after{top:8px;}
.site-header .mobile-nav{display:none;}
.page-hero{padding:72px 0 92px;background:linear-gradient(130deg,#f7fbff,#fff);color:#10213c;}
.page-hero__grid{display:grid;grid-template-columns:1fr .85fr;gap:70px;align-items:center;}
.page-hero .eyebrow,.intro-section .section-number,.content-stream .stream-row__index,.link-directory .eyebrow,.clinical-gallery .eyebrow,.faq-clean .eyebrow,.comparison .eyebrow,.bmi-block .eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:#16a6cf;font-size:12px;margin-bottom:14px;}
.page-hero h1,.intro-section h2,.content-stream h2,.link-directory h2,.clinical-gallery h2,.comparison h2,.faq-clean h2,.contact-band h2{font-family:'Playfair Display',Georgia,serif;line-height:1.04;color:#0b2442;margin:0 0 18px;letter-spacing:-.035em;}
.page-hero h1{font-size:clamp(44px,6vw,82px);}
.page-hero__copy p{font-size:20px;max-width:700px;color:#5a6d82;line-height:1.75;}
.page-hero__media img{width:100%;max-height:650px;object-fit:contain;background:#fff;box-shadow:0 30px 90px rgba(8,43,87,.12);}
.page-hero .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px;}
.page-hero .btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 20px;font-weight:900;text-decoration:none;}
.page-hero .btn-primary{background:#087fe4;color:#fff;box-shadow:0 12px 30px rgba(8,127,228,.25);}
.page-hero .btn-ghost{border:1px solid rgba(8,127,228,.18);color:#0b2442;background:#fff;}
.intro-section{padding:100px 0;background:#fff;color:#10213c;}
.split{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:start;}
.split--center{align-items:center;}
.intro-section h2,.content-stream h2,.link-directory h2,.clinical-gallery h2,.comparison h2,.faq-clean h2,.contact-band h2{font-size:clamp(34px,4vw,58px);}
.prose p,.stream-row__body p{font-size:18px;color:#52677f;line-height:1.8;margin:0 0 18px;}
.content-stream,.link-directory,.comparison{padding:100px 0;background:#f4f9fd;color:#10213c;}
.stream-row{display:grid;grid-template-columns:90px 1fr;gap:46px;padding:50px 0;border-top:1px solid rgba(8,127,228,.12);}
.stream-row__body{max-width:900px;}
.clean-list{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px;}
.clean-list li{padding-left:26px;position:relative;color:#3f5268;font-weight:800;}
.clean-list li:before{content:'';position:absolute;left:0;top:.65em;width:8px;height:8px;border-radius:50%;background:#16a6cf;}
.directory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(8,127,228,.12);border-left:1px solid rgba(8,127,228,.12);background:#fff;margin-top:28px;}
.directory-grid a{min-height:120px;padding:24px;border-right:1px solid rgba(8,127,228,.12);border-bottom:1px solid rgba(8,127,228,.12);font-weight:900;color:#0b2442;display:flex;justify-content:space-between;align-items:flex-end;}
.directory-grid a:hover{background:#f8fcff;color:#087fe4;}
.clinical-gallery{padding:100px 0;background:#fff;color:#10213c;}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:32px;}
.gallery-grid figure{margin:0;}.gallery-grid img{height:360px;width:100%;object-fit:contain;background:#fff;border:1px solid rgba(8,127,228,.12);padding:18px;}.gallery-grid figcaption{font-weight:800;margin-top:8px;color:#52677c;}
.faq-clean{padding:110px 0;background:#fff;color:#10213c;}
.faq-clean__grid{display:grid;grid-template-columns:.65fr 1fr;gap:80px;}
.faq-clean p{color:#52677f;line-height:1.75;}
.faq-answer__cta{display:inline-flex;align-items:center;justify-content:center;margin-top:14px;padding:12px 18px;border-radius:999px;background:#16a6cf;color:#fff;font-weight:800;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;box-shadow:0 12px 28px rgba(22,166,207,.22);} 
.faq-answer__cta:hover{background:#0d8db2;transform:translateY(-1px);box-shadow:0 16px 32px rgba(13,141,178,.28);} 

.faq-list details{border-top:1px solid rgba(8,127,228,.14);padding:24px 0;}
.faq-list details:last-child{border-bottom:1px solid rgba(8,127,228,.14);}
.faq-list summary{cursor:pointer;font-weight:900;color:#0b2442;font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:20px;}
.faq-list summary::-webkit-details-marker{display:none;}.faq-list summary:after{content:'+';color:#087fe4;font-size:28px;line-height:1}.faq-list details[open] summary:after{content:'–';}.faq-list p{margin:14px 0 0;}
.bmi-block{padding:100px 0;background:#fff;color:#10213c;}.bmi-grid{display:grid;grid-template-columns:.85fr 1fr;gap:80px;align-items:center;}.bmi-card{border-top:2px solid #087fe4;border-bottom:2px solid #087fe4;padding:34px 0;display:grid;gap:16px}.bmi-card label{font-weight:900;color:#0b2442}.bmi-card input{width:100%;margin-top:7px;border:1px solid rgba(8,127,228,.18);height:52px;padding:0 14px;font:inherit}.bmi-card button{height:54px;border:0;background:#0b2442;color:#fff;font-weight:900;cursor:pointer}.bmi-result{display:flex;align-items:center;gap:18px}.bmi-result strong{font-size:56px;color:#087fe4;line-height:1}.bmi-result span{font-weight:900;color:#0b2442}
.contact-band{padding:100px 0;background:#0b2442;color:#fff;}.contact-band h2{color:#fff;}.contact-band p{color:rgba(255,255,255,.82);line-height:1.75}.contact-band__inner{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;}.contact-links{display:flex;gap:12px;flex-wrap:wrap;}.contact-links a{background:#fff;color:#0b2442;padding:14px 20px;border-radius:999px;font-weight:900;}
.site-footer{background:#fff;color:#21364d;padding-top:90px;border-top:1px solid rgba(8,127,228,.12);}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .8fr .8fr;gap:54px;align-items:start}.footer-brand img{width:230px;margin-bottom:22px}.footer-brand p,.footer-col p{font-size:15px;color:#52677f;line-height:1.75}.footer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.footer-actions a{border:1px solid rgba(8,127,228,.18);border-radius:999px;padding:11px 16px;font-weight:900;color:#0b2442}.footer-col h3{font-family:Manrope,sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:22px;color:#0b2442}.footer-col a{display:block;margin:0 0 10px;color:#43576d;font-weight:800}.footer-col a:hover{color:#087fe4}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(8,127,228,.12);margin-top:60px;padding:22px 0}.footer-bottom p{font-size:13px;margin:0;color:#64778c}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#25d366;color:white;display:grid;place-items:center;font-weight:900;box-shadow:0 18px 42px rgba(0,0,0,.22);z-index:60}
.table-wrap{overflow-x:auto;background:#fff;border:1px solid rgba(8,127,228,.12);margin-top:24px}table{width:100%;border-collapse:collapse}th,td{padding:20px;border-bottom:1px solid rgba(8,127,228,.12);text-align:left}th{color:#0b2442;font-size:13px;text-transform:uppercase;letter-spacing:.12em}td{color:#42566c;font-weight:800}
@media(max-width:1180px){.home-nav-link{padding:0 9px;font-size:12px}.home-nav-bar__inner{justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.home-nav-bar__inner::-webkit-scrollbar{display:none}}
@media(max-width:1060px){
    .home-nav-bar{display:none;}
    .wide{width:min(100% - 32px,1240px)}
    .site-header .desktop-nav,.site-header .nav-cta,.site-header .topline{display:none}.site-header .mainnav{height:74px}.site-header .brand img{width:180px}.site-header .menu-toggle{display:flex}.site-header .mobile-nav{display:none;position:absolute;left:0;right:0;top:74px;background:#fff;border-bottom:1px solid rgba(8,127,228,.12);padding:18px 24px;box-shadow:0 30px 90px rgba(8,43,87,.12)}.site-header .mobile-nav.is-open{display:grid;gap:4px}.site-header .mobile-nav a{padding:14px 0;font-weight:900;border-bottom:1px solid rgba(8,127,228,.12);color:#0b2442}.site-header .mobile-nav__cta{color:#087fe4!important}
    .faq-clean-home__inner,.split,.page-hero__grid,.bmi-grid,.faq-clean__grid,.contact-band__inner,.footer-grid,.clean-site-footer__inner{grid-template-columns:1fr;gap:34px}.faq-section__head--clean{position:static;}.faq-clean-home__cta{grid-column:auto}.directory-grid{grid-template-columns:repeat(2,1fr)}.page-hero{padding:52px 0}.gallery-grid{grid-template-columns:1fr 1fr}.footer-bottom,.clean-site-footer__bottom{display:grid}.clean-site-footer__logo img{width:210px}
}
@media(max-width:680px){
    .faq-section--clean,.page-hero,.intro-section,.content-stream,.link-directory,.clinical-gallery,.comparison,.bmi-block,.faq-clean,.contact-band,.clean-site-footer{padding-top:70px;padding-bottom:70px}.stream-row{grid-template-columns:1fr;gap:10px}.directory-grid,.gallery-grid{grid-template-columns:1fr}.page-hero__media img{max-height:420px}.contact-links{display:grid}.bmi-result strong{font-size:44px}.faq-item--clean summary{font-size:17px}.clean-site-footer__bottom{margin-top:32px}.site-header .brand img{width:165px}
}

/* =========================
   PATCH FINAL — 78: FAQ ALINEADO + HEADER ÚNICO + MENÚ MÓVIL CON SUBPÁGINAS
   ========================= */
.faq-section--clean{
    padding:96px 0 104px !important;
}
.faq-clean-home__inner{
    max-width:1180px;
    margin-inline:auto;
    grid-template-columns:minmax(300px,.58fr) minmax(540px,1fr) !important;
    gap:76px !important;
    align-items:start !important;
}
.faq-section__head--clean{
    top:118px !important;
    max-width:390px !important;
}
.faq-section__head--clean .section-eyebrow{
    display:inline-flex;
    align-items:center;
    width:auto;
    margin-bottom:18px;
}
.faq-section__head--clean h2{
    margin:0 0 18px !important;
    max-width:390px;
    font-size:clamp(46px,5.2vw,76px) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
}
.faq-section__head--clean p{
    max-width:360px;
    font-size:16px !important;
    line-height:1.7 !important;
}
.faq-list--clean{
    gap:0 !important;
    width:100%;
}
.faq-item--clean,
.faq-item--clean:hover,
.faq-item--clean[open]{
    transform:none !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
}
.faq-item--clean summary{
    position:relative;
    width:100%;
    min-height:88px;
    display:grid !important;
    grid-template-columns:1fr auto;
    align-items:center;
    gap:26px;
    padding:24px 0 !important;
    outline:none !important;
    border:0 !important;
    font-size:18px !important;
    line-height:1.35 !important;
}
.faq-item--clean summary:focus,
.faq-item--clean summary:focus-visible{
    outline:none !important;
}
.faq-item--clean summary::after{
    content:none !important;
    display:none !important;
}
.faq-item--clean summary i{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    justify-self:end;
    margin-right:0 !important;
    background:rgba(8,127,228,.06) !important;
}
.faq-item--clean p{
    max-width:850px !important;
    margin:0 !important;
    padding:0 60px 28px 0 !important;
}
.faq-clean-home__cta{
    margin-top:4px;
}

/* Header de multipágina igual al home aprobado */
.desktop-top + .home-nav-bar{
    box-shadow:0 8px 24px rgba(10,37,72,.04);
}
body:has(.desktop-top) .site-header{display:none !important;}

/* Menú móvil consistente, oscuro, con subpáginas visibles */
.mobile-menu__close{
    display:none;
}
@media (max-width:1060px){
    .home-nav-bar{display:none !important;}
}
@media (max-width:760px){
    body{
        background:#fff !important;
    }
    body.mobile-menu-open{
        overflow:hidden;
    }
    .desktop-top{
        display:none !important;
    }
    .mobile-top{
        position:sticky !important;
        top:0;
        z-index:160 !important;
        min-height:78px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        padding:10px 18px !important;
        background:#fff !important;
        color:#0b2442 !important;
        border-bottom:1px solid rgba(8,127,228,.12);
        box-shadow:0 12px 32px rgba(8,43,87,.08) !important;
    }
    .brand--mobile{
        width:178px !important;
        height:56px !important;
        padding:0 !important;
        border-radius:0 !important;
        background:transparent !important;
        overflow:visible !important;
    }
    .brand--mobile img{
        width:100% !important;
        height:100% !important;
        object-fit:contain !important;
    }
    .mobile-menu-toggle{
        position:relative;
        z-index:175;
        color:#0b2442 !important;
        gap:12px !important;
        font-size:15px !important;
    }
    .mobile-menu-toggle i,
    .mobile-menu-toggle i::before,
    .mobile-menu-toggle i::after{
        width:32px !important;
        height:2px !important;
        background:currentColor !important;
    }
    .mobile-menu{
        position:fixed !important;
        z-index:170 !important;
        top:0 !important;
        right:0 !important;
        bottom:0 !important;
        left:auto !important;
        width:min(88vw,430px) !important;
        height:100dvh !important;
        display:block !important;
        padding:82px 34px 34px !important;
        overflow-y:auto !important;
        background:linear-gradient(145deg,#587684 0%,#456a7a 48%,#315b70 100%) !important;
        color:#fff !important;
        border:0 !important;
        box-shadow:-32px 0 80px rgba(4,24,48,.28) !important;
        transform:translateX(112%) !important;
        transition:transform .32s ease !important;
    }
    .mobile-menu.is-open{
        transform:translateX(0) !important;
    }
    .mobile-menu__close{
        position:absolute;
        top:22px;
        right:28px;
        width:46px;
        height:46px;
        display:grid;
        place-items:center;
        border:0;
        border-radius:50%;
        background:rgba(255,255,255,.08);
        color:#fff;
        font-size:34px;
        line-height:1;
        cursor:pointer;
    }
    .mobile-menu__languages{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:8px !important;
        padding:6px !important;
        margin:0 0 16px !important;
        border:1px solid rgba(255,255,255,.18) !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.08) !important;
    }
    .mobile-menu__languages a{
        text-align:center !important;
        color:#fff !important;
        padding:10px 12px !important;
        border-radius:999px !important;
        font-weight:900 !important;
    }
    .mobile-menu__languages a.is-active{
        color:#0b2442 !important;
        background:#fff !important;
    }
    .mobile-menu__cta{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:100% !important;
        min-height:48px !important;
        margin:0 0 24px !important;
        padding:12px 18px !important;
        border-radius:999px !important;
        color:#0b2442 !important;
        background:#fff !important;
        font-weight:950 !important;
        box-shadow:0 14px 34px rgba(0,0,0,.12) !important;
    }
    .mobile-menu__nav{
        display:grid !important;
        gap:0 !important;
        margin:0 !important;
        padding:0 !important;
        border-top:1px solid rgba(255,255,255,.22) !important;
        border-bottom:1px solid rgba(255,255,255,.22) !important;
    }
    .mobile-menu__nav > a,
    .mobile-menu__group > summary{
        min-height:48px;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        padding:14px 0 !important;
        border-bottom:1px solid rgba(255,255,255,.18) !important;
        color:#fff !important;
        font-size:18px !important;
        line-height:1.25 !important;
        font-weight:850 !important;
        letter-spacing:.01em;
    }
    .mobile-menu__nav > a:last-child{
        border-bottom:0 !important;
    }
    .mobile-menu__group{
        border:0 !important;
        background:transparent !important;
    }
    .mobile-menu__group summary{
        cursor:pointer;
        list-style:none;
    }
    .mobile-menu__group summary::-webkit-details-marker{
        display:none;
    }
    .mobile-menu__group summary::after{
        content:'+';
        width:28px;
        height:28px;
        display:inline-grid;
        place-items:center;
        border-radius:50%;
        background:rgba(255,255,255,.12);
        font-size:22px;
        line-height:1;
        color:#fff;
        margin-left:20px;
    }
    .mobile-menu__group[open] summary::after{
        content:'–';
    }
    .mobile-menu__group div{
        display:grid;
        gap:0;
        padding:0 0 12px 16px;
        border-bottom:1px solid rgba(255,255,255,.18);
    }
    .mobile-menu__group div a{
        color:rgba(255,255,255,.86) !important;
        font-size:14px !important;
        font-weight:800 !important;
        line-height:1.3 !important;
        padding:9px 0 !important;
        border:0 !important;
    }
    .mobile-menu__socials{
        display:flex !important;
        justify-content:flex-start !important;
        gap:18px !important;
        margin-top:28px !important;
        padding:0 !important;
    }
    .mobile-social{
        width:42px !important;
        height:42px !important;
        border-radius:50% !important;
        background:rgba(255,255,255,.13) !important;
        color:#fff !important;
    }
    .mobile-social svg{
        width:20px !important;
        height:20px !important;
        fill:currentColor !important;
    }
    .mobile-social--muted{
        opacity:.75;
    }
    .mobile-action-bar{
        z-index:50;
    }
    .faq-clean-home__inner{
        grid-template-columns:1fr !important;
        gap:26px !important;
    }
    .faq-section__head--clean{
        position:static !important;
        max-width:100% !important;
        text-align:left !important;
    }
    .faq-section__head--clean h2{
        font-size:clamp(42px,14vw,64px) !important;
        max-width:340px !important;
    }
    .faq-section__head--clean p{
        max-width:100% !important;
    }
    .faq-item--clean summary{
        min-height:72px;
        font-size:16px !important;
        gap:18px !important;
    }
    .faq-item--clean p{
        padding-right:0 !important;
        font-size:15px !important;
    }
}

/* ===== Internal pages refresh: visual rhythm, pending media and animations ===== */
.io-reveal{
    opacity:0;
    transform:translate3d(0,24px,0);
    transition:opacity .7s ease, transform .7s ease;
}
.io-reveal.is-visible{
    opacity:1;
    transform:none;
}

.page-hero{
    position:relative;
    overflow:hidden;
}
.page-hero--split{
    padding:86px 0 96px;
    background:linear-gradient(180deg,#f8fbff 0%, #ffffff 100%);
}
.page-hero__grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
    gap:72px;
    align-items:center;
}
.page-hero__copy{
    position:relative;
    z-index:2;
}
.page-hero__copy p{
    max-width:760px;
}
.page-hero__mini-points{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}
.page-hero__mini-points span,
.hero-fact{
    border:1px solid rgba(8,127,228,.14);
    background:rgba(255,255,255,.88);
    border-radius:999px;
    padding:10px 14px;
    color:#1d3857;
    font-size:13px;
    font-weight:800;
}
.page-hero__media{
    position:relative;
    border-radius:34px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 30px 85px rgba(11,36,66,.12);
}
.page-hero__media img{
    width:100%;
    height:100%;
    min-height:420px;
    transition:transform .55s ease;
}
.page-hero__media:hover img{transform:scale(1.02);}
.page-hero__media--cover img{object-fit:cover;}
.page-hero__media--contain img{object-fit:contain;padding:14px;}

.page-hero--full{
    min-height:690px;
    display:flex;
    align-items:flex-end;
    padding:110px 0 80px;
    color:#fff;
    background:#0b2442;
}
.page-hero__backdrop,
.page-hero__veil{
    position:absolute;
    inset:0;
}
.page-hero__backdrop{
    background-size:cover;
    background-position:center;
    transform:scale(1.04);
    filter:saturate(1.02);
}
.page-hero__veil{
    background:linear-gradient(90deg,rgba(11,36,66,.92) 0%, rgba(11,36,66,.72) 45%, rgba(11,36,66,.35) 100%);
}
.page-hero__full-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,380px);
    gap:40px;
    align-items:end;
}
.page-hero--full .eyebrow,
.value-highlights .eyebrow,
.visual-band .eyebrow,
.related-links .eyebrow{
    color:#8bd7ff;
}
.page-hero--full h1,
.page-hero--full p{
    color:#fff;
}
.page-hero--full p{max-width:720px;color:rgba(255,255,255,.86);}
.page-hero--full .btn-ghost{
    background:rgba(255,255,255,.16);
    color:#fff;
    border-color:rgba(255,255,255,.2);
}
.page-hero__facts{
    justify-self:end;
    width:100%;
}
.hero-facts-card{
    backdrop-filter:blur(12px);
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.14);
    border-radius:28px;
    padding:24px;
    display:grid;
    gap:14px;
}
.hero-fact{
    display:grid;
    gap:4px;
    border-radius:20px;
}
.hero-fact strong{display:block;color:#fff;font-size:14px;}
.hero-fact span{display:block;color:rgba(255,255,255,.78);font-size:13px;line-height:1.5;}

.page-hero--parallax-clean{
    min-height:820px;
    align-items:center;
    padding:130px 0 118px;
    background:#f3ece5;
    color:#0b2442;
}
.page-hero--parallax-clean .page-hero__picture{
    display:block;
    overflow:hidden;
    transform:none;
    filter:none;
}
.page-hero--parallax-clean .page-hero__picture img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    display:block;
    transform:translate3d(0,var(--page-hero-parallax-y,0px),0) scale(1.08);
    transition:transform .12s linear;
}
.page-hero--parallax-clean .page-hero__veil{
    background:linear-gradient(90deg,rgba(247,241,235,.08) 0%, rgba(247,241,235,.02) 100%);
}
.page-hero--parallax-clean .page-hero__full-inner{
    grid-template-columns:minmax(0,620px);
    justify-content:flex-start;
    align-items:center;
}
.page-hero--parallax-clean .page-hero__copy{
    max-width:560px;
}
.page-hero--parallax-clean .eyebrow,
.page-hero--parallax-clean h1,
.page-hero--parallax-clean p{
    color:#0b2442;
}
.page-hero--parallax-clean p{
    max-width:560px;
    color:#445d78;
}
.page-hero--parallax-clean .hero-actions{
    margin-top:30px;
}
.page-hero--parallax-clean .btn-ghost{
    background:rgba(255,255,255,.88);
    color:#0b2442;
    border-color:rgba(11,36,66,.12);
}
.page-hero--parallax-clean .btn-ghost:hover{
    background:#fff;
}

.editorial-module__actions{
    margin-top:26px;
}
.editorial-module__actions .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 24px;
    border-radius:999px;
    background:linear-gradient(135deg,#0077c8,#10b7ca);
    color:#fff;
    text-decoration:none;
    font-weight:900;
    box-shadow:0 18px 42px rgba(0,119,200,.18);
    transition:transform .28s ease,box-shadow .28s ease;
}
.editorial-module__actions .btn:hover{
    transform:translateY(-2px);
    box-shadow:0 22px 54px rgba(0,119,200,.24);
}


.value-highlights,
.related-links{
    padding:92px 0;
    background:#f3f9fd;
    color:#10213c;
}
.value-highlights__intro,
.related-links__head,
.clinical-gallery__head{
    max-width:760px;
    margin-bottom:34px;
}
.value-highlights__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
}
.value-card{
    background:#fff;
    border:1px solid rgba(8,127,228,.08);
    border-radius:28px;
    padding:30px 26px;
    box-shadow:0 20px 55px rgba(10,49,88,.06);
}
.value-card__index{
    display:inline-grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:#eaf6ff;
    color:#087fe4;
    font-weight:900;
    font-size:13px;
    margin-bottom:16px;
}
.value-card h3{
    margin:0 0 12px;
    font-size:22px;
    line-height:1.2;
    color:#0b2442;
}
.value-card p{
    margin:0;
    color:#586b80;
    line-height:1.78;
}

.visual-band{
    padding:92px 0;
    background:#fff;
}
.visual-band__grid{
    display:grid;
    grid-template-columns:minmax(280px,.95fr) minmax(0,1fr);
    gap:56px;
    align-items:center;
}
.visual-band--reverse .visual-band__grid .visual-band__media{order:2;}
.visual-band--reverse .visual-band__grid .visual-band__copy{order:1;}
.visual-band__media{
    border-radius:34px;
    overflow:hidden;
    background:#f7fbff;
    box-shadow:0 22px 72px rgba(10,49,88,.08);
}
.visual-band__media img{
    width:100%;
    display:block;
    min-height:360px;
    object-fit:cover;
}
.visual-band__copy p{
    margin:0 0 16px;
    line-height:1.82;
    color:#586b80;
}

.content-stream{
    background:linear-gradient(180deg,#f5fbff 0%, #eef7fd 100%);
}
.stream-row{
    align-items:start;
    gap:26px;
    padding:34px 0;
    border-top:1px solid rgba(8,127,228,.1);
}
.stream-row:first-child{border-top:none;}
.stream-row__index{
    width:72px;
    height:72px;
    border-radius:50%;
    background:#fff;
    display:grid;
    place-items:center;
    box-shadow:0 14px 38px rgba(10,49,88,.08);
}
.stream-row__body{
    background:#fff;
    border-radius:28px;
    padding:28px 30px;
    box-shadow:0 20px 58px rgba(10,49,88,.06);
    border:1px solid rgba(8,127,228,.06);
}
.stream-row__body p{
    color:#586b80;
    line-height:1.82;
}
.stream-row__body .clean-list li{
    color:#405266;
}

.clinical-gallery{
    padding:96px 0;
    background:#fff;
}
.clinical-gallery__head p{
    color:#586b80;
    line-height:1.82;
}
.gallery-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
}
.gallery-grid figure{
    margin:0;
    background:#fff;
    border-radius:26px;
    overflow:hidden;
    box-shadow:0 22px 56px rgba(10,49,88,.08);
    border:1px solid rgba(8,127,228,.08);
}
.gallery-grid img{
    width:100%;
    height:280px;
    object-fit:cover;
    display:block;
}
.gallery-grid figcaption{
    padding:16px 18px 18px;
    font-size:14px;
    color:#36506a;
    font-weight:700;
}

.directory-grid--related{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
.directory-grid a{
    position:relative;
    overflow:hidden;
}
.directory-grid a::after{
    content:'';
    position:absolute;
    inset:auto 0 0 0;
    height:3px;
    transform:scaleX(0);
    transform-origin:left center;
    background:linear-gradient(90deg,#087fe4,#16a6cf);
    transition:transform .35s ease;
}
.directory-grid a:hover::after{transform:scaleX(1);}
.directory-grid a b{transition:transform .35s ease;}
.directory-grid a:hover b{transform:translateX(4px);}

.faq-clean details,
.contact-links a,
.footer-actions a,
.page-hero .btn,
.whatsapp-float{
    transition:transform .28s ease, box-shadow .28s ease, background-color .28s ease, color .28s ease;
}
.contact-links a:hover,
.footer-actions a:hover,
.page-hero .btn:hover,
.whatsapp-float:hover{
    transform:translateY(-2px);
}

@media(max-width:1100px){
    .page-hero__grid,
    .visual-band__grid,
    .page-hero__full-inner,
    .value-highlights__grid,
    .directory-grid--related,
    .gallery-grid{
        grid-template-columns:1fr 1fr;
    }
    .page-hero__full-inner{grid-template-columns:1fr;}
}

@media(max-width:820px){
    .page-hero--split,
    .page-hero--full,
    .value-highlights,
    .visual-band,
    .clinical-gallery,
    .related-links{padding:70px 0;}
    .page-hero__grid,
    .visual-band__grid,
    .value-highlights__grid,
    .gallery-grid,
    .directory-grid--related{grid-template-columns:1fr;}
    .page-hero__media img{min-height:320px;}
    .visual-band__media img{min-height:280px;}
    .page-hero--full{min-height:auto;padding:90px 0 58px;}
    .page-hero__veil{background:linear-gradient(180deg,rgba(11,36,66,.9) 0%, rgba(11,36,66,.66) 100%);}
    .page-hero__facts{justify-self:auto;}
    .page-hero--parallax-clean{min-height:680px;padding:96px 0 84px;align-items:flex-end;}
    .page-hero--parallax-clean .page-hero__picture img{object-position:center center;transform:translate3d(0,var(--page-hero-parallax-y,0px),0) scale(1.08);}
    .page-hero--parallax-clean .page-hero__veil{background:linear-gradient(180deg,rgba(247,241,235,.18) 0%, rgba(247,241,235,.04) 100%);}
    .page-hero--parallax-clean .page-hero__copy{max-width:100%;}
    .page-hero--parallax-clean h1{font-size:clamp(40px,10vw,64px);}
    .cards-module--story .cards-module__grid{grid-template-columns:1fr;}

    .stream-row__body{padding:22px;}
}

/* ===== Internal pages number alignment fix =====
   Scope: internal page sections only. Home markup/classes are not changed. */
.intro-section .section-number{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-width:44px;
    height:32px;
    padding:0 12px;
    border-radius:999px;
    background:#eaf6ff;
    color:#087fe4;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    line-height:1;
    margin:0 0 18px;
    box-shadow:0 10px 24px rgba(8,127,228,.08);
}

.content-stream .stream-row{
    display:grid;
    grid-template-columns:76px minmax(0,900px);
    justify-content:center;
    align-items:start;
    gap:24px;
}

.content-stream .stream-row__index{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:58px;
    height:58px;
    min-width:58px;
    border-radius:50%;
    background:#fff;
    color:#087fe4;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    line-height:1;
    margin:0;
    padding:0;
    box-shadow:0 16px 36px rgba(10,49,88,.08);
    border:1px solid rgba(8,127,228,.08);
    text-align:center;
}

.content-stream .stream-row__body{
    width:100%;
    max-width:900px;
}

@media(max-width:820px){
    .content-stream .stream-row{
        grid-template-columns:1fr;
        gap:14px;
        padding:28px 0;
    }
    .content-stream .stream-row__index{
        width:44px;
        height:44px;
        min-width:44px;
        font-size:11px;
        margin-left:2px;
    }
}

/* ===== Premium internal page modules (home untouched) ===== */
.internal-module{position:relative;padding:92px 0;background:#fff;color:#0b2442;overflow:hidden;}
.internal-module:nth-of-type(even){background:#f5fbff;}
.internal-module.checklist-module{background:#0b2442;color:#fff;}
.internal-module.checklist-module h2,.internal-module.checklist-module p{color:#fff;}
.module-head{max-width:780px;margin:0 0 38px;}
.module-head h2,.editorial-module h2,.feature-module h2,.video-module h2,.checklist-module h2{font-family:'Playfair Display',serif;color:#071d36;line-height:1.05;font-size:clamp(34px,4vw,58px);margin:10px 0 14px;}
.module-head p,.feature-module__copy p,.video-module__copy p,.editorial-module__body p,.checklist-module__copy p{color:#52667d;line-height:1.82;font-size:16px;}
.editorial-module__grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:78px;align-items:start;}
.editorial-module--deep{background:#0b2442;color:#fff;}
.editorial-module--deep h2,.editorial-module--deep p{color:#fff;}
.editorial-module__body p{margin:0 0 22px;}
.editorial-module__aside{margin-top:30px;padding-top:24px;border-top:1px solid rgba(8,127,228,.18);}
.editorial-module__aside strong{display:block;color:#087fe4;margin-bottom:8px;font-size:15px;letter-spacing:.06em;text-transform:uppercase;}
.editorial-module__aside p{font-weight:700;color:#223f5e;margin:0 0 10px;}
.feature-module__grid{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr);gap:62px;align-items:center;}
.feature-module--reverse .feature-module__media{order:2;}
.feature-module--reverse .feature-module__copy{order:1;}
.feature-module__media{margin:0;border-radius:34px;overflow:hidden;min-height:420px;background:linear-gradient(135deg,#eef8ff,#fff);box-shadow:0 28px 80px rgba(10,49,88,.1);}
.feature-module__media img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover;transition:transform .55s ease;}
.feature-module__media:hover img{transform:scale(1.025);}
.feature-module--contained .feature-module__media img{object-fit:contain;padding:18px;background:#fff;}
.video-module__grid{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:56px;align-items:center;}
.video-module--reverse .video-module__copy{order:2;}
.video-module--reverse .video-module__media{order:1;}
.video-module__media{margin:0;border-radius:30px;overflow:hidden;background:#071d36;box-shadow:0 28px 80px rgba(10,49,88,.12);}
.video-module__player{display:block;width:100%;aspect-ratio:16/9;max-height:560px;object-fit:contain;background:#071d36;}
.video-module__media figcaption{padding:14px 18px;background:#fff;color:#40566e;font-size:13px;line-height:1.45;font-weight:800;}
.video-module__cta{display:inline-flex;align-items:center;justify-content:center;margin-top:22px;min-height:48px;padding:0 24px;border-radius:999px;background:linear-gradient(135deg,#0077c8,#10b7ca);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 18px 42px rgba(0,119,200,.18);transition:transform .28s ease,box-shadow .28s ease;}
.video-module__cta:hover{transform:translateY(-2px);box-shadow:0 22px 54px rgba(0,119,200,.24);}
.feature-list{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:13px;}
.feature-list li{position:relative;padding-left:28px;color:#314b66;line-height:1.65;font-weight:700;}
.feature-list li:before{content:'';position:absolute;left:0;top:.6em;width:9px;height:9px;border-radius:50%;background:#087fe4;box-shadow:0 0 0 6px rgba(8,127,228,.09);}
.steps-module{background:#f2f9fe;}
.steps-module__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.step-item{position:relative;padding:34px 28px;background:#fff;border-radius:28px;border:1px solid rgba(8,127,228,.08);box-shadow:0 20px 56px rgba(10,49,88,.06);}
.steps-module--path .step-item:after{content:'';position:absolute;top:48px;right:-22px;width:22px;height:2px;background:rgba(8,127,228,.26);}
.steps-module--path .step-item:last-child:after{display:none;}
.step-item span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#eaf6ff;color:#087fe4;font-weight:900;font-size:12px;margin-bottom:18px;}
.step-item h3,.info-card h3,.stage-row h3,.faq-category h3{margin:0 0 12px;color:#0b2442;font-size:22px;line-height:1.18;}
.step-item p,.info-card p,.stage-row p{margin:0;color:#52667d;line-height:1.75;}
.cards-module__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;}
.cards-module--open .cards-module__grid{gap:32px;}
.cards-module--open .info-card{background:rgba(255,255,255,.72);border:1px solid rgba(8,127,228,.14);padding:30px 28px;box-shadow:none;border-radius:18px;}
.cards-module--solid .info-card,.info-card{background:#fff;border-radius:28px;padding:28px;border:1px solid rgba(8,127,228,.08);box-shadow:0 20px 56px rgba(10,49,88,.06);}
.cards-module--story .cards-module__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;}
.cards-module--story .info-card{
    position:relative;
    overflow:hidden;
    padding:34px 32px 30px;
    border-radius:30px;
    border:1px solid rgba(8,127,228,.12);
    background:linear-gradient(180deg,rgba(255,255,255,.98) 0%, rgba(244,250,255,.96) 100%);
    box-shadow:0 24px 60px rgba(11,36,66,.08);
}
.cards-module--story .info-card::before{
    content:'';
    position:absolute;
    inset:0 auto auto 0;
    width:100%;
    height:6px;
    background:linear-gradient(90deg,#0aa6cf 0%, #087fe4 100%);
}
.cards-module--story .info-card__icon{
    width:auto;
    height:auto;
    border-radius:999px;
    background:transparent;
    color:#087fe4;
    margin-bottom:14px;
    font-size:12px;
    letter-spacing:.18em;
    font-weight:900;
    padding:0;
}
.cards-module--story .info-card h3{
    margin-bottom:14px;
    font-size:28px;
}
.cards-module--story .info-card p{
    font-size:16px;
    line-height:1.82;
}

.info-card__icon{display:inline-flex;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;background:#eaf6ff;color:#087fe4;font-weight:900;margin-bottom:16px;}
.checklist-module{background:#0b2442;color:#fff;}
.checklist-module__grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:70px;align-items:start;}
.checklist-module h2,.checklist-module p{color:#fff;}
.checklist-module__list{display:grid;gap:12px;}
.checkline{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:start;border-bottom:1px solid rgba(255,255,255,.12);padding:0 0 16px;}
.checkline span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#087fe4;color:#fff;font-weight:900;}
.checkline p{margin:0;color:rgba(255,255,255,.86);line-height:1.65;}
.module-note{margin-top:20px;color:rgba(255,255,255,.72)!important;font-size:14px;}
.stages-module{background:#f6fbff;}
.stages-module__list{display:grid;gap:18px;}
.stage-row{display:grid;grid-template-columns:150px 1fr;gap:36px;padding:28px 0;border-top:1px solid rgba(8,127,228,.16);}
.stage-row__label{font-weight:900;color:#087fe4;letter-spacing:.08em;text-transform:uppercase;font-size:13px;}
.gallery-module__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.gallery-module figure{margin:0;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 20px 50px rgba(10,49,88,.08);}
.gallery-module img{display:block;width:100%;height:260px;object-fit:cover;}
.gallery-module figcaption{padding:14px 16px;font-weight:700;color:#40566e;font-size:13px;line-height:1.45;}
.links-module__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.links-module__grid a{display:flex;align-items:center;justify-content:space-between;gap:18px;text-decoration:none;color:#0b2442;background:#fff;border:1px solid rgba(8,127,228,.09);border-radius:22px;padding:22px 24px;font-weight:900;box-shadow:0 16px 44px rgba(10,49,88,.05);transition:.28s ease;}
.links-module__grid a:hover{transform:translateY(-3px);box-shadow:0 22px 58px rgba(10,49,88,.1);}
.links-module__grid b{color:#087fe4;}
.comparison-module__table{overflow:auto;border-radius:26px;background:#fff;box-shadow:0 22px 60px rgba(10,49,88,.08);}
.comparison-module table{width:100%;border-collapse:collapse;min-width:720px;}
.comparison-module th{background:#0b2442;color:#fff;text-align:left;padding:18px 20px;font-size:14px;}
.comparison-module td{padding:18px 20px;border-bottom:1px solid rgba(8,127,228,.1);color:#465d75;line-height:1.6;}
.contact-options__grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:62px;align-items:center;}
.contact-options__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;min-width:0;}
.contact-options__cards a{display:grid;gap:8px;min-width:0;padding:24px;border-radius:24px;background:#fff;border:1px solid rgba(8,127,228,.1);text-decoration:none;color:#0b2442;box-shadow:0 18px 50px rgba(10,49,88,.06);}
.contact-options__cards strong{font-size:18px;}
.contact-options__cards span{color:#52667d;line-height:1.5;overflow-wrap:anywhere;word-break:break-word;}
.quote-module{background:#f4faff;}
.quote-module blockquote{max-width:940px;margin:0 auto;text-align:center;}
.quote-module p{font-family:'Playfair Display',serif;font-size:clamp(34px,4.5vw,64px);line-height:1.08;color:#071d36;margin:0;}
.quote-module cite{display:block;margin-top:20px;color:#087fe4;font-weight:800;font-style:normal;}
.faq-categories{background:#fff;}
.faq-categories__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.faq-category{border-top:1px solid rgba(8,127,228,.18);padding-top:24px;}
.faq-category details{border-bottom:1px solid rgba(8,127,228,.12);padding:16px 0;}
.faq-category summary{cursor:pointer;font-weight:900;color:#0b2442;}
.faq-category p{color:#52667d;line-height:1.7;margin:12px 0 0;}
.bmi-block--tool{
    background:linear-gradient(135deg,#f7fbff 0%,#fff 54%,#edf8fb 100%);
}
.bmi-block--tool .bmi-grid{
    align-items:stretch;
}
.bmi-block--tool .io-reveal:first-child{
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-left:4px solid #087fe4;
    padding-left:32px;
}
.bmi-block--tool small{
    display:block;
    margin-top:18px;
    color:#5f7081;
    font-weight:800;
}
.bmi-block--tool .bmi-card{
    border:1px solid rgba(8,127,228,.13);
    border-top:4px solid #087fe4;
    border-radius:24px;
    padding:30px;
    background:#fff;
    box-shadow:0 22px 70px rgba(10,49,88,.08);
}
.resource-hub{
    background:#f6fbff;
}
.resource-hub__head{
    max-width:820px;
}
.resource-hub__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
    margin-top:34px;
}
.resource-topic{
    display:flex;
    min-height:100%;
    flex-direction:column;
    justify-content:space-between;
    gap:26px;
    padding:30px;
    border-radius:24px;
    background:#fff;
    border:1px solid rgba(8,127,228,.10);
    box-shadow:0 20px 60px rgba(10,49,88,.07);
}
.resource-topic h3{
    margin:0 0 12px;
    color:#0b2442;
    font-size:24px;
    line-height:1.16;
}
.resource-topic p{
    margin:0;
    color:#52667d;
    line-height:1.72;
}
.resource-topic__links{
    display:grid;
    gap:10px;
}
.resource-topic__links a{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    text-decoration:none;
    color:#0b2442;
    font-weight:900;
    padding:13px 0;
    border-top:1px solid rgba(8,127,228,.12);
}
.resource-topic__links b{
    color:#087fe4;
}
.io-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .7s ease,transform .7s ease;}
.io-reveal.is-visible{opacity:1;transform:none;}

@media(max-width:1100px){
  .editorial-module__grid,.feature-module__grid,.video-module__grid,.checklist-module__grid,.contact-options__grid{grid-template-columns:1fr;gap:38px;}
  .steps-module__grid,.cards-module__grid,.links-module__grid,.contact-options__cards,.resource-hub__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .gallery-module__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .internal-module{padding:68px 0;}
  .steps-module__grid,.cards-module__grid,.links-module__grid,.contact-options__cards,.gallery-module__grid,.faq-categories__grid,.resource-hub__grid{grid-template-columns:1fr;}
  .stage-row{grid-template-columns:1fr;gap:10px;}
  .feature-module--reverse .feature-module__media,.feature-module--reverse .feature-module__copy{order:initial;}
  .video-module--reverse .video-module__media,.video-module--reverse .video-module__copy{order:initial;}
  .feature-module__media,.feature-module__media img{min-height:300px;}
  .video-module__player{aspect-ratio:4/5;max-height:620px;}
  .steps-module--path .step-item:after{display:none;}
  .bmi-block--tool .io-reveal:first-child{padding-left:22px;}
  .bmi-block--tool .bmi-card{padding:24px;}
}

/* FINAL COLOR REFRESH - clinical blue, white and fresh green accents */
:root{
    --turquoise:#39d6c8;
    --turquoise-strong:#10b7ca;
    --blue:#0077c8;
    --blue-soft:#159be0;
    --blue-deep:#064a78;
    --navy:#082843;
    --ink:#12304f;
    --muted:rgba(255,255,255,.88);
    --line:rgba(255,255,255,.28);
    --shadow:0 24px 76px rgba(2,68,126,.22);
    --medical-green:#26c985;
    --medical-mint:#e9fbf6;
    --clinical-sky:#eef8ff;
}

::selection{
    color:var(--navy);
    background:rgba(38,201,133,.28);
}

.desktop-top,
.mobile-top,
.site-header{
    background:rgba(255,255,255,.985);
    border-bottom-color:rgba(0,119,200,.16);
    box-shadow:0 16px 48px rgba(6,74,120,.09);
}

.home-nav-bar{
    background:linear-gradient(90deg,var(--blue-deep) 0%,var(--blue) 58%,var(--turquoise-strong) 100%);
    border-bottom:1px solid rgba(255,255,255,.18);
    box-shadow:0 18px 42px rgba(6,74,120,.14);
}

.home-nav-link{
    color:rgba(255,255,255,.92);
}

.home-nav-link:hover,
.home-nav-link.is-active{
    color:#ffffff;
    background:rgba(255,255,255,.14);
}

.home-nav-dropdown__panel,
.site-header .dropdown-panel{
    border-color:rgba(0,119,200,.14);
    box-shadow:0 30px 90px rgba(6,74,120,.16);
}

.home-nav-dropdown__panel a:hover,
.site-header .dropdown-panel a:hover{
    color:var(--blue);
    background:var(--clinical-sky);
}

.lang-switch{
    background:rgba(0,119,200,.08);
    border-color:rgba(0,119,200,.14);
}

.lang-switch__link.is-active,
.lang-switch__link:hover,
.contact-chip,
.btn--primary,
.page-hero .btn-primary,
.faq-clean-home__cta a,
.faq-answer__cta,
.bmi-form button,
.bmi-result__cta,
.bmi-block--tool .bmi-card button,
.site-header .nav-cta,
.mobile-menu__cta{
    color:#ffffff;
    background:linear-gradient(135deg,var(--blue) 0%,var(--turquoise-strong) 58%,var(--medical-green) 100%);
    box-shadow:0 18px 42px rgba(0,119,200,.26);
}

.contact-chip:hover,
.btn--primary:hover,
.page-hero .btn-primary:hover,
.faq-clean-home__cta a:hover,
.faq-answer__cta:hover,
.bmi-form button:hover,
.bmi-result__cta:hover,
.site-header .nav-cta:hover,
.mobile-menu__cta:hover{
    box-shadow:0 22px 52px rgba(16,183,202,.30);
}

.hero{
    background:var(--blue-deep);
}

.hero__video{
    filter:none;
}

.hero__overlay{
    background:
        linear-gradient(90deg,rgba(5,17,33,.26) 0%,rgba(5,17,33,.14) 42%,rgba(5,17,33,0) 100%),
        linear-gradient(180deg,rgba(5,17,33,.04) 0%,rgba(5,17,33,.08) 100%);
}

.hero::after{
    background:none;
}

.hero__line{
    border-color:rgba(255,255,255,.18);
}

.section-eyebrow,
.about-doctor__eyebrow,
.patient-reviews__eyebrow,
.bmi-calculator__eyebrow,
.choice-difference__eyebrow,
.page-hero .eyebrow,
.intro-section .section-number,
.content-stream .stream-row__index,
.link-directory .eyebrow,
.clinical-gallery .eyebrow,
.faq-clean .eyebrow,
.comparison .eyebrow,
.bmi-block .eyebrow,
.module-head .eyebrow,
.stage-row__label,
.quote-module cite{
    color:var(--turquoise-strong);
}

.doctor-stats,
.bmi-calculator,
.choice-difference,
.content-stream,
.link-directory,
.comparison,
.steps-module,
.stages-module,
.quote-module,
.resource-hub,
.internal-module:nth-of-type(even){
    background:linear-gradient(180deg,#f8fcff 0%,#eef8ff 58%,#f7fffc 100%);
}

.about-doctor,
.page-hero,
.bmi-block--tool{
    background:
        radial-gradient(circle at 12% 16%,rgba(57,214,200,.10),transparent 28%),
        radial-gradient(circle at 88% 12%,rgba(38,201,133,.08),transparent 26%),
        linear-gradient(135deg,#ffffff 0%,#f3fbff 58%,#f1fff9 100%);
}

.patient-reviews,
.contact-band,
.checklist-module,
.internal-module.checklist-module,
.editorial-module--deep{
    background:linear-gradient(145deg,#05233e 0%,#064a78 52%,#087e9e 100%);
}

.patient-reviews__overlay{
    background:
        radial-gradient(circle at 82% 20%,rgba(57,214,200,.26),transparent 34%),
        linear-gradient(115deg,rgba(5,35,62,.76) 0%,rgba(6,74,120,.62) 36%,rgba(38,201,133,.20) 72%,rgba(5,20,36,.58) 100%);
}

.page-hero__veil{
    background:linear-gradient(90deg,rgba(5,35,62,.78) 0%,rgba(6,74,120,.58) 46%,rgba(16,183,202,.28) 100%);
}

.page-hero--parallax-clean .page-hero__veil{
    background:linear-gradient(90deg,rgba(255,255,255,.12) 0%,rgba(233,251,246,.08) 100%);
}

.bmi-calculator__form-card,
.bmi-calculator__result-card,
.choice-highlight,
.choice-card,
.value-card,
.step-item,
.info-card,
.cards-module--story .info-card,
.resource-topic,
.contact-options__cards a,
.gallery-grid figure,
.feature-module__media,
.comparison-module__table{
    border-color:rgba(0,119,200,.12);
    box-shadow:0 24px 68px rgba(6,74,120,.10);
}

.choice-highlight:hover,
.choice-card:hover,
.value-card:hover,
.step-item:hover,
.info-card:hover,
.resource-topic:hover,
.contact-options__cards a:hover{
    border-color:rgba(16,183,202,.28);
    box-shadow:0 30px 82px rgba(6,74,120,.15);
}

.clean-list li::before,
.feature-list li::before,
.directory-grid a::after,
.cards-module--story .info-card::before,
.bmi-block--tool .io-reveal:first-child,
.bmi-block--tool .bmi-card{
    border-color:var(--turquoise-strong);
}

.clean-list li::before,
.feature-list li::before,
.directory-grid a::after,
.cards-module--story .info-card::before,
.checkline span,
.info-card__icon,
.step-item span{
    background:linear-gradient(135deg,var(--medical-green),var(--turquoise-strong));
}

.info-card__icon,
.step-item span,
.content-stream .stream-row__index,
.intro-section .section-number{
    color:#06395f;
}

.page-hero h1,
.intro-section h2,
.content-stream h2,
.link-directory h2,
.clinical-gallery h2,
.comparison h2,
.faq-clean h2,
.module-head h2,
.editorial-module h2,
.feature-module h2,
.quote-module p{
    color:#071f3a;
}

.prose p,
.stream-row__body p,
.page-hero__copy p,
.module-head p,
.feature-module__copy p,
.editorial-module__body p,
.resource-topic p,
.contact-options__cards span{
    color:#4c657f;
}

.social-link,
.mobile-social{
    background:#ffffff;
    border:2px solid rgba(0,119,200,.10);
    box-shadow:0 14px 32px rgba(6,74,120,.13);
}

.social-link[aria-label="Instagram"],
.mobile-social[aria-label="Instagram"]{
    color:#e4405f;
    background:
        linear-gradient(#ffffff,#ffffff) padding-box,
        radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%) border-box;
    border-color:transparent;
}

.social-link[aria-label="Facebook"],
.mobile-social[aria-label="Facebook"]{
    color:#1877f2;
    background:#ffffff;
    border-color:rgba(24,119,242,.22);
}

.social-link[aria-label="TikTok"],
.mobile-social[aria-label="TikTok"]{
    color:#111111;
    background:#ffffff;
    border-color:rgba(17,17,17,.14);
}

.social-link[aria-label="TikTok"] svg,
.mobile-social[aria-label="TikTok"] svg{
    filter:drop-shadow(1px 0 0 #fe2c55) drop-shadow(-1px 0 0 #25f4ee);
}

.social-link:hover,
.mobile-social:hover{
    box-shadow:0 20px 44px rgba(6,74,120,.18);
}

.whatsapp-float{
    background:#25d366;
    color:#ffffff;
    box-shadow:0 18px 44px rgba(37,211,102,.32);
}

.whatsapp-float:hover{
    background:#1ebe5d;
    box-shadow:0 24px 54px rgba(37,211,102,.38);
}

@media(max-width:1060px){
    .mobile-menu{
        background:linear-gradient(145deg,#05233e 0%,#064a78 52%,#0c829f 100%) !important;
    }

    .mobile-menu__languages a.is-active{
        background:#ffffff !important;
        color:var(--blue-deep) !important;
    }
}

/* Ajuste final home: encuadre profesional del bloque del doctor */
@media (min-width: 981px){
    .about-doctor__visual{
        aspect-ratio:auto;
        min-height:clamp(700px,44vw,830px);
    }

    .about-doctor__bg{
        height:100%;
        min-height:0;
        object-fit:cover;
        object-position:center top;
    }

    .about-doctor__content-wrap{
        justify-content:center;
        padding-top:clamp(34px,3.8vw,58px);
        padding-bottom:clamp(34px,3.8vw,58px);
        padding-right:clamp(18px,4.2vw,82px);
    }

    .about-doctor__copy,
    .about-logos{
        width:min(100%,500px);
    }

    .about-doctor__copy h2{
        font-size:clamp(2.5rem,3.7vw,4.45rem);
        max-width:9.2ch;
    }

    .about-doctor__copy p{
        margin-top:16px;
        line-height:1.64;
    }

    .about-logos{
        margin-top:22px;
        gap:12px 18px;
    }

    .about-logo{
        min-height:58px;
    }
}

@media (min-width: 981px) and (max-width: 1280px){
    .about-doctor__visual{
        min-height:720px;
    }

    .about-doctor__content-wrap{
        padding-right:clamp(16px,2.4vw,34px);
    }

    .about-doctor__copy,
    .about-logos{
        width:min(100%,440px);
    }
}


/* MiniMed about-logo sizing adjustment */
@media (max-width: 760px){
    .about-logo__mark--minimed::before{
        width:7px;
        height:24px;
    }

    .about-logo__mark--minimed::after{
        width:24px;
        height:7px;
    }
}


/* MiniMed home badge symmetry fix */
.about-logo--minimed {
    min-height: 64px;
}

.about-logo--minimed .about-logo__text span {
    opacity: .88;
}

/* Language switch clean flag style */
.lang-switch {
    gap: 18px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.lang-switch__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    min-width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(16,33,60,.72) !important;
    line-height: 1 !important;
    transform: none !important;
}

.lang-switch__link::before,
.mobile-menu__languages a::before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    border-radius: 50%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    box-shadow: 0 0 0 1px rgba(16,33,60,.16);
}

.lang-switch__link:first-child::before,
.mobile-menu__languages a:first-child::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect width='24' height='24' fill='%23fff'/%3E%3Crect x='12' width='12' height='12' fill='%23d21034'/%3E%3Crect y='12' width='12' height='12' fill='%230056b3'/%3E%3Cpath fill='%230056b3' d='M6 2.8l.8 2.4h2.5L7.3 6.7l.8 2.5L6 7.7 3.9 9.2l.8-2.5-2-1.5h2.5z'/%3E%3Cpath fill='%23d21034' d='M18 14.8l.8 2.4h2.5l-2 1.5.8 2.5-2.1-1.5-2.1 1.5.8-2.5-2-1.5h2.5z'/%3E%3C/svg%3E");
}

.lang-switch__link:last-child::before,
.mobile-menu__languages a:last-child::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 247 247'%3E%3Crect width='247' height='247' fill='%23fff'/%3E%3Cpath fill='%23b22234' d='M0 0h247v19H0zm0 38h247v19H0zm0 76h247v19H0zm0 38h247v19H0zm0 38h247v19H0zm0 38h247v19H0zM0 76h247v19H0z'/%3E%3Crect width='106' height='133' fill='%233c3b6e'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='14' cy='14' r='3'/%3E%3Ccircle cx='32' cy='14' r='3'/%3E%3Ccircle cx='50' cy='14' r='3'/%3E%3Ccircle cx='68' cy='14' r='3'/%3E%3Ccircle cx='86' cy='14' r='3'/%3E%3Ccircle cx='23' cy='32' r='3'/%3E%3Ccircle cx='41' cy='32' r='3'/%3E%3Ccircle cx='59' cy='32' r='3'/%3E%3Ccircle cx='77' cy='32' r='3'/%3E%3Ccircle cx='14' cy='50' r='3'/%3E%3Ccircle cx='32' cy='50' r='3'/%3E%3Ccircle cx='50' cy='50' r='3'/%3E%3Ccircle cx='68' cy='50' r='3'/%3E%3Ccircle cx='86' cy='50' r='3'/%3E%3Ccircle cx='23' cy='68' r='3'/%3E%3Ccircle cx='41' cy='68' r='3'/%3E%3Ccircle cx='59' cy='68' r='3'/%3E%3Ccircle cx='77' cy='68' r='3'/%3E%3Ccircle cx='14' cy='86' r='3'/%3E%3Ccircle cx='32' cy='86' r='3'/%3E%3Ccircle cx='50' cy='86' r='3'/%3E%3Ccircle cx='68' cy='86' r='3'/%3E%3Ccircle cx='86' cy='86' r='3'/%3E%3Ccircle cx='23' cy='104' r='3'/%3E%3Ccircle cx='41' cy='104' r='3'/%3E%3Ccircle cx='59' cy='104' r='3'/%3E%3Ccircle cx='77' cy='104' r='3'/%3E%3C/g%3E%3C/svg%3E");
}

.lang-switch__link.is-active,
.lang-switch__link:hover {
    color: var(--blue) !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

.mobile-menu__languages {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.mobile-menu__languages a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 1 !important;
}

.mobile-menu__languages a.is-active,
.mobile-menu__languages a:hover {
    background: transparent !important;
    box-shadow: none !important;
}

/* Client panel link in header */
.client-panel-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    color: var(--blue);
    font-size: .82rem;
    line-height: 1;
    font-weight: 900;
    white-space: nowrap;
    background: rgba(8,127,228,.08);
    border: 1px solid rgba(8,127,228,.18);
    box-shadow: none;
    transition: transform .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
}

.client-panel-chip:hover {
    transform: translateY(-2px);
    color: #ffffff;
    background: linear-gradient(135deg, var(--blue), var(--turquoise-strong));
    border-color: transparent;
}

.doctor-stat__value--rank {
    letter-spacing: -.03em;
}

.doctor-stats__note {
    position: relative;
    z-index: 1;
    width: min(100%, 760px);
    margin: -8px auto 34px;
    color: rgba(16,33,60,.74);
    font-size: .98rem;
    line-height: 1.55;
    text-align: center;
    font-weight: 750;
}

.mobile-menu__panel {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 44px !important;
    margin: -12px 0 22px !important;
    padding: 11px 18px !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.24) !important;
    font-weight: 900 !important;
    box-shadow: none !important;
}

@media (max-width: 1180px) {
    .desktop-top__right {
        gap: 9px;
    }

    .client-panel-chip {
        padding-inline: 13px;
        font-size: .78rem;
    }
}

@media (max-width: 760px) {
    .doctor-stats__note {
        margin: 0 auto 28px;
        padding: 0 18px;
        font-size: .93rem;
    }
}

.blog-card__placeholder { position: relative; }
.blog-card__body time { display: block; text-align: right; }
.blog-article__meta { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 48px; }
.blog-article__meta .blog-back { margin-bottom: 0; }
.blog-article__meta time { white-space: nowrap; }
@media (max-width: 760px) { .blog-article__meta { margin-bottom: 34px; } }
