/* ===== ADG Home ===== */
.adg-home { --adg-nero:#111; --adg-testo:#333; --adg-grigio:#6b6b6b; --adg-fondo:#f5f5f4; --adg-bordo:#e2e2e0; color:var(--adg-testo); }
.adg-home img { display:block; margin-left:auto; margin-right:auto; max-width:100%; height:auto; }
.adg-home h1, .adg-home h2, .adg-home h3 { color:var(--adg-nero); }
.adg-sez { padding:4em 0; }
.adg-sez--grigia { background:var(--adg-fondo); box-shadow:0 0 0 100vmax var(--adg-fondo); clip-path:inset(0 -100vmax); }
.adg-sez-testa { text-align:center; max-width:720px; margin:0 auto 2.5em; }
.adg-sez-testa h2 { font-size:2em; margin:0 0 .4em; letter-spacing:-.01em; }
.adg-sez-testa p { margin:0; font-size:1.08em; color:var(--adg-grigio); }
.adg-occhiello { display:block; text-transform:uppercase; letter-spacing:.14em; font-size:.78em; font-weight:700; color:var(--adg-grigio); margin-bottom:.8em; }

/* Apertura */
.adg-hero { display:grid; grid-template-columns:1.05fr 1fr; gap:3em; align-items:center; padding:2.5em 0 4em; }
.adg-hero h1 { font-size:2.7em; line-height:1.12; margin:0 0 .45em; letter-spacing:-.02em; }
.adg-hero p { font-size:1.15em; line-height:1.6; margin:0 0 1.6em; }
.adg-hero-foto { display:grid; grid-template-columns:1fr 1fr; gap:.8em; }
.adg-hero-foto img { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:8px; box-shadow:0 2px 10px rgba(0,0,0,.12); }
.adg-hero-foto img:nth-child(1) { margin-top:2.2em; }
.adg-hero-foto img:nth-child(4) { margin-top:-2.2em; }
.adg-bottoni { display:flex; flex-wrap:wrap; gap:.8em; }
.adg-btn { display:inline-block; padding:.85em 1.6em; border-radius:999px; font-weight:600; text-decoration:none !important; border:2px solid var(--adg-nero); transition:background .2s, color .2s; }
.adg-btn--pieno { background:var(--adg-nero); color:#fff !important; }
.adg-btn--pieno:hover, .adg-btn--pieno:focus-visible { background:#333; border-color:#333; }
.adg-btn--vuoto { color:var(--adg-nero) !important; }
.adg-btn--vuoto:hover, .adg-btn--vuoto:focus-visible { background:var(--adg-nero); color:#fff !important; }

/* Corsi */
.adg-corsi { display:grid; grid-template-columns:repeat(3, 1fr); gap:1.5em; }
.adg-corso { display:flex; flex-direction:column; background:#fff; border-radius:8px; overflow:hidden; box-shadow:0 1px 4px rgba(0,0,0,.1); color:var(--adg-testo) !important; text-decoration:none !important; transition:box-shadow .3s, transform .3s; }
.adg-corso img { width:100%; aspect-ratio:3/2; object-fit:cover; }
.adg-corso-testo { padding:1.1em 1.2em 1.3em; display:flex; flex-direction:column; flex:1; }
.adg-corso h3 { font-size:1.12em; margin:0 0 .45em; line-height:1.3; }
.adg-corso p { margin:0 0 1em; font-size:.95em; line-height:1.55; flex:1; }
.adg-corso-link { font-weight:600; font-size:.92em; color:var(--adg-nero); }
.adg-corso:hover, .adg-corso:focus-visible { box-shadow:0 6px 20px rgba(0,0,0,.14); transform:translateY(-2px); }

/* Perché noi */
.adg-perche { display:grid; grid-template-columns:repeat(4, 1fr); gap:2em; text-align:center; }
.adg-perche-n { display:block; font-size:2.4em; font-weight:700; color:var(--adg-nero); line-height:1; margin-bottom:.35em; }
.adg-perche h3 { font-size:1.05em; margin:0 0 .4em; }
.adg-perche p { margin:0; font-size:.95em; line-height:1.55; }

/* Testimonianze */
.adg-voci { display:grid; grid-template-columns:repeat(3, 1fr); gap:1.5em; }
.adg-voce { margin:0; background:#fff; border-radius:8px; padding:1.6em 1.5em 1.3em; box-shadow:0 1px 4px rgba(0,0,0,.08); position:relative; }
.adg-voce::before { content:"\201C"; position:absolute; top:.1em; left:.45em; font-size:3.6em; line-height:1; color:#d6d6d4; font-family:Georgia, serif; }
.adg-voce p { margin:0 0 1em; font-style:italic; line-height:1.6; position:relative; }
.adg-voce cite { font-style:normal; font-weight:700; color:var(--adg-nero); font-size:.92em; }
.adg-centro { text-align:center; margin:2em 0 0; }

/* Link utili */
.adg-utili { display:grid; grid-template-columns:repeat(3, 1fr); gap:1.5em; }
.adg-utile { display:block; padding:1.5em; border:1px solid var(--adg-bordo); border-radius:8px; text-decoration:none !important; color:var(--adg-testo) !important; transition:border-color .2s, box-shadow .2s; }
.adg-utile h3 { margin:0 0 .3em; font-size:1.1em; }
.adg-utile p { margin:0; font-size:.95em; }
.adg-utile:hover, .adg-utile:focus-visible { border-color:var(--adg-nero); box-shadow:0 4px 14px rgba(0,0,0,.08); }

/* Contatti */
.adg-contatti { display:grid; grid-template-columns:1fr 1.4fr; gap:2.5em; align-items:stretch; }
.adg-contatti h3 { margin:0 0 .3em; font-size:1em; text-transform:uppercase; letter-spacing:.08em; color:var(--adg-grigio); }
.adg-contatti p { margin:0 0 1.3em; line-height:1.6; }
.adg-mappa { border-radius:8px; overflow:hidden; min-height:340px; box-shadow:0 1px 4px rgba(0,0,0,.1); }
.adg-mappa iframe { width:100%; height:100%; min-height:340px; border:0; display:block; }

/* Workshop in home: sempre 4 colonne (12 = 3 righe) */
.adg-home .adg-ws-grid { grid-template-columns:repeat(4, 1fr); }

/* Solo due link utili (lingue senza negozio): due colonne centrate */
.adg-utili:has(> .adg-utile:nth-child(2):last-child) { grid-template-columns:repeat(2, 1fr); max-width:820px; margin-left:auto; margin-right:auto; }

/* Telefono e tablet */
@media (max-width: 921px) {
  .adg-hero { grid-template-columns:1fr; gap:2em; }
  .adg-hero h1 { font-size:2.1em; }
  .adg-corsi, .adg-voci, .adg-utili { grid-template-columns:repeat(2, 1fr); }
  .adg-perche { grid-template-columns:repeat(2, 1fr); }
  .adg-contatti { grid-template-columns:1fr; }
  .adg-home .adg-ws-grid { grid-template-columns:repeat(3, 1fr); }
}
@media (max-width: 600px) {
  .adg-sez { padding:2.8em 0; }
  .adg-sez-testa h2 { font-size:1.6em; }
  .adg-corsi, .adg-voci, .adg-utili, .adg-perche, .adg-utili:has(> .adg-utile:nth-child(2):last-child) { grid-template-columns:1fr; }
  .adg-home .adg-ws-grid { grid-template-columns:repeat(2, 1fr); }
  .adg-corso { flex-direction:row; }
  .adg-corso img { width:110px; min-width:110px; aspect-ratio:auto; height:auto; object-fit:cover; margin:0; }
  .adg-corso-testo { padding:.9em 1em; }
  .adg-corso h3 { font-size:1em; }
  .adg-corso p { font-size:.88em; margin-bottom:.6em; }
  .adg-corsi { gap:1em; }
}
.adg-corso-link small { font-weight:400; color:var(--adg-grigio); }
/* titolo della pagina nascosto anche se Astra lo stampa */
.adg-pagina-home .entry-header { display:none; }
