/* ============================================================================
   POWER-IT — Legal & Contact pages stylesheet
   Allineato al Design System: Obsidian #141414, Champagne #C2A882, Manrope.
   ========================================================================== */
:root{
  --bg:#141414; --bg-2:#1b1b1b; --line:#2a2a2a;
  --champ:#C2A882; --champ-light:#DEC49A; --champ-flash:#EFD9B2;
  --cream:#F2EFE8; --muted:#9a948a; --bronze:#6A583C;
  --grad:linear-gradient(90deg,#6A583C,#C2A882 30%,#EFD9B2 60%,#C2A882 90%);
  --maxw:760px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--cream);
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-weight:300; line-height:1.65; letter-spacing:-0.002em;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--champ); text-decoration:none; transition:color .2s}
a:hover{color:var(--champ-flash)}
.container{max-width:var(--maxw); margin:0 auto; padding:0 24px}

/* Header */
.legal-header{
  position:sticky; top:0; z-index:20;
  background:rgba(20,20,20,.82); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.legal-header .bar{
  max-width:1100px; margin:0 auto; padding:14px 24px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.legal-header .brand{display:flex; align-items:center; gap:10px}
.legal-header .brand img{height:22px; width:auto; display:block}
.legal-header nav{display:flex; align-items:center; gap:22px; font-size:13px; letter-spacing:.04em}
.legal-header nav a{color:var(--cream); opacity:.78}
.legal-header nav a:hover{opacity:1; color:var(--champ-flash)}
.legal-header .lang{font-size:12px; letter-spacing:.08em; color:var(--muted)}
.legal-header .lang a{color:var(--muted)}
.legal-header .lang a.active{color:var(--champ)}

/* Hero */
.legal-hero{padding:72px 0 28px}
.legal-hero .eyebrow{
  font-size:11px; letter-spacing:.34em; text-transform:uppercase;
  color:var(--champ); margin:0 0 14px
}
.legal-hero h1{
  font-size:clamp(30px,5vw,46px); line-height:1.05; font-weight:300;
  letter-spacing:-0.01em; margin:0 0 10px
}
.legal-hero .updated{font-size:13px; color:var(--muted); margin:0}

/* Content */
main.legal{padding:8px 0 80px}
.legal h2{
  font-size:18px; font-weight:400; letter-spacing:.01em; color:var(--champ-light);
  margin:42px 0 12px; padding-top:18px; border-top:1px solid var(--line)
}
.legal h2:first-of-type{border-top:none; padding-top:0; margin-top:24px}
.legal p{margin:0 0 16px; color:#d8d2c7}
.legal ul{margin:0 0 18px; padding-left:20px}
.legal li{margin:0 0 8px; color:#d8d2c7}
.legal strong{color:var(--cream); font-weight:500}
.legal .lead{font-size:17px; color:var(--cream)}

/* Table */
.legal table{width:100%; border-collapse:collapse; margin:0 0 22px; font-size:14px}
.legal th,.legal td{text-align:left; padding:11px 12px; border-bottom:1px solid var(--line); vertical-align:top}
.legal th{color:var(--champ); font-weight:500; letter-spacing:.02em; background:var(--bg-2)}
.legal td{color:#cfc9bd}

/* Company box */
.company-box{
  margin:30px 0; padding:18px 20px; border:1px solid var(--line);
  border-radius:12px; background:var(--bg-2); font-size:14px; color:#cfc9bd
}
.company-box .name{color:var(--cream); font-weight:500; letter-spacing:.01em}

/* Contact form */
.contact-grid{display:grid; grid-template-columns:1fr; gap:28px}
@media(min-width:720px){.contact-grid{grid-template-columns:1.1fr .9fr}}
.field{margin:0 0 16px}
.field label{display:block; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); margin:0 0 6px}
.field input,.field select,.field textarea{
  width:100%; background:var(--bg-2); border:1px solid var(--line); border-radius:9px;
  color:var(--cream); font:inherit; font-size:15px; padding:11px 13px
}
.field textarea{min-height:120px; resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none; border-color:var(--champ)}
.check{display:flex; gap:10px; align-items:flex-start; font-size:13px; color:var(--muted)}
.check input{width:auto; margin-top:3px}
.btn{
  display:inline-block; margin-top:8px; padding:13px 26px; border:none; border-radius:999px;
  background:var(--grad); color:#1a1409; font-weight:600; font-size:14px; letter-spacing:.02em;
  cursor:pointer; transition:transform .15s, filter .2s
}
.btn:hover{transform:translateY(-1px); filter:brightness(1.06); color:#1a1409}
.contact-aside h3{font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--champ); margin:0 0 14px}
.contact-aside p{font-size:15px; color:#d8d2c7; margin:0 0 8px}
.contact-aside .muted{color:var(--muted); font-size:13px}

/* Footer */
.legal-footer{border-top:1px solid var(--line); padding:40px 0 56px; margin-top:40px}
.legal-footer .row{
  max-width:1100px; margin:0 auto; padding:0 24px;
  display:flex; flex-wrap:wrap; gap:22px; justify-content:space-between; align-items:flex-start
}
.legal-footer .co{font-size:13px; color:var(--muted); max-width:420px; line-height:1.7}
.legal-footer .co .name{color:var(--cream)}
.legal-footer .lcol h5{font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--champ); margin:0 0 10px}
.legal-footer .lcol a{display:block; color:#cfc9bd; font-size:13px; margin:0 0 6px}
.legal-footer .lcol a:hover{color:var(--champ-flash)}
.legal-footer .bottom{
  max-width:1100px; margin:26px auto 0; padding:18px 24px 0; border-top:1px solid var(--line);
  font-size:12px; color:var(--muted); letter-spacing:.04em
}
.back-home{display:inline-flex; align-items:center; gap:8px; margin-top:14px; font-size:13px}
