/* TrajexCar · Premium 02 · identité historique · 25 septembre 2026
   Couche de présentation commune, chargée après les feuilles existantes. */
.premium-design {
  --p-ink:#18213a; --p-muted:#626b7d; --p-accent:#0000ff;
  --p-line:#e0e4ee; --p-paper:#f7f8fc; --p-soft:#eef0ff;
  --navy:#18213a; --ink:#18213a; --muted:#626b7d; --cyan:#0000ff;
  --blue:#0000ff; --line:#e0e4ee; --soft:#f7f8fc;
  color:var(--p-ink); background:var(--p-paper); font-family:Manrope,Inter,system-ui,sans-serif;
  font-size:14px; line-height:1.6; -webkit-font-smoothing:antialiased;
}
.premium-design *, .premium-design *::before, .premium-design *::after { box-sizing:border-box; }
.premium-design [hidden] { display:none!important; }
.premium-design :is(button,input,select,textarea) { font-family:inherit; }
.premium-design :is(button,a,input,select,textarea):focus-visible { outline:3px solid #0000ff; outline-offset:3px; }
.premium-design :is(.wrap,.tx-home-nav .tx-inner,.tx-home-footer .tx-wrap) { width:min(1120px,calc(100% - 64px)); max-width:1120px; margin-inline:auto; }
.premium-design :is(.nav,.tx-home-nav) { height:68px; background:#fff; color:var(--p-ink); border-bottom:1px solid var(--p-line); box-shadow:none; }
.premium-design .nav { width:100%; padding-inline:max(32px,calc((100% - 1120px)/2)); }
.premium-design .tx-home-nav .tx-inner { padding:0; }
.premium-design .tx-home-nav::after { display:none; }
.premium-design :is(.brand,.tx-home-nav .tx-brand) { font-size:21px; font-weight:800; letter-spacing:-.6px; color:var(--p-ink); gap:9px; }
.premium-design :is(.mark,.tx-home-nav .tx-mark) { width:34px; height:34px; border-radius:50%; border:0; box-shadow:none; background-color:#fff; }
.premium-design :is(.links,.tx-home-nav .tx-links) { gap:22px; }
.premium-design :is(.links a,.tx-home-nav .tx-links a) { color:var(--p-muted); font-size:12px; font-weight:600; }
.premium-design :is(.links a:first-child,.tx-home-nav .tx-links>a:first-child) { background:transparent; color:var(--p-ink); padding:0; border-radius:0; }
.premium-design :is(.nav-cta,.tx-home-nav .tx-nav-cta) { padding:8px 15px!important; border:1px solid var(--p-line); border-radius:7px; background:#fff; }
.premium-design :is(.language-select,.tx-home-nav .tx-language) { border:0; background:transparent; border-radius:0; padding:8px 0; font-size:11px; color:var(--p-muted); box-shadow:none; }
.premium-design :is(.btn,.primary) { min-height:42px; border-radius:7px; padding:10px 17px; font-size:12px; font-weight:700; box-shadow:none; line-height:1.4; }
.premium-design :is(.btn-primary,.primary) { background:var(--p-ink); color:#fff; border:1px solid var(--p-ink); }
.premium-design .btn-ghost { background:transparent; border:1px solid var(--p-line); color:var(--p-ink); }
.premium-design .btn:hover { transform:translateY(-1px); box-shadow:none; }
.premium-design header.hero { min-height:0; height:auto; background:var(--p-paper); padding:118px 0 48px; color:var(--p-ink); }
.premium-design header.hero::before,.premium-design header.hero::after { display:none; }
.premium-design .hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:56px; padding:0; align-items:center; }
.premium-design .hero-copy { max-width:none; padding:0; margin:0; }
.premium-design .hero-copy .eyebrow { padding:0; border:0; border-radius:0; background:transparent; font-size:10px; letter-spacing:.16em; color:var(--p-accent); font-weight:700; }
.premium-design .pulse { width:5px; height:5px; background:var(--p-accent); box-shadow:none; animation:none; }
.premium-design .hero h1 { font-size:clamp(34px,3.8vw,49px); line-height:1.12; letter-spacing:-2px; font-weight:600; color:var(--p-ink); margin:19px 0 17px; max-width:540px; }
.premium-design .hero h1 .gradient { color:var(--p-accent); background:none; -webkit-text-fill-color:var(--p-accent); }
.premium-design .hero .lead { color:var(--p-muted); font-size:14px; line-height:1.75; max-width:450px; margin:0 0 20px; }
.premium-design .hero-actions { gap:12px; margin:0 0 20px; }
.premium-design .hero-actions .btn { padding:9px 14px; min-height:40px; font-size:12px; }
.premium-design .trustline { font-size:10px; color:var(--p-muted); gap:16px; margin:0; flex-wrap:wrap; }
.premium-design .trustline span::before { color:var(--p-accent); }
.premium-design .premium-photo { margin:25px 0 0; height:166px; position:relative; overflow:hidden; border-radius:10px; }
.premium-design .premium-photo img { width:100%; height:100%; object-fit:cover; object-position:center 52%; display:block; }
.premium-design .premium-photo figcaption { position:absolute; bottom:12px; left:12px; background:#fffffff2; border-radius:5px; color:var(--p-ink); font-size:10px; padding:5px 9px; }
.premium-design #finder { width:100%; margin:0; padding:25px; background:#fff; border:1px solid var(--p-line); border-radius:12px; box-shadow:0 12px 36px #152e3508; backdrop-filter:none; }
.premium-design #finder::before { display:none; }
.premium-design #finder .finder-title { margin:0 0 20px; display:block; }
.premium-design #finder .finder-title b { font-size:17px; font-weight:700; letter-spacing:-.45px; }
.premium-design #finder .finder-title>span { display:block; padding:0; margin-top:3px; background:none; color:var(--p-muted); font-size:11px; }
.premium-design #finder .switch { display:flex; gap:4px; margin:0 0 18px; padding:4px; border:0; border-radius:7px; background:var(--p-soft); box-shadow:none; }
.premium-design #finder .switch button { display:flex; flex:1; justify-content:center; align-items:center; min-height:38px; padding:7px 4px; border:0; border-radius:5px; font-size:11px; font-weight:600; color:var(--p-muted); background:transparent; box-shadow:none; }
.premium-design #finder .switch button.active { background:#fff; color:var(--p-ink); box-shadow:0 1px 4px #17343c0b; }
.premium-design #finder .tx-switch-icon { width:20px; height:20px; color:var(--p-accent); background:transparent; box-shadow:none; margin-right:5px; }
.premium-design #finder .tx-switch-icon svg { width:16px; height:16px; }
.premium-design #finder .field { margin:12px 0; padding:0; border:0; background:none; box-shadow:none; }
.premium-design #finder .field label,.premium-design #finder .tx-driver-time span { display:block; font:600 11px/1.4 Manrope,system-ui,sans-serif; color:var(--p-muted); margin:0 0 6px; }
.premium-design #finder .field input,.premium-design #finder .tx-driver-time input { height:45px; min-height:45px; width:100%; padding:10px 12px; border:1px solid var(--p-line); border-radius:6px; background:#fff; color:var(--p-ink); font-size:13px; box-shadow:none; }
.premium-design #finder .field input::placeholder { color:#718087; opacity:1; }
.premium-design #finder .field .ico,.premium-design #finder .field .trail { display:none; }
.premium-design #finder .row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.premium-design #finder .tx-driver-time { margin:12px 0; gap:0; }
.premium-design #finder .tx-seats-plus { width:35px; height:35px; right:5px; bottom:5px; border-radius:4px; background:var(--p-soft); color:var(--p-accent); font-size:21px; }
.premium-design #finder #trip-seats { padding-right:45px; }
.premium-design #finder .search { display:flex; justify-content:space-between; margin-top:17px; width:100%; min-height:44px; background:var(--p-ink); color:#fff; border:0; border-radius:6px; box-shadow:none; font-size:12px; }
.premium-design #finder .search>span:first-child { display:none; }
.premium-design .trip-results { grid-column:1/-1; }
.premium-design section { padding:52px 0; }
.premium-design .quick-links { border-block:1px solid var(--p-line); background:#fff; padding:14px 0; }
.premium-design .quick-link { padding:5px 0; border:0; border-radius:0; background:none; font-size:11px; box-shadow:none; color:var(--p-muted); margin-right:24px; }
.premium-design .quick-link.primary { color:var(--p-accent); }
.premium-design .features { padding:32px 0; background:#fff; }
.premium-design .feature-grid { gap:0; }
.premium-design .feature { padding:4px 26px; border:0; border-right:1px solid var(--p-line); border-radius:0; background:transparent; box-shadow:none; transform:none; }
.premium-design .feature:first-child { padding-left:0; }
.premium-design .feature:last-child { border:0; padding-right:0; }
.premium-design .feature i { width:28px; height:28px; border-radius:5px; background:var(--p-soft); color:var(--p-accent); font-size:15px; margin-bottom:9px; }
.premium-design :is(.feature h3,.step h3,.region h3) { font-size:14px; font-weight:700; letter-spacing:-.2px; }
.premium-design :is(.feature p,.step p,.section-head p,.story-copy p,.safety p) { font-size:12px; line-height:1.8; color:var(--p-muted); }
.premium-design :is(.section-head h2,.story-copy h2,.safety h2,.cta h2) { font-size:30px; line-height:1.2; letter-spacing:-1px; font-weight:600; }
.premium-design .kicker { color:var(--p-accent); font-size:10px; letter-spacing:.13em; }
.premium-design :is(.community,.stats) { background:var(--p-paper); padding:22px 0; }
.premium-design .community-box { padding:18px 22px; border:1px solid var(--p-line); border-radius:8px; background:#fff; box-shadow:none; color:var(--p-ink); }
.premium-design .community-box b { font-size:14px; }
.premium-design .community-box small { font-size:11px; color:var(--p-muted); }
.premium-design .stat strong { font-size:22px; color:var(--p-ink); }
.premium-design .stat span { font-size:10px; color:var(--p-muted); }
.premium-design .story { background:var(--p-paper); }
.premium-design .story-grid { gap:48px; }
.premium-design .story-photo { min-height:275px; border-radius:10px; box-shadow:none; }
.premium-design :is(.card,.region,.step,.check,.partner) { border:1px solid var(--p-line); border-radius:8px; background:#fff; box-shadow:none; transform:none; }
.premium-design :is(.region,.step) { padding:22px; }
.premium-design .region a { font-size:12px; }
.premium-design .step .num { background:var(--p-soft); color:var(--p-accent); font-size:14px; width:34px; height:34px; border-radius:50%; }
.premium-design .safety { background:#eef3f1; }
.premium-design .check { padding:16px; }
.premium-design .check b { font-size:12px; color:var(--p-ink); }
.premium-design .check small { font-size:11px; color:var(--p-muted); }
.premium-design .cta-box { padding:32px; border:0; border-radius:10px; background:var(--p-ink); color:#fff; box-shadow:none; }
.premium-design .cta-box h2 { color:#fff; font-size:27px; }
.premium-design .cta-box p { font-size:12px; color:#d0dcdd; }
.premium-design .cta-box .btn { background:#fff; color:var(--p-ink); }
.premium-design :is(.footer,.tx-home-footer) { background:#171c35; }
.premium-design :is(.frequent h3,.tx-home-footer h3) { font-size:17px; font-weight:600; }
.premium-design :is(.footer a,.tx-home-footer a,.footer small,.tx-home-footer small) { font-size:11px; }
.premium-design :is(.mobile-dock,.tx-home-dock) { border-radius:12px; box-shadow:0 4px 24px #16303a12; }
.premium-design :is(.mobile-tab.publish,.tx-tab.publish) { background:var(--p-ink); box-shadow:none; color:#fff; }
/* Connexion : une colonne lisible, sans halo ni grand panneau sombre. */
.premium-design .ambient { display:none; }
.premium-design .app-shell { background:var(--p-paper); padding:42px 20px; min-height:0; }
.premium-design #authView { max-width:410px; margin:0 auto; padding:0; }
.premium-design #authView>.brand { display:none; }
.premium-design #authView .hero { padding:0 0 22px; margin:0; background:none; text-align:center; }
.premium-design #authView .eyebrow { color:var(--p-accent); font-size:10px; letter-spacing:.12em; }
.premium-design #authView h1 { font-size:30px; line-height:1.18; letter-spacing:-1px; margin:12px 0; color:var(--p-ink); }
.premium-design #authView h1 em { color:var(--p-accent); font-style:normal; }
.premium-design #authView .hero p { font-size:12px; color:var(--p-muted); }
.premium-design #authView .auth-card { padding:24px; background:#fff; border:1px solid var(--p-line); border-radius:10px; box-shadow:0 8px 28px #142c3505; }
.premium-design #authView .tabs { padding:4px; background:var(--p-soft); border:0; border-radius:6px; margin-bottom:20px; }
.premium-design #authView .tab { border-radius:4px; color:var(--p-muted); padding:9px; font-size:12px; }
.premium-design #authView .tab.active { background:#fff; color:var(--p-ink); box-shadow:none; }
.premium-design #authView .field { margin-bottom:15px; }
.premium-design #authView .field label { font-size:11px; color:var(--p-muted); }
.premium-design #authView input:not([type=checkbox]) { height:44px; border:1px solid var(--p-line); border-radius:6px; background:#fff; color:var(--p-ink); font-size:14px; }
.premium-design #authView .password button { color:var(--p-muted); }
.premium-design #authView .form-row { color:var(--p-muted); font-size:10px; }
.premium-design #authView .form-row a { color:var(--p-accent); }
.premium-design #authView .trust { color:var(--p-muted); font-size:10px; margin-top:18px; }
/* Espace personnel : densité contrôlée et hiérarchie commune. */
.premium-design #homeView,.premium-design #homeView .live-shell { background:var(--p-paper); color:var(--p-ink); font-family:inherit; }
.premium-design #homeView .live-shell main { max-width:1120px; padding:28px 24px 50px; }
.premium-design #homeView .live-hero { padding:0 0 20px; border:0; border-bottom:1px solid var(--p-line); border-radius:0; background:none; box-shadow:none; min-height:0; }
.premium-design #homeView .live-hero h1 { margin:7px 0; color:var(--p-ink); font-size:28px; letter-spacing:-.8px; font-weight:600; }
.premium-design #homeView .live-hero p { font-size:12px; color:var(--p-muted); }
.premium-design #homeView .live-eyebrow { font-size:9px; letter-spacing:.12em; color:var(--p-accent); }
.premium-design #homeView .live-avatar { width:46px; height:46px; border-radius:50%; background:var(--p-soft); color:var(--p-accent); border:1px solid var(--p-line); font-size:17px; box-shadow:none; }
.premium-design #homeView .live-overview { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin:18px 0 24px; padding:0; border:1px solid var(--p-line); border-radius:8px; background:#fff; }
.premium-design #homeView .live-overview .live-stat { display:grid; grid-template-columns:1fr auto; grid-template-rows:auto; gap:5px; padding:15px 13px; min-height:62px; border:0; border-right:1px solid var(--p-line); border-radius:0; background:transparent; box-shadow:none; }
.premium-design #homeView .live-overview .live-stat:last-child { border-right:0; grid-column:auto; }
.premium-design #homeView .live-overview .live-stat-icon { display:none; }
.premium-design #homeView .live-overview .live-stat span:not(.live-stat-icon) { grid-column:1; grid-row:1; align-self:center; font-size:11px; font-weight:500; line-height:1.4; color:var(--p-muted); }
.premium-design #homeView .live-overview .live-stat strong { grid-column:2; grid-row:1; align-self:center; font-size:21px; font-weight:600; color:var(--p-ink); }
.premium-design #homeView .live-overview .live-stat small { display:none; }
.premium-design #homeView .live-grid { grid-template-columns:minmax(0,1fr) 230px; gap:20px; }
.premium-design #homeView :is(.live-activity,.live-search,.live-account,.live-help,.live-support,.live-card,.live-empty,.live-profile,.live-publish,.live-alerts) { padding:20px; border:1px solid var(--p-line); border-radius:8px; background:#fff; box-shadow:none; }
.premium-design #homeView :is(.live-activity h2,.live-search strong,.live-account h2,.live-help h2,.live-publish h2,.live-profile h2,.live-alerts h2) { font-size:17px; letter-spacing:-.35px; color:var(--p-ink); }
.premium-design #homeView :is(.live-activity p,.live-account p,.live-help p,.live-search p,.live-publish>p,.live-profile>p) { font-size:12px; line-height:1.7; color:var(--p-muted); }
.premium-design #homeView .live-card { margin:10px 0; padding:16px; }
.premium-design #homeView .live-card-head strong { font-size:15px; }
.premium-design #homeView .live-card p { font-size:12px; }
.premium-design #homeView .live-tabs { display:flex; flex-wrap:nowrap; gap:3px; margin:19px 0 15px; padding:0 0 5px; overflow-x:auto; border-bottom:1px solid var(--p-line); scrollbar-width:thin; }
.premium-design #homeView .live-tabs button { flex:0 0 auto; padding:10px 11px; min-height:40px; font-size:11px; font-weight:600; border-radius:5px; background:transparent; color:var(--p-muted); box-shadow:none; }
.premium-design #homeView .live-tabs button.selected { background:var(--p-ink); color:#fff; }
.premium-design #homeView :is(.live-search-fields,.live-search-extra,.live-publish-fields,.live-profile-fields) { gap:13px; }
.premium-design #homeView :is(input,select,textarea):not([type=checkbox]):not([type=radio]) { min-height:42px; height:42px; padding:9px 11px; border:1px solid var(--p-line); border-radius:5px; background:#fff; color:var(--p-ink); font-size:13px; box-shadow:none; }
.premium-design #homeView textarea { height:auto!important; }
.premium-design #homeView :is(.live-search label,.live-publish label,.live-profile label,.live-alerts label) { font-size:11px; color:var(--p-muted); }
.premium-design #homeView :is(.live-card button,.live-publish button,.live-profile button,.live-alerts button,.live-search button,.live-account button,.live-verify button) { min-height:40px; padding:9px 13px; font-size:11px; font-weight:600; border:0; border-radius:5px; background:var(--p-ink); color:#fff; box-shadow:none; }
.premium-design #homeView .live-vehicle-block { padding:16px; margin:19px 0; border:1px solid var(--p-line); border-radius:6px; background:var(--p-paper); }
.premium-design #homeView .live-vehicle-block h3 { font-size:13px; color:var(--p-ink); }
.premium-design #homeView .live-publish-note { font-size:10px; color:var(--p-muted); }
.premium-design #homeView .premium-filters { margin-top:15px; border-top:1px solid var(--p-line); padding-top:12px; }
.premium-design #homeView .premium-filters summary { color:var(--p-accent); font-size:12px; cursor:pointer; min-height:34px; }
.premium-design #homeView .premium-filters[open] summary { margin-bottom:10px; }
.premium-design #homeView .live-stop-fields { padding:14px; border:1px solid var(--p-line); border-radius:6px; }
.premium-design #homeView .live-stop-fields legend { font-size:11px; }
.premium-design #homeView #live-message:empty { display:none; }
.premium-design #homeView dialog { border:1px solid var(--p-line); border-radius:10px; padding:26px; max-width:440px; width:calc(100% - 32px); color:var(--p-ink); }
.premium-design #homeView dialog h2 { font-size:20px; }
.premium-design #homeView dialog::backdrop { background:#112d3566; }
@media(max-width:1000px) {
  .premium-design .hero-grid { gap:30px; }
  .premium-design :is(.links,.tx-home-nav .tx-links) { gap:12px; }
  .premium-design :is(.links a,.tx-home-nav .tx-links a) { font-size:11px; }
  .premium-design #homeView .live-grid { grid-template-columns:minmax(0,1fr); }
  .premium-design #homeView .live-aside { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
}
@media(max-width:850px) {
  .premium-design :is(.wrap,.tx-home-nav .tx-inner,.tx-home-footer .tx-wrap) { width:calc(100% - 36px); }
  .premium-design .nav { padding-inline:18px; }
  .premium-design header.hero { padding:96px 0 30px; }
  .premium-design .hero-grid { grid-template-columns:1fr; gap:26px; max-width:600px; }
  .premium-design .hero-copy { text-align:left; }
  .premium-design .hero h1 { font-size:36px; letter-spacing:-1.3px; max-width:450px; }
  .premium-design .hero .lead { font-size:13px; max-width:490px; }
  .premium-design .premium-photo { display:none; }
  .premium-design .hero-actions { display:none; }
  .premium-design .trustline { margin-top:16px; font-size:10px; gap:12px; }
  .premium-design #finder { padding:20px; }
  .premium-design .feature { padding:15px 0; border:0; border-bottom:1px solid var(--p-line); }
  .premium-design .feature-grid { grid-template-columns:1fr; }
  .premium-design .feature:last-child { padding-bottom:0; }
  .premium-design .story-grid { gap:24px; }
  .premium-design :is(.section-head h2,.story-copy h2,.safety h2) { font-size:27px; }
  .premium-design section { padding:34px 0; }
  .premium-design #homeView .live-overview { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .premium-design #homeView .live-overview .live-stat { border-bottom:1px solid var(--p-line); }
}
@media(max-width:600px) {
  .premium-design { padding-bottom:78px; }
  .premium-design :is(.nav,.tx-home-nav) { height:60px; }
  .premium-design:has(.tx-home-nav) { padding-top:60px; }
  .premium-design header.hero { padding-top:84px; }
  .premium-design .hero h1 { font-size:34px; margin:14px 0; }
  .premium-design .hero-copy .eyebrow { font-size:9px; }
  .premium-design .hero .lead { margin-bottom:12px; }
  .premium-design #finder .finder-title { margin-bottom:15px; }
  .premium-design #finder .finder-title b { font-size:16px; }
  .premium-design #finder .switch button { min-height:42px; font-size:11px; }
  .premium-design #finder .field input,.premium-design #finder .tx-driver-time input { min-height:46px; height:46px; font-size:16px; }
  .premium-design #finder .tx-seats-plus { width:40px; height:40px; bottom:3px; right:3px; }
  .premium-design .quick-link { margin-right:15px; font-size:10px; }
  .premium-design .community-box { padding:18px; gap:15px; }
  .premium-design .community-box .btn { align-self:flex-start; }
  .premium-design .cta-box { padding:24px; }
  .premium-design .cta-box h2 { font-size:24px; }
  .premium-design #homeView .live-shell main { padding:22px 16px 28px; }
  .premium-design #homeView .live-hero h1 { font-size:25px; }
  .premium-design #homeView .live-overview { grid-template-columns:1fr 1fr; margin:16px 0; }
  .premium-design #homeView .live-overview .live-stat { min-height:53px; padding:10px 12px; grid-template-columns:1fr auto; gap:6px; }
  .premium-design #homeView .live-overview .live-stat span:not(.live-stat-icon) { font-size:11px; grid-column:1; grid-row:1; }
  .premium-design #homeView .live-overview .live-stat strong { font-size:19px; grid-column:2; grid-row:1; }
  .premium-design #homeView .live-overview .live-stat:last-child { grid-column:1/-1; border-bottom:0; }
  .premium-design #homeView .live-aside { grid-template-columns:1fr; }
  .premium-design #homeView :is(.live-activity,.live-search,.live-account,.live-help,.live-support,.live-profile,.live-publish,.live-alerts) { padding:17px; }
  .premium-design #homeView :is(.live-publish-fields,.live-profile-fields) { grid-template-columns:1fr 1fr; gap:13px 10px; }
  .premium-design #homeView :is(input,select,textarea):not([type=checkbox]):not([type=radio]) { min-height:45px; font-size:16px; max-width:100%; min-width:0; }
  .premium-design #homeView label { min-width:0; }
  .premium-design #homeView :is(button,.premium-filters summary) { min-height:44px; }
  .premium-design #authView input:not([type=checkbox]) { font-size:16px; min-height:46px; }
  .premium-design #authView .auth-card { padding:20px; }
}
@media(max-width:370px) {
  .premium-design #homeView :is(.live-publish-fields,.live-profile-fields,.live-search-fields,.live-search-extra) { grid-template-columns:1fr; }
  .premium-design #finder { padding:17px; }
  .premium-design #finder .switch button { font-size:10px; }
  .premium-design .trustline { gap:8px; }
}
@media(prefers-reduced-motion:reduce) {
  .premium-design *, .premium-design *::before, .premium-design *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

/* Identité historique : bleu #0000FF, survol #000099, logo original .be. */
.premium-design { --p-brand:#0000ff; --p-brand-hover:#000099; --p-cyan:#00c8ef; }
.premium-design :is(.mark,.tx-home-nav .tx-mark) { background:#fff url('/brand-logo.png') center/contain no-repeat; border-radius:8px; }
.premium-design :is(.btn-primary,.primary),.premium-design #finder .search,
.premium-design #homeView .live-tabs button.selected,
.premium-design #homeView :is(.live-card button,.live-publish button,.live-profile button,.live-alerts button,.live-search button,.live-account button,.live-verify button) { background:var(--p-brand); border-color:var(--p-brand); color:#fff; }
.premium-design :is(.btn-primary,.primary):hover,.premium-design #finder .search:hover { background:var(--p-brand-hover); }
.premium-design .pulse { background:var(--p-cyan); }
.premium-design .cta-box .btn { background:#fff; color:var(--p-brand); }
/* Guide, aide et navigation : même densité que les écrans principaux. */
.premium-design.premium-guide>main { max-width:1040px; padding:42px 28px 56px; }
.premium-design.premium-guide>main>.eyebrow { color:var(--p-brand); font-size:10px; letter-spacing:.13em; }
.premium-design.premium-guide h1 { max-width:720px; font-size:40px; line-height:1.15; letter-spacing:-1.4px; font-weight:600; margin:14px 0 18px; }
.premium-design.premium-guide .intro { max-width:730px; font-size:14px; line-height:1.8; color:var(--p-muted); }
.premium-design.premium-guide .jump { margin:24px 0 32px; gap:10px; }
.premium-design.premium-guide .button { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:9px 15px; border:1px solid var(--p-brand); border-radius:6px; background:var(--p-brand); font-size:12px; font-weight:600; text-decoration:none; color:#fff; }
.premium-design.premium-guide .button.secondary { background:#fff; border-color:var(--p-line); color:var(--p-ink); }
.premium-design.premium-guide main>section { margin:20px 0; padding:28px; border:1px solid var(--p-line); border-radius:9px; background:#fff; box-shadow:none; scroll-margin-top:90px; }
.premium-design.premium-guide main>section>.eyebrow { font-size:10px; color:var(--p-brand); letter-spacing:.1em; }
.premium-design.premium-guide main>section h2 { font-size:26px; font-weight:600; line-height:1.2; letter-spacing:-.7px; margin:9px 0 14px; }
.premium-design.premium-guide main>section p { color:var(--p-muted); font-size:13px; line-height:1.8; }
.premium-design.premium-guide .steps { gap:14px; margin:23px 0; }
.premium-design.premium-guide .step { background:var(--p-paper); border:0; padding:20px; border-radius:6px; }
.premium-design.premium-guide .step b { width:27px; height:27px; margin-bottom:12px; color:var(--p-brand); background:#e8ecff; font-size:12px; }
.premium-design.premium-guide .step h3 { font-size:14px; font-weight:600; }
.premium-design.premium-guide .step p { font-size:12px; }
.premium-design.premium-guide .example { padding:15px 18px; border:0; border-left:2px solid var(--p-brand); background:#f1f3ff; border-radius:0 5px 5px 0; }
.premium-design.premium-guide .note { padding:15px 18px; border:1px solid #e7dcc4; background:#fcfaf4; border-radius:5px; }
.premium-design :is(.feedback-launch,.whatsapp-float) { box-shadow:0 3px 14px #18213a16; border-radius:8px; font-size:11px; }
.premium-design .feedback-launch { background:var(--p-brand); }
.premium-design .feedback-modal { border-radius:10px; box-shadow:0 15px 50px #18213a25; }
.premium-design #homeView .live-header { padding:13px max(24px,calc((100vw - 1072px)/2)); background:#fff; border-bottom:1px solid var(--p-line); }
.premium-design #homeView .live-header .live-brand { color:var(--p-ink); font-size:20px; letter-spacing:-.5px; }
.premium-design #homeView .live-header .live-brand::before { content:''; display:block; width:32px; height:32px; border-radius:7px; background:url('/brand-logo.png') center/contain no-repeat; }
.premium-design #homeView .live-header .live-brand>.live-icon { display:none; }
.premium-design #homeView .live-header-nav a { font-size:11px; font-weight:600; color:var(--p-muted); }
.premium-design #homeView .live-header-nav a[aria-current=page] { color:var(--p-brand); }
.premium-design #homeView .live-header #live-logout { min-height:38px; border:1px solid var(--p-line); border-radius:6px; padding:8px 12px; font-size:11px; color:var(--p-muted); background:#fff; }
.premium-design #homeView .live-site-footer { background:#171c35; padding:30px 24px 20px; }
.premium-design #homeView .live-site-footer a,.premium-design #homeView .live-site-footer p { font-size:11px; }
.premium-design #homeView .live-site-footer h2 { font-size:18px; }
.premium-design :is(.mobile-dock,.tx-home-dock) { background:#fff; border:1px solid var(--p-line); }
.premium-design :is(.mobile-tab,.tx-home-dock .tx-tab) { color:var(--p-muted); font-size:10px; font-weight:600; }
.premium-design :is(.mobile-tab.active,.tx-home-dock .tx-tab.active) { color:var(--p-brand); background:#eef0ff; }
.premium-design :is(.mobile-tab.publish,.tx-home-dock .tx-tab.publish) { background:var(--p-brand); color:#fff; }
@media(max-width:650px) {
  .premium-design.premium-guide>main { padding:28px 18px 38px; }
  .premium-design.premium-guide h1 { font-size:30px; letter-spacing:-.8px; }
  .premium-design.premium-guide .intro { font-size:13px; }
  .premium-design.premium-guide main>section { padding:20px; scroll-margin-top:78px; }
  .premium-design.premium-guide main>section h2 { font-size:24px; }
  .premium-design.premium-guide .steps { grid-template-columns:1fr; }
  .premium-design.premium-guide .jump .button { width:auto; min-height:44px; }
  .premium-design.premium-guide .button { margin-bottom:5px; min-height:44px; }
  .premium-design #homeView .live-header { padding:12px 16px; }
  .premium-design #homeView .live-header #live-logout { min-height:44px; }
}
/* Derniers ajustements issus du contrôle visuel. */
.premium-design #authView { display:block; }
.premium-design #authView h1 em { background:none; -webkit-text-fill-color:var(--p-brand); }
.premium-design #homeView .live-hero .live-eyebrow { color:var(--p-brand); }
.premium-design #homeView .live-header-nav { position:static; height:auto; border:0; padding:0; background:none; }
/* Ajustements contrôlés sur le site publié. */
.premium-design .quick-link.primary { background:transparent; border:0; color:var(--p-brand); }
.premium-design .nav { padding-inline:0; }
.premium-design :is(.mark,.tx-home-nav .tx-mark) { background-image:url('/brand-logo.png?v=20260925'); font-size:0; flex-shrink:0; }
/* Accueil mobile : rythme compact, surfaces claires, navigation discrète. */
@media(max-width:850px) {
  body.premium-design { padding-top:60px; }
  .premium-design header.hero { padding:28px 0 26px; }
  .premium-design .hero-grid { background:transparent; border:0; border-radius:0; box-shadow:none; gap:22px; }
  .premium-design .nav { position:fixed; top:0; left:0; width:100%; padding:0 20px; height:60px; border-bottom:1px solid var(--p-line); background:#fff; backdrop-filter:none; }
  .premium-design .nav.scrolled { height:60px; box-shadow:none; }
  .premium-design .nav .brand { font-size:19px; letter-spacing:-.5px; }
  .premium-design .nav .mark { width:29px; height:29px; border-radius:7px; }
  .premium-design .hero-copy { padding:0; }
  .premium-design .hero h1 { font-size:32px; line-height:1.12; letter-spacing:-1.15px; margin:13px 0 12px; }
  .premium-design .hero .lead { font-size:13px; line-height:1.65; margin:0; }
  .premium-design .trustline { margin-top:13px; gap:10px; font-size:9px; }
  .premium-design #finder { padding:18px; border-radius:11px; box-shadow:0 4px 18px #18213a05; }
  .premium-design #finder .finder-title { margin-bottom:14px; }
  .premium-design #finder .finder-title b { font-size:16px; font-weight:600; }
  .premium-design #finder .finder-title span { display:none; }
  .premium-design #finder .switch { margin-bottom:16px; }
  .premium-design #finder .switch button { font-size:11px; white-space:nowrap; gap:5px; }
  .premium-design #finder .switch button svg { width:14px; height:14px; flex-shrink:0; }
  .premium-design .support-fab-group { position:static; width:auto; margin:18px 20px; padding:0; justify-content:center; background:transparent; border:0; box-shadow:none; }
  .premium-design :is(.mobile-dock,.tx-home-dock) { left:0; right:0; bottom:0; width:100%; padding:6px 8px max(6px,env(safe-area-inset-bottom)); border-radius:0; border-width:1px 0 0; box-shadow:0 -3px 16px #18213a05; gap:4px; }
  .premium-design :is(.mobile-tab,.tx-home-dock .tx-tab) { min-height:48px; border-radius:7px; font-size:9px; gap:3px; padding:5px 2px; }
  .premium-design :is(.mobile-tab,.tx-home-dock .tx-tab) i { font-size:20px; line-height:1; }
  .premium-design .mobile-dock::before,.premium-design .mobile-dock::after { display:none; }
}
@media(max-width:360px) {
  .premium-design .hero h1 { font-size:29px; }
  .premium-design #finder { padding:15px; }
  .premium-design #finder .switch button { font-size:10px; }
}
@media(max-width:850px) {
 .premium-design .hero .lead { font-size:14px; color:#4f596b; }
 .premium-design .hero-copy .eyebrow { font-size:10px; letter-spacing:.1em; }
 .premium-design .trustline { font-size:10px; color:#4f596b; gap:8px; }
 .premium-design #finder .field label { font-size:12px; color:#384257; font-weight:600; }
 .premium-design #finder .switch button { font-size:12px; }
 .premium-design #finder .search { font-size:14px; min-height:46px; }
 .premium-design :is(.mobile-tab,.tx-home-dock .tx-tab) { font-size:10px; }
 .premium-design :is(.feature p,.step p,.section-head p,.story-copy p,.safety p) { font-size:14px; line-height:1.65; }
}
@media(max-width:360px) { .premium-design #finder .switch button { font-size:11px; } }
@media(max-width:850px) {
 .premium-design #finder .switch button { flex:1 1 0; min-width:0; white-space:normal; line-height:1.35; padding:8px 6px; }
 .premium-design #finder .switch button svg { display:none; }
 .premium-design #finder .switch button { font-size:12px; }
}


/* Ajustements de lisibilité et de densité, septembre 2026 */
.premium-design header.hero { padding-top:68px; padding-bottom:36px; }
.premium-design .hero-grid { gap:28px; }
.premium-design section.features,
.premium-design section.story,
.premium-design section.trips,
.premium-design section.regions,
.premium-design section.safety,
.premium-design section.cta,
.premium-design section#how { padding-top:36px; padding-bottom:36px; }
.premium-design .stats { margin-top:0; padding-top:12px; padding-bottom:12px; }
.premium-design .community { padding-bottom:12px; }
.premium-design .safety h2 { color:var(--p-ink); }
.premium-design .feedback-modal { box-sizing:border-box; padding:26px; }
@media (max-width:850px) {
  .premium-design .support-fab-group {
    display:flex;
    position:fixed;
    right:12px;
    bottom:calc(82px + env(safe-area-inset-bottom));
    width:auto;
    margin:0;
    padding:5px;
    gap:7px;
    z-index:1195;
    justify-content:center;
    align-items:center;
    border:1px solid rgba(188,213,229,.88);
    border-radius:19px;
    background:rgba(255,255,255,.96);
    box-shadow:0 12px 35px rgba(4,25,43,.2);
  }
  .premium-design .support-fab-group .feedback-launch,
  .premium-design .support-fab-group .whatsapp-help {
    position:relative;
    right:auto;
    bottom:auto;
    margin:0;
    width:45px;
    height:45px;
  }
  .premium-design .feedback-modal { padding:20px; max-height:calc(100dvh - 110px); overflow:auto; }
}
@media (max-width:520px) {
  .premium-design .support-fab-group { right:9px; bottom:calc(82px + env(safe-area-inset-bottom)); gap:5px; padding:4px; }
  .premium-design .feedback-modal { padding:18px; max-width:calc(100vw - 24px); }
}

/* Keep search results compact below the finder. */
.trip-results.show{padding:18px!important}
@media(max-width:520px){.trip-results.show{padding:13px!important}}
