/* Connect full-bleed layout proposal. Load AFTER map.css and hero styles.
   Requires the stage/overlay markup described in connect-fullwidth-v2.md.
   No camera, data, JS, CSP, carousel-control or Agent X changes. */
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] {
  padding: 0;
  width: 100%;
  max-width: none;
  min-width: 0;
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] > .gx-connect-wrap {
  position: relative;
  width: 100%;
  max-width: none;
  height: 100%;
  max-height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  box-sizing: border-box;
}
/* This stage is the full hero canvas. Supporting content follows below it. */
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-stage {
  position: relative;
  isolation: isolate;
  width: 100%;
  height: 100%;
  min-height: 560px;
  box-sizing: border-box;
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-stage > .gx-connect-map-shell {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .cx-map-host,
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-fallback {
  width: 100%;
  height: 100%;
  min-width: 0;
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .cx-slippy-map { width: 100%; height: 100%; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-overlay {
  position: absolute;
  z-index: 1001;
  top: var(--gx-connect-overlay-top, 84px);
  left: clamp(16px, 3vw, 48px);
  right: clamp(16px, 3vw, 48px);
  width: fit-content;
  max-width: min(720px, calc(100% - 32px));
  padding: 16px;
  border: 1px solid #35566e;
  border-radius: 12px;
  background: rgba(6, 21, 43, .96);
  box-sizing: border-box;
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-heading { gap: 20px; margin: 0 0 12px; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-heading > div { min-width: 0; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-home-connect-logo { width: 170px; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] h2 { font-size: clamp(22px, 2.3vw, 32px); }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-tools { margin: 0; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-tools label { min-width: 0; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-tools select { max-width: 100%; min-width: 0; }
/* Reserve a bottom lane for the existing carousel controls and Agent X. */
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .leaflet-bottom.leaflet-right { bottom: 100px; right: 8px; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .cx-map-health {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  margin: 0;
  padding: 10px 16px 100px;
  box-sizing: border-box;
  background: linear-gradient(transparent, #0b2237 34%);
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-below {
  padding: 18px clamp(16px, 3vw, 48px) 100px;
  background: #06152b;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-sidebar { width: 100%; box-sizing: border-box; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] [data-connect-list] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 8px 12px;
  max-height: 240px;
}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] [data-connect-list] > li { min-width: 0; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .cx-venue { box-sizing: border-box; overflow-wrap: anywhere; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .cx-node-key { display: flex; flex-wrap: wrap; margin: 0 0 16px; }
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-disclaimer { max-width: none; }
@media (max-width: 760px) {
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-stage { min-height: 680px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-overlay { top: var(--gx-connect-overlay-top-mobile, 80px); left: 12px; right: 12px; width: auto; max-width: none; padding: 12px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-heading { display: block; margin-bottom: 12px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-home-connect-logo { width: 140px; margin-bottom: 10px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] h2 { font-size: 22px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-tools { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-tools select { width: 100%; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] [data-connect-count] { grid-column: 1 / -1; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] [data-connect-list] { grid-template-columns: minmax(0, 1fr); }
}

/* Unified carousel controls reserve 128px on narrow screens. */
@media (max-width: 760px) {
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .leaflet-bottom.leaflet-right { bottom: 144px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .cx-map-health { padding-bottom: 144px; }
  body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .gx-connect-below { padding-bottom: 152px; }
}

/* Keep map controls above the fixed Agent X target; hide underlying editorial copy. */
body #gx-complete-home-hero[data-gx-media-phase="connect"] .corea-gx-hero__shell {visibility:hidden;opacity:0!important;pointer-events:none}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .leaflet-bottom.leaflet-right {bottom:180px}
@media(max-width:760px){
 body #gx-complete-home-hero[data-gx-media-phase="connect"] {height:max(760px,calc(100svh - 77px));min-height:max(760px,calc(100svh - 77px))}
 body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .leaflet-bottom.leaflet-right {bottom:244px}
}

/* Keep the hidden editorial layout out of the map scroll geometry. */
body #gx-complete-home-hero[data-gx-media-phase="connect"] {height:max(680px,calc(100svh - 95px));min-height:max(680px,calc(100svh - 95px))}
body #gx-complete-home-hero[data-gx-media-phase="connect"] .corea-gx-hero__shell {display:none!important;visibility:hidden;opacity:0!important;pointer-events:none}
body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .leaflet-bottom.leaflet-right {bottom:180px}
@media(max-width:760px){
 body #gx-complete-home-hero[data-gx-media-phase="connect"] {height:max(760px,calc(100svh - 77px));min-height:max(760px,calc(100svh - 77px))}
 body #gx-complete-home-hero .gx-home-connect-intro[data-gx-connect-map-segment] .leaflet-bottom.leaflet-right {bottom:244px}
}
