@charset "UTF-8";

  /* Footer "carta intestata" avorio, versione compatta: quattro blocchi della stessa larghezza
     (Sedi e recapiti / Ricevimento / Social / logo), uguale in tutte le pagine.
     Il prefisso :is(#dm,body) serve a vincere il CSS di Duda anche dove manca #dm (note-legali). */
  @font-face{font-family:'Baskervville';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/baskervville/Baskervville-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
  @font-face{font-family:'Baskervville';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/baskervville/Baskervville-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

  :is(#dm,body) #fcontainer{background:none!important;padding:0!important;margin:0!important;}
  /* Ancora #recapiti: i pulsanti CONTATTI delle hero scendono qui; il margine lascia libera la barra/header fissi */
  :is(#dm,body) footer#recapiti{scroll-margin-top:40px;}
  @media (max-width:767px){:is(#dm,body) footer#recapiti{scroll-margin-top:76px;}}
  :is(#dm,body) footer.bf{
    --bf-oro:#b08d57;--bf-oro2:#9c7b46;--bf-scuro:#2b2420;--bf-testo:#3d342e;--bf-spento:#7d6e60;--bf-avorio:#f8f3ea;
    --bf-serif:'Baskervville','Playfair Display',Georgia,serif;--bf-sans:Poppins,'Poppins Fallback',sans-serif;
    display:block;position:relative;overflow:hidden;margin:0;padding:0;
    background:var(--bf-avorio)!important;color:var(--bf-testo)!important;
    border-top:1px solid rgba(176,141,87,.35);
    font-family:var(--bf-sans)!important;font-size:13.5px;font-weight:300;line-height:1.5;text-align:left!important;
    -webkit-text-size-adjust:100%;
  }
  :is(#dm,body) footer.bf *{box-sizing:border-box;}
  :is(#dm,body) footer.bf::before{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(ellipse at 50% 0%,rgba(255,255,255,.85),transparent 60%);}
  :is(#dm,body) footer.bf p{margin:0;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;text-align:left;}
  :is(#dm,body) footer.bf a{color:inherit!important;text-decoration:none!important;font-family:inherit;}
  :is(#dm,body) footer.bf .bf-in{position:relative;max-width:1240px;margin:0 auto;padding:44px 24px 0;}

  /* Quattro blocchi uguali, separati da filetti verticali */
  :is(#dm,body) footer.bf .bf-colonne{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
  :is(#dm,body) footer.bf .bf-col{min-width:0;padding:0 30px;border-left:1px solid rgba(176,141,87,.35);}
  :is(#dm,body) footer.bf .bf-col:first-child{border-left:0;padding-left:0;}
  :is(#dm,body) footer.bf .bf-col:last-child{padding-right:0;}
  :is(#dm,body) footer.bf p.bf-titolo{font-family:var(--bf-serif);font-weight:400;font-size:23px;line-height:1.2;color:var(--bf-scuro);margin:0 0 16px;letter-spacing:.01em;}

  /* Sedi e recapiti */
  :is(#dm,body) footer.bf .bf-sede{display:grid;grid-template-columns:16px 1fr;gap:0 9px;margin:0 0 10px;}
  :is(#dm,body) footer.bf .bf-sede svg{width:15px;height:15px;margin-top:2px;stroke:var(--bf-oro);fill:none;stroke-width:1.3;}
  :is(#dm,body) footer.bf .bf-sede b{display:block;font-weight:400;color:var(--bf-scuro);}
  :is(#dm,body) footer.bf .bf-sede small{display:block;color:var(--bf-spento);font-size:12px;line-height:1.45;}
  :is(#dm,body) footer.bf .bf-recapiti{margin-top:14px;display:grid;gap:7px;}
  :is(#dm,body) footer.bf .bf-riga{display:block;line-height:1.3;}
  :is(#dm,body) footer.bf .bf-riga .et{display:block;font-family:var(--bf-serif);font-style:italic;color:var(--bf-oro2);font-size:14px;line-height:1.2;}
  :is(#dm,body) footer.bf .bf-riga .val{display:inline-block;color:var(--bf-scuro)!important;white-space:nowrap;font-weight:400;font-size:13.5px;transition:color .25s;}
  :is(#dm,body) footer.bf .bf-riga a.val:hover{color:var(--bf-oro2)!important;}
  /* PEC: una sola riga, carattere che si adatta alla larghezza del blocco */
  :is(#dm,body) footer.bf .bf-riga--lunga .val{font-size:min(12px, calc(((min(100vw, 1240px) - 48px) / 4 - 32px) / 26.4));letter-spacing:0;}

  /* Ricevimento */
  :is(#dm,body) footer.bf p.bf-appunt{font-family:var(--bf-serif);font-style:italic;font-size:17px;color:var(--bf-scuro);line-height:1.3;margin:0 0 2px;}
  :is(#dm,body) footer.bf p.bf-appunt-sub{font-size:12.5px;color:var(--bf-spento);margin:0 0 28px;}
  :is(#dm,body) footer.bf .bf-settimana{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;align-items:end;}
  :is(#dm,body) footer.bf .bf-g{text-align:center;position:relative;}
  :is(#dm,body) footer.bf .bf-g .barra{height:40px;border-radius:3px;margin-bottom:6px;position:relative;}
  :is(#dm,body) footer.bf .bf-g.aperto .barra{background:linear-gradient(180deg,#cfb07c,#b08d57);}
  :is(#dm,body) footer.bf .bf-g.aperto .barra::after{content:"";position:absolute;left:0;right:0;top:0;height:40%;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent);border-radius:3px 3px 0 0;}
  :is(#dm,body) footer.bf .bf-g.urgenze .barra{border:1px dashed var(--bf-oro);background:repeating-linear-gradient(135deg,transparent 0 5px,rgba(176,141,87,.25) 5px 6px);}
  :is(#dm,body) footer.bf .bf-g.chiuso .barra{border:1px solid rgba(176,141,87,.4);background:#fff;}
  :is(#dm,body) footer.bf .bf-g .gg{display:block;font-size:10px;letter-spacing:.06em;color:var(--bf-testo);font-weight:400;line-height:1.3;}
  :is(#dm,body) footer.bf .bf-g.oggi .gg{color:var(--bf-oro2);}
  :is(#dm,body) footer.bf .bf-g.oggi::before{content:"oggi";position:absolute;top:-19px;left:50%;transform:translateX(-50%);
    font-family:var(--bf-serif);font-style:italic;font-size:12px;line-height:1.3;color:var(--bf-oro2);}
  :is(#dm,body) footer.bf ul.bf-legenda{margin:14px 0 0;padding:0;list-style:none;font-size:12.5px;line-height:1.45;}
  :is(#dm,body) footer.bf ul.bf-legenda li{display:flex;gap:9px;align-items:flex-start;padding:3px 0;margin:0;list-style:none;}
  :is(#dm,body) footer.bf ul.bf-legenda li::before{content:none;}
  :is(#dm,body) footer.bf ul.bf-legenda i{flex:0 0 11px;height:11px;border-radius:2px;margin-top:3px;}
  :is(#dm,body) footer.bf ul.bf-legenda .l1 i{background:var(--bf-oro);}
  :is(#dm,body) footer.bf ul.bf-legenda .l2 i{border:1px dashed var(--bf-oro);background:repeating-linear-gradient(135deg,transparent 0 3px,rgba(176,141,87,.35) 3px 4px);}
  :is(#dm,body) footer.bf ul.bf-legenda .l3 i{border:1px solid rgba(176,141,87,.4);background:#fff;}
  :is(#dm,body) footer.bf ul.bf-legenda b{font-weight:400;color:var(--bf-scuro);}
  :is(#dm,body) footer.bf .bf-nowrap{white-space:nowrap;}

  /* Social */
  :is(#dm,body) footer.bf .bf-social{display:flex;flex-direction:column;gap:10px;}
  :is(#dm,body) footer.bf a.bf-soc{display:flex;align-items:center;gap:12px;padding:11px 14px;background:#fff;
    border:1px solid rgba(176,141,87,.4);border-radius:6px;transition:background .3s,border-color .3s,transform .3s;}
  :is(#dm,body) footer.bf a.bf-soc svg{width:18px;height:18px;fill:var(--bf-oro2);flex:0 0 18px;}
  :is(#dm,body) footer.bf a.bf-soc span{flex:1;font-size:13.5px;font-weight:400;color:var(--bf-scuro);}
  :is(#dm,body) footer.bf a.bf-soc em{font-style:normal;color:var(--bf-oro);transition:transform .3s;}
  :is(#dm,body) footer.bf a.bf-soc:hover{background:#fdfaf4;border-color:var(--bf-oro);transform:translateX(3px);}
  :is(#dm,body) footer.bf a.bf-soc:hover em{transform:translateX(4px);}

  /* Quarto blocco: logo */
  :is(#dm,body) footer.bf .bf-col--logo{display:flex;align-items:center;justify-content:center;}
  :is(#dm,body) footer.bf .bf-col--logo img{width:230px!important;max-width:100%!important;height:auto!important;display:block;}

  /* Fondo */
  :is(#dm,body) footer.bf .bf-fondo{margin-top:36px;border-top:1px solid rgba(176,141,87,.3);padding:14px 0 16px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
    font-size:12px;color:var(--bf-spento);letter-spacing:.03em;line-height:1.6;}
  :is(#dm,body) footer.bf .bf-fondo a:hover{color:var(--bf-oro2)!important;}
  :is(#dm,body) footer.bf .bf-fondo .sep{margin:0 10px;color:var(--bf-oro);}

  /* Tablet e computer piccoli: due blocchi per riga */
  @media (max-width:1140px){
    :is(#dm,body) footer.bf .bf-colonne{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px;}
    :is(#dm,body) footer.bf .bf-col:nth-child(3){border-left:0;padding-left:0;}
    :is(#dm,body) footer.bf .bf-col:nth-child(2){padding-right:0;}
    :is(#dm,body) footer.bf .bf-col:nth-child(3),
    :is(#dm,body) footer.bf .bf-col:nth-child(4){padding-top:30px;border-top:1px solid rgba(176,141,87,.35);}
    :is(#dm,body) footer.bf .bf-riga--lunga .val{font-size:min(12px, calc(((100vw - 48px) / 2 - 30px) / 26.4));}
  }
  /* Telefono: blocchi uno sotto l'altro, logo in fondo */
  @media (max-width:767px){
    :is(#dm,body) footer.bf .bf-in{padding:32px 20px 0;}
    :is(#dm,body) footer.bf .bf-colonne{grid-template-columns:1fr;row-gap:0;}
    :is(#dm,body) footer.bf .bf-col,
    :is(#dm,body) footer.bf .bf-col:nth-child(n){border-left:0;padding:22px 0 0;margin-top:22px;border-top:1px solid rgba(176,141,87,.35);}
    :is(#dm,body) footer.bf .bf-col:first-child{border-top:0;margin-top:0;padding-top:0;}
    :is(#dm,body) footer.bf p.bf-titolo{font-size:22px;margin-bottom:14px;}
    :is(#dm,body) footer.bf .bf-recapiti{gap:9px;}
    :is(#dm,body) footer.bf .bf-riga .val{font-size:14px;padding:2px 0;}
    :is(#dm,body) footer.bf .bf-riga--lunga .val{font-size:min(12.5px, calc((100vw - 40px) / 26.4));}
    :is(#dm,body) footer.bf .bf-g .barra{height:40px;}
    :is(#dm,body) footer.bf .bf-g .gg{font-size:11px;letter-spacing:.08em;}
    :is(#dm,body) footer.bf a.bf-soc{padding:13px 16px;}
    :is(#dm,body) footer.bf a.bf-soc:hover{transform:none;}
    :is(#dm,body) footer.bf .bf-col--logo img{width:160px!important;}
    /* in fondo spazio per il pulsante WhatsApp flottante, che altrimenti copre i link */
    :is(#dm,body) footer.bf .bf-fondo{flex-direction:column;align-items:center;text-align:center;gap:4px;margin-top:26px;padding-bottom:88px;}
  }
  @media (max-width:389px){
    :is(#dm,body) footer.bf .bf-in{padding-left:16px;padding-right:16px;}
    :is(#dm,body) footer.bf .bf-riga--lunga .val{font-size:calc((100vw - 32px) / 26.4);}
    :is(#dm,body) footer.bf .bf-settimana{gap:4px;}
    :is(#dm,body) footer.bf .bf-g .gg{font-size:10px;letter-spacing:.03em;}
  }

  /* Invito a lasciare una recensione su Google: 5 stelle vuote cliccabili (semplice link, nessun cookie) */
  :is(#dm,body) footer.bf .bf-recensione{margin-top:22px;}
  :is(#dm,body) footer.bf p.bf-rec-testo{font-family:var(--bf-serif);font-style:italic;font-size:16px;line-height:1.3;color:var(--bf-scuro);margin:0 0 8px;}
  :is(#dm,body) footer.bf a.bf-stelle{display:inline-flex;gap:6px;padding:4px 0;text-decoration:none!important;}
  :is(#dm,body) footer.bf a.bf-stelle svg{width:22px;height:22px;fill:transparent;stroke:var(--bf-oro);stroke-width:1.3;stroke-linejoin:round;transition:fill .25s,transform .25s;}
  :is(#dm,body) footer.bf a.bf-stelle:hover svg,:is(#dm,body) footer.bf a.bf-stelle:focus-visible svg{fill:rgba(176,141,87,.35);}
  :is(#dm,body) footer.bf a.bf-stelle:hover svg{transform:translateY(-1px);}
  @media (max-width:767px){:is(#dm,body) footer.bf a.bf-stelle{gap:8px;padding:8px 0;}:is(#dm,body) footer.bf a.bf-stelle svg{width:26px;height:26px;}}

