/* paginile de produs din cele șase categorii — generat de produs_build.py */
.pv-scena.gol{display:flex;flex-direction:column;align-items:center;justify-content:center;
              gap:14px;background:var(--surface-2);border-radius:var(--radius-lg);
              aspect-ratio:1;}
.pv-scena.gol img{width:36%;max-width:150px;height:auto;}
.pv-scena.gol span{font-size:11px;font-weight:700;letter-spacing:.06em;
                   text-transform:uppercase;color:var(--ink-faint);}
.pv-desc{font-size:16px;line-height:1.72;color:var(--ink-soft);}
.inr{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(170px,100%),1fr));
     gap:16px;align-items:start;}
.inr a{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;
       background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);
       overflow:hidden;transition:border-color .16s ease,transform .16s ease;}
.inr a:hover{border-color:var(--purple-light);transform:translateY(-2px);}
.inr .f{display:flex;align-items:center;justify-content:center;background:var(--surface-2);
        aspect-ratio:1;}
.inr .f img{width:100%;height:100%;object-fit:contain;}
.inr .f.gol img{width:44%;height:auto;max-width:86px;}
.inr b{font-size:12.5px;line-height:1.35;padding:0 12px 14px;font-weight:700;}

/* 19 sept.: poza mai mare decât la spălătorie, și se deschide pe tot ecranul */
.pv{grid-template-columns:minmax(0,600px) minmax(0,1fr);gap:48px;}
.pv-scena{display:flex;align-items:center;justify-content:center;}
.pv-scena .pv-big{position:static;inset:auto;height:auto;max-width:calc(100% - 44px);
                  max-height:calc(100% - 44px);padding:0;opacity:1;object-fit:contain;}
.pv-zoom{cursor:zoom-in;text-decoration:none;}
.pv-zoom:focus-visible{outline:3px solid var(--purple);outline-offset:3px;}
.pv-lupa{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:6px;
         background:#fff;color:var(--purple);border:1px solid var(--line);border-radius:999px;
         padding:7px 13px 7px 10px;font-size:12.5px;font-weight:700;
         box-shadow:0 2px 10px rgba(36,29,71,.08);transition:transform .16s ease;}
.pv-lupa svg{width:16px;height:16px;}
.pv-zoom:hover .pv-lupa{transform:translateY(-2px);}
.pv-insigne li svg{width:16px;height:16px;}
.pv-desc + .pv-desc{margin-top:-10px;}
.pv-alte{margin:18px 0 0;font-size:14px;color:var(--ink-soft);line-height:1.6;}
.pv-alte a{color:var(--purple);font-weight:600;}

dialog.zoom{padding:0;border:0;background:transparent;max-width:none;max-height:none;
            width:100vw;height:100vh;margin:0;}
dialog.zoom[open]{display:flex;align-items:center;justify-content:center;}
dialog.zoom::backdrop{background:rgba(24,19,48,.88);}
dialog.zoom img{max-width:min(92vw,1000px);max-height:88vh;height:auto;background:#fff;
                object-fit:contain;
                border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.35);cursor:zoom-out;}
.zoom-x{position:fixed;top:18px;right:18px;width:46px;height:46px;border-radius:50%;border:0;
        background:#fff;color:var(--ink);font-size:28px;line-height:1;cursor:pointer;
        box-shadow:0 4px 14px rgba(0,0,0,.25);}

/* <section> primește în foaia comună spațierea mare a primei pagini — aici n-o vrem */
.ft-bloc{margin:0 0 56px;padding:0;}
.ft-bloc h2{margin:0 0 18px;}
.pv-fol b{color:var(--ink);font-weight:700;}
/* denumiri ca „INJECTIE/EXTRACTIE" sunt un singur cuvânt lung: se rup la bară */
.pv h1{overflow-wrap:anywhere;}
.fapte dd.t{font-size:15.5px;line-height:1.45;}
.ft-date div:last-child:nth-child(odd){grid-column:1/-1;}
.ft-date{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;
         background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);
         overflow:hidden;}
.ft-date div{background:#fff;padding:14px 18px;}
.ft-date div.lung{grid-column:1/-1;}
.ft-date dt{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
            color:var(--ink-faint);margin:0 0 4px;}
.ft-date dd{margin:0;font-size:14.5px;line-height:1.5;color:var(--ink);}
.gr-expl{margin:-6px 0 18px;color:var(--ink-soft);font-size:15px;max-width:70ch;}

@media (max-width:900px){
  .pv{grid-template-columns:minmax(0,1fr);gap:28px;}
}
@media (max-width:520px){
  .ft-date{grid-template-columns:minmax(0,1fr);}
  .pv-lupa{right:10px;bottom:10px;}
  /* pe telefon, 170 px + spațiul dintre ele nu încap de două ori în 350 px, așa că
     ieșea câte un produs înrudit pe rând, cât tot ecranul — șase ecrane de derulat */
  .inr{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .inr b{font-size:12px;padding:0 10px 12px;}
}
