/**
 * Footer Capesio — intégration Figma.
 * Design de référence : 1440px, marges latérales 90px (contenu 1260px).
 */

.site-footer{
	font-family:"Poppins",system-ui,sans-serif;
}

/* ===== Section bleue ===== */
.footer-main{
	position:relative;
	overflow:hidden;
	background:var(--bleu-fonce);
	padding:48px 90px;
}

.footer-inner{
	position:relative;
	z-index:1;
	max-width:1260px;
	margin:0 auto;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:60px;
}

/* Rangée haute : logo | CTA | tagline — alignée sur les 3 colonnes du dessous
   (logo↔contact 278px, CTA↔nav 364px, tagline↔tags = reste). */
.footer-top{
	display:flex;
	align-items:center;
	gap:96px;
	width:100%;
}
.footer-top__slot--logo{ flex:0 0 278px; }
.footer-top__slot--cta{ flex:0 0 364px; }
.footer-top__slot--tagline{ flex:1 1 auto; min-width:0; }

/* Étoile décorative en fondu, coin bas-droit */
.footer-deco-star{
	position:absolute;
	right:0;
	bottom:0;
	width:283px;
	height:auto;
	z-index:0;
	pointer-events:none;
	user-select:none;
}

/* Logo */
.footer-logo{
	display:inline-block;
	line-height:0;
}
.footer-logo img{
	height:37px;
	width:auto;
}
.footer-logo span{
	color:var(--blanc);
	font-size:28px;
	font-weight:700;
	line-height:1;
}

/* Tagline */
.footer-tagline{
	margin:0;
	color:var(--blanc);
	font-size:16px;
	font-weight:600;
	line-height:1.4;
}

/* CTA — même effet de survol que le bouton du header (.cta-button) */
.footer-cta{
	display:inline-flex;
	align-items:center;
	gap:4px;
	padding:9px 24px 9px 10px;
	background:var(--bleu-azure);
	border-radius:30px;
	color:var(--blanc);
	font-size:13px;
	font-weight:600;
	text-decoration:none;
	transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;
	will-change:transform;
}
.footer-cta:hover,
.footer-cta:focus-visible{
	background:var(--bleu-azure-dark);
	transform:translateY(-2px);
	box-shadow:0 8px 20px rgba(3,136,255,.35);
}
.footer-cta:active{
	transform:translateY(0);
	box-shadow:0 3px 10px rgba(3,136,255,.3);
}
.footer-cta__icon{
	width:22px;
	height:22px;
	flex:0 0 auto;
	transition:transform .3s ease;
}
.footer-cta:hover .footer-cta__icon{
	transform:rotate(90deg);
}

/* ===== Colonnes ===== */
.footer-cols{
	display:flex;
	flex-wrap:wrap;
	gap:48px 96px;
	width:100%;
}

/* Contact */
.footer-contact{
	width:278px;
	display:flex;
	flex-direction:column;
	gap:10px;
	color:var(--blanc);
}
.footer-contact__address{
	font-size:13px;
	font-weight:600;
}
.footer-contact__phone{
	font-size:20px;
	font-weight:700;
	text-decoration:none;
}
.footer-contact__mail{
	font-size:13px;
	font-weight:700;
	text-decoration:none;
}
.footer-contact__phone:hover,
.footer-contact__mail:hover{
	text-decoration:underline;
}

/* Navigation */
.footer-nav{
	width:364px;
	display:flex;
	flex-direction:column;
	gap:32px;
}
.footer-nav__link{
	color:var(--blanc);
	font-size:20px;
	font-weight:600;
	text-decoration:none;
	transition:opacity .2s ease;
}
.footer-nav__link:hover{
	opacity:.8;
}
.footer-nav__link--arrow{
	display:inline-flex;
	align-items:center;
	gap:8px;
}
.footer-nav__arrow{
	width:16px;
	height:auto;
	flex:0 0 auto;
}

/* Tags */
.footer-tags{
	width:426px;
	max-width:100%;
	margin:0;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	align-content:flex-start;
	gap:10px;
}
.footer-tag{
	padding:3.5px 14px;
	border:1px solid rgba(253,253,253,.40);
	border-radius:30px;
	color:var(--blanc);
	font-size:11px;
	font-weight:600;
	white-space:nowrap;
}

/* ===== Barre basse (blanc) ===== */
.footer-bottom{
	background:#fff;
	padding:20px 90px 24px;
}
.footer-bottom-inner{
	max-width:1260px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	gap:16px 38px;
}
.footer-copy{
	color:var(--bleu-fonce);
	font-family:"Ubuntu",system-ui,sans-serif;
	font-size:14px;
	font-weight:700;
	line-height:1.26;
}
.footer-copy__link{
	color:var(--bleu-azure);
	text-decoration:none;
}
.footer-copy__link:hover{
	text-decoration:underline;
}
.footer-legal{
	display:flex;
	flex-wrap:wrap;
	gap:38px;
}
.footer-legal__link{
	color:var(--bleu-fonce);
	font-family:"Ubuntu",system-ui,sans-serif;
	font-size:14px;
	font-weight:500;
	line-height:1.26;
	text-decoration:none;
}
.footer-legal__link:hover{
	text-decoration:underline;
}

/* ===== Responsive ===== */
@media (max-width:1024px){
	.footer-main{padding:48px 40px;}
	.footer-bottom{padding:20px 40px 24px;}
	.footer-cols{gap:40px 56px;}
}
@media (max-width:768px){
	.footer-main{padding:40px 24px;}
	.footer-bottom{padding:18px 24px 22px;}
	.footer-inner{gap:36px;}
	.footer-top{flex-direction:column;align-items:flex-start;gap:28px;}
	.footer-top__slot--logo,
	.footer-top__slot--cta,
	.footer-top__slot--tagline{flex:0 0 auto;width:100%;}
	.footer-cols{flex-direction:column;gap:36px;}
	.footer-nav,
	.footer-contact,
	.footer-tags{width:100%;}
	.footer-deco-star{width:200px;opacity:.9;}
	.footer-bottom-inner{justify-content:flex-start;gap:12px 24px;}
}
