/* anna-das-luder.de phase 2 : composants ajoutés au gabarit p1 Kirschlack (build.py). */
/* Trait d'union lisible en Bodoni : le build enveloppe le trait d'union des titres dans .hy (police texte). */
.hy{font-family:var(--f-text);font-style:normal;font-weight:700;letter-spacing:.02em;padding:0 .04em}
/* Menu : sous-menus (details/summary, sans JS) */
.nav li{position:relative}
.nav details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:15px 20px;color:var(--ink);font:600 15px/1 var(--f-text)}
.nav details>summary::-webkit-details-marker{display:none}
.nav details>summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.nav details[open]>summary,.nav details>summary:hover,.nav summary.on{color:var(--accent)}
.nav .dd{display:block;position:absolute;left:0;top:100%;z-index:60;min-width:250px;max-height:70vh;overflow-y:auto;background:var(--surface2);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 40px rgba(26,15,18,.12);padding:8px 0;margin:0}
.nav .dd--cols{columns:2;min-width:420px}
.nav .dd li{break-inside:avoid}
.nav .dd a{padding:9px 18px;font-size:14.5px;font-weight:500}
.nav .dd a.on::after{display:none}
.hd-l{font-size:11px}
/* Tableaux de données (prix, duels) : défilent dans leur cadre sur mobile, jamais la page */
.dtw{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:20px;background:var(--surface2);margin:24px 0 8px}
.dt{width:100%;border-collapse:collapse;font-size:15.5px;min-width:480px}
.dt th{font:800 11.5px/1.3 var(--f-text);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);text-align:left;padding:14px 16px;border-bottom:1px solid var(--accent2);background:var(--paper)}
.dt td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5}
.dt tr:last-child td{border-bottom:0}
.dt tr.hl td{background:color-mix(in srgb,var(--surface) 70%,var(--surface2));font-weight:600}
.dt img{max-height:26px;width:auto;display:inline-block}
.dt-note{font-size:14px;color:var(--muted);margin:6px 4px 24px}
/* Encadrés */
.tip{border:1px solid var(--accent2);border-radius:22px;padding:22px 26px;margin:28px 0;background:var(--paper)}
.tip--warn{border-color:var(--accent);background:color-mix(in srgb,var(--surface) 55%,var(--paper))}
.tip-h{font:800 11.5px/1.3 var(--f-text);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 8px}
.tip p:last-child{margin:0}
.anec{font:italic 500 19px/1.6 var(--f-display);color:var(--accent-d);margin:30px 0}
.anec .tip-h{font-style:normal}
.muster{background:var(--surface2);border:1px dashed var(--accent2);border-radius:18px;padding:20px 24px;margin:24px 0;font-size:15.5px;white-space:pre-line}
.muster-h{font-weight:800;margin:0 0 6px;color:var(--accent-d)}
.main ol.steps{counter-reset:s;list-style:none;padding:0;margin:20px 0 24px}
.main ol.steps li{counter-increment:s;position:relative;padding:0 0 14px 46px;margin:0}
.main ol.steps li::before{content:counter(s);position:absolute;left:0;top:-2px;width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;font:700 15px/32px var(--f-text);text-align:center}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:24px 0}
.facts div{background:var(--surface2);border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.facts b{display:block;font:600 24px/1.1 var(--f-display);color:var(--accent-d)}
.facts span{font-size:13.5px;color:var(--muted);line-height:1.4;display:block;margin-top:4px}
/* Cartes plateformes */
.pcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:24px 0}
.pcard{border:1px solid var(--line);border-radius:20px;padding:18px 20px;background:var(--surface2);display:flex;flex-direction:column;gap:8px}
.pcard--top{border:2px solid var(--accent2)}
.pcard .lg{height:34px;display:flex;align-items:center}
.pcard .lg img{max-height:30px;max-width:160px;width:auto}
.pcard .wmt{font:700 19px/1 var(--f-display);color:var(--ink)}
.pcard p{font-size:15px;margin:0;color:var(--muted)}
.pcard .lnk{margin-top:auto}
.pcard .sc{font:800 12px/1 var(--f-text);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
/* Lieux (villes) */
.lieu{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:22px;align-items:start;border-top:1px solid var(--line);padding:22px 0;margin:0}
.main .lieu figure{margin:0}
.main .lieu figure img{border-radius:16px;aspect-ratio:4/3;object-fit:cover}
.main .lieu figcaption{font-size:12.5px;color:var(--muted);margin-top:6px;line-height:1.4}
.lieu h3{margin:0 0 4px}
.lieu .adr{font-size:14px;color:var(--accent-d);font-weight:600;margin:0 0 8px}
.shot{border:1.5px dashed var(--line);border-radius:18px;padding:26px;text-align:center;color:var(--muted);font-size:14.5px;margin:24px 0;background:var(--paper)}
.shot b{display:block;color:var(--accent-d);font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.srcs{font-size:13.5px;color:var(--muted)}
.srcs a{word-break:break-all}
.rel{list-style:none;padding:0;margin:16px 0 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.rel li{margin:0}
.rel a{display:block;border:1px solid var(--line);border-radius:14px;padding:12px 16px;text-decoration:none;color:var(--ink);font-weight:600;font-size:15px;background:var(--surface2)}
.rel a:hover{border-color:var(--accent2);color:var(--accent)}
.go-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin:20px 0 28px;padding:16px 20px;border-radius:18px;background:var(--surface)}
.go-line p{margin:0;flex:1 1 260px;font-size:15.5px}
.ft-aff{font-size:13px;opacity:.85}
.sec .main-like{max-width:860px}
.stick-m{display:none}
@media (max-width:860px){
  .nav details>summary{padding:14px 22px;font-size:17px;border-bottom:1px solid var(--line)}
  .nav .dd{position:static;box-shadow:none;border:0;border-radius:0;min-width:0;max-height:none;background:var(--paper);columns:1}
  .nav .dd--cols{columns:2;min-width:0}
  .nav .dd a{padding:11px 30px;font-size:15.5px}
  .lieu{grid-template-columns:1fr}
  .stick-m{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:800;gap:10px;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--night);color:var(--on-night);font-size:14px;text-decoration:none;box-shadow:0 -6px 20px rgba(0,0,0,.18)}
  .stick-m b{color:var(--tb-hl)}
  .stick-m .go{padding:9px 14px;font-size:14px}
  body{padding-bottom:64px}
}
.ft-in--4{grid-template-columns:1.4fr 1fr 1fr 1fr}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.crit--in{display:block}
.t-home .sec .main>:is(p,ul,ol,h3,.tip,.anec,.muster,.quote,.faq,.go-line,.facts,.dtw,.dt-note,.shot,.rel){max-width:860px}
.t-home .sec .main>h3{margin:28px 0 10px}
.ph img{border-radius:20px}
@media (max-width:860px){.ft-in--4{grid-template-columns:1fr}}
