/* ===== BASE ===== */
*{ box-sizing:border-box; }

body{
  margin:0;
  font-family:Arial, sans-serif;
  background:#f5f5f5;
  color:#222;
}

/* ===== LAYOUT ===== */
.container{
  max-width:1200px;
  margin:0 auto;
  padding:24px 16px;
}

.page{
  background:transparent;
}

.header-section{
  text-align:center;
  padding:18px 10px 6px;
}

.status-msg{
  margin:14px auto 18px;
  font-weight:700;
  letter-spacing:0.6px;
  opacity:0.9;
}

/* ===== BUTTONS ===== */
.button-group{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
}

.green-button{
  display:inline-block;
  padding:12px 18px;
  border-radius:10px;
  background:#2e7d32;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  letter-spacing:0.3px;
  transition:transform .18s ease, opacity .18s ease;
}

.green-button:hover{
  transform:translateY(-2px);
  opacity:0.95;
}

.whatsapp-button{
  display:inline-block;
  padding:12px 18px;
  border-radius:10px;
  background:#25D366;
  color:#fff;
  text-decoration:none;
  font-weight:800;
  letter-spacing:0.3px;
  transition:transform .18s ease, opacity .18s ease;
}

.whatsapp-button:hover{
  transform:translateY(-2px);
  opacity:0.95;
}

/* ===== BOX CONTATTI / FOOTER ===== */
.contact-box,
.info-box,
.contact-box2,
.info-card{
  max-width:900px;
  margin:22px auto 0;
  padding:16px 16px;
  background:#ffffff;
  border:1px solid #ddd;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(0,0,0,0.08);
}

.contact-box a,
.info-card a{
  color:#2e7d32;
  font-weight:700;
  text-decoration:none;
}

.contact-box a:hover,
.info-card a:hover{
  text-decoration:underline;
}

/* ===== NAV (back) ===== */
.back-nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:16px;
}

.back-nav a{
  text-decoration:none;
  color:#2e7d32;
  font-weight:800;
}

/* ===== TESTI VARI ===== */
.sottomenu-text{
  margin-top:6px;
  opacity:0.85;
}

/* =======================================================
   GRIGLIA MARCHI (presa dal tuo inserti.css)
   ======================================================= */

.grid-marchi{
  max-width:1200px;
  margin:40px auto;
  padding:0 16px;

  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:26px;
}

a.marchio-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  padding:20px 16px;

  border:2px solid #9e9e9e;
  border-radius:16px;
  background:#ffffff;

  text-decoration:none;
  color:#222;

  box-shadow:0 8px 20px rgba(0,0,0,0.15);
  transition:all .18s ease;
}

a.marchio-card:hover{
  transform:translateY(-6px);
  box-shadow:0 16px 34px rgba(0,0,0,0.22);
  border-color:#616161;
}

.marchio-img-container{
  height:100px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.marchio-img-container img{
  max-width:150px;
  max-height:80px;
  object-fit:contain;
}

a.marchio-card h3{
  margin:14px 0 0;
  font-size:15px;
  font-weight:600;
  letter-spacing:0.5px;
  text-align:center;
}

/* ===== RESPONSIVE ===== */
@media (max-width:1100px){
  .grid-marchi{ grid-template-columns:repeat(4, 1fr); }
}
@media (max-width:820px){
  .grid-marchi{ grid-template-columns:repeat(3, 1fr); }
}
@media (max-width:560px){
  .grid-marchi{ grid-template-columns:repeat(2, 1fr); }
}
/* =======================================================
   GRIGLIA CATEGORIE (PRODOTTI)
   ======================================================= */

.grid-prodotti{
  max-width:1200px;
  margin:30px auto 10px;
  padding:0 16px;

  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:22px;
}

.categoria-card{
  background:#ffffff;
  color:#222;
  border-radius:16px;
  overflow:hidden;
  text-decoration:none;
  display:block;

  border:2px solid #9e9e9e;
  box-shadow:0 8px 20px rgba(0,0,0,0.15);
  transition:all .18s ease;
}

.categoria-card:hover{
  transform:translateY(-6px);
  box-shadow:0 16px 34px rgba(0,0,0,0.22);
  border-color:#616161;
}

.categoria-card-img-container{
  height:140px;
  display:flex;
  justify-content:center;
  align-items:center;
  background:#f8f9fa;
  padding:10px;
}

.categoria-card img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.categoria-card h3{
  margin:14px 0 16px;
  font-size:15px;
  font-weight:700;
  letter-spacing:0.5px;
  text-transform:uppercase;
  text-align:center;
  color:#2e7d32;
}

/* Responsive griglia prodotti */
@media (max-width:1100px){
  .grid-prodotti{ grid-template-columns:repeat(3, 1fr); }
}
@media (max-width:820px){
  .grid-prodotti{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:520px){
  .grid-prodotti{ grid-template-columns:1fr; }
}

/* =======================================================
   COMPATIBILITÀ (se qualche pagina usa back-home)
   ======================================================= */
.back-home{
  display:inline-block;
  margin-top:20px;
  text-decoration:none;
  color:#2e7d32;
  font-weight:800;
}

/* =======================================================
   OPZIONALE: PUNTE (se vuoi loghi più alti solo lì)
   ======================================================= */
/* .punte-page .marchio-img-container{ height:150px; } */