:root {
      --bg: #ffffff;
      --panel: #F4F9FC;
      --panel-strong: #EAF3F8;
      --ink: #0A0A0D;
      --title: #2F3C4A;
      --text: #48515A;
      --muted: #6B737B;
      --micro: #8D939A;
      --line: #DDEAF2;
      --shadow: 0 18px 45px rgba(10, 10, 13, .055);

      --max: 1260px;
      --header-height: 78px;
      --grid-gap-x: 30px;
      --grid-gap-y: 68px;
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      background: #F2F8FC;
      color: var(--text);
      font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 14px;
      line-height: 1.45;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    img {
      display: block;
      max-width: 100%;
    }

    ::selection {
      background: rgba(10, 10, 13, .12);
      color: var(--ink);
    }

    .top-line {
      height: 18px;
      background: #ffffff;
    }

    .site-header {
      height: var(--header-height);
      background: #ffffff;
      border-bottom: 1px solid rgba(230, 234, 238, .9);
      position: sticky;
      top: 0;
      z-index: 50;
      backdrop-filter: blur(14px);
      box-shadow: 0 8px 22px rgba(10, 10, 13, .018);
    }

    .header-inner {
      width: 100%;
      max-width: 1480px;
      height: 100%;
      margin: 0 auto;
      padding: 0 46px;
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto;
      align-items: center;
      gap: 28px;
    }

    .brand {
      display: inline-flex;
      align-items: center;
      width: max-content;
      color: var(--ink);
    }

    .brand-logo-img {
      width: clamp(115px, 10vw, 160px);
      height: auto;
      max-height: 68px;
      display: block;
      object-fit: contain;
    }

    .header-actions {
      grid-column: 3;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 16px;
    }

    .search {
      width: 260px;
      height: 34px;
      display: grid;
      grid-template-columns: 1fr 34px;
      border: 1px solid #C8CED5;
      background: #fff;
    }

    .search input {
      width: 100%;
      min-width: 0;
      border: 0;
      outline: 0;
      padding: 0 12px;
      font-size: 13px;
      color: var(--text);
      background: transparent;
    }

    .search button {
      border: 0;
      border-left: 1px solid var(--ink);
      background: transparent;
      cursor: pointer;
      position: relative;
    }

    .search button::before {
      content: "";
      width: 15px;
      height: 15px;
      border: 1.35px solid var(--ink);
      border-radius: 999px;
      position: absolute;
      top: 8px;
      left: 8px;
    }

    .search button::after {
      content: "";
      width: 7px;
      height: 1.35px;
      background: var(--ink);
      position: absolute;
      right: 7px;
      bottom: 8px;
      transform: rotate(45deg);
    }

    .search:focus-within {
      border-color: var(--ink);
      box-shadow: 0 0 0 3px rgba(10, 10, 13, .045);
    }

    .hero {
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 0;
    }

    .hero-media {
      min-height: clamp(520px, 43vw, 760px);
      width: 100%;
      position: relative;
      overflow: hidden;
      background: #F2F8FC;
      isolation: isolate;
    }

    .hero-bg {
      position: absolute;
      inset: 0;
      background-image: url("https://res.cloudinary.com/dfrvueo6p/image/upload/v1782272763/PORTADA_ck9dzw.webp");
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center top;
      transform: translate3d(0, 0, 0);
      transform-origin: center top;
      will-change: transform;
      z-index: 0;
    }

    .hero-media::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: -1px;
      height: 14%;
      background: linear-gradient(to bottom, rgba(242,248,252,0) 0%, rgba(242,248,252,.20) 58%, #F2F8FC 100%);
      z-index: 2;
      pointer-events: none;
    }

    .hero-media::before {
      content: none;
    }

    .hero-copy {
      position: absolute;
      left: 50%;
      top: clamp(118px, 18svh, 178px);
      z-index: 3;
      width: min(920px, calc(100% - clamp(32px, 8vw, 120px)));
      padding: 0;
      text-align: center;
      color: var(--ink);
      transform: translate3d(-50%, 0, 0);
      will-change: transform, opacity;
    }

    .hero-copy .page-title {
      margin: 0;
      color: #fff8ee;
      font-size: clamp(26px, 2.85vw, 40px);
      font-weight: 600;
      line-height: 1.05;
      letter-spacing: .04em;
      text-shadow:
        0 1px 1px rgba(0, 0, 0, .52),
        0 2px 8px rgba(0, 0, 0, .32),
        0 0 1px rgba(17, 17, 17, .86);
    }

    .hero-copy p {
      max-width: 620px;
      margin: clamp(8px, 1.4vw, 12px) auto 0;
      color: rgba(255, 248, 238, .94);
      font-size: clamp(13px, 1.06vw, 14.5px);
      line-height: 1.52;
      text-shadow:
        0 1px 2px rgba(0, 0, 0, .54),
        0 2px 8px rgba(0, 0, 0, .26);
    }

    .intro {
      max-width: 650px;
      margin: 30px auto 56px;
      padding: 0 24px;
      text-align: center;
      color: var(--ink);
    }

    .page-title {
      margin: 0 0 20px;
      font-family: Georgia, "Times New Roman", serif;
      font-size: 30px;
      line-height: 1.05;
      letter-spacing: -0.035em;
      font-weight: 500;
      color: var(--ink);
      text-transform: uppercase;
    }

    .intro p {
      margin: 0;
      font-size: 14px;
      line-height: 1.45;
      color: var(--ink);
    }

    .divider {
      max-width: var(--max);
      margin: 14px auto 18px;
      padding: 0 24px;
    }

    .divider::before {
      content: "";
      display: block;
      height: 1px;
      background: var(--line);
    }
    .catalog {
      max-width: var(--max);
      margin: 0 auto;
      padding: 0 24px 144px;
    }

    .product-grid {
      list-style: none;
      margin: 0;
      padding: 0;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      column-gap: var(--grid-gap-x);
      row-gap: var(--grid-gap-y);
    }

    .product-card {
      min-width: 0;
      position: relative;
      opacity: 1;
      transform: translateY(0);
      transition: opacity .24s ease, transform .24s ease;
      contain: layout paint;
    }

    .product-card.is-hidden {
      display: none;
    }

    .product-media {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      aspect-ratio: 1 / 1;
      overflow: hidden;
      background:
        var(--image, none),
        radial-gradient(circle at 52% 36%, rgba(255,255,255,.50), transparent 28%),
        linear-gradient(135deg, #E6F0F7 0%, #C7D8E4 50%, #F3FAFD 100%);
      background-size: cover, auto, auto;
      background-position: center, center, center;
    }

    .product-media::before {
      content: "";
      width: 30%;
      max-width: 86px;
      min-width: 58px;
      aspect-ratio: 3 / 4.2;
      border: 1px solid rgba(10, 10, 13, .22);
      background: linear-gradient(145deg, rgba(255,255,255,.28), rgba(255,255,255,.10));
      box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, .20),
        0 14px 34px rgba(10, 10, 13, .10);
    }

    .product-media[style*="--image"]::before {
      display: none;
    }

    .product-media:has(img)::before {
      display: none;
    }

    .product-media img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
    }

    .product-info {
      min-height: 148px;
      padding: 15px 16px 16px;
      background: #EAF3F8;
      color: var(--ink);
      border-radius: 0 0 16px 16px;
      overflow: hidden;
    }

    .product-family {
      margin: 0 0 9px;
      color: rgba(10, 10, 13, .90);
      font-size: 10px;
      line-height: 1;
      letter-spacing: .075em;
      font-weight: 800;
      text-transform: uppercase;
    }


    .product-brand {
      margin: 0 0 3px;
      color: var(--ink);
      font-size: 12px;
      line-height: 1.18;
      letter-spacing: .045em;
      font-weight: 800;
      text-transform: uppercase;
    }

    .product-name {
      margin: 0 0 8px;
      min-height: auto;
      color: var(--ink);
      font-size: 12px;
      line-height: 1.34;
      letter-spacing: .045em;
      font-weight: 800;
      text-transform: uppercase;
    }

    .product-type {
      margin: -4px 0 8px;
      color: var(--ink);
      font-size: 12px;
      line-height: 1.2;
      font-weight: 600;
    }

    .product-format {
      margin: -4px 0 8px;
      color: rgba(10, 10, 13, .78);
      font-size: 12px;
      line-height: 1.15;
      font-weight: 600;
    }

    .product-format {
      margin-top: -4px;
    }

    .product-intensity {
      margin: 0 0 7px;
      display: flex;
      align-items: center;
      gap: 8px;
      color: var(--ink);
      font-size: 13px;
      line-height: 1.1;
    }

    .dots {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      transform: translateY(1px);
    }

    .dots span {
      width: 8px;
      height: 9.2px;
      position: relative;
      display: inline-block;
      background: #C7A14A;
      clip-path: polygon(25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0 50%);
    }

    .dots span::after {
      content: "";
      position: absolute;
      inset: 1.35px;
      background: #EAF3F8;
      clip-path: inherit;
    }

    .dots span.off {
      background: rgba(10, 10, 13, .22);
    }

    .price {
      margin: 0 0 14px;
      color: var(--ink);
      font-size: 12px;
      line-height: 1.2;
    }

    .buy-link {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      width: max-content;
      color: var(--ink);
      font-size: 11px;
      line-height: 1;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .02em;
      text-decoration: underline;
      text-underline-offset: 2px;
      text-decoration-thickness: 1px;
      cursor: pointer;
    }

    .buy-icon-img {
      width: 53px;
      height: 53px;
      display: inline-block;
      object-fit: contain;
      flex: 0 0 auto;
      margin: -17px -12px -17px -13px;
      transform: translateY(-1px);
      pointer-events: none;
      user-select: none;
    }

    @media (hover: hover) {
      .product-card:hover .product-media {
        transform: translateY(-2px);
        box-shadow: var(--shadow);
      }

      .product-card:hover .buy-link {
        opacity: .68;
      }
    }

    .empty-state {
      display: none;
      padding: 60px 20px;
      text-align: center;
      color: var(--muted);
      border: 1px solid var(--line);
      background: #fff;
    }

    .empty-state.is-visible {
      display: block;
    }

    .abdz-product-carousel,
    .abdz-product-carousel * {
      box-sizing: border-box;
    }

    .abdz-product-carousel {
      --abdz-gap: 30px;
      --abdz-card-w: 270px;
      --abdz-card-h: 455px;
      --abdz-card-radius: 16px;
      --abdz-info-bg: #EAF3F8;
      --abdz-line: rgba(10, 10, 13, .16);
      --abdz-shadow-card: 0 18px 45px rgba(10, 10, 13, .055);
      --abdz-shadow-card-center: 0 28px 64px rgba(10, 10, 13, .105);
      width: min(var(--max), 100%);
      margin: 0 auto;
      position: relative;
      overflow: visible;
      padding: 34px 0 42px;
      background: transparent;
      isolation: isolate;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    }

    .abdz-product-carousel::before,
    .abdz-product-carousel::after {
      content: none;
      display: none;
    }

    .abdz-product-carousel::before {
      left: 0;
      background: none;
    }

    .abdz-product-carousel::after {
      right: 0;
      background: none;
    }

    .abdz-carousel-viewport {
      position: relative;
      overflow: hidden;
      border-radius: 18px;
      cursor: grab;
      user-select: none;
      touch-action: pan-y;
      padding: 34px 0 42px;
      margin: -34px 0 -42px;
      mask-image: linear-gradient(90deg, transparent 0%, black 5%, black 95%, transparent 100%);
      -webkit-mask-image: linear-gradient(90deg, transparent 0%, black 5%, black 95%, transparent 100%);
    }

    .abdz-carousel-viewport.is-dragging {
      cursor: grabbing;
    }

    .abdz-carousel-track {
      position: relative;
      z-index: 3;
      display: flex;
      align-items: stretch;
      gap: var(--abdz-gap);
      width: max-content;
      transform: translate3d(0,0,0);
      will-change: transform;
    }

    .abdz-carousel-card {
      --abdz-focus: 0;
      --abdz-wave: 0px;
      flex: 0 0 var(--abdz-card-w);
      width: var(--abdz-card-w);
      height: var(--abdz-card-h);
      position: relative;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      overflow: visible;
      border-radius: var(--abdz-card-radius);
      transform-origin: center bottom;
      transform: translateY(calc(((1 - var(--abdz-focus)) * 10px) + var(--abdz-wave))) scale(calc(.91 + var(--abdz-focus) * .12));
      opacity: calc(.55 + var(--abdz-focus) * .45);
      filter: saturate(calc(.92 + var(--abdz-focus) * .14));
      transition: transform .18s ease, opacity .18s ease, box-shadow .18s ease, filter .18s ease;
      contain: layout paint;
      isolation: isolate;
    }

    .abdz-carousel-card.is-center {
      z-index: 4;
    }

    .abdz-product-carousel.is-pressing .abdz-carousel-card {
      transform: translateY(0) scale(.96);
      opacity: .68;
      filter: saturate(.92);
    }

    .abdz-product-carousel.is-pressing .abdz-carousel-card.is-pressed {
      z-index: 20;
      transform: translateY(-10px) scale(1.055);
      opacity: 1;
      filter: saturate(1.07);
    }

    .abdz-product-carousel.is-pressing::before,
    .abdz-product-carousel.is-pressing::after {
      opacity: .38;
    }

    .abdz-card-window {
      position: relative;
      width: 100%;
      aspect-ratio: 1 / 1;
      overflow: hidden;
      border-radius: var(--abdz-card-radius) var(--abdz-card-radius) 0 0;
      background:
        var(--abdz-image, none),
        radial-gradient(circle at 52% 36%, rgba(255,255,255,.50), transparent 28%),
        linear-gradient(135deg, #E6F0F7 0%, #C7D8E4 50%, #F3FAFD 100%);
      background-size: cover, auto, auto;
      background-position: center, center, center;
      box-shadow: var(--abdz-shadow-card);
    }

    .abdz-card-window::before {
      content: "";
      position: absolute;
      left: -26%;
      top: -34%;
      width: 88%;
      height: 178%;
      border-radius: 50%;
      background:
        radial-gradient(ellipse at center,
          rgba(255,255,255,.00) 0%,
          rgba(255,255,255,.10) 30%,
          rgba(255,255,255,.42) 47%,
          rgba(255,255,255,.14) 58%,
          rgba(255,255,255,.00) 74%);
      transform: rotate(-28deg) translate3d(-8%, -2%, 0);
      transform-origin: center;
      filter: blur(1.2px);
      opacity: .58;
      mix-blend-mode: screen;
      animation: abdz-shine 8.8s cubic-bezier(.42,0,.18,1) infinite;
      pointer-events: none;
    }

    .abdz-card-window::after {
      content: "";
      width: 30%;
      max-width: 86px;
      min-width: 58px;
      aspect-ratio: 3 / 4.2;
      border: 1px solid rgba(10, 10, 13, .22);
      background: linear-gradient(145deg, rgba(255,255,255,.28), rgba(255,255,255,.10));
      box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, .20),
        0 14px 34px rgba(10, 10, 13, .10);
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
    }

    .abdz-card-window.has-image::after {
      display: none;
    }

    @keyframes abdz-shine {
      0%, 18% {
        transform: rotate(-28deg) translate3d(-14%, -6%, 0);
        opacity: 0;
      }
      28% { opacity: .30; }
      46% {
        transform: rotate(-28deg) translate3d(10%, 4%, 0);
        opacity: .68;
      }
      62% {
        transform: rotate(-28deg) translate3d(24%, 10%, 0);
        opacity: .18;
      }
      100% {
        transform: rotate(-28deg) translate3d(30%, 14%, 0);
        opacity: 0;
      }
    }

    .abdz-card-image {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      border-radius: inherit;
      user-select: none;
      pointer-events: none;
    }

    .abdz-card-info {
      flex: 1 1 auto;
      min-height: 148px;
      padding: 15px 16px 16px;
      background: var(--abdz-info-bg);
      color: var(--ink);
      border-radius: 0 0 var(--abdz-card-radius) var(--abdz-card-radius);
      overflow: hidden;
      box-shadow: var(--abdz-shadow-card);
    }

    .abdz-card-family {
      margin: 0 0 9px;
      color: var(--ink);
      font-size: 10px;
      line-height: 1;
      letter-spacing: .075em;
      font-weight: 800;
      text-transform: uppercase;
    }

    .abdz-card-title {
      margin: 0 0 12px;
      min-height: 34px;
      color: var(--ink);
      font-size: 12px;
      line-height: 1.34;
      letter-spacing: .045em;
      font-weight: 800;
      text-transform: uppercase;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
      overflow-wrap: anywhere;
    }

    .abdz-card-intensity {
      margin: 0 0 7px;
      display: flex;
      align-items: center;
      gap: 8px;
      color: var(--ink);
      font-size: 13px;
      line-height: 1.1;
    }

    .abdz-dots {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      transform: translateY(1px);
    }

    .abdz-dots span {
      width: 8px;
      height: 9.2px;
      position: relative;
      display: inline-block;
      background: #C7A14A;
      clip-path: polygon(25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0 50%);
    }

    .abdz-dots span::after {
      content: "";
      position: absolute;
      inset: 1.35px;
      background: var(--abdz-info-bg);
      clip-path: inherit;
    }

    .abdz-dots span.is-off {
      background: rgba(10, 10, 13, .22);
    }

    .abdz-card-price {
      margin: 0 0 14px;
      color: var(--ink);
      font-size: 12px;
      line-height: 1.2;
    }

    .abdz-buy-link {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      width: max-content;
      color: var(--ink);
      font-size: 11px;
      line-height: 1;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .02em;
      text-decoration: underline;
      text-underline-offset: 2px;
      text-decoration-thickness: 1px;
      cursor: pointer;
    }

    .abdz-buy-icon-img {
      width: 53px;
      height: 53px;
      display: inline-block;
      object-fit: contain;
      flex: 0 0 auto;
      margin: -17px -12px -17px -13px;
      transform: translateY(-1px);
      pointer-events: none;
      user-select: none;
    }

    @media (hover: hover) {
      .abdz-carousel-card:hover .abdz-card-window {
        transform: translateY(-2px);
      }

      .abdz-carousel-card:hover .abdz-buy-link {
        opacity: .68;
      }
    }

    .designer-strip {
      max-width: var(--max);
      margin: -22px auto 74px;
      padding: 0 24px;
    }

    .designer-strip__inner {
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      padding: 18px 0;
      text-align: center;
      color: var(--ink);
      font-size: 11px;
      letter-spacing: .16em;
      text-transform: uppercase;
      font-weight: 760;
    }

    .abdz-carousel-section {
      max-width: var(--max);
      margin: 0 auto 96px;
      padding: 0 24px;
      position: relative;
      z-index: 2;
      isolation: isolate;
    }

    .abdz-carousel-section::before {
      content: none;
      display: none;
    }

    @media (max-width: 760px) {
      .abdz-carousel-section {
        margin: 0 auto 82px;
        padding: 0 18px;
      }
    }

    @media (max-width: 760px) {
      .designer-strip {
        margin: -28px auto 54px;
        padding: 0 18px;
      }

      .designer-strip__inner {
        padding: 16px 0;
        font-size: 10px;
        letter-spacing: .15em;
      }

      .abdz-carousel-section {
        padding: 0 10px;
      }

      .abdz-product-carousel {
        --abdz-gap: 10px;
        padding: 20px 0 28px;
      }

      .abdz-product-carousel::before,
      .abdz-product-carousel::after {
        width: 14px;
      }

      .abdz-carousel-viewport {
        border-radius: 16px;
        padding: 20px 0 28px;
        margin: -20px 0 -28px;
      }

      .abdz-carousel-card {
        transform: translate3d(0,0,0) scale(.995);
        opacity: 1;
        filter: none;
        transition: none;
        backface-visibility: hidden;
      }

      .abdz-card-window::before {
        content: "";
        animation: none;
        opacity: .24;
        filter: blur(.8px);
        transform: rotate(-28deg) translate3d(-10%, -2%, 0);
      }

      .abdz-product-carousel.is-pressing .abdz-carousel-card {
        transform: scale(.98);
        opacity: .78;
        filter: none;
      }

      .abdz-product-carousel.is-pressing .abdz-carousel-card.is-pressed {
        transform: scale(1.015);
        opacity: 1;
        filter: none;
      }

      .abdz-card-info {
        min-height: 126px;
        padding: 10px 9px 11px;
      }

      .abdz-card-family {
        margin-bottom: 7px;
        font-size: 8px;
        letter-spacing: .065em;
      }

      .abdz-card-title {
        margin-bottom: 9px;
        min-height: 25px;
        font-size: 9.4px;
        line-height: 1.25;
        letter-spacing: .035em;
      }

      .abdz-card-intensity {
        margin-bottom: 6px;
        gap: 5px;
        font-size: 9.8px;
        white-space: nowrap;
      }

      .abdz-dots {
        gap: 3.2px;
      }

      .abdz-dots span {
        width: 7px;
        height: 8px;
      }

      .abdz-dots span::after {
        inset: 1.2px;
      }

      .abdz-card-price {
        margin-bottom: 10px;
        font-size: 9.6px;
        line-height: 1.15;
        white-space: nowrap;
      }

      .abdz-buy-link {
        gap: 4px;
        font-size: 9.6px;
        letter-spacing: .015em;
      }

      .abdz-buy-icon-img {
        width: 34px;
        height: 34px;
        margin: -10px -7px -10px -8px;
      }
    }

    @media (max-width: 430px) {
      .abdz-product-carousel {
        --abdz-gap: 8px;
      }

      .abdz-product-carousel::before,
      .abdz-product-carousel::after {
        width: 12px;
      }

      .abdz-card-info {
        min-height: 122px;
        padding: 10px 8px 10px;
      }

      .abdz-card-family {
        font-size: 7.7px;
      }

      .abdz-card-title {
        font-size: 9px;
        min-height: 24px;
      }

      .abdz-card-intensity,
      .abdz-card-price,
      .abdz-buy-link {
        font-size: 9.2px;
      }

      .abdz-buy-icon-img {
        width: 32px;
        height: 32px;
        margin: -9px -7px -9px -8px;
      }
    }

    .trust-strip {
      max-width: var(--max);
      margin: 0 auto 52px;
      padding: 0 24px;
    }

    .trust-inner {
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      padding: 18px 0;
      display: flex;
      justify-content: center;
      gap: 34px;
      flex-wrap: wrap;
      color: var(--ink);
      font-size: 11px;
      letter-spacing: .11em;
      text-transform: uppercase;
      font-weight: 700;
    }

    .footer {
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 44px 24px 58px;
      background: #ffffff;
      text-align: center;
      color: var(--muted);
      font-size: 12px;
    }

    .footer-logo-img {
      width: min(195px, 52vw);
      height: auto;
      display: block;
      object-fit: contain;
      margin: 0 auto 18px;
    }

    .footer-text {
      display: block;
    }

    @media (max-width: 1180px) {
      :root {
        --grid-gap-x: 26px;
      }

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

    @media (max-width: 760px) {
      :root {
        --header-height: 72px;
      }

      .top-line {
        height: 12px;
        background: #ffffff;
      }

      .header-inner {
        grid-template-columns: auto minmax(0, 1fr) auto;
        padding: 0 18px;
        gap: 10px;
      }

      .brand-logo-img {
        width: 98px;
        max-height: 55px;
      }

      .header-actions {
        display: contents;
      }

      .header-actions > .search {
        display: grid;
        width: 100%;
        min-width: 0;
      }

      .header-actions > .search input {
        padding: 0 10px;
        font-size: 12px;
      }

      .hero {
        padding: 0;
      }

      .hero-media {
        min-height: clamp(520px, 78svh, 760px);
      }

      .hero-bg {
        background-size: auto 100%;
        background-position: center top;
      }

      .hero-copy {
        top: clamp(112px, 17svh, 156px);
        width: min(380px, calc(100% - 32px));
        padding: 0;
      }

      .hero-copy .page-title {
        font-size: clamp(23px, 6.9vw, 31px);
        line-height: 1.08;
      }

      .hero-copy p {
        max-width: 350px;
        font-size: clamp(12.5px, 3.45vw, 13.5px);
        line-height: 1.48;
      }

      .trust-inner {
        gap: 14px;
        font-size: 10px;
        line-height: 1.5;
      }

      .intro {
        margin: 28px auto 46px;
      }

      .divider {
        margin: 10px auto 14px;
      }

      .page-title {
        font-size: 28px;
      }

      .intro p {
        font-size: 13.5px;
      }

      .catalog {
        padding: 0 18px 123px;
      }

      .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 16px;
        row-gap: 46px;
      }

      .product-info {
        min-height: 150px;
        padding: 13px 12px 14px;
      }

      .product-family {
        font-size: 9.5px;
      }


      .product-brand {
        font-size: 11px;
      }

      .product-name {
        font-size: 11px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      html {
        scroll-behavior: auto;
      }

      *,
      *::before,
      *::after {
        transition: none !important;
        animation: none !important;
      }
    }

    @media (max-width: 430px) {
      .header-inner {
        grid-template-columns: auto minmax(112px, 1fr) 38px;
        gap: 8px;
      }

      .brand-logo-img {
        width: 90px;
        max-height: 50px;
      }

      .header-actions > .search {
        height: 32px;
      }

      .header-actions > .search input {
        padding: 0 9px;
        font-size: 12px;
      }

      .hero-copy {
        width: min(346px, calc(100% - 28px));
        top: clamp(106px, 16svh, 148px);
      }

      .hero-copy .page-title {
        font-size: clamp(22px, 7.1vw, 30px);
      }

      .hero-copy p {
        font-size: clamp(12px, 3.35vw, 13px);
      }

      .catalog {
        padding-left: 14px;
        padding-right: 14px;
      }

      .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 12px;
        row-gap: 38px;
      }

      .product-info {
        min-height: 136px;
        padding: 12px 10px 13px;
      }

      .product-family {
        font-size: 9px;
      }


      .product-brand {
        font-size: 10.4px;
        line-height: 1.22;
      }

      .product-name {
        font-size: 10.4px;
        line-height: 1.22;
      }

      .price,
      .intensity,
      .buy-link {
        font-size: 10.5px;
      }
    }


/* =========================================================
   ABDZ LOADER PRODUCCIÓN
   Intro Lottie amarillo/negro con rutas locales.
   ========================================================= */
html {
  scrollbar-gutter: stable;
}

:root {
  --abdz-scrollbar-w: 0px;
}

html.intro-lock,
html.intro-lock body {
  overflow: hidden !important;
  height: 100%;
  overscroll-behavior: none;
  scrollbar-gutter: auto !important;
}

html.intro-lock::-webkit-scrollbar,
html.intro-lock body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

body.abdz-loader-active {
  overflow: hidden;
  padding-right: 0;
  scrollbar-gutter: auto;
}

html.abdz-route-lock,
html.abdz-route-lock body {
  overflow: hidden !important;
  overscroll-behavior: none;
  scrollbar-gutter: auto !important;
}

html.abdz-route-lock::-webkit-scrollbar,
html.abdz-route-lock body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

.top-line,
.site-header,
main,
.footer {
  position: relative;
  z-index: 2;
}

.abdz-official-waves-bg {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100svh;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  background: transparent;
  transition:
    opacity .95s cubic-bezier(.16,1,.3,1),
    visibility .95s step-end;
  contain: layout paint style;
  -webkit-mask-image: none;
  mask-image: none;
}

.abdz-official-waves-bg.is-on {
  opacity: 1;
  visibility: visible;
  transition:
    opacity .95s cubic-bezier(.16,1,.3,1),
    visibility 0s;
}

.abdz-official-waves-bg iframe {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  display: block;
  border: 0;
  pointer-events: none;
  transform: none;
  filter: none;
}

#abdz-loader-waves {
  position: fixed;
  inset: 0;
  width: auto;
  min-height: 100dvh;
  z-index: 99998;
  pointer-events: none;
  contain: layout paint style;
  transform: translateZ(0);
  background: transparent;
  overflow: hidden;
}

#abdz-loader-waves.reverse {
  transform: rotate(180deg) translateZ(0);
}

#abdz-loader-waves canvas,
#abdz-loader-waves svg {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  display: block;
}

#abdz-loader {
  position: fixed;
  inset: 0;
  width: auto;
  min-height: 100dvh;
  z-index: 99999;
  pointer-events: auto;
  text-align: center;
  contain: layout paint style;
  transform: translateZ(0);
  overflow: hidden;
}

.abdz-loader-inner {
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
}

.abdz-loader-logo {
  display: block;
  width: min(360px, 68vw);
  height: auto;
  margin: 0 auto;
  object-fit: contain;
  opacity: 0;
  clip-path: inset(0 100% 0 0);
  transform: translateY(8px);
  filter: drop-shadow(0 10px 24px rgba(35,31,32,.11));
  will-change: opacity, transform, clip-path;
}

#abdz-loader.brand-on .abdz-loader-logo {
  animation: abdzBrandReveal .82s cubic-bezier(.2,.78,.2,1) forwards;
}

#abdz-loader.brand-out .abdz-loader-logo {
  animation: abdzBrandExit .58s cubic-bezier(.72,0,.18,1) forwards;
}

.abdz-loader-subtitle {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(18px, 2.05vw, 25px);
  line-height: 1.3;
  font-weight: 520;
  letter-spacing: .18em;
  color: rgba(35, 31, 32, .72);
  text-transform: none;
  transform-origin: 50% 50%;
  opacity: 0;
  transform: translateY(20%) rotate(4deg);
}

#abdz-loader.text-on .abdz-loader-subtitle {
  animation: abdzTextIn .82s cubic-bezier(.2,.78,.2,1) forwards;
}

#abdz-loader.text-out .abdz-loader-subtitle {
  animation: abdzTextOut .58s cubic-bezier(.72,0,.18,1) forwards;
}

@keyframes abdzBrandReveal {
  0% {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
    transform: translateY(8px);
  }
  45% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translateY(0);
  }
}

@keyframes abdzBrandExit {
  0% {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    clip-path: inset(0 0 0 0);
    transform: translateY(-10px);
  }
}

@keyframes abdzTextIn {
  to {
    opacity: 1;
    transform: translateY(0) rotate(0deg);
  }
}

@keyframes abdzTextOut {
  to {
    opacity: 0;
    transform: translateY(20%) rotate(4deg);
  }
}

@media (max-width: 700px) {
  .abdz-official-waves-bg {
    --abdz-waves-bleed: clamp(34px, 11vw, 58px);
    --abdz-waves-separation: 1.025;
  }

  .abdz-loader-logo {
    width: min(270px, 76vw);
    margin-bottom: 0;
  }

  .abdz-loader-subtitle {
    font-size: 15.5px;
    letter-spacing: .15em;
    padding: 0 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #abdz-loader,
  #abdz-loader-waves,
  .abdz-official-waves-bg {
    display: none !important;
  }

  body.abdz-loader-active {
    overflow: auto;
    padding-right: 0;
  }
}

.abdz-route-curtain {
  position: fixed;
  inset: 0;
  z-index: 2147482000;
  pointer-events: none;
  background: #FFD501;
  transform: translate3d(0, -100%, 0);
  transition: transform .78s cubic-bezier(.72, 0, .18, 1);
  will-change: transform;
}

.abdz-route-curtain.is-closing {
  transform: translate3d(0, 0, 0);
}

.abdz-route-curtain.is-covered {
  transform: translate3d(0, 0, 0);
}

.abdz-route-curtain.is-opening {
  transform: translate3d(0, 100%, 0);
}

#abdz-loader-waves.abdz-only-curtain {
  background: #FFD501;
  transform: translate3d(0, 0, 0);
  transition: transform .504s cubic-bezier(.72, 0, .18, 1);
}

#abdz-loader-waves.abdz-only-curtain.is-opening {
  transform: translate3d(0, 100%, 0);
}

@media (prefers-reduced-motion: reduce) {
  .abdz-route-curtain {
    display: none !important;
  }
}


/* V10: toda la tarjeta puede abrir el perfil; conserva la misma cortina amarilla. */
.product-card .product-media,
.product-card .product-info {
  position: relative;
  z-index: 1;
}

.product-card-cover {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: block;
  color: transparent;
  font-size: 0;
  text-decoration: none;
  cursor: pointer;
}

.product-card .buy-link {
  position: relative;
  z-index: 6;
}

.top-line.top-line--premium {
  height: 14px !important;
  background: #0f0f10 !important;
  border-radius: 0 !important;
  box-shadow: 0 6px 14px rgba(0,0,0,.08);
  position: sticky;
  top: 0;
  z-index: 51;
}

.site-header.site-header--premium {
  height: auto !important;
  min-height: var(--header-height) !important;
  background: #ffffff !important;
  border: 1px solid rgba(230,230,226,.95) !important;
  border-top: 0 !important;
  border-radius: 0 0 9px 9px !important;
  position: sticky !important;
  top: 14px !important;
  z-index: 50 !important;
  box-shadow: 0 12px 28px rgba(20,24,28,.045), 0 2px 8px rgba(20,24,28,.025) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  animation: abdzHeaderIn .58s var(--abdz-header-ease) both;
}

.site-header--premium .header-inner {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: var(--header-height) !important;
  margin: 0 !important;
  padding: 10px 22px !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  gap: 0 12px !important;
}

.site-header--premium .brand {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  width: max-content !important;
  color: var(--ink) !important;
}

.site-header--premium .brand-logo-img {
  width: 76px !important;
  height: 76px !important;
  max-height: none !important;
  object-fit: contain !important;
  display: block !important;
  filter: drop-shadow(0 5px 10px rgba(20,24,28,.06));
}

.site-header--premium .header-actions {
  grid-column: 3 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

.site-header--premium .search {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  height: 0 !important;
  min-width: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) 1px !important;
  align-items: center !important;
  gap: 10px !important;
  border: 1px solid rgba(222,222,218,.95) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  padding: 0 14px !important;
  margin-top: 0 !important;
  box-shadow: 0 7px 16px rgba(20,24,28,.03), inset 0 1px 0 rgba(255,255,255,.96) !important;
  transform: translateY(-4px) !important;
  transition: max-height .36s var(--abdz-header-ease), height .36s var(--abdz-header-ease), opacity .26s ease, transform .36s var(--abdz-header-ease), margin-top .36s var(--abdz-header-ease) !important;
}

.site-header--premium.is-search-open .search,
.site-header--premium .search:focus-within {
  height: 45px !important;
  max-height: 72px !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
  margin-top: 10px !important;
}

.site-header--premium .search-field-icon {
  width: 23px !important;
  height: 23px !important;
  max-width: none !important;
  object-fit: contain !important;
  flex: 0 0 auto !important;
}

.site-header--premium .search input {
  width: 100% !important;
  min-width: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  color: #202020 !important;
  background: transparent !important;
}

.site-header--premium .search input::placeholder {
  color: #8a8a8a !important;
}

.site-header--premium .search-submit {
  width: 1px !important;
  height: 1px !important;
  border: 0 !important;
  border-left: 0 !important;
  background: transparent !important;
  position: relative !important;
  opacity: 0 !important;
  pointer-events: none !important;
  padding: 0 !important;
}

.site-header--premium .search-submit::before,
.site-header--premium .search-submit::after {
  content: none !important;
}

@media (max-width: 760px) {
  :root {
    --header-height: 88px;
  }

  .top-line.top-line--premium {
    height: 12px !important;
  }

  .site-header.site-header--premium {
    top: 12px !important;
  }

  .site-header--premium .header-inner {
    min-height: var(--header-height) !important;
    padding: 9px 11px !important;
    gap: 0 10px !important;
  }

  .site-header--premium .brand-logo-img {
    width: 68px !important;
    height: 68px !important;
    max-height: none !important;
  }

  .site-header--premium.is-search-open .search,
  .site-header--premium .search:focus-within {
    height: 44px !important;
    max-height: 70px !important;
  }
}

@media (max-width: 430px) {
  .site-header--premium .header-inner {
    gap: 0 8px !important;
  }

  .site-header--premium .brand-logo-img {
    width: 64px !important;
    height: 64px !important;
  }
}

@keyframes abdzHeaderIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}


/* V65 RESPONSIVE HERO BANNER COVER */
.hero {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.hero .hero-media {
  width: 100% !important;
  min-height: clamp(430px, 44vw, 760px) !important;
  position: relative !important;
  overflow: hidden !important;
  background: #F2F8FC !important;
}

.hero .hero-media .hero-bg,
.hero-bg[data-parallax-bg] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-image: url("https://res.cloudinary.com/dfrvueo6p/image/upload/v1782272763/PORTADA_ck9dzw.webp") !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  transform-origin: center center !important;
}

@media (min-width: 1200px) {
  .hero .hero-media {
    min-height: clamp(540px, 42vw, 760px) !important;
  }

  .hero .hero-media .hero-bg,
  .hero-bg[data-parallax-bg] {
    background-position: center center !important;
  }
}

@media (max-width: 899px) {
  .hero .hero-media {
    min-height: clamp(380px, 74vw, 620px) !important;
  }

  .hero .hero-media .hero-bg,
  .hero-bg[data-parallax-bg] {
    background-position: center center !important;
  }
}

@media (max-width: 520px) {
  .hero .hero-media {
    min-height: clamp(360px, 92vw, 560px) !important;
  }

  .hero .hero-media .hero-bg,
  .hero-bg[data-parallax-bg] {
    background-position: center center !important;
  }
}
/* /V65 RESPONSIVE HERO BANNER COVER */


/* V66 OFFICIAL WAVES NO FADE */
.abdz-official-waves-bg {
  opacity: 1 !important;
  visibility: hidden !important;
  transition: none !important;
}

.abdz-official-waves-bg.is-on {
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
}

.abdz-official-waves-bg iframe {
  opacity: 1 !important;
  transition: none !important;
}
/* /V66 OFFICIAL WAVES NO FADE */


/* V67 EXPERIMENTAL PREMIUM TEXT READABILITY
   Metodología:
   1) Sombra suave de texto.
   2) Ajuste vertical mínimo.
   3) Overlay localizado ultra sutil, casi imperceptible.
   No cambia tipografía, textos, imagen, productos ni estructura. */
.hero .hero-copy {
  top: clamp(106px, 16.8svh, 166px) !important;
  isolation: isolate;
}

.hero .hero-copy::before {
  content: "";
  position: absolute;
  inset: clamp(-34px, -3vw, -24px) clamp(-44px, -4vw, -30px);
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(
      ellipse at center,
      rgba(8, 11, 15, .095) 0%,
      rgba(8, 11, 15, .060) 42%,
      rgba(8, 11, 15, 0) 74%
    );
  filter: blur(1px);
  opacity: .86;
}

.hero .hero-copy .page-title,
.hero .hero-title {
  text-shadow:
    0 2px 14px rgba(0, 0, 0, .24),
    0 1px 2px rgba(0, 0, 0, .18) !important;
}

.hero .hero-subtitle {
  text-shadow:
    0 2px 12px rgba(0, 0, 0, .22),
    0 1px 2px rgba(0, 0, 0, .14) !important;
}

@media (max-width: 899px) {
  .hero .hero-copy {
    top: clamp(92px, 15svh, 138px) !important;
  }

  .hero .hero-copy::before {
    inset: -24px -24px;
    background:
      radial-gradient(
        ellipse at center,
        rgba(8, 11, 15, .085) 0%,
        rgba(8, 11, 15, .052) 44%,
        rgba(8, 11, 15, 0) 76%
      );
  }

  .hero .hero-copy .page-title,
  .hero .hero-title {
    text-shadow:
      0 2px 12px rgba(0, 0, 0, .22),
      0 1px 2px rgba(0, 0, 0, .16) !important;
  }

  .hero .hero-subtitle {
    text-shadow:
      0 2px 10px rgba(0, 0, 0, .20),
      0 1px 2px rgba(0, 0, 0, .12) !important;
  }
}
/* /V67 EXPERIMENTAL PREMIUM TEXT READABILITY */


/* V81 ROUTE CURTAIN COLOR */
.abdz-route-curtain,
#abdz-loader-waves.abdz-only-curtain {
  background: #FFD501 !important;
}
.search-overlay{position:fixed;inset:0;z-index:49;background:rgba(10,10,13,.18);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:opacity .30s ease;will-change:opacity}
.search-overlay.is-open{opacity:1!important;pointer-events:auto!important}
.site-header.site-header--premium.is-search-open{z-index:62!important;box-shadow:0 18px 42px rgba(10,10,13,.075)!important}
.site-header--premium .search{grid-column:1/-1!important;grid-row:2!important;justify-self:center!important;width:min(690px,calc(100vw - 48px))!important;height:0!important;min-width:0!important;max-height:0!important;opacity:0!important;overflow:hidden!important;display:grid!important;grid-template-columns:46px minmax(0,1fr) 1px!important;align-items:center!important;gap:10px!important;border:1px solid rgba(202,195,176,.72)!important;border-radius:18px!important;background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(248,247,243,.96))!important;box-shadow:0 22px 50px rgba(10,10,13,.11),inset 0 1px 0 rgba(255,255,255,.98)!important;padding:0 18px!important;transform-origin:top center!important;transform:translate3d(0,-8px,0) scaleY(.97)!important;transition:max-height .34s cubic-bezier(.2,.78,.2,1),height .34s cubic-bezier(.2,.78,.2,1),opacity .24s ease,transform .34s cubic-bezier(.2,.78,.2,1),margin-top .34s cubic-bezier(.2,.78,.2,1)!important;position:relative!important;z-index:62!important}
.site-header--premium .search::before{content:""!important;position:absolute!important;inset:0!important;pointer-events:none!important;background:radial-gradient(circle at 50% -38%,rgba(214,181,94,.22),transparent 40%),linear-gradient(180deg,rgba(255,255,255,.52),rgba(255,255,255,0) 62%)!important;opacity:.92!important}
.site-header--premium .search::after{content:""!important;position:absolute!important;left:18px!important;right:18px!important;bottom:0!important;height:1px!important;background:linear-gradient(90deg,transparent,rgba(181,138,34,.30),transparent)!important;opacity:0!important;transition:opacity .28s ease!important}
.site-header--premium.is-search-open .search,.site-header--premium .search:focus-within{height:56px!important;max-height:80px!important;opacity:1!important;transform:translate3d(0,0,0) scaleY(1)!important;margin-top:12px!important}
.site-header--premium.is-search-open .search::after,.site-header--premium .search:focus-within::after{opacity:1!important}
.site-header--premium .search-field-icon{position:relative!important;z-index:1!important;width:24px!important;height:24px!important;max-width:none!important;object-fit:contain!important;flex:0 0 auto!important;opacity:.78!important;filter:drop-shadow(0 2px 4px rgba(10,10,13,.08))!important}
.site-header--premium .search input{position:relative!important;z-index:1!important;width:100%!important;min-width:0!important;height:100%!important;border:0!important;outline:0!important;padding:0!important;font-size:13px!important;color:#17191c!important;background:transparent!important;letter-spacing:.01em!important}
.site-header--premium .search input::placeholder{color:rgba(91,98,108,.70)!important}
.site-header--premium .search-submit{width:1px!important;height:1px!important;border:0!important;border-left:0!important;background:transparent!important;position:relative!important;opacity:0!important;pointer-events:none!important;padding:0!important}
.site-header--premium .search-submit::before,.site-header--premium .search-submit::after{content:none!important}
body.abdz-search-open{overflow-x:hidden}
body.abdz-search-open main{z-index:auto!important}
body.abdz-search-open .hero,body.abdz-search-open .divider,body.abdz-search-open .designer-strip,body.abdz-search-open .abdz-carousel-section,body.abdz-search-open .trust-strip,body.abdz-search-open .footer{position:relative!important;z-index:1!important}
body.abdz-search-open .catalog,body.abdz-search-open .product-grid,body.abdz-search-open .empty-state{position:relative!important;z-index:55!important}
body.abdz-search-open .product-card{position:relative!important;z-index:56!important}
body.abdz-search-open .product-card:not(.is-hidden){animation:abdzSearchFocusIn .26s cubic-bezier(.2,.78,.2,1) both}
.site-header.site-header--premium.is-search-open,.site-header--premium.is-search-open .search{z-index:62!important}
@keyframes abdzSearchFocusIn{from{opacity:.90;transform:translateY(5px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}
.empty-state{display:none;width:min(560px,calc(100% - 18px));margin:22px auto 0;padding:26px 28px 26px;text-align:center;color:var(--muted);border:1px solid rgba(202,195,176,.58);border-radius:0 0 24px 24px;background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(250,249,245,.965));box-shadow:0 20px 48px rgba(10,10,13,.075),inset 0 1px 0 rgba(255,255,255,.98);position:relative;overflow:hidden;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.empty-state::before{content:"";position:absolute;top:0;left:0;right:0;height:18px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.96));border-radius:0}
.empty-state.is-visible{display:grid;place-items:center;gap:8px;animation:abdzEmptyIn .26s cubic-bezier(.2,.78,.2,1) both}
.empty-state__heart{width:42px;height:42px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(180deg,#FFD501,#F0C900);color:#0A0A0D;font-size:21px;line-height:1;box-shadow:0 10px 22px rgba(255,213,1,.22),0 4px 10px rgba(10,10,13,.10);position:relative;z-index:1;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.empty-state p{margin:6px 0 0;color:var(--ink);font-size:15px;line-height:1.28;font-weight:700;letter-spacing:.01em;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.empty-state span{max-width:360px;color:var(--muted);font-size:12px;line-height:1.45;font-weight:400;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
@keyframes abdzEmptyIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media (max-width:760px){.search-overlay{background:rgba(10,10,13,.16);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.site-header--premium .search{width:calc(100vw - 22px)!important;height:0!important;border-radius:16px!important;padding:0 14px!important;grid-template-columns:42px minmax(0,1fr) 1px!important;transition:max-height .32s cubic-bezier(.2,.78,.2,1),height .32s cubic-bezier(.2,.78,.2,1),opacity .22s ease,transform .32s cubic-bezier(.2,.78,.2,1),margin-top .32s cubic-bezier(.2,.78,.2,1)!important}.site-header--premium.is-search-open .search,.site-header--premium .search:focus-within{height:54px!important;max-height:74px!important;margin-top:10px!important}.empty-state{width:min(92vw,560px);padding:24px 20px 24px;border-radius:0 0 22px 22px}.empty-state p{font-size:14px}.empty-state span{font-size:11.5px}}
@media (prefers-reduced-motion:reduce){.search-overlay,.site-header--premium .search,.product-card,.empty-state{transition:none!important;animation:none!important;will-change:auto!important}}

/* V109 TOP LINE SOLID BLACK */
.top-line.top-line--premium{
  height:14px!important;
  min-height:14px!important;
  background:#0A0A0D!important;
  opacity:1!important;
  border:0!important;
  box-shadow:none!important;
  width:100%!important;
  position:sticky!important;
  top:0!important;
  z-index:70!important;
}
.site-header.site-header--premium{
  top:14px!important;
}
@media (max-width:760px){
  .top-line.top-line--premium{
    height:12px!important;
    min-height:12px!important;
    background:#0A0A0D!important;
    opacity:1!important;
  }
  .site-header.site-header--premium{
    top:12px!important;
  }
}


/* V110 EMPTY STATE MAS AMPLIO Y RESPIRABLE */
.empty-state,
.empty-state *{box-sizing:border-box}
.empty-state{
  display:none;
  width:min(660px, calc(100% - 32px));
  min-height:188px;
  margin:26px auto 0;
  padding:34px 40px 36px;
  text-align:center;
  color:var(--muted);
  border:1px solid rgba(202,195,176,.54);
  border-top-left-radius:0;
  border-top-right-radius:0;
  border-bottom-left-radius:22px;
  border-bottom-right-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.985), rgba(250,249,245,.968));
  box-shadow:0 24px 54px rgba(10,10,13,.078), inset 0 1px 0 rgba(255,255,255,.98);
  position:relative;
  overflow:hidden;
  justify-items:center;
  align-content:center;
  gap:12px;
  isolation:isolate;
}
.empty-state::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.96));
  border-radius:0;
}
.empty-state.is-visible{
  display:grid;
  place-items:center;
  justify-items:center;
  align-content:center;
  gap:12px;
  animation:abdzEmptyInV110 .34s cubic-bezier(.22,.78,.2,1) both;
}
.empty-state__heart{
  width:48px;
  height:48px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(180deg,#FFD501,#F0C900);
  color:#0A0A0D;
  font-size:22px;
  line-height:1;
  box-shadow:0 12px 24px rgba(255,213,1,.24),0 4px 12px rgba(10,10,13,.12);
  position:relative;
  z-index:1;
}
.empty-state p{
  display:block;
  width:100%;
  max-width:520px;
  margin:2px 0 0;
  color:var(--ink);
  font-size:16px;
  line-height:1.34;
  font-weight:700;
  letter-spacing:.005em;
  text-align:center;
}
.empty-state span{
  display:block;
  width:100%;
  max-width:470px;
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.58;
  font-weight:400;
  text-align:center;
}
@keyframes abdzEmptyInV110{
  from{opacity:0;transform:translateY(-10px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@media (max-width:760px){
  .empty-state{
    width:min(92vw, 620px);
    min-height:172px;
    margin:20px auto 0;
    padding:30px 20px 30px;
    border-bottom-left-radius:20px;
    border-bottom-right-radius:20px;
    gap:10px;
  }
  .empty-state.is-visible{gap:10px}
  .empty-state__heart{width:44px;height:44px;font-size:20px}
  .empty-state p{font-size:15px;max-width:92%}
  .empty-state span{font-size:12px;line-height:1.52;max-width:92%}
}

/* V111 EMPTY SQUARE BREATHING */
.empty-state{
  width:min(620px,calc(100% - 40px))!important;
  min-height:245px!important;
  margin:30px auto 0!important;
  padding:44px 44px 46px!important;
  border-top-left-radius:0!important;
  border-top-right-radius:0!important;
  border-bottom-left-radius:20px!important;
  border-bottom-right-radius:20px!important;
  align-content:center!important;
  justify-content:center!important;
  justify-items:center!important;
  gap:16px!important;
}
.empty-state.is-visible{
  display:grid!important;
  animation:abdzEmptyInV111 .34s cubic-bezier(.22,.78,.2,1) both!important;
}
.empty-state__heart{
  width:50px!important;
  height:50px!important;
  font-size:22px!important;
}
.empty-state p{
  max-width:500px!important;
  margin:4px 0 0!important;
  font-size:16px!important;
  line-height:1.35!important;
}
.empty-state span{
  max-width:440px!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.58!important;
}
@keyframes abdzEmptyInV111{
  from{opacity:0;transform:translateY(-12px) scale(.982)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@media (max-width:760px){
  .empty-state{
    width:min(92vw,560px)!important;
    min-height:218px!important;
    margin:24px auto 0!important;
    padding:38px 22px 40px!important;
    border-bottom-left-radius:18px!important;
    border-bottom-right-radius:18px!important;
    gap:13px!important;
  }
  .empty-state__heart{
    width:46px!important;
    height:46px!important;
    font-size:20px!important;
  }
  .empty-state p{
    font-size:15px!important;
    max-width:92%!important;
  }
  .empty-state span{
    font-size:12px!important;
    max-width:92%!important;
  }
}

/* PRUEBA 120 BANNER VERTICAL AMPLIADO */
.hero .hero-media,
.hero-media[data-parallax-hero]{
  min-height:clamp(650px,55vw,930px)!important;
}

.hero .hero-bg,
.hero-bg[data-parallax-bg]{
  background-size:cover!important;
  background-position:center center!important;
}

.hero-copy{
  top:clamp(150px,20svh,235px)!important;
}

@media (max-width:760px){
  .hero .hero-media,
  .hero-media[data-parallax-hero]{
    min-height:clamp(520px,82svh,720px)!important;
  }

  .hero-copy{
    top:clamp(120px,18svh,178px)!important;
  }
}


/* PRUEBA 122 STEP 2 - LOGO MAS VISIBLE Y MEJOR ALINEADO */
.site-header--premium .header-inner{
  padding-left:28px!important;
}

.site-header--premium .brand{
  padding-left:6px!important;
}

.site-header--premium .brand-logo-img{
  width:92px!important;
  height:92px!important;
  filter:drop-shadow(0 6px 12px rgba(20,24,28,.07))!important;
}

@media (max-width:760px){
  .site-header--premium .header-inner{
    padding-left:14px!important;
  }

  .site-header--premium .brand{
    padding-left:3px!important;
  }

  .site-header--premium .brand-logo-img{
    width:76px!important;
    height:76px!important;
  }
}

@media (max-width:430px){
  .site-header--premium .brand-logo-img{
    width:72px!important;
    height:72px!important;
  }
}

/* V130 INTRO SIN EMPUJON + SCROLL PREMIUM */
html{
  scrollbar-color:#0A0A0D #F3F0EA;
}

html::-webkit-scrollbar{
  width:10px;
}

html::-webkit-scrollbar-track{
  background:#F3F0EA;
}

html::-webkit-scrollbar-thumb{
  background:#0A0A0D;
  border:2px solid #F3F0EA;
  border-radius:999px;
}

html::-webkit-scrollbar-thumb:hover{
  background:#1A1A1D;
}

/* La intro queda como tapa cinematográfica encima; no participa en el layout. */
#abdz-loader{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100svh!important;
  z-index:2147483000!important;
  overflow:hidden!important;
  contain:layout paint style!important;
  pointer-events:auto!important;
  transform:translateZ(0)!important;
  will-change:opacity!important;
}

/* La web real permanece preparada detrás desde el inicio. */
body:has(#abdz-loader) .top-line,
body:has(#abdz-loader) .site-header,
body:has(#abdz-loader) main,
body:has(#abdz-loader) .footer{
  visibility:visible!important;
}

/* Evita salto horizontal por cambio de viewport en navegadores compatibles. */
@supports (scrollbar-gutter: stable){
  html{
    scrollbar-gutter:stable;
  }
}

@media (max-width:760px){
  html::-webkit-scrollbar{
    width:7px;
  }
}

/* V131 SCROLL DESDE EL INICIO - SIN EMPUJON REAL */
/* Corrige el empujón real: la intro ya no elimina la barra de scroll. */
html.intro-lock{
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  height:auto!important;
  min-height:100%!important;
  overscroll-behavior:none!important;
  scrollbar-gutter:stable!important;
}

html.intro-lock body{
  overflow:visible!important;
  height:auto!important;
  min-height:100%!important;
  overscroll-behavior:auto!important;
  scrollbar-gutter:stable!important;
}

body.abdz-loader-active{
  overflow:visible!important;
  padding-right:0!important;
  scrollbar-gutter:stable!important;
}

html.intro-lock::-webkit-scrollbar,
html.intro-lock body::-webkit-scrollbar,
html.abdz-route-lock::-webkit-scrollbar,
html.abdz-route-lock body::-webkit-scrollbar{
  width:10px!important;
  height:10px!important;
  display:block!important;
}

html.intro-lock::-webkit-scrollbar-track,
html.abdz-route-lock::-webkit-scrollbar-track{
  background:#F3F0EA!important;
}

html.intro-lock::-webkit-scrollbar-thumb,
html.abdz-route-lock::-webkit-scrollbar-thumb{
  background:#0A0A0D!important;
  border:2px solid #F3F0EA!important;
  border-radius:999px!important;
}

/* El usuario no puede mover la página durante la intro, pero el scroll ya existe visualmente. */
#abdz-loader{
  touch-action:none!important;
  overscroll-behavior:contain!important;
}

/* V132 SCROLL INVISIBLE FUNCIONAL + EMPTY SUAVE */
/* Oculta solo la barra visual lateral; el scroll sigue funcionando con mouse, touch, trackpad y teclado. */
html,
body{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  scrollbar-gutter:auto!important;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
html.intro-lock::-webkit-scrollbar,
html.intro-lock body::-webkit-scrollbar,
html.abdz-route-lock::-webkit-scrollbar,
html.abdz-route-lock body::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
  background:transparent!important;
}

html.intro-lock,
html.abdz-route-lock{
  scrollbar-gutter:auto!important;
}

/* V135 EMPTY OVERLAY ESTABLE SIN CLICHEO */
/* Naturaleza del bug: el grid colapsaba al ocultar todos los productos.
   Solución: conservar altura del grid y mostrar el mensaje como overlay estable. */
.catalog{
  position:relative!important;
}

.catalog.is-search-empty .product-grid{
  min-height:var(--abdz-empty-grid-height, 520px)!important;
  opacity:0!important;
  pointer-events:none!important;
  transition:opacity .28s ease!important;
}

.catalog.is-search-empty .empty-state.is-visible{
  display:grid!important;
  position:absolute!important;
  left:50%!important;
  top:clamp(28px, 7vw, 76px)!important;
  width:min(620px, calc(100% - 32px))!important;
  min-height:238px!important;
  margin:0!important;
  transform:translateX(-50%)!important;
  opacity:0;
  animation:abdzEmptyOverlayFade 1.05s cubic-bezier(.18,.72,.18,1) both!important;
  z-index:58!important;
  will-change:opacity!important;
}

.catalog.is-search-empty .empty-state.is-visible .empty-state__heart,
.catalog.is-search-empty .empty-state.is-visible p,
.catalog.is-search-empty .empty-state.is-visible span{
  animation:none!important;
  transform:none!important;
  will-change:auto!important;
}

@keyframes abdzEmptyOverlayFade{
  0%{opacity:0;}
  45%{opacity:.72;}
  100%{opacity:1;}
}

@media (max-width:760px){
  .catalog.is-search-empty .product-grid{
    min-height:var(--abdz-empty-grid-height, 440px)!important;
  }

  .catalog.is-search-empty .empty-state.is-visible{
    top:clamp(22px, 9vw, 52px)!important;
    min-height:218px!important;
    width:min(92vw, 560px)!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .catalog.is-search-empty .empty-state.is-visible,
  .catalog.is-search-empty .product-grid{
    animation:none!important;
    transition:none!important;
    will-change:auto!important;
  }
}

/* V136 EMPTY FLUIDO SIN REFLOW */
/* Fluidez real: no colapsa tarjetas, no usa display:none para el mensaje y anima solo opacidad. */
.catalog .empty-state{
  display:grid!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  position:absolute!important;
  left:50%!important;
  top:clamp(28px, 7vw, 76px)!important;
  width:min(620px, calc(100% - 32px))!important;
  min-height:238px!important;
  margin:0!important;
  transform:translateX(-50%) translateZ(0)!important;
  animation:none!important;
  transition:
    opacity 1.45s cubic-bezier(.22,.72,.18,1),
    visibility 0s linear 1.45s!important;
  will-change:opacity!important;
}

.catalog.is-search-empty .empty-state.is-visible{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  animation:none!important;
  transition:
    opacity 1.45s cubic-bezier(.22,.72,.18,1),
    visibility 0s linear 0s!important;
}

.catalog.is-search-empty .product-grid{
  min-height:var(--abdz-empty-grid-height, 520px)!important;
  opacity:0!important;
  pointer-events:none!important;
  transform:translateZ(0)!important;
  transition:opacity .72s cubic-bezier(.22,.72,.18,1)!important;
  will-change:opacity!important;
}

.catalog.is-search-empty .empty-state.is-visible .empty-state__heart,
.catalog.is-search-empty .empty-state.is-visible p,
.catalog.is-search-empty .empty-state.is-visible span{
  animation:none!important;
  transform:none!important;
  opacity:1!important;
  will-change:auto!important;
}

@media (max-width:760px){
  .catalog .empty-state{
    top:clamp(22px, 9vw, 52px)!important;
    min-height:218px!important;
    width:min(92vw, 560px)!important;
    transition:
      opacity 1.25s cubic-bezier(.22,.72,.18,1),
      visibility 0s linear 1.25s!important;
  }

  .catalog.is-search-empty .empty-state.is-visible{
    transition:
      opacity 1.25s cubic-bezier(.22,.72,.18,1),
      visibility 0s linear 0s!important;
  }

  .catalog.is-search-empty .product-grid{
    min-height:var(--abdz-empty-grid-height, 440px)!important;
    transition:opacity .62s cubic-bezier(.22,.72,.18,1)!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .catalog .empty-state,
  .catalog.is-search-empty .product-grid{
    transition:none!important;
    will-change:auto!important;
  }
}

/* V137 EMPTY TOP CORNERS SUAVES */
.catalog .empty-state{
  border-radius:10px 10px 24px 24px!important;
}
.catalog .empty-state::before{
  border-radius:10px 10px 0 0!important;
}
@media (max-width:760px){
  .catalog .empty-state{
    border-radius:9px 9px 22px 22px!important;
  }
  .catalog .empty-state::before{
    border-radius:9px 9px 0 0!important;
  }
}

/* V139 AJUSTE FINO DEL LOGO: SOLO MAS GRANDE, SIN ENSANCHAR LA BARRA */
.site-header--premium .header-inner{
  padding:10px 22px !important;
}
.site-header--premium .brand{
  padding-left:0 !important;
}
.site-header--premium .brand-logo-img{
  width:92px !important;
  height:92px !important;
  max-height:none !important;
  object-fit:contain !important;
}
@media (max-width:760px){
  .site-header--premium .header-inner{
    padding:10px 14px !important;
  }
  .site-header--premium .brand{
    padding-left:0 !important;
  }
  .site-header--premium .brand-logo-img{
    width:76px !important;
    height:76px !important;
  }
}
@media (max-width:430px){
  .site-header--premium .brand-logo-img{
    width:72px !important;
    height:72px !important;
  }
}

/* V148 BUSCADOR FINAL LIMPIO */
/* Consolida V141-V147 en un solo bloque: blanco/negro, borde amarillo, icono original centrado y texto equilibrado. */
.site-header--premium .search{
  grid-template-columns:48px minmax(0,1fr) 28px!important;
  gap:6px!important;
  padding-left:10px!important;
  padding-right:18px!important;
  border:1px solid rgba(224,190,74,.76)!important;
  background:linear-gradient(180deg,#ffffff 0%,#fcfcfb 100%)!important;
  box-shadow:
    0 12px 28px rgba(98,80,48,.10),
    0 2px 8px rgba(139,116,74,.08),
    inset 0 1px 0 rgba(255,255,255,.96)!important;
}

.site-header--premium .search::before{
  background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,0) 64%)!important;
  opacity:.72!important;
}

.site-header--premium .search::after{
  left:22px!important;
  right:22px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(196,159,74,.22),transparent)!important;
  opacity:.36!important;
}

.site-header--premium.is-search-open .search,
.site-header--premium .search:focus-within{
  border-color:rgba(224,190,74,.88)!important;
  box-shadow:
    0 14px 32px rgba(98,80,48,.115),
    0 3px 10px rgba(139,116,74,.085),
    inset 0 1px 0 rgba(255,255,255,.98)!important;
}

.site-header--premium .search-field-icon-wrap{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  justify-self:center!important;
  overflow:visible!important;
  position:relative!important;
  z-index:1!important;
}

.site-header--premium .search-field-icon-wrap .search-field-icon{
  width:36px!important;
  height:36px!important;
  max-width:none!important;
  max-height:none!important;
  display:block!important;
  object-fit:contain!important;
  opacity:1!important;
  transform:translateY(-2px) scale(1.18)!important;
  transform-origin:center center!important;
  filter:drop-shadow(0 1px 1px rgba(122,97,45,.10))!important;
}

.site-header--premium .search input{
  color:#0f1113!important;
  font-size:14px!important;
  font-weight:430!important;
  line-height:1!important;
  letter-spacing:.002em!important;
}

.site-header--premium .search input::placeholder{
  color:rgba(36,38,42,.56)!important;
  font-size:14px!important;
  font-weight:420!important;
}

@media (max-width:760px){
  .site-header--premium .search{
    grid-template-columns:44px minmax(0,1fr) 24px!important;
    gap:5px!important;
    padding-left:9px!important;
    padding-right:14px!important;
    box-shadow:
      0 10px 22px rgba(98,80,48,.095),
      0 2px 6px rgba(139,116,74,.07),
      inset 0 1px 0 rgba(255,255,255,.96)!important;
  }

  .site-header--premium .search-field-icon-wrap{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }

  .site-header--premium .search-field-icon-wrap .search-field-icon{
    width:32px!important;
    height:32px!important;
    transform:translateY(-1.5px) scale(1.16)!important;
  }

  .site-header--premium .search input,
  .site-header--premium .search input::placeholder{
    font-size:12.8px!important;
  }
}


/* ABDZ V171 - restaura botón buscador/lupita sin reactivar carrito catálogo */
.site-header--premium .search-toggle {
  width: 43px !important;
  height: 43px !important;
  border-radius: 11px !important;
  border: 1px solid rgba(225, 218, 198, .95) !important;
  background: linear-gradient(180deg, #fff, #fffdf8) !important;
  box-shadow: 0 7px 16px rgba(20, 24, 28, .045), inset 0 1px 0 rgba(255,255,255,.95) !important;
  display: grid !important;
  place-items: center !important;
  color: var(--ink) !important;
  position: relative !important;
  cursor: pointer !important;
  isolation: isolate !important;
  padding: 0 !important;
  overflow: visible !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.site-header--premium .search-toggle:hover,
.site-header--premium .search-toggle:focus-visible {
  transform: translateY(-1px) !important;
  border-color: rgba(202,169,86,.42) !important;
  box-shadow: 0 10px 22px rgba(20,24,28,.07), inset 0 1px 0 rgba(255,255,255,.95) !important;
  outline: none !important;
}

.site-header--premium .search-toggle:active {
  transform: translateY(0) scale(.98) !important;
}

.site-header--premium .search-icon-img {
  width: 31px !important;
  height: 31px !important;
  max-width: none !important;
  object-fit: contain !important;
  display: block !important;
  pointer-events: none !important;
  user-select: none !important;
  opacity: 1 !important;
}


/* ABDZ V172 - header: buscador activo + icono comprar solo visual, sin carrito catalogo */
.site-header--premium .header-actions {
  grid-column: 3 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

.site-header--premium .search-toggle,
.site-header--premium .cart-button--visual-only {
  width: 43px !important;
  height: 43px !important;
  border-radius: 11px !important;
  border: 1px solid rgba(225, 218, 198, .95) !important;
  background: linear-gradient(180deg, #fff, #fffdf8) !important;
  box-shadow: 0 7px 16px rgba(20, 24, 28, .045), inset 0 1px 0 rgba(255,255,255,.95) !important;
  display: grid !important;
  place-items: center !important;
  color: var(--ink) !important;
  position: relative !important;
  isolation: isolate !important;
  padding: 0 !important;
  overflow: visible !important;
}

.site-header--premium .search-toggle {
  cursor: pointer !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.site-header--premium .cart-button--visual-only {
  cursor: pointer !important;
  pointer-events: auto !important;
}

.site-header--premium .search-toggle:hover,
.site-header--premium .search-toggle:focus-visible {
  transform: translateY(-1px) !important;
  border-color: rgba(202,169,86,.42) !important;
  box-shadow: 0 10px 22px rgba(20,24,28,.07), inset 0 1px 0 rgba(255,255,255,.95) !important;
  outline: none !important;
}

.site-header--premium .search-toggle:active {
  transform: translateY(0) scale(.98) !important;
}

.site-header--premium .search-icon-img,
.site-header--premium .cart-icon-img {
  width: 31px !important;
  height: 31px !important;
  max-width: none !important;
  object-fit: contain !important;
  display: block !important;
  pointer-events: none !important;
  user-select: none !important;
  opacity: 1 !important;
}

.site-header--premium .cart-icon-img {
  filter: drop-shadow(0 2px 3px rgba(181,138,34,.12)) !important;
}

/* V191 — evita destello blanco solo durante salida hacia Montblanc. */
html.abdz-route-loading-montblanc,
html.abdz-route-loading-montblanc body {
  background: #FFD501 !important;
}


/* ABDZ V220 - catálogo: carrito visual conectado a contador global sin cambiar diseño */
.site-header--premium .cart-button--visual-only .abdz-v188-cart-count {
  opacity: 0 !important;
  transform: scale(.72) !important;
  pointer-events: none !important;
  transition: opacity .18s ease, transform .18s ease !important;
}

.site-header--premium .cart-button--visual-only .abdz-v188-cart-count.is-active {
  opacity: 1 !important;
  transform: scale(1) !important;
}

/* ABDZ VERSION J - catálogo: eliminar parpadeo residual por overflow global del drawer.
   El CSS global del drawer fuerza overflow:hidden!important en html/body.
   En catálogo eso recalcula sticky y produce parpadeo leve.
   Esta regla gana solo si el motor está en modo catálogo; perfiles no cambian. */
html.abdz-bgt-catalog-cart-engine.abdz-cart-scroll-locked {
  overflow: visible !important;
  overscroll-behavior: none !important;
}

body.abdz-bgt-catalog-cart-engine.cart-open {
  overflow: visible !important;
  overscroll-behavior: none !important;
  padding-right: 0 !important;
}

html.abdz-bgt-catalog-cart-engine.abdz-cart-scroll-locked .top-line.top-line--premium,
html.abdz-bgt-catalog-cart-engine.abdz-cart-scroll-locked .site-header.site-header--premium {
  visibility: visible !important;
  opacity: 1 !important;
}
