:root { --white: #f5f5f0; --black: #0a0a0a; --red: #e63946; --font-display: 'Archivo Black', system-ui, sans-serif; --font: 'Archivo', system-ui, sans-serif; } * { box-sizing: border-box; margin: 0; padding: 0; } html { scroll-behavior: smooth; } body { font-family: var(--font); background: var(--white); color: var(--black); min-height: 100vh; } .back { position: fixed; top: 1.25rem; left: 1.25rem; z-index: 10; font-size: 1.25rem; color: var(--black); text-decoration: none; font-weight: 500; } main { max-width: 100%; } .mast { padding: 4rem 1.5rem 3rem; border-bottom: 6px solid var(--black); } .year { font-size: 0.7rem; letter-spacing: 0.25em; font-weight: 500; display: block; margin-bottom: 2rem; } .mast h1 { font-family: var(--font-display); font-size: clamp(4rem, 18vw, 11rem); line-height: 0.85; letter-spacing: -0.04em; font-weight: 400; } .role { margin-top: 1.5rem; font-size: 0.8rem; letter-spacing: 0.35em; font-weight: 500; } .strip { padding: 1.25rem 1.5rem; border-bottom: 4px solid var(--black); } .strip-red { background: var(--red); color: var(--white); } .strip-red p { font-family: var(--font-display); font-size: clamp(1.25rem, 4vw, 2rem); letter-spacing: 0.02em; } .strip-avail { background: var(--black); color: var(--white); } .strip-avail p { font-size: 0.7rem; letter-spacing: 0.2em; font-weight: 500; } .stats { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 4px solid var(--black); } .stat { padding: 1.5rem 1rem; text-align: center; border-right: 4px solid var(--black); } .stat:last-child { border-right: none; } .stat-n { display: block; font-family: var(--font-display); font-size: 1.75rem; letter-spacing: -0.02em; } .stat-l { font-size: 0.6rem; letter-spacing: 0.25em; font-weight: 500; } .block-link { margin-top: 0.35rem; font-size: 0.75rem; } .block-link a { color: inherit; text-decoration: underline; text-underline-offset: 2px; } .blocks { display: grid; grid-template-columns: 1fr 1fr; } @media (max-width: 500px) { .blocks { grid-template-columns: 1fr; } } .block { padding: 2rem 1.5rem; border-bottom: 4px solid var(--black); border-right: 4px solid var(--black); min-height: 160px; } .block:nth-child(2n) { border-right: none; } .block-wide { grid-column: 1 / -1; border-right: none; } .block-inv { background: var(--black); color: var(--white); } .num { font-size: 0.65rem; letter-spacing: 0.2em; opacity: 0.5; display: block; margin-bottom: 0.75rem; } .block h2 { font-family: var(--font-display); font-size: 2rem; letter-spacing: -0.02em; margin-bottom: 0.35rem; } .block p { font-size: 0.85rem; letter-spacing: 0.05em; } .block a { color: inherit; text-decoration: underline; text-underline-offset: 3px; } .rules { list-style: none; display: grid; gap: 0.5rem; } .rules li { font-family: var(--font-display); font-size: clamp(0.9rem, 2.5vw, 1.1rem); letter-spacing: 0.08em; } .cta-block { padding: 3rem 1.5rem; border-bottom: 6px solid var(--black); display: flex; flex-direction: column; gap: 1.25rem; } .cta { font-family: var(--font-display); font-size: clamp(1rem, 3vw, 1.5rem); color: var(--black); text-decoration: none; letter-spacing: 0.04em; border-bottom: 4px solid var(--red); padding-bottom: 0.25rem; transition: color 0.15s, border-color 0.15s; } .cta:hover { color: var(--red); border-color: var(--black); } .cta-primary { background: var(--black); color: var(--white); padding: 0.5rem 0; border-bottom-color: var(--black); } .cta-primary:hover { color: var(--red); background: var(--black); } footer { padding: 1.25rem 1.5rem; font-size: 0.7rem; letter-spacing: 0.2em; font-weight: 500; } footer a { color: var(--black); text-decoration: none; } footer a:hover { text-decoration: underline; }