/* Product and learning art direction. Real interfaces remain flat and complete. */
.firm-edition {
  --platform-night:#070e19;
  --platform-ink:#edf4ff;
  --platform-light:#9bbcff;
  --platform-frame:clamp(10px,1.7vw,22px);
}

/* Light belongs to the surrounding stage, never to the screenshot itself. */
.firm-edition:not(.site-edition) :is(.suite,.range),
:is(.page-suite,.page-range,.page-academy) .inner-site .inside {
  position:relative;
  isolation:isolate;
  background:var(--platform-night);
}
.firm-edition:not(.site-edition) :is(.suite,.range):before,
:is(.page-suite,.page-range,.page-academy) .inner-site .inside:before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  background:radial-gradient(ellipse at 76% 42%,#244ba94a,transparent 58%),linear-gradient(122deg,#111b2d70,transparent 45%,#481d2c18);
}
.firm-edition:not(.site-edition) .suite-intro {margin-bottom:58px;align-items:start}
.firm-edition:not(.site-edition) .range-intro {margin-bottom:52px}
.firm-edition:not(.site-edition) :is(.suite-intro,.range-intro) h2,
:is(.page-suite,.page-range,.page-academy) .inner-site .inside .sec-head h2 {
  font-size:clamp(40px,4.4vw,64px);
  line-height:1.08;
  letter-spacing:-.04em;
  text-wrap:balance;
}
.firm-edition:not(.site-edition) :is(.suite-intro,.range-intro) .section-lead {color:#b8c9e1}
.firm-edition:not(.site-edition) .suite-intro>div+div {padding-top:66px}

.firm-edition:not(.site-edition) .product-stage {
  padding:var(--platform-frame) var(--platform-frame) 0;
  border-radius:14px 14px 0 0;
  background:linear-gradient(128deg,#355a97 0%,#172e50 22%,#0d1c33 68%,#3e3047);
  box-shadow:0 -18px 70px #2a58af15;
}
.firm-edition:not(.site-edition) .product-window {
  border:0;
  border-radius:5px;
  background:#060c15;
  box-shadow:0 20px 48px #01050ccc;
}
.firm-edition:not(.site-edition) .product-window .suite-image {filter:none;object-fit:contain}
.firm-edition:not(.site-edition) .module-shelf {
  padding:24px var(--platform-frame) 28px;
  gap:4px 14px;
  border-radius:0 0 14px 14px;
  background:linear-gradient(110deg,#11223c,#0c1729 75%);
  box-shadow:0 35px 70px #01050c66;
}
.firm-edition:not(.site-edition) .module-shelf a {color:#b6c8e3;font-size:15px}
.firm-edition:not(.site-edition) .module-shelf a:is(:hover,:focus-visible) {background:#213e68;color:#fff}

.firm-edition:not(.site-edition) .range-viewer {
  padding:16px var(--platform-frame) var(--platform-frame);
  border-radius:14px;
  background:linear-gradient(125deg,#203e69,#102039 43%,#0a1425 86%);
  box-shadow:0 35px 80px #01040caa,0 -18px 65px #2755b01a;
}
.firm-edition:not(.site-edition) .viewer-toolbar {padding:0 0 16px}
.firm-edition:not(.site-edition) .range-viewer [role=tabpanel] {border:0;border-radius:5px;background:#050b15}

/* The tabs and the image share one object; explanatory copy sits outside it. */
:is(.page-suite,.page-range) .inner-site .sc-tabs {
  padding:16px var(--platform-frame);
  gap:8px;
  background:linear-gradient(105deg,#1b3355,#102039 68%);
  border-radius:14px 14px 0 0;
  box-shadow:0 -16px 65px #234c9e1a;
}
:is(.page-suite,.page-range) .inner-site .sc-tab,
.firm-edition:not(.site-edition) .viewer-toolbar button {
  border-radius:6px;
  color:#b6c8e3;
  background:transparent;
  box-shadow:none;
}
:is(.page-suite,.page-range) .inner-site .sc-tab:is(.active,[aria-selected=true]),
.firm-edition:not(.site-edition) .viewer-toolbar button[aria-selected=true] {
  background:linear-gradient(135deg,#3b6ed2,#244b94);
  color:#fff;
  box-shadow:inset 0 1px 0 #c1d7ff38,0 5px 18px #02091655;
}
:is(.page-suite,.page-range) .inner-site .sc-tab:focus-visible,
.firm-edition:not(.site-edition) .viewer-toolbar button:focus-visible {outline:2px solid #bed6ff;outline-offset:-3px}
:is(.page-suite,.page-range) .inner-site .sc-panel.active {gap:44px}
:is(.page-suite,.page-range) .inner-site .sc-panel .he-chrome {
  padding:0 var(--platform-frame) var(--platform-frame);
  border:0;
  border-radius:0 0 14px 14px;
  background:linear-gradient(125deg,#1c365c,#102039 48%,#182238);
  box-shadow:0 34px 74px #01050c99;
}
:is(.page-suite,.page-range) .inner-site .sc-panel .he-screen {border-radius:5px;background:#050b14}
:is(.page-suite,.page-range) .inner-site .sc-copy {padding-top:4px}
:is(.page-suite,.page-range) .inner-site .sc-copy>h3 {font-size:clamp(31px,3vw,43px);line-height:1.15;color:var(--platform-ink)}
:is(.page-suite,.page-range) .inner-site .sc-copy>p {color:#b6c7df}
.page-suite .inner-site .source-image-gap {background:#0b1627;color:#b4c5de}

/* Secondary product evidence uses the same material without another outer card. */
.page-range .inner-site .gallery .he-chrome,
.page-academy .inner-site .shots .he-chrome {
  padding:var(--platform-frame);
  border:0;
  border-radius:12px;
  background:linear-gradient(128deg,#2e4e80,#11253f 38%,#101a2b 80%);
  box-shadow:0 25px 58px #01060c80;
}
.page-range .inner-site .gallery .he-screen,
.page-academy .inner-site .shots .he-screen {border-radius:4px;overflow:hidden;background:#050b14}
.page-academy .inner-site .shots .he-screen img {filter:none;object-fit:contain}
.page-range .inner-site .gallery .shot-cap,
.page-academy .inner-site .shots .shot-cap {padding-top:30px}

/* Partners see the platforms first, with supporting words in an open column. */
.page-partner .inner-site .plat-grid {gap:clamp(32px,5vw,72px)}
.page-partner .inner-site .plat {padding:0;background:none;border:0;border-radius:0;box-shadow:none}
.page-partner .inner-site .plat>h3 {font-size:clamp(32px,3vw,42px);line-height:1.12;letter-spacing:-.035em;margin-bottom:14px}
.page-partner .inner-site .plat>.sub {color:#a9bfdc;min-height:3.2em;line-height:1.6;margin-bottom:24px}
.page-partner .inner-site .plat>.platform-screen {
  display:block;
  box-sizing:border-box;
  width:100%;
  height:auto;
  object-fit:contain;
  filter:none;
  padding:12px;
  margin:0 0 32px;
  border:0;
  border-radius:10px;
  background:linear-gradient(125deg,#305184,#142943 48%,#111c30);
  box-shadow:0 28px 56px #03071077;
}
.page-partner .inner-site .plat>p {font-size:17px;line-height:1.8;color:#bdcde1}
.page-partner .inner-site .plat>ul {color:#a9bdd7}
.page-partner .inner-site .spine {background:linear-gradient(110deg,#1a3152,#102037 70%);border-radius:12px;box-shadow:0 25px 60px #03091030}

/* A brighter foundation establishes the path; the curriculum stays a working document. */
.page-academy .inner-site .tree {background:linear-gradient(145deg,#07111e,#132a49 45%,#09121f 83%)}
.page-academy .inner-site .tree .sec-head {max-width:880px;margin-bottom:56px}
.page-academy .inner-site .tree .sec-head h2 {font-size:clamp(40px,4.3vw,62px);line-height:1.08;letter-spacing:-.04em;text-wrap:balance}
.page-academy .inner-site .tree-grid>.tn-fnd {
  padding:42px;
  background:linear-gradient(117deg,#24467f,#173257 58%,#111f34);
  border:0;
  border-radius:12px;
  box-shadow:0 24px 55px #02091455,inset 0 1px 0 #a4c4fc24;
}
.page-academy .inner-site .tree-grid>.tn-fnd:before {opacity:.13}
.page-academy .inner-site .tn-fnd>.tname {font-size:clamp(36px,3.7vw,52px);letter-spacing:-.035em}
.page-academy .inner-site .tn-fnd>.tsub {color:#cfdef2}
.page-academy .inner-site .tn:is(.def,.off) {border:0;border-radius:6px;background:linear-gradient(120deg,#17335477,#0c1a2e77);box-shadow:none}
.page-academy .inner-site .tn.off {background:linear-gradient(120deg,#41273766,#121c3077)}
.page-academy .inner-site .tn .tname {text-wrap:balance}
.page-academy .inner-site .tracks {background:#080f1c}
.page-academy .inner-site .track-aside {background:linear-gradient(135deg,#162b46,#0b182b 82%);box-shadow:none}
.page-academy .inner-site .track.off .track-aside {background:linear-gradient(135deg,#272a40,#101a2a 82%)}
.page-academy .inner-site .track-stats {background:#08162880;border:0;border-radius:6px}
.page-academy .inner-site .mods {border:0;border-radius:8px;background:#0d1b2e;box-shadow:0 20px 48px #02060c40}
.page-academy .inner-site .curriculum-module {border-top-color:#203650}
.page-academy .inner-site .curriculum-module[open] {background:linear-gradient(115deg,#203858,#152b45)}
.page-academy .inner-site .track.off .curriculum-module[open] {background:linear-gradient(115deg,#302c43,#1a2941)}
.page-academy .inner-site .curriculum-module[open] summary:after {color:#fff;background:#335d96}
.page-academy .inner-site .track.off .curriculum-module[open] summary:after {background:#674152}

/* Inner product evidence: one quiet optical surround, with the interface intact. */
:is(.page-suite,.page-range) .inner-site {--platform-frame:clamp(8px,1.1vw,14px)}
:is(.page-suite,.page-range) .inner-site .inside .sec-head {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:18px 72px;
  max-width:none;
  margin-bottom:52px;
  align-items:start;
}
:is(.page-suite,.page-range) .inner-site .inside .sec-head>.eyebrow {grid-column:1/-1;margin:0}
:is(.page-suite,.page-range) .inner-site .inside .sec-head>h2 {margin:0;max-width:680px;font-size:clamp(39px,4.2vw,60px);line-height:1.1;letter-spacing:-.035em}
:is(.page-suite,.page-range) .inner-site .inside .sec-head>.lead {grid-column:2;margin:0;padding-top:4px;font-size:18px;line-height:1.75}
:is(.page-suite,.page-range) .inner-site .sc-tabs {
  border-radius:6px 6px 0 0;
  padding:12px var(--platform-frame);
  background:linear-gradient(115deg,#192d49,#101e33 72%,#1a2438);
  box-shadow:none;
}
:is(.page-suite,.page-range) .inner-site .sc-tab {border-radius:4px;font-size:15px;min-height:48px}
:is(.page-suite,.page-range) .inner-site .sc-tab:is(.active,[aria-selected=true]) {background:#2a568f;box-shadow:inset 0 1px 0 #9fc4ff2b,0 3px 10px #0002}
:is(.page-suite,.page-range) .inner-site .sc-panel .he-chrome {
  border-radius:0 0 6px 6px;
  background:linear-gradient(115deg,#25416a,#14233a 45%,#1c2b45);
  box-shadow:0 28px 60px #01050c77;
}
:is(.page-suite,.page-range) .inner-site .sc-panel .he-screen {border-radius:3px;box-shadow:0 5px 16px #02071366}
/* Keep Suite controls anchored when a published source image is unavailable. */
.page-suite .inner-site .inside .sc-panel .he-screen {max-height:560px}
.page-suite .inner-site .inside .source-image-gap {
  position:absolute;
  inset:0;
  isolation:isolate;
  padding:clamp(28px,4vw,64px);
  background:#0b1627;
  color:#b4c5de;
}
.page-suite .inner-site .inside .source-image-gap:before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:url('/assets/brand/site/product-perspective.svg') right center/64% auto no-repeat;
  opacity:.16;
  pointer-events:none;
}
:is(.page-suite,.page-range) .inner-site .sc-panel.active {gap:42px}
:is(.page-suite,.page-range) .inner-site .sc-copy>h3 {font-size:clamp(31px,2.8vw,41px);line-height:1.17;letter-spacing:-.025em}
:is(.page-suite,.page-range) .inner-site .sc-copy>ul {max-width:62ch}
.page-range .inner-site #topology .console {background:#080f1b;border-radius:6px;box-shadow:0 28px 60px #01050c66}
.page-range .inner-site #topology .console-bar {background:linear-gradient(110deg,#192d49,#101f35);border:0}
.page-range .inner-site #topology .console-stage {background:radial-gradient(ellipse at 58% 48%,#173a602f,transparent 72%),#080f1b}
.page-range .inner-site #platform .gallery .he-chrome {padding:var(--platform-frame);border-radius:6px;background:linear-gradient(125deg,#23416b,#12253e 45%,#152037);box-shadow:0 24px 54px #01050c66}
.page-range .inner-site #platform .gallery .he-screen {border-radius:3px}

@media(max-width:1100px) {
  :is(.page-suite,.page-range) .inner-site .inside .sec-head {column-gap:42px}
  .firm-edition:not(.site-edition) .suite-intro>div+div {padding-top:54px}
  .page-partner .inner-site .plat>.sub {min-height:4.8em}
}
@media(max-width:760px) {
  :is(.page-suite,.page-range) .inner-site {--platform-frame:8px}
  :is(.page-suite,.page-range) .inner-site .inside .sec-head {display:block;margin-bottom:34px}
  :is(.page-suite,.page-range) .inner-site .inside .sec-head>.eyebrow {margin-bottom:20px}
  :is(.page-suite,.page-range) .inner-site .inside .sec-head>h2 {font-size:clamp(34px,6.3vw,44px);line-height:1.12;margin-bottom:24px}
  :is(.page-suite,.page-range) .inner-site .inside .sec-head>.lead {padding:0;font-size:17px}
  .firm-edition {--platform-frame:10px}
  .firm-edition:not(.site-edition) :is(.suite-intro,.range-intro) {margin-bottom:34px}
  .firm-edition:not(.site-edition) .suite-intro>div+div {padding-top:0}
  .firm-edition:not(.site-edition) :is(.suite-intro,.range-intro) h2,
  :is(.page-suite,.page-range,.page-academy) .inner-site .inside .sec-head h2,
  .page-academy .inner-site .tree .sec-head h2 {font-size:clamp(33px,6.1vw,44px);line-height:1.12;letter-spacing:-.035em}
  .firm-edition:not(.site-edition) .module-shelf {padding:18px var(--platform-frame) 20px;gap:4px 12px}
  .firm-edition:not(.site-edition) .module-shelf a {font-size:14px}
  .firm-edition:not(.site-edition) .range-viewer {padding:12px var(--platform-frame) var(--platform-frame)}
  .firm-edition:not(.site-edition) .viewer-toolbar {padding-bottom:12px}
  :is(.page-suite,.page-range) .inner-site .sc-tabs {padding:12px 10px;gap:4px}
  :is(.page-suite,.page-range) .inner-site .sc-tab {padding:12px 16px;font-size:14px;min-height:48px}
  :is(.page-suite,.page-range) .inner-site .sc-tab:first-child {padding-inline-start:16px}
  :is(.page-suite,.page-range) .inner-site .sc-panel.active {gap:30px}
  :is(.page-suite,.page-range) .inner-site .sc-copy>h3 {font-size:31px}
  .page-partner .inner-site .plat-grid {gap:54px}
  .page-partner .inner-site .plat>.sub {min-height:0;margin-bottom:22px}
  .page-partner .inner-site .plat>.platform-screen {padding:10px;margin-bottom:28px}
  .page-academy .inner-site .tree .sec-head {margin-bottom:36px}
  .page-academy .inner-site .tree-grid>.tn-fnd {padding:28px}
  .page-academy .inner-site .tn-fnd>.tname {font-size:36px}
  :is(.page-suite,.page-range) .inner-site .inside .sec-head>h2 {font-size:clamp(34px,6.3vw,44px);line-height:1.12;letter-spacing:-.035em}
  :is(.page-suite,.page-range) .inner-site .sc-tabs {padding:12px var(--platform-frame)}
  :is(.page-suite,.page-range) .inner-site .sc-panel .he-chrome {padding:0 var(--platform-frame) var(--platform-frame)}
}
@media print {
  .firm-edition:not(.site-edition) :is(.suite,.range,.product-stage,.product-window,.module-shelf,.range-viewer),
  :is(.page-suite,.page-range,.page-academy) .inner-site :is(.inside,.sc-tabs,.he-chrome,.he-screen,.source-image-gap),
  .page-academy .inner-site :is(.tree,.tracks,.tn,.track-aside,.track-stats,.mods,.curriculum-module),
  .page-partner .inner-site :is(.plat,.spine,.platform-screen) {background:#fff!important;box-shadow:none!important;color:#111!important}
  .firm-edition:not(.site-edition) :is(.suite,.range):before,
  :is(.page-suite,.page-range,.page-academy) .inner-site .inside:before,
  .page-suite .inner-site .source-image-gap:before,
  .page-academy .inner-site .tree-grid>.tn-fnd:before {display:none}
  .firm-edition:not(.site-edition) :is(.suite,.range) :is(h2,p,a,button),
  :is(.page-suite,.page-range,.page-academy) .inner-site :is(.inside,.tree,.tracks) :is(h2,h3,h4,p,span,li,a,summary),
  .page-partner .inner-site :is(.plat,.spine) :is(h3,p,span,li,a,.sub) {color:#111!important}
  :is(.page-suite,.page-range) .inner-site .sc-tab,
  .firm-edition:not(.site-edition) .viewer-toolbar button {background:#fff!important;box-shadow:none!important}
}
