/* Shared marketing chrome, derived from the approved homepage cascade. */
:root{
      --ink: #101113;
      --ink-2: #1b1c1f;
      --ink-3: #2c2e33;
      --muted: #5f636a;
      --muted-2: #8b8e94;
      --line: #e6e7e9;
      --line-strong: #d5d7db;
      --canvas: #f6f5f2;
      --section-soft: #f1f2f4;
      --section-soft-strong: #eceef0;
      --section-line: rgba(16, 17, 19, .08);
      --surface: #ffffff;
      --surface-soft: #f7f7f8;
      --surface-warm: #f6f5f2;
      --dark: #0a0a0b;
      --dark-2: #141518;
      --dark-line: rgba(255, 255, 255, .1);
      --radius: 10px;
      --shadow-level-1: 0 1px 2px rgba(16, 17, 19, .04), 0 12px 30px -18px rgba(16, 17, 19, .22);
      --shadow-level-2: 0 2px 4px rgba(16, 17, 19, .05), 0 24px 64px -32px rgba(16, 17, 19, .38);
      --shadow-level-3: 0 3px 8px rgba(16, 17, 19, .08), 0 32px 78px -34px rgba(16, 17, 19, .52);
      --shadow: var(--shadow-level-1);
      --shadow-lg: var(--shadow-level-2);
      --product-radius: 18px;
      --product-border-dark: rgba(255, 255, 255, .1);
      --product-inset-dark: inset 0 1px 0 rgba(255, 255, 255, .045);
      --ease: cubic-bezier(.16, 1, .3, 1);
      --transition-fast: .18s;
      --transition-base: .28s;
      --container: 1180px;
    }
*{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
      margin: 0;
      min-width: 320px;
      background: var(--canvas);
      color: var(--ink);
      font-family: "Geist", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
button, input{ font: inherit; }
img, svg{ display: block; max-width: 100%; }
.skip-link{
      position: fixed;
      left: 16px;
      top: 12px;
      z-index: 100;
      padding: 10px 14px;
      border-radius: 7px;
      background: var(--ink);
      color: #fff;
      font-size: 13px;
      font-weight: 700;
      transform: translateY(-150%);
      transition: transform var(--transition-fast) ease;
    }
.skip-link:focus{ transform: translateY(0); }
.container{ width: min(var(--container), calc(100% - 40px)); margin-inline: auto; }
.site-header{
      --hero-carbon: #090b0c;
      --hero-graphite: #0f1214;
      --hero-elevated: #1b2023;
      --hero-steel: #30363a;
      --hero-label: #92989a;
      --hero-supporting: #b8bab8;
      --hero-ivory: #f3efe7;
      --hero-highlight: #fffdf8;
      position: fixed;
      top: 0;
      right: 0;
      left: 0;
      width: 100%;
      z-index: 50;
      border-bottom: 1px solid rgba(126, 162, 194, .2);
      background: rgba(8, 12, 15, .6);
      -webkit-backdrop-filter: blur(20px) saturate(1.08);
      backdrop-filter: blur(20px) saturate(1.08);
      box-shadow: 0 1px 0 rgba(226, 239, 249, .035), 0 10px 32px -28px rgba(0, 0, 0, .78);
      transition: background var(--transition-base) var(--ease), border-color var(--transition-base) var(--ease), box-shadow var(--transition-base) var(--ease);
    }
.nav{
      min-height: 72px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
    }
.brand{
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      color: var(--ink);
      font-size: 19px;
      line-height: 1;
      font-weight: 800;
      letter-spacing: .025em;
      white-space: nowrap;
      transition: color var(--transition-base) var(--ease);
    }
.brand-logo,
    .footer-logo{
      flex: 0 0 auto;
      display: inline-block;
      object-fit: contain;
      vertical-align: middle;
    }
.brand-logo{
      width: 34px;
      height: 34px;
      transition: filter var(--transition-base) var(--ease);
    }
.nav-links{
      display: flex;
      align-items: center;
      justify-content: center;
      gap: clamp(14px, 2vw, 24px);
      color: var(--muted);
      font-size: 13px;
      font-weight: 600;
      transition: color var(--transition-base) var(--ease);
    }
.nav-links a{ transition: color var(--transition-fast) ease; white-space: nowrap; }
.nav-links a:hover{ color: var(--ink); }
.nav-cta{ flex: 0 0 auto; }
.mobile-nav-toggle,
    .mobile-nav-panel{ display: none; }
.mobile-nav-toggle{
      width: 42px;
      height: 42px;
      flex: 0 0 42px;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      gap: 5px;
      padding: 0;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: #fff;
      color: var(--ink);
      cursor: pointer;
      transition: background var(--transition-base) var(--ease), border-color var(--transition-base) var(--ease), color var(--transition-base) var(--ease);
    }
.mobile-nav-toggle span{
      width: 16px;
      height: 1px;
      background: currentColor;
      transition: transform var(--transition-base) var(--ease), opacity var(--transition-fast) ease;
    }
.mobile-nav-toggle[aria-expanded="true"] span:first-child{ transform: translateY(3px) rotate(45deg); }
.mobile-nav-toggle[aria-expanded="true"] span:last-child{ transform: translateY(-3px) rotate(-45deg); }
.mobile-nav-toggle:focus-visible{ outline: 2px solid var(--ink); outline-offset: 3px; }
.mobile-nav-panel{
      position: absolute;
      left: 16px;
      right: 16px;
      top: calc(100% + 1px);
      padding: 12px;
      border: 1px solid var(--line);
      border-top: 0;
      border-radius: 0 0 14px 14px;
      background: rgba(255, 255, 255, .98);
      box-shadow: 0 24px 50px -34px rgba(16, 17, 19, .65);
      transition: background var(--transition-base) var(--ease), border-color var(--transition-base) var(--ease), box-shadow var(--transition-base) var(--ease);
    }
.mobile-nav-panel[hidden]{ display: none; }
.mobile-nav-panel > a:not(.button){
      display: block;
      padding: 12px 8px;
      border-bottom: 1px solid var(--line);
      color: var(--ink-3);
      font-size: 14px;
      font-weight: 650;
    }
.mobile-nav-panel .button{ width: 100%; margin-top: 12px; }
.button{
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 42px;
      padding: 0 18px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: #fff;
      color: var(--ink);
      font-size: 14px;
      font-weight: 700;
      line-height: 1;
      cursor: pointer;
      overflow: hidden;
      transition: transform var(--transition-base) var(--ease), box-shadow var(--transition-base) var(--ease), border-color var(--transition-fast) ease, background var(--transition-fast) ease;
    }
.button:hover{
      transform: translateY(-1px);
      border-color: var(--line-strong);
      box-shadow: 0 12px 28px -20px rgba(16, 17, 19, .5);
    }
.button:active{ transform: translateY(0) scale(.985); transition-duration: .12s; }
.button:focus-visible{
      outline: 2px solid var(--ink);
      outline-offset: 3px;
    }
.button-dark{
      border-color: var(--ink);
      background: var(--ink);
      color: #fff;
      box-shadow: 0 14px 28px -22px rgba(16, 17, 19, .8);
    }
.button-dark:hover{
      background: var(--ink-2);
      border-color: var(--ink-2);
      box-shadow: 0 18px 34px -20px rgba(16, 17, 19, .7);
    }
.site-header .brand{ color: var(--hero-ivory); }
.site-header .brand-logo{ filter: grayscale(1) brightness(0) invert(1); }
.site-header .nav-links{ color: var(--hero-label); }
.site-header .nav-links a:hover{ color: var(--hero-highlight); }
.site-header .nav-cta .button-dark{
      border-color: rgba(255, 253, 248, .82);
      background: var(--hero-ivory);
      color: var(--hero-graphite);
      box-shadow: 0 10px 24px -18px rgba(0, 0, 0, .82), inset 0 1px 0 rgba(255, 255, 255, .72);
    }
.site-header .nav-cta .button-dark:hover{
      border-color: var(--hero-highlight);
      background: var(--hero-highlight);
      box-shadow: 0 12px 26px -18px rgba(0, 0, 0, .88), inset 0 1px 0 rgba(255, 255, 255, .82);
    }
.site-header .mobile-nav-toggle{
      border-color: rgba(243, 239, 231, .22);
      background: var(--hero-elevated);
      color: var(--hero-ivory);
    }
.site-header .mobile-nav-toggle:focus-visible{ outline-color: var(--hero-ivory); }
.site-header .mobile-nav-panel{
      border-color: rgba(126, 162, 194, .2);
      background: rgba(9, 14, 18, .96);
      box-shadow: 0 24px 50px -30px rgba(0, 0, 0, .82);
    }
.site-header .mobile-nav-panel > a:not(.button){
      border-bottom-color: rgba(243, 239, 231, .1);
      color: var(--hero-supporting);
    }
.site-header .mobile-nav-panel > a:not(.button):hover{ color: var(--hero-highlight); }
.site-header .mobile-nav-panel .button-dark{
      border-color: var(--hero-ivory);
      background: var(--hero-ivory);
      color: var(--hero-graphite);
    }
.hero .container{
      position: relative;
      z-index: 2;
    }
.hero-actions .button-dark{
      border-color: rgba(255, 253, 248, .84);
      background: var(--hero-ivory);
      color: var(--hero-graphite);
      box-shadow: 0 12px 28px -20px rgba(0, 0, 0, .88), inset 0 1px 0 rgba(255, 255, 255, .74);
    }
.hero-actions .button-dark:hover{
      border-color: var(--hero-highlight);
      background: var(--hero-highlight);
      box-shadow: 0 14px 30px -20px rgba(0, 0, 0, .92), inset 0 1px 0 rgba(255, 255, 255, .84);
    }
.hero-actions .button:not(.button-dark){
      border-color: var(--hero-steel);
      background: rgba(27, 32, 35, .48);
      color: var(--hero-ivory);
      box-shadow: inset 0 1px 0 rgba(255, 253, 248, .035);
    }
.hero-actions .button:not(.button-dark):hover{
      border-color: #737a7e;
      background: rgba(27, 32, 35, .72);
      box-shadow: 0 12px 26px -22px rgba(0, 0, 0, .9), inset 0 1px 0 rgba(255, 253, 248, .055);
    }
.hero-actions .button:focus-visible{
      outline-color: var(--hero-ivory);
      outline-offset: 3px;
    }
.hero-actions .button:not(.button-dark){ flex: 0 0 auto; padding-inline: 20px; }
@media (min-width: 1081px){.site-header .container,
      .hero .container{
        width: min(calc(100% - 128px), 1720px);
      }
.hero .container{
        display: flex;
        align-items: center;
        min-height: clamp(720px, 56.28vw, 1080px);
        padding: 34px 0 118px;
      }
}
.market-intelligence-showcase > .container{ position: relative; z-index: 1; }
.cta p a, .footer-description a{ color: #fff; font-weight: 700; text-decoration: none; border-bottom: 1px solid rgba(255, 255, 255, .35); transition: border-color .2s ease; }
.cta p a:hover, .footer-description a:hover{ border-color: #fff; }
.button-light{ border-color: #fff; background: #fff; color: var(--ink); }
.button-ghost-dark{ border-color: rgba(255, 255, 255, .18); background: rgba(255, 255, 255, .06); color: #fff; }
.button-light:hover{ border-color: #ededee; background: #ededee; }
.button-ghost-dark:hover{ border-color: rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .1); }
.site-footer{ padding: 58px 0 30px; border-top: 1px solid rgba(255, 255, 255, .07); background: var(--dark); color: #fff; }
.footer-brand-row{
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 14px;
    }
.footer-logo{
      width: 38px;
      height: 38px;
      object-fit: contain;
    }
.footer-grid{
      display: grid;
      grid-template-columns: minmax(220px, 1.5fr) repeat(4, minmax(120px, 1fr));
      gap: clamp(28px, 5vw, 56px);
      align-items: start;
    }
.footer-brand{
      margin: 0;
      font-size: 15px;
      line-height: 1;
      font-weight: 800;
      letter-spacing: .13em;
      text-transform: uppercase;
    }
.footer-description{ max-width: 330px; margin: 0; color: #b8babe; font-size: 14px; line-height: 1.7; }
.footer-group h3{ margin: 0 0 14px; color: #fff; font-size: 11px; line-height: 1.2; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.footer-group ul{ display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.footer-group a{ color: #b8babe; font-size: 13px; line-height: 1.35; transition: color .2s ease; }
.footer-social-link{ display: inline-flex; align-items: center; gap: 8px; }
.footer-social-link .linkedin-icon{ width: 15px; height: 15px; }
.footer-group a:hover{ color: #fff; }
.footer-bottom{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      flex-wrap: wrap;
      margin-top: 46px;
      padding-top: 24px;
      border-top: 1px solid rgba(255, 255, 255, .1);
      color: #8b8e94;
      font-size: 12px;
    }
.nav-links a:focus-visible,
    .mobile-nav-panel a:focus-visible,
    .footer-group a:focus-visible,
    .brand:focus-visible,
    .cta p a:focus-visible{
      outline: 2px solid currentColor;
      outline-offset: 4px;
      border-radius: 3px;
    }
@media (max-width: 1080px){.footer-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1060px){.container{ width: min(100% - 32px, var(--container)); }
.nav{ min-height: 66px; }
.nav-links, .nav-cta{ display: none; }
.mobile-nav-toggle{ display: inline-flex !important; }
.mobile-nav-panel{ display: block; }
.brand{ font-size: 17px; letter-spacing: .02em; }
.brand-logo{ width: 30px; height: 30px; }
}
@media (max-width: 620px){.hero .container{ width: min(100% - 32px, 1280px); }
.hero-actions .button, .cta-actions .button{ width: 100%; min-height: 46px; }
.hero-actions .button:not(.button-dark){ flex: 0 0 auto; }
.site-footer{ padding: 40px 0 24px; }
.footer-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 20px; }
.footer-grid > :first-child{ grid-column: 1 / -1; }
.footer-group h3{ margin-bottom: 10px; }
.footer-group ul{ gap: 8px; }
.footer-group a{ font-size: 13px; }
.footer-bottom{ margin-top: 30px; padding-top: 18px; }
}
@media (max-width: 380px){.container{ width: min(100% - 24px, var(--container)); }
.brand{ font-size: 16px; letter-spacing: .015em; }
}
@media (prefers-reduced-motion: reduce){*, *::before, *::after{
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .001ms !important;
      }
}
.overview-architectural .container{ position: relative; z-index: 1; }
@media (min-width: 1280px){.overview-architectural .container{ width: min(calc(100% - 128px), 1510px); }
}
@media (min-width: 1081px){.hero .container{
        min-height: 100%;
        padding: clamp(24px, 2.8vw, 42px) 0 calc(96px + clamp(32px, 3.8vw, 56px));
      }
}
@media (max-width: 1080px){.hero .container{ order: 1; }
}
.site-header.homepage-header{ position: relative; background: #f5f7f8; border-bottom: 1px solid #dde3e8; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; }
.homepage-header .nav{ min-height: 88px; gap: 30px; }
.homepage-header .brand{ color: #0f141a; font-size: 20px; letter-spacing: -.045em; font-weight: 700; gap: 9px; }
.homepage-header .brand-logo{ filter: none; width: 30px; height: 30px; }
.homepage-header .nav-links{ color: #5a6670; gap: 28px; font-size: 13px; font-weight: 500; }
.homepage-header .nav-links a:hover{ color: #0f141a; }
.homepage-header .nav-cta{ display: flex; align-items: center; gap: 25px; }
.homepage-login{ font-size: 13px; color: #35424c; font-weight: 500; }
.homepage-header .mobile-nav-toggle{ color: #0f141a; background: transparent; border-color: #d6dfe5; border-radius: 5px; }
.homepage-header .mobile-nav-panel{ background: #f5f7f8; border-color: #dde3e8; }
.homepage-header .mobile-nav-panel > a:not(.button){ color: #35424c; border-color: #dde3e8; }
.homepage-actions .button{ min-height: 48px; padding: 0 21px; font-size: 13px; }
@media (max-width: 1100px){.homepage-header .nav-links, .homepage-header .nav-cta{ display: none; }
.homepage-header .mobile-nav-toggle{ display: flex; }
.homepage-header .mobile-nav-panel:not([hidden]){ display: block; }
}
@media (max-width: 760px){.homepage-header .nav{ min-height: 72px; }
.homepage-actions .button{ padding-inline: 15px; }
}
.homepage-header{ border-bottom-color: #dfe5e9; }
.homepage-header .nav-links a{ position: relative; padding-block: 8px; }
.homepage-header .nav-links a::after{ content: ''; position: absolute; left: 0; right: 0; bottom: 1px; height: 1px; background: #6f8ea3; opacity: 0; transition: opacity .2s ease; }
.homepage-header .nav-links a:hover::after, .homepage-header .nav-links a:focus-visible::after{ opacity: .65; }
.homepage-header .nav-links a:focus-visible{ color: #0f141a; }
.homepage-header .nav-links a, .homepage-header .homepage-login{ transition: color .2s ease; }
.homepage-header .homepage-login:hover{ color: #6f8ea3; }
.homepage-opening .homepage-header{ background: transparent; border-bottom-color: rgba(90,112,129,.1); }
.opening-trust .container, .opening-metrics .container{ width: min(1360px, calc(100% - 96px)); }
.opening-trust .container{ transform: translate3d(0, var(--trust-drift, 0px), 0); }
.opening-nav-group{ position: relative; }
.opening-nav-trigger{ display: flex; align-items: center; gap: 6px; padding: 20px 0; border: 0; background: transparent; color: #5a6670; font-size: 13px; font-weight: 500; cursor: pointer; }
.opening-nav-trigger svg{ width: 11px; height: 11px; fill: none; stroke: currentColor; stroke-width: 1.2; transition: transform .16s ease; }
.opening-nav-trigger[aria-expanded="true"]{ color: #0f141a; }
.opening-nav-trigger[aria-expanded="true"] svg{ transform: rotate(180deg); }
.opening-nav-trigger:focus-visible{ outline: 2px solid #6f8ea3; outline-offset: 5px; border-radius: 2px; }
.opening-dropdown{ position: absolute; top: 100%; left: -24px; width: 270px; padding: 12px; background: #f8fafb; border: 1px solid #dce4e9; border-radius: 14px; box-shadow: 0 18px 48px -22px rgba(30,52,67,.3); opacity: 0; visibility: hidden; transform: translateY(7px); transition: opacity .17s ease, transform .17s ease, visibility .17s; }
.opening-dropdown-platform{ width: 510px; display: grid; grid-template-columns: 1fr 1fr; }
.opening-nav-group.is-open .opening-dropdown{ opacity: 1; visibility: visible; transform: translateY(0); }
.homepage-header .opening-dropdown a{ display: block; padding: 15px 13px; white-space: normal; border-radius: 7px; transition: background .16s ease; }
.homepage-header .opening-dropdown a:hover, .homepage-header .opening-dropdown a:focus-visible{ background: #eaf0f4; }
.homepage-header .opening-dropdown a::after{ display: none; }
.opening-dropdown strong{ display: block; color: #263b49; font-size: 13px; font-weight: 600; }
.opening-dropdown span{ display: block; margin-top: 5px; color: #6a7983; font-size: 11px; line-height: 1.6; font-weight: 400; }
.opening-mobile-group{ border-bottom: 1px solid #dde3e8; }
.opening-mobile-group summary{ padding: 13px 8px; font-size: 14px; color: #35424c; cursor: pointer; }
.opening-mobile-group a{ display: block; padding: 11px 20px; font-size: 13px; color: #5a6670; }
.homepage-header .mobile-nav-panel{ max-height: calc(100dvh - 88px); overflow-y: auto; }
@media (max-width: 1100px){.opening-trust .container, .opening-metrics .container{ width: calc(100% - 64px); }
}
@media (max-width: 767px){.opening-trust .container, .opening-metrics .container{ width: calc(100% - 40px); }
.opening-trust .container{ transform: none; }
}
@media (prefers-reduced-motion: reduce){.opening-trust .container{ transform: none; }
.opening-dropdown, .opening-nav-trigger svg{ transition: none; }
}
.site-header.homepage-header{ position: fixed; inset: 0 0 auto; z-index: 1000; background: rgba(238,242,245,.08); border-bottom-color: rgba(90,112,129,.12); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); transition: background .3s ease, backdrop-filter .3s ease; }
.homepage-opening .homepage-header{ background: rgba(238,242,245,.08); }
.site-header.homepage-header.is-scrolled{ background: rgba(238,242,245,.88); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.homepage-header .nav{ min-height: 56px; height: 56px; }
.homepage-header .nav-cta .button{ min-height: 34px; padding: 8px 16px; }
.homepage-header .mobile-nav-toggle{ width: 36px; height: 36px; }
.homepage-header .mobile-nav-panel{ top: 56px; max-height: calc(100dvh - 56px); }
.opening-proof .container, .opening-platform .container{ width: min(1360px, calc(100% - 96px)); }
@media (max-width: 1100px){.opening-proof .container, .opening-platform .container{ width: calc(100% - 64px); }
}
@media (max-width: 767px){.opening-proof .container, .opening-platform .container{ width: calc(100% - 40px); }
}
.homepage-actions .button{
      position: relative; isolation: isolate; overflow: hidden; border-radius: 7px;
      border: 1px solid rgba(36,58,73,.7);
      background: linear-gradient(180deg, #344f60, #263b49);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.2), inset 0 -1px 0 rgba(12,25,34,.24), 0 5px 12px -6px rgba(38,59,73,.4);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
.homepage-actions .button::after{
      content: ''; position: absolute; inset: 0 auto 0 0; width: 38%; pointer-events: none;
      background: linear-gradient(105deg, transparent, rgba(255,255,255,.2), transparent);
      transform: translateX(-160%) skewX(-18deg); opacity: 0;
    }
@media (hover: hover){.homepage-actions .button:hover{ transform: translateY(-1px); box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 7px 16px -7px rgba(38,59,73,.4); }
.homepage-actions .button:hover::after{ animation: hero-cta-gleam .52s ease-out both; }
}
.homepage-actions .button:active{ transform: translateY(0); box-shadow: inset 0 1px 3px rgba(12,25,34,.16); }
@media (prefers-reduced-motion: reduce){.homepage-actions .button{ transition: none; }
.homepage-actions .button:hover::after{ animation: none; }
.homepage-actions .button:hover, .homepage-actions .button:active{ transform: none; }
}
.dark-product-area .container{ width: min(1360px,calc(100% - 96px)); }
@media (max-width: 1100px){.dark-product-area .container{ width: calc(100% - 64px); }
}
@media (max-width: 767px){.dark-product-area .container{ width: calc(100% - 40px); }
}
.homepage-actions .button-dark{
      background: linear-gradient(180deg,rgba(52,79,96,.82),rgba(38,59,73,.74));
      border-color: rgba(66,91,107,.5); backdrop-filter: blur(9px); -webkit-backdrop-filter: blur(9px);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(12,25,34,.16),0 6px 16px -10px rgba(38,59,73,.4);
    }
.homepage-actions .button-dark:hover{ background: linear-gradient(180deg,rgba(52,79,96,.87),rgba(38,59,73,.79)); }
.site-header.homepage-header .nav-cta .button-dark,
    .homepage-actions .button{
      position: relative; isolation: isolate; overflow: hidden; box-sizing: border-box;
      height: 40px; min-height: 40px; padding: 0 19px; border-radius: 6px;
      display: inline-flex; align-items: center; justify-content: center;
      color: #243743; font-size: 13px; font-weight: 600; line-height: 1;
      border: 1px solid rgba(121,143,158,.28);
      background: linear-gradient(180deg,rgba(172,187,198,.22),rgba(151,169,182,.14));
      backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.55), inset 0 -1px 0 rgba(91,112,128,.06), 0 3px 10px -7px rgba(32,51,65,.22);
      transition: background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
    }
.site-header.homepage-header .nav-cta .button-dark::after,
    .homepage-actions .button::after{
      content: ''; position: absolute; inset: 0 auto 0 0; width: 38%; pointer-events: none;
      background: linear-gradient(105deg,transparent,rgba(255,255,255,.3),transparent);
      transform: translateX(-160%) skewX(-18deg); opacity: 0;
    }
@media (hover: hover) and (prefers-reduced-motion: no-preference){.site-header.homepage-header .nav-cta .button-dark:hover,
      .homepage-actions .button:hover{
        background: linear-gradient(180deg,rgba(172,187,198,.3),rgba(151,169,182,.21));
        border-color: rgba(121,143,158,.48); transform: translateY(-1px);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.76),0 7px 18px -11px rgba(32,51,65,.34);
      }
.site-header.homepage-header .nav-cta .button-dark:hover::after,
      .homepage-actions .button:hover::after{ animation: hero-cta-gleam .52s ease-out both; }
}
@media (max-width: 767px){.homepage-actions .button{ background: linear-gradient(180deg,rgba(172,187,198,.32),rgba(151,169,182,.24)); padding-inline: 16px; }
}
@media (prefers-reduced-motion: reduce){.site-header.homepage-header .nav-cta .button-dark,.homepage-actions .button{ transition: none; }
.site-header.homepage-header .nav-cta .button-dark:hover::after,.homepage-actions .button:hover::after{ animation: none; }
}
@media (max-width: 767px){.homepage-actions .button{ min-height: 44px; height: 44px; }
}
.site-header.homepage-header{ position: fixed; z-index: 10000; --nav-ink: #35424c; background: rgba(238,242,245,.16); border-bottom-color: rgba(90,112,129,.12); transition: background .28s ease,border-color .28s ease; }
.site-header.homepage-header.is-scrolled{ background: rgba(238,242,245,.88); }
.homepage-header .brand,.homepage-header .nav-links,.homepage-header .nav-links > a,.homepage-header .opening-nav-trigger,.homepage-header .homepage-login{ color: var(--nav-ink); transition: color .28s ease; }
.homepage-header .brand-logo{ filter: grayscale(1) brightness(.2); transition: filter .28s ease; }
.site-header.homepage-header.nav-dark,.site-header.homepage-header.nav-dark.is-scrolled{ --nav-ink: #e3eaf0; background: rgba(15,24,32,.82); border-bottom-color: rgba(169,189,203,.15); }
.homepage-header.nav-dark .brand-logo{ filter: grayscale(1) brightness(0) invert(1); }
.site-header.homepage-header.nav-dark .nav-cta .button-dark{ color: #e3eaf0; border-color: rgba(175,194,208,.3); background: linear-gradient(180deg,rgba(156,176,192,.18),rgba(133,156,174,.1)); }
.homepage-header.nav-dark .mobile-nav-toggle{ color: #e3eaf0; border-color: rgba(175,194,208,.25); background: rgba(111,136,154,.1); }
.homepage-header.nav-dark .mobile-nav-toggle span{ background: #e3eaf0; }
.homepage-header .opening-dropdown{ color: #263b49; background: rgba(245,247,248,.98); }
.homepage-header .opening-dropdown a,.homepage-header .opening-dropdown strong{ color: #263b49; }
.homepage-header .opening-dropdown span{ color: #5a6670; }
.homepage-header.nav-dark .mobile-nav-panel{ background: rgba(18,28,37,.98); color: #e3eaf0; border-color: rgba(175,194,208,.2); }
.homepage-header.nav-dark .mobile-nav-panel a:not(.button),.homepage-header.nav-dark .mobile-nav-panel summary{ color: #e3eaf0; border-color: rgba(175,194,208,.18); }
.site-footer{ position: relative; isolation: isolate; background: #101820 url('./tendersnap-dark-mist.png') center / cover no-repeat; color: #c4d0d9; border-top: 0; padding: 270px 0 30px; }
.site-footer::before{ content: ''; position: absolute; inset: 0 0 auto; height: 220px; z-index: -1; background: linear-gradient(180deg,#eef2f5,rgba(225,234,240,.92) 12%,rgba(159,178,192,.62) 41%,rgba(62,84,101,.26) 72%,transparent); }
.site-footer .footer-brand,.site-footer .footer-group h3{ color: #e3eaf0; }
.site-footer .footer-description,.site-footer .footer-group a,.site-footer .footer-bottom{ color: #bccbd6; }
.site-footer a:hover{ color: #fff; }
.site-footer .footer-logo{ filter: grayscale(1) brightness(0) invert(1); }
.site-footer .footer-bottom{ border-color: rgba(175,194,208,.18); }
@media (max-width: 767px){.site-footer{ padding-top: 210px; }
.site-footer::before{ height: 160px; }
}
@media (prefers-reduced-motion: reduce){.homepage-header,.homepage-header .brand,.homepage-header .nav-links a,.homepage-header .opening-nav-trigger,.homepage-header .brand-logo{ transition: none; }
}
.site-footer{ margin-top: -35px; padding: 145px 0 22px; background-color: #101820; mask-image: linear-gradient(180deg,transparent,#000 35px); }
.site-footer::before{ height: 125px; background: #eef2f5 url('./tendersnap-platform-ribbons.png') center bottom / cover no-repeat; mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221440%22%20height%3D%22180%22%20viewBox%3D%220%200%201440%20180%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22f%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%22.2%22%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22white%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22b%22%3E%3CfeGaussianBlur%20stdDeviation%3D%2214%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23f)%22%20filter%3D%22url(%23b)%22%20d%3D%22M-60%20-60H1500V85C1250%20175%201150%20105%20920%20155S520%2085%20300%20135S80%20100%20-60%20150Z%22%2F%3E%3C%2Fsvg%3E"); mask-size: 100% 100%; }
.site-footer .footer-grid{ gap: 28px; }
.site-footer .footer-group ul{ gap: 7px; }
.site-footer .footer-bottom{ margin-top: 24px; padding-top: 18px; }
@media (max-width: 767px){.site-footer{ margin-top: -25px; padding: 112px 0 20px; mask-image: linear-gradient(180deg,transparent,#000 25px); }
.site-footer::before{ height: 100px; }
.site-footer .footer-grid{ gap: 22px 18px; }
}
.site-footer{ padding: 100px 0 16px; }
.site-footer::before{ height: 105px; mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20180%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22f%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%22.12%22%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22white%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22b%22%20x%3D%22-20%25%22%20y%3D%22-40%25%22%20width%3D%22140%25%22%20height%3D%22180%25%22%3E%3CfeGaussianBlur%20stdDeviation%3D%2210%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23f)%22%20filter%3D%22url(%23b)%22%20d%3D%22M-80%20-80H1520V112C1240%20160%201160%2060%20940%20114S620%20178%20390%20109S80%20165%20-80%20128Z%22%2F%3E%3C%2Fsvg%3E"); }
.site-footer .footer-grid{ grid-template-columns: minmax(190px,1.35fr) minmax(155px,1.1fr) minmax(155px,1.1fr) repeat(4,minmax(65px,.6fr)); gap: 22px; }
.footer-brand-area{ text-align: center; }
.site-footer .footer-brand-row{ display: flex; justify-content: center; margin: 0 0 3px; }
.site-footer .footer-logo{ width: 88px; height: 88px; filter: grayscale(1) invert(1) brightness(.94); }
.site-footer .footer-description{ font-size: 12px; line-height: 1.6; margin: 0 auto; max-width: 260px; }
.site-footer .footer-group h3{ margin-bottom: 10px; }
.site-footer .footer-group ul{ gap: 5px; }
.site-footer .footer-group a{ font-size: 12px; line-height: 1.35; }
.site-footer .footer-bottom{ margin-top: 20px; padding-top: 14px; font-size: 11px; }
@media (max-width: 1100px){.site-footer .footer-grid{ grid-template-columns: minmax(170px,1.1fr) repeat(3,minmax(0,1fr)); gap: 18px 25px; }
.site-footer .footer-grid > :first-child{ grid-column: auto; grid-row: span 2; }
.site-footer{ padding-top: 90px; }
}
@media (max-width: 767px){.site-footer{ padding: 78px 0 14px; }
.site-footer::before{ height: 90px; }
.site-footer .footer-grid{ grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 20px; }
.site-footer .footer-grid > :first-child{ grid-column: 1 / -1; grid-row: auto; }
.site-footer .footer-logo{ width: 72px; height: 72px; }
.site-footer .footer-description{ max-width: 330px; }
.site-footer .footer-group ul{ gap: 4px; }
.site-footer .footer-group li{ font-size: 12px; line-height: 1.35; }
.site-footer .footer-bottom{ margin-top: 16px; padding-top: 12px; }
}
@media (max-width: 767px){.site-footer{ padding: 72px 0 12px; }
.site-footer::before{ height: 80px; }
.site-footer .footer-logo{ width: 64px; height: 64px; }
.site-footer .footer-grid{ gap: 12px 20px; }
.site-footer .footer-group h3{ margin-bottom: 8px; }
.site-footer .footer-bottom{ margin-top: 12px; padding-top: 10px; }
}
.homepage-header .brand-logo,.homepage-header.nav-dark .brand-logo{ filter: none; width: 36px; height: 36px; object-fit: contain; transition: none; }
.site-footer .footer-logo{ width: 80px; height: 80px; filter: none; object-fit: contain; }
@media (max-width: 767px){.site-footer .footer-logo{ width: 64px; height: 64px; }
}
