:root {
    --primary-teal: #77cac8;
            --dark-teal: #5a9b99;
            --accent-red: #c44569;
            --dark-red: #a8384a;
            --urgent-orange: #ff6b35;
            --success-green: #00b894;
            --deep-purple: #6c5ce7;
            --white: #ffffff;
            --dark: #2d3436;
            --gray: #636e72;
            --bg-light: #f8f9fa;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  color: var(--dark);
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  line-height: 1.6;
}

body.modal-open {
  height: 100vh;
  overflow: hidden;
}
img {
    max-width: 100%;
}
.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* === HEADER === */
header {
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: 0 2px 15px rgba(119, 202, 200, 0.15);
  background: linear-gradient(135deg, var(--white) 0%, var(--bg-light) 100%);
  transition: all 0.3s ease;
}

header.scrolled {
  box-shadow: 0 4px 25px rgba(119, 202, 200, 0.25);
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
}

.header-top {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 20px 0;
}

.logo-section {
  display: flex;
  flex-direction: row;
  align-items: center;
  max-width: 310px;
}
.logo-text {
    font-weight: 600;
}
.logo-header-text {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.logo-link {
  display: flex;
  text-decoration: none;
  transition: transform 0.3s ease;
}

.logo-link:hover {
  transform: scale(1.05);
}

.logo-img {
  width: auto;
  height: 100px;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
}

.brand-text {
  max-width: 230px;
  color: var(--gray);
  font-size: 12px;
  font-style: italic;
}

.center-section {
  flex: 1;
  max-width: 400px;
  margin: 0 20px;
}

.slogan {
  margin-bottom: 12px;
  color: var(--primary-teal);
  font-weight: 600;
  font-size: 14px;
  text-align: center;
}

.city-search {
  position: relative;
}

.city-input {
  width: 100%;
  border: 2px solid var(--primary-teal);
  border-radius: 25px;
  padding: 10px 15px;
  color: var(--dark);
  font-size: 13px;
  background: var(--white);
  transition: all 0.3s ease;
}

.city-input:focus {
  border-color: var(--dark-teal);
  box-shadow: 0 0 15px rgba(119, 202, 200, 0.3);
  outline: none;
}

.city-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  z-index: 1050;
  max-height: 200px;
  margin-top: -2px;
  border: 2px solid var(--primary-teal);
  border-radius: 0 0 15px 15px;
  border-top: none;
  box-shadow: 0 10px 25px rgba(119, 202, 200, 0.2);
  overflow-y: auto;
  background: var(--white);
}

.city-list {
  list-style: none;
}

.city-item {
  border-bottom: 1px solid rgba(119, 202, 200, 0.1);
}

.city-link {
  display: block;
  padding: 12px 15px;
  color: var(--dark);
  font-size: 13px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.city-link:hover {
  color: var(--white);
  background: var(--primary-teal);
  transform: translateX(5px);
}

.contact-section {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 12px;
}

.phone-block {
  text-align: right;
}

.phone-link {
  display: block;
  color: var(--dark);
  font-weight: 700;
  font-size: 20px;
  text-decoration: none;
  transition: color 0.3s ease;
}

.phone-link:hover {
  color: var(--primary-teal);
}

.phone-description {
  margin-top: 4px;
  color: var(--gray);
  font-size: 11px;
}

.cta-button {
  border: none;
  border-radius: 25px;
  padding: 12px 20px;
  box-shadow: 0 4px 15px rgba(196, 69, 105, 0.3);
  color: var(--white) !important;
  font-weight: 600;
  font-size: 13px;
  text-decoration: none;
  background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
  transition: all 0.3s ease;
  white-space: nowrap;
}

.cta-button:hover {
  box-shadow: 0 6px 20px rgba(196, 69, 105, 0.4);
  color: var(--white) !important;
  background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
  transform: translateY(-2px);
}

.mobile-menu-toggle {
  display: none;
  width: 50px;
  height: 50px;
  border: none;
  border-radius: 50%;
  background: var(--primary-teal);
  transition: all 0.3s ease;
  cursor: pointer;
}

.mobile-menu-toggle:hover {
  background: var(--dark-teal);
  transform: scale(1.1);
}

.hamburger-line {
  display: block;
  width: 22px;
  height: 2px;
  margin: 4px auto;
  border-radius: 1px;
  background: var(--white);
  transition: all 0.3s ease;
}

.mobile-menu-toggle.active .hamburger-line:nth-child(1) {
  transform: rotate(45deg) translate(6px, 6px);
}

.mobile-menu-toggle.active .hamburger-line:nth-child(2) {
  opacity: 0;
}

.mobile-menu-toggle.active .hamburger-line:nth-child(3) {
  transform: rotate(-45deg) translate(6px, -6px);
}

/* === NAVIGATION === */
.navigation {
  background: var(--primary-teal);
}

.nav {
  display: flex;
  justify-content: center;
  list-style: none;
}

.nav > li {
  position: relative;
}

.nav > li > a {
  display: block;
  padding: 15px 20px;
  color: var(--white);
  font-weight: 500;
  font-size: 14px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.nav > li > a:hover {
  background: var(--dark-teal);
}

.nav li:has(ul) > a:after {
  content: '▼';
  margin-left: 8px;
  font-size: 10px;
  transition: transform 0.3s ease;
}

.nav li .up-menu {
  display: none;
}

.nav li ul {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  visibility: hidden;
  min-width: 220px;
  border: 2px solid var(--primary-teal);
  border-top: none;
  padding: 8px 0;
  box-shadow: 0 8px 25px rgba(119, 202, 200, 0.2);
  opacity: 0;
  list-style: none;
  background: var(--white);
  transition: all 0.3s ease;
  transform: translateY(-10px);
}

.nav li:hover > ul {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.nav li ul li a {
  display: block;
  padding: 10px 18px;
  color: var(--dark);
  font-size: 13px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.nav li ul li a:hover {
  color: var(--white);
  background: var(--primary-teal);
  transform: translateX(5px);
}

.nav li ul li ul {
  position: absolute;
  top: 0;
  left: 100%;
  margin-left: 2px;
}

.nav li ul li:hover > ul {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.nav li ul li:has(ul) > a:after {
  content: '▶';
  float: right;
  margin-top: 2px;
  font-size: 10px;
}

/* === MODALS === */
.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  visibility: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 20px;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(5px);
  transition: all 0.3s ease;
}

.modal-overlay.show {
  visibility: visible;
  opacity: 1;
}

.modal-overlay.show .modal-content {
  opacity: 1;
  transform: scale(1);
}

.modal-content {
  position: relative;
  width: 100%;
  max-width: 500px;
  max-height: 90vh;
  border-radius: 20px;
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.3);
  opacity: 0;
  overflow-y: auto;
  background: var(--white);
  transition: all 0.3s ease;
  transform: scale(0.8);
}

.modal-close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 50%;
  color: var(--accent-red);
  font-weight: bold;
  font-size: 18px;
  background: rgba(196, 69, 105, 0.1);
  transition: all 0.3s ease;
  cursor: pointer;
}

.modal-close:hover {
  color: var(--white);
  background: var(--accent-red);
  transform: scale(1.1);
}

.form-wrapper {
  padding: 50px 40px;
  background: linear-gradient(135deg, var(--bg-light) 0%, var(--white) 100%);
}

.form__title {
  margin-bottom: 30px;
  color: var(--dark);
  font-weight: 700;
  font-size: 24px;
  text-align: center;
}

.input-row {
  position: relative;
  margin-bottom: 25px;
}

.input-row i {
  position: absolute;
  top: 50%;
  left: 18px;
  z-index: 1;
  color: var(--primary-teal);
  font-size: 16px;
  transform: translateY(-50%);
}

.input-row input,
.input-row textarea {
  width: 100%;
  border: 2px solid #e9ecef;
  border-radius: 30px;
  padding: 18px 20px 18px 55px;
  color: var(--dark);
  font-family: inherit;
  font-size: 15px;
  background: var(--white);
  transition: all 0.3s ease;
}

.input-row input:focus,
.input-row textarea:focus {
  border-color: var(--primary-teal);
  box-shadow: 0 0 20px rgba(119, 202, 200, 0.2);
  outline: none;
  transform: translateY(-2px);
}

.input-row textarea {
  min-height: 120px;
  border-radius: 20px;
  padding-top: 18px;
  resize: vertical;
}

.input-btn {
  margin-top: 35px;
  text-align: center;
}

.butn {
  min-width: 220px;
  border: none;
  border-radius: 30px;
  padding: 18px 40px;
  color: var(--white);
  font-family: inherit;
  font-weight: 600;
  font-size: 15px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
  transition: all 0.3s ease;
  cursor: pointer;
}

.butn:hover {
  box-shadow: 0 8px 25px rgba(119, 202, 200, 0.4);
  background: linear-gradient(135deg, var(--dark-teal), #4a7c7a);
  transform: translateY(-3px);
}

.modal-thank .form__title {
  margin-bottom: 20px;
  color: var(--primary-teal);
  font-size: 28px;
}

.modal-thank .butn {
  min-width: 180px;
  background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
}

.modal-thank .butn:hover {
  box-shadow: 0 8px 25px rgba(196, 69, 105, 0.4);
  background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
}

.input-row.error input,
.input-row.error textarea {
  border-color: var(--accent-red);
  animation: shake 0.3s ease-in-out;
}

.input-row.success input,
.input-row.success textarea {
  border-color: #28a745;
}

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
}

/* === RESPONSIVE === */
@media (max-width: 992px) {
  .header-top {
	padding: 15px 0;
  }
  .cta-button .header-btn {
    display:none;
  }
  .center-section {
	max-width: 300px;
	margin: 0 15px;
  }
  .slogan {
	display: none;
	font-size: 13px;
  }
  .phone-link {
	font-size: 18px;
  }
  .cta-button {
	padding: 10px 16px;
	font-size: 12px;
  }
}

@media (max-width: 768px) {
  .mobile-menu-toggle {
	display: block;
	order: 6;
  }
  .header-top {
	gap: 15px;
	padding: 12px 0;
  }
  .logo-section {
	gap: 10px;
  }
  .brand-text {
	font-size: 11px;
  }
  .center-section {
    flex: 1 1 80%;
	order: 5;
	width: 100%;
	max-width: none;
	margin: 0;
  }
  .contact-section {
	display:none;
	align-items: flex-start;
	gap: 10px;
  }
  .phone-block {
	max-width: 50vw;
  }
  .phone-link {
	font-size: 16px;
  }
  .cta-button {
	display: none;
	width: 100%;
	text-align: center;
  }
  
  .navigation {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: 999;
	display: none;
	border-top: 3px solid var(--primary-teal);
	box-shadow: 0 10px 25px rgba(119, 202, 200, 0.3);
	background: var(--white);
  }
  
  .navigation.show {
	display: block;
	animation: slideDown 0.3s ease-out;
  }
  
  .nav {
	flex-direction: column;
  }
  
  .nav > li > a {
	border-bottom: 1px solid rgba(119, 202, 200, 0.1);
	padding: 15px 20px;
	color: var(--dark);
  }
  
  .nav > li > a:hover {
	color: var(--white);
	background: var(--primary-teal);
  }
  
  .nav li ul {
	position: static;
	visibility: visible;
	display: none;
	margin: 5px 0;
	border: none;
	border-radius: 8px;
	box-shadow: none;
	opacity: 1;
	background: rgba(119, 202, 200, 0.08);
	transform: none;
  }
  
  .nav li.show-submenu > ul {
	display: block;
  }
  
  .nav li ul li a {
	position: relative;
	padding: 12px 20px 12px 35px;
  }
  
  .nav li ul li a:before {
	content: '→';
	position: absolute;
	top: 50%;
	left: 15px;
	color: var(--primary-teal);
	font-size: 12px;
	transform: translateY(-50%);
  }
  
  .nav li ul li ul {
	margin-left: 15px;
	border-left: 3px solid var(--primary-teal);
	background: rgba(119, 202, 200, 0.12);
  }
  
  .nav li ul li ul li a {
	padding-left: 45px;
	font-size: 12px;
  }
  
  .nav li:has(ul) > a:after {
	content: '+';
	position: absolute;
	top: 50%;
	right: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	float: right;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	color: var(--primary-teal);
	font-weight: bold;
	font-size: 18px;
	background: rgba(119, 202, 200, 0.1);
	transform: translateY(-50%);
  }
  
  .nav li.show-submenu > a:after {
	content: '−';
  }
  
  .nav li:has(ul) > a {
	padding-right: 45px;
  }
  
  .modal-overlay {
	padding: 15px;
  }
  .form-wrapper {
	padding: 40px 25px;
  }
  .form__title {
	margin-bottom: 25px;
	font-size: 20px;
  }
  .input-row input,
  .input-row textarea {
	padding: 15px 18px 15px 50px;
	font-size: 14px;
  }
  .input-row i {
	left: 16px;
	font-size: 14px;
  }
  .butn {
	min-width: 200px;
	padding: 15px 30px;
	font-size: 14px;
  }
  .modal-close {
	top: 15px;
	right: 15px;
	width: 35px;
	height: 35px;
	font-size: 16px;
  }
}

@media (max-width: 576px) {
  .container {
	padding: 0 15px;
  }
  .logo-img {
	height: 70px;
  }
  .brand-text {
	font-size: 10px;
  }
  .phone-link {
	font-size: 14px;
  }
  .cta-button {
	padding: 8px 14px;
	font-size: 11px;
  }
  .nav > li > a {
	padding: 12px 15px;
	font-size: 13px;
  }
  .nav li ul li a {
	padding-left: 30px;
	font-size: 12px;
  }
  .nav li ul li ul li a {
	padding-left: 45px;
	font-size: 11px;
  }
  
  .form-wrapper {
	padding: 30px 20px;
  }
  .form__title {
	font-size: 18px;
  }
  .input-row input,
  .input-row textarea {
	padding: 12px 15px 12px 45px;
	font-size: 13px;
  }
  .input-row i {
	left: 14px;
	font-size: 13px;
  }
  .butn {
	min-width: 180px;
	padding: 12px 25px;
	font-size: 13px;
  }
}

@keyframes slideDown {
  from {
	opacity: 0;
	transform: translateY(-20px);
  }
  to {
	opacity: 1;
	transform: translateY(0);
  }
}

@keyframes fadeIn {
  from {
	opacity: 0;
	transform: translateY(10px);
  }
  to {
	opacity: 1;
	transform: translateY(0);
  }
}

.fade-in {
  animation: fadeIn 0.6s ease-out forwards;
}

/* ===== COOKIE ALERT ===== */
#cookie_note {
	position: fixed;
	right: 20px;
	bottom: 20px;
	left: 20px;
	z-index: 10000;
	display: none;
	max-width: 500px;
	margin: 0 auto;
	border: 2px solid var(--primary-teal);
	border-radius: 15px;
	box-shadow: 0 10px 30px rgba(119, 202, 200, 0.3);
	background: var(--white);
	animation: slideUp 0.5s ease-out;
}

#cookie_note.show-on {
	display: block;
}

.cookie-content {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	padding: 20px;
}

.cookie-icon {
	flex-shrink: 0;
	margin-top: 2px;
	color: var(--primary-teal);
}

.cookie-text {
	flex: 1;
}

.cookie-text p {
	margin: 0;
	color: var(--dark);
	font-size: 13px;
	line-height: 1.4;
}

.cookie-text a {
	color: var(--primary-teal);
	text-decoration: underline;
}

.cookie-accept {
	border: none;
	border-radius: 20px;
	padding: 8px 16px;
	color: var(--white);
	font-weight: 600;
	font-size: 12px;
	background: var(--primary-teal);
	transition: all 0.3s ease;
	cursor: pointer;
	white-space: nowrap;
}

.cookie-accept:hover {
	background: var(--dark-teal);
	transform: translateY(-1px);
}

/* ===== MOBILE FOOTER BUTTON ===== */
.mobile-footer-block {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
	display: none;
	padding: 15px;
	box-shadow: 0 -5px 20px rgba(119, 202, 200, 0.3);
	background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
}

.mobile-footer-block a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	color: var(--white);
	font-weight: 700;
	font-size: 18px;
	text-decoration: none;
	transition: transform 0.3s ease;
}

.mobile-footer-block a:hover {
	color: var(--white);
	transform: scale(1.05);
}

/* ===== FOOTER MAIN ===== */
footer {
	position: relative;
	margin-top: 60px;
	color: var(--white);
	background: var(--dark);
}

footer::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--primary-teal), var(--accent-red), var(--primary-teal));
}

.container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

/* ===== FOOTER TOP ===== */
.footer-top {
	padding: 50px 0;
}

.footer-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	align-items: start;
	gap: 40px;
}

/* Footer Brand */
.footer-brand {
	max-width: 300px;
}

.footer-logo {
	display: inline-block;
	margin-bottom: 20px;
	transition: opacity 0.3s ease;
}

.footer-logo:hover {
	opacity: 0.8;
}

.footer-logo img {
	width: auto;
	height: 50px;
	filter: brightness(0) invert(1);
}

.footer-brand-text {
	margin: 0;
	color: #ccc;
	font-size: 14px;
	line-height: 1.6;
}

/* Footer Contact */
.footer-contact h3 {
	margin-bottom: 25px;
	color: var(--primary-teal);
	font-weight: 600;
	font-size: 18px;
	text-transform: uppercase;
}

.contact-items {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.contact-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.contact-item svg {
	flex-shrink: 0;
	margin-top: 2px;
	color: var(--primary-teal);
}

.contact-item div {
	flex: 1;
}

.contact-label {
	display: block;
	margin-bottom: 4px;
	color: var(--primary-teal);
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
}

.contact-item address {
	color: #ccc;
	font-size: 14px;
	font-style: normal;
	line-height: 1.4;
}

.contact-item .phone-link {
	color: var(--white);
	font-weight: 600;
	font-size: 16px;
	text-decoration: none;
	transition: color 0.3s ease;
}

.contact-item .phone-link:hover {
	color: var(--primary-teal);
}

.contact-item small {
	display: block;
	margin-top: 2px;
	color: #999;
	font-size: 11px;
}

.contact-item a[href^="mailto"] {
	color: var(--primary-teal);
	text-decoration: none;
	transition: color 0.3s ease;
}

.contact-item a[href^="mailto"]:hover {
	color: var(--white);
}

/* Footer Actions */
.footer-actions h3 {
	margin-bottom: 25px;
	color: var(--accent-red);
	font-weight: 600;
	font-size: 18px;
	text-transform: uppercase;
}

.action-buttons {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 25px;
}

.action-btn {
	display: flex;
	align-items: center;
	gap: 8px;
	border-radius: 25px;
	padding: 12px 20px;
	font-weight: 600;
	font-size: 13px;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.3s ease;
}

.btn-primary {
	color: var(--white);
	background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
}

.btn-primary:hover {
	box-shadow: 0 5px 15px rgba(196, 69, 105, 0.4);
	color: var(--white);
	background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
	transform: translateY(-2px);
}

.btn-secondary {
	border: 2px solid var(--primary-teal);
	color: var(--primary-teal);
	background: transparent;
}

.btn-secondary:hover {
	color: var(--white);
	background: var(--primary-teal);
	transform: translateY(-2px);
}

.emergency-info {
	border: 1px solid var(--primary-teal);
	border-radius: 10px;
	padding: 20px;
	background: rgba(119, 202, 200, 0.1);
}

.emergency-info p {
	margin: 0 0 8px 0;
	font-size: 13px;
	line-height: 1.4;
}

.emergency-info strong {
	color: var(--primary-teal);
}

/* ===== FOOTER NAVIGATION ===== */
.footer-nav {
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
	padding: 30px 0;
}

/* Footer Menu Styles - Открытое меню */
.footer-menu {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer-menu > li > a {
	display: block;
	margin-bottom: 10px;
	border-bottom: 2px solid transparent;
	padding: 8px 0;
	color: var(--white);
	font-weight: 600;
	font-size: 16px;
	text-decoration: none;
	text-transform: uppercase;
	transition: color 0.3s ease;
}

.footer-menu > li > a:hover {
	border-bottom-color: var(--primary-teal);
	color: var(--primary-teal);
}

/* Second Level Menu - всегда видимое */
.footer-menu-two-lvl {
	display: block;
	margin: 0 0 15px 0;
	padding: 0;
	list-style: none;
}

.footer-menu-two-lvl li {
	margin-bottom: 8px;
}

.footer-menu-two-lvl li a {
	position: relative;
	display: block;
	padding: 6px 0 6px 15px;
	color: #ccc;
	font-weight: 400;
	font-size: 14px;
	text-decoration: none;
	text-transform: none;
	transition: all 0.3s ease;
}

.footer-menu-two-lvl li a:before {
	content: '→';
	position: absolute;
	top: 50%;
	left: 0;
	color: var(--primary-teal);
	font-size: 12px;
	transform: translateY(-50%);
}

.footer-menu-two-lvl li a:hover {
	padding-left: 20px;
	color: var(--white);
}

/* Third Level Menu - всегда видимое, отступ больше */
.footer-menu-three-lvl {
	display: block;
	margin: 0 0 8px 0;
	padding: 0;
	list-style: none;
}

.footer-menu-three-lvl li {
	margin-bottom: 6px;
}

.footer-menu-three-lvl li a {
	position: relative;
	display: block;
	padding: 4px 0 4px 25px;
	color: #999;
	font-weight: 400;
	font-size: 12px;
	text-decoration: none;
	text-transform: none;
	transition: all 0.3s ease;
}

.footer-menu-three-lvl li a:before {
	content: '•';
	position: absolute;
	top: 50%;
	left: 15px;
	color: var(--primary-teal);
	font-size: 14px;
	transform: translateY(-50%);
}

.footer-menu-three-lvl li a:hover {
	padding-left: 30px;
	color: var(--primary-teal);
}

.footer-menu-three-lvl li a:before {
	content: '•';
	position: absolute;
	left: 0;
	color: var(--primary-teal);
	font-size: 16px;
}

.footer-menu-three-lvl li a:hover {
	color: var(--primary-teal);
}

/* ===== FOOTER BOTTOM ===== */
.footer-bottom {
	padding: 30px 0;
}

.footer-bottom-grid {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 30px;
}

.footer-legal p {
	margin: 0 0 8px 0;
	color: #ccc;
	font-size: 14px;
}

.license {
	color: var(--primary-teal);
	font-weight: 600;
	font-size: 12px;
}

.footer-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}

.footer-links a {
	color: #ccc;
	font-size: 12px;
	text-decoration: none;
	transition: color 0.3s ease;
	white-space: nowrap;
}

.footer-links a:hover {
	color: var(--primary-teal);
}

.footer-social {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 15px;
}

.footer-social span {
	color: #ccc;
	font-size: 12px;
	white-space: nowrap;
}

.social-links {
	display: flex;
	gap: 10px;
}

.social-links a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	height: 35px;
	border: 1px solid var(--primary-teal);
	border-radius: 50%;
	color: var(--primary-teal);
	text-decoration: none;
	background: rgba(119, 202, 200, 0.1);
	transition: all 0.3s ease;
}

.social-links a:hover {
	color: var(--white);
	background: var(--primary-teal);
	transform: translateY(-2px);
}

/* ===== REGULATORY INFORMATION ===== */
.footer-regulatory {
	border-top: 1px solid #333;
	padding: 25px 0;
	background: rgba(0,0,0,0.3);
}

.footer-regulatory p {
	margin: 0 0 15px 0;
	color: #999;
	font-size: 11px;
	line-height: 1.4;
}

.footer-regulatory strong {
	color: var(--white);
	font-size: 12px;
}

.regulatory-links {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin-bottom: 15px;
}

.regulatory-links a {
	color: var(--primary-teal);
	font-size: 11px;
	line-height: 1.3;
	text-decoration: none;
	transition: color 0.3s ease;
}

.regulatory-links a:hover {
	color: var(--white);
	text-decoration: underline;
}

/* ===== ANIMATIONS ===== */
@keyframes slideUp {
	from {
		opacity: 0;
		transform: translateY(50px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 992px) {
	.footer-grid {
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}
	
	.footer-actions {
		grid-column: 1 / -1;
	}
	
	.footer-menu {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}
	
	.footer-menu > li > a {
		font-size: 14px;
	}
	
	.footer-menu-two-lvl li a {
		font-size: 13px;
	}
	
	.footer-menu-three-lvl li a {
		font-size: 11px;
	}
	
	.footer-bottom-grid {
		grid-template-columns: 1fr;
		gap: 20px;
		text-align: center;
	}
	
	.footer-social {
		justify-content: center;
	}
	
	.regulatory-links {
		justify-content: center;
	}
}

@media (max-width: 768px) {
	.mobile-footer-block {
		display: block;
	}
	
	footer {
		padding-bottom: 70px;
	}
	
	.footer-top {
		padding: 40px 0;
	}
	
	.footer-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	
	.footer-brand {
		max-width: none;
		text-align: center;
	}
	
	.contact-items {
		gap: 15px;
	}
	
	.action-buttons {
		flex-direction: row;
		gap: 10px;
	}
	
	.action-btn {
		flex: 1;
		justify-content: center;
		padding: 10px 15px;
		font-size: 11px;
	}
	
	/* Мобильное меню - 2 колонки, все открыто */
	.footer-menu {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
	}
	
	.footer-menu > li > a {
		margin-bottom: 8px;
		font-size: 14px;
	}
	
	.footer-menu-two-lvl li a {
		padding: 4px 0 4px 12px;
		font-size: 12px;
	}
	
	.footer-menu-three-lvl li a {
		padding: 3px 0 3px 20px;
		font-size: 11px;
	}
	
	.footer-menu-three-lvl li a:before {
		left: 12px;
	}
	
	.footer-nav {
		padding: 25px 0;
	}
	
	.footer-bottom {
		padding: 25px 0;
	}
	
	.footer-links {
		flex-direction: column;
		gap: 10px;
	}
	
	.regulatory-links {
		flex-direction: column;
		gap: 10px;
		text-align: center;
	}
	
	#cookie_note {
		right: 15px;
		bottom: 90px;
		left: 15px;
		max-width: none;
	}
	
	.cookie-content {
		flex-direction: column;
		align-items: center;
		padding: 15px;
		text-align: center;
	}
}

@media (max-width: 576px) {
	.footer-top {
		padding: 30px 0;
	}
	
	.action-buttons {
		flex-direction: column;
		gap: 8px;
	}
	
	.action-btn {
		padding: 8px 12px;
		font-size: 10px;
	}
	
	.emergency-info {
		padding: 15px;
	}
	
	/* Мобильное меню - 1 колонка, компактнее */
	.footer-menu {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.footer-menu > li > a {
		margin-bottom: 6px;
		font-size: 13px;
	}
	
	.footer-menu-two-lvl li a {
		padding: 3px 0 3px 10px;
		font-size: 11px;
	}
	
	.footer-menu-three-lvl li a {
		padding: 2px 0 2px 18px;
		font-size: 10px;
	}
	
	.footer-menu-three-lvl li a:before {
		left: 10px;
	}
	
	.contact-item {
		gap: 10px;
	}
	
	.contact-item .phone-link {
		font-size: 14px;
	}
	
	.social-links a {
		width: 30px;
		height: 30px;
	}
	
	.social-links svg {
		width: 16px;
		height: 16px;
	}
}

/* ===== МОДАЛЬНЫЕ ОКНА (ОБНОВЛЕННЫЕ СТИЛИ) ===== */
.modal-hidden {
	position: relative;
	z-index: 9999;
}

.my-modal {
	z-index: 10000;
}

.my-modal .modal-dialog {
	max-width: 500px;
	margin: 30px auto;
}

.my-modal .modal-content {
	border: none;
	border-radius: 15px;
	box-shadow: 0 20px 40px rgba(0,0,0,0.3);
	overflow: hidden;
	background: var(--white);
}

.form-wrapper {
	padding: 40px 30px;
	background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
}

.form__title {
	margin-bottom: 30px;
	color: var(--dark);
	font-weight: 700;
	font-size: 22px;
	line-height: 1.3;
	text-align: center;
}

.input-row {
	position: relative;
	margin-bottom: 20px;
}

.input-row label {
	position: relative;
	display: block;
}

.input-row i {
	position: absolute;
	top: 50%;
	left: 15px;
	z-index: 1;
	color: var(--primary-teal);
	transform: translateY(-50%);
}

.input-row input,
.input-row textarea {
	width: 100%;
	border: 2px solid #e9ecef;
	border-radius: 25px;
	padding: 15px 15px 15px 45px;
	color: var(--dark);
	font-size: 14px;
	background: var(--white);
	transition: all 0.3s ease;
}

.input-row input:focus,
.input-row textarea:focus {
	border-color: var(--primary-teal);
	box-shadow: 0 0 15px rgba(119, 202, 200, 0.2);
	outline: none;
}

.input-row textarea {
	min-height: 100px;
	border-radius: 15px;
	padding-top: 15px;
	resize: vertical;
}

.input-btn {
	margin-top: 30px;
	text-align: center;
}

.input-btn .butn {
	min-width: 200px;
	border: none;
	border-radius: 25px;
	padding: 15px 30px;
	color: var(--white);
	font-weight: 600;
	font-size: 14px;
	text-transform: uppercase;
	background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	transition: all 0.3s ease;
	cursor: pointer;
}

.input-btn .butn:hover {
	box-shadow: 0 5px 15px rgba(119, 202, 200, 0.4);
	background: linear-gradient(135deg, var(--dark-teal), #4a7c7a);
	transform: translateY(-2px);
}

/* Thank you modal */
.modalthank .form__title {
	color: var(--primary-teal);
	font-size: 24px;
}

.modalthank .butn {
	background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
}

.modalthank .butn:hover {
	background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
}

@media (max-width: 576px) {
	.my-modal .modal-dialog {
		margin: 15px;
	}
	
	.form-wrapper {
		padding: 30px 20px;
	}
	
	.form__title {
		margin-bottom: 25px;
		font-size: 18px;
	}
	
	.input-row input,
	.input-row textarea {
		padding: 12px 12px 12px 40px;
		font-size: 13px;
	}
	
	.input-btn .butn {
		min-width: 150px;
		padding: 12px 25px;
		font-size: 13px;
	}
}



	  /* === HERO BANNER === */
		.hero-banner {
			position: relative;
			display: flex;
			align-items: center;
			min-height: 70vh;
			overflow: hidden;
			background: linear-gradient(135deg, var(--primary-teal) 0%, var(--dark-teal) 100%);
		}

		.hero-banner::before {
			content: '';
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			background: 
				radial-gradient(circle at 20% 50%, rgba(255,255,255,0.1) 0%, transparent 50%),
				radial-gradient(circle at 80% 20%, rgba(255,255,255,0.05) 0%, transparent 50%),
				radial-gradient(circle at 40% 80%, rgba(119,202,200,0.3) 0%, transparent 50%);
			pointer-events: none;
		}

		.hero-content {
			position: relative;
			z-index: 2;
			display: grid;
			grid-template-columns: 1fr 400px;
			align-items: center;
			gap: 60px;
			width: 100%;
			padding: 80px 0;
		}

		.hero-text {
			color: var(--white);
		}

		.hero-badge {
			display: inline-block;
			margin-bottom: 20px;
			border-radius: 25px;
			padding: 8px 20px;
			color: var(--white);
			font-weight: 600;
			font-size: 14px;
			letter-spacing: 0.5px;
			text-transform: uppercase;
			background: rgba(255, 255, 255, 0.15);
			backdrop-filter: blur(10px);
		}

		.hero-title {
			margin-bottom: 25px;
			font-weight: 800;
			font-size: 48px;
			line-height: 1.2;
			text-shadow: 0 2px 10px rgba(0,0,0,0.1);
		}

		.hero-subtitle {
			margin-bottom: 40px;
			opacity: 0.9;
			font-size: 20px;
			font-style: italic;
		}

		/* === CONTENT VARIATIONS === */
		.hero-features {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
			gap: 20px;
			margin-top: 30px;
			list-style: none;
		}

		.hero-feature {
			display: flex;
			align-items: center;
			gap: 15px;
			border-radius: 15px;
			padding: 20px;
			background: rgba(255, 255, 255, 0.1);
			backdrop-filter: blur(10px);
			transition: all 0.3s ease;
		}

		.hero-feature:hover {
			background: rgba(255, 255, 255, 0.15);
			transform: translateY(-2px);
		}

		.hero-feature-icon {
			display: flex;
			flex-shrink: 0;
			justify-content: center;
			align-items: center;
			width: 50px;
			height: 50px;
			border-radius: 50%;
			color: var(--primary-teal);
			font-size: 20px;
			background: var(--white);
		}

		.hero-feature-content h3 {
			margin-bottom: 5px;
			color: var(--white);
			font-weight: 600;
			font-size: 16px;
		}

		.hero-feature-content p {
			opacity: 0.9;
			color: var(--white);
			font-size: 14px;
		}

		.hero-stats {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 30px;
			margin-top: 40px;
		}

		.hero-stat {
			border-radius: 15px;
			padding: 20px;
			text-align: center;
			background: rgba(255, 255, 255, 0.1);
			backdrop-filter: blur(10px);
		}

		.hero-stat-number {
			display: block;
			margin-bottom: 8px;
			color: var(--white);
			font-weight: 800;
			font-size: 36px;
		}

		.hero-stat-label {
			opacity: 0.9;
			color: var(--white);
			font-size: 14px;
		}

		/* === FORM SIDEBAR === */
		.hero-form {
			position: relative;
			border-radius: 20px;
			padding: 40px;
			box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
			background: var(--white);
		}

		.hero-form::before {
			content: '';
			position: absolute;
			top: -2px;
			right: -2px;
			bottom: -2px;
			left: -2px;
			z-index: -1;
			border-radius: 22px;
		}

		.form-title {
			margin-bottom: 25px;
			color: var(--dark);
			font-weight: 700;
			font-size: 22px;
			line-height: 1.3;
			text-align: center;
		}

		.form-subtitle {
			margin-bottom: 30px;
			color: var(--gray);
			font-size: 14px;
			text-align: center;
		}

		.input-group {
			position: relative;
			margin-bottom: 20px;
		}

		.input-group i {
			position: absolute;
			top: 50%;
			left: 18px;
			z-index: 1;
			color: var(--primary-teal);
			font-size: 16px;
			transform: translateY(-50%);
		}

		.input-group input {
			width: 100%;
			border: 2px solid #e9ecef;
			border-radius: 50px;
			padding: 16px 20px 16px 55px;
			font-size: 15px;
			background: var(--white);
			transition: all 0.3s ease;
		}

		.input-group input:focus {
			border-color: var(--primary-teal);
			box-shadow: 0 0 20px rgba(119, 202, 200, 0.2);
			outline: none;
			transform: translateY(-1px);
		}

		.submit-btn {
			width: 100%;
			margin-top: 10px;
			border: none;
			border-radius: 50px;
			padding: 16px 30px;
			color: var(--white);
			font-weight: 600;
			font-size: 16px;
			letter-spacing: 0.5px;
			text-transform: uppercase;
			background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
			transition: all 0.3s ease;
			cursor: pointer;
		}

		.submit-btn:hover {
			box-shadow: 0 8px 25px rgba(196, 69, 105, 0.4);
			background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
			transform: translateY(-2px);
		}

		.form-note {
			margin-top: 15px;
			color: var(--gray);
			font-size: 12px;
			line-height: 1.4;
			text-align: center;
		}

		.guarantee-badges {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			gap: 15px;
			margin-top: 20px;
		}

		.guarantee-badge {
			display: flex;
			align-items: center;
			gap: 8px;
			border-radius: 15px;
			padding: 8px 12px;
			color: var(--gray);
			font-size: 12px;
			background: var(--bg-light);
		}

		.guarantee-badge i {
			color: var(--primary-teal);
		}

		/* === CTA BUTTONS === */
		.hero-cta {
			display: flex;
			gap: 20px;
			margin-top: 40px;
		}

		.cta-primary {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			border-radius: 50px;
			padding: 16px 32px;
			color: var(--primary-teal) !important;
			font-weight: 600;
			font-size: 16px;
			text-decoration: none;
			background: var(--white);
			transition: all 0.3s ease;
		}

		.cta-primary:hover {
			box-shadow: 0 8px 25px rgba(255, 255, 255, 0.3);
			color: var(--primary-teal) !important;
			background: rgba(255, 255, 255, 0.9);
			transform: translateY(-2px);
		}

		.cta-secondary {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			border: 2px solid rgba(255, 255, 255, 0.5);
			border-radius: 50px;
			padding: 14px 32px;
			color: var(--white) !important;
			font-weight: 600;
			font-size: 16px;
			text-decoration: none;
			background: transparent;
			transition: all 0.3s ease;
		}

		.cta-secondary:hover {
			border-color: var(--white);
			color: var(--white) !important;
			background: rgba(255, 255, 255, 0.1);
		}

		/* === RESPONSIVE === */
		@media (max-width: 1024px) {
			.hero-content {
				grid-template-columns: 1fr 350px;
				gap: 40px;
			}

			.hero-title {
				font-size: 42px;
			}
		}

		@media (max-width: 768px) {
			.hero-banner {
				min-height: auto;
			}

			.hero-content {
				grid-template-columns: 1fr;
				gap: 40px;
				padding: 60px 0;
			}

			.hero-title {
				font-size: 36px;
			}

			.hero-subtitle {
				font-size: 18px;
			}

			.hero-features {
				grid-template-columns: 1fr;
				gap: 15px;
			}

			.hero-stats {
				grid-template-columns: 1fr;
				gap: 20px;
			}

			.hero-stat {
				padding: 15px;
			}

			.hero-stat-number {
				font-size: 28px;
			}

			.hero-form {
				padding: 30px 25px;
			}

			.hero-cta {
				flex-direction: column;
				gap: 15px;
			}

			.cta-primary,
			.cta-secondary {
				justify-content: center;
				text-align: center;
			}
		}

		@media (max-width: 480px) {
			.container {
				padding: 0 15px;
			}

			.hero-content {
				padding: 40px 0;
			}

			.hero-title {
				font-size: 28px;
			}

			.hero-subtitle {
				font-size: 16px;
			}

			.hero-form {
				padding: 25px 20px;
			}

			.form-title {
				font-size: 20px;
			}

			.input-group input {
				padding: 14px 18px 14px 50px;
				font-size: 14px;
			}

			.submit-btn {
				padding: 14px 25px;
				font-size: 15px;
			}

			.guarantee-badges {
				flex-direction: column;
				gap: 10px;
			}

			.guarantee-badge {
				justify-content: center;
			}
		}

		/* === ANIMATIONS === */
		@keyframes fadeInUp {
			from {
				opacity: 0;
				transform: translateY(40px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		@keyframes fadeInLeft {
			from {
				opacity: 0;
				transform: translateX(-40px);
			}
			to {
				opacity: 1;
				transform: translateX(0);
			}
		}

		@keyframes fadeInRight {
			from {
				opacity: 0;
				transform: translateX(40px);
			}
			to {
				opacity: 1;
				transform: translateX(0);
			}
		}

		.animate-fade-up {
			animation: fadeInUp 0.8s ease-out forwards;
		}

		.animate-fade-left {
			animation: fadeInLeft 0.8s ease-out forwards;
		}

		.animate-fade-right {
			animation: fadeInRight 0.8s ease-out forwards;
		}

		.animate-delay-1 { opacity: 0; animation-delay: 0.2s; }
		.animate-delay-2 { opacity: 0; animation-delay: 0.4s; }
		.animate-delay-3 { opacity: 0; animation-delay: 0.6s; }








 /* === ОБЩИЕ СТИЛИ СЕКЦИЙ === */
		.section {
			position: relative;
			padding: 80px 0;
			overflow: hidden;
		}

		.section-header {
			position: relative;
			z-index: 2;
			margin-bottom: 60px;
			text-align: center;
		}

		.section-badge {
			display: inline-block;
			margin-bottom: 20px;
			border-radius: 25px;
			padding: 8px 25px;
			color: var(--white);
			font-weight: 600;
			font-size: 14px;
			letter-spacing: 0.5px;
			text-transform: uppercase;
			background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
		}

		.section-title {
			margin-bottom: 20px;
			color: var(--dark);
			font-weight: 800;
			font-size: 42px;
			line-height: 1.2;
		}

		.section-subtitle {
			max-width: 600px;
			margin: 0 auto;
			color: var(--gray);
			font-size: 18px;
			line-height: 1.5;
		}

		/* === СЕКЦИЯ ВРАЧИ === */
		.doctors-section {
			background: var(--white);
		}

		.doctors-section::before {
			content: '';
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			background: 
				radial-gradient(circle at 10% 20%, rgba(119,202,200,0.05) 0%, transparent 50%),
				radial-gradient(circle at 90% 80%, rgba(196,69,105,0.05) 0%, transparent 50%);
			pointer-events: none;
		}

		.doctors-slider-wrapper {
			position: relative;
			margin-top: 20px;
		}

		.doctors-swiper {
			padding: 20px 0 60px;
			overflow: visible;
		}

		.doctor-card {
			position: relative;
			display: flex;
			flex-direction: column;
			height: 100%;
			border-radius: 25px;
			padding: 40px 30px;
			box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
			overflow: hidden;
			text-align: center;
			background: var(--white);
			transition: all 0.4s ease;
		}

		.doctor-card::before {
			content: '';
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			opacity: 0;
			background: linear-gradient(135deg, var(--primary-teal), var(--accent-red));
			transition: opacity 0.3s ease;
		}

		.doctor-card:hover {
			box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
			transform: translateY(-10px);
		}

		.doctor-card:hover::before {
			opacity: 0.03;
		}

		.doctor-avatar {
			position: relative;
			z-index: 2;
			display: flex;
			justify-content: center;
			align-items: center;
			width: 120px;
			height: 120px;
			margin: 0 auto 25px;
			border-radius: 50%;
			color: var(--white);
			font-size: 48px;
			background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
		}

		.doctor-name {
			position: relative;
			z-index: 2;
			margin-bottom: 8px;
			color: var(--dark);
			font-weight: 700;
			font-size: 22px;
		}

		.doctor-specialty {
			position: relative;
			z-index: 2;
			margin-bottom: 15px;
			color: var(--primary-teal);
			font-weight: 600;
			font-size: 16px;
		}

		.doctor-experience {
			position: relative;
			z-index: 2;
			margin-bottom: 20px;
			color: var(--gray);
			font-size: 14px;
		}

		.doctor-achievements {
			position: relative;
			z-index: 2;
			flex-grow: 1;
			margin-bottom: 25px;
			list-style: none;
		}

		.doctor-achievements li {
			position: relative;
			margin-bottom: 8px;
			padding-left: 20px;
			color: var(--gray);
			font-size: 13px;
		}

		.doctor-achievements li::before {
			content: '✓';
			position: absolute;
			left: 0;
			color: var(--primary-teal);
			font-weight: bold;
		}

		.doctor-contact {
			position: relative;
			z-index: 2;
			display: inline-flex;
			align-items: center;
			gap: 8px;
			border-radius: 25px;
			padding: 12px 20px;
			color: var(--white);
			font-weight: 600;
			font-size: 14px;
			text-decoration: none;
			background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
			transition: all 0.3s ease;
		}

		.doctor-contact:hover {
			color: var(--white);
			background: linear-gradient(135deg, var(--dark-teal), #4a7c7a);
			transform: translateY(-2px);
		}

		/* Swiper Navigation */
		.swiper-button-next,
		.swiper-button-prev {
			width: 50px;
			height: 50px;
			margin-top: -25px;
			border-radius: 50%;
			box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
			color: var(--primary-teal);
			background: var(--white);
			transition: all 0.3s ease;
		}

		.swiper-button-next:hover,
		.swiper-button-prev:hover {
			color: var(--white);
			background: var(--primary-teal);
			transform: scale(1.1);
		}

		.swiper-button-next::after,
		.swiper-button-prev::after {
			font-weight: bold;
			font-size: 18px;
		}

		/* Swiper Pagination */
		.doctors-swiper .swiper-pagination {
			bottom: 20px;
		}

		.doctors-swiper .swiper-pagination-bullet {
			width: 12px;
			height: 12px;
			opacity: 1;
			background: rgba(119, 202, 200, 0.3);
			transition: all 0.3s ease;
		}

		.doctors-swiper .swiper-pagination-bullet-active {
			background: var(--primary-teal);
			transform: scale(1.3);
		}

		/* Doctor specializations with different avatars */
		.doctor-avatar-img {
            width: 120px;
            height: 120px;
            border-radius: 90px;
            object-fit: cover;
            object-position: top;
        }
		.doctor-avatar.psychiatrist {
			background: linear-gradient(135deg, #6c5ce7, #a29bfe);
		}

		.doctor-avatar.therapist {
			background: linear-gradient(135deg, #fd79a8, #e84393);
		}

		.doctor-avatar.rehabilitation {
			background: linear-gradient(135deg, #00b894, #00cec9);
		}

		.doctor-avatar.detox {
			background: linear-gradient(135deg, #fdcb6e, #e17055);
		}

		.doctor-avatar.chief {
			background: linear-gradient(135deg, #74b9ff, #0984e3);
		}

		/* === СЕКЦИЯ ШАГИ К ВЫЗДОРОВЛЕНИЮ === */
		.recovery-section {
			color: var(--white);
			background: linear-gradient(135deg, var(--primary-teal) 0%, var(--dark-teal) 100%);
		}

		.recovery-section::before {
			content: '';
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			background: 
				radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
				radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
			pointer-events: none;
		}

		.recovery-section .section-badge {
			background: rgba(255, 255, 255, 0.15);
			backdrop-filter: blur(10px);
		}

		.recovery-section .section-title,
		.recovery-section .section-subtitle {
			color: var(--white);
		}

		.recovery-steps {
			position: relative;
			z-index: 2;
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
			gap: 30px;
			margin-top: 20px;
		}

		.recovery-step {
			position: relative;
			border: 1px solid rgba(255, 255, 255, 0.1);
			border-radius: 20px;
			padding: 35px 25px;
			overflow: hidden;
			background: rgba(255, 255, 255, 0.1);
			backdrop-filter: blur(10px);
			transition: all 0.4s ease;
		}

		.recovery-step::before {
			content: '';
			position: absolute;
			top: 0;
			left: -100%;
			width: 100%;
			height: 100%;
			background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);
			transition: left 0.6s ease;
		}

		.recovery-step:hover {
			box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
			background: rgba(255, 255, 255, 0.15);
			transform: translateY(-5px);
		}

		.recovery-step:hover::before {
			left: 100%;
		}

		.step-number {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 60px;
			height: 60px;
			margin: 0 auto 20px;
			border-radius: 50%;
			color: var(--primary-teal);
			font-weight: 800;
			font-size: 24px;
			background: var(--white);
		}

		.step-title {
			margin-bottom: 15px;
			font-weight: 700;
			font-size: 20px;
			text-align: center;
		}

		.step-description {
			opacity: 0.9;
			font-size: 15px;
			line-height: 1.6;
			text-align: center;
		}

		.step-features {
			margin-top: 20px;
			list-style: none;
		}

		.step-features li {
			position: relative;
			margin-bottom: 10px;
			padding-left: 20px;
			opacity: 0.8;
			font-size: 14px;
		}

		.step-features li::before {
			content: '→';
			position: absolute;
			left: 0;
			color: var(--white);
			font-weight: bold;
		}

		/* === CTA СЕКЦИЯ === */
		.cta-banner {
			margin-top: 60px;
			border: 1px solid rgba(255, 255, 255, 0.1);
			border-radius: 20px;
			padding: 40px;
			text-align: center;
			background: rgba(255, 255, 255, 0.1);
			backdrop-filter: blur(10px);
		}

		.cta-title {
			margin-bottom: 15px;
			color: var(--white);
			font-weight: 700;
			font-size: 28px;
		}

		.cta-subtitle {
			margin-bottom: 30px;
			opacity: 0.9;
			font-size: 16px;
		}

		.cta-buttons {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			gap: 20px;
		}

		.cta-primary {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			border-radius: 50px;
			padding: 16px 32px;
			color: var(--primary-teal) !important;
			font-weight: 600;
			font-size: 16px;
			text-decoration: none;
			background: var(--white);
			transition: all 0.3s ease;
		}

		.cta-primary:hover {
			box-shadow: 0 8px 25px rgba(255, 255, 255, 0.3);
			color: var(--primary-teal) !important;
			background: rgba(255, 255, 255, 0.9);
			transform: translateY(-2px);
		}

		.cta-secondary {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			border: 2px solid rgba(255, 255, 255, 0.5);
			border-radius: 50px;
			padding: 14px 32px;
			color: var(--white) !important;
			font-weight: 600;
			font-size: 16px;
			text-decoration: none;
			background: transparent;
			transition: all 0.3s ease;
		}

		.cta-secondary:hover {
			border-color: var(--white);
			color: var(--white) !important;
			background: rgba(255, 255, 255, 0.1);
		}

		/* === RESPONSIVE === */
		@media (max-width: 768px) {
			.section {
				padding: 60px 0;
			}

			.section-title {
				font-size: 32px;
			}

			.section-subtitle {
				font-size: 16px;
			}

			.doctors-swiper {
				padding: 15px 0 50px;
			}

			.doctor-card {
				padding: 30px 25px;
			}

			.swiper-button-next,
			.swiper-button-prev {
				width: 40px;
				height: 40px;
				margin-top: -20px;
			}

			.swiper-button-next::after,
			.swiper-button-prev::after {
				font-size: 16px;
			}

			.recovery-steps {
				grid-template-columns: 1fr;
				gap: 25px;
			}

			.recovery-step {
				padding: 30px 20px;
			}

			.cta-banner {
				padding: 30px 25px;
			}

			.cta-title {
				font-size: 24px;
			}

			.cta-buttons {
				flex-direction: column;
				gap: 15px;
			}

			.cta-primary,
			.cta-secondary {
				justify-content: center;
				text-align: center;
			}
		}

		@media (max-width: 480px) {
			.container {
				padding: 0 15px;
			}

			.section {
				padding: 50px 0;
			}

			.section-header {
				margin-bottom: 40px;
			}

			.section-title {
				font-size: 28px;
			}

			.doctor-avatar {
				width: 100px;
				height: 100px;
				font-size: 40px;
			}

			.doctor-name {
				font-size: 20px;
			}

			.doctors-swiper {
				padding: 10px 0 40px;
			}

			.swiper-button-next,
			.swiper-button-prev {
				width: 35px;
				height: 35px;
				margin-top: -17px;
			}

			.swiper-button-next::after,
			.swiper-button-prev::after {
				font-size: 14px;
			}

			.step-number {
				width: 50px;
				height: 50px;
				font-size: 20px;
			}

			.step-title {
				font-size: 18px;
			}

			.cta-banner {
				padding: 25px 20px;
			}
		}

		/* === ANIMATIONS === */
		@keyframes fadeInUp {
			from {
				opacity: 0;
				transform: translateY(40px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		.animate-fade-up {
			animation: fadeInUp 0.8s ease-out forwards;
		}

		.animate-delay-1 { opacity: 0; animation-delay: 0.2s; }
		.animate-delay-2 { opacity: 0; animation-delay: 0.4s; }
		.animate-delay-3 { opacity: 0; animation-delay: 0.6s; }
		.animate-delay-4 { opacity: 0; animation-delay: 0.8s; }

		

/* === HERO BANNER БАЗОВЫЕ СТИЛИ === */
.hero-banner {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 100vh;
	margin-bottom: 0;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
	overflow: hidden;
}

.hero-banner::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	background: linear-gradient(45deg, rgba(0,0,0,0.4), rgba(0,0,0,0.2));
}

.hero-content {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1fr 400px;
	align-items: center;
	gap: 60px;
	width: 100%;
	padding: 80px 0;
}

.hero-text {
	color: var(--white);
}

.hero-badge {
	display: inline-block;
	margin-bottom: 20px;
	border-radius: 25px;
	padding: 8px 20px;
	color: var(--white);
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	background: rgba(255, 255, 255, 0.15);
	backdrop-filter: blur(10px);
}

.hero-icon {
	display: block;
	margin-bottom: 25px;
	color: var(--white);
	font-size: 3.5rem;
	filter: drop-shadow(0 6px 12px rgba(0,0,0,0.4));
}

.hero-title {
	margin-bottom: 25px;
	font-weight: 800;
	font-size: 2.8rem;
	line-height: 1.2;
	letter-spacing: -1px;
	text-shadow: 3px 3px 6px rgba(0,0,0,0.7);
}

.hero-subtitle {
	max-width: 500px;
	margin-bottom: 40px;
	opacity: 0.95;
	font-weight: 400;
	font-size: 1.2rem;
	line-height: 1.5;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

/* === HERO FORM === */
.hero-form {
	position: relative;
	border-radius: 20px;
	padding: 40px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
	background: var(--white);
}

.hero-form::before {
	content: '';
	position: absolute;
	top: -2px;
	right: -2px;
	bottom: -2px;
	left: -2px;
	z-index: -1;
	
	border-radius: 22px;
}

.form-title {
	margin-bottom: 25px;
	color: var(--dark);
	font-weight: 700;
	font-size: 22px;
	line-height: 1.3;
	text-align: center;
}

.form-subtitle {
	margin-bottom: 30px;
	color: var(--gray);
	font-size: 14px;
	text-align: center;
}

.input-group {
	position: relative;
	margin-bottom: 20px;
}

.input-group i {
	position: absolute;
	top: 50%;
	left: 18px;
	z-index: 1;
	color: var(--primary-teal);
	font-size: 16px;
	transform: translateY(-50%);
}

.input-group input {
	width: 100%;
	border: 2px solid #e9ecef;
	border-radius: 50px;
	padding: 16px 20px 16px 55px;
	font-size: 15px;
	background: var(--white);
	transition: all 0.3s ease;
}

.input-group input:focus {
	border-color: var(--primary-teal);
	box-shadow: 0 0 20px rgba(119, 202, 200, 0.2);
	outline: none;
	transform: translateY(-1px);
}

.submit-btn {
	width: 100%;
	margin-top: 10px;
	border: none;
	border-radius: 50px;
	padding: 16px 30px;
	color: var(--white);
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	transition: all 0.3s ease;
	cursor: pointer;
}

.submit-btn:hover {
	box-shadow: 0 8px 25px rgba(196, 69, 105, 0.4);
	background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
	transform: translateY(-2px);
}

.form-note {
	margin-top: 15px;
	color: var(--gray);
	font-size: 12px;
	line-height: 1.4;
	text-align: center;
}

.guarantee-badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 15px;
	margin-top: 20px;
}

.guarantee-badge {
	display: flex;
	align-items: center;
	gap: 8px;
	border-radius: 15px;
	padding: 8px 12px;
	color: var(--gray);
	font-size: 12px;
	background: var(--bg-light);
}

.guarantee-badge i {
	color: var(--primary-teal);
}

/* === CTA BUTTONS === */
.hero-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 40px;
}

.btn-primary {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	border: none;
	border-radius: 50px;
	padding: 15px 15px;
	box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
	color: var(--white);
	font-weight: 700;
	font-size: 1.1rem;
	letter-spacing: 0.5px;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.4s ease;
	cursor: pointer;
}

.btn-secondary {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	border: 2px solid rgba(255, 255, 255, 0.3);
	border-radius: 50px;
	padding: 16px 32px;
	color: var(--white);
	font-weight: 600;
	font-size: 1.1rem;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
	transition: all 0.4s ease;
	cursor: pointer;
}

.btn-primary:hover {
	box-shadow: 0 12px 35px rgba(255, 107, 53, 0.6);
	background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	transform: translateY(-3px) scale(1.02);
}

.btn-secondary:hover {
	border-color: var(--white);
	box-shadow: 0 8px 25px rgba(255, 255, 255, 0.2);
	background: rgba(255, 255, 255, 0.2);
	transform: translateY(-3px) scale(1.02);
}

.phone-number {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	border-radius: 50px;
	padding: 16px 30px;
	box-shadow: 0 6px 20px rgba(0, 184, 148, 0.4);
    color: var(--dark);
	font-weight: 700;
	font-size: 1.2rem;
	letter-spacing: 0.5px;
	text-decoration: none;
	text-transform: uppercase;
    background: linear-gradient(135deg, var(--bg-light), #fff);
	transition: all 0.4s ease;
}

.phone-number:hover {
	box-shadow: 0 10px 30px rgba(0, 184, 148, 0.6);
	transform: translateY(-3px) scale(1.02);
}


/* === ДЕКОРАТИВНЫЕ SVG ЭЛЕМЕНТЫ === */
.hero-detox::after {
	content: '';
	position: absolute;
	top: 10%;
	right: 5%;
	z-index: 1;
	width: 120px;
	height: 120px;
	opacity: 0.1;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='rgba(255,255,255,0.1)'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7 13.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM12 17.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM17 13.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5z'/%3E%3C/svg%3E") no-repeat center;
	background-size: contain;
	animation: float 8s ease-in-out infinite;
}

.hero-withdrawal::after {
	content: '';
	position: absolute;
	top: 15%;
	right: 8%;
	z-index: 1;
	width: 100px;
	height: 100px;
	opacity: 0.1;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='rgba(255,255,255,0.1)'%3E%3Cpath d='M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z'/%3E%3C/svg%3E") no-repeat center;
	background-size: contain;
	animation: pulse-rotate 6s ease-in-out infinite;
}

.hero-hospital::after {
	content: '';
	position: absolute;
	top: 20%;
	right: 10%;
	z-index: 1;
	width: 110px;
	height: 110px;
	opacity: 0.1;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='rgba(255,255,255,0.1)'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/%3E%3C/svg%3E") no-repeat center;
	background-size: contain;
	animation: float 10s ease-in-out infinite;
}

/* === АНИМАЦИИ === */
@keyframes float {
	0%, 100% { transform: translateY(0) rotate(0deg); }
	25% { transform: translateY(-15px) rotate(3deg); }
	75% { transform: translateY(-8px) rotate(-2deg); }
}

@keyframes pulse-rotate {
	0%, 100% { transform: rotate(0deg) scale(1); }
	50% { transform: rotate(180deg) scale(1.05); }
}

.btn-urgent {
	animation: urgent-pulse 2.5s infinite;
}

@keyframes urgent-pulse {
	0% { 
		box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
		transform: scale(1);
	}
	50% { 
		box-shadow: 0 12px 35px rgba(255, 107, 53, 0.7);
		transform: scale(1.01);
	}
	100% { 
		box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
		transform: scale(1);
	}
}

@keyframes bounce {
	0%, 20%, 50%, 80%, 100% { transform: translateX(-50%) translateY(0); }
	40% { transform: translateX(-50%) translateY(-8px); }
	60% { transform: translateX(-50%) translateY(-4px); }
}

/* === АДАПТИВНОСТЬ === */
@media (max-width: 1024px) {
	.hero-content {
		grid-template-columns: 1fr 350px;
		gap: 40px;
	}

	.hero-title {
		font-size: 2.4rem;
	}

	.hero-subtitle {
		font-size: 1.1rem;
	}
}

@media (max-width: 768px) {
	.hero-banner {
		min-height: 100vh;
	}
	
	.hero-content {
		grid-template-columns: 1fr;
		gap: 40px;
		padding: 60px 0;
		text-align: center;
	}
	
	.hero-title {
		font-size: 2rem;
	}
	
	.hero-subtitle {
		margin-bottom: 30px;
		font-size: 1rem;
	}
	
	.hero-icon {
		margin-bottom: 20px;
		font-size: 2.8rem;
	}
	
	.hero-buttons {
		flex-direction: column;
		align-items: center;
		gap: 15px;
	}
	
	.btn-primary, .btn-secondary, .phone-number {
		justify-content: center;
		width: 100%;
		max-width: 300px;
		padding: 14px 28px;
		font-size: 1rem;
	}
	
	.hero-form {
		padding: 30px 25px;
	}

	.form-title {
		font-size: 20px;
	}

	.hero-detox::after,
	.hero-withdrawal::after,
	.hero-hospital::after {
		display: none;
	}
}

@media (max-width: 480px) {
	.hero-content {
		padding: 40px 0;
	}
	
	.hero-title {
		font-size: 1.6rem;
	}
	
	.hero-subtitle {
		font-size: 0.9rem;
	}

	.hero-icon {
		font-size: 2.2rem;
	}
	
	.btn-primary, .btn-secondary, .phone-number {
		padding: 12px 24px;
		font-size: 0.9rem;
	}

	.hero-form {
		padding: 25px 20px;
	}

	.form-title {
		font-size: 18px;
	}

	.input-group input {
		padding: 14px 18px 14px 50px;
		font-size: 14px;
	}

	.submit-btn {
		padding: 14px 25px;
		font-size: 15px;
	}
}
 /* === СЕКЦИЯ ВЫЕЗД НА ДОМ === */
	.home-visit-section {
		color: var(--white);
		background: linear-gradient(135deg, var(--primary-teal) 0%, var(--dark-teal) 100%);
	}

	.home-visit-section::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
			radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
		pointer-events: none;
	}

	.home-visit-section .section-badge {
		background: rgba(255, 255, 255, 0.15);
		backdrop-filter: blur(10px);
	}

	.home-visit-section .section-title,
	.home-visit-section .section-subtitle {
		color: var(--white);
	}

	.home-visit-content {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: 1fr 1fr;
		align-items: center;
		gap: 60px;
	}

	.home-visit-info {
		display: flex;
		flex-direction: column;
		gap: 30px;
	}

	.visit-feature {
		border: 1px solid rgba(255, 255, 255, 0.1);
		border-radius: 20px;
		padding: 30px;
		background: rgba(255, 255, 255, 0.1);
		backdrop-filter: blur(10px);
		transition: all 0.3s ease;
	}

	.visit-feature:hover {
		background: rgba(255, 255, 255, 0.15);
		transform: translateY(-5px);
	}

	.feature-icon {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 60px;
		height: 60px;
		margin-bottom: 20px;
		border-radius: 50%;
		color: var(--primary-teal);
		font-size: 24px;
		background: var(--white);
	}

	.feature-title {
		margin-bottom: 15px;
		color: var(--white);
		font-weight: 700;
		font-size: 20px;
	}

	.feature-description {
		opacity: 0.9;
		color: var(--white);
		font-size: 15px;
		line-height: 1.6;
	}

	.home-visit-form {
		position: relative;
		border-radius: 25px;
		padding: 40px;
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
		background: var(--white);
	}

	.form-title {
		margin-bottom: 30px;
		color: var(--dark);
		font-weight: 700;
		font-size: 24px;
		text-align: center;
	}

	.form-grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 20px;
		margin-bottom: 20px;
	}

	.input-group {
		position: relative;
	}

	.input-group.full-width {
		grid-column: 1 / -1;
	}

	.input-group i {
		position: absolute;
		top: 50%;
		left: 18px;
		z-index: 1;
		color: var(--primary-teal);
		font-size: 16px;
		transform: translateY(-50%);
	}

	.input-group input,
	.input-group select,
	.input-group textarea {
		width: 100%;
		border: 2px solid #e9ecef;
		border-radius: 25px;
		padding: 16px 20px 16px 55px;
		font-family: inherit;
		font-size: 15px;
		background: var(--white);
		transition: all 0.3s ease;
	}

	.input-group textarea {
		min-height: 120px;
		border-radius: 20px;
		padding-top: 16px;
		resize: vertical;
	}

	.input-group input:focus,
	.input-group select:focus,
	.input-group textarea:focus {
		border-color: var(--primary-teal);
		box-shadow: 0 0 20px rgba(119, 202, 200, 0.2);
		outline: none;
		transform: translateY(-1px);
	}

	.submit-btn {
		width: 100%;
		margin-top: 20px;
		border: none;
		border-radius: 50px;
		padding: 18px 30px;
		color: var(--white);
		font-weight: 600;
		font-size: 16px;
		letter-spacing: 0.5px;
		text-transform: uppercase;
		background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
		transition: all 0.3s ease;
		cursor: pointer;
	}

	.submit-btn:hover {
		box-shadow: 0 8px 25px rgba(196, 69, 105, 0.4);
		background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
		transform: translateY(-2px);
	}

	/* === СЕКЦИЯ ПАКЕТНЫЕ ПРЕДЛОЖЕНИЯ === */
	.packages-section {
		padding: 80px 0;
		background: var(--white);
	}

	.packages-section::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 10% 20%, rgba(119,202,200,0.05) 0%, transparent 50%),
			radial-gradient(circle at 90% 80%, rgba(196,69,105,0.05) 0%, transparent 50%);
		pointer-events: none;
	}

	.packages-grid {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
		gap: 40px;
		margin-top: 20px;
	}

	.package-card {
		position: relative;
		border: 2px solid transparent;
		border-radius: 25px;
		padding: 40px 30px;
		box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
		overflow: hidden;
		background: var(--white);
		transition: all 0.4s ease;
	}

	.package-card::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		height: 4px;
		background: linear-gradient(135deg, var(--primary-teal), var(--accent-red));
	}

	.package-card:hover {
		border-color: var(--primary-teal);
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
		transform: translateY(-10px);
	}

	.package-card.featured {
		border-color: var(--accent-red);
		transform: scale(1.05);
	}

	.package-card.featured::before {
		background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	}

	.package-badge {
		position: absolute;
		top: 20px;
		right: 20px;
		border-radius: 15px;
		padding: 6px 15px;
		color: var(--white);
		font-weight: 600;
		font-size: 12px;
		text-transform: uppercase;
		background: var(--accent-red);
	}

	.package-header {
		margin-bottom: 30px;
		text-align: center;
	}

	.package-title {
		margin-bottom: 10px;
		color: var(--dark);
		font-weight: 700;
		font-size: 24px;
	}

	.package-description {
		margin-bottom: 20px;
		color: var(--gray);
		font-size: 14px;
	}

	.package-price {
		display: flex;
		justify-content: center;
		align-items: baseline;
		gap: 10px;
		margin-bottom: 30px;
	}

	.price-amount {
		color: var(--accent-red);
		font-weight: 800;
		font-size: 36px;
	}

	.price-currency {
		color: var(--gray);
		font-weight: 600;
		font-size: 20px;
	}

	.price-period {
		color: var(--gray);
		font-size: 14px;
	}

	.package-features {
		margin-bottom: 30px;
		list-style: none;
	}

	.package-features li {
		display: flex;
		align-items: center;
		gap: 12px;
		border-bottom: 1px solid rgba(119, 202, 200, 0.1);
		padding: 10px 0;
		color: var(--dark);
		font-size: 15px;
	}

	.package-features li:last-child {
		border-bottom: none;
	}

	.feature-check {
		display: flex;
		flex-shrink: 0;
		justify-content: center;
		align-items: center;
		width: 20px;
		height: 20px;
		border-radius: 50%;
		color: var(--white);
		font-size: 12px;
		background: var(--success-green);
	}

	.package-btn {
		display: inline-block;
		width: 100%;
		border: none;
		border-radius: 50px;
		padding: 16px 30px;
		color: var(--white);
		font-weight: 600;
		font-size: 16px;
		letter-spacing: 0.5px;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
		transition: all 0.3s ease;
		cursor: pointer;
	}

	.package-btn:hover {
		box-shadow: 0 8px 25px rgba(119, 202, 200, 0.4);
		color: var(--white);
		background: linear-gradient(135deg, var(--dark-teal), #4a7c7a);
		transform: translateY(-2px);
	}

	.package-card.featured .package-btn {
		background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	}

	.package-card.featured .package-btn:hover {
		box-shadow: 0 8px 25px rgba(196, 69, 105, 0.4);
		background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
	}

	/* === CTA БЛОК ВНИЗУ ПАКЕТОВ === */
	.packages-cta {
		position: relative;
		margin-top: 60px;
		border-radius: 25px;
		padding: 50px 40px;
		overflow: hidden;
		text-align: center;
		background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	}

	.packages-cta::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
			radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
		pointer-events: none;
	}

	.cta-content {
		position: relative;
		z-index: 2;
	}

	.cta-title {
		margin-bottom: 15px;
		color: var(--white);
		font-weight: 700;
		font-size: 28px;
	}

	.cta-subtitle {
		max-width: 600px;
		margin-right: auto;
		margin-bottom: 30px;
		margin-left: auto;
		opacity: 0.9;
		color: var(--white);
		font-size: 18px;
	}

	.cta-buttons {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 20px;
		margin-bottom: 20px;
	}

	.cta-phone-btn {
		display: inline-flex;
		align-items: center;
		gap: 12px;
		border-radius: 50px;
		padding: 16px 32px;
		box-shadow: 0 8px 25px rgba(255, 255, 255, 0.2);
		color: var(--primary-teal);
		font-weight: 700;
		font-size: 18px;
		text-decoration: none;
		background: var(--white);
		transition: all 0.3s ease;
	}

	.cta-phone-btn:hover {
		box-shadow: 0 12px 35px rgba(255, 255, 255, 0.3);
		color: var(--primary-teal);
		background: rgba(255, 255, 255, 0.95);
		transform: translateY(-2px);
	}

	.cta-callback-btn {
		display: inline-flex;
		align-items: center;
		gap: 12px;
		border: 2px solid rgba(255, 255, 255, 0.3);
		border-radius: 50px;
		padding: 16px 32px;
		color: var(--white);
		font-weight: 600;
		font-size: 16px;
		background: rgba(255, 255, 255, 0.1);
		backdrop-filter: blur(10px);
		transition: all 0.3s ease;
		cursor: pointer;
	}

	.cta-callback-btn:hover {
		border-color: var(--white);
		background: rgba(255, 255, 255, 0.2);
		transform: translateY(-2px);
	}

	.cta-note {
		margin: 0;
		opacity: 0.8;
		color: var(--white);
		font-size: 14px;
	}

	/* === АДАПТИВНОСТЬ === */
	@media (max-width: 992px) {
		.section-title {
			font-size: 36px;
		}

		.section-subtitle {
			font-size: 16px;
		}

		.home-visit-content {
			grid-template-columns: 1fr;
			gap: 40px;
		}

		.form-grid {
			grid-template-columns: 1fr;
			gap: 15px;
		}

		.packages-grid {
			grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
			gap: 30px;
		}

		.package-card.featured {
			transform: none;
		}
	}

	@media (max-width: 768px) {
		.section {
			padding: 60px 0;
		}

		.section-header {
			margin-bottom: 40px;
		}

		.section-title {
			font-size: 28px;
		}

		.home-visit-form {
			padding: 30px 25px;
		}

		.visit-feature {
			padding: 25px 20px;
		}

		.feature-icon {
			width: 50px;
			height: 50px;
			font-size: 20px;
		}

		.feature-title {
			font-size: 18px;
		}

		.packages-grid {
			grid-template-columns: 1fr;
			gap: 25px;
		}

		.package-card {
			padding: 30px 25px;
		}

		.package-title {
			font-size: 22px;
		}

		.price-amount {
			font-size: 32px;
		}
	}

	@media (max-width: 480px) {
		.container {
			padding: 0 15px;
		}

		.section {
			padding: 50px 0;
		}

		.section-title {
			font-size: 24px;
		}

		.home-visit-form {
			padding: 25px 20px;
		}

		.form-title {
			font-size: 20px;
		}

		.input-group input,
		.input-group select,
		.input-group textarea {
			padding: 14px 18px 14px 50px;
			font-size: 14px;
		}

		.submit-btn {
			padding: 16px 25px;
			font-size: 15px;
		}

		.package-card {
			padding: 25px 20px;
		}

		.package-title {
			font-size: 20px;
		}

		.price-amount {
			font-size: 28px;
		}

		.package-features li {
			font-size: 14px;
		}
	}
   /* === СЕКЦИЯ СЕРТИФИКАТЫ === */
	.certificates-section {
		background: var(--white);
	}

	.certificates-section::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 10% 20%, rgba(119,202,200,0.05) 0%, transparent 50%),
			radial-gradient(circle at 90% 80%, rgba(196,69,105,0.05) 0%, transparent 50%);
		pointer-events: none;
	}

	.certificates-content {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: 1fr 1fr;
		align-items: center;
		gap: 60px;
	}

	.certificates-grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	.certificate-card {
		position: relative;
		border: 2px solid transparent;
		border-radius: 20px;
		padding: 20px;
		box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
		overflow: hidden;
		background: var(--white);
		transition: all 0.4s ease;
	}

	.certificate-card::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		height: 4px;
		background: linear-gradient(135deg, var(--primary-teal), var(--success-green));
	}

	.certificate-card:hover {
		border-color: var(--primary-teal);
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
		transform: translateY(-10px);
	}

	.certificate-image {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 300px;
		margin-bottom: 20px;
		border-radius: 15px;
		overflow: hidden;
		background: linear-gradient(135deg, var(--bg-light), #e9ecef);
	}

	.certificate-image i {
		opacity: 0.3;
		color: var(--primary-teal);
		font-size: 48px;
	}

	.certificate-title {
		margin-bottom: 10px;
		color: var(--dark);
		font-weight: 700;
		font-size: 16px;
		text-align: center;
	}

	.certificate-description {
		color: var(--gray);
		font-size: 14px;
		line-height: 1.4;
		text-align: center;
	}

	.certificates-info {
		padding-left: 20px;
	}

	.certificates-info h3 {
		margin-bottom: 25px;
		color: var(--dark);
		font-weight: 700;
		font-size: 28px;
		line-height: 1.2;
	}

	.info-list {
		margin-bottom: 30px;
		list-style: none;
	}

	.info-list li {
		display: flex;
		align-items: flex-start;
		gap: 15px;
		margin-bottom: 20px;
		font-size: 16px;
		line-height: 1.5;
	}

	.info-icon {
		display: flex;
		flex-shrink: 0;
		justify-content: center;
		align-items: center;
		width: 24px;
		height: 24px;
		margin-top: 2px;
		border-radius: 50%;
		color: var(--white);
		font-size: 12px;
		background: var(--primary-teal);
	}

	.cta-button {
		display: inline-flex;
		align-items: center;
		gap: 10px;
		border: none;
		border-radius: 50px;
		padding: 16px 32px;
		color: var(--white);
		font-weight: 600;
		font-size: 16px;
		letter-spacing: 0.5px;
		text-decoration: none;
		text-transform: uppercase;
		background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
		transition: all 0.3s ease;
		cursor: pointer;
	}

	.cta-button:hover {
		box-shadow: 0 8px 25px rgba(196, 69, 105, 0.4);
		color: var(--white);
		background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
		transform: translateY(-2px);
	}

	/* === СЕКЦИЯ FAQ === */
	.faq-section {
		background: linear-gradient(135deg, var(--bg-light) 0%, var(--white) 100%);
	}

	.faq-container {
		position: relative;
		z-index: 2;
		max-width: 800px;
		margin: 0 auto;
	}

	.faq-item {
		margin-bottom: 20px;
		border-radius: 15px;
		box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
		overflow: hidden;
		background: var(--white);
		transition: all 0.3s ease;
	}

	.faq-item:hover {
		box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
	}

	.faq-question {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		border: none;
		padding: 25px 30px;
		color: var(--dark);
		font-weight: 600;
		font-size: 18px;
		text-align: left;
		background: var(--white);
		transition: all 0.3s ease;
		cursor: pointer;
	}

	.faq-question:hover {
		background: var(--bg-light);
	}

	.faq-question.active {
		color: var(--white);
		background: var(--primary-teal);
	}

	.faq-icon {
		font-size: 20px;
		transition: transform 0.3s ease;
	}

	.faq-question.active .faq-icon {
		transform: rotate(180deg);
	}

	.faq-answer {
		max-height: 0;
		overflow: hidden;
		background: var(--white);
		transition: max-height 0.3s ease;
	}

	.faq-answer.active {
		max-height: 200px;
	}

	.faq-answer-content {
		border-top: 1px solid var(--bg-light);
		padding: 25px 30px;
		color: var(--gray);
		font-size: 16px;
		line-height: 1.6;
	}

	/* === СЕКЦИЯ ОТЗЫВЫ === */
	.reviews-section {
		background: var(--white);
	}

	.reviews-section::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 20% 30%, rgba(119,202,200,0.03) 0%, transparent 50%),
			radial-gradient(circle at 80% 70%, rgba(196,69,105,0.03) 0%, transparent 50%);
		pointer-events: none;
	}

	.reviews-grid {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
		gap: 30px;
	}

	.review-card {
		position: relative;
		border-radius: 20px;
		border-left: 4px solid var(--primary-teal);
		padding: 30px;
		box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
		background: var(--white);
		transition: all 0.4s ease;
	}

	.review-card:hover {
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
		transform: translateY(-5px);
	}

	.review-header {
		display: flex;
		align-items: center;
		gap: 15px;
		margin-bottom: 20px;
	}

	.review-avatar {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		color: var(--white);
		font-weight: bold;
		font-size: 20px;
		background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	}

	.review-info h4 {
		margin-bottom: 4px;
		color: var(--dark);
		font-weight: 600;
		font-size: 16px;
	}

	.review-date {
		color: var(--gray);
		font-size: 12px;
	}

	.review-rating {
		display: flex;
		gap: 2px;
		margin-bottom: 15px;
	}

	.star {
		color: #ffc107;
		font-size: 16px;
	}

	.review-text {
		color: var(--gray);
		font-size: 15px;
		font-style: italic;
		line-height: 1.6;
	}

	.review-quote {
		position: absolute;
		top: 20px;
		right: 20px;
		opacity: 0.3;
		color: var(--primary-teal);
		font-size: 24px;
	}

	/* === АДАПТИВНОСТЬ === */
	@media (max-width: 992px) {
		.section-title {
			font-size: 36px;
		}

		.section-subtitle {
			font-size: 16px;
		}

		.certificates-content {
			grid-template-columns: 1fr;
			gap: 40px;
		}

		.certificates-info {
			padding-left: 0;
			text-align: center;
		}

		.certificates-grid {
			grid-template-columns: 1fr;
			gap: 20px;
		}

		.reviews-grid {
			grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
			gap: 25px;
		}
	}

	@media (max-width: 768px) {
		.section {
			padding: 60px 0;
		}

		.section-header {
			margin-bottom: 40px;
		}

		.section-title {
			font-size: 28px;
		}

		.certificates-info h3 {
			font-size: 24px;
		}

		.faq-question {
			padding: 20px 25px;
			font-size: 16px;
		}

		.faq-answer-content {
			padding: 20px 25px;
			font-size: 15px;
		}

		.review-card {
			padding: 25px 20px;
		}

		.reviews-grid {
			grid-template-columns: 1fr;
		}
	}

	@media (max-width: 480px) {
		.container {
			padding: 0 15px;
		}

		.section {
			padding: 50px 0;
		}

		.section-title {
			font-size: 24px;
		}

		.certificates-grid {
			grid-template-columns: 1fr;
		}

		.certificate-image {
			height: 150px;
		}

		.certificate-image i {
			font-size: 36px;
		}

		.faq-question {
			padding: 18px 20px;
			font-size: 15px;
		}

		.faq-answer-content {
			padding: 18px 20px;
			font-size: 14px;
		}

		.review-header {
			gap: 12px;
		}

		.review-avatar {
			width: 45px;
			height: 45px;
			font-size: 18px;
		}
	}

		 /* === СЕКЦИЯ ОТЗЫВЫ === */
	.reviews-section {
		position: relative;
		padding: 80px 0;
		overflow: hidden;
		background: var(--white);
	}

	.reviews-section::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 10% 20%, rgba(119,202,200,0.05) 0%, transparent 50%),
			radial-gradient(circle at 90% 80%, rgba(196,69,105,0.05) 0%, transparent 50%);
		pointer-events: none;
	}

	.section-header {
		position: relative;
		z-index: 2;
		margin-bottom: 60px;
		text-align: center;
	}

	.section-badge {
		display: inline-block;
		margin-bottom: 20px;
		border-radius: 25px;
		padding: 8px 25px;
		color: var(--white);
		font-weight: 600;
		font-size: 14px;
		letter-spacing: 0.5px;
		text-transform: uppercase;
		background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	}

	.section-title {
		margin-bottom: 20px;
		color: var(--dark);
		font-weight: 800;
		font-size: 42px;
		line-height: 1.2;
	}

	.section-subtitle {
		max-width: 600px;
		margin: 0 auto;
		color: var(--gray);
		font-size: 18px;
		line-height: 1.5;
	}

	/* === SWIPER СТИЛИ === */
	.reviews-swiper {
		position: relative;
		z-index: 2;
		padding: 20px 0 60px;
		overflow: visible;
	}

	.reviews-swiper .swiper-slide {
		display: flex;
		height: auto;
	}

	.review-card {
		position: relative;
		display: flex;
		flex-direction: column;
		height: 100%;
		border-radius: 20px;
		border-left: 4px solid var(--primary-teal);
		padding: 35px 30px;
		box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
		background: var(--white);
		transition: all 0.4s ease;
	}

	.review-card:hover {
		border-left-color: var(--accent-red);
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
		transform: translateY(-8px);
	}

	.review-quote {
		position: absolute;
		top: 20px;
		right: 25px;
		opacity: 0.2;
		color: var(--primary-teal);
		font-size: 32px;
	}

	.review-header {
		display: flex;
		align-items: center;
		gap: 18px;
		margin-bottom: 25px;
	}

	.review-avatar {
		display: flex;
		flex-shrink: 0;
		justify-content: center;
		align-items: center;
		width: 60px;
		height: 60px;
		border-radius: 50%;
		color: var(--white);
		font-weight: bold;
		font-size: 24px;
		background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	}

	.review-info h4 {
		margin-bottom: 5px;
		color: var(--dark);
		font-weight: 600;
		font-size: 18px;
	}

	.review-date {
		margin-bottom: 8px;
		color: var(--gray);
		font-size: 13px;
	}

	.review-rating {
		display: flex;
		gap: 3px;
		margin-bottom: 20px;
	}

	.star {
		color: #ffc107;
		font-size: 16px;
	}

	.review-text {
		position: relative;
		flex-grow: 1;
		color: var(--gray);
		font-size: 16px;
		font-style: italic;
		line-height: 1.6;
	}

	.review-text::before {
		content: '"';
		position: absolute;
		top: -10px;
		left: -10px;
		opacity: 0.3;
		color: var(--primary-teal);
		font-family: serif;
		font-size: 48px;
	}

	.review-text::after {
		content: '"';
		position: absolute;
		right: 0;
		bottom: -30px;
		opacity: 0.3;
		color: var(--primary-teal);
		font-family: serif;
		font-size: 48px;
	}

	/* Специальные стили для разных типов отзывов */
	.review-card.featured {
		border-left-color: var(--accent-red);
		background: linear-gradient(135deg, var(--white) 0%, #fefefe 100%);
	}

	.review-card.featured .review-avatar {
		background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	}

	.review-card.verified::after {
		content: 'Проверено';
		position: absolute;
		top: 15px;
		left: 15px;
		z-index: 1;
		border-radius: 10px;
		padding: 4px 10px;
		color: var(--white);
		font-weight: 600;
		font-size: 10px;
		text-transform: uppercase;
		background: var(--success-green);
	}

	/* === SWIPER NAVIGATION === */
	.swiper-button-next,
	.swiper-button-prev {
		width: 55px;
		height: 55px;
		margin-top: -27px;
		border: 2px solid transparent;
		border-radius: 50%;
		box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
		color: var(--primary-teal);
		background: var(--white);
		transition: all 0.3s ease;
	}

	.swiper-button-next:hover,
	.swiper-button-prev:hover {
		border-color: var(--white);
		color: var(--white);
		background: var(--primary-teal);
		transform: scale(1.1);
	}

	.swiper-button-next::after,
	.swiper-button-prev::after {
		font-weight: bold;
		font-size: 20px;
	}

	/* === SWIPER PAGINATION === */
	.reviews-swiper .swiper-pagination {
		bottom: 15px;
	}

	.reviews-swiper .swiper-pagination-bullet {
		width: 14px;
		height: 14px;
		border: 2px solid transparent;
		opacity: 1;
		background: rgba(119, 202, 200, 0.3);
		transition: all 0.3s ease;
	}

	.reviews-swiper .swiper-pagination-bullet-active {
		border-color: var(--white);
		box-shadow: 0 4px 15px rgba(119, 202, 200, 0.4);
		background: var(--primary-teal);
		transform: scale(1.3);
	}

	/* === СТАТИСТИКА ОТЗЫВОВ === */
	.reviews-stats {
		position: relative;
		margin-top: 50px;
		border-radius: 25px;
		padding: 40px;
		overflow: hidden;
		color: var(--white);
		text-align: center;
		background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	}

	.reviews-stats::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
			radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
		pointer-events: none;
	}

	.stats-content {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
		gap: 40px;
	}

	.stat-item {
		text-align: center;
	}

	.stat-number {
		display: block;
		margin-bottom: 10px;
		color: var(--white);
		font-weight: 800;
		font-size: 48px;
	}

	.stat-label {
		opacity: 0.9;
		font-size: 16px;
	}

	/* === АДАПТИВНОСТЬ === */
	@media (max-width: 992px) {
		.section-title {
			font-size: 36px;
		}

		.section-subtitle {
			font-size: 16px;
		}

		.review-card {
			padding: 30px 25px;
		}

		.swiper-button-next,
		.swiper-button-prev {
			width: 45px;
			height: 45px;
			margin-top: -22px;
		}

		.swiper-button-next::after,
		.swiper-button-prev::after {
			font-size: 18px;
		}

		.stats-content {
			grid-template-columns: repeat(2, 1fr);
			gap: 30px;
		}

		.stat-number {
			font-size: 42px;
		}
	}

	@media (max-width: 768px) {
		.reviews-section {
			padding: 60px 0;
		}

		.section-header {
			margin-bottom: 40px;
		}

		.section-title {
			font-size: 28px;
		}

		.review-card {
			padding: 25px 20px;
		}

		.review-header {
			gap: 15px;
		}

		.review-avatar {
			width: 50px;
			height: 50px;
			font-size: 20px;
		}

		.review-info h4 {
			font-size: 16px;
		}

		.review-text {
			font-size: 15px;
		}

		.swiper-button-next,
		.swiper-button-prev {
			width: 40px;
			height: 40px;
			margin-top: -20px;
		}

		.swiper-button-next::after,
		.swiper-button-prev::after {
			font-size: 16px;
		}

		.reviews-stats {
			padding: 30px 25px;
		}

		.stats-content {
			grid-template-columns: 1fr;
			gap: 25px;
		}

		.stat-number {
			font-size: 36px;
		}
	}

	@media (max-width: 480px) {
		.container {
			padding: 0 15px;
		}

		.reviews-section {
			padding: 50px 0;
		}

		.section-title {
			font-size: 24px;
		}

		.review-text::before,
		.review-text::after {
			display: none;
		}

		.review-quote {
			top: 15px;
			right: 20px;
			font-size: 24px;
		}
	}
	/* === СЕКЦИЯ ГАЛЕРЕЯ === */
	.gallery-section {
		position: relative;
		padding: 80px 0;
		overflow: hidden;
		background: var(--white);
	}

	.gallery-section::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: 
			radial-gradient(circle at 10% 20%, rgba(119,202,200,0.05) 0%, transparent 50%),
			radial-gradient(circle at 90% 80%, rgba(196,69,105,0.05) 0%, transparent 50%);
		pointer-events: none;
	}

	.section-header {
		position: relative;
		z-index: 2;
		margin-bottom: 60px;
		text-align: center;
	}

	.section-badge {
		display: inline-block;
		margin-bottom: 20px;
		border-radius: 25px;
		padding: 8px 25px;
		color: var(--white);
		font-weight: 600;
		font-size: 14px;
		letter-spacing: 0.5px;
		text-transform: uppercase;
		background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	}

	.section-title {
		margin-bottom: 20px;
		color: var(--dark);
		font-weight: 800;
		font-size: 42px;
		line-height: 1.2;
	}

	.section-subtitle {
		max-width: 600px;
		margin: 0 auto;
		color: var(--gray);
		font-size: 18px;
		line-height: 1.5;
	}

	.gallery-grid {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 40px;
	}

	.gallery-block {
		position: relative;
		border: 2px solid transparent;
		border-radius: 25px;
		padding: 30px;
		box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
		overflow: hidden;
		background: var(--white);
		transition: all 0.4s ease;
	}

	.gallery-block::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		height: 4px;
		background: linear-gradient(135deg, var(--primary-teal), var(--success-green));
	}

	.gallery-block:hover {
		border-color: var(--primary-teal);
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
		transform: translateY(-5px);
	}

	.gallery-block.featured::before {
		background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	}

	.gallery-block.featured:hover {
		border-color: var(--accent-red);
	}

	.gallery-title {
		position: relative;
		margin-bottom: 25px;
		color: var(--dark);
		font-weight: 700;
		font-size: 24px;
		text-align: center;
	}

	.gallery-title::after {
		content: '';
		position: absolute;
		bottom: -8px;
		left: 50%;
		width: 60px;
		height: 3px;
		border-radius: 2px;
		background: var(--primary-teal);
		transform: translateX(-50%);
	}

	.gallery-block.featured .gallery-title::after {
		background: var(--accent-red);
	}

	.gallery-images {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
	}

	.gallery-item {
		position: relative;
		border-radius: 15px;
		overflow: hidden;
		background: var(--bg-light);
		transition: all 0.3s ease;
		cursor: pointer;
		aspect-ratio: 1;
	}

	.gallery-item:hover {
		box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
		transform: scale(1.05);
	}

	.gallery-item img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: all 0.3s ease;
	}

	.gallery-item:hover img {
		transform: scale(1.1);
	}

	.gallery-item::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
		opacity: 0;
		background: linear-gradient(45deg, transparent, rgba(119, 202, 200, 0.1));
		transition: opacity 0.3s ease;
	}

	.gallery-item:hover::before {
		opacity: 1;
	}

	.gallery-item::after {
		content: '\f065';
		position: absolute;
		top: 50%;
		left: 50%;
		z-index: 2;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		opacity: 0;
		color: var(--white);
		font-family: 'Font Awesome 6 Free';
		font-weight: 900;
		font-size: 20px;
		background: rgba(119, 202, 200, 0.9);
		transition: all 0.3s ease;
		transform: translate(-50%, -50%);
	}

	.gallery-item:hover::after {
		opacity: 1;
		transform: translate(-50%, -50%) scale(1.1);
	}

	/* Placeholder для изображений */
	.gallery-placeholder {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		border-radius: 15px;
		color: var(--gray);
		font-size: 24px;
		background: linear-gradient(135deg, var(--bg-light), #e9ecef);
	}

	/* === МОДАЛЬНОЕ ОКНО === */
	.gallery-modal {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10000;
		display: none;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		padding: 20px;
		background: rgba(0, 0, 0, 0.9);
		backdrop-filter: blur(10px);
	}

	.gallery-modal.show {
		display: flex;
	}

	.modal-content {
		position: relative;
		max-width: 450px;
		max-height: 90vh;
		border-radius: 15px;
		box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5);
		overflow: hidden;
	}

	.modal-image {
		width: 100%;
		height: 100%;
		object-fit: contain;
		background: var(--white);
	}

	.modal-close {
		position: absolute;
		top: 20px;
		right: 20px;
		z-index: 1;
		width: 50px;
		height: 50px;
		border: none;
		border-radius: 50%;
		color: var(--white);
		font-size: 20px;
		background: rgba(0, 0, 0, 0.7);
		transition: all 0.3s ease;
		cursor: pointer;
	}

	.modal-close:hover {
		background: var(--accent-red);
		transform: scale(1.1);
	}

	.modal-nav {
		position: absolute;
		top: 50%;
		width: 60px;
		height: 60px;
		border: none;
		border-radius: 50%;
		color: var(--white);
		font-size: 24px;
		background: rgba(0, 0, 0, 0.7);
		transition: all 0.3s ease;
		transform: translateY(-50%);
		cursor: pointer;
	}

	.modal-nav:hover {
		background: var(--primary-teal);
		transform: translateY(-50%) scale(1.1);
	}

	.modal-prev {
		left: 20px;
	}

	.modal-next {
		right: 20px;
	}

	/* === АДАПТИВНОСТЬ === */
	@media (max-width: 992px) {
		.gallery-grid {
			grid-template-columns: 1fr;
			gap: 30px;
		}

		.section-title {
			font-size: 36px;
		}

		.section-subtitle {
			font-size: 16px;
		}

		.gallery-images {
			grid-template-columns: repeat(2, 1fr);
			gap: 12px;
		}
	}

	@media (max-width: 768px) {
		.gallery-section {
			padding: 60px 0;
		}

		.section-header {
			margin-bottom: 40px;
		}

		.section-title {
			font-size: 28px;
		}

		.gallery-block {
			padding: 25px 20px;
		}

		.gallery-title {
			font-size: 20px;
		}

		.gallery-images {
			gap: 10px;
		}

		.modal-nav {
			width: 50px;
			height: 50px;
			font-size: 20px;
		}

		.modal-close {
			top: 15px;
			right: 15px;
			width: 45px;
			height: 45px;
			font-size: 18px;
		}
	}

	@media (max-width: 480px) {
		.container {
			padding: 0 15px;
		}

		.gallery-section {
			padding: 50px 0;
		}

		.section-title {
			font-size: 24px;
		}

		.gallery-block {
			padding: 20px 15px;
		}

		.gallery-title {
			margin-bottom: 20px;
			font-size: 18px;
		}

		.gallery-images {
			grid-template-columns: 1fr 1fr;
			gap: 8px;
		}

		.modal-content {
			max-width: 95vw;
			max-height: 85vh;
		}
	}
	
	/* === ОСНОВНАЯ СТАТЬЯ === */
article[itemscope] {
	position: relative;
	overflow: hidden;
	background: var(--white);
}

/* === СЕКЦИИ ТЕКСТА === */
.section__text {
	position: relative;
	z-index: 2;
	max-width: 900px;
	margin: 0 auto;
	padding: 60px 20px;
}

.section__text:first-child {
	padding-top: 80px;
}

.section__text:last-child {
	padding-bottom: 80px;
}

/* Декоративные элементы между секциями */
.section__text + .section__text::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: 100px;
	height: 4px;
	margin-bottom: 40px;
	border-radius: 2px;
	background: linear-gradient(135deg, var(--primary-teal), var(--accent-red));
	transform: translateX(-50%);
}

/* === ТИПОГРАФИКА === */
.section__text h1 {
	position: relative;
	margin-bottom: 2rem;
	color: var(--dark);
	font-weight: 800;
	font-size: 2.5rem;
	line-height: 1.2;
	text-align: center;
}

.section__text h1::after {
	content: '';
	position: absolute;
	bottom: -15px;
	left: 50%;
	width: 80px;
	height: 4px;
	border-radius: 2px;
	background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	transform: translateX(-50%);
}

.section__text h2 {
	position: relative;
	margin: 3rem 0 1.5rem;
	padding-left: 25px;
	color: var(--dark);
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.3;
}

.section__text h2::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 4px;
	height: 30px;
	border-radius: 2px;
	background: linear-gradient(135deg, var(--primary-teal), var(--accent-red));
	transform: translateY(-50%);
}

.section__text h3 {
	position: relative;
	margin: 2.5rem 0 1rem;
	color: var(--dark);
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.4;
}

.section__text h3::before {
	content: '→';
	margin-right: 10px;
	color: var(--primary-teal);
	font-weight: bold;
	font-size: 1.2rem;
}

.section__text h4 {
	margin: 2rem 0 1rem;
	color: var(--dark-teal);
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.4;
}

.section__text p {
	margin-bottom: 1.5rem;
	color: var(--gray);
	font-size: 1.1rem;
	line-height: 1.7;
	text-align: justify;
}

.section__text p:first-of-type {
	color: var(--dark);
	font-weight: 500;
	font-size: 1.2rem;
}

.section__text strong {
	color: var(--dark);
	font-weight: 700;
}

.section__text em {
	color: var(--primary-teal);
	font-style: italic;
}

/* === СПИСКИ === */
.section__text ul,
.section__text ol {
	margin: 2rem 0;
	padding-left: 0;
	list-style: none;
}

.section__text ul li,
.section__text ol li {
	position: relative;
	border-bottom: 1px solid rgba(119, 202, 200, 0.1);
	padding: 12px 0 12px 35px;
	color: var(--gray);
	font-size: 1.1rem;
	line-height: 1.6;
}

.section__text ul li:last-child,
.section__text ol li:last-child {
	border-bottom: none;
}

.section__text ul li::before {
	content: '✓';
	position: absolute;
	top: 50%;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	color: var(--white);
	font-weight: bold;
	font-size: 12px;
	background: var(--primary-teal);
	transform: translateY(-50%);
}

.section__text ol {
	counter-reset: list-counter;
}

.section__text ol li {
	counter-increment: list-counter;
}

.section__text ol li::before {
	content: counter(list-counter);
	position: absolute;
	top: 50%;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	color: var(--white);
	font-weight: bold;
	font-size: 14px;
	background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	transform: translateY(-50%);
}

/* === БЛОКИ ЦИТАТ === */
.section__text blockquote {
	position: relative;
	margin: 3rem 0;
	border-radius: 15px;
	border-left: 5px solid var(--primary-teal);
	padding: 30px;
	box-shadow: 0 10px 30px rgba(119, 202, 200, 0.1);
	background: linear-gradient(135deg, var(--bg-light), var(--white));
}

.section__text blockquote::before {
	content: '"';
	position: absolute;
	top: 10px;
	left: 20px;
	opacity: 0.3;
	color: var(--primary-teal);
	font-family: serif;
	font-size: 4rem;
}

.section__text blockquote p {
	margin: 0;
	padding-left: 30px;
	font-size: 1.2rem;
	font-style: italic;
}

/* === ССЫЛКИ === */
.section__text a {
	position: relative;
	color: var(--primary-teal);
	font-weight: 600;
	text-decoration: none;
	transition: all 0.3s ease;
}

.section__text a::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 2px;
	background: linear-gradient(135deg, var(--primary-teal), var(--accent-red));
	transition: width 0.3s ease;
}

.section__text a:hover {
	color: var(--dark-teal);
}

.section__text a:hover::after {
	width: 100%;
}

/* === СЕКЦИЯ АВТОРА === */
.rewby {
	position: relative;
	max-width: 900px;
	margin: 60px auto;
	border-radius: 25px;
	padding: 50px 40px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
	overflow: hidden;
	background: linear-gradient(135deg, var(--bg-light) 0%, var(--white) 100%);
}

.rewby::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 4px;
	background: linear-gradient(135deg, var(--primary-teal), var(--accent-red));
}

/* === ПРОСМОТРЫ === */
.autor--views {
	margin-bottom: 40px;
	border: 1px solid rgba(119, 202, 200, 0.2);
	border-radius: 15px;
	padding: 20px;
	text-align: center;
	background: rgba(119, 202, 200, 0.08);
}

.Views--text {
	color: var(--primary-teal);
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}

/* === АВТОР === */
.autor {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-bottom: 30px;
	border-radius: 20px;
	padding: 25px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	background: var(--white);
	transition: all 0.3s ease;
}

.autor:hover {
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
	transform: translateY(-2px);
}

.autor:last-child {
	justify-content: flex-end;
	margin-bottom: 0;
	padding: 20px 0 0;
	box-shadow: none;
	background: transparent;
}

.autor--img {
	width: 80px;
	height: 80px;
	border: 3px solid var(--primary-teal);
	border-radius: 50%;
	object-fit: cover;
	transition: all 0.3s ease;
}

.autor:hover .autor--img {
	border-color: var(--accent-red);
	transform: scale(1.05);
}

.autor--about {
	margin: 0 0 5px 0;
	color: var(--gray);
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}

.autor--name {
	margin: 0;
	color: var(--dark);
	font-weight: 700;
	font-size: 18px;
	line-height: 1.3;
}

.autor a[itemprop="url"] {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	margin-left: auto;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
	transition: all 0.3s ease;
}

.autor a[itemprop="url"]:hover {
	background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
	transform: scale(1.1);
}

.autor-arrow {
	filter: brightness(0) invert(1);
	transition: transform 0.3s ease;
}

.autor a[itemprop="url"]:hover .autor-arrow {
	transform: translateX(2px);
}

/* === ДАТЫ === */
.main {
	text-align: right;
}

.main p {
	margin: 8px 0;
	color: var(--gray);
	font-weight: 500;
	font-size: 14px;
}

.main time {
	border-radius: 8px;
	padding: 4px 8px;
	color: var(--primary-teal);
	font-weight: 700;
	font-size: 13px;
	background: rgba(119, 202, 200, 0.1);
}

/* === АДАПТИВНОСТЬ === */
@media (max-width: 768px) {
	.section__text {
		padding: 40px 15px;
	}

	.section__text h1 {
		font-size: 2rem;
	}

	.section__text h2 {
		margin: 2rem 0 1rem;
		font-size: 1.5rem;
	}

	.section__text h3 {
		font-size: 1.25rem;
	}

	.section__text p {
		font-size: 1rem;
		text-align: left;
	}

	.rewby {
		margin: 40px 15px;
		padding: 30px 20px;
	}

	.autor {
		flex-direction: column;
		gap: 15px;
		text-align: center;
	}

	.autor:last-child {
		flex-direction: column;
		align-items: center;
	}

	.autor a[itemprop="url"] {
		margin: 0;
	}

	.main {
		text-align: center;
	}

	.section__text blockquote {
		margin: 2rem 0;
		padding: 20px;
	}

	.section__text blockquote::before {
		top: 5px;
		left: 15px;
		font-size: 3rem;
	}

	.section__text blockquote p {
		padding-left: 20px;
		font-size: 1.1rem;
	}
}

@media (max-width: 480px) {
	.section__text {
		padding: 30px 10px;
	}

	.section__text h1 {
		font-size: 1.75rem;
	}

	.section__text h2 {
		padding-left: 20px;
		font-size: 1.25rem;
	}

	.section__text h2::before {
		height: 25px;
	}

	.section__text p {
		font-size: 0.95rem;
	}

	.rewby {
		margin: 30px 10px;
		padding: 25px 15px;
	}

	.autor--img {
		width: 60px;
		height: 60px;
	}

	.autor--name {
		font-size: 16px;
	}

	.Views--text {
		font-size: 14px;
	}

	.section__text ul li,
	.section__text ol li {
		padding: 10px 0 10px 30px;
		font-size: 1rem;
	}

	.section__text ul li::before {
		width: 18px;
		height: 18px;
		font-size: 11px;
	}

	.section__text ol li::before {
		width: 22px;
		height: 22px;
		font-size: 13px;
	}
}
     /* === СЕКЦИЯ ПРАЙС === */
        .pricing-section {
            position: relative;
            padding: 80px 0;
            overflow: hidden;
            background: var(--white);
        }

        .pricing-section::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: 
                radial-gradient(circle at 10% 20%, rgba(119,202,200,0.05) 0%, transparent 50%),
                radial-gradient(circle at 90% 80%, rgba(196,69,105,0.05) 0%, transparent 50%);
            pointer-events: none;
        }

        .section-header {
            position: relative;
            z-index: 2;
            margin-bottom: 60px;
            text-align: center;
        }

        .section-badge {
            display: inline-block;
            margin-bottom: 20px;
            border-radius: 25px;
            padding: 8px 25px;
            color: var(--white);
            font-weight: 600;
            font-size: 14px;
            letter-spacing: 0.5px;
            text-transform: uppercase;
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
        }

        .section-title {
            margin-bottom: 20px;
            color: var(--dark);
            font-weight: 800;
            font-size: 42px;
            line-height: 1.2;
        }

        .section-subtitle {
            max-width: 600px;
            margin: 0 auto;
            color: var(--gray);
            font-size: 18px;
            line-height: 1.5;
        }

        /* === ПРАЙС ТАБЛИЦА === */
        .pricing-catalog {
            position: relative;
            z-index: 2;
        }

        .pricing-category {
            margin-bottom: 40px;
            border: 2px solid transparent;
            border-radius: 20px;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
            overflow: hidden;
            background: var(--white);
            transition: all 0.4s ease;
        }

        .pricing-category:hover {
            border-color: var(--primary-teal);
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
            transform: translateY(-5px);
        }

        .category-header {
            position: relative;
            padding: 25px 30px;
            overflow: hidden;
            color: var(--white);
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
        }

        .category-header::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: 
                radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
                radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
            pointer-events: none;
        }

        .category-title {
            position: relative;
            z-index: 1;
            display: flex;
            align-items: center;
            gap: 12px;
            margin: 0;
            font-weight: 700;
            font-size: 24px;
        }

        .category-icon {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            font-size: 18px;
            background: rgba(255, 255, 255, 0.2);
        }

        /* Специальные стили для разных категорий */
        .category-urgent .category-header {
            background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
        }

        .category-premium .category-header {
            background: linear-gradient(135deg, var(--deep-purple), #5a4fcf);
        }

        .pricing-services {
            padding: 0;
        }

        .pricing-service {
            display: grid;
            grid-template-columns: 1fr auto auto;
            align-items: center;
            border-bottom: 1px solid rgba(119, 202, 200, 0.1);
            padding: 20px 30px;
            transition: all 0.3s ease;
        }

        .pricing-service:last-child {
            border-bottom: none;
        }

        .pricing-service:hover {
            background: rgba(119, 202, 200, 0.05);
            transform: translateX(5px);
        }

        .service-name {
            padding-right: 20px;
            color: var(--dark);
            font-weight: 500;
            font-size: 16px;
        }

        .service-price {
            min-width: 120px;
            padding: 0 20px;
            color: var(--accent-red);
            font-weight: 700;
            font-size: 18px;
            text-align: right;
        }

        .service-free {
            color: var(--success-green);
            font-weight: 800;
            text-transform: uppercase;
        }

        .service-action {
            min-width: 120px;
            text-align: center;
        }

        .order-btn {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            border: none;
            border-radius: 20px;
            padding: 8px 16px;
            color: var(--white);
            font-weight: 600;
            font-size: 13px;
            text-decoration: none;
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .order-btn:hover {
            box-shadow: 0 5px 15px rgba(119, 202, 200, 0.4);
            color: var(--white);
            background: linear-gradient(135deg, var(--dark-teal), #4a7c7a);
            transform: translateY(-2px);
        }

        .urgent-btn {
            background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
        }

        .urgent-btn:hover {
            box-shadow: 0 5px 15px rgba(196, 69, 105, 0.4);
            background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
        }

        /* === CTA БЛОК === */
        .pricing-cta {
            position: relative;
            margin-top: 50px;
            border-radius: 25px;
            padding: 40px;
            overflow: hidden;
            color: var(--white);
            text-align: center;
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
        }

        .pricing-cta::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: 
                radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
                radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
            pointer-events: none;
        }

        .cta-content {
            position: relative;
            z-index: 2;
        }

        .cta-title {
            margin-bottom: 15px;
            font-weight: 700;
            font-size: 28px;
        }

        .cta-subtitle {
            margin-bottom: 25px;
            opacity: 0.9;
            font-size: 16px;
        }

        .cta-buttons {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 20px;
        }

        .cta-phone {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            border-radius: 50px;
            padding: 12px 24px;
            color: var(--primary-teal);
            font-weight: 700;
            font-size: 16px;
            text-decoration: none;
            background: var(--white);
            transition: all 0.3s ease;
        }

        .cta-phone:hover {
            box-shadow: 0 8px 25px rgba(255, 255, 255, 0.3);
            color: var(--primary-teal);
            background: rgba(255, 255, 255, 0.95);
            transform: translateY(-2px);
        }

        .cta-consultation {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            border: 2px solid rgba(255, 255, 255, 0.3);
            border-radius: 50px;
            padding: 10px 24px;
            color: var(--white);
            font-weight: 600;
            font-size: 16px;
            text-decoration: none;
            background: rgba(255, 255, 255, 0.1);
            transition: all 0.3s ease;
        }

        .cta-consultation:hover {
            border-color: var(--white);
            color: var(--white);
            background: rgba(255, 255, 255, 0.2);
            transform: translateY(-2px);
        }

        /* === АДАПТИВНОСТЬ === */
        @media (max-width: 992px) {
            .section-title {
                font-size: 36px;
            }

            .section-subtitle {
                font-size: 16px;
            }

            .pricing-service {
                grid-template-columns: 1fr;
                gap: 10px;
                padding: 15px 20px;
                text-align: center;
            }

            .service-price {
                margin: 5px 0;
                padding: 0;
                text-align: center;
            }

            .cta-buttons {
                flex-direction: column;
                align-items: center;
            }
        }

        @media (max-width: 768px) {
            .pricing-section {
                padding: 60px 0;
            }

            .section-header {
                margin-bottom: 40px;
            }

            .section-title {
                font-size: 28px;
            }

            .category-header {
                padding: 20px 25px;
            }

            .category-title {
                font-size: 20px;
            }

            .pricing-service {
                padding: 12px 20px;
            }

            .service-name {
                font-size: 15px;
            }

            .service-price {
                font-size: 16px;
            }

            .pricing-cta {
                padding: 30px 25px;
            }

            .cta-title {
                font-size: 24px;
            }
        }

        @media (max-width: 480px) {
            .container {
                padding: 0 15px;
            }

            .pricing-section {
                padding: 50px 0;
            }

            .section-title {
                font-size: 24px;
            }

            .category-header {
                padding: 10px 10px;
            }

            .category-title {
                font-size: 18px;
            }

            .pricing-service {
                padding: 10px 15px;
            }

            .service-name {
                font-size: 14px;
            }

            .order-btn {
                padding: 6px 12px;
                font-size: 12px;
            }
        }
       /* === СЕКЦИЯ АКЦИИ === */
        .promotions-section {
            position: relative;
            padding: 80px 0;
            overflow: hidden;
            background: linear-gradient(135deg, var(--bg-light) 0%, var(--white) 100%);
        }

        .promotions-section::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: 
                radial-gradient(circle at 15% 25%, rgba(196,69,105,0.08) 0%, transparent 50%),
                radial-gradient(circle at 85% 75%, rgba(119,202,200,0.08) 0%, transparent 50%);
            pointer-events: none;
        }

        /* === ЗАГОЛОВОК СЕКЦИИ === */
        .section-header {
            position: relative;
            z-index: 2;
            margin-bottom: 60px;
            text-align: center;
        }

        .section-badge {
            display: inline-block;
            margin-bottom: 25px;
            border-radius: 25px;
            padding: 10px 30px;
            box-shadow: 0 8px 25px rgba(0, 184, 148, 0.3);
            color: var(--white);
            font-weight: 600;
            font-size: 14px;
            letter-spacing: 0.5px;
            text-transform: uppercase;
            background: linear-gradient(135deg, var(--success-green), #00a085);
            animation: gentle-pulse 3s ease-in-out infinite;
        }

        @keyframes gentle-pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.02); }
        }

        .section-title {
            margin-bottom: 20px;
            color: var(--dark);
            font-weight: 800;
            font-size: 48px;
            line-height: 1.2;
        }

        .section-subtitle {
            max-width: 700px;
            margin: 0 auto;
            color: var(--gray);
            font-size: 20px;
            line-height: 1.5;
        }

        /* === СЕТКА АКЦИЙ === */
        .promotions-grid {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
        }

        /* === КАРТОЧКА АКЦИИ === */
        .promotion-card {
            position: relative;
            border: 2px solid transparent;
            border-radius: 25px;
            padding: 0;
            box-shadow: 0 15px 50px rgba(0, 0, 0, 0.08);
            overflow: hidden;
            background: var(--white);
            transition: all 0.4s ease;
        }

        .promotion-card::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            left: 0;
            height: 6px;
            background: linear-gradient(135deg, var(--success-green), var(--primary-teal));
            transition: all 0.3s ease;
        }

        .promotion-card.featured::before {
            background: linear-gradient(135deg, var(--accent-red), var(--urgent-orange));
        }

        .promotion-card.limited::before {
            background: linear-gradient(135deg, var(--deep-purple), var(--accent-red));
        }

        .promotion-card:hover {
            border-color: var(--success-green);
            box-shadow: 0 25px 70px rgba(0, 0, 0, 0.15);
            transform: translateY(-10px);
        }

        .promotion-card.featured:hover {
            border-color: var(--accent-red);
        }

        .promotion-card.limited:hover {
            border-color: var(--deep-purple);
        }

        /* === ЗАГОЛОВОК КАРТОЧКИ === */
        .promotion-header {
            position: relative;
            padding: 30px;
            color: var(--white);
            text-align: center;
            background: linear-gradient(135deg, var(--success-green), #00a085);
        }

        .promotion-card.featured .promotion-header {
            background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
        }

        .promotion-card.limited .promotion-header {
            background: linear-gradient(135deg, var(--deep-purple), var(--primary-teal));
        }

        .promotion-badge {
            position: absolute;
            top: 15px;
            right: 15px;
            border-radius: 12px;
            padding: 6px 12px;
            color: var(--white);
            font-weight: 600;
            font-size: 11px;
            text-transform: uppercase;
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(10px);
        }

        .promotion-icon {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 70px;
            height: 70px;
            margin: 0 auto 20px;
            border-radius: 50%;
            color: var(--white);
            font-size: 28px;
            background: rgba(255, 255, 255, 0.15);
            backdrop-filter: blur(10px);
        }

        .promotion-title {
            margin-bottom: 10px;
            font-weight: 700;
            font-size: 24px;
            line-height: 1.3;
        }

        .promotion-subtitle {
            opacity: 0.9;
            font-weight: 500;
            font-size: 16px;
        }

        /* === КОНТЕНТ КАРТОЧКИ === */
        .promotion-content {
            padding: 35px 30px 30px;
        }

        .promotion-description {
            margin-bottom: 25px;
            color: var(--gray);
            font-size: 16px;
            line-height: 1.6;
        }

        .promotion-features {
            margin-bottom: 25px;
            list-style: none;
        }

        .promotion-features li {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 8px 0;
            color: var(--dark);
            font-size: 15px;
        }

        .feature-check {
            display: flex;
            flex-shrink: 0;
            justify-content: center;
            align-items: center;
            width: 20px;
            height: 20px;
            border-radius: 50%;
            color: var(--white);
            font-size: 12px;
            background: var(--success-green);
        }

        .promotion-card.featured .feature-check {
            background: var(--accent-red);
        }

        .promotion-card.limited .feature-check {
            background: var(--deep-purple);
        }

        /* === ЦЕНОВОЙ БЛОК === */
        .promotion-pricing {
            position: relative;
            margin-bottom: 25px;
            border: 1px solid rgba(119, 202, 200, 0.2);
            border-radius: 15px;
            padding: 25px;
            text-align: center;
            background: linear-gradient(135deg, var(--bg-light), var(--white));
        }

        .original-price {
            margin-bottom: 5px;
            color: var(--gray);
            font-size: 16px;
            text-decoration: line-through;
        }

        .promo-price {
            display: flex;
            justify-content: center;
            align-items: baseline;
            gap: 8px;
            margin-bottom: 8px;
            color: var(--success-green);
            font-weight: 800;
            font-size: 36px;
        }

        .promotion-card.featured .promo-price {
            color: var(--accent-red);
        }

        .promotion-card.limited .promo-price {
            color: var(--deep-purple);
        }

        .price-currency {
            color: var(--gray);
            font-size: 20px;
        }

        .savings-badge {
            display: inline-block;
            border-radius: 10px;
            padding: 4px 12px;
            color: var(--white);
            font-weight: 600;
            font-size: 12px;
            text-transform: uppercase;
            background: var(--success-green);
        }

        .promotion-card.featured .savings-badge {
            background: var(--accent-red);
        }

        .promotion-card.limited .savings-badge {
            background: var(--deep-purple);
        }

        /* === ТАЙМЕР === */
        .promotion-timer {
            margin-bottom: 20px;
            border: 1px solid var(--urgent-orange);
            border-radius: 12px;
            padding: 15px;
            text-align: center;
            background: rgba(255, 107, 53, 0.1);
        }

        .timer-label {
            margin-bottom: 8px;
            color: var(--urgent-orange);
            font-weight: 600;
            font-size: 12px;
            text-transform: uppercase;
        }

        .timer-display {
            color: var(--dark);
            font-weight: 700;
            font-size: 18px;
        }

        /* === КНОПКИ ДЕЙСТВИЙ === */
        .promotion-actions {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .promo-btn-primary {
            display: inline-flex;
            flex: 1;
            justify-content: center;
            align-items: center;
            gap: 8px;
            border: none;
            border-radius: 50px;
            padding: 16px 25px;
            color: var(--white);
            font-weight: 600;
            font-size: 16px;
            letter-spacing: 0.5px;
            text-decoration: none;
            text-transform: uppercase;
            background: linear-gradient(135deg, var(--success-green), #00a085);
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .promotion-card.featured .promo-btn-primary {
            background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
        }

        .promotion-card.limited .promo-btn-primary {
            background: linear-gradient(135deg, var(--deep-purple), var(--primary-teal));
        }

        .promo-btn-primary:hover {
            box-shadow: 0 8px 25px rgba(0, 184, 148, 0.4);
            color: var(--white);
            background: linear-gradient(135deg, #00a085, #008f75);
            transform: translateY(-2px);
        }

        .promotion-card.featured .promo-btn-primary:hover {
            box-shadow: 0 8px 25px rgba(196, 69, 105, 0.4);
            background: linear-gradient(135deg, var(--dark-red), #8e2e3f);
        }

        .promotion-card.limited .promo-btn-primary:hover {
            box-shadow: 0 8px 25px rgba(108, 92, 231, 0.4);
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
        }

        .promo-btn-secondary {
            display: inline-flex;
            justify-content: center;
            align-items: center;
            gap: 8px;
            border: 2px solid var(--primary-teal);
            border-radius: 50px;
            padding: 14px 20px;
            color: var(--primary-teal);
            font-weight: 600;
            font-size: 14px;
            text-decoration: none;
            background: rgba(119, 202, 200, 0.1);
            transition: all 0.3s ease;
            cursor: pointer;
            white-space: nowrap;
        }

        .promo-btn-secondary:hover {
            color: var(--white);
            background: var(--primary-teal);
            transform: translateY(-2px);
        }

        /* === АДАПТИВНОСТЬ === */
        @media (max-width: 992px) {
            .promotions-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 30px;
            }

            .section-title {
                font-size: 36px;
            }

            .section-subtitle {
                font-size: 18px;
            }
        }

        @media (max-width: 768px) {
            .promotions-section {
                padding: 60px 0;
            }

            .promotions-grid {
                grid-template-columns: 1fr;
                gap: 25px;
            }

            .section-header {
                margin-bottom: 40px;
            }

            .section-title {
                font-size: 28px;
            }

            .promotion-header {
                padding: 25px 20px;
            }

            .promotion-content {
                padding: 25px 20px 20px;
            }

            .promotion-title {
                font-size: 20px;
            }

            .promo-price {
                font-size: 32px;
            }

            .promotion-actions {
                flex-direction: column;
            }
        }

        @media (max-width: 480px) {
            .container {
                padding: 0 15px;
            }

            .promotions-grid {
                grid-template-columns: 1fr;
                gap: 25px;
            }

            .section-title {
                font-size: 24px;
            }

            .promotion-header {
                padding: 20px 15px;
            }

            .promotion-content {
                padding: 20px 15px 15px;
            }

            .promotion-title {
                font-size: 18px;
            }

            .promo-price {
                font-size: 28px;
            }
        }


       /* === СЕТКА УСЛУГ === */
        .services-grid {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
        }

        /* === КАРТОЧКА УСЛУГИ === */
        .service-card {
            position: relative;
            border: 2px solid transparent;
            border-radius: 25px;
            padding: 40px 30px;
            box-shadow: 0 15px 50px rgba(0, 0, 0, 0.08);
            overflow: hidden;
            background: var(--white);
            transition: all 0.4s ease;
        }

        .service-card::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            left: 0;
            height: 6px;
            background: linear-gradient(135deg, var(--primary-teal), var(--success-green));
            transition: all 0.3s ease;
        }

        .service-card.urgent::before {
            background: linear-gradient(135deg, var(--urgent-orange), var(--accent-red));
        }

        .service-card.treatment::before {
            background: linear-gradient(135deg, var(--deep-purple), var(--primary-teal));
        }

        .service-card:hover {
            border-color: var(--primary-teal);
            box-shadow: 0 25px 70px rgba(0, 0, 0, 0.15);
            transform: translateY(-10px);
        }

        .service-card.urgent:hover {
            border-color: var(--urgent-orange);
        }

        .service-card.treatment:hover {
            border-color: var(--deep-purple);
        }

        /* === ИКОНКА УСЛУГИ === */
        .service-icon {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 80px;
            height: 80px;
            margin: 0 auto 25px;
            border-radius: 50%;
            box-shadow: 0 10px 30px rgba(119, 202, 200, 0.3);
            color: var(--white);
            font-size: 32px;
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
            transition: all 0.3s ease;
        }

        .service-card.urgent .service-icon {
            box-shadow: 0 10px 30px rgba(255, 107, 53, 0.3);
            background: linear-gradient(135deg, var(--urgent-orange), var(--accent-red));
        }

        .service-card.treatment .service-icon {
            box-shadow: 0 10px 30px rgba(108, 92, 231, 0.3);
            background: linear-gradient(135deg, var(--deep-purple), var(--primary-teal));
        }

        .service-card:hover .service-icon {
            transform: scale(1.1);
        }

        /* === КОНТЕНТ КАРТОЧКИ === */
        .service-header {
            margin-bottom: 30px;
            text-align: center;
        }

        .service-title {
            margin-bottom: 15px;
            color: var(--dark);
            font-weight: 700;
            font-size: 26px;
            line-height: 1.3;
        }

        .service-description {
            margin-bottom: 20px;
            color: var(--gray);
            font-size: 16px;
            line-height: 1.6;
        }

        .service-price {
            margin-bottom: 25px;
            border: 1px solid rgba(119, 202, 200, 0.2);
            border-radius: 15px;
            padding: 20px;
            text-align: center;
            background: linear-gradient(135deg, var(--bg-light), var(--white));
        }

        .price-label {
            margin-bottom: 8px;
            color: var(--gray);
            font-weight: 600;
            font-size: 14px;
            letter-spacing: 0.5px;
            text-transform: uppercase;
        }

        .price-amount {
            display: flex;
            justify-content: center;
            align-items: baseline;
            gap: 8px;
            color: var(--accent-red);
            font-weight: 800;
            font-size: 32px;
        }

        .price-from {
            color: var(--gray);
            font-weight: 600;
            font-size: 18px;
        }

        .price-currency {
            color: var(--gray);
            font-size: 20px;
        }

        /* === ПОДУСЛУГИ === */
        .service-options {
            margin-bottom: 30px;
        }

        .options-title {
            margin-bottom: 15px;
            color: var(--dark);
            font-weight: 600;
            font-size: 18px;
            text-align: center;
        }

        .options-list {
            list-style: none;
        }

        .option-item {
            margin-bottom: 12px;
        }

        .option-link {
            display: flex;
            align-items: center;
            gap: 12px;
            border: 1px solid transparent;
            border-radius: 12px;
            padding: 12px 15px;
            color: var(--dark);
            font-weight: 500;
            font-size: 15px;
            text-decoration: none;
            background: rgba(119, 202, 200, 0.05);
            transition: all 0.3s ease;
        }

        .option-link:hover {
            border-color: var(--dark-teal);
            color: var(--white);
            background: var(--primary-teal);
            transform: translateX(5px);
        }

        .option-icon {
            display: flex;
            flex-shrink: 0;
            justify-content: center;
            align-items: center;
            width: 20px;
            height: 20px;
            border-radius: 50%;
            color: var(--white);
            font-size: 10px;
            background: var(--primary-teal);
        }

        .option-link:hover .option-icon {
            color: var(--primary-teal);
            background: var(--white);
        }

        /* === КНОПКА "ПОКАЗАТЬ ЕЩЕ" === */
        .show-more-btn {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 8px;
            width: 100%;
            margin-top: 8px;
            border: 2px dashed var(--primary-teal);
            border-radius: 12px;
            padding: 12px 15px;
            color: var(--primary-teal);
            font-weight: 600;
            font-size: 14px;
            background: rgba(119, 202, 200, 0.1);
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .show-more-btn:hover {
            border-style: solid;
            color: var(--white);
            background: var(--primary-teal);
            transform: translateY(-1px);
        }

        .show-more-btn i {
            transition: transform 0.3s ease;
        }

        .show-more-btn.expanded i {
            transform: rotate(180deg);
        }

        /* === СКРЫТЫЕ ЭЛЕМЕНТЫ === */
        .option-item.hidden {
            display: none;
        }

        .option-item.show-animation {
            animation: slideInFromTop 0.3s ease-out forwards;
        }

        @keyframes slideInFromTop {
            from {
                max-height: 0;
                opacity: 0;
                transform: translateY(-10px);
            }
            to {
                max-height: 100px;
                opacity: 1;
                transform: translateY(0);
            }
        }

        

        .service-card.urgent .cta-primary {
            background: linear-gradient(135deg, var(--urgent-orange), var(--accent-red));
        }

        .service-card.urgent .cta-primary:hover {
            box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
            background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
        }

        .service-card.treatment .cta-primary {
            background: linear-gradient(135deg, var(--deep-purple), var(--primary-teal));
        }

        .service-card.treatment .cta-primary:hover {
            box-shadow: 0 8px 25px rgba(108, 92, 231, 0.4);
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
        }


        .cta-phone:hover {
            color: var(--white);
            background: var(--primary-teal);
            transform: translateY(-2px);
        }

        /* === ЭКСТРЕННАЯ ПОМОЩЬ === */
        .urgent-badge {
            position: absolute;
            top: 20px;
            right: 20px;
            border-radius: 15px;
            padding: 8px 15px;
            color: var(--white);
            font-weight: 600;
            font-size: 12px;
            text-transform: uppercase;
            background: var(--urgent-orange);
            animation: pulse 2s infinite;
        }

        @keyframes pulse {
            0% { transform: scale(1); }
            50% { transform: scale(1.05); }
            100% { transform: scale(1); }
        }

        /* === АДАПТИВНОСТЬ === */
        @media (max-width: 1200px) {
            .services-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 35px;
            }
        }

        @media (max-width: 992px) {
            .services-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 30px;
            }

            .section-title {
                font-size: 36px;
            }

            .section-subtitle {
                font-size: 18px;
            }
        }

        @media (max-width: 768px) {
            .services-section {
                padding: 60px 0;
            }

            .section-header {
                margin-bottom: 40px;
            }

            .section-title {
                font-size: 28px;
            }

            .service-card {
                padding: 30px 25px;
            }

            .service-icon {
                width: 70px;
                height: 70px;
                font-size: 28px;
            }

            .service-title {
                font-size: 22px;
            }

            .price-amount {
                font-size: 24px;
            }

            .service-cta {
                flex-direction: column;
            }

            .cta-primary {
                min-width: auto;
            }
        }

        @media (max-width: 480px) {
            .container {
                padding: 0 15px;
            }

            .services-grid {
                grid-template-columns: 1fr;
                gap: 25px;
            }

            .service-card {
                padding: 25px 20px;
            }

            .service-title {
                font-size: 20px;
            }

            .section-title {
                font-size: 24px;
            }

            .urgent-badge {
                top: 15px;
                right: 15px;
                padding: 6px 12px;
                font-size: 11px;
            }
        }



	/* === АНИМАЦИИ === */
	@keyframes fadeInUp {
		from {
			opacity: 0;
			transform: translateY(40px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}

	.animate-fade-up {
		animation: fadeInUp 0.8s ease-out forwards;
	}

	.animate-delay-1 { opacity: 0; animation-delay: 0.2s; }
	.animate-delay-2 { opacity: 0; animation-delay: 0.4s; }
	.animate-delay-3 { opacity: 0; animation-delay: 0.6s; }
	.animate-delay-4 { opacity: 0; animation-delay: 0.8s; }
	.animate-delay-5 { opacity: 0; animation-delay: 1s; }
	.animate-delay-6 { opacity: 0; animation-delay: 1.2s; }
	.animate-delay-7 { opacity: 0; animation-delay: 1.4s; }
	.animate-delay-8 { opacity: 0; animation-delay: 1.6s; }
	.animate-delay-9 { opacity: 0; animation-delay: 1.8s; }
	.doctors-swiper,
.doctors-swiper .swiper-wrapper,
.doctors-swiper .swiper-slide {
    height: auto !important;
    min-height: auto !important;
}



.doctors-swiper .doctor-card {
    opacity: 1 !important;
    transition: none !important;
    transform: none !important;
}
      /* === ОСНОВНОЙ КОНТЕЙНЕР === */
        .error-container {
            position: relative;
            width: 100%;
            max-width: 800px;
            margin:auto;
            padding: 40px 20px;
            text-align: center;
        }

        /* === ДЕКОРАТИВНЫЕ ЭЛЕМЕНТЫ === */
        .error-container::before {
            content: '';
            position: absolute;
            top: -50px;
            left: 10%;
            width: 120px;
            height: 120px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(119,202,200,0.1) 0%, transparent 70%);
            animation: float 8s ease-in-out infinite;
        }

        .error-container::after {
            content: '';
            position: absolute;
            right: 15%;
            bottom: -30px;
            width: 80px;
            height: 80px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(196,69,105,0.1) 0%, transparent 70%);
            animation: float 6s ease-in-out infinite reverse;
        }

        /* === ИКОНКА 404 === */
        .error-icon {
            position: relative;
            z-index: 2;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 150px;
            height: 150px;
            margin: 0 auto 40px;
            border-radius: 50%;
            box-shadow: 0 20px 60px rgba(119, 202, 200, 0.3);
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
            animation: pulse-scale 3s ease-in-out infinite;
        }

        .error-icon i {
            color: var(--white);
            font-size: 60px;
        }

        /* === НОМЕР 404 === */
        .error-number {
            position: relative;
            z-index: 2;
            margin-bottom: 30px;
            color: var(--primary-teal);
            font-weight: 800;
            font-size: 120px;
            line-height: 1;
            text-shadow: 0 4px 15px rgba(119, 202, 200, 0.3);
        }

        /* === ЗАГОЛОВОК === */
        .error-title {
            position: relative;
            z-index: 2;
            margin-bottom: 25px;
            color: var(--dark);
            font-weight: 700;
            font-size: 42px;
            line-height: 1.2;
        }

        /* === ОПИСАНИЕ === */
        .error-description {
            position: relative;
            z-index: 2;
            max-width: 600px;
            margin: 0 auto 50px;
            color: var(--gray);
            font-size: 18px;
            line-height: 1.6;
        }

        /* === КНОПКИ ДЕЙСТВИЙ === */
        .error-actions {
            position: relative;
            z-index: 2;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 25px;
            margin-bottom: 60px;
        }

        .btn-secondary {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            border: 2px solid var(--primary-teal);
            border-radius: 50px;
            padding: 16px 35px;
            color: var(--primary-teal);
            font-weight: 600;
            font-size: 16px;
            text-decoration: none;
            background: rgba(119, 202, 200, 0.1);
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .btn-secondary:hover {
            box-shadow: 0 8px 25px rgba(119, 202, 200, 0.3);
            color: var(--white);
            background: var(--primary-teal);
            transform: translateY(-3px);
        }

        /* === ПОЛЕЗНЫЕ ССЫЛКИ === */
        .helpful-links {
            position: relative;
            z-index: 2;
            border: 2px solid transparent;
            border-radius: 25px;
            padding: 40px 30px;
            box-shadow: 0 15px 50px rgba(0, 0, 0, 0.08);
            background: linear-gradient(135deg, var(--bg-light), var(--white));
            transition: all 0.3s ease;
        }

        .helpful-links:hover {
            border-color: var(--primary-teal);
            transform: translateY(-2px);
        }

        .helpful-links::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            left: 0;
            height: 4px;
            border-radius: 25px 25px 0 0;
            background: linear-gradient(135deg, var(--primary-teal), var(--accent-red));
        }

        .links-title {
            margin-bottom: 30px;
            color: var(--dark);
            font-weight: 700;
            font-size: 24px;
            text-align: center;
        }

        .links-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 20px;
        }

        .link-item {
            display: flex;
            align-items: center;
            gap: 15px;
            border: 1px solid rgba(119, 202, 200, 0.2);
            border-radius: 15px;
            padding: 15px 20px;
            color: var(--dark);
            text-decoration: none;
            background: var(--white);
            transition: all 0.3s ease;
        }

        .link-item:hover {
            box-shadow: 0 5px 15px rgba(119, 202, 200, 0.3);
            color: var(--white);
            background: var(--primary-teal);
            transform: translateX(5px);
        }

        .link-icon {
            display: flex;
            flex-shrink: 0;
            justify-content: center;
            align-items: center;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            color: var(--white);
            font-size: 16px;
            background: var(--primary-teal);
            transition: all 0.3s ease;
        }

        .link-item:hover .link-icon {
            color: var(--primary-teal);
            background: var(--white);
        }

        .link-text {
            font-weight: 500;
            font-size: 15px;
        }

        /* === КОНТАКТНАЯ ИНФОРМАЦИЯ === */
        .emergency-contact {
            position: relative;
            margin-top: 40px;
            border-radius: 20px;
            padding: 30px;
            overflow: hidden;
            color: var(--white);
            text-align: center;
            background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
        }

        .emergency-contact::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: 
                radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
                radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
            pointer-events: none;
        }

        .emergency-title {
            position: relative;
            z-index: 1;
            margin-bottom: 15px;
            font-weight: 700;
            font-size: 20px;
        }

        .emergency-phone {
            position: relative;
            z-index: 1;
            margin-bottom: 10px;
            font-weight: 800;
            font-size: 28px;
        }

        .emergency-subtitle {
            position: relative;
            z-index: 1;
            opacity: 0.9;
            font-size: 14px;
        }

        /* === АНИМАЦИИ === */
        @keyframes float {
            0%, 100% { transform: translateY(0) rotate(0deg); }
            25% { transform: translateY(-15px) rotate(2deg); }
            75% { transform: translateY(-8px) rotate(-1deg); }
        }

        @keyframes pulse-scale {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.05); }
        }

        .animate-fade-in {
            animation: fadeIn 0.8s ease-out forwards;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* === АДАПТИВНОСТЬ === */
        @media (max-width: 768px) {
            .error-container {
                padding: 30px 15px;
            }

            .error-number {
                font-size: 80px;
            }

            .error-title {
                font-size: 28px;
            }

            .error-description {
                margin-bottom: 40px;
                font-size: 16px;
            }

            .error-actions {
                flex-direction: column;
                align-items: center;
                gap: 15px;
            }

            .btn-primary,
            .btn-secondary {
                justify-content: center;
                width: 100%;
                max-width: 300px;
            }

            .helpful-links {
                padding: 30px 20px;
            }

            .links-grid {
                grid-template-columns: 1fr;
            }

            .emergency-phone {
                font-size: 24px;
            }
        }

        @media (max-width: 480px) {
            .error-container {
                padding: 25px 10px;
            }

            .error-icon {
                width: 120px;
                height: 120px;
            }

            .error-icon i {
                font-size: 48px;
            }

            .error-number {
                font-size: 60px;
            }

            .error-title {
                font-size: 24px;
            }

            .error-description {
                font-size: 15px;
            }

            .btn-primary,
            .btn-secondary {
                padding: 15px 25px;
                font-size: 15px;
            }

            .helpful-links {
                padding: 25px 15px;
            }

            .links-title {
                font-size: 20px;
            }

            .emergency-contact {
                padding: 25px 20px;
            }

            .emergency-phone {
                font-size: 22px;
            }
        }


      /* === ОСНОВНАЯ КАРТОЧКА УСЛУГИ === */
        .service-composition {
            position: relative;
            margin: 60px 0;
            border: 2px solid transparent;
            border-radius: 25px;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
            overflow: hidden;
            background: var(--white);
            transition: all 0.3s ease;
        }

        .service-composition:hover {
            border-color: var(--primary-teal);
            transform: translateY(-5px);
        }

        .service-composition::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            left: 0;
            height: 6px;
            background: linear-gradient(135deg, var(--primary-teal), var(--success-green));
        }

        /* === ЗАГОЛОВОК === */

        .service-header::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: 
                radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
                radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
            pointer-events: none;
        }



        .service-title {
            position: relative;
            z-index: 1;
            margin-bottom: 15px;
            font-weight: 700;
            font-size: 32px;
        }

        .service-subtitle {
            position: relative;
            z-index: 1;
            opacity: 0.9;
            font-weight: 500;
            font-size: 18px;
        }

        /* === ОСНОВНОЙ КОНТЕНТ === */
        .service-content {
            padding: 50px 40px;
        }

        /* === ЦЕНОВОЙ БЛОК === */
        .pricing-block {
            position: relative;
            margin-bottom: 40px;
            border: 2px solid rgba(119, 202, 200, 0.2);
            border-radius: 20px;
            padding: 30px;
            text-align: center;
            background: linear-gradient(135deg, var(--bg-light), var(--white));
        }

        .price-label {
            margin-bottom: 15px;
            color: var(--gray);
            font-weight: 600;
            font-size: 16px;
            letter-spacing: 0.5px;
            text-transform: uppercase;
        }

        .main-price {
            display: flex;
            justify-content: center;
            align-items: baseline;
            gap: 10px;
            margin-bottom: 15px;
            color: var(--accent-red);
            font-weight: 800;
            font-size: 48px;
        }

        .price-currency {
            color: var(--gray);
            font-size: 24px;
        }

        .price-note {
            color: var(--gray);
            font-size: 14px;
            font-style: italic;
        }

        .price-benefits {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-around;
            gap: 15px;
            margin-top: 20px;
        }

        .benefit-item {
            display: flex;
            align-items: center;
            gap: 8px;
            color: var(--success-green);
            font-weight: 600;
            font-size: 14px;
        }

        .benefit-item i {
            font-size: 16px;
        }

        /* === СОСТАВ УСЛУГИ === */
        .service-breakdown {
            margin-bottom: 40px;
        }

        .breakdown-title {
            position: relative;
            margin-bottom: 30px;
            color: var(--dark);
            font-weight: 700;
            font-size: 24px;
            text-align: center;
        }

        .breakdown-title::after {
            content: '';
            position: absolute;
            bottom: -8px;
            left: 50%;
            width: 60px;
            height: 3px;
            border-radius: 2px;
            background: var(--primary-teal);
            transform: translateX(-50%);
        }

        .breakdown-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 25px;
        }

        .breakdown-category {
            border: 2px solid rgba(119, 202, 200, 0.1);
            border-radius: 20px;
            padding: 25px;
            background: var(--white);
            transition: all 0.3s ease;
        }

        .breakdown-category:hover {
            border-color: var(--primary-teal);
            box-shadow: 0 10px 30px rgba(119, 202, 200, 0.2);
            transform: translateY(-3px);
        }

        .category-header {
            display: flex;
            align-items: center;
            gap: 15px;
            margin-bottom: 20px;
            border-radius: 10px;
        }

        .category-icon {
            display: flex;
            flex-shrink: 0;
            justify-content: center;
            align-items: center;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            color: var(--white);
            font-size: 20px;
            background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
        }

        .category-title {
            font-weight: 600;
            font-size: 18px;
        }

        .category-items {
            list-style: none;
        }

        .category-items li {
            display: flex;
            align-items: flex-start;
            gap: 12px;
            margin-bottom: 12px;
            color: var(--gray);
            font-size: 15px;
            line-height: 1.4;
        }

        .category-items li:last-child {
            margin-bottom: 0;
        }

        .item-check {
            display: flex;
            flex-shrink: 0;
            justify-content: center;
            align-items: center;
            width: 20px;
            height: 20px;
            margin-top: 2px;
            border-radius: 50%;
            color: var(--white);
            font-size: 12px;
            background: var(--success-green);
        }

        /* === ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ === */
        .additional-services {
            margin-bottom: 40px;
            border: 2px solid rgba(196, 69, 105, 0.1);
            border-radius: 20px;
            padding: 30px;
            background: linear-gradient(135deg, var(--bg-light), var(--white));
        }

        .additional-title {
            margin-bottom: 25px;
            color: var(--dark);
            font-weight: 600;
            font-size: 20px;
            text-align: center;
        }

        .additional-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 20px;
        }

        .additional-item {
            border: 1px solid rgba(196, 69, 105, 0.2);
            border-radius: 15px;
            padding: 20px;
            background: var(--white);
            transition: all 0.3s ease;
        }

        .additional-item:hover {
            border-color: var(--accent-red);
            box-shadow: 0 5px 15px rgba(196, 69, 105, 0.2);
            transform: translateY(-2px);
        }

        .additional-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 10px;
            margin-bottom: 10px;
        }

        .additional-name {
            flex: 1 1 50%;
            color: var(--dark);
            font-weight: 600;
            font-size: 16px;
        }

        .additional-price {
            color: var(--accent-red);
            font-weight: 700;
            font-size: 18px;
        }

        .additional-description {
            color: var(--gray);
            font-size: 14px;
            line-height: 1.4;
        }

        /* === ГАРАНТИИ === */
        .guarantees-block {
            position: relative;
            margin-bottom: 30px;
            border-radius: 20px;
            padding: 30px;
            overflow: hidden;
            color: var(--white);
            text-align: center;
            background: linear-gradient(135deg, var(--success-green), #00a085);
        }

        .guarantees-block::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: 
                radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 0%, transparent 50%),
                radial-gradient(circle at 80% 70%, rgba(255,255,255,0.05) 0%, transparent 50%);
            pointer-events: none;
        }

        .guarantees-title {
            position: relative;
            z-index: 1;
            margin-bottom: 20px;
            font-weight: 700;
            font-size: 22px;
        }

        .guarantees-list {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 20px;
        }

        .guarantee-item {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 10px;
        }

        .guarantee-icon {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            font-size: 24px;
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(10px);
        }

        .guarantee-text {
            font-weight: 500;
            font-size: 14px;
            text-align: center;
        }

        /* === КНОПКИ ДЕЙСТВИЙ === */
        .action-buttons {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 20px;
        }

        .btn-secondary {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            border: 2px solid var(--primary-teal);
            border-radius: 50px;
            padding: 16px 35px;
            color: var(--primary-teal);
            font-weight: 600;
            font-size: 16px;
            text-decoration: none;
            background: rgba(119, 202, 200, 0.1);
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .btn-secondary:hover {
            box-shadow: 0 8px 25px rgba(119, 202, 200, 0.3);
            color: var(--white);
            background: var(--primary-teal);
            transform: translateY(-3px);
        }

        /* === АДАПТИВНОСТЬ === */
        @media (max-width: 992px) {
            .breakdown-grid {
                grid-template-columns: 1fr;
                gap: 20px;
            }

            .main-price {
                font-size: 42px;
            }

            .service-content {
                padding: 40px 30px;
            }
        }

        @media (max-width: 768px) {
            .container {
                padding: 20px 15px;
            }

            .service-header {
                padding: 30px 25px;
            }

            .service-title {
                font-size: 26px;
            }

            .service-content {
                padding: 10px 0px;
            }

            .main-price {
                font-size: 36px;
            }

            .action-buttons {
                flex-direction: column;
                align-items: center;
            }

            .btn-primary,
            .btn-secondary {
                justify-content: center;
                width: 100%;
                max-width: 300px;
            }

            .price-benefits {
                flex-direction: column;
                align-items: center;
            }
        }

        @media (max-width: 480px) {
            body {
                padding: 20px 10px;
            }

            .service-header {
                padding: 25px 20px;
            }

            .service-title {
                font-size: 22px;
            }

            .service-icon {
                width: 80px;
                height: 80px;
                font-size: 32px;
            }

            .main-price {
                font-size: 32px;
            }

            .breakdown-category,
            .additional-services {
                padding: 5px 5px;
            }

            .additional-grid {
                grid-template-columns: 1fr;
            }
        }

/* === Schedule Section === */
.schedule {
    padding: 80px 0;
    background: linear-gradient(180deg, #f5f7fb 0%, #ffffff 55%);
}

.schedule-header {
    max-width: 780px;
    margin: 0 auto 36px;
    text-align: center;
}

.schedule-subtitle {
    margin-top: 14px;
    color: #5d6472;
    font-size: 18px;
}

.schedule-swiper-wrapper {
    position: relative;
    margin: 0 -48px 24px;
    padding: 0 48px;
    overflow: visible;
}

.schedule .swiper {
    overflow: visible;
}

.schedule .swiper-wrapper {
    padding: 10px 5px 30px;
}

.schedule-stack {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 340px;
    margin: 0;
    border: 1px solid rgba(14, 26, 81, 0.05);
    border-radius: 20px;
    padding: 18px 16px;
    box-shadow: 0 20px 60px rgba(15, 23, 42, 0.07);
    list-style: none;
    background: #fff;
}

.schedule-day {
    color: #0f1e34;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.schedule-date {
    margin-bottom: 4px;
    color: #0ea5e9;
    font-weight: 600;
    font-size: 26px;
}

.schedule-slot .schedule-slot-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    border: 1px solid rgba(14, 26, 81, 0.05);
    border-radius: 999px;
    padding: 10px 0;
    color: #1f2a44;
    font-weight: 600;
    background: #f6f9ff;
    transition: all 0.2s ease;
    cursor: pointer;
}

.schedule-slot .schedule-slot-btn:hover {
    border-color: rgba(14, 165, 233, 0.4);
    color: #0ea5e9;
    background: rgba(14, 165, 233, 0.07);
}

.schedule-slot .schedule-slot-btn.disabled {
    border-color: transparent;
    color: #9ba6bf;
    background: #f1f4f9;
    cursor: not-allowed;
}

.schedule-slot .schedule-slot-btn.active {
    border-color: transparent;
    box-shadow: 0 15px 30px rgba(14, 165, 233, 0.35);
    color: #fff;
    background: linear-gradient(135deg, #0ea5e9, #2563eb);
}

.swiper-controls {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 10px;
}

.swiper-button {
    position: static;
    width: 44px;
    height: 44px;
    margin-top: 0;
    border: 1px solid rgba(14, 26, 81, 0.08);
    border-radius: 50%;
    box-shadow: 0 10px 25px rgba(10, 17, 46, 0.08);
    color: #0ea5e9;
    background: #fff;
}

.schedule-marks {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    margin-bottom: 30px;
}

.schedule-mark {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #52607a;
    font-weight: 500;
}

.schedule-mark__color {
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 4px;
}

.schedule-mark__color.free {
    background: #0ea5e9;
}

.schedule-mark__color.busy {
    background: #cfd5e8;
}

.schedule-form__wrap {
    display: flex;
    align-items: center;
    gap: 40px;
    border: 1px solid rgba(14, 26, 81, 0.05);
    border-radius: 24px;
    padding: 32px;
    box-shadow: 0 25px 80px rgba(13, 20, 50, 0.08);
    background: linear-gradient(135deg, #ffffff 0%, #f5fbff 120%);
}

.schedule-form__text {
    flex: 1;
    color: #142033;
}

.schedule-form__phone {
    display: inline-flex;
    align-items: center;
    margin: 10px 0;
    color: #0ea5e9;
    font-weight: 700;
    font-size: 32px;
}

.schedule-form__selected {
    margin-top: 10px;
    color: #5c6a85;
    font-size: 15px;
}

.modal-slot-info {
    font-size: 14px;
    color: #5c6a85;
    margin: 10px 0 15px;
}

.schedule-form {
    flex: 1;
}

.schedule-form__row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 16px;
}

.schedule-form__field {
    display: flex;
    flex-direction: column;
    flex: 1;
    color: #9aa3ba;
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.schedule-form__field input {
    margin-top: 6px;
    border: 1px solid rgba(14, 26, 81, 0.15);
    border-radius: 14px;
    padding: 14px 18px;
    font-size: 16px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.schedule-form__field input:focus {
    border-color: #0ea5e9;
    box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.15);
    outline: none;
}

.schedule-form__btn {
    border: none;
    border-radius: 999px;
    padding: 14px 28px;
    font-weight: 600;
    white-space: nowrap;
}

.schedule-form__politic {
    margin-top: 12px;
    color: #8b95af;
    font-size: 13px;
}

@media (max-width: 992px) {
    .schedule-form__wrap {
        flex-direction: column;
    }

    .schedule-form__phone {
        font-size: 26px;
    }

    .schedule-stack {
        min-height: 320px;
    }
}

@media (max-width: 640px) {
    .schedule {
        padding: 60px 0;
    }

    .schedule-swiper-wrapper {
        margin: 0 -16px 24px;
        padding: 0 16px;
    }

    .schedule-form__row {
        flex-direction: column;
        align-items: stretch;
    }

    .schedule-form__btn {
        justify-content: center;
        width: 100%;
    }

    .swiper-controls {
        justify-content: center;
    }
}

/* === SYMPTOMS CHECKLIST === */
.symptoms-section {
  background: var(--white);
}

.symptoms-section::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at 20% 50%, rgba(196,69,105,0.04) 0%, transparent 50%);
  pointer-events: none;
}

.symptoms-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  position: relative;
  z-index: 2;
}

.symptom-card {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 24px 28px;
  background: var(--bg-light);
  border-radius: 16px;
  transition: all 0.3s ease;
  border-left: 4px solid var(--accent-red);
}

.symptom-card:hover {
  transform: translateX(5px);
  box-shadow: 0 5px 20px rgba(0,0,0,0.08);
}

.symptom-card__number {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--accent-red), var(--dark-red));
  color: var(--white);
  font-weight: 700;
  font-size: 16px;
}

.symptom-card__icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
  color: var(--white);
  font-size: 20px;
}

.symptom-card__text {
  color: var(--dark);
  font-size: 16px;
  line-height: 1.4;
  font-weight: 500;
}

.symptoms-cta {
  text-align: center;
  margin-top: 40px;
  position: relative;
  z-index: 2;
}

.symptoms-cta p {
  color: var(--gray);
  font-size: 16px;
  margin-bottom: 16px;
}

/* === INDICATIONS & CONTRAINDICATIONS === */
.indications-section {
  background: var(--bg-light);
}

.indications-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  position: relative;
  z-index: 2;
}

.indications-col {
  background: var(--white);
  border-radius: 20px;
  padding: 36px 32px;
  box-shadow: 0 5px 25px rgba(0,0,0,0.06);
}

.indications-col--green {
  border-top: 4px solid var(--success-green);
}

.indications-col--red {
  border-top: 4px solid var(--accent-red);
}

.indications-col__title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  font-size: 22px;
  font-weight: 700;
  color: var(--dark);
}

.indications-col--green .indications-col__title i {
  color: var(--success-green);
  font-size: 24px;
}

.indications-col--red .indications-col__title i {
  color: var(--accent-red);
  font-size: 24px;
}

.indications-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.indications-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--bg-light);
  font-size: 15px;
  line-height: 1.5;
  color: var(--dark);
}

.indications-list li:last-child {
  border-bottom: none;
}

.indications-col--green .indications-list li i {
  color: var(--success-green);
  margin-top: 3px;
  flex-shrink: 0;
}

.indications-col--red .indications-list li i {
  color: var(--accent-red);
  margin-top: 3px;
  flex-shrink: 0;
}

.indications-note {
  margin-top: 30px;
  padding: 20px 24px;
  background: var(--white);
  border-radius: 12px;
  border-left: 4px solid var(--primary-teal);
  color: var(--gray);
  font-size: 15px;
  line-height: 1.6;
  position: relative;
  z-index: 2;
}

.indications-note i {
  color: var(--primary-teal);
  margin-right: 8px;
}

/* === DAILY ROUTINE === */
.routine-section {
  background: var(--white);
}

.routine-section::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at 80% 20%, rgba(119,202,200,0.05) 0%, transparent 50%);
  pointer-events: none;
}

.routine-timeline {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
  z-index: 2;
}

.routine-timeline::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 30px;
  width: 3px;
  background: linear-gradient(to bottom, var(--primary-teal), var(--dark-teal));
  border-radius: 3px;
}

.routine-item {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  padding: 16px 0;
  position: relative;
}

.routine-item__time {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
  color: var(--white);
  font-weight: 700;
  font-size: 14px;
  box-shadow: 0 4px 15px rgba(119,202,200,0.3);
  z-index: 2;
}

.routine-item__content {
  flex: 1;
  background: var(--bg-light);
  border-radius: 16px;
  padding: 20px 24px;
  transition: all 0.3s ease;
}

.routine-item__content:hover {
  box-shadow: 0 5px 20px rgba(0,0,0,0.06);
  transform: translateX(5px);
}

.routine-item__header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 6px;
}

.routine-item__header i {
  color: var(--primary-teal);
  font-size: 18px;
}

.routine-item__title {
  font-weight: 700;
  font-size: 17px;
  color: var(--dark);
}

.routine-item__desc {
  color: var(--gray);
  font-size: 15px;
  line-height: 1.5;
}

/* === COMPARISON TABLE === */
.comparison-section {
  background: var(--bg-light);
}

.comparison-table-wrap {
  position: relative;
  z-index: 2;
  overflow-x: auto;
}

.comparison-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(0,0,0,0.08);
  background: var(--white);
}

.comparison-table thead th {
  padding: 24px 28px;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  color: var(--white);
  background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
}

.comparison-table thead th:first-child {
  text-align: left;
  background: var(--dark);
}

.comparison-table tbody td {
  padding: 18px 28px;
  font-size: 15px;
  color: var(--dark);
  border-bottom: 1px solid var(--bg-light);
  text-align: center;
}

.comparison-table tbody td:first-child {
  font-weight: 600;
  text-align: left;
  color: var(--dark);
}

.comparison-table tbody tr:last-child td {
  border-bottom: none;
}

.comparison-table tbody tr:hover {
  background: rgba(119,202,200,0.04);
}

.comparison-table .highlight-b {
  color: var(--success-green);
  font-weight: 600;
}

.comparison-table .highlight-a {
  color: var(--primary-teal);
  font-weight: 600;
}

.comparison-cta {
  text-align: center;
  margin-top: 40px;
  position: relative;
  z-index: 2;
}

/* === DOCTOR RECOMMENDATIONS === */
.doctor-recs-section {
  background: var(--white);
}

.doctor-recs-section::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at 90% 80%, rgba(119,202,200,0.05) 0%, transparent 50%);
  pointer-events: none;
}

.doctor-recs-content {
  position: relative;
  z-index: 2;
}

.doctor-recs-quote {
  display: flex;
  gap: 30px;
  align-items: flex-start;
  background: var(--bg-light);
  border-radius: 20px;
  padding: 36px 40px;
  margin-bottom: 40px;
}

.doctor-recs-quote__photo {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}

.doctor-recs-quote__photo-placeholder {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
  color: var(--white);
  font-size: 48px;
}

.doctor-recs-quote__text blockquote {
  font-size: 18px;
  line-height: 1.6;
  color: var(--dark);
  font-style: italic;
  margin-bottom: 16px;
}

.doctor-recs-quote__author strong {
  display: block;
  font-size: 17px;
  color: var(--dark);
  margin-bottom: 4px;
}

.doctor-recs-quote__author span {
  color: var(--gray);
  font-size: 14px;
}

.doctor-recs-list {
  background: var(--bg-light);
  border-radius: 20px;
  padding: 32px 36px;
  margin-bottom: 30px;
}

.doctor-recs-list h3 {
  font-size: 20px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 20px;
}

.doctor-recs-list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.doctor-recs-list li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  font-size: 16px;
  color: var(--dark);
  line-height: 1.5;
}

.doctor-recs-list li:last-child {
  border-bottom: none;
}

.doctor-recs-list li i {
  color: var(--accent-red);
  margin-top: 3px;
  flex-shrink: 0;
}

.doctor-recs-cta {
  text-align: center;
}

/* === RESULTS STATS === */
.results-section {
  background: var(--bg-light);
}

.results-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  position: relative;
  z-index: 2;
}

.results-card {
  background: var(--white);
  border-radius: 20px;
  padding: 36px 24px;
  text-align: center;
  box-shadow: 0 5px 25px rgba(0,0,0,0.06);
  transition: all 0.3s ease;
}

.results-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 40px rgba(0,0,0,0.12);
}

.results-card__icon {
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--primary-teal), var(--dark-teal));
  color: var(--white);
  font-size: 26px;
}

.results-card__value {
  font-size: 36px;
  font-weight: 800;
  color: var(--dark);
  margin-bottom: 8px;
  line-height: 1;
}

.results-card__label {
  color: var(--gray);
  font-size: 15px;
  line-height: 1.4;
}

/* === RESPONSIVE: NEW COMPONENTS === */
@media (max-width: 768px) {
  .symptoms-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .symptom-card {
    padding: 16px 20px;
    gap: 14px;
  }

  .symptom-card__number {
    width: 32px;
    height: 32px;
    font-size: 14px;
  }

  .symptom-card__icon {
    width: 36px;
    height: 36px;
    font-size: 16px;
  }

  .indications-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .indications-col {
    padding: 24px 20px;
  }

  .routine-timeline::before {
    left: 25px;
  }

  .routine-item {
    gap: 16px;
  }

  .routine-item__time {
    width: 50px;
    height: 50px;
    font-size: 12px;
  }

  .routine-item__content {
    padding: 16px 18px;
  }

  .comparison-table thead th,
  .comparison-table tbody td {
    padding: 14px 16px;
    font-size: 13px;
  }

  .doctor-recs-quote {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 24px 20px;
  }

  .doctor-recs-quote__photo,
  .doctor-recs-quote__photo-placeholder {
    width: 90px;
    height: 90px;
    font-size: 36px;
  }

  .doctor-recs-list {
    padding: 24px 20px;
  }

  .results-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }

  .results-card {
    padding: 24px 16px;
  }

  .results-card__icon {
    width: 50px;
    height: 50px;
    font-size: 22px;
  }

  .results-card__value {
    font-size: 28px;
  }
}

@media (max-width: 480px) {
  .results-grid {
    grid-template-columns: 1fr;
  }

  .comparison-table {
    font-size: 12px;
  }
}
