/* Somateka inner pages v2 — shared editorial system */
.inner-v2{background:#ece8df;color:#171613}
.inner-v2 .top{position:relative;background:#131613;color:#f1eee6}
.inner-v2 .top.scrolled{position:fixed}
.inner-v2 main{overflow:hidden}
.inner-v2 .inner-kicker{display:flex;align-items:center;gap:12px;margin:0 0 24px;color:#786f63;font-size:9px;font-weight:600;letter-spacing:.19em;text-transform:uppercase}
.inner-v2 .inner-kicker::before{content:"";width:32px;height:1px;background:currentColor}
.inner-v2 .inner-kicker.light{color:rgba(241,238,230,.58)}
.inner-v2 .inner-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-width:220px;padding:16px 18px;border:1px solid #9f4937;background:#9f4937;color:#fff;font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.inner-v2 .inner-primary:hover{background:#c56a51}
.inner-v2 .inner-primary.pale{border-color:#f1eee6;background:#f1eee6;color:#171613}
.inner-v2 .inner-secondary{display:inline-flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid currentColor;color:inherit;font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:17px}

/* Method registry */
.registry-hero{position:relative;min-height:650px;background:#181a17;color:#f1eee6}
.registry-hero::before{content:"";position:absolute;inset:0;background:url("media/somateka-hero-atlas-lossless-v2.webp") 78% center/cover no-repeat;filter:saturate(.65)}
.registry-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,14,12,.96) 0%,rgba(12,14,12,.85) 43%,rgba(12,14,12,.2) 78%),linear-gradient(0deg,rgba(12,14,12,.45),transparent 50%)}
.registry-hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,760px) 250px;align-items:end;min-height:650px;padding-top:100px;padding-bottom:60px}
.registry-hero h1{margin:0 0 26px;color:#f1eee6;font-size:clamp(58px,7vw,106px);font-weight:400;letter-spacing:-.06em;line-height:.88}
.registry-hero h1 em{color:#c6bba5;font-weight:400}
.registry-hero .lead{max-width:650px;margin:0;color:rgba(241,238,230,.68);font-size:18px;font-weight:300;line-height:1.65}
.registry-counts{align-self:end;border-top:1px solid rgba(241,238,230,.28)}
.registry-counts div{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:15px 0;border-bottom:1px solid rgba(241,238,230,.16)}
.registry-counts b{font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:20px;font-weight:400}.registry-counts span{color:rgba(241,238,230,.46);font-size:8px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}
.registry-intro{padding:110px 0 72px;background:#ece8df}
.registry-intro-grid{display:grid;grid-template-columns:280px minmax(0,820px);gap:50px}.registry-intro h2{font-size:clamp(42px,5vw,72px);font-weight:400;letter-spacing:-.052em;line-height:1.03}.registry-intro p{max-width:720px;color:#6d665b;font-size:16px;line-height:1.75}
.registry-ledger{padding-bottom:130px;background:#ece8df}
.registry-family{border-top:1px solid #969084}
.registry-family__head{display:grid;grid-template-columns:60px minmax(300px,.9fr) 1fr 30px;gap:24px;align-items:center;padding:31px 0;border-bottom:1px solid #aaa397}
.registry-family__head>span:first-child{font-size:9px;letter-spacing:.14em}.registry-family__head h2{margin:0;font-size:31px;font-weight:400}.registry-family__head p{margin:0;color:#726b60;font-size:12px;line-height:1.6}.registry-family__head>span:last-child{justify-self:end;color:#9f4937;font-size:18px}
.registry-methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:-1px 0 42px;background:#aaa397;border-bottom:1px solid #aaa397}
.registry-method{display:flex;min-height:185px;flex-direction:column;padding:24px;background:#ded8cc;color:#171613;transition:background .2s,color .2s}
.registry-method:hover{background:#26221d;color:#f1eee6}.registry-method small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;opacity:.58}.registry-method b{margin-top:auto;font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:25px;font-weight:400}.registry-method span{margin-top:9px;font-size:11px;line-height:1.45;opacity:.62}
.registry-method.muted{background:#e5e0d6;color:#7a7469}.registry-method.muted:hover{background:#5d574e;color:#fff}
.registry-principle{padding:110px 0;background:#23201b;color:#f1eee6}.registry-principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.registry-principle h2{font-size:clamp(48px,5.2vw,78px);font-weight:400;letter-spacing:-.055em;line-height:.98}.registry-steps{border-top:1px solid rgba(241,238,230,.25)}.registry-steps div{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:21px 0;border-bottom:1px solid rgba(241,238,230,.16)}.registry-steps span{color:#a88951;font-size:9px}.registry-steps b{display:block;margin-bottom:6px;font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:21px;font-weight:400}.registry-steps p{margin:0;color:rgba(241,238,230,.5);font-size:12px;line-height:1.55}

/* Method detail */
.method-v2-hero{position:relative;min-height:690px;background:#151613;color:#f1eee6}
.method-v2-art{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;filter:saturate(.76) contrast(1.03)}
.method-v2-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,13,12,.96) 0%,rgba(12,13,12,.86) 44%,rgba(12,13,12,.12) 78%),linear-gradient(0deg,rgba(12,13,12,.5),transparent 45%)}
.method-v2-hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,700px) 260px;align-items:end;min-height:690px;padding-top:110px;padding-bottom:54px}
.method-v2-hero h1{margin:0 0 22px;color:#f1eee6;font-size:clamp(70px,8vw,118px);font-weight:400;letter-spacing:-.065em;line-height:.82}.method-v2-hero .lead{max-width:610px;margin:0;color:rgba(241,238,230,.68);font-size:18px;line-height:1.65}
.method-v2-actions{display:flex;align-items:center;gap:25px;margin-top:34px}.method-v2-actions a:not(.inner-primary){color:#f1eee6}
.method-v2-facts{border-top:1px solid rgba(241,238,230,.26)}.method-v2-facts div{display:grid;grid-template-columns:78px 1fr;gap:12px;padding:15px 0;border-bottom:1px solid rgba(241,238,230,.16)}.method-v2-facts b{color:#b99c66;font-size:8px;letter-spacing:.13em;text-transform:uppercase}.method-v2-facts span{font-size:10px;line-height:1.5;color:rgba(241,238,230,.62)}
.method-navrail{background:#29251f;color:#f1eee6}.method-navrail .wrap{display:flex;gap:28px;overflow:auto;padding-top:16px;padding-bottom:16px;scrollbar-width:none}.method-navrail a{white-space:nowrap;color:rgba(241,238,230,.57);font-size:8px;letter-spacing:.14em;text-transform:uppercase}.method-navrail a:hover{color:#fff}
.method-overview{padding:110px 0;background:#ece8df}.method-overview-grid{display:grid;grid-template-columns:280px minmax(0,820px);gap:55px}.method-overview h2,.method-map-copy h2,.method-reading h2{font-size:clamp(43px,5vw,72px);font-weight:400;letter-spacing:-.052em;line-height:1.02}.method-overview-copy>p{color:#665f55;font-size:17px;line-height:1.75}.method-thesis{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:48px;background:#aaa397;border:1px solid #aaa397}.method-thesis div{min-height:190px;padding:24px;background:#ded8cc}.method-thesis span{font-size:8px;letter-spacing:.15em}.method-thesis b{display:block;margin:55px 0 8px;font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:22px;font-weight:400}.method-thesis p{margin:0;color:#696257;font-size:11px;line-height:1.5}
.method-map{padding:120px 0;background:#d8d2c6}.method-map-grid{display:grid;grid-template-columns:.67fr 1.33fr;gap:80px;align-items:start}.method-map-copy{position:sticky;top:120px}.method-map-copy>p{color:#686157;font-size:15px;line-height:1.7}.method-map-frame{position:relative;min-height:760px;overflow:hidden;background:#111}.method-map-frame>img{width:100%;height:760px;object-fit:cover;filter:saturate(.73)}.method-map-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,11,10,.68),transparent 44%);pointer-events:none}.method-map-label{position:absolute;z-index:2;left:22px;top:22px;padding:8px 10px;border:1px solid rgba(255,255,255,.5);color:#fff;font-size:8px;letter-spacing:.14em;text-transform:uppercase}.method-map-caption{position:absolute;z-index:2;right:25px;bottom:24px;left:25px;display:flex;justify-content:space-between;gap:30px;align-items:end;color:#fff}.method-map-caption b{font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:28px;font-weight:400}.method-map-caption span{max-width:280px;color:rgba(255,255,255,.6);font-size:10px;line-height:1.55}.method-map-actions{display:grid;gap:1px;margin-top:1px;background:#aaa397}.method-map-actions a{display:flex;justify-content:space-between;padding:18px 20px;background:#ece8df;color:#171613;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.method-map-actions a:hover{background:#f5f1e8}
.method-reading{padding:120px 0;background:#ece8df}.method-reading-head{display:grid;grid-template-columns:280px 1fr;gap:55px;margin-bottom:65px}.method-reading-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:80px}.method-prose{max-width:760px}.method-prose h3{margin:46px 0 15px;padding-top:21px;border-top:1px solid #aaa397;font-size:28px;font-weight:400}.method-prose h3:first-child{margin-top:0}.method-prose p,.method-prose li{color:#5f594f;font-size:15px;line-height:1.75}.method-prose ul{padding-left:18px}.method-prose li{margin-bottom:7px}.method-aside{align-self:start;border-top:1px solid #8e887d}.method-aside>div{padding:21px 0;border-bottom:1px solid #aaa397}.method-aside span{display:block;margin-bottom:8px;color:#827b70;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.method-aside b{display:block;font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:20px;font-weight:400}.method-aside p{margin:8px 0 0;color:#716a60;font-size:11px;line-height:1.55}.method-review-note{margin-top:36px;padding:22px;border-left:2px solid #9f4937;background:#ded8cc;color:#5f594f;font-size:12px;line-height:1.65}
.method-next{padding:100px 0;background:#9f4937;color:#fff}.method-next-grid{display:grid;grid-template-columns:1fr .65fr;gap:90px;align-items:end}.method-next h2{font-size:clamp(48px,5vw,75px);font-weight:400;letter-spacing:-.052em;line-height:.98}.method-next p{color:rgba(255,255,255,.7);font-size:15px;line-height:1.65}

/* Interactive 2D map */
.map-tool-hero{padding:100px 0 70px;background:#181a17;color:#f1eee6}.map-tool-hero-grid{display:grid;grid-template-columns:1fr .55fr;gap:80px;align-items:end}.map-tool-hero h1{margin:0 0 22px;color:#f1eee6;font-size:clamp(58px,7vw,98px);font-weight:400;letter-spacing:-.06em;line-height:.9}.map-tool-hero p:not(.inner-kicker){max-width:700px;color:rgba(241,238,230,.63);font-size:17px;line-height:1.65}.map-tool-status{padding:18px 0;border-top:1px solid rgba(241,238,230,.24);border-bottom:1px solid rgba(241,238,230,.24);color:rgba(241,238,230,.52);font-size:9px;letter-spacing:.13em;line-height:1.6;text-transform:uppercase}
.map-tool{padding:95px 0 120px;background:#d8d2c6}.map-tool-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:45px;align-items:start}.map-canvas{padding:35px;border:1px solid #aaa397;background:#ece8df}.map-canvas svg{display:block;width:100%;max-height:780px}.map-canvas .zone{cursor:pointer;stroke:#ece8df;stroke-width:2;transition:opacity .2s ease,stroke-width .2s ease}.map-canvas .zone:hover,.map-canvas .zone.on{opacity:1;stroke:#171613;stroke-width:4}.map-canvas .nogo{fill:#a85b50;opacity:.28}.map-info{position:sticky;top:110px;padding:30px;border-top:3px solid #9f4937;background:#24211c;color:#f1eee6}.map-info small{color:#b89a65;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.map-info b{display:block;margin:17px 0 10px;font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:29px;font-weight:400}.map-info p{color:rgba(241,238,230,.58);font-size:13px;line-height:1.65}.map-info a{display:inline-block;margin-top:15px;color:#fff;border-bottom:1px solid rgba(255,255,255,.42);font-size:10px}.map-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px;color:#6e675d;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.map-legend i{display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:50%}.map-tool-note{display:grid;grid-template-columns:120px 1fr;gap:25px;margin-top:34px;padding-top:22px;border-top:1px solid #999287;color:#625c52;font-size:12px;line-height:1.65}.map-tool-note b{color:#9f4937;font-size:9px;letter-spacing:.13em;text-transform:uppercase}

/* Flagship 3D atlas page */
.atlas-shell{position:relative;height:calc(100vh - 88px);min-height:690px;padding:0!important;background:#08110e}.atlas-shell iframe{display:block;width:100%;height:100%;border:0}
.atlas-intro{padding:115px 0;background:#ece8df}.atlas-intro-grid{display:grid;grid-template-columns:280px minmax(0,820px);gap:55px}.atlas-intro h1{margin:0 0 25px;font-size:clamp(46px,5.6vw,82px);font-weight:400;letter-spacing:-.055em;line-height:1}.atlas-intro p{max-width:760px;color:#655e54;font-size:17px;line-height:1.72}.atlas-statline{display:grid;grid-template-columns:repeat(4,1fr);margin-top:58px;border-top:1px solid #999287;border-bottom:1px solid #999287}.atlas-statline div{padding:21px 18px;border-right:1px solid #aaa397}.atlas-statline div:last-child{border-right:0}.atlas-statline b{display:block;font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:29px;font-weight:400}.atlas-statline span{display:block;margin-top:5px;color:#777064;font-size:8px;line-height:1.45;letter-spacing:.12em;text-transform:uppercase}
.atlas-layers{padding:120px 0;background:#24211c;color:#f1eee6}.atlas-layers-head{display:grid;grid-template-columns:280px 1fr;gap:55px;margin-bottom:65px}.atlas-layers h2,.atlas-workflow h2{font-size:clamp(45px,5.2vw,76px);font-weight:400;letter-spacing:-.054em;line-height:1}.atlas-layer-ledger{border-top:1px solid rgba(241,238,230,.25)}.atlas-layer-row{display:grid;grid-template-columns:55px minmax(230px,.7fr) 1fr 120px;gap:25px;align-items:center;padding:27px 0;border-bottom:1px solid rgba(241,238,230,.16)}.atlas-layer-row>span:first-child{color:#b89a65;font-size:9px}.atlas-layer-row h3{margin:0;color:#f1eee6;font-size:28px;font-weight:400}.atlas-layer-row p{margin:0;color:rgba(241,238,230,.5);font-size:12px;line-height:1.6}.atlas-layer-row>span:last-child{justify-self:end;color:rgba(241,238,230,.37);font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.atlas-workflow{padding:120px 0;background:#d8d2c6}.atlas-workflow-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.atlas-workflow ol{margin:0;padding:0;list-style:none;border-top:1px solid #979084}.atlas-workflow li{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid #aaa397}.atlas-workflow li>span{color:#9f4937;font-size:9px}.atlas-workflow li b{font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:22px;font-weight:400}.atlas-workflow li p{margin:7px 0 0;color:#676056;font-size:12px;line-height:1.55}.atlas-point-sample{margin-top:45px;padding:32px;border-top:3px solid #9f4937;background:#ece8df}.atlas-point-sample small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#80786d}.atlas-point-sample h3{margin:14px 0 10px;font-size:33px;font-weight:400}.atlas-point-sample p{color:#655e54;font-size:13px;line-height:1.65}.atlas-point-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.atlas-point-tags span{padding:7px 9px;border:1px solid #aaa397;color:#6f685d;font-size:8px;letter-spacing:.1em;text-transform:uppercase}

@media(max-width:1000px){
  .registry-methods{grid-template-columns:1fr 1fr}.registry-family__head{grid-template-columns:45px minmax(250px,.8fr) 1fr 25px}
  .method-map-grid{grid-template-columns:1fr}.method-map-copy{position:static;max-width:720px}.method-reading-grid{gap:45px}
}
@media(max-width:760px){
  .registry-hero .wrap,.method-v2-hero .wrap{grid-template-columns:1fr;min-height:660px}.registry-counts,.method-v2-facts{display:none}
  .registry-intro{padding:82px 0 54px}.registry-intro-grid,.registry-principle-grid,.method-overview-grid,.method-reading-head,.method-reading-grid,.method-next-grid{grid-template-columns:1fr;gap:30px}
  .registry-family__head{grid-template-columns:30px 1fr 22px;gap:12px}.registry-family__head p{grid-column:2/4}.registry-methods{grid-template-columns:1fr 1fr}.registry-method{min-height:150px;padding:18px}.registry-method b{font-size:21px}
  .registry-principle{padding:82px 0}.method-v2-hero{min-height:650px}.method-v2-art{background-position:64% center}.method-v2-hero .wrap{padding-top:100px;padding-bottom:45px}.method-v2-hero h1{font-size:68px}.method-v2-actions{align-items:flex-start;flex-direction:column;gap:12px}
  .method-overview,.method-map,.method-reading{padding:82px 0}.method-thesis{grid-template-columns:1fr}.method-thesis div{min-height:145px}.method-thesis b{margin-top:35px}.method-map-frame,.method-map-frame>img{height:590px;min-height:0}.method-map-caption{display:grid}.method-next{padding:80px 0}
  .map-tool-hero-grid,.map-tool-grid{grid-template-columns:1fr}.map-info{position:static}.map-tool{padding:70px 0 90px}
  .atlas-shell{height:78vh;min-height:560px}.atlas-intro-grid,.atlas-layers-head,.atlas-workflow-grid{grid-template-columns:1fr;gap:30px}.atlas-statline{grid-template-columns:1fr 1fr}.atlas-statline div:nth-child(2){border-right:0}.atlas-statline div:nth-child(-n+2){border-bottom:1px solid #aaa397}.atlas-layer-row{grid-template-columns:35px 1fr}.atlas-layer-row p,.atlas-layer-row>span:last-child{grid-column:2}.atlas-layer-row>span:last-child{justify-self:start}.atlas-intro,.atlas-layers,.atlas-workflow{padding:82px 0}
}
@media(max-width:520px){.registry-methods{grid-template-columns:1fr}.method-map-frame,.method-map-frame>img{height:500px}.map-canvas{padding:14px}.map-tool-note{grid-template-columns:1fr}}

/* v3: minimum readable type scale across atlas and method pages */
.inner-v2{font-family:"Onest","Helvetica Neue",Arial,sans-serif;font-size:18px}
.inner-v2 h1,.inner-v2 h2,.inner-v2 h3,.inner-v2 h4,.inner-v2 b{font-family:"Onest","Helvetica Neue",Arial,sans-serif}
.inner-v2 .inner-kicker{font-size:13px;letter-spacing:.04em;text-transform:none}
.inner-v2 .inner-primary{font-size:14px;letter-spacing:0;text-transform:none}
.inner-v2 .inner-secondary{font-family:inherit;font-size:16px}
.registry-hero .wrap,.method-v2-hero .wrap{grid-template-columns:minmax(0,820px)}
.registry-hero .wrap,.method-v2-hero .wrap{align-items:center;padding-bottom:38px}
.registry-hero h1{font-size:clamp(52px,6vw,88px)}
.method-v2-facts{display:none}
.registry-method.muted:hover{background:#e5e0d6;color:#7a7469}
.registry-hero h1,.method-v2-hero h1,.map-tool-hero h1{font-weight:550;letter-spacing:-.055em;line-height:.98}
.registry-hero h1 em{color:inherit;font-style:normal;font-weight:inherit}
.registry-hero .lead,.method-v2-hero .lead,.map-tool-hero p:not(.inner-kicker){color:rgba(241,238,230,.82);font-size:19px}
.registry-counts b{font-size:23px;font-weight:500}.registry-counts span{font-size:13px;letter-spacing:0;text-transform:none}
.registry-intro h2,.registry-principle h2,.method-overview h2,.method-map-copy h2,.method-reading h2,.method-next h2,.atlas-intro h1,.atlas-layers h2,.atlas-workflow h2{font-weight:500;letter-spacing:-.045em;line-height:1.06}
.registry-intro p,.method-overview-copy>p,.method-map-copy>p,.method-prose p,.method-prose li,.method-next p,.atlas-intro p{font-size:17px}
.registry-family__head>span:first-child,.registry-steps span,.method-v2-facts b,.atlas-layer-row>span:first-child,.atlas-workflow li>span{font-size:13px;letter-spacing:0}
.registry-family__head h2{font-size:31px;font-weight:500}.registry-family__head p{font-size:16px}
.registry-method small{font-size:13px;letter-spacing:0;text-transform:none}.registry-method b{font-size:25px;font-weight:500}.registry-method span{font-size:15px;line-height:1.5}
.registry-steps b,.method-thesis b,.method-aside b,.atlas-workflow li b{font-size:22px;font-weight:500}.registry-steps p,.method-thesis p,.method-aside p,.atlas-workflow li p{font-size:15px;color:inherit;opacity:.72}
.method-v2-facts span{font-size:14px}.method-navrail a{font-size:14px;letter-spacing:0;text-transform:none}
.method-thesis span,.method-map-label,.method-aside span,.map-info small,.atlas-statline span,.atlas-point-sample small,.atlas-point-tags span{font-size:13px;letter-spacing:0;text-transform:none}
.method-map-caption span,.method-map-actions a{font-size:14px}.method-map-caption b{font-size:28px;font-weight:500}
.method-review-note,.map-tool-note{font-size:15px}.map-tool-status,.map-legend,.map-tool-note b{font-size:13px;letter-spacing:0;text-transform:none}.map-info p{font-size:15px}.map-info a{font-size:14px}.map-info b{font-size:29px;font-weight:500}
.atlas-statline b{font-size:30px;font-weight:500}.atlas-layer-row h3{font-size:28px;font-weight:500}.atlas-layer-row p{font-size:15px;color:rgba(241,238,230,.68)}.atlas-layer-row>span:last-child{font-size:13px;letter-spacing:0;text-transform:none}.atlas-point-sample p{font-size:15px}
