
:root{--g:#164c3d;--g2:#0f3b30;--gold:#b88a35;--cream:#f7f3ea;--paper:#fbf8f1;--ink:#173c31;--muted:#66736c;--serif:Georgia,"Times New Roman",serif;--sans:Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:90px 0}.kicker{display:block;color:var(--gold);font-size:.7rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}h1,h2,h3,h4{font-family:var(--serif);line-height:1.06}h1{font-size:clamp(3.4rem,6vw,6.2rem)}h2{font-size:clamp(2.5rem,4vw,4.4rem)}h3{font-size:2rem}em{color:var(--gold);font-weight:400}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:999px;font-weight:700;font-size:.75rem;text-transform:uppercase;border:1px solid transparent}.btn.dark{background:var(--g);color:#fff}.btn.light{background:#fff;border-color:var(--g);color:var(--g)}.btn.gold{background:var(--gold);color:#fff}.btn.outline{border-color:#ffffff66;color:#fff;margin-top:10px}.text-link{font-weight:700;border-bottom:1px solid var(--gold)}
.site-header{height:105px;background:#fbf8f1fa;position:relative;z-index:50}.header-inner{height:100%;max-width:1480px;margin:auto;padding:0 26px;display:flex;align-items:center;gap:28px}.brand{width:88px;flex:0 0 88px}.brand img{width:82px;height:82px;object-fit:contain}.main-nav{display:flex;gap:22px;align-items:center;margin-left:auto}.main-nav a{font-size:.77rem;font-weight:600;white-space:nowrap}.main-nav a:hover,.main-nav a.active{color:var(--gold)}.header-contact{font-size:.76rem;font-weight:700;margin-left:15px;display:flex;flex-direction:column}.header-contact a{color:var(--g)}.menu-toggle{display:none}
.home-hero{height:650px;background:url("../images/hero-uomo-braccia-aperte.jpg") left center/cover no-repeat;position:relative;display:flex;align-items:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#f7f3ea08 0%,#f7f3ea10 45%,#f7f3eacc 64%,#f7f3eafa 100%)}.hero-copy{position:relative;z-index:2;width:48%;margin-left:auto}.hero-copy h1{margin:0 0 22px}.hero-copy p{max-width:570px;color:#385149;font-size:1.05rem}.actions{display:flex;gap:12px;margin-top:28px}
.section-title{text-align:center;margin-bottom:42px}.section-title h2{margin:8px 0}.section-title p{color:var(--muted)}
.editorial-grid{display:grid;grid-template-columns:1.05fr .84fr 1.14fr;grid-template-rows:360px 390px;gap:12px}.journey{position:relative;overflow:hidden;border-radius:23px;color:#fff}.journey>img:not(.bio-mark){width:100%;height:100%;object-fit:cover;transition:.7s}.journey:hover>img:not(.bio-mark){transform:scale(1.04)}.prano{grid-row:1/3}.numerologia{grid-column:2/4}.campane{grid-column:2}.biomusica{grid-column:3}.card-shade{position:absolute;inset:0;background:linear-gradient(0deg,#0f3b30f2,#0f3b3010 73%)}.card-copy{position:absolute;left:28px;right:28px;bottom:26px;z-index:3}.card-copy>span{color:var(--gold);font-weight:700}.card-copy h3{font-size:2.25rem;margin:4px 0 8px}.card-copy p{font-size:.79rem;margin:0 0 13px;max-width:520px}.card-copy b{background:var(--gold);padding:8px 17px;border-radius:999px;font-size:.65rem;text-transform:uppercase}.bio-mark{position:absolute!important;z-index:3;right:20px;top:18px;width:95px!important;height:95px!important;border-radius:50%;object-fit:cover}
.about-home{background:#efe8dc}.about-home-grid{display:grid;grid-template-columns:230px 1fr .85fr;gap:50px;align-items:center}.portrait img{aspect-ratio:1;border-radius:50%;object-fit:cover;border:5px solid white}.about-home h2{font-size:3.2rem}.about-home blockquote,.prose blockquote{font-family:var(--serif);font-size:1.9rem;line-height:1.25;border-left:2px solid var(--gold);padding-left:30px}
.values{background:#fff;padding:55px 0}.values-grid{display:grid;grid-template-columns:repeat(4,1fr)}.values-grid>div{padding:18px 26px;border-right:1px solid #ddd}.values-grid span{color:var(--gold);font-family:var(--serif);font-size:1.8rem}.values-grid h3{font-size:1.45rem}.values-grid p{font-size:.77rem;color:var(--muted)}
.contact-strip{background:var(--g);color:#fff;padding:26px 0}.contact-strip-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}.contact-strip b,.contact-strip span,.contact-strip a{display:block}.contact-strip b{color:#d5b263;font-family:var(--serif);font-size:1.25rem}.contact-strip span,.contact-strip a{font-size:.75rem}
.inner-hero{min-height:570px;background-image:var(--hero);background-size:cover;background-position:center;position:relative;display:flex;align-items:end;color:#fff}.inner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#0f3b30ef,#0f3b3088 58%,#0f3b3020)}.inner-content{position:relative;z-index:2;padding-bottom:65px}.inner-content h1{margin:12px 0}.inner-content p{max-width:680px;color:#ffffffcc}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:75px;align-items:start}.prose{max-width:800px}.prose .lead{font-family:var(--serif);font-size:1.5rem}.prose p,.prose li{color:#5f6d66}.prose h3{margin:45px 0 14px}.notice{background:#eee7db;padding:20px 24px;border-radius:16px;font-size:.76rem}.sidebar{position:sticky;top:20px}.side-card{background:#eee7db;padding:28px;border-radius:20px;margin-bottom:16px}.side-card.dark{background:var(--g);color:#fff}.side-card p{font-size:.8rem}.side-card .btn{width:100%}
.option-grid,.service-modes{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0 38px}.option-grid>div,.service-modes>div{background:#eee7db;border-radius:18px;padding:22px}.option-grid b{font-family:var(--serif);font-size:2rem;color:var(--gold)}.option-grid p,.service-modes p{font-size:.8rem;margin:5px 0}.service-modes h4{font-size:1.5rem;margin:6px 0}
.gallery-band{padding:80px 0;background:#eee7db}.image-text-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.image-text-grid>img{border-radius:24px;max-height:550px;width:100%;object-fit:cover}.image-text-grid.reverse{grid-template-columns:.85fr 1.15fr}.image-text-grid.reverse>img{grid-column:2}.image-text-grid.reverse>div{grid-row:1}.bio-page-logo{width:145px!important;height:145px!important;border-radius:50%!important}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post-card{background:#fff;border-radius:20px;overflow:hidden}.post-card img{width:100%;height:250px;object-fit:cover}.post-card>div{padding:25px}.post-card h2{font-size:1.9rem}.post-card p{font-size:.8rem;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.contact-box{background:#fff;padding:20px;border-radius:14px;margin-bottom:12px}.contact-box b,.contact-box a,.contact-box span{display:block}.contact-form{background:var(--g);color:#fff;padding:38px;border-radius:25px}.contact-form label{display:block;font-size:.68rem;margin-bottom:14px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;padding:13px;margin-top:6px;border:1px solid #ffffff44;border-radius:10px;background:#ffffff10;color:#fff}.contact-form select option{color:#111}.contact-form textarea{height:125px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{display:flex!important;align-items:center}.check input{width:auto!important;margin:0 8px 0 0!important}.form-note{font-size:.65rem;color:#ffffff99}.narrow{max-width:850px}
.site-footer{background:var(--g2);color:#fff;padding-top:55px}.footer-main{display:grid;grid-template-columns:1.3fr .8fr 1fr .8fr;gap:40px}.footer-logo{width:115px;filter:none}.footer-main h3{font-size:1.35rem;color:#d5b263}.footer-main a,.footer-main p{display:block;font-size:.74rem;color:#ffffffb0;margin:5px 0}.footer-bottom{border-top:1px solid #ffffff20;margin-top:40px;padding:18px 0;display:flex;justify-content:space-between;font-size:.65rem;color:#ffffff88}.float-whatsapp{position:fixed;right:20px;bottom:20px;width:52px;height:52px;border-radius:50%;background:#1f9c4a;color:#fff;display:grid;place-items:center;font-weight:bold;z-index:40}.reveal{opacity:0;transform:translateY(20px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.header-contact{display:none}.main-nav{gap:14px}.about-home-grid{grid-template-columns:200px 1fr}.about-home blockquote{grid-column:1/3}.content-grid{gap:35px}}
@media(max-width:820px){.menu-toggle{display:block;margin-left:auto;background:none;border:0}.menu-toggle span{display:block;width:24px;height:2px;background:var(--g);margin:6px}.main-nav{display:none;position:absolute;top:105px;left:0;right:0;background:var(--paper);padding:22px;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.home-hero{height:700px;background-position:32% center}.hero-shade{background:linear-gradient(0deg,#f7f3eafa 0%,#f7f3eae6 44%,#f7f3ea08 75%)}.hero-copy{width:100%;align-self:flex-end;padding-bottom:30px}.editorial-grid{display:block}.journey{height:470px;margin-bottom:12px}.content-grid,.contact-grid,.image-text-grid,.image-text-grid.reverse{grid-template-columns:1fr}.sidebar{position:static}.image-text-grid.reverse>img,.image-text-grid.reverse>div{grid-column:auto;grid-row:auto}.blog-grid{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.section{padding:65px 0}.home-hero{height:730px}.hero-copy h1{font-size:3.3rem}.actions{flex-direction:column;align-items:flex-start}.about-home-grid,.values-grid,.contact-strip-grid,.blog-grid,.footer-main,.form-row,.option-grid,.service-modes{grid-template-columns:1fr}.about-home blockquote{grid-column:auto}.values-grid>div{border-right:0;border-bottom:1px solid #ddd}.inner-content h1{font-size:3.5rem}.footer-bottom{display:block}}

/* Testi definitivi forniti dal cliente */
.prose p{margin-bottom:1.35rem}.prose h2{margin-bottom:30px}.prose h2+p{font-size:1.02rem}

/* REVISIONE BLOG + MAPPA */
.article-hero{min-height:370px!important}
.article-hero .inner-content{padding-bottom:42px!important}
.blog-hero{min-height:430px!important}
.blog-original-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.blog-original-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 18px 46px rgba(15,59,48,.08)}
.blog-original-card>img{width:100%;height:320px;object-fit:cover}
.blog-original-copy{padding:30px}
.blog-original-copy h2{font-size:2rem;margin:8px 0 16px}
.blog-original-copy p{font-size:.84rem;color:var(--muted)}
.article-layout{max-width:880px}
.original-blog-article{max-width:880px}
.original-blog-article>p:first-of-type{font-size:1.08rem}
.original-blog-article h3{font-size:1.65rem;color:var(--g);margin-top:34px}
.article-back{margin-top:44px}
.contact-map-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:42px;align-items:start}
.map-wrap{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(15,59,48,.09)}
.map-wrap iframe{width:100%;height:560px;border:0;display:block}
.map-caption{padding:18px 22px;background:#fff}
.map-caption b,.map-caption span{display:block}
.map-caption b{font-family:var(--serif);font-size:1.25rem;color:var(--g)}
.map-caption span{font-size:.76rem;color:var(--muted)}
@media(max-width:820px){
 .blog-original-grid,.contact-map-grid{grid-template-columns:1fr}
 .blog-original-card>img{height:260px}
 .map-wrap iframe{height:430px}
}

/* CORREZIONE TIPOGRAFIA FINALE
   Hero interne ripristinate grandi; solo il primo blocco degli articoli principali viene ridotto. */
.inner-content h1{
  font-size:clamp(3.4rem,6vw,6.2rem)!important;
  line-height:1.03!important;
  max-width:900px;
  margin:12px 0 18px!important;
}
.inner-content p{
  font-size:1rem;
  max-width:680px;
}

/* Il primo blocco dei testi forniti dal cliente non deve sembrare una mega-headline */
body .prose > h2:first-child{
  font-size:clamp(1.85rem,2.35vw,2.6rem)!important;
  line-height:1.22!important;
  font-weight:500;
  color:var(--g);
  margin-bottom:28px!important;
}

/* Pagine con il lungo primo testo: più arioso e leggibile */
.original-blog-article > h2:first-child,
.prose > h2:first-child{
  max-width:100%;
}

/* Il blog mantiene hero compatte solo negli articoli del blog, non nelle pagine dei percorsi */
.article-hero .inner-content h1{
  font-size:clamp(2.2rem,3.2vw,3.5rem)!important;
  line-height:1.08!important;
}
.blog-hero .inner-content h1{
  font-size:clamp(3.4rem,5vw,5.2rem)!important;
}

@media(max-width:820px){
  .inner-content h1{font-size:clamp(2.8rem,9vw,4.2rem)!important}
  body .prose > h2:first-child{font-size:1.8rem!important}
  .article-hero .inner-content h1{font-size:2.25rem!important}
}

.page-prano .prose > h2:first-child,
.page-campane .prose > h2:first-child,
.page-numerologia .prose > h2:first-child,
.page-biomusica .prose > h2:first-child{
  font-size:clamp(1.85rem,2.35vw,2.6rem)!important;
  line-height:1.22!important;
  font-weight:500!important;
}


/* =========================================================
   V4 - TESTI WORD ESATTI + IMMAGINI FORNITE DAL CLIENTE
   ========================================================= */

/* Le hero restano esattamente nello stile grande già approvato */
.inner-content h1{
    font-size:clamp(3.4rem,6vw,6.2rem)!important;
    line-height:1.03!important;
}

/* Contenuti RTF: Calibri 16 / Calibri 11 come richiesto */
.word-exact{
    font-family:Calibri,Carlito,Arial,sans-serif!important;
    color:#253f36;
    line-height:1.62;
}
.word-exact span[style*="font-size:16pt"]{
    font-family:Calibri,Carlito,Arial,sans-serif!important;
    font-size:16pt!important;
    line-height:1.30;
    font-weight:600;
    color:var(--g);
}
.word-exact span[style*="font-size:11pt"]{
    font-family:Calibri,Carlito,Arial,sans-serif!important;
    font-size:11pt!important;
    line-height:1.68;
    font-weight:400;
    color:#4f625a;
}
.word-exact br{
    display:block;
    content:"";
    margin-bottom:.85rem;
}
.word-exact > span:first-child{
    margin-top:0;
}

/* Le nuove immagini Home mantengono le sfumature verdi */
.journey .card-shade{
    background:linear-gradient(
        0deg,
        rgba(15,59,48,.95) 0%,
        rgba(15,59,48,.64) 25%,
        rgba(15,59,48,.10) 72%
    )!important;
}
.journey.prano>img:not(.bio-mark){object-position:center center}
.journey.numerologia>img:not(.bio-mark){object-position:center center}
.journey.biomusica>img:not(.bio-mark){object-position:center center}

/* Foto Stefano nella home: usa la foto reale fornita, con taglio più elegante */
.portrait img{
    object-position:center 28%!important;
}

/* Nuovo logo Biomusica: non deformare e mantenere il bianco del logo */
.bio-mark{
    object-fit:contain!important;
    background:#fff;
    padding:3px;
    border:2px solid rgba(184,138,53,.75);
}
.bio-page-logo{
    object-fit:contain!important;
    background:#fff;
    padding:4px;
}

/* Nei piccoli schermi mantieni la leggibilità Word */
@media(max-width:580px){
    .word-exact span[style*="font-size:16pt"]{font-size:16pt!important}
    .word-exact span[style*="font-size:11pt"]{font-size:11pt!important}
}

/* V5 */
.journey{
    background:radial-gradient(circle at 30% 20%,rgba(184,138,53,.16),transparent 35%),
               linear-gradient(145deg,#1a5747 0%,#0f3b30 100%);
    padding:14px;
}
.journey>img:not(.bio-mark){
    position:absolute;
    inset:14px;
    width:calc(100% - 28px)!important;
    height:calc(100% - 28px)!important;
    object-fit:contain!important;
    object-position:center center!important;
    border-radius:17px;
    background:#173f34;
    transform:none!important;
}
.journey:hover>img:not(.bio-mark){transform:scale(1.012)!important}
.journey .card-shade{
    inset:14px;
    border-radius:17px;
    background:linear-gradient(0deg,rgba(10,46,38,.95) 0%,rgba(10,46,38,.72) 30%,rgba(10,46,38,.15) 67%,rgba(10,46,38,.06) 100%)!important;
}
.card-copy{left:38px;right:38px;bottom:38px}
.bio-mark{right:31px!important;top:31px!important}

.about-home-grid{grid-template-columns:300px 1fr .85fr!important}
.portrait{position:relative}
.portrait:before{
    content:"";position:absolute;inset:-10px 10px 10px -10px;
    border:1px solid rgba(184,138,53,.5);border-radius:26px;z-index:0;
}
.portrait img{
    position:relative;z-index:1;aspect-ratio:4/5!important;border-radius:22px!important;
    object-fit:cover!important;object-position:center 26%!important;border:0!important;
    box-shadow:0 20px 45px rgba(15,59,48,.18);
}

.inner-hero{
    min-height:570px!important;display:flex!important;align-items:flex-end!important;
    background-size:cover!important;background-position:center!important;
}
.inner-overlay{
    background:linear-gradient(90deg,rgba(15,59,48,.95) 0%,rgba(15,59,48,.77) 43%,rgba(15,59,48,.30) 72%,rgba(15,59,48,.10) 100%)!important;
}
.inner-content{padding-bottom:68px!important}
.inner-content h1{
    font-size:clamp(3.4rem,6vw,6.2rem)!important;line-height:1.03!important;
    max-width:850px!important;margin:12px 0 18px!important;
}
.inner-content p{max-width:660px!important;font-size:1rem!important;color:rgba(255,255,255,.80)!important}

.signature-band{
    padding:82px 0;
    background:linear-gradient(135deg,#eee7db 0%,#f7f3ea 60%,#e8e2d6 100%);
}
.signature-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}
.signature-photo{position:relative}
.signature-photo:before{
    content:"";position:absolute;inset:-12px 14px 14px -12px;
    border:1px solid rgba(184,138,53,.55);border-radius:28px;
}
.signature-photo img{
    position:relative;z-index:1;width:100%;max-height:560px;object-fit:contain;
    background:#173f34;border-radius:24px;box-shadow:0 18px 48px rgba(15,59,48,.14);
}
.signature-copy .mini-slogan{
    display:inline-block;font-size:.70rem;text-transform:uppercase;letter-spacing:.18em;
    font-weight:700;color:var(--gold);margin-bottom:10px;
}
.signature-copy h2{font-size:clamp(2.4rem,3.8vw,4rem);margin:0 0 18px}
.signature-copy p{color:var(--muted);max-width:520px}
.signature-copy .line{width:70px;height:1px;background:var(--gold);margin:22px 0}
.page-chi .signature-photo img{max-height:680px;object-fit:contain;background:#eae4da}
@media(max-width:1000px){.about-home-grid{grid-template-columns:250px 1fr!important}}
@media(max-width:820px){
    .signature-grid{grid-template-columns:1fr}
    .about-home-grid{grid-template-columns:1fr!important}
    .portrait{max-width:360px;margin:auto}
    .inner-hero{min-height:520px!important}
}


/* =====================================================
   V5.2 - HOME EDITORIALE COME RIFERIMENTO APPROVATO
   ===================================================== */

.home-showcase{
  display:grid!important;
  grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr)!important;
  grid-template-rows:390px 390px!important;
  gap:14px!important;
}
.home-showcase .journey{
  grid-column:auto!important;
  grid-row:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  position:relative;
  overflow:hidden;
  border-radius:24px;
  background:#123c31;
  isolation:isolate;
  box-shadow:0 16px 44px rgba(15,59,48,.10);
}

/* Ordine a due colonne come nel riferimento */
.home-showcase .prano{grid-column:1!important;grid-row:1!important}
.home-showcase .numerologia{grid-column:1!important;grid-row:2!important}
.home-showcase .biomusica{grid-column:2!important;grid-row:1!important}
.home-showcase .campane{grid-column:2!important;grid-row:2!important}

/* Fondo fotografico morbido: riempie la card senza sacrificare la foto intera */
.home-showcase .journey::before{
  content:"";
  position:absolute;
  inset:-18px;
  background-image:
    linear-gradient(rgba(9,43,35,.28),rgba(9,43,35,.28)),
    var(--card-bg);
  background-size:cover;
  background-position:center;
  filter:blur(14px) saturate(.82);
  transform:scale(1.08);
  z-index:-2;
}
.home-showcase .journey::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(12,51,41,.08),rgba(12,51,41,.18));
  z-index:-1;
}

/* Foto sempre intera: niente teste, persone o dettagli tagliati */
.home-showcase .journey>img:not(.bio-mark){
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:0!important;
  background:transparent!important;
  transform:none!important;
  z-index:0;
}
.home-showcase .journey:hover>img:not(.bio-mark){
  transform:scale(1.012)!important;
}

/* Gradiente testuale più pulito e coerente con il verde del sito */
.home-showcase .card-shade{
  position:absolute!important;
  inset:0!important;
  border-radius:0!important;
  background:
    linear-gradient(0deg,
      rgba(8,43,35,.96) 0%,
      rgba(8,43,35,.82) 19%,
      rgba(8,43,35,.46) 36%,
      rgba(8,43,35,.08) 65%)!important;
  z-index:1;
}
.home-showcase .card-copy{
  left:28px!important;
  right:28px!important;
  bottom:26px!important;
  z-index:3!important;
}
.home-showcase .card-copy h3{
  font-size:clamp(2rem,2.4vw,2.75rem)!important;
  margin:0 0 8px!important;
  color:#fff;
  text-shadow:0 2px 12px rgba(0,0,0,.24);
}
.home-showcase .card-copy p{
  max-width:560px;
  font-size:.78rem!important;
  line-height:1.55;
  color:rgba(255,255,255,.88);
  margin-bottom:13px!important;
}
.home-showcase .card-copy b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 17px!important;
  border-radius:999px;
  background:var(--gold)!important;
  color:#fff;
  font-size:.64rem!important;
  letter-spacing:.05em;
  box-shadow:0 8px 22px rgba(0,0,0,.12);
}

/* Nessun numero 01/02/03/04 */
.home-showcase .card-copy>span{display:none!important}

/* Logo Biomusica più piccolo, nitido e non invadente */
.home-showcase .bio-mark{
  width:92px!important;
  height:92px!important;
  right:22px!important;
  top:20px!important;
  object-fit:contain!important;
  padding:3px;
  background:rgba(255,255,255,.95);
  border:2px solid rgba(184,138,53,.75);
  border-radius:50%!important;
  z-index:4!important;
}

/* Campane: più raffinata, senza scritte fantasma dentro la foto */
.home-showcase .campane-copy h3{
  font-size:clamp(2.15rem,2.65vw,3rem)!important;
  line-height:.92!important;
  letter-spacing:-.02em;
}
.home-showcase .campane-copy p{
  max-width:360px;
}

/* Piccolo bordo oro quasi invisibile: lega le quattro immagini */
.home-showcase .journey{
  outline:1px solid rgba(184,138,53,.18);
  outline-offset:-1px;
}

@media(max-width:900px){
  .home-showcase{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:340px 340px!important;
  }
  .home-showcase .prano{grid-column:1!important;grid-row:1!important}
  .home-showcase .biomusica{grid-column:2!important;grid-row:1!important}
  .home-showcase .numerologia{grid-column:1!important;grid-row:2!important}
  .home-showcase .campane{grid-column:2!important;grid-row:2!important}
}
@media(max-width:650px){
  .home-showcase{display:block!important}
  .home-showcase .journey{height:400px!important;margin-bottom:14px!important}
  .home-showcase .card-copy{left:22px!important;right:22px!important;bottom:22px!important}
  .home-showcase .bio-mark{width:76px!important;height:76px!important}
}

@media(min-width:821px){
.site-header{position:sticky!important;top:0!important;z-index:9999!important;box-shadow:0 5px 22px rgba(15,59,48,.08);backdrop-filter:blur(10px)}
}
@media(max-width:820px){
.site-header{position:sticky!important;top:0!important;z-index:9999!important}
.main-nav{max-height:calc(100vh - 90px);overflow:auto}
.home-showcase{display:flex!important;flex-direction:column!important;gap:18px!important}
.home-showcase .journey{height:auto!important;display:grid!important;grid-template-rows:auto auto!important;background:#123c31!important}
.home-showcase .journey::before,.home-showcase .journey::after,.home-showcase .card-shade{display:none!important}
.home-showcase .journey>img:not(.bio-mark){position:relative!important;inset:auto!important;width:100%!important;height:auto!important;object-fit:contain!important;display:block!important;background:#efe9de!important}
.home-showcase .card-copy{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;padding:24px 22px 26px!important;background:linear-gradient(145deg,#164c3d,#0f3b30)!important}
.home-showcase .bio-mark{position:absolute!important;right:16px!important;top:16px!important;width:72px!important;height:72px!important;z-index:4!important}
}

.policy-hero{min-height:420px!important;background:linear-gradient(135deg,#164c3d,#0f3b30)!important}
.policy-section{background:#f7f3ea}
.policy-content{max-width:920px;margin:auto;background:#fff;padding:58px 64px;border-radius:24px;box-shadow:0 18px 50px rgba(15,59,48,.08);font-family:Calibri,Carlito,Arial,sans-serif;font-size:11pt;line-height:1.72;color:#40554d}
.policy-content h2{font-family:Calibri,Carlito,Arial,sans-serif;font-size:16pt;line-height:1.3;color:var(--g);margin:34px 0 12px}
.policy-content p{margin:0 0 13px}
.policy-updated{font-weight:600;color:var(--gold);margin-bottom:26px!important}
.footer-legal-links{width:100%;display:flex;gap:10px;justify-content:center;padding:14px 20px 20px;font-size:.76rem;opacity:.82}
.footer-legal-links a{color:inherit;text-decoration:none}
.footer-legal-links a:hover{text-decoration:underline}
@media(max-width:650px){.policy-content{padding:34px 22px}.policy-hero{min-height:350px!important}}


/* =========================================================
   MOBILE HOME FINAL
   Portrait phone: 1 image per row x 4 rows
   Landscape/small tablet: 2 images per row
   ========================================================= */

/* landscape phones / small tablets */
@media (min-width:601px) and (max-width:820px){
  .home-showcase{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:16px!important;
  }
  .home-showcase .journey{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
  }
}

/* portrait phones */
@media (max-width:600px){
  .home-showcase{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto auto auto!important;
    gap:18px!important;
  }

  .home-showcase .prano,
  .home-showcase .numerologia,
  .home-showcase .biomusica,
  .home-showcase .campane{
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
  }

  .home-showcase .journey{
    display:block!important;
    overflow:hidden!important;
    border-radius:20px!important;
    background:#123c31!important;
  }

  .home-showcase .journey>img:not(.bio-mark){
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
    display:block!important;
    background:#f0eadf!important;
  }

  .home-showcase .card-copy{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    padding:22px 20px 24px!important;
    background:linear-gradient(145deg,#164c3d,#0f3b30)!important;
  }

  .home-showcase .bio-mark{
    position:absolute!important;
    width:68px!important;
    height:68px!important;
    top:14px!important;
    right:14px!important;
    z-index:5!important;
  }
}


/* =========================================================
   HEADER DEFINITIVO - SEMPRE VISIBILE
   ========================================================= */
.site-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:99999!important;
  background:rgba(251,248,241,.98)!important;
  box-shadow:0 5px 22px rgba(15,59,48,.10)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transform:none!important;
}

/* Compensa l'header fisso */
body{
  padding-top:105px!important;
}

/* Il menu mobile si apre subito sotto l'header */
@media(max-width:820px){
  body{
    padding-top:105px!important;
  }
  .site-header{
    position:fixed!important;
    top:0!important;
  }
  .main-nav{
    top:105px!important;
    max-height:calc(100vh - 105px)!important;
    overflow-y:auto!important;
  }
}

/* Nessun offset doppio sulla home */
.home-hero{
  margin-top:0!important;
}

/* Campane Tibetane - nuova sezione risonanza */
.campane-risonanza-section{background:#f7f3ea;padding:88px 0}
.campane-risonanza-copy{max-width:900px;margin:0 auto 42px}
.campane-risonanza-copy h2{margin:8px 0 24px}
.campane-risonanza-copy p{margin:0 0 17px;line-height:1.78}
.campane-risonanza-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.campane-risonanza-gallery figure{margin:0;overflow:hidden;border-radius:22px;background:#e9e2d5;box-shadow:0 18px 42px rgba(15,59,48,.10)}
.campane-risonanza-gallery img{display:block;width:100%;height:100%;min-height:330px;object-fit:cover}
@media(max-width:700px){
 .campane-risonanza-section{padding:58px 0}
 .campane-risonanza-gallery{grid-template-columns:1fr;gap:18px}
 .campane-risonanza-gallery img{height:auto;min-height:0;object-fit:contain}
}

/* Campane Tibetane - testo unico + galleria finale */
.campane-photo-section{background:#f7f3ea;padding:20px 0 80px}
