/*
  FreshTrack "Sunlit Operations" refresh
  This layer intentionally sits after the legacy stylesheet so the original
  production site remains untouched and the redesign can be evaluated safely.
*/

:root {
  --surface-page: #f8faf9;
  --surface-soft: #f1f5f3;
  --surface-warm: #e9efed;
  --surface-sky: #edf5f7;
  --surface-mineral: #e6ece9;
  --surface-inverse: #143c28;
  --text-primary: #173229;
  --text-secondary: #50665d;
  --action-primary: #207344;
  --action-primary-hover: #155d35;
  --accent-sky: #1597c5;
  --accent-sun: #7cb9cb;
  --accent-coral: #ed775f;
  --border-subtle: #dfe9e2;
  --shadow-soft: 0 18px 60px rgba(26, 71, 48, 0.1);
  --topbar-height: 0px;
  --nav-height: 76px;
}

html { scroll-padding-top: 88px; }
body {
  background: var(--surface-page);
  color: var(--text-secondary);
  overflow-x: hidden;
}
main { overflow: hidden; }

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(circle at 8% 10%, rgba(32,115,68,.07), transparent 24rem),
    radial-gradient(circle at 90% 25%, rgba(21,151,197,.08), transparent 26rem);
}

.skip-link {
  position: fixed;
  top: .75rem;
  left: .75rem;
  z-index: 3000;
  transform: translateY(-160%);
  padding: .75rem 1rem;
  border-radius: 8px;
  background: #fff;
  color: var(--text-primary);
  box-shadow: var(--shadow-soft);
  font-weight: 700;
}
.skip-link:focus { transform: translateY(0); }

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--accent-sky) !important;
  outline-offset: 4px;
}

/* Compact, single-row navigation */
.nav-topbar { display: none !important; }
.site-header {
  background: rgba(248,250,249,.94);
  border-bottom: 1px solid rgba(31,105,63,.12);
  backdrop-filter: blur(18px);
}
.nav {
  height: var(--nav-height);
  background: transparent !important;
  border: 0 !important;
}
.nav-inner { height: 100%; gap: 2rem; }
.nav-scrolled-logo {
  display: flex !important;
  opacity: 1 !important;
  transform: none !important;
  width: 178px;
  flex-shrink: 0;
}
.nav-scrolled-logo img { width: auto; height: 48px; object-fit: contain; }
.nav-links {
  margin-left: auto;
  gap: .15rem;
}
.nav-link {
  color: var(--text-primary);
  padding: .7rem .72rem;
  border-radius: 8px;
}
.nav-link:hover {
  color: var(--action-primary);
  background: #edf7ef;
}
.nav-links > li:nth-child(9),
.nav-links > li:nth-child(10) { display: none; }
.nav-right-actions {
  display: flex;
  align-items: center;
  gap: .55rem;
  margin-left: .2rem;
}
.nav-scrolled-social {
  display: flex !important;
  align-items: center;
  gap: .2rem;
  margin: 0;
}
.nav-social-btn {
  width: 30px;
  height: 30px;
  background: #fff;
  border-color: var(--border-subtle);
  color: var(--text-secondary);
}
.nav-phone {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .48rem .7rem;
  border: 1px solid #c8e3cf;
  border-radius: 999px;
  background: #edf7ef;
  color: var(--action-primary);
  font-size: .76rem;
  font-weight: 700;
  white-space: nowrap;
}
.nav-phone:hover {
  background: var(--action-primary);
  border-color: var(--action-primary);
  color: #fff;
}
.btn-demo {
  background: var(--action-primary) !important;
  border-radius: 999px !important;
  padding-inline: 1.15rem !important;
}
.nav-dropdown-menu {
  border-color: var(--border-subtle);
  box-shadow: var(--shadow-soft);
}
.nav-dropdown-systems {
  display: flex;
  align-items: center;
}
.nav-dropdown-systems .nav-dropdown-main {
  padding-right: .25rem;
  border-radius: 8px 0 0 8px;
}
.nav-dropdown-arrow {
  display: grid;
  place-items: center;
  width: 24px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 0 8px 8px 0;
  background: none;
  color: var(--text-primary);
  cursor: pointer;
}
.nav-dropdown-systems:hover .nav-dropdown-main,
.nav-dropdown-systems:hover .nav-dropdown-arrow {
  color: var(--action-primary);
  background: #edf7ef;
}
.systems-dropdown-menu {
  display: grid;
  grid-template-columns: repeat(2, minmax(190px, 1fr));
  width: 470px;
  padding: .7rem;
}
.systems-dropdown-menu .nav-dropdown-item {
  padding: .58rem .7rem;
}
.systems-view-all {
  grid-column: 1 / -1;
  margin-top: .25rem;
  border-top: 1px solid var(--border-subtle);
  color: var(--action-primary);
  font-weight: 700;
}
.nav-mobile-systems > a {
  display: block;
  color: var(--text-primary);
  font-weight: 700;
}
.nav-mobile-systems .nav-mobile-submenu {
  columns: 2;
  column-gap: 1rem;
}
.nav-mobile-systems .nav-mobile-submenu a { break-inside: avoid; }

/* Shared light page heroes */
.page-hero {
  min-height: 420px;
  padding-top: calc(var(--nav-height) + 5rem);
  background:
    radial-gradient(circle at 82% 28%, rgba(21,151,197,.14), transparent 24rem),
    linear-gradient(135deg, #f8faf9, #edf3f1) !important;
  border-bottom: 1px solid var(--border-subtle);
}
.page-hero-content { min-width: 0; }
.page-hero::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: 6%;
  top: 10%;
  border: 1px solid rgba(32,115,68,.15);
  border-radius: 50%;
}
.page-hero-photo {
  left: auto;
  right: 0;
  width: 48%;
  opacity: .18;
  filter: saturate(1.15) brightness(1.1);
  transform: none;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 30%);
  mask-image: linear-gradient(90deg, transparent, #000 30%);
}
.page-hero-scrim { display: none; }
.page-hero h1,
.page-hero-content h1 { color: var(--text-primary) !important; }
.page-hero p,
.page-hero-content p { color: var(--text-secondary) !important; }
.page-hero .section-tag,
.page-hero .hero-eyebrow {
  color: var(--action-primary) !important;
  background: #eaf6ed !important;
  border-color: #c8e3cf !important;
}

/* Sunlit homepage hero */
.hero {
  min-height: 760px;
  padding: 0;
  background:
    radial-gradient(circle at 88% 16%, rgba(21,151,197,.14), transparent 22rem),
    radial-gradient(circle at 78% 60%, rgba(21,151,197,.13), transparent 28rem),
    linear-gradient(135deg, #f8faf9 0%, #edf3f1 70%, #e9f2f4 100%);
  border-bottom: 1px solid var(--border-subtle);
}
.hero::after { opacity: .16; }
.hero-bg {
  left: auto;
  width: 52%;
  top: var(--nav-height);
  bottom: 0;
  opacity: .25;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 32%);
  mask-image: linear-gradient(90deg, transparent, #000 32%);
}
.hero-photo {
  filter: saturate(1.18) brightness(1.15);
  opacity: 1;
  transform: scale(1.03);
}
.hero-scrim {
  background: linear-gradient(90deg, rgba(248,250,249,.35), transparent 50%);
}
.hero-orb-1 { background: rgba(21,151,197,.16); }
.hero-orb-2 { background: rgba(21,151,197,.13); }
.hero-topo { opacity: .35; }
.hero-inner {
  min-height: 650px;
  padding-top: calc(var(--nav-height) + 3.5rem) !important;
  padding-bottom: 2.5rem !important;
}
.hero-content h1 {
  color: var(--text-primary);
  max-width: 680px;
  font-size: clamp(3rem, 5.2vw, 4.65rem);
  line-height: 1.02;
}
.hero-content { min-width: 0; }
.hero-content h1 strong { color: var(--action-primary); }
.hero-eyebrow {
  color: var(--action-primary);
  background: #eaf6ed;
  border-color: #c8e3cf;
}
.hero-opening-signals {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .65rem;
  margin-bottom: 1.5rem;
}
.hero-opening-signals .hero-eyebrow { margin-bottom: 0; }
.hero-support-badge {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .375rem .85rem;
  border: 1px solid #d6a2a2;
  border-radius: 100px;
  color: #fff;
  background: linear-gradient(135deg, rgba(165,58,58,.96), rgba(127,34,34,.96));
  font-size: .72rem;
  letter-spacing: .02em;
  line-height: 1.25;
  box-shadow: 0 10px 22px rgba(127,34,34,.16);
}
.hero-support-badge svg { flex: 0 0 auto; }
.hero-support-badge strong {
  color: #fff;
  font-weight: 800;
}
.hero-support-badge.hero-trial-badge {
  border-color: var(--gold);
  background: linear-gradient(135deg, var(--gold), #d9a514);
  color: var(--green-900);
  box-shadow: 0 10px 22px rgba(0,0,0,.16);
}
.hero-support-badge.hero-trial-badge strong { color: var(--green-900); }
.hero-sub {
  max-width: 600px;
  color: var(--text-secondary);
  font-size: 1.16rem;
  margin-bottom: 1rem;
}
.hero-mission-line {
  display: block;
  max-width: 650px;
  margin: -0.35rem 0 1.5rem;
  padding-left: 1rem;
  border-left: 2px solid var(--action-primary);
  color: var(--text-secondary);
  font-weight: 600;
  line-height: 1.55;
}
.hero-cloud-proof {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  max-width: 590px;
  margin-bottom: 1.5rem;
  padding: .8rem 1rem;
  border: 1px solid #b8ddea;
  border-radius: 12px;
  background: rgba(238,248,252,.85);
  color: var(--text-secondary);
  font-size: .9rem;
  line-height: 1.45;
}
.hero-cloud-proof svg { flex: 0 0 auto; color: var(--accent-sky); margin-top: .08rem; }
.hero-cloud-proof strong { color: var(--text-primary); }
.hero-trust li { color: var(--text-primary); }
.hero-trust li svg { color: var(--action-primary); }
.btn-primary {
  background: var(--action-primary);
  border-color: var(--action-primary);
  box-shadow: 0 10px 24px rgba(32,115,68,.18);
}
.btn-primary:hover {
  background: var(--action-primary-hover);
  border-color: var(--action-primary-hover);
}
.hero .btn-outline {
  color: var(--text-primary);
  background: rgba(255,255,255,.72);
  border-color: #b8cbbf;
}
.hero .btn-outline:hover {
  background: #fff;
  border-color: var(--action-primary);
}
.hero-stage {
  background: #173e2a;
  border-color: rgba(21,151,197,.45);
  box-shadow: 0 30px 80px rgba(22,69,44,.18);
  backdrop-filter: none;
}
.hero-stage-bar { background: #102e20; }
.hero-stage-body { background: #173e2a; }
.hs-chart-label { color: rgba(255,255,255,.7); }
.hs-row { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.13); }
.hs-row-flow { color: rgba(255,255,255,.72); }
.hs-chip { color: rgba(255,255,255,.72); }
.hsb-title { color: rgba(255,255,255,.78); }
.cloud-native-badge {
  position: absolute;
  z-index: 5;
  top: -4.3rem;
  left: 1.2rem;
  display: flex;
  align-items: center;
  gap: .7rem;
  padding: .7rem .9rem;
  border: 1px solid #b8ddea;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 14px 35px rgba(22,69,44,.13);
  color: var(--text-primary);
}
.cloud-native-badge span:last-child { display: flex; flex-direction: column; line-height: 1.2; }
.cloud-native-badge small { color: var(--text-secondary); font-size: .65rem; margin-top: .18rem; }
.cloud-native-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--surface-sky);
  color: var(--accent-sky);
}
.h-card {
  background: #143c28;
  border-color: rgba(143,212,160,.4);
  box-shadow: 0 18px 42px rgba(22,69,44,.22);
  backdrop-filter: none;
}
.hero-stats-bar {
  background: rgba(255,255,255,.82);
  border-top: 1px solid var(--border-subtle);
  backdrop-filter: blur(14px);
}
.hstat-value { color: var(--action-primary); }
.hstat-label { color: var(--text-secondary); }
.hstat-divider { background: var(--border-subtle); }
.hero-stats-note { color: #71867b !important; }

/* Lighter sections and more varied rhythm */
section { padding-block: 6rem; }
.clients-section,
.case-study-section,
.integrations-section,
.pricing-section,
.roles-section,
.modules-section { background: var(--surface-page) !important; }
.clients-section { border-block: 1px solid var(--border-subtle); }
.clients-header-block h2 { color: var(--text-primary); }
.marquee-outer { padding-inline: 2rem; }
.marquee-track {
  max-width: var(--max-width);
  margin-inline: auto;
  justify-content: center;
  flex-wrap: wrap;
  animation: none !important;
  transform: none !important;
}
.marquee-track .client-logo-pill:nth-child(n+12) { display: none; }
.client-logo-pill {
  background: #fff;
  border: 1px solid var(--border-subtle);
  box-shadow: 0 8px 28px rgba(28,70,48,.07);
}
.client-logo-pill img {
  filter: none !important;
  opacity: 1 !important;
}
.client-logo-pill:hover img {
  filter: none !important;
  opacity: 1 !important;
}

.journey-platform,
.video-section {
  background:
    linear-gradient(135deg, rgba(237,245,247,.98), rgba(248,250,249,.98)) !important;
  color: var(--text-primary);
}
.journey-platform .journey-photo { opacity: .07; filter: saturate(1.2); }
.journey-platform .journey-scrim { display: none; }
.journey-platform .section-header h2,
.journey-platform .section-header p,
.video-section .section-header h2,
.video-section .section-header p { color: var(--text-primary) !important; }
.journey-platform .section-tag,
.video-section .section-tag { color: var(--accent-sky) !important; }
.jp-card {
  background: rgba(255,255,255,.9);
  border: 1px solid var(--border-subtle);
  box-shadow: var(--shadow-soft);
}
.jp-card-body,
.jp-card h3,
.jp-card p,
.jp-features li { color: var(--text-primary); }
.jp-card-link {
  color: var(--action-primary);
  border-top-color: var(--border-subtle);
}
.video-frame { box-shadow: var(--shadow-soft); border-color: var(--border-subtle); }

.mission-statement {
  background:
    radial-gradient(circle at 88% 20%, rgba(21,151,197,.12), transparent 23rem),
    radial-gradient(circle at 8% 85%, rgba(32,115,68,.08), transparent 20rem),
    linear-gradient(135deg, #edf2f0, #e5ece9);
  border-block: 1px solid #d5e0dc;
}
.mission-statement .container { max-width: 1040px; }
.ms-eyebrow { color: var(--action-primary); }
.ms-eyebrow-dot { background: var(--accent-sky); }
.ms-body { color: var(--text-primary); font-size: clamp(2rem, 4.2vw, 3.55rem); }
.ms-underline { background: linear-gradient(90deg, var(--accent-sun), var(--accent-sky)); width: 6rem; }

.case-study-card {
  background:
    radial-gradient(circle at 95% 0%, rgba(21,151,197,.2), transparent 22rem),
    linear-gradient(135deg, #173e2a, #235d3e);
  box-shadow: var(--shadow-soft);
}
.integrations-section {
  position: relative;
  background:
    linear-gradient(rgba(21,151,197,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,151,197,.055) 1px, transparent 1px),
    radial-gradient(circle at 85% 20%, rgba(21,151,197,.14), transparent 25rem),
    linear-gradient(145deg, #e7eeec, #edf5f7) !important;
  background-size: 38px 38px, 38px 38px, auto, auto !important;
}
.integrations-section::before {
  content: "";
  position: absolute;
  inset: 12% 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(21,151,197,.5), transparent);
  pointer-events: none;
}
.int-tile, .integration-card, .system-card, .solution-card, .testimonial-card, .news-card {
  border-color: var(--border-subtle);
  box-shadow: 0 12px 40px rgba(28,70,48,.07);
}
.cta-banner {
  background:
    radial-gradient(circle at 10% 20%, rgba(32,115,68,.11), transparent 20rem),
    linear-gradient(110deg, #e8efec, #e8f2f5) !important;
  border-top: 1px solid var(--border-subtle);
}
.cta-banner h2 { color: var(--text-primary) !important; }
.cta-banner p { color: var(--text-secondary) !important; }
.cta-banner .btn-outline {
  color: var(--text-primary);
  border-color: #9ab7a5;
}

/* Keep one deliberate dark moment: the footer */
footer { background: #173e2a; }
.footer-bottom { background: #102e20; }

/* Pricing is easier to compare without a wall of green */
.price-card--grower,
.price-card--packer,
.price-card--marketer {
  color: var(--text-primary);
  background: #fff;
  border: 1px solid var(--border-subtle);
  box-shadow: var(--shadow-soft);
}
.price-card--packer {
  background: var(--surface-sky);
  border-color: #b8ddea;
}
.price-card--marketer {
  background: var(--surface-mineral);
  border-color: #cbd8d3;
}
.price-card--packer *,
.price-card--marketer * { color: var(--text-primary) !important; }
.price-card--packer .price-ribbon {
  background: linear-gradient(135deg, #aa3c3c, #7f2424);
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(127,34,34,.18);
}
.price-card--packer .price-ribbon,
.home-refresh .pt-plan-featured .pt-badge {
  color: #fff !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.25);
}
.home-refresh .pt-plan-featured .pt-badge {
  background: linear-gradient(135deg, #aa3c3c, #7f2424);
  box-shadow: 0 10px 22px rgba(127,34,34,.16);
}
.price-card--packer .price-cta,
.price-card--marketer .price-cta {
  color: #fff !important;
  background: var(--action-primary);
  border-color: var(--action-primary);
}

/* Demo page context card: explicit high-contrast text */
.demo-layout .contact-info-panel {
  background:
    radial-gradient(circle at 100% 0%, rgba(21,151,197,.12), transparent 15rem),
    #fff;
  border: 1px solid #cfe4e9;
  box-shadow: var(--shadow-soft);
  color: var(--text-secondary);
}
.demo-layout .contact-info-panel h3 { color: var(--text-primary); }
.demo-layout .demo-covers-list li,
.demo-layout .demo-covers-list li span { color: var(--text-secondary); }
.demo-layout .demo-covers-list li strong { color: var(--text-primary); }
.demo-layout .demo-covers-list .dc-icon {
  background: var(--surface-sky);
  color: var(--accent-sky);
}
.demo-layout .contact-info-panel p { color: var(--text-secondary) !important; }
.demo-layout .ideal-fit-chip {
  background: #eaf6ed;
  border-color: #c8e3cf;
  color: var(--action-primary);
}

/* Shorter homepage narrative: keep the strongest decision-making sections */
.home-refresh .value-pillars,
.home-refresh #who-its-for,
.home-refresh .why-section,
.home-refresh .testimonials,
.home-refresh .home-news { display: none; }

/* Colourful crop orbit */
.home-refresh .grow-band {
  position: relative;
  background:
    radial-gradient(circle at 8% 20%, rgba(32,115,68,.09), transparent 20rem),
    radial-gradient(circle at 90% 70%, rgba(21,151,197,.12), transparent 24rem),
    var(--surface-page);
}
.home-refresh .grow-band::before,
.home-refresh .grow-band::after {
  content: "";
  position: absolute;
  border: 1px dashed rgba(32,115,68,.18);
  border-radius: 50%;
  pointer-events: none;
}
.home-refresh .grow-band::before { width: 520px; height: 520px; left: -310px; top: -120px; }
.home-refresh .grow-band::after { width: 380px; height: 380px; right: -230px; bottom: -130px; }
.home-refresh .grow-band-grid {
  grid-template-columns: repeat(8, minmax(0,1fr));
  gap: 1.1rem;
  align-items: start;
}
.home-refresh .grow-tile:nth-child(even) { margin-top: 3.5rem; }
.home-refresh .grow-tile-img-wrap {
  border-radius: 50%;
  border: 7px solid #fff;
  box-shadow: 0 18px 45px rgba(28,70,48,.13);
  background: #fff;
}
.home-refresh .grow-tile:nth-child(3n+1) .grow-tile-img-wrap { outline: 2px solid rgba(105,139,128,.42); }
.home-refresh .grow-tile:nth-child(3n+2) .grow-tile-img-wrap { outline: 2px solid rgba(21,151,197,.35); }
.home-refresh .grow-tile:nth-child(3n) .grow-tile-img-wrap { outline: 2px solid rgba(32,115,68,.32); }

/* Pricing teaser restored as a bright comparison panel */
.home-refresh .pricing-teaser-section {
  background: linear-gradient(135deg, #e9f2f4, #f3f6f5);
}
.home-refresh .pricing-teaser {
  border-color: #cfe4e9;
  box-shadow: var(--shadow-soft);
}
.home-refresh .pt-plan { background: #fff; border-color: var(--border-subtle); }
.home-refresh .pt-plan-featured {
  background: #eaf6ed;
  border-color: #bcdcc5;
}
.home-refresh .pt-plan-featured * { color: var(--text-primary) !important; }

/* GS1 partner proof placed immediately after the hero */
.home-refresh .gs1-partner-section {
  padding: 2rem 0 4rem;
  background: linear-gradient(180deg, #ffffff 0%, #f7faf8 100%);
}
.home-refresh .gs1-partner-card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 1.2rem 1.4rem;
  align-items: center;
  padding: 1.35rem 1.5rem;
  background: #fff;
  border: 1px solid #d8e4de;
  border-radius: 22px;
  box-shadow: var(--shadow-soft);
}
.home-refresh .gs1-partner-mark {
  width: 84px;
  height: 84px;
  border-radius: 22px;
  display: grid;
  place-items: center;
  gap: .1rem;
  background: linear-gradient(135deg, #143c28, #207344);
  color: #fff;
  letter-spacing: .08em;
  font-weight: 800;
}
.home-refresh .gs1-partner-mark-top {
  font-size: 1.55rem;
  line-height: 1;
}
.home-refresh .gs1-partner-mark-bottom {
  font-size: .7rem;
  opacity: .9;
}
.home-refresh .gs1-partner-copy h2 {
  margin: .35rem 0 .55rem;
  color: var(--text-primary);
}
.home-refresh .gs1-partner-copy p {
  margin: 0;
  color: var(--text-secondary);
  max-width: 62ch;
}
.home-refresh .gs1-partner-cta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .6rem;
  min-width: 240px;
}
.home-refresh .gs1-partner-cta span {
  font-size: .82rem;
  line-height: 1.45;
  color: var(--text-secondary);
}

/* Hardware is the deliberate dark technical section */
.home-refresh .support-section {
  position: relative;
  padding-block: 5rem 4rem;
  background:
    radial-gradient(circle at 12% 10%, rgba(21,151,197,.12), transparent 24rem),
    linear-gradient(135deg, #eef3f1 0%, #f7faf8 55%, #eef4f6 100%);
}
.home-refresh .support-section .container {
  position: relative;
  z-index: 1;
}
.home-refresh .aus-banner {
  border-color: #cfe1db;
  background: rgba(255,255,255,.88);
  box-shadow: var(--shadow-soft);
}
.home-refresh .aus-banner-title { color: var(--text-primary); }
.home-refresh .aus-banner-content p { color: var(--text-secondary); }
.home-refresh .aus-signal-lbl { color: var(--text-muted); }
.home-refresh .aus-signal-div { background: #d7e5df; }
.home-refresh .support-coverage {
  margin: 0 0 3.5rem;
  padding: 1.25rem 1.35rem;
  border-color: rgba(21,151,197,.18);
  background: linear-gradient(100deg, rgba(255,255,255,.95), rgba(238,248,252,.92));
  box-shadow: var(--shadow-soft);
}
.home-refresh .support-coverage-lead { color: var(--text-primary); }
.home-refresh .support-coverage-lead small { color: var(--text-secondary); }
.home-refresh .support-coverage-icon {
  border-color: rgba(21,151,197,.22);
  color: var(--accent-sky);
  background: rgba(21,151,197,.09);
}
.home-refresh .support-locations span {
  color: var(--text-primary);
  border-color: #d9e5e0;
  background: #fff;
}
.home-refresh .hardware-section {
  position: relative;
  padding-block: 5rem 6rem;
  background:
    radial-gradient(circle at 80% 8%, rgba(21,151,197,.22), transparent 28rem),
    linear-gradient(rgba(91,186,116,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(21,151,197,.05) 1px, transparent 1px),
    linear-gradient(150deg, #0b2419, #123425);
  background-size: auto, 48px 48px, 48px 48px, auto;
}
.home-refresh .hardware-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 10%, rgba(21,151,197,.2) 50%, transparent 90%) 50% 28% / 70% 1px no-repeat,
    radial-gradient(circle, rgba(91,186,116,.45) 0 2px, transparent 3px) 18% 28% / 100% 100% no-repeat,
    radial-gradient(circle, rgba(21,151,197,.5) 0 2px, transparent 3px) 82% 28% / 100% 100% no-repeat;
}
.home-refresh .hw-products { display: none; }

#smartpack,
#autopack { scroll-margin-top: calc(var(--nav-height) + 1.5rem); }
.home-refresh .aus-banner { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.07); }
.support-coverage {
  display: grid;
  grid-template-columns: minmax(250px, .85fr) 1.4fr;
  align-items: center;
  gap: 2rem;
  margin: -3.25rem 0 5rem;
  padding: 1.2rem 1.35rem;
  border: 1px solid rgba(139,218,245,.25);
  border-radius: 16px;
  background: linear-gradient(100deg, rgba(21,151,197,.16), rgba(255,255,255,.06));
}
.support-coverage-lead {
  display: flex;
  align-items: center;
  gap: .9rem;
  color: #fff;
}
.support-coverage-lead > span:last-child {
  display: grid;
  gap: .18rem;
}
.support-coverage-lead strong {
  font-family: var(--font-display);
  font-size: 1rem;
}
.support-coverage-lead small {
  color: rgba(255,255,255,.62);
  line-height: 1.4;
}
.support-coverage-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border: 1px solid rgba(139,218,245,.35);
  border-radius: 14px;
  color: #8bdaf5;
  background: rgba(21,151,197,.16);
}
.support-locations {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .55rem;
}
.support-locations span {
  padding: .7rem .5rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 10px;
  color: rgba(255,255,255,.88);
  background: rgba(255,255,255,.055);
  font-size: .74rem;
  font-weight: 750;
  letter-spacing: .04em;
  text-align: center;
  text-transform: uppercase;
}
.cloud-hardware-bridge {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 1.5rem;
  max-width: 900px;
  margin: -1.5rem auto 3rem;
}
.chb-node {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: .8rem;
  padding: 1.1rem 1.25rem;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 16px;
  background: rgba(255,255,255,.08);
  color: #fff;
}
.chb-node small { grid-column: 2; color: rgba(255,255,255,.6); }
.chb-icon {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(255,255,255,.1);
  color: var(--green-300);
}
.chb-cloud { border-color: rgba(21,151,197,.5); background: rgba(21,151,197,.15); }
.chb-cloud .chb-icon { color: #8bdaf5; }
.chb-link {
  display: flex;
  align-items: center;
  gap: .5rem;
  color: #8bdaf5;
  font-size: .68rem;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: .07em;
}
.chb-link span { width: 24px; height: 1px; background: #8bdaf5; }
.hw-card { background: rgba(255,255,255,.07); }

/* Patent proof is light, crisp and easy to scan */
.home-refresh .patents-section {
  background:
    radial-gradient(circle at 10% 20%, rgba(21,151,197,.1), transparent 20rem),
    linear-gradient(135deg, #e8eeec, #edf3f1);
  border-color: #d5e0dc;
}
.home-refresh .patents-inner {
  background: #fff;
  border-color: #cbd8d3;
  box-shadow: var(--shadow-soft);
  border: 1px solid #cbd8d3;
  border-radius: 20px;
  padding: 2rem;
}
.home-refresh .patents-title { color: var(--text-primary); }
.home-refresh .patents-sub { color: var(--text-secondary); }

/* Controlled cloud/data styling: technical without turning the full site dark */
.home-refresh .journey-platform {
  position: relative;
}
.home-refresh .journey-platform::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .55;
  background:
    linear-gradient(90deg, transparent 6%, rgba(21,151,197,.24) 50%, transparent 94%) 50% 16% / 78% 1px no-repeat,
    radial-gradient(circle, rgba(32,115,68,.5) 0 2px, transparent 3px) 13% 16% / 100% 100% no-repeat,
    radial-gradient(circle, rgba(21,151,197,.55) 0 2px, transparent 3px) 87% 16% / 100% 100% no-repeat;
}
.home-refresh .journey-platform .container,
.home-refresh .hardware-section .container,
.integrations-section .container {
  position: relative;
  z-index: 1;
}
.home-refresh .patents-seal {
  color: var(--accent-sky);
  background: var(--surface-sky);
}
.home-refresh .patent-card {
  border-color: #d3dfdb;
  background: #f8faf9;
}
.home-refresh .patent-card:hover {
  background: var(--surface-sky);
  border-color: rgba(21,151,197,.42);
}
.home-refresh .patent-jurisdiction { color: var(--text-primary); }
.home-refresh .patent-authority { color: var(--text-secondary); }
.home-refresh .patent-number { color: var(--action-primary); }
.home-refresh .patent-granted { color: var(--action-primary); }
.home-refresh .int-tile {
  background: rgba(255,255,255,.84);
  border-color: rgba(21,151,197,.16);
}
.home-refresh .int-tile:hover {
  border-color: rgba(21,151,197,.55);
  box-shadow: 0 10px 30px rgba(21,151,197,.12);
}

@media (max-width: 1270px) {
  .nav-links { display: none; }
  .nav-right-actions {
    display: flex !important;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
  }
  .nav-scrolled-social { display: none !important; }
  .nav-phone {
    display: inline-flex;
    width: 42px;
    height: 42px;
    justify-content: center;
    padding: 0;
  }
  .nav-phone span { display: none; }
  .nav-mobile-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: var(--text-primary);
  }
  .nav-mobile-menu { top: var(--nav-height); }
  .home-refresh .grow-band-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .home-refresh .grow-tile:nth-child(even) { margin-top: 2.5rem; }
  .support-coverage { grid-template-columns: 1fr; }
  .home-refresh .gs1-partner-card { grid-template-columns: 1fr; text-align: left; }
  .home-refresh .gs1-partner-cta { min-width: 0; }
}

@media (max-width: 768px) {
  :root { --nav-height: 68px; }
  .container {
    width: 100%;
    max-width: 100% !important;
  }
  .hero-content,
  .hero-content *,
  .page-hero-content,
  .page-hero-content *,
  .section-header,
  .section-header * {
    min-width: 0;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
  section { padding-block: 4rem; }
  .nav-inner { padding-inline: 1.15rem; }
  .nav-scrolled-logo { width: 160px; }
  .nav-right-actions {
    right: .75rem;
    gap: .25rem;
    width: auto;
    margin: 0;
  }
  .nav-phone { width: 40px; height: 40px; }
  .nav-mobile-toggle { width: 40px; height: 40px; padding: .35rem; }
  .hero {
    min-height: auto;
    display: block;
  }
  .hero-bg {
    inset: var(--nav-height) 0 0 0;
    width: 100%;
    opacity: .1;
    -webkit-mask-image: linear-gradient(180deg, transparent, #000 40%);
    mask-image: linear-gradient(180deg, transparent, #000 40%);
  }
  .hero-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
    max-width: 100vw !important;
    margin: 0 !important;
    min-height: auto;
    padding: calc(var(--nav-height) + 3rem) 1.25rem 3rem !important;
  }
  .hero-content {
    width: 100%;
    max-width: calc(100vw - 2.5rem) !important;
    margin-inline: auto;
    align-items: flex-start;
    text-align: left;
  }
  .hero-opening-signals {
    align-items: flex-start;
    margin-bottom: 1.25rem;
  }
  .hero-eyebrow { margin-inline: 0; }
  .hero-support-badge { max-width: 100%; }
  .hero h1 {
    text-align: left;
    font-size: clamp(2.3rem, 11vw, 3.35rem);
    max-width: 100%;
    overflow-wrap: anywhere;
  }
  .hero-sub {
    display: block;
    overflow: visible;
    text-align: left;
    max-width: 34rem;
    font-size: 1rem;
  }
  .hero-cloud-proof { max-width: 100%; }
  .hero-ctas {
    width: 100%;
    align-items: stretch;
  }
  .hero-trust { align-items: flex-start; }
  .hero-trust li { justify-content: flex-start; text-align: left; }
  .hero-stats-inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
  .hero-stats-bar { padding-block: 1.5rem; }
  .hero-stats-note { margin-top: 1rem !important; }
  .home-refresh .gs1-partner-section { padding-bottom: 3rem; }
  .home-refresh .gs1-partner-card { padding: 1.1rem; }
  .home-refresh .gs1-partner-mark { width: 72px; height: 72px; border-radius: 20px; }
  .home-refresh .gs1-partner-mark-top { font-size: 1.3rem; }
  .page-hero {
    min-height: 360px;
    padding-top: calc(var(--nav-height) + 3.5rem);
  }
  .page-hero .container,
  .section-header {
    width: 100%;
    max-width: 100vw !important;
  }
  .page-hero-content,
  .page-hero-content h1,
  .page-hero-content p {
    width: 100%;
    max-width: calc(100vw - 2.5rem) !important;
    overflow-wrap: anywhere;
  }
  .page-hero::before { width: 240px; height: 240px; right: -20%; }
  .page-hero-photo { width: 100%; opacity: .08; }
  .marquee-track {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.9rem;
    width: 100%;
  }
  .client-logo-pill {
    width: 100%;
    min-width: 0;
    max-width: 360px;
    margin-inline: auto;
  }
  .client-logo-pill img {
    max-width: 78%;
    height: 52px;
  }
  .home-refresh .grow-band-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .home-refresh .grow-tile:nth-child(even) { margin-top: 2rem; }
  .support-locations { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .cloud-hardware-bridge { grid-template-columns: 1fr; }
  .chb-link { justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
