:root{
  /* Identità FULLWATT: valori ricavati dai fogli originali */
  --color-bg: #000;
  --color-surface-soft: rgba(255,255,255,.035);
  --color-text: #fff;
  --color-text-muted: rgba(255,255,255,.68);
  --color-border: rgba(255,255,255,.12);
  --color-border-strong: rgb(90,90,90);
  --color-green: #00e677;

  --font-display: "Orbitron", sans-serif;
  --font-body: "Inter", sans-serif;
  --font-heading: "Poppins", sans-serif;
  --font-copy: var(--font-body);

  --container: 1200px;
  --gutter: clamp(16px, 3vw, 40px);
  --header-height: 72px;
  --ease-standard: cubic-bezier(.2,.7,.2,1);
  --duration-fast: 180ms;

}

*,
*::before,
*::after{
  box-sizing: border-box;
}

html{
  width: 100%;
  max-width: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-height) + 16px);
  background: var(--color-bg);
  color-scheme: dark;
  scrollbar-width: thin;
  scrollbar-color: #fff #050505;
}

body{
  width: 100%;
  max-width: 100%;
  margin: 0;
  min-height: 100vh;
  min-height: 100svh;
  overflow-x: clip;
  font-family: var(--font-body);
  font-size: clamp(15px, .25vw + 14px, 17px);
  line-height: 1.6;
  background: var(--color-bg);
  color: var(--color-text);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

main{
  display: block;
  min-width: 0;
}

img,
picture,
video,
svg{
  display: block;
  max-width: 100%;
}

img,
video,
svg{
  height: auto;
}

button{
  font: inherit;
  touch-action: manipulation;
}

button,
a{
  -webkit-tap-highlight-color: transparent;
}

a{
  color: inherit;
  text-underline-offset: .2em;
  text-decoration-thickness: .08em;
}

p{
  max-width: 72ch;
}

h1,
h2,
h3,
nav{
  overflow-wrap: anywhere;
  letter-spacing: .03em;
}

p,
li{
  overflow-wrap: anywhere;
}

:focus-visible{
  outline: 3px solid var(--color-green);
  outline-offset: 4px;
}

::selection{
  color: var(--color-text);
  background: rgba(102,11,177,.76);
}

.sr-only{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 768px){
  :root{ --header-height: 64px; }
}

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior: auto; }

  *,
  *::before,
  *::after{
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

html::-webkit-scrollbar{ width: 10px; }
html::-webkit-scrollbar-track{ background: #050505; }
html::-webkit-scrollbar-thumb{ border: 2px solid #050505; border-radius: 999px; background: #fff; }
h1, h2, h3{ text-wrap: balance; }
p, li{ text-wrap: pretty; }
[aria-disabled="true"]{ cursor: default; }

.skip-link{
  position:fixed;
  left:16px;
  top:12px;
  z-index:999;
  padding:10px 14px;
  border-radius:10px;
  background:#111;
  color:#fff;
  text-decoration:none;
  transform:translateY(-180%);
  transition:transform 160ms ease;
}

.skip-link:focus{
  transform:translateY(0);
}

.construction-notice{
  padding: clamp(36px, 4vw, 56px) var(--gutter);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-bg);
  text-align: center;
}

.construction-notice__inner{
  max-width: 720px;
  margin-inline: auto;
}

.construction-notice__label{
  margin: 0 auto 12px;
  color: var(--color-text-muted);
  font-family: var(--font-display);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .06em;
}

.construction-notice h2{
  margin: 0 0 16px;
  color: var(--color-text);
  font-family: var(--font-display);
  font-size: clamp(20px, 2.2vw, 30px);
  font-weight: 600;
  line-height: 1.4;
  text-transform: uppercase;
}

.construction-notice__inner > p:last-child{
  max-width: 620px;
  margin: 0 auto;
  color: var(--color-text-muted);
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.55;
}
