/**
 * @package so Categories for HikaShop
 * @version 1.0.0
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
 * @copyright (c) 2014 YouTech Company. All Rights Reserved.
 * @author YouTech Company http://www.smartaddons.com
 *
 */
 
/*  +----------------------------------------------------+
        TABLE OF CONTENTS
    +----------------------------------------------------+

    [1]     CSS MODULE CATEGORIES
    
*/
.clear {
	clear: both;
}
.child-cat{overflow:hidden}
.so-categories {
	margin: 20px 0;
	overflow: hidden;
}

.so-categories .intro_text,
.so-categories .footer_text {
	margin: 10px 0px;
}

.so-categories .cat-wrap {
	width: 100%;
	display: inline-block;
}
.so-categories  .title-cat{font-size:14px;font-weight:bold;margin-bottom:5px;}
/*############################################## Css Device ##################################*/
.so-categories.lt-ie9.preset01-1 .cat-wrap .content-box {
	float: left;
	margin: 0;
	width: 100%;
}

.so-categories.lt-ie9.preset01-2 .cat-wrap .content-box {
	float: left;
	margin: 0 1%;
	width: 48%;
}

.so-categories.lt-ie9.preset01-3 .cat-wrap .content-box {
	float: left;
	margin: 0 1%;
	width: 31.3333%;
}

.so-categories.lt-ie9.preset01-4 .cat-wrap .content-box {
	float: left;
	margin: 0 1%;
	width: 23%;
}

.so-categories.lt-ie9.preset01-5 .cat-wrap .content-box {
	float: left;
	margin: 0 1%;
	width: 18%;
}

.so-categories.lt-ie9.preset01-6 .cat-wrap .content-box {
	float: left;
	margin: 0 1%;
	width: 14.6666%;
}

.so-categories.lt-ie9.preset01-1 .clr1,
.so-categories.lt-ie9.preset01-2 .clr2,
.so-categories.lt-ie9.preset01-3 .clr3,
.so-categories.lt-ie9.preset01-4 .clr4,
.so-categories.lt-ie9.preset01-5 .clr5,
.so-categories.lt-ie9.preset01-6 .clr6 {
	clear: both;
}

@media all and (max-width: 320px) {
	.so-categories.preset05-1 .cat-wrap .content-box {
		float: left;
		margin: 0;
		width: 100%;
	}

	.so-categories.preset05-2 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 48%;
	}

	.so-categories.preset05-3 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 31.3333%;
	}

	.so-categories.preset05-4 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 23%;
	}

	.so-categories.preset05-5 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 18%;
	}

	.so-categories.preset05-6 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 14.6666%;
	}

	.so-categories.preset05-1 .clr1,
	.so-categories.preset05-2 .clr2,
	.so-categories.preset05-3 .clr3,
	.so-categories.preset05-4 .clr4,
	.so-categories.preset05-5 .clr5,
	.so-categories.preset05-6 .clr6 {
		clear: both;
	}
}

@media all and (min-width: 321px) and (max-width: 480px) {
	.so-categories.preset04-1 .cat-wrap .content-box {
		float: left;
		margin: 0;
		width: 100%;
	}

	.so-categories.preset04-2 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 48%;
	}

	.so-categories.preset04-3 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 31.3333%;
	}

	.so-categories.preset04-4 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 23%;
	}

	.so-categories.preset04-5 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 18%;
	}

	.so-categories.preset04-6 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 14.6666%;
	}

	.so-categories.preset04-1 .clr1,
	.so-categories.preset04-2 .clr2,
	.so-categories.preset04-3 .clr3,
	.so-categories.preset04-4 .clr4,
	.so-categories.preset04-5 .clr5,
	.so-categories.preset04-6 .clr6 {
		clear: both;
	}
}

@media all and (min-width: 481px) and (max-width: 768px) {
	.so-categories.preset03-1 .cat-wrap .content-box {
		float: left;
		margin: 0;
		width: 100%;
	}

	.so-categories.preset03-2 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 48%;
	}

	.so-categories.preset03-3 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 31.3333%;
	}

	.so-categories.preset03-4 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 23%;
	}

	.so-categories.preset03-5 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 18%;
	}

	.so-categories.preset03-6 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 14.6666%;
	}

	.so-categories.preset03-1 .clr1,
	.so-categories.preset03-2 .clr2,
	.so-categories.preset03-3 .clr3,
	.so-categories.preset03-4 .clr4,
	.so-categories.preset03-5 .clr5,
	.so-categories.preset03-6 .clr6 {
		clear: both;
	}
}

@media all and (min-width: 769px) and (max-width: 1200px) {
	.so-categories.preset02-1 .cat-wrap .content-box {
		float: left;
		margin: 0;
		width: 100%;
	}

	.so-categories.preset02-2 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 48%;
	}

	.so-categories.preset02-3 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 31.3333%;
	}

	.so-categories.preset02-4 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 23%;
	}

	.so-categories.preset02-5 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 18%;
	}

	.so-categories.preset02-6 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 14.6666%;
	}

	.so-categories.preset02-1 .clr1,
	.so-categories.preset02-2 .clr2,
	.so-categories.preset02-3 .clr3,
	.so-categories.preset02-4 .clr4,
	.so-categories.preset02-5 .clr5,
	.so-categories.preset02-6 .clr6 {
		clear: both;
	}
}

@media all and (min-width: 1201px) {
	.so-categories.preset01-1 .cat-wrap .content-box {
		float: left;
		margin: 0;
		width: 100%;
	}

	.so-categories.preset01-2 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 48%;
	}

	.so-categories.preset01-3 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 31.3333%;
	}

	.so-categories.preset01-4 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 23%;
	}

	.so-categories.preset01-5 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 18%;
	}

	.so-categories.preset01-6 .cat-wrap .content-box {
		float: left;
		margin: 0 1%;
		width: 14.6666%;
	}

	.so-categories.preset01-1 .clr1,
	.so-categories.preset01-2 .clr2,
	.so-categories.preset01-3 .clr3,
	.so-categories.preset01-4 .clr4,
	.so-categories.preset01-5 .clr5,
	.so-categories.preset01-6 .clr6 {
		clear: both;
	}
}

/*################################# End css Device #############################################*/

.so-categories .cat-wrap .content-box {
	overflow: hidden;
	line-height: 20px;
	padding-bottom: 15px;
}

.so-categories .cat-wrap .content-box .cat-title a {
	font-weight: bold;
	font-size:13px;
}

.so-categories .cat-wrap.theme1 .content-box .child-cat .child-cat-title {
	float: none;
	padding: 0;
}

.so-categories .cat-wrap .content-box .child-cat .child-cat-title {
	float: left;
	padding-right: 5px;
}

.so-categories .cat-wrap.theme3 .content-box .child-cat .child-cat-title {
	float: left;
	display: inline;
}

.so-categories .cat-wrap.theme2 .content-box img,
.so-categories .cat-wrap.theme3 .content-box img {
	width: 100%;
	display: block;
	max-width: 100%;
	box-shadow: #000 0em 0em 0em;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.so-categories .cat-wrap .image-cat {
	overflow: hidden;
}

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat .child-cat-info .image-cat {
	float: left;
	width: 30%;
	margin: 0;
	margin: 0 13px 0 0;
	overflow: hidden;
}

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat .child-cat-info .image-cat a {
	display: block;
	border: 0;
	width: 100%;
	float: left;
	overflow: hidden;
	font-size:13px;
}

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat .child-cat-info .image-cat img {
	width: 100%;
	display: block;
	max-width: 100%;
	box-shadow: #000 0em 0em 0em;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.so-categories .cat-wrap img:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	box-shadow: #000 0em 0em 0em;
	-webkit-transform: scale(1.1, 1.1);
	-moz-transform: scale(1.1, 1.1);
	-o-transform: scale(1.1, 1.1);
	-ms-transform: scale(1.1, 1.1);
	transform: scale(1.1, 1.1);
}

/*#################### css for theme 2 ######################*/
.so-categories .cat-wrap.theme2 .arrow {
	background: url(../images/arrow.png) no-repeat;
	margin-top: 6px;
	width: 6px;
	height: 7px;
	float: left;
	padding-right: 10px;
}

.so-categories .cat-wrap.theme2 .content-box .parent-cat {
	float: left;
	margin: 0 10px 10px 0;
	max-width: 50%;
}

.so-categories .cat-wrap.theme2 .content-box .parent-cat .cat-title {
	padding-bottom: 5px;
}

.so-categories .cat-wrap.theme2 .content-box .child-cat .child-cat-title {
	float: none;
	overflow: hidden;
}

/*#################### css for theme 3 ######################*/
.so-categories .cat-wrap.theme3 .content-box .cat-title {
	
}

/*#################### css for theme 4 ######################*/
.so-categories.theme4 {
	padding: 1px;
}

.so-categories .cat-wrap.theme4 {
	border: 1px solid #CCCCCC;
	width: 100%;
	margin: 0 -1px;
	height: auto;
}

.so-categories .cat-wrap.theme4 .so-categories-inner {
	width: 100%;
	float: left;
	padding: 0px;
	margin: 0px;
}

.so-categories .cat-wrap.theme4 .so-categories-heading {
	background: url(../images/bk.gif) repeat-x;
	height: 24px;
	cursor: pointer;
}

.so-categories .cat-wrap.theme4 .so-categories-heading .icon_left {
	background: url(../images/icon.png) no-repeat;
	margin-top: 8px;
	width: 7px;
	height: 7px;
	margin-left: 5px;
	float: left
}

.so-categories .cat-wrap.theme4 .so-categories-heading .icon_right {
	background: url(../images/plus.gif) no-repeat;
	margin-top: 5px;
	margin-right: 5px;
	width: 13px;
	height: 13px;
	float: right
}

.so-categories .cat-wrap.theme4 .so-categories-inner.selected .icon_right {
	background: url(../images/minus.gif) no-repeat;
}

.so-categories .cat-wrap.theme4 .so-categories-heading .cat-title {
	padding-left: 5px;
	line-height: 24px;
	float: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 75%;
}

.so-categories .cat-wrap.theme4 .so-categories-content {

	height: 0;
	overflow: hidden;
	width: 100%;
}

/* .so-categories .cat-wrap.theme4 .so-categories-inner.selected .so-categories-content{
	margin:10px;
    margin-bottom:10px;
} */

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat {
	padding: 15px;
	padding-bottom: 0px;
	overflow: hidden;

}

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat.cat-lastitem {
	padding-bottom: 15px;
}

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat.subcat-empty {
	padding: 10px;
}

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat .child-cat-info {
	display: block;
}

.so-categories .cat-wrap.theme4 .so-categories-content .child-cat .image-cat {
	float: left;
	margin-right: 10px;
	overflow: hidden;
}

/* .so-categories .cat-wrap.theme4 .so-categories-content .child-cat .child-cat-desc{
	float:left;
} */
.so-categories .cat-wrap.theme4 .so-categories-content .child-cat .child-cat-desc .child-cat-title,
.so-categories .cat-wrap.theme4 .so-categories-content .child-cat .child-cat-desc .child-cat-title a {
	float: left;
	font-weight: bold;
	padding-right: 3px;
	font-size:13px;
}

@media all and (max-width: 480px) {
	.so-categories .cat-wrap.theme2 .content-box .parent-cat {
		margin: 0 0 10px 0;
		width: 100%;
		float: none;
		max-width: 100%;
	}

	.so-categories .cat-wrap.theme2 .content-box img {
		width: 100%;
		display: block;
		max-width: 100%;
	}

}

.cf:before,
.cf:after {
	content: " ";
	display: table;
}

.cf:after {
	clear: both;
}



/* ==========================================================================
   SAFE MOBILE RESPONSIVE PATCH (V5 - GENTLE)
   Fixes horizontal overflow ONLY on mobile/tablet without touching Desktop layout.
   ========================================================================== */
@media (max-width: 991.98px) {
    html, body {
        overflow-x: hidden !important;
        width: 100% !important;
        position: relative;
    }
    .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    img, video, iframe {
        max-width: 100% !important;
        height: auto !important;
    }
    .container, .container-fluid, .container-fluide {
        padding-left: 15px !important;
        padding-right: 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ==========================================================================
   ULTRA-SAFE ALIGNMENT & RESPONSIVE PATCH (V6)
   Fixes Desktop centering, Mobile stacking, and Universal Overflow.
   ========================================================================== */

/* 1. Global Centering & Overflow Protection (All Resolutions) */
html, body {
    max-width: 100vw !important;
    overflow-x: hidden !important;
}

/* Ensure all primary containers are centered in the viewport */
.container, .auto-container, .container-fluid, .boxed_wrapper, .page-wraper {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Prevent Row-bleed and ensure centered flex rows */
.row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
}

/* 2. Mobile & Tablet Alignment (<= 991.98px) */
@media (max-width: 991.98px) {
    /* Center all headings and titles for a balanced mobile look */
    h1, h2, h3, h4, h5, h6, 
    [class*="title"], [class*="heading"], [class*="hero-text"] {
        text-align: center !important;
    }
    
    /* Standardize mobile column stacking and centering */
    [class*="col-"] {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        float: none !important;
        margin-bottom: 20px !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Force-center any floating elements (logos, buttons, icons) on mobile */
    .float-left, .float-right, .pull-left, .pull-right {
        float: none !important;
        display: block !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    /* Fix for absolutely positioned text layers in sliders */
    .tp-caption {
        left: 0 !important;
        width: 100% !important;
        text-align: center !important;
    }
    
    /* Standard mobile container padding */
    .container, .auto-container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/* 3. Universal Media Stability */
img, video, iframe, canvas {
    max-width: 100% !important;
    height: auto !important;
}