.hero { padding: 72px 0 88px; position: relative; overflow: hidden; }
.hero::before {
  content: ""; position: absolute;
  top: -300px; left: -200px;
  width: 600px; height: 600px;
  background: radial-gradient(closest-side, rgba(26,79,209,.08), transparent);
  pointer-events: none;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 64px; align-items: center;
}
.hero h1.hero-title {
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.02;
  letter-spacing: -0.035em;
  font-weight: 700;
  margin: 24px 0 24px;
  color: var(--ink);
}
.hero h1.hero-title .accent { color: var(--orange); }
.hero-lede {
  font-size: 19px; line-height: 1.55;
  color: var(--ink-soft);
  max-width: 30em;
  margin: 0 0 36px;
  font-weight: 400;
}
.hero-ctas { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }

.hero-meta { display: flex; gap: 28px; margin-top: 36px; flex-wrap: wrap; }
.hero-rating { display: flex; flex-direction: column; gap: 4px; }
.hero-rating-stars { color: var(--yellow); font-size: 20px; line-height: 1; letter-spacing: 1px; }
.hero-rating-row { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.hero-rating-score { font-size: 26px; font-weight: 800; letter-spacing: -0.02em; color: var(--ink); }
.hero-rating-score .sep { font-size: 16px; font-weight: 500; color: var(--ink-soft); }
.hero-rating-meta { font-size: 14px; color: var(--ink-muted); font-weight: 500; }

.hero-photo {
  position: relative;
  aspect-ratio: 4/5;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: 0 30px 60px -30px rgba(11,18,32,.35);
}
.hero-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }

.dutch-stripe {
  position: absolute;
  left: -22px; top: 40px; bottom: 40px;
  width: 10px;
  border-radius: 6px;
  background: linear-gradient(to bottom, #ae1c28 0 33%, #fff 33% 66%, #21468b 66% 100%);
  box-shadow: 0 6px 20px -6px rgba(11,18,32,.25);
}

@media (max-width: 980px) {
  .hero-grid { grid-template-columns: 1fr; gap: 48px; }
  .hero-photo { aspect-ratio: 4/3; max-height: 520px; }
  .dutch-stripe { left: -10px; width: 8px; }
}
