/* ************************************************************
:: Template Name: Prolend - Product Landing Page Template
:: Version: 1.0.0
:: Created: 13 March 2020
************************************************************ 
*
*
******* :: INDEX OF CSS :: *******
:: 1.0 WEB FONTS
:: 2.0 IMPORT ALL CSS
:: 3.0 GLOBAL CSS
:: 4.0 COMMON CSS
:: 5.0 PRELOADER CSS
:: 6.0 SCROLL TO TOP AREA CSS
:: 7.0 HEADER AREA CSS
:: 8.0 WELCOME AREA CSS
    :: 8.1 WELCOME AREA HOMEPAGE-2 CSS
    :: 8.2 WELCOME AREA HOMEPAGE-3 CSS
    :: 8.3 WELCOME AREA HOMEPAGE-4 CSS
    :: 8.4 WELCOME AREA HOMEPAGE-6 CSS
:: 9.0 PROMO VIDEO AREA CSS
:: 10.0 FEATURES AREA CSS
:: 11.0 SERVICE AREA CSS
:: 12.0 DISCOVER AREA CSS
:: 13.0 PRODUCTS AREA CSS
:: 14.0 COMPARISON AREA CSS
:: 15.0 REVIEWS AREA CSS
:: 16.0 FAQ AREA CSS
:: 17.0 SUBSCRIBE AREA CSS
:: 18.0 BLOG AREA CSS
:: 19.0 BREADCRUMB AREA CSS
:: 20.0 BLOG PAGE AREA CSS
:: 21.0 BLOG PAGE DETAILS AREA CSS
:: 22.0 CONTACT AREA CSS
:: 23.0 FOOTER AREA CSS
:: 24.0 ERROR AREA CSS
:: 25.0 COMING SOON AREA CSS
:: 26.0 PREVIEW AREA CSS
****************************** */

/* ******************************
:: 1.0 WEB FONTS
****************************** */
/* @import url('https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700&display=swap'); */

/* ******************************
:: 2.0 IMPORT ALL CSS
****************************** */
@import url(bootstrap.min.css);
@import url(all.min.css);
@import url(flaticon.css);
@import url(animate.min.css);
@import url(aos.css);
@import url(owl.carousel.min.css);
@import url(slick.css);
@import url(jquery.fancybox.min.css);


/* Gilroy Thin */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}

/* Gilroy UltraLight */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-UltraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

/* Gilroy Light */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

/* Gilroy Regular */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

/* Gilroy Medium */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

/* Gilroy SemiBold */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Semibold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

/* Gilroy Bold / ExtraBold */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Extrabold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

/* Gilroy Heavy */
@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Heavy.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}


/* ******************************
:: 3.0 GLOBAL CSS
****************************** */
* {
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Gilroy', sans-serif;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    color: #000000;
}

.main {
    background: #fff;
}

section,
.section {
    position: relative;
}

.container {
    width: 100%;
    margin: 0 auto;
}

h1,
h2,
h3,
.h3,
h4,
h5,
h6 {
    font-weight: 600;
    color: #222;
    margin-bottom: 0;
}

h1 {
    font-size: 40px;
    font-weight: 600;
    line-height: 1.2;
}

h2 {
    font-size: 36px;
    line-height: 1.3;
}

@media (min-width: 992px) {
    .promo-text {
        font-size: 50px;
    }
}

h3,
.h3 {
    font-size: 20px;
    line-height: 1.2;
}

h4 {
    font-size: 20px;
}

h5 {
    font-size: 16px;
}

h6 {
    font-size: 14px;
    font-weight: 400;
}

p {
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    color: #565656;
    margin-bottom: 0;
}

a {
    color: #444;
    -webkit-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

a:hover,
a:focus {
    color: #f16522;
}

a,
a:hover,
a:focus,
.btn:focus {
    text-decoration: none;
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.text-body>a {
    text-decoration: underline;
    color: #212529;
}

ol,
ul {
    margin: 0;
    padding: 0;
}

ol li,
ul li {
    list-style: none;
}

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

/* ******************************
:: 4.0 COMMON CSS
****************************** */
.fw-3 {
    font-weight: 300;
}

.fw-4 {
    font-weight: 400;
}

.fw-5 {
    font-weight: 500;
}

.fw-6 {
    font-weight: 600;
}

.fw-7 {
    font-weight: 700;
}

.op-5 {
    opacity: 0.5;
}

.avatar-sm {
    height: 3rem;
    width: 3rem;
}

.avatar-md {
    height: 4rem;
    width: 4rem;
}

.avatar-lg {
    height: 5rem;
    width: 5rem;
}

.text-underlined,
.text-underlined:hover,
.text-underlined:focus {
    text-decoration: underline;
}

.color-primary {
    color: #0167da;
}

.text-primary {
    color: #f16522 !important;
}

.text-secondary {
    color: #666 !important;
}

.dark-bg {
    background-color: #131418;
}

.featured-icon>span::before {
    font-size: 3rem;
    line-height: 1;
    color: #f16522;
    margin: 0;
}

.radius-100 {
    border-radius: 100px !important;
}

.h-100vh {
    height: 100vh;
}

.inner-pages .h-100vh {
    height: 100vh !important;
}

.owl-carousel .owl-item img {
    width: auto;
}

.owl-prev:focus,
.owl-next:focus {
    outline: none;
}

/*SECTION HEADING*/
.section-heading {
    margin-bottom: 80px;
}

.section-heading>span {
    color: #222;
}

.section-heading>h2 {
    position: relative;
}

.section-heading>h2::after {
    position: absolute;
    content: '';
    height: 2px;
    width: 70px;
    background: #f16522;
    border-radius: 8px;
    bottom: -15px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.section-heading.heading-left>h2::after {
    left: 0;
    transform: inherit;
}

.homepage-5 .promo-area .section-heading>h2::after,
.contact-page .contact-area .section-heading>h2::after {
    left: 0;
    transform: inherit;
}

/*SECTION PADDING*/
.pt_0 {
    padding-top: 0;
}

.ptb_50 {
    padding: 50px 0;
}

.ptb_100 {
    padding: 100px 0;
}

.ptb_150 {
    padding: 150px 0;
}

.ptb_180 {
    padding: 180px 0;
}

/*BUTTONS*/
.btn {
    font-size: 18px;
    font-weight: 400;
    color: #fff;
    line-height: 1.5;
    text-align: center;
    padding: 18px 30px;
    border-radius: 6px;
    outline: 0 none;
    position: relative;
    z-index: 1;
}

.btn:hover,
.btn:focus,
.btn:active {
    color: #fff;
    -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.btn.prolend-primary2 {
    background: forestgreen;
    display: inline-block;
    padding: 16px 25px;
    border: 2px solid #fcfcfc;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
}

.btn.prolend-primary2::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #dc3545;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

.btn.prolend-primary {
    display: inline-block;
    padding: 16px 25px;
    border: 2px solid #f16522;
    color: #f16522;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
}

.btn.prolend-primary::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #f16522;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

.btn.prolend-primary.style-two {
    border: 2px solid #0167da;
    color: #0167da;
}

.btn.prolend-primary.style-two::before {
    background: #0167da;
}

.btn.prolend-primary.style-three {
    border: 2px solid #fff;
    color: #fff;
}

.btn.prolend-primary.style-three::before {
    background: #fff;
}

.btn.prolend-primary:hover,
.btn.prolend-primary:focus,
.btn.prolend-primary:active {
    color: #fff;
}

.btn.prolend-primary:hover::before,
.btn.prolend-primary:focus::before,
.btn.prolend-primary:active::before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
    transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

.btn.prolend-primary.style-three:hover,
.btn.prolend-primary.style-three:focus,
.btn.prolend-primary.style-three:active {
    color: #f16522;
}

.btn.prolend-btn {
    color: #f16522;
    padding: 0;
}

.btn.prolend-btn::before {
    position: absolute;
    content: '';
    height: 2px;
    width: 100%;
    border-radius: 4px;
    background-color: #f16522;
    top: calc(100% + 3px);
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out 0s;
}

.btn.prolend-btn::after {
    position: absolute;
    content: '\f105';
    font-family: 'Gilroy', sans-serif;
    font-size: 18px;
    font-weight: 900;
    top: 50%;
    left: calc(100% + 5px);
    transform: translateY(-50%);
}

.btn.prolend-btn:hover,
.btn.prolend-btn:focus,
.btn.prolend-btn.active {
    box-shadow: none;
}

.btn.prolend-btn:hover::before,
.btn.prolend-btn:focus::before,
.btn.prolend-btn:active::before {
    visibility: visible;
    opacity: 1;
}

.inner.error-page .btn.prolend-btn::before,
.inner.thank-you .btn.prolend-btn::before {
    background-color: #fff;
}

.button-group {
    margin-top: 30px;
}

.button-group a {
    margin-right: 10px;
}

.button-group a:last-child {
    margin-right: 0;
}

.store-buttons a {
    text-align: left;
}

.store-buttons img {
    max-width: 190px;
}

.store-buttons.store-black img {
    max-width: 170px;
    margin-bottom: 10px;
}

/*BG SHAPE*/
.shapes-container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.shape {
    position: relative;
}

.bg-shape {
    position: absolute;
    height: 190%;
    width: 100%;
    display: block;
    border-radius: 120px;
    background: linear-gradient(-47deg, #F956CB 0%, var(--gray) 100%);
    bottom: 0;
    right: 0;
    -webkit-transform: translate(35%, -28%) rotate(-35deg);
    transform: translate(35%, -28%) rotate(-35deg);
    z-index: 0;
}

@media (max-width: 991px) {
    .bg-shape {
        height: 130%;
    }
}

/*SHAPE DIVIDER*/
.shape-bottom {
    position: absolute;
    top: auto;
    bottom: -1px;
    left: 0;
    right: 0;
}

.accounts.login .welcome-area .shape-bottom svg {
    overflow: hidden;
    width: 100%;
    line-height: 0;
    direction: ltr;
    transform: rotate(180deg);
}

/*BACKGROUND OVERLAY*/
.bg-overlay,
.overlay-white,
.overlay-dark {
    position: relative;
    z-index: 0;
}

.bg-overlay::after,
.overlay-white:after,
.overlay-dark:after {
    position: absolute;
    content: '';
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

.bg-overlay::after {
    background: linear-gradient(-47deg, #878787 0%, var(--gray) 100%);
    opacity: 0.94;
    z-index: -1;
}

.overlay-white::after {
    background-color: rgba(250, 250, 250, 1);
    opacity: 0.94;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)";
    z-index: -1;
}

.overlay-dark::after {
    background-color: rgba(16, 16, 45, 1);
    opacity: 0.92;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)";
    z-index: -1;
}

.color-green {
    color: #bce44f;
}

.color-orange {
    color: #f16522;
}

/*BACKGROUND COLORS*/
.bg-gray {
    background-color: #fafafa;
}

.bg-inherit {
    /* background: inherit !important; */
}

/*SOCIAL ICONS*/
.social-icons>a {
    margin: 5px;
    width: 45px;
    height: 45px;
    font-size: 20px;
    color: #fff;
    border-radius: 50%;
    overflow: hidden;
    -webkit-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

.social-icons svg {
    display: block;
    height: 100%;
    line-height: 45px;
    margin: 0 auto;
    -webkit-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}

.social-icons>a:hover svg:first-child {
    margin-top: -45px;
}

.social-icons>a.facebook {
    background-color: #3b5999 !important;
}

.social-icons>a.instagram {
    background-color: #dd2a7b !important;
}
.social-icons>a.telegram {
    background-color: #24A1DE !important;
}

.social-icons>a.google-plus {
    background-color: #dd4b39 !important;
}

.social-icons>a.vine {
    background-color: #00b489 !important;
}





/* ******************************
:: 5.0 PRELOADER AREA CSS
****************************** */
.preloader-main {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 99999;
}

.preloader-main .preloader-wapper {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.preloader-main .loader-section {
    position: fixed;
    top: 0;
    height: 100%;
    width: calc(50% + 1px);
    background-color: #fff;
}

.preloader-main .loader-section.section-left {
    left: 0;
}

.preloader-main .loader-section.section-right {
    right: 0;
}

.preloader-main .preloader {
    position: relative;
    display: block;
    height: 80px;
    width: 170px;
    top: -40px;
    z-index: 99;
}

.preloader-main .loaded .section-right {
    -webkit-transform: translateX(101%);
    transform: translateX(101%);
    -webkit-transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1);
    transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1);
}

.preloader-main .loaded .section-left {
    -webkit-transform: translateX(-101%);
    transform: translateX(-101%);
    -webkit-transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1);
    transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1);
}

.preloader-main .loaded .preloader {
    -webkit-transition: 0.3s ease-out;
    transition: 0.3s ease-out;
    visibility: hidden;
    opacity: 0;
}

.preloader-main circle.dot:nth-of-type(1) {
    -webkit-animation: slide 2s ease infinite;
    animation: slide 2s ease infinite;
}

.preloader-main circle.dot:nth-of-type(2) {
    -webkit-transform: translateX(55px);
    transform: translateX(55px);
    -webkit-animation: slide 2s ease infinite;
    animation: slide 2s ease infinite;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

@-webkit-keyframes slide {

    0%,
    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    50% {
        -webkit-transform: translateX(70px);
        transform: translateX(70px);
    }
}

@keyframes slide {

    0%,
    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    50% {
        -webkit-transform: translateX(70px);
        transform: translateX(70px);
    }
}

/* ******************************
:: 6.0 SCROLL TO TOP AREA CSS
****************************** */
#scrollUp {
    position: fixed;
    right: 2%;
    bottom: 3%;
    height: 45px;
    width: 40px;
    border-radius: 4px;
    background-color: rgba(35, 35, 35, 0.65);
    text-align: center;
    cursor: pointer;
    z-index: 500;
    display: none;
    -webkit-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
}

#scrollUp>svg {
    display: block;
    height: 100%;
    font-size: 22px;
    color: #fff;
    margin: 0 auto;
}

#scrollUp:hover {
    background-color: #666;
}

/* ******************************
:: 7.0 HEADER AREA CSS
****************************** */
.navbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding-top: 0;
    padding-bottom: 0;
    z-index: 999;
    -webkit-transition: .3s;
    transition: .3s;
    background: #f1f3f5;
}

.navbar .navbar-nav .nav-link {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    -webkit-transition: .3s;
    transition: .3s;
}

.navbar .navbar-brand-sticky {
    display: none;
}

.navbar-sticky {
    -webkit-transition: none;
    transition: none;
}

.navbar-sticky-transitioned {
    -webkit-transition: .3s;
    transition: .3s;
}

.navbar-sticky-moved-up {
    position: fixed;
    top: 0;
    background: #fff;
    margin-top: -100px;
}

[data-theme=dark] .navbar-sticky-moved-up {
    background: #01081f;
    -webkit-box-shadow: 0 4px 25px rgba(30, 39, 69, 0.3), 0 1px 0px rgba(30, 39, 69, 0.4);
    box-shadow: 0 4px 25px rgba(30, 39, 69, 0.3), 0 1px 0px rgba(30, 39, 69, 0.4);
}

.navbar-sticky-on {
    margin-top: 0;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 20px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 20px;
}

.navbar-sticky-on .navbar-brand-regular {
    display: none;
}

.navbar-sticky-on .navbar-brand-sticky {
    display: inline;
}

/*NAVBAR DARK*/
.navbar-dark .navbar-nav .nav-link {
    color: #000000;
}

.navbar-dark .btn-outline {
    color: #2d2d2d;
}

.navbar-dark.navbar-sticky-on .navbar-nav .nav-link {
    color: #7e8085;
}

[data-theme=dark] .navbar-dark.navbar-sticky-on .navbar-nav .nav-link {
    color: #282828;
}

.navbar-dark.navbar-sticky-on .navbar-nav .nav-link:hover,
.navbar-dark.navbar-sticky-on .navbar-nav .nav-link:focus,
.navbar-dark.navbar-sticky-on .navbar-nav .nav-link.active,
.navbar-dark.navbar-sticky-on .navbar-nav .nav-link.current-menu-item {
    color: #2c2e30;
}

[data-theme=dark] .navbar-dark.navbar-sticky-on .navbar-nav .nav-link:hover,
[data-theme=dark] .navbar-dark.navbar-sticky-on .navbar-nav .nav-link:focus,
[data-theme=dark] .navbar-dark.navbar-sticky-on .navbar-nav .nav-link.active,
[data-theme=dark] .navbar-dark.navbar-sticky-on .navbar-nav .nav-link.current-menu-item {
    color: #D2D5DA;
}


/*---------- bootstrap nav custom hover ----------*/
.dropdown-menu {
    border: 0;
    padding: 0.625rem 0;
    margin: 0;
    box-shadow: 0 1rem 3rem rgba(31, 45, 61, .125);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

.dropdown-menu>li {
    padding: 0 0.625rem;
}

.dropdown>.dropdown-menu:before {
    content: '';
    position: absolute !important;
    top: -10px;
    right: auto;
    bottom: auto;
    left: 10px;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
}

.dropdown-submenu>.dropdown-menu:before {
    content: '';
    position: absolute !important;
    top: 30px;
    right: auto;
    bottom: auto;
    left: -10px;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #fff;
}

.dropdown-item {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    text-transform: uppercase;
    font-size: 0.8125rem;
    font-weight: 700;
    color: #2c2e30;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

.dropdown-item.active,
.dropdown-item:active {
    background: #f8f9fa;
}

.dropdown-divider {
    border-color: #8d98b7;
}

.dropdown-submenu {
    position: relative;
}

.dropdown-submenu>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
}

/*  mainmenu caret */
.dropdown-toggle:after {
    margin-left: 4px;
    vertical-align: 1px;
    border-top: 5px solid;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    color: #d3d3d3;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

/*  submenu cater */
.dropdown-submenu .dropdown-toggle:after {
    position: absolute;
    right: 24px;
    top: 20px;
    color: #d3d3d3;
}

.dropdown-submenu:hover .dropdown-toggle:after {
    text-decoration: underline;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

/* ******************************
:: 8.0 WELCOME AREA CSS
****************************** */
.welcome-area {
    height: 800px;
    z-index: 1;
    background: url(../images/bg1new.jpg) no-repeat center center / cover;
}

/* Фон для мобільних пристроїв (до 767px) */
@media (max-width: 767px) {
    .welcome-area {
        /* Вкажіть шлях до вашого мобільного фото */
        background: url(../images/bg002_mobile.jpg) no-repeat center center / cover !important;

        /* Додатково: коригуємо висоту для мобілки, якщо потрібно */
        height: 100vh !important;
        min-height: 600px;
    }
}

/* Проміжний варіант для планшетів (опціонально) */
@media (max-width: 991px) and (min-width: 768px) {
    .welcome-area {
        height: 700px !important;
    }
}



@media (min-width: 992px) {

    .welcome-intro>span,
    .welcome-intro p {
        font-size: 16px;
        line-height: 1.6;
    }
}

.welcome-area .video-icon {
    position: absolute;
    top: 50%;
    left: 70%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.play-btn {
    position: relative;
    display: inline-block;
    height: 100px;
    width: 100px;
    background-color: #fff;
    border-radius: 50%;
}

.btn-circle {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.2);
}

.play-icon {
    font-size: 22px;
    color: #f16522;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@-webkit-keyframes grow {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }

    to {
        -webkit-transform: scale(1.5);
        transform: scale(1.5);
        opacity: 0;
    }
}

@keyframes grow {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }

    to {
        -webkit-transform: scale(1.5);
        transform: scale(1.5);
        opacity: 0;
    }
}

.play-animation {
    -webkit-animation: grow 3s infinite;
    animation: grow 3s infinite;
}

.animation-short {
    -webkit-animation-delay: .5s;
    animation-delay: .5s;
}

.welcome-area.bg-overlay::after {
    z-index: -2;
}

.welcome-area .shape-bottom {
    z-index: -1;
}


.welcome-thumb.thumb-animated>img {
    position: relative;
    -webkit-animation: bounceHero 3s infinite;
    animation: bounceHero 3s infinite;
    transform: scale(1.2);


}

@-webkit-keyframes bounceHero {
    0% {
        top: 0px;
    }

    50% {
        top: 25px;
    }

    100% {
        top: 0px;
    }
}

@keyframes bounceHero {
    0% {
        top: 0px;
    }

    50% {
        top: 25px;
    }

    100% {
        top: 0px;
    }
}


/* ******************************
:: 9.0 PROMO VIDEO AREA CSS
****************************** */
.promo-video-area {
    height: 500px;
}

.video-promo {
    -webkit-box-shadow: 0 3px 20px 0px rgba(0, 0, 0, 0.12);
    box-shadow: 0 3px 20px 0px rgba(0, 0, 0, 0.12);
    border-radius: 1.5rem;
}

@media (max-width: 575px) {
    .promo-video-area {
        height: 350px;
    }
}

/* ******************************
:: 10.0 FEATURES AREA CSS
****************************** */
.promo-slider-wrapper {
    padding: 67px 23px 90px 26px;
    background-size: 100%;
    max-width: 290px;
    margin: 0 auto;
}

.promo-area .image-box {
    position: relative;
    -webkit-box-shadow: 0 3px 20px 0px rgba(0, 0, 0, 0.12);
    box-shadow: 0 3px 20px 0px rgba(0, 0, 0, 0.12);
    border-radius: 1.5rem;
    -webkit-transition: -webkit-transform 0.3s ease 0s;
    transition: -webkit-transform 0.3s ease 0s;
    transition: transform 0.3s ease 0s;
    transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

.promo-area .image-box:hover {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
    -webkit-box-shadow: 0 1rem 3rem rgba(31, 45, 61, .125) !important;
    box-shadow: 0 1rem 3rem rgba(31, 45, 61, .125) !important;
}

.promo-area .image-box li {
    list-style: disc;
    margin-left: 1rem;
}

/* ******************************
:: 11.0 SERVICE AREA CSS
****************************** */
.service-list.style-two>li {
    list-style: disc;
    margin-left: 1rem;
}

/* ******************************
:: 12.0 DISCOVER AREA CSS
****************************** */
.list-box .icon {
    color: #764fe0;
}

@media (max-width: 575px) {
    .discover-thumb {
        max-width: 300px;
    }
}

/* ******************************
:: 13.0 PRODUCTS AREA CSS
****************************** */
.product-thumb {
    max-width: 150px;
}

.product-card {
    position: relative;
    border: 0;
    border-bottom: 4px solid #f16522;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
}

.product-features li {
    color: #7e8085;
}

.product-order {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(255, 255, 255, .59);
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out 0s;
}

.product-card:hover .product-order {
    visibility: visible;
    opacity: 1;
}

.products-area .owl-nav {
    position: absolute;
    display: flex;
    left: 50%;
    top: -15%;
    transform: translateX(-50%);
}

.products-area .owl-carousel button {
    display: inline-block;
    height: 35px;
    width: 35px;
    background-color: #f16522 !important;
    color: #fff !important;
    border-radius: 4px;
    outline: none;
    margin: 5px;
    box-shadow: 0 1px 5px #f16522;
}

@media (max-width: 991px) {
    .products-area .owl-nav {
        top: -10%;
    }
}

@media (max-width: 575px) {
    .products-area .owl-carousel button {
        display: none;
    }
}

/* ******************************
:: 14.0 COMPARISON AREA CSS
****************************** */
.comparison-area .product-thumb>img {
    max-width: 120px;
}

.comparison-area .product-body>h3 {
    font-size: 18px;
}

.comparison-area .product-body h6 {
    color: #7e8085;
}

/* ******************************
:: 15.0 REVIEWS AREA CSS
****************************** */
.review-area .owl-nav {
    position: absolute;
    display: flex;
    left: 50%;
    bottom: -50px;
    transform: translateX(-50%);
}

.review-area .owl-carousel button {
    display: inline-block;
    height: 35px;
    width: 35px;
    background-color: #f16522 !important;
    color: #fff !important;
    border-radius: 4px;
    outline: none;
    margin: 5px;
    box-shadow: 0 1px 5px #f16522;
}

@media (max-width: 991px) {
    .review-area .owl-nav {
        bottom: -30px;
    }
}

/* ******************************
:: 16.0 DOWNLOAD AREA CSS
****************************** */
.download-area {
    overflow: hidden;
}

.download-thumb-lg {
    position: absolute;
    top: 5%;
    right: 15%;
}

/* ******************************
:: 17.0 FAQ AREA CSS
****************************** */
.card-header .btn {
    position: relative;
    display: block;
    width: 100%;
    background: transparent;
    color: #222;
    text-align: left;
}

.card-header .btn.collapsed {
    color: #444;
}

.card-header .btn:hover,
.card-header .btn:focus,
.card-header .btn:active {
    -webkit-box-shadow: inherit;
    box-shadow: inherit;
}

.card-header .btn::after,
.card-header .btn.collapsed::after {
    position: absolute;
    top: 50%;
    left: calc(100% - 1.25rem);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 18px;
    font-weight: 900;
    font-family: 'Gilroy', sans-serif;
}

.card-header .btn::after {
    content: '\f107';
}

.card-header .btn.collapsed::after {
    content: '\f105';
}

.faq-area.style-two .card-header .btn::after {
    display: none;
}

.faq-area.style-two .card-header .btn {
    cursor: inherit;
}

/* ******************************
:: 17.0 SUBSCRIBE AREA CSS
****************************** */
.form-control {
    font-size: 15px;
    height: 60px;
    border: none;
    outline: none;
    padding-left: 20px;
    border-radius: 8px;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
}

.form-control:focus {
    border: none;
    outline: none;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

.subscribe-form .form-group input {
    display: block;
    text-align: center;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

.subscribe-form .form-group input::-webkit-input-placeholder {
    text-align: center;
}

.subscribe-form .form-group input:-ms-input-placeholder {
    text-align: center;
}

.subscribe-form .form-group input::placeholder {
    text-align: center;
}

.subscribe-form button {
    height: 60px;
    border-radius: 8px;
    background: #f16522 !important;
}

/* ******************************
:: 18.0 BLOG AREA CSS
****************************** */
.blog-area {
    z-index: 1;
}

.single-blog {
    background-color: #fff;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    border-radius: 6px;
}

.blog-thumb img {
    display: block;
    width: 100%;
    border-radius: 6px;
}

.blog-content>p {
    line-height: 1.8;
}

.blog-btn {
    position: relative;
    display: inline-block;
}

.blog-btn::after {
    position: absolute;
    content: '\f101';
    font-weight: 900;
    font-family: 'Gilroy', sans-serif;
    opacity: 0;
    visibility: hidden;
    top: 50%;
    -webkit-transform: translateX(3px) translateY(-50%);
    transform: translateX(3px) translateY(-50%);
    -webkit-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
}

.blog-btn:hover::after,
.blog-btn:focus::after {
    visibility: visible;
    opacity: 1;
    top: 50%;
    -webkit-transform: translateX(5px) translateY(-50%);
    transform: translateX(5px) translateY(-50%);
}

.single-blog:hover {
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 8px rgba(0, 0, 0, 0.1);
}

/* ******************************
:: 19.0 BREADCRUMB AREA CSS
****************************** */


/* Хлібні крихти прокручувані на мобільних */
@media (max-width: 767.98px) {
    .breadcrumb {
        display: flex;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap;
        padding-bottom: 5px;
        margin-bottom: 15px;
        padding-top: 20px;
    }

    .breadcrumb li {
        display: inline-block;
    }

    .breadcrumb a {
        white-space: nowrap;
    }

    /* Приховати стандартний скролбар на мобільних, якщо потрібно */
    /* .breadcrumb::-webkit-scrollbar {
        display: none;
    } */
}


.breadcrumb-area {
    height: 450px;
    z-index: 1;.welcome-area
}

.breadcrumb-content>h3 {
    font-size: 38px;
}

.breadcrumb {
    background-color: transparent;
    margin: 0;
    padding-top: 30px;
}

.breadcrumb-item+.breadcrumb-item::before {
    content: ">";
    color: #d6d3d3bb;
}

/* Виправлення перекриття фіксованим меню */
main {
    margin-top: 20px;
    /* Додайте відступ, якщо меню (navbar) фіксоване (sticky-top) */
}


/* Хлібні крихти прокручувані на мобільних */

/* Приховати стандартний скролбар на мобільних, якщо потрібно */
/* .breadcrumb::-webkit-scrollbar {
        display: none;
    } */




.breadcrumb-item+.breadcrumb-item::before {
    content: ">";
    color: #d6d3d3bb;
}

.blog .breadcrumb-item>a,
.blog .breadcrumb-item,
.blog .breadcrumb-item::before,
.blog .breadcrumb-item.active {
    color: #fff;
}

/* ******************************
:: 20.0 BLOG PAGE AREA CSS
****************************** */
.blog .navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.blog .single-blog {
    margin-bottom: 45px;
}

.pagination>li>a {
    font-size: 14px;
    height: 40px;
    width: 40px;
    line-height: 40px;
    display: inline-block;
    border: 1px solid #444;
    color: #444;
    text-align: center;
}

.pagination li:first-child a,
.pagination li:last-child a {
    display: block;
    border: none;
    position: relative;
}

.pagination li:first-child:hover a,
.pagination li:last-child:hover a {
    background: none;
    color: inherit;
    border: none;
}

.pagination li:first-child:hover a {
    -webkit-transform: translateX(-4px);
    transform: translateX(-4px);
}

.pagination li:last-child:hover a {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
}

/* **********************************
:: 21.0 BLOG PAGE DETAILS AREA CSS
*************************************/
/*Single Widget*/
.single-widget {
    margin-bottom: 35px;
}

.sidebar .single-widget:last-child {
    margin-bottom: 0;
}

.widget-content {
    position: relative;
}

/*Search Widget*/
.search-widget input {
    background-color: #f7f7f7;
    border: 1px solid #eee;
    color: #444;
    height: 45px;
    padding: 10px 15px;
    width: 100%;
    -webkit-transition: -webkit-box-shadow 1s ease 0s;
    transition: -webkit-box-shadow 1s ease 0s;
    transition: box-shadow 1s ease 0s;
    transition: box-shadow 1s ease 0s, -webkit-box-shadow 1s ease 0s;
}

.search-widget input:focus {
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

/*Catagory Widget*/
.widget .single-accordion {
    border: 1px solid #eee;
    border-radius: 4px;
}

.widget .single-accordion h5 a {
    color: #444;
    border-bottom: 1px solid #eee;
}

.widget-items li a {
    position: relative;
    border-bottom: 1px solid #eee;
}

.widget-items li a.active {
    color: #f16522;
}

.widget-items li a::before {
    position: absolute;
    content: '';
    height: 100%;
    width: 0px;
    top: 0;
    bottom: 0;
    left: 0;
    background-color: transparent;
    -webkit-transition: all 0.1s ease 0s;
    transition: all 0.1s ease 0s;
}

.widget-items li a:hover,
.widget-items li a:focus,
.widget-items li a.active {
    background-color: #f7f7f7;
}

.widget-items li a:hover::before,
.widget-items li a:focus::before,
.widget-items li a.active::before {
    width: 2px;
    background-color: #f16522;
}

.widget-items li a span {
    line-height: 1.4;
}

/*Post Widget*/
.post-thumb img {
    border: 1px solid #eee;
}

.post-widget .widget-items .post-date {
    font-size: 13px;
    line-height: 1;
}

.post-content h6 {
    font-weight: 400;
    line-height: 20px;
}

/*Tags Widget*/
.tags-widget .single-accordion {
    border: none;
}

.tags-widget-items a {
    border: 1px solid #e5e5e5;
    font-size: 12px;
}

/*Blog Details*/
.prolend-blog .meta-info {
    border-bottom: 1px solid #eee;
}

.meta-info>ul>li {
    position: relative;
}

.meta-info>ul>li::after {
    position: absolute;
    content: '';
    height: 30%;
    width: 2px;
    background-color: #777;
    top: 50%;
    left: 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.meta-info>ul>li:last-child::after {
    display: none;
}

.prolend-blog .blog-share a {
    padding: 0 10px;
}

.blog-share .social-icons>a {
    width: 35px;
    height: 35px;
    font-size: 16px;
}

.blog-share .social-icons>a.facebook:hover {
    background-color: #3b5999 !important;
    color: #fff;
}

.blog-share .social-icons>a.twitter:hover {
    background-color: #55acee !important;
    color: #fff;
}

.blog-share .social-icons>a.google-plus:hover {
    background-color: #dd4b39 !important;
    color: #fff;
}

.blog-share .social-icons svg {
    line-height: 35px;
}

.blog-share .social-icons>a:hover svg:first-child {
    margin-top: -35px;
}

.prolend-blog .blog-details .blog-title>a {
    font-size: 24px;
}

.blockquote {
    background-color: #f7f7f7;
    position: relative;
}

.blockquote::after {
    position: absolute;
    content: '';
    height: 100%;
    width: 2px;
    top: 0;
    left: 0;
}

.blog-comments {
    margin-top: 20px;
}

.admin {
    border-top: 1px solid #e5e5e5;
}

.admin-thumb img,
.comments-thumb img {
    border: 1px solid #eee;
}

.comments,
.blog-contact {
    margin-left: 200px;
}

.single-comments {
    border: 1px solid #eee;
    margin-bottom: 1rem;
}

.single-comments:last-of-type {
    margin-bottom: 0;
}

.comments-content>h5>a:last-child {
    font-size: 14px;
    font-weight: 500;
    color: #f16522;
}

.contact-box.comment-box {
    text-align: left;
}

.contact-box.comment-box .form-group input {
    font-size: 15px;
    border: 1px solid #e5e5e5;
}

.contact-box.comment-box .form-group textarea {
    font-size: 15px;
    border: 1px solid #e5e5e5;
    height: 150px;
}

.recent-blog-area {
    padding-top: 80px;
}

/* ******************************
:: 22.0 CONTACT AREA CSS
****************************** */
.contact-us .social-icon {
    display: inline-block;
    height: 45px;
    width: 45px;
    line-height: 45px;
    font-size: 18px;
    text-align: center;
    background-color: #f16522;
    color: #fff;
    border-radius: 4px;
}

.contact-box .form-group input,
.contact-box .form-group textarea {
    font-size: 14px;
    height: 50px;
    background-color: #fdfcfb;
    padding: 0 15px;
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 0;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.contact-box .form-group textarea {
    height: 180px;
    padding: 15px;
}

.contact-box .form-group input::-webkit-input-placeholder,
.contact-box .form-group textarea::-webkit-input-placeholder {
    color: rgba(68, 68, 68, 0.6);
}

.contact-box .form-group input:-ms-input-placeholder,
.contact-box .form-group textarea:-ms-input-placeholder {
    color: rgba(68, 68, 68, 0.6);
}

.contact-box .form-group input::placeholder,
.contact-box .form-group textarea::placeholder {
    color: rgba(68, 68, 68, 0.6);
}

.contact-box button {
    height: 60px;
    border-radius: 8px;
    background: #f16522 !important;
}

/*Map Area*/
.map-area {
    height: 550px;
    width: 100%;
}

.map-area iframe {
    height: 100%;
    width: 100%;
}


.welcome-intro-title-name {
    font-weight: 800;
    background: #ff6a00;
    color: #ffffff;
}

.fa-check-circle {
    color: #f16522
}

/* Приховуємо дублікати, якщо скрипт Font Awesome працює некоректно */
.social-icons a i+i {
    display: none !important;
}

/* Або, якщо Font Awesome додає SVG поруч із тегом i */
.social-icons a i+svg {
    display: none !important;
}

@media (max-width: 575px) {
    .map-area {
        height: 450px;
    }

    .welcome-intro-title-name {
        font-weight: 800;
        background: none;
        color: #ffffff;
    }
}

.homepage-5 .contact-top>h3 {
    font-size: 2em;
}

.homepage-5 .contact-top h5 {
    line-height: 1.4;
}

.contact-bottom>span {
    font-size: 13px;
}

.contact-bottom>span a {
    text-decoration: underline;
    color: #222;
}

/* ******************************
:: 23.0 FOOTER AREA CSS
****************************** */
.footer-area,
.footer-area a,
.footer-area h3,
.footer-area p,
.footer-area span {
    color: rgba(255, 255, 255, 0.8);
}

.footer-area a:hover {
    color: rgba(255, 255, 255, 1);
}

.footer-area .social-icons>a {
    width: 40px;
    height: 40px;
    font-size: 18px;
}

.footer-area .social-icons>a:hover svg:first-child {
    margin-top: -40px;
}

.footer-area .subscribe-form {
    position: relative;
    display: block;
    width: 95%;
}

.footer-area .subscribe-form input {
    font-size: 14px;
    text-indent: 3%;
    -webkit-box-shadow: 0 1px 6px 0 rgba(32, 33, 36, .28);
    box-shadow: 0 1px 6px 0 rgba(32, 33, 36, .28);
}

.footer-area .subscribe-form button {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    font-size: 15px;
    padding: 1.2rem 1.3rem;
}

.copyright-area {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
}

/* ******************************
:: 24.0 ERROR AREA CSS
****************************** */
.error-area h1 {
    font-size: 18vmax;
    text-shadow: 0 0.3rem 0.9rem rgba(0, 0, 0, .19);
    letter-spacing: -15px;
}

@media (max-width: 991px) {
    .error-area h1 {
        letter-spacing: -10px;
    }
}

@media (max-width: 767px) {
    .error-area h1 {
        font-size: 8em !important;
        letter-spacing: -5px;
    }
}

@media (max-width: 575px) {
    .error-area h1 {
        font-size: 7em !important;
    }
}

/* ******************************
:: 25.0 COMING SOON AREA CSS
****************************** */
.countdown {
    text-transform: uppercase;
    color: #fff;
}

.countdown>div {
    display: inline-block;
}

.countdown>div>span {
    display: block;
    text-align: center;
}

.countdown-container {
    margin: 0 10px;
    padding: 1rem;
}

.countdown-content span {
    font-size: 1.5em;
}

.countdown-container .countdown-heading {
    font-size: 16px !important;
    font-weight: 600;
    margin: 10px;
}

.countdown-container .countdown-value {
    font-size: 50px;
    font-weight: 600;
    padding: 10px;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.4)
}

@media (max-width: 767px) {
    .countdown-container {
        margin: 0 6px;
        padding: 0.5rem;
    }

}

@media (max-width: 575px) {
    .countdown-container {
        margin: 0 2px;
        padding: 0;
    }

    .countdown-container .countdown-value {
        font-size: 40px;
    }

}

@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

/* ******************************
:: 26.0 PREVIEW AREA CSS
****************************** */
.preview .welcome-area {
    height: 500px !important;
    padding-top: 0;
}

.preview .welcome-intro h2 {
    line-height: 1.2;
}

.single-preview>a>img {
    box-shadow: 0 0.313rem 0.875rem rgba(45, 49, 54, 0.09);
    border-radius: 8px;
    transition: all 0.3s ease 0s;
}

.single-preview h3 {
    font-size: 16px;
    color: #555;
    transition: all 0.3s ease 0s;
}

.single-preview:hover>a>img {
    transform: translateY(-10px);
    box-shadow: 0 0.313rem 0.875rem rgba(45, 49, 54, 0.12);
}

.preview .footer-area,
.preview .footer-area a,
.preview .footer-area h3,
.preview .footer-area p,
.preview .footer-area span {
    color: inherit;
}

@media (min-width: 992px) {
    .preview .welcome-intro p {
        font-size: 15px;
        line-height: 28px;
    }
}


/* Стилі для контейнера продуктів, якщо потрібно центриування на великих екранах */
.products-area .container {
    max-width: 1200px;
    /* Приклад обмеження ширини */
}

/* Стилі для карток продуктів */
.product-card {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    transition: box-shadow 0.3s ease;
}

.product-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.product-card h3 {
    padding: 15px 0 5px;
    font-size: 1.5rem;
    color: #333;
}

.product-card ul {
    list-style: none;
    padding-left: 0;
}

.product-card ul li {
    padding: 5px 0;
    color: #555;
}

/* Стилі для зображення товару у модальному вікні */
#modal-product-image {
    width: 100%;
    height: auto;
    max-width: 100px;
    /* Обмеження розміру міні-картинки */
    object-fit: contain;
    /* Зберігає пропорції */
    border: 1px solid #ddd;
    padding: 5px;
    background: #f8f8f8;
}

/* Стилізація кнопок (залежить від ваших класів prolend-primary) */
/* .btn.prolend-primary {
    background-color: #007bff;  
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    transition: background-color 0.3s;
}

.btn.prolend-primary:hover {
    background-color: #0056b3;
}

.btn.prolend-primary.style-two {
    background-color: transparent;
    border: 1px solid #007bff;
    color: #007bff;
}

.btn.prolend-primary.style-two:hover {
    background-color: #007bff;
    color: white;
} */


.product-slider-container {
    max-width: 100%;
    /* Забезпечує адаптивність */
    margin: 0 auto;
}

.thumbnail-nav {
    display: flex;
    /* Розміщує мініатюри в ряд */
    justify-content: center;
    /* Центрує мініатюри */
    gap: 10px;
    /* Відстань між мініатюрами */
    overflow-x: auto;
    /* Дозволяє прокручування, якщо мініатюр багато */
    padding: 10px 0;
}

.thumbnail {
    width: 60px;
    /* Розмір мініатюри */
    height: 60px;
    object-fit: cover;
    /* Забезпечує, що зображення заповнить простір без деформації */
    cursor: pointer;
    border: 2px solid transparent;
    /* Рамка для неактивних */
    border-radius: 5px;
    transition: all 0.2s ease-in-out;
}

.thumbnail:hover {
    border-color: #aaa;
}

.thumbnail.active {
    border-color: #007bff;
    /* Колір рамки для активної мініатюри (можна змінити на колір бренду) */
}

/* Переконайтеся, що головні зображення в слайдері адаптивні */
.carousel-inner img {
    max-width: 100%;
    height: auto;
}

/* Основні стилі для ціни */
.original-price {
    color: #888;
    /* Сірий колір */
    text-decoration: line-through;
    /* Перекреслення */
    font-size: 1.25rem;
    margin-right: 15px;
    vertical-align: middle;
}

.sale-price {
    font-size: 1.8rem;
    font-weight: bold;
    color: #e53935 !important;
    /* Червоний колір для ціни продажу */
    margin-right: 15px;
    vertical-align: middle;
}

/* Бейдж "SAVE 24%" */
.save-badge {
    background-color: #e53935;
    /* Колір, що відповідає ціні */
    color: white;
    padding: 5px 8px;
    border-radius: 4px;
    font-weight: bold;
    font-size: 0.9rem;
    vertical-align: middle;
}

/* Стилі для списку характеристик */
.features-list {
    margin-top: 20px;
    padding-left: 0;
    /* Прибираємо стандартний відступ списку */
}

.features-list li {
    margin-bottom: 8px;
    line-height: 1.4;
    font-size: 1rem;
    list-style: none;
    /* Прибираємо стандартні маркери */
    color: #333;
}

/* Стилі для іконок-галочок */
.feature-icon {
    color: #e53935;
    /* Червоний колір для галочок (або інший колір акценту) */
    margin-right: 8px;
    font-size: 0.95rem;
}

/* Стилі для секції відгуків */
.reviews-count,
.questions-count {
    font-size: 0.95rem;
    color: #555;
}

.questions-count i {
    margin-right: 3px;
}

textarea::placeholder {
    color: #6c757d;
    /* стандартний bootstrap-сірий */
    opacity: 1;
}



:root {
    --orange: #ff6a00;
    --orange-soft: #fff2e8;
    --gray: #f6f6f6;
}





/* Breadcrumb */
.breadcrumb a {
    color: #888;
    text-decoration: none;
    font-size: 13px;
}


/* Buttons */
.btn-orange {
    background: var(--orange);
    color: #fff;
    border-radius: 30px;
    padding: 10px 22px;
    font-weight: 600;
}


.btn-outline-orange {
    border: 2px solid var(--orange);
    color: var(--orange);
    border-radius: 30px;
    padding: 10px 22px;
    font-weight: 600;
}

.btn-orange:hover,
.btn-outline-orange:hover {
    background: #ffffff;
    color: #e65f00;
    border: 2px solid var(--orange);

}


/* Product card */
.product-box {
    background: #fff;
    border-radius: 16px;
    padding: 15px;
}


.badge-best {
    background: var(--orange);
    font-size: 14px;
    border-radius: 8px;
}


/* Slider */
.carousel-indicators [data-bs-target] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ddd;
}

.carousel-indicators .active {
    background: var(--orange);
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-color: rgba(0, 0, 0, .55);
    background-size: 42% 42%;
    border-radius: 50%;
    width: 42px;
    height: 42px;
}


.thumbs img {
    width: 70px;
    height: 70px;
    object-fit: contain;
    border: 2px solid transparent;
    border-radius: 10px;
    cursor: pointer;
    background: #fff;
}

.thumbs img.active {
    border-color: #ff6a00;
}

/* Price */
.price {
    color: green;
    font-size: 34px;
    font-weight: 800;
}

.price>span {
    color: #888;
    text-decoration: line-through;
    font-size: 34px;
}
/* Адаптивність */
@media (max-width: 767.98px) {
 .price>span {
    display: block;
}
}

.timer-item {
    background: #fff;
    padding: 5px 8px;
    border-radius: 6px;
    min-width: 45px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
}

/* Контурна помаранчева кнопка — виправлення зникнення тексту */
.btn-outline-orange {
    color: #ff8c00 !important;
    /* Примусово ставимо колір тексту */
    border-color: #ff8c00 !important;
    background-color: transparent !important;
    transition: all 0.3s ease;
}

/* Стан при наведенні — текст стає білим, фон помаранчевим */
.btn-outline-orange:hover {
    background-color: #ff8c00 !important;
    color: #fff !important;
}

/* Стан фокусу та активності (коли вікно закрилося і фокус повернувся) */
.btn-outline-orange:focus,
.btn-outline-orange:active,
.btn-outline-orange:focus-visible {
    color: #ff8c00 !important;
    background-color: transparent !important;
    border-color: #ff8c00 !important;
    box-shadow: 0 0 0 0.25rem rgba(255, 140, 0, 0.25) !important;
    outline: none !important;
}

/* Якщо кнопка всередині блоку d-flex або іншого контейнера */
button.btn-outline-orange span {
    color: inherit;
}


#countdown-timer {
    color: #d9534f;
    /* Колір цифр таймера */
}

.in-stock {
    color: #16a34a;
    font-weight: 600;
}


/* Specs tags */
.spec {
    border: 1px solid #eee;
    border-radius: 10px;
    padding: 8px 12px;
    font-size: 14px;
}

.spec span {
    color: black;
    font-weight: 500;
}

.r-block p {
    display: inline-block;
    float: right;
}

.top-menu {
    background: #f1f3f5;
    border-bottom: 1px solid #e5e7eb;
}

.top-menu .nav-link {
    padding: 14px 8px;
    font-weight: 600;
    font-size: 15px;
    color: #111;
}

.top-menu .nav-link:hover {
    color: #ff6a00;
}

.thumbs img {
    cursor: pointer;
    border: 2px solid transparent;
    border-radius: 8px;
    transition: border-color .2s;
}

.thumbs img.active {
    border-color: #ff7a00;
    /* твій оранжевий */
}


@media (max-width: 767.98px) {
    .buy-actions {
        flex-direction: column;
        align-items: center;
        /* Центруємо кнопки */
    }

    .buy-actions .btn {
        width: 90%;
        /* трохи відступу від країв */
        max-width: 300px;
        margin-bottom: 10px;
    }
}

.feature-card small {
    font-weight: 400;
    opacity: .8
}




/* Зробити блоки квадратними */
.feature-card-img {
    position: relative;
    width: 100%;
    padding-top: 100%;
    /* це робить блок квадратним */
    border-radius: 18px;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    cursor: pointer;
    transition: transform .35s ease, box-shadow .35s ease;
}

/* Текст поверх зображення зверху */
.feature-overlay {
    position: absolute;
    top: 16px;
    /* відступ від верхнього краю */
    left: 16px;
    right: 16px;
    z-index: 2;
    color: #fff;
}

/* Можна трохи зменшити шрифт, щоб текст не виходив за межі */
.feature-overlay strong {
    display: block;
    font-size: 18px;
}

.feature-overlay span {
    font-size: 12px;
    opacity: 0.85;
}

/* Hover ефект залишаємо */
.feature-card-img:hover {
    transform: translateY(-6px) scale(1.02);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .25);
}


.full-screen-block {
    position: relative;
    width: 100%;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: flex-start;
    /* текст зверху */
    justify-content: flex-start;
    color: #fff;
    padding: 20px;
    /* відступ тексту від країв */
    box-sizing: border-box;
}

/* Висота блоків */
@media (max-width: 767.98px) {
    .full-screen-block {
        height: 100vh;
        /* на мобільних весь екран */
    }
}

@media (min-width: 768px) {
    .full-screen-block {
        height: 50vh;
        /* на комп'ютері половина екрану */
    }
}

/* Текст поверх зображення */
.block-text h2 {
    font-size: 28px;
    margin: 0 0 10px 0;
}

.block-text p {
    font-size: 16px;
    margin: 0;
}

/* Можна додати тінь для тексту, щоб було краще видно на фото */
.block-text {
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
}

/* Десктоп */
.full-screen-block.bg1 {
    background-image: url('../images/bgb1.webp');
}

.full-screen-block.bg2 {
    background-image: url('../images/bgb2.webp');
}

/* Мобільні */
@media (max-width: 767.98px) {
    .full-screen-block.bg1 {
        background-image: url('../images/bg1_mobile.webp');
    }

    .full-screen-block.bg2 {
        background-image: url('../images/bg2_mobile.webp');
    }
}


/* Додаємо чітке розділення секцій */
.product-details {
    padding: 40px 20px;
    max-width: 1200px;
    margin: 0 auto;
    clear: both;
    /* Очищує плаваючі елементи */
    display: block;
    /* Гарантує, що це блочний елемент */
    overflow: hidden;
    /* Допомагає контейнеру розтягнутися під контент */
}

/* Виправляємо bundle-items, щоб вони не "випадали" з контейнера */
.bundle-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 20px;
    width: 100%;
}

.bundle-items {
    flex: 1 1 500px;
    /* Дозволяємо сітці розширюватися */
    display: grid;
    gap: 15px;
    grid-template-columns: repeat(2, 1fr);
}


.section-title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 20px;
}

.bundle-main {
    flex: 1 1 300px;
    text-align: center;
}

.bundle-main img {
    width: 100%;
    max-width: 400px;
    border-radius: 16px;
}

.bundle-caption {
    margin-top: 10px;
    font-size: 14px;
    color: #555;
}

.bundle-item img {
    width: 100%;
    border-radius: 12px;
}

.bundle-item p {
    font-size: 13px;
    text-align: center;
    margin-top: 5px;
    color: #555;
}

/* Адаптивність */
@media (max-width: 767.98px) {
    .bundle-container {
        flex-direction: column;
    }

    .bundle-main {
        max-width: 100%;
    }

    .bundle-items {
        grid-template-columns: 1fr;
    }
}




/* Таблиця характеристик */
.specs-table {
    width: 100%;
    border-collapse: collapse;
}

.specs-table td {
    padding: 12px 15px;
    border-bottom: 1px solid #eee;
}

.specs-table td:first-child {
    font-weight: 600;
    color: #333;
    width: 60%;
    /* Щоб ліва колонка була ширшою */
}

.specs-table tr:nth-child(even) {
    background-color: #f9f9f9;
}

/* Примусовий скрол для модалки на мобільних */
.modal {
    position: fixed !important;
    overflow-y: auto !important;
    /* Дозволяємо вертикальний скрол */
    display: none;
    -webkit-overflow-scrolling: touch;
    /* Плавність для iPhone */
}

/* Коли модалка відкрита, дозволяємо внутрішній скрол діалогу */
.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto;
}

/* Виправляємо діалог, щоб він не обрізався */
.modal-dialog {
    margin: 1.75rem auto;
    min-height: calc(100% - 3.5rem);
    display: flex;
    align-items: center;
}

@media (max-width: 576px) {
    .modal-dialog {
        margin: 1rem;
        /* Менші відступи на мобільних */
        min-height: calc(100% - 2rem);
    }
}

.nav-item.has-submenu {
    position: relative;
}

.nav-item.has-submenu .submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    right: auto;
    min-width: 240px;
    width: 60em;
    margin: 0;
    margin-top: 0.5em;
    padding: 10px 0;
    list-style: none;
    background: #fff;
    border-radius: 2px;
    z-index: 1200;
}

.top-menu {
    position: relative;
}

/* anchor */
.nav-item.has-submenu {
    position: static;
}

/* stop anchoring to li */

.nav-item.has-submenu>.submenu {
    width: 60em;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    max-width: min(60em, calc(100vw - 2rem));
}

.nav-item.has-submenu:hover .submenu {
    display: block;
}

.nav-item.has-submenu .submenu li a {
    display: block;
    padding: 8px 14px;
    color: #000;
    text-decoration: none;
}

.nav-item.has-submenu .submenu li a:hover {
    background: rgba(0, 0, 0, 0.06);
    color: #ff6a00
}

.site-overlay {
    position: fixed;
    inset: 0;
    background: #000;
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease, visibility .2s ease;
    z-index: 900;
    /* above page, below header */
    pointer-events: none;
}

/* Show overlay when submenu is active (CSS-only, modern browsers) */
body:has(.nav-item.has-submenu:hover) .site-overlay,
body:has(.nav-item.has-submenu:focus-within) .site-overlay {
    opacity: .55;
    visibility: visible;
}

/* Keep header above overlay */
header.navbar {
    position: sticky;
    top: 0;
    z-index: 5100;
}



.nav-item.has-submenu .submenu::before {
    content: "";
    position: absolute;
    top: -0.5em;
    /* same as margin-top */
    left: 0;
    right: 0;
    height: 0.5em;
    /* fills the gap so hover doesn’t break */
}

/* Perfect centering: logo | menu | phone */
header.navbar .navbar-layout {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
}

/* Left / center / right alignment */
header.navbar .navbar-brand {
    justify-self: start;
}

header.navbar .top-menu {
    justify-self: center;
}

header.navbar .navbar-phone {
    justify-self: end;
    white-space: nowrap;
}

/* Make the menu truly content-width */
header.navbar .top-menu>.container {
    width: auto;
    max-width: none;
    padding: 0;
}

/* Center the nav items nicely */
header.navbar .top-menu .nav {
    justify-content: center;
    gap: 2rem;
    /* можна змінити */
    flex-wrap: nowrap;
    /* якщо треба в один ряд */
}

.nav-item .nav-link {
    font-size: 1.1em !important;
}

.menu-hamburger {
    width: 2em;
    border-radius: 1px;

}

.offcanvas {
    margin-top: 4em;
}

#offcanvasExample .nav-link,
#offcanvasExample .nav-link:visited {
    color: #000 !important;
}

/* Active/selected link (orange) */
#offcanvasExample .nav-link.active,
#offcanvasExample .nav-link[aria-current="page"] {
    color: #ff7a00 !important;
    font-weight: 600;
}

/* Dropdown title button layout + arrow */
#offcanvasExample .submenu-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: .75rem 0;
    background: transparent;
    border: 0;
}

/* Dropdown title becomes orange when expanded (selected) */
#offcanvasExample .submenu-toggle[aria-expanded="true"] {
    color: #ff7a00 !important;
    font-weight: 600;
}

/* Arrow rotate */
#offcanvasExample .submenu-toggle .chevron {
    transition: transform .2s ease;
}

#offcanvasExample .submenu-toggle[aria-expanded="true"] .chevron {
    transform: rotate(180deg);
}

/* Borders between main menu items */
#offcanvasExample .nav.flex-column>.nav-item {
    border-bottom: 1px solid #e6e6e6;
    padding: .25rem 0;
}

#offcanvasExample .nav.flex-column>.nav-item:first-child {
    border-top: 1px solid #e6e6e6;
}

/* Submenu block: left border + spacing */
#offcanvasExample .submenu {
    margin: .25rem 0 .75rem;
    padding-left: 1rem;
    border-left: 2px solid #e6e6e6;
}

/* Borders inside submenu */
#offcanvasExample .submenu .nav-link {
    padding: .5rem 0;
    border-bottom: 1px solid #f0f0f0;
}

#offcanvasExample .submenu .nav-item:last-child .nav-link {
    border-bottom: 0;
}


/* Контейнер для іконок */
.social-icons {
    gap: 12px; /* Відступ між іконками через Bootstrap-сумісну властивість */
}

/* Загальний стиль для посилань-іконок */
.social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%; /* Робимо іконку круглою */
    background-color: rgba(255, 255, 255, 0.1); /* Напівпрозорий фон */
    color: #ffffff !important;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 18px;
}

/* Ефект при наведенні (hover) */
.social-link:hover {
    transform: translateY(-3px); /* Легке підняття вгору */
    background-color: #ffffff;
}

/* Кольори при наведенні для кожної мережі */
.social-link.facebook:hover { color: #3b5998 !important; }
.social-link.instagram:hover { color: #e4405f !important; }
.social-link.telegram:hover { color: #0088cc !important; }

/* Виправлення розміру іконок Font Awesome всередині */
.social-link i {
    line-height: 1;
}



.btn-orange {
    background-color: #ff6b00;
    color: white;
    border: none;
    transition: 0.3s;
}

.btn-orange:hover {
    background-color: #e66000;
    color: white;
}

.text-orange {
    color: #ff6b00;
}

/* Стилізація полів вводу */
.form-control {
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    padding: 12px 15px;
    border-radius: 8px;
    font-size: 14px;
}

.form-control:focus {
    background-color: #fff;
    border-color: #ff6b00;
    box-shadow: 0 0 0 0.2rem rgba(255, 107, 0, 0.15);
}

/* Картки способів доставки та оплати */
.delivery-card, .payment-item {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 10px;
    cursor: pointer;
    border: 2px solid transparent !important;
    transition: 0.2s;
}

.active-delivery {
    border: 2px solid #ff6b00 !important;
    background-color: #fff;
}

.delivery-option-item {
    transition: all 0.2s ease;
    cursor: pointer;
}

/* Підсвітка обраного методу */
.delivery-option-item:has(input:checked) {
    border-color: #ff6b00 !important;
    background-color: #fff !important;
    box-shadow: 0 4px 12px rgba(255, 107, 0, 0.08);
}

.delivery-details-block {
    animation: fadeIn 0.3s ease;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Стікі-колонка для десктопа */
@media (min-width: 992px) {
    .sticky-top {
        position: sticky;
        top: 20px;
        z-index: 1020;
    }
}

/* Адаптація для мобільних */
@media (max-width: 576px) {
    .modal-body {
        padding: 15px !important;
    }
}
.delivery-details-block:not(.d-none) {
    display: block !important;
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Стилізація активної картки оплати */
.payment-item .btn-outline-light {
    background-color: #f8f9fa;
    border-color: #dee2e6 !important;
    border-radius: 10px;
    transition: all 0.2s ease;
}

.payment-item .btn-check:checked + .btn-outline-light {
    border-color: #ff6b00 !important; /* Помаранчева рамка при виборі */
    background-color: #fff !important;
    box-shadow: 0 4px 12px rgba(255, 107, 0, 0.1);
}

/* Налаштування іконок всередині */
.payment-item i {
    font-size: 1.5rem;
    color: #6c757d;
}

.payment-item .btn-check:checked + .btn-outline-light i {
    color: #ff6b00; /* Іконка стає помаранчевою при виборі */
}

/* Колір Viber */
.text-viber {
    color: #7360f2 !important;
}

/* Ефект при наведенні на контакти */
.contact-link {
    transition: color 0.3s ease, padding-left 0.3s ease;
}

.contact-link:hover {
    color: #f16522 !important;
    padding-left: 5px;
}

/* Адаптивна лінія-розділювач для ПК */
@media (min-width: 768px) {
    .border-start-md {
        border-left: 1px solid #dee2e6 !important;
        padding-left: 3rem;
    }
}

/* Налаштування розміру іконок */
.bi {
    vertical-align: middle;
}

/* Акцент на вагу шрифту як у вашому класі .price */
.fw-800 {
    font-weight: 800 !important;
}

/* Ваш фірмовий помаранчевий фон для бейджів */
.bg-orange {
    background-color: #f16522 !important;
}

/* Колір тексту для ціни */
.text-orange {
    color: #f16522 !important;
}

/* Адаптація розміру ціни для мобільних пристроїв */
@media (max-width: 767px) {
    .pre-order-price h2 {
        font-size: 32px !important;
    }
}

/* Product page responsive UX refresh */
.product-page-shell {
    max-width: 1200px;
}

.product-hero {
    align-items: flex-start;
}

.product-media-col .carousel-inner {
    background: #fff;
    border-radius: 12px;
}

.product-media-col .carousel-item img {
    width: 100%;
    max-height: 560px;
    object-fit: contain;
}

.product-media-col .thumbs {
    overflow-x: auto;
    overflow-y: hidden;
    justify-content: flex-start !important;
    padding: 4px 2px 8px;
    scrollbar-width: thin;
}

.product-media-col .thumb {
    flex: 0 0 auto;
    width: 74px;
    height: 74px;
    object-fit: contain;
    border-radius: 8px;
    border: 1px solid #e9ecef;
    background: #fff;
    padding: 4px;
}

.product-media-col .thumb.active {
    border: 2px solid #ff6b00;
}

.product-info-col h1 {
    letter-spacing: 0;
}

.product-sku-line {
    color: #6b7280;
}

.product-sku-line i {
    display: none;
}

.product-sku-line p {
    display: block;
    float: none;
    margin: 0;
    max-width: 100%;
}

.product-price-card .retail-price .badge {
    display: none;
}

.product-cta-block > .d-flex {
    width: 100%;
}

.product-cta-block .btn {
    min-height: 54px;
    border-radius: 999px;
    font-weight: 700;
}

@media (max-width: 767.98px) {
    header.navbar {
        min-height: 58px;
    }

    header.navbar .navbar-layout {
        display: grid;
        grid-template-columns: 48px 1fr 48px;
        gap: 8px;
        min-height: 58px;
    }

    header.navbar .navbar-brand {
        justify-self: center;
        margin: 0;
    }

    header.navbar .navbar-brand img {
        max-width: 132px;
        height: auto;
    }

    header.navbar .navbar-phone {
        width: 42px;
        height: 42px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        color: transparent !important;
        border-radius: 50%;
        background: #fff;
        border: 1px solid #eef0f2;
        text-decoration: none;
    }

    header.navbar .navbar-phone::before {
        content: "\F5C1";
        font-family: "bootstrap-icons";
        color: #111827;
        font-size: 20px;
        line-height: 1;
    }

    .product-page-shell {
        width: 100%;
        max-width: 100%;
        padding-left: 16px !important;
        padding-right: 16px !important;
        margin-top: 12px !important;
        overflow-x: hidden;
    }

    .product-page-shell .breadcrumb {
        margin-bottom: 14px !important;
        white-space: nowrap;
        overflow-x: auto;
        flex-wrap: nowrap;
        font-size: 13px;
        padding-bottom: 4px;
    }

    .product-box {
        width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }

    .product-hero {
        --bs-gutter-x: 0;
        justify-content: center;
        text-align: center;
    }

    .product-media-col {
        padding-left: 0;
        padding-right: 0;
    }

    .product-media-col .badge-best {
        margin-left: 0;
        border-radius: 8px;
        font-size: 13px;
    }

    .product-media-col .carousel-inner {
        aspect-ratio: 1 / 1;
        display: flex;
        align-items: center;
        border-radius: 10px;
    }

    .product-media-col .carousel-item img {
        max-height: 100%;
        padding: 8px;
    }

    .product-media-col .carousel-control-prev,
    .product-media-col .carousel-control-next {
        width: 38px;
        height: 38px;
        top: 50%;
        transform: translateY(-50%);
        border-radius: 50%;
        background: rgba(17, 24, 39, .45);
        opacity: 1;
    }

    .product-media-col .carousel-control-prev {
        left: 8px;
    }

    .product-media-col .carousel-control-next {
        right: 8px;
    }

    .product-media-col .carousel-control-prev-icon,
    .product-media-col .carousel-control-next-icon {
        width: 18px;
        height: 18px;
    }

    .product-media-col .thumbs {
        gap: 8px !important;
        margin-top: 10px !important;
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
        justify-content: center !important;
    }

    .product-media-col .thumb {
        width: 62px;
        height: 62px;
    }

    .product-info-col {
        padding-left: 0;
        padding-right: 0;
        min-width: 0;
        width: 100%;
        max-width: 100%;
    }

    .product-info-col h1 {
        font-size: 30px;
        line-height: 1.22;
        margin-bottom: 12px !important;
    }

    .product-info-col .lead {
        font-size: 15px;
        line-height: 1.55;
    }

    .product-sku-line {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        margin-bottom: 14px !important;
        font-size: 14px;
    }

    .product-sku-line p {
        display: block !important;
        float: none !important;
        width: 100%;
        max-width: 100%;
        text-align: center;
    }

    .product-spec-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px !important;
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .product-spec-grid .spec {
        min-width: 0;
        min-height: 48px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 6px;
        padding: 10px 12px;
        border-radius: 10px;
        font-size: 13px;
        line-height: 1.25;
        text-align: center;
        word-break: normal;
    }

    .product-spec-grid .spec:nth-child(3),
    .product-spec-grid .spec:nth-child(4) {
        grid-column: span 2;
    }

    .product-spec-grid .spec span {
        min-width: 0;
        font-weight: 700;
        text-align: center;
        overflow-wrap: anywhere;
    }

    .product-price-card {
        margin: 16px 0 14px !important;
        padding: 0;
        text-align: center;
    }

    .product-price-card .d-flex {
        justify-content: center;
    }

    .product-price-card .badge {
        font-size: 13px !important;
        padding: 8px 12px !important;
    }

    .product-price-card h2 {
        font-size: 34px !important;
        line-height: 1.1;
    }

    .product-price-card .retail-price {
        margin-top: 6px;
    }

    .product-price-card .retail-price span:first-child {
        font-size: 16px !important;
        color: #6b7280;
    }

    .in-stock {
        margin-bottom: 18px !important;
        font-size: 16px;
        font-weight: 700;
        text-align: center;
    }

    .product-cta-block {
        display: block !important;
        width: 100%;
        max-width: 100%;
        margin-bottom: 34px !important;
        text-align: center;
    }

    .product-cta-block > .d-flex {
        display: grid !important;
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 12px !important;
        width: 100%;
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
    }

    .product-cta-block .btn {
        width: 100%;
        max-width: 340px;
        min-height: 54px;
        padding-left: 16px !important;
        padding-right: 16px !important;
        border-radius: 999px;
        font-size: 16px;
        white-space: nowrap;
    }

    .product-description-card {
        padding: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        text-align: center;
    }

    .product-description-card h3 {
        font-size: 21px;
        line-height: 1.3;
    }

    .product-description-card p {
        font-size: 15px;
        line-height: 1.65;
    }

    .feature-card-img {
        min-height: 260px;
        border-radius: 10px;
        background-size: contain;
        background-repeat: no-repeat;
        background-color: #fff;
    }

    .feature-overlay {
        padding: 14px;
    }

    .feature-overlay strong {
        font-size: 16px;
    }

    .feature-overlay span {
        font-size: 14px;
    }

    .product-details {
        padding-left: 16px;
        padding-right: 16px;
    }

    .specs-section {
        margin-top: 28px;
    }

    .specs-table,
    .specs-table tbody,
    .specs-table tr,
    .specs-table td {
        display: block;
        width: 100%;
    }

    .specs-table tr {
        display: grid;
        grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
        align-items: center;
        border-radius: 10px;
        overflow: hidden;
        margin-bottom: 8px;
        background: #fff;
        border: 1px solid #eef0f2;
    }

    .specs-table td {
        border: 0 !important;
        padding: 13px 14px !important;
        font-size: 15px;
        line-height: 1.35;
    }

    .specs-table td:first-child {
        font-weight: 700;
        background: #f8f9fa;
    }

}

@media (max-width: 380px) {
    .product-info-col h1 {
        font-size: 28px;
    }

    .product-spec-grid {
        grid-template-columns: 1fr;
    }

    .product-spec-grid .spec,
    .product-spec-grid .spec:nth-child(3),
    .product-spec-grid .spec:nth-child(4) {
        grid-column: auto;
    }

}
