/* ============================================
   HC PROMEDICAL - RESPONSIVE CSS (COMPLETE)
   Comprehensive responsive for ALL pages
   ============================================ */

/* ---- GLOBAL RESPONSIVE RESETS ---- */
*, *::before, *::after {
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
}

/* ---- MOBILE HAMBURGER MENU ---- */
.mobile-menu-toggle {
    display: none;
    cursor: pointer;
    background: none;
    border: none;
    padding: 10px;
    z-index: 10001;
    position: relative;
    flex: 0 0 auto;
}

.mobile-menu-toggle span {
    display: block;
    width: 30px;
    height: 3px;
    background-color: #072449;
    margin: 5px 0;
    transition: all 0.3s ease;
    border-radius: 2px;
}

.mobile-menu-toggle.active span {
    background-color: #fff;
}

.mobile-menu-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 6px);
}

.mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -6px);
}

/* Mobile overlay menu */
.mobile-nav-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(7, 36, 73, 0.97);
    z-index: 10000;
    overflow-y: auto;
    padding: 80px 20px 30px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.mobile-nav-overlay.active {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 1;
}

.mobile-nav-overlay a {
    display: block;
    color: #fff !important;
    text-decoration: none;
    font-size: 22px;
    font-family: Roboto, Helvetica, Arial, sans-serif;
    padding: 15px 20px;
    text-align: center;
    width: 100%;
    max-width: 300px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
    transition: background 0.2s;
}

.mobile-nav-overlay a:hover,
.mobile-nav-overlay a:active {
    background-color: rgba(98, 137, 174, 0.3);
}

.mobile-nav-overlay .mobile-lang-switch {
    margin-top: 25px;
    display: flex;
    gap: 15px;
    align-items: center;
}

.mobile-nav-overlay .mobile-lang-switch a {
    font-size: 16px;
    border: 1px solid rgba(255,255,255,0.4);
    border-radius: 5px;
    padding: 8px 20px;
    width: auto;
    border-bottom: 1px solid rgba(255,255,255,0.4);
}

/* ============================================
   CRITICAL: Override framework min-width locks
   Ultra-high specificity using html body#dmRoot
   to beat .dmInner{min-width:768px!important}
   and .dmDesktopBody .dmInner{min-width:960px}
   ============================================ */
@media screen and (max-width: 1024px) {
    /* Beat: .dmInner{min-width:768px!important} */
    html body#dmRoot .dmInner,
    html body#dmRoot #dm .dmInner,
    html body.dmDesktopBody .dmInner,
    html body.dmDesktopBody #dm .dmInner,
    html body#dmRoot #dmStyle_innerContainer.dmInner,
    html body#dmRoot #dmStyle_innerContainer,
    .dmInner,
    .dmDesktopBody .dmInner,
    #dmStyle_innerContainer.dmInner {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    html body#dmRoot .dmOuter,
    html body#dmRoot #dm .dmOuter,
    html body#dmRoot #dmStyle_outerContainer.dmOuter,
    html body#dmRoot #dmStyle_outerContainer,
    .dmOuter,
    #dmStyle_outerContainer.dmOuter {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    html body#dmRoot .dmLayoutWrapper,
    html body#dmRoot .dmStandardDesktop,
    html body#dmRoot #iscrollBody,
    html body#dmRoot #site_content,
    html body#dmRoot .dmContent,
    html body#dmRoot .allWrapper,
    html body#dmRoot #dm_content,
    html body#dmRoot .dmPageBody,
    .dmLayoutWrapper,
    .dmStandardDesktop,
    #iscrollBody,
    #site_content,
    .dmContent,
    .allWrapper,
    #dm_content,
    .dmPageBody {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    /* Header/footer container unlock */
    html body#dmRoot .dmHeaderContainer,
    html body#dmRoot #hcontainer,
    html body#dmRoot .dmHeaderResp,
    html body#dmRoot .dmHeaderStack,
    html body#dmRoot .dmFooterContainer,
    html body#dmRoot .dmFooterResp,
    .dmHeaderContainer,
    #hcontainer,
    .dmHeaderResp,
    .dmHeaderStack,
    .dmFooterContainer,
    .dmFooterResp {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    /* Sticky header min-width override */
    html body#dmRoot #dm .hasStickyHeader .dmInner div.dmHeaderContainer,
    html body#dmRoot #dm .hasStickyHeader .dmInner div#desktopHeaderBox,
    html:not(.ios-preview) #dm .hasStickyHeader .dmInner div.dmHeaderContainer,
    #dm .hasStickyHeader .dmInner div.dmHeaderContainer,
    #dm .hasStickyHeader .dmInner div#desktopHeaderBox {
        min-width: 0 !important;
        width: 100% !important;
    }

    /* Body and root containers */
    html,
    body,
    body#dmRoot,
    #dm,
    .dmwr,
    .dm_wrapper {
        min-width: 0 !important;
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    /* Template containers */
    html body#dmRoot .dmHomeRespTmpl,
    html body#dmRoot .dmDefaultRespTmpl,
    html body#dmRoot .dmAboutusRespTmpl,
    html body#dmRoot .innerPageTmplBox,
    html body#dmRoot .dmRespRowsWrapper,
    .dmHomeRespTmpl,
    .dmDefaultRespTmpl,
    .dmAboutusRespTmpl,
    .innerPageTmplBox,
    .dmRespRowsWrapper {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    /* All rows and columns fluid */
    html body#dmRoot .dmRespRow,
    .dmRespRow {
        min-width: 0 !important;
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    html body#dmRoot .dmRespCol,
    .dmRespCol {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body#dmRoot .dmRespColsWrapper,
    .dmRespColsWrapper {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    /* Widget width override for dmLargeBody rules */
    html body#dmRoot #dm .dmRespRow .dmRespCol > .dmWidget,
    html body.dmLargeBody #dm .dmRespRow .dmRespCol > .dmWidget,
    .dmLargeBody #dm .dmRespRow .dmRespCol > .dmWidget {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ============================================
   TABLET: 768px - 1024px
   ============================================ */
@media screen and (max-width: 1024px) {

    /* ---- GLOBAL GRID: Force all columns to be fluid ---- */
    #dm .dmBody .dmRespCol,
    #dm .dmBody div[class*="dmRespCol"] {
        max-width: 100% !important;
    }

    /* ---- HEADER ---- */
    #dm .p_hfcontainer div.u_1571063569,
    #dm .dmBody div.u_1571063569 {
        padding: 10px 15px !important;
    }

    /* Nav font size smaller */
    #dm .p_hfcontainer .dmNavWrapper > li > a .navItemText,
    #dm .p_hfcontainer .dmNavWrapper > li > a .navText,
    #dm .dmBody .dmNavWrapper > li > a .navItemText,
    #dm .dmBody .dmNavWrapper > li > a .navText {
        font-size: 12px !important;
    }

    /* ---- ALL SECTIONS: Reduce padding ---- */
    #dm .dmBody .dmRespRow {
        overflow-x: hidden !important;
    }

    /* ---- ALL PARAGRAPHS ---- */
    #dm .dmBody .dmNewParagraph {
        max-width: 100% !important;
    }

    /* ---- IMAGE WIDGETS ---- */
    #dm .dmBody .imageWidget img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* ---- PHOTO GALLERIES ---- */
    #dm .dmBody .dmPhotoGallery,
    #dm .dmBody .dmPhotoGalleryResp {
        max-width: 100% !important;
        width: 100% !important;
    }

    /* ---- SLIDER ---- */
    #dm .dmBody .dmImageSlider {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        overflow: hidden !important;
    }

    #dm .dmBody .dmImageSlider .slides li {
        overflow: hidden !important;
    }

    #dm .dmBody .dmImageSlider .slides .slide-title {
        font-size: 14px !important;
        padding: 0 10px !important;
        white-space: normal !important;
        overflow: hidden !important;
    }

    /* ---- FORMS ---- */
    #dm .dmBody .dmform {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* ---- FOOTER ---- */
    .dmFooterContainer .dmRespCol {
        padding: 10px 15px !important;
    }

    /* ---- BLOG GRID ---- */
    #dm .dmBody .mainBlog.layout4 .postArticle {
        width: 48% !important;
        margin: 1% !important;
    }

    #dm .dmBody .mainBlog .blogImg {
        background-size: cover !important;
    }

    /* ---- TAB WIDGET (Experiences) ---- */
    #dm .dmBody .tab-label {
        font-size: 13px !important;
        padding: 8px 10px !important;
    }

    /* ---- TWO-COLUMN SECTIONS ---- */
    #dm .dmBody .dmRespCol.medium-6.large-6 {
        min-height: auto !important;
    }

    /* ---- TEAM GALLERY ---- */
    #dm .dmBody .dmPhotoGalleryResp .gallery4inArow .photoGalleryThumbs {
        width: 33.33% !important;
    }

    /* ---- CONTACT FORM INPUTS ---- */
    #dm .dmBody .dmform .dmRespDesignCol.medium-6 {
        width: 50% !important;
    }
}

/* ============================================
   MOBILE: max-width 767px
   ============================================ */
@media screen and (max-width: 767px) {

    /* ================================================
       CRITICAL: Framework container overrides (MOBILE)
       Ultra-high specificity to beat runtime CSS
       ================================================ */
    html body#dmRoot .dmInner,
    html body#dmRoot #dm .dmInner,
    html body.dmDesktopBody .dmInner,
    html body.dmMobileBody .dmInner,
    .dmInner,
    .dmDesktopBody .dmInner,
    #dmStyle_innerContainer.dmInner,
    #dmStyle_innerContainer {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    html body#dmRoot .dmOuter,
    .dmOuter,
    #dmStyle_outerContainer.dmOuter,
    #dmStyle_outerContainer {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    html body#dmRoot .dmLayoutWrapper,
    .dmLayoutWrapper,
    .dmLayoutWrapper.standard-var,
    .dmLayoutWrapper.dmStandardDesktop,
    .dmStandardDesktop {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    html body#dmRoot #iscrollBody,
    html body#dmRoot #site_content,
    html body#dmRoot .dmBody,
    html body#dmRoot .dmPageBody,
    #iscrollBody,
    #site_content,
    #dm_content,
    .allWrapper,
    .dmContent,
    .dmBody,
    .dm-home-page,
    .dmPageBody {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    /* Header/Footer container unlock */
    html body#dmRoot .dmHeaderContainer,
    html body#dmRoot .dmFooterContainer,
    .dmHeaderContainer,
    #hcontainer,
    .dmHeaderResp,
    .dmHeaderStack,
    .dmFooterContainer,
    .dmFooterResp,
    .dmHeaderContent,
    .freeHeaderRow1 {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    html body#dmRoot #dm .hasStickyHeader .dmInner div.dmHeaderContainer,
    html:not(.ios-preview) #dm .hasStickyHeader .dmInner div.dmHeaderContainer,
    #dm .hasStickyHeader .dmInner div.dmHeaderContainer,
    #dm .hasStickyHeader .dmInner div#desktopHeaderBox {
        min-width: 0 !important;
        width: 100% !important;
    }

    /* Widget width override */
    html body#dmRoot #dm .dmRespRow .dmRespCol > .dmWidget,
    html body.dmLargeBody #dm .dmRespRow .dmRespCol > .dmWidget {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Header element fixed widths from header CSS */
    #dm .p_hfcontainer div.u_1680518714 {
        width: auto !important;
        max-width: 100% !important;
    }

    #dm .p_hfcontainer div.u_1800247147 {
        width: 100% !important;
    }

    #dm .p_hfcontainer div.u_1270803871 {
        width: auto !important;
    }

    /* Footer element fixed widths */
    div.u_1617407184 {
        min-width: 0 !important;
        padding: 30px 15px !important;
    }

    div.u_1116005605 {
        width: auto !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    #dm .p_hfcontainer h5.u_1829786542 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 8px auto !important;
    }

    h5.u_1454343106,
    h5.u_1484704786,
    h5.u_1829786542,
    div.u_1995519401,
    h5.u_1507225760 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    div.u_1685880241 {
        width: 100% !important;
        max-width: 100% !important;
    }

    h3.u_1039029074,
    h3.u_1062560445,
    h3.u_1867282989 {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* ================================================
       CRITICAL: GENERIC GRID OVERRIDE
       Force ALL multi-column layouts to stack
       ================================================ */

    /* All responsive columns become full width */
    #dm .dmBody .dmRespCol.large-2,
    #dm .dmBody .dmRespCol.large-3,
    #dm .dmBody .dmRespCol.large-4,
    #dm .dmBody .dmRespCol.large-5,
    #dm .dmBody .dmRespCol.large-6,
    #dm .dmBody .dmRespCol.large-7,
    #dm .dmBody .dmRespCol.large-8,
    #dm .dmBody .dmRespCol.large-9,
    #dm .dmBody .dmRespCol.large-10,
    #dm .dmBody .dmRespCol.medium-2,
    #dm .dmBody .dmRespCol.medium-3,
    #dm .dmBody .dmRespCol.medium-4,
    #dm .dmBody .dmRespCol.medium-5,
    #dm .dmBody .dmRespCol.medium-6,
    #dm .dmBody .dmRespCol.medium-7,
    #dm .dmBody .dmRespCol.medium-8,
    #dm .dmBody .dmRespCol.medium-9,
    #dm .dmBody .dmRespCol.medium-10 {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* All column wrappers become flexbox vertical */
    #dm .dmBody .dmRespColsWrapper {
        display: flex !important;
        flex-direction: column !important;
        overflow-x: hidden !important;
    }

    /* All rows prevent horizontal scroll */
    #dm .dmBody .dmRespRow {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }

    /* ================================================
       GENERIC WIDTH OVERRIDES
       Catch ALL elements with fixed pixel widths
       ================================================ */

    /* All paragraphs */
    #dm .dmBody .dmNewParagraph {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* All image widgets */
    #dm .dmBody .imageWidget {
        width: 100% !important;
        max-width: 100% !important;
    }

    #dm .dmBody .imageWidget img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* All graphic widgets */
    #dm .dmBody .graphicWidget {
        max-width: 80px !important;
        margin: 10px auto !important;
    }

    #dm .dmBody .graphicWidget svg {
        max-width: 100% !important;
        height: auto !important;
    }

    /* All buttons - center text properly */
    #dm .dmBody .dmButtonLink,
    #dm .dmBody a.dmButtonLink,
    #dm .dmBody button.dmButtonLink {
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
    }

    #dm .dmBody .dmButtonLink .text,
    #dm .dmBody a.dmButtonLink .text {
        display: inline-block !important;
        vertical-align: middle !important;
        line-height: 1.2 !important;
    }

    #dm .dmBody .dmButtonLink .iconBg {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* All dividers */
    #dm .dmBody .dmDividerWrapper {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* All spacers - reduce on mobile */
    #dm .dmBody .dmSpacer {
        height: auto !important;
        min-height: 10px !important;
        max-height: 30px !important;
    }

    /* All forms */
    #dm .dmBody .dmform {
        width: 100% !important;
        max-width: 100% !important;
    }

    #dm .dmBody .dmform input[type="text"],
    #dm .dmBody .dmform input[type="email"],
    #dm .dmBody .dmform input[type="tel"],
    #dm .dmBody .dmform textarea,
    #dm .dmBody .dmform select {
        width: 100% !important;
        font-size: 16px !important; /* Prevents iOS zoom */
    }

    #dm .dmBody .dmform .dmRespDesignCol,
    #dm .dmBody .dmform .dmRespDesignCol.medium-6,
    #dm .dmBody .dmform .dmRespDesignCol.large-6 {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
    }

    #dm .dmBody .dmform .dmformsubmit {
        text-align: center !important;
    }

    #dm .dmBody .dmform .dmformsubmit input[type="submit"] {
        width: 100% !important;
        max-width: 300px !important;
        margin: 10px auto !important;
    }

    /* ---- TESTIMONIALS SLIDER (mobile) ---- */
    #dm .dmBody .dmImageSlider,
    #dm .dmBody .dmImageSlider.flex-container {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 auto !important;
        overflow: hidden !important;
    }

    #dm .dmBody .dmImageSlider .flexslider {
        overflow: hidden !important;
    }

    #dm .dmBody .dmImageSlider .slides li {
        position: relative !important;
        height: auto !important;
        min-height: 320px !important;
        overflow: hidden !important;
        background: linear-gradient(135deg, #072449 0%, #0d3a6e 100%) !important;
    }

    /* Hide the tiny transparent image on mobile - use background color instead */
    #dm .dmBody .dmImageSlider .slides li > img {
        display: none !important;
    }

    /* Color overlay becomes the slide background */
    #dm .dmBody .dmImageSlider .color-overlay {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        opacity: 0.3 !important;
        z-index: 0 !important;
    }

    #dm .dmBody .dmImageSlider .slides .slide-inner {
        position: relative !important;
        z-index: 1 !important;
        width: 100% !important;
        min-height: 320px !important;
        padding: 30px 20px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
    }

    #dm .dmBody .dmImageSlider .slides .text-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        overflow: hidden !important;
        text-align: center !important;
    }

    #dm .dmBody .dmImageSlider .slides .slide-title {
        font-size: 14px !important;
        line-height: 1.7 !important;
        padding: 0 !important;
        overflow: hidden !important;
        white-space: normal !important;
        text-overflow: unset !important;
        display: block !important;
        max-height: none !important;
        -webkit-line-clamp: unset !important;
        color: #fff !important;
        font-style: italic !important;
    }

    #dm .dmBody .dmImageSlider .slides .slide-text {
        font-size: 13px !important;
        overflow: hidden !important;
        white-space: normal !important;
        color: rgba(255,255,255,0.85) !important;
        margin-top: 10px !important;
        font-weight: 600 !important;
    }

    /* Hide invisible slide button */
    #dm .dmBody .dmImageSlider .slide-button-invisible {
        display: none !important;
    }

    /* Slider navigation arrows */
    #dm .dmBody .dmImageSlider .flex-direction-nav a {
        width: 30px !important;
        height: 30px !important;
        opacity: 0.7 !important;
    }

    #dm .dmBody .dmImageSlider .flex-direction-nav a:before {
        font-size: 18px !important;
        color: #fff !important;
    }

    /* All photo galleries */
    #dm .dmBody .dmPhotoGallery,
    #dm .dmBody .dmPhotoGalleryResp {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Gallery grid - 2 columns on mobile */
    #dm .dmBody .gallery4inArow .photoGalleryThumbs {
        width: 50% !important;
    }

    /* All social hubs */
    #dm .dmBody .dmSocialHub {
        text-align: center !important;
    }

    #dm .dmBody .socialHubIcon {
        margin: 5px !important;
    }

    /* All maps */
    #dm .dmBody .dmMap {
        width: 100% !important;
        height: 250px !important;
    }

    /* Multilingual widget */
    #dm .dmBody .multilingualWidget {
        width: auto !important;
        margin: 10px auto 0 !important;
    }

    /* All links menus */
    #dm .dmBody .dmLinksMenu {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* ================================================
       PREVENT HORIZONTAL SCROLL (ALL PAGES)
       ================================================ */
    body,
    html,
    #dm,
    .dmwr,
    .dm_wrapper,
    .dmOuter,
    .dmInner,
    .dmLayoutWrapper,
    .dmPageBody,
    .dmContent,
    .allWrapper,
    .dmHomeRespTmpl,
    .dmDefaultRespTmpl,
    .dmAboutusRespTmpl,
    .innerPageTmplBox,
    .dmRespRowsWrapper {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }

    /* ================================================
       HAMBURGER MENU - SHOW
       ================================================ */
    .mobile-menu-toggle {
        display: block !important;
    }

    /* Hide desktop header navigation */
    #dm .p_hfcontainer .dmLinksMenu,
    #dm .p_hfcontainer .desktopNavWrapper,
    #dm .p_hfcontainer .u_1800247147,
    #dm .p_hfcontainer .u_1780181932,
    #dm .p_hfcontainer .u_1419566773,
    .dmHeaderContent .dmLinksMenu,
    .dmHeaderContent .desktopNavWrapper,
    .dmHeaderContent .u_1780181932,
    .dmHeaderContent .u_1419566773 {
        display: none !important;
    }

    /* Header layout - logo + hamburger */
    .dmHeaderContainer .dmRespColsWrapper,
    .dmHeaderResp .dmRespColsWrapper,
    .dmHeaderContent .dmRespColsWrapper,
    #dm .p_hfcontainer .dmHeaderContent .dmRespColsWrapper,
    #dm .p_hfcontainer .freeHeaderRow1 .dmRespColsWrapper {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        padding: 12px 20px !important;
    }

    /* Logo column */
    #dm .p_hfcontainer .u_1188728890,
    .dmHeaderContent .u_1188728890 {
        width: auto !important;
        max-width: 60% !important;
        flex: 0 0 auto !important;
    }

    #dm .p_hfcontainer .u_1188728890 .imageWidget,
    .dmHeaderContent .u_1188728890 .imageWidget {
        width: auto !important;
        max-width: 100% !important;
    }

    #dm .p_hfcontainer .u_1188728890 .imageWidget img,
    .dmHeaderContent .u_1188728890 .imageWidget img {
        max-height: 65px !important;
        width: auto !important;
        max-width: 180px !important;
    }

    /* Logo widget - override fixed 103px width on mobile */
    #dm .p_hfcontainer div.u_1680518714 {
        width: auto !important;
        max-width: 180px !important;
    }

    /* Header row padding */
    #dm .p_hfcontainer .u_1571063569,
    .dmHeaderContent.u_1571063569 {
        padding: 10px 15px !important;
        min-height: 0 !important;
    }

    /* ================================================
       FONT SIZE OVERRIDES
       ================================================ */

    /* Override hide-for-small so content shows on mobile */
    #dm .dmBody .hide-for-small {
        display: block !important;
    }

    /* Activate mobile font sizes */
    .m-font-size-50 { font-size: 28px !important; }
    .m-font-size-38 { font-size: 24px !important; }
    .m-font-size-36 { font-size: 22px !important; }
    .m-font-size-30 { font-size: 20px !important; }
    .m-font-size-28 { font-size: 18px !important; }
    .m-font-size-25 { font-size: 18px !important; }
    .m-font-size-17 { font-size: 15px !important; }
    .m-font-size-16 { font-size: 14px !important; }
    .m-font-size-14 { font-size: 13px !important; }
    .m-font-size-13 { font-size: 12px !important; }
    .m-font-size-8  { font-size: 8px !important; }

    /* ---- HERO TITLE: "Bienvenido a tu nuevo hospital" ---- */
    #dm .dmBody .u_1277865775 h1,
    #dm .dmBody .u_1277865775 h1 span.font-size-80,
    #dm .dmBody .u_1277865775 h1 span.m-font-size-50,
    #dm .dmBody .u_1277865775 h1 span.font-size-85 {
        font-size: 30px !important;
        line-height: 1.25 !important;
        text-shadow: rgba(0, 0, 0, 0.5) -2px 2px 10px !important;
    }

    /* Desktop-only font sizes scaled down for mobile */
    .font-size-85, .size-85, .size-85 > font { font-size: 26px !important; }
    .font-size-80, .size-80, .size-80 > font { font-size: 24px !important; }
    .font-size-60, .size-60, .size-60 > font { font-size: 22px !important; }
    .font-size-40, .size-40, .size-40 > font { font-size: 20px !important; }
    .font-size-36, .size-36, .size-36 > font { font-size: 19px !important; }
    .font-size-35, .size-35, .size-35 > font { font-size: 19px !important; }
    .font-size-28, .size-28, .size-28 > font { font-size: 17px !important; }
    .font-size-26, .size-26, .size-26 > font { font-size: 16px !important; }
    .font-size-25, .size-25, .size-25 > font { font-size: 16px !important; }
    .font-size-24, .size-24, .size-24 > font { font-size: 15px !important; }
    .font-size-20, .size-20, .size-20 > font { font-size: 15px !important; }
    .font-size-18, .size-18, .size-18 > font { font-size: 14px !important; }

    /* ALL text: prevent overflow with word-wrap */
    #dm .dmBody h1, #dm .dmBody h2, #dm .dmBody h3,
    #dm .dmBody h4, #dm .dmBody h5, #dm .dmBody h6,
    #dm .dmBody p, #dm .dmBody span, #dm .dmBody div.dmNewParagraph {
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        max-width: 100% !important;
    }

    /* ================================================
       HOME CSS FIXED WIDTH OVERRIDES
       Override all pixel widths from 0070e392_home_1.min.css
       ================================================ */
    *#dm *.dmBody div.u_1814579910 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1277865775 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1628801418 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1870166286 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1659315345 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1574500582 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1236927843 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1666604412 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1319654285 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1242225059 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1656575161 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1411689119 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1863688793 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1423960304 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1204363519 { width: auto !important; max-width: 150px !important; }
    *#dm *.dmBody div.u_1755351472 { width: auto !important; max-width: 280px !important; }
    *#dm *.dmBody div.u_1053428613 { width: 50px !important; }
    *#dm *.dmBody a.u_1964749483 { width: auto !important; max-width: 100% !important; }
    *#dm *.dmBody a.u_1720973098 { width: auto !important; max-width: 100% !important; }
    *#dm *.dmBody a.u_1232270546 { width: auto !important; max-width: 100% !important; }
    *#dm *.dmBody a.u_1624651796 { width: auto !important; max-width: 100% !important; }
    *#dm *.dmBody a.u_1100386930 { width: auto !important; max-width: 100% !important; }
    *#dm *.dmBody a.u_1459500836 { width: auto !important; max-width: 100% !important; }
    *#dm *.dmBody a.u_1601710382 { width: auto !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1568290092 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1891729351 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1901527490 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody h1.u_1579645427 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody h1.u_1133065121 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody h1.u_1353813068 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1940388877 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1282218524 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1180725448 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1623727588 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1636345532 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1472527089 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1083300486 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1609364686 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1493786868 { width: 80px !important; max-width: none !important; }
    *#dm *.dmBody h2.u_1373837870 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1440648730 { width: 100% !important; max-width: 100% !important; }
    *#dm *.dmBody div.u_1632917616 { width: 100% !important; max-width: 100% !important; }

    /* ================================================
       HOME PAGE (index.htm)
       ================================================ */

    /* Hide hero logo bar (desktop only) */
    #dm .dmBody .u_1676530856 {
        display: none !important;
    }

    /* Hide hero desktop nav */
    #dm .dmBody .u_1051186724 {
        display: none !important;
    }

    /* Hero section */
    #dm .dmBody div.u_1265393572 {
        padding: 60px 20px 80px !important;
        background-attachment: scroll !important;
    }

    /* "¿Qué hacemos?" section */
    #dm .dmBody div.u_1454083402 {
        padding: 40px 15px !important;
    }

    /* "Cómo logramos" section */
    #dm .dmBody div.u_1267104717 {
        padding: 30px 15px !important;
        background-attachment: scroll !important;
    }

    /* Service cards - full width stacked with spacing */
    #dm .dmBody div.u_1515447083 .dmRespColsWrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
    }

    #dm .dmBody div.u_1707738567,
    #dm .dmBody div.u_1022194192,
    #dm .dmBody div.u_1658109338 {
        padding: 30px 20px !important;
        margin: 0 !important;
        background-color: rgba(255, 255, 255, 0.95) !important;
        border-radius: 12px !important;
    }

    /* Service card icons - visible and centered */
    #dm .dmBody div.u_1261686430,
    #dm .dmBody div.u_1748137899,
    #dm .dmBody div.u_1529401966 {
        width: 70px !important;
        height: 70px !important;
        max-width: none !important;
        margin: 0 auto 15px !important;
    }

    #dm .dmBody div.u_1261686430 svg,
    #dm .dmBody div.u_1748137899 svg,
    #dm .dmBody div.u_1529401966 svg {
        width: 100% !important;
        height: 100% !important;
    }

    /* Gallery section */
    #dm .dmBody div.u_1875463488 {
        padding: 20px 10px !important;
    }

    /* Show gallery on mobile (was hide-for-medium) */
    #dm .dmBody .u_1319654285 {
        display: block !important;
    }

    /* Oxygen red section */
    #dm .dmBody div.u_1200141485 {
        padding: 30px 15px !important;
    }

    /* Oxygen stats row - stack vertically */
    #dm .dmBody div.u_1588318528 .dmRespColsWrapper {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 15px !important;
    }

    /* Oxygen stat items - ensure text is visible */
    #dm .dmBody div.u_1588318528 .dmRespCol {
        width: 100% !important;
        padding: 10px 15px !important;
        text-align: center !important;
    }

    /* Oxygen descriptions - prevent cut-off */
    #dm .dmBody div.u_1940388877,
    #dm .dmBody div.u_1282218524,
    #dm .dmBody div.u_1180725448 {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    #dm .dmBody div.u_1940388877 p,
    #dm .dmBody div.u_1282218524 p,
    #dm .dmBody div.u_1180725448 p {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: unset !important;
    }

    /* CTA section */
    #dm .dmBody div.u_1963354568 {
        padding: 30px 15px !important;
    }

    #dm .dmBody div.u_1755351472 {
        max-width: 280px !important;
    }

    /* Testimonials section */
    #dm .dmBody div.u_1624816370 {
        padding: 40px 15px !important;
        background-attachment: scroll !important;
    }

    #dm .dmBody div.u_1053428613 {
        width: 50px !important;
        height: 50px !important;
        max-width: none !important;
        margin: 0 auto 10px !important;
    }

    /* Certifications section */
    #dm .dmBody div.u_1893622662 {
        padding: 25px 15px !important;
        background-attachment: scroll !important;
    }

    #dm .dmBody div.u_1493786868 {
        width: 80px !important;
        max-width: none !important;
    }

    /* Certification logos - 3 columns */
    #dm .dmBody .u_1242225059 .gallery4inArow .photoGalleryThumbs {
        width: 33.333% !important;
    }

    /* Contact form section */
    #dm .dmBody div.u_1112479837 {
        padding: 40px 15px 15px !important;
        background-position: center top !important;
    }

    /* Hide left spacer column in contact */
    #dm .dmBody div.u_1065238126 {
        display: none !important;
    }

    /* ================================================
       EQUIPO-HC PAGE (Team)
       ================================================ */

    /* Hero banner */
    #dm .dmBody div.u_1020242766 {
        padding: 60px 20px !important;
        background-attachment: scroll !important;
    }

    /* Two-column team sections - text centered */
    #dm .dmBody .u_1121005992,
    #dm .dmBody .u_1005246877,
    #dm .dmBody .u_1396287772,
    #dm .dmBody .u_1890706108 {
        text-align: center !important;
        padding: 20px 15px !important;
    }

    /* Background image columns - reduce height */
    #dm .dmBody .u_1121005992[data-gallery-bg],
    #dm .dmBody .u_1396287772[data-gallery-bg] {
        min-height: 250px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    /* Trust section */
    #dm .dmBody div.u_1390041924 {
        padding: 30px 15px !important;
    }

    /* ================================================
       DISCOVER PAGE (Training)
       ================================================ */

    /* Hero */
    #dm .dmBody div.u_1735382108 {
        padding: 60px 20px !important;
        background-attachment: scroll !important;
    }

    /* Two-column alternating sections */
    #dm .dmBody div.u_1234740349,
    #dm .dmBody div.u_1457749527 {
        padding: 20px 15px !important;
    }

    /* Spacer columns become minimal */
    #dm .dmBody .u_1090128029,
    #dm .dmBody .u_1399151663 {
        display: none !important;
    }

    /* Content columns take full width */
    #dm .dmBody .u_1173032811,
    #dm .dmBody .u_1996678325 {
        text-align: center !important;
        padding: 20px 15px !important;
    }

    /* ================================================
       CONTACTENOS PAGE (Contact)
       ================================================ */

    /* Hero */
    #dm .dmBody div.u_1869744900 {
        padding: 60px 20px !important;
        background-attachment: scroll !important;
    }

    /* Contact info column */
    #dm .dmBody .u_1083601351 {
        text-align: center !important;
        padding: 20px 15px !important;
    }

    /* Form column */
    #dm .dmBody .u_1215709734 {
        padding: 20px 15px !important;
    }

    /* Map section columns */
    #dm .dmBody .u_1416522416,
    #dm .dmBody .u_1231936649 {
        padding: 15px !important;
    }

    /* ================================================
       EXPERIENCES PAGE (Services)
       ================================================ */

    /* Tab widget container */
    #dm .dmBody .widget-7b2ba5,
    #dm .dmBody .dmCustomWidget[data-widget-id="7b2ba547771b4d4db17e3e2b9f0abd0c"] {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
    }

    /* Tab navigation - vertical stack */
    #dm .dmBody .widget-7b2ba5 .nav,
    #dm .dmBody .widget-7b2ba5 .nav.desktop {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }

    /* Tab labels - full width buttons */
    #dm .dmBody .widget-7b2ba5 .tab-label {
        width: 100% !important;
        text-align: center !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        padding: 14px 15px !important;
        border-bottom: 1px solid rgba(0,0,0,0.1) !important;
        margin: 0 !important;
        cursor: pointer !important;
    }

    #dm .dmBody .widget-7b2ba5 .tab-label.active {
        background-color: rgba(104, 204, 209, 0.1) !important;
        border-left: 3px solid #68ccd1 !important;
    }

    /* Each tab content - hide by default */
    #dm .dmBody .widget-7b2ba5 .tab.layout-a {
        display: none !important;
        flex-direction: column !important;
        width: 100% !important;
        padding: 0 !important;
    }

    /* Show only active tab */
    #dm .dmBody .widget-7b2ba5 .tab.layout-a.active {
        display: flex !important;
    }

    /* Image container - full width on top */
    #dm .dmBody .widget-7b2ba5 .image-container.layout-a {
        width: 100% !important;
        max-width: 100% !important;
        height: 250px !important;
        margin: 0 0 20px 0 !important;
        order: 1 !important;
        background-size: cover !important;
        background-position: center !important;
        border-radius: 8px !important;
    }

    #dm .dmBody .widget-7b2ba5 .image-container img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        border-radius: 8px !important;
    }

    /* Tab space - hide on mobile */
    #dm .dmBody .widget-7b2ba5 .tab-space {
        display: none !important;
    }

    /* Text container - below image */
    #dm .dmBody .widget-7b2ba5 .tab-text-container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 15px !important;
        order: 2 !important;
    }

    #dm .dmBody .widget-7b2ba5 .tab-description {
        width: 100% !important;
        text-align: left !important;
    }

    #dm .dmBody .widget-7b2ba5 .desc-title {
        font-size: 20px !important;
        font-weight: bold !important;
        margin-bottom: 12px !important;
        color: #072449 !important;
    }

    #dm .dmBody .widget-7b2ba5 .tab-description p {
        line-height: 1.7 !important;
        margin-bottom: 10px !important;
        text-align: left !important;
    }

    /* Button container */
    #dm .dmBody .widget-7b2ba5 .btn-container {
        width: 100% !important;
        text-align: center !important;
        margin-top: 15px !important;
    }

    #dm .dmBody .widget-7b2ba5 .btn-container .button-class {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 12px 30px !important;
        min-width: 140px !important;
        text-align: center !important;
    }

    #dm .dmBody .widget-7b2ba5 .btn-container .button-class .text {
        display: inline-block !important;
        vertical-align: middle !important;
        line-height: 1.2 !important;
    }

    /* Services photo gallery */
    #dm .dmBody .dmPhotoGallery .photoGalleryThumbs {
        width: 100% !important;
    }

    /* Services alternating sections */
    #dm .dmBody .dmSectionNoParallax[data-gallery-bg] {
        min-height: 200px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    /* ===== EQUIPO-HC PAGE - Background image columns ===== */
    /* Rows containing the image sections */
    #dm .dmBody .u_1384127097.dmRespRow,
    #dm .dmBody .u_1088983038.dmRespRow {
        display: block !important;
        width: 100% !important;
        margin-bottom: 30px !important;
        overflow: visible !important;
    }

    /* Make the wrapper flex so we can control order */
    #dm .dmBody .u_1384127097 .dmRespColsWrapper,
    #dm .dmBody .u_1088983038 .dmRespColsWrapper {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }

    /* Image columns - show FIRST with proper height */
    #dm .dmBody .u_1121005992.dmSectionNoParallax[data-gallery-bg],
    #dm .dmBody .u_1396287772.dmSectionNoParallax[data-gallery-bg] {
        order: 1 !important;
        min-height: 250px !important;
        height: 250px !important;
        width: 100% !important;
        display: block !important;
        background-size: cover !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
        margin-bottom: 20px !important;
        border-radius: 8px !important;
        overflow: hidden !important;
    }

    /* Apply specific background images directly via CSS */
    #dm .dmBody .u_1121005992.dmSectionNoParallax {
        background-image: url('https://lirp.cdn-website.com/0070e392/dms3rep/multi/opt/pexels-marcelo-dias-2379944-1920w.jpg') !important;
    }

    #dm .dmBody .u_1396287772.dmSectionNoParallax {
        background-image: url('https://lirp.cdn-website.com/md/unsplash/dms3rep/multi/opt/photo-1502120492606-fba13cc63721-1920w.jpg') !important;
    }

    /* Ensure spacers inside take full height */
    #dm .dmBody .u_1121005992 .u_1864691751,
    #dm .dmBody .u_1396287772 .u_1590842263 {
        min-height: 250px !important;
        height: 250px !important;
        display: block !important;
        width: 100% !important;
    }

    /* Text columns - show AFTER images */
    #dm .dmBody .u_1005246877,
    #dm .dmBody .u_1890706108 {
        order: 2 !important;
        padding: 0 15px 20px 15px !important;
        width: 100% !important;
    }

    /* Equipo-hc headings */
    #dm .dmBody .u_1503770160,
    #dm .dmBody h3[id="1568650862"] {
        font-size: 24px !important;
        font-weight: bold !important;
        margin-bottom: 15px !important;
        text-align: left !important;
    }

    /* Equipo-hc paragraphs */
    #dm .dmBody .u_1933469417,
    #dm .dmBody .u_1569994394 {
        line-height: 1.7 !important;
        text-align: justify !important;
        margin-bottom: 15px !important;
    }

    /* ================================================
       BLOG LISTING PAGE
       ================================================ */

    /* Blog grid - single column */
    #dm .dmBody .mainBlog.layout4 .postArticle {
        width: 100% !important;
        max-width: 100% !important;
        margin: 10px 0 !important;
        float: none !important;
    }

    #dm .dmBody .mainBlog.layout4 {
        display: flex !important;
        flex-direction: column !important;
    }

    /* Blog post cards */
    #dm .dmBody .postArticle .postTextContainer {
        padding: 12px !important;
    }

    #dm .dmBody .postArticle .blogImg {
        height: 200px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    #dm .dmBody .postArticle .postTitle {
        font-size: 18px !important;
        line-height: 1.3 !important;
    }

    #dm .dmBody .postArticle .postBody {
        font-size: 14px !important;
    }

    /* Blog search */
    #dm .dmBody .dmBlogSearch {
        width: 100% !important;
        max-width: 100% !important;
    }

    #dm .dmBody .dmBlogSearchInput {
        width: 100% !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 16px !important;
    }

    /* Blog post list */
    #dm .dmBody .dmBlogPostList {
        padding: 0 10px !important;
    }

    #dm .dmBody .dmBlogPostList .dmBlogPostEntry {
        width: 100% !important;
        max-width: 100% !important;
        margin: 10px 0 !important;
    }

    /* ================================================
       BLOG ARTICLE PAGES
       ================================================ */

    /* Blog post content - clean layout */
    #dm .dmBody .blog-post-row .dmRespColsWrapper,
    #dm .dmBody .postPageExtRoot .dmRespColsWrapper {
        display: flex !important;
        flex-direction: column !important;
    }

    #dm .dmBody .blog-post-row .dmRespCol,
    #dm .dmBody .postPageExtRoot .dmRespCol {
        width: 100% !important;
        padding: 0 15px !important;
    }

    /* Blog post image - full width above text */
    #dm .dmBody .blog-post-row .imageWidget,
    #dm .dmBody .postPageExtRoot .imageWidget {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 20px 0 !important;
        float: none !important;
        display: block !important;
    }

    #dm .dmBody .blog-post-row .imageWidget img,
    #dm .dmBody .postPageExtRoot .imageWidget img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        border-radius: 8px !important;
        display: block !important;
        float: none !important;
    }

    /* Blog post text - clean readable layout */
    #dm .dmBody .blog-post-row .dmNewParagraph,
    #dm .dmBody .postPageExtRoot .dmNewParagraph {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 !important;
        float: none !important;
        clear: both !important;
    }

    #dm .dmBody .blog-post-row .dmNewParagraph div,
    #dm .dmBody .postPageExtRoot .dmNewParagraph div {
        text-align: left !important;
        line-height: 1.7 !important;
    }

    /* Blog post hero banner */
    #dm .dmBody .u_1325247579,
    #dm .dmBody [data-blog-template="bind-bg-img"] {
        min-height: 200px !important;
        padding: 40px 20px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    #dm .dmBody .u_1325247579 h3,
    #dm .dmBody [data-blog-template="bind-title"] {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }

    /* Blog post nav (prev/next) */
    #dm .dmBody .blog-post-row ~ .dmRespRow a[data-blog-post-alias] {
        float: none !important;
        display: block !important;
        text-align: center !important;
        padding: 10px !important;
        margin: 5px 0 !important;
    }

    /* Fix excessive margins on blog post content */
    #dm .dmBody .dmBlogPostBody,
    #dm .dmBody .dmBlogPostBody .dmNewParagraph {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Blog post images */
    #dm .dmBody .dmBlogPostBody img,
    #dm .dmBody .postBodyContent img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Blog navigation (next/prev) */
    #dm .dmBody .dmBlogPostNavigation a,
    #dm .dmBody .postNavigation a {
        float: none !important;
        display: block !important;
        text-align: center !important;
        margin: 5px 0 !important;
    }

    /* Share buttons */
    #dm .dmBody .dmSocialShare {
        text-align: center !important;
    }

    /* Related posts */
    #dm .dmBody .dmBlogRelated .postArticle,
    #dm .dmBody .related-posts .postArticle {
        width: 100% !important;
        float: none !important;
        margin: 10px 0 !important;
    }

    /* ================================================
       PRIVACY PAGE (aviso-de-privacidad)
       ================================================ */
    #dm .dmBody .dmNewParagraph p {
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
    }

    /* ================================================
       ALL INNER PAGES - GENERIC
       ================================================ */

    /* Hero banners */
    #dm .dmBody .dmRespRow.fullBleedMode .dmRespCol {
        padding: 20px 15px !important;
    }

    /* Background attachment fix for iOS */
    #dm .dmBody .dmSectionNoParallax,
    #dm .dmBody .dmSectionParallaxNew,
    .dmSectionParallex {
        background-attachment: scroll !important;
    }

    /* Inner page content padding */
    #dm .dmBody .dmHomeRespTmpl > .dmRespRow > .dmRespColsWrapper > .dmRespCol,
    #dm .dmBody .dmDefaultRespTmpl > .innerPageTmplBox > .dmRespRow > .dmRespColsWrapper > .dmRespCol,
    #dm .dmBody .dmAboutusRespTmpl > .innerPageTmplBox > .dmRespRow > .dmRespColsWrapper > .dmRespCol {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* ================================================
       FOOTER
       ================================================ */
    .dmFooterContainer .dmRespRow .dmRespColsWrapper {
        display: flex !important;
        flex-direction: column !important;
    }

    .dmFooterContainer .dmRespCol {
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        padding: 15px !important;
    }

    #dm .dmBody div.u_1617407184 {
        padding: 20px 15px !important;
    }

    .dmFooterContainer .u_1116005605 img {
        max-width: 120px !important;
    }

    .dmFooterContainer h5 {
        text-align: center !important;
    }

    .dmFooterContainer h5 div {
        text-align: center !important;
    }

    /* Footer bottom bar */
    #dm .dmBody .u_1196580976 {
        padding: 10px 15px !important;
    }

    /* ================================================
       STICKY CONTACT BUTTON
       ================================================ */
    #dm .sticky-widgets-container-global .dmButtonLink {
        font-size: 12px !important;
        padding: 8px 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
    }

    #dm .sticky-widgets-container-global .dmButtonLink .text {
        display: inline-block !important;
        vertical-align: middle !important;
        line-height: 1.2 !important;
    }

    #dm .sticky-widgets-container-global .dmButtonLink .iconBg {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}

/* ============================================
   SMALL MOBILE: max-width 480px
   ============================================ */
@media screen and (max-width: 480px) {

    /* Even smaller font sizes for small phones */
    .font-size-85, .size-85, .size-85 > font { font-size: 24px !important; }
    .font-size-80, .size-80, .size-80 > font { font-size: 22px !important; }
    .font-size-60, .size-60, .size-60 > font { font-size: 20px !important; }
    .font-size-40, .size-40, .size-40 > font { font-size: 18px !important; }
    .font-size-36, .size-36, .size-36 > font { font-size: 18px !important; }
    .font-size-35, .size-35, .size-35 > font { font-size: 18px !important; }
    .font-size-28, .size-28, .size-28 > font { font-size: 16px !important; }
    .m-font-size-50 { font-size: 22px !important; }
    .m-font-size-38 { font-size: 20px !important; }
    .m-font-size-36 { font-size: 18px !important; }

    /* Header logo slightly smaller on small phones */
    #dm .p_hfcontainer .u_1188728890 .imageWidget img,
    .dmHeaderContent .u_1188728890 .imageWidget img {
        max-height: 55px !important;
        max-width: 150px !important;
    }

    /* Hero title even smaller on small phones */
    #dm .dmBody .u_1277865775 h1,
    #dm .dmBody .u_1277865775 h1 span {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }

    /* Hero padding */
    #dm .dmBody div.u_1265393572 {
        padding: 40px 12px 60px !important;
    }

    /* All gallery - single column */
    #dm .dmBody .gallery4inArow .photoGalleryThumbs {
        width: 100% !important;
    }

    /* Certifications - 2 columns */
    #dm .dmBody .u_1242225059 .gallery4inArow .photoGalleryThumbs {
        width: 50% !important;
    }

    /* Sections padding */
    #dm .dmBody div.u_1963354568 { padding: 20px 10px !important; }
    #dm .dmBody div.u_1624816370 { padding: 30px 10px !important; }
    #dm .dmBody div.u_1267104717 { padding: 20px 10px !important; }

    /* Footer */
    #dm .dmBody div.u_1617407184 { padding: 15px 10px !important; }

    /* Contact form */
    #dm .dmBody div.u_1423960304 { padding: 15px 10px !important; }

    /* Buttons */
    #dm .dmBody .dmButtonLink {
        width: auto !important;
        min-width: 160px !important;
        max-width: 100% !important;
        padding: 10px 20px !important;
    }

    /* Slider text even smaller on small phones */
    #dm .dmBody .dmImageSlider .slides .slide-title {
        font-size: 13px !important;
        line-height: 1.6 !important;
    }
    #dm .dmBody .dmImageSlider .slides .slide-inner {
        padding: 25px 15px !important;
    }

    /* CTA image */
    #dm .dmBody div.u_1755351472 { max-width: 220px !important; }

    /* Blog card images */
    #dm .dmBody .postArticle .blogImg { height: 160px !important; }

    /* Tab labels */
    #dm .dmBody .tab-label {
        font-size: 13px !important;
        padding: 10px 8px !important;
    }

    /* Hero banners inner pages */
    #dm .dmBody div.u_1020242766 { padding: 40px 15px !important; }
    #dm .dmBody div.u_1735382108 { padding: 40px 15px !important; }
    #dm .dmBody div.u_1869744900 { padding: 40px 15px !important; }

    /* Background image columns smaller */
    #dm .dmBody .u_1121005992[data-gallery-bg],
    #dm .dmBody .u_1396287772[data-gallery-bg] {
        min-height: 180px !important;
    }
}

/* ============================================
   LANDSCAPE MOBILE FIX
   ============================================ */
@media screen and (max-height: 500px) and (orientation: landscape) {
    #dm .dmBody div.u_1265393572 {
        padding: 30px 20px !important;
    }

    .mobile-nav-overlay {
        padding: 60px 20px 20px;
    }

    .mobile-nav-overlay a {
        font-size: 18px;
        padding: 10px 20px;
    }
}

/* ============================================
   PRINT STYLES
   ============================================ */
@media print {
    .mobile-menu-toggle,
    .mobile-nav-overlay,
    .sticky-widgets-container-global {
        display: none !important;
    }
}
