:root{--cfp-green:#8bf219;--cfp-ink:#080908;--cfp-paper:#f3f5f0;--cfp-line:#d7ddd3}

/* Dettagli visivi condivisi: leggeri, leggibili e coerenti con il marchio. */
body{background-image:radial-gradient(circle at 8% 18%,rgba(139,242,25,.055),transparent 23rem),radial-gradient(circle at 93% 64%,rgba(139,242,25,.04),transparent 26rem)}
.site-header,.shop-header,body>header{backdrop-filter:blur(14px);background-color:rgba(243,245,240,.94);position:sticky;top:0;z-index:20}
.hero,.shop-hero,.cart-intro{isolation:isolate;position:relative}
.shop-hero:before,.cart-intro:before{color:rgba(139,242,25,.055);content:"CFP";font-size:clamp(120px,22vw,340px);font-weight:900;letter-spacing:-.13em;line-height:.7;position:absolute;right:5vw;top:50%;transform:translateY(-50%);z-index:-1}
.category-card,.product-card,.order-summary,.sell-form,.contact-panel{box-shadow:0 1px 0 rgba(8,9,8,.08),0 22px 60px rgba(8,9,8,.04)}
.category-card,.product-card{border:1px solid rgba(8,9,8,.055);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.category-card:hover,.product-card:hover{border-color:rgba(91,156,11,.3);box-shadow:0 14px 34px rgba(8,9,8,.09);transform:translateY(-2px)}
.category-card p{margin-bottom:14px}
.category-card b{align-items:center;background:#080908;color:#fff;display:inline-flex;font-size:12px;justify-content:space-between;line-height:1;min-height:42px;margin-top:auto;padding:0 14px;transition:background-color .18s ease,color .18s ease,transform .18s ease;width:min(100%,154px)}
.card-computer b{background:var(--cfp-green);color:#080908}.card-more b{background:#080908;color:#fff}
.category-card:hover b{transform:translateX(3px)}
.category-card:focus-visible{outline:3px solid #080908;outline-offset:4px}.category-card:focus-visible b{background:var(--cfp-green);color:#080908}
.product-image.real-image{transition:transform .28s ease}
.product-card:hover .product-image.real-image{transform:scale(1.012)}
.button,.header-action,.shop-wa,.ask,.checkout-button,.add-to-cart{overflow:hidden;position:relative;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.button:after,.header-action:after,.shop-wa:after,.ask:after,.checkout-button:after,.add-to-cart:after,.cta-button:after{background:rgba(255,255,255,.32);border-radius:50%;content:"";filter:blur(14px);height:104px;left:var(--button-hover-x,50%);opacity:0;pointer-events:none;position:absolute;top:var(--button-hover-y,50%);transform:translate(-50%,-50%) scale(.42);transition:opacity .18s ease,transform .28s ease;width:104px}
.button:hover:after,.header-action:hover:after,.shop-wa:hover:after,.ask:hover:after,.checkout-button:hover:after,.add-to-cart:hover:after,.cta-button:hover:after{opacity:1;transform:translate(-50%,-50%) scale(1)}

.site-nav a,.shop-nav a{position:relative}.site-nav a:after,.shop-nav a:after{background:var(--cfp-green);bottom:-9px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .25s ease;width:100%}.site-nav a:hover:after,.shop-nav a:hover:after,.shop-nav a.active:after{transform:scaleX(1);transform-origin:left}
.button,.header-action,.shop-wa,.ask,.checkout-button,.add-to-cart,.cta-button{border-radius:0;box-shadow:none}
.button:active,.header-action:active,.shop-wa:active,.ask:active,.checkout-button:active,.add-to-cart:active,.cta-button:active{transform:translateY(1px)}
.button:focus-visible,.header-action:focus-visible,.shop-wa:focus-visible,.ask:focus-visible,.checkout-button:focus-visible,.add-to-cart:focus-visible,.cta-button:focus-visible{outline:3px solid var(--cfp-green);outline-offset:3px}

.conversion-cta{align-items:center;background:var(--cfp-ink);color:#fff;display:grid;gap:40px;grid-template-columns:auto minmax(280px,1fr) auto;isolation:isolate;overflow:hidden;padding:58px 5vw;position:relative}
.conversion-cta:before{border:1px solid rgba(139,242,25,.2);border-radius:50%;content:"";height:320px;position:absolute;right:24%;top:50%;transform:translateY(-50%);width:320px;z-index:-1}.conversion-cta:after{color:rgba(139,242,25,.07);content:"CFP";font-size:clamp(130px,22vw,310px);font-weight:900;letter-spacing:-.14em;line-height:.7;position:absolute;right:2vw;top:50%;transform:translateY(-50%);z-index:-1}
.cta-index{align-self:start;color:var(--cfp-green);font-size:11px;font-weight:800;letter-spacing:.12em}.cta-copy .cta-kicker{color:#aab4a7;font-size:10px;font-weight:800;letter-spacing:.16em;margin:0 0 12px;text-transform:uppercase}.cta-copy h2{font-size:clamp(38px,5vw,72px);font-weight:500;letter-spacing:-.07em;line-height:.88;margin:0;max-width:760px}.cta-copy h2 em{color:var(--cfp-green);font-style:normal}.cta-actions{align-items:stretch;display:flex;flex-direction:column;gap:9px;min-width:220px}.cta-button{align-items:center;border:1px solid #4a5148;color:#fff;display:flex;font-size:11px;font-weight:800;justify-content:space-between;min-height:50px;overflow:hidden;padding:0 16px;position:relative;text-decoration:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.cta-button:hover{border-color:var(--cfp-green);transform:translateY(-1px)}.cta-primary{background:var(--cfp-green);border-color:var(--cfp-green);color:var(--cfp-ink)}.cta-secondary{background:rgba(255,255,255,.045)}.cta-actions small{color:#8e988b;font-size:9px;line-height:1.45;margin-top:5px}

.payment-trust{align-items:center;background:#eef2ea;border-bottom:1px solid var(--cfp-line);border-top:1px solid var(--cfp-line);display:grid;gap:42px;grid-template-columns:minmax(240px,.85fr) minmax(420px,1.45fr) minmax(220px,.7fr);padding:48px 5vw;position:relative}
.payment-trust:before{background:var(--cfp-green);content:"";height:3px;left:5vw;position:absolute;top:-2px;width:72px}
.payment-trust-copy .payment-kicker{color:#5c9e11;font-size:10px;font-weight:800;letter-spacing:.16em;margin:0 0 12px;text-transform:uppercase}
.payment-trust-copy h2{font-size:clamp(28px,3vw,44px);font-weight:500;letter-spacing:-.06em;line-height:.96;margin:0 0 12px}
.payment-trust-copy p{color:#657066;font-size:12px;line-height:1.55;margin:0;max-width:360px}
.payment-logo-grid{display:grid;gap:9px;grid-template-columns:repeat(4,minmax(72px,1fr))}
.payment-logo-grid img,.payment-marks img{background:#fff;border:1px solid #d9ded5;border-radius:8px;display:block;height:auto;max-width:100%;object-fit:contain}
.payment-logo-grid img{aspect-ratio:12/7;width:100%}
.stripe-security{align-items:center;background:#fff;border:1px solid #d9ded5;border-radius:12px;color:inherit;display:flex;justify-content:center;min-height:102px;padding:13px;transition:border-color .25s ease,transform .25s ease}
.stripe-security:hover{border-color:#635bff;transform:translateY(-1px)}
.stripe-security img{display:block;height:auto;max-width:220px;width:100%}
.payment-fineprint{color:#747d72;font-size:9px;grid-column:1/-1;letter-spacing:.02em;margin:-26px 0 0}

.payment-note{background:linear-gradient(145deg,#fafbf8,#eef2ea);border:1px solid #d9ded5!important;border-radius:10px;padding:18px!important}
.payment-note>b:before{color:#5c9e11;content:"●";margin-right:7px}
.payment-marks{display:grid!important;gap:6px!important;grid-template-columns:repeat(3,1fr)}
.payment-marks img{border-radius:5px;width:100%}
.payment-marks span{display:none}

body>footer,.shop-footer{border-top:1px solid #2a2f29;display:grid!important;gap:16px 28px;grid-template-columns:auto 1fr auto auto!important}
.footer-business{color:#7f897d;grid-column:1/-1;line-height:1.55}
.footer-links{display:flex;flex-wrap:wrap;gap:16px;grid-column:1/-1}
.footer-links a{text-decoration:underline;text-decoration-color:#495147;text-underline-offset:3px}

@media(prefers-reduced-motion:reduce){.button:after,.header-action:after,.shop-wa:after,.ask:after,.checkout-button:after,.add-to-cart:after,.cta-button:after{display:none}}

@media(max-width:980px){.payment-trust{grid-template-columns:1fr 1.6fr}.stripe-security{grid-column:1/-1;justify-self:start;width:240px}.payment-fineprint{margin-top:-20px}}
@media(max-width:680px){
  .conversion-cta{display:block;padding:46px 5vw}.cta-index{margin-bottom:26px}.cta-actions{margin-top:30px;min-width:0}.conversion-cta:after{right:-4vw;top:24%}
  .payment-trust{display:block;padding:42px 5vw}
  .payment-logo-grid{grid-template-columns:repeat(3,1fr);margin:26px 0 18px}
  .stripe-security{min-height:84px;width:100%}
  .payment-fineprint{margin:15px 0 0}
  .payment-marks{grid-template-columns:repeat(2,1fr)}
  body>footer,.shop-footer{grid-template-columns:1fr auto!important}
  body>footer>p,.shop-footer>p{order:initial!important;width:auto!important}
  .footer-business,.footer-links{grid-column:1/-1!important}
}
