:root{color-scheme:light}
  *{box-sizing:border-box}
  body{margin:0;background:#faf7f3;color:#26241f;font-family:'Libre Franklin',sans-serif;-webkit-font-smoothing:antialiased}
  html{-webkit-text-size-adjust:100%}
  h1,h2,h3,p{margin:0}
  img,input{max-width:100%}
  a{color:inherit;text-decoration:none;transition:opacity .45s cubic-bezier(.4,0,.2,1),background-color .45s cubic-bezier(.4,0,.2,1),color .45s cubic-bezier(.4,0,.2,1),border-color .45s cubic-bezier(.4,0,.2,1)}
  a:hover{opacity:.62}
  img{transition:opacity .7s cubic-bezier(.4,0,.2,1)}
  input{transition:border-color .45s cubic-bezier(.4,0,.2,1)}
  header>*{min-width:0}
  [data-m]{display:none !important}
  @media (max-width:1080px){
    [data-m]{display:flex !important}
    [data-d]{display:none !important}
    header{display:flex !important;justify-content:space-between !important;align-items:center !important;gap:10px !important}
    header>a[data-m]:first-of-type{order:1}
    header>a:not([data-m]){order:2}
    header>a[data-m]:last-of-type{order:3}
    [data-stack]{grid-template-columns:1fr !important}
    [data-stack2]{grid-template-columns:repeat(2,1fr) !important}
    [data-produse]{grid-template-columns:repeat(2,1fr) !important}
    [data-cols3]{columns:2 !important}
    [data-hero]{position:static !important;inset:auto !important;width:auto !important;background:#faf7f3 !important}
    [data-row-wrap]{flex-wrap:wrap !important}
  }
  @media (max-width:781px){
    [data-cols3]{columns:1 !important}
    [data-produse]{grid-template-columns:1fr !important}
    [data-chips]{grid-template-columns:repeat(2,1fr) !important}
    /* blocul promo cere doua coloane; pe o singura coloana asta nastea
       o a doua coloana implicita si strica toata grila */
    .adora-promo{grid-column:auto !important}
    /* pastilele de categorie, mai mici decat pe desktop dar inca lizibile;
       telefoanele Android sunt mai late decat iPhone, deci 10px era prea mic */
    .ah2,.adora-chip{min-height:32px !important;padding:0 13px !important;font-size:11.5px !important;letter-spacing:.1em !important}

    /* GALERIA ROCHIEI PE TELEFON: carusel cu degetul.
       Pozele una sub alta impingeau titlul si descrierea mult sub ecran.
       Acum stau pe orizontala, la jumatate de ecran inaltime, iar textul
       ramane vizibil imediat sub ele. */
    [data-galerie]{
      columns:1 !important;
      display:flex !important;
      overflow-x:auto;
      overflow-y:hidden;
      scroll-snap-type:x mandatory;
      -webkit-overflow-scrolling:touch;
      scrollbar-width:none;
      gap:8px;
      margin:0 calc(-1 * clamp(20px,6vw,88px));
      padding:0 clamp(20px,6vw,88px);
      /* rama are inaltime fixa, asa toate cadrele ies la fel:
         un video vertical de 1080 nu mai face poza de langa sa para scurta */
      height:52vh;
      align-items:stretch;
    }
    [data-galerie]::-webkit-scrollbar{display:none}
    [data-galerie] > *{
      flex:0 0 88% !important;
      scroll-snap-align:center;
      margin-bottom:0 !important;
      column-span:none !important;
      height:100% !important;
      background:rgb(240,237,232);
    }
    [data-galerie] img,[data-galerie] video{
      width:100% !important;
      height:100% !important;
      object-fit:contain !important;
      background:rgb(240,237,232);
    }
    /* numaratorul de poze, pus de JS */
    .adora-nr-poze{
      margin-top:10px;font:400 11px "Libre Franklin",sans-serif;
      letter-spacing:.14em;color:rgb(125,116,105);text-align:center;
    }
  }
  .adora-buton-lista{cursor:pointer;transition:background .25s cubic-bezier(.4,0,.2,1),color .25s,transform .08s,opacity .25s}
  .adora-buton-lista:hover{background:#4a453d !important}
  .adora-buton-lista:active{transform:translateY(1px);background:#26241f !important}
  .adora-buton-lista:focus-visible{outline:2px solid #26241f;outline-offset:3px}
  .adora-buton-lista[disabled]{opacity:.55;cursor:default;transform:none}

  /* Pagina rochiei: pozele in stanga, textul in dreapta.
     Regula generala [data-stack] stiveste tot sub 1080px, dar aici incape
     confortabil pe doua coloane si pe ferestre mai inguste, asa ca o ridicam
     inapoi pana la 900px. Sub 900 se stiveste, ca peste tot. */
  @media (min-width:900px){
    [data-produs-grid]{grid-template-columns:1.35fr 1fr !important}
  }

  /* Pe ecran mare galeria e pe coloane. Un video vertical lung ar impinge
     coloana mult sub cealalta, asa ca ii punem o limita de inaltime. */
  [data-galerie] .adora-video video{max-height:78vh;object-fit:contain;background:rgb(240,237,232)}

  .ah1:hover{border-bottom-color:#26241f !important}
  .ah2:hover{border-color:#26241f !important}
  .ah3:hover{background:#26241f !important}
  .ah4:hover{transform:scale(1.9) !important}
  .ah5:hover{transform:scale(2.3) !important}
  /* a doua poză apare când cursorul e oriunde pe card, nu doar pe imagine */
  .adora-card:hover .ah6{opacity:1 !important}
  .ah6:hover{opacity:1 !important}
  /* pe telefon nu există hover; efectul ar rămâne blocat după atingere */
  @media (hover:none){.ah6{display:none !important}}
  .ah7:hover{transform:scale(1.06) !important}
  .ah8:hover{background:#26241f;color:#faf7f3 !important}
  .ah9:hover{color:#26241f !important}
  .ah10:hover{transform:scale(1.5) !important}
  .adora-mega{opacity:0;visibility:hidden;pointer-events:none;max-height:0;overflow:hidden;transition:opacity .28s cubic-bezier(.4,0,.2,1),visibility .28s}
  .adora-mega.deschis{opacity:1;visibility:visible;pointer-events:auto;max-height:none;overflow:visible}
  @media (max-width:1080px){.adora-mega{display:none !important}}
  .adora-drawer{display:none !important}
  .adora-drawer.deschis{display:flex !important}
  body.adora-blocat{overflow:hidden}
  #adora-lupa{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;background:rgba(38,36,31,.92);padding:clamp(12px,3vw,40px);cursor:zoom-out}
  #adora-lupa.deschis{display:flex}
  #adora-lupa img{max-width:100%;max-height:100%;object-fit:contain;display:block}
  #adora-lupa img{cursor:default}
  .adora-lupa-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:0;
    background:rgba(250,247,243,.14);color:#faf7f3;font-size:30px;line-height:1;cursor:pointer;
    display:flex;align-items:center;justify-content:center;transition:background .2s;padding:0}
  .adora-lupa-nav:hover{background:rgba(250,247,243,.28)}
  .adora-lupa-prev{left:clamp(6px,2vw,26px)}
  .adora-lupa-next{right:clamp(6px,2vw,26px)}
  .adora-lupa-x{position:absolute;top:clamp(8px,2vw,20px);right:clamp(8px,2vw,20px);width:44px;height:44px;
    border:0;background:transparent;color:#faf7f3;font-size:30px;line-height:1;cursor:pointer;padding:0}
  .adora-lupa-nr{position:absolute;bottom:clamp(10px,2vw,22px);left:50%;transform:translateX(-50%);
    color:rgba(250,247,243,.72);font:400 12px "Libre Franklin",sans-serif;letter-spacing:.14em}
  #adora-lupa.singura .adora-lupa-nav,#adora-lupa.singura .adora-lupa-nr{display:none}
  @media(max-width:640px){.adora-lupa-nav{width:44px;height:44px;font-size:26px;background:rgba(250,247,243,.10)}}

  /* butonul de sunet peste videoclipurile din galerie */
  .adora-video{position:relative}
  .adora-sunet{position:absolute;left:12px;bottom:56px;z-index:2;border:0;cursor:pointer;
    background:rgba(38,36,31,.72);color:#faf7f3;font:400 11px "Libre Franklin",sans-serif;
    letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;border-radius:2px;transition:background .2s}
  .adora-sunet:hover{background:rgba(38,36,31,.9)}
