/*
Theme Name: Jupazz Studio Neon Exact — Fucsia 5.1.4
Theme URI: https://jupazzstudio.it/
Author: Jupazz Studio
Description: Versione 5.1.4: ripristino editor Jupazz classico, link pulsanti modificabili e servizi completi.
Version: 5.1.4
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: jupazz-studio-neon-exact
*/

:root{
  --ink:#473811;
  --ink-soft:#d2a022;
  --periwinkle:#efbe44;
  --periwinkle-deep:#edb934;
  --lavender:#f6f4ee;
  --lavender-2:#faf9f5;
  --sand:#e4dcc7;
  --cream:#fbfaf7;
  --white:#fff;
  --line:#e9e7e0;
  --shadow:0 18px 50px rgba(73,57,17,.10);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(1180px,calc(100% - 42px));margin-inline:auto}
.section{padding:86px 0}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#f7f5f0;border:1px solid #eeece6;color:#dca927;font-weight:750;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.eyebrow::before{content:"♡";font-size:14px}
.highlight{position:relative;display:inline;z-index:1;font-style:italic}
.highlight::after{content:"";position:absolute;z-index:-1;left:-.10em;right:-.10em;bottom:-.02em;height:.74em;background:#ffd84f;border-radius:.10em .20em .13em .18em;transform:rotate(-.8deg);clip-path:polygon(1% 11%,99% 3%,98% 88%,3% 100%,0 62%);opacity:.96}
.underline{position:relative;display:inline-block;font-style:italic}
.underline::after{content:"";position:absolute;left:0;right:-6px;bottom:-4px;height:2px;background:var(--periwinkle);transform:rotate(-1.5deg)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:999px;font-weight:800;font-size:14px;border:1px solid transparent;transition:.2s ease;cursor:pointer}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--periwinkle-deep);color:white;box-shadow:0 10px 24px rgba(237,185,52,.22)}
.btn-light{background:#fff;color:var(--ink);border-color:#d7d3cb}
.btn-sand{background:var(--sand);color:var(--ink)}

/* Header */
.site-header{position:sticky;top:0;z-index:30;background:rgba(251,250,247,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(233,231,224,.7)}
.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{width:205px}
.main-nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:720}
.main-nav a{position:relative;padding:10px 0}
.main-nav a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:1px;background:var(--periwinkle);transition:.2s}
.main-nav a:not(.btn):hover::after{right:0}
.menu-toggle{display:none;border:0;background:transparent;font-size:28px;color:var(--ink)}

/* Hero */
.hero{position:relative;overflow:hidden;padding:72px 0 34px}
.hero::before{content:"";position:absolute;width:580px;height:580px;border-radius:44% 56% 56% 44% / 53% 40% 60% 47%;right:-130px;top:72px;background:radial-gradient(circle at 36% 35%,#faf9f5 0 34%,#f2efe8 65%,#f1ede2 100%);opacity:.95}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.14fr) minmax(360px,.86fr);align-items:center;gap:44px}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(46px,4.9vw,76px);line-height:1.01;letter-spacing:-.04em;margin:22px 0 20px;font-weight:500;max-width:12ch}
.hero h1 .line2{color:#eeba37}
.hero-content{max-width:670px;padding-right:10px}
.hero-copy{font-size:18px;max-width:620px;color:#bf911f}
.hero-copy strong{color:var(--ink)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:34px 0 58px}
.hero-actions .btn{min-width:264px}
.hero-photo-wrap{position:relative;align-self:center;min-height:560px;display:flex;align-items:flex-start;justify-content:center;padding-top:8px}
.hero-photo{width:min(470px,100%);height:540px;object-fit:cover;object-position:50% 10%;border-radius:44% 56% 18% 20% / 38% 46% 12% 12%;box-shadow:0 24px 70px rgba(75,59,18,.15);position:relative;z-index:2}
.hero-note{position:absolute;right:-8px;top:118px;z-index:3;font-family:"Segoe Print","Bradley Hand",cursive;font-style:italic;font-size:17px;line-height:1.35;transform:rotate(-2deg);max-width:165px;text-align:center}
.hero-note::after{content:"↙";display:block;font-size:42px;margin-top:6px;color:var(--periwinkle-deep)}
.benefits{position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);margin-top:10px;border-radius:28px;background:rgba(255,255,255,.96);box-shadow:var(--shadow);overflow:hidden}
.benefit{padding:25px 24px;min-height:135px;border-right:1px solid var(--line)}
.benefit:last-child{border-right:0}
.icon{width:43px;height:43px;border:1.5px solid var(--periwinkle);border-radius:14px;display:grid;place-items:center;font-size:21px;margin-bottom:13px;color:var(--periwinkle-deep)}
.benefit strong{font-size:12px;display:block;letter-spacing:.02em}
.benefit span{font-size:12px;color:#d9a623;display:block;margin-top:5px}

.whatsapp-btn{gap:12px;padding-inline:18px;box-shadow:0 10px 24px rgba(60,47,14,.05)}
.wa-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:0 0 30px;background:#25d366;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}
.wa-icon svg{display:block;width:16px;height:16px}
.marker-keep{display:inline-block}

/* Showcase */
.showcase{padding:70px 0;background:linear-gradient(120deg,#f6f4ef 0,#faf9f6 55%,#f2f0e9 100%);border-radius:54px 54px 0 0;margin-top:60px}
.showcase-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:48px;align-items:center}
.showcase h2,.testimonials h2,.process h2{font-family:Georgia,"Times New Roman",serif;font-size:38px;line-height:1.06;font-weight:500;margin:16px 0 20px}
.checks{list-style:none;padding:0;margin:24px 0 28px;display:grid;gap:10px}
.checks li{display:flex;gap:10px;align-items:flex-start;color:#6f571a;font-size:15px}
.checks li::before{content:"✓";width:19px;height:19px;border-radius:50%;background:var(--periwinkle);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;margin-top:2px;flex:0 0 auto}
.device-stage{position:relative;min-height:450px;display:flex;align-items:end;justify-content:center}
.laptop{width:min(680px,88%);background:#3b2e0e;border-radius:19px 19px 12px 12px;padding:12px 12px 8px;box-shadow:0 26px 50px rgba(65,51,15,.28);position:relative}
.laptop::after{content:"";position:absolute;left:-7%;right:-7%;height:16px;bottom:-16px;border-radius:0 0 50% 50%;background:linear-gradient(#d5d2ca,#aca696)}
.browser{height:380px;border-radius:11px;overflow:hidden;background:#ddac2f;position:relative}
.browser-top{height:32px;background:rgba(68,53,16,.22);display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:0 18px;color:#fff;font-size:9px}
.browser-content{height:calc(100% - 32px);display:grid;grid-template-columns:1.05fr .95fr;position:relative;background:linear-gradient(135deg,#eeb936,#a59e8d 55%,#d6d2c9)}
.browser-copy{padding:38px 20px 20px 34px;color:#fff}
.browser-copy small{font-size:10px;opacity:.85}
.browser-copy h3{font-family:Georgia,serif;font-size:29px;line-height:1.03;font-weight:500;margin:12px 0}
.browser-copy p{font-size:11px;max-width:220px;opacity:.94}
.browser-photo{align-self:end;height:100%;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;background:radial-gradient(circle at 55% 35%,rgba(255,255,255,.15),transparent 42%)}
.browser-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 18%;mix-blend-mode:normal;filter:saturate(.75) contrast(.94)}
.browser-bottom{position:absolute;left:0;right:0;bottom:0;height:52px;background:#fff;display:flex;justify-content:space-around;align-items:center;color:#d6a323;font-size:9px}
.phone{position:absolute;right:1%;bottom:-1px;width:142px;height:304px;background:#1f190a;border-radius:28px;padding:8px;box-shadow:0 24px 50px rgba(65,51,15,.32);z-index:5;transform:rotate(.7deg)}
.phone-screen{height:100%;background:#fff;border-radius:21px;padding:24px 12px 12px;overflow:hidden;font-size:9px}
.phone-screen h4{font-family:Georgia,serif;font-size:14px;margin:0 0 6px}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:12px 0;font-size:7px;color:#8c846e}
.calendar span{text-align:center;padding:2px 0}
.times{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:10px}
.times button{font-size:8px;background:#faf9f7;border:1px solid #e9e6df;border-radius:6px;padding:6px 2px;color:#71591b}
.confirm{margin-top:10px;background:var(--periwinkle-deep);color:#fff;border:0;border-radius:8px;padding:8px;width:100%;font-size:8px}

/* Testimonials */
.testimonials{padding:68px 0 48px;text-align:center}
.testimonials h2{font-size:34px}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px;text-align:left}
.review{padding:25px;background:#fff;border:1px solid #eeece8;border-radius:20px;box-shadow:0 12px 34px rgba(85,66,20,.06)}
.stars{color:#eebd40;letter-spacing:2px;font-size:14px}
.review p{font-size:13px;color:#c79820;min-height:78px}
.person{display:flex;align-items:center;gap:10px;margin-top:16px}
.avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#f1c75e,#efc049);display:grid;place-items:center;color:white;font-weight:800}
.person strong{font-size:13px;display:block}.person span{font-size:11px;color:#8f8771}

/* Process */
.process{padding:34px 0 74px;text-align:center;background:linear-gradient(180deg,#fbfaf7 0%,#faf9f5 100%)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}
.step{position:relative;padding:28px 22px 24px;background:rgba(255,255,255,.92);border:1px solid #eeece8;border-radius:24px;box-shadow:0 14px 30px rgba(85,66,20,.06);text-align:left}
.step:not(:last-child)::after{content:"";display:none}
.step-num{width:52px;height:52px;border-radius:18px;margin:0 0 16px;background:linear-gradient(135deg,#fff0a8,#ffd54d);display:grid;place-items:center;color:var(--ink);font-weight:900;box-shadow:0 12px 24px rgba(255,210,63,.24)}
.step strong{font-size:13px;display:block;letter-spacing:.03em;margin-bottom:10px}.step p{font-size:14px;color:#dba824;line-height:1.6;margin:0}

/* CTA */
.final-cta{padding-bottom:32px}
.cta-box{border-radius:44px;background:linear-gradient(120deg,#eebb39,#efbd41);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:30px;padding:40px 46px;overflow:hidden;position:relative}
.cta-box::before{content:"";position:absolute;left:-80px;bottom:-110px;width:260px;height:260px;border:1px solid rgba(255,255,255,.14);border-radius:50%}
.cta-box h2{font-family:Georgia,serif;font-size:38px;line-height:1.08;font-weight:500;margin:0;max-width:580px}
.cta-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.cta-emphasis{font-style:italic;color:inherit;font-weight:inherit}
.final-cta .highlight::after,.final-cta .marker::before{display:none!important}
.site-footer{padding:26px 0 40px;color:#8c846e;font-size:12px;text-align:center}

/* inner content */
.entry-content{padding:60px 0}.entry-content h1,.entry-content h2,.entry-content h3{font-family:Georgia,serif;color:var(--ink)}

@media (max-width: 980px){
  .menu-toggle{display:block}.main-nav{position:absolute;top:82px;left:21px;right:21px;padding:20px;display:none;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.main-nav.is-open{display:flex}
  .hero-grid{grid-template-columns:1fr}.hero-content{max-width:none;padding-right:0}.hero-actions{margin-bottom:24px}.hero-actions .btn{min-width:0}.hero-photo-wrap{min-height:520px;padding-top:0}.hero-note{right:8%;top:50px}.benefits{grid-template-columns:repeat(2,1fr);margin-top:18px}.benefit:nth-child(2){border-right:0}.benefit:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .showcase-grid{grid-template-columns:1fr}.device-stage{margin-top:20px}.reviews{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.step:nth-child(2)::after{display:none}.cta-box{grid-template-columns:1fr}.cta-actions{justify-content:flex-start}
}
@media (max-width: 640px){
  .container{width:min(100% - 28px,1180px)}.header-inner{height:72px}.brand img{width:170px}.main-nav{top:72px}
  .hero{padding-top:44px}.hero h1{font-size:44px;max-width:11ch}.hero-copy{font-size:16px}.hero-actions{gap:12px}.hero-actions .btn{width:100%}.hero-photo-wrap{min-height:430px}.hero-photo{height:430px;width:100%}.hero-note{display:none}.benefits{grid-template-columns:1fr}.benefit{border-right:0!important;border-bottom:1px solid var(--line)}.benefit:last-child{border-bottom:0}
  .showcase{margin-top:38px;padding:54px 0;border-radius:32px 32px 0 0}.showcase h2{font-size:34px}.device-stage{min-height:350px}.browser{height:270px}.browser-copy{padding:24px 14px}.browser-copy h3{font-size:22px}.browser-copy p{display:none}.phone{width:105px;height:230px;right:-2%}.browser-bottom{height:40px}.browser-photo img{object-position:50% 15%}
  .testimonials h2,.process h2{font-size:30px}.steps{grid-template-columns:1fr}.step::after{display:none!important}.cta-box{padding:34px 26px;border-radius:30px}.cta-box h2{font-size:31px}.cta-actions{flex-direction:column;align-items:stretch}.cta-actions .btn{width:100%}.cta-actions .whatsapp-btn{justify-content:center}
}


/* ===== JUPAZZ STUDIO 1.2 — visual polish ===== */
:root{
  --yellow:#ffd23f;
  --yellow-soft:#ffe58a;
  --violet:#efbe42;
  --violet-deep:#dcaa2a;
  --sky:#f4efe2;
}
.marker{position:relative;display:inline;z-index:1;font-weight:700}
.marker::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.01em;height:.70em;background:linear-gradient(90deg,var(--yellow-soft) 0%,var(--yellow) 100%);border-radius:.10em .24em .14em .20em;transform:rotate(-.8deg);clip-path:polygon(1% 12%,99% 4%,98% 87%,3% 100%,0 64%);opacity:.96}
.marker-small::before{height:.64em;bottom:-.01em}
.handwritten{font-family:"Segoe Print","Bradley Hand",cursive;font-style:italic;font-weight:500}
.hero h1 .highlight::after{background:linear-gradient(90deg,var(--yellow-soft),var(--yellow));height:.74em;bottom:-.02em}
.hero h1 .line2{color:#ddac30}
.hero::before{background:radial-gradient(circle at 36% 35%,#fbfaf8 0 30%,#f5f2ea 63%,#f2ecdd 100%)}

/* A more intentional portfolio block */
.showcase{background:linear-gradient(135deg,#f8f6f0 0%,#f8f6f0 48%,#f6f2e9 100%)}
.showcase-grid{align-items:stretch}
.showcase-grid>div:first-child{align-self:center;padding:18px 4px}
.device-stage{min-height:470px;padding:12px 0 22px;isolation:isolate}
.device-stage::before{content:"";position:absolute;inset:4% 2% 3% 8%;border-radius:42px;background:radial-gradient(circle at 72% 28%,rgba(255,255,255,.84),rgba(255,255,255,.22) 34%,transparent 66%);z-index:-1}
.laptop{width:min(720px,90%);padding:11px;background:#2d230b;border:1px solid rgba(255,255,255,.15)}
.browser{height:398px;background:#eeba38}
.browser-top{height:38px;background:#daa623;font-size:10px;padding:0 22px}
.browser-content{height:calc(100% - 38px);grid-template-columns:.92fr 1.08fr;background:linear-gradient(135deg,#eeba38 0%,#eebd41 52%,#c5c0b5 100%)}
.browser-copy{padding:48px 24px 76px 34px}
.browser-copy small{letter-spacing:.08em;font-size:9px}
.browser-copy h3{font-size:31px;line-height:1.02;margin:14px 0 12px}
.browser-copy p{font-size:11px;line-height:1.45}
.browser-photo{height:100%;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(76,59,18,.04))}
.browser-photo img{height:100%;object-fit:cover;object-position:50% 16%;filter:saturate(.9) contrast(.98)}
.browser-bottom{height:58px;font-size:9px;padding:0 12px;gap:8px}
.phone{right:0;bottom:-3px;width:154px;height:320px;padding:7px;border-radius:30px;background:#201a0a}
.phone-screen{padding:22px 12px 12px;border-radius:23px}
.phone-screen h4{font-size:16px;line-height:1.08;margin-bottom:7px}
.calendar{font-size:7.5px;gap:4px}
.times button{background:#fefdfb}
.confirm{background:var(--violet-deep)}

/* More visual rhythm */
.benefits{border:1px solid rgba(233,231,224,.78)}
.review{border-radius:22px}
.cta-box{background:linear-gradient(120deg,#ddab2d 0%,#eebc3d 60%,#efbf47 100%)}
.btn-primary{background:#eeba36}
.btn-primary:hover{background:#dcaa2a}

@media (max-width: 980px){
  .showcase-grid{gap:30px}
  .device-stage{min-height:420px}
}

@media (max-width: 640px){
  .hero h1{font-size:44px;line-height:1.02}
  .hero-copy .marker{white-space:nowrap}
  .showcase{padding:40px 0 46px;margin-top:26px}
  .showcase-grid{gap:18px}
  .showcase-grid>div:first-child{padding:8px 2px 16px}
  .showcase-grid>div:first-child .eyebrow{margin-bottom:4px}
  .showcase-grid>div:first-child h2{font-size:31px;margin:12px 0 16px}
  .checks{margin:16px 0 20px;gap:8px}
  .checks li{font-size:14px}
  .showcase-grid>div:first-child .btn{width:100%;font-size:14px}
  .device-stage{min-height:330px;margin-top:0;padding:0 4px 8px;align-items:center;overflow:visible}
  .device-stage::before{inset:0 -5px 5px -5px;border-radius:28px}
  .laptop{width:94%;padding:7px;border-radius:13px 13px 8px 8px}
  .laptop::after{height:10px;bottom:-10px}
  .browser{height:248px;border-radius:7px}
  .browser-top{height:27px;font-size:6.7px;gap:9px;padding:0 8px}
  .browser-content{height:calc(100% - 27px);grid-template-columns:1.02fr .98fr}
  .browser-copy{padding:22px 9px 44px 14px}
  .browser-copy small{font-size:6.2px}
  .browser-copy h3{font-size:17px;line-height:1.02;margin:7px 0 6px}
  .browser-copy p{display:block;font-size:7px;line-height:1.3;margin:0 0 7px;max-width:125px}
  .browser-copy .btn{display:none}
  .browser-photo img{object-position:50% 18%;filter:saturate(.9)}
  .browser-bottom{height:34px;font-size:6.4px;gap:4px;padding:0 5px;white-space:nowrap;overflow:hidden}
  .phone{width:92px;height:205px;right:-1px;bottom:2px;padding:5px;border-radius:21px}
  .phone-screen{padding:17px 7px 7px;border-radius:16px;font-size:6px}
  .phone-screen h4{font-size:10.5px;margin-bottom:4px}
  .calendar{font-size:5.2px;gap:2px;margin:7px 0}
  .times{gap:3px;margin-top:6px}
  .times button{font-size:5px;padding:3px 1px}
  .confirm{font-size:5px;padding:5px 2px;margin-top:5px}
}


/* ===== JUPAZZ STUDIO 1.6 — phoenix brand / mobile title / message CTA ===== */
.site-header{
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.brand-new{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:0;
  text-decoration:none;
}
.brand-new .brand-mark{
  width:62px;
  height:62px;
  max-width:none;
  object-fit:contain;
  flex:0 0 62px;
}
.brand-wordmark{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1;
}
.brand-name{
  color:var(--ink);
  font-size:19px;
  letter-spacing:.26em;
  font-weight:500;
  padding-left:.26em;
}
.brand-studio{
  color:#efbf47;
  font-size:19px;
  letter-spacing:.26em;
  font-weight:500;
  margin-top:4px;
  padding-left:.26em;
}
.hero-title-mobile{display:none}

/* WhatsApp: no green phone badge; use a message symbol in the site palette */
.whatsapp-btn{
  background:#fff;
  color:var(--ink);
  border-color:#e8e4db;
  box-shadow:0 11px 26px rgba(190,145,31,.08);
}
.whatsapp-btn:hover{
  background:#fbfbf9;
  border-color:#dbd6ca;
}
.wa-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(135deg,#f7f5f0 0%,#f1ede2 100%);
  color:#edb934;
  box-shadow:inset 0 0 0 1px rgba(237,185,52,.13);
}
.wa-icon svg{
  width:19px;
  height:19px;
  display:block;
}

@media (max-width:980px){
  .brand-new .brand-mark{
    width:58px;
    height:58px;
    flex-basis:58px;
  }
  .brand-name{font-size:18px}
  .brand-studio{font-size:18px; letter-spacing:.24em; padding-left:.24em;}
}

@media (max-width:640px){
  .header-inner{height:78px}
  .brand-new{gap:9px}
  .brand-new .brand-mark{
    width:52px;
    height:52px;
    flex-basis:52px;
  }
  .brand-name{
    font-size:16px;
    letter-spacing:.22em;
    padding-left:.22em;
  }
  .brand-studio{
    font-size:16px;
    letter-spacing:.22em;
    padding-left:.22em;
    margin-top:4px;
  }
  .main-nav{top:78px}

  /* Deliberate mobile composition: the full stop no longer dictates the line break. */
  .hero h1{
    max-width:none;
    font-size:43px;
    line-height:1.03;
    letter-spacing:-.038em;
  }
  .hero-title-desktop{display:none}
  .hero-title-mobile{display:inline}

  .hero-actions{
    gap:14px;
    margin:30px 0 44px;
  }
  .hero-actions .btn,
  .cta-actions .btn{
    width:100%;
  }
  .whatsapp-btn{
    justify-content:center;
  }
}

/* ===== JUPAZZ STUDIO 1.7 — new brand + conversion pages ===== */
.brand-v17{display:flex;align-items:center;text-decoration:none;line-height:0}
.brand-logo-v17{width:108px;height:88px;object-fit:contain;object-position:center;display:block}
.site-header .header-inner{min-height:96px;height:auto}

.inner-page{background:#fbfaf8;color:var(--ink)}
.narrow{max-width:980px}
.page-hero{padding:104px 0 88px;background:radial-gradient(circle at 68% 30%,#f8f6f0 0,#fafaf8 43%,#fbfaf8 72%)}
.page-hero .eyebrow{margin-bottom:26px}
.page-hero h1{font-family:Georgia,serif;font-size:clamp(50px,6vw,86px);font-weight:400;line-height:.98;letter-spacing:-.045em;margin:0 0 28px;max-width:13ch}
.page-hero h1 em{font-weight:400;color:#eebc3c}
.page-hero p{font-size:20px;line-height:1.65;max-width:760px;color:#ce9d22}
.section-kicker{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:#efbe42;margin-bottom:14px}
.section-kicker.light{color:#f1eee5}
.split-editorial{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.split-editorial h2{font-family:Georgia,serif;font-size:clamp(38px,4vw,60px);line-height:1.02;font-weight:400;margin:0}
.editorial-copy{font-size:18px;line-height:1.65;color:#d1a022;padding-top:18px}
.soft-note{padding:18px 20px;background:#f7f5f0;border-radius:18px;border:1px solid #eceae3;font-size:15px}
.text-link{color:#dca929;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(220,169,41,.3);padding-bottom:3px}

/* Portfolio */
.portfolio-intro{padding:86px 0 70px}
.portfolio-grid-section{padding:12px 0 110px}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.project-card{background:#fff;border:1px solid #eceae4;border-radius:28px;overflow:hidden;box-shadow:0 18px 60px rgba(79,62,19,.06)}
.project-visual{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,#f5f2ea,#f1ece0);overflow:hidden}
.project-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.project-card:hover .project-visual img{transform:scale(1.025)}
.project-placeholder{width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at 65% 30%,#fbfbf9,#f0ece2)}
.project-placeholder span{font-family:Georgia,serif;font-size:90px;color:#efbe44}
.project-card-copy{padding:28px 30px 32px}.project-meta{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#a59d8a;font-weight:800}.project-card h2{font-family:Georgia,serif;font-size:34px;font-weight:400;margin:9px 0 12px}.project-card h2 a{color:var(--ink);text-decoration:none}.project-card p{color:#dca826;line-height:1.55}
.portfolio-empty{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center;padding:60px;border-radius:34px;background:linear-gradient(135deg,#f6f4ee,#f6f3eb)}
.portfolio-empty h2{font-family:Georgia,serif;font-size:48px;font-weight:400;margin:8px 0 18px}.portfolio-empty p{font-size:17px;line-height:1.65;color:#d6a323}.admin-hint{font-size:14px!important}
.portfolio-empty-ui{position:relative;min-height:320px}.mini-browser{position:absolute;left:0;top:30px;width:82%;height:240px;background:#fff;border:10px solid #40320f;border-radius:20px;box-shadow:0 25px 60px rgba(66,51,15,.16)}.mini-browser>span{display:inline-block;width:8px;height:8px;border-radius:50%;background:#aaa;margin:10px 2px}.mini-browser>div{height:170px;margin:10px;background:linear-gradient(135deg,#eebc3e,#e5e2da);border-radius:8px}.mini-phone{position:absolute;right:4%;bottom:0;width:85px;height:180px;border:8px solid #40320f;border-radius:23px;background:#fff}.mini-phone>div{height:100%;border-radius:14px;background:linear-gradient(#fafafa,#f5f2eb)}

/* Services */
.service-stack{padding:80px 0 110px}.service-feature{display:grid;grid-template-columns:90px 1fr 1fr;gap:40px;padding:48px 0;border-top:1px solid #e7e5df;align-items:start}.service-feature:last-child{border-bottom:1px solid #e7e5df}.service-index{font-family:Georgia,serif;font-size:34px;color:#f1c75c}.service-feature h2{font-family:Georgia,serif;font-weight:400;font-size:42px;margin:0 0 14px}.service-feature p{font-size:17px;line-height:1.65;color:#d6a323;max-width:610px}.service-feature ul{list-style:none;padding:0;margin:28px 0 0}.service-feature li{padding:10px 0;border-bottom:1px solid #f1f0ec;color:#cb9b21}.service-feature li::before{content:'↗';color:#efbf46;margin-right:12px}.who-fit{padding:90px 0;background:#f6f4f0}

/* Method */
.method-timeline{padding:60px 0 105px}.method-row{display:grid;grid-template-columns:80px .85fr 1fr;gap:38px;padding:44px 0;border-top:1px solid #e7e5df;align-items:start}.method-row:last-child{border-bottom:1px solid #e7e5df}.method-number{font-family:Georgia,serif;font-size:31px;color:#f1c558}.method-row h2{font-family:Georgia,serif;font-size:40px;font-weight:400;margin:0}.method-row>p{font-size:17px;line-height:1.65;color:#d8a523;margin-top:28px}.method-principles{padding:80px 0 100px;background:#f6f4f0}.method-principles h2{font-family:Georgia,serif;font-size:48px;font-weight:400;margin:0 0 42px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.principle-grid>div{background:#fff;padding:32px;border-radius:22px;border:1px solid #e9e7e1}.principle-grid strong{font-family:Georgia,serif;font-size:28px;font-weight:400}.principle-grid p{color:#dca928;line-height:1.55}

/* Contact */
.contact-layout{padding:70px 0 110px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.contact-aside{position:sticky;top:130px}.contact-aside h2{font-family:Georgia,serif;font-size:46px;font-weight:400;margin:0 0 30px}.contact-prompts{margin-bottom:32px}.contact-prompts>div{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:18px 0;border-top:1px solid #e8e6e0}.contact-prompts span{color:#f0c24e;font-family:Georgia,serif}.contact-prompts p{margin:0;color:#d3a122;line-height:1.5}.contact-form-card{background:#fff;border:1px solid #e9e7e1;border-radius:30px;padding:40px;box-shadow:0 20px 70px rgba(86,67,20,.07)}.jupazz-contact-form{display:grid;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.jupazz-contact-form label{display:grid;gap:7px;color:#5b4715;font-size:14px;font-weight:700}.jupazz-contact-form input,.jupazz-contact-form textarea{width:100%;border:1px solid #e3e1db;border-radius:14px;background:#fdfcfb;padding:14px 15px;font:inherit;color:#524013;outline:none}.jupazz-contact-form input:focus,.jupazz-contact-form textarea:focus{border-color:#efc14c;box-shadow:0 0 0 3px rgba(239,193,76,.12)}.privacy-check{display:flex!important;grid-template-columns:18px 1fr!important;align-items:start;font-weight:400!important;font-size:12px!important;line-height:1.45;color:#ddac2f!important}.privacy-check input{width:auto;margin-top:2px}.hp-field{position:absolute;left:-9999px}.form-success,.form-error{padding:15px 17px;border-radius:14px;margin-bottom:20px;font-weight:700}.form-success{background:#eef7f1;color:#315c42}.form-error{background:#fff1f1;color:#8b4141}

/* Project detail */
.project-hero{padding:100px 0 70px;background:linear-gradient(135deg,#faf9f7,#f6f4ee)}.project-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}.project-hero h1{font-family:Georgia,serif;font-size:clamp(50px,6vw,80px);font-weight:400;line-height:1;margin:18px 0}.project-hero p{font-size:19px;line-height:1.6;color:#dba824}.project-hero-image{aspect-ratio:4/3;border-radius:28px;overflow:hidden;background:#eeece6}.project-hero-image img{width:100%;height:100%;object-fit:cover}.project-story{padding:80px 0 110px}.project-story-grid{display:grid;grid-template-columns:260px 1fr;gap:70px}.project-story aside{display:grid;align-content:start;gap:25px}.project-story aside div{border-top:1px solid #e6e4de;padding-top:15px}.project-story aside span{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:#a8a190;margin-bottom:7px}.project-content{font-size:18px;line-height:1.75;max-width:760px}.project-content h2,.project-content h3{font-family:Georgia,serif;font-weight:400}

/* CTA and footer */
.page-cta-band{background:#edb933;color:#fff;padding:76px 0}.page-cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.page-cta-inner h2{font-family:Georgia,serif;font-size:50px;line-height:1.02;font-weight:400;margin:0}.page-cta-inner p{font-size:17px;line-height:1.6;color:#f8f6f0;margin:0 0 24px}.site-footer{padding:38px 0;background:#443610;color:#fff}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-grid>div{display:grid;gap:4px}.footer-grid strong{letter-spacing:.18em}.footer-grid span{color:#f1c961;font-size:13px}.footer-grid nav{display:flex;gap:24px}.footer-grid a{color:#fff;text-decoration:none;font-size:13px}

@media(max-width:980px){
  .brand-logo-v17{width:94px;height:76px}.site-header .header-inner{min-height:84px}
  .split-editorial,.portfolio-empty,.contact-grid,.project-hero-grid,.project-story-grid,.page-cta-inner{grid-template-columns:1fr;gap:32px}
  .project-grid{grid-template-columns:1fr}.service-feature,.method-row{grid-template-columns:64px 1fr;gap:26px}.service-feature>ul,.method-row>p{grid-column:2}.principle-grid{grid-template-columns:1fr}.contact-aside{position:static}.project-story-grid aside{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .site-header .header-inner{min-height:74px;height:74px}.brand-logo-v17{width:78px;height:62px}.main-nav{top:74px}
  .page-hero{padding:62px 0 56px}.page-hero h1{font-size:45px;line-height:1.01;max-width:none}.page-hero p{font-size:16px}.portfolio-intro{padding:54px 0 45px}.split-editorial{gap:22px}.split-editorial h2{font-size:38px}.editorial-copy{font-size:16px;padding-top:0}
  .project-card-copy{padding:22px}.project-card h2{font-size:30px}.portfolio-empty{padding:30px 22px}.portfolio-empty-ui{min-height:230px}.mini-browser{height:180px}.mini-browser>div{height:120px}.mini-phone{height:135px;width:66px}.portfolio-empty h2{font-size:36px}
  .service-stack{padding:45px 0 70px}.service-feature{grid-template-columns:44px 1fr;padding:34px 0;gap:16px}.service-feature h2{font-size:32px}.service-feature>ul{grid-column:1/-1;margin-top:6px}.service-index{font-size:24px}
  .method-timeline{padding:36px 0 70px}.method-row{grid-template-columns:38px 1fr;gap:15px;padding:31px 0}.method-row h2{font-size:31px}.method-row>p{grid-column:1/-1;margin-top:0;font-size:15px}.method-principles h2{font-size:37px}.principle-grid>div{padding:25px}
  .contact-layout{padding:42px 0 75px}.contact-form-card{padding:25px 20px;border-radius:24px}.form-row{grid-template-columns:1fr}.contact-aside h2{font-size:37px}
  .project-hero{padding:62px 0 46px}.project-hero h1{font-size:47px}.project-story{padding:50px 0 75px}.project-story-grid aside{grid-template-columns:1fr}.project-content{font-size:16px}
  .page-cta-band{padding:54px 0}.page-cta-inner h2{font-size:38px}.footer-grid{align-items:flex-start;flex-direction:column}.footer-grid nav{flex-wrap:wrap;gap:14px 20px}
}


/* ===== JUPAZZ STUDIO 1.8 — new signature logo in header ===== */
.brand-v18{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex:0 0 auto;
  line-height:0;
  text-decoration:none;
}
.brand-logo-v18{
  display:block;
  width:286px;
  height:78px;
  max-width:none;
  object-fit:contain;
  object-position:left center;
}
.site-header .header-inner{
  min-height:92px;
  height:auto;
}
@media (max-width:980px){
  .brand-logo-v18{
    width:248px;
    height:70px;
  }
  .site-header .header-inner{min-height:84px}
}
@media (max-width:640px){
  .site-header .container{width:calc(100% - 20px)}
  .site-header .header-inner{
    min-height:76px;
    height:76px;
    gap:12px;
  }
  .brand-logo-v18{
    width:220px;
    height:64px;
  }
  .menu-toggle{margin-left:auto}
  .main-nav{top:76px}
}
@media (max-width:390px){
  .brand-logo-v18{width:202px;height:60px}
}

/* ===== JUPAZZ STUDIO 1.9 — booking ecosystem + signature header ===== */
.brand-v18,.brand-logo-v18{display:none!important}
.brand-v19{display:flex;align-items:center;flex:0 0 auto;line-height:0;text-decoration:none}
.brand-logo-v19{display:block;width:300px;height:88px;max-width:none;object-fit:contain;object-position:left center}
.site-header .header-inner{min-height:98px;height:auto}

.hero-booking-wrap{position:relative;min-height:535px;display:flex;align-items:center;justify-content:center;padding:30px 8px 20px}
.hero-booking-wrap::before{content:"";position:absolute;inset:65px -12px 60px 30px;border-radius:46% 54% 40% 60%;background:linear-gradient(145deg,#f9f7f1 0%,#f3f0e8 55%,#f9f8f5 100%);z-index:0}
.hero-booking-badge{position:absolute;right:2px;top:12px;width:220px;padding:16px 18px;border:1px solid #ebe8e0;border-radius:18px;background:rgba(255,255,255,.95);box-shadow:0 14px 40px rgba(105,83,25,.08);z-index:5;display:grid;grid-template-columns:34px 1fr;gap:3px 9px;align-items:center}
.hero-booking-badge>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#f6f4ee;color:#eeba39;font-size:19px}.hero-booking-badge strong{font-size:12px;line-height:1.15}.hero-booking-badge small{font-size:9px;color:#938a75;line-height:1.3}
.booking-laptop{position:relative;width:94%;max-width:520px;padding:11px 11px 18px;border-radius:21px 21px 13px 13px;background:#40320f;box-shadow:0 30px 75px rgba(68,54,16,.2);z-index:2}
.booking-laptop::after{content:"";position:absolute;left:-6%;right:-6%;bottom:-14px;height:15px;border-radius:2px 2px 12px 12px;background:linear-gradient(#c9c5ba,#edebe7 60%,#b2ad9e)}
.booking-screen{height:330px;background:#fff;border-radius:12px;overflow:hidden}.booking-screen-top{height:44px;padding:0 18px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #f1f0ed;font-size:12px;font-weight:800;color:#614c17}.booking-dot{width:8px;height:8px;border-radius:50%;background:#efbe43}
.booking-screen-grid{display:grid;grid-template-columns:1fr 118px;height:286px}.booking-calendar-ui{padding:18px 16px}.booking-month{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-bottom:16px}.booking-month span{color:#efc049}.booking-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;font-size:8px;color:#948c77}.booking-days span{aspect-ratio:1;display:grid;place-items:center;border-radius:7px}.booking-days span:nth-child(-n+7){font-weight:800;color:#b6b0a1}.booking-days span.active{background:#efbe43;color:#fff;box-shadow:0 5px 12px rgba(221,171,45,.24)}
.booking-times-ui{background:#fdfcfa;border-left:1px solid #f2f1ed;padding:18px 12px;display:grid;align-content:start;gap:8px}.booking-times-ui>b{font-size:9px;color:#d6a323;margin-bottom:5px}.booking-times-ui button{border:1px solid #ebe9e3;background:#fff;border-radius:8px;padding:7px 4px;font-size:8px;color:#d6a323}.booking-times-ui button.active{background:#efbd41;color:#fff;border-color:#efbd41}
.booking-confirm-card{position:absolute;right:-30px;bottom:44px;width:165px;border-radius:16px;background:#fff;padding:16px;box-shadow:0 18px 50px rgba(86,68,20,.18);z-index:4;display:grid;gap:7px;border:1px solid #ebe9e3}.booking-confirm-card small{font-size:8px;color:#a59e8c}.booking-confirm-card strong{font-size:11px;color:#5a4615}.booking-confirm-card span{font-size:8px;color:#928a75}.booking-confirm-card button{border:0;border-radius:8px;background:#eebd41;color:#fff;padding:8px;font-size:8px}
.booking-phone-mini{position:absolute;right:22px;bottom:10px;width:112px;min-height:175px;padding:22px 11px 12px;border:7px solid #40320f;border-radius:25px;background:#fff;z-index:5;text-align:center;display:grid;align-content:center;gap:8px;box-shadow:0 20px 45px rgba(68,54,16,.18)}.booking-phone-mini .check-ring{width:36px;height:36px;margin:auto;border:1px solid #f0c351;border-radius:50%;display:grid;place-items:center;color:#eebd3f;font-weight:900}.booking-phone-mini strong{font-size:8px;line-height:1.3}.booking-phone-mini small{font-size:6.5px;color:#a49d8c;line-height:1.35}
.booking-direct-card{position:absolute;left:5px;bottom:18px;width:200px;padding:12px 14px;border-radius:15px;background:rgba(255,255,255,.96);border:1px solid #eae8e3;z-index:6;display:flex;gap:10px;align-items:flex-start;box-shadow:0 12px 32px rgba(98,76,23,.08)}.booking-direct-card>span{width:26px;height:26px;border-radius:50%;background:#f5f3ee;color:#edb935;display:grid;place-items:center;font-weight:900}.booking-direct-card div{display:grid;gap:2px}.booking-direct-card strong{font-size:10px;color:#5b4715}.booking-direct-card small{font-size:7.5px;line-height:1.35;color:#938b76}

.booking-ecosystem{padding:90px 0 76px;background:linear-gradient(180deg,#faf9f6 0%,#f7f5f0 100%);border-radius:54px 54px 0 0;margin-top:62px}.booking-ecosystem-head{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:end;margin-bottom:42px}.booking-ecosystem h2{font-family:Georgia,"Times New Roman",serif;font-size:48px;line-height:1.04;font-weight:400;margin:10px 0 0;max-width:760px}.booking-ecosystem-head p{font-size:17px;line-height:1.65;color:#daa724;margin:0 0 18px}.booking-feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:17px}.booking-feature-grid article{background:rgba(255,255,255,.9);border:1px solid #e9e7e1;border-radius:24px;padding:26px 22px 28px;box-shadow:0 14px 36px rgba(98,76,23,.045)}.booking-feature-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#f4f2eb;color:#eebb39;font-size:20px;margin-bottom:18px}.booking-feature-grid h3{font-size:16px;line-height:1.2;margin:0 0 10px;color:#594615}.booking-feature-grid p{font-size:13px;line-height:1.5;color:#ddab2d;margin:0}.booking-note{margin-top:24px;border:1px solid #e8e5de;border-radius:18px;background:rgba(255,255,255,.82);min-height:66px;padding:10px 12px 10px 22px;display:flex;align-items:center;gap:10px}.booking-note strong{font-size:13px;color:#bf911f}.booking-note span{font-size:13px;color:#89816c;flex:1}.booking-note .btn{min-height:44px;padding:0 20px;font-size:12px}

/* Booking detail page */
.booking-page-hero-grid{display:grid;grid-template-columns:1fr 400px;gap:70px;align-items:center}.booking-page-card{padding:34px;border-radius:26px;background:#fff;border:1px solid #eae8e1;box-shadow:0 20px 65px rgba(97,76,23,.07);display:grid;gap:12px}.booking-page-card>strong{font-family:Georgia,serif;font-size:38px;font-weight:400;color:#524013}.booking-page-card>p{font-size:16px;line-height:1.6;color:#dca825;margin:0}.booking-page-card>small{font-size:11px;line-height:1.45;color:#a49d8b}.booking-page-flow{padding:90px 0 110px}.booking-intro{margin-bottom:55px}.booking-flow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.booking-flow-steps article{padding:30px 26px;border:1px solid #e9e7e2;border-radius:22px;background:#fff}.booking-flow-steps article>span{display:inline-block;color:#efc14a;font-family:Georgia,serif;font-size:20px;margin-bottom:30px}.booking-flow-steps h3{font-family:Georgia,serif;font-size:26px;font-weight:400;margin:0 0 12px}.booking-flow-steps p{color:#dcaa2a;font-size:14px;line-height:1.55;margin:0}.booking-control{padding:90px 0;background:#f7f5f0}.booking-control-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center}.booking-control-grid h2{font-family:Georgia,serif;font-size:48px;line-height:1.04;font-weight:400;margin:12px 0 18px}.booking-control-grid>div:last-child>p{font-size:17px;line-height:1.65;color:#dba825}.booking-dashboard-demo{background:#fff;border-radius:28px;padding:28px;border:1px solid #e9e7e1;box-shadow:0 24px 70px rgba(84,66,20,.09)}.dash-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid #f2f1ed}.dash-top span{font-family:Georgia,serif;font-size:25px}.dash-top b{font-size:10px;color:#968e7a}.dash-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.dash-stats div{background:#faf9f7;border-radius:15px;padding:17px}.dash-stats small{display:block;color:#a39c8a;font-size:9px;margin-bottom:8px}.dash-stats strong{font-family:Georgia,serif;font-size:27px;font-weight:400}.dash-list{display:grid;gap:9px}.dash-list span{padding:13px 15px;border:1px solid #eeece7;border-radius:13px;font-size:12px;color:#d19f22}.dash-list i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#efbf47;margin-right:9px}.booking-ownership{padding:90px 0 105px}

@media(max-width:1100px){.booking-feature-grid{grid-template-columns:repeat(3,1fr)}.booking-feature-grid article:nth-child(4),.booking-feature-grid article:nth-child(5){grid-column:span 1}}
@media(max-width:980px){
  .brand-logo-v19{width:260px;height:78px}.site-header .header-inner{min-height:88px}
  .hero-booking-wrap{min-height:500px;max-width:620px;margin:0 auto}.booking-ecosystem-head,.booking-page-hero-grid,.booking-control-grid{grid-template-columns:1fr;gap:32px}.booking-feature-grid{grid-template-columns:repeat(2,1fr)}.booking-flow-steps{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .brand-logo-v19{width:245px;height:70px}.site-header .header-inner{min-height:78px;height:78px}.main-nav{top:78px}
  .hero-booking-wrap{min-height:390px;padding:26px 0 5px;overflow:visible}.hero-booking-wrap::before{inset:55px -10px 32px 5px}.hero-booking-badge{position:relative;top:auto;right:auto;width:100%;margin-bottom:15px;z-index:7}.booking-laptop{width:92%;padding:7px 7px 12px}.booking-screen{height:230px}.booking-screen-top{height:33px;font-size:9px}.booking-screen-grid{height:197px;grid-template-columns:1fr 82px}.booking-calendar-ui{padding:11px 9px}.booking-days{gap:3px;font-size:5.8px}.booking-month{font-size:8px;margin-bottom:8px}.booking-times-ui{padding:10px 7px;gap:5px}.booking-times-ui>b{font-size:6.5px}.booking-times-ui button{font-size:5.5px;padding:4px 2px}.booking-confirm-card{width:118px;right:-2px;bottom:22px;padding:10px}.booking-confirm-card strong{font-size:8px}.booking-confirm-card small,.booking-confirm-card span{font-size:5.5px}.booking-confirm-card button{font-size:5.5px;padding:6px}.booking-phone-mini{display:none}.booking-direct-card{left:1px;bottom:0;width:155px;padding:9px 10px}.booking-direct-card strong{font-size:8px}.booking-direct-card small{font-size:6px}
  .booking-ecosystem{padding:58px 0 52px;border-radius:32px 32px 0 0;margin-top:38px}.booking-ecosystem-head{gap:18px;margin-bottom:26px}.booking-ecosystem h2{font-size:34px}.booking-ecosystem-head p{font-size:15px}.booking-feature-grid{grid-template-columns:1fr;gap:12px}.booking-feature-grid article{padding:22px}.booking-note{align-items:flex-start;flex-direction:column;padding:18px}.booking-note .btn{width:100%}
  .booking-page-hero-grid{gap:28px}.booking-page-card{padding:25px}.booking-page-card>strong{font-size:31px}.booking-page-flow{padding:55px 0 72px}.booking-flow-steps{grid-template-columns:1fr}.booking-control{padding:58px 0}.booking-control-grid h2{font-size:37px}.booking-dashboard-demo{padding:18px}.dash-stats{grid-template-columns:1fr 1fr}.dash-stats div:last-child{grid-column:1/-1}.booking-ownership{padding:58px 0 72px}
}
@media(max-width:390px){.brand-logo-v19{width:228px;height:66px}}

/* ===== JUPAZZ STUDIO 1.10 — horizontal phoenix wordmark ===== */
.brand-v19,.brand-logo-v19{display:none!important}
.brand-v110{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  line-height:0;
  text-decoration:none;
  overflow:visible;
}
.brand-logo-v110{
  display:block;
  width:320px;
  height:auto;
  max-width:none;
  object-fit:contain;
  object-position:left center;
}
.site-header .header-inner{
  min-height:128px;
  height:auto;
  overflow:visible;
}
@media(max-width:980px){
  .brand-logo-v110{width:282px}
  .site-header .header-inner{min-height:116px}
}
@media(max-width:640px){
  .site-header .container{width:calc(100% - 20px)}
  .site-header .header-inner{
    min-height:118px;
    height:auto;
    gap:8px;
    overflow:visible;
  }
  .brand-logo-v110{
    width:248px;
    height:auto;
  }
  .menu-toggle{flex:0 0 auto}
  .main-nav{top:118px}
}
@media(max-width:390px){
  .brand-logo-v110{width:232px}
}


/* ===== JUPAZZ STUDIO 1.11 — tighter mobile header / cleaner title ===== */
.menu-toggle{
  font-size:24px;
  line-height:1;
  padding:6px 8px;
}
.site-header .header-inner{
  min-height:108px;
  padding:10px 0;
}
.brand-logo-v110{
  width:296px;
}
@media(max-width:980px){
  .brand-logo-v110{width:258px}
  .site-header .header-inner{min-height:96px;padding:8px 0}
  .main-nav{top:96px}
}
@media(max-width:640px){
  .site-header .container{width:calc(100% - 18px)}
  .site-header .header-inner{
    min-height:84px;
    height:84px;
    padding:4px 0;
    gap:8px;
  }
  .brand-logo-v110{
    width:210px;
    height:auto;
  }
  .menu-toggle{
    font-size:22px;
    padding:4px 6px;
  }
  .main-nav{top:84px}
}
@media(max-width:390px){
  .brand-logo-v110{width:196px}
}


/* ===== JUPAZZ STUDIO 1.12 — nuovo emblema / header più sottile ===== */
.brand-v110,.brand-logo-v110{display:none!important}
.brand-v112{
  display:inline-flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  min-width:0;
  text-decoration:none;
  color:#715716;
}
.brand-mark-v112{
  display:block;
  width:58px;
  height:58px;
  object-fit:cover;
  border-radius:50%;
  flex:0 0 58px;
}
.brand-type-v112{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:.95;
  transform:translateY(-1px);
}
.brand-type-v112 strong,
.brand-type-v112 em{
  font-family:Georgia,"Times New Roman",serif;
  font-style:normal;
  font-weight:400;
  letter-spacing:-.025em;
  color:#715716;
}
.brand-type-v112 strong{font-size:20px}
.brand-type-v112 em{font-size:18px;margin-top:3px}
.site-header .header-inner{
  min-height:76px;
  height:76px;
  padding:3px 0;
  gap:18px;
}
.menu-toggle{
  font-size:20px;
  padding:3px 5px;
  line-height:1;
}
@media(max-width:980px){
  .site-header .header-inner{min-height:72px;height:72px;padding:2px 0}
  .brand-mark-v112{width:54px;height:54px;flex-basis:54px}
  .brand-type-v112 strong{font-size:19px}
  .brand-type-v112 em{font-size:17px}
  .main-nav{top:72px}
}
@media(max-width:640px){
  .site-header .container{width:calc(100% - 16px)}
  .site-header .header-inner{
    min-height:66px;
    height:66px;
    padding:1px 0;
    gap:8px;
  }
  .brand-v112{gap:7px}
  .brand-mark-v112{width:50px;height:50px;flex-basis:50px}
  .brand-type-v112 strong{font-size:18px}
  .brand-type-v112 em{font-size:16px;margin-top:2px}
  .menu-toggle{font-size:19px;padding:2px 4px;margin-left:auto}
  .main-nav{top:66px}
}
@media(max-width:390px){
  .brand-mark-v112{width:47px;height:47px;flex-basis:47px}
  .brand-type-v112 strong{font-size:17px}
  .brand-type-v112 em{font-size:15px}
}


/* ===== JUPAZZ STUDIO 1.14 — nuovo logo corretto + Lorenzo in home ===== */
.brand-v110,.brand-logo-v110,.brand-v112,.brand-mark-v112,.brand-type-v112{display:none!important}
.brand-v114{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  text-decoration:none;
  min-width:0;
}
.brand-full-v114{
  display:block;
  width:270px;
  height:auto;
  max-width:100%;
}
.site-header .header-inner{
  min-height:66px;
  height:66px;
  padding:2px 0;
  gap:12px;
}
.menu-toggle{
  font-size:18px;
  padding:2px 4px;
  line-height:1;
  margin-left:auto;
}
.hero-v114{
  padding:74px 0 72px;
  background:linear-gradient(145deg,#fbfaf7 0%,#faf9f6 48%,#f9f7f0 100%);
  overflow:hidden;
}
.hero-v114-inner{position:relative}
.hero-v114-inner::before{
  content:"";
  position:absolute;
  width:760px;
  height:760px;
  right:-340px;
  top:170px;
  border-radius:44% 56% 48% 52%;
  background:linear-gradient(150deg,rgba(242,237,223,.55),rgba(249,246,239,.2));
  transform:rotate(-12deg);
  pointer-events:none;
}
.hero-content-v114{
  position:relative;
  z-index:2;
  max-width:780px;
}
.hero-actions-v114{margin-bottom:34px}
.founder-panel-v114{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
  min-height:430px;
  max-width:1000px;
  margin:18px 0 32px;
  border:1px solid #ede9e1;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(250,248,242,.88));
  box-shadow:0 22px 70px rgba(96,75,23,.08);
  overflow:hidden;
}
.founder-copy-v114{
  padding:54px 48px;
  align-self:center;
}
.founder-kicker-v114{
  display:block;
  color:#efbd41;
  font-size:13px;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:18px;
}
.founder-copy-v114 h2{
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  font-size:clamp(42px,5vw,64px);
  line-height:.98;
  color:#473711;
  margin:0;
}
.founder-line-v114{
  display:block;
  width:58px;
  height:3px;
  border-radius:99px;
  background:#e9e1cd;
  margin:22px 0 22px;
}
.founder-copy-v114>p{
  margin:0;
  max-width:430px;
  font-size:19px;
  line-height:1.55;
  color:#ca9a21;
}
.founder-note-v114{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:34px;
  color:#ce9d21;
  font-size:14px;
  line-height:1.45;
}
.founder-note-v114>span{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 48px;
  background:linear-gradient(145deg,#efeadc,#d8ceb5);
  color:white;
  font-size:22px;
}
.founder-note-v114 strong{color:#554214}
.founder-photo-v114{
  position:relative;
  min-height:430px;
  background:linear-gradient(180deg,#f5efe3,#f5f3ef);
}
.founder-photo-v114::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(250,249,245,.55),rgba(250,249,245,0) 32%);
  z-index:1;
  pointer-events:none;
}
.founder-photo-v114 img{
  width:100%;
  height:100%;
  min-height:430px;
  display:block;
  object-fit:cover;
  object-position:50% 8%;
}
.benefits-v114{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:10px;
  overflow:hidden;
  border-radius:24px;
}
.benefits-v114 .benefit-v114{min-height:150px}

@media(max-width:980px){
  .brand-full-v114{width:238px}
  .site-header .header-inner{min-height:62px;height:62px}
  .main-nav{top:62px}
  .founder-panel-v114{grid-template-columns:1fr .8fr}
  .founder-copy-v114{padding:42px 34px}
}
@media(max-width:700px){
  .site-header .container{width:calc(100% - 16px)}
  .site-header .header-inner{min-height:58px;height:58px;padding:1px 0;gap:8px}
  .brand-full-v114{width:196px}
  .menu-toggle{font-size:17px}
  .main-nav{top:58px}
  .hero-v114{padding:44px 0 58px}
  .hero-v114-inner::before{width:520px;height:520px;right:-310px;top:180px}
  .hero-actions-v114 .btn{width:100%}
  .founder-panel-v114{
    display:flex;
    flex-direction:column;
    min-height:0;
    margin-top:8px;
    border-radius:24px;
  }
  .founder-copy-v114{padding:34px 28px 20px}
  .founder-copy-v114 h2{font-size:44px}
  .founder-copy-v114>p{font-size:17px}
  .founder-note-v114{margin-top:26px}
  .founder-photo-v114{min-height:390px}
  .founder-photo-v114 img{min-height:390px;height:390px;object-position:50% 0%}
  .founder-photo-v114::before{background:linear-gradient(180deg,rgba(250,249,245,.65),rgba(250,249,245,0) 22%)}
  .benefits-v114{grid-template-columns:1fr;margin-top:24px}
  .benefits-v114 .benefit-v114{min-height:126px;border-right:0!important;border-bottom:1px solid var(--line)}
  .benefits-v114 .benefit-v114:last-child{border-bottom:0}
}
@media(max-width:390px){
  .brand-full-v114{width:182px}
  .founder-copy-v114{padding:30px 22px 18px}
  .founder-copy-v114 h2{font-size:40px}
  .founder-photo-v114{min-height:360px}
  .founder-photo-v114 img{height:360px;min-height:360px}
}


/* ===== JUPAZZ STUDIO 1.15 — header rifinito, chi sono responsive, CTA finale ===== */
.brand-full-v114{
  width:auto!important;
  height:52px!important;
  max-width:132px!important;
  object-fit:contain;
  object-position:left center;
}
.menu-toggle{
  font-size:30px!important;
  line-height:.8!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:700!important;
  width:38px;
  height:38px;
  padding:0!important;
  display:grid;
  place-items:center;
  transform:scaleX(1.08);
}

/* founder: più compatto e più leggibile su desktop */
.founder-panel-v114{
  max-width:1080px;
  margin:30px auto 36px;
  grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
  min-height:420px;
}
.founder-copy-v114{padding:48px 44px 42px 50px}
.founder-copy-v114 h2{font-size:clamp(48px,4.4vw,62px);max-width:8ch}
.founder-copy-v114>p{font-size:18px;max-width:390px}
.founder-note-v114{max-width:380px;margin-top:30px}
.founder-photo-v114,.founder-photo-v114 img{min-height:420px;height:420px}
.founder-photo-v114 img{object-position:50% 7%}

/* desktop: gerarchie più ordinate nei blocchi testuali */
@media(min-width:981px){
  .hero-content-v114{max-width:730px}
  .booking-ecosystem-head{grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);gap:82px;align-items:end}
  .booking-ecosystem-head>div:last-child{max-width:430px;justify-self:end}
  .showcase-grid{grid-template-columns:minmax(310px,.78fr) minmax(0,1.22fr);gap:68px}
  .showcase-grid>div:first-child{max-width:430px}
  .reviews,.steps{max-width:1120px;margin-left:auto;margin-right:auto}
}

/* CTA finale: più distintiva e pulsanti più forti */
.final-cta{padding:50px 0 42px}
.cta-box{
  grid-template-columns:1fr;
  gap:24px;
  max-width:1040px;
  padding:54px 58px 48px;
  text-align:center;
  background:linear-gradient(135deg,#eeba39 0%,#efc048 60%,#f0c454 100%);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 26px 70px rgba(102,80,24,.18);
}
.cta-box::after{
  content:"✦";
  position:absolute;
  left:28px;
  top:24px;
  font-size:30px;
  color:rgba(255,255,255,.45);
}
.cta-box h2{font-size:clamp(36px,4.2vw,55px);max-width:820px;margin:0 auto;font-weight:400}
.cta-actions{justify-content:center;display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);gap:14px;max-width:760px;width:100%;margin:0 auto}
.final-cta .btn{min-height:58px;font-size:16px;font-weight:850;box-shadow:0 12px 28px rgba(71,56,17,.13)}
.final-cta .btn-sand{background:linear-gradient(90deg,#ffe477,#ffd451);border-color:rgba(255,255,255,.22)}
.final-cta .whatsapp-btn{background:#fff;border-color:rgba(255,255,255,.75)}
.final-cta .wa-icon{
  width:28px!important;
  height:28px!important;
  flex:0 0 28px!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#eeba39!important;
}
.final-cta .wa-icon svg{width:25px!important;height:25px!important;stroke-width:2!important}

@media(max-width:700px){
  /* la striscia resta della stessa altezza, ma logo e hamburger stanno finalmente dentro */
  .brand-full-v114{height:50px!important;max-width:126px!important}
  .menu-toggle{font-size:29px!important;width:36px;height:36px}

  /* "chi sono" distribuito tra testo e foto, senza la lunghissima colonna */
  .founder-panel-v114{
    display:grid!important;
    grid-template-columns:minmax(0,1.08fr) minmax(128px,.92fr)!important;
    min-height:330px!important;
    margin:16px 0 28px!important;
    align-items:stretch;
  }
  .founder-copy-v114{padding:28px 8px 26px 24px!important;align-self:center}
  .founder-kicker-v114{font-size:11px;margin-bottom:12px}
  .founder-copy-v114 h2{font-size:37px!important;line-height:.94;max-width:6ch}
  .founder-line-v114{width:48px;margin:16px 0 16px}
  .founder-copy-v114>p{font-size:14.5px!important;line-height:1.48;max-width:215px}
  .founder-note-v114{display:block;margin-top:19px;font-size:12px;line-height:1.35;max-width:210px}
  .founder-note-v114>span{width:38px;height:38px;float:left;margin:0 10px 4px 0;font-size:18px}
  .founder-note-v114 strong{display:inline}
  .founder-photo-v114{min-height:330px!important;height:100%!important}
  .founder-photo-v114 img{min-height:330px!important;height:100%!important;object-position:51% 8%!important}
  .founder-photo-v114::before{background:linear-gradient(90deg,rgba(250,249,246,.75),rgba(250,249,246,0) 28%)}

  .final-cta{padding:34px 0 28px}
  .cta-box{padding:42px 24px 30px;border-radius:32px;gap:22px}
  .cta-box h2{font-size:36px;line-height:1.06}
  .cta-actions{grid-template-columns:1fr;gap:12px}
  .final-cta .btn{min-height:58px;font-size:15px}
}
@media(max-width:390px){
  .brand-full-v114{height:48px!important;max-width:120px!important}
  .founder-panel-v114{grid-template-columns:minmax(0,1.12fr) minmax(118px,.88fr)!important;min-height:310px!important}
  .founder-copy-v114{padding:24px 5px 22px 20px!important}
  .founder-copy-v114 h2{font-size:34px!important}
  .founder-copy-v114>p{font-size:13.5px!important}
  .founder-photo-v114{min-height:310px!important}
  .founder-photo-v114 img{min-height:310px!important}
}


/* ===== JUPAZZ STUDIO 1.16 — sezione acquisizione / funnel / social ===== */
.growth-system{
  padding:86px 0 74px;
  background:linear-gradient(180deg,#fdfcfa 0%,#faf8f4 100%);
}
.growth-head{
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(280px,.82fr);
  gap:72px;
  align-items:end;
  margin-bottom:28px;
}
.growth-system h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:46px;
  line-height:1.05;
  font-weight:400;
  margin:10px 0 0;
  max-width:840px;
}
.growth-head p{
  margin:0 0 18px;
  font-size:17px;
  line-height:1.68;
  color:#d9a623;
}
.growth-badge{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 15px;
  border-radius:999px;
  border:1px solid #eae7de;
  background:#ffffff;
  color:#918871;
  font-size:12px;
  font-weight:800;
  letter-spacing:.03em;
}
.growth-journey{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  margin-bottom:20px;
}
.growth-journey span{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:18px;
  background:rgba(255,255,255,.84);
  border:1px solid #ede9e1;
  color:#c69720;
  font-size:13px;
  font-weight:700;
  text-align:center;
  box-shadow:0 12px 26px rgba(91,71,21,.035);
}
.growth-journey span:not(:last-child)::after{
  content:"→";
  position:absolute;
  right:-11px;
  top:50%;
  transform:translateY(-50%);
  color:#f1c65a;
  font-size:18px;
  z-index:2;
}
.growth-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.growth-card{
  background:rgba(255,255,255,.92);
  border:1px solid #edeae3;
  border-radius:26px;
  padding:28px 24px 26px;
  box-shadow:0 18px 40px rgba(96,75,23,.05);
}
.growth-step{
  width:46px;
  height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin-bottom:18px;
  background:linear-gradient(145deg,#f5f1e8,#ebe4d3);
  color:#ddac30;
  font-size:14px;
  font-weight:800;
}
.growth-card h3{
  margin:0 0 10px;
  font-size:21px;
  color:#503f13;
}
.growth-card p{
  margin:0;
  font-size:14px;
  line-height:1.62;
  color:#ddac2e;
}
.growth-note{
  margin-top:22px;
  border:1px solid #e8e6df;
  border-radius:20px;
  background:rgba(255,255,255,.86);
  padding:12px 14px 12px 22px;
  min-height:72px;
  display:flex;
  align-items:center;
  gap:12px;
}
.growth-note strong{
  font-size:13px;
  color:#bf911f;
}
.growth-note span{
  flex:1;
  font-size:13px;
  color:#89816c;
}
.growth-note .btn{
  min-height:46px;
  padding:0 20px;
  font-size:12px;
}

@media(max-width:980px){
  .growth-head{grid-template-columns:1fr;gap:26px;align-items:start}
  .growth-grid{grid-template-columns:repeat(2,1fr)}
  .growth-journey{grid-template-columns:repeat(5,minmax(110px,1fr));overflow-x:auto;padding-bottom:6px}
}
@media(max-width:700px){
  .growth-system{padding:58px 0 52px}
  .growth-system h2{font-size:34px}
  .growth-head p{font-size:15px;line-height:1.6}
  .growth-journey{display:flex;overflow-x:auto;gap:10px;margin-bottom:16px;padding-bottom:4px;scrollbar-width:none}
  .growth-journey::-webkit-scrollbar{display:none}
  .growth-journey span{min-width:148px;min-height:46px;font-size:12px;padding:0 15px}
  .growth-grid{grid-template-columns:1fr;gap:12px}
  .growth-card{padding:22px 20px}
  .growth-card h3{font-size:20px}
  .growth-note{align-items:flex-start;flex-direction:column;padding:18px}
  .growth-note .btn{width:100%}
}


/* ===== JUPAZZ STUDIO 3.2 — desktop polish + marker fix + acquisition redesign ===== */

/* Evidenziatori: solo dietro alle parole, mai strisce residue dopo il testo. */
.highlight,
.marker{
  position:relative;
  z-index:1;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
  background-repeat:no-repeat;
  background-position:0 88%;
  background-size:100% .52em;
  padding-inline:.035em;
}
.highlight{
  display:inline;
  font-style:italic;
  background-image:linear-gradient(90deg,var(--yellow-soft),var(--yellow));
}
.marker{
  display:inline;
  font-weight:700;
  background-image:linear-gradient(90deg,var(--yellow-soft),var(--yellow));
}
.highlight::after,
.marker::before{display:none!important;content:none!important}
.marker-small{background-size:100% .46em}
.final-cta .highlight,
.final-cta .marker{background:none!important;padding-inline:0}

/* Header desktop: niente hamburger, menu leggibile e CTA sempre intera. */
@media(min-width:981px){
  .site-header .container{width:min(1240px,calc(100% - 56px))}
  .site-header .header-inner{
    min-height:68px!important;
    height:68px!important;
    padding:2px 0!important;
    gap:22px!important;
  }
  .brand-v114{flex:0 0 auto}
  .brand-full-v114{
    width:auto!important;
    height:52px!important;
    max-width:136px!important;
  }
  .menu-toggle{display:none!important}
  .main-nav{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end;
    gap:clamp(12px,1.25vw,22px)!important;
    margin-left:auto;
    min-width:0;
    font-size:13px!important;
    font-weight:720;
    white-space:nowrap;
  }
  .main-nav>ul{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end;
    gap:clamp(12px,1.25vw,22px)!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .main-nav li{margin:0!important;padding:0!important;list-style:none!important}
  .main-nav a:not(.btn){padding:9px 0!important}
  .main-nav .btn,
  .main-nav>a.btn{
    min-height:42px!important;
    padding:0 17px!important;
    font-size:12px!important;
    line-height:1!important;
    white-space:nowrap!important;
    flex:0 0 auto;
  }
}

/* ===== 4.22 — CTA "Scopri il Metodo Jupazz" coordinata ===== */
html body .jp-neon-home .jp-method-band .jp-method-cta{
  background:linear-gradient(100deg,#ebac0d 0%,#f7bd2a 48%,#fbc336 100%)!important;
  border:1px solid rgba(239,228,199,.76)!important;
  color:#fff!important;
  box-shadow:
    0 0 21px rgba(251,193,46,.46),
    inset 0 0 14px rgba(255,255,255,.10)!important;
}
html body .jp-neon-home .jp-method-band .jp-method-cta:hover{
  background:linear-gradient(100deg,#ecb21f 0%,#fbc130 48%,#fbc53e 100%)!important;
  border-color:rgba(247,241,226,.90)!important;
  box-shadow:
    0 0 30px rgba(251,193,46,.62),
    inset 0 0 16px rgba(255,255,255,.13)!important;
}

/* ===== 4.21 — informative Privacy/Cookie e consenso in palette neon ===== */
html body.jupazz-neon-policy-page{
  background:
    radial-gradient(circle at 96% 7%,rgba(251,196,56,.14),transparent 26%),
    radial-gradient(circle at 0 52%,rgba(251,193,48,.08),transparent 32%),
    #080601!important;
  color:#fefdfb!important;
}
html body.jupazz-neon-policy-page .entry-content{
  position:relative;
  overflow:hidden;
  padding:0!important;
  background:transparent!important;
}
html body.jupazz-neon-policy-page .entry-content>.container{
  width:min(1080px,calc(100% - 42px))!important;
}
html body.jupazz-neon-policy-page .entry-content article>h1{
  display:none!important;
}

html body .jp-policy{
  position:relative;
  z-index:1;
  max-width:1000px!important;
  margin:0 auto!important;
  padding:88px 0 104px!important;
  color:#dad6ce!important;
}
html body .jp-policy::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:28px;
  right:-120px;
  width:390px;
  height:390px;
  border:1px solid rgba(251,197,60,.24);
  border-radius:43% 57% 55% 45% / 51% 40% 60% 49%;
  transform:rotate(17deg);
  box-shadow:0 0 45px rgba(251,194,50,.10),inset 0 0 42px rgba(251,196,56,.05);
  pointer-events:none;
}
html body .jp-policy-kicker{
  display:flex!important;
  align-items:center;
  gap:12px;
  margin:0 0 14px!important;
  color:#fccd56!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.17em!important;
}
html body .jp-policy-kicker::before{
  content:"";
  width:42px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#fbc233,#fbc439);
  box-shadow:0 0 13px rgba(251,194,51,.65);
}
html body .jp-policy-lead{
  position:relative;
  max-width:800px;
  margin:0 0 26px!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:#fefdfb!important;
  font-size:clamp(46px,7vw,76px)!important;
  line-height:1.01!important;
  font-weight:850!important;
  letter-spacing:-.055em!important;
}
html body .jp-policy-legal-intro,
html body .jp-policy-note{
  padding:20px 22px!important;
  border:1px solid rgba(251,198,64,.32)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(49,38,8,.86),rgba(15,12,3,.94))!important;
  color:#ddd9d0!important;
  box-shadow:inset 0 0 24px rgba(251,194,50,.035)!important;
}
html body .jp-policy section{
  position:relative;
  margin:14px 0!important;
  padding:27px 29px!important;
  overflow:hidden;
  border:1px solid rgba(251,197,61,.22)!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(251,196,57,.07),transparent 29%),
    linear-gradient(145deg,rgba(26,21,6,.82),rgba(10,7,2,.91))!important;
  box-shadow:0 15px 36px rgba(0,0,0,.16)!important;
}
html body .jp-policy h2{
  margin:0 0 13px!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:#fefdfb!important;
  font-size:clamp(23px,3vw,30px)!important;
  line-height:1.12!important;
  font-weight:800!important;
  letter-spacing:-.032em!important;
}
html body .jp-policy p,
html body .jp-policy li{
  color:#d1cec5!important;
  font-size:16px!important;
  line-height:1.7!important;
}
html body .jp-policy strong{color:#fdfcf8!important}
html body .jp-policy ul,
html body .jp-policy ol{padding-left:1.25em!important}
html body .jp-policy li::marker{color:#fbc847!important}
html body .jp-policy a{
  color:#fccc54!important;
  text-decoration-color:rgba(252,204,84,.48)!important;
  text-underline-offset:3px;
}
html body .jp-policy a:hover{color:#fff!important}
html body .jp-policy code{
  padding:3px 7px!important;
  border:1px solid rgba(251,199,67,.20)!important;
  border-radius:7px!important;
  background:#1b1506!important;
  color:#eadab3!important;
}
html body .jp-policy-updated{
  margin-top:34px!important;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.09);
  color:#a8a190!important;
  font-size:13px!important;
}

html body .jp-cookie-table{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
html body .jp-cookie-table>div{
  padding:20px!important;
  border:1px solid rgba(251,199,66,.32)!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,rgba(53,40,8,.72),rgba(15,12,3,.95))!important;
  box-shadow:inset 0 0 20px rgba(251,194,51,.04)!important;
}
html body .jp-cookie-table>div>strong{color:#fefdfb!important}
html body .jp-cookie-table span{color:#fbcc53!important}
html body .jp-cookie-table p{color:#ccc8bd!important;font-size:13px!important}

/* Anche il pannello di consenso usa lo stesso sistema visivo. */
html body .jp-consent-card{
  border:1px solid rgba(251,198,65,.58)!important;
  background:
    radial-gradient(circle at 86% 0,rgba(251,196,56,.17),transparent 31%),
    linear-gradient(150deg,rgba(30,23,7,.99),rgba(9,7,1,.99))!important;
  color:#fefdfb!important;
  box-shadow:0 25px 75px rgba(0,0,0,.58),0 0 30px rgba(251,194,50,.16)!important;
}
html body .jp-consent-kicker{color:#fccc54!important}
html body .jp-consent h2{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:#fefdfb!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
}
html body .jp-consent p{color:#d1cec5!important}
html body .jp-consent-links,
html body .jp-consent-links a{color:#fccc54!important}
html body .jp-consent-close{
  border-color:rgba(251,200,71,.30)!important;
  background:rgba(255,255,255,.045)!important;
  color:#e6d3a5!important;
  box-shadow:none!important;
}
html body .jp-consent-lead-note{
  border-color:rgba(251,198,64,.23)!important;
  background:rgba(255,255,255,.035)!important;
  color:#d1cec5!important;
}
html body .jp-consent-lead-note strong{color:#fdfcf8!important}
html body .jp-consent .jp-btn{
  border-color:rgba(251,200,69,.34)!important;
  background:rgba(255,255,255,.045)!important;
  color:#fefdfb!important;
}
html body .jp-consent .jp-btn-primary,
html body .jp-consent-actions [data-jp-action="accept"]{
  border-color:rgba(255,255,255,.34)!important;
  background:linear-gradient(100deg,#fbc847,#fbc12f 52%,#fbc438)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(233,177,36,.25)!important;
}
html body .jp-consent-actions [data-jp-action="reject"]{
  border-color:rgba(251,200,69,.34)!important;
  background:rgba(255,255,255,.045)!important;
  color:#fefdfb!important;
  box-shadow:none!important;
}
html body .jp-preferences{
  border-top-color:rgba(255,255,255,.10)!important;
}
html body .jp-pref-row{
  border-color:rgba(251,198,65,.22)!important;
  background:rgba(255,255,255,.035)!important;
}
html body .jp-pref-row strong{color:#fefdfb!important}
html body .jp-pref-row small{color:#beb9ad!important}
html body .jp-switch span{background:#634e17!important}
html body .jp-switch input:checked+span{background:linear-gradient(90deg,#fbc233,#fbc439)!important}
html body .jp-switch span::after{background:#fff!important}

html body.jupazz-cookie-open .jupazz-wa-widget{bottom:275px!important}

@media(max-width:700px){
  html body.jupazz-neon-policy-page .entry-content>.container{width:calc(100% - 28px)!important}
  html body .jp-policy{padding:58px 0 76px!important}
  html body .jp-policy::before{top:8px;right:-210px;width:340px;height:340px}
  html body .jp-policy-lead{font-size:clamp(40px,13vw,56px)!important;margin-bottom:22px!important}
  html body .jp-policy-legal-intro,
  html body .jp-policy-note{padding:17px 18px!important;border-radius:16px!important}
  html body .jp-policy section{padding:21px 18px!important;border-radius:17px!important}
  html body .jp-policy h2{font-size:23px!important}
  html body .jp-policy p,
  html body .jp-policy li{font-size:14.5px!important;line-height:1.66!important}
  html body .jp-cookie-table{grid-template-columns:1fr!important}
  html body.jupazz-cookie-open .jupazz-wa-widget{bottom:375px!important}
}

/* Hero desktop: non più una versione mobile semplicemente allargata. */
@media(min-width:1100px){
  .hero-v114{padding:66px 0 76px}
  .hero-v114 .container{width:min(1240px,calc(100% - 64px))}
  .hero-content-v114{max-width:930px!important}
  .hero-v114 h1{
    max-width:none!important;
    width:min(100%,930px);
    font-size:clamp(60px,5.15vw,78px);
    line-height:.98;
    letter-spacing:-.045em;
    margin:24px 0 22px;
  }
  .hero-title-desktop .hero-line{
    display:block;
    white-space:nowrap;
  }
  .hero-copy{max-width:720px;font-size:18px;line-height:1.62}
  .hero-actions-v114{margin-top:30px;margin-bottom:42px}
  .hero-actions-v114 .btn{min-width:310px;min-height:54px;font-size:15px}
  .founder-panel-v114{max-width:1120px;margin:32px auto 38px}
}

/* Titoli e testi desktop più equilibrati nelle sezioni principali. */
@media(min-width:981px){
  .booking-ecosystem,.growth-system,.showcase{scroll-margin-top:82px}
  .booking-ecosystem h2{font-size:clamp(42px,3.8vw,54px);max-width:760px}
  .showcase h2{font-size:42px;line-height:1.04}
  .showcase-grid>div:first-child{max-width:470px!important}
  .process h2,.testimonials h2{max-width:820px;margin-left:auto;margin-right:auto}
}

/* Acquisizione: più editoriale, leggibile e con un percorso visivo chiaro. */
.growth-system{
  position:relative;
  overflow:hidden;
  padding:94px 0 82px;
  background:
    radial-gradient(circle at 88% 10%,rgba(237,230,211,.55),transparent 31%),
    linear-gradient(180deg,#fdfcfa 0%,#faf8f3 100%);
}
.growth-system::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  left:-300px;
  bottom:-310px;
  border:1px solid rgba(239,190,68,.12);
  border-radius:50%;
  pointer-events:none;
}
.growth-head{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(300px,.72fr);
  gap:52px;
  align-items:center;
  margin-bottom:26px;
  padding:42px 44px;
  border:1px solid #ebe7de;
  border-radius:34px;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,246,241,.88));
  box-shadow:0 24px 65px rgba(95,74,22,.075);
  overflow:hidden;
}
.growth-head::after{
  content:"";
  position:absolute;
  width:330px;
  height:330px;
  right:-105px;
  top:-155px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(218,209,186,.42),rgba(242,238,227,.12) 58%,transparent 70%);
  z-index:-1;
}
.growth-head .section-kicker{
  display:inline-flex;
  padding:7px 12px;
  border-radius:999px;
  background:#f4f2eb;
  color:#eebb39;
  letter-spacing:.12em;
  font-size:11px;
  font-weight:850;
}
.growth-system h2{
  font-size:clamp(40px,4vw,54px);
  line-height:1.02;
  letter-spacing:-.025em;
  margin:14px 0 0;
  max-width:780px;
}
.growth-title-accent{
  color:#eeba36;
  font-style:italic;
  font-weight:400;
}
.growth-head>div:last-child{
  position:relative;
  z-index:1;
  padding:24px 24px 22px;
  border:1px solid rgba(229,224,211,.95);
  border-radius:23px;
  background:rgba(255,255,255,.78);
  box-shadow:0 14px 32px rgba(95,74,22,.045);
}
.growth-head p{font-size:16px;line-height:1.68;margin:0 0 17px}
.growth-badge{
  min-height:auto;
  padding:9px 13px;
  border-radius:14px;
  background:#f9f8f4;
  border-color:#eae7df;
  line-height:1.35;
  font-size:11px;
}
.growth-journey{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin:0 auto 22px;
  padding:0 12px;
}
.growth-journey::before{
  content:"";
  position:absolute;
  left:7%;right:7%;top:50%;
  height:1px;
  background:linear-gradient(90deg,transparent,#dad3c2 10%,#dad3c2 90%,transparent);
  z-index:0;
}
.growth-journey span{
  position:relative;
  z-index:1;
  min-height:54px;
  border-radius:999px;
  background:#fff;
  border:1px solid #e9e6de;
  box-shadow:0 12px 28px rgba(95,74,22,.055);
  color:#c0921f;
  font-size:12px;
  font-weight:800;
}
.growth-journey span:not(:last-child)::after{
  right:-9px;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#faf9f6;
  color:#efc14c;
  font-size:13px;
}
.growth-grid{gap:16px}
.growth-card{
  position:relative;
  overflow:hidden;
  min-height:245px;
  padding:30px 25px 28px;
  border-radius:26px;
  background:linear-gradient(180deg,#fff 0%,#fdfdfb 100%);
  border-color:#ebe8e1;
  box-shadow:0 18px 42px rgba(95,74,22,.055);
  transition:transform .2s ease,box-shadow .2s ease;
}
.growth-card::after{
  content:"";
  position:absolute;
  left:24px;right:24px;bottom:0;
  height:3px;
  border-radius:99px 99px 0 0;
  background:linear-gradient(90deg,#ede8db,#efc14c);
  opacity:.75;
}
.growth-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(95,74,22,.085)}
.growth-step{
  width:50px;height:50px;
  margin-bottom:20px;
  background:linear-gradient(145deg,#f9f7f0,#ebe5d6);
  border:1px solid #ebe6da;
  color:#edb935;
  font-family:Georgia,"Times New Roman",serif;
  font-size:16px;
}
.growth-card h3{font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:400;margin-bottom:11px}
.growth-card p{font-size:13.5px;line-height:1.62}
.growth-note{
  min-height:76px;
  margin-top:20px;
  padding:12px 14px 12px 24px;
  border:0;
  border-radius:23px;
  background:linear-gradient(120deg,#edb934,#efbe44);
  box-shadow:0 18px 42px rgba(103,80,24,.14);
}
.growth-note strong{color:#fff;font-size:13px}
.growth-note span{color:rgba(255,255,255,.82);font-size:13px}
.growth-note .btn{
  min-height:48px;
  background:#fff;
  color:#695219;
  box-shadow:none;
  white-space:nowrap;
}

@media(max-width:980px){
  .growth-head{grid-template-columns:1fr;gap:20px;padding:34px 30px}
  .growth-head>div:last-child{max-width:none}
}
@media(max-width:700px){
  .growth-system{padding:58px 0 54px}
  .growth-head{padding:28px 22px 24px;border-radius:28px;margin-bottom:18px}
  .growth-system h2{font-size:35px;line-height:1.04}
  .growth-head>div:last-child{padding:19px 18px;border-radius:19px}
  .growth-head p{font-size:15px;line-height:1.6}
  .growth-badge{display:block;width:100%}
  .growth-journey{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    overflow:visible;
    padding:0;
    margin-bottom:16px;
  }
  .growth-journey::before,
  .growth-journey span::after{display:none!important}
  .growth-journey span{min-width:0;min-height:48px;border-radius:16px;padding:0 10px}
  .growth-journey span:last-child{grid-column:1/-1}
  .growth-grid{grid-template-columns:1fr;gap:12px}
  .growth-card{min-height:0;padding:23px 20px 24px}
  .growth-card h3{font-size:23px}
  .growth-note{padding:20px;gap:8px;border-radius:22px}
  .growth-note strong,.growth-note span{display:block}
  .growth-note .btn{width:100%;margin-top:8px}
}


/* ===== JUPAZZ STUDIO 3.4 — domande utili al posto delle recensioni ===== */
.home-questions{
  padding:76px 0 64px;
  background:linear-gradient(180deg,#fbfaf7 0%,#faf9f7 100%);
}
.questions-shell{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:72px;
  align-items:start;
}
.questions-intro{
  position:sticky;
  top:96px;
  max-width:430px;
}
.questions-intro h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(38px,4vw,52px);
  line-height:1.03;
  font-weight:400;
  color:var(--ink);
  margin:10px 0 18px;
}
.questions-accent{
  color:var(--periwinkle-deep);
  font-style:italic;
}
.questions-intro p{
  margin:0;
  font-size:16px;
  line-height:1.68;
  color:#dca826;
  max-width:390px;
}
.questions-list{
  display:grid;
  gap:12px;
}
.question-item{
  border:1px solid #ebe8e1;
  border-radius:20px;
  background:rgba(255,255,255,.9);
  box-shadow:0 14px 34px rgba(95,74,22,.045);
  overflow:hidden;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.question-item[open]{
  border-color:#e4dfd2;
  box-shadow:0 18px 42px rgba(95,74,22,.07);
}
.question-item summary{
  list-style:none;
  cursor:pointer;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 28px;
  gap:14px;
  align-items:center;
  padding:20px 22px;
  color:var(--ink);
}
.question-item summary::-webkit-details-marker{display:none}
.question-number{
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f7f5f0;
  color:#eebb3b;
  font-family:Georgia,"Times New Roman",serif;
  font-size:13px;
}
.question-item summary strong{
  font-size:17px;
  line-height:1.3;
  font-weight:700;
}
.question-toggle{
  position:relative;
  width:24px;
  height:24px;
  justify-self:end;
}
.question-toggle::before,.question-toggle::after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:14px;height:1.5px;
  background:#eebd40;
  transform:translate(-50%,-50%);
  border-radius:99px;
}
.question-toggle::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s ease,opacity .2s ease}
.question-item[open] .question-toggle::after{opacity:0;transform:translate(-50%,-50%) rotate(0)}
.question-answer{
  padding:0 68px 20px 80px;
}
.question-answer p{
  margin:0;
  font-size:14px;
  line-height:1.65;
  color:#dca929;
  max-width:650px;
}
@media(min-width:981px){
  .question-item:hover{transform:translateY(-1px);border-color:#e4dfd2}
}
@media(max-width:900px){
  .questions-shell{grid-template-columns:1fr;gap:30px}
  .questions-intro{position:static;max-width:680px}
  .questions-intro p{max-width:620px}
}
@media(max-width:700px){
  .home-questions{padding:56px 0 48px}
  .questions-shell{gap:24px}
  .questions-intro h2{font-size:35px;margin:8px 0 14px}
  .questions-intro p{font-size:15px;line-height:1.58}
  .question-item summary{grid-template-columns:38px minmax(0,1fr) 24px;gap:10px;padding:17px 16px}
  .question-number{width:34px;height:34px;font-size:12px}
  .question-item summary strong{font-size:15px;line-height:1.28}
  .question-answer{padding:0 18px 18px 64px}
  .question-answer p{font-size:13.5px;line-height:1.58}
}
@media(max-width:390px){
  .question-item summary{padding:15px 13px;gap:8px}
  .question-answer{padding-left:55px;padding-right:14px}
}


/* ===== JUPAZZ STUDIO 3.6 — Privacy + WhatsApp proprietari ===== */
.footer-legal{margin-top:18px;padding-top:16px;border-top:1px solid rgba(239,190,68,.20)}
.footer-legal .jp-legal-links{justify-content:center}
.privacy-check a{color:var(--periwinkle-deep);text-decoration:underline;text-underline-offset:3px;font-weight:700}


/* ===== JUPAZZ STUDIO 3.7 — WhatsApp popup refined ===== */
/* Visual override for the proprietary widget rendered by Jupazz Core 1.5+. */
.jupazz-wa-widget{right:22px;bottom:22px}
.jupazz-wa-fab{
  width:64px!important;
  height:64px!important;
  border:1px solid rgba(255,255,255,.25)!important;
  background:linear-gradient(145deg,#f0c455 0%,#efbe42 58%,#edb934 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 42px rgba(82,64,19,.28)!important;
  transition:transform .2s ease,box-shadow .2s ease!important;
}
.jupazz-wa-fab:hover{transform:translateY(-2px);box-shadow:0 22px 48px rgba(82,64,19,.32)!important}
.jupazz-wa-fab svg{display:none!important}
.jupazz-wa-fab::before{
  content:"";
  display:block;
  width:38px;
  height:38px;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cpath%20d%3D%22M32%208C19.1%208%208.7%2017.7%208.7%2029.7c0%204.6%201.6%208.9%204.4%2012.5L10.2%2054l12.5-3.5c2.9%201.3%206%202%209.3%202%2012.9%200%2023.3-9.7%2023.3-21.7S44.9%208%2032%208Z%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M23.2%2021.6c.6-1.2%201.4-1.3%202.1-1.3h1.7c.5%200%201%20.2%201.3.9l2.6%205.7c.3.7.2%201.2-.3%201.8l-1.9%202.2c-.4.5-.4%201-.1%201.5%201.4%202.8%203.4%205.1%205.9%206.9.7.5%201.2.5%201.8-.1l2.4-2.6c.6-.7%201.2-.8%202-.4l5.4%202.6c.7.3%201%20.8.9%201.4-.1.9-.5%203.4-2.4%204.9-1.6%201.3-4%202.1-6.1%201.8-2.8-.3-6.6-1.2-10.7-4-5.3-3.6-9.2-9-10.7-13.1-1.4-4-.2-7.1.7-8.2Z%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%223.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
  background-size:contain;
  background-position:center;
  background-repeat:no-repeat;
}
.jupazz-wa-panel{
  width:min(440px,calc(100vw - 40px))!important;
  padding:34px 34px 28px!important;
  border:1px solid #e9e7e0!important;
  border-radius:30px!important;
  background:rgba(253,252,249,.985)!important;
  color:#473811!important;
  text-align:center!important;
  box-shadow:0 28px 80px rgba(71,56,17,.22)!important;
  overflow:hidden;
}
.jupazz-wa-close{
  right:17px!important;
  top:14px!important;
  width:40px!important;
  height:40px!important;
  font-size:34px!important;
  line-height:1!important;
  color:#eebc3d!important;
}
.jupazz-wa-kicker{
  margin:3px 45px 15px!important;
  font-size:11px!important;
  letter-spacing:.13em!important;
  text-align:center!important;
  color:#efbe42!important;
}
.jupazz-wa-panel strong{
  margin:0!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:46px!important;
  line-height:1!important;
  font-weight:400!important;
  text-align:center!important;
  color:#473811!important;
}
.jupazz-wa-panel strong::after{
  content:"";
  display:block;
  width:126px;
  height:126px;
  margin:28px auto 26px;
  border-radius:50%;
  background:
    url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cpath%20d%3D%22M32%208C19.1%208%208.7%2017.7%208.7%2029.7c0%204.6%201.6%208.9%204.4%2012.5L10.2%2054l12.5-3.5c2.9%201.3%206%202%209.3%202%2012.9%200%2023.3-9.7%2023.3-21.7S44.9%208%2032%208Z%22%20fill%3D%22none%22%20stroke%3D%22%23efbe42%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M23.2%2021.6c.6-1.2%201.4-1.3%202.1-1.3h1.7c.5%200%201%20.2%201.3.9l2.6%205.7c.3.7.2%201.2-.3%201.8l-1.9%202.2c-.4.5-.4%201-.1%201.5%201.4%202.8%203.4%205.1%205.9%206.9.7.5%201.2.5%201.8-.1l2.4-2.6c.6-.7%201.2-.8%202-.4l5.4%202.6c.7.3%201%20.8.9%201.4-.1.9-.5%203.4-2.4%204.9-1.6%201.3-4%202.1-6.1%201.8-2.8-.3-6.6-1.2-10.7-4-5.3-3.6-9.2-9-10.7-13.1-1.4-4-.2-7.1.7-8.2Z%22%20fill%3D%22none%22%20stroke%3D%22%23efbe42%22%20stroke-width%3D%223.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") center/72px 72px no-repeat,
    radial-gradient(circle at 32% 26%,#fefdfb 0%,#f8f6f1 54%,#f2eee6 100%);
  box-shadow:inset 0 0 0 1px rgba(239,190,68,.08),0 16px 34px rgba(190,145,31,.08);
}
.jupazz-wa-panel p{
  margin:0 auto 18px!important;
  max-width:330px;
  white-space:pre-line;
  font-size:17px!important;
  line-height:1.5!important;
  text-align:center!important;
  color:#ce9d21!important;
}
.jupazz-wa-panel p::before{
  content:attr(data-heading);
  display:block;
  margin-bottom:5px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:25px;
  line-height:1.18;
  color:#473811;
}
.jupazz-wa-panel p::after{
  content:"────  ✦  ────";
  display:block;
  margin:22px auto 18px;
  color:#f0c24f;
  font-size:14px;
  letter-spacing:.06em;
  white-space:nowrap;
}
.jupazz-wa-panel-btn{
  min-height:60px!important;
  padding:0 22px!important;
  border-radius:19px!important;
  background:linear-gradient(90deg,#eebc3f 0%,#f0c24e 100%)!important;
  font-size:17px!important;
  font-weight:850!important;
  box-shadow:0 12px 28px rgba(115,90,27,.14)!important;
}
.jupazz-wa-panel small{
  margin-top:15px!important;
  font-size:11px!important;
  line-height:1.45!important;
  text-align:center!important;
  color:#a09986!important;
}
@media(max-width:700px){
  .jupazz-wa-widget{right:16px;bottom:16px}
  .jupazz-wa-fab{width:62px!important;height:62px!important}
  .jupazz-wa-fab::before{width:37px;height:37px}
  .jupazz-wa-panel{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translate(-50%,-50%)!important;
    width:calc(100vw - 42px)!important;
    max-width:560px!important;
    max-height:calc(100dvh - 125px)!important;
    overflow:auto!important;
    padding:32px 24px 26px!important;
    border-radius:28px!important;
  }
  .jupazz-wa-panel strong{font-size:43px!important}
  .jupazz-wa-panel strong::after{width:116px;height:116px;margin:25px auto 24px;background-size:66px 66px}
  .jupazz-wa-panel p{font-size:16px!important;max-width:300px}
  .jupazz-wa-panel p::before{font-size:24px}
  .jupazz-wa-panel p::after{margin:20px auto 16px;font-size:13px}
  .jupazz-wa-panel-btn{min-height:58px!important;font-size:16px!important}
  .jupazz-wa-panel small{font-size:10.5px!important}
}
@media(max-width:390px){
  .jupazz-wa-panel{width:calc(100vw - 30px)!important;padding:28px 20px 23px!important}
  .jupazz-wa-kicker{font-size:10px!important}
  .jupazz-wa-panel strong{font-size:40px!important}
  .jupazz-wa-panel strong::after{width:105px;height:105px;margin:22px auto 21px;background-size:60px 60px}
  .jupazz-wa-panel p::before{font-size:22px}
}


/* ===== JUPAZZ STUDIO 3.9 — WhatsApp popup hardening ===== */
/* Extra front-end guard: keep the popup title clean even if an outdated value is cached. */
.jupazz-wa-panel strong{
  unicode-bidi:isolate!important;
}


/* ===== JUPAZZ STUDIO 3.10 — approved WhatsApp artwork everywhere ===== */
/* Use the same approved Jupazz WhatsApp icon for every theme WhatsApp touchpoint. */
.wa-icon{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  border-radius:50%!important;
  background:transparent url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg") center/contain no-repeat!important;
  box-shadow:none!important;
}
.wa-icon svg{display:none!important}
.final-cta .wa-icon{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  border-radius:50%!important;
  background:transparent url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg") center/contain no-repeat!important;
  box-shadow:none!important;
}
.final-cta .wa-icon svg{display:none!important}

/* Floating WhatsApp button rendered by Jupazz Core. */
.jupazz-wa-fab{
  width:68px!important;
  height:68px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.jupazz-wa-fab:hover{
  transform:translateY(-2px)!important;
  box-shadow:none!important;
}
.jupazz-wa-fab svg{display:none!important}
.jupazz-wa-fab::before{
  content:""!important;
  display:block!important;
  width:68px!important;
  height:68px!important;
  border-radius:50%!important;
  background:transparent url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg") center/contain no-repeat!important;
  filter:drop-shadow(0 14px 24px rgba(108,85,25,.26));
}

/* Same artwork inside the popup. */
.jupazz-wa-panel strong::after{
  content:""!important;
  display:block!important;
  width:126px!important;
  height:126px!important;
  margin:28px auto 26px!important;
  border-radius:50%!important;
  background:transparent url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg") center/contain no-repeat!important;
  box-shadow:none!important;
}

@media(max-width:700px){
  .jupazz-wa-fab{width:64px!important;height:64px!important}
  .jupazz-wa-fab::before{width:64px!important;height:64px!important}
  .jupazz-wa-panel strong::after{width:116px!important;height:116px!important;margin:25px auto 24px!important}
}
@media(max-width:390px){
  .jupazz-wa-panel strong::after{width:105px!important;height:105px!important;margin:22px auto 21px!important}
}

/* ===== JUPAZZ STUDIO 3.14 — pagina Chi sono ===== */
.about-page{overflow:hidden}
.about-hero{position:relative;padding:96px 0 112px;background:linear-gradient(145deg,#fbfaf7 0%,#faf9f5 52%,#f8f5ee 100%)}
.about-hero::before{content:"";position:absolute;width:720px;height:720px;border-radius:45% 55% 63% 37% / 48% 38% 62% 52%;right:-310px;top:-130px;background:linear-gradient(145deg,rgba(242,236,221,.62),rgba(248,246,241,.18));transform:rotate(14deg);pointer-events:none}
.about-hero::after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;left:5%;bottom:-85px;border:1px solid rgba(239,190,68,.18);pointer-events:none}
.about-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(350px,.72fr);gap:76px;align-items:center}
.about-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(54px,6.2vw,88px);line-height:.98;letter-spacing:-.048em;font-weight:400;margin:26px 0 28px;max-width:10.8ch;color:#473811}
.about-hero-copy h1 em{display:inline;font-weight:400;color:#eebd3f}
.about-lead{font-size:19px;line-height:1.72;color:#cf9e22;max-width:720px;margin:0}
.about-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:34px}
.about-hero-actions .text-link{font-weight:750;color:#edb934}
.about-portrait-wrap{position:relative;min-height:610px;display:grid;place-items:center}
.about-orbit{position:absolute;border:1px solid rgba(239,190,68,.27);border-radius:50%;pointer-events:none}
.orbit-one{width:520px;height:520px;right:-110px;top:20px}
.orbit-two{width:430px;height:430px;right:-70px;top:65px;border-style:dashed;transform:rotate(18deg)}
.about-portrait-card{position:relative;width:min(430px,100%);height:570px;border-radius:46% 46% 30px 30px / 34% 34% 30px 30px;overflow:hidden;background:#f2efe8;box-shadow:0 30px 80px rgba(88,69,21,.16);border:1px solid rgba(255,255,255,.8)}
.about-portrait-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 53%,rgba(71,55,17,.76) 100%);pointer-events:none}
.about-portrait-card img{width:100%;height:100%;object-fit:cover;object-position:50% 8%}
.about-portrait-caption{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;color:#fff;display:grid;gap:5px}
.about-portrait-caption span{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#f7f3e9}
.about-portrait-caption strong{font-family:Georgia,serif;font-size:22px;line-height:1.15;font-weight:400;max-width:15ch}

.about-origin{padding:118px 0 126px;background:#fbfaf8}
.about-origin-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:86px;align-items:start}
.about-sticky-title{position:sticky;top:110px}
.about-sticky-title h2{font-family:Georgia,serif;font-size:clamp(43px,4.7vw,66px);line-height:1.01;font-weight:400;letter-spacing:-.04em;margin:12px 0 24px;max-width:8.5ch}
.about-signature{font-family:"Segoe Print","Bradley Hand",cursive;font-size:24px;font-style:italic;color:#efc14c;transform:rotate(-4deg);display:inline-block}
.about-story-copy{max-width:680px}
.about-story-copy>p{font-size:18px;line-height:1.82;color:#d2a022;margin:0 0 27px}
.about-story-copy .about-story-opening{font-family:Georgia,serif;font-size:31px;line-height:1.34;color:#544214;margin-bottom:34px}
.about-story-callout{margin-top:42px;padding:28px 30px;border-radius:22px;background:linear-gradient(135deg,#f7f5f0,#faf9f7);border:1px solid #ebe8e1;display:grid;grid-template-columns:42px 1fr;gap:17px;align-items:start}
.about-story-callout>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eebd41;color:#fff;font-size:18px}
.about-story-callout p{font-family:Georgia,serif;font-size:21px;line-height:1.45;color:#644e17;margin:2px 0 0}

.about-bz-section{padding:0 0 122px;background:#fbfaf8}
.about-bz-card{position:relative;padding:64px;border-radius:38px;background:linear-gradient(135deg,#f5f3ed 0%,#faf9f5 55%,#f6f2ea 100%);border:1px solid #eae7e0;overflow:hidden}
.about-bz-card::after{content:"";position:absolute;width:430px;height:430px;right:-170px;bottom:-210px;border-radius:50%;border:1px solid rgba(237,185,52,.16);box-shadow:0 0 0 46px rgba(255,255,255,.12),0 0 0 92px rgba(255,255,255,.09)}
.about-bz-top{position:relative;z-index:1;display:flex;justify-content:space-between;gap:40px;align-items:end}
.about-bz-top h2{font-family:Georgia,serif;font-size:clamp(42px,4.6vw,62px);line-height:1.02;letter-spacing:-.035em;font-weight:400;max-width:13ch;margin:0}
.about-bz-link{flex:0 0 auto;font-weight:800;color:#edb934;border-bottom:1px solid rgba(237,185,52,.4);padding-bottom:4px}
.about-bz-intro{position:relative;z-index:1;max-width:860px;font-size:18px;line-height:1.72;color:#d2a022;margin:36px 0 42px}
.about-learning-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.about-learning-grid article{min-height:255px;padding:28px 24px;border-radius:22px;background:rgba(255,255,255,.78);border:1px solid rgba(229,225,216,.95);backdrop-filter:blur(8px)}
.about-learning-num{font-family:Georgia,serif;color:#f0c350;font-size:18px;display:block;margin-bottom:38px}
.about-learning-grid h3{font-family:Georgia,serif;font-size:27px;font-weight:400;margin:0 0 12px}
.about-learning-grid p{font-size:14px;line-height:1.6;color:#dca928;margin:0}

.about-timeline-section{padding:116px 0 124px;background:#fff}
.about-timeline-head{margin-bottom:58px}
.about-timeline-head h2{max-width:10ch}
.about-path{border-top:1px solid #e9e7e0}
.about-path-step{display:grid;grid-template-columns:90px 260px 1fr;gap:34px;align-items:start;padding:34px 0;border-bottom:1px solid #e9e7e0}
.about-path-step>span{font-family:Georgia,serif;font-size:26px;color:#f0c558;padding-top:2px}
.about-path-step strong{font-family:Georgia,serif;font-size:34px;font-weight:400;color:#524013;display:block}
.about-path-step p{font-size:16px;line-height:1.65;color:#daa623;margin:6px 0 0;max-width:720px}

.about-audience{position:relative;padding:112px 0;background:linear-gradient(135deg,#ddac30 0%,#eebb3b 58%,#efbe42 100%);color:#fff;overflow:hidden}
.about-audience::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;left:-230px;bottom:-310px;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 58px rgba(255,255,255,.035),0 0 0 116px rgba(255,255,255,.025)}
.about-audience-grid{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:88px;align-items:start}
.about-audience-quote blockquote{font-family:Georgia,serif;font-size:clamp(34px,3.8vw,52px);line-height:1.12;letter-spacing:-.025em;font-weight:400;margin:20px 0 0;color:#fff}
.about-audience-copy h2{font-family:Georgia,serif;font-size:43px;line-height:1.06;font-weight:400;margin:0 0 28px}
.about-audience-copy p{font-size:17px;line-height:1.75;color:#f9f7f0;margin:0 0 22px}

.about-method{padding:118px 0 128px;background:linear-gradient(180deg,#fbfaf8 0%,#f9f8f5 100%)}
.about-method-heading{max-width:830px;margin-bottom:48px}
.about-method-heading h2{font-family:Georgia,serif;font-size:clamp(44px,5vw,66px);line-height:1.02;letter-spacing:-.04em;font-weight:400;margin:10px 0 22px;max-width:12ch}
.about-method-heading>p{font-size:18px;line-height:1.72;color:#d6a323;max-width:720px}
.about-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.about-method-grid article{padding:30px 26px 32px;background:#fff;border:1px solid #eae8e2;border-radius:24px;box-shadow:0 12px 35px rgba(88,69,21,.045)}
.about-method-icon{width:45px;height:45px;border-radius:14px;background:#f6f4ef;color:#eeba36;display:grid;place-items:center;font-size:20px;margin-bottom:32px}
.about-method-grid h3{font-family:Georgia,serif;font-size:25px;line-height:1.1;font-weight:400;margin:0 0 12px}
.about-method-grid p{font-size:14px;line-height:1.62;color:#dba825;margin:0}
.about-method-manifesto{margin-top:52px;padding:48px 52px;border-radius:28px;background:#473811;color:#fff;display:grid;grid-template-columns:150px 1fr 1fr;gap:34px;align-items:center}
.about-method-manifesto>span{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#f2c964;font-weight:800}
.about-method-manifesto>strong{font-family:Georgia,serif;font-size:34px;line-height:1.12;font-weight:400}
.about-method-manifesto>p{font-size:15px;line-height:1.6;color:#e2ddd2;margin:0}
.about-final-cta{position:relative;overflow:hidden}
.about-final-cta::after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;right:-120px;top:-170px;border:1px solid rgba(255,255,255,.14);pointer-events:none}
.founder-about-link-v314{display:inline-flex;margin-top:22px;color:#eeb936;font-weight:800;font-size:13px;border-bottom:1px solid #ded9cc;padding-bottom:3px}

@media (max-width: 980px){
  .about-hero-grid{grid-template-columns:1fr .72fr;gap:36px}.about-portrait-wrap{min-height:500px}.about-portrait-card{height:500px}.about-origin-grid{grid-template-columns:.8fr 1.2fr;gap:50px}.about-bz-card{padding:46px 36px}.about-learning-grid,.about-method-grid{grid-template-columns:repeat(2,1fr)}.about-path-step{grid-template-columns:64px 200px 1fr}.about-audience-grid{gap:48px}.about-method-manifesto{grid-template-columns:1fr 1fr}.about-method-manifesto>span{grid-column:1/-1}
}
@media (max-width: 760px){
  .about-hero{padding:62px 0 76px}.about-hero-grid{grid-template-columns:1fr;gap:44px}.about-hero-copy h1{font-size:49px;max-width:none}.about-lead{font-size:16px}.about-portrait-wrap{min-height:490px}.about-portrait-card{height:490px;width:min(390px,92%)}.orbit-one{width:430px;height:430px;right:-130px}.orbit-two{width:350px;height:350px;right:-80px}.about-origin{padding:80px 0 86px}.about-origin-grid{grid-template-columns:1fr;gap:28px}.about-sticky-title{position:static}.about-sticky-title h2{font-size:46px;max-width:11ch}.about-story-copy .about-story-opening{font-size:27px}.about-story-copy>p{font-size:16px}.about-bz-section{padding-bottom:82px}.about-bz-card{padding:36px 24px;border-radius:28px}.about-bz-top{display:grid;gap:22px}.about-bz-top h2{font-size:43px}.about-bz-intro{font-size:16px}.about-learning-grid{grid-template-columns:1fr}.about-learning-grid article{min-height:auto}.about-learning-num{margin-bottom:22px}.about-timeline-section{padding:80px 0}.about-path-step{grid-template-columns:48px 1fr;gap:18px}.about-path-step div{grid-column:2}.about-path-step strong{font-size:29px}.about-audience{padding:80px 0}.about-audience-grid{grid-template-columns:1fr;gap:46px}.about-audience-copy h2{font-size:38px}.about-method{padding:82px 0}.about-method-heading h2{font-size:45px}.about-method-grid{grid-template-columns:1fr}.about-method-manifesto{padding:34px 28px;grid-template-columns:1fr;gap:18px}.about-method-manifesto>span{grid-column:auto}.about-method-manifesto>strong{font-size:29px}
}
@media (max-width: 480px){
  .about-hero-copy h1{font-size:43px}.about-hero-actions{align-items:flex-start;flex-direction:column}.about-portrait-wrap{min-height:430px}.about-portrait-card{height:430px}.about-portrait-caption{left:22px;right:22px;bottom:20px}.about-origin-grid{gap:22px}.about-story-callout{padding:23px 20px;grid-template-columns:34px 1fr}.about-story-callout>span{width:34px;height:34px}.about-story-callout p{font-size:18px}.about-sticky-title h2,.about-bz-top h2,.about-method-heading h2{font-size:39px}.about-audience-quote blockquote{font-size:34px}
}


/* ===== JUPAZZ STUDIO 3.15 — logo header HQ + CTA più leggera ===== */
/* Il nuovo file è ritagliato sul contenuto reale: a parità di spazio il marchio risulta più nitido e leggibile. */
.brand-full-v114{
  width:auto!important;
  height:54px!important;
  max-width:154px!important;
  object-fit:contain!important;
  object-position:left center!important;
  image-rendering:auto;
}

/* CTA del menu: pill discreta, coerente con il lilla del brand e senza effetto “bottone pubblicitario”. */
.site-header .main-nav .header-project-cta,
.site-header .main-nav a.header-project-cta{
  min-height:36px!important;
  padding:0 14px!important;
  border:1px solid rgba(238,187,59,.28)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.50)!important;
  color:#ddac30!important;
  box-shadow:none!important;
  font-size:11.5px!important;
  font-weight:760!important;
  letter-spacing:.005em!important;
  line-height:1!important;
  transform:none!important;
  backdrop-filter:blur(8px);
}
.site-header .main-nav .header-project-cta::after,
.site-header .main-nav a.header-project-cta::after{
  display:none!important;
}
.site-header .main-nav .header-project-cta:hover,
.site-header .main-nav a.header-project-cta:hover{
  background:#f7f5f0!important;
  border-color:rgba(237,185,52,.42)!important;
  color:#d9a523!important;
  transform:translateY(-1px)!important;
}
.site-header .main-nav .header-project-cta:focus-visible,
.site-header .main-nav a.header-project-cta:focus-visible{
  outline:2px solid rgba(237,185,52,.34)!important;
  outline-offset:3px;
}

@media(max-width:980px){
  .brand-full-v114{height:51px!important;max-width:145px!important}
}
@media(max-width:700px){
  .brand-full-v114{height:48px!important;max-width:138px!important}
  .site-header .main-nav .header-project-cta,
  .site-header .main-nav a.header-project-cta{
    width:100%!important;
    min-height:42px!important;
    justify-content:center!important;
    font-size:12.5px!important;
    background:#faf9f6!important;
  }
}
@media(max-width:390px){
  .brand-full-v114{height:46px!important;max-width:132px!important}
}


/* ===== JUPAZZ STUDIO 3.16 — logo corsivo a destra ===== */
.brand-full-v114{
  display:block!important;
  width:118px!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:left center!important;
}
@media(max-width:980px){.brand-full-v114{width:112px!important}}
@media(max-width:700px){.brand-full-v114{width:104px!important}}
@media(max-width:390px){.brand-full-v114{width:98px!important}}

/* ===== JUPAZZ STUDIO 3.17 — palette bordeaux / warm editorial ===== */
:root{
  --ink:#463710;
  --ink-soft:#d09f22;
  --periwinkle:#eeba37;
  --periwinkle-deep:#71581a;
  --lavender:#f0ede6;
  --lavender-2:#f9f7f1;
  --sand:#f1c85f;
  --cream:#f6f4ed;
  --white:#fefdfc;
  --line:#e7e2d5;
  --shadow:0 18px 50px rgba(75,59,18,.09);
}
body,
.inner-page,
.about-origin,
.about-bz-section,
.about-timeline-section{
  background:
    radial-gradient(circle at -6% 10%, rgba(238,188,60,.11), transparent 22%),
    radial-gradient(circle at 108% 12%, rgba(104,81,24,.08), transparent 24%),
    linear-gradient(180deg,#fbf9f4 0%,#f5f2ea 100%) !important;
  color:var(--ink);
}
.hero-v114{
  background:
    radial-gradient(circle at 92% 12%, rgba(195,149,32,.10), transparent 27%),
    linear-gradient(145deg,#fbf9f4 0%,#f6f3ec 52%,#f1ede5 100%) !important;
}
.hero-v114-inner::before,
.about-hero::before{
  background:linear-gradient(150deg,rgba(240,197,87,.24),rgba(245,242,235,.08)) !important;
}
.highlight::after,
.marker::before,
.step-num,
.final-cta .btn-sand{
  background:linear-gradient(90deg,#f0c556,#efbf45) !important;
}
.eyebrow,
.soft-note,
.growth-head .section-kicker,
.growth-badge,
.question-number,
.booking-feature-icon,
.growth-step,
.about-story-callout>span,
.about-learning-num{
  background:#f1ede4 !important;
  border-color:#e2ddd0 !important;
  color:#d09f22 !important;
}
.eyebrow,
.growth-head .section-kicker,
.growth-badge{box-shadow:none !important;}
.section-kicker,
.founder-kicker-v114,
.project-meta,
.about-portrait-caption span,
.about-learning-num,
.growth-title-accent,
.questions-accent,
.cta-emphasis,
.page-hero h1 em,
.hero h1 .line2,
.hero-title-mobile .line2,
.hero-title-desktop .line2,
.text-link,
.about-bz-link,
.founder-about-link-v314{
  color:#ca9a21 !important;
}
.text-link,
.about-bz-link,
.founder-about-link-v314{
  border-bottom-color:rgba(202,154,33,.35) !important;
}
.btn-primary,
.confirm,
.growth-note .btn,
.home-questions .btn-primary,
.booking-note .btn{
  background:linear-gradient(135deg,#c89821,#644e17) !important;
  color:#fff !important;
  border-color:rgba(100,78,23,.2) !important;
  box-shadow:0 14px 30px rgba(88,69,21,.18) !important;
}
.btn-primary:hover,
.confirm:hover,
.booking-note .btn:hover{
  background:linear-gradient(135deg,#70581a,#574412) !important;
}
.btn-light,
.final-cta .whatsapp-btn,
.final-cta .btn-sand{
  background:#f9f7f0 !important;
  color:#695219 !important;
  border-color:#e6e0d0 !important;
}
.whatsapp-btn .wa-icon,
.final-cta .wa-icon{
  background:#c89821 !important;
  color:#fff !important;
}
.site-header{
  background:linear-gradient(90deg,#604a11 0%,#c0921f 100%) !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 14px 34px rgba(63,49,15,.18) !important;
  backdrop-filter:blur(14px);
}
.site-header .main-nav a:not(.btn),
.site-header .main-nav li,
.site-header .main-nav,
.menu-toggle{
  color:#f5f1e8 !important;
}
.site-header .main-nav a:not(.btn)::after{
  background:#efe6ce !important;
}
.main-nav{
  background:transparent;
}
@media(max-width:980px){
  .main-nav{
    background:linear-gradient(180deg,#6a5216,#c49520) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    box-shadow:0 22px 50px rgba(63,49,15,.18) !important;
  }
}
.site-header .main-nav .header-project-cta,
.site-header .main-nav a.header-project-cta{
  background:rgba(252,250,245,.12) !important;
  border-color:rgba(252,250,245,.32) !important;
  color:#fcf9f3 !important;
}
.site-header .main-nav .header-project-cta:hover,
.site-header .main-nav a.header-project-cta:hover{
  background:#f5f1e8 !important;
  color:#6c5419 !important;
  border-color:#f5f1e8 !important;
}
.founder-panel-v114,
.booking-feature-grid article,
.booking-note,
.growth-head,
.growth-head>div:last-child,
.growth-card,
.growth-journey span,
.growth-note,
.question-item,
.review,
.step,
.project-card,
.booking-page-card,
.booking-flow-steps article,
.booking-dashboard-demo,
.about-learning-grid article,
.about-bz-card,
.growth-note,
.service-feature,
.method-row,
.process .step,
.benefits,
.benefits-v114{
  border-color:#e7e2d5 !important;
  box-shadow:0 18px 44px rgba(92,72,22,.05) !important;
}
.founder-panel-v114,
.booking-feature-grid article,
.booking-note,
.growth-head,
.growth-head>div:last-child,
.growth-card,
.growth-journey span,
.question-item,
.review,
.step,
.project-card,
.booking-page-card,
.booking-flow-steps article,
.booking-dashboard-demo,
.about-learning-grid article,
.about-bz-card,
.benefits,
.benefits-v114,
.service-feature,
.method-row{
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(247,245,239,.92)) !important;
}
.founder-line-v114,
.growth-card::after,
.checks li::before{
  background:linear-gradient(90deg,#efbf45,#ca9a21) !important;
}
.checks li::before{color:#fff !important;}
.founder-note-v114>span,
.growth-step{
  background:linear-gradient(145deg,#d5cfc0,#eeba38) !important;
  color:#fff !important;
  border-color:#f1c75d !important;
}
.founder-photo-v114{
  background:linear-gradient(180deg,#efeadd,#f7f4ed) !important;
}
.founder-photo-v114::before{
  background:linear-gradient(90deg,rgba(251,249,244,.66),rgba(251,249,244,0) 32%) !important;
}
.booking-ecosystem{
  background:linear-gradient(180deg,#f6f3ec 0%,#f2eee6 100%) !important;
}
.growth-system{
  background:
    radial-gradient(circle at 88% 10%,rgba(240,197,87,.22),transparent 31%),
    linear-gradient(180deg,#faf8f2 0%,#f3f0e8 100%) !important;
}
.growth-system::before,
.about-hero::after,
.about-orbit{
  border-color:rgba(200,152,33,.14) !important;
}
.home-questions{
  background:linear-gradient(180deg,#fbf9f4 0%,#f5f2ea 100%) !important;
}
.question-item[open]{
  border-color:#d8d2c3 !important;
  box-shadow:0 18px 40px rgba(92,72,22,.08) !important;
}
.showcase,
.process,
.booking-control,
.who-fit,
.booking-page-flow,
.booking-ownership{
  background:transparent !important;
}
.browser{
  background:linear-gradient(135deg,#6f571a,#ddab2c) !important;
}
.browser-top{
  background:rgba(62,49,15,.36) !important;
}
.phone,
.laptop,
.mini-browser,
.mini-phone{
  border-color:#40320f !important;
}
.phone-screen,
.browser-bottom,
.booking-dashboard-demo,
.dash-stats div,
.dash-list span{
  background:#fefdfb !important;
}
.cta-box,
.about-final-cta .cta-box,
.growth-note{
  background:linear-gradient(120deg,#604a11,#c29420) !important;
  color:#fff !important;
}
.final-cta .whatsapp-btn span,
.final-cta .btn-sand,
.final-cta .whatsapp-btn,
.cta-box p,
.cta-box h2,
.cta-box em{
  color:inherit;
}
.site-footer{
  background:#f5f2eb !important;
  color:#d09f22 !important;
}
.site-footer nav a:hover,
.footer-legal a:hover{
  color:#71581a !important;
}
.footer-legal{
  border-top:1px solid rgba(200,152,33,.14) !important;
}
@media(max-width:700px){
  .site-header .main-nav .header-project-cta,
  .site-header .main-nav a.header-project-cta{
    background:#f9f7f0 !important;
    color:#6c5419 !important;
  }
  .hero-v114,
  .booking-ecosystem,
  .growth-system,
  .home-questions{border-radius:0 !important;}
}

/* ===== JUPAZZ STUDIO 3.18 — refinements, transparent logo, stronger bordeaux system ===== */
:root{
  --yellow:#e4c358;
  --yellow-soft:#f4e2a0;
}
/* highlights visibly back */
.highlight,
.marker{
  background-image:linear-gradient(90deg,var(--yellow-soft),var(--yellow)) !important;
  background-position:0 86% !important;
}
.marker-small{background-size:100% .44em !important;}

/* header logo sizing with real transparent asset */
.brand-full-v114{
  height:52px !important;
  max-width:166px !important;
  background:transparent !important;
}
@media(max-width:980px){.brand-full-v114{height:49px !important;max-width:154px !important;}}
@media(max-width:700px){.brand-full-v114{height:46px !important;max-width:146px !important;}}

/* about page portrait: no text over the photo, separate note card */
.about-portrait-card::after,
.about-portrait-caption{display:none !important;content:none !important;}
.about-portrait-wrap{display:flex;flex-direction:column;align-items:center;gap:18px;}
.about-portrait-note{
  width:min(430px,100%);
  padding:18px 22px 20px;
  border-radius:24px;
  border:1px solid #e7e2d5;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(247,245,239,.96));
  box-shadow:0 16px 34px rgba(92,72,22,.06);
  display:grid;
  gap:8px;
}
.about-portrait-note span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:800;
  color:#ca9a21;
}
.about-portrait-note strong{
  font-family:Georgia,serif;
  font-size:24px;
  line-height:1.18;
  font-weight:400;
  color:#463710;
}
@media(max-width:480px){
  .about-portrait-note{width:min(390px,92%);padding:16px 18px 18px;border-radius:20px;}
  .about-portrait-note strong{font-size:21px;}
}

/* stronger warm palette for bottom sections / blocks */
.service-feature,
.method-row,
.about-path,
.about-path-step,
.about-method-grid article,
.about-method-manifesto,
.about-learning-grid article,
.about-audience-quote,
.about-audience-copy,
.about-bz-card,
.questions-shell,
.question-item,
.growth-card,
.booking-feature-grid article,
.process .step,
.step{
  border-color:#e3ddcf !important;
}
.service-index,
.method-number,
.about-path-step>span,
.about-learning-num,
.question-number,
.growth-step,
.step-num{
  color:#edb833 !important;
}
.about-path-step>span,
.service-index,
.method-number{
  opacity:1 !important;
}
.about-learning-num,
.question-number,
.booking-feature-icon,
.growth-step,
.about-method-icon,
.step-num{
  background:linear-gradient(145deg,#f0ebe0,#dcd1b7) !important;
  color:#735a1b !important;
  border:1px solid #dfd9c8 !important;
  box-shadow:0 10px 22px rgba(92,72,22,.08) !important;
}
.service-feature li::before,
.method-row li::before,
.about-bz-link::after,
.text-link::after,
.founder-about-link-v314::after{
  color:#ca9a21 !important;
}

/* warm the low sections that still looked cold / violet */
.about-timeline-section{background:linear-gradient(180deg,#fbf9f4 0%,#f5f2ea 100%) !important;}
.about-audience{
  background:linear-gradient(135deg,#6e561a 0%,#c89821 55%,#dca826 100%) !important;
}
.about-audience::before{
  border-color:rgba(255,255,255,.14) !important;
  box-shadow:0 0 0 58px rgba(255,255,255,.03),0 0 0 116px rgba(255,255,255,.02) !important;
}
.about-audience-copy p{color:rgba(251,249,243,.86) !important;}
.about-method{background:linear-gradient(180deg,#faf8f2 0%,#f5f2ea 100%) !important;}
.about-method-manifesto{
  background:linear-gradient(120deg,#604a11,#c29420) !important;
  color:#fff !important;
}
.about-method-manifesto>span{color:rgba(250,246,235,.72) !important;}
.about-method-manifesto>p{color:rgba(251,248,240,.8) !important;}

/* some strategic words / accents */
.service-feature h2,
.method-row h2,
.about-path-step strong,
.about-method-grid h3,
.about-method-heading h2,
.about-bz-top h2,
.about-sticky-title h2,
.about-audience-copy h2,
.about-story-opening,
.founder-copy-v114 h2,
.growth-card h3,
.question-item summary strong{
  color:#4e3d12 !important;
}
.section-kicker,
.project-meta,
.founder-kicker-v114,
.growth-title-accent,
.questions-accent,
.cta-emphasis,
.page-hero h1 em,
.hero h1 .line2,
.hero-title-mobile .line2,
.hero-title-desktop .line2,
.about-hero-copy h1 em,
.about-signature,
.about-story-callout p strong{
  color:#d3a122 !important;
}

/* home / service step blocks warmer */
.process .step,
.step,
.service-feature,
.method-row,
.about-method-grid article,
.about-learning-grid article,
.question-item,
.growth-card,
.booking-feature-grid article{
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(248,246,241,.96)) !important;
}

/* ===== JUPAZZ STUDIO 3.19 — contrast / bottom sections / method cards ===== */
/* mai testo tono-su-tono */
.page-cta-band,
.page-cta-band .page-cta-inner,
.page-cta-band h2,
.page-cta-band p,
.page-cta-band .section-kicker,
.page-cta-band .btn,
.cta-box,
.cta-box h2,
.cta-box p,
.cta-box .cta-emphasis,
.site-footer,
.site-footer strong,
.site-footer span,
.site-footer nav a,
.footer-legal,
.footer-legal a{
  -webkit-font-smoothing:antialiased;
}

/* blocchi bassi coerenti e leggibili */
.method-principles{
  background:linear-gradient(180deg,#faf8f2 0%,#f1eee6 100%) !important;
}
.principle-grid > div{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,246,241,.98)) !important;
  border-color:#e1dbcc !important;
  box-shadow:0 14px 34px rgba(92,72,22,.06) !important;
}
.principle-grid strong{color:#4e3d12 !important;}
.principle-grid p{color:#cb9b21 !important;}

/* CTA di pagina e CTA finale più scure, senza parole che spariscono */
.page-cta-band,
.about-final-cta{
  background:linear-gradient(135deg,#584411 0%,#70581a 52%,#cb9b21 100%) !important;
  color:#fff !important;
}
.page-cta-inner h2,
.page-cta-inner p,
.page-cta-inner .section-kicker.light,
.about-final-cta h2,
.about-final-cta p,
.about-final-cta .section-kicker.light{
  color:#fff !important;
}
.page-cta-inner p,
.about-final-cta p{
  color:rgba(251,248,240,.86) !important;
}
.page-cta-band .btn-sand,
.about-final-cta .btn-sand{
  background:#f9f6ee !important;
  color:#604b17 !important;
  border-color:#e9e2d1 !important;
  box-shadow:0 10px 24px rgba(30,24,9,.18) !important;
}
.cta-box .cta-emphasis{
  color:#decfa9 !important;
}
.cta-box p,
.page-cta-band p{max-width:40ch;}

/* metodo: titoli migliori e respiro interno, specie su mobile */
.method-row{
  padding:40px 26px !important;
  border:1px solid #e1dbcc !important;
  border-radius:26px !important;
  margin-bottom:16px !important;
  box-shadow:0 12px 30px rgba(92,72,22,.04) !important;
}
.method-row:last-child{border-bottom:1px solid #e1dbcc !important;}
.method-row h2{
  font-size:clamp(34px,4vw,42px) !important;
  line-height:1.08 !important;
  max-width:11ch !important;
  overflow-wrap:anywhere;
}
.method-row > p{
  color:#cb9b21 !important;
  max-width:34ch !important;
}
.method-number{
  color:#eeba37 !important;
  font-size:34px !important;
  line-height:1 !important;
  padding-top:2px !important;
}
@media(max-width:760px){
  .method-timeline{padding:28px 0 58px !important;}
  .method-row{
    grid-template-columns:48px 1fr !important;
    gap:16px !important;
    padding:28px 20px 24px !important;
    border-radius:22px !important;
  }
  .method-row > p{grid-column:1/-1 !important; margin-top:8px !important; max-width:none !important;}
  .method-row h2{font-size:30px !important; max-width:9ch !important;}
}
@media(max-width:480px){
  .method-row{padding:24px 18px 22px !important;}
  .method-row h2{font-size:28px !important; line-height:1.1 !important;}
  .method-number{font-size:30px !important;}
}

/* footer finalmente scuro e leggibile */
.site-footer{
  background:linear-gradient(180deg,#30260b 0%,#1e1809 100%) !important;
  color:#f2eee5 !important;
}
.site-footer .footer-grid strong{
  color:#fcfaf5 !important;
}
.site-footer .footer-grid span{
  color:rgba(242,238,229,.72) !important;
}
.site-footer nav a,
.footer-legal a{
  color:#efeadd !important;
}
.site-footer nav a:hover,
.footer-legal a:hover{
  color:#ffffff !important;
}
.footer-legal{
  color:rgba(242,238,229,.68) !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}

/* piccoli fix extra di contrasto nei blocchi finali della home */
.cta-box .btn-light,
.cta-box .whatsapp-btn{
  background:#f9f6ee !important;
  color:#604b17 !important;
  border-color:#e9e2d1 !important;
}
.cta-box .whatsapp-btn .wa-icon{
  background:#c79820 !important;
  color:#fff !important;
}

/* ===== JUPAZZ STUDIO 3.20 — portfolio mockup refresh + old color cleanup ===== */
/* portfolio / case studies: via i vecchi azzurrini, entra il sistema bordeaux-crema */
.portfolio-grid-section{
  background:transparent !important;
}
.portfolio-empty{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(217,165,35,.08), transparent 20%),
    radial-gradient(circle at 88% 84%, rgba(239,192,72,.11), transparent 24%),
    linear-gradient(135deg,#fbf9f4 0%,#f5f2ea 54%,#f0ece3 100%) !important;
  border:1px solid #e7e2d5 !important;
  box-shadow:0 22px 60px rgba(92,72,22,.06) !important;
}
.portfolio-empty::before{
  content:"";
  position:absolute;
  inset:auto auto -120px -110px;
  width:320px;
  height:320px;
  border-radius:50%;
  border:1px solid rgba(200,152,33,.10);
  box-shadow:0 0 0 48px rgba(200,152,33,.03),0 0 0 96px rgba(200,152,33,.018);
  pointer-events:none;
}
.portfolio-empty h2{
  color:#4e3d12 !important;
  max-width:10ch;
  line-height:1.05;
}
.portfolio-empty p{
  color:#cb9b21 !important;
}
.portfolio-empty .section-kicker,
.portfolio-empty .admin-hint{
  color:#ca9a21 !important;
}
.portfolio-empty-ui{
  min-height:350px !important;
}

/* mockup portfolio molto più curato */
.mini-browser{
  left:0 !important;
  top:18px !important;
  width:84% !important;
  height:252px !important;
  border:12px solid #453610 !important;
  border-radius:28px !important;
  background:#fffdf9 !important;
  box-shadow:0 26px 70px rgba(58,45,14,.16) !important;
  overflow:hidden;
}
.mini-browser > span{
  width:10px !important;
  height:10px !important;
  background:#c5c1b6 !important;
  margin:14px 3px 0 !important;
}
.mini-browser > div{
  position:relative;
  height:186px !important;
  margin:14px 14px 16px !important;
  border-radius:18px !important;
  background:
    linear-gradient(90deg,#f1c860 0 54%, #eee9de 54% 100%) !important;
  box-shadow:inset 0 -40px 0 #fdfbf6;
  overflow:hidden;
}
.mini-browser::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:38px;
  background:linear-gradient(90deg,#6e561a,#ca9a21) !important;
}
.mini-browser::after{
  content:"";
  position:absolute;
  right:28px;
  top:74px;
  width:86px;
  height:104px;
  border-radius:36px 36px 0 0;
  background:
    radial-gradient(circle at 50% 26%, #e5dac0 0 34px, transparent 35px),
    linear-gradient(180deg,#f2ece0 0%,#e1d9c5 100%);
  box-shadow:0 0 0 10px rgba(255,255,255,.78);
}
.mini-browser > div::before{
  content:"";
  position:absolute;
  left:14px;
  top:14px;
  width:86px;
  height:12px;
  background:rgba(255,255,255,.52);
  border-radius:999px;
  box-shadow:0 24px 0 rgba(255,255,255,.96), 0 46px 0 rgba(255,255,255,.96), 0 70px 0 rgba(255,255,255,.70);
}
.mini-browser > div::after{
  content:"";
  position:absolute;
  left:14px;
  bottom:12px;
  width:calc(100% - 28px);
  height:30px;
  background:rgba(253,251,246,.95);
  border-radius:12px;
  box-shadow:0 -1px 0 rgba(69,54,16,.08) inset;
}
.mini-phone{
  right:1% !important;
  bottom:4px !important;
  width:98px !important;
  height:202px !important;
  border:9px solid #453610 !important;
  border-radius:30px !important;
  background:#fffdf9 !important;
  box-shadow:0 24px 58px rgba(58,45,14,.16) !important;
  overflow:hidden;
}
.mini-phone::before{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:10px;
  width:36px;
  height:4px;
  border-radius:999px;
  background:#d6d3cb;
}
.mini-phone > div{
  height:100%;
  border-radius:18px !important;
  background:
    linear-gradient(180deg,#fffdf9 0 66%, #f5f2ea 66% 100%) !important;
  position:relative;
}
.mini-phone > div::before{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  top:24px;
  height:72px;
  border-radius:16px;
  background:#fdfbf6;
  box-shadow:0 0 0 1px rgba(69,54,16,.08) inset;
}
.mini-phone > div::after{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  bottom:18px;
  height:30px;
  border-radius:999px;
  background:linear-gradient(135deg,#c89821,#644e17);
}

/* cleanup colori vecchi residui nel portfolio */
.project-visual{
  background:linear-gradient(135deg,#f1eee5 0%,#ece9e0 44%,#e3e0d8 100%) !important;
}
.project-placeholder{
  background:radial-gradient(circle at 64% 28%,#fdfbf7,#eeebe2) !important;
}
.project-placeholder span,
.project-meta{
  color:#ca9a21 !important;
}
.project-card,
.project-card-copy{
  border-color:#e7e2d5 !important;
}
.project-card p{color:#cb9b21 !important;}

/* anche qualche sezione vuota/secondaria ancora fredda */
.who-fit,
.booking-page-flow,
.booking-ownership{
  background:linear-gradient(180deg,#faf8f2 0%,#f3efe7 100%) !important;
}

@media(max-width:760px){
  .portfolio-empty{padding:34px 22px !important;}
  .portfolio-empty h2{font-size:40px !important;}
  .portfolio-empty-ui{min-height:270px !important;}
  .mini-browser{height:196px !important;border-width:10px !important;border-radius:22px !important;}
  .mini-browser>div{height:142px !important;margin:12px !important;border-radius:14px !important;}
  .mini-browser::after{right:20px;top:60px;width:68px;height:84px;box-shadow:0 0 0 8px rgba(255,255,255,.78);}
  .mini-phone{width:78px !important;height:164px !important;border-width:8px !important;border-radius:24px !important;}
}

/* ===== JUPAZZ STUDIO 3.22 — premium mockup + spacing + better WhatsApp icon ===== */
/* showcase mockup now uses the custom rendered asset */
.premium-mockup-stage{
  min-height:auto !important;
  align-items:center !important;
}
.premium-site-mockup{
  margin:0;
  width:min(100%, 860px);
  border-radius:34px;
  overflow:hidden;
  box-shadow:0 26px 70px rgba(69,54,16,.14);
  border:1px solid rgba(231,226,213,.9);
  background:linear-gradient(135deg,#f8f6f0,#f2efe7);
}
.premium-site-mockup img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:760px){
  .premium-site-mockup{border-radius:26px;}
}

/* more breathing room in the blocks that felt too tight */
.question-item summary{
  padding:22px 24px !important;
  gap:14px !important;
}
.question-answer{padding:0 24px 24px !important;}
.process .step,
.step,
.growth-card,
.project-card-copy,
.booking-feature-grid article,
.service-feature,
.method-row,
.about-learning-grid article,
.contact-prompts div,
.portfolio-empty{
  padding:28px 24px !important;
}
.method-row{padding:34px 28px !important;}
.method-row h2,
.service-feature h2,
.growth-card h3,
.step strong{
  max-width:11ch;
}
.portfolio-empty p,
.growth-card p,
.step p,
.question-answer p,
.method-row > p,
.service-feature p{
  max-width:34ch;
}

/* coherent WhatsApp symbol instead of a flat red circle */
.cta-box .whatsapp-btn .wa-icon,
.contact-aside .whatsapp-btn .wa-icon{
  width:38px !important;
  height:38px !important;
  flex:0 0 38px !important;
  border-radius:12px !important;
  background:linear-gradient(135deg,#f1ede2 0%, #e6dfcf 100%) !important;
  box-shadow:inset 0 0 0 1px rgba(195,149,32,.10) !important;
  color:#c39520 !important;
}
.cta-box .whatsapp-btn .wa-icon svg,
.contact-aside .whatsapp-btn .wa-icon svg{
  display:block !important;
  width:19px !important;
  height:19px !important;
}
.cta-box .whatsapp-btn,
.contact-aside .whatsapp-btn{
  gap:14px !important;
}

/* touch up showcase copy alignment with the new asset */
.showcase-grid{align-items:center !important;}
.showcase .checks{margin-bottom:24px !important;}

/* ===== JUPAZZ STUDIO 3.23 — about contrast + warm portrait + menu CTA ===== */
/* top-right menu CTA: crema come lo sfondo sotto, testo bordeaux */
.site-header .main-nav .header-project-cta,
.site-header .main-nav a.header-project-cta{
  background:#f5f1e8 !important;
  color:#6e571a !important;
  border-color:#e2dccd !important;
  box-shadow:0 10px 24px rgba(63,49,15,.10) !important;
}
.site-header .main-nav .header-project-cta:hover,
.site-header .main-nav a.header-project-cta:hover{
  background:#f9f7f0 !important;
  color:#5d4916 !important;
  border-color:#e8e3d5 !important;
}
.site-header .main-nav .header-project-cta:focus-visible,
.site-header .main-nav a.header-project-cta:focus-visible{
  outline:2px solid rgba(110,87,26,.26) !important;
}

/* chi sono: blocco bordeaux con contrasto pieno */
.about-audience{
  background:linear-gradient(135deg,#685118 0%,#c79820 55%,#dba824 100%) !important;
}
.about-audience .section-kicker.light,
.about-audience-quote blockquote,
.about-audience-copy h2{
  color:#fcfaf5 !important;
}
.about-audience-copy p{
  color:rgba(251,249,243,.92) !important;
}

/* ritratto con palette coerente al sito */
.about-portrait-card{
  background:linear-gradient(180deg,#f1ede2 0%,#ece7db 100%) !important;
  box-shadow:0 30px 80px rgba(63,49,15,.12) !important;
  border-color:rgba(253,252,248,.92) !important;
}
.about-portrait-note{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,244,238,.96)) !important;
  border:1px solid #e6e1d3 !important;
  box-shadow:0 12px 28px rgba(63,49,15,.08) !important;
}
.about-portrait-note span{color:#d3a122 !important;}
.about-portrait-note strong{color:#4e3d12 !important;}

/* ===== JUPAZZ STUDIO 3.24 — approved cursor logo + desktop sticky header + WhatsApp palette ===== */
/* Desktop: use more of the viewport so the brand sits further left, while keeping navigation balanced. */
@media (min-width:981px){
  .site-header .container{
    width:min(1480px,calc(100% - 32px)) !important;
    max-width:none !important;
  }
  .site-header .header-inner{
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .brand-v114{
    margin-left:0 !important;
  }
  .brand-full-v114{
    width:150px !important;
    height:auto !important;
    max-width:none !important;
  }
}

/* WordPress admin bar must not cover the sticky menu while scrolling on desktop. */
body.admin-bar .site-header{
  top:32px !important;
}
@media (max-width:782px){
  body.admin-bar .site-header{
    top:46px !important;
  }
}
@media (max-width:600px){
  body.admin-bar .site-header{
    top:0 !important;
  }
}

/* Approved WhatsApp artwork. */
.wa-icon,
.final-cta .wa-icon,
.jupazz-wa-fab::before,
.jupazz-wa-panel strong::after{
  background-image:url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg") !important;
}
.jupazz-wa-fab::before{
  filter:drop-shadow(0 14px 24px rgba(235,178,34,.26)) !important;
}

/* On phones keep the floating icon visually integrated with the site palette. */
@media (max-width:700px){
  .jupazz-wa-fab::before{
    filter:drop-shadow(0 12px 22px rgba(235,178,34,.28)) !important;
  }
}

/* ===== JUPAZZ STUDIO 3.25 — fixed WhatsApp position + warm popup palette + cache bust ===== */
.jupazz-wa-widget{
  position:fixed!important;
  right:22px!important;
  bottom:22px!important;
  top:auto!important;
  left:auto!important;
  z-index:99999!important;
}
.jupazz-wa-fab{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
}
.jupazz-wa-panel{
  border-color:#e7e4db!important;
  background:rgba(252,251,247,.99)!important;
  color:#443610!important;
  box-shadow:0 28px 80px rgba(73,57,17,.18)!important;
}
.jupazz-wa-close{
  color:#edb935!important;
}
.jupazz-wa-kicker{
  color:#dcaa2a!important;
}
.jupazz-wa-panel strong,
.jupazz-wa-panel p::before{
  color:#574414!important;
}
.jupazz-wa-panel p{
  color:#c99a21!important;
}
.jupazz-wa-panel p::after{
  color:#efc049!important;
}
.jupazz-wa-panel-btn{
  border:1px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(90deg,#c0921f 0%,#edb934 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 28px rgba(81,63,19,.18)!important;
}
.jupazz-wa-panel small{
  color:#928a75!important;
}
.jupazz-wa-fab::before{
  filter:drop-shadow(0 14px 24px rgba(81,63,19,.20))!important;
}
@media (max-width:700px){
  .jupazz-wa-widget{
    right:16px!important;
    bottom:16px!important;
    top:auto!important;
    left:auto!important;
  }
  .jupazz-wa-fab::before{
    filter:drop-shadow(0 12px 22px rgba(81,63,19,.22))!important;
  }
}

/* ===== JUPAZZ STUDIO 3.26 — desktop header refinement ===== */
/* Mobile resta invariato. Su desktop il menu diventa più elegante, leggibile e con logo meno invadente. */
@media (min-width:981px){
  .site-header{
    background:linear-gradient(180deg,rgba(249,247,242,.96) 0%,rgba(245,242,235,.94) 100%) !important;
    border-bottom:1px solid rgba(192,146,31,.12) !important;
    box-shadow:0 12px 30px rgba(73,57,17,.10) !important;
    backdrop-filter:blur(14px) saturate(115%) !important;
  }

  .site-header::after{
    content:"";
    position:absolute;
    left:0; right:0; bottom:0;
    height:1px;
    background:linear-gradient(90deg,rgba(255,255,255,0),rgba(195,149,32,.18),rgba(255,255,255,0));
    pointer-events:none;
  }

  .site-header .container{
    width:min(1440px,calc(100% - 44px)) !important;
    max-width:none !important;
  }

  .site-header .header-inner{
    min-height:74px !important;
    height:74px !important;
    padding:6px 0 !important;
    gap:28px !important;
    align-items:center !important;
  }

  .brand-v114{
    display:flex !important;
    align-items:center !important;
    flex:0 0 auto !important;
    margin-right:8px !important;
  }

  .brand-full-v114{
    width:132px !important;
    height:auto !important;
    max-width:132px !important;
    object-fit:contain !important;
    object-position:left center !important;
    filter:drop-shadow(0 1px 0 rgba(255,255,255,.35));
  }

  .site-header .main-nav,
  .site-header .main-nav li,
  .site-header .main-nav a:not(.btn),
  .menu-toggle{
    color:#5a4615 !important;
  }

  .main-nav{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:clamp(16px,1.4vw,26px) !important;
    font-size:13px !important;
    font-weight:720 !important;
    letter-spacing:.01em !important;
  }

  .main-nav > ul{
    display:flex !important;
    align-items:center !important;
    gap:clamp(14px,1.25vw,24px) !important;
  }

  .site-header .main-nav a:not(.btn){
    position:relative;
    padding:10px 0 !important;
    color:#5a4615 !important;
    opacity:.92;
    transition:color .22s ease, opacity .22s ease, transform .22s ease;
  }

  .site-header .main-nav a:not(.btn):hover,
  .site-header .main-nav .current-menu-item > a,
  .site-header .main-nav .current_page_item > a{
    color:#bf911f !important;
    opacity:1;
  }

  .site-header .main-nav a:not(.btn)::after{
    background:linear-gradient(90deg,#f1c65b,#c39520) !important;
    height:2px !important;
    border-radius:999px !important;
    bottom:4px !important;
  }

  .site-header .main-nav .header-project-cta,
  .site-header .main-nav a.header-project-cta{
    min-height:40px !important;
    padding:0 16px !important;
    border:1px solid rgba(190,145,31,.18) !important;
    border-radius:999px !important;
    background:linear-gradient(180deg,#fefdfb 0%,#f5f1e9 100%) !important;
    color:#735a1b !important;
    box-shadow:0 10px 22px rgba(76,59,18,.08) !important;
    font-size:11.75px !important;
    font-weight:760 !important;
    letter-spacing:.012em !important;
  }

  .site-header .main-nav .header-project-cta:hover,
  .site-header .main-nav a.header-project-cta:hover{
    background:linear-gradient(180deg,#c0921f 0%,#edb935 100%) !important;
    border-color:#c0921f !important;
    color:#fcfaf5 !important;
    box-shadow:0 14px 26px rgba(76,59,18,.14) !important;
    transform:translateY(-1px) !important;
  }
}

/* ===== JUPAZZ STUDIO 3.27 — desktop header final tuning + WhatsApp FAB position ===== */
/* Desktop only: logo slightly smaller and shifted left, header strip clearly cream instead of bordeaux. */
@media (min-width:981px){
  html body .site-header{
    background:linear-gradient(180deg,rgba(250,248,243,.98) 0%,rgba(244,240,232,.97) 100%) !important;
    border-bottom:1px solid rgba(192,147,31,.10) !important;
    box-shadow:0 10px 28px rgba(82,64,19,.08) !important;
    backdrop-filter:blur(14px) saturate(115%) !important;
  }

  html body .site-header::before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:100%;
    background:linear-gradient(90deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 18%,rgba(255,255,255,0) 82%,rgba(255,255,255,.14) 100%);
    pointer-events:none;
  }

  html body .site-header .container{
    width:min(1460px,calc(100% - 36px)) !important;
    max-width:none !important;
  }

  html body .site-header .header-inner{
    min-height:76px !important;
    height:76px !important;
    padding:4px 0 !important;
    gap:30px !important;
    position:relative;
    z-index:1;
  }

  html body .site-header .brand-v114{
    margin-left:-4px !important;
    margin-right:10px !important;
  }

  html body .site-header .brand-full-v114{
    width:120px !important;
    max-width:120px !important;
    height:auto !important;
    object-fit:contain !important;
    object-position:left center !important;
  }

  html body .main-nav{
    gap:clamp(18px,1.45vw,28px) !important;
  }

  html body .main-nav > ul{
    gap:clamp(16px,1.3vw,24px) !important;
  }

  html body .site-header .main-nav a:not(.btn){
    padding:10px 0 !important;
    color:#5d4916 !important;
  }

  html body .site-header .main-nav .header-project-cta,
  html body .site-header .main-nav a.header-project-cta{
    min-height:41px !important;
    padding:0 17px !important;
    background:linear-gradient(180deg,#fefdfb 0%,#f4f1e8 100%) !important;
    color:#bf921f !important;
    border-color:rgba(191,146,31,.18) !important;
    box-shadow:0 10px 22px rgba(79,62,19,.08) !important;
  }
}

/* Floating WhatsApp: slightly larger and a touch lower on desktop/tablet, while mobile stays as already approved. */
@media (min-width:701px){
  .jupazz-wa-widget{
    right:20px !important;
    bottom:14px !important;
    top:auto !important;
  }

  .jupazz-wa-fab{
    width:72px !important;
    height:72px !important;
  }

  .jupazz-wa-fab::before{
    width:72px !important;
    height:72px !important;
  }
}

/* ===== JUPAZZ STUDIO 3.28 — premium bordeaux desktop header ===== */
/* Desktop only. Mobile resta esattamente come nella versione approvata. */
@media (min-width:981px){
  html body .site-header{
    background:linear-gradient(90deg,#634d15 0%,#c1931f 48%,#644e16 100%) !important;
    border-bottom:1px solid rgba(251,248,240,.16) !important;
    box-shadow:0 12px 32px rgba(58,46,14,.20) !important;
    backdrop-filter:blur(14px) saturate(115%) !important;
  }

  /* sottile luce interna: rende la striscia meno piatta senza schiarirla */
  html body .site-header::before{
    content:"";
    position:absolute;
    inset:0;
    background:
      linear-gradient(180deg,rgba(255,255,255,.075) 0%,rgba(255,255,255,0) 38%),
      linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,255,255,0) 24%,rgba(255,255,255,0) 76%,rgba(255,255,255,.025));
    pointer-events:none;
  }

  html body .site-header::after{
    content:"";
    position:absolute;
    left:0; right:0; bottom:0;
    height:1px;
    background:linear-gradient(90deg,rgba(247,242,228,0),rgba(247,242,228,.28),rgba(247,242,228,0));
    pointer-events:none;
  }

  html body .site-header .header-inner{
    min-height:76px !important;
    height:76px !important;
    padding:4px 0 !important;
    position:relative;
    z-index:1;
  }

  /* logo un po' più respirato dentro la barra */
  html body .site-header .brand-full-v114{
    width:118px !important;
    max-width:118px !important;
    height:auto !important;
    filter:drop-shadow(0 2px 4px rgba(37,29,9,.18)) !important;
  }

  html body .site-header .main-nav,
  html body .site-header .main-nav li,
  html body .site-header .main-nav a:not(.btn){
    color:#fbf9f2 !important;
  }

  html body .site-header .main-nav a:not(.btn){
    opacity:.92 !important;
    text-shadow:0 1px 1px rgba(32,25,7,.18);
  }

  html body .site-header .main-nav a:not(.btn):hover,
  html body .site-header .main-nav .current-menu-item > a,
  html body .site-header .main-nav .current_page_item > a{
    color:#ffffff !important;
    opacity:1 !important;
  }

  html body .site-header .main-nav a:not(.btn)::after{
    background:linear-gradient(90deg,#f1c860,#f9f5eb) !important;
    height:2px !important;
    box-shadow:0 1px 4px rgba(243,235,213,.18);
  }

  /* CTA chiara, come avevi richiesto nelle versioni precedenti */
  html body .site-header .main-nav .header-project-cta,
  html body .site-header .main-nav a.header-project-cta{
    min-height:40px !important;
    padding:0 17px !important;
    background:linear-gradient(180deg,#fdfbf7 0%,#f0ebdf 100%) !important;
    color:#6f571a !important;
    border:1px solid rgba(255,255,255,.62) !important;
    box-shadow:0 9px 20px rgba(35,27,9,.16),inset 0 1px 0 rgba(255,255,255,.78) !important;
  }

  html body .site-header .main-nav .header-project-cta:hover,
  html body .site-header .main-nav a.header-project-cta:hover{
    background:#ffffff !important;
    color:#614c16 !important;
    border-color:#ffffff !important;
    box-shadow:0 12px 24px rgba(35,27,9,.22) !important;
    transform:translateY(-1px) !important;
  }
}

/* ===== JUPAZZ STUDIO 3.29 — footer premium + iOS bottom strip fix ===== */
/* Il colore di fondo resta quello scuro approvato; il root usa lo stesso tono
   per evitare il lampo/striscia bianca durante l'overscroll di Safari iOS. */
html{
  background:#1e1809 !important;
  min-height:100%;
}
body{
  min-height:100dvh;
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}

.site-footer{
  position:relative;
  isolation:isolate;
  margin:0 !important;
  padding:46px 0 calc(28px + env(safe-area-inset-bottom)) !important;
  background:
    radial-gradient(circle at 12% 0%,rgba(214,163,35,.12),transparent 34%),
    linear-gradient(180deg,#30260b 0%,#1e1809 100%) !important;
  color:#f2eee5 !important;
  overflow:hidden;
}
.site-footer::before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border:1px solid rgba(222,208,174,.07);
  border-radius:50%;
  left:-285px;
  top:-250px;
  pointer-events:none;
  z-index:-1;
}

.footer-shell{
  position:relative;
}
.footer-main{
  display:grid;
  grid-template-columns:minmax(250px,1fr) auto;
  align-items:center;
  gap:56px;
}
.footer-brand-block{
  display:grid;
  justify-items:start;
  gap:12px;
}
.footer-brand-lockup{
  display:inline-flex;
  align-items:center;
  text-decoration:none;
  line-height:0;
}
.footer-brand-logo{
  display:block;
  width:188px;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10));
}
.footer-tagline{
  margin:0;
  max-width:430px;
  color:rgba(242,238,229,.72) !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:16px;
  line-height:1.5;
  font-style:italic;
  letter-spacing:.005em;
}

.footer-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:12px 26px;
}
.site-footer .footer-nav a{
  position:relative;
  padding:8px 0;
  color:#f1ece1 !important;
  text-decoration:none;
  font-size:13px;
  font-weight:650;
  letter-spacing:.015em;
  transition:color .2s ease,transform .2s ease;
}
.site-footer .footer-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:3px;
  height:1px;
  background:linear-gradient(90deg,#f0c558,#ede3cb);
  transition:right .22s ease;
}
.site-footer .footer-nav a:hover{
  color:#fff !important;
  transform:translateY(-1px);
}
.site-footer .footer-nav a:hover::after{
  right:0;
}

.footer-divider{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:14px;
  margin:32px 0 20px;
  color:#f0c455;
  font-size:10px;
}
.footer-divider span{
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.03),rgba(255,255,255,.12));
}
.footer-divider span:last-child{
  background:linear-gradient(90deg,rgba(255,255,255,.12),rgba(255,255,255,.03));
}
.footer-divider i{
  font-style:normal;
  opacity:.85;
}

.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.footer-copyright{
  color:rgba(242,238,229,.52);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.footer-legal{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  color:rgba(242,238,229,.64) !important;
}
.footer-legal .jp-legal-links{
  display:flex;
  justify-content:flex-end !important;
  align-items:center;
  flex-wrap:wrap;
  gap:9px 20px;
  margin:0 !important;
  padding:0 !important;
}
.site-footer .footer-legal a{
  color:rgba(242,238,229,.76) !important;
  font-size:11.5px;
  text-underline-offset:4px;
  text-decoration-color:rgba(242,238,229,.28);
  transition:color .2s ease,text-decoration-color .2s ease;
}
.site-footer .footer-legal a:hover{
  color:#fff !important;
  text-decoration-color:#f1c75d;
}

@media(max-width:980px){
  .site-footer{
    padding-top:40px !important;
  }
  .footer-main{
    grid-template-columns:1fr;
    gap:28px;
  }
  .footer-brand-block{
    justify-items:center;
    text-align:center;
  }
  .footer-brand-logo{
    width:170px;
  }
  .footer-tagline{
    font-size:15px;
  }
  .footer-nav{
    justify-content:center;
  }
  .footer-bottom{
    flex-direction:column;
    justify-content:center;
    gap:14px;
    text-align:center;
  }
  .footer-legal .jp-legal-links{
    justify-content:center !important;
  }
}

@media(max-width:700px){
  .site-footer{
    padding:38px 0 calc(92px + env(safe-area-inset-bottom)) !important;
  }
  .site-footer::before{
    width:300px;
    height:300px;
    left:-210px;
    top:-185px;
  }
  .footer-brand-logo{
    width:160px;
  }
  .footer-tagline{
    max-width:330px;
    font-size:14.5px;
  }
  .footer-nav{
    gap:7px 20px;
  }
  .site-footer .footer-nav a{
    font-size:13px;
    padding:7px 0;
  }
  .footer-divider{
    margin:25px 0 17px;
  }
  .footer-copyright{
    font-size:10px;
  }
  .footer-legal .jp-legal-links{
    gap:8px 16px;
  }
  .site-footer .footer-legal a{
    font-size:11px;
  }
}

@media(max-width:390px){
  .footer-nav{
    gap:5px 16px;
  }
  .footer-brand-logo{
    width:150px;
  }
}

/* ===== JUPAZZ STUDIO 3.31 — portfolio case study desktop mockups ===== */
.portfolio-page-v331 .portfolio-intro{
  padding-bottom:58px;
}
.portfolio-cases{
  padding:8px 0 116px;
}
.portfolio-case-stack{
  display:grid;
  gap:42px;
}
.portfolio-case{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:56px;
  align-items:center;
  padding:54px 54px 58px;
  overflow:hidden;
  border:1px solid #e7e2d5;
  border-radius:34px;
  background:
    radial-gradient(circle at 7% 8%,rgba(200,152,33,.055),transparent 20%),
    radial-gradient(circle at 94% 92%,rgba(240,197,86,.08),transparent 24%),
    linear-gradient(145deg,#fdfcf8 0%,#f9f7f0 52%,#f6f2e9 100%);
  box-shadow:0 24px 68px rgba(76,60,18,.07);
}
.portfolio-case::before{
  content:"";
  position:absolute;
  width:340px;
  height:340px;
  border-radius:50%;
  left:-210px;
  bottom:-245px;
  border:1px solid rgba(200,152,33,.08);
  box-shadow:0 0 0 48px rgba(200,152,33,.022),0 0 0 96px rgba(200,152,33,.012);
  pointer-events:none;
}
.portfolio-case-reverse .portfolio-case-visual{
  order:2;
}
.portfolio-case-reverse .portfolio-case-copy{
  order:1;
}
.portfolio-case-visual{
  min-width:0;
  padding:14px 0 28px;
}

/* computer: CSS, così lo screenshot rimane nitido e non è inglobato in un poster */
.case-desktop{
  position:relative;
  width:min(100%,760px);
  margin-inline:auto;
  padding-bottom:96px;
  filter:drop-shadow(0 29px 25px rgba(57,45,13,.13));
}
.case-screen{
  position:relative;
  overflow:hidden;
  aspect-ratio:1.975 / 1;
  padding:12px 12px 10px;
  border-radius:22px 22px 5px 5px;
  background:linear-gradient(155deg,#1b1608,#070502 70%);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.08),
    0 18px 44px rgba(54,42,13,.16);
  z-index:3;
}
.case-screen::before{
  content:"";
  position:absolute;
  z-index:5;
  width:4px;
  height:4px;
  top:5px;
  left:50%;
  transform:translateX(-50%);
  border-radius:50%;
  background:#514013;
  box-shadow:0 0 0 1px rgba(255,255,255,.05);
}
.case-screen img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  border-radius:11px 11px 2px 2px;
  background:#f6f2e9;
}
.case-desktop-chin{
  position:relative;
  z-index:2;
  height:58px;
  margin:0 3px;
  border-radius:0 0 22px 22px;
  background:linear-gradient(180deg,#f2f1ef 0%,#dad7cf 72%,#ccc8be 100%);
  border:1px solid rgba(116,91,27,.10);
  border-top:0;
}
.case-desktop-chin span{
  position:absolute;
  left:50%;
  top:17px;
  width:20px;
  height:20px;
  transform:translateX(-50%);
  border-radius:50% 50% 46% 46%;
  border:1px solid rgba(196,150,32,.20);
  opacity:.65;
}
.case-desktop-neck{
  position:absolute;
  z-index:1;
  left:50%;
  bottom:27px;
  width:112px;
  height:86px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,#ccc8be 0%,#ebeae6 47%,#c0bbae 100%);
  clip-path:polygon(25% 0,75% 0,92% 100%,8% 100%);
}
.case-desktop-base{
  position:absolute;
  z-index:1;
  left:50%;
  bottom:17px;
  width:230px;
  height:18px;
  transform:translateX(-50%);
  border-radius:50% 50% 38% 38%;
  background:linear-gradient(180deg,#e8e6e1,#c1bcaf);
  box-shadow:0 8px 10px rgba(73,57,17,.10);
}

.portfolio-case-copy{
  position:relative;
  z-index:2;
  min-width:0;
}
.case-topline{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:16px;
}
.case-number{
  font-family:Georgia,"Times New Roman",serif;
  font-size:19px;
  color:#c89821;
}
.case-status{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border:1px solid #dfd8c6;
  border-radius:999px;
  background:#fdfbf6;
  color:#c99921;
  font-size:10px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.portfolio-case-real .case-status{
  background:#c89821;
  border-color:#c89821;
  color:#fff;
}
.portfolio-case h2{
  margin:0 0 16px;
  color:#4c3b12;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(38px,4.1vw,58px);
  font-weight:400;
  line-height:.98;
  letter-spacing:-.025em;
}
.case-lead{
  margin:0 0 26px;
  max-width:34em;
  color:#c1931f;
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.55;
}
.case-points{
  display:grid;
  gap:10px;
  list-style:none;
  margin:0;
  padding:0;
}
.case-points li{
  position:relative;
  display:grid;
  grid-template-columns:112px 1fr;
  gap:14px;
  padding:14px 15px 14px 18px;
  border:1px solid #e7e2d5;
  border-radius:17px;
  background:rgba(255,255,255,.64);
  box-shadow:0 8px 18px rgba(86,68,20,.025);
}
.case-points li::before{
  content:"";
  position:absolute;
  left:0;
  top:16px;
  bottom:16px;
  width:3px;
  border-radius:999px;
  background:#eebb39;
}
.case-points strong{
  color:#6f571a;
  font-size:11px;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.case-points span{
  color:#c29420;
  font-size:13px;
  line-height:1.5;
}
.case-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:19px;
}
.case-tags span{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:0 11px;
  border-radius:999px;
  background:#f0ebdf;
  color:#745b1b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.portfolio-transparency-note{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:30px;
  align-items:start;
  padding:30px 34px;
  border:1px solid #e7e2d5;
  border-radius:24px;
  background:#fdfcf8;
}
.portfolio-transparency-note p{
  margin:0;
  color:#c29420;
  font-size:15px;
  line-height:1.65;
}
.portfolio-transparency-note strong{
  color:#654f18;
}

@media(max-width:1040px){
  .portfolio-case{
    grid-template-columns:1fr;
    gap:20px;
    padding:42px 38px 48px;
  }
  .portfolio-case-reverse .portfolio-case-visual,
  .portfolio-case-reverse .portfolio-case-copy{
    order:initial;
  }
  .portfolio-case-visual{
    padding-bottom:10px;
  }
  .case-desktop{
    width:min(100%,820px);
  }
}
@media(max-width:680px){
  .portfolio-cases{padding-bottom:80px;}
  .portfolio-case-stack{gap:24px;}
  .portfolio-case{
    padding:27px 18px 32px;
    border-radius:26px;
  }
  .case-desktop{
    padding-bottom:65px;
  }
  .case-screen{
    padding:7px 7px 6px;
    border-radius:14px 14px 3px 3px;
  }
  .case-screen::before{top:3px;width:3px;height:3px;}
  .case-screen img{border-radius:7px 7px 1px 1px;}
  .case-desktop-chin{
    height:40px;
    border-radius:0 0 14px 14px;
  }
  .case-desktop-chin span{
    top:11px;
    width:14px;
    height:14px;
  }
  .case-desktop-neck{
    bottom:18px;
    width:76px;
    height:57px;
  }
  .case-desktop-base{
    bottom:11px;
    width:154px;
    height:13px;
  }
  .case-lead{
    font-size:16px;
    margin-bottom:20px;
  }
  .portfolio-case h2{
    font-size:39px;
  }
  .case-points li{
    grid-template-columns:1fr;
    gap:5px;
    padding:13px 14px 13px 17px;
  }
  .portfolio-transparency-note{
    grid-template-columns:1fr;
    gap:12px;
    padding:24px 22px;
  }
}


/* ===== JUPAZZ STUDIO 3.32 — new phoenix mark + round favicon ===== */
/* The new identity uses the standalone phoenix mark supplied by the brand.
   It is rendered white on the bordeaux header and on the dark footer. */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  line-height:0 !important;
}
.brand-full-v114{
  display:block !important;
  width:56px !important;
  height:56px !important;
  max-width:56px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  width:84px !important;
  height:84px !important;
  max-width:84px !important;
  object-fit:contain !important;
  object-position:center !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:0 !important;
    margin-right:16px !important;
  }
  html body .site-header .brand-full-v114{
    width:58px !important;
    height:58px !important;
    max-width:58px !important;
    object-fit:contain !important;
    object-position:center !important;
    filter:drop-shadow(0 3px 8px rgba(35,27,8,.20)) !important;
  }
}
@media(max-width:980px){
  .brand-full-v114{
    width:52px !important;
    height:52px !important;
    max-width:52px !important;
  }
  .footer-brand-logo{
    width:78px !important;
    height:78px !important;
    max-width:78px !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    width:46px !important;
    height:46px !important;
    max-width:46px !important;
  }
  .footer-brand-logo{
    width:72px !important;
    height:72px !important;
    max-width:72px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.34 — full logo lockup in header/footer ===== */
/* Full phoenix + Jupazz Studio wordmark, supplied by the brand, rendered in white. */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  line-height:0 !important;
}
.brand-full-v114{
  display:block !important;
  width:218px !important;
  height:auto !important;
  max-width:218px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  width:230px !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:left center !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:0 !important;
    margin-right:18px !important;
  }
  html body .site-header .brand-full-v114{
    width:218px !important;
    height:auto !important;
    max-width:218px !important;
    object-fit:contain !important;
    object-position:left center !important;
  }
}
@media(max-width:980px){
  .brand-full-v114{
    width:188px !important;
    height:auto !important;
    max-width:188px !important;
  }
  .footer-brand-logo{
    width:215px !important;
    height:auto !important;
    max-width:100% !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    width:164px !important;
    height:auto !important;
    max-width:164px !important;
  }
  .footer-brand-logo{
    width:200px !important;
    height:auto !important;
    max-width:100% !important;
  }
}
@media(max-width:390px){
  .brand-full-v114{
    width:150px !important;
    max-width:150px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.35 — phoenix mark refinement ===== */
/* Header/footer lockup now uses the latest supplied phoenix mark, converted to pure white while preserving the existing Jupazz Studio wordmark. */

/* ===== JUPAZZ STUDIO 3.36 — cropped white lockup + slightly smaller sizing ===== */
/* Uses the newly supplied, tighter phoenix + Jupazz Studio composition. */
.brand-full-v114{
  width:205px !important;
  max-width:205px !important;
}
.footer-brand-logo{
  width:218px !important;
  max-width:100% !important;
}
@media(min-width:981px){
  html body .site-header .brand-full-v114{
    width:205px !important;
    max-width:205px !important;
  }
}
@media(max-width:980px){
  .brand-full-v114{
    width:178px !important;
    max-width:178px !important;
  }
  .footer-brand-logo{width:205px !important;}
}
@media(max-width:700px){
  .brand-full-v114{
    width:156px !important;
    max-width:156px !important;
  }
  .footer-brand-logo{width:190px !important;}
}
@media(max-width:390px){
  .brand-full-v114{
    width:144px !important;
    max-width:144px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.37 — exact supplied transparent lockup ===== */
/* Uses the exact uploaded phoenix + Jupazz Studio composition. Only fully transparent outer margins are removed; visible pixels become pure white. */
.brand-full-v114{
  width:188px !important;
  max-width:188px !important;
}
.footer-brand-logo{
  width:205px !important;
  max-width:100% !important;
}
@media(min-width:981px){
  html body .site-header .brand-full-v114{
    width:188px !important;
    max-width:188px !important;
  }
}
@media(max-width:980px){
  .brand-full-v114{
    width:166px !important;
    max-width:166px !important;
  }
  .footer-brand-logo{width:194px !important;}
}
@media(max-width:700px){
  .brand-full-v114{
    width:148px !important;
    max-width:148px !important;
  }
  .footer-brand-logo{width:182px !important;}
}
@media(max-width:390px){
  .brand-full-v114{
    width:138px !important;
    max-width:138px !important;
  }
}

/* ===== JUPAZZ STUDIO 3.38 — supplied smaller transparent lockup ===== */
/* Exact user-supplied transparent canvas, converted to pure white without cropping.
   The extra transparent breathing room intentionally makes the visible lockup smaller
   in the header and footer while preserving the established responsive image box. */


/* ===== JUPAZZ STUDIO 3.39 — slightly fuller supplied transparent lockup ===== */
/* Same established image box as 3.38; the newly supplied transparent artwork occupies
   slightly more of its canvas, so the visible logo is a touch larger without changing
   header/footer spacing or responsive dimensions. */

/* ===== JUPAZZ STUDIO 3.42 — integrazione Jupazz Privacy =====
   Il consenso, il banner e le policy sono gestiti esclusivamente dal plugin
   Jupazz Privacy. Il tema definisce soltanto l'integrazione visiva nel footer. */
.footer-legal .jp-legal-links{
  display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:9px 20px;
  color:inherit;font-size:inherit
}
.footer-legal .jp-legal-links a,
.footer-legal .jp-manage-cookies{
  color:rgba(242,238,229,.76);
  text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(242,238,229,.28)
}
.footer-legal .jp-manage-cookies{appearance:none;border:0;background:transparent;padding:0;font:inherit;cursor:pointer}
.footer-legal .jp-legal-links a:hover,
.footer-legal .jp-manage-cookies:hover{color:#fff;text-decoration-color:#f1c75d}
@media(max-width:900px){.footer-legal .jp-legal-links{justify-content:center}}

/* ===== JUPAZZ STUDIO 3.43 — nuovo lockup JS/fenice =====
   Header e footer usano il nuovo logo fornito: fenice-monogramma JS + wordmark Jupazz Studio.
   Il disegno resta invariato; i pixel visibili sono normalizzati in bianco puro mantenendo l'alpha originale. */


/* ===== JUPAZZ STUDIO 3.44 — solo monogramma fenice-S =====
   Header e footer usano solo il simbolo, senza wordmark.
   Il logo è centrato nel suo canvas per avere uguale respiro sopra e sotto. */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  line-height:0 !important;
}
.brand-full-v114{
  display:block !important;
  width:60px !important;
  height:60px !important;
  max-width:60px !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  display:block !important;
  width:86px !important;
  height:86px !important;
  max-width:86px !important;
  object-fit:contain !important;
  object-position:center center !important;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10)) !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:0 !important;
    margin-right:16px !important;
  }
  html body .site-header .brand-full-v114{
    width:60px !important;
    height:60px !important;
    max-width:60px !important;
  }
}
@media(max-width:980px){
  .brand-full-v114{
    width:54px !important;
    height:54px !important;
    max-width:54px !important;
  }
  .footer-brand-logo{
    width:80px !important;
    height:80px !important;
    max-width:80px !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    width:48px !important;
    height:48px !important;
    max-width:48px !important;
  }
  .footer-brand-logo{
    width:72px !important;
    height:72px !important;
    max-width:72px !important;
  }
}
@media(max-width:390px){
  .brand-full-v114{
    width:44px !important;
    height:44px !important;
    max-width:44px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.45 — solo emblema fenice, più grande e con file nuovo ===== */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  line-height:0 !important;
}
.brand-full-v114{
  display:block !important;
  width:64px !important;
  height:64px !important;
  max-width:64px !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  display:block !important;
  width:104px !important;
  height:104px !important;
  max-width:104px !important;
  object-fit:contain !important;
  object-position:center center !important;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10)) !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:0 !important;
    margin-right:16px !important;
  }
  html body .site-header .brand-full-v114{
    width:68px !important;
    height:68px !important;
    max-width:68px !important;
  }
}
@media(max-width:980px){
  .brand-full-v114{
    width:60px !important;
    height:60px !important;
    max-width:60px !important;
  }
  .footer-brand-logo{
    width:92px !important;
    height:92px !important;
    max-width:92px !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    width:56px !important;
    height:56px !important;
    max-width:56px !important;
  }
  .footer-brand-logo{
    width:84px !important;
    height:84px !important;
    max-width:84px !important;
  }
}
@media(max-width:390px){
  .brand-full-v114{
    width:52px !important;
    height:52px !important;
    max-width:52px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.46 — logo completo sottile in header e footer ===== */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  line-height:0 !important;
}
.brand-full-v114{
  display:block !important;
  width:auto !important;
  height:42px !important;
  max-height:42px !important;
  max-width:145px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  display:block !important;
  width:auto !important;
  height:68px !important;
  max-height:68px !important;
  max-width:240px !important;
  object-fit:contain !important;
  object-position:left center !important;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10)) !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:0 !important;
    margin-right:18px !important;
  }
  html body .site-header .brand-full-v114{
    height:48px !important;
    max-height:48px !important;
    max-width:172px !important;
  }
  html body .site-footer .footer-brand-logo{
    height:74px !important;
    max-height:74px !important;
    max-width:260px !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    height:38px !important;
    max-height:38px !important;
    max-width:132px !important;
  }
  .footer-brand-logo{
    height:60px !important;
    max-height:60px !important;
    max-width:210px !important;
  }
}
@media(max-width:390px){
  .brand-full-v114{
    height:34px !important;
    max-height:34px !important;
    max-width:118px !important;
  }
  .footer-brand-logo{
    height:56px !important;
    max-height:56px !important;
    max-width:190px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.47 — logo completo leggermente più grande e scritta meno leggera ===== */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  line-height:0 !important;
}
.brand-full-v114{
  display:block !important;
  width:auto !important;
  height:46px !important;
  max-height:46px !important;
  max-width:162px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  display:block !important;
  width:auto !important;
  height:76px !important;
  max-height:76px !important;
  max-width:270px !important;
  object-fit:contain !important;
  object-position:left center !important;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10)) !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:0 !important;
    margin-right:18px !important;
  }
  html body .site-header .brand-full-v114{
    height:54px !important;
    max-height:54px !important;
    max-width:188px !important;
  }
  html body .site-footer .footer-brand-logo{
    height:82px !important;
    max-height:82px !important;
    max-width:290px !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    height:42px !important;
    max-height:42px !important;
    max-width:148px !important;
  }
  .footer-brand-logo{
    height:66px !important;
    max-height:66px !important;
    max-width:230px !important;
  }
}
@media(max-width:390px){
  .brand-full-v114{
    height:40px !important;
    max-height:40px !important;
    max-width:140px !important;
  }
  .footer-brand-logo{
    height:62px !important;
    max-height:62px !important;
    max-width:220px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.48 — logo più vicino al testo e appena più grande ===== */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  line-height:0 !important;
}
.brand-full-v114{
  display:block !important;
  width:auto !important;
  height:48px !important;
  max-height:48px !important;
  max-width:170px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  display:block !important;
  width:auto !important;
  height:78px !important;
  max-height:78px !important;
  max-width:276px !important;
  object-fit:contain !important;
  object-position:left center !important;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10)) !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:2px !important;
    margin-right:18px !important;
  }
  html body .site-header .brand-full-v114{
    height:56px !important;
    max-height:56px !important;
    max-width:198px !important;
  }
  html body .site-footer .footer-brand-logo{
    height:84px !important;
    max-height:84px !important;
    max-width:296px !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    height:44px !important;
    max-height:44px !important;
    max-width:158px !important;
  }
  .footer-brand-logo{
    height:68px !important;
    max-height:68px !important;
    max-width:236px !important;
  }
}
@media(max-width:390px){
  .brand-full-v114{
    height:42px !important;
    max-height:42px !important;
    max-width:150px !important;
  }
  .footer-brand-logo{
    height:64px !important;
    max-height:64px !important;
    max-width:224px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.49 — logo leggermente più a destra e più grande ===== */
.brand-v114{
  margin-left:8px !important;
}
.brand-full-v114{
  height:49px !important;
  max-height:49px !important;
  max-width:174px !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:6px !important;
    margin-right:18px !important;
  }
  html body .site-header .brand-full-v114{
    height:57px !important;
    max-height:57px !important;
    max-width:202px !important;
  }
}
@media(max-width:700px){
  .brand-v114{
    margin-left:10px !important;
  }
  .brand-full-v114{
    height:45px !important;
    max-height:45px !important;
    max-width:162px !important;
  }
}
@media(max-width:390px){
  .brand-v114{
    margin-left:10px !important;
  }
  .brand-full-v114{
    height:43px !important;
    max-height:43px !important;
    max-width:154px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.50 — solo fenice, leggermente più grande ===== */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  line-height:0 !important;
  margin-left:12px !important;
  margin-right:12px !important;
}
.brand-full-v114{
  display:block !important;
  width:auto !important;
  height:50px !important;
  max-height:50px !important;
  max-width:50px !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  display:block !important;
  width:auto !important;
  height:82px !important;
  max-height:82px !important;
  max-width:82px !important;
  object-fit:contain !important;
  object-position:center center !important;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10)) !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:10px !important;
    margin-right:16px !important;
  }
  html body .site-header .brand-full-v114{
    height:60px !important;
    max-height:60px !important;
    max-width:60px !important;
  }
  html body .site-footer .footer-brand-logo{
    height:88px !important;
    max-height:88px !important;
    max-width:88px !important;
  }
}
@media(max-width:700px){
  .brand-v114{
    margin-left:12px !important;
  }
  .brand-full-v114{
    height:52px !important;
    max-height:52px !important;
    max-width:52px !important;
  }
  .footer-brand-logo{
    height:78px !important;
    max-height:78px !important;
    max-width:78px !important;
  }
}
@media(max-width:390px){
  .brand-v114{
    margin-left:12px !important;
  }
  .brand-full-v114{
    height:50px !important;
    max-height:50px !important;
    max-width:50px !important;
  }
  .footer-brand-logo{
    height:74px !important;
    max-height:74px !important;
    max-width:74px !important;
  }
}


/* ===== JUPAZZ STUDIO 3.52 — logo ufficiale completo + favicon =====
   Ripristinato il lockup con emblema ufficiale e scritta Jupazz Studio.
   Il marchio viene centrato meglio verticalmente nella barra, spostato un po'
   più a sinistra e riutilizzato anche nel footer. */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 auto !important;
  line-height:0 !important;
  margin-left:6px !important;
  margin-right:12px !important;
}
.brand-full-v114{
  display:block !important;
  width:auto !important;
  height:52px !important;
  max-height:52px !important;
  max-width:176px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18)) !important;
}
.footer-brand-logo{
  display:block !important;
  width:auto !important;
  height:78px !important;
  max-height:78px !important;
  max-width:278px !important;
  object-fit:contain !important;
  object-position:left center !important;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10)) !important;
}
html body .site-header .header-inner{
  min-height:74px !important;
  height:74px !important;
  padding:0 !important;
  align-items:center !important;
}
@media(min-width:981px){
  html body .site-header .brand-v114{
    margin-left:2px !important;
    margin-right:16px !important;
  }
  html body .site-header .brand-full-v114{
    height:58px !important;
    max-height:58px !important;
    max-width:196px !important;
  }
  html body .site-footer .footer-brand-logo{
    height:84px !important;
    max-height:84px !important;
    max-width:300px !important;
  }
  html body .site-header .header-inner{
    min-height:78px !important;
    height:78px !important;
    padding:0 !important;
  }
}
@media(max-width:700px){
  .brand-v114{
    margin-left:4px !important;
    margin-right:10px !important;
  }
  .brand-full-v114{
    height:50px !important;
    max-height:50px !important;
    max-width:170px !important;
  }
  .footer-brand-logo{
    height:72px !important;
    max-height:72px !important;
    max-width:252px !important;
  }
  html body .site-header .header-inner{
    min-height:72px !important;
    height:72px !important;
  }
}
@media(max-width:390px){
  .brand-v114{
    margin-left:2px !important;
  }
  .brand-full-v114{
    height:48px !important;
    max-height:48px !important;
    max-width:162px !important;
  }
  .footer-brand-logo{
    height:68px !important;
    max-height:68px !important;
    max-width:236px !important;
  }
}

/* ===== JUPAZZ STUDIO 3.53 — logo più equilibrato =====
   Emblema un po' più protagonista e scritta ridimensionata,
   con dimensione complessiva leggermente più generosa in header. */
.brand-full-v114{
  height:56px !important;
  max-height:56px !important;
  max-width:200px !important;
}
.footer-brand-logo{
  height:80px !important;
  max-height:80px !important;
  max-width:288px !important;
}
html body .site-header .header-inner{
  min-height:76px !important;
  height:76px !important;
}
@media(min-width:981px){
  html body .site-header .brand-full-v114{
    height:60px !important;
    max-height:60px !important;
    max-width:216px !important;
  }
  html body .site-footer .footer-brand-logo{
    height:88px !important;
    max-height:88px !important;
    max-width:320px !important;
  }
  html body .site-header .header-inner{
    min-height:80px !important;
    height:80px !important;
  }
}
@media(max-width:700px){
  .brand-full-v114{
    height:56px !important;
    max-height:56px !important;
    max-width:200px !important;
  }
  .footer-brand-logo{
    height:76px !important;
    max-height:76px !important;
    max-width:272px !important;
  }
  html body .site-header .header-inner{
    min-height:74px !important;
    height:74px !important;
  }
}
@media(max-width:390px){
  .brand-full-v114{
    height:54px !important;
    max-height:54px !important;
    max-width:192px !important;
  }
  .footer-brand-logo{
    height:72px !important;
    max-height:72px !important;
    max-width:258px !important;
  }
  html body .site-header .header-inner{
    min-height:72px !important;
    height:72px !important;
  }
}

/* ===== JUPAZZ STUDIO 3.55 — header più sottile e centrato ===== */
html body .site-header .header-inner{
  min-height:68px !important;
  height:68px !important;
  padding:0 !important;
  align-items:center !important;
}
html body .site-header .brand-full-v114{
  width:auto !important;
  height:52px !important;
  max-height:52px !important;
  max-width:186px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
html body .site-header .menu-toggle{
  width:34px !important;
  height:34px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  line-height:1 !important;
}
html body .site-header .main-nav{top:68px !important;}

@media (min-width:981px){
  html body .site-header .header-inner{
    min-height:70px !important;
    height:70px !important;
  }
  html body .site-header .brand-full-v114{
    height:54px !important;
    max-height:54px !important;
    max-width:194px !important;
  }
}

@media (max-width:700px){
  html body .site-header .header-inner{
    min-height:66px !important;
    height:66px !important;
  }
  html body .site-header .brand-full-v114{
    height:50px !important;
    max-height:50px !important;
    max-width:180px !important;
  }
  html body .site-header .main-nav{top:66px !important;}
}

@media (max-width:390px){
  html body .site-header .header-inner{
    min-height:64px !important;
    height:64px !important;
  }
  html body .site-header .brand-full-v114{
    height:48px !important;
    max-height:48px !important;
    max-width:172px !important;
  }
  html body .site-header .main-nav{top:64px !important;}
}

/* ===== JUPAZZ STUDIO 3.57 — logo leggermente più a sinistra e un filo più grande ===== */
html body .site-header .brand-v114{
  margin-left:0 !important;
  margin-right:10px !important;
}
html body .site-header .brand-full-v114{
  width:auto !important;
  height:54px !important;
  max-height:54px !important;
  max-width:192px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
@media (min-width:981px){
  html body .site-header .brand-v114{
    margin-left:-2px !important;
    margin-right:10px !important;
  }
  html body .site-header .brand-full-v114{
    height:56px !important;
    max-height:56px !important;
    max-width:200px !important;
  }
}
@media (max-width:700px){
  html body .site-header .brand-v114{
    margin-left:-2px !important;
    margin-right:8px !important;
  }
  html body .site-header .brand-full-v114{
    height:52px !important;
    max-height:52px !important;
    max-width:186px !important;
  }
}
@media (max-width:390px){
  html body .site-header .brand-v114{
    margin-left:-3px !important;
    margin-right:8px !important;
  }
  html body .site-header .brand-full-v114{
    height:50px !important;
    max-height:50px !important;
    max-width:178px !important;
  }
}

/* ===== JUPAZZ STUDIO 3.59 — lockup calligrafico completo, wordmark più leggero ===== */
/*
 * Usiamo esattamente il PNG fornito. Due layer dello stesso asset permettono di
 * mantenere la fenice piena e rendere solo “Jupazz Studio” appena più leggero.
 * Il taglio cade nello spazio trasparente reale tra simbolo e wordmark.
 */
.brand-v114{
  display:inline-flex !important;
  align-items:center !important;
  line-height:0 !important;
}
.brand-lockup-v359{
  position:relative;
  display:block;
  flex:0 0 auto;
  width:158px;
  aspect-ratio:2172 / 724;
  line-height:0;
}
.brand-layer-v359{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none !important;
  object-fit:contain;
  object-position:left center;
  pointer-events:none;
  user-select:none;
}
/* Il lockup completo resta leggermente più arioso. */
.brand-layer-base-v359{opacity:.90;}
/* La fenice torna al bianco pieno; il wordmark resta al solo layer base. */
.brand-layer-mark-v359{
  opacity:1;
  clip-path:inset(0 71.9% 0 0);
}
/* Nasconde il vecchio img nel caso resti in cache/markup da una versione precedente. */
.brand-full-v114{display:none !important;}

@media(max-width:980px){
  .brand-lockup-v359{width:150px;}
}
@media(max-width:700px){
  .brand-lockup-v359{width:140px;}
}
@media(max-width:390px){
  .brand-lockup-v359{width:132px;}
}

/* Footer: stesso lockup, appena più ampio rispetto all'header. */
.site-footer .footer-brand-lockup-v359{
  width:214px;
}
.site-footer .footer-brand-lockup-v359 .brand-layer-base-v359{opacity:.90;}
@media(max-width:700px){
  .site-footer .footer-brand-lockup-v359{width:196px;}
}



/* ===== JUPAZZ STUDIO 3.60 — hamburger solo mobile/tablet ===== */
/*
 * La 3.55 forzava display:grid!important sul toggle dopo la regola desktop,
 * quindi su PC comparivano insieme hamburger e menu completo. Qui chiudiamo
 * definitivamente il comportamento: menu completo su desktop, hamburger solo
 * sotto i 981px.
 */
@media (min-width:981px){
  html body .site-header .menu-toggle{
    display:none !important;
  }
}
@media (max-width:980px){
  html body .site-header .menu-toggle{
    display:grid !important;
  }
}

/* ===== JUPAZZ STUDIO 3.63 — nuovo monogramma + wordmark più leggero ===== */
.brand-lockup-v363{
  display:inline-flex;
  align-items:center;
  gap:8px;
  height:54px;
  line-height:0;
  filter:drop-shadow(0 3px 8px rgba(35,27,8,.18));
}
.brand-lockup-v363 .brand-mark-v363,
.brand-lockup-v363 .brand-wordmark-v363{
  display:block;
  width:auto;
  max-width:none !important;
  object-fit:contain;
  pointer-events:none;
  user-select:none;
}
.brand-lockup-v363 .brand-mark-v363{
  height:52px;
  flex:0 0 auto;
}
.brand-lockup-v363 .brand-wordmark-v363{
  width:121px;
  height:auto;
  opacity:.84;
  flex:0 0 121px;
}
.site-footer .footer-brand-lockup-v363{
  gap:12px;
  height:82px;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.10));
}
.site-footer .footer-brand-lockup-v363 .brand-mark-v363{height:78px;}
.site-footer .footer-brand-lockup-v363 .brand-wordmark-v363{
  width:166px;
  flex-basis:166px;
  opacity:.84;
}
@media(max-width:980px){
  .brand-lockup-v363{height:50px;gap:7px;}
  .brand-lockup-v363 .brand-mark-v363{height:48px;}
  .brand-lockup-v363 .brand-wordmark-v363{width:112px;flex-basis:112px;}
}
@media(max-width:700px){
  .brand-lockup-v363{height:47px;gap:7px;}
  .brand-lockup-v363 .brand-mark-v363{height:45px;}
  .brand-lockup-v363 .brand-wordmark-v363{width:105px;flex-basis:105px;}
  .site-footer .footer-brand-lockup-v363{height:72px;gap:10px;}
  .site-footer .footer-brand-lockup-v363 .brand-mark-v363{height:68px;}
  .site-footer .footer-brand-lockup-v363 .brand-wordmark-v363{width:148px;flex-basis:148px;}
}
@media(max-width:390px){
  .brand-lockup-v363{height:44px;gap:6px;}
  .brand-lockup-v363 .brand-mark-v363{height:42px;}
  .brand-lockup-v363 .brand-wordmark-v363{width:98px;flex-basis:98px;}
}

/* ===== JUPAZZ STUDIO 3.64 — centratura logo mobile ===== */
@media(max-width:700px){
  html body .site-header .container{
    width:calc(100% - 28px) !important;
  }
  html body .site-header .brand-v114{
    margin-left:0 !important;
    margin-right:8px !important;
  }
  html body .site-header .brand-lockup-v363{
    transform:translateY(1px);
  }
}

/* ===== JUPAZZ STUDIO 3.65 — proporzioni logo mobile ===== */
@media(max-width:700px){
  html body .site-header .brand-mark-v363{
    height:47px;
    transform:translateY(-1px);
  }
  html body .site-header .brand-wordmark-v363{
    transform:translateY(2px);
  }
}
@media(max-width:390px){
  html body .site-header .brand-mark-v363{
    height:44px;
  }
}

/* ===== JUPAZZ STUDIO 3.67 — centratura ottica definitiva del logo mobile ===== */
@media(max-width:700px){
  html body .site-header .brand-v114{
    margin-left:4px !important;
  }
  html body .site-header .brand-lockup-v363{
    height:52px;
    transform:translateY(-2px);
  }
  html body .site-header .brand-mark-v363{
    height:52px;
    transform:none;
  }
  html body .site-header .brand-wordmark-v363{
    width:96px;
    flex-basis:96px;
    transform:none;
  }
}
@media(max-width:390px){
  html body .site-header .brand-lockup-v363{
    height:50px;
  }
  html body .site-header .brand-mark-v363{
    height:50px;
  }
  html body .site-header .brand-wordmark-v363{
    width:90px;
    flex-basis:90px;
  }
}

/* ===== JUPAZZ STUDIO 3.68 — abbassamento ottico del solo wordmark mobile ===== */
@media(max-width:700px){
  html body .site-header .brand-wordmark-v363{
    transform:translateY(3px);
  }
}

/* ===== JUPAZZ STUDIO 3.69 — proporzioni wordmark nel footer mobile ===== */
@media(max-width:700px){
  html body .site-footer .footer-brand-lockup-v363 .brand-wordmark-v363{
    width:126px;
    flex-basis:126px;
    transform:translateY(4px);
  }
}

/* ===== JUPAZZ STUDIO 4.0 — new commercial theme ===== */
.jp-new{background:#fbfaf7;color:var(--ink,#4a3a11)}
.jp-new h1,.jp-new h2,.jp-new h3{font-family:Georgia,serif;letter-spacing:-.025em}
.jp-new em{font-weight:400;color:#eeba38}
.jp-kicker{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#eebb39;margin-bottom:18px}.jp-kicker.light{color:#f2d984}
.jp-hero{padding:112px 0 96px;background:radial-gradient(circle at 78% 25%,#f7f5f0 0,transparent 32%),linear-gradient(180deg,#fff 0,#f8f6f2 100%)}
.jp-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:72px;align-items:center}.jp-hero h1{font-size:clamp(54px,6.5vw,92px);line-height:.94;margin:0 0 28px;max-width:900px}.jp-hero p{font-size:19px;line-height:1.65;color:#d8a523;max-width:760px}.jp-actions{display:flex;align-items:center;gap:24px;margin-top:34px;flex-wrap:wrap}.jp-text-btn{font-weight:800;color:#dca929;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}.jp-hero-card{background:#4a3a11;color:#fff;padding:42px;border-radius:32px;box-shadow:0 28px 70px rgba(74,58,17,.18)}.jp-hero-card>span{font-size:10px;letter-spacing:.16em;color:#f2d984;font-weight:800}.jp-hero-card strong{font-family:Georgia,serif;font-size:30px;line-height:1.12;display:block;margin:18px 0}.jp-hero-card p{font-size:14px;color:#e2dfd8}.jp-mini-flow{display:flex;gap:10px;align-items:center;margin-top:28px;font-size:11px}.jp-mini-flow b{background:rgba(255,255,255,.09);padding:9px 11px;border-radius:20px}.jp-mini-flow i{color:#f2d984}
.jp-section{padding:100px 0}.jp-section-head{max-width:780px;margin-bottom:48px}.jp-section-head h2{font-size:clamp(42px,5vw,68px);line-height:1;margin:0 0 22px}.jp-section-head>p{font-size:17px;color:#dca826;line-height:1.65}.jp-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.jp-service-card{min-height:340px;padding:30px;border:1px solid #e8e6e2;background:#fff;border-radius:24px;display:flex;flex-direction:column;justify-content:space-between;transition:.2s ease}.jp-service-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(74,58,17,.08)}.jp-service-no{font-size:11px;font-weight:900;color:#a69f8d}.jp-price{float:right;background:#fff1a9;padding:7px 10px;border-radius:99px;font-size:12px;font-weight:900}.jp-service-card h2,.jp-service-card h3{font-size:31px;line-height:1.05;margin:52px 0 14px}.jp-service-card p{color:#dca928;line-height:1.55}.jp-service-card>a{font-weight:800;color:#edb833;text-decoration:none}
.jp-dark{background:#4a3a11;color:#fff;padding:92px 0}.jp-dark-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.jp-dark h2{font-size:clamp(42px,5vw,66px);line-height:1;margin:0}.jp-dark p{font-size:18px;line-height:1.7;color:#e1dfd9}.jp-dark .btn{margin-top:20px}.jp-case-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.jp-case-grid h2{font-size:34px;margin:28px 0 10px}.jp-case-grid p{font-size:17px;line-height:1.7;color:#dba724}.jp-stat{padding:42px;background:#fff;border:1px solid #e8e6e2;border-radius:28px;box-shadow:0 18px 48px rgba(74,58,17,.08)}.jp-stat small{display:block;font-size:10px;letter-spacing:.14em;font-weight:900;color:#968e7a}.jp-stat strong{font-family:Georgia,serif;font-size:64px;display:block;margin:10px 0 0}.jp-stat span{color:#dcaa2b}.jp-stat hr{border:0;border-top:1px solid #e9e8e4;margin:28px 0}.jp-stat b{font-size:17px;line-height:1.5}.jp-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.jp-pillars article{padding:30px;border-top:1px solid #e0ddd7}.jp-pillars b{font-size:11px;color:#99917d}.jp-pillars h3{font-size:26px;margin:18px 0 12px}.jp-pillars p{color:#dca928;line-height:1.6}.jp-pillars.light article{border-color:rgba(255,255,255,.2)}.jp-pillars.light p{color:#e1dfd9}.jp-final{padding:76px 0;background:#eebb3a;color:#fff;text-align:center}.jp-final h2{font-size:clamp(38px,5vw,62px);margin:0 0 15px}.jp-final p{font-size:17px;margin-bottom:28px}.jp-page-hero{padding:105px 0 85px;background:linear-gradient(180deg,#fff,#f5f3ef)}.jp-page-hero h1{font-size:clamp(50px,6vw,78px);line-height:.98;margin:0 0 24px}.jp-page-hero p{font-size:19px;line-height:1.65;color:#dba724;max-width:780px}.jp-method-list{max-width:980px}.jp-method-list article{display:grid;grid-template-columns:80px 1fr;gap:30px;padding:34px 0;border-bottom:1px solid #e4e2dc}.jp-method-list>article>span{font-weight:900;color:#98907a}.jp-method-list h2{font-size:34px;margin:0 0 8px}.jp-method-list p{margin:0;color:#dca826;line-height:1.6}.jp-brothers{display:grid;grid-template-columns:1fr 1fr;gap:20px}.jp-brothers article{padding:42px;background:#fff;border:1px solid #e7e5e1;border-radius:26px}.jp-brothers span,.jp-callout>span,.jp-includes>span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#98907a}.jp-brothers h2{font-size:34px;margin:20px 0}.jp-brothers p{line-height:1.7;color:#dba825}.jp-contact-grid,.jp-service-detail{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.jp-contact-grid h2,.jp-service-detail h2{font-size:40px;line-height:1.08}.jp-contact-grid p,.jp-service-detail p{color:#dca826;line-height:1.7}.jp-form-card,.jp-includes{background:#fff;border:1px solid #e6e4e0;border-radius:26px;padding:34px}.jp-form-card label{display:block;font-weight:700;font-size:13px;margin-bottom:18px}.jp-form-card input,.jp-form-card textarea,.jp-form-card select{width:100%;box-sizing:border-box;margin-top:7px;padding:13px 14px;border:1px solid #dfddd7;border-radius:10px;background:#fff;font:inherit}.jp-form-card .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.jp-form-card .privacy-check{display:flex;align-items:flex-start;gap:10px;font-weight:500}.jp-form-card .privacy-check input{width:auto;margin-top:3px}.jp-includes ul{list-style:none;padding:0;margin:20px 0 0}.jp-includes li{padding:13px 0;border-bottom:1px solid #f0eeeb}.jp-includes li:before{content:'✓';font-weight:900;color:#eebb39;margin-right:10px}.jp-callout{max-width:900px}.jp-callout h2{font-size:44px;line-height:1.1}.jp-callout a,.jp-coaching a{font-weight:800;color:#edb833}.jp-coaching{display:grid;grid-template-columns:1fr 1fr;gap:20px}.jp-coaching article{padding:40px;border:1px solid #e6e4e0;background:#fff;border-radius:26px}.jp-coaching>article>span{font-weight:900;color:#98907a}.jp-coaching h2{font-size:34px}.jp-coaching p{color:#dca826;line-height:1.7}
@media(max-width:980px){.jp-hero-grid,.jp-dark-grid,.jp-case-grid,.jp-contact-grid,.jp-service-detail{grid-template-columns:1fr}.jp-service-grid{grid-template-columns:repeat(2,1fr)}.jp-pillars{grid-template-columns:1fr}.jp-hero{padding-top:78px}.jp-hero-card{max-width:620px}.jp-brothers,.jp-coaching{grid-template-columns:1fr}}
@media(max-width:640px){.jp-hero{padding:58px 0 64px}.jp-hero h1{font-size:48px}.jp-hero p,.jp-page-hero p{font-size:16px}.jp-hero-card{padding:28px}.jp-section{padding:68px 0}.jp-service-grid{grid-template-columns:1fr}.jp-service-card{min-height:280px}.jp-page-hero{padding:66px 0 56px}.jp-page-hero h1{font-size:46px}.jp-dark{padding:66px 0}.jp-form-card{padding:22px}.jp-form-card .form-row{grid-template-columns:1fr}.jp-method-list article{grid-template-columns:48px 1fr;gap:14px}.jp-method-list h2{font-size:28px}.jp-stat strong{font-size:52px}.jp-callout h2{font-size:34px}}

/* ===== JUPAZZ STUDIO 4.1 — palette istituzionale Jupazz ===== */
.jp-new{
  --jp-bordeaux:#614c16;
  --jp-bordeaux-deep:#4c3b12;
  --jp-red:#d4a223;
  --jp-red-bright:#eeba36;
  --jp-cream:#fcfaf5;
  --jp-cream-soft:#f6f2e9;
  --jp-cream-deep:#ece6d7;
  --jp-ink:#443610;
  --jp-muted:#ce9d22;
  background:var(--jp-cream);
  color:var(--jp-ink);
}
.jp-new em{color:var(--jp-red)}
.jp-kicker{color:var(--jp-red)}
.jp-kicker.light{color:#ede3cb}
.jp-hero{background:radial-gradient(circle at 78% 25%,#efe8d8 0,transparent 34%),linear-gradient(180deg,#fdfcf8 0,#f6f2e9 100%)}
.jp-hero p,.jp-section-head>p,.jp-case-grid p,.jp-page-hero p,.jp-method-list p,.jp-brothers p,.jp-contact-grid p,.jp-service-detail p,.jp-coaching p{color:var(--jp-muted)}
.jp-text-btn,.jp-service-card>a,.jp-callout a,.jp-coaching a{color:var(--jp-bordeaux)}
.jp-hero-card{background:linear-gradient(145deg,var(--jp-bordeaux-deep),var(--jp-bordeaux));box-shadow:0 28px 70px rgba(97,76,22,.20)}
.jp-hero-card>span,.jp-mini-flow i{color:#ede3cb}
.jp-hero-card p{color:#f3eee1}.jp-mini-flow b{background:rgba(252,250,245,.10)}
.jp-service-card{border-color:#e7e2d5;background:#fdfcf8}.jp-service-card:hover{box-shadow:0 18px 44px rgba(97,76,22,.10)}
.jp-service-no{color:#eeba36}.jp-price{background:#ebe3ce;color:var(--jp-bordeaux)}.jp-service-card p{color:var(--jp-muted)}
.jp-dark{background:linear-gradient(135deg,var(--jp-bordeaux-deep),var(--jp-bordeaux));color:#fdfcf8}.jp-dark p,.jp-pillars.light p{color:#ede8da}
.jp-stat{background:#fdfcf8;border-color:#e7e2d5;box-shadow:0 18px 48px rgba(97,76,22,.10)}.jp-stat small{color:#eeba36}.jp-stat span{color:var(--jp-muted)}.jp-stat hr{border-top-color:#e7e2d5}
.jp-pillars article{border-color:#dbd4c4}.jp-pillars b{color:#eeba36}.jp-pillars p{color:var(--jp-muted)}
.jp-final{background:linear-gradient(90deg,var(--jp-bordeaux) 0%,var(--jp-red) 100%);color:#fdfcf8}
.jp-page-hero{background:linear-gradient(180deg,#fdfcf8,#f2ede2)}
.jp-method-list article{border-bottom-color:#e0d9c9}.jp-method-list>article>span{color:var(--jp-red)}
.jp-brothers article,.jp-form-card,.jp-includes,.jp-coaching article{background:#fdfcf8;border-color:#e7e2d5}
.jp-brothers span,.jp-callout>span,.jp-includes>span,.jp-coaching>article>span{color:var(--jp-red)}
.jp-form-card input,.jp-form-card textarea,.jp-form-card select{border-color:#dad4c5;background:#fefdfb;color:var(--jp-ink)}
.jp-includes li{border-bottom-color:#ebe6da}.jp-includes li:before{color:var(--jp-red)}
.jp-new .btn{background:linear-gradient(90deg,var(--jp-bordeaux),var(--jp-red)) !important;border-color:var(--jp-bordeaux) !important;color:#fdfcf8 !important}
.jp-new .btn:hover{background:linear-gradient(90deg,var(--jp-red),var(--jp-red-bright)) !important;border-color:var(--jp-red) !important}

/* 4.3 — titoli editoriali: niente \n visibile; seconda frase in rosso Jupazz. */
.jp-title-main,.jp-title-accent{display:block;font:inherit;line-height:inherit;letter-spacing:inherit}
.jp-title-accent{color:var(--jp-red);font-style:normal}
.jp-dark .jp-title-accent{color:#ede3cb}
@media(max-width:640px){
  .jp-hero h1{font-size:clamp(43px,12.2vw,50px);line-height:.96}
  .jp-section-head h2{font-size:clamp(39px,10.8vw,48px);line-height:1.02}
  .jp-page-hero h1{font-size:clamp(42px,11.5vw,48px);line-height:.99}
}

/* ===== JUPAZZ STUDIO 4.5 — Neon Commercial System ===== */
:root{
  --jp45-bg:#0a0702;
  --jp45-bg-2:#100d03;
  --jp45-panel:#151106;
  --jp45-panel-2:#1c1608;
  --jp45-line:rgba(251,198,64,.34);
  --jp-pink:#fbc130;
  --jp-pink-2:#fbc640;
  --jp-purple:#fbc337;
  --jp-violet:#fbc439;
  --jp-white:#fefdfb;
  --jp-muted:#ccc8bd;
  --jp-muted-2:#a29b89;
  --jp-glow:0 0 28px rgba(251,193,48,.28),0 0 72px rgba(251,195,55,.12);
}

/* ===== 4.27 — variante cromatica Giallo Ambra =====
 * Solo palette: layout, misure, spaziature, contenuti e comportamento restano invariati.
 */
:root{
  --jp45-bg:#070600;
  --jp45-bg-2:#0d0b02;
  --jp45-panel:#121003;
  --jp45-panel-2:#1b1604;
  --jp45-line:rgba(248,200,61,.34);
  --jp-pink:#f8c83d;
  --jp-pink-2:#ffd35a;
  --jp-purple:#d2a01d;
  --jp-violet:#8f6812;
  --jp-white:#fffdf7;
  --jp-muted:#d0cabd;
  --jp-muted-2:#a49a86;
  --jp-glow:0 0 28px rgba(248,200,61,.28),0 0 72px rgba(185,133,16,.14);
}

body::selection,
.jp-new .btn-primary,
.jp-wa-button,
.header-wa-cta,
html body .jp-neon-home .jp-method-band .jp-method-cta,
html body .jp-consent .jp-btn-primary,
html body .jp-consent-actions [data-jp-action="accept"],
html body .jupazz-wa-panel-btn,
.jp-partner-copy,
.jp-fixed-wa,
.btn-primary,
.confirm,
.growth-note .btn,
.home-questions .btn-primary,
.booking-note .btn{
  color:#100d03!important;
}

/* ===== 5.1.1 — livello finale Android: margini, spaziature e contenimento =====
 * Le versioni precedenti contenevano più sistemi mobile sovrapposti. Questo
 * blocco agisce solo sui browser Android e diventa l'unica regola autorevole
 * per la larghezza utile dei contenuti, senza alterare la resa già approvata
 * su iPhone e desktop. */
@media(max-width:760px){
  html.jp-android,
  html.jp-android body{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
  }
  html.jp-android body{
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }
  html.jp-android body *,
  html.jp-android body *::before,
  html.jp-android body *::after{
    box-sizing:border-box;
  }
  html.jp-android body :where(main,section,header,footer){
    max-width:100%;
  }

  /* Un solo margine laterale reale per tutte le pagine e per il footer. */
  html.jp-android body .container,
  html.jp-android body .jp-neon-home .container,
  html.jp-android body .jp-partner-page .container,
  html.jp-android body .jp-partner-kit-page .container{
    width:100%!important;
    max-width:760px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:22px!important;
    padding-right:22px!important;
    padding-left:max(22px,env(safe-area-inset-left))!important;
    padding-right:max(22px,env(safe-area-inset-right))!important;
  }

  /* Il menu conserva la propria cornice ma non tocca mai i bordi Android. */
  html.jp-android body .site-header .header-inner{
    width:100%!important;
    max-width:760px!important;
    padding-left:max(18px,env(safe-area-inset-left))!important;
    padding-right:max(18px,env(safe-area-inset-right))!important;
  }
  html.jp-android body .site-header .main-nav{
    left:18px!important;
    right:18px!important;
    width:auto!important;
    max-width:none!important;
  }
  html.jp-android body .site-header .main-nav a{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  /* Qualunque colonna deve poter restringersi senza spingere la pagina. */
  html.jp-android body :where(
    .jp-hero-grid,.jp-founders-story-grid,.jp-dark-grid,.jp-case-grid,
    .jp-contact-grid,.jp-service-detail,.jp-method-copy-grid,
    .jp-service-hero-layout,.jp-partner-hero-grid,.jp-partner-recognition-grid,
    .jp-partner-faq-grid,.jp-partner-join-grid,.booking-page-hero-grid,
    .booking-control-grid,.split-editorial,.project-hero-grid,.project-story-grid
  )>*{
    min-width:0!important;
    max-width:100%;
  }

  html.jp-android body :where(h1,h2,h3,h4,p,li,blockquote){
    max-width:100%;
    overflow-wrap:break-word;
    word-break:normal;
  }
  html.jp-android body :where(h1,h2,h3){
    text-wrap:balance;
  }
  html.jp-android body :where(p,li){
    line-height:1.58;
  }
  html.jp-android body :where(img,svg,video,iframe,canvas){
    max-width:100%;
  }

  /* Ritmo verticale coerente nelle pagine interne. */
  html.jp-android body .jp-page-hero{
    padding-top:54px!important;
    padding-bottom:58px!important;
  }
  html.jp-android body .jp-page-hero h1{
    margin-bottom:21px!important;
    font-size:clamp(40px,11.6vw,50px)!important;
    line-height:1.04!important;
  }
  html.jp-android body .jp-page-hero p{
    margin-bottom:0!important;
    font-size:16px!important;
    line-height:1.58!important;
  }
  html.jp-android body .jp-section{
    padding-top:64px!important;
    padding-bottom:68px!important;
  }
  html.jp-android body .jp-dark{
    padding-top:64px!important;
    padding-bottom:68px!important;
  }
  html.jp-android body .jp-final{
    padding-top:62px!important;
    padding-bottom:66px!important;
  }
  html.jp-android body .jp-neon-home .jp-neon-hero{
    padding-top:42px!important;
    padding-bottom:48px!important;
  }
  html.jp-android body .jp-founders-story{
    padding-top:62px!important;
    padding-bottom:68px!important;
  }

  /* Card e griglie non possono ereditare larghezze o margini desktop. */
  html.jp-android body :where(
    .jp-benefit-card,.jp-service-card,.jp-stat,.jp-brothers article,
    .jp-pillars article,.jp-coaching article,.jp-form-card,.jp-includes,
    .jp-method-list article,.jp-case-metrics article,.jp-partner-stat,
    .jp-partner-step,.jp-partner-methods article,.jp-partner-faq article,
    .booking-flow-steps article,.booking-dashboard-demo,.booking-page-card
  ){
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  html.jp-android body .jp-brothers,
  html.jp-android body .jp-pillars,
  html.jp-android body .jp-coaching,
  html.jp-android body .jp-case-metrics,
  html.jp-android body .booking-flow-steps,
  html.jp-android body .dash-stats{
    gap:13px!important;
  }
  html.jp-android body .jp-form-card,
  html.jp-android body .jp-includes{
    padding:21px 18px!important;
  }
  html.jp-android body :where(input,textarea,select,button){
    max-width:100%;
  }

  /* CTA leggibili anche quando Chrome Android ingrandisce alcuni caratteri. */
  html.jp-android body a.btn,
  html.jp-android body button.btn{
    height:auto;
    min-width:0;
    max-width:100%;
    padding-top:15px;
    padding-bottom:15px;
    line-height:1.24;
    white-space:normal;
    text-align:center;
  }

  /* Le grafiche restano centrate; eventuali bagliori vengono tagliati, non il testo. */
  html.jp-android body :where(
    .jp-neon-visual,.jp-hero-laptop-picture,.jp-hero-laptop-art,
    .jp-service-hero-art,.jp-founders-portrait,.jp-partner-visual,
    .jp-partner-qr,.booking-laptop
  ){
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html.jp-android body .jp-kicker{
    max-width:100%;
    line-height:1.45;
  }
  html.jp-android body .jp-copy-rich,
  html.jp-android body .editorial-copy,
  html.jp-android body .project-content{
    width:100%;
    max-width:100%!important;
  }
  html.jp-android body .jp-process-cycle{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

@media(max-width:390px){
  html.jp-android body .container,
  html.jp-android body .jp-neon-home .container,
  html.jp-android body .jp-partner-page .container,
  html.jp-android body .jp-partner-kit-page .container{
    padding-left:18px!important;
    padding-right:18px!important;
    padding-left:max(18px,env(safe-area-inset-left))!important;
    padding-right:max(18px,env(safe-area-inset-right))!important;
  }
  html.jp-android body .site-header .header-inner{
    padding-left:max(15px,env(safe-area-inset-left))!important;
    padding-right:max(15px,env(safe-area-inset-right))!important;
  }
  html.jp-android body .site-header .main-nav{
    left:12px!important;
    right:12px!important;
  }
  html.jp-android body .jp-page-hero h1{
    font-size:clamp(37px,11.2vw,44px)!important;
  }
  html.jp-android body .jp-section,
  html.jp-android body .jp-dark{
    padding-top:58px!important;
    padding-bottom:62px!important;
  }
}

/* 5.1.0 — i fondatori entrano subito dopo la Hero, senza appesantire la pagina. */
.jp-founders-story{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(72px,8vw,108px) 0;
  border-top:1px solid rgba(255,0,184,.22);
  border-bottom:1px solid rgba(255,0,184,.18);
  background:
    radial-gradient(circle at 82% 46%,rgba(220,0,255,.20),transparent 29%),
    radial-gradient(circle at 12% 82%,rgba(255,0,145,.10),transparent 31%),
    linear-gradient(118deg,#050209 0%,#100317 56%,#08010e 100%);
}
.jp-founders-story::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-18%;
  bottom:-44%;
  width:74%;
  aspect-ratio:1.9;
  border:2px solid rgba(255,0,190,.24);
  border-radius:50%;
  transform:rotate(-8deg);
  box-shadow:0 0 28px rgba(255,0,190,.10);
}
.jp-founders-story-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,.78fr);
  align-items:center;
  gap:clamp(44px,7vw,96px);
}
.jp-founders-story-copy{position:relative;z-index:2}
.jp-founders-story-copy .jp-kicker{margin-bottom:22px;color:#fff}
.jp-founders-story-copy h2{
  max-width:720px;
  margin:0 0 25px;
  color:#fff;
  font-size:clamp(46px,5.5vw,76px);
  line-height:.97;
  letter-spacing:-.058em;
}
.jp-founders-story-copy h2 .jp-title-accent{
  display:inline;
  color:#ff0bb7;
  -webkit-text-fill-color:#ff0bb7;
}
.jp-founders-story-copy>p{
  max-width:660px;
  margin:0;
  color:#d8cedd;
  font-size:clamp(17px,1.65vw,20px);
  line-height:1.68;
}
.jp-founders-tags{display:flex;flex-wrap:wrap;gap:9px;margin:29px 0 31px}
.jp-founders-tags span{
  padding:8px 13px;
  border:1px solid rgba(255,0,190,.42);
  border-radius:999px;
  color:#f4eaf6;
  background:rgba(255,0,190,.06);
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
}
.jp-founders-story .jp-founders-link{
  min-height:50px;
  border-color:rgba(255,0,190,.60)!important;
  color:#fff!important;
  background:rgba(18,2,25,.62)!important;
  box-shadow:inset 0 0 25px rgba(255,0,190,.05);
}
.jp-founders-story .jp-founders-link:hover{
  border-color:#ff0bb7!important;
  box-shadow:0 0 23px rgba(255,0,183,.22),inset 0 0 25px rgba(255,0,190,.08);
}
.jp-founders-portrait{
  position:relative;
  display:grid;
  place-items:center;
  width:min(100%,430px);
  margin:0 auto;
}
.jp-founders-portrait::before,
.jp-founders-portrait::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.jp-founders-portrait::before{
  inset:-17px;
  border:1px solid rgba(255,10,188,.84);
  box-shadow:0 0 37px rgba(255,0,184,.31),inset 0 0 25px rgba(255,0,184,.15);
}
.jp-founders-portrait::after{
  inset:-44px;
  border:1px solid rgba(168,0,255,.21);
}
.jp-founders-portrait img{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  aspect-ratio:1;
  border-radius:50%;
  object-fit:cover;
  box-shadow:0 26px 72px rgba(0,0,0,.48);
  animation:jpFoundersFloat 6.5s ease-in-out infinite;
}
.jp-founders-orbit{
  position:absolute;
  z-index:1;
  inset:-30px;
  border-radius:50%;
  border-top:2px solid rgba(255,0,190,.78);
  border-right:1px solid transparent;
  border-bottom:1px solid rgba(112,28,255,.34);
  border-left:1px solid transparent;
  filter:drop-shadow(0 0 9px rgba(255,0,190,.50));
  animation:jpFoundersOrbit 16s linear infinite;
}
.jp-founders-story-about{
  padding-top:clamp(62px,7vw,92px);
  background:
    radial-gradient(circle at 18% 48%,rgba(220,0,255,.18),transparent 28%),
    linear-gradient(118deg,#07020c 0%,#110318 58%,#07020c 100%);
}
.jp-founders-story-about .jp-founders-story-grid{grid-template-columns:minmax(340px,.78fr) minmax(0,1fr)}
.jp-founders-story-about .jp-founders-story-copy>p{max-width:720px}
@keyframes jpFoundersFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes jpFoundersOrbit{to{transform:rotate(360deg)}}

@media(max-width:820px){
  .jp-founders-story-grid,.jp-founders-story-about .jp-founders-story-grid{grid-template-columns:1fr;gap:58px}
  .jp-founders-story-home .jp-founders-portrait{order:-1}
  .jp-founders-portrait{width:min(72vw,340px)}
  .jp-founders-story-copy{max-width:720px}
}
@media(max-width:640px){
  .jp-founders-story{padding:64px 0 70px}
  .jp-founders-story-grid,.jp-founders-story-about .jp-founders-story-grid{gap:48px}
  .jp-founders-portrait{width:min(74vw,290px)}
  .jp-founders-portrait::before{inset:-12px}
  .jp-founders-portrait::after{inset:-30px}
  .jp-founders-orbit{inset:-22px}
  .jp-founders-story-copy h2{font-size:clamp(40px,12vw,55px);line-height:.98;margin-bottom:21px}
  .jp-founders-story-copy>p{font-size:16px;line-height:1.62}
  .jp-founders-tags{margin:24px 0 28px}
  .jp-founders-story .jp-founders-link{width:100%;min-height:53px}
}
@media(prefers-reduced-motion:reduce){
  .jp-founders-portrait img,.jp-founders-orbit{animation:none}
}

/* 5.0.8 — caso studio Il bozzolo interiore */
.jp-bozzolo-case{position:relative;overflow:hidden}
.jp-bozzolo-case .jp-case-grid>div>h2{margin:25px 0;font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.045em}
.jp-bozzolo-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.jp-bozzolo-proof{position:relative;overflow:hidden}
.jp-bozzolo-insight{position:relative;z-index:1}

@media(max-width:980px){
  .jp-bozzolo-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:640px){
  .jp-bozzolo-case .jp-case-grid>div>h2{font-size:clamp(38px,11vw,48px)}
  .jp-bozzolo-metrics{grid-template-columns:1fr}
}
html{background:var(--jp45-bg)}
body{background:var(--jp45-bg);color:var(--jp-white)}
body::selection{background:var(--jp-pink);color:#fff}
.container{width:min(1240px,calc(100% - 48px));margin-inline:auto}

/* Header */
.site-header{position:sticky;top:0;z-index:60;background:rgba(10,7,2,.82)!important;border-bottom:1px solid rgba(255,255,255,.06)!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);padding:14px 0}
.site-header .header-inner{min-height:76px;height:auto;border:1px solid rgba(251,196,58,.22);border-radius:22px;background:linear-gradient(180deg,rgba(28,22,8,.76),rgba(11,9,3,.76));padding:10px 14px 10px 18px;box-shadow:0 16px 50px rgba(0,0,0,.22);display:flex;gap:24px}
.site-header .brand-v114{display:flex;align-items:center;flex:0 0 auto}
.site-header .brand-lockup-v363{height:52px;gap:9px;filter:drop-shadow(0 0 12px rgba(255,255,255,.08))}
.site-header .brand-mark-v363{height:49px}
.site-header .brand-wordmark-v363{width:118px;flex-basis:118px;opacity:.93}
.site-header .main-nav{display:flex;align-items:center;gap:26px;margin-left:auto;font-size:14px;font-weight:650;color:#f1efe8}
.site-header .main-nav ul{display:flex;align-items:center;gap:26px;margin:0;padding:0;list-style:none}
.site-header .main-nav li{margin:0;padding:0}
.site-header .main-nav a{color:#f1efe8;padding:11px 0;white-space:nowrap;transition:.2s ease}
.site-header .main-nav a:hover{color:#fff}
.site-header .main-nav a:not(.header-project-cta)::after{background:linear-gradient(90deg,var(--jp-pink),var(--jp-purple));height:2px;bottom:1px;box-shadow:0 0 12px rgba(251,193,48,.55)}
.site-header .main-nav .header-project-cta,
.site-header .main-nav .btn{display:none!important}
.header-wa-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border-radius:999px;color:#fff!important;font-weight:800;font-size:14px;white-space:nowrap;background:linear-gradient(100deg,#ebad12 0%,var(--jp-pink) 68%,#fbc53b 100%);border:1px solid rgba(238,225,193,.65);box-shadow:0 0 18px rgba(251,193,48,.5),inset 0 0 18px rgba(255,255,255,.08)}
.header-wa-cta:hover{transform:translateY(-1px);box-shadow:0 0 28px rgba(251,193,48,.68),inset 0 0 18px rgba(255,255,255,.12)}
.header-wa-icon{width:25px;height:25px;display:grid;place-items:center}
.header-wa-icon svg{width:25px;height:25px}
.menu-toggle{color:#fff!important}

/* Global neon surface */
.jp-new{--jp-bordeaux:#664e12;--jp-red:#fbc130;--jp-cream:#fefdfb;--jp-ink:#fefdfb;--jp-muted:#ccc8bd;background:var(--jp45-bg)!important;color:var(--jp-white)!important;overflow:hidden}
.jp-new h1,.jp-new h2,.jp-new h3{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:820;letter-spacing:-.045em;color:var(--jp-white)}
.jp-new p{color:var(--jp-muted)}
.jp-kicker{position:relative;display:inline-flex;align-items:center;gap:14px;color:#dcd7cc!important;font-size:11px;letter-spacing:.24em;font-weight:800;margin-bottom:22px}
.jp-kicker::before{content:"";width:38px;height:2px;background:linear-gradient(90deg,var(--jp-pink),var(--jp-purple));box-shadow:0 0 10px rgba(251,193,48,.5)}
.jp-kicker.light{color:#f7f5ef!important}
.jp-title-main,.jp-title-accent{display:block}
.jp-title-accent{color:transparent!important;background:linear-gradient(90deg,var(--jp-pink) 0%,#eeba37 45%,var(--jp-purple) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}

/* Hero */
.jp-neon-hero{position:relative;isolation:isolate;padding:82px 0 54px;background:
radial-gradient(circle at 88% 15%,rgba(251,193,48,.18),transparent 25%),
radial-gradient(circle at 45% 5%,rgba(251,196,57,.08),transparent 32%),
linear-gradient(180deg,#0a0702 0%,#0e0b03 72%,#0a0702 100%)!important;overflow:hidden}
.jp-neon-hero::before,.jp-neon-hero::after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(.2px);pointer-events:none}
.jp-neon-hero::before{width:760px;height:760px;right:-420px;top:-390px;border:3px solid rgba(251,193,48,.7);box-shadow:0 0 44px rgba(251,193,48,.5),0 0 140px rgba(251,195,55,.25)}
.jp-neon-hero::after{width:780px;height:160px;left:-150px;bottom:-110px;border-top:2px solid rgba(251,193,48,.65);transform:rotate(-6deg);box-shadow:0 -20px 80px rgba(251,193,48,.22)}
.jp-neon-orb{position:absolute;border-radius:50%;pointer-events:none;z-index:-1;filter:blur(70px);opacity:.5}.jp-neon-orb-a{width:300px;height:300px;background:#fbc232;right:16%;top:28%}.jp-neon-orb-b{width:240px;height:240px;background:#fbc12f;left:-8%;bottom:8%;opacity:.24}
.jp-neon-hero .jp-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(470px,.92fr);gap:64px;align-items:center}
.jp-neon-hero .jp-hero-copy{max-width:700px;padding:18px 0 20px}
.jp-neon-hero h1{font-size:clamp(58px,6.1vw,92px);line-height:.93;letter-spacing:-.06em;margin:0 0 28px;max-width:10.8ch}
.jp-neon-hero .jp-hero-text{font-size:18px;line-height:1.62;max-width:680px;color:#ccc8bf!important;margin:0}
.jp-neon-hero .jp-actions{margin-top:34px;gap:18px}
.jp-new .btn{font-family:inherit}
.jp-new .btn-primary,.jp-wa-button{min-height:54px;padding:0 24px;border-radius:999px!important;background:linear-gradient(100deg,#e8ac15 0%,var(--jp-pink) 68%,#fbc43a 100%)!important;border:1px solid rgba(234,218,179,.68)!important;box-shadow:0 0 18px rgba(251,193,48,.48),inset 0 0 14px rgba(255,255,255,.08)!important;color:#fff!important;font-weight:830!important}
.jp-new .btn-primary:hover,.jp-wa-button:hover{transform:translateY(-2px);box-shadow:0 0 30px rgba(251,193,48,.62)!important}
.jp-wa-round{width:31px;height:31px;border:0;border-radius:0;display:grid;place-items:center;font-size:14px;line-height:1;flex:0 0 31px}
.btn-ghost,.btn-ghost-light{min-height:54px;padding:0 24px;border-radius:999px;background:rgba(18,15,6,.7)!important;border:1px solid rgba(252,205,86,.55)!important;color:#fff!important;box-shadow:inset 0 0 20px rgba(251,195,55,.06)}
.btn-ghost:hover,.btn-ghost-light:hover{border-color:var(--jp-pink)!important;box-shadow:0 0 20px rgba(251,193,48,.16)}
.jp-hero-trust{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:24px;font-size:12px;color:#cecac1}
.jp-hero-trust span{display:inline-flex;align-items:center;gap:7px}
.jp-hero-trust span::first-letter{color:var(--jp-pink)}

/* Hero device illustration */
.jp-neon-visual{position:relative;min-height:510px;display:flex;align-items:center;justify-content:center}
.jp-laptop{position:relative;width:min(540px,92%);height:340px;transform:perspective(1200px) rotateY(-5deg) rotateX(1deg);filter:drop-shadow(0 36px 55px rgba(0,0,0,.5))}
.jp-laptop::before{content:"";position:absolute;inset:0 18px 42px;border:5px solid #241d0b;border-radius:18px;background:#090703;box-shadow:0 0 0 1px rgba(255,255,255,.2),0 0 28px rgba(251,195,55,.22);z-index:2}
.jp-laptop-camera{position:absolute;top:8px;left:50%;width:5px;height:5px;border-radius:50%;background:#08030c;border:1px solid rgba(255,0,184,.34);box-shadow:0 0 5px rgba(255,0,184,.18);z-index:5}
.jp-laptop-screen{position:absolute;z-index:3;inset:9px 27px 51px;border-radius:12px;overflow:hidden;background:
radial-gradient(circle at 74% 34%,rgba(251,193,48,.28),transparent 22%),
linear-gradient(145deg,#0a0702 0%,#191305 45%,#2a2005 72%,#0f0c04 100%)}
.jp-laptop-screen::before,.jp-laptop-screen::after{content:"";position:absolute;width:130%;height:2px;left:-15%;background:linear-gradient(90deg,transparent,var(--jp-pink),#fbc337,transparent);box-shadow:0 0 18px var(--jp-pink);transform:rotate(-28deg)}
.jp-laptop-screen::before{top:37%}.jp-laptop-screen::after{top:67%;transform:rotate(-21deg);opacity:.72}
.jp-screen-logo{position:absolute!important;width:98px!important;height:168px!important;object-fit:contain!important;right:13%;top:15%;opacity:.98;filter:drop-shadow(0 0 20px rgba(255,255,255,.16))}
.jp-laptop-screen p{position:absolute;left:8%;bottom:14%;font-size:28px;line-height:1.07;margin:0;color:#fff!important;letter-spacing:-.035em}.jp-laptop-screen em{color:var(--jp-pink)!important;font-style:normal}.jp-screen-line{position:absolute;left:8%;bottom:9%;width:44px;height:2px;background:var(--jp-pink);box-shadow:0 0 12px var(--jp-pink)}
.jp-laptop-base{position:absolute;z-index:1;left:-8%;right:-8%;height:45px;bottom:8px;border-radius:4px 4px 20px 20px;background:linear-gradient(180deg,#be911f,#221b0b 55%,#120e06);box-shadow:inset 0 1px rgba(255,255,255,.28),0 12px 30px rgba(0,0,0,.65)}
.jp-laptop-base::after{content:"";position:absolute;width:120px;height:7px;left:50%;top:0;transform:translateX(-50%);border-radius:0 0 10px 10px;background:#35290c}
.jp-floating-card{position:absolute;z-index:8;width:90px;height:90px;border-radius:18px;background:linear-gradient(180deg,rgba(45,35,11,.93),rgba(19,15,6,.88));border:1px solid rgba(251,198,65,.48);box-shadow:0 18px 38px rgba(0,0,0,.34),0 0 20px rgba(251,193,48,.16);display:grid;place-items:center;color:#fbc439;backdrop-filter:blur(10px)}
.jp-icon-svg{width:48px;height:48px;display:grid;place-items:center}.jp-icon-svg svg{width:48px;height:48px}
.jp-float-growth{left:3%;top:11%;transform:rotate(-5deg)}.jp-float-target{right:2%;top:13%;transform:rotate(5deg)}.jp-float-people{left:7%;bottom:7%;transform:rotate(3deg)}.jp-float-page{right:-1%;bottom:8%;transform:rotate(4deg)}

.jp-hero-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px;padding-bottom:16px}
.jp-benefit-card{display:grid;grid-template-columns:72px 1fr;gap:22px;align-items:center;min-height:150px;padding:26px;border-radius:22px;background:linear-gradient(145deg,rgba(28,22,7,.92),rgba(13,10,4,.95));border:1px solid rgba(251,196,57,.38);box-shadow:inset 0 0 28px rgba(251,193,48,.02),0 18px 48px rgba(0,0,0,.22);transition:.22s ease}
.jp-benefit-card:hover{transform:translateY(-4px);border-color:rgba(251,200,71,.62);box-shadow:var(--jp-glow)}
.jp-feature-icon{width:70px;height:70px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(180deg,rgba(84,64,13,.45),rgba(31,23,5,.7));border:1px solid rgba(251,194,51,.6);color:#fbc742;font-size:30px;font-weight:800;text-shadow:0 0 14px rgba(251,193,48,.7);box-shadow:inset 0 0 18px rgba(251,193,48,.08),0 0 18px rgba(251,193,48,.08)}
.jp-benefit-card:nth-child(2) .jp-feature-icon{color:#fbc743;border-color:rgba(251,198,62,.62)}
.jp-benefit-card h3{margin:0 0 7px;font-size:22px;letter-spacing:-.03em}.jp-benefit-card p{margin:0;font-size:14px;line-height:1.5;color:#c5c1b6!important}

/* Sections */
.jp-section{position:relative;padding:118px 0;background:var(--jp45-bg)!important}
.jp-services-section{background:linear-gradient(180deg,#0a0702 0%,#0e0b03 50%,#0a0702 100%)!important}
.jp-section-head{max-width:820px;margin-bottom:54px}
.jp-section-head h2{font-size:clamp(46px,5.2vw,72px);line-height:.98;margin:0 0 24px;max-width:13ch}.jp-section-head>p{font-size:18px;line-height:1.65;max-width:740px;color:#c5c1b6!important}
.jp-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.jp-service-card{min-height:330px;padding:30px;border-radius:22px;background:linear-gradient(145deg,rgba(28,22,8,.94),rgba(13,10,4,.98))!important;border:1px solid rgba(251,197,60,.34)!important;box-shadow:0 14px 46px rgba(0,0,0,.2);display:flex;flex-direction:column;justify-content:flex-start;position:relative;overflow:hidden}
.jp-service-card::after{content:"";position:absolute;left:28px;bottom:22px;width:36px;height:2px;background:linear-gradient(90deg,var(--jp-pink),var(--jp-purple));box-shadow:0 0 12px rgba(251,193,48,.6)}
.jp-service-card:hover{transform:translateY(-5px);border-color:rgba(251,200,70,.58)!important;box-shadow:var(--jp-glow)}
.jp-service-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.jp-service-no{font-size:11px;color:#f0c454!important}.jp-price{float:none;background:rgba(251,193,48,.12)!important;border:1px solid rgba(251,193,48,.38);color:#e7d6ab!important;padding:7px 12px}
.jp-service-card h3,.jp-service-card h2{font-family:inherit;font-size:30px;line-height:1.08;margin:42px 0 14px;color:#fff}.jp-service-card p{font-size:15px;line-height:1.58;color:#c1bcaf!important;margin:0 0 26px}.jp-service-card>a{margin-top:auto;padding:14px 0 18px;color:#fff!important;font-weight:780}.jp-service-card>a b{color:var(--jp-pink);margin-left:7px}

.jp-dark{position:relative;background:linear-gradient(135deg,#110d04,#1a1406 58%,#0d0a03)!important;color:#fff;padding:108px 0;border-top:1px solid rgba(251,197,61,.18);border-bottom:1px solid rgba(251,197,61,.18);overflow:hidden}
.jp-dark::before{content:"";position:absolute;width:560px;height:560px;right:-260px;top:-320px;border-radius:50%;border:2px solid rgba(251,193,48,.48);box-shadow:0 0 60px rgba(251,193,48,.24)}
.jp-dark-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;position:relative;z-index:2}.jp-dark h2{font-size:clamp(44px,5vw,68px);line-height:1;margin:0}.jp-dark p{font-size:18px;line-height:1.72;color:#cfcbc1!important}.jp-dark .jp-title-accent{background:linear-gradient(90deg,#fbc847,#fbc742);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.jp-method-mini{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:18px;align-items:center;margin-top:70px;position:relative;z-index:2}.jp-method-mini article{padding:24px;border:1px solid rgba(251,197,61,.28);border-radius:18px;background:rgba(18,15,6,.72);min-height:150px}.jp-method-mini article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(251,193,48,.62);color:#fbcb50;font-weight:800;box-shadow:0 0 16px rgba(251,193,48,.18)}.jp-method-mini b{display:block;font-size:20px;margin:16px 0 7px}.jp-method-mini small{display:block;color:#c2bdb1;line-height:1.45}.jp-method-mini>i{font-style:normal;color:#fbc53c;font-size:24px;text-shadow:0 0 12px rgba(251,193,48,.7)}

.jp-case-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:74px;align-items:center}.jp-case-grid h2{font-size:38px}.jp-case-grid p{font-size:17px;line-height:1.72;color:#c4bfb3!important}.jp-text-btn{color:#fccc54!important;border-bottom-color:rgba(252,204,84,.45)!important}
.jp-stat{padding:42px;background:linear-gradient(145deg,rgba(31,24,8,.95),rgba(13,10,4,.98))!important;border:1px solid rgba(251,197,60,.35)!important;border-radius:24px;box-shadow:0 18px 50px rgba(0,0,0,.28)}.jp-stat small{color:#f1c659!important}.jp-stat strong{font-family:inherit;font-size:66px;letter-spacing:-.06em;color:#fff}.jp-stat span{color:#c3bfb3!important}.jp-stat hr{border-top-color:rgba(255,255,255,.1)}.jp-stat b{color:#fff}
.jp-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.jp-pillars article{padding:34px;border:1px solid rgba(251,197,60,.26)!important;border-radius:20px;background:rgba(22,18,6,.7)}.jp-pillars b{color:#fbca4e!important}.jp-pillars h3{font-size:26px;line-height:1.12;margin:20px 0 12px}.jp-pillars p{color:#c3bfb3!important;line-height:1.62}
.jp-final{position:relative;padding:96px 0;background:linear-gradient(100deg,#1c1606 0%,#271e07 48%,#171205 100%)!important;color:#fff;text-align:center;border-top:1px solid rgba(251,196,57,.28);overflow:hidden}.jp-final::before{content:"";position:absolute;width:560px;height:160px;left:50%;bottom:-118px;transform:translateX(-50%);border-radius:50%;border-top:2px solid rgba(251,193,48,.8);box-shadow:0 -28px 90px rgba(251,193,48,.28)}.jp-final .container{position:relative;z-index:2;max-width:850px}.jp-final h2{font-size:clamp(42px,5vw,68px);line-height:1;margin:0 0 18px}.jp-final p{font-size:18px;line-height:1.6;color:#ccc8be!important;margin-bottom:30px}

/* Inner pages */
.jp-page-hero{padding:112px 0 92px;background:
radial-gradient(circle at 78% 20%,rgba(251,193,48,.12),transparent 30%),
linear-gradient(180deg,#0a0702,#0f0b03)!important;border-bottom:1px solid rgba(251,196,58,.14)}
.jp-page-hero .narrow{max-width:980px}.jp-page-hero h1{font-family:inherit;font-size:clamp(52px,6vw,82px);line-height:.98;letter-spacing:-.055em;margin:0 0 28px}.jp-page-hero p{font-size:19px;line-height:1.7;color:#c7c3b8!important;max-width:820px}
.jp-method-list article{grid-template-columns:86px 1fr;gap:32px;padding:36px 0;border-bottom:1px solid rgba(255,255,255,.09)}.jp-method-list>article>span{color:#fbc948!important;font-weight:850}.jp-method-list h2{font-family:inherit;font-size:36px}.jp-method-list p{color:#c2beb2!important}
.jp-brothers{display:grid;grid-template-columns:1fr 1fr;gap:22px}.jp-brothers article,.jp-form-card,.jp-includes,.jp-coaching article{background:linear-gradient(145deg,rgba(28,22,8,.94),rgba(13,10,4,.98))!important;border:1px solid rgba(251,197,60,.32)!important;color:#fff;box-shadow:0 14px 42px rgba(0,0,0,.2)}.jp-brothers span,.jp-callout>span,.jp-includes>span,.jp-coaching>article>span{color:#fbca4e!important}.jp-brothers h2,.jp-contact-grid h2,.jp-service-detail h2,.jp-coaching h2{font-family:inherit;color:#fff}.jp-brothers p,.jp-contact-grid p,.jp-service-detail p,.jp-coaching p{color:#c2beb2!important}
.jp-contact-grid,.jp-service-detail{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;align-items:start}.jp-form-card{padding:38px;border-radius:24px}.jp-form-card label{color:#f6f4ee}.jp-form-card input,.jp-form-card textarea,.jp-form-card select{background:#0e0b04!important;border:1px solid rgba(251,202,79,.28)!important;color:#fff!important;border-radius:12px;padding:14px 15px}.jp-form-card input:focus,.jp-form-card textarea:focus,.jp-form-card select:focus{outline:none;border-color:var(--jp-pink)!important;box-shadow:0 0 0 3px rgba(251,193,48,.1)}.jp-form-card option{background:#151106;color:#fff}.jp-form-card .privacy-check a{color:#fbcc53}.form-success{background:rgba(43,180,112,.12);border:1px solid rgba(63,223,135,.35);color:#bff2d3;padding:14px 16px;border-radius:12px;margin-bottom:22px}.form-error{background:rgba(239,191,69,.12);border:1px solid rgba(251,201,73,.35);color:#f1e8cf;padding:14px 16px;border-radius:12px;margin-bottom:22px}
.jp-includes li{border-bottom-color:rgba(255,255,255,.09);color:#dedad1}.jp-includes li:before{color:#fbc848}.jp-callout h2{font-family:inherit;color:#fff}.jp-callout a,.jp-coaching a{color:#fccd56!important}

/* Footer */
.site-footer{background:#060501!important;color:#ebe8e0!important;border-top:1px solid rgba(251,197,59,.18);padding:72px 0 34px}
.site-footer .footer-shell{width:min(1240px,calc(100% - 48px))}.footer-main{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:start}.footer-tagline{max-width:500px;color:#a9a291!important;line-height:1.6}.footer-nav{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:14px 30px}.footer-nav a{color:#ddd9d1}.footer-nav a:hover{color:#fbcc53}.footer-divider span{background:rgba(255,255,255,.09)}.footer-divider i{color:#fbc847}.footer-bottom{color:#9e9683}.footer-legal a{color:#beb9ad}

/* Responsive */
@media(max-width:1120px){
  .site-header .main-nav{gap:18px}.site-header .main-nav ul{gap:18px}.header-wa-cta{padding-inline:16px}
  .jp-neon-hero .jp-hero-grid{grid-template-columns:1fr 440px;gap:36px}.jp-neon-hero h1{font-size:clamp(54px,6.5vw,78px)}.jp-neon-visual{min-height:460px}.jp-laptop{width:440px;height:290px}.jp-laptop-screen p{font-size:24px}.jp-floating-card{width:78px;height:78px}.jp-icon-svg,.jp-icon-svg svg{width:42px;height:42px}
}
@media(max-width:980px){
  .container{width:min(100% - 34px,760px)}
  .site-header{padding:10px 0}.site-header .header-inner{min-height:68px;padding:7px 10px 7px 14px}.site-header .brand-lockup-v363{height:48px!important}.site-header .brand-mark-v363{height:46px!important}.site-header .brand-wordmark-v363{width:102px!important;flex-basis:102px!important;transform:translateY(2px)!important}
  .header-wa-cta{display:none}.menu-toggle{display:grid!important;width:44px;height:44px;place-items:center;border:1px solid rgba(251,198,63,.26);border-radius:12px;background:rgba(22,18,6,.8)!important}
  .site-header .main-nav{position:absolute;top:calc(100% + 8px);left:17px;right:17px;display:none!important;flex-direction:column;align-items:stretch;padding:20px;border-radius:18px;background:rgba(11,9,3,.98);border:1px solid rgba(251,196,58,.3);box-shadow:0 24px 60px rgba(0,0,0,.5)}
  .site-header .main-nav.is-open{display:flex!important}.site-header .main-nav ul{display:flex;flex-direction:column;align-items:stretch;gap:5px}.site-header .main-nav li{width:100%}.site-header .main-nav a{display:block;padding:12px 8px}.site-header .main-nav .header-project-cta,.site-header .main-nav .btn{display:block!important;text-align:center;background:linear-gradient(100deg,#ebad12,var(--jp-pink))!important;border-radius:999px;margin-top:8px;padding:13px 18px!important}
  .jp-neon-hero{padding:64px 0 46px}.jp-neon-hero .jp-hero-grid{grid-template-columns:1fr;gap:26px}.jp-neon-hero .jp-hero-copy{max-width:760px}.jp-neon-hero h1{font-size:clamp(52px,10vw,78px);max-width:11ch}.jp-neon-hero .jp-hero-text{max-width:700px}.jp-neon-visual{min-height:480px;max-width:650px;margin:0 auto;width:100%}.jp-laptop{width:min(520px,88%);height:325px}.jp-laptop-screen p{font-size:27px}.jp-float-growth{left:0}.jp-float-target{right:0}.jp-float-people{left:3%}.jp-float-page{right:1%}
  .jp-hero-benefits{grid-template-columns:1fr;max-width:760px}.jp-benefit-card{min-height:125px}
  .jp-service-grid{grid-template-columns:repeat(2,1fr)}.jp-service-card{min-height:320px}
  .jp-dark-grid,.jp-case-grid,.jp-contact-grid,.jp-service-detail{grid-template-columns:1fr;gap:48px}.jp-method-mini{grid-template-columns:1fr 1fr;gap:16px}.jp-method-mini>i{display:none}.jp-pillars{grid-template-columns:1fr}.jp-brothers,.jp-coaching{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr;gap:34px}.footer-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:640px){
  .container{width:calc(100% - 28px)}
  .site-header .header-inner{border-radius:16px}.site-header .brand-v114{margin-left:0!important}.site-header .brand-lockup-v363{height:45px!important;gap:7px!important}.site-header .brand-mark-v363{height:43px!important}.site-header .brand-wordmark-v363{width:92px!important;flex-basis:92px!important}
  .jp-neon-hero{padding:46px 0 38px}.jp-kicker{font-size:9px;letter-spacing:.17em;margin-bottom:18px}.jp-kicker::before{width:26px}.jp-neon-hero h1{font-size:clamp(45px,13.2vw,62px);line-height:.96;margin-bottom:22px;max-width:9.8ch}.jp-neon-hero .jp-hero-text{font-size:16px;line-height:1.6}.jp-neon-hero .jp-actions{gap:12px;margin-top:28px}.jp-neon-hero .jp-actions .btn{width:100%;min-height:52px}.jp-hero-trust{display:grid;gap:10px;margin-top:20px}
  .jp-neon-visual{min-height:340px;margin-top:10px}.jp-laptop{width:94%;height:245px}.jp-laptop::before{inset:0 12px 35px;border-width:4px;border-radius:14px}.jp-laptop-screen{inset:8px 20px 43px}.jp-laptop-base{height:36px;bottom:4px}.jp-screen-logo{width:68px!important;height:118px!important;right:11%;top:13%}.jp-laptop-screen p{font-size:20px;left:7%;bottom:14%}.jp-laptop-screen::before,.jp-laptop-screen::after{height:1px}.jp-floating-card{width:58px;height:58px;border-radius:13px}.jp-icon-svg,.jp-icon-svg svg{width:31px;height:31px}.jp-float-growth{left:1%;top:8%}.jp-float-target{right:0;top:10%}.jp-float-people{left:4%;bottom:1%}.jp-float-page{right:1%;bottom:1%}
  .jp-hero-benefits{margin-top:8px}.jp-benefit-card{grid-template-columns:58px 1fr;padding:20px;gap:16px;min-height:112px}.jp-feature-icon{width:56px;height:56px;border-radius:14px;font-size:24px}.jp-benefit-card h3{font-size:19px}.jp-benefit-card p{font-size:13px}
  .jp-section{padding:78px 0}.jp-section-head{margin-bottom:38px}.jp-section-head h2{font-size:clamp(39px,11.3vw,52px);line-height:1.01;max-width:11ch}.jp-section-head>p{font-size:16px}.jp-service-grid{grid-template-columns:1fr}.jp-service-card{min-height:0;padding:24px}.jp-service-card h3,.jp-service-card h2{font-size:28px;margin-top:34px}.jp-service-card p{font-size:14px}.jp-dark{padding:78px 0}.jp-dark h2{font-size:clamp(39px,11vw,52px)}.jp-dark p{font-size:16px}.jp-method-mini{grid-template-columns:1fr;margin-top:48px}.jp-method-mini article{min-height:0}.jp-case-grid{gap:38px}.jp-stat{padding:28px}.jp-stat strong{font-size:54px}.jp-pillars article{padding:25px}.jp-pillars h3{font-size:24px}.jp-final{padding:72px 0}.jp-final h2{font-size:clamp(38px,10.6vw,50px)}.jp-page-hero{padding:72px 0 58px}.jp-page-hero h1{font-size:clamp(43px,11.8vw,58px);line-height:1}.jp-page-hero p{font-size:16px}.jp-method-list article{grid-template-columns:48px 1fr;gap:15px;padding:28px 0}.jp-method-list h2{font-size:27px}.jp-contact-grid,.jp-service-detail{gap:34px}.jp-form-card{padding:22px}.jp-form-card .form-row{grid-template-columns:1fr}.jp-callout h2{font-size:34px}.footer-nav{grid-template-columns:1fr 1fr}.site-footer{padding-top:54px}
}

/* 4.5.1 — CTA WhatsApp compatta anche su mobile */
@media(max-width:980px){
  .site-header .header-inner{position:relative}
  .header-wa-cta{display:grid!important;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border-radius:13px;margin-left:auto}
  .header-wa-cta>span:not(.header-wa-icon),.header-wa-cta>b{display:none}
  .header-wa-icon,.header-wa-icon svg{width:24px;height:24px}
  .menu-toggle{margin-left:0}
}


/* ===== JUPAZZ 4.6 — refined neon mobile experience ===== */
.header-inner-neon{display:flex;align-items:center;gap:14px;min-height:90px}
.brand-compact{flex:1 1 auto;min-width:0}
.brand-lockup-compact{display:flex!important;align-items:center;gap:12px;max-width:238px}
.brand-lockup-compact .brand-mark-v363{width:34px!important;height:auto!important;flex:0 0 34px}
.brand-lockup-compact .brand-wordmark-v363{width:138px!important;height:auto!important}
.menu-toggle-neon{display:grid!important;place-items:center;flex:0 0 52px;width:52px;height:52px;padding:0;border-radius:16px;background:rgba(22,17,5,.82)!important;border:1px solid rgba(251,199,66,.32)!important;box-shadow:0 0 0 1px rgba(255,255,255,.03) inset,0 0 24px rgba(251,193,48,.15)}
.menu-toggle-bars{display:grid;gap:5px}
.menu-toggle-bars i{display:block;width:22px;height:2.5px;border-radius:999px;background:#fff;transition:transform .22s ease,opacity .22s ease}
.menu-toggle.is-open .menu-toggle-bars i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.is-open .menu-toggle-bars i:nth-child(2){opacity:0}
.menu-toggle.is-open .menu-toggle-bars i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.site-header .header-inner{position:relative}
.site-header .main-nav{top:86px;left:24px;right:24px;background:linear-gradient(180deg,rgba(28,22,8,.98),rgba(14,11,3,.98));border:1px solid rgba(251,199,66,.28);border-radius:20px;box-shadow:0 18px 40px rgba(0,0,0,.28),0 0 22px rgba(251,193,48,.1)}
.site-header .main-nav a{color:#fff!important;font-weight:700}
.jp-wa-round svg{width:29px;height:29px;display:block;filter:drop-shadow(0 0 5px rgba(255,255,255,.18))}
.jp-results-band{padding-top:38px}
.jp-results-head{max-width:760px;margin-bottom:28px}
.jp-results-head h2{font-size:clamp(42px,6vw,68px);line-height:.98;margin-bottom:16px}
.jp-results-head em{font-style:normal;color:#fff}
.jp-results-head p{max-width:640px;color:#cec9bc}
.jp-hero-benefits{display:grid;grid-template-columns:1fr;gap:16px;max-width:980px}
.jp-benefit-card{grid-template-columns:70px 1fr 44px;gap:18px;align-items:center;padding:20px 22px;min-height:120px}
.jp-card-arrow{display:grid;place-items:center;width:38px;height:38px;border-radius:999px;border:1px solid rgba(251,198,65,.36);color:var(--jp-pink);font-weight:900;background:rgba(251,193,48,.06)}
.jp-benefit-card h3{font-size:18px;margin-bottom:6px}
.jp-benefit-card p{font-size:13px;line-height:1.45}
.jp-service-grid{grid-template-columns:1fr;gap:18px}
.jp-service-card{min-height:0!important}
.jp-service-card-body{display:grid;grid-template-columns:86px 1fr;gap:18px;align-items:flex-start}
.jp-service-icon{width:86px;height:86px;border-radius:20px;background:linear-gradient(180deg,rgba(54,42,13,.95),rgba(21,16,6,.92));border:1px solid rgba(251,198,65,.4);display:grid;place-items:center;color:#fbc949;box-shadow:0 0 28px rgba(251,193,48,.12) inset,0 12px 24px rgba(0,0,0,.22)}
.jp-service-icon svg{width:52px;height:52px;display:block}
.jp-service-copy{min-width:0}
.jp-service-card h3,.jp-service-card h2{margin-top:4px!important;margin-bottom:12px!important;font-size:clamp(32px,7.5vw,38px);line-height:1.02;letter-spacing:-.04em}
.jp-service-card p{margin-bottom:14px;font-size:16px;line-height:1.55;max-width:28ch}
.jp-service-card a{padding-bottom:2px}
.jp-service-card::after{left:132px;bottom:18px;width:44px}
.jp-hero-trust span{display:flex;align-items:center;gap:10px}
.jp-fixed-wa{position:fixed;right:22px;bottom:20px;z-index:999;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;color:#fff;background:linear-gradient(145deg,#fbc63e,#fbc743);box-shadow:0 18px 40px rgba(251,195,53,.35),0 0 0 4px rgba(255,255,255,.08);border:0}
.jp-fixed-wa svg{width:34px;height:34px;filter:drop-shadow(0 0 5px rgba(255,255,255,.2))}
.jp-fixed-wa::after{content:"✦";position:absolute;right:10px;top:6px;font-size:14px;color:#f7f2e4;opacity:.95}
@media(min-width:641px){
  .jp-hero-benefits{grid-template-columns:repeat(3,1fr)}
  .jp-service-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1024px){
  .site-header .main-nav ul{display:flex;flex-direction:column;gap:12px}
}
@media(max-width:640px){
  .site-header{padding-top:18px}
  .header-inner-neon{min-height:82px;padding:0 2px}
  .brand-lockup-compact{max-width:220px;gap:10px}
  .brand-lockup-compact .brand-mark-v363{width:32px!important;flex-basis:32px}
  .brand-lockup-compact .brand-wordmark-v363{width:130px!important}
  .menu-toggle-neon{margin-left:auto;width:50px;height:50px;border-radius:15px}
  .jp-neon-hero .jp-hero-grid{gap:18px}
  .jp-neon-hero h1{font-size:clamp(48px,13.4vw,74px);max-width:9.4ch}
  .jp-hero-text{font-size:17px;max-width:22ch}
  .jp-hero-actions{gap:14px}
  .jp-wa-button,.btn-ghost{width:100%;justify-content:center}
  .jp-hero-trust{gap:10px;font-size:14px}
  .jp-hero-trust span{line-height:1.4}
  .jp-neon-visual{min-height:370px;margin-top:6px}
  .jp-laptop{width:100%;max-width:336px;height:220px}
  .jp-laptop-screen p{font-size:18px;left:8%;bottom:12%}
  .jp-screen-logo{width:64px!important;height:110px!important}
  .jp-floating-card{width:62px;height:62px}
  .jp-icon-svg,.jp-icon-svg svg{width:32px!important;height:32px!important}
  .jp-results-band{padding-top:22px}
  .jp-results-head h2{max-width:8ch;font-size:clamp(40px,12vw,58px)}
  .jp-results-head p{font-size:16px;line-height:1.55}
  .jp-benefit-card{grid-template-columns:62px 1fr 36px;padding:18px 18px}
  .jp-feature-icon{width:58px;height:58px;border-radius:17px;font-size:26px}
  .jp-section-head h2{max-width:10ch}
  .jp-service-card{padding:20px}
  .jp-service-card-body{grid-template-columns:74px 1fr;gap:16px}
  .jp-service-icon{width:74px;height:74px;border-radius:18px}
  .jp-service-icon svg{width:44px;height:44px}
  .jp-service-card h3,.jp-service-card h2{font-size:clamp(26px,9vw,34px)}
  .jp-service-card p{font-size:15px;max-width:none}
  .jp-service-card::after{left:110px;bottom:18px}
}

/* ===== JUPAZZ STUDIO 4.8 — mockup neon fedele, responsive pulito ===== */
:root{
  --jp48-bg:#080601;
  --jp48-bg-2:#0d0a03;
  --jp48-panel:#151006;
  --jp48-pink:#fbc02d;
  --jp48-pink-soft:#fbcb50;
  --jp48-purple:#fbc335;
  --jp48-copy:#d3d0c7;
  --jp48-line:rgba(251,195,54,.52);
}
html{scroll-padding-top:112px;background:var(--jp48-bg)}
body{overflow-x:hidden;background:var(--jp48-bg)}

/* Header: barra continua, senza contenitore a pillola. */
.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  padding:0!important;
  border:0!important;
  border-bottom:1px solid rgba(251,196,57,.2)!important;
  background:rgba(9,7,1,.94)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.24),0 1px 18px rgba(251,194,51,.06)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.site-header .header-inner{
  width:min(1240px,calc(100% - 40px));
  min-height:84px!important;
  height:auto!important;
  margin-inline:auto;
  padding:9px 0!important;
  gap:22px;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.site-header .brand-compact{display:flex;align-items:center;flex:0 0 auto;min-width:0}
.site-header .brand-lockup-compact{
  display:flex!important;
  align-items:center;
  gap:9px!important;
  height:50px!important;
  max-width:none!important;
  filter:drop-shadow(0 0 9px rgba(255,255,255,.06));
}
.site-header .brand-lockup-compact .brand-mark-v363{
  width:28px!important;
  height:48px!important;
  flex:0 0 28px!important;
  object-fit:contain;
}
.site-header .brand-lockup-compact .brand-wordmark-v363{
  width:126px!important;
  height:auto!important;
  flex:0 0 126px!important;
  transform:none!important;
  opacity:1;
}
.site-header .main-nav{
  position:static;
  display:flex!important;
  align-items:center;
  margin-left:auto;
  padding:0;
  border:0;
  background:none;
  box-shadow:none;
}
.site-header .main-nav ul{
  display:flex;
  align-items:center;
  gap:21px;
  margin:0;
  padding:0;
  list-style:none;
}
.site-header .main-nav li{width:auto;margin:0;padding:0}
.site-header .main-nav a{
  display:block;
  padding:10px 0;
  color:#f6f4ef!important;
  font-size:13px;
  line-height:1.2;
  font-weight:710;
  white-space:nowrap;
}
.site-header .main-nav a::after{bottom:2px!important}
.site-header .menu-mobile-cta{display:none}
.site-header .header-wa-cta{
  flex:0 0 auto;
  min-height:46px;
  padding:0 17px;
  gap:9px;
  font-size:13px;
  border-color:rgba(236,223,189,.72);
}
.site-header .header-wa-icon,.site-header .header-wa-icon svg{width:22px;height:22px}
.site-header .menu-toggle-neon{display:none!important}

/* Home: nessun titolo viene più compresso o tagliato da max-width legacy. */
.jp-neon-home{position:relative;background:var(--jp48-bg)!important;overflow:clip}
.jp-neon-home .container{width:min(1180px,calc(100% - 44px));margin-inline:auto}
.jp-neon-home h1,.jp-neon-home h2,.jp-neon-home h3{
  overflow:visible;
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
}
.jp-neon-home .jp-title-main,.jp-neon-home .jp-title-accent{max-width:100%;overflow:visible}
.jp-neon-home .jp-title-accent{
  background-image:linear-gradient(92deg,#fbbf29 0%,#fbc130 49%,#fbc336 100%);
  filter:drop-shadow(0 0 16px rgba(251,192,45,.12));
}
.jp-neon-home .jp-kicker{
  gap:13px;
  margin-bottom:20px;
  color:#e5e1d8!important;
  font-size:10px;
  line-height:1.35;
  letter-spacing:.22em;
  white-space:normal;
}
.jp-neon-home .jp-kicker::before{
  flex:0 0 34px;
  width:34px;
  height:3px;
  border-radius:20px;
  background:linear-gradient(90deg,#fbbe26,#fbc43a);
  box-shadow:0 0 9px #fbc02d;
}

/* Hero */
.jp-neon-home .jp-neon-hero{
  position:relative;
  isolation:isolate;
  padding:64px 0 70px!important;
  overflow:hidden;
  background:
    radial-gradient(circle at 83% 24%,rgba(251,191,41,.15),transparent 25%),
    radial-gradient(circle at 18% 75%,rgba(251,194,50,.13),transparent 30%),
    linear-gradient(180deg,#080601 0%,#0d0a02 58%,#080601 100%)!important;
}
.jp-neon-home .jp-neon-hero::before{
  width:720px;
  height:720px;
  right:-420px;
  top:-360px;
  border:3px solid rgba(251,193,48,.82);
  box-shadow:0 0 26px rgba(251,193,48,.62),0 0 110px rgba(251,194,51,.25);
}
.jp-neon-home .jp-neon-hero::after{
  width:900px;
  height:220px;
  left:-220px;
  bottom:-140px;
  border-top:2px solid rgba(251,193,46,.76);
  box-shadow:0 -14px 44px rgba(251,193,46,.22);
}
.jp-neon-home .jp-neon-hero .jp-hero-grid{
  grid-template-columns:minmax(0,1.03fr) minmax(430px,.97fr);
  gap:58px;
  align-items:center;
}
.jp-neon-home .jp-hero-copy{max-width:650px;padding:6px 0 12px}
.jp-neon-home .jp-neon-hero h1{
  width:auto;
  max-width:10.9ch!important;
  margin:0 0 26px;
  font-size:clamp(58px,5.8vw,86px);
  line-height:.94;
  letter-spacing:-.058em;
}
.jp-neon-home .jp-hero-text{
  max-width:610px!important;
  margin:0;
  color:#d4d0c7!important;
  font-size:18px!important;
  line-height:1.58!important;
}
.jp-neon-home .jp-hero-actions{display:flex;gap:15px;margin-top:29px}
.jp-neon-home .jp-hero-actions .btn{
  min-height:55px;
  padding-inline:25px;
  font-size:15px;
}
.jp-neon-home .jp-wa-button{
  background:linear-gradient(100deg,#ebac0d 0%,#f7bd2a 45%,#fbc336 100%)!important;
  border-color:rgba(239,228,199,.76)!important;
  box-shadow:0 0 21px rgba(251,193,46,.5),inset 0 0 14px rgba(255,255,255,.1)!important;
}
.jp-neon-home .jp-hero-actions .btn-ghost{
  min-width:180px;
  border-color:rgba(251,195,55,.7)!important;
  background:linear-gradient(180deg,rgba(34,26,6,.58),rgba(15,12,3,.82))!important;
}
.jp-neon-home .jp-hero-trust{
  display:grid;
  grid-template-columns:1fr;
  gap:9px;
  margin-top:21px;
  color:#dbd7cf;
  font-size:13px;
}
.jp-neon-home .jp-hero-trust span{display:flex;align-items:center;gap:11px;line-height:1.35}
.jp-neon-home .jp-hero-trust span::before{
  content:"";
  width:14px;
  height:8px;
  flex:0 0 14px;
  border-left:3px solid #fbc02d;
  border-bottom:3px solid #fbc02d;
  transform:translateY(-2px) rotate(-45deg);
  filter:drop-shadow(0 0 4px rgba(251,192,45,.8));
}

/* Illustrazione hero composta da elementi separati. */
.jp-neon-home .jp-neon-visual{
  position:relative;
  min-height:510px;
  max-width:560px;
  width:100%;
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  isolation:isolate;
}
.jp-neon-home .jp-neon-visual::before{
  content:"";
  position:absolute;
  z-index:0;
  left:-10%;
  right:-10%;
  bottom:14%;
  height:150px;
  border:2px solid rgba(251,193,48,.7);
  border-radius:50%;
  transform:rotate(-8deg);
  box-shadow:0 0 14px rgba(251,193,48,.65),0 0 55px rgba(251,194,52,.28),inset 0 0 36px rgba(251,193,48,.08);
}
.jp-neon-home .jp-neon-visual::after{
  content:"";
  position:absolute;
  z-index:0;
  inset:20% -2% 8%;
  background:
    radial-gradient(circle at 12% 76%,#fbc43a 0 1.2px,transparent 2px),
    radial-gradient(circle at 27% 31%,#fbc742 0 1px,transparent 2px),
    radial-gradient(circle at 77% 18%,#fbc846 0 1.2px,transparent 2px),
    radial-gradient(circle at 91% 70%,#fbc846 0 1px,transparent 2px);
  filter:drop-shadow(0 0 5px #fbc233);
}
.jp-neon-home .jp-laptop{
  z-index:2;
  width:min(500px,88%);
  height:322px;
  transform:perspective(1200px) rotateY(-3deg) rotateX(1deg);
}
.jp-neon-home .jp-laptop::before{
  inset:0 18px 42px;
  border:5px solid #32270c;
  border-radius:18px;
  background:#050402;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 0 34px rgba(251,195,53,.22),0 28px 58px rgba(0,0,0,.42);
}
.jp-neon-home .jp-laptop-screen{
  inset:9px 27px 51px;
  background:
    radial-gradient(circle at 73% 37%,rgba(251,194,49,.28),transparent 23%),
    radial-gradient(circle at 20% 80%,rgba(251,195,53,.22),transparent 32%),
    linear-gradient(145deg,#070501,#171104 48%,#291e05 75%,#0b0802);
}
.jp-neon-home .jp-laptop-screen::before,.jp-neon-home .jp-laptop-screen::after{height:2px;opacity:.95}
.jp-neon-home .jp-screen-logo{right:14%;top:12%;width:88px!important;height:155px!important}
.jp-neon-home .jp-laptop-screen p{left:8%;bottom:15%;font-size:27px;line-height:1.05}
.jp-neon-home .jp-laptop-base{
  left:-8%;
  right:-8%;
  height:45px;
  bottom:7px;
  border-radius:5px 5px 24px 24px;
  background:linear-gradient(180deg,#c89921 0%,#382c0d 28%,#151107 72%,#0b0903 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.32),0 14px 30px rgba(0,0,0,.66),0 0 18px rgba(251,194,51,.13);
}
.jp-neon-home .jp-floating-card{
  z-index:5;
  width:82px;
  height:82px;
  padding:13px;
  border-radius:17px;
  border:1px solid rgba(251,196,56,.68);
  background:linear-gradient(150deg,rgba(40,31,8,.95),rgba(13,10,3,.96));
  box-shadow:inset 0 0 19px rgba(251,193,48,.09),0 13px 28px rgba(0,0,0,.46),0 0 18px rgba(251,193,48,.2);
  backdrop-filter:blur(8px);
}
.jp-neon-home .jp-floating-card img{width:100%;height:100%;object-fit:contain}
.jp-neon-home .jp-float-growth{left:1%;top:10%;transform:rotate(-6deg)}
.jp-neon-home .jp-float-target{right:0;top:13%;transform:rotate(6deg)}
.jp-neon-home .jp-float-people{left:5%;bottom:7%;transform:rotate(3deg)}
.jp-neon-home .jp-float-page{right:-1%;bottom:8%;transform:rotate(5deg)}

/* Risultati */
.jp-neon-home .jp-results-band{
  padding:96px 0!important;
  background:
    radial-gradient(circle at 96% 0%,rgba(245,189,48,.13),transparent 27%),
    linear-gradient(180deg,#080601,#0c0a02 52%,#080601)!important;
}
.jp-neon-home .jp-results-head{max-width:780px;margin-bottom:32px}
.jp-neon-home .jp-results-head h2{
  max-width:none!important;
  margin:0 0 18px;
  font-size:clamp(48px,5.1vw,68px);
  line-height:.98;
  letter-spacing:-.052em;
}
.jp-neon-home .jp-results-head h2 em{display:inline;font-style:normal;color:#fff}
.jp-neon-home .jp-results-head p{max-width:700px;font-size:17px;line-height:1.58;color:#d2cfc6!important}
.jp-neon-home .jp-hero-benefits{
  max-width:none;
  margin:0;
  padding:0;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
}
.jp-neon-home .jp-benefit-card{
  grid-template-columns:68px minmax(0,1fr) 36px;
  gap:16px;
  min-height:130px;
  padding:18px 18px;
  overflow:hidden;
  border:1px solid rgba(251,195,53,.48);
  border-radius:21px;
  background:linear-gradient(145deg,rgba(27,21,6,.94),rgba(10,8,2,.98));
  box-shadow:inset 0 0 28px rgba(251,193,48,.025),0 18px 42px rgba(0,0,0,.22);
}
.jp-neon-home .jp-feature-icon{
  width:68px;
  height:68px;
  padding:10px;
  border-radius:17px;
  border:1px solid rgba(251,196,58,.7);
  background:linear-gradient(155deg,rgba(79,59,10,.72),rgba(23,17,4,.93));
  box-shadow:inset 0 0 22px rgba(251,193,48,.12),0 0 18px rgba(251,193,48,.12);
}
.jp-neon-home .jp-feature-icon img{width:100%;height:100%;object-fit:contain}
.jp-neon-home .jp-benefit-card h3{margin:0 0 6px;font-size:20px;line-height:1.1;letter-spacing:-.03em}
.jp-neon-home .jp-benefit-card p{margin:0;font-size:13px;line-height:1.48;color:#ccc8bf!important}
.jp-neon-home .jp-card-arrow{
  width:34px;
  height:34px;
  border-color:rgba(251,195,53,.65);
  color:#fbc336;
  background:rgba(251,193,48,.08);
  box-shadow:0 0 12px rgba(251,193,48,.12);
}

/* Servizi: ogni card usa la propria illustrazione SVG. */
.jp-neon-home .jp-services-section{
  padding:100px 0 108px!important;
  background:
    radial-gradient(circle at 0% 50%,rgba(251,194,51,.08),transparent 28%),
    linear-gradient(180deg,#080601,#0e0b02 55%,#080601)!important;
}
.jp-neon-home .jp-services-section .jp-section-head{max-width:850px;margin-bottom:38px}
.jp-neon-home .jp-section-head h2{
  max-width:none!important;
  margin:0 0 18px;
  font-size:clamp(48px,5.15vw,70px);
  line-height:.98;
  letter-spacing:-.052em;
}
.jp-neon-home .jp-section-head>p{max-width:690px;font-size:17px;line-height:1.58;color:#d2cfc6!important}
.jp-neon-home .jp-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.jp-neon-home .jp-service-card{
  position:relative;
  min-height:230px!important;
  padding:21px 22px 23px!important;
  border:1px solid rgba(251,195,55,.45)!important;
  border-radius:21px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(28,22,6,.95),rgba(10,8,2,.99))!important;
  box-shadow:inset 0 0 30px rgba(251,194,50,.025),0 18px 42px rgba(0,0,0,.2);
}
.jp-neon-home .jp-service-card::before{
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  left:-70px;
  top:-70px;
  border-radius:50%;
  background:rgba(251,194,50,.07);
  filter:blur(30px);
}
.jp-neon-home .jp-service-card::after{
  left:127px;
  bottom:17px;
  width:42px;
  height:3px;
  border-radius:20px;
}
.jp-neon-home .jp-service-card-body{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:86px minmax(0,1fr);
  gap:20px;
  align-items:center;
  min-height:184px;
}
.jp-neon-home .jp-service-icon{
  width:86px;
  height:86px;
  padding:13px;
  border-radius:19px;
  border:1px solid rgba(251,196,56,.66);
  background:linear-gradient(150deg,rgba(71,53,9,.72),rgba(21,16,4,.95));
  box-shadow:inset 0 0 23px rgba(251,193,48,.12),0 9px 22px rgba(0,0,0,.32),0 0 17px rgba(251,193,48,.11);
}
.jp-neon-home .jp-service-icon img{width:100%;height:100%;object-fit:contain}
.jp-neon-home .jp-service-copy{min-width:0;padding-right:3px}
.jp-neon-home .jp-service-no{
  display:block;
  margin:0 0 5px;
  color:#fbc742!important;
  font-size:10px;
  line-height:1;
  letter-spacing:.16em;
  font-weight:850;
}
.jp-neon-home .jp-service-card h3{
  max-width:100%;
  margin:0 0 9px!important;
  font-size:27px!important;
  line-height:1.04;
  letter-spacing:-.04em;
}
.jp-neon-home .jp-service-card p{
  max-width:36ch;
  margin:0 0 10px;
  color:#ccc8bd!important;
  font-size:14px;
  line-height:1.48;
}
.jp-neon-home .jp-service-card a{display:inline-flex;align-items:center;gap:7px;padding:0;color:#fff!important;font-size:14px;font-weight:800}
.jp-neon-home .jp-service-card a b{color:#fbc232;font-size:20px;line-height:1}
.jp-neon-home .jp-price{
  position:absolute;
  z-index:5;
  top:15px;
  right:15px;
  padding:7px 13px;
  border:1px solid rgba(251,195,54,.68);
  border-radius:999px;
  background:rgba(251,193,46,.1)!important;
  color:#fbc94b!important;
  font-size:12px;
  line-height:1;
  font-weight:800;
  box-shadow:inset 0 0 12px rgba(251,194,49,.08);
}

/* Pulsante WhatsApp sospeso coerente con il mockup. */
.jp-fixed-wa{
  right:max(16px,env(safe-area-inset-right));
  bottom:max(16px,env(safe-area-inset-bottom));
  width:61px;
  height:61px;
  color:#fff;
  border:1px solid rgba(241,230,204,.78);
  background:linear-gradient(145deg,#eebb38 0%,#fbc02c 54%,#fbc640 100%);
  box-shadow:0 13px 34px rgba(251,192,44,.4),0 0 22px rgba(251,192,44,.35),inset 0 0 15px rgba(255,255,255,.16);
}
.jp-fixed-wa::after{content:none}
.jp-fixed-wa svg{width:30px;height:30px}

@media(max-width:1120px) and (min-width:981px){
  .site-header .header-inner{gap:17px}
  .site-header .main-nav ul{gap:16px}
  .site-header .main-nav a{font-size:12px}
  .site-header .header-wa-cta{display:none!important}
  .jp-neon-home .jp-neon-hero .jp-hero-grid{grid-template-columns:minmax(0,1fr) 430px;gap:30px}
  .jp-neon-home .jp-neon-hero h1{font-size:clamp(54px,6vw,70px)}
}

@media(max-width:980px){
  html{scroll-padding-top:100px}
  body.jp-menu-open{overflow:hidden}
  .site-header{
    padding:0!important;
    background:rgba(9,7,1,.96)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    backdrop-filter:blur(18px)!important;
  }
  .site-header .header-inner{
    width:min(760px,100%);
    min-height:76px!important;
    padding:9px 20px!important;
    gap:12px;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .site-header .brand-compact{flex:1 1 auto}
  .site-header .brand-lockup-compact{height:50px!important;gap:8px!important}
  .site-header .brand-lockup-compact .brand-mark-v363{width:27px!important;height:47px!important;flex-basis:27px!important}
  .site-header .brand-lockup-compact .brand-wordmark-v363{width:120px!important;flex-basis:120px!important}
  .site-header .header-wa-cta{display:none!important}
  .site-header .menu-toggle-neon{
    display:grid!important;
    flex:0 0 50px;
    width:50px;
    height:50px;
    margin-left:auto;
    padding:0;
    border:1px solid rgba(251,196,59,.52)!important;
    border-radius:15px;
    background:linear-gradient(145deg,rgba(31,24,7,.94),rgba(12,10,2,.98))!important;
    box-shadow:inset 0 0 16px rgba(251,194,50,.05),0 0 16px rgba(251,194,50,.12);
  }
  .site-header .menu-toggle-bars{gap:5px}
  .site-header .menu-toggle-bars i{width:22px;height:2px}
  .site-header .main-nav{
    position:absolute;
    top:calc(100% + 8px);
    left:16px;
    right:16px;
    z-index:100;
    display:none!important;
    max-height:calc(100vh - 118px);
    margin:0;
    padding:12px;
    overflow:auto;
    border:1px solid rgba(251,197,61,.52);
    border-radius:18px;
    background:linear-gradient(160deg,rgba(26,20,6,.995),rgba(9,7,1,.995));
    box-shadow:0 22px 50px rgba(0,0,0,.58),0 0 22px rgba(251,193,46,.12);
  }
  .site-header .main-nav.is-open{display:block!important}
  .site-header .main-nav ul{display:grid;grid-template-columns:1fr;gap:2px;width:100%}
  .site-header .main-nav li{width:100%}
  .site-header .main-nav a{
    width:100%;
    padding:12px 13px;
    border-radius:10px;
    color:#fff!important;
    font-size:14px;
    line-height:1.25;
  }
  .site-header .main-nav a:hover,.site-header .main-nav a:focus-visible{background:rgba(255,255,255,.05)}
  .site-header .main-nav a::after{display:none}
  .site-header .menu-mobile-cta{display:block;margin-top:7px}
  .site-header .menu-mobile-cta a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    background:linear-gradient(100deg,#ebac0d,#f7bd2a 48%,#fbc438)!important;
    border:1px solid rgba(238,226,195,.7);
    border-radius:999px;
    box-shadow:0 0 18px rgba(251,193,47,.3);
  }

  .jp-neon-home .container{width:min(760px,calc(100% - 34px))}
  .jp-neon-home .jp-neon-hero{padding:43px 0 58px!important}
  .jp-neon-home .jp-neon-hero .jp-hero-grid{grid-template-columns:1fr;gap:20px}
  .jp-neon-home .jp-hero-copy{max-width:720px;padding:0}
  .jp-neon-home .jp-neon-hero h1{max-width:10.8ch!important;font-size:clamp(52px,10.5vw,74px)}
  .jp-neon-home .jp-hero-text{max-width:670px!important}
  .jp-neon-home .jp-neon-visual{min-height:455px;max-width:630px;margin:5px auto 0}
  .jp-neon-home .jp-laptop{width:min(520px,86%);height:330px}
  .jp-neon-home .jp-hero-benefits{grid-template-columns:1fr;max-width:760px}
  .jp-neon-home .jp-benefit-card{min-height:118px}
  .jp-neon-home .jp-service-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  .site-header{padding:0!important}
  .site-header .header-inner{width:100%;min-height:76px!important;padding:9px 20px!important;border-radius:0!important}
  .site-header .brand-lockup-compact{height:48px!important}
  .site-header .brand-lockup-compact .brand-mark-v363{width:26px!important;height:45px!important;flex-basis:26px!important}
  .site-header .brand-lockup-compact .brand-wordmark-v363{width:116px!important;flex-basis:116px!important}
  .site-header .menu-toggle-neon{width:48px;height:48px;flex-basis:48px;border-radius:14px}

  .jp-neon-home .container{width:calc(100% - 34px)}
  .jp-neon-home .jp-kicker{gap:11px;margin-bottom:17px;font-size:9px;letter-spacing:.18em}
  .jp-neon-home .jp-kicker::before{width:27px;flex-basis:27px;height:3px}
  .jp-neon-home .jp-neon-hero{padding:35px 0 43px!important}
  .jp-neon-home .jp-neon-hero .jp-hero-grid{gap:17px}
  .jp-neon-home .jp-neon-hero h1{
    max-width:100%!important;
    margin-bottom:22px;
    font-size:clamp(45px,12.6vw,57px);
    line-height:.95;
    letter-spacing:-.058em;
  }
  .jp-neon-home .jp-neon-hero h1 .jp-title-main{max-width:9.6ch}
  .jp-neon-home .jp-neon-hero h1 .jp-title-accent{max-width:9.7ch}
  .jp-neon-home .jp-hero-text{max-width:none!important;font-size:16px!important;line-height:1.56!important}
  .jp-neon-home .jp-hero-actions{display:grid;grid-template-columns:1fr;gap:11px;margin-top:25px}
  .jp-neon-home .jp-hero-actions .btn{width:100%;min-height:54px;padding:0 17px;font-size:15px}
  .jp-neon-home .jp-hero-actions .jp-wa-button{min-height:58px}
  .jp-neon-home .jp-hero-trust{gap:9px;margin-top:19px;font-size:13px}
  .jp-neon-home .jp-hero-trust span{gap:10px}

  .jp-neon-home .jp-neon-visual{min-height:330px;margin-top:0}
  .jp-neon-home .jp-neon-visual::before{left:-18%;right:-18%;bottom:13%;height:104px;border-width:1.5px}
  .jp-neon-home .jp-laptop{width:100%;max-width:322px;height:211px}
  .jp-neon-home .jp-laptop::before{inset:0 11px 33px;border-width:4px;border-radius:14px}
  .jp-neon-home .jp-laptop-camera{top:6px}
  .jp-neon-home .jp-laptop-screen{inset:7px 18px 40px;border-radius:9px}
  .jp-neon-home .jp-screen-logo{right:12%;top:11%;width:58px!important;height:105px!important}
  .jp-neon-home .jp-laptop-screen p{left:7%;bottom:14%;font-size:18px}
  .jp-neon-home .jp-screen-line{left:7%;bottom:9%;width:34px}
  .jp-neon-home .jp-laptop-base{left:-7%;right:-7%;height:34px;bottom:4px;border-radius:4px 4px 18px 18px}
  .jp-neon-home .jp-laptop-base::after{width:78px;height:5px}
  .jp-neon-home .jp-floating-card{width:62px;height:62px;padding:9px;border-radius:14px}
  .jp-neon-home .jp-float-growth{left:0;top:10%}
  .jp-neon-home .jp-float-target{right:0;top:13%}
  .jp-neon-home .jp-float-people{left:3%;bottom:3%}
  .jp-neon-home .jp-float-page{right:0;bottom:3%}

  .jp-neon-home .jp-results-band{padding:72px 0 76px!important}
  .jp-neon-home .jp-results-head{margin-bottom:28px}
  .jp-neon-home .jp-results-head h2{
    max-width:100%!important;
    margin-bottom:16px;
    font-size:clamp(39px,11vw,49px);
    line-height:.99;
  }
  .jp-neon-home .jp-results-head h2 em{display:block}
  .jp-neon-home .jp-results-head p{font-size:16px;line-height:1.53}
  .jp-neon-home .jp-hero-benefits{gap:11px}
  .jp-neon-home .jp-benefit-card{
    grid-template-columns:62px minmax(0,1fr) 34px;
    gap:14px;
    min-height:110px;
    padding:14px 14px;
    border-radius:18px;
  }
  .jp-neon-home .jp-feature-icon{width:62px;height:62px;padding:9px;border-radius:15px}
  .jp-neon-home .jp-benefit-card h3{font-size:19px}
  .jp-neon-home .jp-benefit-card p{font-size:12.5px;line-height:1.43}
  .jp-neon-home .jp-card-arrow{width:33px;height:33px}

  .jp-neon-home .jp-services-section{padding:74px 0 82px!important}
  .jp-neon-home .jp-services-section .jp-section-head{margin-bottom:29px}
  .jp-neon-home .jp-section-head h2{max-width:100%!important;font-size:clamp(39px,11vw,49px);line-height:1}
  .jp-neon-home .jp-section-head>p{font-size:16px;line-height:1.52}
  .jp-neon-home .jp-service-grid{gap:11px}
  .jp-neon-home .jp-service-card{min-height:0!important;padding:15px 14px 17px!important;border-radius:18px}
  .jp-neon-home .jp-service-card::after{left:104px;bottom:13px;width:35px}
  .jp-neon-home .jp-service-card-body{grid-template-columns:75px minmax(0,1fr);gap:14px;min-height:150px;align-items:center}
  .jp-neon-home .jp-service-icon{width:75px;height:75px;padding:10px;border-radius:17px}
  .jp-neon-home .jp-service-no{margin-bottom:4px;font-size:9px}
  .jp-neon-home .jp-service-card h3{max-width:calc(100% - 4px);margin-bottom:7px!important;font-size:25px!important;line-height:1.02}
  .jp-neon-home .jp-service-card p{margin-bottom:7px;font-size:13px;line-height:1.43}
  .jp-neon-home .jp-service-card a{font-size:13px}
  .jp-neon-home .jp-price{top:12px;right:12px;padding:6px 11px;font-size:11px}

  .jp-fixed-wa{right:max(13px,env(safe-area-inset-right));bottom:max(13px,env(safe-area-inset-bottom));width:57px;height:57px}
  .jp-fixed-wa svg{width:28px;height:28px}
}

@media(max-width:374px){
  .site-header .brand-lockup-compact .brand-wordmark-v363{width:106px!important;flex-basis:106px!important}
  .jp-neon-home .container{width:calc(100% - 28px)}
  .jp-neon-home .jp-neon-hero h1{font-size:43px}
  .jp-neon-home .jp-benefit-card{grid-template-columns:56px minmax(0,1fr) 30px;gap:11px;padding:13px 12px}
  .jp-neon-home .jp-feature-icon{width:56px;height:56px}
  .jp-neon-home .jp-benefit-card h3{font-size:17px}
  .jp-neon-home .jp-benefit-card p{font-size:12px}
  .jp-neon-home .jp-card-arrow{width:30px;height:30px}
  .jp-neon-home .jp-service-card-body{grid-template-columns:68px minmax(0,1fr);gap:12px}
  .jp-neon-home .jp-service-icon{width:68px;height:68px}
  .jp-neon-home .jp-service-card h3{font-size:22px!important}
  .jp-neon-home .jp-service-card p{font-size:12.5px}
  .jp-neon-home .jp-service-card::after{left:94px}
}

/* 4.12 — override conclusivo contro le vecchie regole bordeaux dell'header. */
html body .site-header{
  padding:0!important;
  border:0!important;
  border-bottom:1px solid rgba(251,196,57,.2)!important;
  background:rgba(9,7,1,.96)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.24),0 1px 18px rgba(251,194,51,.06)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
}
html body .site-header .header-inner{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

@media(max-width:980px){
  html body .site-header .header-inner{
    width:min(760px,100%)!important;
    max-width:760px!important;
    min-height:76px!important;
    height:auto!important;
    margin-inline:auto!important;
    padding:9px 20px!important;
  }
  html body .site-header .main-nav{
    top:calc(100% + 8px)!important;
    left:16px!important;
    right:16px!important;
    padding:14px!important;
    border:1px solid rgba(251,197,61,.52)!important;
    border-radius:18px!important;
    background:linear-gradient(160deg,rgba(26,20,6,.995),rgba(9,7,1,.995))!important;
    box-shadow:0 22px 50px rgba(0,0,0,.58),0 0 24px rgba(251,193,46,.14)!important;
  }
  html body .site-header .main-nav.is-open{display:block!important}
  html body .jp-wa-round svg{width:29px!important;height:29px!important}
  html body .jp-fixed-wa svg{width:32px!important;height:32px!important}
}

/* ===== 4.13 — gerarchia visiva, icone semantiche e titoli senza tagli ===== */

/* Il line-height precedente era più basso dei discendenti reali del font: la “g”
   di marketing veniva coperta dalla riga successiva su Safari mobile. */
html body .jp-neon-home .jp-neon-hero h1{
  line-height:1.035!important;
  padding-bottom:.04em;
}
html body .jp-new .jp-title-main,
html body .jp-new .jp-title-accent{
  overflow:visible!important;
}
html body .jp-new .jp-page-hero h1{
  line-height:1.04!important;
  padding-bottom:.035em;
}

/* I numeri erano etichette decorative, non informazioni. */
html body .jp-service-no{display:none!important}

/* Più luce senza perdere leggibilità: il bagliore resta confinato alle grafiche. */
.jp-service-icon img,
.jp-feature-icon img,
.jp-floating-card img,
.jp-method-icon img,
.jp-method-list-icon img,
.jp-pillar-icon img,
.jp-coaching-icon img,
.jp-service-hero-icon img,
.jp-list-icon img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:
    saturate(1.28)
    brightness(1.14)
    drop-shadow(0 0 4px rgba(251,197,60,.92))
    drop-shadow(0 0 11px rgba(251,196,57,.48));
}
.jp-service-icon,
.jp-feature-icon,
.jp-floating-card,
.jp-method-icon,
.jp-method-list-icon,
.jp-pillar-icon,
.jp-coaching-icon,
.jp-service-hero-icon,
.jp-list-icon{
  position:relative;
  isolation:isolate;
}
.jp-service-icon::after,
.jp-feature-icon::after,
.jp-method-icon::after,
.jp-method-list-icon::after,
.jp-pillar-icon::after,
.jp-coaching-icon::after,
.jp-service-hero-icon::after,
.jp-list-icon::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:44%;
  height:44%;
  right:8%;
  top:7%;
  border-radius:50%;
  background:rgba(251,203,80,.22);
  filter:blur(11px);
  pointer-events:none;
}
.jp-service-icon,
.jp-feature-icon{
  border-color:rgba(251,199,69,.86)!important;
  background:
    radial-gradient(circle at 72% 23%,rgba(251,201,75,.19),transparent 29%),
    linear-gradient(150deg,rgba(86,64,10,.82),rgba(20,15,3,.97))!important;
  box-shadow:
    inset 0 0 26px rgba(251,194,51,.17),
    0 0 21px rgba(251,194,51,.22),
    0 12px 27px rgba(0,0,0,.34)!important;
}
.jp-service-card:hover .jp-service-icon,
.jp-benefit-card:hover .jp-feature-icon{
  transform:translateY(-2px) scale(1.025);
  box-shadow:
    inset 0 0 28px rgba(251,194,51,.22),
    0 0 30px rgba(251,194,51,.35),
    0 14px 30px rgba(0,0,0,.38)!important;
}

/* Anche i tre punti rapidi della hero diventano un elenco visivo coerente. */
.jp-hero-trust span::before{
  content:"✓";
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  flex:0 0 22px;
  border:1px solid rgba(251,197,60,.72);
  border-radius:7px;
  color:#fbc949;
  background:linear-gradient(145deg,rgba(71,53,8,.9),rgba(18,14,4,.96));
  box-shadow:inset 0 0 10px rgba(251,195,54,.13),0 0 11px rgba(251,194,51,.2);
  font-size:13px;
  font-weight:900;
  line-height:1;
}

/* Pagina Servizi: lo stesso componente illustrato della Home. */
.jp-services-page .jp-services-catalogue{
  background:
    radial-gradient(circle at 0% 34%,rgba(251,194,51,.09),transparent 27%),
    radial-gradient(circle at 100% 78%,rgba(251,193,47,.08),transparent 30%),
    linear-gradient(180deg,#080601,#0e0b02 55%,#080601)!important;
}
.jp-services-page .jp-service-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.jp-services-page .jp-service-card{
  min-height:230px!important;
  padding:21px 22px 23px!important;
  border:1px solid rgba(251,195,55,.48)!important;
  border-radius:21px;
  background:linear-gradient(145deg,rgba(28,22,6,.96),rgba(10,8,2,.99))!important;
  box-shadow:inset 0 0 30px rgba(251,194,50,.035),0 18px 42px rgba(0,0,0,.22);
}
.jp-services-page .jp-service-card::before{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  left:-76px;
  top:-76px;
  border-radius:50%;
  background:rgba(251,194,50,.075);
  filter:blur(31px);
}
.jp-services-page .jp-service-card::after{
  left:128px;
  bottom:17px;
  width:43px;
  height:3px;
  border-radius:20px;
}
.jp-services-page .jp-service-card-body{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:86px minmax(0,1fr);
  gap:20px;
  align-items:center;
  min-height:184px;
}
.jp-services-page .jp-service-icon{
  width:86px;
  height:86px;
  padding:13px;
  border:1px solid rgba(251,196,56,.72);
  border-radius:19px;
}
.jp-services-page .jp-service-copy{min-width:0;padding-right:3px}
.jp-services-page .jp-service-card h2{
  max-width:100%;
  margin:0 0 9px!important;
  font-size:27px!important;
  line-height:1.04;
  letter-spacing:-.04em;
}
.jp-services-page .jp-service-card p{
  max-width:38ch;
  margin:0 0 10px;
  color:#ccc8bd!important;
  font-size:14px;
  line-height:1.48;
}
.jp-services-page .jp-service-card a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0;
  padding:0;
  color:#fff!important;
  font-size:14px;
  font-weight:800;
}
.jp-services-page .jp-service-card a b{color:#fbc232;font-size:20px;line-height:1}
.jp-services-page .jp-price{
  position:absolute;
  z-index:5;
  top:15px;
  right:15px;
  padding:7px 13px;
  border:1px solid rgba(251,195,54,.72);
  border-radius:999px;
  background:rgba(251,193,46,.11)!important;
  color:#fbcb4f!important;
  font-size:12px;
  line-height:1;
  font-weight:800;
  box-shadow:inset 0 0 12px rgba(251,194,49,.1),0 0 13px rgba(251,194,49,.11);
}

/* Grafica identificativa in ogni pagina servizio. */
.jp-service-hero{overflow:hidden}
.jp-service-hero-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:70px;
  align-items:center;
}
.jp-service-hero-copy{max-width:820px}
.jp-service-hero-copy h1 em{
  color:transparent;
  font-style:normal;
  background:linear-gradient(90deg,#fbc232,#fbc43a);
  background-clip:text;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
.jp-service-hero-copy .jp-actions{margin-top:31px;align-items:center}
.jp-service-hero-art{
  position:relative;
  display:grid;
  place-items:center;
  width:330px;
  height:330px;
  justify-self:end;
}
.jp-service-hero-art::before{
  content:"";
  position:absolute;
  inset:28px;
  border:1px solid rgba(251,197,61,.55);
  border-radius:42% 58% 55% 45% / 48% 40% 60% 52%;
  transform:rotate(18deg);
  box-shadow:0 0 28px rgba(251,194,50,.23),inset 0 0 35px rgba(251,196,56,.08);
}
.jp-service-hero-orbit{
  position:absolute;
  width:318px;
  height:122px;
  border:2px solid rgba(251,197,60,.52);
  border-radius:50%;
  transform:rotate(-18deg);
  box-shadow:0 0 18px rgba(251,194,51,.32);
}
.jp-service-hero-icon{
  width:168px;
  height:168px;
  padding:29px;
  border:1px solid rgba(251,201,72,.82);
  border-radius:38px;
  background:
    radial-gradient(circle at 75% 20%,rgba(251,201,75,.24),transparent 31%),
    linear-gradient(145deg,rgba(67,51,8,.97),rgba(15,12,3,.99));
  box-shadow:
    inset 0 0 38px rgba(251,194,50,.17),
    0 24px 55px rgba(0,0,0,.45),
    0 0 36px rgba(251,194,50,.28);
  transform:rotate(-4deg);
}

/* Le voci degli elenchi sono mini-card, ciascuna con un simbolo semantico. */
.jp-includes{padding:31px!important}
.jp-includes>span{display:block;margin-bottom:18px}
.jp-includes ul{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0!important;
}
.jp-includes li{
  display:flex;
  align-items:center;
  gap:11px;
  min-height:61px;
  margin:0;
  padding:9px 10px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  border-radius:13px;
  background:rgba(255,255,255,.025);
  color:#e4e1da!important;
  line-height:1.32;
}
.jp-includes li::before{content:none!important}
.jp-list-icon{
  display:grid;
  place-items:center;
  width:39px;
  height:39px;
  flex:0 0 39px;
  padding:7px;
  border:1px solid rgba(251,198,63,.57);
  border-radius:11px;
  background:linear-gradient(145deg,rgba(69,52,8,.8),rgba(18,14,3,.95));
  box-shadow:inset 0 0 13px rgba(251,195,52,.1),0 0 12px rgba(251,194,50,.1);
}

/* Metodo e valori: icone al posto dei piccoli numeri ornamentali. */
.jp-method-mini .jp-method-icon,
.jp-method-list-icon,
.jp-pillar-icon,
.jp-coaching-icon{
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(251,198,63,.66)!important;
  background:
    radial-gradient(circle at 70% 20%,rgba(251,202,78,.17),transparent 31%),
    linear-gradient(145deg,rgba(70,53,8,.88),rgba(17,13,3,.97))!important;
  box-shadow:inset 0 0 18px rgba(251,195,52,.12),0 0 18px rgba(251,194,50,.16)!important;
}
.jp-method-mini .jp-method-icon{
  width:50px!important;
  height:50px!important;
  padding:8px;
  border-radius:14px!important;
}
.jp-method-mini b{margin-top:14px}
.jp-method-list{display:grid;gap:13px}
.jp-method-list article{
  grid-template-columns:68px minmax(0,1fr)!important;
  align-items:center;
  gap:23px!important;
  padding:22px!important;
  border:1px solid rgba(251,197,59,.22)!important;
  border-radius:19px;
  background:linear-gradient(145deg,rgba(29,23,7,.76),rgba(11,9,2,.82));
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.jp-method-list article:hover{
  transform:translateY(-2px);
  border-color:rgba(251,198,65,.46)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.22),0 0 20px rgba(251,194,50,.08);
}
.jp-method-list-icon{
  width:64px;
  height:64px;
  padding:11px;
  border-radius:16px;
}
.jp-method-list h2{margin:0 0 6px!important;font-size:30px!important}
.jp-method-list p{margin:0!important}
.jp-pillar-icon,
.jp-coaching-icon{
  width:62px;
  height:62px;
  padding:10px;
  border-radius:16px;
}
.jp-pillars article{overflow:hidden}
.jp-pillars h3{margin-top:18px!important}
.jp-coaching h2{margin-top:19px}

@media(prefers-reduced-motion:no-preference){
  .jp-service-hero-icon{animation:jp413-icon-float 5s ease-in-out infinite}
}
@keyframes jp413-icon-float{
  0%,100%{transform:translateY(0) rotate(-4deg)}
  50%{transform:translateY(-7px) rotate(-2deg)}
}

@media(max-width:980px){
  .jp-services-page .jp-service-grid{grid-template-columns:1fr}
  .jp-service-hero-layout{grid-template-columns:minmax(0,1fr) 245px;gap:28px}
  .jp-service-hero-art{width:235px;height:235px}
  .jp-service-hero-orbit{width:226px;height:90px}
  .jp-service-hero-icon{width:125px;height:125px;padding:22px;border-radius:29px}
}

@media(max-width:640px){
  html body .jp-neon-home .jp-neon-hero h1{
    line-height:1.04!important;
    padding-bottom:.07em;
  }
  .jp-services-page .jp-service-grid{gap:11px}
  .jp-services-page .jp-service-card{min-height:0!important;padding:15px 14px 17px!important;border-radius:18px}
  .jp-services-page .jp-service-card::after{left:104px;bottom:13px;width:35px}
  .jp-services-page .jp-service-card-body{grid-template-columns:75px minmax(0,1fr);gap:14px;min-height:150px}
  .jp-services-page .jp-service-icon{width:75px;height:75px;padding:10px;border-radius:17px}
  .jp-services-page .jp-service-card h2{margin-bottom:7px!important;font-size:25px!important;line-height:1.02}
  .jp-services-page .jp-service-card p{margin-bottom:7px;font-size:13px;line-height:1.43}
  .jp-services-page .jp-service-card a{font-size:13px}
  .jp-services-page .jp-price{top:12px;right:12px;padding:6px 11px;font-size:11px}

  .jp-service-hero-layout{grid-template-columns:1fr;gap:25px}
  .jp-service-hero-art{width:210px;height:178px;justify-self:center}
  .jp-service-hero-art::before{inset:11px 27px}
  .jp-service-hero-orbit{width:205px;height:73px}
  .jp-service-hero-icon{width:108px;height:108px;padding:19px;border-radius:25px}
  .jp-service-hero-copy .jp-actions{display:grid;grid-template-columns:1fr;gap:18px}
  .jp-service-hero-copy .jp-actions .btn{width:100%}

  .jp-includes{padding:20px 17px!important}
  .jp-includes ul{grid-template-columns:1fr;gap:8px}
  .jp-includes li{min-height:57px;padding:8px 9px!important;font-size:14px}
  .jp-list-icon{width:37px;height:37px;flex-basis:37px;padding:7px}

  .jp-method-list{gap:10px}
  .jp-method-list article{grid-template-columns:54px minmax(0,1fr)!important;gap:15px!important;padding:16px 14px!important}
  .jp-method-list-icon{width:52px;height:52px;padding:9px;border-radius:14px}
  .jp-method-list h2{font-size:23px!important;line-height:1.08}
  .jp-method-list p{font-size:14px!important;line-height:1.48}
  .jp-pillar-icon,.jp-coaching-icon{width:56px;height:56px}
}

@media(max-width:374px){
  .jp-services-page .jp-service-card-body{grid-template-columns:68px minmax(0,1fr);gap:12px}
  .jp-services-page .jp-service-icon{width:68px;height:68px}
  .jp-services-page .jp-service-card h2{font-size:22px!important}
  .jp-services-page .jp-service-card p{font-size:12.5px}
  .jp-services-page .jp-service-card::after{left:94px}
}

/* ===== 4.14 — fix definitivo ritaglio titoli + SVG nitidi ===== */

/* I vecchi strati del tema applicavano overflow e line-height troppo aggressivi.
   Il fix è globale perché il difetto coinvolge hero, sezioni, card e pagine interne. */
html body .jp-new,
html body .jp-neon-home{
  overflow:visible!important;
  overflow-x:clip!important;
}
html body .jp-new h1,
html body .jp-new h2,
html body .jp-new h3{
  max-height:none!important;
  min-width:0;
  overflow:visible!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  white-space:normal!important;
  overflow-wrap:break-word;
  word-break:normal!important;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
html body .jp-new h1{
  line-height:1.10!important;
  padding-bottom:.14em!important;
}
html body .jp-new h2{
  line-height:1.12!important;
  padding-bottom:.12em!important;
}
html body .jp-new h3{
  line-height:1.16!important;
  padding-bottom:.10em!important;
}
html body .jp-new .jp-title-main,
html body .jp-new .jp-title-accent{
  display:block!important;
  max-height:none!important;
  overflow:visible!important;
  line-height:inherit!important;
  padding:.025em .045em .10em 0!important;
  filter:none!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
html body .jp-new .jp-title-main + .jp-title-accent{
  margin-top:.015em;
}
html body .jp-service-copy,
html body .jp-service-card-body,
html body .jp-method-list article>div{
  min-width:0!important;
}

/* Il bagliore ora vive fuori dal disegno: il tratto vettoriale rimane pieno e preciso. */
html body .jp-service-icon img,
html body .jp-feature-icon img,
html body .jp-floating-card img,
html body .jp-method-icon img,
html body .jp-method-list-icon img,
html body .jp-pillar-icon img,
html body .jp-coaching-icon img,
html body .jp-service-hero-icon img,
html body .jp-list-icon img{
  display:block!important;
  opacity:1!important;
  image-rendering:auto;
  filter:
    contrast(1.24)
    saturate(1.34)
    brightness(1.16)
    drop-shadow(0 0 1px rgba(248,244,232,.8))
    drop-shadow(0 0 4px rgba(251,194,51,.72))!important;
}
html body .jp-service-icon::after,
html body .jp-feature-icon::after,
html body .jp-method-icon::after,
html body .jp-method-list-icon::after,
html body .jp-pillar-icon::after,
html body .jp-coaching-icon::after,
html body .jp-service-hero-icon::after,
html body .jp-list-icon::after{
  width:34%;
  height:34%;
  background:rgba(251,201,75,.16);
  filter:blur(8px);
}
html body .jp-service-icon,
html body .jp-feature-icon,
html body .jp-method-icon,
html body .jp-method-list-icon,
html body .jp-pillar-icon,
html body .jp-coaching-icon,
html body .jp-service-hero-icon,
html body .jp-list-icon{
  background:
    radial-gradient(circle at 72% 22%,rgba(251,201,73,.12),transparent 27%),
    linear-gradient(150deg,rgba(60,45,6,.96),rgba(12,9,2,.995))!important;
}

@media(max-width:640px){
  html body .jp-new h1{line-height:1.105!important;padding-bottom:.16em!important}
  html body .jp-new h2{line-height:1.13!important;padding-bottom:.14em!important}
  html body .jp-new h3{line-height:1.17!important;padding-bottom:.12em!important}
  html body .jp-new .jp-title-main,
  html body .jp-new .jp-title-accent{padding-bottom:.12em!important}
}

/* ===== 4.17 — icone ridisegnate e marchio WhatsApp reale ===== */
/*
 * I contenitori mantengono esattamente le misure approvate. Il disegno usa invece
 * quasi tutta la superficie disponibile, con un tratto più deciso e meno alone.
 */
html body .jp-service-icon img,
html body .jp-feature-icon img,
html body .jp-method-icon img,
html body .jp-method-list-icon img,
html body .jp-pillar-icon img,
html body .jp-coaching-icon img,
html body .jp-service-hero-icon img,
html body .jp-list-icon img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  transform:none!important;
  transform-origin:center!important;
  filter:
    contrast(1.16)
    saturate(1.20)
    brightness(1.12)
    drop-shadow(0 0 1px rgba(249,244,233,.72))
    drop-shadow(0 0 3px rgba(251,194,51,.48))!important;
}
html body .jp-floating-card img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  transform:none!important;
  transform-origin:center!important;
  filter:
    contrast(1.16)
    saturate(1.20)
    brightness(1.12)
    drop-shadow(0 0 1px rgba(249,244,233,.72))
    drop-shadow(0 0 3px rgba(251,194,51,.48))!important;
}

/* Più disegno, meno cornice: cambiano soltanto i margini interni. */
html body .jp-service-icon{padding:5px!important}
html body .jp-feature-icon{padding:4px!important}
html body .jp-method-icon{padding:3px!important}
html body .jp-method-list-icon{padding:4px!important}
html body .jp-pillar-icon,
html body .jp-coaching-icon{padding:4px!important}
html body .jp-service-hero-icon{padding:12px!important}
html body .jp-list-icon{padding:3px!important}

html body .jp-service-icon::after,
html body .jp-feature-icon::after,
html body .jp-method-icon::after,
html body .jp-method-list-icon::after,
html body .jp-pillar-icon::after,
html body .jp-coaching-icon::after,
html body .jp-service-hero-icon::after,
html body .jp-list-icon::after{
  width:26%!important;
  height:26%!important;
  opacity:.58;
  filter:blur(6px)!important;
}

@media(max-width:640px){
  html body .jp-service-icon{padding:4px!important}
  html body .jp-feature-icon{padding:4px!important}
  html body .jp-method-icon{padding:3px!important}
  html body .jp-method-list-icon{padding:3px!important}
  html body .jp-pillar-icon,
  html body .jp-coaching-icon{padding:3px!important}
  html body .jp-service-hero-icon{padding:8px!important}
  html body .jp-list-icon{padding:2px!important}
}

/* Marchio WhatsApp reale, bianco, sul disco fucsia del nuovo pulsante. */
html body .wa-icon,
html body .final-cta .wa-icon,
html body .jupazz-wa-fab::before,
html body .jupazz-wa-panel strong::after{
  background-image:url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg")!important;
}
html body .jupazz-wa-fab::before{
  filter:drop-shadow(0 10px 18px rgba(235,178,34,.24))!important;
}

/* ===== 4.18 — ridisegno reale delle grafiche approvato nel mockup ===== */
/*
 * Non sono più usate le vecchie illustrazioni neon: tutti gli asset sono stati
 * ricostruiti con il linguaggio lineare del mockup (rosa pieno, tratto 1.75,
 * forme semplici e immediatamente riconoscibili).
 */
html body .jp-service-icon img,
html body .jp-feature-icon img,
html body .jp-floating-card img,
html body .jp-method-icon img,
html body .jp-method-list-icon img,
html body .jp-pillar-icon img,
html body .jp-coaching-icon img,
html body .jp-service-hero-icon img,
html body .jp-list-icon img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  opacity:1!important;
  transform:none!important;
  filter:drop-shadow(0 0 2px rgba(251,194,51,.66))!important;
}

/* Riquadri invariati nelle dimensioni, ma con la finitura esatta del mockup. */
html body .jp-service-icon,
html body .jp-feature-icon,
html body .jp-method-icon,
html body .jp-method-list-icon,
html body .jp-pillar-icon,
html body .jp-coaching-icon,
html body .jp-service-hero-icon,
html body .jp-list-icon{
  border-color:rgba(251,202,76,.78)!important;
  background:
    radial-gradient(circle at 26% 18%,rgba(252,205,86,.18),transparent 34%),
    linear-gradient(145deg,rgba(90,67,10,.69),rgba(18,14,3,.98))!important;
  box-shadow:
    inset 0 0 20px rgba(251,194,51,.12),
    0 0 17px rgba(251,194,51,.14)!important;
}

/* Il piccolo punto ciano è l'accento visivo presente nella proposta approvata. */
html body .jp-service-icon::after,
html body .jp-feature-icon::after,
html body .jp-method-icon::after,
html body .jp-method-list-icon::after,
html body .jp-pillar-icon::after,
html body .jp-coaching-icon::after,
html body .jp-service-hero-icon::after,
html body .jp-list-icon::after{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  top:8px!important;
  right:8px!important;
  left:auto!important;
  bottom:auto!important;
  width:6px!important;
  height:6px!important;
  border-radius:50%!important;
  background:#fccd56!important;
  box-shadow:0 0 10px #fccd56!important;
  filter:none!important;
  opacity:1!important;
  pointer-events:none!important;
}

html body .jp-service-icon{padding:5px!important}
html body .jp-feature-icon{padding:5px!important}
html body .jp-method-icon{padding:4px!important}
html body .jp-method-list-icon{padding:5px!important}
html body .jp-pillar-icon,
html body .jp-coaching-icon{padding:5px!important}
html body .jp-service-hero-icon{padding:13px!important}
html body .jp-list-icon{padding:3px!important}

@media(max-width:640px){
  html body .jp-service-icon{padding:4px!important}
  html body .jp-feature-icon{padding:4px!important}
  html body .jp-method-icon{padding:3px!important}
  html body .jp-method-list-icon{padding:4px!important}
  html body .jp-pillar-icon,
  html body .jp-coaching-icon{padding:4px!important}
  html body .jp-service-hero-icon{padding:9px!important}
  html body .jp-list-icon{padding:2px!important}
  html body .jp-list-icon::after{
    top:5px!important;
    right:5px!important;
    width:4px!important;
    height:4px!important;
    box-shadow:0 0 7px #fccd56!important;
  }
}

/* ===== 4.19 — proporzioni finali e pulizia del mockup ===== */
/* Disegni appena più raccolti, senza modificare le dimensioni dei riquadri. */
html body .jp-service-icon{padding:7px!important}
html body .jp-feature-icon{padding:7px!important}
html body .jp-method-icon{padding:6px!important}
html body .jp-method-list-icon{padding:7px!important}
html body .jp-pillar-icon,
html body .jp-coaching-icon{padding:7px!important}
html body .jp-service-hero-icon{padding:17px!important}
html body .jp-list-icon{padding:5px!important}

/* Eliminato l'accento ciano da tutte le grafiche. */
html body .jp-service-icon::after,
html body .jp-feature-icon::after,
html body .jp-method-icon::after,
html body .jp-method-list-icon::after,
html body .jp-pillar-icon::after,
html body .jp-coaching-icon::after,
html body .jp-service-hero-icon::after,
html body .jp-list-icon::after{
  content:none!important;
  display:none!important;
}

/* Conservata la diagonale decorativa alta; rimossa solo quella sopra il testo. */
html body .jp-neon-home .jp-laptop-screen::after{
  content:none!important;
  display:none!important;
}

@media(max-width:640px){
  html body .jp-service-icon{padding:7px!important}
  html body .jp-feature-icon{padding:6px!important}
  html body .jp-method-icon{padding:5px!important}
  html body .jp-method-list-icon{padding:6px!important}
  html body .jp-pillar-icon,
  html body .jp-coaching-icon{padding:6px!important}
  html body .jp-service-hero-icon{padding:12px!important}
  html body .jp-list-icon{padding:4px!important}
}

/* ===== 4.20 — WhatsApp coordinato al tema neon ===== */
/* Più aria dai bordi e marchio leggermente più raccolto dentro il disco. */
html body .jupazz-wa-widget{
  right:24px!important;
  bottom:24px!important;
  top:auto!important;
  left:auto!important;
}
html body .jupazz-wa-fab{
  width:66px!important;
  height:66px!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .jupazz-wa-fab::before{
  width:66px!important;
  height:66px!important;
  background:transparent url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg") center/contain no-repeat!important;
  filter:drop-shadow(0 12px 22px rgba(235,178,34,.30))!important;
}

/* Popup nero/viola: stessa atmosfera del sito, senza residui crema o bordeaux. */
html body .jupazz-wa-panel{
  border:1px solid rgba(251,199,66,.64)!important;
  background:
    radial-gradient(circle at 50% -8%,rgba(251,196,57,.24),transparent 38%),
    radial-gradient(circle at 8% 92%,rgba(251,193,48,.10),transparent 34%),
    linear-gradient(155deg,rgba(32,24,7,.995),rgba(9,7,1,.995))!important;
  color:#fefdfb!important;
  box-shadow:
    0 30px 85px rgba(0,0,0,.58),
    0 0 34px rgba(251,194,50,.20),
    inset 0 0 34px rgba(251,195,54,.055)!important;
  backdrop-filter:blur(18px) saturate(120%);
}
html body .jupazz-wa-close{
  color:#e6d3a5!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(251,201,72,.22)!important;
  border-radius:13px!important;
}
html body .jupazz-wa-close:hover{
  color:#fff!important;
  background:rgba(251,195,53,.14)!important;
}
html body .jupazz-wa-kicker{
  color:#fccc55!important;
}
html body .jupazz-wa-panel strong{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:850!important;
  color:#fefdfb!important;
  letter-spacing:-.04em!important;
}
html body .jupazz-wa-panel strong::after{
  background:transparent url("assets/icons/whatsapp-jupazz-fuchsia-v500.svg") center/contain no-repeat!important;
  filter:drop-shadow(0 13px 24px rgba(236,179,33,.24))!important;
}
html body .jupazz-wa-panel p{
  color:#dad6ce!important;
}
html body .jupazz-wa-panel p::before{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:800!important;
  color:#fefdfb!important;
  letter-spacing:-.025em!important;
}
html body .jupazz-wa-panel p::after{
  color:#fbc949!important;
  text-shadow:0 0 12px rgba(251,195,53,.62)!important;
}
html body .jupazz-wa-panel-btn{
  border:1px solid rgba(255,255,255,.34)!important;
  background:linear-gradient(100deg,#fbc847 0%,#fbc12f 52%,#fbc438 100%)!important;
  color:#fff!important;
  box-shadow:0 15px 32px rgba(233,177,36,.30)!important;
}
html body .jupazz-wa-panel-btn:hover{
  filter:brightness(1.07)!important;
  box-shadow:0 18px 38px rgba(233,177,36,.38)!important;
}
html body .jupazz-wa-panel small{
  color:#beb9ad!important;
}

@media(max-width:700px){
  html body .jupazz-wa-widget{
    right:22px!important;
    bottom:24px!important;
  }
  html body .jupazz-wa-fab,
  html body .jupazz-wa-fab::before{
    width:64px!important;
    height:64px!important;
  }
  html body .jupazz-wa-panel{
    width:calc(100vw - 36px)!important;
    padding:30px 23px 25px!important;
    border-radius:28px!important;
  }
}

/* ===== 4.23 — Jupazz Partner Program ===== */
.jp-partner-page{
  --partner-pink:#fbc232;
  --partner-pink-soft:#fccd56;
  --partner-purple:#fbc43a;
  --partner-panel:#141005;
  --partner-copy:#d5d1c8;
  background:#080601!important;
  color:#fff;
}
.jp-partner-page .container{width:min(1180px,calc(100% - 44px));margin-inline:auto}
.jp-partner-page h1,.jp-partner-page h2,.jp-partner-page h3{
  color:#fff;
  overflow:visible!important;
  text-wrap:balance;
}
.jp-partner-page em{font-style:normal;color:var(--partner-pink)}
.jp-partner-page p{color:var(--partner-copy)}
.jp-partner-hero{
  position:relative;
  padding:92px 0 0;
  overflow:hidden;
  background:
    radial-gradient(circle at 77% 34%,rgba(251,195,55,.18),transparent 31%),
    radial-gradient(circle at 18% 12%,rgba(251,193,47,.11),transparent 28%),
    linear-gradient(180deg,#0b0802 0%,#080601 100%);
}
.jp-partner-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.17;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image:linear-gradient(to bottom,#000,transparent 72%);
  mask-image:linear-gradient(to bottom,#000,transparent 72%);
}
.jp-partner-hero-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);
  gap:72px;
  align-items:center;
  min-height:560px;
}
.jp-partner-hero-copy{padding-bottom:54px}
.jp-partner-hero-copy h1{
  max-width:780px;
  margin:0;
  font-size:clamp(52px,5.6vw,80px);
  line-height:1.005;
  letter-spacing:-.057em;
}
.jp-partner-hero-copy h1 span,.jp-partner-hero-copy h1 em{display:block}
.jp-partner-hero-copy h1 em{
  margin-top:.09em;
  background:linear-gradient(95deg,#fbc232,#fbc846 56%,#fbc742);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 0 20px rgba(251,193,47,.16));
}
.jp-partner-hero-copy>p{max-width:670px;margin:27px 0 0;font-size:18px;line-height:1.67}
.jp-partner-hero-copy .jp-actions{display:flex;align-items:center;gap:22px;margin-top:32px}
.jp-partner-hero-copy .btn{min-height:56px;padding-inline:26px}
.jp-partner-text-link{color:#fff!important;font-size:14px;font-weight:780;border-bottom:1px solid rgba(251,200,69,.62);padding:8px 0}
.jp-partner-text-link:hover{color:var(--partner-pink-soft)!important}
.jp-partner-visual{position:relative;min-height:470px;isolation:isolate}
.jp-partner-visual::before{
  content:"";
  position:absolute;
  inset:10% 7%;
  z-index:-3;
  border-radius:50%;
  background:radial-gradient(circle,rgba(251,194,51,.15),rgba(251,193,47,.04) 45%,transparent 69%);
  filter:blur(5px);
}
.jp-partner-orbit{position:absolute;border:1px solid rgba(251,198,63,.28);border-radius:50%;transform:rotate(-17deg)}
.jp-partner-orbit-one{inset:42px 34px 52px 18px;box-shadow:0 0 38px rgba(251,193,48,.07)}
.jp-partner-orbit-two{inset:92px 85px 104px 68px;border-color:rgba(251,198,64,.38);transform:rotate(23deg)}
.jp-partner-percent{
  position:absolute;
  z-index:3;
  top:50%;
  left:50%;
  display:grid;
  place-items:center;
  width:210px;
  height:210px;
  padding:20px;
  border:1px solid rgba(252,204,85,.8);
  border-radius:50%;
  transform:translate(-50%,-50%);
  text-align:center;
  background:radial-gradient(circle at 38% 30%,rgba(251,199,66,.38),rgba(52,39,5,.96) 58%,#0e0b02 100%);
  box-shadow:0 0 60px rgba(251,193,46,.25),inset 0 0 38px rgba(255,255,255,.05);
}
.jp-partner-percent::after{content:"";position:absolute;inset:13px;border:1px dashed rgba(255,255,255,.23);border-radius:50%}
.jp-partner-percent strong{font-size:62px;line-height:.86;letter-spacing:-.06em;text-shadow:0 0 25px rgba(251,195,54,.35)}
.jp-partner-percent span{margin-top:-35px;color:#dbd8d0;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.jp-partner-node{
  position:absolute;
  z-index:4;
  display:flex;
  align-items:center;
  gap:10px;
  min-width:144px;
  padding:10px 14px 10px 10px;
  border:1px solid rgba(251,200,70,.58);
  border-radius:16px;
  color:#fff;
  background:linear-gradient(145deg,rgba(55,42,8,.96),rgba(12,10,2,.98));
  box-shadow:0 12px 28px rgba(0,0,0,.32),0 0 18px rgba(251,194,50,.12);
  font-size:12px;
  font-weight:760;
}
.jp-partner-node img{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 0 4px rgba(251,195,53,.48))}
.jp-partner-node-name{top:45px;right:8px}
.jp-partner-node-link{left:0;bottom:84px}
.jp-partner-node-result{right:0;bottom:26px}
.jp-partner-stats{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1px solid rgba(251,197,61,.32);
  border-bottom:0;
  border-radius:24px 24px 0 0;
  overflow:hidden;
  background:rgba(20,15,4,.78);
  box-shadow:0 -18px 55px rgba(251,193,48,.07);
}
.jp-partner-stats>div{display:grid;place-items:center;min-height:126px;padding:23px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.jp-partner-stats>div:last-child{border:0}
.jp-partner-stats strong{font-size:34px;line-height:1;color:var(--partner-pink-soft);text-shadow:0 0 18px rgba(251,195,53,.28)}
.jp-partner-stats span{margin-top:9px;color:#d2cec5;font-size:13px}
.jp-partner-section{position:relative;padding:112px 0;border-top:1px solid rgba(251,196,57,.12)}
.jp-partner-heading{max-width:740px}
.jp-partner-heading h2{margin:0;font-size:clamp(42px,5vw,66px);line-height:1.03;letter-spacing:-.052em}
.jp-partner-heading>p{max-width:690px;margin:24px 0 0;font-size:17px;line-height:1.72}
.jp-partner-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:56px}
.jp-partner-steps article{
  position:relative;
  min-height:320px;
  padding:25px 23px 26px;
  overflow:hidden;
  border:1px solid rgba(251,197,61,.28);
  border-radius:24px;
  background:linear-gradient(155deg,rgba(30,24,7,.92),rgba(10,8,2,.96));
  box-shadow:inset 0 0 24px rgba(251,196,57,.035);
}
.jp-partner-steps article::after{content:"";position:absolute;left:23px;right:55%;bottom:0;height:3px;background:linear-gradient(90deg,var(--partner-pink),var(--partner-purple));box-shadow:0 0 14px rgba(251,193,47,.66)}
.jp-partner-step-icon,.jp-partner-methods article>span{
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  padding:7px;
  border:1px solid rgba(251,201,75,.72);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(81,61,11,.62),rgba(18,14,3,.98));
  box-shadow:inset 0 0 18px rgba(251,194,51,.11),0 0 16px rgba(251,194,51,.12);
}
.jp-partner-step-icon img,.jp-partner-methods article>span img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 2px rgba(251,194,51,.62))}
.jp-partner-steps article>b{display:block;margin-top:31px;color:#fbcc52;font-size:11px;letter-spacing:.15em}
.jp-partner-steps h3{margin:10px 0 12px;font-size:24px;letter-spacing:-.03em}
.jp-partner-steps p{margin:0;font-size:14px;line-height:1.64}
.jp-partner-recognition{
  background:
    radial-gradient(circle at 8% 50%,rgba(251,193,48,.10),transparent 29%),
    linear-gradient(180deg,#0c0902,#080601);
}
.jp-partner-recognition-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);gap:84px;align-items:center}
.jp-partner-rule{display:grid;gap:9px;margin-top:34px;padding:21px 23px;border-left:3px solid var(--partner-pink);border-radius:0 16px 16px 0;background:rgba(251,194,49,.07)}
.jp-partner-rule strong{color:#fccc54;font-size:11px;letter-spacing:.13em;text-transform:uppercase}
.jp-partner-rule span{color:#fff;font-size:19px;font-weight:750}
.jp-partner-methods{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.jp-partner-methods article{display:grid;grid-template-columns:62px 1fr;gap:15px;align-items:center;min-height:142px;padding:18px;border:1px solid rgba(251,197,59,.25);border-radius:22px;background:rgba(21,16,5,.82)}
.jp-partner-methods article>span{width:62px;height:62px;padding:7px;border-radius:17px}
.jp-partner-methods h3{margin:0 0 7px;font-size:17px}
.jp-partner-methods p{margin:0;font-size:12.5px;line-height:1.5}
.jp-partner-heading-center{margin-inline:auto;text-align:center}
.jp-partner-heading-center .jp-kicker{justify-content:center}
.jp-partner-example{display:grid;grid-template-columns:1fr 62px .72fr;gap:26px;align-items:center;max-width:990px;margin:50px auto 0;padding:32px;border:1px solid rgba(251,198,63,.45);border-radius:28px;background:linear-gradient(135deg,rgba(34,26,8,.96),rgba(12,10,2,.98));box-shadow:0 28px 70px rgba(0,0,0,.26),inset 0 0 34px rgba(251,195,54,.045)}
.jp-partner-example-story>span,.jp-partner-example-result small{display:block;margin-bottom:13px;color:#fbcc53;font-size:10px;font-weight:850;letter-spacing:.16em}
.jp-partner-example-story p{margin:0;font-size:17px;line-height:1.66}
.jp-partner-example-story p strong{color:#fff}
.jp-partner-example-arrow{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(251,201,75,.5);border-radius:50%;color:#fbcb4f;font-size:24px;box-shadow:0 0 20px rgba(251,194,49,.12)}
.jp-partner-example-result{text-align:center}
.jp-partner-example-result strong{display:block;font-size:62px;line-height:1;color:#fff;text-shadow:0 0 24px rgba(251,194,51,.28)}
.jp-partner-example-result span{display:block;margin-top:9px;color:#c3bfb3;font-size:12px}
.jp-partner-rules{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:990px;margin:16px auto 0}
.jp-partner-rules p{margin:0;padding:18px 20px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025);font-size:13px;line-height:1.58}
.jp-partner-rules p strong{color:#fff}
.jp-partner-faq{background:linear-gradient(180deg,#080601,#0c0902)}
.jp-partner-faq-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:82px;align-items:start}
.jp-partner-accordion{display:grid;gap:11px}
.jp-partner-accordion details{border:1px solid rgba(251,197,59,.25);border-radius:18px;background:rgba(20,16,5,.78);overflow:hidden}
.jp-partner-accordion summary{position:relative;padding:22px 58px 22px 22px;cursor:pointer;color:#fff;font-size:16px;font-weight:760;list-style:none}
.jp-partner-accordion summary::-webkit-details-marker{display:none}
.jp-partner-accordion summary::after{content:"+";position:absolute;right:21px;top:50%;transform:translateY(-50%);color:#fbcb4f;font-size:24px;font-weight:400}
.jp-partner-accordion details[open] summary::after{content:"−"}
.jp-partner-accordion details[open]{border-color:rgba(251,198,65,.52);box-shadow:0 0 22px rgba(251,193,48,.07)}
.jp-partner-accordion p{margin:0;padding:0 22px 22px;font-size:14px;line-height:1.65}
.jp-partner-join{padding-bottom:128px;background:radial-gradient(circle at 78% 20%,rgba(251,196,56,.15),transparent 28%),#080601}
.jp-partner-join-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}
.jp-partner-join-note{display:grid;gap:6px;margin-top:31px;padding:20px;border:1px solid rgba(251,200,71,.25);border-radius:18px;background:rgba(251,194,49,.05)}
.jp-partner-join-note strong{color:#fff;font-size:14px}
.jp-partner-join-note span{color:#cdc9bf;font-size:13px;line-height:1.55}
.jp-partner-form-card{padding:34px!important;border-color:rgba(251,198,63,.46)!important;background:linear-gradient(155deg,rgba(29,23,7,.98),rgba(10,8,2,.99))!important;box-shadow:0 28px 70px rgba(0,0,0,.30),0 0 30px rgba(251,194,49,.07)!important}
.jp-partner-form-card label{color:#fff!important}
.jp-partner-form-card input,.jp-partner-form-card textarea{
  border:1px solid rgba(251,203,79,.22)!important;
  background:rgba(6,5,1,.82)!important;
  color:#fff!important;
  outline:none;
}
.jp-partner-form-card input:focus,.jp-partner-form-card textarea:focus{border-color:rgba(251,199,67,.78)!important;box-shadow:0 0 0 3px rgba(251,194,50,.10)}
.jp-partner-form-card input::placeholder,.jp-partner-form-card textarea::placeholder{color:#dca929}
.jp-partner-form-card .privacy-check{color:#ccc8bf!important;font-size:12px!important;line-height:1.5}
.jp-partner-form-card .privacy-check a{color:#fbcb52;text-decoration:underline;text-underline-offset:3px}
.jp-partner-form-card .btn{width:100%;min-height:56px;margin-top:4px}
.jp-partner-form-card .form-success,.jp-partner-form-card .form-error{margin-bottom:22px;padding:16px 18px;border-radius:14px}
.jp-partner-form-card .form-success{border:1px solid rgba(83,255,191,.36);background:rgba(51,207,150,.10);color:#eafff7}
.jp-partner-form-card .form-error{border:1px solid rgba(255,91,133,.38);background:rgba(255,66,116,.10);color:#ffe9ef}
.jp-partner-form-card .jp-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:1120px){
  .jp-partner-hero-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.76fr);gap:42px}
  .jp-partner-node{min-width:130px}
  .jp-partner-steps{grid-template-columns:1fr 1fr}
  .jp-partner-steps article{min-height:285px}
  .jp-partner-recognition-grid,.jp-partner-faq-grid,.jp-partner-join-grid{gap:48px}
}
@media(max-width:900px){
  .jp-partner-hero{padding-top:70px}
  .jp-partner-hero-grid{grid-template-columns:1fr;min-height:0}
  .jp-partner-hero-copy{padding-bottom:0}
  .jp-partner-hero-copy h1{max-width:800px}
  .jp-partner-visual{width:min(520px,100%);margin:0 auto;min-height:430px}
  .jp-partner-recognition-grid,.jp-partner-faq-grid,.jp-partner-join-grid{grid-template-columns:1fr}
  .jp-partner-recognition-grid{gap:42px}
  .jp-partner-faq-grid,.jp-partner-join-grid{gap:44px}
}
@media(max-width:640px){
  .jp-partner-page .container{width:calc(100% - 34px)}
  .jp-partner-hero{padding-top:52px}
  .jp-partner-hero-grid{gap:25px}
  .jp-partner-hero-copy h1{font-size:47px;line-height:1.02;letter-spacing:-.052em}
  .jp-partner-hero-copy>p{font-size:16px;line-height:1.62}
  .jp-partner-hero-copy .jp-actions{align-items:stretch;flex-direction:column;gap:11px}
  .jp-partner-hero-copy .btn{width:100%;padding-inline:16px;text-align:center}
  .jp-partner-text-link{text-align:center;border:0}
  .jp-partner-visual{min-height:355px;transform:scale(.94)}
  .jp-partner-orbit-one{inset:24px 0 35px}
  .jp-partner-orbit-two{inset:66px 47px 79px}
  .jp-partner-percent{width:164px;height:164px}
  .jp-partner-percent strong{font-size:50px}
  .jp-partner-percent span{margin-top:-28px;font-size:9px}
  .jp-partner-node{min-width:0;padding:7px 9px;border-radius:13px;font-size:10px}
  .jp-partner-node img{width:29px;height:29px}
  .jp-partner-node-name{top:28px;right:-4px}
  .jp-partner-node-link{left:-3px;bottom:70px}
  .jp-partner-node-result{right:-4px;bottom:16px}
  .jp-partner-stats{grid-template-columns:1fr;border-radius:20px 20px 0 0}
  .jp-partner-stats>div{min-height:95px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .jp-partner-stats strong{font-size:30px}
  .jp-partner-section{padding:78px 0}
  .jp-partner-heading h2{font-size:40px;line-height:1.04}
  .jp-partner-heading>p{font-size:15px}
  .jp-partner-steps{grid-template-columns:1fr;margin-top:38px}
  .jp-partner-steps article{min-height:0;padding:22px}
  .jp-partner-step-icon{width:64px;height:64px}
  .jp-partner-steps article>b{margin-top:24px}
  .jp-partner-methods{grid-template-columns:1fr}
  .jp-partner-methods article{min-height:126px}
  .jp-partner-rule span{font-size:17px}
  .jp-partner-example{grid-template-columns:1fr;gap:22px;padding:25px 22px}
  .jp-partner-example-arrow{transform:rotate(90deg);margin-inline:auto}
  .jp-partner-example-result strong{font-size:56px}
  .jp-partner-rules{grid-template-columns:1fr}
  .jp-partner-accordion summary{padding:19px 52px 19px 18px;font-size:15px}
  .jp-partner-accordion p{padding:0 18px 19px;font-size:13px}
  .jp-partner-form-card{padding:23px!important}
  .jp-partner-form-card .form-row{grid-template-columns:1fr!important}
  .jp-partner-join{padding-bottom:94px}
}

/* ===== 4.24 — kit privato del Partner ===== */
.jp-partner-kit-page{min-height:70vh;background:#080601!important;color:#fff}
.jp-partner-kit-hero{
  min-height:72vh;
  padding:86px 0 118px;
  background:
    radial-gradient(circle at 82% 12%,rgba(251,196,56,.18),transparent 32%),
    radial-gradient(circle at 13% 70%,rgba(251,193,47,.10),transparent 28%),
    linear-gradient(180deg,#0c0902,#080601);
}
.jp-partner-kit-page .container{width:min(1120px,calc(100% - 44px));margin-inline:auto}
.jp-partner-kit-heading{max-width:850px;margin-bottom:50px}
.jp-partner-kit-heading h1,.jp-partner-kit-invalid h1{margin:0;font-size:clamp(48px,6vw,76px);line-height:1.02;letter-spacing:-.055em;color:#fff}
.jp-partner-kit-heading h1 em{font-style:normal;color:#fbc336}
.jp-partner-kit-heading>p,.jp-partner-kit-invalid>p{max-width:690px;margin:23px 0 0;color:#d3cfc6;font-size:17px;line-height:1.68}
.jp-partner-kit-grid{display:grid;grid-template-columns:.8fr 1.15fr 1fr;gap:16px}
.jp-partner-kit-card{
  min-height:360px;
  padding:27px;
  border:1px solid rgba(251,197,61,.34);
  border-radius:25px;
  background:linear-gradient(155deg,rgba(32,25,7,.96),rgba(10,8,2,.99));
  box-shadow:inset 0 0 30px rgba(251,195,54,.04),0 20px 50px rgba(0,0,0,.22);
}
.jp-partner-kit-card>span,.jp-partner-kit-rule>span{display:block;color:#fbcc53;font-size:10px;font-weight:850;letter-spacing:.16em}
.jp-partner-kit-code-card>strong{display:block;margin:52px 0 20px;color:#fff;font-size:clamp(34px,4vw,54px);line-height:1;letter-spacing:-.045em;overflow-wrap:anywhere;text-shadow:0 0 24px rgba(251,194,51,.28)}
.jp-partner-kit-card p{color:#cbc7bc;font-size:13px;line-height:1.58}
.jp-partner-kit-link{margin:46px 0 20px;padding:17px;border:1px solid rgba(251,201,74,.25);border-radius:14px;background:rgba(0,0,0,.28);color:#fff;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.jp-partner-copy{min-height:44px;margin-top:18px;padding:0 18px;border:1px solid rgba(251,204,83,.58);border-radius:999px;background:linear-gradient(100deg,rgba(235,173,18,.82),rgba(247,189,42,.88));color:#fff;font:inherit;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 0 16px rgba(251,193,47,.15)}
.jp-partner-copy:hover{filter:brightness(1.1);box-shadow:0 0 22px rgba(251,193,47,.28)}
.jp-partner-kit-qr-card{text-align:center}
.jp-partner-kit-qr-card>span{text-align:left}
.jp-partner-qr{width:min(210px,100%);margin:22px auto 12px;padding:10px;border-radius:18px;background:#fff;box-shadow:0 0 28px rgba(255,255,255,.08),0 0 28px rgba(251,194,49,.12)}
.jp-partner-qr svg{display:block;width:100%;height:auto}
.jp-partner-kit-rule{max-width:850px;margin:22px auto 0;padding:29px;border:1px solid rgba(251,198,63,.33);border-radius:22px;text-align:center;background:rgba(251,194,49,.045)}
.jp-partner-kit-rule strong{display:block;margin:12px 0 9px;color:#fff;font-size:25px;line-height:1.2}
.jp-partner-kit-rule p{margin:0;color:#ccc8bd;font-size:13px;line-height:1.6}
.jp-partner-kit-invalid{max-width:760px;padding:65px 0}
.jp-partner-kit-invalid .btn{margin-top:28px}

@media(max-width:900px){
  .jp-partner-kit-grid{grid-template-columns:1fr 1fr}
  .jp-partner-kit-qr-card{grid-column:1/-1}
  .jp-partner-kit-card{min-height:320px}
}
@media(max-width:640px){
  .jp-partner-kit-page .container{width:calc(100% - 34px)}
  .jp-partner-kit-hero{padding:58px 0 88px}
  .jp-partner-kit-heading h1,.jp-partner-kit-invalid h1{font-size:44px}
  .jp-partner-kit-heading>p,.jp-partner-kit-invalid>p{font-size:15px}
  .jp-partner-kit-grid{grid-template-columns:1fr}
  .jp-partner-kit-qr-card{grid-column:auto}
  .jp-partner-kit-card{min-height:0;padding:23px}
  .jp-partner-kit-code-card>strong,.jp-partner-kit-link{margin-top:31px}
  .jp-partner-copy{width:100%}
  .jp-partner-kit-rule strong{font-size:21px}
}

/* ===== 4.25 — nuovo posizionamento: Marketing scientifico =====
 * Solo composizione dei contenuti: palette, pulsanti, card, icone e linguaggio
 * visivo restano quelli già approvati. */

/* 4.28 — gerarchia della hero: posizionamento in ambra, testo introduttivo più leggibile. */
.jp-neon-home .jp-home-hero-title .jp-home-title-accent{
  color:#fbc43f!important;
  text-shadow:0 0 18px rgba(251,196,63,.18);
}
.jp-neon-home .jp-home-hero-title .jp-home-title-rest{color:#fff!important}
.jp-neon-home .jp-hero-text{
  color:#f3f0e8!important;
  font-weight:500;
  text-shadow:0 2px 15px rgba(0,0,0,.92),0 0 24px rgba(0,0,0,.42);
}

.jp-copy-rich{display:grid;gap:13px;max-width:880px}
.jp-copy-rich p{margin:0;color:#cdc9c0!important;font-size:17px;line-height:1.7}
.jp-copy-rich .jp-copy-strong,.jp-copy-strong{color:#fff!important;font-weight:800}
.jp-section-head-wide{max-width:980px!important}
.jp-positioning-copy{max-width:980px}
.jp-positioning-signals{margin-top:42px!important}
.jp-differentiation-section .jp-dark-grid{align-items:start}
.jp-differentiation-section .jp-copy-rich{gap:11px}
.jp-tool-mini{margin-top:54px!important}
.jp-science-section{background:
  radial-gradient(circle at 86% 20%,rgba(251,195,53,.12),transparent 28%),
  linear-gradient(180deg,#080601,#0e0b02 50%,#080601)!important}
.jp-science-copy{max-width:900px}
.jp-science-cycle,.jp-process-cycle{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:38px 0 28px}
.jp-science-cycle span,.jp-process-cycle span{display:inline-flex;align-items:center;min-height:45px;padding:10px 15px;border:1px solid rgba(251,197,59,.48);border-radius:999px;background:linear-gradient(145deg,rgba(56,43,8,.9),rgba(15,12,3,.96));color:#fff;font-size:12px;font-weight:850;letter-spacing:.02em;box-shadow:inset 0 0 16px rgba(251,194,49,.08),0 0 15px rgba(251,194,49,.08)}
.jp-science-cycle i,.jp-process-cycle i{color:#fbc640;font-style:normal;font-size:20px;text-shadow:0 0 12px rgba(251,195,53,.65)}
.jp-science-statement{max-width:860px;margin:0 0 24px;color:#fff;font-size:21px;line-height:1.55;font-weight:800}
.jp-services-intro{max-width:780px!important;margin-top:2px}
.jp-services-intro p{font-size:17px!important;line-height:1.58!important}
.jp-analysis-cta .jp-final-copy{max-width:780px;margin:0 auto 30px}
.jp-analysis-cta .jp-final-copy p{color:#d7d4cb!important;font-size:17px;line-height:1.58}
.jp-final-actions{justify-content:center;margin-top:28px}

.jp-method-copy-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
.jp-method-copy-grid .jp-section-head{margin-bottom:0}
.jp-method-scientific .jp-section-head h2,.jp-cases-page .jp-section-head h2{max-width:none!important}
.jp-method-foundations .jp-dark-grid,.jp-method-rigor .jp-dark-grid,.jp-case-strategy .jp-dark-grid{align-items:start}
.jp-foundation-pillars{margin-top:64px}
.jp-universal-solutions .jp-case-grid{align-items:start}
.jp-universal-solutions .jp-case-grid>div>h2,.jp-villa-case .jp-case-grid>div>h2{margin:25px 0 25px;font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.045em}
.jp-diagnosis-card{position:sticky;top:128px}
.jp-diagnosis-card strong{font-size:clamp(48px,6vw,70px)!important}
.jp-method-process .jp-method-list{max-width:1050px}
.jp-method-process .jp-method-list article{align-items:start}
.jp-method-process .jp-method-list p{max-width:900px}
.jp-process-cycle{margin-top:48px;padding:26px;border:1px solid rgba(251,196,58,.25);border-radius:22px;background:rgba(23,18,5,.72)}
.jp-process-cycle span{font-size:10px;letter-spacing:.12em}

.jp-cases-page .jp-page-hero .narrow{max-width:1080px}
.jp-case-intro-grid{align-items:start}
.jp-case-emphasis{color:#fbc848!important;font-size:clamp(48px,6vw,72px)!important;line-height:1!important;font-weight:900;letter-spacing:-.05em}

/* ===== 4.26 — consenso reale + sola correzione glow WhatsApp autorizzata ===== */
html body .jupazz-wa-fab::before{
  filter:drop-shadow(0 10px 18px rgba(235,178,34,.20))!important;
}
html body .jupazz-wa-panel p[data-heading]::before{
  content:attr(data-heading)!important;
}

/* Il vecchio motore privacy, se ancora attivo durante l'aggiornamento, non deve
 * mostrare un secondo pannello concorrente. */
html body .jp-consent:not([data-jupazz-consent="theme"]){display:none!important}
html body .jp-consent[hidden]{display:none!important}
html body .jp-consent[data-jupazz-consent="theme"]{
  position:fixed;
  inset:0;
  z-index:100000;
  display:grid;
  align-items:end;
  justify-items:center;
  padding:24px;
  background:rgba(6,4,0,.62);
  backdrop-filter:blur(8px);
}
html body .jp-consent-card{
  position:relative;
  width:min(920px,100%);
  max-height:calc(100dvh - 48px);
  overflow:auto;
  padding:28px;
  border-radius:25px;
}
html body .jp-consent-kicker{
  display:block;
  margin:0 52px 8px 0;
  font-size:10px;
  font-weight:850;
  letter-spacing:.16em;
}
html body .jp-consent h2{margin:0 48px 10px 0;font-size:clamp(25px,4vw,38px);line-height:1.05}
html body .jp-consent p{max-width:820px;margin:0 0 12px;font-size:14px;line-height:1.55}
html body .jp-consent-links{margin:0 0 18px;font-size:13px;font-weight:750}
html body .jp-consent-close{
  position:absolute;
  top:18px;
  right:18px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid transparent;
  border-radius:12px;
  font-size:27px;
  line-height:1;
  cursor:pointer;
}
html body .jp-consent-actions{display:flex;flex-wrap:wrap;gap:10px}
html body .jp-consent .jp-btn{
  min-height:46px;
  padding:0 18px;
  border:1px solid transparent;
  border-radius:999px;
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
html body .jp-preferences{margin-top:20px;padding-top:18px;border-top:1px solid transparent}
html body .jp-preferences[hidden]{display:none!important}
html body .jp-pref-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:8px 0;
  padding:14px 16px;
  border:1px solid transparent;
  border-radius:15px;
}
html body .jp-pref-row strong,html body .jp-pref-row small{display:block}
html body .jp-pref-row strong{margin-bottom:3px;font-size:14px}
html body .jp-pref-row small{font-size:12px;line-height:1.45}
html body .jp-switch{position:relative;flex:0 0 48px;width:48px;height:27px}
html body .jp-switch input{position:absolute;opacity:0;pointer-events:none}
html body .jp-switch span{position:absolute;inset:0;border-radius:999px;cursor:pointer;transition:.2s ease}
html body .jp-switch span::after{content:"";position:absolute;left:3px;top:3px;width:21px;height:21px;border-radius:50%;transition:.2s ease}
html body .jp-switch input:checked+span::after{transform:translateX(21px)}
html body .jp-switch input:disabled+span{cursor:not-allowed;opacity:.72}
html body .jp-consent-save{margin-top:12px}
html body .footer-legal .jp-legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px}

@media(max-width:700px){
  html body .jupazz-wa-fab::before{filter:drop-shadow(0 9px 16px rgba(235,178,34,.20))!important}
  html body .jp-consent[data-jupazz-consent="theme"]{padding:12px}
  html body .jp-consent-card{max-height:calc(100dvh - 24px);padding:23px 18px 19px;border-radius:21px}
  html body .jp-consent h2{font-size:27px}
  html body .jp-consent-actions{display:grid;grid-template-columns:1fr}
  html body .jp-consent .jp-btn{width:100%}
  html body .jp-pref-row{padding:12px}
  html body .footer-legal .jp-legal-links{justify-content:center}
}
.jp-case-feature-stat{position:sticky;top:128px}
.jp-case-feature-stat b{display:block;font-size:20px;line-height:1.45}
.jp-case-numbers{margin-top:76px}
.jp-case-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.jp-case-metrics article{min-height:160px;padding:24px 20px;border:1px solid rgba(251,196,57,.34);border-radius:20px;background:linear-gradient(150deg,rgba(31,24,7,.95),rgba(10,8,2,.98));box-shadow:inset 0 0 25px rgba(251,194,50,.025),0 16px 36px rgba(0,0,0,.2)}
.jp-case-metrics strong{display:block;color:#fff;font-size:clamp(28px,3vw,44px);line-height:1;letter-spacing:-.045em;overflow-wrap:anywhere}
.jp-case-metrics span{display:block;margin-top:15px;color:#cbc7bd;font-size:13px;line-height:1.45}
.jp-case-note{max-width:880px;margin:20px 0 0;color:#a8a190;font-size:12px;line-height:1.55}
.jp-case-commercial .jp-copy-rich{padding-top:8px}

@media(max-width:980px){
  .jp-method-copy-grid{grid-template-columns:1fr;gap:34px}
  .jp-diagnosis-card,.jp-case-feature-stat{position:static}
  .jp-case-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jp-case-metrics article:last-child{grid-column:1/-1}
}

@media(max-width:640px){
  .jp-copy-rich{gap:11px}
  .jp-copy-rich p{font-size:15px;line-height:1.58}
  .jp-positioning-signals{margin-top:31px!important}
  .jp-differentiation-section .jp-dark-grid,.jp-method-foundations .jp-dark-grid,.jp-method-rigor .jp-dark-grid,.jp-case-strategy .jp-dark-grid{gap:31px}
  .jp-tool-mini{margin-top:42px!important}
  .jp-science-cycle,.jp-process-cycle{display:grid;grid-template-columns:minmax(0,1fr) 24px;margin-top:30px}
  .jp-science-cycle span,.jp-process-cycle span{justify-content:center;width:100%;min-height:43px;text-align:center}
  .jp-science-cycle i,.jp-process-cycle i{text-align:center}
  .jp-science-cycle i:last-of-type,.jp-process-cycle i:last-of-type{display:block}
  .jp-science-statement{font-size:18px}
  .jp-analysis-cta .jp-final-copy p{font-size:15px}
  .jp-final-actions{display:grid;grid-template-columns:1fr;gap:11px}
  .jp-final-actions .btn{width:100%}
  .jp-foundation-pillars{margin-top:42px}
  .jp-universal-solutions .jp-case-grid>div>h2,.jp-villa-case .jp-case-grid>div>h2{font-size:clamp(38px,11vw,48px)}
  .jp-process-cycle{padding:18px 15px}
  .jp-case-numbers{margin-top:48px}
  .jp-case-metrics{grid-template-columns:1fr;gap:10px}
  .jp-case-metrics article,.jp-case-metrics article:last-child{grid-column:auto;min-height:0;padding:21px}
  .jp-case-metrics strong{font-size:38px}
  .jp-case-metrics span{margin-top:9px}
}

/* 4.27 — contrasto finale della sola variante cromatica. */
.jp-new{
  --jp-bordeaux:#6b4e0c;
  --jp-red:#f8c83d;
  --jp-cream:#fffdf7;
  --jp-ink:#fffdf7;
  --jp-muted:#d0cabd;
}
body::selection,
.jp-new .btn-primary,
.jp-wa-button,
.header-wa-cta,
html body .jp-neon-home .jp-method-band .jp-method-cta,
html body .jp-consent .jp-btn-primary,
html body .jp-consent-actions [data-jp-action="accept"],
html body .jupazz-wa-panel-btn,
.jp-partner-copy,
.jp-fixed-wa,
.btn-primary,
.confirm,
.growth-note .btn,
.home-questions .btn-primary,
.booking-note .btn{
  color:#100d03!important;
}

/* 5.1.1 — salvaguardia conclusiva Android contro gli override storici. */
@media(max-width:760px){
  html.jp-android body .container,
  html.jp-android body .jp-neon-home .container,
  html.jp-android body .jp-partner-page .container,
  html.jp-android body .jp-partner-kit-page .container{
    width:100%!important;
    max-width:760px!important;
    margin-inline:auto!important;
    padding-left:max(22px,env(safe-area-inset-left))!important;
    padding-right:max(22px,env(safe-area-inset-right))!important;
  }
  html.jp-android body a.btn,
  html.jp-android body button.btn{
    height:auto!important;
    min-width:0!important;
    max-width:100%!important;
    padding-top:15px!important;
    padding-bottom:15px!important;
    line-height:1.24!important;
    white-space:normal!important;
  }
}
@media(max-width:390px){
  html.jp-android body .container,
  html.jp-android body .jp-neon-home .container,
  html.jp-android body .jp-partner-page .container,
  html.jp-android body .jp-partner-kit-page .container{
    padding-left:max(18px,env(safe-area-inset-left))!important;
    padding-right:max(18px,env(safe-area-inset-right))!important;
  }
}
