*{box-sizing:border-box}
:root{
  --bg:#0d0f14;
  --text:#f5f2ec;
  --muted:rgba(245,242,236,.74);
  --muted2:rgba(245,242,236,.56);
  --gold:#d8af68;
  --line:rgba(255,255,255,.10);
  --shadow:0 28px 80px rgba(0,0,0,.42);
}
html,body{
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body{overflow-x:hidden}
.hero{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  background:linear-gradient(180deg,var(--bg) 0%, #0b0d12 100%);
}
.hero-bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(10,11,15,.97) 0%, rgba(10,11,15,.96) 52%, rgba(10,11,15,.82) 70%, rgba(10,11,15,.56) 84%, rgba(10,11,15,.34) 100%),
    radial-gradient(circle at 78% 48%, rgba(216,175,104,.08), transparent 18%),
    url("assets/wall.jpg") 112% center / 840px auto no-repeat;
}
.hero-noise{
  position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,255,255,.05), transparent 14%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
}
.header,.hero-inner{
  position:relative;
  z-index:2;
  width:min(1180px, calc(100% - 64px));
  margin-inline:auto;
}
.header{padding:30px 0 10px}
.brand{
  display:inline-flex; align-items:center; gap:14px;
  color:var(--text); text-decoration:none; font-weight:800; letter-spacing:-.02em;
}
.brand img{
  width:48px; height:48px; border-radius:14px; object-fit:cover;
  box-shadow:0 8px 22px rgba(0,0,0,.24);
}
.brand span{font-size:1.12rem}
.hero-inner{
  min-height:calc(100vh - 88px);
  display:grid;
  grid-template-columns: 56% 44%;
  align-items:center;
}
.copy{
  max-width:560px;
  padding:20px 0 48px 8px;
}
.kicker{
  margin:0 0 16px;
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.24em;
  font-weight:700;
}
.copy h1{
  margin:0;
  font-size:clamp(4rem, 6.2vw, 6.1rem);
  line-height:.94;
  letter-spacing:-.065em;
}
.copy h1 span{color:var(--gold)}
.subtitle{
  margin:26px 0 0;
  max-width:490px;
  color:var(--muted);
  font-size:clamp(1rem,1.28vw,1.12rem);
  line-height:1.85;
}
.stores{
  display:flex; gap:14px; flex-wrap:wrap; margin-top:34px;
}
.store-btn{
  min-width:208px;
  padding:16px 20px;
  border-radius:16px;
  text-decoration:none;
  color:var(--text);
  font-size:1.08rem;
  font-weight:700;
  background:rgba(16,18,24,.72);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.webapp{
  display:inline-flex; flex-direction:column; gap:4px;
  margin-top:18px; padding:14px 16px;
  width:fit-content;
  text-decoration:none;
  background:rgba(16,18,24,.56);
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:var(--shadow);
}
.webapp-top{color:var(--muted2); font-size:.82rem}
.webapp-bottom{color:var(--gold); font-size:1rem; font-weight:800}
.visual{
  position:relative;
  min-height:620px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.phone-shell{
  position:absolute;
  width:400px; height:600px;
  border-radius:40px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  border:1px solid rgba(255,255,255,.04);
  transform:translate(26px,0);
}
.phone{
  position:relative;
  width:min(315px, 26vw);
  aspect-ratio:.525/1;
  border-radius:40px;
  padding:12px;
  background:linear-gradient(180deg,#23262d,#07080b);
  box-shadow:0 42px 110px rgba(0,0,0,.5);
  transform:rotate(4deg) translateX(8px);
  z-index:2;
}
.phone-notch{
  position:absolute; top:9px; left:50%; transform:translateX(-50%);
  width:42%; height:20px; border-radius:0 0 16px 16px; background:#050609; z-index:3;
}
.phone-screen{
  width:100%; height:100%; border-radius:28px;
  border:1px solid rgba(255,255,255,.06);
  background:
    linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.12)),
    url("assets/app-screen.jpg") center/cover no-repeat;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}

@media (max-width: 980px){
  .header,.hero-inner{width:min(100% - 32px, 1180px)}
  .hero-bg{
    background:
      linear-gradient(180deg, rgba(10,11,15,.95) 0%, rgba(10,11,15,.88) 36%, rgba(10,11,15,.74) 72%, rgba(10,11,15,.80) 100%),
      radial-gradient(circle at 70% 58%, rgba(216,175,104,.08), transparent 18%),
      url("assets/wall.jpg") center top / 920px auto no-repeat;
  }
  .hero-inner{
    grid-template-columns:1fr;
    gap:16px;
    min-height:auto;
    padding-bottom:28px;
  }
  .copy{
    max-width:none;
    padding-left:0;
    padding-bottom:0;
  }
  .visual{
    min-height:0;
    padding-top:8px;
  }
  .phone-shell{
    width:340px; height:520px; transform:none;
  }
  .phone{
    width:min(310px, 72vw);
    transform:rotate(3deg);
  }
}
@media (max-width: 640px){
  .header{padding-top:18px; padding-bottom:4px}
  .brand img{width:46px; height:46px}
  .brand span{font-size:1.08rem}
  .copy{
    max-width:100%;
    padding-top:8px;
  }
  .kicker{font-size:.72rem}
  .copy h1{
    font-size:clamp(3.2rem, 12vw, 4.8rem);
  }
  .subtitle{
    max-width:100%;
    margin-top:20px;
    line-height:1.72;
  }
  .stores{
    flex-direction:column;
    margin-top:26px;
  }
  .store-btn{
    width:100%;
    min-width:0;
  }
  .webapp{
    margin-top:14px;
    max-width:100%;
  }
  .visual{
    padding-top:18px;
    justify-content:center;
  }
  .phone-shell{
    width:270px; height:410px;
  }
  .phone{
    width:min(245px, 70vw);
    transform:rotate(3deg);
  }
}


/* V13 phone refinement */
.visual{
  position:relative;
  min-height:620px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.phone-shell{
  display:none !important;
}

.phone{
  display:none !important;
}

.iphone{
  position:relative;
  width:min(315px, 26vw);
  aspect-ratio:0.49 / 1;
  border-radius:44px;
  padding:7px;
  background:
    linear-gradient(145deg, #6f7683 0%, #c6ccd6 14%, #4d5564 32%, #0f1218 52%, #7e8695 78%, #d7dde6 100%);
  box-shadow:
    0 30px 70px rgba(0,0,0,.34),
    0 10px 22px rgba(0,0,0,.22),
    inset 0 1px 1px rgba(255,255,255,.36),
    inset 0 -1px 1px rgba(0,0,0,.25);
  transform: rotate(4deg) translateX(8px);
  z-index:2;
}

.iphone::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:44px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.10);
  pointer-events:none;
}

.iphone-bezel{
  position:relative;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:38px;
  background:#05070b;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.05),
    inset 0 0 0 5px #0a0d12;
}

.iphone-island{
  position:absolute;
  top:10px;
  left:50%;
  transform:translateX(-50%);
  width:36%;
  height:28px;
  border-radius:999px;
  background:#020304;
  z-index:3;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.06),
    0 1px 0 rgba(255,255,255,.03);
}

.phone-screen{
  width:100%;
  height:100%;
  border-radius:34px;
  background:
    linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.10)),
    url("assets/app-screen.jpg") center/cover no-repeat;
  filter:saturate(1.04) contrast(1.03);
}

.phone-screen::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0) 16%, rgba(255,255,255,0) 80%, rgba(0,0,0,.05));
  pointer-events:none;
}

.iphone-buttons{
  position:absolute;
  left:-3px;
  top:92px;
  width:10px;
  z-index:2;
}

.iphone-buttons span,
.iphone-power{
  position:absolute;
  display:block;
  background:linear-gradient(180deg, #9aa2af, #4f5663);
  border-radius:999px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), inset 0 -1px 0 rgba(0,0,0,.18);
}

.iphone-buttons .mute{
  left:0;
  top:0;
  width:4px;
  height:28px;
}

.iphone-buttons .vol-up{
  left:0;
  top:42px;
  width:4px;
  height:58px;
}

.iphone-buttons .vol-down{
  left:0;
  top:110px;
  width:4px;
  height:58px;
}

.iphone-power{
  right:-3px;
  top:150px;
  width:4px;
  height:92px;
}

@media (max-width: 980px){
  .iphone{
    width:min(300px, 70vw);
    transform: rotate(3deg);
  }
}

@media (max-width: 640px){
  .visual{
    padding-top:18px;
    justify-content:center;
  }

  .iphone{
    width:min(235px, 68vw);
    transform: rotate(3deg);
  }
}


/* V14: more realistic iPhone + full screenshot visibility */
.visual{
  min-height: 640px;
}

.iphone,
.phone{
  image-rendering: auto;
}

.phone-screen{
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 12%, rgba(0,0,0,0) 82%, rgba(0,0,0,.06)),
    url("assets/app-screen.jpg") center center/100% 100% no-repeat !important;
  filter: saturate(1.05) contrast(1.04) brightness(1.01);
}

.iphone{
  box-shadow:
    0 34px 80px rgba(0,0,0,.30),
    0 12px 26px rgba(0,0,0,.20),
    inset 0 1px 1px rgba(255,255,255,.38),
    inset 0 -1px 1px rgba(0,0,0,.22);
}

.iphone-bezel{
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.06),
    inset 0 0 0 5px #0a0d12,
    inset 0 12px 18px rgba(255,255,255,.02);
}

@media (max-width: 980px){
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 12%, rgba(0,0,0,0) 82%, rgba(0,0,0,.06)),
      url("assets/app-screen.jpg") center center/100% 100% no-repeat !important;
  }
}

@media (max-width: 640px){
  .visual{
    padding-top: 20px;
  }

  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 12%, rgba(0,0,0,0) 82%, rgba(0,0,0,.06)),
      url("assets/app-screen.jpg") center center/100% 100% no-repeat !important;
  }
}


/* V15 refinements: thinner darker iPhone frame, hide top browser bar inside screenshot */
.iphone{
  width:min(308px, 25vw) !important;
  padding:5px !important;
  border-radius:38px !important;
  background:
    linear-gradient(145deg, #3e4652 0%, #798291 12%, #313843 28%, #0c0f15 52%, #555d6a 78%, #9fa7b5 100%) !important;
  box-shadow:
    0 30px 68px rgba(0,0,0,.28),
    0 10px 22px rgba(0,0,0,.18),
    inset 0 1px 1px rgba(255,255,255,.26),
    inset 0 -1px 1px rgba(0,0,0,.24) !important;
}

.iphone::after{
  border-radius:38px !important;
}

.iphone-bezel{
  border-radius:33px !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.04),
    inset 0 0 0 3px #090c11,
    inset 0 8px 14px rgba(255,255,255,.015) !important;
}

.iphone-island{
  top:9px !important;
  width:34% !important;
  height:26px !important;
}

.phone-screen{
  border-radius:29px !important;
  position:relative;
}

.phone-screen::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:13.5%;
  background:linear-gradient(180deg, #05070b 0%, rgba(5,7,11,.96) 80%, rgba(5,7,11,0) 100%);
  z-index:2;
  pointer-events:none;
  border-top-left-radius:29px;
  border-top-right-radius:29px;
}

.phone-screen::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:29px;
  background:linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,0) 12%, rgba(0,0,0,0) 82%, rgba(0,0,0,.05));
  pointer-events:none;
}

@media (max-width: 980px){
  .iphone{
    width:min(292px, 68vw) !important;
    padding:5px !important;
  }
}

@media (max-width: 640px){
  .iphone{
    width:min(228px, 66vw) !important;
    padding:4px !important;
    border-radius:34px !important;
  }
  .iphone::after{
    border-radius:34px !important;
  }
  .iphone-bezel{
    border-radius:30px !important;
  }
  .phone-screen{
    border-radius:26px !important;
  }
  .phone-screen::before,
  .phone-screen::after{
    border-top-left-radius:26px;
    border-top-right-radius:26px;
  }
}


/* V16: remove heavy top mask, use better-cropped source image */
.phone-screen::before{
  background: transparent !important;
  height: 0 !important;
  content: none !important;
}

.phone-screen{
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 84%, rgba(0,0,0,.04)),
    url("assets/app-screen.jpg") center top/100% 100% no-repeat !important;
}

@media (max-width: 980px){
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 84%, rgba(0,0,0,.04)),
      url("assets/app-screen.jpg") center top/100% 100% no-repeat !important;
  }
}

@media (max-width: 640px){
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 84%, rgba(0,0,0,.04)),
      url("assets/app-screen.jpg") center top/100% 100% no-repeat !important;
  }
}


/* V18: back to the correct source screenshot, with better top/bottom crop */
.phone-screen{
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 84%, rgba(0,0,0,.03)),
    url("assets/app-screen.jpg") center center/100% 100% no-repeat !important;
  filter: saturate(1.05) contrast(1.04) brightness(1.01);
}

.phone-screen::before{
  content: none !important;
  display: none !important;
  height: 0 !important;
  background: transparent !important;
}

.phone-screen::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:29px;
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 12%, rgba(0,0,0,0) 82%, rgba(0,0,0,.05));
  pointer-events:none;
}

@media (max-width: 980px){
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 84%, rgba(0,0,0,.03)),
      url("assets/app-screen.jpg") center center/100% 100% no-repeat !important;
  }
}

@media (max-width: 640px){
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 84%, rgba(0,0,0,.03)),
      url("assets/app-screen.jpg") center center/100% 100% no-repeat !important;
  }
}


/* V23: new phone screen image, fitted cleanly with max quality */
.phone-screen{
  background:
    linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 86%, rgba(0,0,0,.025)),
    url("assets/app-screen.jpg") center center / 100% 100% no-repeat !important;
  filter: saturate(1.03) contrast(1.02) brightness(1.005);
}

.phone-screen::before{
  content: none !important;
  display: none !important;
}

.phone-screen::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:29px;
  background:linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0) 12%, rgba(0,0,0,0) 84%, rgba(0,0,0,.03));
  pointer-events:none;
}

@media (max-width: 980px){
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 86%, rgba(0,0,0,.025)),
      url("assets/app-screen.jpg") center center / 100% 100% no-repeat !important;
  }
}

@media (max-width: 640px){
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0) 10%, rgba(0,0,0,0) 86%, rgba(0,0,0,.025)),
      url("assets/app-screen.jpg") center center / 100% 100% no-repeat !important;
  }
}


/* V24: thinner, darker, crisper iPhone frame + highest fidelity screen asset */
.iphone{
  width:min(296px, 24.6vw) !important;
  padding:4px !important;
  border-radius:40px !important;
  background:
    linear-gradient(145deg, #434a56 0%, #8e97a6 11%, #2f3640 28%, #0a0d12 51%, #4e5663 78%, #b8c0ce 100%) !important;
  box-shadow:
    0 24px 56px rgba(0,0,0,.26),
    0 8px 18px rgba(0,0,0,.14),
    inset 0 1px 1px rgba(255,255,255,.20),
    inset 0 -1px 1px rgba(0,0,0,.18) !important;
}

.iphone::after{
  border-radius:40px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.07) !important;
}

.iphone-bezel{
  border-radius:35px !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    inset 0 0 0 2px #080b10 !important;
}

.iphone-island{
  top:8px !important;
  width:34% !important;
  height:24px !important;
  background:#000 !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.05),
    0 0 0 1px rgba(255,255,255,.02) !important;
}

.iphone-buttons{
  left:-2px !important;
  top:90px !important;
}

.iphone-buttons .mute{
  width:3px !important;
  height:24px !important;
}

.iphone-buttons .vol-up,
.iphone-buttons .vol-down{
  width:3px !important;
  height:52px !important;
}

.iphone-buttons .vol-up{ top:38px !important; }
.iphone-buttons .vol-down{ top:102px !important; }

.iphone-power{
  right:-2px !important;
  top:144px !important;
  width:3px !important;
  height:84px !important;
}

.phone-screen{
  border-radius:30px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0) 9%, rgba(0,0,0,0) 88%, rgba(0,0,0,.02)),
    url("assets/app-screen.png") center center / 100% 100% no-repeat !important;
  filter:saturate(1.02) contrast(1.015) brightness(1.002) !important;
}

.phone-screen::after{
  border-radius:30px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0) 12%, rgba(0,0,0,0) 86%, rgba(0,0,0,.025)) !important;
}

@media (max-width: 980px){
  .iphone{
    width:min(284px, 67vw) !important;
    padding:4px !important;
  }
  .phone-screen{
    background:
      linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0) 9%, rgba(0,0,0,0) 88%, rgba(0,0,0,.02)),
      url("assets/app-screen.png") center center / 100% 100% no-repeat !important;
  }
}

@media (max-width: 640px){
  .iphone{
    width:min(228px, 65vw) !important;
    padding:4px !important;
    border-radius:34px !important;
  }
  .iphone::after{
    border-radius:34px !important;
  }
  .iphone-bezel{
    border-radius:30px !important;
  }
  .iphone-island{
    width:35% !important;
    height:22px !important;
  }
  .phone-screen{
    border-radius:26px !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0) 9%, rgba(0,0,0,0) 88%, rgba(0,0,0,.02)),
      url("assets/app-screen.png") center center / 100% 100% no-repeat !important;
  }
  .phone-screen::after{
    border-radius:26px !important;
  }
}


/* V25: even thinner border + orange/titanium inspired frame */
.iphone{
  width:min(294px, 24.5vw) !important;
  padding:3px !important;
  border-radius:39px !important;
  background:
    linear-gradient(
      145deg,
      #6f4632 0%,
      #cf8b5c 10%,
      #8a573d 22%,
      #2d1b15 42%,
      #0b0c10 54%,
      #7b4d37 74%,
      #e3a16a 90%,
      #8f5c3f 100%
    ) !important;
  box-shadow:
    0 24px 56px rgba(0,0,0,.24),
    0 8px 18px rgba(0,0,0,.13),
    inset 0 1px 1px rgba(255,228,205,.18),
    inset 0 -1px 1px rgba(0,0,0,.22) !important;
}

.iphone::after{
  border-radius:39px !important;
  box-shadow: inset 0 0 0 1px rgba(255,210,170,.08) !important;
}

.iphone-bezel{
  border-radius:35px !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.03),
    inset 0 0 0 2px #07090d !important;
}

.iphone-buttons span,
.iphone-power{
  background: linear-gradient(180deg, #d69263, #7c4e38) !important;
}

@media (max-width: 980px){
  .iphone{
    width:min(282px, 66vw) !important;
    padding:3px !important;
  }
}

@media (max-width: 640px){
  .iphone{
    width:min(226px, 64vw) !important;
    padding:3px !important;
    border-radius:33px !important;
  }
  .iphone::after{
    border-radius:33px !important;
  }
  .iphone-bezel{
    border-radius:30px !important;
  }
}


/* V26: logo asset quality bump + premium Wall4Ever wordmark */
.brand{
  gap:16px !important;
}

.brand img{
  width:48px !important;
  height:48px !important;
  border-radius:14px !important;
  box-shadow:
    0 10px 22px rgba(0,0,0,.22),
    0 0 0 1px rgba(255,255,255,.04) !important;
}

.brand span{
  font-size:1.18rem !important;
  font-weight:800 !important;
  letter-spacing:-0.03em !important;
  color:#f7f4ee !important;
  text-shadow:0 1px 0 rgba(255,255,255,.04);
}

@media (min-width: 981px){
  .brand span{
    font-size:1.24rem !important;
  }
}

@media (max-width: 640px){
  .brand{
    gap:13px !important;
  }

  .brand img{
    width:46px !important;
    height:46px !important;
  }

  .brand span{
    font-size:1.12rem !important;
    letter-spacing:-0.03em !important;
  }
}


/* V27: better premium font for Wall4Ever wordmark */
.brand span{
  font-family:"Manrope", Inter, ui-sans-serif, system-ui, sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-0.045em !important;
  font-size:1.22rem !important;
}

@media (min-width: 981px){
  .brand span{
    font-size:1.28rem !important;
  }
}

@media (max-width: 640px){
  .brand span{
    font-size:1.14rem !important;
    letter-spacing:-0.04em !important;
  }
}


/* V31: more premium typography */
body{
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

.copy h1{
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-weight:700 !important;
  letter-spacing:-0.03em !important;
  line-height:0.92 !important;
}

.subtitle{
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif !important;
  font-weight:500 !important;
  letter-spacing:-0.01em !important;
}

.kicker,
.store-btn,
.webapp,
.brand span{
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif !important;
}

.store-btn{
  font-weight:700 !important;
}

.webapp-top{
  font-weight:500 !important;
}

.webapp-bottom{
  font-weight:800 !important;
}


/* V37: premium badges redrawn from scratch, no uploaded badge images */
.stores.recreated-badges{
  display:flex !important;
  gap:16px !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  margin-top:34px !important;
}

.badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  min-width:226px !important;
  min-height:74px !important;
  padding:14px 18px !important;
  border-radius:22px !important;
  text-decoration:none !important;
  background:
    linear-gradient(180deg, rgba(5,6,10,.98) 0%, rgba(11,13,18,.98) 100%) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 0 0 1px rgba(255,255,255,.04) !important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}

.badge:hover{
  transform:translateY(-1px) !important;
  border-color:rgba(255,255,255,.24) !important;
  box-shadow:
    0 20px 42px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 0 0 1px rgba(255,255,255,.05) !important;
}

.badge-icon{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
}

.badge-icon svg{
  width:100%;
  height:100%;
  display:block;
}

.icon-apple{
  fill:#ffffff;
}

.icon-web{
  fill:#efc884;
}

.badge-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
}

.badge-kicker{
  color:rgba(244,241,234,.56);
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:.72rem;
  line-height:1.08;
  font-weight:700;
  letter-spacing:.08em;
}

.badge-main{
  color:#ffffff;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:1.2rem;
  line-height:1.04;
  font-weight:800;
  letter-spacing:-.035em;
}

.badge-webapp{
  margin-top:18px !important;
  width:fit-content !important;
  min-height:72px !important;
  background:
    linear-gradient(180deg, rgba(34,24,13,.95) 0%, rgba(18,14,10,.95) 100%) !important;
  border:1px solid rgba(232,190,120,.30) !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,245,220,.06),
    inset 0 0 0 1px rgba(255,204,128,.04) !important;
}

.badge-webapp .badge-main{
  color:#f0c985;
}

.store-btn{
  display:none !important;
}
.webapp{
  display:none !important;
}

@media (max-width: 640px){
  .stores.recreated-badges{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
  }

  .badge{
    width:100% !important;
    min-width:0 !important;
    min-height:72px !important;
    border-radius:20px !important;
    padding:14px 16px !important;
  }

  .badge-icon{
    width:42px;
    height:42px;
    flex-basis:42px;
  }

  .badge-main{
    font-size:1.16rem !important;
  }

  .badge-webapp{
    width:100% !important;
  }
}


/* V39: feature icons section under hero */
.feature-strip{
  position:relative;
  padding:44px 0 74px;
  background:
    linear-gradient(180deg, rgba(8,9,13,1) 0%, rgba(7,8,12,1) 100%);
}

.feature-strip::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 20%, rgba(215,173,103,.06), transparent 18%),
    radial-gradient(circle at 72% 28%, rgba(215,173,103,.05), transparent 16%);
  pointer-events:none;
}

.feature-grid{
  position:relative;
  z-index:1;
  width:min(1180px, calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:28px;
}

.feature-item{
  text-align:center;
  padding:8px 18px 0;
}

.feature-symbol{
  width:76px;
  height:76px;
  margin:0 auto 16px;
  display:grid;
  place-items:center;
  filter:drop-shadow(0 0 18px rgba(215,173,103,.14));
}

.feature-svg{
  width:58px;
  height:58px;
}

.feature-svg path,
.feature-svg circle{
  fill:none;
  stroke:#ddb777;
  stroke-width:2.3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.feature-item h3{
  margin:0 0 12px;
  color:#f7f4ee;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:1.95rem;
  line-height:1;
  font-weight:700;
  letter-spacing:-0.03em;
}

.feature-item p{
  max-width:330px;
  margin:0 auto;
  color:rgba(244,241,234,.68);
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:1rem;
  line-height:1.62;
  font-weight:500;
  letter-spacing:-0.01em;
}

@media (max-width: 980px){
  .feature-grid{
    grid-template-columns:1fr;
    gap:34px;
  }

  .feature-item{
    padding:0 6px;
  }

  .feature-item p{
    max-width:430px;
  }
}

@media (max-width: 640px){
  .feature-strip{
    padding:34px 0 56px;
  }

  .feature-grid{
    width:min(100% - 24px, 1180px);
    gap:28px;
  }

  .feature-symbol{
    width:68px;
    height:68px;
    margin-bottom:14px;
  }

  .feature-svg{
    width:52px;
    height:52px;
  }

  .feature-item h3{
    font-size:1.72rem;
    margin-bottom:10px;
  }

  .feature-item p{
    font-size:.98rem;
    line-height:1.58;
  }
}


/* V46: custom-drawn transparent PNG icons */
.feature-symbol.png-icon{
  width:100px !important;
  height:100px !important;
  margin:0 auto 12px !important;
  display:grid !important;
  place-items:center !important;
  filter:none !important;
}

.feature-symbol.png-icon img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}

.feature-svg{
  display:none !important;
}

@media (max-width: 640px){
  .feature-symbol.png-icon{
    width:92px !important;
    height:92px !important;
    margin-bottom:12px !important;
  }
}


/* V48: keep V46 icons section unchanged, only add final CTA + footer */
.final-cta-section{
  position:relative;
  padding:18px 0 0;
  background:linear-gradient(180deg, rgba(7,8,12,1) 0%, rgba(7,8,12,1) 100%);
}

.final-cta-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 22% 18%, rgba(215,173,103,.04), transparent 20%),
    radial-gradient(circle at 74% 24%, rgba(215,173,103,.04), transparent 18%);
  pointer-events:none;
}

.final-cta-card,
.site-footer-inner{
  position:relative;
  z-index:1;
  width:min(1180px, calc(100% - 48px));
  margin-inline:auto;
}

.final-cta-card{
  padding:34px 34px 30px;
  border-radius:26px;
  background:
    linear-gradient(180deg, rgba(20,22,30,.72) 0%, rgba(13,15,21,.72) 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 20px 48px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(10px);
  text-align:center;
}

.final-cta-card h2{
  margin:0 0 24px;
  color:#f7f4ee;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:clamp(2rem, 4vw, 3.2rem);
  line-height:1.05;
  font-weight:700;
  letter-spacing:-0.04em;
}

.final-cta-card h2 span{
  color:#d8af68;
}

.final-cta-badges{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:18px !important;
  flex-wrap:wrap !important;
  margin-top:0 !important;
}

.badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  min-width:226px !important;
  min-height:74px !important;
  padding:14px 18px !important;
  border-radius:22px !important;
  text-decoration:none !important;
  background:
    linear-gradient(180deg, rgba(5,6,10,.98) 0%, rgba(11,13,18,.98) 100%) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 0 0 1px rgba(255,255,255,.04) !important;
}

.badge-icon{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
}
.badge-icon svg{width:100%; height:100%; display:block;}
.icon-apple{fill:#fff;}

.badge-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
}
.badge-kicker{
  color:rgba(244,241,234,.56);
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:.72rem;
  line-height:1.08;
  font-weight:700;
  letter-spacing:.08em;
}
.badge-main{
  color:#ffffff;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:1.2rem;
  line-height:1.04;
  font-weight:800;
  letter-spacing:-.035em;
}

.site-footer{
  padding:24px 0 20px;
}

.site-footer-inner{
  padding:20px 0 0;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}

.footer-copy{
  color:rgba(244,241,234,.62);
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:0.98rem;
  font-weight:500;
}

.footer-links{
  display:flex;
  align-items:center;
  gap:28px;
  flex-wrap:wrap;
}

.footer-links a{
  color:rgba(244,241,234,.62);
  text-decoration:none;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size:0.98rem;
  font-weight:500;
}

@media (max-width: 640px){
  .final-cta-card,
  .site-footer-inner{
    width:min(100% - 24px, 1180px);
  }

  .final-cta-section{
    padding-top:8px;
  }

  .final-cta-card{
    padding:26px 18px 22px;
    border-radius:22px;
  }

  .final-cta-card h2{
    margin-bottom:20px;
    font-size:clamp(1.7rem, 8vw, 2.5rem);
  }

  .final-cta-badges{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
  }

  .badge{
    width:100% !important;
    min-width:0 !important;
    min-height:72px !important;
    border-radius:20px !important;
    padding:14px 16px !important;
  }

  .site-footer{
    padding-top:20px;
  }

  .site-footer-inner{
    justify-content:center;
    text-align:center;
    gap:18px;
  }

  .footer-links{
    justify-content:center;
    gap:18px 22px;
  }

  .footer-copy,
  .footer-links a{
    font-size:0.94rem;
  }
}


/* V49: keep final CTA buttons side by side */
.final-cta-badges{
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
}

@media (max-width: 640px){
  .final-cta-badges{
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:nowrap !important;
    gap:12px !important;
  }

  .final-cta-badges .badge{
    width:auto !important;
    min-width:0 !important;
    flex:0 1 auto !important;
    min-height:64px !important;
    padding:12px 14px !important;
  }

  .final-cta-badges .badge-icon{
    width:40px !important;
    height:40px !important;
    flex-basis:40px !important;
  }

  .final-cta-badges .badge-kicker{
    font-size:.62rem !important;
    letter-spacing:.06em !important;
  }

  .final-cta-badges .badge-main{
    font-size:1rem !important;
  }
}


/* V50: force final CTA badges to stay side-by-side on mobile */
@media (max-width: 640px){
  .final-cta-card{
    overflow: hidden !important;
  }

  .final-cta-badges{
    display:grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap:10px !important;
    align-items:stretch !important;
    justify-content:stretch !important;
    width:100% !important;
  }

  .final-cta-badges .badge{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    min-height:60px !important;
    padding:10px 10px !important;
    gap:8px !important;
    border-radius:16px !important;
  }

  .final-cta-badges .badge-icon{
    width:32px !important;
    height:32px !important;
    flex:0 0 32px !important;
  }

  .final-cta-badges .badge-copy{
    min-width:0 !important;
    gap:1px !important;
  }

  .final-cta-badges .badge-kicker{
    font-size:.54rem !important;
    line-height:1.05 !important;
    letter-spacing:.04em !important;
  }

  .final-cta-badges .badge-main{
    font-size:.88rem !important;
    line-height:1.02 !important;
    letter-spacing:-.02em !important;
  }
}


/* V51: brute-force mobile side-by-side for final CTA buttons */
@media screen and (max-width: 640px){
  .final-cta-card .final-cta-badges{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    justify-content:center !important;
    gap:10px !important;
    width:100% !important;
  }

  .final-cta-card .final-cta-badges > a,
  .final-cta-card .final-cta-badges > .badge{
    display:flex !important;
    flex:1 1 0 !important;
    width:calc(50% - 5px) !important;
    max-width:calc(50% - 5px) !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    align-items:center !important;
    justify-content:flex-start !important;
    padding:10px 10px !important;
    min-height:60px !important;
    border-radius:16px !important;
    gap:8px !important;
  }

  .final-cta-card .final-cta-badges .badge-icon{
    width:30px !important;
    height:30px !important;
    flex:0 0 30px !important;
  }

  .final-cta-card .final-cta-badges .badge-copy{
    min-width:0 !important;
    width:auto !important;
    display:flex !important;
    flex-direction:column !important;
    gap:1px !important;
  }

  .final-cta-card .final-cta-badges .badge-kicker{
    font-size:.5rem !important;
    line-height:1 !important;
    letter-spacing:.03em !important;
    white-space:nowrap !important;
  }

  .final-cta-card .final-cta-badges .badge-main{
    font-size:.86rem !important;
    line-height:1.02 !important;
    letter-spacing:-.02em !important;
    white-space:nowrap !important;
  }
}


/* V53: discreet top Web App link instead of third big button */
.webapp-inline-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  margin-top:18px !important;
  text-decoration:none !important;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif !important;
}

.webapp-inline-prefix{
  color:rgba(244,241,234,.50) !important;
  font-size:0.98rem !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  letter-spacing:-0.01em !important;
}

.webapp-inline-main{
  color:#d8af68 !important;
  font-size:1rem !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  letter-spacing:-0.02em !important;
}

.badge-webapp{
  display:none !important;
}

@media (max-width: 640px){
  .webapp-inline-link{
    margin-top:16px !important;
  }

  .webapp-inline-prefix{
    font-size:0.94rem !important;
  }

  .webapp-inline-main{
    font-size:0.96rem !important;
  }
}


/* V58: footer selector only, no layout confusion */
.footer-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}

.lang-switcher{
  display:flex;
  align-items:center;
  justify-content:center;
}

.lang-select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  min-width:78px;
  font-size:.86rem;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-weight:700;
  color:#f7f4ee;
  padding:10px 34px 10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg, rgba(16,18,24,.84) 0%, rgba(10,12,18,.84) 100%);
  box-shadow:
    0 12px 28px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.05);
}

@media (max-width: 640px){
  .site-footer-inner{
    justify-content:center;
    text-align:center;
  }
  .footer-right{
    width:100%;
    justify-content:center;
    flex-direction:column;
    gap:14px;
  }
  .footer-links{
    justify-content:center;
  }
}


/* V59: flag + browser-language-first */
.footer-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}

.lang-switcher{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.lang-flag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  font-size:1.1rem;
  border-radius:999px;
  background:rgba(16,18,24,.84);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:
    0 8px 18px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.lang-select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  min-width:78px;
  font-size:.86rem;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-weight:700;
  color:#f7f4ee;
  padding:10px 34px 10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg, rgba(16,18,24,.84) 0%, rgba(10,12,18,.84) 100%);
  box-shadow:
    0 12px 28px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.05);
}

@media (max-width: 640px){
  .site-footer-inner{
    justify-content:center;
    text-align:center;
  }
  .footer-right{
    width:100%;
    justify-content:center;
    flex-direction:column;
    gap:14px;
  }
  .footer-links{
    justify-content:center;
  }
}


/* V60: flag inside selector area */
.footer-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}

.lang-switcher{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.lang-select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  min-width:112px;
  font-size:.86rem;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  font-weight:700;
  color:#f7f4ee;
  padding:10px 34px 10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg, rgba(16,18,24,.84) 0%, rgba(10,12,18,.84) 100%);
  box-shadow:
    0 12px 28px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.05);
}

@media (max-width: 640px){
  .site-footer-inner{
    justify-content:center;
    text-align:center;
  }
  .footer-right{
    width:100%;
    justify-content:center;
    flex-direction:column;
    gap:14px;
  }
  .footer-links{
    justify-content:center;
  }
  .lang-select{
    min-width:108px;
  }
}


/* V64: restore bicolor hero title */
.copy h1 .hero-title-primary{
  color:#f5f2ec !important;
}

.copy h1 .hero-title-accent{
  color:#d8af68 !important;
}


/* V65: ensure final CTA title is bicolor too */
.final-cta-card h2 span:first-child{
  color:#f5f2ec !important;
}

.final-cta-card h2 span:last-child{
  color:#d8af68 !important;
}


/* FIXED: telefono non tagliato, web app link più visibile, gap ridotto */

/* Aumenta altezza visual per non tagliare il telefono */
.visual {
  min-height: 700px !important;
}

@media (max-width: 980px) {
  .visual {
    min-height: 0 !important;
    padding-bottom: 32px !important;
  }
}

/* Riduci l'altezza minima hero-inner per ridurre lo spazio vuoto */
.hero-inner {
  min-height: calc(100vh - 120px) !important;
}

/* Web App link più visibile */
.webapp-inline-link {
  margin-top: 20px !important;
  padding: 10px 16px !important;
  background: rgba(216, 175, 104, 0.07) !important;
  border: 1px solid rgba(216, 175, 104, 0.22) !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  width: fit-content !important;
  transition: background 0.18s ease, border-color 0.18s ease !important;
}

.webapp-inline-link:hover {
  background: rgba(216, 175, 104, 0.12) !important;
  border-color: rgba(216, 175, 104, 0.35) !important;
}

.webapp-inline-prefix {
  font-size: 0.96rem !important;
  color: rgba(244, 241, 234, 0.60) !important;
}

.webapp-inline-main {
  font-size: 0.96rem !important;
  color: #d8af68 !important;
}

/* Rimuovi gap in eccesso tra hero e feature-strip */
.feature-strip {
  padding-top: 52px !important;
}

/* Miglior transizione tra hero e features - gradient di raccordo */
.hero::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 80px;
  background: linear-gradient(to bottom, transparent, rgba(7, 8, 12, 0.8));
  pointer-events: none;
  z-index: 1;
}


/* === MOBILE ONLY FIXES === */

@media (max-width: 640px) {

  /* --- SFONDO: fix muro stirato --- */
  .hero-bg {
    background:
      linear-gradient(180deg,
        rgba(10,11,15,.96) 0%,
        rgba(10,11,15,.88) 40%,
        rgba(10,11,15,.78) 70%,
        rgba(10,11,15,.88) 100%
      ),
      url("assets/wall.jpg") center center / cover no-repeat !important;
  }

  /* --- TELEFONO: più piccolo su mobile --- */
  .iphone {
    width: min(200px, 56vw) !important;
    transform: rotate(3deg) !important;
  }

  .visual {
    min-height: 0 !important;
    padding-top: 8px !important;
    padding-bottom: 24px !important;
  }

  /* --- BOTTONI APP STORE / GOOGLE PLAY: più premium --- */
  .badge {
    min-height: 68px !important;
    border-radius: 20px !important;
    background:
      linear-gradient(160deg,
        rgba(28, 30, 40, 0.98) 0%,
        rgba(14, 16, 22, 0.98) 100%
      ) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    box-shadow:
      0 8px 28px rgba(0,0,0,.38),
      0 2px 6px rgba(0,0,0,.22),
      inset 0 1px 0 rgba(255,255,255,.12),
      inset 0 0 0 1px rgba(255,255,255,.05) !important;
  }

  .badge-main {
    font-size: 1.12rem !important;
    letter-spacing: -0.03em !important;
  }

  .badge-kicker {
    letter-spacing: 0.1em !important;
    opacity: 0.65 !important;
  }

  /* --- WEB APP LINK: più visibile e premium --- */
  .webapp-inline-link {
    padding: 12px 20px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(216, 175, 104, 0.30) !important;
    background: rgba(216, 175, 104, 0.06) !important;
  }

  .webapp-inline-prefix {
    font-size: 0.93rem !important;
  }

  .webapp-inline-main {
    font-size: 0.95rem !important;
    font-weight: 800 !important;
  }

  /* --- CTA FINALE: card più premium --- */
  .final-cta-card {
    background:
      linear-gradient(160deg,
        rgba(26, 28, 38, 0.88) 0%,
        rgba(14, 16, 22, 0.92) 100%
      ) !important;
    border: 1px solid rgba(216, 175, 104, 0.18) !important;
    box-shadow:
      0 18px 48px rgba(0,0,0,.30),
      inset 0 1px 0 rgba(255,255,255,.06),
      inset 0 0 0 1px rgba(216,175,104,.05) !important;
  }

  .final-cta-card h2 {
    font-size: clamp(1.6rem, 7.5vw, 2.2rem) !important;
    letter-spacing: -0.04em !important;
  }

  /* CTA bottoni finali side-by-side premium */
  .final-cta-card .final-cta-badges .badge {
    background:
      linear-gradient(160deg,
        rgba(28, 30, 40, 0.98) 0%,
        rgba(14, 16, 22, 0.98) 100%
      ) !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    box-shadow:
      0 6px 20px rgba(0,0,0,.32),
      inset 0 1px 0 rgba(255,255,255,.10) !important;
  }

  /* --- FOOTER LANG SELECTOR: più premium --- */
  .lang-select {
    font-size: 0.9rem !important;
    padding: 10px 30px 10px 12px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    background:
      linear-gradient(180deg,
        rgba(22, 24, 32, 0.92) 0%,
        rgba(12, 14, 20, 0.92) 100%
      ) !important;
    box-shadow:
      0 8px 22px rgba(0,0,0,.26),
      inset 0 1px 0 rgba(255,255,255,.07) !important;
  }
}


/* === FIX: sfumatura bottom hero mobile === */
@media (max-width: 640px) {
  .hero-bg {
    background:
      linear-gradient(180deg,
        rgba(10,11,15,.94) 0%,
        rgba(10,11,15,.82) 35%,
        rgba(10,11,15,.70) 58%,
        rgba(10,11,15,.88) 78%,
        rgba(10,11,15,1.00) 100%
      ),
      url("assets/wall.jpg") center center / cover no-repeat !important;
  }

  /* Gradient overlay aggiuntivo sul fondo del hero */
  .hero::after {
    height: 140px !important;
    background: linear-gradient(to bottom,
      transparent 0%,
      rgba(7, 8, 12, 0.6) 40%,
      rgba(7, 8, 12, 1.0) 100%
    ) !important;
  }
}
