/* All global responsive breakpoints live here: 980px and 600px. */

@media(max-width:980px){
  nav.main-nav{display:none;}
  .header-cta .btn-outline{display:none;}
  .hamburger{display:flex;}

  /* Sections */
  .section-pad{padding:80px 0;}
  .section-head{margin-bottom:44px;}

  .countries-grid{grid-template-columns:repeat(2,1fr);}
  .countries-pager{gap:var(--space-2);}

  /* Spontanée */
  .spontanee-grid{grid-template-columns:1fr; gap:40px;}
  .spontanee-visual{order:-1;}
  .spontanee-content{max-width:640px; margin:0 auto;} 
  .spontanee-features{grid-template-columns:1fr 1fr;}

  .footer-top{grid-template-columns:1fr; gap:var(--space-6);}

  .sticky-mobile-cta{display:block;}
  body{padding-bottom:78px;}

  /* Promo hero */
  .promo-section .container{
    max-width:min(96vw, 1180px);
  }
  .promo-slide--single{min-height:400px;}
  .promo-content{padding:40px 44px;}
  .promo-metrics{gap:var(--space-3);}
  .promo-metric{padding:12px 16px;}
}

@media(max-width:768px){
  .promo-slide--single{min-height:auto;}
  .promo-content{padding:36px 28px 24px;}
  .promo-metrics{flex-wrap:wrap; gap:var(--space-2);}
  .promo-metric{min-width:calc(33% - 8px); flex:1;}
  .promo-title{font-size:clamp(24px, 5vw, 32px);}
  .promo-desc{font-size:var(--fs-sm);}
}

@media(max-width:600px){
  .container{padding:0 var(--space-5);}
  .header-inner{padding:var(--space-3) var(--space-5);}
  .logo-img{height:40px;}

  .section-pad{padding:64px 0;}
  .section-title{margin-bottom:var(--space-3);}

  .countries-grid{grid-template-columns:1fr;}
  .country-media{height:96px;}
  .country-flag{height:58px;}
  .country-ico{top:68px;}
  .countries-pager{flex-wrap:wrap;}
  .countries-pager-num{min-width:36px; height:36px;}

  /* Spontanée mobile */
  .spontanee-grid{gap:var(--space-7);}
  .spontanee-features{grid-template-columns:1fr;}
  .spontanee-title{font-size:clamp(24px, 5.5vw, 32px);}
  .spontanee-sub{font-size:var(--fs-base);}
  .spontanee-map-wrap{max-width:400px;}
  .sp-country-card{font-size:var(--fs-xs); padding:8px 11px; gap:8px;}
  .sp-country-card .sp-cflag{width:18px;}
  .sp-country-card .sp-cname{font-size:var(--fs-xs);}
  .sp-country-card .sp-cstatus{font-size:11px;}

  .faq-q{padding:var(--space-4) var(--space-4); font-size:var(--fs-base);}
  .faq-a-inner{padding:0 var(--space-4) var(--space-5);}

  .btn{width:100%;}

  .footer-links{gap:var(--space-10);}

  /* Promo hero mobile */
  .promo-section .container{
    max-width:100%;
    padding-inline:var(--space-5);
  }
  .promo-slide--single{border-radius:var(--radius) var(--radius) 0 0;}
  .promo-content{padding:28px 20px 20px;}
  .promo-badge{font-size:11px; padding:5px 14px;}
  .promo-title{font-size:clamp(21px, 5.5vw, 27px); margin-bottom:var(--space-3);}
  .promo-desc{margin-bottom:20px; line-height:1.8;}
  .promo-metrics{gap:6px; margin-bottom:24px;}
  .promo-metric{min-width:calc(33% - 4px); padding:10px 12px;}
  .promo-metric-value{font-size:clamp(24px, 5vw, 28px);}
  .promo-metric-label{font-size:11px;}
  .promo-disclaimer{font-size:10.5px;}
}

/* ===== Desktop large (1440px+) ===== */
@media(min-width:1200px){
  .promo-section .container{
    max-width:min(94vw, 1500px);
  }
}

@media(min-width:1600px){
  .promo-section .container{
    max-width:min(92vw, 1600px);
  }
  .promo-content{padding:60px 72px;}
  .promo-title{font-size:clamp(34px, 3vw, 46px);}
}
