.elementor-kit-32{--e-global-color-primary:#FFFFFF;--e-global-color-secondary:#D6D6D6;--e-global-color-text:#FFFFFF;--e-global-color-accent:#C7A84F;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:#000000;color:#F2F2F2;}.elementor-kit-32 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ── CURSEUR ROSE DES VENTS — desktop uniquement ── */
@media (pointer: fine) {
  html, body { cursor: none !important; }
  *, *::before, *::after { cursor: none !important; }
}
.cursor-rose {
  position: fixed; width: 52px; height: 52px;
  pointer-events: none; z-index: 99999;
  transform: translate(-50%, -50%);
}
.cursor-ring {
  position: fixed; width: 26px; height: 26px;
  border: 0.5px solid rgba(184,151,90,0.35);
  border-radius: 50%; pointer-events: none;
  z-index: 99998; transform: translate(-50%, -50%);
  transition: width 0.35s ease, height 0.35s ease, border-color 0.35s ease;
}
body.on-link .cursor-ring {
  width: 40px; height: 40px;
  border-color: rgba(184,151,90,0.7);
}
@media (pointer: coarse) {
  .cursor-rose, .cursor-ring { display: none !important; }
}

/* ── Logo hover gold ── */
.elementor-widget-site-title .elementor-heading-title a {
  position: relative; display: inline-block;
  text-decoration: none !important;
}
.elementor-widget-site-title .elementor-heading-title a::after {
  content: ''; position: absolute;
  bottom: -12px; left: 0; width: 0; height: 1px;
  background: linear-gradient(to right, #B8975A 60%, rgba(184,151,90,0) 100%);
  transition: width 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.elementor-widget-site-title .elementor-heading-title a:hover::after { width: 100%; }

/* ── Réseaux sociaux hero ── */
.social-links a:hover,
.social-links a:focus { text-decoration: none !important; }

/* ── Hover carousel ── */
.apy-card::before {
  content: ''; position: absolute; inset: 0;
  border-radius: 10px;
  background: radial-gradient(ellipse at 50% 30%, rgba(201,169,110,0.18) 0%, transparent 70%);
  opacity: 0; transition: opacity 0.55s ease;
  z-index: 2; pointer-events: none;
}
.apy-card:hover::before { opacity: 1; }
.apy-card:hover img {
  filter: brightness(1.12) contrast(1.04) saturate(1.08) !important;
  transform: scale(1.06);
}

/* ── Chiffres clés ── */
.apy-bottom .apy-stat-number { font-size: 58px !important; color: #C9A96E !important; }
.apy-bottom .apy-stat-label {
  font-size: 15px !important;
  color: rgba(247,244,239,0.95) !important;
  letter-spacing: 0.22em !important;
}
.apy-bottom .apy-stat-sub {
  font-size: 13px !important;
  color: rgba(247,244,239,0.72) !important;
  letter-spacing: 0.14em !important;
}

/* ── Réassurance ── */
.apy-bottom .apy-rea-title {
  font-size: 14px !important;
  color: #F7F4EF !important;
  letter-spacing: 0.25em !important;
}
.apy-bottom .apy-rea-desc {
  font-size: 13px !important;
  color: rgba(247,244,239,0.85) !important;
  line-height: 1.9 !important;
}

/* ── CTA ── */
.apy-bottom .apy-cta-eyebrow {
  font-size: 15px !important;
  letter-spacing: 0.45em !important;
  color: #C9A96E !important;
  margin-bottom: 32px !important;
}
.apy-bottom .apy-cta-sub {
  font-size: 13px !important;
  color: rgba(247,244,239,0.68) !important;
}
.apy-bottom .apy-cta-btn {
  font-size: 13px !important;
  letter-spacing: 0.28em !important;
  padding: 20px 60px !important;
  color: #C9A96E !important;
  border: 0.5px solid #C9A96E !important;
  text-decoration: none !important;
  margin-bottom: 24px !important;
}
.apy-bottom .apy-cta-btn::after,
.apy-bottom .apy-cta-btn::before { display: none !important; }
.apy-bottom .apy-cta-btn:hover {
  background: #C9A96E !important;
  color: #08090A !important;
}
.apy-bottom .apy-cta-note {
  font-size: 10px !important;
  color: rgba(247,244,239,0.32) !important;
  letter-spacing: 0.25em !important;
  margin-top: 0 !important;
}

/* ── Séparateur gold ── */
.apy-bottom .apy-gold-sep {
  width: 48px !important;
  height: 1px !important;
  opacity: 0.8 !important;
  margin-bottom: 36px !important;
}

/* ── Footer tailles et couleurs ── */
.apy-bottom .apy-footer-col-title {
  font-size: 12px !important;
  color: rgba(247,244,239,0.78) !important;
}
.apy-bottom .apy-footer-tagline {
  font-size: 13px !important;
  color: rgba(247,244,239,0.85) !important;
}
.apy-bottom .apy-footer-contact-label {
  font-size: 11px !important;
  color: rgba(247,244,239,0.58) !important;
}
.apy-bottom .apy-footer-contact-value {
  font-size: 13px !important;
  color: #C9A96E !important;
}
.apy-bottom .apy-footer-zone {
  font-size: 13px !important;
  color: rgba(247,244,239,0.85) !important;
}
.apy-bottom .apy-footer-links li a {
  font-size: 13px !important;
  color: rgba(247,244,239,0.92) !important;
}
.apy-bottom .apy-footer-social a {
  font-size: 13px !important;
  color: rgba(247,244,239,0.92) !important;
}
.apy-bottom .apy-footer-legal a {
  font-size: 11px !important;
  color: rgba(247,244,239,0.68) !important;
}
.apy-bottom .apy-footer-copy {
  font-size: 11px !important;
  color: rgba(247,244,239,0.58) !important;
}

/* ── Footer — resserré et centré ── */
.apy-bottom .apy-footer {
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 64px 80px 32px !important;
}
.apy-bottom .apy-footer-top {
  grid-template-columns: 1.2fr 1fr 1fr !important;
  gap: 80px !important;
  justify-items: start !important;
}

/* ── Footer liens hover ── */
.apy-bottom .apy-footer-links li a,
.apy-bottom .apy-footer-social a,
.apy-bottom .apy-footer-legal a {
  text-decoration: none !important;
  position: relative; display: inline-block;
  padding-bottom: 3px;
  transition: color 0.35s ease, transform 0.35s ease;
}
.apy-bottom .apy-footer-links li a::after,
.apy-bottom .apy-footer-social a::after,
.apy-bottom .apy-footer-legal a::after {
  content: ''; position: absolute;
  bottom: 0; left: 0; width: 0; height: 1px;
  background: linear-gradient(to right, #B8975A 60%, rgba(184,151,90,0) 100%);
  transition: width 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.apy-bottom .apy-footer-links li a:hover,
.apy-bottom .apy-footer-social a:hover,
.apy-bottom .apy-footer-legal a:hover {
  color: #C9A96E !important;
  transform: translateX(6px) !important;
}
.apy-bottom .apy-footer-links li a:hover::after,
.apy-bottom .apy-footer-social a:hover::after,
.apy-bottom .apy-footer-legal a:hover::after { width: 100%; }

/* ── Bande blanche Astra — suppression ── */
.site-below-footer-wrap,
.site-footer,
#colophon,
.ast-builder-grid-row-container,
.site-below-footer-wrap[data-section="section-below-footer-builder"] {
  background: #08090A !important;
  background-color: #08090A !important;
  border: none !important;
  min-height: 0 !important;
}

/* ── Fix scroll iOS ── */
@media (max-width: 1024px) {
  html, body { touch-action: pan-y !important; overflow-x: hidden !important; }
  #apy-viewport { touch-action: pan-y pinch-zoom !important; }
  .apy-bottom { touch-action: pan-y !important; }
  .elementor-element[data-settings*="motion_fx_motion_fx_scrolling"] { will-change: auto !important; }
}

/* ── Carousel + stats mobile ── */
@media (max-width: 767px) {
  #apy-wrap { width: 100% !important; margin-left: 0 !important; padding-bottom: 16px !important; }
  #apy-viewport { overflow: visible !important; touch-action: pan-y !important; pointer-events: none !important; }
  #apy-track { flex-direction: column !important; transform: none !important; gap: 16px !important; padding: 0 20px !important; pointer-events: none !important; }
  .apy-card { width: 100% !important; height: auto !important; aspect-ratio: 16 / 9 !important; border-radius: 8px !important; pointer-events: auto !important; }
  .apy-card-title { font-size: 35px !important; }
  .apy-card-sep { height: 22px !important; }
  .apy-card-sub { font-size: 8px !important; letter-spacing: 0.12em !important; }
  #apy-prev, #apy-next, .apy-dots { display: none !important; }
  .apy-bottom { touch-action: pan-y !important; }
  .apy-bottom .apy-stats {
    border-top: 0.5px solid rgba(201,169,110,0.35) !important;
    border-bottom: 0.5px solid rgba(201,169,110,0.35) !important;
  }
  .apy-bottom .apy-stat { border-right-color: rgba(201,169,110,0.22) !important; padding: 32px 20px !important; }
  .apy-bottom .apy-stat-number { font-size: 44px !important; }
  .apy-bottom .apy-stat-label { font-size: 13px !important; }
  .apy-bottom .apy-stat-sub { font-size: 11px !important; }
  .apy-bottom .apy-reassurance { border-bottom: 0.5px solid rgba(201,169,110,0.35) !important; }
  .apy-bottom .apy-rea-item { border-right-color: rgba(201,169,110,0.22) !important; }
  .apy-bottom .apy-footer { max-width: 100% !important; padding: 48px 24px 24px !important; }
  .apy-bottom .apy-footer-top { grid-template-columns: 1fr !important; gap: 36px !important; }
}
/* ── Parallaxe stats — contenir le débordement ── */
.apy-stat {
  overflow: hidden !important;
}/* End custom CSS */