@font-face{font-family:Limelight;src:url("/fonts/limelight.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Sofia Sans";src:url("/fonts/sofia-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Sofia Sans";src:url("/fonts/sofia-medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Sofia Sans";src:url("/fonts/sofia-semibold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Sofia Sans";src:url("/fonts/sofia-bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Sofia Sans";src:url("/fonts/sofia-extrabold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Sofia Sans";src:url("/fonts/sofia-black.woff2") format("woff2");font-weight:900;font-style:normal;font-display:swap}
:root{
  --navy:#06101c;--ink:#0a1628;--teal:#1ad4c4;--gold:#ffd056;--magenta:#ff2d8a;
  --ivory:#f4efe6;--mute:#9bb0c4;--zinc:#143044;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--navy);color:var(--ivory);font-family:"Sofia Sans",system-ui,sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:var(--teal)}
/* zinc-mansard header */
.ch-mast{
  display:flex;align-items:center;gap:12px;
  height:68px;padding:0 16px;
  background:linear-gradient(180deg,#0b1a2c 0%,#06101c 100%);
  border-bottom:2px solid #ffd05688;
}
.ch-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.ch-mark{width:56px;height:56px;border-radius:50%;border:2px solid var(--gold);box-shadow:0 0 14px #1ad4c4aa;object-fit:cover}
.ch-word{
  font-family:"Sofia Sans",sans-serif;font-size:48px;line-height:1;color:var(--gold);
  font-weight:900;letter-spacing:.02em;
  text-shadow:0 0 16px #ffd056cc,0 2px 0 #3a2a00,-1px 0 0 #1a0c00,1px 0 0 #1a0c00;
}
.ch-pills{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto;align-items:center}
.ch-pills a{
  height:44px;padding:0 13px;display:inline-flex;align-items:center;gap:7px;
  border-radius:22px;border:1.5px solid #ffd056cc;background:#0c2136;
  color:var(--ivory);text-decoration:none;font-weight:800;font-size:14px;
}
.ch-pills a svg{width:22px;height:22px;fill:var(--gold);flex-shrink:0}
.ch-pills a[aria-current="page"],.ch-pills a:hover{background:#12344c;border-color:var(--teal);color:#fff}
.ch-cta,.ch-cta-mini{
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(90deg,#1ad4c4 0%,#7a4dff 55%,#ff2d8a 100%);
  color:#fff;font-weight:900;text-decoration:none;border-radius:12px;
  box-shadow:0 0 22px #1ad4c4aa,0 0 28px #ff2d8aaa,0 4px 0 #6a1040;letter-spacing:.04em;
  text-transform:uppercase;
}
.ch-cta-mini{height:44px;padding:0 16px;font-size:13px;margin-left:6px;flex-shrink:0}
.ch-cta{height:56px;padding:0 32px;font-size:22px;min-width:280px}
.ch-ticker{
  height:22px;overflow:hidden;background:#041018;border-bottom:1px solid #1ad4c455;
  display:flex;align-items:center;
}
.ch-ticker p{
  margin:0;white-space:nowrap;display:inline-block;
  animation:ch-marq 22s linear infinite;
  font-size:12px;font-weight:800;color:var(--gold);letter-spacing:.1em;
  padding-left:20px;text-transform:uppercase;
}
@keyframes ch-marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* full-width hero 316px, H1 84px heavy, CTA 56px — tile row ends ~780px */
.ch-hero{position:relative;height:316px;overflow:hidden}
.ch-hero>img{width:100%;height:316px;object-fit:cover;object-position:48% 32%;filter:brightness(1.12) saturate(1.08) contrast(1.05)}
.ch-hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(6,16,28,.48) 0%,rgba(6,16,28,.12) 36%,rgba(6,16,28,.06) 100%);
}
.ch-stage{position:absolute;inset:0;z-index:1;display:flex;align-items:center;padding:18px 28px;gap:20px}
.ch-copy{flex:0 0 420px;min-width:0}
.ch-copy h1{
  font-family:"Sofia Sans",system-ui,sans-serif;font-weight:900;font-size:84px;line-height:.86;
  margin:0 0 16px;letter-spacing:.01em;text-transform:uppercase;
  background:linear-gradient(180deg,#fff8d0 0%,#ffd056 42%,#e89614 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:
    drop-shadow(2px 0 0 #120800) drop-shadow(-2px 0 0 #120800)
    drop-shadow(0 3px 0 #120800) drop-shadow(0 -2px 0 #120800)
    drop-shadow(2px 2px 0 #120800) drop-shadow(-2px 2px 0 #120800)
    drop-shadow(0 0 18px #ffd056ee) drop-shadow(0 0 8px #1ad4c466);
}
.ch-lantern{
  flex-shrink:0;width:108px;min-height:108px;margin-left:auto;border-radius:50% 50% 46% 46%;
  border:3px solid var(--gold);background:radial-gradient(circle at 40% 30%,#3a2408,#0a1628 70%);
  box-shadow:0 0 22px #ffd056aa, inset 0 0 16px #1ad4c433;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:8px 6px;
}
.ch-lantern span{font-size:11px;font-weight:900;letter-spacing:.16em;color:var(--teal);text-transform:uppercase}
.ch-lantern strong{font-family:"Sofia Sans",sans-serif;font-weight:900;font-size:28px;color:var(--gold);line-height:1;margin:4px 0;text-shadow:0 0 10px #ffd056aa}
.ch-lantern em{font-style:normal;font-size:10px;font-weight:800;color:#f4efe6cc;letter-spacing:.08em;text-transform:uppercase}
/* slim promo rail 126px, titles 28px+ uppercase, colored rims — art + title only */
.ch-promos{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:8px 16px 0}
.ch-promo{
  height:126px;display:flex;align-items:center;overflow:hidden;
  border-radius:12px;background:#0a1628;
  text-decoration:none;color:inherit;
}
.ch-promo.rim-purple{border:3px solid #9b4dff;box-shadow:0 0 14px #9b4dff88}
.ch-promo.rim-magenta{border:3px solid #ff2d8a;box-shadow:0 0 14px #ff2d8a88}
.ch-promo.rim-teal{border:3px solid #1ad4c4;box-shadow:0 0 14px #1ad4c488}
.ch-promo img{width:168px;height:126px;object-fit:cover;flex-shrink:0}
.ch-promo h2{
  margin:0;padding:0 14px;font-family:"Sofia Sans",sans-serif;font-weight:900;
  font-size:28px;line-height:1.1;color:#fff8d0;text-transform:uppercase;letter-spacing:.03em;
  text-shadow:0 2px 0 #120800,0 0 12px #ffd05699;
}
/* gutter-ledge row of 8 tiles — fully visible, row ends ~780px */
.ch-tiles{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;padding:8px 16px 20px}
.ch-tile{
  position:relative;border-radius:10px;overflow:hidden;
  border:2px solid #ffd056cc;background:#0a1628;text-decoration:none;color:inherit;
  box-shadow:0 4px 0 #041018,0 0 10px #1ad4c433;
}
.ch-tile img{width:100%;height:196px;object-fit:cover}
.ch-badge{
  position:absolute;top:6px;left:6px;padding:2px 7px;border-radius:6px;
  font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#06101c;
}
.ch-badge.hot{background:var(--magenta);right:auto}
.ch-badge.novo{background:var(--teal);left:auto;right:6px}
.ch-plaque{
  margin:0;padding:8px 4px 9px;font-family:"Sofia Sans",sans-serif;font-size:16.5px;line-height:1.15;
  color:#fff;text-align:center;background:linear-gradient(180deg,#1a3a52,#0a1628);
  font-weight:900;letter-spacing:.03em;text-transform:uppercase;text-shadow:0 1px 0 #000;
}
/* below the fold */
.ch-band{padding:28px 18px 8px;max-width:1280px;margin:0 auto}
.ch-band h2{
  font-family:Limelight,serif;font-weight:400;font-size:28px;color:var(--gold);margin:0 0 12px;
}
.ch-stack{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
.ch-rank{background:#0a1628;border:1px solid #ffd05655;border-radius:12px;padding:14px 16px}
.ch-rank ol{margin:0;padding:0;list-style:none;counter-reset:ch}
.ch-rank li{
  counter-increment:ch;display:flex;justify-content:space-between;gap:10px;
  padding:8px 0;border-bottom:1px solid #1ad4c422;font-weight:650;font-size:15px;
}
.ch-rank li::before{content:counter(ch);color:var(--gold);font-family:Limelight,serif;font-size:18px;width:28px}
.ch-rank li span{color:var(--mute);font-weight:600;text-align:right}
.ch-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ch-fact{background:#0a1628;border:1px solid #1ad4c455;border-radius:12px;padding:12px}
.ch-fact strong{display:block;font-family:Limelight,serif;color:var(--teal);font-size:16px;margin-bottom:4px}
.ch-fact span{font-size:13.5px;color:var(--mute);font-weight:600;line-height:1.4}
.ch-teasers{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ch-tease{
  background:#0a1628;border:1px solid #ffd05655;border-radius:12px;overflow:hidden;
  text-decoration:none;color:inherit;
}
.ch-tease img{height:110px;width:100%;object-fit:cover}
.ch-tease h3{margin:0;padding:8px 10px 10px;font-size:15px;color:var(--gold);font-weight:800}
.ch-note{font-size:14px;color:#c9d6e3;background:#0a1628;border-left:3px solid var(--teal);padding:10px 12px;border-radius:0 10px 10px 0}
.ch-foot{
  margin-top:28px;padding:22px 18px 40px;background:#041018;border-top:2px solid #ffd05655;
  color:var(--mute);font-size:13.5px;line-height:1.55;
}
.ch-foot a{color:var(--gold)}
.ch-foot nav{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:12px}
/* inner pages */
.ch-wrap{max-width:880px;margin:0 auto;padding:20px 18px 48px}
.ch-crumb{font-size:14px;color:var(--mute);margin:0 0 12px}
.ch-crumb a{color:var(--teal)}
.ch-pagehero{margin:0 0 18px;border-radius:16px;overflow:hidden;border:2px solid #ffd05677}
.ch-pagehero img{width:100%;height:280px;object-fit:cover}
.ch-wrap h1{
  font-family:Limelight,serif;font-weight:400;font-size:clamp(1.8rem,3.4vw,2.6rem);
  color:var(--gold);line-height:1.15;margin:0 0 12px;
  text-shadow:0 0 12px #ffd05655;
}
.ch-wrap h2{font-family:Limelight,serif;font-weight:400;font-size:1.4rem;color:var(--teal);margin:1.5em 0 .5em;line-height:1.25}
.ch-wrap h3{font-size:1.05rem;color:var(--gold);margin:1.1em 0 .4em}
.ch-wrap p,.ch-wrap li{font-size:17px;line-height:1.6;color:#e8eef4}
.ch-wrap figcaption{font-size:13px;color:var(--mute);padding:6px 2px}
.ch-cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0;align-items:center}
.ch-cta-alt{
  display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 18px;
  background:transparent;border:2px solid var(--gold);color:var(--gold);border-radius:10px;
  text-decoration:none;font-weight:800;
}
.ch-disc{font-size:13px;color:var(--mute);margin:6px 0 0}
/* reviews hub */
.ch-hub{max-width:1100px;margin:0 auto;padding:20px 18px 56px}
.ch-hub h1{font-family:Limelight,serif;font-size:clamp(1.7rem,3vw,2.4rem);color:var(--gold);margin:0 0 10px}
.ch-tools{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;align-items:center}
.ch-tools input{
  flex:1;min-width:220px;height:40px;border-radius:10px;border:1.5px solid #ffd05677;
  background:#0a1628;color:#fff;padding:0 12px;font:600 15px "Sofia Sans",sans-serif;
}
.ch-tab{
  height:36px;padding:0 12px;border-radius:18px;border:1.5px solid #1ad4c477;
  background:#0a1628;color:var(--ivory);font-weight:800;cursor:pointer;font-family:inherit;
}
.ch-tab.is-on{background:var(--teal);color:#06101c;border-color:var(--teal)}
.ch-slips{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.ch-slip{
  display:flex;gap:10px;align-items:center;background:#0a1628;border:1px solid #ffd05644;
  border-radius:12px;padding:10px 12px;
}
.ch-slip img,.ch-mono{
  width:40px;height:40px;border-radius:50%;border:1.5px solid var(--gold);flex-shrink:0;object-fit:cover;
}
.ch-mono{display:grid;place-items:center;font-weight:900;font-size:11px;background:#143044;color:var(--gold)}
.ch-slip h2{margin:0;font-size:16px;color:#fff;font-weight:800;line-height:1.2}
.ch-slip p{margin:0;font-size:13px;color:var(--mute)}
.ch-slip a{font-size:13px;font-weight:800;color:var(--teal)}
.ch-more{
  margin:16px auto 0;display:block;height:42px;padding:0 22px;border-radius:10px;
  border:2px solid var(--gold);background:#0a1628;color:var(--gold);font-weight:800;cursor:pointer;font-family:inherit;
}
.ch-shown{font-size:14px;color:var(--mute);margin:0 0 8px}
@media (max-width:1100px){
  .ch-word{font-size:42px}
  .ch-copy h1{font-size:64px}
  .ch-tiles{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:800px){
  .ch-mast{height:auto;flex-wrap:wrap;padding:8px 12px}
  .ch-word{font-size:34px}
  .ch-mark{width:48px;height:48px}
  .ch-pills{width:100%;margin-left:0}
  .ch-hero,.ch-hero>img{height:240px}
  .ch-copy{flex-basis:auto}
  .ch-copy h1{font-size:40px}
  .ch-cta{height:48px;font-size:16px;min-width:0}
  .ch-tile img{height:160px}
  .ch-promo h2{font-size:22px}
  .ch-lantern{display:none}
  .ch-promos,.ch-teasers,.ch-stack,.ch-slips,.ch-facts{grid-template-columns:1fr}
  .ch-tiles{grid-template-columns:repeat(2,1fr)}
  .ch-promo h2{font-size:20px}
}
