@font-face{font-family:Atlas Sans;src:url(assets/fonts/space-grotesk.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:Atlas Italic;src:url(assets/fonts/instrument-italic.woff2) format("woff2");font-style:italic;font-display:swap}
:root{--ink:#f3f1e7;--moss:#d5ed9b;--paper:#171b18;--muted:#b3bcb2;--rule:#3b453d;--pad:clamp(19px,3.4vw,62px);color-scheme:dark;font:16px/1.35 "Atlas Sans",Arial,sans-serif;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}body{margin:0}a,button{color:inherit}button{font:inherit;background:none;border:0;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--moss);outline-offset:4px}a{text-decoration:none}button{touch-action:manipulation}
.mast{height:62px;margin:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--rule)}
.brand{display:inline-flex;align-items:center;font-size:clamp(18px,2vw,23px);font-weight:650;letter-spacing:-.065em}.brand svg{margin-right:9px;width:30px;height:30px;stroke-width:2.5;color:var(--moss)}.brand i,.accent{color:var(--moss);font-style:normal}.back-link{font-size:13px;font-weight:550}.back-link span{color:var(--moss);margin-left:5px}
.intro{margin:0 var(--pad);padding:clamp(16px,3vh,34px) 0 10px;display:flex;align-items:end;justify-content:space-between;gap:12px}.intro h1,.detail-copy h2,.detail-brand{margin:0;font-weight:480;letter-spacing:-.085em;line-height:.99}.intro h1{font-size:clamp(54px,6.4vw,106px)}.intro em,.detail-brand em{font-family:"Atlas Italic",Georgia,serif;font-weight:400;letter-spacing:-.055em}.intro p{color:var(--muted);font-size:14px;margin:8px 0 0;letter-spacing:-.01em}
.switch{display:flex;padding:4px;gap:3px;border:1px solid var(--rule);border-radius:30px;background:#1b211d}.switch button{display:flex;align-items:center;gap:8px;border-radius:24px;padding:9px 15px;min-height:40px;font-size:13px;color:var(--muted)}.switch [aria-pressed=true]{background:var(--moss);color:#182012}.sphere-icon{border:1px solid currentColor;border-radius:50%;width:15px;height:15px;position:relative}.sphere-icon:before{content:"";position:absolute;inset:0 3px;border-inline:1px solid currentColor;border-radius:50%}.sphere-icon:after{content:"";position:absolute;inset:6px 0 auto;border-top:1px solid currentColor}.grid-icon{width:13px;height:13px;background:linear-gradient(to right,transparent 42%,#1b211d 42% 58%,transparent 58%),linear-gradient(to bottom,transparent 42%,#1b211d 42% 58%,transparent 58%),currentColor}.switch [aria-pressed=true] .grid-icon{background:linear-gradient(to right,transparent 42%,var(--moss) 42% 58%,transparent 58%),linear-gradient(to bottom,transparent 42%,var(--moss) 42% 58%,transparent 58%),currentColor}
.enhanced,#detail[hidden],#flight[hidden]{display:none}body.ready .switch,body.ready .foot{display:flex}body.ready #stage{display:block}body.ready #static-list{display:none}
body.ready{height:100svh;min-height:330px;display:flex;flex-direction:column;overflow:hidden}.ready .mast{flex:none}.ready #gallery{min-height:0;flex:1;display:flex;flex-direction:column}
#stage{position:relative;flex:1;min-height:0;isolation:isolate;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;background:radial-gradient(ellipse at 50% 52%,#242b24 0%,#1d231e 33%,var(--paper) 68%)}#stage.dragging{cursor:grabbing}
#meridians,#tiles,.register{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.register:before,.register:after{content:"";width:9px;height:9px;position:absolute;top:50%;background:linear-gradient(to right,transparent 4px,#687366 4px 5px,transparent 5px),linear-gradient(to bottom,transparent 4px,#687366 4px 5px,transparent 5px)}.register:before{left:var(--pad)}.register:after{right:var(--pad)}
.project-tile{pointer-events:auto;position:absolute;top:0;left:0;padding:0;border:0;transform-origin:0 0;will-change:transform;box-shadow:0 4px 18px #060c0930;outline-offset:4px}.project-tile img{display:block;width:100%;height:100%;object-fit:cover;background:#303a32}.project-tile:after{content:"";position:absolute;inset:0;border:1px solid #ffffff22;pointer-events:none}.project-tile:is(:hover,:focus-visible):after,.project-tile.returned:after{border:2px solid var(--moss)}
.foot{height:83px;flex:none;margin:0 var(--pad);border-top:1px solid var(--rule);align-items:center;justify-content:space-between;gap:12px;position:relative;background:var(--paper)}.caption{min-width:0;max-width:36%}.eyebrow,.category,#counter{font:10px/1.32 ui-monospace,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}.eyebrow{color:var(--moss)}.caption strong{display:block;font-size:clamp(15px,1.5vw,22px);letter-spacing:-.04em;line-height:1.1;margin-top:3px}.foot #hint{position:absolute;left:50%;transform:translateX(-50%);font-size:12px;color:var(--muted);white-space:nowrap}.pager,.dock,.detail-head{display:flex;align-items:center}.pager{gap:11px}.pager button,.arrow{border:1px solid var(--rule);width:42px;height:42px;border-radius:50%;font-size:20px}.pager button:hover,.arrow:hover,.close:hover{border-color:var(--moss)}#counter{white-space:nowrap;letter-spacing:.06em}
#detail{position:fixed;inset:0;z-index:5;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:0 var(--pad);background:var(--paper);isolation:isolate;outline:0}
.detail-head{justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--rule);min-height:62px}.detail-brand{font-size:30px}.close{border:1px solid var(--rule);border-radius:24px;font-size:13px;padding:7px 14px;display:flex;align-items:center;gap:9px;min-height:40px}.close span{font-size:22px;line-height:1}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,27%);align-items:center;gap:clamp(20px,4vw,68px);width:100%;max-width:1520px;margin:auto;min-height:0;height:100%;padding:18px 0}.art-holder{height:100%;min-height:0;min-width:0;display:grid;place-items:center;container-type:size}#detail-image{display:block;width:min(100cqw,133.333cqh);height:auto;max-width:100%;max-height:100%;aspect-ratio:4 / 3;object-fit:contain}
.detail-copy h2{font-size:clamp(35px,4.3vw,76px);line-height:1.01;overflow-wrap:break-word;margin:12px 0}.detail-copy p{font-size:clamp(15px,1.25vw,20px);max-width:35ch;line-height:1.48;color:#c2c9bf;margin:0 0 20px}.category{color:var(--muted)}.dock{justify-content:center;gap:clamp(8px,1.6vw,28px);border-top:1px solid var(--rule);min-height:82px;padding:12px 0}#thumbs{display:flex;min-width:0;align-items:center;gap:5px;justify-content:safe center;overflow-x:auto;scrollbar-width:none}#thumbs::-webkit-scrollbar{display:none}#thumbs button{display:grid;align-items:center;width:clamp(32px,4.6vw,74px);height:46px;flex:none;padding:3px;opacity:.68}#thumbs button img{width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:cover}#thumbs [aria-current=true]{opacity:1;outline:1px solid var(--moss);outline-offset:-1px}#thumbs button:hover{opacity:1}.arrow{flex:none}
#flight,.escort{pointer-events:none;position:fixed;top:0;left:0;z-index:10;object-fit:cover;transform-origin:0 0;will-change:transform;display:block}.escort{z-index:8}
#detail{grid-template-columns:minmax(0,1fr)}
.detail-head,.detail-layout,.dock,#thumbs{min-width:0;max-width:100%}
#static-list{margin:28px var(--pad);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:24px}#static-list img{width:100%;height:auto;display:block}#static-list h2{margin:8px 0 2px}#static-list p{margin:0;color:var(--muted)}.sr-only{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
@media(max-width:700px){.mast{height:50px}.brand svg{width:24px;height:24px}.intro{align-items:center;padding-top:19px;padding-bottom:7px}.intro h1{font-size:clamp(43px,9vw,63px)}.intro p{font-size:12px;margin-top:6px}.switch{gap:0;padding:3px}.switch button{padding:7px 9px;font-size:12px;min-height:36px;gap:4px}.sphere-icon,.grid-icon{display:none}.foot{height:83px;align-items:flex-start;padding-top:10px}.caption{max-width:58%}.caption .eyebrow{font-size:9px}.foot #hint{bottom:5px;left:0;transform:none;font-size:11px}.pager{gap:6px}.pager button,.arrow{height:36px;width:36px}.detail-head{min-height:48px;padding:6px 0}.detail-brand{font-size:25px}.detail-layout{grid-template: minmax(0,1fr) auto / 1fr;gap:11px;padding:12px 0;align-content:center}.art-holder{min-height:0;align-items:center}.detail-copy h2{font-size:clamp(27px,6.5vw,42px);margin:3px 0}.detail-copy p{font-size:14px;margin:0;max-width:48ch}.detail-copy .category{display:none}.dock{min-height:60px;padding:5px 0;gap:6px}#thumbs{gap:3px}#thumbs button{width:35px;height:42px}.register:before{left:7px}.register:after{right:7px}}
@media(max-height:570px) and (min-width:620px){.mast{height:40px}.intro{padding-top:7px}.intro h1{font-size:40px}.intro p{margin:2px 0 0}.foot{height:46px;padding:3px 0;align-items:center}.foot #hint{display:none}.detail-head{min-height:40px;padding:3px 0}.detail-layout{grid-template:minmax(0,1fr) / minmax(0,1fr) 30%;gap:16px;padding:6px 0}.detail-copy h2{font-size:27px}.detail-copy p{font-size:13px}.dock{min-height:48px;padding:2px}#thumbs button{height:37px;width:37px}}
@media(max-width:700px) and (orientation:portrait){
  .detail-layout{height:auto;max-height:100%;grid-template-rows:minmax(0,auto) auto;align-content:center;gap:clamp(16px,3svh,26px)}
  .art-holder{height:min(calc((100vw - 2 * var(--pad)) * .75), calc(100svh - 265px));min-height:54px}
}

