.sdd .header-light .topbar{
    background: #FFFFFF;
    border-bottom: 0.5px solid rgba(204, 204, 204, 0.4);
    
}

.sdd header{
    box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.07);
}

.sdd .topbar{
    height: 82px;
    display: flex;
    align-items: center;
}

.sdd .header-light .topbar-right > .search-bar,
.sdd .header-light .topbar-right > .menu-grid{
    margin-left: 30px;
    margin-right: 30px;
    position: relative;
}

.sdd .header-light .topbar-right > .lang-select{
    margin-left: 20px;
}

.sdd .header-light .topbar-right .lang-select > a > img{
    height: 15px;
}

.sdd .header-light .topbar-right .lang-select:after{
    background-color: #D3D3D3;
    content: none;
    display: block;
    height: 45px;
    right: -30px;
    position: absolute;
    top: -15px;
    width: 1px;
}

.sdd .header-light .topbar-right .search-bar:after{
    background-color: #D3D3D3;
    content: "";
    display: block;
    height: 45px;
    right: -30px;
    position: absolute;
    top: -2px;
    width: 1px;
}

.sdd .header-light .topbar-right .menu-grid:before {
    background-color: #D3D3D3;
    content: "";
    display: block;
    height: 45px;
    right: -30px;
    position: absolute;
    top: -4px;
    width: 1px;
}

.sdd .search-bar button i {
    font-weight: bold;
}

.sdd .search-bar button {
    display: flex;
    align-items: center;
    justify-content: center;
}

.sdd div.lang-select.dropdown-simple i{
    color: #003876;
}

.sdd .topbar-right .lang-select {
    padding-left: 0;
}

.sdd .banner_content.bg-blue-ligth {
    background-color: white;
}

.sdd h1{
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 700;
    font-size: 36px;
    line-height: 54px;
    color: #003876;
}

.sdd .banner_content h2 {
    font-size: 26px;
}

.sdd .banner_content p {
    font-size: 14px;
    line-height: 16px;
    font-weight: 400;
}

.sdd hr.separator{
    border-top: 3px solid #BCD1EC;
    margin-top: 0;
}

.sdd p.card-text{
    font-size: 16px;
    color: black;
    font-weight: 400;
    line-height: 19px;
}

.sdd a.card-link{
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    line-height: 17px;
    color: #0087FF;
}

.sdd .breadcrumbs{
    padding: 50px 0;
}

.sdd .breadcrumbs h1{
    font-weight: 500;
    margin-top: 10px;
}

.sdd .breadcrumbs .path a {
    color: #003670;
}


.sdd div.certifications{
    display: flex;
    justify-content: space-between;
}

.sdd .menu-grid .dropdown-menu{
    inset: 0px 0px auto auto !important;
    transform: translate3d(0, 40.8px, 0px) !important;
    width: 350px;
    padding: 0;
}


.sdd .menu-grid .dropdown-menu h3{
    font-size: 16px;
    font-family: 'Roboto';
    color: #003670;
    font-weight: 700;
}

.sdd .menu-grid .dropdown-menu h4{
    font-size: 14px;
    font-family: 'Roboto';
    font-weight: 500;
    color: #003670;
}

.sdd .menu-grid .dropdown-menu h5{
    color: #003670;
    font-family: 'Roboto';
    font-size: 10px;
    font-weight: 700;
    line-height: 11px;
}

.sdd p.subtitle{
    color:white !important;
}

.sdd .menu-grid .dropdown-menu .dropdown-items > .row{
    margin-bottom: 20px;
}

.sdd .list-submenu .group-submenu ul li.active {
    cursor: pointer;
}

.sdd .menu-grid-title i{
    font-size: 18px;
    color: #EE2A24;
    cursor: pointer;
}

.sdd .menu-grid-content > a{
    display: flex;
    justify-content: space-between;
    text-decoration: none;
    padding: 15px;
}

.sdd .menu-grid-content .menu-item:hover{
    background-color: #eff7ff;
    border-radius: 5px;
}

.sdd .menu-grid-content .menu-item img{
    height: 60px;
}

.sdd .menu-grid-content .menu-item:hover .rounded-circle {
    border: 2px solid #4baaff;
}

.sdd .menu-grid-content .menu-item:hover a::before{
    content: '';
    height: 60px;
    width: 60px;
    position: absolute;
    background-color: rgb(75, 170, 255, 0.5);
    border-radius: 50%;
}

.sdd .menu-grid-content > a i{
    font-size: 18px;
    color: #0087FF;
}

.sdd .menu-grid-content hr{
    margin:0;
    margin-bottom: 1rem;
}

.sdd .rounded-circle {
    border: 2px solid #E5E5E5;
}

.sdd .rounded-circle:hover {
    border: 2px solid #4baaff;
}

.sdd .menu-grid-content > a.collapsed i{
    transition: 0.2s;
    transform: rotate(-90deg);
    animation-fill-mode: forwards;
}

@media screen and (min-width: 768px){
    .sdd .menu-grid-content .menu-item{
        padding-top: 10px;
        padding-bottom: 20px;
        margin-right: 8px;
        margin-left: 8px;
    }

    .sdd .main-menu {
        height: 56px;
    }
    

    .sdd .menu-dropdown .dropdown-menu{
        border: none;
        box-shadow: 2px 2px 4px #9c9b9bcf;
    }

    .sdd .menu-grid-title{
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 14px 12px;
        height: 47px;

        /* Fondo Secundario */

        background: #F8F8F8;
        /* Nivel 1/Profundidad 4 */

        box-shadow: 0px 0.6px 1.8px rgba(0, 0, 0, 0.1), 0px 3.2px 7.2px rgba(0, 0, 0, 0.13);
    }

    .sdd .menu-grid .dropdown-menu .menu-grid-content{
        padding: 25px;
    }

    .sdd footer .footer-nortic a{
        display: none;
    }
    .sdd .menu-grid-title i.ri-arrow-right-s-line{
        display: none;
    }
}

.sdd .dropdown-toggle::after {
    content: none;
}

.sdd .list-submenu .group-submenu ul li a[data-bs-toggle|="collapse"]{
    display: flex;
    justify-content: space-between;
    text-decoration: none;
}

.sdd .list-submenu .group-submenu ul li a[data-bs-toggle|="collapse"] i{
    color: #595959;
    font-size: 20px;
    margin-top: -4px;
    text-decoration: none;
    display: inline-block;

}

.sdd .list-submenu .group-submenu ul li.active a{
    display: flex;
    justify-content: space-between;

}

.sdd .lang-select .dropdown-list{
    padding: 0;
}

.sdd .lang-select .dropdown-list a{
    padding: 10px;
}

.sdd .lang-select .dropdown-list a:hover{
    background-color: #eff7ff;
}

.sdd .main-menu .dropdown-menu{
    padding: 0;
}
.sdd .dropdown-list a+a {
    margin-top: 0;
}

.sdd .main-menu .dropdown-item{
    color: #003670;
    font-size: 14px;
    font-weight: 500;
    padding: 10px 10px;
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 500;
}

.sdd .main-menu .dropdown-item:hover{
    background-color: #eff7ff;
}

.sdd .list-submenu .group-submenu ul li.active i{
    color: #595959;
    font-size: 20px;
    margin-top: -4px;
    text-decoration: none;
    display: inline-block;
    display: none;
}

.sdd .list-submenu .group-submenu ul li a[data-bs-toggle|="collapse"] i:hover{
    text-decoration: none;
    display: inline-block;
}

.sdd .list-submenu .group-submenu div.collapse,.sdd .list-submenu .group-submenu div.collapsing{
    margin-left: 30px;
    margin-top: 10px;
}

.sdd .list-submenu .group-submenu ul li a[aria-expanded|="true"] i{
    transform: rotate(180deg);
    text-decoration: none;
}

.sdd .hamburger-menu{
    display: none;
}

.sdd .topbar .logo-icon img {
    height: initial;
}

.sdd .footer-light{
    border-top: 1px solid #d3d3d3;
}



@media screen and (max-width: 767px){

    .sdd .main-menu .dropdown-menu{
        position: static !important;
        transform: none !important;
        border:none;
        padding:0;
    }

    .sdd .main-menu .menu-dropdown .dropdown-menu{
        padding-left: 20px;
    }

    .sdd .main-menu .menu-dropdown .menu-item.show{
        color: #EE2A24;
    }

    .sdd .hamburger-menu{
        display: block;
    }

    .sdd .main-menu{
        height: 100%;
    }

    .sdd .main-menu-cont .menu{
        display: none;
        flex-direction: column;
        width: 100%;
    }

    .sdd .main-menu-cont .menu .menu-item{
        font-weight: 500;
        font-size: 14px;
        padding: 20px 10px;
        margin-right: 0;
    }

    .sdd .main-menu-cont .menu .menu-item{
        font-weight: 500;
        font-size: 14px;
        padding: 20px 10px;
        justify-content: space-between;
    }

    .sdd .menu-grid{
        padding: 0 10px;
    }

    .sdd .menu-grid > a.dropdown-toggle > img{
        height: 20px;
        margin: 20px 0;
    }

    .sdd .menu-grid .dropdown-menu {
        border:none;
        position: static !important;
        transform: none !important;
        padding: 25px 0 0;
        width: 100%;
    }

    .sdd .menu-grid > a.dropdown-toggle{
        display: flex;
        border-bottom: 1px solid #e5e7eb;
        width: 100%;
    }

    .sdd .menu-grid > a.dropdown-toggle h3{
        align-self: center;
        color: #003670;
        margin-left: 7px;
    }

    .sdd .banner{
        flex-direction: column;
        padding: 0;
    }
    .sdd .banner_content.bg-blue-ligth{
        width: 100%;
        padding: 10%;
    }

    .sdd .banner > img{
        width: 100%;
        height: auto;
    }

    .sdd .col-md{
        margin-bottom: 20px;
    }

    .sdd .group-submenu-title{
        display: none;
    }

    .sdd .list-submenu {
        border-right: none;
    }

    .sdd .list-submenu .group-submenu ul li.active {
        border: none;
        background-color: #eef5ff;
    }

    .sdd .list-submenu .group-submenu {
        margin-bottom: 0;
        margin-top: 20px;
    }

    .sdd .list-submenu .group-submenu.second{
        padding-right: 0 !important; 
    }

    .sdd .list-submenu .group-submenu ul li{
        padding: 15px 15px;
        color: #003876;
    }

    .sdd .list-submenu .group-submenu > ul > li > a,
    .sdd .list-submenu .group-submenu > ul > li.active > a{
        font-weight: 600;
        color: #003876;
    }

    .sdd .list-submenu .group-submenu > ul > li a{
        color: #003876;
    }

    .sdd .list-submenu .group-submenu ul li.active i,
    .sdd .list-submenu .group-submenu ul li a[data-bs-toggle|="collapse"] i{
        color: #003876;
        display: block;
    }

    .sdd .list-submenu .group-submenu ul li.active:after {
        content: none;
    }

    .sdd .list-submenu .group-submenu div.collapse, .sdd .list-submenu .group-submenu div.collapsing {
        margin-left: 0px;
        margin-top: 10px;
    }

    .sdd #searchMain{
        visibility: hidden;
        width: 1px !important;
    }

    .sdd .logo-icon img{
        width: 100%;
        max-height: 40px;
    }

    .sdd .topbar-right .lang-select:before {
        content: none;
    }

    .sdd .logo-icon img{
        content: url("img/page-logo-mobile.svg");
    }
    .sdd div.list-submenu .group-submenu.second{
        display: none;
    }

    .sdd .menu-grid-title i.ri-close-circle-line{
        display: none;
    }

    .sdd footer .footer-nortic a{
        display: flex;
        justify-content: space-between;
        color: #003876;
        font-weight: 500;
        margin-bottom: 20px;
        text-decoration: none;
    }

    .sdd footer .footer-nortic{
        padding: 0;
    }

    .sdd footer .footer-nortic a {
        padding: 22px 0;
        margin-bottom: 0;
    }
    
    .sdd .topbar{
        height: 72px;
    }

    .sdd footer .footer-nortic .certifications{
        margin-bottom: 20px;
    }

    .sdd .menu-grid a{
        text-decoration: none;
    }

    .sdd .menu-grid > a:hover{
        background-color: #f8f9fa;
    }
    
    .sdd .menu-grid h3 {
        width: 100%;
        display: flex;
        justify-content: space-between;
        text-decoration: none;
        align-items: center;
    }

    .sdd .menu-grid h3 i{
        font-size: 18px;
    }
    .sdd .header-light .topbar-right > *,
    .sdd .header-light .topbar-right > .search-bar{
        margin-left: 14px;
        margin-right: 14px;
        position: relative;
    }

    .sdd .header-light .topbar-right .lang-select:after{
        background-color: #D3D3D3;
        content: "";
        display: block;
        height: 45px;
        right: -14px;
        position: absolute;
        top: -15px;
        width: 1px;
    }

    .sdd .header-light .topbar{
        box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.07);
    }
    
    .sdd .header-light .topbar-right .search-bar:after{
        background-color: #D3D3D3;
        content: "";
        display: block;
        height: 45px;
        right: -14px;
        position: absolute;
        top: -2px;
        width: 1px;
    }
    .sdd .list-submenu{
        padding: 0;
    }
    .sdd .entry-content{
        padding-top: 10px;
    }

    .sdd .menu-grid > a.show i{
        transition: 0.2s;
        transform: rotate(90deg);
    }

    .sdd .menu-dropdown > a i{
        font-size: 18px;
        transition: 0.2s;
        transform: rotate(-90deg);
    }

    .sdd .menu-dropdown > a.show i{
        transition: 0.2s;
        transform: none;
    }

    .sdd .footer-bottom {
        height: 128px;
    }

    .sdd .footer-light .footer-bottom-cont {
        padding: 14px 0;
    }

    .sdd .footer-light .footer-top .footer-menu-list li span,
    .sdd .footer-light .footer-top .footer-menu-list li a{
        font-size: 12px;
        line-height: 15px;
    }

    .sdd .footer-nortic {
        border-bottom: none;
    }

    .sdd .footer-light .footer-top .footer-title {
        margin-bottom: 10px;
    }

    .sdd .footer-light .footer-top {
        padding: 0 0 26px;
        height: 380px;
    }

    .sdd .footer-light .footer-top .footer-menu-list li:not(:last-child) {
        margin-bottom: 6px;
    }

    .sdd .footer-light .footer-top .logo-cont::after {
        content: none;
    }
}

.sdd .nortic-seals img{
    height: 100px;
    width: 100px;
}

@media screen and (max-width: 428px){
    .sdd .list-submenu .group-submenu {
        display: block;
    }
}

.sdd .footer-title{
    font-size: 14px;
    font-weight: 500;
}


/* ============================================================= */
/* WordPress adaptations (added for the RD VIAL SDD re-theme)     */
/* ============================================================= */

/* Main content spacing so page bodies are not flush to the header */
.sdd #main.main { display: block; min-height: 40vh; }

/* SDD breadcrumb bar (page template uses .breadcrumbs-bar to avoid
   colliding with the theme's custom_breadcrumbs() ul.breadcrumbs) */
.sdd .breadcrumbs-bar { padding: 50px 0; }
.sdd .breadcrumbs-bar h1 { font-weight: 500; margin-top: 10px; }
.sdd .breadcrumbs-bar .path { color: #003670; }
.sdd .breadcrumbs-bar .path a { color: #003670; text-decoration: none; }
.sdd .breadcrumbs-bar .path ul.breadcrumbs {
    list-style: none; display: flex; flex-wrap: wrap;
    gap: 6px; padding: 0; margin: 0; font-size: 14px;
}
.sdd .breadcrumbs-bar .path ul.breadcrumbs li { display: inline; }

/* Transparencia content column */
.sdd .sdd-transparencia .entry-content { padding-bottom: 40px; }
.sdd .sdd-transparencia .entry-content h1.entry-title,
.sdd .sdd-transparencia .entry-content h1 { color: #003876; }

/* Topbar logo sizing for the RD VIAL raster logo */
.sdd .header-light .topbar .logo-icon img { max-height: 52px; width: auto; }

/* Footer social icons (SDD footer-bottom) */
.sdd .footer-light .footer-bottom { background: #003876; }
.sdd .footer-light .footer-bottom-cont {
    display: flex; align-items: center; justify-content: space-between;
    padding: 18px 0; color: #fff;
}
.sdd .footer-light .footer-bottom-cont a,
.sdd .footer-light .footer-bottom-cont .date { color: #fff; }
.sdd .footer-light .follow-icons {
    list-style: none; display: flex; gap: 14px; padding: 0; margin: 0;
}
.sdd .footer-light .follow-icons a { color: #fff; font-size: 20px; }
.sdd .footer-light .footer-bottom-right { display: flex; align-items: center; gap: 14px; }

/* ============================================================= */
/* Header search width fix (placeholder was being truncated)      */
/* ============================================================= */
.sdd .header-light .topbar-right .search-bar { min-width: 320px; max-width: none; display: flex; align-items: center; position: relative; }
/* Hide the mobile "tap to search" toggle (the red circle) */
.sdd .header-light .topbar-right .search-bar .search-bar-toggle { display: none !important; }
/* Force the input + button out of the framework's absolute positioning into a
   centered flex row (framework pins the button to top:0, which looked misaligned). */
.sdd .header-light .topbar-right .search-bar input#searchMain {
  position: static !important; opacity: 1 !important; pointer-events: all !important;
  width: 100% !important; min-width: 240px; height: auto; margin: 0; padding: 0 8px;
  line-height: normal; visibility: visible !important;
}
.sdd .header-light .topbar-right .search-bar button {
  position: static !important; top: auto !important; right: auto !important;
  transform: none !important; align-self: center !important; margin: 0; flex: 0 0 auto;
}
@media screen and (max-width: 991px){
  .sdd .header-light .topbar-right .search-bar { min-width: 200px; }
}

/* Header menu dropdowns — explicit & self-contained (custom JS toggles .show) */
.sdd .header-light .menu-dropdown { position: relative; }
.sdd .header-light .menu-dropdown .dropdown-menu,
.sdd .header-light .menu-grid .dropdown-menu { display: none; }
.sdd .header-light .menu-dropdown .dropdown-menu.show,
.sdd .header-light .menu-grid .dropdown-menu.show { display: block; }

/* Nav dropdown panel (Sobre Nosotros…): solid white card, vertical list, above the hero */
.sdd .header-light .main-menu .menu-dropdown .dropdown-menu {
  position: absolute; top: 100%; left: 0; z-index: 1200;
  min-width: 220px; margin-top: 8px; padding: 8px;
  background: #ffffff; border: 0; border-radius: 12px;
  box-shadow: 0 1px 2px rgba(0,0,0,.05), 0 10px 28px rgba(0,0,0,.14);
  transform: none !important; inset: auto auto auto 0 !important;
}
.sdd .header-light .main-menu .menu-dropdown .dropdown-menu .dropdown-item {
  display: block; width: 100%; float: none; clear: both; white-space: nowrap;
  padding: 9px 12px; border-radius: 8px; font-size: 14px; line-height: 1.3;
  color: #1d1d1f; text-decoration: none; background: transparent;
}
.sdd .header-light .main-menu .menu-dropdown .dropdown-menu .dropdown-item:hover {
  background: #f2f5fa; color: #003876;
}

/* ============================================================= */
/* Apple-like minimalist polish (SDD-compliant, scoped to .sdd)  */
/* ============================================================= */
:root{
  --sdd-blue:#003876; --sdd-blue-2:#0064b1; --sdd-accent:#0087FF;
  --sdd-ink:#1d1d1f; --sdd-muted:#6e6e73; --sdd-line:#e8e8ed; --sdd-bg:#ffffff;
  --sdd-radius:12px; --sdd-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.06);
  --sdd-ease:cubic-bezier(.4,0,.2,1);
}
.sdd .sdd, .sdd .sdd *{ -webkit-font-smoothing:antialiased; }
.sdd .sdd{ font-family:'Inter','Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; color:var(--sdd-ink); }

/* Sticky, clean header — solid white per SDD, subtle shadow */
.sdd .header-light{ position:sticky; top:0; z-index:1000; background:#fff; box-shadow:0 3px 5px rgba(0,0,0,.06); }
.sdd .header-light .topbar{ height:72px; }
.sdd .header-light .topbar .logo-icon img{ max-height:44px; width:auto; transition:opacity .2s var(--sdd-ease); }
.sdd .header-light .topbar .logo:hover .logo-icon img{ opacity:.8; }

/* Pill search */
.sdd .header-light .search-bar{ background:#f5f5f7; border-radius:980px; padding:6px 8px 6px 14px; display:flex; align-items:center; gap:8px; transition:box-shadow .2s var(--sdd-ease),background .2s var(--sdd-ease); }
.sdd .header-light .search-bar:focus-within{ background:#fff; box-shadow:0 0 0 3px rgba(0,135,255,.18); }
.sdd .header-light .search-bar input#searchMain{ border:0; background:transparent; outline:0; font-size:14px; color:var(--sdd-ink); }
.sdd .header-light .search-bar button{ background:var(--sdd-accent); color:#fff; border:0; border-radius:980px; height:34px; padding:0 14px; gap:6px; transition:transform .15s var(--sdd-ease),background .2s var(--sdd-ease); }
.sdd .header-light .search-bar button:hover{ background:#006fd6; transform:translateY(-1px); }

/* Main menu: spacious, subtle underline on hover/active */
.sdd .main-menu .main-menu-cont .menu{ gap:6px; }
.sdd .main-menu .menu .menu-item{ position:relative; font-weight:500; font-size:14.5px; color:var(--sdd-ink); padding:10px 14px; border-radius:8px; text-decoration:none; transition:background .18s var(--sdd-ease),color .18s var(--sdd-ease); }
.sdd .main-menu .menu .menu-item:hover{ background:#f2f5fa; color:var(--sdd-blue); }
.sdd .main-menu .menu .menu-dropdown .dropdown-toggle.menu-item{ gap:4px; align-items:center; }

/* Dropdown panels: soft card with a vertical list of items */
/* (Nav dropdown panel + items are defined authoritatively above.) */
.sdd .menu-grid .dropdown-menu{ border:0; border-radius:var(--sdd-radius); box-shadow:var(--sdd-shadow); overflow:hidden; }

/* Breadcrumb bar: airy, light */
.sdd .breadcrumbs-bar{ padding:40px 0 28px; }
.sdd .breadcrumbs-bar h1{ font-weight:600; letter-spacing:-.02em; color:var(--sdd-blue); }
.sdd .breadcrumbs-bar .path ul.breadcrumbs{ font-size:13px; color:var(--sdd-muted); }
.sdd .breadcrumbs-bar .path a{ color:var(--sdd-muted); }
.sdd .breadcrumbs-bar .path a:hover{ color:var(--sdd-accent); }

/* Transparencia sidebar: clean list */
.sdd .sdd-transparencia .list-submenu{ border:1px solid var(--sdd-line); border-radius:var(--sdd-radius); padding:8px; }
.sdd .sdd-transparencia .group-submenu ul li a{ border-radius:8px; padding:9px 10px; transition:background .15s var(--sdd-ease); }
.sdd .sdd-transparencia .group-submenu ul li a:hover{ background:#f2f5fa; }
.sdd .sdd-transparencia .group-submenu ul li.active a{ background:#eef5ff; color:var(--sdd-blue); font-weight:600; }
.sdd .sdd-transparencia .entry-content{ font-size:16px; line-height:1.6; color:#333; }

/* Footer: minimal */
.sdd .footer-light{ border-top:1px solid var(--sdd-line); }
.sdd .footer-light .footer-top{ padding:48px 0 32px; }
.sdd .footer-light .footer-title{ letter-spacing:.04em; color:var(--sdd-muted); text-transform:uppercase; font-size:12px; }
.sdd .footer-light .footer-menu-list li a, .sdd .footer-light .footer-menu-list li span{ color:var(--sdd-ink); font-size:14px; text-decoration:none; transition:color .15s var(--sdd-ease); }
.sdd .footer-light .footer-menu-list li a:hover{ color:var(--sdd-accent); }
.sdd .footer-light .nortic-seals img{ filter:saturate(.9); transition:transform .2s var(--sdd-ease),filter .2s var(--sdd-ease); }
.sdd .footer-light .nortic-seals img:hover{ transform:translateY(-2px); filter:saturate(1.1); }

/* Smooth focus rings for accessibility */
.sdd .sdd a:focus-visible, .sdd .sdd button:focus-visible, .sdd .sdd input:focus-visible{ outline:2px solid var(--sdd-accent); outline-offset:2px; border-radius:6px; }

/* ============================================================= */
/* Layout alignment + responsive fixes                            */
/* ============================================================= */
/* Unify the chrome container width so header/footer align with content */
.sdd .header-light .container,
.sdd .footer-light .container { max-width: 1200px; width: 100%; margin-left: auto; margin-right: auto; }

/* Grid menu ("Enlaces de interés") icons: clean, consistent white circles */
.sdd .menu-grid-content .menu-item img,
.sdd .menu-grid-content .menu-item img.rounded-circle {
  width: 56px !important; height: 56px !important; object-fit: contain !important;
  background: #fff !important; border: 1px solid #e8e8ed !important; border-radius: 50% !important; padding: 6px !important;
}

/* ---- Mobile / tablet (≤ 767px) ---- */
@media screen and (max-width: 767px){
  /* Keep the RD VIAL logo (the SDD plantilla swaps it to a gov logo via content:url) */
  .sdd .header-light .topbar .logo-icon img { content: normal !important; max-height: 38px !important; width: auto !important; }
  /* Declutter the mobile topbar: logo + hamburger only */
  .sdd .header-light .topbar-right .search-bar,
  .sdd .header-light .topbar-right .menu-grid,
  .sdd .header-light .topbar-right .lang-select { display: none !important; }
  .sdd .header-light .hamburger-menu { display: block !important; }
  .sdd .header-light .topbar-cont { justify-content: space-between; }
  /* Mobile nav dropdowns render inline (not absolute) */
  .sdd .header-light .main-menu .menu-dropdown .dropdown-menu {
    position: static !important; box-shadow: none !important; margin-top: 0 !important; padding-left: 12px !important; min-width: 0 !important;
  }
  .sdd .main-menu .main-menu-cont .menu .menu-item { width: 100%; }
}

/* ---- Mobile menu polish (clean icon + tidy open state) ---- */
@media screen and (max-width: 767px){
  .sdd .header-light .hamburger-menu > a { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: none !important; }
  .sdd .header-light .hamburger-menu > a > i { font-size: 28px; line-height: 1; color: #003876; }

  .sdd .header-light .main-menu-cont .menu { background: #fff; border-top: 1px solid #ececf0; box-shadow: 0 10px 22px rgba(0,0,0,.06); padding: 4px 0; }
  .sdd .header-light .main-menu-cont .menu .menu-item { padding: 15px 20px; font-size: 16px; border-radius: 0; border-bottom: 1px solid #f2f2f5; }
  .sdd .header-light .main-menu-cont .menu .menu-dropdown { border-bottom: 1px solid #f2f2f5; }
  .sdd .header-light .main-menu-cont .menu .menu-dropdown .menu-item { border-bottom: 0; }
  .sdd .header-light .main-menu .menu-dropdown .dropdown-menu { padding: 0 0 4px !important; background: #f8f9fb; }
  .sdd .header-light .main-menu .dropdown-item { padding: 12px 34px; font-size: 15px; border-bottom: 1px solid #eef0f3; }
  .sdd .header-light .main-menu .dropdown-item:last-child { border-bottom: 0; }
  .sdd .header-light .main-menu-cont .menu .menu-item:hover,
  .sdd .header-light .main-menu .dropdown-item:hover { background: #eef5ff; color: #003876; }
  /* chevron on parent items */
  .sdd .header-light .main-menu .menu-dropdown > .dropdown-toggle i { color: #6e6e73; }
}

/* Remove the framework's navy background box behind the hamburger icon */
@media screen and (max-width: 767px){
  .sdd .header-light .hamburger-menu { background: none !important; box-shadow: none !important; display: flex !important; align-items: center; justify-content: center; }
}

/* ============================================================= */
/* Transparencia sidebar: sections start COLLAPSED (no Bootstrap   */
/* JS — our sdd-main.js toggles .show; this provides the hide/show).*/
/* Does not touch the grid menu / footer seals (those aren't        */
/* inside .list-submenu and ship with .show).                      */
/* ============================================================= */
.sdd .list-submenu .collapse:not(.show) { display: none !important; }
.sdd .list-submenu .collapse.show { display: block; }
