:root{color-scheme:light;--ink:#24231f;--muted:#716d62;--paper:#f4f0e6;--panel:#ebe4d5;--line:#cfc6b3;--rust:#9a442e;--green:#31473e;--white:#fffdf7;/* Previous font stacks, retained for an easy rollback. */--font-ui-previous:Inter,ui-sans-serif,system-ui,sans-serif;--font-display-previous:Georgia,"Times New Roman",serif;/* Active typography: change these two variables to experiment site-wide. */--font-ui:"Avenir Next",Avenir,"Helvetica Neue",Helvetica,Arial,sans-serif;--font-display:var(--font-ui);font-family:var(--font-ui);background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 80% 5%,#e3d8c3 0,transparent 30rem),var(--paper)}button,a{font:inherit}button{color:inherit}.masthead{min-height:112px;padding:28px clamp(20px,5vw,72px);border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:22px}.wordmark{font:500 clamp(30px,4vw,48px)/1 var(--font-display);color:var(--ink);text-decoration:none}.masthead p{color:var(--muted);margin:0}.prototype-tag{margin-left:auto;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700;color:var(--rust);border:1px solid currentColor;border-radius:99px;padding:7px 10px}.journey{padding:18px clamp(20px,5vw,72px);display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px}.journey button{border:0;background:none;padding:5px 0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.journey button:disabled{opacity:.45;cursor:default;text-decoration:none}.screen{display:none;min-height:620px;padding:clamp(28px,6vw,84px) clamp(20px,7vw,104px) 90px}.screen.active{display:block;animation:appear .35s ease}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;color:var(--rust);margin:0 0 13px}.screen h1{font:500 clamp(44px,7vw,88px)/.98 var(--font-display);letter-spacing:-.045em;margin:0;max-width:900px}.lede{font:400 clamp(17px,2vw,22px)/1.55 var(--font-display);color:#4c4941;max-width:760px}.screen-copy{max-width:980px}.years{margin-top:72px;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line)}.years button{position:relative;text-align:left;background:none;border:0;border-right:1px solid var(--line);padding:26px 18px;min-height:140px}.years button:before{content:"";position:absolute;top:-6px;left:18px;width:11px;height:11px;border-radius:50%;background:var(--line)}.years strong{display:block;font:500 clamp(25px,3vw,42px) var(--font-display)}.years span{display:block;color:var(--muted);font-size:12px;margin-top:6px}.years .available{background:var(--green);color:var(--white);cursor:pointer;transform:translateY(-8px);box-shadow:0 18px 35px #26352e30}.years .available:before{background:var(--rust)}.years .available span{color:#d9e0da}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:28px}.section-heading h1{font-size:clamp(44px,6vw,76px)}.section-heading>p{max-width:470px;color:var(--muted);line-height:1.55}.map-card{position:relative;overflow:hidden;height:min(56vw,560px);min-height:390px;border:1px solid #aebbb5;border-radius:3px;background:linear-gradient(155deg,#dbe7e4,#b8cfca);box-shadow:0 25px 60px #30483f20}.land{position:absolute;background:#b9c0a7;border:1px solid #99a188;filter:drop-shadow(0 5px 6px #68817a30)}.land-americas{left:9%;top:14%;width:23%;height:70%;border-radius:55% 35% 55% 40%;clip-path:polygon(15% 0,80% 6%,100% 30%,68% 44%,61% 100%,39% 91%,31% 58%,0 38%)}.land-eurasia{left:42%;top:10%;width:49%;height:42%;border-radius:40%;clip-path:polygon(4% 24%,21% 5%,60% 0,100% 35%,81% 81%,55% 69%,35% 100%,12% 73%)}.land-africa{left:46%;top:40%;width:23%;height:43%;border-radius:45% 50% 55% 40%;clip-path:polygon(5% 0,95% 6%,77% 65%,51% 100%,19% 72%)}.land-australia{right:5%;bottom:12%;width:16%;height:18%;border-radius:45%}.pin{position:absolute;left:var(--x);top:var(--y);border:0;background:none;cursor:pointer;display:flex;align-items:center;gap:7px;padding:8px;transform:translate(-12px,-12px);font-size:12px;font-weight:800}.pin i,.map-key i{display:block;width:15px;height:15px;border-radius:50% 50% 50% 0;background:var(--rust);border:2px solid var(--white);transform:rotate(-45deg);box-shadow:0 2px 8px #1115}.pin span{background:#fffdf7dd;border-radius:3px;padding:5px 7px;box-shadow:0 3px 8px #1112}.pin:hover i,.pin:focus-visible i{transform:rotate(-45deg) scale(1.35)}.map-key{position:absolute;left:18px;bottom:18px;display:flex;gap:8px;align-items:center;padding:8px 11px;background:#fffdf7d9;font-size:11px}.map-key i{width:10px;height:10px;border:0}.settlement-hero{padding-bottom:48px;border-bottom:1px solid var(--line)}.region{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:12px;font-weight:700}.aspect-list{display:grid;grid-template-columns:repeat(3,1fr)}.aspect-list button{text-align:left;border:0;border-right:1px solid var(--line);background:transparent;padding:34px 26px;cursor:pointer;min-height:210px}.aspect-list button:hover,.aspect-list button:focus-visible{background:var(--green);color:var(--white)}.aspect-list span{display:block;color:var(--rust);font:600 13px var(--font-display)}.aspect-list strong{display:block;font:500 34px var(--font-display);margin:23px 0 10px}.aspect-list small{display:block;color:var(--muted);line-height:1.5}.aspect-list button:hover small,.aspect-list button:focus-visible small{color:#d9e0da}.back{border:0;background:none;color:var(--rust);padding:0 0 38px;cursor:pointer}.article-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(30px,6vw,80px);margin-top:60px}.article-grid h2{font:500 27px var(--font-display)}.article-grid p{font:17px/1.7 var(--font-display);color:#4c4941}.article-grid aside{background:var(--green);color:var(--white);padding:32px}.article-grid aside .eyebrow{color:#e69a80}.article-grid aside p:last-child{color:#dce3de}footer{border-top:1px solid var(--line);padding:20px clamp(20px,5vw,72px);display:flex;gap:20px;font-size:12px;color:var(--muted)}footer strong{color:var(--rust);white-space:nowrap}@keyframes appear{from{opacity:0;transform:translateY(8px)}}
button:focus-visible,a:focus-visible{outline:3px solid #c17255;outline-offset:3px}
@media(max-width:760px){.masthead{align-items:flex-start;flex-wrap:wrap}.masthead p{order:3;width:100%}.prototype-tag{margin-left:auto}.screen{min-height:580px}.journey{overflow:auto}.years{grid-template-columns:1fr 1fr}.years button{border-bottom:1px solid var(--line)}.years .available{grid-column:span 2}.section-heading{display:block}.map-card{min-height:420px}.pin span{font-size:10px}.aspect-list,.article-grid{grid-template-columns:1fr}.aspect-list button{min-height:150px;border-bottom:1px solid var(--line)}footer{display:block}footer span{display:block;margin-top:8px}}

/* Golden World timeline direction */
#timeline{position:relative;isolation:isolate;overflow:hidden;min-height:720px;padding-top:clamp(52px,7vw,88px);padding-bottom:235px;color:#fff4ce;background-color:#092a38;background-image:linear-gradient(90deg,#061f2b70 0%,#092a3845 30%,#092a3814 55%,transparent 100%),linear-gradient(180deg,transparent 58%,#061f2b42 100%),url("assets/kan-homepage-hero-v5-round-earth.png");background-size:cover;background-position:center;background-repeat:no-repeat}
#timeline:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#041b253d 0,transparent 42%);pointer-events:none}
#timeline .timeline-sky{display:none}
.timeline-sun{position:absolute;right:6%;top:0;width:290px;height:290px;border-radius:50%;background:radial-gradient(circle,#fff7bc,#f4b73b 32%,#d66a30 57%,transparent 71%);opacity:.54;filter:blur(2px)}
.timeline-earth{position:absolute;right:-75px;top:54px;width:450px;height:450px;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 31% 26%,#70ddf2,#178fb8 35%,#075472 69%,#032a38);box-shadow:-25px 30px 80px #001723aa,0 0 0 2px #a1ecff55,0 0 60px #42c6e755;transform:rotate(-10deg)}
.timeline-earth:before{content:"";position:absolute;inset:7%;background:linear-gradient(35deg,#88b75c,#3d7848);clip-path:polygon(4% 20%,23% 5%,41% 11%,50% 24%,66% 19%,82% 30%,72% 44%,56% 40%,48% 55%,34% 50%,27% 65%,13% 57%,5% 41%,0 32%,84% 55%,98% 68%,89% 84%,72% 88%,60% 74%,47% 71%,38% 59%);filter:drop-shadow(5px 6px 2px #17483299)}
.timeline-earth:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse at 31% 28%,transparent 0 34%,#fff7 35% 37%,transparent 39%),linear-gradient(110deg,transparent 39%,#001b2eaa 72%)}
.timeline-orbit{position:absolute;right:-120px;top:180px;width:560px;height:190px;border:1px solid #ffe7a977;border-radius:50%;transform:rotate(-17deg)}
.timeline-horizon{position:absolute;left:0;right:0;bottom:0;height:195px;background:linear-gradient(180deg,transparent 0 5%,#2d5948 6% 43%,#15372f 44%);clip-path:polygon(0 40%,7% 29%,13% 35%,20% 13%,27% 35%,36% 21%,42% 33%,50% 10%,58% 31%,66% 18%,75% 35%,83% 15%,91% 32%,100% 20%,100% 100%,0 100%)}
#timeline .timeline-copy{position:relative;max-width:520px;opacity:.76;text-shadow:0 2px 12px #001923}
#timeline .eyebrow{color:#ffc85a;letter-spacing:.2em;opacity:.8}
#timeline h1{color:#fff4ce;font-size:clamp(40px,5.8vw,68px);max-width:540px}
#timeline .lede{color:#eef5e5;max-width:490px;font-size:clamp(15px,1.55vw,18px)}
#timeline .years{position:absolute;z-index:2;left:clamp(20px,7vw,104px);right:clamp(20px,7vw,104px);bottom:48px;margin:0;border:0;display:grid;grid-template-columns:repeat(5,1fr)}
#timeline .years:before{content:"";position:absolute;left:8%;right:8%;top:20px;height:4px;background:linear-gradient(90deg,#b8c5be88,#ffc85a 23% 29%,#b8c5be88 29%);box-shadow:0 2px 7px #0008}
#timeline .years button{min-height:112px;padding:47px 5px 8px;text-align:center;border:0;background:transparent;color:#c3d2c9}
#timeline .years button:before{width:15px;height:15px;top:14px;left:calc(50% - 7px);border-radius:0;background:#758983;border:2px solid #d7e2da;transform:rotate(45deg);box-shadow:0 2px 8px #0009}
#timeline .years strong{color:#d6dfd8;font-size:clamp(20px,3vw,34px)}
#timeline .years span{color:#c3d2c9;font-size:9px;text-transform:uppercase;letter-spacing:.1em}
#timeline .years .available{color:#fff4ce;background:linear-gradient(180deg,transparent,#d59b3035);transform:none;box-shadow:none}
#timeline .years .available:before{background:#ffc85a;border-color:#fff2b8;box-shadow:0 0 0 7px #eab74a32,0 0 24px #ffc84d}
#timeline .years .available strong{color:#fff1b8}
#timeline .years .available span{color:#ffc85a}
#timeline .years .available:hover{background:linear-gradient(180deg,transparent,#e7a62e55)}

@media(max-width:760px){#timeline{min-height:760px;padding:42px 20px 310px}#timeline .timeline-earth{width:330px;height:330px;right:-135px;top:190px;opacity:.72}#timeline .timeline-orbit{display:none}#timeline .years{left:20px;right:20px;bottom:34px;grid-template-columns:1fr 1fr}#timeline .years:before{display:none}#timeline .years button{min-height:auto;padding:13px 8px;border-top:1px solid #fff4}#timeline .years button:before{display:none}#timeline .years .available{grid-column:span 2}}

/* Innovation world-map screen */
#map{position:relative;isolation:isolate;overflow:hidden;color:#fff4ce;background:linear-gradient(145deg,#092a38,#155864 62%,#9e5834)}
#map:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 12% 16%,#fff 0 1px,transparent 2px),radial-gradient(circle at 31% 10%,#fff 0 1px,transparent 2px),radial-gradient(circle at 72% 15%,#fff 0 1px,transparent 2px),linear-gradient(135deg,transparent 48%,#fff1 48.2%,transparent 48.5%)}
#map .map-sky{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.map-sun{position:absolute;right:-30px;top:-90px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,#fff6bc,#efae37 34%,#c95d2c 57%,transparent 71%);opacity:.42}
#map .section-heading{position:relative;align-items:end;margin-bottom:30px}
#map .section-heading h1{color:#fff4ce;font-size:clamp(34px,4.8vw,64px);white-space:nowrap;text-shadow:0 2px 14px #001923}
#map .section-heading .eyebrow{color:#ffc85a;letter-spacing:.2em}
#map .map-intro{max-width:430px;padding-left:18px;border-left:2px solid #ffc85a}
#map .map-intro strong{display:block;color:#ffc85a;text-transform:uppercase;letter-spacing:.13em;font-size:11px;margin-bottom:9px}
#map .map-intro p{margin:0;color:#dcebe4;font:15px/1.55 var(--font-display)}
.map-frame{position:relative}
#map .map-card{position:relative;width:100%;height:auto;min-height:0;aspect-ratio:2/1;overflow:hidden;border:1px solid #f3c86988;border-radius:4px;background-image:linear-gradient(180deg,#072a3740,#031d2b26),url("assets/world-map-natural-earth.jpg");background-size:cover;background-position:center;box-shadow:0 28px 70px #00192388,0 0 0 1px #082934}
#map .map-card:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 70px #00182277;background:linear-gradient(180deg,#0a31441f,transparent 65%,#001d2f4d)}
.map-grid{position:absolute;inset:0;z-index:1;opacity:.22;background-image:linear-gradient(#d4eef222 1px,transparent 1px),linear-gradient(90deg,#d4eef222 1px,transparent 1px);background-size:10% 20%}
#map .pin{z-index:4;left:var(--x);top:var(--y);transform:translate(-15px,-15px);display:flex;align-items:center;gap:10px;color:#fff4ce}
#map .pin i{flex:0 0 auto;width:19px;height:19px;background:#ffc85a;border:3px solid #fff5c9;box-shadow:0 0 0 8px #ffc85a33,0 0 24px #ffc85a;animation:map-pulse 2.4s ease-in-out infinite}
#map .pin span{display:block;text-align:left;transform:translateX(-100%) translateX(-24px);background:#06243180;border:1px solid #efc46766;border-radius:3px;padding:6px 8px;box-shadow:0 6px 16px #00182266;white-space:nowrap;backdrop-filter:blur(2px)}
#map .pin strong{display:block;color:#fff0b5;font:500 13px var(--font-display)}
#map .pin small{display:block;margin-top:2px;color:#d1ded9;font-size:7px;text-transform:uppercase;letter-spacing:.09em}
#map .pin:hover i,#map .pin:focus-visible i{transform:rotate(-45deg) scale(1.22)}
#map .map-key{z-index:3;left:18px;bottom:18px;background:#062431dd;color:#dcebe4;border:1px solid #efd17a55;text-transform:uppercase;letter-spacing:.09em;font-size:9px}
#map .map-key i{background:#ffc85a;border:0;box-shadow:0 0 12px #ffc85a}
.map-date{position:absolute;z-index:3;right:20px;bottom:15px;color:#fff1b8;font:500 clamp(16px,2.2vw,28px) var(--font-display);text-shadow:0 2px 12px #001923}
.map-source{margin:9px 0 0;color:#b8ccc5;font-size:10px;letter-spacing:.06em;text-align:right}
@keyframes map-pulse{0%,100%{box-shadow:0 0 0 6px #ffc85a28,0 0 20px #ffc85a}50%{box-shadow:0 0 0 11px #ffc85a10,0 0 30px #ffc85a}}

@media(max-width:760px){#map{padding:42px 20px 70px}#map .section-heading{display:block}#map .section-heading h1{font-size:clamp(22px,6.5vw,38px)}#map .map-intro{margin-top:24px}#map .map-card{aspect-ratio:1.45/1;background-size:cover;background-position:center}#map .pin span{transform:translateX(-100%) translateX(-20px);padding:5px 6px}#map .pin strong{font-size:11px}#map .pin small{white-space:normal;max-width:100px;font-size:6px}#map .map-key{display:none}.map-date{right:10px;bottom:8px}.map-source{text-align:left}}
@media(prefers-reduced-motion:reduce){#map .pin i{animation:none}}

/* Integrated full-viewport shell for the timeline and year map */
body[data-screen="timeline"],body[data-screen="map"],body[data-screen="globe"]{height:100dvh;overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:#092a38;color:#fff4ce}
body[data-screen="timeline"] .masthead,body[data-screen="map"] .masthead{min-height:0;padding:12px clamp(20px,4vw,58px);align-items:center;gap:16px;border-bottom:1px solid #d9c27c33;background:#092a38;color:#fff4ce}
body[data-screen="timeline"] .wordmark,body[data-screen="map"] .wordmark{font-size:clamp(24px,2.4vw,34px);color:#fff4ce}
body[data-screen="timeline"] .masthead p,body[data-screen="map"] .masthead p{color:#c8dad3;font-size:12px}
body[data-screen="timeline"] .prototype-tag,body[data-screen="map"] .prototype-tag{color:#ffc85a;border-color:#ffc85a88;padding:5px 8px;font-size:9px}
body[data-screen="timeline"] .journey,body[data-screen="map"] .journey,body[data-screen="globe"] .journey{min-height:0;padding:7px clamp(20px,4vw,58px);border-bottom:1px solid #d9c27c22;background:#0b3340;color:#b9cec7;font-size:11px}
body[data-screen="timeline"] .journey button,body[data-screen="map"] .journey button,body[data-screen="globe"] .journey button{color:#e7dba9}
body[data-screen="timeline"] main,body[data-screen="map"] main,body[data-screen="globe"] main{min-height:0;overflow:hidden}
body[data-screen="timeline"] .screen.active,body[data-screen="map"] .screen.active,body[data-screen="globe"] .screen.active{height:100%;min-height:0}
body[data-screen="timeline"] footer,body[data-screen="map"] footer,body[data-screen="globe"] footer{min-height:0;padding:8px clamp(20px,4vw,58px);gap:14px;border-top:1px solid #d9c27c33;background:#092a38;color:#aebfba;font-size:10px;line-height:1.35}
body[data-screen="timeline"] footer strong,body[data-screen="map"] footer strong,body[data-screen="globe"] footer strong{color:#ffc85a}

body[data-screen="timeline"] #timeline{height:100%;min-height:0;padding:clamp(18px,3.5vh,42px) clamp(20px,7vw,104px) clamp(112px,17vh,158px)}
body[data-screen="timeline"] #timeline h1{font-size:clamp(38px,8vh,76px)}
body[data-screen="timeline"] #timeline .lede{font-size:clamp(14px,2.2vh,20px)}
body[data-screen="timeline"] #timeline .timeline-earth{width:clamp(270px,35vw,440px);height:clamp(270px,35vw,440px);top:clamp(8px,4vh,40px)}
body[data-screen="timeline"] #timeline .years{bottom:10px}
body[data-screen="timeline"] #timeline .years button{min-height:88px;padding-top:40px}
body[data-screen="timeline"] #timeline .years button:before{top:11px}
body[data-screen="timeline"] #timeline .years:before{top:18px}

body[data-screen="map"] #map{height:100%;min-height:0;padding:clamp(8px,1.5vh,16px) clamp(14px,2vw,28px) 4px;display:flex;flex-direction:column}
body[data-screen="map"] #map .section-heading{flex:0 0 auto;margin-bottom:10px}
body[data-screen="map"] #map .section-heading h1{font-size:clamp(30px,5.5vh,54px);line-height:.95}
body[data-screen="map"] #map .section-heading .eyebrow{margin-bottom:6px}
body[data-screen="map"] #map .map-intro p{font-size:clamp(12px,1.7vh,15px)}
body[data-screen="map"] #map .map-frame{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
body[data-screen="map"] #map .map-card{flex:0 1 auto;min-height:0;width:100%;max-height:100%;aspect-ratio:2/1;background-size:cover}
body[data-screen="map"] #map .map-source{flex:0 0 auto;width:100%;margin-top:4px;font-size:8px}

@media(max-width:760px){body[data-screen="timeline"] .masthead,body[data-screen="map"] .masthead{padding:8px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:8px}body[data-screen="timeline"] .masthead p,body[data-screen="map"] .masthead p{order:initial;width:auto;font-size:9px;line-height:1.2}body[data-screen="timeline"] .prototype-tag,body[data-screen="map"] .prototype-tag{margin-left:0;white-space:nowrap}body[data-screen="timeline"] .journey,body[data-screen="map"] .journey{padding:5px 14px}body[data-screen="timeline"] footer,body[data-screen="map"] footer{padding:6px 14px;display:flex;font-size:8px}body[data-screen="timeline"] footer span,body[data-screen="map"] footer span{display:block;margin-top:0}body[data-screen="timeline"] #timeline{padding:18px 18px 210px}body[data-screen="timeline"] #timeline h1{font-size:clamp(34px,6.5vh,54px)}body[data-screen="timeline"] #timeline .lede{max-width:70%;font-size:13px}body[data-screen="timeline"] #timeline .timeline-earth{width:270px;height:270px;right:-125px;top:70px}body[data-screen="timeline"] #timeline .years{left:16px;right:16px;bottom:6px}body[data-screen="timeline"] #timeline .years button{min-height:0;padding:8px}body[data-screen="map"] #map{padding:8px 14px 4px}body[data-screen="map"] #map .section-heading{display:flex;align-items:flex-end;gap:12px}body[data-screen="map"] #map .section-heading h1{font-size:clamp(26px,4.8vh,40px)}body[data-screen="map"] #map .map-intro{margin-top:0;padding-left:10px}body[data-screen="map"] #map .map-intro strong{margin-bottom:3px;font-size:8px}body[data-screen="map"] #map .map-intro p{font-size:10px;line-height:1.25}body[data-screen="map"] #map .map-card{aspect-ratio:2/1;max-height:100%}}

@media(max-height:700px) and (min-width:761px){body[data-screen="timeline"] #timeline{padding-top:16px;padding-bottom:102px}body[data-screen="timeline"] #timeline h1{font-size:48px}body[data-screen="timeline"] #timeline .lede{font-size:15px}body[data-screen="timeline"] #timeline .timeline-earth{width:300px;height:300px;top:8px}body[data-screen="timeline"] #timeline .years button{min-height:76px;padding-top:36px}body[data-screen="map"] #map .section-heading h1{font-size:36px}body[data-screen="map"] #map .map-intro p{font-size:12px}}

/* Reserve a real row for the year rail so it cannot be clipped. */
body[data-screen="timeline"],body[data-screen="map"],body[data-screen="globe"]{height:100vh;height:100dvh;min-height:100vh;min-height:100dvh}
body[data-screen="timeline"] #timeline{display:grid;grid-template-rows:minmax(0,1fr) auto;padding:clamp(18px,3vh,36px) clamp(20px,7vw,104px) 8px}
body[data-screen="timeline"] #timeline .timeline-copy{align-self:start}
body[data-screen="timeline"] #timeline .timeline-earth{width:clamp(340px,44vw,590px);height:clamp(340px,44vw,590px);right:-5vw;top:clamp(0px,2vh,20px)}
body[data-screen="timeline"] #timeline .timeline-orbit{width:680px;height:230px;right:-150px;top:170px}
body[data-screen="timeline"] #timeline .years{position:relative;left:auto;right:auto;bottom:auto;align-self:end;width:100%;min-height:96px;overflow:visible}
body[data-screen="timeline"] #timeline .years button{min-height:96px;padding:43px 5px 10px;overflow:visible}
body[data-screen="timeline"] #timeline .years button:before{top:13px}
body[data-screen="timeline"] #timeline .years:before{top:20px}

@media(max-width:760px){body[data-screen="timeline"] #timeline{display:grid;grid-template-rows:minmax(0,1fr) auto;padding:16px 16px 6px}body[data-screen="timeline"] #timeline .timeline-copy{max-width:72%}body[data-screen="timeline"] #timeline .timeline-earth{width:clamp(270px,70vw,380px);height:clamp(270px,70vw,380px);right:-125px;top:45px}body[data-screen="timeline"] #timeline .years{position:relative;left:auto;right:auto;bottom:auto;min-height:0}body[data-screen="timeline"] #timeline .years button{min-height:0;padding:8px;overflow:visible}}

@media(max-height:700px) and (min-width:761px){body[data-screen="timeline"] #timeline{padding:10px clamp(20px,7vw,104px) 4px}body[data-screen="timeline"] #timeline .timeline-earth{width:360px;height:360px;top:0}body[data-screen="timeline"] #timeline .years{min-height:82px}body[data-screen="timeline"] #timeline .years button{min-height:82px;padding:38px 5px 7px}}

/* Settlement scene */
body[data-screen="settlement"]{height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:#092a38;color:#fff4ce}
body[data-screen="settlement"] .masthead{min-height:0;padding:12px clamp(20px,4vw,58px);align-items:center;gap:16px;border-bottom:1px solid #d9c27c33;background:#092a38;color:#fff4ce}
body[data-screen="settlement"] .wordmark{font-size:clamp(24px,2.4vw,34px);color:#fff4ce}
body[data-screen="settlement"] .masthead p{color:#c8dad3;font-size:12px}
body[data-screen="settlement"] .prototype-tag{color:#ffc85a;border-color:#ffc85a88;padding:5px 8px;font-size:9px}
body[data-screen="settlement"] .journey{min-height:0;padding:7px clamp(20px,4vw,58px);border-bottom:1px solid #d9c27c22;background:#0b3340;color:#b9cec7;font-size:11px}
body[data-screen="settlement"] .journey button{color:#e7dba9}
body[data-screen="settlement"] main{min-height:0;overflow:hidden}
body[data-screen="settlement"] #settlement{height:100%;min-height:0;padding:clamp(8px,1.5vh,16px) clamp(14px,2vw,28px);background:linear-gradient(145deg,#092a38,#155864 62%,#9e5834)}
body[data-screen="settlement"] footer{min-height:0;padding:8px clamp(20px,4vw,58px);gap:14px;border-top:1px solid #d9c27c33;background:#092a38;color:#aebfba;font-size:10px;line-height:1.35}
body[data-screen="settlement"] footer strong{color:#ffc85a}
.settlement-visual{position:relative;width:100%;height:100%;overflow:hidden;border:1px solid #f3c86988;border-radius:4px;background-image:linear-gradient(90deg,#031d2b70 0,transparent 52%),linear-gradient(180deg,#072a371f,transparent 55%,#001d2f66),url("assets/dhra-9300-bce-reconstruction.jpg");background-size:cover;background-position:center;box-shadow:0 28px 70px #00192388,0 0 0 1px #082934}
.settlement-visual[data-settlement="shubayqa-6"],.settlement-visual[data-settlement="gobekli-tepe"]{background:#174750}
.settlement-visual[data-settlement="sardis"]{background-image:linear-gradient(90deg,#031722c7 0,#05223170 29%,transparent 58%),linear-gradient(180deg,#17293221,transparent 52%,#041b28a8),url("assets/sardis-600-bce-reconstruction.png");background-position:center;background-size:cover}
.settlement-visual[data-settlement="itazuke"]{background-image:linear-gradient(90deg,#031722d4 0,#05243178 29%,transparent 59%),linear-gradient(180deg,#17293218,transparent 52%,#041b28a8),url("assets/itazuke-600-bce-reconstruction.png");background-position:center;background-size:cover}
.settlement-visual[data-settlement="guanzhuang"]{background-image:linear-gradient(90deg,#031722d0 0,#05243172 29%,transparent 58%),linear-gradient(180deg,#17293218,transparent 52%,#041b28a8),url("assets/guanzhuang-600-bce-reconstruction.png");background-position:center;background-size:cover}
.settlement-visual[data-settlement="xuanquanzhi"]{background-image:linear-gradient(90deg,#031722d0 0,#05243172 29%,transparent 58%),linear-gradient(180deg,#17293218,transparent 52%,#041b28a8),url("assets/xuanquanzhi-60-bce-reconstruction.png");background-position:center;background-size:cover}
.settlement-visual[data-settlement="nara"]{background-image:linear-gradient(90deg,#031722d0 0,#05243172 29%,transparent 58%),linear-gradient(180deg,#17293218,transparent 52%,#041b28a8),url("assets/nara-770-ce-reconstruction.png");background-position:center;background-size:cover}
.settlement-visual:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 80px #00182288}
#settlement .settlement-name{position:absolute;z-index:1;top:clamp(10px,2vh,22px);left:clamp(10px,2vw,28px);color:#fff4ce;font-size:clamp(22px,3vw,38px);text-shadow:0 3px 9px #001923,0 0 28px #001923;max-width:calc(100% - 36px)}
.settlement-location{position:absolute;z-index:1;right:clamp(18px,3vw,48px);bottom:clamp(18px,3vh,36px);margin:0;color:#fff1b8;font:600 clamp(12px,1.4vw,17px)/1.2 var(--font-display);letter-spacing:.08em;text-transform:uppercase;text-align:right;text-shadow:0 2px 7px #001923,0 0 20px #001923}

@media(max-width:760px){body[data-screen="settlement"] .masthead{padding:8px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:8px}body[data-screen="settlement"] .masthead p{order:initial;width:auto;font-size:9px;line-height:1.2}body[data-screen="settlement"] .prototype-tag{margin-left:0;white-space:nowrap}body[data-screen="settlement"] .journey{padding:5px 14px}body[data-screen="settlement"] footer{padding:6px 14px;display:flex;font-size:8px}body[data-screen="settlement"] footer span{display:block;margin-top:0}body[data-screen="settlement"] #settlement{padding:8px 10px}.settlement-visual{background-position:58% center}#settlement .settlement-name{top:10px;left:10px;font-size:clamp(20px,5vw,30px)}.settlement-location{right:14px;bottom:14px;max-width:80%;font-size:10px}}
@media(max-height:700px) and (min-width:761px){#settlement .settlement-name{top:12px;font-size:26px}.settlement-location{bottom:16px}}

/* Village screen: compact journey-only header */
.journey-prototype{display:none}
body[data-screen="settlement"]{grid-template-rows:auto minmax(0,1fr) auto}
body[data-screen="settlement"] .masthead{display:none}
body[data-screen="settlement"] .journey-prototype{display:inline-block;margin-left:auto;padding:5px 8px;border:1px solid #ffc85a88;border-radius:99px;color:#ffc85a;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}
@media(max-width:760px){body[data-screen="settlement"] .masthead{display:none}body[data-screen="settlement"] .journey-prototype{padding:4px 6px;font-size:7px}}

/* Reusable settlement-aspect menu */
.settlement-menu{position:absolute;z-index:2;left:clamp(10px,2vw,28px);top:clamp(48px,9vh,86px);display:flex;width:clamp(220px,20vw,280px);flex-direction:column;border-top:1px solid #f2cd6c88;border-bottom:1px solid #f2cd6c66;background:#0624318f;box-shadow:0 14px 35px #00182266;backdrop-filter:blur(4px)}
.settlement-menu button{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:7px;width:100%;padding:8px 10px;border:0;border-top:1px solid #d9c27c22;background:transparent;color:#eef5e5;text-align:left;font:500 clamp(11px,1.1vw,14px)/1.25 var(--font-display);cursor:pointer}
.settlement-menu button[hidden]{display:none}
.settlement-menu button>span:first-child{padding-top:3px;color:#e8b94e;font:700 8px/1 var(--font-ui);letter-spacing:.08em}
.settlement-menu-item-label{min-width:0;overflow-wrap:anywhere}
.settlement-menu button[data-aspect="innovation"]{background:linear-gradient(90deg,#c68d2938,#e7b94b20);color:#f6d77d;border-top-color:#f3c86999;text-shadow:0 1px 10px #e5ae3b22}
.settlement-menu button[data-aspect="innovation"]>span:first-child{color:#ffd86f}
.settlement-menu button[data-aspect="innovation"]:hover,.settlement-menu button[data-aspect="innovation"]:focus-visible,.settlement-menu button[data-aspect="innovation"][aria-current]{background:linear-gradient(90deg,#d29b384f,#f0c85c30);color:#ffe49b}
.settlement-menu button:hover,.settlement-menu button:focus-visible,.settlement-menu button[aria-current]{background:#d7a33b33;color:#fff4ce}
.settlement-menu button[aria-current]{box-shadow:inset 3px 0 #ffc85a}
.settlement-menu button:disabled{color:#aab7b4;opacity:.48;cursor:not-allowed}
.settlement-menu button:disabled:hover{background:transparent;color:#aab7b4}
@media(max-width:760px){.settlement-menu{top:45px;left:10px;width:min(220px,calc(100vw - 20px))}.settlement-menu button{grid-template-columns:18px minmax(0,1fr);padding:6px 8px;font-size:10px}}
@media(max-height:700px) and (min-width:761px){.settlement-menu{top:44px}.settlement-menu button{padding:6px 8px}}

/* In-place settlement information overlay */
.settlement-info-panel{position:absolute;z-index:3;top:clamp(42px,7vh,68px);right:clamp(14px,2vw,30px);bottom:clamp(40px,6vh,62px);left:clamp(250px,23vw,310px);display:flex;flex-direction:column;overflow:auto;padding:clamp(22px,3vw,42px);border:1px solid #f2cd6c88;border-left:3px solid #ffc85a;background:linear-gradient(135deg,#062431bd,#082b37b3);color:#e9f0eb;box-shadow:0 22px 60px #00182299,inset 0 0 50px #00182222;backdrop-filter:blur(4px)}
.settlement-info-panel[hidden]{display:none}
.settlement-info-close{position:absolute;top:12px;right:14px;width:34px;height:34px;border:1px solid #f2cd6c66;border-radius:50%;background:#082e3a99;color:#fff1b8;font:300 24px/1 var(--font-display);cursor:pointer}
.settlement-info-close:hover,.settlement-info-close:focus-visible{background:#d7a33b44;border-color:#ffc85a}
.settlement-info-kicker{margin:0 48px 10px 0;color:#f4cf72;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
#settlement .settlement-info-panel h2{margin:0;color:#fff4ce;font:500 clamp(30px,4.5vw,56px)/1 var(--font-display);letter-spacing:-.035em;text-shadow:0 2px 12px #001923}
.settlement-info-heading-row{display:flex;align-items:center;gap:clamp(12px,2vw,24px);padding-right:44px}
.settlement-info-heading-row h2{min-width:0}
.settlement-narration[hidden]{display:none}
.settlement-narration{display:flex;flex:0 0 auto;align-items:center;gap:7px;margin:0;padding:5px 7px 5px 5px;border:1px solid #d9c27c44;border-radius:99px;background:#062431aa;color:#dce8e2}
.settlement-narration-toggle{display:grid;width:31px;height:31px;place-items:center;padding:0;border:1px solid #efc75f88;border-radius:50%;background:#0a3440;color:#f3cf70;cursor:pointer}
.settlement-narration-toggle:hover,.settlement-narration-toggle:focus-visible{border-color:#ffe29a;background:#124653;color:#fff1bd}
.settlement-narration-toggle svg{width:17px;height:17px;fill:currentColor;overflow:visible}
.settlement-narration-toggle .narration-sound-wave{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.settlement-narration.is-playing .settlement-narration-toggle{background:#b9842c;color:#092a38;box-shadow:0 0 0 4px #ffc85a24}
.settlement-narration label{font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.settlement-narration select{max-width:190px;padding:3px 22px 3px 6px;border:0;border-left:1px solid #d9c27c44;background:#062431;color:#e6eee9;font:10px var(--font-ui)}
.settlement-info-summary{min-width:0}
.settlement-info-panel.has-aspect-image .settlement-info-summary{display:grid;grid-template-columns:minmax(0,65fr) minmax(240px,35fr);gap:clamp(22px,3vw,42px);align-items:start;margin-top:14px}
.settlement-info-panel.has-aspect-image .settlement-info-intro{max-width:none;margin-top:0}
.settlement-info-intro{max-width:720px;margin:14px 0 20px;color:#dbe8e2;font:clamp(14px,1.5vw,18px)/1.5 var(--font-display)}
.settlement-info-paragraph-gap{display:block;height:.5em}
.term-control{display:inline;padding:0;border:0;background:transparent;color:#619db0;font:inherit;line-height:inherit;text-align:inherit;cursor:help}
.term-control:hover,.term-control:focus-visible{color:#78b3c4;text-shadow:0 0 10px #438da455}
.term-popup-layer[hidden]{display:none}
.term-popup-layer{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:24px;background:#00131b4d;backdrop-filter:blur(1px);pointer-events:none}
.term-popup{position:relative;width:min(560px,calc(100vw - 36px));max-height:min(620px,calc(100vh - 48px));overflow:auto;padding:clamp(24px,4vw,40px);border:1px solid #8bcddd88;border-left:3px solid #83cfe4;background:linear-gradient(145deg,#062b38f7,#041f2af7);color:#dbe8e2;box-shadow:0 28px 80px #000d}
.term-popup-kicker{margin:0 42px 8px 0;color:#91d1e2;font:800 9px/1.2 var(--font-ui);letter-spacing:.15em;text-transform:uppercase}
#settlement .term-popup h2{margin:0;color:#78b3c4;font:500 clamp(28px,4vw,42px)/1.05 var(--font-display)}
#term-popup-body{margin:16px 0 24px;font:clamp(14px,1.4vw,17px)/1.6 var(--font-display)}
.term-popup-sources{padding-top:14px;border-top:1px solid #8bcddd44}
.term-popup-sources h3{margin:0;color:#91d1e2;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.term-popup-sources ul{margin:8px 0 0;padding-left:18px;color:#b9cac4;font-size:10px;line-height:1.45}
.term-popup-sources a{color:#b7e7f2;text-underline-offset:2px}
.settlement-info-body{display:grid;grid-template-columns:1fr 1fr;gap:12px clamp(24px,4vw,56px);max-width:900px;padding-top:18px;border-top:1px solid #d9c27c33}
.settlement-info-body[hidden]{display:none}
.settlement-info-panel.is-summary-only .settlement-info-intro{max-width:820px;font-size:clamp(15px,1.7vw,20px);line-height:1.6}
.settlement-info-panel.is-summary-only .settlement-info-body{display:none}
.settlement-info-impact[hidden]{display:none}
.settlement-info-impact{max-width:820px;margin:0 0 20px}
.settlement-info-impact p{margin:0;color:#efd58e;font:clamp(15px,1.7vw,20px)/1.6 var(--font-display)}
.settlement-info-figure[hidden]{display:none}
.settlement-info-figure{position:relative;margin:0;overflow:hidden;border:1px solid #e6c56866;background:#062936;box-shadow:0 14px 34px #00151e88}
.settlement-info-figure::after{position:absolute;inset:0;content:"";pointer-events:none;box-shadow:inset 0 0 30px #00192388}
.settlement-info-slides{position:relative;aspect-ratio:4/5;overflow:hidden}
.settlement-info-slide{position:absolute;inset:0;opacity:0;filter:blur(12px);transform:scale(1.025);transition:opacity 1.25s ease,filter 1.35s ease,transform 6.5s linear;pointer-events:none}
.settlement-info-slide.is-active{z-index:1;opacity:1;filter:blur(0);transform:scale(1);pointer-events:auto}
.settlement-info-slide img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.03)}
.settlement-info-slide-caption{position:absolute;z-index:1;right:0;bottom:0;left:0;padding:28px 10px 9px;background:linear-gradient(transparent,#031c25ee 42%);color:#d9e5df;font:9px/1.35 var(--font-ui)}
.settlement-info-image-credit{display:block;margin-top:3px;color:#aebfba;font-size:8px}
.settlement-info-figure a{color:#efd58e;text-decoration-color:#d7a33b99;text-underline-offset:2px}
.settlement-info-slideshow-controls[hidden]{display:none}
.settlement-info-slideshow-controls{position:absolute;z-index:3;top:8px;right:8px;display:flex;align-items:center;gap:4px;padding:4px;border:1px solid #e4c87155;border-radius:99px;background:#03212bd9;color:#f0d17c;backdrop-filter:blur(5px)}
.settlement-info-slideshow-controls button{display:grid;width:24px;height:24px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;font:700 16px/1 var(--font-ui);cursor:pointer}
.settlement-info-slideshow-controls button:hover,.settlement-info-slideshow-controls button:focus-visible{background:#d7a33b44;color:#fff1bd}
#settlement-info-slide-toggle{font-size:9px}
#settlement-info-slide-status{min-width:30px;padding:0 4px;color:#dce7e2;font:8px/1 var(--font-ui);text-align:center}
@media(prefers-reduced-motion:reduce){.settlement-info-slide{transition:none;transform:none}}
.settlement-info-panel.is-innovation{border-color:#e8b94e99;border-left-color:#ffc85a}
#settlement .settlement-info-panel.is-innovation h2{color:#f6d77d}
.settlement-info-panel.is-innovation .settlement-info-intro{color:#efd58e}
.settlement-info-panel.is-innovation .settlement-info-sources{border-top-color:#e8b94e55}
.settlement-info-panel.is-innovation .settlement-info-sources h3,.settlement-info-panel.is-innovation .settlement-info-sources ul{color:#dcbf72}
.settlement-info-panel.is-innovation .settlement-info-sources a{color:#efd58e;text-decoration-color:#ffc85a99}
.settlement-info-panel.is-innovation .settlement-info-sources a:hover,.settlement-info-panel.is-innovation .settlement-info-sources a:focus-visible{color:#ffe9aa}
.settlement-info-body h3,.settlement-info-sources h3{margin:0;color:#f4cf72;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.settlement-info-body p{margin:0;color:#d6e2dd;font:13px/1.55 var(--font-display)}
.settlement-info-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,1fr);gap:clamp(24px,4vw,56px);margin-top:auto;padding-top:18px;border-top:1px solid #d9c27c33}
.settlement-info-sources{min-width:0}
.settlement-info-sources ul{margin:8px 0 0;padding-left:18px;color:#b9cac4;font-size:10px;line-height:1.45}
.settlement-info-sources a{color:#d8e7e1;text-decoration-color:#f4cf7288;text-underline-offset:2px}
.settlement-info-sources a:hover,.settlement-info-sources a:focus-visible{color:#fff1b8;text-decoration-color:#ffc85a}
.settlement-info-research{min-width:0}
.settlement-info-research-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.settlement-info-research h3{margin:0;color:#f4cf72;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.settlement-info-research blockquote{margin:8px 0 0;color:#b9cac4;font:italic 10px/1.5 var(--font-ui)}
.settlement-info-research blockquote::before{content:'“'}
.settlement-info-research blockquote::after{content:'”'}
.research-copy-control{position:relative;display:inline-flex;flex:0 0 auto}
.research-copy-control button{display:grid;width:28px;height:28px;place-items:center;padding:0;border:1px solid #f2cd6c66;border-radius:50%;background:#082e3a99;color:#f4cf72;cursor:pointer}
.research-copy-control button:hover,.research-copy-control button:focus-visible{border-color:#ffc85a;background:#d7a33b44;color:#fff1b8}
.research-copy-control svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.research-copy-tooltip{position:absolute;z-index:5;right:0;bottom:calc(100% + 8px);width:max-content;max-width:190px;padding:6px 8px;border:1px solid #f2cd6c55;border-radius:4px;background:#021b24f2;color:#e5eee9;font:11px/1.3 var(--font-ui);box-shadow:0 8px 22px #00151e99;opacity:0;transform:translateY(3px);transition:opacity .18s ease,transform .18s ease;pointer-events:none}
.research-copy-control:hover .research-copy-tooltip,.research-copy-control:focus-within .research-copy-tooltip{opacity:1;transform:translateY(0)}
.regional-map-proposal[hidden]{display:none}
.settlement-info-panel.is-regional-map{overflow:hidden}
.settlement-info-panel.is-regional-map h2,.settlement-info-panel.is-regional-map .settlement-info-intro{display:none}
.settlement-info-panel.is-regional-map .regional-map-proposal{display:flex;min-height:0;flex:1;flex-direction:column;gap:8px}
.regional-map{display:block;width:100%;min-height:0;flex:1;object-fit:contain;border:1px solid #d8bd6c55;background:#062c38;box-shadow:inset 0 0 45px #00182266}
.settlement-info-panel.is-regional-map .settlement-info-sources{margin-top:8px;padding-top:8px}.settlement-info-panel.is-regional-map .settlement-info-sources ul{margin-top:5px}
@media(max-width:760px){.settlement-info-panel{top:245px;right:10px;bottom:34px;left:10px;padding:18px}.settlement-info-kicker{font-size:7px}#settlement .settlement-info-panel h2{font-size:28px}.settlement-info-heading-row{gap:8px;padding-right:34px}.settlement-narration{padding:3px}.settlement-narration-toggle{width:28px;height:28px}.settlement-narration label,.settlement-narration select{display:none}.settlement-info-panel.has-aspect-image .settlement-info-summary{display:block;margin-top:8px}.settlement-info-intro,.settlement-info-panel.is-summary-only .settlement-info-intro{margin:8px 0 12px;font-size:12px}.settlement-info-panel.has-aspect-image .settlement-info-intro{margin-top:0}.settlement-info-impact{margin:0 0 12px}.settlement-info-impact p{font-size:12px}.settlement-info-figure{max-width:360px;margin:12px auto}.settlement-info-body{grid-template-columns:1fr;gap:6px;padding-top:10px}.settlement-info-body p{font-size:10px}.settlement-info-footer{grid-template-columns:1fr;gap:16px;padding-top:10px}}
@media(max-height:700px) and (min-width:761px){.settlement-info-panel{top:38px;bottom:34px;padding:20px 26px}.settlement-info-intro{margin:8px 0 12px;font-size:15px}.settlement-info-body{padding-top:10px}.settlement-info-sources{padding-top:10px}}

/* Welcome and map screens: compact journey-only header */
body[data-screen="timeline"],body[data-screen="map"],body[data-screen="globe"]{grid-template-rows:auto minmax(0,1fr) auto}
body[data-screen="timeline"] .masthead,body[data-screen="map"] .masthead,body[data-screen="globe"] .masthead{display:none}
body[data-screen="timeline"] .journey-prototype,body[data-screen="map"] .journey-prototype,body[data-screen="globe"] .journey-prototype{display:inline-block;margin-left:auto;padding:5px 8px;border:1px solid #ffc85a88;border-radius:99px;color:#ffc85a;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}
@media(max-width:760px){body[data-screen="timeline"] .masthead,body[data-screen="map"] .masthead,body[data-screen="globe"] .masthead{display:none}body[data-screen="timeline"] .journey-prototype,body[data-screen="map"] .journey-prototype,body[data-screen="globe"] .journey-prototype{padding:4px 6px;font-size:7px}}

/* KAN-033: crop 6% north and 15% south without altering the source map */
body[data-screen="map"] #map .map-card{aspect-ratio:200/79;background-size:cover,100% auto;background-position:center,center 28.571%;background-repeat:no-repeat}

/* Keep case markers unobstructed by offsetting their labels. */
#map .pin span{max-width:110px;transform:translate(8px,18px);white-space:normal}
#map .pin strong{line-height:1.05}
@media(max-width:760px){#map .pin span{max-width:48px;transform:translate(0,16px);padding:4px}#map .pin strong{font-size:9px;overflow-wrap:normal}#map .pin small{display:none}}

/* KAN-036: Home and innovation-led world map */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-cta{position:relative;z-index:2;align-self:end;justify-self:start;display:flex;align-items:center;gap:20px;margin:0 0 clamp(22px,5vh,48px);padding:13px 15px 13px 20px;border:1px solid #ffe39a99;border-radius:3px;background:linear-gradient(135deg,#d3952b,#f0c45e);color:#082b36;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 12px 30px #00192388,0 0 24px #ffc85a22;cursor:pointer}
.home-cta i{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#092f3b;color:#ffe6a3;font:normal 18px/1 var(--font-display);transition:transform .25s ease}
.home-cta:hover i,.home-cta:focus-visible i{transform:translateX(4px)}
body[data-screen="timeline"] #timeline{display:flex;flex-direction:column;justify-content:center;padding:clamp(22px,5vh,54px) clamp(20px,7vw,104px)}
body[data-screen="timeline"] #timeline .timeline-copy{align-self:auto}
body[data-screen="timeline"] #timeline h1{font-size:clamp(40px,5.8vw,68px)}
body[data-screen="timeline"] #timeline .lede{font-size:clamp(15px,1.55vw,18px)}
body[data-screen="timeline"] #timeline .home-actions{position:absolute;right:clamp(22px,5vw,76px);top:50%;z-index:2;display:flex;flex-direction:column;align-items:stretch;gap:12px;transform:translateY(-50%)}
body[data-screen="timeline"] #timeline .home-cta{align-self:auto;margin:0;opacity:.9}
.home-action-globe{position:relative;display:flex}
.home-action-globe .home-cta{width:100%}
.home-cta:disabled{filter:grayscale(.65);opacity:.38!important;cursor:not-allowed}
.home-cta:disabled i{transform:none}
.globe-unavailable-tip{position:absolute;right:0;bottom:calc(100% + 9px);width:260px;padding:9px 11px;border:1px solid #f0cc7766;border-radius:3px;background:#061f2bed;color:#e6eee8;font:10px/1.45 var(--font-ui);letter-spacing:normal;text-align:left;text-transform:none;box-shadow:0 9px 24px #00192399;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .18s ease,transform .18s ease,visibility .18s}
.home-action-globe.is-unavailable:hover .globe-unavailable-tip{opacity:1;visibility:visible;transform:none}
.home-action-globe:not(.is-unavailable) .globe-unavailable-tip{display:none}
.home-ai-trigger{position:absolute;left:clamp(20px,7vw,104px);bottom:clamp(18px,3.5vh,36px);z-index:2;padding:7px 13px;border:1px solid #f2cd6c66;border-radius:99px;background:#062431b8;color:#efd58e;font:500 clamp(11px,1.05vw,13px)/1.3 var(--font-ui);letter-spacing:.02em;text-align:left;box-shadow:0 8px 24px #00192377;backdrop-filter:blur(4px);cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}
.home-ai-trigger:hover,.home-ai-trigger:focus-visible{border-color:#ffc85a;background:#0a3340e6;color:#fff4ce;transform:translateY(-1px)}
.home-ai-layer[hidden]{display:none}
.home-ai-layer{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:24px;background:#02161f8c;backdrop-filter:blur(3px);animation:appear .2s ease}
.home-ai-dialog{position:relative;width:min(540px,calc(100vw - 36px));padding:clamp(24px,4vw,38px);border:1px solid #f2cd6c88;border-left:3px solid #ffc85a;border-radius:4px;background:linear-gradient(145deg,#062b38f7,#041f2af7);color:#e9f0eb;box-shadow:0 28px 80px #000d}
.home-ai-close{position:absolute;top:12px;right:14px;width:32px;height:32px;border:1px solid #f2cd6c66;border-radius:50%;background:#082e3a99;color:#fff1b8;font:300 22px/1 var(--font-display);cursor:pointer}
.home-ai-close:hover,.home-ai-close:focus-visible{background:#d7a33b44;border-color:#ffc85a}
.home-ai-kicker{margin:0 40px 12px 0;color:#ffc85a;font:800 10px/1.2 var(--font-ui);letter-spacing:.15em;text-transform:uppercase}
.home-ai-body{margin:0 0 18px;color:#fff4ce;font:400 clamp(15px,1.5vw,18px)/1.6 var(--font-display)}
.home-ai-footer{margin:0;padding-top:14px;border-top:1px solid #d9c27c33;font:500 12px/1.4 var(--font-ui)}
.home-ai-footer a{color:#efd58e;text-decoration-color:#ffc85a88;text-underline-offset:3px}
.home-ai-footer a:hover,.home-ai-footer a:focus-visible{color:#fff4ce;text-decoration-color:#ffc85a}

body[data-screen="globe"] #globe{position:relative;height:100%;min-height:0;padding:0;overflow:hidden;background:radial-gradient(circle at 68% 38%,#16606b 0,transparent 28%),linear-gradient(145deg,#0b3d4b,#031b26 72%)}
.globe-stage{position:absolute;inset:0;overflow:hidden;touch-action:none}
#globe-canvas{display:block;width:100%;height:100%;outline:none;cursor:grab}
#globe-canvas:active{cursor:grabbing}
.globe-instruction{position:absolute;left:50%;bottom:clamp(16px,3vh,32px);margin:0;color:#d7e7dfaa;font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;transform:translateX(-50%);pointer-events:none;white-space:nowrap}
.globe-status{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.globe-summary{position:absolute;z-index:3;top:clamp(16px,2.5vh,28px);width:min(300px,29vw);padding:13px 15px;border-top:1px solid #efc75f80;background:linear-gradient(180deg,#062431d9,#06243194);color:#dbe7e1;box-shadow:0 10px 30px #00192352;backdrop-filter:blur(5px);pointer-events:none}
.globe-summary-innovation{left:clamp(14px,2.5vw,38px)}
.globe-summary-settlement{right:clamp(14px,2.5vw,38px);text-align:right}
.globe-summary p{margin:0 0 5px;color:#e7c45f;font:700 8px/1 var(--font-ui);letter-spacing:.15em;text-transform:uppercase}
.globe-summary h2{margin:0 0 7px;color:#fff1bd;font:500 clamp(21px,2vw,28px)/1.1 var(--font-display)}
.globe-summary div{font:16px/1.5 var(--font-ui)}
.globe-callout{position:absolute;z-index:2;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s}
.globe-callout.is-visible{visibility:visible}
.globe-callout.is-filtered-out{opacity:0!important;visibility:hidden!important}
.globe-callout-line{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.globe-callout-line line{stroke:#efc75f;stroke-width:1.25;stroke-linecap:round;opacity:.82;vector-effect:non-scaling-stroke}
.globe-location-dot{position:absolute;left:0;top:0;width:15px;height:15px;padding:0;border:2px solid #fff3bd;border-radius:50%;background:#e6ad35;box-shadow:0 0 0 5px #e6ad3530,0 0 18px #ffc85a99;cursor:pointer;pointer-events:auto;transform:translate(-100px,-100px);translate:-50% -50%}
.globe-location-label{position:absolute;left:0;top:0;display:grid;min-width:310px;grid-template-columns:minmax(0,1fr) 38px;grid-template-rows:auto auto;gap:4px 12px;align-items:center;padding:8px 9px 8px 12px;border:1px solid #78939a66;border-radius:3px;background:#062431b8;color:#e8f0e9;text-align:left;box-shadow:0 8px 24px #00192377;backdrop-filter:blur(4px);cursor:pointer;pointer-events:auto;transform:translate(-500px,-500px)}
.globe-location-label span{grid-column:1;font:600 11px/1.25 var(--font-ui);letter-spacing:.025em;white-space:nowrap}
.globe-location-label strong{grid-column:1;color:#f2cc6b;font:500 14px/1.2 var(--font-display);letter-spacing:.01em}
.globe-location-label img{grid-column:2;grid-row:1/3;width:38px;height:38px;border:1px solid #f3cf7466;border-radius:50%;object-fit:cover;box-shadow:0 0 12px #e8b74a33}
.globe-location-label:hover,.globe-location-label:focus-visible{border-color:#ffd978;background:#0a3340d9;outline:none}
.globe-callout.is-active .globe-location-label{border-color:#efc75f;box-shadow:0 8px 24px #00192377,0 0 0 1px #efc75f55}
.globe-callout:has(.globe-location-label:hover,.globe-location-label:focus-visible,.globe-location-dot:hover,.globe-location-dot:focus-visible) .globe-location-dot{scale:1.25;background:#ffd46d}
@media(max-width:600px){.globe-summary{top:8px;width:calc(50% - 12px);padding:8px}.globe-summary-innovation{left:4px}.globe-summary-settlement{right:4px}.globe-summary p{font-size:6px}.globe-summary h2{margin-bottom:4px;font-size:16px}.globe-summary div{font-size:12px;line-height:1.35}.globe-location-label{min-width:230px;grid-template-columns:minmax(0,1fr) 30px;gap:3px 7px;padding:6px 7px 6px 8px}.globe-location-label span{font-size:8px}.globe-location-label strong{font-size:11px}.globe-location-label img{width:30px;height:30px}}
.globe-control{position:absolute;z-index:3;bottom:clamp(13px,2.5vh,27px);margin:0;padding:20px 0 0;border:0;background:transparent;color:#e8c760;text-shadow:0 2px 8px #001923,0 0 18px #001923}
.globe-control legend{position:absolute;top:0;left:0;padding:0;color:#ffd46d;font:700 13px/1 var(--font-ui);letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}
.globe-control legend span{font-size:10px;font-weight:500;letter-spacing:.06em;text-transform:none;opacity:.85}
.globe-control label{display:flex;align-items:flex-start;gap:8px;color:#e8c760;font:500 13px/1.25 var(--font-ui);cursor:pointer}
.globe-control label+label{margin-top:8px}
.globe-control input{width:16px;height:16px;margin:0;flex:0 0 auto;accent-color:#e6ad35}
.globe-control label:hover span,.globe-control input:focus-visible+span{color:#fff1bd}
.globe-mode{left:clamp(14px,2.5vw,38px);min-width:112px}
.globe-filter{right:clamp(10px,1.5vw,22px);display:flex;max-width:min(390px,42vw);flex-direction:column}
.globe-filter label+label{margin-top:6px}
@media(max-width:760px){.globe-control{bottom:10px;padding-top:18px}.globe-mode{left:8px;min-width:96px}.globe-filter{right:8px;max-width:64vw;max-height:230px;overflow:auto}.globe-control legend{font-size:11px}.globe-control label{font-size:10px}.globe-control input{width:14px;height:14px}.globe-instruction{display:none}}

body[data-screen="map"] #map{padding:clamp(5px,1vh,10px) clamp(12px,2vw,28px) 3px}
body[data-screen="map"] #map .map-frame{display:grid;grid-template-rows:minmax(0,1fr) auto clamp(190px,25vh,230px);width:100%;height:100%;align-items:stretch;justify-content:stretch}
body[data-screen="map"] #map .map-card{align-self:center;max-height:100%;aspect-ratio:200/79}
body[data-screen="map"] #map .map-source{margin:2px 0 0;font-size:7px}
.case-connector-layer{position:absolute;inset:0;z-index:3;width:100%;height:100%;overflow:visible;pointer-events:none}
.case-connector-layer line{stroke:#263b42;stroke-width:1.6;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 1px #d5e0da66)}
.case-marker-layer{position:absolute;inset:0;z-index:4;pointer-events:none}
.case-marker{position:absolute;left:var(--x);top:var(--y);width:26px;height:26px;padding:4px;border:0;background:transparent;color:#fff4ce;transform:translate(-13px,-13px);pointer-events:none}
.case-marker.comparison{z-index:1}
.case-marker.adoption{z-index:2}
.case-marker>i{display:block;width:14px;height:14px;margin:2px;border:2px solid #fff5c9;border-radius:50%;background:#ffc85a;box-shadow:0 0 0 4px #ffc85a2b,0 0 18px #ffc85a}
.case-marker.comparison>i{border-color:#d7e5df;background:#4a8b91;box-shadow:0 0 0 4px #9ed5d329}
.case-label{position:absolute;z-index:2;display:block;width:clamp(108px,12vw,148px);padding:7px 9px;border:1px solid #efc46766;border-radius:3px;background:#062431e8;color:#fff4ce;text-align:left;box-shadow:0 6px 16px #00182277;backdrop-filter:blur(4px);pointer-events:none;transition:border-color .2s ease,transform .2s ease,background .2s ease}
button.case-label{font-family:inherit;pointer-events:auto;cursor:pointer}
.case-label.comparison{border-style:dashed;background:#08323de8}
.case-label em{display:block;margin-bottom:2px;color:#f4cf72;font:700 7px/1.2 var(--font-ui);letter-spacing:.12em;text-transform:uppercase}
.case-label.comparison em{color:#aedad8}
.case-label strong{display:block;color:#fff0b5;font:500 12px/1.05 var(--font-display)}
.case-label small{display:block;margin-top:3px;color:#d1ded9;font-size:6px;line-height:1.2;letter-spacing:.07em;text-transform:uppercase}
.case-label.is-unavailable{opacity:.76}
.case-label.is-active:hover,.case-label.is-active:focus-visible{z-index:3;border-color:#fff1b8;background:#0a3440f2;transform:translateY(-1px)}
#map .map-key{display:flex;gap:12px;left:10px;bottom:8px;padding:6px 8px}
#map .map-key span{display:flex;align-items:center;gap:5px}
#map .map-key i{width:8px;height:8px}
#map .map-key .key-adoption{border-radius:50%;background:#ffc85a;box-shadow:0 0 0 1px #fff5c9}
#map .map-key .key-comparison{border-radius:50%;background:#4a8b91;box-shadow:0 0 0 1px #d7e5df}
.map-status{position:absolute;z-index:3;right:12px;bottom:9px;color:#bcd0c9;font-size:7px;letter-spacing:.09em;text-transform:uppercase;text-shadow:0 2px 8px #001923}
.innovation-selector{position:relative;z-index:5;display:flex;height:100%;flex-direction:column;justify-content:center;margin:0;padding:12px 0;background:linear-gradient(180deg,#092a38cc 0,#092a38 32%);text-align:center;color:#fff4ce}
#map .innovation-selector h1{max-width:none;margin:0;color:#fff4ce;font:500 clamp(28px,4.2vh,40px)/1 var(--font-display);letter-spacing:-.025em;text-shadow:0 2px 10px #001923}
.innovation-carousel{display:grid;grid-template-columns:42px minmax(0,720px) 42px;justify-content:center;align-items:center;gap:8px;margin:18px auto 0;outline:none}
.innovation-carousel:focus-visible{outline:1px solid #ffc85a88;outline-offset:2px}
.carousel-viewport{height:106px;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.carousel-track{--slot:118px;display:flex;height:100%;align-items:center;transform:translateX(calc(50% - (var(--selected-index) * var(--slot)) - (var(--slot) / 2)));transition:transform .52s cubic-bezier(.2,.8,.2,1)}
.innovation-option{flex:0 0 var(--slot);display:grid;grid-template-rows:76px minmax(24px,auto);place-items:center;padding:0;border:0;background:none;color:#c5d6d0;opacity:.55;cursor:pointer;transition:opacity .4s ease,transform .52s cubic-bezier(.2,.8,.2,1),filter .4s ease}
.innovation-option img{width:68px;height:68px;object-fit:contain;filter:saturate(.72) brightness(.78);transition:filter .4s ease,transform .52s cubic-bezier(.2,.8,.2,1)}
.innovation-option span{max-width:108px;overflow:hidden;color:#d5e0dc;font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.innovation-option small{display:none}
.innovation-option.is-selected{z-index:2;opacity:1;transform:scale(1.06)}
.innovation-option.is-selected img{filter:saturate(1.08) brightness(1.08) drop-shadow(0 0 8px #ffc85a);transform:scale(1.08)}
.innovation-option.is-selected span{color:#ffe69c;font-weight:400}
.carousel-arrow{display:grid;width:30px;height:30px;place-items:center;padding:0;border:1px solid #e9c86c66;border-radius:50%;background:#062431aa;color:#ffe39a;font:26px/1 var(--font-display);cursor:pointer}
.carousel-arrow:hover,.carousel-arrow:focus-visible{border-color:#ffc85a;background:#b879263d}

@media(max-width:760px){
  body[data-screen="timeline"] #timeline{padding:18px;justify-content:center}body[data-screen="timeline"] #timeline .timeline-copy{max-width:70%;opacity:.8}body[data-screen="timeline"] #timeline h1{font-size:clamp(30px,7vw,44px)}body[data-screen="timeline"] #timeline .lede{font-size:12px}body[data-screen="timeline"] #timeline .home-actions{right:12px;top:52%;gap:8px}.home-cta{padding:10px 11px 10px 14px;font-size:8px}.home-cta i{width:22px;height:22px}.home-ai-trigger{left:14px;bottom:14px;max-width:calc(100vw - 28px);padding:6px 10px;font-size:10px}
  body[data-screen="map"] #map .map-frame{grid-template-rows:minmax(0,1fr) auto 164px}.innovation-selector{height:100%;margin:0;padding:9px 0}.innovation-carousel{grid-template-columns:30px minmax(0,430px) 30px;margin-top:11px}.carousel-viewport{height:82px}.carousel-track{--slot:82px}.innovation-option{grid-template-rows:57px minmax(20px,auto)}.innovation-option img{width:53px;height:53px}.innovation-option span{max-width:76px;font-size:7px;line-height:1.15}.carousel-arrow{width:28px;height:28px;font-size:22px}
  #map .innovation-selector h1{font-size:22px}.case-label{width:82px;padding:4px}.case-label strong{font-size:8px}.case-label small{display:none}.case-label em{font-size:5px}#map .map-key{display:none}.map-status{font-size:5px}
}
@media(max-height:700px) and (min-width:761px){body[data-screen="map"] #map .map-frame{grid-template-rows:minmax(0,1fr) auto 168px}.innovation-selector{height:100%;margin:0;padding:8px 0}.carousel-viewport{height:82px}.carousel-track{--slot:96px}.innovation-option{grid-template-rows:58px minmax(20px,auto)}.innovation-option img{width:54px;height:54px}.innovation-option span{max-width:88px;font-size:7px}.innovation-carousel{margin-top:10px}#map .innovation-selector h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){.carousel-track,.innovation-option,.innovation-option img,.home-cta i{transition:none}.case-marker>i{animation:none}}

/* Legal and project-information footer */
.site-footer{align-items:center}
.site-footer-notice{display:flex;align-items:baseline;gap:14px;min-width:0}
.site-footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 14px;margin-left:auto}
.site-footer-links a{color:inherit;text-decoration-color:#d9c27c66;text-underline-offset:3px;white-space:nowrap}
.site-footer-links a:hover,.site-footer-links a:focus-visible{color:#fff1b8;text-decoration-color:#ffc85a}
body[data-screen="timeline"] .site-footer-notice span,body[data-screen="map"] .site-footer-notice span,body[data-screen="globe"] .site-footer-notice span,body[data-screen="settlement"] .site-footer-notice span{display:none}
@media(max-width:760px){.site-footer{display:flex;align-items:flex-start}.site-footer-notice{display:block}.site-footer-links{justify-content:flex-end;gap:4px 10px;margin:0 0 0 auto}.site-footer-links a{font-size:7px}}
