/* ===== SUITEBOX — Sistema visivo condiviso (Daylight) ===== */
:root{
  --paper:#F6F4EF;--surface:#FFFFFF;--surface-2:#EFEBE3;
  --ink:#14161A;--ink-soft:#5B606B;--ink-faint:#8A8E97;
  --blue:#2D6BFF;--blue-deep:#1E4FD0;--blue-soft:#EAF0FF;
  --green:#1FA86B;--amber:#E8A33D;--coral:#FF6B5A;
  --line:rgba(20,22,26,.10);--shadow:0 18px 50px -20px rgba(20,22,26,.30);--shadow-sm:0 6px 22px -12px rgba(20,22,26,.16);
  --fd:"Unbounded",system-ui,sans-serif;--fu:"Inter","Helvetica Neue",Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1);--maxw:1240px;
}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--fu);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 30px}
.kick{font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--amber)}
h1,h2,h3{font-family:var(--fd);font-weight:500;letter-spacing:-.01em;line-height:1.08}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600;font-size:15px;padding:14px 24px;border-radius:99px;border:1px solid transparent;cursor:pointer;transition:.25s var(--ease);font-family:var(--fu)}
.btn svg{width:16px;height:16px}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 26px -8px rgba(45,107,255,.6)}.btn-primary:hover{background:var(--blue-deep);transform:translateY(-2px)}
.btn-light{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.btn-light:hover{transform:translateY(-2px)}
.btn-clear{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(4px)}.btn-clear:hover{background:rgba(255,255,255,.24)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover{border-color:var(--ink);transform:translateY(-2px)}
.btn-sm{padding:10px 18px;font-size:14px}
.sprog{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--blue),var(--blue-deep));z-index:200}

/* ===== NAV ===== */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:.3s var(--ease)}
.nav .in{max-width:var(--maxw);margin:0 auto;padding:0 30px;height:66px;display:flex;align-items:center;gap:22px}
.nav .logo{font-family:var(--fd);font-size:19px;color:#fff;transition:.3s}.nav .logo b{font-weight:700}.nav .logo span{font-weight:300}
.nav .links{display:flex;gap:4px;margin-left:8px;align-items:center}
.nav .links>a,.nav .drop>button{font-size:14.5px;font-weight:500;line-height:1;color:rgba(255,255,255,.85);background:none;border:none;cursor:pointer;font-family:var(--fu);padding:9px 12px;border-radius:9px;transition:.2s;display:inline-flex;align-items:center;gap:5px}
.nav .drop{display:flex;align-items:center}
.nav .links>a:hover,.nav .drop>button:hover{color:#fff;background:rgba(255,255,255,.12)}
.nav .drop{position:relative}
.nav .drop>button svg{width:11px;height:11px;opacity:.8;transition:.2s}
.nav .drop:hover>button svg{transform:rotate(180deg)}
.nav .menu{position:absolute;top:calc(100% + 8px);left:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;min-width:240px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s var(--ease)}
.nav .drop:hover .menu{opacity:1;visibility:visible;transform:none}
.nav .menu a{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;color:var(--ink)}
.nav .menu a:hover{background:var(--blue-soft)}
.nav .menu a img{width:46px;height:46px;border-radius:8px;object-fit:cover;background:#E4E2DB}
.nav .menu a .mt{font-weight:600;font-size:14px}.nav .menu a .ms{font-size:12px;color:var(--ink-soft)}
.nav .right{margin-left:auto;display:flex;align-items:center;gap:12px}
.nav .cart{color:#fff;display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600}
.nav .burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer}.nav .burger i{width:22px;height:2px;background:#fff;display:block;transition:.3s}
.nav.solid{background:rgba(246,244,239,.92);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--line)}
.nav.solid .logo,.nav.solid .cart{color:var(--ink)}
.nav.solid .links>a,.nav.solid .drop>button{color:var(--ink-soft)}.nav.solid .links>a:hover,.nav.solid .drop>button:hover{color:var(--ink);background:var(--surface-2)}
.nav.solid .burger i{background:var(--ink)}
/* light pages (no hero video): nav starts solid-on-light */
.nav.onlight .logo,.nav.onlight .cart{color:var(--ink)}
.nav.onlight .links>a,.nav.onlight .drop>button{color:var(--ink-soft)}
.nav.onlight .burger i{background:var(--ink)}
.navspacer{height:66px}
/* mobile menu */
.mobnav{display:none;position:fixed;inset:66px 0 auto 0;z-index:99;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:14px 30px 22px;flex-direction:column;gap:2px}
.mobnav.open{display:flex}
.mobnav a{padding:13px 8px;font-weight:600;color:var(--ink-soft);border-bottom:1px solid var(--line)}
.mobnav a.cta{color:var(--blue)}

/* ===== SECTIONS ===== */
.sec{padding:88px 0}
.sec-head{max-width:680px;margin-bottom:44px}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head h2{font-size:clamp(1.8rem,3.6vw,2.7rem);margin-top:12px}
.sec-head p{margin-top:14px;color:var(--ink-soft);font-size:1.08rem}
.pagehead{padding:120px 0 30px;text-align:center}
.pagehead h1{font-family:var(--fd);font-weight:700;font-size:clamp(2.3rem,5vw,3.6rem);margin-top:12px}
.pagehead p{margin-top:14px;color:var(--ink-soft);font-size:1.1rem;max-width:60ch;margin-inline:auto}

/* video hero (full bleed) */
.vhero{position:relative;height:100svh;min-height:600px;overflow:hidden;display:flex;align-items:flex-end}
.vhero video,.vhero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.vhero:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,12,20,.45),rgba(10,12,20,.16) 42%,rgba(10,12,20,.72))}
.vhero .in{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:0 30px 64px;width:100%;color:#fff;text-align:left;display:flex;flex-direction:column;align-items:flex-start}
.vhero .kick{color:var(--amber)}
.vhero h1{font-family:var(--fd);font-weight:700;font-size:clamp(2.6rem,6vw,5.2rem);line-height:.98;margin:14px 0 0;max-width:16ch}
.vhero .sub{margin:18px 0 0;font-size:1.15rem;max-width:44ch;color:rgba(255,255,255,.92)}
.vhero .cta{margin-top:26px;display:flex;gap:12px;flex-wrap:wrap}
.vhero .scroll{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);z-index:2;color:rgba(255,255,255,.7);font-size:11px;letter-spacing:.2em;text-transform:uppercase;animation:bob 2s infinite}
@keyframes bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(6px)}}

/* full-bleed editorial band */
.fb{position:relative;min-height:84vh;display:flex;align-items:center;overflow:hidden}
.fb img.bg,.fb video.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.fb:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(10,12,20,.66),rgba(10,12,20,.12))}
.fb .in{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:0 30px;width:100%}
.fb .card{max-width:32ch;color:#fff}
.fb .card .k{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}
.fb .card h2{font-size:clamp(1.7rem,3.6vw,2.7rem);margin:12px 0 14px;color:#fff}
.fb .card p{color:rgba(255,255,255,.9);font-size:1.05rem}

/* product grid (shop) */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pcard{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm);transition:.3s var(--ease);display:flex;flex-direction:column}
.pcard:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(45,107,255,.28)}
.pcard .media{aspect-ratio:4/5;position:relative;overflow:hidden;background:linear-gradient(160deg,#EFEFEA,#E4E2DB)}
.pcard .media video,.pcard .media img{width:100%;height:100%;object-fit:cover;transition:.5s var(--ease)}
.pcard:hover .media img{transform:scale(1.04)}
.pcard .soon{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(160deg,#1b2030,#0f1320);color:#fff;text-align:center;padding:24px}
.pcard .soon .b{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);border:1px solid rgba(232,163,61,.5);border-radius:99px;padding:6px 14px}
.pcard .b2{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.pcard .mt{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.pcard h3{font-size:1.3rem}.pcard .pr{font-family:var(--fd);font-weight:700;color:var(--blue);font-size:1.15rem;white-space:nowrap}
.pcard .who{color:var(--ink-soft);font-size:14.5px;margin:10px 0 18px;flex:1}
.pcard .acts{display:flex;gap:10px;flex-wrap:wrap}

/* numbers band */
.band{background:var(--ink);color:#fff;border-radius:26px;padding:54px 44px}
.band .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.band .kpi .n{font-family:var(--fd);font-weight:700;font-size:clamp(2rem,4vw,2.8rem);line-height:1}.band .kpi .n em{color:var(--amber);font-style:normal}
.band .kpi .k{margin-top:10px;color:#A9AEBA;font-size:13.5px}.band .note{margin-top:24px;font-size:12px;color:#7E8494}

/* faq */
.faq{max-width:820px;margin:0 auto}
.faq details{border-top:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:18px 0;font-family:var(--fd);font-weight:500;font-size:1.1rem;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font-family:var(--fu);font-size:1.5rem;color:var(--blue);transition:.25s}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq .a{color:var(--ink-soft);font-size:15.5px;padding:0 0 18px;max-width:66ch}

/* table */
.ptable{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);font-size:15px}
.ptable th,.ptable td{padding:15px 18px;text-align:left;border-top:1px solid var(--line)}
.ptable thead th{background:var(--ink);color:#fff;border-top:none;font-size:13px;font-weight:600}
.ptable tbody tr:nth-child(even) td{background:#FAFBFE}
.ptable .pr{font-family:var(--fd);font-weight:700;color:var(--blue)}

/* footer */
.ft{background:var(--surface);border-top:1px solid var(--line);padding:60px 0 40px}
.ft .in{max-width:var(--maxw);margin:0 auto;padding:0 30px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px}
.ft .logo{font-family:var(--fd);font-size:20px}.ft .logo b{font-weight:700}
.ft .blurb{color:var(--ink-soft);font-size:14px;margin-top:12px;max-width:32ch}
.ft .pay{font-family:var(--fd);font-weight:300;color:var(--ink);margin-top:16px;font-size:13px}
.ft h4{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:14px}
.ft ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.ft a{color:var(--ink-soft);font-size:14.5px}.ft a:hover{color:var(--ink)}
.ft .cb{max-width:var(--maxw);margin:34px auto 0;padding:20px 30px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em}
.ft .cb b{color:var(--blue)}

/* dal vero (foto reali) */
.realgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.realgrid img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px;box-shadow:var(--shadow-sm);transition:.3s var(--ease)}
.realgrid img:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
@media(max-width:720px){.realgrid{grid-template-columns:1fr 1fr}}

/* image zoom lightbox */
img.zoomable{cursor:zoom-in}
.imglb{position:fixed;inset:0;z-index:170;background:rgba(8,9,14,.93);display:none;align-items:center;justify-content:center;padding:24px;cursor:zoom-out;opacity:0;transition:opacity .22s var(--ease)}
.imglb.open{display:flex;opacity:1}
.imglb img{max-width:94vw;max-height:92vh;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.6);cursor:default}
.imglb .x{position:absolute;top:18px;right:24px;color:#fff;font-size:30px;cursor:pointer;line-height:1}

/* reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.07s}.rv.d2{transition-delay:.14s}.rv.d3{transition-delay:.21s}

@media (max-width:980px){
  .nav .links{display:none}.nav .burger{display:flex}
  .pgrid{grid-template-columns:1fr}.band .kpis{grid-template-columns:1fr 1fr;gap:24px}
  .ft .in{grid-template-columns:1fr 1fr}
  .fb{min-height:70vh}
}
@media (max-width:540px){
  .wrap,.nav .in,.vhero .in,.fb .in,.ft .in,.ft .cb{padding-left:18px;padding-right:18px}
  .sec{padding:60px 0}.band,.fb,.vhero .in{padding-left:18px;padding-right:18px}.band{padding:30px}
  .ft .in{grid-template-columns:1fr 1fr}.pagehead{padding:100px 0 20px}
}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.sprog,.vhero .scroll{display:none}}
