
:root{--bg:#080c13;--white:#f3f0e7;--muted:#9ca7b8;--orange:#ff6a1f;--blue:#7bc8ed;--line:rgba(255,255,255,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:clip;background:var(--bg);color:var(--white);font:15px/1.7 Inter,"Segoe UI",Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:6px}.atlas-studio{overflow:hidden}.wrap{width:min(1452px,calc(100% - 112px));margin:auto}.header{height:106px;display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;z-index:3}.brand{display:inline-flex}.brand img{width:215px;height:auto;display:block;filter:none!important;box-shadow:none!important}.nav{display:flex;gap:36px;font-size:12px;color:#a8b4c6}.nav a:hover{color:white}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;border:1px solid transparent;border-radius:50px;background:var(--orange);color:#110e0b;font-size:12px;font-weight:650;padding:16px 24px;line-height:1.2;transition:transform .25s}.button:hover{transform:translateY(-3px)}.button.ghost{color:var(--white);border-color:var(--line);background:transparent}.arrow{font-size:21px;line-height:1}.hero{position:relative;min-height:750px;display:grid;grid-template-columns:1fr 1.08fr;align-items:center;padding:35px 0 85px;gap:10px}.hero:before{content:"";position:absolute;z-index:-1;right:-280px;top:-150px;width:900px;height:900px;background:radial-gradient(ellipse,rgba(46,105,150,.16),transparent 65%)}.eyebrow{display:flex;align-items:center;gap:10px;color:#b1bece;font-size:9px;letter-spacing:.23em;text-transform:uppercase}.spark{height:6px;width:6px;border-radius:50%;background:var(--orange);box-shadow:0 0 18px rgba(255,106,31,.6)}h1{font-size:clamp(64px,7.6vw,110px);font-weight:430;letter-spacing:-.075em;line-height:1.02;margin:29px 0}.serif{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;letter-spacing:-.06em;color:#e9e1d1}.hero-copy{position:relative;z-index:2}.hero-copy>p{font-size:14px;line-height:1.9;color:var(--muted);max-width:365px;margin:28px 0}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin:33px 0}.quiet-link{display:flex;gap:12px;align-items:center;font-size:11px;color:#c6d0dc}.quiet-link span{font-size:18px;color:var(--orange)}.hero-note{font-size:9px;letter-spacing:.05em;color:#77879d;display:flex;align-items:center;gap:10px}.hero-note:before{content:"";height:1px;width:28px;background:#526175}.scene{height:600px;position:relative}.universe{position:absolute;width:590px;height:590px;left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--scene-scale,1))}.orb{position:absolute;inset:95px;border:1px solid rgba(135,186,215,.2);border-radius:50%;overflow:hidden;transform:rotate(-23deg);background:radial-gradient(circle at 32% 24%,rgba(121,182,213,.19),rgba(17,39,60,.7) 47%,rgba(8,14,24,.5) 75%);box-shadow:inset 20px 10px 45px rgba(139,194,222,.04),0 0 100px rgba(42,98,138,.08)}.orb:before{content:"";position:absolute;inset:0;border-radius:50%;background:repeating-linear-gradient(90deg,transparent 0,transparent 45px,rgba(144,193,215,.13) 46px,transparent 47px),repeating-linear-gradient(0deg,transparent 0,transparent 45px,rgba(144,193,215,.09) 46px,transparent 47px);mask-image:radial-gradient(circle,#000 25%,transparent 76%)}.ring{position:absolute;inset:42px;border:1px solid rgba(144,183,209,.22);border-radius:50%;transform:rotate(-24deg) scaleY(.63);animation:breathe 8s ease-in-out infinite}.ring.r2{inset:16px;transform:rotate(50deg) scaleY(.7);border-style:dashed;border-color:rgba(144,183,209,.13);animation-delay:-3s}.ring.r3{inset:125px;transform:rotate(88deg) scaleY(.5);border-color:rgba(255,106,31,.34);animation-delay:-5s}.connections{position:absolute;inset:0;width:100%;height:100%;opacity:.7}.core{position:absolute;left:50%;top:50%;width:19px;height:19px;background:var(--orange);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 35px rgba(255,106,31,.75),0 0 100px 20px rgba(255,106,31,.13)}.core:before,.core:after{content:"";position:absolute;inset:-14px;border:1px solid rgba(255,106,31,.25);border-radius:50%;animation:pulse 4s ease-out infinite}.core:after{animation-delay:2s}.star{position:absolute;width:3px;height:3px;background:#b0cfdf;border-radius:50%;box-shadow:0 0 12px rgba(123,200,237,.4)}.s1{top:43px;left:285px}.s2{top:180px;left:55px}.s3{bottom:80px;right:180px}.s4{right:15px;bottom:190px;width:2px;height:2px}.floating{position:absolute;z-index:2;background:rgba(17,25,37,.91);border:1px solid rgba(154,187,208,.19);backdrop-filter:blur(12px);padding:16px 20px;border-radius:14px;min-width:170px;box-shadow:0 16px 45px rgba(0,0,0,.22);animation:float 8s ease-in-out infinite}.floating small{display:flex;gap:8px;align-items:center;color:#8395ab;font-size:8px;letter-spacing:.16em;text-transform:uppercase}.floating small:before{content:"";height:5px;width:5px;background:#d4f3a3;border-radius:50%}.floating strong{font-size:12px;font-weight:450;display:block;margin-top:5px}.floating.idea{left:9px;top:124px;rotate:-6deg}.floating.people{right:-3px;top:206px;rotate:5deg;animation-delay:-3s}.floating.people small:before{background:var(--blue)}.floating.next{left:108px;bottom:85px;rotate:-3deg;animation-delay:-5s}.floating.next small:before{background:var(--orange)}.orbit-note{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:8px;text-transform:uppercase;letter-spacing:.18em;color:#7e91a7}.orbit-note span{color:#c8d5df}.scroll-line{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0 40px;color:#8191a5;font-size:9px;letter-spacing:.11em;text-transform:uppercase}.scroll-line b{color:#c6d0dc;font-weight:400;letter-spacing:0}.section{padding:100px 0}.kicker{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin:0 0 21px}h2{font-size:clamp(42px,4.5vw,65px);line-height:1.14;font-weight:430;letter-spacing:-.06em;margin:0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:62px}.section-head>p{max-width:310px;font-size:12px;line-height:1.95;color:var(--muted);margin:0 0 5px}.world-grid{display:grid;grid-template-columns:.8fr 1.6fr;gap:65px}.tabs{display:flex;flex-direction:column}.tab{border:0;border-top:1px solid var(--line);padding:27px 0;background:none;color:#78889d;display:grid;grid-template-columns:34px 1fr 23px;align-items:center;text-align:left;font-size:17px}.tab:last-child{border-bottom:1px solid var(--line)}.tab small{font-size:8px;letter-spacing:.15em;color:#586b82}.tab b{font-size:23px;font-weight:400;opacity:0;transition:.25s}.tab[aria-selected=true]{color:var(--white)}.tab[aria-selected=true] small,.tab[aria-selected=true] b{color:var(--orange)}.tab[aria-selected=true] b{opacity:1}.panel{min-height:420px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(130deg,#121d2a,#0b111b 75%);padding:40px;position:relative;overflow:hidden}.panel:before,.panel:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(144,186,214,.12);border-radius:50%;right:-65px;top:42px}.panel:after{inset:75px -30px auto auto;width:260px;height:260px;border-color:rgba(144,186,214,.08)}.panel-label{font-size:8px;color:#7f92aa;letter-spacing:.16em;text-transform:uppercase}.panel h3{position:relative;z-index:1;font-weight:430;letter-spacing:-.04em;font-size:30px;line-height:1.15;max-width:285px;margin:22px 0 18px}.panel p{position:relative;z-index:1;font-size:12px;line-height:1.9;color:var(--muted);max-width:290px}.map{position:absolute;right:20px;bottom:33px;width:245px;height:175px}.map svg{width:100%;height:100%}.map-center{position:absolute;left:109px;top:70px;width:39px;height:39px;display:grid;place-items:center;border:1px solid rgba(255,106,31,.55);border-radius:50%;background:#171811;color:var(--orange)}.map-node{position:absolute;font-size:8px;color:#adbdcf;padding:7px 10px;border:1px solid rgba(156,189,213,.15);border-radius:8px;background:#111b29}.n1{top:0;left:30px}.n2{top:45px;right:0}.n3{bottom:20px;left:0}.n4{bottom:0;right:0}.panel-foot{position:absolute;bottom:30px;left:40px;color:#70859d;font-size:7px;letter-spacing:.1em;text-transform:uppercase;max-width:170px}.story-intro{max-width:650px;margin-bottom:55px}.story-intro p{max-width:410px;color:var(--muted);font-size:13px;line-height:1.9;margin-top:24px}.story-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}.story-item{position:relative;border-top:1px solid var(--line);padding-top:25px}.story-item:before{content:"";position:absolute;top:-3px;left:0;width:5px;height:5px;background:var(--orange);border-radius:50%}.story-item small{font-size:8px;color:var(--orange);letter-spacing:.14em}.story-item h3{font-size:22px;font-weight:430;letter-spacing:-.035em;margin:20px 0 12px}.story-item p{max-width:280px;color:var(--muted);font-size:12px;line-height:1.9}.closing{position:relative;margin-block:25px 100px;border:1px solid var(--line);border-radius:27px;background:radial-gradient(ellipse at 90% 60%,rgba(40,97,134,.2),transparent 55%),#0d141f;padding:70px 60px;overflow:hidden}.closing h2{position:relative;z-index:1;max-width:600px}.closing p{position:relative;z-index:1;color:var(--muted);font-size:13px;margin:23px 0 28px}.closing .button{position:relative;z-index:1}.closing-orbit{position:absolute;right:-140px;top:50%;width:480px;height:480px;border:1px solid rgba(145,188,215,.16);border-radius:50%;transform:translateY(-50%) rotate(-28deg) scaleY(.65)}.closing-orbit:after{content:"";position:absolute;width:9px;height:9px;background:var(--orange);border-radius:50%;top:44px;left:100px;box-shadow:0 0 30px rgba(255,106,31,.6)}.footer{border-top:1px solid var(--line);padding:40px 0 28px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer .brand img{width:165px}.footer-links{display:flex;gap:30px;font-size:10.5px;color:#8d9db1}.footer-bottom{padding-top:35px;align-items:start;color:#586d85;font-size:10.5px;letter-spacing:.15em;text-transform:uppercase}.motion{border:0;background:none;color:#91a2b9;font-size:8px;padding:0;letter-spacing:.05em}.motion span{color:var(--orange);padding-right:7px}dialog{width:min(510px,calc(100% - 40px));padding:40px;color:var(--white);background:#111b28;border:1px solid #35465a;border-radius:24px;box-shadow:0 35px 110px rgba(0,0,0,.65)}dialog::backdrop{background:rgba(3,7,13,.83);backdrop-filter:blur(10px)}dialog h2{font-size:37px;margin:12px 0 28px}.close{position:absolute;right:16px;top:12px;color:#afc2d8;background:none;border:0;font-size:27px}.choose{display:flex;justify-content:space-between;width:100%;text-align:left;padding:18px 0;color:var(--white);background:none;border:0;border-top:1px solid var(--line);font-size:13px}.choose b{color:var(--orange);font-weight:400}[data-motion=off] .floating,[data-motion=off] .ring,[data-motion=off] .core:before,[data-motion=off] .core:after{animation-play-state:paused!important}
@keyframes float{0%,100%{translate:0 0}50%{translate:0 -12px}}@keyframes breathe{0%,100%{opacity:.6}50%{opacity:1}}@keyframes pulse{0%{transform:scale(.7);opacity:.75}100%{transform:scale(2.5);opacity:0}}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.hero{min-height:680px}.hero h1{font-size:80px}.universe{--scene-scale:.85}.world-grid{gap:32px;grid-template-columns:.85fr 1.6fr}.panel{padding:32px;min-height:440px}.map{scale:.8;transform-origin:right bottom}.panel-foot{left:32px;max-width:130px}.panel p{max-width:255px}}
@media(max-width:780px){.wrap{width:calc(100% - 44px)}.header{height:88px}.brand img{width:168px}.nav{display:none}.header .button{padding:12px 17px;gap:13px;font-size:10px}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:45px 0 30px}.hero h1{font-size:clamp(57px,12vw,85px);letter-spacing:-.065em;margin:26px 0}.hero-copy>p{font-size:13px;max-width:345px;margin:23px 0}.hero-actions{gap:20px;margin:28px 0}.scene{height:440px;margin-top:5px}.universe{--scene-scale:.76}.orbit-note{bottom:0;font-size:7px}.scroll-line{font-size:7px;padding-bottom:15px;gap:15px}.scroll-line span{max-width:170px}.section{padding:75px 0}.section-head{display:block;margin-bottom:35px}.section-head>p{margin:25px 0 0;max-width:340px}.section h2{font-size:44px}.world-grid{display:block}.tabs{flex-direction:row;margin-bottom:24px}.tab{display:flex;flex:1;gap:10px;padding:17px 0;border-bottom:1px solid var(--line);font-size:12px}.tab small{font-size:7px}.tab b{display:none}.panel{padding:29px;min-height:420px}.panel h3{font-size:29px;max-width:270px}.panel p{max-width:270px}.map{right:14px;bottom:26px;scale:.77}.panel-foot{left:29px;bottom:28px;font-size:6px;max-width:110px}.story{padding-top:25px}.story-intro{margin-bottom:38px}.story-row{grid-template-columns:1fr;gap:35px}.story-item{padding-top:20px}.story-item h3{margin:13px 0 9px}.story-item p{max-width:350px;margin-bottom:0}.closing{margin-block:5px 65px;padding:40px 29px}.closing h2{font-size:43px}.closing p{max-width:240px}.closing-orbit{right:-330px}.footer-top{align-items:start}.footer-links{flex-direction:column;gap:13px}.footer .brand img{width:150px}.footer-bottom{font-size:10.5px;letter-spacing:.1em;gap:17px}.footer-bottom>span{max-width:140px}dialog{padding:31px}}
@media(max-width:390px){.header .brand img{width:146px}.header .button{padding:11px 14px}.hero h1{font-size:57px}.universe{--scene-scale:.64}.scene{height:380px}.tab{font-size:10px;gap:7px}.panel{padding:25px}.panel p{max-width:250px}.map{right:5px;scale:.69}.section h2{font-size:40px}.closing{padding:35px 25px}.closing h2{font-size:38px}}

[hidden]{display:none!important}.engineering-bar{background:#ff6a1f;color:#080c13;text-align:center;padding:7px 14px;font-size:10px;font-weight:700;line-height:1.5;letter-spacing:.12em}.studio-nav{display:flex;gap:28px;margin-left:auto;margin-right:38px}.nav-pop{position:relative}.studio-nav button{background:none;border:0;color:#9ca7b8;padding:12px 0;font-size:13px}.studio-nav button span{color:#ff6a1f;margin-left:7px}.portal-login{font-size:11px;letter-spacing:.08em;white-space:nowrap}.quiet-menu{position:absolute;right:0;top:calc(100% + 15px);z-index:50;width:420px;max-height:70vh;overflow:auto;padding:26px;border:1px solid #ffffff20;border-radius:18px;background:#0b121c;box-shadow:0 25px 70px #0008}.quiet-menu label{display:block;font-size:12px;color:#a7b1bf;margin-bottom:14px}.quiet-menu input{width:100%;font:inherit;font-size:14px;background:#080c13;border:1px solid #354555;color:#f3f0e7;border-radius:9px;padding:14px}.quiet-menu a{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #ffffff10;font-size:14px;line-height:1.5}.quiet-menu a span{color:#ff6a1f}.quiet-menu small{display:block;font-size:10px;color:#8fa1b5}.menu-links{margin-top:20px}.platforms-menu{width:260px}.mobile-os{display:none}.scene .ring{border-color:#b22234;border-width:1px;opacity:.65;animation:gyroR 38s linear infinite}.scene .ring.r2{border-color:#f3f0e7;opacity:.48;animation:gyroW 49s linear infinite}.scene .ring.r3{border-color:#3c3b6e;opacity:.95;animation:gyroB 57s linear infinite}.scene .core{background:#b8441f;box-shadow:0 0 0 9px #b8441f11,0 0 36px #b8441f27}.orbit-note{letter-spacing:0;text-transform:none}.os-switch{display:flex;justify-content:center;gap:8px}.os-choice{display:inline-flex;align-items:center;gap:6px;background:none;color:#8798aa;border:1px solid transparent;border-radius:99px;padding:6px 9px;min-height:34px;font-size:10px}.os-choice svg{width:15px;height:15px}.os-choice[aria-selected=true]{border-color:#ffffff28;color:#f3f0e7}.os-choice[aria-selected=true] svg{color:#ff6a1f}.orbit-note p{font-size:10px;color:#94a3b4;letter-spacing:.02em;margin-top:10px}.presence-copy p{margin:0 0 25px;max-width:52ch}.presence-copy strong{font-weight:500;color:#f3f0e7}.presence-copy .edition-note{font-size:12px;line-height:1.8}.secondary-story{display:block;margin-top:20px;color:#9ca7b8}.map-center:after{content:"";display:block;width:9px;height:9px;background:#ff6a1f;border-radius:50%;margin:auto}.footer-line,.footer-meta{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-line p{font-size:14px;color:#9ca7b8}.footer-links{display:flex;gap:25px;flex-wrap:wrap;margin:40px 0;font-size:12px;color:#9ca7b8}.footer-meta{flex-wrap:wrap;font-size:10.5px;letter-spacing:.06em;color:#8999ac}.motion i{font-style:normal}.footer-meta .motion{font-size:11px;letter-spacing:0}
@keyframes gyroR{from{rotate:x 0deg}to{rotate:x 360deg}}@keyframes gyroW{from{rotate:y 0deg}to{rotate:y -360deg}}@keyframes gyroB{from{rotate:z 0deg}to{rotate:z 360deg}}
.article-page{padding-bottom:80px}.article-page *{min-width:0}.article-page .rail,.article-page>.breadcrumb{width:min(1320px,calc(100% - 120px));margin:0 auto}.breadcrumb{display:flex;gap:14px;flex-wrap:wrap;padding-top:30px;font-size:12px;color:#9ca7b8}.page-hero{padding:90px 0 120px}.article-page h1{font-size:clamp(42px,6.8vw,94px);line-height:1.07;letter-spacing:-.055em;font-weight:400;max-width:1100px;margin:26px 0 40px;overflow-wrap:anywhere}.article-page h2{font-size:clamp(30px,4vw,56px);line-height:1.15;letter-spacing:-.035em;font-weight:400;margin:0 0 30px}.article-page h3{font-size:25px;line-height:1.3;font-weight:400;margin:0 0 18px}.article-page p{max-width:70ch;color:#a7b1bf;line-height:1.85}.article-page .eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#ff6a1f}.page-hero-bottom{display:flex;gap:40px;justify-content:space-between;align-items:flex-end;flex-wrap:wrap}.page-hero-bottom>p{font-size:18px;max-width:63ch;margin:0}.article-page .light-section,.article-page .dark-section,.article-page .dark-surface{background:none;padding:80px 0;border-top:1px solid #ffffff15}.article-page .text-link{display:inline-flex;gap:20px;font-size:13px;margin:18px 0;color:#cbd2d9}.article-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:90px}.article-toc{display:grid;gap:20px;align-self:start;font-size:12px;color:#94a4b6}.article-toc a{display:flex;gap:14px}.article-chapter{display:grid;grid-template-columns:35px minmax(0,1fr);gap:26px;padding-bottom:80px;margin-bottom:55px;border-bottom:1px solid #ffffff15}.chapter-index{font-size:10px;color:#ff6a1f;padding-top:12px}.article-chapter h2{font-size:38px;max-width:25ch}.feature-columns{display:block}.numbered-feature{display:grid;grid-template-columns:45px minmax(180px,.8fr) minmax(0,1.2fr);gap:40px;padding:55px 0;border-top:1px solid #ffffff15}.numbered-feature>span{font-size:11px;color:#ff6a1f}.numbered-feature p{margin:0}.example-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;border-top:1px solid #ffffff15;padding:100px 0}.related-strip{display:flex;justify-content:space-between;gap:35px;flex-wrap:wrap;border-top:1px solid #ffffff15;padding:35px 0}.world-directory-row,.resource-item{display:grid;grid-template-columns:60px minmax(0,.7fr) minmax(0,1fr) 24px;gap:30px;padding:35px 0;border-bottom:1px solid #ffffff15}.world-directory-row h2,.resource-item h2{font-size:28px;margin:0}.world-directory-row p,.resource-item p{font-size:14px;margin:0}.world-directory-row>span,.resource-item>span{color:#ff6a1f;font-size:11px}.article-page input{background:#0d1520;border:1px solid #354555;border-radius:10px;color:#f3f0e7;padding:16px 18px;font:inherit;width:min(100%,650px)}.article-page label{display:block;font-size:13px;color:#b8c1ce;margin-bottom:14px}.article-page .small-note{font-size:12px;color:#97a6b8}.portal-row{display:grid;grid-template-columns:60px .8fr 1fr 24px;gap:35px;align-items:center;padding:45px 0;border-bottom:1px solid #ffffff15}.portal-row h2{font-size:42px;margin:0}.portal-row p{font-size:14px;margin:0}.article-page code{font:11px/1.6 monospace;overflow-wrap:anywhere;color:#99abc0}.edition-grid{display:block}.edition-card{display:block;padding:40px 0;border-bottom:1px solid #ffffff15}.edition-card .edition-art{display:none}.edition-card h2,.edition-card h3{font-size:30px;margin:14px 0}.edition-card p{font-size:14px;max-width:64ch}.article-page .edition-art{max-width:520px;margin:35px auto;width:100%}.edition-art img{display:block;width:100%;height:auto;border-radius:22px}.typographic-art{min-height:280px;display:grid;place-items:center;color:#ff6a1f;font-size:100px}.table-scroll{width:100%;overflow-x:auto;margin:35px 0}table{width:100%;border-collapse:collapse;text-align:left}th,td{font-size:13px;line-height:1.7;padding:20px 18px;border-bottom:1px solid #ffffff15;vertical-align:top}th{font-size:10px;color:#899bad}td{color:#b1bcc9}.studio-notes>section{max-width:920px;padding:60px 0;border-bottom:1px solid #ffffff15}.studio-notes h2{font-size:40px}.journal-list article{display:grid;grid-template-columns:140px minmax(0,1fr);gap:80px;padding:60px 0;border-bottom:1px solid #ffffff15}.article-page time{font-size:11px;color:#ff6a1f}.build-record{padding:45px 0;border-top:1px solid #ffffff18}.build-record h2,.build-record h3{font-size:32px}.build-grid,.build-records{display:block}.article-page [role=tablist],.build-filters{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.article-page button{font:inherit;font-size:13px;color:#c7d0dc;background:none;border:1px solid #ffffff24;border-radius:9px;padding:11px 16px}.article-page button[aria-selected=true],.article-page button[aria-pressed=true]{border-color:#ff6a1f;color:#f3f0e7}.section-heading{display:flex;justify-content:space-between;gap:60px;margin-bottom:70px}.section-heading>p{max-width:40ch;font-size:14px}.journey-layout{display:grid;grid-template-columns:.55fr 1fr;gap:80px}.journey-tabs{display:grid!important;align-content:start}.journey-tabs button{text-align:left}#journey-panel{background:#111b27;border:1px solid #ffffff1a;border-radius:24px;padding:45px;min-height:360px}#journey-title{font-size:36px}#journey-note{font-size:13px;border-top:1px solid #ffffff20;padding-top:24px}.article-page .close-cta{padding:110px 0;border-top:1px solid #ffffff15}.life-explorer{display:grid;grid-template-columns:260px minmax(0,1fr);gap:70px;width:calc(100% - 120px);max-width:1320px;margin:40px auto 110px}.life-explorer [role=tablist]{display:block;max-height:480px;overflow:auto;margin:0}.life-explorer button[data-world]{display:block;width:100%;text-align:left;min-height:48px;margin-bottom:6px;background:none;border-color:transparent;border-bottom:1px solid #ffffff15;border-radius:0}.life-explorer #world-panel{padding:40px;border:1px solid #ffffff18;border-radius:24px;background:#0d1520}.life-explorer #world-title{font-size:38px}.life-explorer #world-capabilities{padding:0;list-style:none}.life-explorer #world-capabilities li{display:flex;gap:18px;border-top:1px solid #ffffff14;padding-top:16px}.life-explorer #world-capabilities span{font-size:10px;color:#ff6a1f}.linux-core-art{position:relative;width:min(100%,420px);aspect-ratio:1;margin:auto;perspective:800px}.linux-core-art i{position:absolute;inset:20%;border:1px solid #b22234;border-radius:50%;transform:rotateX(52deg);animation:gyroR 38s linear infinite}.linux-core-art i:nth-child(2){border-color:#f3f0e7;transform:rotateY(58deg);animation:gyroW 49s linear infinite}.linux-core-art i:nth-child(3){border-color:#3c3b6e;transform:rotateX(65deg);animation:gyroB 57s linear infinite}.linux-core-art b{position:absolute;inset:47%;background:#b8441f;border-radius:50%;box-shadow:0 0 30px #b8441f33}.complete-story{padding:35px 0;border-top:1px solid #ffffff18;margin:80px auto}.complete-story>summary{cursor:pointer;font-size:14px;color:#c4ccd7}.complete-story>div{padding-top:70px}.complete-story img{display:none}.complete-story h2{font-size:40px}
.atlas-studio[data-motion=off] *,html.motion-off *{animation-play-state:paused!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:780px){.header .brand img{width:165px}.studio-nav{gap:18px;margin-right:20px}.portal-login{padding:12px 16px!important;font-size:10px}.quiet-menu{position:fixed;left:20px;right:20px;width:auto;top:125px;max-height:calc(100dvh - 150px)}.article-page .rail,.article-page>.breadcrumb{width:calc(100% - 48px)}.page-hero{padding:65px 0 80px}.article-page h1{font-size:clamp(42px,8vw,64px)}.article-layout,.journey-layout,.example-story{display:block}.article-toc{margin-bottom:50px}.numbered-feature{grid-template-columns:30px minmax(0,1fr);gap:20px;padding:40px 0}.numbered-feature p{grid-column:2}.example-story{padding:70px 0}.world-directory-row,.resource-item,.portal-row{grid-template-columns:35px minmax(0,1fr) 20px;gap:20px}.world-directory-row p,.resource-item p,.portal-row p{grid-column:2;grid-row:2}.resource-item>strong{grid-column:3;grid-row:1}.portal-row h2{font-size:34px}.section-heading{display:block}.journal-list article{display:block}.journal-list time{display:block;margin-bottom:25px}.life-explorer{width:calc(100% - 48px);display:block}.life-explorer [role=tablist]{display:flex;flex-wrap:nowrap;overflow:auto;max-height:none;gap:8px;margin-bottom:22px}.life-explorer button[data-world]{flex:0 0 auto;width:auto;white-space:nowrap;border:1px solid #ffffff20;border-radius:99px}.life-explorer #world-panel{padding:28px}.life-explorer #world-title{font-size:30px}.presence-copy{margin-top:45px}.footer-meta{font-size:10.5px}}
@media(max-width:580px){.engineering-bar{font-size:8px;letter-spacing:.08em;padding:7px 12px}.header{gap:10px}.header .brand img{width:128px}.studio-nav{margin-right:6px;gap:0}.studio-nav button{font-size:11px}.desktop-os{display:none}.mobile-os{display:block;margin-top:20px;border-top:1px solid #ffffff20;padding-top:15px}.portal-login{padding:10px 12px!important;font-size:9px;gap:8px}.portal-login .arrow{font-size:13px}.quiet-menu{top:120px;left:16px;right:16px;padding:20px}.os-switch{gap:2px}.os-choice{font-size:9px;padding:5px 7px}.os-choice svg{width:13px;height:13px}.orbit-note p{font-size:9px}.article-page h1{font-size:42px}.article-chapter{grid-template-columns:22px minmax(0,1fr);gap:14px;padding-bottom:55px}.article-chapter h2{font-size:30px}.page-hero-bottom>p{font-size:16px}#journey-panel{padding:28px}#journey-title{font-size:29px}.footer-line{display:block}.footer-line p{margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-play-state:paused!important;scroll-behavior:auto!important;transition:none!important}}

.header .portal-login{display:inline-flex!important}.article-page img{max-width:100%;height:auto}.article-page .rail{min-width:0}.article-page [class*="grid"]{min-width:0}

/* R9 art blends into the approved abyss/blue palette. */
.r9-gyro{position:absolute;inset:0;border:0;width:100%;height:100%;background:transparent;pointer-events:none}.scene:before{background:radial-gradient(ellipse at 50% 48%,rgba(24,54,81,.22),transparent 65%)}.r9-inline-gyro{display:block;border:0;background:transparent;width:min(100%,420px);aspect-ratio:1;margin:auto;pointer-events:none}

/* Match iframe and artwork color scheme for true transparent compositing. */
.r9-gyro,.r9-inline-gyro{color-scheme:dark}

/* R10: the supplied Home particle face, three true gyro orbits, and a quiet stationary key. */
.atomic-planet{position:absolute;width:460px;height:460px;left:65px;top:-4px}
.atomic-planet canvas{position:absolute;inset:0;display:block;width:100%;height:100%;background:transparent}
.atomic-particles{z-index:1}.gyro-back{z-index:0}.gyro-front{z-index:2}
.ring-legend{position:absolute;left:50%;bottom:91px;transform:translateX(-50%);width:270px;margin:0;font-size:10px;line-height:14px;color:#a0adbd}
.ring-legend>div{display:grid;grid-template-columns:90px 1fr;gap:10px;padding:1px 0}
.ring-legend dt{display:flex;align-items:center;gap:8px;font-weight:500;color:#e4e9ef}.ring-legend dd{margin:0}
.ring-legend dt span{width:12px;height:1px;flex:none;background:var(--ring-color)}
.legend-red{--ring-color:rgb(223,52,73)}.legend-white{--ring-color:rgb(235,240,248)}.legend-blue{--ring-color:rgb(73,121,197)}
@media(max-width:700px){.ring-legend{bottom:79px;font-size:10px;line-height:14px;width:266px}.atomic-planet{width:430px;height:430px;left:80px;top:0}}

/* R12: a persistent, quiet portal header and a wider content grid. */
html{scroll-padding-top:120px}
.atlas-studio{overflow-x:clip;overflow-y:visible}
.atlas-studio .header{position:sticky;top:0;z-index:80;isolation:isolate;border-bottom:1px solid rgba(255,106,31,.14)}
.atlas-studio .header::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:#080c13;z-index:-1;pointer-events:none}
.atlas-studio :is(h1,h2,h3,h4,h5,h6) :is(.serif,em,i),.atlas-studio :is(h1,h2,h3,h4,h5,h6).serif{color:#ff6a1f}
.atlas-studio .hero .scene{display:grid;width:100%;min-width:0;grid-template-columns:minmax(0,1fr)220px;grid-template-rows:minmax(0,1fr)auto;column-gap:24px;row-gap:12px;align-items:center}
.atlas-studio .hero .universe{position:relative;left:auto;top:auto;transform:none;width:100%;height:auto;max-width:460px;justify-self:center;grid-column:1;grid-row:1}
.atlas-studio .hero .atomic-planet{position:relative;inset:auto;left:auto;top:auto;width:100%;height:auto;aspect-ratio:1}
.atlas-studio .hero .ring-legend{position:static;left:auto;right:auto;top:auto;bottom:auto;transform:none;width:220px;grid-column:2;grid-row:1;align-self:center;justify-self:end}
.atlas-studio .hero .ring-legend>div{grid-template-columns:80px 1fr}
.atlas-studio .hero .orbit-note{position:static;left:auto;right:auto;top:auto;bottom:auto;width:100%;grid-column:1;grid-row:2;align-self:start;padding-top:8px}
.atlas-studio .orbit-note .beta-download{font-size:10px;letter-spacing:.02em;text-transform:none;color:#ff6a1f;text-decoration:underline;text-decoration-color:rgba(255,106,31,.32);text-underline-offset:4px}
.atlas-studio .orbit-note .beta-download:hover{text-decoration-color:#ff6a1f}
@media(max-width:1100px){
.atlas-studio .hero .scene{grid-template-columns:minmax(0,1fr)160px;column-gap:16px}
.atlas-studio .hero .ring-legend{width:160px}
.atlas-studio .hero .ring-legend>div{display:block;padding:4px 0}
.atlas-studio .hero .ring-legend dd{margin:2px 0 0 20px;font-size:9.5px;line-height:14px}
}
@media(max-width:700px){
html{scroll-padding-top:102px}
.atlas-studio .hero .scene{grid-template-columns:minmax(0,1fr)120px;column-gap:12px}
.atlas-studio .hero .ring-legend{width:120px}
.atlas-studio .hero .orbit-note{grid-column:1/-1}
}


/* DUKE: ported R9 component rules for classes R12 pages use but site.css lacked (navy-remapped) */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.eyebrow,.mini-label{font-size:10px;font-weight:600;letter-spacing:1.8px;line-height:1.6;text-transform:uppercase}
.mini-label{color:var(--muted)}
.home-hero{position:relative;isolation:isolate;overflow:hidden}
.hero-grid{position:relative;display:grid;grid-template-columns:46% 54%;min-height:665px;align-items:center;padding-block:60px 64px}
.hero-statement{font-size:17px;line-height:1.55;margin-top:34px;letter-spacing:-.1px}
.hero-intro{font-size:13px;line-height:1.7;color:var(--muted);margin-top:16px}
.hero-visual{position:relative;align-self:stretch;display:flex;align-items:center;min-height:530px;margin-left:-34px;isolation:isolate}
.hero-artwork{position:relative;width:115%;max-width:750px;flex-shrink:0;margin-left:-3%;mix-blend-mode:screen;z-index:-1}
.hero-artwork img{width:100%;height:auto;mask-image:radial-gradient(ellipse at center,black 52%,transparent 73%)}
.orbital-track{position:absolute;width:93%;aspect-ratio:1;border:1px solid #283347;border-radius:50%;top:50%;left:52%;transform:translate(-50%,-50%);z-index:-2}
.orbital-track:after{content:'';position:absolute;inset:-30px;border:1px dashed #212b3d;border-radius:50%;opacity:.6}
.orbital-track i{position:absolute;inset:-1px;animation:orbit 65s linear infinite}
.orbital-track i:after{content:'';position:absolute;left:50%;top:-3px;width:6px;height:6px;background:var(--orange);border-radius:50%}
.visual-label{position:absolute;z-index:2;font-size:8px;letter-spacing:1.5px;line-height:1.6;color:#a7b4c9}
.visual-label-top{top:6px;left:16%;padding:7px 0 7px 17px;border-left:1px solid var(--orange)}
.visual-label-bottom{bottom:-5px;left:16%;right:0;display:flex;justify-content:space-between;align-items:center}
.visual-label-bottom>span:first-child{color:var(--white);font-size:33px;letter-spacing:7px}
.visual-label-bottom>span:last-child{font-size:8px;letter-spacing:1.35px;padding-left:15px;border-left:1px solid #526076}
.hero-base{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:21px 0 28px;font-size:8px;letter-spacing:1.3px;color:var(--muted)}
.hero-base a{color:var(--white);display:flex;gap:20px}
.hero-base a span{font-size:15px;line-height:.5}
.light-section .eyebrow,.light-section .mini-label{color:var(--muted)}
.mission{padding-bottom:60px}
.mission-stage{display:grid;grid-template-columns:1.08fr 1fr;border-top:1px solid var(--line);padding-top:50px;gap:85px;align-items:center}
.craft-illustration{position:relative;min-height:445px;background:var(--ink);overflow:hidden;color:var(--white);display:grid;place-items:center}
.craft-circle{position:absolute;border:1px solid #455267;border-radius:50%;width:290px;height:290px}
.craft-circle.c1{transform:rotate(-28deg) scaleY(.47)}
.craft-circle.c2{transform:rotate(28deg) scaleY(.47)}
.craft-circle.c3{border:1px dashed #526078;transform:rotate(90deg) scaleY(.47)}
.craft-circle.c1:after{content:'';position:absolute;width:9px;height:9px;border-radius:50%;background:var(--orange);top:32px;left:35px}
.craft-line{height:1px;position:absolute;left:35px;right:35px;background:#253044;top:50%}
.craft-line:after{content:'';position:absolute;width:1px;height:320px;top:-160px;left:50%;background:#253044}
.craft-core{position:relative;display:grid;place-items:center;width:90px;height:90px;border-radius:50%;background:var(--orange);color:var(--ink);font-size:60px;font-family:Georgia,serif}
.craft-caption{position:absolute;bottom:30px;left:0;right:0;font-size:7px;letter-spacing:2px;text-align:center;color:#93a0b5}
.mission-copy h3{font-size:43px;line-height:1.1;letter-spacing:-1.8px;margin:20px 0 22px}
.mission-copy p:not(.mini-label){font-size:14px;line-height:1.8;margin-bottom:17px;color:#555b55}
.mission-copy p strong{color:var(--ink);font-weight:600}
.mission-copy .authority-line{border-left:2px solid var(--orange);padding-left:17px;margin-top:24px}
.mission-copy .text-link{margin-top:6px}
.world-section{padding-top:70px}
.world-section .section-heading{padding-top:60px;border-top:1px solid var(--line)}
.world-explorer{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.world-index [role=tablist]{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.world-index button{display:flex;align-items:center;gap:12px;min-height:51px;text-align:left;border-bottom:1px solid var(--line);font-size:13px;padding:10px 0;transition:color .2s}
.world-index button>span{font-size:9px;color:var(--muted);width:19px}
.world-index button>b{font-size:17px;font-weight:400;margin-left:auto;opacity:0;transition:opacity .2s,transform .2s}
.world-index button[aria-selected=true]{font-weight:600;color:var(--orange)}
.world-index button[aria-selected=true]>b{opacity:1}
.world-index button:hover>b{opacity:1;transform:translate(2px,-2px)}
.world-index>p{font-size:11px;color:var(--muted);margin-top:30px}
.agenda-paper{background:var(--navy);border:1px solid var(--line);padding:27px 30px 0;box-shadow:9px 9px 0 #0d1b2e;min-width:0}
.paper-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:19px;font-size:8px;letter-spacing:1.7px;font-weight:600}
.paper-dot{height:6px;width:6px;background:var(--orange);border-radius:50%}
.paper-index{font-size:10px;letter-spacing:1px;text-transform:uppercase;margin:25px 0 10px;color:var(--muted)}
.agenda-paper h3{font-family:Georgia,serif;font-size:31px;line-height:1.15;letter-spacing:-.65px;max-width:430px}
.agenda-paper>p:not(.paper-index):not(.small-note){font-size:12px;line-height:1.8;color:#696d66;margin-top:15px}
.agenda-paper ol{padding:0;margin:23px 0;list-style:none}
.agenda-paper li{display:flex;gap:13px;align-items:baseline;border-top:1px solid var(--line);padding:11px 0 7px;font-size:11px}
.agenda-paper li>span{color:var(--orange);font-size:9px}
.agenda-paper li p{line-height:1.4}
.paper-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;padding:8px 0}
.paper-bottom .text-link{font-size:10px;border:0;gap:12px}
.paper-bottom>span{font-size:6px;letter-spacing:1.1px;color:#6c7269}
.section-end{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);margin-top:60px;padding-top:22px}
.section-end p{font-size:11px;color:var(--muted)}
.continuity-section{padding-block:110px 90px}
.continuity-section .section-heading>p{color:var(--muted)}
.journey-line{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:70px}
.journey-line article{position:relative;border-top:1px solid #4a5260;padding:32px 35px 15px 0}
.journey-line article:last-child{padding-right:0}
.journey-line article:before{content:'';width:7px;height:7px;background:var(--orange);position:absolute;top:-4px;left:0;border-radius:50%}
.journey-line article>span{font-size:10px;color:var(--muted)}
.journey-line h3{font-size:21px;margin:19px 0 13px;letter-spacing:-.4px}
.journey-line p{font-size:12px;color:var(--muted);line-height:1.85;max-width:240px}
.continuity-note{display:flex;align-items:center;gap:30px;margin-top:45px;padding-top:30px;border-top:1px solid var(--line)}
.continuity-note .text-link{margin-left:auto}
.continuity-loop{font-size:75px;font-family:Georgia,serif;color:var(--orange);line-height:.6}
.continuity-note p{font-size:13px;color:var(--muted)}
.platform-section .section-heading>p{max-width:300px}
.portal-code{font-size:10px;letter-spacing:1.2px;color:var(--muted)}
.portal-host{font-size:9px;letter-spacing:1.35px;color:var(--muted)}
.round-arrow{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--line);border-radius:50%;font-size:22px;transition:background .2s,border-color .2s,transform .2s}
.portal-row:hover .round-arrow{background:var(--orange);color:var(--ink);border-color:var(--orange);transform:rotate(6deg)}
.closing-bottom{display:flex;align-items:center;gap:70px;margin-top:40px}
.closing-bottom p{font-size:13px;line-height:1.8;color:var(--muted)}
.directory-rows{display:flex;flex-direction:column}
.editorial-grid{display:grid;grid-template-columns:245px 1fr;gap:100px}
.editorial-grid aside{position:sticky;top:30px;align-self:start}
.editorial-grid aside nav{margin-top:25px}
.editorial-grid aside a{display:flex;gap:15px;border-top:1px solid var(--line);font-size:11px;line-height:1.6;padding:16px 0}
.editorial-grid aside a span{font-size:9px;color:#8c3a0d}
.editorial>.related-strip{margin-top:65px}
.editorial-grid article>.small-note{max-width:630px}
.editorial-grid article>.text-link{margin-top:20px}
.platform-hero{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;padding-block:70px;align-items:center}
.platform-hero .eyebrow{color:var(--accent)}
.platform-hero h1{font-size:clamp(70px,10vw,145px);letter-spacing:-7px;line-height:1}
.platform-period{color:var(--accent)}
.platform-hero h2{font-size:25px;letter-spacing:-.8px;margin-top:30px}
.platform-hero p:not(.eyebrow){max-width:550px;font-size:14px;color:var(--muted);margin-top:18px;line-height:1.9}
.os-monogram{border:1px solid #39485d;border-radius:50%;aspect-ratio:1;display:grid;place-items:center;font-size:70px;font-weight:400;color:var(--accent);position:relative;letter-spacing:-3px;margin:20px;max-width:350px}
.os-monogram:after{content:'';position:absolute;inset:-20px;border:1px dashed #26354b;border-radius:50%}
.platform-tabs{display:flex;gap:34px;min-height:60px;border-top:1px solid var(--line);align-items:stretch;overflow:auto}
.platform-tabs a{font-size:11px;display:flex;align-items:center;flex-shrink:0;border-bottom:2px solid transparent;padding:20px 0}
.platform-tabs a[aria-current=page]{border-color:var(--accent);color:var(--accent)}
.edition-row{display:grid;grid-template-columns:35px 1fr 1fr 160px 45px;gap:28px;align-items:center;border-top:1px solid var(--line);min-height:185px}
.edition-row:last-child{border-bottom:1px solid var(--line)}
.edition-number{font-size:10px;color:var(--muted)}
.edition-row .mini-label{font-size:8px;letter-spacing:1.5px;margin-bottom:9px}
.edition-row h3{font-size:38px;letter-spacing:-1.4px}
.edition-row>p{font-size:12px;line-height:1.7;color:var(--muted);max-width:150px}
.edition-thumb{width:150px;height:150px;overflow:hidden;background:var(--ink);display:flex;align-items:center;justify-content:center}
.edition-thumb img{width:100%;height:100%;object-fit:contain}
.edition-thumb iframe{border:0;width:100%;height:100%;pointer-events:none}
.edition-row:hover h3{color:var(--orange)}
.release-note{display:flex;justify-content:space-between;align-items:center;gap:70px;padding:42px;background:var(--navy);margin-block:65px}
.release-note h3{font-size:29px;letter-spacing:-1px;margin-bottom:14px}
.release-note p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:610px}
.release-note .eyebrow{margin-bottom:15px}
.release-note .button{flex-shrink:0}
.dark-button{background:var(--ink);color:var(--white);border-color:var(--ink)}
.dark-button:hover{background:#243149}
.edition-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;padding-block:40px 50px}
.edition-hero .eyebrow{color:var(--accent)}
.edition-hero h1{font-size:clamp(65px,7vw,105px);letter-spacing:-5px;line-height:1}
.edition-hero h2{font-size:30px;font-family:Georgia,serif;line-height:1.2;margin-top:30px;max-width:440px}
.edition-hero>div>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.85;max-width:450px;margin-top:25px}
.edition-hero .button{margin-top:30px}
.art-note{text-align:center;color:var(--muted);font-size:8px!important;letter-spacing:1px}
.edition-thumb.typographic-art>span{font-size:60px}
.edition-story{display:grid;grid-template-columns:1.3fr 1fr;gap:100px}
.edition-story h2{font-size:45px;line-height:1.08;letter-spacing:-1.7px;margin-bottom:30px}
.edition-story article>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:18px}
.edition-story .text-link{margin-top:15px}
.availability{border:1px solid var(--line);padding:30px;align-self:start}
.availability h3{font-size:23px;margin:25px 0 18px;letter-spacing:-.8px}
.availability p{font-size:13px;color:#636b5c;line-height:1.85}
.availability .text-link{font-size:11px}
.edition-story+.related-strip{margin-top:60px}
.status-pill{display:inline-block;font-size:8px;letter-spacing:.5px;padding:7px 9px;border:1px solid var(--line);color:var(--muted);max-width:100%;line-height:1.4}
.status-pill.candidate{border-color:var(--line);color:var(--orange)}
.result-count{font-size:11px;color:#616c57;margin:25px 0}
.build-record .mini-label{font-size:8px}
.build-record .status-pill{margin:22px 0 16px}
.build-record-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;font-size:8px;color:var(--muted);width:100%;padding-top:24px;margin-top:auto}
.build-record-bottom a{white-space:nowrap;color:var(--ink);font-size:10px}
.source-note{padding:35px 40px;background:var(--navy);margin-top:45px}
.source-note h3{font-size:25px;letter-spacing:-.8px;margin-bottom:15px}
.source-note p{font-size:13px;color:var(--muted);line-height:1.9;max-width:900px}
.source-note .text-link{margin-top:20px}
.guide-steps>article{display:grid;grid-template-columns:100px 1fr;gap:30px;border-top:1px solid var(--line);padding:40px 0 50px}
.guide-steps>article>span{font-size:12px;color:var(--orange);padding-top:10px}
.guide-steps h2{font-size:38px;letter-spacing:-1.3px;margin-bottom:20px}
.guide-steps p{font-size:14px;line-height:1.9;color:var(--muted);max-width:750px}
.guide-steps details{border-top:1px solid var(--line);padding:24px 0}
.guide-steps summary{cursor:pointer;font-size:17px}
.guide-steps details p{margin:20px 0 0}
.guide-steps details .text-link{margin-top:20px}
.guide-steps details:last-child{border-bottom:1px solid var(--line)}
.experience-demo{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.experience-demo h2{font-size:48px;line-height:1.1;letter-spacing:-1.6px;margin:25px 0}
.experience-demo>div>p:not(.mini-label){font-size:14px;line-height:1.85;color:var(--muted);max-width:380px}
.journey-paper{padding-bottom:25px;min-height:440px}
.journey-paper>.small-note{font-size:9px!important;line-height:1.8!important;color:var(--muted)}
.decision-slip{margin-top:28px;padding:20px;background:var(--navy);border-left:2px solid var(--orange)}
.decision-slip>span{font-size:8px;letter-spacing:1px;color:var(--muted)}
.decision-slip>p{font-size:12px;line-height:1.7;margin-top:9px}
.directory-search{display:flex;flex-direction:column;font-size:12px;gap:15px;max-width:720px}
.directory-search input{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);padding:15px 0;font-size:23px;color:var(--ink);border-radius:0;min-height:56px}
.directory-search input::placeholder{color:var(--muted)}
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.external-resources{display:flex;gap:35px;margin-top:45px;flex-wrap:wrap}
.menu-grid .mini-label{font-size:8px;letter-spacing:1.3px;color:var(--orange);margin-bottom:6px}
.hero-grid{min-height:740px}
.hero-artwork{width:118%}
.hero-grid{min-height:630px}
.hero-visual{min-height:500px}
.visual-label-bottom>span:first-child{font-size:26px}
.visual-label-bottom>span:last-child{font-size:7px}
.mission-stage{gap:50px}
.world-explorer{gap:45px}
.agenda-paper{padding-inline:23px}
.portal-host{font-size:8px}
.editorial-grid{gap:55px;grid-template-columns:210px 1fr}
.edition-row{grid-template-columns:25px 1fr .8fr 130px 40px;gap:20px}
.edition-thumb{width:125px;height:125px}
.edition-row h3{font-size:33px}
.edition-story{gap:55px}
.release-note{gap:35px;padding:30px}
.experience-demo{gap:45px}
.os-monogram{font-size:60px}
.hero-grid{grid-template-columns:48% 52%;min-height:620px}
.hero-statement{font-size:15px}
.hero-intro{font-size:12px}
.hero-visual{margin-left:-20px;min-height:440px}
.hero-artwork{width:120%}
.visual-label-top{left:20%;font-size:7px;max-width:160px}
.visual-label-bottom{bottom:15px;left:17%;gap:20px}
.visual-label-bottom>span:first-child{font-size:23px;letter-spacing:4px}
.visual-label-bottom>span:last-child{font-size:6px;letter-spacing:.8px}
.mission{padding-bottom:50px}
.mission-stage{gap:35px}
.craft-illustration{min-height:390px}
.craft-circle{width:240px;height:240px}
.mission-copy h3{font-size:34px}
.mission-copy p:not(.mini-label){font-size:12px}
.world-section{padding-top:30px}
.world-explorer{gap:30px;grid-template-columns:.95fr 1.05fr}
.world-index [role=tablist]{grid-template-columns:1fr}
.world-index button{min-height:40px;font-size:12px;padding-block:7px}
.world-index>p{font-size:10px}
.agenda-paper h3{font-size:27px}
.agenda-paper>p:not(.paper-index):not(.small-note){font-size:11px}
.paper-bottom{flex-wrap:wrap;padding:8px 0 17px;gap:3px}
.paper-bottom>span{width:100%}
.journey-line{grid-template-columns:1fr 1fr;gap:35px}
.journey-line article{padding-right:25px}
.continuity-section{padding-block:80px 60px}
.portal-host{font-size:7px;letter-spacing:.9px}
.round-arrow{width:36px;height:36px;font-size:20px}
.closing-bottom{gap:40px}
.editorial-grid{grid-template-columns:170px 1fr;gap:40px}
.platform-hero{grid-template-columns:1.5fr .8fr;gap:35px}
.platform-hero h1{font-size:100px}
.platform-hero h2{font-size:23px}
.platform-hero p:not(.eyebrow){font-size:13px}
.os-monogram{font-size:42px;letter-spacing:-2px;margin:15px}
.os-monogram:after{inset:-13px}
.edition-row{grid-template-columns:25px 1fr 125px 35px;gap:22px;min-height:165px}
.edition-row>p{display:none}
.edition-hero{gap:25px}
.edition-hero h1{font-size:65px;letter-spacing:-3px}
.edition-hero h2{font-size:26px}
.edition-hero>div>p:not(.eyebrow){font-size:12px}
.edition-hero .button{font-size:11px}
.release-note{flex-direction:column;align-items:start;gap:22px}
.edition-story{grid-template-columns:1.2fr 1fr;gap:35px}
.edition-story h2{font-size:36px}
.edition-story article>p:not(.eyebrow){font-size:13px}
.availability{padding:23px}
.experience-demo{gap:40px}
.experience-demo h2{font-size:38px}
.experience-demo>div>p:not(.mini-label){font-size:12px}
.resource-grid{grid-template-columns:1fr 1fr}
.menu-grid>div:last-child .mini-label{width:100%}
.hero-grid{display:flex;flex-direction:column;align-items:stretch;padding-block:47px 15px;min-height:0}
.hero-statement{font-size:16px;margin-top:27px;max-width:330px}
.hero-intro{font-size:12px;margin-top:17px}
.hero-visual{height:auto;min-height:365px;aspect-ratio:1;margin-left:0;margin-top:28px;align-self:stretch}
.hero-artwork{width:118%;max-width:none;margin-left:-9%;margin-top:-10px}
.orbital-track{width:91%;left:50%}
.orbital-track:after{inset:-15px}
.visual-label-top{top:2px;left:2%;font-size:6px;padding-left:10px;max-width:none;letter-spacing:1.3px}
.visual-label-bottom{left:2%;right:2%;bottom:2px;gap:30px}
.visual-label-bottom>span:first-child{font-size:24px;letter-spacing:5px}
.visual-label-bottom>span:last-child{font-size:6px;letter-spacing:1px;line-height:1.7}
.hero-base{font-size:6px;letter-spacing:.8px;padding-block:20px}
.hero-base>span:last-child{display:none}
.hero-base a{gap:15px}
.mission{padding-bottom:35px}
.mission-stage{grid-template-columns:1fr;gap:32px;padding-top:30px}
.craft-illustration{min-height:320px}
.craft-circle{width:235px;height:235px}
.craft-core{width:75px;height:75px;font-size:48px}
.craft-caption{font-size:6px;letter-spacing:1.4px;bottom:25px}
.mission-copy h3{font-size:38px;margin-block:17px 22px}
.mission-copy .mini-label{font-size:8px;letter-spacing:1.5px}
.mission-copy p:not(.mini-label){font-size:13px}
.mission-copy .text-link{font-size:11px}
.world-section{padding-top:25px}
.world-section .section-heading{padding-top:45px}
.world-explorer{grid-template-columns:1fr;gap:30px}
.world-index [role=tablist]{grid-template-columns:1fr 1fr;gap:0 17px}
.world-index button{font-size:11px;gap:7px;min-height:46px}
.world-index button>span{width:14px;font-size:8px}
.world-index button>b{font-size:15px}
.world-index>p{display:none}
.agenda-paper{padding:24px 23px 0;box-shadow:6px 6px 0 #e0ddd5}
.agenda-paper h3{font-size:29px}
.agenda-paper>p:not(.paper-index):not(.small-note){font-size:12px}
.paper-top{font-size:7px;letter-spacing:1.5px}
.paper-bottom{flex-wrap:nowrap;padding-block:9px 12px;gap:15px}
.paper-bottom>span{width:auto;max-width:70px;font-size:6px;line-height:1.7}
.paper-bottom .text-link{font-size:10px;gap:10px}
.section-end{margin-top:40px;display:block;padding-top:18px}
.section-end p{font-size:10px;margin-top:17px}
.continuity-section{padding-block:65px 50px}
.journey-line{margin-top:42px;gap:30px 20px}
.journey-line article{padding:25px 0 0}
.journey-line h3{font-size:18px;margin:16px 0 13px;line-height:1.2}
.journey-line p{font-size:11px;line-height:1.8}
.continuity-note{margin-top:40px;padding-top:30px;flex-wrap:wrap;gap:20px 25px}
.continuity-loop{font-size:65px}
.continuity-note p{font-size:11px}
.continuity-note .text-link{font-size:11px;margin-left:0}
.portal-code{font-size:8px;grid-column:1;grid-row:1/3;align-self:center}
.portal-host{grid-column:2;grid-row:2;font-size:6px;letter-spacing:1px;margin-top:-3px}
.portal-row .round-arrow{grid-column:3;grid-row:1/3;width:32px;height:32px;font-size:18px}
.closing-bottom{margin-top:30px;gap:27px;align-items:start;flex-wrap:wrap}
.closing-bottom p{font-size:11px;line-height:1.9}
.closing-bottom .button{font-size:11px;min-height:47px;gap:20px;padding:13px 16px}
.editorial-grid{grid-template-columns:1fr;gap:45px}
.editorial-grid aside{position:static}
.editorial-grid aside .mini-label{font-size:8px}
.editorial-grid aside nav{margin-top:16px}
.editorial-grid aside a{font-size:11px;padding-block:12px}
.editorial>.related-strip{margin-top:40px}
.platform-hero{grid-template-columns:1fr;gap:40px;padding-block:55px 45px}
.platform-hero h1{font-size:77px;letter-spacing:-4px}
.platform-hero .eyebrow{font-size:8px;margin-bottom:23px}
.platform-hero h2{font-size:24px;margin-top:25px}
.platform-hero p:not(.eyebrow){font-size:13px}
.os-monogram{display:none}
.platform-tabs{width:88vw;gap:25px;min-height:55px}
.platform-tabs a{font-size:10px;padding-block:18px}
.edition-row{grid-template-columns:20px 1fr 86px 22px;gap:12px;min-height:130px}
.edition-row .mini-label{font-size:6px;letter-spacing:1px;margin-bottom:8px}
.edition-row h3{font-size:27px;letter-spacing:-1px}
.edition-number{font-size:8px}
.edition-thumb{width:85px;height:85px}
.edition-row .round-arrow{width:22px;height:22px;font-size:14px;border:0}
.release-note{padding:26px;margin-block:40px;gap:25px}
.release-note .eyebrow{font-size:8px}
.release-note h3{font-size:27px;line-height:1.15}
.release-note p:not(.eyebrow){font-size:12px}
.release-note .button{font-size:10px;min-height:47px;padding:13px 16px;gap:22px}
.edition-hero{grid-template-columns:1fr;padding-block:45px 25px;gap:20px}
.edition-hero .eyebrow{font-size:8px;margin-bottom:25px}
.edition-hero h1{font-size:72px;letter-spacing:-3px}
.edition-hero h2{font-size:28px;margin-top:25px}
.edition-hero>div>p:not(.eyebrow){font-size:13px;margin-top:20px}
.edition-hero .button{font-size:11px;margin-top:25px}
.edition-art-wrap{max-width:430px;width:100%;margin-inline:auto}
.art-note{font-size:7px!important}
.edition-story{grid-template-columns:1fr;gap:40px}
.edition-story .eyebrow{font-size:8px;margin-bottom:25px}
.edition-story h2{font-size:37px}
.availability{padding:26px}
.availability h3{font-size:23px}
.availability p{font-size:12px}
.build-record-bottom{font-size:8px}
.source-note{padding:25px;margin-top:35px}
.source-note h3{font-size:25px}
.source-note p{font-size:12px}
.source-note .text-link{font-size:11px}
.guide-steps>article{grid-template-columns:25px 1fr;gap:20px;padding:28px 0 35px}
.guide-steps>article>span{font-size:9px;padding-top:5px}
.guide-steps h2{font-size:29px;letter-spacing:-.8px;line-height:1.16}
.guide-steps p{font-size:13px}
.guide-steps summary{font-size:15px;line-height:1.6}
.guide-steps details{padding:20px 0}
.experience-demo{grid-template-columns:1fr;gap:35px}
.experience-demo .mini-label{font-size:7px;letter-spacing:1.2px}
.experience-demo h2{font-size:38px}
.experience-demo>div>p:not(.mini-label){font-size:13px}
.journey-paper{min-height:415px;padding-bottom:23px}
.directory-search{font-size:11px}
.directory-search input{font-size:17px;min-height:52px;line-height:1.6}
.resource-grid{grid-template-columns:1fr;gap:16px}
.external-resources{gap:15px 25px}
.external-resources .text-link{font-size:11px}
.menu-grid .mini-label{font-size:7px;letter-spacing:1px}
.menu-grid>div:last-child .mini-label{width:auto}
.hero-statement{font-size:14px}
.hero-visual{min-height:300px}
.world-index button{font-size:10px;gap:6px}
.world-index [role=tablist]{gap:0 12px}
.world-index button>span{font-size:7px;width:12px}
.world-index button>b{font-size:13px}
.agenda-paper{padding-inline:20px}
.agenda-paper h3{font-size:26px}
.portal-host{font-size:5.5px;letter-spacing:.7px}
.closing-bottom{gap:22px}
.closing-bottom .button{font-size:10px}
.edition-row{gap:8px;grid-template-columns:15px 1fr 70px 20px}
.edition-row h3{font-size:23px}
.edition-thumb{width:70px;height:70px}
.edition-hero h1{font-size:62px}
.paper-bottom .text-link{font-size:9px}
.light-section .small-note,.light-section .paper-index,.light-section .resource-item>span,.light-section .journal-list>article>time,.light-section .directory-search input::placeholder,.light-section .world-index button>span,.light-section .world-directory-row>span:first-child{color:#545e51}
.hero-visual{height:545px}
.hero-artwork{position:absolute;top:50%;transform:translateY(-50%)}
.hero-visual{height:480px}
.hero-visual{height:auto}
.hero-artwork{margin-top:0}
.platform-hero h1{font-size:clamp(58px,18vw,77px)}
.platform-hero>div{min-width:0}
/* Home closing statement and quiet dark surfaces. */
.closing-manifesto{
  display: grid;
  grid-template-columns: 1.25fr .85fr;
  gap: 70px;
  align-items: center;
  padding: 5px 0 55px;
  margin-bottom: 55px;
  border-bottom: 1px solid var(--line);
}
.manifesto-lead{
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.3;
  letter-spacing: -1.35px;
  color: var(--white);
}
.manifesto-lead > span{ display: block; }
.manifesto-lead em{ color: var(--orange); }
.manifesto-copy > p{
  font-size: 14px;
  line-height: 1.9;
  color: #aab8cb;
}
.manifesto-copy .manifesto-decision{
  font-size: 17px;
  color: var(--white);
  margin-top: 22px;
}
.closing-manifesto{ grid-template-columns: 1fr; gap: 28px; }
.manifesto-lead{ font-size: 39px; }
.manifesto-copy{ max-width: 560px; }
.closing-manifesto{ padding-bottom: 35px; margin-bottom: 35px; }
.manifesto-lead{ font-size: clamp(25px, 6.6vw, 36px); letter-spacing: -.8px; }
.manifesto-lead > span + span{ margin-top: 8px; }
.manifesto-copy > p{ font-size: 13px; }
.manifesto-copy .manifesto-decision{ font-size: 15px; }
.mission.dark-surface{
  background: var(--ink);
  padding-bottom: 60px;
}
.world-section.dark-surface{ padding-top: 70px; }
.dark-surface .section-heading > p,
.dark-surface .mission-copy p:not(.mini-label),
.dark-surface .world-index > p,
.dark-surface .section-end p,
.dark-surface .portal-code,
.dark-surface .portal-host,
.dark-surface .small-note{ color: var(--muted); }
.dark-surface .mission-copy p strong{ color: var(--white); }
.dark-surface .craft-illustration{ border: 1px solid #25364c; }
.dark-surface .world-index button > span{ color: #9aaac0; }
.dark-surface .world-index button[aria-selected=true],
.dark-surface .portal-row:hover{ color: #ffad82; }
.dark-surface .round-arrow{ border-color: #566981; }
.dark-surface .portal-row:hover .round-arrow{ border-color: var(--orange); }
.dark-surface .agenda-paper{
  color: var(--ink);
  color-scheme: light;
  box-shadow: 8px 8px 0 #16243a, 0 22px 60px #00000026;
}
.dark-surface .agenda-paper .paper-index{ color: #545e51; }
.mission.dark-surface{ padding-bottom: 50px; }
.world-section.dark-surface{ padding-top: 30px; }
.mission.dark-surface{ padding-bottom: 35px; }
.world-section.dark-surface{ padding-top: 25px; }
.dark-surface .agenda-paper{
    box-shadow: 6px 6px 0 #16243a, 0 16px 40px #00000026;
  }
.hero-visual:before{
  content: '';
  position: absolute;
  inset: -12% -20%;
  z-index: -3;
  pointer-events: none;
  background: radial-gradient(ellipse, rgba(46,105,150,.12), transparent 65%);
}
.orbital-track{ border-color: rgba(123,200,237,.12); }
.orbital-track:after{ border-color: rgba(123,200,237,.1); }
.dark-surface .craft-illustration{
  border-color: rgba(255,255,255,.07);
  background: radial-gradient(ellipse, rgba(46,105,150,.08), transparent 68%);
}
.dark-surface .agenda-paper{ box-shadow: 8px 8px 0 #111b28, 0 22px 60px #00000026; }
.dark-surface .agenda-paper{ box-shadow: 6px 6px 0 #111b28, 0 16px 40px #00000026; }
/* One Cleo identity at a time, beginning with Ubuntu's quiet particle form. */
.hero-visual.hero-os-visual{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  align-self: center;
  height: auto;
  min-height: 0;
  aspect-ratio: auto;
  margin: 0;
  width: 100%;
}
.hero-visual.hero-os-visual{ margin-top: 32px; }
.closing-bottom{
    display: grid;
    grid-template-columns: minmax(0, 1fr) 88px;
    align-items: center;
    gap: 20px;
  }
.closing-bottom > p{ grid-column: 1 / -1; }
.closing-bottom > .button{ justify-self: start; }


/* ==== R12 supplement: OS hubs, edition pages, build desk =================
   Append AFTER the existing site.css rules (incl. the DUKE block). Every selector is scoped under .article-page so these win over earlier same-class rules. Dark theme only; uses the
   site.css variables (--bg --white --muted --orange --blue --line) and adds
   no new colours. Covers classes the shipped markup uses but site.css never
   defined: platform-hero, os-monogram, platform-tabs, platform-period,
   edition-rows/-row/-number/-thumb, round-arrow, mini-label, release-note,
   dark-button, edition-hero, edition-art-wrap, art-note, edition-story,
   availability, status-pill, build-record-bottom, result-count, source-note.
   ======================================================================= */
.article-page .mini-label{font-size:10px;font-weight:600;letter-spacing:.18em;line-height:1.6;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.article-page .platform-period{color:var(--orange)}
.article-page .platform-hero .eyebrow,.article-page .edition-hero .eyebrow,.article-page .edition-story .eyebrow,.article-page .release-note .eyebrow{font-size:10px;font-weight:400;letter-spacing:.16em;color:var(--orange);margin:10px 0}
.article-page .platform-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:50px;align-items:center;padding:20px 0 70px}
.article-page .platform-hero h1{font-size:clamp(56px,9vw,128px);letter-spacing:-.055em;line-height:1.07;margin:18px 0 22px}
.article-page .platform-hero h2{font-family:inherit;font-size:clamp(22px,2.4vw,32px);font-weight:400;letter-spacing:-.02em;line-height:1.25;margin:0 0 24px}
.article-page .platform-hero p:not(.eyebrow){max-width:560px;font-size:15px;line-height:1.85;color:var(--muted);margin:0}
.article-page .os-monogram{display:grid;place-items:center;position:relative;width:min(100%,300px);aspect-ratio:1;margin:20px auto;border:1px solid var(--line);border-radius:50%;font-size:clamp(44px,5vw,70px);letter-spacing:-.04em;color:var(--orange)}
.article-page .os-monogram::after{content:"";position:absolute;inset:-20px;border:1px dashed var(--line);border-radius:50%}
.article-page .platform-tabs{display:flex;gap:34px;align-items:stretch;min-height:58px;border-top:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.article-page .platform-tabs::-webkit-scrollbar{display:none}
.article-page .platform-tabs a{display:flex;align-items:center;flex-shrink:0;padding:18px 0;font-size:12px;letter-spacing:.04em;color:var(--muted);border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.article-page .platform-tabs a:hover{color:var(--white)}
.article-page .platform-tabs a[aria-current=page]{color:var(--orange);border-color:var(--orange)}
.article-page .edition-rows{margin-top:10px}
.article-page .edition-row{display:grid;grid-template-columns:44px minmax(0,1.1fr) minmax(0,1fr) 180px 44px;gap:28px;align-items:center;min-height:210px;padding:14px 0;border-top:1px solid var(--line);color:var(--white);text-decoration:none}
.article-page .edition-row:last-child{border-bottom:1px solid var(--line)}
.article-page .edition-number{font-size:11px;letter-spacing:.1em;color:var(--muted)}
.article-page .edition-row h3{font-size:clamp(28px,3vw,40px);letter-spacing:-.04em;margin:0;transition:color .2s}
.article-page .edition-row>p{display:block;font-size:13px;line-height:1.75;color:var(--muted);max-width:260px;margin:0}
.article-page .edition-row:hover h3, .article-page .edition-row:focus-visible h3{color:var(--orange)}
.article-page .edition-thumb{position:relative;width:180px;height:180px;overflow:hidden;display:grid;place-items:center;border:1px solid var(--line);border-radius:18px;background:#0b111b}
.article-page .edition-thumb iframe{width:100%;height:100%;aspect-ratio:auto;margin:0}
.article-page .edition-thumb.typographic-art{min-height:0;font-size:68px}
.article-page .edition-thumb.typographic-art>span{position:relative;z-index:1;font-size:68px}
.article-page .edition-thumb.typographic-art>i{position:absolute;inset:16%;border:1px solid var(--line);border-radius:50%}
.article-page .round-arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:20px;color:var(--white);transition:background .2s,border-color .2s,color .2s,transform .2s}
.article-page .edition-row:hover .round-arrow, .article-page .edition-row:focus-visible .round-arrow{background:var(--orange);border-color:var(--orange);color:#110e0b;transform:rotate(6deg)}
.article-page .release-note{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:50px;margin-block:60px;padding:42px 46px;border:1px solid var(--line);border-radius:22px;background:#0d141f}
.article-page .release-note h3{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.03em;line-height:1.3;margin:12px 0 14px}
.article-page .release-note p:not(.eyebrow){max-width:610px;font-size:13px;line-height:1.85;color:var(--muted);margin:0}
.article-page .release-note .dark-button{background:var(--orange);color:#110e0b;border-color:transparent}
.article-page .release-note .button{flex-shrink:0;gap:26px;padding:16px 24px;min-height:0;font-size:12px}
.article-page .edition-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center;padding:20px 0 50px}
.article-page .edition-hero h1{font-size:clamp(56px,8vw,112px);letter-spacing:-.055em;line-height:1.07;margin:18px 0 22px}
.article-page .edition-hero h2{font-family:inherit;font-size:clamp(22px,2.4vw,32px);font-weight:400;letter-spacing:-.02em;line-height:1.25;margin:0 0 24px;max-width:460px}
.article-page .edition-hero .button{margin:0;font-size:12px}
.article-page .edition-hero>div>p:not(.eyebrow){max-width:470px;font-size:15px;line-height:1.85;color:var(--muted);margin:0 0 30px}
.article-page .edition-art-wrap{min-width:0}
.article-page .edition-art-wrap .typographic-art{min-height:320px;font-size:140px;margin:35px auto}
.article-page .art-note{text-align:center;font-size:10px!important;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0}
.article-page .edition-story{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(40px,7vw,100px);align-items:start}
.article-page .edition-story h2{font-size:clamp(34px,4vw,56px);line-height:1.08;letter-spacing:-.045em;font-weight:400;margin:14px 0 28px}
.article-page .edition-story article>p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 18px;max-width:640px}
.article-page .availability{align-self:start;padding:30px;border:1px solid var(--line);border-radius:18px;background:#0d141f}
.article-page .availability h3{font-size:24px;letter-spacing:-.03em;margin:22px 0 14px}
.article-page .availability p{font-size:13px;line-height:1.85;color:var(--muted);margin:0 0 14px}
.article-page .availability .text-link,.article-page .source-note .text-link{font-size:13px;margin:18px 0}
.article-page .status-pill{display:inline-block;max-width:100%;padding:7px 12px;border:1px solid var(--line);border-radius:999px;font-size:10px;letter-spacing:.08em;line-height:1.4;text-transform:uppercase;color:var(--muted)}
.article-page .status-pill.candidate{border-color:var(--orange);color:var(--orange)}
.article-page .result-count{font-size:12px;letter-spacing:.04em;color:var(--muted);margin:24px 0}
.article-page .build-record .status-pill{margin:6px 0 18px}
.article-page .build-record-bottom{padding:0;display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:22px;font-size:12px;color:var(--muted)}
.article-page .build-record-bottom a{color:var(--white);white-space:nowrap;font-size:12px}
.article-page .source-note{margin-top:45px;padding:35px 40px;border:1px solid var(--line);border-radius:20px;background:#0d141f}
.article-page .source-note h3{font-size:clamp(20px,2.2vw,26px);letter-spacing:-.03em;margin:0 0 14px}
.article-page .source-note p{max-width:900px;font-size:13px;line-height:1.9;color:var(--muted);margin:0}
@media (max-width:1000px){
  .article-page .platform-hero, .article-page .edition-hero, .article-page .edition-story{grid-template-columns:minmax(0,1fr)}
  .article-page .os-monogram{width:min(100%,220px);margin:30px 0 10px 24px}
  .article-page .edition-row{grid-template-columns:36px minmax(0,1fr) 150px 40px;gap:20px}
  .article-page .edition-row>p{grid-column:2;grid-row:2;max-width:none}
  .article-page .edition-row>div:not(.edition-thumb){grid-column:2;grid-row:1}
  .article-page .edition-number{grid-column:1;grid-row:1}
  .article-page .edition-thumb{grid-column:3;grid-row:1/span 2;width:150px;height:150px}
  .article-page .round-arrow{grid-column:4;grid-row:1/span 2}
  .article-page .release-note{flex-direction:column;align-items:flex-start;gap:28px;padding:32px 28px}
}
@media (max-width:620px){
  .article-page .platform-tabs{gap:24px}
  .article-page .edition-row{grid-template-columns:30px minmax(0,1fr) 40px;gap:14px 16px;min-height:0;padding:26px 0}
  .article-page .edition-number{grid-column:1;grid-row:1}
  .article-page .edition-row>div:not(.edition-thumb){grid-column:2;grid-row:1}
  .article-page .round-arrow{grid-column:3;grid-row:1;width:38px;height:38px}
  .article-page .edition-row>p{grid-column:2/4;grid-row:2}
  .article-page .edition-thumb{grid-column:2/4;grid-row:3;width:100%;max-width:240px;height:auto;aspect-ratio:1}
  .article-page .edition-art-wrap .typographic-art{min-height:220px;font-size:100px}
  .article-page .availability, .article-page .source-note{padding:26px 22px}
  .article-page .build-record-bottom{gap:12px}
}
/* ==== end R12 supplement ============================================= */

/* DUKE fill pass 2026-10-25 — subtle depth so interior pages don't read empty.
   Hairline accents, faint artifacts, quiet section texture. All existing vars. */
.article-page .light-section,.light-section{position:relative;background:
  radial-gradient(ellipse 60% 40% at 82% 8%, rgba(255,106,31,.045), transparent 60%),
  radial-gradient(ellipse 50% 35% at 8% 88%, rgba(61,143,224,.035), transparent 60%),
  var(--ink)}
.page-hero{position:relative}
.page-hero:after{content:"";position:absolute;right:6%;top:18%;width:340px;height:340px;
  border:1px solid var(--line);border-radius:50%;opacity:.35;pointer-events:none}
.page-hero:before{content:"";position:absolute;right:calc(6% + 40px);top:calc(18% + 40px);
  width:260px;height:260px;border:1px dashed var(--line);border-radius:50%;
  opacity:.25;pointer-events:none}
.article-page .edition-row,.edition-row{transition:background .25s,padding-left .25s}
.article-page .edition-row:hover,.edition-row:hover{background:rgba(255,106,31,.03);padding-left:10px}
.article-page .edition-row .round-arrow,.round-arrow{border-color:var(--line);transition:background .2s,border-color .2s,transform .2s}
.article-page .edition-row:hover .round-arrow,.edition-row:hover .round-arrow{background:var(--orange);color:var(--ink);border-color:var(--orange);transform:rotate(6deg)}
.article-page .build-record,.build-record{border-top-color:var(--line);transition:background .2s}
.article-page .build-record:hover,.build-record:hover{background:rgba(255,255,255,.015)}
.article-page .status-pill,.status-pill{border-color:var(--line)}
.article-page .status-pill.candidate{border-color:#7a4a26;color:var(--orange)}
.article-page table,table{border:1px solid var(--line)}
.article-page th,th{background:rgba(255,255,255,.02)}
.article-page .source-note,.source-note,.article-page .release-note,.release-note{border:1px solid var(--line)}
.article-page .decision-slip,.decision-slip{border-left:2px solid var(--orange)}
.article-page .resource-item,.resource-item{border-color:var(--line)}
.article-page .resource-item:hover,.resource-item:hover{border-color:rgba(255,106,31,.4);background:rgba(255,106,31,.03)}
.article-page .journal-list>article,.journal-list>article{transition:background .2s}
.article-page .journal-list>article:hover{background:rgba(255,255,255,.012)}
.article-page .availability{border-color:var(--line)}
.article-page .guide-steps>article,.guide-steps>article{position:relative}
.article-page .guide-steps>article>span,.guide-steps>article>span{color:var(--orange)}
.article-page .numbered-feature,.numbered-feature{position:relative}
.article-page .numbered-feature:hover,.numbered-feature:hover{background:rgba(255,106,31,.025)}
.article-page .editorial-grid .article-chapter,.article-chapter{border-bottom:1px solid var(--line);padding-bottom:38px;margin-bottom:38px}
.article-page .article-chapter:last-of-type{border-bottom:0}
.article-page .chapter-index,.chapter-index{color:var(--orange);font-size:11px;letter-spacing:.15em}
.article-page .world-directory-row,.world-directory-row{transition:background .2s}
.article-page .world-directory-row:hover,.world-directory-row:hover{background:rgba(255,255,255,.015)}
.article-page .portal-row,.portal-row{transition:padding-left .25s,background .25s}
.article-page .portal-row:hover,.portal-row:hover{background:rgba(255,106,31,.03)}
.article-page .breadcrumb,.breadcrumb{border-bottom:1px solid var(--line);padding-bottom:14px}
.article-page .editorial-grid aside,.editorial-grid aside{border-left:1px solid var(--line);padding-left:26px}
.article-page .editorial-grid aside a,.editorial-grid aside a{transition:color .2s,padding-left .2s}
.article-page .editorial-grid aside a:hover,.editorial-grid aside a:hover{color:var(--orange);padding-left:6px}
/* ==== R12 polish layer v2 (Claire) ============================================
   Append AFTER site.css (incl. r12-os-pages.css and the DUKE fill pass of 25 Oct 14:38 GMT). CSS only: no HTML, header or script changes.
   Scope: the 52 article pages (.atlas-studio[data-page=article]). The home page is untouched.
   Fills the empty right-hand space (hero ornament, magazine-style chapters, card grids),
   adds hairline table borders, accent colours from the existing palette, and barely-visible
   background artifacts. Desktop layouts are restored for rules the earlier port flattened.
   ============================================================================= */
.atlas-studio[data-page=article]{
  --p-line:rgba(255,255,255,.09);--p-line-hi:rgba(255,255,255,.16);--p-card:linear-gradient(180deg,rgba(255,255,255,.032),rgba(255,255,255,.012));
  --p-orange:var(--orange,#ff6a1f);--p-blue:var(--blue,#7bc8ed);--p-red:#ff5a4d;
  position:relative;isolation:isolate;
}
/* --- background artifacts: soft colour pools and a faint dot field, behind everything --- */
.atlas-studio[data-page=article]::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(900px 560px at 94% 3%,rgba(255,106,31,.075),transparent 68%),
    radial-gradient(760px 680px at 3% 34%,rgba(123,200,237,.06),transparent 68%),
    radial-gradient(900px 640px at 97% 66%,rgba(255,90,77,.05),transparent 68%),
    radial-gradient(700px 520px at 6% 92%,rgba(255,106,31,.05),transparent 68%),
    radial-gradient(rgba(255,255,255,.07) 1px,transparent 1.5px) 0 0/32px 32px;
  -webkit-mask-image:linear-gradient(180deg,#000 0,#000 90%,transparent);mask-image:linear-gradient(180deg,#000 0,#000 90%,transparent);
}
.atlas-studio[data-page=article] main.article-page{position:relative}
/* --- hero: text left, faint orbital rings right ---------------------------------- */
.atlas-studio[data-page=article] main.article-page .page-hero{position:relative;padding:76px 0 84px}
.atlas-studio[data-page=article] main.article-page .page-hero>*{position:relative;z-index:1}
.atlas-studio[data-page=article] main.article-page .page-hero::after{
  content:"";position:absolute;z-index:0;pointer-events:none;right:-2%;top:50%;width:min(44vw,600px);height:auto;aspect-ratio:1;border:0;transform:translateY(-52%);border-radius:50%;
  background:
    radial-gradient(circle,transparent 0 30%,rgba(255,106,31,.20) 30.2%,transparent 30.7%,transparent 48%,rgba(255,255,255,.10) 48.2%,transparent 48.7%,transparent 66%,rgba(123,200,237,.18) 66.2%,transparent 66.7%,transparent 84%,rgba(255,90,77,.12) 84.2%,transparent 84.7%);
  -webkit-mask-image:radial-gradient(circle,#000 55%,transparent 72%);mask-image:radial-gradient(circle,#000 55%,transparent 72%);
  opacity:.9;
}
.atlas-studio[data-page=article] main.article-page .page-hero::before{
  content:"";position:absolute;z-index:0;pointer-events:none;right:calc(-2% + min(44vw,600px)*.18);top:calc(50% - min(44vw,600px)*.32);width:9px;height:9px;border:0;border-radius:50%;background:var(--p-orange);box-shadow:0 0 28px 6px rgba(255,106,31,.45);opacity:.85;
}
.atlas-studio[data-page=article] main.article-page .page-hero h1{max-width:22ch}
.atlas-studio[data-page=article] main.article-page .page-hero-bottom>p{max-width:60ch}
/* --- accents: eyebrows, links, pills ---------------------------------------------- */
.atlas-studio[data-page=article] main.article-page .eyebrow{display:flex;align-items:center;gap:12px;color:var(--p-orange)}
.atlas-studio[data-page=article] main.article-page .eyebrow::before{content:"";width:26px;height:1px;background:linear-gradient(90deg,var(--p-orange),transparent);flex:none}
.atlas-studio[data-page=article] main.article-page .text-link{border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.atlas-studio[data-page=article] main.article-page .text-link:hover{color:var(--p-orange);border-color:var(--p-orange)}
.atlas-studio[data-page=article] main.article-page .status-pill{border-color:var(--p-line-hi);background:rgba(255,255,255,.03)}
.atlas-studio[data-page=article] main.article-page .status-pill.candidate{background:rgba(255,106,31,.08)}
/* --- editorial pages: sticky chapter card + magazine chapters -------------------- */
.atlas-studio[data-page=article] main.article-page .light-section{padding:64px 0}
.atlas-studio[data-page=article] main.article-page .editorial-grid{grid-template-columns:270px minmax(0,1fr);gap:56px}
.atlas-studio[data-page=article] main.article-page .editorial-grid aside{top:96px;padding:22px 22px 8px;border:1px solid var(--p-line);border-radius:18px;background:var(--p-card)}
.atlas-studio[data-page=article] main.article-page .editorial-grid aside a{border-top:1px solid var(--p-line);transition:color .2s}
.atlas-studio[data-page=article] main.article-page .editorial-grid aside a:first-child{border-top:0}
.atlas-studio[data-page=article] main.article-page .editorial-grid aside a:hover{color:var(--p-orange)}
.atlas-studio[data-page=article] main.article-page .editorial-grid aside a span{color:var(--p-orange)}
.atlas-studio[data-page=article] main.article-page .article-chapter{
  grid-template-columns:54px minmax(0,1fr);gap:20px;padding:34px 38px;margin:0 0 20px;border:1px solid var(--p-line);border-radius:20px;background:var(--p-card);position:relative;overflow:hidden}
.atlas-studio[data-page=article] main.article-page .article-chapter::before{content:"";position:absolute;left:0;top:26px;bottom:26px;width:2px;border-radius:2px;background:var(--p-orange)}
.atlas-studio[data-page=article] main.article-page .article-chapter:nth-of-type(3n+2)::before{background:var(--p-blue)}
.atlas-studio[data-page=article] main.article-page .article-chapter:nth-of-type(3n)::before{background:var(--p-red)}
.atlas-studio[data-page=article] main.article-page .chapter-index{font-size:30px;line-height:1;padding-top:4px;letter-spacing:-.04em;color:var(--p-orange);opacity:.9}
.atlas-studio[data-page=article] main.article-page .article-chapter:nth-of-type(3n+2) .chapter-index{color:var(--p-blue)}
.atlas-studio[data-page=article] main.article-page .article-chapter:nth-of-type(3n) .chapter-index{color:var(--p-red)}
.atlas-studio[data-page=article] main.article-page .article-chapter h2{max-width:none;font-size:32px;line-height:1.15;margin:0 0 14px}
.atlas-studio[data-page=article] main.article-page .article-chapter p{max-width:none;font-size:15px;line-height:1.85}
@media (min-width:1100px){
  .atlas-studio[data-page=article] main.article-page .article-chapter>div{display:grid;grid-template-columns:minmax(220px,.38fr) minmax(0,1fr);column-gap:44px;align-items:start}
  .atlas-studio[data-page=article] main.article-page .article-chapter>div>h2{grid-column:1;grid-row:1/span 5;margin:0}
  .atlas-studio[data-page=article] main.article-page .article-chapter>div>*:not(h2){grid-column:2}
}
.atlas-studio[data-page=article] main.article-page .editorial-grid article>.small-note{max-width:none;padding:14px 18px;border:1px dashed var(--p-line-hi);border-radius:12px;margin:8px 0 18px}
/* --- feature columns (table-like cards) ------------------------------------------ */
.atlas-studio[data-page=article] main.article-page .feature-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:10px 0 0}
.atlas-studio[data-page=article] main.article-page .numbered-feature{display:block;padding:28px 28px 30px;border:1px solid var(--p-line);border-radius:18px;background:var(--p-card);position:relative}
.atlas-studio[data-page=article] main.article-page .numbered-feature::after{content:"";position:absolute;left:28px;right:28px;top:0;height:2px;background:linear-gradient(90deg,var(--p-orange),transparent 70%);opacity:.8}
.atlas-studio[data-page=article] main.article-page .numbered-feature:nth-child(3n+2)::after{background:linear-gradient(90deg,var(--p-blue),transparent 70%)}
.atlas-studio[data-page=article] main.article-page .numbered-feature:nth-child(3n)::after{background:linear-gradient(90deg,var(--p-red),transparent 70%)}
.atlas-studio[data-page=article] main.article-page .numbered-feature>span{display:block;font-size:26px;letter-spacing:-.03em;color:var(--p-orange);margin-bottom:14px}
.atlas-studio[data-page=article] main.article-page .numbered-feature h3{font-size:22px;letter-spacing:-.02em;margin:0 0 12px}
.atlas-studio[data-page=article] main.article-page .numbered-feature p{grid-column:auto;font-size:14px;line-height:1.8;color:var(--muted)}
/* --- example story: bordered two-column panel ------------------------------------- */
.atlas-studio[data-page=article] main.article-page .example-story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;padding:48px 44px;margin:46px 0 0;border:1px solid var(--p-line);border-radius:22px;background:var(--p-card)}
.atlas-studio[data-page=article] main.article-page .example-story h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.035em}
/* --- related strip: pill links ----------------------------------------------------- */
.atlas-studio[data-page=article] main.article-page .related-strip{justify-content:flex-start;gap:12px;padding:30px 0;border-top:1px solid var(--p-line)}
.atlas-studio[data-page=article] main.article-page .related-strip .text-link{padding:10px 18px;border:1px solid var(--p-line-hi);border-radius:999px;background:rgba(255,255,255,.02);font-size:13px}
.atlas-studio[data-page=article] main.article-page .related-strip .text-link:hover{background:rgba(255,106,31,.09);border-color:var(--p-orange)}
/* --- build desk: record cards ------------------------------------------------------ */
.atlas-studio[data-page=article] main.article-page .build-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;margin-top:24px}
.atlas-studio[data-page=article] main.article-page .build-record{display:flex;flex-direction:column;gap:6px;padding:26px 26px 22px;border:1px solid var(--p-line);border-top:2px solid var(--p-orange);border-radius:18px;background:var(--p-card)}
.atlas-studio[data-page=article] main.article-page .build-record[data-os=windows]{border-top-color:var(--p-blue)}
.atlas-studio[data-page=article] main.article-page .build-record[data-os=mac]{border-top-color:var(--p-red)}
.atlas-studio[data-page=article] main.article-page .build-record h3{font-size:28px}
.atlas-studio[data-page=article] main.article-page .build-record .mini-label{font-size:10px}
.atlas-studio[data-page=article] main.article-page .build-record>p{font-size:13px;line-height:1.8;color:var(--muted);margin:6px 0 0}
.atlas-studio[data-page=article] main.article-page .build-record-bottom{margin-top:auto;padding-top:16px;border-top:1px solid var(--p-line);font-size:12px}
.atlas-studio[data-page=article] main.article-page .build-record-bottom a{font-size:12px}
/* --- guide steps: one bordered table ------------------------------------------------- */
.atlas-studio[data-page=article] main.article-page .guide-steps{border:1px solid var(--p-line);border-radius:20px;overflow:hidden;background:var(--p-card);margin-top:34px}
.atlas-studio[data-page=article] main.article-page .guide-steps>article{padding:30px 34px;border-top:1px solid var(--p-line)}
.atlas-studio[data-page=article] main.article-page .guide-steps>article:first-child{border-top:0}
.atlas-studio[data-page=article] main.article-page .guide-steps>article>span{font-size:22px;letter-spacing:-.03em}
.atlas-studio[data-page=article] main.article-page .guide-steps h2{font-size:28px;margin-bottom:12px}
.atlas-studio[data-page=article] main.article-page .guide-steps details{padding:22px 34px;border-top:1px solid var(--p-line)}
/* --- edition rows (OS hubs): hairline table rows with hover ------------------------- */
.atlas-studio[data-page=article] main.article-page .edition-rows{border:1px solid var(--p-line);border-radius:20px;overflow:hidden;background:var(--p-card)}
.atlas-studio[data-page=article] main.article-page .edition-row{min-height:0;padding:20px 28px;border-top:1px solid var(--p-line);transition:background .2s}
.atlas-studio[data-page=article] main.article-page .edition-row:first-child{border-top:0}
.atlas-studio[data-page=article] main.article-page .edition-row:hover{background:rgba(255,106,31,.05)}
.atlas-studio[data-page=article] main.article-page .edition-row:last-child{border-bottom:0}
.atlas-studio[data-page=article] main.article-page .edition-row>p{display:block;max-width:300px}
.atlas-studio[data-page=article] main.article-page .edition-thumb{width:120px;height:120px}
.atlas-studio[data-page=article] main.article-page .edition-thumb.typographic-art,.atlas-studio[data-page=article] main.article-page .edition-thumb.typographic-art>span{font-size:46px}
.atlas-studio[data-page=article] main.article-page .edition-number{color:var(--p-orange)}
/* --- journal: dated entries as one bordered table ------------------------------------ */
.atlas-studio[data-page=article] main.article-page .journal-list{border:1px solid var(--p-line);border-radius:20px;overflow:hidden;background:var(--p-card)}
.atlas-studio[data-page=article] main.article-page .journal-list>article{display:grid;grid-template-columns:150px minmax(0,1fr);gap:34px;padding:34px 38px;border-top:1px solid var(--p-line);position:relative}
.atlas-studio[data-page=article] main.article-page .journal-list>article:first-child{border-top:0}
.atlas-studio[data-page=article] main.article-page .journal-list>article::before{content:"";position:absolute;left:0;top:30px;bottom:30px;width:2px;background:var(--p-orange);border-radius:2px}
.atlas-studio[data-page=article] main.article-page .journal-list>article:nth-child(3n+2)::before{background:var(--p-blue)}
.atlas-studio[data-page=article] main.article-page .journal-list>article:nth-child(3n)::before{background:var(--p-red)}
.atlas-studio[data-page=article] main.article-page .journal-list time{font-size:11px;letter-spacing:.14em;color:var(--p-orange);padding-top:8px}
.atlas-studio[data-page=article] main.article-page .journal-list h2{font-size:30px;line-height:1.15;margin:0 0 12px}
.atlas-studio[data-page=article] main.article-page .journal-list p{max-width:none;font-size:15px;line-height:1.8}
@media (min-width:1100px){
  .atlas-studio[data-page=article] main.article-page .journal-list>article>div{display:grid;grid-template-columns:minmax(260px,.55fr) minmax(0,1fr);column-gap:44px;align-items:start}
  .atlas-studio[data-page=article] main.article-page .journal-list>article>div>h2{grid-column:1;grid-row:1/span 4;margin:0}
  .atlas-studio[data-page=article] main.article-page .journal-list>article>div>*:not(h2){grid-column:2}
}
/* --- experience: tabs left, agenda paper right ------------------------------------------ */
@media (min-width:1000px){
  .atlas-studio[data-page=article] main.article-page .experience-demo{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
}
.atlas-studio[data-page=article] main.article-page .journey-tabs button{transition:border-color .2s,background .2s,color .2s}
.atlas-studio[data-page=article] main.article-page .journey-tabs button[aria-selected=true]{border-color:var(--p-orange);background:rgba(255,106,31,.08);color:var(--white)}
.atlas-studio[data-page=article] main.article-page .agenda-paper{border:1px solid var(--p-line-hi);border-radius:22px}
.atlas-studio[data-page=article] main.article-page .decision-slip{border:1px solid var(--p-line);border-left:2px solid var(--p-blue);border-radius:12px;background:rgba(123,200,237,.05)}
/* --- closing panel: extra faint rings ------------------------------------------------ */
.atlas-studio[data-page=article] main.article-page .closing::after{content:"";position:absolute;right:8%;top:50%;width:300px;height:300px;transform:translateY(-50%);border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,transparent 0 40%,rgba(255,255,255,.07) 40.3%,transparent 41%,transparent 62%,rgba(123,200,237,.12) 62.3%,transparent 63%)}
/* --- small screens: single column, keep it tidy ------------------------------------- */
@media (max-width:900px){
  .atlas-studio[data-page=article] main.article-page .page-hero::after,.atlas-studio[data-page=article] main.article-page .page-hero::before{display:none}
  .atlas-studio[data-page=article] main.article-page .editorial-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .atlas-studio[data-page=article] main.article-page .editorial-grid aside{position:static}
  .atlas-studio[data-page=article] main.article-page .article-chapter{padding:26px 22px;grid-template-columns:30px minmax(0,1fr);gap:12px}
  .atlas-studio[data-page=article] main.article-page .article-chapter h2{font-size:26px}
  .atlas-studio[data-page=article] main.article-page .example-story{grid-template-columns:minmax(0,1fr);gap:24px;padding:30px 24px}
  .atlas-studio[data-page=article] main.article-page .build-grid{grid-template-columns:minmax(0,1fr)}
  .atlas-studio[data-page=article] main.article-page .guide-steps>article{padding:24px 22px}
  .atlas-studio[data-page=article] main.article-page .guide-steps>article{grid-template-columns:40px minmax(0,1fr);gap:14px}
  .atlas-studio[data-page=article] main.article-page .guide-steps details{padding:20px 22px}
  .atlas-studio[data-page=article] main.article-page .journal-list>article{grid-template-columns:minmax(0,1fr);gap:10px;padding:26px 22px}
  .atlas-studio[data-page=article] main.article-page .journal-list h2{font-size:24px}
  .atlas-studio[data-page=article] main.article-page .numbered-feature{padding:24px 22px 26px}
  .atlas-studio[data-page=article] main.article-page .related-strip{gap:10px}
  .atlas-studio[data-page=article] main.article-page .edition-row{padding:18px 18px}
}
/* ==== end R12 polish layer v2 =================================================== */

/* ==== R12 type scale v1 (Claire) ================================================
   Append AFTER the polish layer. CSS only. Raises the smallest type on the interior pages
   (measured on 52 pages: labels at 5.5 to 11 px) to a readable floor. Rules carry !important
   because earlier rules (and r12-os-pages) set sizes with !important.
   Floors: running text 13 px, labels and buttons 11.5 to 12.5 px, micro-labels 11 px.
   ============================================================================ */
.atlas-studio[data-page=article] .engineering-bar{font-size:11.5px!important;letter-spacing:.09em!important}
.atlas-studio[data-page=article] .eyebrow,
.atlas-studio[data-page=article] main.article-page .eyebrow{font-size:12px!important;letter-spacing:.15em!important}
.atlas-studio[data-page=article] .mini-label,
.atlas-studio[data-page=article] main.article-page .mini-label,
.atlas-studio[data-page=article] .build-record .mini-label{font-size:11.5px!important}
.atlas-studio[data-page=article] .editorial-grid aside .mini-label{font-size:11px!important}
.atlas-studio[data-page=article] .editorial-grid aside a{font-size:13px!important}
.atlas-studio[data-page=article] .editorial-grid aside a span{font-size:11px!important}
.atlas-studio[data-page=article] .footer-meta span,
.atlas-studio[data-page=article] .footer-meta a{font-size:11.5px!important}
.atlas-studio[data-page=article] .motion,
.atlas-studio[data-page=article] .motion i{font-size:12px!important}
.atlas-studio[data-page=article] .closing-bottom p{font-size:14px!important}
.atlas-studio[data-page=article] .button,
.atlas-studio[data-page=article] a.button,
.atlas-studio[data-page=article] .closing-bottom a.button,
.atlas-studio[data-page=article] header a.button.ghost{font-size:12.5px!important}
.atlas-studio[data-page=article] .resource-item>span,
.atlas-studio[data-page=article] .journal-list time{font-size:12px!important}
.atlas-studio[data-page=article] .status-pill{font-size:11px!important}
.atlas-studio[data-page=article] .art-note,
.atlas-studio[data-page=article] p.art-note{font-size:11px!important}
.atlas-studio[data-page=article] th{font-size:12px!important}
.atlas-studio[data-page=article] td code,
.atlas-studio[data-page=article] .text-link{font-size:13.5px!important}
.atlas-studio[data-page=article] .small-note,
.atlas-studio[data-page=article] .journey-paper>.small-note,
.atlas-studio[data-page=article] .agenda-paper>.small-note{font-size:12.5px!important;line-height:1.7!important}
.atlas-studio[data-page=article] .build-record-bottom,
.atlas-studio[data-page=article] .build-record-bottom a{font-size:12.5px!important}
.atlas-studio[data-page=article] .paper-top>span,
.atlas-studio[data-page=article] .paper-bottom>span,
.atlas-studio[data-page=article] .paper-bottom a,
.atlas-studio[data-page=article] .paper-index,
.atlas-studio[data-page=article] .decision-slip>span{font-size:11px!important}
.atlas-studio[data-page=article] .visual-label,
.atlas-studio[data-page=article] .visual-label span,
.atlas-studio[data-page=article] .hero-base span,
.atlas-studio[data-page=article] .hero-base a,
.atlas-studio[data-page=article] .craft-caption{font-size:11px!important}
.atlas-studio[data-page=article] .portal-host,
.atlas-studio[data-page=article] .portal-code{font-size:11.5px!important}
.atlas-studio[data-page=article] main.article-page li>p,
.atlas-studio[data-page=article] main.article-page article>p:not(.small-note):not(.eyebrow):not(.mini-label),
.atlas-studio[data-page=article] .continuity-note p{font-size:14px!important;line-height:1.75}
.atlas-studio[data-page=article] .section-end p{font-size:13px!important}
/* ==== end R12 type scale v1 ===================================================== */
/* ==== R12 fill + gap layer (complements Claire's "R12 polish layer v2" of 25 Oct 15:06 GMT) ====
   Append AFTER site.css (incl. the DUKE blocks, r12-os-pages and Claire's v2 layer).
   Does NOT restyle templates that v2 already covers (page-hero, chapters, build cards, guide steps, journal, hub rows ...).
   Adds: big-screen scaling, rail alignment of the closing band, faint side artwork, the templates v2 does not reach
   (platform/edition heroes, directory rows, resources, portals, studio, tables, explorer) and the home page.
   Scope: the 52 R12 inner pages (<main class="article-page">) plus the home page (main>#top.hero).
   Uses only existing palette: --bg --white --muted --orange --blue --line (+ tints of them).
   Artwork is inline SVG (data: URI, allowed by img-src 'self' data:). No HTML changes. */
body:is(:has(main.article-page),:has(main>#top.hero)){
  --card:linear-gradient(180deg,rgba(123,200,237,.05),rgba(255,255,255,.012));
  --card-solid:#0b111b;
  --card-line:rgba(255,255,255,.09);
  --card-line-hi:rgba(255,106,31,.42);
  --copy:#b9c4d3;
  --blue-soft:rgba(123,200,237,.14);
  --orange-soft:rgba(255,106,31,.14);
  --art-orbit:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 640 640%22 fill=%22none%22%3E%3Cdefs%3E%3CradialGradient id=%22g%22 cx=%2250%25%22 cy=%2250%25%22 r=%2250%25%22%3E%3Cstop offset=%220%22 stop-color=%22%23ff6a1f%22 stop-opacity=%22.16%22/%3E%3Cstop offset=%221%22 stop-color=%22%23ff6a1f%22 stop-opacity=%220%22/%3E%3C/radialGradient%3E%3CradialGradient id=%22b%22 cx=%2250%25%22 cy=%2250%25%22 r=%2250%25%22%3E%3Cstop offset=%220%22 stop-color=%22%237bc8ed%22 stop-opacity=%22.10%22/%3E%3Cstop offset=%221%22 stop-color=%22%237bc8ed%22 stop-opacity=%220%22/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22310%22 fill=%22url(%23b)%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%2296%22 fill=%22url(%23g)%22/%3E%3Cg stroke=%22%2391bcd7%22%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%2270%22 stroke-opacity=%22.22%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22130%22 stroke-opacity=%22.16%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22190%22 stroke-opacity=%22.12%22 stroke-dasharray=%222 7%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22250%22 stroke-opacity=%22.10%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22305%22 stroke-opacity=%22.07%22 stroke-dasharray=%221 9%22/%3E%3Cellipse cx=%22320%22 cy=%22320%22 rx=%22285%22 ry=%22118%22 transform=%22rotate(-24 320 320)%22 stroke-opacity=%22.20%22/%3E%3Cellipse cx=%22320%22 cy=%22320%22 rx=%22215%22 ry=%2282%22 transform=%22rotate(38 320 320)%22 stroke-opacity=%22.14%22/%3E%3C/g%3E%3Cg stroke=%22%23fff%22 stroke-opacity=%22.12%22%3E%3Cpath d=%22M320 6v34M320 600v34M6 320h34M600 320h34%22/%3E%3C/g%3E%3Ccircle cx=%2298%22 cy=%22200%22 r=%225%22 fill=%22%23ff6a1f%22/%3E%3Ccircle cx=%2298%22 cy=%22200%22 r=%2213%22 stroke=%22%23ff6a1f%22 stroke-opacity=%22.35%22/%3E%3Ccircle cx=%22522%22 cy=%22404%22 r=%224%22 fill=%22%237bc8ed%22/%3E%3Ccircle cx=%22522%22 cy=%22404%22 r=%2211%22 stroke=%22%237bc8ed%22 stroke-opacity=%22.3%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%225%22 fill=%22%23f3f0e7%22 fill-opacity=%22.7%22/%3E%3C/svg%3E");
  --art-orbit-nd:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 640 640%22 fill=%22none%22%3E%3Cdefs%3E%3CradialGradient id=%22g%22 cx=%2250%25%22 cy=%2250%25%22 r=%2250%25%22%3E%3Cstop offset=%220%22 stop-color=%22%23ff6a1f%22 stop-opacity=%22.16%22/%3E%3Cstop offset=%221%22 stop-color=%22%23ff6a1f%22 stop-opacity=%220%22/%3E%3C/radialGradient%3E%3CradialGradient id=%22b%22 cx=%2250%25%22 cy=%2250%25%22 r=%2250%25%22%3E%3Cstop offset=%220%22 stop-color=%22%237bc8ed%22 stop-opacity=%22.10%22/%3E%3Cstop offset=%221%22 stop-color=%22%237bc8ed%22 stop-opacity=%220%22/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22310%22 fill=%22url(%23b)%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%2296%22 fill=%22url(%23g)%22/%3E%3Cg stroke=%22%2391bcd7%22%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%2270%22 stroke-opacity=%22.22%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22130%22 stroke-opacity=%22.16%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22190%22 stroke-opacity=%22.12%22 stroke-dasharray=%222 7%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22250%22 stroke-opacity=%22.10%22/%3E%3Ccircle cx=%22320%22 cy=%22320%22 r=%22305%22 stroke-opacity=%22.07%22 stroke-dasharray=%221 9%22/%3E%3Cellipse cx=%22320%22 cy=%22320%22 rx=%22285%22 ry=%22118%22 transform=%22rotate(-24 320 320)%22 stroke-opacity=%22.20%22/%3E%3Cellipse cx=%22320%22 cy=%22320%22 rx=%22215%22 ry=%2282%22 transform=%22rotate(38 320 320)%22 stroke-opacity=%22.14%22/%3E%3C/g%3E%3Cg stroke=%22%23fff%22 stroke-opacity=%22.12%22%3E%3Cpath d=%22M320 6v34M320 600v34M6 320h34M600 320h34%22/%3E%3C/g%3E%3Ccircle cx=%2298%22 cy=%22200%22 r=%225%22 fill=%22%23ff6a1f%22/%3E%3Ccircle cx=%2298%22 cy=%22200%22 r=%2213%22 stroke=%22%23ff6a1f%22 stroke-opacity=%22.35%22/%3E%3Ccircle cx=%22522%22 cy=%22404%22 r=%224%22 fill=%22%237bc8ed%22/%3E%3Ccircle cx=%22522%22 cy=%22404%22 r=%2211%22 stroke=%22%237bc8ed%22 stroke-opacity=%22.3%22/%3E%3C/svg%3E");
  --art-rings:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1600 1600%22 fill=%22none%22 stroke=%22%2391bcd7%22%3E%3Ccircle cx=%22800%22 cy=%22800%22 r=%22180%22 stroke-opacity=%22.085%22/%3E%3Ccircle cx=%22800%22 cy=%22800%22 r=%22300%22 stroke-opacity=%22.07%22/%3E%3Ccircle cx=%22800%22 cy=%22800%22 r=%22440%22 stroke-opacity=%22.06%22 stroke-dasharray=%223 9%22/%3E%3Ccircle cx=%22800%22 cy=%22800%22 r=%22590%22 stroke-opacity=%22.05%22/%3E%3Ccircle cx=%22800%22 cy=%22800%22 r=%22760%22 stroke-opacity=%22.04%22 stroke-dasharray=%221 10%22/%3E%3Cellipse cx=%22800%22 cy=%22800%22 rx=%22700%22 ry=%22260%22 transform=%22rotate(-28 800 800)%22 stroke-opacity=%22.06%22/%3E%3Ccircle cx=%22342%22 cy=%22438%22 r=%225%22 fill=%22%23ff6a1f%22 fill-opacity=%22.55%22 stroke=%22none%22/%3E%3Ccircle cx=%221210%22 cy=%221118%22 r=%224%22 fill=%22%237bc8ed%22 fill-opacity=%22.5%22 stroke=%22none%22/%3E%3C/svg%3E");
  --art-dots:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2230%22 height=%2230%22%3E%3Ccircle cx=%221.5%22 cy=%221.5%22 r=%221.1%22 fill=%22%239fb4cc%22 fill-opacity=%22.5%22/%3E%3C/svg%3E");
  --art-corner:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 120 120%22 fill=%22none%22 stroke=%22%2391bcd7%22%3E%3Ccircle cx=%22120%22 cy=%220%22 r=%2240%22 stroke-opacity=%22.10%22/%3E%3Ccircle cx=%22120%22 cy=%220%22 r=%2270%22 stroke-opacity=%22.08%22 stroke-dasharray=%222 6%22/%3E%3Ccircle cx=%22120%22 cy=%220%22 r=%22100%22 stroke-opacity=%22.06%22/%3E%3C/svg%3E");
  position:relative;
}
/* ---- 0. big screens: scale the whole page up so content fills the monitor ---- */
@media (min-width:1700px){
body:is(:has(main.article-page),:has(main>#top.hero)){zoom:1.1}
}
@media (min-width:2000px){
body:is(:has(main.article-page),:has(main>#top.hero)){zoom:1.25}
}
@media (min-width:2400px){
body:is(:has(main.article-page),:has(main>#top.hero)){zoom:1.4}
}
@media (min-width:2700px){
body:is(:has(main.article-page),:has(main>#top.hero)){zoom:1.55}
}
@media (min-width:3000px){
body:is(:has(main.article-page),:has(main>#top.hero)){zoom:1.75}
}
@media (min-width:3500px){
body:is(:has(main.article-page),:has(main>#top.hero)){zoom:2}
}
.article-page{overflow-x:clip}
.article-page .rail, .article-page>.breadcrumb, .article-page>.closing{width:min(1440px,calc(100% - 120px))}
.article-page>.closing{margin-inline:auto}
/* ---- 1. faint ring artwork in the side margins (v2 already supplies colour pools and a dot field inside the page) ---- */
body:is(:has(main.article-page),:has(main>#top.hero))::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    var(--art-rings) right -520px top -380px/1400px 1400px no-repeat,
    var(--art-rings) left -640px bottom -560px/1300px 1300px no-repeat}
body:has(main>#top.hero)::before{background:
    radial-gradient(900px 620px at 4% 14%,rgba(123,200,237,.06),transparent 65%),
    radial-gradient(760px 640px at 98% 52%,rgba(255,106,31,.055),transparent 66%),
    radial-gradient(820px 560px at 8% 96%,rgba(123,200,237,.04),transparent 66%),
    var(--art-rings) right -520px top -380px/1400px 1400px no-repeat,
    var(--art-rings) left -640px bottom -560px/1300px 1300px no-repeat}
body:has(main>#top.hero)::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.55;
  background:var(--art-dots) 0 0/30px 30px;
  -webkit-mask-image:linear-gradient(90deg,#000 0,rgba(0,0,0,.35) 10%,transparent 22%,transparent 78%,rgba(0,0,0,.35) 90%,#000 100%);
          mask-image:linear-gradient(90deg,#000 0,rgba(0,0,0,.35) 10%,transparent 22%,transparent 78%,rgba(0,0,0,.35) 90%,#000 100%)}
/* ---- 2. hero: accent line, readable intro, orbit artwork on the right ---- */
.article-page .platform-hero .eyebrow, .article-page .edition-hero .eyebrow{align-items:center}
.article-page .platform-hero .eyebrow::before, .article-page .edition-hero .eyebrow::before{content:"";width:34px;height:1px;background:linear-gradient(90deg,var(--orange),rgba(255,106,31,0))}
.article-page .platform-hero::after, .article-page .edition-hero::after{content:none}
.article-page .platform-hero, .article-page .edition-hero{position:relative;isolation:isolate}
.article-page .os-monogram{overflow:visible;isolation:isolate}
.article-page .os-monogram::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:230%;aspect-ratio:1;transform:translate(-50%,-50%);background:var(--art-orbit-nd) center/contain no-repeat;pointer-events:none}
.article-page .edition-art-wrap{position:relative}
.article-page .edition-art-wrap::before{content:"";position:absolute;z-index:-1;left:50%;top:46%;width:130%;aspect-ratio:1;transform:translate(-50%,-50%);background:var(--art-orbit) center/contain no-repeat;pointer-events:none;opacity:.8}
.article-page .edition-hero{overflow:visible}
/* ---- 3. section rhythm: gradient hairlines instead of flat borders ---- */
.article-page .light-section, .article-page .dark-section, .article-page .dark-surface{position:relative;border-top:0}
.article-page .light-section::before, .article-page .dark-section::before, .article-page .dark-surface::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,106,31,.4) 18%,rgba(123,200,237,.28) 55%,transparent)}
.article-page .section-heading h2{letter-spacing:-.045em}
/* ---- 4. chapter pages (abilities, authority, evidence, inside-atlas, memory, why-atlas…) ---- */
/* ---- 4b. life-area pages (your-world/*): numbered steps become cards, example becomes a framed panel ---- */
/* ---- 5. link strips become cards ---- */
/* ---- 6. closing band ---- */
.article-page .closing{border-color:var(--card-line);border-radius:30px;background:
    var(--art-dots) 0 0/30px 30px,
    radial-gradient(ellipse at 90% 60%,rgba(40,97,134,.26),transparent 58%),
    radial-gradient(ellipse at 6% 0%,rgba(255,106,31,.10),transparent 50%),#0d141f}
.article-page .closing h2{font-size:clamp(40px,4.4vw,70px);letter-spacing:-.05em}
/* ---- 7. platform tab strip + hub table ---- */
.article-page .platform-tabs{padding:0 26px;border:1px solid var(--card-line);border-radius:14px;background:rgba(255,255,255,.02);margin-bottom:10px}
.article-page .platform-tabs a{padding:19px 0}
.article-page .release-note{background:var(--art-dots) 0 0/30px 30px,linear-gradient(135deg,rgba(255,106,31,.09),rgba(123,200,237,.05) 60%,transparent),#0d141f;border-color:var(--card-line)}
/* ---- 8. edition page cards ---- */
.article-page .availability{position:relative;overflow:hidden;background:var(--card);border-color:var(--card-line)}
.article-page .availability::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--orange),rgba(123,200,237,.6),transparent)}
.article-page .availability::after{content:"";position:absolute;right:0;top:0;width:120px;height:120px;background:var(--art-corner) no-repeat top right/contain;pointer-events:none}
.article-page .edition-story article>p:not(.eyebrow){color:var(--copy)}
/* ---- 9. build desk: record cards in a grid, colour-coded by platform ---- */
.article-page .source-note{background:var(--art-dots) 0 0/30px 30px,var(--card),#0d141f;border-color:var(--card-line);position:relative;overflow:hidden}
.article-page .source-note::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--orange),rgba(123,200,237,.6))}
/* ---- 10. explorer (your-world), agenda paper, journey tabs ---- */
.article-page .world-explorer{width:min(1440px,calc(100% - 120px));max-width:none;margin:0 auto;padding:10px 0 80px;display:grid;gap:26px}
.article-page .world-index [role=tablist]{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:10px}
.article-page .world-index [role=tab]{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:15px 18px;border:1px solid var(--card-line);border-radius:14px;background:var(--card);color:var(--copy);font-size:14px;text-align:left;cursor:pointer;transition:border-color .2s,background .2s,color .2s,transform .2s}
.article-page .world-index [role=tab] span{font-size:10px;letter-spacing:.12em;color:var(--blue)}
.article-page .world-index [role=tab] b{color:var(--orange);font-weight:400}
.article-page .world-index [role=tab]:hover{border-color:var(--card-line-hi);color:var(--white);transform:translateY(-1px)}
.article-page .world-index [role=tab][aria-selected=true]{border-color:var(--orange);background:linear-gradient(180deg,var(--orange-soft),rgba(255,255,255,.01));color:var(--white)}
.article-page .world-index>p{margin:18px 4px 0;font-size:13px;color:var(--muted)}
/* ---- 11. directory rows, resource cards, platform cards, journal, studio, tables, guide ---- */
.article-page .directory-rows{border:1px solid var(--card-line);border-radius:22px;background:var(--card);overflow:hidden}
.article-page .world-directory-row{display:grid;grid-template-columns:70px minmax(0,.55fr) minmax(0,1fr) 40px;gap:28px;align-items:center;padding:26px 36px;border-top:1px solid var(--card-line);transition:background .2s}
.article-page .world-directory-row:first-child{border-top:0}
.article-page .world-directory-row:nth-child(even){background:rgba(255,255,255,.016)}
.article-page .world-directory-row:hover{background:linear-gradient(90deg,var(--orange-soft),rgba(255,255,255,.01) 60%)}
.article-page .world-directory-row>span:first-child{color:var(--blue);font-size:11px;letter-spacing:.12em}
.article-page .world-directory-row h2{font-size:clamp(24px,2.2vw,34px);letter-spacing:-.04em;margin:0}
.article-page .world-directory-row p{font-size:14px;line-height:1.8;color:var(--copy);margin:0;max-width:760px}
.article-page .world-directory-row>span:last-child{justify-self:end;color:var(--orange)}
.article-page .directory-search{display:grid;gap:10px;max-width:560px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.article-page .directory-search input{padding:16px 20px;border:1px solid var(--card-line);border-radius:14px;background:var(--card);color:var(--white);font-size:15px;letter-spacing:0;text-transform:none;outline:0;transition:border-color .2s,box-shadow .2s}
.article-page .directory-search input:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft)}
.article-page .resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:14px;margin-top:6px}
.article-page .resource-item{display:grid;grid-template-columns:minmax(0,1fr) 28px;grid-template-rows:auto auto 1fr;gap:6px 14px;padding:24px 26px;border:1px solid var(--card-line);border-radius:16px;background:var(--card);position:relative;overflow:hidden;transition:border-color .2s,transform .2s}
.article-page .resource-item::before{content:"";position:absolute;left:0;top:0;right:0;height:2px;background:linear-gradient(90deg,var(--blue),transparent 70%);opacity:.7}
.article-page .resource-item:hover{border-color:var(--card-line-hi);transform:translateY(-2px)}
.article-page .resource-item>span{grid-column:1;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--blue)}
.article-page .resource-item h2{grid-column:1;font-size:22px;letter-spacing:-.035em;margin:0}
.article-page .resource-item p{grid-column:1;font-size:13px;line-height:1.75;color:var(--copy);margin:0}
.article-page .resource-item strong{grid-column:2;grid-row:1/span 2;color:var(--orange);font-weight:400;align-self:start}
.article-page .external-resources{padding-top:26px;border-top:1px dashed var(--card-line)}
.article-page .portal-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:18px}
.article-page .portal-row{display:grid;grid-template-columns:1fr auto;gap:10px 20px;align-items:end;padding:34px 34px 30px;border:1px solid var(--card-line);border-radius:22px;background:var(--card);position:relative;overflow:hidden;min-height:260px;transition:border-color .2s,transform .2s}
.article-page .portal-row::after{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;background:var(--art-orbit) center/contain no-repeat;opacity:.7;pointer-events:none}
.article-page .portal-row:hover{border-color:var(--card-line-hi);transform:translateY(-3px)}
.article-page .portal-code{grid-column:1/-1;align-self:start;font-size:clamp(40px,4vw,64px);letter-spacing:-.05em;color:var(--orange);position:relative;z-index:1}
.article-page .portal-row h3{margin:0;font-size:clamp(28px,2.6vw,40px);letter-spacing:-.04em}
.article-page .portal-host{grid-column:1;font-size:10px;letter-spacing:.16em;color:var(--muted)}
.article-page .portal-row .round-arrow{grid-column:2;grid-row:2/span 2}
.article-page .studio-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.article-page .studio-notes>section{max-width:none;padding:34px 36px;border:1px solid var(--card-line);border-radius:22px;background:var(--card);position:relative;overflow:hidden;min-width:0}
.article-page .studio-notes>section::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--orange),rgba(123,200,237,.5),transparent)}
.article-page .studio-notes>section:has(.table-scroll), .article-page .studio-notes>section:first-child{grid-column:1/-1}
.article-page .studio-notes>section:first-child{column-count:2;column-gap:60px}
.article-page .studio-notes>section:first-child h2{column-span:all}
.article-page .studio-notes>section:first-child p{break-inside:avoid;margin-top:0}
.article-page .studio-notes h2{font-size:clamp(24px,2.2vw,32px);letter-spacing:-.04em;margin:0 0 16px}
.article-page .studio-notes p{line-height:1.85;color:var(--copy)}
.article-page .table-scroll{overflow-x:auto;margin:22px 0 4px;border:1px solid var(--card-line);border-radius:16px;background:rgba(255,255,255,.015)}
.article-page .table-scroll table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
.article-page .table-scroll thead th{padding:16px 24px;text-align:left;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);background:var(--blue-soft);border-bottom:1px solid var(--card-line)}
.article-page .table-scroll tbody th, .article-page .table-scroll tbody td{padding:18px 24px;text-align:left;border-top:1px solid var(--card-line);font-weight:400;color:var(--copy)}
.article-page .table-scroll tbody tr:first-child th, .article-page .table-scroll tbody tr:first-child td{border-top:0}
.article-page .table-scroll tbody th{color:var(--white)}
.article-page .table-scroll tbody tr:nth-child(even){background:rgba(255,255,255,.02)}
.article-page .table-scroll tbody tr:hover{background:var(--orange-soft)}
.article-page .table-scroll code{padding:3px 9px;border:1px solid var(--card-line);border-radius:999px;background:rgba(255,255,255,.03);font-size:12px;color:var(--white)}
/* ---- H. home page ---- */
body:has(main>#top.hero) .wrap{width:min(1440px,calc(100% - 120px))}
body:has(main>#top.hero) .hero{position:relative;isolation:isolate}
body:has(main>#top.hero) .hero::after{content:"";position:absolute;z-index:-1;left:-9%;bottom:-18%;width:560px;aspect-ratio:1;background:var(--art-rings) center/contain no-repeat;opacity:.55;pointer-events:none}
body:has(main>#top.hero) .scroll-line{border-top:0;position:relative}
body:has(main>#top.hero) .scroll-line::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,106,31,.4) 18%,rgba(123,200,237,.28) 55%,transparent)}
body:has(main>#top.hero) .section-head>p{color:var(--copy)}
body:has(main>#top.hero) .tabs{flex-direction:column;margin-bottom:0;padding:4px 28px;border:1px solid var(--card-line);border-radius:22px;background:var(--card);align-self:stretch;justify-content:space-around}
body:has(main>#top.hero) .tab{display:grid;flex:1 1 auto;padding:27px 0;border-top:1px solid var(--card-line);border-bottom:0}
body:has(main>#top.hero) .tab:first-child{border-top:0}
body:has(main>#top.hero) .tab:last-child{border-bottom:0}
body:has(main>#top.hero) .tab b{display:block}
body:has(main>#top.hero) .tab:hover{color:var(--white)}
body:has(main>#top.hero) .panel{border-color:var(--card-line);box-shadow:0 30px 80px rgba(0,0,0,.28)}
body:has(main>#top.hero) .story-row{gap:18px}
body:has(main>#top.hero) .story-item{padding:36px 32px 40px;border:1px solid var(--card-line);border-radius:20px;background:var(--card);overflow:hidden;transition:border-color .2s,transform .2s}
body:has(main>#top.hero) .story-item::before{top:0;left:0;right:0;width:auto;height:2px;border-radius:0;background:linear-gradient(90deg,var(--orange),rgba(255,106,31,0) 72%)}
body:has(main>#top.hero) .story-item::after{content:"";position:absolute;right:0;top:0;width:110px;height:110px;background:var(--art-corner) no-repeat top right/contain;pointer-events:none;opacity:.8}
body:has(main>#top.hero) .story-item:hover{border-color:var(--card-line-hi);transform:translateY(-3px)}
body:has(main>#top.hero) .story-item p{max-width:none;color:var(--copy)}
body:has(main>#top.hero) .presence-section .section-head{align-items:stretch;gap:60px}
body:has(main>#top.hero) .presence-copy{margin-top:0;flex:0 1 640px;padding:44px 48px;border:1px solid var(--card-line);border-radius:24px;background:var(--art-rings) right -150px top -120px/460px no-repeat,var(--card)}
body:has(main>#top.hero) .presence-copy p{max-width:none;color:var(--copy)}
body:has(main>#top.hero) .presence-copy .quiet-link{display:inline-flex;margin:6px 14px 0 0;padding:11px 18px;border:1px solid var(--card-line);border-radius:999px;background:rgba(255,255,255,.03)}
body:has(main>#top.hero) .presence-copy .quiet-link:hover{border-color:var(--card-line-hi)}
body:has(main>#top.hero) .closing{border-color:var(--card-line);border-radius:30px;background:var(--art-dots) 0 0/30px 30px,radial-gradient(ellipse at 90% 60%,rgba(40,97,134,.26),transparent 58%),radial-gradient(ellipse at 6% 0%,rgba(255,106,31,.10),transparent 50%),#0d141f}
/* ---- R. reconcile with the "DUKE fill pass 2026-10-25" block that sits earlier in site.css ---- */
.article-page .resource-item:hover, .article-page .portal-row:hover{background:var(--card)}
.article-page .portal-row{transition:border-color .2s,transform .2s,background .2s}
@media (max-width:1000px){
.article-page .world-explorer{width:calc(100% - 48px)}
.article-page .studio-notes{grid-template-columns:minmax(0,1fr)}
.article-page .world-directory-row{grid-template-columns:44px minmax(0,1fr) 30px;padding:22px 22px}
.article-page .world-directory-row p{grid-column:2/4}
body:has(main>#top.hero) .wrap{width:calc(100% - 48px)}
body:has(main>#top.hero) .presence-section .section-head{flex-direction:column}
body:has(main>#top.hero) .presence-copy{flex:none;padding:32px 28px}
.article-page>.closing{width:calc(100% - 48px)}
}
@media (max-width:620px){
body:has(main>#top.hero)::after{display:none}
body:has(main>#top.hero) .wrap{width:calc(100% - 32px)}
body:has(main>#top.hero) .tabs{flex-direction:column;padding:2px 20px}
body:has(main>#top.hero) .story-item{padding:28px 24px 30px}
body:has(main>#top.hero) .presence-copy{padding:26px 22px}
.article-page>.closing{width:calc(100% - 32px)}
.article-page .studio-notes>section{padding:26px 22px}
.article-page .table-scroll thead th, .article-page .table-scroll tbody th, .article-page .table-scroll tbody td{padding:14px 16px}
}
/* ==== end R12 polish layer ==== */
/* DUKE 2026-10-25: edition art blends into the page — no card frame. */
.edition-art,.edition-art-wrap,.edition-thumb{background:transparent!important;border:0!important;box-shadow:none!important}
.edition-art img,.edition-art-wrap img{-webkit-mask-image:radial-gradient(ellipse at center,black 55%,transparent 78%);mask-image:radial-gradient(ellipse at center,black 55%,transparent 78%)}
.edition-art iframe,.edition-art-wrap iframe{background:transparent!important}
.edition-hero .edition-art,.edition-hero .edition-art-wrap{aspect-ratio:auto}

/* ==== R12 edition letters v1 (Claire) ===========================================
   Append AFTER the earlier layers (incl. Duke's 16:02 GMT "edition art blends into the page").
   CSS only. Duke's rule already removes the card around the edition artwork. On the Linux
   Atlas / Eva / Cleo pages the letter (A, E, C) is still tiny inside its rings because it kept the
   hub-row thumbnail size, while Free / Lite show a 140 px letter. This gives A / E / C the same size.
   ================================================================================ */
.atlas-studio[data-page=article] main.article-page .edition-art-wrap .edition-art>.edition-thumb.typographic-art{
  width:100%;height:auto;aspect-ratio:1;min-height:320px;display:grid;place-items:center;overflow:visible}
.atlas-studio[data-page=article] main.article-page .edition-art-wrap .edition-art>.edition-thumb.typographic-art>span{font-size:140px}
@media (max-width:620px){
  .atlas-studio[data-page=article] main.article-page .edition-art-wrap .edition-art>.edition-thumb.typographic-art{min-height:220px}
  .atlas-studio[data-page=article] main.article-page .edition-art-wrap .edition-art>.edition-thumb.typographic-art>span{font-size:100px}
}
/* ==== end R12 edition letters v1 ================================================== */

/* ==== R12 patch 2 (Archie, 25 Oct): phone gutters + edition artwork blends into the page ==== */
/* 1. Phone gutters. The wide-screen width rule above also overrode the site's own phone rule, so under 780px the
      column was 100% - 120px instead of 100% - 48px. This puts the phone rule back. */
@media (max-width:780px){
.article-page .rail,.article-page>.breadcrumb{width:calc(100% - 48px)}
}
/* 2. Edition artwork. The six edition images (Windows and Mac: Atlas, Eva, Cleo) carry a navy or black backdrop baked
      into the file. Duke's 16:02 mask softened the square into a dark halo. Here the image blends with "lighten":
      wherever it is darker than the page, the page shows through, so the backdrop and the halo disappear and the art
      floats. A touch of contrast first pushes the backdrop below the page colour on every channel, and a tight edge
      mask removes the last straight edge. The article shell and the edition hero stop isolating their layers so the
      blend can read the page. On these six pages only, the ring art behind is a little fainter, has no centre dot and is cleared from
      the middle so it does not cut across dark art; the letter editions keep their rings as they were. */
.atlas-studio[data-page=article],.article-page .edition-hero{isolation:auto}
.article-page .edition-art img{mix-blend-mode:lighten;filter:contrast(1.12);border-radius:0;-webkit-mask-image:radial-gradient(closest-side,#000 93%,transparent 100%);mask-image:radial-gradient(closest-side,#000 93%,transparent 100%)}
.article-page .edition-art-wrap:has(.edition-art img)::before{background-image:var(--art-orbit-nd);opacity:.6;-webkit-mask-image:radial-gradient(circle closest-side,transparent 66%,#000 84%);mask-image:radial-gradient(circle closest-side,transparent 66%,#000 84%)}
/* ==== end R12 patch 2 ==== */

/* ==== R12 fonts v1 (Claire) ======================================================
   Append AFTER the earlier layers, to BOTH site.css and assets/site-polish.css (the older pages only load the second one).
   CSS only; the two font files are installed by the apply script.
   Every page headline (the one h1 per page) is set in NEXTSTEP, upright; the coloured words inside it keep their colour but
   lose the italic serif (NEXTSTEP has no italic). Sizes are a share of the screen width because NEXTSTEP is much wider than the
   old face, so each headline keeps its place and its line count. The top banner is Mainard.
   ":root:not(#_)" only raises the selector's weight so this wins over the older !important rules (e.g. world-shell.css).
   Fallback is the stack the site uses today, if a font file cannot load.
   ================================================================================ */
@font-face{font-family:"NEXTSTEP";src:url("/assets/fonts/nextstep-regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Mainard";src:url("/assets/fonts/mainard-regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
:root:not(#_) h1{font-family:"NEXTSTEP","Work Sans",sans-serif!important;font-weight:400!important;letter-spacing:-.01em!important;font-size:clamp(30px,3.6vw,56px)!important}
:root:not(#_) h1 .serif,:root:not(#_) h1 em,:root:not(#_) h1 i{font-family:inherit!important;font-style:normal!important;font-weight:400!important;letter-spacing:inherit!important}
:root:not(#_) .page-hero h1{font-size:clamp(36px,5vw,76px)!important}
:root:not(#_) .hero h1{font-size:clamp(36px,4.2vw,72px)!important}
:root:not(#_) body[data-site-shell] h1{font-size:clamp(26px,2.8vw,42px)!important}
@media (max-width:780px){:root:not(#_) h1,:root:not(#_) .page-hero h1,:root:not(#_) .hero h1,:root:not(#_) body[data-site-shell] h1{font-size:clamp(26px,7.4vw,44px)!important}}
.engineering-bar{font-family:"Mainard","Work Sans",sans-serif;font-weight:400}
/* ==== end R12 fonts v1 ============================================================ */

/* DUKE 2026-10-25: home banner was 10px/8px — raise to interior 11.5px, floor 10.5px */
body[data-page=home] .engineering-banner{font-size:11.5px}
@media(max-width:780px){body[data-page=home] .engineering-banner{font-size:10.5px}}

/* ==== R12 banner floor v1 (Claire) ================================================
   The orange banner never renders below 10.5 px. Why: R13 (assets/atlas-selected-type-r13.css) sets it to
   clamp(9px,.82vw,12px) and 9px under 600 px, so every screen narrower than about 1280 px is under the floor on the
   home page and the other R13 pages. The earlier "DUKE 2026-10-25" line targets .engineering-banner under
   body[data-page=home]; no page has either, so it changes nothing. Pages that are data-page=article already carry 11.5 px.
   Only screens under 1280 px are touched; above that R13's own size is already 10.5 px or more.
   ":root:not(#_)" only raises the selector's weight so this wins over R13.
   ================================================================================ */
@media (max-width:1279px){:root:not(#_) .atlas-studio:not([data-page=article]) .engineering-bar{font-size:10.5px!important}}
/* ==== end R12 banner floor v1 ===================================================== */

/* ==== R12 footer tagline v1 (Claire) ==============================================
   "Building Binary Worlds." in the footer is set in the banner's face (Mainard). Two places carry it: the home page's footer
   (div.titan-footer, second paragraph, styled inline, so no font is set there) and the older pages' family strip
   (.family-strip__tag, Work Sans in site-consistency.css). Append to BOTH site.css and assets/site-polish.css (the older pages
   load only the second); the Mainard @font-face comes from the R12 fonts v1 block already in both. "Atlas Mainard" is the same
   file under R13's name, kept as a second choice. ":root:not(#_)" only raises the selector's weight.
   ================================================================================ */
:root:not(#_) .family-strip__tag{font-family:"Mainard","Atlas Mainard","Work Sans",sans-serif!important;font-weight:400!important}
:root:not(#_) .titan-footer>p:nth-of-type(2){font-family:"Mainard","Atlas Mainard","Work Sans",sans-serif!important;font-weight:400!important}
/* ==== end R12 footer tagline v1 =================================================== */

/* DUKE 2026-10-25 v2: real selector — banner is .engineering-bar, 9px under 1280px breaks floor */
@media (max-width:1279px){.engineering-bar{font-size:10.5px!important}}
@font-face{font-family:Inter;src:url("/assets/fonts/inter.woff2") format("woff2");font-weight:100 900;font-display:swap}
