@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Montserrat:wght@300;400;500;600&display=swap');
:root{--teal:#005b5a;--teal-dark:#005453;--copper:#b67943;--cream:#fbf7f2;--text:#0d5c5c;--light:#f3f6f5;--max:1010px;--home:660px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:1.7;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 42px));margin:0 auto}
.topbar{height:17px;background:var(--teal);color:#fff}.topbar .container{height:100%;display:flex;align-items:center;gap:10px;font-size:9px}.header{background:#fff;border-bottom:1px solid #eee;position:relative;z-index:30}.header-inner{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{line-height:1.3;min-width:190px}.brand strong{display:block;font-size:11px;font-weight:500}.brand span{font-size:8px}.nav{display:flex;align-items:center;gap:25px;font-size:9px}.nav a{padding:19px 0 16px;position:relative}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:8px;height:1px;background:var(--copper)}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;padding:9px 16px;background:var(--copper);color:#fff;font-size:8px;line-height:1.2;cursor:pointer;transition:transform .2s,opacity .2s;border-radius:1px}.btn:hover{transform:translateY(-1px);opacity:.94}.btn.outline{background:transparent;color:var(--copper);border:1px solid #d8c2af}.header-cta{padding:11px 18px}.menu-btn{display:none;background:transparent;border:0;color:var(--teal);font-size:23px}

/* HOME */
.hero{background:#fff}.hero-split{display:grid;grid-template-columns:46% 54%;align-items:stretch;min-height:410px}.hero-photo{display:flex;align-items:flex-end;justify-content:flex-start;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:contain;object-position:left bottom}.hero-copy{padding:46px 26px 38px 18px;align-self:center}.hero-title{font:600 31px/1.03 'Cormorant Garamond',serif;margin:0 0 1px;color:var(--teal)}.hero-subtitle{font:500 18px/1.15 'Cormorant Garamond',serif;margin:0 0 13px}.lead{font-weight:600;font-size:11px;line-height:1.5;margin-bottom:7px}.hero-copy p{font-size:10px;line-height:1.72;margin:0 0 10px}.hero-copy .btn{margin-top:8px}
.parallax{background-size:cover;background-position:center;position:relative;display:flex;align-items:center}.parallax:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.34)}.home-parallax{min-height:290px}.parallax-inner{position:relative;color:#fff;padding:55px 0;text-align:center;max-width:570px}.parallax h2,.banner h1{font:600 34px/1.02 'Cormorant Garamond',serif;margin:0 0 12px}.parallax p{font-size:10px;line-height:1.65;max-width:520px;margin:0 auto}.parallax .btn{margin-top:20px}.spacious-cta{min-height:325px;display:flex;align-items:center;justify-content:center}.section{padding:67px 0}.section.cream{background:var(--cream)}.section.light{background:var(--light)}.center{text-align:center}.home-content-width{width:min(650px,calc(100% - 42px))}.section-title{font:600 22px/1.15 'Cormorant Garamond',serif;margin:0 0 3px}.section-sub{font:500 11px/1.35 'Cormorant Garamond',serif;margin:0 0 21px}.home-articles{padding:59px 0 62px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 28px}.home-article-grid{grid-template-columns:repeat(3,1fr);gap:24px}.card{min-width:0}.card img{width:100%;aspect-ratio:1.39;object-fit:cover}.card h3{font:600 15px/1.15 'Cormorant Garamond',serif;margin:8px 0 3px}.card small{font-size:7px;color:var(--copper)}.article-more{margin-top:25px}.home-path-section{padding:48px 0 59px}.path-intro{font-size:9px;line-height:1.55;max-width:620px;margin:0 auto}.home-path{display:grid;grid-template-columns:2.1fr 1fr;gap:20px;align-items:stretch;margin-top:19px;text-align:center}.path-card{background:var(--copper);color:#fff;padding:25px 24px 22px;min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center}.path-illustration{width:72px;height:78px;object-fit:cover;margin:0 auto 8px}.path-card h3{font:600 16px/1.1 'Cormorant Garamond',serif;margin:2px 0 5px}.path-card p{font-size:8px;margin:0 0 10px}.path-card .btn{color:#fff;border-color:rgba(255,255,255,.8);font-size:7px;padding:7px 12px}.path-image img{width:100%;height:100%;min-height:210px;object-fit:cover}.final-parallax{min-height:330px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center}.final-parallax:before{content:"";position:absolute;inset:0;background:rgba(255,255,255,.08)}.final-parallax-inner{position:relative;display:flex;justify-content:flex-end;align-items:center}.final-cta-box{width:335px;background:rgba(182,121,67,.94);color:#fff;padding:43px 38px;text-align:center}.final-cta-box h2{font:600 22px/1.08 'Cormorant Garamond',serif;margin:0 0 11px}.final-cta-box p{font-size:8px;margin:0 0 15px}.teal-btn{background:var(--teal)}

/* INNER PAGES */
.banner{min-height:275px;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;position:relative}.banner:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.40)}.banner .container{position:relative}.banner h1{font-size:40px}.banner p{font-size:11px}.content{max-width:900px;padding:68px 0}.content.narrow{max-width:760px}.content h2{font:600 29px/1.15 'Cormorant Garamond',serif}.content p{margin:0 0 17px}.quote{max-width:420px;font:600 31px/1.2 'Cormorant Garamond',serif;margin:0 0 21px}.about-copy{max-width:840px;margin:0 auto}.about-copy p{margin:0 0 17px}.about-copy .btn{margin-top:16px}.box-list{background:var(--teal);color:#fff;padding:28px 34px;max-width:360px;margin:34px auto}.box-list li{margin:8px 0}.workshop{display:grid;grid-template-columns:1fr 1fr}.workshop .copy{padding:58px 60px;background:#f3f5f3;text-align:center}.workshop .photo{min-height:360px;background-size:cover;background-position:center}.ebook{text-align:center;padding:75px 0}.ebook img{width:600px;height:600px;max-width:100%;object-fit:contain;margin:24px auto}.survey{padding:70px 0;text-align:center;background:var(--light)}
.contact-wrap{background:var(--teal);color:#fff;margin:0 auto;max-width:1360px}.contact-hero{height:370px;background-size:cover;background-position:center;position:relative}.contact-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,90,89,.02),rgba(0,90,89,.92))}.contact-hero h1{position:absolute;left:50px;bottom:95px;z-index:2;font:600 54px/1 'Cormorant Garamond',serif;color:#fff}.contact-body{display:grid;grid-template-columns:1fr .9fr;gap:55px;padding:46px 100px 90px}.form-group{margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-group label{display:block;font-size:13px;margin-bottom:8px}.input,.textarea{width:100%;border:0;background:#fff;color:#222;border-radius:3px;padding:13px 14px}.textarea{min-height:150px;resize:vertical}.contact-note{font-size:13px}.footer{background:var(--teal);color:#fff;padding:52px 0}.footer-inner{border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:48px}.footer p{margin:0 0 8px;font-size:9px}.footer .brandline{font-size:9px;font-weight:600}.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.reveal.visible{opacity:1;transform:none}.mobile-nav{display:none}

@media(max-width:850px){
 body{font-size:13px}.container{width:min(100% - 24px,620px)}.topbar{display:none}.header-inner{min-height:76px;padding:0 8px}.brand{min-width:0}.brand strong{font-size:15px}.brand span{font-size:10px}.nav,.header .header-cta{display:none}.menu-btn{display:block}.mobile-nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;border-top:1px solid #eee;box-shadow:0 10px 25px rgba(0,0,0,.08)}.mobile-nav.open{display:block}.mobile-nav a{display:block;padding:14px 20px;border-bottom:1px solid #eee;font-size:12px}
 .hero-split{display:block;min-height:0;width:100%}.hero-photo{height:auto;padding:0 18px}.hero-photo img{width:100%;height:auto;max-height:none;object-fit:contain}.hero-copy{padding:22px 17px 36px}.hero-title{font-size:31px}.hero-subtitle{font-size:18px}.lead{font-size:11px}.hero-copy p{font-size:10px;line-height:1.65}.home-parallax{min-height:560px;background-size:auto 115%;background-position:center}.parallax-inner{padding:52px 18px;text-align:left}.parallax h2{font-size:31px;max-width:250px}.parallax p{font-size:10px;max-width:250px;margin:0}.parallax .btn{margin-top:25px}.spacious-cta{min-height:260px}.section{padding:48px 0}.home-content-width{width:calc(100% - 24px)}.section-title{font-size:21px}.section-sub{font-size:10px}.home-article-grid,.article-grid{grid-template-columns:1fr;gap:34px}.article-grid .card img{display:block}.home-article-grid .card:nth-child(n+2) img{display:block}.card h3{font-size:18px}.card small{font-size:8px}.home-path-section{padding:42px 0}.path-intro{font-size:10px}.home-path{display:block}.path-card{min-height:300px;margin-bottom:12px;padding:38px 28px}.path-illustration{width:100px;height:108px}.path-card h3{font-size:20px}.path-card p{font-size:10px}.path-image img{height:auto;min-height:0}.final-parallax{min-height:540px;background-position:center;background-size:auto 110%;align-items:flex-end}.final-parallax-inner{width:100%;padding:0 17px 32px;justify-content:center}.final-cta-box{width:100%;max-width:310px;padding:35px 24px}.final-cta-box h2{font-size:22px}.final-cta-box p{font-size:9px}
 .banner{min-height:250px}.banner h1{font-size:38px}.content{padding:48px 0}.quote{font-size:29px}.about-copy{max-width:none}.workshop{display:block}.workshop .copy{padding:45px 25px}.workshop .photo{min-height:280px}.contact-hero{height:190px}.contact-hero h1{left:28px;bottom:30px;font-size:48px}.contact-body{grid-template-columns:1fr;gap:28px;padding:30px 28px 65px}.form-row{grid-template-columns:1fr}.footer{padding:44px 18px 20px}.footer-inner{padding-bottom:42px}.footer p{font-size:10px}
}

/* Desktop visual scale: the reference WordPress layout renders at a substantially
   larger CSS scale. Keep mobile unchanged and reproduce that desktop density
   without requiring browser zoom. */
@media (min-width:851px){
  html{zoom:1.75}
}

/* v7 - blocco "Abbracciare la complessità": claim + video, testo full-span e CTA integrata */
.complexity-block{min-height:0;padding:54px 0;background-size:cover;background-position:center;position:relative}
.complexity-block:before{background:rgba(0,0,0,.46)}
.complexity-inner{position:relative;color:#fff;max-width:900px}
.complexity-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:26px 42px;align-items:center}
.complexity-claim{display:flex;align-items:center;min-height:180px}
.complexity-claim h2{font:600 34px/1.05 'Cormorant Garamond',serif;margin:0;text-align:left;max-width:380px}
.complexity-video{width:100%}
.video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#111;overflow:hidden}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.complexity-text{grid-column:1/-1;text-align:left}
.complexity-text p{max-width:none;margin:0;font-size:10px;line-height:1.75}
.complexity-cta{grid-column:1/-1;text-align:center;margin-top:-3px}
.complexity-cta .btn{margin-top:0}
@media(max-width:850px){
  .complexity-block{padding:46px 0;background-size:auto 115%;background-position:center}
  .complexity-inner{padding:0 18px}
  .complexity-grid{grid-template-columns:1fr;gap:24px}
  .complexity-claim{min-height:0}
  .complexity-claim h2{font-size:31px;max-width:280px}
  .complexity-video{grid-column:1}
  .complexity-text,.complexity-cta{grid-column:1}
  .complexity-text p{font-size:10px;line-height:1.7}
  .complexity-cta{text-align:left}
}
.path-articles{padding-top:59px;padding-bottom:62px}.path-articles-empty{font-size:10px;color:#55706e;margin:28px 0 0}

.article-hero{min-height:410px;background-position:center}.article-hero:before{background:rgba(0,0,0,.46)}.article-hero .container{max-width:900px}.article-hero h1{text-shadow:0 2px 18px rgba(0,0,0,.28)}.article-content{font-size:14px;line-height:1.8}.article-content .article-lead{font-size:16px;line-height:1.65;margin-bottom:32px}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{font-family:'Cormorant Garamond',serif;color:var(--teal);font-weight:600;line-height:1.15;margin:1.35em 0 .5em}.article-content h1{font-size:38px}.article-content h2{font-size:31px}.article-content h3{font-size:25px}.article-content h4{font-size:21px}.article-content h5{font-size:18px}.article-content h6{font-size:16px}.article-content p{margin:0 0 1.15em}.article-content ul,.article-content ol{margin:0 0 1.25em;padding-left:1.6em}.article-content li{margin:.35em 0}.article-content blockquote{margin:1.6em 0;border-left:4px solid var(--copper);padding:.8em 1.2em;background:#faf7f2;font-family:'Cormorant Garamond',serif;font-size:20px;line-height:1.45}.article-content a:not(.btn){color:var(--copper);text-decoration:underline;text-underline-offset:2px}.article-content hr{border:0;border-top:1px solid #e1e5e2;margin:2em 0}.article-content .article-back{margin-top:30px}
@media(max-width:700px){.article-hero{min-height:280px}.article-hero h1{font-size:34px}.article-content{font-size:13px}.article-content h1{font-size:32px}.article-content h2{font-size:27px}.article-content h3{font-size:23px}.article-content blockquote{font-size:18px}}

/* Article footer actions */
.article-end{margin-top:52px}.article-separator{border:0;border-top:1px solid #d8dfdc;margin:0 0 24px}.article-end-actions{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.article-share-email{color:var(--teal)!important;text-decoration:none!important;font-weight:600;display:inline-flex;align-items:center;gap:7px}.article-share-email:hover{text-decoration:underline!important}.article-whatsapp{margin:0}.article-back{margin-top:28px}
@media(max-width:700px){.article-end{margin-top:40px}.article-end-actions{align-items:flex-start;flex-direction:column}.article-whatsapp{width:100%;text-align:center}.article-share-email{font-size:13px}}

/* v10.2 - mobile readability. Desktop rules and 175% desktop scale stay unchanged. */
@media (max-width:850px){
  html{zoom:1;-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{font-size:16px;line-height:1.65;overflow-x:hidden}
  .container,.home-content-width{width:calc(100% - 32px);max-width:620px}
  .header-inner{min-height:82px;padding:0 4px;gap:14px}
  .brand strong{font-size:17px;line-height:1.2}.brand span{display:block;font-size:12px;line-height:1.35;margin-top:3px}
  .menu-btn{min-width:48px;min-height:48px;padding:8px;font-size:30px;line-height:1}
  .mobile-nav{top:82px}.mobile-nav a{padding:17px 22px;font-size:15px;line-height:1.35}
  .btn{min-height:46px;padding:13px 20px;font-size:13px;line-height:1.25;text-align:center}

  .hero-photo{padding:0 12px}.hero-copy{padding:30px 16px 48px}
  .hero-title{font-size:42px;line-height:1}.hero-subtitle{font-size:25px;line-height:1.15;margin-bottom:20px}
  .lead{font-size:16px;line-height:1.55;margin-bottom:12px}.hero-copy p{font-size:16px;line-height:1.7;margin-bottom:16px}.hero-copy .btn{margin-top:10px}

  .section{padding:58px 0}.section-title{font-size:32px;line-height:1.1;margin-bottom:8px}.section-sub{font-size:17px;line-height:1.45;margin-bottom:28px}
  .home-articles{padding:58px 0 64px}.home-article-grid,.article-grid{gap:42px}
  .card h3{font-size:25px;line-height:1.15;margin:13px 0 6px}.card small{font-size:13px}.article-more{margin-top:34px}

  .home-path-section{padding:56px 0 64px}.path-intro{font-size:16px;line-height:1.65}.home-path{margin-top:28px}
  .path-card{min-height:340px;padding:42px 25px;margin-bottom:16px}.path-illustration{width:112px;height:120px}
  .path-card h3{font-size:28px}.path-card p{font-size:16px;line-height:1.6;margin-bottom:18px}.path-card .btn{font-size:13px;padding:12px 18px}
  .final-cta-box{max-width:360px;padding:40px 28px}.final-cta-box h2{font-size:31px}.final-cta-box p{font-size:15px;line-height:1.6;margin-bottom:20px}

  .complexity-block{padding:58px 0;background-size:cover}.complexity-inner{padding:0}
  .complexity-grid{gap:28px}.complexity-claim h2{font-size:40px;line-height:1.05;max-width:100%}
  .complexity-text p{font-size:16px;line-height:1.7}.complexity-cta{text-align:left}

  .banner{min-height:300px;padding:42px 0}.banner h1{font-size:46px;line-height:1.03}.banner p{font-size:17px;line-height:1.5}
  .content,.content.narrow{padding:58px 0}.content h2{font-size:34px}.content p,.about-copy p{font-size:16px;line-height:1.75;margin-bottom:20px}
  .quote{max-width:none;font-size:37px;line-height:1.15}.box-list{max-width:none;padding:30px 25px;margin:34px 0}.box-list li{margin:10px 0}
  .workshop .copy{padding:55px 22px}.workshop .copy>div{font-size:13px!important}.workshop .copy p{font-size:16px;line-height:1.7}.workshop .photo{min-height:340px}
  .ebook,.survey{padding:62px 16px}.ebook img{width:190px;height:250px}.survey p{font-size:16px;line-height:1.7}
  .path-articles{padding-top:58px;padding-bottom:64px}.path-articles-empty{font-size:15px}

  .contact-hero{height:250px}.contact-hero h1{left:24px;bottom:35px;font-size:52px}
  .contact-body{gap:34px;padding:40px 20px 68px}.form-group{margin-bottom:24px}.form-group label,.contact-note{font-size:16px}
  .input,.textarea{font-size:16px;padding:15px 14px;min-height:50px}.textarea{min-height:170px}.contact-body .btn{width:100%}

  .footer{padding:54px 16px 28px}.footer-inner{padding-bottom:46px}.footer p,.footer .brandline{font-size:14px;line-height:1.55;margin-bottom:10px}

  .article-hero{min-height:320px}.article-hero h1{font-size:41px}.article-content{font-size:16px;line-height:1.8}
  .article-content .article-lead{font-size:18px}.article-content h1{font-size:38px}.article-content h2{font-size:32px}.article-content h3{font-size:27px}.article-content h4{font-size:23px}.article-content blockquote{font-size:21px}
  .article-share-email{font-size:15px}.article-whatsapp{width:100%}
}

@media (max-width:380px){
  .hero-title{font-size:38px}.complexity-claim h2{font-size:36px}.banner h1{font-size:40px}.contact-hero h1{font-size:46px}
}

/* v10.3 - articoli correlati per tag */
.related-articles{margin-top:44px}.related-separator{border:0;border-top:1px solid #d8dfdc;margin:0 0 34px}
.article-content .related-articles h2{font:600 29px/1.15 'Cormorant Garamond',serif;color:var(--teal);margin:0 0 22px;text-align:center}
.related-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.related-card{min-width:0}.article-content .related-card a,.article-content .related-card a:hover,.article-content .related-card a:focus{text-decoration:none!important}.related-card img{width:100%;aspect-ratio:1.39;object-fit:cover}
.article-content .related-card h3{font:600 17px/1.15 'Cormorant Garamond',serif;color:var(--teal);margin:10px 0 5px}
.related-card small{font-size:9px;color:var(--copper)}
.related-articles+.article-back{margin-top:38px}
@media(max-width:850px){
  .related-articles{margin-top:48px}.related-separator{margin-bottom:32px}
  .article-content .related-articles h2{font-size:32px;margin-bottom:26px}
  .related-article-grid{grid-template-columns:1fr;gap:36px}
  .related-card img{display:block!important}.article-content .related-card h3{font-size:25px;margin:13px 0 6px}.related-card small{font-size:13px}
}
/* Icona WhatsApp per tutti i pulsanti di contatto */
.btn[href*="wa.me"]::before{content:"";display:inline-block;width:1.15em;height:1.15em;margin-right:.45em;vertical-align:-.2em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20.52 3.48A11.78 11.78 0 0 0 12.08 0C5.5 0 .15 5.35.15 11.93c0 2.1.55 4.16 1.6 5.97L.05 24l6.25-1.64a11.9 11.9 0 0 0 5.77 1.47h.01c6.58 0 11.93-5.35 11.93-11.93 0-3.19-1.24-6.18-3.49-8.42ZM12.08 21.82h-.01a9.89 9.89 0 0 1-5.04-1.38l-.36-.21-3.71.97.99-3.62-.24-.37a9.86 9.86 0 0 1-1.52-5.28C2.19 6.46 6.63 2.02 12.1 2.02a9.84 9.84 0 0 1 7 2.9 9.83 9.83 0 0 1 2.89 7c0 5.46-4.45 9.9-9.91 9.9Zm5.43-7.42c-.3-.15-1.76-.87-2.03-.97-.27-.1-.47-.15-.67.15-.2.3-.77.97-.94 1.17-.17.2-.35.22-.64.07-.3-.15-1.25-.46-2.38-1.47a8.9 8.9 0 0 1-1.65-2.05c-.17-.3-.02-.46.13-.61.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.08-.15-.67-1.61-.92-2.21-.24-.58-.49-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.48s1.07 2.88 1.22 3.08c.15.2 2.1 3.21 5.08 4.5.71.31 1.27.49 1.7.63.71.23 1.36.19 1.87.12.57-.08 1.76-.72 2.01-1.41.25-.7.25-1.3.17-1.42-.07-.13-.27-.2-.57-.35Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20.52 3.48A11.78 11.78 0 0 0 12.08 0C5.5 0 .15 5.35.15 11.93c0 2.1.55 4.16 1.6 5.97L.05 24l6.25-1.64a11.9 11.9 0 0 0 5.77 1.47h.01c6.58 0 11.93-5.35 11.93-11.93 0-3.19-1.24-6.18-3.49-8.42ZM12.08 21.82h-.01a9.89 9.89 0 0 1-5.04-1.38l-.36-.21-3.71.97.99-3.62-.24-.37a9.86 9.86 0 0 1-1.52-5.28C2.19 6.46 6.63 2.02 12.1 2.02a9.84 9.84 0 0 1 7 2.9 9.83 9.83 0 0 1 2.89 7c0 5.46-4.45 9.9-9.91 9.9Zm5.43-7.42c-.3-.15-1.76-.87-2.03-.97-.27-.1-.47-.15-.67.15-.2.3-.77.97-.94 1.17-.17.2-.35.22-.64.07-.3-.15-1.25-.46-2.38-1.47a8.9 8.9 0 0 1-1.65-2.05c-.17-.3-.02-.46.13-.61.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.08-.15-.67-1.61-.92-2.21-.24-.58-.49-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.48s1.07 2.88 1.22 3.08c.15.2 2.1 3.21 5.08 4.5.71.31 1.27.49 1.7.63.71.23 1.36.19 1.87.12.57-.08 1.76-.72 2.01-1.41.25-.7.25-1.3.17-1.42-.07-.13-.27-.2-.57-.35Z'/%3E%3C/svg%3E") center/contain no-repeat}


/* v10.7 - article spacing and archive cards */
.article-content-section{padding-top:38px}.article-content-section .article-content{padding-top:0}
@media(max-width:850px){.article-content-section{padding-top:32px}.article-content-section .article-content{padding-top:0}}

.path-cta{display:flex;justify-content:center;width:100%;margin-top:18px}

/* v10.9 - contenuti rich text gestiti dal CMS */
.rich-text p{margin-top:0}.rich-text p:last-child{margin-bottom:0}.rich-text ul,.rich-text ol{padding-left:1.5em;margin:0 0 1.15em}.rich-text li{margin:.3em 0}.rich-text a{color:var(--copper);text-decoration:underline;text-underline-offset:2px}.rich-text blockquote{margin:1.25em 0;border-left:4px solid var(--copper);padding:.45em 1em;background:rgba(255,255,255,.32)}.rich-text h1,.rich-text h2,.rich-text h3,.rich-text h4{font-family:'Cormorant Garamond',serif;line-height:1.2;margin:1em 0 .45em}.rich-text h1{font-size:2em}.rich-text h2{font-size:1.65em}.rich-text h3{font-size:1.35em}.rich-text h4{font-size:1.15em}.rich-text hr{border:0;border-top:1px solid currentColor;opacity:.18;margin:1.5em 0}.article-lead.rich-text p{font-weight:600}.quote.rich-text p,.quote.rich-text h1,.quote.rich-text h2,.quote.rich-text h3,.quote.rich-text h4{margin-top:0}


/* v11.3 - dimensioni rich text relative e responsive */
.rt-size-small{font-size:.875em}
.rt-size-normal{font-size:1em}
.rt-size-medium{font-size:1.15em}
.rt-size-large{font-size:1.3em}
.rt-size-xlarge{font-size:1.5em}

/* v11.4 - ripristino top bar social e hover CTA */
.btn{transition:transform .2s,opacity .2s,background-color .2s,border-color .2s,color .2s}
.btn:not(.outline):not(.teal-btn):hover{background:var(--teal);opacity:1}
.article-whatsapp:hover{background:var(--copper);opacity:1}
.topbar .container{justify-content:flex-start}
.topbar-social{height:100%;display:flex;align-items:center;gap:8px}
.topbar-social a{display:inline-flex;align-items:center;justify-content:center;color:#fff;opacity:.9;transition:opacity .2s,transform .2s}
.topbar-social a:hover{opacity:1;transform:translateY(-1px)}
.topbar-social svg{display:block;width:10px;height:10px;fill:currentColor}

/* v11.5 - pulsanti più leggibili */
.btn{font-weight:700;font-size:9px}
@media(max-width:850px){.btn{font-size:14px}.path-card .btn{font-size:14px}}

/* v11.7 - Home hero full viewport height */
/* Desktop: viewport meno top bar (17px) e header (54px). */
.hero{
  min-height:calc(100vh - 71px);
  min-height:calc(100svh - 71px);
}
.hero .hero-split{
  min-height:calc(100vh - 71px);
  min-height:calc(100svh - 71px);
}

/* Mobile/tablet: top bar nascosta, header alto 82px. */
@media (max-width:850px){
  .hero{
    min-height:calc(100vh - 82px);
    min-height:calc(100svh - 82px);
  }
  .hero .hero-split{
    min-height:calc(100vh - 82px);
    min-height:calc(100svh - 82px);
  }
}

/* v11.9 - Home hero full-height corretto con il desktop zoom del layout.
   Il sito usa zoom:1.75 sopra 850px: 100vh dentro un elemento zoomato diventava
   visivamente 1.75 viewport. 57.142857vh (= 100/1.75) compensa lo zoom e lascia
   esattamente sotto topbar+header l'altezza visibile dello schermo. */
@media (min-width:851px){
  .hero{
    height:calc(57.142857vh - 71px);
    height:calc(57.142857svh - 71px);
    min-height:0;
    overflow:hidden;
  }
  .hero .hero-split{
    height:100%;
    min-height:0;
    align-items:stretch;
  }
  .hero .hero-photo{
    height:100%;
    min-height:0;
    align-items:flex-end;
    overflow:hidden;
  }
  .hero .hero-photo img{
    width:100%;
    height:100%;
    min-height:0;
    object-fit:contain;
    object-position:left bottom;
  }
  .hero .hero-copy{
    align-self:center;
  }
}


/* v12.0 - Home mobile: CTA ebook subito sotto l'header; poi immagine e testo.
   Il full-height resta esclusivamente desktop. */
.home-mobile-cta{display:none}
@media (max-width:850px){
  .hero{height:auto;min-height:0;overflow:visible}
  .hero .hero-split{height:auto;min-height:0}
  .home-mobile-cta{display:flex;justify-content:center;align-items:center;padding:16px 18px 10px;background:#fff}
  .home-mobile-cta .btn{padding:12px 22px;text-align:center}
}

/* v13.1 - Mobile readability + hero parallax safety
   Su schermi touch/mobile gli hero interni non vengono traslati dal JS:
   background centrato, cover e no-repeat evitano l'effetto di ripetizione ai bordi.
   La tipografia mobile viene portata a una scala più leggibile mantenendo
   le dimensioni relative del rich text (em). */
.banner,
.contact-hero{
  background-repeat:no-repeat;
}

@media (max-width:850px){
  /* Neutralizza la parallasse degli hero e degli altri background su mobile.
     !important prevale sul background-position inline impostato dallo script. */
  [data-parallax]{
    background-position:center center !important;
    background-repeat:no-repeat !important;
  }
  .banner,
  .contact-hero{
    background-size:cover;
  }

  /* Scala tipografica mobile */
  body{font-size:16px;line-height:1.72}
  .mobile-nav a{font-size:15px}

  .hero-copy p{font-size:15px;line-height:1.72}
  .lead{font-size:14px;line-height:1.55}

  .banner p{font-size:15px;line-height:1.5}
  .content p,
  .about-copy p,
  .article-content p,
  .article-content li{line-height:1.75}

  .section-sub{font-size:14px;line-height:1.45}
  .path-intro{font-size:15px;line-height:1.65}
  .path-card p{font-size:14px;line-height:1.6}
  .parallax p{font-size:14px;line-height:1.65}
  .final-cta-box p{font-size:14px;line-height:1.6}

  .workshop .copy{font-size:16px;line-height:1.72}
  .workshop .copy [style*="font-size:10px"]{font-size:13px !important}
  .survey{font-size:16px;line-height:1.72}

  .contact-note{font-size:16px;line-height:1.72}
  .form-group label{font-size:15px}
  .input,.textarea{font-size:16px}

  .card small{font-size:11px}
  .footer p,.footer .brandline{font-size:12px;line-height:1.55}
}

/* v13.2 - Mobile typography: aumento reale della leggibilità.
   clamp() mantiene una scala fluida tra smartphone stretti e larghi;
   le classi rt-size-* restano proporzionali perché espresse in em. */
@media (max-width:850px){
  body{font-size:clamp(17px,4.35vw,19px);line-height:1.72}

  /* Testi lunghi / rich text delle pagine */
  .content,
  .content.narrow,
  .about-copy,
  .rich-text,
  .article-content,
  .workshop .copy,
  .survey,
  .contact-note{
    font-size:clamp(17px,4.35vw,19px);
    line-height:1.72;
  }
  .content p,
  .content li,
  .about-copy p,
  .about-copy li,
  .rich-text p,
  .rich-text li,
  .article-content p,
  .article-content li,
  .workshop .copy p,
  .survey p{
    font-size:1em;
    line-height:1.72;
  }

  /* Testi dell'hero home e descrizioni principali */
  .hero-copy p{font-size:clamp(16px,4.05vw,18px);line-height:1.72}
  .lead{font-size:clamp(15px,3.8vw,17px);line-height:1.58}

  /* Testi secondari, comunque più leggibili */
  .banner p,
  .path-intro,
  .parallax p,
  .final-cta-box p,
  .path-card p{font-size:clamp(15px,3.8vw,17px)}
  .section-sub{font-size:clamp(15px,3.7vw,16px)}
  .card small{font-size:13px}
  .footer p,.footer .brandline{font-size:14px}

  /* Il lead degli articoli deve restare più evidente del corpo */
  .article-content .article-lead{font-size:1.12em;line-height:1.65}
}

/* v13.3 - Citazione "Chi sono": mantiene su mobile la stessa proporzione
   tipografica del desktop rispetto al corpo testo (31/13 ≈ 2.385). */
@media (max-width:850px){
  .about-copy .quote,
  .content .quote,
  .quote{
    font-size:2.385em;
    line-height:1.15;
  }
}

/* Anchor stabile per la sezione questionari della Privacy Policy */
#questionari-dati-psicologici{scroll-margin-top:120px}

/* v13.4 - Desktop sticky navigation.
   La topbar verde resta nel flusso e scorre via; solo la barra bianca resta sticky.
   Quando raggiunge il bordo superiore, JS aggiunge .is-stuck e la rende più compatta. */
@media (min-width:851px){
  .header{
    position:sticky;
    top:0;
    z-index:100;
    transition:box-shadow .22s ease,background-color .22s ease;
  }
  .header .header-inner,
  .header .brand strong,
  .header .brand span,
  .header .nav,
  .header .nav a,
  .header .header-cta{
    transition:min-height .22s ease,font-size .22s ease,padding .22s ease,line-height .22s ease,gap .22s ease;
  }
  .header.is-stuck{
    box-shadow:0 5px 18px rgba(0,0,0,.08);
  }
  .header.is-stuck .header-inner{
    min-height:26px;
  }
  .header.is-stuck .brand strong{
    font-size:8px;
  }
  .header.is-stuck .brand span{
    font-size:5.5px;
  }
  .header.is-stuck .nav{
    gap:18px;
    font-size:7px;
  }
  .header.is-stuck .nav a{
    padding:7px 0 6px;
  }
  .header.is-stuck .nav a.active:after{
    bottom:3px;
  }
  .header.is-stuck .header-cta{
    min-height:0;
    padding:5px 11px;
    font-size:7px;
  }
}

/* v13.5 - sticky header desktop ancora più compatto */
@media (min-width:851px){
  .header.is-stuck .header-inner{min-height:26px}
  .header.is-stuck .brand strong{font-size:8px;line-height:1.05}
  .header.is-stuck .brand span{font-size:5.5px;line-height:1.05}
  .header.is-stuck .nav{gap:18px;font-size:7px}
  .header.is-stuck .nav a{padding:7px 0 6px}
  .header.is-stuck .nav a.active:after{bottom:3px}
  .header.is-stuck .header-cta{min-height:0;padding:5px 11px;font-size:7px}
}
