/*!
Theme Name: Sino
Theme URI: http://underscores.me/
Author: Mher Harutyunyan
Author URI: https://www.upwork.com/freelancers/~01c021960b56b305dd
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: sino
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Sino is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

:root{
	--bg:#f3f6fa;
	--surface:#ffffff;
	--surface-2:#fafafa;
	--surface-3:#f1f2f4;
	--line:#e6edf5;
	--text:#1c1f25;
	--text-2:#4b5162;
	--teal:#17a79e;
	--shadow:0 0 1px rgba(44,58,114,.05),0 2px 6px rgba(44,58,114,.05),0 10px 18px rgba(58,76,146,.10);
	--container:1400px;
}

*,
*::before,
*::after{
	box-sizing:border-box;
}

html{
	scroll-behavior:smooth;
}

html,
body{
	overflow-x:hidden;
}

body{
	margin:0;
	color:var(--text);
	background:#eef2f5;
	font-family:Inter, Arial, sans-serif;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	text-rendering:optimizeLegibility;
}

a{
	text-decoration:none;
	color:inherit;
	transition:color .2s ease, background .2s ease, border-color .2s ease, opacity .2s ease;
}

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

button,
input,
textarea,
select{
	font:inherit;
}

button{
	cursor:pointer;
}

.container{
	width:min(var(--container), calc(100% - 40px));
	margin:0 auto;
}

small{
	display:block;
	font-size:13px;
	line-height:1.3 !important;
	margin:0;
	padding:0;
}

p,
li,
td,
th,
input,
textarea,
small{
	overflow-wrap:anywhere;
}

ul {
	padding-inline-start: 10px;
	margin-block-start: 10px;
	text-align: left;
	width: fit-content;
	margin: 10px auto 16px;
}

li{
	color:#4B5162;
}

li::marker{
	color:#17a79e;
}

.hero li,
.hero li::marker{
	color:#CBE7E9;
}

/* TABLES */
table{
	width:100%;
	border-collapse:separate;
	border-spacing:0;
	border-radius:20px;
	overflow:hidden;
	background:#fff;
	box-shadow:0 2px 10px rgba(0,0,0,.05);
	margin-top: 12px;
  margin-bottom: 12px;
}

th,
td{
	padding:16px 32px;
	text-align:left;
	vertical-align:top;
}

thead tr{
	background:rgba(23,167,158,.2);
}

th{
	font-weight:600;
	color:#1c1f25;
}

td{
	font-weight:400;
	color:#4B5162;
}

tbody tr{
	border-bottom:1px solid #eef2f6;
	transition:background .2s ease;
}

tbody tr:last-child{
	border-bottom:none;
}

tbody tr:nth-child(even){
	background:#fafcfc;
}

tbody tr:hover{
	background:rgba(23,167,158,.05);
}

.table-wrapper{
	width:100%;
	overflow-x:auto;
	-webkit-overflow-scrolling:touch;
	border-radius:20px;
}

/* BACKGROUND */
.page-bg{
	position:fixed;
	inset:0;
	z-index:-1;
}

.page-bg-video{
	position:absolute;
	inset:0;
	z-index:-1;
	overflow:hidden;
	top:-123px;
}

.page-bg-video video{
	position:absolute;
	min-width:100%;
	min-height:100%;
	width:auto;
	height:auto;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	object-fit:cover;
}

.page-bg-overlay{
	position:absolute;
	inset:0;
	background:rgba(255,255,255,.78);
	z-index:1;
}

.mk-mess.error{
	color:red;
	padding: 10px 20px;
}

.mk-mess.success{
	color:green;
}

/* HEADER */
.site-header{
	padding:23px 0 0;
}

.nav-shell{
	position:relative;
	min-height:99px;
	background:#fff;
	border:1px solid var(--line);
	border-radius:100px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px;
	padding:13px 24px 13px 13px;
	box-shadow:5px 5px 25px rgba(0,0,0,.15);
}

.logo{
	width:72px;
	height:73px;
	flex:0 0 auto;
}

.logo img{
	width:72px;
	height:73px;
	object-fit:contain;
}

.header-contacts-top{
	display:none;
}

.mobile{
	flex:1 1 auto;
	min-width:0;
	display:grid;
	grid-template-columns:minmax(0,1fr) auto auto;
	align-items:center;
	column-gap:18px;
}

.nav{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	align-content:center;
	gap:10px 22px;
	min-width:0;
	max-width:100%;
}

.nav a{
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:16px;
	line-height:24px;
	color:#0d1b2a;
	white-space:nowrap;
}

.header-contacts{
	display:grid;
	grid-template-columns:1fr;
	gap:2px;
	align-content:center;
	justify-items:start;
	min-width:160px;
}

.header-contacts a{
	font-size:14px;
	line-height:1.2;
	color:#374151;
	white-space:nowrap;
}

.nav-actions{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:12px;
	flex-wrap:wrap;
}

.menu-btn{
	display:none;
	position:absolute;
	top:50%;
	right:24px;
	transform:translateY(-50%);
	width:30px;
	height:24px;
	border:none;
	background:transparent;
	padding:0;
	z-index:60;
}

.menu-btn span{
	position:absolute;
	left:0;
	height:3px;
	background:#000;
	border-radius:2px;
	transition:all .3s ease;
}

.menu-btn span:nth-child(1){
	top:0;
	width:100%;
}

.menu-btn span:nth-child(2){
	top:10px;
	width:70%;
}

.menu-btn span:nth-child(3){
	top:20px;
	width:40%;
}

.menu-btn.opened span:nth-child(1){
	top:10px;
	width:100%;
	transform:rotate(45deg);
}

.menu-btn.opened span:nth-child(2){
	opacity:0;
	transform:translateX(-10px);
}

.menu-btn.opened span:nth-child(3){
	top:10px;
	width:100%;
	transform:rotate(-45deg);
}

/* BUTTONS */
.btn{
	height:44px;
	border-radius:25px;
	padding:0 18px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:14px;
	font-weight:500;
	border:1px solid transparent;
	text-align:center;
	white-space:nowrap;
	transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}

.btn:hover{
	transform:translateY(-1px);
}

.nav-actions .btn{
	height:44px;
	padding:0 18px;
	border-radius:28px;
	font-size:14px;
	font-weight:500;
}

.btn-outline{
	background:#fff;
	color:var(--teal);
	border:1px solid var(--teal);
}

.btn-outline:hover{
	background:rgba(23,167,158,.08);
	color:var(--teal);
	border-color:var(--teal);
}

.btn-accent{
	background:var(--teal);
	color:#fff;
	border:1px solid var(--teal);
}

.btn-accent:hover{
	background:#14938b;
	color:#fff;
	border-color:#14938b;
}

.btn-white-outline{
	height:49px;
	padding:0 24px;
	border-radius:30px;
	border:1px solid #fff;
	color:#fff;
	background:transparent;
}

.btn-white-outline:hover{
	background:rgb(255 255 255 / 10%);
	color:#fff;
}

.btn-submit{
	width:100%;
	height:51px;
	border-radius:50px;
	font-size:16px;
}

/* PAGE / HERO */
.page{
	padding-bottom:58px;
}

.hero{
	padding:77px 20px 20px;
	width:100%;
}

.hero-top{
	max-width:828px;
	margin:0 auto;
	text-align:center;
}

.hero-badge{
	display:inline-flex;
	align-items:center;
	gap:8px;
	padding:8px 12px;
	border-radius:20px;
	background:#fff;
	border:1px solid var(--line);
	box-shadow:var(--shadow);
}

.hero-badge img{
	width:20px;
	height:20px;
}

.hero-badge span{
	font-size:16px;
	line-height:1.6;
	font-weight:500;
}

.hero h1{
	margin:20px 0;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:47px;
	line-height:70px;
	font-weight:590;
	letter-spacing:-0.03em;
}

.hero-desc{
	margin:0 auto;
	max-width:668px;
	color:var(--text-2);
	font-size:16px;
	line-height:1.6;
	text-align:center;
	opacity:.8;
}

.hero-pills-wrapper{
	width:100%;
	overflow:visible;
}

.hero-pills{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	gap:10px;
	margin:30px 0;
	padding:0;
}

/* Сбрасываем лишние обёртки вокруг якорей */
.hero-pills > *{
	background:transparent !important;
	padding:0 !important;
	margin:0 !important;
	border:none !important;
	box-shadow:none !important;
	outline:none !important;
	min-height:0 !important;
	height:auto !important;
	border-radius:0 !important;
	flex:0 0 auto;
}

.hero-pills > a,
.hero-pills > span,
.hero-pills > * > a,
.hero-pills > * > span{
	height:45px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:0 20px;
	border-radius:35px;
	background:rgba(75,81,98,.1);
	color:var(--text-2);
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:16px;
	line-height:1;
	white-space:nowrap;
}

.hero-pills > a:hover,
.hero-pills > span:hover,
.hero-pills > * > a:hover,
.hero-pills > * > span:hover{
	background:#17a79e;
	color:#fff;
}

.hero-cards{
	margin-top:88px;
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px;
	width:min(var(--container), calc(100% - 20px));
	margin-left:auto;
	margin-right:auto;
}

/* CARDS / PANELS */
.teal-card{
	min-height:323px;
	padding:42px 35px;
	border-radius:20px;
	position:relative;
	overflow:hidden;
	background:var(--teal);
	color:#f3f6fa;
}

.teal-card-qr{
	position:absolute;
	right:27px;
	top:-28px;
	width:183px;
	height:183px;
	opacity:.95;
}

.teal-card h3{
	margin:0 0 32px;
	max-width:520px;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-weight:510;
	font-size:24px;
	line-height:1.58;
	letter-spacing:-0.03em;
}

.teal-card p,
.teal-card li{
	font-size:16px;
	line-height:1.6;
	opacity:.82;
}

.teal-card p{
	margin:0 0 12px;
}

.teal-card ul{
	margin:0;
	padding-left:24px;
}

.panel-frame{
	margin:19px auto 0;
	width:min(1400px, calc(100% - 40px));
	background:var(--surface-2);
	border:1px solid var(--line);
	border-radius:40px;
	padding:106px 76px;
}

.panel-frame-large{
	margin-top:19px;
}

.teal-panel{
	border-radius:20px;
	position:relative;
	overflow:hidden;
	background:var(--teal);
	color:#fff;
}

.teal-panel-main{
	min-height:640px;
	padding:60px;
	display:grid;
	grid-template-columns:656px 388px;
	gap:40px;
	justify-content:space-between;
}

.teal-panel-format{
	min-height:531px;
	padding:60px;
	display:grid;
	grid-template-columns:424px 528px;
	gap:40px;
	justify-content:space-between;
}

.teal-panel-bg{
	position:absolute;
	inset:auto 0 0 0;
	height:100%;
	opacity:.5;
}

.teal-panel-left,
.teal-panel-right{
	position:relative;
	z-index:1;
}

.teal-panel h2{
	margin:0 0 32px;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:46px;
	line-height:68px;
	font-weight:590;
	letter-spacing:-0.03em;
}

.teal-panel p{
	margin:0 0 40px;
	font-size:16px;
	line-height:1.6;
	opacity:.82;
}

.teal-panel-right{
	display:grid;
	gap:20px;
	align-content:start;
}

.feature-item{
	min-height:88px;
	border:1px solid rgba(255,255,255,.2);
	border-radius:16px;
	background:linear-gradient(103deg, rgba(255,255,255,.075) 6%, rgba(255,255,255,.175) 90.8%);
	backdrop-filter:blur(10px);
	display:grid;
	grid-template-columns:44px 1fr;
	gap:12px;
	align-items:center;
	padding:10px 20px 10px 10px;
}

.feature-item.tall{
	min-height:103px;
}

.icon{
	width:44px;
	height:44px;
	border-radius:12px;
	background:rgba(255,255,255,.1);
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:18px;
}

.feature-item div{
	font-size:16px;
	line-height:1.6;
	color:rgba(255,255,255,.88);
}

/* SECTIONS */
.section{
	padding-top:128px;
}

.section-head{
	max-width:800px;
	margin:0 auto 60px;
	text-align:center;
}

.section-head h2{
	margin:0 0 16px;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:40px;
	line-height:1.16;
	font-weight:700;
}

.section-head p{
	margin:0;
	font-size:16px;
	line-height:1.6;
	color:var(--text-2);
	opacity:.8;
}

/* HOW IT WORKS / STEPS */
.steps-grid{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:stretch;
	gap:24px;
}

.white-card{
	background:#fff;
	border:1px solid var(--line);
	border-radius:20px;
	box-shadow:var(--shadow);
}

.white-card-step{
	min-height:310px;
	padding:38px 40px;
	text-align:center;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:flex-start;
	width:320px !important;
	min-width:320px !important;
}

.step-num{
	width:42px;
	height:42px;
	margin:0 auto 20px;
	border:2px solid var(--teal);
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--teal);
	font-weight:700;
	font-size:inherit;
}

.white-card-step h3{
	margin:0 0 20px;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:24px;
	line-height:1.58;
	font-weight:510;
	letter-spacing:-0.03em;
}

.white-card-step p,
.white-card-step small{
	display:block;
	color:var(--text-2);
	font-size:16px;
	line-height:1.6;
	margin:0;
}

.white-card-step small{
	font-size:12px;
	margin-top:12px;
}

.safety-grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:24px;
}

.result-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));
	gap:15px;
}

.result-card{
	min-height:182px;
	padding:38px 40px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	box-sizing:border-box;
}

.result .result-card{
	flex-direction:column;
	width:unset;
}

.swiper-slide.result-card img, .result .result-card img{
	width:70px;
	height:70px;
	margin:0 auto 10px;
}

.safety-marquee{
	overflow:hidden;
	width:100%;
	position:relative;
	padding:25px 0;
}

.safety-marquee .swiper-wrapper{
	max-width:2550px;
}

.safety-marquee .swiper-slide {
	width: 380px;
	height: auto;
	flex: 0 0 auto;
	flex-direction: column;
}
.safety-marquee .swiper-wrapper {
	transition-timing-function: linear !important;
}

.safety-marquee__item{
	flex:0 0 auto;
	flex-direction:column;
}

.result-card p,
.safety-card{
	margin:0;
	color:var(--text-2);
	font-size:16px;
	line-height:1.6;
}

.safety-card{
	min-height:205px;
	padding:38px 40px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
}

@keyframes safety-marquee{
	from{
		transform:translateX(0);
	}
	to{
		transform:translateX(-50%);
	}
}

/* FAQ */
.faq-section{
	padding-top:128px;
}

.faq-shell{
	background:var(--surface-2);
	border:1px solid var(--line);
	border-radius:40px;
	padding:117px 97px 117px;
}

.faq-shell h2{
	margin:0 0 94px;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:40px;
	line-height:1.16;
	font-weight:700;
}

.faq-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px;
	align-items:start;
}

.faq-item{
	background:var(--surface-3);
	border:1px solid var(--line);
	border-radius:20px;
	padding:6px 40px;
}

.faq-item summary{
	list-style:none;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	cursor:pointer;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:20px;
	line-height:1.58;
	font-weight:510;
	letter-spacing:-0.03em;
	min-height:150px;
}

.faq-item summary::-webkit-details-marker{
	display:none;
}

.faq-item summary span{
	width:42px;
	height:42px;
	border-radius:10px;
	background:var(--teal);
	color:#fff;
	display:flex;
	align-items:center;
	justify-content:center;
	flex:none;
	font-size:20px;
	position:relative;
}

.faq-item summary span::after{
	content:"";
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
	width:42px;
	height:42px;
	background-image:url('/wp-content/themes/sino/img/plus.svg');
	background-size:contain;
	background-repeat:no-repeat;
}

.faq-item[open] summary span::after{
	background-image:url('/wp-content/themes/sino/img/minus.svg');
}

.faq-item p{
	margin:14px 0 0;
	color:var(--text-2);
	font-size:16px;
	line-height:1.58;
}

.faq-item.open{
	min-height:232px;
}

/* CONTACT */
.contact-section{
	padding-top:0;
}

.contact-grid{
	padding-top:108px;
	display:grid;
	grid-template-columns:467px 589px;
	gap:144px;
	align-items:start;
	justify-content:center;
}

.contact-copy h2{
	margin:0 0 16px;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:40px;
	line-height:1.16;
	font-weight:700;
}

.contact-copy p{
	margin:0;
	color:var(--text-2);
	font-size:16px;
	line-height:1.6;
	opacity:.8;
}

.contact-form{
	background:#fff;
	border:1px solid var(--line);
	border-radius:20px;
	box-shadow:var(--shadow);
	padding:40px 40px 60px;
}

.two-cols{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px;
}

.contact-form label,
.field{
	display:block;
	margin-bottom:24px;
}

.contact-form span,
.field > span{
	display:block;
	margin-bottom:0;
	font-family:"SF Pro Display", Arial, sans-serif;
	font-size:16px;
	line-height:24px;
	color:#0d1b2a;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea{
	width:100%;
	background:var(--surface-3);
	border:.5px solid var(--line);
	border-radius:8px;
	padding:12px 16px;
	color:var(--text);
	font-size:16px;
	line-height:24px;
	outline:none;
	transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus{
	border-color:rgba(23,167,158,.55);
	box-shadow:0 0 0 3px rgba(23,167,158,.12);
	background:#fff;
}

textarea{
	height:84px;
	resize:vertical;
}

.radios{
	display:flex;
	gap:30px;
	flex-wrap:wrap;
	padding:12px 0;
}

.radios label{
	display:inline-flex;
	align-items:center;
	gap:10px;
	margin:0;
	font-size:16px;
	color:#5b6b7a;
}

.policy{
	margin:12px 0 0;
	text-align:center;
	color:var(--text-2);
	font-size:12px;
	line-height:24px;
}

/* FOOTER */
.site-footer{
	width:min(1400px, calc(100% - 40px));
	margin:58px auto;
	background:var(--surface-2);
	border-top:1px solid var(--line);
	border-radius:20px;
	padding:45px 80px 32px 100px;
}

.footer-shell{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:24px;
}

.footer-logo img{
	width:51px;
	height:51px;
}

.footer-links,
.footer-meta{
	display:flex;
	align-items:center;
	gap:32px;
	color:#5b6b7a;
}

.footer-meta{
	gap:24px;
}

.socials{
	display:inline-flex;
	gap:16px;
	align-items:center;
}

.socials img{
	width:32px;
	height:32px;
}

.footer-bottom{
	margin-top:32px;
	padding-top:32px;
	border-top:1px solid #e6e6e6;
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:24px;
	color:#5b6b7a;
	font-size:14px;
	line-height:16px;
}

/* STATES */
a.current-menu-item,
a:hover{
	color:#17a79e;
}

/* RESPONSIVE */
@media (max-width: 1366px){
	.nav{
		gap:8px 18px;
	}

	.nav a{
		font-size:15px;
	}

	.header-contacts{
		min-width:150px;
	}

	.header-contacts a{
		font-size:13px;
	}

	.nav-actions .btn{
		height:42px;
		padding:0 16px;
		font-size:13px;
	}

	.panel-frame{
		padding:88px 48px;
	}

	.contact-grid{
		gap:72px;
		grid-template-columns:minmax(320px,420px) minmax(420px,1fr);
	}

	.site-footer{
		padding:40px 48px 32px;
	}
}

@media (max-width: 1240px){
	.mobile{
		grid-template-columns:minmax(0,1fr) 145px auto;
		column-gap:12px;
	}

	.nav{
		gap:8px 16px;
	}

	.nav a{
		font-size:14px;
		line-height:1.25;
	}

	.header-contacts{
		min-width:145px;
	}

	.header-contacts a{
		font-size:12px;
		line-height:1.15;
	}

	.nav-actions .btn{
		height:40px;
		padding:0 14px;
		font-size:13px;
	}
}

@media (max-width: 1200px){
	.panel-frame{
		padding:72px 40px;
	}

	.teal-panel-main,
	.teal-panel-format,
	.contact-grid{
		grid-template-columns:1fr;
		gap:40px;
	}

	.teal-panel-main,
	.teal-panel-format{
		min-height:auto;
	}

	.result-grid,
	.safety-grid,
	.faq-grid,
	.hero-cards{
		grid-template-columns:1fr 1fr;
	}

	.contact-grid{
		padding-top:80px;
	}
	.contact-section .contact-copy {
		text-align: center;
	}
	.faq-shell{
		padding:88px 56px;
	}
}

@media (max-width: 1024px){
	.container{
		width:calc(100% - 28px);
	}

	.site-header{
		padding-top:16px;
	}

	.nav-shell{
		min-height:84px;
		border-radius:50px;
		padding:12px 64px 12px 16px;
		align-items:center;
	}

	.logo,
	.logo img{
		width:58px;
		height:58px;
	}

	.header-contacts-top{
		display:flex;
		flex-direction:column;
		align-items:flex-end;
		gap:2px;
		margin-left:auto;
		margin-right:10px;
		max-width:calc(100% - 140px);
	}

	.header-contacts-top a{
		font-size:12px;
		line-height:1.15;
		color:#374151;
		text-align:right;
		white-space:normal;
		word-break:break-word;
	}

	.menu-btn{
		display:block;
	}

	.mobile{
		display:none;
		position:absolute;
		top:calc(100% + 12px);
		left:0;
		right:0;
		width:100%;
		background:#fff;
		border:1px solid var(--line);
		border-radius:24px;
		box-shadow:5px 5px 25px rgba(0,0,0,.12);
		padding:18px;
		flex-direction:column;
		align-items:stretch;
		gap:16px;
		z-index:50;
	}

	.nav-shell.opened{
		align-items:flex-start;
	}

	.nav-shell.opened .mobile{
		display:flex;
	}

	.nav{
		flex-direction:column;
		align-items:flex-start;
		align-content:flex-start;
		gap:14px;
	}

	.nav a{
		font-size:16px;
		line-height:1.4;
		white-space:normal;
	}

	.mobile .header-contacts{
		display:none;
	}

	.nav-actions{
		order:3;
		flex-direction:column;
		align-items:stretch;
		gap:12px;
		width:100%;
	}

	.nav-actions .btn{
		width:100%;
		min-width:0;
		height:46px;
		font-size:15px;
	}

	/* Видео без боковых полей */
	.page-bg-video{
		position:fixed;
		inset:0;
		top:0;
		width:100vw;
		height:100vh;
		overflow:hidden;
	}

	.page-bg-video video{
		min-width:100vw;
		min-height:100vh;
		width:auto;
		height:auto;
		top:50%;
		left:50%;
		transform:translate(-50%, -50%);
		object-fit:cover;
	}

	.page-bg-overlay{
		position:fixed;
		inset:0;
	}

	.hero{
		padding:48px 0 16px;
	}

	.hero-top{
		max-width:100%;
		padding:0 20px;
	}

	.hero h1{
		margin:18px 0 14px;
		font-size:40px;
		line-height:1.15;
	}

	.hero-desc{
		max-width:100%;
		font-size:15px;
		line-height:1.55;
	}

	/* Якоря со скроллом */
	.hero-pills-wrapper{
		width:100%;
		overflow-x:auto;
		-webkit-overflow-scrolling:touch;
	}

	.hero-pills{
		display:inline-flex;
		flex-wrap:nowrap;
		justify-content:flex-start;
		gap:10px;
		margin:24px 0 0;
		padding:10px 0;
		min-width:max-content;
	}

	.hero-pills > *{
		flex:0 0 auto;
	}

	.hero-pills > a,
	.hero-pills > span,
	.hero-pills > * > a,
	.hero-pills > * > span{
		height:42px;
		padding:0 16px;
		font-size:14px;
	}

	.hero-cards{
		margin-top:40px;
		gap:16px;
		grid-template-columns:1fr;
		width:min(var(--container), calc(100% - 28px));
	}

		.teal-card{
		min-height:auto;
		padding:28px 24px;
	}

	.teal-card h3{
		margin-bottom:20px;
		font-size:22px;
		line-height:1.35;
		max-width:calc(100% - 110px);
	}

	.teal-card p,
	.teal-card li{
		font-size:15px;
		line-height:1.55;
	}

	.teal-card-qr{
		width:120px;
		height:120px;
		right:16px;
		top:-10px;
		opacity:.9;
	}

	.panel-frame{
		width:calc(100% - 28px);
		padding:56px 24px;
		border-radius:28px;
	}

	.teal-panel-main,
	.teal-panel-format{
		padding:32px 24px;
		gap:24px;
	}

	.teal-panel h2{
		margin-bottom:20px;
		font-size:36px;
		line-height:1.15;
	}

	.teal-panel p{
		margin-bottom:24px;
		font-size:15px;
		line-height:1.55;
	}

	.feature-item{
		grid-template-columns:40px 1fr;
		padding:12px 16px 12px 12px;
		min-height:auto;
	}

	.feature-item div{
		font-size:15px;
		line-height:1.5;
	}

	.icon{
		width:40px;
		height:40px;
	}

	.section,
	.faq-section{
		padding-top:88px;
	}

	.section-head{
		margin-bottom:36px;
	}

	.section-head h2,
	.faq-shell h2,
	.contact-copy h2{
		font-size:32px;
		line-height:1.15;
	}

	.section-head p,
	.contact-copy p{
		font-size:15px;
		line-height:1.55;
	}

	.result-grid,
	.safety-grid,
	.faq-grid{
		grid-template-columns:1fr;
	}

	.faq-shell{
		padding:56px 24px;
		border-radius:28px;
	}

	.faq-shell h2{
		margin-bottom:36px;
	}

	.faq-item{
		padding:6px 20px;
	}

	.faq-item summary{
		min-height:auto;
		padding:18px 0;
		font-size:18px;
		line-height:1.35;
		align-items:flex-start;
	}

	.faq-item p{
		font-size:15px;
		line-height:1.55;
		padding-bottom:18px;
	}

	.contact-grid{
		padding-top:64px;
		gap:32px;
	}

	.contact-form{
		padding:28px 22px 32px;
	}

	.two-cols{
		grid-template-columns:1fr;
		gap:0;
	}

	.radios{
		gap:14px 20px;
	}

	.site-footer{
		width:calc(100% - 28px);
		margin:40px auto;
		padding:28px 22px;
	}

	.footer-shell{
		flex-direction:column;
		align-items:flex-start;
		gap:24px;
	}

	.footer-links,
	.footer-meta{
		flex-wrap:wrap;
		gap:16px;
	}

	.footer-bottom{
		margin-top:24px;
		padding-top:24px;
		flex-direction:column;
		gap:16px;
		line-height:1.4;
	}
}

@media (max-width: 900px){
	.hero h1,
	.teal-panel h2{
		font-size:34px;
		line-height:1.15;
	}

	.section-head h2,
	.faq-shell h2,
	.contact-copy h2{
		font-size:30px;
	}

	.result-grid,
	.safety-grid,
	.faq-grid,
	.hero-cards,
	.two-cols{
		grid-template-columns:1fr;
	}

	th,
	td{
		padding:14px 20px;
	}
}

@media (max-width: 767px){
	.container{
		width:calc(100% - 24px);
	}

	.hero{
		padding:36px 0 16px;
	}

	.hero-top{
		padding:0 16px;
	}

	.hero-badge{
		padding:6px 10px;
		border-radius:16px;
	}

	.hero-badge span{
		font-size:14px;
		line-height:1.4;
	}

	.hero h1{
		font-size:32px;
	}

	.hero-desc{
		font-size:14px;
		line-height:1.5;
	}

	.white-card-step{
		flex:0 0 100% !important;
		width:100% !important;
		min-width:0 !important;
		max-width:360px !important;
		min-height:auto;
		padding:28px 22px;
	}

	.hero-pills-wrapper{
		padding:0 16px;
	}

	.hero-pills{
		gap:10px;
	}

	.hero-pills > a,
	.hero-pills > span,
	.hero-pills > * > a,
	.hero-pills > * > span{
		height:42px;
		padding:0 16px;
		font-size:14px;
	}

	.teal-card{
		padding:24px 18px;
		padding-top: 0;
	}

	.teal-card h3{
		max-width:100%;
		font-size:20px;
	}

	.teal-card-qr{
		position:static;
		margin:0 0 16px auto;
		width:92px;
		height:92px;
	}

	.panel-frame{
		width:100%;
		padding:40px 0;
		border-radius:0;
		border-left:0;
		border-right:0;
	}

	.panel-frame .container{
		width:100%;
	}

	.panel-frame .teal-panel{
		border-radius:0;
	}

	.teal-panel-main,
	.teal-panel-format{
		padding:28px 18px;
	}

	.teal-panel h2{
		font-size:30px;
	}

	.section,
	.faq-section{
		padding-top:68px;
	}

	.section-head h2,
	.faq-shell h2,
	.contact-copy h2{
		font-size:28px;
	}

	table{
		min-width:680px;
	}

	th,
	td{
		padding:12px 16px;
		font-size:14px;
		line-height:1.45;
	}

	.faq-shell{
		padding:40px 18px;
		border-radius:22px;
	}

	.faq-item{
		padding:4px 16px;
		border-radius:16px;
	}

	.faq-item summary{
		font-size:16px;
		gap:12px;
	}

	.faq-item summary span,
	.faq-item summary span::after{
		width:36px;
		height:36px;
	}

	.contact-form{
		border-radius:16px;
		padding:24px 16px 28px;
	}

	input[type="text"],
	input[type="email"],
	input[type="tel"],
	textarea{
		padding:12px 14px;
		font-size:15px;
	}

	.btn,
	.btn-white-outline,
	.btn-submit{
		min-height:46px;
		height:auto;
		padding-top:10px;
		padding-bottom:10px;
	}

	.site-footer{
		width:calc(100% - 24px);
		padding:24px 16px;
	}

	.footer-shell{
		flex-direction:column;
		align-items:flex-start;
		gap:24px;
	}

	.footer-links,
	.footer-meta{
		flex-direction:column;
		align-items:flex-start;
		gap:12px;
		width:100%;
	}

	.footer-bottom{
		flex-direction:column;
		align-items:flex-start;
		gap:16px;
	}

	.footer-bottom .footer-links{
		flex-direction:column;
		align-items:flex-start;
		gap:12px;
	}
}

@media (max-width: 600px){
	.nav-shell{
		min-height:72px;
		border-radius:35px;
		padding:10px 54px 10px 14px;
	}

	.logo,
	.logo img{
		width:48px;
		height:48px;
	}

	.header-contacts-top{
		max-width:calc(100% - 120px);
		margin-right:8px;
	}

	.header-contacts-top a{
		font-size:11px;
		line-height:1.1;
	}

	.menu-btn{
		right:16px;
		width:26px;
		height:20px;
	}

	.menu-btn span:nth-child(2){
		top:8px;
	}

	.menu-btn span:nth-child(3){
		top:16px;
	}

	.faq-item{
		padding:4px 14px;
	}

	.footer-shell{
		flex-direction:column;
	}

	.footer-links,
	.footer-meta{
		flex-direction:column;
		align-items:flex-start;
	}

	.footer-bottom .footer-links{
		flex-direction:column;
		align-items:flex-start;
		flex-wrap:wrap;
	}

	.footer-bottom{
		justify-content:flex-end;
		flex-direction:column;
		gap:24px;
	}
}

@media (max-width: 480px){
	.container{
		width:calc(100% - 20px);
	}

	.site-header{
		padding-top:10px;
	}

	.hero h1{
		font-size:28px;
	}

	.hero-pills > a,
	.hero-pills > span,
	.hero-pills > * > a,
	.hero-pills > * > span{
		height:40px;
		padding:0 14px;
		font-size:14px;
	}

	.white-card-step{
		max-width:100% !important;
		padding:24px 18px;
	}

	.teal-panel h2,
	.section-head h2,
	.faq-shell h2,
	.contact-copy h2{
		font-size:24px;
	}

	.teal-card h3,
	.white-card-step h3{
		font-size:18px;
	}

	.result-card,
	.safety-card{
		padding:22px 16px;
	}

	.footer-links,
	.footer-meta{
		font-size:14px;
		line-height:1.45;
	}
}

/* ALIGNMENTS */
.alignleft{
	float:left;
	margin-right:1.5em;
	margin-bottom:1.5em;
}

.alignright{
	float:right;
	margin-left:1.5em;
	margin-bottom:1.5em;
}

.aligncenter{
	clear:both;
	display:block;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:1.5em;
}
/* ===== FIX: header jump on mobile menu open ===== */
@media (max-width: 1024px) {
	/* верхняя плашка всегда остается одинаковой */
	.nav-shell,
	.nav-shell.opened {
		align-items: center !important;
		justify-content: space-between;
	}

	/* не даем логотипу и контактам сжиматься/прыгать */
	.logo {
		flex: 0 0 auto;
	}

	.header-contacts-top {
		flex: 0 0 auto;
		align-self: center;
	}

	/* выпадающее меню появляется ниже, не влияя на верхнюю строку */
	.mobile {
		position: absolute;
		top: calc(100% + 12px);
		left: 0;
		right: 0;
		width: 100%;
	}

	.nav-shell.opened .mobile {
		display: flex;
	}

	/* кнопка бургера/крестика в одном и том же месте */
	.menu-btn {
		top: 50%;
		right: 16px;
		transform: translateY(-50%);
	}

	/* чуть стабильнее для текста контактов */
	.header-contacts-top a {
		display: block;
	}
}
/* SIMPLE PAGE */
.simple-page {
	padding: 60px 0 40px;
}

.simple-page__article {
	max-width: 980px;
	margin: 0 auto;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 24px;
	box-shadow: var(--shadow);
	padding: 48px 48px 56px;
}

.simple-page__header {
	margin-bottom: 28px;
}

.simple-page__title {
	margin: 0;
	font-family: "SF Pro Display", Arial, sans-serif;
	font-size: 42px;
	line-height: 1.15;
	font-weight: 700;
	color: var(--text);
}

.simple-page__content {
	color: var(--text-2);
	font-size: 18px;
	line-height: 1.7;
}

.simple-page__content h2,
.simple-page__content h3,
.simple-page__content h4 {
	margin: 32px 0 16px;
	color: var(--text);
	font-family: "SF Pro Display", Arial, sans-serif;
	line-height: 1.2;
}

.simple-page__content h2 {
	font-size: 30px;
}

.simple-page__content h3 {
	font-size: 24px;
}

.simple-page__content h4 {
	font-size: 20px;
}

.simple-page__content p {
	margin: 0 0 16px;
}

.simple-page__content ul,
.simple-page__content ol {
	margin: 0 0 20px;
	padding-left: 22px;
}

.simple-page__content li {
	margin-bottom: 10px;
}

.simple-page__content a {
	color: var(--teal);
	text-decoration: underline;
}

.simple-page__content strong {
	color: var(--text);
}

.simple-page__content table {
	margin: 24px 0;
}

@media (max-width: 1024px) {
	.simple-page {
		padding: 40px 0 24px;
	}

	.simple-page__article {
		padding: 32px 24px 36px;
		border-radius: 20px;
	}

	.simple-page__title {
		font-size: 34px;
	}

	.simple-page__content {
		font-size: 16px;
		line-height: 1.65;
	}

	.simple-page__content h2 {
		font-size: 26px;
	}

	.simple-page__content h3 {
		font-size: 22px;
	}

	.simple-page__content h4 {
		font-size: 18px;
	}
}

@media (max-width: 767px) {
	.simple-page {
		padding: 28px 0 16px;
	}

	.simple-page__article {
		padding: 24px 18px 28px;
		border-radius: 18px;
	}

	.simple-page__title {
		font-size: 28px;
	}

	.simple-page__content {
		font-size: 15px;
		line-height: 1.6;
	}

	.simple-page__content h2 {
		font-size: 22px;
	}

	.simple-page__content h3 {
		font-size: 19px;
	}

	.simple-page__content h4 {
		font-size: 17px;
	}
}