/* Velox 1.0 — standalone design system */
:root {
    --bg:#0e0c01;
    --gold:#feb616;
    --white:#fff;
    --muted:#b8b5aa;
    --line:#343024;
    --max:1160px
}

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

html {
    scroll-behavior:smooth
}

body {
    margin:0;
    background:var(--bg);
    color:var(--white);
    font:400 16px/1.65 system-ui,-apple-system,Segoe UI,Arial,sans-serif
}

a {
    color:inherit;
    text-decoration:none
}

a:focus-visible,button:focus-visible {
    outline:2px solid var(--gold);
    outline-offset:5px
}

img {
    display:block;
    max-width:100%
}

.wrap {
    width:min(var(--max),calc(100% - 48px));
    margin-inline:auto
}

.site-header {
    border-bottom:1px solid var(--line)
}

.header-inner {
    min-height:86px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:32px
}

.brand {
    display:inline-flex;
    flex-direction:column;
    line-height:1;
    flex-shrink:0
}

.brand img {
    display:block;
    width:229px;
    max-width:100%;
    height:auto
}

.nav {
    display:flex;
    align-items:center;
    gap:25px;
    flex-wrap:wrap
}

.nav a {
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.07em
}

.nav a:hover,.lang a[aria-current=page] {
    color:var(--gold)
}

/* Yellow underline on header navigation hover only */
.nav > a:hover {
    text-decoration:underline;
    text-decoration-color:var(--gold);
    text-decoration-thickness:2px;
    text-underline-offset:7px
}

.lang {
    display:flex;
    gap:9px;
    padding-left:0
}

.lang a {
    line-height:1;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    opacity:.65
}

.lang img {
    width:22px;
    height:12px;
    display:block
}

.lang a:hover,.lang a[aria-current=page] {
    opacity:1
}

.hero {
    position:relative;
    isolation:isolate;
    overflow:hidden;
    min-height:540px;
    display:flex;
    align-items:center;
    border-bottom:1px solid var(--line);
    background:var(--bg)
}

/* Hero image on the right, fading into the dark background on the left. */
.hero::before {
    content:"";
    position:absolute;
    inset:0 0 0 auto;
    width:85%;
    background-image:url("showroom1.webp");
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center center;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 28%,#000 55%,rgba(0,0,0,.78) 69%,rgba(0,0,0,.35) 82%,transparent 98%);
    mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 28%,#000 55%,rgba(0,0,0,.78) 69%,rgba(0,0,0,.35) 82%,transparent 98%);
    z-index:-1;
    pointer-events:none
}

.hero-inner {
    position:relative;
    z-index:1;
    padding-block:115px 125px
}

.kicker {
    color:var(--gold);
    font-size:11px;
    font-weight:800;
    letter-spacing:.2em;
    text-transform:uppercase;
    margin:0 0 20px
}

h1,h2,h3,p {
    margin-top:0
}

h1 {
    max-width:850px;
    font-size:clamp(45px,7vw,88px);
    letter-spacing:-.065em;
    line-height:1.05;
    margin-bottom:27px
}

h1 em {
    font-style:normal;
    color:var(--gold)
}

.lead {
    max-width:630px;
    font-size:clamp(17px,2vw,20px);
    color:#d5d1c7;
    margin-bottom:0
}

.section {
    padding-block:108px;
    border-bottom:1px solid var(--line)
}

.section-inner {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);
    gap:clamp(30px,7vw,110px)
}

.section-title {
    font-size:clamp(32px,4.5vw,52px);
    line-height:1.12;
    letter-spacing:-.05em;
    margin-bottom:0
}

/* About Us: align the right-hand heading and kicker to the right. */
#about .section-inner > :last-child,
#coaching .section-inner > :last-child {
    text-align:right
}

.copy {
    max-width:680px
}
/* About Us – linken Text etwas nach unten verschieben */
@media (min-width: 769px) {
    #about .copy {
        padding-top: 30px;
    }
}
.copy p {
    color:#d5d1c7;
    margin-bottom:18px
}

.copy p:last-child {
    margin-bottom:0
}

.section:nth-of-type(odd):not(.hero) {
    background:#121006
}

.news-empty {
    border-top:1px solid var(--line);
    padding-top:20px;
    color:var(--muted)
}

.contact-line {
    color:var(--white)!important
}

/* Contact buttons: yellow by default, black on hover, right-aligned. */
#contact .contact-actions {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:14px;
    margin-top:28px
}
#coaching .coaching-button {
    display: flex;
    width: fit-content;
    align-items: center;
    justify-content: center;

    margin-top: 28px;
    margin-left: auto;

    min-width: 132px;
    padding: 12px 24px;

    border: 1px solid var(--gold);
    border-radius: 4px;

    background: var(--gold);
    color: var(--bg);

    font-size: 13px;
    font-weight: 700;
    text-align: center;

    transition: background-color .2s ease, color .2s ease;
}

/* Coaching Button Hover */
#coaching .coaching-button:hover,
#coaching .coaching-button:focus-visible {
    background: #000;
    color: var(--gold);
}
#contact .contact-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:132px;
    padding:12px 24px;
    border:1px solid var(--gold);
    border-radius:4px;
    background:var(--gold);
    color:var(--bg);
    font-size:13px;
    font-weight:700;
    text-align:center;
    transition:background-color .2s ease,color .2s ease
}

#contact .contact-button:hover,
#contact .contact-button:focus-visible {
    background:#000;
    color:var(--gold)
}

.footer {
    padding:32px 0
}

.footer-inner {
    display:flex;
    justify-content:space-between;
    gap:20px;
    flex-wrap:wrap;
    color:var(--muted);
    font-size:12px
}

.footer strong {
    color:var(--gold);
    letter-spacing:.06em
}

.skip {
    position:absolute;
    left:-9999px;
    top:0;
    background:var(--gold);
    color:#111;
    padding:12px
}

.skip:focus {
    left:12px;
    z-index:5
}

@media(max-width:850px) {
    .header-inner {
        padding-block:22px;
        align-items:flex-start;
        flex-direction:column;
        gap:24px
    }

    .nav {
        gap:14px 20px
    }

    .hero {
        min-height:460px
    }

    .hero-inner {
        padding-block:90px
    }

    .section {
        padding-block:76px
    }

    .section-inner {
        grid-template-columns:1fr;
        gap:26px
    }

}

@media(max-width:520px) {
    .wrap {
        width:calc(100% - 36px)
    }

    .nav {
        gap:12px 17px
    }

    .nav a {
        font-size:11px
    }

    .lang {
        padding-left:0
    }

    .hero-inner {
        padding-block:80px
    }

    .section {
        padding-block:64px
    }

}

/* ============================================================
   Velox 1.5 Test — additions only; Velox 1.0 remains unchanged.
   ============================================================ */
.section-index { color:var(--gold); font-variant-numeric:tabular-nums; letter-spacing:.12em }
.race-control { padding:38px 0 42px; border-bottom:1px solid var(--line); background:#151205 }
.race-topline { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:20px }
.race-label { color:var(--gold); font-size:11px; font-weight:800; letter-spacing:.18em }
.race-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:#453b22; border:1px solid #453b22 }
.race-panel { min-width:0; background:#0e0c01; padding:30px clamp(20px,4vw,45px) }
.race-meta,.race-foot { display:block; color:#b8b5aa; font-size:10px; font-weight:700; letter-spacing:.16em }
.race-panel h2 { font-size:clamp(23px,3.1vw,40px); letter-spacing:-.05em; line-height:1.13; margin:16px 0 10px }
.gold-dot { color:var(--gold) }
.race-panel p { color:#d5d1c7; margin:0 0 25px; font-size:14px }
.race-foot { color:#a79666 }
.race-result { color:var(--gold); font-size:clamp(44px,6vw,70px); font-weight:800; line-height:1.2; letter-spacing:-.07em; margin:5px 0 0 }
.race-result span { vertical-align:middle; font-size:11px; letter-spacing:.1em; border:1px solid #7c651e; border-radius:2px; padding:4px 6px; margin-left:10px }
.drivers-section { padding:105px 0; border-bottom:1px solid var(--line); background:#100e05 }
.drivers-heading { display:flex; justify-content:space-between; align-items:end; gap:35px; margin-bottom:40px }
.drivers-intro { max-width:370px; color:#d5d1c7; margin:0 }
.driver-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px }
.driver-card { display:grid; grid-template-columns:42% 58%; min-width:0; background:#171409; border:1px solid #393120 }
.driver-photo { position:relative; display:flex; align-items:center; justify-content:center; min-height:280px; overflow:hidden; background:linear-gradient(145deg,#40320a,#1b190f 70%) }
.driver-photo.alternate { background:linear-gradient(145deg,#2b2618,#453611 85%) }
.driver-photo::after { content:""; position:absolute; bottom:0; left:0; width:100%; height:4px; background:var(--gold) }
.driver-number { position:absolute; top:16px; left:17px; z-index:1; font-size:14px; color:var(--gold); font-weight:800 }
.driver-silhouette { font-size:clamp(95px,12vw,165px); line-height:1; font-weight:900; color:#feb61618; font-style:italic; transform:skew(-10deg) }
.driver-details { padding:25px 22px }
.driver-tag { font-size:9px; color:var(--gold)!important; letter-spacing:.15em; font-weight:800; margin:0 0 14px!important }
.driver-details h3 { font-size:clamp(18px,2vw,24px); line-height:1.15; letter-spacing:-.04em; margin:0 0 22px }
.driver-details dl { margin:0 }
.driver-details dl div { margin-bottom:13px }
.driver-details dt { font-size:9px; color:#a6a093; letter-spacing:.12em }
.driver-details dd { margin:2px 0 0; font-size:13px; color:#fff }
.driver-quote { font-style:italic; color:#c6b57e; font-size:12px; margin:18px 0 0 }
.demo-note { margin:18px 0 0; font-size:11px; color:#a9a18e }
/* Velox 1.5: more noticeable, one-time scroll reveals. */
.js-motion .reveal-section {
    opacity:0;
    transform:translateY(34px);
    transition:opacity .95s cubic-bezier(.22,1,.36,1),transform .95s cubic-bezier(.22,1,.36,1)
}
.js-motion .reveal-section.is-visible {
    opacity:1;
    transform:none
}
/* Let the heading and description follow each other subtly. */
.js-motion .reveal-section .section-inner > * {
    opacity:0;
    transform:translateY(16px);
    transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1)
}
.js-motion .reveal-section.is-visible .section-inner > * {
    opacity:1;
    transform:none
}
.js-motion .reveal-section.is-visible .section-inner > :first-child {
    transition-delay:.10s
}
.js-motion .reveal-section.is-visible .section-inner > :last-child {
    transition-delay:.25s
}
.js-motion .driver-card {
    opacity:0;
    transform:translateY(28px);
    transition:opacity .9s ease,transform .9s cubic-bezier(.22,1,.36,1)
}
.js-motion .reveal-section.is-visible .driver-card {
    opacity:1;
    transform:none;
    transition-delay:.18s
}
.js-motion .reveal-section.is-visible .driver-card:nth-child(2) {
    transition-delay:.36s
}
@media(max-width:850px) {
    .drivers-section { padding:75px 0 }
    .drivers-heading { align-items:start; flex-direction:column; gap:16px }
    .driver-grid { grid-template-columns:1fr }
}
@media(max-width:600px) {
    .race-grid { grid-template-columns:1fr }
    .race-panel { padding:25px 20px }
    .driver-card { grid-template-columns:40% 60% }
    .driver-photo { min-height:255px }
    .driver-details { padding:22px 15px }
}
@media(prefers-reduced-motion:reduce) {
    .js-motion .reveal-section,.js-motion .driver-card,.js-motion .reveal-section .section-inner > * { opacity:1!important; transform:none!important; transition:none!important }
}

/* Velox 1.5 Test — header heritage mark, news typography and title accents. */
/* Keep the English news headline on one line at desktop widths. */
#news .section-inner { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) }
#news .section-title { font-size:clamp(30px,3.4vw,43px); white-space:nowrap }
/* Short, fading gold stroke: follows each main white section heading. */
.section-title::after {
    content:"";
    display:block;
    width:min(190px,65%);
    height:2px;
    margin-top:11px;
    background:linear-gradient(to right,var(--gold),rgba(254,182,22,.4) 58%,transparent)
}
/* Right-aligned headings need a right-to-left fade. */
#about .section-title::after,
#coaching .section-title::after {
    margin-left:auto;
    background:linear-gradient(to left,var(--gold),rgba(254,182,22,.4) 58%,transparent)
}
/* Driver heading shares the same understated accent. */
.drivers-heading .section-title::after { width:150px }
@media(max-width:850px) {
    #news .section-inner { grid-template-columns:1fr }
    #news .section-title { white-space:normal; font-size:clamp(32px,4.5vw,52px) }
}


/* Velox 2.0 — full-team link and dedicated driver roster. */
.team-link {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    width:max-content;
    max-width:100%;
    margin:30px 0 0 auto;
    padding:7px 0 9px;
    color:var(--gold);
    font-size:12px;
    font-weight:700;
    letter-spacing:.10em;
    text-decoration:none;
    border-bottom:1px solid transparent;
    transition:color .25s ease,border-color .25s ease
}
.team-link:hover,.team-link:focus-visible {color:#fff;border-bottom-color:var(--gold)}
.team-link-arrow {display:inline-block;font-size:19px;line-height:1;transition:transform .25s ease}
.team-link:hover .team-link-arrow,.team-link:focus-visible .team-link-arrow {transform:translate(4px,-4px)}
.roster-intro {padding:95px 0 70px;border-bottom:1px solid var(--line)}
.roster-intro .section-title {font-size:clamp(35px,5vw,65px);width:fit-content;max-width:100%}
.roster-lead {margin:24px 0 12px;color:#e2dfd5;font-size:clamp(16px,2vw,20px)}
.roster-note {max-width:660px;color:#aaa498;font-size:13px}
.roster-section {padding:65px 0 100px}
.roster-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.roster-card {min-width:0;border:1px solid #393120;background:#171409}
.roster-visual {position:relative;display:flex;align-items:center;justify-content:center;min-height:190px;overflow:hidden;background:linear-gradient(145deg,#40320a,#1b190f 70%)}
.roster-card:nth-child(even) .roster-visual {background:linear-gradient(145deg,#2b2618,#453611 85%)}
.roster-visual::after {content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--gold)}
.roster-number {position:absolute;top:14px;left:16px;color:var(--gold);font-weight:800;font-size:14px}
.roster-mark {font-size:105px;line-height:1;font-weight:900;font-style:italic;transform:skew(-10deg);color:#feb61618}
.roster-info {padding:19px 17px 22px}
.roster-info .driver-tag {font-size:8px;line-height:1.5;letter-spacing:.1em}
.roster-info h3 {font-size:clamp(16px,1.7vw,21px);letter-spacing:-.03em;line-height:1.2;margin:0 0 14px}
.roster-detail {color:#b8b0a1;font-size:11px;letter-spacing:.08em}
.roster-back {margin-top:38px}
.js-motion .roster-card {opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1)}
.js-motion .reveal-section.is-visible .roster-card {opacity:1;transform:none}
.js-motion .reveal-section.is-visible .roster-card:nth-child(4n+1) {transition-delay:.08s}
.js-motion .reveal-section.is-visible .roster-card:nth-child(4n+2) {transition-delay:.16s}
.js-motion .reveal-section.is-visible .roster-card:nth-child(4n+3) {transition-delay:.24s}
.js-motion .reveal-section.is-visible .roster-card:nth-child(4n+4) {transition-delay:.32s}
@media(max-width:1000px) {.roster-grid {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px) {.roster-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.roster-intro {padding:70px 0 55px}}
@media(max-width:430px) {.roster-grid {grid-template-columns:1fr}.roster-visual {min-height:210px}}
@media(prefers-reduced-motion:reduce) {.js-motion .roster-card {opacity:1!important;transform:none!important;transition:none!important}.team-link-arrow {transition:none}}

/* Velox 2.1 - curated homepage news and dedicated news archive. */
.news-feature {padding:2px 0 0;border-left:2px solid #51401a;padding-left:23px}
.news-feature-meta {color:var(--gold)!important;font-size:10px!important;letter-spacing:.12em;font-weight:700;margin:0 0 14px!important}
.news-feature h3 {color:#fff;font-size:clamp(20px,2.2vw,27px);line-height:1.25;letter-spacing:-.035em;margin:0 0 13px}
.news-feature > p:last-child {color:#d5d1c7;font-size:14px;line-height:1.75;margin:0}
.news-all-link {margin-top:21px}
.news-archive {padding:70px 0 105px;border-bottom:1px solid var(--line)}
.news-archive-card {max-width:770px;padding:35px;border:1px solid #393120;background:#171409}
.news-archive-card h2 {font-size:clamp(24px,3vw,34px);line-height:1.2;letter-spacing:-.04em;margin:0 0 13px}
.news-archive-card > p:last-child {color:#d5d1c7;line-height:1.75;margin:0}
.news-back-link {margin:25px 0 0}
@media(max-width:850px) {.news-feature {margin-top:4px}}

/* Velox 2.2 — English-only motorsport magazine concept. */
.news-demo-disclaimer {display:inline-block;margin:20px 0 0;padding:8px 12px;border:1px solid #635126;color:#c7b47c;font-size:10px;line-height:1.5;letter-spacing:.1em;font-weight:700}
.magazine-section {padding:70px 0;border-bottom:1px solid var(--line)}
.magazine-feature {display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);background:#171409;border:1px solid #393120;color:inherit;text-decoration:none;transition:border-color .25s ease}
.magazine-feature:hover,.magazine-feature:focus-visible {border-color:#9a771d}
.magazine-art {display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;overflow:hidden;background:linear-gradient(140deg,#2c2614 0%,#17160f 48%,#45320b 100%);color:#feb616}
.magazine-art-large {min-height:350px;padding:30px}
.magazine-art span {font-size:10px;letter-spacing:.16em;font-weight:700}
.magazine-art strong {font-size:clamp(31px,5vw,67px);line-height:.95;letter-spacing:-.075em;max-width:440px;color:#fff}
.magazine-feature-copy {display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(25px,4vw,55px)}
.magazine-feature-copy h2 {font-size:clamp(26px,3.2vw,43px);line-height:1.12;letter-spacing:-.045em;margin:0 0 19px}
.magazine-feature-copy > p:not(.news-feature-meta) {font-size:15px;line-height:1.8;color:#d5d1c7;margin:0 0 28px}
.magazine-read {font-size:12px;font-weight:700;letter-spacing:.09em;color:var(--gold);border-bottom:1px solid transparent;padding-bottom:7px;transition:color .2s,border-color .2s}
.magazine-feature:hover .magazine-read,.magazine-feature:focus-visible .magazine-read {color:#fff;border-color:var(--gold)}
.magazine-read span {font-size:19px;margin-left:8px}
.magazine-more {padding-top:76px;padding-bottom:95px}
.magazine-section-heading {margin-bottom:28px}
.magazine-section-heading h2 {font-size:clamp(28px,3.8vw,43px);letter-spacing:-.04em;margin:6px 0 0}
.magazine-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.magazine-card {border:1px solid #393120;background:#171409;min-width:0}
.magazine-art-small {min-height:200px;padding:22px}
.magazine-art-small strong {font-size:clamp(27px,3.1vw,43px)}
.magazine-art-alt {background:linear-gradient(140deg,#3c2e12,#17160f 60%,#292416)}
.magazine-card-body {padding:27px}
.magazine-card-body h3 {font-size:clamp(21px,2.2vw,29px);letter-spacing:-.035em;margin:0 0 12px}
.magazine-card-body > p:not(.news-feature-meta) {color:#d5d1c7;font-size:14px;line-height:1.75;margin:0 0 22px}
.magazine-unpublished {color:#a9a18e;font-size:10px;font-weight:700;letter-spacing:.08em}
.article-width {max-width:850px}
.article-intro {padding:78px 0 66px;border-bottom:1px solid var(--line)}
.article-back {display:inline-block;margin-bottom:35px;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.09em;text-decoration:none}
.article-back:hover {color:#fff}
.article-intro .section-title {font-size:clamp(35px,5vw,65px);line-height:1.08}
.article-deck {font-size:clamp(17px,2.2vw,22px);color:#d5d1c7;line-height:1.6;max-width:700px;margin:28px 0 0}
.article-content {padding:55px 0 100px}
.article-hero-art {min-height:340px}
.article-caption {font-size:11px;color:#a9a18e;margin:11px 0 45px}
.article-prose {max-width:710px;margin:0 auto}
.article-prose p {font-size:16px;line-height:1.95;color:#d5d1c7;margin:0 0 24px}
.article-prose .article-opening {font-size:19px;color:#fff;line-height:1.8}
.article-prose h2 {font-size:clamp(24px,3vw,33px);letter-spacing:-.035em;margin:45px 0 18px}
.article-prose blockquote {margin:35px 0;padding:15px 0 15px 25px;border-left:2px solid var(--gold);color:#fff;font-size:20px;line-height:1.6;font-style:italic}
.article-return {margin-top:45px}
@media(max-width:800px) {.magazine-feature {grid-template-columns:1fr}.magazine-art-large {min-height:270px}.magazine-feature-copy {padding:30px}.magazine-grid {grid-template-columns:1fr}}
@media(max-width:520px) {.magazine-section {padding:50px 0}.magazine-art-large {min-height:230px;padding:23px}.magazine-art-small {min-height:170px}.magazine-card-body {padding:22px}.article-intro {padding:60px 0 50px}.article-content {padding:40px 0 75px}}

/* Velox 2.3: continuous magazine layout and single-page news articles. */
.magazine-section { border-bottom:1px solid var(--line); padding-bottom:95px }
.magazine-more { padding-top:65px; padding-bottom:0 }
.magazine-card-link { display:block; color:inherit; text-decoration:none; transition:border-color .25s ease }
.magazine-card-link:hover,.magazine-card-link:focus-visible { border-color:#9a771d }
.magazine-card-link:hover .magazine-read,.magazine-card-link:focus-visible .magazine-read { color:#fff; border-bottom-color:var(--gold) }
.magazine-photo { padding:0; position:relative }
.magazine-photo img { width:100%; height:100%; min-height:inherit; object-fit:cover; display:block }
[hidden] { display:none!important }
@media(max-width:520px) { .magazine-more { padding-top:48px } }

/* Velox 2.4: clickable homepage story, sourced from news-data.js. */
.news-home-story-link {display:block;color:inherit;text-decoration:none}
.news-home-story-link h3 {transition:color .2s ease}
.news-home-story-link:hover h3,.news-home-story-link:focus-visible h3 {color:var(--gold)}
.news-home-story-link:focus-visible {outline:2px solid var(--gold);outline-offset:6px}
.news-home-story-link > p:not(.news-feature-meta) {color:#d5d1c7;font-size:14px;line-height:1.75;margin:0}
.news-home-read {display:inline-block;color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.07em;margin-top:15px}

/* Velox 2.5 — responsive refinements and inline news photography. */
.article-inline-image { margin:38px 0 32px }
.article-inline-image img { width:100%; height:auto; display:block; border:1px solid #393120 }
.article-inline-image figcaption { margin-top:10px; color:#a9a18e; font-size:12px; line-height:1.6 }
@media (max-width:850px) {
    .header-inner { gap:16px }
    .nav { row-gap:12px }
    .race-grid { grid-template-columns:1fr }
    .drivers-heading { align-items:flex-start; flex-direction:column; gap:14px }
}
@media (max-width:600px) {
    .header-inner { padding-block:17px }
    .brand img { width:min(229px,65vw) }
    .nav { gap:12px 16px }
    .nav a { font-size:11px }
    .hero { min-height:390px }
    .hero-inner { padding-block:70px 76px }
    .hero h1 { font-size:clamp(38px,10vw,56px) }
    .section-title { overflow-wrap:break-word }
    .race-panel { padding:23px 20px }
    .driver-grid { grid-template-columns:1fr }
    .driver-card { grid-template-columns:minmax(0,40%) minmax(0,60%) }
    .driver-photo { min-height:230px }
    .driver-details { padding:20px 16px }
    .magazine-art strong { overflow-wrap:anywhere }
    .magazine-feature-copy { padding:24px 20px }
    .article-deck { overflow-wrap:break-word }
    #contact .contact-actions { gap:10px }
    #contact .contact-button { min-width:0; flex:1 1 120px }
}
@media (max-width:380px) {
    .driver-card { grid-template-columns:1fr }
    .driver-photo { min-height:155px }
    .driver-details { padding:20px }
}

/* Velox 2.6: restrained black helmet placeholders in driver cards. */
.roster-helmet {display:block;width:80%;max-width:210px;height:165px;object-fit:contain;filter:drop-shadow(0 15px 12px rgba(0,0,0,.4))}
.driver-helmet {display:block;width:92%;max-width:240px;height:190px;object-fit:contain;filter:drop-shadow(0 15px 12px rgba(0,0,0,.4))}
@media(max-width:430px) {.roster-helmet {height:180px}.driver-helmet {height:170px}}

/* Velox 2.7: consistent five-field driver profiles on homepage and team page. */
.profile-fields {margin:0;display:grid;gap:11px}
.profile-fields > div {min-width:0}
.profile-fields dt {font-size:9px;line-height:1.45;color:#a6a093;letter-spacing:.08em;text-transform:uppercase}
.profile-fields dd {margin:3px 0 0;font-size:13px;line-height:1.45;color:#fff;overflow-wrap:anywhere}
.roster-info .profile-fields {gap:9px}
.roster-info .profile-fields dt {font-size:8px}
.roster-info .profile-fields dd {font-size:12px}
/* Coaching – linken Beschreibungstext nach unten verschieben */
@media (min-width: 769px) {
    #coaching .copy {
        padding-top: 30px;
    }
}

/* Velox 2.8: three featured drivers on desktop, fluid on smaller screens. */
@media (min-width: 1051px) {
  #drivers .driver-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #drivers .driver-card { grid-template-columns:1fr; }
  #drivers .driver-photo { min-height:190px; }
  #drivers .driver-helmet { height:170px; }
}
@media (min-width: 701px) and (max-width: 1050px) {
  #drivers .driver-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #drivers .driver-card { grid-template-columns:1fr; }
  #drivers .driver-photo { min-height:190px; }
}
.driver-empty {color:#b8b0a1;grid-column:1/-1;margin:0;}
/* ==========================================
   VELOX 3.0 – MOBILE LAYOUT FIX
   Nur Smartphones bis 600px
   ========================================== */

@media (max-width: 600px) {

    /* HEADER */

    .header-inner {
        align-items: center;
        gap: 18px;
        padding-block: 20px;
    }

    .brand {
        align-self: center;
    }

    .brand img {
        width: 210px;
    }

    .nav {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 12px 14px;
    }

    .nav > a {
        font-size: 10px;
        white-space: nowrap;
    }

    /* Sprachflaggen in eigene, zentrierte Zeile */

    .nav .lang {
        flex-basis: 100%;
        justify-content: center;
        gap: 14px;
        padding: 4px 0 0;
    }


    /* ABOUT US & COACHING */

    #about .section-inner,
    #coaching .section-inner {
        display: flex;
        flex-direction: column;
        gap: 24px;
    }

    /* Überschrift vor Beschreibung anzeigen */

    #about .section-inner > :last-child,
    #coaching .section-inner > :last-child {
        order: -1;
        text-align: left;
    }

    /* Beschreibung darunter */

    #about .copy,
    #coaching .copy {
        padding-top: 0;
        max-width: 100%;
    }

    /* Überschriften linksbündig */

    #about .section-title,
    #coaching .section-title {
        text-align: left;
    }

    /* Coaching-Button unter der Überschrift */

    #coaching .coaching-button {
        margin-left: 0;
    }
}
/* ==========================================
   VELOX – TABLET LAYOUT
   Nur 601px bis 1024px
   ========================================== */

@media (min-width: 601px) and (max-width: 1024px) {

    /* About Us und Coaching untereinander */
    #about .section-inner,
    #coaching .section-inner {
        display: flex;
        flex-direction: column;
        gap: 24px;
    }

    /* Überschrift zuerst */
    #about .section-inner > :last-child,
    #coaching .section-inner > :last-child {
        order: -1;
        text-align: left;
    }

    /* Beschreibung darunter */
    #about .copy,
    #coaching .copy {
        padding-top: 0;
        max-width: 100%;
    }

    /* Überschriften linksbündig */
    #about .section-title,
    #coaching .section-title {
        text-align: left;
    }

    /* Coaching-Button */
    #coaching .coaching-button {
        margin-left: 0;
    }

    /* Nur zwei Fahrer auf der Tablet-Homepage */
    #drivers .driver-grid > .driver-card:nth-child(n+3) {
        display: none;
    }
}
/* About Us & Coaching – gelbe Linien mobil linksbündig */
@media (max-width: 1024px) {
    #about .section-title::after,
    #coaching .section-title::after {
        margin-left: 0;
        margin-right: auto;
    }
}