@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url("./inter-latin.woff2") format("woff2")}
:root{color-scheme:dark;--background:#000;--text:#dedede;--muted:#999;--line:#292929}
*{box-sizing:border-box}
html{background:var(--background);-webkit-text-size-adjust:100%}
body{margin:0;min-height:100svh;padding:60px 26px;display:grid;place-items:center;font-family:Arial,Helvetica,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}
main{width:100%;max-width:460px}
header{text-align:center;margin-bottom:56px}
.logo{display:block;width:240px;max-width:75%;height:auto;margin:0 auto 28px}
h1{margin:0;font-size:14px;line-height:1.5;font-weight:400;letter-spacing:.22em;text-transform:uppercase}
nav a,.upcoming{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:24px 16px}
nav a{color:var(--text);text-decoration:none;font-size:16px;line-height:1.5;letter-spacing:-.02em;transition:color 180ms ease,background-color 180ms ease,border-color 180ms ease}
.arrow{width:20px;height:20px;flex-shrink:0;color:var(--muted);transition:transform 180ms ease,color 180ms ease}
nav a>span:first-child,.upcoming>span:first-child{font-family:Inter,Arial,Helvetica,sans-serif;font-size:14px;font-weight:500;line-height:1.5;letter-spacing:.08em;text-transform:uppercase}
nav a:is(:hover,:focus-visible) .arrow{transform:translate(2px,-2px)}
a:focus-visible{outline:2px solid #bcbcbc;outline-offset:6px}
.upcoming{margin-top:8px;font-size:16px;line-height:1.5;letter-spacing:-.02em;color:#929292}
.status{flex-shrink:0;font-size:8px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:#999;white-space:nowrap;border:1px solid #303030;border-radius:3px;padding:5px 7px}
@media(max-width:420px){body{padding:44px 24px}.logo{width:210px}header{margin-bottom:44px}nav a,.upcoming{font-size:14px;min-height:80px;gap:12px}.status{font-size:8px;letter-spacing:.04em}h1{font-size:12px}}
@media(max-width:420px){nav a>span:first-child,.upcoming>span:first-child{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Restrained accents sampled from each destination's own branding. */
nav a[href="https://cwdriverdev.com"]{--accent-rgb:159,78,255}
nav a[href="https://calanwilliamsracing.com/"]{--accent-rgb:0,183,238}
nav{display:grid;gap:8px}
nav a{background:#090909;border:1px solid #1c1c1c;border-radius:5px}
nav a .arrow{color:#aaa}
nav a:is(:hover,:focus-visible){background-color:#101010;border-color:rgba(var(--accent-rgb),.22)}
nav a:is(:hover,:focus-visible) .arrow{color:color-mix(in srgb,rgb(var(--accent-rgb)) 50%,#bbb)}
nav a:focus-visible{outline-color:color-mix(in srgb,rgb(var(--accent-rgb)) 35%,#bcbcbc)}

.contact{display:flex;flex-direction:column;align-items:center;gap:4px;margin:38px 0 0;font-style:normal;text-align:center}
.contact a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 0;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:400;line-height:1.5;letter-spacing:.025em;color:#999;text-decoration:none;max-width:100%;overflow-wrap:anywhere;transition:color .2s ease}

.contact a:hover{color:var(--text)}
@media(prefers-reduced-motion:reduce){.contact a{transition:none}}

.contact a[href^="mailto:"]{text-transform:none}

nav a>span:first-child{color:#fff;text-shadow:none;transition:text-shadow 180ms ease}
nav a:is(:hover,:focus-visible)>span:first-child{text-shadow:0 0 10px rgba(var(--accent-rgb),.24),0 0 22px rgba(var(--accent-rgb),.08)}

.logo{transform:translateX(16px)}

.profile-header{margin-bottom:38px}
.profile-header .logo{width:88px;margin-bottom:28px}
.profile{display:grid;grid-template-columns:124px minmax(0,1fr);gap:26px;align-items:center;text-align:left}
.portrait{display:block;width:124px;height:150px;object-fit:cover;object-position:52% 30%;border-radius:3px;border:1px solid var(--line)}
.profile-copy{min-width:0}
.profile-meta{margin:12px 0 0;font-size:10px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;color:#aaa}
.driver-grade{color:#c4b38b}
.profile-summary{margin:10px 0 0;font-size:13px;line-height:1.6;letter-spacing:0;color:#aaa}


@media(max-width:420px){.upcoming{flex-wrap:wrap;row-gap:12px}.upcoming>span:first-child{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){nav a:is(:hover,:focus-visible) .arrow{transform:none}}

.profile h1{font-size:20px;line-height:1.35;letter-spacing:.14em;font-weight:400}
.achievements{list-style:none;margin:24px 0 0;padding:0;text-align:left;color:#aaa;font-size:12px;font-weight:400;line-height:1.65;letter-spacing:0}
.achievements li+li{margin-top:5px}
@media(max-width:420px){
  .profile{grid-template-columns:100px minmax(0,1fr);gap:20px}
  .portrait{width:100px;height:126px}
  .profile-header{margin-bottom:30px}
  .profile-header .logo{width:80px;margin-bottom:24px}
  .profile h1{font-size:17px;letter-spacing:.1em}
  .profile-summary{font-size:12px}
  .profile-meta{font-size:9px}
  .achievements{margin-top:22px;font-size:11px}
  .contact{margin-top:32px}
  .contact a{font-size:11px;letter-spacing:.025em}
}
