
:root {
  --color-primary-900: #003A6B;
  --color-primary-800: #0F447A;
  --color-primary-700: #1A4E8A;
  --color-primary-600: #2563A6;
  --color-primary-500: #3B82F6;
  --color-primary-400: #60A5FA;
  --color-accent-500: #FF7A00;
  --color-accent-400: #FF9C40;
  --color-accent-300: #FFB366;
  --color-success: #00A86B;
  --color-dark-900: #1F1F23;
  --color-dark-700: #2B2F36;
  --color-gray-100: #F5F6F7;
  --color-gray-200: #E8EAED;
  --color-white: #FFFFFF;
  --gradient-hero: linear-gradient(135deg, #1A4E8A 0%, #003A6B 100%);
  --gradient-hero-dynamic: linear-gradient(90deg, #1A4E8A 0%, #FF7A00 100%);
  --gradient-btn-primary: linear-gradient(90deg, #FF7A00 0%, #FF9C40 100%);
  --gradient-btn-primary-hover: linear-gradient(90deg, #FF9C40 0%, #FF7A00 100%);
  --gradient-btn-secondary: linear-gradient(90deg, #1A4E8A 0%, #2563A6 100%);
  --radius-lg: 32px;
  --radius-md: 20px;
  --anim-duration: 1.2s;
  --anim-easing: cubic-bezier(0.22, 1, 0.36, 1);
  --font-main: 'Montserrat', sans-serif;
}
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

/* ─── Скрываем стандартные хлебные крошки и h1 от движка ─── */
div.breadcrums,
article > h1:first-of-type,
.breadcrums {
  display: none !important;
}

.page-hero {
  position: relative; top: -50px; min-height: 420px; padding-top: 0; padding-bottom: 80px;
  padding-left: 5%; padding-right: 5%;
  background: var(--gradient-hero); color: white; overflow: hidden; isolation: isolate;
  display: flex; align-items: flex-end;
  width: 100vw; margin-left: calc(-50vw + 50%);
}
.page-hero-stripes {
  position: absolute; inset: 0; overflow: hidden;
  transform: skewY(-8deg); transform-origin: 0;
  background: linear-gradient(135deg, #003A6B, #1A4E8A 50%, #2563A6);
  opacity: 0.5; z-index: 1;
}
.page-hero-stripes span {
  position: absolute; height: 200px; opacity: 0.6; filter: brightness(1.15);
}
.page-hero-stripes :nth-child(1) { width: 40%; left: -8%; top: 5%; background: #3B82F6; }
.page-hero-stripes :nth-child(2) { width: 20%; right: 5%; top: 20%; background: #60A5FA; }
.page-hero-stripes :nth-child(3) { width: 35%; left: 30%; bottom: -15%; background: #2563A6; }
.page-hero-stripes :nth-child(4) { width: 15%; right: 20%; bottom: 10%; background: #FF7A00; opacity: 0.35; }
.particles { position: absolute; inset: 0; z-index: 2; pointer-events: none; overflow: hidden; }
.particle {
  position: absolute; width: 6px; height: 6px; border-radius: 50%;
  background: rgba(255,255,255,0.25); animation: floatParticle linear infinite;
}
.particle:nth-child(1)  { left:10%; top:20%; width:4px; height:4px; animation-duration:8s; animation-delay:0s; }
.particle:nth-child(2)  { left:25%; top:60%; width:8px; height:8px; animation-duration:11s; animation-delay:2s; }
.particle:nth-child(3)  { left:50%; top:35%; width:5px; height:5px; animation-duration:9s; animation-delay:1s; }
.particle:nth-child(4)  { left:70%; top:70%; width:3px; height:3px; animation-duration:13s; animation-delay:4s; }
.particle:nth-child(5)  { left:85%; top:25%; width:7px; height:7px; animation-duration:7s; animation-delay:3s; }
.particle:nth-child(6)  { left:40%; top:80%; width:4px; height:4px; animation-duration:10s; animation-delay:5s; }
.particle:nth-child(7)  { left:60%; top:15%; width:6px; height:6px; animation-duration:12s; animation-delay:1.5s; }
.particle:nth-child(8)  { left:15%; top:85%; width:5px; height:5px; animation-duration:9s; animation-delay:6s; }
@keyframes floatParticle {
  0% { transform: translateY(0) rotate(0deg); opacity: 0.3; }
  50% { opacity: 0.8; }
  100% { transform: translateY(-120px) rotate(360deg); opacity: 0; }
}
.page-hero-content {
  position: relative; z-index: 3; max-width: 1400px; margin: 0 auto; width: 100%;
}
.breadcrumb {
  display: flex; align-items: center; gap: 10px; font-size: 15px;
  color: rgba(255,255,255,0.75); margin-bottom: 24px; flex-wrap: wrap;
}
.breadcrumb a { color: rgba(255,255,255,0.75); text-decoration: none; transition: color 0.3s; }
.breadcrumb a:hover { color: var(--color-accent-400); }
.breadcrumb .sep { color: rgba(255,255,255,0.4); font-size: 12px; }
.breadcrumb .current { color: var(--color-accent-400); font-weight: 600; }
.page-hero h1 {
  font-size: clamp(34px, 5vw, 62px); font-weight: 900; line-height: 1.1;
  margin-bottom: 20px;
  background: linear-gradient(90deg, #fff 0%, #f0f4ff 40%, #FFE8CC 70%, #fff 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  text-shadow: none;
text-align: left;
}
.page-hero-meta {
  display: flex; gap: 32px; flex-wrap: wrap;
}
.meta-badge {
  display: flex; align-items: center; gap: 10px;
  background: rgba(255,255,255,0.1); backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.2); border-radius: 40px;
  padding: 10px 20px; font-size: 15px; color: rgba(255,255,255,0.9); font-weight: 600;
}
.meta-badge i { color: var(--color-accent-400); font-size: 16px; }
.scroll-down {
  position: absolute; bottom: 30px; right: 6%; z-index: 4;
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  color: rgba(255,255,255,0.6); font-size: 12px; font-weight: 600;
  letter-spacing: 2px; text-transform: uppercase;
  animation: bounce 2s ease-in-out infinite;
}
.scroll-down i { font-size: 20px; color: var(--color-accent-400); }
@keyframes bounce { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-10px);} }

.stats-bar {
margin-top: -50px;
  background: white; padding: 0;
  box-shadow: 0 8px 40px rgba(0,0,0,0.1); position: relative; z-index: 10;
  width: 100vw; margin-left: calc(-50vw + 50%);
}
.stats-bar-inner {
  max-width: 1400px; margin: 0 auto; display: grid;
  grid-template-columns: repeat(4,1fr);
}
.stat-item {
  padding: 32px 24px; text-align: center; position: relative;
  border-right: 1px solid var(--color-gray-200);
  transition: all 0.3s ease;
}
.stat-item:last-child { border-right: none; }
.stat-item:hover { background: linear-gradient(135deg, rgba(26,78,138,0.03), rgba(255,122,0,0.03)); }
.stat-number {
  font-size: 44px; font-weight: 900; line-height: 1;
  background: var(--gradient-hero-dynamic);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  margin-bottom: 8px;
}
.stat-label { font-size: 14px; font-weight: 600; color: #666; text-transform: uppercase; letter-spacing: 1px; }
.stat-icon { font-size: 28px; color: var(--color-accent-500); margin-bottom: 12px; }
@media (max-width: 768px) {
  .stats-bar-inner { grid-template-columns: repeat(2,1fr); }
  .stat-item { border-bottom: 1px solid var(--color-gray-200); }
}
@media (max-width: 480px) { .stats-bar-inner { grid-template-columns: 1fr 1fr; } }

.about-main {
  padding: 100px 6% 120px; background: var(--color-gray-100);
  width: 100vw; margin-left: calc(-50vw + 50%);
}
.about-container { max-width: 1440px; margin: 0 auto; }

.section-label {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(90deg, rgba(255,122,0,0.1), rgba(255,122,0,0.05));
  border-left: 4px solid var(--color-accent-500);
  color: var(--color-accent-500); font-size: 13px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 2px;
  padding: 8px 20px 8px 16px; border-radius: 0 40px 40px 0;
  margin-bottom: 20px;
}
.section-label-center {
  display: block; text-align: center; margin: 0 auto 20px;
}
.section-title-gradient {
  font-size: clamp(28px, 4vw, 44px); font-weight: 800; line-height: 1.2;
  text-align: center;
  background: linear-gradient(90deg, #003A6B 0%, #1A4E8A 35%, #2563A6 65%, #3B82F6 85%, #FF7A00 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  margin-bottom: 48px;
}

.intro-card {
  position: relative; border-radius: var(--radius-lg); overflow: hidden;
  background: white; box-shadow: 0 20px 60px rgba(0,0,0,0.1);
  display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 80px;
  opacity: 0; transform: translateY(60px); transition: all 1s var(--anim-easing);
}
.intro-card.visible { opacity: 1; transform: none; }
.intro-card-text {
  padding: 56px 48px; display: flex; flex-direction: column; justify-content: center;
}
.intro-card-text .section-label { margin-bottom: 24px; }
.intro-card-text h2 { font-size: 32px; font-weight: 800; color: var(--color-primary-700); margin-bottom: 24px; line-height: 1.25; }
.intro-card-text p { font-size: 17px; line-height: 1.75; color: #555; margin-bottom: 32px; }
.intro-card-img { position: relative; overflow: hidden; min-height: 420px; }
.intro-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s ease; }
.intro-card:hover .intro-card-img img { transform: scale(1.06); }
.intro-card-img::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(26,78,138,0.3) 0%, transparent 60%);
}
.deco-corner {
  position: absolute; bottom: -2px; left: -2px;
  width: 100px; height: 100px;
  background: var(--gradient-btn-primary);
  clip-path: polygon(0 100%, 0 0, 100% 100%);
  opacity: 0.15;
}
@media (max-width: 900px) {
  .intro-card { grid-template-columns: 1fr; }
  .intro-card-img { min-height: 300px; }
}

.features-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-bottom: 80px;
}
.feature-card {
  background: white; border-radius: var(--radius-md); padding: 36px 28px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.07); position: relative; overflow: hidden;
  transition: all 0.4s ease; border: 1px solid rgba(0,0,0,0.05);
  opacity: 0; transform: translateY(50px);
}
.feature-card.visible { opacity: 1; transform: none; transition: all 0.9s var(--anim-easing); }
.feature-card:nth-child(1).visible { transition-delay: 0.1s; }
.feature-card:nth-child(2).visible { transition-delay: 0.2s; }
.feature-card:nth-child(3).visible { transition-delay: 0.3s; }
.feature-card:nth-child(4).visible { transition-delay: 0.4s; }
.feature-card:nth-child(5).visible { transition-delay: 0.5s; }
.feature-card:nth-child(6).visible { transition-delay: 0.6s; }
.feature-card:hover { transform: translateY(-10px); box-shadow: 0 24px 60px rgba(0,0,0,0.12); }
.feature-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: var(--gradient-btn-primary); transform: scaleX(0);
  transform-origin: left; transition: transform 0.4s ease;
}
.feature-card:hover::before { transform: scaleX(1); }
.feature-icon {
  width: 64px; height: 64px; border-radius: 16px; margin-bottom: 20px;
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, rgba(26,78,138,0.1), rgba(59,130,246,0.1));
  font-size: 26px; color: var(--color-primary-700);
  transition: all 0.4s ease;
}
.feature-card:hover .feature-icon {
  background: var(--gradient-btn-primary); color: white;
  box-shadow: 0 8px 24px rgba(255,122,0,0.35);
}
.feature-card h3 { font-size: 20px; font-weight: 800; color: var(--color-primary-700); margin-bottom: 14px; line-height: 1.3; }
.feature-card p { font-size: 15.5px; line-height: 1.7; color: #666; }
.card-number {
  position: absolute; top: 16px; right: 18px; font-size: 72px; font-weight: 900;
  color: rgba(26,78,138,0.10); line-height: 1; font-family: var(--font-main);
  pointer-events: none; z-index: 0; letter-spacing: -2px;
  transition: color 0.4s ease;
}
.feature-card:hover .card-number { color: rgba(255,122,0,0.09); }
@media (max-width: 1024px) { .features-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .features-grid { grid-template-columns: 1fr; } }

.process-section {
  position: relative; padding: 100px 6% 120px;
  background: var(--gradient-hero); color: white; overflow: hidden; isolation: isolate;
  width: 100vw; margin-left: calc(-50vw + 50%);
}
.process-stripes {
  position: absolute; inset: 0; overflow: hidden;
  transform: skewY(-8deg); transform-origin: 0;
  background: linear-gradient(135deg, #003A6B, #1A4E8A, #2563A6);
  opacity: 0.4; z-index: 1;
}
.process-stripes span { position: absolute; height: 160px; opacity: 0.5; }
.process-stripes :nth-child(1) { width: 35%; left: -5%; top: 10%; background: #3B82F6; }
.process-stripes :nth-child(2) { width: 25%; right: 0; top: 35%; background: #60A5FA; }
.process-stripes :nth-child(3) { width: 40%; left: 25%; bottom: -10%; background: #2563A6; }
.process-container { position: relative; z-index: 3; max-width: 1440px; margin: 0 auto; }
.process-section h2 {
  font-size: clamp(28px,4vw,44px); font-weight: 800; text-align: center; margin-bottom: 72px;
  background: linear-gradient(90deg,#fff 0%,#f0f4ff 35%,#FFE8CC 65%,#fff 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.timeline { position: relative; display: flex; flex-direction: column; gap: 0; }
.timeline::before {
  content: ''; position: absolute; left: 64px; top: 0; bottom: 0; width: 2px;
  background: linear-gradient(to bottom, transparent, rgba(255,122,0,0.6) 10%, rgba(255,122,0,0.6) 90%, transparent);
}
.timeline-item {
  display: flex; gap: 40px; align-items: flex-start;
  padding: 36px 0; position: relative;
  opacity: 0; transform: translateX(-40px); transition: all 0.9s var(--anim-easing);
}
.timeline-item.visible { opacity: 1; transform: none; }
.timeline-item:nth-child(1) { transition-delay: 0.1s; }
.timeline-item:nth-child(2) { transition-delay: 0.2s; }
.timeline-item:nth-child(3) { transition-delay: 0.3s; }
.timeline-item:nth-child(4) { transition-delay: 0.4s; }
.timeline-item:nth-child(5) { transition-delay: 0.5s; }
.timeline-item:not(:last-child) { border-bottom: 1px solid rgba(255,255,255,0.08); }
.timeline-dot {
  flex: 0 0 128px; width: 128px; height: 64px;
  display: flex; align-items: center; justify-content: center; gap: 14px;
  position: relative; z-index: 2;
}
.dot-circle {
  width: 64px; height: 64px; border-radius: 50%;
  background: var(--gradient-btn-primary);
  display: flex; align-items: center; justify-content: center;
  font-size: 26px; color: white; box-shadow: 0 8px 24px rgba(255,122,0,0.45);
  flex-shrink: 0; transition: transform 0.3s ease;
}
.timeline-item:hover .dot-circle { transform: scale(1.12); }
.timeline-content { flex: 1; }
.timeline-content h3 {
  font-size: 22px; font-weight: 800; margin-bottom: 12px;
  color: var(--color-accent-400);
}
.timeline-content p { font-size: 16px; line-height: 1.7; color: rgba(255,255,255,0.88); }
@media (max-width: 640px) {
  .timeline::before { left: 32px; }
  .timeline-dot { flex: 0 0 80px; width: 80px; }
  .dot-circle { width: 48px; height: 48px; font-size: 20px; }
  .timeline-content h3 { font-size: 18px; }
}

.split-section {
  padding: 100px 6%; background: var(--color-gray-100);
  width: 100vw; margin-left: calc(-50vw + 50%);
}
.split-container { max-width: 1440px; margin: 0 auto; }
.split-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center;
  margin-bottom: 80px; opacity: 0; transform: translateY(60px); transition: all 1s var(--anim-easing);
}
.split-grid.visible { opacity: 1; transform: none; }
.split-grid.reverse { direction: rtl; }
.split-grid.reverse > * { direction: ltr; }
.split-img-wrap { position: relative; border-radius: var(--radius-lg); overflow: hidden; }
.split-img-wrap img { width: 100%; height: 400px; object-fit: cover; display: block; transition: transform 0.6s ease; }
.split-img-wrap:hover img { transform: scale(1.05); }
.split-img-wrap::before {
  content: ''; position: absolute; inset: -3px; border-radius: calc(var(--radius-lg) + 3px);
  background: var(--gradient-btn-primary); z-index: -1; opacity: 0;
  transition: opacity 0.4s ease;
}
.split-img-wrap:hover::before { opacity: 1; }
.img-badge-overlay {
  position: absolute; bottom: 20px; left: 20px; right: 20px;
  background: rgba(0,58,107,0.85); backdrop-filter: blur(10px);
  border-radius: 14px; padding: 16px 20px; border: 1px solid rgba(255,255,255,0.1);
  display: flex; align-items: center; gap: 12px;
  opacity: 0; transform: translateY(10px); transition: all 0.4s ease;
}
.split-img-wrap:hover .img-badge-overlay { opacity: 1; transform: none; }
.img-badge-overlay i { color: var(--color-accent-400); font-size: 22px; }
.img-badge-overlay span { color: white; font-size: 15px; font-weight: 700; }
.split-text { padding: 20px 0; }
.split-text h2 { font-size: 32px; font-weight: 800; color: var(--color-primary-700); margin-bottom: 20px; line-height: 1.25; }
.split-text p { font-size: 16.5px; line-height: 1.75; color: #555; margin-bottom: 24px; }
.split-text p:last-child { margin-bottom: 0; }
@media (max-width: 900px) {
  .split-grid, .split-grid.reverse { grid-template-columns: 1fr; direction: ltr; }
  .split-img-wrap img { height: 300px; }
}

.guarantees-section {
  position: relative; padding: 100px 6% 120px;
  background: var(--gradient-hero); overflow: hidden; isolation: isolate;
  width: 100vw; margin-left: calc(-50vw + 50%);
}
.guarantees-section .proc-bg-strip {
  position: absolute; inset: 0; overflow: hidden;
  transform: skewY(-5deg); transform-origin: 0;
  background: linear-gradient(135deg,#003A6B,#1A4E8A 60%,#2563A6); opacity: 0.45; z-index:1;
}
.guarantees-section .proc-bg-strip span { position: absolute; height: 150px; opacity: 0.5; }
.guarantees-section .proc-bg-strip :nth-child(1) { width: 50%; right: -10%; top: 15%; background: #3B82F6; }
.guarantees-section .proc-bg-strip :nth-child(2) { width: 30%; left: -5%; bottom: 10%; background: #60A5FA; }
.guarantees-container { position: relative; z-index: 3; max-width: 1440px; margin: 0 auto; }
.guarantees-section h2 {
  font-size: clamp(28px,4vw,44px); font-weight: 800; text-align: center; margin-bottom: 72px;
  background: linear-gradient(90deg,#fff 0%,#f0f4ff 35%,#FFE8CC 65%,#fff 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.guarantee-cards {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 28px;
}
.guarantee-card {
  background: rgba(255,255,255,0.08); backdrop-filter: blur(12px);
  border-radius: var(--radius-md); border: 1px solid rgba(255,255,255,0.15);
  padding: 36px 28px; text-align: center;
  box-shadow: 0 12px 40px rgba(0,0,0,0.3); transition: all 0.4s ease;
  opacity: 0; transform: translateY(50px);
}
.guarantee-card.visible { opacity: 1; transform: none; transition: all 0.9s var(--anim-easing); }
.guarantee-card:nth-child(1) { transition-delay: 0.1s; }
.guarantee-card:nth-child(2) { transition-delay: 0.2s; }
.guarantee-card:nth-child(3) { transition-delay: 0.3s; }
.guarantee-card:hover { transform: translateY(-12px); border-color: rgba(255,122,0,0.4); box-shadow: 0 24px 60px rgba(0,0,0,0.4); }
.gua-icon {
  width: 80px; height: 80px; border-radius: 50%; margin: 0 auto 24px;
  background: rgba(255,122,0,0.15); border: 2px solid rgba(255,122,0,0.3);
  display: flex; align-items: center; justify-content: center;
  font-size: 30px; color: var(--color-accent-400);
  transition: all 0.4s ease;
}
.guarantee-card:hover .gua-icon { background: var(--gradient-btn-primary); color: white; border-color: transparent; box-shadow: 0 8px 24px rgba(255,122,0,0.4); }
.guarantee-card h3 { font-size: 20px; font-weight: 800; color: white; margin-bottom: 14px; }
.guarantee-card p { font-size: 15.5px; line-height: 1.7; color: rgba(255,255,255,0.85); }
@media (max-width: 1024px) { .guarantee-cards { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .guarantee-cards { grid-template-columns: 1fr; } }

.certs-section { padding: 100px 6% 120px; background: var(--color-gray-100); width: 100vw; margin-left: calc(-50vw + 50%); }
.certs-container { max-width: 1440px; margin: 0 auto; }
.certs-section h2 {
  font-size: clamp(28px,4vw,40px); font-weight: 800; text-align: center; margin-bottom: 64px;
  background: linear-gradient(90deg,#003A6B 0%,#1A4E8A 30%,#2563A6 60%,#3B82F6 80%,#FF7A00 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.certs-grid {
  display: grid; grid-template-columns: repeat(4,1fr); gap: 28px;
}
.cert-item {
  position: relative; border-radius: 20px; overflow: hidden;
  box-shadow: 0 10px 32px rgba(0,0,0,0.1); transition: all 0.4s ease;
  opacity: 0; transform: translateY(40px); cursor: pointer;
}
.cert-item.visible { opacity: 1; transform: none; transition: all 1s var(--anim-easing); }
.cert-item:nth-child(1) { transition-delay: 0.1s; }
.cert-item:nth-child(2) { transition-delay: 0.2s; }
.cert-item:nth-child(3) { transition-delay: 0.3s; }
.cert-item:nth-child(4) { transition-delay: 0.4s; }
.cert-item:hover { transform: translateY(-12px) scale(1.03); box-shadow: 0 24px 64px rgba(0,0,0,0.18); }
.cert-item img { width: 100%; height: auto; display: block; }
.cert-overlay {
  position: absolute; inset: 0; background: rgba(26,78,138,0); transition: background 0.4s;
  display: flex; align-items: center; justify-content: center;
}
.cert-item:hover .cert-overlay { background: rgba(26,78,138,0.55); }
.cert-overlay-icon {
  opacity: 0; transform: scale(0.6); transition: all 0.4s ease;
  width: 56px; height: 56px; border-radius: 50%;
  background: linear-gradient(90deg, #FF7A00 0%, #FF9C40 100%); display: flex; align-items: center;
  justify-content: center; font-size: 22px; color: white;
}
.cert-item:hover .cert-overlay-icon { opacity: 1; transform: scale(1); }
@media (max-width: 1024px) { .certs-grid { grid-template-columns: 1fr 1fr; } }

#certLb {
  display: none; position: fixed; inset: 0; z-index: 999999;
  background: rgba(0,0,0,0.92);
  align-items: center; justify-content: center;
}
#certLb.on { display: flex; }
#certLb img { max-width: 90vw; max-height: 88vh; border-radius: 8px; display: block; }
#certLbClose {
  position: fixed; top: 18px; right: 22px; font-size: 38px; line-height: 1;
  color: #fff; cursor: pointer; background: none; border: none; z-index: 1000000; opacity: 0.85;
}
#certLbClose:hover { opacity: 1; }
#certLbPrev, #certLbNext {
  position: fixed; top: 50%; transform: translateY(-50%);
  font-size: 56px; line-height: 1; color: #fff; cursor: pointer;
  background: none; border: none; z-index: 1000000; opacity: 0.75; padding: 0 12px;
}
#certLbPrev { left: 4px; }
#certLbNext { right: 4px; }
#certLbPrev:hover, #certLbNext:hover { opacity: 1; }

.cta-section {
  position: relative; padding: 100px 6%;
  background: var(--gradient-hero); overflow: hidden; isolation: isolate; text-align: center;
  width: 100vw; margin-left: calc(-50vw + 50%);
}
.cta-bg {
  position: absolute; inset: 0; overflow: hidden;
  background: linear-gradient(135deg,#003A6B,#1A4E8A,#2563A6); opacity: 0.5; z-index:1;
}
.cta-bg::before {
  content: ''; position: absolute; width: 600px; height: 600px; border-radius: 50%;
  background: rgba(255,122,0,0.1); top: -200px; right: -100px; z-index: 1;
}
.cta-bg::after {
  content: ''; position: absolute; width: 400px; height: 400px; border-radius: 50%;
  background: rgba(59,130,246,0.15); bottom: -150px; left: -80px; z-index: 1;
}
.cta-container { position: relative; z-index: 3; max-width: 900px; margin: 0 auto; }
.cta-container h2 {
  font-size: clamp(28px,5vw,52px); font-weight: 900; margin-bottom: 20px;
  background: linear-gradient(90deg,#fff,#FFE8CC 50%,#fff 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.cta-container p { font-size: 18px; color: rgba(255,255,255,0.85); margin-bottom: 44px; line-height: 1.7; }
.cta-buttons { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; }
.btn-cta-primary {
  background: var(--gradient-btn-primary); color: white; padding: 18px 44px;
  border-radius: 14px; border: none; font-family: var(--font-main); font-weight: 700;
  font-size: 17px; cursor: pointer; box-shadow: 0 10px 30px rgba(255,122,0,0.45);
  transition: all 0.35s ease; display: flex; align-items: center; gap: 10px;
}
.btn-cta-primary:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(255,122,0,0.6); }
.btn-cta-secondary {
  background: rgba(255,255,255,0.1); color: white; padding: 18px 44px;
  border-radius: 14px; border: 2px solid rgba(255,255,255,0.35); font-family: var(--font-main);
  font-weight: 700; font-size: 17px; cursor: pointer; backdrop-filter: blur(8px);
  transition: all 0.35s ease; display: flex; align-items: center; gap: 10px;
}
.btn-cta-secondary:hover { background: rgba(255,255,255,0.18); transform: translateY(-4px); }

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(40px); }
  to { opacity: 1; transform: none; }
}
.animate-fadeup { animation: fadeUp 1s var(--anim-easing) both; }
.d1 { animation-delay: 0.2s; } .d2 { animation-delay: 0.45s; }
.d3 { animation-delay: 0.7s; } .d4 { animation-delay: 0.95s; }

.deco-shape {
  position: absolute; border-radius: 50%; pointer-events: none;
  opacity: 0.06; animation: floatShape 12s ease-in-out infinite;
}
@keyframes floatShape {
  0%,100%{transform:translateY(0) rotate(0deg);}
  50%{transform:translateY(-30px) rotate(180deg);}
}

.divider-accent {
  height: 5px; width: 100%; max-width: 120px; margin: 0 auto 48px;
  border-radius: 3px; background: var(--gradient-btn-primary);
}

.quote-block {
  position: relative; background: white; border-radius: var(--radius-md);
  padding: 40px 48px 40px 64px; margin: 60px 0; box-shadow: 0 10px 30px rgba(0,0,0,0.07);
  border-left: 6px solid var(--color-accent-500);
  opacity: 0; transform: translateY(40px); transition: all 0.9s var(--anim-easing);
}
.quote-block.visible { opacity: 1; transform: none; }
.quote-block::before {
  content: '"'; position: absolute; left: 16px; top: 10px; font-size: 80px; line-height: 1;
  color: var(--color-accent-500); opacity: 0.3; font-family: Georgia, serif;
}
.quote-block p { font-size: 18px; line-height: 1.75; color: var(--color-primary-700); font-weight: 500; font-style: italic; }
@media (max-width: 640px) { .quote-block { padding: 32px 24px 32px 44px; } .quote-block p { font-size: 16px; } }

@media (max-width: 640px) {
  .page-hero { min-height: 360px; padding-top: 90px; }
  .about-main, .split-section, .certs-section { padding: 70px 5% 80px; }
  .process-section, .guarantees-section { padding: 70px 5% 80px; }
}
