/* ============================================================
   COSTRUZIONI FERRARA — Impresa edile delle Dolomiti Bellunesi
   Design system: anthracite + cantiere orange + hazard yellow
   ============================================================ */

:root{
  --ink:#0E0F11;
  --anthracite:#16181B;
  --surface:#1C1F23;
  --surface-2:#23272C;
  --surface-3:#2B3036;
  --line:rgba(255,255,255,.10);
  --line-strong:rgba(255,255,255,.18);
  --concrete:#3A4047;
  --fog:#9AA1A8;
  --fog-dim:#6E757C;
  --white:#F3F5F6;
  --orange:#FF6A1A;
  --orange-deep:#E2540B;
  --orange-soft:rgba(255,106,26,.14);
  --yellow:#FFC400;
  --yellow-deep:#E0A800;

  --font-display:'Anton',Impact,sans-serif;
  --font-sans:'Archivo','Archivo',system-ui,sans-serif;
  --font-mono:'Space Mono',ui-monospace,monospace;

  --maxw:1280px;
  --gutter:clamp(20px,5vw,72px);
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;
  background:var(--anthracite);
  color:var(--white);
  font-family:var(--font-sans);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}

/* ---------- type ---------- */
.display{font-family:var(--font-display);font-weight:400;text-transform:uppercase;line-height:.92;letter-spacing:.005em}
.mono{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.mono-sm{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase}

.kicker{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--font-mono);font-size:12px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--orange);
}
.kicker::before{content:"";width:34px;height:2px;background:var(--orange);display:inline-block}
.kicker.center::after{content:"";width:34px;height:2px;background:var(--orange);display:inline-block}
.kicker.center{justify-content:center}
.kicker.center::before{order:-1}

.section-title{
  font-family:var(--font-display);text-transform:uppercase;
  font-size:clamp(34px,6vw,76px);line-height:.94;letter-spacing:.003em;
  margin:18px 0 0;
}
.section-title .o{color:var(--orange)}

.lead{font-size:clamp(17px,1.6vw,21px);color:var(--fog);max-width:60ch;line-height:1.65}

/* ---------- layout ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding-inline:var(--gutter)}
section{position:relative}
.pad{padding-block:clamp(72px,11vw,150px)}

/* hazard stripe */
.hazard{
  height:10px;width:100%;
  background:repeating-linear-gradient(135deg,var(--yellow) 0 22px,var(--ink) 22px 44px);
}
.hazard.thin{height:6px;background:repeating-linear-gradient(135deg,var(--yellow) 0 14px,var(--ink) 14px 28px)}

/* blueprint grid bg utility */
.grid-bg::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(120% 90% at 50% 0%,#000 0%,transparent 75%);
  opacity:.5;
}

/* ---------- buttons ---------- */
.btn{
  --bg:var(--orange);--fg:#fff;
  display:inline-flex;align-items:center;gap:12px;
  background:var(--bg);color:var(--fg);
  font-family:var(--font-mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  padding:16px 26px;border:none;border-radius:2px;
  position:relative;overflow:hidden;isolation:isolate;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.btn .arr{transition:transform .3s var(--ease)}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--orange-deep);transform:translateY(101%);transition:transform .35s var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(255,106,26,.6)}
.btn:hover::before{transform:translateY(0)}
.btn:hover .arr{transform:translateX(5px)}
.btn.ghost{--bg:transparent;--fg:var(--white);border:1px solid var(--line-strong)}
.btn.ghost::before{background:var(--white)}
.btn.ghost:hover{color:var(--ink);box-shadow:none}
.btn.dark{--bg:var(--ink);--fg:#fff}
.btn.dark::before{background:var(--orange)}

