/* Catalog.css — entièrement scopé, n'impacte pas la navbar */

/* Le scope du catalogue uniquement */
.cat-scope {
  /* Variables locales au catalogue (pas de :root global) */
  --brand:#0e3a22;
  --border:#e1e5e9;
  --panel:#f6f8f7;
  --card:#ffffff;
  --link:#0e3a22;
  --link-hover:#0b2e1a;
  --shadow:0 6px 18px rgba(15,23,42,.08);
  --radius:15px;

  --grad-start:#0e3a22;
  --grad-end:#6fd276;

  /* Typo et fond dans la zone catalogue uniquement */
  font-family: 'Open Sans', Arial, sans-serif;
  background:#fafafa;

  /* ⚠️ AUCUNE couleur de texte ici pour éviter toute propagation */
}

/* Conteneur principal du catalogue */
.cat-scope .cat-container{
  color:#0f172a; /* couleur interne au catalogue seulement */
  width:min(1100px, 92vw);
  margin:20px auto;
  background:var(--card);
  padding:20px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

/* Contrôles (onglets) – pas d'impact navbar */
.cat-scope .cat-controls{
  display:flex;
  gap:10px;
  align-items:center;
  margin-bottom:6px;
}
.cat-scope .cat-btn{
  appearance:none;
  border:2px solid var(--brand);
  background:transparent;
  color:var(--brand);
  padding:10px 20px;
  border-radius:10px;
  font-weight:700;
  cursor:pointer;
  transition:background .2s,color .2s,border-color .2s,transform .06s ease;
}
.cat-scope .cat-btn:hover{ background:var(--brand); color:#fff }
.cat-scope .cat-btn.active{ background:var(--brand); color:#fff; border-color:var(--brand) }

/* Sections */
.cat-scope .cat-section{
  display:none;
  margin-top:14px;
  padding:20px;
  background:var(--panel);
  border-radius:12px;
}
.cat-scope .cat-section.active{ display:block }

/* Titre + trait dégradé */
.cat-scope .cata-title{
  position:relative;
  display:inline-block;
  margin:0 0 8px 0;
  padding-bottom:14px;
}
.cat-scope .cata-title > span{
  font-size:clamp(22px,2.4vw,30px);
  font-weight:900;
  color:#000;  /* noir pour le titre, uniquement ici */
  letter-spacing:.2px;
}
.cat-scope .cata-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  height:8px;
  width:140px;
  background:linear-gradient(90deg, var(--grad-start), var(--grad-end));
  border-radius:999px;
}

/* Liste / cartes */
.cat-scope .catalogue-list{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  justify-items:center;
}
.cat-scope .catalogue-entry{
  width:100%;
  max-width:520px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
  padding:10px;
  text-align:center;
  box-shadow:var(--shadow);
}
.cat-scope .catalogue-image{
  width:100%;
  height:auto;
  border-radius:8px;
  margin-bottom:10px;
}

/* Liens du catalogue (scopés) */
.cat-scope .catalogue-entry a{
  display:block;
  width:92%;
  margin:6px auto 0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  color:var(--link);
  text-decoration:none;
  font-weight:700;
}
.cat-scope .catalogue-entry a:hover{
  color:var(--link-hover);
  text-decoration:underline;
}

/* Responsive */
@media (min-width:769px){
  .cat-scope .cat-container{ width:min(1100px, 70vw) }
  .cat-scope .catalogue-list{ grid-template-columns:repeat(2, 1fr); gap:28px }
  /* .cat-scope .cata-title::after{ width:160px } */
}
@media (max-width:768px){
  .cat-scope .cat-container{ width:95vw; padding:16px }
  .cat-scope .catalogue-entry{ max-width:320px }
}