
/*** Spinner Start ***/
/*** Spinner ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}
/*** Spinner End ***/

/*** Modal layout shift fix — keep page centered when modals open ***/
html {
    scrollbar-gutter: stable;
}

@supports not (scrollbar-gutter: stable) {
    html {
        overflow-y: scroll;
    }
}

body.modal-open {
    padding-right: 0 !important;
    margin-right: 0 !important;
}

body.modal-open .fixed-top,
body.modal-open .sticky-top,
body.modal-open .position-fixed,
body.modal-open .back-to-top,
body.modal-open .whatsapp-float {
    padding-right: 0 !important;
    margin-right: 0 !important;
}

.back-to-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    transition: 0.5s;
    z-index: 99;
}

.whatsapp-float {
    position: fixed;
    left: 30px;
    bottom: 30px;
    display: flex;
    width: 62px;
    height: 62px;
    align-items: center;
    justify-content: center;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    font-size: 2rem;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.45);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
    z-index: 99;
}

.whatsapp-float.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: scale(0.92);
}

.whatsapp-float:hover {
    color: #fff;
    background: #1ebe57;
    transform: scale(1.08);
    box-shadow: 0 6px 18px rgba(37, 211, 102, 0.55);
}

@media (max-width: 575px) {
    .whatsapp-float {
        left: 20px;
        bottom: 20px;
        width: 58px;
        height: 58px;
        font-size: 1.85rem;
    }

    .back-to-top {
        right: 20px;
        bottom: 20px;
    }
}

/*** Button Start ***/
.btn {
    font-weight: 600;
    transition: .5s;
}

.btn-square {
    width: 32px;
    height: 32px;
}

.btn-sm-square {
    width: 34px;
    height: 34px;
}

.btn-md-square {
    width: 44px;
    height: 44px;
}

.btn-lg-square {
    width: 56px;
    height: 56px;
}

.btn-square,
.btn-sm-square,
.btn-md-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
    border-radius: 50%;
}

.btn.btn-primary {
    background: #18bcec;
    color: var(--bs-white) !important;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    transition: 0.5s;
}

.btn.btn-primary:hover {
    background: var(--bs-secondary) !important;
    color: var(--bs-white);
}

.btn.btn-secondary {
    background: var(--bs-secondary) !important;
    color: var(--bs-white);
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    border: 1px solid var(--bs-secondary);
    transition: 0.5s;
}

.btn.btn-secondary:hover {
    background: var(--bs-primary) !important;
    color: var(--bs-secondary) !important;
}

/*** Topbar Start ***/
.topbar {
    padding: 2px 10px 2px 20px;
    background: var(--bs-primary) !important;
}

.topbar a,
.topbar a i {
    transition: 0.5s;
}

.topbar a:hover,
.topbar a i:hover {
    color: var(--bs-secondary) !important;
}


@media (max-width: 768px) {
    .topbar {
        display: none;    
    }
}
/*** Topbar End ***/


/*** Navbar ***/
.nav-bar .categories-bars .categories-bars-item {
    padding: 5px 15px;
    border-bottom: 1px solid rgba(256, 256, 256, 0.1);
    display: flex;
    justify-content: space-between;
    transition: 0.5s;
}

.nav-bar .categories-bars .categories-bars-item a,
.nav-bar .categories-bars .categories-bars-item span {
    color: var(--bs-dark);
    transition: 0.5s;
}

.nav-bar .categories-bars .categories-bars-item:hover {
    background: var(--bs-primary);
}

.nav-bar .categories-bars .categories-bars-item:hover a,
.nav-bar .categories-bars .categories-bars-item:hover span {
    color: var(--bs-white);
}

.nav-bar .navbar.navbar-light {
    padding: 0 !important;
}

.nav-bar .navbar .navbar-nav .nav-link {
    padding: 18px 15px;
    font-weight: 500;
    font-family: 'Roboto', sans-serif;
    font-size: 17px;
    transition: .5s;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active,
.fixed-top.bg-white .navbar .navbar-nav .nav-link:hover,
.fixed-top.bg-white .navbar .navbar-nav .nav-link.active {
    color: var(--bs-white);
}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    vertical-align: middle;
}

@media (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        visibility: hidden;
        top: 100%;
        transform: rotateX(-75deg);
        transform-origin: 0% 0%;
        border: 0;
        border-radius: 10px;
        transition: .5s;
        opacity: 0;
    }
}

@media (max-width: 992px) {
    .nav-bar .navbar .navbar-nav .nav-link {
        padding: 8px 0px;
    }
}

.dropdown .dropdown-menu a:hover {
    background: var(--bs-primary);
    color: var(--bs-white);
}

.navbar .nav-item:hover .dropdown-menu {
    transform: rotateX(0deg);
    visibility: visible;
    background: var(--bs-light) !important;
    transition: .5s;
    opacity: 1;
}

.navbar .navbar-toggler {
    padding: 5px 15px;
}

#allCat {
    position: absolute; 
    left: 0; 
    right: 0; 
    top: 51px; 
    z-index: 999; 
    background: var(--bs-light);
}

.nav-bar .navbar-toggler {
    border-radius: 5px !important; 
    box-shadow: none !important;
}

/*** Navbar End ***/

/*** Carousel Header Start ***/
.header-carousel.owl-carousel .owl-nav .owl-prev,
.header-carousel.owl-carousel .owl-nav .owl-next {
    position: absolute;
    width: 50px;
    height: 50px;
    top: 87%;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-primary);
    color: var(--bs-white);
}

.header-carousel.owl-carousel .owl-nav .owl-prev {
    right: 130px;
    transition: 0.5s;
}

.header-carousel.owl-carousel .owl-nav .owl-next {
    right: 60px;
    transition: 0.5s;
}

.header-carousel.owl-carousel .owl-nav .owl-prev:hover,
.header-carousel.owl-carousel .owl-nav .owl-next:hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.carousel .carousel-header-banner {
    position: relative;
}

.carousel .carousel-banner-offer {
    position: absolute;
    top: 20px; 
    left: 20px;
    display: flex;
    align-items: center;
    z-index: 2;
}

.carousel .carousel-banner {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0; 
    left: 0;
    padding: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: end;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1;
}
/*** Carousel Header End ***/


/*** Page Header start ***/
.page-header {
    position: relative;
    padding: 100px 0;
    background: linear-gradient(135deg, #0a6ebd 0%, #18bcec 45%, #4f46e5 100%);
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0 8px 32px rgba(13, 139, 185, 0.35);
}
/*** Page Header end ***/


/*** Products Start ***/
.product .product-item {
    width: 100%;
    height: 100%;
    position: relative;
}

.product .product-item .product-item-inner {
    height: 100%;
}

.product .product-item .product-item-add {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: 0.5s;
    z-index: 1;
}

.product .product-item:hover .product-item-add {
    background: var(--bs-white);
    margin-bottom: -124px;
    opacity: 1;
}
.product .product-item:hover .product-item-inner {
    border-bottom: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.product .product-item .product-item-inner .product-item-inner-item {
    position: relative;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    overflow: hidden;
}

.product .product-item .product-item-inner .product-item-inner-item .product-new,
.product .product-item .product-item-inner .product-item-inner-item .product-sale {
    position: absolute;
    width: 60px; 
    height: 60px;
    border-radius: 60px; 
    top: 20px; 
    right: 20px;
    display: flex;
    align-items: center;
    justify-content: center; 
}

.product .product-item .product-item-inner .product-item-inner-item .product-new {
    background: var(--bs-primary);
    color: var(--bs-white);
}

.product .product-item .product-item-inner .product-item-inner-item .product-sale {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.product .product-item .product-item-inner img {
    transition: 0.5s;
}

.product .product-item:hover .product-item-inner img {
    transform: scale(1.1);
}

.product .product-item .product-item-inner .product-item-inner-item .product-details {
    position: absolute;
    width: 100%; 
    height: 100%; 
    top: 0; 
    left: 0;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    background: rgba(255, 255, 255, 0.2);
    transition: 0.5s;
}

.product .product-item .product-item-inner .product-item-inner-item .product-details a i {
    width: 50px; 
    height: 50px;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-primary);
    color: var(--bs-white);
    transition: 0.5s;
}

.product .product-item:hover .product-item-inner .product-item-inner-item .product-details a i:hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.product .product-item:hover .product-item-inner .product-details {
    opacity: 1;
}

.product .tab-class .nav .nav-item a.active {
    background: var(--bs-primary) !important;
}

.product .tab-class .nav .nav-item a.active span {
    color: var(--bs-white) !important;
}
/*** Product End ***/


/*** ProductList Categories Start ***/
.productList .productList-carousel {
    height: 215px !important;
}

.productList .productList-carousel .productImg-carousel.productList-item .productImg-item {
    position: relative;
    width: calc(100% - 1px);
    transition: 0.5s;
}

.productList .productList-carousel .productImg-carousel.productList-item .productImg-item {
    margin-bottom: 75px;
}

.productList .productList-carousel .productImg-carousel.productList-item .productImg-item:hover {
    border-bottom: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.productList .productList-carousel .owl-nav .owl-prev,
.productList .productList-carousel .owl-nav .owl-next {
    position: absolute;
    top: -40px;
    padding: 5px 40px;
    border-radius: 30px;
    background: var(--bs-primary);
    color: var(--bs-white);
    transition: 0.5s;
}

.productList .productList-carousel .owl-nav .owl-prev:hover,
.productList .productList-carousel .owl-nav .owl-next:hover {
    background: var(--bs-secondary) !important;
    color: var(--bs-white) !important;
}

.productList .productList-carousel .owl-nav .owl-prev {
    left: 0;
}

.productList .productList-carousel .owl-nav .owl-next {
    right: 0;
}

.productList .productList-carousel .productImg-carousel .owl-nav .owl-prev,
.productList .productList-carousel .productImg-carousel .owl-nav .owl-next {
    position: absolute;
    top: 0px;
    padding: 5px 10px;
    border-radius: 30px;
    background: var(--bs-primary);
    color: var(--bs-white);
    transition: 0.5s;
    opacity: 0;
}

.productList .productList-carousel .productImg-carousel .owl-nav .owl-prev:hover,
.productList .productList-carousel .productImg-carousel .owl-nav .owl-next:hover {
    background: var(--bs-secondary) !important;
    color: var(--bs-white) !important;
}

.productList .productList-carousel .productImg-carousel .owl-nav .owl-prev {
    left: 0;
}

.productList .productList-carousel .productImg-carousel .owl-nav .owl-next {
    right: 0;
}

.productList .productList-carousel .productImg-carousel.productList-item:hover .owl-nav .owl-prev,
.productList .productList-carousel .productImg-carousel.productList-item:hover .owl-nav .owl-next {
    opacity: 1;
}
/*** ProductList Categories End ***/



/*** bestseller Products Start ***/
.products .products-mini .products-mini-item {
    position: relative;
    border-radius: 10px;
    transition: 0.5s;
}

.products .products-mini .products-mini-item:hover {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.products .products-mini .products-mini-item .products-mini-img {
 position: relative;
 overflow: hidden;
}

.products .products-mini .products-mini-item .products-mini-img img {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    transition: 0.5s;
}

.products .products-mini .products-mini-item:hover .products-mini-img img {
    border-bottom-left-radius: 0 !important;
    transform: scale(1.3);
}

.products .products-mini .products-mini-item .products-mini-img .products-mini-icon {
    position: absolute;
    width: 50px; 
    height: 50px; 
    top: 50%; 
    left: 50%;
    transform: translate(-50%, -50%); 
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: 0.5s;
}

.products .products-mini .products-mini-item:hover .products-mini-img .products-mini-icon {
    opacity: 1;
}

.products .products-mini .products-mini-item:hover .products-mini-img .products-mini-icon:hover {
    background: var(--bs-secondary) !important;
}

.products .products-mini .products-mini-item .products-mini-add {
    position: absolute;
    bottom: 0;
    left: -1px;
    right: -1px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--bs-white);
    transition: 0.5s;
    z-index: 9;
    opacity: 0;
}

.products .products-mini .products-mini-item:hover .products-mini-add {
    opacity: 1;
    margin-bottom: -75px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
/*** bestseller Products End ***/

/*** Pagination Start ***/
.pagination {
    display: inline-block;
}
  
.pagination a {
    color: var(--bs-dark);
    padding: 10px 16px;
    text-decoration: none;
    transition: 0.5s;
    border: 1px solid var(--bs-secondary);
    margin: 0 4px;
}
  
.pagination a.active {
    background-color: var(--bs-primary);
    color: var(--bs-light);
    border: 1px solid var(--bs-secondary);
}
  
.pagination a:hover:not(.active) {background-color: var(--bs-primary)}

.nav.nav-tabs .nav-link.active {
    border-bottom: 2px solid var(--bs-secondary) !important;
}

.single-product .nav-tabs {
    border-bottom: 2px solid rgba(24, 188, 236, 0.25);
    gap: 0.35rem;
}

.single-product .nav-tabs .nav-link {
    background: rgba(24, 188, 236, 0.12);
    color: #0d6e8f;
    font-weight: 600;
    border: 1px solid rgba(24, 188, 236, 0.25) !important;
    border-radius: 10px 10px 0 0;
    margin-bottom: -1px;
    transition: background 0.25s ease, color 0.25s ease, transform 0.2s ease;
}

.single-product .nav-tabs .nav-link:hover {
    background: rgba(24, 188, 236, 0.22);
    color: #065a75;
}

.single-product .nav-tabs .nav-link.active {
    background: linear-gradient(180deg, #18bcec 0%, #0d8bb9 100%) !important;
    color: #fff !important;
    border-color: #18bcec !important;
    border-bottom-color: #0d8bb9 !important;
    box-shadow: 0 -2px 12px rgba(24, 188, 236, 0.35);
}
/*** Pagination End ***/

/*** Shop Page Start ***/
.shop .product-categories .categories-item {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
}

.shop .product-categories .categories-item a {
    transition: 0.5s;
}

.shop .product-categories .categories-item a:hover {
    color: var(--bs-primary) !important;
}

.shop .product-color .product-color-item {
    display: flex;
    padding: 10px 0;
}

.shop .product-color .product-color-item a {
    transition: 0.5s;
}

.shop .product-color .product-color-item a:hover {
    color: var(--bs-secondary);
}

.shop .price {
    padding: 10px 0;
}

.shop .additional-product .additional-product-item {
    padding: 10px 0;
}

.shop .featured-product .featured-product-item {
    display: flex;
    align-items: center;
    justify-content: start;
}

.shop .product-tags .product-tags-items a {
    display: inline-block !important;
    background: var(--bs-white);
    color: var(--bs-dark);
    transition: 0.5;
}

.shop .product-tags .product-tags-items a:hover {
    background: var(--bs-primary) !important;
    color: var(--bs-white) !important;
}

/*** Shop Page End ***/


/*** Single Products Start ***/
.single-product .owl-nav .owl-prev,
.single-product .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin-top: -13%;
    font-size: 22px;
    color: var(--bs-primary);
}

.single-product .owl-nav .owl-prev {
    left: 0;
}

.single-product .owl-nav .owl-next {
    right: 0 !important;
}


.single-product .single-carousel .owl-dots {
    width: 100%;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
    transition: 0.5s;
}

.single-product .single-carousel .owl-dots .owl-dot img {
    width: 60px;
    height: 60px;
    border-radius: 30px;
    margin-right: 15px;
    border: 2px solid var(--bs-primary);
    transition: 0.5s;
}

.single-product .single-carousel .owl-dots .owl-dot.active img {
    width: 80px;
    height: 80px;
    border-radius: 40px;
    border: 4px solid var(--bs-secondary);
}














.related-product .related-carousel .related-item {
    width: 100%;
    height: 100%;
    position: relative;
    margin-bottom: 125px;
    transition: 0.5s;
}

.related-product .related-carousel .related-item .related-item-add {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: 0.5s;
    z-index: 99;
}

.related-product .related-carousel .related-item:hover .related-item-add {
    background: var(--bs-white);
    margin-bottom: -125px;
    opacity: 1;
}

.related-product .related-carousel .related-item:hover .related-item-inner {
    border-bottom: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.related-product .related-carousel .related-item .related-item-inner .related-item-inner-item {
    position: relative;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    overflow: hidden;
}

.related-product .related-carousel .related-item .related-item-inner .related-item-inner-item .related-new,
.related-product .related-carousel .related-item .related-item-inner .related-item-inner-item .related-sale {
    position: absolute;
    width: 60px; 
    height: 60px;
    border-radius: 60px; 
    top: 20px; 
    right: 20px;
    display: flex;
    align-items: center;
    justify-content: center; 
    z-index: 5;
}

.related-product .related-carousel .related-item .related-item-inner .related-item-inner-item .related-new {
    background: var(--bs-primary);
    color: var(--bs-white);
}

.related-product .related-carousel .related-item .related-item-inner .related-item-inner-item .related-sale {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.related-product .related-carousel .related-item .related-item-inner img {
    transition: 0.5s;
}

.related-product .related-carousel .related-item:hover .related-item-inner img {
    transform: scale(1.1);
}

.related-product .related-carousel .related-item .related-item-inner .related-item-inner-item .related-details {
    position: absolute;
    width: 100%; 
    height: 100%; 
    top: 0; 
    left: 0;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    background: rgba(255, 255, 255, 0.2);
    transition: 0.5s;
}

.related-product .related-carousel .related-item .related-item-inner .related-item-inner-item .related-details a i {
    width: 50px; 
    height: 50px;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-primary);
    color: var(--bs-white);
    transition: 0.5s;
}

.related-product .related-carousel .related-item:hover .related-item-inner .related-item-inner-item .related-details a i:hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.related-product .related-carousel .related-item:hover .related-item-inner .related-details {
    opacity: 1;
}


.related-product .owl-nav .owl-prev,
.related-product .owl-nav .owl-next {
    position: absolute;
    top: -40px;
    padding: 5px 40px;
    border-radius: 30px;
    background: var(--bs-primary);
    color: var(--bs-white);
    transition: 0.5s;
}

.related-product .owl-nav .owl-prev {
    left: 0;
}

.related-product .owl-nav .owl-next {
    right: 0;
}

.related-product .owl-nav .owl-prev:hover,
.related-product .owl-nav .owl-next:hover {
    background: var(--bs-secondary) !important;
}
/*** Single Products End ***/

/*** Footer Start ***/
.footer {
    --footer-bg: #1F2937;
    --footer-heading: #29B6F6;
    --footer-text: #E5E7EB;
    --footer-btn: #38BDF8;
    background: var(--footer-bg) !important;
}
.footer .footer-item a {
    line-height: 30px;
    color: var(--bs-body);
    transition: 0.5s;
}

.footer .footer-item p {
    line-height: 30px;
}

.footer .footer-item a:hover {
    letter-spacing: 2px;
    color: var(--bs-secondary);
}

.best-selling-products {
    max-width: 1100px;
    margin: 0 auto;
}

.best-selling-heading {
    font-size: 2.85rem;
    letter-spacing: 0.02em;
    color: var(--footer-heading);
}

.best-selling-subtitle {
    color: var(--footer-text);
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0.02em;
}

@media (min-width: 768px) {
    .best-selling-heading {
        font-size: 2.35rem;
    }

    .best-selling-subtitle {
        font-size: 1.1rem;
    }
}

.best-selling-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    text-decoration: none;
    padding: 1rem 0.5rem;
    border-radius: 12px;
    transition: background 0.25s ease, transform 0.25s ease;
}

.best-selling-card:hover {
    background: rgba(41, 182, 246, 0.1);
    transform: translateY(-3px);
}

.best-selling-thumb {
    width: 395px;
    height: 395px;
    border-radius: 12px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.06);
    border: 2px solid rgba(41, 182, 246, 0.45);
    margin-bottom: 0.75rem;
    position: relative;
}

.best-selling-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.best-selling-thumb-fallback {
    display: none;
    position: absolute;
    inset: 0;
    align-items: center;
    justify-content: center;
    color: var(--footer-heading);
    font-size: 2rem;
}

.best-selling-thumb.is-placeholder .best-selling-thumb-fallback {
    display: flex;
}

.best-selling-label {
    color: var(--footer-text);
    font-weight: 600;
    font-size: 2.65rem;
    line-height: 1.3;
    margin-bottom: 0.35rem;
}

.best-selling-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    font-weight: 600;
    color: #FFFFFF;
    background: var(--footer-btn);
    border: 1px solid var(--footer-btn);
    border-radius: 50px;
    padding: 0.5rem 1.15rem;
    transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.best-selling-cta i {
    font-size: 1.1rem;
    transition: transform 0.25s ease;
}

.best-selling-card:hover .best-selling-label {
    color: #FFFFFF;
}

.best-selling-card:hover .best-selling-cta {
    color: #FFFFFF;
    background: #29B6F6;
    border-color: #29B6F6;
    box-shadow: 0 4px 14px rgba(56, 189, 248, 0.35);
}

.best-selling-card:hover .best-selling-cta i {
    transform: translateX(3px);
}

@media (min-width: 768px) {
    .best-selling-thumb {
        width: 255px;
        height: 255px;
    }

    .best-selling-label {
        font-size: 1rem;
    }

    .best-selling-cta {
        font-size: 0.8rem;
        padding: 0.35rem 0.85rem;
    }

    .best-selling-cta i {
        font-size: 0.7rem;
    }
}

/*** Footer End ***/


/*** copyright Start ***/
.copyright {
    border-top: 1px solid rgba(41, 182, 246, 0.2);
    background: #1F2937 !important;
    color: #E5E7EB;
}
/*** copyright end ***/



.btn-order-now {
    border-radius: 0;
    width: 100%;
}

@media (min-width: 1200px) {
    .btn-order-now {
        width: calc(50% - 0.75rem);
    }
}

/*** Order Modal Start ***/
.order-modal.fade .modal-dialog {
    transition: transform 0.12s ease-out;
    transform: translate(0, -12px);
}

.order-modal.fade {
    transition: opacity 0.12s linear;
}

.order-modal + .modal-backdrop.fade,
.modal-backdrop.fade {
    transition: opacity 0.12s linear;
}

.order-modal .modal-dialog {
    margin-left: auto;
    margin-right: auto;
}

.order-modal .modal-dialog.modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: calc(100% - 1rem);
}

@media (min-width: 768px) {
    .order-modal .modal-dialog {
        max-width: 582px;
    }

    .order-modal .modal-header {
        padding: 1.1rem 1.6rem;
    }

    .order-modal .modal-body {
        padding: 1.6rem;
    }

    .order-modal .form-floating > .form-control {
        height: 43px;
    }

    .order-modal-submit {
        height: 43px;
    }
}

@media (min-width: 992px) {
    .order-modal .modal-dialog {
        max-width: 666px;
        width: calc(100% - 3rem);
        margin: 1.75rem auto;
    }

    .order-modal .modal-dialog.modal-dialog-centered {
        min-height: calc(100% - 3.5rem);
    }

    .order-modal .modal-content {
        min-height: 416px;
    }

    .order-modal .modal-header {
        padding: 1.8rem 2rem;
        min-height: 104px;
        position: relative;
        justify-content: center;
        text-align: center;
    }

    .order-modal .modal-header .btn-close {
        position: absolute;
        top: 1rem;
        right: 1rem;
        margin: 0;
    }

    .order-modal .modal-body {
        padding: 2.4rem 2rem 2.6rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .order-modal .modal-body form {
        width: 100%;
        max-width: 448px;
        margin: 0 auto;
    }

    .order-modal .modal-title {
        line-height: 1.45;
        width: 100%;
        text-align: center;
        padding-right: 0;
    }

    .order-modal-product-name {
        font-size: 0.92rem;
        margin-bottom: 0.5rem;
        line-height: 1.45;
    }

    .order-modal-product-price {
        font-size: 1.2rem;
        line-height: 1.3;
    }

    .order-modal-intro {
        font-size: 0.84rem;
        margin-bottom: 1.6rem;
        line-height: 1.6;
        text-align: center;
        max-width: 448px;
    }

    .order-modal .row.g-3 {
        --bs-gutter-y: 1.4rem;
    }

    .order-modal .form-floating > .form-control {
        height: 51px;
        font-size: 0.84rem;
        padding-top: 1.1rem;
        padding-bottom: 0.5rem;
    }

    .order-modal .form-floating > label {
        font-size: 0.8rem;
        padding-top: 0.8rem;
    }

    .order-modal-submit {
        height: 51px;
        font-size: 0.88rem;
        margin-top: 0.6rem;
    }
}

.order-modal .modal-content {
    border: none;
    border-radius: 12px;
    overflow: hidden;
}

.order-modal .modal-header {
    background: #18bcec;
    color: #fff;
    border-bottom: none;
    padding: 1rem 1.25rem;
    align-items: flex-start;
}

.order-modal .modal-title {
    font-weight: 600;
    color: #fff;
    line-height: 1.35;
    padding-right: 1.5rem;
}

.order-modal-product-name {
    font-size: 0.95rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 0.35rem;
}

.order-modal-product-price {
    font-size: 1.15rem;
    font-weight: 700;
    color: #fff;
}

.order-modal .btn-close {
    filter: invert(1);
}

.order-modal .modal-body {
    padding: 1.5rem 1.25rem;
}

.order-modal-intro {
    color: #555;
    font-size: 0.95rem;
    margin-bottom: 1.25rem;
    line-height: 1.5;
}

.order-modal .form-floating > .form-control {
    height: 48px;
}

.order-modal-submit {
    height: 48px;
    font-weight: 600;
    background: #18bcec !important;
    border: none !important;
}

.order-modal-submit:hover {
    background: #0d8bb9 !important;
}
/*** Order Modal End ***/

/*** Lively Landing Page ***/
body {
    background: linear-gradient(180deg, #cfe9f8 0%, #e8f4fc 35%, #edf2ff 70%, #e6f0fa 100%);
    background-attachment: fixed;
}

.container-fluid.shop {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.7) 0%, rgba(220, 242, 255, 0.85) 100%);
    border-top: none;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

.container-fluid.shop + .container-fluid.shop {
    margin-top: 0.75rem;
}

.container-fluid.shop > .container {
    background: rgba(255, 255, 255, 0.94);
    border-radius: 18px;
    box-shadow: 0 12px 40px rgba(13, 139, 185, 0.14);
    border: 1px solid rgba(24, 188, 236, 0.22);
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
}

.container-fluid.shop hr {
    display: none;
}

.product-image-frame {
    background: linear-gradient(145deg, #dff4ff 0%, #ffffff 45%, #e8f7ff 100%) !important;
    border: 2px solid rgba(24, 188, 236, 0.4);
    box-shadow: 0 8px 28px rgba(24, 188, 236, 0.18);
    padding: 0.5rem;
}

.product-features {
    font-family: 'Poppins', 'Open Sans', sans-serif;
    line-height: 1.7;
    font-size: 1rem;
    color: #1e3a5f;
    padding: 1.25rem 1rem;
    background: linear-gradient(145deg, #ffffff 0%, #e8f7ff 55%, #f0f9ff 100%);
    border: 2px solid rgba(24, 188, 236, 0.3);
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(24, 188, 236, 0.12);
}

.product-features > span {
    display: block !important;
    margin-bottom: 0.75rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

.product-features b {
    display: block !important;
    width: 100%;
    padding: 0.35rem 0 0.35rem 0.85rem !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    color: #0d8bb9 !important;
    background: none !important;
    border-radius: 0 !important;
    margin-bottom: 0 !important;
    box-shadow: none !important;
    border-left: 4px solid #18bcec !important;
    text-shadow: none;
    transition: color 0.2s ease, border-color 0.2s ease;
}

.product-features > span:nth-child(2) b {
    color: #0d8bb9 !important;
    border-left-color: #18bcec !important;
    background: none !important;
    box-shadow: none !important;
}

.product-features > span:nth-child(3) b {
    color: #0d8bb9 !important;
    border-left-color: #18bcec !important;
    background: none !important;
    box-shadow: none !important;
}

.product-features > span:nth-child(4) b {
    color: #0d8bb9 !important;
    border-left-color: #18bcec !important;
    background: none !important;
    box-shadow: none !important;
}

.product-features > span:nth-child(5) b {
    color: #0d8bb9 !important;
    border-left-color: #18bcec !important;
    background: none !important;
    box-shadow: none !important;
}

.product-features > span:hover b {
    color: #18bcec !important;
    border-left-color: #0d8bb9 !important;
    transform: none;
}

.spec-panel {
    font-family: 'Poppins', 'Open Sans', sans-serif;
    padding: 1.25rem;
    background: linear-gradient(145deg, #f8fbff, #eef6ff);
    border: 1px solid rgba(24, 188, 236, 0.22);
    border-radius: 14px;
    box-shadow: 0 6px 20px rgba(24, 188, 236, 0.08);
}

.spec-panel .spec-feature-item {
    margin-bottom: 0.65rem;
}

.spec-panel .spec-feature-item b,
.spec-panel > div > b {
    display: block;
    padding: 0.35rem 0 0.35rem 0.85rem;
    font-size: 1rem;
    font-weight: 700;
    color: #0d8bb9 !important;
    background: none !important;
    border-radius: 0;
    border-left: 4px solid #18bcec;
    box-shadow: none;
}

.spec-panel .spec-grid > div {
    padding: 12px;
    background: rgba(24, 188, 236, 0.12);
    border-radius: 8px;
    border-left: 3px solid #18bcec;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.spec-panel .spec-grid > div:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(24, 188, 236, 0.2);
}

.spec-panel .spec-grid b {
    display: block;
    color: #0d8bb9 !important;
    font-size: 0.85rem;
    font-weight: 700;
    background: none !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

.spec-panel .spec-grid span {
    color: #334155;
    font-size: 0.9rem;
}

.spec-panel-title {
    color: #18bcec;
    font-size: 1.15rem;
    margin-bottom: 1.25rem;
    text-align: center;
    padding-bottom: 0.65rem;
    border-bottom: 2px solid rgba(24, 188, 236, 0.35);
    font-weight: 700;
}

.tab-pane[id*="mission"] > p {
    padding: 0.45rem 0.85rem;
    margin-bottom: 0.4rem;
    background: rgba(24, 188, 236, 0.08);
    border-radius: 8px;
    border-left: 3px solid #18bcec;
    color: #1e3a5f;
}

.product-trust-badges {
    background: linear-gradient(135deg, #fffbeb 0%, #e0f2fe 100%) !important;
    border: 2px solid rgba(24, 188, 236, 0.35) !important;
    box-shadow: 0 4px 16px rgba(24, 188, 236, 0.12);
}

.product-trust-badges i {
    font-size: 1.35rem;
}

.single-product .alert-info {
    background: linear-gradient(135deg, #e0f2fe, #dbeafe) !important;
    border: 1px solid #18bcec !important;
    color: #0c4a6e !important;
}

.nav-bar .bg-primary {
    background: linear-gradient(90deg, #0a6ebd 0%, #18bcec 50%, #0a6ebd 100%) !important;
}

.page-header h1 {
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.3);
    font-weight: 700;
    letter-spacing: 0.04em;
}

.single-product h3.text-primary {
    background: linear-gradient(135deg, #0d8bb9, #6366f1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
/* ==========================================================
   PREMIUM FULL PAGE BACKGROUND
========================================================== */

html,
body {
    background: #071A3D !important;
}

/* Every section adopts the same background */
.container-fluid,
.container {
    background: transparent;
}

/* Product sections */
.container-fluid.shop {
    background: #071A3D !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

/* Product cards remain white for contrast */
.container-fluid.shop > .container {
    background: #FFFFFF !important;
    border: 1px solid rgba(212,175,55,.25);
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(0,0,0,.35);
}

/* Header & Navigation */
.nav-bar,
.page-header {
    background: #071A3D !important;
}

/* Footer */
.footer,
.copyright {
    background: #071A3D !important;
}
/* ==========================================================
   PREMIUM SECTION THEME
==========================================================*/

/* Main page */

html,
body{
    background:#071A3D !important;
}

/* Every product section */

.container-fluid.shop{

    background:#071A3D !important;

    padding:28px 0 !important;
}

/* White premium cards */

.container-fluid.shop>.container{

    background:#F8FAFC !important;

    border-radius:20px;

    border:1px solid rgba(212,175,55,.28);

    box-shadow:0 16px 45px rgba(0,0,0,.35);

    padding:30px;
}

/* Product image area */

.product-image-frame{

    background:#FFFFFF !important;

    border:2px solid rgba(212,175,55,.40)!important;
}

/* Product title */

.single-product h4{

    color:#071A3D!important;

    font-weight:800;
}

/* Prices */

.single-product h3{

    color:#B8860B!important;

    font-weight:900;
}

/* Main text */

.single-product p,
.single-product span,
.single-product small,
.single-product li{

    color:#23395B!important;

    font-size:16px;

    line-height:1.7;
}

/* Feature section */

.product-features{

    background:#FFFFFF!important;

    color:#23395B!important;

    border:1px solid rgba(212,175,55,.25)!important;

    border-radius:14px;
}

/* Feature headings */

.product-features b{

    color:#071A3D!important;

    border-left:5px solid #D4AF37!important;

    font-weight:700;
}

/* Tabs */

.nav-tabs{

    border-bottom:2px solid rgba(212,175,55,.30)!important;
}

.nav-tabs .nav-link{

    background:#F2F5F9!important;

    color:#071A3D!important;

    border:1px solid rgba(7,26,61,.10)!important;
}

.nav-tabs .nav-link.active{

    background:#071A3D!important;

    color:#FFFFFF!important;

    border-color:#D4AF37!important;
}

/* Trust badges */

.product-trust-badges{

    background:#FFFFFF!important;

    border:1px solid rgba(212,175,55,.30)!important;
}

.product-trust-badges small{

    color:#23395B!important;

    font-weight:600;
}

/* Alerts */

.alert-info{

    background:#EEF4FA!important;

    border:1px solid #D4AF37!important;

    color:#071A3D!important;
}

/* Footer */

.footer,
.copyright{

    background:#071A3D!important;

    color:#FFFFFF!important;
}
/* ===================================================
   FORCE PREMIUM WHITE SECTIONS
=================================================== */

.container-fluid.shop > .container,
.product-image-frame,
.product-features,
.product-trust-badges,
.single-product .alert,
.single-product .alert-info,
.nav-tabs .nav-link,
.order-modal .modal-content{

    background:#F8FAFC !important;

    background-image:none !important;

    color:#071A3D !important;

    border-color:rgba(212,175,55,.30)!important;
}

/* All text inside white sections */

.container-fluid.shop > .container *,
.product-features *,
.product-trust-badges *,
.order-modal *{

    color:#071A3D !important;
}

/* Preserve gold prices */

h3,
.order-modal-product-price{

    color:#B8860B !important;
}

/* Preserve white buttons */

.btn{

    color:#FFFFFF !important;
}
/* ==========================================================
   DARK NAVY THEME FOR ALL CONTENT SECTIONS
========================================================== */

/* Main content cards */

.container-fluid.shop > .container,
.product-image-frame,
.product-features,
.product-trust-badges,
.spec-panel,
.single-product .alert,
.single-product .alert-info,
.tab-content,
.tab-pane,
.order-modal .modal-content{

    background:#071A3D !important;
    background-image:none !important;

    border:1px solid rgba(212,175,55,.30)!important;

    box-shadow:0 12px 35px rgba(0,0,0,.45)!important;
}

/* Every piece of text inside those sections */

.container-fluid.shop > .container *,
.product-features *,
.product-trust-badges *,
.spec-panel *,
.tab-content *,
.tab-pane *{

    color:#F5F5F5 !important;
}

/* Feature titles */

.product-features b{

    color:#FFD700 !important;

    border-left:5px solid #FFD700 !important;

    font-weight:700;
}

/* Product titles */

.single-product h4{

    color:#FFD700 !important;
}

/* Prices */

.single-product h3{

    color:#FFD700 !important;
}

/* Small text */

small{

    color:#EAEAEA !important;
}

/* Tabs */

.nav-tabs{

    border-bottom:1px solid rgba(255,215,0,.30)!important;
}

.nav-tabs .nav-link{

    background:#10254F !important;

    color:#FFFFFF !important;

    border:1px solid rgba(255,215,0,.25)!important;
}

.nav-tabs .nav-link.active{

    background:#FFD700 !important;

    color:#071A3D !important;

    font-weight:700;
}

/* Trust icons */

.product-trust-badges i{

    color:#FFD700 !important;
}

/* Links */

a{

    color:#FFD700;
}

a:hover{

    color:#FFF3A0;
}
/*=====================================================
 PREMIUM GOLD TYPOGRAPHY OVERRIDE
======================================================*/

:root{

    --premium-gold:#E3A800;
    --premium-gold-light:#FFD84D;
    --premium-gold-dark:#B8860B;
    --premium-white:#F8FAFC;
    --premium-navy:#071A3D;

}

/* ===========================
   MAIN PRODUCT TITLE
=========================== */

.single-product h4{

    color:#E3A800 !important;

    font-weight:800;

    letter-spacing:.3px;

    line-height:1.35;

}

/* ===========================
   PRODUCT PRICE
=========================== */

.single-product h3,
.order-modal-product-price{

    color:#FFD84D !important;

    font-size:32px;

    font-weight:900;

    text-shadow:
        0 0 2px rgba(255,216,77,.30),
        0 2px 10px rgba(0,0,0,.35);

}

/* ===========================
   KEY FEATURES TAB
=========================== */

.nav-tabs .nav-link.active{

    background:#E3A800 !important;

    color:#071A3D !important;

    font-weight:800;

}

/* ===========================
   FEATURE TITLES
=========================== */

.product-features b{

    color:#E3A800 !important;

    border-left:5px solid #E3A800 !important;

    font-weight:700;

}

/* ===========================
   SECTION HEADINGS
=========================== */

h1,
h2,
h5,
.best-selling-heading{

    color:#E3A800 !important;

    font-weight:800;

}

/* ===========================
   WHITE TEXT
=========================== */

p,
span,
small,
li{

    color:#F8FAFC;

}

/* ===========================
   TRUST BADGES
=========================== */

.product-trust-badges i{

    color:#E3A800 !important;

}

.product-trust-badges small{

    color:#FFFFFF !important;

}

/* ===========================
   STAR RATINGS
=========================== */

.fa-star,
.fa-star-half-alt{

    color:#FFD84D !important;

}

/* ===========================
   ALERTS
=========================== */

.alert strong{

    color:#E3A800 !important;

}

/* ===========================
   BUTTONS
=========================== */

.btn-success,
.btn-primary,
.btn-danger{

    background:#E3A800 !important;

    border:none!important;

    color:#071A3D!important;

    font-weight:800;

    letter-spacing:.4px;

}

.btn-success:hover,
.btn-primary:hover,
.btn-danger:hover{

    background:#FFD84D!important;

}

/* ===========================
   LINKS
=========================== */

a{

    color:#FFD84D;

}

a:hover{

    color:#FFF2A5;

}

/* ===========================
   BADGES
=========================== */

.badge{

    font-weight:700;

}
/*====================================================
 PREMIUM ORDER BUTTONS
=====================================================*/

/* ALL BUY NOW & ORDER NOW BUTTONS */

.btn-order-now,
.btn-success,
.btn-primary,
.btn-danger,
.order-modal-submit{

    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;

    min-height:62px;

    border:none!important;

    border-radius:60px!important;

    background:linear-gradient(
        180deg,
        #FFD84D 0%,
        #E3A800 48%,
        #B8860B 100%
    )!important;

    color:#071A3D!important;

    font-size:18px;

    font-weight:900;

    letter-spacing:.8px;

    text-transform:uppercase;

    box-shadow:
        0 10px 28px rgba(227,168,0,.35),
        inset 0 1px 0 rgba(255,255,255,.45);

    transition:.30s ease;

    cursor:pointer;
}

/* Hover */

.btn-order-now:hover,
.btn-success:hover,
.btn-primary:hover,
.btn-danger:hover,
.order-modal-submit:hover{

    transform:translateY(-3px);

    background:linear-gradient(
        180deg,
        #FFF2A5,
        #FFD84D,
        #E3A800
    )!important;

    color:#071A3D!important;

    box-shadow:
        0 18px 40px rgba(227,168,0,.45);

}

/* Click */

.btn-order-now:active,
.btn-success:active,
.btn-primary:active,
.btn-danger:active{

    transform:scale(.98);
}

/* Focus */

.btn:focus{

    box-shadow:
        0 0 0 5px rgba(227,168,0,.25)!important;

}

/*====================================================
 DESKTOP
=====================================================*/

@media (min-width:992px){

.btn-order-now,
.btn-success,
.btn-primary,
.btn-danger{

    max-width:380px;

    margin-top:18px;

    margin-bottom:12px;

}

}

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

@media (max-width:991px){

.btn-order-now,
.btn-success,
.btn-primary,
.btn-danger{

    width:100%;

    min-height:58px;

    font-size:17px;

    margin-top:15px;

    margin-bottom:15px;

}

}

/*====================================================
 BUTTON ICON
=====================================================*/

.btn-order-now::before,
.btn-success::before,
.btn-primary::before,
.btn-danger::before{

    content:"🛒";

    margin-right:12px;

    font-size:18px;

}
/*====================================================
 PREMIUM CTA POSITIONING
=====================================================*/

/* Desktop */

@media (min-width:992px){

    .btn-order-now,
    .btn-success,
    .btn-primary,
    .btn-danger{

        width:100%;
        max-width:360px;

        display:flex;
        justify-content:center;
        align-items:center;

        margin:22px auto 16px auto;

    }

    /* Center the button container */
    .single-product .d-flex.flex-column,
    .single-product .d-grid,
    .single-product .mt-3{

        display:flex !important;
        justify-content:center;
        align-items:center;

    }

}

/* Mobile */

@media (max-width:991px){

    .btn-order-now,
    .btn-success,
    .btn-primary,
    .btn-danger{

        width:100%;
        max-width:100%;

        margin:18px 0;

    }

}
/*=========================================================
      PREMIUM HERO OVERRIDE
=========================================================*/

.hero-premium{

    background:linear-gradient(135deg,#071A3D,#0B214F) !important;

    padding:80px 20px !important;

    min-height:85vh;

    display:flex !important;

    align-items:center;

    justify-content:center;

}

.hero-container{

    max-width:900px !important;

    width:100%;

    margin:0 auto !important;

    text-align:center !important;

}

/* LOGO */

.hero-logo{

    display:block;

    width:220px !important;

    max-width:80%;

    margin:0 auto 35px !important;

    filter:drop-shadow(0 20px 40px rgba(0,0,0,.45));

}

/* TAGLINE */

.hero-tagline{

    color:#DCE6F7 !important;

    font-size:22px !important;

    font-weight:500;

    margin-bottom:25px !important;

}

/* MAIN TITLE */

.hero-title{

    color:#FFFFFF !important;

    font-size:64px !important;

    font-weight:900 !important;

    line-height:1.1;

    text-transform:uppercase;

    margin-bottom:20px !important;

}

.hero-title span{

    color:#E3A800 !important;

}

/* SUBTITLE */

.hero-subtitle{

    color:#E6EDF8 !important;

    font-size:22px !important;

    max-width:700px;

    margin:0 auto 35px auto !important;

}

/* STARS */

.hero-rating{

    font-size:28px;

    color:#FFD84D;

    margin-bottom:20px;

}

.hero-rating p{

    color:#FFFFFF !important;

    font-size:18px;

    margin-top:10px;

}

/* TRUST BADGES */

.hero-trust{

    display:flex !important;

    justify-content:center;

    gap:15px;

    flex-wrap:wrap;

    margin:35px 0 !important;

}

.hero-trust div{

    background:rgba(255,255,255,.08);

    border:1px solid rgba(227,168,0,.35);

    border-radius:40px;

    color:#FFFFFF !important;

    padding:12px 22px;

    font-weight:600;

}

/* PHONE BUTTON */

.hero-phone{

    display:inline-flex !important;

    justify-content:center;

    align-items:center;

    width:400px;

    max-width:100%;

    height:68px;

    background:#FF4B12 !important;

    color:#FFFFFF !important;

    border-radius:60px;

    font-size:24px;

    font-weight:800;

    text-decoration:none;

    margin:25px auto;

    box-shadow:0 15px 35px rgba(255,75,18,.35);

}

/* CTA */

.hero-cta{

    display:inline-flex !important;

    justify-content:center;

    align-items:center;

    width:400px;

    max-width:100%;

    height:70px;

    border-radius:60px;

    background:linear-gradient(180deg,#FFD84D,#E3A800) !important;

    color:#071A3D !important;

    font-size:22px;

    font-weight:900;

    text-decoration:none;

    box-shadow:0 18px 35px rgba(227,168,0,.35);

    transition:.25s;

}

.hero-cta:hover{

    transform:translateY(-3px);

}

/* MOBILE */

@media(max-width:768px){

.hero-premium{

    padding:60px 20px !important;

}

.hero-logo{

    width:170px !important;

}

.hero-title{

    font-size:38px !important;

}

.hero-tagline{

    font-size:17px !important;

}

.hero-subtitle{

    font-size:17px !important;

}

.hero-phone,

.hero-cta{

    width:100%;

    max-width:320px;

}

.hero-trust{

    flex-direction:column;

    align-items:center;

}

.hero-trust div{

    width:100%;

    max-width:320px;

}

}
/*==========================================
      PREMIUM COMPACT HERO
==========================================*/

.hero-premium{

    min-height:72vh !important;

    padding:45px 20px 55px !important;

}

/* Container */

.hero-container{

    max-width:980px !important;

}

/* Logo */

.hero-logo{

    width:170px !important;

    margin:0 auto 18px !important;

}

/* Tagline */

.hero-tagline{

    font-size:20px !important;

    margin-bottom:20px !important;

    color:#DCE6F5 !important;

}

/* Heading */

.hero-title{

    font-size:clamp(42px,5vw,72px) !important;

    line-height:1.05 !important;

    margin-bottom:18px !important;

    letter-spacing:-1px;

}

/* Gold #1 */

.hero-title span{

    color:#E3A800 !important;

}

/* Subtitle */

.hero-subtitle{

    max-width:760px;

    margin:0 auto 22px !important;

    font-size:23px !important;

    line-height:1.45;

    color:#E7EDF7 !important;

}

/* Rating */

.hero-rating{

    margin-bottom:18px !important;

    font-size:30px;

}

.hero-rating p{

    margin-top:6px !important;

    font-size:18px;

}

/* Decorative divider */

.hero-rating::after{

    content:"";

    display:block;

    width:90px;

    height:3px;

    border-radius:10px;

    background:#E3A800;

    margin:16px auto 0;

}

/* Trust badges */

.hero-trust{

    margin:22px 0 !important;

    gap:12px !important;

}

.hero-trust div{

    padding:10px 18px !important;

    font-size:15px;

}

/* Phone */

.hero-phone{

    margin:18px auto 16px !important;

    width:340px !important;

    height:60px !important;

    font-size:22px !important;

}

/* CTA */

.hero-cta{

    width:340px !important;

    height:62px !important;

    font-size:20px !important;

}

/* Desktop */

@media(min-width:992px){

.hero-premium{

    padding-top:40px !important;

    padding-bottom:45px !important;

}

}
/*=========================================================
        PREMIUM LOGO STYLING
=========================================================*/

.hero-logo{

    width:180px !important;
    max-width:100%;

    display:block;

    margin:0 auto 20px !important;

    padding:16px;

    background:linear-gradient(
        145deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.01)
    );

    border:1px solid rgba(227,168,0,.28);

    border-radius:24px;

    backdrop-filter:blur(14px);

    -webkit-backdrop-filter:blur(14px);

    box-shadow:
        0 0 0 1px rgba(255,255,255,.04),
        0 18px 45px rgba(0,0,0,.45),
        0 0 30px rgba(227,168,0,.10);

    transition:all .35s ease;

}

.hero-logo:hover{

    transform:translateY(-4px) scale(1.03);

    box-shadow:
        0 22px 55px rgba(0,0,0,.50),
        0 0 45px rgba(227,168,0,.18);

}

/* Decorative gold line */

.hero-logo::after{

    content:"";

    display:block;

    width:70px;

    height:3px;

    margin:18px auto 0;

    border-radius:20px;

    background:linear-gradient(
        90deg,
        transparent,
        #E3A800,
        transparent
    );

}
/* ==========================================================
   NYOTA PREMIUM ELECTRONICS HERO
==========================================================*/

.hero-premium{
    position:relative;
    overflow:hidden;
    padding:90px 20px;
    background:
    radial-gradient(circle at top,#1fa2ff22 0%,transparent 45%),
    radial-gradient(circle at bottom right,#00d4ff22 0%,transparent 40%),
    linear-gradient(135deg,#05070d,#0c1628,#060b16);
}

.hero-premium::before{
    content:"";
    position:absolute;
    inset:0;
    background:
    linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
    background-size:45px 45px;
    opacity:.25;
    pointer-events:none;
}

.hero-premium::after{
    content:"";
    position:absolute;
    width:700px;
    height:700px;
    border-radius:50%;
    background:#00bfff;
    filter:blur(180px);
    opacity:.18;
    top:-300px;
    left:50%;
    transform:translateX(-50%);
}

.hero-container{

    position:relative;
    z-index:2;

    max-width:950px;

    margin:auto;

    padding:60px;

    text-align:center;

    border-radius:28px;

    background:rgba(255,255,255,.06);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.15);

    box-shadow:
    0 30px 80px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.12);

}

.hero-logo{

    width:170px;

    margin-bottom:18px;

    filter:
    drop-shadow(0 0 12px rgba(0,191,255,.8))
    brightness(1.08);

    transition:.4s;

}

.hero-logo:hover{

    transform:scale(1.06);

}

.hero-tagline{

    display:inline-block;

    padding:8px 22px;

    border-radius:100px;

    background:rgba(0,191,255,.12);

    border:1px solid rgba(0,191,255,.35);

    color:#64d9ff;

    font-size:15px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

}

.hero-title{

    margin:28px auto 20px;

    max-width:850px;

    font-size:64px;

    font-weight:900;

    line-height:1.05;

    color:#fff;

    letter-spacing:-2px;

    text-transform:uppercase;

}

.hero-title span{

    color:#00c8ff;

    text-shadow:
    0 0 18px rgba(0,200,255,.8);

}

.hero-subtitle{

    max-width:700px;

    margin:auto;

    font-size:22px;

    line-height:1.8;

    color:#d9e8f8;

}

.hero-rating{

    margin:35px auto;

    display:inline-flex;

    flex-direction:column;

    align-items:center;

    padding:20px 35px;

    border-radius:18px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    box-shadow:0 15px 35px rgba(0,0,0,.35);

}

.hero-rating p{

    margin-top:8px;

    color:#fff;

    font-weight:600;

}

.hero-phone{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:16px 34px;

    margin-top:15px;

    margin-bottom:35px;

    border-radius:100px;

    color:#fff;

    text-decoration:none;

    font-weight:700;

    background:linear-gradient(135deg,#0ea5ff,#0057ff);

    box-shadow:
    0 18px 40px rgba(0,123,255,.45);

}

.hero-phone:hover{

    color:#fff;

    transform:translateY(-3px);

}

.hero-trust{

    display:flex;

    justify-content:center;

    gap:18px;

    flex-wrap:wrap;

    margin-bottom:40px;

}

.hero-trust div{

    background:rgba(255,255,255,.07);

    border:1px solid rgba(255,255,255,.10);

    color:#fff;

    padding:14px 22px;

    border-radius:14px;

    font-weight:700;

    transition:.35s;

}

.hero-trust div:hover{

    background:#00bfff;

    transform:translateY(-4px);

    box-shadow:0 20px 40px rgba(0,191,255,.45);

}

.hero-trust i{

    margin-right:8px;

    color:#00d4ff;

}

.hero-cta{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    padding:20px 70px;

    border-radius:100px;

    font-size:20px;

    font-weight:800;

    letter-spacing:1px;

    text-decoration:none;

    color:#fff;

    background:
    linear-gradient(135deg,#00bfff,#0066ff);

    box-shadow:
    0 18px 55px rgba(0,140,255,.55);

    transition:.35s;

}

.hero-cta:hover{

    color:#fff;

    transform:
    translateY(-4px)
    scale(1.04);

    box-shadow:
    0 25px 70px rgba(0,170,255,.65);

}

@media(max-width:768px){

.hero-container{

padding:40px 24px;

}

.hero-title{

font-size:42px;

}

.hero-subtitle{

font-size:18px;

line-height:1.6;

}

.hero-phone{

width:100%;

justify-content:center;

}

.hero-cta{

width:100%;

}

.hero-trust{

flex-direction:column;

}

.hero-trust div{

width:100%;

}

}
/*==================================================
 NYOTA PREMIUM HERO OVERRIDE
==================================================*/

.hero-premium{
    position:relative;
    overflow:hidden;
    padding:90px 20px;
    background:
        radial-gradient(circle at top,#1fa2ff22 0%,transparent 45%),
        radial-gradient(circle at bottom right,#00d4ff22 0%,transparent 40%),
        linear-gradient(135deg,#05070d,#09111f,#07101d);
}

.hero-premium::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
    background-size:40px 40px;
    opacity:.25;
    pointer-events:none;
}

.hero-premium::after{
    content:"";
    position:absolute;
    width:750px;
    height:750px;
    left:50%;
    top:-320px;
    transform:translateX(-50%);
    border-radius:50%;
    background:#00bfff;
    filter:blur(170px);
    opacity:.18;
}

/*=========================
 Glass Card
==========================*/

.hero-container{

    position:relative;
    z-index:2;

    max-width:980px;

    margin:auto;

    padding:65px;

    text-align:center;

    border-radius:30px;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.12);

    box-shadow:
        0 35px 80px rgba(0,0,0,.45),
        inset 0 1px 0 rgba(255,255,255,.12);

}

/*=========================
 PREMIUM LOGO
==========================*/

.hero-logo{

    width:220px;
    max-width:85%;

    margin-bottom:28px;

    filter:
        brightness(1.15)
        contrast(1.08)
        drop-shadow(0 0 10px rgba(255,255,255,.35))
        drop-shadow(0 0 30px rgba(0,183,255,.75))
        drop-shadow(0 0 60px rgba(0,183,255,.45));

    animation:logoGlow 4s ease-in-out infinite;

    transition:.4s;

}

.hero-logo:hover{

    transform:scale(1.08);

}

@keyframes logoGlow{

0%,100%{

filter:
brightness(1.15)
drop-shadow(0 0 12px rgba(255,255,255,.35))
drop-shadow(0 0 30px rgba(0,183,255,.65));

}

50%{

filter:
brightness(1.3)
drop-shadow(0 0 20px rgba(255,255,255,.55))
drop-shadow(0 0 65px rgba(0,183,255,.95));

}

}

/*=========================
 TAGLINE
==========================*/

.hero-tagline{

    display:inline-block;

    padding:10px 24px;

    margin-bottom:18px;

    border-radius:999px;

    background:rgba(0,183,255,.12);

    border:1px solid rgba(0,183,255,.35);

    color:#69d7ff;

    font-size:14px;

    letter-spacing:3px;

    font-weight:700;

    text-transform:uppercase;

    box-shadow:0 0 20px rgba(0,183,255,.25);

}

/*=========================
 TITLE
==========================*/

.hero-title{

    margin:20px auto;

    font-size:72px;

    line-height:1;

    font-weight:900;

    letter-spacing:-3px;

    text-transform:uppercase;

    color:#fff;

    text-shadow:
        0 3px 0 rgba(255,255,255,.05),
        0 12px 30px rgba(0,0,0,.45);

    animation:heroFade .9s ease;

}

.hero-title span{

    background:linear-gradient(90deg,#00d8ff,#61d7ff,#ffffff);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

/*=========================
 SUBTITLE
==========================*/

.hero-subtitle{

    max-width:760px;

    margin:0 auto 35px;

    font-size:24px;

    line-height:1.8;

    color:#d9e8f8;

    font-weight:400;

}

/*=========================
 RATING
==========================*/

.hero-rating{

    display:inline-flex;

    flex-direction:column;

    align-items:center;

    margin:30px auto;

    padding:18px 35px;

    border-radius:18px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    box-shadow:0 20px 45px rgba(0,0,0,.35);

    color:#FFD54F;

    font-size:24px;

}

.hero-rating p{

    margin-top:8px;

    color:#fff;

    font-size:15px;

    font-weight:600;

}

/*=========================
 PHONE BUTTON
==========================*/

.hero-phone{

    display:inline-flex;

    align-items:center;

    gap:12px;

    margin:20px 0 35px;

    padding:16px 36px;

    border-radius:999px;

    color:#fff;

    text-decoration:none;

    font-weight:700;

    background:linear-gradient(135deg,#00a8ff,#0066ff);

    box-shadow:0 18px 45px rgba(0,123,255,.45);

    transition:.35s;

}

.hero-phone:hover{

    color:#fff;

    transform:translateY(-3px);

}

/*=========================
 TRUST BADGES
==========================*/

.hero-trust{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:18px;

    margin-bottom:40px;

}

.hero-trust div{

    padding:15px 22px;

    border-radius:14px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    color:#fff;

    font-weight:700;

    transition:.35s;

}

.hero-trust div:hover{

    transform:translateY(-4px);

    background:#00bfff;

    box-shadow:0 18px 40px rgba(0,191,255,.45);

}

.hero-trust i{

    color:#66ddff;

    margin-right:8px;

}

/*=========================
 CTA
==========================*/

.hero-cta{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    padding:20px 70px;

    border-radius:999px;

    text-decoration:none;

    color:#fff;

    font-size:20px;

    font-weight:800;

    letter-spacing:1px;

    background:linear-gradient(135deg,#00bfff,#005eff);

    box-shadow:0 22px 60px rgba(0,123,255,.55);

    transition:.35s;

}

.hero-cta:hover{

    color:#fff;

    transform:translateY(-5px) scale(1.04);

    box-shadow:0 28px 70px rgba(0,183,255,.65);

}

/*=========================
 Animation
==========================*/

@keyframes heroFade{

from{

opacity:0;

transform:translateY(40px);

}

to{

opacity:1;

transform:translateY(0);

}

}

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

@media(max-width:768px){

.hero-container{

padding:38px 22px;

border-radius:22px;

}

.hero-logo{

width:170px;

margin-bottom:20px;

}

.hero-title{

font-size:44px;

line-height:1.1;

letter-spacing:-1px;

}

.hero-subtitle{

font-size:18px;

line-height:1.6;

}

.hero-phone{

width:100%;

justify-content:center;

}

.hero-cta{

width:100%;

padding:18px;

}

.hero-trust{

flex-direction:column;

}

.hero-trust div{

width:100%;

}

}
/* ==========================================
   PREMIUM HERO LOGO OVERRIDE
   ========================================== */

.hero-logo{
    display:block !important;
    width:360px !important;
    max-width:100% !important;
    height:auto !important;

    margin:0 auto 35px !important;

    position:relative;
    z-index:10;

    filter:
        brightness(1.18)
        contrast(1.1)
        saturate(1.1)
        drop-shadow(0 0 12px rgba(255,255,255,.45))
        drop-shadow(0 0 35px rgba(0,191,255,.8))
        drop-shadow(0 0 75px rgba(0,191,255,.55)) !important;

    animation:nyotaLogoGlow 4s ease-in-out infinite !important;

    transition:all .35s ease !important;
}

.hero-logo:hover{
    transform:scale(1.08);
}

@keyframes nyotaLogoGlow{

    0%,100%{

        filter:
            brightness(1.18)
            contrast(1.1)
            drop-shadow(0 0 12px rgba(255,255,255,.45))
            drop-shadow(0 0 35px rgba(0,191,255,.75))
            drop-shadow(0 0 75px rgba(0,191,255,.45));

    }

    50%{

        filter:
            brightness(1.3)
            contrast(1.15)
            drop-shadow(0 0 20px rgba(255,255,255,.7))
            drop-shadow(0 0 55px rgba(0,191,255,1))
            drop-shadow(0 0 100px rgba(0,191,255,.7));

    }

}

@media (max-width:768px){

    .hero-logo{

        width:250px !important;
        margin-bottom:25px !important;

    }

}
/* PREMIUM HERO TYPOGRAPHY */

.hero-title{

    font-size:78px !important;

    font-weight:900 !important;

    line-height:.92 !important;

    letter-spacing:-3px !important;

    text-transform:uppercase !important;

    color:#fff !important;

    margin:25px auto !important;

    font-family:'Roboto',sans-serif;

    text-shadow:
        0 2px 0 rgba(255,255,255,.08),
        0 8px 25px rgba(0,0,0,.45);

}

.hero-title span{

    display:inline-block;

    background:linear-gradient(90deg,#00d8ff,#8cecff,#ffffff);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

    font-size:1.15em;

    font-weight:900;

    text-shadow:none;

}

.hero-subtitle{

    max-width:720px;

    margin:28px auto !important;

    font-size:28px !important;

    font-weight:300 !important;

    line-height:1.6 !important;

    color:#dce9f8 !important;

    letter-spacing:.5px;

}

.hero-tagline{

    font-size:15px !important;

    font-weight:700;

    letter-spacing:4px !important;

    text-transform:uppercase;

}

@media(max-width:768px){

.hero-title{

font-size:54px !important;

line-height:.95 !important;

}

.hero-subtitle{

font-size:22px !important;

}

}
/* ==========================================
   PREMIUM HERO TAGLINE OVERRIDE
========================================== */

.hero-tagline{
    padding:16px 38px !important;
    font-size:18px !important;
    font-weight:800 !important;
    letter-spacing:3px !important;
    text-transform:uppercase !important;

    color:#ffffff !important;

    background:linear-gradient(135deg,#0d2d57,#1769aa,#0d8df0) !important;

    border:2px solid rgba(70,210,255,.65) !important;

    border-radius:999px !important;

    box-shadow:
        0 0 0 1px rgba(255,255,255,.08),
        0 0 20px rgba(0,183,255,.35),
        0 12px 35px rgba(0,0,0,.35) !important;

    text-shadow:
        0 1px 2px rgba(0,0,0,.45),
        0 0 10px rgba(255,255,255,.15) !important;

    transition:all .35s ease !important;
}

.hero-tagline:hover{
    transform:translateY(-2px) scale(1.03);
    box-shadow:
        0 0 30px rgba(0,191,255,.55),
        0 18px 45px rgba(0,0,0,.4) !important;
}

@media (max-width:768px){
    .hero-tagline{
        font-size:15px !important;
        padding:14px 24px !important;
        letter-spacing:2px !important;
    }
}
/* ==========================================
   PREMIUM HERO TITLE OVERRIDE
========================================== */

.hero-title{

    font-size:78px !important;
    line-height:.92 !important;
    font-weight:900 !important;

    letter-spacing:-3px !important;

    text-transform:uppercase !important;

    color:#ffffff !important;

    margin:28px auto !important;

    text-shadow:
        0 2px 0 rgba(255,255,255,.08),
        0 8px 18px rgba(0,0,0,.45),
        0 18px 40px rgba(0,0,0,.35);

    animation:heroTitleReveal .9s ease-out;

}

/* Highlight #1 */

.hero-title span{

    display:inline-block;

    background:linear-gradient(
        180deg,
        #b8f6ff 0%,
        #4fdcff 35%,
        #00bfff 70%,
        #007bff 100%
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;

    font-size:1.2em;

    font-weight:900;

    text-shadow:none;

    filter:drop-shadow(0 0 18px rgba(0,191,255,.7));

    transform:translateY(-3px);

}

/* Reveal animation */

@keyframes heroTitleReveal{

    from{

        opacity:0;
        transform:translateY(30px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

@media (max-width:768px){

.hero-title{

font-size:50px !important;
line-height:.95 !important;
letter-spacing:-1.5px !important;

}

.hero-title span{

font-size:1.1em;

}

}
/* ==========================================
   METALLIC GOLD #1 OVERRIDE
========================================== */

.hero-title span{
    color:#D4AF37 !important;
    -webkit-text-fill-color:#D4AF37 !important;
    -webkit-background-clip:border-box !important;
    background:none !important;

    text-shadow:
        0 1px 0 #FFF5CC,
        0 2px 0 #F0D26A,
        0 3px 0 #C89B1E,
        0 8px 20px rgba(212,175,55,.35),
        0 0 12px rgba(212,175,55,.25) !important;

    filter:none !important;

    font-weight:900 !important;
}
/* ==========================================
   PREMIUM HERO SUBTITLE OVERRIDE
========================================== */

.hero-subtitle{

    max-width:820px !important;

    margin:35px auto 45px !important;

    font-size:30px !important;

    font-weight:300 !important;

    line-height:1.75 !important;

    letter-spacing:0.8px !important;

    color:#F5F9FF !important;

    text-align:center !important;

    text-shadow:
        0 2px 8px rgba(0,0,0,.35),
        0 0 12px rgba(255,255,255,.08);

    opacity:.96;

    animation:subtitleFade 1.2s ease-out;

}

/* Make each sentence stand out */

.hero-subtitle::first-line{

    font-weight:500;

    color:#FFFFFF;

}

@keyframes subtitleFade{

    from{

        opacity:0;

        transform:translateY(25px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

@media (max-width:768px){

    .hero-subtitle{

        font-size:20px !important;

        line-height:1.7 !important;

        letter-spacing:.3px !important;

        max-width:95% !important;

        margin:25px auto 35px !important;

    }

}
/*==========================================
 PREMIUM HERO SUBTITLE
==========================================*/

.hero-subtitle{

    display:inline-block !important;

    max-width:950px;

    margin:45px auto 20px !important;

    padding:28px 45px !important;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.08),
            rgba(255,255,255,.03)
        );

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.12);

    border-radius:24px;

    box-shadow:
        0 25px 60px rgba(0,0,0,.35),
        inset 0 1px 0 rgba(255,255,255,.15);

    color:#F7FAFF !important;

    font-size:30px !important;

    line-height:1.7 !important;

    font-weight:300 !important;

    letter-spacing:.8px !important;

    position:relative;

    overflow:hidden;

}

/* luxury top line */

.hero-subtitle::before{

    content:"";

    position:absolute;

    left:35%;

    top:0;

    width:30%;

    height:2px;

    background:linear-gradient(
        90deg,
        transparent,
        #D4AF37,
        transparent
    );

}

/* subtle glow */

.hero-subtitle::after{

    content:"";

    position:absolute;

    inset:0;

    border-radius:24px;

    box-shadow:
        inset 0 0 25px rgba(255,255,255,.05);

    pointer-events:none;

}

/* Highlight first sentence */

.hero-subtitle strong{

    display:block;

    font-size:38px;

    font-weight:800;

    color:#D4AF37;

    margin-bottom:12px;

    letter-spacing:1px;

}

@media(max-width:768px){

.hero-subtitle{

padding:22px;

font-size:20px !important;

}

.hero-subtitle strong{

font-size:28px;

}

}
/* ==========================================
   PREMIUM HERO SUBTITLE TYPOGRAPHY OVERRIDE
========================================== */

.hero-subtitle{

    font-family:"Roboto",sans-serif !important;

    color:#F8FAFC !important;

    font-size:30px !important;

    font-weight:300 !important;

    letter-spacing:1.2px !important;

    line-height:1.8 !important;

    text-align:center;

    text-shadow:
        0 2px 8px rgba(0,0,0,.35),
        0 0 20px rgba(255,255,255,.05);

}

.hero-subtitle strong{

    display:block;

    margin-bottom:18px;

    font-size:42px !important;

    font-weight:800 !important;

    letter-spacing:2px;

    color:#D4AF37 !important;

    text-transform:uppercase;

    text-shadow:
        0 2px 8px rgba(0,0,0,.35),
        0 0 18px rgba(212,175,55,.35);

}
/*==========================================
 PREMIUM CALL / WHATSAPP ANIMATION
==========================================*/

.hero-phone{

    position:relative;

    display:inline-flex;

    align-items:center;

    gap:15px;

}

.hero-phone-icon{

    position:relative;

    width:34px;

    height:34px;

    display:flex;

    align-items:center;

    justify-content:center;

}

/* Both icons */

.hero-phone-icon i{

    position:absolute;

    font-size:24px;

    transition:all .5s ease;

}

/* Phone */

.phone-icon{

    color:#ffffff;

    animation:phoneSwap 4s infinite;

}

/* WhatsApp */

.whatsapp-icon{

    color:#25D366;

    opacity:0;

    transform:scale(.3) rotate(-90deg);

    animation:whatsappSwap 4s infinite;

}

/* Phone Animation */

@keyframes phoneSwap{

0%,40%{

opacity:1;

transform:scale(1) rotate(0deg);

}

45%,95%{

opacity:0;

transform:scale(.3) rotate(90deg);

}

100%{

opacity:1;

transform:scale(1);

}

}

/* WhatsApp Animation */

@keyframes whatsappSwap{

0%,40%{

opacity:0;

transform:scale(.3) rotate(-90deg);

}

50%,90%{

opacity:1;

transform:scale(1.1) rotate(0deg);

}

95%,100%{

opacity:0;

transform:scale(.3);

}

}

/* Soft glowing pulse */

.hero-phone-icon::after{

    content:"";

    position:absolute;

    width:36px;

    height:36px;

    border-radius:50%;

    border:2px solid rgba(37,211,102,.35);

    animation:ringPulse 2s infinite;

}

@keyframes ringPulse{

0%{

transform:scale(.8);

opacity:.7;

}

100%{

transform:scale(1.7);

opacity:0;

}

}
/* =================================================
   NYOTA PREMIUM CONTACT BUTTON
================================================= */

.hero-phone{

    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:18px;

    padding:16px 34px !important;

    min-height:72px;

    border-radius:999px;

    text-decoration:none !important;

    color:#FFFFFF !important;

    font-size:28px !important;
    font-weight:800 !important;
    letter-spacing:1px;

    background:
        linear-gradient(
            135deg,
            #11284d 0%,
            #183b72 50%,
            #11284d 100%
        ) !important;

    border:1px solid rgba(212,175,55,.35);

    box-shadow:
        0 18px 45px rgba(0,0,0,.35),
        inset 0 1px 0 rgba(255,255,255,.08),
        0 0 25px rgba(0,140,255,.12);

    transition:all .35s ease;

    position:relative;

    overflow:hidden;

}

/* Luxury shine */

.hero-phone::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:35%;

    height:100%;

    background:
        linear-gradient(
            120deg,
            transparent,
            rgba(255,255,255,.28),
            transparent
        );

    transform:skewX(-25deg);

    animation:heroPhoneShine 4s linear infinite;

}

@keyframes heroPhoneShine{

    from{left:-120%;}

    to{left:150%;}

}

/* Premium icon */

.hero-phone i{

    width:52px !important;
    height:52px !important;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    font-size:22px !important;

    background:linear-gradient(180deg,#E9C96B,#D4AF37,#B8860B);

    color:#081321 !important;

    box-shadow:
        0 8px 20px rgba(212,175,55,.35);

    flex-shrink:0;

}

/* Hover */

.hero-phone:hover{

    transform:translateY(-4px) scale(1.02);

    border-color:#D4AF37;

    box-shadow:
        0 25px 60px rgba(0,0,0,.45),
        0 0 30px rgba(212,175,55,.22);

}

/* Mobile */

@media(max-width:768px){

.hero-phone{

font-size:20px !important;

padding:15px 24px !important;

width:100%;

}

.hero-phone i{

width:46px !important;

height:46px !important;

font-size:18px !important;

}

}
/* ==========================================
   KEEP PHONE NUMBER ON ONE LINE
========================================== */

.hero-phone{

    display:inline-flex !important;

    align-items:center;

    justify-content:center;

    gap:18px;

    white-space:nowrap !important;

    flex-wrap:nowrap !important;

    min-width:420px;

    width:auto !important;

    padding:16px 34px !important;

}

.hero-phone i{

    flex:0 0 auto;

}

.hero-phone span,
.hero-phone strong{

    white-space:nowrap !important;

    display:inline-block;

}

/* Desktop */

@media (min-width:769px){

.hero-phone{

min-width:430px;

font-size:28px !important;

}

}

/* Mobile */

@media (max-width:768px){

.hero-phone{

width:100% !important;

max-width:420px;

min-width:unset;

font-size:20px !important;

padding:16px 20px !important;

}

.hero-phone span,
.hero-phone strong{

font-size:20px !important;

}

}
/* ==========================================
   PERFECT ICON & PHONE ALIGNMENT
========================================== */

.hero-phone{

    display:inline-flex !important;

    align-items:center !important;

    justify-content:center !important;

    gap:18px !important;

    line-height:1 !important;

}

.hero-phone i{

    display:flex !important;

    align-items:center !important;

    justify-content:center !important;

    width:52px !important;

    height:52px !important;

    flex:0 0 52px !important;

    margin:0 !important;

    padding:0 !important;

    line-height:1 !important;

    position:relative;

    top:-1px;   /* Fine adjustment */

}

.hero-phone span,
.hero-phone strong{

    display:flex !important;

    align-items:center !important;

    line-height:1 !important;

    margin:0 !important;

    padding:0 !important;

    white-space:nowrap !important;

}
.phone-number{
    display:flex;
    align-items:center;
    height:52px;
    margin:0;
    padding:0;
    line-height:1;
}
/* ==========================================
   ICON CONTAINER
========================================== */

.hero-phone{

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:18px;

}

.hero-phone-icon{

    position:relative;

    width:52px;
    height:52px;

    flex:0 0 52px;

    display:flex;
    align-items:center;
    justify-content:center;

}

/* Both icons occupy exactly the same position */

.hero-phone-icon i{

    position:absolute;

    display:flex;

    align-items:center;
    justify-content:center;

    width:52px;
    height:52px;

    font-size:24px;

    border-radius:50%;

}

/* Phone */

.phone-icon{

    color:#081321;

    background:#D4AF37;

    animation:phoneSwap 4s infinite;

}

/* WhatsApp */

.whatsapp-icon{

    color:#081321;

    background:#D4AF37;

    opacity:0;

    transform:scale(.3) rotate(-90deg);

    animation:whatsappSwap 4s infinite;

}

/* Phone Number */

.phone-number{

    display:flex;

    align-items:center;

    white-space:nowrap;

    font-size:28px;

    font-weight:800;

    line-height:1;

}

/* Phone Animation */

@keyframes phoneSwap{

0%,45%{

opacity:1;

transform:scale(1);

}

50%,100%{

opacity:0;

transform:scale(.3) rotate(90deg);

}

}
/*=========================================
FINAL PHONE / WHATSAPP ICON COLORS
=========================================*/

.hero-phone-icon{
    position:relative;
    width:52px;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.hero-phone-icon i{
    position:absolute;
    width:52px;
    height:52px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
}

/* RED PHONE */

.phone-icon{
    background:#ff3b30 !important;
    color:#ffffff !important;
}

/* GREEN WHATSAPP */

.whatsapp-icon{
    background:#25D366 !important;
    color:#ffffff !important;
}

/* Keep animations */

.phone-icon{
    animation:phoneSwap 4s infinite !important;
}

.whatsapp-icon{
    animation:whatsappSwap 4s infinite !important;
}
/*=========================================================
        NYOTA LUXURY HERO LOWER SECTION
=========================================================*/

/*------------------------------
SUBTITLE CARD
------------------------------*/

.hero-subtitle{

    position:relative;

    max-width:820px !important;

    margin:25px auto 30px !important;

    padding:28px 40px !important;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.08),
            rgba(255,255,255,.04)
        );

    backdrop-filter:blur(22px);

    border:1px solid rgba(255,255,255,.12);

    border-radius:22px;

    color:#FFFFFF !important;

    font-size:34px !important;

    font-weight:800 !important;

    line-height:1.45;

    letter-spacing:.4px;

    text-align:center;

    overflow:hidden;

    box-shadow:

        inset 0 1px rgba(255,255,255,.12),

        0 18px 45px rgba(0,0,0,.35);

}

/* Gold Accent */

.hero-subtitle::before{

    content:"";

    position:absolute;

    top:0;

    left:50%;

    transform:translateX(-50%);

    width:140px;

    height:2px;

    background:#D4AF37;

    box-shadow:0 0 15px rgba(212,175,55,.45);

}

/*------------------------------
TRUST BADGES
------------------------------*/

.hero-trust{

    display:flex !important;

    justify-content:center;

    gap:16px;

    flex-wrap:wrap;

    margin:25px auto !important;

}

.hero-trust div{

    display:flex;

    align-items:center;

    gap:10px;

    padding:14px 24px !important;

    border-radius:14px;

    background:

        linear-gradient(

            180deg,

            rgba(255,255,255,.06),

            rgba(255,255,255,.03)

        );

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(14px);

    color:#F6FAFF;

    font-weight:700;

    transition:.35s;

    box-shadow:

        inset 0 1px rgba(255,255,255,.08);

}

.hero-trust div:hover{

    transform:translateY(-5px);

    border-color:rgba(212,175,55,.45);

    box-shadow:

        0 18px 40px rgba(0,0,0,.35),

        0 0 18px rgba(212,175,55,.18);

}

.hero-trust i{

    color:#58D8FF;

    font-size:20px;

}

/*------------------------------
PHONE BUTTON
------------------------------*/

.hero-phone{

    position:relative;

    display:inline-flex !important;

    align-items:center;

    justify-content:center;

    gap:20px;

    min-width:420px;

    padding:18px 34px !important;

    margin:30px auto 0 !important;

    border-radius:999px;

    text-decoration:none !important;

    color:#fff !important;

    font-size:28px !important;

    font-weight:800;

    letter-spacing:.5px;

    background:

        linear-gradient(

            135deg,

            #102449,

            #214A86,

            #102449

        );

    border:1px solid rgba(212,175,55,.30);

    overflow:hidden;

    box-shadow:

        inset 0 1px rgba(255,255,255,.08),

        0 22px 45px rgba(0,0,0,.45);

}

/* Luxury Moving Shine */

.hero-phone::before{

    content:"";

    position:absolute;

    top:0;

    left:-140%;

    width:40%;

    height:100%;

    background:

        linear-gradient(

            120deg,

            transparent,

            rgba(255,255,255,.25),

            transparent

        );

    transform:skewX(-25deg);

    animation:heroShine 5s linear infinite;

}

@keyframes heroShine{

    from{

        left:-140%;

    }

    to{

        left:160%;

    }

}

/* Icon */

.hero-phone-icon{

    width:54px;

    height:54px;

    flex:0 0 54px;

    position:relative;

}

/* Hover */

.hero-phone:hover{

    transform:translateY(-4px) scale(1.02);

    border-color:#D4AF37;

    box-shadow:

        0 25px 60px rgba(0,0,0,.45),

        0 0 25px rgba(212,175,55,.20);

}

/*------------------------------
MOBILE
------------------------------*/

@media(max-width:768px){

.hero-subtitle{

font-size:24px !important;

padding:22px !important;

}

.hero-phone{

width:100% !important;

min-width:unset;

font-size:20px !important;

padding:16px 20px !important;

}

.hero-trust{

gap:12px;

}

.hero-trust div{

width:100%;

justify-content:center;

}

}
/*====================================================
      LUXURY COLOR PALETTE OVERRIDE
====================================================*/

/* Hero Card */

.hero-container{

    background:
        linear-gradient(
            145deg,
            rgba(30,38,58,.96),
            rgba(18,24,39,.95)
        ) !important;

    border:1px solid rgba(212,175,55,.20);

    border-radius:28px;

    box-shadow:
        0 35px 80px rgba(0,0,0,.55),
        inset 0 1px rgba(255,255,255,.05);

}

/* Subtitle */

.hero-subtitle{

    background:
        linear-gradient(
            145deg,
            rgba(44,52,72,.96),
            rgba(28,34,49,.95)
        ) !important;

    border:1px solid rgba(212,175,55,.18);

    color:#F8F8F8 !important;

}

/* Trust badges */

.hero-trust div{

    background:
        linear-gradient(
            145deg,
            #252D42,
            #1B2232
        ) !important;

    border:1px solid rgba(212,175,55,.18);

    color:#F5F5F5;

}

.hero-trust div:hover{

    background:
        linear-gradient(
            145deg,
            #2E3952,
            #242C3F
        ) !important;

}

/* Icons */

.hero-trust i{

    color:#D4AF37 !important;

}

/* Phone */

.hero-phone{

    background:
        linear-gradient(
            135deg,
            #1D273B,
            #31425E,
            #1A2436
        ) !important;

    border:1px solid rgba(212,175,55,.35);

}

/* Metallic Shine */

.hero-phone::before{

    opacity:.35;

}

/* Hover */

.hero-phone:hover{

    box-shadow:

        0 20px 55px rgba(0,0,0,.55),

        0 0 25px rgba(212,175,55,.18);

}
/*=========================================================
        LUXURY CONTACT BUTTON V2
=========================================================*/

.hero-phone{

    position:relative;

    display:inline-flex !important;
    align-items:center;
    justify-content:center;

    gap:22px;

    padding:18px 42px !important;

    min-height:78px;

    border-radius:18px !important;

    background:
        linear-gradient(
            145deg,
            #1A2233 0%,
            #26324A 45%,
            #1A2233 100%
        ) !important;

    border:1px solid rgba(212,175,55,.25);

    box-shadow:
        0 22px 50px rgba(0,0,0,.45),
        inset 0 1px 0 rgba(255,255,255,.06);

    overflow:hidden;

    transition:.35s;

}

/* Premium gold top line */

.hero-phone::after{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            #D4AF37,
            transparent
        );

}

/* Number */

.phone-number{

    font-size:30px;

    font-weight:800;

    letter-spacing:1px;

    color:#fff;

}

/* Icon */

.hero-phone-icon{

    width:54px;

    height:54px;

}

.hero-phone:hover{

    transform:translateY(-4px);

    box-shadow:
        0 30px 70px rgba(0,0,0,.5);

}
/*==========================================
      PREMIUM PHONE BUTTON OVERRIDE
==========================================*/

.hero-phone{

    background:linear-gradient(
        135deg,
        #0B3C91 0%,
        #1565C0 45%,
        #1E88E5 100%
    ) !important;

    border:1px solid rgba(212,175,55,.35) !important;

    box-shadow:
        0 20px 45px rgba(11,60,145,.45),
        0 0 30px rgba(30,136,229,.25) !important;

    color:#FFFFFF !important;

}

.hero-phone:hover{

    background:linear-gradient(
        135deg,
        #1565C0 0%,
        #1976D2 50%,
        #42A5F5 100%
    ) !important;

    border-color:#D4AF37 !important;

    transform:translateY(-4px) scale(1.02);

    box-shadow:
        0 25px 55px rgba(11,60,145,.55),
        0 0 40px rgba(30,136,229,.40) !important;

}
/*====================================================
      NYOTA LUXURY CONTACT BUTTON
====================================================*/

.hero-phone{

    position:relative;

    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:22px;

    padding:18px 38px !important;

    min-height:76px;

    border-radius:18px !important;

    overflow:hidden;

    background:
        linear-gradient(
            145deg,
            #1B2435 0%,
            #2C3C57 35%,
            #3C4F72 55%,
            #24334D 100%
        ) !important;

    border:1px solid rgba(212,175,55,.30) !important;

    color:#ffffff !important;

    text-decoration:none !important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        inset 0 -1px 0 rgba(0,0,0,.35),
        0 18px 40px rgba(0,0,0,.45),
        0 0 30px rgba(0,120,255,.10);

    transition:all .4s ease;

}

/* Metallic Gold Top Accent */

.hero-phone::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:2px;

    background:linear-gradient(
        90deg,
        transparent,
        #D4AF37,
        #FFE082,
        #D4AF37,
        transparent
    );

}

/* Luxury Moving Shine */

.hero-phone::after{

    content:"";

    position:absolute;

    top:0;

    left:-130%;

    width:40%;

    height:100%;

    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.22),
        transparent
    );

    transform:skewX(-25deg);

    animation:premiumShine 5s linear infinite;

}

@keyframes premiumShine{

    from{

        left:-130%;

    }

    to{

        left:170%;

    }

}

/* Hover */

.hero-phone:hover{

    transform:translateY(-5px);

    border-color:#D4AF37 !important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12),
        0 28px 60px rgba(0,0,0,.55),
        0 0 35px rgba(212,175,55,.18);

}

/* Phone Number */

.phone-number{

    font-size:29px;

    font-weight:800;

    letter-spacing:1px;

    color:#FFFFFF;

    text-shadow:

        0 2px 10px rgba(0,0,0,.35);

}
/*==========================================
     COMPACT PREMIUM SUBTITLE
==========================================*/

.hero-subtitle{

    padding:18px 28px !important;

    margin:18px auto 20px !important;

    line-height:1.25 !important;

    letter-spacing:.2px !important;

    font-size:34px !important;

    min-height:auto !important;

}

.hero-subtitle br{

    display:none;

}

@media(max-width:768px){

.hero-subtitle{

    padding:14px 18px !important;

    font-size:22px !important;

    line-height:1.15 !important;

}

}
/*==========================================
      REMOVE TOP HERO GAP
==========================================*/

.hero-premium{

    padding-top:15px !important;

    margin-top:0 !important;

    min-height:auto !important;

}

.hero-container{

    padding-top:0 !important;

    margin-top:0 !important;

}

.hero-logo{

    margin-top:0 !important;

    margin-bottom:15px !important;

}

/* Mobile */

@media(max-width:768px){

.hero-premium{

    padding-top:10px !important;

}

}
/*=====================================================
        NYOTA PREMIUM OWL THUMBNAILS
=====================================================*/

.single-carousel .owl-dots{

    display:flex !important;

    justify-content:center;

    align-items:center;

    gap:18px;

    margin-top:28px;

}

/* Thumbnail */

.single-carousel .owl-dot{

    width:82px !important;

    height:82px !important;

    padding:5px !important;

    border-radius:18px !important;

    overflow:hidden;

    background:
        linear-gradient(
            145deg,
            #23344C,
            #1A2638
        );

    border:2px solid rgba(212,175,55,.30);

    transition:.35s;

    box-shadow:

        0 10px 25px rgba(0,0,0,.35),

        inset 0 1px rgba(255,255,255,.06);

}

/* Image */

.single-carousel .owl-dot img{

    width:100% !important;

    height:100% !important;

    object-fit:cover;

    border-radius:12px;

    transition:.35s;

}

/* Hover */

.single-carousel .owl-dot:hover{

    transform:translateY(-6px);

    border-color:#FFD54F;

    box-shadow:

        0 18px 35px rgba(212,175,55,.25);

}

.single-carousel .owl-dot:hover img{

    transform:scale(1.08);

}

/* Active */

.single-carousel .owl-dot.active{

    transform:scale(1.15);

    border:2px solid #D4AF37;

    box-shadow:

        0 0 22px rgba(212,175,55,.45),

        0 20px 40px rgba(0,0,0,.45);

}
/*==========================================================
        NYOTA GADGETS PREMIUM PRODUCT SECTION
==========================================================*/

/* Product Card */

.single-product{

    background:
        linear-gradient(
            145deg,
            #12213D,
            #0B1832
        ) !important;

    border:1px solid rgba(212,175,55,.20);

    border-radius:26px;

    padding:40px;

    box-shadow:
        0 35px 80px rgba(0,0,0,.45),
        inset 0 1px rgba(255,255,255,.05);

}

/* Product Title */

.single-product h4{

    font-size:34px !important;

    font-weight:800 !important;

    line-height:1.35;

    color:#FFFFFF !important;

    letter-spacing:.3px;

    margin-bottom:22px;

}

/* Product Badges */

.badge{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:10px 18px;

    border-radius:999px;

    font-weight:700;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.10),
            rgba(255,255,255,.05)
        ) !important;

    border:1px solid rgba(212,175,55,.20);

    color:#FFFFFF !important;

    backdrop-filter:blur(12px);

    box-shadow:
        inset 0 1px rgba(255,255,255,.08);

}

/* Availability */

.stock{

    color:#6EEB83 !important;

    font-weight:700;

}

/* Old Price */

.old-price{

    color:#A5A5A5 !important;

    text-decoration:line-through;

    font-size:22px;

    margin-left:10px;

}

/* Discount */

.discount{

    background:
        linear-gradient(
            135deg,
            #FF4D4F,
            #D90429
        ) !important;

    color:#fff;

    border-radius:12px;

    padding:8px 16px;

    font-weight:800;

    box-shadow:
        0 10px 25px rgba(217,4,41,.35);

}

/* Main Price */

.text-primary,
.price{

    color:#D4AF37 !important;

    font-size:56px !important;

    font-weight:900;

    line-height:1;

    text-shadow:

        0 0 18px rgba(212,175,55,.20);

}

/* Reviews */

.rating{

    margin:18px 0;

}

.rating i{

    color:#FFD54F;

}

.rating span{

    color:#C7D4EA;

}

/* Availability Text */

.offer{

    color:#FFFFFF;

    font-weight:700;

}

.offer strong{

    color:#D4AF37;

}

/* BUY BUTTON */

.hero-buy,
.btn-buy,
.btn-warning,
.btn-primary{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:14px;

    width:100%;

    max-width:430px;

    margin:30px auto;

    padding:20px 28px;

    border:none;

    border-radius:18px;

    background:

        linear-gradient(
            145deg,
            #FFD95A,
            #D4AF37,
            #B8860B
        ) !important;

    color:#10213C !important;

    font-size:26px;

    font-weight:900;

    letter-spacing:1px;

    overflow:hidden;

    box-shadow:

        0 20px 45px rgba(212,175,55,.40);

    transition:.35s;

}

.hero-buy:hover,
.btn-buy:hover,
.btn-warning:hover,
.btn-primary:hover{

    transform:translateY(-5px) scale(1.02);

    box-shadow:

        0 28px 55px rgba(212,175,55,.55);

}

/* Moving Shine */

.hero-buy::before,
.btn-buy::before,
.btn-warning::before,
.btn-primary::before{

    content:"";

    position:absolute;

    top:0;

    left:-140%;

    width:35%;

    height:100%;

    background:

        linear-gradient(
            120deg,
            transparent,
            rgba(255,255,255,.35),
            transparent
        );

    transform:skewX(-25deg);

    animation:buyShine 4s linear infinite;

}

@keyframes buyShine{

    from{

        left:-140%;

    }

    to{

        left:160%;

    }

}

/* TRUST BOX */

.product-trust{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:18px;

    margin-top:35px;

}

.product-trust .item{

    background:

        linear-gradient(
            145deg,
            #1B2946,
            #14213A
        );

    border:1px solid rgba(212,175,55,.20);

    border-radius:18px;

    padding:24px 15px;

    text-align:center;

    transition:.35s;

    box-shadow:

        inset 0 1px rgba(255,255,255,.05);

}

.product-trust .item:hover{

    transform:translateY(-6px);

    border-color:#D4AF37;

    box-shadow:

        0 20px 40px rgba(212,175,55,.18);

}

.product-trust i{

    display:block;

    font-size:34px;

    color:#D4AF37;

    margin-bottom:14px;

}

.product-trust h6{

    color:#FFFFFF;

    font-size:20px;

    font-weight:700;

}

/* Mobile */

@media(max-width:768px){

.single-product{

padding:24px;

}

.single-product h4{

font-size:26px !important;

}

.text-primary,
.price{

font-size:42px !important;

}

.product-trust{

grid-template-columns:1fr;

}

.hero-buy,
.btn-buy,
.btn-warning,
.btn-primary{

font-size:22px;

padding:18px;

}

}
/*==================================================
        NYOTA PRODUCT PREMIUM OVERRIDE
==================================================*/

/* PRODUCT TITLE */

.single-product .col-xl-6 h4{

    font-size:38px !important;

    line-height:1.18 !important;

    font-weight:900 !important;

    color:#FDFDFD !important;

    letter-spacing:-1px;

    text-shadow:
        0 4px 20px rgba(0,0,0,.35);

    margin-bottom:18px !important;

}

/* FREE DELIVERY */

.single-product .fa-shipping-fast{

    color:#FFD54F !important;

    font-size:42px !important;

    margin-right:12px !important;

}

.single-product small.text-primary{

    color:#FFD54F !important;

    font-size:26px !important;

    font-weight:800 !important;

}

/* PRICE */

.single-product h3.text-primary{

    color:#FFD54F !important;

    font-size:64px !important;

    font-weight:900 !important;

    line-height:1 !important;

    letter-spacing:-2px;

    text-shadow:
        0 0 18px rgba(212,175,55,.35);

}

/* OLD PRICE */

.single-product span[style*="line-through"]{

    color:#AEB8C5 !important;

    font-size:18px !important;

}

/* BADGES */

.single-product .badge{

    border-radius:999px !important;

    padding:10px 18px !important;

    font-size:14px !important;

    font-weight:700 !important;

    border:1px solid rgba(212,175,55,.25);

}

/* STARS */

.single-product .fa-star,
.single-product .fa-star-half-alt{

    color:#FFD54F !important;

    font-size:18px !important;

}

/* REVIEW TEXT */

.single-product .text-muted{

    color:#D5E0F1 !important;

}

/* BUY BUTTON */

.single-product .btn-success{

    background:linear-gradient(
        135deg,
        #FFD95A,
        #D4AF37,
        #B8860B
    ) !important;

    border:none !important;

    color:#0F2245 !important;

    font-size:24px !important;

    font-weight:900 !important;

    border-radius:18px !important;

    box-shadow:
        0 18px 40px rgba(212,175,55,.40);

}

/* TRUST BOX */

.product-trust-badges{

    background:transparent !important;

    border:none !important;

    padding:0 !important;

}

.product-trust-badges .row{

    display:flex !important;

    gap:14px;

}

.product-trust-badges .col-4{

    flex:1;

    background:linear-gradient(
        145deg,
        #22334D,
        #16253D
    );

    border:1px solid rgba(212,175,55,.22);

    border-radius:18px;

    min-height:115px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

}

.product-trust-badges .col-4 i{

    font-size:32px !important;

    color:#D4AF37 !important;

    margin-bottom:12px;

}

.product-trust-badges .col-4 small{

    font-size:17px;

    color:#FFF;

    font-weight:700;

    line-height:1.35;

}

/* MOBILE */

@media(max-width:768px){

.single-product .col-xl-6 h4{

font-size:28px !important;

}

.single-product h3.text-primary{

font-size:46px !important;

}

.product-trust-badges .row{

gap:8px;

}

.product-trust-badges .col-4{

min-height:95px;

}

.product-trust-badges .col-4 small{

font-size:14px;

}

}
/*=========================================================
      NYOTA GLOBAL PRODUCT OVERRIDE
      (Affects ALL Products)
=========================================================*/

/* ---------- PRODUCT TITLES ---------- */

.single-product h4{

    font-size:30px !important;

    line-height:1.2 !important;

    font-weight:900 !important;

    color:#DCE7F5 !important;

    letter-spacing:-0.5px;

    text-shadow:
        0 2px 12px rgba(0,0,0,.35);

}

/* ---------- ALL PRODUCT PRICES ---------- */

.single-product h3{

    font-size:56px !important;

    font-weight:900 !important;

    line-height:1 !important;

    letter-spacing:-2px;

    color:#F8C63D !important;

    text-shadow:
        0 0 14px rgba(248,198,61,.30),
        0 4px 15px rgba(0,0,0,.35);

}

/* Override Bootstrap colours */

.single-product .text-primary,
.single-product .text-danger{

    color:#F8C63D !important;

}

/* ---------- OLD PRICE ---------- */

.single-product span[style*="line-through"]{

    color:#AEB7C4 !important;

    font-size:18px !important;

}

/* ---------- REVIEWS ---------- */

.single-product .text-muted{

    color:#C9D6E8 !important;

}

/* ---------- STARS ---------- */

.single-product .fa-star,
.single-product .fa-star-half-alt{

    color:#FFD54F !important;

}

/* ---------- TRUST BADGES ---------- */

.product-trust-badges .row{

    display:flex !important;

    flex-wrap:nowrap !important;

    align-items:stretch;

    gap:12px;

}

.product-trust-badges .col-4{

    display:flex !important;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    min-height:110px;

    border-radius:16px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(212,175,55,.22);

    padding:16px 10px;

}

.product-trust-badges i{

    font-size:30px !important;

    color:#D4AF37 !important;

    margin-bottom:10px;

}

.product-trust-badges small{

    color:#FFFFFF;

    font-weight:700;

    line-height:1.3;

    text-align:center;

}

/* ---------- MOBILE ---------- */

@media(max-width:768px){

.single-product h4{

font-size:24px !important;

}

.single-product h3{

font-size:42px !important;

}

.product-trust-badges .row{

flex-wrap:wrap !important;

}

.product-trust-badges .col-4{

flex:0 0 calc(33.333% - 8px);

min-height:90px;

}

.product-trust-badges small{

font-size:13px;

}

}
/*=========================================
      GLOBAL PREMIUM PRODUCT COLORS
=========================================*/

/* ALL PRODUCT PRICES */

.single-product h3,
.single-product h3.text-primary,
.single-product h3.text-danger,
.single-product .text-primary,
.single-product .text-danger{

    color:#F6C343 !important;

}

/* FREE DELIVERY */

.single-product small.text-primary,
.single-product .fa-shipping-fast{

    color:#F6C343 !important;

}

/* GREEN TEXT */

.single-product .text-success{

    color:#49D17D !important;

}

/* REVIEW TEXT */

.single-product .text-muted{

    color:#D6DFEC !important;

}

/* TRUST ICONS */

.product-trust-badges .text-primary,
.product-trust-badges .text-success,
.product-trust-badges .text-warning{

    color:#D4AF37 !important;

}

/* PRODUCT TITLES */

.single-product h4{

    color:#E7EEF8 !important;

}

/*====================================================
   FORCE PRODUCT TITLE & PRICE COLORS
====================================================*/

/* Product titles */

.single-product h4,
.single-product h4.fw-bold{

    color:#DCE6F5 !important;   /* Premium Platinum */

}

/* Product prices */

.single-product h3,
.single-product h3.fw-bold,
.single-product h3.text-primary,
.single-product h3.text-danger{

    color:#F4C542 !important;   /* Champagne Gold */

    background:none !important;
    -webkit-background-clip:border-box !important;
    -webkit-text-fill-color:#F4C542 !important;
    background-clip:border-box !important;

}
/*==========================================
      FORCE PRODUCT TITLE COLOUR
==========================================*/

/* Every product title */

.container-fluid.shop .single-product h4,
.container-fluid.shop .single-product h4.fw-bold,
.container-fluid.shop .single-product .fw-bold.mb-2{

    color:#DCE6F5 !important;

    -webkit-text-fill-color:#DCE6F5 !important;

    text-shadow:
        0 2px 12px rgba(0,0,0,.30);

}
/*=================================================
    FORCE ALL PRODUCT TITLE COLOURS
=================================================*/

.container-fluid.shop .single-product h4.fw-bold,
.container-fluid.shop .single-product h4.fw-bold *,
.container-fluid.shop .single-product h4{

    color:#9FD8FF !important;

    -webkit-text-fill-color:#9FD8FF !important;

    text-shadow:
        0 2px 8px rgba(0,0,0,.35);

}
/*==================================================
        PREMIUM MOBILE PRODUCT THUMBNAILS
==================================================*/

.owl-theme .owl-dots{

    display:flex !important;
    justify-content:center;
    align-items:center;
    gap:10px;
    margin-top:18px;

}

.owl-theme .owl-dot{

    width:62px !important;
    height:62px !important;

    border-radius:16px !important;

    overflow:hidden;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(212,175,55,.35);

    transition:.35s;

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

}

.owl-theme .owl-dot img{

    width:100% !important;
    height:100% !important;

    object-fit:cover;

    border-radius:14px;

}

.owl-theme .owl-dot.active{

    transform:translateY(-4px) scale(1.08);

    border:2px solid #D4AF37;

    box-shadow:
        0 0 20px rgba(212,175,55,.45);

}

.owl-theme .owl-dot.active img{

    filter:saturate(1.15);

}

@media(max-width:768px){

.owl-theme .owl-dot{

width:54px !important;
height:54px !important;

}

}
/*==========================================
      NYOTA FEATURES REDESIGN
==========================================*/

.product-features{

    display:grid !important;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:14px;

    margin:25px 0;

}

.product-features > span{

    display:flex !important;

    align-items:center;

    padding:18px 22px !important;

    margin:0 !important;

    background:linear-gradient(
        145deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    ) !important;

    border:1px solid rgba(212,175,55,.20);

    border-radius:16px;

    transition:.35s;

    position:relative;

}

/* Remove old backgrounds */

.product-features > span[style]{

    background:linear-gradient(
        145deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    ) !important;

    border-left:none !important;

}

/* Hide emoji icons */

.product-features b{

    color:#F7F9FC !important;

    font-size:18px;

    font-weight:700;

}

.product-features b::first-letter{

    font-size:0 !important;

}

/* Luxury gold bullet */

.product-features > span::before{

    content:"";

    width:8px;

    height:8px;

    border-radius:50%;

    background:linear-gradient(#FFD95A,#D4AF37);

    margin-right:14px;

    flex-shrink:0;

    box-shadow:0 0 12px rgba(212,175,55,.5);

}

/* Hover */

.product-features > span:hover{

    transform:translateY(-4px);

    border-color:#D4AF37;

    box-shadow:0 15px 35px rgba(212,175,55,.18);

}

@media(max-width:768px){

.product-features{

grid-template-columns:1fr;

}

}
/*====================================
    COMPACT FEATURE CARDS
====================================*/

/* Reduce space between cards */
.product-features{

    gap:10px !important;
    margin:18px 0 !important;

}

/* Reduce card height */
.product-features > span{

    padding:14px 18px !important;
    min-height:60px !important;

    display:flex !important;
    align-items:center;

}

/* Smaller text */
.product-features > span b{

    font-size:17px !important;
    line-height:1.3 !important;
    margin:0 !important;

}

/* Smaller bullet */
.product-features > span::before{

    width:7px !important;
    height:7px !important;

    margin-right:12px !important;

}

/* Make the coloured accent shorter */
.product-features > span::after{

    height:32px !important;

}

/* Mobile */
@media (max-width:768px){

.product-features{

gap:8px !important;

}

.product-features > span{

padding:12px 16px !important;

}

.product-features > span b{

font-size:16px !important;

}

}
/*==================================================
      NYOTA PREMIUM MOBILE THUMBNAILS V2
==================================================*/

/* Thumbnail container */

.single-product .single-carousel .owl-dots{

    display:flex !important;
    justify-content:center;
    align-items:center;
    gap:10px !important;

    margin-top:16px !important;
    padding:0 !important;

}

/* Remove extra spacing */

.single-product .single-carousel .owl-dots .owl-dot{

    margin:0 !important;
}

/* Thumbnail */

.single-product .single-carousel .owl-dots .owl-dot img{

    width:64px !important;
    height:64px !important;

    object-fit:cover !important;

    border-radius:14px !important;

    padding:3px !important;

    background:#18345E !important;

    border:1px solid rgba(212,175,55,.35) !important;

    transition:all .30s ease;

    box-shadow:
        0 6px 16px rgba(0,0,0,.25);

}

/* Active thumbnail */

.single-product .single-carousel .owl-dots .owl-dot.active img{

    transform:translateY(-4px) scale(1.08);

    border:2px solid #D4AF37 !important;

    box-shadow:
        0 0 18px rgba(212,175,55,.45);

}

/* Mobile */

@media (max-width:768px){

.single-product .single-carousel .owl-dots{

    overflow-x:auto;

    justify-content:flex-start;

    padding:0 8px !important;

    scrollbar-width:none;

}

.single-product .single-carousel .owl-dots::-webkit-scrollbar{

    display:none;

}

.single-product .single-carousel .owl-dots .owl-dot img{

    width:58px !important;
    height:58px !important;

}

}
/*=========================================
      PREMIUM MOBILE CTA
=========================================*/

@media (max-width:768px){

/* Button container */

.buy-btn-wrapper,
.order-btn-wrapper,
.product-buy{

    padding:18px 18px 24px !important;

    text-align:center;

}

/* Order button */

.btn-success,
.btn-warning,
.buy-btn,
.order-btn{

    display:flex !important;

    align-items:center;

    justify-content:center;

    gap:12px;

    width:calc(100% - 36px) !important;

    max-width:340px !important;

    margin:0 auto !important;

    min-height:58px !important;

    padding:16px 26px !important;

    border-radius:18px !important;

    font-size:22px !important;

    font-weight:900 !important;

    letter-spacing:.8px;

    box-shadow:
        0 14px 30px rgba(212,175,55,.30);

}

/* Shopping cart icon */

.btn-success i,
.btn-warning i,
.buy-btn i{

    font-size:20px !important;

    margin-right:4px !important;

}

/* Bottom spacing */

.single-product{

    padding-bottom:20px !important;

}

}
/*=========================================
      FIX MOBILE ORDER BUTTON
=========================================*/

@media (max-width:768px){

/* Button */

.btn-success,
.btn-warning,
.buy-btn,
.order-btn{

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:nowrap !important;

    width:90% !important;
    max-width:340px !important;

    margin:0 auto !important;

    padding:16px 22px !important;

    min-height:62px !important;

    border-radius:20px !important;

    white-space:nowrap !important;

    overflow:hidden !important;

}

/* Prevent text wrapping */

.btn-success span,
.btn-warning span,
.buy-btn span,
.order-btn span{

    white-space:nowrap !important;

    display:inline-block !important;

    font-size:18px !important;

    font-weight:900 !important;

    letter-spacing:1px !important;

}

/* If text is directly inside the button */

.btn-success,
.btn-warning,
.buy-btn,
.order-btn{

    font-size:18px !important;

    font-weight:900 !important;

    line-height:1 !important;

}

/* Cart icon */

.btn-success i,
.btn-warning i,
.buy-btn i,
.order-btn i{

    margin-right:12px !important;

    font-size:18px !important;

    flex-shrink:0 !important;

}

}
/*=========================================
    COMPACT MOBILE TRUST MARKS
=========================================*/

@media (max-width:768px){

.product-trust-badges .row{

    display:flex !important;
    flex-wrap:nowrap !important;
    gap:6px !important;

}

.product-trust-badges .row > div,
.product-trust-badges .col,
.product-trust-badges .col-4{

    flex:1 !important;
    max-width:33.333% !important;
    width:33.333% !important;

    padding:0 2px !important;

}

/* Card */

.product-trust-badges .col > div,
.product-trust-badges .col-4 > div{

    min-height:72px !important;

    padding:8px 4px !important;

    border-radius:12px !important;

}

/* Icon */

.product-trust-badges i{

    font-size:20px !important;

    margin-bottom:5px !important;

}

/* Text */

.product-trust-badges small{

    font-size:11px !important;

    line-height:1.2 !important;

    font-weight:700 !important;

}

}
/*====================================================
        NYOTA COMPACT TRUST BADGES
====================================================*/

/* Desktop + Mobile */

.product-trust-badges{

    margin:12px 0 !important;

}

.product-trust-badges .row{

    display:flex !important;

    flex-wrap:nowrap !important;

    justify-content:center !important;

    align-items:center !important;

    gap:8px !important;

}

.product-trust-badges .row > div,
.product-trust-badges .col,
.product-trust-badges .col-4{

    flex:1 !important;

    max-width:33.333% !important;

    padding:0 2px !important;

}

/* Card */

.product-trust-badges .col > div,
.product-trust-badges .col-4 > div{

    min-height:56px !important;

    padding:8px 6px !important;

    border-radius:12px !important;

    background:rgba(255,255,255,.03) !important;

    border:1px solid rgba(212,175,55,.18) !important;

    transition:.30s ease;

}

.product-trust-badges .col > div:hover,
.product-trust-badges .col-4 > div:hover{

    transform:translateY(-2px);

    border-color:#D4AF37 !important;

    box-shadow:0 8px 18px rgba(212,175,55,.15);

}

/* Icon */

.product-trust-badges i{

    font-size:16px !important;

    margin-bottom:3px !important;

    color:#D4AF37 !important;

}

/* Text */

.product-trust-badges small{

    font-size:10px !important;

    line-height:1.15 !important;

    font-weight:700 !important;

    text-align:center !important;

    color:#F5F7FA !important;

}

/* Mobile */

@media (max-width:768px){

.product-trust-badges{

    margin:8px 0 !important;

}

.product-trust-badges .row{

    gap:4px !important;

}

.product-trust-badges .col > div,
.product-trust-badges .col-4 > div{

    min-height:44px !important;

    padding:5px 3px !important;

    border-radius:10px !important;

}

.product-trust-badges i{

    font-size:12px !important;

    margin-bottom:2px !important;

}

.product-trust-badges small{

    font-size:8px !important;

    line-height:1.1 !important;

}

}
/*====================================================
      PREMIUM INFO BADGES
====================================================*/

.product-meta{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:12px;

    margin:18px 0;

}

/* Every badge */

.product-meta > div{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    min-height:52px;

    padding:12px 18px;

    border-radius:999px;

    background:

        linear-gradient(
            145deg,
            rgba(255,255,255,.06),
            rgba(255,255,255,.03)
        );

    border:1px solid rgba(212,175,55,.22);

    transition:.30s;

}

.product-meta > div:hover{

    border-color:#D4AF37;

    transform:translateY(-2px);

}

/* Icons */

.product-meta i{

    color:#D4AF37;

    font-size:18px;

}

/* Text */

.product-meta span{

    font-size:16px;

    font-weight:700;

    color:#F5F7FA;

}

@media(max-width:768px){

.product-meta{

grid-template-columns:1fr 1fr;

gap:8px;

}

.product-meta span{

font-size:13px;

}

.product-meta > div{

min-height:46px;

padding:10px 12px;

}

}
/*==========================================
      PREMIUM PRODUCT BADGES
==========================================*/

.single-product .badge{

    display:inline-flex !important;

    align-items:center !important;

    justify-content:center !important;

    min-height:44px !important;

    padding:12px 22px !important;

    border-radius:999px !important;

    font-size:15px !important;

    font-weight:700 !important;

    letter-spacing:.3px !important;

    border:1px solid rgba(212,175,55,.25) !important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        0 8px 20px rgba(0,0,0,.18);

}

/* Free Delivery */

.single-product .badge.bg-info{

    background:linear-gradient(135deg,#0EA5E9,#0284C7) !important;

    color:#fff !important;

}

/* Kenya */

.single-product .badge.bg-warning{

    background:linear-gradient(135deg,#FFD54F,#D4AF37) !important;

    color:#102040 !important;

}

/* Warranty */

.single-product .badge.bg-dark{

    background:linear-gradient(135deg,#2F3F63,#1A2747) !important;

    color:#fff !important;

}

/* Replacement / Offer */

.single-product .badge.bg-danger{

    background:linear-gradient(135deg,#22C55E,#16A34A) !important;

    color:#fff !important;

}

/* spacing */

.single-product .d-flex.flex-wrap.gap-2{

    gap:12px !important;

}

/* Mobile */

@media(max-width:768px){

.single-product .badge{

    font-size:12px !important;

    min-height:36px !important;

    padding:8px 14px !important;

}

}
/* ==========================================
   PREMIUM "YOUR KIDS WILL LOVE" SECTION
========================================== */

.footer{
    background:
        radial-gradient(circle at top, rgba(255,196,0,.08), transparent 45%),
        radial-gradient(circle at bottom right, rgba(0,180,255,.08), transparent 40%),
        linear-gradient(180deg,#071d44 0%,#0b2859 100%);
    padding:90px 0;
    position:relative;
    overflow:hidden;
}

.footer::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,transparent 0%,rgba(255,255,255,.03)50%,transparent 100%);
    pointer-events:none;
}

/* Heading */

.best-selling-heading{
    font-size:3rem;
    font-weight:900;
    color:#FFC82C;
    letter-spacing:.5px;
    margin-bottom:15px;
    text-shadow:
        0 2px 8px rgba(255,200,44,.35);
}

.best-selling-subtitle{
    color:#ffffff;
    font-size:1.35rem;
    opacity:.95;
    letter-spacing:.4px;
}

/* Cards */

.best-selling-card{

    background:rgba(255,255,255,.06);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.10);

    border-radius:28px;

    overflow:hidden;

    display:block;

    text-align:center;

    text-decoration:none;

    transition:.45s;

    box-shadow:
    0 20px 60px rgba(0,0,0,.35);

    padding:18px;

    height:100%;

}

.best-selling-card:hover{

    transform:translateY(-12px);

    border-color:#4fd8ff;

    box-shadow:
    0 35px 80px rgba(0,0,0,.45),
    0 0 30px rgba(0,191,255,.28);

}

/* Images */

.best-selling-thumb{

    border-radius:20px;

    overflow:hidden;

    background:#08172d;

}

.best-selling-thumb img{

    width:100%;

    transition:.6s;

    border-radius:20px;

}

.best-selling-card:hover img{

    transform:scale(1.08);

}

/* Labels */

.best-selling-label{

    display:block;

    margin-top:18px;

    color:#fff;

    font-size:1.45rem;

    font-weight:800;

}

/* CTA Button */

.best-selling-cta{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    margin-top:18px;

    padding:14px 34px;

    border-radius:60px;

    font-size:1rem;

    font-weight:700;

    color:#fff;

    background:linear-gradient(135deg,#3fb8ff,#00d4ff);

    box-shadow:
    0 10px 30px rgba(0,191,255,.35);

    transition:.35s;

}

.best-selling-card:hover .best-selling-cta{

    transform:scale(1.08);

    box-shadow:
    0 18px 45px rgba(0,191,255,.45);

}

/* Equal spacing */

.best-selling-products>.col-md-3{

    display:flex;

}

/* Mobile */

@media(max-width:768px){

.best-selling-heading{

font-size:2rem;

}

.best-selling-subtitle{

font-size:1rem;

}

.best-selling-card{

margin-bottom:25px;

}

.best-selling-label{

font-size:1.2rem;

}

.best-selling-cta{

width:100%;

}

}
/* ==========================================
   BEST SELLING PRODUCTS - IMAGE FIX OVERRIDE
========================================== */

/* Prevent cards from clipping images */
.best-selling-card{
    overflow:visible !important;
    padding:18px !important;
}

/* Give the images breathing room */
.best-selling-thumb{
    height:auto !important;
    min-height:unset !important;
    padding:10px !important;
    overflow:visible !important;
    background:transparent !important;
    border-radius:22px !important;
}

/* Show the complete artwork */
.best-selling-thumb img{
    width:100% !important;
    height:auto !important;
    max-width:100% !important;
    object-fit:contain !important;
    object-position:center top !important;
    display:block !important;
    border-radius:18px !important;
    transform:none !important;
    box-shadow:0 15px 35px rgba(0,0,0,.28);
}

/* Small premium hover without cropping */
.best-selling-card:hover .best-selling-thumb img{
    transform:scale(1.02) !important;
}

/* Better spacing */
.best-selling-label{
    margin-top:20px !important;
    line-height:1.2 !important;
}

.best-selling-cta{
    margin-top:18px !important;
}

/* Desktop */
@media (min-width:992px){

    .best-selling-products .col-md-3{
        display:flex;
    }

    .best-selling-card{
        width:100%;
        display:flex;
        flex-direction:column;
        justify-content:space-between;
    }

}

/* Mobile */
@media (max-width:768px){

    .best-selling-card{
        margin-bottom:25px;
        padding:14px !important;
    }

    .best-selling-thumb{
        padding:6px !important;
    }

}
/* ==========================================
   MOBILE FIX - BEST SELLING SECTION
========================================== */

@media (max-width: 768px) {

    /* Prevent horizontal scrolling */
    html,
    body {
        overflow-x: hidden !important;
    }

    .footer,
    .container,
    .container-fluid,
    .best-selling-products,
    .best-selling-products .row {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        margin: 0 !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* Each product occupies full width */
    .best-selling-products > div,
    .best-selling-products .col-12,
    .best-selling-products .col-md-3 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        padding: 0 0 20px !important;
    }

    .best-selling-card {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        margin: 0 auto !important;
        padding: 16px !important;
        border-radius: 24px !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        transform: none !important;
    }

    .best-selling-thumb {
        width: 100% !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .best-selling-thumb img {
        width: 100% !important;
        height: auto !important;
        display: block !important;
        object-fit: contain !important;
    }

    .best-selling-label {
        font-size: 1.3rem !important;
        margin: 18px 0 12px !important;
    }

    .best-selling-cta {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
    }

    /* Disable hover transforms on mobile */
    .best-selling-card:hover,
    .best-selling-card:hover img {
        transform: none !important;
    }
}
/* ==========================================
   PREMIUM "CLICK TO VIEW" BUTTONS
========================================== */

.best-selling-cta{
    display:flex !important;
    align-items:center;
    justify-content:center;

    width:88%;
    margin:22px auto 0;

    padding:16px 26px !important;

    background:linear-gradient(135deg,#18bcec 0%,#09d3ff 100%) !important;
    color:#fff !important;

    font-size:20px;
    font-weight:800;
    letter-spacing:.3px;
    text-decoration:none;

    border-radius:60px;

    border:none;

    box-shadow:
        0 12px 30px rgba(24,188,236,.35),
        inset 0 1px 0 rgba(255,255,255,.35);

    transition:all .35s ease;
}

/* Premium hover */

.best-selling-card:hover .best-selling-cta{
    transform:translateY(-3px);
    background:linear-gradient(135deg,#23c9ff,#00aef0) !important;

    box-shadow:
        0 18px 45px rgba(24,188,236,.45),
        0 0 20px rgba(24,188,236,.30);
}

/* Arrow animation */

.best-selling-cta i{
    margin-left:10px;
    transition:.3s;
}

.best-selling-card:hover .best-selling-cta i{
    transform:translateX(6px);
}

/* Mobile */

@media(max-width:768px){

.best-selling-cta{

    width:100%;
    font-size:18px;
    padding:15px 20px !important;

}

}
/* ===========================================
   BUY NOW Button Cart Icon Override
   Makes every cart icon red
=========================================== */

button i.fa-shopping-cart,
button i.fa-cart-shopping,
button i.fas.fa-shopping-cart,
button i.fas.fa-cart-shopping,
button i.far.fa-shopping-cart,
button i.far.fa-cart-shopping,
.btn i.fa-shopping-cart,
.btn i.fa-cart-shopping,
.btn i.fas.fa-shopping-cart,
.btn i.fas.fa-cart-shopping,
.btn i.far.fa-shopping-cart,
.btn i.far.fa-cart-shopping {
    color: #ff2b2b !important;
    text-shadow: 0 0 8px rgba(255, 43, 43, 0.35);
    transition: color .3s ease;
}

/* Bootstrap Icons */
.btn .bi-cart,
.btn .bi-cart-fill,
button .bi-cart,
button .bi-cart-fill {
    color: #ff2b2b !important;
    text-shadow: 0 0 8px rgba(255, 43, 43, 0.35);
}
/*====================================================
   RED CART ICON OVERRIDE
=====================================================*/

.btn-order-now::before,
.btn-success::before,
.btn-primary::before,
.btn-danger::before{

    content:"\f07a" !important;

    font-family:"Font Awesome 6 Free","Font Awesome 5 Free" !important;

    font-weight:900 !important;

    color:#ff0000 !important;

    font-size:20px !important;

    margin-right:12px !important;

    display:inline-block !important;

    text-shadow:0 2px 6px rgba(255,0,0,.35);

    -webkit-font-smoothing:antialiased;

    -moz-osx-font-smoothing:grayscale;

}
/*=========================================
 PREMIUM CUSTOMER REVIEWS
=========================================*/

.customer-review-section{
    background:#ffffff;
    border-radius:22px;
    padding:55px 35px;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:0 18px 50px rgba(0,0,0,.08);
}

.review-badge{
    display:inline-block;
    padding:8px 18px;
    background:#e8f7ff;
    color:#0b78d1;
    border-radius:50px;
    font-weight:700;
    font-size:14px;
}

.review-title{
    font-size:2.3rem;
    font-weight:800;
    color:#071A3D;
}

.review-subtitle{
    max-width:650px;
    margin:auto;
    color:#6b7280;
    font-size:17px;
}

.review-card{
    background:#ffffff;
    border-radius:18px;
    padding:28px;
    height:100%;
    border:1px solid rgba(11,120,209,.12);
    box-shadow:0 10px 30px rgba(11,120,209,.08);
    transition:.35s;
}

.review-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 40px rgba(11,120,209,.15);
}

.stars{
    color:#FFD700;
    font-size:22px;
    letter-spacing:3px;
    margin-bottom:18px;
}

.review-card p{
    color:#374151;
    line-height:1.8;
    font-size:16px;
    margin-bottom:22px;
    font-style:italic;
}

.review-name strong{
    color:#071A3D;
    font-size:17px;
}

.review-name small{
    color:#6b7280;
}

@media(max-width:768px){

.customer-review-section{
    padding:35px 22px;
}

.review-title{
    font-size:1.8rem;
}

.review-card{
    padding:22px;
}

}
/*==================================================
PREMIUM CUSTOMER REVIEWS
==================================================*/

.customer-reviews{

padding:90px 0;

background:#071A3D;

position:relative;

overflow:hidden;

}

.customer-reviews::before{

content:"";

position:absolute;

width:650px;

height:650px;

background:#00AEEF;

filter:blur(180px);

opacity:.08;

top:-250px;

left:50%;

transform:translateX(-50%);

}

.reviews-wrapper{

position:relative;

z-index:2;

background:rgba(255,255,255,.04);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.10);

border-radius:28px;

padding:60px;

box-shadow:

0 25px 80px rgba(0,0,0,.45);

}

.review-pill{

display:inline-block;

padding:10px 24px;

background:rgba(0,174,239,.15);

border:1px solid rgba(0,174,239,.45);

border-radius:50px;

font-weight:700;

color:#6EDCFF;

}

.reviews-title{

font-size:58px;

font-weight:900;

color:#FFFFFF;

line-height:1.05;

text-transform:uppercase;

}

.reviews-title span{

display:block;

color:#00BFFF;

text-shadow:0 0 20px rgba(0,191,255,.55);

}

.reviews-subtitle{

max-width:700px;

margin:auto;

font-size:20px;

color:#D6E8F8;

line-height:1.8;

margin-top:20px;

}

.review-card{

position:relative;

height:100%;

padding:35px;

background:linear-gradient(180deg,#0E2147,#081731);

border:1px solid rgba(0,174,239,.40);

border-radius:20px;

transition:.35s;

}

.review-card:hover{

transform:translateY(-8px);

box-shadow:

0 20px 45px rgba(0,174,239,.30);

}

.quote-icon{

position:absolute;

right:25px;

top:20px;

font-size:38px;

color:#1EA8FF;

opacity:.8;

}

.stars{

font-size:25px;

letter-spacing:4px;

color:#FFD84D;

margin-bottom:20px;

}

.review-card p{

font-size:20px;

line-height:1.75;

color:#FFFFFF;

font-style:italic;

margin-bottom:30px;

}

.review-user{

display:flex;

align-items:center;

gap:16px;

}

.avatar{

width:54px;

height:54px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(180deg,#1EA8FF,#005DFF);

color:#FFFFFF;

font-size:20px;

}

.review-user h5{

margin:0;

font-weight:800;

font-size:24px;

color:#FFFFFF;

}

.review-user span{

display:block;

margin-top:4px;

font-size:17px;

font-weight:700;

color:#FFD84D;

text-transform:uppercase;

}

.review-user span i{

margin-right:6px;

}

.review-divider{

border-color:rgba(255,255,255,.10);

margin:55px 0;

}

.trust-row{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

text-align:center;

}

.trust-row div{

padding:20px;

}

.trust-row i{

font-size:34px;

color:#1EA8FF;

margin-bottom:15px;

}

.trust-row h6{

font-size:20px;

font-weight:800;

color:#FFFFFF;

margin-bottom:8px;

}

.trust-row p{

margin:0;

color:#C9D7EA;

font-size:16px;

}

@media(max-width:991px){

.reviews-wrapper{

padding:30px;

}

.reviews-title{

font-size:38px;

}

.review-card{

padding:25px;

}

.review-card p{

font-size:17px;

}

.review-user h5{

font-size:20px;

}

.trust-row{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.trust-row{

grid-template-columns:1fr;

}

.reviews-title{

font-size:30px;

}

.review-card{

padding:22px;

}

}
/*==================================================
PREMIUM COLOUR SECTION
==================================================*/

.colour-section{

padding:90px 0;

background:#071A3D;

position:relative;

overflow:hidden;

}

.colour-section:before{

content:"";

position:absolute;

width:600px;

height:600px;

left:-200px;

top:-180px;

background:#00AEEF;

filter:blur(170px);

opacity:.08;

}

.colour-wrapper{

position:relative;

z-index:2;

padding:60px;

border-radius:28px;

background:rgba(255,255,255,.05);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.12);

box-shadow:

0 30px 80px rgba(0,0,0,.45);

}

.colour-pill{

display:inline-block;

padding:10px 24px;

background:rgba(0,174,239,.12);

border:1px solid rgba(0,174,239,.45);

border-radius:60px;

font-weight:700;

color:#7EDBFF;

}

.colour-title{

font-size:58px;

font-weight:900;

text-transform:uppercase;

color:#FFFFFF;

margin-top:25px;

line-height:1.1;

}

.colour-title span{

display:block;

color:#00BFFF;

text-shadow:0 0 18px rgba(0,191,255,.5);

}

.colour-subtitle{

max-width:700px;

margin:auto;

font-size:20px;

line-height:1.8;

color:#D8E8F8;

margin-top:18px;

margin-bottom:45px;

}

.colour-image-box{

background:linear-gradient(180deg,#0D2146,#07152D);

padding:25px;

border-radius:24px;

border:1px solid rgba(0,174,239,.35);

box-shadow:

0 20px 50px rgba(0,0,0,.35);

}

.colour-image-box img{

width:100%;

border-radius:18px;

transition:.4s;

}

.colour-image-box:hover img{

transform:scale(1.02);

}

.colour-bottom{

margin-top:45px;

display:grid;

grid-template-columns:repeat(3,1fr);

gap:25px;

}

.colour-feature{

text-align:center;

padding:30px;

background:linear-gradient(180deg,#0F224A,#09162E);

border-radius:20px;

border:1px solid rgba(0,174,239,.28);

transition:.35s;

}

.colour-feature:hover{

transform:translateY(-8px);

box-shadow:

0 18px 40px rgba(0,174,239,.25);

}

.colour-feature i{

font-size:38px;

color:#FFD84D;

margin-bottom:18px;

}

.colour-feature h5{

font-size:24px;

font-weight:800;

color:#FFFFFF;

margin-bottom:10px;

}

.colour-feature p{

margin:0;

font-size:17px;

color:#CFE4F7;

}

@media(max-width:991px){

.colour-wrapper{

padding:30px;

}

.colour-title{

font-size:38px;

}

.colour-bottom{

grid-template-columns:1fr;

}

.colour-feature{

padding:25px;

}

}
/*==================================================
PREMIUM CTA BUTTON OVERRIDE
==================================================*/

/* Center button container */

.d-flex.flex-column.gap-2,
.btn-order-now-wrapper,
.cta-wrapper{

    display:flex !important;

    justify-content:center !important;

    align-items:center !important;

    width:100%;

}

/* Premium button */

.btn-success,
.btn-primary,
.btn-order-now{

    display:flex !important;

    justify-content:center !important;

    align-items:center !important;

    width:100%;

    max-width:420px;

    min-height:68px;

    margin:22px auto !important;

    border:none !important;

    border-radius:60px !important;

    background:linear-gradient(
        135deg,
        #FFE37A 0%,
        #FFD84D 30%,
        #D9A500 70%,
        #B8860B 100%
    ) !important;

    color:#071A3D !important;

    font-size:22px;

    font-weight:900;

    letter-spacing:.7px;

    text-transform:uppercase;

    box-shadow:
        0 18px 45px rgba(212,175,55,.45),
        inset 0 2px 2px rgba(255,255,255,.45);

    transition:all .28s ease;

}

/* Hover */

.btn-success:hover,
.btn-primary:hover,
.btn-order-now:hover{

    transform:translateY(-4px);

    box-shadow:
        0 24px 55px rgba(212,175,55,.55);

}

/* Click */

.btn-success:active,
.btn-primary:active,
.btn-order-now:active{

    transform:scale(.97);

}

/* Mobile */

@media(max-width:768px){

.btn-success,
.btn-primary,
.btn-order-now{

    width:92%;

    max-width:360px;

    margin:20px auto !important;

    font-size:20px;

}

}
.universal-order-cta{

max-width:850px;

margin:70px auto;

padding:45px 30px;

text-align:center;

background:linear-gradient(180deg,#15294e,#10203d);

border-radius:28px;

border:1px solid rgba(255,255,255,.08);

box-shadow:0 25px 60px rgba(0,0,0,.35);

}

.universal-order-cta h2{

font-size:34px;

color:#FFD24D;

margin-bottom:18px;

}

.universal-order-cta p{

font-size:19px;

color:#ffffff;

opacity:.9;

margin-bottom:30px;

line-height:1.7;

}

.universal-order-btn{

background:linear-gradient(135deg,#FFD24D,#F4B400);

color:#132546;

font-size:21px;

font-weight:800;

padding:18px 42px;

border:none;

border-radius:60px;

transition:.35s;

box-shadow:0 15px 35px rgba(255,210,77,.35);

}

.universal-order-btn:hover{

transform:translateY(-4px);

box-shadow:0 22px 45px rgba(255,210,77,.45);

}
/*==================================================
  PREMIUM UNIVERSAL ORDER MODAL
==================================================*/

.premium-order-modal{
    background:linear-gradient(180deg,#162c55 0%,#10213f 100%);
    border:1px solid rgba(255,255,255,.08);
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 30px 80px rgba(0,0,0,.45);
}

.premium-order-modal .modal-header{
    border:none;
    padding:28px 30px 18px;
    justify-content:center;
    position:relative;
}

.premium-order-modal .modal-header h4{
    color:#FFD24D;
    font-size:30px;
    font-weight:800;
    margin:0;
}

.premium-order-modal .btn-close{
    position:absolute;
    right:22px;
    top:22px;
    filter:invert(1);
    opacity:.9;
}

.premium-order-modal .modal-body{
    padding:30px;
}

.premium-order-modal label{
    display:block;
    color:#FFD24D;
    font-size:17px;
    font-weight:700;
    margin-bottom:10px;
}

.premium-order-modal .form-control{

    height:60px;

    border-radius:16px;

    border:2px solid rgba(255,255,255,.08);

    background:rgba(255,255,255,.05);

    color:#ffffff;

    font-size:17px;

    padding:0 18px;

    transition:.3s;

    box-shadow:none;

}

.premium-order-modal .form-control::placeholder{

    color:#bfc8d7;

}

.premium-order-modal .form-control:focus{

    border-color:#FFD24D;

    background:rgba(255,255,255,.08);

    color:#fff;

    box-shadow:
    0 0 0 4px rgba(255,210,77,.15);

}

.premium-order-modal select{

    cursor:pointer;

}

.premium-order-modal select option{

    color:#222;

    background:#fff;

}

.premium-order-modal .modal-footer{

    border:none;

    padding:0 30px 30px;

}

.premium-order-modal button[type=submit]{

    width:100%;

    height:64px;

    border:none;

    border-radius:60px;

    background:
    linear-gradient(135deg,#FFD24D,#F4B400);

    color:#132546;

    font-size:22px;

    font-weight:800;

    letter-spacing:.4px;

    transition:.35s;

    box-shadow:
    0 18px 40px rgba(255,210,77,.35);

}

.premium-order-modal button[type=submit]:hover{

    transform:translateY(-3px);

    box-shadow:
    0 24px 55px rgba(255,210,77,.45);

}

.premium-order-modal button[type=submit]:active{

    transform:scale(.98);

}

.modal-backdrop.show{

    opacity:.82;

}

.premium-order-modal::before{

    content:"";

    display:block;

    height:6px;

    background:
    linear-gradient(90deg,
    #FFD24D,
    #25D366,
    #FFD24D);

}

/* Premium spacing */

.premium-order-modal .form-control{

    margin-bottom:18px;

}

/* Smooth modal animation */

.modal.fade .modal-dialog{

    transform:translateY(40px) scale(.95);

    transition:all .35s ease;

}

.modal.show .modal-dialog{

    transform:translateY(0) scale(1);

}

/* Mobile */

@media(max-width:768px){

.premium-order-modal{

border-radius:22px;

}

.premium-order-modal .modal-body{

padding:22px;

}

.premium-order-modal .modal-header h4{

font-size:24px;

}

.premium-order-modal button[type=submit]{

font-size:19px;

height:58px;

}

}
.order-subtitle{

margin-top:10px;

font-size:16px;

color:#d5dceb;

line-height:1.6;

}

.selected-price-box{

margin:22px 0;

padding:22px;

border-radius:18px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

text-align:center;

}

.price-label{

display:block;

font-size:15px;

font-weight:700;

text-transform:uppercase;

color:#cfd8ea;

margin-bottom:8px;

}

.selected-price{

font-size:34px;

font-weight:900;

color:#FFD24D;

margin-bottom:6px;

}

.selected-old-price{

font-size:16px;

color:#c5c5c5;

}

.selected-old-price del{

margin-right:10px;

}

.offer-badge{

display:inline-block;

padding:4px 10px;

border-radius:30px;

background:#ff3b30;

color:#fff;

font-size:12px;

font-weight:700;

}

.order-footer-note{

width:100%;

text-align:center;

margin-top:18px;

font-size:14px;

color:#d8d8d8;

line-height:1.6;

}
/*==========================
  DISPATCH CENTRE
==========================*/

.dispatch-section{

padding:35px 0 55px;

}

.dispatch-card{

max-width:700px;

margin:auto;

padding:20px 28px;

display:flex;

align-items:center;

gap:20px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,210,77,.18);

border-radius:18px;

backdrop-filter:blur(10px);

}

.dispatch-icon{

width:58px;

height:58px;

min-width:58px;

border-radius:50%;

background:#FFD24D;

display:flex;

align-items:center;

justify-content:center;

color:#13264c;

font-size:24px;

}

.dispatch-badge{

display:inline-block;

font-size:11px;

font-weight:700;

letter-spacing:1px;

color:#FFD24D;

margin-bottom:6px;

}

.dispatch-content h5{

margin:0;

font-size:22px;

font-weight:800;

color:#fff;

}

.dispatch-content p{

margin:8px 0 12px;

font-size:15px;

line-height:1.6;

color:#d7e1f5;

}

.dispatch-company{

display:inline-block;

padding:6px 16px;

border-radius:30px;

background:#FFD24D;

color:#13264c;

font-weight:800;

font-size:13px;

letter-spacing:.5px;

}

@media(max-width:768px){

.dispatch-card{

flex-direction:column;

text-align:center;

padding:22px 20px;

}

.dispatch-content h5{

font-size:20px;

}

.dispatch-content p{

font-size:14px;

}

}
.contact-section{

padding:20px 0 60px;

}

.contact-section h2{

color:#FFD24D;

font-weight:800;

font-size:34px;

margin-bottom:10px;

}

.contact-section p{

color:#dbe4f7;

font-size:18px;

max-width:650px;

margin:0 auto 30px;

line-height:1.7;

}

.contact-section .hero-phone{

max-width:700px;

margin:auto;

}
/* ===== HERO PHONE BUTTON CENTER OVERRIDE ===== */

.contact-section .hero-phone,
.hero-phone{

display:flex !important;
align-items:center !important;
justify-content:center !important;

margin:0 auto !important;

width:fit-content !important;
max-width:95% !important;

float:none !important;
left:auto !important;
right:auto !important;

}

.contact-section{

text-align:center !important;

}

.contact-section .container{

display:flex !important;
justify-content:center !important;
align-items:center !important;
flex-direction:column !important;

}

@media (max-width:768px){

.hero-phone{

width:95% !important;

}

}
/*=========================================
            FOOTER
==========================================*/

.site-footer{

padding:25px 15px;

background:#08172d;

border-top:1px solid rgba(255,210,77,.15);

text-align:center;

}

.site-footer p{

margin:0;

font-size:15px;

color:#cdd7e8;

font-weight:500;

letter-spacing:.3px;

line-height:1.7;

}

@media (max-width:768px){

.site-footer{

padding:20px 15px;

}

.site-footer p{

font-size:13px;

line-height:1.6;

}

}
/* ===== CONTACT BUTTON MOBILE FIX ===== */

@media (max-width:768px){

.hero-phone{

width:88% !important;
max-width:340px !important;

margin:0 auto !important;

padding:14px 22px !important;

border-radius:20px !important;

justify-content:center !important;

}

.hero-phone-icon{

width:54px !important;
height:54px !important;
min-width:54px !important;

}

.hero-phone-icon i{

font-size:24px !important;

}

.phone-number{

font-size:16px !important;

font-weight:700 !important;

letter-spacing:.5px !important;

white-space:nowrap;

}

}
/*=========================================
        REVIEW CTA BUTTON
=========================================*/

.review-order-btn{

display:inline-flex;
align-items:center;
justify-content:center;
gap:12px;

min-width:340px;
height:68px;

padding:0 38px;

background:linear-gradient(180deg,#FFD54F 0%,#FFB300 100%);

border:2px solid #FFD54F;

border-radius:50px;

color:#0B2B61;

font-size:22px;
font-weight:800;
letter-spacing:.4px;

text-decoration:none;
text-transform:uppercase;

box-shadow:
0 12px 30px rgba(255,193,7,.35);

transition:all .3s ease;

cursor:pointer;

}

.review-order-btn:hover{

background:linear-gradient(180deg,#FFE082 0%,#FFC107 100%);

transform:translateY(-4px);

box-shadow:
0 18px 40px rgba(255,193,7,.45);

color:#0B2B61;

text-decoration:none;

}

.review-order-btn:active{

transform:scale(.98);

}

.review-order-btn i{

font-size:24px;

}

/* Mobile */

@media (max-width:768px){

.review-order-btn{

width:100%;
max-width:360px;

min-width:unset;

height:58px;

font-size:17px;

padding:0 20px;

}

}
/*=========================================
        REVIEW CTA OVERRIDE
=========================================*/

.review-cta{

margin-top:20px !important;   /* Move closer to reviews */
padding-top:0 !important;

display:flex !important;
flex-direction:column;
align-items:center;
justify-content:center;

text-align:center;

}

.review-cta-text{

max-width:650px;

margin:0 auto 22px !important;

font-size:30px;
font-weight:700;

line-height:1.45;

color:#ffffff;

letter-spacing:.3px;

text-shadow:0 2px 12px rgba(0,0,0,.35);

}

.review-cta-text strong{

display:block;

margin-top:8px;

font-size:36px;

font-weight:800;

color:#FFD54F;

}

.review-order-btn{

display:inline-flex !important;

align-items:center;
justify-content:center;

margin:0 auto !important;

min-width:420px;

height:74px;

padding:0 45px;

font-size:28px;

font-weight:800;

}

/* Mobile */

@media (max-width:768px){

.review-cta{

margin-top:15px !important;

}

.review-cta-text{

font-size:22px;

padding:0 20px;

}

.review-cta-text strong{

font-size:26px;

}

.review-order-btn{

width:92%;

min-width:unset;

height:62px;

font-size:20px;

}

}
/* ===== REVIEW CTA FIX ===== */

.review-cta{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;

    margin:25px auto 0 !important;
    padding:0 20px !important;
}

.review-cta-text{
    width:100%;
    max-width:650px;
    margin:0 auto 22px !important;

    color:#fff;
    font-size:clamp(22px,2vw,34px);
    font-weight:700;
    line-height:1.45;
}

.review-order-btn{

    display:inline-flex !important;

    align-items:center;
    justify-content:center;

    width:100%;
    max-width:520px;

    margin:0 auto !important;

    padding:18px 30px !important;

    white-space:nowrap !important;

    font-size:28px !important;

    font-weight:800;

    border-radius:60px;
}

/* Mobile */

@media (max-width:768px){

.review-order-btn{

    max-width:320px;

    font-size:20px !important;

    padding:16px 22px !important;

}

.review-cta-text{

    font-size:18px !important;

}

}
/* ===== REVIEW CTA ===== */

.review-cta{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;

    width:100%;
    max-width:700px;

    margin:35px auto 0;
    padding:0 20px;
}

.review-cta-text{

    margin:0 0 18px;

    color:#E8EDF8;

    font-size:32px;
    font-weight:700;
    line-height:1.35;

}

.review-cta-text strong{

    display:block;

    color:#FFD54F;

    font-size:36px;

    margin-top:6px;

}

.review-order-btn{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    gap:14px;

    padding:18px 42px;

    margin:0 auto;

    width:auto;
    max-width:100%;

    white-space:nowrap;

    border-radius:60px;

    font-size:26px;
    font-weight:800;

}

/* ===== MOBILE REVIEW BUTTON FIX ===== */

@media (max-width:768px){

.review-order-btn{

display:flex !important;
align-items:center;
justify-content:center;

width:100% !important;
max-width:320px !important;

margin:0 auto !important;

padding:16px 20px !important;

font-size:18px !important;

white-space:normal !important;

text-align:center;

line-height:1.3;

}

.review-order-btn i{

margin-right:10px;

}

}
.review-cta{

display:flex;
flex-direction:column;
align-items:center;
justify-content:center;

text-align:center;

margin:30px auto 0;

width:100%;

}

.review-order-btn{

display:inline-flex;
align-items:center;
justify-content:center;

margin:0 auto;

}
/* ===== MOVE CTA CLOSER TO REVIEWS ===== */

.review-divider{
    margin-bottom:20px !important;
}

.review-cta{

    margin-top:8px !important;
    padding-top:0 !important;

}

.review-cta-text{

    margin-bottom:18px !important;

}
/* ===== REDUCE GAP AFTER LAST REVIEW ===== */

.customer-reviews .row.g-4{
    margin-bottom:0 !important;
}

.review-divider{
    margin:15px 0 20px !important;
}

.review-cta{
    margin-top:0 !important;
    padding-top:0 !important;
}

.review-cta-text{
    margin-top:0 !important;
}
/* ===== REDUCE GAP BETWEEN COLOUR CHART & CTA ===== */

.colour-section{
    padding-bottom:25px !important;
    margin-bottom:0 !important;
}

.colour-wrapper{
    padding-bottom:20px !important;
    margin-bottom:0 !important;
}

.colour-image-box{
    margin-bottom:20px !important;
}

.colour-bottom{
    margin-bottom:20px !important;
}

.universal-order-cta{
    margin-top:0 !important;
    padding-top:20px !important;
}
/* Phone validation */

.phone-validation-error{
    color:#ff5b5b;
    font-size:14px;
    font-weight:600;
    margin-top:8px;
    display:block;
}

.input-error{
    border:2px solid #ff5b5b !important;
    box-shadow:0 0 10px rgba(255,91,91,.25);
}

/* =========================================================
   PREMIUM RESPONSIVE REFINEMENT — 2026
   Keeps the established Nyota navy, electric-blue and gold theme.
========================================================= */

:root{
    --nyota-navy:#071a3b;
    --nyota-blue:#18bcec;
    --nyota-gold:#f7c843;
    --nyota-gold-deep:#d9a91d;
    --nyota-ink:#10213c;
    --nyota-surface:#0d2245;
    --nyota-white:#f8fbff;
}

html{
    scroll-behavior:smooth;
    overflow-x:hidden;
}

body{
    min-width:320px;
    overflow-x:hidden;
    font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif !important;
    background:#071a3b !important;
    color:#eaf2ff;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

img{
    max-width:100%;
}

button,
input,
select{
    font:inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible{
    outline:3px solid #75ddff !important;
    outline-offset:3px;
}

.hero-premium{
    padding:22px 18px 30px !important;
    background:
        radial-gradient(circle at 50% -20%,rgba(24,188,236,.28),transparent 46%),
        linear-gradient(145deg,#07152f 0%,#0a234d 58%,#071a3b 100%) !important;
    border-bottom:1px solid rgba(247,200,67,.35);
}

.hero-container{
    width:min(100%,1100px) !important;
    margin:0 auto !important;
    padding:0 !important;
}

.hero-logo{
    display:block;
    width:clamp(190px,24vw,290px) !important;
    height:auto !important;
    margin:0 auto 14px !important;
    object-fit:contain;
}

.hero-tagline{
    margin:0 auto 10px !important;
    color:#9fddff !important;
    font-size:clamp(14px,1.5vw,18px) !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase;
}

.hero-subtitle{
    width:max-content !important;
    max-width:100% !important;
    min-height:0 !important;
    margin:12px auto 18px !important;
    padding:11px 22px !important;
    border:1px solid rgba(247,200,67,.55) !important;
    border-radius:999px !important;
    background:rgba(4,18,43,.72) !important;
    color:#fff !important;
    font-size:clamp(18px,2.4vw,28px) !important;
    font-weight:800 !important;
    line-height:1.25 !important;
    box-shadow:0 12px 30px rgba(0,0,0,.24) !important;
}

.hero-subtitle::before,
.hero-subtitle::after{
    display:none !important;
}

.hero-trust{
    display:flex !important;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px !important;
    margin:0 auto !important;
}

.hero-trust > div{
    flex:0 1 auto;
    min-width:180px;
    margin:0 !important;
    padding:11px 16px !important;
    border:1px solid rgba(255,255,255,.13) !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.065) !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:750 !important;
    box-shadow:none !important;
    backdrop-filter:blur(8px);
}

.page-intro{
    padding:30px 18px 28px;
    text-align:center;
    background:linear-gradient(180deg,#0a2349 0%,#071a3b 100%);
}

.page-heading{
    max-width:960px;
    margin:0 auto 8px !important;
    color:#fff !important;
    font-size:clamp(26px,4.5vw,48px) !important;
    font-weight:900 !important;
    line-height:1.05 !important;
    letter-spacing:-.025em;
}

.page-heading-subtitle{
    margin:0;
    color:#a9c3e7;
    font-size:clamp(15px,2vw,19px);
}

.page-notice{
    width:min(100%,720px);
    margin:20px auto 0;
    padding:13px 16px;
    border:1px solid rgba(255,111,111,.55);
    border-radius:14px;
    background:rgba(118,20,34,.42);
    color:#fff;
    font-weight:700;
}

.container-fluid.shop{
    padding:clamp(24px,4vw,54px) 18px !important;
    background:#071a3b !important;
}

.container-fluid.shop > .container{
    max-width:1180px;
    padding:0 !important;
}

.single-product{
    overflow:hidden;
    padding:clamp(22px,4vw,44px) !important;
    border:1px solid rgba(247,200,67,.25) !important;
    border-radius:28px !important;
    background:
        radial-gradient(circle at 10% 10%,rgba(24,188,236,.11),transparent 32%),
        linear-gradient(145deg,#10264a,#091932) !important;
    box-shadow:0 28px 70px rgba(0,0,0,.34) !important;
}

.product-image-frame{
    aspect-ratio:1/1;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.1);
    border-radius:22px !important;
    background:linear-gradient(145deg,#fff,#eaf1f8);
    box-shadow:0 20px 45px rgba(0,0,0,.3);
}

.product-image-frame > img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    border-radius:20px !important;
}

.container-fluid.shop .single-product h4{
    margin:0 0 18px !important;
    color:#c7ebff !important;
    -webkit-text-fill-color:#c7ebff !important;
    font-size:clamp(27px,3.2vw,40px) !important;
    font-weight:900 !important;
    letter-spacing:-.025em !important;
    line-height:1.08 !important;
}

.single-product h3,
.single-product h3.text-primary,
.single-product h3.text-danger{
    color:var(--nyota-gold) !important;
    -webkit-text-fill-color:var(--nyota-gold) !important;
    font-size:clamp(36px,4.7vw,58px) !important;
    letter-spacing:-.035em !important;
}

.single-product .badge{
    min-height:34px;
    padding:7px 12px !important;
    white-space:normal;
    line-height:1.2;
}

.single-product button.btn,
.single-product .btn-order-now,
.order-modal-submit,
.premium-order-modal button[type="submit"],
.universal-order-btn{
    width:100% !important;
    max-width:520px !important;
    min-height:58px !important;
    margin:0 auto !important;
    padding:15px 24px !important;
    border:1px solid #ffe184 !important;
    border-radius:17px !important;
    background:linear-gradient(135deg,#ffe36d 0%,#f7c843 48%,#d9a91d 100%) !important;
    color:#0b2145 !important;
    -webkit-text-fill-color:#0b2145 !important;
    font-size:18px !important;
    font-weight:900 !important;
    letter-spacing:.04em !important;
    line-height:1.15 !important;
    text-align:center;
    box-shadow:0 14px 34px rgba(217,169,29,.32) !important;
    transition:transform .2s ease,box-shadow .2s ease,filter .2s ease !important;
}

.single-product button.btn:hover,
.single-product .btn-order-now:hover,
.order-modal-submit:hover,
.premium-order-modal button[type="submit"]:hover,
.universal-order-btn:hover{
    transform:translateY(-2px) !important;
    filter:brightness(1.04);
    box-shadow:0 18px 38px rgba(217,169,29,.42) !important;
}

button:disabled{
    cursor:wait !important;
    opacity:.72 !important;
    transform:none !important;
}

.single-product .owl-nav button{
    width:46px !important;
    height:46px !important;
    border:1px solid rgba(247,200,67,.6) !important;
    border-radius:50% !important;
    background:rgba(7,26,59,.9) !important;
    color:#fff !important;
}

.single-product .single-carousel .owl-dots{
    gap:8px !important;
    margin-top:14px !important;
}

.single-product .single-carousel .owl-dots .owl-dot img{
    width:58px !important;
    height:58px !important;
    padding:2px !important;
    object-fit:cover !important;
}

.product-features{
    gap:10px !important;
    margin:16px 0 !important;
}

.product-features > span{
    min-height:58px !important;
    padding:13px 16px !important;
    border-color:rgba(159,216,255,.18) !important;
    background:rgba(255,255,255,.045) !important;
}

.product-features > span b{
    color:#f3f7fc !important;
    font-size:16px !important;
}

.order-modal .modal-content,
.premium-order-modal{
    overflow:hidden;
    border:1px solid rgba(247,200,67,.38) !important;
    border-radius:24px !important;
    background:linear-gradient(160deg,#102951,#071a37) !important;
    box-shadow:0 30px 90px rgba(0,0,0,.6) !important;
}

.order-modal .modal-header,
.premium-order-modal .modal-header{
    position:relative;
    padding:20px 22px !important;
    border-bottom:1px solid rgba(255,255,255,.11) !important;
    background:rgba(255,255,255,.035) !important;
}

.order-modal .modal-body,
.premium-order-modal .modal-body{
    padding:22px !important;
}

.order-modal .form-control,
.premium-order-modal .form-control{
    min-height:56px !important;
    border:1px solid rgba(159,216,255,.28) !important;
    border-radius:13px !important;
    background:#f8fbff !important;
    color:#0b2145 !important;
    font-size:16px !important;
}

.order-modal .form-floating > label{
    color:#52647d !important;
}

.order-modal .btn-close,
.premium-order-modal .btn-close{
    flex:0 0 auto;
    margin:0 !important;
    padding:12px !important;
    border-radius:50%;
    background-color:#fff;
    opacity:.9;
}

.colour-mobile-gallery{
    display:none;
}

.colour-image-box{
    overflow:hidden;
    border:1px solid rgba(247,200,67,.45) !important;
    border-radius:24px !important;
    box-shadow:0 25px 60px rgba(0,0,0,.34) !important;
}

.colour-image-box img{
    display:block;
    width:100%;
    height:auto;
}

.best-selling-card,
.dispatch-card{
    height:100%;
}

@media (max-width:767.98px){
    .hero-premium{
        padding:14px 14px 22px !important;
    }

    .hero-logo{
        width:180px !important;
        margin-bottom:8px !important;
    }

    .hero-tagline{
        font-size:12px !important;
        letter-spacing:.08em !important;
    }

    .hero-subtitle{
        width:100% !important;
        margin:10px auto 14px !important;
        padding:10px 12px !important;
        font-size:17px !important;
        white-space:normal;
    }

    .hero-trust{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:6px !important;
    }

    .hero-trust > div{
        min-width:0;
        padding:9px 5px !important;
        font-size:11px !important;
        line-height:1.2;
    }

    .hero-trust i{
        display:block;
        margin:0 auto 5px !important;
    }

    .page-intro{
        padding:22px 15px 20px;
    }

    .page-heading{
        font-size:27px !important;
    }

    .container-fluid.shop{
        padding:18px 10px !important;
    }

    .single-product{
        padding:15px !important;
        border-radius:20px !important;
    }

    .product-image-frame{
        border-radius:16px !important;
    }

    .container-fluid.shop .single-product h4{
        margin-top:4px !important;
        font-size:27px !important;
        text-align:center;
    }

    .single-product .d-flex.align-items-baseline{
        flex-wrap:wrap;
    }

    .single-product .badge{
        font-size:12px !important;
    }

    .single-product button.btn,
    .single-product .btn-order-now{
        width:100% !important;
        max-width:none !important;
        min-height:58px !important;
        margin:0 !important;
        padding:15px 14px !important;
        font-size:18px !important;
        white-space:normal !important;
    }

    .product-trust-badges .row{
        gap:6px !important;
    }

    .product-trust-badges .col-4{
        flex:0 0 calc(33.333% - 4px) !important;
        width:calc(33.333% - 4px) !important;
        max-width:calc(33.333% - 4px) !important;
        min-height:86px !important;
        padding:8px 4px !important;
    }

    .product-trust-badges small{
        font-size:10.5px !important;
        overflow-wrap:anywhere;
    }

    .single-product .single-carousel .owl-dots{
        justify-content:flex-start !important;
        overflow-x:auto;
        padding:4px 2px 8px !important;
        scroll-snap-type:x proximity;
    }

    .single-product .single-carousel .owl-dots .owl-dot{
        flex:0 0 auto;
        scroll-snap-align:start;
    }

    .single-product .single-carousel .owl-dots .owl-dot img{
        width:52px !important;
        height:52px !important;
    }

    .order-modal .modal-dialog{
        width:auto !important;
        max-width:none !important;
        height:calc(100% - 16px);
        margin:8px !important;
    }

    .order-modal .modal-content{
        max-height:100%;
        border-radius:19px !important;
    }

    .order-modal .modal-header,
    .premium-order-modal .modal-header{
        padding:15px 16px !important;
    }

    .order-modal .modal-body,
    .premium-order-modal .modal-body{
        padding:16px !important;
    }

    .order-modal-product-name{
        padding-right:8px;
        font-size:18px !important;
        line-height:1.2;
    }

    .order-modal-product-price{
        font-size:18px !important;
    }

    .colour-chart-desktop{
        display:none !important;
    }

    .colour-mobile-gallery{
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
    }

    .colour-mobile-card{
        overflow:hidden;
        margin:0;
        border:1px solid rgba(247,200,67,.5);
        border-radius:18px;
        background:#061b3c;
        box-shadow:0 16px 36px rgba(0,0,0,.3);
    }

    .colour-mobile-card img{
        display:block;
        width:100%;
        height:auto;
    }

    .colour-mobile-card figcaption{
        padding:11px 14px;
        color:#fff;
        font-size:13px;
        font-weight:800;
        letter-spacing:.04em;
        text-align:center;
    }

    .colour-wrapper{
        padding:24px 12px !important;
    }

    .colour-title{
        font-size:28px !important;
    }
}

/* Premium storefront polish and reliable order-sheet layout */
:root{
    --nyota-ink:#071a37;
    --nyota-blue:#0b5ed7;
    --nyota-cyan:#18bcec;
    --nyota-gold:#f7c843;
}

body{
    color:#172033;
    font-size:16px;
    line-height:1.65;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
}

.single-product{
    border:1px solid #dce5f0 !important;
    background:#fff !important;
    box-shadow:0 22px 60px rgba(7,26,55,.11) !important;
}

.single-product h4{
    color:var(--nyota-ink) !important;
    font-size:clamp(24px,2.4vw,34px) !important;
    font-weight:900 !important;
    line-height:1.18 !important;
}

.product-hook{
    max-width:560px;
    margin:-2px 0 14px;
    color:#3f4d63;
    font-size:16px;
    font-weight:650;
    line-height:1.55;
}

.single-product p,.single-product li,.single-product small{
    opacity:1;
}

.single-product .btn{
    min-height:56px;
    border-radius:8px !important;
    letter-spacing:0 !important;
}

.product-image-frame{
    background:#f7f9fc !important;
    box-shadow:inset 0 0 0 1px #e1e8f0;
}

.product-image-frame img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:contain;
}

.order-modal .modal-dialog,
#generalOrderModal .modal-dialog{
    width:min(680px,calc(100vw - 24px)) !important;
    max-width:680px !important;
    height:auto !important;
    max-height:calc(100dvh - 24px) !important;
    margin:12px auto !important;
}

.order-modal .modal-content,
#generalOrderModal .modal-content,
.premium-order-modal{
    display:flex !important;
    max-height:calc(100dvh - 24px) !important;
    overflow:hidden !important;
    border:1px solid rgba(255,255,255,.15) !important;
    border-radius:16px !important;
}

#generalOrderModal .premium-order-modal > form{
    display:flex;
    min-height:0;
    flex:1;
    flex-direction:column;
}

.order-modal .modal-header,
#generalOrderModal .modal-header{
    flex:0 0 auto;
}

.order-modal .modal-body,
#generalOrderModal .modal-body{
    min-height:0 !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
}

#generalOrderModal .modal-footer{
    position:relative !important;
    flex:0 0 auto;
    margin:0 !important;
    padding:14px 18px max(14px,env(safe-area-inset-bottom)) !important;
}

.order-modal .form-floating > .form-control{
    min-height:58px !important;
    height:58px !important;
    padding:1.45rem .95rem .35rem !important;
    background:#fff !important;
}

.order-modal .form-floating > label{
    width:100%;
    height:100%;
    padding:1rem .95rem !important;
    pointer-events:none;
}

.order-modal-submit,
#generalOrderModal button[type="submit"]{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:56px !important;
    border-radius:8px !important;
    font-size:17px !important;
    font-weight:900 !important;
    line-height:1.2 !important;
}

@media (max-width:767.98px){
    body{font-size:16px;line-height:1.6}
    .shop{padding-top:28px !important;padding-bottom:28px !important}
    .shop .container{padding-top:0 !important;padding-bottom:0 !important}
    .single-product{padding:16px !important;border-radius:12px !important}
    .single-product h4{font-size:25px !important}
    .product-hook{font-size:15px;line-height:1.5}
    .order-modal .modal-dialog,
    #generalOrderModal .modal-dialog{
        width:calc(100vw - 12px) !important;
        max-height:calc(100dvh - 12px) !important;
        margin:6px auto !important;
    }
    .order-modal .modal-content,
    #generalOrderModal .modal-content,
    .premium-order-modal{
        max-height:calc(100dvh - 12px) !important;
        border-radius:12px !important;
    }
    .order-modal .modal-header,
    #generalOrderModal .modal-header{padding:12px 14px !important}
    .order-modal .modal-body,
    #generalOrderModal .modal-body{padding:12px 14px !important}
    .order-product-preview{grid-template-columns:70px minmax(0,1fr) !important}
    .order-product-preview > img{width:70px !important;height:70px !important}
    .order-modal .row.g-3{--bs-gutter-y:10px}
    #generalOrderModal .modal-footer{padding:10px 14px max(10px,env(safe-area-inset-bottom)) !important}
}

@media (min-width:768px) and (max-width:1199.98px){
    .single-product{
        padding:28px !important;
    }
}

@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{
        scroll-behavior:auto !important;
        animation-duration:.01ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.01ms !important;
    }
}

/* =========================================================
   OFFICIAL COLOUR CHART + CLEAR ORDER PREVIEWS — V4
========================================================= */

.order-modal-product-name,
.premium-order-modal h4{
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    font-weight:900 !important;
    letter-spacing:-.015em;
}

.order-modal-product-price,
.selected-price,
.price-label{
    color:#f7c843 !important;
    -webkit-text-fill-color:#f7c843 !important;
    font-weight:900 !important;
}

.order-modal-intro,
.premium-order-modal .order-subtitle,
.order-footer-note{
    color:#e8f1ff !important;
    opacity:1 !important;
    line-height:1.5 !important;
}

.order-product-preview{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    align-items:center;
    gap:16px;
    width:100%;
    margin:0 0 18px;
    padding:12px;
    border:1px solid rgba(117,221,255,.6);
    border-radius:17px;
    background:#f7fbff;
    box-shadow:0 12px 28px rgba(0,0,0,.22);
}

.order-product-preview[hidden]{
    display:none !important;
}

.order-product-preview > img{
    display:block;
    width:112px;
    height:112px;
    border:1px solid #d9e4f1;
    border-radius:13px;
    background:#ffffff;
    object-fit:contain;
}

.order-product-preview-copy{
    min-width:0;
}

.order-product-preview-copy span{
    display:block;
    margin-bottom:4px;
    color:#167ca6 !important;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    line-height:1.25;
    text-transform:uppercase;
}

.order-product-preview-copy strong{
    display:block;
    color:#0b2145 !important;
    font-size:20px;
    font-weight:900;
    line-height:1.2;
    overflow-wrap:anywhere;
}

.order-product-preview-copy small{
    display:block;
    margin-top:5px;
    color:#9b6900 !important;
    font-size:16px;
    font-weight:900;
}

.order-product-preview-dynamic{
    margin-top:14px;
}

.order-field-label{
    display:block;
    margin:16px 0 7px;
    color:#ffffff !important;
    font-size:14px;
    font-weight:850;
    line-height:1.25;
}

.premium-order-modal .modal-body > .order-field-label:first-child{
    margin-top:0;
}

.order-modal .form-control,
.premium-order-modal .form-control{
    color:#071a3b !important;
    -webkit-text-fill-color:#071a3b !important;
    opacity:1 !important;
    font-weight:700 !important;
}

.order-modal .form-control::placeholder,
.premium-order-modal .form-control::placeholder{
    color:#66758a !important;
    -webkit-text-fill-color:#66758a !important;
    opacity:1 !important;
}

.order-modal .form-floating > label{
    color:#43536a !important;
    -webkit-text-fill-color:#43536a !important;
    opacity:1 !important;
    font-weight:750 !important;
}

.premium-order-modal select.form-control{
    color:#071a3b !important;
    background-color:#ffffff !important;
}

.premium-order-modal select.form-control option{
    color:#071a3b !important;
    background:#ffffff !important;
}

.selected-price-box{
    border:1px solid rgba(247,200,67,.45) !important;
    background:rgba(0,0,0,.19) !important;
}

.selected-old-price,
.selected-old-price del{
    color:#e9eff8 !important;
}

.order-modal .modal-footer,
.premium-order-modal .modal-footer{
    border-top:1px solid rgba(255,255,255,.11) !important;
    background:#071a37 !important;
}

.colour-chart-mobile-hint{
    display:none;
}

.colour-chart-viewport{
    position:relative;
    width:100%;
    overflow:hidden;
    overscroll-behavior-x:contain;
}

.colour-chart-canvas{
    width:100%;
}

.colour-chart-canvas img{
    display:block;
    width:100%;
    max-width:none;
    height:auto;
}

@media (max-width:767.98px){
    .order-modal .modal-header{
        align-items:flex-start !important;
    }

    .order-modal .modal-title{
        min-width:0;
        padding-right:8px;
    }

    .order-product-preview{
        grid-template-columns:88px minmax(0,1fr);
        gap:11px;
        margin-bottom:14px;
        padding:9px;
        border-radius:14px;
    }

    .order-product-preview > img{
        width:88px;
        height:88px;
        border-radius:11px;
    }

    .order-product-preview-copy span{
        font-size:9.5px;
        letter-spacing:.055em;
    }

    .order-product-preview-copy strong{
        font-size:17px;
    }

    .order-product-preview-copy small{
        font-size:14px;
    }

    .order-field-label{
        margin-top:13px;
        font-size:13px;
    }

    .order-modal .form-control,
    .premium-order-modal .form-control{
        min-height:58px !important;
        font-size:16px !important;
    }

    .order-modal-intro,
    .premium-order-modal .order-subtitle{
        font-size:13px !important;
    }

    .colour-chart-mobile-hint{
        display:flex;
        align-items:center;
        justify-content:center;
        margin:0 0 10px;
        padding:10px 12px;
        border:1px solid rgba(117,221,255,.45);
        border-radius:12px;
        background:rgba(24,188,236,.09);
        color:#ffffff;
        font-size:12px;
        font-weight:850;
        line-height:1.3;
        text-align:center;
    }

    .colour-chart-viewport{
        overflow-x:auto !important;
        overflow-y:hidden !important;
        border-radius:17px !important;
        scrollbar-width:thin;
        scrollbar-color:#f7c843 #0a2349;
        -webkit-overflow-scrolling:touch;
    }

    .colour-chart-viewport::-webkit-scrollbar{
        height:9px;
    }

    .colour-chart-viewport::-webkit-scrollbar-track{
        background:#0a2349;
    }

    .colour-chart-viewport::-webkit-scrollbar-thumb{
        border:2px solid #0a2349;
        border-radius:999px;
        background:#f7c843;
    }

    .colour-chart-canvas{
        width:920px !important;
        min-width:920px !important;
    }

    .colour-chart-canvas img{
        width:920px !important;
        min-width:920px !important;
    }
}

/* Final contrast safeguards: these must remain last in the stylesheet. */
.container-fluid.shop .single-product h4,
.container-fluid.shop .single-product h4.fw-bold{
    color:#071a37 !important;
    -webkit-text-fill-color:#071a37 !important;
    opacity:1 !important;
    text-shadow:none !important;
}

.container-fluid.shop .single-product .product-hook{
    color:#35445c !important;
    -webkit-text-fill-color:#35445c !important;
    opacity:1 !important;
    text-shadow:none !important;
}

.container-fluid.shop .single-product h3,
.container-fluid.shop .single-product h3.text-primary,
.container-fluid.shop .single-product h3.text-danger{
    color:#c88a00 !important;
    -webkit-text-fill-color:#c88a00 !important;
    opacity:1 !important;
    text-shadow:none !important;
}

.container-fluid.shop .single-product small.text-primary,
.container-fluid.shop .single-product .fa-shipping-fast{
    color:#075e9e !important;
    -webkit-text-fill-color:#075e9e !important;
    opacity:1 !important;
    text-shadow:none !important;
}

.container-fluid.shop .single-product .text-success{
    color:#146c43 !important;
    -webkit-text-fill-color:#146c43 !important;
    opacity:1 !important;
    text-shadow:none !important;
}

.container-fluid.shop .single-product span[style*="line-through"]{
    color:#5d6878 !important;
    -webkit-text-fill-color:#5d6878 !important;
    opacity:1 !important;
}

.container-fluid.shop .product-trust-badges,
.container-fluid.shop .product-trust-badges small{
    color:#1d2a3e !important;
    -webkit-text-fill-color:#1d2a3e !important;
    opacity:1 !important;
    text-shadow:none !important;
}

.container-fluid.shop .product-features{
    color:#1d2a3e !important;
    -webkit-text-fill-color:#1d2a3e !important;
    opacity:1 !important;
}

.container-fluid.shop .product-features b{
    -webkit-text-fill-color:#087fa8 !important;
    text-shadow:none !important;
}

.model-selector-label{
    margin-bottom:9px !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    font-size:15px !important;
}

#generalProduct{
    width:100% !important;
    min-height:58px !important;
    border:2px solid #f7c843 !important;
    border-radius:10px !important;
    padding:0 44px 0 14px !important;
    color:#071a37 !important;
    -webkit-text-fill-color:#071a37 !important;
    background-color:#ffffff !important;
    font-size:16px !important;
    font-weight:800 !important;
    opacity:1 !important;
}

@media (max-width:767.98px){
    .container-fluid.shop .single-product h4,
    .container-fluid.shop .single-product h4.fw-bold{
        font-size:25px !important;
        line-height:1.22 !important;
    }

    .container-fluid.shop .single-product .product-hook{
        font-size:15px !important;
        line-height:1.5 !important;
    }
}
