  :root {
    --navy: #0A1628;
    --navy-light: #162240;
    --blue: #2563EB;
    --blue-light: #3B82F6;
    --blue-50: #EFF6FF;
    --orange: #F59E0B;
    --orange-hover: #D97706;
    --orange-light: #FEF3C7;
    --green: #10B981;
    --red: #EF4444;
    --gray-50: #F8FAFC;
    --gray-100: #F1F5F9;
    --gray-200: #E2E8F0;
    --gray-300: #CBD5E1;
    --gray-400: #94A3B8;
    --gray-500: #64748B;
    --gray-600: #475569;
    --gray-700: #334155;
    --gray-800: #1E293B;
    --gray-900: #0F172A;
    --radius: 16px;
    --shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);
    --shadow-md: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1);
    --shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1);
    --shadow-xl: 0 20px 25px -5px rgba(0,0,0,.1), 0 8px 10px -6px rgba(0,0,0,.1);
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  body { font-family: 'Inter', system-ui, -apple-system, sans-serif; color: var(--gray-800); background: #fff; line-height: 1.6; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; opacity: 1 !important; transition: opacity .15s ease; }
  h1, h2, h3, h4, h5, h6 { letter-spacing: -0.025em; }

  /* ── NAV ── */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    background: rgba(255,255,255,.8); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(0,0,0,.06); padding: 0 2rem; height: 64px;
    display: flex; align-items: center; justify-content: space-between;
    transition: box-shadow .3s, background .3s;
  }
  nav.scrolled { background: rgba(255,255,255,.95); box-shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04); }
  .nav-left { display: flex; align-items: center; gap: 2.5rem; }
  .logo { font-size: 1.3rem; font-weight: 800; color: var(--navy); display: flex; align-items: center; gap: .45rem; text-decoration: none; cursor: pointer; letter-spacing: -0.02em; }
  .logo .logo-text { display: flex; align-items: baseline; line-height: 1; }
  .logo .logo-hu { color: var(--navy); }
  .logo .logo-b { background: linear-gradient(90deg, var(--navy) 35%, var(--orange) 65%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
  .logo .logo-roker { color: var(--orange); }
  .logo svg { flex-shrink: 0; }
  .nav-center { display: flex; gap: .15rem; align-items: center; }
  .nav-center a { text-decoration: none; color: var(--gray-500); font-size: .84rem; font-weight: 500; padding: .45rem .85rem; border-radius: 8px; transition: all .2s; cursor: pointer; }
  .nav-center a:hover { color: var(--gray-800); background: var(--gray-100); }
  .nav-center a.active { color: var(--navy); background: var(--blue-50); font-weight: 600; }
  .nav-right { display: flex; align-items: center; gap: .6rem; }
  /* Lang switcher */
  .lang-switcher { position: relative; }
  .lang-btn { display: flex; align-items: center; gap: .3rem; padding: .3rem .5rem; border: 1px solid var(--gray-200); border-radius: 8px; background: transparent; cursor: pointer; font-size: .75rem; font-weight: 600; color: var(--gray-500); transition: all .2s; }
  .lang-btn:hover { border-color: var(--gray-300); color: var(--gray-700); background: var(--gray-50); }
  .lang-btn svg { width: 13px; height: 13px; }
  .lang-dropdown { position: absolute; top: calc(100% + 8px); right: 0; background: #fff; border: 1px solid var(--gray-200); border-radius: 12px; box-shadow: var(--shadow-xl); display: none; min-width: 160px; z-index: 200; overflow: hidden; padding: .25rem; }
  .lang-dropdown.open { display: block; }
  .lang-option { display: flex; align-items: center; gap: .5rem; padding: .5rem .75rem; font-size: .82rem; color: var(--gray-700); cursor: pointer; transition: all .15s; border-radius: 8px; }
  .lang-option:hover { background: var(--gray-50); }
  .lang-option.active { background: var(--blue-50); color: var(--blue); font-weight: 600; }
  .lang-flag { font-size: 1rem; }
  /* Burger mobile */
  .nav-burger { display: none; background: none; border: none; cursor: pointer; padding: .4rem; color: var(--navy); }
  .nav-burger svg { width: 24px; height: 24px; }
  .mobile-menu { display: none; position: fixed; top: 64px; left: 0; right: 0; bottom: 0; background: rgba(255,255,255,.98); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); z-index: 99; padding: 1.5rem 2rem; flex-direction: column; gap: .25rem; overflow-y: auto; }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { text-decoration: none; color: var(--gray-700); font-size: 1rem; font-weight: 500; padding: .85rem .5rem; border-bottom: 1px solid var(--gray-100); cursor: pointer; border-radius: 8px; transition: background .15s; }
  .mobile-menu a:hover { background: var(--gray-50); }
  .mobile-menu a:last-of-type { border-bottom: none; }
  .mobile-menu .mobile-lang { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--gray-200); }
  .mobile-menu .mobile-lang-btn { padding: .4rem .7rem; border: 1px solid var(--gray-200); border-radius: 8px; font-size: .8rem; font-weight: 600; color: var(--gray-600); cursor: pointer; background: #fff; transition: all .15s; }
  .mobile-menu .mobile-lang-btn.active { border-color: var(--blue); color: var(--blue); background: var(--blue-50); }
  .user-nav { display: flex; align-items: center; gap: .5rem; }
  .user-name { font-size: .82rem; font-weight: 600; color: var(--navy); }
  .user-badge { font-size: .65rem; padding: .15rem .5rem; border-radius: 6px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
  .user-badge.free { background: var(--gray-100); color: var(--gray-500); }
  .user-badge.pro { background: var(--orange-light); color: var(--orange); }
  .user-badge.business { background: var(--navy); color: #fff; }
  .btn-logout { background: none; border: 1px solid var(--gray-200); border-radius: 8px; padding: .3rem .7rem; font-size: .75rem; color: var(--gray-500); cursor: pointer; font-family: inherit; transition: all .15s; }
  .btn-logout:hover { border-color: var(--red); color: var(--red); background: rgba(239,68,68,.04); }
  .btn { display: inline-flex; align-items: center; gap: .5rem; padding: .65rem 1.3rem; border-radius: 10px; font-weight: 600; font-size: .88rem; text-decoration: none; cursor: pointer; border: none; transition: all .2s ease; font-family: inherit; }
  .btn-primary { background: var(--orange); color: #fff; box-shadow: 0 1px 2px rgba(245,158,11,.3); }
  .btn-primary:hover { background: var(--orange-hover); transform: translateY(-1px); box-shadow: 0 4px 12px rgba(245,158,11,.3); }
  .btn-outline { background: transparent; color: var(--gray-700); border: 1.5px solid var(--gray-300); }
  .btn-outline:hover { border-color: var(--gray-400); background: var(--gray-50); color: var(--navy); }
  .btn-navy { background: var(--navy); color: #fff; box-shadow: 0 1px 2px rgba(10,22,40,.2); }
  .btn-navy:hover { background: var(--navy-light); transform: translateY(-1px); box-shadow: 0 4px 12px rgba(10,22,40,.2); }
  .btn-green { background: var(--green); color: #fff; box-shadow: 0 1px 2px rgba(16,185,129,.3); }
  .btn-green:hover { background: #059669; transform: translateY(-1px); }
  .btn-sm { padding: .4rem .85rem; font-size: .8rem; border-radius: 8px; }

  /* ── PAGES ── */
  .page { display: none; padding-top: 64px; min-height: 100vh; }
  .page.active { display: block; }

  /* ── HERO ── */
  .hero {
    padding: 120px 2rem 100px; text-align: center;
    background: var(--navy);
    position: relative;
  }
  .hero::before {
    content: ''; position: absolute; inset: 0;
    background:
      radial-gradient(ellipse 80% 50% at 50% -20%, rgba(37,99,235,.25) 0%, transparent 70%),
      radial-gradient(ellipse 60% 40% at 80% 100%, rgba(245,158,11,.12) 0%, transparent 60%);
  }
  .hero::after {
    content: ''; position: absolute; inset: 0; opacity: .07;
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h40v40H0z' fill='none'/%3E%3Cpath d='M0 20h40M20 0v40' stroke='%23fff' stroke-width='.5'/%3E%3C/svg%3E");
  }
  .hero-content { position: relative; max-width: 820px; margin: 0 auto; z-index: 3; }
  .badge { display: inline-flex; align-items: center; gap: .45rem; background: rgba(255,255,255,.1); color: rgba(255,255,255,.9); padding: .4rem 1rem; border-radius: 24px; font-size: .78rem; font-weight: 500; margin-bottom: 2rem; border: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(8px); }
  .badge .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green); animation: pulse 2s infinite; box-shadow: 0 0 6px rgba(16,185,129,.5); }
  @keyframes pulse { 0%,100% { opacity: 1; } 50% { opacity: .4; } }
  .hero h1 { font-size: 3.6rem; font-weight: 800; color: #fff; line-height: 1.12; margin-bottom: 1.25rem; letter-spacing: -0.03em; }
  .hero h1 .highlight { background: linear-gradient(135deg, var(--orange) 0%, #FBBF24 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
  .hero p { font-size: 1.15rem; color: rgba(255,255,255,.65); max-width: 620px; margin: 0 auto 2.5rem; line-height: 1.7; }

  /* ── SEARCH ── */
  .search-container { max-width: 640px; margin: 0 auto; position: relative; }
  .search-bar { width: 100%; padding: 1.1rem 1.3rem 1.1rem 3.2rem; border: 2px solid rgba(255,255,255,.15); border-radius: 14px; font-size: 1rem; background: rgba(255,255,255,.95); box-shadow: var(--shadow-xl), 0 0 0 1px rgba(255,255,255,.1); outline: none; transition: all .3s; font-family: inherit; color: var(--gray-800); }
  .search-bar:focus { border-color: var(--blue); background: #fff; box-shadow: var(--shadow-xl), 0 0 0 4px rgba(37,99,235,.15); }
  .search-bar::placeholder { color: var(--gray-400); }
  .search-icon { position: absolute; left: 1.1rem; top: 50%; transform: translateY(-50%); color: var(--gray-400); font-size: 1.1rem; }
  .search-btn { position: absolute; right: .5rem; top: 50%; transform: translateY(-50%) !important; transition: background .2s, box-shadow .2s !important; }
  .search-suggestions { position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: #fff; border-radius: 14px; box-shadow: var(--shadow-xl); border: 1px solid var(--gray-200); display: none; z-index: 100; max-height: 400px; overflow-y: auto; }
  .search-suggestions.active { display: block; }
  .suggestion { padding: .8rem 1.2rem; display: flex; justify-content: space-between; align-items: center; cursor: pointer; transition: background .15s; border-bottom: 1px solid var(--gray-100); }
  .suggestion:last-child { border-bottom: none; }
  .suggestion:hover { background: var(--blue-50); }
  .suggestion .model { font-weight: 600; color: var(--gray-800); }
  .suggestion .cat { font-size: .78rem; color: var(--gray-400); }
  .suggestion .price-hint { font-size: .85rem; color: var(--green); font-weight: 600; }
  .trust-bar { display: flex; justify-content: center; gap: 2rem; margin-top: 2.5rem; flex-wrap: wrap; }
  .trust-item { font-size: .84rem; color: rgba(255,255,255,.5); display: flex; align-items: center; gap: .4rem; }

  /* ── SECTIONS ── */
  .section { padding: 80px 2rem; max-width: 1100px; margin: 0 auto; }
  .section-label { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--blue); margin-bottom: .5rem; }
  .section h2 { font-size: 2.1rem; font-weight: 800; color: var(--navy); margin-bottom: .5rem; letter-spacing: -0.025em; }
  .section .subtitle { color: var(--gray-500); margin-bottom: 2.5rem; font-size: 1.05rem; line-height: 1.6; }

  /* ── STATS GRID (homepage) ── */
  .stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; margin: -40px auto 0; max-width: 960px; position: relative; z-index: 2; padding: 0 2rem; }
  .stat-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 1.5rem; text-align: center; transition: all .25s; box-shadow: var(--shadow-md); }
  .stat-card:hover { border-color: var(--blue-light); box-shadow: var(--shadow-lg); transform: translateY(-2px); }
  .stat-card .stat-num { font-size: 2rem; font-weight: 800; color: var(--navy); letter-spacing: -0.02em; }
  .stat-card .stat-label { font-size: .8rem; color: var(--gray-500); margin-top: .25rem; }

  /* ── HOW IT WORKS ── */
  .how-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 2rem; }
  .how-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 2rem 1.5rem; text-align: center; transition: all .25s; }
  .how-card:hover { border-color: var(--blue-light); box-shadow: var(--shadow-md); transform: translateY(-3px); }
  .how-icon { font-size: 2.2rem; margin-bottom: .75rem; width: 56px; height: 56px; display: inline-flex; align-items: center; justify-content: center; background: var(--blue-50); border-radius: 14px; }
  .how-card h3 { font-size: 1.05rem; font-weight: 700; color: var(--navy); margin-bottom: .5rem; }
  .how-card p { font-size: .87rem; color: var(--gray-600); line-height: 1.6; }

  /* ── PREVIEW DEMO ── */
  .preview-demo { max-width: 720px; margin: 2rem auto 0; }
  .preview-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-xl); }
  .preview-header { padding: 1.2rem 1.5rem; border-bottom: 1px solid var(--gray-100); }
  .preview-body { padding: 1.5rem; }
  .preview-fmv-grid { display: grid; grid-template-columns: 1fr 1.2fr 1fr; gap: 1rem; margin-bottom: 1rem; }
  .preview-metric { text-align: center; padding: 1rem .5rem; border-radius: 10px; background: var(--gray-50); }
  .preview-metric.featured { background: var(--orange-light); border: 1.5px solid var(--orange); }
  .pm-label { font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--gray-500); margin-bottom: .3rem; }
  .pm-value { font-size: 1.4rem; font-weight: 800; color: var(--navy); }
  .pm-value.orange { color: var(--orange); font-size: 1.6rem; }
  .pm-sub { font-size: .72rem; color: var(--gray-400); margin-top: .15rem; }
  .preview-extras { display: flex; flex-wrap: wrap; gap: .75rem; font-size: .82rem; color: var(--gray-600); padding: .5rem 0; }
  .preview-extras span { background: var(--gray-50); padding: .35rem .7rem; border-radius: 6px; border: 1px solid var(--gray-200); }

  /* ── AUDIENCE ── */
  .audience-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 2rem; }
  .audience-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 2rem 1.5rem; transition: all .25s; }
  .audience-card:hover { border-color: var(--blue-light); box-shadow: var(--shadow-md); transform: translateY(-3px); }
  .audience-icon { font-size: 1.8rem; margin-bottom: .75rem; width: 52px; height: 52px; display: inline-flex; align-items: center; justify-content: center; background: var(--gray-50); border-radius: 14px; border: 1px solid var(--gray-100); }
  .audience-card h3 { font-size: 1rem; font-weight: 700; color: var(--navy); margin-bottom: .4rem; }
  .audience-card p { font-size: .87rem; color: var(--gray-600); line-height: 1.6; }

  /* ── CATALOGUE ── */
  .catalogue-section { padding: 60px 2rem 40px; max-width: 1320px; margin: 0 auto; }
  .catalogue-layout { display: flex; gap: 1.75rem; margin-top: 1rem; }
  .catalogue-sidebar {
    width: 280px; flex-shrink: 0; align-self: flex-start;
    background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius);
    padding: 1rem; position: static;
  }
  .sidebar-search { width: 100%; padding: .55rem .75rem .55rem 2.2rem; border: 1.5px solid var(--gray-200); border-radius: 10px; font-size: .85rem; font-family: inherit; outline: none; transition: all .2s; background: var(--gray-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2394A3B8' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.868-3.834zm-5.242.156a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3E%3C/svg%3E") no-repeat .7rem center; }
  .sidebar-search:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(37,99,235,.08); background-color: #fff; }
  /* Accordion filter sections */
  .filter-accordion { border-bottom: 1px solid var(--gray-100); }
  .filter-accordion:last-child { border-bottom: none; }
  .filter-accordion-header { display: flex; align-items: center; justify-content: space-between; padding: .7rem 0; cursor: pointer; user-select: none; }
  .filter-accordion-header:hover .filter-accordion-label { color: var(--navy); }
  .filter-accordion-label { font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--gray-400); transition: color .15s; }
  .filter-accordion-arrow { font-size: .7rem; color: var(--gray-400); transition: transform .2s; display: inline-block; }
  .filter-accordion.collapsed .filter-accordion-arrow { transform: rotate(-90deg); }
  .filter-accordion.collapsed .filter-accordion-body { display: none; }
  .filter-accordion-body { padding-bottom: .5rem; }
  .sidebar-list { list-style: none; }
  .sidebar-list li { padding: .25rem 0; }
  .sidebar-list li.child-cat { padding-left: 1.2rem; }
  .sidebar-list label { display: flex; align-items: center; gap: .5rem; font-size: .84rem; color: var(--gray-700); cursor: pointer; transition: color .15s; }
  .sidebar-list label:hover { color: var(--navy); }
  .sidebar-list input[type="checkbox"] { accent-color: var(--blue); width: 15px; height: 15px; flex-shrink: 0; }
  .sidebar-list .count { font-size: .72rem; color: var(--gray-400); margin-left: auto; font-weight: 500; }
  .sidebar-show-more { font-size: .78rem; color: var(--blue); cursor: pointer; padding: .3rem 0; font-weight: 600; border: none; background: none; font-family: inherit; }
  .sidebar-show-more:hover { color: var(--navy); text-decoration: underline; }
  .sidebar-range { display: flex; gap: .5rem; align-items: center; }
  .sidebar-range input { width: 100%; padding: .45rem .6rem; border: 1.5px solid var(--gray-200); border-radius: 6px; font-size: .82rem; font-family: inherit; outline: none; background: var(--gray-50); transition: all .2s; }
  .sidebar-range input:focus { border-color: var(--blue); background: #fff; }
  .sidebar-range span { color: var(--gray-400); font-size: .82rem; }
  .sidebar-select { width: 100%; padding: .5rem .65rem; border: 1.5px solid var(--gray-200); border-radius: 8px; font-size: .85rem; font-family: inherit; outline: none; background: #fff; cursor: pointer; }
  .sidebar-trend-options label { display: flex; align-items: center; gap: .4rem; font-size: .84rem; color: var(--gray-700); cursor: pointer; padding: .2rem 0; }
  .sidebar-trend-options input[type="radio"] { accent-color: var(--blue); }
  .cat-search-hero { margin-bottom: 1.5rem; background: linear-gradient(135deg, var(--navy) 0%, #1a4f7a 100%); border-radius: 16px; padding: 1.5rem 1.5rem; }
  .cat-search-hero .search-bar { border: 2px solid rgba(255,255,255,.2); background: rgba(255,255,255,.95); }
  .cat-search-hero .search-bar:focus { border-color: var(--orange); box-shadow: 0 0 0 4px rgba(244,129,21,.15); }
  .cat-search-hero .search-bar::placeholder { color: var(--gray-400); }
  .catalogue-main { flex: 1; min-width: 0; }
  /* Active filter chips bar */
  .active-filters-bar { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; margin-bottom: 1rem; }
  .active-filters-bar:empty { display: none; margin: 0; }
  .active-filter-chip { display: inline-flex; align-items: center; gap: .3rem; padding: .3rem .7rem; background: var(--blue-50); border: 1px solid rgba(37,99,235,.15); border-radius: 99px; font-size: .78rem; font-weight: 600; color: var(--blue); cursor: default; }
  .active-filter-chip .afc-remove { cursor: pointer; font-size: .85rem; line-height: 1; opacity: .6; transition: opacity .15s; margin-left: .15rem; }
  .active-filter-chip .afc-remove:hover { opacity: 1; }
  .active-filters-clear { font-size: .78rem; color: var(--gray-500); cursor: pointer; font-weight: 600; margin-left: .5rem; border: none; background: none; font-family: inherit; text-decoration: underline; }
  .active-filters-clear:hover { color: var(--red); }
  /* Toolbar: sort + view toggle + per-page */
  .catalogue-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; padding: .6rem .8rem; background: var(--gray-50); border: 1px solid var(--gray-100); border-radius: 10px; }
  .toolbar-left { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
  .toolbar-right { display: flex; align-items: center; gap: .6rem; }
  .toolbar-sort { display: flex; align-items: center; gap: .35rem; }
  .toolbar-sort label { font-size: .78rem; color: var(--gray-500); font-weight: 500; white-space: nowrap; }
  .toolbar-sort select { padding: .32rem .5rem; border: 1px solid var(--gray-200); border-radius: 6px; font-size: .8rem; font-family: inherit; outline: none; background: #fff; cursor: pointer; }
  .toolbar-count { font-size: .82rem; color: var(--gray-500); }
  .toolbar-count strong { color: var(--navy); font-weight: 700; }
  .view-toggle { display: flex; border: 1px solid var(--gray-200); border-radius: 6px; overflow: hidden; }
  .view-toggle-btn { padding: .35rem .55rem; background: #fff; border: none; cursor: pointer; color: var(--gray-400); font-size: .85rem; display: flex; align-items: center; transition: all .15s; }
  .view-toggle-btn:not(:last-child) { border-right: 1px solid var(--gray-200); }
  .view-toggle-btn.active { background: var(--navy); color: #fff; }
  .view-toggle-btn:hover:not(.active) { background: var(--gray-50); color: var(--gray-700); }
  .per-page-select { padding: .32rem .4rem; border: 1px solid var(--gray-200); border-radius: 6px; font-size: .78rem; font-family: inherit; outline: none; background: #fff; cursor: pointer; color: var(--gray-600); }
  .per-page-label { font-size: .75rem; color: var(--gray-400); white-space: nowrap; }
  /* Category grid */
  .cat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: .75rem; }
  .cat-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 1.25rem 1rem; text-align: center; cursor: pointer; transition: all .25s; }
  .cat-card:hover { border-color: var(--blue-light); box-shadow: var(--shadow-md); transform: translateY(-3px); }
  .cat-card .cat-icon { font-size: 1.6rem; margin-bottom: .4rem; width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; background: var(--blue-50); border-radius: 12px; }
  .cat-card .cat-name { font-weight: 700; color: var(--navy); font-size: .85rem; }
  .cat-card .cat-count { font-size: .72rem; color: var(--gray-400); margin-top: .2rem; }
  /* Brand logos grid */
  .brand-filter-bar { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--gray-200); }
  .brand-bar-label { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--gray-400); margin-bottom: .75rem; }
  .brand-strip { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; margin-bottom: 1.25rem; }
  .brand-chip { display: inline-flex; align-items: center; gap: .3rem; padding: .3rem .6rem; border: 1px solid var(--gray-200); border-radius: 20px; background: #fff; font-size: .72rem; font-weight: 600; color: var(--gray-500); cursor: pointer; transition: all .15s; white-space: nowrap; }
  .brand-chip:hover { border-color: var(--blue-light); color: var(--navy); background: var(--blue-50); }
  .brand-chip.active { border-color: var(--green); color: var(--green); background: #f0fdf4; box-shadow: 0 0 0 1.5px var(--green); }
  .brand-chip-logo { height: 16px; width: 16px; object-fit: contain; border-radius: 3px; filter: grayscale(80%) opacity(0.65); transition: filter .15s; flex-shrink: 0; }
  .brand-chip:hover .brand-chip-logo { filter: grayscale(0%) opacity(1); }
  .brand-chip.active .brand-chip-logo { filter: grayscale(0%) opacity(1); }
  .brand-chip .brand-chip-count { font-size: .62rem; font-weight: 500; color: var(--gray-400); }
  .brand-chip.active .brand-chip-count { color: var(--green); }
  /* Breadcrumb */
  .cat-breadcrumb { display: flex; align-items: center; gap: .4rem; font-size: .85rem; margin-bottom: 1.2rem; flex-wrap: wrap; }
  .cat-breadcrumb a { color: var(--blue); font-weight: 500; cursor: pointer; text-decoration: none; }
  .cat-breadcrumb a:hover { color: var(--navy); text-decoration: underline; }
  .cat-breadcrumb .sep { color: var(--gray-300); }
  .cat-breadcrumb .current { color: var(--gray-600); font-weight: 600; }
  .specs-table { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: .5rem; margin: 1rem 0 1.5rem; }
  .specs-table .spec-item { display: flex; align-items: center; gap: .5rem; padding: .5rem .75rem; background: var(--gray-50); border: 1px solid var(--gray-200); border-radius: 8px; font-size: .82rem; }
  .specs-table .spec-label { color: var(--gray-500); font-weight: 600; white-space: nowrap; }
  .specs-table .spec-value { color: var(--navy); font-weight: 700; }
  @media(max-width:600px) { .specs-table { grid-template-columns: 1fr 1fr; } }
  #cookie-banner { position: fixed; bottom: 0; left: 0; right: 0; z-index: 10000; background: var(--navy); color: #fff; padding: 1rem 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; font-size: .85rem; box-shadow: 0 -4px 20px rgba(0,0,0,.3); }
  #cookie-banner p { margin: 0; flex: 1; min-width: 200px; line-height: 1.5; }
  #cookie-banner a { color: var(--orange); text-decoration: underline; }
  #cookie-banner .cb-btns { display: flex; gap: .5rem; flex-shrink: 0; }
  #cookie-banner .cb-btn { padding: .5rem 1.2rem; border-radius: 8px; border: none; font-weight: 700; font-size: .82rem; cursor: pointer; transition: .2s; }
  #cookie-banner .cb-accept { background: var(--orange); color: #fff; }
  #cookie-banner .cb-accept:hover { background: #e0740f; }
  #cookie-banner .cb-refuse { background: transparent; color: var(--gray-400); border: 1px solid var(--gray-500); }
  #cookie-banner .cb-refuse:hover { color: #fff; border-color: #fff; }
  /* Category detail header */
  .cat-detail-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; margin-bottom: .25rem; }
  .cat-detail-header h2 { font-size: 1.4rem; font-weight: 800; color: var(--navy); margin: 0; }
  .cat-detail-count-badge { font-size: .78rem; background: var(--gray-100); color: var(--gray-500); padding: .3rem .7rem; border-radius: 20px; font-weight: 600; }
  /* Subcategory tabs */
  .subcat-bar { display: flex; gap: .4rem; flex-wrap: wrap; margin: .75rem 0 1.25rem; padding-bottom: .75rem; border-bottom: 1px solid var(--gray-100); }
  .subcat-chip { padding: .45rem 1rem; border-radius: 10px; font-size: .82rem; font-weight: 600; border: 1px solid var(--gray-200); background: #fff; color: var(--gray-600); cursor: pointer; transition: all .2s; }
  .subcat-chip:hover { border-color: var(--blue-light); color: var(--blue); background: var(--blue-50); }
  .subcat-chip.active { background: var(--navy); color: #fff; border-color: var(--navy); }
  .subcat-chip .chip-count { font-size: .72rem; opacity: .7; margin-left: .2rem; }
  /* Results bar (kept for compat) */
  .results-bar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem; margin-bottom: .75rem; }
  .results-bar .results-count { font-size: .85rem; color: var(--gray-500); }
  .results-bar .results-count strong { color: var(--navy); }
  .results-bar .results-sort { display: flex; align-items: center; gap: .4rem; }
  .results-bar .results-sort label { font-size: .78rem; color: var(--gray-400); font-weight: 500; }
  .results-bar .results-sort select { padding: .3rem .5rem; border: 1px solid var(--gray-200); border-radius: 6px; font-size: .8rem; font-family: inherit; outline: none; background: #fff; cursor: pointer; }
  /* Product cards — grid view */
  .products-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.25rem; }
  .products-grid.list-view { grid-template-columns: 1fr; gap: .75rem; }
  .product-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 1.3rem 1.4rem; transition: all .25s; cursor: pointer; display: flex; flex-direction: column; position: relative; }
  .product-card:hover { border-color: var(--blue-light); box-shadow: var(--shadow-lg); transform: translateY(-3px); }
  /* Product card — list view */
  .products-grid.list-view .product-card { flex-direction: row; align-items: center; gap: 1.5rem; padding: 1rem 1.4rem; }
  .products-grid.list-view .product-card:hover { transform: translateY(-1px); }
  .products-grid.list-view .prod-top { flex: 1; display: flex; flex-direction: column; }
  .products-grid.list-view .prod-card-center { flex: 1; display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; }
  .products-grid.list-view .prod-fmv { border-top: none; padding-top: 0; margin-top: 0; min-width: 140px; text-align: right; }
  .prod-top { flex: 1; }
  .prod-category-badge { font-size: .65rem; padding: .15rem .5rem; border-radius: 4px; font-weight: 600; background: var(--blue-50); color: var(--blue); display: inline-block; margin-bottom: .4rem; white-space: nowrap; }
  .product-card .prod-brand { font-size: .7rem; color: var(--gray-400); text-transform: uppercase; letter-spacing: .06em; font-weight: 700; }
  .product-card .prod-model { font-size: 1rem; font-weight: 700; color: var(--navy); margin: .2rem 0 .35rem; line-height: 1.3; }
  .product-card .prod-desc { font-size: .8rem; color: var(--gray-500); margin-bottom: .6rem; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .product-card .prod-tags { display: flex; gap: .3rem; flex-wrap: wrap; margin-bottom: .6rem; }
  .prod-tag { font-size: .68rem; padding: .15rem .45rem; border-radius: 4px; font-weight: 600; }
  .prod-tag.offers { background: #E8F8F0; color: var(--green); }
  .prod-tag.co2 { background: #F0F9FF; color: var(--blue); }
  .prod-availability { display: inline-flex; align-items: center; gap: .3rem; font-size: .7rem; font-weight: 600; }
  .prod-availability .avail-dot { width: 7px; height: 7px; border-radius: 50%; display: inline-block; }
  .prod-availability.high .avail-dot { background: var(--green); }
  .prod-availability.high { color: var(--green); }
  .prod-availability.medium .avail-dot { background: var(--orange); }
  .prod-availability.medium { color: var(--orange); }
  .prod-availability.low .avail-dot { background: var(--gray-400); }
  .prod-availability.low { color: var(--gray-400); }
  .product-card .prod-fmv { display: flex; justify-content: space-between; align-items: flex-end; padding-top: .7rem; border-top: 1px solid var(--gray-100); margin-top: auto; }
  .product-card .prod-price { font-size: 1.15rem; font-weight: 800; color: var(--orange); }
  .product-card .prod-range { font-size: .72rem; color: var(--gray-400); margin-top: .1rem; }
  .product-card .prod-no-fmv { font-size: .85rem; color: var(--gray-400); font-style: italic; }
  .product-card .prod-trend { font-size: .75rem; font-weight: 700; padding: .2rem .5rem; border-radius: 4px; }
  .product-card .prod-trend.up { color: var(--red); background: #FEF2F2; }
  .product-card .prod-trend.down { color: var(--green); background: #E8F8F0; }
  .product-card .prod-trend.stable { color: var(--gray-400); background: var(--gray-50); }
  .cat-empty { text-align: center; padding: 3rem; color: var(--gray-400); font-size: 1rem; }
  .cat-empty-icon { font-size: 3rem; margin-bottom: 1rem; opacity: .5; }
  .cat-empty-action { margin-top: 1rem; }
  .products-count { font-size: .85rem; color: var(--gray-500); margin-bottom: .5rem; }
  .pagination { display: flex; align-items: center; justify-content: center; gap: .35rem; margin-top: 1.5rem; flex-wrap: wrap; }
  .pagination:empty { display: none; }
  .page-btn { min-width: 38px; height: 38px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--gray-200); border-radius: 10px; background: #fff; font-size: .85rem; font-weight: 600; color: var(--gray-600); cursor: pointer; transition: all .2s; font-family: inherit; }
  .page-btn:hover { border-color: var(--blue-light); color: var(--blue); background: var(--blue-50); }
  .page-btn.active { background: var(--navy); color: #fff; border-color: var(--navy); }
  .page-btn.disabled { opacity: .4; pointer-events: none; }
  .page-info { font-size: .82rem; color: var(--gray-400); margin: 0 .5rem; }
  /* Mobile filter drawer */
  .mobile-filter-toggle { display: none; }
  .filter-drawer-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,.4); z-index: 200; }
  .filter-drawer-overlay.open { display: block; }
  @media (max-width: 768px) {
    .catalogue-sidebar { display: none; }
    .catalogue-sidebar.drawer-open {
      display: block; position: fixed; top: 0; right: 0; bottom: 0; width: 85%; max-width: 340px;
      z-index: 201; border-radius: 0; border: none; max-height: 100vh; overflow-y: auto;
      box-shadow: -4px 0 20px rgba(0,0,0,.15); animation: slideInRight .25s ease;
    }
    .drawer-close-btn { display: flex; align-items: center; justify-content: space-between; padding: .5rem 0 .75rem; border-bottom: 1px solid var(--gray-100); margin-bottom: .5rem; }
    .drawer-close-btn span { font-size: .9rem; font-weight: 700; color: var(--navy); }
    .drawer-close-btn button { background: none; border: none; font-size: 1.4rem; cursor: pointer; color: var(--gray-400); padding: .2rem; }
    .mobile-filter-toggle { display: flex; gap: .5rem; margin-bottom: .75rem; }
    .mobile-filter-btn { flex: 1; display: flex; align-items: center; justify-content: center; gap: .4rem; padding: .6rem; border: 1.5px solid var(--gray-200); border-radius: 10px; background: #fff; font-size: .85rem; font-weight: 600; color: var(--gray-700); cursor: pointer; font-family: inherit; }
    .mobile-filter-btn:hover { border-color: var(--blue-light); }
    .mobile-filter-btn .mf-count { background: var(--blue); color: #fff; font-size: .7rem; padding: .1rem .4rem; border-radius: 99px; }
  }
  @keyframes slideInRight { from { transform: translateX(100%); } to { transform: translateX(0); } }

  /* ── FMV CARD ── */
  .fmv-card { background: #fff; border-radius: var(--radius); box-shadow: var(--shadow-xl); border: 1px solid var(--gray-200); overflow: hidden; }
  .fmv-header { background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%); color: #fff; padding: 1.5rem 2rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; }
  .fmv-header h3 { font-size: 1.2rem; font-weight: 700; }
  .fmv-header .tags { display: flex; gap: .5rem; flex-wrap: wrap; }
  .tag { padding: .25rem .7rem; border-radius: 8px; font-size: .72rem; font-weight: 600; }
  .tag-green { background: rgba(16,185,129,.15); color: #34D399; }
  .tag-blue { background: rgba(37,99,235,.2); color: #93C5FD; }
  .tag-orange { background: rgba(245,158,11,.2); color: #FCD34D; }
  .fmv-body { padding: 2rem; }
  .fmv-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1.25rem; margin-bottom: 2rem; }
  .fmv-metric { text-align: center; padding: 1.3rem; border-radius: 14px; background: var(--gray-50); border: 1px solid var(--gray-100); transition: all .2s; }
  .fmv-metric:hover { border-color: var(--gray-200); box-shadow: var(--shadow); }
  .fmv-metric .label { font-size: .72rem; color: var(--gray-500); text-transform: uppercase; letter-spacing: .06em; margin-bottom: .35rem; font-weight: 600; }
  .fmv-metric .value { font-size: 1.8rem; font-weight: 800; color: var(--navy); letter-spacing: -0.02em; }
  .fmv-metric .value.orange { color: var(--orange); }
  .fmv-metric .sub { font-size: .78rem; color: var(--gray-400); margin-top: .2rem; }
  .fmv-metric .trend-up { color: var(--red); font-weight: 600; }
  .fmv-metric .trend-down { color: var(--green); font-weight: 600; }
  .fmv-metric .trend-stable { color: var(--gray-500); font-weight: 600; }
  .blurred-section { position: relative; padding: 1.5rem; border-radius: var(--radius); background: var(--gray-50); border: 1px solid var(--gray-200); overflow: hidden; margin-bottom: 1.5rem; }
  .blurred-content { filter: blur(6px); user-select: none; pointer-events: none; }
  .blur-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; background: rgba(248,250,252,.7); backdrop-filter: blur(2px); z-index: 2; }
  .blur-overlay .lock { font-size: 2rem; margin-bottom: .5rem; opacity: .7; }
  .blur-overlay p { font-size: .9rem; color: var(--gray-600); margin-bottom: .75rem; font-weight: 500; }
  .sellers-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1rem; }
  .sellers-header h4 { font-weight: 700; color: var(--navy); }
  .seller-row { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; align-items: center; padding: .85rem 1rem; border-radius: 12px; margin-bottom: .5rem; background: #fff; border: 1px solid var(--gray-100); transition: all .2s; }
  .seller-row:hover { box-shadow: var(--shadow-md); border-color: var(--gray-200); }
  .seller-blurred { filter: blur(5px); user-select: none; }
  .seller-price { font-weight: 700; color: var(--navy); }
  .vs-fmv { font-size: .75rem; font-weight: 600; }
  .vs-fmv.above { color: var(--red); }
  .vs-fmv.below { color: var(--green); }

  /* ── AUTH PAGE ── */
  .auth-page { display: flex; min-height: 100vh; padding-top: 64px; }
  .auth-left { flex: 1; background: linear-gradient(165deg, var(--navy) 0%, var(--navy-light) 100%); color: #fff; padding: 4rem 3rem; display: flex; flex-direction: column; justify-content: center; position: relative; overflow: hidden; }
  .auth-left::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 60% 50% at 30% 50%, rgba(37,99,235,.15) 0%, transparent 70%); }
  .auth-left h2 { font-size: 2rem; font-weight: 800; margin-bottom: 1rem; position: relative; }
  .auth-left p { color: rgba(255,255,255,.65); font-size: 1.05rem; margin-bottom: 2rem; position: relative; }
  .auth-features { list-style: none; position: relative; }
  .auth-features li { padding: .6rem 0; font-size: .95rem; color: rgba(255,255,255,.8); display: flex; align-items: center; gap: .75rem; }
  .auth-features li::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--orange); flex-shrink: 0; }
  .auth-right { flex: 1; display: flex; align-items: center; justify-content: center; padding: 2rem; background: var(--gray-50); }
  .auth-card { background: #fff; border-radius: var(--radius); padding: 2.5rem; width: 100%; max-width: 440px; box-shadow: var(--shadow-xl); border: 1px solid var(--gray-100); }
  .auth-card h2 { font-size: 1.5rem; font-weight: 800; color: var(--navy); margin-bottom: .3rem; }
  .auth-card .auth-sub { font-size: .9rem; color: var(--gray-500); margin-bottom: 2rem; }
  .auth-card .form-group { margin-bottom: 1.2rem; }
  .auth-card .form-group label { display: block; font-size: .82rem; font-weight: 600; color: var(--gray-600); margin-bottom: .4rem; }
  .auth-card .form-group input { width: 100%; padding: .75rem 1rem; border: 1.5px solid var(--gray-200); border-radius: 10px; font-size: .95rem; font-family: inherit; outline: none; transition: all .2s; }
  .auth-card .form-group input:focus { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(37,99,235,.1); }
  .auth-card .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
  .auth-card .auth-error, #verify-error { background: #FEE2E2; color: #DC2626; padding: .6rem .85rem; border-radius: 8px; font-size: .85rem; margin-bottom: 1rem; display: none; }
  .form-error { background: #FEE2E2; color: #DC2626; padding: .6rem .85rem; border-radius: 8px; font-size: .85rem; margin-bottom: 1rem; }
  .form-success { background: #F0FDF4; color: #166534; padding: .6rem .85rem; border-radius: 8px; font-size: .85rem; margin-bottom: 1rem; }
  /* Password toggle eye */
  .pw-wrapper { position: relative; }
  .pw-wrapper input { padding-right: 2.8rem; }
  .pw-toggle { position: absolute; right: .7rem; top: 50%; transform: translateY(-50%); background: none; border: none; cursor: pointer; color: var(--gray-400); padding: .2rem; font-size: 1.1rem; line-height: 1; display: flex; align-items: center; }
  .pw-toggle:hover { color: var(--gray-600); }
  .verify-digit:focus { border-color: var(--blue) !important; box-shadow: 0 0 0 3px rgba(26,111,181,.15); outline: none; }
  .verify-digit.filled { border-color: var(--navy) !important; background: var(--gray-50); }
  /* Password strength indicator */
  .pw-bar { flex:1; height:4px; border-radius:2px; background:var(--gray-200); transition:background .3s; }
  .pw-bar.weak { background:#EF4444; }
  .pw-bar.medium { background:#F59E0B; }
  .pw-bar.strong { background:#22C55E; }
  .pw-bar.very-strong { background:#16A34A; }
  #pw-rules li { transition:color .2s; margin-bottom:.15rem; }
  #pw-rules li.pass { color:#16A34A; }
  .auth-card .auth-switch { text-align: center; margin-top: 1.5rem; font-size: .9rem; color: var(--gray-500); }
  .auth-card .auth-switch a { color: var(--blue); font-weight: 600; cursor: pointer; text-decoration: none; }
  .auth-separator { display: flex; align-items: center; gap: 1rem; margin: 1.2rem 0; color: var(--gray-400); font-size: .82rem; }
  .auth-separator::before, .auth-separator::after { content: ''; flex: 1; border-top: 1px solid var(--gray-200); }
  .btn-google { display: flex; align-items: center; justify-content: center; gap: .6rem; width: 100%; padding: .75rem; border: 1.5px solid var(--gray-200); border-radius: 10px; background: #fff; font-size: .92rem; font-weight: 600; color: var(--gray-800); cursor: pointer; transition: all .2s; }
  .btn-google:hover { border-color: var(--gray-400); background: var(--gray-50); box-shadow: 0 2px 8px rgba(0,0,0,.08); }
  .billing-toggle { display: flex; align-items: center; justify-content: center; gap: .75rem; margin: 1.5rem 0 .5rem; }
  .bt-label { font-size: .9rem; font-weight: 600; color: var(--gray-500); }
  .bt-badge { background: var(--green); color: #fff; font-size: .72rem; font-weight: 700; padding: .2rem .6rem; border-radius: 20px; }
  .toggle-switch { position: relative; width: 48px; height: 26px; display: inline-block; }
  .toggle-switch input { opacity: 0; width: 0; height: 0; }
  .toggle-slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background: var(--gray-300); border-radius: 26px; transition: .3s; }
  .toggle-slider::before { content: ''; position: absolute; width: 20px; height: 20px; left: 3px; bottom: 3px; background: #fff; border-radius: 50%; transition: .3s; }
  .toggle-switch input:checked + .toggle-slider { background: var(--orange); }
  .toggle-switch input:checked + .toggle-slider::before { transform: translateX(22px); }
  .tier-price .price-old { text-decoration: line-through; color: var(--gray-400); font-size: .9rem; font-weight: 400; display: block; line-height: 1; margin-bottom: .2rem; }
  .btn-google svg { width: 20px; height: 20px; flex-shrink: 0; }
  .auth-card .divider { display: flex; align-items: center; gap: 1rem; margin: 1.5rem 0; color: var(--gray-400); font-size: .82rem; }
  .auth-card .divider::before, .auth-card .divider::after { content: ''; flex: 1; height: 1px; background: var(--gray-200); }

  /* ── SELL HERO ── */
  .sell-hero { background: linear-gradient(165deg, var(--navy) 0%, var(--navy-light) 100%); padding: 60px 2rem 50px; color: #fff; position: relative; overflow: hidden; text-align: center; }
  .sell-hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 50% 60% at 80% 30%, rgba(37,99,235,.12) 0%, transparent 70%); }
  .sell-hero-inner { max-width: 900px; margin: 0 auto; position: relative; z-index: 1; }
  .sell-hero-inner h1 { font-size: 2rem; font-weight: 800; margin-bottom: .6rem; color: #fff; }
  .sell-hero-inner > p { color: rgba(255,255,255,.75); font-size: 1.05rem; margin-bottom: 2rem; max-width: 700px; margin-left: auto; margin-right: auto; }
  .sell-hero-steps { display: flex; gap: 2rem; justify-content: center; flex-wrap: wrap; }
  .sell-hero-step { display: flex; gap: .75rem; align-items: flex-start; text-align: left; max-width: 240px; }
  .sell-hero-step strong { display: block; font-weight: 700; color: #fff; font-size: .9rem; margin-bottom: .15rem; }
  .sell-hero-step span { font-size: .8rem; color: rgba(255,255,255,.6); line-height: 1.35; }
  .step-num { width: 32px; height: 32px; border-radius: 50%; background: var(--orange); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: .85rem; flex-shrink: 0; }

  /* ── SELL CARDS ── */
  .sell-cards-section { max-width: 1100px; margin: 0 auto; padding: 2.5rem 2rem 1.5rem; }
  .sell-cards-grid { display: grid; grid-template-columns: 1fr auto 1fr; gap: 1.5rem; align-items: start; }
  .sell-card { background: #fff; border: 1.5px solid var(--gray-200); border-radius: var(--radius); padding: 2rem; box-shadow: var(--shadow-md); }
  .sell-card-header { display: flex; gap: 1rem; align-items: flex-start; margin-bottom: 1.5rem; }
  .sell-card-icon { font-size: 2rem; flex-shrink: 0; }
  .sell-card-header h2 { font-size: 1.2rem; font-weight: 800; color: var(--navy); margin-bottom: .3rem; }
  .sell-card-header p { font-size: .85rem; color: var(--gray-500); line-height: 1.4; }

  /* OU separator */
  .sell-or-separator { display: flex; align-items: center; justify-content: center; margin-top: 80px; }
  .sell-or-separator span { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--navy); color: #fff; font-weight: 800; font-size: .85rem; letter-spacing: .5px; box-shadow: var(--shadow-md); flex-shrink: 0; }

  /* CSRD banner */
  .sell-csrd-banner { max-width: 1100px; margin: 0 auto; padding: 0 2rem 2.5rem; margin-top: 1rem; }
  .sell-csrd-banner-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; background: linear-gradient(135deg, #065F46 0%, #047857 100%); border-radius: var(--radius); padding: 1.5rem 2rem; color: #fff; }
  .sell-csrd-banner-inner h3 { font-size: 1.1rem; font-weight: 700; margin-bottom: .3rem; }
  .sell-csrd-banner-inner p { font-size: .85rem; color: rgba(255,255,255,.75); }

  /* ── CSRD PAGE ── */
  .csrd-section { max-width: 900px; margin: 0 auto; padding: 60px 2rem 80px; }
  .csrd-inner { }
  .csrd-header { display: flex; gap: 1rem; align-items: flex-start; margin-bottom: 2rem; }
  .csrd-header h1 { font-size: 1.6rem; font-weight: 800; color: var(--navy); margin-bottom: .3rem; }
  .csrd-header p { font-size: .9rem; color: var(--gray-500); line-height: 1.5; }
  .csrd-auth-card { text-align: center; background: var(--gray-50); border: 1.5px solid var(--gray-200); border-radius: var(--radius); padding: 3rem 2rem; max-width: 550px; margin: 0 auto; }
  .csrd-auth-card h3 { font-size: 1.15rem; font-weight: 700; color: var(--navy); margin-bottom: .5rem; }
  .csrd-auth-card p { font-size: .9rem; color: var(--gray-500); line-height: 1.5; }
  .csrd-method-box { background: #F0F9FF; border: 1.5px solid #BAE6FD; border-radius: var(--radius); padding: 1.5rem 2rem; margin-bottom: 1.5rem; }
  .csrd-method-box h3 { font-size: 1rem; font-weight: 700; color: var(--navy); margin-bottom: .75rem; }
  .csrd-method-box ul { list-style: none; padding: 0; margin: 0; }
  .csrd-method-box li { font-size: .82rem; color: var(--gray-600); line-height: 1.5; padding: .3rem 0; padding-left: 1.2rem; position: relative; }
  .csrd-method-box li::before { content: "•"; position: absolute; left: 0; color: var(--blue); font-weight: 700; }
  .csrd-method-box li strong { color: var(--navy); }
  .csrd-form-card { background: #fff; border: 1.5px solid var(--gray-200); border-radius: var(--radius); padding: 2rem; margin-bottom: 2rem; }
  .csrd-disclaimer { margin-top: 1.5rem; padding: 1.25rem 1.5rem; background: #FFFBEB; border: 1.5px solid #FDE68A; border-radius: var(--radius); }
  .csrd-disclaimer h4 { font-size: .9rem; font-weight: 700; color: #92400E; margin-bottom: .5rem; }
  .csrd-disclaimer p { font-size: .8rem; color: #78350F; line-height: 1.5; margin: 0; }
  .cc-sub { font-size: .7rem; color: var(--gray-400); margin-top: .15rem; }
  .form-group { margin-bottom: 1rem; }
  .form-group label { display: block; font-size: .8rem; font-weight: 600; color: var(--gray-600); margin-bottom: .35rem; }
  .form-group input, .form-group select, .form-group textarea { width: 100%; padding: .7rem .9rem; border: 1.5px solid var(--gray-200); border-radius: 10px; font-size: .9rem; font-family: inherit; outline: none; transition: all .2s; }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(37,99,235,.08); }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
  .estimate-result { background: var(--orange-light); border: 1.5px solid var(--orange); border-radius: 8px; padding: 1rem; margin-top: 1rem; text-align: center; }
  .estimate-result .est-value { font-size: 1.6rem; font-weight: 800; color: var(--orange); }
  .estimate-result .est-sub { font-size: .75rem; color: var(--gray-500); }

  /* ── BUYBACK SEARCH + CART ── */
  .bb-search-wrap { position: relative; }
  .bb-search-wrap input { padding-left: 2.5rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2394A3B8' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.242.156a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: .85rem center; }
  .bb-search-results { position: absolute; top: 100%; left: 0; right: 0; background: #fff; border: 1.5px solid var(--gray-200); border-radius: 0 0 10px 10px; box-shadow: var(--shadow-lg); max-height: 320px; overflow-y: auto; z-index: 100; }
  .bb-sr-item { display: flex; justify-content: space-between; align-items: center; padding: .7rem .9rem; cursor: pointer; transition: background .15s; border-bottom: 1px solid var(--gray-100); }
  .bb-sr-item:hover { background: var(--gray-50); }
  .bb-sr-item:last-child { border-bottom: none; }
  .bb-sr-info { flex: 1; min-width: 0; }
  .bb-sr-name { font-weight: 600; font-size: .88rem; color: var(--navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .bb-sr-cat { font-size: .75rem; color: var(--gray-400); display: flex; align-items: center; gap: .4rem; margin-top: .1rem; }
  .bb-sr-badge { font-size: .65rem; font-weight: 700; padding: .1rem .4rem; border-radius: 4px; text-transform: uppercase; }
  .bb-sr-badge.fmv { background: rgba(46,204,113,.12); color: var(--green); }
  .bb-sr-badge.nofmv { background: var(--gray-100); color: var(--gray-400); }
  .bb-sr-price { font-weight: 700; font-size: .9rem; color: var(--orange); white-space: nowrap; margin-left: .75rem; }
  .bb-sr-empty { padding: 1rem; text-align: center; color: var(--gray-400); font-size: .88rem; }
  .bb-cart-header { display: flex; justify-content: space-between; align-items: center; margin: 1.25rem 0 .75rem; }
  .bb-cart-title { font-weight: 700; font-size: .95rem; color: var(--navy); }
  .bb-cart-count { background: var(--orange); color: #fff; font-size: .75rem; font-weight: 700; width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
  .bb-cart-item { background: var(--gray-50); border: 1px solid var(--gray-200); border-radius: 10px; padding: .75rem; margin-bottom: .5rem; }
  .bb-ci-top { display: flex; justify-content: space-between; align-items: center; }
  .bb-ci-name { font-weight: 600; font-size: .88rem; color: var(--navy); }
  .bb-ci-remove { background: none; border: none; font-size: 1.2rem; color: var(--gray-400); cursor: pointer; padding: 0 .25rem; line-height: 1; }
  .bb-ci-remove:hover { color: var(--red); }
  .bb-ci-controls { display: flex; align-items: center; gap: .75rem; margin-top: .5rem; flex-wrap: wrap; }
  .bb-ci-field { display: flex; flex-direction: column; gap: .15rem; }
  .bb-ci-field label { font-size: .7rem; font-weight: 600; color: var(--gray-400); text-transform: uppercase; }
  .bb-ci-field input, .bb-ci-field select { padding: .35rem .5rem; border: 1px solid var(--gray-200); border-radius: 6px; font-size: .82rem; font-family: inherit; width: 80px; }
  .bb-ci-field select { width: 120px; }
  .bb-ci-est { margin-left: auto; font-weight: 700; font-size: .9rem; color: var(--green); }
  .bb-ci-est.pending { color: var(--blue); font-weight: 600; font-size: .82rem; }
  .bb-cart-total { display: flex; justify-content: space-between; align-items: center; background: linear-gradient(135deg, var(--navy), var(--navy-light)); border-radius: 10px; padding: .85rem 1rem; color: #fff; margin: .75rem 0; }
  .bb-cart-total span:first-child { font-size: .85rem; font-weight: 600; }
  .bb-total-value { font-size: 1.2rem; font-weight: 800; color: var(--orange); }
  .bb-consent { display: flex; align-items: flex-start; gap: .6rem; font-size: .82rem; color: var(--gray-500); margin: 1rem 0; cursor: pointer; line-height: 1.4; }
  .bb-consent input[type="checkbox"] { margin-top: .15rem; flex-shrink: 0; width: 16px; height: 16px; accent-color: var(--orange); }
  .bb-alert { margin-top: .75rem; padding: .75rem 1rem; border-radius: 10px; font-size: .85rem; font-weight: 500; display: flex; align-items: center; gap: .5rem; animation: bbAlertIn .25s ease; }
  .bb-alert::before { font-size: 1.1rem; flex-shrink: 0; }
  .bb-alert-error { background: #FEF2F2; border: 1.5px solid #FECACA; color: #991B1B; }
  .bb-alert-error::before { content: '⚠️'; }
  .bb-alert-warn { background: #FFFBEB; border: 1.5px solid #FDE68A; color: #92400E; }
  .bb-alert-warn::before { content: '⏳'; }
  @keyframes bbAlertIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }

  /* ── ADMIN BACKOFFICE ── */
  .admin-stats-bar { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1rem; margin-bottom: 1.5rem; }
  .admin-stat-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 1rem; text-align: center; }
  .asc-value { font-size: 1.5rem; font-weight: 800; color: var(--navy); }
  .asc-value.orange { color: var(--orange); }
  .asc-value.blue { color: var(--blue); }
  .asc-value.green { color: var(--green); }
  .asc-label { font-size: .75rem; color: var(--gray-400); text-transform: uppercase; font-weight: 600; margin-top: .2rem; }
  .admin-filter-bar { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1.5rem; align-items: center; }
  .admin-filter-bar select, .admin-filter-bar input { padding: .5rem .75rem; border: 1.5px solid var(--gray-200); border-radius: 8px; font-size: .85rem; font-family: inherit; outline: none; background: #fff; }
  .admin-filter-bar input[type="text"] { width: 200px; }
  .admin-filter-bar select:focus, .admin-filter-bar input:focus { border-color: var(--blue); }
  .admin-table { width: 100%; border-collapse: collapse; font-size: .85rem; }
  .admin-table th { text-align: left; padding: .65rem .6rem; font-size: .72rem; font-weight: 700; color: var(--gray-400); text-transform: uppercase; border-bottom: 2px solid var(--gray-200); background: var(--gray-50); }
  .admin-table td { padding: .6rem; border-bottom: 1px solid var(--gray-100); color: var(--gray-700); }
  .admin-table.compact th, .admin-table.compact td { padding: .4rem .5rem; font-size: .82rem; }
  .admin-table tr:hover { background: rgba(26,111,181,.02); }
  .bb-status { display: inline-block; padding: .15rem .5rem; border-radius: 5px; font-size: .72rem; font-weight: 700; text-transform: uppercase; }
  .bb-status.pending { background: rgba(244,129,21,.1); color: var(--orange); }
  .bb-status.distributed { background: rgba(26,111,181,.1); color: var(--blue); }
  .bb-status.quoted { background: rgba(46,204,113,.1); color: var(--green); }
  .bb-status.closed { background: var(--gray-100); color: var(--gray-400); }
  .btn-sm { padding: .3rem .65rem; border: 1px solid var(--gray-200); border-radius: 6px; font-size: .78rem; font-weight: 600; cursor: pointer; background: #fff; color: var(--navy); transition: all .15s; font-family: inherit; }
  .btn-sm:hover { background: var(--navy); color: #fff; border-color: var(--navy); }
  .btn-sm.active { background: var(--navy); color: #fff; border-color: var(--navy); }
  .admin-modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 1000; display: flex; align-items: center; justify-content: center; }
  .admin-modal { background: #fff; border-radius: 16px; max-width: 700px; width: 95%; max-height: 90vh; overflow-y: auto; box-shadow: 0 20px 60px rgba(0,0,0,.15); }
  .admin-modal-header { display: flex; justify-content: space-between; align-items: center; padding: 1.25rem 1.5rem; border-bottom: 1px solid var(--gray-200); }
  .admin-modal-header h3 { font-size: 1.1rem; font-weight: 700; color: var(--navy); margin: 0; }
  .admin-modal-close { font-size: 1.5rem; cursor: pointer; color: var(--gray-400); line-height: 1; }
  .admin-modal-close:hover { color: var(--red); }
  .admin-modal-body { padding: 1.5rem; }
  .admin-detail-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 1.5rem; margin-bottom: 1rem; }
  .adg-section h4 { font-size: .8rem; font-weight: 700; color: var(--gray-400); text-transform: uppercase; margin: 0 0 .5rem; }
  .adg-section p { margin: .2rem 0; font-size: .88rem; color: var(--gray-700); }

  /* ── ADMIN DASHBOARD TABS ── */
  .adm-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.5rem; }
  .adm-header-right { display: flex; align-items: center; gap: .75rem; }
  .adm-last-refresh { font-size: .78rem; color: var(--gray-400); }
  .adm-tabs { display: flex; gap: 0; margin-bottom: 1.5rem; border-bottom: 2px solid var(--gray-200); }
  .adm-tab { padding: .7rem 1.2rem; font-size: .82rem; font-weight: 600; cursor: pointer; color: var(--gray-400); border-bottom: 2px solid transparent; margin-bottom: -2px; transition: all .2s; white-space: nowrap; }
  .adm-tab:hover { color: var(--gray-700); background: var(--gray-50); }
  .adm-tab.active { color: var(--navy); border-bottom-color: var(--orange); }
  .adm-panel { display: none; }
  .adm-panel.active { display: block; }
  .adm-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-bottom: 1.5rem; }
  .adm-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 1.25rem; }
  .adm-card h4 { font-size: .88rem; font-weight: 700; color: var(--navy); margin: 0 0 .75rem; }
  .adm-loading { text-align: center; padding: 2rem; color: var(--gray-400); font-size: .85rem; }
  .adm-pagination { display: flex; gap: .35rem; justify-content: center; margin-top: 1rem; flex-wrap: wrap; }
  .admin-filter-bar { display: flex; gap: .75rem; margin-bottom: 1rem; flex-wrap: wrap; }
  .admin-filter-bar input, .admin-filter-bar select { padding: .45rem .75rem; border: 1px solid var(--gray-200); border-radius: 8px; font-size: .82rem; font-family: inherit; background: #fff; min-width: 140px; }
  .admin-filter-bar input:focus, .admin-filter-bar select:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 3px rgba(37,99,235,.1); }
  .admin-stat-card { background: #fff; border: 1px solid var(--gray-200); border-radius: 12px; padding: 1rem 1.25rem; text-align: center; }
  .admin-stat-value { font-size: 1.6rem; font-weight: 800; color: var(--navy); line-height: 1.1; }
  .admin-stat-label { font-size: .75rem; font-weight: 600; color: var(--gray-400); text-transform: uppercase; margin-top: .2rem; }
  .admin-stat-sub { font-size: .72rem; color: var(--gray-400); margin-top: .15rem; }
  .adm-list-item { padding: .6rem 0; border-bottom: 1px solid var(--gray-100); font-size: .85rem; }
  .adm-list-item:last-child { border-bottom: none; }
  .adm-list-sub { font-size: .78rem; color: var(--gray-400); margin-top: .15rem; }
  .adm-badge { display: inline-block; padding: .15rem .5rem; border-radius: 6px; font-size: .7rem; font-weight: 700; }
  .adm-badge.free { background: var(--gray-100); color: var(--gray-600); }
  .adm-badge.pro { background: rgba(16,185,129,.1); color: #059669; }
  .adm-badge.business { background: rgba(37,99,235,.1); color: var(--blue); }
  .adm-badge.verified { background: rgba(16,185,129,.06); color: var(--green); }
  .adm-badge.warn { background: rgba(245,158,11,.1); color: #D97706; }
  .adm-tier-bar { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: .75rem; }
  .adm-tier-badge { display: inline-block; padding: .25rem .6rem; border-radius: 8px; font-size: .72rem; font-weight: 700; }
  .adm-tier-badge.free { background: var(--gray-100); color: var(--gray-600); }
  .adm-tier-badge.pro { background: rgba(16,185,129,.1); color: #059669; }
  .adm-tier-badge.business { background: rgba(37,99,235,.1); color: var(--blue); }
  .adm-tier-badge.verified { background: rgba(16,185,129,.06); color: var(--green); }
  .adm-tier-badge.warn { background: rgba(239,68,68,.1); color: var(--red); }
  /* Bar chart */
  .adm-bar-chart { display: flex; align-items: flex-end; gap: .5rem; height: 120px; padding: .5rem 0; }
  .adm-bar-col { flex: 1; display: flex; flex-direction: column; align-items: center; height: 100%; justify-content: flex-end; }
  .adm-bar { background: linear-gradient(180deg, var(--blue) 0%, var(--navy) 100%); border-radius: 4px 4px 0 0; width: 100%; min-height: 4px; transition: height .3s; }
  .adm-bar-value { font-size: .65rem; font-weight: 700; color: var(--navy); margin-bottom: .2rem; }
  .adm-bar-label { font-size: .62rem; color: var(--gray-400); margin-top: .25rem; white-space: nowrap; }

  /* ── CSV UPLOAD / PARK VALUATION ── */
  .csv-dropzone {
    border: 2px dashed var(--gray-300); border-radius: var(--radius); padding: 2.5rem 1.5rem;
    text-align: center; cursor: pointer; transition: all .2s; background: var(--gray-50);
  }
  .csv-dropzone:hover, .csv-dropzone.dragover { border-color: var(--blue); background: rgba(26,111,181,.04); }
  .csv-dropzone .drop-icon { font-size: 2.5rem; margin-bottom: .5rem; }
  .csv-dropzone .drop-main { font-size: 1rem; font-weight: 600; color: var(--navy); margin-bottom: .3rem; }
  .csv-dropzone .drop-sub { font-size: .82rem; color: var(--gray-400); }
  .csv-dropzone .drop-link { color: var(--blue); font-weight: 600; cursor: pointer; text-decoration: underline; }
  .csv-file-info { display: flex; align-items: center; gap: .75rem; padding: .75rem 1rem; background: var(--gray-50); border: 1.5px solid var(--gray-200); border-radius: 8px; margin-top: .75rem; }
  .csv-file-info .file-icon { font-size: 1.3rem; }
  .csv-file-info .file-name { font-weight: 600; color: var(--navy); font-size: .9rem; }
  .csv-file-info .file-size { font-size: .8rem; color: var(--gray-400); }
  .csv-file-info .file-remove { margin-left: auto; color: var(--gray-400); cursor: pointer; font-size: 1.1rem; }
  .csv-file-info .file-remove:hover { color: var(--red); }
  .park-results { margin-top: 1.2rem; }
  .park-summary { background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%); border-radius: var(--radius); padding: 1.5rem; color: #fff; margin-bottom: 1rem; }
  .park-summary-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; margin-top: 1rem; }
  .park-summary-item { text-align: center; }
  .park-summary-item .ps-label { font-size: .75rem; color: rgba(255,255,255,.6); text-transform: uppercase; }
  .park-summary-item .ps-value { font-size: 1.5rem; font-weight: 800; }
  .park-summary-item .ps-value.orange { color: var(--orange); }
  .park-table { width: 100%; border-collapse: collapse; font-size: .85rem; }
  .park-table th { text-align: left; padding: .6rem .5rem; font-size: .75rem; font-weight: 700; color: var(--gray-400); text-transform: uppercase; border-bottom: 2px solid var(--gray-200); }
  .park-table td { padding: .6rem .5rem; border-bottom: 1px solid var(--gray-100); color: var(--gray-700); }
  .park-table .match { color: var(--green); font-weight: 600; }
  .park-table .no-match { color: var(--gray-400); font-style: italic; }
  .park-table .est-price { font-weight: 700; color: var(--navy); }
  .park-cta { background: var(--orange-light); border: 1.5px solid var(--orange); border-radius: var(--radius); padding: 1.2rem; text-align: center; margin-top: 1rem; }
  .park-cta p { font-size: .9rem; color: var(--gray-700); margin-bottom: .75rem; }

  /* ── BROKER DIRECTORY ── */
  .brokers-section { padding: 60px 2rem 80px; max-width: 1100px; margin: 0 auto; }
  .brokers-header { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 1rem; margin-bottom: 2rem; }
  .brokers-header-left { flex: 1; }
  .broker-cta-box { background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%); border-radius: var(--radius); padding: 1.2rem 1.5rem; color: #fff; max-width: 340px; }
  .broker-cta-box p { font-size: .85rem; color: rgba(255,255,255,.7); margin-bottom: .75rem; }
  .broker-cta-box .cta-title { font-weight: 700; font-size: 1rem; margin-bottom: .3rem; }
  .brokers-filters { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1.5rem; align-items: center; }
  .brokers-filters input { padding: .5rem .85rem; border: 1.5px solid var(--gray-200); border-radius: 8px; font-size: .85rem; font-family: inherit; outline: none; width: 260px; }
  .brokers-filters input:focus { border-color: var(--blue); }
  .brokers-filters select { padding: .5rem .7rem; border: 1.5px solid var(--gray-200); border-radius: 8px; font-size: .85rem; font-family: inherit; outline: none; background: #fff; }
  .broker-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 1.2rem; }
  .broker-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 1.5rem; transition: all .25s; position: relative; }
  .broker-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-3px); }
  .broker-card.business { border: 2px solid var(--orange); box-shadow: 0 0 0 3px rgba(245,158,11,.06); }
  .broker-card .broker-badge { position: absolute; top: 1rem; right: 1rem; padding: .2rem .6rem; border-radius: 6px; font-size: .7rem; font-weight: 700; text-transform: uppercase; }
  .broker-card .broker-badge.verified { background: rgba(46,204,113,.12); color: var(--green); }
  .broker-card .broker-badge.premium { background: var(--orange-light); color: var(--orange); }
  .broker-card .broker-badge.elite { background: rgba(13,59,102,.1); color: var(--navy); }
  .broker-card .broker-company { font-size: 1.15rem; font-weight: 800; color: var(--navy); margin-bottom: .15rem; }
  .broker-card .broker-location { font-size: .82rem; color: var(--gray-400); margin-bottom: .5rem; }
  .broker-card .broker-desc { font-size: .85rem; color: var(--gray-600); line-height: 1.5; margin-bottom: .8rem; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .broker-card .broker-specs { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: .8rem; }
  .broker-card .broker-spec { background: var(--gray-100); color: var(--gray-600); padding: .2rem .5rem; border-radius: 4px; font-size: .75rem; font-weight: 600; }
  .broker-card .broker-meta { display: flex; justify-content: space-between; align-items: center; padding-top: .8rem; border-top: 1px solid var(--gray-100); font-size: .8rem; color: var(--gray-400); }
  .broker-card .broker-meta a { color: var(--blue); font-weight: 600; text-decoration: none; }
  .broker-card .broker-meta a:hover { text-decoration: underline; }
  .broker-card .broker-certs { display: flex; gap: .3rem; }
  .broker-card .broker-cert { background: rgba(26,111,181,.08); color: var(--blue); padding: .15rem .4rem; border-radius: 4px; font-size: .7rem; font-weight: 600; }
  .broker-empty { text-align: center; padding: 4rem 2rem; }
  .broker-empty-icon { font-size: 3rem; margin-bottom: 1rem; }
  .broker-empty p { color: var(--gray-500); font-size: 1rem; margin-bottom: 1.5rem; }

  /* ── PRICING ── */
  .pricing-section { background: var(--gray-50); padding: 100px 2rem; }
  .pricing-inner { max-width: 1000px; margin: 0 auto; text-align: center; }
  .pricing-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1.5rem; margin-top: 3rem; align-items: start; }
  .price-card { background: #fff; border-radius: var(--radius); padding: 2.25rem 1.75rem; border: 1px solid var(--gray-200); text-align: left; position: relative; transition: all .3s; }
  .price-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-4px); }
  .price-card.featured { border: 2px solid var(--orange); box-shadow: 0 0 0 4px rgba(245,158,11,.08), var(--shadow-lg); transform: scale(1.03); }
  .price-card.featured:hover { transform: scale(1.03) translateY(-4px); }
  .price-card .popular-badge { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); background: linear-gradient(135deg, var(--orange) 0%, #FBBF24 100%); color: #fff; padding: .3rem 1.2rem; border-radius: 24px; font-size: .72rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; box-shadow: 0 2px 8px rgba(245,158,11,.3); white-space: nowrap; }
  .price-card .tier-name { font-size: .78rem; font-weight: 700; color: var(--blue); text-transform: uppercase; letter-spacing: .06em; }
  .price-card .tier-price { font-size: 2.8rem; font-weight: 800; color: var(--navy); margin: .5rem 0; letter-spacing: -0.03em; }
  .price-card .tier-price span { font-size: .85rem; font-weight: 500; color: var(--gray-400); }
  .price-card .tier-price .ht-label { font-size: .7rem; font-weight: 400; color: var(--gray-400); vertical-align: super; opacity: .7; }
  .ttc-line { font-size: .78rem; color: var(--gray-400); margin-top: -.3rem; margin-bottom: .3rem; font-weight: 400; }
  .price-card .tier-desc { font-size: .85rem; color: var(--gray-500); margin-bottom: 1.2rem; padding-bottom: 1.2rem; border-bottom: 1px solid var(--gray-100); line-height: 1.5; }
  .feature-list { list-style: none; }
  .feature-list li { padding: .4rem 0; font-size: .84rem; color: var(--gray-700); display: flex; align-items: baseline; gap: .5rem; }
  .feature-list li::before { content: '\2713'; color: var(--green); font-weight: 700; font-size: .9rem; }
  .feature-list li.disabled { color: var(--gray-400); }
  .feature-list li.disabled::before { content: '\2014'; color: var(--gray-300); }
  .price-card .cta { margin-top: 1.5rem; width: 100%; text-align: center; justify-content: center; }

  /* ── NEWSLETTER SECTION ── */
  .nl-section { background: linear-gradient(135deg, #0D3B66 0%, #1a4f80 60%, #1A6FB5 100%); padding: 4rem 2rem; position: relative; overflow: hidden; }
  .nl-section::before { content: ''; position: absolute; top: -50%; right: -20%; width: 500px; height: 500px; border-radius: 50%; background: rgba(244,129,21,.06); }
  .nl-section::after { content: ''; position: absolute; bottom: -30%; left: -10%; width: 400px; height: 400px; border-radius: 50%; background: rgba(26,111,181,.08); }
  .nl-inner { max-width: 700px; margin: 0 auto; text-align: center; position: relative; z-index: 1; }
  .nl-badge { display: inline-block; padding: .3rem .9rem; background: rgba(244,129,21,.15); color: var(--orange); border-radius: 20px; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 1rem; }
  .nl-inner h2 { color: #fff; font-size: 1.6rem; font-weight: 800; margin-bottom: .5rem; letter-spacing: -0.02em; }
  .nl-inner .nl-desc { color: rgba(255,255,255,.8); font-size: .95rem; line-height: 1.6; margin-bottom: 1.75rem; }
  .nl-features { display: flex; justify-content: center; gap: 1.5rem; flex-wrap: wrap; margin-bottom: 1.75rem; }
  .nl-feat { display: flex; align-items: center; gap: .4rem; color: rgba(255,255,255,.85); font-size: .82rem; font-weight: 500; }
  .nl-feat span:first-child { font-size: 1rem; }
  .nl-form { display: flex; gap: .5rem; max-width: 480px; margin: 0 auto; }
  .nl-form input { flex: 1; padding: .8rem 1rem; border-radius: 10px; border: 2px solid rgba(255,255,255,.15); background: rgba(255,255,255,.1); color: #fff; font-size: .9rem; outline: none; transition: border-color .2s; }
  .nl-form input::placeholder { color: rgba(255,255,255,.45); }
  .nl-form input:focus { border-color: var(--orange); background: rgba(255,255,255,.15); }
  .nl-form button { padding: .8rem 1.5rem; background: var(--orange); color: #fff; border: none; border-radius: 10px; font-weight: 700; font-size: .88rem; cursor: pointer; white-space: nowrap; transition: background .2s; }
  .nl-form button:hover { background: #e0720d; }
  .nl-privacy { color: rgba(255,255,255,.4); font-size: .72rem; margin-top: .75rem; }
  .nl-success { display: none; text-align: center; }
  .nl-success .nl-check { width: 56px; height: 56px; border-radius: 50%; background: rgba(46,204,113,.15); display: inline-flex; align-items: center; justify-content: center; font-size: 1.8rem; margin-bottom: .75rem; }
  .nl-success h3 { color: #fff; font-size: 1.2rem; margin-bottom: .4rem; }
  .nl-success p { color: rgba(255,255,255,.7); font-size: .88rem; }
  @media(max-width:600px) { .nl-form { flex-direction: column; } .nl-features { gap: .75rem; } }

  /* ── USER NAV (detail) ── */
  .user-nav { display: flex; align-items: center; gap: .75rem; }
  .user-badge { display: inline-flex; align-items: center; gap: .4rem; padding: .25rem .65rem; border-radius: 8px; font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
  .user-badge.free { background: var(--gray-100); color: var(--gray-500); }
  .user-badge.pro { background: var(--orange-light); color: var(--orange-hover); }
  .user-badge.business { background: rgba(10,22,40,.08); color: var(--navy); }
  .user-name { font-size: .88rem; font-weight: 600; color: var(--navy); }
  .btn-logout { background: none; border: 1px solid var(--gray-200); padding: .35rem .75rem; border-radius: 8px; font-size: .8rem; color: var(--gray-500); cursor: pointer; transition: all .15s; font-family: inherit; }
  .btn-logout:hover { background: rgba(239,68,68,.04); color: var(--red); border-color: var(--red); }

  /* ── DASHBOARD ── */
  .dash-tabs { display: flex; gap: .25rem; border-bottom: 2px solid var(--gray-200); margin-bottom: 2rem; }
  .dash-tab { padding: .65rem 1.2rem; border: none; background: transparent; font-size: .85rem; font-weight: 600; color: var(--gray-500); cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -2px; transition: all .2s; white-space: nowrap; }
  .dash-tab:hover { color: var(--navy); }
  .dash-tab.active { color: var(--blue); border-bottom-color: var(--blue); }
  .dash-tab-content { display: none; }
  .dash-tab-content.active { display: block; }
  .dash-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 2rem; }
  .dash-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 1.5rem; text-align: center; transition: all .2s; }
  .dash-card:hover { box-shadow: var(--shadow); }
  .dash-card .dc-value { font-size: 1.8rem; font-weight: 800; color: var(--navy); letter-spacing: -0.02em; }
  .dash-card .dc-label { font-size: .78rem; color: var(--gray-500); margin-top: .25rem; }
  .dash-card .dc-sub { font-size: .7rem; color: var(--gray-400); }
  .dash-section { margin-bottom: 2rem; }
  .dash-section h3 { font-size: 1.1rem; color: var(--navy); margin-bottom: 1rem; display: flex; align-items: center; gap: .5rem; }
  .dash-form-card { background: #fff; border: 1px solid var(--gray-200); border-radius: var(--radius); padding: 2rem; margin-bottom: 0; }
  .dash-form-card h3 { font-size: 1.15rem; font-weight: 700; color: var(--navy); margin-bottom: .5rem; }
  .dash-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 1.25rem; }
  .form-success { background: #ecfdf5; border: 1px solid #6ee7b7; color: #065f46; padding: .6rem 1rem; border-radius: 8px; font-size: .85rem; margin-bottom: 1rem; }
  .sub-status-card { background: var(--gray-50); border-radius: var(--radius); padding: 1.5rem; margin-bottom: 1.5rem; }
  .sub-status-row { display: flex; justify-content: space-between; align-items: center; padding: .6rem 0; border-bottom: 1px solid var(--gray-200); }
  .sub-status-row:last-child { border-bottom: none; }
  .sub-label { font-size: .85rem; color: var(--gray-500); }
  .sub-value { font-size: .9rem; font-weight: 700; color: var(--navy); }
  .sub-features { font-weight: 500; font-size: .8rem; color: var(--gray-600); text-align: right; max-width: 60%; line-height: 1.5; }
  .sub-actions { display: flex; gap: .75rem; margin-bottom: 1rem; flex-wrap: wrap; }
  .sub-info { margin-top: .5rem; }
  .alert-list { display: flex; flex-direction: column; gap: .75rem; }
  .alert-item { display: flex; align-items: center; justify-content: space-between; background: #fff; border: 1px solid var(--gray-200); border-radius: 12px; padding: .85rem 1rem; transition: all .15s; }
  .alert-item:hover { box-shadow: var(--shadow); }
  .alert-item .ai-left { display: flex; align-items: center; gap: .75rem; }
  .alert-item .ai-product { font-weight: 700; color: var(--navy); font-size: .9rem; }
  .alert-item .ai-target { font-size: .82rem; color: var(--gray-500); }
  .alert-item .ai-status { font-size: .75rem; padding: .2rem .5rem; border-radius: 4px; font-weight: 600; }
  .alert-item .ai-status.active { background: #E8F8F0; color: #16a34a; }
  .alert-item .ai-status.triggered { background: #FFF3E0; color: var(--orange); }
  .alert-delete { background: none; border: none; color: var(--gray-400); cursor: pointer; font-size: 1.1rem; padding: .25rem; }
  .alert-delete:hover { color: var(--red); }
  .buyback-list { display: flex; flex-direction: column; gap: .5rem; }
  .buyback-item { display: flex; align-items: center; justify-content: space-between; background: #fff; border: 1.5px solid var(--gray-200); border-radius: 10px; padding: .75rem 1rem; font-size: .85rem; }
  .bb-status { padding: .2rem .5rem; border-radius: 4px; font-size: .72rem; font-weight: 600; }
  .bb-status.pending { background: var(--gray-100); color: var(--gray-500); }
  .bb-status.distributed { background: #E0F2FE; color: var(--blue); }
  .bb-status.quoted { background: #FFF3E0; color: var(--orange); }
  .bb-status.closed { background: #E8F8F0; color: #16a34a; }

  /* ── ALERT MODAL ── */
  .modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(10,22,40,.6); backdrop-filter: blur(4px); z-index: 500; display: flex; align-items: center; justify-content: center; }
  .modal-box { background: #fff; border-radius: 20px; padding: 2rem; max-width: 420px; width: 90%; box-shadow: var(--shadow-xl); border: 1px solid var(--gray-100); }
  .modal-box h3 { color: var(--navy); margin-bottom: 1rem; }
  .modal-close { float: right; background: none; border: none; font-size: 1.3rem; cursor: pointer; color: var(--gray-400); transition: color .15s; }
  .modal-close:hover { color: var(--gray-700); }

  /* ── VOLATILITY BADGE ── */
  .prod-tag.volatile { background: #FEE2E2; color: var(--red); }
  .tag-volatile { background: #FEE2E2; color: var(--red); font-weight: 700; }

  /* ── SOCIAL PROOF — WHY HUBROKER ── */
  .why-section { padding: 60px 2rem 70px; background: var(--gray-50); }
  .why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; max-width: 1100px; margin: 2rem auto 0; align-items: start; }
  .why-left h3 { font-size: 1.2rem; font-weight: 800; color: var(--navy); margin-bottom: 1rem; }
  .comparison-table { width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--gray-200); border-radius: 14px; overflow: hidden; font-size: .84rem; }
  .comparison-table th { background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%); color: #fff; padding: .7rem .85rem; text-align: left; font-weight: 600; font-size: .78rem; letter-spacing: .02em; }
  .comparison-table th:first-child { width: 40%; }
  .comparison-table td { padding: .65rem .85rem; border-bottom: 1px solid var(--gray-100); }
  .comparison-table tr:last-child td { border-bottom: none; }
  .comparison-table tr:nth-child(even) td { background: var(--gray-50); }
  .ct-yes { color: var(--green); font-weight: 700; }
  .ct-no { color: var(--gray-400); }
  .ct-highlight { color: var(--orange); font-weight: 700; }
  .why-right { display: flex; flex-direction: column; gap: .85rem; }
  .why-stat { background: #fff; border: 1px solid var(--gray-200); border-radius: 14px; padding: 1rem 1.2rem; display: flex; align-items: center; gap: 1rem; transition: all .2s; }
  .why-stat:hover { box-shadow: var(--shadow); border-color: var(--blue-light); }
  .ws-icon { font-size: 1.5rem; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; background: var(--blue-50); border-radius: 12px; flex-shrink: 0; }
  .ws-value { font-size: 1.4rem; font-weight: 800; color: var(--navy); letter-spacing: -0.02em; }
  .ws-label { font-size: .78rem; color: var(--gray-500); }

  /* ── INVENTORY LISTINGS ── */
  .inv-section { padding: 40px 2rem; }
  .inv-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 2rem; margin-bottom: 2rem; }
  .inv-header-left .section-label { margin-bottom: .5rem; }
  .inv-filters { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1.5rem; }
  .inv-filters input, .inv-filters select { padding: .5rem .75rem; border: 1.5px solid var(--gray-200); border-radius: 8px; font-size: .85rem; font-family: inherit; outline: none; }
  .inv-filters input:focus, .inv-filters select:focus { border-color: var(--blue); }
  .inv-filters input { flex: 1; min-width: 200px; }
  .inv-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 1rem; }
  .inv-card { background: #fff; border: 1px solid var(--gray-200); border-radius: 14px; padding: 1.1rem; transition: all .25s; }
  .inv-card:hover { border-color: var(--blue-light); box-shadow: var(--shadow-md); transform: translateY(-2px); }
  .inv-card-top { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: .5rem; }
  .inv-type { font-size: .7rem; font-weight: 700; padding: .15rem .5rem; border-radius: 4px; text-transform: uppercase; }
  .inv-type.wts { background: #E8F8F0; color: var(--green); }
  .inv-type.wtb { background: #FEF3CD; color: #856404; }
  .inv-condition { font-size: .7rem; color: var(--gray-400); font-weight: 600; }
  .inv-model { font-size: .95rem; font-weight: 700; color: var(--navy); margin-bottom: .2rem; }
  .inv-brand { font-size: .8rem; color: var(--gray-500); margin-bottom: .5rem; }
  .inv-meta { display: flex; gap: 1rem; font-size: .8rem; color: var(--gray-500); margin-bottom: .5rem; }
  .inv-price { font-size: 1.1rem; font-weight: 800; color: var(--orange); }
  .inv-vs-fmv { font-size: .75rem; color: var(--gray-400); margin-left: .5rem; }
  .inv-vs-fmv.below { color: var(--green); }
  .inv-vs-fmv.above { color: var(--red); }
  .inv-seller { display: flex; align-items: center; gap: .5rem; margin-top: .5rem; padding-top: .5rem; border-top: 1px solid var(--gray-100); font-size: .8rem; color: var(--gray-500); }
  .inv-seller .seller-name { font-weight: 600; color: var(--navy); }
  .inv-seller .seller-blur { filter: blur(4px); user-select: none; }
  .inv-pagination { display: flex; justify-content: center; gap: .5rem; margin-top: 1.5rem; }
  .inv-form-section { max-width: 700px; margin: 2rem auto 0; background: var(--gray-50); border: 1.5px solid var(--gray-200); border-radius: 12px; padding: 1.5rem; }
  .inv-form-section h3 { font-size: 1.1rem; color: var(--navy); margin-bottom: 1rem; }
  .inv-my-listings { margin-top: 2rem; }
  .inv-my-card { display: flex; justify-content: space-between; align-items: center; background: #fff; border: 1.5px solid var(--gray-200); border-radius: 8px; padding: .75rem 1rem; margin-bottom: .5rem; }
  .inv-my-info { flex: 1; }
  .inv-my-model { font-weight: 700; color: var(--navy); font-size: .9rem; }
  .inv-my-meta { font-size: .78rem; color: var(--gray-500); }
  .inv-my-actions { display: flex; gap: .5rem; }
  .inv-my-actions button { padding: .3rem .6rem; border-radius: 6px; font-size: .75rem; font-weight: 600; cursor: pointer; border: 1.5px solid var(--gray-200); background: #fff; color: var(--gray-600); font-family: inherit; }
  .inv-my-actions button:hover { border-color: var(--gray-400); }
  .inv-my-actions button.del:hover { border-color: var(--red); color: var(--red); }
  .inv-my-actions button.edit { color: var(--blue); }
  .inv-my-actions button.edit:hover { border-color: var(--blue); background: rgba(26,111,181,.05); }

  /* ── CSRD REPORT ── */
  .csrd-results { margin-top: 1.5rem; }
  .csrd-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 1.5rem; }
  .csrd-card { background: #fff; border: 1px solid var(--gray-200); border-radius: 14px; padding: 1.2rem; text-align: center; transition: all .2s; }
  .csrd-card:hover { box-shadow: var(--shadow); }
  .csrd-card .cc-value { font-size: 1.4rem; font-weight: 800; }
  .csrd-card .cc-value.green { color: var(--green); }
  .csrd-card .cc-value.orange { color: var(--orange); }
  .csrd-card .cc-label { font-size: .75rem; color: var(--gray-500); margin-top: .2rem; }

  /* ── EXPORT BAR ── */
  .export-bar { display: flex; gap: .5rem; align-items: center; margin-left: auto; }
  .btn-export { padding: .35rem .7rem; border: 1px solid var(--gray-200); border-radius: 8px; background: #fff; font-size: .78rem; font-weight: 600; color: var(--gray-600); cursor: pointer; display: flex; align-items: center; gap: .3rem; transition: all .15s; font-family: inherit; }
  .btn-export:hover { border-color: var(--blue-light); color: var(--blue); background: var(--blue-50); }
  .btn-fmv-only { padding: .35rem .7rem; border: 1.5px solid var(--gray-200); border-radius: 8px; background: #fff; font-size: .78rem; font-weight: 600; color: var(--gray-600); cursor: pointer; display: flex; align-items: center; gap: .35rem; transition: all .15s; font-family: inherit; white-space: nowrap; }
  .btn-fmv-only:hover { border-color: var(--green); color: var(--green); background: #f0faf4; }
  .btn-fmv-only.active { border-color: var(--green); color: #fff; background: var(--green); }

  /* ── FIND HARDWARE 24H ── */
  .find-hardware-section { padding: 80px 2rem; background: linear-gradient(135deg, var(--navy) 0%, #162240 50%, #1a2d4a 100%); position: relative; overflow: hidden; }
  .find-hardware-section::before { content: ''; position: absolute; top: -50%; right: -20%; width: 600px; height: 600px; background: radial-gradient(circle, rgba(245,158,11,.08) 0%, transparent 70%); pointer-events: none; }
  .find-hw-container { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
  .find-hw-left { color: #fff; }
  .find-hw-badge { display: inline-flex; align-items: center; gap: .4rem; background: rgba(245,158,11,.15); color: var(--orange); font-size: .8rem; font-weight: 700; padding: .4rem 1rem; border-radius: 99px; margin-bottom: 1.5rem; border: 1px solid rgba(245,158,11,.25); }
  .find-hw-left h2 { font-size: 2rem; font-weight: 800; margin-bottom: 1rem; letter-spacing: -0.025em; line-height: 1.2; }
  .find-hw-left p { color: rgba(255,255,255,.65); font-size: .95rem; line-height: 1.7; margin-bottom: 1.5rem; }
  .find-hw-left p strong { color: var(--orange); }
  .find-hw-perks { list-style: none; padding: 0; }
  .find-hw-perks li { color: rgba(255,255,255,.7); font-size: .88rem; padding: .4rem 0; display: flex; align-items: center; gap: .5rem; }
  .find-hw-right { }
  .find-hw-form-card { background: #fff; border-radius: 20px; padding: 2rem; box-shadow: 0 25px 50px -12px rgba(0,0,0,.4); }
  .find-hw-form-card h3 { font-size: 1.2rem; font-weight: 700; color: var(--navy); margin-bottom: .25rem; }
  .find-hw-form-sub { font-size: .82rem; color: var(--gray-400); margin-bottom: 1.25rem; }
  .find-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin-bottom: .75rem; }
  .find-form-group { display: flex; flex-direction: column; }
  .find-form-group label { font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .05em; color: var(--gray-500); margin-bottom: .3rem; }
  .find-form-group input, .find-form-group select, .find-form-group textarea { border: 1px solid var(--gray-200); border-radius: 10px; padding: .55rem .75rem; font-size: .88rem; font-family: inherit; transition: border-color .2s, box-shadow .2s; outline: none; background: var(--gray-50); }
  .find-form-group input:focus, .find-form-group select:focus, .find-form-group textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(37,99,235,.1); background: #fff; }
  .find-form-group textarea { resize: vertical; }
  @media (max-width: 768px) {
    .find-hw-container { grid-template-columns: 1fr; gap: 2rem; }
    .find-form-row { grid-template-columns: 1fr; }
    .find-hw-left h2 { font-size: 1.5rem; }
  }

  /* ── FOOTER ── */
  footer { background: var(--navy); color: rgba(255,255,255,.4); padding: 0; font-size: .85rem; }
  .footer-inner { max-width: 1100px; margin: 0 auto; padding: 3.5rem 2rem 2rem; }
  .footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 2.5rem; margin-bottom: 2.5rem; }
  .footer-brand { }
  .footer-brand .footer-logo { font-size: 1.2rem; font-weight: 800; color: #fff; margin-bottom: .75rem; display: flex; align-items: center; gap: .45rem; }
  .footer-brand .footer-logo .logo-hu { color: #fff; }
  .footer-brand .footer-logo .logo-b { background: linear-gradient(90deg, #fff 35%, var(--orange) 65%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
  .footer-brand .footer-logo .logo-roker { color: var(--orange); }
  .footer-brand p { font-size: .82rem; color: rgba(255,255,255,.4); line-height: 1.6; max-width: 280px; }
  .footer-col h4 { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: rgba(255,255,255,.6); margin-bottom: .8rem; }
  .footer-col a { display: block; color: rgba(255,255,255,.4); text-decoration: none; cursor: pointer; font-size: .84rem; padding: .25rem 0; transition: color .15s; }
  .footer-col a:hover { color: rgba(255,255,255,.8); }
  .footer-bottom { border-top: 1px solid rgba(255,255,255,.08); padding: 1.5rem 2rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .5rem; max-width: 1100px; margin: 0 auto; }
  .footer-bottom p { font-size: .78rem; color: rgba(255,255,255,.3); }
  .footer-bottom .footer-data { font-size: .75rem; color: rgba(255,255,255,.25); }
  footer .footer-links { display: none; }

  /* ── RESPONSIVE ── */
  @media (max-width: 768px) {
    .hero { padding: 80px 1.5rem 70px; }
    .hero h1 { font-size: 2rem; }
    .hero p { font-size: 1rem; }
    .fmv-grid { grid-template-columns: 1fr; }
    .seller-row { grid-template-columns: 1fr 1fr; gap: .5rem; }
    .sell-cards-grid { grid-template-columns: 1fr; }
    .sell-or-separator span { width: 40px; height: 40px; font-size: .8rem; }
    .sell-hero-steps { flex-direction: column; align-items: center; }
    .sell-csrd-banner-inner { flex-direction: column; text-align: center; }
    .csrd-header { flex-direction: column; text-align: center; }
    .pricing-grid { grid-template-columns: 1fr; max-width: 400px; margin-left: auto; margin-right: auto; }
    .price-card.featured { transform: none; }
    .price-card.featured:hover { transform: translateY(-4px); }
    .stats-grid { grid-template-columns: 1fr 1fr; margin-top: -30px; padding: 0 1.5rem; gap: .75rem; }
    .how-grid { grid-template-columns: 1fr; }
    .audience-grid { grid-template-columns: 1fr; }
    .preview-fmv-grid { grid-template-columns: 1fr; }
    .preview-extras { flex-direction: column; }
    .nav-center { display: none; }
    #nav-auth-buttons { display: none; }
    .nav-burger { display: block; }
    .catalogue-layout { flex-direction: column; }
    .brand-strip { gap: .3rem; }
    .brand-chip { font-size: .65rem; padding: .25rem .5rem; }
    .products-grid { grid-template-columns: 1fr; }
    .products-grid.list-view .product-card { flex-direction: column; }
    .products-grid.list-view .prod-fmv { border-top: 1px solid var(--gray-100); padding-top: .7rem; text-align: left; }
    .catalogue-toolbar { padding: .5rem; }
    .toolbar-left { width: 100%; }
    .toolbar-sort { flex: 1; }
    .toolbar-sort select { flex: 1; }
    .auth-page { flex-direction: column; }
    .auth-left { padding: 2rem; min-height: auto; }
    .auth-features { display: none; }
    .dash-grid { grid-template-columns: 1fr 1fr; }
    .dash-form-grid { grid-template-columns: 1fr; }
    .dash-tabs { gap: 0; overflow-x: auto; }
    .dash-tab { padding: .55rem .8rem; font-size: .78rem; }
    .csrd-grid { grid-template-columns: 1fr 1fr; }
    .export-bar { display: none; }
    .why-grid { grid-template-columns: 1fr; }
    .inv-grid { grid-template-columns: 1fr; }
    .inv-header { flex-direction: column; }
    .section { padding: 60px 1.5rem; }
    .section h2 { font-size: 1.7rem; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 1.5rem; }
    .trust-bar { gap: 1rem; }
    .trust-item { font-size: .78rem; }
    .search-bar { font-size: .92rem; padding: .9rem 1rem .9rem 2.8rem; }
    .btn { padding: .6rem 1.1rem; font-size: .85rem; }
    .admin-stats-bar { grid-template-columns: repeat(3, 1fr); }
    .admin-detail-grid { grid-template-columns: 1fr; }
    .admin-filter-bar { flex-direction: column; }
    .admin-filter-bar input[type="text"] { width: 100%; }
    .adm-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .adm-tab { padding: .5rem .7rem; font-size: .72rem; }
    .adm-two-col { grid-template-columns: 1fr; }
    .adm-header { flex-direction: column; gap: .75rem; align-items: flex-start; }
    .adm-bar-chart { height: 80px; }
    .bb-ci-controls { flex-direction: column; align-items: flex-start; }
    .bb-ci-est { margin-left: 0; margin-top: .25rem; }
  }
  @media (max-width: 480px) {
    .hero h1 { font-size: 1.7rem; }
    .stats-grid { grid-template-columns: 1fr 1fr; }
    .stat-card { padding: 1rem; }
    .stat-card .stat-num { font-size: 1.5rem; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; text-align: center; }
  }

  /* ═══ ABOUT PAGE ═══ */
  .about-container { max-width: 1100px; margin: 0 auto; padding: 0 2rem; }
  /* Legal pages — professional law firm style */
  .legal-hero { background: linear-gradient(135deg, var(--navy) 0%, #1a4f7a 100%); color: #fff; padding: 3.5rem 2rem 2.5rem; text-align: center; }
  .legal-hero h1 { font-size: 2rem; font-weight: 800; margin: 0 0 .5rem; }
  .legal-hero .legal-updated { font-size: .85rem; color: rgba(255,255,255,.65); }
  .legal-toc { background: var(--gray-50); border: 1px solid var(--gray-200); border-radius: 12px; padding: 1.25rem 1.5rem; margin-bottom: 2.5rem; }
  .legal-toc-title { font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: var(--gray-500); font-weight: 700; margin-bottom: .75rem; }
  .legal-toc ol { margin: 0; padding-left: 1.25rem; columns: 2; column-gap: 2rem; }
  .legal-toc li { font-size: .88rem; color: var(--blue); cursor: pointer; margin-bottom: .35rem; }
  .legal-toc li:hover { color: var(--orange); }
  @media (max-width: 600px) { .legal-toc ol { columns: 1; } }
  .legal-content { line-height: 1.85; color: var(--gray-700); font-size: .95rem; }
  .legal-content h2 { font-size: 1.15rem; color: var(--navy); margin: 2.5rem 0 .75rem; padding-bottom: .6rem; border-bottom: 2px solid var(--gray-100); font-weight: 700; }
  .legal-content h2:first-child { margin-top: 0; }
  .legal-content p { margin-bottom: 1rem; }
  .legal-content ul { margin: .5rem 0 1.25rem 1.5rem; }
  .legal-content li { margin-bottom: .5rem; }
  .legal-content strong { color: var(--navy); font-weight: 600; }
  .legal-content .legal-highlight { background: #f0f7ff; border-left: 3px solid var(--blue); padding: 1rem 1.25rem; border-radius: 0 8px 8px 0; margin: 1rem 0 1.5rem; font-size: .9rem; }
  .legal-content table { width: 100%; border-collapse: collapse; margin: 1rem 0 1.5rem; font-size: .88rem; }
  .legal-content table th { background: var(--navy); color: #fff; padding: .6rem .75rem; text-align: left; font-weight: 600; font-size: .82rem; text-transform: uppercase; letter-spacing: .03em; }
  .legal-content table td { padding: .6rem .75rem; border-bottom: 1px solid var(--gray-200); }
  .legal-content table tr:hover td { background: var(--gray-50); }
  .legal-nav { display: flex; justify-content: space-between; align-items: center; padding: 1.5rem 0; border-top: 2px solid var(--gray-100); margin-top: 3rem; }
  .legal-nav a { font-size: .85rem; color: var(--blue); font-weight: 600; cursor: pointer; }
  .legal-nav a:hover { color: var(--orange); }
  .about-hero { background: linear-gradient(135deg, var(--navy) 0%, #1a4f7a 50%, #0D3B66 100%); color: #fff; padding: 5rem 2rem 4rem; text-align: center; }
  .about-hero h1 { font-size: 2.4rem; max-width: 700px; margin: 0 auto 1.25rem; line-height: 1.25; }
  .about-hero .highlight { background: linear-gradient(90deg, var(--orange), #F59E0B); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
  .about-badge { display: inline-block; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.2); border-radius: 20px; padding: .3rem 1rem; font-size: .78rem; font-weight: 600; letter-spacing: .04em; margin-bottom: 1.25rem; text-transform: uppercase; }
  .about-hero-sub { font-size: 1.1rem; max-width: 600px; margin: 0 auto; color: rgba(255,255,255,.8); line-height: 1.6; }

  .about-section { padding: 4rem 0; border-bottom: 1px solid var(--gray-100); }
  .about-section:last-child { border-bottom: none; }
  .about-section-title { text-align: center; font-size: 1.6rem; color: var(--navy); margin-bottom: 2.5rem; }

  .about-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
  .about-story-grid.reverse { direction: rtl; }
  .about-story-grid.reverse > * { direction: ltr; }
  .about-story-text h2 { font-size: 1.5rem; color: var(--navy); margin-bottom: 1rem; line-height: 1.3; }
  .about-story-text p { color: var(--gray-600); line-height: 1.75; margin-bottom: 1rem; font-size: .95rem; }

  .about-stat-block { text-align: center; background: var(--navy); color: #fff; border-radius: 16px; padding: 3rem 2rem; }
  .about-stat-icon { font-size: 2.5rem; margin-bottom: .75rem; }
  .about-stat-number { font-size: 5rem; font-weight: 900; line-height: 1; margin-bottom: .5rem; background: linear-gradient(90deg, var(--orange), #F59E0B); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
  .about-stat-label { font-size: .9rem; color: rgba(255,255,255,.7); }

  .about-values-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
  .about-value-card { background: #fff; border: 1px solid var(--gray-200); border-radius: 12px; padding: 1.25rem; text-align: center; }
  .about-value-icon { font-size: 1.5rem; margin-bottom: .5rem; }
  .about-value-card strong { display: block; color: var(--navy); font-size: .88rem; margin-bottom: .3rem; }
  .about-value-card span { font-size: .78rem; color: var(--gray-500); line-height: 1.4; }

  .about-founder-section { text-align: center; }
  .about-founder-card { display: inline-flex; align-items: center; gap: 2rem; background: #fff; border: 1px solid var(--gray-200); border-radius: 16px; padding: 2rem 2.5rem; text-align: left; max-width: 700px; box-shadow: var(--shadow-md); }
  .about-founder-avatar { width: 80px; height: 80px; border-radius: 50%; background: linear-gradient(135deg, var(--navy), var(--blue)); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; font-weight: 800; flex-shrink: 0; }
  .about-founder-info h3 { color: var(--navy); font-size: 1.15rem; margin-bottom: .15rem; }
  .about-founder-role { color: var(--orange); font-weight: 600; font-size: .85rem; display: block; margin-bottom: .75rem; }
  .about-founder-info p { color: var(--gray-600); font-size: .88rem; line-height: 1.65; margin-bottom: .75rem; }
  .about-founder-links a { display: inline-flex; align-items: center; gap: .4rem; color: var(--blue); font-size: .85rem; font-weight: 600; text-decoration: none; }
  .about-founder-links a:hover { text-decoration: underline; }

  .about-numbers-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
  .about-number-card { text-align: center; background: #fff; border: 1px solid var(--gray-200); border-radius: 12px; padding: 1.5rem 1rem; }
  .about-number-value { font-size: 2rem; font-weight: 900; color: var(--navy); margin-bottom: .25rem; }
  .about-number-label { font-size: .82rem; color: var(--gray-500); }

  .about-mission { text-align: center; border: none; padding: 4rem 0 3rem; }
  .about-mission-inner { background: linear-gradient(135deg, var(--navy), #1a4f7a); border-radius: 20px; padding: 3.5rem 2.5rem; color: #fff; }
  .about-mission-inner h2 { font-size: 1.6rem; margin-bottom: 1rem; }
  .about-mission-text { font-size: 1.05rem; max-width: 650px; margin: 0 auto 2rem; line-height: 1.7; color: rgba(255,255,255,.85); }
  .about-mission-cta { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }
  .about-mission-cta .btn-outline { color: #fff; border-color: rgba(255,255,255,.4); }
  .about-mission-cta .btn-outline:hover { background: rgba(255,255,255,.1); border-color: #fff; }

  @media (max-width: 768px) {
    .about-hero h1 { font-size: 1.6rem; }
    .about-story-grid, .about-story-grid.reverse { grid-template-columns: 1fr; direction: ltr; }
    .about-numbers-grid { grid-template-columns: repeat(2, 1fr); }
    .about-founder-card { flex-direction: column; text-align: center; padding: 1.5rem; }
    .about-values-grid { grid-template-columns: 1fr; }
  }
