/* ───────────────────────────────────────────────
   LAM TRAVEL — feuille de style des pages légales
   Cohérente avec le site principal (Lam VTC.html)
   ─────────────────────────────────────────────── */
:root{
  --bleu: #42617e;
  --bleu-2: #35506a;
  --ivoire: #f3ede2;
  --paper: #ffffff;
  --encre: #1c1714;
  --encre-2: #2a221d;
  --mute: #6b5d4f;
  --line: rgba(28,23,20,0.14);
  --line-soft: rgba(28,23,20,0.07);
  --display: "Geist", system-ui, -apple-system, sans-serif;
  --sans: "Geist", system-ui, -apple-system, sans-serif;
  --mono: "Geist Mono", ui-monospace, monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--ivoire);
  color:var(--encre);
  font-family:var(--sans);
  font-weight:400;font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--bleu);text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%}

.wrap{max-width:820px;margin:0 auto;padding:0 28px}

/* ── Header ── */
.l-nav{position:sticky;top:0;z-index:20;background:var(--bleu);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
.l-nav .wrap{max-width:1100px;display:flex;align-items:center;justify-content:space-between;height:64px}
.l-nav .brand{font-family:var(--display);font-weight:600;font-size:18px;letter-spacing:.02em;color:#fff}
.l-nav .brand span{opacity:.7;font-weight:400}
.l-nav .back{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;display:inline-flex;align-items:center;gap:8px}
.l-nav .back:hover{opacity:.8;text-decoration:none}
.l-nav .back::before{content:"";width:14px;height:1px;background:#fff;position:relative}
.l-nav .back::after{content:"";position:absolute;width:7px;height:7px;border-left:1px solid #fff;border-bottom:1px solid #fff;transform:rotate(45deg);margin-left:-14px}

/* ── Hero / titre ── */
.l-head{padding:72px 0 40px;border-bottom:1px solid var(--line)}
.l-head .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bleu);font-weight:500}
.l-head h1{font-family:var(--display);font-weight:500;font-size:clamp(34px,6vw,52px);line-height:1.05;letter-spacing:-.03em;margin-top:18px}
.l-head .updated{margin-top:20px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--mute)}

/* ── Contenu ── */
main{padding:48px 0 96px}
.l-section{margin-top:44px}
.l-section:first-child{margin-top:0}
.l-section h2{
  font-family:var(--display);font-weight:500;font-size:23px;letter-spacing:-.015em;
  padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid var(--line);
  display:flex;align-items:baseline;gap:14px;
}
.l-section h2 .n{font-family:var(--mono);font-size:13px;color:var(--bleu);letter-spacing:.08em;font-weight:500}
.l-section h3{font-family:var(--display);font-weight:500;font-size:17px;margin:26px 0 10px;letter-spacing:-.01em}
.l-section p{margin:0 0 14px;color:var(--encre-2);text-wrap:pretty}
.l-section ul{margin:0 0 16px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:9px}
.l-section ul li{position:relative;padding-left:22px;color:var(--encre-2)}
.l-section ul li::before{content:"";position:absolute;left:2px;top:11px;width:7px;height:1px;background:var(--bleu)}
.l-section strong{color:var(--encre);font-weight:600}

/* Tableau (cookies) */
.l-table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:14.5px}
.l-table th,.l-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.l-table th{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);font-weight:500;background:rgba(66,97,126,.05)}
.l-table td strong{font-weight:600}
.l-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}

/* Carte d'identité (mentions) */
.l-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px 30px;display:grid;grid-template-columns:1fr 1fr;gap:20px 36px}
.l-card .row{display:flex;flex-direction:column;gap:4px}
.l-card .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.l-card .v{font-size:15.5px;color:var(--encre);font-weight:500}

/* Placeholder à compléter */
.todo{
  background:#fff7e6;border:1px dashed #d9a441;color:#8a5a00;
  border-radius:6px;padding:1px 8px;font-family:var(--mono);font-size:12.5px;
  letter-spacing:.02em;font-weight:500;white-space:nowrap;
}

/* Encadré d'info */
.callout{background:rgba(66,97,126,.06);border:1px solid rgba(66,97,126,.18);border-radius:12px;padding:20px 24px;margin:8px 0 16px}
.callout p:last-child{margin-bottom:0}

/* ── Footer ── */
.l-foot{background:var(--encre);color:rgba(255,255,255,.72);padding:40px 0}
.l-foot .wrap{max-width:1100px;display:flex;flex-wrap:wrap;gap:18px 32px;align-items:center;justify-content:space-between}
.l-foot a{color:rgba(255,255,255,.72)}
.l-foot a:hover{color:#fff}
.l-foot .links{display:flex;flex-wrap:wrap;gap:22px;font-size:13.5px}
.l-foot .copy{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:rgba(255,255,255,.5)}

@media(max-width:640px){
  .l-card{grid-template-columns:1fr;gap:18px}
  .l-head{padding:52px 0 32px}
}
