/* ===== HERO ===== */
.seo-hero {background: linear-gradient(rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.65)), center/cover no-repeat; padding: calc(5rem + 70px) 0 5rem; text-align: center; position: relative; min-height: 400px; display: flex; align-items: center; justify-content: center;}
.seo-hero .container {position: relative; z-index: 2;}
.seo-hero h1 {font-size: 2.8rem; font-weight: 700; color: #ffffff; margin-bottom: 1rem; text-shadow: 0 2px 12px rgba(0, 0, 0, 0.7);}
.seo-hero p {font-size: 1.25rem; color: #ffffff; opacity: 0.95; max-width: 700px; margin: 0 auto 2rem; text-shadow: 0 1px 6px rgba(0, 0, 0, 0.6);}
.seo-hero .seo-cta {background: linear-gradient(135deg, #ff4b66, #bf243c); color: #ffffff; border-radius: 50px; padding: 14px 36px; font-weight: 600; text-decoration: none; display: inline-block; transition: all 0.3s; font-size: 1.1rem; box-shadow: 0 8px 24px rgba(191, 36, 60, 0.4);}
.seo-hero .seo-cta:hover {transform: translateY(-3px); box-shadow: 0 12px 32px rgba(191, 36, 60, 0.55); color: #ffffff;}

/* ===== СЕКЦИИ ===== */
.seo-section {padding: 3rem 0;}
.seo-section h2 {font-size: 1.8rem; font-weight: 600; color: #333; margin-bottom: 1.5rem;}
.seo-section h3 {font-size: 1.3rem; font-weight: 600; color: #b35f5f; margin-bottom: 1rem;}

/* ===== СПИСОК ПРЕИМУЩЕСТВ ===== */
.seo-feature-list {list-style: none; padding: 0;}
.seo-feature-list li {padding: 0.5rem 0; font-size: 1.05rem; color: #555;}
.seo-feature-list li i {color: #28a745; margin-right: 0.5rem;}

/* ===== ШАГИ ===== */
.seo-steps {display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 1.5rem; margin: 2rem 0;}
.seo-step {background: white; border-radius: 16px; padding: 1.5rem; box-shadow: 0 2px 8px rgba(0,0,0,0.06); text-align: center;}
.seo-step-number {width: 48px; height: 48px; background: #b35f5f; color: white; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; font-weight: 700; margin: 0 auto 1rem;}
.seo-step h4 {font-size: 1.1rem; font-weight: 600; color: #333; margin-bottom: 0.5rem;}

/* ===== CTA-КНОПКА (общая) ===== */
.seo-cta {background: linear-gradient(135deg, #ff4b66, #bf243c); color: white; border-radius: 50px; padding: 12px 30px; font-weight: 600; text-decoration: none; display: inline-block; transition: all 0.3s;}
.seo-cta:hover {transform: translateY(-2px); box-shadow: 0 8px 24px rgba(191, 36, 60, 0.35); color: white;}

/* ===== FAQ ===== */
.seo-faq-item {margin-bottom: 0.5rem; border: 1px solid #ffcccc; border-radius: 12px; overflow: hidden;}
.seo-faq-question {padding: 1rem 1.25rem; font-weight: 600; color: #333; cursor: pointer; background: #fff5f5;}
.seo-faq-answer {padding: 1rem 1.25rem; color: #555; line-height: 1.7; background: white;}

/* ===== ГАЛЕРЕЯ (ПРОСТАЯ СЕТКА) ===== */
.seo-gallery {margin: 2rem 0;}

/* навигация */
.seo-breadcrumbs {display: flex; justify-content: center; margin-top: -1.75rem; position: relative; z-index: 5;}
.seo-breadcrumbs .breadcrumb {font-size: 0.9rem; --bs-breadcrumb-divider: '›'; padding: 0.75rem 1.5rem; background: #fff; border-radius: 50px; box-shadow: 0 2px 8px rgba(0,0,0,0.06);}
.seo-breadcrumbs .breadcrumb-item a {color: #b35f5f; text-decoration: none;}
.seo-breadcrumbs .breadcrumb-item a:hover {color: #8b4040; text-decoration: underline;}
.seo-breadcrumbs .breadcrumb-item.active {color: #666;}
@media (max-width: 768px) {.seo-breadcrumbs {margin-top: -1.25rem;} .seo-breadcrumbs .breadcrumb {font-size: 0.8rem; padding: 0.5rem 1rem;}}

/* Одиночное фото */
.seo-gallery-single {margin: 0;}
.seo-gallery-single img {width: 100%; height: auto; max-height: 600px; object-fit: contain; cursor: pointer; transition: transform 0.3s; display: block; margin: 0 auto; background: #f8f8f8; border-radius: 12px;}
.seo-gallery-single img:hover {transform: scale(1.01);}

/* Сетка фото */
.seo-gallery-grid {display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; align-items: start;}
.seo-gallery-item {margin: 0; cursor: pointer; transition: transform 0.3s; overflow: hidden; border-radius: 12px; background: #f8f8f8;}
.seo-gallery-item:hover {transform: translateY(-4px); box-shadow: 0 12px 24px rgba(0,0,0,0.12);}
.seo-gallery-item img {width: 100%; height: auto; display: block; transition: transform 0.3s;}
.seo-gallery-item:hover img {transform: scale(1.03);}

/* ===== ЛАЙТБОКС ===== */
.lightbox-overlay {display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.9); z-index: 10000; justify-content: center; align-items: center; cursor: pointer;}
.lightbox-overlay.active {display: flex;}
.lightbox-overlay img {max-width: 90%; max-height: 90%; object-fit: contain; border-radius: 8px;}
.lightbox-close {position: absolute; top: 20px; right: 30px; color: white; font-size: 2.5rem; cursor: pointer; transition: color 0.3s;}
.lightbox-close:hover {color: #ff4b66;}

/* ===== АДАПТИВНОСТЬ ===== */
@media (max-width: 992px) {
.seo-hero h1 {font-size: 2.2rem;}
.seo-hero {min-height: 350px; padding: calc(4rem + 60px) 0 4rem;}
.seo-gallery-grid {grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 0.75rem;}
.seo-gallery-single img {max-height: 500px;}
.seo-steps {grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1rem;}
}

@media (max-width: 768px) {
.seo-hero h1 {font-size: 1.8rem;}
.seo-hero p {font-size: 1rem;}
.seo-hero .seo-cta {padding: 12px 24px; font-size: 0.95rem;}
.seo-section {padding: 2rem 0;}
.seo-section h2 {font-size: 1.4rem;}
.seo-gallery-grid {grid-template-columns: repeat(2, 1fr); gap: 0.5rem;}
.seo-gallery-single img {max-height: 400px;}
.seo-step {padding: 1rem;}
.seo-step-number {width: 36px; height: 36px; font-size: 1.1rem;}
.seo-step h4 {font-size: 0.95rem;}
.seo-step p {font-size: 0.85rem;}
}

@media (max-width: 480px) {
.seo-hero {min-height: 280px; padding: calc(3.5rem + 50px) 0 3.5rem;}
.seo-hero h1 {font-size: 1.5rem;}
.seo-hero p {font-size: 0.9rem;}
.seo-hero .seo-cta {padding: 10px 20px; font-size: 0.9rem;}
.seo-section h2 {font-size: 1.2rem;}
.seo-steps {grid-template-columns: 1fr; gap: 0.75rem;}
}
	
.seo-intro-block{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 4px 16px #0000000f;border:1px solid #f0e0e0}
.seo-intro-block h3{margin-bottom:1rem;font-size:1.4rem}
.seo-intro-block .seo-feature-list li{padding:.4rem 0;font-size:.95rem;color:#555}
.seo-section .card{border-radius:16px;transition:transform 0.3s,box-shadow .3s;overflow:hidden}
.seo-section .card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0000001a}
.seo-section .card .card-body{padding:1.5rem}
.seo-section .card h5{font-size:1.15rem;font-weight:600;margin-bottom:.75rem}
.seo-section .card .seo-gallery-single img{max-height:300px;border-radius:12px;margin-bottom:1rem}
.seo-divider{border:none;border-top:2px dashed #fcc;margin:2.5rem 0;opacity:.7}

.seo-hub-section{margin-bottom:2rem}
.seo-hub-title{font-size:1.5rem;font-weight:700;color:#333;margin-bottom:.5rem}
.seo-hub-card{display:block;background:#fff;border:1px solid #f0e0e0;border-radius:16px;padding:1.5rem;text-decoration:none;transition:all .3s;height:100%}
.seo-hub-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000014;border-color:#b35f5f}
.seo-hub-icon{font-size:2rem;display:block;margin-bottom:.75rem}
.seo-hub-card h5{color:#333;font-weight:600;margin-bottom:.5rem}
.seo-hub-card p{color:#666;font-size:.9rem;margin:0}
.seo-hub-card--soon{opacity:.6;cursor:default;pointer-events:none}