/* Pagine scritte con l'editor a blocchi. GENERATO insieme a editor.css: tenere allineati. */
.edc-card { background: #fff; border: 1px solid rgba(0,0,0,.30); border-radius: 8px; box-shadow: 0 12px 28px rgba(0,0,0,.16), 0 2px 6px rgba(0,0,0,.10); padding: 26px 30px 34px; min-height: 400px; box-sizing: border-box; overflow: hidden; }
.edc-page-title { color: #1e1811; font-weight: 600; font-size: 1.5rem; letter-spacing: .01em; text-transform: uppercase; margin: 0 0 .9em; }
.edc-blocks { font-family: system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; font-size: 16px; line-height: 1.7; color: #4a4a4a; }
.edc-blocks p { margin: 0 0 1.1em; line-height: 1.7; }
.edc-blocks h2 { color: #1e1811; font-weight: 600; font-size: 1.3rem; letter-spacing: .01em; text-transform: uppercase; margin: 2.2em 0 .7em; padding-top: 1.4em; border-top: 1px solid #d8cfbf; scroll-margin-top: 12px; }
.edc-blocks h3 { color: #1e1811; font-weight: 600; font-size: 1.1rem; margin: 1.6em 0 .5em; }
.edc-blocks h4 { color: #1e1811; font-weight: 600; font-size: 1rem; margin: 1.4em 0 .4em; }
.edc-blocks strong { color: #1e1811; }
.edc-blocks a { color: #7a1f12; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.edc-blocks a:hover { color: #4a3f28; }
.edc-blocks ul, .edc-blocks ol { margin: 0 0 1.1em 1.3em; padding: 0; line-height: 1.7; }
.edc-blocks li { margin-bottom: .35em; }
.edc-blocks img { max-width: 100%; height: auto; }
.edc-blocks .wp-block-image img { border: 1px solid #2c200a; padding: 4px; background: #fff; box-sizing: border-box; border-radius: 2px; }
.edc-blocks .wp-block-image { margin: 1.4em 0; }
.edc-blocks .wp-block-gallery { margin: 1.4em 0; }
.edc-blocks .wp-block-gallery .wp-block-image { margin: 0; }
.edc-blocks figcaption, .edc-blocks .wp-element-caption { font-size: .85rem; color: #6b5f4a; text-align: center; margin-top: .4em; }
.edc-blocks .wp-block-quote { margin: 1.6em 0; padding: .9em 1.2em; border-left: 4px solid #7a5a35; background: #f6f1e7; font-style: italic; color: #3d3320; }
.edc-blocks .wp-block-quote p:last-child { margin-bottom: 0; }
.edc-blocks .wp-block-separator { border: 0; border-top: 1px solid #d8cfbf; margin: 2em 0; }
.edc-blocks .wp-block-button__link { background: linear-gradient(160deg,#8b5a2b,#6b4423); color: #f5f0e8; border-radius: 6px; padding: .55em 1.3em; font-weight: 600; text-decoration: none; }
.edc-blocks .wp-block-table td, .edc-blocks .wp-block-table th { border: 1px solid #d8cfbf; padding: .5em .7em; }
.edc-blocks .edc-box { background: #f6f1e7; border: 1px solid #d8cfbf; border-radius: 6px; padding: 1.1em 1.3em; margin: 1.6em 0; }
.edc-blocks .edc-box > *:last-child { margin-bottom: 0; }
.edc-blocks > h2:first-of-type { }
.edc-toc { margin: 1.6em 0 .4em; padding: .9em 0; border-top: 1px solid #d8cfbf; border-bottom: 1px solid #d8cfbf; }
.edc-toc ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: .35em 1.2em; }
.edc-toc li { margin: 0; padding-left: 12px; background: url(picss/anchormenu.jpg) no-repeat left .45em; font-size: .8rem; line-height: 1.4; }
.edc-blocks .edc-toc a { color: #000; text-decoration: none; font-weight: bold; text-transform: uppercase; }
.edc-blocks .edc-toc a:hover { color: #7a1f12; }
.edc-toc + h2 { border-top: 0; padding-top: 0; margin-top: 1.6em; }
.edc-totop { position: fixed; right: 16px; bottom: 16px; width: 42px; height: 42px; border-radius: 50%; background: #2c200a; color: #e8ddd0 !important; display: flex; align-items: center; justify-content: center; font-size: 20px; text-decoration: none; box-shadow: 0 4px 12px rgba(0,0,0,.3); z-index: 900; opacity: .85; }
.edc-totop:hover { opacity: 1; }
html { scroll-behavior: smooth; }
@media screen and (max-width: 720px) { .edc-card { padding: 18px 16px 26px; border-radius: 0; border-left: 0; border-right: 0; } }
@media print { .edc-totop, .edc-toc { display: none; } }
.edc-blocks .wp-block-gallery.has-nested-images figure.wp-block-image { flex-grow: 0; }
/* Didascalie delle gallerie: sotto la foto, leggibili (non sovrapposte) */
.edc-blocks .wp-block-gallery.has-nested-images figure.wp-block-image { align-self: flex-start; }
.edc-blocks .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { position: static; background: none; color: #4a4a4a; text-align: left; font-size: .8rem; line-height: 1.45; padding: .5em 0 0; max-height: none; overflow: visible; text-shadow: none; }
.edc-blocks .wp-block-gallery.has-nested-images figure.wp-block-image figcaption a { color: #7a1f12; }
.edc-blocks .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img { aspect-ratio: 1 / 1; flex: none; height: auto; }
@media screen and (max-width: 600px) { .edc-blocks .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image, .edc-blocks .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image { width: calc(50% - var(--wp--style--unstable-gallery-gap, 8px) * .5); } }
/* Elenco articoli (pagina Varie) */
.edc-blocks .wp-block-latest-posts.edc-articoli { list-style: none; margin: 1.8em 0 0; padding: 1.4em 0 0; border-top: 1px solid #d8cfbf; display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px 16px; }
.edc-blocks .wp-block-latest-posts.edc-articoli li { margin: 0; width: auto; }
.edc-blocks .wp-block-latest-posts.edc-articoli .wp-block-latest-posts__featured-image img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border: 1px solid #2c200a; padding: 4px; background: #fff; box-sizing: border-box; }
.edc-blocks .wp-block-latest-posts.edc-articoli .wp-block-latest-posts__post-title { display: block; margin-top: .5em; color: #1e1811; text-decoration: none; font-weight: 600; text-transform: uppercase; font-size: .85rem; letter-spacing: .02em; line-height: 1.35; }
.edc-blocks .wp-block-latest-posts.edc-articoli .wp-block-latest-posts__post-title:hover { color: #7a1f12; }
.edc-back { margin-top: 2.4em !important; padding-top: 1em; border-top: 1px solid #d8cfbf; font-size: .9rem; }
@media screen and (max-width: 600px) { .edc-blocks .wp-block-latest-posts.edc-articoli { grid-template-columns: repeat(2, 1fr); } }
/* Elenco di link con logo (pagina Links): blocco "Media e testo" con classe edc-link */
.edc-blocks .wp-block-media-text.edc-link { margin: 0; padding: 12px 0; border-bottom: 1px solid #d8cfbf; min-height: 84px; }
.edc-blocks .wp-block-media-text.edc-link .wp-block-media-text__media img { max-width: 130px; max-height: 90px; width: auto; height: auto; object-fit: contain; }
.edc-blocks .wp-block-media-text.edc-link .wp-block-media-text__content { padding: 0 0 0 16px; }
.edc-blocks .wp-block-media-text.edc-link .wp-block-media-text__content p { margin: 0; }
.edc-blocks .wp-block-media-text.edc-link a { color: #1e1811; text-decoration: none; font-weight: 600; }
.edc-blocks .wp-block-media-text.edc-link a:hover { color: #7a1f12; text-decoration: underline; }
@media screen and (max-width: 600px) { .edc-blocks .wp-block-media-text.edc-link.is-stacked-on-mobile { grid-template-columns: 30% auto !important; } .edc-blocks .wp-block-media-text.edc-link.is-stacked-on-mobile .wp-block-media-text__media { grid-column: 1; grid-row: 1; } .edc-blocks .wp-block-media-text.edc-link.is-stacked-on-mobile .wp-block-media-text__content { grid-column: 2; grid-row: 1; } }
/* Pagine a due colonne: testo a sinistra, foto a destra (su telefono le foto scendono sotto il testo) */
.edc-blocks .wp-block-columns.edc-duecolonne { gap: 28px; margin: 0; align-items: flex-start; }
.edc-blocks .edc-duecolonne > .wp-block-column:last-child { font-size: .85rem; line-height: 1.5; }
.edc-blocks .edc-duecolonne > .wp-block-column:last-child .wp-block-image { margin: 0 0 .5em; }
.edc-blocks .edc-duecolonne > .wp-block-column:last-child p { margin-bottom: 1.4em; }
.edc-blocks .edc-duecolonne > .wp-block-column > h2:first-child { border-top: 0; padding-top: 0; margin-top: 0; }
.edc-toc + .wp-block-columns h2:first-child { border-top: 0; padding-top: 0; margin-top: .6em; }
/* Home page a blocchi */
.edc-home { background: transparent; }
.edc-home > .wp-block-image { margin: 0 0 14px; }
.edc-home > .wp-block-image img { border: 1px solid #2c200a; padding: 0; display: block; width: 100%; }
.edc-home .wp-block-columns.edc-home-box { gap: 0; background: #fff; border: 1px solid #000; margin: 0; }
.edc-home .edc-home-box > .wp-block-column { padding: 0; }
.edc-home .edc-home-box > .wp-block-column + .wp-block-column { border-left: 1px solid #000; }
.edc-home .edc-home-box .wp-block-media-text { align-items: stretch; height: 100%; }
.edc-home .edc-home-box .wp-block-media-text__content { padding: 10px 10px 14px; align-self: start; }
.edc-home .edc-home-box .wp-block-media-text__media { align-self: end; }
.edc-home .edc-home-box .wp-block-media-text__media img { border: 0; padding: 0; display: block; }
.edc-home .edc-home-box h2 { font-size: .95rem; margin: 0 0 1em; padding: 0; border: 0; color: #000; font-weight: 700; }
.edc-home .edc-home-box p { font-size: .9rem; line-height: 1.6; }
.edc-home .edc-home-box a { color: #000; text-decoration: none; font-weight: 700; }
.edc-home .edc-home-box a:hover { color: #7a1f12; }
@media screen and (max-width: 781px) { .edc-home .edc-home-box > .wp-block-column + .wp-block-column { border-left: 0; border-top: 1px solid #000; } }
/* Contatti */
.edc-blocks .wp-block-media-text.edc-contatti { margin-top: .5em; }
.edc-blocks .wp-block-media-text.edc-contatti .wp-block-media-text__media img { border: 0; padding: 0; max-width: 185px; }
.edc-blocks .wp-block-media-text.edc-contatti h2 { border: 0; padding: 0; margin: 0 0 1em; font-size: 1rem; }
.edc-blocks .wp-block-media-text.edc-contatti p { margin: 0 0 .4em; }

/* ── Home: blocco "Se... / Ma vorreste..." (tabella modificabile, classe edc-sema) ── */
.edc-blocks .edc-sema { --sema-scuro: #2c200a; --sema-oro: #caba89; --sema-oro-chiaro: #f2e6c4; --sema-crema: #fbf7ec; --sema-rosso: #8a3b22; --sema-verde: #5b7a2e;
  margin: 0 0 14px; border: 1px solid var(--sema-scuro); background: #fff; overflow: hidden; }
.edc-blocks .edc-sema table { width: 100%; border-collapse: collapse; table-layout: fixed; margin: 0; font-size: .9rem; }
.edc-blocks .edc-sema th, .edc-blocks .edc-sema td { border: 0; padding: 0; text-align: left; vertical-align: middle; }
.edc-blocks .edc-sema thead { border: 0; }
.edc-blocks .edc-sema thead th { padding: 9px 14px; font-size: 1rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--sema-scuro);
  background: var(--sema-oro); }
.edc-blocks .edc-sema thead th + th { background: linear-gradient(90deg, #e2d2a2, var(--sema-oro-chiaro)); border-left: 2px solid #fff; }
.edc-blocks .edc-sema tbody tr { position: relative; border-top: 1px solid #ece3cc; transition: background-color .25s; animation: edc-sema-in .55s ease-out both; }
.edc-blocks .edc-sema tbody tr:first-child { border-top: 0; }
.edc-blocks .edc-sema td { position: relative; padding: 9px 14px 9px 30px; line-height: 1.4; color: #4a3f2a; transition: color .25s, opacity .25s, transform .25s; }
.edc-blocks .edc-sema td::before { content: ""; position: absolute; left: 13px; top: 50%; width: 8px; height: 8px; margin-top: -4px; border-radius: 50%;
  background: var(--sema-oro); transition: transform .25s, background-color .25s; }
.edc-blocks .edc-sema td:first-child::before { background: #89784c; }
.edc-blocks .edc-sema td:first-child::after { content: "→"; position: absolute; right: -9px; top: 50%; z-index: 1; width: 18px; height: 18px; margin-top: -9px;
  border-radius: 50%; background: #fff; color: var(--sema-oro); font-size: 13px; line-height: 18px; text-align: center; font-weight: 700;
  transition: transform .3s, background-color .3s, color .3s; }
.edc-blocks .edc-sema td + td { border-left: 2px solid var(--sema-oro-chiaro); }
/* passaggio del mouse: il problema si attenua, il desiderio si accende */
.edc-blocks .edc-sema tbody tr:hover { background: var(--sema-crema); }
.edc-blocks .edc-sema tbody tr:hover td:first-child { color: #7d725b; }
.edc-blocks .edc-sema tbody tr:hover td:first-child::before { background: var(--sema-rosso); }
.edc-blocks .edc-sema tbody tr:hover td:first-child::after { transform: translateX(3px) scale(1.25); background: var(--sema-scuro); color: #fff; }
.edc-blocks .edc-sema tbody tr:hover td + td { color: #000; transform: translateX(3px); }
.edc-blocks .edc-sema tbody tr:hover td + td::before { background: var(--sema-verde); transform: scale(1.35); }
/* fascia in fondo (didascalia della tabella) */
.edc-blocks .edc-sema figcaption, .edc-blocks .edc-sema .wp-element-caption { margin: 0; padding: 0; text-align: center; background: var(--sema-scuro); color: var(--sema-oro-chiaro); font-size: .85rem;
  font-weight: 700; letter-spacing: .05em; text-transform: uppercase; line-height: 1.35; }
.edc-blocks .edc-sema figcaption a { display: block; padding: 11px 14px; color: inherit; text-decoration: none;
  background: linear-gradient(90deg, transparent 0 40%, rgba(242,221,168,.22) 50%, transparent 60% 100%) no-repeat; background-size: 250% 100%; background-position: 120% 0;
  animation: edc-sema-luce 6s ease-in-out 1.2s infinite; transition: color .2s; }
.edc-blocks .edc-sema figcaption a:hover, .edc-blocks .edc-sema figcaption a:focus-visible { color: #fff; }
.edc-blocks .edc-sema figcaption a::after { content: " ›"; display: inline-block; transition: transform .2s; }
.edc-blocks .edc-sema figcaption a:hover::after { transform: translateX(4px); }
@keyframes edc-sema-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes edc-sema-luce { 0%, 60% { background-position: 120% 0; } 100% { background-position: -20% 0; } }
.edc-blocks .edc-sema tbody tr:nth-child(1) { animation-delay: .05s; } .edc-blocks .edc-sema tbody tr:nth-child(2) { animation-delay: .13s; }
.edc-blocks .edc-sema tbody tr:nth-child(3) { animation-delay: .21s; } .edc-blocks .edc-sema tbody tr:nth-child(4) { animation-delay: .29s; }
.edc-blocks .edc-sema tbody tr:nth-child(5) { animation-delay: .37s; } .edc-blocks .edc-sema tbody tr:nth-child(6) { animation-delay: .45s; }
.edc-blocks .edc-sema tbody tr:nth-child(7) { animation-delay: .53s; } .edc-blocks .edc-sema tbody tr:nth-child(8) { animation-delay: .61s; }
.edc-blocks .edc-sema tbody tr:nth-child(n+9) { animation-delay: .69s; }
/* telefono: ogni riga diventa una scheda "Se..." ↓ "Ma vorreste..." */
@media screen and (max-width: 600px) {
  .edc-blocks .edc-sema { border: 0; background: transparent; overflow: visible; }
  .edc-blocks .edc-sema table, .edc-blocks .edc-sema tbody, .edc-blocks .edc-sema tr, .edc-blocks .edc-sema td { display: block; width: auto; }
  .edc-blocks .edc-sema thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .edc-blocks .edc-sema tbody tr, .edc-blocks .edc-sema tbody tr:first-child { margin: 0 0 12px; border: 1px solid #d9cba3; border-radius: 8px; background: #fff; box-shadow: 0 1px 3px rgba(44,32,8,.08); }
  .edc-blocks .edc-sema td { padding: 6px 14px 12px; font-size: .95rem; }
  .edc-blocks .edc-sema td::before { position: static; display: block; width: auto; height: auto; margin: 0 0 3px; border-radius: 0; background: none !important;
    font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #89784c; transform: none !important; }
  .edc-blocks .edc-sema td:first-child::before { content: "Se..."; }
  .edc-blocks .edc-sema td + td::before { content: "Ma vorreste..."; color: var(--sema-verde); }
  .edc-blocks .edc-sema td:first-child { padding-top: 10px; background: #f7f2e3; border-radius: 8px 8px 0 0; }
  .edc-blocks .edc-sema td:first-child::after { content: "↓"; right: auto; left: 50%; top: auto; bottom: -11px; margin: 0 0 0 -11px; width: 22px; height: 22px; line-height: 20px;
    border: 1px solid #d9cba3; }
  .edc-blocks .edc-sema td + td { border-left: 0; border-top: 1px solid #ece3cc; padding-top: 14px; }
  .edc-blocks .edc-sema tbody tr:hover td + td { transform: none; }
  .edc-blocks .edc-sema tbody tr:hover td:first-child::after { transform: scale(1.15); }
  .edc-blocks .edc-sema figcaption { border-radius: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .edc-blocks .edc-sema tbody tr, .edc-blocks .edc-sema figcaption a { animation: none; }
  .edc-blocks .edc-sema td, .edc-blocks .edc-sema td::before, .edc-blocks .edc-sema td::after { transition: none; }
}
