/* Allo Limousines 1.29.5 — Hero / réservation accueil / événements */
:root{
  --al-cream:#f6f0e6;
  --al-ivory:#fbf8f2;
  --al-ink:#17130f;
  --al-muted:#6f665d;
  --al-gold:#b58a3a;
  --al-gold-dark:#8b6327;
  --al-line:rgba(56,43,29,.14);
}

/* HERO : typographie éditoriale, plus lisible et moins "effet IA" */
.home-hero{
  min-height:760px;
  background:var(--al-cream);
  color:var(--al-ink);
}
.home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(246,240,230,.98) 0%,rgba(246,240,230,.92) 30%,rgba(246,240,230,.48) 52%,rgba(246,240,230,.04) 72%);
  z-index:-1;
}
.home-hero > .absolute.inset-0 > div{display:none!important;}
.home-hero > .absolute.inset-0 img{
  object-position:72% center!important;
  filter:saturate(.92) contrast(.97) brightness(1.02);
}
.home-hero__inner{position:relative;z-index:2;padding-top:172px!important;}
.home-hero__copy{max-width:650px!important;}
.home-hero__title{
  text-transform:none!important;
  letter-spacing:-.035em!important;
  font-family:"Playfair Display","Cormorant Garamond",Georgia,serif!important;
  font-weight:600!important;
  line-height:.98!important;
  color:var(--al-ink)!important;
  text-shadow:none!important;
}
.home-hero__title span{color:var(--al-ink)!important;display:inline!important;}
.home-hero__title span+span::before{content:" ";}
.home-hero__title span:last-child{color:var(--al-ink)!important;}
.home-hero__lead{color:#423a33!important;font-size:1.08rem!important;max-width:590px;}
.home-hero__lead span{color:#6d6257!important;}
.home-hero__actions .btn{
  border-radius:13px!important;
  min-height:52px;
  letter-spacing:.035em!important;
  text-transform:none!important;
  font-size:.88rem!important;
  font-weight:600!important;
  box-shadow:none!important;
}
.home-hero__actions .btn-gold{
  color:#fff!important;
  background:linear-gradient(135deg,#9a6c29,#c79b4b)!important;
  border:1px solid #b48840!important;
}
.home-hero__actions .btn-gold:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(100,68,25,.16)!important;}
.home-hero__actions .btn-ghost{
  color:var(--al-ink)!important;
  border:1px solid rgba(23,19,15,.32)!important;
  background:rgba(255,255,255,.5)!important;
}
.home-hero__actions .btn-ghost:hover{background:#fff!important;border-color:var(--al-gold)!important;color:var(--al-ink)!important;}
.home-hero__trust{max-width:630px;margin-top:38px!important;gap:14px!important;}
.home-hero__trust li{background:rgba(255,255,255,.58);border:1px solid var(--al-line);border-radius:15px;padding:11px 12px;backdrop-filter:blur(7px);}
.home-hero__trust li span span:first-child{color:var(--al-ink)!important;font-weight:500;}
.home-hero__trust li span span:last-child{color:#756b61!important;}
.home-hero__trust svg{color:var(--al-gold-dark)!important;}

/* BARRE DE RÉSERVATION : vraie carte premium crème, lisible, sans ancien noir/or brillant */
.home-booking-wrap{margin-top:-86px!important;}
.home-booking-bar{
  background:rgba(251,248,242,.98)!important;
  color:var(--al-ink)!important;
  border:1px solid rgba(79,59,37,.13)!important;
  border-radius:22px!important;
  padding:14px!important;
  box-shadow:0 24px 70px rgba(60,42,22,.13)!important;
  backdrop-filter:blur(12px);
}
.home-booking-bar > div{
  min-height:66px;
  padding:9px 18px!important;
  border-color:rgba(23,19,15,.10)!important;
  border-radius:13px;
  transition:background .2s ease,border-color .2s ease;
}
.home-booking-bar > div:hover{background:#fff;border-color:rgba(181,138,58,.24)!important;}
.home-booking-bar label{color:#786d63!important;font-size:.61rem!important;letter-spacing:.14em!important;}
.home-booking-bar input,.home-booking-bar select{
  color:var(--al-ink)!important;
  font-weight:500!important;
  min-height:27px;
}
.home-booking-bar input::placeholder{color:#a39990!important;}
.home-booking-bar svg{color:var(--al-gold-dark)!important;}
.home-booking-bar .btn{
  min-height:66px!important;
  border-radius:14px!important;
  text-transform:none!important;
  letter-spacing:.02em!important;
  font-size:.88rem!important;
  padding-inline:26px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#966825,#c69743)!important;
  border:1px solid #b4873c!important;
}
.home-booking-bar .btn:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(112,76,28,.18)!important;}

/* ÉVÉNEMENTS : cartes plus cohérentes avec la maquette crème/or */
.home-events{background:var(--al-cream);}
.home-events .scroll-x{gap:16px!important;padding:6px 2px 14px;}
.home-event-card{
  border:1px solid var(--al-line)!important;
  border-radius:20px!important;
  background:var(--al-ivory)!important;
  box-shadow:0 12px 34px rgba(48,36,24,.07)!important;
  min-height:315px;
}
.home-event-card > img{height:196px!important;}
.home-event-card > div{
  position:relative!important;
  inset:auto!important;
  background:var(--al-ivory)!important;
  padding:18px 18px 19px!important;
}
.home-event-card h3{color:var(--al-ink)!important;text-transform:none!important;letter-spacing:-.01em!important;font-family:"Playfair Display",Georgia,serif!important;font-size:1.15rem!important;font-weight:600!important;}
.home-event-card p{color:var(--al-muted)!important;font-size:.82rem!important;line-height:1.5!important;}
.home-event-card a{color:var(--al-gold-dark)!important;border-bottom:0!important;text-transform:none!important;letter-spacing:.01em!important;font-weight:600!important;font-size:.8rem!important;}
.home-event-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(48,36,24,.11)!important;border-color:rgba(181,138,58,.35)!important;}

@media(max-width:1023px){
  .home-hero{min-height:720px;}
  .home-hero::after{background:linear-gradient(180deg,rgba(246,240,230,.95) 0%,rgba(246,240,230,.76) 48%,rgba(246,240,230,.10) 75%);}
  .home-hero > .absolute.inset-0 img{object-position:62% center!important;}
  .home-hero__inner{padding-top:135px!important;}
  .home-booking-wrap{margin-top:-52px!important;}
}
@media(max-width:767px){
  .home-hero{min-height:760px;padding-bottom:115px!important;}
  .home-hero::after{background:linear-gradient(180deg,rgba(246,240,230,.98) 0%,rgba(246,240,230,.90) 37%,rgba(246,240,230,.32) 68%,rgba(246,240,230,.08) 100%);}
  .home-hero > .absolute.inset-0 img{object-position:64% bottom!important;}
  .home-hero__inner{padding-top:112px!important;}
  .home-hero__copy{max-width:100%!important;}
  .home-hero__title{font-size:2.55rem!important;line-height:1.01!important;max-width:360px;}
  .home-hero__lead{font-size:.96rem!important;line-height:1.65!important;max-width:340px;}
  .home-hero__actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;max-width:340px;}
  .home-hero__actions .btn{width:100%!important;}
  .home-hero__trust{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:345px;margin-top:24px!important;}
  .home-booking-wrap{margin-top:-54px!important;padding-inline:14px!important;}
  .home-booking-bar{border-radius:19px!important;padding:13px!important;gap:8px!important;}
  .home-booking-bar > div{min-height:60px;padding:10px 12px!important;background:#fff;border:1px solid rgba(23,19,15,.08)!important;}
  .home-booking-bar .btn{min-height:58px!important;width:100%!important;}
  .home-events{padding-top:54px!important;}
  .home-event-card{width:82vw!important;max-width:310px!important;}
}
