/* Somateka body-map navigator — editorial plate system, not a card dashboard. */
.body2-page{background:#f4efe5;color:#202723}
.body2-page main{overflow:hidden}
.body2-page .wrap{width:min(1460px,calc(100% - 96px));max-width:none}
.body2-kicker{margin:0;color:#9b4e3b;font-size:13px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}

.body2-hero{position:relative;padding:74px 0 0;background-color:#eee5d5;background-image:linear-gradient(90deg,rgba(244,239,229,.92),rgba(244,239,229,.34)),url("media/somateka-ivory-stone-texture-lossless-v1.webp");background-size:auto,860px auto;border-bottom:1px solid #b9b1a3}
.body2-hero-grid{display:grid;grid-template-columns:minmax(420px,.78fr) minmax(620px,1.22fr);gap:clamp(55px,6vw,108px);align-items:center;min-height:700px}
.body2-hero-copy{position:relative;z-index:2;padding:54px 0 70px}
.body2-hero h1{max-width:720px;margin:22px 0 0;color:#1e2723;font-size:clamp(61px,6.3vw,105px);line-height:.94;letter-spacing:-.055em}
.body2-hero h1 em{color:#815240;font-weight:400}
.body2-hero-lead{max-width:660px;margin:34px 0 0;color:#4c5751;font-size:21px;line-height:1.7}
.body2-primary,.body2-secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-height:60px;margin-top:34px;padding:15px 22px;background:#263f38;color:#fff;font-size:15px;font-weight:700;letter-spacing:.015em;text-decoration:none}
.body2-primary:hover,.body2-secondary:hover{background:#9b4e3b}
.body2-primary span,.body2-secondary span{font-family:var(--ed-serif);font-size:22px;font-weight:400}
.body2-hero-plate{position:relative;margin:0;align-self:stretch;min-height:700px;overflow:hidden;border-left:1px solid rgba(79,72,62,.24);border-right:1px solid rgba(79,72,62,.18);background:#e8decc}
.body2-hero-figures{display:grid;grid-template-columns:1fr 1fr;width:100%;height:100%;min-height:700px}
.body2-hero-figures img{display:block;width:100%;height:100%;min-height:700px;object-fit:cover;filter:saturate(.86) contrast(1.025)}
.body2-hero-figures img:first-child{object-position:35% center}.body2-hero-figures img:last-child{object-position:66% center}
.body2-hero-plate figcaption{position:absolute;right:0;bottom:0;left:0;display:grid;grid-template-columns:105px 1fr;gap:5px 22px;padding:23px 27px;background:linear-gradient(0deg,rgba(24,31,28,.93),rgba(24,31,28,.22));color:#fff}
.body2-hero-plate figcaption span{grid-row:1/3;color:#d8b99b;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.body2-hero-plate figcaption b{font-family:var(--ed-serif);font-size:21px;font-weight:500}.body2-hero-plate figcaption small{color:#cbd2ce;font-size:12px}
.body2-hero-ledger{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #b9b1a3}
.body2-hero-ledger span{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;min-height:104px;padding:18px 32px;border-right:1px solid #b9b1a3}.body2-hero-ledger span:first-child{border-left:1px solid #b9b1a3}
.body2-hero-ledger b{font-family:var(--ed-serif);font-size:34px;font-weight:500;color:#283832}.body2-hero-ledger small{max-width:150px;color:#606a64;font-size:13px;line-height:1.35;text-transform:uppercase;letter-spacing:.055em}

.body2-regions{padding:116px 0 132px;background:#f5f0e7}
.body2-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.42fr);gap:clamp(60px,8vw,140px);align-items:end;margin-bottom:64px}
.body2-section-head h2{max-width:920px;margin:16px 0 0;color:#202723;font-size:clamp(53px,5.5vw,82px);line-height:1.01;letter-spacing:-.046em}
.body2-section-head>p{margin:0 0 6px;color:#59635e;font-size:17px;line-height:1.72}
.body2-navigator{display:grid;grid-template-columns:330px minmax(0,1fr);border:1px solid #99968d;background:#ece6da}
.body2-region-tabs{border-right:1px solid #99968d;background:#e7dfd1}
.body2-region-tabs button{position:relative;display:grid;grid-template-columns:38px 1fr;gap:5px 17px;width:100%;min-height:116px;padding:22px 22px;border:0;border-bottom:1px solid #aaa69c;background:transparent;color:#28302c;text-align:left;cursor:pointer}
.body2-region-tabs button:last-child{border-bottom:0}
.body2-region-tabs button::after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;width:0;background:#9b4e3b;transition:width .18s ease}
.body2-region-tabs button:hover{background:#ddd4c5}.body2-region-tabs button[aria-selected="true"]{background:#243b35;color:#fff}.body2-region-tabs button[aria-selected="true"]::after{width:5px}
.body2-region-tabs span{grid-row:1/3;color:#9b4e3b;font-family:var(--ed-serif);font-size:16px}.body2-region-tabs button[aria-selected="true"] span{color:#d7a88f}
.body2-region-tabs b{font-family:var(--ed-serif);font-size:24px;font-weight:500;line-height:1.08}.body2-region-tabs small{color:#68716c;font-size:12px;line-height:1.35}.body2-region-tabs button[aria-selected="true"] small{color:#bfcac5}
.body2-region-panels{min-width:0;background:#f4efe6}
.body2-region-panel{display:grid;grid-template-columns:minmax(430px,1.05fr) minmax(390px,.95fr);min-height:694px}
.body2-region-panel[hidden]{display:none!important}
.body2-region-panel>figure{position:relative;margin:0;min-height:694px;overflow:hidden;background:#d6d0c4}
.body2-region-panel>figure img{display:block;width:100%;height:100%;min-height:694px;object-fit:cover;filter:saturate(.82) contrast(1.035)}
#region-head>figure img,#region-torso>figure img{object-position:center}
#region-shoulder>figure img{object-position:68% center}
#region-back>figure img{object-position:center 38%}
#region-arm>figure img{object-position:60% center}
#region-leg>figure img{object-position:center 72%}
.body2-region-panel>figure figcaption{position:absolute;right:0;bottom:0;left:0;padding:17px 21px;background:linear-gradient(0deg,rgba(21,28,25,.86),transparent);color:#fff;font-size:12px;font-weight:650;letter-spacing:.07em;text-transform:uppercase}
.body2-region-copy{display:flex;flex-direction:column;padding:48px 43px 38px;background:#f4efe6}
.body2-panel-index{margin:0;color:#9b4e3b;font-size:12px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}
.body2-region-copy h3{max-width:570px;margin:22px 0 20px;font-size:clamp(37px,3.25vw,52px);line-height:1.02;letter-spacing:-.038em}
.body2-region-copy>p:not(.body2-panel-index){max-width:620px;margin:0;color:#56605b;font-size:17px;line-height:1.68}
.body2-region-routes{margin-top:auto;border-top:1px solid #a9a59b}
.body2-region-routes a{display:grid;grid-template-columns:minmax(135px,.7fr) 1fr 22px;gap:15px;align-items:center;min-height:69px;border-bottom:1px solid #b9b5ab;color:#25312c;text-decoration:none}
.body2-region-routes a:hover{color:#9b4e3b}.body2-region-routes span{font-family:var(--ed-serif);font-size:18px}.body2-region-routes b{color:#6b736f;font-size:12px;font-weight:550;line-height:1.35}.body2-region-routes i{font-family:var(--ed-serif);font-size:22px;font-style:normal;transition:transform .18s}.body2-region-routes a:hover i{transform:translateX(4px)}
.body2-selection-status{margin:17px 0 0;color:#68716c;font-size:13px}

.body2-methods{padding:122px 0 136px;background:#182a25;color:#edf0ed}
.body2-section-head--light h2{color:#fff}.body2-section-head--light>p{color:#b9c5c0}.body2-section-head--light .body2-kicker{color:#d99b7e}
.body2-method-ledger{border-top:1px solid #56655f}
.body2-method-story{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(500px,1.1fr);gap:clamp(55px,7vw,125px);align-items:center;padding:58px 0;border-bottom:1px solid #56655f}
.body2-method-story:nth-child(even) figure{order:2}.body2-method-story:nth-child(even)>div{order:1}
.body2-method-story figure{position:relative;margin:0;min-height:390px;overflow:hidden;background:#252c29}
.body2-method-story figure img{display:block;width:100%;height:390px;object-fit:cover;filter:saturate(.82) contrast(1.04)}
.body2-method-story figure figcaption{position:absolute;right:0;bottom:0;left:0;padding:16px 19px;background:linear-gradient(0deg,rgba(12,18,16,.9),transparent);color:#d8dfdb;font-size:11px;font-weight:700;letter-spacing:.075em;text-transform:uppercase}
.body2-method-story>div>p:first-child{margin:0;color:#d99b7e;font-size:12px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}
.body2-method-story h3{margin:18px 0 22px;color:#fff;font-size:clamp(42px,4.25vw,65px);line-height:1;letter-spacing:-.04em}
.body2-method-story>div>p:not(:first-child){max-width:670px;margin:0;color:#c4cdc9;font-size:18px;line-height:1.72}
.body2-method-story a{display:inline-flex;gap:20px;align-items:center;margin-top:31px;padding-bottom:9px;border-bottom:1px solid #aab7b1;color:#fff;font-family:var(--ed-serif);font-size:20px;text-decoration:none}.body2-method-story a:hover{border-color:#d99b7e;color:#f0b99d}

.body2-lab{padding:116px 0 126px;background-color:#e9e0d1;background-image:linear-gradient(rgba(238,231,218,.88),rgba(238,231,218,.88)),url("media/somateka-ivory-stone-texture-lossless-v1.webp");background-size:auto,760px auto}
.body2-lab-grid{display:grid;grid-template-columns:minmax(500px,1fr) minmax(430px,.82fr);gap:clamp(65px,8vw,140px);align-items:center}
.body2-lab figure{position:relative;margin:0;min-height:560px;overflow:hidden;background:#cec7bb;box-shadow:0 30px 60px rgba(42,36,30,.15)}
.body2-lab figure img{display:block;width:100%;height:560px;object-fit:cover;filter:saturate(.8) contrast(1.04)}
.body2-lab figure figcaption{position:absolute;right:0;bottom:0;left:0;padding:17px 20px;background:rgba(28,35,32,.86);color:#fff;font-size:12px}
.body2-lab h2{max-width:710px;margin:18px 0 27px;font-size:clamp(48px,4.8vw,73px);line-height:1.01;letter-spacing:-.045em}
.body2-lab>div>div>p:not(.body2-kicker){margin:0;color:#53605a;font-size:18px;line-height:1.72}
.body2-lab dl{margin:34px 0 0;border-top:1px solid #9f9b91}.body2-lab dl>div{display:grid;grid-template-columns:150px 1fr;gap:22px;padding:18px 0;border-bottom:1px solid #aaa69c}.body2-lab dt{font-family:var(--ed-serif);font-size:19px}.body2-lab dd{margin:0;color:#646d68;font-size:14px;line-height:1.55}
.body2-secondary{background:#9b4e3b}.body2-secondary:hover{background:#263f38}

@media(max-width:1180px){
  .body2-page .wrap{width:min(100% - 64px,1460px)}
  .body2-hero-grid{grid-template-columns:.84fr 1.16fr;gap:45px;min-height:620px}.body2-hero-plate,.body2-hero-figures,.body2-hero-figures img{min-height:620px}.body2-hero h1{font-size:67px}.body2-hero-lead{font-size:19px}
  .body2-navigator{grid-template-columns:275px 1fr}.body2-region-tabs button{min-height:109px;padding:18px 16px}.body2-region-tabs b{font-size:21px}
  .body2-region-panel{grid-template-columns:.93fr 1.07fr;min-height:655px}.body2-region-panel>figure,.body2-region-panel>figure img{min-height:655px}.body2-region-copy{padding:39px 31px 31px}.body2-region-routes a{grid-template-columns:118px 1fr 20px}.body2-region-routes span{font-size:16px}
}

@media(max-width:900px){
  .body2-page .wrap{width:min(100% - 44px,1460px)}
  .body2-hero{padding-top:45px}.body2-hero-grid{grid-template-columns:1fr;gap:0}.body2-hero-copy{padding:35px 0 54px}.body2-hero h1{font-size:clamp(55px,10vw,76px)}.body2-hero-plate,.body2-hero-figures,.body2-hero-figures img{min-height:530px}.body2-hero-ledger span{grid-template-columns:1fr;gap:4px;padding:14px 18px}.body2-hero-ledger b{font-size:29px}
  .body2-regions,.body2-methods,.body2-lab{padding-block:88px 98px}.body2-section-head{grid-template-columns:1fr;gap:25px;margin-bottom:43px}.body2-section-head h2{font-size:53px}.body2-section-head>p{max-width:680px}
  .body2-navigator{grid-template-columns:1fr}.body2-region-tabs{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid #99968d;scrollbar-width:thin}.body2-region-tabs button{flex:0 0 202px;min-height:112px;border-right:1px solid #aaa69c;border-bottom:0}.body2-region-tabs button::after{top:auto;right:0;bottom:-1px;left:0;width:auto;height:0}.body2-region-tabs button[aria-selected="true"]::after{width:auto;height:5px}
  .body2-region-panel{grid-template-columns:1fr;min-height:0}.body2-region-panel>figure,.body2-region-panel>figure img{min-height:520px;height:520px}.body2-region-copy{min-height:610px;padding:42px 40px 34px}.body2-region-routes{margin-top:37px}
  .body2-method-story{grid-template-columns:1fr;gap:39px}.body2-method-story:nth-child(even) figure,.body2-method-story:nth-child(even)>div{order:initial}.body2-method-story figure,.body2-method-story figure img{min-height:430px;height:430px}
  .body2-lab-grid{grid-template-columns:1fr;gap:55px}.body2-lab figure,.body2-lab figure img{min-height:520px;height:520px}
}

@media(max-width:560px){
  .body2-page .wrap{width:calc(100% - 32px)}
  .body2-kicker{font-size:11px;letter-spacing:.12em}
  .body2-hero{padding-top:23px}.body2-hero-copy{padding:37px 0 44px}.body2-hero h1{font-size:52px;line-height:.96}.body2-hero-lead{margin-top:27px;font-size:18px;line-height:1.66}.body2-primary,.body2-secondary{width:100%;margin-top:27px}
  .body2-hero-plate,.body2-hero-figures,.body2-hero-figures img{min-height:390px;height:390px}.body2-hero-plate figcaption{grid-template-columns:1fr;padding:17px}.body2-hero-plate figcaption span{grid-row:auto}.body2-hero-ledger{grid-template-columns:1fr}.body2-hero-ledger span,.body2-hero-ledger span:first-child{grid-template-columns:72px 1fr;gap:13px;min-height:74px;border-left:0;border-right:0;border-bottom:1px solid #b9b1a3}.body2-hero-ledger span:last-child{border-bottom:0}.body2-hero-ledger b{font-size:27px}.body2-hero-ledger small{font-size:11px}
  .body2-regions,.body2-methods,.body2-lab{padding-block:70px 78px}.body2-section-head{gap:20px;margin-bottom:35px}.body2-section-head h2{font-size:42px;line-height:1.03}.body2-section-head>p{font-size:17px}
  .body2-navigator{margin-inline:-16px;border-inline:0}.body2-region-tabs button{flex-basis:181px;min-height:108px;padding:17px 14px}.body2-region-tabs b{font-size:20px}.body2-region-panel>figure,.body2-region-panel>figure img{min-height:390px;height:390px}.body2-region-copy{min-height:0;padding:34px 21px 27px}.body2-region-copy h3{font-size:37px}.body2-region-copy>p:not(.body2-panel-index){font-size:17px}.body2-region-routes{margin-top:31px}.body2-region-routes a{grid-template-columns:1fr 22px;gap:4px 12px;min-height:78px;padding:11px 0}.body2-region-routes span{font-size:19px}.body2-region-routes b{grid-column:1;font-size:12px}.body2-region-routes i{grid-column:2;grid-row:1/3}.body2-selection-status{font-size:12px}
  .body2-method-story{gap:28px;padding:42px 0}.body2-method-story figure,.body2-method-story figure img{min-height:300px;height:300px}.body2-method-story h3{font-size:39px}.body2-method-story>div>p:not(:first-child){font-size:18px}.body2-method-story a{font-size:19px}
  .body2-lab figure,.body2-lab figure img{min-height:340px;height:340px}.body2-lab-grid{gap:42px}.body2-lab h2{font-size:42px}.body2-lab>div>div>p:not(.body2-kicker){font-size:18px}.body2-lab dl>div{grid-template-columns:1fr;gap:7px}
}

@media(prefers-reduced-motion:reduce){.body2-region-tabs button::after,.body2-region-routes i{transition:none}}
