/* =========================================================
   BRINGLIVE DIGITAL — OPERATING BUSINESS EDITION v3.3
   Final layout, navigation, icon and fixed-header anchor lock
========================================================= */

:root {
  --header-offset: 84px;
  --anchor-gap: 18px;
  --section-space: 92px;
  --v3-ink: #061735;
  --v3-muted: #455d7d;
  --v3-border: rgba(20, 92, 255, 0.14);
  --v3-card: #ffffff;
}

html {
  scroll-padding-top: calc(var(--header-offset) + var(--anchor-gap));
}

body.home-v3 {
  background: #ffffff;
}

.home-v3 .site-header {
  padding: 10px 0;
  background: rgba(255, 255, 255, 0.92);
  border-bottom: 1px solid rgba(20, 92, 255, 0.08);
  box-shadow: 0 8px 34px rgba(4, 31, 79, 0.06);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.home-v3 .site-header.scrolled {
  padding: 8px 0;
  background: rgba(255, 255, 255, 0.97);
}

.home-v3 .nav-container {
  min-height: 64px;
}

.home-v3 .brand-logo {
  width: 176px;
  min-width: 176px;
  height: 54px;
}

.home-v3 .desktop-nav {
  gap: 22px;
}

.home-v3 .nav-link {
  color: #294463;
  font-size: 0.86rem;
  font-weight: 750;
}

.home-v3 .header-cta {
  padding: 13px 18px;
  font-size: 0.84rem;
}

/* ---------------------------------------------------------
   SOLUTIONS DROPDOWN
--------------------------------------------------------- */

.home-v3 .nav-dropdown-menu,
body.property-page .nav-dropdown-menu {
  width: 390px;
  padding: 12px;
  border-radius: 22px;
}

.home-v3 .nav-dropdown-item,
body.property-page .nav-dropdown-item {
  gap: 13px;
  padding: 13px;
}

.dropdown-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(20, 92, 255, 0.13);
  border-radius: 12px;
  color: #145cff;
  background: #eef4ff;
}

.dropdown-icon svg,
.solution-svg-icon svg,
.work-service-icon svg,
.industry-icon svg,
.process-svg-icon svg,
.principle-svg-icon svg,
.operating-value-card svg,
.property-feature-icon svg,
.property-capability-icon svg,
.property-process-icon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dropdown-icon-property { color: #087f9c; background: rgba(32, 215, 212, 0.11); }
.dropdown-icon-system { color: #145cff; }
.dropdown-icon-mobile { color: #6247c7; background: rgba(98, 71, 199, 0.09); }
.dropdown-icon-review { color: #9a5b00; background: rgba(217, 124, 14, 0.1); }

.home-v3 .nav-dropdown-copy strong,
body.property-page .nav-dropdown-copy strong {
  font-size: 0.86rem;
}

.home-v3 .nav-dropdown-copy span,
body.property-page .nav-dropdown-copy span {
  color: #5b6e8b;
  font-size: 0.69rem;
}

.mobile-menu-label {
  display: block;
  margin: 18px 0 5px 18px;
  color: #6ee8e5;
  font-size: 0.64rem;
  font-weight: 900;
  letter-spacing: 0.13em;
}

/* ---------------------------------------------------------
   TOP / HERO — NO EMPTY BAND
--------------------------------------------------------- */

.home-v3 .hero-section {
  min-height: 790px;
  padding: 112px 0 72px;
}

.home-v3 .hero-container {
  align-items: center;
}

.home-v3 .hero-content h1 {
  max-width: 730px;
  font-size: clamp(3.25rem, 5.8vw, 6.1rem);
  line-height: 0.96;
}

.home-v3 .hero-content h1 .gradient-text {
  display: block;
}

.home-v3 .hero-description {
  max-width: 700px;
  margin-top: 24px;
}

.home-v3 .hero-visual {
  min-height: 560px;
}

.home-v3 .hero-dashboard-card {
  max-width: 540px;
}

.demo-data-note {
  margin-top: 15px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.61rem;
  letter-spacing: 0.05em;
  text-align: right;
}

.home-v3 .company-trust-grid > div {
  min-height: 104px;
}

/* ---------------------------------------------------------
   SECTION RHYTHM AND ANCHOR CONTENT
--------------------------------------------------------- */

.home-v3 .section {
  padding: var(--section-space) 0;
}

.home-v3 section[id] {
  scroll-margin-top: calc(var(--header-offset) + var(--anchor-gap));
}

.home-v3 .section-header {
  margin-bottom: 46px;
}

.home-v3 .section-kicker > span {
  width: 34px;
  min-width: 34px;
  height: 34px;
  border-radius: 10px;
  color: #145cff;
  background: rgba(20, 92, 255, 0.08);
  font-size: 0.7rem;
  font-weight: 900;
}

.home-v3 .section-header h2,
.home-v3 .contact-content h2 {
  font-size: clamp(2.55rem, 4.7vw, 4.8rem);
}

/* ---------------------------------------------------------
   SIX SOLUTIONS / DISTINCT ICONS
--------------------------------------------------------- */

.home-v3 .solutions-section {
  padding-top: var(--section-space);
  padding-bottom: var(--section-space);
}

.solutions-grid-v3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.solutions-grid-v3 .solution-card {
  min-height: 355px;
  padding: 28px;
  cursor: pointer;
}

.solutions-grid-v3 .solution-content {
  padding-top: 46px;
}

.solution-svg-icon {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(20, 92, 255, 0.14);
  border-radius: 16px;
  color: #145cff;
  background: linear-gradient(145deg, #eff5ff, #ffffff);
  box-shadow: 0 12px 28px rgba(20, 92, 255, 0.1);
}

.icon-property { color: #087f9c; background: linear-gradient(145deg, rgba(32, 215, 212, 0.13), #ffffff); }
.icon-mobile { color: #6247c7; background: linear-gradient(145deg, rgba(98, 71, 199, 0.11), #ffffff); }
.icon-workflow { color: #007a64; background: linear-gradient(145deg, rgba(0, 155, 135, 0.1), #ffffff); }
.icon-dashboard { color: #b35c00; background: linear-gradient(145deg, rgba(217, 124, 14, 0.1), #ffffff); }
.icon-integration { color: #b52772; background: linear-gradient(145deg, rgba(181, 39, 114, 0.09), #ffffff); }

.solutions-grid-v3 .solution-tag {
  max-width: 150px;
  text-align: right;
}

/* ---------------------------------------------------------
   SYSTEMS AND SERVICES
--------------------------------------------------------- */

.work-grid-v3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.work-grid-v3 .work-card {
  min-height: 360px;
}

.work-service-icon {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  margin-top: 20px;
  border-radius: 16px;
  color: #145cff;
  background: #eef4ff;
}

.work-grid-v3 .work-card:nth-child(1) .work-service-icon {
  color: #9a5b00;
  background: rgba(217, 124, 14, 0.1);
}

.work-grid-v3 .work-card:nth-child(3) .work-service-icon {
  color: #6247c7;
  background: rgba(98, 71, 199, 0.1);
}

.work-grid-v3 .work-card h3 {
  margin-top: 22px;
}

/* ---------------------------------------------------------
   INDUSTRIES
--------------------------------------------------------- */

.industries-section-v3 {
  overflow: hidden;
  background:
    radial-gradient(circle at 5% 15%, rgba(20, 92, 255, 0.08), transparent 27%),
    #f7faff;
}

.industry-grid-v3 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}

.industry-card-v3 {
  min-height: 300px;
  padding: 28px 24px;
  border: 1px solid var(--v3-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 48px rgba(4, 31, 79, 0.07);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.industry-card-v3:hover {
  transform: translateY(-5px);
  box-shadow: 0 25px 58px rgba(4, 31, 79, 0.11);
}

.industry-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 17px;
  color: #145cff;
  background: #edf4ff;
}

.industry-card-v3:nth-child(2) .industry-icon { color: #087f9c; background: rgba(32, 215, 212, 0.12); }
.industry-card-v3:nth-child(3) .industry-icon { color: #6247c7; background: rgba(98, 71, 199, 0.1); }
.industry-card-v3:nth-child(4) .industry-icon { color: #b35c00; background: rgba(217, 124, 14, 0.1); }
.industry-card-v3:nth-child(5) .industry-icon { color: #007a64; background: rgba(0, 155, 135, 0.1); }

.industry-card-v3 h3 {
  margin-top: 54px;
  color: var(--v3-ink);
  font-size: 1.28rem;
  line-height: 1.2;
}

.industry-card-v3 p {
  margin-top: 14px;
  color: var(--v3-muted);
  font-size: 0.9rem;
  line-height: 1.7;
}

/* ---------------------------------------------------------
   PROCESS / UNIQUE ICONS
--------------------------------------------------------- */

.process-grid-v3 .process-card-v2 {
  min-height: 330px;
}

.process-svg-icon {
  display: grid !important;
  place-items: center;
  width: 52px !important;
  height: 52px !important;
  border-radius: 17px !important;
  color: #145cff !important;
  background: #edf4ff !important;
  font-size: 0 !important;
}

.process-grid-v3 .process-card-v2:nth-child(2) .process-svg-icon { color: #087f9c !important; background: rgba(32, 215, 212, 0.12) !important; }
.process-grid-v3 .process-card-v2:nth-child(3) .process-svg-icon { color: #6247c7 !important; background: rgba(98, 71, 199, 0.1) !important; }
.process-grid-v3 .process-card-v2:nth-child(4) .process-svg-icon { color: #007a64 !important; background: rgba(0, 155, 135, 0.1) !important; }

.process-grid-v3 .process-card-v2 small {
  margin-top: 30px;
}

/* ---------------------------------------------------------
   OPERATING VALUE
--------------------------------------------------------- */

.operating-value-section {
  position: relative;
  overflow: hidden;
  padding: 96px 0;
  color: #ffffff;
  background:
    radial-gradient(circle at 12% 10%, rgba(32, 215, 212, 0.14), transparent 29%),
    radial-gradient(circle at 90% 90%, rgba(20, 92, 255, 0.2), transparent 32%),
    #041737;
}

.operating-value-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
  gap: 70px;
  align-items: center;
}

.section-kicker-dark {
  color: #72eeea;
}

.section-kicker-dark > span {
  color: #061735 !important;
  background: #72eeea !important;
}

.operating-value-heading h2 {
  max-width: 570px;
  margin-top: 18px;
  color: #ffffff;
  font-size: clamp(2.6rem, 4.5vw, 4.8rem);
  line-height: 1.02;
  letter-spacing: -0.05em;
}

.operating-value-heading p {
  max-width: 590px;
  margin-top: 24px;
  color: #c6d8ef;
  line-height: 1.8;
}

.operating-value-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.operating-value-card {
  min-height: 230px;
  padding: 25px;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.055);
  backdrop-filter: blur(10px);
}

.operating-value-card > span {
  display: grid;
  place-items: center;
  width: 47px;
  height: 47px;
  border-radius: 15px;
  color: #72eeea;
  background: rgba(114, 238, 234, 0.11);
}

.operating-value-card h3 {
  margin-top: 28px;
  color: #ffffff;
  font-size: 1.14rem;
}

.operating-value-card p {
  margin-top: 10px;
  color: #b8cce7;
  font-size: 0.88rem;
  line-height: 1.7;
}

/* ---------------------------------------------------------
   ABOUT / DISTINCT PRINCIPLE ICONS
--------------------------------------------------------- */

.principle-svg-icon {
  display: grid !important;
  place-items: center;
  flex: 0 0 auto;
  width: 50px !important;
  min-width: 50px !important;
  height: 50px !important;
  border-radius: 15px !important;
  color: #145cff !important;
  background: #edf4ff !important;
  font-size: 0 !important;
}

.principle-card:nth-child(2) .principle-svg-icon { color: #087f9c !important; background: rgba(32, 215, 212, 0.12) !important; }
.principle-card:nth-child(3) .principle-svg-icon { color: #6247c7 !important; background: rgba(98, 71, 199, 0.1) !important; }

.home-v3 .about-section-v2 {
  background: #ffffff;
}

/* ---------------------------------------------------------
   PROPERTY PAGE — PRODUCT LANGUAGE AND UNIQUE ICONS
--------------------------------------------------------- */

body.property-page .property-page-hero {
  padding-top: 120px !important;
  padding-bottom: 78px;
}

body.property-page .property-page-kicker {
  color: #70eeea;
}

body.property-page .prototype-status-note {
  max-width: 650px;
  color: rgba(255, 255, 255, 0.72);
}

body.property-page .section {
  padding: 92px 0;
}

body.property-page section[id] {
  scroll-margin-top: calc(var(--header-offset) + var(--anchor-gap));
}

body.property-page .section-kicker > span {
  display: grid !important;
  place-items: center !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  border-radius: 11px !important;
  color: #145cff !important;
  background: rgba(20, 92, 255, 0.08) !important;
  font-size: 0.7rem !important;
  font-weight: 900 !important;
}

body.property-page .section-kicker > span::before,
body.property-page .property-info-number::before,
body.property-page .property-capability-card > span::before,
body.property-page .process-number::before,
body.property-page .nav-dropdown-number::before {
  content: none !important;
}

body.property-page .property-info-number,
body.property-page .property-capability-card > span,
body.property-page .process-number {
  color: inherit !important;
  font-size: inherit !important;
}

.property-feature-icon,
.property-capability-icon,
.property-process-icon {
  display: grid !important;
  place-items: center !important;
  width: 50px !important;
  min-width: 50px !important;
  height: 50px !important;
  padding: 0 !important;
  border: 1px solid rgba(20, 92, 255, 0.13) !important;
  border-radius: 16px !important;
  color: #145cff !important;
  background: #edf4ff !important;
  font-size: 0 !important;
}

body.property-page .property-info-card:nth-child(2) .property-feature-icon,
body.property-page .property-capability-card:nth-child(2) .property-capability-icon,
body.property-page .process-step:nth-child(2) .property-process-icon { color: #087f9c !important; background: rgba(32, 215, 212, 0.12) !important; }

body.property-page .property-info-card:nth-child(3) .property-feature-icon,
body.property-page .property-capability-card:nth-child(3) .property-capability-icon,
body.property-page .process-step:nth-child(3) .property-process-icon { color: #6247c7 !important; background: rgba(98, 71, 199, 0.1) !important; }

body.property-page .property-info-card:nth-child(4) .property-feature-icon,
body.property-page .property-capability-card:nth-child(4) .property-capability-icon,
body.property-page .process-step:nth-child(4) .property-process-icon { color: #b35c00 !important; background: rgba(217, 124, 14, 0.1) !important; }

body.property-page .property-info-card h3,
body.property-page .property-capability-card h3 {
  margin-top: 26px;
}

body.property-page .process-number.property-process-icon {
  background: #ffffff !important;
}

body.property-page .property-summary-item > span {
  color: #061735 !important;
  background: #20d7d4 !important;
}


/* ---------------------------------------------------------
   CONSISTENT DARK-FOOTER BRANDING
   Light logo sits directly on navy; no pale card behind it.
--------------------------------------------------------- */

body.property-page .footer-logo,
body.privacy-page .footer-logo {
  width: 260px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

body.property-page .footer-logo img,
body.privacy-page .footer-logo img {
  filter: none;
}

body.property-page .footer-top,
body.privacy-page .footer-top {
  align-items: start;
}

/* ---------------------------------------------------------
   RESPONSIVE
--------------------------------------------------------- */

@media (max-width: 1180px) {
  body.property-page .nav-container,
  body.privacy-page .nav-container { gap: 14px; }

  body.property-page .brand-logo,
  body.privacy-page .brand-logo {
    width: 165px;
    min-width: 165px;
    height: 52px;
  }

  body.property-page .desktop-nav,
  body.privacy-page .desktop-nav { gap: 13px; }

  body.property-page .nav-link,
  body.privacy-page .nav-link { font-size: 0.78rem; }

  body.property-page .header-cta,
  body.privacy-page .header-cta {
    padding: 12px 13px;
    font-size: 0.77rem;
    white-space: nowrap;
  }

  .home-v3 .desktop-nav { gap: 15px; }
  .home-v3 .nav-link { font-size: 0.8rem; }
  .home-v3 .brand-logo { width: 164px; min-width: 164px; }
  .home-v3 .header-cta { padding-inline: 15px; }
  .industry-grid-v3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .industry-card-v3 { min-height: 270px; }
}


@media (max-width: 1120px) and (min-width: 1021px) {
  body.property-page .desktop-nav,
  body.property-page .header-cta,
  body.privacy-page .desktop-nav,
  body.privacy-page .header-cta {
    display: none;
  }

  body.property-page .menu-toggle,
  body.privacy-page .menu-toggle {
    display: flex;
    z-index: 1001;
  }
}

@media (max-width: 1020px) {
  :root {
    --header-offset: 78px;
    --anchor-gap: 16px;
  }

  .home-v3 .hero-section {
    min-height: auto;
    padding-top: 104px;
  }

  .solutions-grid-v3,
  .work-grid-v3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .operating-value-shell {
    grid-template-columns: 1fr;
    gap: 45px;
  }

  body.property-page .property-page-hero {
    padding-top: 104px !important;
  }
}

@media (max-width: 760px) {
  :root {
    --header-offset: 74px;
    --anchor-gap: 16px;
    --section-space: 72px;
  }

  .home-v3 .site-header {
    padding: 6px 0;
  }

  .home-v3 .nav-container {
    min-height: 60px;
  }

  .home-v3 .brand-logo {
    width: 148px;
    min-width: 148px;
    height: 48px;
  }

  .home-v3 .hero-section {
    padding: 88px 0 62px;
  }

  .home-v3 .hero-content h1 {
    font-size: clamp(2.65rem, 13vw, 4.5rem);
  }

  .home-v3 .hero-visual {
    min-height: auto;
  }

  .home-v3 .section {
    padding: var(--section-space) 0;
  }

  .home-v3 .section-header {
    margin-bottom: 34px;
  }

  .solutions-grid-v3,
  .work-grid-v3,
  .industry-grid-v3,
  .operating-value-grid {
    grid-template-columns: 1fr;
  }

  .solutions-grid-v3 .solution-card {
    min-height: 315px;
  }

  .industry-card-v3 {
    min-height: 235px;
  }

  .industry-card-v3 h3 {
    margin-top: 34px;
  }

  .operating-value-section {
    padding: 74px 0;
  }

  .operating-value-card {
    min-height: 205px;
  }

  body.property-page .property-page-hero {
    padding-top: 86px !important;
  }

  body.property-page .section {
    padding: 72px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .industry-card-v3,
  .solution-card,
  .work-card { transition: none; }
}
