*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#1C1917;--ink2:#57534E;--ink3:#A8A29E;
  --paper:#FAFAF9;--paper2:#F5F5F4;--paper3:#E7E5E0;
  --accent:#B45309;--accent-bg:#FEF3C7;--accent-text:#92400E;
  --rule:#E7E5E0;--green:#166534;--green-bg:#DCFCE7;
}
body{font-family:'Georgia',serif;background:var(--paper);color:var(--ink);font-size:15px;line-height:1.65}
.page{display:none}.page.active{display:block}

.masthead{border-bottom:3px solid var(--ink)}
.masthead-top{display:flex;align-items:center;justify-content:space-between;padding:14px 32px;border-bottom:1px solid var(--rule)}
.pub-name{font-family:'Georgia',serif;font-size:28px;font-weight:700;letter-spacing:-0.03em;color:var(--ink)}
.pub-name span{color:var(--accent)}
.pub-sub{font-family:Arial,sans-serif;font-size:10px;color:var(--ink3);margin-top:2px;letter-spacing:0.04em;text-transform:uppercase}
.pub-right{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3);text-align:right}
.pub-right strong{display:block;color:var(--ink2);margin-bottom:2px}
.mastnav{display:flex;background:var(--ink)}
.mastnav button{background:none;border:none;border-right:1px solid #44403C;color:#D6D3D1;font-family:Arial,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;padding:8px 16px;cursor:pointer;transition:background 0.15s,color 0.15s}
.mastnav button:hover{background:#292524;color:#fff}
.mastnav button.active{background:var(--accent);color:#fff}
.mastnav button:last-child{margin-left:auto;border-right:none;border-left:1px solid #44403C}

.ticker{background:var(--accent-bg);border-bottom:1px solid #FDE68A;padding:6px 32px;font-family:Arial,sans-serif;font-size:11px;color:var(--accent-text);display:flex;gap:14px;align-items:center}
.ticker-lbl{font-weight:700;text-transform:uppercase;font-size:10px;padding:2px 7px;background:var(--accent);color:#fff;border-radius:2px;white-space:nowrap}

.layout{display:grid;grid-template-columns:1fr 260px;gap:0}
.main-col{border-right:1px solid var(--rule);padding:28px 32px 40px}
.side-col{padding:24px 20px 40px}

.sec-rule{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.sec-rule span{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;background:var(--ink);color:var(--paper);padding:3px 8px}
.sec-rule::after{content:'';flex:1;height:1px;background:var(--ink)}

.widget-hed{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--ink);border-bottom:2px solid var(--ink);padding-bottom:5px;margin-bottom:12px}
.sidebar-widget{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--rule)}
.sidebar-widget:last-child{border-bottom:none;margin-bottom:0}

.footer{border-top:3px solid var(--ink);padding:14px 32px;display:flex;justify-content:space-between;align-items:center;background:var(--paper2)}
.footer-brand{font-family:'Georgia',serif;font-size:13px;font-weight:700;color:var(--ink)}
.footer-copy{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3)}
.footer-links{display:flex;gap:14px}
.footer-links button{background:none;border:none;font-family:Arial,sans-serif;font-size:11px;color:var(--ink2);cursor:pointer;text-transform:uppercase;letter-spacing:0.06em;padding:0}
.footer-links button:hover{color:var(--accent)}

/* ── GAMES PAGE ── */
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px;align-items:center}
.filter-bar span{font-family:Arial,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink2);margin-right:4px}
.filter-btn{font-family:Arial,sans-serif;font-size:11px;padding:4px 12px;border:1px solid var(--rule);background:var(--paper);color:var(--ink2);cursor:pointer;transition:all 0.15s}
.filter-btn:hover{border-color:var(--ink);color:var(--ink)}
.filter-btn.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}

.games-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.game-card{border-top:2px solid var(--ink);padding-top:10px}
.game-card.hidden{display:none}
.gc-tag{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--accent);margin-bottom:5px}
.gc-title{font-size:15px;font-weight:700;line-height:1.2;margin-bottom:5px;color:var(--ink)}
.gc-desc{font-size:12px;color:var(--ink2);line-height:1.5;margin-bottom:8px}
.gc-foot{display:flex;align-items:center;justify-content:space-between}
.gc-rating{font-family:Arial,sans-serif;font-size:11px;font-weight:700;color:var(--accent-text);background:var(--accent-bg);padding:2px 7px}
.gc-link{font-family:Arial,sans-serif;font-size:11px;color:var(--accent);text-decoration:none;border-bottom:1px solid #FDE68A}
.gc-link:hover{color:var(--accent-text)}

.game-count{font-family:Arial,sans-serif;font-size:12px;color:var(--ink3);margin-bottom:14px}
.game-count strong{color:var(--ink)}

/* ── CONTACT PAGE ── */
.contact-hero{border-bottom:1px solid var(--rule);padding-bottom:22px;margin-bottom:22px}
.contact-hero h1{font-size:30px;font-weight:700;letter-spacing:-0.02em;margin-bottom:8px}
.contact-hero p{font-size:14px;color:var(--ink2);font-style:italic;line-height:1.6}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px}
.info-card{border:1px solid var(--rule);padding:16px}
.info-card-lbl{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--ink3);margin-bottom:4px}
.info-card-val{font-size:14px;font-weight:700;color:var(--ink)}
.info-card-sub{font-family:Arial,sans-serif;font-size:11px;color:var(--ink2);margin-top:2px}

.form-section{border-top:2px solid var(--ink);padding-top:20px}
.form-section h2{font-size:18px;font-weight:700;margin-bottom:4px}
.form-section p{font-family:Arial,sans-serif;font-size:12px;color:var(--ink2);margin-bottom:16px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.form-group{display:flex;flex-direction:column;gap:4px}
.form-group label{font-family:Arial,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink2)}
.form-group input,.form-group textarea,.form-group select{font-family:'Georgia',serif;font-size:13px;border:1px solid var(--rule);padding:8px 10px;background:var(--paper);color:var(--ink);outline:none;transition:border-color 0.15s;width:100%}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--ink)}
.form-group textarea{min-height:90px;resize:vertical}
.form-submit{background:var(--ink);color:var(--paper);border:none;font-family:Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:11px 24px;cursor:pointer;transition:opacity 0.15s}
.form-submit:hover{opacity:0.8}
.form-note{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3);margin-top:8px}

.map-placeholder{background:var(--paper2);border:1px solid var(--rule);height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;margin-bottom:20px}
.map-placeholder i{font-size:24px;color:var(--ink3)}
.map-placeholder span{font-family:Arial,sans-serif;font-size:12px;color:var(--ink2);font-weight:700}
.map-placeholder small{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3)}

.dept-item{padding:10px 0;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:3px}
.dept-item:last-child{border-bottom:none}
.dept-name{font-family:Arial,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink)}
.dept-desc{font-size:12px;color:var(--ink2)}

/* ── REVIEWS PAGE ── */
.reviews-hero{border-bottom:2px solid var(--ink);padding-bottom:20px;margin-bottom:24px}
.reviews-hero h1{font-size:30px;font-weight:700;letter-spacing:-0.02em;margin-bottom:6px}
.reviews-hero p{font-size:14px;color:var(--ink2);font-style:italic}

.rating-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--rule);margin-bottom:24px}
.rs-box{text-align:center;padding:14px 8px;border-right:1px solid var(--rule)}
.rs-box:last-child{border-right:none}
.rs-n{font-size:26px;font-weight:700;font-family:'Georgia',serif;color:var(--ink);letter-spacing:-0.02em}
.rs-n.gold{color:var(--accent)}
.rs-l{font-family:Arial,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:0.07em;color:var(--ink3);margin-top:2px}

.review-card{border-top:2px solid var(--rule);padding:18px 0;border-bottom:1px solid var(--rule);margin-bottom:0}
.review-card:first-child{border-top:2px solid var(--ink)}
.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}
.review-game-tag{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--accent)}
.review-stars{font-family:Arial,sans-serif;font-size:11px;font-weight:700;color:var(--accent-text);background:var(--accent-bg);padding:2px 8px}
.review-title{font-size:16px;font-weight:700;margin-bottom:6px;line-height:1.25}
.review-body{font-size:13px;color:var(--ink2);line-height:1.65;font-style:italic;border-left:3px solid var(--rule);padding-left:12px;margin-bottom:10px}
.review-meta{display:flex;gap:14px;font-family:Arial,sans-serif;font-size:11px;color:var(--ink3)}
.review-meta strong{color:var(--ink2)}
.verdict-badge{display:inline-block;font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;padding:2px 8px;margin-left:8px}
.verdict-badge.great{background:var(--green-bg);color:var(--green)}
.verdict-badge.good{background:var(--accent-bg);color:var(--accent-text)}
.verdict-badge.mixed{background:#F3F4F6;color:#374151}

.rating-bar-wrap{margin-bottom:6px}
.rating-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-family:Arial,sans-serif;font-size:11px}
.rating-bar-label{width:24px;text-align:right;color:var(--ink2)}
.rating-bar-track{flex:1;height:6px;background:var(--rule)}
.rating-bar-fill{height:6px;background:var(--accent)}
.rating-bar-count{width:20px;color:var(--ink3);font-size:10px}

.featured-review{background:var(--paper2);border:1px solid var(--rule);padding:18px;margin-bottom:22px}
.featured-review .fr-label{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--accent);margin-bottom:6px}
.featured-review blockquote{font-size:17px;font-style:italic;line-height:1.4;color:var(--ink);margin-bottom:8px;border-left:3px solid var(--accent);padding-left:14px}
.featured-review cite{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3);text-transform:uppercase;letter-spacing:0.06em;font-style:normal}




*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#1C1917;--ink2:#57534E;--ink3:#A8A29E;
  --paper:#FAFAF9;--paper2:#F5F5F4;--paper3:#E7E5E0;
  --accent:#B45309;--accent-bg:#FEF3C7;--accent-text:#92400E;
  --rule:#E7E5E0;
}
body{font-family:'Georgia',serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.7}

.masthead{border-bottom:3px solid var(--ink);padding:18px 0 0}
.masthead-top{display:flex;align-items:center;justify-content:space-between;padding:0 40px 14px;border-bottom:1px solid var(--rule)}
.pub-name{font-family:'Georgia',serif;font-size:32px;font-weight:700;letter-spacing:-0.03em;color:var(--ink)}
.pub-name span{color:var(--accent)}
.pub-meta{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3);text-align:right;letter-spacing:0.04em;text-transform:uppercase}
.pub-meta strong{display:block;color:var(--ink2);font-size:12px;margin-bottom:2px}
.masthead-nav{display:flex;gap:0;border-top:1px solid var(--rule);background:var(--ink)}
.masthead-nav a{color:#D6D3D1;font-family:Arial,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;text-decoration:none;padding:8px 18px;border-right:1px solid #44403C;transition:background 0.15s,color 0.15s}
.masthead-nav a:hover{background:#292524;color:#FFF}
.masthead-nav a.active{background:var(--accent);color:#FFF}

.ticker{background:var(--accent-bg);border-bottom:1px solid #FDE68A;padding:7px 40px;font-family:Arial,sans-serif;font-size:12px;color:var(--accent-text);display:flex;gap:16px;align-items:center}
.ticker-label{font-weight:700;text-transform:uppercase;letter-spacing:0.06em;font-size:11px;padding:2px 8px;background:var(--accent);color:#FFF;border-radius:2px;white-space:nowrap}

.layout{display:grid;grid-template-columns:1fr 280px;gap:0;max-width:100%}
.main-col{border-right:1px solid var(--rule);padding:32px 36px 40px}
.side-col{padding:28px 24px 40px;background:var(--paper)}

.section-rule{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.section-rule span{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--ink);background:var(--ink);color:var(--paper);padding:3px 8px}
.section-rule::after{content:'';flex:1;height:1px;background:var(--ink)}

.hero-article{border-bottom:1px solid var(--rule);padding-bottom:28px;margin-bottom:28px}
.hero-kicker{font-family:Arial,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--accent);margin-bottom:8px}
.hero-headline{font-size:34px;font-weight:700;line-height:1.12;letter-spacing:-0.02em;color:var(--ink);margin-bottom:12px}
.hero-headline em{font-style:italic;font-weight:400}
.hero-deck{font-size:17px;color:var(--ink2);line-height:1.6;margin-bottom:16px;font-style:italic;border-left:3px solid var(--accent);padding-left:14px}
.byline{font-family:Arial,sans-serif;font-size:12px;color:var(--ink3);display:flex;gap:12px;align-items:center}
.byline strong{color:var(--ink2)}
.byline-dot{color:var(--rule)}

.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--rule);margin:20px 0}
.stat-box{text-align:center;padding:16px 12px;border-right:1px solid var(--rule)}
.stat-box:last-child{border-right:none}
.stat-n{font-size:28px;font-weight:700;color:var(--ink);letter-spacing:-0.03em;font-family:'Georgia',serif}
.stat-l{font-family:Arial,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:0.08em;color:var(--ink3);margin-top:2px}

.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}
.article-card{border-top:2px solid var(--ink)}
.article-card.secondary{border-top-color:var(--rule)}
.card-tag{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--accent);margin:10px 0 6px}
.card-hed{font-size:16px;font-weight:700;line-height:1.25;color:var(--ink);margin-bottom:6px}
.card-dek{font-size:13px;color:var(--ink2);line-height:1.5}
.card-meta{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3);margin-top:8px}
.card-rating{display:inline-flex;align-items:center;gap:3px;background:var(--accent-bg);color:var(--accent-text);padding:2px 7px;border-radius:2px;font-weight:700;font-size:11px;margin-left:6px}

.pullquote{border-top:3px solid var(--ink);border-bottom:1px solid var(--rule);padding:18px 0;margin:24px 0;font-size:20px;font-style:italic;line-height:1.4;color:var(--ink)}
.pullquote cite{display:block;font-style:normal;font-family:Arial,sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:0.08em;color:var(--ink3);margin-top:10px}

.games-list{display:flex;flex-direction:column;gap:0}
.game-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--rule)}
.game-num{font-family:Arial,sans-serif;font-size:11px;font-weight:700;color:var(--ink3);min-width:18px;margin-top:2px}
.game-info{}
.game-title{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:2px}
.game-genre{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3);text-transform:uppercase;letter-spacing:0.05em}
.game-stars{color:var(--accent);font-size:11px;margin-left:6px}

.sidebar-widget{margin-bottom:28px;padding-bottom:28px;border-bottom:1px solid var(--rule)}
.sidebar-widget:last-child{border-bottom:none}
.widget-hed{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--ink);border-bottom:2px solid var(--ink);padding-bottom:6px;margin-bottom:14px}

.contact-item{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-bottom:1px solid var(--rule);font-size:13px}
.contact-item:last-child{border-bottom:none}
.contact-lbl{font-family:Arial,sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--ink3)}
.contact-val{color:var(--ink);font-size:13px}
.contact-val a{color:var(--accent);text-decoration:none}
.contact-val a:hover{text-decoration:underline}

.sidebar-game{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--rule);font-size:13px}
.sidebar-game:last-child{border-bottom:none}
.sg-title{color:var(--ink);font-weight:700}
.sg-rating{font-family:Arial,sans-serif;font-size:11px;color:var(--accent-text);background:var(--accent-bg);padding:1px 6px;border-radius:2px}

.play-btn{display:block;background:var(--ink);color:var(--paper);text-align:center;font-family:Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:11px;text-decoration:none;margin-top:14px;transition:opacity 0.15s}
.play-btn:hover{opacity:0.8}

.footer{border-top:3px solid var(--ink);padding:18px 40px;display:flex;justify-content:space-between;align-items:center;background:var(--paper2)}
.footer-brand{font-family:'Georgia',serif;font-size:14px;font-weight:700;color:var(--ink)}
.footer-copy{font-family:Arial,sans-serif;font-size:11px;color:var(--ink3)}
.footer-links{display:flex;gap:16px}
.footer-links a{font-family:Arial,sans-serif;font-size:11px;color:var(--ink2);text-decoration:none;text-transform:uppercase;letter-spacing:0.06em}
.footer-links a:hover{color:var(--accent)}
