/* Prima pagină — exclusivsrl.ro. Aceleași culori și forme ca în catalog și pe paginile de produs. */
/* Culorile (.exa) și căutarea sunt în exa-cauta.css, încărcat pe tot site-ul. */


/* ---------- Banda cu cifre: plăci luminoase, fiecare cu un produs real din catalog ---------- */
.exa-band { padding: 8px 16px 0; }
.exa-band-in { max-width: 1228px; margin: 0 auto; }
.exa-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.exa-stats li { position: relative; display: flex; flex-wrap: wrap; align-content: flex-start; align-items: baseline; min-height: 272px; margin: 0; padding: 24px 24px 0; overflow: hidden; border-radius: 22px; background: #f4f5f7; isolation: isolate; }
.exa-stats li:first-child { background: #fff1e6; }
.exa-stats b { font-size: 54px; font-weight: 800; line-height: 1; letter-spacing: -1.5px; color: var(--ink); font-variant-numeric: tabular-nums; }
.exa-stats i { font-size: 40px; font-weight: 800; font-style: normal; color: var(--o); margin-left: 2px; }
.exa-stats span { flex-basis: 100%; margin-top: 8px; font-size: 15px; font-weight: 500; color: #4a4a4a; }
.exa-stats li:first-child b { color: var(--o-h); }
/* pozele din catalog au fundal gri (#dcdde0): contrastul îl duce la alb, iar multiply îl contopește cu placa */
.exa-stats img { position: absolute; z-index: -1; right: -4%; bottom: -12%; width: 68%; height: auto; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply; transform: translateX(28%) rotate(-8deg); opacity: 0; transition: transform .9s cubic-bezier(.2, .8, .2, 1), opacity .6s ease; }
.exa-stats li.on img { transform: none; opacity: 1; }
.exa-stats li:nth-child(2) img { transition-delay: .08s; }
.exa-stats li:nth-child(3) img { transition-delay: .16s; }
.exa-stats li:nth-child(4) img { transition-delay: .24s; }
@media (hover: hover) {
  .exa-stats li.on:hover img { transform: scale(1.08) rotate(-4deg); transition-delay: 0s; }
}
/* producătorii: o bandă care curge încet (se oprește la hover) */
.exa-brands { display: flex; align-items: center; gap: 18px; margin: 14px 0 0; padding: 16px 0 16px 24px; overflow: hidden; border-radius: 22px; background: #f4f5f7; }
.exa-brands > span { flex: none; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.exa-mq { flex: 1; min-width: 0; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent); mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent); }
.exa-mq-t { display: flex; width: max-content; animation: exa-mq 28s linear infinite; }
.exa-mq:hover .exa-mq-t { animation-play-state: paused; }
.exa-mq p { display: flex; flex: none; align-items: center; margin: 0; padding-right: 28px; gap: 28px; white-space: nowrap; font-size: 20px; font-weight: 700; letter-spacing: -.01em; color: var(--ink); }
.exa-mq p i { width: 7px; height: 7px; border-radius: 50%; background: var(--o); }
@keyframes exa-mq { to { transform: translateX(-50%); } }

/* ---------- Cardurile din caruselele de produse ---------- */
.home .jet-woo-products__inner-box { display: flex; flex-direction: column; height: 100%; padding: 0 !important; overflow: hidden; background: #fff !important; border: 1px solid var(--line, #ececec) !important; border-radius: 18px !important; box-shadow: none !important; text-align: left !important; transition: border-color .2s, transform .25s ease; }
.home .jet-woo-products__inner-box:hover { border-color: #FF781F !important; }
.home .jet-woo-product-thumbnail { order: 1 !important; margin: 0 !important; border-bottom: 1px solid #ececec; }
.home .jet-woo-product-thumbnail img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 0 !important; }
.home .jet-woo-product-title { order: 2 !important; margin: 0 !important; padding: 14px 14px 8px !important; text-align: left !important; font-size: 15px !important; font-weight: 700 !important; line-height: 1.35 !important; }
.home .jet-woo-product-title a { font-size: 15px !important; font-weight: 700 !important; line-height: 1.35 !important; color: #141414 !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.home .jet-woo-product-title a:hover { color: #FF781F !important; }
.exa-act { order: 3; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: auto; padding: 6px 12px 12px; } /* Jet reordonează copiii cardului: ordinea o fixăm explicit */
.exa-q { flex: 1; min-height: 40px; padding: 0 10px; border: 0; border-radius: 99px; background: #FF781F; color: #fff; font-size: 14px; font-weight: 700; line-height: 1.2; cursor: pointer; transition: background .15s; }
.exa-q:hover, .exa-q:focus-visible { background: #FF781F; }
.exa-q.in { background: #fff3ea; color: #FF781F; box-shadow: inset 0 0 0 1px #fbd5bb; }
.exa-q[aria-busy="true"] { opacity: .6; cursor: progress; }
@keyframes exa-added { 0% { transform: scale(.94); } 55% { transform: scale(1.04); } 100% { transform: scale(1); } }
.exa-q.just { animation: exa-added .45s ease; }
.exa-f { flex: none; display: inline-flex; align-items: center; min-height: 40px; padding: 0 12px; border: 1px solid #e4e4e4; border-radius: 99px; color: #141414 !important; font-size: 14px; font-weight: 600; text-decoration: none !important; }
.exa-f:hover { border-color: #FF781F; background: #fff3ea; }
@media (hover: hover) { .home .jet-woo-products__inner-box:hover { transform: translateY(-3px); } }

@media (max-width: 1024px) {
  .exa-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .exa-stats { gap: 10px; }
  .exa-stats li { min-height: 178px; padding: 16px 16px 0; border-radius: 18px; }
  .exa-stats b { font-size: 36px; letter-spacing: -1px; }
  .exa-stats i { font-size: 28px; }
  .exa-stats span { font-size: 13.5px; }
  .exa-stats img { width: 74%; }
  .exa-brands { margin-top: 10px; padding: 12px 0 12px 16px; border-radius: 18px; gap: 12px; }
  .exa-brands > span { display: none; }
  .exa-mq p { font-size: 16px; gap: 20px; padding-right: 20px; }
  .home .jet-woo-product-title, .home .jet-woo-product-title a { font-size: 14px !important; }
  .home .jet-woo-product-title { padding: 12px 12px 6px !important; }
  .exa-act { flex-direction: column; align-items: stretch; padding: 6px 12px 12px; gap: 6px; }
  .exa-f { justify-content: center; min-height: 36px; }
}
@media (prefers-reduced-motion: reduce) {
  .home .jet-woo-products__inner-box, .exa-q.just { transition: none; animation: none; transform: none !important; }
  .exa-stats img { transition: none; transform: none !important; opacity: 1; }
  .exa-mq-t { animation: none; }
  .exa-mq-t p + p { display: none; }
  .exa-mq p { flex-wrap: wrap; white-space: normal; row-gap: 6px; }
}

/* ---------- Caruselele de produse (înlocuiesc grilele fixe de câte 6) ----------
   Stil de magazin online (inspirat JYSK): fără contur și umbre, poză mare pe gri deschis, text simplu dedesubt,
   rânduri cu buline pentru acțiuni. Tema stilizează global butoanele (contur roz): aici totul e resetat explicit. */
.exa-rail { --o: #FF781F; --o-h: #FF781F; --ink: #111; --muted: #5f5f5f; --g: #f2f2f2; --ok: #2e7d32; position: relative; width: 100%; text-align: left; }
.exa-rail *, .exa-rail *::before { box-sizing: border-box; }
.exa-rail button { font-family: inherit; text-transform: none; letter-spacing: normal; box-shadow: none; min-height: 0; }
/* Antetul: titlul și descrierea vin din Elementor (centrate); pastila discretă spre catalogul cu filtre stă sub carusel */
.exa-rail-h { display: flex; margin: 0 0 18px; }
.exa-rail-f { display: flex; justify-content: center; margin: 48px 0 0; } /* prima pagină: linkul spre catalog, centrat sub carusel, cu aer deasupra */
.exa-rail-f .exa-all { gap: 14px; min-height: 56px; padding: 0 10px 0 28px; font-size: 17px; }
.exa-rail-f .exa-all span { width: 38px; height: 38px; font-size: 17px; }
.exa-all { display: inline-flex; align-items: center; gap: 10px; min-height: 42px; padding: 0 8px 0 18px; border: 1px solid #dcdcdc; border-radius: 99px; background: #fff; font-size: 15px; font-weight: 400; line-height: 1.2; color: var(--ink) !important; text-decoration: none !important; transition: border-color .15s, background-color .15s, color .15s; }
.exa-all span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--ink); color: #fff; font-size: 15px; transition: transform .2s; }
.exa-all:hover, .exa-all:focus-visible { border-color: var(--ink); }
.exa-all:hover span, .exa-all:focus-visible span { transform: translateX(3px); }
/* descrierea categoriei, mai aproape de titlu și centrată (pe mobil Elementor o aliniază la stânga) */
.elementor-element-5f699e1, .elementor-element-3701674, .elementor-element-0024955, .elementor-element-21c23e5 { text-align: center; }
.elementor-element-5f699e1 p, .elementor-element-3701674 p, .elementor-element-0024955 p, .elementor-element-21c23e5 p { margin-bottom: 18px; color: #5f5f5f; }
/* secțiunea titlului avea 36px jos: caruselul începe chiar sub descriere */
.elementor-inner-section:has(.elementor-element-5f699e1, .elementor-element-3701674, .elementor-element-0024955, .elementor-element-21c23e5) { padding-bottom: 4px !important; }
.exa-stage { position: relative; }

.exa-track { display: flex; gap: 16px; margin: 0 !important; padding: 0 0 6px !important; list-style: none !important; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.exa-track::-webkit-scrollbar { display: none; }
.exa-track:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
.exa-track.auto { scroll-snap-type: none; scroll-behavior: auto; } /* în timpul mișcării automate: fără „snap”, fără animație pe fiecare pas */

.exa-card { flex: 0 0 calc((var(--rw, 100%) - 4 * 16px) / 4.4); min-width: 0; margin: 0 !important; padding: 0 !important; scroll-snap-align: start; display: flex; flex-direction: column; background: transparent; border: 0; }
.exa-card::before { content: none !important; }
.exa-media { position: relative; display: block; aspect-ratio: 1; overflow: hidden; background: var(--g); }
.exa-img { display: block; width: 100%; height: 100%; }
.exa-img img { display: block; width: 100% !important; height: 100% !important; max-width: none !important; padding: 9%; object-fit: contain; border-radius: 0 !important; mix-blend-mode: multiply; transition: transform .6s cubic-bezier(.2, .7, .2, 1); } /* fundalul alb al pozei devine gri, ca restul */
.exa-tag { position: absolute; left: 0; bottom: 10px; padding: 3px 7px; background: #111; color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .04em; line-height: 1.3; text-transform: uppercase; }
.exa-rail .exa-qi { position: absolute; top: 10px; right: 10px; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0 !important; border-radius: 99px !important; background: transparent !important; color: var(--ink) !important; cursor: pointer; transition: background-color .15s, color .15s, transform .15s; }
.exa-rail .exa-qi:hover, .exa-rail .exa-qi:focus-visible { background: #fff !important; }
.exa-rail .exa-qi .i-in { display: none; }
.exa-rail .exa-qi.in { background: var(--o) !important; color: #fff !important; }
.exa-rail .exa-qi.in .i-add { display: none; }
.exa-rail .exa-qi.in .i-in { display: block; }
.exa-rail .exa-qi[aria-busy="true"] { opacity: .5; cursor: progress; }
.exa-rail .exa-qi.just { animation: exa-added .45s ease; }

.exa-body { display: flex; flex-direction: column; flex: 1; padding: 14px 0 0; }
.exa-body h3 { margin: 0 0 3px !important; padding: 0 !important; font-size: 15px !important; font-weight: 700 !important; line-height: 1.3 !important; letter-spacing: .01em !important; text-transform: uppercase; overflow-wrap: anywhere; }
.exa-body h3 a { color: var(--ink) !important; text-decoration: none !important; }
.exa-body h3 a:hover { text-decoration: underline !important; text-underline-offset: 3px; }
.exa-s { margin: 0 !important; font-size: 15px; line-height: 1.4; color: var(--ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.exa-spec { margin: 8px 0 0 !important; font-size: 13px; line-height: 1.4; color: var(--muted); }
.exa-info { margin: auto 0 0 !important; padding: 12px 0 0 !important; list-style: none !important; display: flex; flex-direction: column; gap: 6px; }
.exa-info li { position: relative; margin: 0 !important; padding: 0 0 0 16px !important; font-size: 13.5px; line-height: 1.35; list-style: none !important; }
.exa-info li::before { content: "" !important; position: absolute; left: 0; top: .42em; width: 8px; height: 8px; border-radius: 50%; background: var(--ok); }
.exa-info li.exa-i-q::before { background: var(--o); }
.exa-info li.exa-i-q:has(.in)::before { background: var(--ok); }
.exa-rail .exa-f { display: inline; height: auto; min-height: 0; padding: 0; border: 0; border-radius: 0; background: none; font-size: 13.5px; font-weight: 400; white-space: normal; color: var(--ink) !important; text-decoration: none !important; transition: color .15s; }
.exa-rail .exa-f:hover, .exa-rail .exa-f:focus-visible { color: var(--o-h) !important; }
.exa-rail .exa-qt { padding: 0; border: 0 !important; border-radius: 0 !important; background: none !important; color: var(--ink) !important; font-size: 13.5px; font-weight: 400; line-height: 1.35; text-align: left; text-decoration: none; cursor: pointer; transition: color .15s; }
.exa-rail .exa-qt:hover, .exa-rail .exa-qt:focus-visible { color: var(--o-h) !important; }
.exa-rail .exa-qt.in { font-weight: 400; }
.exa-rail .exa-qt, .exa-rail .exa-qi, .exa-rail .exa-q.in { box-shadow: none !important; } /* stilul vechi .exa-q.in punea un contur */
.exa-rail .exa-qt[aria-busy="true"] { opacity: .5; cursor: progress; }

/* Săgeți rotunde peste poze, la jumătatea lor (poziția verticală vine din exa.js: --mid) */
.exa-rail .exa-arrow { position: absolute; z-index: 3; top: var(--mid, 40%); transform: translateY(-50%); display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #111 !important; border-radius: 99px !important; background: #fff !important; color: #111 !important; cursor: pointer; transition: background-color .15s, color .15s; }
.exa-rail .exa-arrow:hover, .exa-rail .exa-arrow:focus-visible { background: #111 !important; color: #fff !important; }
.exa-rail .exa-prev { left: calc(14px - var(--bl, 0px)); }
.exa-rail .exa-next { right: calc(14px - var(--br, 0px)); }

/* Ultimul card: spre catalogul cu filtre */
.exa-more a { display: flex; flex-direction: column; height: 100%; color: var(--ink) !important; text-decoration: none !important; }
.exa-more .exa-media { display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 24px; }
.exa-more b { font-size: 52px; font-weight: 800; line-height: 1; letter-spacing: -1px; color: var(--ink); }
.exa-more .exa-media span { font-size: 17px; font-weight: 700; line-height: 1.3; }
.exa-more em { padding-top: 14px; font-size: 15px; font-style: normal; font-weight: 400; text-decoration: none; transition: color .15s; }
.exa-more a:hover em { color: var(--o-h); }

@media (hover: hover) {
  .exa-card:hover .exa-img img { transform: scale(1.06); }
}
/* sub ~1260px caruselul ajunge aproape la marginea ecranului: săgețile intră peste carduri, altfel ies din pagină (scroll orizontal) */
@media (max-width: 1260px) {
}
@media (max-width: 1024px) {
  .exa-card { flex-basis: calc((var(--rw, 100%) - 2 * 16px) / 2.6); }
}
@media (max-width: 767px) {
  .exa-rail .exa-arrow { display: none; }
  .exa-rail-f { margin-top: 34px; }
  .exa-rail-f .exa-all { min-height: 52px; padding-left: 24px; font-size: 16px; }
  .exa-rail-f .exa-all span { width: 34px; height: 34px; }
  .elementor-element-5f699e1 > .elementor-widget-container, .elementor-element-3701674 > .elementor-widget-container, .elementor-element-0024955 > .elementor-widget-container, .elementor-element-21c23e5 > .elementor-widget-container { margin-bottom: 0 !important; } /* Elementor pune 30px pe mobil */
  .exa-all { min-height: 40px; font-size: 14.5px; }
  .exa-track { gap: 12px; }
  .exa-card { flex-basis: calc(var(--rw, 100%) * .7); }
  .exa-body { padding-top: 12px; }
  .exa-body h3 { font-size: 14px !important; }
  .exa-s { font-size: 14px; }
  .exa-more b { font-size: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  .exa-track { scroll-behavior: auto; }
  .exa-img img { transition: none; transform: none !important; }
}

/* ---------- Fișa tehnică: panou lateral (<dialog> în top layer, ca în catalog) ---------- */
.exa-sheet { --o: #FF781F; --o-h: #FF781F; --o-soft: #fff3ea; --o-line: #fbd5bb; --ink: #141414; --muted: #6b6b6b; --line: #ececec;
  position: fixed; inset: 0 0 0 auto; width: min(620px, 100%); height: 100%; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: #fff; color: #2b2b2b; font-size: 15px; line-height: 1.45; text-align: left; }
.exa-sheet[open] { display: flex; flex-direction: column; animation: exa-slide .22s ease-out; }
.exa-sheet::backdrop { background: rgba(20, 20, 20, .45); }
@keyframes exa-slide { from { transform: translateX(40px); opacity: 0; } }
.exa-sheet *, .exa-sheet *::before { box-sizing: border-box; }
.exa-sh { display: flex; align-items: flex-start; gap: 12px; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.exa-sh > div { flex: 1; min-width: 0; }
.exa-kat { margin-bottom: 6px; font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--o-h); }
.exa-sh h2 { margin: 0 !important; padding: 0 !important; font-size: 21px !important; font-weight: 700 !important; line-height: 1.25 !important; letter-spacing: 0 !important; color: var(--ink) !important; overflow-wrap: anywhere; }
.exa-sheet .exa-x { flex: none; display: grid; place-items: center; width: 40px; height: 40px; min-height: 0; padding: 0; border: 1px solid var(--line) !important; border-radius: 99px !important; background: #fff !important; color: var(--ink) !important; cursor: pointer; box-shadow: none; }
.exa-sheet .exa-x:hover, .exa-sheet .exa-x:focus-visible { border-color: var(--o) !important; color: var(--o-h) !important; }
.exa-sb { flex: 1; overflow: auto; overscroll-behavior: contain; padding: 20px; }
.exa-top { display: grid; grid-template-columns: 180px 1fr; gap: 18px; align-items: start; margin-bottom: 18px; }
.exa-top img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; border: 1px solid #f3f3f3; border-radius: 10px; background: #fff; }
.exa-top p { margin: 0 !important; font-size: 15.5px; line-height: 1.55; color: #2b2b2b; }
/* Aplicațiile: rând de text sobru, fără pastile colorate */
.exa-apl { margin: 0 0 20px; padding: 14px 0 0; border-top: 1px solid var(--line); }
.exa-apl small { display: block; margin-bottom: 5px; font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #8c8c8c; }
.exa-apl p { margin: 0 !important; font-size: 15px; font-weight: 500; line-height: 1.55; color: var(--ink); }
.exa-apl span { white-space: nowrap; } /* o aplicație nu se rupe pe două rânduri; rândul se rupe doar între ele */
.exa-apl span:not(:last-child)::after { content: "·"; margin: 0 3px 0 8px; color: #c4c4c4; }
.exa-specs { width: 100%; margin: 0 !important; border: 0 !important; border-collapse: collapse; font-size: 14.5px; }
.exa-specs th, .exa-specs td { padding: 10px 10px !important; border: 0 !important; border-bottom: 1px solid var(--line) !important; background: none !important; text-align: left; vertical-align: top; }
.exa-specs th { width: 42%; font-weight: 500; color: var(--muted); }
.exa-specs td { color: var(--ink); }
.exa-note { margin: 16px 0 0 !important; padding: 12px; border-radius: 10px; background: var(--o-soft); font-size: 13px; color: var(--muted); }
.exa-sf { display: flex; gap: 10px; padding: 14px 20px; border-top: 1px solid var(--line); }
.exa-sheet .exa-q { flex: 1; height: 46px; min-height: 0; padding: 0 16px; border: 0 !important; border-radius: 99px !important; background: var(--o) !important; color: #fff !important; font-family: inherit; font-size: 15px; font-weight: 700; letter-spacing: .02em; line-height: 1; text-transform: none; cursor: pointer; box-shadow: none; }
.exa-sheet .exa-q:hover, .exa-sheet .exa-q:focus-visible { background: var(--o-h) !important; }
.exa-sheet .exa-q.in { background: var(--o-soft) !important; color: var(--o-h) !important; box-shadow: inset 0 0 0 1px var(--o-line); }
.exa-pp { display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 0 18px; border: 1px solid var(--line); border-radius: 99px; background: #fff; color: var(--ink) !important; font-size: 14.5px; font-weight: 600; text-decoration: none !important; white-space: nowrap; }
.exa-pp:hover { border-color: var(--o); }
@media (max-width: 767px) {
  .exa-sheet { width: 100%; }
  .exa-sh { padding: 14px 16px; }
  .exa-sh h2 { font-size: 19px !important; }
  .exa-sb { padding: 16px; }
  .exa-top { grid-template-columns: 1fr; gap: 14px; }
  .exa-top img { max-width: 220px; margin: 0 auto; }
  .exa-sf { flex-direction: column; gap: 8px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); }
  .exa-sheet .exa-q { flex: none; width: 100%; }
  .exa-pp { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .exa-sheet[open] { animation: none; } }

/* ---------- Peretele de produse din hero (în locul colajului static) ----------
   Coloane/benzi de poze reale din catalog care curg în sensuri opuse; la hover banda se oprește, plăcuța se ridică
   și arată codul; click = pagina produsului. Lista e dublată în HTML, deci translate(-50%) închide bucla exact. */
.elementor-element-74c1e820:has(> .exa-wall), .elementor-element-2fa65915:has(> .exa-wall) { background-image: none !important; }
.elementor-element-74c1e820 > .elementor-container, .elementor-element-2fa65915 > .elementor-container { position: relative; z-index: 2; pointer-events: none; }
.elementor-element-74c1e820 > .elementor-container .elementor-widget, .elementor-element-74c1e820 > .elementor-container .exa,
.elementor-element-2fa65915 > .elementor-container .elementor-widget, .elementor-element-2fa65915 > .elementor-container .exa { pointer-events: auto; }
.exa-wall { position: absolute; z-index: 1; overflow: hidden; pointer-events: none; }
.exa-wall-in { display: flex; pointer-events: auto; }
.exa-wall-lane { flex: none; }
.exa-wall-t { display: flex; will-change: transform; animation: exa-wall-y 70s linear infinite; }
.exa-wall-lane:nth-child(2) .exa-wall-t { animation-duration: 86s; animation-direction: reverse; }
.exa-wall-lane:nth-child(3) .exa-wall-t { animation-duration: 62s; }
.exa-wall-lane:hover .exa-wall-t { animation-play-state: paused; }
@keyframes exa-wall-y { to { transform: translateY(-50%); } }
@keyframes exa-wall-x { to { transform: translateX(-50%); } }
.exa-wt { position: relative; display: block; flex: none; overflow: hidden; border-radius: 18px; background: #e9ebee; text-decoration: none !important; transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s; }
.exa-wt img { display: block; width: 100%; height: 100%; object-fit: cover; mix-blend-mode: multiply; transition: transform .6s cubic-bezier(.2, .8, .2, 1); }
.exa-wt span { position: absolute; left: 10px; bottom: 10px; max-width: calc(100% - 20px); padding: 5px 9px; border-radius: 6px; background: #111; color: #fff; font-size: 12.5px; font-weight: 700; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; opacity: 0; transform: translateY(6px); transition: opacity .25s, transform .25s; }
.exa-wt:hover, .exa-wt:focus-visible { z-index: 2; transform: translateY(-4px) scale(1.03); box-shadow: 0 20px 40px rgba(0, 0, 0, .18); }
.exa-wt:hover img, .exa-wt:focus-visible img { transform: scale(1.07); }
.exa-wt:hover span, .exa-wt:focus-visible span { opacity: 1; transform: none; }
.exa-wt:focus-visible { outline: 3px solid #FF781F; outline-offset: 2px; }

/* desktop: 3 coloane verticale drepte pe jumătatea din dreapta, cu marginile topite în alb */
.exa-wall-d { top: 0; right: 0; bottom: 0; width: 46%;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 32%), linear-gradient(180deg, transparent 0, #000 14%, #000 86%, transparent 100%);
  -webkit-mask-composite: source-in; mask-image: linear-gradient(90deg, transparent 0, #000 32%), linear-gradient(180deg, transparent 0, #000 14%, #000 86%, transparent 100%); mask-composite: intersect; }
.exa-wall-d .exa-wall-in { justify-content: center; gap: 18px; height: 100%; padding-left: 20%; }
.exa-wall-d .exa-wall-lane { width: clamp(150px, 13vw, 210px); }
.exa-wall-d .exa-wall-t { flex-direction: column; }
.exa-wall-d .exa-wt { width: 100%; aspect-ratio: 1; margin-bottom: 18px; }

/* mobil: 3 benzi orizontale sus, sub header, care se topesc în titlu (titlul coboară puțin ca să le facă loc) */
.exa-wall-m { top: 0; left: 0; right: 0; height: 316px;
  -webkit-mask-image: linear-gradient(180deg, #000 0, #000 72%, transparent 100%); mask-image: linear-gradient(180deg, #000 0, #000 72%, transparent 100%); }
.exa-wall-m .exa-wall-in { flex-direction: column; gap: 10px; padding-top: 10px; }
.elementor-element-2fa65915:has(> .exa-wall) > .elementor-container { padding-top: 70px; }
.exa-wall-m .exa-wall-t { width: max-content; animation-name: exa-wall-x; animation-duration: 48s; }
.exa-wall-m .exa-wall-lane:nth-child(2) .exa-wall-t { animation-duration: 56s; }
.exa-wall-m .exa-wall-lane:nth-child(3) .exa-wall-t { animation-duration: 44s; }
.exa-wall-m .exa-wt { width: 92px; height: 92px; margin-right: 10px; border-radius: 14px; }
.exa-wall-m .exa-wt span { font-size: 11px; }

@media (prefers-reduced-motion: reduce) {
  .exa-wall-t { animation: none; }
}

/* ---------- Pagina de produs: antetul caruselului „Din aceeași categorie” ----------
   Titlul Elementor (centrat, cu gol mare până la carusel) e înlocuit de antetul caruselului: categoria în stânga, „Toate cele N” în dreapta. */
.elementor-element-4636014:has(.exa-rail) .elementor-element-1174b51 { display: none !important; }
.exa-rail-h:has(.exa-rail-t) { justify-content: space-between; align-items: flex-end; gap: 10px 20px; flex-wrap: wrap; margin-bottom: 18px; }
.exa-rail-t small { display: block; margin-bottom: 4px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #8a8a8a; }
.exa-rail-t h2 { margin: 0; padding: 0; font-size: 30px; font-weight: 800; line-height: 1.12; letter-spacing: -.6px; color: #111; text-transform: none; }
@media (max-width: 767px) {
  .exa-rail-t h2 { font-size: 23px; letter-spacing: -.3px; }
  .exa-rail-h:has(.exa-rail-t) { margin-bottom: 14px; }
}


/* ---------- Cardurile din carusele, rafinate (cerut 2026-11-03: „optimizează și mai calitativ”) ----------
   Poza pe placă rotunjită (ca restul site-ului), eticheta producătorului ca pastilă discretă în locul blocului negru,
   butonul de listă pe cerc alb (se vedea greu pe gri), marginile caruselului care se estompează în loc să taie cardul. */
.exa-rail .exa-media { border-radius: 16px; }
.exa-rail .exa-tag { left: 10px; bottom: 10px; padding: 4px 9px; border-radius: 99px; background: rgba(255, 255, 255, .92); color: #111; font-size: 10.5px; letter-spacing: .08em; box-shadow: 0 1px 2px rgba(0, 0, 0, .06); }
.exa-rail .exa-qi { width: 38px; height: 38px; background: #fff !important; box-shadow: 0 1px 4px rgba(0, 0, 0, .08); }
.exa-rail .exa-qi:hover, .exa-rail .exa-qi:focus-visible { background: #111 !important; color: #fff !important; }
.exa-rail .exa-body { padding-top: 14px; }
.exa-rail .exa-body h3 { font-size: 15.5px !important; letter-spacing: 0 !important; }
.exa-rail .exa-s { color: #3a3a3a; font-size: 14.5px; }
.exa-rail .exa-spec { margin-top: 6px !important; color: #8a8a8a; }
.exa-rail .exa-info { padding-top: 14px !important; }
/* pozele de produs pe alb, doar contur 1px; eticheta și butonul de pe poză primesc același contur ca să se vadă pe alb */
.exa-rail .exa-media { border: 1px solid #e6e9ee; background: #fff; }
.exa-rail .exa-tag { border: 1px solid #e6e9ee; background: #fff; box-shadow: none; }
.exa-rail .exa-qi { border: 1px solid #e6e9ee !important; }
.exa-rail .exa-qi.in { border-color: var(--o) !important; }
.exa-track { -webkit-mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%); mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%); }
@media (max-width: 767px) {
  .exa-rail .exa-media { border-radius: 14px; }
  .exa-track { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 24px), transparent 100%); mask-image: linear-gradient(to right, #000 calc(100% - 24px), transparent 100%); }
}

/* Secțiunea „30 de ani de experiență” (ultima de pe prima pagină, desktop) era gri #fafafa: albă, ca să se lege fără treaptă de footerul care începe alb */
.elementor-element.elementor-element-6ccb62e { background-color: #fff !important; }

/* ---------- „30 de ani de experiență” (cerut 2026-11-03: „fă mai mișto”) ----------
   Pe alb, poza ca dreptunghi rotunjit (nu cerc) cu eticheta „din 1991”, text la stânga, trei repere, buton plin portocaliu.
   Desktop: secțiunea 6ccb62e (poza 4bc738a, titluri 8812b7c / 4319ee4, text 3acf0ef, buton bd3967f); mobil: 8c7c9eb (675da14, f761801, 13eac0f, 66de690, 47c1426). */
.elementor-element.elementor-element-6ccb62e > .elementor-container,
.elementor-element.elementor-element-8c7c9eb > .elementor-container { align-items: center; } /* pe alb (clientul a cerut fundal alb, fără card colorat) */
.elementor-element.elementor-element-6ccb62e { padding-top: 40px !important; padding-bottom: 40px !important; }
.elementor-element-6ccb62e > .elementor-container > .elementor-column > .elementor-widget-wrap,
.elementor-element-8c7c9eb > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 10px !important; }
.elementor-element.elementor-element-4bc738a, .elementor-element.elementor-element-675da14 { width: 100% !important; max-width: 100% !important; }
.elementor-element.elementor-element-6ccb62e > .elementor-container { min-height: 0 !important; }
.elementor-element-6ccb62e > .elementor-container > .elementor-element-11cc314 > .elementor-widget-wrap { margin: 0 !important; padding: 10px 10px 10px 48px !important; }
.elementor-element-4319ee4 :is(p, h1, h2, h3, span) { font-size: 40px !important; line-height: 1.12 !important; letter-spacing: -.8px; }
.elementor-element-13eac0f :is(p, h1, h2, h3, span) { line-height: 1.12 !important; }
.elementor-element-11cc314 > .elementor-widget-wrap > .elementor-element { margin-bottom: 14px !important; }
.elementor-element-4319ee4 > .elementor-widget-container { margin: 2px 0 0 !important; }
.elementor-element-3acf0ef p { font-size: 16.5px !important; line-height: 1.65 !important; margin-bottom: 10px !important; }
@media (min-width: 768px) {
  .elementor-element.elementor-element-4d506fb { width: 42% !important; }
  .elementor-element.elementor-element-11cc314 { width: 58% !important; }
}
.elementor-element-4bc738a .elementor-widget-container, .elementor-element-675da14 .elementor-widget-container { position: relative; }
.elementor-element.elementor-element-4bc738a img, .elementor-element.elementor-element-675da14 img { display: block; width: 100% !important; max-width: none !important; height: 420px !important; object-fit: cover; border-radius: 22px !important; }
.elementor-element-4bc738a .elementor-widget-container::after, .elementor-element-675da14 .elementor-widget-container::after { content: "din 1991"; position: absolute; left: 18px; bottom: 18px; padding: 9px 16px; border-radius: 99px; background: #fff; color: #122238; font-size: 14px; font-weight: 800; letter-spacing: .02em; }
.elementor-element-8812b7c .elementor-heading-title, .elementor-element-f761801 .elementor-heading-title { font-size: 13px !important; font-weight: 700 !important; letter-spacing: .14em !important; text-transform: uppercase; }
.elementor-element-3acf0ef, .elementor-element-3acf0ef p, .elementor-element-66de690, .elementor-element-66de690 p { text-align: left !important; color: #4b5563 !important; }
.exa-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 6px 0 22px !important; padding: 0 !important; list-style: none !important; }
.exa-facts li { display: flex; flex-direction: column; gap: 2px; margin: 0 !important; padding: 14px 14px 13px !important; border: 1px solid #e6e9ee; border-radius: 16px; background: #fff; list-style: none !important; }
.exa-facts li::before { content: none !important; }
.exa-facts b { font-size: 16px; font-weight: 800; line-height: 1.2; color: #122238; }
.exa-facts span { font-size: 13px; line-height: 1.35; color: #6b7280; }
.elementor-5 .elementor-element.elementor-element-bd3967f .elementor-widget-container .elementor-button,
.elementor-5 .elementor-element.elementor-element-47c1426 .elementor-widget-container .elementor-button { background-color: #ff781f !important; border-color: #ff781f !important; color: #fff !important; fill: #fff !important; }
.elementor-5 .elementor-element.elementor-element-bd3967f .elementor-widget-container .elementor-button:hover,
.elementor-5 .elementor-element.elementor-element-47c1426 .elementor-widget-container .elementor-button:hover { background-color: #FF781F !important; border-color: #FF781F !important; }
.elementor-5 .elementor-element.elementor-element-bd3967f .elementor-button svg, .elementor-5 .elementor-element.elementor-element-47c1426 .elementor-button svg,
.elementor-5 .elementor-element.elementor-element-bd3967f .elementor-button i, .elementor-5 .elementor-element.elementor-element-47c1426 .elementor-button i { fill: #fff !important; color: #fff !important; }
@media (max-width: 767px) {
  .elementor-element.elementor-element-675da14 img { height: 240px !important; border-radius: 16px !important; }
  .exa-facts { grid-template-columns: 1fr; gap: 8px; }
  .exa-facts li { flex-direction: row; align-items: baseline; gap: 8px; padding: 11px 14px !important; border-radius: 12px; }
  .exa-facts b { font-size: 15px; white-space: nowrap; }
  .exa-facts span { font-size: 13px; }
  .elementor-element-f761801 .elementor-heading-title, .elementor-element-13eac0f, .elementor-element-13eac0f :is(p, h2, h3, span) { text-align: left !important; }
  .elementor-element-47c1426 .elementor-button-wrapper { text-align: left !important; }
  .elementor-element-66de690 > .elementor-widget-container, .elementor-element-13eac0f > .elementor-widget-container, .elementor-element-f761801 > .elementor-widget-container, .elementor-element-47c1426 > .elementor-widget-container { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
}


/* ---------- Antetul „Din aceeași categorie” de pe pagina de produs, rafinat (cerut 2026-11-04: „mai calitativă treaba asta”) ----------
   Eticheta în portocaliul site-ului cu o liniuță, titlul mai mare și mai plin, butonul cu contur 1px #e6e9ee și săgeata desenată pe cerc portocaliu. */
.exa-rail-h:has(.exa-rail-t) { align-items: flex-end; margin-bottom: 26px; }
.exa-rail-t small { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; font-size: 12.5px; font-weight: 700; letter-spacing: .16em; line-height: 1; color: #FF781F; }
.exa-rail-t small::before { content: ""; flex: none; width: 22px; height: 2px; border-radius: 2px; background: #FF781F; }
.exa-rail-t h2 { font-size: 34px; letter-spacing: -.7px; -webkit-text-stroke: .45px currentColor; }
.exa-rail-h .exa-all { gap: 16px; min-height: 52px; padding: 0 7px 0 24px; border-color: #e6e9ee; font-size: 16px; font-weight: 700; transition: border-color .2s, box-shadow .2s; }
.exa-rail-h .exa-all span { width: 38px; height: 38px; background: #FF781F; transition: transform .2s, background-color .2s; }
.exa-rail-h .exa-all span svg { display: block; width: 16px; height: 16px; }
.exa-rail-h .exa-all:hover, .exa-rail-h .exa-all:focus-visible { border-color: #FF781F; }
.exa-rail-h .exa-all:hover span, .exa-rail-h .exa-all:focus-visible span { background: #FF781F; transform: translateX(3px); }
.exa-rail-h .exa-all:focus-visible { outline: 2px solid #FF781F; outline-offset: 3px; }
@media (max-width: 767px) {
  .exa-rail-h:has(.exa-rail-t) { gap: 16px; margin-bottom: 20px; }
  .exa-rail-t small { margin-bottom: 8px; font-size: 11.5px; }
  .exa-rail-t h2 { font-size: 26px; letter-spacing: -.4px; }
  .exa-rail-h .exa-all { min-height: 46px; padding: 0 6px 0 20px; gap: 12px; font-size: 15px; }
  .exa-rail-h .exa-all span { width: 34px; height: 34px; }
}


/* ---------- Caruselele pe toată lățimea ecranului (cerut 2026-11-04: „să se ducă până în laterale”) ----------
   Banda de carduri iese din chenarul paginii până la marginile ecranului (--bl / --br = distanța rail → margine, puse din exa.js);
   cardurile păstrează mărimea de dinainte (--rw = lățimea chenarului), deci în față apar mai multe, nu mai mari. */
.exa-rail .exa-track { margin-left: calc(-1 * var(--bl, 0px)) !important; margin-right: calc(-1 * var(--br, 0px)) !important; }

/* Prima pagină: „Vezi toate produsele” de sub carusele — buton portocaliu plin, cerc alb cu săgeată portocalie */
.exa-rail-f .exa-all { gap: 16px; min-height: 60px; padding: 0 8px 0 32px; border: 0; background: #FF781F; color: #fff !important; font-size: 19px; font-weight: 700; letter-spacing: -.1px; box-shadow: none; transition: transform .2s ease; }
.exa-rail-f .exa-all span { width: 44px; height: 44px; background: #fff; color: #FF781F; transition: transform .2s ease; }
.exa-rail-f .exa-all span svg { display: block; width: 18px; height: 18px; }
.exa-rail-f .exa-all:hover, .exa-rail-f .exa-all:focus-visible { transform: translateY(-2px); }
.exa-rail-f .exa-all:hover span, .exa-rail-f .exa-all:focus-visible span { transform: translateX(4px); }
.exa-rail-f .exa-all:active { transform: translateY(0); }
.exa-rail-f .exa-all:focus-visible { outline: 3px solid #253B57; outline-offset: 3px; }
@media (max-width: 767px) { .exa-rail-f .exa-all { min-height: 54px; padding: 0 7px 0 26px; font-size: 17px; } .exa-rail-f .exa-all span { width: 40px; height: 40px; } }
@media (prefers-reduced-motion: reduce) { .exa-rail-f .exa-all, .exa-rail-f .exa-all span { transition: none; } .exa-rail-f .exa-all:hover { transform: none; } }

/* Prima pagină — ritm vertical între titlu/descriere → produse → buton → secțiunea următoare (înainte: produsele lipite de descriere și de buton, goluri inegale între secțiuni)
   3ac7833 / a3f88cf / b54a6ba / 87b4fec = secțiunile cu caruselul; 72f3174 / 0fbde99 / aab1bb9 / 3e3d358 = secțiunile-părinte (titlu + descriere + carusel) */
.exa-rail-f { margin-top: 72px; }
@media (min-width: 1025px) {
  .elementor-5 .elementor-element.elementor-element-3ac7833, .elementor-5 .elementor-element.elementor-element-a3f88cf, .elementor-5 .elementor-element.elementor-element-b54a6ba, .elementor-5 .elementor-element.elementor-element-87b4fec { padding-top: 44px !important; }
  .elementor-5 .elementor-element.elementor-element-72f3174, .elementor-5 .elementor-element.elementor-element-0fbde99, .elementor-5 .elementor-element.elementor-element-aab1bb9, .elementor-5 .elementor-element.elementor-element-3e3d358 { padding-bottom: 64px !important; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-5 .elementor-element.elementor-element-3ac7833, .elementor-5 .elementor-element.elementor-element-a3f88cf, .elementor-5 .elementor-element.elementor-element-b54a6ba, .elementor-5 .elementor-element.elementor-element-87b4fec { padding-top: 30px !important; }
}
@media (max-width: 767px) {
  .exa-rail-f { margin-top: 52px; }
  .elementor-5 .elementor-element.elementor-element-3ac7833, .elementor-5 .elementor-element.elementor-element-a3f88cf, .elementor-5 .elementor-element.elementor-element-b54a6ba, .elementor-5 .elementor-element.elementor-element-87b4fec { padding-top: 22px !important; }
  .elementor-5 .elementor-element.elementor-element-72f3174, .elementor-5 .elementor-element.elementor-element-0fbde99, .elementor-5 .elementor-element.elementor-element-aab1bb9, .elementor-5 .elementor-element.elementor-element-3e3d358 { padding-bottom: 40px !important; }
}

/* „30 de ani de experiență”: cele 3 repere mai aerisite — padding mai mare, spațiu clar sus/jos, se strâng pe 2-3 coloane după lățime */
.exa-facts { width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 30px 0 38px !important; }
.exa-facts li { gap: 4px; padding: 17px 14px 16px !important; border-radius: 18px; }
.exa-facts b { font-size: 16px; }
.exa-facts span { font-size: 13px; }
@media (max-width: 767px) {
  .exa-facts { grid-template-columns: 1fr; gap: 10px; margin: 24px 0 30px !important; }
  .exa-facts li { gap: 8px; padding: 14px 18px !important; border-radius: 14px; }
}

/* Carduri de produs (prima pagină și „Din aceeași categorie” de pe pagina de produs): logo mic al producătorului în colț (în loc de eticheta text), casete cu 20% mai joase,
   iconița de ofertă pe jumătate transparentă, fără rândurile „Fișă tehnică / Livrare națională”. */
.exa-bl { display: none; }
.exa-rail .exa-tag { display: none; }
.exa-rail .exa-bl { display: block; position: absolute; left: 16px; bottom: 14px; z-index: 1; width: auto; height: auto; max-width: 84px; max-height: 24px; filter: grayscale(1); opacity: .7; mix-blend-mode: multiply; pointer-events: none; }
.exa-rail .exa-media { aspect-ratio: 5 / 4; }
.exa-rail .exa-img img { padding: 3% 4%; }
.exa-rail .exa-info { display: none; }
.exa-rail .exa-qi { opacity: .5; transition: opacity .15s ease, background-color .15s ease, color .15s ease; }
.exa-rail .exa-qi:hover, .exa-rail .exa-qi:focus-visible, .exa-rail .exa-qi.in { opacity: 1; }

/* Carduri: descrierea și specificațiile de sub titlu — font mai mic și 35% transparență (titlul rămâne plin) */
.exa-rail .exa-s { font-size: 13px; opacity: .65; }
.exa-rail .exa-spec { font-size: 11.5px; opacity: .65; }
