/* =====================================================
   blog-stile.css
   Foglio di stile comune per tutte le pagine del blog
   Posizione: https://www.alisei.net/blog/blog-stile.css

   NOTA: non aggiungere CSS specifico di singolo articolo
   in questo file. Ogni pagina include solo questo foglio
   esterno; nessun <style> inline è necessario.
   ===================================================== */

/* ═══════════════════════════════════════════════
   VARIABILI
═══════════════════════════════════════════════ */
:root{
  --t       :#527A42;
  --s       :#A0C878;
  --cr      :#F6FAF2;
  --dk      :#162014;
  --md      :#2E4428;
  --ls      :#E8F4E0;
  --ac      :#3A5A2E;
  --tx      :#1A2816;
  --card-odd :#E8F4E0;
  --card-even:#D7EBC9;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--cr);}
.hp{font-family:'Source Serif 4',Georgia,serif;font-weight:300;color:var(--tx);font-size:16px;line-height:1.7;}

/* ═══════════════════════════════════════════════
   NAV — menu dinamico da menu.csv
═══════════════════════════════════════════════ */
nav.topbar{position:sticky;top:0;z-index:100;background:var(--dk);padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:56px;}
.logo-img{height:32px;display:block;}
.nav-links{display:flex;gap:0;list-style:none;align-items:stretch;}
.nav-links>li{position:relative;display:flex;align-items:stretch;}
.nav-links>li>a,.nav-links>li>button.nav-parent{display:flex;align-items:center;gap:.3rem;padding:0 1rem;color:rgba(236,246,228,.75);text-decoration:none;font-family:'Source Serif 4',serif;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;transition:color .2s,background .2s;background:none;border:none;cursor:pointer;height:56px;white-space:nowrap;}
.nav-links>li>a:hover,.nav-links>li>button.nav-parent:hover,.nav-links>li.open>button.nav-parent{color:#fff;background:rgba(255,255,255,.06);}
.nav-dropdown{display:none;position:absolute;top:56px;left:0;min-width:200px;background:var(--dk);list-style:none;border-top:2px solid var(--t);z-index:200;}
.nav-links>li.open .nav-dropdown{display:block;}
.nav-dropdown li a{display:block;padding:.65rem 1.2rem;color:rgba(236,246,228,.75);text-decoration:none;font-size:.80rem;letter-spacing:.10em;text-transform:uppercase;white-space:nowrap;}
.nav-dropdown li a:hover{color:#fff;background:rgba(255,255,255,.06);}
.hamburger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px;}
.hamburger span{display:block;width:22px;height:2px;background:var(--s);}
@media(max-width:700px){
  .nav-links{display:none;flex-direction:column;align-items:stretch;position:fixed;top:56px;left:0;right:0;background:var(--dk);padding:.5rem 0 1rem;z-index:99;gap:0;}
  .nav-links.open{display:flex;}
  .nav-links>li>a,.nav-links>li>button.nav-parent{height:auto;padding:.75rem 1.5rem;width:100%;justify-content:space-between;}
  .nav-dropdown{position:static;border-top:none;border-left:3px solid var(--t);margin-left:1rem;}
  .nav-links>li.open .nav-dropdown{display:block;}
  .hamburger{display:flex;}
}

/* ═══════════════════════════════════════════════
   HERO
═══════════════════════════════════════════════ */
.hero{position:relative;height:86vh;min-height:420px;display:flex;align-items:flex-end;overflow:hidden;background:#000000;}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.65;transform:scale(1.04);animation:hz 14s ease-out forwards;}
@media(max-width:700px){.hero-img{object-position:50% center;}}
@keyframes hz{to{transform:scale(1);}}
.hero-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.28) 50%,transparent 100%);}
.hero-content{position:relative;z-index:2;padding:2.5rem 2.5rem 3.5rem;max-width:800px;animation:fu 1s .3s both;}
@keyframes fu{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}
.hero-ey{font-size:1.05rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.90);margin-bottom:.9rem;display:flex;align-items:center;gap:.75rem;white-space:nowrap;font-weight:300;font-family:'Source Serif 4',Georgia,serif;}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,5vw,4.2rem);font-weight:400;color:var(--cr);line-height:1.1;margin-bottom:.9rem;}
.hero h1 em{font-style:italic;color:var(--s);}
.hero-sub{font-size:1.08rem;color:rgba(236,246,228,.72);font-style:italic;max-width:580px;line-height:1.7;}

/* ═══════════════════════════════════════════════
   BREADCRUMB
═══════════════════════════════════════════════ */
.breadcrumb{padding:.65rem 2.5rem;font-size:.82rem;color:var(--md);display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;}
.breadcrumb a{color:var(--t);text-decoration:none;}
.breadcrumb a:hover{text-decoration:underline;}
.sep{color:var(--t);font-size:.7rem;}

/* ── SEC-LABEL ── */
.sec-label{font-size:.90rem;letter-spacing:.18em;text-transform:uppercase;color:var(--t);display:flex;align-items:center;gap:.55rem;margin-bottom:.75rem;font-weight:300;font-family:'Source Serif 4',Georgia,serif;}
.sec-label::after{content:'';flex:1;height:1px;background:var(--s);opacity:.55;}

/* ═══════════════════════════════════════════════
   FASCIA INTRO
═══════════════════════════════════════════════ */
.intro-fascia{display:grid;grid-template-columns:1fr 2fr;gap:0;align-items:start;background:transparent;}
.intro-left{padding:2rem 1.5rem 2rem 2.5rem;display:flex;flex-direction:column;gap:1rem;align-items:flex-start;}

/* due foto quadrate affiancate — scalano con la colonna */
.intro-foto-wrap{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;width:100%;}
.intro-foto-box{aspect-ratio:1/1;overflow:hidden;border-radius:2px;}
.intro-foto{width:100%;height:100%;object-fit:cover;display:block;}

/* ── MENÙ ARTICOLO ── */
.art-menu-wrap{padding:.9rem 2.5rem;background:var(--cr);}
.art-menu--mobile{display:none;}
.art-menu--desktop{display:block;}
@media(max-width:900px){
  .art-menu--mobile{display:block;}
  .art-menu--desktop{display:none;}
}
.art-menu{width:100%;border:.5px solid rgba(82,122,66,.35);border-radius:3px;overflow:hidden;font-family:'Source Serif 4',Georgia,serif;}
.art-menu summary{list-style:none;background:var(--md);padding:.65rem 1rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cr);cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none;}
.art-menu summary::-webkit-details-marker{display:none;}
.art-menu summary::after{content:'▾';font-size:1.4rem;color:var(--s);transition:transform .25s;display:inline-block;line-height:1;}
.art-menu[open] summary::after{transform:rotate(180deg);}
.art-menu summary:hover{background:var(--ac);}
.art-menu-list{list-style:none;background:var(--ls);padding:.35rem 0;}
.art-menu-list li a{display:block;padding:.42rem 1rem;font-size:.82rem;color:var(--md);text-decoration:none;border-bottom:.5px solid rgba(82,122,66,.1);transition:background .15s,color .15s;line-height:1.4;}
.art-menu-list li:last-child a{border-bottom:none;}
.art-menu-list li a:hover{background:var(--ls);color:var(--t);}

.intro-right{padding:0 2.5rem 2rem 1.5rem;margin-top:-3rem;position:relative;z-index:2;}
.intro-card{background:var(--card-odd);border-radius:6px;padding:2rem 2.2rem;border:.5px solid rgba(82,122,66,.2);}
.intro-card .sec-label{margin-bottom:.8rem;}
.intro-card h2{font-family:'Playfair Display',serif;font-size:1.65rem;font-weight:400;color:var(--md);line-height:1.25;margin-bottom:1.1rem;}
.intro-card p{font-size:1rem;color:var(--md);line-height:1.78;opacity:.9;margin-bottom:.9rem;}
.intro-card p:last-child{margin-bottom:0;}

/* ═══════════════════════════════════════════════
   CORPO ARTICOLO
═══════════════════════════════════════════════ */
.art-body{max-width:940px;margin:0 auto;padding:3rem 2.5rem;}
.art-sezione{display:flex;align-items:baseline;gap:1rem;margin:3rem 0 1.2rem;padding-bottom:.6rem;border-bottom:.5px solid rgba(82,122,66,.25);}
.art-sezione:first-child{margin-top:0;}
.art-sezione-n{font-family:'Playfair Display',serif;font-size:3.5rem;font-weight:400;color:rgba(82,122,66,.18);line-height:1;flex-shrink:0;user-select:none;}
.art-sezione-title{font-family:'Playfair Display',serif;font-size:1.55rem;font-weight:400;color:var(--md);line-height:1.2;}
.art-body p{font-size:1.05rem;color:var(--tx);line-height:1.82;margin-bottom:1.1rem;}
.art-body p:last-child{margin-bottom:0;}
.art-body strong{font-weight:400;color:var(--md);}

.art-pullquote{margin:2rem 0;padding:1.2rem 1.8rem;border-left:3px solid var(--t);background:var(--ls);border-radius:0 4px 4px 0;clear:both;}
.art-pullquote p{font-family:'Playfair Display',serif;font-size:1.2rem;font-style:italic;color:var(--md);line-height:1.6;margin:0;opacity:1;}
.art-pullquote cite{display:block;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--t);margin-top:.6rem;font-style:normal;}

.art-infobox{margin:2rem 0;border:.5px solid rgba(82,122,66,.3);border-top:2px solid var(--t);border-radius:0 0 4px 4px;background:var(--ls);padding:1.2rem 1.5rem;}
.art-infobox-title{font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;color:var(--t);margin-bottom:.8rem;font-weight:400;}
.art-infobox dl{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;}
.art-infobox dt{font-size:.88rem;color:var(--t);font-weight:400;}
.art-infobox dd{font-size:.88rem;color:var(--md);}

/* ── FOTO ── */
figure.foto-dx{float:right;margin:0 0 1.5rem 2rem;clear:right;}
figure.foto-sx{float:left;margin:0 2rem 1.5rem 0;clear:left;}
figure.foto-sm{width:220px;}
figure.foto-md{width:420px;}
figure.foto-lg{width:520px;}
figure.foto-center{width:100%;max-width:580px;margin:2rem auto;clear:both;}
figure.foto-full{width:calc(100% + 5rem);margin:2.5rem -2.5rem;clear:both;}
figure img{width:100%;height:auto;display:block;border-radius:2px;object-fit:cover;}
figure.foto-dx img,figure.foto-sx img{aspect-ratio:4/3;}
figure.foto-center img{aspect-ratio:16/9;}
figure.foto-full img{aspect-ratio:21/9;object-fit:cover;}
figcaption{font-size:.78rem;color:var(--ac);font-style:italic;margin-top:.45rem;line-height:1.4;text-align:center;}
.art-body::after,.art-sezione-wrap::after{content:'';display:table;clear:both;}

/* ── GRIGLIE FOTO ── */
.foto-griglia{display:grid;gap:.5rem;margin:2rem 0;clear:both;}
.foto-griglia.col-2{grid-template-columns:1.4fr 1fr;}
.foto-griglia.col-2-inv{grid-template-columns:1fr 1.4fr;}
.foto-griglia.col-3{grid-template-columns:1.3fr 1fr 1.5fr;}
.foto-griglia figure{margin:0;}
.foto-griglia figure img{aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:2px;}
/* griglia ritratto — foto verticali affiancate */
.foto-griglia.col-portrait{grid-template-columns:1fr 1fr;}
.foto-griglia.col-portrait figure img{aspect-ratio:2/3;object-fit:cover;}

/* ═══════════════════════════════════════════════
   SLIDESHOW "Ultimi articoli" + CTA newsletter
   Struttura da borghi-stile.css, colori blog
═══════════════════════════════════════════════ */
.ultimi-section{padding:0 2rem 3rem;}
.ultimi-section+.ultimi-section{margin-top:3rem;}
.articoli-head{margin-bottom:.8rem;}
.articoli-head h2{font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:400;color:var(--md);}
.hero-ss{position:relative;height:340px;overflow:hidden;background:#1E2C1A;}
.ss-slides{display:flex;height:100%;transition:transform .9s cubic-bezier(.77,0,.18,1);}
.ss-slide{flex:0 0 100%;height:100%;position:relative;display:flex;align-items:center;}
.ss-slide .side-accent{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--t);}
.ss-slide .s-num{position:absolute;top:1.8rem;right:2.5rem;font-family:'Playfair Display',serif;font-size:5rem;font-weight:400;color:rgba(160,200,120,.18);line-height:1;user-select:none;pointer-events:none;}
.ss-slide .sc{position:relative;z-index:2;padding:2rem 4.5rem;width:100%;}
.ss-slide .s-ey{font-size:1.0rem;letter-spacing:.2em;text-transform:uppercase;color:var(--s);margin-bottom:.55rem;display:flex;align-items:center;gap:.5rem;}
.ss-slide .s-ey::before{display:none;}
.ss-slide .s-name{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,3rem);font-weight:400;color:var(--cr);line-height:1.05;margin-bottom:.5rem;white-space:nowrap;}
.ss-slide .s-name em{font-style:italic;color:var(--s);}
.ss-slide .s-desc{font-size:.96rem;color:rgba(236,246,228,.68);font-style:italic;line-height:1.72;max-width:640px;}
.ss-slide .s-cta{display:inline-block;margin-top:1rem;background:var(--t);color:#fff;padding:.4rem 1.1rem;font-size:.76rem;letter-spacing:.10em;text-transform:uppercase;cursor:pointer;transition:background .2s;font-family:'Source Serif 4',serif;text-decoration:none;white-space:nowrap;}
.ss-slide .s-cta:hover{background:var(--ac);}
.ss-arr{position:absolute;top:50%;transform:translateY(-50%);background:rgba(22,32,20,.6);border:1px solid rgba(160,200,120,.3);color:rgba(160,200,120,.8);width:38px;height:38px;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s;font-family:serif;flex-shrink:0;}
.ss-arr:hover{background:rgba(160,200,120,.15);border-color:var(--s);color:var(--s);}
.ss-arr.prev{left:.5rem;}
.ss-arr.next{right:.5rem;}
.ss-nav{position:absolute;bottom:1.2rem;right:1.5rem;display:flex;gap:.4rem;z-index:10;}
.ss-dot{width:26px;height:2px;background:rgba(236,246,228,.2);cursor:pointer;transition:background .3s;}
.ss-dot.on{background:var(--s);}

/* CTA newsletter */
.cta-inner{position:relative;height:340px;overflow:hidden;background:#1E2C1A;}
.cta-inner .side-accent{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--t);}
.cta-inner .sc{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 4.5rem;}
.s-ey{font-size:1.0rem;letter-spacing:.15em;text-transform:uppercase;color:var(--s);margin-bottom:.55rem;display:flex;align-items:center;gap:.5rem;white-space:nowrap;}
.s-ey::before{display:none;}
.cta-inner .s-ey{justify-content:center;}
.s-name{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,3rem);font-weight:400;color:var(--cr);line-height:1.1;margin-bottom:.5rem;}
.s-name em{font-style:italic;color:var(--s);}
.s-cta{display:block;margin:1.4rem auto 0;background:var(--t);color:var(--cr);padding:.75rem 2rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-family:'Source Serif 4',serif;text-decoration:none;max-width:280px;text-align:center;transition:background .2s;}
.s-cta:hover{background:var(--ac);}

/* ═══════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════ */
.site-footer{background:#111111;color:rgba(255,255,255,.55);text-align:center;padding:2.5rem 2rem 2rem;font-size:.82rem;}
.site-footer__social-label{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.8rem;color:rgba(255,255,255,.4);}
.site-footer__social-icons{display:flex;justify-content:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap;}
.site-footer__social-icons a{display:block;width:32px;height:32px;border-radius:3px;overflow:hidden;transition:opacity .2s;}
.site-footer__social-icons a:hover{opacity:.75;}
.site-footer__social-icons img{width:32px;height:32px;object-fit:cover;display:block;}
.site-footer__links{margin-bottom:.5rem;}
.site-footer__links a{color:rgba(255,255,255,.5);text-decoration:none;margin:0 .4rem;}
.site-footer__links a:hover{color:#fff;}
.site-footer__copy{color:rgba(255,255,255,.3);}

/* ═══════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════ */
@media(max-width:900px){
  .intro-fascia{grid-template-columns:1fr;}
  .intro-left{order:2;padding:0 1.5rem 1.5rem;}
  .intro-right{order:1;padding:1rem 1.5rem 0;margin-top:0;}
  .art-body{padding:2rem 1.5rem;}
  figure.foto-dx,figure.foto-sx{float:none;width:100%;margin:1.5rem 0;clear:both;}
  figure.foto-dx img,figure.foto-sx img{aspect-ratio:16/9;}
  figure.foto-full{width:100%;margin:1.5rem 0;}
  figure.foto-full img{aspect-ratio:16/9;}
  .foto-griglia.col-3{grid-template-columns:1fr 1fr;}
  .foto-griglia.col-3 figure:last-child{grid-column:1/-1;}
  .ultimi-section{padding:0 1.5rem 2.5rem;}
}
@media(max-width:600px){
  .intro-foto-wrap{grid-template-columns:1fr;}
  .intro-foto-box{aspect-ratio:4/3;}
  .foto-griglia.col-2,.foto-griglia.col-2-inv,.foto-griglia.col-3,.foto-griglia.col-portrait{grid-template-columns:1fr;}
  .foto-griglia.col-portrait figure img{aspect-ratio:auto;height:auto;}
  .foto-griglia.col-3 figure:last-child{grid-column:auto;}
  /* slideshow — identico borghi */
  .hero-ss{height:300px;}
  .cta-inner{height:300px;}
  .ss-slide .s-name{white-space:normal;font-size:1.5rem;}
  .ss-slide .sc{padding:1.6rem 4rem;}
  .ss-slide .s-num{font-size:3rem;top:1rem;right:1rem;opacity:.06;}
  .ss-slide .s-desc{font-size:.88rem;}
  .ss-nav{display:none;}
  .ss-slide .s-cta{margin-top:.4rem;font-size:.70rem;padding:.3rem .8rem;}
  .cta-inner .sc{padding:1.6rem 2rem;}
  .s-name{font-size:1.5rem;}
}
