/*=========================================
UTILITY & GLOBAL
=========================================*/
body, html {
    overflow-x: hidden;
}

.container {
    width: 100%;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
}

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

/*=========================================
HEADER BASE
=========================================*/
.site-header {
    width: 100%;
    background: #fff;
    position: relative;
    z-index: 999;
}

.site-header.sticky {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    background: #fff;
    box-shadow: 0 3px 12px rgba(0, 0, 0, .15);
    z-index: 99999;
}

/*=========================================
TOP BAR
=========================================*/
.top-bar {
    background: #111;
    color: #fff;
    font-size: 14px;
}

.top-bar-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 40px;
}

.top-date {
    font-weight: 600;
}

.top-links {
    display: flex;
    gap: 20px;
}

.top-links a {
    color: #fff;
    text-decoration: none;
    transition: .3s;
}

.top-links a:hover {
    color: #ffcc00;
}

/*=========================================
HEADER MAIN
=========================================*/
.header-main {
    background: #fcf7f7;
    padding: 15px 0;
    border-bottom: 1px solid #e5e5e5;
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.site-logo img,
.custom-logo {
    max-height: 80px;
    width: auto;
}

.site-logo h1,
.site-logo a{

    display:block;

    white-space:nowrap;

    font-size:42px;

    line-height:1;

    text-align:center;

    margin:0;

}

.header-ad {
    width: 728px;
    max-width: 100%;
}

.header-ad img {
    width: 100%;
    height: auto;
}

/*=========================================
NAVIGATION & MAIN MENU
=========================================*/
.main-nav{

    background:linear-gradient(to bottom,#d40000,#a30000);

    border-top:1px solid #e53935;

    border-bottom:2px solid #7d0000;

    box-shadow:0 3px 8px rgba(0,0,0,.18);

}

.nav-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.main-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-menu li {
    position: relative;
}

.main-menu li a {
    display: block;
    padding: 10px 16px;
    color: #fff;
    font-size: 29px;
    font-weight: 650;
    transition: .3s;
    text-decoration: none;
}

.main-menu li:hover > a {
    background: #930000;
}

/* Dropdown Menu */
.main-menu ul {
    position: absolute;
    top: 100%;
    right: 0;
    min-width: 240px;
    background: #fff;
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
    box-shadow: 0 8px 25px rgba(0, 0, 0, .15);
    z-index: 999;
}

.main-menu li:hover > ul {
    display: block;
}

.main-menu ul li {
    width: 100%;
}

.main-menu ul li a {
    color: #222;
    padding: 14px 18px;
    border-bottom: 1px solid #eee;
    font-size: 19px;
}

.main-menu ul li:last-child a {
    border-bottom: none;
}

.main-menu ul li a:hover {
    background: #b80000;
    color: #fff;
}

/* Header Icons / Search Toggle */
.header-icons {
    display: flex;
    align-items: center;
    gap: 15px;
}

.search-btn,
.search-toggle {
    background: none;
    border: none;
    color: #fff;
    font-size: 22px;
    cursor: pointer;
    padding: 6px 15px;
}

.search-btn:hover,
.search-toggle:hover {
    color: #ffd700;
    opacity: .8;
}


/*=========================================
SEARCH POPUP
=========================================*/
.search-popup {
    position: fixed;
    inset: 0;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 99999;
}

.search-popup.active {
    display: flex;
}

.search-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .85);
}

.search-box {
    position: relative;
    background: #fff;
    width: 650px;
    max-width: 90%;
    padding: 35px;
    z-index: 2;
    border-radius: 8px;
}

.search-box h2 {
    margin-top: 0;
    margin-bottom: 20px;
}

.search-close {
    position: absolute;
    top: 10px;
    left: 15px;
    border: none;
    background: none;
    font-size: 34px;
    cursor: pointer;
}

.search-box input[type="search"] {
    width: 100%;
    height: 50px;
    padding: 0 15px;
    font-size: 18px;
    border: 1px solid #ccc;
}

.search-box input[type="submit"] {
    margin-top: 15px;
    background: #c40000;
    color: #fff;
    border: none;
    padding: 12px 25px;
    cursor: pointer;
}

/*=========================================
MOBILE MENU
=========================================*/
.menu-toggle,
.mobile-toggle {
    display: none;
    background: none;
    border: none;
    color: #fff;
    font-size: 30px;
    cursor: pointer;
}

.mobile-menu {
    position: fixed;
    top: 0;
    right: -320px;
    width: 300px;
    height: 100%;
    background: #fff;
    z-index: 99999;
    transition: .35s;
    overflow: auto;
}

.mobile-menu.active {
    right: 0;
}

.mobile-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 99998;
}

.mobile-overlay.active {
    display: block;
}

.mobile-close {
    border: none;
    background: none;
    font-size: 34px;
    float: left;
    margin: 15px;
    cursor: pointer;
}

.mobile-nav {
    list-style: none;
    margin: 70px 0 0;
    padding: 0;
}

.mobile-nav li {
    border-bottom: 1px solid #eee;
}

.mobile-nav li a {
    display: block;
    padding: 14px 20px;
    text-decoration: none;
    color: #111;
}


/*=========================================
MOBILE HEADER
=========================================*/
@media (max-width:768px){

.header-main{
    padding:10px 0;
}

.site-logo{
    width:100%;
    margin:0;
    text-align:center;
}

.site-logo img{
    max-width:260px;
    margin:auto;
}

.nav-wrap{

    height:60px;

    display:flex;
    justify-content:space-between;
    align-items:center;
}

.mobile-toggle{

    display:block;

    font-size:40px;

    color:#fff;
}

.search-btn{

    font-size:34px;

    color:#fff;
}

.main-menu{
    display:none;
}

}

/*=========================================
SMALL MOBILE
=========================================*/

@media (max-width:576px){

.header-main{
    background:#fff;
    padding:10px 0;
    border-bottom:1px solid #eee;
}

.site-logo{
    margin:0;
    padding:0;
}

.site-logo img{
    max-height:90px;
    margin:auto;
}

.mobile-toggle{
    font-size:34px;
}

.search-btn{
    font-size:28px;
}

.breaking-label{
    font-size:26px !important;
}

.breaking-ticker{
    font-size:15px;
}

}
/*=========================================
MOBILE LOGO CENTER
=========================================*/

@media (max-width:768px){

.header-inner{
    display:flex;
    flex-direction:column;
    align-items:center;
}

.site-logo{
    width:100%;
    text-align:center;
    margin:0 auto;
}

.site-logo a{
    display:block;
    width:100%;
    text-align:center;
}

.site-logo h1{
    margin:0;
    text-align:center;
    white-space:nowrap;
    font-size:48px;
    line-height:1.2;
}

}