:root { --navy:#0b3158; --blue:#1767a8; --paper:#faf8f2; --paper-deep:#f1eee6; --muted:#5d6c7c; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; color:var(--navy); background:var(--paper); font-family:Outfit,sans-serif; }
.page { min-height:100vh; position:relative; isolation:isolate; overflow:hidden; padding:22px; background:radial-gradient(ellipse at 18% 3%,rgba(255,255,255,.9),transparent 38%),radial-gradient(ellipse at 88% 96%,rgba(23,103,168,.055),transparent 42%),var(--paper); }
.page::before { content:""; position:fixed; inset:0; z-index:0; pointer-events:none; opacity:.1; mix-blend-mode:multiply; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.035 .42' numOctaves='4' seed='8' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='.2'/%3E%3C/svg%3E"); background-size:360px 360px; }
.shell { width:min(100%,630px); position:relative; z-index:1; margin:0 auto; padding:clamp(34px,5vw,64px) 0 30px; }
.header { max-width:500px; margin:0 auto 38px; text-align:center; }
.wordmark { display:block; width:clamp(138px,23vw,172px); margin:0 auto 28px; text-decoration:none; }
.wordmark img { display:block; width:100%; height:auto; }
h1 { margin:0; color:#151515; font:400 clamp(27px,6.5vw,48px)/.9 'Bebas Neue',Impact,sans-serif; letter-spacing:.01em; text-transform:uppercase; white-space:nowrap; }
h1 em { color:var(--blue); font-style:normal; }
.intro { max-width:480px; margin:20px auto 0; color:var(--muted); font-size:clamp(16px,2.2vw,18px); line-height:1.5; }
.cards { display:grid; gap:16px; }
.card { display:block; aspect-ratio:1200 / 630; overflow:hidden; border-radius:13px; background:var(--navy); box-shadow:0 8px 20px rgba(11,49,88,.16); transition:transform .2s ease,box-shadow .2s ease; }
.card:hover,.card:focus-visible { transform:translateY(-3px); box-shadow:0 14px 28px rgba(11,49,88,.24); outline:none; }
.card:focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.card img { display:block; width:100%; height:100%; object-fit:cover; }
.footer { display:flex; justify-content:space-between; gap:12px; margin-top:28px; color:#64758a; font:11px 'DM Mono',monospace; }
@media (max-width:420px) { .page { padding:16px; } .shell { padding-top:35px; } .header { margin-bottom:28px; } h1 { font-size:22px; letter-spacing:0; } .intro { font-size:16px; } .footer { font-size:9px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .card { transition:none; } }
