/* Wilson Olympic Games — lightweight responsive styles */
:root{
  --bg:#FBE6C9;
  --ink:#111111;
  --ink-dim:#333333;
  --accent:#111111;
  --cta-bg:#F5D9AE;
  --cta-ink:#111111;
  --radius:14px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.container{
  width:100%;
  max-width:1100px;
  margin-inline:auto;
  padding: clamp(16px, 2.5vw, 28px);
}

.site-header{
  background:#fff;
  border-bottom:1px solid #eee;
  position:sticky; top:0; z-index:10;
}
.brand{
  font-weight:700;
  letter-spacing:.2px;
}
.brand .numeral{
  font-weight:600;
  color:var(--ink-dim);
  margin-left:.35rem;
  font-size:.95em;
}

.hero{
  background:var(--bg);
  padding-block: clamp(32px, 6vw, 80px);
}
.hero-grid{
  display:grid;
  grid-template-columns: 1.2fr 1fr;
  gap: clamp(16px, 3vw, 48px);
  align-items:center;
}
@media (max-width: 900px){
  .hero-grid{ grid-template-columns: 1fr; }
  .hero-art{ order:-1; }
}

.hero-copy h1{
  font-size: clamp(36px, 6.5vw, 64px);
  line-height: 1.05;
  margin:0 0 12px 0;
  letter-spacing:-.02em;
}
.lede{
  font-size: clamp(16px, 2.2vw, 22px);
  color:var(--ink-dim);
  max-width: 28ch;
  margin: 0 0 22px 0;
}

.cta{
  display:inline-block;
  border:2px solid #000;
  padding: 14px 20px;
  border-radius: var(--radius);
  text-decoration:none;
  color:var(--cta-ink);
  background: var(--cta-bg);
  font-weight: 600;
  transition: transform .06s ease, box-shadow .06s ease;
}
.cta:hover{ transform: translateY(-1px); box-shadow: 0 4px 0 #000; }
.cta:active{ transform: translateY(1px); box-shadow:none; }

.scrolling{
  margin-top:16px;
  font-size:14px;
  color:#555;
}

.hero-art img{
  width:100%;
  max-width: 520px;
  display:block;
  margin-inline:auto;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
  height:auto;
}

.details{
  padding-block: clamp(28px, 5vw, 60px);
}
.details h2{
  font-size: clamp(22px, 2.8vw, 32px);
  margin:0 0 8px 0;
}
.details p{
  max-width: 60ch;
  color: var(--ink-dim);
}

.site-footer{
  border-top:1px solid #eee;
  background:#fafafa;
  color:#444;
}
.site-footer small{display:block; text-align:center;}
