:root{
    --night:#0B1F3A;
    --gold:#d9a12a;
    --gold2:#f3c75a;
    --nav-h:64px;
}
*{
    box-sizing:border-box
}
html,body{
    margin:0;
    min-height:100%;
    background: #000;
    font-family:Georgia,'Times New Roman',serif;
}
body{
    overflow-x:hidden;
}
a{
    color:inherit;
    text-decoration:none
}
img{
    display:block;
    max-width:100%;
}

/* ---------- NAV (tal cual tu sitio, ahora full responsive) ---------- */
.real-nav{
    position:fixed;
    left:0;
    top:0;
    width:100%;
    height:var(--nav-h);
    z-index:999;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:2.2%;
    padding:0 2.2%;
    background:#000;
    border-bottom:1.5px solid rgba(217,161,42,.98);
    color:#f3c75a;
    font-size:clamp(9px,1.02vw,17px);
    line-height:1;
    letter-spacing:.02em;
    text-transform:uppercase;
    transform:translateY(0);
    transition:transform .28s ease,opacity .28s ease;
}
.real-nav.nav-hidden{
    transform:translateY(-105%);
    opacity:0;
    pointer-events:none;
}
.real-nav a{
    color:#f3c75a;
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
    line-height:1;
}
.nav-links a{
    margin:0 .55em;
}
.nav-links a:hover{
    color: #ffe59e;
}
.real-nav .sep{
    color:#d9a12a;
    opacity:.9;
    line-height:1;
}
.real-nav .phone{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:.35em;
    color:#f3c75a;
}
.real-nav .reserve{
    color:#000;
    background:linear-gradient(180deg,#ffe88c 0%,#e9b640 55%,#bd7f17 100%);
    border:1px solid #f6cf65;
    border-radius:6px;
    padding:.62em .95em;
    font-weight:400;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 0 12px rgba(217,161,42,.22);
}
.real-nav .wa{
    margin-left:.25em;
}

.nav-toggle{
    display:none;
    background:none;
    border:1px solid rgba(217,161,42,.7);
    border-radius:6px;
    width:36px;
    height:36px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:4px;
    cursor:pointer;
    margin-right:auto;
}
.nav-toggle span{
    width:16px;
    height:2px;
    background:#f3c75a;
    display:block;
}

@media(max-width:1100px){
    :root{
        --nav-h:58px;
    }
    .real-nav{
        font-size:10px;
        gap:.75%;
        padding:0 .5%;
    }
    .real-nav .phone{
        display:none;
    }
    .real-nav .reserve{
        padding:.55em .65em;
    }
}
@media(max-width:860px){
    .real-nav{
        justify-content:space-between;
    }
    .nav-toggle{
        display:inline-flex;
    }
    .nav-links{
        display:none;
        position:fixed;
        top:var(--nav-h);
        left:0;
        right:0;
        background:#000;
        border-bottom:1.5px solid rgba(217,161,42,.98);
        flex-direction:column;
        align-items:center;
        gap:0;
        padding:.5rem 0 1rem;
        z-index:998;
    }
    .nav-links.open{
        display:flex;
    }
    .nav-links a{
        display:block;
        padding:.65rem 0;
        width:100%;
        text-align:center;
    }
    .nav-links .sep{
        display:none;
    }
    .real-nav .reserve{
        margin-left:0;
    }
}

/* ---------- CONTENEDOR PRINCIPAL ---------- */
.wrap{
    max-width:1536px;
    margin:0 auto;
    padding-top:calc(var(--nav-h) + 26px);
    border-top:1px solid rgba(217,161,42,.6);
}

/* ---------- HERO ---------- */
.hero{
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:2rem;
    align-items:center;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.8rem;
}
.hero-left{
    max-width:640px;
    text-align:center;
    margin-inline:auto;
}

h1.title{
    margin:0;
    line-height:1.05;
    font-weight:400;
}
.title .row{
    display:block;
    font-size:clamp(2rem,4.6vw,3.6rem);
    letter-spacing:.01em;
    text-transform:uppercase;
}
.title .white{
    color:#ffffff;
}
.title .gold-grad{
    background:linear-gradient(180deg,#ffe88c 0%,#f3c75a 40%,#d9a12a 75%,#bd7f17 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

.divider{
    display:flex;
    align-items:center;
    gap:.8rem;
    margin:.8rem 0 1.2rem;
    justify-content:center;
}
.divider .rule{
    flex:1;
    height:1px;
    background:linear-gradient(to right, var(--gold), transparent);
}
.divider img.diamond{
    width:14px;
    height:14px;
    flex:none;
}

.subhead{
    font-weight:400;
    font-size:clamp(1.2rem,2.1vw,1.55rem);
    color:#ffffff;
    display:flex;
    align-items:center;
    gap:.8rem;
    justify-content:center;
    line-height:1.25;
    margin:0 0 1rem;
    text-transform:uppercase;
}
.subhead img.flower{
    width:1.3em;
    height:1.3em;
    flex:none;
}

.lede{
    margin:0 0 1.3rem;
    color:#ffffff;
    font-size:clamp(0.68rem,1.3vw,1.15rem);
    line-height:1.5;
}

.cta-row{
    display:flex;
    flex-wrap:wrap;
    gap:1rem;
    justify-content:center;
}
.btn{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    font-size:clamp(.8rem,1vw,1rem);
    text-transform:uppercase;
    letter-spacing:.03em;
    padding:.8em 1.6em;
    border-radius:6px;
    white-space:nowrap;
}
.btn.solid{
    color:#160d02;
    background:linear-gradient(180deg,#ffe88c 0%,#e9b640 55%,#bd7f17 100%);
    border:1px solid #f6cf65;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 0 12px rgba(217,161,42,.22);
}
.btn.outline{
    color:var(--gold2);
    border:1px solid rgba(217,161,42,.85);
}
.btn .icon{
    font-size:1.05em;
    line-height:1;
}

.emblem{
    display:flex;
    justify-content:center;
}
.emblem img{
    width:min(400px,100%);
    height:auto;
}

/* ---------- FEATURES ---------- */
.features{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:1.5rem clamp(1.2rem,4vw,3.5rem);
    border-top:1px solid rgba(217,161,42,.4);
    display:flex;
    justify-content: center;
}
.features li{
    display:flex;
    align-items:flex-start;
    gap:.8rem;
    padding:0 1.1rem;
    border-left:1px solid rgba(217,161,42,.4);
}
.features li:first-child{
    border-left:none;
    padding-left:0;
}
.features img.feature-icon{
    width:48px;
    height:48px;
    flex:none;
}
.features h2{
    margin:.05rem 0 .25rem;
    font-size:clamp(.85rem,1vw,1rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--gold2);
    font-weight:400;
}
.features p{
    margin:0;
    color:#ffffff;
    font-size:clamp(.9rem,1vw,1.02rem);
    line-height:1.3;
}
.padding-x{
    padding: 0px 50px!important;
}

/* ---------- TESTIMONIAL BAND ---------- */
.tband-outer{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.5rem;
}
.tband{
    border:1px solid rgba(217,161,42,.85);
    border-radius:14px;
    padding:1.1rem 1.6rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1.2rem;
    flex-wrap:wrap;
}
.tband-left{
    display:flex;
    align-items:center;
    gap:1rem;
}
.tband-left img{
    width:70px;
    height:55px;
    flex:none;
}
.tband h3{
    margin:0 0 .15rem;
    color:#ffffff;
    font-size:clamp(1.05rem,1.8vw,1.4rem);
    font-weight:400;
    text-transform:uppercase;
    letter-spacing:.02em;
}
.tband p{
    margin:0;
    color:var(--gold2);
    font-size:.78rem;
    letter-spacing:.04em;
    text-transform:uppercase;
}

/* ---------- CONTACT BAND ---------- */
.cband{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 2rem;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    border-top:1px solid rgba(217,161,42,.4);
    align-items:center;
    justify-items:center;
}
.cband-item{
    display:flex;
    align-items:center;
    gap:.7rem;
    padding:1.3rem 1.3rem 0;
    border-left:1px solid rgba(217,161,42,.4);
    justify-content:center;
}
.cband-item:first-child{
    border-left:none;
    padding-left:0;
}
.cband-item img{
    width:50px;
    height:50px;
    flex:none;
}
.cband-item h4{
    margin:0 0 .1rem;
    color:var(--gold2);
    font-size:.85rem;
    letter-spacing:.02em;
    text-transform:uppercase;
    font-weight:400;
}
.cband-item p{
    margin:0;
    color:#ffffff;
    font-size:1rem;
}

/* ---------- FOOTER EXIT NAV ---------- */
.site-exit-nav{
    width:min(980px,92vw);
    margin:28px auto 42px;
    padding:14px 16px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    background:#000;
    border-top:1px solid rgba(217,161,42,.55);
    border-bottom:1px solid rgba(217,161,42,.35);
}
.site-exit-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:180px;
    padding:11px 18px;
    border:1px solid rgba(217,161,42,.82);
    border-radius:9px;
    color:#f3c75a;
    background:#000;
    font:400 clamp(12px,1vw,15px)/1.1 Georgia,'Times New Roman',serif;
    letter-spacing:.03em;
    text-transform:uppercase;
}
.site-exit-btn:hover{
    color:#ffe88c;
    border-color:#ffe88c;
}

/* ---------- PAGE TITLE (subpáginas) ---------- */
.page-title-wrap{
    text-align:center;
    padding:1.4rem clamp(1.2rem,4vw,3.5rem) 1.6rem;
}
.page-title{
    margin:0;
    font-weight:400;
    font-size:clamp(2.4rem,6vw,4.6rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    background:linear-gradient(180deg,#ffe88c 0%,#f3c75a 40%,#d9a12a 75%,#bd7f17 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.page-title-wrap .divider{
    max-width:420px;
    margin-left:auto;
    margin-right:auto;
}
.page-lede{
    margin:.2rem auto 0;
    max-width:760px;
    color:#ffffff;
    font-size:clamp(1rem,1.3vw,1.15rem);
    line-height:1.5;
}

/* ---------- METHODS GRID ---------- */
.methods-grid{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.8rem;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:1.1rem;
}

.method-card:hover{
    margin: -30px 0 0 0;
    color: #ffe88c;
    border-color: #ffe88c;
}

.method-card{
    border:1px solid rgba(217,161,42,.6);
    border-radius:14px;
    padding:1.6rem 1.2rem;
    text-align:center;
}
.method-card img.method-icon{
    width:64px;
    height:64px;
    margin:0 auto .9rem;
}
.method-card h2{
    margin:0 0 .5rem;
    font-size:clamp(.95rem,1.1vw,1.1rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--gold2);
    font-weight:400;
    line-height:1.25;
}
.method-card .divider{
    margin:.5rem auto .8rem;
    max-width:120px;
}
.method-card p{
    margin:0;
    color:#ffffff;
    font-size:.92rem;
    line-height:1.45;
}

/* ---------- QUOTE BAND ---------- */
.quote-band-outer{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
}
.quote-band{
    position:relative;
    border:1px solid rgba(217,161,42,.85);
    border-radius:22px;
    padding:1.6rem 3rem;
    text-align:center;
}
.quote-band p{
    margin:0;
    color:#ffffff;
    font-style:italic;
    font-size:clamp(1.05rem,1.8vw,1.35rem);
    line-height:1.5;
}
.quote-band .mark{
    position:absolute;
    top:.4rem;
    color:var(--gold);
    font-size:2.4rem;
    font-style:italic;
    line-height:1;
}
.quote-band .mark.left{
    left:1.2rem;
}
.quote-band .mark.right{
    right:1.2rem;
}

/* ---------- TREATMENTS GRID ---------- */
.treat-grid{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1.1rem;
    align-items:start;
}
.treat-card{
    border:1px solid rgba(217,161,42,.6);
    border-radius:14px;
    padding:1.6rem 1.5rem;
}
.treat-card:hover{
    margin-top: -30px;
    color: #ffe88c;
    border-color: #ffe88c;
}
.treat-card-head{
    display:flex;
    align-items:center;
    gap:1rem;
    margin-bottom:.6rem;
}
.treat-card-head img.treat-cat-icon{
    width:64px;
    height:64px;
    flex:none;
}
.treat-card-head h2{
    margin:0;
    font-size:clamp(1.15rem,1.6vw,1.4rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--gold2);
    font-weight:400;
    line-height:1.2;
}
.treat-card .divider{
    margin:.4rem 0 1rem;
}
.treat-list{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    grid-template-columns:1fr;
    gap:.75rem 1.2rem;
}
.treat-list.two-col{
    grid-template-columns:1fr 1fr;
}
.treat-list li{
    display:flex;
    align-items:center;
    gap:.65rem;
    color:#ffffff;
    font-size:.98rem;
    line-height:1.3;
}
.treat-list img.item-icon{
    width:34px;
    height:34px;
    flex:none;
}

/* ---------- CTA BAND (ver todos) ---------- */
.cta-band-outer{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
}
.cta-band{
    display:block;
    text-align:center;
    border-radius:10px;
    padding:1.1rem 1.5rem;
    color:#160d02;
    background:linear-gradient(180deg,#ffe88c 0%,#e9b640 55%,#bd7f17 100%);
    border:1px solid #f6cf65;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 0 12px rgba(217,161,42,.22);
}
.cta-band .cta-main{
    display:block;
    font-size:clamp(1.1rem,2vw,1.4rem);
    text-transform:uppercase;
    letter-spacing:.03em;
    font-weight:400;
}
.cta-band .cta-sub{
    display:block;
    margin-top:.2rem;
    font-size:clamp(.85rem,1.1vw,1rem);
}

/* ---------- PATHOLOGIES GRID ---------- */
.patho-grid{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:1rem;
    align-items:start;
}
.patho-grid2{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1rem;
    align-items:start;
}
.patho-grid3{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1rem;
    align-items:start;
}
.patho-grid4{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1rem;
    align-items:start;
}
.patho-card:hover{
    margin: -30px 0px;
    color: #ffe88c;
    border-color: #ffe88c;
}
.patho-card{
    border:1px solid rgba(217,161,42,.6);
    border-radius:14px;
    padding:1.4rem 1.1rem;
}
.patho-card img.patho-icon{
    width:64px;
    height:64px;
    margin:0 auto .8rem;
}
.patho-card h2{
    margin:0 0 .5rem;
    text-align:center;
    font-size:clamp(.85rem,1vw,1rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--gold2);
    font-weight:400;
    line-height:1.25;
}
.patho-card .divider{
    margin:.4rem auto .8rem;
    max-width:100px;
}
.formacion-img{
    width: 200px;
}
.patho-card2{
    border:1px solid rgba(217,161,42,.6);
    border-radius:14px;
    padding:1.4rem 1.1rem;
}
.patho-card2:hover{
    margin-top: -30px;
    color: #ffe88c;
    border-color: #ffe88c;
}
.patho-card2 img.patho-icon{
    width:64px;
    height:64px;
    margin:0 auto .8rem;
}
.patho-card2 h2{
    margin:0 0 .5rem;
    text-align:center;
    font-size:clamp(.85rem,1vw,1rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--gold2);
    font-weight:400;
    line-height:1.25;
}
.patho-card2 .divider{
    margin:.4rem auto .8rem;
    max-width:100px;
}
.patho-card2 p{
    color: #f3c75a;
}
.patho-list{
    list-style:none;
    margin:0;
    padding:0;
}
.patho-list li{
    color:#ffffff;
    font-size:.9rem;
    line-height:1.65;
}
.patho-list li.more{
    color:rgba(255,255,255,.6);
    font-style:italic;
}

/* ---------- CONSULT BAND ---------- */
.consult-band-outer{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
}
.consult-band{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1.5rem;
    flex-wrap:wrap;
    border:1px solid rgba(217,161,42,.85);
    border-radius:16px;
    padding:1.2rem 1.6rem;
}
.consult-band-left{
    display:flex;
    align-items:center;
    gap:1rem;
}
.consult-band-left img{
    width:60px;
    height:60px;
    flex:none;
}
.consult-band h3{
    margin:0 0 .3rem;
    color:#ffffff;
    font-size:clamp(1.05rem,1.8vw,1.3rem);
    font-weight:400;
}
.consult-band .divider{
    margin:.3rem 0;
    max-width:220px;
}
.consult-band .consult-cta{
    margin:0;
    color:var(--gold2);
    font-size:clamp(.95rem,1.3vw,1.1rem);
    text-transform:uppercase;
    letter-spacing:.02em;
}

/* ---------- FORMACION PANEL ---------- */
.form-panel{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
}
.form-grid{
    list-style:none;
    margin:0;
    padding:0;
    border:1px solid rgba(217,161,42,.6);
    border-radius:18px;
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow:hidden;
}
.form-grid2{
    list-style:none;
    margin:0;
    padding:0;
    border:1px solid rgba(217,161,42,.6);
    border-radius:18px;
    display:grid;
    grid-template-columns:1fr;
    overflow:hidden;
}
.form-card{
    display:flex;
    align-items:center;
    gap:1.2rem;
    padding:1.4rem 1.6rem;
    border-right:1px solid rgba(217,161,42,.4);
    border-bottom:1px solid rgba(217,161,42,.4);
}
.form-grid li:nth-child(2n){
    border-right:none;
}
.form-grid li:nth-last-child(-n+2){
    border-bottom:none;
}
.form-grid2 li:nth-child(2n){
    border-right:none;
}
.form-grid2 li:nth-last-child(-n+2){
    border-bottom:none;
}
.form-card img.form-img{
    width:130px;
    height:170px;
    flex:none;
    border-radius:10px;
    object-fit:cover;
}
.form-card h2{
    margin:0 0 .4rem;
    font-size:clamp(1rem,1.2vw,1.2rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--gold2);
    font-weight:400;
    line-height:1.25;
}
.form-card .divider{
    margin:.3rem 0 .6rem;
    justify-content:flex-start;
    max-width:140px;
}
.form-card p{
    margin:0;
    color:#ffffff;
    font-size:.92rem;
    line-height:1.45;
}

/* ---------- FORMACION QUOTE + CTA ---------- */
.form-quote-wrap{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 2rem;
    text-align:center;
}
.form-quote-wrap p{
    margin:0 0 1.2rem;
    color:#ffffff;
    font-style:italic;
    font-size:clamp(1.05rem,1.8vw,1.35rem);
    line-height:1.5;
}
.form-quote-wrap .mark{
    color:var(--gold);
    font-size:2rem;
    font-style:italic;
    line-height:1;
}
.form-dragon-row{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:2rem;
    flex-wrap:wrap;
}
.form-dragon-row img.dragon{
    width:min(340px,60%);
    height:auto;
}

/* ---------- PATIENT HERO ---------- */
.patient-hero{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    text-align:center;
}
.patient-kicker{
    color:var(--gold2);
    font-size:.85rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    margin-bottom:.5rem;
}
.patient-hero .page-lede{
    margin-top:.6rem;
}

/* ---------- PATIENT GRID ---------- */
.patient-grid{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.1rem;
}
.patient-card{
    border:1px solid rgba(217,161,42,.6);
    border-radius:14px;
    padding:1.6rem 1.7rem;
}
.patient-card.full{
    grid-column:1 / -1;
}
.patient-card h2{
    margin:0 0 .6rem;
    font-size:clamp(1.05rem,1.4vw,1.25rem);
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--gold2);
    font-weight:400;
}
.patient-card .divider{
    margin:0 0 1rem;
    justify-content:flex-start;
    max-width:140px;
}
.patient-card ol,.patient-card ul{
    margin:0;
    padding-left:1.2rem;
    color:#ffffff;
    font-size:.95rem;
    line-height:1.6;
}
.patient-card p{
    margin:0;
    color:#ffffff;
    font-size:.95rem;
    line-height:1.6;
}
.div-hover:hover{
    margin-top: -15px;
    color: #ffe88c;
    border-color: #ffe88c!important;
}

/* ---------- FAQ ---------- */
.faq-list{
    display:grid;
    grid-template-columns:1fr;
    gap:.9rem;
}
.faq{
    border:1px solid rgba(217,161,42,.6);
    border-radius:12px;
    padding:1rem 1.2rem;
}
.faq summary{
    cursor:pointer;
    color:var(--gold2);
    font-size:.98rem;
    text-transform:uppercase;
    letter-spacing:.01em;
    list-style:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.6rem;
}
.faq summary::-webkit-details-marker{
    display:none;
}
.faq summary::after{
    content:"+";
    color:var(--gold2);
    font-size:1.2rem;
    flex:none;
}
.faq[open] summary::after{
    content:"–";
}
.faq[open]{
    border-color:rgba(217,161,42,.95);
}
.faq p{
    margin:.7rem 0 0;
    padding-top:.7rem;
    border-top:1px solid rgba(217,161,42,.3);
    color:#ffffff;
    font-size:.9rem;
    line-height:1.55;
}

/* ---------- PATIENT QUOTE + ACTIONS ---------- */
.patient-quote{
    max-width:900px;
    margin:0 auto 1.6rem;
    padding:0 clamp(1.2rem,4vw,3.5rem);
    text-align:center;
    color:#ffffff;
    font-style:italic;
    font-size:clamp(1.05rem,1.8vw,1.3rem);
    line-height:1.5;
}
.patient-actions{
    display:flex;
    flex-wrap:wrap;
    gap:1rem;
    justify-content:center;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.8rem;
}

/* ---------- CONTACT PANEL ---------- */
.contact-outer{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
}
.contact-panel{
    border:1px solid rgba(217,161,42,.6);
    border-radius:18px;
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow:hidden;
}
.contact-left{
    padding:1.8rem;
    border-right:1px solid rgba(217,161,42,.4);
}
.contact-right{
    padding:1.8rem;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.8rem;
}
.contact-block-title{
    display:flex;
    align-items:center;
    gap:.8rem;
    margin-bottom:.6rem;
}
.contact-block-title img{
    width:44px;
    height:44px;
    flex:none;
}
.contact-block-title h2{
    margin:0;
    color:var(--gold2);
    font-size:clamp(1.1rem,1.4vw,1.3rem);
    text-transform:uppercase;
    letter-spacing:.02em;
    font-weight:400;
}
.contact-left p{
    margin:0 0 1rem;
    color:#ffffff;
    font-size:.95rem;
    line-height:1.55;
}
.contact-left p strong{
    color:var(--gold2);
    font-weight:400;
}
.contact-map{
    width:100%;
    aspect-ratio:16/10;
    border:0;
    border-radius:10px;
    margin-bottom:1rem;
}
.zona-band{
    display:flex;
    align-items:center;
    gap:1rem;
    flex-wrap:wrap;
    border:1px solid rgba(217,161,42,.5);
    border-radius:10px;
    padding:.9rem 1.1rem;
}
.zona-band img{
    width:30px;
    height:30px;
    flex:none;
}
.zona-band .zona-label{
    color:var(--gold2);
    text-transform:uppercase;
    font-size:.85rem;
    letter-spacing:.02em;
}
.zona-band .zona-sep{
    color:rgba(217,161,42,.6);
}
.zona-band .zona-text{
    color:#ffffff;
    font-size:.9rem;
}

/* contact info list */
.contact-info-list{
    list-style:none;
    margin:1rem 0 0;
    padding:0;
    display:grid;
    gap:1.3rem;
}
.contact-info-list li{
    display:flex;
    align-items:flex-start;
    gap:.8rem;
}
.contact-info-list img{
    width:40px;
    height:40px;
    flex:none;
}
.contact-info-list h4{
    margin:0 0 .15rem;
    color:#ffffff;
    font-size:.98rem;
    font-weight:400;
}
.contact-info-list p{
    margin:0;
    color:var(--gold2);
    font-size:.95rem;
}

/* form */
.contact-form-col{
    border-left:1px solid rgba(217,161,42,.4);
    padding-left:1.8rem;
}
.contact-form p.form-lede{
    margin:.6rem 0 1rem;
    color:#ffffff;
    font-size:.9rem;
    line-height:1.5;
}
.contact-form input,
.contact-form textarea{
    width:100%;
    background:transparent;
    border:1px solid rgba(217,161,42,.6);
    border-radius:8px;
    padding:.75em .9em;
    color:#ffffff;
    font-family:inherit;
    font-size:.92rem;
    margin-bottom:.8rem;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder{
    color:rgba(255,255,255,.55);
}
.contact-form textarea{
    min-height:90px;
    resize:vertical;
}
.contact-form button{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.6rem;
    border:0;
    border-radius:8px;
    padding:.85em 1em;
    margin-bottom:.7rem;
    color:#160d02;
    background:linear-gradient(180deg,#ffe88c 0%,#e9b640 55%,#bd7f17 100%);
    font-family:inherit;
    font-size:.92rem;
    text-transform:uppercase;
    letter-spacing:.02em;
    cursor:pointer;
}
.contact-form small{
    display:block;
    text-align:center;
    color:rgba(255,255,255,.6);
    font-size:.78rem;
}
.contact-form .contact-form-sent{
    margin-top:.8rem;
    text-align:center;
    color:var(--gold2);
    font-size:.88rem;
}

/* ---------- CONTACT DRAGON ---------- */
.contact-dragon-wrap{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.8rem;
    text-align:center;
}
.contact-dragon-wrap img{
    width:min(420px,70%);
    height:auto;
    margin:0 auto;
}

/* ---------- FILTER TABS ---------- */
.filter-tabs{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.2rem;
    display:flex;
    flex-wrap:wrap;
    gap:.7rem;
}
.filter-tab{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    border:1px solid rgba(217,161,42,.6);
    border-radius:8px;
    padding:.65em 1.1em;
    cursor:pointer;
    background:transparent;
    font-family:inherit;
}
.filter-tab img{
    width:26px;
    height:26px;
    flex:none;
}
.filter-tab span{
    color:#ffffff;
    font-size:.85rem;
    text-transform:uppercase;
    letter-spacing:.02em;
    line-height:1.2;
}
.filter-tab.active{
    border-color:#f6cf65;
    background:linear-gradient(180deg,#ffe88c 0%,#e9b640 55%,#bd7f17 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 0 12px rgba(217,161,42,.22);
}
.filter-tab.active span{
    color:#160d02;
}

/* ---------- TESTIMONIALS GRID ---------- */
.testi-grid{
    list-style:none;
    margin:0;
    max-width:1536px;
    margin-inline:auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1.6rem;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1rem;
}
.testi-card{
    border:1px solid rgba(217,161,42,.6);
    border-radius:14px;
    padding:1.2rem 1.3rem;
}
.testi-cat{
    display:flex;
    align-items:center;
    gap:.6rem;
    margin-bottom:.3rem;
}
.testi-cat img{
    width:26px;
    height:26px;
    flex:none;
}
.testi-cat span{
    color:var(--gold2);
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.testi-card h3{
    margin:0 0 .35rem;
    color:#ffffff;
    font-size:1.05rem;
    text-transform:uppercase;
    letter-spacing:.01em;
    font-weight:400;
}
.testi-stars{
    color:var(--gold);
    font-size:.9rem;
    margin-bottom:.6rem;
    letter-spacing:.15em;
}
.testi-card blockquote{
    margin:0 0 .8rem;
    padding-left:1.4rem;
    position:relative;
    color:#ffffff;
    font-size:.92rem;
    line-height:1.5;
}
.testi-card blockquote::before{
    content:"\201C";
    position:absolute;
    left:0;
    top:-.2rem;
    color:var(--gold);
    font-size:1.6rem;
    font-style:italic;
}
.testi-author{
    margin:0;
    color:rgba(255,255,255,.65);
    font-size:.85rem;
}

/* ---------- TESTIMONIALS BOTTOM BAND ---------- */
.testi-bottom-outer{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 1rem;
}
.testi-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1.5rem;
    flex-wrap:wrap;
    border:1px solid rgba(217,161,42,.6);
    border-radius:14px;
    padding:1.2rem 1.6rem;
}
.testi-bottom-left{
    display:flex;
    align-items:center;
    gap:1rem;
}
.testi-bottom-left img{
    width:44px;
    height:44px;
    flex:none;
}
.testi-bottom-left p{
    margin:0;
    color:#ffffff;
    font-size:.98rem;
    line-height:1.4;
}
.testi-bottom-left p .accent{
    color:var(--gold2);
}
.testi-bottom-right img{
    width:min(160px,100%);
    height:auto;
}

.testi-disclaimer{
    max-width:1536px;
    margin:0 auto;
    padding:0 clamp(1.2rem,4vw,3.5rem) 2rem;
    text-align:center;
    color:rgba(255,255,255,.7);
    font-size:.85rem;
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:980px){
    .patho-grid3{
        grid-template-columns: repeat(1,1fr) !important
    }
    .patho-grid4{
        grid-template-columns: repeat(1,1fr) !important
    }
    .hero{
        grid-template-columns:1fr;
        text-align:center;
    }
    .hero-left{
        max-width:none;
        margin:0 auto;
    }
    .divider,.subhead,.cta-row{
        justify-content:center;
    }
    .emblem{
        order:-1;
    }
    .emblem img{
        order:-1;
        width:min(150px,100%);
        height:auto;
    }
    .features{
        display: grid;
        grid-template-columns:repeat(2,1fr);
        row-gap:1.5rem;
    }
    .features li:nth-child(3){
        border-left:none;
    }
    .padding-x{
        padding: 0px!important;
    }
    .cband{
        grid-template-columns:1fr;
        row-gap:1.1rem;
    }
    .cband{
        max-width: 250px;
    }
    .cband-item{
        border-left:none;
        padding-left:0;
    }
    .methods-grid{
        grid-template-columns:repeat(3,1fr);
    }
    .quote-band{
        padding:1.4rem 2rem;
    }
    .treat-grid{
        grid-template-columns:1fr;
    }
    .patho-grid{
        grid-template-columns:repeat(3,1fr);
    }
    .form-grid{
        grid-template-columns:1fr;
    }
    .form-grid li{
        border-right:none !important;
    }
    .form-grid2{
        grid-template-columns:1fr;
    }
    .form-grid2 li{
        border-right:none !important;
    }
    .patient-grid{
        grid-template-columns:1fr;
    }
    .faq-list{
        grid-template-columns:1fr;
    }
    .contact-panel{
        grid-template-columns:1fr;
    }
    .contact-left{
        border-right:none;
        border-bottom:1px solid rgba(217,161,42,.4);
    }
    .contact-right{
        grid-template-columns:1fr;
    }
    .contact-form-col{
        border-left:none;
        padding-left:0;
        margin-top:1.2rem;
        padding-top:1.2rem;
        border-top:1px solid rgba(217,161,42,.4);
    }
    .testi-grid{
        grid-template-columns:repeat(2,1fr);
    }
}
@media(max-width:560px){
    .div-hover:hover{
        margin-top: 0px;
    }
    .patho-card2:hover{
        margin-top: 0px;
    }
    .treat-card:hover{
        margin-top: 0px;
    }
    .patho-card:hover{
        margin: 0px;
    }
    .method-card:hover{
        margin: 0px;
    }
    .patho-grid3{
        grid-template-columns: repeat(1,1fr) !important
    }
    .patho-grid4{
        grid-template-columns: repeat(1,1fr) !important
    }
    .features{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        gap:8px;
        flex-wrap:nowrap;
    }

    .features li{
        flex:1;
        display:flex;
        flex-direction:column;
        align-items:center;
        text-align:center;
        border:none;
        padding:0 !important;
        gap:6px;
    }

    .feature-icon{
        width:30px !important;
        height:30px !important;
    }

    .features h2{
        font-size:11px;
        line-height:1.2;
        margin:0;
    }

    .features p{
        font-size:10px;
        line-height:1.2;
    }

    .features p br{
        display:none;
    }
    .features li{
        position:relative;
    }

    .features li:not(:last-child)::after{
        content:"";
        position:absolute;
        top:8px;
        right:-4px;
        width:1px;
        height:calc(100% - 16px);
        background:rgba(217,161,42,.4);
    }

    .padding-x{
        padding: 0px!important;
    }
    .tband{
        flex-direction:column;
        align-items:flex-start;
    }
    .btn.outline{
        width:100%;
        justify-content:center;
    }
    .site-exit-nav{
        width:94vw;
    }
    .site-exit-btn{
        width:100%;
        min-width:0;
    }
    .methods-grid{
        grid-template-columns:1fr;
    }
    .quote-band .mark{
        position:static;
        display:block;
    }
    .treat-list.two-col{
        grid-template-columns:1fr;
    }
    .patho-grid{
        grid-template-columns:1fr;
    }
    .consult-band{
        flex-direction:column;
        align-items:flex-start;
    }
    .form-card{
        flex-direction:column;
        text-align:center;
    }
    .testi-grid{
        grid-template-columns:1fr;
    }
    .testi-bottom{
        flex-direction:column;
        align-items:flex-start;
        text-align:left;
    }
}