/* OSMONET - genere par build-css.py, ne pas editer a la main.
   Source : le CSS qui vivait dans le contenu de cette page.
   L ordre des regles est celui d origine, la cascade est preservee. */

:root {
	--primary-blue:#002c72;
	--dark-blue:#003D82;
	--accent-turquoise:#00D4CC;
	--white:#FFFFFF;
	--light-bg:#F9FAFB;
	--text-dark:#1F2937;
	--text-gray:#6B7280;
	--border-gray:#E5E7EB;
	--shadow-sm:0 1px 3px rgba(0, 0, 0, 0.1);
	--shadow-md:0 4px 6px rgba(0, 0, 0, 0.1);
	--shadow-lg:0 10px 20px rgba(0, 0, 0, 0.1);
}
* {
	margin:0;
	padding:0;
	box-sizing:border-box;
}
body {
	font-family:Poppins,sans-serif;
	color:var(--text-dark);
	line-height:1.6;
	overflow-x:hidden;
}
.header-actions-modern {
	display:flex;
	align-items:center;
	gap:1.5rem;
}
.phone-modern {
	color:var(--text-dark);
	text-decoration:none;
	font-weight:500;
	font-size:.95rem;
}
.btn-primary-modern {
	background:var(--accent-turquoise);
	color:#fff;
	padding:.75rem 1.5rem;
	border-radius:8px;
	text-decoration:none;
	font-weight:600;
	font-size:.95rem;
	transition:all .3s ease;
}
.btn-primary-modern:hover {
	background:var(--dark-blue);
	transform:translateY(-2px);
	box-shadow:var(--shadow-md);
}
.hero-modern-video {
	position:relative;
	min-height:78vh;
	overflow:hidden;
}
.header-actions-modern {
	display:flex;
	align-items:center;
	gap:1.5rem;
}
.phone-modern {
	color:var(--text-dark);
	text-decoration:none;
	font-weight:500;
	font-size:.95rem;
}
.hero-video-bg {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:1;
}
.hero-video-bg video {
	position:absolute;
	top:50%;
	left:50%;
	min-width:100%;
	min-height:100%;
	width:auto;
	height:auto;
	transform:translate(-50%,-50%);
	object-fit:cover;
}
.video-overlay {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:linear-gradient(135deg,rgba(0,61,130,.48) 0,rgba(0,102,255,.38) 100%);
	z-index:2;
}
.hero-text-video h1 {
	font-size:3.5rem;
	font-weight:700;
	color:#fff;
	line-height:1.2;
	margin-bottom:1.5rem;
	text-shadow:2px 2px 8px rgba(0,0,0,.6);
}
.hero-text-video h1 .highlight { color:#00d4cc }
.hero-text-video p {
	font-size:1.1rem;
	color:rgba(255,255,255,.92);
	line-height:1.7;
	margin-bottom:1.5rem;
	max-width:650px;
}
.hero-rating-video {
	display:flex;
	align-items:center;
	gap:1rem;
	margin-bottom:2rem;
	color:#fff;
}
.stars-hero {
	color:#ffc107;
	font-size:1.2rem;
	letter-spacing:2px;
}
.hero-rating-video span { font-size:.95rem; opacity:.9 }
.hero-buttons-video {
	display:flex;
	gap:1rem;
	flex-wrap:wrap;
}
.btn-hero-primary-video {
	background:#00d4cc;
	color:#fff;
	padding:1rem 2rem;
	border-radius:8px;
	text-decoration:none;
	font-weight:600;
	font-size:1rem;
	transition:all .3s ease;
	display:inline-block;
}
.btn-hero-primary-video:hover {
	background:#0052cc;
	transform:translateY(-2px);
	box-shadow:0 8px 20px rgba(0,102,255,.4);
}
.btn-hero-secondary-video {
	background:#fff;
	color:#00d4cc;
	padding:1rem 2rem;
	border-radius:8px;
	text-decoration:none;
	font-weight:600;
	font-size:1rem;
	transition:all .3s ease;
	display:inline-block;
}
.btn-hero-secondary-video:hover { background:rgba(255,255,255,.95); transform:translateY(-2px) }
.hero-stats-compact {
	background:#fff;
	border-radius:12px;
	padding:1.5rem;
	box-shadow:0 20px 40px rgba(0,0,0,.2);
	display:flex;
	flex-direction:column;
	gap:1.5rem;
	width:100%;
	max-width:200px;
}
.stat-compact {
	display:flex;
	align-items:center;
	gap:1rem;
	padding-bottom:.5rem;
	border-bottom:1px solid #e5e7eb;
}
.stat-compact:last-child { border-bottom:none; padding-bottom:0 }
.stat-icon-compact {
	width:50px;
	height:50px;
	background:#f0f7ff;
	border-radius:10px;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#002c72;
	flex-shrink:0;
}
.stat-icon-compact svg { width:28px; height:28px }
.stat-content-compact { flex:1 }
.stat-number-compact {
	font-size:1.5rem;
	font-weight:800;
	color:#002c72;
	line-height:1;
	margin-bottom:.3rem;
}
.stat-label-compact {
	font-size:.85rem;
	color:#6b7280;
	line-height:1.3;
}
.advantages-bar-mono { background:#002c72; padding:2rem 0 }
.advantages-container-mono {
	max-width:1400px;
	margin:0 auto;
	padding:0 2rem;
	display:grid;
	grid-template-columns:repeat(6,1fr);
	gap:2rem;
}
.advantage-mono {
	display:flex;
	align-items:center;
	gap:1rem;
	color:#fff;
}
.adv-icon-mono {
	width:50px;
	height:50px;
	background:rgba(255,255,255,.15);
	border-radius:10px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
	transition:all .3s ease;
}
.advantage-mono:hover .adv-icon-mono { background:rgba(255,255,255,.25); transform:translateY(-2px) }
.adv-icon-mono svg {
	width:28px;
	height:28px;
	color:#fff;
}
.adv-text-mono { flex:1 }
.adv-text-mono strong {
	display:block;
	font-size:.95rem;
	font-weight:600;
	margin-bottom:.2rem;
}
.adv-text-mono span { font-size:.85rem; opacity:.9 }
.hero-content-video {
	max-width:1400px;
	margin:0 auto;
	padding:100px 2rem 80px;
	display:grid;
	grid-template-columns:1fr 480px;
	gap:4rem;
	align-items:center;
	position:relative;
	z-index:3;
}
.hero-form-compact {
	background:rgba(255,255,255,.98);
	padding:2rem 1.5rem;
	border-radius:16px;
	box-shadow:0 12px 32px rgba(0,0,0,.3);
}
.hero-form-compact h3 {
	font-size:1.5rem;
	font-weight:700;
	color:#1f2937;
	margin-bottom:.8rem;
	text-align:center;
}
.hero-form-compact p {
	font-size:.9rem;
	color:#6b7280;
	text-align:center;
}
.hero-form-compact > p:nth-child(2) { margin-bottom:1.5rem }
.services-modern {
	padding:6rem 2rem;
	background:#f9fafb;
	margin:0;
	position:relative;
	overflow:hidden;
	border-top:1px solid rgba(0,102,255,.08);
}
.services-modern::after {
	content:'';
	position:absolute;
	bottom:0;
	left:50%;
	transform:translateX(-50%);
	width:100px;
	height:4px;
	background:linear-gradient(90deg,transparent,#06f,transparent);
}
.services-header-modern {
	text-align:center;
	max-width:800px;
	margin:0 auto 4rem;
}
.services-header-modern h2 {
	font-size:2.5rem;
	font-weight:700;
	color:var(--text-dark);
	margin-bottom:1rem;
	line-height:1.3;
}
.services-header-modern p {
	font-size:1.1rem;
	color:var(--text-gray);
	line-height:1.7;
}
.services-grid-modern {
	max-width:1200px;
	margin:0 auto;
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:2rem;
}
.service-card-modern {
	background:#fff;
	border-radius:12px;
	overflow:hidden;
	box-shadow:var(--shadow-sm);
	transition:all .3s ease;
}
.service-card-modern:hover { transform:translateY(-8px); box-shadow:var(--shadow-lg) }
.service-card-modern img {
	width:100%;
	height:220px;
	object-fit:cover;
}
.service-card-modern h3 {
	font-size:1.3rem;
	font-weight:600;
	color:var(--text-dark);
	margin:1.5rem 1.5rem .8rem;
}
.service-card-modern p {
	font-size:.95rem;
	color:var(--text-gray);
	line-height:1.6;
	margin:0 1.5rem 1rem;
}
.service-card-modern a {
	display:inline-block;
	margin:0 1.5rem 1.5rem;
	color:var(--primary-blue);
	text-decoration:none;
	font-weight:600;
	font-size:.95rem;
	transition:gap .3s ease;
}
.service-card-modern a:hover { gap:.5rem }
.why-us-modern { padding:6rem 2rem; margin-top:40px }
.why-container {
	max-width:1200px;
	margin:0 auto;
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:4rem;
	align-items:start;
}
.why-left h3 {
	font-size:1rem;
	color:var(--primary-blue);
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:1px;
	margin-bottom:.5rem;
}
.why-left h2 {
	font-size:2.5rem;
	font-weight:700;
	color:var(--text-dark);
	margin-bottom:1.5rem;
	line-height:1.3;
}
.why-left p {
	font-size:1rem;
	color:var(--text-gray);
	line-height:1.7;
	margin-bottom:2rem;
}
.stats-grid-modern {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:2rem;
}
.stat-item-modern {
	text-align:center;
	padding:1.5rem;
	background:#fff;
	border-radius:12px;
	box-shadow:var(--shadow-sm);
}
.stat-num {
	font-size:2.5rem;
	font-weight:800;
	color:var(--primary-blue);
	line-height:1;
}
.stat-text {
	font-size:.9rem;
	color:var(--text-gray);
	margin-top:.5rem;
}
.feature-grid {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:2rem;
}
.feature-item {
	display:flex;
	gap:1rem;
	align-items:start;
}
.feature-icon {
	width:50px;
	height:50px;
	background:var(--primary-blue);
	color:#fff;
	border-radius:10px;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1.5rem;
	flex-shrink:0;
}
.feature-item h4 {
	font-size:1.1rem;
	font-weight:600;
	color:var(--text-dark);
	margin-bottom:.5rem;
}
.feature-item p {
	font-size:.9rem;
	color:var(--text-gray);
	line-height:1.5;
}
.zone-modern { padding:6rem 2rem; background:#fff }
.zone-container-modern {
	max-width:1200px;
	margin:0 auto;
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:4rem;
	align-items:start;
}
.zone-left h3 {
	font-size:1rem;
	color:var(--primary-blue);
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:1px;
	margin-bottom:.5rem;
}
.zone-left h2 {
	font-size:2.5rem;
	font-weight:700;
	color:var(--text-dark);
	margin-bottom:1.5rem;
	line-height:1.3;
}
.zone-left p {
	font-size:1rem;
	color:var(--text-gray);
	line-height:1.7;
	margin-bottom:2rem;
}
.btn-zone-modern {
	display:inline-block;
	background:var(--accent-turquoise);
	color:#fff;
	padding:1rem 2rem;
	border-radius:8px;
	text-decoration:none;
	font-weight:600;
	transition:all .3s ease;
}
.btn-zone-modern:hover { background:var(--dark-blue); transform:translateY(-2px) }
.cta-content-modern h2 {
	font-size:2.5rem;
	font-weight:700;
	color:#fff;
	margin-bottom:1rem;
	line-height:1.3;
}
.cta-content-modern p {
	font-size:1.1rem;
	color:rgba(255,255,255,.8);
	margin-bottom:2rem;
}
.btn-cta-white {
	display:inline-block;
	background:#fff;
	color:var(--primary-blue);
	padding:1rem 2.5rem;
	border-radius:8px;
	text-decoration:none;
	font-weight:600;
	font-size:1.1rem;
	transition:all .3s ease;
}
.btn-cta-white:hover { transform:translateY(-2px); box-shadow:0 8px 20px rgba(255,255,255,.3) }
.cta-phone {
	margin-top:1.5rem;
	color:rgba(255,255,255,.8);
	font-size:1rem;
}
.cta-phone strong { color:#fff; font-weight:700 }
.footer-logo-modern img { height:40px; margin-bottom:1rem }
.footer-desc {
	font-size:.9rem;
	color:rgba(255,255,255,.7);
	line-height:1.6;
	margin-bottom:1.5rem;
}
.footer-col h4 {
	font-size:1.1rem;
	font-weight:600;
	margin-bottom:1.5rem;
}
.footer-col ul { list-style:none }
.footer-col ul li { margin-bottom:.8rem }
.footer-col ul li a {
	color:rgba(255,255,255,.7);
	text-decoration:none;
	font-size:.9rem;
	transition:color .3s ease;
}
.footer-col ul li a:hover { color:#fff }
.footer-bottom {
	max-width:1200px;
	margin:0 auto;
	padding-top:2rem;
	border-top:1px solid rgba(255,255,255,.1);
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.footer-bottom p { font-size:.85rem; color:rgba(255,255,255,.6) }
.footer-legal { display:flex; gap:2rem }
.footer-legal a {
	color:rgba(255,255,255,.6);
	text-decoration:none;
	font-size:.85rem;
}
.footer-legal a:hover { color:#fff }

@media (max-width:1024px) {
	.services-grid-modern { grid-template-columns:repeat(2,1fr) }
	.why-container, .zone-container-modern { grid-template-columns:1fr }
	.feature-grid { grid-template-columns:1fr }
}

@media (max-width:768px) {
	.services-grid-modern { grid-template-columns:1fr }
	.stats-grid-modern { grid-template-columns:1fr }
	.footer-bottom {
		flex-direction:column;
		gap:1rem;
		text-align:center;
	}
	.footer-legal { flex-direction:column; gap:.5rem }
}

@media (max-width:480px) {
	.cta-content-modern h2, .services-header-modern h2, .testimonial-container h2, .why-left h2, .zone-left h2 { font-size:2rem }
}

@media (max-width:1024px) {
	.hero-content-video { grid-template-columns:1fr; gap:2rem }
	.hero-stats-compact {
		max-width:100%;
		flex-direction:row;
		justify-content:space-around;
		padding:1.5rem;
	}
	.stat-compact {
		flex-direction:column;
		text-align:center;
		border-bottom:none;
		border-right:1px solid #e5e7eb;
		padding-bottom:0;
		padding-right:1.5rem;
	}
	.stat-compact:last-child { border-right:none; padding-right:0 }
	.stat-icon-compact { margin-bottom:.5rem }
	.advantages-container-mono { grid-template-columns:repeat(3,1fr) }
}

@media (max-width:768px) {
	.hero-modern-video { min-height:550px }
	.hero-content-video { padding:80px 1.5rem 60px }
	.hero-text-video h1 { font-size:2.5rem }
	.hero-text-video p { font-size:1rem }
	.hero-stats-compact { flex-direction:column }
	.stat-compact {
		flex-direction:row;
		text-align:left;
		border-right:none;
		border-bottom:1px solid #e5e7eb;
		padding-right:0;
		padding-bottom:1.5rem;
	}
	.stat-compact:last-child { border-bottom:none; padding-bottom:0 }
	.stat-icon-compact { margin-bottom:0 }
	.advantages-container-mono { grid-template-columns:repeat(2,1fr); gap:1.5rem }
	.hero-buttons-video { flex-direction:column; width:100% }
	.btn-hero-primary-video, .btn-hero-secondary-video { width:100%; text-align:center }
}

@media (max-width:480px) {
	.hero-text-video h1 { font-size:2rem }
	.hero-text-video p { font-size:.95rem }
	.advantages-container-mono { grid-template-columns:1fr }
	.stat-number-compact { font-size:1.8rem }
	.stat-label-compact { font-size:.8rem }
}

@media (max-width:768px) {
	.hero-video-bg video { display:none }
	.hero-video-bg { background:linear-gradient(135deg,rgba(0,61,130,.92) 0,rgba(0,102,255,.85) 100%),url(https://images.pexels.com/photos/1643389/pexels-photo-1643389.webp?auto=compress&cs=tinysrgb&w=800) center/cover }
	.video-overlay { display:none }
}
.faq-modern { padding:6rem 2rem; background:#f9fafb }
.faq-container-modern { max-width:900px; margin:0 auto }
.faq-container-modern h2 {
	font-size:2.5rem;
	font-weight:700;
	color:#1f2937;
	text-align:center;
	margin-bottom:1rem;
}
.faq-list {
	display:flex;
	flex-direction:column;
	gap:1rem;
}
.faq-item-modern {
	background:#fff;
	border-radius:12px;
	overflow:hidden;
	box-shadow:0 1px 3px rgba(0,0,0,.1);
	transition:all .3s ease;
}
.faq-item-modern:hover { box-shadow:0 4px 6px rgba(0,0,0,.1) }
.faq-question-modern {
	padding:1.5rem 2rem;
	display:flex;
	justify-content:space-between;
	align-items:center;
	cursor:pointer;
	user-select:none;
	transition:background .3s ease;
}
.faq-question-modern:hover { background:#f9fafb }
.faq-question-modern h3 {
	font-size:1.1rem;
	font-weight:600;
	color:#1f2937;
	margin:0;
	flex:1;
	padding-right:1rem;
}
.faq-toggle {
	font-size:1.5rem;
	color:#00d4cc;
	font-weight:300;
	transition:transform .3s ease;
	flex-shrink:0;
	width:30px;
	height:30px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#f0f7ff;
	border-radius:50%;
}
.faq-answer-modern {
	max-height:0;
	overflow:hidden;
	transition:max-height .3s ease,padding .3s ease;
	padding:0 2rem;
}
.faq-answer-modern p {
	font-size:1rem;
	color:#6b7280;
	line-height:1.7;
	margin:0;
}
.faq-answer-modern strong { color:#1f2937; font-weight:600 }

@media (max-width:768px) {
	.faq-modern { padding:4rem 1.5rem }
	.faq-container-modern h2 { font-size:2rem }
	.faq-question-modern { padding:1rem 1.5rem }
	.faq-question-modern h3 { font-size:1rem }
	.faq-answer-modern { padding:0 1.5rem }
}

@media (max-width:480px) {
	.faq-container-modern h2 { font-size:1.7rem }
	.faq-question-modern { padding:1rem }
	.faq-question-modern h3 { font-size:.95rem }
	.faq-toggle {
		width:28px;
		height:28px;
		font-size:1.3rem;
	}
	.faq-answer-modern p { font-size:.9rem }
	.faq-answer-modern { padding:0 1rem }
}
@keyframes slideDown {from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.faq-question-modern:focus-visible { outline:2px solid #00d4cc; outline-offset:-2px }

@media print {
	.devis-modern, .faq-modern { page-break-inside:avoid }
	.faq-item-modern { box-shadow:none; border:1px solid #e5e7eb }
}
@keyframes slideAuto {0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.testimonial-card-modern {
	background:#fff;
	padding:2rem;
	border-radius:16px;
	box-shadow:0 4px 12px rgba(0,0,0,.08);
	min-width:400px;
	max-width:400px;
	transition:all .3s ease;
	border:2px solid transparent;
}
.testimonial-card-modern:hover {
	transform:translateY(-8px);
	box-shadow:0 12px 28px rgba(0,0,0,.15);
	border-color:#06f;
}
.card-header-modern {
	display:flex;
	align-items:center;
	gap:1rem;
	margin-bottom:1.5rem;
}
.avatar-modern {
	width:55px;
	height:55px;
	background:linear-gradient(135deg,#06f,#00d4cc);
	color:#fff;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1.3rem;
	font-weight:700;
	flex-shrink:0;
}
.client-info-modern { flex:1 }
.client-info-modern h4 {
	font-size:1.1rem;
	font-weight:700;
	color:#1f2937;
	margin-bottom:.2rem;
}
.client-info-modern p {
	font-size:.9rem;
	color:#6b7280;
	margin:0;
}
.stars-small {
	font-size:1.1rem;
	color:#ffc107;
	letter-spacing:2px;
}
.testimonial-text-modern {
	font-size:1rem;
	color:#4b5563;
	line-height:1.7;
	margin-bottom:1.5rem;
	min-height:100px;
}
.testimonial-footer-modern {
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding-top:1rem;
	border-top:1px solid #e5e7eb;
}
.service-tag {
	background:#f0f7ff;
	color:#06f;
	padding:.4rem .8rem;
	border-radius:6px;
	font-size:.85rem;
	font-weight:600;
}
.date-tag { font-size:.85rem; color:#9ca3af }
.testimonials-gradient-modern {
	padding:6rem 2rem;
	background:linear-gradient(135deg,#002c72 0,#0052cc 100%);
	position:relative;
	overflow:hidden;
}
.testimonials-gradient-bg {
	position:absolute;
	top:-50%;
	right:-20%;
	width:800px;
	height:800px;
	background:radial-gradient(circle,rgba(255,255,255,.1) 0,transparent 70%);
	border-radius:50%;
}
.testimonials-container-gradient {
	max-width:1400px;
	margin:0 auto;
	position:relative;
	z-index:1;
}
.testimonials-header-gradient {
	text-align:center;
	color:#fff;
	margin-bottom:4rem;
}
.testimonials-header-gradient h2 {
	font-size:2.8rem;
	font-weight:800;
	margin-bottom:1rem;
}
.testimonials-header-gradient > p {
	font-size:1.15rem;
	opacity:.95;
	margin-bottom:2rem;
}
.rating-badge-large {
	display:inline-flex;
	align-items:center;
	gap:1.5rem;
	background:rgba(255,255,255,.15);
	padding:1rem 2rem;
	border-radius:50px;
	backdrop-filter:blur(10px);
}
.rating-stars-large {
	font-size:2rem;
	color:#ffc107;
	letter-spacing:3px;
}
.rating-info {
	display:flex;
	flex-direction:column;
	text-align:left;
}
.rating-score {
	font-size:1.5rem;
	font-weight:800;
	line-height:1;
}
.rating-count { font-size:.9rem; opacity:.9 }
.slider-gradient-wrapper { overflow:hidden; margin-bottom:3rem }
.slider-gradient-track {
	display:flex;
	gap:2rem;
	animation:slideAuto 40s linear infinite;
}

@media (max-width:1024px) {
	.testimonial-card-modern { min-width:350px; max-width:350px }
}

@media (max-width:768px) {
	.testimonials-gradient-modern, .testimonials-slider-modern { padding:4rem 1.5rem }
	.testimonials-header-gradient h2, .testimonials-header-modern h2 { font-size:2.2rem }
	.testimonial-card-modern {
		min-width:300px;
		max-width:300px;
		padding:1.5rem;
	}
	.rating-badge-large { flex-direction:column; text-align:center }
	.rating-info { text-align:center }
}

@media (max-width:480px) {
	.testimonials-header-gradient h2, .testimonials-header-modern h2 { font-size:1.8rem }
	.testimonial-card-modern { min-width:280px; max-width:280px }
}
@keyframes fadeInUp {from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.testimonial-card-modern { animation:fadeInUp .6s ease-out }
.testimonial-card-modern:hover .avatar-modern { box-shadow:0 0 20px rgba(0,102,255,.5); transform:scale(1.1) }
.cta-color-section {
	background:linear-gradient(135deg,#00d4cc 0,#00b8a9 100%);
	padding:6rem 2rem;
	position:relative;
	overflow:hidden;
}
.cta-color-section::before {
	content:'';
	position:absolute;
	top:-50%;
	right:-10%;
	width:600px;
	height:600px;
	background:radial-gradient(circle,rgba(255,255,255,.1) 0,transparent 70%);
	border-radius:50%;
}
.cta-color-section::after {
	content:'';
	position:absolute;
	bottom:-30%;
	left:-5%;
	width:400px;
	height:400px;
	background:radial-gradient(circle,rgba(255,255,255,.08) 0,transparent 70%);
	border-radius:50%;
}
.cta-color-container {
	max-width:1200px;
	margin:0 auto;
	position:relative;
	z-index:1;
	display:grid;
	grid-template-columns:1.2fr 1fr;
	gap:4rem;
	align-items:center;
}
.cta-color-content { color:#fff }
.cta-color-badge {
	display:inline-block;
	background:rgba(255,255,255,.2);
	color:#fff;
	padding:.5rem 1.2rem;
	border-radius:25px;
	font-size:.85rem;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:1px;
	margin-bottom:1.5rem;
	backdrop-filter:blur(10px);
}
.cta-color-content h2 {
	font-size:3rem;
	font-weight:800;
	margin-bottom:1.5rem;
	line-height:1.2;
}
.cta-color-content p {
	font-size:1.15rem;
	margin-bottom:2rem;
	opacity:.95;
	line-height:1.7;
}
.cta-color-features {
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:1.5rem;
	margin-bottom:2.5rem;
}
.cta-feature-item {
	display:flex;
	align-items:center;
	gap:1rem;
}
.cta-feature-icon {
	width:50px;
	height:50px;
	background:rgba(255,255,255,.2);
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	backdrop-filter:blur(10px);
	flex-shrink:0;
}
.cta-feature-icon svg { color:#fff }
.cta-feature-text { font-size:1rem; font-weight:600 }
.cta-color-buttons { display:flex; gap:1.5rem }
.btn-cta-primary {
	padding:1.2rem 2.5rem;
	background:#fff;
	color:#00d4cc;
	border-radius:8px;
	text-decoration:none;
	font-weight:700;
	font-size:1.05rem;
	transition:all .3s ease;
	box-shadow:0 8px 20px rgba(0,0,0,.15);
}
.btn-cta-primary:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(0,0,0,.25) }
.btn-cta-secondary {
	padding:1.2rem 2.5rem;
	background:rgba(255,255,255,.15);
	color:#fff;
	border:2px solid #fff;
	border-radius:8px;
	text-decoration:none;
	font-weight:700;
	font-size:1.05rem;
	transition:all .3s ease;
	backdrop-filter:blur(10px);
}
.btn-cta-secondary:hover {
	background:#fff;
	color:#00d4cc;
	transform:translateY(-3px);
}
.cta-color-card {
	background:#fff;
	padding:3rem;
	border-radius:16px;
	box-shadow:0 12px 32px rgba(0,0,0,.2);
	position:relative;
}
.credit-badge-cta {
	position:absolute;
	top:-25px;
	left:50%;
	transform:translateX(-50%);
	width:100px;
	height:100px;
	background:linear-gradient(135deg,#06f,#0052cc);
	color:#fff;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:2.5rem;
	font-weight:800;
	box-shadow:0 8px 20px rgba(0,102,255,.4);
}
.cta-color-card h3 {
	text-align:center;
	font-size:1.6rem;
	font-weight:700;
	color:#1f2937;
	margin-top:2rem;
	margin-bottom:1rem;
}
.cta-color-card p {
	text-align:center;
	font-size:1rem;
	color:#6b7280;
	line-height:1.7;
	margin-bottom:2rem;
}
.btn-cta-card {
	width:100%;
	padding:1.2rem;
	background:linear-gradient(135deg,#00d4cc,#00b8a9);
	color:#fff;
	border:none;
	border-radius:8px;
	font-weight:700;
	font-size:1.05rem;
	cursor:pointer;
	transition:all .3s ease;
	font-family:Poppins,sans-serif;
}
.btn-cta-card:hover { transform:translateY(-3px); box-shadow:0 8px 20px rgba(0,212,204,.4) }

@media (max-width:1024px) {
	.hero-content-video { grid-template-columns:1fr; gap:3rem }
	.hero-form-compact { max-width:500px; margin:0 auto }
	.cta-color-container { grid-template-columns:1fr; gap:3rem }
	.cta-color-card { max-width:600px; margin:0 auto }
}

@media (max-width:768px) {
	.advantages-bar-mono, .faq-modern { margin-bottom:3rem }
	.faq-modern { margin-top:3rem }
	.cta-color-content h2 { font-size:2.2rem }
	.cta-color-features { grid-template-columns:1fr; gap:1rem }
	.cta-color-buttons { flex-direction:column; gap:1rem }
	.btn-cta-primary, .btn-cta-secondary { text-align:center; width:100% }
}

@media (max-width:480px) {
	.hero-form-compact { padding:2rem 1.5rem }
	.cta-color-section { padding:4rem 1.5rem }
	.cta-color-content h2 { font-size:1.8rem }
	.cta-color-card { padding:2rem 1.5rem }
	.credit-badge-cta {
		width:80px;
		height:80px;
		font-size:2rem;
	}
}
@keyframes float-circle {0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(20px,-20px) scale(1.05)}}
.cta-color-section::before { animation:float-circle 10s ease-in-out infinite }
.cta-color-section::after { animation:float-circle 15s ease-in-out infinite reverse }
.technique-modern { padding:6rem 2rem; background:#fff }
.technique-container-modern {
	max-width:1300px;
	margin:0 auto;
	display:grid;
	grid-template-columns:1fr 1.2fr;
	gap:5rem;
	align-items:center;
}
.badge-icon { font-size:2.5rem }
.badge-text strong {
	display:block;
	font-size:1.3rem;
	font-weight:700;
	color:#06f;
}
.badge-text span {
	display:block;
	font-size:.9rem;
	color:#6b7280;
}
.technique-content-right h3 {
	font-size:1rem;
	color:#00d4cc;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:2px;
	margin-bottom:.5rem;
}
.technique-content-right h2 {
	font-size:2.8rem;
	font-weight:800;
	color:#1f2937;
	margin-bottom:1.5rem;
	line-height:1.2;
}

@media (max-width:1024px) {
	.technique-container-modern { grid-template-columns:1fr; gap:3rem }
}

@media (max-width:768px) {
	.technique-modern { padding:4rem 1.5rem }
	.technique-content-right h2 { font-size:2.2rem }
}

@media (max-width:480px) {
	.technique-content-right h2 { font-size:1.8rem }
	.badge-text strong { font-size:1.1rem }
}
@keyframes float {0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.hero-modern-video {
	position:relative;
	min-height:78vh;
	overflow:hidden;
}
.hero-video-bg {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:1;
}
.hero-video-bg video {
	position:absolute;
	top:50%;
	left:50%;
	min-width:100%;
	min-height:100%;
	width:auto;
	height:auto;
	transform:translate(-50%,-50%);
	object-fit:cover;
}
.video-overlay {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:linear-gradient(135deg,rgba(0,61,130,.48) 0,rgba(0,102,255,.28) 100%);
	z-index:2;
}
.hero-text-video h1 {
	font-size:3.5rem;
	font-weight:700;
	color:#fff;
	line-height:1.2;
	margin-bottom:1.5rem;
}
.hero-text-video h1 .highlight { color:#00d4cc }
.hero-text-video p {
	font-size:1.1rem;
	color:rgba(255,255,255,.92);
	line-height:1.7;
	margin-bottom:1.5rem;
	max-width:650px;
}
.hero-rating-video {
	display:flex;
	align-items:center;
	gap:1rem;
	margin-bottom:2rem;
	color:#fff;
}
.stars-hero {
	color:#ffc107;
	font-size:1.2rem;
	letter-spacing:2px;
}
.hero-rating-video span { font-size:.95rem; opacity:.9 }
.hero-buttons-video {
	display:flex;
	gap:1rem;
	flex-wrap:wrap;
}
.btn-hero-primary-video {
	background:#00d4cc;
	color:#fff;
	padding:1rem 2rem;
	border-radius:8px;
	text-decoration:none;
	font-weight:600;
	font-size:1rem;
	transition:all .3s ease;
	display:inline-block;
}
.btn-hero-primary-video:hover {
	background:#0052cc;
	transform:translateY(-2px);
	box-shadow:0 8px 20px rgba(0,102,255,.4);
}
.btn-hero-secondary-video {
	background:#fff;
	color:#002c72;
	padding:1rem 2rem;
	border-radius:8px;
	text-decoration:none;
	font-weight:600;
	font-size:1rem;
	transition:all .3s ease;
	display:inline-block;
}
.btn-hero-secondary-video:hover { background:rgba(255,255,255,.95); transform:translateY(-2px) }
.hero-stats-compact {
	background:#fff;
	border-radius:12px;
	padding:1.5rem;
	box-shadow:0 20px 40px rgba(0,0,0,.2);
	display:flex;
	flex-direction:column;
	gap:1.5rem;
	width:100%;
	max-width:260px;
}
.stat-compact {
	display:flex;
	align-items:center;
	gap:1rem;
	padding-bottom:1.5rem;
	border-bottom:1px solid #e5e7eb;
}
.stat-compact:last-child { border-bottom:none; padding-bottom:0 }
.stat-icon-compact {
	width:50px;
	height:50px;
	background:#f0f7ff;
	border-radius:10px;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#002c72;
	flex-shrink:0;
}
.stat-icon-compact svg { width:28px; height:28px }
.stat-content-compact { flex:1 }
.stat-number-compact {
	font-size:2rem;
	font-weight:800;
	color:#002c72;
	line-height:1;
	margin-bottom:.3rem;
}
.stat-label-compact {
	font-size:.85rem;
	color:#6b7280;
	line-height:1.3;
}
.advantages-bar-mono { background:#002c72; padding:2rem 0 }
.advantages-container-mono {
	max-width:1400px;
	margin:0 auto;
	padding:0 2rem;
	display:grid;
	grid-template-columns:repeat(6,1fr);
	gap:2rem;
}
.advantage-mono {
	display:flex;
	align-items:center;
	gap:1rem;
	color:#fff;
}
.adv-icon-mono {
	width:50px;
	height:50px;
	background:rgba(255,255,255,.15);
	border-radius:10px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
	transition:all .3s ease;
}
.advantage-mono:hover .adv-icon-mono { background:rgba(255,255,255,.25); transform:translateY(-2px) }
.adv-icon-mono svg {
	width:28px;
	height:28px;
	color:#fff;
}
.adv-text-mono { flex:1 }
.adv-text-mono strong {
	display:block;
	font-size:.95rem;
	font-weight:600;
	margin-bottom:.2rem;
}
.adv-text-mono span { font-size:.85rem; opacity:.9 }

@media (max-width:1024px) {
	.hero-content-video { grid-template-columns:1fr; gap:2rem }
	.hero-stats-compact {
		max-width:100%;
		flex-direction:row;
		justify-content:space-around;
		padding:1.5rem;
	}
	.stat-compact {
		flex-direction:column;
		text-align:center;
		border-bottom:none;
		border-right:1px solid #e5e7eb;
		padding-bottom:0;
		padding-right:1.5rem;
	}
	.stat-compact:last-child { border-right:none; padding-right:0 }
	.stat-icon-compact { margin-bottom:.5rem }
	.advantages-container-mono { grid-template-columns:repeat(3,1fr) }
}

@media (max-width:768px) {
	.hero-modern-video { min-height:550px }
	.hero-content-video { padding:80px 1.5rem 60px }
	.hero-text-video h1 { font-size:2.5rem }
	.hero-text-video p { font-size:1rem }
	.hero-stats-compact { flex-direction:column }
	.stat-compact {
		flex-direction:row;
		text-align:left;
		border-right:none;
		border-bottom:1px solid #e5e7eb;
		padding-right:0;
		padding-bottom:1.5rem;
	}
	.stat-compact:last-child { border-bottom:none; padding-bottom:0 }
	.stat-icon-compact { margin-bottom:0 }
	.advantages-container-mono { grid-template-columns:repeat(2,1fr); gap:1.5rem }
	.hero-buttons-video { flex-direction:column; width:100% }
	.btn-hero-primary-video, .btn-hero-secondary-video { width:100%; text-align:center }
}

@media (max-width:480px) {
	.hero-text-video h1 { font-size:2rem }
	.hero-text-video p { font-size:.95rem }
	.advantages-container-mono { grid-template-columns:1fr }
	.stat-number-compact { font-size:1.8rem }
	.stat-label-compact { font-size:.8rem }
}

@media (max-width:768px) {
	.hero-video-bg video { display:none }
	.hero-video-bg { background:linear-gradient(135deg,rgba(0,61,130,.92) 0,rgba(0,102,255,.85) 100%),url(https://images.pexels.com/photos/1643389/pexels-photo-1643389.webp?auto=compress&cs=tinysrgb&w=800) center/cover }
	.video-overlay { display:none }
}
.benefits-modern { padding:6rem 2rem; background:#f9fafb }
.benefits-container-modern { max-width:1200px; margin:0 auto }
.benefits-header-modern {
	text-align:center;
	max-width:800px;
	margin:0 auto 4rem;
}
.benefits-header-modern h2 {
	font-size:2.5rem;
	font-weight:700;
	color:#1f2937;
	margin-bottom:1rem;
	line-height:1.3;
}
.benefits-header-modern p {
	font-size:1.1rem;
	color:#6b7280;
	line-height:1.7;
}
.benefits-grid-modern {
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:2rem;
}
.benefit-card-modern {
	background:#fff;
	border-radius:12px;
	overflow:hidden;
	box-shadow:0 1px 3px rgba(0,0,0,.1);
	transition:all .3s ease;
	display:flex;
	flex-direction:column;
}
.benefit-card-modern:hover { transform:translateY(-8px); box-shadow:0 10px 20px rgba(0,0,0,.1) }
.benefit-image-modern {
	position:relative;
	height:280px;
	overflow:hidden;
}
.benefit-image-modern img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.benefit-badge-modern {
	position:absolute;
	top:1rem;
	left:1rem;
	background:linear-gradient(135deg,#00d4cc,#00b8a9);
	color:#fff;
	padding:.4rem 1rem;
	border-radius:20px;
	font-size:.85rem;
	font-weight:600;
}
.benefit-text-modern { padding:1.5rem; flex:1 }
.benefit-text-modern h3 {
	font-size:1.3rem;
	font-weight:600;
	color:#1f2937;
	margin-bottom:.8rem;
}
.benefit-text-modern p {
	font-size:.95rem;
	color:#6b7280;
	line-height:1.6;
	margin-bottom:1rem;
}
.benefit-list-modern { list-style:none; padding:0 }
.benefit-list-modern li {
	padding:.3rem 0;
	padding-left:1.5rem;
	position:relative;
	font-size:.9rem;
	color:#4b5563;
}
.benefit-list-modern li::before {
	content:'✓';
	position:absolute;
	left:0;
	color:#00d4cc;
	font-weight:700;
}
.how-it-works-modern { padding:6rem 2rem; background:#fff }
.how-works-container { max-width:1200px; margin:0 auto }
.how-works-header {
	text-align:center;
	max-width:800px;
	margin:0 auto 4rem;
}
.how-works-header h2 {
	font-size:2.5rem;
	font-weight:700;
	color:#1f2937;
	margin-bottom:1rem;
	line-height:1.3;
}
.how-works-header p {
	font-size:1.1rem;
	color:#6b7280;
	line-height:1.7;
}
.process-timeline-modern {
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:2rem;
	position:relative;
}
.timeline-step { text-align:center; position:relative }
.step-circle { position:relative; margin-bottom:1.5rem }
.step-number-circle {
	position:absolute;
	top:-5px;
	right:calc(50% - 40px);
	width:28px;
	height:28px;
	background:linear-gradient(135deg,#00d4cc,#00b8a9);
	color:#fff;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:.85rem;
	font-weight:700;
	z-index:2;
}
.step-circle svg { color:#002c72 }
.step-line {
	position:absolute;
	top:30px;
	right:-50%;
	width:100%;
	height:2px;
	background:linear-gradient(90deg,#00d4cc,#e5e7eb);
}
.timeline-step:last-child .step-line { display:none }
.step-content-modern h3 {
	font-size:1.1rem;
	font-weight:600;
	color:#1f2937;
	margin-bottom:.5rem;
}
.step-content-modern p {
	font-size:.9rem;
	color:#6b7280;
	line-height:1.5;
}
.why-us-impact { padding:6rem 2rem; background:#f9fafb }
.impact-container-modern { max-width:1200px; margin:0 auto }
.impact-header-modern {
	text-align:center;
	max-width:800px;
	margin:0 auto 4rem;
}
.impact-header-modern h2 {
	font-size:2.5rem;
	font-weight:700;
	color:#1f2937;
	margin-bottom:1rem;
	line-height:1.3;
}
.impact-header-modern p {
	font-size:1.1rem;
	color:#6b7280;
	line-height:1.7;
}
.impact-grid-modern {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:2rem;
}
.impact-card-modern {
	background:#fff;
	padding:2.5rem;
	border-radius:12px;
	box-shadow:0 1px 3px rgba(0,0,0,.1);
	text-align:center;
	transition:all .3s ease;
}
.impact-card-modern:hover { transform:translateY(-5px); box-shadow:0 10px 20px rgba(0,0,0,.1) }
.impact-card-modern h3 {
	font-size:1.3rem;
	font-weight:600;
	color:#1f2937;
	margin-bottom:.8rem;
}
.impact-card-modern p {
	font-size:.95rem;
	color:#6b7280;
	line-height:1.6;
}
.why-us-modern { background:#f9fafb }
.frequency-modern { padding:6rem 2rem; background:#fff }
.frequency-container-modern { max-width:1200px; margin:0 auto }
.frequency-header-modern {
	text-align:center;
	max-width:800px;
	margin:0 auto 4rem;
}
.frequency-header-modern h2 {
	font-size:2.5rem;
	font-weight:700;
	color:#1f2937;
	margin-bottom:1rem;
	line-height:1.3;
}
.frequency-header-modern p {
	font-size:1.1rem;
	color:#6b7280;
	line-height:1.7;
}
.frequency-grid {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:2rem;
}
.frequency-card-modern {
	background:#fff;
	padding:2.5rem;
	border-radius:12px;
	box-shadow:0 1px 3px rgba(0,0,0,.1);
	text-align:center;
	transition:all .3s ease;
	position:relative;
	border:2px solid transparent;
}
.frequency-card-modern:hover { transform:translateY(-8px); box-shadow:0 10px 20px rgba(0,0,0,.1) }
.frequency-card-modern.recommended { border-color:#00d4cc; box-shadow:0 4px 12px rgba(0,212,204,.2) }
.frequency-badge {
	position:absolute;
	top:-14px;
	left:50%;
	transform:translateX(-50%);
	background:linear-gradient(135deg,#00d4cc,#00b8a9);
	color:#fff;
	padding:.4rem 1.2rem;
	border-radius:20px;
	font-size:.85rem;
	font-weight:600;
	white-space:nowrap;
}
.frequency-card-modern h3 {
	font-size:1.5rem;
	font-weight:700;
	color:#002c72;
	margin-bottom:.5rem;
	margin-top:.5rem;
}
.frequency-value {
	font-size:2.5rem;
	font-weight:800;
	color:#00d4cc;
	line-height:1;
	margin-bottom:.3rem;
}
.frequency-period {
	font-size:1rem;
	color:#6b7280;
	margin-bottom:1.5rem;
}
.frequency-card-modern > p {
	font-size:.95rem;
	color:#6b7280;
	line-height:1.6;
	margin-bottom:1.5rem;
}
.frequency-features {
	list-style:none;
	padding:0;
	text-align:left;
}
.frequency-features li {
	padding:.5rem 0;
	padding-left:1.5rem;
	position:relative;
	font-size:.9rem;
	color:#4b5563;
	border-bottom:1px solid #f3f4f6;
}
.frequency-features li:last-child { border-bottom:none }
.frequency-features li::before {
	content:'✓';
	position:absolute;
	left:0;
	color:#00d4cc;
	font-weight:700;
}
.faq-subtitle {
	text-align:center;
	font-size:1.1rem;
	color:#6b7280;
	margin-bottom:3rem;
}
.faq-item-modern.active .faq-answer-modern { max-height:300px; padding:0 2rem 1.5rem }
.faq-item-modern.active .faq-toggle {
	transform:rotate(45deg);
	background:#002c72;
	color:#fff;
}

@media (max-width:1024px) {
	.benefits-grid-modern { grid-template-columns:1fr }
	.process-timeline-modern { grid-template-columns:repeat(2,1fr) }
	.step-line { display:none }
}

@media (max-width:768px) {
	.benefits-modern, .frequency-modern, .how-it-works-modern, .why-us-impact { padding:4rem 1.5rem }
	.benefits-header-modern h2, .frequency-header-modern h2, .how-works-header h2, .impact-header-modern h2 { font-size:2rem }
	.process-timeline-modern { grid-template-columns:1fr }
	.frequency-grid, .impact-grid-modern { grid-template-columns:1fr }
}

@media (max-width:480px) {
	.benefits-header-modern h2, .frequency-header-modern h2, .how-works-header h2, .impact-header-modern h2 { font-size:1.7rem }
}
.benefits-also {
	text-align: center;
	margin-top: 3rem;
	font-size: 0.95rem;
	color: #6B7280;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.benefits-also a {
	color: #0066FF;
	text-decoration: none;
	font-weight: 500;
}
.benefits-also a:hover { text-decoration: underline }
