/* =========================================================
   Aaron Motors Agency — couche de modernisation
   Posée par-dessus le thème macchina. Aucun fichier du thème
   n'est modifié : tout est surchargeable et réversible.
   ========================================================= */

:root{
  /* l'or de l'identité remplace le rouge incohérent du thème */
  --vamtam-body-link-hover:#B8974A;
  --vamtam-body-link-active:#B8974A;
  --vamtam-btn-hover-bg-color:#B8974A;

  --ama-noir:#141312;
  --ama-or:#D2B86C;
  --ama-or-fonce:#B8974A;
  --ama-encre:#3D3B39;
  --ama-gris:#7A7773;
  --ama-ligne:#E6E3DE;
  --ama-creme:#FAF9F7;
}

/* ---------- Typographie : hiérarchie resserrée ---------- */
body{ -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; color:var(--ama-encre); }

h1,h2,h3,h4,.elementor-heading-title{
  letter-spacing:-.022em;
  line-height:1.08;
  font-weight:700;
}
h1,.elementor-widget-heading h1.elementor-heading-title{ letter-spacing:-.03em; }
h5,h6{ letter-spacing:.16em; line-height:1.35; }

p,.elementor-widget-text-editor{ line-height:1.72; }
.elementor-widget-text-editor{ font-size:16.5px; color:var(--ama-encre); }

/* les sur-titres en petites capitales gagnent en respiration */
.elementor-widget-heading h6.elementor-heading-title{
  text-transform:uppercase;
  font-weight:600;
  font-size:12.5px;
  color:var(--ama-or-fonce);
}

/* ---------- Boutons ---------- */
.elementor-button,
.vamtam-theme-button,
input[type=submit],
button[type=submit]{
  letter-spacing:.1em;
  font-weight:700;
  text-transform:uppercase;
  transition:background-color .28s ease, color .28s ease, transform .28s ease, box-shadow .28s ease;
  will-change:transform;
}
.elementor-button:hover,
input[type=submit]:hover,
button[type=submit]:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(20,19,18,.18);
}

/* ---------- Liens ---------- */
a{ transition:color .22s ease; }

/* ---------- Rythme vertical ---------- */
.elementor-section.elementor-section-boxed > .elementor-container{ max-width:1240px; }

/* ---------- Images ---------- */
.elementor-widget-image img{ transition:transform .5s cubic-bezier(.2,.7,.3,1); }

/* ---------- Formulaires ---------- */
.elementor-field-group input:not([type=submit]),
.elementor-field-group textarea,
.elementor-field-group select{
  border:1px solid var(--ama-ligne) !important;
  background:#fff !important;
  padding:14px 16px !important;
  font-size:15px !important;
  transition:border-color .22s ease, box-shadow .22s ease;
}
.elementor-field-group input:not([type=submit]):focus,
.elementor-field-group textarea:focus,
.elementor-field-group select:focus{
  border-color:var(--ama-or) !important;
  box-shadow:0 0 0 3px rgba(210,184,108,.18) !important;
  outline:none !important;
}

/* ---------- Accessibilité : focus clavier visible ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--ama-or-fonce);
  outline-offset:3px;
}

/* ---------- Confort de lecture mobile ---------- */
@media(max-width:767px){
  h1,.elementor-widget-heading h1.elementor-heading-title{ letter-spacing:-.02em; line-height:1.12; }
  .elementor-widget-text-editor{ font-size:16px; }
  .elementor-button{ width:auto; }
}

html{ scroll-behavior:smooth; }

/* =========================================================
   Cartes véhicules — partagées entre l'accueil et /vehicules/
   ========================================================= */
.ama-stock{--or:#D2B86C;--noir:#141312;--gris:#7A7773}
.ama-stock__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:26px;margin:0 0 34px}
.ama-car{display:flex;flex-direction:column;background:#fff;border:1px solid #E6E3DE;text-decoration:none;color:inherit;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.ama-car:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(0,0,0,.11);border-color:var(--or)}
.ama-car__img{aspect-ratio:16/10;overflow:hidden;background:#F3F1ED}
.ama-car__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.ama-car:hover .ama-car__img img{transform:scale(1.05)}
.ama-car__body{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1}
.ama-car__title{margin:0 0 8px;font-size:19px;line-height:1.25;font-weight:700;color:var(--noir);letter-spacing:-.015em}
.ama-car__meta{margin:0 0 16px;font-size:13.5px;color:var(--gris)}
.ama-car__meta span{color:var(--or);margin:0 2px}
.ama-car__price{margin:0 0 18px;font-size:23px;font-weight:700;color:var(--noir);letter-spacing:-.02em}
.ama-car__cta{margin-top:auto;font-size:13px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--noir);border-top:2px solid var(--or);padding-top:14px;align-self:flex-start}
.ama-car:hover .ama-car__cta{color:#B8974A}
.ama-stock__foot{text-align:center;padding:26px 20px;background:#F3F1ED}
.ama-stock__foot p{margin:0 0 14px;color:var(--gris);font-size:15px}
.ama-stock__foot a,.ama-stock__cta{display:inline-block;background:var(--noir);color:#fff !important;text-decoration:none;padding:15px 34px;font-size:13px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:background .25s ease,transform .25s ease,color .25s ease}
.ama-stock__foot a:hover,.ama-stock__cta:hover{background:#B8974A;color:#fff !important;transform:translateY(-2px)}
.ama-stock__foot a:visited,.ama-stock__cta:visited{color:#fff !important}
.ama-stock__head{text-align:center;margin:0 0 34px}
.ama-stock__head h2{margin:0 0 10px;font-size:clamp(30px,4vw,46px);font-weight:700;letter-spacing:-.03em;line-height:1.06;color:var(--noir)}
.ama-stock__head p{margin:0;color:var(--gris);font-size:16px}
.ama-stock--apercu{text-align:center}
@media(max-width:600px){.ama-stock__grid{grid-template-columns:1fr;gap:20px}}

/* =========================================================
   Formulaire « Évaluez votre véhicule » (accueil, dark)
   Cible le widget 3660042 dans la section 4951578.
   ========================================================= */
.elementor-element-4951578 .elementor-element-3660042 .elementor-field-group{
  margin-bottom:18px;
  padding-right:10px;
  padding-left:10px;
}
.elementor-element-4951578 .elementor-element-3660042 .elementor-field-group > label{
  font-size:11.5px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#B5B0A8;
  margin-bottom:8px;
}
.elementor-element-4951578 .elementor-element-3660042 input:not([type=submit]),
.elementor-element-4951578 .elementor-element-3660042 select,
.elementor-element-4951578 .elementor-element-3660042 textarea{
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:3px !important;
  color:#fff !important;
  padding:15px 16px !important;
  font-size:15px !important;
  transition:border-color .22s ease, background .22s ease, box-shadow .22s ease;
}
.elementor-element-4951578 .elementor-element-3660042 input:not([type=submit])::placeholder,
.elementor-element-4951578 .elementor-element-3660042 textarea::placeholder{
  color:rgba(255,255,255,.38);
}
.elementor-element-4951578 .elementor-element-3660042 select{
  color:#fff !important;
}
.elementor-element-4951578 .elementor-element-3660042 select option{
  color:#141312;
  background:#fff;
}
.elementor-element-4951578 .elementor-element-3660042 input:not([type=submit]):focus,
.elementor-element-4951578 .elementor-element-3660042 select:focus,
.elementor-element-4951578 .elementor-element-3660042 textarea:focus{
  background:rgba(255,255,255,.08) !important;
  border-color:#D2B86C !important;
  box-shadow:0 0 0 3px rgba(210,184,108,.22) !important;
}
/* champ upload : zone en pointillés façon drag & drop */
.elementor-element-4951578 .elementor-element-3660042 input[type=file]{
  border:1px dashed rgba(255,255,255,.28) !important;
  background:transparent !important;
  padding:22px 16px !important;
  cursor:pointer;
}
.elementor-element-4951578 .elementor-element-3660042 input[type=file]:hover{
  border-color:#D2B86C !important;
}
.elementor-element-4951578 .elementor-element-3660042 input[type=file]::file-selector-button{
  background:#D2B86C;border:none;color:#141312;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;font-size:11.5px;
  padding:9px 16px;margin-right:14px;cursor:pointer;border-radius:2px;
}
/* bouton : or plein, plus de blanc plat */
.elementor-element-4951578 .elementor-element-3660042 button[type=submit]{
  background:#D2B86C !important;
  color:#141312 !important;
  border:none !important;
  border-radius:3px !important;
  padding:18px 34px !important;
  font-size:14px !important;
  font-weight:700 !important;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-top:8px;
}
.elementor-element-4951578 .elementor-element-3660042 button[type=submit]:hover{
  background:#B8974A !important;
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
@media(max-width:767px){
  .elementor-element-4951578 .elementor-element-3660042 .elementor-field-group{padding-left:0;padding-right:0}
}

/* =========================================================
   Formulaire de contact (page Contact, section sombre)
   ========================================================= */
.elementor-element-ca82f6f .elementor-field-group{margin-bottom:18px}
.elementor-element-ca82f6f input:not([type=submit]),
.elementor-element-ca82f6f textarea{
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:3px !important;
  color:#fff !important;
  padding:15px 16px !important;
  font-size:15px !important;
  transition:border-color .22s ease, background .22s ease, box-shadow .22s ease;
}
.elementor-element-ca82f6f input:not([type=submit])::placeholder,
.elementor-element-ca82f6f textarea::placeholder{
  color:rgba(255,255,255,.5);
  opacity:1;
}
.elementor-element-ca82f6f input:not([type=submit]):focus,
.elementor-element-ca82f6f textarea:focus{
  background:rgba(255,255,255,.08) !important;
  border-color:#D2B86C !important;
  box-shadow:0 0 0 3px rgba(210,184,108,.22) !important;
}
.elementor-element-ca82f6f button[type=submit]{
  background:#D2B86C !important;
  color:#141312 !important;
  border:none !important;
  border-radius:3px !important;
  padding:17px 36px !important;
  font-size:14px !important;
  font-weight:700 !important;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.elementor-element-ca82f6f button[type=submit]:hover{
  background:#B8974A !important;
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
/* placeholders du formulaire d'estimation : même lisibilité */
.elementor-element-3660042 input:not([type=submit])::placeholder,
.elementor-element-3660042 textarea::placeholder{opacity:1}


/* =========================================================
   Sélecteur de langue — menu déroulant compact
   Basé sur <details>/<summary> : pas de JavaScript, accessible
   au clavier et fonctionnel au tactile.
   ========================================================= */
.ama-lang{display:flex;align-items:center}
.ama-lang__box{position:relative;margin-left:16px;padding-left:16px;border-left:1px solid rgba(20,19,18,.14)}
.ama-lang__toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:3px;cursor:pointer;
  list-style:none;user-select:none;line-height:1;
  font-size:11.5px;font-weight:700;letter-spacing:.06em;color:#7A7773;
  transition:background .2s ease,color .2s ease}
.ama-lang__toggle::-webkit-details-marker{display:none}
.ama-lang__toggle:hover{background:rgba(210,184,108,.16);color:#141312}
.ama-lang__box[open] .ama-lang__toggle{background:rgba(210,184,108,.24);color:#141312}
.ama-lang__toggle img{display:block;width:16px;height:11px;object-fit:cover;border-radius:1px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.ama-lang__arrow{width:0;height:0;border-left:3.5px solid transparent;border-right:3.5px solid transparent;
  border-top:4px solid currentColor;opacity:.75;transition:transform .2s ease}
.ama-lang__box[open] .ama-lang__arrow{transform:rotate(180deg)}

.ama-lang__panel{position:absolute;top:calc(100% + 6px);right:0;z-index:999;min-width:112px;
  display:flex;flex-direction:column;padding:5px;
  background:#fff;border:1px solid #E6E3DE;box-shadow:0 12px 30px rgba(0,0,0,.13)}
.ama-lang__item{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:2px;text-decoration:none;line-height:1;
  font-size:11.5px;font-weight:700;letter-spacing:.06em;color:#141312 !important;white-space:nowrap;
  transition:background .18s ease}
.ama-lang__item img{display:block;width:16px;height:11px;object-fit:cover;border-radius:1px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.ama-lang__item:hover{background:rgba(210,184,108,.2);color:#141312 !important}

/* header sombre (accueil) : inverser les contrastes du bouton */
.elementor-element-434 .ama-lang__box,
.elementor-element-2036 .ama-lang__box{border-left-color:rgba(255,255,255,.2)}
.elementor-element-434 .ama-lang__toggle,
.elementor-element-2036 .ama-lang__toggle{color:rgba(255,255,255,.78)}
.elementor-element-434 .ama-lang__toggle:hover,
.elementor-element-2036 .ama-lang__toggle:hover,
.elementor-element-434 .ama-lang__box[open] .ama-lang__toggle,
.elementor-element-2036 .ama-lang__box[open] .ama-lang__toggle{color:#fff}

/* menu burger : le panneau se déplie dans le flux, pas en survol */
@media(max-width:1024px){
  .ama-lang__box{margin-left:0;padding-left:0;border-left:none;width:100%;
    padding-top:12px;margin-top:8px;border-top:1px solid rgba(20,19,18,.12)}
  .ama-lang__toggle{font-size:13px;padding:10px 12px}
  .ama-lang__panel{position:static;box-shadow:none;border:none;background:transparent;padding:4px 0 0}
  .ama-lang__item{font-size:13px;padding:10px 12px}
}

/* =========================================================
   Pied de page unifié (shortcode [ama_footer])
   ========================================================= */
.ama-foot{--or:#D2B86C;--or-f:#B8974A;--txt:rgba(255,255,255,.72);--txt-fort:#fff;
  background:#141312;color:var(--txt);padding:70px 0 0;font-size:14.5px;line-height:1.7}
.ama-foot a{color:var(--txt);text-decoration:none;transition:color .2s ease}
.ama-foot a:hover{color:var(--or)}

.ama-foot__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:44px;
  max-width:1240px;margin:0 auto;padding:0 30px 56px}

.ama-foot__logo{display:inline-block;margin:0 0 20px}
.ama-foot__logo img{display:block;width:200px;height:auto;
  filter:brightness(0) invert(1);opacity:.95}
.ama-foot__baseline{margin:0 0 22px;max-width:330px;font-size:14px;color:rgba(255,255,255,.55)}

.ama-foot__social{display:flex;gap:9px}
.ama-foot__soc{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
  border:1px solid rgba(255,255,255,.18);border-radius:50%;color:rgba(255,255,255,.8);
  transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s ease}
.ama-foot__soc:hover{background:var(--or);border-color:var(--or);color:#141312;transform:translateY(-2px)}

.ama-foot__titre{margin:0 0 18px;font-size:11.5px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--or)}
.ama-foot__adresse{font-style:normal;margin:0 0 14px}
.ama-foot__tel{display:block;font-size:19px;font-weight:700;color:var(--txt-fort) !important;
  letter-spacing:-.01em;margin-bottom:6px}
.ama-foot__tel:hover{color:var(--or) !important}
.ama-foot__mail{display:block;word-break:break-word}
.ama-foot__heures{margin:0}

.ama-foot__nav{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.ama-foot__nav a{position:relative;padding-left:0;transition:padding-left .2s ease,color .2s ease}
.ama-foot__nav a:hover{padding-left:9px}
.ama-foot__nav a::before{content:'';position:absolute;left:0;top:50%;width:5px;height:1px;
  background:var(--or);opacity:0;transition:opacity .2s ease}
.ama-foot__nav a:hover::before{opacity:1}

.ama-foot__bas{border-top:1px solid rgba(255,255,255,.12)}
.ama-foot__bas{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;
  max-width:1240px;margin:0 auto;padding:22px 30px 26px;
  font-size:12.5px;color:rgba(255,255,255,.45)}
.ama-foot__bas p{margin:0}
/* le lien légal héritait de la couleur de lien du thème (#171616) : noir sur noir */
.ama-foot__bas a{color:rgba(255,255,255,.62) !important;text-decoration:underline;text-underline-offset:3px;
  text-decoration-color:rgba(255,255,255,.28)}
.ama-foot__bas a:hover{color:var(--or) !important;text-decoration-color:var(--or)}

@media(max-width:900px){
  .ama-foot__grid{grid-template-columns:1fr 1fr;gap:36px 30px}
  .ama-foot__brand{grid-column:1 / -1}
}
@media(max-width:560px){
  .ama-foot{padding-top:52px}
  .ama-foot__grid{grid-template-columns:1fr;gap:32px;padding-bottom:40px}
  .ama-foot__bas{flex-direction:column;align-items:flex-start;text-align:left}
}

/* =========================================================
   Pages légales (politique de confidentialité)
   ========================================================= */
.ama-legal{max-width:760px;margin:0 auto;color:#3D3B39}
.ama-legal__intro{font-size:17.5px;line-height:1.7;color:#141312;margin:0 0 44px;
  padding-left:20px;border-left:3px solid var(--ama-or,#D2B86C)}
.ama-legal__bloc{margin:0 0 40px}
.ama-legal__bloc h2{margin:0 0 14px;font-size:22px;font-weight:700;letter-spacing:-.02em;
  line-height:1.25;color:#141312}
.ama-legal p{margin:0 0 14px;line-height:1.75;font-size:16px}
.ama-legal ul{margin:0 0 14px;padding-left:20px}
.ama-legal li{margin-bottom:11px;line-height:1.7;font-size:16px}
.ama-legal a{color:#B8974A;text-decoration:underline;text-underline-offset:2px}
.ama-legal a:hover{color:#141312}
.ama-legal strong{color:#141312;font-weight:700}
.ama-legal__maj{margin:48px 0 0;padding-top:20px;border-top:1px solid #E6E3DE;
  font-size:13.5px;color:#7A7773;font-style:italic}
@media(max-width:600px){
  .ama-legal__intro{font-size:16px;padding-left:16px;margin-bottom:34px}
  .ama-legal__bloc h2{font-size:19px}
}
.ama-foot__legal{display:inline-flex;flex-wrap:wrap;gap:6px 18px}

/* =========================================================
   Aperçu cliquable de la localisation (remplace l'iframe Maps)
   Tuiles OpenStreetMap hébergées localement : aucun cookie tiers.
   ========================================================= */
.ama-carte{position:relative}
.ama-carte__lien{position:relative;display:block;overflow:hidden;text-decoration:none;
  background:#E8E4DC;aspect-ratio:1024/512}
.ama-carte__tuiles{display:grid;grid-template-columns:repeat(4,1fr);width:100%;
  transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.ama-carte__tuiles img{display:block;width:100%;height:auto}
.ama-carte__lien:hover .ama-carte__tuiles{transform:scale(1.04)}
.ama-carte__lien::after{content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(20,19,18,.62) 0%,rgba(20,19,18,.30) 42%,rgba(20,19,18,0) 68%)}
.ama-carte__pin{position:absolute;left:46.62%;top:48.55%;transform:translate(-50%,-100%);
  z-index:2;filter:drop-shadow(0 3px 6px rgba(0,0,0,.4))}
.ama-carte__carte{position:absolute;z-index:3;left:0;top:50%;transform:translateY(-50%);
  padding:0 34px;max-width:420px;color:#fff}
.ama-carte__titre{margin:0 0 10px;font-size:11.5px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:#D2B86C}
.ama-carte__adr{margin:0 0 18px;font-size:26px;font-weight:700;line-height:1.2;letter-spacing:-.02em;color:#fff}
.ama-carte__cta{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:#fff;border-bottom:2px solid #D2B86C;padding-bottom:5px;
  transition:color .22s ease}
.ama-carte__lien:hover .ama-carte__cta{color:#D2B86C}
.ama-carte__bas{display:flex;flex-wrap:wrap;gap:10px 20px;justify-content:space-between;align-items:center;
  padding:12px 4px 0;font-size:12px;color:#7A7773}
.ama-carte__iti{font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#141312 !important;
  text-decoration:underline;text-underline-offset:3px;text-decoration-color:#D2B86C}
.ama-carte__iti:hover{color:#B8974A !important}
.ama-carte__credit a{color:#7A7773;text-decoration:underline}
@media(max-width:700px){
  .ama-carte__lien{aspect-ratio:4/3}
  .ama-carte__lien::after{background:linear-gradient(180deg,rgba(20,19,18,.15) 0%,rgba(20,19,18,.72) 62%)}
  .ama-carte__carte{top:auto;bottom:0;transform:none;padding:0 22px 22px;max-width:none}
  .ama-carte__adr{font-size:21px}
}
