@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Inter:wght@400;500;600&display=swap');
:root{color-scheme:dark;--ink:#ecebe6;--soft:#a3a6ad;--paper:#0e0f13;--line:#24262d;--glass:rgba(16,20,34,.55);--serif:'Instrument Serif',Georgia,serif;--sans:'Inter',-apple-system,system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}
.nav{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:4px;align-items:center;padding:6px;border-radius:14px;background:rgba(30,34,52,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14)}
.nav a{white-space:nowrap;color:#fff;text-decoration:none;font-size:14px;font-weight:500;padding:8px 12px;border-radius:10px}
.nav a:hover{background:rgba(255,255,255,.1)}
.nav .mark{font-family:var(--serif);font-size:20px;padding:4px 12px}
.nav .cta{background:#14161c}
.clock{position:absolute;top:24px;right:24px;color:#fff;font-size:13px;opacity:.95;z-index:2;text-shadow:0 1px 3px rgba(0,0,0,.55)}
.clock span{opacity:.6;margin-left:6px}
.hero{position:relative;min-height:100svh;background:#1d2340 url('/assets/hero-autumn-dusk.jpg') center/cover no-repeat;display:flex;align-items:flex-end;padding:16px}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,12,24,.45),transparent 45%)}
.card{position:relative;z-index:1;max-width:460px;padding:28px;border-radius:18px;background:var(--glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.16);color:#fff}
.card h1{font:400 44px/1.05 var(--serif);margin:0 0 16px;letter-spacing:-.01em}
.card p{margin:0 0 18px;font-size:15px;opacity:.92}
.card a{font-size:15px;text-underline-offset:4px}
.tag{position:absolute;right:28px;bottom:28px;z-index:1;color:#fff;font-size:14px;text-align:right;max-width:220px;opacity:.9}
section{max-width:1040px;margin:0 auto;padding:120px 24px}
h2{font:400 clamp(36px,5vw,56px)/1.08 var(--serif);margin:0 0 28px;letter-spacing:-.01em;max-width:820px}
.lede{font-size:20px;color:var(--soft);max-width:680px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}
.pillar{border-top:1px solid var(--ink);padding-top:20px}
.pillar .n{font:400 15px var(--serif);font-style:italic;color:var(--soft)}
.pillar h3{font:400 30px/1.1 var(--serif);margin:8px 0 12px}
.pillar p{margin:0;color:var(--soft);font-size:16px}
.how{border-top:1px solid var(--line)}
.how ol{list-style:none;padding:0;margin:40px 0 0;display:grid;gap:28px;max-width:760px}
.how li{display:grid;grid-template-columns:56px 1fr;gap:16px;font-size:18px}
.how li b{font:400 28px/1 var(--serif);font-style:italic;font-weight:400;color:var(--soft)}
.contact{text-align:center;border-top:1px solid var(--line)}
.contact h2{margin:0 auto 20px}
.contact .mail{display:inline-block;margin-top:24px;font:400 34px var(--serif);text-decoration:none;border-bottom:1px solid var(--ink)}
footer{border-top:1px solid var(--line);padding:32px 24px;font-size:13px;color:var(--soft);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;max-width:1040px;margin:0 auto}
footer a{text-decoration:none}footer a:hover{text-decoration:underline}
.doc{max-width:720px;padding-top:140px}
.doc h1{font:400 48px/1.1 var(--serif);margin:0 0 8px}
.doc h2{font-size:28px;margin:40px 0 12px}
.doc p,.doc li{color:var(--soft)}
.doc-nav{background:#1d2340;padding:0;min-height:0}
@media(max-width:760px){.grid{grid-template-columns:1fr}.card h1{font-size:36px}.tag{display:none}.nav .hide-m{display:none}section{padding:80px 20px}.contact .mail{font-size:26px}}
@media(max-width:760px){.clock{display:none}.hero{padding:12px}.card{max-width:none;width:100%;padding:22px}.card h1{font-size:32px}.nav{top:12px}}
#scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;image-rendering:pixelated;image-rendering:crisp-edges;opacity:0;transition:opacity .6s}
#scene.on{opacity:1}
/* Carte centrée (JP, 6 oct): large et basse, au centre du bas de l'image. */
.hero{justify-content:center;padding:16px 16px 9vh}
.card{max-width:600px;width:100%;text-align:center;padding:28px 36px}
.card h1{font-size:40px;margin-bottom:14px}
.card p{max-width:480px;margin-left:auto;margin-right:auto}
@media(max-width:760px){.hero{padding:12px 12px 12px}.card{padding:22px;text-align:left}.card h1{font-size:32px}}
/* Une seule bulle sous l'heure (JP, 6 oct): l'indice au survol, remplacé par
   la saison et le moment pendant le voyage dans le temps. */
.clock{cursor:default}
.bubble{position:absolute;right:24px;top:52px;z-index:2;white-space:nowrap;padding:6px 12px;border-radius:999px;background:rgba(16,20,34,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-size:12px;opacity:0;transform:translateY(-4px);transition:opacity .2s,transform .2s;pointer-events:none}
.clock:hover + .bubble,.bubble.on{opacity:1;transform:none}
@media(max-width:760px){.bubble{top:16px;right:50%;transform:translateX(50%)}.bubble.on{transform:translateX(50%)}}
