* {padding:0; margin:0; border:none; -webkit-box-sizing:border-box;	-moz-box-sizing:border-box;	box-sizing:border-box}

body {background:#f5f5f5; font-family:'Open Sans', sans-serif; font-weight:400; font-size:14px; color:#666}

li {list-style-type:none}

a {
	color:#02417f;
	text-decoration:none;
	-webkit-transition:color .1s linear; 
	-moz-transition:color .1s linear; 
	-o-transition:color .1s linear; 
	transition:color .1s linear
}
a:hover, a:focus {color:#2a95ff; outline:0}

.content-mobile {display:none}
/*body{background: green !important}*/

.left {float:left}
.right {float:right}
.clear:before, .clear:after, .button:before, .button:after {content:""; display:table}
.clear:after, .button:after {clear:both}
.clear, .button {*zoom:1}

.wrap-center {margin:0 auto; width:1010px}

.padding-def {padding:20px}

#wrap-content, #col-2-lg {border-left:1px solid #e6e6e6; border-right:1px solid #e6e6e6}
#wrap-content {
	background:#fff; 
	display:table; 
	-webkit-box-shadow:inset 0 10px 10px  -10px rgba(0,0,0,0.25); 
	-moz-box-shadow:inset 0 10px 10px -10px rgba(0,0,0,0.25); 
	-o-box-shadow:inset 0 10px 10px -10px rgba(0,0,0,0.25); 
	box-shadow:inset 0 10px 10px -10px rgba(0,0,0,0.25)
}
#col-1-sm, #col-2-lg, #col-3-sm {display:table-cell; vertical-align:top; padding-bottom:80px}
#col-1-sm, #col-3-sm {width:20%}
#col-2-lg {width:60%}
#col-3-sm {text-align:center}

.grad-main-down {
	background:#2284e5;
	background:-moz-linear-gradient(top,  #2284e5 0%, #2a95ff 100%);
	background:-webkit-linear-gradient(top,  #2284e5 0%,#2a95ff 100%);
	background:linear-gradient(to bottom,  #2284e5 0%,#2a95ff 100%);
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#2284e5', endColorstr='#2a95ff',GradientType=0 );
}
.grad-main-up {
	background:#2a95ff;
	background:-moz-linear-gradient(top,  #2a95ff 0%, #2284e5 100%);
	background:-webkit-linear-gradient(top,  #2a95ff 0%,#2284e5 100%);
	background:linear-gradient(to bottom,  #2a95ff 0%,#2284e5 100%);
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#2a95ff', endColorstr='#2284e5',GradientType=0 );
}
.grad-sub-up {
	background:#16d6b8;
	background:-moz-linear-gradient(top,  #16d6b8 0%, #1acca8 100%);
	background:-webkit-linear-gradient(top,  #16d6b8 0%,#1acca8 100%);
	background:linear-gradient(to bottom,  #16d6b8 0%,#1acca8 100%);
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#16d6b8', endColorstr='#1acca8',GradientType=0 );
}
.grad-del-up {
	background:#d5522f;
	background:-moz-linear-gradient(top,  #d5522f 0%, #cb3e3a 100%);
	background:-webkit-linear-gradient(top,  #d5522f 0%,#cb3e3a 100%);
	background:linear-gradient(to bottom,  #d5522f 0%,#cb3e3a 100%);
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#d5522f', endColorstr='#cb3e3a',GradientType=0 );
}

.button {display:inline-block}
.button.right {margin-right:20px}
.button span, .button strong {display:block; float:left; height:inherit}
.button span img {height:inherit; width:auto}
.button strong {color:#fff !important; text-transform:uppercase; letter-spacing:-0.5px}
.button:hover {opacity:0.85}

.button.small {
	display:inline-block;
	height:30px;
	border-radius:15px; 
	-moz-border-radius:15px; 
	-webkit-border-radius:15px;
	min-width: 88px;
}
.button.big {
	display:inline-block;
	height:45px;
	border-radius:22px; 
	-moz-border-radius:22px; 
	-webkit-border-radius:22px;
}

.button.small strong {font-size:12px; font-weight:600; line-height:30px; margin-right:12px}
.button.big strong {font-size:18px; font-weight:300; line-height:45px; margin-right:18px}

.main-opt, .table-def table thead tr td {background:#e9f4ff !important}
.sub-opt {background:#fff4e1}

#header {background:url(/img/banner-pharmacy.jpg) no-repeat right top #fff; background-size:auto 150px; width:100%; height:150px}
#header a.logo {display:inline-block}
#header a.logo img {display:block; height:60px; margin:45px 0 0 40px}
#banner-top {float:right}
#banner-top ul + img {height:150px}
#banner-top ul {float:left; padding-top:30px}
#banner-top ul + ul {padding-left:30px}
#banner-top ul li {
	background:url(/img/ico-check-list.png) no-repeat left top; 
	background-size:16px auto;
	font-size:16px; 
	font-weight:600; 
	letter-spacing:-0.5px; 
	color:#02417f; 
	line-height:1.2em; 
	padding:0 0 0 20px;
	margin:10px 0;
}

#nav {
	width:100%; 
	-webkit-box-shadow:0 10px 10px  -10px rgba(0,0,0,0.25); 
	-moz-box-shadow:0 10px 10px -10px rgba(0,0,0,0.25); 
	-o-box-shadow:0 10px 10px -10px rgba(0,0,0,0.25); 
	box-shadow:0 10px 10px -10px rgba(0,0,0,0.25);
}
#nav {padding:10px 0; height:50px}
#nav ul li {float:left;	border-left:1px solid #54a8fc}
#nav ul li:first-child {border-left:none}
#nav ul li a {
	display:block; 
	font-size:18px; 
	font-weight:300; 
	letter-spacing:-0.5px; 
	color:#fff; 
	line-height:30px; 
	padding:0 37px;
	-webkit-transition:all .1s linear; 
	-moz-transition:all .1s linear; 
	-o-transition:all .1s linear; 
	transition:all .1s linear
}
#nav ul li a:hover, #nav ul li a:focus  {text-shadow:0 0 5px rgba(255,255,255,0.75)}

#footer {
	background:#8f8f8f;
	font-size:12px;
	line-height:15px;
	color:#fff;
	text-align:Center;
	padding:15px 30px;
	width:100%;
	-webkit-box-shadow:inset 0 10px 10px  -10px rgba(0,0,0,0.25); 
	-moz-box-shadow:inset 0 10px 10px -10px rgba(0,0,0,0.25); 
	-o-box-shadow:inset 0 10px 10px -10px rgba(0,0,0,0.25); 
	box-shadow:inset 0 10px 10px -10px rgba(0,0,0,0.25)
}

h2 {font-size:20px; font-weight:700; line-height:1.2em; letter-spacing:-1px; color:#02417f; margin:25px 20px}
.text-wrap {padding:20px; border-top:1px solid #e6e6e6}
.text-wrap h2 {margin:0 0 25px}
.img-wrap {
	width:33%;
	padding:10px;
	border:1px solid #e6e6e6;
	overflow:hidden;
	border-radius:5px; 
	-moz-border-radius:5px; 
	-webkit-border-radius:5px;
}
.img-wrap img {width:100%}
.img-wrap.right {margin:0 0 20px 20px}
#col-2-lg .text-wrap:first-child, #ttl-page + .text-wrap {border-top:none}
.text-def p {text-align:justify; margin-top:15px}
.text-def p:first-of-type {margin-top:0}
.text-def ul {margin-left:15px}
.text-def ul li {list-style-type:circle; list-style-position:outside; margin-top:10px}

#grid-prod + div.text-wrap {border-top:none}
#grid-prod {border-top:1px solid #e6e6e6}
#grid-prod a {
	display:inline-table; 
	font-weight:600;
	letter-spacing:-0.5px;
	float:left; 
	vertical-align:top; 
	text-align:center; 
	width:25%; 
	padding:15px 0; 
	border-right:1px solid #e6e6e6; 
	border-bottom:1px solid #e6e6e6;
	font-size: 12px;
}
#grid-prod a.grid-desk {border-right:1px solid transparent}
#grid-prod a span {display:block; position:relative; width:80%; margin:0 10%; padding-bottom:80%; margin-bottom:10px; overflow:hidden}
#grid-prod a span img {
	display:block; 
	position:absolute; 
	top:50%; 
	left:50%; 
	transform:translate(-50%, -50%); 
	width:100%; 
	height:auto;
	-webkit-transition:width .1s linear; 
	-moz-transition:width .1s linear; 
	-o-transition:width .1s linear; 
	transition:width .1s linear
}
#grid-prod a:hover span img, #grid-prod a:focus span img {width:110%}

.wrap-opts {letter-spacing:-0.5px}
.wrap-opts dt {padding:10px 15px; font-weight:600; line-height:1em; color:#02417f; border-top:1px solid #e6e6e6; border-bottom:1px solid #e6e6e6}
.wrap-opts dd {padding:15px}
.wrap-opts dd ul li a {color:#666}
.wrap-opts dd ul li a:hover, .wrap-opts dd ul li a.active {color:#2a95ff}
.wrap-opts dd.links ul li {margin-top:5px}
.wrap-opts dd.links ul li:first-child {margin-top:0}

.wrap-opts dd.flags ul li {display:inline-block; margin-right:5px}
.wrap-opts dd.flags ul li img {height:30px}

#wrap-cart p {margin-bottom:10px}
#wrap-cart p strong {color:#02417f}

#wrap-cards ul {display:inline-block; margin-top:5px}
#wrap-cards ul li {float:left; text-align:center; font-size:9px; color:#de8e09}
#wrap-cards ul li:first-child {margin:5px 5px 0 0}
#wrap-cards ul li:first-child + li {margin:5px 0 0}
#wrap-cards ul li img {width:40px}

#wrap-testimonials {padding:0}
#wrap-testimonials ul li {font-size:12px; letter-spacing:-0.5px; text-align:left; padding:10px 15px; border-top:1px dotted #e6e6e6}
#wrap-testimonials ul li:first-child {border-top:none}
#wrap-testimonials ul li p {font-weight:600; color:#02417f; margin-bottom:5px}
#wrap-testimonials ul li p strong {float:right; font-size:10px; letter-spacing:0; color:#666}

#wrap-sac {padding:10px}
#wrap-sac img {width:100px; margin-bottom:10px}
#wrap-sac p {font-size:12px; margin-bottom:5px}
#wrap-sac p strong {display:block; font-size:14px; font-weight:600; letter-spacing:-0.5px}
#wrap-sac span {font-size:10px}

#ttl-page {padding:15px 20px; border-bottom:1px solid #e6e6e6}
h1 {font-size:30px; line-height:40px; font-weight:300; color:#2a95ff; letter-spacing:-2px}
#ttl-page a {float:right}
#ttl-page a:hover {opacity:0.85}
#ttl-page a img, #ttl-page a span {display:block; float:left; height:40px}
#ttl-page a span {
	text-transform:uppercase;
	font-size:12px;
	font-weight:600;
	color:#2a95ff;
	line-height:40px; 
	padding:0 15px 0 10px;
	border:1px solid #e6e6e6;
	border-left:none;
	border-radius:0 4px 4px 0; 
	-moz-border-radius:0 4px 4px 0; 
	-webkit-border-radius:0 4px 4px 0;
}

.def-input {
	display:table;
	width:100%;
	margin-bottom:15px;
	border:1px solid #e6e6e6;
	border-radius:10px; 
	-moz-border-radius:10px; 
	-webkit-border-radius:10px;
	overflow:hidden;
}
.def-input span, .def-input strong, .def-input input[type="text"], .def-input texture {display:table-cell; vertical-align:top}
.def-input span, .def-input strong {background:#f8f8f8}
.def-input span {text-align:center; width:10%}
.def-input span img {width:45px}
.def-input strong {font-weight:600; color:#2a95ff; letter-spacing:-0.5px; line-height:50px; width:25%; border-right:1px solid #e6e6e6}
.def-input input[type="text"], .def-input textarea {
	font-family:'Open Sans', sans-serif; 
	font-weight:400; 
	font-size:14px; 
	color:#666;
	padding:15px;
	width:100%; 
	resize:none; 
	outline:0 !important
}
.def-input input[type="text"] {height:48px}
.def-input textarea {height:148px}

.table-def {padding:0 20px 20px}
#ttl-page + .table-def {padding:20px}
.table-def table {
	overflow:hidden;
	width:100%;
	border:1px solid #e6e6e6;
	border-radius:5px; 
	-moz-border-radius:5px; 
	-webkit-border-radius:5px;
}
.table-def table tr td {line-height:1.2em; text-align:center; padding:8px 9px; border-top:1px dotted #e6e6e6}
.table-def table tr td:first-child {text-align:left}
.table-def table tr.hover td {background:#f8f8f8}
.table-def table tr.sale td {background:#e6fffb}
.table-def table tr.sale td strong {color:#01a785}
.table-def table tr.total td {font-weight:700; text-transform:uppercase; color:#02417f; padding:13px 10px}
.table-def table tr.total td strong {font-size:20px}
.table-def table thead tr td {font-weight:600; color:#02417f; border-top:none; border-bottom:1px solid #e6e6e6; padding:13px 10px}
.table-def table tbody tr:first-child td {border-top:none}

.table-def table + a.button {margin-top:20px}

.textUl {padding-left: 20px;}
.textUl > li {list-style: circle;}

.submitKasse {    
	display: inline-block;
    height: 45px;
    border-radius: 22px;
    -moz-border-radius: 22px;
    -webkit-border-radius: 22px;
    background: #16d6b8;
    background: -moz-linear-gradient(top, #16d6b8 0%, #1acca8 100%);
    background: -webkit-linear-gradient(top, #16d6b8 0%,#1acca8 100%);
    background: linear-gradient(to bottom, #16d6b8 0%,#1acca8 100%);
    float: right;
    font-size: 18px;
    font-weight: 300;
    color: white;
    padding: 14px;
    margin-right: 20px;
    cursor: pointer;
}


@media (max-width:1000px) and (-webkit-min-device-pixel-ratio: 1) {

	.wrap-center {margin:0; width:100%}
	
	#nav ul li a {padding:0 25px}
	
}

@media (max-width:840px) and (-webkit-min-device-pixel-ratio: 1) {

	body {padding-top:80px}
	
	#top {
		background:#fff;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:80px;
		-webkit-box-shadow:0 0 5px rgba(0,0,0,0.25); 
		-moz-box-shadow:0 0 5px rgba(0,0,0,0.25); 
		-o-box-shadow:0 0 5px rgba(0,0,0,0.25); 
		box-shadow:0 0 5px rgba(0,0,0,0.25);
		z-index:999 !important
	}
	#top a#bt-cart, #top a#bt-menu {
		background-size:80px auto; 
		background-repeat:no-repeat; 
		background-position:left top; 
		position:relative; 
		display:block; 
		width:80px; 
		height:80px
	}
	#top a#bt-cart.active, #top a#bt-menu.active {background-size:80px auto; background-position:left bottom}
	
	#bt-cart {background-image:url(/img/bt-cart.png); border-left:1px solid #e6e6e6; float:right}
	#bt-cart span {
		position:absolute; 
		top:15px;
		right:15px;
		background:#ffa105;
		font-size:12px; 
		font-weight:600;
		color:#fff;
		line-height:20px;
		text-align:center;
		display:block;
		width:20px;
		height:20px;
		border-radius:50%; 
		-moz-border-radius:50%; 
		-webkit-border-radius:50%
	}
	
	#bt-menu {background-image:url(/img/bt-menu.png); border-right:1px solid #e6e6e6}
	
	#top a:first-child {border-right:none; border-left:1px solid #e6e6e6}
	#top a.logo {position:fixed; top:0; left:50%; transform:translate(-50%, 0); padding:20px 0}
	#top a.logo img {height:40px}
	
	#wrap-content {position:relative}

	#col-1-sm {
		background:#fff; /* 1. Добавлен фон, чтобы меню не было прозрачным */
		display:none;
		font-size:18px;
		position:fixed; /* 2. Изменено на fixed, чтобы привязать к экрану */
		top:80px; /* 3. Указан отступ, равный высоте шапки (80px) */
		left:0;
		bottom:0;
		right:0;
		width:100%;
		z-index:888 !important;
		overflow-y: auto; /* 4. Добавлена прокрутка на случай длинного меню */
	}

	#col-1-sm.visible {display:block}
	
	.wrap-opts {background:#fff; text-align:center}
	.wrap-opts dt {font-size:20px}
	.wrap-opts dd.links {padding:0}
	.wrap-opts dd.links ul li {margin:0; border-top:1px solid #e6e6e6}
	.wrap-opts dd.links ul li:first-child {border-top:none}
	.wrap-opts dd.links ul li a {display:block; padding:5px 0}
	
	.wrap-opts dd.opt{padding:0}
	.wrap-opts dd.opt ul li{border-top:1px solid #e6e6e6}
	.wrap-opts dd.opt ul li a {display: block; padding: 5px 0;}

	#wrap-testimonials  ul li {font-size:14px; padding:10px 20px}
	#wrap-testimonials  ul li p {font-size:16px}
	#wrap-testimonials  ul li p strong {font-size:12px}	
	
	#wrap-sac p, #wrap-sac span {font-size:14px}
	#wrap-sac p strong {display:inline; letter-spacing:0}
	
	.table-def {padding:0 0 20px}
	#ttl-page + .table-def {padding:20px 0}
	.table-def table {
		border-left:none;
		border-right:none;
		border-radius:0; 
		-moz-border-radius:0; 
		-webkit-border-radius:0
	}
	.table-def table tr td {font-size:14px; padding:8px 0 8px 4px}
	.table-def table thead tr td {padding:13px 0 13px 4px}
	
	/*.table-def table tr td a.button strong {margin:0 10px}*/

	#header {text-align:center}
	#banner-top {text-align:left; float:none; display:inline-block}
	
	.content-desk {display:none !important}
	.content-mobile {display:block}
	#wrap-content, #col-2-lg {
		width:100%;
		border:none;
		-webkit-box-shadow:none; 
		-moz-box-shadow:none; 
		-o-box-shadow:none; 
		box-shadow:none
	}

	#grid-prod a {width:50%}
	#grid-prod a.grid-mobile {border-right:1px solid transparent}
	
	#footer p {margin-top:10px}
	#footer p:first-child {margin-top:0}
	.button.small.grad-del-up {margin-right: 10px !important;}
}

.width100{width: 100%}

@media (max-width:360px) and (-webkit-min-device-pixel-ratio: 1) {
	a.button.small.grad-main-up strong{    margin: 0 0px;}
	#banner-top ul li { font-size: 13px;}
	.def-input strong { letter-spacing: -1.6px; line-height: 40px;}
	.wrap-opts dd.opt ul li a , .wrap-opts dd.links ul li a{ padding: 3px 0 ;  font-size: 85% ;}
	h1 { font-size: 23px;}
	.wrap-opts dt { font-size: 18px;}
	.submitKasse { height: 41px; font-size: 14px; padding: 14px;}
	h2 { font-size: 17px;}

}

.opt.menu ul li{padding: 3% 5%;}
.wrap-opts dd {  padding: 8px 15px;}

@media screen and (max-width: 930px) and (min-width: 841px) {	
	#grid-prod a:nth-child(6){font-size: 12px;padding: 6px 0;}
}
.opt.menu .main-opt{ padding: 7px 12px !important;}

.en-button{
	background-image: url("/img/en-icon.png");
	background-repeat: no-repeat;
	background-position: 10px;
}

.de-button{
	background-image: url("/img/de-icon.png");
	background-repeat: no-repeat;
	background-position: 10px;
}

.faq__question{
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2em;
	letter-spacing: -1px;
	color: #02417f;
	margin-top: 10px;
	margin-bottom: 10px;
}

.faq__block li{
	list-style-type: circle;
	list-style-position: outside;
	margin-top: 10px;
	margin-left: 18px;
}

.text-def ol{
	margin-top: 10px;
}

.text-def ol li{
	list-style-type: decimal !important;
	margin-left: 15px;
}

.text-def h2{
	margin-top: 10px;
}

.form-select{
	height: 48px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size: 14px;
	color: #666;
	padding: 15px;
	width: 100%;
	resize: none;
	outline: 0 !important;
}


@media (max-width: 840px) {
	#header{ display:none !important; }
}

#checkout-faq.faq--all {
	margin: 0 20px 10px;
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	background: #fff;
	overflow: hidden;
}

#checkout-faq .faq__heading {
	display: block;
	padding: 14px 46px 14px 16px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2em;
	letter-spacing: -1px;
	color: #02417f;
	cursor: pointer;
	position: relative;
	-webkit-tap-highlight-color: transparent;
}
#checkout-faq .faq__heading::-webkit-details-marker { display: none; }
#checkout-faq .faq__heading::marker { content: ""; }

#checkout-faq .faq__heading::after {
	content: "–";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	font-weight: 700;
	font-size: 20px;
	color: #2a95ff;
	line-height: 1;
}

#checkout-faq:not([open]) .faq__heading::after { content: "+"; }
#checkout-faq[open] .faq__heading { background: #e9f4ff; border-bottom: 1px dotted #e6e6e6; }

#checkout-faq .faq__content { padding: 12px 16px 16px; }
#checkout-faq .faq__item {
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	background: #fff;
	margin: 10px 0;
}
#checkout-faq .faq__item:first-child { margin-top: 0; }
#checkout-faq .faq__answer { padding: 12px 16px 16px; }
#checkout-faq .faq__question { margin: 12px 16px 0; }

@media (max-width: 840px) {
	#checkout-faq.faq--all {
		margin: 0 0 10px;
		border-left: none;
		border-right: none;
		border-radius: 0;
	}
	#checkout-faq .faq__heading { padding: 12px 44px 12px 14px; }
	#checkout-faq .faq__content { padding: 10px 14px 14px; }
}




/* START: Added styles for Product Showcase */
.product-showcase {
	/* This is mobile-first, matching image 1 */
	margin-bottom: 15px;
}
.product-image-box {
	text-align: center;
	padding: 10px;
	margin-bottom: 15px;
	/* In mobile view (image 1), there is no border, just image */
}
.product-image-box img {
	max-width: 300px; /* Limit size */
	height: auto;
	margin: 0 auto;
	display: block;
}
.product-features {
	list-style-type: none;
	margin: 0;
	padding: 0 15px; /* Padding as in image 1 */
}
.product-features li {
	font-size: 14px;
	color: #333;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
}
.product-features .icon {
	margin-right: 8px;
	font-size: 16px;
	min-width: 20px;
	text-align: center;
}
.product-features .icon.check {
	color: #28a745; /* Green check */
}
.product-features .icon.clock {
	color: #666; /* Gray clock */
}
.product-features .icon.lock {
	color: #666; /* Gray lock */
}
.product-features li strong {
	color: #000;
}

/* Desktop adjustments for showcase */
@media (min-width: 841px) {
	.product-showcase {
		padding: 0 20px;
		margin-bottom: 20px;
	}
	.product-image-box {
		border: 1px solid #e6e6e6;
		border-radius: 5px;
		padding: 15px;
		background: #fff;
		margin-bottom: 20px;
	}
	.product-features {
		padding: 0;
	}
}
/* END: Added styles for Product Showcase */


/* START: Modified Table Styles */

/* Override existing header */
.table-def table thead tr td {
	background: #fff !important; /* Image 2 has white/no background */
	color: #888; /* Gray text */
	font-weight: 400;
	font-size: 13px;
	text-transform: none; /* No uppercase */
	border-bottom: 1px solid #e6e6e6;
	text-align: center;
}
.table-def table thead tr td:first-child {
	text-align: left;
	padding-left: 10px;
}

/* New Price/Bonus Styles */
.table-def table tbody tr td {
	text-align: center;
	vertical-align: middle;
	font-size: 15px;
	color: #333;
}
.table-def table tbody tr td:first-child {
	text-align: left;
	padding-left: 10px;
	line-height: 1.4;
}
.bonus {
	color: #28a745; /* Green */
	font-weight: 600;
	font-size: 14px;
}
.price-old {
	text-decoration: line-through;
	color: #999;
	font-size: 13px;
	display: block;
}
.price-new {
	color: #000; /* Black, not red */
	font-weight: 700;
	font-size: 18px;
	display: block;
}

/* New Button Style */
.button-kaufen {
	display: inline-block;
	background: #007bff; /* Blue from image */
	color: #fff !important;
	font-weight: 700;
	text-align: center;
	padding: 12px 25px;
	border-radius: 5px;
	text-transform: uppercase;
	font-size: 14px;
	-webkit-transition: all .1s linear;
	transition: all .1s linear;
	border: none;
	cursor: pointer;
}
.button-kaufen:hover {
	background: #0056b3;
	opacity: 1;
}

/* "BELIEBT" tag */
.table-def table tbody tr.popular {
	position: relative;
	/* background-color: #f8f8f8; */ /* Light highlight */
	outline: 2px solid #16d6b8; /* Outline the row */
	outline-offset: -2px;
}

.table-def table tbody tr.popular td:first-child {
	position: relative;
}

.table-def table tbody tr.popular td:first-child::before {
	content: 'BELIEBT';
	position: absolute;
	top: -2px; /* Sits on the border */
	left: 50%; /* Center horizontally */
	transform: translateX(50%); /* Adjust for its own width */
	background: #16d6b8;
	color: #fff;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 700;
	border-radius: 0 0 5px 5px; /* Symmetrical bottom radius */
	z-index: 1;
}

/* --- Mobile --- */
@media (max-width: 840px) {
	/* Ensure table is full-width (removes padding) */
	.table-def {
		padding: 0 0 10px;
	}
	#ttl-page + .table-def {
		padding: 10px 0;
	}

	.table-def table thead tr td {
		font-size: 11px;
		padding: 8px 4px;
	}
	.table-def table tbody tr td {
		font-size: 13px;
		padding: 8px 4px;
	}
	.bonus { font-size: 12px; }
	.price-old { font-size: 11px; }
	.price-new { font-size: 15px; }

	.button-kaufen {
		padding: 10px 10px;
		font-size: 12px;
		width: 100%; /* Make button full-width in its cell */
	}

	/* Popular tag on mobile */
	.table-def table tbody tr.popular {
		outline: 1px solid #16d6b8; /* Thinner for mobile */
		outline-offset: -1px;
	}
	.table-def table tbody tr.popular td:first-child::before {
		top: -1px; /* Sits on the border */
		left: 50%; /* Center horizontally */
		transform: translateX(50%); /* Adjust for its own width */
		padding: 3px 8px;
		font-size: 10px;
		border-radius: 0 0 5px 5px; /* Symmetrical bottom radius */
	}
}
/* END: Modified Table Styles */




.product-features-container {
	max-width: 800px;
	margin: auto;
	background-color: #ffffff;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	padding: 20px 30px;
}


.feature-section {
	margin-bottom: 35px;
	border-bottom: 1px solid #f0f0f0;
	padding-bottom: 25px;
}

.feature-section:last-child {
	margin-bottom: 0;
	border-bottom: none;
	padding-bottom: 10px;
}

.feature-section h3 {
	font-size: 22px;
	font-weight: 700;
	color: #333;
	margin-top: 0;
	margin-bottom: 20px;
}

.feature-section ul {
	list-style-type: disc;
	padding-left: 25px;
	margin: 0;
	color: #444;
}

.feature-section li {
	font-size: 16px;
	margin-bottom: 12px;
}

.feature-section li strong {
	color: #111;
	font-weight: 700;
}





.mobile-testimonials-wrapper {
	display: none;
	font-family: 'Open Sans', sans-serif; /* Используем ваш шрифт */
}

@media (max-width: 840px) {

	.mobile-testimonials-wrapper {
		display: block;
		background-color: #f5f5f5;
		padding: 20px 0;
		border-top: 1px solid #e6e6e6;
	}

	.mobile-testimonials-heading {
		font-size: 20px;
		font-weight: 700;
		line-height: 1.2em;
		letter-spacing: -1px;
		color: #02417f;
		padding: 0 15px 15px 15px;
		margin: 0;
		text-align: left;
	}

	.testimonial-card {
		background-color: #ffffff;
		border: 1px solid #e6e6e6;
		border-radius: 5px;
		margin: 0 15px 15px 15px;
		padding: 15px;
		box-shadow: 0 2px 4px rgba(0,0,0,0.05);
	}

	.testimonial-header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 5px;
	}

	.testimonial-name {
		font-weight: 700;
		color: #02417f;
		font-size: 15px;
	}

	.testimonial-date {
		font-size: 12px;
		color: #666;
	}

	.testimonial-rating {
		margin-bottom: 10px;
	}

	.testimonial-rating .star {
		color: #ffa105;
		font-size: 18px;
	}

	.testimonial-body {
		font-size: 14px;
		line-height: 1.5;
		color: #666;
		margin: 0;
	}

	.testimonial-show-more {
		display: block;
		background: #007bff;
		color: #fff !important;
		font-weight: 700;
		text-align: center;
		padding: 12px 25px;
		border-radius: 5px;
		text-transform: uppercase;
		font-size: 14px;
		text-decoration: none;
		margin: 15px 15px 0 15px;
		transition: background .1s linear;
	}

	.testimonial-show-more:hover {
		background: #0056b3;
	}

}





.dosage-selector-container {
	padding: 15px 20px 15px 20px;
	border-bottom: 1px solid #e6e6e6;
	background: #fff;
}

.dosage-label {
	display: block;
	font-size: 16px;
	font-weight: 600;
	color: #02417f;
	margin-bottom: 12px;
}

.dosage-selector {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.dosage-btn {
	display: inline-block;
	padding: 10px 20px;
	font-size: 15px;
	font-weight: 600;
	color: #02417f;
	background-color: #fff;
	border: 2px solid #e6e6e6;
	border-radius: 5px;
	cursor: pointer;
	text-align: center;
	transition: all 0.2s ease;
	-webkit-appearance: none;
}

.dosage-btn:hover {
	border-color: #2a95ff;
	color: #2a95ff;
}

.dosage-btn.active {
	background-color: #e9f4ff;
	border-color: #2a95ff;
	color: #02417f;
	box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.price-tables-container {

}

.table-def[data-tab-content] {
	display: none;
}

.table-def[data-tab-content].active {
	display: block;
}

@media (max-width: 840px) {
	.dosage-selector-container {
		padding: 15px;
		border-bottom: 1px solid #e6e6e6;
	}

	.dosage-label {
		font-size: 15px;
		text-align: left;
	}

	.dosage-btn {
		padding: 10px 15px;
		font-size: 14px;
		flex-grow: 1;
	}
	#ttl-page + .dosage-selector-container + .price-tables-container .table-def[data-tab-content] {
		padding-top: 0;
	}
}






/* ===== HERO НА ГЛАВНОЙ ===== */

.home-hero {
	display: flex;
	flex-direction: column;
	gap: 15px;
	border-top: none;
}

.home-hero__text {
	max-width: 100%;
}

.home-hero h1 {
	margin: 0 0 8px;
}

.home-hero__lead {
	margin: 0 0 12px;
	font-size: 14px;
	color: #555;
}

.home-hero__usp-list {
	margin: 0 0 15px;
	padding: 0;
	list-style: none;
	font-size: 13px;
}

.home-hero__usp-list li {
	margin-bottom: 4px;
}

.home-hero__search {
	display: flex;
	margin: 0 0 15px;
}

.home-hero__search input[type="search"] {
	flex: 1;
	border: 1px solid #e6e6e6;
	border-right: none;
	border-radius: 4px 0 0 4px;
	padding: 10px;
	font-size: 14px;
	outline: none;
}

.home-hero__search button {
	border: 1px solid #2a95ff;
	border-radius: 0 4px 4px 0;
	background: #2a95ff;
	color: #fff;
	font-size: 14px;
	padding: 0 16px;
	cursor: pointer;
}

.home-hero__note {
	font-size: 12px;
	color: #999;
}

@media (min-width: 841px) {
	.home-hero {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
	}
	.home-hero__text {
		max-width: 65%;
	}
	.home-hero__note {
		max-width: 30%;
		padding-left: 20px;
		border-left: 1px solid #e6e6e6;
	}
}


#grid-prod {
	border-top: 1px solid #e6e6e6;
}

#grid-prod a.product-card {
	float: left;
	width: 33.3333%;
	box-sizing: border-box;
	padding: 20px 15px;
	border-right: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
	text-align: left;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0;
	background: #fff;
}

#grid-prod a.product-card:nth-child(3n) {
	border-right: none;
}

#grid-prod a.product-card:hover,
#grid-prod a.product-card:focus {
	background: #f8f8f8;
}

#grid-prod a.product-card .grid-prod__thumb {
	display: block;
	position: relative;
	width: 100%;
	margin: 0 0 10px;
	padding-bottom: 70%;
	overflow: hidden;
}

#grid-prod a.product-card .grid-prod__thumb img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: auto;
}

#grid-prod a.product-card .product-card__title,
#grid-prod a.product-card .product-card__price-hint,
#grid-prod a.product-card .product-card__link {
	position: static;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
}

#grid-prod a.product-card .product-card__title {
	display: block;
	font-weight: 600;
	color: #02417f;
	margin-bottom: 4px;
}

#grid-prod a.product-card .product-card__price-hint {
	display: block;
	font-size: 12px;
	color: #666;
	margin-bottom: 6px;
}

#grid-prod a.product-card .product-card__link {
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	color: #2a95ff;
}

@media (max-width: 840px) {
	#grid-prod a.product-card {
		width: 50%;
		padding: 15px 8px;
	}
	#grid-prod a.product-card:nth-child(2n) {
		border-right: none;
	}
}

.testimonials-more-link {
	display: block;
	margin: 10px 15px 0 15px;
	font-size: 12px;
	color: #2a95ff;
	text-align: left;
}

.free-shipping-banner {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-top: 12px;
	padding: 10px 12px;
	background: #e9f4ff;
	border: 1px dashed #2a95ff;
	border-radius: 8px;
	font-size: 13px;
	line-height: 1.4;
}

.free-shipping-banner__icon {
	font-size: 20px;
	line-height: 1;
	flex: 0 0 auto;
}

.free-shipping-banner__text {
	flex: 1 1 auto;
}

.free-shipping-banner__text strong {
	display: block;
	color: #02417f;
	margin-bottom: 3px;
}

.cart-free-shipping-text {
	font-size: 12px;
	color: #01a785;
	margin: 5px 0 10px;
}

.cart-free-shipping-text strong {
	font-weight: 700;
}

@media (max-width: 840px) {
	.free-shipping-banner {
		margin-top: 10px;
		padding: 10px;
		font-size: 12px;
	}

	.free-shipping-banner__icon {
		font-size: 18px;
	}

	.cart-free-shipping-text {
		font-size: 11px;
	}
}



/* Black Friday акционная строка в таблице цен */
.table-def table tr.black-friday td {
	background: #fff8e1;
}

.table-def table tr.black-friday td:first-child {
	position: relative;
}

.table-def table tr.black-friday td .bf-label {
	display: inline-block;
	margin-bottom: 4px;
	padding: 2px 8px;
	background: #ffa105;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	border-radius: 4px;
	text-transform: uppercase;
}

.table-def table tr.black-friday td .bf-discount {
	display: block;
	margin-top: 3px;
	font-size: 12px;
	font-weight: 700;
	color: #d5522f;
}

.price-new.bf-price {
	color: #d5522f;
}







/* =======================
   BLACK FRIDAY GLOBAL BAR
   ======================= */

.bf-site-banner {
	background: #111;
	color: #fff;
	font-size: 13px;
	line-height: 1.4;
}
.bf-site-banner .wrap-center {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 6px 0;
}
.bf-site-banner__text strong {
	color: #ffa105;
}
.bf-site-banner__link {
	display: inline-block;
	padding: 6px 14px;
	border-radius: 16px;
	background: #ffa105;
	color: #111 !important;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
}
.bf-site-banner__link:hover {
	background: #ff8c00;
}

/* Навигация Black Friday */
#nav ul li a.nav-bf {
	font-weight: 600;
	position: relative;
}
#nav ul li a.nav-bf::after {
	content: "•";
	color: #ffa105;
	font-size: 14px;
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
}
@media (max-width: 840px) {
	.bf-site-banner .wrap-center {
		padding: 8px 10px;
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
	}
	.bf-site-banner__link {
		align-self: stretch;
		text-align: center;
	}
}

/* =======================
   BLACK FRIDAY HERO
   ======================= */

.text-wrap.bf-hero {
	background: radial-gradient(circle at top left, #2a95ff 0%, #111 55%);
	color: #fff;
	border-top: none;
	border-radius: 10px;
	margin-top: 20px;
	position: relative;
	overflow: hidden;
}
.bf-hero__content {
	position: relative;
	z-index: 1;
}
.bf-hero__label {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 8px;
}
.bf-hero h2 {
	margin: 0 0 10px;
	font-size: 24px;
	color: #fff;
	letter-spacing: -1px;
}
.bf-hero__lead {
	margin: 0 0 12px;
	font-size: 14px;
	color: #f5f5f5;
}
.bf-hero__list {
	margin: 0 0 14px;
	padding: 0;
	list-style: none;
	font-size: 13px;
}
.bf-hero__list li {
	margin-bottom: 4px;
}
.bf-hero__btn {
	margin-top: 4px;
}
.bf-hero__timer-note {
	margin-top: 10px;
	font-size: 12px;
	color: #f0f0f0;
}
.bf-hero__timer-note strong {
	color: #ffa105;
}

/* Плашка -40% */
.bf-hero__badge {
	position: absolute;
	right: 20px;
	bottom: 20px;
	width: 90px;
	height: 90px;
	border-radius: 50%;
	background: #ffa105;
	color: #111;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 25px rgba(0, 0, 0, 0.4);
	text-align: center;
}
.bf-hero__badge-main {
	font-size: 26px;
	font-weight: 700;
	line-height: 1;
}
.bf-hero__badge-sub {
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	margin-top: 2px;
}

/* На десктопе – две колонки */
@media (min-width: 841px) {
	.text-wrap.bf-hero {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 30px;
	}
	.bf-hero__content {
		max-width: 65%;
	}
}
@media (max-width: 840px) {
	.text-wrap.bf-hero {
		margin-top: 15px;
		border-radius: 0;
	}
	.bf-hero__badge {
		position: static;
		margin-top: 14px;
		align-self: flex-start;
	}
}

/* =======================
   INFO STRIP (3 колонки)
   ======================= */

.bf-info-strip {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	border-top: none;
	border-bottom: 1px solid #e6e6e6;
}
.bf-info-strip__item {
	flex: 1 1 30%;
	font-size: 13px;
	color: #555;
}
.bf-info-strip__item strong {
	color: #02417f;
}
@media (max-width: 840px) {
	.bf-info-strip {
		flex-direction: column;
		gap: 10px;
	}
	.bf-info-strip__item {
		font-size: 13px;
	}
}

/* =======================
   TOP ANGEBOTE GRID
   ======================= */

.bf-offers h2 {
	margin: 0 0 15px;
}
.bf-offers__grid {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.bf-offer {
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 8px;
	padding: 15px;
	flex: 1 1 calc(50% - 10px);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
}
.bf-offer__badge {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	background: #d5522f;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 8px;
}
.bf-offer__title {
	font-size: 18px;
	font-weight: 700;
	color: #02417f;
	margin: 0 0 4px;
}
.bf-offer__subtitle {
	font-size: 13px;
	color: #777;
	margin: 0 0 8px;
}
.bf-offer__list {
	margin: 0 0 10px;
	padding-left: 18px;
	color: #444;
	font-size: 13px;
}
.bf-offer__list li {
	margin-bottom: 4px;
}
.bf-offer__prices {
	margin: 6px 0 10px;
}
.bf-offer__btn {
	width: 100%;
	text-align: center;
}

@media (max-width: 840px) {
	.bf-offers__grid {
		flex-direction: column;
	}
	.bf-offer {
		flex: 1 1 100%;
	}
}

/* =======================
   HOW-TO / NOTE
   ======================= */

.bf-how h2,
.bf-note h2 {
	margin: 0 0 10px;
}
.bf-how__steps {
	margin: 8px 0 0 18px;
	padding: 0;
	font-size: 14px;
	color: #444;
}
.bf-how__steps li {
	margin-bottom: 8px;
}
.bf-how__steps li strong {
	color: #02417f;
}
.bf-note p {
	font-size: 13px;
	color: #555;
	line-height: 1.6;
}



















/* =======================
   CHRISTMAS / WEIHNACHTS-SALE
   ======================= */

.xmas-bar{
	margin: 15px 20px 0;
	padding: 10px 12px;
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	background: linear-gradient(90deg, #0f5132 0%, #0f5132 45%, #111 100%);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}
.xmas-bar__text{ font-size: 13px; line-height: 1.4; }
.xmas-bar__text strong{ color: #ffa105; }
.xmas-bar__muted{ display: inline-block; margin-left: 8px; opacity: .9; }
.xmas-bar__cta{
	display: inline-block;
	padding: 6px 14px;
	border-radius: 16px;
	background: #ffa105;
	color: #111 !important;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	white-space: nowrap;
}
.xmas-bar__cta:hover{ background: #ff8c00; }

@media (max-width: 840px){
	.xmas-bar{
		margin: 0;
		border-left: none;
		border-right: none;
		border-radius: 0;
		flex-direction: column;
		align-items: flex-start;
	}
	.xmas-bar__cta{
		align-self: stretch;
		text-align: center;
	}
}

/* HERO */
.text-wrap.xmas-hero{
	background: radial-gradient(circle at top left, #2a95ff 0%, #0f5132 42%, #111 100%);
	color: #fff;
	border-top: none;
	border-radius: 10px;
	margin: 15px 20px 0;
	position: relative;
	overflow: hidden;
}
.text-wrap.xmas-hero::before{
	content: "";
	position: absolute;
	inset: -40px;
	background-image: radial-gradient(rgba(255,255,255,.9) 1px, transparent 1.6px);
	background-size: 18px 18px;
	opacity: .22;
	transform: rotate(10deg);
	pointer-events: none;
}
.xmas-hero__content{ position: relative; z-index: 1; }
.xmas-hero__label{
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(255,255,255,.12);
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 8px;
}
.text-wrap.xmas-hero h2{
	margin: 0 0 10px;
	font-size: 24px;
	color: #fff;
	letter-spacing: -1px;
}
.xmas-hero__lead{ margin: 0 0 12px; font-size: 14px; color: #f5f5f5; }
.xmas-hero__list{ margin: 0 0 14px; padding: 0; list-style: none; font-size: 13px; }
.xmas-hero__list li{ margin-bottom: 4px; }
.xmas-hero__actions{ display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.xmas-hero__btn{ margin-top: 2px; }
.xmas-hero__link{ color: #fff !important; text-decoration: underline; font-weight: 600; }
.xmas-hero__timer-note{ margin-top: 10px; font-size: 12px; color: #f0f0f0; }
.xmas-hero__timer-note strong{ color: #ffa105; }
.xmas-hero__timer-sub{ opacity: .85; margin-left: 6px; }

/* Badge */
.xmas-hero__badge{
	position: absolute;
	right: 20px;
	bottom: 20px;
	width: 90px;
	height: 90px;
	border-radius: 50%;
	background: #ffa105;
	color: #111;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 25px rgba(0,0,0,.4);
	text-align: center;
	z-index: 1;
}
.xmas-hero__badge-main{ font-size: 26px; font-weight: 700; line-height: 1; }
.xmas-hero__badge-sub{ font-size: 11px; font-weight: 700; text-transform: uppercase; margin-top: 2px; }

@media (min-width: 841px){
	.text-wrap.xmas-hero{
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 30px;
	}
	.xmas-hero__content{ max-width: 68%; }
}
@media (max-width: 840px){
	.text-wrap.xmas-hero{
		margin: 12px 0 0;
		border-radius: 0;
	}
	.xmas-hero__badge{
		position: static;
		margin-top: 14px;
	}
}

/* INFO STRIP */
.text-wrap.xmas-info-strip{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	border-top: none;
	border-bottom: 1px solid #e6e6e6;
	margin: 0 20px;
}
.xmas-info-strip__item{
	flex: 1 1 30%;
	font-size: 13px;
	color: #555;
}
.xmas-info-strip__item strong{ color: #02417f; }

@media (max-width: 840px){
	.text-wrap.xmas-info-strip{
		margin: 0;
		flex-direction: column;
		gap: 10px;
	}
}

/* OFFERS GRID */
.text-wrap.xmas-offers{ margin: 0 20px; }
.text-wrap.xmas-offers h2{ margin: 0 0 15px; }

.xmas-offers__grid{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.xmas-offer{
	display: block;
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 8px;
	padding: 15px;
	flex: 1 1 calc(50% - 10px);
	box-shadow: 0 2px 6px rgba(0,0,0,.03);
	color: inherit;
}
.xmas-offer:hover{ background: #f8f8f8; }
.xmas-offer__badge{
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	background: #0f5132;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 8px;
}
.xmas-offer__badge--gold{ background: #ffa105; color: #111; }
.xmas-offer__badge--red{ background: #d5522f; }

.xmas-offer__title{
	font-size: 18px;
	font-weight: 700;
	color: #02417f;
	margin: 0 0 4px;
}
.xmas-offer__subtitle{ font-size: 13px; color: #777; margin: 0 0 8px; }
.xmas-offer__list{ margin: 0 0 10px; padding-left: 18px; color: #444; font-size: 13px; }
.xmas-offer__list li{ margin-bottom: 4px; }
.xmas-offer__cta{ font-size: 12px; font-weight: 700; color: #2a95ff; }

@media (max-width: 840px){
	.text-wrap.xmas-offers{ margin: 0; }
	.xmas-offers__grid{ flex-direction: column; }
	.xmas-offer{ flex: 1 1 100%; }
}

/* COUPON */
.text-wrap.xmas-code{ margin: 0 20px; }
.xmas-code__lead{ margin-top: 0; color: #555; }
.xmas-code__box{
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: space-between;
	padding: 12px;
	border: 1px dashed #2a95ff;
	border-radius: 10px;
	background: #e9f4ff;
}
.xmas-code__coupon{
	font-size: 18px;
	font-weight: 700;
	color: #02417f;
	letter-spacing: 2px;
	padding: 8px 10px;
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 8px;
}
.xmas-code__copy{
	background: #2a95ff;
	color: #fff;
	border: 1px solid #2a95ff;
	border-radius: 8px;
	font-weight: 700;
	padding: 12px 14px;
	cursor: pointer;
	text-transform: uppercase;
	font-size: 12px;
}
.xmas-code__copy:hover{ opacity: .9; }
.xmas-code__copy.is-copied{ background: #16d6b8; border-color: #16d6b8; }
.xmas-code__note{ font-size: 12px; color: #777; margin-top: 10px; }

@media (max-width: 840px){
	.text-wrap.xmas-code{ margin: 0; }
	.xmas-code__box{ flex-direction: column; align-items: stretch; }
	.xmas-code__copy{ width: 100%; }
}

/* HOW + FAQ */
.text-wrap.xmas-how,
.text-wrap.xmas-faq{ margin: 0 20px; }

.xmas-how__steps{ margin: 8px 0 0 18px; padding: 0; font-size: 14px; color: #444; }
.xmas-how__steps li{ margin-bottom: 8px; }
.xmas-how__steps li strong{ color: #02417f; }

.xmas-faq__item{
	border: 1px solid #e6e6e6;
	border-radius: 10px;
	background: #fff;
	margin: 10px 0;
	overflow: hidden;
}
.xmas-faq__q{
	display: block;
	padding: 14px 46px 14px 16px;
	font-size: 16px;
	font-weight: 700;
	color: #02417f;
	cursor: pointer;
	position: relative;
	-webkit-tap-highlight-color: transparent;
}
.xmas-faq__q::-webkit-details-marker{ display: none; }
.xmas-faq__q::marker{ content: ""; }

.xmas-faq__q::after{
	content: "+";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	font-weight: 700;
	font-size: 18px;
	color: #2a95ff;
	line-height: 1;
}
.xmas-faq__item[open] .xmas-faq__q{ background: #e9f4ff; border-bottom: 1px dotted #e6e6e6; }
.xmas-faq__item[open] .xmas-faq__q::after{ content: "–"; }

.xmas-faq__a{ padding: 12px 16px 16px; color: #555; }

@media (max-width: 840px){
	.text-wrap.xmas-how,
	.text-wrap.xmas-faq{ margin: 0; }
}



/* =======================
   XMAS GLOBAL TOP BANNER
   ======================= */

.xmas-site-banner{
	background: #0f5132;
	color: #fff;
	font-size: 13px;
	line-height: 1.4;
}
.xmas-site-banner__inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 6px 0;
	gap: 10px;
}
.xmas-site-banner__text strong{
	color: #ffa105;
}
.xmas-site-banner__link{
	display: inline-block;
	padding: 6px 14px;
	border-radius: 16px;
	background: #ffa105;
	color: #111 !important;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	white-space: nowrap;
}
.xmas-site-banner__link:hover{
	background: #ff8c00;
}

/* Mobile */
@media (max-width: 840px){
	.xmas-site-banner__inner{
		padding: 8px 10px;
		flex-direction: column;
		align-items: flex-start;
	}
	.xmas-site-banner__link{
		align-self: stretch;
		text-align: center;
	}
}



/* Christmas акционная строка в таблице цен */
.table-def table tr.xmas-sale td {
	background: #f1fff7; /* лёгкий “зимний” фон */
}

.table-def table tr.xmas-sale td:first-child {
	position: relative;
}

.table-def table tr.xmas-sale td .xmas-label {
	display: inline-block;
	margin-bottom: 4px;
	padding: 2px 8px;
	background: #0f5132; /* рождественский зелёный */
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	border-radius: 4px;
	text-transform: uppercase;
	letter-spacing: .3px;
}

.price-new.xmas-price {
	color: #0f5132; /* можно сделать зелёной “новую цену” */
}