
:root{--bg:#0b0f14;--fg:#e5e7eb;--mut:#9aa4b2;--acc:#8aa4c7;--line:#1f2937;--card:#121821}
*{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,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;line-height:1.65;opacity:0;transition:opacity .8s ease}
body.page-in{opacity:1}
.container{max-width:1180px;margin:0 auto;padding:0 24px}
header{position:sticky;top:0;background:rgba(15,20,28,.9);backdrop-filter:saturate(120%) blur(8px);border-bottom:1px solid var(--line);z-index:50}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.logo img{height:26px}
nav a{margin-left:20px;text-decoration:none;color:var(--fg);font-weight:500}
nav a:hover{color:var(--acc)}
.cta, .button{display:inline-block;padding:10px 16px;border-radius:999px;border:1px solid var(--acc);background:var(--acc);color:#0b0f14;font-weight:600;text-decoration:none}
.button.secondary{background:transparent;color:var(--acc)}
.section{padding:54px 0;border-top:1px solid var(--line)}
h1{font-size:2rem;margin:.2rem 0 10px} h2{font-size:1.7rem;margin:0 0 12px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;transition:transform .2s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.3)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.small{font-size:.95rem;color:var(--mut)} footer{border-top:1px solid var(--line);margin-top:50px;padding:26px 0;color:var(--mut)}
img{max-width:100%;height:auto;border-radius:14px}
input,textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;font:inherit} label{font-weight:600;margin-top:8px;display:block}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
/* Hero full image (contain, non tagliata) */
.hero{height:78vh;position:relative;border-bottom:1px solid var(--line)}
.hero::before{content:"";position:absolute;inset:0;background:url("../img/hero.jpg") center/contain no-repeat, #0b0f14}
/* Preloader */
#preloader{position:fixed;inset:0;background:#0b0f14;z-index:9999;display:flex;align-items:flex-start;justify-content:flex-start}
#preloader .bar{height:3px;width:0;background:#8aa4c7;box-shadow:0 0 12px rgba(138,164,199,.6)}
@keyframes loadbar{from{width:0} to{width:100%}} @keyframes fadeout{to{opacity:0;visibility:hidden}}
/* Reveal */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease} .reveal.in{opacity:1;transform:none}
/* Brand page */
.brand-hero{height:72vh;border-bottom:1px solid var(--line);overflow:hidden}
.brand-hero img{width:100%;height:100%;object-fit:cover;opacity:.95;transform:scale(1.02);transition:transform 1.2s ease, opacity 1.2s ease}
.brand-hero:hover img{transform:scale(1.04);opacity:1}
.brand-block,.brand-wide,.brand-mosaic{padding:54px 0;border-top:1px solid var(--line)}
.brand-wide.alt .grid-2{direction:rtl} .brand-wide.alt .grid-2>*{direction:ltr}
.shadow{box-shadow:0 14px 40px rgba(0,0,0,.25);border-radius:14px}
@media(max-width:980px){.cards{grid-template-columns:1fr} .grid-2{grid-template-columns:1fr} .hero{height:62vh} .brand-hero{height:56vh}}
