
:root{--bg:#101010;--panel:#1b1b1b;--panel2:#242424;--line:#37332c;--text:#f6f3ed;--muted:#bbb7b1;--gold:#d9ac5c;--ink:#121212;--feature-glow:rgba(0,0,0,.75);color-scheme:dark}
html[data-theme="light"]{--bg:#f6f4ee;--panel:#fff;--panel2:#f0ece5;--line:#d9d1c4;--text:#252018;--muted:#635e55;--gold:#98661d;--ink:#fff;--feature-glow:rgba(0,0,0,.78);color-scheme:light}
body{background:var(--bg);color:var(--text);transition:background .2s,color .2s}
p,.small-note{color:var(--muted)}
.bar{background:var(--bg);border-color:var(--line)}
.hero{background:var(--panel)}
.nav{gap:16px}
.brand{font-size:16px;letter-spacing:.035em}
.brand .mark{color:#e1ad53;background:#221a10;border-color:#ca9946}
.theme-toggle{border:1px solid var(--line);color:var(--text);background:var(--panel);border-radius:999px;padding:9px 13px;cursor:pointer;font-size:13px;font-weight:800;white-space:nowrap}
.theme-toggle:hover{border-color:var(--gold)}
.theme-toggle:focus-visible,.feature-arrow:focus-visible,.feature-dot:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.card,.panel,.special,.placeholder,.story,.release-card,.releaselist,.contact-form-panel{background:var(--panel);border-color:var(--line)}
.story:hover,.release-row:hover{background:var(--panel2)}
.panel-alt,.special{background:var(--panel2)}
.article p,.release-info small,.field label,.contact-info p{color:var(--muted)}
.field input,.field textarea,.field select{background:var(--bg);color:var(--text);border-color:var(--line)}
.field option{background:var(--panel);color:var(--text)}
.nivalis,.dish,.hunt{background:linear-gradient(130deg,#49351b,#191919 75%)}
.hero-inner{padding:60px 0}
.eyebrow,.textlink,.release-date,.release-card-type,.release-card-link{color:var(--gold)}
.navlinks .pitchlink{border-color:var(--gold)}
.navlinks a[aria-current="page"]{color:var(--gold)}
.featured{position:relative;min-height:510px;overflow:hidden;background:#161513;border-bottom:1px solid var(--line)}
.featured-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.featured-gradient{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.54) 48%,rgba(0,0,0,.09)),linear-gradient(0deg,rgba(0,0,0,.75),transparent 55%)}
.featured .shell{position:relative;min-height:510px;display:flex;flex-direction:column;justify-content:flex-end;padding:75px 0 68px}
.featured .eyebrow{color:#e8bb70}
.featured h1{color:#fff;max-width:780px;font-size:clamp(35px,5vw,66px);letter-spacing:-.04em;line-height:1.08;margin:13px 0}
.featured p{color:#e5e1d9;max-width:610px;font-size:17px;margin:0 0 25px}
.featured .btn.gold{background:#f1e9d9;color:#1b1713}
.featured .btn.outline{color:white;background:#ffffff1c;border-color:#ffffff75}
.feature-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;border:1px solid #ffffff7a;color:#fff;background:#101010a6;border-radius:50%;width:43px;height:43px;font-size:28px;cursor:pointer}
.feature-arrow.prev{left:15px}.feature-arrow.next{right:15px}
.feature-dots{display:flex;align-items:center;gap:10px;margin-top:24px}
.feature-dot{height:7px;width:23px;border:0;border-radius:8px;background:#ffffff55;cursor:pointer}
.feature-dot.active{background:#e9b768;width:39px}
.latest-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.video-tile{display:block;background:var(--panel);border-radius:12px;border:1px solid var(--line);overflow:hidden}
.video-tile:hover{border-color:var(--gold)}
.video-thumb{position:relative;aspect-ratio:16/9;background:#292723;overflow:hidden}
.video-thumb img{width:100%;height:100%;object-fit:cover}
.play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:25px;padding:4px 16px;background:#000b;border:1px solid #fff9;border-radius:8px;color:white}
.video-tile-body{padding:16px}
.video-tile-body strong{display:block;font-size:16px;line-height:1.4}
.video-tile-body small{color:var(--muted);font-size:12px}
.muted-status{border:1px dashed var(--line);background:var(--panel);padding:25px;border-radius:10px}
.muted-status p{margin-top:4px}
body.has-feature .hero{display:none}
@media(max-width:780px){.nav{flex-direction:row;flex-wrap:wrap;justify-content:center;padding:12px 0}.brand{margin-right:auto}.navlinks{order:3;width:100%;justify-content:center}.theme-toggle{margin-left:auto}.featured,.featured .shell{min-height:470px}.featured .shell{padding:70px 25px 54px}.featured-gradient{background:linear-gradient(0deg,#090909f5,rgba(0,0,0,.18) 95%)}.feature-arrow{top:32%;width:35px;height:35px;font-size:24px}.latest-video-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.navlinks{gap:12px;font-size:12px}.brand{font-size:12px}.brand .mark{height:38px;width:38px}.theme-toggle{padding:7px 10px}.featured h1{font-size:34px}.latest-video-grid{grid-template-columns:1fr}.section{padding:40px 0}.featured .shell{padding-left:22px;padding-right:22px}}

.brand .mark{overflow:hidden;flex-shrink:0}.brand .mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.storyphoto{background:linear-gradient(140deg,#3b3326,#171717)}.release-card-art{background:linear-gradient(140deg,#3b3326,#171717)}.article-photo{background:var(--panel)}.meta{color:var(--muted)}

/* Never fail silently if external Steam artwork becomes unavailable. */
.storyphoto,.release-card-art,.article-photo,.video-thumb{position:relative}
.image-fallback{display:grid;place-items:center;padding:12px;text-align:center;background:repeating-linear-gradient(-45deg,#222 0,#222 12px,#29251d 12px,#29251d 24px);border:1px solid #574b36;color:#e6bd7a;font-size:12px;line-height:1.4;font-weight:800;letter-spacing:.025em}
.storyphoto>.image-fallback,.release-card-art>.image-fallback,.article-photo>.image-fallback,.video-thumb>.image-fallback{position:absolute;inset:0}
.release-row>.image-fallback{width:129px;min-width:129px;height:69px;border-radius:6px}
@media(max-width:780px){.release-row>.image-fallback{width:82px;min-width:82px;height:50px;font-size:9px}}

/* High-definition, uncropped, long-form YouTube feature.
   The artwork is a separate 16:9 pane, never a stretched text backdrop. */
.featured{min-height:465px;background:radial-gradient(ellipse at 76% 30%,rgba(118,87,37,.10),transparent 52%),#141312}
.featured .shell.feature-layout{
 display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);
 gap:clamp(24px,4vw,60px);align-items:center;
 position:relative;min-height:465px;padding:55px 12px;
}
.feature-copy{position:relative;z-index:1;max-width:490px}
.featured .feature-copy h1{
 color:#fff;font-size:clamp(30px,3.5vw,48px);
 line-height:1.12;letter-spacing:-.035em;margin:14px 0 19px;
 max-width:100%;overflow-wrap:break-word;
}
.featured .feature-copy p{font-size:16px;line-height:1.5;color:#cbc5bc;margin:0 0 24px;max-width:460px}
.featured .feature-copy .eyebrow{color:#e9bc76}
.featured .feature-copy .btn{font-size:14px}
.featured .feature-dots{margin-top:26px}
.feature-poster{
 position:relative;display:block;min-width:0;width:100%;
 aspect-ratio:16/9;overflow:hidden;
 border:1px solid #706148;border-radius:13px;
 background:#24201c;box-shadow:0 20px 50px #0006;
 transition:border-color .2s,transform .2s;
}
.feature-poster:hover{border-color:#e0b36a;transform:translateY(-2px)}
.feature-poster:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.feature-video-image{width:100%;height:100%;display:block;object-fit:contain;object-position:center;background:#161616}
.feature-poster-play{
 position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
 display:grid;place-items:center;border-radius:12px;
 width:72px;height:50px;background:#141414c7;color:#fff;
 border:1px solid #ffffff8c;font-size:25px;opacity:.88;
 transition:background .2s,transform .2s;pointer-events:none;
}
.feature-poster:hover .feature-poster-play{background:#b77d20ed;transform:translate(-50%,-50%) scale(1.07)}
.featured .feature-arrow{top:50%;width:37px;height:37px;font-size:23px;z-index:3;border-color:#c9bda35c}
.featured .feature-arrow.prev{left:7px}
.featured .feature-arrow.next{right:7px}
.feature-poster>.image-fallback{position:absolute;inset:0}
@media(max-width:950px){
 .featured .shell.feature-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;padding:48px 16px;min-height:395px}
 .featured .feature-copy h1{font-size:clamp(28px,3.8vw,38px)}
 .featured .feature-copy p{font-size:14px}
}
@media(max-width:740px){
 .featured{min-height:0}
 .featured .shell.feature-layout{
  grid-template-columns:1fr;min-height:0;gap:24px;
  padding:38px 16px 45px;max-width:600px;
 }
 .featured .feature-poster{grid-row:1;width:100%;max-width:100%}
 .featured .feature-copy{grid-row:2;width:100%;max-width:100%}
 .featured .feature-copy h1{font-size:clamp(29px,6vw,39px);margin:10px 0 13px}
 .featured .feature-copy p{font-size:14px;margin-bottom:17px}
 .featured .feature-dots{margin-top:20px}
 .featured .feature-arrow{top:calc(38px + 15vw);width:33px;height:33px;font-size:21px}
 .featured .feature-arrow.prev{left:4px}
 .featured .feature-arrow.next{right:4px}
}
@media(max-width:520px){
 .featured .shell.feature-layout{padding:22px 8px 34px;gap:21px}
 .featured .feature-copy h1{font-size:clamp(26px,7vw,34px)}
 .featured .feature-copy .btn{padding:11px 14px}
 .featured .feature-arrow{top:calc(22px + 24vw)}
 .feature-poster-play{width:55px;height:39px;font-size:21px}
}

/* SHORTS SPOTLIGHT: a dedicated 9:16 promotional / organic rail alongside
   the long-form 16:9 hero. Organic Shorts and paid placements never mix labels. */
.home-feature-row{display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:stretch;background:#11100f;border-bottom:1px solid var(--line)}
.home-feature-row>.featured{min-width:0;border-bottom:0}
.home-feature-row .featured .shell.feature-layout{min-width:0;padding:54px 22px;gap:24px;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
.home-feature-row .featured .feature-copy h1{font-size:clamp(28px,3.15vw,44px)}
.home-feature-row .featured .feature-copy p{font-size:14px}
.shorts-spotlight{background:#1b1917;border-left:1px solid #756040;padding:23px 19px;min-width:0;display:flex;flex-direction:column;gap:12px;color:#f9f3e7}
.shorts-rail-header .eyebrow{font-size:10px;letter-spacing:.13em;color:#e1b46d}
.shorts-rail-header h2{font-size:20px;color:#fff;margin:5px 0 4px;line-height:1.1}
.shorts-rail-header p{font-size:11px;color:#bcb3a6;line-height:1.4;margin:0}
.shorts-rail-player{flex:1;display:flex;min-height:0}
.short-feature-link{display:flex;flex:1;flex-direction:column;min-width:0;color:#fff;text-decoration:none;border:1px solid #4d4235;border-radius:10px;overflow:hidden;background:#141311}
.short-feature-link:hover,.short-feature-link:focus-visible{border-color:#e5b560;outline-color:#e5b560}
.short-feature-photo{position:relative;aspect-ratio:9/11;min-height:145px;overflow:hidden;background:#222018}
.short-feature-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.short-feature-photo .image-fallback{position:absolute;inset:0}
.short-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#000b;border-radius:8px;font-size:20px;padding:8px 12px;color:white;pointer-events:none}
.short-feature-text{display:flex;flex:1;flex-direction:column;gap:6px;padding:12px}
.short-feature-text strong{font-size:14px;line-height:1.28;color:#fff;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.short-organic-label,.short-ad-label{font-size:10px;text-transform:uppercase;letter-spacing:.11em;font-weight:900;color:#eab96b}
.short-ad-label{display:table;padding:4px 7px;border:1px solid #d5a35d;border-radius:4px;color:#fff;background:#66502e}
.short-sponsor-name{font-size:11px;line-height:1.3;color:#ead0a1}
.short-watch{font-size:11px;font-weight:800;color:#e4b36c;margin-top:auto}
.shorts-rail-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}
.shorts-rail-controls[hidden]{display:none}
.short-rail-prev,.short-rail-next{background:#322a21;border:1px solid #574630;border-radius:8px;color:#ffe6bc;cursor:pointer;font-size:23px;width:32px;height:30px}
.short-rail-prev:hover,.short-rail-next:hover{border-color:#e7ba73}
.short-rail-dots{display:flex;gap:7px;align-items:center}
.short-rail-dot{width:17px;height:6px;border-radius:9px;background:#73685d;border:0;cursor:pointer}
.short-rail-dot.active{background:#e6b365;width:26px}
.shorts-rail-all{color:#e6b365;text-decoration:none;font-size:11px;font-weight:800;text-align:center}
.shorts-rail-loading{border:1px dashed #574b35;border-radius:10px;padding:14px;min-height:220px;display:flex;flex-direction:column;justify-content:center;gap:8px}
.shorts-rail-loading strong{font-size:15px}
.shorts-rail-loading p{font-size:12px;line-height:1.5;color:#cfc1ae}
.shorts-rail-loading a{color:#e6b365;font-size:12px}
@media(max-width:1100px){.home-feature-row{grid-template-columns:minmax(0,1fr) 230px}.shorts-spotlight{padding:16px 12px}.shorts-rail-header h2{font-size:18px}.home-feature-row .featured .shell.feature-layout{padding:32px 18px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:860px){.home-feature-row{grid-template-columns:1fr}.home-feature-row .featured .shell.feature-layout{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}.shorts-spotlight{border-left:0;border-top:1px solid #574b37;max-width:none;display:grid;grid-template-columns:170px minmax(0,1fr) 80px;align-items:center;gap:14px;padding:16px 24px}.short-feature-link{flex-direction:row}.short-feature-photo{aspect-ratio:9/16;min-height:0;width:120px;flex-shrink:0}.shorts-rail-player{min-height:0}.shorts-rail-controls{flex-direction:column}.shorts-rail-all{grid-column:1/-1;text-align:left}.shorts-rail-header h2{font-size:20px}}
@media(max-width:620px){.home-feature-row .featured .shell.feature-layout{grid-template-columns:1fr;padding:22px 12px}.shorts-spotlight{grid-template-columns:1fr;gap:12px;padding:16px}.short-feature-link{flex-direction:row;max-height:195px}.short-feature-photo{width:110px;aspect-ratio:9/16}.shorts-rail-controls{flex-direction:row;justify-content:center}.shorts-rail-all{text-align:center}.shorts-rail-header p{font-size:12px}}

/* Vertically center the large full-video feature alongside the taller Shorts rail. */
@media(min-width:861px){
 .home-feature-row>.featured{display:flex;align-items:stretch}
 .home-feature-row .featured .shell.feature-layout{height:100%;min-height:620px;align-items:center}
}
