/* =========================
   HEADER
========================= */
.arv-header{
    width:100%;
    background:#fff;
    border-bottom:1px solid #ddd;
    padding:12px 0;
    position:sticky;
    top:0;
    z-index:999;
}
.arv-header-inner{
    max-width:1100px;
    margin:auto;
    padding:0 15px;
    display:flex;
    align-items:center;
    position:relative;
    height:56px;
}
.arv-logo-header{height:42px}
.arv-center{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    font-size:20px;
    font-weight:600;
}

/* =========================
   CATALOGUE / CARTES
========================= */
.arv-cat-grid{
    max-width:1100px;
    margin:40px auto;
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:25px;
}

.arv-cat-item{
    background:#fff;
    padding:30px;
    text-align:center;
    border-radius:12px;
    box-shadow:0 6px 15px rgba(0,0,0,.15);
    text-decoration:none;
    color:#000;
    font-weight:600;
    transition:transform .25s ease, box-shadow .25s ease;
}

.arv-cat-item:hover{
    transform: translateY(-6px);
    box-shadow:0 14px 28px rgba(0,0,0,.25);
}

.arv-cat-thumb{
    width:100%;
    height:160px;
    object-fit:contain;
    margin-bottom:10px;
}

/* =========================
   PAGE DÉTAIL
========================= */
#arv-detail{
    max-width:1100px;
    margin:40px auto;
    padding:20px;
}

.arv-detail-layout{
    display:grid;
    grid-template-columns:120px 1fr;
    gap:20px;
}

/* vignettes */
.arv-thumbs img{
    width:100%;
    margin-bottom:10px;
    cursor:pointer;
    border-radius:8px;
    border:2px solid transparent;
}
.arv-thumbs img.is-active{
    border-color:#0E6121;
}

/* image principale — SIMPLE */
.arv-preview{
    max-width:760px;
    margin:0 auto;
}
#arv-main-img{
    width:100%;
    max-width:760px;
    max-height:520px;
    height:auto;
    object-fit:contain;

    background:none;
    border:none;
    border-radius:0;
    padding:0;
    box-shadow:none;

    display:block;
    margin:0 auto;
    cursor:pointer;
}

.arv-actions{
    margin-top:10px;
    display:flex;
    gap:15px;
}

/* =========================
   BARRE HAUTE
========================= */
.arv-cat-top{
    max-width:1100px;
    margin:30px auto 20px;
    display:flex;
    gap:15px;
}
.arv-cat-top input,
.arv-cat-top select{
    padding:12px;
    border-radius:8px;
    border:1px solid #ccc;
    flex:1;
}

/* =========================
   FILTRES — MÊMES CARTES QUE PRODUITS
========================= */
.arv-switch{
    display:flex;
    align-items:center;
    gap:8px;
    white-space:nowrap;
    user-select:none;
}

.arv-filter-grid{
    max-width:1100px;
    margin:25px auto 10px;
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:25px;
}

/* on réutilise EXACTEMENT le style des cartes */
.arv-filter-grid .arv-cat-item{
    padding:30px;
}

.arv-filter-grid .arv-cat-thumb{
    height:140px;
}

/* =========================
   IMAGES APRÈS CLIC FILTRE
   (CÔTE À CÔTE NORMAL)
========================= */
#arv-media-grid.arv-media-wrap{
    max-width:1145px;
    margin:20px auto;
    padding:0 10px;

    display:flex;
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:12px;
}

.arv-media-item{
    width:220px;          /* taille "normale" */
    max-width:220px;
    flex:0 0 auto;
}

.arv-media-item img{
    width:100%;
    height:auto;          /* garde les proportions */
    max-height:220px;     /* évite que ça devienne gigantesque */
    object-fit:contain;   /* jamais coupé */
    display:block;
}


/* =========================
   BOUTON RETOUR
========================= */
.arv-back-btn{
    margin-bottom:15px;
    background:#fff;
    border:1px solid #ccc;
    border-radius:10px;
    padding:8px 14px;
    cursor:pointer;
    font-weight:600;
}

/* =========================
   RECHERCHER PAR (aligné comme la barre + espacement)
========================= */

/* ✅ même “cadre” que la barre search/filtre */
.arv-searchby-wrap{
  max-width:1145px;       /* adapte si ta barre a une autre largeur */
  margin:12px auto 10px;  /* petit espace en haut + aligné au centre */
  padding:0 10px;         /* même padding latéral que ton catalogue */
  box-sizing:border-box;

  display:flex;
  align-items:center;
  gap:10px;
}

/* texte */
.arv-searchby-label{
  font-weight:700;
  white-space:nowrap;
  margin:0;
}

/* groupe boutons */
.arv-searchby{
  display:flex;
  gap:6px;
}

/* 🔲 NON SÉLECTIONNÉ (plus visible) */
.arv-searchby-btn{
  width:auto;
  min-width:unset;

  padding:7px 10px;
  border-radius:6px;
  font-size:13px;
  font-weight:700;

  cursor:pointer;
  user-select:none;

  background:#fff;
  color:#111;             /* un poil plus doux que #000 */
  border:1px solid #111;

  opacity:.65;            /* ✅ différenciation claire */
  filter:grayscale(1);    /* ✅ accentue le “non actif” sans changer le thème */

  transition:
    transform .15s ease,
    box-shadow .15s ease,
    border-color .15s ease,
    background-color .15s ease,
    color .15s ease,
    opacity .15s ease,
    filter .15s ease;
}

/* hover : juste un peu plus “vivant” */
.arv-searchby-btn:hover{
  transform: translateY(-1px);
  opacity:.85;
  filter:grayscale(.3);
}

/* ✅ SÉLECTIONNÉ */
.arv-searchby-btn.is-active{
  background:#0E6121;
  color:#fff;
  border-color:#0E6121;
  box-shadow:0 4px 12px rgba(0,0,0,.08);

  opacity:1;
  filter:none;
}

/* ✅ le checkbox "Trier par code postal" à DROITE sur la même ligne */
.arv-sort-postcode-wrap{
  margin-left:auto;      /* pousse le bloc à droite */
}

/* =========================
   GROUPES PAR CODE POSTAL
   (Titre sur 1 ligne + grille normale dessous)
========================= */
.arv-postcode-title{
  width:100%;
  margin:18px 0 8px;
  font-weight:800;
  font-size:14px;  /* petit titre */
  color:#111;
}

/* ✅ La grille sous chaque titre = EXACTEMENT comme ton catalogue normal */
.arv-postcode-grid{
  width:100%;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:25px;
  margin-bottom:10px;
}

/* =========================
   FIX REGROUPEMENT CODE POSTAL
========================= */

/* le titre doit forcer une ligne complète */
.arv-postcode-title{
  grid-column: 1 / -1;
}

/* la grille sous le titre aussi */
.arv-postcode-grid{
  grid-column: 1 / -1;
}

/* =========================
   DATE PHOTO (détail)
========================= */
.arv-photo-date{
  margin-top:6px;
  font-style:italic;
  color:#777;
  font-size:13px;
}
