@charset "UTF-8";
@import url(main.css);
/* Tous les textes des boutons */
a[class*="button"] span, a[class*="btn"] span, button span, .btn span, .button span, a[class*="button"], a[class*="btn"], button, .btn, .button { font-weight: 900 !important; }

/************************************* NAVBAR ************************************************/
#navigation-bar-hide { opacity: 1 !important; top: 0 !important; }

.navbar { transition: all 0.3s ease; border-bottom: 1px solid #fafafa; }

.navbar.scrolled { background-color: rgba(51, 51, 51, 0.5) !important; backdrop-filter: blur(1rem); border-bottom: 1px solid #fafafa; }

#navbarSupportedContent > ul > li.dropdown.px-4 > div > a:nth-child(1) { text-transform: uppercase !important; font-weight: 700 !important; }

/* 📱 Responsive : navbar TOUJOURS visible */
@media (max-width: 991px) { .navbar { background-color: rgba(61, 0, 0, 0.5) !important; backdrop-filter: blur(1rem); } }

.navbar-brand { height: 11vh !important; width: 11vw !important; }

.logo_nav { height: 10vh !important; }

.animated-border-button:after { background-color: #EE0000; }

/************************************* HERO ************************************************/
.videoTitle { width: 90% !important; }

.fondDegradeLogo { width: 70% !important; }

#fullHeight > div.video-background-content.container.h-100 > div > div.container.videoTitle span { letter-spacing: 0px !important; }

sliderLogoContainer.mx-auto { width: 25vw !important; }

/************************************* BLOC PICTO ************************************************/
/* Bloc pictos réassurance */
.svg-picto-card { padding: 0.5rem !important; }

/* Agrandir les pictos */
.svg-picto-card svg { width: 110px !important; height: 110px !important; margin: 0 auto; }

/* Rapprocher le texte du picto */
.svg-picto-card .text-shadow { margin-top: 10px !important; padding: 0 !important; }

/* Réduire l'espace entre le titre et le paragraphe */
.svg-picto-card h2 { margin-bottom: 8px !important; line-height: 1 !important; }

/* Réduire l'interligne du paragraphe */
.svg-picto-card p { line-height: 1 !important; margin-bottom: 0 !important; }

/************************************* FAQ ************************************************/
/* Réduction largeur FAQ */
.faq-section .container { max-width: 1000px; }

/* Alignement des questions */
.faq-question { justify-content: center !important; text-align: center !important; position: relative; }

/* Centrage du titre */
.faq-question-text { width: 100%; text-align: center; }

.faq-question-text h3 { margin: 0; text-align: center !important; }

/* Style titre fermé */
.faq-question-text span { color: #1A1A1A !important; transition: color 0.3s ease; }

/* Style titre ouvert */
.faq-question[aria-expanded="true"] .faq-question-text span { color: #FFFFFF !important; }

/* Position icône */
.faq-icon { position: absolute; right: 20px; }

/* Réduction largeur desktop */
@media (min-width: 992px) { .faq-list { max-width: 950px; margin-left: auto; margin-right: auto; } }

/* Mobile */
@media (max-width: 768px) { .faq-icon { right: 15px; } }

/************************************* CARTES SERVICES ************************************************/
.custom-services-section { width: 100%; max-width: 1400px; margin-left: auto; margin-right: auto; padding: 80px 10px; }

/* TITRE SECTION */
.custom-services-heading { text-align: center; max-width: 900px; margin: 0 auto 45px; }

.custom-services-heading h2 { margin: 0 0 15px; }

.custom-services-heading p { margin: 0; line-height: 1.5; }

/* CONTENEUR CARTES */
.custom-cards-2 { width: 100%; display: flex; justify-content: center; gap: 18px; }

/* CARTE */
.custom-card-2 { width: calc(25% - 14px); background: #ffffff; border-radius: 18px; overflow: hidden; border: 1px solid rgba(0, 0, 0, 0.08); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06); }

/* IMAGE */
.card__img { background-size: cover; background-position: center; background-repeat: no-repeat; width: 100%; height: 260px; }

/* CONTENU */
.card__info { padding: 28px; }

.card__title { margin-bottom: 12px; }

.card__description { line-height: 1.5; margin: 0; }

/* RESPONSIVE */
@media (max-width: 1024px) { .custom-services-section { padding: 70px 20px; } .custom-cards-2 { flex-wrap: wrap; gap: 25px; } .custom-card-2 { width: 48%; } }

@media (max-width: 768px) { .custom-services-section { padding: 60px 20px; } .custom-card-2 { width: 100%; } }

/************************************* CHALLENGE ************************************************/
.velux-challenge-section { padding: 80px 0; }

/* SURTITRE */
.velux-challenge-kicker { display: flex; justify-content: center; }

/* TITRE */
.velux-challenge-title { max-width: 900px; margin-left: auto; margin-right: auto; }

/* IMAGE PRINCIPALE */
.velux-challenge-main-image { width: 100%; height: 380px; display: flex; align-items: center; justify-content: center; overflow: hidden; }

.velux-challenge-main-image img { width: 100%; height: 100%; object-fit: contain; display: block; }

/* DESCRIPTION */
.velux-challenge-content { line-height: 1.7; }

/* LOGOS */
.velux-challenge-logos { margin-top: 20px; }

.velux-logo-box { height: 120px; display: flex; align-items: center; justify-content: center; padding: 15px; }

.velux-logo-box img { max-width: 100%; max-height: 100%; object-fit: contain; }

/* TABLETTE */
@media (max-width: 992px) { .velux-challenge-main-image { height: 320px; } }

/* MOBILE */
@media (max-width: 768px) { .velux-challenge-section { padding: 60px 0; } .velux-challenge-main-image { height: 240px; } .velux-logo-box { height: 90px; } }

/************************************* BLOC SECTEUR ************************************************/
.asf-presentation-block { width: 100%; padding: 80px 20px; box-sizing: border-box; background-color: #f3f4f5; }

.asf-presentation-block__container { max-width: 1400px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }

/* IMAGE */
.asf-presentation-block__image { width: 100%; height: 500px; display: flex; align-items: center; justify-content: center; overflow: hidden; }

.asf-presentation-block__image img { width: 100%; height: 100%; object-fit: contain; display: block; }

/* CONTENU */
.asf-presentation-block__content { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }

/* SURTITRE */
.asf-presentation-block__subtitle { margin-bottom: 15px; text-transform: uppercase; color: #EE0000; letter-spacing: 0.04em; }

/* TITRE */
.asf-presentation-block__title { margin-bottom: 25px; color: #1A1A1A; }

/* DESCRIPTION */
.asf-presentation-block__description { color: #666666; line-height: 1.7; max-width: 620px; }

/* RESPONSIVE TABLETTE */
@media (max-width: 992px) { .asf-presentation-block { padding: 60px 20px; } .asf-presentation-block__container { grid-template-columns: 1fr; gap: 40px; } .asf-presentation-block__image { height: 400px; } }

/* RESPONSIVE MOBILE */
@media (max-width: 600px) { .asf-presentation-block { padding: 45px 15px; } .asf-presentation-block__image { height: 280px; } }

/*# sourceMappingURL=custom.css.map */