/* Sito creato con ❤ custom da MarTe Graphics | autore e sito web: www.martegraphics.it | All Rights Reserved. */
.tao-page-hero{
  padding:96px 0 84px;
  text-align:center;
  background:linear-gradient(160deg,#3D4F42 0%,#4A5A6F 55%,#5A8B7A 100%);
}
.tao-page-hero h1{
  font-family:var(--tao-font-display);font-weight:400;
  font-size:clamp(44px,5.5vw,80px);line-height:1.02;
  letter-spacing:-0.025em;color:#fff;margin:14px 0 18px 0;
  text-wrap:balance;
}
.tao-page-hero h1 em{font-family:var(--tao-font-italic);font-style:italic;color:#E8DCC0}
.tao-page-hero p{
  font-family:var(--tao-font-body);font-size:20px;
  color:#E8DCC0;line-height:1.6;max-width:60ch;margin:0 auto;
}

.tao-sv-section-head{text-align:center;max-width:700px;margin:0 auto 12px}
.tao-sv-section-head .tao-h2{margin-bottom:14px}
.tao-sv-section-sub{
  font-family:var(--tao-font-body);font-size:18px;line-height:1.6;
  color:var(--tao-text-soft);margin:0;
}

.tao-sv-intro{padding:64px 0 80px}
.tao-sv-layout{
  display:grid;grid-template-columns:1.7fr 1fr;gap:56px;align-items:start;
}
.tao-sv-layout.full{grid-template-columns:1fr;max-width:760px}
.tao-sv-main{font-family:var(--tao-font-body)}
.tao-sv-main p{font-size:18px;line-height:1.7;color:var(--tao-text);margin:0 0 18px 0}
.tao-sv-main p:last-child{margin-bottom:0}

.tao-sv-photos{display:flex;flex-direction:column;gap:18px}
.tao-sv-photo{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 24px 48px -32px rgba(61,79,66,0.3)}
.tao-sv-photo img{width:100%;height:auto;display:block}

.tao-photo-slider{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 24px 48px -32px rgba(61,79,66,0.3)}
.tao-photo-slide{display:none;margin:0}
.tao-photo-slide.active{display:block;animation:tao-fade .4s ease}
.tao-photo-slide img{width:100%;height:auto;display:block}
.tao-photo-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:var(--tao-text);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;padding:0;box-shadow:0 6px 18px -8px rgba(61,79,66,0.45);transition:background .2s,color .2s,transform .2s}
.tao-photo-arrow svg{display:block}
.tao-photo-arrow:hover{background:var(--tao-secondary);color:#fff;transform:translateY(-50%) scale(1.06)}
.tao-photo-arrow.prev{left:12px}
.tao-photo-arrow.next{right:12px}
.tao-photo-dots{position:absolute;bottom:14px;left:0;right:0;display:flex;gap:8px;justify-content:center;z-index:2}
.tao-photo-dot{width:8px;height:8px;border-radius:50%;border:0;background:rgba(255,255,255,0.55);cursor:pointer;padding:0;transition:all .25s}
.tao-photo-dot.active{background:#fff;width:22px;border-radius:4px}
@media (max-width: 980px){
  .tao-sv-layout{grid-template-columns:1fr;gap:36px}
}

.tao-sv-infobox-section{padding:8px 0 80px}
.tao-info-box{
  background:var(--tao-beige);
  border:1px solid var(--tao-border);
  border-left:4px solid var(--tao-secondary);
  border-radius:12px;
  padding:28px 32px;
  box-shadow:0 24px 48px -32px rgba(61,79,66,0.25);
}
.tao-info-box-title{
  font-family:var(--tao-font-italic);font-style:italic;font-weight:400;
  font-size:24px;color:var(--tao-text);margin:0 0 16px 0;
}
.tao-info-list{margin:0;padding:0}
.tao-info-row{
  display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:baseline;
  padding:14px 0;border-top:1px solid rgba(61,79,66,0.1);
}
.tao-info-row:first-child{border-top:0;padding-top:4px}
.tao-info-row dt{font-family:var(--tao-font-body);font-weight:600;font-size:14px;color:var(--tao-primary);margin:0}
.tao-info-row dd{margin:0;font-family:var(--tao-font-body);font-size:16px;line-height:1.45;color:var(--tao-text)}

.tao-sv-benefits{background:var(--tao-beige);padding:88px 0}
.tao-benefit-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:20px;margin-top:40px;
}
.tao-benefit-card{
  background:#fff;border:1px solid var(--tao-border);border-radius:12px;
  padding:30px 28px;display:flex;flex-direction:column;gap:14px;
  transition:transform .3s,box-shadow .3s,border-color .3s;
}
.tao-benefit-card:hover{
  transform:translateY(-4px);
  box-shadow:0 28px 56px -32px rgba(61,79,66,0.28);
  border-color:rgba(90,139,122,0.3);
}
.tao-benefit-num{font-family:var(--tao-font-mono);font-size:12px;letter-spacing:0.15em;color:var(--tao-secondary)}
.tao-benefit-card p{margin:0;font-family:var(--tao-font-body);font-size:17px;line-height:1.55;color:var(--tao-text)}

.tao-sv-howto{padding:88px 0}
.tao-howto-steps{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:44px;margin-top:48px;
}
.tao-howto-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.tao-howto-num{
  flex-shrink:0;width:38px;height:38px;border-radius:50%;
  background:var(--tao-secondary);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--tao-font-body);font-size:15px;font-weight:500;
}
.tao-howto-title{
  font-family:var(--tao-font-italic);font-style:italic;font-weight:500;
  font-size:23px;color:var(--tao-text);margin:0;line-height:1.1;
}
.tao-howto-step > p{
  margin:0;font-family:var(--tao-font-body);font-size:16px;
  line-height:1.65;color:var(--tao-text-soft);
}

.tao-sv-faq{background:var(--tao-beige);padding:88px 0 96px}
.tao-faq-accordion{max-width:840px;margin:40px auto 0}
.tao-faq-item{
  background:#fff;border:1px solid var(--tao-border);border-radius:12px;
  margin-bottom:14px;overflow:hidden;
  box-shadow:0 10px 30px -24px rgba(61,79,66,0.3);
  transition:box-shadow .25s;
}
.tao-faq-item[open]{box-shadow:0 20px 40px -28px rgba(61,79,66,0.35)}
.tao-faq-question{
  cursor:pointer;list-style:none;
  font-family:var(--tao-font-display);font-style:normal;font-weight:600;font-size:20px;
  color:var(--tao-text);padding:22px 56px 22px 28px;position:relative;
  transition:color .2s;
}
.tao-faq-question::-webkit-details-marker{display:none}
.tao-faq-question:hover{color:var(--tao-secondary)}
.tao-faq-question::after{
  content:"▾";position:absolute;right:26px;top:50%;transform:translateY(-50%);
  font-size:16px;color:var(--tao-secondary);transition:transform .25s;
}
.tao-faq-item[open] .tao-faq-question::after{transform:translateY(-50%) rotate(180deg)}
.tao-faq-answer{padding:0 28px 24px}
.tao-faq-answer p{font-family:var(--tao-font-body);font-size:16px;line-height:1.65;color:var(--tao-text-soft);margin:0}

.tao-sv-cta{margin-top:0}

/* Approfondimenti dal blog (pillar -> cluster) */
.tao-sv-related{padding:8px 0 84px}
.tao-sv-related-list{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.tao-sv-related-list li{margin:0}
.tao-sv-related-list a{display:block;height:100%;padding:20px 22px;background:var(--tao-beige);border:1px solid var(--tao-border);border-radius:12px;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.tao-sv-related-list a:hover{border-color:var(--tao-secondary);transform:translateY(-2px);box-shadow:0 10px 26px -18px rgba(61,79,66,0.5)}
.tao-sv-related-title{display:block;font-family:var(--tao-font-display);font-weight:500;font-size:18px;line-height:1.3;color:var(--tao-text);margin:0 0 6px}
.tao-sv-related-arrow{color:var(--tao-secondary)}
.tao-sv-related-ex{display:block;font-family:var(--tao-font-body);font-size:14.5px;line-height:1.55;color:var(--tao-text-soft)}
@media(max-width:720px){.tao-sv-related-list{grid-template-columns:1fr}}
