/* GNSH Government Portal V7 — full-width responsive refinement */

body.government-v7{
    width:100%;
    max-width:none;
    overflow-x:hidden;
    background:linear-gradient(180deg,#f2f7fc 0%,#ffffff 46%,#f7faff 100%);
}

/* Use the full browser width while preserving readable gutters. */
body.government-v7 .gh-container-wide,
body.government-v7 .container,
body.government-v7 .container-sm,
body.government-v7 .container-md,
body.government-v7 .container-lg,
body.government-v7 .container-xl,
body.government-v7 .container-xxl{
    width:100% !important;
    max-width:none !important;
    margin-inline:0 !important;
    padding-inline:clamp(18px,2.25vw,42px) !important;
}

body.government-v7 .humanized-main,
body.government-v7 .humanized-header,
body.government-v7 .humanized-topbar,
body.government-v7 footer{
    width:100%;
    max-width:none;
}

/* Header identity */
body.government-v7 .v6-header{
    position:relative;
    background:#fff;
    box-shadow:0 12px 34px rgba(13,50,101,.07);
}
body.government-v7 .v6-header::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-4px;
    height:4px;
    z-index:5;
    background:linear-gradient(90deg,#d71920 0 50%,#003893 50% 100%);
}
body.government-v7 .v6-header__brand-row{
    min-height:84px;
    padding-top:.65rem;
    padding-bottom:.65rem;
}
body.government-v7 .humanized-brand__logo{
    flex:0 0 auto;
    width:64px;
    height:64px;
    border-radius:18px;
    background:#fff;
    border:1px solid #dbe5f1;
    box-shadow:0 8px 20px rgba(10,53,116,.08);
    display:grid;
    place-items:center;
    overflow:hidden;
}
body.government-v7 .humanized-brand__logo img{
    width:56px;
    height:56px;
    object-fit:contain;
}
body.government-v7 .humanized-brand__copy strong{
    font-size:clamp(1.15rem,1.45vw,1.7rem);
    letter-spacing:-.02em;
}
body.government-v7 .humanized-brand__copy span{
    color:#667b99;
}

body.government-v7 .v7-flag-logo{
    width:58px;
    height:58px;
    flex:0 0 58px;
    align-items:center;
    justify-content:center;
    padding:.25rem;
    border-radius:18px;
    background:linear-gradient(180deg,#fff,#f8fbff);
    border:1px solid #d8e3ef;
    box-shadow:0 8px 22px rgba(8,45,105,.08);
    text-decoration:none;
    transition:transform .2s ease,box-shadow .2s ease;
}
body.government-v7 .v7-flag-logo:hover,
body.government-v7 .v7-flag-logo:focus-visible{
    transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(8,45,105,.13);
}
body.government-v7 .v7-flag-logo img{
    display:block;
    width:40px;
    height:48px;
    object-fit:contain;
}

/* More explicit dropdown affordance. */
@media (min-width:992px){
    body.government-v7 .humanized-nav__list > li.has-children > .humanized-nav__parent > a span::after{
        content:"";
        display:inline-block;
        width:7px;
        height:7px;
        margin-left:.55rem;
        border-right:2px solid currentColor;
        border-bottom:2px solid currentColor;
        transform:translateY(-2px) rotate(45deg);
        opacity:.85;
        transition:transform .2s ease;
    }
    body.government-v7 .humanized-nav__list > li.has-children:hover > .humanized-nav__parent > a span::after,
    body.government-v7 .humanized-nav__list > li.has-children:focus-within > .humanized-nav__parent > a span::after{
        transform:translateY(2px) rotate(225deg);
    }
    body.government-v7 [data-humanized-submenu-toggle]{
        display:none;
    }
}

body.government-v7 .v6-submenu{
    width:min(880px,calc(100vw - 36px));
    max-height:min(70vh,620px);
    overflow:auto;
}
body.government-v7 .v6-submenu .humanized-submenu__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
}

/* Full-width homepage composition. */
body.government-v7 .v6-home-hero{
    padding-top:1.35rem;
}
body.government-v7 .v6-home-hero__grid{
    grid-template-columns:minmax(300px,1fr) minmax(520px,2.2fr) minmax(310px,1fr);
    gap:1.15rem;
    width:100%;
}
body.government-v7 .v6-side-panel,
body.government-v7 .v6-home-hero__media .professional-slider{
    box-shadow:0 14px 34px rgba(16,55,112,.075);
}
body.government-v7 .v6-update-scroller{
    max-height:575px;
}
body.government-v7 .v6-home-hero__media .professional-slide{
    min-height:500px;
}
body.government-v7 .professional-slide__caption{
    max-width:min(760px,88%);
}
body.government-v7 .professional-slide__caption h1{
    font-size:clamp(2.25rem,3.4vw,4.5rem);
    line-height:.98;
}

/* Popup notice — image-first, official publication treatment. */
body.government-v7 .gh-notice-popup .modal-dialog{
    width:min(1180px,calc(100vw - 30px));
    max-width:none;
    margin-inline:auto;
}
body.government-v7 .gh-notice-popup .modal-content{
    border-radius:26px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.18) !important;
    box-shadow:0 28px 90px rgba(4,27,66,.28) !important;
}
body.government-v7 .gh-notice-popup .modal-header{
    position:relative;
    padding:1.15rem 1.4rem;
    background:linear-gradient(105deg,#082f66 0%,#0d56a4 56%,#0d7f73 100%);
}
body.government-v7 .gh-notice-popup .modal-header::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:4px;
    background:linear-gradient(90deg,#d71920 0 50%,#003893 50% 100%);
}
body.government-v7 .gh-notice-popup .modal-title{
    max-width:900px;
    font-size:clamp(1.25rem,2vw,2rem);
}
body.government-v7 .gh-popup-body{
    padding:1rem;
    background:#eef4fa;
}
body.government-v7 .gh-popup-body:has(.gh-popup-media){
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);
    gap:1rem;
    align-items:start;
}
body.government-v7 .gh-popup-media{
    margin:0;
    min-height:360px;
    max-height:72vh;
    overflow:auto;
    border-radius:18px;
    background:#fff;
    border:1px solid #d4dfec;
    box-shadow:0 8px 26px rgba(13,46,96,.08);
}
body.government-v7 .gh-popup-media img{
    width:100%;
    height:auto;
    max-height:none;
    object-fit:contain;
    background:#fff;
}
body.government-v7 .gh-popup-content{
    padding:1.2rem;
    border-radius:18px;
    background:#fff;
    border:1px solid #d7e2ef;
    box-shadow:0 8px 26px rgba(13,46,96,.06);
    font-size:1rem;
    line-height:1.75;
}
body.government-v7 .gh-popup-footer{
    border-top:1px solid #dde6f1;
    background:#fff;
}
body.government-v7 .gh-popup-footer .btn{
    border-radius:12px;
    padding:.7rem 1.05rem;
    font-weight:800;
}

/* Prevent floating tools from overlapping content. */
body.government-v7 .government-emergency-dock{
    left:clamp(14px,1.5vw,28px);
}
body.government-v7 .gh-accessibility-trigger,
body.government-v7 [data-gh-accessibility-trigger]{
    right:clamp(14px,1.5vw,28px);
}

/* Full-width detail and content sections. */
body.government-v7 .v5-detail-layout{
    grid-template-columns:minmax(0,1fr) minmax(300px,360px);
    gap:1.4rem;
}
body.government-v7 .v5-document-section,
body.government-v7 .gh-section,
body.government-v7 .gh-inner-hero{
    width:100%;
}

@media (max-width:1399.98px){
    body.government-v7 .v6-home-hero__grid{
        grid-template-columns:minmax(280px,.95fr) minmax(460px,1.8fr) minmax(285px,.9fr);
    }
    body.government-v7 .v6-home-hero__media .professional-slide{
        min-height:470px;
    }
}

@media (max-width:1199.98px){
    body.government-v7 .v6-home-hero__grid{
        grid-template-columns:minmax(0,1fr) minmax(300px,.46fr);
    }
    body.government-v7 .v6-home-hero__media{
        grid-column:1 / -1;
        order:1;
    }
    body.government-v7 .v6-side-panel--updates{
        order:2;
    }
    body.government-v7 .v6-side-panel--leadership{
        order:3;
    }
    body.government-v7 .v6-update-scroller{
        max-height:460px;
    }
}

@media (max-width:991.98px){
    body.government-v7 .v6-home-hero__grid{
        grid-template-columns:1fr;
    }
    body.government-v7 .v6-submenu{
        width:100%;
        max-height:none;
        border-radius:0;
        box-shadow:none;
    }
    body.government-v7 .v6-submenu .humanized-submenu__grid{
        grid-template-columns:1fr;
    }
    body.government-v7 .gh-popup-body:has(.gh-popup-media){
        grid-template-columns:1fr;
    }
    body.government-v7 .gh-popup-media{
        max-height:62vh;
    }
    body.government-v7 .v5-detail-layout{
        grid-template-columns:1fr;
    }
}

@media (max-width:767.98px){
    body.government-v7 .gh-container-wide,
    body.government-v7 .container,
    body.government-v7 .container-fluid{
        padding-inline:14px !important;
    }
    body.government-v7 .humanized-brand__copy span{
        display:none;
    }
    body.government-v7 .humanized-brand__logo{
        width:54px;
        height:54px;
        border-radius:15px;
    }
    body.government-v7 .humanized-brand__logo img{
        width:48px;
        height:48px;
    }
    body.government-v7 .v7-flag-logo{
        width:50px;
        height:50px;
        flex-basis:50px;
        border-radius:15px;
    }
    body.government-v7 .v7-flag-logo img{
        width:34px;
        height:42px;
    }
    body.government-v7 .v6-home-hero__media .professional-slide{
        min-height:420px;
    }
    body.government-v7 .professional-slide__caption h1{
        font-size:clamp(2rem,11vw,3.4rem);
    }
    body.government-v7 .gh-notice-popup .modal-dialog{
        width:calc(100vw - 14px);
        margin:.5rem auto;
    }
    body.government-v7 .gh-popup-body{
        padding:.65rem;
    }
    body.government-v7 .gh-popup-content{
        padding:1rem;
    }
}

@media (max-width:575.98px){
    body.government-v7 .humanized-brand__copy strong{
        font-size:1.03rem;
        line-height:1.15;
    }
    body.government-v7 .humanized-brand__copy small{
        font-size:.62rem;
    }
    body.government-v7 .v7-flag-logo{
        display:none !important;
    }
    body.government-v7 .v6-update-card{
        grid-template-columns:56px minmax(0,1fr);
    }
    body.government-v7 .v6-update-card img,
    body.government-v7 .v6-update-card__placeholder{
        width:56px;
        height:56px;
    }
}
