
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Rajdhani:wght@600;700&display=swap');
:root{--black:#000;--green:#006039;--gold:#A37E2C;--white:#fff;--surface:#0A0A0A;--muted:#A6A6A6;--line:#242424;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Inter,system-ui,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.site-header{position:fixed;inset:0 0 auto;z-index:50;background:linear-gradient(#000,rgba(0,0,0,.55),transparent)}
.nav-shell{max-width:var(--max);margin:auto;min-height:90px;padding:18px 24px;display:flex;align-items:center;justify-content:space-between}.brand img{width:230px}.site-nav{display:flex;gap:30px;font-weight:700;font-size:.9rem}.site-nav a:hover{color:var(--gold)}.menu-toggle{display:none;background:#000;border:1px solid #333;color:#fff;padding:9px 12px}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;overflow:hidden;background:#020303}.hero-media{position:absolute;inset:0;background:url("assets/aston-55-studio-hero.png") 72% 50%/cover no-repeat;filter:saturate(.94) contrast(1.05)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.68) 34%,rgba(0,0,0,.18) 53%,transparent 76%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 32%);z-index:1}
.hero-content{position:relative;z-index:2;width:min(var(--max),calc(100% - 48px));margin:auto;padding:150px 0 90px}.eyebrow,.section-kicker{color:var(--gold);font:700 .78rem Rajdhani,sans-serif;letter-spacing:.22em;text-transform:uppercase}.hero h1{font:700 clamp(3.8rem,8vw,7.8rem)/.84 Rajdhani,sans-serif;text-transform:uppercase;letter-spacing:-.04em;margin:18px 0 24px}.hero h1 span{color:var(--green)}.hero-copy{max-width:610px;color:#d2d2d2;line-height:1.7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;border:1px solid transparent}.btn-primary{background:var(--gold);color:#080808}.btn-secondary{border-color:#555;background:rgba(0,0,0,.35)}
.section{max-width:var(--max);margin:auto;padding:105px 24px}.section-dark{max-width:none;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-left:max(24px,calc((100vw - var(--max))/2 + 24px));padding-right:max(24px,calc((100vw - var(--max))/2 + 24px))}
.intro-grid,.section-head{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end}h2{font:700 clamp(2.6rem,5vw,5rem)/.95 Rajdhani,sans-serif;text-transform:uppercase;margin:12px 0}.intro p,.section-head p,.contact p{color:var(--muted);line-height:1.75}.section-head{margin-bottom:48px}
.driver-grid,.software-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.driver-card,.software-card{border:1px solid var(--line);background:linear-gradient(145deg,#111,#080808);padding:32px;position:relative}.driver-number{position:absolute;right:28px;top:20px;font:700 5rem Rajdhani;color:rgba(163,126,44,.15)}.flag{width:44px;height:28px;border:1px solid #333}.nl{background:linear-gradient(#AE1C28 0 33.33%,#fff 33.33% 66.66%,#21468B 66.66%)}.driver-card h3,.software-card h3,.car-grid h3{font:700 2rem Rajdhani;text-transform:uppercase;margin:18px 0 8px}.driver-card p,.software-card p,.car-grid p{color:var(--muted);line-height:1.6}.driver-tag,.badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}
.car-lineup{position:relative;border:1px solid var(--line);background:#050505;overflow:hidden}.car-lineup img{width:100%;aspect-ratio:21/9;object-fit:cover}.car-lineup-caption{position:absolute;inset:auto 0 0;padding:42px 34px 24px;background:linear-gradient(transparent,rgba(0,0,0,.92));display:flex;align-items:end;justify-content:space-between;gap:24px}.car-lineup-caption p{max-width:520px;margin:0;color:#d0d0d0;font-size:.9rem;line-height:1.6;text-align:right}.car-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.car-card{border:1px solid var(--line);border-top:2px solid var(--green);background:linear-gradient(145deg,#0c0c0c,#050505);overflow:hidden;transition:transform .25s ease,border-color .25s ease}.car-card:hover{transform:translateY(-5px);border-color:#4d4d4d;border-top-color:var(--gold)}.car-card-media{aspect-ratio:16/10;overflow:hidden;background:#020303;border-bottom:1px solid var(--line)}.car-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.car-card:hover .car-card-media img{transform:scale(1.025)}.car-card-copy{padding:25px 26px 28px}.car-grid span{color:var(--gold);font-size:.72rem;font-weight:800;letter-spacing:.15em}
.software-card{display:flex;gap:22px}.software-icon{width:70px;height:70px;flex:0 0 70px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font-size:1.8rem}
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gallery-grid figure{margin:0;border:1px solid var(--line);background:#070707;padding:14px}.gallery-grid img{width:100%;height:330px;object-fit:cover;background:#fff}.gallery-grid figcaption{padding-top:12px;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.small{font-size:.78rem;color:#666!important}
footer{max-width:var(--max);margin:auto;padding:36px 24px;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;color:#777;font-size:.78rem}footer img{width:170px}footer p:last-child{text-align:right}
@media(max-width:900px){.site-nav{display:none;position:absolute;top:78px;left:20px;right:20px;background:#070707;border:1px solid #222;padding:18px;flex-direction:column}.site-nav.open{display:flex}.menu-toggle{display:block}.brand img{width:180px}.intro-grid,.section-head,.contact{grid-template-columns:1fr;gap:28px}.driver-grid,.software-grid,.car-grid,.gallery-grid{grid-template-columns:1fr}.car-lineup img{aspect-ratio:4/3}.car-lineup-caption{position:static;padding:22px;align-items:start;flex-direction:column}.car-lineup-caption p{text-align:left}.hero-media{background-position:68% 50%}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.48)),linear-gradient(0deg,rgba(0,0,0,.72),transparent 48%)}footer{grid-template-columns:1fr}footer p:last-child{text-align:left}}
