  /* ============ tokens ============ */
  :root{
    --bg:            #131b16;
    --bg-deep:       #0c110d;
    --card:          #17150f;
    --gold:          #c3ae78;
    --gold-light:    #d2c098;
    --cream:         #ece5ce;
    --text:          #f3efe4;
    --muted:         #93998f;
    --muted-2:       #6f766c;
    --line:          rgba(195,174,120,0.22);
    --line-soft:     rgba(195,174,120,0.12);
    --serif:         'Playfair Display', Georgia, serif;
    --sans:          'Plus Jakarta Sans', -apple-system, sans-serif;
  }

  *,*::before,*::after{box-sizing:border-box;}
  html{scroll-behavior:smooth;overflow-x:hidden;}
  body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:var(--sans);
    font-size:16px;
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;margin:0;padding:0;}
  h1,h2,h3,h4,p{margin:0;}
  button{font-family:inherit;cursor:pointer;background:none;border:0;}
  section{scroll-margin-top:84px;}
  ::selection{background:rgba(195,174,120,0.35);color:var(--cream);}

  .wrap{max-width:1280px;margin:0 auto;padding:0 24px;}
  @media(min-width:1024px){.wrap{padding:0 40px;}}

  .serif{font-family:var(--serif);}
  .gold{color:var(--gold);}
  .gold-light{color:var(--gold-light);}
  .cream{color:var(--cream);}
  .muted{color:var(--muted);}
  .muted-2{color:var(--muted-2);}
  .nav-actions{display:flex;align-items:center;gap:12px;}
  .centered{margin-left:auto;margin-right:auto;}
  .privacy-intro-text{max-width:56ch;margin-left:auto;margin-right:auto;}
  .footer-divider{max-width:100%;clear:both;margin-top:30px !important;margin-bottom:30px !important;}

  .ambient{
    position:fixed;inset:0;pointer-events:none;z-index:0;
    background:
      radial-gradient(ellipse 60% 40% at 80% 0%, rgba(195,174,120,0.07), transparent 60%),
      radial-gradient(ellipse 50% 35% at 8% 30%, rgba(195,174,120,0.045), transparent 60%);
  }

  /* ============ divider motif ============ */
  .divider{display:flex;align-items:center;gap:14px;max-width:340px;}
  .divider .rule{flex:1;height:1px;background:var(--line);}
  .divider .diamond{width:6px;height:6px;background:var(--gold);transform:rotate(45deg);flex-shrink:0;opacity:0.85;}
  .divider.center{margin:0 auto;}

  /* ============ buttons ============ */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:10px;
    padding:15px 30px;border-radius:11px;
    font-family:var(--sans);font-weight:600;font-size:0.95rem;
    letter-spacing:0.01em;white-space:nowrap;border:1px solid transparent;
    transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, background .35s ease, border-color .35s ease;
  }
  .btn-primary{
    background:var(--cream);color:#1a1a14;
    box-shadow:0 1px 0 rgba(255,255,255,0.35) inset, 0 10px 24px -12px rgba(0,0,0,0.6);
  }
  .btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:0 1px 0 rgba(255,255,255,0.45) inset, 0 0 0 1px rgba(195,174,120,0.4), 0 18px 34px -14px rgba(195,174,120,0.35);
  }
  .btn-ghost{border-color:var(--line);color:var(--text);}
  .btn-ghost:hover{border-color:rgba(195,174,120,0.55);background:rgba(195,174,120,0.06);transform:translateY(-2px);}
  .btn-sm{padding:10px 18px;font-size:0.82rem;border-radius:9px;}

  /* ============ header ============ */
  .site-header{
    position:fixed;top:0;left:0;right:0;width:100%;z-index:50;
    background:rgba(19,27,22,0.7);
    backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid transparent;
    transition:border-color .4s ease, background .4s ease;
  }
  .site-header.scrolled{border-bottom:1px solid var(--line-soft);background:rgba(19,27,22,0.9);}
  .nav-row{display:flex;align-items:center;justify-content:space-between;height:78px;gap: 16px;}
  .brand{display:flex;align-items:center;gap:12px;}
  .brand img{width:36px;height:36px;border-radius:9px;}
  .brand span{font-size:1.25rem;letter-spacing:0.01em;}

  .nav-links{display:none;align-items:center;gap:25px;flex-wrap:nowrap;}
  .nav-link{position:relative;color:var(--muted);font-size:0.92rem;font-weight:500;transition:color .3s ease;}
  .nav-link:hover{color:var(--text);}
  .nav-link::after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s ease;}
  .nav-link:hover::after{transform:scaleX(1);}
  .nav-cta{display:none;}
  .menu-btn{display:inline-flex;color:var(--cream);padding:8px;margin-right:-8px;}

  @media(min-width:800px){
    .nav-links{display:flex;}
    .nav-cta{display:inline-flex;}
    .menu-btn{display:none;}
  }

  .mobile-menu{max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.2,.7,.2,1);}
  .mobile-menu.open{max-height:360px;}
  .mobile-menu-inner{display:flex;flex-direction:column;gap:20px;padding:18px 0 30px;border-top:1px solid var(--line-soft);}
  .mobile-menu-inner .btn{width:fit-content;margin-top:6px;}
  @media(min-width:800px){.mobile-menu{display:none;}}

  /* ============ hero ============ */
  .hero{padding:150px 0 96px;position:relative;overflow:hidden;}
  @media(min-width:768px){.hero{padding:180px 0 128px;}}
  .hero-grid{display:grid;grid-template-columns:1fr;gap:60px;align-items:center;}
  @media(min-width:1024px){.hero-grid{grid-template-columns:1.05fr 1fr;gap:32px;}}

  .eyebrow-row{display:flex;align-items:center;gap:12px;margin-bottom:26px;}
  .eyebrow-row img{width:24px;height:24px;border-radius:6px;opacity:0.9;}
  .eyebrow-row span{font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted-2);}

  .hero-title{font-family:var(--serif);color:var(--cream);line-height:1.08;font-size:2.5rem;font-weight:600;}
  @media(min-width:640px){.hero-title{font-size:3.4rem;}}
  @media(min-width:1024px){.hero-title{font-size:4.3rem;}}

  .hero-sub{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--gold-light);font-size:1.1rem;margin-top:26px;max-width:34ch;line-height:1.6;}
  @media(min-width:640px){.hero-sub{font-size:1.25rem;}}

  .cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:38px;}
  .hero-note{font-size:0.875rem;color:var(--muted-2);margin-top:30px;}

  .hero-visual{position:relative;}
  .hero-phones{width:100%;max-width:540px;margin:0 auto;filter:drop-shadow(0 35px 55px rgba(0,0,0,0.55));}

  /* ============ glow + floating ============ */
  .phone-glow{position:absolute;inset:-8%;z-index:-1;background:radial-gradient(closest-side, rgba(195,174,120,0.16), transparent 72%);filter:blur(6px);}
  .phone-glow.inset{left:20%;right:20%;inset-block:auto;top:-8%;bottom:-8%;}

  @keyframes floatY{0%,100%{transform:translateY(0) rotate(var(--r,0deg));}50%{transform:translateY(-14px) rotate(var(--r,0deg));}}
  .float{animation:floatY 6.5s ease-in-out infinite;}
  .float-slow{animation:floatY 8.5s ease-in-out infinite;}
  .delay-05{animation-delay:.05s;}
  .delay-15{animation-delay:.15s;}
  .delay-28{animation-delay:.28s;}
  .delay-3{animation-delay:.3s;}
  .delay-4{animation-delay:.4s;}
  .delay-5{animation-delay:.5s;}
  .rotate-neg-4{--r:-4deg;}
  .rotate-neg-3{--r:-3deg;}
  .rotate-neg-2{--r:-2deg;}
  .rotate-2{--r:2deg;}
  .rotate-3{--r:3deg;}
  .rotate-4{--r:4deg;}

  /* ============ phone window ============ */
  .phone-window{
    position:relative;overflow:hidden;border-radius:30px;
    aspect-ratio:700/1040;
    box-shadow:0 30px 60px -25px rgba(0,0,0,0.65), 0 0 0 1px rgba(195,174,120,0.1);
    -webkit-mask-image:linear-gradient(to bottom, black 80%, transparent 99%);
    mask-image:linear-gradient(to bottom, black 80%, transparent 99%);
  }
  .phone-window img{width:100%;height:100%;object-fit:cover;object-position:top center;}
  .phone-window.small{aspect-ratio:700/880;}

  .phone-solo{max-width:340px;margin:0 auto;}
  @media(min-width:1024px){.phone-solo.align-left{margin-left:0;}.phone-solo.align-right{margin-right:0;margin-left:auto;}}

  .phone-duo{position:relative;max-width:340px;margin:0 auto;}
  @media(min-width:1024px){.phone-duo.align-left{margin-left:0;}.phone-duo.align-right{margin-right:0;margin-left:auto;}}
  .phone-duo .secondary{position:absolute;width:46%;bottom:-38px;display:none;}
  @media(min-width:560px){.phone-duo .secondary{display:block;}}
  .phone-duo .secondary.right{right:-36px;}
  .phone-duo .secondary.left{left:-36px;}

  /* ============ section shells ============ */
  .section{padding:92px 0;}
  @media(min-width:768px){.section{padding:126px 0;}}

  .feature-grid{display:grid;grid-template-columns:1fr;gap:60px;align-items:center;}
  @media(min-width:1024px){.feature-grid{grid-template-columns:1fr 1fr;gap:40px;}}
  .order-swap-1{order:2;}
  .order-swap-2{order:1;}
  @media(min-width:1024px){.order-swap-1{order:1;}.order-swap-2{order:2;}}

  .section-heading{font-family:var(--serif);color:var(--cream);font-size:2.1rem;line-height:1.16;font-weight:600;}
  @media(min-width:640px){.section-heading{font-size:2.7rem;}}
  .section-sub{font-family:var(--serif);font-style:italic;color:var(--gold-light);font-size:1.1rem;margin-top:16px;}
  .section-text{color:var(--muted);margin-top:22px;max-width:46ch;line-height:1.75;}

  .feat-list{margin-top:30px;}
  .feat-list li{position:relative;padding-left:26px;color:var(--muted);font-size:0.98rem;line-height:1.6;}
  .feat-list li::before{content:'❖';position:absolute;left:0;top:0.05em;color:var(--gold);font-size:0.85em;}
  .feat-list li + li{margin-top:12px;}

  /* ============ security band ============ */
  .band-deep{
    background:radial-gradient(ellipse 70% 60% at 50% 0%, rgba(195,174,120,0.06), transparent 65%), var(--bg-deep);
    border-top:1px solid var(--line-soft);
    border-bottom:1px solid var(--line-soft);
  }
  .sec-intro{max-width:640px;margin:0 auto;text-align:center;}
  .sec-intro .section-text{margin-left:auto;margin-right:auto;}

  .stat-grid{display:grid;grid-template-columns:1fr;gap:20px;max-width:1080px;margin:64px auto 0;}
  @media(min-width:640px){.stat-grid{grid-template-columns:repeat(3,1fr);}}
  .stat-card{background:var(--card);border:1px solid var(--line-soft);border-radius:16px;padding:26px;}
  .stat-card svg{margin-bottom:16px;}
  .stat-card h3{font-family:var(--serif);color:var(--cream);font-size:1.15rem;font-weight:600;}
  .stat-card p{color:var(--muted);font-size:0.9rem;margin-top:8px;line-height:1.6;}

  .sec-duo{max-width:1080px;margin:64px auto 0;position:relative;display:flex;align-items:flex-end;justify-content:center;gap:24px;}
  .sec-duo .phone-window{width:34%;max-width:170px;}
  .sec-duo .phone-window.lg{width:46%;max-width:230px;}
  @media(min-width:640px){.sec-duo{gap:40px;}}

  /* ============ final cta ============ */
  .final-cta{text-align:center;max-width:620px;margin:0 auto;}
  .final-cta > img{margin:0 auto 26px;width:48px;height:48px;border-radius:12px;}
  .final-cta .btn{margin-top:34px;}

  /* ============ footer ============ */
  footer{padding:80px 0 40px;}
  .footer-grid{display:grid;grid-template-columns:1fr;gap:48px;}
  @media(min-width:640px){.footer-grid{grid-template-columns:1fr 1fr;}}
  @media(min-width:1024px){.footer-grid{grid-template-columns:1.6fr 1fr 1fr;}}
  .footer-brand p{color:var(--muted);font-size:0.9rem;margin-top:18px;max-width:38ch;line-height:1.7;}
  .footer-col h4{font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted-2);margin-bottom:20px;}
  .footer-col li{margin-top:12px;}
  .footer-col li:first-child{margin-top:0;}
  .footer-col a{color:var(--muted);font-size:0.92rem;transition:color .3s ease;}
  .footer-col a:hover{color:var(--cream);}
  .footer-bottom{display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:space-between;text-align:center;margin-top:0px;}
  @media(min-width:640px){.footer-bottom{flex-direction:row;text-align:left;}}
  .footer-bottom p{font-size:0.75rem;color:var(--muted-2);}
  .footer-bottom .quote{font-family:var(--serif);font-style:italic;font-size:0.92rem;}

  /* ============ IG Img =================== */
.instagram-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.instagram-link svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

  /* ============ svg footer =================== */

.footer-col svg {
  width: 16px;  /* Dimensione leggermente più discreta per il footer */
  height: 16px;
  flex-shrink: 0;
}

  /* ============ Play Store Download =================== */

.store-link{
  display:inline-flex;
  margin-top:34px;
  border-radius:14px;
  transition:transform .35s cubic-bezier(.2,.8,.2,1), filter .35s ease;
}
.store-link:hover{
  transform:translateY(-2px);
  filter:drop-shadow(0 14px 26px rgba(195,174,120,0.3));
}

.store-badge {
  height: 52px;
  width: auto;
  border-radius: 14px;
  display:block;
}

.app-store-img {
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:min(520px, 65vh);
  object-fit:contain;
  border-radius:14px;
  margin:30px auto;
}

  /* ============ faq =================== */

.faq {
  padding: 0;
}

.faq-list {
  max-width: 720px;
  margin: 56px auto 0;
}

.faq-item {
  background: var(--card);
  border: 1px solid var(--line-soft);
  border-radius: 16px;
  padding: 4px 26px;
  margin-top: 14px;
  transition: border-color .3s ease, background .3s ease;
}

.faq-item:first-child {
  margin-top: 0;
}

.faq-item:hover {
  border-color: rgba(195,174,120,0.4);
}

.faq-item summary {
  cursor: pointer;
  font-family: var(--serif);
  font-size: 1.08rem;
  font-weight: 500;
  color: var(--cream);
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 0;
}

.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item summary::after {
  content: "+";
  font-family: var(--sans);
  font-weight: 300;
  font-size: 1.5rem;
  line-height: 1;
  color: var(--gold);
  flex-shrink: 0;
  transition: transform .35s ease;
}

.faq-item[open] summary::after {
  transform: rotate(45deg);
}

.faq-item[open] {
  border-color: rgba(195,174,120,0.3);
  background: rgba(195,174,120,0.045);
}

.faq-item p {
  margin: 0 0 26px;
  border-top: 1px solid var(--line-soft);
  padding-top: 18px;
  color: var(--muted);
  line-height: 1.75;
  font-size: 0.95rem;
  max-width: 58ch;
}

/* ============ Language Selector ============ */
.lang-select-wrap {
  display: inline-flex;
  align-items: center;
  margin-left: 12px;
}

.lang-select {
  background: var(--bg-deep);
  color: var(--cream);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 6px 12px;
  font-family: var(--sans);
  font-size: 0.85rem;
  font-weight: 500;
  cursor: pointer;
  outline: none;
  transition: border-color .3s ease;
}

.lang-select:hover, .lang-select:focus {
  border-color: var(--gold);
}

.lang-select option {
  background: var(--bg-deep);
  color: var(--text);
}

/* Allineamento e dimensione icone della navigazione principale */
.nav-links .nav-link {
  display: inline-flex;
  align-items: center;
  gap: 8px; /* Spazio tra l'icona e il testo */
}

.nav-links .nav-link svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.mobile-menu .nav-link {
  display: inline-flex;
  align-items: center;
  gap: 8px; /* Spazio tra l'icona e il testo */
}

.mobile-menu .nav-link svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

  /* ============ scroll reveal ============ */
  .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1), transform .9s cubic-bezier(.2,.7,.2,1);}
  .reveal.is-visible{opacity:1;transform:translateY(0);}

  .hero-in{opacity:0;transform:translateY(18px);animation:heroIn 1s cubic-bezier(.2,.7,.2,1) forwards;}
  @keyframes heroIn{to{opacity:1;transform:translateY(0);}}

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}
    html{scroll-behavior:auto !important;}
  }

  @media (min-width: 992px) {
  .nav-links { display: flex; }
  .nav-cta { display: inline-flex; }
  .menu-btn { display: none; }
}

  /* ============ privacy page ============ */
  .privacy-hero{padding:168px 0 30px;text-align:center;position:relative;}
  @media(min-width:768px){.privacy-hero{padding:196px 0 40px;}}
  .privacy-hero .eyebrow-row{justify-content:center;}
  .privacy-title{font-family:var(--serif);color:var(--cream);font-weight:600;line-height:1.14;font-size:2.2rem;margin-top:22px;}
  @media(min-width:640px){.privacy-title{font-size:3rem;}}
  .privacy-hero .section-sub{margin-top:16px;}
  .privacy-hero .section-text{margin:22px auto 0;text-align:center;}

  .privacy-badge{display:inline-flex;align-items:center;gap:8px;margin-top:30px;padding:9px 20px;border:1px solid var(--line);border-radius:999px;background:rgba(195,174,120,0.05);font-size:0.78rem;letter-spacing:0.04em;color:var(--muted-2);}
  .privacy-badge .diamond{width:5px;height:5px;background:var(--gold);transform:rotate(45deg);flex-shrink:0;}

  .privacy-article{padding:20px 0 40px;}
  .privacy-article .wrap{max-width:820px;}

  .privacy-block{background:var(--card);border:1px solid var(--line-soft);border-radius:16px;padding:34px 30px;margin-top:22px;}
  @media(min-width:640px){.privacy-block{padding:40px 44px;}}
  .privacy-block:first-child{margin-top:0;}
  .privacy-block .divider{margin-bottom:22px;}
  .privacy-block h2{font-family:var(--serif);color:var(--cream);font-size:1.35rem;font-weight:600;line-height:1.3;}
  @media(min-width:640px){.privacy-block h2{font-size:1.55rem;}}
  .privacy-block p{color:var(--muted);line-height:1.75;font-size:0.97rem;margin-top:14px;}
  .privacy-block ul{margin-top:16px;}
  .privacy-block ul li{position:relative;padding-left:26px;color:var(--muted);font-size:0.95rem;line-height:1.7;}
  .privacy-block ul li::before{content:'❖';position:absolute;left:0;top:0.05em;color:var(--gold);font-size:0.8em;}
  .privacy-block ul li + li{margin-top:11px;}
  .privacy-block strong{color:var(--cream);font-weight:600;}
  .privacy-block a{color:var(--gold-light);border-bottom:1px solid var(--line);padding-bottom:1px;transition:color .3s ease,border-color .3s ease;}
  .privacy-block a:hover{color:var(--gold);border-color:var(--gold);}

  .privacy-highlight{background:rgba(195,174,120,0.06);border-left:2px solid var(--gold);border-radius:0 12px 12px 0;padding:18px 22px;margin-top:18px;}
  .privacy-highlight p{margin-top:0;font-style:italic;color:var(--gold-light);font-size:0.95rem;}

  .privacy-table-wrap{overflow-x:auto;margin-top:16px;-webkit-overflow-scrolling:touch;}
  .privacy-table{width:100%;border-collapse:collapse;font-size:0.9rem;table-layout:fixed;}
  .privacy-table th{text-align:left;font-family:var(--serif);font-weight:600;color:var(--gold-light);padding:10px 16px 12px 0;border-bottom:1px solid var(--line);}
  .privacy-table th:first-child,.privacy-table td:first-child{width:38%;}
  .privacy-table td{padding:13px 16px 13px 0;color:var(--muted);border-bottom:1px solid var(--line-soft);vertical-align:top;line-height:1.65;overflow-wrap:break-word;word-break:break-word;}
  .privacy-table td:first-child{color:var(--gold-light);}
  .privacy-table tr:last-child td{border-bottom:none;}

  @media(max-width:599px){
    .privacy-table-wrap{overflow-x:visible;}
    .privacy-table{min-width:0;}
    .privacy-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
    .privacy-table,.privacy-table tbody,.privacy-table tr,.privacy-table td{display:block;width:100%;}
    .privacy-table tr{padding:14px 0;border-bottom:1px solid var(--line-soft);}
    .privacy-table tr:last-child{border-bottom:none;}
    .privacy-table td{padding:3px 0;border-bottom:none;word-break:break-word;}
    .privacy-table td:first-child{font-weight:600;padding-bottom:6px;width:100%;}
    .privacy-table td:last-child::before{content:"Motivo: ";color:var(--gold-light);font-weight:600;}
  }

  .privacy-contact{text-align:center;background:var(--card);border:1px solid var(--line-soft);border-radius:16px;padding:44px 30px;margin-top:22px;}
  .privacy-contact h3{font-family:var(--serif);color:var(--cream);font-size:1.35rem;font-weight:600;}
  .privacy-contact p{color:var(--muted);font-size:0.95rem;margin-top:14px;max-width:48ch;margin-left:auto;margin-right:auto;}
  .privacy-contact a{display:inline-block;margin-top:16px;color:var(--gold-light);font-size:0.98rem;border-bottom:1px solid var(--line);padding-bottom:2px;transition:color .3s ease,border-color .3s ease;}
  .privacy-contact a:hover{color:var(--gold);border-color:var(--gold);}

  /* Banner avviso lingue Privacy Policy */
.privacy-notice {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 30px;
  padding: 10px 18px;
  background: rgba(195, 174, 120, 0.08);
  border: 1px solid rgba(195, 174, 120, 0.25);
  border-radius: 12px;
  color: var(--gold-light);
  font-size: 0.88rem;
  line-height: 1.4;
  text-align: left;
  max-width: 580px;
}

.privacy-notice svg {
  flex-shrink: 0;
  color: var(--gold);
}