/* ----------------------------------------------------------------
	Canvas: Construction
-----------------------------------------------------------------*/

:root {
	--cnvs-themecolor: #ed1c2a;
	--cnvs-themecolor-rgb: 241, 128, 82;

	--cnvs-body-font: 'Roboto', sans-serif;
	--cnvs-primary-font: inter,sans-serif;
}

#header {
	background-color: #F9F9F9;
	--cnvs-primary-menu-font-size: 0.8125rem;
	--cnvs-primary-menu-submenu-font-size: .75rem;
	--cnvs-primary-menu-submenu-font-weight: 600;
	--cnvs-primary-menu-submenu-color: var(--cnvs-contrast-700);
	--cnvs-primary-menu-ls: 1px;
	--cnvs-primary-menu-tt: uppercase;
	--cnvs-primary-menu-font-weight: 700;
}

#top-bar {
	--cnvs-topbar-font-transform: uppercase;
	--cnvs-topbar-font-size: 0.75rem;
	--cnvs-topbar-bg: #FFF;
	--cnvs-topbar-font-weight: 400;
}

.header-extras li, .header-extras li > a.triple-btn {
	margin-left: 15px;
	padding-left: 0;
	border-left: 1px solid #7b7b7b;
}

.header-extras li:first-child, .header-extras li > a.triple-btn:first-child {
	margin-left: 0;
	padding-left: 0;
	border-left: 0;
}

.header-extras li i, .header-extras li > a.triple-btn i {
	margin-top: 0 !important;
	font-size: 28px !important;
	color: #7b7b7b;
	transition: all 0.3s ease;
}
.header-extras li:hover i, .header-extras li:hover > a.triple-btn i, .header-extras li:hover .he-text, .header-extras li:hover > a.triple-btn .he-text{
	color: black;
}

.header-extras li .he-text, .header-extras li > a.triple-btn .he-text {
	padding-left: 0;
	font-weight: 400;
	font-size: 14px;
	line-height: 17px;
	color: #7b7b7b;
	letter-spacing: 1px;
	transition: all 0.3s ease;
}

.header-extras li .he-text span, .header-extras li > a.triple-btn .he-text span {
	font-weight: 600;
	text-transform: none;
	font-size: 16px;
	line-height: 24px;
	letter-spacing: 0;
}

.feature-box{
	background-color: white;
	border: 1px solid #313132;
	border-radius: 18px;
    --cnvs-featured-box-font-weight: 600;
    --cnvs-featured-box-font-tt: uppercase;
}
.feature-box .fbox-content h3, .feature-box .fbox-content .h3{
	text-transform: unset;
}
.feature-box .fbox-media{
	margin-bottom: 0;
}
.feature-box p{
	margin-top: 5px;
}
.feature-box .fbox-content{
	padding: 10px 20px;
}
.feature-box img{
	border-radius: 16px;
	width: calc(100% + 2px) !important;
	max-width: calc(100% + 2px) !important;
	margin: -1px;
}

#header-wrap { --cnvs-header-bg: #FFF; }

.carousel-widget {
	--cnvs-owl-nav-bg: #FFF;
}

.device-md .primary-menu i.icon-angle-down,
.device-sm .primary-menu i.icon-angle-down,
.device-xs .primary-menu i.icon-angle-down { display: none !important; }

.slider-caption {
	max-width: 450px;
}

.slider-caption > div {
	background-color: rgba(255,255,255,0.9);
	border-radius: 2px;
	padding: 40px;
}

.slider-caption h2 {
	font-size: 24px;
	margin-bottom: 20px;
}

.slider-caption p {
	margin-bottom: 0;
	font-size: 18px;
}

.dark .slider-caption { background-color: rgba(0,0,0,0.75) }

.testi-meta span { color: rgba(255,255,255,0.65); }

.iconlist.iconlist-large { font-size: 17px !important; }

.iconlist.iconlist-large li { margin: 8px 0 !important; }

.iconlist.iconlist-large li i { top: 0; }

.testi-content p {
	font-style: normal;
	font-family: var(--cnvs-primary-font) !important;
	font-weight: 300;
	font-size: 30px;
	letter-spacing: 1px;
	line-height: 1.6 !important;
	margin-bottom: 40px;
}

.footer-big-contacts {
	color: #333;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 1px;
}

.footer-big-contacts span {
	display: block;
	font-size: 11px;
	font-weight: 400;
	text-transform: uppercase;
	color: #888;
	letter-spacing: 2px;
}

.dark .footer-big-contacts { color: rgba(255,255,255,0.8); }


.team-title span {
	font-size: 13px;
	font-weight: normal;
	font-style: normal;
	margin-top: 2px;
}

.small-thumbs .entry-title h2 a {
	text-transform: none;
	letter-spacing: 0;
	font-size: 22px;
	line-height: 25px;
	font-weight: 600;
	-webkit-transition: color .6s ease;
	-o-transition: color .6s ease;
	transition: color .6s ease;
}

/* ----------------------------------------------------------------------------
	Services Grid
---------------------------------------------------------------------------- */

.grid-border {
	overflow: inherit;
	--cnvs-grid-border-width: 1px;
	--cnvs-grid-border-color: var(--cnvs-contrast-200);
	--cnvs-grid-border-opacity: 1;
}

.grid-border [class^=col-] {
	margin: calc(-1 * var(--cnvs-grid-border-width)) 0 0 calc(-1 * var(--cnvs-grid-border-width));
	padding: 30px;
	border: var(--cnvs-grid-border-width) solid var(--cnvs-grid-border-color);
}

.grid-border [class^=col-]::before,
.grid-border [class^=col-]::after {
	display: none;
}

.grid-border [class^=col-]:hover {
	--cnvs-grid-border-color: var(--cnvs-themecolor);
	background-color: rgba(var(--cnvs-themecolor-rgb),0.1);
	z-index: 1;
}


/* ----------------------------------------------------------------------------
	Helper CSS Classes
---------------------------------------------------------------------------- */

.t300 { font-weight: 300 !important; }

.t400 { font-weight: 400 !important; }

.t500 { font-weight: 500 !important; }

.t600 { font-weight: 600 !important; }

.t700 { font-weight: 700 !important; }


/* ----------------------------------------------------------------
	CSS Specific to the Construction Demo - RTL Support
-----------------------------------------------------------------*/

.rtl .header-extras li, .rtl .header-extras li > a.triple-btn {
	margin-right: 30px;
	margin-left: 0;
	padding-right: 30px;
	padding-left: 0;
	border-right: 1px solid #EEE;
	border-left: 0;
}

.rtl .header-extras li:first-child, .rtl .header-extras li > a.triple-btn:first-child {
	margin-right: 0;
	padding-right: 0;
	border-right: 0;
}

.rtl .header-extras li .he-text, .rtl .header-extras li > a.triple-btn .he-text {
	padding-right: 15px;
	padding-left: 0;
}

.rtl .slider-caption {
	right: -25px;
	left: auto;
}

.rtl .slider-caption.slider-caption-right {
	right: auto;
	left: -25px;
}

/* Services Grid
---------------------------------------------------------------------------- */

.rtl .grid-border [class^=col-] { margin: -1px 0 0 -1px; }
/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/
.header-search{
    margin-left: 15px;
}
.header-search input{
    border: 0!important;
    background-color: #f5f5f7!important;
}
.header-search span.input-group-text{
    border: 0!important;
    background-color: #f5f5f7!important;
}
.header-search .input-group{
    border-radius: 10px
}

#top-bar{
    background-color: #313132!important;
}

.bg-gray{
    background-color: #f5f5f7;
}

.feature-box-sm{
    padding: 20px;
    position: relative;
    background-color: white;
    border-radius: 18px;
    border: 1px solid #313132;
    height: 100%;
}
.feature-box-sm .fbox-sm-content{
    width: 60%;
    display: flex;
    justify-content: center;
    flex-direction: column;
}
.feature-box-sm .fbox-sm-content h3{
    margin-bottom: 9px;
    line-height: 24px;
}
.feature-box-sm .fbox-sm-content .brand{
    margin-bottom: 15px;
}
.feature-box-sm .fbox-sm-content p{
    margin-top: 15px;
    margin-bottom: 0;
}
.feature-box-sm .fbox-sm-content p span{
    color: black;
    background-color: #00ff00;
}
.feature-box-sm .fbox-sm-content h3 span{
    color: black;
    background-color: #00ff00;
    text-transform: uppercase;
    font-style: italic;
    padding-right: 5px;
}
.feature-box-sm .fbox-sm-media{
    width: 50%;
    position: absolute;
    bottom: 15px;
    right: 10px;
}

.feature-box-lg{
    display: flex;
    justify-content: center;
    background-color: #000000;
    padding: 0 15px;
    position: relative;
    border-radius: 18px;
    height: 100%;
}
.feature-box-lg .fbox-lg-media img{
    max-width:100%; height:auto
}
.feature-box-lg .fbox-lg-media{
    display: flex;
    justify-content: center;
    flex-direction: column;
}
.feature-box-lg .fbox-lg-content{
    padding: 10px 30px;
    display: flex;
    justify-content: center;
    flex-direction: column;
}
.feature-box-lg .fbox-lg-content h3{
    color: white;
    margin-bottom: 8px;
}
.feature-box-lg .fbox-lg-content p{
    color: white;
    margin-bottom: 8px;
}
.feature-box-lg .fbox-lg-content p.p-blue{
    color: #3da6dc!important;
    margin-bottom: 0;
}

.product-item{
    position: relative;
    text-align: center;
    display: inline-block;
    float: left;
    padding: 23px;
    box-shadow: 0 0 10px #00000012;
    border: 1px solid #e9e9e9;
    border-radius: 10px;
    background: #fff;
    overflow: hidden
}
.product-item .bg-overlay-content{
    padding: 0
}
.product-item .product-desc .product-code{
    width: 100%;
    margin: 0 0 8px;
    color: #9a9a9a;
    font-size: 10px;
    font-weight: 400;
}
.product-item .product-desc .product-title h3 a{
    width: 100%;
    padding: 0;
    line-height: 20px;
    height: 40px;
    font-weight: 400;
    font-size: 15px;
    color: #1d1d1f;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-bottom: 15px;
}
.product-item .product-desc .product-price{
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
}
.product-item .product-desc .product-price del{
    font-size: 18px;
    color: #9a9a9a;
    -moz-text-decoration-color: #9a9a9a;
    text-decoration-color: #9a9a9a;
    line-height: .8;
    font-weight: 400;
    text-decoration: line-through;
}
.product-item .product-desc .product-price ins{
    color: #1d1d1f;
    font-size: 18px;
    line-height: .8;
    font-weight: 500;
}
.product-item .product-desc .product-additional-info{
    display: flex!important;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    float: left;
    text-align: center;
    color: #00bc52;
    font-size: 12px;
    font-weight: 400;
    line-height: 40px;
}


.apple-promo-box{
    padding: 25px 10px;
    background-color: white;
    border-radius: 18px;
    height: 100%;
    flex-direction: column;
    display: flex!important;
    align-items: center;
    justify-content: space-between;
}
.apple-promo-box.dark{
    background-color: black;
}
.brand{
    display: flex!important;
    align-items: center;
    justify-content: center;
    gap: 5px;
    font-size: 18px;
}
.apple-promo-box .promo-desc .title{
    text-align: center;
    margin: 5px 0;
}
.apple-promo-box .promo-desc h3{
    text-align: center;
    margin: 5px 0;
    font-size: 36px
}
.apple-promo-box .promo-button{
    display: flex!important;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
}

.apple-promo-box.px-0 .promo-media, .apple-promo-box.pb-0.px-0 .promo-media img{
    width: 100%
}
.apple-promo-box.px-0 .promo-button, .apple-promo-box.pb-0.px-0 .promo-desc{
    padding-left: 10px;
    padding-right: 10px;
}

.apple-sales-box{
    height: 100%;
    display: flex!important;
    align-items: center;
    justify-content: end;
    flex-direction: column;
    padding: 10px;
}
.apple-sales-box .sales-button{
    width: 100%
}

#search-input{
    font-size: 13px;
    height: 40px;
    border-radius: 10px 0 0 10px;
}
#search-input:focus {
    outline:none!important;
    outline-width: 0!important;
}

.mega-nav{
    opacity: 0!important;
    position: absolute;
    z-index: 1;
}
.mega-nav-clone{
    opacity: 1!important;
    background-color: white;
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 3;
}

.header-row:has(#online-shop:hover) .mega-nav,
.header-row:has(.mega-nav:hover) .mega-nav,
.header-row:has(.mega-nav-clone:hover) .mega-nav{
    opacity: 1!important;
    z-index: 4!important;
}
.header-row:has(#online-shop:hover) .primary-menu.with-arrows,
.header-row:has(.mega-nav:hover) .primary-menu.with-arrows,
.header-row:has(.mega-nav-clone:hover) .primary-menu.with-arrows{
    opacity: 0;
    z-index: 1!important;
}
.header-row:has(#online-shop:hover) .lg-gap,
.header-row:has(.mega-nav:hover) .lg-gap,
.header-row:has(.mega-nav-clone:hover) .lg-gap{
    z-index: 1!important;
}

.mega-menu-content{
    left: 0!important;
    transform: unset!important;
}

.mega-nav .mega-menu-content .sub-menu-container .menu-link p{
    display: flex;
    justify-content: left;
    align-items: center;
    height: 40px;
    line-height: 40px;
    font-weight: 500;
}

.triple-btn img{
    width: auto;;
    height: 48px;
    padding: 5px 5px 5px 5px;
}

.mega-menu-icons{
    height: 25px;
    padding-right: 5px;
    width: auto;
    display: inline-block;
}

@media (min-width: 768px) and (max-width: 1200px){
    .product-price{
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
    }
    .product-price del{
        margin-bottom: 5px;
    }
}