/* Lune Japon « Tōkaidō », vague 1 : jetons + en-tête + pied de page (chargé partout). */
:root{
--tk-bg:#FFFFFF;--tk-paper:#F4F2EC;--tk-ink:#0F1115;--tk-muted:#4A505C;--tk-line:#E3E1DC;--tk-rule:#0F1115;
--tk-accent:#BC002D;--tk-accent-hover:#9A0025;--tk-accent-text:#BC002D;--tk-blue:#0B5CAD;--tk-green:#1F7A4D;
--tk-yellow:#FFD23F;--tk-ok-bg:#E7F3EC;--tk-ticket:#E6F1EE;--tk-ticket-line:#B8D6CE;
--tk-l-prep:#BC002D;--tk-l-iti:#0B5CAD;--tk-l-dest:#1F7A4D;--tk-l-trans:#B85409;--tk-l-vivre:#6B3FA0;--tk-l-akiya:#8A5A2B;
--tk-sans:"Inter","Inter Fallback",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
--tk-jp:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;
--tk-r:6px;--tk-r-lg:10px;--tk-wrap:1280px;--tk-gut:16px;--tk-hdr-h:64px}
@media (min-width:1024px){:root{--tk-gut:48px}}
.tk-wrap{max-width:var(--tk-wrap);margin:0 auto;padding:0 var(--tk-gut);box-sizing:border-box}
.tk-jp{font-family:var(--tk-jp);font-weight:700;letter-spacing:0}
.tk-hdr,.tk-hdr *,.tk-ftr,.tk-ftr *{box-sizing:border-box}
.tk-hdr :focus-visible,.tk-ftr :focus-visible{outline:3px solid var(--tk-blue);outline-offset:2px}
/* Boutons */
.tk-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 22px;border-radius:var(--tk-r);font:700 16px/1.2 var(--tk-sans);text-decoration:none;border:0;cursor:pointer;text-align:center;letter-spacing:-.005em}
.tk-btn-primary,a.tk-btn-primary{background:var(--tk-accent);color:#fff}
.tk-btn-primary:hover,a.tk-btn-primary:hover{background:var(--tk-accent-hover);color:#fff}
.tk-btn-line,a.tk-btn-line{background:transparent;color:var(--tk-ink);box-shadow:inset 0 0 0 2px var(--tk-ink)}
.tk-btn-line:hover,a.tk-btn-line:hover{background:var(--tk-paper);color:var(--tk-ink)}
.tk-btn-block{display:flex;width:100%}
.tk-kicker{display:flex;align-items:center;gap:10px;font:700 13px/1 var(--tk-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--tk-muted);margin:0}
/* En-tête */
.tk-hdr{position:sticky;top:0;z-index:50;background:var(--tk-bg);border-bottom:2px solid var(--tk-rule);font-family:var(--tk-sans);color:var(--tk-ink)}
.admin-bar .tk-hdr{top:32px}
@media (max-width:782px){.admin-bar .tk-hdr{top:0}}
.tk-hdr-in{display:flex;align-items:center;gap:16px;min-height:var(--tk-hdr-h)}
.tk-logo{display:flex;align-items:center;gap:10px;font:800 21px/1 var(--tk-sans);letter-spacing:-.03em;color:var(--tk-ink);text-decoration:none;white-space:nowrap;border:0}
.tk-hdr a.tk-logo:hover{color:var(--tk-ink)}
.tk-logo-mark{width:30px;height:30px;flex:none}
.tk-nav{display:none;margin-left:auto}
.tk-nav ul,.tk-menu-list,.tk-menu-tools{list-style:none;margin:0;padding:0}
.tk-nav ul{display:flex;gap:2px}
.tk-nav a{display:inline-flex;align-items:center;gap:8px;font:600 15px/1 var(--tk-sans);color:var(--tk-ink);text-decoration:none;padding:12px 10px;border-radius:var(--tk-r);white-space:nowrap;border:0}
.tk-hdr .tk-nav a:hover{background:var(--tk-paper);color:var(--tk-ink)}
.tk-nav a[aria-current]{box-shadow:inset 0 -3px 0 var(--tk-ink)}
.tk-dot{display:inline-block;flex:none;width:10px;height:10px;border-radius:50%;background:var(--c)}
.tk-actions{margin-left:auto;display:flex;gap:4px;align-items:center}
.tk-icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:var(--tk-r);color:var(--tk-ink);background:none;border:0;cursor:pointer;padding:0;list-style:none}
.tk-hdr a.tk-icon-btn:hover,.tk-icon-btn:hover{background:var(--tk-paper);color:var(--tk-ink)}
.tk-ico{width:22px;height:22px}
.tk-search{display:flex;align-items:center;gap:8px;background:var(--tk-paper);border-radius:var(--tk-r);padding:0 8px 0 14px;min-height:48px;color:var(--tk-muted);margin:0}
.tk-search .tk-ico{width:18px;height:18px;flex:none}
.tk-hdr .tk-search input[type=search]{border:0;background:none;font:16px/1.2 var(--tk-sans);flex:1;min-width:0;color:var(--tk-ink);padding:12px 0;margin:0;box-shadow:none;outline:0;height:auto;-webkit-appearance:none;appearance:none;border-radius:0}
.tk-hdr .tk-search input::placeholder{color:var(--tk-muted);opacity:1}
.tk-search:focus-within{box-shadow:inset 0 0 0 2px var(--tk-ink)}
.tk-search kbd{font:600 12px/1.4 var(--tk-sans);border:1px solid #C9C6BF;border-radius:4px;padding:1px 6px;color:var(--tk-muted);background:var(--tk-bg)}
.tk-actions>.tk-search{display:none;width:200px}
details.tk-menu>summary{list-style:none}
details.tk-menu>summary::-webkit-details-marker{display:none}
details.tk-menu .tk-ico-close,details.tk-menu[open] .tk-ico-menu{display:none}
details.tk-menu[open] .tk-ico-close{display:block}
.tk-menu-panel{position:fixed;left:0;right:0;bottom:0;top:calc(var(--tk-hdr-h) + 2px);background:var(--tk-bg);padding:16px 16px 32px;overflow:auto;z-index:60;overscroll-behavior:contain}
.admin-bar .tk-menu-panel{top:calc(var(--tk-hdr-h) + 48px)}
.tk-menu-list{margin:16px 0 0}
.tk-menu-list a{display:flex;align-items:center;gap:14px;min-height:56px;font:800 22px/1.1 var(--tk-sans);letter-spacing:-.02em;color:var(--tk-ink);text-decoration:none;border-bottom:1px solid var(--tk-line)}
.tk-hdr .tk-menu-list a:hover{color:var(--tk-accent-text)}
.tk-menu-list .tk-dot{width:14px;height:14px}
.tk-menu-panel .tk-kicker{margin:24px 0 10px}
.tk-menu-tools{display:grid;gap:8px}
.tk-menu-tools .tk-btn{display:flex;width:100%}
@media (min-width:1100px){
.tk-nav{display:block}.tk-actions{margin-left:8px}.tk-actions>.tk-search{display:flex}.tk-search-m,details.tk-menu{display:none}}
@media (min-width:1100px) and (max-width:1279px){.tk-nav a{padding:12px 7px;font-size:14px}.tk-actions>.tk-search{width:150px}.tk-search kbd{display:none}}
/* Pied de page */
.tk-ftr{background:#0F1115;color:#A9AEB8;padding:48px 0 32px;font:400 15px/1.6 var(--tk-sans);margin-top:72px}
.tk-ftr a{color:#F2F0EB;text-decoration:none;border:0}
.tk-ftr a:hover{color:#F2F0EB;text-decoration:underline}
.tk-ftr p{margin:0}
.tk-word{font:800 44px/1 var(--tk-sans);letter-spacing:-.045em;color:#F2F0EB;margin:0 0 24px!important;white-space:nowrap;overflow:hidden}
.tk-ftr-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tk-ftr-about{grid-column:1/-1}
.tk-ftr-about p{max-width:28em}
.tk-ftr-h{font:700 12px/1 var(--tk-sans)!important;letter-spacing:.12em;text-transform:uppercase;color:#A9AEB8;margin:0 0 12px!important}
.tk-ftr ul{list-style:none;margin:0;padding:0}
.tk-ftr li{margin:0}
.tk-ftr li a{display:inline-block;padding:9px 0}
.tk-legal{border-top:1px solid #2A2F38;margin-top:32px!important;padding-top:16px;font-size:13px}
@media (min-width:900px){.tk-word{font-size:120px}.tk-ftr-grid{grid-template-columns:2fr 1fr 1fr 1fr}.tk-ftr-about{grid-column:auto}}
/* Accueil et hubs (vague 2) : l'ancien gabarit garde sa largeur sous le nouvel en-tête. */
body.tk:not(.tk-article-page) #inner-wrap{background:transparent}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto!important;clip-path:none;height:auto;width:auto;left:8px;top:8px;z-index:100000;background:#fff;color:#0F1115;padding:12px 16px;font:700 16px var(--tk-sans);border-radius:6px;outline:3px solid #0B5CAD}
@media (prefers-reduced-motion:reduce){.tk-hdr *,.tk-ftr *{transition:none!important}}
@media print{.tk-hdr,.tk-ftr{display:none}}
