/* =========================================================
       DESIGN SYSTEM
       ========================================================= */

    :root {
      --coral: #E85D4A;
      --coral-deep: #C6432F;
      --coral-light: #F17B69;

      --coral-soft: #FBE9E5;
      --coral-mist: #FFF5F2;

      --ink: #22252B;
      --ink-soft: #6B625F;
      --ink-muted: #948C87;

      --bg: #FFFDF9;
      --surface: #F7F1E9;
      --surface-strong: #EFE4D8;
      --line: #E8DED5;

      --gold: #D9A441;
      --gold-soft: #FBF3DF;
      --gold-deep: #8A6420;

      --positive: #34785A;
      --positive-soft: #EAF4EE;

      --site-width: 1460px;

      --ease:
        cubic-bezier(.22,.8,.22,1);

      --ease-out:
        cubic-bezier(.16,1,.3,1);
    }


    /* =========================================================
       RESET
       ========================================================= */

    *,
    *::before,
    *::after {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      overflow-x: hidden;

      background: var(--bg);
      color: var(--ink);

      font-family:
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    button,
    input,
    select {
      font: inherit;
    }

    button,
    a {
      -webkit-tap-highlight-color: transparent;
    }

    a {
      color: inherit;
    }


    /* =========================================================
       GLOBAL LAYOUT
       ========================================================= */

    .site-container,
    .header-inner {
      width:
        min(
          var(--site-width),
          calc(100% - 48px)
        );

      margin-inline: auto;
    }


    /* =========================================================
       HEADER
       ========================================================= */

    .qf-header {
      position: sticky;
      top: 0;

      z-index: 1000;

      width: 100%;

      border-bottom:
        1px solid rgba(232,222,213,.68);

      background:
        rgba(255,253,249,.92);

      backdrop-filter:
        blur(18px) saturate(140%);

      -webkit-backdrop-filter:
        blur(18px) saturate(140%);

      transition:
        background 220ms ease,
        border-color 220ms ease,
        box-shadow 220ms ease;
    }

    .qf-header::before {
      content: "";

      position: absolute;

      top: 0;
      left: 0;
      right: 0;

      height: 3px;

      background:
        linear-gradient(
          90deg,
          var(--coral-deep),
          var(--coral),
          #F28A78
        );
    }

    .qf-header.is-scrolled {
      background:
        rgba(255,253,249,.98);

      border-bottom-color:
        var(--line);

      box-shadow:
        0 12px 36px rgba(34,37,43,.055);
    }

    .header-inner {
      height: 76px;

      display: flex;
      align-items: center;

      gap: 18px;
    }


    /* =========================================================
       LOGO
       ========================================================= */

    .logo {
      display: inline-flex;
      align-items: center;

      flex: 0 0 auto;

      text-decoration: none;

      transition:
        transform 180ms var(--ease);
    }

    .logo:hover {
      transform: translateY(-1px);
    }

    .logo-placeholder {
      display: flex;
      align-items: center;

      gap: 9px;

      font-size: 21px;
      font-weight: 790;

      letter-spacing: -.045em;
    }

    .logo-mark {
      width: 35px;
      height: 35px;

      display: grid;
      place-items: center;

      border-radius: 10px;

      background:
        linear-gradient(
          145deg,
          var(--coral),
          var(--coral-deep)
        );

      color: #fff;

      font-size: 12px;
      font-weight: 850;

      box-shadow:
        0 6px 17px rgba(232,93,74,.21);
    }

    .logo-placeholder strong {
      color: var(--coral);
    }


    /* =========================================================
       NAV
       ========================================================= */

    .main-nav {
      margin-left: auto;

      display: flex;
      align-items: center;

      gap: 3px;
    }

    .nav-link {
      position: relative;

      min-height: 42px;

      padding: 0 11px;

      display: inline-flex;
      align-items: center;

      border-radius: 10px;

      color: var(--ink-soft);

      text-decoration: none;

      font-size: 14px;
      font-weight: 590;

      white-space: nowrap;

      transition:
        background 170ms ease,
        color 170ms ease;
    }

    .nav-link::after {
      content: "";

      position: absolute;

      left: 12px;
      right: 12px;
      bottom: 4px;

      height: 2px;

      border-radius: 99px;

      background: var(--coral);

      transform: scaleX(0);

      transition:
        transform 220ms var(--ease);
    }

    .nav-link:hover,
    .nav-link.active {
      color: var(--ink);
      background: var(--coral-mist);
    }

    .nav-link:hover::after,
    .nav-link.active::after {
      transform: scaleX(1);
    }

    .header-divider {
      width: 1px;
      height: 25px;

      margin-inline: 3px;

      background: var(--line);
    }


    /* =========================================================
       HEADER ACTIONS
       ========================================================= */

    .header-search {
      min-height: 44px;

      padding: 0 14px;

      display: inline-flex;
      align-items: center;

      gap: 8px;

      border:
        1px solid rgba(232,93,74,.24);

      border-radius: 12px;

      background: var(--coral-mist);

      color: var(--coral-deep);

      text-decoration: none;

      font-size: 13px;
      font-weight: 700;

      transition:
        background 180ms ease,
        transform 180ms var(--ease),
        box-shadow 180ms ease;
    }

    .header-search:hover {
      transform: translateY(-1px);

      background: var(--coral-soft);

      box-shadow:
        0 7px 20px rgba(232,93,74,.11);
    }

    .header-login {
      min-height: 44px;

      padding: 0 11px;

      display: inline-flex;
      align-items: center;

      color: var(--ink);

      text-decoration: none;

      font-size: 13px;
      font-weight: 650;
    }

    .header-register {
      min-height: 46px;

      padding: 0 17px;

      display: inline-flex;
      align-items: center;

      border-radius: 12px;

      background: var(--coral);

      color: #fff;

      text-decoration: none;

      font-size: 13px;
      font-weight: 730;

      box-shadow:
        0 7px 20px rgba(232,93,74,.18);

      transition:
        transform 180ms var(--ease),
        background 180ms ease,
        box-shadow 180ms ease;
    }

    .header-register:hover {
      transform: translateY(-2px);

      background: var(--coral-deep);

      box-shadow:
        0 11px 26px rgba(198,67,47,.22);
    }


    /* =========================================================
       MOBILE HEADER
       ========================================================= */

    .mobile-toggle {
      display: none;

      position: relative;

      width: 44px;
      height: 44px;

      margin-left: auto;

      border: 0;

      border-radius: 11px;

      background: transparent;

      cursor: pointer;
    }

    .mobile-toggle span {
      position: absolute;

      left: 11px;

      width: 22px;
      height: 2px;

      border-radius: 99px;

      background: var(--ink);

      transition:
        top 220ms var(--ease),
        transform 220ms var(--ease);
    }

    .mobile-toggle span:first-child {
      top: 17px;
    }

    .mobile-toggle span:last-child {
      top: 25px;
    }

    .mobile-toggle.open span:first-child {
      top: 21px;

      transform: rotate(45deg);
    }

    .mobile-toggle.open span:last-child {
      top: 21px;

      transform: rotate(-45deg);
    }

    .mobile-menu {
      display: none;
    }


    /* =========================================================
       HERO
       ========================================================= */

    .hero {
      position: relative;

      overflow: hidden;

      padding:
        86px 0 104px;

      background:
        linear-gradient(
          180deg,
          #FFF5F1 0%,
          var(--bg) 78%
        );
    }

    .hero::before {
      content: "";

      position: absolute;

      top: -430px;
      right: -250px;

      width: 850px;
      height: 850px;

      border-radius: 50%;

      background:
        radial-gradient(
          circle,
          rgba(232,93,74,.16),
          rgba(232,93,74,.04) 45%,
          transparent 72%
        );
    }

    .hero-grid {
      position: relative;

      z-index: 2;

      display: grid;

      grid-template-columns:
        minmax(0,.92fr)
        minmax(600px,1.08fr);

      align-items: center;

      gap:
        clamp(60px,6vw,100px);
    }


    /* =========================================================
       HERO COPY
       ========================================================= */

    .hero-eyebrow {
      margin-bottom: 22px;

      display: inline-flex;
      align-items: center;

      gap: 9px;

      padding: 7px 11px;

      border:
        1px solid rgba(232,93,74,.17);

      border-radius: 99px;

      background:
        rgba(255,255,255,.68);

      color: var(--coral-deep);

      font-size: 11px;
      font-weight: 790;

      letter-spacing: .075em;

      text-transform: uppercase;
    }

    .hero-dot {
      width: 7px;
      height: 7px;

      border-radius: 50%;

      background: var(--coral);

      box-shadow:
        0 0 0 5px rgba(232,93,74,.09);
    }

    .hero-title {
      max-width: 790px;

      margin: 0;

      font-size:
        clamp(55px,5.5vw,88px);

      line-height: .98;

      font-weight: 790;

      letter-spacing: -.067em;
    }

    .hero-title em {
      color: var(--coral);

      font-style: normal;
    }

    .hero-description {
      max-width: 690px;

      margin:
        28px 0 0;

      color: var(--ink-soft);

      font-size:
        clamp(16px,1.35vw,19px);

      line-height: 1.72;
    }

    .hero-description strong {
      color: var(--ink);

      font-weight: 690;
    }

    .hero-actions {
      margin-top: 34px;

      display: flex;
      flex-wrap: wrap;

      gap: 11px;
    }


    /* =========================================================
       BUTTONS
       ========================================================= */

    .button-primary,
    .button-secondary {
      min-height: 52px;

      padding: 0 20px;

      display: inline-flex;
      align-items: center;
      justify-content: center;

      gap: 9px;

      border-radius: 13px;

      text-decoration: none;

      font-size: 14px;
      font-weight: 720;

      transition:
        transform 180ms var(--ease),
        background 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
    }

    .button-primary {
      background: var(--coral);

      color: #fff;

      box-shadow:
        0 9px 24px rgba(232,93,74,.20);
    }

    .button-primary:hover {
      transform: translateY(-2px);

      background: var(--coral-deep);

      box-shadow:
        0 14px 30px rgba(198,67,47,.23);
    }

    .button-secondary {
      border:
        1px solid var(--line);

      background:
        rgba(255,255,255,.75);

      color: var(--ink);
    }

    .button-secondary:hover {
      transform: translateY(-1px);

      border-color:
        rgba(232,93,74,.28);

      background: #fff;
    }


    /* =========================================================
       HERO PRODUCT MOCKUP
       ========================================================= */

    .product-demo {
      position: relative;

      padding:
        18px;

      border:
        1px solid rgba(232,222,213,.9);

      border-radius: 26px;

      background:
        rgba(255,255,255,.77);

      backdrop-filter:
        blur(18px);

      box-shadow:
        0 35px 85px rgba(34,37,43,.13);

      transform:
        rotate(1deg);

      transition:
        transform 650ms var(--ease-out);
    }

    .product-demo:hover {
      transform:
        rotate(0)
        translateY(-4px);
    }

    .demo-browser {
      overflow: hidden;

      border:
        1px solid var(--line);

      border-radius: 18px;

      background: #fff;
    }

    .demo-toolbar {
      height: 43px;

      padding: 0 14px;

      display: flex;
      align-items: center;

      gap: 6px;

      border-bottom:
        1px solid var(--line);

      background:
        #FBF9F6;
    }

    .browser-dot {
      width: 8px;
      height: 8px;

      border-radius: 50%;

      background:
        #D6CEC8;
    }

    .demo-address {
      width: 45%;
      height: 23px;

      margin-left: 8px;

      border-radius: 7px;

      background: var(--surface);
    }

    .demo-content {
      padding: 28px;
    }

    .demo-search-title {
      color: var(--ink-soft);

      font-size: 10px;
      font-weight: 740;

      letter-spacing: .08em;

      text-transform: uppercase;
    }

    .demo-search-box {
      margin-top: 10px;

      padding:
        8px 8px 8px 15px;

      display: flex;
      align-items: center;

      gap: 11px;

      border:
        1px solid rgba(232,93,74,.28);

      border-radius: 13px;

      background:
        var(--coral-mist);

      box-shadow:
        0 0 0 4px rgba(232,93,74,.04);
    }

    .demo-search-box i {
      color: var(--coral);
    }

    .demo-search-text {
      flex: 1;

      color: var(--ink);

      font-size: 13px;
      font-weight: 580;
    }

    .demo-search-button {
      min-height: 38px;

      padding: 0 15px;

      display: grid;
      place-items: center;

      border-radius: 9px;

      background: var(--coral);

      color: #fff;

      font-size: 11px;
      font-weight: 730;
    }

    .demo-result {
      margin-top: 19px;

      padding: 18px;

      border:
        1px solid var(--line);

      border-radius: 14px;

      background: #fff;
    }

    .demo-result-top {
      display: flex;
      align-items: flex-start;

      gap: 13px;
    }

    .demo-company-icon {
      width: 40px;
      height: 40px;

      display: grid;
      place-items: center;

      border-radius: 11px;

      background: var(--coral-soft);

      color: var(--coral-deep);
    }

    .demo-company-content {
      flex: 1;
    }

    .demo-company-name {
      font-size: 14px;
      font-weight: 750;
    }

    .demo-company-meta {
      margin-top: 4px;

      color: var(--ink-soft);

      font-size: 10px;
    }

    .demo-status {
      padding:
        5px 8px;

      border-radius: 7px;

      background: var(--positive-soft);

      color: var(--positive);

      font-size: 9px;
      font-weight: 800;
    }

    .demo-stats {
      margin-top: 17px;

      display: grid;

      grid-template-columns:
        repeat(3,1fr);

      gap: 8px;
    }

    .demo-stat {
      padding: 11px;

      border-radius: 10px;

      background: var(--surface);
    }

    .demo-stat small {
      display: block;

      color: var(--ink-soft);

      font-size: 8px;

      text-transform: uppercase;

      letter-spacing: .04em;
    }

    .demo-stat strong {
      display: block;

      margin-top: 4px;

      font-size: 12px;
    }


    /* =========================================================
       TRUST BAR
       ========================================================= */

    .trust {
      padding:
        26px 0;

      border-top:
        1px solid var(--line);

      border-bottom:
        1px solid var(--line);

      background: #fff;
    }

    .trust-grid {
      display: grid;

      grid-template-columns:
        1fr 1fr 1fr;

      divide: none;
    }

    .trust-item {
      position: relative;

      min-height: 76px;

      padding:
        0 35px;

      display: flex;
      align-items: center;

      gap: 15px;
    }

    .trust-item:first-child {
      padding-left: 0;
    }

    .trust-item:not(:last-child)::after {
      content: "";

      position: absolute;

      top: 10px;
      bottom: 10px;
      right: 0;

      width: 1px;

      background: var(--line);
    }

    .trust-icon {
      width: 43px;
      height: 43px;

      display: grid;
      place-items: center;

      flex: 0 0 auto;

      border-radius: 12px;

      background: var(--coral-soft);

      color: var(--coral-deep);
    }

    .trust-number {
      display: block;

      font-size: 25px;
      font-weight: 790;

      letter-spacing: -.035em;
    }

    .trust-text {
      display: block;

      margin-top: 2px;

      color: var(--ink-soft);

      font-size: 11px;

      line-height: 1.4;
    }


    /* =========================================================
       COMMON SECTION
       ========================================================= */

    .section {
      position: relative;

      padding:
        125px 0;
    }

    .section-kicker {
      margin-bottom: 15px;

      display: inline-flex;
      align-items: center;

      gap: 8px;

      color: var(--coral-deep);

      font-size: 11px;
      font-weight: 790;

      letter-spacing: .08em;

      text-transform: uppercase;
    }

    .section-kicker i {
      font-size: 7px;
    }

    .section-title {
      max-width: 900px;

      margin: 0;

      font-size:
        clamp(40px,4.6vw,70px);

      line-height: 1.03;

      letter-spacing: -.058em;

      font-weight: 770;
    }

    .section-title em {
      color: var(--coral);

      font-style: normal;
    }

    .section-description {
      max-width: 720px;

      margin:
        22px 0 0;

      color: var(--ink-soft);

      font-size: 16px;

      line-height: 1.75;
    }


    /* =========================================================
       SEARCH SECTION
       ========================================================= */

    .search-section {
      background: var(--bg);
    }

    .feature-grid {
      display: grid;

      grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

      gap:
        clamp(60px,7vw,120px);

      align-items: center;
    }

    .feature-points {
      margin-top: 31px;

      display: grid;

      gap: 11px;
    }

    .feature-point {
      padding: 15px;

      display: flex;
      align-items: flex-start;

      gap: 13px;

      border:
        1px solid var(--line);

      border-radius: 14px;

      background: #fff;

      transition:
        transform 190ms var(--ease),
        border-color 190ms ease;
    }

    .feature-point:hover {
      transform: translateX(5px);

      border-color:
        rgba(232,93,74,.26);
    }

    .feature-point-icon {
      width: 37px;
      height: 37px;

      display: grid;
      place-items: center;

      flex: 0 0 auto;

      border-radius: 10px;

      background: var(--coral-soft);

      color: var(--coral-deep);
    }

    .feature-point strong {
      display: block;

      font-size: 13px;
    }

    .feature-point span {
      display: block;

      margin-top: 4px;

      color: var(--ink-soft);

      font-size: 12px;

      line-height: 1.5;
    }


    /* =========================================================
       SEARCH MOCK
       ========================================================= */

    .search-mock {
      position: relative;

      padding: 27px;

      border:
        1px solid var(--line);

      border-radius: 25px;

      background: #fff;

      box-shadow:
        0 28px 70px rgba(34,37,43,.08);
    }

    .mock-top-label {
      color: var(--ink-soft);

      font-size: 10px;
      font-weight: 760;

      text-transform: uppercase;

      letter-spacing: .08em;
    }

    .mock-large-search {
      margin-top: 11px;

      min-height: 58px;

      padding: 0 10px 0 17px;

      display: flex;
      align-items: center;

      gap: 12px;

      border:
        1px solid rgba(232,93,74,.34);

      border-radius: 14px;

      background: var(--coral-mist);
    }

    .mock-large-search i {
      color: var(--coral);
    }

    .mock-large-search-text {
      flex: 1;

      color: var(--ink-soft);

      font-size: 13px;
    }

    .mock-large-search-button {
      min-height: 40px;

      padding: 0 15px;

      display: inline-flex;
      align-items: center;

      border-radius: 10px;

      background: var(--coral);

      color: #fff;

      font-size: 11px;
      font-weight: 740;
    }

    .mock-results-label {
      margin:
        23px 0 10px;

      color: var(--ink-soft);

      font-size: 10px;
    }

    .mock-company-row {
      padding:
        13px 14px;

      display: flex;
      align-items: center;

      gap: 12px;

      border:
        1px solid var(--line);

      border-radius: 11px;

      background: #fff;
    }

    .mock-company-row + .mock-company-row {
      margin-top: 7px;
    }

    .mock-company-logo {
      width: 35px;
      height: 35px;

      display: grid;
      place-items: center;

      border-radius: 9px;

      background: var(--surface);

      color: var(--ink-soft);

      font-size: 12px;
    }

    .mock-company-row-main {
      flex: 1;
    }

    .mock-company-row-main strong {
      display: block;

      font-size: 11px;
    }

    .mock-company-row-main span {
      display: block;

      margin-top: 3px;

      color: var(--ink-soft);

      font-size: 9px;
    }

    .mock-arrow {
      color: var(--coral);
    }


    /* =========================================================
       COMPANY PROFILE SECTION
       ========================================================= */

    .profile-section {
      overflow: hidden;

      background: var(--ink);

      color: #fff;
    }

    .profile-section::before {
      content: "";

      position: absolute;

      top: -350px;
      right: -280px;

      width: 750px;
      height: 750px;

      border-radius: 50%;

      background:
        radial-gradient(
          circle,
          rgba(232,93,74,.22),
          transparent 70%
        );
    }

    .profile-grid {
      position: relative;

      z-index: 2;

      display: grid;

      grid-template-columns:
        minmax(0,1fr)
        minmax(0,1fr);

      gap:
        clamp(60px,7vw,115px);

      align-items: center;
    }

    .profile-section
    .section-title {
      color: #fff;
    }

    .profile-section
    .section-description {
      color:
        rgba(255,255,255,.62);
    }

    .profile-list {
      margin-top: 30px;

      display: grid;

      grid-template-columns:
        repeat(2,minmax(0,1fr));

      gap: 9px;
    }

    .profile-list-item {
      min-height: 49px;

      padding: 0 13px;

      display: flex;
      align-items: center;

      gap: 9px;

      border:
        1px solid rgba(255,255,255,.09);

      border-radius: 11px;

      background:
        rgba(255,255,255,.045);

      color:
        rgba(255,255,255,.76);

      font-size: 11px;
      font-weight: 580;
    }

    .profile-list-item i {
      color: #F28B79;
    }


    /* =========================================================
       COMPANY CARD MOCK
       ========================================================= */

    .company-card {
      padding: 18px;

      border:
        1px solid rgba(255,255,255,.10);

      border-radius: 25px;

      background:
        rgba(255,255,255,.065);

      backdrop-filter:
        blur(12px);

      box-shadow:
        0 30px 75px rgba(0,0,0,.18);
    }

    .company-card-inner {
      overflow: hidden;

      border-radius: 17px;

      background: #FFFDF9;

      color: var(--ink);
    }

    .company-card-head {
      padding: 20px;

      border-bottom:
        1px solid var(--line);
    }

    .company-head-row {
      display: flex;
      align-items: flex-start;

      gap: 13px;
    }

    .company-big-icon {
      width: 45px;
      height: 45px;

      display: grid;
      place-items: center;

      border-radius: 12px;

      background: var(--coral-soft);

      color: var(--coral-deep);
    }

    .company-title-wrap {
      flex: 1;
    }

    .company-title-wrap small {
      color: var(--ink-soft);

      font-size: 9px;
    }

    .company-title-wrap strong {
      display: block;

      margin-top: 3px;

      font-size: 15px;
    }

    .active-pill {
      padding:
        5px 8px;

      border-radius: 7px;

      background: var(--positive-soft);

      color: var(--positive);

      font-size: 9px;
      font-weight: 780;
    }

    .company-info-grid {
      padding: 16px 20px;

      display: grid;

      grid-template-columns:
        repeat(2,1fr);

      gap: 8px;
    }

    .company-info {
      padding: 11px;

      border-radius: 9px;

      background: var(--surface);
    }

    .company-info small {
      display: block;

      color: var(--ink-soft);

      font-size: 8px;

      text-transform: uppercase;
    }

    .company-info strong {
      display: block;

      margin-top: 4px;

      font-size: 11px;
    }

    .locked-data {
      margin:
        0 20px 20px;

      padding: 15px;

      display: flex;
      align-items: center;

      gap: 12px;

      border:
        1px solid rgba(217,164,65,.25);

      border-radius: 11px;

      background: var(--gold-soft);
    }

    .locked-icon {
      width: 34px;
      height: 34px;

      display: grid;
      place-items: center;

      flex: 0 0 auto;

      border-radius: 9px;

      background:
        rgba(217,164,65,.15);

      color: var(--gold-deep);
    }

    .locked-data strong {
      display: block;

      font-size: 11px;
    }

    .locked-data span {
      display: block;

      margin-top: 2px;

      color: var(--ink-soft);

      font-size: 9px;
    }


    /* =========================================================
       FREE / PRO
       ========================================================= */

    .access-section {
      background: #FFF9F6;
    }

    .access-head {
      margin-bottom: 55px;
    }

    .access-grid {
      display: grid;

      grid-template-columns:
        repeat(2,minmax(0,1fr));

      gap: 17px;
    }

    .access-card {
      position: relative;

      overflow: hidden;

      padding: 34px;

      border:
        1px solid var(--line);

      border-radius: 24px;

      background: #fff;
    }

    .access-card.pro {
      border-color:
        rgba(232,93,74,.22);

      background:
        var(--coral);
      color: #fff;
    }

    .access-badge {
      display: inline-flex;

      padding:
        6px 9px;

      border-radius: 8px;

      background: var(--surface);

      color: var(--ink-soft);

      font-size: 9px;
      font-weight: 800;

      letter-spacing: .06em;

      text-transform: uppercase;
    }

    .access-card.pro
    .access-badge {
      background:
        rgba(255,255,255,.15);

      color: #fff;
    }

    .access-card h3 {
      margin:
        27px 0 0;

      font-size: 31px;

      letter-spacing: -.04em;
    }

    .access-card > p {
      max-width: 570px;

      margin:
        12px 0 0;

      color: var(--ink-soft);

      font-size: 14px;

      line-height: 1.65;
    }

    .access-card.pro > p {
      color:
        rgba(255,255,255,.76);
    }

    .access-items {
      margin-top: 27px;

      display: grid;

      gap: 11px;
    }

    .access-item {
      display: flex;
      align-items: flex-start;

      gap: 10px;

      color: var(--ink-soft);

      font-size: 12px;

      line-height: 1.45;
    }

    .access-item i {
      margin-top: 2px;

      color: var(--coral);
    }

    .access-card.pro
    .access-item {
      color:
        rgba(255,255,255,.83);
    }

    .access-card.pro
    .access-item i {
      color: #fff;
    }


    /* =========================================================
       ADVANCED SEARCH
       ========================================================= */

    .advanced-section {
      background: var(--bg);
    }

    .advanced-grid {
      display: grid;

      grid-template-columns:
        minmax(0,.88fr)
        minmax(0,1.12fr);

      gap:
        clamp(60px,7vw,120px);

      align-items: center;
    }


    /* FILTER MOCK */

    .advanced-mock {
      overflow: hidden;

      display: grid;

      grid-template-columns:
        190px 1fr;

      min-height: 480px;

      border:
        1px solid var(--line);

      border-radius: 24px;

      background: #fff;

      box-shadow:
        0 30px 75px rgba(34,37,43,.09);
    }

    .advanced-sidebar {
      padding: 17px;

      border-right:
        1px solid var(--line);

      background: #FBFAF8;
    }

    .filter-title {
      margin-bottom: 13px;

      font-size: 11px;
      font-weight: 760;
    }

    .filter-box {
      height: 37px;

      margin-bottom: 8px;

      display: flex;
      align-items: center;

      padding: 0 10px;

      border:
        1px solid var(--line);

      border-radius: 8px;

      background: #fff;

      color: var(--ink-muted);

      font-size: 9px;
    }

    .filter-row {
      min-height: 39px;

      display: flex;
      align-items: center;
      justify-content: space-between;

      border-top:
        1px solid var(--line);

      color: var(--ink-soft);

      font-size: 9px;
      font-weight: 650;
    }

    .apply-filter {
      margin-top: 12px;

      min-height: 38px;

      display: grid;
      place-items: center;

      border-radius: 8px;

      background: var(--coral);

      color: #fff;

      font-size: 9px;
      font-weight: 730;
    }

    .advanced-results {
      padding: 22px;
    }

    .results-top {
      display: flex;
      align-items: center;
      justify-content: space-between;

      gap: 20px;
    }

    .results-title strong {
      display: block;

      font-size: 13px;
    }

    .results-title span {
      display: block;

      margin-top: 3px;

      color: var(--ink-soft);

      font-size: 9px;
    }

    .export-button {
      min-height: 35px;

      padding: 0 11px;

      display: inline-flex;
      align-items: center;

      gap: 6px;

      border-radius: 8px;

      background: var(--coral-soft);

      color: var(--coral-deep);

      font-size: 9px;
      font-weight: 740;
    }

    .result-table {
      margin-top: 18px;

      border:
        1px solid var(--line);

      border-radius: 10px;

      overflow: hidden;
    }

    .table-row {
      min-height: 52px;

      padding: 0 11px;

      display: grid;

      grid-template-columns:
        1.5fr .8fr .8fr;

      align-items: center;

      border-bottom:
        1px solid var(--line);

      font-size: 9px;
    }

    .table-row:last-child {
      border-bottom: 0;
    }

    .table-row.header {
      min-height: 36px;

      background: var(--surface);

      color: var(--ink-soft);

      font-size: 8px;
      font-weight: 700;

      text-transform: uppercase;
    }

    .table-company strong {
      display: block;
    }

    .table-company span {
      display: block;

      margin-top: 2px;

      color: var(--ink-soft);

      font-size: 8px;
    }


    /* =========================================================
       ENRICHMENT
       ========================================================= */

    .enrichment-section {
      overflow: hidden;

      background:
        linear-gradient(
          180deg,
          #FFF7F3,
          var(--bg)
        );
    }

    .enrichment-grid {
      display: grid;

      grid-template-columns:
        minmax(0,1fr)
        minmax(0,1fr);

      gap:
        clamp(60px,7vw,115px);

      align-items: center;
    }

    .enrichment-cards {
      display: grid;

      grid-template-columns:
        repeat(2,1fr);

      gap: 12px;
    }

    .enrichment-card {
      min-height: 190px;

      padding: 23px;

      border:
        1px solid var(--line);

      border-radius: 19px;

      background: #fff;

      box-shadow:
        0 12px 35px rgba(34,37,43,.04);

      transition:
        transform 220ms var(--ease-out),
        border-color 220ms ease;
    }

    .enrichment-card:hover {
      transform:
        translateY(-5px);

      border-color:
        rgba(232,93,74,.26);
    }

    .enrichment-icon {
      width: 42px;
      height: 42px;

      display: grid;
      place-items: center;

      border-radius: 12px;

      background: var(--coral-soft);

      color: var(--coral-deep);
    }

    .enrichment-card h3 {
      margin:
        24px 0 0;

      font-size: 17px;

      letter-spacing: -.025em;
    }

    .enrichment-card p {
      margin:
        7px 0 0;

      color: var(--ink-soft);

      font-size: 11px;

      line-height: 1.55;
    }

    .enrichment-note {
      margin-top: 27px;

      padding: 15px;

      display: flex;
      align-items: flex-start;

      gap: 11px;

      border:
        1px solid rgba(232,93,74,.15);

      border-radius: 13px;

      background: var(--coral-mist);

      color: var(--ink-soft);

      font-size: 11px;

      line-height: 1.5;
    }

    .enrichment-note i {
      margin-top: 2px;

      color: var(--coral);
    }


    /* =========================================================
       STEPS
       ========================================================= */

    .steps-section {
      background: #fff;

      border-top:
        1px solid var(--line);
    }

    .steps-head {
      margin-bottom: 60px;
    }

    .steps-grid {
      position: relative;

      display: grid;

      grid-template-columns:
        repeat(4,1fr);

      gap: 18px;
    }

    .steps-grid::before {
      content: "";

      position: absolute;

      top: 28px;
      left: 12%;
      right: 12%;

      height: 1px;

      background:
        linear-gradient(
          90deg,
          var(--coral-soft),
          var(--coral),
          var(--coral-soft)
        );
    }

    .step {
      position: relative;

      z-index: 2;

      text-align: center;
    }

    .step-number {
      width: 57px;
      height: 57px;

      margin-inline: auto;

      display: grid;
      place-items: center;

      border:
        6px solid #fff;

      border-radius: 50%;

      background: var(--coral);

      color: #fff;

      font-size: 12px;
      font-weight: 800;

      box-shadow:
        0 6px 18px rgba(232,93,74,.18);
    }

    .step h3 {
      margin:
        20px 0 0;

      font-size: 18px;

      letter-spacing: -.025em;
    }

    .step p {
      max-width: 300px;

      margin:
        8px auto 0;

      color: var(--ink-soft);

      font-size: 12px;

      line-height: 1.6;
    }


    /* =========================================================
       DATA AVAILABILITY
       ========================================================= */

    .availability {
      background: var(--surface);
    }

    .availability-card {
      padding:
        clamp(38px,5vw,65px);

      display: grid;

      grid-template-columns:
        auto 1fr;

      gap: 27px;

      border:
        1px solid var(--line);

      border-radius: 25px;

      background: var(--bg);
    }

    .availability-icon {
      width: 58px;
      height: 58px;

      display: grid;
      place-items: center;

      border-radius: 16px;

      background: var(--gold-soft);

      color: var(--gold-deep);

      font-size: 20px;
    }

    .availability-card h2 {
      margin: 0;

      font-size:
        clamp(28px,3vw,43px);

      letter-spacing: -.045em;
    }

    .availability-card p {
      max-width: 850px;

      margin:
        13px 0 0;

      color: var(--ink-soft);

      font-size: 14px;

      line-height: 1.7;
    }


    /* =========================================================
       CTA
       ========================================================= */

    .cta-section {
      padding:
        95px 0 105px;

      background: var(--bg);
    }

    .cta-card {
      position: relative;

      overflow: hidden;

      padding:
        clamp(50px,7vw,92px);

      display: grid;

      grid-template-columns:
        1.2fr .8fr;

      align-items: center;

      gap: 60px;

      border-radius: 32px;

      background: var(--coral);

      color: #fff;

      box-shadow:
        0 28px 70px rgba(198,67,47,.20);
    }

    .cta-card::before {
      content: "";

      position: absolute;

      top: -290px;
      right: -250px;

      width: 610px;
      height: 610px;

      border-radius: 50%;

      background:
        rgba(255,255,255,.09);
    }

    .cta-copy,
    .cta-actions {
      position: relative;

      z-index: 2;
    }

    .cta-copy h2 {
      max-width: 800px;

      margin: 0;

      font-size:
        clamp(41px,4.7vw,69px);

      line-height: 1.02;

      letter-spacing: -.058em;
    }

    .cta-copy p {
      max-width: 650px;

      margin:
        19px 0 0;

      color:
        rgba(255,255,255,.80);

      font-size: 15px;

      line-height: 1.68;
    }

    .cta-actions {
      display: flex;

      flex-direction: column;

      align-items: flex-end;

      gap: 12px;
    }

    .cta-primary {
      min-height: 54px;

      padding: 0 22px;

      display: inline-flex;
      align-items: center;
      justify-content: center;

      gap: 9px;

      border-radius: 13px;

      background: #fff;

      color: var(--coral-deep);

      text-decoration: none;

      font-size: 14px;
      font-weight: 760;

      box-shadow:
        0 10px 27px rgba(111,36,25,.14);

      transition:
        transform 190ms var(--ease);
    }

    .cta-primary:hover {
      transform: translateY(-3px);
    }

    .cta-secondary {
      color:
        rgba(255,255,255,.82);

      text-decoration: none;

      font-size: 12px;
      font-weight: 670;
    }


    /* =========================================================
       REVEAL
       ========================================================= */

    .reveal {
      opacity: 0;

      transform:
        translateY(38px);

      transition:
        opacity 850ms var(--ease-out),
        transform 850ms var(--ease-out);
    }

    .reveal-left {
      transform:
        translateX(-44px);
    }

    .reveal-right {
      transform:
        translateX(44px);
    }

    .reveal-scale {
      transform:
        translateY(20px)
        scale(.96);
    }

    .reveal.visible {
      opacity: 1;

      transform:
        translate(0,0)
        scale(1);
    }

    .delay-1 {
      transition-delay: 90ms;
    }

    .delay-2 {
      transition-delay: 170ms;
    }

    .delay-3 {
      transition-delay: 250ms;
    }

    .delay-4 {
      transition-delay: 330ms;
    }


    /* =========================================================
       RESPONSIVE HEADER
       ========================================================= */

    @media (max-width: 1220px) {

      .site-container,
      .header-inner {
        width:
          calc(100% - 32px);
      }

      .main-nav,
      .header-divider,
      .header-search,
      .header-login,
      .header-register {
        display: none;
      }

      .mobile-toggle {
        display: block;
      }

      .mobile-menu {
        display: grid;

        grid-template-rows:
          0fr;

        width:
          calc(100% - 24px);

        margin:
          0 auto;

        opacity: 0;

        visibility: hidden;

        transition:
          grid-template-rows 280ms var(--ease),
          opacity 180ms ease,
          visibility 180ms ease,
          padding 180ms ease;
      }

      .mobile-menu.open {
        grid-template-rows:
          1fr;

        padding-bottom: 13px;

        opacity: 1;

        visibility: visible;
      }

      .mobile-menu-inner {
        overflow: hidden;
      }

      .mobile-menu-card {
        max-width: 720px;

        margin:
          0 auto;

        padding: 11px;

        border:
          1px solid var(--line);

        border-radius: 17px;

        background: var(--bg);

        box-shadow:
          0 20px 45px rgba(34,37,43,.10);
      }

      .mobile-nav {
        display: grid;
      }

      .mobile-nav a {
        min-height: 47px;

        padding:
          0 12px;

        display: flex;
        align-items: center;

        border-radius: 10px;

        text-decoration: none;

        font-size: 13px;
        font-weight: 620;
      }

      .mobile-nav a:hover {
        background: var(--coral-mist);

        color: var(--coral-deep);
      }

      .mobile-actions {
        margin-top: 8px;

        padding-top: 10px;

        display: grid;

        grid-template-columns:
          1fr 1fr;

        gap: 8px;

        border-top:
          1px solid var(--line);
      }

      .mobile-actions a {
        min-height: 47px;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 10px;

        text-decoration: none;

        font-size: 13px;
        font-weight: 710;
      }

      .mobile-login {
        border:
          1px solid var(--line);

        background: #fff;
      }

      .mobile-register {
        background: var(--coral);

        color: #fff;
      }

    }


    /* =========================================================
       TABLET
       ========================================================= */

    @media (max-width: 1000px) {

      .hero-grid,
      .feature-grid,
      .profile-grid,
      .advanced-grid,
      .enrichment-grid {
        grid-template-columns:
          1fr;

        gap: 65px;
      }

      .product-demo {
        width:
          min(760px,100%);

        margin-inline:
          auto;
      }

      .trust-grid {
        grid-template-columns:
          1fr;
      }

      .trust-item {
        padding:
          18px 0;
      }

      .trust-item:not(:last-child)::after {
        top: auto;
        left: 0;
        right: 0;
        bottom: 0;

        width: auto;
        height: 1px;
      }

      .access-grid {
        grid-template-columns:
          1fr;
      }

      .steps-grid {
        grid-template-columns:
          repeat(2,1fr);

        row-gap: 45px;
      }

      .steps-grid::before {
        display: none;
      }

      .cta-card {
        grid-template-columns:
          1fr;

        gap: 33px;
      }

      .cta-actions {
        align-items:
          flex-start;
      }

    }


    /* =========================================================
       MOBILE
       ========================================================= */

    @media (max-width: 680px) {

      .site-container,
      .header-inner {
        width:
          calc(100% - 28px);
      }

      .header-inner {
        height: 68px;
      }

      .logo-placeholder {
        font-size: 18px;
      }

      .logo-mark {
        width: 32px;
        height: 32px;

        font-size: 10px;
      }

      .hero {
        padding:
          50px 0 72px;
      }

      .hero-title {
        font-size:
          clamp(46px,13.5vw,65px);
      }

      .hero-description {
        font-size: 15px;
      }

      .hero-actions {
        flex-direction: column;

        align-items: stretch;
      }

      .button-primary,
      .button-secondary {
        width: 100%;
      }

      .product-demo {
        padding: 9px;

        border-radius: 18px;
      }

      .demo-content {
        padding: 17px;
      }

      .demo-search-box {
        align-items: stretch;

        flex-wrap: wrap;
      }

      .demo-search-button {
        width: 100%;
      }

      .demo-stats {
        grid-template-columns:
          1fr;
      }

      .section {
        padding:
          84px 0;
      }

      .profile-list {
        grid-template-columns:
          1fr;
      }

      .company-info-grid {
        grid-template-columns:
          1fr;
      }

      .access-card {
        padding: 26px;
      }

      .advanced-mock {
        grid-template-columns:
          1fr;

        min-height: auto;
      }

      .advanced-sidebar {
        border-right: 0;

        border-bottom:
          1px solid var(--line);
      }

      .table-row {
        grid-template-columns:
          1fr .75fr;
      }

      .table-row > *:nth-child(3) {
        display: none;
      }

      .enrichment-cards {
        grid-template-columns:
          1fr;
      }

      .steps-grid {
        grid-template-columns:
          1fr;
      }

      .step {
        display: grid;

        grid-template-columns:
          57px 1fr;

        gap:
          0 16px;

        text-align: left;
      }

      .step-number {
        grid-row:
          span 2;

        margin: 0;
      }

      .step h3 {
        margin:
          5px 0 0;
      }

      .step p {
        max-width: none;

        margin:
          6px 0 0;
      }

      .availability-card {
        grid-template-columns:
          1fr;
      }

      .cta-section {
        padding:
          72px 0;
      }

      .cta-card {
        padding:
          39px 25px;

        border-radius: 23px;
      }

      .cta-primary {
        width: 100%;
      }

      .mobile-actions {
        grid-template-columns:
          1fr;
      }

    }


    /* =========================================================
       REDUCED MOTION
       ========================================================= */

    @media (prefers-reduced-motion: reduce) {

      *,
      *::before,
      *::after {
        scroll-behavior:
          auto !important;

        animation-duration:
          .01ms !important;

        transition-duration:
          .01ms !important;
      }

      .reveal {
        opacity: 1;

        transform: none;
      }

    }