/* ==========================================================
   Biglietto da visita sostenibile - stile del sito
   (in coda allo style.css del tema child, caricato da functions.php)
   Colori: verde #2F4A3A, salvia #8A9C7B, crema #F6F1E7, bambù #E4C592, terracotta #C2410C
   ========================================================== */
@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,500;0,9..144,600;1,9..144,500&family=Inter:wght@400;500;600&display=swap");
:root{--bs-verde:#2F4A3A;--bs-verde2:#3E5E4A;--bs-salvia:#8A9C7B;--bs-crema:#F6F1E7;--bs-crema2:#EFE7D6;--bs-bambu:#E4C592;--bs-terra:#C2410C;--bs-ink:#2B2A26;--bs-soft:#6B675C}

.bs{font-family:Inter,system-ui,sans-serif;color:var(--bs-ink);-webkit-font-smoothing:antialiased}
.bs *{box-sizing:border-box}
.bs-wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.bs-narrow{max-width:820px}
.bs-center{text-align:center;max-width:760px;margin:0 auto}
.bs p,.bs li,.bs h1,.bs h2,.bs h3{margin:0}
.bs ul,.bs ol{margin:0;padding:0;list-style:none}
.bs a{color:inherit}

.bs-h1{font-family:Fraunces,Georgia,serif!important;font-weight:600!important;font-size:clamp(44px,5.6vw,84px)!important;line-height:1.02!important;letter-spacing:-.03em!important;color:var(--bs-verde)!important}
.bs-h1 em{font-style:italic;font-weight:500;color:var(--bs-terra)}
.bs-h2{font-family:Fraunces,Georgia,serif!important;font-weight:600!important;font-size:clamp(34px,3.6vw,54px)!important;line-height:1.08!important;letter-spacing:-.02em!important;color:var(--bs-verde)!important;margin-top:14px!important}
.bs-lead{margin-top:26px!important;max-width:540px;font-size:clamp(17px,1.3vw,20px);line-height:1.65;color:var(--bs-soft)}
.bs-text{margin-top:20px!important;font-size:18px;line-height:1.7;color:var(--bs-soft)}
.bs-small{font-size:16px}
.bs-eyebrow{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--bs-salvia)}
.bs-eyebrow--light{color:#c9d6bb}
.bs-light{color:#fff!important}
.bs-light-soft{color:rgba(255,255,255,.75)!important}

.bs-pill{display:inline-flex;align-items:center;gap:10px;padding:9px 16px 9px 12px;border-radius:999px;background:#fff;box-shadow:0 6px 20px -8px rgba(47,74,58,.35);font-size:14px;font-weight:500;color:var(--bs-verde)}
.bs-pill i{width:8px;height:8px;border-radius:50%;background:var(--bs-terra);box-shadow:0 0 0 0 rgba(194,65,12,.6);animation:bs-ping 2.2s infinite}
.bs-pill--light{background:rgba(255,255,255,.1);color:#fff;box-shadow:none;border:1px solid rgba(255,255,255,.2)}
@keyframes bs-ping{70%{box-shadow:0 0 0 10px rgba(194,65,12,0)}100%{box-shadow:0 0 0 0 rgba(194,65,12,0)}}

.bs-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.bs-btn{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 30px;border-radius:999px;font-size:16px;font-weight:600;text-decoration:none!important;transition:transform .25s,box-shadow .25s,background .25s}
.bs-btn--main{background:var(--bs-verde);color:#fff!important;box-shadow:0 14px 34px -12px rgba(47,74,58,.7)}
.bs-btn--main:hover{transform:translateY(-2px);background:var(--bs-verde2)}
.bs-btn--line{border:1.5px solid rgba(47,74,58,.3);color:var(--bs-verde)!important}
.bs-btn--line:hover{background:rgba(47,74,58,.06)}
.bs-btn--light{background:var(--bs-bambu);color:var(--bs-verde)!important}
.bs-btn--light:hover{transform:translateY(-2px);background:#ecd2a6}

/* ---------- Apertura ---------- */
.bs-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 40%,#fff8ea 0,var(--bs-crema) 45%,var(--bs-crema2) 100%);min-height:min(100vh,980px);display:flex;align-items:center}
.bs-hero__in{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;padding-top:140px;padding-bottom:110px;width:100%}
.bs-hero__leaf{position:absolute;border-radius:50% 0;background:linear-gradient(135deg,rgba(138,156,123,.35),rgba(47,74,58,.12));filter:blur(2px);animation:bs-sway 9s ease-in-out infinite alternate}
.bs-hero__leaf--1{width:260px;height:260px;right:-60px;top:90px;transform:rotate(25deg)}
.bs-hero__leaf--2{width:180px;height:180px;left:-50px;bottom:60px;transform:rotate(-40deg);animation-delay:-4s}
@keyframes bs-sway{to{transform:rotate(10deg) translateY(16px)}}
.bs-facts{display:flex;flex-wrap:wrap;gap:34px;margin-top:46px!important}
.bs-facts li{font-size:14px;color:var(--bs-soft)}
.bs-facts b{display:block;font-family:Fraunces,serif;font-size:26px;font-weight:600;color:var(--bs-verde)}
.bs-hero__vis{position:relative;height:min(540px,60vh);perspective:1600px;display:flex;align-items:center;justify-content:center}
.bs-card3d{position:relative;width:min(470px,40vw);aspect-ratio:85/55;border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;
  background-color:#e4c592;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='390'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.004 0.09' numOctaves='4' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 0.55 0 0 0 0 0.36 0 0 0 0 0.16 0 0 0 0.9 -0.32'/%3E%3C/filter%3E%3Crect width='600' height='390' filter='url(%23g)'/%3E%3C/svg%3E"),linear-gradient(120deg,#f0d7aa,#dcbb86 55%,#e8cc9c);background-size:cover;
  box-shadow:0 50px 90px -25px rgba(60,40,15,.55),inset 0 1px 0 rgba(255,255,255,.45),inset 0 -2px 6px rgba(120,70,20,.25);
  transform:rotateX(18deg) rotateY(-22deg) rotateZ(5deg);animation:bs-card 7s ease-in-out infinite}
@keyframes bs-card{50%{transform:rotateX(10deg) rotateY(-12deg) rotateZ(2deg) translateY(-16px)}}
.bs-card3d__mono{width:15%;aspect-ratio:1;border-radius:50%;background:var(--bs-verde);color:#f3e6cc;display:flex;align-items:center;justify-content:center;font-family:Fraunces,serif;font-weight:600;font-size:clamp(20px,2.2vw,32px);margin-bottom:4%}
.bs-card3d__name{font-family:Fraunces,serif;font-weight:600;font-size:clamp(22px,2.6vw,38px);color:var(--bs-verde);letter-spacing:-.01em}
.bs-card3d__role{margin-top:1.5%;font-size:clamp(10px,1vw,14px);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#5d4a2c}
.bs-card3d__nfc{position:absolute;right:5%;top:8%;width:8%}
.bs-card3d__shine{position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,245,220,.35) 45%,transparent 60%);transform:translateX(-100%);animation:bs-shine 6s ease-in-out infinite}
@keyframes bs-shine{60%,100%{transform:translateX(100%)}}
.bs-rings{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.bs-rings span{position:absolute;width:240px;height:240px;border-radius:50%;border:2px solid rgba(47,74,58,.35);opacity:0;animation:bs-ring 4s cubic-bezier(.2,.6,.3,1) infinite}
.bs-rings span:nth-child(2){animation-delay:1.33s}
.bs-rings span:nth-child(3){animation-delay:2.66s}
@keyframes bs-ring{0%{transform:scale(.6);opacity:.8}100%{transform:scale(2.6);opacity:0}}

/* ---------- Sezioni ---------- */
.bs-problem,.bs-steps,.bs-compare,.bs-faq{background:#fff;padding:130px 0}
.bs-solution,.bs-custom{background:var(--bs-crema);padding:130px 0}
.bs-split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.bs-figure{margin:0;border-radius:28px;overflow:hidden;box-shadow:0 40px 80px -40px rgba(47,74,58,.45)}
.bs-figure img{display:block;width:100%;height:auto}
.bs-figure--wide{margin-top:56px}
.bs-list{margin-top:28px!important;display:grid;gap:14px}
.bs-list li{position:relative;padding-left:34px;font-size:17px;line-height:1.6;color:var(--bs-soft)}
.bs-list li::before{content:"";position:absolute;left:0;top:5px;width:20px;height:20px;border-radius:50%;background:var(--bs-crema) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 10.5l2.5 2.5L14 7.5' fill='none' stroke='%232F4A3A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.bs-list b{color:var(--bs-ink)}
.bs-list--light li{color:rgba(255,255,255,.78)}
.bs-list--light b{color:#fff}
.bs-list--light li::before{background-color:rgba(255,255,255,.14);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 10.5l2.5 2.5L14 7.5' fill='none' stroke='%23E4C592' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}

.bs-cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:60px}
.bs-feat{background:#fff;border-radius:24px;padding:34px 28px;box-shadow:0 20px 40px -30px rgba(47,74,58,.5);transition:transform .3s,box-shadow .3s}
.bs-feat:hover{transform:translateY(-6px);box-shadow:0 30px 50px -30px rgba(47,74,58,.6)}
.bs-ico{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background:var(--bs-crema)}
.bs-ico svg{width:28px;height:28px}
.bs-feat h3{margin-top:22px!important;font-family:Fraunces,serif!important;font-size:22px!important;font-weight:600!important;color:var(--bs-verde)!important;letter-spacing:-.01em!important}
.bs-feat p{margin-top:10px!important;font-size:15.5px;line-height:1.6;color:var(--bs-soft)}

.bs-split--rev > :first-child{order:0}
.bs-steplist{counter-reset:s;margin-top:32px!important;display:grid;gap:22px}
.bs-steplist li{counter-increment:s;position:relative;padding-left:66px}
.bs-steplist li::before{content:counter(s);position:absolute;left:0;top:0;width:46px;height:46px;border-radius:50%;background:var(--bs-verde);color:var(--bs-bambu);font-family:Fraunces,serif;font-weight:600;font-size:20px;display:flex;align-items:center;justify-content:center}
.bs-steplist b{display:block;font-size:18px;color:var(--bs-ink)}
.bs-steplist span{display:block;margin-top:4px;font-size:16px;line-height:1.6;color:var(--bs-soft)}
.bs-note{margin-top:34px!important;text-align:center;font-size:17px;color:var(--bs-soft)}

.bs-table{margin:56px auto 0;max-width:900px;border-radius:24px;overflow:hidden;background:var(--bs-crema);box-shadow:0 30px 60px -40px rgba(47,74,58,.5)}
.bs-tr{display:grid;grid-template-columns:1.2fr 1fr 1fr;border-top:1px solid rgba(47,74,58,.1)}
.bs-tr span{padding:20px 26px;font-size:16px;color:var(--bs-soft)}
.bs-tr span:last-child{background:rgba(47,74,58,.06);color:var(--bs-verde)}
.bs-th{border-top:0}
.bs-th span{font-weight:600;color:var(--bs-ink);font-size:15px;letter-spacing:.02em}
.bs-th span:last-child{background:var(--bs-verde);color:#fff}

.bs-business{background:var(--bs-verde);padding:130px 0;position:relative;overflow:hidden}
.bs-business::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(228,197,146,.18),transparent 70%)}

.bs-faq details{border-bottom:1px solid rgba(47,74,58,.15);padding:24px 0}
.bs-faq details:first-of-type{margin-top:40px}
.bs-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:Fraunces,serif;font-size:22px;font-weight:600;color:var(--bs-verde)}
.bs-faq summary::-webkit-details-marker{display:none}
.bs-faq summary::after{content:"+";font-family:Inter,sans-serif;font-weight:400;font-size:28px;color:var(--bs-salvia);transition:transform .3s}
.bs-faq details[open] summary::after{transform:rotate(45deg)}
.bs-faq details p{margin-top:14px!important;font-size:17px;line-height:1.7;color:var(--bs-soft)}

.bs-order{background:linear-gradient(160deg,#2F4A3A,#24392d);padding:130px 0;color:#fff}
.bs-order__in{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.bs-price{margin-top:22px!important;font-family:Fraunces,serif!important;font-size:clamp(64px,8vw,120px)!important;font-weight:600!important;line-height:.95!important;letter-spacing:-.04em!important;color:#fff!important}
.bs-price small{display:block;margin-top:12px;font-family:Inter,sans-serif;font-size:22px;font-weight:500;letter-spacing:0;color:rgba(255,255,255,.6)}
.bs-alt{margin-top:28px!important;font-size:15px;color:rgba(255,255,255,.65)}
.bs-alt a{color:var(--bs-bambu);text-decoration:underline}

.bs-footer{background:#1f3127;color:rgba(255,255,255,.7);padding:80px 0 40px}
.bs-footer__in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.bs-footer__brand{font-family:Fraunces,serif;font-size:26px;font-weight:600;color:#fff}
.bs-footer__brand em{color:var(--bs-bambu)}
.bs-footer__h{font-weight:600;color:#fff;margin-bottom:12px!important}
.bs-footer__txt{margin-top:10px!important;font-size:15px;line-height:1.8}
.bs-footer a{color:rgba(255,255,255,.8);text-decoration:none}
.bs-footer a:hover{color:var(--bs-bambu)}
.bs-footer__copy{max-width:1240px;margin:60px auto 0!important;padding:24px 32px 0;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:rgba(255,255,255,.45)}

/* comparsa delle sezioni allo scorrimento (classe aggiunta da sostenibile.js) */
.bs-reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s ease}
.bs-reveal.is-in{opacity:1;transform:none}

@media (max-width:959px){
  .bs-wrap{padding:0 22px}
  .bs-hero__in,.bs-split,.bs-order__in{grid-template-columns:1fr;gap:44px}
  .bs-hero__in{padding-top:120px;padding-bottom:80px}
  .bs-hero__vis{height:320px;order:-1}
  .bs-card3d{width:min(360px,80vw)}
  .bs-cards4{grid-template-columns:1fr 1fr}
  .bs-problem,.bs-steps,.bs-compare,.bs-faq,.bs-solution,.bs-custom,.bs-business,.bs-order{padding:90px 0}
  .bs-split--rev > :first-child{order:1}
  .bs-footer__in{grid-template-columns:1fr}
  .bs-tr span{padding:16px 14px;font-size:14px}
}
@media (max-width:560px){.bs-cards4{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.bs *{animation:none!important;transition:none!important}.bs-reveal{opacity:1;transform:none}}

/* le righe di WPBakery che contengono le sezioni non hanno margini */
.bs-row .row,.bs-row .uncell,.bs-row .uncont{padding:0!important}
.bs-row .uncont > *{margin:0!important}

/* ---------- Testata di Uncode ---------- */
#masthead .menu-container{background:rgba(246,241,231,.92)!important;backdrop-filter:blur(10px);box-shadow:none!important;border-bottom:1px solid rgba(47,74,58,.08)!important}
#masthead .navbar-brand,#masthead .navbar-brand h2,#masthead .navbar-brand span{font-family:Fraunces,Georgia,serif!important;font-weight:600!important;font-size:21px!important;color:#2F4A3A!important;letter-spacing:-.01em!important;text-transform:none!important}
#masthead .menu-primary-inner > li > a{font-family:Inter,sans-serif!important;font-weight:500!important;font-size:15px!important;color:#2F4A3A!important;text-transform:none!important;letter-spacing:0!important}
#masthead .menu-primary-inner > li.bs-menu-cta{vertical-align:middle}
#masthead .menu-primary-inner > li.bs-menu-cta > a{display:inline-block!important;background:#2F4A3A;color:#fff!important;border-radius:999px;padding:13px 22px!important;line-height:1!important;height:auto!important;margin:0 0 0 10px!important}
#masthead .menu-primary-inner > li.bs-menu-cta > a:hover{background:#3E5E4A}
#masthead .navbar-extra-icons a,#masthead .navbar-extra-icons i{color:#2F4A3A!important}

/* ---------- Negozio e footer del tema ---------- */
.single-product .product_title{font-family:Fraunces,Georgia,serif!important;font-weight:600!important;color:#2F4A3A!important;letter-spacing:-.02em!important}
.woocommerce .single_add_to_cart_button,.woocommerce .checkout-button,.woocommerce #place_order,.woocommerce .button.alt{background:#2F4A3A!important;border-color:#2F4A3A!important;color:#fff!important;border-radius:999px!important;text-transform:none!important;letter-spacing:0!important;font-weight:600!important}
.woocommerce .single_add_to_cart_button:hover{background:#3E5E4A!important;border-color:#3E5E4A!important}
.woocommerce .price,.woocommerce .price .amount{color:#2F4A3A!important}
#colophon .footer-last,#colophon .row-container{background:#1f3127!important;color:rgba(255,255,255,.6)!important}
.home #colophon{display:none}

/* ---------- Telefono: niente sbordature ---------- */
.bs-row,.bs-row .row-container,.bs-row .row,.bs-row .row-inner,.bs-row .uncol,.bs-row .uncont{max-width:100%!important;min-width:0!important}
.bs{overflow-x:hidden;width:100%}
.bs-hero__in > *,.bs-split > *,.bs-order__in > *,.bs-cards4 > *{min-width:0}
.bs-h1,.bs-h2,.bs-text,.bs-lead{overflow-wrap:break-word}
.bs ul li,.bs ol li{list-style:none!important}
.bs ul li::marker,.bs ol li::marker{content:""}

/* ---------- Pagina del prodotto ---------- */
.single-product .product_title{font-family:Fraunces,Georgia,serif!important;color:var(--bs-verde)!important}
.single-product .summary .price{color:var(--bs-verde)!important;font-weight:600}
.bs-trust{list-style:none!important;margin:28px 0 0!important;padding:22px 24px!important;background:var(--bs-crema);border-radius:14px}
.bs-trust li{display:flex;gap:12px;align-items:flex-start;margin:0 0 10px!important;font-size:15px;line-height:1.5;color:var(--bs-ink)}
.bs-trust li:last-child{margin-bottom:0!important}
.bs-trust span{flex:0 0 22px;height:22px;border-radius:50%;background:var(--bs-verde);color:#fff;font-size:12px;line-height:22px;text-align:center}
.bs-aziende{margin-top:14px!important;font-size:15px;color:var(--bs-soft)}
.bs-aziende a,.bs-tab a{color:var(--bs-terra)!important;font-weight:500}
.single-product .wootabs .tab-pane h3,.single-product .wootabs .tab-pane h2{font-family:Fraunces,Georgia,serif!important;font-weight:600!important;color:var(--bs-verde)!important}
.single-product .wootabs .tab-pane ul{list-style:none;padding:0;margin:0 0 20px}
.single-product .wootabs .tab-pane ul li{position:relative;padding-left:22px;margin-bottom:6px}
.single-product .wootabs .tab-pane ul li:before{content:"";position:absolute;left:4px;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--bs-salvia)}
.bs-tab p{margin:0 0 14px!important;max-width:820px}
.single-product .wootabs .tab-pane ul li{list-style:none}
/* il footer è il blocco "Footer | sostenibile": la riga del copyright di Uncode non serve */
#colophon .footer-last{display:none!important}
/* titoli di carrello, cassa e account nel carattere dei titoli */
.woocommerce-cart .post-title,.woocommerce-checkout .post-title,.woocommerce-account .post-title,.woocommerce-cart h1,.woocommerce-checkout h1,.woocommerce-account h1{font-family:Fraunces,Georgia,serif!important;font-weight:600!important;color:var(--bs-verde)!important}
