:root{--rose:#8d5c57;--dark:#292322;--cream:#f7f3ef;--line:#ded6cf;--muted:#746d68;--paper:#fff;--deep:#493531}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--dark);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.container{width:min(1400px,calc(100% - 80px));margin:auto}.hidden{display:none!important}
.utility{height:34px;background:#faf9f7;border-bottom:1px solid #e8e2dd;font-family:Georgia,serif;font-size:12px}.utility-row{height:100%;display:flex;align-items:center;justify-content:space-between}.utility-left,.utility-right{display:flex;gap:11px;align-items:center}.utility i{width:1px;height:14px;background:#cfc7c1}.lang{position:relative}.lang button{background:transparent;border:0;cursor:pointer;font:inherit}.lang-menu{position:absolute;right:0;top:29px;width:190px;background:#fff;border:1px solid var(--line);z-index:100;padding:6px;box-shadow:0 15px 40px #0002}.lang-menu button{display:flex;width:100%;justify-content:space-between;padding:8px}
.nav{height:118px;background:#fff}.nav-row{height:100%;display:flex;align-items:center;gap:32px}.logo img{width:225px;display:block}.main-menu{flex:1;display:flex;justify-content:center;gap:27px;align-items:center;font-family:Georgia,serif;font-size:12px}.main-menu a{white-space:nowrap}.book{background:var(--rose);color:#fff;padding:18px 32px;letter-spacing:.16em;font-size:13px;display:flex;gap:11px;align-items:center}.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;font-size:24px}
.hero{height:510px;position:relative;overflow:hidden;color:#fff}.hero-photo{position:absolute;inset:0;background-size:cover;background-position:center 47%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(31,21,15,.74) 0,rgba(31,21,15,.32) 34%,rgba(31,21,15,.03) 69%,rgba(31,21,15,.16) 100%)}.hero-layout{position:relative;height:100%;display:flex;align-items:center;justify-content:space-between}.hero-copy{max-width:500px}.hero-eyebrow{font-size:13px;letter-spacing:.32em;line-height:1.45;margin-bottom:21px}.hero h1{font-family:Georgia,serif;font-size:62px;line-height:1.02;font-weight:400;margin:0}.hero h1 br+*{}.hero h1::first-line{font-style:normal}.rule{height:1px}.rule.white{width:51px;background:#fff;margin:24px 0 18px}.rule.brown{width:52px;background:var(--rose);margin:18px 0}.rule.grey{width:50px;background:#9e9792;margin:18px auto}.hero p{font-family:Georgia,serif;font-size:19px;line-height:1.25;margin:0 0 26px}.cta-white{background:#fff;color:#292322;padding:14px 22px;display:inline-flex;gap:32px;align-items:center;font-size:12px;letter-spacing:.14em}.hero-aside{display:flex;flex-direction:column;gap:22px;font-family:Georgia,serif;font-size:13px}.hero-aside span:before{content:"";display:inline-block;width:25px;height:1px;background:#fff;margin-right:12px;vertical-align:middle}
.services{background:#fff;border-bottom:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr)}.service-grid>a{height:104px;border-right:1px solid var(--line);display:grid;grid-template-columns:54px 1fr 25px;gap:13px;align-items:center;padding:18px 25px}.service-grid>a:first-child{border-left:1px solid var(--line)}.service-grid i{font-style:normal;color:var(--rose);font-size:31px}.service-grid b{display:block;font-family:Georgia,serif;font-weight:400;font-size:18px}.service-grid small{display:block;font-size:10px;letter-spacing:.18em;color:#6d6763;margin-top:5px}.service-grid>a>span{font-size:25px;color:var(--rose)}
.face-home{background:var(--cream)}.face-layout{display:grid;grid-template-columns:.88fr .55fr 1.25fr;min-height:410px}.face-copy{padding:55px 42px 48px 0}.eyebrow{font-size:11px;letter-spacing:.30em;color:#9f7e79;margin-bottom:12px}.face-copy h2,.news-head h2{font-family:Georgia,serif;font-weight:400;font-style:italic;color:var(--rose);font-size:36px;line-height:1.05;margin:0}.face-copy p{font-family:Georgia,serif;font-size:16px;line-height:1.45;max-width:430px}.face-copy>a{display:inline-block;margin-top:12px;color:var(--rose);font-size:11px;letter-spacing:.17em;font-weight:700}.face-copy>a b{margin-left:18px;font-size:20px}.face-quote{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px}.face-quote blockquote{font-family:Georgia,serif;font-style:italic;font-size:27px;line-height:1.15;color:#746f6c;margin:0}.face-quote small{font-family:Georgia,serif;color:#87807b;margin-top:14px}.facade-photo{background-size:cover;background-position:center;background-repeat:no-repeat;filter:none!important;opacity:1!important;mix-blend-mode:normal!important}
.news-section{padding:82px 0 95px;background:#fff}.news-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.news-head h2{font-style:normal;color:var(--dark);font-size:42px}.news-head>a{font-size:11px;letter-spacing:.16em;color:var(--rose);font-weight:700}.news-grid{display:grid;grid-template-columns:1.35fr repeat(2,1fr);gap:25px}.news-card{border-top:1px solid var(--line)}.news-card.news-featured{grid-row:span 2}.news-image{height:185px;background-size:cover;background-position:center}.news-featured .news-image{height:345px}.news-body{padding:18px 0}.news-body time{font-size:10px;letter-spacing:.14em;color:var(--rose);text-transform:uppercase}.news-body h3{font-family:Georgia,serif;font-weight:400;font-size:23px;line-height:1.15;margin:8px 0 10px}.news-featured .news-body h3{font-size:31px}.news-body p{font-family:Georgia,serif;color:var(--muted);margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45}.news-body span{font-size:10px;letter-spacing:.15em;color:var(--rose);font-weight:700}.news-empty{grid-column:1/-1;padding:35px;border-top:1px solid var(--line);color:var(--muted)}.news-list-full{grid-template-columns:repeat(3,1fr)}.news-list-full .news-featured{grid-row:auto}.news-list-full .news-featured .news-image{height:185px}.news-list-full .news-featured .news-body h3{font-size:23px}
.pagehero{padding:90px 0 72px;background:var(--cream);border-bottom:1px solid var(--line)}.pagehero-inner{max-width:950px}.pagehero h1{font-family:Georgia,serif;font-size:64px;font-weight:400;margin:0 0 15px}.pagehero p{font-family:Georgia,serif;color:var(--muted);font-size:21px;max-width:850px}.content{padding:80px 0}.content-grid{display:grid;grid-template-columns:1fr;gap:0}.dropcap{font-family:Georgia,serif;font-size:130px;line-height:.8;color:#d9cbc5}.content-grid p{font-family:Georgia,serif;font-size:20px;line-height:1.7;color:#514a47}.textlink{color:var(--rose);font-size:11px;letter-spacing:.15em;font-weight:700}
.hours{padding:78px 0;background:var(--cream)}.hours h2{font-family:Georgia,serif;font-size:43px;font-weight:400}.hours-list{border-top:1px solid #d2c7c0}.hours-list>div{display:grid;grid-template-columns:250px 1fr;padding:17px 0;border-bottom:1px solid #d2c7c0}.hours-list span{color:var(--muted)}
.notice{background:#f2e7e4;border-left:3px solid var(--rose);padding:18px 21px;margin:28px 0}.notice>b{font-size:10px;letter-spacing:.16em}.brown-btn{border:0;background:var(--rose);color:#fff;padding:14px 20px;font-size:11px;letter-spacing:.15em;display:inline-block;cursor:pointer}.editorial{padding:55px 0 90px}.editorial article{display:grid;grid-template-columns:80px 1fr;gap:25px;padding:28px 0;border-bottom:1px solid var(--line)}.editorial article>span{font-family:Georgia,serif;font-size:30px;color:#c2b3ad}.editorial h2{font-family:Georgia,serif;font-size:35px;font-weight:400;margin:0}.editorial p{color:var(--muted)}
.choices{padding:75px 0}.choices-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.choices-grid a{padding:43px}.choices-grid a+a{border-left:1px solid var(--line)}.choices-grid span{font-family:Georgia,serif;color:var(--rose);font-size:24px}.choices-grid h2{font-family:Georgia,serif;font-size:38px;font-weight:400}.choices-grid p{color:var(--muted)}
.form-section{padding:60px 0 90px}.form-width{max-width:900px}.form-section form{border-top:2px solid var(--rose);padding-top:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;margin-bottom:18px}input,select,textarea{border:1px solid #d9d0ca;padding:12px;font:inherit;background:#fff}.full{grid-column:1/-1}.check{flex-direction:row;align-items:flex-start;font-weight:400}.check input{width:auto;margin-top:5px}.service-options{display:flex;gap:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin-bottom:23px}.service-options label{flex-direction:row;margin:0}.service-options input{width:auto}.result{margin-top:13px;color:#617755;font-weight:700}
.stream{padding:65px 0 90px}.video{aspect-ratio:16/9;background:#211817;position:relative}.video iframe{width:100%;height:100%;border:0}.video>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;gap:8px}.video>div span{font-size:30px}.video>div small{color:#c7bbb6}
.contacts{padding:75px 0 95px}.contact-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.contact-grid>div{border-top:1px solid var(--line);padding-top:15px}.contact-grid b{font-size:10px;letter-spacing:.17em}.contact-grid p{font-family:Georgia,serif;color:var(--muted)}
.news-detail-head{background:var(--cream)}.news-detail-image{height:430px;background-size:cover;background-position:center}.news-detail-meta{max-width:950px;padding:55px 0}.news-detail-meta time{font-size:11px;letter-spacing:.15em;color:var(--rose)}.news-detail-meta h1{font-family:Georgia,serif;font-size:55px;font-weight:400;line-height:1.05}.news-detail-content{padding:60px 0 90px}.article-width{max-width:850px;font-family:Georgia,serif;font-size:19px;line-height:1.75}
footer{background:#241f1e;color:#cec4c0;padding:45px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.footer-grid img{width:245px}.footer-grid p{font-size:12px;color:#958a86}.footer-grid b{display:block;color:#fff;font-size:10px;letter-spacing:.16em;margin-bottom:10px}.footer-grid a{display:block;margin:5px 0;font-size:13px}.google-host{position:fixed;left:-9999px;bottom:-9999px}body>.skiptranslate{display:none!important}body{top:0!important}
@media(max-width:1120px){.container{width:min(100% - 40px,1400px)}.main-menu{display:none;position:absolute;left:0;right:0;top:152px;background:#fff;padding:25px;flex-direction:column;align-items:flex-start;z-index:99}.main-menu.open{display:flex}.menu-toggle{display:block}.book{margin-left:0}.service-grid{grid-template-columns:1fr 1fr}.face-layout{grid-template-columns:1fr 1fr}.facade-photo{min-height:350px;grid-column:1/-1}.news-grid{grid-template-columns:1fr 1fr}.news-featured{grid-row:auto!important}.news-featured .news-image{height:185px}.news-featured .news-body h3{font-size:23px}.content-grid,.contact-grid{grid-template-columns:1fr}.dropcap{display:none}}
@media(max-width:720px){.container{width:calc(100% - 30px)}.utility-left>span:last-child,.utility-left i,.utility-right>a,.utility-right>i{display:none}.nav{height:92px}.logo img{width:180px}.book{padding:12px 14px}.hero{height:540px}.hero h1{font-size:44px}.hero-aside{display:none}.service-grid,.face-layout,.news-grid,.news-list-full,.choices-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.service-grid>a{border-left:1px solid var(--line)}.face-copy{padding-right:0}.facade-photo{grid-column:auto}.choices-grid a+a{border-left:0;border-top:1px solid var(--line)}.pagehero h1{font-size:46px}.hours-list>div{grid-template-columns:1fr}.news-detail-image{height:260px}.news-detail-meta h1{font-size:40px}}


.menu-parent{position:relative}
.menu-parent>a{display:block}
.submenu{display:none;position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:1px solid var(--line);padding:8px;box-shadow:0 16px 40px #0002;z-index:120}
.submenu a{display:block!important;padding:9px 10px!important;white-space:nowrap;font-size:12px}
.submenu a:hover{background:var(--cream)}
.menu-parent:hover .submenu{display:block}
.dynamic-page-image{height:430px;background-size:cover;background-position:center}
.dynamic-page-content{padding:65px 0 95px}
.dynamic-page-content .article-width{font-family:Georgia,serif;font-size:19px;line-height:1.75}
@media(max-width:1120px){
  .menu-parent{width:100%}
  .submenu{position:static;display:block;border:0;box-shadow:none;padding:4px 0 4px 14px}
  .submenu a{font-size:11px}
}

/* Deterrenza al salvataggio diretto delle immagini */
img,.hero-photo,.facade-photo,.news-image,.news-detail-image,.dynamic-page-image{
  -webkit-user-drag:none;
  user-drag:none;
  -webkit-touch-callout:none;
  user-select:none;
}


/* Pagina PRENOTA — nuova resa editoriale */
.booking-intro{padding:62px 0 48px;background:#fff}
.booking-intro-grid{display:grid;grid-template-columns:1.45fr .55fr;gap:70px;align-items:end}
.booking-intro-copy h2{font-family:Georgia,serif;font-size:42px;line-height:1.06;font-weight:400;margin:0 0 18px}
.booking-intro-copy p{max-width:720px;font-family:Georgia,serif;font-size:18px;line-height:1.55;color:var(--muted);margin:0}
.booking-note{border-left:1px solid var(--line);padding-left:28px;display:flex;gap:14px;align-items:flex-start}
.booking-note-mark{color:var(--rose);font-size:18px;margin-top:2px}
.booking-note p{font-family:Georgia,serif;font-size:15px;line-height:1.45;color:#6f6763;margin:0}
.booking-options{padding:0 0 90px;background:#fff}
.booking-options-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.booking-option{min-height:350px;padding:42px 44px 38px;display:grid;grid-template-columns:72px 1fr;gap:28px;position:relative;transition:background .22s ease}
.booking-option + .booking-option{border-left:1px solid var(--line)}
.booking-option:hover{background:var(--cream)}
.booking-option-symbol{width:58px;height:58px;border:1px solid #cdbab3;border-radius:50%;display:grid;place-items:center;color:var(--rose);font-family:Georgia,serif;font-size:24px}
.booking-option-copy h2{font-family:Georgia,serif;font-size:36px;line-height:1.08;font-weight:400;margin:0 0 15px}
.booking-option-copy p{max-width:460px;font-family:Georgia,serif;font-size:17px;line-height:1.55;color:var(--muted);margin:0 0 28px}
.booking-option-link{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--rose)}
.booking-option-link b{margin-left:14px;font-size:18px;font-weight:400}
@media(max-width:900px){
  .booking-intro-grid{grid-template-columns:1fr;gap:30px}
  .booking-note{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:18px}
  .booking-options-grid{grid-template-columns:1fr}
  .booking-option + .booking-option{border-left:0;border-top:1px solid var(--line)}
}
@media(max-width:620px){
  .booking-intro{padding-top:45px}
  .booking-intro-copy h2{font-size:34px}
  .booking-option{grid-template-columns:1fr;min-height:auto;padding:34px 26px}
  .booking-option-copy h2{font-size:31px}
}

.dynamic-page-content .article-width h2{font-family:Georgia,serif;font-size:36px;font-weight:400;margin:38px 0 14px}
.dynamic-page-content .article-width h3{font-family:Georgia,serif;font-size:27px;font-weight:400;margin:30px 0 12px}
.dynamic-page-content .article-width p{margin:0 0 18px}
.dynamic-page-content .article-width ul{margin:18px 0 24px;padding-left:24px}
.dynamic-page-content .article-width li{margin:6px 0}
.dynamic-page-content .article-width a{color:var(--rose);text-decoration:underline}


/* Modalità manutenzione */
.maintenance-page{
  margin:0;
  min-height:100vh;
  background:#f7f3ef;
  color:#292322;
}
.maintenance-shell{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:36px 20px;
  background:
    radial-gradient(circle at 80% 20%,rgba(141,92,87,.08),transparent 32%),
    #f7f3ef;
}
.maintenance-card{
  width:min(760px,100%);
  text-align:center;
  padding:58px 62px 44px;
  background:#fff;
  border:1px solid #ded6cf;
  box-shadow:0 18px 60px rgba(41,35,34,.08);
}
.maintenance-logo{
  width:min(260px,70%);
  height:auto;
  display:block;
  margin:0 auto 28px;
}
.maintenance-rule{
  width:54px;
  height:1px;
  background:#8d5c57;
  margin:0 auto 28px;
}
.maintenance-eyebrow{margin-bottom:14px}
.maintenance-card h1{
  font-family:Georgia,serif;
  font-weight:400;
  font-size:clamp(38px,6vw,62px);
  line-height:1.03;
  margin:0 auto 24px;
  max-width:650px;
}
.maintenance-text{
  max-width:620px;
  margin:0 auto 18px;
  font-family:Georgia,serif;
  font-size:19px;
  line-height:1.6;
  color:#625b57;
}
.maintenance-note{
  max-width:590px;
  margin:0 auto 24px;
  font-size:14px;
  line-height:1.6;
  color:#746d68;
}
.maintenance-contact{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin:26px 0 34px;
  font-size:13px;
}
.maintenance-contact a{color:#8d5c57;text-decoration:none}
.maintenance-footer{
  border-top:1px solid #ded6cf;
  padding-top:22px;
  font-size:11px;
  letter-spacing:.08em;
  color:#817873;
}
@media(max-width:620px){
  .maintenance-card{padding:42px 25px 32px}
  .maintenance-text{font-size:17px}
}

.spirituality-category-content{margin-top:26px}
.category-content-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;border-top:1px solid var(--line)}
.category-content-link{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 2px;border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:17px;color:var(--dark);text-decoration:none}
.category-content-link b{color:var(--rose);font-weight:400;font-size:20px}
.category-content-link:hover span{color:var(--rose)}
@media(max-width:720px){.category-content-list{grid-template-columns:1fr}}


/* Spiritualità e Studi: categorie cliccabili */
.category-archive-link{
  display:block;
  color:inherit;
  text-decoration:none;
  padding:0 0 8px;
}
.category-archive-link:hover h2{color:var(--rose)}
.category-open{
  display:inline-block;
  margin-top:18px;
  font-size:10px;
  letter-spacing:.15em;
  font-weight:700;
  color:var(--rose);
}

/* Archivio categoria Spiritualità */
.category-archive-page{
  padding:70px 0 90px;
  background:#fff;
}
.category-archive-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.category-archive-card{
  border:1px solid var(--line);
  background:#fff;
}
.category-archive-card>a{
  display:block;
  color:inherit;
  text-decoration:none;
  height:100%;
}
.category-archive-image{
  height:210px;
  background:center/cover no-repeat;
}
.category-archive-body{
  padding:26px 24px 28px;
}
.category-archive-body h2{
  font-family:Georgia,serif;
  font-size:27px;
  line-height:1.12;
  font-weight:400;
  margin:8px 0 12px;
}
.category-archive-body p{
  color:var(--muted);
  line-height:1.55;
  margin:0 0 22px;
}
.category-archive-body span{
  font-size:10px;
  letter-spacing:.14em;
  font-weight:700;
  color:var(--rose);
}
@media(max-width:950px){
  .category-archive-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .category-archive-grid{grid-template-columns:1fr}
}


/* Footer gestibile */
.site-footer{
  background:#2f2a28;
  color:#fff;
}
.footer-main{
  padding:46px 0 34px;
  text-align:center;
}
.footer-brand img{
  width:min(240px,65vw);
  height:auto;
  display:block;
  margin:0 auto 18px;
  filter:brightness(0) invert(1);
}
.footer-brand p{
  margin:0;
  font-family:Georgia,serif;
  font-size:15px;
  color:#ddd5d0;
}
.footer-legal{
  border-top:1px solid rgba(255,255,255,.15);
  background:#2f2a28;
}
.footer-legal-inner{
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}
.footer-links{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
.footer-legal-item{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.footer-links a{
  color:#ddd5d0;
  font-size:14px;
  text-decoration:none;
}
.footer-links a:hover{text-decoration:underline}
.footer-sep{color:#aab8c1}
.footer-copy{
  color:#a99f99;
  font-size:11px;
}
@media(max-width:720px){
  .footer-legal-inner{
    padding-top:18px;
    padding-bottom:18px;
    align-items:flex-start;
    flex-direction:column;
  }
}


/* Footer definitivo */
.site-footer{
  background:#2f2a28;
  color:#fff;
}
.footer-main-grid{
  display:grid;
  grid-template-columns:1.5fr .75fr .75fr;
  gap:60px;
  padding:52px 0 42px;
  align-items:start;
}
.footer-brand{
  text-align:left;
}
.footer-brand img{
  width:min(245px,70vw);
  max-height:90px;
  object-fit:contain;
  object-position:left center;
  display:block;
  margin:0 0 18px;
  filter:none;
}
.footer-brand p{
  margin:0;
  max-width:420px;
  font-family:Georgia,serif;
  font-size:15px;
  line-height:1.55;
  color:#d7cfca;
}
.footer-content-block{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.footer-content-block h3{
  margin:0 0 8px;
  font-size:10px;
  letter-spacing:.16em;
  font-weight:700;
  color:#bfa9a2;
}
.footer-content-block a{
  color:#f4f1ef;
  text-decoration:none;
  font-size:14px;
}
.footer-content-block a:hover{
  color:#d8beb7;
}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  background:#2f2a28;
}
.footer-bottom-inner{
  min-height:70px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
}
.footer-links{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
.footer-legal-item{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.footer-links a{
  color:#d7cfca;
  text-decoration:none;
  font-size:13px;
}
.footer-links a:hover{
  color:#fff;
}
.footer-sep{
  color:#7e736e;
}
.footer-copy{
  color:#9f9590;
  font-size:11px;
}
@media(max-width:900px){
  .footer-main-grid{
    grid-template-columns:1fr 1fr;
  }
  .footer-brand{
    grid-column:1/-1;
  }
}
@media(max-width:620px){
  .footer-main-grid{
    grid-template-columns:1fr;
    gap:30px;
  }
  .footer-brand{
    grid-column:auto;
  }
  .footer-bottom-inner{
    align-items:flex-start;
    flex-direction:column;
    padding-top:18px;
    padding-bottom:18px;
  }
}

.footer-column-links{display:flex;flex-direction:column;gap:9px}.footer-column-links a{color:#f4f1ef;text-decoration:none;font-size:14px}.footer-column-links a:hover{color:#d8beb7}


/* Caricamento immediato: la pagina resta visibile anche mentre il CMS viene sincronizzato */
html,body{visibility:visible!important;opacity:1!important}
html.site-ready body{visibility:visible!important;opacity:1!important}

.mass-payment-notice{margin-top:34px}.mass-payment-notice.hidden{display:none}
.mass-payment-card{border:1px solid var(--line);background:var(--cream);padding:32px}
.mass-payment-card h2{margin:6px 0 12px;font-family:Georgia,serif;font-size:30px;font-weight:400;color:var(--dark)}
.mass-payment-card>p{max-width:760px;line-height:1.6;color:var(--muted)}
.mass-payment-details{margin-top:24px;border-top:1px solid var(--line)}
.mass-payment-details>div{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}
.mass-payment-details span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.mass-payment-details strong{font-weight:600;word-break:break-word}
.mass-payment-causal strong{color:var(--rose)}
.mass-payment-note{margin:20px 0 0!important;font-size:13px}
@media(max-width:640px){.mass-payment-card{padding:24px 20px}.mass-payment-details>div{grid-template-columns:1fr;gap:4px}}


/* Facebook in homepage */
.home-social{
  background:var(--cream);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.home-social-inner{
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding-top:28px;
  padding-bottom:28px;
}
.home-social h2{
  margin:5px 0 0;
  font-family:Georgia,serif;
  font-size:30px;
  font-weight:400;
  color:var(--dark);
}
.facebook-home-link{
  display:inline-flex;
  align-items:center;
  gap:11px;
  padding:12px 17px;
  border:1px solid var(--rose);
  color:var(--rose);
  text-decoration:none;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
}
.facebook-home-link:hover{
  background:var(--rose);
  color:#fff;
}
.facebook-icon{
  width:24px;
  height:24px;
  border:1px solid currentColor;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-family:Arial,sans-serif;
  font-size:16px;
  font-weight:700;
}
@media(max-width:700px){
  .home-social-inner{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* Mantiene le andate a capo del testo istituzionale del footer */
.footer-brand p[data-footer-institution]{
  white-space:pre-line;
}


/* Resa contenuti formattati dal CMS */
.pagehero-rich-lead p{margin:0}.pagehero-rich-lead{max-width:780px}.news-excerpt p{margin:0}.news-excerpt ul,.news-excerpt ol{padding-left:20px}.dynamic-page-content .article-width p{line-height:1.75}.dynamic-page-content .article-width blockquote{border-left:3px solid var(--rose);padding-left:20px;margin:28px 0;color:var(--muted)}

/* Nessuna iniziale decorativa laterale nelle pagine */
.dropcap{display:none!important}
.content-grid{grid-template-columns:1fr!important;gap:0!important}

/* Immagini inserite dall'editor */
.rich-editor-content img,
.page-visual-preview img{max-width:100%;height:auto;display:block;margin:18px 0}
.article-width img,
.news-detail img,
.content img,
.editorial img,
.pagehero-rich-lead img,
[data-cms] img,
[data-cms-html] img{max-width:100%;height:auto}
.article-width img,
.news-detail img{display:block;margin:24px auto}


/* Allineamento editoriale pagine interne */
.pagehero-inner{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.content .container,
.editorial .container,
.hours .container,
.form-section .container,
.dynamic-page-content .container,
.article-width,
.pagehero-rich-lead{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.content-grid{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.content-grid p,
.dynamic-page-content,
.article-width{
  width:100%;
}
.editorial article{
  grid-template-columns:1fr;
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.news-detail,
.news-detail .container{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:980px){
  .pagehero-inner,
  .content .container,
  .editorial .container,
  .hours .container,
  .form-section .container,
  .dynamic-page-content .container,
  .article-width,
  .content-grid,
  .news-detail,
  .news-detail .container{
    max-width:calc(100% - 40px);
  }
}
@media(max-width:640px){
  .pagehero-inner,
  .content .container,
  .editorial .container,
  .hours .container,
  .form-section .container,
  .dynamic-page-content .container,
  .article-width,
  .content-grid,
  .news-detail,
  .news-detail .container{
    max-width:calc(100% - 28px);
  }
}


/* Immagini nei contenuti editoriali */
.article-width::after,
.dynamic-page-content .container::after,
.news-detail::after{
  content:"";
  display:block;
  clear:both;
}
.article-width img,
.dynamic-page-content img,
.news-detail img,
[data-cms] img,
[data-cms-html] img{
  max-width:100%;
  height:auto;
}

.directions-section{padding:70px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.directions-section .container{max-width:900px;margin-left:auto;margin-right:auto}
.directions-section h2{font-family:Georgia,serif;font-size:43px;font-weight:400;margin:0 0 16px}
.directions-section p{font-family:Georgia,serif;font-size:20px;line-height:1.6;color:var(--muted);white-space:pre-line}
@media(max-width:980px){.directions-section .container{max-width:calc(100% - 40px)}}
@media(max-width:640px){.directions-section .container{max-width:calc(100% - 28px)}}

.page-gallery-section{padding:70px 0 85px;background:var(--cream);border-top:1px solid var(--line)}
.page-gallery-section.hidden{display:none}
.page-gallery-section .container{max-width:900px;margin:0 auto}
.page-gallery-section h2{font-family:Georgia,serif;font-size:42px;font-weight:400;margin:0 0 28px}
.page-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.gallery-item{margin:0;background:#fff;border:1px solid var(--line)}
.gallery-media,.gallery-image-button{aspect-ratio:16/10;width:100%;display:block;border:0;padding:0;background:#ddd;overflow:hidden}
.gallery-image-button{cursor:zoom-in}
.gallery-item img,.gallery-item iframe,.gallery-item video{width:100%;height:100%;display:block;object-fit:cover;border:0}
.gallery-item figcaption{padding:13px 15px;font-family:Georgia,serif;color:var(--muted);font-size:15px;line-height:1.4}
.gallery-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(20,15,13,.9);display:grid;place-items:center;padding:40px}
.gallery-lightbox.hidden{display:none}
.gallery-lightbox-inner{max-width:min(1100px,92vw);max-height:90vh;text-align:center;color:#fff}
.gallery-lightbox-inner img{max-width:100%;max-height:80vh}
.gallery-lightbox-inner p{font-family:Georgia,serif}
.gallery-lightbox-close{position:absolute;right:25px;top:15px;border:0;background:transparent;color:#fff;font-size:42px;cursor:pointer}
@media(max-width:700px){.page-gallery-grid{grid-template-columns:1fr}.page-gallery-section .container{max-width:calc(100% - 28px)}}

.google-map-embed{
  margin-top:28px;
  width:100%;
  aspect-ratio:16/8;
  min-height:360px;
  border:1px solid var(--line);
  overflow:hidden;
  background:#eee;
}
.google-map-embed iframe{
  width:100%;
  height:100%;
  min-height:360px;
  border:0;
  display:block;
}
@media(max-width:700px){
  .google-map-embed{aspect-ratio:4/3;min-height:300px}
  .google-map-embed iframe{min-height:300px}
}

/* Uniformita' cromatica delle pagine interne — 30/09/2026.
   Il titolo e il corpo delle pagine usano lo stesso avorio istituzionale.
   Non modifica immagini, testi, editor, menu o dati CMS. */
.pagehero,
.content,
.editorial,
.dynamic-page-content,
.contacts,
.directions-section {
  background-color:var(--cream);
}
.content,
.editorial,
.dynamic-page-content {
  border-top:0;
}
.content-grid p,
.dynamic-page-content p,
.editorial p {
  color:#514a47;
}
