/* ===== Home DUETORRINCC.it — stile 2026-09 (caricato solo sulla home) ===== */
:root{
  --hp-nav-h:150px;
  --hp-radius:14px;
  --hp-card:#161616;
  --hp-line:rgba(255,255,255,0.08);
  --hp-ease:cubic-bezier(0.16,1,0.3,1);
}
html{scroll-behavior:smooth}
.hp-icon{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}

/* ---------- HERO ---------- */
.hp-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden;padding:calc(var(--hp-nav-h) + 20px) 0 60px;isolation:isolate}
.hp-hero-bg{position:absolute;inset:0;z-index:-2;background:url('../img/home_intro_vito.jpg') center 55%/cover no-repeat;transform:scale(1.04);animation:hpKen 14s var(--hp-ease) forwards}
@keyframes hpKen{to{transform:scale(1)}}
.hp-hero-shade{position:absolute;inset:0;z-index:-1;background:
  linear-gradient(90deg,rgba(0,0,0,0.88) 0%,rgba(0,0,0,0.72) 38%,rgba(0,0,0,0.25) 70%,rgba(0,0,0,0.15) 100%),
  linear-gradient(180deg,rgba(0,0,0,0.55) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 65%,rgba(17,17,17,0.95) 100%)}
.hp-hero-inner{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}
.hp-hero-text{max-width:600px}
.hp-hero h1{font-size:clamp(2.6rem,1.2rem + 4.2vw,4.6rem);line-height:1.08;letter-spacing:-0.01em;margin-bottom:16px;text-wrap:balance}
.hp-hero h1 span{display:block}
.hp-hero h1 .hp-hero-kicker{font-family:var(--font-body,inherit);font-size:clamp(0.72rem,0.68rem + 0.2vw,0.85rem);font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--gold);line-height:1.5;margin-bottom:18px}
.hp-hero-sub{font-size:clamp(1.05rem,0.9rem + 0.6vw,1.4rem);color:var(--text-white);font-weight:300;margin-bottom:26px}
.hp-hero-rule{width:64px;height:2px;background:var(--gold);margin-bottom:22px}
.hp-hero-tag{color:var(--gold);text-transform:uppercase;letter-spacing:3px;font-size:0.78rem;line-height:1.9;max-width:300px;margin-bottom:38px}
.hp-hero-actions{display:flex;flex-wrap:wrap;gap:16px}
.hp-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:60px;padding:0 30px;border-radius:6px;font-weight:700;font-size:0.82rem;letter-spacing:2px;text-transform:uppercase;text-decoration:none;transition:transform .35s var(--hp-ease),box-shadow .35s var(--hp-ease),background .3s,color .3s}
.hp-btn .hp-icon{width:1.25em;height:1.25em;transition:transform .35s var(--hp-ease)}
.hp-btn:hover .hp-icon{transform:translateX(4px)}
.hp-btn-gold{background:linear-gradient(135deg,#d9b86a 0%,var(--gold) 55%,#b48c46 100%);color:#000;box-shadow:0 12px 30px rgba(197,160,89,0.25)}
.hp-btn-gold:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(197,160,89,0.35)}
.hp-btn-outline{border:1px solid var(--gold);color:var(--gold);background:rgba(0,0,0,0.35);backdrop-filter:blur(6px)}
.hp-btn-outline:hover{background:var(--gold);color:#000;transform:translateY(-2px)}
.hp-btn-outline i{font-size:1.3em}

/* ---------- VALORI ---------- */
.hp-values{background:#0d0d0d;border-top:1px solid var(--hp-line);border-bottom:1px solid var(--hp-line)}
.hp-values ul{list-style:none;display:flex;max-width:1200px;margin:0 auto;padding:0 20px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.hp-values ul::-webkit-scrollbar{display:none}
.hp-values li{display:flex;align-items:center;gap:12px;padding:20px 26px 20px 0;margin-right:26px;border-right:1px solid rgba(255,255,255,0.14);white-space:nowrap;color:var(--text-white);font-family:var(--font-title);font-size:1.05rem}
.hp-values li:last-child{border-right:0;margin-right:0;padding-right:0}
.hp-values .hp-icon{width:24px;height:24px;color:var(--gold)}

/* ---------- SEZIONI ---------- */
.hp-section{padding:clamp(48px,4vw + 24px,90px) 0}
.hp-container{max-width:1200px;margin:0 auto;padding:0 20px}
.hp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}
.hp-eyebrow{display:flex;align-items:center;gap:8px;color:var(--gold);text-transform:uppercase;letter-spacing:3px;font-size:0.7rem;font-weight:500;margin-bottom:10px}
.hp-eyebrow::after{content:"";width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
.hp-head h2{font-size:clamp(1.9rem,1.2rem + 2.2vw,2.9rem);line-height:1.1;margin:0}
.hp-more{display:inline-flex;align-items:center;gap:10px;color:var(--gold);text-decoration:none;text-transform:uppercase;letter-spacing:2px;font-size:0.72rem;font-weight:500;white-space:nowrap;padding-bottom:6px}
.hp-more .hp-icon{width:1.4em;height:1.4em;transition:transform .35s var(--hp-ease)}
.hp-more:hover .hp-icon{transform:translateX(5px)}

/* ---------- SERVIZI ---------- */
.hp-services{padding-top:24px}
.hp-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hp-card{position:relative;display:flex;flex-direction:column;background:var(--hp-card);border:1px solid var(--hp-line);border-radius:var(--hp-radius);overflow:hidden;text-decoration:none;color:var(--text-white);transition:transform .45s var(--hp-ease),border-color .3s,box-shadow .45s var(--hp-ease)}
.hp-card:hover{transform:translateY(-6px);border-color:rgba(197,160,89,0.45);box-shadow:0 24px 50px rgba(0,0,0,0.5)}
.hp-card-media{aspect-ratio:4/3;overflow:hidden}
.hp-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--hp-ease)}
.hp-card:hover .hp-card-media img{transform:scale(1.06)}
.hp-card-body{display:flex;align-items:flex-start;gap:14px;padding:22px 22px 24px}
.hp-card-body .hp-icon{width:28px;height:28px;margin-top:4px;color:var(--text-white)}
.hp-card-body h3{font-size:1.45rem;line-height:1.2;margin:0;flex:1}
.hp-card-arrow{position:absolute;right:20px;bottom:18px;color:var(--gold);width:22px;height:22px;transition:transform .35s var(--hp-ease)}
.hp-card:hover .hp-card-arrow{transform:translateX(5px)}

/* ---------- FLOTTA ---------- */
.hp-fleet{background:#0d0d0d;border-top:1px solid var(--hp-line)}
.hp-fleet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.hp-fleet-card{display:block;background:var(--hp-card);border:1px solid var(--hp-line);border-radius:var(--hp-radius);overflow:hidden;text-decoration:none;color:var(--text-white);transition:transform .45s var(--hp-ease),border-color .3s}
.hp-fleet-card:hover{transform:translateY(-6px);border-color:rgba(197,160,89,0.45)}
.hp-fleet-media{aspect-ratio:16/10;overflow:hidden;background:#0a0a0a}
.hp-fleet-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--hp-ease)}
.hp-fleet-card:hover .hp-fleet-media img{transform:scale(1.05)}
.hp-fleet-body{padding:20px 22px 24px}
.hp-fleet-body h3{font-size:1.6rem;margin:0 0 6px}
.hp-fleet-body p{color:var(--gold);text-transform:uppercase;letter-spacing:3px;font-size:0.72rem;font-weight:500;margin:0}

/* ---------- PREVENTIVO ---------- */
.hp-quote{scroll-margin-top:var(--hp-nav-h)}
.hp-quote .hp-head{justify-content:center;text-align:center;margin-bottom:34px}
.hp-quote .hp-eyebrow{justify-content:center}
.hp-quote .luxury-calculator{margin-top:0;border-radius:var(--hp-radius)}

/* ---------- DESKTOP ---------- */
@media (min-width:769px){
  .hp-values ul{justify-content:center}
  .hp-values li{padding:22px 36px;margin-right:0}
  .hp-values li:last-child{padding-right:36px}
  .hp-hero{min-height:100vh;background:#0d0d0d}
  .hp-hero-bg{left:auto;right:0;top:0;bottom:0;width:auto;aspect-ratio:3/5;max-width:62vw;background-position:22% center;transform-origin:right center;
    -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,0) 0%,#000 38%);mask-image:linear-gradient(90deg,rgba(0,0,0,0) 0%,#000 38%)}
  .hp-hero-shade{background:
    linear-gradient(90deg,rgba(13,13,13,0.55) 0%,rgba(13,13,13,0.15) 45%,rgba(13,13,13,0) 60%),
    linear-gradient(180deg,rgba(0,0,0,0.35) 0%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 70%,rgba(17,17,17,0.95) 100%)}
}

/* ---------- MOBILE ---------- */
@media (max-width:768px){
  :root{--hp-nav-h:110px}
  .hp-hero{min-height:calc(100svh - 60px);align-items:flex-end;padding:calc(var(--hp-nav-h) + 24px) 0 84px}
  .hp-hero h1,.hp-hero-sub,.hp-hero-tag{text-shadow:0 2px 18px rgba(0,0,0,0.85),0 1px 3px rgba(0,0,0,0.9)}
  .whatsapp-float{display:none}
  .hp-hero-bg{background-position:center center;animation:none;transform:none}
  .hp-hero-shade{background:
    linear-gradient(180deg,rgba(0,0,0,0.9) 0%,rgba(0,0,0,0.72) 30%,rgba(0,0,0,0.3) 46%,rgba(0,0,0,0) 56%,rgba(0,0,0,0) 78%,rgba(17,17,17,0.6) 92%,rgba(17,17,17,0.9) 100%),
    linear-gradient(90deg,rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 40%)}
  .hp-hero-inner{display:flex;flex-direction:column;min-height:calc(100svh - 60px - var(--hp-nav-h) - 108px)}
  .hp-hero-text{max-width:none}
  .hp-hero h1{font-size:clamp(2.35rem,1rem + 7.5vw,3rem);margin-bottom:10px}
  .hp-hero-sub{font-size:1.1rem;margin-bottom:0}
  .hp-hero-rule{margin-bottom:16px}
  .hp-hero-rule,.hp-hero-tag{display:none}
  .hp-hero-actions{margin-top:auto;padding-top:30px;display:grid;grid-template-columns:1.7fr 1fr;gap:10px}
  .hp-btn{min-height:60px;padding:0 10px;font-size:0.66rem;letter-spacing:1.2px;gap:8px;white-space:nowrap}
  .hp-btn .hp-icon{width:1.1em;height:1.1em}
  .hp-values li{padding:14px 18px 14px 0;margin-right:18px;font-size:0.95rem}
  .hp-section{padding:34px 0}
  .hp-services{padding-top:20px}
  .hp-services-grid{gap:12px}
  .hp-card-media{aspect-ratio:1/1}
  .hp-card-body{flex-direction:column;gap:8px;padding:12px 12px 26px}
  .hp-card-body .hp-icon{width:22px;height:22px;margin-top:0}
  .hp-card-body h3{font-size:0.98rem}
  .hp-card-arrow{right:12px;bottom:12px;width:18px;height:18px}
  .hp-head{margin-bottom:18px;flex-direction:column;align-items:flex-start;gap:10px}
  .hp-quote .hp-head{align-items:center}
  .hp-head h2{font-size:1.85rem}
  .hp-fleet-grid{gap:12px}
  .hp-fleet-body{padding:12px 12px 14px}
  .hp-fleet-body h3{font-size:1.15rem}
  .hp-fleet-body p{font-size:0.6rem;letter-spacing:2px}
}
@media (max-width:400px){
  .hp-hero-actions{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
  .hp-btn{white-space:normal;text-align:center;line-height:1.3;font-size:0.62rem}
  .hp-values li{font-size:0.9rem}
  .hp-fleet-body p{letter-spacing:1.5px}
}
@media (prefers-reduced-motion:reduce){
  .hp-hero-bg{animation:none;transform:none}
  .hp-card,.hp-fleet-card,.hp-btn,.hp-card-media img,.hp-fleet-media img{transition:none}
}
