/* Reset & Base */
* {margin:0;padding:0;box-sizing:border-box;font-family: 'Exo 2', sans-serif;}
body.cnstr-body {background:#0a0a0a;color:#f5f5f5;line-height:1.6;scroll-behavior:smooth;}
a {text-decoration:none;color:inherit;}
.cnstr-container {width:90%;max-width:1200px;margin:0 auto;}

/* Top Banner */
.cnstr-top-banner {
  display: flex;
  justify-content: center;
  gap: 15px;
  padding: 10px 0;
  background: rgba(255,215,0,0.1);
  overflow: hidden;
}
.cnstr-banner-card {
  background: rgba(255,215,0,0.15);
  backdrop-filter: blur(8px);
  padding: 6px 15px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  transform: translateY(0);
  transition: transform 0.3s, background 0.3s;
}
.cnstr-banner-card:hover {
  transform: translateY(-4px);
  background: rgba(255,215,0,0.3);
}
.cnstr-responsible-parallax {
  position: relative;
  padding: 80px 0;
  background: linear-gradient(135deg, #0d0d0d 0%, #2e0000 100%);
  color: #fff;
  font-family: 'Exo 2', sans-serif;
  overflow: hidden;
}
.cnstr-responsible-parallax::before {
  content: '';
  position: absolute;
  inset:0;
  opacity: 0.15;
  z-index:0;
}
.cnstr-responsible-parallax .cnstr-container {position: relative; z-index:1;}

.cnstr-responsible-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  margin-top: 50px;
}

.cnstr-step-card {
  background: linear-gradient(135deg, #1a001a, #330033);
  border-left: 6px solid #FFD700;
  border-radius: 20px;
  padding: 25px 20px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  position: relative;
}
.cnstr-step-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 30px rgba(255,215,0,0.3);
}
.cnstr-step-icon {font-size: 2.5rem; margin-bottom: 15px; display: inline-block; animation: pulse 2s infinite;}
@keyframes pulse {0%,100%{transform: scale(1);}50%{transform: scale(1.2);}}

.cnstr-step-card h3 {margin-bottom: 10px;font-size:1.3rem;color:#FFD700;}
.cnstr-step-card p, .cnstr-step-card ul {font-size:0.95rem; line-height:1.6;}
.cnstr-step-card ul {padding-left: 20px; list-style-type: disc;}
.cnstr-step-final {grid-column: span 2; background: rgba(255,255,255,0.05); text-align:center; font-size:1.1rem; font-weight:600; border-left-color:#FF4500;}

/* Header */
.cnstr-header-creative-new {
  position: relative;
  font-family: 'Exo 2', sans-serif;
  color: #fff;
  z-index: 1000;
}

/* Верхняя полоска */
.cnstr-alert-bar-new {
  background: linear-gradient(90deg, #8e2de2, #4a00e0);
  color: #FFD700;
  text-align: center;
  font-weight: 600;
  padding: 6px 0;
  letter-spacing: 0.5px;
  font-size: 0.95rem;
  text-shadow: 0 0 5px rgba(255,215,0,0.6);
}

/* Главная панель */
.cnstr-header-top-new {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 5%;
  background: rgba(10, 10, 30, 0.85);
  backdrop-filter: blur(8px);
  position: relative;
  z-index: 1;
}

/* Логотип */
.cnstr-logo-section-new {
  display: flex;
  align-items: center;
  gap: 12px;
}

.cnstr-logo-img-new {
  width: 55px;
  height: 55px;
  border-radius: 12px;
  position: relative;
  z-index: 1;
  border: 2px solid #FFD700;
}

.cnstr-logo-glow-new {
  position: absolute;
  width: 80px;
  height: 80px;
  top: -12px;
  left: -12px;
  background: radial-gradient(circle, #FFD700, transparent 70%);
  border-radius: 50%;
  animation: glowPulseNew 2s infinite alternate;
  z-index: 0;
}

.cnstr-logo-text-new {
  margin-left: 3px;
  font-size: 1.7rem;
  font-weight: 800;
  background: linear-gradient(45deg, #FF00FF, #FFD700);
  -webkit-background-clip: text;
  color: transparent;
  animation: gradientShiftNew 6s ease infinite;
}

/* Навигация */
.cnstr-nav-section-new ul {
  display: flex;
  gap: 28px;
  list-style: none;
}

.cnstr-nav-section-new ul li a {
  position: relative;
  font-weight: 600;
  color: #fff;
  padding: 10px 15px;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.cnstr-nav-section-new ul li a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0%;
  height: 2px;
  background: #FFD700;
  transform: translateX(-50%);
  transition: width 0.3s ease;
}

.cnstr-nav-section-new ul li a:hover::after {
  width: 70%;
}

/* Кнопки */
.cnstr-buttons-section-new a {
  padding: 10px 22px;
  border-radius: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
}

.cnstr-btn-primary-new {
  background: linear-gradient(45deg, #8e2de2, #4a00e0);
  color: #FFD700;
  box-shadow: 0 0 12px rgba(142,45,226,0.6);
}

.cnstr-btn-primary-new:hover {
  transform: translateY(-3px);
  box-shadow: 0 0 25px rgba(255,215,0,0.9);
}

.cnstr-btn-secondary-new {
  background: rgba(255,215,0,0.1);
  color: #FFD700;
}

.cnstr-btn-secondary-new:hover {
  background: rgba(255,215,0,0.3);
}

/* Burger */
.cnstr-burger-mobile-new {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
}

.cnstr-burger-mobile-new span {
  width: 28px;
  height: 3px;
  background: #FFD700;
  border-radius: 3px;
  transition: 0.4s;
}

/* Декоративные фигуры */
.cnstr-decorative-shapes-new span {
  position: absolute;
  display: block;
  animation: floatShapesNew 6s ease-in-out infinite;
}

.shape-circle-new {width: 16px; height: 16px; background: rgba(255,215,0,0.4); border-radius:50%; top:15%; left:5%;}
.shape-diamond-new {width:14px; height:14px; background: rgba(255,0,255,0.4); transform:rotate(45deg); top:45%; left:85%;}
.shape-star-new {width:12px; height:12px; background: rgba(0,255,255,0.4); clip-path: polygon(50% 0%,61% 38%,98% 38%,68% 59%,79% 91%,50% 70%,21% 91%,32% 59%,2% 38%,39% 38%); top:25%; left:50%;}
.shape-line-new {width:2px; height:22px; background: #FFD700; top:70%; left:60%;}

/* Animations */
@keyframes glowPulseNew {
  0% {transform: scale(1);}
  100% {transform: scale(1.3);}
}

@keyframes gradientShiftNew {
  0% {background-position:0% 50%;}
  50% {background-position:100% 50%;}
  100% {background-position:0% 50%;}
}

@keyframes floatShapesNew {
  0%,100% {transform: translateY(0) rotate(0deg);}
  50% {transform: translateY(-15px) rotate(45deg);}
}


/* Верхняя полоска */
.cnstr-alert-bar {background: #FFD700;color:#0a0a0a;text-align:center;font-size:0.9rem;font-weight:600;padding:6px 0;}

/* Верхняя панель */
.cnstr-header-top {display:flex; align-items:center; justify-content:space-between; padding:10px 5%; backdrop-filter: blur(6px);}

/* Логотип */
.cnstr-logo-section {display:flex; align-items:center; gap:10px;}
.cnstr-logo-img {width:50px; height:50px; border-radius:12px; position:relative; z-index:1;}
.cnstr-logo-glow {position:absolute; width:70px; height:70px; background: radial-gradient(circle, rgba(255,215,0,0.4), transparent 70%); border-radius:50%; z-index:0; animation: glowPulse 2s ease-in-out infinite alternate;}
.cnstr-logo-text {font-size:1.5rem; font-weight:700; background: linear-gradient(45deg, #FF4500,#FFD700); background-clip:text; -webkit-background-clip:text; color:transparent; animation: gradientShift 4s ease infinite;}

/* Навигация */
.cnstr-nav-section ul {display:flex; gap:25px; list-style:none; transition:max-height 0.4s ease;}
.cnstr-nav-section ul li a {color:#fff; font-weight:600; padding:8px 12px; border-radius:8px; transition:all 0.3s; position:relative;}
.cnstr-nav-section ul li a::after {content:""; position:absolute; bottom:-2px; left:50%; transform:translateX(-50%); width:0%; height:2px; background:#FFD700; transition:width 0.3s;}
.cnstr-nav-section ul li a:hover::after {width:60%;}

/* Кнопки */
.cnstr-buttons-section {display:flex; gap:10px;}
.cnstr-btn-primary {background:#FFD700; color:#0a0a0a;}
.cnstr-btn-primary:hover {transform:translateY(-3px); box-shadow:0 5px 15px rgba(255,215,0,0.4);}
.cnstr-btn-secondary {background: rgba(255,255,255,0.1); color:#fff;}
.cnstr-btn-secondary:hover {background: rgba(255,255,255,0.25); transform: translateY(-3px);}

/* Hero */
.cnstr-hero-new {
  position: relative;
  min-height: 90vh;
  display: flex;
  align-items: center;
  padding: 0 5%;
  background: linear-gradient(135deg, #0a0a30, #1a0030);
  color: #fff;
  overflow: hidden;
}

/* Фон + overlay */
.cnstr-hero-bg-new {
  position: absolute;
  top:0; left:0; width:100%; height:100%;
  background: url('../img/hero-bg.jpg') center/cover no-repeat;
  z-index:1;
  filter: brightness(0.5);
}
section#features {
  padding: 5% 0;
}
.cnstr-hero-overlay-new {
  position: absolute;
  top:0; left:0; width:100%; height:100%;
  background: rgba(10,0,30,0.6);
  z-index:2;
}

/* Контейнер */
.cnstr-hero-flex-new {
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index:3;
  position: relative;
  gap: 50px;
  flex-wrap: wrap;
}

/* Левый блок */
.cnstr-hero-left-new {
  max-width: 600px;
}

.cnstr-hero-title-new {
  font-size: 3rem;
  font-weight: 900;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  -webkit-background-clip: text;
  color: transparent;
  animation: gradientShiftHero 6s ease infinite;
  margin-bottom: 20px;
}

.cnstr-hero-subtitle-new {
  font-size: 1.2rem;
  margin-bottom: 30px;
  color: rgba(255,255,255,0.85);
}

/* Кнопка */
.cnstr-hero-btn-new {
  display: inline-block;
  padding: 15px 50px;
  border-radius: 35px;
  font-weight: 700;
  text-decoration: none;
  color: #fff;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  box-shadow: 0 0 15px rgba(255,215,0,0.5);
  transition: all 0.4s;
}

.cnstr-hero-btn-new:hover {
  transform: translateY(-5px);
  box-shadow: 0 0 35px rgba(255,215,0,0.8), 0 0 50px rgba(255,0,255,0.6);
}

/* Правый блок */
.cnstr-hero-right-new {
  max-width: 350px;
}

.cnstr-hero-features-new {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.cnstr-hero-features-new li {
  font-size: 1rem;
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255,255,255,0.9);
  transition: transform 0.3s, color 0.3s;
}

.cnstr-hero-features-new li:hover {
  transform: translateX(5px);
  color: #FFD700;
}

.feature-icon-new {
  font-size: 1.5rem;
  color: #FF00FF;
  animation: iconGlowHero 2s ease-in-out infinite alternate;
}

/* Анимированные фигуры */
.cnstr-hero-animated-shapes-new span {
  position: absolute;
  display: block;
  animation: floatShapesHero 6s ease-in-out infinite;
}

.shape-circle-new {width: 20px; height: 20px; background: rgba(255,215,0,0.3); border-radius:50%; top:20%; left:15%;}
.shape-diamond-new {width:18px; height:18px; background: rgba(255,0,255,0.3); transform:rotate(45deg); top:35%; left:70%;}
.shape-star-new {width:22px; height:22px; background: rgba(0,255,255,0.3); clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%); top:60%; left:25%;}
.shape-line-new {width:2px; height:50px; background: rgba(255,255,255,0.2); top:50%; left:50%;}

/* Анимации */
@keyframes iconGlowHero {
  0% {text-shadow: 0 0 5px #FFD700;}
  100% {text-shadow: 0 0 20px #FF00FF;}
}

@keyframes floatShapesHero {
  0%,100% {transform: translateY(0) rotate(0deg);}
  50% {transform: translateY(-15px) rotate(45deg);}
}

@keyframes gradientShiftHero {
  0% {background-position:0% 50%;}
  50% {background-position:100% 50%;}
  100% {background-position:0% 50%;}
}

/* Заголовок секции */
.cnstr-section-title-new {
  font-size: 2.5rem;
  font-weight: 800;
  text-align: center;
  margin-bottom: 60px;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  -webkit-background-clip: text;
  color: transparent;
  animation: gradientShiftNew 6s ease infinite;
}

/* Flex контейнер */
.cnstr-features-flex-new {
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}

/* Карточка */
.cnstr-feature-card-new {
  background: rgba(255, 255, 255, 0.05);
  border: 2px solid rgba(255,215,0,0.3);
  border-radius: 20px;
  padding: 30px 20px;
  text-align: center;
  width: 280px;
  transition: transform 0.4s, box-shadow 0.4s, border-color 0.4s;
}

.cnstr-feature-card-new:hover {
  transform: translateY(-10px);
  box-shadow: 0 0 25px rgba(255,215,0,0.7);
  border-color: #FFD700;
}

/* Иконка */
.cnstr-feature-icon-new {
  font-size: 2.8rem;
  margin-bottom: 20px;
  animation: iconGlowNew 2s ease-in-out infinite alternate;
}

/* Декоративные фигуры */
.cnstr-features-shapes-new span {
  position: absolute;
  display: block;
  animation: floatShapesNew 6s ease-in-out infinite;
}

.shape-circle-new {width: 20px; height: 20px; background: rgba(255,215,0,0.3); border-radius:50%; top:20%; left:10%;}
.shape-diamond-new {width:18px; height:18px; background: rgba(255,0,255,0.3); transform:rotate(45deg); top:50%; left:80%;}
.shape-triangle-new {width:0; height:0; border-left:12px solid transparent; border-right:12px solid transparent; border-bottom:20px solid rgba(0,255,255,0.3); top:35%; left:60%;}

/* Анимации */
@keyframes iconGlowNew {
  0% {text-shadow: 0 0 5px #FFD700;}
  100% {text-shadow: 0 0 20px #FF00FF;}
}

@keyframes floatShapesNew {
  0%,100% {transform: translateY(0) rotate(0deg);}
  50% {transform: translateY(-15px) rotate(45deg);}
}

@keyframes gradientShiftNew {
  0% {background-position:0% 50%;}
  50% {background-position:100% 50%;}
  100% {background-position:0% 50%;}
}

.cnstr-about-new {
  position: relative;
  padding: 120px 5%;
  background: linear-gradient(135deg, #0a0a30, #1a0030);
  color: #fff;
  overflow: hidden;
}

/* Parallax фон */
.cnstr-parallax-bg-new {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  opacity: 0.15;
  z-index: 1;
  transform: translateZ(0);
}

/* Заголовок */
.cnstr-section-title-new {
  font-size: 2.8rem;
  font-weight: 800;
  text-align: center;
  margin-bottom: 20px;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  -webkit-background-clip: text;
  color: transparent;
  animation: gradientShiftNew 6s ease infinite;
  position: relative;
  z-index: 2;
}

.cnstr-about-lead-new {
  text-align: center;
  font-size: 1.2rem;
  margin-bottom: 60px;
  color: rgba(255,255,255,0.8);
  z-index: 2;
  position: relative;
}

/* Список фич */
.cnstr-about-features-list-new {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
  z-index: 2;
  position: relative;
  list-style: none;
  padding: 0;
}

/* Карточка фичи */
.cnstr-feature-item-new {
  background: rgba(255, 255, 255, 0.05);
  border: 2px solid rgba(255,215,0,0.3);
  border-radius: 20px;
  padding: 25px 20px;
  display: flex;
  gap: 15px;
  width: 320px;
  transition: transform 0.4s, box-shadow 0.4s, border-color 0.4s;
}

.cnstr-feature-item-new:hover {
  transform: translateY(-8px);
  box-shadow: 0 0 20px rgba(255,215,0,0.7);
  border-color: #FFD700;
}

/* Иконки */
.cnstr-about-feature-icon-new {
  font-size: 2.5rem;
  animation: iconGlowNew 2s ease-in-out infinite alternate;
}

/* Инфо */
.cnstr-feature-info-new h4 {
  font-size: 1.2rem;
  margin-bottom: 5px;
  color: #FFD700;
}

.cnstr-feature-info-new p {
  font-size: 0.95rem;
  color: rgba(255,255,255,0.8);
}

/* Кнопка CTA */
.cnstr-btn-glow-new {
  display: inline-block;
  padding: 15px 40px;
  border-radius: 30px;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 0 15px rgba(255,215,0,0.5);
  transition: all 0.4s;
  position: relative;
}

.cnstr-btn-glow-new:hover {
  box-shadow: 0 0 30px rgba(255,215,0,0.8), 0 0 40px rgba(255,0,255,0.6);
  transform: translateY(-5px);
}

/* Декоративные фигуры */
.cnstr-about-shapes-new span {
  position: absolute;
  display: block;
  animation: floatShapesNew 6s ease-in-out infinite;
}

.shape-circle-new {width: 18px; height: 18px; background: rgba(255,215,0,0.3); border-radius:50%; top:15%; left:10%;}
.shape-star-new {width:20px; height:20px; background: rgba(255,0,255,0.3); clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%); top:40%; left:75%;}
.shape-diamond-new {width:16px; height:16px; background: rgba(0,255,255,0.3); transform:rotate(45deg); top:60%; left:30%;}

/* Анимации */
@keyframes iconGlowNew {
  0% {text-shadow: 0 0 5px #FFD700;}
  100% {text-shadow: 0 0 20px #FF00FF;}
}

@keyframes floatShapesNew {
  0%,100% {transform: translateY(0) rotate(0deg);}
  50% {transform: translateY(-15px) rotate(45deg);}
}

@keyframes gradientShiftNew {
  0% {background-position:0% 50%;}
  50% {background-position:100% 50%;}
  100% {background-position:0% 50%;}
}
.cnstr-offer-single-modern {
  position: relative;
  padding: 80px 5%;
  background: linear-gradient(135deg, #1a001a, #330033);
  color: #fff;
  overflow: hidden;
  border-radius: 30px;
}

.cnstr-offer-modern {
  position: relative;
  padding: 50px;
  border-radius: 25px;
  background: rgba(255,255,255,0.05);
  border: 2px solid #FFD700;
  box-shadow: 0 0 50px rgba(255,215,0,0.2);
  text-align: center;
  overflow: hidden;
}

.cnstr-offer-bg-glow {
  position: absolute;
  top: -50px;
  left: -50px;
  right: -50px;
  bottom: -50px;
  background: radial-gradient(circle, rgba(255,0,255,0.2), transparent);
  border-radius: 30px;
  filter: blur(40px);
  z-index: 1;
}

.cnstr-offer-header-modern {
  position: relative;
  z-index: 2;
}

.cnstr-offer-logo-modern {
  max-width: 240px;
  margin-bottom: 15px;
  box-shadow: 0 0 20px rgba(255,215,0,0.5);
}

.cnstr-offer-title-modern {
  font-size: 2rem;
  margin-bottom: 10px;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  -webkit-background-clip: text;
  color: transparent;
}

.cnstr-rating-modern {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  color: #FFD700;
  margin-bottom: 20px;
}

.cnstr-offer-desc-modern {
  font-size: 1rem;
  color: rgba(255,255,255,0.8);
  margin-bottom: 10px;
  position: relative;
  z-index: 2;
}

.cnstr-offer-warning-modern {
  font-size: 0.9rem;
  color: #ff4d4d;
  margin-bottom: 20px;
}

.cnstr-offer-footer-modern {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  position: relative;
  z-index: 2;
}

.cnstr-payments-modern {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cnstr-payments-modern span {
  background: rgba(255,255,255,0.1);
  padding: 6px 12px;
  border-radius: 10px;
  font-size: 0.85rem;
}

.cnstr-btn-modern {
  padding: 10px 30px;
  border-radius: 30px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  box-shadow: 0 0 25px rgba(255,215,0,0.5);
  text-decoration: none;
  transition: all 0.3s;
}

.cnstr-btn-modern:hover {
  transform: translateY(-3px);
  box-shadow: 0 0 50px rgba(255,215,0,0.7), 0 0 60px rgba(255,0,255,0.5);
}
.cnstr-about-cta-new {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
/* Floating Shapes */
.shape-circle-offer,
.shape-diamond-offer,
.shape-star-offer {
  position: absolute;
  display: block;
  animation: floatShapesOffer 6s ease-in-out infinite;
}

.shape-circle-offer {width: 15px; height: 15px; background: rgba(255,215,0,0.3); border-radius:50%; top:10%; left:20%;}
.shape-diamond-offer {width:15px; height:15px; background: rgba(255,0,255,0.3); transform:rotate(45deg); top:40%; left:75%;}
.shape-star-offer {width:20px; height:20px; background: rgba(0,255,255,0.2); clip-path: polygon(50% 0%,61%35%,98%35%,68%57%,79%91%,50%70%,21%91%,32%57%,2%35%,39%35%); top:65%; left:30%;}

@keyframes floatShapesOffer {
  0%,100% {transform: translateY(0) rotate(0deg);}
  50% {transform: translateY(-10px) rotate(30deg);}
}
.cnstr-faq-modern {
  position: relative;
  padding: 80px 5%;
  background: linear-gradient(135deg, #1a001a, #330033);
  color: #fff;
  border-radius: 30px;
  overflow: hidden;
}

.cnstr-section-title-modern {
  font-size: 2.5rem;
  text-align: center;
  margin-bottom: 60px;
  background: linear-gradient(90deg, #FF00FF, #FFD700);
  -webkit-background-clip: text;
  color: transparent;
  text-shadow: 0 0 10px rgba(255,215,0,0.3);
}

.cnstr-faq-list-modern {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.cnstr-faq-item-modern {
  background: rgba(255,255,255,0.05);
  border: 2px solid #FFD700;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 0 20px rgba(255,215,0,0.2);
}

.cnstr-faq-question-modern {
  width: 100%;
  padding: 20px 30px;
  font-size: 1.1rem;
  text-align: left;
  background: rgba(0,0,0,0.2);
  border: none;
  outline: none;
  cursor: pointer;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: background 0.3s, color 0.3s;
}

.cnstr-faq-question-modern:hover {
  background: rgba(255,215,0,0.1);
  color: #FFD700;
}

.cnstr-faq-answer-modern {
  max-height: 0;
  padding: 0 30px;
  overflow: hidden;
  font-size: 0.95rem;
  line-height: 1.6;
  color: rgba(255,255,255,0.85);
  transition: max-height 0.5s ease, padding 0.5s ease;
}

.cnstr-faq-item-modern.active .cnstr-faq-answer-modern {
  max-height: 200px;
  padding: 15px 30px;
}

.cnstr-faq-toggle-modern {
  font-weight: bold;
  font-size: 1.2rem;
  transition: transform 0.3s;
}

.cnstr-faq-item-modern.active .cnstr-faq-toggle-modern {
  transform: rotate(45deg);
}

/* Floating shapes */
.shape-circle-faq,
.shape-diamond-faq,
.shape-star-faq {
  position: absolute;
  display: block;
  animation: floatShapesFaq 6s ease-in-out infinite;
}

.shape-circle-faq {width: 15px; height: 15px; background: rgba(255,215,0,0.3); border-radius:50%; top:15%; left:10%;}
.shape-diamond-faq {width:15px; height:15px; background: rgba(255,0,255,0.3); transform:rotate(45deg); top:40%; left:75%;}
.shape-star-faq {width:20px; height:20px; background: rgba(0,255,255,0.2); clip-path: polygon(50% 0%,61%35%,98%35%,68%57%,79%91%,50%70%,21%91%,32%57%,2%35%,39%35%); top:65%; left:30%;}

@keyframes floatShapesFaq {
  0%,100% {transform: translateY(0) rotate(0deg);}
  50% {transform: translateY(-10px) rotate(30deg);}
}
.cnstr-responsible-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
}

.cnstr-responsible-card-modern {
  background: linear-gradient(135deg, #1a001a, #330033);
  padding: 25px 20px;
  border-radius: 20px;
  color: #fff;
  box-shadow: 0 8px 25px rgba(0,0,0,0.2);
  transition: transform 0.3s, box-shadow 0.3s;
  position: relative;
  overflow: hidden;
}

.cnstr-responsible-card-modern:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 30px rgba(0,0,0,0.3);
}
.cnstr-responsible-card-modern li {
  margin-left: 20px;
}
.cnstr-responsible-icon-modern {
  font-size: 2.5rem;
  margin-bottom: 15px;
  display: inline-block;
  background: rgba(255,255,255,0.2);
  padding: 15px;
  border-radius: 50%;
  animation: floatIcon 3s ease-in-out infinite;
}

@keyframes floatIcon {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

.cnstr-responsible-card-final {
  background: #ffd700;
  color: #7a0c2e;
  text-align: center;
  font-weight: bold;
}
.cnstr-container-modern {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: start;
  padding: 60px 20px;
}

.cnstr-contact-form-wrapper-modern {
  background: linear-gradient(135deg, #1a001a, #330033);
  padding: 40px 30px;
  border-radius: 25px;
  color: #fff;
  position: relative;
  box-shadow: 0 15px 40px rgba(0,0,0,0.25);
  transition: transform 0.3s;
}
.cnstr-contact-form-wrapper-modern:hover {
  transform: translateY(-5px);
}

.cnstr-contact-form-modern input,
.cnstr-contact-form-modern textarea {
  width: 100%;
  padding: 14px 16px;
  margin-bottom: 18px;
  border-radius: 15px;
  border: none;
  background: rgba(255,255,255,0.15);
  color: #fff;
  font-size: 1rem;
  transition: background 0.3s;
}
.cnstr-contact-form-modern input:focus,
.cnstr-contact-form-modern textarea:focus {
  background: rgba(255,255,255,0.3);
}

.cnstr-btn-modern {
  background: #ffd700;
  color: #7a0c2e;
  border: none;
  padding: 14px 25px;
  border-radius: 25px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s;
}
.cnstr-btn-modern:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.3);
}

.cnstr-contact-info-modern {
  position: relative;
  padding: 20px;
}

.cnstr-contact-image-wrapper {
  position: relative;
  margin-bottom: 20px;
}
.cnstr-contact-image-modern {
  width: 100%;
  border-radius: 25px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}

.cnstr-contact-list-modern {
  list-style: none;
  padding: 0;
  margin: 0;
}
.cnstr-contact-list-modern li {
  margin-bottom: 12px;
  font-size: 1rem;
}
#contact .cnstr-container {
  display: flex
;
    align-items: center;
}
.shape-circle-floating,
.shape-star-floating,
.shape-diamond-floating,
.shape-circle-contact,
.shape-diamond-contact {
  position: absolute;
  background: rgba(255,255,255,0.15);
  border-radius: 50%;
  width: 30px;
  height: 30px;
  animation: floatShape 6s ease-in-out infinite;
}

@keyframes floatShape {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-15px) rotate(45deg); }
}
.cnstr-footer-modern {
  background: linear-gradient(135deg, #1a001a, #330033);
  color: #fff;
  position: relative;
  padding: 80px 20px 40px;
  overflow: hidden;
  font-family: 'Poppins', sans-serif;
}

.cnstr-container-modern {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}

.cnstr-footer-brand-modern {
  max-width: 400px;
}
.cnstr-footer-logo-modern {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: bold;
  font-size: 1.5rem;
  color: #ffd700;
}
.cnstr-footer-age-modern {
  margin: 10px 0;
  font-weight: bold;
}
.cnstr-footer-lead-modern {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #fceabb;
}

.cnstr-footer-links-modern {
  display: flex;
  gap: 40px;
}
.cnstr-footer-column-modern h4 {
  font-size: 1.1rem;
  margin-bottom: 15px;
  color: #ffd700;
}
.cnstr-footer-column-modern ul {
  list-style: none;
  padding: 0;
}
.cnstr-footer-column-modern ul li {
  margin-bottom: 10px;
}
.cnstr-footer-column-modern a {
  color: #fff;
  text-decoration: none;
  transition: all 0.3s;
}
.cnstr-footer-column-modern a:hover {
  color: #ffd700;
}

.cnstr-footer-seals-modern {
  margin-top: 60px;
  text-align: center;
}
.cnstr-footer-seals-grid-modern {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 25px;
  margin-top: 15px;
}
footer .cnstr-container {
  display: flex;
  justify-content: space-between;
}
.cnstr-seal-modern {
  width: 80px;
  transition: transform 0.3s, filter 0.3s;
}
.cnstr-seal-modern:hover {
  transform: scale(1.1);
  filter: brightness(1.3);
}

.cnstr-footer-bottom-modern {
  margin-top: 60px;
  text-align: center;
  font-size: 0.9rem;
  position: relative;
}
.cnstr-footer-line-modern {
  display: block;
  height: 1px;
  width: 100px;
  margin: 0 auto 10px;
  background: rgba(255,255,255,0.5);
}

/* Плавающие фигуры */
.shape-circle-footer, .shape-star-footer, .shape-diamond-footer {
  position: absolute;
  width: 30px; height: 30px;
  background: rgba(255,255,255,0.15);
  border-radius: 50%;
  animation: floatFooter 6s ease-in-out infinite;
}
.shape-star-footer { width: 25px; height: 25px; border-radius: 0; }
.shape-diamond-footer { width: 20px; height: 20px; transform: rotate(45deg); }

@keyframes floatFooter {
  0%,100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-15px) rotate(45deg); }
}
@media(max-width:1024px){
  footer .cnstr-container {
    flex-direction: column;
  }
  .cnstr-contact-form-wrapper-modern {
    margin-top: 30px;
  }
  #contact .cnstr-container {
    flex-direction: column;
  }
  .cnstr-buttons-section-new {
    display: none;
  }
  .cnstr-features-flex-new {
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }

  .cnstr-burger-mobile-new {display:flex;}
  .cnstr-nav-section-new {
    position: fixed;
    top: 80px;
    left:0;
    width:100%;
    background: rgba(10,10,30,0.95);
    max-height:0;
    overflow:hidden;
    transition:max-height 0.4s ease;
    z-index:9999;
  }
  .cnstr-nav-section-new.cnstr-open { max-height:100vh; }
  .cnstr-nav-section-new ul { flex-direction: column; gap:15px; padding: 20px; }
}