/* Stile comune della sezione Approfondimenti — stessi colori e caratteri della home */
:root{
  --navy-deep:#070F20; --navy-mid:#0F1E38; --gold:#AD8A4E; --gold-soft:#C9AD79;
  --cream:#F6F2E9; --paper:#FBF9F4; --ink:#16212C; --ink-soft:#4B5A68; --max:1180px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--paper);font-weight:300;line-height:1.75;-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:500;color:var(--navy-deep);letter-spacing:0.01em;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 40px;}
.narrow{max-width:760px;margin:0 auto;padding:0 32px;}
.eyebrow{text-transform:uppercase;letter-spacing:0.28em;font-size:0.7rem;font-weight:500;color:var(--gold);}

/* Intestazione */
header.site{position:sticky;top:0;z-index:100;background:rgba(251,249,244,0.94);backdrop-filter:blur(8px);border-bottom:1px solid rgba(14,33,54,0.08);}
header.site nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:12px;padding-bottom:12px;flex-wrap:wrap;}
.brand{display:flex;align-items:center;gap:16px;}
.brand img{height:64px;width:auto;}
.brand-text span{display:block;font-size:0.65rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-bottom:3px;}
.brand-text b{display:block;font-family:'Pinyon Script',cursive;font-weight:400;font-size:1.7rem;color:var(--navy-deep);line-height:1;white-space:nowrap;}
.nav-links{display:flex;gap:30px;font-size:0.82rem;letter-spacing:0.04em;color:var(--navy-deep);}
.nav-links a{position:relative;padding-bottom:4px;}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold);transition:width 0.3s ease;}
.nav-links a:hover::after,.nav-links a[aria-current="page"]::after{width:100%;}

/* Fascia del titolo */
.page-head{background:var(--navy-deep);color:var(--cream);padding:70px 0 60px;position:relative;overflow:hidden;}
.page-head::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 10%,rgba(173,138,78,0.16),transparent 55%);pointer-events:none;}
.page-head .eyebrow{color:var(--gold-soft);}
.page-head h1{color:#FBF9F4;font-size:clamp(2rem,4vw,3rem);line-height:1.12;margin:16px 0 18px;position:relative;}
.page-head p{color:#C9D2DA;max-width:62ch;font-size:1.05rem;position:relative;}
.meta{margin-top:18px;font-size:0.82rem;color:var(--gold-soft);letter-spacing:0.04em;position:relative;}
.frieze{height:34px;width:100%;background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='34' viewBox='0 0 60 34'%3E%3Cpath d='M0,4 C0,4 12,4 15,17 C18,30 27,30 30,17 C33,4 42,4 45,17 C48,30 57,30 60,17' fill='none' stroke='%23AD8A4E' stroke-width='1.1' opacity='0.55'/%3E%3Ccircle cx='30' cy='4' r='1.6' fill='%23AD8A4E' opacity='0.7'/%3E%3C/svg%3E");background-repeat:repeat-x;background-position:center;}

/* Elenco articoli */
.list{padding:60px 0 90px;}
.card-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px;}
.post-card{display:flex;flex-direction:column;background:var(--cream);border:1px solid rgba(14,33,54,0.1);border-top:2px solid var(--gold);padding:30px 28px;transition:transform 0.2s ease,box-shadow 0.2s ease;}
.post-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(7,15,32,0.1);}
.post-card .tag{font-size:0.68rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);font-weight:500;}
.post-card h2{font-size:1.45rem;line-height:1.2;margin:12px 0 10px;}
.post-card p{color:var(--ink-soft);font-size:0.94rem;flex:1;}
.post-card .more{margin-top:18px;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.05rem;color:var(--navy-deep);}
.empty{color:var(--ink-soft);font-style:italic;}

/* Articolo */
article{padding:56px 0 30px;}
article h2{font-size:1.75rem;margin:42px 0 14px;line-height:1.2;}
article h3{font-size:1.3rem;margin:28px 0 10px;}
article p,article li{color:var(--ink-soft);font-size:1.02rem;margin-bottom:16px;}
article ul,article ol{padding-left:22px;margin-bottom:18px;}
article li{margin-bottom:8px;}
article strong{color:var(--ink);font-weight:500;}
article a{color:var(--gold);text-decoration:underline;text-underline-offset:3px;}
.callout{background:var(--cream);border-left:2px solid var(--gold);padding:20px 24px;margin:28px 0;}
.callout p{margin:0;color:var(--ink);}
.faq details{border-bottom:1px solid rgba(14,33,54,0.12);padding:16px 0;}
.faq summary{cursor:pointer;font-family:'Cormorant Garamond',serif;font-size:1.2rem;color:var(--navy-deep);font-weight:500;list-style:none;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::before{content:"+";color:var(--gold);display:inline-block;width:22px;}
.faq details[open] summary::before{content:"–";}
.faq details p{margin:10px 0 0 22px;}
.sources{font-size:0.88rem;border-top:1px solid rgba(14,33,54,0.12);margin-top:40px;padding-top:20px;}
.sources p,.sources li{font-size:0.88rem;}
.disclaimer{font-size:0.82rem;font-style:italic;color:#7C8A96;margin-top:22px;}

/* Invito al contatto */
.cta{background:var(--navy-deep);color:var(--cream);padding:60px 0;margin-top:40px;text-align:center;}
.cta h2{color:#FBF9F4;font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:12px;}
.cta p{color:#B9C4CD;max-width:56ch;margin:0 auto 26px;}
.btn-formal{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--gold);color:var(--cream);padding:13px 30px;font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:1.05rem;transition:all 0.25s ease;}
.btn-formal:hover{background:var(--gold);color:var(--navy-deep);}
.btn-formal.on-light{color:var(--navy-deep);}

footer.site{background:var(--navy-deep);border-top:1px solid rgba(246,242,233,0.12);padding:30px 0;}
footer.site .row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;}
footer.site small{color:#7C8A96;font-size:0.78rem;}
footer.site .links{display:flex;gap:22px;font-size:0.8rem;color:#B9C4CD;}
footer.site .links a:hover{color:var(--gold-soft);}

@media (max-width:760px){
  .wrap{padding:0 20px;}
  .narrow{padding:0 20px;}
  header.site nav{justify-content:center;}
  .brand img{height:52px;}
  .brand-text b{font-size:1.35rem;}
  .nav-links{gap:18px;font-size:0.78rem;flex-wrap:wrap;justify-content:center;}
  .page-head{padding:50px 0 44px;}
}
