/* Audited treatment cards: equal photographs with compact captions below. */
body.venusmed-native a[data-vm-treatment-card="photo"] {
    --min-height:340px;
    position:relative!important;
    isolation:isolate;
    display:block!important;
    box-sizing:border-box;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:340px!important;
    min-height:340px!important;
    margin:0!important;
    padding:0 0 104px!important;
    border:1px solid #e9dfdf!important;
    border-radius:12px!important;
    background-color:#fff!important;
    background-origin:content-box!important;
    background-clip:content-box!important;
    background-repeat:no-repeat!important;
    color:#382c2f!important;
    text-decoration:none!important;
    overflow:hidden;
    cursor:pointer;
    box-shadow:0 2px 10px rgba(65,40,45,.035);
    transition:border-color .18s ease,box-shadow .18s ease;
}
body.venusmed-native a[data-vm-treatment-card="photo"]::before,
body.venusmed-native a[data-vm-treatment-card="photo"]::after {content:none!important;display:none!important}
body.venusmed-native [data-vm-treatment-card="photo"] :is(.e-con,.e-con-inner,.elementor-widget-heading,.elementor-widget-container) {
    position:static!important;
}
body.venusmed-native [data-vm-treatment-card="photo"] [data-vm-treatment-label] {
    display:flex!important;
    flex-direction:column;
    justify-content:flex-start;
    gap:7px;
    position:absolute;
    inset:auto 0 0;
    z-index:1;
    box-sizing:border-box;
    width:100%!important;
    max-width:none!important;
    min-width:0;
    height:auto;
    min-height:104px;
    margin:0!important;
    padding:14px 16px!important;
    border:0!important;
    border-top:2px solid #d8a8a8!important;
    border-radius:0!important;
    background:#fff!important;
    color:#382c2f!important;
    -webkit-text-fill-color:#382c2f!important;
    font-size:18px!important;
    font-weight:500!important;
    line-height:1.3!important;
    text-align:left!important;
    text-transform:none!important;
    letter-spacing:0!important;
    text-shadow:none!important;
    white-space:normal;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
}
body.venusmed-native [data-vm-treatment-card="photo"] [data-vm-treatment-label] :is(span,strong,b,em,i) {
    color:inherit!important;
    -webkit-text-fill-color:inherit!important;
    font-size:inherit;
    line-height:inherit;
}
body.venusmed-native [data-vm-treatment-card="photo"] [data-vm-treatment-label] .vm-treatment-card-cta {
    display:block;
    margin-top:auto;
    font-size:13px!important;
    font-weight:500!important;
    line-height:16px!important;
    letter-spacing:0!important;
    text-transform:none!important;
    color:#795151!important;
    -webkit-text-fill-color:#795151!important;
    text-decoration:none;
}
body.venusmed-native a[data-vm-treatment-card="photo"]:hover {
    border-color:#d8a8a8!important;
    box-shadow:0 5px 18px rgba(65,40,45,.09);
}
body.venusmed-native a[data-vm-treatment-card="photo"]:hover .vm-treatment-card-cta {text-decoration:underline;text-underline-offset:3px}
body.venusmed-native a[data-vm-treatment-card="photo"]:focus-visible {
    outline:3px solid #795151!important;
    outline-offset:3px!important;
}
/* Only proven treatment-card groups are flattened into regular rows. */
body.venusmed-native [data-vm-treatment-grid] {
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:24px!important;
    align-items:stretch!important;
    justify-content:normal!important;
    width:calc(100% - 32px)!important;
    max-width:1200px!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:24px auto!important;
    padding:0!important;
}
body.venusmed-native [data-vm-treatment-grid] [data-vm-treatment-grid-shell] {
    display:contents!important;
}
body.venusmed-native [data-vm-treatment-grid]::before,
body.venusmed-native [data-vm-treatment-grid]::after,
body.venusmed-native [data-vm-treatment-grid-shell]::before,
body.venusmed-native [data-vm-treatment-grid-shell]::after {content:none!important;display:none!important}
body.venusmed-native [data-vm-treatment-grid] [data-vm-treatment-grid-heading] {
    grid-column:1/-1!important;
    width:100%!important;
    margin:12px 0 8px!important;
    padding:0!important;
}
body.venusmed-native [data-vm-treatment-grid] [data-vm-treatment-grid-callout] {grid-column:1/-1!important;width:100%!important}
body.venusmed-native [data-vm-treatment-grid-count="2"] {grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.venusmed-native [data-vm-treatment-grid-count="1"] {grid-template-columns:minmax(0,1fr)!important}
body.venusmed-native [data-vm-treatment-grid] [data-vm-treatment-grid-heading]:is(h2,h3,p),
body.venusmed-native [data-vm-treatment-grid] [data-vm-treatment-grid-heading] :is(h2,h3) {
    font-size:clamp(26px,3vw,36px)!important;
    line-height:1.25!important;
    letter-spacing:0!important;
}
@media(max-width:1024px) {
    body.venusmed-native [data-vm-treatment-grid] {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
}
@media(max-width:600px) {
    body.venusmed-native [data-vm-treatment-grid] {grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
    body.venusmed-native a[data-vm-treatment-card="photo"] {height:330px!important;min-height:330px!important}
}
@media(prefers-reduced-motion:reduce) {body.venusmed-native a[data-vm-treatment-card="photo"] {transition:none}}

/* Offer prices and booking controls remain separate from information links. */
body.venusmed-native [data-vm-treatment-card="offer"] a[data-vm-treatment-title-link],
body.venusmed-native [data-vm-treatment-card="offer"] a[data-vm-treatment-image-link] {
    display: block;
    box-sizing: border-box;
    min-width: 44px;
    min-height: 44px;
    max-width: 100%;
    color: inherit;
}

body.venusmed-native [data-vm-treatment-card="offer"] a[data-vm-treatment-title-link] {
    padding-block: 4px;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

body.venusmed-native [data-vm-treatment-card="offer"] a[data-vm-treatment-image-link] {
    line-height: 0;
}

body.venusmed-native [data-vm-treatment-card="offer"] a[data-vm-treatment-title-link]:focus-visible,
body.venusmed-native [data-vm-treatment-card="offer"] a[data-vm-treatment-image-link]:focus-visible {
    outline: 3px solid #53313f !important;
    outline-offset: 3px !important;
}

/* The shell already reserves the header height with scroll-padding-top.
 * Give these category targets a little breathing room without doubling it. */
body.venusmed-native :is(#Rejuvenecimiento, #Cuidado-de-la-piel) {
    scroll-margin-top: 12px;
}

/* On small screens the existing labelled46px consultation icon is enough;
 * the extra text pill otherwise covers treatment names beside it. */
@media (max-width: 600px) {
    body.venusmed-native main :is(h1, h2, h3) {
        hyphens: none !important;
        word-break: normal !important;
        overflow-wrap: break-word;
    }

    body.venusmed-native .vm-floating-contact > span {
        display: none;
    }

    body.venusmed-native .vm-floating-contact:focus-visible {
        border-radius: 50%;
        outline: 3px solid #53313f !important;
        outline-offset: 3px !important;
        box-shadow: 0 0 0 3px #fff;
    }
}
