/* Allo Limousines — public bundle 1.31.12. Source: uploaded live project 1.31.11. */

/* ===== SOURCE: luxe-cream.css ===== */
:root{
  --al-cream:#f5efe5;--al-ivory:#fbf8f2;--al-paper:#fffdf9;--al-ink:#17130f;--al-soft:#6d655c;
  --al-gold:#b8842f;--al-gold2:#d4ad64;--al-line:#e5d8c5;--al-night:#11100f;--al-night2:#1c1814;
  --al-shadow:0 18px 50px rgba(51,36,18,.10);--al-radius:18px;
}
body{background:var(--al-cream);color:var(--al-ink)}
.al-home{background:var(--al-cream);color:var(--al-ink);overflow:hidden}
.al-container{width:min(1420px,calc(100% - 48px));margin-inline:auto}.al-eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#8e6628}
.al-serif{font-family:'Cormorant Garamond','Times New Roman',serif}.al-section{padding:76px 0}.al-title{font-family:'Cormorant Garamond','Times New Roman',serif;font-size:clamp(2rem,3.7vw,3.7rem);line-height:.96;font-weight:500;letter-spacing:-.025em}.al-copy{color:var(--al-soft);line-height:1.8}.al-link{display:inline-flex;align-items:center;gap:.55rem;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--al-ink);border-bottom:1px solid #b8842f;padding-bottom:4px}.al-link:hover{color:#8e6628}
.al-btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:50px;padding:0 24px;border-radius:10px;font-size:.78rem;font-weight:600;letter-spacing:.045em;transition:.2s ease}.al-btn-gold{color:white;background:linear-gradient(135deg,#8d6427,#c69443 55%,#e3c382);box-shadow:0 12px 28px rgba(142,102,40,.18)}.al-btn-gold:hover{transform:translateY(-1px);filter:brightness(1.04)}.al-btn-outline{border:1px solid #b8842f;color:var(--al-ink);background:rgba(255,255,255,.42)}.al-btn-outline:hover{background:#fff}.al-btn-dark{background:#181512;color:#fff;border:1px solid #181512}.al-btn-dark:hover{background:#2a241e}
.al-header{position:fixed;inset:0 0 auto;z-index:50;background:rgba(251,248,242,.94);border-bottom:1px solid rgba(184,132,47,.14);backdrop-filter:blur(14px);transition:.25s ease}.al-header.is-scrolled{box-shadow:0 10px 30px rgba(47,33,15,.08)}.al-header-inner{width:min(1480px,calc(100% - 44px));height:88px;margin:auto;display:flex;align-items:center;gap:28px}.al-logo img{height:72px;width:auto;display:block}.al-nav{display:flex;align-items:center;justify-content:center;gap:24px;flex:1}.al-nav a{font-size:.72rem;color:#2c2722;white-space:nowrap;padding:34px 0 28px;border-bottom:2px solid transparent}.al-nav a:hover,.al-nav a.is-active{color:#a36f25;border-color:#b8842f}.al-head-actions{display:flex;align-items:center;gap:10px}.al-phone{display:inline-flex;align-items:center;gap:8px;background:#17130f;color:#fff;padding:13px 17px;border-radius:999px;font-size:.75rem}.al-book-top{display:inline-flex;align-items:center;background:linear-gradient(135deg,#9b6d25,#d1a052);color:#fff;padding:13px 18px;border-radius:9px;font-size:.73rem;font-weight:600}.al-menu-btn{display:none;width:44px;height:44px;place-items:center;color:#17130f}.al-drawer{border-top:1px solid var(--al-line);background:#fffaf2}.al-drawer-grid{width:min(1420px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:30px;padding:30px 0}.al-drawer h3{font-size:.67rem;letter-spacing:.16em;text-transform:uppercase;color:#9b6d25;margin-bottom:13px}.al-drawer a,.al-drawer p{display:block;color:#645b51;font-size:.85rem;line-height:1.8}.al-drawer a:hover{color:#9b6d25}
.al-hero{padding-top:88px;background:#fbf8f2}.al-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;min-height:650px}.al-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:62px max(38px,calc((100vw - 1420px)/2 + 20px)) 52px max(38px,calc((100vw - 1420px)/2));background:linear-gradient(115deg,#fbf8f2 75%,rgba(251,248,242,.75))}.al-hero h1{font-family:'Cormorant Garamond','Times New Roman',serif;font-size:clamp(3.1rem,5.2vw,5.7rem);line-height:.87;font-weight:500;letter-spacing:-.045em;margin:19px 0 24px;max-width:780px}.al-hero-lead{max-width:640px;font-size:1.08rem;line-height:1.72;color:#5e564e}.al-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.al-hero-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:630px;margin-top:38px;padding-top:28px;border-top:1px solid var(--al-line)}.al-hero-badge{display:flex;gap:10px;align-items:center;font-size:.77rem;color:#3e3832}.al-hero-badge img{width:42px;height:42px;object-fit:contain}.al-hero-media{position:relative;min-height:620px;overflow:hidden}.al-hero-media>img{width:100%;height:100%;object-fit:cover}.al-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,248,242,.22),transparent 28%),linear-gradient(0deg,rgba(17,15,13,.12),transparent 40%)}.al-hero-note{position:absolute;z-index:2;right:7%;top:11%;max-width:255px;color:#a77023;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:2.1rem;line-height:1.05;transform:rotate(-7deg);text-shadow:0 1px 0 rgba(255,255,255,.5)}
.al-booking-wrap{position:relative;z-index:5;margin-top:-28px}.al-booking{width:min(1360px,calc(100% - 48px));margin:auto;background:#fff;box-shadow:var(--al-shadow);border:1px solid #eadfce;border-radius:15px;overflow:hidden}.al-book-tabs{display:flex;border-bottom:1px solid var(--al-line);background:#fbf6ee}.al-book-tabs span{padding:14px 24px;font-size:.75rem}.al-book-tabs span:first-child{background:#1a1714;color:#fff}.al-book-fields{display:grid;grid-template-columns:1.35fr 1.35fr .9fr .8fr .75fr auto;align-items:stretch}.al-book-field{padding:17px 18px;border-right:1px solid #ece2d4}.al-book-field label{display:block;font-size:.61rem;text-transform:uppercase;letter-spacing:.13em;color:#8a7d70;margin-bottom:5px}.al-book-field input,.al-book-field select{width:100%;border:0;background:transparent;color:#26211d;font-size:.83rem;outline:0}.al-book-submit{margin:10px;min-width:175px;border:0;border-radius:9px;background:linear-gradient(135deg,#956721,#d3a34f);color:#fff;font-weight:600;font-size:.78rem}
.al-quick{padding:48px 0 18px}.al-quick-grid{display:grid;grid-template-columns:repeat(6,1fr);background:rgba(255,255,255,.5);border:1px solid #eadfce;border-radius:16px;overflow:hidden}.al-quick-card{min-height:166px;padding:20px 12px 16px;text-align:center;border-right:1px solid #eadfce}.al-quick-card:last-child{border-right:0}.al-quick-card img{width:72px;height:72px;object-fit:contain;margin:0 auto 5px}.al-quick-card strong{display:block;font-family:'Cormorant Garamond',serif;font-size:1.15rem}.al-quick-card span{display:block;color:#8b7d6d;font-size:.69rem;margin-top:4px}.al-quick-card:hover{background:#fff}
.al-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.al-section-head p{max-width:650px;margin-top:8px}.al-section-head-right{flex-shrink:0}
.al-fleet{padding-bottom:78px}.al-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.al-filter{border:1px solid #dccbb4;border-radius:999px;padding:9px 15px;font-size:.68rem;color:#63584d;background:#fff8ef}.al-filter[aria-pressed="true"]{background:#1a1714;color:#fff;border-color:#1a1714}.al-fleet-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.al-vehicle{background:#fff;border:1px solid #e5d9c9;border-radius:14px;overflow:hidden;transition:.25s ease}.al-vehicle:hover{transform:translateY(-4px);box-shadow:var(--al-shadow)}.al-vehicle-img{height:170px;overflow:hidden}.al-vehicle-img img{width:100%;height:100%;object-fit:cover;transition:.35s}.al-vehicle:hover .al-vehicle-img img{transform:scale(1.035)}.al-vehicle-body{padding:15px}.al-vehicle-name{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.08rem}.al-vehicle-meta{display:flex;gap:12px;margin:8px 0;color:#776b60;font-size:.68rem}.al-price{font-size:.65rem;color:#7c7063}.al-price strong{font-family:'Cormorant Garamond',serif;color:#9f6d24;font-size:1.55rem}.al-vehicle-footer{display:flex;justify-content:space-between;align-items:end;gap:12px}
.al-night{position:relative;min-height:360px;color:#fff;display:flex;align-items:center;background:#15120f;overflow:hidden}.al-night-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62}.al-night:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,8,7,.92),rgba(9,8,7,.68) 43%,rgba(9,8,7,.1))}.al-night-content{position:relative;z-index:1;max-width:680px;padding:62px 0}.al-night h2{font-family:'Cormorant Garamond',serif;font-size:4rem;font-weight:500;font-style:italic;line-height:.95}.al-night p{color:#ddd5ca;line-height:1.75;margin:14px 0 22px}.al-night-points{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:26px}.al-night-points span{font-size:.72rem;color:#e4d4ba;display:flex;align-items:center;gap:6px}
.al-why-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}.al-why-media{position:relative;border-radius:18px;overflow:hidden;min-height:440px;box-shadow:var(--al-shadow)}.al-why-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.al-why-copy{padding:20px}.al-benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:21px 24px;margin:27px 0 30px}.al-benefit{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:start}.al-benefit img{width:45px;height:45px;object-fit:contain}.al-benefit strong{display:block;font-size:.82rem}.al-benefit span{display:block;font-size:.71rem;color:#7c7167;line-height:1.5;margin-top:3px}
.al-services{background:#fbf7f0;border-top:1px solid #eadfce;border-bottom:1px solid #eadfce}.al-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.al-service{background:#fff;border:1px solid #e5d9c9;border-radius:15px;overflow:hidden}.al-service-media{height:210px}.al-service-media img{width:100%;height:100%;object-fit:cover}.al-service-body{padding:18px}.al-service-body h3{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:600}.al-service-body p{color:#766b61;font-size:.76rem;line-height:1.6;margin:6px 0 12px}
.al-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}.al-step{position:relative;padding-left:65px}.al-step-num{position:absolute;left:0;top:0;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#9c6a22,#dcb76e);color:#fff;font-family:'Cormorant Garamond',serif;font-size:1.5rem;box-shadow:0 9px 20px rgba(159,109,36,.18)}.al-step strong{display:block;font-size:.83rem;margin-bottom:4px}.al-step span{font-size:.72rem;color:#827568;line-height:1.5}
.al-reviews{background:#12110f;color:#fff}.al-review-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:45px;align-items:center}.al-platforms{display:flex;gap:28px;margin-top:24px;flex-wrap:wrap}.al-platform{font-size:.75rem}.al-platform strong{display:block;color:#fff;font-size:1rem}.al-platform span{color:#d8b777}.al-review-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.al-review-card{background:#fbf8f2;color:#25211d;border-radius:12px;padding:22px}.al-review-card p{font-size:.8rem;line-height:1.65;color:#5f574f}.al-review-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:17px;padding-top:14px;border-top:1px solid #e7dccd}.al-review-card footer strong{font-size:.77rem}.al-stars{color:#b8842f;font-size:.72rem}
.al-blog-grid{display:grid;grid-template-columns:repeat(3,1fr) .92fr;gap:15px}.al-post,.al-newsletter{background:#fff;border:1px solid #e5d9c9;border-radius:14px;overflow:hidden}.al-post img{width:100%;height:190px;object-fit:cover}.al-post-body{padding:17px}.al-post h3{font-family:'Cormorant Garamond',serif;font-size:1.25rem;line-height:1.05}.al-post time{display:block;color:#927342;font-size:.65rem;margin:8px 0}.al-newsletter{background:linear-gradient(145deg,#9d6b26,#d7a857);color:#fff;padding:28px;display:flex;flex-direction:column;justify-content:center;text-align:center}.al-newsletter h3{font-family:'Cormorant Garamond',serif;font-size:1.8rem}.al-newsletter p{font-size:.75rem;line-height:1.6;opacity:.9;margin:10px 0 18px}.al-newsletter input{width:100%;height:44px;border:0;border-radius:7px;padding:0 12px;color:#222;margin-bottom:8px}.al-newsletter button{height:44px;border:0;border-radius:7px;background:#17130f;color:#fff;width:100%}
.al-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 20px}.al-faq details{background:#fff;border:1px solid #e5d9c9;border-radius:9px;padding:0 16px}.al-faq summary{cursor:pointer;list-style:none;padding:15px 0;font-size:.78rem;font-weight:500;display:flex;justify-content:space-between;gap:12px}.al-faq summary:after{content:'+';color:#a16f28;font-size:1.1rem}.al-faq details[open] summary:after{content:'−'}.al-faq details p{font-size:.75rem;color:#766b61;line-height:1.65;padding:0 0 15px}
.al-cta{position:relative;min-height:255px;display:flex;align-items:center;color:#fff;overflow:hidden;background:#111}.al-cta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;opacity:.6}.al-cta:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,15,13,.32),rgba(17,15,13,.93) 52%)}.al-cta-grid{position:relative;z-index:2;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center}.al-cta-copy{grid-column:2}.al-cta h2{font-family:'Cormorant Garamond',serif;font-size:2.4rem;font-weight:500}.al-cta p{color:#ded5cb;margin:8px 0 20px}.al-cta-actions{display:flex;gap:10px;flex-wrap:wrap}.al-whatsapp{border:1px solid rgba(255,255,255,.36);color:#fff;background:rgba(0,0,0,.25)}
.al-footer{background:#f8f2e8;color:#423b34;border-top:1px solid #e5d8c5}.al-brandstrip{border-bottom:1px solid #e5d8c5;padding:23px 0}.al-brandstrip-inner{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 42px;font-family:'Cormorant Garamond',serif;color:#9a8770;font-size:.95rem;letter-spacing:.1em}.al-footer-main{padding:46px 0 32px;display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:34px}.al-footer-logo{width:170px;height:auto}.al-footer h3{font-size:.69rem;letter-spacing:.12em;text-transform:uppercase;color:#9a6b27;margin-bottom:13px}.al-footer li,.al-footer p,.al-footer a{font-size:.76rem;color:#766b60;line-height:1.85}.al-footer a:hover{color:#9a6b27}.al-footer-social{display:flex;gap:8px;margin-top:15px}.al-footer-social a{width:32px;height:32px;border:1px solid #d8cab7;border-radius:50%;display:grid;place-items:center}.al-footer-bottom{border-top:1px solid #e5d8c5;padding:17px 0 22px;font-size:.66rem;color:#8b7f72;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.al-mobile-bar{display:none}
@media(max-width:1180px){.al-nav{display:none}.al-book-top{display:none}.al-menu-btn{display:grid}.al-hero-grid{grid-template-columns:1fr}.al-hero-copy{order:2;padding:40px 30px 46px}.al-hero-media{min-height:500px;order:1}.al-hero-note{display:none}.al-quick-grid{grid-template-columns:repeat(3,1fr)}.al-quick-card:nth-child(3){border-right:0}.al-quick-card:nth-child(-n+3){border-bottom:1px solid #eadfce}.al-fleet-grid{grid-template-columns:repeat(3,1fr)}.al-blog-grid{grid-template-columns:repeat(2,1fr)}.al-newsletter{min-height:270px}.al-footer-main{grid-template-columns:repeat(3,1fr)}.al-drawer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.al-container{width:min(100% - 30px,1420px)}.al-header-inner{height:74px;width:calc(100% - 28px)}.al-logo img{height:61px}.al-phone{display:none}.al-hero{padding-top:74px}.al-hero-grid{display:block}.al-hero-media{min-height:330px}.al-hero-copy{padding:32px 20px 36px}.al-hero h1{font-size:2.8rem}.al-hero-lead{font-size:.93rem}.al-hero-badges{gap:8px}.al-hero-badge{display:block;text-align:center;font-size:.64rem}.al-hero-badge img{margin:0 auto 5px}.al-booking-wrap{margin-top:0;padding:15px}.al-booking{width:100%}.al-book-tabs{overflow-x:auto}.al-book-fields{grid-template-columns:1fr 1fr}.al-book-field{border-bottom:1px solid #ece2d4}.al-book-submit{grid-column:1/-1;height:50px}.al-quick{padding-top:24px}.al-quick-grid{grid-template-columns:repeat(2,1fr)}.al-quick-card{border-bottom:1px solid #eadfce!important}.al-quick-card:nth-child(even){border-right:0}.al-section{padding:54px 0}.al-section-head{align-items:start;flex-direction:column}.al-fleet-grid{grid-template-columns:repeat(2,1fr)}.al-night{min-height:390px}.al-night-content{padding:50px 0}.al-night h2{font-size:3rem}.al-why-grid{grid-template-columns:1fr}.al-why-media{min-height:330px}.al-service-grid{grid-template-columns:1fr 1fr}.al-steps{grid-template-columns:1fr 1fr}.al-review-grid{grid-template-columns:1fr}.al-blog-grid{grid-template-columns:1fr 1fr}.al-faq-grid{grid-template-columns:1fr}.al-cta-grid{grid-template-columns:1fr}.al-cta-copy{grid-column:1;padding:44px 0}.al-cta:after{background:rgba(17,15,13,.75)}.al-footer-main{grid-template-columns:1fr 1fr}.al-mobile-bar{display:grid;position:fixed;z-index:60;bottom:0;left:0;right:0;grid-template-columns:repeat(4,1fr);background:#17130f;color:#fff;border-top:1px solid #3a2c1b;padding:max(8px,env(safe-area-inset-bottom)) 7px 8px}.al-mobile-bar a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.58rem;color:#e9d3a8}.al-mobile-bar svg{width:18px;height:18px}.al-footer{padding-bottom:70px}.al-drawer-grid{grid-template-columns:1fr;padding:20px 0;max-height:70vh;overflow:auto}}
@media(max-width:560px){.al-hero-media{min-height:275px}.al-hero-copy{padding:28px 18px 34px}.al-hero h1{font-size:2.55rem;line-height:.9}.al-hero-actions .al-btn{width:100%}.al-hero-badges{grid-template-columns:repeat(3,1fr)}.al-book-fields{grid-template-columns:1fr}.al-book-submit{grid-column:auto}.al-quick-card{min-height:144px}.al-quick-card img{width:58px;height:58px}.al-fleet-grid,.al-service-grid,.al-blog-grid,.al-review-cards,.al-benefits,.al-steps{grid-template-columns:1fr}.al-vehicle-img{height:210px}.al-night h2{font-size:2.45rem}.al-why-copy{padding:0}.al-footer-main{grid-template-columns:1fr}.al-footer-bottom{display:block}.al-footer-bottom span{display:block;margin-top:4px}}
html,body{background:var(--al-cream)!important;color:var(--al-ink)}
header.al-header[data-header],header.al-header[data-header].is-scrolled{background:rgba(251,248,242,.96)!important;border-bottom-color:rgba(184,132,47,.16)!important;color:var(--al-ink)!important;backdrop-filter:blur(14px)}

/* ============================================================
   V3 — ALIGNEMENT MAQUETTE DESKTOP + MOBILE (1.23.2)
   Les règles ci-dessous surchargent la V2 sans casser les pages
   internes ni le back-office.
   ============================================================ */
:root{
  --al-cream:#f6f0e7;
  --al-ivory:#fbf7f0;
  --al-paper:#fffdf9;
  --al-ink:#15120f;
  --al-soft:#5f574f;
  --al-gold:#b9822b;
  --al-gold2:#d9b56c;
  --al-line:#e7dccb;
  --al-shadow:0 14px 38px rgba(70,48,22,.11);
}
html{font-size:16px}
body{font-family:'Jost',ui-sans-serif,system-ui,sans-serif;font-weight:400;background:var(--al-cream)!important;color:var(--al-ink)!important}
.al-home{font-family:'Jost',ui-sans-serif,system-ui,sans-serif;background:var(--al-cream)}
.al-home h1,.al-home h2,.al-home h3,.al-home .al-title,.al-home .al-serif,
.al-quick-card strong,.al-vehicle-name,.al-night h2,.al-service-body h3,.al-post h3,
.al-newsletter h3,.al-cta h2{font-family:'Playfair Display','Times New Roman',serif}
.al-container{width:min(1380px,calc(100% - 64px))}
.al-section{padding:68px 0}
.al-eyebrow{font-size:.66rem;font-weight:500;letter-spacing:.34em;color:#99681f}
.al-title{font-size:clamp(2rem,3.05vw,3.25rem);line-height:1.02;font-weight:600;letter-spacing:-.025em}
.al-copy{font-size:.88rem;line-height:1.65;color:#655d54}
.al-btn{min-height:46px;padding:0 25px;border-radius:8px;font-size:.76rem;font-weight:500;letter-spacing:.015em}

/* Header compact comme sur la maquette */
.al-header-inner{width:min(1450px,calc(100% - 52px));height:74px;gap:22px}
.al-logo img{height:60px}
.al-nav{gap:22px}
.al-nav a{font-size:.70rem;font-weight:500;padding:27px 0 22px}
.al-phone{padding:11px 15px;font-size:.72rem}
.al-book-top{padding:11px 16px;border-radius:8px;font-size:.70rem}

/* Hero : composition desktop, 45/55, texte plus compact */
.al-hero{padding-top:74px;background:#fbf8f2}
.al-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,44%) minmax(0,56%);
  grid-template-rows:auto auto auto;
  grid-template-areas:
    "copy media"
    "actions media"
    "badges media";
  min-height:548px;
  background:#fbf8f2;
}
.al-hero-copy{grid-area:copy;display:block;padding:74px 34px 0 max(40px,calc((100vw - 1380px)/2));background:linear-gradient(90deg,#fbf8f2 0%,#fbf8f2 90%,rgba(251,248,242,.30) 100%);z-index:3}
.al-hero h1{font-size:clamp(3.35rem,4.25vw,4.75rem);line-height:.96;font-weight:600;letter-spacing:-.044em;margin:17px 0 17px;max-width:690px}
.al-hero-lead{max-width:610px;font-size:.94rem;line-height:1.55;color:#5d554d;margin:0}
.al-hero-actions{grid-area:actions;align-self:start;display:flex;gap:12px;flex-wrap:wrap;margin:25px 34px 0 max(40px,calc((100vw - 1380px)/2));z-index:3}
.al-hero-actions .al-btn{min-width:190px}
.al-hero-badges{grid-area:badges;align-self:start;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:610px;margin:26px 34px 54px max(40px,calc((100vw - 1380px)/2));padding:0;border:0;z-index:3}
.al-hero-badge{gap:9px;font-size:.70rem;line-height:1.25;color:#39332e}
.al-hero-badge img{width:38px;height:38px}
.al-hero-media{grid-area:media;position:relative;min-height:548px;overflow:hidden}
.al-hero-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%}
.al-hero-media:after{background:linear-gradient(90deg,rgba(251,248,242,.55),rgba(251,248,242,.08) 18%,transparent 34%),linear-gradient(0deg,rgba(12,10,8,.08),transparent 38%)}
.al-hero-note{right:8.5%;top:12%;max-width:250px;font-size:1.9rem;line-height:1.10;transform:rotate(-5deg);font-family:'Playfair Display',serif;font-weight:500}
.al-hero-location{position:absolute;z-index:3;right:28px;bottom:22px;padding:9px 15px 9px 32px;border-radius:999px;background:rgba(18,15,12,.83);color:#fff;font-size:.66rem;font-weight:500;backdrop-filter:blur(6px)}
.al-hero-location:before{content:'●';position:absolute;left:14px;color:#fff;font-size:.55rem}
.al-hero-trust{display:none}

/* Réservation plus fine et parfaitement alignée */
.al-booking-wrap{margin-top:-22px}
.al-booking{width:min(1325px,calc(100% - 64px));border-radius:12px;box-shadow:0 10px 30px rgba(50,34,16,.12)}
.al-book-tabs{height:42px}
.al-book-tabs span{padding:13px 22px 11px;font-size:.68rem;font-weight:500}
.al-book-fields{grid-template-columns:1.3fr 1.3fr .86fr .72fr .72fr 180px}
.al-book-field{padding:13px 15px}
.al-book-field label{font-size:.55rem;letter-spacing:.10em;margin-bottom:4px}
.al-book-field input,.al-book-field select{font-size:.76rem}
.al-book-submit{margin:8px;min-width:0;font-size:.72rem;border-radius:7px}

/* Services icônes : plus petits et moins hauts */
.al-quick{padding:34px 0 12px}
.al-quick-grid{border-radius:13px}
.al-quick-card{min-height:135px;padding:16px 10px 13px}
.al-quick-card img{width:58px;height:58px;margin-bottom:2px}
.al-quick-card strong{font-size:.98rem;line-height:1.12;font-weight:600}
.al-quick-card span{font-size:.61rem;margin-top:3px}

/* Flotte = cartes plus basses comme la maquette */
.al-section-head{margin-bottom:22px}
.al-filters{margin-bottom:16px}
.al-filter{padding:7px 13px;font-size:.62rem}
.al-fleet-grid{gap:11px}
.al-vehicle{border-radius:11px}
.al-vehicle-img{height:152px}
.al-vehicle-body{padding:12px 13px 13px}
.al-vehicle-name{font-size:.96rem;line-height:1.12}
.al-vehicle-meta{font-size:.60rem;margin:6px 0;gap:8px}
.al-price{font-size:.58rem}.al-price strong{font-size:1.28rem}
.al-vehicle-footer .al-link{font-size:.58rem}

/* Bande Paris nocturne */
.al-night{min-height:342px}
.al-night-content{max-width:650px;padding:48px 0}
.al-night h2{font-size:3.7rem;line-height:.95;font-weight:500}
.al-night p{font-size:.84rem;line-height:1.6;margin:12px 0 18px}
.al-night-points{gap:16px;margin-bottom:20px}.al-night-points span{font-size:.65rem}

/* Section Pourquoi */
.al-why-grid{grid-template-columns:1.05fr .95fr;gap:34px}
.al-why-media{min-height:395px;border-radius:12px}
.al-why-copy{padding:10px 14px}
.al-benefits{gap:16px 20px;margin:22px 0 24px}
.al-benefit{grid-template-columns:40px 1fr;gap:10px}.al-benefit img{width:38px;height:38px}.al-benefit strong{font-size:.75rem}.al-benefit span{font-size:.65rem}

/* Services détails */
.al-services{background:#fbf7f0}
.al-service-grid{grid-template-columns:repeat(6,1fr);gap:11px}
.al-service{border-radius:10px}
.al-service-media{height:138px}
.al-service-body{padding:12px}
.al-service-body h3{font-size:.91rem;line-height:1.12}
.al-service-body p{font-size:.61rem;line-height:1.45;margin:5px 0 10px}
.al-service-body .al-link{font-size:.56rem}

/* Étapes */
.al-steps{gap:14px;margin-top:30px}
.al-step{padding-left:54px}.al-step-num{width:40px;height:40px;font-size:1.15rem}.al-step strong{font-size:.74rem}.al-step span{font-size:.63rem}

/* Avis */
.al-reviews .al-section{padding:58px 0}
.al-review-grid{gap:34px}
.al-platforms{gap:22px;margin-top:18px}.al-platform{font-size:.68rem}.al-platform strong{font-size:.90rem}
.al-review-card{padding:17px;border-radius:10px}.al-review-card p{font-size:.70rem;line-height:1.55}.al-review-card footer{margin-top:12px;padding-top:10px}.al-review-card footer strong{font-size:.68rem}

/* Blog / newsletter */
.al-blog-grid{gap:12px}
.al-post,.al-newsletter{border-radius:10px}.al-post img{height:155px}.al-post-body{padding:13px}.al-post h3{font-size:1.02rem;line-height:1.12}.al-post time{font-size:.58rem}
.al-newsletter{padding:22px}.al-newsletter h3{font-size:1.45rem}.al-newsletter p{font-size:.66rem}

/* FAQ */
.al-faq-grid{gap:8px 14px}.al-faq details{border-radius:7px;padding:0 13px}.al-faq summary{padding:12px 0;font-size:.68rem}.al-faq details p{font-size:.66rem;padding-bottom:12px}

/* CTA et footer */
.al-cta{min-height:220px}.al-cta h2{font-size:2rem}.al-cta p{font-size:.80rem;margin:6px 0 16px}
.al-brandstrip{padding:17px 0}.al-brandstrip-inner{font-size:.78rem;gap:10px 32px}
.al-footer-main{padding:34px 0 26px;gap:28px}.al-footer-logo{width:145px}.al-footer h3{font-size:.61rem}.al-footer li,.al-footer p,.al-footer a{font-size:.67rem;line-height:1.72}.al-footer-bottom{font-size:.59rem;padding:13px 0 16px}

/* TABLETTE */
@media (max-width:1180px){
  .al-container{width:min(100% - 38px,1380px)}
  .al-header-inner{height:70px;width:calc(100% - 36px)}
  .al-logo img{height:57px}
  .al-hero{padding-top:70px}
  .al-hero-grid{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"copy" "media" "actions" "badges" "trust";min-height:0}
  .al-hero-copy{padding:42px 28px 24px;background:#fbf8f2}
  .al-hero h1{font-size:3.3rem;max-width:700px}
  .al-hero-media{min-height:440px}
  .al-hero-actions{margin:22px 28px 0}
  .al-hero-badges{margin:24px 28px 38px;max-width:650px}
  .al-hero-note{display:none}
  .al-booking{width:calc(100% - 38px)}
  .al-quick-grid{grid-template-columns:repeat(3,1fr)}
  .al-service-grid{grid-template-columns:repeat(3,1fr)}
}

/* MOBILE = fidèle à la maquette mobile validée */
@media (max-width:860px){
  html{font-size:16px}
  .al-header{background:#fbf8f2!important}
  .al-header-inner{height:72px;width:calc(100% - 28px);justify-content:center;position:relative}
  .al-logo img{height:58px}
  .al-head-actions{position:absolute;right:0}.al-menu-btn{display:grid;width:40px;height:40px}.al-phone,.al-book-top{display:none}
  .al-hero{padding-top:72px}
  .al-hero-grid{display:grid;grid-template-columns:1fr;grid-template-areas:"copy" "media" "actions" "badges" "trust";background:#fbf8f2}
  .al-hero-copy{grid-area:copy;padding:25px 18px 17px;text-align:center;background:#fbf8f2}
  .al-eyebrow{font-size:.54rem;letter-spacing:.30em}
  .al-hero h1{font-size:2.20rem;line-height:1.03;letter-spacing:-.035em;margin:11px auto 10px;max-width:350px}
  .al-hero-lead{font-size:.76rem;line-height:1.48;max-width:335px;margin:0 auto;color:#5c544c}
  .al-hero-media{grid-area:media;min-height:280px;margin:0 0 0;overflow:hidden}
  .al-hero-media>img{position:absolute;object-position:center 55%}
  .al-hero-media:after{background:linear-gradient(180deg,rgba(251,248,242,.12),transparent 20%),linear-gradient(0deg,rgba(20,15,10,.08),transparent 45%)}
  .al-hero-location{display:none}
  .al-hero-actions{grid-area:actions;margin:14px 18px 0;display:grid;grid-template-columns:1fr;gap:8px}
  .al-hero-actions .al-btn{width:100%;min-height:44px;min-width:0;font-size:.70rem}
  .al-hero-badges{grid-area:badges;margin:20px 16px 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;max-width:none}
  .al-hero-badge{display:block;text-align:center;font-size:.58rem;line-height:1.2;padding:0 3px}
  .al-hero-badge img{width:34px;height:34px;margin:0 auto 4px}
  .al-hero-trust{grid-area:trust;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:19px 16px 21px;padding-top:14px;border-top:1px solid #eadfce}
  .al-hero-trust>div{display:flex;justify-content:center;align-items:center;gap:5px;min-width:0}.al-hero-trust strong{font-size:1.1rem;color:#b57b25}.al-hero-trust span{display:block;min-width:0}.al-hero-trust b{display:block;font-size:.56rem;line-height:1.2}.al-hero-trust small{display:block;font-size:.49rem;color:#776c61;margin-top:2px}

  .al-booking-wrap{display:none}
  .al-quick{padding:12px 0 0}.al-quick-grid{grid-template-columns:repeat(2,1fr);gap:9px;background:transparent;border:0;overflow:visible}.al-quick-card{min-height:116px;border:1px solid #e7dccb!important;border-radius:10px;background:#fffaf4;padding:11px 8px}.al-quick-card img{width:48px;height:48px}.al-quick-card strong{font-size:.82rem}.al-quick-card span{font-size:.55rem}
  .al-section{padding:46px 0}.al-container{width:calc(100% - 28px)}
  .al-title{font-size:1.86rem;line-height:1.06}.al-copy{font-size:.75rem;line-height:1.58}
  .al-section-head{gap:10px;margin-bottom:18px}.al-section-head-right{display:none}
  .al-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.al-filter{flex:0 0 auto;font-size:.57rem;padding:7px 11px}
  .al-fleet-grid{grid-template-columns:1fr 1fr;gap:9px}.al-vehicle-img{height:128px}.al-vehicle-body{padding:10px}.al-vehicle-name{font-size:.78rem}.al-vehicle-meta{display:block;font-size:.54rem;line-height:1.5}.al-price strong{font-size:1.05rem}.al-vehicle-footer .al-link{display:none}
  .al-night{min-height:360px}.al-night-bg{object-position:58% center}.al-night:after{background:linear-gradient(90deg,rgba(9,8,7,.88),rgba(9,8,7,.50) 70%,rgba(9,8,7,.15))}.al-night-content{padding:38px 0;max-width:82%}.al-night h2{font-size:2.45rem}.al-night p{font-size:.72rem}.al-night-points{gap:9px}.al-night-points span{font-size:.58rem}
  .al-why-grid{grid-template-columns:1fr;gap:21px}.al-why-media{min-height:255px}.al-why-copy{padding:0}.al-benefits{grid-template-columns:1fr 1fr;gap:14px}.al-benefit{grid-template-columns:34px 1fr}.al-benefit img{width:32px;height:32px}.al-benefit strong{font-size:.66rem}.al-benefit span{font-size:.58rem}
  .al-service-grid{grid-template-columns:1fr 1fr;gap:9px}.al-service-media{height:120px}.al-service-body{padding:10px}.al-service-body h3{font-size:.78rem}.al-service-body p{font-size:.56rem}
  .al-steps{grid-template-columns:1fr 1fr;gap:20px 10px}.al-step{padding-left:44px}.al-step-num{width:34px;height:34px;font-size:.95rem}.al-step strong{font-size:.66rem}.al-step span{font-size:.57rem}
  .al-review-grid{grid-template-columns:1fr;gap:24px}.al-platforms{justify-content:space-between;gap:8px}.al-platform{font-size:.58rem}.al-review-cards{grid-template-columns:1fr}.al-review-card{padding:15px}
  .al-blog-grid{grid-template-columns:1fr}.al-post img{height:178px}.al-newsletter{min-height:210px}
  .al-faq-grid{grid-template-columns:1fr}.al-faq summary{font-size:.64rem}
  .al-cta{min-height:260px}.al-cta-grid{grid-template-columns:1fr}.al-cta-copy{grid-column:1;padding:35px 0}.al-cta h2{font-size:1.75rem}.al-cta p{font-size:.70rem}.al-cta-actions .al-btn{width:100%}
  .al-brandstrip{display:none}.al-footer-main{grid-template-columns:1fr 1fr;gap:24px 18px;padding:30px 0 24px}.al-footer-main>div:first-child{grid-column:1/-1}.al-footer-logo{width:132px}.al-footer li,.al-footer p,.al-footer a{font-size:.63rem}.al-footer-bottom{display:block;font-size:.56rem}.al-footer-bottom span{display:block;margin-top:4px}
}

@media (max-width:560px){
  .al-hero h1{font-size:2.02rem}.al-hero-media{min-height:250px}.al-hero-lead{font-size:.73rem}
  .al-fleet-grid{grid-template-columns:1fr 1fr}.al-vehicle-img{height:112px}
  .al-service-grid{grid-template-columns:1fr 1fr}.al-service-media{height:108px}
  .al-benefits{grid-template-columns:1fr 1fr}
  .al-steps{grid-template-columns:1fr 1fr}
}
.al-lang{display:inline-flex;align-items:center;gap:4px;font-size:.65rem;color:#211d19;white-space:nowrap}.al-lang b{font-weight:500}
@media(max-width:1180px){.al-hero-copy,.al-hero-media,.al-hero-actions,.al-hero-badges,.al-hero-trust{order:0}.al-lang{display:none}}

/* ============================================================
   v1.23.3 — harmonisation globale crème / texte / cartes
   Les pages internes héritaient encore de l'ancien thème sombre.
   ============================================================ */
:root{
  --al-page:#f5efe5;
  --al-surface:#fffdf9;
  --al-surface-2:#fbf7f0;
  --al-title:#1a1714;
  --al-text:#514940;
  --al-muted:#7c7063;
  --al-border:#e4d6c3;
  --al-gold:#a8752c;
  --al-gold-2:#c89a4d;
}
html,body{background:var(--al-page)!important;color:var(--al-title)!important}
main{background:var(--al-page);color:var(--al-title)}
main > section:not(.al-night):not(.al-reviews):not(.al-cta),
main > div:not(.al-home){color:var(--al-title)}

/* Corrige les anciennes classes prévues pour fond noir. */
main [class~="text-cream"],
main [class*="text-cream/"]{color:var(--al-text)!important}
main .display{color:var(--al-title)}
main .label{color:var(--al-muted)}
main .text-muted{color:var(--al-muted)!important}
main .text-gold{color:var(--al-gold)!important}
main .border-line{border-color:var(--al-border)!important}
main .divide-line>:not([hidden])~:not([hidden]){border-color:var(--al-border)!important}

/* Exceptions : blocs volontairement sombres / visuels. */
.al-night,.al-reviews,.al-cta{color:#fff!important}
.al-night .al-title,.al-reviews .al-title,.al-cta .al-title{color:#fff!important}
.al-night [class*="text-cream"],.al-reviews [class*="text-cream"],.al-cta [class*="text-cream"]{color:#f6efe6!important}
.al-landing-hero,.al-landing-hero .display,.al-landing-hero [class*="text-cream"]{color:#fff!important}
.al-landing-hero .label{color:#e3c382!important}

/* Page headers intérieurs — même langage que la maquette. */
.al-page-head{padding:136px 0 58px;background:linear-gradient(180deg,#fbf7ef 0%,#f5efe5 100%);border-bottom:1px solid var(--al-border)}
.al-page-head .al-page-head-inner{width:min(1400px,calc(100% - 48px));margin:auto}
.al-page-head .al-page-kicker{font-size:.67rem;letter-spacing:.18em;text-transform:uppercase;color:var(--al-gold);font-weight:600}
.al-page-head h1{margin-top:8px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:clamp(2.25rem,4vw,4.15rem);line-height:1.02;font-weight:600;letter-spacing:-.025em;color:var(--al-title)}
.al-page-head p{margin-top:14px;max-width:760px;color:#6f6459;font-size:1rem;line-height:1.75}

/* Anciens composants réutilisés sur toutes les pages. */
.card{background:var(--al-surface)!important;border:1px solid var(--al-border)!important;border-radius:14px!important;color:var(--al-title)!important;box-shadow:0 8px 26px rgba(70,49,25,.045);overflow:hidden}
.card:hover{border-color:#d3b482!important;box-shadow:0 16px 38px rgba(70,49,25,.09)}
.btn-ghost{border-color:#cbb28d!important;color:var(--al-title)!important;background:#fffaf3!important;border-radius:9px}
.btn-ghost:hover{border-color:var(--al-gold)!important;background:#fff!important;color:#81591e!important}
.field{color:var(--al-title)!important;border-bottom-color:#d9cbb8!important;background:transparent!important}
.field::placeholder{color:#94887c!important}
.field:focus{border-color:var(--al-gold)!important}
select.field option{color:var(--al-title);background:#fff}

/* Typographie éditoriale. */
main .display{font-family:'Playfair Display','Cormorant Garamond',serif!important;font-weight:600!important;letter-spacing:-.01em!important;text-transform:none!important}
main h1.display{letter-spacing:-.025em!important}
main h2.display{line-height:1.1}
main p,main li,main dd{color:var(--al-text)}
main a{transition:.2s ease}

/* Cartes flotte : mêmes proportions / matières que la home validée. */
.al-catalog-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.al-catalog-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e5d9c9;border-radius:14px;overflow:hidden;min-width:0;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.al-catalog-card:hover{transform:translateY(-4px);border-color:#d5bd97;box-shadow:0 16px 38px rgba(70,49,25,.10)}
.al-catalog-media{display:block;height:178px;overflow:hidden;background:#eee3d4}
.al-catalog-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.al-catalog-card:hover .al-catalog-media img{transform:scale(1.035)}
.al-catalog-body{display:flex;flex:1;flex-direction:column;padding:16px}
.al-catalog-kicker{font-size:.61rem;letter-spacing:.13em;text-transform:uppercase;color:#9a7a49}
.al-catalog-title{margin-top:4px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.12rem;line-height:1.08;font-weight:600;color:#211c18}
.al-catalog-copy{margin-top:8px;font-size:.72rem;line-height:1.58;color:#786d62;flex:1}
.al-catalog-meta{display:flex;gap:11px;flex-wrap:wrap;margin-top:10px;font-size:.66rem;color:#776b60}
.al-catalog-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid #eee4d7}
.al-catalog-price{font-size:.61rem;color:#7c7063}.al-catalog-price strong{display:block;font-family:'Cormorant Garamond',serif;color:#9f6d24;font-size:1.55rem;line-height:1}
.al-catalog-link{font-size:.68rem;font-weight:600;color:#9b6d25}

/* Cartes événements / services — copie du rythme visuel de la maquette. */
.al-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.al-event-card{background:#fff;border:1px solid #e5d9c9;border-radius:15px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.al-event-card:hover{transform:translateY(-4px);border-color:#d5bd97;box-shadow:0 16px 38px rgba(70,49,25,.10)}
.al-event-media{display:block;height:220px;overflow:hidden;background:#eee3d4}
.al-event-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.al-event-card:hover .al-event-media img{transform:scale(1.03)}
.al-event-body{padding:19px}.al-event-title{font-family:'Playfair Display','Cormorant Garamond',serif;font-weight:600;font-size:1.38rem;line-height:1.1;color:#211c18}.al-event-tag{display:block;margin-top:5px;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#a8752c}.al-event-copy{margin-top:9px;color:#766b61;font-size:.76rem;line-height:1.65}.al-event-link{display:inline-block;margin-top:13px;color:#9b6d25;font-size:.69rem;font-weight:600}

/* Pages détail : images plus premium et panneaux clairs. */
.al-detail-image{border:1px solid var(--al-border)!important;border-radius:14px;overflow:hidden;box-shadow:0 16px 38px rgba(70,49,25,.07)}
.al-detail-stats{border-color:var(--al-border)!important}
.al-chip{border:1px solid #dfd0bc;border-radius:999px;padding:7px 11px;background:#fff8ef;color:#6f6459!important}

/* Contenu riche / FAQ / blog. */
.al-richtext{color:var(--al-text)!important}
.al-richtext h2,.al-richtext h3,.al-richtext h4{color:var(--al-title)!important;font-family:'Playfair Display','Cormorant Garamond',serif}
.al-richtext a{color:var(--al-gold)!important}
.al-richtext table{background:#fff;border-radius:10px;overflow:hidden}
.al-richtext th{background:#f4eadc;color:#2a241e}
.al-richtext td,.al-richtext th{border-color:#e3d4c0!important}
main details summary{color:var(--al-title)!important}

@media(max-width:1180px){.al-catalog-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:980px){.al-catalog-grid{grid-template-columns:repeat(2,1fr)}.al-event-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){
  .al-page-head{padding:100px 0 38px}.al-page-head .al-page-head-inner{width:calc(100% - 30px)}.al-page-head h1{font-size:2.2rem}.al-page-head p{font-size:.9rem;line-height:1.6}
  .al-catalog-grid,.al-event-grid{grid-template-columns:1fr}.al-catalog-media{height:210px}.al-event-media{height:210px}
  .card{border-radius:12px!important}
}

/* === 1.23.4 — pages secondaires, formulaire, blog et contenus éditoriaux === */
.al-section{padding:76px 0;background:var(--al-bg)}
.al-section-soft{background:#f1e8dc}
.al-container{width:min(1400px,calc(100% - 48px));margin-inline:auto}
.al-section-heading{max-width:760px;margin:0 auto 34px;text-align:center}.al-section-heading .al-kicker,.al-kicker{font-size:.67rem;letter-spacing:.18em;text-transform:uppercase;color:var(--al-gold);font-weight:700}.al-section-heading h2{margin-top:7px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.06;color:var(--al-title);font-weight:600;letter-spacing:-.025em}
.al-editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.al-editorial-card{background:#fff;border:1px solid #e6dacb;border-radius:15px;overflow:hidden;transition:.25s ease}.al-editorial-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(68,47,23,.09);border-color:#d7bd97}.al-editorial-media{display:block;height:235px;overflow:hidden;background:#eee3d4}.al-editorial-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.al-editorial-card:hover img{transform:scale(1.035)}.al-editorial-body{padding:20px 20px 22px}.al-editorial-date{font-size:.62rem!important;text-transform:uppercase;letter-spacing:.13em;color:#9a7846!important}.al-editorial-body h2{margin-top:7px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.38rem;line-height:1.12;font-weight:600;color:#211c18}.al-editorial-body h2 a{color:inherit}.al-editorial-body>p:not(.al-editorial-date){margin-top:10px;font-size:.78rem;line-height:1.7;color:#74695f!important}.al-text-link{display:inline-flex;gap:7px;margin-top:15px;font-size:.7rem;font-weight:700;color:#986820!important}.al-pagination{margin-top:36px}.al-pagination nav>div:first-child{display:none}.al-pagination nav>div:last-child{display:flex;justify-content:center}.al-pagination nav span,.al-pagination nav a{border-color:#dfd0bd!important;background:#fffaf4!important;color:#50453b!important}.al-pagination nav span[aria-current="page"] span{background:#1d1916!important;color:#fff!important;border-color:#1d1916!important}
.al-empty-state{text-align:center;border:1px solid #e2d5c4;background:#fffaf4;border-radius:16px;padding:60px 30px}.al-empty-state h2{margin-top:8px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:2rem;color:#221d19}.al-empty-state p:last-child{margin-top:10px;color:#786d62!important}
.al-booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px;align-items:start}.al-booking-card,.al-contact-card{background:#fff;border:1px solid #e4d7c6;border-radius:17px;padding:32px;box-shadow:0 14px 38px rgba(66,46,24,.055)}.al-form-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}.al-form-step{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#1e1a17;color:#d8b16f;font:700 .68rem/1 sans-serif;letter-spacing:.08em}.al-form-heading h2,.al-contact-card h2,.al-contact-aside h2{margin-top:3px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.65rem;line-height:1.08;color:#211c18;font-weight:600}.al-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.al-span-2{grid-column:span 2}.al-field-group label{display:block;margin-bottom:7px;font-size:.67rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#5f5449}.al-input{width:100%;border:1px solid #dfd3c4;border-radius:10px;background:#fdfaf5;color:#261f1a;padding:13px 14px;font-size:.86rem;outline:none;transition:.2s}.al-input:focus{border-color:#b88b43;background:#fff;box-shadow:0 0 0 3px rgba(184,139,67,.10)}.al-textarea{resize:vertical;min-height:118px}.al-form-divider{height:1px;background:#eee4d7;margin:30px 0}.al-consent{display:flex;align-items:flex-start;gap:10px;margin-top:21px;font-size:.72rem;line-height:1.55;color:#75695f}.al-consent input{margin-top:3px;accent-color:#b8893d}.al-consent a{color:#96671f!important;text-decoration:underline}.al-booking-submit{width:100%;margin-top:21px}.al-form-reassurance{text-align:center;margin-top:10px;font-size:.65rem!important;color:#8a7e72!important}.al-booking-aside{display:grid;gap:18px;position:sticky;top:110px}.al-booking-aside-card{border-radius:17px;padding:28px}.al-booking-dark-card{background:#1e1a17;color:#f8f1e8}.al-booking-dark-card .al-kicker{color:#d7b270}.al-booking-dark-card h2{margin-top:8px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.75rem;line-height:1.08;color:#fff}.al-booking-dark-card ul{display:grid;gap:12px;margin-top:24px}.al-booking-dark-card li{display:flex;gap:10px;font-size:.76rem;line-height:1.5;color:#e9dfd2!important}.al-booking-dark-card li span{color:#d7b270}
.al-rate-card{background:#fff;border:1px solid #e4d7c6;border-radius:17px;padding:24px;overflow:hidden}.al-rate-head h2{margin-top:5px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.5rem;color:#211c18}.al-rate-head>p:last-child{margin-top:7px;font-size:.72rem!important;color:#7d7166!important}.al-rate-scroll{overflow-x:auto;margin-top:20px}.al-rate-table{width:100%;min-width:520px;border-collapse:collapse;font-size:.75rem}.al-rate-table th{padding:10px;border-bottom:1px solid #dfd2c1;text-align:left;color:#9a6c29;font-size:.63rem;letter-spacing:.08em;text-transform:uppercase}.al-rate-table td{padding:12px 10px;border-bottom:1px solid #eee5da;color:#5f5449}.al-rate-table td strong{display:block;color:#241f1b;font-family:'Cormorant Garamond',serif;font-size:1.2rem}.al-rate-table td small{display:block;margin-top:3px;color:#8c8074}.al-rate-note{margin:14px 0;font-size:.67rem!important;color:#817468!important;line-height:1.55}
.al-alert{border-radius:12px;padding:15px 18px;margin-bottom:20px;font-size:.78rem;line-height:1.55}.al-alert-error{background:#fff1ef;border:1px solid #e9b9b0;color:#8c2e24}.al-alert ul{margin-top:6px;padding-left:18px;list-style:disc}
.al-about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.al-about-copy h2{margin-top:8px;font-family:'Playfair Display','Cormorant Garamond',serif;font-size:clamp(2.2rem,4vw,4rem);line-height:1.02;color:#211c18;font-weight:600;letter-spacing:-.03em}.al-about-copy>p:not(.al-kicker){margin-top:18px;font-size:.93rem;line-height:1.8;color:#6f645a!important}.al-about-copy .btn{margin-top:25px}.al-stat-panel{display:grid;grid-template-columns:repeat(2,1fr);background:#1f1a17;border-radius:18px;padding:10px}.al-stat-box{min-height:170px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px solid rgba(214,180,124,.2);margin:-.5px}.al-stat-box strong{font-family:'Cormorant Garamond',serif;font-size:3rem;line-height:1;color:#fff}.al-stat-box strong em{font-style:normal;color:#d1aa6b}.al-stat-box span{margin-top:9px;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:#d6c9ba}
.al-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.al-review-card{background:#fff;border:1px solid #e4d7c5;border-radius:15px;padding:25px}.al-review-card .al-stars{color:#b98a3f;letter-spacing:.08em}.al-review-card>p{margin-top:13px;font-size:.82rem;line-height:1.7;color:#685e55!important}.al-review-card footer{display:flex;flex-direction:column;margin-top:18px;padding-top:15px;border-top:1px solid #eee3d6}.al-review-card footer strong{font-family:'Playfair Display','Cormorant Garamond',serif;color:#251f1a}.al-review-card footer span{margin-top:3px;font-size:.63rem;letter-spacing:.08em;text-transform:uppercase;color:#9a7d52}
.al-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px}.al-contact-card>.al-kicker{margin-bottom:4px}.al-contact-card>h2{margin-bottom:24px}.al-contact-aside{background:#1f1a17;color:#fff;border-radius:17px;padding:32px;align-self:start}.al-contact-aside .al-kicker{color:#d5ae6d}.al-contact-aside h2{margin-top:7px;color:#fff;font-size:2rem}.al-contact-list{display:grid;gap:0;margin:24px 0}.al-contact-list>div{padding:16px 0;border-top:1px solid rgba(255,255,255,.12)}.al-contact-list>div>span{display:block;font-size:.59rem;text-transform:uppercase;letter-spacing:.13em;color:#c8a66e}.al-contact-list a,.al-contact-list p{display:block;margin-top:5px;color:#f6eee5!important;font-size:.85rem;line-height:1.55}
.al-legal-card{max-width:980px;margin:auto;background:#fff;border:1px solid #e3d5c3;border-radius:17px;padding:clamp(24px,4vw,52px);box-shadow:0 12px 34px rgba(67,46,23,.04)}.al-legal-card h2{font-size:1.65rem;margin-top:32px}.al-legal-card h3{font-size:1.25rem;margin-top:25px}.al-legal-card p,.al-legal-card li{font-size:.88rem!important;line-height:1.8;color:#6c6157!important}.al-legal-card ul,.al-legal-card ol{padding-left:20px;margin:12px 0}.al-legal-card a{text-decoration:underline}

@media(max-width:1024px){.al-editorial-grid{grid-template-columns:repeat(2,1fr)}.al-booking-layout,.al-contact-grid,.al-about-grid{grid-template-columns:1fr}.al-booking-aside{position:static;grid-template-columns:1fr 1fr}.al-review-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.al-section{padding:48px 0}.al-container{width:calc(100% - 30px)}.al-editorial-grid,.al-review-grid{grid-template-columns:1fr}.al-editorial-media{height:220px}.al-booking-card,.al-contact-card,.al-contact-aside{padding:22px;border-radius:14px}.al-form-grid{grid-template-columns:1fr;gap:14px}.al-span-2{grid-column:auto}.al-booking-aside{grid-template-columns:1fr}.al-form-heading{align-items:flex-start}.al-form-heading h2{font-size:1.35rem}.al-stat-panel{grid-template-columns:1fr 1fr}.al-stat-box{min-height:125px}.al-stat-box strong{font-size:2.35rem}.al-about-copy h2{font-size:2.35rem}.al-contact-aside h2{font-size:1.75rem}.al-legal-card{padding:22px}}

/* ================================================================
   Blog premium 1.24.0 — index, long format, sidebar & FAQ
   ================================================================ */
.al-blog-premium{background:#f6f0e6;padding-top:54px}.al-blog-feature{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);background:#fffaf1;border:1px solid rgba(139,100,43,.18);box-shadow:0 22px 60px rgba(55,40,20,.08);overflow:hidden}.al-blog-feature-media{min-height:520px}.al-blog-feature-media img{width:100%;height:100%;object-fit:cover}.al-blog-feature-copy{padding:clamp(42px,5vw,76px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.al-blog-feature-copy h2{font-family:'Playfair Display',serif;font-size:clamp(34px,3.1vw,52px);line-height:1.08;color:#17130f;margin:14px 0 18px}.al-blog-feature-copy p{font-size:17px;line-height:1.8;color:#675c50;max-width:620px}.al-blog-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#8a7660;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.al-blog-meta span+span,.al-blog-meta time+span{border-left:1px solid rgba(139,100,43,.25);padding-left:12px}.al-blog-feature-copy .al-blog-meta{margin:22px 0 28px}.al-blog-head{margin-top:86px}.al-blog-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.al-blog-card{background:#fffaf1;border:1px solid rgba(139,100,43,.16);overflow:hidden;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.al-blog-card:hover{transform:translateY(-5px);border-color:rgba(181,138,58,.45);box-shadow:0 22px 48px rgba(55,40,20,.09)}.al-blog-card-media{display:block;aspect-ratio:16/10;overflow:hidden}.al-blog-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.al-blog-card:hover .al-blog-card-media img{transform:scale(1.035)}.al-blog-card-body{padding:26px 26px 30px}.al-blog-card-body h2{font-family:'Playfair Display',serif;font-size:24px;line-height:1.24;color:#17130f;margin:13px 0}.al-blog-card-body p{color:#726658;line-height:1.72;font-size:14px;margin-bottom:18px}.al-pagination{margin-top:48px}.al-pagination nav{display:flex;justify-content:center}.al-pagination span,.al-pagination a{color:#5e5247}

.al-article-hero{padding:150px 0 62px;background:#f6f0e6}.al-article-hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:70px;align-items:center}.al-article-hero-copy h1{font-family:'Playfair Display',serif;font-size:clamp(44px,4.3vw,68px);line-height:1.03;color:#17130f;margin:18px 0 22px;letter-spacing:-.025em}.al-article-hero-copy>p{font-size:18px;line-height:1.76;color:#665b4f;max-width:700px}.al-article-hero-copy .al-blog-meta{margin-top:26px}.al-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:12px;color:#8c7c6b;margin-bottom:26px}.al-breadcrumb a:hover{color:#9b6d25}.al-article-hero-media{aspect-ratio:16/11;overflow:hidden;border-radius:220px 220px 24px 24px;box-shadow:0 26px 70px rgba(53,39,23,.15)}.al-article-hero-media img{width:100%;height:100%;object-fit:cover}.al-article-section{background:#fbf7ef;padding-top:72px}.al-article-layout{display:grid;grid-template-columns:minmax(0,820px) minmax(300px,360px);gap:72px;justify-content:center;align-items:start}.al-article-main{min-width:0}.al-share-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid rgba(133,101,54,.18);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.al-share-row>span{color:#907f6c;margin-right:5px}.al-share-row a{padding:8px 11px;border:1px solid rgba(133,101,54,.2);color:#5f5245}.al-share-row a:hover{border-color:#b58a3a;color:#9b6d25}.al-article-richtext{font-size:17px;line-height:1.86;color:#4f463d;margin-top:34px}.al-article-richtext>p{margin:0 0 23px}.al-article-richtext .al-lead{font-family:'Playfair Display',serif;font-size:24px;line-height:1.55;color:#2a241e}.al-article-richtext h2{font-family:'Playfair Display',serif;font-size:34px;line-height:1.2;color:#17130f;margin:54px 0 20px}.al-article-richtext h3{font-family:'Playfair Display',serif;font-size:26px;color:#17130f;margin:38px 0 16px}.al-article-richtext ul,.al-article-richtext ol{margin:20px 0 26px;padding-left:24px}.al-article-richtext li{margin:9px 0}.al-article-richtext a{color:#9b6d25;text-decoration:underline;text-decoration-color:rgba(155,109,37,.35);text-underline-offset:3px}.al-article-richtext a:hover{color:#6f4a16}.al-article-richtext .al-inline-cta{padding:22px 24px;border-left:3px solid #b58a3a;background:#f2e8d8;color:#554a3e}.al-article-faq{margin-top:72px;padding-top:52px;border-top:1px solid rgba(133,101,54,.18)}.al-article-faq h2,.al-related-articles h2{font-family:'Playfair Display',serif;font-size:36px;color:#17130f;margin:8px 0 24px}.al-faq-list{border-top:1px solid rgba(133,101,54,.2)}.al-faq-list details{border-bottom:1px solid rgba(133,101,54,.2);padding:20px 0}.al-faq-list summary{display:flex;justify-content:space-between;gap:24px;cursor:pointer;list-style:none;font-size:17px;font-weight:500;color:#2a241e}.al-faq-list summary::-webkit-details-marker{display:none}.al-faq-list summary span{color:#b58a3a;font-size:24px;line-height:1}.al-faq-list details[open] summary span{transform:rotate(45deg)}.al-faq-list p{padding:14px 36px 0 0;color:#6d6154;line-height:1.75}.al-related-articles{margin-top:72px}.al-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.al-related-card{background:#fffaf1;border:1px solid rgba(133,101,54,.16);overflow:hidden}.al-related-card img{width:100%;aspect-ratio:16/10;object-fit:cover}.al-related-card span{display:block;padding:16px;font-family:'Playfair Display',serif;color:#231d18;font-size:17px;line-height:1.35}

.al-blog-sidebar{position:sticky;top:112px;display:grid;gap:22px}.al-sidebar-booking{background:#17130f;color:#f8f0e4;overflow:hidden;box-shadow:0 20px 52px rgba(36,27,18,.14)}.al-sidebar-booking-image{height:210px;overflow:hidden}.al-sidebar-booking-image img{width:100%;height:100%;object-fit:cover}.al-sidebar-booking-body{padding:28px}.al-sidebar-booking-body h2{font-family:'Playfair Display',serif;font-size:30px;line-height:1.12;margin:8px 0 12px}.al-sidebar-booking-body p{font-size:14px;line-height:1.7;color:#d7cdbf;margin-bottom:20px}.al-sidebar-booking-body .al-btn{width:100%}.al-sidebar-phone{display:block;text-align:center;color:#d7b05f;margin-top:17px;font-weight:600}.al-sidebar-panel{background:#fffaf1;border:1px solid rgba(133,101,54,.16);padding:28px}.al-sidebar-panel h3{font-family:'Playfair Display',serif;color:#17130f;font-size:25px;margin:7px 0 18px}.al-sidebar-links{display:grid}.al-sidebar-links a{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(133,101,54,.14);color:#5b5045;font-size:14px}.al-sidebar-links a:hover{color:#9b6d25}.al-sidebar-links b{color:#b58a3a}.al-sidebar-vehicles{display:grid;gap:13px;margin-bottom:18px}.al-sidebar-vehicles a{display:grid;grid-template-columns:82px 1fr;gap:13px;align-items:center}.al-sidebar-vehicles img{width:82px;height:62px;object-fit:cover}.al-sidebar-vehicles strong{display:block;color:#29221c;font-size:14px;line-height:1.2}.al-sidebar-vehicles small{display:block;color:#92816e;margin-top:4px}.al-sidebar-contact{padding:30px;background:#efe4d2;border:1px solid rgba(133,101,54,.2)}.al-sidebar-contact h3{font-family:'Playfair Display',serif;font-size:26px;color:#17130f;margin-bottom:10px}.al-sidebar-contact p{color:#6c5f52;line-height:1.65;margin-bottom:18px}

@media (max-width:1100px){.al-blog-feature{grid-template-columns:1fr}.al-blog-feature-media{min-height:420px}.al-blog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.al-article-hero-grid{grid-template-columns:1fr;gap:38px}.al-article-hero-media{max-width:760px;width:100%;margin:auto}.al-article-layout{grid-template-columns:minmax(0,1fr) 320px;gap:42px}.al-related-grid{grid-template-columns:1fr 1fr}}
@media (max-width:820px){.al-blog-card-grid{grid-template-columns:1fr}.al-blog-feature-copy{padding:34px 26px 40px}.al-blog-feature-media{min-height:300px}.al-blog-head{margin-top:58px}.al-article-hero{padding-top:118px}.al-article-hero-grid{gap:28px}.al-article-hero-copy h1{font-size:42px}.al-article-hero-copy>p{font-size:16px}.al-article-hero-media{border-radius:120px 120px 18px 18px}.al-article-layout{grid-template-columns:1fr}.al-blog-sidebar{position:static}.al-article-richtext{font-size:16px}.al-article-richtext h2{font-size:30px}.al-related-grid{grid-template-columns:1fr}.al-sidebar-booking{display:grid;grid-template-columns:1fr 1fr}.al-sidebar-booking-image{height:100%;min-height:260px}}
@media (max-width:560px){.al-blog-premium{padding-top:34px}.al-blog-feature-media{min-height:240px}.al-blog-feature-copy h2{font-size:32px}.al-blog-card-body{padding:22px}.al-article-hero{padding-top:104px;padding-bottom:38px}.al-article-hero-copy h1{font-size:35px}.al-article-hero-media{aspect-ratio:4/3;border-radius:90px 90px 14px 14px}.al-article-section{padding-top:42px}.al-article-richtext .al-lead{font-size:21px}.al-article-richtext h2{font-size:27px;margin-top:42px}.al-share-row a{font-size:10px}.al-sidebar-booking{grid-template-columns:1fr}.al-sidebar-booking-image{height:220px;min-height:0}.al-sidebar-panel,.al-sidebar-contact,.al-sidebar-booking-body{padding:24px}}


/* Blog SEO navigation & sommaire — 1.28.1 */
.al-blog-themes{display:flex;flex-wrap:wrap;gap:.65rem;margin:0 0 2.5rem;padding:1rem;border:1px solid rgba(126,92,39,.14);background:rgba(255,255,255,.58);border-radius:18px;box-shadow:0 12px 34px rgba(64,45,18,.05)}
.al-blog-themes a{display:inline-flex;align-items:center;gap:.55rem;padding:.72rem 1rem;border-radius:999px;border:1px solid rgba(126,92,39,.15);background:#fffaf2;color:#332a20;font-size:.84rem;font-weight:500;transition:.2s ease}
.al-blog-themes a span{display:inline-flex;min-width:1.55rem;height:1.55rem;padding:0 .42rem;align-items:center;justify-content:center;border-radius:999px;background:#efe3cf;color:#846025;font-size:.72rem}
.al-blog-themes a:hover,.al-blog-themes a.is-active{background:#17130f;color:#f7efe2;border-color:#17130f;transform:translateY(-1px)}
.al-blog-themes a.is-active span{background:#b98a3b;color:#fff}
.al-article-toc{margin:1.5rem 0 2rem;padding:1.45rem 1.5rem;border:1px solid rgba(126,92,39,.17);border-radius:18px;background:linear-gradient(145deg,#fffaf2,#f3e8d7)}
.al-article-toc[hidden]{display:none}
.al-article-toc>strong{display:block;margin:.2rem 0 .9rem;font-family:'Playfair Display',serif;font-size:1.35rem;color:#201a14}
.al-article-toc ol{margin:0;padding-left:1.15rem;display:grid;gap:.5rem}
.al-article-toc li{color:#8d682c}
.al-article-toc li.is-sub{margin-left:1rem;font-size:.92rem}
.al-article-toc a{color:#4a4035;text-decoration:none;line-height:1.45}
.al-article-toc a:hover{color:#9b6d25;text-decoration:underline;text-underline-offset:4px}
.al-article-richtext h2,.al-article-richtext h3{scroll-margin-top:110px}
@media(max-width:700px){.al-blog-themes{flex-wrap:nowrap;overflow-x:auto;padding:.8rem;margin-inline:-.2rem}.al-blog-themes a{flex:0 0 auto}.al-article-toc{padding:1.15rem}}


/* Blog UI polish 1.28.2 */
.al-blog-themes{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 44px;padding:14px 16px;background:#fffaf2;border:1px solid rgba(126,92,39,.16);border-radius:20px;box-shadow:0 12px 34px rgba(64,45,18,.055)}
.al-blog-themes a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:9px 12px 9px 15px;border:1px solid rgba(126,92,39,.17);border-radius:999px;background:#fff;color:#3b3026;font-size:14px;font-weight:500;line-height:1;white-space:nowrap;box-shadow:0 3px 10px rgba(65,47,24,.025);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.al-blog-themes a:hover{transform:translateY(-1px);border-color:rgba(181,138,58,.55);box-shadow:0 7px 18px rgba(65,47,24,.06)}
.al-blog-themes a.is-active,.al-blog-themes a[aria-current="page"]{background:#17130f;color:#fff8ed;border-color:#17130f;box-shadow:0 8px 22px rgba(23,19,15,.14)}
.al-theme-label{display:inline-block;color:inherit}.al-theme-count{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:28px!important;height:28px!important;padding:0 8px!important;border-radius:999px!important;background:#f0e3cf!important;color:#8b6121!important;font-size:12px!important;font-weight:600!important;letter-spacing:0!important}.al-blog-themes a.is-active .al-theme-count,.al-blog-themes a[aria-current="page"] .al-theme-count{background:#b58a3a!important;color:#fff!important}
.al-article-toc{margin:32px 0 38px;padding:22px 24px 23px;border:1px solid rgba(126,92,39,.17);border-radius:20px;background:linear-gradient(145deg,#fffaf2 0%,#f4e9d8 100%);box-shadow:0 10px 28px rgba(64,45,18,.045)}
.al-toc-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:14px;margin-bottom:12px;border-bottom:1px solid rgba(126,92,39,.13)}.al-toc-head>div{min-width:0}.al-toc-head>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#17130f;color:#d9b56c;font-size:17px}.al-article-toc .al-toc-head strong{display:block;margin:3px 0 0;font-family:'Playfair Display',serif;font-size:24px;line-height:1.15;color:#201a14}
.al-article-toc ol{counter-reset:al-toc;margin:0;padding:0;display:grid;gap:0;list-style:none}.al-article-toc li{counter-increment:al-toc;margin:0!important;border-bottom:1px solid rgba(126,92,39,.10)}.al-article-toc li:last-child{border-bottom:0}.al-article-toc li a{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start;padding:10px 0;color:#4a4035;text-decoration:none;line-height:1.5}.al-article-toc li a::before{content:counter(al-toc,decimal-leading-zero);color:#a8782f;font-size:11px;font-weight:600;letter-spacing:.06em;padding-top:3px}.al-article-toc li.is-sub a{padding-left:20px;font-size:14px;color:#6a5d4e}.al-article-toc a:hover{color:#8c5d18}
.al-article-richtext{max-width:100%;overflow-wrap:anywhere}.al-article-richtext img{display:block;max-width:100%;height:auto;margin:30px auto;border-radius:16px}.al-article-richtext blockquote{margin:30px 0;padding:20px 24px;border-left:3px solid #b58a3a;background:#f3eadc;color:#4d4338;font-family:'Playfair Display',serif;font-size:21px;line-height:1.55}.al-article-richtext table{width:100%;border-collapse:collapse;margin:28px 0;background:#fffaf2;border:1px solid rgba(126,92,39,.16)}.al-article-richtext th,.al-article-richtext td{padding:12px 14px;border-bottom:1px solid rgba(126,92,39,.13);text-align:left;vertical-align:top}.al-article-richtext th{background:#efe3cf;color:#3d3124;font-weight:600}.al-article-richtext hr{border:0;border-top:1px solid rgba(126,92,39,.16);margin:42px 0}
@media (max-width:820px){.al-blog-themes{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:10px 12px;margin:0 -4px 34px;scrollbar-width:none}.al-blog-themes::-webkit-scrollbar{display:none}.al-blog-themes a{flex:0 0 auto;scroll-snap-align:start;min-height:42px;font-size:13px}.al-article-toc{padding:18px 18px 20px;margin:24px 0 30px}.al-article-toc .al-toc-head strong{font-size:21px}}
@media (max-width:560px){.al-theme-count{min-width:25px!important;height:25px!important;font-size:11px!important}.al-article-toc li a{grid-template-columns:27px 1fr;font-size:14px}.al-article-toc li.is-sub a{padding-left:10px;font-size:13px}.al-article-richtext table{display:block;overflow-x:auto;white-space:nowrap}}

/* ===== SOURCE: reservation.css ===== */
/* Allo Limousines — Reservation page isolated styles v1.28.3
   Loaded only on /reservation to prevent regressions from global theme changes. */

.al-booking-page{background:#f7f0e6!important;color:#211b16;padding:72px 0 96px!important;overflow:clip}
.al-booking-page *{box-sizing:border-box}
.al-booking-page .al-container{width:min(1240px,calc(100% - 48px));margin-inline:auto}
.al-booking-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 360px!important;gap:32px!important;align-items:start!important}
.al-booking-main{min-width:0}
.al-booking-card{background:#fffdf9!important;border:1px solid #e5d7c4!important;border-radius:24px!important;padding:38px!important;box-shadow:0 24px 60px rgba(68,47,24,.08)!important;color:#2c241d!important;overflow:hidden}

.al-form-heading{display:flex!important;align-items:flex-start!important;gap:16px!important;margin:0 0 24px!important}
.al-form-step{flex:0 0 42px;width:42px!important;height:42px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#1e1915!important;color:#d6ad6c!important;font-size:.68rem!important;font-weight:700!important;letter-spacing:.08em!important}
.al-form-heading .al-kicker{margin:0 0 4px!important;color:#a1712e!important;font-size:.66rem!important;line-height:1.2!important;letter-spacing:.16em!important;text-transform:uppercase!important;font-weight:700!important}
.al-form-heading h2{margin:0!important;color:#221b16!important;font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;font-size:clamp(1.55rem,2vw,2rem)!important;line-height:1.12!important;font-weight:600!important}
.al-form-hint{margin:7px 0 0!important;color:#786c60!important;font-size:.78rem!important;line-height:1.55!important}
.al-form-divider{height:1px!important;background:#eee3d5!important;margin:34px 0!important}

.al-event-choice-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 14px!important}
.al-event-choice{appearance:none!important;display:block!important;position:relative!important;width:100%!important;min-height:116px!important;text-align:left!important;padding:18px!important;border:1px solid #dfd0bd!important;border-radius:16px!important;background:#fffaf3!important;color:#30271f!important;cursor:pointer!important;transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease!important}
.al-event-choice:hover{transform:translateY(-2px)!important;border-color:#b88843!important;box-shadow:0 10px 28px rgba(71,49,24,.09)!important}
.al-event-choice.is-selected{border-color:#a87734!important;background:#f5e7d3!important;box-shadow:inset 0 0 0 1px #a87734,0 12px 28px rgba(71,49,24,.08)!important}
.al-event-choice-index{display:block!important;color:#a97834!important;font-size:.58rem!important;letter-spacing:.14em!important;font-weight:700!important}
.al-event-choice strong{display:block!important;margin:7px 0 5px!important;font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;font-size:1.06rem!important;line-height:1.15!important;color:#2b231c!important}
.al-event-choice small{display:block!important;color:#7c6e61!important;font-size:.66rem!important;line-height:1.45!important}
.al-select-fallback{margin-top:8px!important}

.al-booking-vehicle-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px!important}
.al-booking-vehicle-card{appearance:none!important;position:relative!important;display:grid!important;grid-template-columns:120px minmax(0,1fr) 28px!important;gap:13px!important;align-items:center!important;width:100%!important;min-width:0!important;text-align:left!important;padding:10px!important;border:1px solid #dfd1bf!important;border-radius:16px!important;background:#fffaf4!important;color:#2c241d!important;cursor:pointer!important;overflow:hidden!important;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease!important}
.al-booking-vehicle-card:hover{transform:translateY(-2px)!important;border-color:#b3823d!important;box-shadow:0 11px 27px rgba(66,46,23,.09)!important}
.al-booking-vehicle-card.is-selected{border-color:#a87734!important;background:#f6e9d7!important;box-shadow:inset 0 0 0 1px #a87734!important}
.al-booking-vehicle-card[hidden]{display:none!important}
.al-booking-vehicle-media{position:relative!important;display:block!important;width:100%!important;height:86px!important;border-radius:11px!important;overflow:hidden!important;background:#e8ddd0!important}
.al-booking-vehicle-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
.al-recommended-badge{display:none;position:absolute!important;left:6px!important;bottom:6px!important;padding:4px 7px!important;border-radius:999px!important;background:rgba(29,24,20,.92)!important;color:#fff!important;font-style:normal!important;font-size:.5rem!important;line-height:1!important;letter-spacing:.04em!important}
.al-booking-vehicle-card.is-recommended .al-recommended-badge{display:inline-block!important}
.al-booking-vehicle-info{min-width:0!important;display:block!important}
.al-booking-vehicle-info strong{display:block!important;font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;font-size:.98rem!important;line-height:1.18!important;color:#2a221b!important;white-space:normal!important}
.al-booking-vehicle-info small{display:block!important;margin:4px 0 6px!important;font-size:.59rem!important;line-height:1.45!important;color:#786b60!important;white-space:normal!important}
.al-booking-vehicle-info b{display:block!important;font-size:.69rem!important;line-height:1.2!important;color:#9b6b2b!important;font-weight:700!important}
.al-booking-check{width:26px!important;height:26px!important;border-radius:50%!important;display:grid!important;place-items:center!important;border:1px solid #d7c7b4!important;color:transparent!important;background:#fff!important;font-size:.7rem!important;font-weight:700!important}
.al-booking-vehicle-card.is-selected .al-booking-check{background:#a77734!important;border-color:#a77734!important;color:#fff!important}
.al-text-button{display:inline-flex!important;margin-top:14px!important;padding:0!important;border:0!important;background:transparent!important;color:#916326!important;font-size:.7rem!important;font-weight:700!important;text-decoration:underline!important;text-underline-offset:4px!important;cursor:pointer!important}

.al-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
.al-span-2{grid-column:span 2!important}
.al-field-group{min-width:0!important}
.al-field-group label{display:block!important;margin:0 0 8px!important;color:#5d5045!important;font-size:.67rem!important;font-weight:700!important;line-height:1.2!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.al-input{display:block!important;width:100%!important;min-height:48px!important;padding:13px 14px!important;border:1px solid #ddcfbd!important;border-radius:11px!important;background:#fdfaf5!important;color:#282019!important;font-family:'Jost',Arial,sans-serif!important;font-size:.88rem!important;line-height:1.3!important;outline:none!important;box-shadow:none!important;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease!important}
.al-input::placeholder{color:#9a8c7e!important;opacity:1!important}
.al-input:focus{border-color:#b48641!important;background:#fff!important;box-shadow:0 0 0 3px rgba(180,134,65,.11)!important}
select.al-input{appearance:auto!important}
.al-textarea{min-height:128px!important;resize:vertical!important;line-height:1.6!important}
.al-consent{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:22px 0 0!important;color:#71655b!important;font-size:.73rem!important;line-height:1.55!important}
.al-consent input{flex:0 0 auto!important;margin-top:3px!important;accent-color:#a87734!important}
.al-consent a{color:#916326!important;text-decoration:underline!important;text-underline-offset:2px!important}
.al-booking-submit{display:flex!important;width:100%!important;min-height:52px!important;margin-top:22px!important;border-radius:10px!important;font-size:.74rem!important;letter-spacing:.12em!important}
.al-form-reassurance{margin:11px 0 0!important;text-align:center!important;color:#85786c!important;font-size:.66rem!important;line-height:1.45!important}

.al-alert{margin-bottom:18px!important;padding:16px 18px!important;border-radius:12px!important;font-size:.8rem!important;line-height:1.55!important}
.al-alert-error{border:1px solid #e7b3aa!important;background:#fff1ee!important;color:#8a352a!important}
.al-alert ul{margin:8px 0 0 18px!important}

.al-booking-aside{display:grid!important;gap:18px!important;position:sticky!important;top:112px!important;min-width:0!important}
.al-booking-aside-card{padding:30px!important;border-radius:20px!important;overflow:hidden!important}
.al-booking-dark-card{background:#1d1814!important;color:#f8f0e5!important;box-shadow:0 20px 48px rgba(35,26,18,.13)!important}
.al-booking-dark-card .al-kicker{margin:0!important;color:#d8b170!important}
.al-booking-dark-card h2{margin:9px 0 0!important;color:#fff!important;font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;font-size:1.82rem!important;line-height:1.08!important}
.al-booking-dark-card ul{display:grid!important;gap:13px!important;margin:24px 0 0!important;padding:0!important;list-style:none!important}
.al-booking-dark-card li{display:flex!important;gap:10px!important;margin:0!important;color:#e7dbcd!important;font-size:.78rem!important;line-height:1.45!important}
.al-booking-dark-card li span{color:#d8b170!important;font-weight:700!important}

.al-booking-aside .rate-table,.al-booking-aside table{width:100%!important;max-width:100%!important}
.al-booking-aside table{font-size:.68rem!important}

@media(max-width:1100px){
 .al-booking-layout{grid-template-columns:minmax(0,1fr) 320px!important;gap:24px!important}
 .al-booking-card{padding:30px!important}
 .al-event-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .al-booking-vehicle-grid{grid-template-columns:1fr!important}
}
@media(max-width:900px){
 .al-booking-page{padding:56px 0 78px!important}
 .al-booking-page .al-container{width:min(100% - 32px,760px)!important}
 .al-booking-layout{grid-template-columns:1fr!important}
 .al-booking-aside{position:static!important;grid-template-columns:1fr 1fr!important}
}
@media(max-width:640px){
 .al-booking-page{padding:40px 0 64px!important}
 .al-booking-page .al-container{width:calc(100% - 24px)!important}
 .al-booking-card{padding:22px 16px!important;border-radius:18px!important}
 .al-form-heading{gap:12px!important;margin-bottom:19px!important}
 .al-form-step{width:36px!important;height:36px!important;flex-basis:36px!important;font-size:.62rem!important}
 .al-form-heading h2{font-size:1.38rem!important}
 .al-form-divider{margin:27px 0!important}
 .al-event-choice-grid{grid-template-columns:1fr 1fr!important;gap:9px!important}
 .al-event-choice{min-height:104px!important;padding:14px 12px!important;border-radius:13px!important}
 .al-event-choice strong{font-size:.94rem!important}
 .al-event-choice small{font-size:.58rem!important}
 .al-booking-vehicle-card{grid-template-columns:94px minmax(0,1fr) 24px!important;gap:10px!important;padding:8px!important;border-radius:13px!important}
 .al-booking-vehicle-media{height:72px!important;border-radius:9px!important}
 .al-booking-vehicle-info strong{font-size:.9rem!important}
 .al-booking-vehicle-info small{font-size:.55rem!important}
 .al-form-grid{grid-template-columns:1fr!important;gap:14px!important}
 .al-span-2{grid-column:auto!important}
 .al-input{min-height:46px!important;font-size:.84rem!important}
 .al-booking-aside{grid-template-columns:1fr!important}
 .al-booking-aside-card{padding:24px!important}
}
@media(max-width:390px){
 .al-event-choice-grid{grid-template-columns:1fr!important}
 .al-booking-vehicle-card{grid-template-columns:82px minmax(0,1fr) 22px!important}
 .al-booking-vehicle-media{height:66px!important}
}

/* ===== SOURCE: fleet-premium.css ===== */
/* Allo Limousines 1.29.2 — flotte harmonisée au thème crème/or */
.vehicle-grid-pro{display:grid;gap:18px;grid-template-columns:repeat(1,minmax(0,1fr))}
@media(min-width:640px){.vehicle-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.vehicle-grid-pro.is-home{grid-template-columns:repeat(4,minmax(0,1fr))}.vehicle-grid-pro.is-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}}
.vehicle-card-pro{background:#fff;border:1px solid #e5d9c9;border-radius:16px;overflow:hidden;box-shadow:0 12px 32px rgba(70,49,25,.055);display:flex;flex-direction:column;min-height:100%;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.vehicle-card-pro:hover{transform:translateY(-4px);border-color:#d5bd97;box-shadow:0 18px 40px rgba(70,49,25,.10)}
.vehicle-card-pro__media{position:relative;display:block;overflow:hidden;background:#eee3d4;aspect-ratio:16/10}
.vehicle-card-pro__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.vehicle-card-pro:hover .vehicle-card-pro__media img{transform:scale(1.035)}
.vehicle-card-pro__badge,.vehicle-card-pro__brand{position:absolute;top:12px;padding:7px 10px;border-radius:999px;font-size:.58rem;line-height:1;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(8px)}
.vehicle-card-pro__badge{left:12px;background:rgba(24,20,16,.86);color:#fff8ed;border:1px solid rgba(255,255,255,.18)}
.vehicle-card-pro__brand{right:12px;background:rgba(255,250,242,.94);color:#6d4e22;border:1px solid rgba(181,138,58,.25)}
.vehicle-card-pro__body{padding:17px;display:flex;flex:1;flex-direction:column;gap:10px}
.vehicle-card-pro__title{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.18rem;line-height:1.16;font-weight:600;color:#211c18;margin:0}
.vehicle-card-pro__desc{font-size:.75rem;line-height:1.62;color:#786d62;min-height:3.7rem;margin:0}
.vehicle-card-pro__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;background:#fbf6ee;border:1px solid #eee3d4;border-radius:12px;padding:10px 11px}
.vehicle-card-pro__meta dt{font-size:.57rem;letter-spacing:.12em;text-transform:uppercase;color:#9a7a49;margin-bottom:2px}.vehicle-card-pro__meta dd{font-size:.72rem;color:#50473f;margin:0}
.vehicle-card-pro__price{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:2px}.vehicle-card-pro__price strong{font-family:'Cormorant Garamond',serif;font-size:1.75rem;line-height:1;color:#9f6d24}.vehicle-card-pro__price small{display:block;color:#7c7063;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}.vehicle-card-pro__price .text-muted{color:#817568!important;line-height:1.4}
.vehicle-card-pro__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:2px}.vehicle-card-pro__actions .btn{width:100%;min-height:42px;padding:0 10px!important;border-radius:9px!important;font-size:.62rem!important;letter-spacing:.055em!important;text-transform:none!important;font-weight:600!important}
.vehicle-card-pro__actions .btn-ghost{background:#fffaf2!important;color:#3b3026!important;border:1px solid #d7c4a8!important}.vehicle-card-pro__actions .btn-ghost:hover{background:#f7ecdc!important;color:#8d6327!important;border-color:#b98b49!important}
.vehicle-card-pro__actions .btn-gold{background:linear-gradient(135deg,#8d6427,#c69443 55%,#e3c382)!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 8px 18px rgba(142,102,40,.12)!important}.vehicle-card-pro__actions .btn-gold:hover{filter:brightness(1.03);transform:translateY(-1px)}
.vehicle-detail-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:30px;align-items:start}@media(max-width:1023px){.vehicle-detail-layout{grid-template-columns:1fr}}
.vehicle-detail-copy{display:grid;gap:22px}.vehicle-detail-panel{background:#fff;border:1px solid #e5d9c9;border-radius:18px;padding:24px;box-shadow:0 10px 26px rgba(64,45,18,.04)}
.vehicle-detail-panel h2{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.8rem;line-height:1.1;color:#211c18;margin:0 0 10px}.vehicle-detail-panel p{color:#6f6459;line-height:1.82;font-size:.96rem;margin:0}
.vehicle-links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(max-width:640px){.vehicle-links-grid{grid-template-columns:1fr}}
.vehicle-links-grid a{display:block;padding:14px 15px;border:1px solid #e5d9c9;border-radius:14px;background:#fffaf2;color:#2d261f;font-weight:600}.vehicle-links-grid a:hover{border-color:#caa66c;background:#fff}.vehicle-links-grid a span{display:block;color:#7e7267;font-size:.68rem;line-height:1.5;margin-top:4px;font-weight:400}
.vehicle-book-card{background:#fffaf2;border:1px solid #dcc8aa;border-radius:20px;padding:24px;position:sticky;top:110px;box-shadow:0 16px 36px rgba(64,45,18,.07)}.vehicle-book-card h2{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.75rem;line-height:1.08;margin:0 0 7px;color:#211c18}.vehicle-book-card p{color:#766a5f;line-height:1.65;margin:0}
.vehicle-book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vehicle-book-grid .full{grid-column:1/-1}@media(max-width:640px){.vehicle-book-grid{grid-template-columns:1fr}.vehicle-book-grid .full{grid-column:auto}}
.vehicle-book-card .field,.vehicle-book-card select,.vehicle-book-card textarea{background:#fff;border:1px solid #ddcfbd!important;padding:12px 13px!important;border-radius:10px!important;color:#282019!important;width:100%;min-height:46px}.vehicle-book-card textarea{min-height:104px;resize:vertical}.vehicle-book-card .field::placeholder,.vehicle-book-card textarea::placeholder{color:#9a8c7e!important}.vehicle-book-card .label{color:#69594b!important}
.booking-reco-wrap{margin-top:18px}.booking-reco-wrap h3{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:1.45rem;color:#211c18;margin-bottom:10px}.booking-reco-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:10px}@media(min-width:700px){.booking-reco-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.booking-reco-card{display:flex;gap:10px;border:1px solid #dfd0bd;border-radius:14px;background:#fffaf3;padding:9px;cursor:pointer;transition:.2s;text-align:left}.booking-reco-card:hover,.booking-reco-card.is-selected{border-color:#b88843;background:#f5e7d3;box-shadow:0 8px 20px rgba(71,49,24,.06)}.booking-reco-card img{width:78px;height:68px;object-fit:cover;border-radius:10px;flex:0 0 auto}.booking-reco-card strong{display:block;font-size:.85rem;color:#2b231c}.booking-reco-card span{display:block;font-size:.68rem;color:#776b60;line-height:1.4;margin-top:3px}
@media(max-width:640px){.vehicle-card-pro__actions{grid-template-columns:1fr}.vehicle-card-pro__media{aspect-ratio:4/3}.vehicle-card-pro__desc{min-height:0}}

/* ===== SOURCE: theme-harmonize.css ===== */
/* Allo Limousines 1.29.2 — harmonisation globale crème/or */
:root{--al-cream:#f5efe5;--al-ivory:#fbf8f2;--al-paper:#fffdf9;--al-title:#211c18;--al-text:#645a50;--al-muted:#85796e;--al-gold:#b8842f;--al-gold-deep:#8d6427;--al-line:#e5d8c5}
html,body{background:var(--al-cream)!important;color:var(--al-title)!important}
body{font-family:'Jost',ui-sans-serif,system-ui,sans-serif!important;font-weight:400!important}
main{background:var(--al-cream);color:var(--al-title)}
main section:not(.al-night):not(.al-cta):not(.al-dark):not([class*="dark"]){color:var(--al-title)}
main h1,main h2,main h3,main h4,main h5,main h6{color:var(--al-title)}
main p,main li,main dd{color:var(--al-text)}
main .text-cream,main .text-cream\/80{color:var(--al-title)!important}main .text-muted{color:var(--al-muted)!important}main .text-gold{color:#9b6d25!important}
.card{background:#fff!important;border-color:var(--al-line)!important;color:var(--al-title)!important;border-radius:16px!important;box-shadow:0 10px 28px rgba(64,45,18,.045)}
.card:hover{border-color:#d1b98f!important}
.field{background:#fff!important;color:#2d261f!important;border:1px solid #ddcfbd!important;border-radius:10px!important;padding:12px 13px!important;min-height:46px!important}
.field:focus{border-color:#b48641!important;box-shadow:0 0 0 3px rgba(180,134,65,.10)!important;outline:none!important}.field::placeholder{color:#978a7e!important}.label{color:#77695d!important;font-weight:600!important}
.btn{border-radius:9px!important;letter-spacing:.055em!important;text-transform:none!important;font-weight:600!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease!important}
.btn-gold{background:linear-gradient(135deg,#8d6427,#c69443 55%,#e3c382)!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 9px 20px rgba(142,102,40,.14)!important}.btn-gold:hover{filter:brightness(1.03)!important;transform:translateY(-1px)!important;box-shadow:0 12px 24px rgba(142,102,40,.18)!important}
.btn-ghost{background:#fffaf2!important;color:#3b3026!important;border:1px solid #d7c4a8!important}.btn-ghost:hover{background:#fff!important;color:#8d6327!important;border-color:#b98b49!important;transform:translateY(-1px)!important}
.al-night,.al-night *, .al-cta,.al-cta *{color:#fff}.al-night p,.al-cta p{color:#ddd5ca!important}.al-night .btn-ghost,.al-cta .btn-ghost{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.5)!important}.al-night .btn-ghost:hover,.al-cta .btn-ghost:hover{background:rgba(255,255,255,.08)!important;border-color:#fff!important;color:#fff!important}
/* Anciennes classes sombres restées dans des pages secondaires */
.bg-ink,.bg-ink-soft,.bg-card{background:#fff!important}.border-line{border-color:var(--al-line)!important}.text-white{color:var(--al-title)!important}
/* Le footer et blocs nocturnes gardent leur contraste. */
footer,footer .bg-ink,footer .bg-ink-soft,footer .bg-card{background:#17130f!important}footer,footer *{color:#eee4d6}footer a:hover{color:#d7ae6a!important}
/* Titres et pages internes */
.display{font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;font-weight:600!important;text-transform:none!important;letter-spacing:-.012em!important}.rule::before,.rule::after{background:linear-gradient(90deg,transparent,#b8842f,transparent)!important}
/* Images et cartes régulières */
main img{max-width:100%}.card img{display:block}
/* Responsive : éviter débordements / gros boutons */
@media(max-width:767px){.btn{min-height:44px;padding:.78rem 1rem!important}.al-container{width:calc(100% - 24px)!important}.card{border-radius:14px!important}}

/* ===== SOURCE: site-final.css ===== */
/* Allo Limousines 1.29.3 — correction finale services + cohérence CSS globale */
:root{
  --al-page:#f6f0e6;
  --al-page-soft:#efe5d7;
  --al-surface:#fffdf9;
  --al-surface-2:#fbf7f0;
  --al-ink:#1d1915;
  --al-copy:#64594f;
  --al-muted:#887a6d;
  --al-gold:#b68435;
  --al-gold-deep:#8b6428;
  --al-border:#e3d6c4;
  --al-shadow:0 18px 48px rgba(70,49,25,.075);
}

/* Base globale — élimine les héritages noirs/blancs des anciennes vues */
html,body{background:var(--al-page)!important;color:var(--al-ink)!important}
body{font-family:'Jost',ui-sans-serif,system-ui,sans-serif!important;font-weight:400!important}
main{background:var(--al-page)!important;color:var(--al-ink)!important;overflow:hidden}
main :where(h1,h2,h3,h4,h5,h6){color:var(--al-ink)}
main :where(p,li,dd){color:var(--al-copy)}
main a{color:inherit}
.al-container{width:min(1380px,calc(100% - 48px));margin-inline:auto}
.al-section{background:var(--al-page);padding:72px 0}
.al-section:nth-of-type(even):not(.al-night):not(.al-cta):not(.al-service-luxury-cta){background:var(--al-surface-2)}
.al-eyebrow{color:var(--al-gold-deep)!important;font-size:.69rem;font-weight:700;letter-spacing:.21em;text-transform:uppercase}
.al-title,.display{font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;color:var(--al-ink)!important;text-transform:none!important;letter-spacing:-.02em!important}
.al-copy{color:var(--al-copy)!important}

/* Boutons cohérents sur tout le front */
.btn,.al-btn{border-radius:12px!important;min-height:46px!important;padding:.78rem 1.25rem!important;font-family:'Jost',sans-serif!important;font-size:.78rem!important;font-weight:600!important;letter-spacing:.018em!important;text-transform:none!important;line-height:1.15!important;box-shadow:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important}
.btn-gold,.al-btn-gold{background:linear-gradient(135deg,#8d6427,#bd8840 55%,#d7b875)!important;border:1px solid transparent!important;color:#fff!important;box-shadow:0 10px 22px rgba(141,100,39,.16)!important}
.btn-gold:hover,.al-btn-gold:hover{transform:translateY(-1px);filter:brightness(1.035);box-shadow:0 14px 28px rgba(141,100,39,.21)!important}
.btn-ghost,.al-btn-outline{background:#fffaf3!important;border:1px solid #d4bea0!important;color:#342a21!important}
.btn-ghost:hover,.al-btn-outline:hover{background:#fff!important;border-color:#b68435!important;color:#865d24!important;transform:translateY(-1px)}

/* Formulaires */
.field,main input:not([type=checkbox]):not([type=radio]),main select,main textarea{color:#302821;background:#fff;border-color:#d9cbb8}
.field::placeholder,main input::placeholder,main textarea::placeholder{color:#9a8c7f}
main select option{background:#fff;color:#302821}

/* Cartes génériques */
.card,.al-catalog-card,.al-event-card{background:var(--al-surface)!important;border:1px solid var(--al-border)!important;color:var(--al-ink)!important;box-shadow:0 10px 30px rgba(70,49,25,.045)!important}

/* ========================= PAGES SERVICES ========================= */
.al-service-intro{background:var(--al-page)!important;padding:64px 0 82px}
.al-service-intro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:62px;align-items:center}
.al-service-intro-media{min-height:510px;border-radius:30px 30px 110px 30px;overflow:hidden;background:#e8dccb;box-shadow:var(--al-shadow)}
.al-service-intro-media img{width:100%;height:100%;min-height:510px;object-fit:cover;display:block}
.al-service-intro-copy{max-width:610px}
.al-service-intro-copy h2{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:clamp(2.15rem,3.4vw,3.75rem);line-height:1.04;letter-spacing:-.028em;margin:10px 0 20px;color:var(--al-ink)!important}
.al-service-intro-copy p{font-size:1rem;line-height:1.86;color:var(--al-copy)!important;margin:0 0 16px}
.al-service-intro-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}

.al-service-story{padding:74px 0;background:var(--al-surface-2)}
.al-service-story:nth-of-type(even){background:var(--al-page)}
.al-service-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:68px;align-items:center}
.al-service-story.is-reverse .al-service-story-media{order:2}.al-service-story.is-reverse .al-service-story-copy{order:1}
.al-service-story-media{height:450px;border-radius:26px;overflow:hidden;background:#e8dccb;box-shadow:0 16px 44px rgba(70,49,25,.08)}
.al-service-story-media img{width:100%;height:100%;object-fit:cover;display:block}
.al-service-story-copy{max-width:610px}
.al-story-number{display:block;font-family:'Playfair Display',serif;font-size:1rem;color:var(--al-gold);letter-spacing:.12em;margin-bottom:10px}
.al-service-story-copy h2{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:clamp(2rem,3vw,3.1rem);line-height:1.08;letter-spacing:-.024em;margin:0 0 18px;color:var(--al-ink)!important}
.al-service-story-copy p{font-size:1rem;line-height:1.9;color:var(--al-copy)!important;margin-bottom:22px}
.al-text-link{display:inline-flex;align-items:center;gap:8px;color:#8c6227!important;font-weight:600;font-size:.82rem;border-bottom:1px solid rgba(140,98,39,.35);padding-bottom:4px}

.al-service-fleet{background:var(--al-page)!important}
.al-service-vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.al-service-card-note{font-size:.72rem;color:var(--al-muted)}

/* Cartes flotte sur services : fond clair même si une ancienne feuille sombre est encore présente */
.al-service-fleet .vehicle-card-pro{background:#fffdf9!important;border:1px solid var(--al-border)!important;border-radius:20px!important;box-shadow:0 12px 34px rgba(70,49,25,.06)!important;color:var(--al-ink)!important}
.al-service-fleet .vehicle-card-pro__title{color:var(--al-ink)!important;font-family:'Playfair Display','Cormorant Garamond',serif!important}
.al-service-fleet .vehicle-card-pro__desc{color:var(--al-copy)!important}
.al-service-fleet .vehicle-card-pro__meta{background:#faf5ed!important;border-color:#eadfce!important}
.al-service-fleet .vehicle-card-pro__meta dt{color:#927e6c!important}.al-service-fleet .vehicle-card-pro__meta dd{color:#2b241e!important}
.al-service-fleet .vehicle-card-pro__media{background:#eadfce!important}
.al-service-fleet .vehicle-card-pro__badge{background:rgba(29,25,21,.82)!important;color:#fff4df!important}
.al-service-fleet .vehicle-card-pro__brand{background:rgba(255,253,249,.94)!important;color:#2b241e!important}

/* Bannière premium : exception sombre stricte */
.al-service-luxury-cta{position:relative;min-height:390px;display:flex;align-items:center;overflow:hidden;background:#17130f!important}
.al-service-luxury-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.al-service-luxury-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,13,10,.90),rgba(16,13,10,.66) 58%,rgba(16,13,10,.35))}
.al-service-luxury-content{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;padding:68px 0}
.al-service-luxury-content h2{font-family:'Playfair Display','Cormorant Garamond',serif;font-size:clamp(2.3rem,4vw,4rem);line-height:1.02;color:#fff!important;margin:8px 0 14px}
.al-service-luxury-content p{max-width:760px;color:#e0d7cb!important;line-height:1.78;font-size:.97rem}
.al-service-luxury-content .al-eyebrow{color:#d8b572!important}.al-btn-light{background:rgba(255,255,255,.95)!important;color:#2a231c!important;border:1px solid rgba(255,255,255,.85)!important}
.al-service-luxury-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}

/* FAQ service */
.al-service-faq{background:var(--al-surface-2)!important}
.al-faq-layout{display:grid;grid-template-columns:minmax(260px,.55fr) minmax(0,1fr);gap:70px;align-items:start}
.al-faq-list{border-top:1px solid var(--al-border)}
.al-faq-item{background:transparent!important;border:0!important;border-bottom:1px solid var(--al-border)!important;border-radius:0!important;padding:0!important}
.al-faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-size:1rem;font-weight:600;color:var(--al-ink)!important}
.al-faq-item summary::-webkit-details-marker{display:none}.al-faq-item summary span{color:var(--al-gold);font-size:1.35rem;transition:.2s}.al-faq-item[open] summary span{transform:rotate(45deg)}
.al-faq-answer p{padding:0 34px 20px 0;margin:0;color:var(--al-copy)!important;line-height:1.78}

/* Liens de fin de page service */
.al-service-links{background:var(--al-page)!important}
.al-service-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.al-service-link-grid a{display:block;padding:22px 24px;border:1px solid var(--al-border);border-radius:18px;background:#fffdf9;box-shadow:0 8px 24px rgba(70,49,25,.035);transition:.2s}
.al-service-link-grid a:hover{transform:translateY(-2px);border-color:#c9aa7d}
.al-service-link-grid strong{display:block;font-family:'Playfair Display',serif;font-size:1.22rem;color:var(--al-ink)}
.al-service-link-grid span{display:block;margin-top:7px;font-size:.82rem;line-height:1.55;color:var(--al-muted)}

/* ========================= FIXES TRANSVERSAUX ========================= */
/* Cartes flotte, blog, réservation : aucune zone de texte blanche sur fond crème */
.vehicle-card-pro{background:#fffdf9!important;color:var(--al-ink)!important;border-color:var(--al-border)!important}
.vehicle-card-pro__title{color:var(--al-ink)!important}.vehicle-card-pro__desc{color:var(--al-copy)!important}.vehicle-card-pro__meta dd{color:var(--al-ink)!important}.vehicle-card-pro__meta{background:#faf5ed!important;border-color:#eadfce!important}
.al-blog-index,.al-article-section{background:var(--al-page)!important}
.al-editorial-card,.al-related-card,.al-sidebar-panel{background:#fffdf9!important;border-color:var(--al-border)!important}
.al-article-richtext,.al-article-richtext p,.al-blog-index p{color:var(--al-copy)!important}

/* Section nocturne / CTA / footer restent sombres */
.al-night,.al-cta,footer{background:#17130f!important;color:#fff!important}
.al-night :where(h1,h2,h3,h4,p,span,a),.al-cta :where(h1,h2,h3,h4,p,span,a),footer :where(h1,h2,h3,h4,p,span,a){color:inherit}
.al-night p,.al-cta p,footer p{color:#ddd3c6!important}

/* Empêche les anciens utilitaires de faire déborder les pages */
main .grid{min-width:0}main section{min-width:0}main img{max-width:100%;height:auto}

@media(max-width:1100px){
  .al-service-intro-grid,.al-service-story-grid{grid-template-columns:1fr;gap:34px}
  .al-service-story.is-reverse .al-service-story-media,.al-service-story.is-reverse .al-service-story-copy{order:initial}
  .al-service-intro-media{min-height:420px}.al-service-intro-media img{min-height:420px}
  .al-service-story-media{height:390px}
  .al-service-vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .al-service-luxury-content{grid-template-columns:1fr}.al-service-luxury-actions{justify-content:flex-start}
  .al-faq-layout{grid-template-columns:1fr;gap:30px}
}
@media(max-width:700px){
  .al-container{width:calc(100% - 28px)}
  .al-section,.al-service-intro,.al-service-story{padding:50px 0}
  .al-service-intro-media{min-height:300px;border-radius:20px 20px 60px 20px}.al-service-intro-media img{min-height:300px}
  .al-service-story-media{height:280px;border-radius:18px}
  .al-service-intro-copy h2,.al-service-story-copy h2{font-size:2rem}
  .al-service-intro-copy p,.al-service-story-copy p{font-size:.94rem;line-height:1.75}
  .al-service-intro-actions,.al-service-luxury-actions{display:grid;grid-template-columns:1fr;width:100%}
  .al-service-intro-actions .al-btn,.al-service-luxury-actions .al-btn{width:100%}
  .al-service-vehicle-grid{grid-template-columns:1fr!important}
  .al-service-luxury-cta{min-height:430px}.al-service-luxury-content{padding:52px 0}
  .al-service-luxury-content h2{font-size:2.45rem}
  .al-service-link-grid{grid-template-columns:1fr}
  .al-faq-item summary{font-size:.93rem}
  .btn,.al-btn{width:auto;min-height:44px!important;padding:.76rem 1rem!important}
}

/* ===== SOURCE: faq.css ===== */
/* Allo Limousines 1.29.4 — correctif isolé /faq
   Chargé après le design global pour empêcher les anciennes règles sombres
   et les utilitaires historiques de reprendre le dessus. */

.al-faq-hero{
  padding:148px 0 76px!important;
  background:linear-gradient(135deg,#f7f0e6 0%,#fffaf3 100%)!important;
  border-bottom:1px solid #e6d8c6!important;
  color:#211a14!important;
}
.al-faq-hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr)!important;
  gap:62px!important;
  align-items:center!important;
}
.al-faq-hero h1{
  margin:12px 0 20px!important;
  max-width:900px!important;
  font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;
  font-size:clamp(2.75rem,4.7vw,5.15rem)!important;
  line-height:.99!important;
  letter-spacing:-.042em!important;
  font-weight:600!important;
  color:#211a14!important;
}
.al-faq-hero>*,.al-faq-hero div{min-width:0}
.al-faq-hero p{
  max-width:790px!important;
  margin:0!important;
  color:#695e54!important;
  font-size:1rem!important;
  line-height:1.82!important;
}
.al-faq-hero .al-eyebrow{color:#936728!important}
.al-faq-hero-actions{display:flex!important;flex-wrap:wrap!important;gap:11px!important;margin-top:28px!important}
.al-faq-hero-actions .al-btn{min-width:190px!important}
.al-btn-dark{
  background:#211b16!important;
  border:1px solid #211b16!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(27,21,16,.12)!important;
}
.al-btn-dark:hover{background:#34291f!important;border-color:#34291f!important;transform:translateY(-1px)}

.al-faq-hero-card{
  padding:34px!important;
  border-radius:24px!important;
  background:linear-gradient(145deg,#17130f 0%,#2a2119 100%)!important;
  border:1px solid rgba(203,165,105,.22)!important;
  color:#fff!important;
  box-shadow:0 26px 64px rgba(44,31,18,.17)!important;
}
.al-faq-hero-card>span{
  display:block!important;
  color:#d6b27c!important;
  font-size:.66rem!important;
  font-weight:700!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}
.al-faq-hero-card>strong{
  display:block!important;
  margin:12px 0 14px!important;
  font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;
  font-size:2rem!important;
  line-height:1.08!important;
  font-weight:600!important;
  color:#fff!important;
}
.al-faq-hero-card p{color:rgba(255,255,255,.74)!important;font-size:.86rem!important;line-height:1.75!important}

.al-faq-page{
  padding:78px 0 90px!important;
  background:#f8f3ec!important;
  color:#211a14!important;
}
.al-faq-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 340px!important;
  gap:52px!important;
  align-items:start!important;
}
.al-faq-layout main{background:transparent!important;overflow:visible!important}
.al-faq-intro{
  margin:0 0 28px!important;
  padding:25px 27px!important;
  background:#fffdf9!important;
  border:1px solid #e3d5c3!important;
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(64,46,27,.035)!important;
}
.al-faq-intro,.al-faq-intro :where(p,li){color:#675b51!important}
.al-faq-page-list{display:grid!important;gap:12px!important}
.al-faq-page-list details{
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fffdf9!important;
  border:1px solid #e2d4c1!important;
  border-radius:16px!important;
  box-shadow:0 9px 26px rgba(64,46,27,.035)!important;
  color:#2b241e!important;
}
.al-faq-page-list details:hover{border-color:#d1b78f!important}
.al-faq-page-list summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:66px!important;
  padding:19px 22px!important;
  cursor:pointer!important;
  list-style:none!important;
  font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;
  font-size:1.08rem!important;
  line-height:1.3!important;
  font-weight:600!important;
  color:#2b241e!important;
  background:transparent!important;
}
.al-faq-page-list summary::-webkit-details-marker{display:none!important}
.al-faq-page-list summary::after{content:none!important}
.al-faq-page-list summary span{color:#2b241e!important}
.al-faq-page-list summary b{
  display:grid!important;
  place-items:center!important;
  flex:0 0 30px!important;
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  border:1px solid #d4bd9c!important;
  background:#fffaf3!important;
  color:#996b2f!important;
  font:500 1.05rem/1 Jost,sans-serif!important;
  transition:transform .2s ease,background .2s ease,color .2s ease!important;
}
.al-faq-page-list details[open] summary{border-bottom:1px solid #eee3d5!important}
.al-faq-page-list details[open] summary b{transform:rotate(45deg)!important;background:#a87936!important;color:#fff!important;border-color:#a87936!important}
.al-faq-answer{padding:19px 22px 22px!important;background:#fffdf9!important}
.al-faq-answer p{margin:0!important;color:#6e6257!important;font-size:.92rem!important;line-height:1.82!important}

.al-faq-side{
  position:sticky!important;
  top:112px!important;
  display:grid!important;
  gap:17px!important;
  align-self:start!important;
}
.al-faq-side-card{
  padding:27px!important;
  border:1px solid #dfd1be!important;
  border-radius:18px!important;
  background:#fffdf9!important;
  color:#261f1a!important;
  box-shadow:0 10px 30px rgba(64,46,27,.035)!important;
}
.al-faq-side-card .al-eyebrow{color:#936728!important}
.al-faq-side-card h2,.al-faq-side-card h3{
  margin:8px 0 13px!important;
  font-family:'Playfair Display','Cormorant Garamond',Georgia,serif!important;
  color:#261f1a!important;
  font-weight:600!important;
}
.al-faq-side-card h2{font-size:1.75rem!important;line-height:1.08!important}
.al-faq-side-card h3{font-size:1.45rem!important}
.al-faq-side-card p{margin:0!important;font-size:.8rem!important;line-height:1.72!important;color:#74685e!important}
.al-faq-side-card.is-dark{
  background:linear-gradient(145deg,#181410,#2b221a)!important;
  border-color:#2a2119!important;
  color:#fff!important;
}
.al-faq-side-card.is-dark .al-eyebrow{color:#d6b27c!important}
.al-faq-side-card.is-dark h2{color:#fff!important}
.al-faq-side-card.is-dark p{color:rgba(255,255,255,.73)!important}
.al-faq-side-card .al-btn{width:100%!important;margin-top:18px!important}
.al-faq-side-card>a:not(.al-btn){
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:12px 0!important;
  border-top:1px solid #eee3d5!important;
  color:#5b5047!important;
  font-size:.78rem!important;
  font-weight:500!important;
}
.al-faq-side-card>a:not(.al-btn):hover{color:#8d6227!important}
.al-faq-side-card>a:not(.al-btn) span{color:#a97835!important}

@media(max-width:960px){
  .al-faq-hero{padding:118px 0 58px!important}
  .al-faq-hero-grid,.al-faq-layout{grid-template-columns:1fr!important;gap:34px!important}
  .al-faq-side{position:static!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .al-faq-hero-card{max-width:760px!important}
}
@media(max-width:640px){
  .al-faq-hero{padding:98px 0 44px!important}
  .al-faq-hero-grid{gap:28px!important}
  .al-faq-hero h1{font-size:2.42rem!important;line-height:1.02!important}
  .al-faq-hero p{font-size:.92rem!important;line-height:1.72!important}
  .al-faq-hero-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .al-faq-hero-actions .al-btn{width:100%!important;min-width:0!important}
  .al-faq-hero-card{padding:24px!important;border-radius:18px!important}
  .al-faq-page{padding:50px 0 72px!important}
  .al-faq-layout{gap:28px!important}
  .al-faq-page-list summary{padding:16px!important;font-size:1rem!important;min-height:60px!important}
  .al-faq-answer{padding:15px 16px 18px!important}
  .al-faq-side{grid-template-columns:1fr!important}
  .al-faq-side-card{padding:23px!important}
}

/* ===== SOURCE: home-hero.css ===== */
/* 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;}
}

/* ===== SOURCE: home-light-sections-1318.css ===== */
/* Allo Limousines 1.31.8 — correction ciblée uniquement.
   Ne modifie ni le header, ni le hero, ni le footer, ni la structure générale. */

.home-why-section .home-light-card,
.home-reputation-section .home-light-card{
  background:#fffaf1!important;
  color:#211a15!important;
  border:1px solid rgba(89,64,36,.15)!important;
  box-shadow:0 14px 38px rgba(66,45,23,.065)!important;
}

/* Pourquoi nous choisir : carte gauche claire */
.home-why-card h2,
.home-why-card .text-cream,
.home-why-card strong{
  color:#211a15!important;
}
.home-why-card .text-muted,
.home-why-card p{
  color:#70655b!important;
}
.home-why-card svg{color:#ad7a31!important}

/* Bloc statistiques à droite : retire le fond/overlay noir mais conserve la photo discrète. */
.home-stats-card{
  min-height:100%!important;
  background:linear-gradient(135deg,#fffaf1,#f4eadb)!important;
}
.home-stats-card > img{
  opacity:.16!important;
  filter:saturate(.72) sepia(.10) contrast(.92)!important;
}
.home-stats-card > .absolute.inset-0.bg-gradient-to-r{
  background:linear-gradient(90deg,rgba(255,250,241,.98) 0%,rgba(255,250,241,.93) 58%,rgba(255,250,241,.68) 100%)!important;
}
.home-stats-card .text-cream,
.home-stats-card .display{
  color:#211a15!important;
}
.home-stats-card .text-gold,
.home-stats-card svg{
  color:#ad7a31!important;
}
.home-stats-card .label{
  color:#74685d!important;
}

/* Avis / plateformes / galerie / actualités : plus aucun panneau noir. */
.home-reputation-section .home-light-card h2,
.home-reputation-section .home-light-card .text-cream,
.home-reputation-section .home-light-card strong,
.home-reputation-section .home-light-card li > span:first-child{
  color:#211a15!important;
}
.home-reputation-section .home-light-card .text-muted,
.home-reputation-section .home-light-card blockquote,
.home-reputation-section .home-light-card p,
.home-reputation-section .home-light-card .label{
  color:#70655b!important;
}
.home-reputation-section .home-light-card .text-gold,
.home-reputation-section .home-light-card svg{
  color:#ad7a31!important;
}
.home-reputation-section .home-light-card .border-line,
.home-reputation-section .home-light-card li{
  border-color:rgba(89,64,36,.13)!important;
}
.home-reputation-section .home-light-card .bg-ink-soft{
  background:#eee3d4!important;
}
.home-reputation-section .home-light-card .btn-ghost{
  background:#fff!important;
  color:#211a15!important;
  border-color:rgba(145,99,36,.35)!important;
}
.home-reputation-section .home-light-card .btn-ghost:hover{
  color:#8f6228!important;
  border-color:#b17d34!important;
}

@media(max-width:767px){
  .home-why-section,
  .home-reputation-section{gap:14px!important}
  .home-why-section .home-light-card,
  .home-reputation-section .home-light-card{border-radius:16px!important}
  .home-stats-card > img{opacity:.10!important}
}

/* ===== SOURCE: public-light-1319.css ===== */
/* Allo Limousines 1.31.9 — Normalisation publique crème
   Objectif: éliminer les panneaux noirs hérités de l'ancien thème,
   sans changer la structure, le header, le hero, le footer ni les URLs. */

:root{
  --pl-cream:#f6efe4;
  --pl-ivory:#fffaf2;
  --pl-paper:#fbf6ee;
  --pl-ink:#211a15;
  --pl-copy:#5f554c;
  --pl-muted:#786d63;
  --pl-gold:#ad7930;
  --pl-line:rgba(84,62,38,.15);
  --pl-shadow:0 14px 36px rgba(65,45,24,.065);
}

html,body,main{background:var(--pl-cream)!important;color:var(--pl-ink)!important}

/* ========= En-têtes des pages internes ========= */
.al-public-page-header{
  padding:132px 0 54px!important;
  border-bottom:1px solid var(--pl-line)!important;
  background:
    radial-gradient(circle at 88% 18%,rgba(194,151,80,.11),transparent 24%),
    linear-gradient(180deg,#fffaf2 0%,#f6efe4 100%)!important;
  color:var(--pl-ink)!important;
}
.al-public-page-header__eyebrow{
  margin:0!important;color:var(--pl-gold)!important;
  font-size:.68rem!important;font-weight:700!important;
  letter-spacing:.18em!important;text-transform:uppercase!important;
}
.al-public-page-header__title{
  margin:10px 0 0!important;color:var(--pl-ink)!important;
  font-family:"Playfair Display","Cormorant Garamond",Georgia,serif!important;
  font-size:clamp(2.2rem,4vw,3.5rem)!important;
  line-height:1.04!important;font-weight:600!important;
  letter-spacing:-.03em!important;text-transform:none!important;
}
.al-public-page-header__lead{
  max-width:760px!important;margin:14px 0 0!important;
  color:var(--pl-copy)!important;font-size:1rem!important;line-height:1.72!important;
}

/* ========= Toutes les cartes publiques ========= */
/* La classe historique .card était noire. Elle devient désormais ivoire partout
   dans le contenu public. Les sections photo/nocturnes spécifiques sont exclues. */
main .card:not(.al-booking-dark-card):not(.vehicle-book-card){
  background:var(--pl-ivory)!important;
  color:var(--pl-ink)!important;
  border-color:var(--pl-line)!important;
  box-shadow:var(--pl-shadow)!important;
}
main .card:not(.al-booking-dark-card):not(.vehicle-book-card) :where(h1,h2,h3,h4,h5,h6,strong,dt){
  color:var(--pl-ink)!important;
}
main .card:not(.al-booking-dark-card):not(.vehicle-book-card) :where(p,li,dd,blockquote,small){
  color:var(--pl-copy)!important;
}
main .card:not(.al-booking-dark-card):not(.vehicle-book-card) .label{
  color:var(--pl-muted)!important;
}
main .card:not(.al-booking-dark-card):not(.vehicle-book-card) .text-gold,
main .card:not(.al-booking-dark-card):not(.vehicle-book-card) svg{
  color:var(--pl-gold)!important;
}

/* Neutralise les anciennes classes texte blanc uniquement DANS les cartes claires. */
main .card:not(.al-booking-dark-card):not(.vehicle-book-card) [class*="text-cream"]{
  color:var(--pl-ink)!important;
}
main .card:not(.al-booking-dark-card):not(.vehicle-book-card) [class*="text-muted"]{
  color:var(--pl-muted)!important;
}

/* ========= Anciennes zones de fond sombre non intentionnelles ========= */
main .bg-ink-soft:not(.al-night):not(.al-dark):not(.al-cta-dark),
main .bg-card:not(.al-night):not(.al-dark):not(.al-cta-dark){
  background:var(--pl-paper)!important;
  color:var(--pl-ink)!important;
}

/* Les petits placeholders gris dans les cartes deviennent crème/gris clair. */
main .card .bg-ink-soft{
  background:#eee3d5!important;
}

/* ========= Accueil : Pourquoi choisir / stats / avis ========= */
.home-why-section .home-light-card,
.home-reputation-section .home-light-card,
.home-why-section .card,
.home-reputation-section .card{
  background:var(--pl-ivory)!important;
  color:var(--pl-ink)!important;
  border:1px solid var(--pl-line)!important;
  box-shadow:var(--pl-shadow)!important;
}
.home-why-section :where(h2,h3,strong,[class*="text-cream"]),
.home-reputation-section :where(h2,h3,strong,[class*="text-cream"]){
  color:var(--pl-ink)!important;
}
.home-why-section :where(p,li,blockquote,[class*="text-muted"],.label),
.home-reputation-section :where(p,li,blockquote,[class*="text-muted"],.label){
  color:var(--pl-copy)!important;
}
.home-why-section .text-gold,
.home-reputation-section .text-gold,
.home-why-section svg,
.home-reputation-section svg{
  color:var(--pl-gold)!important;
}
.home-stats-card{
  background:linear-gradient(135deg,#fffaf2,#f1e5d4)!important;
}
.home-stats-card>img{
  opacity:.10!important;
  filter:saturate(.68) sepia(.08) contrast(.90)!important;
}
.home-stats-card>.absolute.inset-0.bg-gradient-to-r{
  background:linear-gradient(90deg,rgba(255,250,242,.99),rgba(255,250,242,.95) 55%,rgba(255,250,242,.78))!important;
}

/* ========= Boutons sur fonds clairs ========= */
main .card .btn-ghost,
.home-why-section .btn-ghost,
.home-reputation-section .btn-ghost{
  background:#fff!important;
  color:var(--pl-ink)!important;
  border-color:rgba(143,98,40,.34)!important;
}
main .card .btn-ghost:hover,
.home-why-section .btn-ghost:hover,
.home-reputation-section .btn-ghost:hover{
  background:#f7ecdc!important;
  color:#8c6028!important;
  border-color:#ad7930!important;
}

/* ========= Formulaires publics ========= */
main form:not(.home-booking-bar) input:not([type="checkbox"]):not([type="radio"]),
main form:not(.home-booking-bar) select,
main form:not(.home-booking-bar) textarea,
main form:not(.home-booking-bar) .field,
main form:not(.home-booking-bar) .al-input{
  background:#fffdf9!important;
  color:#2b231d!important;
  -webkit-text-fill-color:#2b231d!important;
  border-color:#ddcfbd!important;
}
main form:not(.home-booking-bar) input::placeholder,
main form:not(.home-booking-bar) textarea::placeholder{
  color:#9b8d80!important;opacity:1!important;
}
main form:not(.home-booking-bar) label,
main form:not(.home-booking-bar) .label{
  color:#62564b!important;
}

/* ========= Tables / FAQ / contenus longs ========= */
main table{color:var(--pl-ink)}
main thead{background:#f0e5d7!important;color:var(--pl-ink)!important}
main tbody tr{border-color:var(--pl-line)!important}
main details,
main .al-faq-item{
  background:var(--pl-ivory)!important;
  color:var(--pl-ink)!important;
  border-color:var(--pl-line)!important;
}
main details summary,
main .al-faq-question{color:var(--pl-ink)!important}
main details p,
main .al-faq-answer{color:var(--pl-copy)!important}

/* ========= Exceptions intentionnelles ========= */
/* Paris de nuit / CTA photographiques restent sombres si le composant le demande
   explicitement. Le texte y reste clair. */
main :where(.al-night,.al-dark,.al-cta-dark,.al-booking-dark-card,.vehicle-book-card){
  color:#f8f0e5!important;
}
main :where(.al-night,.al-dark,.al-cta-dark,.al-booking-dark-card,.vehicle-book-card) :where(h1,h2,h3,h4,strong){
  color:#fff!important;
}
main :where(.al-night,.al-dark,.al-cta-dark,.al-booking-dark-card,.vehicle-book-card) p{
  color:#e1d7ca!important;
}

/* ========= Responsive ========= */
@media(max-width:767px){
  .al-public-page-header{padding:104px 0 38px!important}
  .al-public-page-header__title{font-size:2.25rem!important}
  .al-public-page-header__lead{font-size:.92rem!important}
  main .card{border-radius:16px!important}
}

/* ===== SOURCE: testimonial-footer-13110.css ===== */
/* Allo Limousines 1.31.10
   Bug: site-final.css appliquait le thème noir à TOUS les éléments <footer>.
   Les cartes d'avis utilisent aussi un <footer> sémantique pour auteur/contexte,
   ce qui rendait "Sophie L. / Mariage" noir avec texte blanc.
   Ce correctif isole les footers internes des contenus publics. */

/* Avis accueil */
main .home-reputation-section blockquote > footer,
main .home-reputation-section .card footer,
main .al-review-card footer,
main blockquote footer{
  background:transparent!important;
  background-color:transparent!important;
  color:#211a15!important;
  border-color:rgba(84,62,38,.15)!important;
  box-shadow:none!important;
}

/* Annule la règle globale `footer :where(...) { color: inherit }` du thème nuit. */
main .home-reputation-section blockquote > footer :where(h1,h2,h3,h4,p,span,a,strong),
main .home-reputation-section .card footer :where(h1,h2,h3,h4,p,span,a,strong),
main .al-review-card footer :where(h1,h2,h3,h4,p,span,a,strong),
main blockquote footer :where(h1,h2,h3,h4,p,span,a,strong){
  color:#211a15!important;
}

/* Auteur / contexte */
main .home-reputation-section blockquote footer .text-cream,
main .home-reputation-section blockquote footer strong,
main .al-review-card footer strong{
  color:#211a15!important;
}
main .home-reputation-section blockquote footer .label,
main .al-review-card footer span{
  color:#786d63!important;
}

/* Étoiles restent or. */
main .home-reputation-section blockquote footer .text-gold,
main .home-reputation-section blockquote footer .text-gold *,
main .al-review-card footer .al-stars{
  color:#ad7930!important;
}

/* Le VRAI footer du site conserve sa propre apparence.
   On ne modifie pas .al-footer. */

/* ===== 1.31.12 — fluidité / anti-FOUC / homogénéité finale ===== */
:root{
  --al-page-max:1440px;
  --al-safe-x:clamp(14px,3vw,40px);
}
html{scrollbar-gutter:stable;overflow-x:hidden;-webkit-text-size-adjust:100%}
body{min-width:320px;overflow-x:hidden;text-rendering:optimizeLegibility}
main{min-width:0;overflow-x:clip}
img,video,svg{max-width:100%}
img{height:auto}
.al-container{width:min(var(--al-page-max),calc(100% - (var(--al-safe-x) * 2)))!important;margin-inline:auto!important}

/* L'ancien effet reveal rendait des sections invisibles jusqu'à l'exécution JS.
   On privilégie désormais un rendu immédiat, stable et sans flash. */
[data-reveal]{opacity:1!important;transform:none!important;visibility:visible!important}

/* Header : dimensions stables dès le premier rendu. */
.al-header{contain:layout style;backface-visibility:hidden}
.al-header-inner{width:min(1460px,calc(100% - 32px));margin-inline:auto;min-width:0}
.al-logo{flex:0 0 auto;min-width:0}.al-logo img{display:block;object-fit:contain}
.al-nav{min-width:0}.al-head-actions{min-width:0;flex:0 0 auto}
.al-drawer{max-height:calc(100dvh - 78px);overflow:auto;overscroll-behavior:contain}

/* Sections et grilles : pas de débordement à cause d'un enfant large. */
main :where(section,article,aside,form,div){min-width:0}
.scroll-x{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.vehicle-grid-pro,.al-blog-grid,.al-service-grid,.al-editorial-grid{min-width:0}

/* Champs homogènes et sans zoom iOS. */
input,select,textarea,button{font:inherit}
input,select,textarea{max-width:100%}
:where(input,select,textarea):focus-visible{outline:2px solid rgba(173,121,48,.72);outline-offset:2px}

/* Les images lazy ne provoquent plus de surlargeur temporaire. */
main img[loading="lazy"]{background:#eee4d7}

/* Footer / barre mobile stables. */
.al-footer{clear:both}.al-footer-main>*{min-width:0}
.al-footer-social a{display:inline-grid;place-items:center;min-width:38px;min-height:38px}
.al-mobile-bar{padding-bottom:max(0px,env(safe-area-inset-bottom))}

@media (max-width:1279px){
  .al-header-inner{width:calc(100% - 28px)!important}
  .al-nav{display:none!important}
  .al-menu-btn{display:inline-grid!important;place-items:center!important;min-width:44px;min-height:44px}
  .al-phone,.al-book-top{white-space:nowrap}
}
@media (max-width:767px){
  :root{--al-safe-x:14px}
  body{padding-bottom:68px}
  input,select,textarea{font-size:16px!important}
  .al-header-inner{width:calc(100% - 22px)!important;gap:10px!important}
  .al-logo img{max-width:142px!important;height:auto!important;max-height:58px!important}
  .al-lang,.al-phone,.al-book-top{display:none!important}
  .al-drawer-grid{grid-template-columns:1fr!important;padding-inline:18px!important}
  .al-mobile-bar{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));left:8px!important;right:8px!important;bottom:8px!important;width:auto!important}
  .al-mobile-bar a{min-width:0!important;min-height:52px!important;font-size:.66rem!important;gap:3px!important}
  .home-event-card{scroll-snap-align:start}
  .vehicle-card-pro,.al-post,.al-service{max-width:100%}
}
@media (max-width:390px){
  .al-logo img{max-width:126px!important}
  .al-menu-btn{min-width:42px!important;min-height:42px!important}
  .al-mobile-bar a{font-size:.61rem!important}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
