/*
Theme Name: Wire Customs
Theme URI: https://wirecustoms.it
Author: Wire Customs
Description: Tema landing page one-page per Wire Customs — installazioni elettroniche per auto e camper. Tema nero con accenti lime e viola.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: wirecustoms
*/

:root{
  --bg:#0a0a0a;
  --card:#121212;
  --surface:#1f1f1f;
  --border:#292929;
  --fg:#ffffff;
  --muted:#a3a3a3;
  --lime:#c6ff33;
  --violet:#7d39eb;
  --radius:0.75rem;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font-family:Inter,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.mono{font-family:"JetBrains Mono",ui-monospace,monospace}
.container{width:100%;max-width:1440px;margin:0 auto;padding:0 1.5rem}
.muted{color:var(--muted)}
.eyebrow{font-family:"JetBrains Mono",ui-monospace,monospace;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--lime);margin:0 0 1rem}

/* Header */
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(10,10,10,.8);backdrop-filter:blur(12px);border-bottom:1px solid rgba(41,41,41,.6)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:160px;gap:1rem}
.brand{display:flex;align-items:center;gap:.75rem}
.brand .mark{height:112px;width:112px;object-fit:contain}
.brand .wordmark{height:112px;width:auto;filter:brightness(0) invert(1)}
.nav-desktop{display:none;align-items:center;gap:2rem}
.nav-desktop a{font-size:.875rem;font-weight:500;color:var(--muted);transition:color .2s}
.nav-desktop a:hover{color:var(--lime)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;border-radius:var(--radius);transition:all .3s;cursor:pointer;border:1px solid transparent}
.btn-pill{padding:.65rem 1.25rem;border-radius:999px;background:var(--violet);color:#fff;font-size:.875rem;font-weight:600}
.btn-pill:hover{opacity:.9}
.btn-light{padding:1rem 2rem;background:var(--fg);color:var(--bg)}
.btn-light:hover{background:var(--lime);color:#0a0a0a}
.btn-ghost{padding:1rem 2rem;background:var(--surface);color:var(--fg);border-color:var(--border)}
.btn-ghost:hover{background:#2a2a2a}
.btn-lime{padding:1rem 2rem;background:var(--lime);color:#0a0a0a}
.btn-lime:hover{opacity:.9}
.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:.6rem;background:var(--surface);border:1px solid var(--border);color:var(--fg)}
#wc-mobile-nav{display:none;position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.97);backdrop-filter:blur(12px)}
#wc-mobile-nav.open{display:block}
.mobile-nav-inner{height:100%;display:flex;flex-direction:column}
.mobile-links{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;font-size:1.75rem;font-weight:700}
@media(min-width:768px){.nav-desktop{display:flex}.nav-toggle{display:none}}
main{padding-top:160px}

/* Sections */
.section{position:relative;overflow:hidden;padding:6rem 0;border-top:1px solid rgba(41,41,41,.5)}
.section-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.overlay{position:absolute;inset:0;pointer-events:none}
.overlay-down{background:linear-gradient(to bottom,var(--bg),rgba(10,10,10,.85),var(--bg))}
.overlay-right{background:linear-gradient(to right,var(--bg),rgba(10,10,10,.85),rgba(10,10,10,.6))}
.overlay-hero{background:linear-gradient(to top,var(--bg),rgba(10,10,10,.5),rgba(10,10,10,.8))}
.dots{position:absolute;inset:0;pointer-events:none;opacity:.1;background-image:radial-gradient(circle at 2px 2px,var(--border) 1px,transparent 0);background-size:40px 40px}
.inner{position:relative;z-index:10}
h1,h2,h3{letter-spacing:-.02em;line-height:1.15;margin:0 0 1rem}
h1{font-size:2.5rem;font-weight:800}
h2{font-size:1.9rem;font-weight:700}
h3{font-size:1.25rem;font-weight:700}
@media(min-width:1024px){h1{font-size:3.75rem}h2{font-size:2.5rem}}

/* Hero */
.hero{position:relative;min-height:calc(100vh - 160px);display:flex;align-items:center;overflow:hidden}
.hero .section-bg{opacity:.85}
.hero-card{display:grid;gap:3rem;align-items:center;border:1px solid var(--border);background:rgba(18,18,18,.4);backdrop-filter:blur(4px);border-radius:1.5rem;padding:2rem}
@media(min-width:1024px){.hero-card{grid-template-columns:1fr 1fr;padding:3rem}}
.badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:999px;background:rgba(198,255,51,.1);border:1px solid rgba(198,255,51,.2);color:var(--lime);margin-bottom:1.5rem;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-family:"JetBrains Mono",monospace}
.dot{width:.5rem;height:.5rem;border-radius:999px;background:var(--lime)}
.hero p.lead{font-size:1.1rem;color:var(--muted);max-width:32rem;margin:0 0 2rem}
.hero .cta-row{display:flex;flex-wrap:wrap;gap:1rem}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.hero-tile{padding:1rem;border-radius:1rem;background:rgba(10,10,10,.5);border:1px solid rgba(41,41,41,.6)}
.hero-tile span{display:block;font-family:"JetBrains Mono",monospace;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:var(--lime);margin-bottom:.5rem}
.hero-tile strong{font-size:.9rem}
.exp{margin-top:1.5rem;display:flex;align-items:center;gap:1rem;padding:1.5rem;border-radius:1rem;background:linear-gradient(135deg,var(--surface),var(--card));border:1px solid var(--border)}
.exp .num{font-size:2rem;font-weight:800}
.exp .sep{width:1px;height:2.5rem;background:var(--border)}
.credits{margin-top:2.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;opacity:.5;font-family:"JetBrains Mono",monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}

/* Servizi */
#servizi .section-bg{opacity:.7}
#chi-sono .section-bg{opacity:.5}
#preventivo .section-bg{opacity:.6}
.grid-cards{display:grid;gap:1.5rem;grid-template-columns:1fr}
@media(min-width:768px){.grid-cards{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.grid-cards{grid-template-columns:repeat(3,1fr)}}
.card{height:100%;padding:2rem;border-radius:1.5rem;background:rgba(18,18,18,.6);border:1px solid var(--border);transition:.4s}
.card:hover{border-color:rgba(198,255,51,.4);transform:translateY(-4px)}
.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}
.icon-box{width:3rem;height:3rem;border-radius:.85rem;background:rgba(198,255,51,.1);display:flex;align-items:center;justify-content:center;color:var(--lime)}
.card-cat{font-family:"JetBrains Mono",monospace;font-size:.62rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}
.card p{color:var(--muted);font-size:.9rem;margin:0}
.maxw{max-width:42rem}
.points{display:grid;gap:1rem;grid-template-columns:1fr;margin-top:2rem}
@media(min-width:640px){.points{grid-template-columns:1fr 1fr}}
.point{display:flex;align-items:center;gap:.75rem;font-size:.9rem;font-weight:500}
.point .icon-box{width:2.5rem;height:2.5rem;flex:0 0 auto}

/* Contatti */
.contact-grid{display:grid;gap:4rem;grid-template-columns:1fr;align-items:center}
@media(min-width:1024px){.contact-grid{grid-template-columns:1fr 1fr}}
.contact-list{display:flex;flex-direction:column;gap:1rem;margin-top:2.5rem}
.contact-item{display:flex;align-items:center;gap:.75rem}
.contact-item .icon-box{background:var(--surface)}
.contact-item small{color:var(--muted);display:block;font-size:.8rem}
.contact-item strong{font-weight:600}
.form-card{padding:2rem;border-radius:1.5rem;background:var(--card);border:1px solid var(--border)}
.form-card label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}
.form-card input,.form-card select,.form-card textarea{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:.75rem;color:var(--fg);padding:.85rem 1rem;font:inherit;font-size:.9rem}
.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:2px solid var(--lime);outline-offset:0}
.form-card textarea{resize:vertical}
.form-row{display:grid;gap:1.25rem;grid-template-columns:1fr}
@media(min-width:640px){.form-row{grid-template-columns:1fr 1fr}}
.field{margin-bottom:1.25rem}
.form-card .btn{width:100%}
.hp{position:absolute;left:-9999px}
.notice{padding:1rem;border-radius:.75rem;margin-bottom:1.5rem;font-size:.9rem}
.notice-ok{background:rgba(198,255,51,.1);border:1px solid rgba(198,255,51,.3);color:var(--lime)}
.notice-err{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#fca5a5}

/* Footer */
.site-footer{border-top:1px solid var(--border);background:var(--card);padding:4rem 0}
.footer-grid{display:grid;gap:3rem;grid-template-columns:1fr}
@media(min-width:768px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.footer-grid{grid-template-columns:repeat(4,1fr)}}
.footer-grid h4{margin:0 0 1rem;font-size:1rem}
.footer-grid .stack{display:flex;flex-direction:column;gap:.75rem;font-size:.875rem;color:var(--muted)}
.footer-grid .stack a:hover{color:var(--lime)}
.footer-brand .mark{height:80px;width:80px;object-fit:contain}
.footer-brand .wordmark{height:64px;width:auto;filter:brightness(0) invert(1)}
.footer-bottom{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1rem;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--muted)}
@media(min-width:768px){.footer-bottom{flex-direction:row}}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media(max-width:767px){
  .header-inner{height:92px}
  .brand .mark{height:60px;width:60px}
  .brand .wordmark{height:52px}
  main{padding-top:92px}
  .hero{min-height:calc(100vh - 92px)}
  .section{padding:4rem 0}
}
