:root{
 --blue:#1478ff;--blue2:#4aa7ff;--navy:#08285f;--navy2:#0a3d91;
 --cyan:#18b9e8;--violet:#7756ff;--text:#14213d;--muted:#6c7892;
 --bg:#f7f9fd;--soft:#eef5ff;--border:#e2eaf5;--white:#fff;
 --shadow:0 24px 70px rgba(22,72,148,.14);--shadow2:0 16px 40px rgba(20,70,140,.09);
 --radius:24px;--container:1180px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;background:#fff}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.container{width:min(calc(100% - 40px),var(--container));margin:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);border-bottom:1px solid rgba(226,234,245,.8);backdrop-filter:blur(18px)}.header.shadow{box-shadow:0 10px 28px rgba(10,61,145,.08)}.nav-wrap{min-height:82px;display:flex;align-items:center;gap:30px}.logo img{width:168px}.nav{margin-left:auto;display:flex;gap:26px}.nav a{font-size:.93rem;font-weight:700;color:#4f5c75}.nav a:hover{color:var(--blue)}.nav-actions{display:flex;gap:10px}.menu{display:none;width:44px;height:44px;border:1px solid var(--border);border-radius:13px;background:#fff;padding:10px}.menu span{display:block;height:2px;margin:4px 0;background:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:13px;font-weight:800;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--blue),#2d8dff);box-shadow:0 12px 24px rgba(20,120,255,.24)}.btn-ghost{color:var(--navy)}.btn-light{background:#fff;border:1px solid var(--border);color:var(--navy)}.btn-white{background:#fff;color:var(--navy)}.btn-large{min-height:54px;padding:0 27px;border-radius:16px}
.hero{position:relative;overflow:hidden;padding:96px 0 112px;background:radial-gradient(circle at 10% 10%,rgba(74,167,255,.13),transparent 28%),linear-gradient(180deg,#fbfdff,#f6f9ff)}.blob{position:absolute;border-radius:50%;opacity:.55}.blob-a{width:420px;height:420px;right:-160px;top:40px;background:rgba(20,120,255,.12)}.blob-b{width:220px;height:220px;left:-90px;bottom:60px;background:rgba(119,86,255,.09)}.hero-grid{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:70px}.pill,.kicker,.heading>span,.cta span{display:inline-flex;color:var(--blue);font-size:.79rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.pill{padding:9px 13px;border:1px solid rgba(20,120,255,.14);border-radius:999px;background:rgba(20,120,255,.08)}.hero h1{margin:24px 0 22px;color:var(--navy);font-size:clamp(3rem,5.6vw,5.2rem);line-height:.98;letter-spacing:-.055em}.hero h1 em{color:var(--blue);font-style:normal}.hero-copy>p{max-width:650px;margin:0;color:var(--muted);font-size:1.2rem}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:32px}.trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px;color:#536079;font-size:.87rem;font-weight:700}
.mockup-wrap{position:relative}.dashboard{overflow:hidden;border:1px solid rgba(198,216,241,.8);border-radius:28px;background:#fff;box-shadow:var(--shadow);transform:perspective(1200px) rotateY(-3deg)}.dash-top{min-height:72px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf2f8}.dash-brand{display:flex;gap:12px;align-items:center}.dash-brand>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--navy2));font-weight:900}.dash-brand b,.dash-brand small{display:block}.dash-brand small{color:#92a0b7;font-size:.72rem}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#eaf3ff;color:var(--navy);font-size:.74rem;font-weight:900}.dash-body{display:grid;grid-template-columns:72px 1fr;min-height:430px}.dash-side{display:flex;flex-direction:column;align-items:center;gap:22px;padding:28px 0;background:#f8fbff;border-right:1px solid #edf2f8}.dash-side i{width:30px;height:10px;border-radius:999px;background:#dce7f5}.dash-side i.active{height:34px;border-radius:11px;background:linear-gradient(var(--blue),var(--blue2))}.dash-content{padding:28px;background:#fbfdff}.dash-title{display:flex;align-items:center;justify-content:space-between}.dash-title small{color:#93a1b7}.dash-title h3{margin:2px 0;color:var(--navy);font-size:1.08rem}.dash-title button{border:0;padding:9px 13px;border-radius:10px;color:#fff;background:var(--blue);font-size:.7rem;font-weight:800}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:22px 0}.stats article{padding:18px;border:1px solid #edf2f8;border-radius:17px;background:#fff}.stats span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#fff;background:var(--blue);font-weight:900}.stats article:nth-child(2) span{background:var(--cyan)}.stats article:nth-child(3) span{background:var(--violet)}.stats b,.stats small{display:block}.stats b{margin-top:10px;color:var(--navy);font-size:1.2rem}.stats small{color:#8c99af}.dash-panels{display:grid;grid-template-columns:1.45fr .75fr;gap:13px}.dash-panels>article{padding:18px;border:1px solid #edf2f8;border-radius:17px;background:#fff}.panel-title{display:flex;justify-content:space-between;font-size:.75rem}.panel-title a{color:var(--blue)}.appointment{display:grid;grid-template-columns:44px 9px 1fr auto;gap:9px;align-items:center;padding:11px 0;border-top:1px solid #f0f3f8}.appointment strong{font-size:.7rem}.appointment i{width:8px;height:8px;border-radius:50%;background:var(--cyan)}.appointment i.purple{background:var(--violet)}.appointment b,.appointment small{display:block;font-size:.7rem}.appointment small{color:#93a0b4;font-size:.62rem}.appointment em{padding:5px 9px;border-radius:999px;background:#eafaf4;color:#1b8f69;font-style:normal;font-size:.58rem;font-weight:800}.appointment em.pending{background:#f0edff;color:#7a64cf}.quick>b{display:block;margin-bottom:13px;font-size:.75rem}.quick>div{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quick span{display:grid;place-items:center;min-height:48px;border-radius:11px;background:#f3f7fc;color:var(--navy);font-size:.63rem;font-weight:800}.float-card{position:absolute;display:flex;align-items:center;gap:11px;min-width:210px;padding:14px 16px;border:1px solid var(--border);border-radius:17px;background:rgba(255,255,255,.96);box-shadow:var(--shadow2)}.float-card.one{top:38px;right:-42px}.float-card.two{left:-35px;bottom:34px}.float-card>b{display:grid;place-items:center;min-width:38px;height:38px;border-radius:12px;color:#fff;background:var(--blue);font-size:.72rem}.float-card.two>b{background:var(--violet)}.float-card strong,.float-card small{display:block}.float-card strong{font-size:.78rem}.float-card small{color:#8e9bb0;font-size:.66rem}
.section{padding:104px 0}.soft{background:var(--bg)}.heading{max-width:760px;margin:0 auto 48px;text-align:center}.heading h2,.split h2,.faq h2{margin:14px 0;color:var(--navy);font-size:clamp(2.15rem,4vw,3.6rem);line-height:1.08;letter-spacing:-.045em}.heading p,.split p,.faq p{margin:0;color:var(--muted);font-size:1.04rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{padding:34px;border:1px solid var(--border);border-radius:22px;background:#fff;box-shadow:0 14px 30px rgba(19,61,125,.05)}.cards article.highlight{border-color:rgba(20,120,255,.28);box-shadow:0 20px 50px rgba(20,120,255,.1)}.cards i,.steps i{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue2));font-style:normal;font-weight:900}.cards h3{margin:22px 0 9px;color:var(--navy)}.cards p{margin:0;color:var(--muted)}
.split{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:70px}.split ul{display:grid;gap:12px;padding:0;margin:27px 0;list-style:none;color:#40506b;font-weight:700}.text-link{color:var(--blue);font-weight:900}.patient-ui{overflow:hidden;border:1px solid var(--border);border-radius:25px;background:#fff;box-shadow:var(--shadow)}.browser{display:flex;gap:7px;padding:15px 18px;background:#f7f9fc;border-bottom:1px solid #e8eef6}.browser span{width:9px;height:9px;border-radius:50%;background:#d6deea}.patient-body{display:grid;grid-template-columns:82px 1fr;min-height:420px}.patient-body aside{display:flex;flex-direction:column;align-items:center;gap:20px;padding:25px 0;background:var(--navy)}.patient-body aside b{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#fff;color:var(--navy)}.patient-body aside i{width:31px;height:8px;border-radius:999px;background:rgba(255,255,255,.23)}.patient-content{padding:30px;background:#fbfdff}.patient-content>small{color:#8b99af}.patient-content h3{margin:4px 0;color:var(--navy)}.tabs{display:flex;gap:24px;margin:25px 0;padding-bottom:13px;border-bottom:1px solid #e9eef5;color:#8d99ad;font-size:.78rem}.tabs b{color:var(--blue)}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini-stats article{padding:17px;border:1px solid #e9eef5;border-radius:14px;background:#fff}.mini-stats small,.mini-stats b{display:block}.mini-stats small{color:#93a0b2;font-size:.68rem}.mini-stats b{margin-top:6px;color:var(--navy);font-size:.86rem}.lines{display:grid;gap:13px;margin-top:18px;padding:22px;border:1px solid #e9eef5;border-radius:14px;background:#fff}.lines i{width:92%;height:10px;border-radius:999px;background:#e9eef5}.lines i:nth-child(2){width:62%}.lines i:nth-child(3){width:76%}
.blue{color:#fff;background:radial-gradient(circle at 20% 10%,rgba(74,167,255,.3),transparent 30%),linear-gradient(135deg,var(--navy),#0d56c6 70%,var(--blue))}.heading.light h2,.heading.light p{color:#fff}.heading.light p{opacity:.78}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.steps article{padding:34px;border:1px solid rgba(255,255,255,.15);border-radius:22px;background:rgba(255,255,255,.08)}.steps i{color:var(--navy);background:#fff}.steps h3{margin:22px 0 10px}.steps p{margin:0;color:rgba(255,255,255,.74)}
.trial{display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;gap:32px;padding:38px;border:1px solid var(--border);border-radius:28px;background:#fff;box-shadow:var(--shadow2)}.trial mark{padding:7px 10px;border-radius:999px;background:#eaf3ff;color:var(--blue);font-size:.72rem;font-weight:900;text-transform:uppercase}.trial h3{margin:12px 0 7px;color:var(--navy)}.trial p{margin:0;color:var(--muted)}.trial-list{display:grid;gap:8px;font-weight:700;color:#43526b}.faq{display:grid;grid-template-columns:.78fr 1.22fr;gap:80px}.faq-list{display:grid;gap:13px}.faq-list details{border:1px solid var(--border);border-radius:17px;background:#fff}.faq-list summary{padding:20px 52px 20px 22px;color:var(--navy);font-weight:900;cursor:pointer}.faq-list p{padding:0 22px 20px;margin:0}
.cta{padding:72px 0;background:linear-gradient(135deg,var(--navy),var(--blue))}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta span{color:#8fd0ff}.cta h2{max-width:760px;margin:12px 0 0;color:#fff;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}
footer{padding:64px 0 24px;background:#071b42;color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,.65fr);gap:42px}.footer-brand img{width:160px;filter:brightness(0) invert(1)}.footer-brand p{max-width:330px;color:rgba(255,255,255,.62)}.footer-grid>div:not(.footer-brand){display:grid;align-content:start;gap:9px}.footer-grid a{color:rgba(255,255,255,.62);font-size:.9rem}.copyright{margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.5);font-size:.82rem}
@media(max-width:900px){.menu{display:block;margin-left:auto}.nav{position:fixed;inset:82px 16px auto;display:none;flex-direction:column;gap:0;padding:16px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.nav.open{display:flex}.nav a{padding:12px;border-bottom:1px solid #edf2f8}.nav-actions{display:none}.hero-grid,.split,.faq{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-actions,.trust{justify-content:center}.cards,.steps{grid-template-columns:1fr}.trial{grid-template-columns:1fr;text-align:center}.trial-list{justify-items:start;max-width:320px;margin:auto}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.container{width:min(calc(100% - 28px),var(--container))}.section{padding:76px 0}.hero{padding:58px 0 80px}.hero h1{font-size:clamp(2.65rem,13vw,4rem)}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.trust{flex-direction:column;align-items:center}.dashboard{transform:none}.dash-body{grid-template-columns:48px 1fr}.dash-content{padding:16px}.stats{grid-template-columns:1fr}.dash-panels{grid-template-columns:1fr}.quick,.float-card{display:none}.patient-ui{overflow-x:auto}.patient-body{min-width:620px}.cta-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}}


/* Landing v2: imagen institucional integrada */
.hero-photo-wrap{
    position:relative;
    max-width:620px;
    margin-left:auto
}
.hero-photo-card{
    position:relative;
    overflow:hidden;
    border:1px solid rgba(198,216,241,.85);
    border-radius:38px;
    background:#fff;
    box-shadow:var(--shadow)
}
.hero-photo-card::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 54%,rgba(8,40,95,.10));
    pointer-events:none
}
.hero-photo-card img{
    width:50%;
    height:auto;
    object-fit:contain;
    display:block;
    margin:auto;
}
.hero-photo-badge{
    position:absolute;
    z-index:2;
    display:flex;
    align-items:center;
    gap:11px;
    min-width:218px;
    padding:14px 17px;
    border:1px solid rgba(213,225,241,.95);
    border-radius:18px;
    background:rgba(255,255,255,.96);
    box-shadow:var(--shadow2);
    backdrop-filter:blur(16px)
}
.hero-photo-badge strong,
.hero-photo-badge small{
    display:block
}
.hero-photo-badge strong{
    color:var(--navy);
    font-size:.82rem
}
.hero-photo-badge small{
    color:#8795aa;
    font-size:.68rem
}
.hero-photo-badge-top{
    top:34px;
    right:-42px
}
.hero-photo-badge-bottom{
    left:-48px;
    bottom:42px
}
.hero-photo-badge-bottom>span{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:13px;
    color:#fff;
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    font-weight:900
}
.dashboard-showcase{
    padding-top:72px;
    padding-bottom:104px;
    background:#fff
}
.dashboard-centered{
    max-width:920px;
    margin-inline:auto
}
.dashboard-centered .dashboard{
    transform:none
}

@media(max-width:900px){
    .hero-photo-wrap{
        margin-inline:auto
    }
    .hero-photo-badge-top{
        right:-12px
    }
    .hero-photo-badge-bottom{
        left:-12px
    }
}
@media(max-width:680px){
    .hero-photo-badge{
        min-width:185px;
        padding:11px 13px
    }
    .hero-photo-badge-top{
        top:18px;
        right:10px
    }
    .hero-photo-badge-bottom{
        left:10px;
        bottom:18px
    }
}


/* XP-Dientes Landing Purple Server v3 */
:root{
    --blue:#7b2fc6;
    --blue2:#a13ee7;
    --navy:#35134f;
    --navy2:#54206f;
    --cyan:#9b4ed1;
    --violet:#7b2fc6;
    --text:#211332;
    --muted:#6e637a;
    --bg:#fbf8fe;
    --soft:#f5edfb;
    --border:#eadff2;
    --shadow:0 24px 70px rgba(77,28,111,.15);
    --shadow2:0 16px 40px rgba(77,28,111,.09)
}
.logo img{width:235px;max-height:72px;object-fit:contain;object-position:left center}
.nav a.active{color:var(--blue)}
.nav a.active::after{content:"";display:block;height:2px;margin-top:7px;background:var(--blue)}
.hero{padding:0;background:linear-gradient(90deg,#fff 0%,#fbf8fe 52%,#f3ebfa 100%)}
.hero-grid{grid-template-columns:1.03fr .97fr;min-height:610px;gap:0}
.hero-copy{align-self:center;padding:68px 52px 68px 0}
.hero h1{margin:0;max-width:620px;color:#201031;font-size:clamp(3rem,5vw,4.85rem);line-height:1.08;letter-spacing:-.045em}
.hero h1 em{color:#7b2fc6}
.hero-copy>p{max-width:620px;margin:24px 0 0;color:#382942;font-size:1.1rem}
.hero-capabilities{display:grid;grid-template-columns:repeat(2,minmax(190px,1fr));gap:16px 28px;max-width:620px;margin-top:28px}
.hero-capabilities span{color:#302039;font-size:.98rem;font-weight:650}
.hero-actions{margin-top:32px}
.trust{gap:22px;color:#42334b}
.hero-image-panel{position:relative;min-height:610px;margin-right:calc((100vw - min(100vw - 40px,var(--container)))/-2);overflow:hidden;clip-path:ellipse(78% 78% at 78% 50%);background:#f5edfb}
.hero-image-panel img{width:100%;height:100%;min-height:610px;object-fit:cover;object-position:center}
.hero-domain{position:absolute;right:11%;bottom:8%;padding:12px 34px;border-radius:999px;color:#7b2fc6;background:rgba(255,255,255,.96);box-shadow:var(--shadow);font-size:clamp(1.5rem,3vw,2.3rem);font-weight:900;letter-spacing:-.04em}
.capabilities-section{padding:30px 0 62px;background:#fff;border-top:1px solid var(--border)}
.capabilities-section h2{margin:0 0 22px;text-align:center;color:#201031;font-size:1.75rem}
.capability-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.capability-grid article{min-height:214px;padding:24px 16px;border:1px solid var(--border);border-radius:18px;background:#fff;text-align:center;box-shadow:0 8px 24px rgba(77,28,111,.04)}
.capability-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:50%;color:#7b2fc6;background:#f5edfb;font-size:1.45rem;font-weight:900}
.capability-grid h3{margin:0 0 9px;color:#201031;font-size:.96rem;line-height:1.25}
.capability-grid p{margin:0;color:#6e637a;font-size:.82rem}
.btn-primary{background:linear-gradient(135deg,#a13ee7,#54206f);box-shadow:0 12px 24px rgba(123,47,198,.24)}
.btn-light{color:#7b2fc6;border-color:#7b2fc6}
.blue{background:radial-gradient(circle at 20% 10%,rgba(194,122,235,.3),transparent 30%),linear-gradient(135deg,#35134f,#6b21a8 70%,#8b3bd1)}
.cta{background:linear-gradient(135deg,#35134f,#a13ee7)}
footer{background:#21102f}

@media(max-width:1080px){
    .capability-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
    .hero-grid{grid-template-columns:1fr}
    .hero-copy{padding-right:0;text-align:center}
    .hero-capabilities{margin-inline:auto;text-align:left}
    .hero-actions,.trust{justify-content:center}
    .hero-image-panel{min-height:520px;margin-right:0;clip-path:ellipse(92% 80% at 58% 50%)}
    .hero-image-panel img{min-height:520px}
}
@media(max-width:680px){
    .logo img{width:188px}
    .hero-capabilities{grid-template-columns:1fr;max-width:330px}
    .hero-image-panel{min-height:430px}
    .hero-image-panel img{min-height:430px}
    .hero-domain{right:50%;bottom:6%;transform:translateX(50%);white-space:nowrap}
    .capability-grid{grid-template-columns:1fr}
    .capability-grid article{min-height:auto}
}


/* XP-Dientes Purple Server v4: hero corrections */
.hero-grid {
    grid-template-columns: 0.98fr 1.02fr;
}

.hero-copy {
    padding: 62px 54px 62px 0;
}

.hero h1 {
    max-width: 590px;
    font-size: clamp(2.65rem, 4.15vw, 4rem);
    line-height: 1.12;
    letter-spacing: -0.04em;
}

.hero-copy > p {
    max-width: 575px;
    font-size: 1.04rem;
}

.hero-capabilities {
    max-width: 585px;
    gap: 14px 25px;
}

.hero-image-panel img {
    filter: brightness(0.96) contrast(0.98) saturate(0.96);
    object-position: center center;
}

.hero-domain {
    display: none !important;
}

@media (max-width: 1080px) {
    .hero h1 {
        font-size: clamp(2.55rem, 4.2vw, 3.55rem);
    }
}

@media (max-width: 900px) {
    .hero-copy {
        padding: 54px 0 44px;
    }

    .hero h1 {
        max-width: 680px;
        margin-inline: auto;
        font-size: clamp(2.55rem, 7vw, 3.75rem);
    }

    .hero-copy > p {
        margin-inline: auto;
    }
}

@media (max-width: 680px) {
    .hero h1 {
        font-size: clamp(2.25rem, 10.5vw, 3.15rem);
    }
}


/* FINAL: exact user-provided hero image */
.hero-grid{grid-template-columns:.96fr 1.04fr}
.hero-copy{padding:58px 48px 58px 0}
.hero h1{max-width:570px;font-size:clamp(2.5rem,3.85vw,3.75rem);line-height:1.11;letter-spacing:-.038em}
.hero-copy>p{max-width:560px;font-size:1.02rem}
.hero-capabilities{max-width:565px;gap:13px 24px}
.hero-image-panel img{object-fit:cover;object-position:center center;filter:none}

.hero-domain{display:none!important}
.logo img{width:220px;max-height:70px}
@media(max-width:900px){.hero-copy{padding:52px 0 42px}.hero h1{max-width:650px;margin-inline:auto;font-size:clamp(2.4rem,6.5vw,3.55rem)}}
@media(max-width:680px){.hero h1{font-size:clamp(2.15rem,10vw,2.95rem)}}


/* Ajuste final de brillo de la doctora */
.hero-image-panel img {
    filter: brightness(1.18) contrast(1.01) saturate(1.03) !important;
}
