:root{
  --bg:#08090b;--panel:#0d0f12;--panel2:#111419;--line:#24272d;--text:#f4f4f2;--muted:#9b9fa7;--red:#f20e21;
  --max:1480px;--condensed:"Barlow Condensed",sans-serif;--sans:"Inter",sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}
.site-header{height:82px;padding:0 clamp(24px,5vw,80px);display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;width:100%;z-index:50;background:linear-gradient(180deg,rgba(6,7,9,.96),rgba(6,7,9,.72),transparent);backdrop-filter:blur(6px)}
.brand img{width:235px;height:74px;object-fit:contain}.main-nav{display:flex;gap:34px;font-family:var(--condensed);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.main-nav a{font-size:15px;padding:30px 0;position:relative}.main-nav a.active:after,.main-nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--red)}.nav-toggle{display:none;background:none;border:0}.nav-toggle span{display:block;width:28px;height:2px;background:white;margin:6px 0}
.hero{height:min(900px,100vh);min-height:680px;position:relative;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}.hero-bg{position:absolute;inset:0;background:url('../img/cars/2022-audi-tt-rs.jpg') center 55%/cover no-repeat;transform:scale(1.02)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.90) 0%,rgba(0,0,0,.62) 34%,rgba(0,0,0,.08) 70%),linear-gradient(0deg,rgba(0,0,0,.72),transparent 45%)}.hero-content{position:relative;z-index:2;padding:100px clamp(28px,6vw,100px) 40px;max-width:850px}.eyebrow{font:700 12px/1 var(--sans);letter-spacing:.32em;color:#d5d6d8;text-transform:uppercase}.hero h1,.section h2,.build-note h2{font-family:var(--condensed);font-weight:800;line-height:.82;text-transform:uppercase;letter-spacing:.01em;margin:16px 0 24px}.hero h1{font-size:clamp(64px,8.2vw,132px)}em{font-style:italic;color:var(--red)}.hero-tagline{font-family:var(--condensed);font-weight:600;font-size:clamp(22px,2.2vw,36px);letter-spacing:.22em;line-height:1.08}.button{display:inline-flex;align-items:center;gap:24px;border:1px solid #4d5057;padding:15px 21px;text-transform:uppercase;font-family:var(--condensed);font-weight:700;letter-spacing:.08em;font-size:15px}.button-primary{border-color:var(--red);box-shadow:inset 4px 0 0 var(--red);margin-top:20px}.button:hover{background:var(--red);border-color:var(--red)}.hero-script{position:absolute;z-index:2;right:6vw;top:110px;transform:rotate(-8deg);font:italic 700 22px/1.1 Georgia,serif;color:#f2e6d9}.hero-index{position:absolute;bottom:28px;left:6vw;z-index:2;font:600 12px var(--condensed);letter-spacing:.25em;color:#aaa}.hero-index span{display:inline-block;width:48px;height:3px;background:var(--red);vertical-align:middle;margin-right:18px}
.section{max-width:var(--max);margin:auto;padding:88px clamp(24px,4vw,64px)}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:34px}.section-heading.compact{align-items:center}.section h2{font-size:clamp(42px,5.2vw,76px);margin:8px 0}.intro-copy{color:#b8bbc1;line-height:1.7;max-width:650px;font-size:15px}.generations{padding-top:72px}.generation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.generation-card{background:var(--panel);border:1px solid var(--line);position:relative;overflow:hidden;min-height:520px}.generation-number{position:absolute;z-index:3;left:20px;top:12px;font:800 70px/1 var(--condensed);color:#d3d5d8;text-shadow:0 4px 18px #000}.generation-number.accent{color:#d3d5d8}.generation-image{height:360px;overflow:hidden;background:#101216}.generation-image img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(1.04)}.generation-copy{padding:24px 28px}.generation-copy h3{margin:0;font:800 31px var(--condensed);letter-spacing:.04em}.generation-copy>p{margin:0 0 18px;color:#c5c7ca;font:500 13px var(--sans);letter-spacing:.18em}.generation-copy ul{list-style:none;padding:0;margin:0;color:#b7bac0;font:500 13px/1.7 var(--sans);text-transform:uppercase}.generation-copy li:before{content:"/";color:var(--red);margin-right:10px}.generation-next{background:linear-gradient(180deg,#16191e,#0a0c0f)}.next-car{height:360px;display:flex;align-items:center;justify-content:center;position:relative;background:radial-gradient(circle at 50% 70%,#222932 0,transparent 55%)}.next-car img{width:155px;position:relative;z-index:2;filter:drop-shadow(0 10px 16px #000)}.cover-car{position:absolute;width:78%;height:42%;bottom:55px;background:linear-gradient(160deg,#242830,#050607 60%);border-radius:48% 48% 10% 10% / 30% 34% 10% 10%;filter:drop-shadow(0 20px 18px #000)}.generation-next strong{display:block;font:700 15px var(--condensed);letter-spacing:.24em;text-align:center;margin-top:18px}.loading{height:5px;border:1px solid #aaa;margin:16px auto 0;max-width:220px;border-radius:4px;overflow:hidden}.loading i{display:block;width:30%;height:100%;background:var(--red)}
.collection{border-top:1px solid var(--line)}.car-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.car-card{background:var(--panel);border:1px solid var(--line);min-width:0;position:relative;overflow:hidden}.car-year{position:absolute;left:12px;top:10px;z-index:3;font:800 28px var(--condensed);text-shadow:0 3px 12px #000}.car-photo{height:220px;overflow:hidden}.car-photo img{width:100%;height:100%;object-fit:cover;transition:.45s transform,.45s filter;filter:saturate(.9) contrast(1.06)}.car-card:hover img{transform:scale(1.06);filter:saturate(1.1) contrast(1.08)}.car-info{padding:16px 14px 18px;position:relative;min-height:150px}.car-info p{margin:0;color:#aaa;text-transform:uppercase;font:600 10px var(--sans);letter-spacing:.13em}.car-info h3{font:800 22px/1 var(--condensed);text-transform:uppercase;margin:6px 30px 8px 0}.car-owner{font:600 11px var(--sans);color:#777;text-transform:uppercase}.car-info>a{position:absolute;right:14px;bottom:17px;color:var(--red);font-size:26px}.archive{border-top:1px solid var(--line)}.archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.archive-card{height:230px;border:1px solid var(--line);background:linear-gradient(180deg,transparent,rgba(0,0,0,.86)),url('../img/cars/1998-golf-iv-gti.jpg') center/cover;display:flex;flex-direction:column;justify-content:flex-end;padding:22px}.archive-card:nth-child(2){background-image:linear-gradient(180deg,transparent,rgba(0,0,0,.86)),url('../img/cars/2002-golf-iv-gti-25-edition.jpg')}.archive-card:nth-child(3){background-image:linear-gradient(180deg,transparent,rgba(0,0,0,.86)),url('../img/cars/1990-golf-ii-gti-g60.jpg')}.archive-card.technical{background:linear-gradient(140deg,#20242a,#08090b)}.archive-card span{font:800 28px var(--condensed)}.archive-card strong{font:800 22px var(--condensed)}.archive-card small{color:#aaa;letter-spacing:.16em}.build-note{border-top:1px solid var(--line);text-align:center;max-width:980px}.build-note p:last-child{color:#aaa;line-height:1.8;max-width:760px;margin:auto}.site-footer{border-top:1px solid var(--line);padding:34px clamp(24px,5vw,80px);display:flex;align-items:center;justify-content:space-between;gap:30px;color:#969aa0}.footer-logo{width:210px;height:70px;object-fit:contain}.site-footer p{font-size:11px;letter-spacing:.18em}.footer-line{font:italic 700 20px Georgia,serif;color:#ddd}.back-top{font:700 13px var(--condensed);text-transform:uppercase}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1180px){.car-grid{grid-template-columns:repeat(3,1fr)}.car-photo{height:260px}.generation-grid{grid-template-columns:1fr 1fr}.generation-next{grid-column:span 2}.archive-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.site-header{height:70px}.brand img{width:175px;height:58px}.main-nav{position:fixed;top:70px;left:0;right:0;display:none;background:#08090bf5;padding:25px;flex-direction:column;gap:0}.main-nav.open{display:flex}.main-nav a{padding:15px}.nav-toggle{display:block}.hero{min-height:760px;align-items:flex-end}.hero-bg{background-position:63% center}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.55) 60%,rgba(0,0,0,.1) 100%)}.hero-content{padding-bottom:80px}.hero h1{font-size:clamp(58px,18vw,92px)}.hero-script{top:95px;right:30px;font-size:17px}.section-heading{grid-template-columns:1fr}.generation-grid{grid-template-columns:1fr}.generation-next{grid-column:auto}.car-grid{grid-template-columns:1fr 1fr}.archive-grid{grid-template-columns:1fr}.site-footer{flex-direction:column;text-align:center}}
@media(max-width:520px){.car-grid{grid-template-columns:1fr}.car-photo{height:320px}.generation-card{min-height:0}.generation-image,.next-car{height:300px}.section{padding:68px 18px}.hero-content{padding-left:22px;padding-right:22px}.hero-tagline{font-size:22px}.button{font-size:13px}.hero-script{display:none}}
/* v0.2 — subpages */
.page-hero{min-height:620px;position:relative;display:flex;align-items:flex-end;padding:130px clamp(24px,6vw,100px) 70px;border-bottom:1px solid var(--line);overflow:hidden}.collection-hero{background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.18)),url('../img/cars/2022-audi-tt-rs.jpg') center 58%/cover no-repeat}.page-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,#08090b 0%,transparent 55%)}.page-hero-copy{position:relative;z-index:2;max-width:860px}.page-hero h1,.car-detail-title h1{font-family:var(--condensed);font-weight:800;line-height:.84;text-transform:uppercase;font-size:clamp(66px,9vw,140px);margin:14px 0 24px}.page-hero-copy>p:last-child{max-width:650px;color:#c0c3c8;line-height:1.7}.collection-list{display:flex;flex-direction:column;gap:18px}.collection-row{display:grid;grid-template-columns:70px minmax(0,1.25fr) minmax(300px,.75fr);min-height:390px;border:1px solid var(--line);background:var(--panel);overflow:hidden}.collection-row-index{font:800 42px var(--condensed);color:#5a5d64;padding:22px 0 0 20px}.collection-row-image{position:relative;overflow:hidden}.collection-row-image img{width:100%;height:100%;min-height:390px;object-fit:cover;filter:contrast(1.04) saturate(.94);transition:.5s transform}.collection-row:hover .collection-row-image img{transform:scale(1.025)}.owner-badge{position:absolute;left:18px;bottom:18px;background:rgba(0,0,0,.78);border-left:3px solid var(--red);padding:9px 13px;font:700 12px var(--sans);letter-spacing:.18em;text-transform:uppercase}.collection-row-copy{padding:46px 38px;display:flex;flex-direction:column;justify-content:center}.collection-row-copy h2{font-size:clamp(42px,4.2vw,66px);margin:12px 0 18px}.collection-row-copy>p{color:#aeb1b7;line-height:1.75}.page-status{margin-top:18px;color:#6f737b;text-transform:uppercase;letter-spacing:.16em;font:700 11px var(--sans)}
.car-detail-hero{height:min(900px,100vh);min-height:700px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.car-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%}.car-detail-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.12) 68%),linear-gradient(0deg,#08090b 0%,transparent 42%)}.car-detail-title{position:relative;z-index:2;padding:0 clamp(24px,6vw,100px) 78px}.car-detail-title>p:last-child{font:600 18px var(--condensed);letter-spacing:.28em}.spec-strip{max-width:var(--max);margin:-34px auto 0;position:relative;z-index:5;display:grid;grid-template-columns:repeat(5,1fr);background:#0b0d10;border:1px solid var(--line)}.spec-strip div{padding:22px 24px;border-right:1px solid var(--line)}.spec-strip div:last-child{border-right:0}.spec-strip span{display:block;color:#7f838a;font:700 10px var(--sans);letter-spacing:.2em}.spec-strip strong{display:block;margin-top:7px;font:800 24px var(--condensed)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.story-copy{font-size:16px;line-height:1.9;color:#b9bcc2}.photo-feature{display:grid;grid-template-columns:1.35fr .65fr;gap:0;align-items:stretch}.photo-feature>img{width:100%;height:560px;object-fit:cover}.photo-feature-copy{background:#0d1014;border:1px solid var(--line);padding:52px 46px;display:flex;flex-direction:column;justify-content:center}.photo-feature-copy h2{font-size:clamp(46px,5vw,72px)}.photo-feature-copy p:last-child{color:#aeb1b8;line-height:1.8}.detail-gallery{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}.detail-gallery figure{margin:0;background:var(--panel);border:1px solid var(--line)}.detail-gallery img{width:100%;height:360px;object-fit:cover}.detail-gallery figcaption{padding:12px 14px;color:#92969d;text-transform:uppercase;letter-spacing:.14em;font:600 10px var(--sans)}.g60-tech{display:grid;grid-template-columns:.6fr 1.4fr;gap:50px;border-top:1px solid var(--line)}.tech-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tech-cards article{border:1px solid var(--line);background:var(--panel);padding:30px 24px}.tech-cards span{display:block;color:var(--red);font:800 38px var(--condensed)}.tech-cards strong{font:800 27px var(--condensed);text-transform:uppercase}.tech-cards p{color:#999da4;line-height:1.7;font-size:13px}.car-next{border-top:1px solid var(--line);display:flex;justify-content:space-between;text-transform:uppercase;font:700 15px var(--condensed);letter-spacing:.08em}
@media(max-width:980px){.collection-row{grid-template-columns:55px 1fr}.collection-row-copy{grid-column:1/-1;padding:30px}.collection-row-image img{min-height:330px}.spec-strip{grid-template-columns:repeat(3,1fr);margin-top:0}.spec-strip div:nth-child(3){border-right:0}.story-grid,.photo-feature,.g60-tech{grid-template-columns:1fr}.photo-feature>img{height:460px}.tech-cards{grid-template-columns:1fr 1fr}.detail-gallery{grid-template-columns:1fr 1fr}.detail-gallery figure:first-child{grid-column:1/-1}}
@media(max-width:620px){.page-hero{min-height:540px;padding-left:20px;padding-right:20px}.collection-row{grid-template-columns:42px 1fr}.collection-row-index{font-size:30px;padding-left:10px}.collection-row-image img{min-height:260px}.collection-row-copy{padding:26px 20px}.spec-strip{grid-template-columns:1fr 1fr}.spec-strip div{border-bottom:1px solid var(--line)}.spec-strip div:nth-child(odd){border-right:1px solid var(--line)}.spec-strip div:nth-child(even){border-right:0}.car-detail-title{padding-left:20px;padding-right:20px;padding-bottom:50px}.car-detail-hero{min-height:650px}.photo-feature>img{height:360px}.photo-feature-copy{padding:34px 24px}.detail-gallery{grid-template-columns:1fr}.detail-gallery figure:first-child{grid-column:auto}.detail-gallery img{height:300px}.tech-cards{grid-template-columns:1fr}.car-next{gap:20px;flex-direction:column}}
/* v0.3 — GTI 25 Edition detail */
.dyno-feature{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);border:1px solid var(--line);background:var(--panel);overflow:hidden}.dyno-feature img{width:100%;height:520px;object-fit:cover}.dyno-copy{padding:44px 38px;display:flex;flex-direction:column;justify-content:center}.dyno-copy span{font:800 54px var(--condensed);color:var(--red)}.dyno-copy strong{font:800 34px/1 var(--condensed);text-transform:uppercase;margin:4px 0 18px}.dyno-copy p{color:#aeb1b7;line-height:1.75}.detail-gallery.two-up{grid-template-columns:1fr 1fr}.detail-gallery.two-up figure:first-child{grid-column:auto}.detail-gallery.two-up img{height:460px}
@media(max-width:900px){.dyno-feature{grid-template-columns:1fr}.dyno-feature img{height:420px}.detail-gallery.two-up{grid-template-columns:1fr}.detail-gallery.two-up img{height:360px}}

/* v0.4 — homepage refinement */
.site-header{
  height:128px;
  padding:0 clamp(24px,4vw,72px);
  transition:height .32s ease,background .32s ease,box-shadow .32s ease;
  background:linear-gradient(180deg,rgba(6,7,9,.97),rgba(6,7,9,.78),rgba(6,7,9,.18));
}
.brand{display:flex;align-items:center;min-width:0}
.brand img{
  width:470px;
  height:116px;
  max-width:28vw;
  object-fit:contain;
  object-position:left center;
  transition:width .32s ease,height .32s ease,transform .32s ease;
}
.site-header.scrolled{
  height:82px;
  background:rgba(6,7,9,.94);
  box-shadow:0 10px 30px rgba(0,0,0,.28);
}
.site-header.scrolled .brand img{width:294px;height:72px}
.site-header.scrolled .main-nav a{padding-top:29px;padding-bottom:29px}
.main-nav{margin-left:auto}

.hero{height:min(920px,100vh);min-height:720px}
.hero-bg{
  background-image:url('../img/cars/hero-2022-audi-tt-rs-v07.png');
  background-position:center 58%;
  transform:scale(1.01);
  filter:saturate(1.03) contrast(1.03);
}
.hero-shade{
  background:
    linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.72) 30%,rgba(0,0,0,.30) 53%,rgba(0,0,0,.05) 78%),
    linear-gradient(0deg,rgba(0,0,0,.75),transparent 48%);
}
.hero-content{max-width:880px;padding-top:150px}
.hero h1{
  font-size:clamp(54px,6vw,98px);
  line-height:.90;
  max-width:850px;
  letter-spacing:0;
  text-shadow:0 5px 35px rgba(0,0,0,.55);
}
.hero h1 em{display:inline-block;margin-top:6px}
.hero-tagline{font-size:clamp(17px,1.5vw,25px);letter-spacing:.24em;color:#e4e5e7;max-width:760px}
.hero-script{
  top:150px;
  right:5vw;
  transform:rotate(-6deg);
  font-family:"Caveat",cursive;
  font-size:clamp(28px,2.2vw,42px);
  font-weight:600;
  line-height:.88;
  color:#f6e5d5;
  text-shadow:0 3px 18px rgba(0,0,0,.7);
}
.hero-index{bottom:32px;color:#d1d2d4}
.hero-index span{width:70px}
.collection-hero{background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.16)),url('../img/cars/hero-2022-audi-tt-rs-v07.png') center 58%/cover no-repeat}
.footer-logo{max-width:280px}
.site-footer>div>p{letter-spacing:.19em}

@media(max-width:1280px){
  .brand img{width:390px;max-width:30vw}
  .main-nav{gap:24px}
}
@media(max-width:980px){
  .site-header,.site-header.scrolled{height:82px}
  .brand img,.site-header.scrolled .brand img{width:260px;height:72px;max-width:58vw}
  .hero-content{padding-top:110px}
  .hero-script{top:100px}
}
@media(max-width:820px){
  .hero{min-height:760px;align-items:flex-end}
  .hero-bg{background-position:63% center}
  .hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.64) 55%,rgba(0,0,0,.16) 100%)}
  .hero-content{padding-top:140px;padding-bottom:92px;max-width:100%}
  .hero h1{font-size:clamp(48px,13vw,76px)}
  .hero-tagline{font-size:17px;line-height:1.4}
  .hero-script{top:92px;right:24px;font-size:27px}
}
@media(max-width:520px){
  .brand img,.site-header.scrolled .brand img{width:220px;max-width:68vw}
  .hero{min-height:720px}
  .hero-bg{background-position:66% center}
  .hero-content{padding-bottom:70px}
  .hero h1{font-size:clamp(44px,14vw,66px);line-height:.92}
  .hero-script{display:block;top:92px;right:18px;font-size:22px}
}

/* v0.5 — TTS / TT RS detail pages + current-car preparation */
.ttrs-detail-hero>img{object-position:center 58%}
.ttrs-placeholder{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ttrs-placeholder>p{max-width:760px;color:#aeb1b7;line-height:1.85;font-size:16px}
.car-owner{display:block;margin-top:8px}
@media(max-width:820px){.ttrs-placeholder{grid-template-columns:1fr;gap:20px}}

/* v0.6 — complete detail set, construction state, 3 generations */
.construction-badge{
  position:absolute;right:clamp(24px,5vw,80px);top:76px;z-index:55;
  padding:7px 12px;border:1px solid var(--red);background:rgba(8,9,11,.88);
  color:#fff;font:700 11px/1 var(--condensed);letter-spacing:.16em;text-transform:uppercase;
  box-shadow:0 0 22px rgba(242,14,33,.16);backdrop-filter:blur(8px)
}
.hero-bg{
  background-image:
    radial-gradient(circle at 73% 48%,rgba(255,30,30,.28),transparent 29%),
    linear-gradient(90deg,rgba(8,9,11,.08),rgba(8,9,11,.02)),
    url('../img/cars/hero-2022-audi-tt-rs-v07.png');
  background-position:center,center,center 56%;
  background-size:cover,cover,cover;
}
.hero-shade{
  background:
    linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.76) 31%,rgba(0,0,0,.25) 56%,rgba(0,0,0,.06) 82%),
    linear-gradient(0deg,rgba(0,0,0,.68),transparent 50%);
}
.gti7-detail-hero>img{object-position:center 42%;filter:contrast(1.06) saturate(.92)}
.current-photo-feature img{object-position:center}
.detail-gallery-current{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){.construction-badge{right:24px;top:72px}}
@media(max-width:820px){
  .construction-badge{top:66px;right:18px;font-size:9px;padding:6px 9px}
  .detail-gallery-current{grid-template-columns:1fr}
  .hero-bg{background-position:center,center,63% center}
}

/* v0.8 — homepage refinement + locked VW Audi Racing master logo */
.generation-number,.generation-number.accent{color:#d3d5d8}
.brand img{object-fit:contain;object-position:left center}
.footer-logo{object-fit:contain}
@media(min-width:1281px){.brand img{width:500px;max-width:31vw}.site-header.scrolled .brand img{width:312px}}
