/* CMU Newsletter v1.4.0 | Footer micro variant (no title, centered) */
:root{ --cmu-bg:#F5F1ED; --cmu-copper:#C07C4A; --cmu-text:#1A1A1A; --cmu-border:#E5E1DD; }

/* Scope strict footer */
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter{
  background: var(--cmu-bg);
  border: 0.1rem solid var(--cmu-border);
  border-radius: 0.8rem;
  padding: 0.8rem; /* ultra-tight */
  max-width: 28rem; /* très étroit pour limiter la hauteur perçue */
  margin-inline: auto; /* centré dans la colonne */
  text-align: center;
  box-shadow: 0 0.2rem 0.6rem rgba(0,0,0,0.05);
}

/* Groupe champ */
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__group{ margin: 0 0 0.6rem; }
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__label{
  display:block; margin:0 0 0.3rem;
  font-size: clamp(1.1rem, 0.3vw + 1.0rem, 1.2rem);
  line-height: 1.2; color: rgba(0,0,0,0.75);
}
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__input{
  width:100%; min-width:0;
  font-family: "Open Sans", system-ui, -apple-system, sans-serif;
  font-size: clamp(1.2rem, 0.25vw + 1.0rem, 1.35rem);
  line-height: 1.25; /* évite chevauchements */
  padding: 0.6rem 0.9rem;
  border: 0.1rem solid var(--cmu-border);
  border-radius: 0.6rem; background:#fff;
}
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__input::placeholder{ opacity:0.7; }
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__input:focus{ outline:0.2rem solid var(--cmu-copper); outline-offset:0.2rem; }

/* Bouton centré, compact, anti-débordement */
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__btn{
  display:inline-flex; align-items:center; justify-content:center;
  font-family: "Montserrat", system-ui, -apple-system, sans-serif;
  font-size: clamp(1.2rem, 0.25vw + 1.0rem, 1.35rem);
  line-height: 1; letter-spacing: 0.01em;
  padding: 0.6rem 1.0rem;
  border: 0.1rem solid var(--cmu-copper);
  border-radius: 0.4rem; background: var(--cmu-copper); color:#fff;
  max-width: 100%; white-space: nowrap; /* pas de wrap du label */
  transition: transform 120ms ease, box-shadow 120ms ease;
}
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__btn:hover{ transform:scale(1.02); box-shadow:0 0.4rem 1rem rgba(0,0,0,0.06); }

/* Feedback discret */
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__feedback{ margin-top:0.4rem; font-size:1.2rem; }

/* Mobile (par défaut) : déjà ultra-compact.  Desktop ≥48em : rien à agrandir. */
@media (min-width: 48em){
  body .elementor-location-footer #cmu-footer-nl .cmu-newsletter{ max-width: 28rem; padding: 0.8rem; }
}

/* Secours anti-collisions Elementor — activer seulement si besoin */
/*
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__input{ padding:0.6rem 0.9rem !important; font-size:1.25rem !important; }
body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__btn{ padding:0.6rem 1.0rem !important; font-size:1.25rem !important; }
*/
/* ===== Footer Newsletter — petit laptop fixes v1.4.1 =====
   Cible : écrans ~960–1280 pixels, sans impacter mobile ni desktop large */
@media (min-width: 60em) and (max-width: 80em){
  /* Élargir légèrement la carte pour éviter la coupe du placeholder */
  body .elementor-location-footer #cmu-footer-nl .cmu-newsletter{
    max-width: 30rem; /* avant 28rem -> un peu plus large */
    padding: 0.8rem;
  }

  /* Input : police un peu plus petite + padding vertical réduit = moins de hauteur, plus de place horizontale perçue */
  body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__input{
    font-size: 1.2rem;         /* baisse contrôlée pour que le placeholder tienne */
    padding: 0.6rem 0.9rem;     /* compact */
    min-width: 0;               /* sécurité anti-wrap dans grilles étroites */
  }
  body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__input::placeholder{
    font-size: 1.2rem;          /* cohérent avec l’input */
  }

  /* Bouton : garder le texte à l’intérieur avec plus d’air latéral */
  body .elementor-location-footer #cmu-footer-nl .cmu-newsletter__btn{
    font-size: 1.2rem;          /* léger downscale */
    padding: 0.6rem 1.4rem;     /* + padding gauche/droite */
    white-space: nowrap;        /* pas de retour à la ligne du label */
  }
}
