.ideas-page{background:var(--bg);color:var(--text)}
.ideas-kicker{margin:0 0 12px;color:var(--gold-text);font:700 11px/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.reading-progress{position:fixed;z-index:102;top:var(--header-height);left:0;right:0;height:3px;background:var(--line)}
.reading-progress::after{content:"";display:block;width:var(--reading-progress,0%);height:100%;background:var(--gold)}

/* Article */
.editorial-article{padding:88px 20px 96px}
.article-header{width:min(780px,100%);margin:0 auto;text-align:left}
.article-breadcrumb{display:flex;align-items:center;gap:8px;margin:0 0 34px;color:var(--text-muted);font-size:12px}
.article-breadcrumb a{color:var(--gold-text)}
.article-breadcrumb a:hover,.article-breadcrumb a:focus-visible{text-decoration:underline;text-underline-offset:3px}
.article-header h1{margin:0;color:var(--head);font:700 clamp(40px,5vw,60px)/1.1 var(--sans);letter-spacing:-.035em;text-wrap:balance}
.article-subtitle{max-width:720px;margin:22px 0 0;color:var(--text-muted);font-size:clamp(18px,2vw,21px);line-height:1.55}
.article-byline{display:flex;gap:8px 18px;flex-wrap:wrap;margin-top:24px;color:var(--text-muted);font-size:12px}
.article-byline a{color:var(--text);font-weight:700}
.article-byline a:hover,.article-byline a:focus-visible{color:var(--gold-text)}
.article-lead-image{width:min(960px,100%);margin:52px auto 0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--surface)}
.article-lead-image img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 54%}
.article-lead-portrait img{object-position:center 56%}
.article-body{width:min(720px,100%);margin:52px auto 0;color:var(--text);font-size:18px;line-height:1.72}
.article-body>p{margin:0 0 22px}
.article-lede{color:var(--head);font-size:21px;font-weight:600;line-height:1.58}
.article-section{padding-top:64px;scroll-margin-top:calc(var(--header-height) + 28px)}
.article-section h2,.article-conclusion h2{margin:0 0 16px;color:var(--head);font:750 clamp(30px,4vw,40px)/1.15 var(--sans);letter-spacing:-.03em}
.article-section>p{margin:0 0 32px;color:var(--text-muted)}
.editorial-list{margin:0;padding-left:28px}
.editorial-list li{padding:0 0 28px 8px;color:var(--gold-text);font-weight:700}
.editorial-list li::marker{font-size:14px}
.editorial-list h3{margin:0 0 7px;color:var(--head);font:700 23px/1.3 var(--sans);letter-spacing:-.02em}
.editorial-list p{margin:0;color:var(--text-muted);font-size:17px;font-weight:400;line-height:1.7}
.editorial-list a,.official-link{color:var(--gold-text);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.editorial-list .huntar-entry{margin:4px 0 30px;padding:22px 24px 23px 34px;border-left:3px solid var(--gold);background:var(--surface-2)}
.article-conclusion{margin-top:44px;padding-top:56px;border-top:1px solid var(--line)}
.article-conclusion p{margin:0 0 22px}
.article-cta{margin-top:64px;padding:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);text-align:left}
.article-cta h2{margin:0;color:var(--head);font:750 clamp(28px,4vw,38px)/1.18 var(--sans);letter-spacing:-.03em}
.article-cta>p:not(.ideas-kicker){margin:14px 0 24px;color:var(--text-muted);line-height:1.65}
.article-cta .btn{min-height:50px;padding-inline:24px;border-radius:7px}

/* Games article */
.game-section>.game-entry{margin-top:46px;padding-top:44px;border-top:1px solid var(--line)}
.game-section>.game-entry:first-of-type{margin-top:30px}
.game-number{margin:0 0 9px;color:var(--gold-text);font:700 11px/1 var(--sans);letter-spacing:.12em}
.game-entry h3{margin:0 0 8px;color:var(--head);font:750 clamp(28px,4vw,36px)/1.15 var(--sans);letter-spacing:-.03em}
.game-summary{margin:0;color:var(--text);font-size:18px;font-weight:650;line-height:1.55}
.game-entry>p:not(.game-number,.game-summary){margin:18px 0 0;color:var(--text-muted);font-size:17px;line-height:1.7}
.game-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:24px 0 21px}
.game-facts div{padding:12px 13px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}
.game-facts dt{margin:0 0 3px;color:var(--gold-text);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.game-facts dd{margin:0;color:var(--text);font-size:13px;line-height:1.4}
.official-link{display:inline-block;font-size:14px}
.official-link:hover,.official-link:focus-visible{color:var(--link-hover)}
.official-link-group{display:flex;gap:10px 22px;flex-wrap:wrap}

/* Blog index */
.blog-index-hero{padding:88px 20px 70px;border-bottom:1px solid var(--line);background:var(--bg)}
.blog-index-hero-copy{width:min(900px,100%);margin:0 auto;text-align:left}
.blog-index-hero h1{max-width:760px;margin:0;color:var(--head);font:750 clamp(42px,6vw,66px)/1.06 var(--sans);letter-spacing:-.045em;text-wrap:balance}
.blog-index-hero h1 em{color:inherit;font:inherit}
.blog-index-hero-copy>p:last-child{max-width:620px;margin:20px 0 0;color:var(--text-muted);font-size:18px}
.blog-topics{width:min(900px,calc(100% - 40px));margin:0 auto;display:flex;align-items:center;gap:6px 18px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--line)}
.blog-topics span{color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.blog-topics a{color:var(--text);font-size:13px;font-weight:600}
.blog-topics a:hover,.blog-topics a:focus-visible{color:var(--gold-text)}
.blog-latest{width:min(900px,100%);margin:0 auto;padding:64px 20px 88px}
.blog-section-heading{margin-bottom:24px}
.blog-section-heading .ideas-kicker{margin-bottom:8px}
.blog-section-heading h2{margin:0;color:var(--head);font:750 clamp(30px,4vw,40px)/1.15 var(--sans);letter-spacing:-.03em}
.blog-article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.blog-article-card{height:104px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.blog-article-card>a{display:grid;grid-template-columns:104px minmax(0,1fr);height:100%;color:inherit}
.blog-article-card img{width:104px;height:104px;object-fit:cover}
.blog-article-card>a>div{min-width:0;padding:14px 15px}
.blog-article-meta{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.blog-article-meta span:not(:last-child)::after{content:"·";margin-left:7px;color:var(--gold-text)}
.blog-article-card h2{display:-webkit-box;overflow:hidden;margin:0;color:var(--head);font:700 17px/1.25 var(--sans);letter-spacing:-.02em;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.blog-article-card:hover,.blog-article-card:focus-within{border-color:var(--line-strong)}
.blog-article-card:hover h2,.blog-article-card:focus-within h2{color:var(--gold-text)}

@media(max-width:760px){
  .editorial-article{padding:68px 18px 74px}
  .article-header h1{font-size:clamp(35px,10vw,44px)}
  .article-subtitle{font-size:17px}
  .article-byline{display:grid;gap:5px}
  .article-lead-image{margin-top:40px;margin-inline:-18px;width:calc(100% + 36px);border-right:0;border-left:0;border-radius:0}
  .article-body{margin-top:42px;font-size:17px}
  .article-section{padding-top:52px}
  .article-section h2,.article-conclusion h2{font-size:30px}
  .editorial-list{padding-left:24px}
  .editorial-list li{padding-left:4px}
  .editorial-list h3{font-size:21px}
  .editorial-list p,.game-entry>p:not(.game-number,.game-summary){font-size:16px}
  .editorial-list .huntar-entry{margin-left:-24px;padding:20px 18px 21px 27px}
  .article-cta{padding:28px 22px}
  .game-section>.game-entry{margin-top:38px;padding-top:38px}
  .game-facts{grid-template-columns:1fr}
  .game-entry h3{font-size:28px}
  .blog-index-hero{padding:68px 20px 52px}
  .blog-index-hero h1{font-size:clamp(38px,11.5vw,50px)}
  .blog-topics{align-items:flex-start}
  .blog-topics span{width:100%;margin-bottom:3px}
  .blog-latest{padding-top:52px;padding-bottom:74px}
  .blog-article-grid{grid-template-columns:1fr}
}
