@font-face {
    font-family: 'Gentona';
    src: url('https://ufinnovate.technologypublisher.com/files/sites/gentona-book.otf') format('opentype');
    font-style: normal;
}

body{
    margin: 0px;
    font-family: 'Gentona', Arial, sans-serif;
}

header{
    background-color: rgb(0, 84, 150);
    padding: 10px 10px;
}

.text-center{
    text-align: center;
}

.container{
    max-width: 1560px;
    margin: 0 auto;
    padding: 10px 10px;
}

p{
    margin: 0px;
}

.container-footer{
    max-width: 1316px;
}

.color-white{
    color: white;
}

.main-header{
    display: flex;
    justify-content: space-between;
    column-gap: 20px;
    align-items: center;
}

a{
    text-decoration: none;
}

img{
    border: none;
    border-radius: 0;
    box-shadow: none;
    height: auto;
}

.logo-header img{
    max-width: 25.76rem;
    vertical-align: middle;
}

.nav-header{
    display: flex;
    flex-direction: column;
    gap: 19px;
}

.header-top-row{
    display: flex;
    justify-content: flex-end;
}

.header-bottom-row{
    display: flex;
    align-items: center;
    gap: 32px;
}

.button-text-header{
    display: flex;
    align-items: center;
    gap: 2px;
}

.button-text-header a{
    font-size: 1.125rem;
    font-weight: 600;
    letter-spacing: 0.18px;
    line-height: 27px;
    color: white;
}

.button-text-header i{
    color: #ff6b35;
    font-size: 25px;
}

.search-icon{
    color: white;
    font-size: 20px;
    cursor: pointer;
    font-weight: 500;
}

.nav-dropdown{
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 13px 20px;
}

.nav-dropdown .nav-link{
    color: white;
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
}

.nav-dropdown i{
    color: white;
    font-size: 11.5px;
}

/* Secondary Navigation - CSS giống y như trong hình */
.secondary-nav-menu{
    display: flex;
    list-style: none;
    justify-content: flex-end;
    align-items: center;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 2;
    margin-left: auto;
}

.secondary-nav-menu li{
    display: block;
    line-height: normal;
    list-style: none;
    margin: 0;
    padding: 0;
}

.secondary-nav-menu a{
    display: block;
    line-height: normal;
    list-style: none;
    color: white;
    text-decoration: none;
    font-size: 18px;
    text-transform: uppercase;
    line-height: 1.3333em;
    padding-left: 0rem;
    padding-right: 0rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    white-space: nowrap;
}

.secondary-nav-menu > li:first-child > a{
    margin-inline-end: 48px;
}

.secondary-nav-menu > li:last-child > a{
    margin-inline-start: 48px;
}

.secondary-nav-menu > li:not(:first-child):not(:last-child) > a{
    margin-inline-start: 48px;
    margin-inline-end: 48px;
}

/* Dropdown Menu */
.secondary-nav-menu .nav-item {
    position: relative;
}

.secondary-nav-menu .nav-item:hover .dropdown-menu {
    display: block;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background-color: white;
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    z-index: 1000;
    display: none;
    list-style: none;
    margin: 0;
    padding: 0;
    min-width: 200px;
}

.dropdown-menu li {
    border-bottom: 1px solid #f0f0f0;
}

.dropdown-menu li:last-child {
    border-bottom: none;
}

.sub-arrow {
    line-height: 1;
    margin-block-end: -10px;
    margin-block-start: -10px;
    padding: 10px;
    padding-inline-end: 0;
}

.dropdown-menu a {
    color: #333;
    text-decoration: none;
    padding: 12px 15px;
    display: block;
    font-size: 16px;
    transition: background-color 0.2s ease;
}

.dropdown-menu a:hover {
    background-color: #f8f9fa;
    color: #0021a5;
}

.elementor-item:hover{
    text-decoration: underline; 
}

footer{
    background-color: #005496;
    padding: 86px 10px 48px 10px;
    margin-top: 40px;
}

.logo-footer img{
    width: 100%;
    max-width: 20.75rem;
    vertical-align: middle;
}

.main-footer-top{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.main-mxh-footer{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

.main-mxh-footer a{
    width: 52px;
    height: 52px;
    background-color: rgb(51, 118, 171);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-decoration: none;
    font-size: 20px;
    transition: background-color 0.2s ease;
}

.main-mxh-footer a:hover{
    background-color: #fff;
}

.main-mxh-footer a:hover i{
    color: rgb(51, 118, 171);
}

.footer-content{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    column-gap: 96px;
    color: rgb(255, 255, 255);
    box-sizing: border-box;
}

.footer-column{
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
}

.footer-heading{
    font-size: 24px;
    font-weight: 600;
    color: white;
    margin-bottom: 10px;
    position: relative;
    border-bottom: 4px solid rgb(242, 112, 33);
    padding-bottom: 16px;
}

.footer-text p{
    color: white;
    font-size: 20px;
    line-height: 27px;
    margin-bottom: 10px;
}

.footer-text strong{
    font-weight: 700;
}


.footer-text hr{
    border: none;
    border-top: 1px solid #fff;
    margin: 0px;
}

.footer-nav{
    display: block;
}

.footer-menu{
    list-style: none;
    margin: 0;
    padding: 0;
    display: block;
    line-height: normal;
}

.footer-menu li{
    display: block;
    line-height: normal;
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-menu a{
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    line-height: 24px;
    display: block;
    transition: color 0.2s ease;
    margin-bottom: 10px;
}

.footer-menu a:hover{
    color: white;
    text-decoration: underline;
}

/* Footer Bottom */
.footer-bottom-section{
    padding-top: 20px;
}

.footer-bottom-wrapper{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer-bottom-nav{
    display: block;
}

.footer-bottom-list{
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    align-items: center;
    gap: 0;
}

.footer-item{
    display: flex;
    align-items: center;
    line-height: normal;
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-link{
    color: white;
    text-decoration: none;
    font-size: 20px;
    line-height: 1.4;
    display: inline-block;
    transition: color 0.2s ease;
}

.footer-link:hover{
    text-decoration: underline; 
}

.footer-item:not(:first-child)::before{
    content: '|';
    color: #ff6b35;
    margin: 0 20px;
    font-size: 35px;
    display: inline-block;
    vertical-align: middle;
}

.footer-column1{
    width: 33.2%;
}

.footer-column2{
    width: 21.8%;
}

.footer-column3{
    width: 23.8%;
}

.footer-column4{
    width: 21.8%;
}

.main-title{
    padding: 50px 0px 0px 0px;
    background-color: rgb(244, 246, 246);
}

.main-title h1{
    font-size: 48px;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0px;
}

.title-page h2{
    font-size: 48px;
    font-weight: 600;
    line-height: 57.6px;
    color: #000;
    text-transform: uppercase;
}

@media (max-width: 1350px) {
    .secondary-nav-menu > li:not(:first-child):not(:last-child) > a {
        margin-inline-start: 35px;
        margin-inline-end: 35px;
    }
    .secondary-nav-menu > li:first-child > a {
        margin-inline-end: 35px;
    }

    .secondary-nav-menu > li:last-child > a {
        margin-inline-start: 35px;
    }
}


/* Desktop */
@media (max-width: 1199px) {
    .container {
        max-width: 1140px;
    }
    .secondary-nav-menu > li:not(:first-child):not(:last-child) > a{
        margin-inline-start: 20px;
        margin-inline-end: 20px;
    }

    .secondary-nav-menu > li:first-child > a {
        margin-inline-end: 20px;
    }

    .secondary-nav-menu > li:last-child > a {
        margin-inline-start: 20px;
    }
    
    .footer-content {
        column-gap: 40px;
    }
}

/* Tablet */
@media (max-width: 991px) {
    .secondary-nav-container{
        padding: 0px 0px !important;
    }
    .container {
        max-width: 960px;
    }
    
    .main-header {
        flex-direction: column;
        gap: 20px;
    }
    
    .nav-header {
        width: 100%;
    }
    
    .secondary-nav-menu {
        justify-content: center;
        margin-left: 0;
    }
    
    .footer-content {
        flex-direction: column;
        column-gap: 0;
        row-gap: 20px;
    }
    
    .footer-column1,
    .footer-column2,
    .footer-column3,
    .footer-column4 {
        width: 100%;
    }
    
    .main-footer-top {
        flex-direction: column;
        gap: 20px;
    }
    
    .footer-bottom-wrapper {
        flex-direction: column;
        gap: 15px;
    }
}

/* Mobile Large */
@media (max-width: 767px) {
 
    footer{
        padding: 40px 10px 40px 10px;
    }
    .container {
        max-width: 720px;
        padding: 10px 15px;
    }
    
    .logo-header img {
        max-width: 200px;
    }
    
    .header-bottom-row {
        flex-direction: column;
        gap: 15px;
    }
    
    .nav-dropdown {
        padding: 10px 15px;
    }
    
    .secondary-nav-menu {
        flex-direction: column;
        gap: 10px;
    }
    
    .secondary-nav-menu > li:first-child > a,
    .secondary-nav-menu > li:last-child > a,
    .secondary-nav-menu > li:not(:first-child):not(:last-child) > a {
        margin: 0;
    }
    
    .main-title h1 {
        font-size: 36px;
    }
    
    .title-page h2 {
        font-size: 32px;
        line-height: 1.2;
    }
    
    .footer-heading {
        font-size: 20px;
    }
    
    .footer-text p,
    .footer-menu a {
        font-size: 16px;
    }
    
    .footer-bottom-list {
        flex-direction: column;
        gap: 10px;
    }
    
    .footer-item:not(:first-child)::before {
        display: none;
    }
    .main-title{
        padding: 20px 0px;
    }
}

/* Mobile Medium */
@media (max-width: 575px) {
    .container {
        max-width: 540px;
        padding: 10px 10px;
    }
    
    .logo-header img {
        max-width: 180px;
    }
    
    .button-text-header a {
        font-size: 16px;
    }
    
    .nav-dropdown .nav-link {
        font-size: 16px;
    }
    
    .main-title h1 {
        font-size: 28px;
    }
    
    .title-page h2 {
        font-size: 24px;
    }
    
    .footer-content {
        row-gap: 15px;
    }
    
    .footer-link {
        font-size: 16px;
    }
}

/* Mobile Small */
@media (max-width: 480px) {
    .container {
        padding: 10px 8px;
    }
    
    .logo-header img {
        max-width: 150px;
    }
    
    .main-title h1 {
        font-size: 24px;
    }
    
    .title-page h2 {
        font-size: 20px;
    }
    
    .footer-link {
        font-size: 14px;
    }
}

.mobile-top-actions{display:none;}
.desktop-only{display:block;}
.mobile-menu-toggle{display:none; background:none; border:0; cursor:pointer; padding:8px; margin-left:auto}
.mobile-menu-toggle span{display:block; width:26px; height:3px; background:#fff; border-radius:2px; margin:5px 0}

.desktop-only-inline{display:inline-flex}
@media (max-width: 997px){
  .desktop-only-inline{display:none}
}

/* Mobile header layout */
@media (max-width: 997px){
  .header-top-row{justify-content:space-between; align-items:center}
  .mobile-top-actions{display:flex; align-items:center}
  .desktop-only{display:none}
  .mobile-menu-toggle{display:inline-block}

  /* Nav becomes hidden panel */
  .secondary-nav{position:relative}
  .secondary-nav-menu{position:absolute; top:100%; right:0; left:auto; background:#fff; color:#0a4f86; flex-direction:column; align-items:stretch; border-radius:4px; box-shadow:0 6px 18px rgba(0,0,0,.15); padding:10px; display:none; z-index:999}
  .secondary-nav-menu li{width:100%}
  .secondary-nav-menu a{color:#0a4f86; padding:12px 14px; display:block}
  .secondary-nav-menu .dropdown-menu{position:static; box-shadow:none; border:0; margin:0 0 6px 0; display:none}
  .secondary-nav-menu .nav-item.open > .dropdown-menu{display:block}

  /* active underline tab like screenshot */
  .secondary-nav-menu .nav-item.open > a{position:relative}
  .secondary-nav-menu .nav-item.open > a::after{content:""; position:absolute; left:14px; right:14px; height:4px; background:#f27021; bottom:-6px}
}

/* state mặc định mobile: ẩn menu */
@media (max-width: 997px){
  .secondary-nav-menu{display:none}
  .secondary-nav-menu.is-open{display:flex}
}

/* Hamburger to X */
.mobile-menu-toggle.active span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.mobile-menu-toggle.active span:nth-child(2){opacity:0}
.mobile-menu-toggle.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.mobile-menu-toggle span{transition:all .2s ease}

/* Mobile logo hidden on desktop */
.logo-header-mobile{display:none}
.logo-header-mobile img{max-width:15rem; width:100%; height:auto}

@media (max-width: 997px){
  /* Ẩn logo desktop, hiện logo mobile */
  .logo-header{display:none}
  .logo-header-mobile{display:block; margin:0}
  /* sắp xếp lại hàng dưới: logo trái, hamburger phải */
  .header-bottom-row{display:flex; align-items:center; justify-content:space-between}
  .header-bottom-row .mobile-menu-toggle{margin-left:auto}
}

/* Force same row under 767px */
@media (max-width: 767px){
  .header-bottom-row{display:flex; flex-direction:row; align-items:center; justify-content:space-between; gap:0}
  .logo-header-mobile{margin:0}
  .header-bottom-row .mobile-menu-toggle{margin-left:auto}
}

.mobile-offcanvas{position:fixed; inset:0 auto 0 0; width:310px; max-width:85vw; background:#fff; transform:translateX(-100%); transition:transform .25s ease; z-index:1000; box-shadow:2px 0 20px rgba(0,0,0,.2)}
.offcanvas-open .mobile-offcanvas{transform:translateX(0)}
.offcanvas-backdrop{position:fixed; inset:0; background:rgba(0,0,0,.35); opacity:0; visibility:hidden; transition:opacity .25s ease; z-index:999}
.offcanvas-open .offcanvas-backdrop{opacity:1; visibility:visible}
.mobile-offcanvas-header{display:flex; align-items:center; justify-content:space-between; padding:12px 14px; border-bottom:1px solid #f27021}
.mobile-offcanvas-header .menu-title{font-weight:700; color:#0a4f86}
.mobile-offcanvas-header .mobile-close{background:none; border:0; font-size:20px; color:#0a4f86; cursor:pointer}
.mobile-menu-list{list-style:none; margin:0; padding:0}
.mobile-item{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px; border-bottom:1px solid #f27021}
.mobile-item > a{color:#0a4f86; font-weight:700}
.submenu-toggle{background:none; border:0; color:#0a4f86; font-size:18px; cursor:pointer}
.mobile-submenu{display:none; list-style:none; margin:0; padding:0 14px 10px 34px}
.mobile-submenu li{padding:8px 0; border-bottom:1px solid #eee}
.mobile-submenu li:last-child{border-bottom:0}

@media (min-width: 998px){
  .mobile-offcanvas{display:none}
}

.mobile-subbar{display:none; align-items:center; justify-content:space-between; padding:12px 14px; border-bottom:1px solid #f27021; background:#fff; position:sticky; top:0; z-index:1001}
.mobile-subbar .sub-title{font-weight:700; color:#0a4f86}
.mobile-subbar .sub-back, .mobile-subbar .sub-close{background:none; border:0; color:#0a4f86; font-size:18px; cursor:pointer}
.mobile-sublist{display:none; list-style:none; margin:0; padding:0}
.mobile-sublist li{padding:14px; border-bottom:1px solid #f27021}
.mobile-sublist li a{color:#0a4f86; font-weight:700}
.offcanvas-open .show-drill .mobile-menu-list{display:none}
.offcanvas-open .show-drill .mobile-subbar{display:flex}
.offcanvas-open .show-drill .mobile-sublist{display:block}
.offcanvas-open.show-drill .mobile-menu-list{display:none}
.offcanvas-open.show-drill .mobile-subbar{display:flex}
.offcanvas-open.show-drill .mobile-sublist{display:block}

/* Desktop hover dropdown for header-bottom-row */
@media (min-width: 998px){
  .nav-dropdown{ position: relative; }
  .nav-dropdown .dropdown-menu{
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;
    background: #fff;
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 1000;
  }
  .nav-dropdown .dropdown-menu li{ border-bottom: 1px solid #f0f0f0; }
  .nav-dropdown .dropdown-menu li:last-child{ border-bottom: none; }
  .nav-dropdown .dropdown-menu a{
    display: block;
    padding: 12px 15px;
    color: #333;
    text-decoration: none;
    font-size: 16px;
  }
  .nav-dropdown .dropdown-menu a:hover{ background: #f8f9fa; color: #0021a5; }
  .nav-dropdown:hover .dropdown-menu{ display: block; }
}

