
/* nd-card base (safe) */
.nd-card{display:block;border-radius:12px;overflow:hidden;background:#fff;border:1px solid #e8e8e8;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.nd-card__media{position:relative;aspect-ratio:16/9;background:#f5f5f7;overflow:hidden}
.nd-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.nd-card:hover .nd-card__media img{transform:scale(1.03)}
.nd-badge{position:absolute;top:10px;left:10px;background:rgba(0,0,0,.65);color:#fff;font-size:12px;padding:6px 10px;border-radius:999px;backdrop-filter:saturate(120%) blur(2px);z-index:2}
.nd-badge--exclusive{right:10px;left:auto;background:#ffdd57;color:#1a1a1a;display:inline-flex;align-items:center;gap:6px;font-weight:600}
.nd-badge .nd-ico{font-size:14px;line-height:1;display:inline-block}
.nd-ribbon{position:absolute;left:12px;right:12px;bottom:12px;border-radius:999px;padding:10px 14px;text-align:center;font-weight:700;z-index:2}
.nd-ribbon--danger{background:#ff2d2d;color:#fff;box-shadow:0 6px 16px rgba(255,45,45,.25)}
.nd-card__body{padding:14px 16px}
.nd-card__rating{color:#f7b500;font-size:14px;letter-spacing:1px;margin-bottom:6px}
.nd-card__title{font-weight:700;margin:0 0 6px 0;font-size:16px;line-height:1.25;color:#111;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nd-card__subtitle{margin:0 0 10px 0;color:#666;font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nd-card__price{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.nd-price-old{color:#999;text-decoration:line-through}
.nd-price-new{font-weight:800}
.nd-discount{background:#e9f9ee;color:#1c7d3a;font-weight:700;font-size:12px;padding:6px 10px;border-radius:999px;margin-left:auto}


/* === Gadgetza Home3-like sizing === */
:root{
  --nd-card-w: 340px;
  --nd-card-img-h: 210px;
  --nd-card-gap: 20px;
}
.nd-card{ width: var(--nd-card-w); max-width:100%; box-shadow:0 6px 16px rgba(0,0,0,.06); }
.nd-card__media{ height: var(--nd-card-img-h); aspect-ratio:auto; }
.nd-grid{ display:grid; grid-template-columns: repeat(auto-fill, minmax(var(--nd-card-w),1fr)); gap: var(--nd-card-gap); }


/* === ND Card – refinamentos UI p/ Search/Home === */
.nd-card{border-radius:12px;background:#fff;box-shadow:0 8px 18px rgba(0,0,0,.06);transition:transform .15s ease, box-shadow .15s ease;}
.nd-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.09);}
.nd-card__media{position:relative;height:var(--nd-card-img-h,200px);overflow:hidden;border-radius:12px 12px 0 0;}
.nd-card__img{width:100%;height:100%;object-fit:cover;display:block;}
.nd-card__body{padding:14px 16px 16px;}
.nd-card__title{font-size:15px;line-height:1.35;margin:6px 0 8px;font-weight:700;color:#222;}
.nd-card__subtitle{font-size:13px;color:#666;margin:0 0 10px;}
.nd-card__price{display:flex;align-items:center;gap:10px;}
.nd-price-old{color:#9aa0a6;text-decoration:line-through;}
.nd-price-new{color:var(--primary-color,#b22c74);font-weight:800;}
.nd-card__rating{font-size:12px;color:#444;display:flex;align-items:center;gap:6px;}
.nd-stars{letter-spacing:1px;}
/* Badges no topo */
.nd-badge{position:absolute;top:10px;z-index:5;font-size:11px;font-weight:700;padding:6px 10px;border-radius:999px;background:#fff;color:#333;box-shadow:0 2px 10px rgba(0,0,0,.08);}
.nd-badge--left{left:10px;}
.nd-badge--right{right:10px;}
.nd-badge--exclusive{left:10px;background:#111;color:#fff;}
.nd-badge--discount{right:10px;background:#e91e63;color:#fff;}
/* Grid responsivo confortável para a Search */
.nd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--nd-card-w,320px),1fr));gap:var(--nd-card-gap,20px);}

/* === Reviews row always visible === */
.nd-card__rating{font-size:12px;color:#555;display:flex;align-items:center;gap:6px;margin-bottom:6px;}
.nd-card__rating .nd-stars{font-size:13px;color:#ffb300;}
.nd-card__rating .nd-reviews{color:#666;}
/* === Ribbon time-left (big, pill) === */
.nd-ribbon{position:absolute;left:50%;transform:translateX(-50%);bottom:10px;z-index:6;background:#ff3d57;color:#fff;border-radius:999px;padding:10px 18px;font-weight:800;font-size:14px;box-shadow:0 6px 14px rgba(255,61,87,.35);display:inline-flex;align-items:center;gap:8px;}
.nd-ribbon .time{font-variant-numeric:tabular-nums;}
/* === Badge styles closer to home === */
.nd-badge{background:#fff;color:#222;border-radius:999px;padding:6px 10px;font-weight:700;font-size:11px;box-shadow:0 2px 10px rgba(0,0,0,.08);}
.nd-badge--exclusive{background:#111;color:#fff;}
.nd-badge--discount{background:#e91e63;color:#fff;}
/* === Price emphasis === */
.nd-price-new{color:#b22c74;font-weight:800;}
.nd-price-old{color:#a5abb0;text-decoration:line-through;}


/* === Card visuals aligned to reference === */
:root{--nd-card-w: 340px;--nd-card-img-h:220px;--nd-card-gap:24px}
.nd-card{border-radius:14px;background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.08);transition:transform .15s ease, box-shadow .15s ease;}
.nd-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.12);}
.nd-card__media{position:relative;height:var(--nd-card-img-h);overflow:hidden;border-radius:14px 14px 0 0;}
.nd-card__img{width:100%;height:100%;object-fit:cover;display:block;}
.nd-card__body{padding:16px 18px 18px}
.nd-card__title{font-size:16px;line-height:1.35;margin:6px 0 6px;font-weight:800;color:#161616}
.nd-card__subtitle{font-size:13px;color:#6b7280;margin:0 0 10px}
.nd-card__price{display:flex;align-items:center;gap:12px}
.nd-price-old{color:#9aa0a6;text-decoration:line-through}
.nd-price-new{color:#b22c74;font-weight:900}
.nd-discount-pill{margin-left:auto;background:#34c759;color:#0b3d1b;font-weight:800;font-size:12px;border-radius:999px;padding:6px 10px}
.nd-card__rating{font-size:12px;color:#6b7280;display:flex;align-items:center;gap:6px;margin-bottom:6px}
.nd-card__rating .nd-stars{font-size:13px;color:#ffb300}
.nd-card__rating .nd-reviews{color:#6b7280}
/* Badges */
.nd-badge{position:absolute;top:12px;z-index:6;font-size:12px;font-weight:800;padding:6px 12px;border-radius:999px;background:#fff;color:#222;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.nd-badge--left{left:12px;background:#2e2622;color:#fff}
.nd-badge--right{right:12px;background:#ffd300;color:#111}
.nd-badge--discount{right:12px;top:auto;bottom:12px;background:#e91e63;color:#fff}
.nd-badge--new{left:12px;top:44px;background:#10b981;color:#083a2d}
/* Ribbon time-left – pill grande central, rosa */
.nd-ribbon{position:absolute;left:50%;transform:translateX(-50%);bottom:12px;z-index:6;background:#ff4f87;color:#fff;border-radius:999px;padding:10px 18px;font-weight:900;font-size:14px;box-shadow:0 8px 18px rgba(255,79,135,.35);display:inline-flex;align-items:center;gap:8px}
.nd-ribbon .time{font-variant-numeric:tabular-nums}


/* === HARD OVERRIDES: keep media badges inline, never full width === */
.nd-card__media .nd-badge{position:absolute;display:inline-flex;max-width:max-content;white-space:nowrap;line-height:1}

/* Reference sizes/colors */
:root{--nd-card-w: 340px;--nd-card-img-h:220px;--nd-card-gap:24px}

.nd-card{border-radius:14px;background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.08);transition:transform .15s ease, box-shadow .15s ease;}
.nd-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.12);}

.nd-card__media{position:relative;height:var(--nd-card-img-h);overflow:hidden;border-radius:14px 14px 0 0;}
.nd-card__img{width:100%;height:100%;object-fit:cover;display:block;}

.nd-card__body{padding:16px 18px 18px}
.nd-card__title{font-size:16px;line-height:1.35;margin:6px 0 6px;font-weight:800;color:#161616}
.nd-card__subtitle{font-size:13px;color:#6b7280;margin:0 0 8px}

.nd-card__rating{font-size:12px;color:#6b7280;display:flex;align-items:center;gap:6px;margin:0 0 8px}
.nd-card__rating .nd-stars{font-size:13px;color:#ffb300}
.nd-card__rating .nd-reviews{color:#6b7280}

.nd-card__price{display:flex;align-items:center;gap:12px;margin-top:4px}
.nd-price-old{color:#9aa0a6;text-decoration:line-through}
.nd-price-new{color:#b22c74;font-weight:900}
.nd-discount-pill{margin-left:auto;background:#34c759;color:#0b3d1b;font-weight:800;font-size:12px;border-radius:999px;padding:6px 10px}

/* Badges */
.nd-badge{top:12px;z-index:6;font-size:12px;font-weight:800;padding:6px 12px;border-radius:999px;background:#fff;color:#222;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.nd-badge--left{left:12px;background:#2e2622;color:#fff}
.nd-badge--right{right:12px;background:#ffd300;color:#111}
.nd-badge--new{left:12px;top:44px;background:#10b981;color:#083a2d}

/* Ribbon time-left – pink pill centered */
.nd-ribbon{position:absolute;left:50%;transform:translateX(-50%);bottom:12px;z-index:6;background:#ff4f87;color:#fff;border-radius:999px;padding:10px 18px;font-weight:900;font-size:14px;box-shadow:0 8px 18px rgba(255,79,135,.35);display:inline-flex;align-items:center;gap:8px}
.nd-ribbon .time{font-variant-numeric:tabular-nums}


/* === Fixes per request: Exclusivo on right, image visible, solid ribbon === */
.nd-card__media .nd-badge--right{ right:12px; left:auto !important; }
.nd-card__media .nd-badge--left{ left:12px; right:auto; }
.nd-card__img{ display:block !important; opacity:1 !important; visibility:visible !important; }
.nd-card__media{ background: transparent !important; }
/* Make ribbon look solid (no gradient clipping) */
.nd-ribbon{ background:#ff4f87 !important; box-shadow:0 8px 18px rgba(255,79,135,.35) !important; }


/* === Aggressive overrides to match reference exactly === */
.nd-card__media::before, .nd-card__media::after{ display:none !important; content:none !important; }
.nd-card__img{ display:block !important; opacity:1 !important; visibility:visible !important; object-fit:cover; width:100%; height:100%; }
.nd-card__media .nd-badge{ position:absolute !important; display:inline-flex !important; max-width:max-content; white-space:nowrap; line-height:1; }
.nd-card__media .nd-badge--left{ left:12px !important; right:auto !important; top:12px !important; }
.nd-card__media .nd-badge--right{ right:12px !important; left:auto !important; top:12px !important; }
.nd-ribbon{ left:50% !important; transform:translateX(-50%) !important; bottom:12px !important; background:#ff4f87 !important; color:#fff !important; border-radius:999px !important; padding:10px 18px !important; font-weight:900 !important; font-size:14px !important; box-shadow:0 8px 18px rgba(255,79,135,.35) !important; display:inline-flex !important; align-items:center !important; gap:8px !important; }


/* Subtitle clamp and text flow fixes */
.nd-card__subtitle{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden; text-overflow:ellipsis; word-wrap:break-word; white-space:normal;
  max-height:3.3em;
}
.nd-card__title{word-wrap:break-word}


/* === Image visibility hard fix & Ribbon width === */
.nd-card__media{position:relative !important; overflow:hidden; background:#f2f2f2;}
.nd-card__media img.nd-card__img{display:block !important; opacity:1 !important; visibility:visible !important; width:100% !important; height:100% !important; object-fit:cover !important; position:relative; z-index:1;}
.nd-card__media::before,.nd-card__media::after{content:none !important; display:none !important;}

/* Ribbon: wider, centered, single-line */
.nd-ribbon{
  left:50% !important; transform:translateX(-50%) !important; bottom:14px !important;
  padding:12px 24px !important; min-width:64% !important; max-width:calc(100% - 36px) !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  white-space:nowrap !important; font-size:15px !important; font-weight:900 !important;
  background:#ff4f87 !important; color:#fff !important; border-radius:999px !important;
  box-shadow:0 10px 22px rgba(255,79,135,.35) !important;
}


/* === ND Grid – columns and gap === */
.nd-grid{justify-content:center}
@media (min-width:1200px){
  .nd-grid{grid-template-columns: repeat(4, minmax(0,1fr))}
  .nd-card{width:100%}
}
@media (min-width:992px) and (max-width:1199.98px){
  .nd-grid{grid-template-columns: repeat(3, minmax(0,1fr))}
  .nd-card{width:100%}
}


/* === ND Badges overlay polish === */
.nd-card__media .nd-badge{z-index:3}
.nd-card__media .nd-badge.nd-badge--left{left:10px; right:auto}
.nd-card__media .nd-badge.nd-badge--right{right:10px; left:auto}
.nd-card__media .nd-badge.nd-badge--new{background:#22c55e;color:#063c1f;border:1px solid #16a34a}
.nd-card__media .nd-ribbon{z-index:3}


/* ===== ND Grid breakpoints (fixed column counts) ===== */
@media (min-width: 1200px){
  .nd-grid{ display:grid; grid-template-columns: repeat(4, 1fr); gap: var(--nd-card-gap); }
  .nd-card{ width:100%; max-width:100%; }
  .nd-card__media{ aspect-ratio:16/9; height:auto; }
}
@media (min-width: 992px) and (max-width: 1199.98px){
  .nd-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap: var(--nd-card-gap); }
  .nd-card{ width:100%; max-width:100%; }
}
@media (min-width: 640px) and (max-width: 991.98px){
  .nd-grid{ display:grid; grid-template-columns: repeat(2, 1fr); gap: var(--nd-card-gap); }
  .nd-card{ width:100%; max-width:100%; }
}
@media (max-width: 639.98px){
  .nd-grid{ display:grid; grid-template-columns: 1fr; gap: var(--nd-card-gap); }
  .nd-card{ width:100%; max-width:100%; }
}


/* ===== ND Badge overlay polish ===== */
.nd-card__media{ position:relative; }
.nd-badge{ position:absolute; top:10px; left:10px; background:rgba(17,24,39,.85); color:#fff;
  border-radius:999px; padding:.35rem .6rem; font-weight:700; font-size:.78rem; letter-spacing:.2px;
  display:inline-flex; align-items:center; gap:.35rem; z-index:2; border:1px solid rgba(255,255,255,.08); }
.nd-badge--right{ left:auto; right:10px; }
.nd-badge--exclusive{ background:#ffdd57; color:#2e2310; border-color:#f6cd3a; }
.nd-badge .nd-ico{ font-size:.9rem; line-height:1; }
.nd-ribbon{ position:absolute; left:12px; right:12px; bottom:12px; background:linear-gradient(180deg,#ff4d4d,#e11d48);
  color:#fff; border-radius:999px; padding:10px 14px; text-align:center; font-weight:800; box-shadow:0 6px 16px rgba(225,29,72,.25); z-index:2; }
.nd-ribbon .time{ white-space:nowrap; font-variant-numeric:tabular-nums; }


/* Avoid overlap between left badges (category + Novo) */
.nd-badge--left{ left:10px; top:10px; }
.nd-badge--new{ left:10px; top:46px; } /* places Novo under the first badge */
@media (max-width: 480px){
  .nd-badge--new{ top:44px; } /* slight tighten on very small screens */
}


/* === Color overrides (Exclusive = yellow, Ribbon = red) === */
.nd-card__media .nd-badge.nd-badge--right{
  background:#ffdd57 !important;
  color:#2e2310 !important;
  border:1px solid #f6cd3a !important;
}
.nd-card__media .nd-ribbon{
  background:#e11d48 !important; /* red-600 */
  background-image:none !important;
  color:#fff !important;
  box-shadow:0 6px 16px rgba(225,29,72,.25) !important;
}

/* ==========================================================================
   ND Tecnologia — Cards/Listagem Polish (inlined into card-deal-pro.css)
   Date: 2025-10-20 13:43:48
   Notes: Harmonize cards com a página de oferta e reforça hierarchy
   ========================================================================== */
.nd-card { border-radius: 14px; box-shadow: 0 10px 24px rgba(0,0,0,.08); }
.nd-card__title { font-weight: 800; color: #161616; }
.nd-badge--exclusive { background: #111827; color: #fff; }
.nd-ribbon { background: #ff4f87; color: #fff; box-shadow: 0 8px 18px rgba(255,79,135,.35); }


/* ==========================================================================
   ND Tecnologia — Offer Page Polish (inline via card-deal-pro.css)
   Date: 2025-10-20 13:50:37
   ========================================================================== */
:root{ --primary-color:#297ec0; }

.tas_single .single_image{border-radius:14px;overflow:hidden;box-shadow:0 14px 28px rgba(0,0,0,.08);}
.tas_single .single_title{font-weight:800;letter-spacing:.2px;line-height:1.25;margin-top:6px;}
.tas_single .single_subtitle{color:#6b7280;margin-top:6px;}
.tas_single .single_location{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;box-shadow:0 2px 6px rgba(0,0,0,.04);}

.tas_single .price{color:#111827;font-weight:900;font-size:2rem;}
.tas_single .oldprice{color:#9ca3af;}
.tas_single .discount{background:#e9f9ee;color:#065f46;border:1px solid #a7f3d0;font-weight:800;}

.tas_single .buybtn,.tas_single .buybtn_2{background:linear-gradient(180deg,var(--primary-color),#1f5a91);box-shadow:0 14px 24px rgba(41,126,192,.35);border:0;padding:12px 0;font-weight:800;letter-spacing:.2px;transition:transform .12s ease,box-shadow .12s ease,opacity .2s ease;}
.tas_single .buybtn:hover,.tas_single .buybtn_2:hover{transform:translateY(-1px);box-shadow:0 18px 30px rgba(41,126,192,.42);opacity:.95;}
.tas_single .favbtn{color:#6b7280;transition:color .15s ease;}
.tas_single .favbtn:hover{color:#ef4444;}

.nd-trustbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;}
.nd-trustbar .nd-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;background:#f3f4f6;color:#111827;border:1px solid #e5e7eb;font-weight:700;font-size:13px;justify-content:center;}
@media (max-width:640px){.nd-trustbar{grid-template-columns:1fr;}}

.nd-countdown{display:inline-flex;align-items:center;gap:8px;background:#ff4f87;color:#fff;font-weight:900;border-radius:999px;padding:10px 16px;box-shadow:0 10px 22px rgba(255,79,135,.35);}
.nd-countdown .time{font-variant-numeric:tabular-nums;}

@media (max-width:767.98px){.nd-sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:1200;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -8px 18px rgba(0,0,0,.08);padding:10px 14px;}.nd-sticky-cta .buybtn{margin:0;}body{padding-bottom:76px;}}

.nd-muted{color:#6b7280!important;}.nd-soft{background:#f9fafb!important;border:1px solid #eef2f7!important;}.nd-shadow{box-shadow:0 12px 24px rgba(0,0,0,.10)!important;}


/* ==========================================================================
   ND Tecnologia — Offer Page Polish (priority block) — 2025-10-20 14:02:04
   Colado no final do último CSS carregado para garantir precedência.
   ========================================================================== */

.tas_single .single_image, .tas_single .uk-card-media-top img {
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 14px 28px rgba(0,0,0,.08);
}

.tas_single .single_title,
.tas_single .uk-article-title {
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.25;
  margin-top: 6px;
}

.tas_single .single_subtitle,
.tas_single .uk-article-meta { color: #6b7280; }

.tas_single .single_location {
  background: #f3f4f6;
  color: #374151;
  border: 1px solid #e5e7eb;
  box-shadow: 0 2px 6px rgba(0,0,0,.04);
}

.tas_single .price,
.tas_single .uk-text-lead.price {
  color: #111827;
  font-weight: 900;
  font-size: 2rem;
}

.tas_single .oldprice { color: #9ca3af; }
.tas_single .discount {
  background: #e9f9ee;
  color: #065f46;
  border: 1px solid #a7f3d0;
  font-weight: 800;
}

/* Botões primários na oferta */
.tas_single .buybtn,
.tas_single .buybtn_2,
.tas_single .uk-button-primary {
  background: linear-gradient(180deg, #297ec0, #1f5a91) !important;
  border: 0 !important;
  box-shadow: 0 14px 24px rgba(41,126,192,.35);
  font-weight: 800;
  letter-spacing: .2px;
  transition: transform .12s ease, box-shadow .12s ease, opacity .2s ease;
}
.tas_single .buybtn:hover,
.tas_single .buybtn_2:hover,
.tas_single .uk-button-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 30px rgba(41,126,192,.42);
  opacity: .95;
}

.tas_single .favbtn { color: #6b7280; transition: color .15s ease; }
.tas_single .favbtn:hover { color: #ef4444; }

/* Trustbar e countdown */
.nd-trustbar{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;margin-top:14px;
}
.nd-trustbar .nd-pill{
  display:inline-flex;align-items:center;gap:8px;padding:10px 12px;
  border-radius:999px;background:#f3f4f6;color:#111827;border:1px solid #e5e7eb;
  font-weight:700;font-size:13px;justify-content:center;
}
@media (max-width:640px){ .nd-trustbar{grid-template-columns:1fr;} }

.nd-countdown{
  display:inline-flex;align-items:center;gap:8px;background:#ff4f87;color:#fff;
  font-weight:900;border-radius:999px;padding:10px 16px;box-shadow:0 10px 22px rgba(255,79,135,.35);
}
.nd-countdown .time{ font-variant-numeric: tabular-nums; }

/* Sticky CTA Mobile */
@media (max-width: 767.98px){
  .nd-sticky-cta{ position:fixed;left:0;right:0;bottom:0;z-index:1200;background:#fff;
    border-top:1px solid #e5e7eb;box-shadow:0 -8px 18px rgba(0,0,0,.08);padding:10px 14px; }
  .nd-sticky-cta .uk-button-primary { margin:0; }
  body { padding-bottom: 76px; }
}
