@font-face {
    font-family: 'Lexend';
    src: url('../fonts/lexend/Lexend-Regular.eot');
    src: url('../fonts/lexend/Lexend-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/lexend/Lexend-Regular.woff2') format('woff2'),
        url('../fonts/lexend/Lexend-Regular.woff') format('woff'),
        url('../fonts/lexend/Lexend-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.lexend {
    font-family: Lexend;
}
.montserrat {
    font-family: Montserrat;
}

/* Navigation Menu */
#header #navigation {
    position: absolute;
    top: 0px;
    right: 0px;
    left: 0px;
    z-index: 1100;
}

#header #navigation.affix {
    position: fixed;
    margin-top: -40px;
}

body.nav-mobile-on.nav-mobile-open #header #navigation.affix,
body.nav-shop-filter-open #header #navigation.affix {
    position: absolute;
    margin: 0px;
}

#header.header-2 #navigation.affix,
#header.header-4 #navigation.affix,
#header.header-5 #navigation.affix,
#header.header-transparent #navigation.affix {
    margin-top: 0px;
}

#header.header-3 #navigation.affix {
    margin-top: -140px;
}

#header .navigation-wrap {
    position: relative;
    padding-bottom: 90px;
}

#navigation .navtop {
    overflow: hidden;
    color: #FFF;
    background-color: #e5e5e5;
}

#navigation .navtop a {
    color: #FFF;
}

#navigation .navtop a:hover {
    opacity: .8;
}

#navigation .navtop .nav-txt {
    float: left;
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    padding: 7.5px 0px;
}

#navigation .navtop .nav-txt.nav-txt-right {
    float: right;
}

#navigation .navtop .nav-txt p {
    position: relative;
    padding-left: 26px;
    margin: 0px;
}

#navigation .navtop .nav-txt p .ion {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 16px;
    font-size: 16px;
    line-height: 24px;
    text-align: center;
}

#navigation .navtop .nav-txt p strong {
    font-weight: 500;
}

#navigation .navtop .nav-menu {
    float: left;
}

#navigation .navtop .nav-menu.nav-menu-right {
    float: right;
}

#navigation .navtop .nav-menu ul {
    float: left;
    padding: 0px;
    margin: 0px;
}

#navigation .navtop .nav-menu ul li {
    list-style-type: none;
    position: relative;
    float: left;
    padding: 7px 14px 7px 12px;
}

#navigation .navtop .nav-menu ul li:first-child {
    padding-left: 0px;
}

#navigation .navtop .nav-menu ul li:last-child {
    padding-right: 0px;
}

#navigation .navtop .nav-menu ul li:after {
    position: absolute;
    top: 50%;
    right: 0px;
    width: 2px;
    height: 2px;
    background-color: #FFF;
    content: '';
}

#navigation .navtop .nav-menu ul li:last-child:after {
    display: none;
}

#navigation .navtop .nav-menu ul li a {
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
}

#navigation .navtop .nav-socials {
    float: right;
    padding: 8px 0px;
}

#navigation .navtop .nav-socials.nav-socials-left {
    float: left;
}

#navigation .navtop .nav-socials a {
    float: left;
    font-size: 18px;
    line-height: 24px;
    margin-left: 15px;
}

#navigation .navtop .nav-socials.nav-socials-left a {
    margin: 0px 15px 0px 0px;
}

#navigation .navbar {
    position: static;
    color: #a9a9a9;
    background-color: #FFF;
    min-height: 0px;
    margin: 0px;
    border: 0px;
    border-radius: 0px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, .05);
}

.ie #navigation .navbar {
    border-bottom: 1px solid #e9e9e9;
}

#header.header-transparent #navigation .navbar {
    background-color: transparent;
    box-shadow: none;
}

.ie #header.header-transparent #navigation .navbar {
    border: 0px;
}

#header.header-transparent #navigation.affix .navbar,
#header.header-transparent #navigation .navbar.bg-white {
    background-color: #FFF;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, .05);
}

.ie #header.header-transparent #navigation.affix .navbar,
.ie #header.header-transparent #navigation .navbar.bg-white {
    border-bottom: 1px solid #e9e9e9;
}

#navigation .navbar .navbar-wrap {
    position: relative;
}

#header.header-3 #navigation .navbar .navbar-wrap {
    border-top: 1px solid #EEE;
}

#header.header-5 #navigation .navbar .navbar-wrap {
    line-height: 0;
    text-align: center;
}

#navigation .navbar .navbar-wrap:before,
#navigation .navbar .navbar-wrap:after {
    display: table;
    content: '';
}

#navigation .navbar .navbar-wrap:after {
    clear: both;
}

#navigation .navbar-logo {
    float: left;
    padding: 7px 0px 10px 15px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

#header.header-3 #navigation .navbar-logo {
    padding: 30px 0px;
}

#navigation.affix .navbar-logo {
    padding: 15px 0px;
}

body.nav-mobile-on.nav-mobile-open #navigation.affix .navbar-logo,
body.nav-shop-filter-open #navigation.affix .navbar-logo {
    padding: 25px 0px;
}

#navigation .navbar-logo img {
    width: 100%;
}

#navigation .navbar-logo .navbar-logo-wrap {
    position: relative;
}

#navigation .navbar-logo .navbar-logo-wrap img {
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

#navigation.affix .navbar-logo .navbar-logo-wrap .logo-primary {
    visibility: hidden;
    opacity: 0;
}

#navigation .navbar-logo .navbar-logo-wrap .logo-secondary {
    visibility: hidden;
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
}

#navigation.affix .navbar-logo .navbar-logo-wrap .logo-secondary {
    visibility: visible;
    opacity: 1;
}

#header.header-3 #navigation .navbar-headline:before,
#header.header-3 #navigation .navbar-headline:after {
    display: table;
    content: '';
}

#header.header-3 #navigation .navbar-headline:after {
    clear: both;
}

#header.header-3 #navigation .navbar-headline .navbar-search {
    float: right;
    padding: 28px 0px;
}

#header.header-3 #navigation .navbar-headline .navbar-search h4 {
    float: left;
    color: #CCC;
    font-size: 18px;
    line-height: 26px;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 9px 0px;
    margin: 0px 25px 0px 0px;
}

#header.header-3 #navigation .navbar-headline .navbar-search .affa-form-search {
    float: left;
    width: 260px;
}

#header.header-3 #navigation .navbar-headline .navbar-search .affa-form-search input[type="text"] {
    height: 44px;
    border-radius: 0px;
}

#navigation .navbar-menu {
    float: right;
}

#header.header-3 #navigation .navbar-menu {
    float: none;
    position: relative;
}

#header.header-3 #navigation .navbar-menu:before,
#header.header-3 #navigation .navbar-menu:after {
    display: table;
    content: '';
}

#header.header-3 #navigation .navbar-menu:after {
    clear: both;
}

#header.header-5 #navigation .navbar-menu {
    display: inline-block;
    float: none;
    line-height: 26px;
}

#navigation .nav {
    float: left;
}

#header.header-5 #navigation .nav {
    float: none;
    text-align: left;
}

#header.header-5 #navigation .nav:before,
#header.header-5 #navigation .nav:after {
    display: table;
    content: '';
}

#header.header-5 #navigation .nav:after {
    clear: both;
}

#navigation .nav>li {
    float: left;
    position: relative;
    padding: 20px 5px;
    -webkit-transition: padding-top .2s ease, padding-bottom .2s ease;
    transition: padding-top .2s ease, padding-bottom .2s ease;
}

#navigation .nav>li:last-child {
    padding-right: 0px;
}

#header.header-2 #navigation .nav>li {
    padding-right: 20px;
    padding-left: 20px;
}

#header.header-3 #navigation .nav>li {
    padding: 16px 30px;
}

#header.header-5 #navigation .nav>li {
    padding-right: 25px;
    padding-left: 25px;
}

#header.header-3 #navigation .nav>li:first-child,
#header.header-5 #navigation .nav>li:first-child {
    padding-left: 0px;
}

#header.header-2 #navigation .nav>li:last-child,
#header.header-3 #navigation .nav>li:last-child,
#header.header-5 #navigation .nav>li:last-child {
    padding-right: 0px;
}

#header.header-5 #navigation .nav>li.menu-logo {
    padding: 25px 60px;
}

#navigation .nav>li.menu-item-has-children.mega-menu-item {
    position: static;
}

#navigation.affix .nav>li {
    padding-top: 24px;
    padding-bottom: 24px;
}

body.nav-shop-filter-open #header #navigation.affix .nav>li {
    padding-top: 34px;
    padding-bottom: 34px;
}

#header.header-5 #navigation.affix .nav>li.menu-logo {
    padding-top: 15px;
    padding-bottom: 15px;
}

body.nav-shop-filter-open #header.header-5 #navigation.affix .nav>li.menu-logo {
    padding-top: 25px;
    padding-bottom: 25px;
}

#navigation .nav>li>a {
    position: relative;
    float: left;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: .5px;
    text-transform: uppercase;
    padding: 0px;
    -webkit-transition: color .2s ease;
    transition: color .2s ease;
}

#navigation .nav>li>a:hover,
#navigation .nav>li.current-menu-item>a {
    color: #aaa !important;
}

#header.header-transparent #navigation .nav>li>a {
    color: #FFF;
}

#header.header-transparent #navigation.affix .nav>li>a {
    color: #a9a9a9;
}

#header.header-transparent #navigation.affix .nav>li>a:hover,
#header.header-transparent #navigation.affix .nav>li.current-menu-item>a {
    color: #e5e5e5;
}

#navigation .nav>li.menu-item-has-children>a {
    padding-right: 18px;
}

#header.header-2 #navigation .nav>li.menu-item-has-children>a,
#header.header-5 #navigation .nav>li.menu-item-has-children>a {
    padding-right: 0px;
}

#header.header-2 #navigation .nav>li.menu-item-has-children>a:after,
#header.header-5 #navigation .nav>li.menu-item-has-children>a:after {
    display: none;
}

#navigation .nav>li.current-menu-item>a:before {
    position: absolute;
    top: -34px;
    left: 50%;
    content: '';
    margin-left: -9px;
    border-top: 10px solid #e5e5e5;
    border-right: 9px solid transparent;
    border-left: 9px solid transparent;
}

#header.header-2 #navigation .nav>li.current-menu-item>a:before {
    right: 0px;
    left: 0px;
    height: 3px;
    background-color: #e5e5e5;
    margin: 0px;
    border: 0px;
}

#header.header-3 #navigation .nav>li.current-menu-item>a:before,
#header.header-5 #navigation .nav>li.current-menu-item>a:before,
#header.header-transparent #navigation .nav>li.current-menu-item>a:before {
    display: none;
}

#navigation .nav>li .sub-menu,
#navigation .nav>li .sub-mega-menu {
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: -5px;
    background-color: #ffffff;
    /*margin-top: 20px;*/
    opacity: 0;
    -webkit-transition: visibility .2s ease, top .2s ease, bottom .2s ease, background .2s ease, margin .2s ease, opacity .2s ease;
    transition: visibility .2s ease, top .2s ease, bottom .2s ease, background .2s ease, margin .2s ease, opacity .2s ease;
}

#navigation .nav li:hover>.sub-menu,
#navigation .nav li:hover>.sub-mega-menu {
    visibility: visible;
    margin-top: 0px;
    opacity: 1;
}

#navigation .nav>li .sub-menu {
    width: 240px;
    padding: 10px 0px;
}

#navigation .nav>li .sub-menu.sub-menu-left {
    right: -5px;
    left: auto;
}

#navigation .nav>li .sub-mega-menu {
    left: 0px;
    right: 0px;
}

#navigation .nav>li .sub-mega-menu.menu-bg-img {
    background-repeat: no-repeat;
    background-position: right bottom;
}

#navigation .nav>li ul {
    padding: 0px;
}

#navigation .nav>li ul a {
    display: block;
    font-size: 13px;
    line-height: 20px;
}

#navigation .nav>li ul a:hover,
#navigation .nav>li ul li.current-menu-item>a {
    color: #FFF;
}

#navigation .nav>li .sub-menu a {
    padding: 10px 20px;
}

#navigation .nav>li .sub-menu li.menu-item-has-children>a {
    padding-right: 30px;
}

#navigation .nav>li ul li {
    list-style-type: none;
}

#navigation .nav>li ul li.menu-item-has-children {
    position: relative;
}

#navigation .nav>li .sub-menu li.menu-item-has-children:after {
    position: absolute;
    top: 13px;
    right: 15px;
    font-family: Ionicons;
    line-height: 1;
    content: '\f3d3';
    -webkit-transition: color .2s ease;
    transition: color .2s ease;
}

#navigation .nav>li .sub-menu li.menu-item-has-children:hover:after,
#navigation .nav>li .sub-menu li.menu-item-has-children.current-menu-item:after {
    color: #FFF;
}

#navigation .nav>li .sub-mega-menu .container {
    margin: 0px -15px;
}

#navigation .nav>li .sub-mega-menu .container>ul {
    float: left;
    width: 100%;
    padding: 30px 0px;
}

#navigation .nav>li .sub-mega-menu .container>ul>.menu-item-has-children {
    float: left;
    width: 25%;
    padding: 10px 40px;
    border-right: 1px solid #303030;
}

#navigation .nav>li .sub-mega-menu .container>ul>.menu-item-has-children:last-child {
    border-right: 0px;
}

#navigation .nav>li .sub-mega-menu .container>ul>.menu-item-has-children>a {
    color: #000000;
    font-size: 14px;
    letter-spacing: .5px;
    margin-bottom: 22px;
}

#navigation .nav>li .sub-mega-menu .container>ul>.menu-item-has-children>ul>li {
    padding: 7px 0px;
}

#navigation .nav>li .sub-mega-menu .container>ul>.menu-item-has-children>ul>li:first-child {
    padding-top: 0px;
}

#navigation .nav>li .sub-mega-menu .container>ul>.menu-item-has-children>ul>li:last-child {
    padding-bottom: 0px;
}

#navigation .nav>li .sub-menu .sub-menu {
    top: -10px;
    left: 100%;
    width: 220px;
    margin-left: 2px;
}

#navigation .nav>li .sub-menu-left .sub-menu,
#navigation .nav>li .sub-menu .sub-menu.sub-menu-left {
    right: 100%;
    left: auto;
    margin-right: 2px;
    margin-left: 0px;
}

#navigation .navbar-secondary {
    float: right;
    padding: 30px 0px;
    margin-left: 30px;
    -webkit-transition: padding .2s ease;
    transition: padding .2s ease;
}

#header.header-4 #navigation .navbar-secondary {
    padding: 25px 0px;
    margin: 0px;
}

#navigation.affix .navbar-secondary {
    padding: 20px 0px;
}

body.nav-shop-filter-open #navigation.affix .navbar-secondary {
    padding: 30px 0px;
}

#header.header-4 #navigation.affix .navbar-secondary {
    padding: 15px 0px;
}

body.nav-mobile-on.nav-mobile-open #header.header-4 #navigation.affix .navbar-secondary,
body.nav-shop-filter-open #header.header-4 #navigation.affix .navbar-secondary {
    padding: 25px 0px;
}

#navigation .navbar-secondary .navbar-btn {
    float: left;
    padding-left: 17px;
    margin: 0px;
    border-left: 1px solid #EEE;
}

#header.header-4 #navigation .navbar-secondary .navbar-btn {
    padding: 0px;
    border: 0px;
}

#navigation .navbar-secondary .navbar-btn a {
    float: left;
    color: #303030;
    font-size: 22px;
    line-height: 30px;
    margin: 0px 8px;
    -webkit-transition: color .2s ease;
    transition: color .2s ease;
}

#navigation .navbar-secondary .navbar-btn a:hover {
    color: #e5e5e5;
}

#header.header-4 #navigation .navbar-secondary .navbar-btn a {
    font-size: 26px;
    line-height: 40px;
    margin: 0px 10px;
}

#header.header-transparent #navigation .navbar-secondary .navbar-btn a {
    color: #FFF;
}

#header.header-transparent #navigation.affix .navbar-secondary .navbar-btn a {
    color: #303030;
}

#header.header-transparent #navigation.affix .navbar-secondary .navbar-btn a:hover {
    color: #e5e5e5;
}

#navigation .navbar-secondary .navbar-btn a:last-child {
    padding-right: 0px;
    margin-right: 0px;
}

#navigation .navbar-secondary .navbar-btn a .ion {
    margin: 0px;
}

#navigation .navbar-secondary .navbar-btn .btn-cart {
    padding: 30px 8px;
    margin: -30px 0px;
}

#header.header-4 #navigation .navbar-secondary .navbar-btn .btn-cart {
    padding: 25px 10px;
    margin: -25px 0px;
}

#navigation.affix .navbar-secondary .navbar-btn .btn-cart {
    padding-top: 20px;
    padding-bottom: 20px;
    margin-top: -20px;
    margin-bottom: -20px;
}

body.nav-shop-filter-open #navigation.affix .navbar-secondary .navbar-btn .btn-cart {
    padding-top: 30px;
    padding-bottom: 30px;
    margin-top: -30px;
    margin-bottom: -30px;
}

#header.header-4 #navigation.affix .navbar-secondary .navbar-btn .btn-cart {
    padding-top: 15px;
    padding-bottom: 15px;
    margin-top: -15px;
    margin-bottom: -15px;
}

body.nav-mobile-on.nav-mobile-open #header.header-4 #navigation.affix .navbar-secondary .navbar-btn .btn-cart,
body.nav-shop-filter-open #header.header-4 #navigation.affix .navbar-secondary .navbar-btn .btn-cart {
    padding-top: 25px;
    padding-bottom: 25px;
    margin-top: -25px;
    margin-bottom: -25px;
}

#header.header-4 #navigation .navbar-secondary .navbar-btn .navbar-btn-toggle {
    float: left;
    color: #303030 !important;
    font-size: 36px;
    line-height: 40px;
    background-color: transparent;
    padding: 0px;
    margin-left: 10px;
    border: 0px;
}

#header.header-4 #navigation .navbar-secondary .navbar-btn .navbar-btn-toggle:hover {
    color: #e5e5e5 !important;
}

#header.header-4.header-transparent #navigation .navbar-secondary .navbar-btn .navbar-btn-toggle {
    color: #FFF !important;
}

#header.header-4.header-transparent #navigation.affix .navbar-secondary .navbar-btn .navbar-btn-toggle {
    color: #303030 !important;
}

#header.header-4.header-transparent #navigation.affix .navbar-secondary .navbar-btn .navbar-btn-toggle:hover {
    color: #e5e5e5 !important;
}

#header.header-4 #navigation .navbar-secondary .navbar-btn .navbar-btn-toggle .ion {
    margin: 0px;
}

#header.header-4 #navigation .navbar-secondary .navbar-btn .sep-btn {
    float: left;
    width: 2px;
    height: 24px;
    background-color: #EEE;
    margin: 8px 30px;
}

#navigation .navbar-secondary form {
    visibility: hidden;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    background-color: #FFF;
    padding: 20px 35px 20px 0px;
    opacity: 0;
    -webkit-transition: visibility .2s ease, padding .2s ease, opacity .2s ease-in-out;
    transition: visibility .2s ease, padding .2s ease, opacity .2s ease-in-out;
}

#header.header-transparent #navigation .navbar-secondary form {
    -webkit-transition: padding .2s ease;
    transition: padding .2s ease;
}

#navigation.affix .navbar-secondary form {
    padding-top: 10px;
    padding-bottom: 10px;
}

body.nav-mobile-on.nav-mobile-open #navigation.affix .navbar-secondary form,
body.nav-shop-filter-open #navigation.affix .navbar-secondary form {
    padding-top: 20px;
    padding-bottom: 20px;
}

#navigation .navbar-secondary form.in {
    visibility: visible;
    opacity: 1;
}

#navigation .navbar-secondary form input {
    width: 100%;
    font-size: 30px;
    padding: 0px;
    border: 0px;
    border-radius: 0px;
    box-shadow: none;
}

#navigation .navbar-secondary form button {
    position: absolute;
    top: 50%;
    right: 0px;
    color: #a9a9a9 !important;
    font-size: 30px;
    line-height: 1;
    background-color: transparent;
    padding: 0px;
    margin-top: -15px;
    border: 0px;
}

#navigation .navbar-secondary form button:hover {
    color: #303030 !important;
}

#navigation .navbar-secondary form button .ion {
    margin: 0px;
}

#navigation .navbar-secondary .navbar-cart {
    visibility: hidden;
    position: absolute;
    top: 100%;
    right: 0px;
    width: 360px;
    background-color: #FFF;
    padding: 0px 20px;
    margin-top: 20px;
    opacity: 0;
    box-shadow: 0px 3px 5px rgba(0, 0, 0, .1);
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

.ie #navigation .navbar-secondary .navbar-cart {
    border: 1px solid #e9e9e9;
    border-top: 0px;
}

#navigation .navbar-secondary .navbar-cart.in {
    visibility: visible;
    margin-top: 0px;
    opacity: 1;
}

#navigation .navbar-secondary .navbar-cart .cart-heading {
    overflow: hidden;
    color: #303030;
    font-size: 15px;
    line-height: 22px;
    padding: 10px 0px;
    margin-bottom: 20px;
    border-bottom: 1px solid #e9e9e9;
}

#navigation .navbar-secondary .navbar-cart .cart-heading .cart-count {
    float: left;
    margin: 0px;
}

#navigation .navbar-secondary .navbar-cart .cart-heading .cart-price {
    float: right;
    color: #e5e5e5;
    font-weight: 400;
    margin: 0px;
}

#navigation .navbar-secondary .navbar-cart .cart-list {
    padding: 0px;
    margin: 0px;
}

#navigation .navbar-secondary .navbar-cart .cart-list li {
    list-style-type: none;
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
}

#navigation .navbar-secondary .navbar-cart .cart-list li .cart-btn-close {
    position: absolute;
    top: 0px;
    right: 0px;
    color: #a9a9a9;
    font-size: 24px;
    line-height: 1;
}

#navigation .navbar-secondary .navbar-cart .cart-list li .cart-btn-close:hover {
    color: #e5e5e5;
}

#navigation .navbar-secondary .navbar-cart .cart-list li img {
    float: left;
    width: 25%;
}

#navigation .navbar-secondary .navbar-cart .cart-list li .cart-content {
    float: right;
    width: 70%;
    font-size: 15px;
    line-height: 22px;
    padding-top: 5px;
}

#navigation .navbar-secondary .navbar-cart .cart-list li .cart-content p {
    color: #a9a9a9;
    margin-bottom: 5px;
}

#navigation .navbar-secondary .navbar-cart .cart-list li .cart-content p span {
    color: #303030;
    font-weight: 400;
    margin-left: 5px;
}

#navigation .navbar-secondary .navbar-cart .cart-list li .cart-content a {
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 500;
}

#navigation .navbar-secondary .navbar-cart .cart-footer {
    text-align: center;
    padding: 15px 0px;
    border-top: 1px solid #e9e9e9;
}

#navigation .navbar-secondary .navbar-cart .cart-footer .btn-custom {
    font-size: 12px;
    padding: 11px 22px;
    margin: 0px 5px;
}

/* Navigation Mobile Top */
#header #nav-mobile-top {
    display: none;
    position: relative;
    color: #a9a9a9;
    background-color: #FFF;
    z-index: 100;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, .05);
}

.ie #header #nav-mobile-top {
    border-bottom: 1px solid #e9e9e9;
}

#nav-mobile-top .navmenu {
    position: relative;
    height: 60px;
    padding: 13px 0px;
}

#nav-mobile-top .navmenu>button {
    color: #a9a9a9 !important;
    font-size: 30px;
    line-height: 34px;
    background-color: transparent;
    padding: 0px;
    border: 0px;
}

#nav-mobile-top .navmenu>button:hover,
#nav-mobile-top .navmenu>button.active {
    color: #e5e5e5 !important;
}

#nav-mobile-top .navmenu>button .ion {
    margin: 0px;
}

#nav-mobile-top .navbar-btn-toggle {
    float: left;
}

#nav-mobile-top .navbar-logo {
    position: absolute;
    top: 13px;
    right: 60px;
    bottom: 13px;
    left: 60px;
    text-align: center;
}

#nav-mobile-top .navbar-logo img {
    height: 34px;
}

#nav-mobile-top .navbar-secondary {
    float: right;
}

#nav-mobile-top .navbar-secondary .navbar-btn {
    float: left;
    margin: 0px;
}

#nav-mobile-top .navbar-secondary .navbar-btn a {
    float: left;
    color: #303030;
    font-size: 24px;
    line-height: 34px;
    margin: 0px 8px;
}

#nav-mobile-top .navbar-secondary .navbar-btn a:hover {
    color: #e5e5e5;
}

#nav-mobile-top .navbar-secondary .navbar-btn a:last-child {
    margin-right: 0px;
}

#nav-mobile-top .navbar-secondary form {
    visibility: hidden;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    background-color: #FFF;
    padding: 5px 30px 5px 0px;
    opacity: 0;
    -webkit-transition: visibility .2s ease, padding .2s ease, opacity .2s ease-in-out;
    transition: visibility .2s ease, padding .2s ease, opacity .2s ease-in-out;
}

#nav-mobile-top .navbar-secondary form.in {
    visibility: visible;
    opacity: 1;
}

#nav-mobile-top .navbar-secondary form input {
    width: 100%;
    font-size: 22px;
    padding: 0px;
    border: 0px;
    border-radius: 0px;
    box-shadow: none;
}

#nav-mobile-top .navbar-secondary form button {
    position: absolute;
    float: none;
    top: 50%;
    right: 0px;
    color: #a9a9a9 !important;
    font-size: 24px;
    line-height: 1;
    background-color: transparent;
    padding: 0px;
    margin-top: -12px;
    border: 0px;
}

#nav-mobile-top .navbar-secondary form button:hover {
    color: #303030 !important;
}

#nav-mobile-top .navbar-secondary form button .ion {
    margin: 0px;
}

#nav-mobile-top .navbar-secondary .navbar-cart {
    visibility: hidden;
    position: absolute;
    top: 100%;
    right: 0px;
    width: 300px;
    background-color: #FFF;
    padding: 0px 20px;
    margin-top: 20px;
    opacity: 0;
    box-shadow: 0px 3px 5px rgba(0, 0, 0, .1);
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

.ie #nav-mobile-top .navbar-secondary .navbar-cart {
    border: 1px solid #e9e9e9;
    border-top: 0px;
}

#nav-mobile-top .navbar-secondary .navbar-cart.in {
    visibility: visible;
    margin-top: 0px;
    opacity: 1;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-heading {
    overflow: hidden;
    color: #303030;
    font-size: 15px;
    line-height: 22px;
    padding: 10px 0px;
    margin-bottom: 20px;
    border-bottom: 1px solid #e9e9e9;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-heading .cart-count {
    float: left;
    margin: 0px;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-heading .cart-price {
    float: right;
    color: #e5e5e5;
    font-weight: 400;
    margin: 0px;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list {
    padding: 0px;
    margin: 0px;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li {
    list-style-type: none;
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li .cart-btn-close {
    position: absolute;
    top: 0px;
    right: 0px;
    color: #a9a9a9;
    font-size: 24px;
    line-height: 1;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li .cart-btn-close:hover {
    color: #e5e5e5;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li img {
    float: left;
    width: 27%;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li .cart-content {
    float: right;
    width: 68%;
    font-size: 15px;
    line-height: 22px;
    padding-top: 5px;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li .cart-content p {
    color: #a9a9a9;
    margin-bottom: 5px;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li .cart-content p span {
    color: #303030;
    font-weight: 400;
    margin-left: 5px;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-list li .cart-content a {
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 500;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-footer {
    text-align: center;
    padding: 15px 0px;
    border-top: 1px solid #e9e9e9;
}

#nav-mobile-top .navbar-secondary .navbar-cart .cart-footer .btn-custom {
    font-size: 12px;
    padding: 11px 20px;
    margin: 0px 2px;
}

/* Navigation Mobile */
#nav-mobile {
    display: none;
    position: fixed;
    top: 0px;
    bottom: 0px;
    left: -40%;
    width: 40%;
    background-color: #303030;
    z-index: 8005;
}

body.nav-mobile-on #nav-mobile {
    display: block;
    left: -30%;
    width: 30%;
}

body.nav-mobile-on.nav-mobile-open #nav-mobile {
    left: 0px;
}

#nav-mobile .scrollbar-inner {
    height: 100%;
}

#nav-mobile .scrollbar-inner>.scroll-element.scroll-y {
    right: 0px;
}

#nav-mobile a {
    color: #a9a9a9;
}

#nav-mobile a:hover {
    color: #FFF;
}

#nav-mobile button.navbar-btn-close {
    display: block;
    width: 100%;
    line-height: 60px;
    text-align: center;
    background-color: #f54747;
    padding: 0px;
    border: 0px;
    border-radius: 0px;
}

#nav-mobile button.navbar-btn-close:hover {
    background-color: #fd5b5b;
}

#nav-mobile button.navbar-btn-close .ion {
    margin: 0px 10px 0px 0px;
}

#nav-mobile .navbar-menu {
    margin-bottom: 50px;
    border-top: 1px solid #252525;
}

#nav-mobile .navbar-menu:first-child {
    border-top: 0px;
}

#nav-mobile .navbar-menu:last-child {
    margin: 0px;
}

#nav-mobile .navbar-menu ul {
    padding: 0px;
    margin: 0px;
}

#nav-mobile .navbar-menu .nav li {
    position: relative;
    list-style-type: none;
    border-bottom: 1px solid #252525;
}

#nav-mobile .navbar-menu .nav li a {
    display: block;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 600;
    background-color: transparent;
    padding: 14px 25px;
}

#nav-mobile .navbar-menu .nav li.current-menu-item>a {
    color: #FFF;
    background-color: #252525;
}

#nav-mobile .navbar-menu .nav>li>a {
    text-transform: uppercase;
    letter-spacing: .5px;
}

#nav-mobile .navbar-menu .nav li.menu-item-has-children>a {
    padding-right: 60px;
}

#nav-mobile .navbar-menu .nav li.menu-item-has-children>span {
    position: absolute;
    top: 10px;
    right: 20px;
    width: 30px;
    height: 30px;
    color: #a9a9a9;
    font-size: 24px;
    line-height: 28px;
    text-align: center;
    font-weight: 300;
    content: '+';
    background-color: #444;
    cursor: pointer;
    border-radius: 3px;
    -webkit-transition: color .2s ease, background .2s ease;
    transition: color .2s ease, background .2s ease;
}

#nav-mobile .navbar-menu .nav li.menu-item-has-children>span:hover {
    color: #FFF;
}

#nav-mobile .navbar-menu .nav li.menu-item-has-children>span.in {
    color: #FFF;
    background-color: #e5e5e5;
}

#nav-mobile .navbar-menu .nav ul {
    display: none;
    border-top: 1px solid #252525;
}

#nav-mobile .navbar-menu .nav ul.in {
    display: block;
}

#nav-mobile .navbar-menu .nav ul li:last-child {
    border-bottom: 0px;
}

#nav-mobile .navbar-menu .nav ul li a {
    padding-left: 45px;
}

#nav-mobile .navbar-menu .nav ul li a:before {
    position: absolute;
    top: 24px;
    left: 25px;
    width: 10px;
    height: 2px;
    content: '';
    background-color: #a9a9a9;
    -webkit-transition: background .2s ease;
    transition: background .2s ease;
}

#nav-mobile .navbar-menu .nav ul li a:hover:before,
#nav-mobile .navbar-menu .nav ul li.current-menu-item>a:before {
    background-color: #FFF;
}

#nav-mobile .navbar-menu .nav ul ul li a {
    padding-left: 55px;
}

#nav-mobile .navbar-menu .nav ul ul li a:before {
    width: 20px;
}

#nav-mobile .navbar-menu .nav ul ul ul li a {
    padding-left: 65px;
}

#nav-mobile .navbar-menu .nav ul ul ul li a:before {
    width: 30px;
}

#nav-mobile .navbar-menu .nav ul ul ul ul li a {
    padding-left: 75px;
}

#nav-mobile .navbar-menu .nav ul ul ul ul li a:before {
    width: 40px;
}
.menu-item-submenu {
    font-size: 10px;
    line-height: 15px;
    display: block;
}
.sub-mega-menu .col {
    border-top: 1px solid #000;
    padding-top: 10px;
}
.texto-gradiente {
    color: #DE4134; 
    background-image: linear-gradient(90deg, #DE4134 35%, #27C8EA 65%); 
    background-clip: text; 
    -webkit-background-clip: text; 
    -webkit-text-fill-color: transparent;
}
.texto-gradiente:hover {
    background-image: linear-gradient(90deg, #e5e5e5 35%, #e5e5e5 65%) !important;
}
.bg-gradiente {
    background: rgb(222,65,52);
    background: linear-gradient(90deg, rgba(222,65,52,1) 0%, rgba(39,200,234,1) 100%);
}
.back-menu-newsletter {
    background-image: url('/global-ia-juridica/assets/images/back-newsletter.jpg');
    background-size: cover;
    position: absolute;
    width: 47%;
    height: 90%;
    z-index: 1;
    top: 10px;
    left: 10px;
}
.fondo-rojo {
    background-color: #96262C !important;
}
.fondo-azul {
    background-color: #0B3D5C !important;
}
.rounded-start {
    border-top-left-radius: 50rem !important;
    border-bottom-left-radius: 50rem !important;
}
.rounded-end {
    border-top-right-radius: 50rem !important;
    border-bottom-right-radius: 50rem !important;
}
.px-5vw {
    padding-left: 5vw !important;
    padding-right: 5vw !important;
}
.ps-5vw {
    padding-left: 5vw !important;
}
.pe-5vw {
    padding-right: 5vw !important;
}
.container {
    width: 100% !important;
    max-width: 2000px !important;
}
.text-white::placeholder {
    color: #fff !important;
}
.card2 {
    border-radius: 15px;
    box-shadow: #aaa 0.1em 0.3em 0.3em;
}
.card-head2 {
    background-color: #141E28;
    color: #fff;
    padding: 7px 20px;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}
.card-body2 {
    background-color: #fff;
    padding: 20px;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
}
.btn-limpiar {
    padding-top: 4px;
    padding-bottom: 4px;
    width: 36%;
    border-radius: 21px;
    font-size: 16px;
}
.btn-buscar {
    padding-top: 4px;
    padding-bottom: 4px;
    width: 60%;
    border-radius: 21px;
    font-size: 16px;
}
.accordion {
    box-shadow: 0px 5px 6px 0px rgba(0, 0, 0, 0.25);
}
.accordion .accordion-item {
    border: none;
}
.buscador {
    border: 4px solid #C0DBFB;
    border-radius: 22px;
    position: relative;
}
.buscador input {
    width: 100%;
    font-size: 20px;
    padding: 6px 10px 6px 45px;
    border-radius: 18px;
    border: 1px solid #2280EF;
}
.buscador input:focus, .buscador input:focus-visible{
    outline: none;
}
.buscador::before {
    font-family: feather !important;
    content: "\e9bf";
    position: absolute;
    font-size: 20px;
    top: 5px;
    left: 15px;
}
.card-body2 .custom-control-label::before {
    border: 5px solid #C0DBFB;
    background-color: #fff !important;
}
.card-body2 .custom-control-label::after {
    background-size: 80% 80% !important;
}
.check-redondos .custom-control-input:checked~.custom-control-label::before,
.check-redondos .custom-checkbox-md .custom-control-label::before {
    border-radius: 50%;
}
.check-redondos .custom-checkbox-md .custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")
}
.etiqueta-resultado {
    color: #96262C;
    font-weight: bold;
    background-color: #D9D9D9;
    padding: 3px 10px;
    border-radius: 12px;
}
.btn-juristia {
    background: rgb(222, 65, 52);
    background: linear-gradient(90deg, rgba(222, 65, 52, 1) 0%, rgba(39, 200, 234, 1) 100%);
    color: #fff !important;
    border: none;
    border-radius: 28px;
    padding: 6px 10px 6px 15px;
    display: inline-block;
    white-space: nowrap;
    text-align: center;
}
.sombra {
    box-shadow: 0px 5px 10px 3px rgba(20, 30, 40, 0.16);
}
@media (max-width: 575px) {
    .movil-oculto {
        display: none !important;
    }
}
.montserrat .form-control {
    border: 1px solid #BDBDBD !important;
}
.nav.panel-tabs a.active {
    color: var(--primary-bg-color) !important;
    font-weight: bold;
}
.tabs-menu1 ul li .active {
    border-block-end-width: 3px !important;
}

@media (max-width: 767px) {
    .noticia-left {
        display: inline-block;
        width: 35%;
        border-radius: 15px;
        vertical-align: top;
        margin-top: 10px;
        height: 150px !important;
    }

    .noticia-right {
        display: inline-block;
        width: 63%;
        padding-left: 15px;
    }
}

.btn-border-gradiente {
    display: inline-block;
    padding: 13px 5px;
    background-color: #ffffff;
    border-radius: 15px;
    font-size: 10px;
    font-weight: bold;
    text-decoration: none;
    border: 1px solid transparent;
    width: 100%;
    text-align: center;
    background-clip: padding-box, border-box;
    background-origin: border-box;
    background-image:
        linear-gradient(#ffffff, #ffffff),
        linear-gradient(to right, #DE4134, #27C8EA);
}

/* Estilos móviles */
/* Cabecera móvil */
.navbar-mobile-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 15px;
    background-color: white;
    /*border-bottom: 1px solid #ddd;*/
    position: relative;
    z-index: 1001;
    width: 100%;
}

.navbar-toggle {
    font-size: 26px;
    cursor: pointer;
}

.navbar-mobile-logo img {
    height: 40px;
}

.navbar-mobile-area a {
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: bold;
    font-size: 14px;
    color: #d20000;
    /* Asumiendo que "texto-rojo" es rojo */
    text-decoration: none;
}

.navbar-mobile-area img {
    height: 25px;
}

@media (max-width: 991px) {

    #navigation .nav>li ul a:hover,
    #navigation .nav>li ul li.current-menu-item>a {
        color: #555 !important;
        cursor: pointer;
    }

    #navigation .nav>li .sub-menu,
    #navigation .nav>li .sub-mega-menu {
        opacity: 1 !important;
        visibility: visible !important;
        margin-bottom: 15px;
    }

    #navigation .nav>li .sub-mega-menu .mt-5 {
        margin-top: 0 !important;
    }

    #navigation .nav>li ul a {
        display: block;
        font-size: 13px;
        line-height: 20px;
    }

    .navbar-wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        position: relative;
    }

    .logo-exc {
        display: none !important;
    }

    .navbar-toggle {
        font-size: 26px;
        cursor: pointer;
        padding: 10px;
        z-index: 1001;
        color: #0B3D5C;
        font-weight: bold;
    }

    .navbar-logo {
        text-align: center;
        flex: 1;
    }

    .navbar-menu {
        display: none;
        position: fixed;
        top: 90px;
        left: 0;
        width: 100%;
        height: 100%;
        background: white;
        z-index: 9999999999;
        border-top: 1px solid #ddd;
        padding: 10px 0;
    }

    .navbar-menu.open {
        display: block;
        /* Mostrar el menú principal cuando la clase 'open' está presente */
    }

    .navbar-menu ul.nav {
        flex-direction: column;
        padding-left: 0;
        width: 100%;
        text-align: center;
    }

    .navbar-menu li>a {
        float: none !important;
        padding: 20px !important;
        display: block;
    }

    .navbar-menu .menu-item {
        border-bottom: 1px solid #ddd;
        padding: 0 !important;
    }

    /* Oculta los submenús por defecto en móvil */
    .sub-mega-menu {
        display: none;
        /* Eliminar position: absolute y top: 100% para que fluya en el documento */
        position: static !important;
        /* Cambiar a static para que el submenú ocupe su espacio normal */
        padding-left: 15px;
        /* Opcional: para indentar los submenús */
        background-color: #f8f8f8;
        /* Opcional: un color de fondo para submenús */
    }

    .sub-mega-menu li>a {
        padding: 8px !important;
    }

    /* Muestra el submenú cuando su padre tiene la clase 'submenu-open' */
    .mmovil.submenu-open>.sub-mega-menu {
        display: block;
    }

    .simenu>a::after {
        /* Añade la flecha a los <a> dentro de <li> con clase simenu */
        content: "\e92d";
        float: right;
        font-size: 20px;
        margin-left: 5px;
        transition: transform 0.3s ease;
        font-family: feather !important;
    }

    .simenu.submenu-open>a::after {
        /* Añade la rotación a los <a> dentro de <li> con clase simenu */
        transform: rotate(180deg);
    }

}
/* PROGRESS IA */
.ai-status{
    background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
    border:1px solid #f5f5f5;
    border-radius: 20px;
    padding: 28px 28px 32px;
    position:relative;
    box-shadow: 0 20px 60px rgba(0,0,0,.1), inset 0 0 0 1px rgba(255,255,255,0.04);
    overflow:hidden;
}

/* Halo animado tipo "núcleo IA" */
.ai-status::before{
    content:"";
    position:absolute; inset:-2px;
    background: conic-gradient(from 0deg, var(--accent), var(--ok), var(--accent), var(--ok));
    filter: blur(26px) saturate(140%);
    opacity:.18;
    animation: spin 16s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg);} }

/* cuadrícula del chip */
.chip::before{ content:""; position:absolute; inset:8px; 
    background:
    linear-gradient(90deg, rgba(255,255,255,.11) 1px, transparent 1px) 0 0/6px 100%,
    linear-gradient(0deg,  rgba(255,255,255,.11) 1px, transparent 1px) 0 0/100% 6px;
    border-radius:8px; filter:contrast(120%);
}
.title{ font-weight:700; letter-spacing:.2px; }
.sub{ opacity:.7; font-size:.92rem; }

/* Mensajes secuenciales sin JS */
.ai-messages{ position:relative; min-height:2.2em; margin:6px 0 14px; }
.ai-msg{ position:absolute; inset:0; display:flex; align-items:center; gap:.35em; 
        opacity:0; transform: translateY(8px);
        animation: cycle var(--cycle) infinite;
        font-size: clamp(1rem, 2.2vw, 1.1rem);
}
.ai-msg b{ font-weight:700; }
.ai-m1{ animation-delay: 0s; }
.ai-m2{ animation-delay: calc(var(--cycle)/3); }
.ai-m3{ animation-delay: calc(var(--cycle)*2/3); }

@keyframes cycle{
    0%   { opacity:0; transform: translateY(8px); }
    5%   { opacity:1; transform: translateY(0); }
    30%  { opacity:1; }
    33%  { opacity:0; transform: translateY(-6px); }
    100% { opacity:0; transform: translateY(-6px); }
}

/* Dots de "escribiendo" */
.dots{ display:inline-flex; gap:6px; margin-left:.1em; }
.dots span{ width:6px; height:6px; border-radius:50%; background: currentColor; opacity:.25; 
            animation: blink 1.2s infinite ease-in-out; }
.dots span:nth-child(2){ animation-delay:.2s; }
.dots span:nth-child(3){ animation-delay:.4s; }
@keyframes blink { 0%,80%,100%{ opacity:.2; transform:translateY(0); } 40%{ opacity:1; transform:translateY(-2px);} }

/* Barra de progreso neural */
.ai-progress{ height:10px; background: rgba(255,255,255,.08); border-radius:999px; overflow:hidden; border:1px solid rgba(255,255,255,.08); }
.ai-progress span{ display:block; height:100%; width:0%;
    background: linear-gradient(90deg, var(--accent), var(--ok));
    filter: saturate(140%);
    animation: load var(--cycle) linear infinite;
}
@keyframes load{
    0%{ width:0%; }
    30%{ width:60%; }
    33%{ width:100%; }
    34%{ width:0%; }
    64%{ width:60%; }
    67%{ width:100%; }
    68%{ width:0%; }
    98%{ width:60%; }
    100%{ width:100%; }
}

/* Responsivo */
@media (max-width:480px){
    .ai-status{ padding:22px; border-radius:16px; }
}