body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	color: #666;
	font-size: 12px;
	line-height: 20px;
	width: 100%;
}
h1, h2, h3, h4, h5, h6 {
	color: #444;
}
/* default font size */
.fa {
	font-size: 14px;
}
/* Override the bootstrap defaults */
h1 {
	font-size: 33px;
}
h2 {
	font-size: 27px;
}
h3 {
	font-size: 21px;
}
h4 {
	font-size: 15px;
}
h5 {
	font-size: 12px;
}
h6 {
	font-size: 10.2px;
}
a {
	color: #23a1d1;
}
a:hover {
	text-decoration: none;
}
legend {
	font-size: 18px;
	padding: 7px 0px
}
label {
	font-size: 12px;
	font-weight: normal;
}
select.form-control, textarea.form-control, input[type="text"].form-control, input[type="password"].form-control, input[type="datetime"].form-control, input[type="datetime-local"].form-control, input[type="date"].form-control, input[type="month"].form-control, input[type="time"].form-control, input[type="week"].form-control, input[type="number"].form-control, input[type="email"].form-control, input[type="url"].form-control, input[type="search"].form-control, input[type="tel"].form-control, input[type="color"].form-control {
	font-size: 12px;
}
.input-group input, .input-group select, .input-group .dropdown-menu, .input-group .popover {
	font-size: 12px;
}
.input-group .input-group-addon {
	font-size: 12px;
	height: 30px;
}
/* Fix some bootstrap issues */
span.hidden-xs, span.hidden-sm, span.hidden-md, span.hidden-lg {
	display: inline;
}

.nav-tabs {
	margin-bottom: 15px;
}
div.required .control-label:before {
	content: '* ';
	color: #F00;
	font-weight: bold;
}
/* Gradent to all drop down menus */
.dropdown-menu li > a:hover {
	text-decoration: none;
	color: #ffffff;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
}
/* top */
#top {
	background-color: #EEEEEE;
	border-bottom: 1px solid #e2e2e2;
	padding: 4px 0px 3px 0;
	margin: 0 0 20px 0;
	min-height: 40px;
}
#top .container {
	padding: 0 20px;
}
#top #currency .currency-select {
	text-align: left;
}
#top #currency .currency-select:hover {
	text-shadow: none;
	color: #ffffff;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
}
#top .btn-link, #top-links li, #top-links a {
	color: #888;
	text-shadow: 0 1px 0 #FFF;
	text-decoration: none;
}
#top .btn-link:hover, #top-links a:hover {
	color: #444;
}
#top-links .dropdown-menu a {
	text-shadow: none;
}
#top-links .dropdown-menu a:hover {
	color: #FFF;
}
#top .btn-link strong {
	font-size: 14px;
        line-height: 14px;
}
#top-links {
	padding-top: 6px;
}
#top-links a + a {
	margin-left: 15px;
}
/* logo */
#logo {
	margin: 0 0 10px 0;
}
/* search */
#search {
	margin-bottom: 10px;
}
#search .input-lg {
	height: 40px;
	line-height: 20px;
	padding: 0 10px;
}
#search .btn-lg {
	font-size: 15px;
	line-height: 18px;
	padding: 10px 35px;
	text-shadow: 0 1px 0 #FFF;
}
/* cart */
#cart {
	margin-bottom: 10px;
}
#cart > .btn {
	font-size: 12px;
	line-height: 18px;
	color: #FFF;
}
#cart.open > .btn {
	background-image: none;
	background-color: #FFFFFF;
	border: 1px solid #E6E6E6;
	color: #666;
	box-shadow: none;
	text-shadow: none;
}
#cart.open > .btn:hover {
	color: #444;
}
#cart .dropdown-menu {
	background: #eee;
	z-index: 1001;
}
#cart .dropdown-menu {
	min-width: 100%;
}
	@media (max-width: 478px) {
		#cart .dropdown-menu {
			width: 100%;
		}
	}
#cart .dropdown-menu table {
	margin-bottom: 10px;
}
#cart .dropdown-menu li > div {
	min-width: 427px;
	padding: 0 10px;
}
	@media (max-width: 478px) {
		#cart .dropdown-menu li > div {
			min-width: 100%;
		}
	}
#cart .dropdown-menu li p {
	margin: 20px 0;
}
/* menu */
#menu {
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
	border-color: #1f90bb #1f90bb #145e7a;
	min-height: 40px;
}
#menu .nav > li > a {
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	padding: 10px 15px 10px 15px;
	min-height: 15px;
	background-color: transparent;
}
#menu .nav > li > a:hover, #menu .nav > li.open > a {
	background-color: rgba(0, 0, 0, 0.1);
}
#menu .dropdown-menu {
	padding-bottom: 0;
}
#menu .dropdown-inner {
	display: table;
}
#menu .dropdown-inner ul {
	display: table-cell;
}
#menu .dropdown-inner a {
	min-width: 160px;
	display: block;
	padding: 3px 20px;
	clear: both;
	line-height: 20px;
	color: #333333;
	font-size: 12px;
}
#menu .dropdown-inner li a:hover {
	color: #FFFFFF;
}
#menu .see-all {
	display: block;
	margin-top: 0.5em;
	border-top: 1px solid #DDD;
	padding: 3px 20px;
	-webkit-border-radius: 0 0 4px 4px;
	-moz-border-radius: 0 0 4px 4px;
	border-radius: 0 0 3px 3px;
	font-size: 12px;
}
#menu .see-all:hover, #menu .see-all:focus {
	text-decoration: none;
	color: #ffffff;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
}
#menu #category {
	float: left;
	padding-left: 15px;
	font-size: 16px;
	font-weight: 700;
	line-height: 40px;
	color: #fff;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}
#menu .btn-navbar {
	font-size: 15px;
	font-stretch: expanded;
	color: #FFF;
	padding: 2px 18px;
	float: right;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
	border-color: #1f90bb #1f90bb #145e7a;
}
#menu .btn-navbar:hover, #menu .btn-navbar:focus, #menu .btn-navbar:active, #menu .btn-navbar.disabled, #menu .btn-navbar[disabled] {
	color: #ffffff;
	background-color: #229ac8;
}
@media (min-width: 768px) {
	#menu .dropdown:hover .dropdown-menu {
		display: block;
	}
}
@media (max-width: 767px) {
	#menu {
		border-radius: 4px;
	}
	#menu div.dropdown-inner > ul.list-unstyled {
		display: block;
	}
	#menu div.dropdown-menu {
		margin-left: 0 !important;
		padding-bottom: 10px;
		background-color: rgba(0, 0, 0, 0.1);
	}
	#menu .dropdown-inner {
		display: block;
	}
	#menu .dropdown-inner a {
		width: 100%;
		color: #fff;
	}
	#menu .dropdown-menu a:hover,
	#menu .dropdown-menu ul li a:hover {
		background: rgba(0, 0, 0, 0.1);
	}
	#menu .see-all {
		margin-top: 0;
		border: none;
		border-radius: 0;
		color: #fff;
	}
}
/* content */
#content {
	min-height: 600px;
}
/* footer */
footer {
	margin-top: 30px;
	padding-top: 30px;
	background-color: #303030;
	border-top: 1px solid #ddd;
	color: #e2e2e2;
}
footer hr {
	border-top: none;
	border-bottom: 1px solid #666;
}
footer a {
	color: #ccc;
}
footer a:hover {
	color: #fff;
}
footer h5 {
	font-family: 'Open Sans', sans-serif;
	font-size: 13px;
	font-weight: bold;
	color: #fff;
}
/* alert */
.alert {
	padding: 8px 14px 8px 14px;
}
/* breadcrumb */
.breadcrumb {
	margin: 0 0 20px 0;
	padding: 8px 0;
	border: 1px solid #ddd;
}
.breadcrumb i {
	font-size: 15px;
}
.breadcrumb > li {
	text-shadow: 0 1px 0 #FFF;
	padding: 0 20px;
	position: relative;
	white-space: nowrap;
}
.breadcrumb > li + li:before {
	content: '';
	padding: 0;
}
.breadcrumb > li:after {
	content: '';
	display: block;
	position: absolute;
	top: -3px;
	right: -5px;
	width: 26px;
	height: 26px;
	border-right: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.pagination {
	margin: 0;
}
/* buttons */
.buttons {
	margin: 1em 0;
}
.btn {
	padding: 7.5px 12px;
	font-size: 12px;
	border: 1px solid #cccccc;
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
}
.btn-xs {
	font-size: 9px;
}
.btn-sm {
	font-size: 10.2px;
}
.btn-lg {
	padding: 10px 16px;
	font-size: 15px;
}
.btn-group > .btn, .btn-group > .dropdown-menu, .btn-group > .popover {
	font-size: 12px;
}
.btn-group > .btn-xs {
	font-size: 9px;
}
.btn-group > .btn-sm {
	font-size: 10.2px;
}
.btn-group > .btn-lg {
	font-size: 15px;
}
.btn-default {
	color: #777;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
	background-color: #e7e7e7;
	background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
	background-repeat: repeat-x;
	border-color: #dddddd #dddddd #b3b3b3 #b7b7b7;
}
.btn-primary {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
	border-color: #1f90bb #1f90bb #145e7a;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] {
	background-color: #1f90bb;
	background-position: 0 -15px;
}
.btn-warning {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #faa732;
	background-image: linear-gradient(to bottom, #fbb450, #f89406);
	background-repeat: repeat-x;
	border-color: #f89406 #f89406 #ad6704;
}
.btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] {
	box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-danger {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #da4f49;
	background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
	background-repeat: repeat-x;
	border-color: #bd362f #bd362f #802420;
}
.btn-danger:hover, .btn-danger:active, .btn-danger.active, .btn-danger.disabled, .btn-danger[disabled] {
	box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-success {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #5bb75b;
	background-image: linear-gradient(to bottom, #62c462, #51a351);
	background-repeat: repeat-x;
	border-color: #51a351 #51a351 #387038;
}
.btn-success:hover, .btn-success:active, .btn-success.active, .btn-success.disabled, .btn-success[disabled] {
	box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-info {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #df5c39;
	background-image: linear-gradient(to bottom, #e06342, #dc512c);
	background-repeat: repeat-x;
	border-color: #dc512c #dc512c #a2371a;
}
.btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] {
	background-image: none;
	background-color: #df5c39;
}
.btn-link {
	border-color: rgba(0, 0, 0, 0);
	cursor: pointer;
	color: #23A1D1;
	border-radius: 0;
}
.btn-link, .btn-link:active, .btn-link[disabled] {
	background-color: rgba(0, 0, 0, 0);
	background-image: none;
	box-shadow: none;
}
.btn-inverse {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #363636;
	background-image: linear-gradient(to bottom, #444444, #222222);
	background-repeat: repeat-x;
	border-color: #222222 #222222 #000000;
}
.btn-inverse:hover, .btn-inverse:active, .btn-inverse.active, .btn-inverse.disabled, .btn-inverse[disabled] {
	background-color: #222222;
	background-image: linear-gradient(to bottom, #333333, #111111);
}
/* list group */
.list-group a {
	border: 1px solid #DDDDDD;
	color: #888888;
	padding: 8px 12px;
}
.list-group a.active, .list-group a.active:hover, .list-group a:hover {
	color: #444444;
	background: #eeeeee;
	border: 1px solid #DDDDDD;
	text-shadow: 0 1px 0 #FFF;
}
/* carousel */
.carousel-caption {
	color: #FFFFFF;
	text-shadow: 0 1px 0 #000000;
}
.carousel-control .icon-prev:before {
	content: '\f053';
	font-family: FontAwesome;
}
.carousel-control .icon-next:before {
	content: '\f054';
	font-family: FontAwesome;
}
/* product list */
.product-thumb {
	border: 1px solid #ddd;
	margin-bottom: 20px;
	overflow: auto;
}
.product-thumb .image {
	text-align: center;
}
.product-thumb .image a {
	display: block;
}
.product-thumb .image a:hover {
	opacity: 0.8;
}
.product-thumb .image img {
	margin-left: auto;
	margin-right: auto;
}
.product-grid .product-thumb .image {
	float: none;
}
@media (min-width: 767px) {
.product-list .product-thumb .image {
	float: left;
	padding: 0 15px;
}
}
.product-thumb h4 {
	font-weight: bold;
}
.product-thumb .caption {
	padding: 0 20px;
	min-height: 180px;
}
.product-list .product-thumb .caption {
	margin-left: 230px;
}
@media (max-width: 1200px) {
.product-grid .product-thumb .caption {
	min-height: 210px;
	padding: 0 10px;
}
}
@media (max-width: 767px) {
.product-list .product-thumb .caption {
	min-height: 0;
	margin-left: 0;
	padding: 0 10px;
}
.product-grid .product-thumb .caption {
	min-height: 0;
}
}
.product-thumb .rating {
	padding-bottom: 10px;
}
.rating .fa-stack {
	font-size: 8px;
}
.rating .fa-star-o {
	color: #999;
	font-size: 15px;
}
.rating .fa-star {
	color: #FC0;
	font-size: 15px;
}
.rating .fa-star + .fa-star-o {
	color: #E69500;
}
h2.price {
	margin: 0;
}
.product-thumb .price {
	color: #444;
}
.product-thumb .price-new {
	font-weight: 600;
}
.product-thumb .price-old {
	color: #999;
	text-decoration: line-through;
	margin-left: 10px;
}
.product-thumb .price-tax {
	color: #999;
	font-size: 12px;
	display: block;
}
.product-thumb .button-group {
	border-top: 1px solid #ddd;
	background-color: #eee;
	overflow: auto;
}
.product-list .product-thumb .button-group {
	border-left: 1px solid #ddd;
}
@media (max-width: 768px) {
	.product-list .product-thumb .button-group {
		border-left: none;
	}
}
.product-thumb .button-group button {
	width: 60%;
	border: none;
	display: inline-block;
	float: left;
	background-color: #eee;
	color: #888;
	line-height: 38px;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
}
.product-thumb .button-group button + button {
	width: 20%;
	border-left: 1px solid #ddd;
}
.product-thumb .button-group button:hover {
	color: #444;
	background-color: #ddd;
	text-decoration: none;
	cursor: pointer;
}
@media (max-width: 1200px) {
	.product-thumb .button-group button, .product-thumb .button-group button + button {
		width: 33.33%;
	}
}
@media (max-width: 767px) {
	.product-thumb .button-group button, .product-thumb .button-group button + button {
		width: 33.33%;
	}
}
.thumbnails {
	overflow: auto;
	clear: both;
	list-style: none;
	padding: 0;
	margin: 0;
}
.thumbnails > li {
	margin-left: 20px;
}
.thumbnails {
	margin-left: -20px;
}
.thumbnails > img {
	width: 100%;
}
.image-additional a {
	margin-bottom: 20px;
	padding: 5px;
	display: block;
	border: 1px solid #ddd;
}
.image-additional {
	max-width: 78px;
}
.thumbnails .image-additional {
	float: left;
	margin-left: 20px;
}

/* fixed colum left + content + right*/
@media (min-width: 768px) {
    #column-left  .product-layout .col-md-3 {
       width: 100%;
    }
    #column-left + #content .product-layout .col-md-3 {
       width: 50%;
    }
    #column-left + #content + #column-right .product-layout .col-md-3{
       width: 100%;
    }
    #content + #column-right .product-layout .col-md-3{
       width: 100%;
    }
}

/* fixed product layouts used in left and right columns */
#column-left .product-layout,
#column-right .product-layout {
	width: 100%;
}

/* fixed mobile cart quantity input */
.input-group .form-control[name^=quantity] {
	min-width: 50px;
}


/* Vikon Luxury Green theme overrides */
:root{--forest:#082d1f;--leaf:#739b54;--lime:#b9cf83;--cream:#f4f1e5;--paper:#fbfaf4;--ink:#10201a;--line:rgba(16,32,26,.13);--muted:#66736c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}.wrap{max-width:1360px;margin:auto;padding:0 42px}
.announcement{background:var(--forest);color:#e8efdf;height:34px;display:flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.vikonHeader{position:absolute;left:0;right:0;top:34px;z-index:100;color:#fff;background:linear-gradient(180deg,rgba(0,0,0,.42),transparent);border-bottom:1px solid rgba(255,255,255,.12)}
.vikonNav{height:126px;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;position:relative}
.navLeft,.navRight{display:flex;gap:28px;align-items:center;font-size:12px;font-weight:700;letter-spacing:.04em;padding-top:34px}.navRight{justify-content:flex-end}.navLeft a,.navRight a{opacity:.9}.navLeft a:hover,.navRight a:hover{opacity:1;color:var(--lime)}
.desktopHeaderSearch{height:34px;width:158px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.32);border-radius:18px;padding:0 11px;background:rgba(255,255,255,.06);transition:border-color .2s ease,background .2s ease;width:158px}
.desktopHeaderSearch:focus-within{border-color:var(--lime);background:rgba(255,255,255,.1)}
.desktopHeaderSearch .fa-search{font-size:13px;opacity:.9;flex:0 0 auto}
.desktopHeaderSearch input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#fff;font:inherit;font-size:11px;font-weight:600;letter-spacing:.02em;padding:0}
.desktopHeaderSearch input::placeholder{color:rgba(255,255,255,.78);opacity:1}

.brandMark{position:relative;display:flex;justify-content:center;height:126px}
.brandMark:focus{outline:none!important;box-shadow:none!important}.logo{width:180px;height:112px;object-fit:contain;filter:drop-shadow(0 8px 20px rgba(0,0,0,.25));margin-top:2px}
.logoStats{position:absolute;left:50%;top:82px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:24px;white-space:nowrap;color:#fff;font-size:14px;line-height:1;letter-spacing:.10em;text-transform:uppercase;font-weight:800;z-index:3;padding:10px 20px;border:1px solid rgba(232,239,223,.28);border-radius:999px;background:rgba(8,45,31,.78);backdrop-filter:blur(10px);box-shadow:0 8px 28px rgba(0,0,0,.22)}
.logoStats span{display:inline-flex;align-items:center;gap:9px}.logoStats .logoSideStat{font-weight:800;font-style:italic;letter-spacing:.06em;color:#fff}.statIcon{width:25px;height:25px;flex:0 0 25px;stroke:var(--lime);fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(185,207,131,.18))}.logoStats i{display:inline-block;width:1px;height:30px;background:rgba(232,239,223,.48);margin:0 2px}
.categoryBar{border-top:1px solid rgba(255,255,255,.1);background:rgba(8,45,31,.86);backdrop-filter:blur(12px)}
.categoryNav{display:flex;align-items:center;gap:0;min-height:48px;overflow:visible}.categoryNav>a,.categoryItem>a{display:flex;align-items:center;gap:8px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:16px 18px;white-space:nowrap}.categoryLead{color:var(--lime)!important}.categoryItem{position:relative}.categoryItem>a:hover,.categoryNav>a:hover{background:rgba(185,207,131,.08);color:var(--lime)}
.catChevron{font-size:14px;color:var(--lime)}.categoryMega{display:none;position:absolute;left:0;top:100%;min-width:300px;background:rgba(251,250,244,.98);color:var(--ink);border:1px solid rgba(16,32,26,.12);box-shadow:0 22px 50px rgba(0,0,0,.2);z-index:200}
.categoryItem:hover .categoryMega{display:block}.categoryMegaInner{padding:22px}.categoryMegaTitle{font-family:Manrope;font-size:18px;font-weight:800;margin-bottom:14px}.categoryChildren{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}.categoryChildren a{font-size:12px;color:#526059;padding:7px 0;border-bottom:1px solid rgba(16,32,26,.07)}.categoryChildren a:hover{color:var(--leaf)}.categoryAll{display:block;margin-top:14px;padding-top:13px;border-top:1px solid var(--line);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--leaf)}
.hero{position:relative;min-height:810px;background:var(--forest);color:#fff;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 18%,rgba(139,181,102,.24),transparent 30%),radial-gradient(circle at 16% 80%,rgba(76,151,111,.18),transparent 30%)}
.heroGrid{min-height:810px;display:grid;grid-template-columns:.92fr 1.08fr;position:relative;z-index:2}.heroCopy{display:flex;flex-direction:column;justify-content:center;padding:220px 50px 80px 0}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--lime);font-weight:800;margin-bottom:21px}
.heroCopy h1{font-family:"Manrope",Arial,sans-serif;font-size:78px;line-height:.94;letter-spacing:-.06em;margin:0 0 25px;font-weight:600}h1 em{font-family:"Playfair Display",Georgia,serif;font-weight:500;color:#d8e6bd}.heroCopy p{max-width:525px;color:#c9d4cb;font-size:17px;line-height:1.8;margin:0 0 31px}
.ctaRow{display:flex;gap:11px;align-items:center;flex-wrap:wrap}.cta{display:inline-flex;align-items:center;gap:12px;padding:15px 20px;background:var(--lime);color:#10251a;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.cta.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25)}
.heroVisual{position:relative;display:flex;align-items:flex-end;justify-content:center;padding-top:160px;overflow:hidden}.ownerFrame{height:650px;width:min(100%,580px);position:relative;overflow:hidden;border-radius:320px 320px 14px 14px;border:1px solid rgba(255,255,255,.2);box-shadow:0 30px 100px rgba(0,0,0,.35);animation:float 7s ease-in-out infinite}.ownerFrame:before{content:"";position:absolute;inset:10px;border:1px solid rgba(222,235,198,.45);border-radius:310px 310px 8px 8px;z-index:2;pointer-events:none}.ownerFrame img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 50%;filter:saturate(.88) contrast(1.03);transform:none;z-index:3}.ownerLabel{position:absolute;z-index:4;bottom:25px;left:25px;right:25px;background:rgba(8,45,31,.78);backdrop-filter:blur(12px);padding:16px 18px;border:1px solid rgba(255,255,255,.15)}.ownerLabel b{display:block;font-size:13px;letter-spacing:.06em}.ownerLabel span{font-size:11px;color:#c9d4cb}
.waterOrb{position:absolute;width:430px;height:430px;border:1px solid rgba(185,207,131,.23);border-radius:50%;right:-130px;top:165px;animation:spin 24s linear infinite}.waterOrb:before,.waterOrb:after{content:"";position:absolute;border:1px solid rgba(185,207,131,.18);border-radius:50%}.waterOrb:before{inset:34px}.waterOrb:after{inset:72px}.droplet{position:absolute;width:12px;height:18px;border-radius:70% 70% 70% 0;background:var(--lime);transform:rotate(-45deg);opacity:.8;animation:drop 3.8s ease-in infinite}.d1{right:13%;top:32%}.d2{right:26%;top:52%;animation-delay:1.1s}.d3{right:7%;top:68%;animation-delay:2.1s}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes drop{0%{transform:translateY(-20px) rotate(-45deg);opacity:0}25%{opacity:.8}100%{transform:translateY(95px) rotate(-45deg);opacity:0}}
.flow{background:var(--cream);border-bottom:1px solid var(--line);overflow:hidden}.flowTrack{height:74px;display:flex;align-items:center;gap:52px;white-space:nowrap;animation:marquee 25s linear infinite;width:max-content}.flowItem{font-family:"Playfair Display",Georgia,serif;font-size:19px;color:#234a35}.flowDot{width:5px;height:5px;border-radius:50%;background:var(--leaf);display:inline-block;margin-left:52px;vertical-align:middle}@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding:100px 0}.flow + .section{padding-top:0}.sectionHead{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.sectionHead h2{font-family:Manrope;font-size:49px;line-height:1;letter-spacing:-.05em;margin:0;max-width:680px}.sectionHead p{max-width:390px;color:var(--muted);line-height:1.7;margin:0}
.systems{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.system{position:relative;height:390px;overflow:hidden;background:#d9dfd2;color:#fff}.system:nth-child(1){grid-column:span 7}.system:nth-child(2){grid-column:span 5}.system:nth-child(3){grid-column:span 5}.system:nth-child(4){grid-column:span 7}.system img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .8s;filter:saturate(.82) brightness(.83)}.system:hover img{transform:scale(1.1);filter:saturate(1) brightness(.93)}.system:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(4,24,16,.84))}.systemInfo{position:absolute;z-index:2;left:28px;right:28px;bottom:27px;display:flex;justify-content:space-between;align-items:end}.systemInfo small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#dbe7c5}.systemInfo b{display:block;font-family:Manrope;font-size:28px;margin-top:7px}.arrow{width:43px;height:43px;border:1px solid rgba(255,255,255,.55);display:grid;place-items:center;font-size:19px}
.categoryDirectory{background:#eef3e9;padding:100px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.directoryGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.directoryItem{position:relative;display:block;background:var(--paper);border:1px solid var(--line);padding:24px 55px 24px 24px;min-height:112px;transition:transform .25s,background .25s,border-color .25s}.directoryItem:hover{transform:translateY(-2px);background:#fff;border-color:rgba(115,155,84,.45)}.directoryNumber{font-size:9px;letter-spacing:.16em;color:var(--leaf);font-weight:800;margin-bottom:10px}.directoryName{font-family:Manrope;font-size:21px;font-weight:700;color:var(--ink)}.directoryChildren{display:flex;flex-wrap:wrap;gap:5px 14px;margin-top:10px}.directoryChildren span{font-size:11px;color:var(--muted)}.directoryArrow{position:absolute;right:20px;top:24px;font-size:22px;color:var(--leaf)}
.ownerStory{background:var(--forest);color:#fff;padding:85px 0}.ownerStoryGrid{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}.ownerStory h2{font-family:Manrope;font-size:43px;letter-spacing:-.04em;margin:0 0 15px}.ownerStory p{max-width:700px;color:#c9d4cb;line-height:1.8;margin:0}.signature{font-family:"Playfair Display";font-style:italic;color:var(--lime);font-size:25px;white-space:nowrap}
.catalog{background:var(--paper);padding-bottom:0}.productLine{display:grid;grid-template-columns:170px 1fr 170px;align-items:center;border-top:1px solid var(--line);padding:18px 0;gap:25px;transition:padding .35s,background .35s}.productLine:last-child{border-bottom:1px solid var(--line)}.productLine:hover{padding-left:12px;padding-right:12px;background:#f0f4e9}.productThumb{height:115px;background:#eef0e8;overflow:hidden;display:flex;align-items:center;justify-content:center}.productThumb img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.productLine:hover .productThumb img{transform:scale(1.08)}.productText small{font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:var(--leaf);font-weight:800}.productText b{display:block;font-family:Manrope;font-size:18px;margin:6px 0}.productText span{font-size:12px;color:var(--muted)}.productAction{text-align:right;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.productAction a{color:var(--leaf)}
.contact{padding:0 0 80px}.contactBox{background:linear-gradient(135deg,#dfead4,#edf1e5);padding:55px 60px;display:flex;align-items:center;justify-content:flex-start;gap:35px;position:relative;overflow:hidden}.contactBox:after{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(94,123,72,.2);border-radius:50%;right:-80px;top:-120px}.contactBox h2{font-family:Manrope;font-size:40px;letter-spacing:-.04em;margin:0 0 10px}.contactBox p{margin:0;color:#58655c}.wa{background:#557e49;color:#fff;padding:16px 21px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;position:relative;z-index:2}
footer{background:#071e15;color:#dbe6dc;padding:58px 0}.footGrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:38px}.footGrid h4{font-size:10px;letter-spacing:.18em;text-transform:uppercase;margin:0 0 13px;color:#fff}.footGrid p,.footGrid a{font-size:12px;line-height:2;color:#9fb0a4}.footPhone{margin-top:12px}.footBrand p{max-width:290px}.footGrid ul{list-style:none;padding:0;margin:0}.footGrid a:hover{color:#fff}.footerBottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:18px;font-size:10px;color:#82968a}
.floatingWa{position:fixed;right:20px;bottom:20px;width:54px;height:54px;border-radius:50%;background:#557e49;color:#fff;display:grid;place-items:center;z-index:250;box-shadow:0 15px 35px rgba(0,0,0,.25);font-size:24px;animation:pulse 2.8s ease-in-out infinite}@keyframes pulse{0%,100%{box-shadow:0 15px 35px rgba(0,0,0,.25)}50%{box-shadow:0 15px 35px rgba(83,126,73,.38),0 0 0 9px rgba(83,126,73,.08)}}
@media(max-width:950px){.wrap{padding:0 24px}.navLeft{display:none}.vikonNav{grid-template-columns:auto 1fr auto}.heroGrid{grid-template-columns:1fr}.heroCopy{padding:205px 0 60px}.heroVisual{padding-top:0;min-height:600px}.waterOrb{right:-170px}.ownerStoryGrid{grid-template-columns:1fr;gap:18px}.signature{justify-self:start}.productLine{grid-template-columns:120px 1fr 120px}.categoryNav{overflow-x:auto}.categoryNav::-webkit-scrollbar{display:none}.directoryGrid{grid-template-columns:1fr}}
@media(max-width:600px){.announcement{font-size:8px}.wrap{padding:0 17px}.logo{width:86px;height:86px}.vikonNav{height:100px}.navLeft{display:none}.navRight{gap:12px;font-size:9px;padding-top:28px}.desktopHeaderSearch{display:none}.logoStats{top:62px;gap:7px;font-size:8px;letter-spacing:.045em;padding:7px 10px;width:max-content;max-width:calc(100vw - 24px)}.logoStats span{gap:4px}.logoStats .logoSideStat{font-size:7.5px;letter-spacing:.03em}.statIcon{width:14px;height:14px;flex-basis:14px;stroke-width:1.7}.logoStats i{margin:0 1px;height:15px}.categoryNav{min-height:42px}.categoryNav>a,.categoryItem>a{font-size:8px;padding:13px 11px}.categoryMega{position:fixed;left:10px;right:10px;top:176px;max-height:70vh;overflow:auto}.hero{min-height:auto}.heroGrid{min-height:auto}.heroCopy{padding:145px 0 48px}h1{font-size:51px}.heroCopy p{font-size:15px}.heroVisual{min-height:500px}.ownerFrame{height:500px;width:100%;border-radius:260px 260px 10px 10px} .ownerFrame img{transform:none;width:100%;object-position:95% 50%}.flowTrack{height:62px;gap:32px}.flowDot{margin-left:32px}.section{padding:70px 0}.sectionHead{display:block}.sectionHead h2{font-size:39px;margin-bottom:12px}.systems{display:grid;grid-template-columns:1fr}.system:nth-child(n){grid-column:span 1;height:310px}.ownerStory h2{font-size:35px}.productLine{grid-template-columns:82px 1fr;gap:14px}.productThumb{height:78px}.productAction{display:none}.contactBox{display:block;padding:35px 25px}.contactBox h2{font-size:32px}.wa{display:inline-flex;margin-top:20px}.footGrid{grid-template-columns:1fr 1fr}.floatingWa{right:14px;bottom:14px}.categoryDirectory{padding:70px 0}}

/* Vikon integration fixes: keep the header in document flow on OpenCart pages. */
.vikonHeader{position:relative;left:auto;right:auto;top:auto;z-index:100;color:#fff;background:var(--forest);border-bottom:1px solid rgba(255,255,255,.12)}
.vikonNav{height:178px}
.brandMark{height:178px}
.logoStats{top:120px}
body.common-home .vikonHeader{position:absolute;left:0;right:0;top:34px;background:linear-gradient(180deg,rgba(0,0,0,.42),transparent)}
body:not(.common-home) .vikonHeader{background:var(--forest)}
body:not(.common-home) .vikonHeader + *{margin-top:0}
.categoryBar{position:relative;z-index:101}
.logoStats{max-width:calc(100vw - 40px)}
@media(max-width:950px){
  .vikonNav,.brandMark{height:166px}
  .logoStats{top:108px}
}
@media(max-width:600px){
  .vikonNav,.brandMark{height:128px}
  .logoStats{top:88px}
  body.common-home .vikonHeader{top:34px}
  .categoryMega{top:170px}
}


/* Final Vikon layout refinements */
/* Keep every category available without clipping at the right edge. */
.categoryBar{width:100%;overflow:hidden}
.categoryBar .wrap{max-width:100%;padding-left:24px;padding-right:24px}
.categoryNav{width:100%;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none;justify-content:flex-start}
.categoryNav::-webkit-scrollbar{display:none}
.categoryNav>a,.categoryNav>.categoryItem{flex:0 0 auto}
.categoryNav>a,.categoryItem>a{padding-left:14px;padding-right:14px;font-size:9px}

/* Four system images: equal dimensions and soft oval presentation. */
.systems{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.system,.system:nth-child(1),.system:nth-child(2),.system:nth-child(3),.system:nth-child(4){grid-column:span 1;height:360px;border-radius:50% / 38%;}
.system{box-shadow:0 18px 40px rgba(8,45,31,.12)}
.system img{border-radius:inherit}
.system:after{border-radius:inherit}
.systemInfo{left:26px;right:26px;bottom:25px}

/* Make the theme footer unmistakably visible on the home page. */
body.common-home footer.vikonFooter{display:block!important;position:relative;z-index:2;margin-top:0}
.vikonFooter{display:block!important}

@media(max-width:950px){
  .systems{grid-template-columns:repeat(2,minmax(0,1fr))}
  .system,.system:nth-child(1),.system:nth-child(2),.system:nth-child(3),.system:nth-child(4){grid-column:span 1;height:330px}
}
@media(max-width:600px){
  .categoryBar .wrap{padding-left:10px;padding-right:10px}
  .categoryNav>a,.categoryItem>a{padding-left:11px;padding-right:11px;font-size:8px}
  .systems{grid-template-columns:1fr;gap:18px}
  .system,.system:nth-child(1),.system:nth-child(2),.system:nth-child(3),.system:nth-child(4){height:300px;border-radius:50% / 34%}
}


/* Vikon v3 homepage refinements */
/* Four equal oval cards with readable, centered titles. */
.systems{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important}
.systems .system,.systems .system:nth-child(1),.systems .system:nth-child(2),.systems .system:nth-child(3),.systems .system:nth-child(4){grid-column:auto!important;height:360px!important;min-width:0!important;border-radius:50% / 42%!important;overflow:hidden!important;position:relative!important}
.systems .system img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit!important}
.systems .systemInfo{position:absolute!important;left:22px!important;right:22px!important;bottom:24px!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:12px!important;z-index:3!important}
.systems .systemInfo>div{min-width:0!important;max-width:calc(100% - 52px)!important}
.systems .systemInfo small{display:block!important;font-size:9px!important;line-height:1.2!important;letter-spacing:.14em!important;white-space:nowrap!important}
.systems .systemInfo b{display:block!important;font-family:Manrope,Arial,sans-serif!important;font-size:21px!important;line-height:1.05!important;letter-spacing:-.02em!important;margin-top:6px!important;white-space:normal!important;overflow-wrap:anywhere!important;text-shadow:0 2px 10px rgba(0,0,0,.45)!important}
.systems .arrow{flex:0 0 42px!important;width:42px!important;height:42px!important}
/* The homepage uses its own guaranteed footer; never let it collapse or hide. */
body.common-home .homeFooter{display:block!important;visibility:visible!important;opacity:1!important;clear:both!important;background:#071e15!important;color:#dbe6dc!important;padding:58px 0!important;position:relative!important;z-index:20!important}
body.common-home .homeFooter .footGrid{display:grid!important}
body.common-home .homeFooter a{color:#9fb0a4!important}
body.common-home .homeFooter a:hover{color:#fff!important}
body.common-home .homeFooter .footerBottom{display:flex!important}
@media(max-width:950px){
  .systems{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .systems .system,.systems .system:nth-child(1),.systems .system:nth-child(2),.systems .system:nth-child(3),.systems .system:nth-child(4){height:330px!important}
}
@media(max-width:600px){
  .systems{grid-template-columns:1fr!important}
  .systems .system,.systems .system:nth-child(1),.systems .system:nth-child(2),.systems .system:nth-child(3),.systems .system:nth-child(4){height:300px!important;border-radius:50% / 38%!important}
  .systems .systemInfo{left:20px!important;right:20px!important;bottom:22px!important}
  .systems .systemInfo b{font-size:20px!important}
}


/* Vikon v4 homepage cleanup and navigation fixes */
/* Home now uses the normal OpenCart footer through $footer. */
body.common-home .homeFooter{display:none!important}

/* Remove the old hover mega-menu so the main category bar stays stable while scrolling. */
.categoryMega{display:none!important}
.catChevron{display:none!important}

/* Keep the category navigation available while the customer scrolls. */
.categoryBar{position:sticky!important;top:0!important;z-index:500!important;overflow:visible!important}
.categoryBar .wrap{overflow:visible!important}
.categoryNav{overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none;-ms-overflow-style:none}
.categoryNav::-webkit-scrollbar{display:none}
.categoryNav>a,.categoryNav>.categoryItem{flex:0 0 auto}

/* Clean, centered titles inside the four equal oval cards. */
.systems .systemInfo{left:30px!important;right:30px!important;bottom:30px!important;display:block!important;text-align:center!important}
.systems .systemInfo>div{max-width:calc(100% - 10px)!important;margin:0 auto!important}
.systems .systemInfo small{display:block!important;text-align:center!important;white-space:normal!important;line-height:1.25!important}
.systems .systemInfo b{display:block!important;text-align:center!important;font-size:22px!important;line-height:1.08!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;margin-top:7px!important}
.systems .arrow{position:absolute!important;right:0!important;bottom:0!important;width:40px!important;height:40px!important}

/* Replace the old chat widget with a direct WhatsApp contact button. */
.floatingWa{width:auto!important;height:48px!important;min-width:190px!important;padding:0 22px!important;border-radius:999px!important;right:20px!important;bottom:20px!important;background:#557e49!important;color:#fff!important;font-size:12px!important;letter-spacing:.06em!important;text-transform:uppercase!important;font-weight:800!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important}
.floatingWa span{display:block!important}
@media(max-width:600px){
  .systems .systemInfo{left:24px!important;right:24px!important;bottom:26px!important}
  .systems .systemInfo b{font-size:20px!important}
  .systems .arrow{width:38px!important;height:38px!important}
  .floatingWa{right:14px!important;bottom:14px!important;min-width:170px!important;height:46px!important;font-size:11px!important}
}

/* Keep the full desktop category bar visible where possible; horizontal scrolling remains available on smaller screens. */
@media(min-width:951px){
  .categoryNav{overflow-x:hidden!important;justify-content:space-between!important}
  .categoryNav>a,.categoryItem>a{padding-left:8px!important;padding-right:8px!important;font-size:8px!important;letter-spacing:.10em!important}
}

/* =========================================================
   Vikon mobile layout — mobile-only corrections
   Desktop styles above are intentionally left untouched.
   ========================================================= */
@media (max-width: 767px) {
  html, body { width:100%; max-width:100%; overflow-x:hidden; }

  /* Give the mobile header its own vertical space instead of overlaying the hero/content. */
  .vikonHeader,
  body.common-home .vikonHeader,
  body:not(.common-home) .vikonHeader {
    position:relative !important;
    top:0 !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    background:var(--forest) !important;
    border-bottom:1px solid rgba(255,255,255,.12);
  }

  .announcement {
    height:34px !important;
    min-height:34px !important;
    padding:0 12px !important;
    font-size:8px !important;
    letter-spacing:.14em !important;
    white-space:nowrap !important;
    overflow:hidden !important;
  }

  .vikonNav {
    height:150px !important;
    min-height:150px !important;
    padding:0 16px !important;
    display:grid !important;
    grid-template-columns:1fr auto 1fr !important;
    align-items:start !important;
  }

  .navLeft { display:none !important; }

  .brandMark {
    height:150px !important;
    width:100% !important;
    min-width:0 !important;
    display:flex !important;
    justify-content:center !important;
    position:relative !important;
  }

  .logo {
    width:94px !important;
    height:94px !important;
    margin-top:5px !important;
  }

  /* The three stats are now a contained horizontal strip instead of being squeezed/clipped. */
  .logoStats {
    position:absolute !important;
    top:99px !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    min-width:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    justify-content:flex-start !important;
    gap:16px !important;
    padding:8px 14px !important;
    font-size:10px !important;
    letter-spacing:.055em !important;
    scrollbar-width:none !important;
    -ms-overflow-style:none !important;
  }
  .logoStats::-webkit-scrollbar { display:none !important; }
  .logoStats span { flex:0 0 auto !important; gap:6px !important; }
  .logoStats i { flex:0 0 1px !important; height:19px !important; margin:0 !important; }
  .statIcon { width:17px !important; height:17px !important; flex:0 0 17px !important; }

  .navRight {
    grid-column:3 !important;
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:14px !important;
    padding-top:28px !important;
    font-size:10px !important;
    letter-spacing:.04em !important;
  }
  .navRight a:first-child { display:none !important; }
  .navRight a { white-space:nowrap !important; }

  /* Mobile category navigation is a deliberate horizontal scroller. */
  .categoryBar {
    position:relative !important;
    top:auto !important;
    z-index:50 !important;
    width:100% !important;
    overflow:hidden !important;
  }
  .categoryBar .wrap {
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
    overflow:hidden !important;
  }
  .categoryNav {
    width:100% !important;
    min-height:50px !important;
    display:flex !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-x !important;
    scrollbar-width:none !important;
    -ms-overflow-style:none !important;
  }
  .categoryNav::-webkit-scrollbar { display:none !important; }
  .categoryNav > a,
  .categoryNav > .categoryItem,
  .categoryNav > .categoryItem > a {
    flex:0 0 auto !important;
  }
  .categoryNav > a,
  .categoryItem > a {
    min-height:50px !important;
    padding:16px 14px !important;
    font-size:9px !important;
    letter-spacing:.10em !important;
  }
  .categoryMega { display:none !important; }

  /* Mobile hero: single-column layout, readable type, no desktop squeeze. */
  .hero {
    min-height:0 !important;
    overflow:hidden !important;
  }
  .heroGrid {
    min-height:0 !important;
    display:flex !important;
    flex-direction:column !important;
  }
  .heroCopy {
    padding:58px 20px 42px !important;
    justify-content:flex-start !important;
  }
  .eyebrow {
    font-size:10px !important;
    line-height:1.4 !important;
    letter-spacing:.18em !important;
    margin-bottom:16px !important;
  }
  .heroCopy h1 {
    font-size:clamp(45px, 13vw, 62px) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
    margin-bottom:22px !important;
  }
  .heroCopy p {
    max-width:100% !important;
    font-size:16px !important;
    line-height:1.7 !important;
    margin-bottom:26px !important;
  }
  .ctaRow { width:100% !important; flex-direction:column !important; align-items:stretch !important; gap:10px !important; }
  .cta { width:100% !important; justify-content:center !important; padding:17px 18px !important; font-size:11px !important; }
  .heroVisual {
    min-height:0 !important;
    padding:0 20px 48px !important;
    overflow:visible !important;
  }
  .ownerFrame {
    width:100% !important;
    height:430px !important;
    border-radius:220px 220px 16px 16px !important;
  }
  .ownerLabel { left:16px !important; right:16px !important; bottom:16px !important; }

  .waterOrb { width:330px !important; height:330px !important; right:-155px !important; top:330px !important; }
  .flowTrack { height:60px !important; gap:30px !important; }
  .flowItem { font-size:17px !important; }
  .flowDot { margin-left:30px !important; }

  /* Section heading and oval cards: fixed, consistent mobile proportions. */
  .section { padding:64px 0 !important; }
  .sectionHead { display:block !important; margin-bottom:30px !important; }
  .sectionHead h2 { font-size:40px !important; line-height:1 !important; margin-bottom:16px !important; }
  .sectionHead p { max-width:100% !important; font-size:14px !important; line-height:1.7 !important; }

  .systems {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
    width:100% !important;
  }
  .systems .system,
  .systems .system:nth-child(1),
  .systems .system:nth-child(2),
  .systems .system:nth-child(3),
  .systems .system:nth-child(4) {
    grid-column:auto !important;
    width:100% !important;
    height:310px !important;
    min-height:310px !important;
    border-radius:50% / 38% !important;
  }
  .systems .systemInfo {
    left:0 !important;
    right:0 !important;
    bottom:24px !important;
    width:100% !important;
    padding:0 52px !important;
    display:block !important;
    text-align:center !important;
  }
  .systems .systemInfo > div {
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
  }
  .systems .systemInfo small {
    display:block !important;
    width:100% !important;
    font-size:9px !important;
    line-height:1.3 !important;
    letter-spacing:.14em !important;
    text-align:center !important;
    white-space:normal !important;
  }
  .systems .systemInfo b {
    display:block !important;
    width:100% !important;
    margin-top:6px !important;
    font-size:23px !important;
    line-height:1.08 !important;
    letter-spacing:-.02em !important;
    text-align:center !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    text-shadow:0 2px 10px rgba(0,0,0,.55) !important;
  }
  .systems .arrow {
    position:absolute !important;
    right:18px !important;
    bottom:0 !important;
    width:40px !important;
    height:40px !important;
    display:grid !important;
    place-items:center !important;
  }

  /* Remaining homepage sections stack cleanly. */
  .ownerStory { padding:64px 0 !important; }
  .ownerStoryGrid { grid-template-columns:1fr !important; gap:24px !important; }
  .ownerStory h2 { font-size:36px !important; }
  .signature { font-size:22px !important; }
  .directoryGrid { grid-template-columns:1fr !important; }
  .catalog { padding-bottom:0 !important; }
  .productLine { grid-template-columns:82px 1fr !important; gap:14px !important; }
  .productThumb { height:78px !important; }
  .productAction { display:none !important; }
  .contact { padding:0 0 64px !important; }
  .contactBox { display:block !important; padding:36px 24px !important; }
  .contactBox h2 { font-size:32px !important; line-height:1.05 !important; }
  .wa { display:inline-flex !important; margin-top:20px !important; }

  /* Real footer: one clean column on phones. */
  footer.vikonFooter,
  body.common-home footer.vikonFooter {
    display:block !important;
    width:100% !important;
    padding:48px 0 28px !important;
    margin:0 !important;
  }
  .footGrid { grid-template-columns:1fr !important; gap:28px !important; }
  .footGrid p, .footGrid a { font-size:12px !important; line-height:1.9 !important; }
  .footerBottom { display:flex !important; flex-direction:column !important; gap:10px !important; margin-top:28px !important; padding-top:18px !important; }

  /* Direct WhatsApp button stays fully inside the viewport. */
  .floatingWa {
    right:16px !important;
    bottom:16px !important;
    width:auto !important;
    min-width:0 !important;
    max-width:calc(100vw - 32px) !important;
    height:46px !important;
    padding:0 18px !important;
    border-radius:999px !important;
    font-size:10px !important;
    letter-spacing:.06em !important;
    white-space:nowrap !important;
  }
}


/* =========================================================
   Vikon v7 — final mobile-only header/footer corrections
   Desktop layout is intentionally untouched.
   ========================================================= */
@media (max-width: 767px) {
  /* Keep all three statistics visible inside the phone viewport. */
  .logoStats {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    height: 58px !important;
    overflow: hidden !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 6px 6px !important;
    white-space: normal !important;
  }
  .logoStats span {
    min-width: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 0 4px !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.15 !important;
    font-size: 8px !important;
  }
  .logoStats i {
    width: 1px !important;
    height: 28px !important;
    margin: 0 !important;
  }
  .statIcon {
    width: 15px !important;
    height: 15px !important;
    flex: 0 0 15px !important;
  }

  /* Compact mobile footer: two-column links instead of a very tall single column. */
  footer.vikonFooter,
  body.common-home footer.vikonFooter {
    padding: 38px 0 24px !important;
  }
  footer.vikonFooter .footGrid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px 24px !important;
    align-items: start !important;
  }
  footer.vikonFooter .footBrand {
    grid-column: 1 / -1 !important;
  }
  footer.vikonFooter .footBrand p {
    max-width: 100% !important;
    margin: 8px 0 0 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
  }
  footer.vikonFooter .footGrid > div:not(.footBrand) h4 {
    margin-bottom: 9px !important;
  }
  footer.vikonFooter .footGrid > div:not(.footBrand) ul {
    margin: 0 !important;
  }
  footer.vikonFooter .footGrid > div:not(.footBrand) li {
    margin: 0 !important;
  }
  footer.vikonFooter .footGrid a {
    display: block !important;
    font-size: 12px !important;
    line-height: 1.65 !important;
    padding: 1px 0 !important;
  }
  /* Information contains many links, so use two compact columns inside its block. */
  footer.vikonFooter .footGrid > div:nth-child(2) {
    grid-column: 1 / -1 !important;
  }
  footer.vikonFooter .footGrid > div:nth-child(2) ul {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 20px !important;
  }
  footer.vikonFooter .footerBottom {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-top: 28px !important;
    padding-top: 16px !important;
    font-size: 10px !important;
  }
  footer.vikonFooter .footerBottom a {
    white-space: nowrap !important;
  }
}

@media (max-width: 390px) {
  .logoStats { width: calc(100vw - 12px) !important; max-width: calc(100vw - 12px) !important; }
  .logoStats span { font-size: 7.5px !important; padding: 0 2px !important; }
  .statIcon { width: 14px !important; height: 14px !important; flex-basis: 14px !important; }
  footer.vikonFooter .footGrid { column-gap: 16px !important; }
  footer.vikonFooter .footGrid a { font-size: 11.5px !important; }
}

/* =========================================================
   Vikon v8 — final mobile header alignment
   Desktop is intentionally untouched.
   ========================================================= */
@media (max-width: 767px) {
  /* Make the mobile header coordinate against the actual viewport,
     rather than the width of the centered desktop .wrap. */
  .vikonNav {
    position: relative !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 158px !important;
    min-height: 158px !important;
    display: block !important;
  }

  /* Center the logo against the full phone viewport. */
  .vikonNav .brandMark {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    width: 100vw !important;
    height: 158px !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: flex-start !important;
  }

  .vikonNav .logo {
    display: block !important;
    width: 94px !important;
    height: 94px !important;
    margin: 5px auto 0 !important;
    flex: 0 0 94px !important;
  }

  /* Keep Account/Cart independent of the centered logo. */
  .vikonNav .navRight {
    position: absolute !important;
    top: 0 !important;
    right: 14px !important;
    z-index: 10 !important;
    margin: 0 !important;
    padding-top: 28px !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 14px !important;
  }

  /* The stats contain 3 spans AND 2 separator elements.
     Use five explicit grid columns so the third stat cannot wrap to a new row. */
  .vikonNav .logoStats {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: 100px !important;
    transform: translateX(-50%) !important;
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    min-width: 0 !important;
    height: 56px !important;
    margin: 0 !important;
    padding: 4px 5px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr) 1px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-items: stretch !important;
    gap: 0 !important;
    overflow: hidden !important;
    white-space: normal !important;
    box-sizing: border-box !important;
  }

  .vikonNav .logoStats span {
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 3px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 4px !important;
    white-space: normal !important;
    line-height: 1.1 !important;
    font-size: 7.4px !important;
    letter-spacing: .045em !important;
    overflow: hidden !important;
  }

  .vikonNav .logoStats i {
    display: block !important;
    width: 1px !important;
    height: 28px !important;
    margin: 0 !important;
    background: rgba(232,239,223,.35) !important;
  }

  .vikonNav .logoStats .statIcon {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    flex: 0 0 14px !important;
  }
}


/* =========================================================
   Vikon v10 — live OpenCart cart summary + WhatsApp branding
   ========================================================= */
.headerCart{position:relative;display:flex;align-items:center}
.headerCartButton{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:#fff;font:inherit;cursor:pointer;display:flex;align-items:center;gap:8px;padding:0;opacity:.92;white-space:nowrap}
.headerCartButton:hover{opacity:1;color:var(--lime)}
.headerCartButton:focus{outline:none}
.headerCartButton .fa-shopping-cart{font-size:14px}
#cart-total{display:inline-block;font-size:10px;letter-spacing:.04em;font-weight:700;color:inherit;white-space:nowrap}
.cartSyncMenu{display:none!important}

/* Match the site's cart page to the Vikon visual system without changing checkout logic. */
body.checkout-cart .container{max-width:1360px!important;padding:170px 42px 80px!important}
body.checkout-cart #content h1{font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:-.04em;color:var(--ink)}
body.checkout-cart #content .table-responsive{border:0;overflow-x:auto}
body.checkout-cart #content table.table{background:var(--paper);border:1px solid var(--line);border-collapse:separate;border-spacing:0}
body.checkout-cart #content table.table>thead>tr>td{background:var(--forest);color:#fff;border-color:rgba(255,255,255,.1);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:14px 12px}
body.checkout-cart #content table.table>tbody>tr>td{border-color:var(--line);padding:14px 12px;vertical-align:middle}
body.checkout-cart #content table.table>tbody>tr:hover{background:rgba(185,207,131,.08)}
body.checkout-cart #content .img-thumbnail{border:0;background:var(--cream);padding:5px;border-radius:4px;max-width:90px}
body.checkout-cart #content .input-group .form-control{height:42px;border-color:var(--line);box-shadow:none}
body.checkout-cart #content .btn-primary{background:var(--forest);border-color:var(--forest)}
body.checkout-cart #content .btn-default{background:transparent;border:1px solid var(--line);color:var(--ink)}
body.checkout-cart #content .buttons{margin-top:24px}
body.checkout-cart #content .row .col-sm-4 table{border:1px solid var(--line)}

.floatingWa{background:#25D366!important;color:#fff!important;font-family:Arial,"Helvetica Neue",sans-serif!important;text-transform:none!important;letter-spacing:0!important;font-weight:700!important;gap:9px!important;box-shadow:0 8px 24px rgba(37,211,102,.28)!important}
.floatingWa:hover{background:#20bd5b!important;color:#fff!important;transform:translateY(-1px)}
.floatingWa .waOfficialIcon{width:24px!important;height:24px!important;flex:0 0 24px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:24px!important;line-height:1!important}
.floatingWa span{font-size:14px!important;line-height:1!important}
@media(max-width:950px){
  .headerCartButton{gap:6px}
  #cart-total{font-size:9px}
}
@media(max-width:767px){
  .headerCartButton{gap:5px}
  .headerCartLabel{display:none!important}
  #cart-total{font-size:8px!important;letter-spacing:0!important;max-width:68px;overflow:hidden;text-overflow:ellipsis}
  body.checkout-cart .container{padding:40px 16px 60px!important}
  body.checkout-cart #content .table-responsive{margin-left:-1px;margin-right:-1px}
  body.checkout-cart #content table.table{min-width:720px}
  .floatingWa{right:16px!important;bottom:16px!important;min-width:0!important;max-width:calc(100vw - 32px)!important;height:48px!important;padding:0 18px!important}
  .floatingWa span{font-size:13px!important}
}


/* v11 social links and hero heading correction */
.announcement{position:relative;}
.announcementInner{max-width:1280px;margin:0 auto;min-height:34px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;}
.topSocial{display:flex;align-items:center;gap:10px;white-space:nowrap;}
.topSocial a{width:31px;height:31px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(185,207,131,.58);border-radius:50%;background:rgba(8,45,31,.42);color:#f4f1e5;text-decoration:none;opacity:.96;box-sizing:border-box;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
.topSocial a:hover{background:rgba(115,155,84,.28);border-color:#b9cf83;transform:translateY(-1px);}
.topSocial a span{display:none;}
.topSocial .fa{font-size:15px;line-height:1;}
.heroCopy h1 em{color:var(--lime)!important;}
.heroCopy h1 .heroWhiteText{color:#fff!important;}
@media(max-width:600px){.announcementInner{min-height:34px;padding:0 12px;gap:8px;}.announcementInner>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.topSocial{gap:7px;}.topSocial a{width:30px;height:30px;}.topSocial .fa{font-size:14px;}}

/* Vikon v13 — social destination + WhatsApp icon alignment + hero color split */

/* Vikon v14 — final social link + hero heading + guaranteed WhatsApp SVG icon */
.heroCopy h1{color:#fff!important;}
.heroCopy h1 em{color:var(--lime)!important;}
.heroCopy h1 .heroWhiteText{color:#fff!important;}
.floatingWa .waSvg{width:24px!important;height:24px!important;flex:0 0 24px!important;display:block!important;fill:currentColor!important;overflow:visible!important;}
.floatingWa .waOfficialIcon{box-sizing:border-box!important;}
@media(max-width:767px){.floatingWa .waSvg{width:23px!important;height:23px!important;flex-basis:23px!important;}}


/* Vikon v18 — product title is explicitly scoped; homepage hero remains large */
.product-title{
  font-family:"Manrope",Arial,sans-serif !important;
  font-size:38px !important;
  line-height:1.12 !important;
  letter-spacing:-.035em !important;
  font-weight:700 !important;
  color:var(--ink,#10201a) !important;
  margin:0 0 22px !important;
}
@media(max-width:767px){
  .product-title{
    font-size:28px !important;
    line-height:1.18 !important;
    letter-spacing:-.025em !important;
    margin-bottom:18px !important;
  }
}

/* =========================================================
   Vikon v15 — premium navigation & typography refinement
   Keeps the approved layout/functionality intact; only enlarges
   navigation type, spacing, icons and touch targets.
   ========================================================= */
.navLeft,.navRight{
  font-size:13px!important;
  font-weight:800!important;
  gap:34px!important;
  letter-spacing:.045em!important;
}
.navLeft a,.navRight a{padding:9px 2px!important;}
.categoryNav>a,.categoryItem>a{
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.105em!important;
  padding:17px 20px!important;
  min-height:54px!important;
}
.headerCartButton{
  gap:10px!important;
  min-height:42px!important;
}
.headerCartButton .fa-shopping-cart{font-size:18px!important;}
#cart-total{font-size:11px!important;font-weight:800!important;letter-spacing:.025em!important;}
.topSocial a{width:33px!important;height:33px!important;}
.topSocial .fa{font-size:16px!important;}

@media(max-width:950px){
  .navRight{font-size:12px!important;gap:18px!important;}
  .categoryNav>a,.categoryItem>a{font-size:10.5px!important;padding:16px 18px!important;min-height:52px!important;}
  .headerCartButton{gap:8px!important;}
  .headerCartButton .fa-shopping-cart{font-size:17px!important;}
  #cart-total{font-size:10px!important;}
}

@media(max-width:767px){
  /* Larger, easier-to-tap mobile navigation without changing the approved header geometry. */
  .vikonNav .navRight{
    right:12px!important;
    padding-top:26px!important;
    gap:12px!important;
    font-size:11px!important;
  }
  .vikonNav .navRight a{padding:8px 2px!important;}
  .headerCartButton{
    min-height:44px!important;
    gap:7px!important;
  }
  .headerCartButton .fa-shopping-cart{font-size:19px!important;}
  #cart-total{
    font-size:9px!important;
    font-weight:800!important;
    max-width:92px!important;
  }
  .categoryNav{
    min-height:54px!important;
  }
  .categoryNav>a,.categoryItem>a{
    min-height:54px!important;
    padding:17px 15px!important;
    font-size:10px!important;
    letter-spacing:.085em!important;
  }
  .topSocial a{width:32px!important;height:32px!important;}
  .topSocial .fa{font-size:15px!important;}
}

@media(max-width:390px){
  .vikonNav .navRight{gap:9px!important;font-size:10.5px!important;}
  .categoryNav>a,.categoryItem>a{padding-left:14px!important;padding-right:14px!important;font-size:9.5px!important;}
  #cart-total{font-size:8.5px!important;max-width:82px!important;}
}


/* Vikon v17 — premium compact desktop footer */
@media (min-width: 768px) {
  footer.vikonFooter {
    padding: 34px 0 20px !important;
    margin-top: 0 !important;
    background: #071e15 !important;
  }
  footer.vikonFooter .footGrid {
    grid-template-columns: 1.65fr 1.55fr 1fr 1fr .8fr !important;
    gap: 26px !important;
    align-items: start !important;
  }
  footer.vikonFooter .footBrand p {
    max-width: 300px !important;
    margin: 7px 0 0 !important;
    font-size: 11px !important;
    line-height: 1.55 !important;
  }
  footer.vikonFooter .footPhone {
    margin-top: 8px !important;
  }
  footer.vikonFooter .footGrid h4 {
    margin: 0 0 8px !important;
    font-size: 9px !important;
    line-height: 1.2 !important;
    letter-spacing: .16em !important;
  }
  footer.vikonFooter .footGrid p,
  footer.vikonFooter .footGrid a {
    font-size: 10.5px !important;
    line-height: 1.55 !important;
  }
  footer.vikonFooter .footGrid ul {
    margin: 0 !important;
  }
  footer.vikonFooter .footGrid li {
    margin: 0 !important;
  }
  /* The Information column has many links; two compact columns prevent a tall footer. */
  footer.vikonFooter .footGrid > div:nth-child(2) ul {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 18px !important;
    row-gap: 0 !important;
  }
  footer.vikonFooter .footGrid > div:nth-child(2) li {
    break-inside: avoid !important;
  }
  footer.vikonFooter .footerBottom {
    margin-top: 22px !important;
    padding-top: 13px !important;
    font-size: 9px !important;
  }
}


/* Vikon v18 — enforce compact premium desktop footer */
@media (min-width:768px){
  footer.vikonFooter{padding:26px 0 16px !important;}
  footer.vikonFooter .footGrid{grid-template-columns:1.7fr 1.9fr 1fr 1fr .75fr !important;gap:22px !important;}
  footer.vikonFooter .footGrid h4{margin-bottom:6px !important;font-size:9px !important;}
  footer.vikonFooter .footGrid p,
  footer.vikonFooter .footGrid a{font-size:10px !important;line-height:1.45 !important;}
  footer.vikonFooter .footBrand p{max-width:285px !important;margin-top:5px !important;}
  footer.vikonFooter .footPhone{margin-top:6px !important;}
  footer.vikonFooter .footInformation ul{display:grid !important;grid-template-columns:1fr 1fr !important;column-gap:16px !important;row-gap:0 !important;}
  footer.vikonFooter .footInformation li{margin:0 !important;}
  footer.vikonFooter .footerBottom{margin-top:16px !important;padding-top:10px !important;font-size:9px !important;}
}


/* =========================================================
   Vikon v20 — premium mobile-first refinement
   Mobile only. Desktop rules are intentionally untouched.
   ========================================================= */
@media (max-width:767px){
  /* ---------- Mobile header: separate logo, account/cart and stats ---------- */
  .vikonHeader{border-bottom:1px solid rgba(255,255,255,.10)!important;}
  .vikonNav{
    height:210px!important;
    min-height:210px!important;
    display:block!important;
    position:relative!important;
    padding:0!important;
  }
  .vikonNav .brandMark{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:100%!important;
    height:142px!important;
    margin:0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:flex-start!important;
    z-index:2!important;
  }
  .vikonNav .logo{
    width:84px!important;
    height:84px!important;
    flex:0 0 84px!important;
    margin:8px auto 0!important;
  }
  .vikonNav .navRight{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:91px!important;
    width:100%!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:24px!important;
    z-index:6!important;
    font-size:12px!important;
    font-weight:800!important;
    letter-spacing:.045em!important;
  }
  .vikonNav .navRight a{padding:8px 3px!important;line-height:1!important;}
  .vikonNav .navRight a:first-child{display:none!important;}
  .vikonNav .headerCart{margin:0!important;}
  .vikonNav .headerCartButton{
    min-height:42px!important;
    padding:6px 3px!important;
    gap:8px!important;
    font-size:12px!important;
    line-height:1.15!important;
  }
  .vikonNav .headerCartButton .fa-shopping-cart{font-size:20px!important;}
  .vikonNav #cart-total{
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.015em!important;
    max-width:120px!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  .vikonNav .logoStats{
    position:absolute!important;
    left:50%!important;
    right:auto!important;
    top:151px!important;
    transform:translateX(-50%)!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    height:51px!important;
    min-height:51px!important;
    margin:0!important;
    padding:4px 5px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr) 1px minmax(0,1fr)!important;
    align-items:center!important;
    justify-items:stretch!important;
    gap:0!important;
    overflow:hidden!important;
    white-space:normal!important;
    border-radius:999px!important;
    box-sizing:border-box!important;
  }
  .vikonNav .logoStats span{
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    margin:0!important;
    padding:0 4px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    text-align:center!important;
    white-space:normal!important;
    line-height:1.15!important;
    font-size:8.5px!important;
    letter-spacing:.045em!important;
  }
  .vikonNav .logoStats i{width:1px!important;height:27px!important;margin:0!important;}
  .vikonNav .logoStats .statIcon{width:16px!important;height:16px!important;min-width:16px!important;flex:0 0 16px!important;}

  /* ---------- Mobile category navigation: larger, premium, touch-friendly ---------- */
  .categoryBar{width:100%!important;overflow:hidden!important;}
  .categoryBar .wrap{padding:0!important;max-width:100%!important;}
  .categoryNav{
    min-height:58px!important;
    height:58px!important;
    display:flex!important;
    align-items:stretch!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x proximity!important;
  }
  .categoryNav>a,.categoryItem>a{
    min-height:58px!important;
    padding:18px 17px!important;
    font-size:11.5px!important;
    line-height:1!important;
    letter-spacing:.075em!important;
    font-weight:800!important;
  }
  .categoryNav>a:first-child{padding-left:20px!important;}

  /* ---------- Mobile general typography ---------- */
  body{font-size:14px!important;line-height:1.6!important;}
  #content p,.product-info p,.product-info label{font-size:14px!important;line-height:1.65!important;}
  .product-info .price,.product-info .price-new{font-size:24px!important;line-height:1.2!important;}
  .product-info .form-control{font-size:16px!important;min-height:44px!important;}
  .product-info .btn{font-size:13px!important;min-height:46px!important;padding:12px 18px!important;}
  .product-title{font-size:28px!important;line-height:1.18!important;}

  /* ---------- Mobile footer: compact 2-column premium layout ---------- */
  footer.vikonFooter,
  body.common-home footer.vikonFooter,
  body.common-home .homeFooter{
    width:100%!important;
    padding:30px 0 18px!important;
    margin:0!important;
    background:#071e15!important;
  }
  footer.vikonFooter .wrap{padding-left:18px!important;padding-right:18px!important;}
  footer.vikonFooter .footGrid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:22px!important;
    row-gap:22px!important;
    align-items:start!important;
  }
  footer.vikonFooter .footBrand{
    grid-column:1 / -1!important;
    padding-bottom:2px!important;
  }
  footer.vikonFooter .footBrand h4,
  footer.vikonFooter .footGrid h4{
    margin:0 0 7px!important;
    font-size:10px!important;
    line-height:1.25!important;
    letter-spacing:.16em!important;
  }
  footer.vikonFooter .footBrand p{
    max-width:100%!important;
    margin:0!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
  footer.vikonFooter .footPhone{margin-top:7px!important;}
  footer.vikonFooter .footGrid > div:not(.footBrand) a,
  footer.vikonFooter .footGrid > div:not(.footBrand) p{
    font-size:13px!important;
    line-height:1.45!important;
  }
  footer.vikonFooter .footGrid > div:not(.footBrand) ul{margin:0!important;padding:0!important;}
  footer.vikonFooter .footGrid > div:not(.footBrand) li{margin:0!important;padding:0!important;}
  footer.vikonFooter .footInformation{grid-column:1 / -1!important;}
  footer.vikonFooter .footInformation ul{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:22px!important;
    row-gap:3px!important;
  }
  footer.vikonFooter .footerBottom{
    display:flex!important;
    flex-direction:row!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:12px!important;
    margin-top:22px!important;
    padding-top:12px!important;
    font-size:10px!important;
    line-height:1.4!important;
  }
  footer.vikonFooter .footerBottom a{font-size:10px!important;}

  /* Keep the floating WhatsApp button premium and comfortably tappable. */
  .floatingWa{
    right:14px!important;
    bottom:14px!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 17px!important;
    font-size:10.5px!important;
  }
}

@media (max-width:390px){
  .vikonNav .navRight{gap:18px!important;font-size:11px!important;}
  .vikonNav .headerCartButton{font-size:11px!important;gap:7px!important;}
  .vikonNav .headerCartButton .fa-shopping-cart{font-size:19px!important;}
  .vikonNav #cart-total{font-size:9px!important;max-width:105px!important;}
  .vikonNav .logoStats span{font-size:7.8px!important;padding:0 2px!important;}
  .vikonNav .logoStats .statIcon{width:15px!important;height:15px!important;min-width:15px!important;flex-basis:15px!important;}
  .categoryNav>a,.categoryItem>a{padding-left:15px!important;padding-right:15px!important;font-size:10.8px!important;}
  footer.vikonFooter .wrap{padding-left:16px!important;padding-right:16px!important;}
  footer.vikonFooter .footGrid{column-gap:16px!important;row-gap:20px!important;}
  footer.vikonFooter .footInformation ul{column-gap:16px!important;}
  footer.vikonFooter .footGrid > div:not(.footBrand) a{font-size:12.5px!important;}
}

/* v27: premium editorial styling for separate brand claims */
.brandClaims{
  position:absolute;left:20px;right:20px;top:66px;
  display:flex;align-items:center;justify-content:space-between;
  pointer-events:none;z-index:4;
  font-family:Georgia,"Times New Roman",serif;
  font-size:22px;font-weight:700;font-style:italic;
  line-height:1;letter-spacing:-.035em;text-transform:none;
  color:#f4f1e5;
  text-shadow:0 2px 10px rgba(0,0,0,.28);
}
.brandClaims span{white-space:nowrap;display:block}
.brandClaims span:first-child,.brandClaims span:last-child{
  background:linear-gradient(100deg,#fbfaf4 0%,#f4f1e5 55%,#dceaa5 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
@media(max-width:950px){
  .brandClaims{top:108px;left:18px;right:18px;font-size:19px;letter-spacing:-.03em}
}
@media(max-width:600px){
  .brandClaims{top:112px;left:18px;right:18px;font-size:13px;letter-spacing:-.025em}
}

/* v29 — unified premium styling for OpenCart internal pages. Homepage styling remains untouched. */
body.vikonInternal{background:#f4f1e5;color:#10201a;font-family:"DM Sans",Arial,sans-serif;}
body.vikonInternal .vikonPage{max-width:1380px;padding-top:28px;padding-bottom:54px;}
body.vikonInternal .vikonBreadcrumb{background:transparent;border:0;margin:0 0 26px;padding:0;display:flex;gap:8px;align-items:center;font-size:12px;letter-spacing:.04em;color:#66736c;}
body.vikonInternal .vikonBreadcrumb li+li:before{content:"/";padding:0 8px;color:#9aa59e;}
body.vikonInternal .vikonBreadcrumb a{color:#66736c;text-decoration:none;}
body.vikonInternal .vikonBreadcrumb a:hover{color:#739b54;}
body.vikonInternal #content{min-width:0;}
body.vikonInternal #content>h2,body.vikonInternal #content>h1{font-family:Manrope,Arial,sans-serif;color:#082d1f;font-weight:800;letter-spacing:-.035em;font-size:42px;line-height:1.05;margin:8px 0 24px;}
body.vikonInternal #content h3{font-family:Manrope,Arial,sans-serif;color:#082d1f;font-weight:750;letter-spacing:-.02em;font-size:21px;margin:24px 0 16px;}
body.vikonInternal #content p,body.vikonInternal #content li,body.vikonInternal #content label{color:#405048;font-size:15px;line-height:1.7;}
body.vikonInternal .row{margin-left:-10px;margin-right:-10px;}
body.vikonInternal .row>[class*="col-"]{padding-left:10px;padding-right:10px;}

/* Refine/category sidebar */
body.vikonInternal #column-left{padding-top:0;}
body.vikonInternal #column-left .box,
body.vikonInternal #column-left .list-group,
body.vikonInternal #column-left .panel{background:#fbfaf4;border:1px solid #dfe4dc;border-radius:18px;overflow:hidden;box-shadow:0 12px 32px rgba(8,45,31,.06);}
body.vikonInternal #column-left .box-heading,
body.vikonInternal #column-left .panel-heading{background:#082d1f;color:#f4f1e5;border:0;font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:12px;padding:15px 18px;}
body.vikonInternal #column-left a{color:#405048;text-decoration:none;}
body.vikonInternal #column-left a:hover{color:#082d1f;}

/* Category introduction and refine links */
body.vikonInternal .vikonCategoryPage #content>hr{border-color:#dfe4dc;margin:26px 0;}
body.vikonInternal .vikonCategoryPage #content .img-thumbnail{border:1px solid #dfe4dc;border-radius:16px;background:#fbfaf4;padding:8px;}
body.vikonInternal .vikonCategoryPage #content ul:not(.breadcrumb):not(.thumbnails):not(.nav){padding-left:20px;}
body.vikonInternal .vikonCategoryPage #content ul:not(.breadcrumb):not(.thumbnails):not(.nav) a{color:#405048;text-decoration:none;}
body.vikonInternal .vikonCategoryPage #content ul:not(.breadcrumb):not(.thumbnails):not(.nav) a:hover{color:#739b54;}

/* Sort / view controls */
body.vikonInternal .vikonCategoryPage .btn-group .btn,
body.vikonInternal .vikonCategoryPage .form-control,
body.vikonInternal .vikonSearchPage .form-control{height:46px;border:1px solid #d7ded6;border-radius:12px;background:#fbfaf4;color:#10201a;box-shadow:none;}
body.vikonInternal .vikonCategoryPage .btn-group .btn{width:46px;margin-right:5px;color:#405048;}
body.vikonInternal .vikonCategoryPage select.form-control{padding:8px 13px;}
body.vikonInternal .vikonCategoryPage label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#66736c;line-height:46px;}
body.vikonInternal #compare-total{display:inline-flex;padding:9px 14px;border:1px solid #cfd9cd;border-radius:999px;color:#405048;background:#fbfaf4;text-decoration:none;font-size:12px;}

/* Product cards */
body.vikonInternal .vikonProductGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:12px;}
body.vikonInternal .vikonProductGrid .vikonProductCard{display:flex;min-width:0;}
body.vikonInternal .vikonProductCard .product-thumb{width:100%;height:100%;display:flex;flex-direction:column;background:#fbfaf4;border:1px solid #dbe3d9;border-radius:20px;overflow:hidden;box-shadow:0 12px 32px rgba(8,45,31,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
body.vikonInternal .vikonProductCard .product-thumb:hover{transform:translateY(-3px);border-color:#b8cc9e;box-shadow:0 18px 38px rgba(8,45,31,.10);}
body.vikonInternal .vikonProductCard .image{background:#fff;margin:0;min-height:240px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
body.vikonInternal .vikonProductCard .image img{width:100%;height:240px;object-fit:contain;display:block;transition:transform .25s ease;}
body.vikonInternal .vikonProductCard .product-thumb:hover .image img{transform:scale(1.025);}
body.vikonInternal .vikonProductCard .caption{padding:20px 20px 10px;flex:1;}
body.vikonInternal .vikonProductCard .caption h4{font-family:Manrope,Arial,sans-serif;font-size:17px;line-height:1.35;font-weight:750;margin:0 0 10px;}
body.vikonInternal .vikonProductCard .caption h4 a{color:#082d1f;text-decoration:none;}
body.vikonInternal .vikonProductCard .caption p{font-size:13px;line-height:1.55;color:#66736c;}
body.vikonInternal .vikonProductCard .price{font-family:Manrope,Arial,sans-serif;font-size:20px!important;font-weight:800;color:#082d1f!important;margin-top:16px;}
body.vikonInternal .vikonProductCard .price .price-old{font-size:14px;color:#8b9690;margin-left:7px;}
body.vikonInternal .vikonProductCard .price-tax{display:block;font-family:"DM Sans",Arial,sans-serif;font-size:11px;color:#8b9690;font-weight:500;margin-top:4px;}
body.vikonInternal .vikonProductCard .button-group{display:flex;border-top:1px solid #e1e6df;background:#f6f7f1;}
body.vikonInternal .vikonProductCard .button-group button{flex:1;min-height:50px;border:0;border-right:1px solid #e1e6df;background:transparent;color:#405048;font-size:15px;transition:background .2s,color .2s;}
body.vikonInternal .vikonProductCard .button-group button:first-child{flex:2;background:#082d1f;color:#f4f1e5;font-family:Manrope,Arial,sans-serif;font-weight:700;}
body.vikonInternal .vikonProductCard .button-group button:hover{background:#b9cf83;color:#082d1f;}
body.vikonInternal .pagination>li>a,body.vikonInternal .pagination>li>span{border-color:#d7ded6;color:#405048;background:#fbfaf4;padding:9px 13px;}
body.vikonInternal .pagination>.active>span{background:#082d1f;border-color:#082d1f;color:#fff;}

/* Product detail */
body.vikonInternal .vikonProductHero{align-items:flex-start;}
body.vikonInternal .vikonProductPage .thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0;margin:0 0 22px;list-style:none;}
body.vikonInternal .vikonProductPage .thumbnails li:first-child{grid-column:1/-1;}
body.vikonInternal .vikonProductPage .thumbnails li a.thumbnail{margin:0;border:1px solid #dbe3d9;border-radius:20px;background:#fff;padding:12px;box-shadow:0 12px 32px rgba(8,45,31,.05);}
body.vikonInternal .vikonProductPage .thumbnails li:first-child a img{width:100%;height:min(520px,48vw);object-fit:contain;}
body.vikonInternal .vikonProductPage .image-additional img{width:100%;height:90px;object-fit:contain;}
body.vikonInternal .vikonProductPage .product-title{font-family:Manrope,Arial,sans-serif!important;color:#082d1f!important;font-size:42px!important;line-height:1.08!important;font-weight:800!important;letter-spacing:-.04em!important;margin:18px 0 18px!important;}
body.vikonInternal .vikonProductPage .btn-group{display:flex;gap:6px;margin-bottom:10px;}
body.vikonInternal .vikonProductPage .btn-group .btn{border:1px solid #d7ded6;background:#fbfaf4;color:#405048;border-radius:10px!important;width:44px;height:44px;}
body.vikonInternal .vikonProductPage .list-unstyled{margin:0 0 20px;padding:0;}
body.vikonInternal .vikonProductPage .list-unstyled li{padding:6px 0;border-bottom:1px solid #e4e9e2;}
body.vikonInternal .vikonProductPage #product{background:#fbfaf4;border:1px solid #dbe3d9;border-radius:20px;padding:22px;box-shadow:0 12px 32px rgba(8,45,31,.06);}
body.vikonInternal .vikonProductPage #product h3{margin-top:0;}
body.vikonInternal .vikonProductPage #product .form-control{height:46px;border:1px solid #d7ded6;border-radius:10px;background:#fff;box-shadow:none;}
body.vikonInternal .vikonProductPage #product #input-quantity{max-width:130px;}
body.vikonInternal .vikonProductPage #button-cart{height:54px;border:0;border-radius:12px;background:#082d1f;color:#fff;font-family:Manrope,Arial,sans-serif;font-weight:750;letter-spacing:.01em;box-shadow:0 10px 24px rgba(8,45,31,.18);}
body.vikonInternal .vikonProductPage #button-cart:hover{background:#174f38;}
body.vikonInternal .vikonProductPage .nav-tabs{border-bottom:1px solid #dbe3d9;margin-top:22px;}
body.vikonInternal .vikonProductPage .nav-tabs>li>a{border:0!important;border-bottom:2px solid transparent!important;background:transparent!important;color:#66736c;font-family:Manrope,Arial,sans-serif;font-weight:700;padding:12px 14px;}
body.vikonInternal .vikonProductPage .nav-tabs>li.active>a{color:#082d1f;border-bottom-color:#739b54!important;}
body.vikonInternal .vikonProductPage .tab-content{background:#fbfaf4;border:1px solid #dbe3d9;border-top:0;border-radius:0 0 16px 16px;padding:24px;line-height:1.75;color:#405048;}
body.vikonInternal .vikonProductPage .tab-content img{max-width:100%;height:auto;}
body.vikonInternal .vikonProductPage .table{background:#fff;border-color:#e1e6df;}
body.vikonInternal .vikonProductPage .table>thead>tr>td{background:#eef3e9;color:#082d1f;font-weight:700;}
body.vikonInternal .vikonRelatedGrid{margin-top:4px;}
body.vikonInternal .vikonProductPage> .container{}
body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb{background:#fbfaf4;border:1px solid #dbe3d9;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(8,45,31,.05);}
body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .image{background:#fff;}
body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .image img{height:190px;object-fit:contain;width:100%;}
body.vikonInternal .vikonProductPage .vikonRelatedGrid .caption{padding:14px;}
body.vikonInternal .vikonProductPage .vikonRelatedGrid h4{font-family:Manrope,Arial,sans-serif;font-weight:700;}

/* Information/search/content pages */
body.vikonInternal .vikonInfoPage #content,
body.vikonInternal .vikonContactPage #content,
body.vikonInternal .vikonSitemapPage #content,
body.vikonInternal .vikonSearchPage #content{background:#fbfaf4;border:1px solid #dbe3d9;border-radius:22px;padding:30px;box-shadow:0 12px 32px rgba(8,45,31,.05);}
body.vikonInternal .vikonInfoPage #content h1,
body.vikonInternal .vikonContactPage #content h1,
body.vikonInternal .vikonSitemapPage #content h1,
body.vikonInternal .vikonSearchPage #content h1{margin-top:0;}
body.vikonInternal .vikonInfoPage #content img{max-width:100%;height:auto;border-radius:12px;}
body.vikonInternal .vikonSearchPage #content .form-control{height:48px;border-radius:12px;border:1px solid #d7ded6;box-shadow:none;background:#fff;}
body.vikonInternal .vikonSearchPage #button-search{height:48px;border-radius:12px;background:#082d1f;color:#fff;border:0;font-weight:700;}

@media(max-width:767px){
  body.vikonInternal .vikonPage{padding:20px 14px 38px;}
  body.vikonInternal .vikonBreadcrumb{font-size:10px;margin-bottom:18px;overflow:hidden;white-space:nowrap;}
  body.vikonInternal #content>h2,body.vikonInternal #content>h1{font-size:31px;margin:4px 0 18px;}
  body.vikonInternal #content h3{font-size:18px;}
  body.vikonInternal .vikonCategoryPage #content .row:not(.vikonProductGrid){margin-left:-6px;margin-right:-6px;}
  body.vikonInternal .vikonCategoryPage #content .row:not(.vikonProductGrid)>[class*="col-"]{padding-left:6px;padding-right:6px;}
  body.vikonInternal .vikonProductGrid{margin-left:-6px;margin-right:-6px;row-gap:14px;}
  body.vikonInternal .vikonProductGrid .vikonProductCard{padding-left:6px;padding-right:6px;width:100%;}
  body.vikonInternal .vikonProductCard .image{min-height:230px;}
  body.vikonInternal .vikonProductCard .image img{height:230px;}
  body.vikonInternal .vikonProductCard .caption{padding:17px 16px 9px;}
  body.vikonInternal .vikonProductCard .caption h4{font-size:17px;}
  body.vikonInternal .vikonProductCard .price{font-size:20px!important;}
  body.vikonInternal .vikonProductCard .button-group button{min-height:52px;}
  body.vikonInternal .vikonCategoryPage .row>div[class*="col-md-"]{margin-bottom:10px;}
  body.vikonInternal .vikonProductHero{display:flex;flex-direction:column;}
  body.vikonInternal .vikonProductHero>div{width:100%!important;}
  body.vikonInternal .vikonProductPage .thumbnails{grid-template-columns:repeat(4,1fr);gap:7px;}
  body.vikonInternal .vikonProductPage .thumbnails li:first-child a img{height:320px;}
  body.vikonInternal .vikonProductPage .image-additional img{height:66px;}
  body.vikonInternal .vikonProductPage .product-title{font-size:30px!important;margin-top:14px!important;}
  body.vikonInternal .vikonProductPage #product{padding:17px;border-radius:16px;}
  body.vikonInternal .vikonProductPage .tab-content{padding:18px;}
  body.vikonInternal .vikonInfoPage #content,body.vikonInternal .vikonContactPage #content,body.vikonInternal .vikonSitemapPage #content,body.vikonInternal .vikonSearchPage #content{padding:20px;border-radius:18px;}
  body.vikonInternal .vikonRelatedGrid>[class*="col-"]{width:50%;float:left;}
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .image img{height:150px;}
}


/* ================================================================
   VIKON 2026 MOBILE STOREFRONT
   Desktop rules are intentionally untouched. Everything below is
   scoped to <=767px and is the dedicated mobile presentation.
   ================================================================ */
@media (max-width: 767px){
  html{scroll-behavior:smooth}
  body{background:#fbfaf4;color:#10201a;padding-bottom:76px}
  body.mobileMenuOpen{overflow:hidden}
  body.vikonHome > .announcement, body.vikonInternal > .announcement{display:none!important}
  body.vikonHome > .vikonHeader, body.vikonInternal > .vikonHeader{display:none!important}
  body.vikonHome > .vikonMobileHeader, body.vikonInternal > .vikonMobileHeader{display:block!important}
  body.vikonHome > .categoryBar, body.vikonInternal > .categoryBar{display:none!important}

  .vikonMobileHeader{position:relative;display:block;background:#fbfaf4;color:#10201a;border-bottom:1px solid rgba(16,32,26,.10);z-index:120}
  .vmhTop{height:66px;padding:0 16px;display:flex;align-items:center;justify-content:space-between}
  .vmhLogo{display:flex;align-items:center;justify-content:center;position:absolute;left:50%;top:8px;transform:translateX(-50%);width:112px;height:50px}
  .vmhLogo img{width:92px;height:54px;object-fit:contain}
  .vmhActions{display:flex;align-items:center;gap:8px;margin-left:auto}
  .vmhIcon,.vmhCart,.vmhMenuButton{width:40px;height:40px;border:0;background:transparent;color:#10201a;display:flex;align-items:center;justify-content:center;font-size:18px;text-decoration:none;padding:0}
  .vmhCart{position:relative}
  .vmhCart b{position:absolute;top:2px;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#739b54;color:#fff;font:700 9px/17px DM Sans,Arial;text-align:center}
  .vmhSearch{padding:0 16px 12px}
  .vmhSearch form{height:42px;border:1px solid rgba(16,32,26,.14);background:#fff;border-radius:22px;display:flex;align-items:center;gap:8px;padding:0 6px 0 14px;box-shadow:0 5px 18px rgba(16,32,26,.05)}
  .vmhSearch i{color:#739b54;font-size:13px}
  .vmhSearch input{border:0;outline:0;background:transparent;flex:1;min-width:0;height:100%;font:500 12px DM Sans,Arial;color:#10201a}
  .vmhSearch button{width:34px;height:32px;border:0;border-radius:17px;padding:0;background:#082d1f;color:#fff;font:700 11px DM Sans,Arial;display:flex;align-items:center;justify-content:center}.vmhSearch button i{color:#fff;font-size:11px}

  .vikonMobileDrawer{display:block;position:fixed;inset:0;z-index:500;visibility:hidden;pointer-events:none}
  .vikonMobileDrawer .vmdBackdrop{position:absolute;inset:0;background:rgba(0,0,0,.46);opacity:0;transition:opacity .25s ease}
  .vikonMobileDrawer .vmdPanel{position:absolute;left:0;top:0;bottom:0;width:min(88vw,360px);background:#fbfaf4;transform:translateX(-102%);transition:transform .28s ease;padding:18px 18px 24px;overflow:auto;box-shadow:20px 0 60px rgba(0,0,0,.18)}
  .vikonMobileDrawer.is-open{visibility:visible;pointer-events:auto}
  .vikonMobileDrawer.is-open .vmdBackdrop{opacity:1}
  .vikonMobileDrawer.is-open .vmdPanel{transform:translateX(0)}
  .vmdHead{height:64px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(16,32,26,.10);margin-bottom:12px}
  .vmdHead img{width:92px;height:54px;object-fit:contain}
  .vmdClose{border:0;background:transparent;font-size:30px;line-height:1;color:#10201a;padding:6px}
  .vmdLinks{display:flex;flex-direction:column}
  .vmdLinks a{display:flex;align-items:center;gap:14px;min-height:48px;padding:0 8px;border-bottom:1px solid rgba(16,32,26,.07);color:#10201a;text-decoration:none;font:700 13px Manrope,Arial}
  .vmdLinks a i{width:20px;text-align:center;color:#739b54}
  .vmdWhatsApp{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:18px;height:48px;border-radius:24px;background:#739b54;color:#fff;text-decoration:none;font:800 12px Manrope,Arial}
  .vmdSocial{display:flex;gap:10px;margin-top:22px}.vmdSocial a{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#edf2e5;color:#082d1f;text-decoration:none}

  .vikonMobileBottomNav{position:fixed;left:0;right:0;bottom:0;height:68px;z-index:300;background:rgba(251,250,244,.97);border-top:1px solid rgba(16,32,26,.10);display:flex;justify-content:space-around;align-items:center;padding:5px 4px calc(5px + env(safe-area-inset-bottom));backdrop-filter:blur(14px)}
  .vikonMobileBottomNav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#66736c;text-decoration:none;font:700 8px DM Sans,Arial;letter-spacing:.02em}
  .vikonMobileBottomNav a i{font-size:17px}.vikonMobileBottomNav a:first-child,.vikonMobileBottomNav a:nth-child(2){color:#082d1f}

  body.vikonHome .vikonDesktopHome{display:none!important}
  body.vikonHome .vikonMobileHome{display:block!important;margin:0}
  .vikonDesktopHome{display:none!important}
  .vikonMobileHome{display:block;margin:0}
  .vmHero{position:relative;height:calc(100svh - 120px);min-height:540px;max-height:760px;overflow:hidden;background:#082d1f;color:#fff}
  .vmHeroImage{position:absolute;inset:0}.vmHeroImage img{width:100%;height:100%;object-fit:cover;object-position:70% 50%;display:block}
  .vmHeroShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,45,31,.18) 0%,rgba(8,45,31,.18) 30%,rgba(8,45,31,.88) 100%)}
  .vmHeroContent{position:absolute;left:20px;right:20px;bottom:34px}
  .vmEyebrow{display:block;color:#d8e6bd;font:800 9px DM Sans,Arial;letter-spacing:.18em;text-transform:uppercase;margin-bottom:13px}
  .vmHero h1{font:600 47px/.95 Manrope,Arial;margin:0 0 15px;letter-spacing:-.055em;color:#fff}.vmHero h1 em{font:500 1em/1 Playfair Display,Georgia,serif;color:#d8e6bd}
  .vmHero p{max-width:330px;margin:0 0 22px;color:rgba(255,255,255,.86);font:400 13px/1.55 DM Sans,Arial}
  .vmHeroButtons{display:flex;gap:8px}.vmHeroButtons a{height:46px;padding:0 16px;border-radius:23px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font:800 11px Manrope,Arial}.vmPrimary{background:#b9cf83;color:#082d1f}.vmGhost{border:1px solid rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.07)}
  .vmTrustRow{display:grid;grid-template-columns:repeat(3,1fr);padding:17px 10px;background:#fff;border-bottom:1px solid rgba(16,32,26,.08)}
  .vmTrustRow>div{text-align:center;border-right:1px solid rgba(16,32,26,.09)}.vmTrustRow>div:last-child{border-right:0}.vmTrustRow strong{display:block;font:800 15px Manrope,Arial;color:#082d1f}.vmTrustRow span{display:block;margin-top:3px;font:600 8px DM Sans,Arial;letter-spacing:.08em;text-transform:uppercase;color:#66736c}
  .vmSection{padding:54px 16px 0}.vmSectionHead{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}.vmSectionHead span{display:block;color:#739b54;font:800 9px DM Sans,Arial;letter-spacing:.17em}.vmSectionHead h2{margin:6px 0 0;font:600 31px/.98 Manrope,Arial;letter-spacing:-.045em;color:#10201a}.vmSectionHead>a{color:#082d1f;font:800 10px DM Sans,Arial;text-decoration:none;margin-bottom:3px}
  .vmSystemGrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.vmSystemCard{position:relative;display:block;height:210px;border-radius:16px;overflow:hidden;color:#fff;text-decoration:none;background:#082d1f}.vmSystemCard.vmSystemWide{grid-column:span 2;height:250px}.vmSystemCard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.vmSystemCard:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 25%,rgba(8,45,31,.88) 100%)}.vmSystemCard span{position:absolute;left:15px;right:34px;bottom:14px;z-index:2}.vmSystemCard small{display:block;font:700 8px DM Sans,Arial;letter-spacing:.12em;text-transform:uppercase;color:#d8e6bd;margin-bottom:4px}.vmSystemCard b{display:block;font:800 17px Manrope,Arial;line-height:1.05}.vmSystemCard i{position:absolute;right:14px;bottom:14px;z-index:2;font:400 19px DM Sans,Arial;color:#fff}
  .vmCategorySection{padding-top:58px;padding-bottom:58px}.vmCategoryList{display:flex;flex-direction:column;border-top:1px solid rgba(16,32,26,.10)}.vmCategoryList a{min-height:63px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(16,32,26,.10);text-decoration:none;color:#10201a;padding:7px 4px}.vmCategoryList span{display:block}.vmCategoryList small{display:block;color:#739b54;font:800 7px DM Sans,Arial;letter-spacing:.15em;margin-bottom:3px}.vmCategoryList b{display:block;font:700 14px Manrope,Arial}.vmCategoryList i{font-size:16px;color:#739b54}
  .vmWhatsAppBlock{margin:0 16px 20px;padding:28px 22px 30px;border-radius:18px;background:#082d1f;color:#fff}.vmWhatsAppBlock span{color:#b9cf83;font:800 9px DM Sans,Arial;letter-spacing:.16em;text-transform:uppercase}.vmWhatsAppBlock h2{font:600 29px/1 Manrope,Arial;letter-spacing:-.04em;margin:8px 0 20px}.vmWhatsAppBlock a{height:44px;padding:0 17px;border-radius:22px;display:inline-flex;align-items:center;gap:8px;background:#739b54;color:#fff;text-decoration:none;font:800 11px Manrope,Arial}

  /* Mobile category/search/product pages */
  .vikonPage,.vikonPage.container,.container{width:100%!important;max-width:none!important;padding-left:16px!important;padding-right:16px!important;margin-left:0!important;margin-right:0!important}
  .vikonPage{padding-top:22px!important}.vikonBreadcrumb,.breadcrumb{display:none!important}
  .vikonPage #content{width:100%!important;float:none!important;padding:0!important}.vikonPage h1,.vikonPage h2{font:600 31px/1.05 Manrope,Arial;color:#10201a;letter-spacing:-.045em;margin:8px 0 18px}
  .vikonCategoryPage #content>h2{margin-top:8px}.vikonCategoryPage #content>hr{display:none}
  .vikonCategoryPage #content>.row:first-of-type{display:block;margin:0}.vikonCategoryPage #content>.row:first-of-type .col-sm-2{width:100%;padding:0;margin-bottom:14px}.vikonCategoryPage #content>.row:first-of-type .col-sm-2 img{width:100%;height:170px;object-fit:cover;border:0;border-radius:16px;padding:0}.vikonCategoryPage #content>.row:first-of-type .col-sm-10{width:100%;padding:0;font-size:12px;line-height:1.6;color:#66736c}
  .vikonCategoryPage #content>h3{font:800 9px DM Sans,Arial;letter-spacing:.15em;text-transform:uppercase;color:#739b54;margin:26px 0 9px}.vikonCategoryPage #content>h3+div{margin:0}.vikonCategoryPage #content>h3+div ul{padding:0;margin:0;list-style:none}.vikonCategoryPage #content>h3+div li{margin:0}.vikonCategoryPage #content>h3+div a{display:block;padding:12px 0;border-bottom:1px solid rgba(16,32,26,.08);color:#10201a;font:700 12px Manrope,Arial}
  .vikonCategoryPage #compare-total{display:none}.vikonCategoryPage .vikonProductGrid{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 0!important;padding:0!important}.vikonCategoryPage .vikonProductCard{width:auto!important;padding:0 4px!important;float:none!important}.vikonProductCard .product-thumb{height:100%;border:0!important;border-radius:15px;background:#fff;box-shadow:0 6px 20px rgba(16,32,26,.07);overflow:hidden}.vikonProductCard .image{padding:0!important;background:#f0eee4}.vikonProductCard .image a{display:block}.vikonProductCard .image img{width:100%;height:158px;object-fit:cover;margin:0!important}.vikonProductCard .caption{padding:11px 11px 5px!important;min-height:90px}.vikonProductCard .caption h4{margin:0 0 6px;font:700 12px/1.25 Manrope,Arial}.vikonProductCard .caption h4 a{color:#10201a}.vikonProductCard .caption>p:not(.price),.vikonProductCard .rating,.vikonProductCard .price-tax{display:none}.vikonProductCard .price{margin:0!important;color:#082d1f;font:800 14px Manrope,Arial}.vikonProductCard .price-old{font-size:10px;color:#999;margin-left:4px}.vikonProductCard .button-group{display:flex!important;padding:7px 9px 10px!important;background:#fff!important}.vikonProductCard .button-group button{height:35px!important;flex:1;border:0!important;border-radius:18px!important;background:#082d1f!important;color:#fff!important;font-size:11px!important}.vikonProductCard .button-group button:nth-child(n+2){display:none}
  .vikonCategoryPage #list-view,.vikonCategoryPage #grid-view,.vikonCategoryPage .col-md-4,.vikonCategoryPage .col-md-2,.vikonCategoryPage .col-md-3,.vikonCategoryPage .col-md-1{display:none!important}.vikonCategoryPage .vikonProductGrid+ .row{margin-top:18px}.vikonCategoryPage .buttons{margin:20px 0}.vikonCategoryPage .buttons .btn{width:100%;height:44px;border-radius:22px}

  .vikonInternal:not(.common-home) .vikonFooter{margin-top:35px}
  /* Product detail */
  body.product-product .container{padding-top:12px!important}.product-product .breadcrumb{display:none!important}.product-product #content{width:100%!important}.product-product #content>.row:first-child{margin:0!important}.product-product .product-title{font:600 27px/1.05 Manrope,Arial!important;letter-spacing:-.04em;margin:12px 0!important}.product-product #content .thumbnails{display:flex;gap:8px;overflow:auto;padding:0;margin:10px 0 15px}.product-product #content .thumbnails li{width:64px;min-width:64px;padding:0}.product-product #content .thumbnails img{width:64px;height:64px;object-fit:cover}.product-product #content>.row:first-child>.col-sm-8,.product-product #content>.row:first-child>.col-sm-4{width:100%!important;padding:0!important}.product-product #content .image-additional{display:none}.product-product #content .img-responsive{width:100%;max-height:390px;object-fit:contain;border-radius:16px;background:#f0eee4}.product-product #content .btn-group{position:absolute;right:16px;top:95px;z-index:5}.product-product #content .btn-group button{border:0;background:#fff;border-radius:50%;width:38px;height:38px;padding:0;box-shadow:0 4px 15px rgba(0,0,0,.10)}.product-product #content .list-unstyled{font-size:11px;color:#66736c}.product-product #content .list-unstyled h2{font-size:25px;margin:8px 0}.product-product #content #product{background:#fff;border-radius:16px;padding:15px;margin-top:16px;box-shadow:0 6px 20px rgba(16,32,26,.06)}.product-product #content #product h3{font:800 9px DM Sans,Arial;letter-spacing:.14em;text-transform:uppercase;color:#739b54}.product-product #content #product .form-control{height:44px;border-radius:10px;border:1px solid rgba(16,32,26,.14);box-shadow:none}.product-product #content #button-cart{width:100%;height:48px;border:0;border-radius:24px;background:#082d1f;color:#fff;font:800 12px Manrope,Arial}.product-product #content .quantityBox input{height:48px}.product-product .nav-tabs{display:flex;overflow:auto;border:0;margin-top:25px}.product-product .nav-tabs>li{float:none;white-space:nowrap}.product-product .nav-tabs>li>a{border:0!important;background:#eef1e7;border-radius:18px;margin-right:6px;padding:9px 13px;font:700 10px Manrope,Arial}.product-product .tab-content{border:0;padding:16px 0;font-size:12px;line-height:1.6}

  /* Cart */
  body.checkout-cart .container{padding-top:18px!important}.checkout-cart #content>h1{font-size:30px}.checkout-cart .table-responsive{overflow:visible;border:0}.checkout-cart .table{border:0;margin:0}.checkout-cart .table thead{display:none}.checkout-cart .table tbody{display:block}.checkout-cart .table tbody tr{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;background:#fff;border:0!important;border-radius:15px;margin-bottom:10px;padding:10px;box-shadow:0 5px 18px rgba(16,32,26,.06)}.checkout-cart .table tbody td{display:block!important;border:0!important;padding:0!important;text-align:left!important}.checkout-cart .table tbody td:nth-child(1){grid-column:1;grid-row:1/3}.checkout-cart .table tbody td:nth-child(2){grid-column:2;grid-row:1}.checkout-cart .table tbody td:nth-child(3){display:none!important}.checkout-cart .table tbody td:nth-child(4){grid-column:2;grid-row:2}.checkout-cart .table tbody td:nth-child(5){grid-column:3;grid-row:1}.checkout-cart .table tbody td:nth-child(6){grid-column:3;grid-row:2;font-weight:800}.checkout-cart .table tbody td img{width:72px;height:72px;object-fit:cover;border:0;padding:0;border-radius:10px}.checkout-cart .table tbody td:nth-child(2) a{font:700 12px Manrope,Arial;color:#10201a}.checkout-cart .table tbody td:nth-child(2) small{font-size:9px;color:#66736c}.checkout-cart .table tbody td:nth-child(4) .input-group{max-width:118px!important}.checkout-cart .table tbody td:nth-child(4) input{height:32px;border-radius:16px 0 0 16px;text-align:center}.checkout-cart .table tbody td:nth-child(4) button{height:32px;padding:0 7px}.checkout-cart .table tbody td:nth-child(4) button:first-child{display:none}.checkout-cart .table tbody td:nth-child(4) button:last-child{border-radius:0 16px 16px 0}.checkout-cart .row>.col-sm-4{width:100%;padding:0}.checkout-cart .row>.col-sm-4 .table{background:#fff;border:0;border-radius:15px;padding:8px;box-shadow:0 5px 18px rgba(16,32,26,.06)}.checkout-cart .buttons{display:flex!important;flex-direction:column-reverse;gap:8px;margin-bottom:10px}.checkout-cart .buttons>div{float:none!important;width:100%;text-align:center}.checkout-cart .buttons a{display:flex!important;align-items:center;justify-content:center;width:100%;height:46px;border-radius:23px;font:800 11px Manrope,Arial}.checkout-cart .buttons .btn-primary{background:#082d1f;border:0}.checkout-cart .buttons .btn-default{background:#fff;border:1px solid rgba(16,32,26,.14)}

  /* Checkout accordion: preserve OpenCart's AJAX and payment logic, restyle the presentation. */
  body.checkout-checkout .container{padding-top:16px!important}.checkout-checkout .breadcrumb{display:none}.checkout-checkout #content{width:100%!important;padding:0!important}.checkout-checkout #accordion .panel{border:0;border-radius:14px;box-shadow:0 5px 18px rgba(16,32,26,.06);overflow:hidden;margin-bottom:9px}.checkout-checkout #accordion .panel-heading{background:#fff;border:0;padding:15px}.checkout-checkout #accordion .panel-title{font:800 12px Manrope,Arial;color:#10201a}.checkout-checkout #accordion .panel-title a{display:flex;align-items:center;justify-content:space-between;color:#10201a;text-decoration:none}.checkout-checkout #accordion .panel-body{border:0;background:#fff;padding:15px}.checkout-checkout .form-control{height:44px;border-radius:10px;box-shadow:none;border-color:rgba(16,32,26,.14)}.checkout-checkout .btn-primary,.checkout-checkout #button-confirm{border:0!important;border-radius:23px!important;background:#082d1f!important;color:#fff!important;height:46px;padding:0 18px;font:800 11px Manrope,Arial}.checkout-checkout .buttons{margin-top:12px}.checkout-checkout table{font-size:11px}

  /* Footer is compact on mobile; desktop footer remains untouched. */
  .vikonFooter{padding:38px 16px 90px!important}.vikonFooter .footGrid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:24px!important}.vikonFooter .footBrand{grid-column:1/-1}.vikonFooter .footInformation,.vikonFooter .footShop{display:block}.vikonFooter h4{font-size:10px}.vikonFooter li,.vikonFooter p{font-size:10px}
}
@media (max-width:390px){
  .vmHero h1{font-size:42px}.vmSystemCard{height:195px}.vmSystemCard.vmSystemWide{height:225px}.vikonProductCard .image img{height:142px}.vikonProductCard .caption{padding:9px!important}.vikonProductCard .caption h4{font-size:11px}.vikonProductCard .price{font-size:13px}
}
@media (min-width:768px){
  .vikonMobileHeader,.vikonMobileDrawer,.vikonMobileBottomNav,.vikonMobileHome{display:none!important}
}

/* Vikon v33 — mobile cleanup: search, equal system cards, compact footer. Desktop untouched. */
.vikonMobileCompactFooter{display:none}
@media (max-width:767px){
  /* Search: never allow template markup or server-rendered HTML into the input value. */
  .vmhSearch form{height:48px!important;border-radius:26px!important;background:#10191a!important;border:1px solid rgba(185,207,131,.16)!important;padding-left:16px!important;box-shadow:0 8px 24px rgba(0,0,0,.10)!important}
  .vmhSearch input{color:#f4f1e5!important;font-size:16px!important;line-height:20px!important;-webkit-text-size-adjust:100%;text-size-adjust:100%}
  .vmhSearch input::placeholder{color:#8f9b91!important;opacity:1!important}
  .vmhSearch button{width:38px!important;height:38px!important;border-radius:20px!important;background:#082d1f!important;touch-action:manipulation}
  .vmhSearch i{color:#9fc66f!important;font-size:14px!important}

  /* System cards: all four cards use the same footprint. No oversized first card. */
  .vmSystemGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;align-items:stretch!important}
  .vmSystemCard,.vmSystemCard.vmSystemWide{grid-column:auto!important;width:100%!important;height:205px!important;min-height:205px!important;max-height:205px!important;border-radius:18px!important;overflow:hidden!important}
  .vmSystemCard img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
  .vmSystemCard span{left:14px!important;right:40px!important;bottom:13px!important}
  .vmSystemCard b{font-size:16px!important;line-height:1.05!important}
  .vmSystemCard i{right:12px!important;bottom:12px!important;width:36px!important;height:36px!important;border-radius:9px!important;background:rgba(255,255,255,.82)!important;color:#739b54!important;display:grid!important;place-items:center!important;font-size:18px!important;line-height:1!important}

  /* Replace the tall multi-column footer with a compact accordion. */
  footer.vikonFooter>.wrap.footGrid,
  footer.vikonFooter>.wrap.footerBottom{display:none!important}
  footer.vikonFooter{padding:0 16px 88px!important;background:#071e15!important}
  .vikonMobileCompactFooter{display:block!important;padding:28px 0 0!important;color:#dbe6dc!important}
  .vmfBrand{padding:0 0 18px!important}
  .vmfBrand>span{display:block;color:#fff;font:800 10px/1 DM Sans,Arial!important;letter-spacing:.18em!important}
  .vmfBrand p{margin:10px 0 0!important;max-width:340px!important;color:#9fb0a4!important;font:400 12px/1.5 DM Sans,Arial!important}
  .vmfAccordion{border-top:1px solid rgba(219,230,220,.12)!important}
  .vmfAccordion details{border-bottom:1px solid rgba(219,230,220,.12)!important}
  .vmfAccordion summary{list-style:none!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:46px!important;padding:0 2px!important;color:#f4f1e5!important;font:700 11px/1 DM Sans,Arial!important;letter-spacing:.08em!important;text-transform:uppercase!important}
  .vmfAccordion summary::-webkit-details-marker{display:none!important}
  .vmfAccordion summary .fa{font-size:10px!important;color:#9fc66f!important;transition:transform .2s ease!important}
  .vmfAccordion details[open] summary .fa{transform:rotate(45deg)!important}
  .vmfLinks{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0 16px!important;padding:0 2px 12px!important}
  .vmfLinks a{display:block!important;padding:5px 0!important;color:#9fb0a4!important;font:400 11px/1.35 DM Sans,Arial!important;text-decoration:none!important}
  .vmfBottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:18px 2px 0!important;color:#7f9187!important;font:400 9px/1.2 DM Sans,Arial!important}
  .vmfBottom a{color:#9fb0a4!important;text-decoration:none!important;white-space:nowrap!important}
}
@media (max-width:390px){
  .vmSystemCard,.vmSystemCard.vmSystemWide{height:185px!important;min-height:185px!important;max-height:185px!important}
  .vmSystemCard b{font-size:15px!important}
}


/* Vikon v34 — mobile polish: centered hero branding, reliable cart icons, larger luxury typography. Desktop untouched. */
@media (max-width:767px){
  /* Hero: center the GreenAge/Vikon brand artwork inside the mobile crop. */
  .vmHeroImage img{object-position:50% 50%!important}
  .vmHeroContent{left:20px!important;right:20px!important}
  .vmHero h1{font-family:Manrope,Arial,sans-serif!important;font-size:50px!important;line-height:.94!important;font-weight:600!important;letter-spacing:-.055em!important}
  .vmHero h1 em{font-family:"Playfair Display",Georgia,serif!important;font-size:1em!important;font-weight:500!important}
  .vmHero p{font-size:15px!important;line-height:1.55!important;max-width:350px!important}
  .vmEyebrow{font-size:10px!important;letter-spacing:.16em!important}

  /* Header cart: use Font Awesome's cart glyph (available in the site's FA version). */
  .vmhCart{color:#10201a!important;font-size:21px!important;width:42px!important;height:42px!important}
  .vmhCart i{display:block!important;font-family:FontAwesome!important;font-style:normal!important;font-size:21px!important;line-height:1!important;color:#10201a!important}
  .vmhCart b{top:0!important;right:-1px!important;min-width:18px!important;height:18px!important;padding:0 4px!important;border-radius:10px!important;background:#739b54!important;color:#fff!important;font:700 10px/18px DM Sans,Arial!important;box-shadow:0 0 0 2px #fbfaf4!important}
  .vmhIcon{font-size:21px!important}

  /* Bottom navigation: larger, easier-to-read luxury mobile controls. */
  .vikonMobileBottomNav{height:76px!important;padding:5px 4px calc(7px + env(safe-area-inset-bottom))!important}
  .vikonMobileBottomNav a{gap:5px!important;font:700 11px/1.1 Manrope,Arial!important;letter-spacing:.01em!important;color:#66736c!important}
  .vikonMobileBottomNav a i{font-family:FontAwesome!important;font-size:22px!important;line-height:1!important}
  .vikonMobileBottomNav a:nth-child(4) i{display:block!important}
  .vikonMobileBottomNav a:first-child,.vikonMobileBottomNav a:nth-child(2){color:#082d1f!important}
  .vikonMobileBottomNav a:nth-child(4){color:#66736c!important}
  .vikonMobileBottomNav a span{font-size:11px!important}

  /* Global mobile type scale: more legible without making the interface bulky. */
  .vmSection{padding-left:18px!important;padding-right:18px!important}
  .vmSectionHead h2{font-size:35px!important;line-height:.98!important;font-family:Manrope,Arial,sans-serif!important;font-weight:600!important}
  .vmSectionHead span{font-size:10px!important}
  .vmSectionHead>a{font-size:11px!important}
  .vmSystemCard b{font-size:18px!important;font-family:Manrope,Arial,sans-serif!important;font-weight:800!important}
  .vmSystemCard small{font-size:9px!important}
  .vmCategoryList b{font-size:15px!important}
  .vmCategoryList a{min-height:68px!important}
  .vmWhatsAppBlock h2{font-size:31px!important}
  .vmWhatsAppBlock span{font-size:10px!important}
  .vmWhatsAppBlock a{font-size:12px!important}

  /* Compact footer remains readable. */
  .vmfAccordion summary{font-size:12px!important;min-height:50px!important}
  .vmfLinks a{font-size:12px!important;padding:6px 0!important}
  .vmfBrand>span{font-size:11px!important}
  .vmfBrand p{font-size:13px!important}
  .vmfBottom{font-size:10px!important}
}
@media (max-width:390px){
  .vmHero h1{font-size:45px!important}
  .vmHero p{font-size:14px!important}
  .vmSectionHead h2{font-size:32px!important}
  .vmSystemCard b{font-size:17px!important}
}


/* Vikon v39 — center the full GreenAge/Vikon family artwork and give the mobile footer balanced gutters. Desktop untouched. */
@media (max-width:767px){
  /* The source artwork is wider than a phone. Keep the complete family panel visually centered instead of cropping the right side. */
  .vmHeroImage{background:#082d1f!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .vmHeroImage:before{content:"";position:absolute;inset:-10%;background:url('../image/owner.jpg') center center/cover no-repeat;filter:blur(20px);transform:scale(1.08);opacity:.40}
  .vmHeroImage img{position:relative!important;z-index:1!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:58% 50%!important;transform:scale(.78)!important;transform-origin:center center!important}

  /* Mobile footer: centered content column with comfortable luxury spacing and consistent side margins. */
  footer.vikonFooter{padding:0 0 88px!important}
  .vikonMobileCompactFooter{width:100%!important;max-width:720px!important;margin:0 auto!important;padding:32px 20px 0!important;box-sizing:border-box!important}
  .vmfBrand{padding:0 0 24px!important}
  .vmfBrand>span{font-size:12px!important;letter-spacing:.20em!important}
  .vmfBrand p{margin:12px 0 0!important;max-width:620px!important;font-size:13px!important;line-height:1.65!important}
  .vmfAccordion{border-top:1px solid rgba(219,230,220,.14)!important}
  .vmfAccordion details{border-bottom:1px solid rgba(219,230,220,.14)!important}
  .vmfAccordion summary{min-height:58px!important;padding:0 2px!important;font-size:12px!important;letter-spacing:.10em!important}
  .vmfLinks{padding:0 2px 15px!important;column-gap:22px!important}
  .vmfLinks a{font-size:12px!important;line-height:1.45!important;padding:7px 0!important}
  .vmfBottom{padding:22px 2px 4px!important;font-size:10px!important}
}

/* Vikon v39 — rebuild the mobile hero so the GreenAge/Vikon family artwork is a clean,
   centered image panel with the hero copy below it. Prevents image/text overlap. Desktop untouched. */
@media (max-width:767px){
  .vikonMobileHome .vmHero{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    background:#082d1f!important;
  }

  .vikonMobileHome .vmHeroImage{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:28px 18px 18px!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow:hidden!important;
    background:#082d1f!important;
    box-sizing:border-box!important;
    order:1!important;
  }

  /* Mobile uses the same sharp 1160x1300 artwork directly; no blurred backdrop or forced ratio. */
  .vikonMobileHome .vmHeroImage:before{
    display:none!important;
    content:none!important;
  }

  .vikonMobileHome .vmHeroImage img{
    position:relative!important;
    z-index:1!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    transform-origin:center center!important;
    border-radius:20px!important;
    box-shadow:0 18px 45px rgba(0,0,0,.24)!important;
  }

  .vikonMobileHome .vmHeroShade{
    display:none!important;
  }

  .vikonMobileHome .vmHeroContent{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:24px 22px 30px!important;
    order:2!important;
    z-index:2!important;
    background:#082d1f!important;
  }

  .vikonMobileHome .vmHeroContent .vmEyebrow{
    display:block!important;
    margin-bottom:12px!important;
  }

  .vikonMobileHome .vmHeroContent h1{
    margin-bottom:16px!important;
  }

  .vikonMobileHome .vmHeroContent p{
    margin-bottom:20px!important;
  }

  .vikonMobileHome .vmHeroButtons{
    position:relative!important;
    z-index:3!important;
  }
}

@media (max-width:390px){
  .vikonMobileHome .vmHeroImage{padding:22px 14px 14px!important}
  .vikonMobileHome .vmHeroImage img{border-radius:16px!important}
  .vikonMobileHome .vmHeroContent{padding:22px 18px 26px!important}
}


/* Vikon v44 — category products isolated from OpenCart's legacy list/grid JavaScript. */
@media (max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;margin:18px 0 0!important;padding:0!important;clear:both!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard{display:flex!important;width:auto!important;min-width:0!important;height:auto!important;margin:0!important;padding:0!important;float:none!important;visibility:visible!important;opacity:1!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .product-thumb{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;background:#fbfaf4!important;border:1px solid #dbe3d9!important;border-radius:15px!important;overflow:hidden!important;box-shadow:0 6px 20px rgba(16,32,26,.07)!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image{display:flex!important;width:100%!important;height:158px!important;min-height:158px!important;margin:0!important;padding:0!important;align-items:center!important;justify-content:center!important;background:#f0eee4!important;overflow:hidden!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image img{display:block!important;width:100%!important;height:158px!important;max-width:none!important;object-fit:contain!important;margin:0!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard> .product-thumb > div:last-child{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption{display:block!important;flex:1 1 auto!important;min-height:0!important;margin:0!important;padding:11px 11px 5px!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption h4{display:block!important;margin:0 0 6px!important;padding:0!important;font:700 12px/1.25 Manrope,Arial,sans-serif!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption h4 a{color:#10201a!important;text-decoration:none!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption>p:not(.price),body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .rating,body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .price-tax{display:none!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .price{display:block!important;margin:0!important;color:#082d1f!important;font:800 14px/1.2 Manrope,Arial,sans-serif!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group{display:flex!important;width:100%!important;margin:0!important;padding:7px 9px 10px!important;border:0!important;background:#fbfaf4!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:35px!important;min-height:35px!important;flex:1!important;border:0!important;border-radius:18px!important;background:#082d1f!important;color:#fff!important;font-size:11px!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group button:nth-child(n+2){display:none!important;}
  body.vikonInternal .vikonCategoryPage #list-view,body.vikonInternal .vikonCategoryPage #grid-view{display:none!important;}
}
@media (max-width:390px){
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image,body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image img{height:135px!important;min-height:135px!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption{padding:9px!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption h4{font-size:11px!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .price{font-size:13px!important;}
}
@media (min-width:768px){
  .vikonDesktopProductGrid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px!important;}
  .vikonDesktopProductGrid .vikonProductCard{display:flex!important;min-width:0;}
}

/* Vikon v47 — unified category presentation across all OpenCart categories.
   Keeps existing category data/SEO copy, but presents it in a cleaner hierarchy. */
body.vikonInternal .vikonCategoryPage .vikonCategoryHeader{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin:0 0 28px;
  padding:24px 26px;
  background:#fbfaf4;
  border:1px solid #dbe3d9;
  border-radius:22px;
  box-shadow:0 12px 32px rgba(8,45,31,.05);
}
body.vikonInternal .vikonCategoryPage .vikonCategoryHeading{min-width:0;flex:1;}
body.vikonInternal .vikonCategoryPage .vikonCategoryEyebrow,
body.vikonInternal .vikonCategoryPage .vikonSectionLabel{
  font:800 10px/1.2 "DM Sans",Arial,sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#739b54;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryHeading h2{
  margin:7px 0 10px;
  font:800 40px/1.05 Manrope,Arial,sans-serif;
  letter-spacing:-.04em;
  color:#082d1f;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryIntroText{
  max-width:760px;
  margin:0;
  color:#66736c;
  font-size:14px;
  line-height:1.65;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryThumb{
  width:150px;
  height:110px;
  flex:0 0 150px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#f0eee4;
  border-radius:16px;
  border:1px solid #dbe3d9;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryThumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  padding:8px;
}
body.vikonInternal .vikonCategoryPage .vikonCategorySubnav{margin:0 0 30px;}
body.vikonInternal .vikonCategoryPage .vikonCategoryChips{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:11px;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryChip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 14px;
  border:1px solid #d3ddd0;
  border-radius:999px;
  background:#fbfaf4;
  color:#10201a;
  text-decoration:none;
  font:700 12px/1 Manrope,Arial,sans-serif;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryChip span{color:#739b54;font-size:13px;}
body.vikonInternal .vikonCategoryPage .vikonCategoryChip:hover{background:#eef3e8;border-color:#b8cc9e;color:#082d1f;transform:translateY(-1px);}
body.vikonInternal .vikonCategoryPage .vikonCategoryProducts{margin-top:0;}
body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin:0 0 16px;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead h3{
  margin:5px 0 0;
  font:800 24px/1.1 Manrope,Arial,sans-serif;
  letter-spacing:-.025em;
  color:#082d1f;
}
body.vikonInternal .vikonCategoryPage .vikonCompareLink{
  display:inline-flex!important;
  align-items:center;
  min-height:36px;
  padding:0 13px!important;
  border:1px solid #cfd9cd!important;
  border-radius:999px!important;
  background:#fbfaf4!important;
  color:#405048!important;
  font-size:11px!important;
  white-space:nowrap;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryToolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 18px;
  padding:12px 14px;
  border-top:1px solid #dfe4dc;
  border-bottom:1px solid #dfe4dc;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryResultCount{
  color:#66736c;
  font-size:12px;
  line-height:1.4;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryControls{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryControls label{
  line-height:1;
  font-size:9px;
  letter-spacing:.1em;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryControls select.form-control{
  width:auto;
  min-width:145px;
  height:38px;
  padding:6px 10px;
  border-radius:10px;
  font-size:12px;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryPagination{
  margin:24px 0 0;
  text-align:center;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryPagination .pagination{margin:0;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAbout{
  margin-top:42px;
  border-top:1px solid #dfe4dc;
  border-bottom:1px solid #dfe4dc;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryAbout summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  min-height:58px;
  cursor:pointer;
  list-style:none;
  color:#082d1f;
  font:800 15px/1.2 Manrope,Arial,sans-serif;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryAbout summary::-webkit-details-marker{display:none;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAbout summary i{color:#739b54;font-size:17px;transition:transform .15s ease;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAbout[open] summary i{transform:rotate(180deg);}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody{
  max-width:980px;
  padding:0 0 28px;
  color:#405048;
  font-size:14px;
  line-height:1.75;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h1,
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h2,
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h3,
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h4{
  color:#082d1f;
  margin-top:22px;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody img{max-width:100%;height:auto;}

@media(max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonCategoryHeader{
    align-items:stretch;
    flex-direction:column-reverse;
    gap:14px;
    margin-bottom:24px;
    padding:16px;
    border-radius:18px;
  }
  body.vikonInternal .vikonCategoryPage .vikonCategoryThumb{width:100%;height:112px;flex-basis:112px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryHeading h2{font-size:30px;margin:6px 0 9px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryIntroText{font-size:12px;line-height:1.55;}
  body.vikonInternal .vikonCategoryPage .vikonCategorySubnav{margin-bottom:25px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryChips{gap:7px;margin-top:9px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryChip{min-height:36px;padding:0 11px;font-size:11px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead{align-items:center;margin-bottom:12px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead h3{font-size:20px;}
  body.vikonInternal .vikonCategoryPage .vikonCompareLink{min-height:32px;padding:0 10px!important;font-size:10px!important;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryToolbar{align-items:flex-start;flex-direction:column;gap:9px;margin-bottom:14px;padding:11px 0;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryControls{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:6px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryControls select.form-control{flex:1 1 130px;min-width:0;height:36px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryAbout{margin-top:34px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryAbout summary{min-height:52px;font-size:13px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody{font-size:12px;line-height:1.65;padding-bottom:22px;}
}


/* Vikon v48 — simplify category navigation and provide an explicit category-info toggle. */
body.vikonInternal .vikonCategoryPage .vikonCategorySubnav{display:none!important;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAbout{display:block;margin:36px 0 10px;padding:0;border-top:1px solid #dfe6dd;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutToggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:58px;margin:0;padding:0;background:transparent;border:0;border-bottom:1px solid #dfe6dd;color:#082d1f;text-align:left;font:700 13px/1.3 Manrope,Arial,sans-serif;cursor:pointer;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutToggle:hover{color:#557c3d;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutToggle i{color:#739b54;font-size:17px;transition:transform .15s ease;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutToggle[aria-expanded="true"] i{transform:rotate(180deg);}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody{padding:20px 2px 24px;color:#56645d;font-size:13px;line-height:1.75;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody[hidden]{display:none!important;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h1,body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h2,body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h3,body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody h4{color:#082d1f;}
@media (max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonCategoryAbout{margin-top:28px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryAboutToggle{min-height:52px;font-size:12px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryAboutBody{padding:17px 0 21px;font-size:12px;line-height:1.65;}
}

/* Vikon v49 — category title only, with expandable information directly beneath it. */
body.vikonInternal .vikonCategoryPage .vikonCategoryHeading{display:flex;flex-direction:column;align-items:flex-start;}
body.vikonInternal .vikonCategoryPage .vikonCategoryHeading h2{margin:0;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline{width:100%;margin:14px 0 0;border-top:0;border-bottom:0;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline .vikonCategoryAboutToggle{min-height:42px;width:auto;gap:12px;padding:0 14px;border:1px solid #d3ddd0;border-radius:999px;background:#fbfaf4;font-size:11px;letter-spacing:.01em;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline .vikonCategoryAboutToggle:hover{background:#eef3e8;border-color:#b8cc9e;color:#082d1f;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline .vikonCategoryAboutBody{padding:18px 2px 4px;max-width:900px;}
body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline .vikonCategoryAboutToggle[aria-expanded="true"]{border-radius:14px;}
@media(max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline{margin-top:12px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline .vikonCategoryAboutToggle{min-height:40px;padding:0 12px;font-size:11px;}
  body.vikonInternal .vikonCategoryPage .vikonCategoryAboutInline .vikonCategoryAboutBody{padding:15px 0 2px;font-size:12px;line-height:1.65;}
}
/* v50 — category title-only exceptions and clean product-name focus state */
body.vikonInternal .vikonCategoryPage .vikonCategoryTitleOnly .vikonCategoryHeading{width:100%;}
body.vikonInternal .vikonCategoryPage .vikonCategoryTitleOnly .vikonCategoryHeading h2{margin-bottom:0;}
body.vikonInternal .vikonCategoryPage .vikonProductCard a:focus,
body.vikonInternal .vikonCategoryPage .vikonProductCard a:active{outline:none!important;box-shadow:none!important;}
body.vikonInternal .vikonCategoryPage .vikonProductCard .caption h4 a:focus,
body.vikonInternal .vikonCategoryPage .vikonProductCard .caption h4 a:active{outline:none!important;box-shadow:none!important;background:transparent!important;}
/* Legacy refine-search/filter blocks are intentionally hidden on the redesigned category pages. */
body.vikonInternal .vikonCategoryPage .refine-search,
body.vikonInternal .vikonCategoryPage .refineSearch,
body.vikonInternal .vikonCategoryPage .category-filter{display:none!important;}



/* Vikon v55 — ensure the category product grid remains visible after the category markup cleanup. */
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid{
  display:grid!important;
  width:100%!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin:18px 0 0!important;
  padding:0!important;
  clear:both!important;
  visibility:visible!important;
  opacity:1!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard{
  display:flex!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  visibility:visible!important;
  opacity:1!important;
}
@media(max-width:991px){
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:14px!important;}
}

/* Vikon v51 — compact category product cards and cleaner product section header. */
body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead{
  margin:0 0 10px!important;
  align-items:center!important;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead h3{
  margin:0!important;
  font-size:21px!important;
}
body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead .vikonSectionLabel,
body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead .vikonCompareLink,
body.vikonInternal .vikonCategoryPage #compare-total{
  display:none!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid{
  gap:14px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .product-thumb{
  border-radius:14px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image,
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image img{
  height:118px!important;
  min-height:118px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption{
  padding:8px 9px 4px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption h4{
  margin:0 0 4px!important;
  font-size:12px!important;
  line-height:1.25!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .price{
  font-size:13px!important;
  line-height:1.15!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group{
  padding:5px 7px 7px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group button{
  height:30px!important;
  min-height:30px!important;
  border-radius:15px!important;
  font-size:10px!important;
}
@media(max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead{
    margin-bottom:8px!important;
  }
  body.vikonInternal .vikonCategoryPage .vikonCategoryProductsHead h3{
    font-size:18px!important;
  }
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid{
    gap:8px!important;
  }
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image,
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image img{
    height:128px!important;
    min-height:128px!important;
  }
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption{
    padding:8px 8px 3px!important;
  }
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group{
    padding:4px 6px 6px!important;
  }
}


/* Vikon v56 — compact category cards: cart only. */
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .product-thumb{
  height:auto!important;
  min-height:0!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image,
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image img{
  height:112px!important;
  min-height:112px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption{
  min-height:0!important;
  padding:7px 9px 3px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption h4{
  margin:0 0 3px!important;
  font-size:12px!important;
  line-height:1.2!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .price{
  margin:0!important;
  font-size:13px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group{
  display:flex!important;
  padding:4px 7px 6px!important;
  background:#fbfaf4!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group button.vikonAddToCartButton{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:15px!important;
  background:#082d1f!important;
  color:#fff!important;
  font:800 10px/1 Manrope,Arial,sans-serif!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group button.vikonAddToCartButton i{
  margin-right:8px!important;
  font-size:12px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group button:not(.vikonAddToCartButton){display:none!important;}
@media(max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image,
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image img{
    height:118px!important;
    min-height:118px!important;
  }
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption{padding:7px 8px 3px!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group{padding:4px 6px 6px!important;}
}
@media(max-width:390px){
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image,
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .image img{
    height:108px!important;
    min-height:108px!important;
  }
}


/* Vikon v57 — final product-card cleanup and product-page action cleanup. */
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard{
  align-self:start!important;
  height:auto!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .product-thumb{
  height:auto!important;
  min-height:0!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard > .product-thumb > div:last-child{
  flex:0 0 auto!important;
  min-height:0!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption{
  flex:0 0 auto!important;
  min-height:0!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption h4{
  font:800 16px/1.22 Manrope,Arial,sans-serif!important;
  margin:0 0 6px!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption > p:not(.price){
  display:block!important;
  margin:0 0 7px!important;
  font:400 11px/1.4 DM Sans,Arial,sans-serif!important;
  color:#66736c!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .button-group{
  margin-top:0!important;
}
body.vikonInternal .vikonProductPage > .container .btn-group{display:none!important;}
@media(max-width:767px){
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption h4{font-size:15px!important;line-height:1.2!important;}
  body.vikonInternal .vikonCategoryPage .vikonDesktopProductGrid .vikonProductCard .caption > p:not(.price){font-size:10px!important;line-height:1.35!important;}
}


/* Vikon v60 — mobile/tablet search results use the same compact product cards as categories. Desktop unchanged. */
@media(max-width:1024px){
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:14px 0 0!important;padding:0!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard{width:auto!important;float:none!important;padding:0!important;margin:0!important;display:flex!important;min-width:0!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .product-thumb{width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;background:#fbfaf4!important;border:1px solid #dbe3d9!important;border-radius:15px!important;overflow:hidden!important;box-shadow:0 6px 20px rgba(16,32,26,.07)!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image{width:100%!important;height:118px!important;min-height:118px!important;margin:0!important;padding:0!important;background:#f0eee4!important;overflow:hidden!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image a{display:block!important;width:100%!important;height:100%!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image img{width:100%!important;height:118px!important;min-height:118px!important;object-fit:cover!important;margin:0!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption{flex:0 0 auto!important;min-height:0!important;padding:7px 8px 3px!important;margin:0!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption h4{margin:0 0 5px!important;font:800 15px/1.2 Manrope,Arial,sans-serif!important;color:#10201a!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption h4 a{color:#10201a!important;text-decoration:none!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption>p:not(.price){display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;margin:0 0 6px!important;font:400 11px/1.4 DM Sans,Arial,sans-serif!important;color:#66736c!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .rating,body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .price-tax{display:none!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .price{margin:0!important;color:#082d1f!important;font:800 13px/1.15 Manrope,Arial,sans-serif!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group{display:flex!important;width:100%!important;margin:0!important;padding:4px 6px 6px!important;background:#fbfaf4!important;border:0!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group button{display:none!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group button:first-child{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:30px!important;min-height:30px!important;margin:0!important;padding:0 12px!important;border:0!important;border-radius:15px!important;background:#082d1f!important;color:#fff!important;font:800 10px/1 Manrope,Arial,sans-serif!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group button:first-child i{margin-right:8px!important;font-size:12px!important;}
  body.vikonInternal .vikonSearchPage #compare-total,body.vikonInternal .vikonSearchPage .btn-group,body.vikonInternal .vikonSearchPage #input-sort,body.vikonInternal .vikonSearchPage #input-limit{display:none!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid + .row{margin-top:14px!important;}
}

/* Vikon v62 — search-page mobile panel no longer stretches above results. */
@media(max-width:1024px){
  body.vikonInternal .vikonSearchPage #content{
    min-height:0!important;
    height:auto!important;
    align-self:flex-start!important;
  }
  body.vikonInternal .vikonSearchPage .vikonMobileSearchResultsGrid{
    margin-top:8px!important;
  }
}

/* Vikon v63 — desktop Related Products match the compact product cards. Mobile is intentionally untouched. */
@media(min-width:768px){
  body.vikonInternal .vikonProductPage .vikonRelatedGrid{
    display:flex!important;
    flex-wrap:wrap!important;
    margin-left:-7px!important;
    margin-right:-7px!important;
    margin-top:10px!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid > [class*="col-"]{
    padding-left:7px!important;
    padding-right:7px!important;
    margin-bottom:14px!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    background:#fbfaf4!important;
    border:1px solid #dbe3d9!important;
    border-radius:14px!important;
    overflow:hidden!important;
    box-shadow:0 6px 20px rgba(8,45,31,.06)!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .image,
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .image img{
    width:100%!important;
    height:112px!important;
    min-height:112px!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    object-fit:contain!important;
    display:block!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .caption{
    flex:0 0 auto!important;
    min-height:0!important;
    padding:7px 9px 3px!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .caption h4{
    margin:0 0 4px!important;
    font:800 16px/1.22 Manrope,Arial,sans-serif!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .caption h4 a{
    color:#082d1f!important;
    text-decoration:none!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .caption > p:not(.price){
    margin:0 0 6px!important;
    font:400 11px/1.4 DM Sans,Arial,sans-serif!important;
    color:#66736c!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .caption .price{
    margin:0!important;
    font:800 13px/1.15 Manrope,Arial,sans-serif!important;
    color:#082d1f!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .caption .price-tax{
    display:none!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .button-group{
    display:flex!important;
    width:100%!important;
    margin:0!important;
    padding:4px 7px 6px!important;
    background:#fbfaf4!important;
    border:0!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .button-group button{
    display:none!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .button-group button:first-child{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    width:100%!important;
    height:30px!important;
    min-height:30px!important;
    margin:0!important;
    padding:0 12px!important;
    border:0!important;
    border-radius:15px!important;
    background:#082d1f!important;
    color:#fff!important;
    font:800 10px/1 Manrope,Arial,sans-serif!important;
  }
  body.vikonInternal .vikonProductPage .vikonRelatedGrid .product-thumb .button-group button:first-child i{
    margin:0!important;
    font-size:12px!important;
    order:-1!important;
  }
}


/* Mobile-only WhatsApp branding + remove mobile category lead section. Desktop is untouched. */
@media (max-width:767px){
  .vikonMobileHome .vmCategorySection{display:none!important}

  .vikonMobileHome .vmWhatsAppButton{
    background:#25D366!important;
    color:#fff!important;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
    font-weight:500!important;
    letter-spacing:0!important;
    text-decoration:none!important;
    -webkit-font-smoothing:antialiased!important;
  }
  .vikonMobileHome .vmWhatsAppButton .vmWhatsAppLogo{
    width:20px!important;
    height:20px!important;
    flex:0 0 20px!important;
    display:block!important;
    fill:currentColor!important;
  }
  .vikonMobileHome .vmHeroButtons .vmWhatsAppButton{
    border:0!important;
    box-shadow:none!important;
  }
  .vikonMobileHome .vmWhatsAppBlock .vmWhatsAppButton{
    height:44px!important;
    padding:0 18px!important;
    border-radius:22px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    font-size:14px!important;
    line-height:1!important;
  }
}

/* Mobile bottom navigation — unify all five shortcuts to the same dark green. */
@media (max-width:767px){
  .vikonMobileBottomNav a,
  .vikonMobileBottomNav a:first-child,
  .vikonMobileBottomNav a:nth-child(2),
  .vikonMobileBottomNav a:nth-child(3),
  .vikonMobileBottomNav a:nth-child(4),
  .vikonMobileBottomNav a:nth-child(5){
    color:#082d1f!important;
  }
}


/* Vikon search results — desktop cards match the compact category cards. */
@media (min-width:768px){
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    margin:14px 0 0!important;
    padding:0!important;
    clear:both!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard{
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    align-self:start!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .product-thumb{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    background:#fbfaf4!important;
    border:1px solid #dbe3d9!important;
    border-radius:14px!important;
    overflow:hidden!important;
    box-shadow:0 6px 20px rgba(16,32,26,.07)!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image,
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image img{
    width:100%!important;
    height:112px!important;
    min-height:112px!important;
    margin:0!important;
    padding:0!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#f0eee4!important;
    overflow:hidden!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image a{display:block!important;width:100%!important;height:100%!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .image img{object-fit:contain!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption{
    flex:0 0 auto!important;
    min-height:0!important;
    margin:0!important;
    padding:7px 9px 3px!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption h4{
    margin:0 0 6px!important;
    padding:0!important;
    font:800 16px/1.22 Manrope,Arial,sans-serif!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption h4 a{color:#10201a!important;text-decoration:none!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .caption > p:not(.price){
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    margin:0 0 7px!important;
    font:400 11px/1.4 DM Sans,Arial,sans-serif!important;
    color:#66736c!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .rating,
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .price-tax{display:none!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .price{
    margin:0!important;
    color:#082d1f!important;
    font:800 13px/1.15 Manrope,Arial,sans-serif!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .price-old{font-size:10px!important;color:#999!important;margin-left:4px!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group{
    display:flex!important;
    width:100%!important;
    margin:0!important;
    padding:4px 7px 6px!important;
    background:#fbfaf4!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group button{
    display:none!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group button:first-child{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:30px!important;
    min-height:30px!important;
    margin:0!important;
    padding:0 12px!important;
    border:0!important;
    border-radius:15px!important;
    background:#082d1f!important;
    color:#fff!important;
    font:800 10px/1 Manrope,Arial,sans-serif!important;
  }
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid .vikonSearchProductCard .button-group button:first-child i{margin-right:8px!important;font-size:12px!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchLegacyControls{display:none!important;}
  body.vikonInternal .vikonSearchPage .vikonSearchResultsGrid + .row{margin-top:14px!important;}
}

/* v30: remove the desktop Products / Systems / Specials links; category bar remains the product navigation. */
@media(min-width:951px){
  /* Final desktop header repair v2: keep the logo, claim, controls and stats in fixed lanes. */
  .vikonNav{height:178px!important;grid-template-columns:220px 1fr auto!important;align-items:start!important;position:relative!important;}
  .vikonNav .brandMark{height:178px!important;justify-content:flex-start!important;align-items:flex-start!important;position:relative!important;}
  .vikonNav .logo{width:150px!important;height:102px!important;margin:5px 0 0 18px!important;object-fit:contain!important;}
  .vikonNav .navLeft{display:none!important;}
  .vikonNav .navRight{padding-top:34px!important;gap:24px!important;justify-content:flex-end!important;align-items:center!important;}
  .brandClaims{position:absolute!important;left:250px!important;right:auto!important;top:54px!important;width:520px!important;display:block!important;white-space:nowrap!important;font-size:20px!important;line-height:1.08!important;letter-spacing:-.035em!important;z-index:5!important;}
  .logoStats{position:absolute!important;left:50%!important;right:auto!important;top:120px!important;transform:translateX(-50%)!important;width:820px!important;max-width:calc(100% - 40px)!important;height:52px!important;display:grid!important;grid-template-columns:minmax(0,1.35fr) 1px minmax(0,1fr) 1px minmax(0,1fr)!important;align-items:center!important;justify-content:stretch!important;gap:0!important;padding:4px 12px!important;overflow:hidden!important;white-space:nowrap!important;z-index:6!important;}
  .logoStats span{min-width:0!important;width:100%!important;justify-content:center!important;font-size:13px!important;letter-spacing:.075em!important;gap:8px!important;white-space:nowrap!important;}
  .logoStats i{height:30px!important;margin:0!important;}
  .logoStats .statIcon{width:23px!important;height:23px!important;min-width:23px!important;flex:0 0 23px!important;}
}

/* Final desktop logo contrast: a subtle lighter green glow behind the Vikon mark. */
@media (min-width:951px){
  .vikonNav .brandMark::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:186px;
    height:122px;
    border-radius:50%;
    background:radial-gradient(ellipse at center, rgba(49,104,64,.34) 0%, rgba(49,104,64,.18) 48%, rgba(49,104,64,0) 76%);
    z-index:0;
    pointer-events:none;
  }
  .vikonNav .brandMark .logo{position:relative;z-index:1;}
}


/* Desktop hero artwork: exact 580x650 source; mobile hero is untouched. */
@media (min-width: 768px) {
  body.common-home .heroVisual {
    align-items: flex-start !important;
    padding-top: 226px !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 6 !important;
  }
  body.common-home .ownerFrame {
    width: 580px !important;
    height: 650px !important;
    flex: 0 0 580px !important;
    z-index: 7 !important;
  }
  body.common-home .ownerFrame img {
    width: 108% !important;
    height: 108% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: translate(3.5%, 2.5%) !important;
    filter: none !important;
  }
  /* The artwork starts below the desktop category bar, so the VIKON mark cannot be hidden by it. */
  body.common-home .heroVisual,
  body.common-home .ownerFrame {
    isolation: isolate;
  }
}

/* Final desktop hero correction: preserve the 580x650 artwork exactly and clip cleanly to the arch. */
@media (min-width: 768px) {
  body.common-home .ownerFrame {
    width: 580px !important;
    height: 650px !important;
    overflow: hidden !important;
    border-radius: 320px 320px 14px 14px !important;
  }
  body.common-home .ownerFrame img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    filter: none !important;
  }
}
