/* V5.3.2 structural repair. Preserve copy, images and Action workspace. */
/* Keep the accessibility shortcut offscreen except for keyboard focus. */
.skip-link:not(:focus):not(:focus-visible) { position:fixed !important; top:0 !important; left:0 !important; transform:translateY(-160%) !important; }
.skip-link:focus,.skip-link:focus-visible { transform:translateY(0) !important; }
/* Shared visual weight: Action is the reference, without forcing identical wrapping. */
.hero h1,.section-copy h2,.action-copy h2 { font-weight:720; line-height:1.035; }
@media (min-width:701px) {
  .hero h1,.section-copy h2,.action-copy h2 { font-size:clamp(38px,4vw,56px) !important; }
}
/* V5.3.3: tablet Intelligence is a content-first stack. No absolute stage or marker positioning. */
@media (min-width:701px) and (max-width:1100px) {
  .intelligence { display:block !important; min-height:0 !important; height:auto !important; padding-bottom:0 !important; overflow:hidden; }
  .intelligence .section-copy { position:relative !important; width:calc(100% - 72px) !important; max-width:820px !important; margin:0 36px !important; padding:38px 0 0 !important; }
  .intelligence .section-copy > p:last-child { max-width:740px; }
  .intelligence .landscape-stage { display:flex !important; flex-direction:column !important; position:relative !important; inset:auto !important; width:100% !important; height:auto !important; min-height:0 !important; margin:30px 0 0 !important; overflow:hidden !important; isolation:isolate; }
  .intelligence .landscape-stage .landscape-markers {
    order:0 !important; position:relative !important; inset:auto !important; top:auto !important; bottom:auto !important; left:auto !important; right:auto !important;
    display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; grid-template-rows:auto auto !important;
    gap:20px 22px !important; width:calc(100% - 72px) !important; height:auto !important;
    margin:0 36px !important; padding:0 !important; align-items:start !important; align-content:start !important; z-index:3 !important;
  }
  .intelligence .landscape-markers .dimension { position:relative !important; top:auto !important; left:auto !important; bottom:auto !important; min-height:60px !important; padding:0 2px 0 33px !important; margin:0 !important; transform:none !important; }
  .intelligence .landscape-markers .dimension-icon { position:absolute !important; left:0 !important; top:0 !important; }
  .intelligence .landscape-markers .dimension > i { display:none !important; }
  .intelligence .landscape-stage .landscape-flow { order:1 !important; display:block !important; position:relative !important; inset:auto !important; left:auto !important; right:auto !important; bottom:auto !important; z-index:1 !important; width:100% !important; height:112px !important; flex:none !important; margin:18px 0 0 !important; }
  .intelligence .landscape-stage .landscape-texture { position:absolute !important; inset:auto 0 0 !important; bottom:0 !important; z-index:0 !important; width:100% !important; height:112px !important; margin:0 !important; pointer-events:none; }
  .atlas { height:auto !important; min-height:0 !important; grid-template-rows:repeat(3,minmax(74px,auto)) !important; align-content:start !important; row-gap:clamp(28px,4vw,44px) !important; margin-bottom:46px !important; }
  .atlas-panel { align-self:start !important; }
  .hero { min-height:0 !important; }
}
@media (max-width:700px) {
  /* Keep the accepted compact hero and make the wave follow the grid closely. */
  .intelligence { padding-bottom:90px !important; }
  .landscape-markers { row-gap:12px !important; }
  .landscape-markers .dimension,.landscape-markers .dimension:nth-child(even),.landscape-markers .dimension:nth-child(4),.landscape-markers .dimension:nth-child(5) { min-height:79px !important; }
  .landscape-flow,.landscape-texture { height:72px !important; }
}
/* Use one predictable icon box, with optical scaling for disparate glyphs. */
.dimension-icon { width:24px !important; height:24px !important; font-size:20px !important; line-height:1 !important; font-weight:400 !important; }
.dimension-icon.icon-cubes { font-size:23px !important; }
.dimension:nth-child(3) .dimension-icon,.dimension:nth-child(6) .dimension-icon { font-size:25px !important; }
.dimension:nth-child(4) .dimension-icon { font-size:17px !important; }
