/* R2: tactile editorial images, restrained cinematic layers and a working guide. */
.ambient-film{display:block;width:100%;height:100%;object-fit:cover;background-size:cover}
.editorial{display:grid;grid-template-columns:1.15fr 1fr;gap:7vw;align-items:center}.editorial-image{overflow:hidden}.editorial-image img{width:100%;height:auto;aspect-ratio:1.17;object-fit:cover;transition:transform 1.5s cubic-bezier(.2,.7,.2,1)}.editorial-image:hover img{transform:scale(1.025)}.editorial-copy h2{font-size:clamp(34px,4vw,64px)}.editorial-copy p{color:#656a70;line-height:1.8}.editorial-meta{font:10px/1.8 'IBM Plex Mono',monospace;border-top:1px solid var(--line);padding-top:22px;margin-top:35px;letter-spacing:.05em}.aftercare{background:#e9eae5;grid-template-columns:1fr 1.15fr}.heritage-hero .hero-art{width:100%;right:0;opacity:1;object-position:center}.technical-art img{object-position:center;aspect-ratio:1.15}.heritage-hero:after{background:linear-gradient(90deg,#060d18ed 3%,#060d18aa 36%,#060d1810 72%)}
.health-image .ambient-film{position:absolute;inset:0;object-position:90%}.health-image{background:#dedcd2}.health-image:after{inset:65% 0 0;background:linear-gradient(transparent,#24272bbf)}.allies img{object-position:43%;aspect-ratio:1.2}.connected-detail{background:#f6f5f0}.healthcare .editorial h2{font-family:Georgia,'IBM Plex Sans Thai',serif}.community-photo{margin:0 0 65px;position:relative}.community-photo img{width:100%;height:auto;max-height:610px;object-fit:cover}.community-photo figcaption{font:12px/1.8 'IBM Plex Mono','IBM Plex Sans Thai',monospace;margin-top:16px;color:#5d645e}.care-flow article:before{box-shadow:0 0 0 6px #de142a0d}.media-pause{position:fixed;right:18px;bottom:18px;z-index:30;background:#151516df;border:1px solid #ffffff45;color:#fff;padding:10px 15px;border-radius:30px;font:10px/1.5 monospace;min-height:44px;backdrop-filter:blur(15px)}.media-paused *{animation-play-state:paused!important}.reveal-ready{opacity:0;transform:translateY(30px);transition:opacity .85s ease,transform .85s cubic-bezier(.15,.75,.25,1)}.revealed{opacity:1;transform:none}
/* TRIO uses the exact C1 silhouette at two scales. */
.trio-title h1{font-size:clamp(120px,20vw,285px)}#trio-guide.intro-hidden{opacity:0;visibility:hidden;pointer-events:none}#trio-guide{transition:opacity .3s ease}body.trio .guide-c1{animation:none!important}
.trio-title h1 span{animation:cursor-blink 1.3s steps(2,end) infinite}@keyframes cursor-blink{50%{opacity:.15}}.character-stage{position:relative;background:#141416}.character-stage:before,.character-stage:after{content:'+';position:absolute;top:-10px;color:#de142a;font:16px monospace}.character-stage:before{left:-5px}.character-stage:after{right:-5px}.hero-state{flex:1;padding:16px 10px;font:9px monospace;color:#9f9f9a;white-space:nowrap}.hero-state b{color:#e9586a;font-weight:400}.icon-controls a{padding:14px 8px;font:10px/1.5 monospace;min-height:44px}.icon-controls button{color:#c0c0b8}.trio .trio-intro .label{color:#e55c6d}.project-jumps{display:flex;flex-wrap:wrap;border-top:1px solid var(--line);gap:30px;padding-top:30px}.project-jumps a{font-size:11px;padding:12px 0;min-height:44px}.project-jumps a:hover{color:#ed6a7b}.selected-work{padding-bottom:70px}.project-heading{display:grid;grid-template-columns:80px 1fr 190px;gap:30px;align-items:start;margin-bottom:60px}.project-number{font-size:40px;color:#e64e62;letter-spacing:-.08em}.project-heading h2{font-size:clamp(32px,4.5vw,70px);margin-bottom:25px}.project-heading p{font-size:13px;line-height:1.9;color:#a9a9a2;max-width:550px}.demo-label{font-size:9px;color:#9a9a95;text-align:right;line-height:1.9;padding-top:10px}.project-layout{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:stretch}.project-layout figure{margin:0;align-self:center}.project-layout figure img{width:100%;height:auto;aspect-ratio:1.35;object-fit:cover;border:1px solid #ffffff16}.project-layout figcaption{font-size:9px;color:#93938e;padding-top:15px;line-height:1.7}.demo-console{background:#1b1b1e;border:1px solid #ffffff30;box-shadow:0 20px 80px #0002}.console-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:9px;color:#b7b7af;padding:17px 20px;border-bottom:1px solid #ffffff25}.console-bar>span:last-child{font-size:8px;color:#ef6d7d}.demo-inner{padding:30px}.demo-inner label{display:block;font-size:12px;margin-bottom:15px}.demo-inner select{width:100%;padding:14px 12px;background:#242428;border:1px solid #555;color:#efeee7;font:12px monospace;border-radius:0;min-height:48px}.handover-track{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:30px 0}.handover-track>span{font-size:10px;line-height:2;border-top:2px solid #555;padding-top:15px;color:#979792;transition:color .3s,border-color .3s}.handover-track>span.active{border-color:#ed4b62;color:#fff}.demo-response{font-size:13px;line-height:1.9;min-height:120px;color:#c6c6be;margin:20px 0}.demo-response b{display:block;color:#f0f0e8;font-size:17px;font-weight:400;margin-bottom:10px}.terminal-button{background:#e7e7df;color:#141414;border:1px solid #e7e7df;padding:13px 16px;font:11px/1.6 'IBM Plex Mono','IBM Plex Sans Thai',monospace;min-height:46px;cursor:pointer}.terminal-button:hover{background:#de142a;border-color:#de142a;color:white}.quiet-button{background:none;border:0;color:#aaa99f;font:10px monospace;min-height:46px;padding:12px 15px}.signal-path{position:relative;display:flex;justify-content:space-between;margin:25px 20px 18px;height:25px;align-items:center}.signal-path:before{content:'';height:1px;background:#57575d;position:absolute;left:0;right:0}.signal-path i{width:12px;height:12px;border:1px solid #7b7b80;background:#222226;z-index:1;border-radius:50%}.signal-path i.active{background:#ef5a6e;border-color:#ef5a6e;box-shadow:0 0 20px #ec335766}.signal-path b{position:absolute;left:0;top:8px;width:8px;height:8px;background:white;box-shadow:0 0 12px #ffbac5;border-radius:50%;animation:signal-run 4s cubic-bezier(.4,0,.2,1) infinite}@keyframes signal-run{0%{left:0;opacity:0}10%{opacity:1}85%{opacity:1}100%{left:100%;opacity:0}}.signal-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.signal-steps button{font:10px/2 monospace;min-height:62px;background:none;border:1px solid transparent;color:#94948f;padding:8px 3px}.signal-steps button[aria-pressed=true]{border-color:#ec5268;color:#f3f1e9;background:#ffffff04}.demo-inner>small{font-size:9px;color:#888a87;line-height:1.8;display:block}.ops-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:55px;padding:45px}.floorplan{display:grid;grid-template-columns:1fr 1.3fr;grid-template-rows:135px 40px 160px;gap:13px;transform:perspective(900px) rotateX(12deg);border:1px solid #ffffff30;padding:15px;background:radial-gradient(#ffffff20 .5px,transparent .5px);background-size:10px 10px}.zone{position:relative;background:#252529b0;border:1px solid #68686a;color:#c6c6c0;text-align:left;display:flex;flex-direction:column;gap:15px;justify-content:center;padding:20px;transition:background .3s,border-color .3s,transform .3s}.zone[aria-pressed=true]{border-color:#ff6377;background:#53232bc0;transform:translateY(-4px);box-shadow:0 8px 25px #0004}.zone small{font:9px monospace;color:#a19f9b}.zone b{font-size:12px;font-weight:400}.zone-2,.zone-3{grid-row:3}.floor-corridor{grid-row:2;grid-column:1/3;font-size:8px;color:#7d7d77;display:flex;align-items:center;justify-content:center}.asset-dot{width:6px;height:6px;border-radius:50%;background:#f16c7d;position:absolute;right:15px;bottom:15px;box-shadow:0 0 0 5px #f16c7d18}.ops-detail{align-self:center}.ops-toggle{display:flex;gap:10px;margin-bottom:35px}.ops-toggle button{border:1px solid #58585c;background:none;padding:12px 18px;font:11px monospace;min-height:44px}.ops-toggle button[aria-pressed=true]{background:#e7e7df;color:#171719}.ops-detail h3{font-size:26px;margin-bottom:18px}.ops-detail p{font-size:12px;color:#b3b3ad;line-height:1.9}.ops-detail .next-action{border-left:2px solid #de142a;padding-left:18px;color:#eeeee5}.trio footer{padding-bottom:145px}
#trio-guide{position:fixed;z-index:35;left:50%;bottom:20px;transform:translateX(-50%);width:min(660px,calc(100% - 32px));display:flex;gap:19px;align-items:center;padding:18px 22px;background:#1c1c20ee;border:1px solid #ffffff30;border-radius:12px;box-shadow:0 12px 50px #0005;backdrop-filter:blur(20px)}.guide-c1{width:40px;height:40px;flex-shrink:0;animation:c1-think 3s ease-in-out infinite}body[data-trio=working] .guide-c1{animation:c1-work 2.5s linear infinite}@keyframes c1-think{50%{transform:scale(.93);opacity:.72}}@keyframes c1-work{to{transform:rotate(360deg)}}.guide-label{font:8px monospace;color:#a5a59f;letter-spacing:.12em}.guide-label b{font-weight:400;color:#f27182}.guide-copy{flex:1}.guide-copy p{font-size:11px;line-height:1.6;margin:5px 0 0;color:#dcddd4;max-width:none}#guide-minimize{border:0;background:none;color:#aaa;font-size:20px;width:36px;min-height:44px}#trio-guide.minimized{left:auto;right:20px;transform:none;width:auto;padding:12px;gap:8px}#trio-guide.minimized .guide-copy{display:none}.trio.media-paused .guide-c1{animation-play-state:paused!important}
/* Landing: film lives behind the accurate native globe, and never replaces map geometry. */
#art-field{opacity:0}#core-illustration{opacity:0;position:absolute;inset:0;width:100%;height:100%}#core-illustration video{mask-image:linear-gradient(90deg,transparent,black 12%,black 86%,transparent 96%);transform:scale(.96)}.trio{scroll-padding-bottom:130px}.site-header button{min-height:44px;min-width:44px}
#space-film{position:fixed;inset:0;z-index:0;pointer-events:none;background:#030711}#space-film video{object-fit:cover;opacity:.86}body.simple #space-film{display:none}#core-illustration video{object-fit:contain;width:100%;height:100%}#core-illustration{overflow:visible}#art-field{translate:0 var(--ambient-shift,0px)}.portal-art.network{background:none!important;display:flex;align-items:center;justify-content:center;gap:15px;padding:15px;transform:perspective(600px) rotateX(15deg)!important}.portal-art.network i{display:block!important;width:32px;height:80px;background:linear-gradient(135deg,#d3e6ff26,#d3e6ff08);border:1px solid #aec0d077;border-radius:5px;box-shadow:inset 0 1px #ffffff70;animation:network-rise 5s ease-in-out infinite}.portal-art.network i:nth-child(2){height:110px;animation-delay:-1s}.portal-art.network i:nth-child(3){height:140px;animation-delay:-2s}.portal-art.network i:nth-child(4){height:95px;animation-delay:-3s}.portal-art.network i:nth-child(5){height:65px;animation-delay:-4s}@keyframes network-rise{50%{transform:translateY(-9px);border-color:#e2b579}}.care svg path{stroke-dasharray:550;stroke-dashoffset:0;animation:care-trace 5s ease-in-out infinite}@keyframes care-trace{0%,12%{stroke-dashoffset:550}65%,100%{stroke-dashoffset:0}}.intelligence>img{animation:c1-work 14s linear infinite}#traveller-glow{animation:light-breathe 2s ease-in-out infinite}@keyframes light-breathe{50%{opacity:.15}}body:has(#stage) .media-pause{bottom:73px;right:25px}
@media(max-width:900px){.project-heading{grid-template-columns:55px 1fr}.demo-label{grid-column:2;text-align:left;padding:0}.project-layout{gap:22px}.demo-inner{padding:22px}.ops-grid{gap:30px;padding:28px}.project-number{font-size:30px}.hero-state{font-size:8px}}
@media(max-width:620px){.editorial,.aftercare,.project-layout,.ops-grid{grid-template-columns:1fr;gap:35px}.editorial-copy{order:0}.editorial-image{order:1}.editorial-image img{aspect-ratio:1.25}.heritage-hero .hero-art{top:auto;bottom:0;width:100%;right:0;height:58%;object-position:70%}.heritage-hero:after{background:linear-gradient(#070f1d 15%,#070f1def 38%,#070f1d20 75%,#070f1d55)}.health-image .ambient-film{object-position:90%}.health-image{height:380px}.community-photo{margin-bottom:40px}.project-heading{gap:16px;margin-bottom:32px;grid-template-columns:35px 1fr}.project-heading h2{font-size:31px}.project-heading p{font-size:12px}.project-number{font-size:23px}.project-jumps{gap:15px}.project-jumps a{font-size:9px}.project-layout figure img{aspect-ratio:1.7}.demo-label{font-size:8px}.demo-inner{padding:22px}.demo-response{min-height:110px}.ops-grid{padding:20px}.floorplan{grid-template-rows:110px 25px 125px;gap:8px;padding:10px}.zone{padding:13px}.zone b{font-size:11px}.ops-toggle{margin-bottom:25px}.trio-title{margin-top:20px}.trio-title h1{font-size:27vw}.trio-intro h2{font-size:30px}.terminal-hero-grid{gap:30px}.trio-hero{padding-bottom:40px}#trio-guide{bottom:12px;gap:12px;padding:12px 14px;width:calc(100% - 24px)}.guide-c1{width:30px;height:30px}.guide-copy p{font-size:10px}.guide-label{font-size:7px}.guide-copy p{max-height:48px;overflow:auto}.media-pause{right:12px;bottom:12px;font-size:9px}body:has(#stage) .media-pause{bottom:94px;right:12px}.portal-art.network{gap:7px}.portal-art.network i{max-width:16px}.trio footer{padding-bottom:145px}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.ambient-film{object-fit:cover}#art-field{translate:none}*,*:before,*:after{animation:none!important;transition:none!important}.floorplan{transform:none}}

@media(max-width:620px){html[lang=th] .heritage-hero h1{font-size:42px}}
@keyframes trio-resolve{from{opacity:.1;filter:blur(8px);transform:translateY(12px)}to{opacity:1;filter:blur(0);transform:none}}.trio-intro h2,.character-stage{animation:trio-resolve 1.2s cubic-bezier(.15,.7,.2,1) both}

.demo-scenario{font-size:9px;line-height:1.8;color:#e66d7f;margin-top:16px}
#core-illustration video{height:auto;max-height:100%;aspect-ratio:16/9;position:absolute;top:50%;left:0;transform:translateY(-50%) scale(.96);mask-image:linear-gradient(90deg,transparent,black 12%,black 86%,transparent 96%),linear-gradient(transparent,black 6%,black 94%,transparent);mask-composite:intersect}
@media(min-width:900px) and (max-height:800px){.terminal-hero-grid{padding:20px 0}#character-icon{height:245px;aspect-ratio:auto;object-fit:contain}.trio-title h1{font-size:19vw}.trio-intro h2{font-size:32px}}
