/* =========================================================
   SORELLA TERESA — Global Stylesheet
   ========================================================= */

:root {
  --ivory:#f5f0e8;--ivory2:#ede5d4;--ivory3:#e0d5c0;--parchment:#d4c9b0;
  --burgundy:#5c1a1a;--burgundy2:#7a2424;--gold:#b8922a;--gold2:#d4a93a;
  --text:#2a1a0e;--text2:#5a3d2b;--text3:#8a6a52;--white:#fdfaf5;
  --shadow-sm:0 2px 8px rgba(42,26,14,.08);
  --radius:2px;--tr:.25s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Lato',sans-serif;background:var(--ivory);color:var(--text);line-height:1.65;}
p{font-size:.92rem;color:var(--text2);line-height:1.85;margin-bottom:14px;}
p:last-child{margin-bottom:0;}

/* ── NAV ─────────────────────────────────────────────── */
nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(92,26,26,.97);backdrop-filter:blur(8px);border-bottom:1px solid rgba(184,146,42,.3);}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--ivory);text-decoration:none;flex-shrink:0;line-height:1.3;}
.nav-logo span{color:var(--gold2);display:block;font-size:.72rem;font-weight:300;letter-spacing:.06em;}
.nav-links{display:flex;align-items:center;gap:4px;list-style:none;flex-wrap:nowrap;}
.nav-links a{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(245,240,232,.7);text-decoration:none;transition:color var(--tr);padding:4px 8px;white-space:nowrap;}
.nav-links a:hover,.nav-links a.active{color:var(--gold2);}
.nav-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;flex-shrink:0;}
.nav-burger span{width:22px;height:2px;background:var(--ivory);border-radius:2px;display:block;}
.nav-links.open{display:flex;flex-direction:column;position:absolute;top:56px;left:0;right:0;background:rgba(92,26,26,.98);padding:16px 24px;gap:12px;}
@media(max-width:960px){.nav-links:not(.open){display:none;}.nav-burger{display:flex;}}

/* ── SHARED ──────────────────────────────────────────── */
.wrap{max-width:1100px;margin:0 auto;padding:0 28px;}
section{padding:52px 0;}
.section-label{font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;display:block;}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,2.5vw,2.1rem);font-weight:400;color:var(--burgundy);line-height:1.2;margin-bottom:14px;}
.section-title em{font-style:italic;color:var(--gold);}
.section-intro{font-size:.9rem;color:var(--text2);max-width:600px;line-height:1.75;}
.section-lead{font-family:'Cormorant Garamond',serif;font-size:1.05rem;color:var(--text2);line-height:1.8;max-width:680px;}
.section-body{font-size:.9rem;color:var(--text2);line-height:1.9;max-width:680px;}
.section-body p+p{margin-top:1em;}
.section-alt{background:var(--ivory2);}
.section-white{background:var(--white);}
.bg-burgundy{background:var(--burgundy);}
.bg-burgundy .section-title{color:var(--ivory);}
.bg-burgundy .section-label{color:var(--gold2);}
.bg-burgundy .section-intro{color:rgba(245,240,232,.65);}

/* ── BUTTONS ─────────────────────────────────────────── */
.btn-primary{background:var(--gold);color:var(--burgundy);padding:10px 26px;border-radius:var(--radius);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:all var(--tr);display:inline-block;cursor:pointer;border:none;}
.btn-primary:hover{background:var(--gold2);}
.btn-outline{background:transparent;color:var(--ivory);padding:9px 26px;border-radius:var(--radius);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border:1px solid rgba(245,240,232,.4);transition:all var(--tr);display:inline-block;}
.btn-outline:hover{border-color:var(--gold2);color:var(--gold2);}

/* ── ANIMATIONS ──────────────────────────────────────── */
.reveal{opacity:1;transform:translateY(0);transition:opacity .5s ease,transform .5s ease;}
.js-loaded .reveal{opacity:0;transform:translateY(18px);}
.js-loaded .reveal.visible{opacity:1;transform:translateY(0);}
@keyframes fadeDown{from{opacity:0;transform:translateY(-14px);}to{opacity:1;transform:translateY(0);}}
@keyframes pulse{0%,100%{opacity:.3;}50%{opacity:.65;}}

/* ── PAGE HEADER ─────────────────────────────────────── */
.page-header{background:var(--burgundy);padding:100px 28px 52px;position:relative;overflow:hidden;}
.page-header::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 40% 60%,rgba(184,146,42,.12) 0%,transparent 60%);pointer-events:none;}
.page-header-inner{max-width:1100px;margin:0 auto;}
.page-header-label{font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2);margin-bottom:10px;display:block;}
.page-header h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3rem);font-weight:300;color:var(--ivory);line-height:1.2;}
.page-header h1 em{font-style:italic;color:var(--gold2);}
.page-header-desc{margin-top:16px;font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;color:rgba(245,240,232,.65);max-width:520px;line-height:1.75;}
.page-breadcrumb{margin-top:20px;font-size:.72rem;color:rgba(245,240,232,.45);letter-spacing:.06em;}
.page-breadcrumb a{color:rgba(245,240,232,.45);text-decoration:none;}
.page-breadcrumb a:hover{color:var(--gold2);}

/* ── HERO ────────────────────────────────────────────── */
.hero{min-height:90vh;background:var(--burgundy);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:100px 28px 60px;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,rgba(184,146,42,.12) 0%,transparent 60%);pointer-events:none;}
.hero-ornament{font-size:1.2rem;color:var(--gold);opacity:.6;margin-bottom:20px;letter-spacing:.3em;animation:fadeDown .8s ease both;}
.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4.5vw,3.4rem);font-weight:300;color:var(--ivory);line-height:1.2;margin-bottom:10px;animation:fadeDown .9s .1s ease both;}
.hero h1 em{font-style:italic;color:var(--gold2);}
.hero-subtitle{font-size:clamp(.75rem,1.3vw,.88rem);color:rgba(245,240,232,.6);letter-spacing:.12em;text-transform:uppercase;font-weight:300;margin-bottom:24px;animation:fadeDown .9s .2s ease both;}
.hero-quote{font-family:'Cormorant Garamond',serif;font-size:clamp(.95rem,1.8vw,1.1rem);font-style:italic;color:rgba(245,240,232,.8);max-width:500px;line-height:1.65;border-top:1px solid rgba(184,146,42,.3);border-bottom:1px solid rgba(184,146,42,.3);padding:14px 0;margin-bottom:32px;animation:fadeDown .9s .3s ease both;}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;animation:fadeDown .9s .4s ease both;}
.hero-scroll{position:absolute;bottom:24px;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(245,240,232,.3);animation:pulse 2s infinite;}

/* ── CHI SIAMO ───────────────────────────────────────── */
.chi-grid{display:grid;grid-template-columns:1fr 2fr;gap:48px;align-items:start;}
@media(max-width:768px){.chi-grid{grid-template-columns:1fr;gap:28px;}}
.chi-img-frame{width:100%;aspect-ratio:3/4;background:var(--ivory2);border:6px solid var(--ivory3);display:flex;align-items:center;justify-content:center;position:relative;}
.chi-img-placeholder{font-family:'Cormorant Garamond',serif;font-size:.9rem;font-style:italic;color:var(--text3);text-align:center;padding:16px;}
.corner-tl{position:absolute;top:-10px;left:-10px;width:40px;height:40px;border-top:2px solid var(--gold);border-left:2px solid var(--gold);}
.corner-br{position:absolute;bottom:-10px;right:-10px;width:40px;height:40px;border-bottom:2px solid var(--gold);border-right:2px solid var(--gold);}
.chi-quote{border-left:3px solid var(--gold);padding:10px 16px;margin:16px 0;font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-style:italic;color:var(--burgundy2);line-height:1.55;}
.chi-text p{font-size:.9rem;color:var(--text2);line-height:1.8;margin-bottom:10px;}

/* ── SUBNAV (Santuario Nascosto) ─────────────────────── */
.subnav{background:var(--ivory2);border-bottom:1px solid var(--ivory3);position:sticky;top:56px;z-index:90;}
.subnav-inner{max-width:1100px;margin:0 auto;padding:0 28px;display:flex;gap:0;overflow-x:auto;scrollbar-width:none;}
.subnav-inner::-webkit-scrollbar{display:none;}
.subnav-inner a{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text3);text-decoration:none;padding:14px 16px;border-bottom:2px solid transparent;white-space:nowrap;transition:all var(--tr);}
.subnav-inner a:hover,.subnav-inner a.sub-active{color:var(--burgundy);border-bottom-color:var(--gold);}

/* ── YEAR NAV (archivi) ──────────────────────────────── */
.year-nav{background:var(--ivory2);border-bottom:1px solid var(--ivory3);padding:12px 0;position:sticky;top:56px;z-index:90;overflow-x:auto;}
.year-nav-inner{max-width:1100px;margin:0 auto;padding:0 28px;display:flex;gap:6px;align-items:center;min-width:max-content;}
.year-btn{font-size:.68rem;font-weight:700;letter-spacing:.06em;padding:5px 12px;border:1px solid var(--ivory3);background:var(--white);color:var(--text2);border-radius:var(--radius);cursor:pointer;transition:all var(--tr);text-decoration:none;white-space:nowrap;}
.year-btn:hover{border-color:var(--gold);color:var(--burgundy);}
.year-btn.active{background:var(--burgundy);border-color:var(--burgundy);color:var(--ivory);}

/* ── SEARCH BAR ──────────────────────────────────────── */
.search-bar{background:var(--ivory2);border-bottom:1px solid var(--ivory3);padding:14px 0;position:sticky;top:56px;z-index:90;}
.search-inner{max-width:1100px;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:12px;}
.search-input{flex:1;max-width:400px;background:var(--white);border:1px solid var(--ivory3);padding:8px 14px;font-size:.84rem;font-family:'Lato',sans-serif;color:var(--text);border-radius:var(--radius);outline:none;transition:border-color var(--tr);}
.search-input:focus{border-color:var(--gold);}
.search-input::placeholder{color:var(--text3);}
.search-count{font-size:.72rem;color:var(--text3);letter-spacing:.04em;}
.no-results{display:none;text-align:center;padding:48px 0;color:var(--text3);font-style:italic;font-family:'Cormorant Garamond',serif;font-size:1.1rem;}

/* ── ARCHIVE LAYOUT ──────────────────────────────────── */
.archive-body{background:var(--white);}
.archive-inner{max-width:1100px;margin:0 auto;padding:52px 28px 72px;}
.year-section{margin-bottom:56px;}
.year-section:last-child{margin-bottom:0;}
.year-heading{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:300;color:var(--burgundy);border-bottom:1px solid var(--ivory3);padding-bottom:12px;margin-bottom:24px;display:flex;align-items:baseline;gap:14px;}
.year-heading span{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);}

/* ── LETTERE AI FRATELLI ─────────────────────────────── */
.lettere-layout{display:grid;grid-template-columns:220px 1fr;gap:48px;align-items:start;}
@media(max-width:768px){.lettere-layout{grid-template-columns:1fr;gap:32px;}}
.lettere-sidebar{position:sticky;top:108px;}
.sidebar-years{list-style:none;}
.sidebar-years li a{display:block;font-size:.75rem;font-weight:700;letter-spacing:.06em;padding:8px 12px;color:var(--text3);text-decoration:none;border-left:2px solid transparent;transition:all var(--tr);}
.sidebar-years li a:hover,.sidebar-years li a.current{color:var(--burgundy);border-left-color:var(--gold);}
.lettera-accordion{border:1px solid var(--ivory3);border-top:3px solid var(--ivory3);margin-bottom:12px;transition:border-top-color var(--tr);}
.lettera-accordion.open{border-top-color:var(--burgundy);}
.lettera-accordion:hover{border-top-color:var(--gold);}
.lettera-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;}
.lettera-periodo{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--burgundy);}
.lettera-toggle{font-size:.65rem;color:var(--text3);transition:transform var(--tr);flex-shrink:0;}
.lettera-accordion.open .lettera-toggle{transform:rotate(180deg);}
.lettera-body{display:none;padding:0 20px 20px;border-top:1px solid var(--ivory3);}
.lettera-accordion.open .lettera-body{display:block;}
.lettera-testo{font-size:.88rem;color:var(--text2);line-height:1.9;white-space:pre-wrap;padding-top:16px;}
.lettera-firma{font-family:'Cormorant Garamond',serif;font-size:.92rem;font-style:italic;color:var(--text3);margin-top:16px;text-align:right;}

/* ── FIORETTI ────────────────────────────────────────── */
.fioretti-grid{columns:2;column-gap:28px;}
@media(max-width:768px){.fioretti-grid{columns:1;}}
.fioretto-card{break-inside:avoid;background:var(--ivory);border:1px solid var(--ivory3);border-top:3px solid var(--ivory3);padding:28px 26px;margin-bottom:24px;transition:border-top-color var(--tr),box-shadow var(--tr);cursor:pointer;}
.fioretto-card:hover{border-top-color:var(--gold);box-shadow:0 4px 16px rgba(92,26,26,.07);}
.fioretto-card.open{border-top-color:var(--burgundy);}
.fioretto-title{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:var(--burgundy);margin-bottom:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.fioretto-title span{flex:1;}
.fioretto-toggle{font-size:.65rem;color:var(--text3);flex-shrink:0;margin-top:4px;transition:transform var(--tr);display:inline-block;}
.fioretto-card.open .fioretto-toggle{transform:rotate(180deg);}
.fioretto-preview{font-size:.84rem;color:var(--text3);font-style:italic;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.fioretto-card.open .fioretto-preview{display:none;}
.fioretto-body{display:none;margin-top:14px;padding-top:14px;border-top:1px solid var(--ivory3);}
.fioretto-card.open .fioretto-body{display:block;}
.fioretto-testo{font-size:.88rem;color:var(--text2);line-height:1.9;white-space:pre-wrap;}
.fioretto-firma{font-family:'Cormorant Garamond',serif;font-size:.92rem;font-style:italic;color:var(--text3);margin-top:16px;text-align:right;}

/* ── GESÙ LUCE ───────────────────────────────────────── */
.issues-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
@media(max-width:900px){.issues-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.issues-grid{grid-template-columns:1fr;}}
.issue-card{background:var(--ivory);border:1px solid var(--ivory3);border-top:3px solid var(--ivory3);overflow:hidden;transition:border-top-color var(--tr),box-shadow var(--tr);display:flex;flex-direction:column;}
.issue-card:hover{border-top-color:var(--gold);box-shadow:0 4px 16px rgba(92,26,26,.08);}
.issue-card.has-pdf{border-top-color:var(--gold);}
.issue-card.has-pdf:hover{border-top-color:var(--burgundy);}
.issue-cover{width:100%;aspect-ratio:3/4;background:linear-gradient(160deg,var(--burgundy) 0%,var(--burgundy2) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;text-align:center;position:relative;overflow:hidden;}
.issue-cover::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,rgba(184,146,42,.18) 0%,transparent 65%);}
.issue-cover-title{font-family:'Cormorant Garamond',serif;font-size:.9rem;font-weight:600;color:var(--ivory);line-height:1.3;position:relative;z-index:1;letter-spacing:.04em;}
.issue-cover-subtitle{font-family:'Cormorant Garamond',serif;font-size:.72rem;font-style:italic;color:rgba(245,240,232,.6);margin-top:6px;position:relative;z-index:1;}
.issue-cover-cross{font-size:1.8rem;color:rgba(212,169,58,.5);position:relative;z-index:1;margin-bottom:10px;font-family:'Cormorant Garamond',serif;}
.issue-info{padding:14px 16px 16px;flex:1;display:flex;flex-direction:column;gap:8px;}
.issue-period{font-size:.78rem;font-weight:700;color:var(--text2);letter-spacing:.03em;}
.issue-meta{font-size:.71rem;color:var(--text3);}
.issue-btn{display:block;margin:0 16px 16px;padding:8px 12px;text-align:center;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-radius:var(--radius);transition:all var(--tr);}
.issue-btn-pdf{background:var(--burgundy);color:var(--ivory);}
.issue-btn-pdf:hover{background:var(--burgundy2);}
.issue-btn-placeholder{background:var(--ivory2);color:var(--text3);border:1px solid var(--ivory3);cursor:default;}

/* ── MESSAGGI AUDIO ──────────────────────────────────── */
.audio-list{display:flex;flex-direction:column;gap:1px;}
.audio-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:16px;background:var(--ivory);padding:16px 20px;border-left:3px solid transparent;transition:border-color var(--tr),background var(--tr);}
.audio-row:hover{border-left-color:var(--gold);background:var(--ivory2);}
.audio-row:first-child{border-radius:var(--radius) var(--radius) 0 0;}
.audio-row:last-child{border-radius:0 0 var(--radius) var(--radius);}
.audio-period{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--text);}
.audio-meta{font-size:.72rem;color:var(--text3);margin-top:2px;display:flex;gap:12px;align-items:center;}
.audio-meta-sep{color:var(--ivory3);}
.audio-player{flex-shrink:0;}
.audio-player audio{height:32px;border-radius:var(--radius);accent-color:var(--burgundy);}
.audio-download{flex-shrink:0;font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text3);text-decoration:none;border:1px solid var(--ivory3);padding:5px 12px;border-radius:var(--radius);transition:all var(--tr);white-space:nowrap;}
.audio-download:hover{border-color:var(--burgundy);color:var(--burgundy);}
@media(max-width:680px){.audio-row{grid-template-columns:1fr;gap:10px;}.audio-player audio{width:100%;}}

/* ── PUBBLICAZIONI ───────────────────────────────────── */
.pub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
@media(max-width:960px){.pub-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.pub-grid{grid-template-columns:1fr;}}
.pub-card{background:var(--white);border:1px solid var(--ivory3);border-top:3px solid var(--ivory3);transition:border-top-color var(--tr),box-shadow var(--tr);overflow:hidden;}
.pub-card:hover{border-top-color:var(--gold);box-shadow:0 4px 16px rgba(92,26,26,.07);}
.pub-cover{aspect-ratio:3/4;background:var(--ivory2);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;}
.pub-cover img{width:100%;height:100%;object-fit:cover;}
.pub-cover-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;text-align:center;}
.pub-cover-icon{font-size:2rem;color:var(--gold);opacity:.4;}
.pub-cover-note{font-family:'Cormorant Garamond',serif;font-size:.82rem;font-style:italic;color:var(--text3);}
.pub-body{padding:16px;}
.pub-title{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--burgundy);margin-bottom:6px;line-height:1.3;}
.pub-desc{font-size:.78rem;color:var(--text3);line-height:1.65;}

/* ── TESTIMONIANZE ───────────────────────────────────── */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media(max-width:900px){.testi-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.testi-grid{grid-template-columns:1fr;}}
.testi-card{background:var(--white);border:1px solid var(--ivory3);padding:24px;position:relative;}
.testi-card-quote{font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;color:var(--text2);line-height:1.75;margin-bottom:16px;}
.testi-card-author{font-size:.78rem;font-weight:700;color:var(--burgundy);}
.testi-card-location{font-size:.72rem;color:var(--text3);}
.testi-card-parish{font-size:.72rem;color:var(--text3);font-style:italic;}

/* ── EVENTI ──────────────────────────────────────────── */
.avviso-card{background:var(--white);border:1px solid var(--ivory3);border-left:3px solid var(--gold);padding:20px 22px;margin-bottom:12px;}
.avviso-card-label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;display:block;}
.avviso-card-title{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;color:var(--burgundy);margin-bottom:12px;}
.ricorrente-card{background:var(--ivory);border:1px solid var(--ivory3);padding:22px 24px;margin-bottom:12px;}
.ricorrente-card-freq{font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
.ricorrente-card-title{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:var(--burgundy);margin-bottom:10px;line-height:1.3;}
.ricorrente-card-detail{font-size:.84rem;color:var(--text2);line-height:1.75;}
.ricorrente-card-detail strong{color:var(--burgundy);display:block;}

/* ── CONTATTI ────────────────────────────────────────── */
.contatti-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px;}
@media(max-width:768px){.contatti-grid{grid-template-columns:1fr;}}
.contatto-card{background:var(--white);border:1px solid var(--ivory3);padding:22px;text-align:center;}
.contatto-icon{font-size:1.5rem;margin-bottom:10px;display:block;}
.contatto-title{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--burgundy);margin-bottom:6px;}
.contatto-text{font-size:.8rem;color:var(--text2);line-height:1.65;}
.contatto-text a{color:var(--burgundy2);text-decoration:none;}
.contatto-text a:hover{color:var(--gold);}
.ricevimento-note{max-width:640px;margin:20px auto 0;background:var(--white);border:1px solid var(--ivory3);border-left:3px solid var(--gold);padding:16px 20px;font-size:.85rem;color:var(--text2);line-height:1.75;text-align:center;}

/* ── OFFERTE ─────────────────────────────────────────── */
.offerte{background:var(--burgundy);padding:48px 0;text-align:center;}
.offerte-box{max-width:500px;margin:0 auto;}
.offerte-box .section-label{color:var(--gold2);}
.offerte-box .section-title{color:var(--ivory);}
.offerte-box p{font-size:.88rem;color:rgba(245,240,232,.7);margin:12px 0 22px;line-height:1.75;}

/* ── FOOTER ──────────────────────────────────────────── */
footer{background:var(--text);padding:36px 0 20px;text-align:center;}
.footer-logo{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--ivory);margin-bottom:4px;}
.footer-sub{font-size:.68rem;letter-spacing:.08em;color:var(--gold);margin-bottom:18px;}
.footer-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;list-style:none;margin-bottom:20px;}
.footer-links a{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(245,240,232,.38);text-decoration:none;transition:color var(--tr);}
.footer-links a:hover{color:var(--gold2);}
.footer-copy{font-size:.67rem;color:rgba(245,240,232,.18);border-top:1px solid rgba(245,240,232,.08);padding-top:16px;margin-top:16px;}

/* ── HOMEPAGE SPECIFICI ──────────────────────────────── */
.audio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px;}
@media(max-width:600px){.audio-grid{grid-template-columns:1fr;}}
.audio-card{background:rgba(255,255,255,.07);border:1px solid rgba(184,146,42,.2);padding:16px;transition:background var(--tr);}
.audio-card:hover{background:rgba(184,146,42,.1);}
.audio-title{font-family:'Cormorant Garamond',serif;font-size:.95rem;font-weight:600;color:var(--ivory);margin-bottom:4px;}
.audio-meta{font-size:.72rem;color:rgba(245,240,232,.5);margin-bottom:8px;}
.audio-card audio{width:100%;accent-color:var(--burgundy);}

.evento-item{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:start;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1);}
.evento-item:last-child{border-bottom:none;}
.evento-date{background:rgba(255,255,255,.12);border:1px solid rgba(184,146,42,.3);color:var(--ivory);padding:8px 6px;text-align:center;}
.evento-date-day{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:600;line-height:1;display:block;}
.evento-date-month{font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold2);display:block;margin-top:2px;}
.evento-body h4{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--ivory);margin-bottom:3px;}
.evento-body p{font-size:.83rem;color:rgba(245,240,232,.7);}
.evento-luogo{font-size:.72rem;color:rgba(245,240,232,.5);margin-top:3px;display:block;}

.pdf-frame{margin-top:24px;border:2px dashed var(--parchment);background:var(--ivory3);border-radius:var(--radius);width:100%;max-width:550px;height:700px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;position:relative;overflow:hidden;}
.pdf-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}
.pdf-frame-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px;}
.pdf-frame-icon{width:48px;height:56px;background:var(--burgundy);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:var(--gold2);letter-spacing:.05em;border-radius:2px;flex-shrink:0;}
.pdf-frame-label{font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--text3);font-style:italic;}
.pdf-frame-sub{font-size:.75rem;color:var(--parchment);}

.pdf-item{display:flex;align-items:center;gap:12px;padding:10px 14px;margin-bottom:8px;background:var(--white);border:1px solid var(--ivory3);text-decoration:none;transition:border-color var(--tr);}
.pdf-item:hover{border-color:var(--gold);}
.pdf-icon{width:32px;height:32px;flex-shrink:0;background:var(--burgundy);display:flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:700;color:var(--gold2);}
.pdf-title{font-size:.83rem;font-weight:700;color:var(--text);display:block;}
.pdf-sub{font-size:.72rem;color:var(--text3);}

.santuario-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
@media(max-width:768px){.santuario-grid{grid-template-columns:1fr;gap:28px;}}
.santuario-img{background:var(--ivory3);border:1px solid var(--parchment);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:.95rem;font-style:italic;color:var(--text3);text-align:center;padding:20px;position:relative;}
.santuario-img::before{content:'✝';position:absolute;top:12px;right:16px;font-size:1.3rem;color:var(--gold);opacity:.4;}
.santuario-text p{font-size:.9rem;color:var(--text2);line-height:1.8;margin-bottom:14px;}

/* ── CHI SIAMO PAGE ──────────────────────────────────── */
.st-body{max-width:780px;}
.st-quote{border-left:3px solid var(--gold);padding:12px 20px;margin:24px 0;font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-style:italic;color:var(--burgundy2);line-height:1.6;}
.st-chiusura{margin-top:28px;padding:20px 24px;background:var(--ivory2);border-radius:var(--radius);font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-style:italic;color:var(--burgundy);text-align:center;letter-spacing:.02em;}
.sorella-teresa .section-title{font-size:clamp(1.8rem,3vw,2.4rem);}
.missionarie{background:var(--burgundy);}
.missionarie .section-title{color:var(--ivory);}
.missionarie .section-label{color:var(--gold2);}
.missionarie p{color:rgba(245,240,232,.75);}
.missionarie-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:32px;}
@media(max-width:768px){.missionarie-grid{grid-template-columns:1fr;gap:28px;}}
.missionarie-col p{color:rgba(245,240,232,.75);}
.missionarie-highlight{margin-top:36px;padding:24px 28px;border:1px solid rgba(184,146,42,.25);background:rgba(255,255,255,.05);}
.missionarie-highlight p{color:rgba(245,240,232,.7);font-size:.88rem;margin-bottom:8px;}
.missionarie-highlight p:last-child{margin-bottom:0;}
.missionarie-highlight strong{color:var(--gold2);}

.regola{background:var(--ivory2);}
.regola-inner{max-width:820px;margin:0 auto;}
.regola-invocazione{text-align:center;margin-bottom:40px;padding:32px;background:var(--white);border:1px solid var(--ivory3);border-top:3px solid var(--gold);}
.regola-invocazione p{font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;color:var(--burgundy2);line-height:2;margin-bottom:0;text-align:center;}
.regola-invocazione strong{font-family:'Cormorant Garamond',serif;font-size:1.05rem;color:var(--burgundy);display:block;margin-bottom:12px;font-style:normal;}
.regola-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:2px;}
@media(max-width:640px){.regola-grid{grid-template-columns:1fr;}}
.regola-col{background:var(--white);padding:28px;}
.regola-col ul{list-style:none;padding:0;}
.regola-col ul li{font-size:.88rem;color:var(--text2);line-height:1.8;padding:8px 0;border-bottom:1px solid var(--ivory3);display:flex;gap:10px;align-items:baseline;}
.regola-col ul li:last-child{border-bottom:none;}
.regola-col ul li::before{content:'✦';color:var(--gold);font-size:.55rem;flex-shrink:0;margin-top:4px;}
.regola-chiusura{margin-top:2px;background:var(--burgundy);padding:24px;text-align:center;}
.regola-chiusura p{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-style:italic;color:var(--ivory);margin-bottom:0;line-height:1.8;}
.regola-chiusura strong{color:var(--gold2);font-style:normal;}

/* ── ATTIVITÀ PAGE ───────────────────────────────────── */
.missioni-intro{max-width:680px;margin-bottom:40px;}
.ritiri-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px;}
@media(max-width:640px){.ritiri-grid{grid-template-columns:1fr;}}
.ritiro-card{border:1px solid var(--ivory3);border-top:3px solid var(--gold);padding:28px;background:var(--ivory);}
.ritiro-card-label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;display:block;}
.ritiro-card-title{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;color:var(--burgundy);margin-bottom:14px;line-height:1.3;}
.ritiro-card-detail{font-size:.85rem;color:var(--text2);line-height:1.8;}
.ritiro-card-detail strong{color:var(--burgundy);display:block;margin-bottom:2px;}

.accoglienza{background:var(--burgundy);}
.accoglienza .section-label{color:var(--gold2);}
.accoglienza .section-title{color:var(--ivory);}
.accoglienza-list{list-style:none;margin-top:28px;display:flex;flex-direction:column;gap:12px;}
.accoglienza-list li{display:flex;gap:14px;align-items:baseline;font-size:.92rem;color:rgba(245,240,232,.78);line-height:1.75;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.07);}
.accoglienza-list li:last-child{border-bottom:none;padding-bottom:0;}
.accoglienza-list li::before{content:'✦';color:var(--gold2);font-size:.55rem;flex-shrink:0;margin-top:5px;}
.accoglienza-highlight{margin-top:32px;padding:20px 24px;border:1px solid rgba(184,146,42,.3);background:rgba(255,255,255,.05);font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-style:italic;color:var(--gold2);line-height:1.6;}

.convegno{background:var(--ivory2);}
.convegno-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:8px;}
@media(max-width:640px){.convegno-grid{grid-template-columns:1fr;}}
.convegno-box{background:var(--white);padding:32px 28px;border:1px solid var(--ivory3);}
.convegno-box-label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;display:block;}
.convegno-box-title{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:400;color:var(--burgundy);margin-bottom:16px;line-height:1.3;}
.convegno-box ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px;}
.convegno-box ul li{font-size:.88rem;color:var(--text2);line-height:1.75;display:flex;gap:10px;align-items:baseline;}
.convegno-box ul li::before{content:'✦';color:var(--gold);font-size:.52rem;flex-shrink:0;margin-top:4px;}

.altre{background:var(--white);}
.altre-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px;}
@media(max-width:900px){.altre-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.altre-grid{grid-template-columns:1fr;}}
.altra-card{padding:22px 20px;background:var(--ivory);border:1px solid var(--ivory3);border-top:3px solid var(--gold);text-align:center;}
.altra-card-mese{font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;}
.altra-card-title{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--burgundy);font-weight:600;}

.pellegrinaggi{background:var(--ivory2);}
.pelleg-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px;}
@media(max-width:640px){.pelleg-grid{grid-template-columns:1fr;}}
.pelleg-card{padding:28px;background:var(--white);border:1px solid var(--ivory3);display:flex;gap:18px;align-items:start;}
.pelleg-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px;}
.pelleg-title{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:var(--burgundy);margin-bottom:6px;}
.pelleg-detail{font-size:.85rem;color:var(--text2);line-height:1.75;}

/* ── TESTIMONIANZE PAGE ──────────────────────────────── */
.intro{background:var(--white);padding:48px 0;}
.intro-inner{max-width:680px;}
.testimonianze{background:var(--ivory2);}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;}
@media(max-width:900px){.testi-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.testi-grid{grid-template-columns:1fr;}}
.testi-card{background:var(--white);border:1px solid var(--ivory3);border-top:3px solid var(--gold);padding:28px 26px;display:flex;flex-direction:column;gap:16px;}
.testi-card-location{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);}
.testi-card-author{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--burgundy);line-height:1.3;}
.testi-card-parish{font-size:.78rem;color:var(--text3);margin-top:2px;font-style:italic;}
.testi-card-quote{font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;color:var(--text2);line-height:1.75;border-left:2px solid var(--gold);padding-left:14px;flex:1;}
.intro .section-title{font-size:clamp(1.8rem,3vw,2.4rem);}

/* ── SANTUARIO NASCOSTO PAGE ─────────────────────────── */
.subnav{position:fixed;top:56px;left:0;right:0;z-index:90;background:rgba(245,240,232,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--ivory3);overflow-x:auto;}
.subnav-inner{max-width:1100px;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:0;height:40px;}
.subnav-inner a{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);text-decoration:none;white-space:nowrap;padding:0 14px;height:40px;display:flex;align-items:center;border-bottom:2px solid transparent;transition:all var(--tr);}
.subnav-inner a:hover{color:var(--burgundy);border-bottom-color:var(--gold);}
.subnav-inner a.sub-active{color:var(--burgundy);border-bottom-color:var(--gold);}

.sec-white{background:var(--white);}
.sec-ivory{background:var(--ivory2);}
.sec-burgundy{background:var(--burgundy);}
.sec-burgundy .section-label{color:var(--gold2);}
.sec-burgundy .section-title{color:var(--ivory);}
.sec-burgundy p{color:rgba(245,240,232,.75);}
.sec-burgundy p strong{color:var(--gold2);font-style:normal;}

.data-badge{display:inline-flex;align-items:baseline;gap:8px;margin-bottom:24px;}
.data-badge-day{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;color:var(--gold);line-height:1;}
.data-badge-rest{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);line-height:1.3;}

.citazione{border-left:3px solid var(--gold);padding:12px 20px;margin:24px 0;font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-style:italic;color:var(--burgundy2);line-height:1.75;}

.messaggio-card{background:var(--white);border:1px solid var(--ivory3);border-top:3px solid var(--gold);padding:28px;margin-bottom:20px;}
.messaggio-card:last-child{margin-bottom:0;}
.messaggio-card-data{font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.messaggio-card p{color:var(--text2);}
.messaggio-card p strong{color:var(--burgundy);font-style:italic;}

.desidero-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:12px;margin-top:16px;}
.desidero-list li{display:flex;gap:14px;align-items:baseline;font-size:.92rem;color:var(--text2);line-height:1.8;}
.desidero-list li::before{content:'✦';color:var(--gold);font-size:.55rem;flex-shrink:0;margin-top:5px;}
.desidero-list li strong{color:var(--burgundy);}

.blerina-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:32px;}
@media(max-width:768px){.blerina-grid{grid-template-columns:1fr;}}
.blerina-box{background:var(--white);border:1px solid var(--ivory3);padding:28px;}
.blerina-box-label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;display:block;}
.blerina-box-author{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;color:var(--burgundy);margin-bottom:4px;}
.blerina-box-role{font-size:.78rem;color:var(--text3);font-style:italic;margin-bottom:16px;}
.blerina-box p{font-size:.88rem;}

.cta-contatti{background:var(--burgundy);padding:52px 0;text-align:center;}
.cta-contatti h3{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:300;color:var(--ivory);margin-bottom:12px;}
.cta-contatti p{color:rgba(245,240,232,.65);font-size:.9rem;margin-bottom:24px;}

.sec-white .section-title,
.sec-ivory .section-title,
.sec-burgundy .section-title{font-size:clamp(1.8rem,3vw,2.4rem);}
.sec-burgundy .messaggio-card p strong{color:var(--gold2);font-style:italic;}
.sec-white .citazione-pellegrini{margin:70px 0;}

/* ── EVENTI PAGE ─────────────────────────────────────── */
.avvisi{background:var(--white);}
.avvisi .avviso-card{background:var(--ivory);}
.avviso-card a{color:var(--burgundy2);font-weight:700;}
.ricorrenti{background:var(--ivory2);}
.ricorrenti-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
@media(max-width:768px){.ricorrenti-grid{grid-template-columns:1fr;}}
.ricorrente-card{background:var(--white);padding:28px 24px;border:1px solid var(--ivory3);border-top:3px solid var(--gold);text-align:center;}
.calendario{background:var(--white);}
.cal-table{width:100%;border-collapse:collapse;margin-top:28px;font-size:.86rem;}
.cal-table thead th{background:var(--burgundy);color:var(--ivory);font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:10px 14px;text-align:left;}
.cal-table tbody tr{border-bottom:1px solid var(--ivory3);}
.cal-table tbody tr:last-child{border-bottom:none;}
.cal-table tbody tr.month-header td{background:var(--ivory2);font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--burgundy);padding:10px 14px;letter-spacing:.06em;text-transform:uppercase;}
.cal-table tbody td{padding:10px 14px;color:var(--text2);vertical-align:top;}
.cal-table tbody td:first-child{font-weight:700;color:var(--burgundy);white-space:nowrap;width:60px;}
.cal-table tbody td:nth-child(2){color:var(--text3);font-size:.8rem;width:120px;}
.cal-table tbody td:nth-child(3){font-style:italic;color:var(--gold);font-size:.82rem;}
.zoom-section{background:var(--burgundy);padding:52px 0;}
.zoom-inner{max-width:680px;margin:0 auto;text-align:center;}
.zoom-icon{font-size:2.5rem;margin-bottom:16px;}
.zoom-title{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:300;color:var(--ivory);margin-bottom:8px;}
.zoom-detail{font-size:.92rem;color:rgba(245,240,232,.7);margin-bottom:20px;line-height:1.8;}
.zoom-tel{display:inline-block;font-size:1rem;font-weight:700;color:var(--gold2);letter-spacing:.04em;}
.comunita{background:var(--ivory2);}
.comunita-box{background:var(--white);border:1px solid var(--ivory3);border-top:3px solid var(--gold);padding:32px;max-width:780px;}
.benefattori{background:var(--burgundy);padding:48px 0;text-align:center;}
.benefattori p{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-style:italic;color:rgba(245,240,232,.85);line-height:1.8;max-width:620px;margin:0 auto;}

/* ── PUBBLICAZIONI PAGE ──────────────────────────────── */
.pubblicazioni{background:var(--white);}
.pub-card{background:var(--ivory);}
.pub-body{border-top:3px solid var(--gold);}
.richiedi{background:var(--burgundy);padding:52px 0;}
.richiedi-inner{max-width:680px;margin:0 auto;text-align:center;}
.richiedi-title{font-family:'Cormorant Garamond',serif;font-size:1.9rem;font-weight:300;color:var(--ivory);margin-bottom:10px;}
.richiedi-subtitle{font-size:.88rem;color:rgba(245,240,232,.65);margin-bottom:36px;}
.richiedi-contacts{display:flex;flex-direction:column;gap:16px;}
.richiedi-contact-item{display:flex;align-items:center;justify-content:center;gap:16px;}
.richiedi-contact-label{font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);width:80px;text-align:right;flex-shrink:0;line-height:1.5;}
.richiedi-contact-value{font-size:.9rem;color:rgba(245,240,232,.85);font-weight:700;text-align:left;}
.richiedi-contact-value a{color:rgba(245,240,232,.85);text-decoration:none;}
.richiedi-contact-value a:hover{color:var(--gold2);}

/* ── CONTATTI PAGE ───────────────────────────────────── */
.contatti-gen{background:var(--white);}
.contatti-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
@media(max-width:640px){.contatti-grid{grid-template-columns:1fr;}}
.contatto-card{background:var(--ivory);border:1px solid var(--ivory3);border-top:3px solid var(--gold);padding:24px 22px;text-align:center;}
.contatto-card-icon{font-size:1.4rem;margin-bottom:10px;}
.contatto-card-label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
.contatto-card-value{font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--burgundy);line-height:1.6;}
.contatto-card-value a{color:var(--burgundy);text-decoration:none;}
.contatto-card-value a:hover{color:var(--gold);}
.case{background:var(--ivory2);}
.casa-card{background:var(--white);border:1px solid var(--ivory3);margin-bottom:40px;}
.casa-card:last-child{margin-bottom:0;}
.casa-header{background:var(--burgundy);padding:20px 28px;display:flex;align-items:baseline;gap:16px;}
.casa-header-num{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:300;color:var(--gold);line-height:1;flex-shrink:0;}
.casa-header-title{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;color:var(--ivory);line-height:1.3;}
.casa-header-address{font-size:.78rem;color:rgba(245,240,232,.6);margin-top:2px;}
.casa-header-tel{font-size:.78rem;color:var(--gold2);margin-top:2px;}
.casa-body{display:grid;grid-template-columns:1fr 1fr;gap:0;}
@media(max-width:640px){.casa-body{grid-template-columns:1fr;}}
.casa-info{padding:28px;border-right:1px solid var(--ivory3);}
@media(max-width:640px){.casa-info{border-right:none;border-bottom:1px solid var(--ivory3);}}
.casa-info-block{margin-bottom:20px;}
.casa-info-block:last-child{margin-bottom:0;}
.casa-info-label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;}
.casa-info-text{font-size:.88rem;color:var(--text2);line-height:1.8;}
.casa-info-text a{color:var(--burgundy2);font-weight:700;text-decoration:none;}
.casa-info-text a:hover{color:var(--gold);}
.casa-map{overflow:hidden;}
.casa-map iframe{width:100%;height:100%;min-height:280px;border:none;display:block;filter:sepia(20%) contrast(95%);}

/* ── LETTERE — override sidebar ──────────────────────── */
.lettere-layout { max-width: 1100px; margin: 0 auto; padding: 52px 28px; }
.lettere-layout .lettere-sidebar { position: sticky; top: 108px; }
.lettere-layout .sidebar-title { font-size: .62rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--gold); margin-bottom: 14px; display: block; }
.lettere-layout .sidebar-years { list-style: none; }
.lettere-layout .sidebar-years li { border-bottom: 1px solid var(--ivory3); }
.lettere-layout .sidebar-years li:last-child { border-bottom: none; }
.lettere-layout .sidebar-years li a { display: flex; align-items: center; justify-content: space-between; padding: 10px 0; border-left: none; font-family: 'Cormorant Garamond', serif; font-size: 1rem; font-weight: 700; color: var(--text2); text-decoration: none; transition: color var(--tr); }
.lettere-layout .sidebar-years li a:hover, .lettere-layout .sidebar-years li a.current { color: var(--burgundy); border-left: none; }
.lettere-layout .sidebar-years li a span { font-size: .62rem; color: var(--text3); font-family: 'Lato', sans-serif; font-weight: 400; letter-spacing: .06em; }

/* ── LETTERE — year nav scuro ────────────────────────── */
.lettere-year-nav { background: var(--burgundy2); border-bottom: 1px solid rgba(184,146,42,.2); }
.lettere-year-nav .year-nav-inner a { color: rgba(245,240,232,.5); text-decoration: none; font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: 4px 10px; border-radius: 2px; transition: all var(--tr); white-space: nowrap; flex-shrink: 0; }
.lettere-year-nav .year-nav-inner a:hover, .lettere-year-nav .year-nav-inner a.current { color: var(--gold2); background: rgba(184,146,42,.15); }