@font-face{font-family:"Geist";font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/Geist-400Regular.woff2) format("woff2")}
@font-face{font-family:"Geist";font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/Geist-500Medium.woff2) format("woff2")}
@font-face{font-family:"Geist";font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/Geist-600SemiBold.woff2) format("woff2")}
@font-face{font-family:"Geist Mono";font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/GeistMono-400Regular.woff2) format("woff2")}
@font-face{font-family:"Geist Mono";font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/GeistMono-500Medium.woff2) format("woff2")}

:root{--bg:#F3F5F2;--card:#fff;--ink:#16211F;--muted:#5C6B67;--line:#DEE4E0;--accent:#0F5E5A;--deep:#0A4441;--soft:#DCEAE7;--sunk:#EDF1EE;--clay:#B9694A;
  --pad:clamp(20px,5vw,64px);--shadow:0 1px 2px rgba(22,33,31,.04),0 6px 20px rgba(22,33,31,.06);--mono:"Geist Mono",ui-monospace,monospace}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:light}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Geist",system-ui,sans-serif;font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.wrap{max-width:1280px;margin-inline:auto;padding-inline:var(--pad)}
.mono{font-family:var(--mono);font-weight:500}
.skip{position:absolute;left:12px;top:-60px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:10px;z-index:9}
.skip:focus{top:12px}
h2{font-weight:600;font-size:clamp(32px,2.4vw + 15px,46px);line-height:1.06;letter-spacing:-.035em}
h3{font-weight:600;font-size:19px;letter-spacing:-.015em;margin-bottom:8px}
.lede{font-size:clamp(18px,.4vw + 16px,20px);color:var(--muted);max-width:30em}

/* Top of every page */
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:clamp(16px,2vw,26px)}
.brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:20px;letter-spacing:-.02em;text-decoration:none}
.mark{display:block;flex:none}
.nav-links{display:flex;gap:clamp(16px,2.4vw,30px);font-size:15px;color:var(--muted);align-items:center}
.nav-links a{text-decoration:none}.nav-links a:hover{color:var(--ink)}
.nav-links .lang{padding:5px 13px;border-radius:99px;background:var(--sunk);color:var(--ink);font-weight:500;font-size:14px}
@media (max-width:440px){.nav-links a:not(.lang){display:none}}
.soon{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:500;color:var(--accent);margin-top:clamp(20px,2.4vw,30px)}
.soon i{flex:none;width:8px;height:8px;border-radius:99px;background:var(--accent)}

/* Hero */
.top{position:absolute;inset:0 0 auto;height:620px;z-index:-1;background:linear-gradient(180deg,#DDEAE6,rgba(243,245,242,0))}
.hero{padding-block:clamp(20px,3.8vw,48px) clamp(32px,5vw,66px)}
.hero-now{font-size:clamp(15px,.3vw + 14px,17px);color:var(--accent);margin-bottom:clamp(10px,1.4vw,18px)}
h1{font-weight:600;font-size:clamp(40px,7vw + 16px,104px);line-height:.98;letter-spacing:-.05em;max-width:11em;margin-bottom:clamp(16px,2vw,26px)}

/* The day, as a track */
.card{background:var(--card);border-radius:18px;box-shadow:var(--shadow)}
.strip{margin-top:clamp(32px,4.6vw,60px);background:var(--card);border-radius:clamp(18px,2vw,26px);box-shadow:var(--shadow);padding:clamp(18px,2vw,26px) clamp(18px,2.6vw,34px) clamp(14px,1.6vw,20px)}
.strip-title{font-weight:600;font-size:clamp(20px,.6vw + 17px,25px);letter-spacing:-.02em}
.strip-sub{color:var(--muted);font-size:clamp(14px,.2vw + 13px,15.5px);margin-top:1px}
.track{position:relative;height:38px;margin-top:44px;display:flex;align-items:center}
.track i{position:absolute;display:block}
.track .line,.track .passed{left:0;height:6px;border-radius:3px}
.track .line{right:0;background:var(--sunk)}.track .passed{background:var(--soft)}
.tick{width:1px;height:12px;background:var(--line)}
.now{width:2.5px;height:32px;margin-left:-1px;border-radius:1px;background:var(--ink);opacity:.55}
.slot{position:absolute;width:18px;height:18px;margin-left:-9px;display:flex;align-items:center;justify-content:center}
.track .dot{position:relative;width:18px;height:18px;border-radius:99px;border:3.5px solid var(--accent)}
.dot.taken{background:var(--accent)}.dot.upcoming{background:var(--card);border-color:var(--soft)}
.pulse{width:18px;height:18px;border-radius:99px;background:var(--accent);animation:pulse 1.8s ease-out infinite}
@keyframes pulse{from{transform:scale(1);opacity:.55}to{transform:scale(2.2);opacity:0}}
.flag{position:absolute;bottom:100%;margin-bottom:8px;left:0;white-space:nowrap;font-family:var(--mono);font-weight:500;font-size:clamp(12px,.3vw + 11px,14px);color:var(--accent);transform:translateX(-30%)}
.labels{position:relative;height:20px;margin-top:2px}
.labels span{position:absolute;width:60px;margin-left:-30px;text-align:center;font-family:var(--mono);font-size:clamp(11px,.2vw + 10px,12.5px);color:var(--muted)}

/* One scene per moment of the day */
.rail .wrap{position:relative;padding-block:clamp(4px,1.6vw,20px) clamp(20px,4vw,60px)}
.scene{display:grid;gap:clamp(18px,3vw,40px);padding-block:clamp(36px,4.6vw,60px);align-items:center}
.time{font-family:var(--mono);font-weight:500;font-size:clamp(22px,.8vw + 17px,27px);letter-spacing:-.03em;color:var(--accent)}
.s-time{grid-area:time;align-self:start}
.s-text{grid-area:text}.s-text p{color:var(--muted);font-size:clamp(17px,.3vw + 16px,18.5px);margin-top:clamp(12px,1.2vw,16px)}
.s-media{grid-area:media;display:flex;justify-content:center;min-width:0}
.s-live{grid-area:live;min-width:0}
.scene{grid-template-columns:minmax(0,1fr);grid-template-areas:"time" "text" "media" "live"}
.s-time{display:flex;align-items:center;gap:14px}
.s-time:after{content:"";flex:1;height:1px;background:var(--line)}
@media (min-width:720px){
  .scene{grid-template-columns:110px minmax(0,1fr);grid-template-areas:"time text" ". media" ". live"}
  .s-media{justify-content:flex-start}
  .s-time{display:block;background:var(--bg);padding-block:5px;position:relative;z-index:1;margin-top:4px;width:82px}
  .s-time:after{display:none}
  .rail .wrap:before{content:"";position:absolute;left:calc(var(--pad) + 76px);top:clamp(30px,4vw,60px);bottom:0;width:2px;background:var(--line)}
}
@media (min-width:1100px){
  .scene{grid-template-columns:150px minmax(0,410px) minmax(0,1fr);grid-template-areas:"time text media";align-items:center}
  .s-media{justify-content:center}
  .s-time{width:100px}
  .rail .wrap:before{left:calc(var(--pad) + 94px)}
  .scene-map{grid-template-rows:auto auto;grid-template-areas:"time text media" "time live media"}
  .scene-map .s-text{align-self:end}.scene-map .s-live{align-self:start}
}

/* 07:30 */
.lock{width:100%;max-width:420px;background:linear-gradient(165deg,#1C5E59,#0F4A47 55%,#0A3634);color:#fff;border-radius:30px;padding:clamp(24px,2.6vw,34px) clamp(16px,2vw,26px) clamp(16px,2vw,28px);text-align:center}
.lock-date{font-size:16px;font-weight:500;color:#CFE4DF}
.lock-time{font-size:clamp(58px,3vw + 40px,76px);font-weight:600;letter-spacing:-.04em;line-height:1.05;margin-bottom:clamp(18px,2vw,26px)}
.notif{background:rgba(243,245,242,.94);color:var(--ink);border-radius:22px;text-align:left;padding:13px 14px 12px;box-shadow:0 12px 34px rgba(5,30,28,.3)}
.notif-head{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.notif-app{font-weight:500}.notif-time{margin-left:auto}
.appicon{display:inline-flex;align-items:center;justify-content:center;background:#0F5E5A;flex:none}
.notif-title{font-weight:600;font-size:16px;margin-top:8px;letter-spacing:-.01em}
.notif-body{font-size:14.5px;color:var(--muted)}
.notif-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;font-size:14.5px;font-weight:500;text-align:center}
.notif-actions span{padding:9px 4px;background:#fff;border-radius:12px}
.notif-actions span:first-child{background:var(--accent);color:#fff}

/* 07:42 */
.map-box{width:100%;max-width:400px}
.sides{display:flex;font-size:12px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:6px}
.sides span{flex:1}
.bodymap{display:block;width:100%;height:auto}
.zone{cursor:pointer;touch-action:manipulation;outline:none}
.zone polygon:first-child{transition:opacity .15s}
.zone:hover polygon:first-child{opacity:.8}
.zone:focus-visible polygon:first-child{stroke:var(--ink);stroke-width:3}
.readout{display:flex;gap:18px;align-items:center;padding:14px 20px;background:var(--card);border-radius:18px;box-shadow:var(--shadow);min-height:84px}
.readout-days{font-family:var(--mono);font-weight:500;font-size:clamp(23px,.5vw + 21px,27px);letter-spacing:-.03em;color:var(--accent);flex:none;min-width:74px}
.readout-label{font-weight:600;font-size:16px;line-height:1.3}
.readout-spoken{font-size:14.5px;color:var(--muted);line-height:1.35}
.hint{font-size:14px;color:var(--muted);margin-top:10px}
.tones{display:none;align-items:center;gap:10px;margin-top:18px;flex-wrap:wrap}
.js .tones{display:flex}
.tone{appearance:none;width:32px;height:32px;padding:0;border-radius:99px;border:0;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(22,33,31,.14)}
.tone[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}
.tones-note{font-size:14px;color:var(--muted);flex-basis:100%}
.legend{display:flex;align-items:center;gap:8px 20px;margin-top:16px;font-size:14px;color:var(--muted);flex-wrap:wrap}
.key{display:inline-flex;align-items:center;gap:9px}
.ramp{display:flex;gap:2px}.ramp i{display:block;width:13px;height:13px;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(22,33,31,.08)}
.dash{width:18px;height:13px;border-radius:4px;border:1.5px dashed var(--accent)}

/* 09:05 */
.offline{width:100%;max-width:420px;font-size:14px;line-height:1.35}
.offline-tag{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--muted);margin-bottom:12px}
.row{display:flex;align-items:center;gap:11px;padding:11px 13px}
.tile{position:relative;width:40px;height:40px;border-radius:12px;background:var(--sunk);display:flex;align-items:center;justify-content:center;flex:none}
.badge{position:absolute;right:-3px;bottom:-3px;width:15px;height:15px;border-radius:99px;background:var(--accent);border:2px solid #fff;display:flex;align-items:center;justify-content:center;box-sizing:content-box}
.grow{flex:1;min-width:0}
.name{font-weight:600;font-size:15.5px;letter-spacing:-.015em}
.sub{font-size:12.5px;color:var(--muted)}.sub-t{margin-top:3px}
.saved{font-size:14px;color:var(--accent);margin-top:10px;font-weight:500}

/* 19:30 */
.answer{width:100%;max-width:420px;background:var(--card);border-radius:26px;box-shadow:var(--shadow);padding:clamp(22px,2.4vw,30px) clamp(22px,2.4vw,32px)}
.answer-line{font-size:clamp(17px,.3vw + 16px,19px);color:var(--muted)}
.answer-big{font-family:var(--mono);font-weight:500;font-size:clamp(36px,1.5vw + 29px,48px);letter-spacing:-.05em;margin:4px 0;color:var(--ink)}

/* 22:00, and the end of the page */
.night{background:linear-gradient(170deg,#0F5E5A,#0A4441 45%,#072F2D);color:#F3F5F2;padding-top:clamp(56px,7.4vw,96px)}
.night :focus-visible{outline-color:#F3F5F2}
.night-head{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.night-head .mark{width:64px;height:64px}
.night .time{color:#BEDAD5;margin-bottom:12px}
.night h2{font-size:clamp(36px,3.2vw + 24px,66px);max-width:11em}
.myth{font-size:clamp(17px,.5vw + 15px,20px);color:#CBE0DB;margin-top:clamp(16px,2vw,24px);max-width:30em}
.night-facts{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(26px,3.6vw,50px);padding-block:clamp(44px,5.8vw,76px) clamp(40px,5.4vw,70px)}
.night-facts p{color:#BAD4CF;font-size:15.5px}
@media (min-width:720px){
  .night-head{grid-template-columns:110px minmax(0,1fr)}
  .night-head .mark{width:92px;height:92px}
  .night-facts{padding-left:calc(110px + clamp(18px,3vw,40px))}
}
@media (min-width:1000px){.night-facts{grid-template-columns:1fr 1.1fr 1fr}}
@media (min-width:1100px){
  .night-head{grid-template-columns:150px minmax(0,1fr)}
  .night-facts{padding-left:190px}
}

/* Footer */
.foot{border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.foot-in{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(20px,3vw,36px);align-items:start;padding-block:clamp(28px,3.4vw,44px) clamp(28px,3vw,40px)}
.foot-brand{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--ink);font-size:16px}
.foot-note{max-width:34em}.foot-note+.foot-note{margin-top:8px}
.foot-links{display:flex;flex-direction:column;gap:5px}
.foot-links a{text-decoration:none;overflow-wrap:anywhere}.foot-links a:hover{text-decoration:underline}
.foot-d{background:#072F2D;border-color:rgba(255,255,255,.14);color:#A9C7C2}.foot-d :focus-visible{outline-color:#F3F5F2}.foot-d .foot-brand{color:#F3F5F2}
@media (min-width:900px){.foot-in{grid-template-columns:200px minmax(0,1fr) auto}.foot-links{text-align:right}}

/* Privacy, support, terms */
.doc{max-width:680px;padding-block:clamp(20px,3.4vw,44px) clamp(44px,6vw,80px)}
.doc h1{font-size:clamp(38px,3vw + 26px,60px);line-height:1.02;letter-spacing:-.04em;margin-bottom:14px}
.doc h2{font-size:21px;letter-spacing:-.02em;line-height:1.25;margin:30px 0 7px}
.doc p{color:var(--muted)}.doc p+p{margin-top:9px}
.doc a{color:var(--accent);overflow-wrap:anywhere}
.doc .updated{font-family:var(--mono);font-size:14px;color:var(--muted)}
.doc .draft{margin:18px 0 8px;padding:13px 17px;border-radius:14px;background:var(--soft);color:var(--deep);font-size:15.5px;font-weight:500}
.doc .path{color:var(--ink);font-weight:500}

@media (prefers-reduced-motion:reduce){
  .track .pulse{animation:none;display:none}
  .zone polygon:first-child{transition:none}
}
