/*!
 * Zevel — stili della homepage.
 * 1. base di pagina  2. hover  3. Contact Form 7  4. correzioni WordPress
 */

/* ── 1. base di pagina ───────────────────────────────────────────── */

html{background:#080b14}
html.lenis,html.lenis body{height:auto}
html.lenis-smooth{scroll-behavior:auto!important}
html.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
html.lenis-stopped{overflow:hidden}
body{margin:0;background:#080b14;color:#e8ecf6;font-family:'Space Grotesk',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:#e89962;text-decoration:none}
a:hover{color:#f0b78e}
::selection{background:#d06828;color:#fff}
@keyframes zvPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
@keyframes zvLine{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}
@keyframes zvFloat{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-2%,3%) scale(1.07)}}
@media (max-width:1180px){[data-rail]{display:none!important}}
@media (max-width:900px){
  [data-navlink]{display:none!important}
  [data-grid2]{grid-template-columns:minmax(0,1fr)!important}
  [data-photo-col]{max-width:380px;width:100%;margin:0 auto}
  [data-row]{grid-template-columns:auto minmax(0,1fr)!important;gap:4px 14px!important;align-items:center!important}
  [data-row]>*:nth-child(4){grid-column:1/-1!important;margin-top:6px}
  [data-steps]{padding-left:30px!important}
}
@media (max-width:560px){
  [data-cursor-dot],[data-cursor-ring]{display:none!important}
  [data-marquee] span{gap:20px!important;padding-right:20px!important}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important}}

/* ── 2. hover (erano attributi style-hover del framework) ────────── */

.zv-h1:hover{color:#fff !important;background-size:100% 1px !important}
.zv-h2:hover{background:#b85824 !important;color:#fff !important;box-shadow:0 10px 34px rgba(208,104,40,.45) !important}
.zv-h3:hover{background:#b85824 !important;color:#fff !important;box-shadow:0 18px 50px rgba(208,104,40,.5) !important}
.zv-h4:hover{background:rgba(255,255,255,.07) !important;border-color:rgba(255,255,255,.32) !important;color:#fff !important}
.zv-h5:hover{background:rgba(208,104,40,.14) !important;border-color:rgba(208,104,40,.5) !important;transform:translateY(-2px) !important}
.zv-h6:hover{background-size:100% 1px !important;color:#e89962 !important}
.zv-h7:hover{color:#e89962 !important}

/* ── 3. Contact Form 7 dentro la card bianca ─────────────────────── */

.zv-form .wpcf7{margin:0}
.zv-form form.wpcf7-form{display:flex;flex-direction:column;gap:18px}
.zv-form p{margin:0}

.zv-form label{
  display:flex;flex-direction:column;gap:7px;
  font-family:'Space Grotesk',system-ui,sans-serif;
  font-size:13px;font-weight:600;letter-spacing:.01em;color:#16203c;
}
.zv-form .wpcf7-form-control-wrap{display:block;width:100%}

.zv-form input[type=text],
.zv-form input[type=tel],
.zv-form input[type=email],
.zv-form textarea{
  box-sizing:border-box;width:100%;height:48px;padding:0 16px;margin:0;
  font-family:'Space Grotesk',system-ui,sans-serif;font-size:16px;font-weight:400;
  color:#16203c;background:#f6f7fb;
  border:1px solid #dfe3ec;border-radius:12px;
  outline:none;appearance:none;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.zv-form textarea{height:auto;min-height:120px;padding:14px 16px;line-height:1.6;resize:vertical}
.zv-form input::placeholder,
.zv-form textarea::placeholder{color:#98a0b3}
.zv-form input:focus,
.zv-form textarea:focus{
  background:#fff;border-color:#d06828;
  box-shadow:0 0 0 3px rgba(208,104,40,.16);
}

.zv-form input[type=submit],
.zv-form button[type=submit]{
  box-sizing:border-box;width:100%;height:54px;margin:0;padding:0;
  font-family:'Sora',system-ui,sans-serif;font-size:16px;font-weight:600;letter-spacing:-.01em;
  color:#fff;background:#d06828;
  border:0;border-radius:14px;cursor:pointer;appearance:none;
  transition:background .25s cubic-bezier(.2,0,0,1),box-shadow .25s cubic-bezier(.2,0,0,1),transform .25s cubic-bezier(.2,0,0,1);
}
.zv-form input[type=submit]:hover,
.zv-form button[type=submit]:hover{
  background:#b85824;box-shadow:0 18px 50px rgba(208,104,40,.5);
}
.zv-form input[type=submit]:disabled{opacity:.6;cursor:default}

/* nota privacy sotto al bottone */
.zv-form .zv-privacy{font-size:13px;line-height:1.5;color:#5a6274}
.zv-form .zv-privacy a{color:#d06828;text-decoration:underline}

/* messaggi ed errori di CF7 */
.zv-form .wpcf7-not-valid{border-color:#d94c3d;background:#fff6f5}
.zv-form .wpcf7-not-valid-tip{margin-top:5px;font-size:12px;font-weight:500;color:#d94c3d}
.zv-form .wpcf7-response-output{
  margin:4px 0 0;padding:12px 14px;font-size:14px;line-height:1.5;
  border-radius:10px;border:1px solid #dfe3ec;color:#5a6274;background:#f6f7fb;
}
.zv-form .wpcf7-spinner{margin:0 auto}

/* ── card di conferma ────────────────────────────────────────────── */

.zv-sent{display:flex;flex-direction:column;gap:14px;padding:26px 0;text-align:center}
.zv-sent[hidden]{display:none}
.zv-sent svg{align-self:center;width:56px;height:56px}
.zv-sent [data-check]{transition:stroke-dashoffset .7s cubic-bezier(.2,0,0,1)}
.zv-sent h3{margin:0;font-family:'Sora',system-ui,sans-serif;font-weight:600;font-size:30px;color:#16203c}
.zv-sent p{margin:0;font-size:16px;line-height:1.6;color:#5a6274}

/* ── 4. correzioni WordPress ─────────────────────────────────────── */

/* la barra di amministrazione non deve coprire l'header fisso */
.admin-bar [data-header]{top:32px}
@media screen and (max-width:782px){.admin-bar [data-header]{top:46px}}
