.community-invite {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 32px;
  margin: 22px 0;
  padding: clamp(22px, 4vw, 40px);
  border: 1px solid #c9dce9;
  border-radius: 22px;
  background: linear-gradient(125deg, #fff 35%, #e8f5ff 100%);
  box-shadow: 0 12px 30px rgba(7, 22, 41, .06);
}
.community-invite h2 { max-width: 650px; margin: 16px 0 12px; font-size: clamp(1.65rem, 3vw, 2.35rem); line-height: 1.15; letter-spacing: -.025em; color: #071629; }
.community-invite .eyebrow { color: #075f96; background: #dfefff; }
.community-invite .community-copy > p { max-width: 620px; color: #425870; line-height: 1.7; }
.community-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 22px; }
.community-share { min-height: 44px; border: 0; background: transparent; color: #075f96; font-weight: 750; padding: 10px 4px; text-align: left; }
.community-share:hover { text-decoration: underline; }
.community-share:disabled { opacity: .65; cursor: wait; }
.community-status { min-height: 1.4em; margin-bottom: 0; font-size: .83rem; }
.community-manual { display: block; margin-top: 8px; color: #425870; font-size: .8rem; }
.community-manual input { width: 100%; min-height: 44px; padding: 10px; margin-top: 6px; border: 1px solid #bccddd; border-radius: 8px; background: #fff; color: #071629; }
.community-activity { align-self: center; min-width: 0; padding-left: 28px; border-left: 1px solid #c9dce9; }
.community-monogram { display: inline-flex; padding: 7px 11px; border-radius: 8px; background: #071629; color: #fff; font-weight: 900; letter-spacing: .05em; }
.community-activity h3 { margin: 12px 0 6px; font-size: 1.1rem; color: #071629; }
.community-activity > p { font-size: .83rem; color: #425870; line-height: 1.6; }
.community-counter { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 22px 0 8px; }
.community-counter > div { display: flex; flex-direction: column; gap: 5px; }
.community-counter dd { order: -1; margin: 0; font-weight: 900; font-size: clamp(1.35rem, 2.5vw, 2rem); font-variant-numeric: tabular-nums; color: #075f96; overflow-wrap: anywhere; }
.community-counter dt { color: #425870; font-size: .74rem; line-height: 1.5; }
.community-activity .community-count-note { font-size: .7rem; }
.community-privacy { margin-top: 16px; color: #425870; font-size: .73rem; line-height: 1.65; }
.community-privacy summary { cursor: pointer; font-weight: 700; }
.community-privacy button { padding: 10px 0; min-height: 44px; border: 0; background: transparent; text-decoration: underline; color: #075f96; text-align: left; }
.community-invite [hidden] { display: none !important; }
@media (max-width: 760px) {
  .community-invite { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .community-activity { border-left: 0; border-top: 1px solid #c9dce9; padding: 20px 0 0; }
  .community-actions .button { flex: 1 1 180px; }
  .community-share { flex-basis: 100%; }
}

:root {
      --ink: #071629;
      --ink-2: #0d2742;
      --blue: #0c84d9;
      --blue-2: #1ea7fd;
      --blue-soft: #e8f5ff;
      --amber: #ffb703;
      --amber-soft: #fff4cc;
      --paper: #f3f6f8;
      --surface: #ffffff;
      --line: #dce4ea;
      --text: #142538;
      --muted: #617184;
      --success: #087b55;
      --danger: #b62d3c;
      --shadow: 0 18px 40px rgba(7, 22, 41, .10);
      --radius: 18px;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--text);
      background: var(--paper);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body { margin: 0; min-width: 320px; background: var(--paper); color: var(--text); }
    button, input, select, textarea { font: inherit; }
    button, a { -webkit-tap-highlight-color: transparent; }
    button { cursor: pointer; }
    a { color: inherit; }
    :focus-visible { outline: 3px solid rgba(30, 167, 253, .45); outline-offset: 2px; }

    .topbar {
      position: sticky;
      top: 0;
      z-index: 30;
      background: rgba(7, 22, 41, .96);
      color: white;
      border-bottom: 1px solid rgba(255,255,255,.09);
      backdrop-filter: blur(14px);
    }

    .topbar-inner {
      max-width: 1240px;
      min-height: 74px;
      margin: 0 auto;
      padding: 12px 22px;
      display: flex;
      align-items: center;
      gap: 22px;
    }

    .brand {
      display: inline-flex;
      align-items: center;
      gap: 11px;
      min-width: max-content;
      text-decoration: none;
    }

    .brand-logo {
      width: 108px;
      height: 60px;
      display: block;
      object-fit: cover;
      border-radius: 9px;
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.18);
    }

    .brand-copy strong { display: block; font-size: 1rem; letter-spacing: .01em; }
    .brand-copy small { display: block; color: #a9c3d9; font-size: .73rem; margin-top: 1px; }

    .main-nav { display: flex; align-items: center; gap: 6px; margin-left: auto; }
    .nav-link {
      border: 0;
      color: #d8e7f3;
      background: transparent;
      padding: 10px 12px;
      border-radius: 10px;
      font-size: .92rem;
    }
    .nav-link:hover, .nav-link.is-active { background: rgba(255,255,255,.09); color: white; }

    .button {
      min-height: 44px;
      border-radius: 12px;
      border: 1px solid transparent;
      padding: 10px 16px;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      gap: 8px;
      font-weight: 750;
      text-decoration: none;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
    }
    .button:hover { transform: translateY(-1px); }
    .button-primary { background: var(--blue-2); color: #031526; box-shadow: 0 9px 22px rgba(30,167,253,.2); }
    .button-primary:hover { background: #49b8fb; }
    .button-dark { background: var(--ink); color: white; }
    .button-whatsapp { background: #18a668; color: white; box-shadow: 0 9px 22px rgba(24,166,104,.18); }
    .button-whatsapp:hover { background: #138c58; }
    .button-outline { background: transparent; border-color: var(--line); color: var(--text); }
    .button-outline:hover { background: #eef3f7; }
    .button-light { background: white; color: var(--ink); }
    .button-sm { min-height: 38px; padding: 8px 12px; border-radius: 10px; font-size: .9rem; }
    .button-wide { width: 100%; }

    .mobile-menu { display: none; }
    .page { max-width: 1240px; margin: 0 auto; padding: 26px 22px 64px; }

    .market-head {
      display: grid;
      grid-template-columns: minmax(0, 1.55fr) minmax(290px, .45fr);
      gap: 18px;
      margin-bottom: 18px;
    }

    .search-panel {
      position: relative;
      overflow: hidden;
      min-height: 440px;
      padding: 42px;
      border-radius: 24px;
      background:
        linear-gradient(90deg, rgba(4,16,30,.96) 0%, rgba(4,16,30,.88) 34%, rgba(4,16,30,.42) 63%, rgba(4,16,30,.10) 100%),
        url('assets/equipo-mg-montajes-v1.webp') center center / cover no-repeat,
        var(--ink);
      color: white;
      box-shadow: var(--shadow);
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .search-panel::after {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      background:
        linear-gradient(180deg, transparent 65%, rgba(3,15,27,.42)),
        linear-gradient(90deg, rgba(30,167,253,.16), transparent 30%);
    }
    .search-panel > * { position: relative; z-index: 2; }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 6px 10px;
      border-radius: 999px;
      background: rgba(30,167,253,.14);
      color: #8dd4ff;
      font-size: .78rem;
      font-weight: 800;
      letter-spacing: .05em;
      text-transform: uppercase;
    }

    .status-dot { width: 7px; height: 7px; border-radius: 50%; background: #28d797; box-shadow: 0 0 0 4px rgba(40,215,151,.12); }
    h1 { max-width: 620px; margin: 18px 0 14px; font-size: clamp(2rem, 4.8vw, 3.7rem); line-height: .98; letter-spacing: -.045em; text-shadow: 0 3px 22px rgba(0,0,0,.26); }
    .hero-lead { max-width: 570px; margin: 0 0 22px; color: #d6e6f2; font-size: 1.02rem; line-height: 1.55; }
    .hero-proof { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
    .hero-proof span { padding: 7px 9px; border: 1px solid rgba(255,255,255,.17); border-radius: 999px; background: rgba(3,15,27,.42); color: #e5f2fa; font-size: .76rem; font-weight: 750; backdrop-filter: blur(7px); }

    .search-box {
      position: relative;
      z-index: 2;
      max-width: 620px;
      display: flex;
      gap: 8px;
      padding: 7px;
      border-radius: 15px;
      background: white;
      box-shadow: 0 18px 35px rgba(0,0,0,.2);
    }
    .search-box input {
      flex: 1;
      min-width: 0;
      min-height: 48px;
      border: 0;
      border-radius: 10px;
      padding: 0 14px;
      color: var(--text);
      background: white;
      font-size: 1rem;
    }
    .search-box input:focus { outline: 0; }
    .search-box button { min-width: 118px; }

    .quick-panel {
      display: grid;
      gap: 12px;
      padding: 22px;
      background: var(--surface);
      border: 1px solid var(--line);
      border-radius: 24px;
      box-shadow: 0 12px 28px rgba(7,22,41,.06);
    }
    .quick-panel h2 { margin: 0; font-size: 1.25rem; }
    .quick-panel > p { margin: -4px 0 2px; color: var(--muted); line-height: 1.45; }
    .quick-actions { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .quick-action {
      min-height: 76px;
      padding: 13px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: space-between;
      border: 1px solid var(--line);
      border-radius: 14px;
      background: #f8fafb;
      color: var(--text);
      text-align: left;
      font-weight: 800;
    }
    .quick-action span:first-child { color: var(--blue); font-size: 1.2rem; }
    .quick-action:hover { border-color: #9fd7f8; background: var(--blue-soft); }
    .pilot-note { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: .82rem; }

    .brand-section {
      margin-bottom: 20px;
      padding: 24px;
      border: 1px solid var(--line);
      border-radius: 22px;
      background: var(--surface);
      box-shadow: 0 10px 26px rgba(7,22,41,.05);
    }
    .brand-heading { display: flex; align-items: end; justify-content: space-between; gap: 22px; margin-bottom: 17px; }
    .brand-heading h2 { margin: 0; font-size: clamp(1.35rem, 2.8vw, 1.9rem); letter-spacing: -.025em; }
    .brand-heading p { max-width: 590px; margin: 0; color: var(--muted); line-height: 1.5; }
    .brand-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
    .brand-card { min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 15px; background: #f8fafb; }
    .brand-card:hover { border-color: #afc5d3; box-shadow: 0 10px 22px rgba(7,22,41,.07); }
    .brand-name { display: block; margin-bottom: 7px; color: var(--brand-color, var(--ink)); font-size: 1.15rem; font-weight: 950; letter-spacing: -.025em; }
    .brand-card p { min-height: 50px; margin: 0; color: var(--muted); font-size: .78rem; line-height: 1.45; }
    .brand-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 13px; }
    .brand-filter { padding: 0; border: 0; background: transparent; color: var(--blue); font-size: .78rem; font-weight: 850; }
    .brand-link { color: #526579; font-size: .74rem; font-weight: 750; text-decoration: none; }
    .brand-link:hover { color: var(--blue); text-decoration: underline; }
    .brand-note { margin: 15px 0 0; color: var(--muted); font-size: .76rem; line-height: 1.5; }

    .trust-strip {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1px;
      margin-bottom: 18px;
      overflow: hidden;
      background: var(--line);
      border: 1px solid var(--line);
      border-radius: 16px;
    }
    .trust-item { display: flex; gap: 11px; align-items: center; padding: 15px 17px; background: var(--surface); }
    .trust-icon { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 10px; background: var(--blue-soft); color: var(--blue); font-weight: 900; }
    .trust-item strong { display: block; font-size: .9rem; }
    .trust-item span { display: block; margin-top: 2px; color: var(--muted); font-size: .78rem; }

    .video-showcase {
      position: relative;
      margin-bottom: 20px;
      padding: 30px;
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(270px, 360px);
      gap: 34px;
      align-items: center;
      overflow: hidden;
      border-radius: 24px;
      background:
        radial-gradient(circle at 8% 15%, rgba(30,167,253,.2), transparent 32%),
        linear-gradient(135deg, #061425 0%, #0d2d4b 100%);
      color: white;
      box-shadow: var(--shadow);
    }
    .video-showcase::after {
      content: "";
      position: absolute;
      width: 280px;
      height: 280px;
      right: -120px;
      bottom: -150px;
      border: 1px solid rgba(255,183,3,.28);
      border-radius: 50%;
      pointer-events: none;
    }
    .video-copy { position: relative; z-index: 1; }
    .video-copy h2 { max-width: 660px; margin: 17px 0 13px; font-size: clamp(1.8rem, 3.8vw, 3rem); line-height: 1.02; letter-spacing: -.04em; }
    .video-copy > p { max-width: 650px; margin: 0; color: #c9dce9; font-size: 1rem; line-height: 1.62; }
    .video-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin: 22px 0; padding: 0; list-style: none; }
    .video-features li { padding: 13px; border: 1px solid rgba(255,255,255,.12); border-radius: 13px; background: rgba(255,255,255,.055); color: #e5f1f8; font-size: .86rem; font-weight: 750; line-height: 1.35; }
    .video-features li::before { content: "✓"; display: block; margin-bottom: 7px; color: var(--amber); font-weight: 950; }
    .video-shell { position: relative; z-index: 1; width: min(100%, 340px); margin: 0; justify-self: center; padding: 8px; border: 1px solid rgba(255,255,255,.16); border-radius: 24px; background: #020b14; box-shadow: 0 24px 65px rgba(0,0,0,.38); }
    .video-shell video { width: 100%; aspect-ratio: 9 / 16; display: block; border-radius: 17px; background: #000; object-fit: cover; }
    .video-caption { margin: 9px 5px 3px; color: #afc5d5; font-size: .74rem; line-height: 1.4; text-align: center; }

    .market-layout { display: grid; grid-template-columns: 252px minmax(0, 1fr); gap: 20px; align-items: start; }
    .filters {
      position: sticky;
      top: 94px;
      padding: 18px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: var(--surface);
    }
    .filter-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 16px; }
    .filter-title h2 { margin: 0; font-size: 1.06rem; }
    .link-button { padding: 0; border: 0; background: transparent; color: var(--blue); font-size: .82rem; font-weight: 800; }
    .filter-group { margin: 0 0 16px; }
    .filter-group label { display: block; margin: 0 0 7px; color: #3e5063; font-size: .82rem; font-weight: 750; }
    .field {
      width: 100%;
      min-height: 44px;
      border: 1px solid var(--line);
      border-radius: 11px;
      background: white;
      color: var(--text);
      padding: 9px 11px;
    }
    textarea.field { min-height: 104px; resize: vertical; line-height: 1.45; }
    .checkbox-row { display: grid; gap: 9px; }
    .check { display: flex; align-items: center; gap: 9px; color: #405368; font-size: .88rem; }
    .check input { width: 18px; height: 18px; accent-color: var(--blue); }

    .catalog { min-width: 0; }
    .catalog-top { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 14px; }
    .catalog-top h2 { margin: 0; font-size: 1.35rem; }
    .catalog-top p { margin: 4px 0 0; color: var(--muted); font-size: .87rem; }
    .sort { width: auto; min-width: 175px; }

    .chips { display: flex; gap: 8px; overflow-x: auto; padding: 0 0 14px; scrollbar-width: thin; }
    .chip {
      flex: 0 0 auto;
      min-height: 38px;
      padding: 8px 13px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: white;
      color: #415367;
      font-weight: 750;
      font-size: .86rem;
    }
    .chip:hover, .chip.is-active { border-color: var(--ink); background: var(--ink); color: white; }

    .product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
    .product-card {
      min-width: 0;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 17px;
      background: var(--surface);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .product-card:hover { transform: translateY(-3px); border-color: #b8c8d3; box-shadow: 0 16px 30px rgba(7,22,41,.09); }
    .product-visual {
      position: relative;
      min-height: 184px;
      padding: 17px;
      display: flex;
      align-items: flex-end;
      background: #091a2c;
      border-bottom: 1px solid var(--line);
    }
    .product-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3,15,27,.05) 34%, rgba(3,15,27,.88) 100%); pointer-events: none; }
    .product-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .35s ease; }
    .product-card:hover .product-photo { transform: scale(1.035); }
    .visual-code { position: relative; z-index: 2; max-width: 64%; color: white; font-size: clamp(1.1rem, 2.4vw, 1.55rem); font-weight: 900; letter-spacing: -.025em; line-height: 1; text-shadow: 0 2px 14px rgba(0,0,0,.45); }
    .image-reference { position: absolute; right: 13px; bottom: 13px; z-index: 2; padding: 5px 7px; border-radius: 7px; background: rgba(3,15,27,.72); color: #d9e9f4; font-size: .64rem; font-weight: 750; backdrop-filter: blur(5px); }
    .brand-badge { position: absolute; z-index: 3; top: 13px; left: 13px; padding: 6px 8px; border-radius: 8px; background: var(--brand-color, var(--ink)); color: white; font-size: .72rem; font-weight: 900; letter-spacing: .025em; box-shadow: 0 5px 15px rgba(7,22,41,.2); }
    .card-badge {
      position: absolute;
      z-index: 3;
      top: 13px;
      right: 56px;
      padding: 6px 8px;
      border-radius: 8px;
      background: white;
      color: var(--ink);
      font-size: .72rem;
      font-weight: 850;
      box-shadow: 0 5px 15px rgba(7,22,41,.1);
    }
    .favorite {
      position: absolute;
      z-index: 3;
      top: 11px;
      right: 11px;
      width: 38px;
      height: 38px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(7,22,41,.09);
      border-radius: 50%;
      background: rgba(255,255,255,.94);
      color: #415266;
      font-size: 1.25rem;
    }
    .favorite.is-active { color: var(--danger); }
    .product-body { padding: 15px; }
    .product-kicker { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--muted); font-size: .74rem; text-transform: uppercase; letter-spacing: .04em; }
    .verified { color: var(--success); font-weight: 850; text-transform: none; letter-spacing: 0; }
    .availability { color: #8a5b00; font-weight: 850; text-transform: none; letter-spacing: 0; }
    .product-title { min-height: 43px; margin: 9px 0 8px; font-size: 1rem; line-height: 1.3; }
    .price { margin: 0; color: var(--ink); font-size: 1.25rem; font-weight: 900; letter-spacing: -.02em; }
    .price small { color: var(--muted); font-size: .76rem; font-weight: 650; }
    .price-note { display: block; margin-top: 3px; color: var(--muted); font-size: .72rem; font-weight: 650; line-height: 1.35; }
    .specs { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0; }
    .spec { padding: 5px 7px; border-radius: 7px; background: #eef3f6; color: #46586b; font-size: .72rem; font-weight: 750; }
    .location { display: flex; justify-content: space-between; gap: 8px; margin-top: 12px; color: var(--muted); font-size: .78rem; }
    .product-actions { display: grid; grid-template-columns: 1fr auto; gap: 8px; margin-top: 13px; }

    .cart-trigger { position: relative; white-space: nowrap; }
    .cart-count {
      min-width: 23px;
      height: 23px;
      padding: 0 6px;
      display: inline-grid;
      place-items: center;
      border-radius: 999px;
      background: var(--amber);
      color: var(--ink);
      font-size: .73rem;
      font-weight: 950;
    }
    .cart-count[hidden] { display: none; }
    .button-add { background: var(--blue-soft); border-color: #b8def5; color: #075f96; }
    .button-add:hover { background: #d7effd; }

    .empty-state { padding: 48px 22px; text-align: center; border: 1px dashed #b7c5cf; border-radius: var(--radius); background: rgba(255,255,255,.6); }
    .empty-state strong { display: block; font-size: 1.15rem; }
    .empty-state p { margin: 7px auto 0; max-width: 450px; color: var(--muted); }

    .advisor-section {
      margin: 18px 0 26px;
      padding: 28px;
      display: grid;
      grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
      gap: 26px;
      overflow: hidden;
      border-radius: 24px;
      background:
        radial-gradient(circle at 10% 12%, rgba(30,167,253,.18), transparent 30%),
        linear-gradient(135deg, #061425 0%, #0b2540 100%);
      color: white;
      box-shadow: var(--shadow);
    }
    .advisor-intro { padding: 10px 2px; align-self: center; }
    .advisor-intro h2 { margin: 16px 0 12px; font-size: clamp(1.75rem, 3.6vw, 2.8rem); line-height: 1; letter-spacing: -.04em; }
    .advisor-intro > p { margin: 0; color: #c2d5e4; font-size: 1rem; line-height: 1.6; }
    .advisor-points { display: grid; gap: 10px; margin: 21px 0; padding: 0; list-style: none; }
    .advisor-points li { display: grid; grid-template-columns: 27px 1fr; gap: 9px; align-items: start; color: #d9e8f3; font-size: .88rem; line-height: 1.45; }
    .advisor-points span { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; background: rgba(30,167,253,.16); color: #65c4ff; font-weight: 900; }
    .advisor-examples { display: flex; flex-wrap: wrap; gap: 8px; }
    .advisor-prompt { border: 1px solid rgba(255,255,255,.16); border-radius: 999px; padding: 8px 11px; background: rgba(255,255,255,.06); color: white; font-size: .78rem; font-weight: 750; }
    .advisor-prompt:hover { border-color: rgba(101,196,255,.7); background: rgba(30,167,253,.13); }
    .advisor-console { overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 19px; background: #f8fbfd; color: var(--text); box-shadow: 0 20px 55px rgba(0,0,0,.22); }
    .advisor-console-head { padding: 14px 16px; display: flex; align-items: center; gap: 11px; border-bottom: 1px solid var(--line); background: white; }
    .advisor-avatar { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 13px; background: linear-gradient(135deg, var(--blue-2), #0671b8); color: #041526; font-weight: 950; font-size: 1.15rem; }
    .advisor-console-head strong, .advisor-console-head small { display: block; }
    .advisor-console-head small { margin-top: 2px; color: var(--muted); font-size: .76rem; }
    .advisor-online { width: 9px; height: 9px; margin-left: auto; border-radius: 50%; background: #1dc98b; box-shadow: 0 0 0 4px rgba(29,201,139,.13); }
    .advisor-chat { min-height: 225px; max-height: 480px; padding: 16px; display: grid; gap: 12px; align-content: start; overflow-y: auto; background: linear-gradient(180deg, #f7fafc, #eef4f7); }
    .advisor-message { max-width: 92%; padding: 12px 14px; border-radius: 14px; font-size: .88rem; line-height: 1.52; }
    .advisor-message.assistant { justify-self: start; border-bottom-left-radius: 5px; background: white; box-shadow: 0 6px 20px rgba(7,22,41,.07); }
    .advisor-message.user { justify-self: end; border-bottom-right-radius: 5px; background: var(--ink-2); color: white; }
    .advisor-message h3 { margin: 0 0 7px; font-size: 1rem; }
    .advisor-message p { margin: 0; }
    .advisor-message p + p { margin-top: 8px; }
    .advisor-message ul { margin: 8px 0 0; padding-left: 19px; }
    .advisor-message li + li { margin-top: 4px; }
    .advisor-materials { margin-top: 11px; padding: 11px; border: 1px solid #cae7f8; border-radius: 11px; background: #eef8fe; }
    .advisor-materials strong { display: block; margin-bottom: 5px; color: #075c91; }
    .advisor-warning { margin-top: 10px !important; padding-top: 9px; border-top: 1px solid var(--line); color: #6c5010; font-size: .8rem; }
    .advisor-answer-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 11px; }
    .advisor-answer-actions .button { min-height: 38px; padding: 8px 11px; font-size: .78rem; }
    .advisor-case { padding: 10px 12px; background: #f0f6fa; border-left: 3px solid #0c84d9; border-radius: 7px; overflow-wrap: anywhere; font-size: .8rem; }
    .advisor-delivery { margin: 14px 0; padding: 14px; border-left: 3px solid var(--amber); border-radius: 8px; background: #fff7e7; color: #273747; overflow-wrap: anywhere; font-size: 1rem; line-height: 1.55; }
    .advisor-delivery > strong { display: block; margin-bottom: 8px; }
    .advisor-delivery p { margin: 8px 0 0; }
    .advisor-replies { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; }
    .advisor-replies .advisor-prompt { min-height: 44px; text-align: left; }
    .advisor-sources { font-size: .75rem; line-height: 1.6; margin-top: 14px; }
    .advisor-sources a { color: #075f96; text-underline-offset: 3px; }
    .advisor-reset { margin-left: auto; padding: 7px 10px; min-height: 38px; border: 1px solid #bfd5e4; border-radius: 9px; color: #075f96; background: #f4f9fd; font-weight: 750; font-size: .73rem; }
    .advisor-form { padding: 13px; border-top: 1px solid var(--line); background: white; }
    .advisor-form textarea { min-height: 82px; }
    .advisor-form-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 9px; }
    .advisor-form-bottom small { max-width: 370px; color: var(--muted); font-size: .69rem; line-height: 1.35; }
    .advisor-thinking { display: inline-flex; gap: 5px; align-items: center; }
    .advisor-thinking i { width: 6px; height: 6px; border-radius: 50%; background: var(--blue); animation: advisorPulse .9s infinite alternate; }
    .advisor-thinking i:nth-child(2) { animation-delay: .15s; }
    .advisor-thinking i:nth-child(3) { animation-delay: .3s; }
    @keyframes advisorPulse { to { opacity: .25; transform: translateY(-2px); } }

    .how-it-works { margin-top: 38px; padding: 26px; border-radius: 22px; background: var(--ink); color: white; }
    .section-heading { display: flex; justify-content: space-between; gap: 22px; align-items: end; margin-bottom: 20px; }
    .section-heading h2 { margin: 0; font-size: clamp(1.45rem, 3vw, 2.15rem); letter-spacing: -.025em; }
    .section-heading p { max-width: 520px; margin: 0; color: #adc1d3; line-height: 1.5; }
    .steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
    .step { padding: 18px; border: 1px solid rgba(255,255,255,.1); border-radius: 15px; background: rgba(255,255,255,.055); }
    .step-number { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; background: var(--blue-2); color: var(--ink); font-weight: 900; }
    .step strong { display: block; margin: 18px 0 7px; }
    .step p { margin: 0; color: #adc1d3; font-size: .86rem; line-height: 1.45; }

    .seller-callout { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 20px; margin-top: 18px; padding: 24px 26px; border-radius: 20px; background: var(--amber-soft); border: 1px solid #f6dc83; }
    .seller-callout h2 { margin: 0 0 6px; font-size: 1.35rem; }
    .seller-callout p { margin: 0; color: #6b5b27; }

    .company-section {
      margin-top: 18px;
      padding: 26px;
      border: 1px solid var(--line);
      border-radius: 22px;
      background: var(--surface);
    }
    .company-intro { display: grid; grid-template-columns: 190px 1fr; gap: 24px; align-items: center; }
    .company-logo { width: 100%; height: auto; display: block; border-radius: 14px; background: #050505; }
    .company-intro h2 { margin: 0 0 7px; font-size: clamp(1.5rem, 3vw, 2.25rem); letter-spacing: -.03em; }
    .company-intro p { margin: 0; max-width: 720px; color: var(--muted); line-height: 1.55; }
    .service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 22px; }
    .service-item { padding: 15px; border-radius: 14px; background: #f1f6f9; }
    .service-item strong { display: block; margin-bottom: 5px; color: var(--ink); }
    .service-item span { color: var(--muted); font-size: .84rem; line-height: 1.45; }
    .contact-row { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; }
    .market-rules { margin-top: 18px; padding: 17px 19px; border-radius: 15px; background: #f7f9fa; border: 1px solid var(--line); }
    .market-rules strong { display: block; margin-bottom: 7px; }
    .market-rules p { margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.55; }

    .catalog-disclaimer { margin: 16px 0 0; padding: 13px 15px; border-left: 4px solid var(--amber); border-radius: 10px; background: #fff9e8; color: #65531c; font-size: .78rem; line-height: 1.5; }

    footer { margin-top: 36px; border-top: 1px solid var(--line); }
    .footer-inner { max-width: 1240px; margin: 0 auto; padding: 30px 22px; display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 26px; color: var(--muted); font-size: .85rem; }
    .footer-brand { color: var(--ink); font-weight: 850; }
    .footer-block strong { display: block; margin-bottom: 7px; color: var(--ink); }
    .footer-block span, .footer-block a { display: block; margin-top: 5px; color: var(--muted); text-decoration: none; }
    .footer-block a:hover { color: var(--blue); text-decoration: underline; }

    .floating-whatsapp {
      position: fixed;
      right: 18px;
      bottom: 18px;
      z-index: 60;
      min-height: 48px;
      padding: 11px 16px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      border-radius: 999px;
      background: #18a668;
      color: white;
      font-weight: 850;
      text-decoration: none;
      box-shadow: 0 14px 34px rgba(5,76,46,.28);
    }
    .floating-whatsapp:hover { background: #138c58; transform: translateY(-1px); }

    .floating-cart {
      position: fixed;
      right: 18px;
      bottom: 78px;
      z-index: 59;
      min-height: 46px;
      padding: 10px 14px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      border: 1px solid rgba(255,255,255,.18);
      border-radius: 999px;
      background: var(--ink);
      color: white;
      font-weight: 850;
      box-shadow: 0 14px 34px rgba(7,22,41,.24);
    }
    .floating-cart:hover { background: var(--ink-2); transform: translateY(-1px); }

    dialog {
      width: min(620px, calc(100% - 28px));
      max-height: calc(100vh - 30px);
      padding: 0;
      overflow: auto;
      border: 0;
      border-radius: 20px;
      color: var(--text);
      background: white;
      box-shadow: 0 30px 90px rgba(7,22,41,.3);
    }
    dialog::backdrop { background: rgba(3,15,27,.72); backdrop-filter: blur(4px); }
    .dialog-head { position: sticky; top: 0; z-index: 2; padding: 19px 20px; display: flex; align-items: center; justify-content: space-between; gap: 18px; background: white; border-bottom: 1px solid var(--line); }
    .dialog-head h2 { margin: 0; font-size: 1.2rem; }
    .icon-button { width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 11px; background: white; color: var(--text); font-size: 1.2rem; }
    .dialog-body { padding: 20px; }
    .form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .form-group { display: grid; gap: 7px; }
    .form-group.full { grid-column: 1 / -1; }
    .form-group label { font-size: .84rem; font-weight: 800; color: #3b4e61; }
    .form-help { color: var(--muted); font-size: .76rem; line-height: 1.4; }
    .dialog-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 20px; }
    .detail-title { margin: 0 0 4px; font-size: 1.5rem; letter-spacing: -.02em; }
    .detail-meta { color: var(--muted); font-size: .86rem; }
    .detail-image { width: 100%; aspect-ratio: 16 / 8.7; margin: 14px 0 4px; display: block; object-fit: cover; border-radius: 14px; background: var(--ink); }
    .detail-price { margin: 22px 0 8px; color: var(--ink); font-size: 1.8rem; font-weight: 900; }
    .detail-copy { line-height: 1.6; color: #405267; }
    .detail-specs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; margin: 18px 0; overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: var(--line); }
    .detail-spec { padding: 12px; background: white; }
    .detail-spec small { display: block; color: var(--muted); margin-bottom: 3px; }
    .seller-box { margin-top: 18px; padding: 15px; border-radius: 14px; background: #f2f7fa; }
    .seller-box strong { display: block; }
    .seller-box span { display: block; margin-top: 3px; color: var(--muted); font-size: .83rem; }
    .source-box { margin-top: 16px; padding: 14px; border-left: 4px solid var(--blue); border-radius: 11px; background: var(--blue-soft); }
    .source-box strong, .source-box a, .source-box span { display: block; }
    .source-box a { margin-top: 6px; color: #075f96; font-weight: 850; }
    .source-box span { margin-top: 5px; color: #48647a; font-size: .76rem; line-height: 1.45; }

    .cart-list { display: grid; gap: 10px; }
    .cart-item {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 14px;
      padding: 14px;
      border: 1px solid var(--line);
      border-radius: 14px;
      background: #f8fafb;
    }
    .cart-item strong { display: block; line-height: 1.35; }
    .cart-item small { display: block; margin-top: 4px; color: var(--muted); line-height: 1.35; }
    .cart-item-actions { display: grid; justify-items: end; gap: 7px; }
    .quantity-field { width: 76px; min-height: 38px; padding: 6px 8px; text-align: center; }
    .remove-cart { border: 0; background: transparent; color: var(--danger); font-size: .76rem; font-weight: 800; }
    .cart-empty { padding: 35px 18px; text-align: center; border: 1px dashed #b7c5cf; border-radius: 14px; background: #f8fafb; }
    .cart-empty strong { display: block; margin-bottom: 7px; font-size: 1.08rem; }
    .cart-empty p { margin: 0; color: var(--muted); line-height: 1.5; }
    .cart-summary { margin: 15px 0; padding: 15px; border-radius: 14px; background: var(--ink); color: white; }
    .summary-row { display: flex; justify-content: space-between; gap: 16px; }
    .summary-row + .summary-row { margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(255,255,255,.12); }
    .summary-row span { color: #c5d6e4; }
    .summary-row strong { text-align: right; }
    .purchase-note { margin: 15px 0; padding: 13px 14px; border-left: 4px solid var(--blue); border-radius: 10px; background: var(--blue-soft); color: #17445f; font-size: .8rem; line-height: 1.5; }
    .payment-card { margin-top: 15px; padding: 15px; border: 1px solid #bfe4d3; border-radius: 14px; background: #effaf5; }
    .payment-card strong { display: block; color: #086644; }
    .payment-card p { margin: 6px 0 0; color: #416457; font-size: .8rem; line-height: 1.5; }
    .terms-check { display: flex; align-items: flex-start; gap: 9px; margin-top: 15px; color: #405368; font-size: .8rem; line-height: 1.45; }
    .terms-check input { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 1px; accent-color: var(--blue); }

    .toast {
      position: fixed;
      right: 20px;
      bottom: 20px;
      z-index: 80;
      max-width: min(380px, calc(100% - 40px));
      padding: 14px 16px;
      border-radius: 13px;
      background: var(--ink);
      color: white;
      box-shadow: var(--shadow);
      transform: translateY(24px);
      opacity: 0;
      pointer-events: none;
      transition: .24s ease;
    }
    .toast.is-visible { transform: translateY(0); opacity: 1; }

    @media (max-width: 1040px) {
      .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .main-nav { display: none; }
      .cart-trigger { margin-left: auto; }
      .mobile-menu { display: inline-flex; margin-left: 0; }
      .brand-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    }

    @media (max-width: 820px) {
      .market-head { grid-template-columns: 1fr; }
      .quick-panel { grid-template-columns: 1fr 1.15fr; align-items: center; }
      .quick-panel h2, .quick-panel > p, .pilot-note { grid-column: 1; }
      .quick-actions { grid-column: 2; grid-row: 1 / span 3; }
      .market-layout { grid-template-columns: 1fr; }
      .filters { position: static; display: none; }
      .filters.is-open { display: block; }
      .catalog-top { align-items: end; }
      .filter-toggle { display: inline-flex !important; }
      .steps { grid-template-columns: repeat(2, 1fr); }
      .service-grid { grid-template-columns: repeat(2, 1fr); }
      .brand-heading { align-items: flex-start; flex-direction: column; }
      .advisor-section { grid-template-columns: 1fr; }
      .video-showcase { grid-template-columns: 1fr; }
      .video-copy { text-align: center; }
      .video-copy h2, .video-copy > p { margin-left: auto; margin-right: auto; }
      .video-copy .button { margin-inline: auto; }
    }

    @media (min-width: 821px) { .filter-toggle { display: none !important; } }

    @media (max-width: 600px) {
      .topbar-inner { min-height: 66px; padding: 10px 14px; gap: 8px; }
      .brand-copy { display: none; }
      .brand-logo { width: 80px; height: 45px; }
      .topbar .button-primary { display: none; }
      .header-whatsapp { display: none; }
      .page { padding: 14px 14px 44px; }
      .search-panel { padding: 22px 18px; min-height: auto; border-radius: 20px; }
      .search-panel { background-position: 58% center; }
      h1 { margin: 16px 0; font-size: 2.2rem; }
      .hero-lead { font-size: .94rem; }
      .search-box { display: grid; }
      .search-box button { width: 100%; }
      .quick-panel { display: grid; grid-template-columns: 1fr; padding: 18px; }
      .quick-panel h2, .quick-panel > p, .pilot-note, .quick-actions { grid-column: 1; grid-row: auto; }
      .trust-strip { grid-template-columns: 1fr; }
      .video-showcase { padding: 20px; gap: 22px; }
      .video-features { grid-template-columns: 1fr; }
      .video-copy .button { width: 100%; }
      .video-shell { width: min(100%, 320px); }
      .catalog-top { align-items: flex-start; flex-direction: column; }
      .catalog-top > div:last-child { display: flex; width: 100%; gap: 8px; }
      .sort { min-width: 0; flex: 1; }
      .product-grid { grid-template-columns: 1fr; }
      .brand-section { padding: 19px; }
      .brand-grid { grid-template-columns: 1fr 1fr; }
      .brand-card p { min-height: 0; }
      .advisor-section { margin: 14px 0 22px; padding: 19px; gap: 18px; }
      .advisor-form-bottom { align-items: stretch; flex-direction: column; }
      .advisor-form-bottom .button { width: 100%; }
      .section-heading { align-items: flex-start; flex-direction: column; }
      .steps { grid-template-columns: 1fr; }
      .seller-callout { grid-template-columns: 1fr; }
      .seller-callout .button { width: 100%; }
      .company-section { padding: 20px; }
      .company-intro { grid-template-columns: 1fr; }
      .company-logo { width: min(230px, 100%); }
      .service-grid { grid-template-columns: 1fr; }
      .contact-row .button { width: 100%; }
      .footer-inner { grid-template-columns: 1fr; }
      .form-grid { grid-template-columns: 1fr; }
      .form-group.full { grid-column: auto; }
      .detail-specs { grid-template-columns: 1fr; }
      .dialog-actions { flex-direction: column-reverse; }
      .dialog-actions .button { width: 100%; }
      .floating-whatsapp { right: 12px; bottom: 12px; padding: 11px 14px; }
      .floating-cart { right: 12px; bottom: 72px; padding: 10px 12px; }
      .cart-item { grid-template-columns: 1fr; }
      .cart-item-actions { grid-template-columns: auto auto; align-items: center; justify-items: start; justify-content: space-between; }
    }

    .product-title a { color: inherit; text-decoration: none; }
    .product-title a:hover { color: var(--primary); }

    .solution-discovery {
      margin: 24px 0;
      padding: clamp(22px, 4vw, 42px);
      border-radius: 24px;
      background: linear-gradient(135deg, #eaf6ff, #f7fbfe 58%, #eef3f6);
      border: 1px solid #d8eaf5;
    }
    .solution-discovery-grid {
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      gap: 14px;
      margin: 24px 0;
    }
    .solution-discovery-card {
      display: flex;
      min-height: 180px;
      flex-direction: column;
      padding: 20px;
      border-radius: 17px;
      border: 1px solid #dce7ee;
      background: #fff;
      color: #071629;
      text-decoration: none;
      box-shadow: 0 8px 22px rgba(7, 22, 41, .06);
      transition: transform .2s ease, box-shadow .2s ease;
    }
    .solution-discovery-card:hover { transform: translateY(-3px); box-shadow: 0 13px 28px rgba(7, 22, 41, .11); }
    .solution-discovery-card strong { font-size: 1.05rem; }
    .solution-discovery-card span { margin-top: 8px; color: #53677b; line-height: 1.55; }
    .solution-discovery-card em { margin-top: auto; padding-top: 14px; color: #0c84d9; font-style: normal; font-weight: 800; }

    .hoist-spotlight {
      margin: 22px 0;
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(300px, .72fr);
      overflow: hidden;
      border: 1px solid #213b53;
      border-radius: 24px;
      background: linear-gradient(135deg, #061423 0%, #0a2338 62%, #111b25 100%);
      color: white;
      box-shadow: 0 22px 50px rgba(7, 22, 41, .15);
    }
    .hoist-spotlight-copy { align-self: center; padding: clamp(26px, 5vw, 58px); }
    .hoist-spotlight-copy .eyebrow { color: #ffdbd5; background: rgba(219, 47, 40, .18); }
    .hoist-spotlight-copy h2 { margin-top: 15px; max-width: 680px; font-size: clamp(2rem, 4.3vw, 3.7rem); line-height: .98; letter-spacing: -.045em; }
    .hoist-spotlight-copy > p { margin-top: 18px; max-width: 650px; color: #c1d3e1; font-size: 1.04rem; line-height: 1.7; }
    .hoist-spotlight-copy ul { margin: 24px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; list-style: none; }
    .hoist-spotlight-copy li { padding: 12px 14px; border: 1px solid rgba(255,255,255,.14); border-radius: 11px; background: rgba(255,255,255,.06); color: #f4f8fb; font-weight: 780; }
    .hoist-spotlight-actions { margin-top: 25px; display: flex; flex-wrap: wrap; gap: 10px; }
    .hoist-spotlight-media { display: block; min-height: 560px; background: #050b11; }
    .hoist-spotlight-media img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }

    .quick-panel.focus-summary {
      position: relative;
      display: flex;
      flex-direction: column;
      justify-content: center;
      overflow: hidden;
      border-color: rgba(255,255,255,.1);
      background:
        linear-gradient(155deg, rgba(30,167,253,.14), transparent 46%),
        #071629;
      color: white;
    }
    .quick-panel.focus-summary::after {
      content: "";
      position: absolute;
      width: 180px;
      height: 180px;
      right: -95px;
      bottom: -100px;
      border: 18px solid rgba(255,183,3,.12);
      border-radius: 50%;
      pointer-events: none;
    }
    .focus-summary-number {
      color: var(--amber);
      font-size: clamp(3.2rem, 7vw, 5.2rem);
      font-weight: 950;
      letter-spacing: -.08em;
      line-height: .8;
    }
    .quick-panel.focus-summary h2 { color: white; font-size: 1.45rem; }
    .quick-panel.focus-summary > p { color: #bdd0df; }
    .focus-summary ul { margin: 2px 0 4px; padding: 0; list-style: none; }
    .focus-summary li { padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,.09); color: #e7f0f6; font-size: .86rem; font-weight: 750; }
    .focus-summary li::before { content: "▰"; margin-right: 8px; color: var(--blue-2); font-size: .62rem; }
    .quick-panel.focus-summary .button-dark { background: var(--amber); color: #071629; }
    .quick-panel.focus-summary .pilot-note { color: #a9c1d3; }

    .focus-lines {
      margin-bottom: 20px;
      padding: clamp(24px, 4vw, 42px);
      overflow: hidden;
      border: 1px solid rgba(255,255,255,.1);
      border-bottom: 4px solid var(--amber);
      border-radius: 24px;
      background:
        linear-gradient(120deg, rgba(30,167,253,.13), transparent 38%),
        linear-gradient(160deg, #061425, #0b2844);
      color: white;
      box-shadow: var(--shadow);
    }
    .focus-lines-heading { display: grid; grid-template-columns: minmax(0, .9fr) minmax(300px, .55fr); gap: 30px; align-items: end; }
    .focus-lines-heading h2 { max-width: 620px; margin: 13px 0 0; font-size: clamp(1.8rem, 3.5vw, 2.8rem); line-height: 1.02; letter-spacing: -.04em; }
    .focus-lines-heading > p { margin: 0; color: #bfd1df; line-height: 1.65; }
    .focus-line-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-top: 28px; }
    .focus-line-card {
      min-width: 0;
      min-height: 245px;
      padding: 18px;
      display: flex;
      flex-direction: column;
      border: 1px solid rgba(255,255,255,.13);
      border-radius: 14px;
      background: rgba(255,255,255,.055);
      color: white;
      text-decoration: none;
      transition: transform .2s ease, border-color .2s ease, background .2s ease;
    }
    .focus-line-card:hover { transform: translateY(-4px); border-color: rgba(101,196,255,.6); background: rgba(255,255,255,.095); }
    .focus-line-card > span { color: var(--amber); font-size: .76rem; font-weight: 950; letter-spacing: .14em; }
    .focus-line-card strong { margin-top: 18px; font-size: 1.08rem; line-height: 1.18; }
    .focus-line-card small { margin-top: 10px; color: #bcd0de; font-size: .77rem; line-height: 1.55; }
    .focus-line-card em { margin-top: auto; padding-top: 16px; color: #6bc7ff; font-size: .8rem; font-style: normal; font-weight: 850; }
    .focus-note { margin: 18px 0 0; padding: 13px 15px; border-left: 4px solid var(--amber); background: rgba(0,0,0,.15); color: #dbe8f1; font-size: .8rem; line-height: 1.55; }

    @media (max-width: 1100px) {
      .solution-discovery-grid, .focus-line-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
      .focus-line-card { min-height: 220px; }
    }

    @media (max-width: 860px) {
      .hoist-spotlight { grid-template-columns: 1fr; }
      .hoist-spotlight-media { min-height: 0; max-height: 720px; }
      .hoist-spotlight-media img { height: auto; object-fit: contain; }
      .solution-discovery-grid, .focus-line-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .focus-lines-heading { grid-template-columns: 1fr; gap: 14px; align-items: start; }
      .quick-panel.focus-summary { display: flex; }
    }

    @media (max-width: 520px) {
      .hoist-spotlight { border-radius: 18px; }
      .hoist-spotlight-copy { padding: 24px 18px; }
      .hoist-spotlight-copy ul { grid-template-columns: 1fr; }
      .hoist-spotlight-actions .button { width: 100%; }
      .solution-discovery-grid, .focus-line-grid { grid-template-columns: 1fr; }
      .solution-discovery-card, .focus-line-card { min-height: 0; }
      .focus-lines { padding: 21px 18px; border-radius: 20px; }
      .quick-panel.focus-summary { display: flex; }
    }

    @media (max-width: 420px) {
      .brand-grid { grid-template-columns: 1fr; }
    }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
    }

    /* MG AutoVenta: solicitud técnica con la identidad oficial de MG. */
    [hidden] { display: none !important; }
    #autoventa, #catalogo, #lineas, #asesor-yuber { scroll-margin-top: 100px; }
    .brand-logo { width: 72px; height: 70px; object-fit: contain; }
    .autoventa-side-logo { width: 150px; max-width: 100%; height: auto; border-radius: 12px; margin-bottom: 8px; }
    .autoventa-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 15px; margin-top: 20px; }
    .autoventa-hero-link { color: #d6e6f2; font-size: .85rem; text-underline-offset: 4px; }
    .autoventa-section { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 34px; padding: clamp(22px,4vw,42px); margin: 24px 0; border-radius: 24px; border: 1px solid #1d405d; border-top: 4px solid var(--amber); background: #071629; color: #fff; }
    .autoventa-intro { align-self: center; }
    .autoventa-logo { display: block; width: 154px; max-width: 100%; height: auto; border-radius: 14px; margin-bottom: 24px; }
    .autoventa-intro h2 { font-size: clamp(1.8rem,3.5vw,2.8rem); line-height: 1.03; letter-spacing: -.035em; margin: 18px 0; }
    .autoventa-intro > p { color: #bdd0df; line-height: 1.65; }
    .autoventa-benefits { padding-left: 20px; line-height: 1.8; color: #e6eff7; font-size: .9rem; }
    .autoventa-availability { margin-top: 24px; padding-left: 14px; border-left: 3px solid var(--amber); font-size: .83rem; }
    .autoventa-catalog-link { display: inline-block; margin-top: 9px; color: #7dcbff; font-size: .85rem; text-underline-offset: 4px; }
    .autoventa-panel { min-width: 0; padding: clamp(18px,3vw,28px); border: 1px solid #dce4ea; border-radius: 18px; background: white; color: var(--text); }
    .autoventa-steps { margin: 0 0 28px; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; font-size: .75rem; color: #687c8f; }
    .autoventa-steps li { border-bottom: 3px solid #e3ebf0; padding-bottom: 13px; }
    .autoventa-steps li[aria-current] { color: #075f96; border-color: #0c84d9; font-weight: 850; }
    .autoventa-steps li.is-complete { border-color: #087b55; }
    .autoventa-steps span { display: inline-grid; place-items: center; width: 22px; height: 22px; background: #edf4f8; border-radius: 50%; margin-right: 4px; font-weight: 850; }
    .autoventa-panel fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
    .autoventa-panel legend { font-size: 1.2rem; font-weight: 850; margin-bottom: 14px; line-height: 1.4; }
    .autoventa-panel label { display: block; margin: 15px 0 7px; color: #3b4e61; font-size: .82rem; font-weight: 800; }
    .autoventa-panel .field { width: 100%; }
    .autoventa-shortcuts { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 12px; }
    .autoventa-shortcuts button { background: #e8f5ff; border: 1px solid #c8e2f3; border-radius: 8px; color: #075f96; padding: 8px 10px; font-size: .74rem; }
    .autoventa-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
    .autoventa-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 9px; margin-top: 24px; }
    .autoventa-hint, .autoventa-handoff { line-height: 1.55; color: #53677b; font-size: .82rem; }
    .autoventa-hint { background: #edf7fd; border-radius: 10px; padding: 12px; }
    .autoventa-summary { padding: 14px; border: 1px solid #d8e6ef; background: #f4f8fb; border-radius: 12px; overflow-wrap: anywhere; }
    .autoventa-summary p { margin: 6px 0; line-height: 1.5; font-size: .83rem; white-space: pre-wrap; }
    .autoventa-copy { display: block; margin: 16px 0 0 auto; border: 0; background: transparent; color: #075f96; text-decoration: underline; text-underline-offset: 3px; min-height: 44px; font-weight: 750; font-size: .83rem; }
    .autoventa-feedback { color: #164a6c; line-height: 1.55; font-size: .82rem; }
    .autoventa-panel .autoventa-catalog-link { color: #075f96; }
    .autoventa-footer-logo { width: 100px; height: auto; border-radius: 10px; display: block; margin-bottom: 12px; }
    @media(max-width:860px) { .autoventa-section { grid-template-columns: 1fr; gap: 24px; } .autoventa-logo { width: 128px; } }
    @media(max-width:560px) { .autoventa-section { padding: 20px 16px; border-radius: 18px; } .autoventa-fields { grid-template-columns: 1fr; } .autoventa-actions { flex-direction: column-reverse; } .autoventa-actions .button { width: 100%; } .autoventa-steps { gap: 6px; font-size: .68rem; } .autoventa-steps span { display: block; margin-bottom: 6px; } .autoventa-hero-actions .button { width: 100%; } .brand-logo { width: 62px; height: 60px; } }

/* Availability is based on dated confirmations in the managed catalog. */
.product-availability { display: grid; justify-items: start; gap: 5px; margin-top: 12px; font-size: .78rem; line-height: 1.5; }
.product-availability .availability { display: inline-flex; align-items: center; gap: 7px; border: 1px solid transparent; border-radius: 999px; padding: 4px 10px; font-size: .75rem; }
.product-availability .availability::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.availability.availability--available { color: #166534; background: #f0fdf4; border-color: #bbf7d0; }
.availability.availability--on-order { color: #854d0e; background: #fefce8; border-color: #fde68a; }
.availability.availability--out-of-stock { color: #991b1b; background: #fef2f2; border-color: #fecaca; }
.availability.availability--unconfirmed { color: #475569; background: #f8fafc; border-color: #e2e8f0; }
.availability-info { color: #334155; overflow-wrap: anywhere; }
.availability-checked { color: #64748b; font-size: .7rem; }
