/* Mainstar — unified content width (iX-tech style, max 1200px) */
:root {
  --layout-max: 1200px;
  --layout-gutter: 24px;
  --layout-inset: max(var(--layout-gutter), calc((100% - var(--layout-max)) / 2));
}

@media (max-width: 900px) {
  :root {
    --layout-inset: 24px;
  }
}

/* Logo sizing */
.nav-logo,
.fo-logo-link img,
#logo-f {
  height: 38px !important;
  width: auto !important;
}

.tb,
.nav,
.uc-disclaimer {
  padding-left: var(--layout-inset) !important;
  padding-right: var(--layout-inset) !important;
}

/* Hero sections */
.hero,
.page-hero {
  padding-left: var(--layout-inset) !important;
  padding-right: var(--layout-inset) !important;
}

.page-hero-inner,
.hero-grid {
  max-width: 100% !important;
  width: 100%;
}

/* Homepage hero glow + wire diagram — stay inside content column */
.hero-glow {
  right: 0 !important;
}

.hero-wires {
  left: var(--layout-inset) !important;
  right: var(--layout-inset) !important;
  width: auto !important;
}

/* Subpage hero badge */
.hero-badge {
  left: 0 !important;
}

/* Content sections */
.sec,
.intro,
.loc,
.cross,
.contact-section,
.cta,
.fo {
  padding-left: var(--layout-inset) !important;
  padding-right: var(--layout-inset) !important;
}

.legal-section {
  padding-left: var(--layout-inset) !important;
  padding-right: var(--layout-inset) !important;
  max-width: min(920px, calc(var(--layout-max) - 2 * var(--layout-gutter))) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Dual location block — constrain grid, reduce inner cell padding */
.dual {
  padding-left: var(--layout-inset) !important;
  padding-right: var(--layout-inset) !important;
  box-sizing: border-box;
}

.di {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

.di:first-child {
  padding-left: 0 !important;
}

.di:last-child {
  padding-right: 0 !important;
}

@media (max-width: 900px) {
  .di,
  .di:first-child,
  .di:last-child {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Stats bar */
.stats {
  padding-left: var(--layout-inset) !important;
  padding-right: var(--layout-inset) !important;
  box-sizing: border-box;
}

/* Use cases + contact inner containers */
.uc-filter,
.uc-list {
  max-width: 100% !important;
  width: 100%;
  padding-left: var(--layout-inset) !important;
  padding-right: var(--layout-inset) !important;
  box-sizing: border-box;
}

.contact-wrapper {
  max-width: 100% !important;
  width: 100%;
  box-sizing: border-box;
}

/* Partner marquee — slimmer strip, logo + label sizes unchanged */
.ml-wrap {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

.ml-label {
  margin-bottom: 10px !important;
  padding-left: var(--layout-inset);
  padding-right: var(--layout-inset);
  box-sizing: border-box;
}

.ml-logo {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}
