:root {
  --cs26gb-green: #1687ff;
  --cs26gb-gold: #ff4a4a;
  --cs26gb-ink: #06101f;
  --cs26gb-paper: #101f34;
  --cs26gb-text: #f4f8ff;
  --cs26gb-muted: #b7c8dd;
  --cs26gb-line: #294869;
  --cs26gb-max: 1320px;
  --cs26gb-radius: 18px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--cs26gb-ink); }
body { margin: 0; color: var(--cs26gb-text); background: var(--cs26gb-ink); font: 16px/1.72 Inter, Arial, Helvetica, sans-serif; overflow-x: hidden; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
.cs26gb-skip-link { position: fixed; left: 12px; top: -80px; z-index: 100; padding: 10px 14px; color: #07130b; background: var(--cs26gb-gold); border-radius: 8px; font-weight: 900; }
.cs26gb-skip-link:focus { top: 12px; }
.cs26gb-site-header { position: sticky; top: 0; z-index: 40; background: rgba(3, 7, 4, .96); border-bottom: 1px solid #213326; box-shadow: 0 8px 30px rgba(0, 0, 0, .45); backdrop-filter: blur(14px); }
.cs26gb-header-inner { width: min(100%, var(--cs26gb-max)); min-height: 76px; margin: auto; padding: 8px 22px; display: flex; align-items: center; gap: 18px; }
.cs26gb-logo { flex: 0 0 auto; }
.cs26gb-logo img { width: 160px; height: 58px; object-fit: contain; }
.cs26gb-site-nav { flex: 1 1 auto; display: flex; justify-content: center; gap: 2px; min-width: 0; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.cs26gb-site-nav a, .cs26gb-footer-menu a { text-decoration: none; }
.cs26gb-site-nav a { padding: 10px 9px; border: 1px solid transparent; border-radius: 9px; white-space: nowrap; }
.cs26gb-site-nav a:hover, .cs26gb-site-nav a:focus-visible { color: #fff; background: #122b1c; border-color: #2d6843; }
.cs26gb-header-actions { display: flex; gap: 9px; flex: 0 0 auto; }
.cs26gb-btn, .cs26gb-header-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 11px 21px; color: #021608; background: linear-gradient(180deg, #ff6969, #e52e3f); border: 1px solid #ff8b8b; border-radius: 10px; box-shadow: inset 0 1px rgba(255,255,255,.35), 0 7px 20px rgba(12,184,91,.2); font-weight: 900; line-height: 1; text-decoration: none; text-transform: uppercase; transition: transform .2s ease, filter .2s ease; }
.cs26gb-btn:hover, .cs26gb-header-actions a:hover { filter: brightness(1.08); transform: translateY(-2px); }
.cs26gb-btn-secondary { color: #f4f8ff !important; background: #171b18 !important; border-color: #5e6861 !important; box-shadow: none !important; }
.cs26gb-menu-toggle { display: none; width: 44px; height: 44px; padding: 9px; color: var(--cs26gb-green); background: #111b14; border: 1px solid #2b593a; border-radius: 9px; }
.cs26gb-menu-toggle span { display: block; width: 100%; height: 2px; margin: 5px 0; background: currentColor; }
.cs26gb-hero { position: relative; min-height: 540px; isolation: isolate; overflow: hidden; background: radial-gradient(circle at 18% 16%, rgba(21,199,104,.18), transparent 28%), linear-gradient(110deg, #030604 0%, #0b1510 58%, #06101f 100%); border-bottom: 1px solid #21432d; }
.cs26gb-hero-media { position: absolute; inset: 42px max(22px, calc((100% - var(--cs26gb-max))/2 + 22px)) 42px auto; z-index: 0; width: min(58%, 780px); height: calc(100% - 84px); object-fit: cover; object-position: center; border: 1px solid #39794e; border-radius: 22px; box-shadow: 0 26px 70px rgba(0,0,0,.62); }
.cs26gb-hero::before { position: absolute; inset: 0; z-index: 1; content: ""; pointer-events: none; background: linear-gradient(90deg, #030604 0%, #07100a 39%, rgba(7,16,10,.93) 46%, transparent 76%); }
.cs26gb-hero::after { position: absolute; inset: auto 0 0; z-index: 2; height: 5px; content: ""; background: linear-gradient(90deg, #078541, #34e77e, #ff4a4a, #078541); }
.cs26gb-hero-inner { width: min(100%, var(--cs26gb-max)); position: relative; z-index: 3; min-height: 540px; margin: auto; padding: 64px 22px; display: flex; align-items: center; }
.cs26gb-hero-copy { width: min(540px, 45%); }
.cs26gb-hero-kicker, .cs26gb-eyebrow { display: inline-flex; color: #d7ffe6; font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.cs26gb-hero-kicker { margin-bottom: 17px; padding: 7px 12px; background: #103520; border: 1px solid #247a44; border-radius: 999px; }
.cs26gb-hero h1 { margin: 0; color: #fff; font-size: clamp(40px, 5.7vw, 72px); font-weight: 950; line-height: 1.02; letter-spacing: -.045em; text-wrap: balance; }
.cs26gb-hero p { max-width: 680px; margin: 22px 0 30px; color: #c7d6cb; font-size: 17px; line-height: 1.62; }
.cs26gb-section { padding: 58px 0 84px; background: linear-gradient(180deg, #0d1510 0, #06101f 250px); }
.cs26gb-container { width: min(100%, var(--cs26gb-max)); margin: auto; padding-inline: 22px; }
.cs26gb-content-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; align-items: start; gap: 34px; }
.cs26gb-review-content { min-width: 0; padding: clamp(24px, 4vw, 52px); background: var(--cs26gb-paper); border: 1px solid var(--cs26gb-line); border-radius: var(--cs26gb-radius); border-top: 5px solid var(--cs26gb-green); box-shadow: 0 20px 52px rgba(0,0,0,.4); }
.cs26gb-review-content > p:first-of-type { margin-top: 0; font-size: 18px; color: #edf5ef; }
.cs26gb-review-content h2, .cs26gb-review-content h3 { scroll-margin-top: 98px; color: #fff; line-height: 1.2; text-wrap: balance; }
.cs26gb-review-content h2 { margin: 54px 0 18px; padding-bottom: 11px; border-bottom: 2px solid #2a7745; font-size: clamp(27px, 3vw, 38px); }
.cs26gb-review-content h3 { margin: 34px 0 10px; font-size: 22px; }
.cs26gb-review-content p, .cs26gb-review-content li { color: #d3ded6; }
.cs26gb-review-content strong { color: #fff; }
.cs26gb-review-content a:not(.cs26gb-btn) { color: #69b6ff; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.cs26gb-review-content ul, .cs26gb-review-content ol { padding-left: 24px; }
.cs26gb-review-content li { margin: 7px 0; }
.cs26gb-review-content table { display: block; width: 100%; margin: 28px 0; overflow-x: auto; border-collapse: collapse; border: 1px solid #34503c; border-radius: 12px; }
.cs26gb-review-content th, .cs26gb-review-content td { min-width: 145px; padding: 13px 15px; text-align: left; vertical-align: top; border: 1px solid #2d4434; }
.cs26gb-review-content th { color: #041008; background: #4da3ff; font-size: 13px; text-transform: uppercase; }
.cs26gb-review-content tr:nth-child(even) td { background: #111a14; }
.cs26gb-article-figure { margin: 36px 0; padding: 10px; background: #080d0a; border: 1px solid #35553f; border-radius: 15px; }
.cs26gb-article-figure img { width: 100%; max-height: 540px; object-fit: cover; border-radius: 10px; }
.cs26gb-article-figure figcaption { padding: 10px 7px 3px; color: #aebdb2; font-size: 13px; }
.cs26gb-notice { margin: 24px 0; padding: 17px 19px; color: #fff3ca; background: #30260b; border: 1px solid #80651a; border-radius: 12px; }
.cs26gb-author-box { margin-top: 56px; padding-top: 24px; display: flex; gap: 18px; align-items: center; border-top: 1px solid #304638; }
.cs26gb-author-box img { width: 112px; height: 50px; object-fit: contain; }
.cs26gb-author-box p { margin: 4px 0 0; font-size: 13px; }
.cs26gb-sidebar { position: sticky; top: 104px; display: grid; gap: 18px; }
.cs26gb-sidebar-card { padding: 22px; background: #111914; border: 1px solid #2b4032; border-radius: 15px; box-shadow: 0 14px 32px rgba(0,0,0,.28); }
.cs26gb-toc { display: grid; margin-top: 13px; max-height: 430px; overflow: auto; }
.cs26gb-toc a { padding: 9px 0; color: #c9d7cd; border-bottom: 1px solid #24352a; font-size: 13px; line-height: 1.35; text-decoration: none; }
.cs26gb-toc a:hover { color: #69b6ff; }
.cs26gb-sidebar-cta { background: linear-gradient(145deg, #10341f, #0f1812); border-color: #247745; }
.cs26gb-sidebar-cta strong { color: var(--cs26gb-gold); font-size: 24px; }
.cs26gb-sidebar-cta p { color: #c6d5ca; font-size: 13px; }
.cs26gb-sidebar-cta .cs26gb-btn { width: 100%; }
.cs26gb-site-footer { padding: 48px 22px 24px; background: #020403; border-top: 1px solid #223328; }
.cs26gb-footer-inner { width: min(100%, var(--cs26gb-max)); margin: auto; display: grid; grid-template-columns: minmax(280px, 620px) 1fr; gap: 40px; align-items: start; }
.cs26gb-footer-inner img { width: 150px; height: 58px; object-fit: contain; }
.cs26gb-footer-inner p { color: #9eb0a3; font-size: 13px; }
.cs26gb-footer-menu { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px 18px; font-size: 13px; font-weight: 800; }
.cs26gb-footer-menu a:hover { color: var(--cs26gb-green); }
.cs26gb-footer-note { width: min(100%, var(--cs26gb-max)); margin: 30px auto 0; padding-top: 20px; color: #708078; border-top: 1px solid #19251d; font-size: 12px; }
@media (max-width: 1180px) {
  .cs26gb-header-inner { flex-wrap: wrap; }
  .cs26gb-menu-toggle { display: block; margin-left: auto; }
  .cs26gb-site-nav { order: 5; display: none; flex-basis: 100%; padding: 8px 0 12px; flex-wrap: wrap; justify-content: flex-start; }
  .cs26gb-site-nav.cs26gb-is-open { display: flex; }
}
@media (max-width: 920px) {
  .cs26gb-hero { min-height: 700px; }
  .cs26gb-hero-media { inset: auto 22px 34px; width: calc(100% - 44px); height: 330px; }
  .cs26gb-hero::before { background: linear-gradient(180deg, #030604 0%, rgba(3,6,4,.96) 48%, rgba(3,6,4,.18) 78%, transparent); }
  .cs26gb-hero-inner { min-height: 700px; align-items: flex-start; padding-top: 54px; }
  .cs26gb-hero-copy { width: 100%; }
  .cs26gb-content-layout { grid-template-columns: 1fr; }
  .cs26gb-sidebar { position: static; grid-template-columns: 1fr 1fr; }
}
@media (max-width: 650px) {
  .cs26gb-header-inner { padding-inline: 14px; gap: 9px; }
  .cs26gb-logo img { width: 126px; }
  .cs26gb-header-actions { margin-left: auto; }
  .cs26gb-header-actions a { min-height: 39px; padding: 9px 12px; font-size: 11px; }
  .cs26gb-header-actions .cs26gb-btn-secondary { display: none; }
  .cs26gb-hero { min-height: 650px; }
  .cs26gb-hero-inner { min-height: 650px; padding-inline: 17px; }
  .cs26gb-hero-media { inset-inline: 12px; width: calc(100% - 24px); height: 270px; }
  .cs26gb-hero h1 { font-size: clamp(36px, 12vw, 52px); }
  .cs26gb-hero p { font-size: 15px; }
  .cs26gb-container { padding-inline: 12px; }
  .cs26gb-review-content { padding: 23px 17px; border-radius: 13px; }
  .cs26gb-sidebar { grid-template-columns: 1fr; }
  .cs26gb-footer-inner { grid-template-columns: 1fr; }
  .cs26gb-footer-menu { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; } }

/* Casper Spins visual system: clean white surfaces, royal blue and hot pink. */
:root {
  --cs26gb-green: #4f73e8;
  --cs26gb-gold: #ff1f59;
  --cs26gb-ink: #f5f6fb;
  --cs26gb-paper: #fff;
  --cs26gb-text: #202744;
  --cs26gb-muted: #69718c;
  --cs26gb-line: #d9def0;
  --cs26gb-radius: 4px;
}
html, body { background: #f5f6fb; color: #202744; }
.cs26gb-site-header { background: rgba(255,255,255,.98); border-color: #dfe3f1; box-shadow: 0 3px 14px rgba(31,48,105,.08); }
.cs26gb-site-nav a { color: #4b536f; border-radius: 3px; }
.cs26gb-site-nav a:hover, .cs26gb-site-nav a:focus-visible { color: #315bd8; background: #f0f3ff; border-color: #b9c8f6; }
.cs26gb-btn, .cs26gb-header-actions a { color: #fff; background: #ff1f59; border: 1px solid #ff1f59; border-radius: 999px; box-shadow: none; }
.cs26gb-btn:hover, .cs26gb-header-actions a:hover { background: #e9154b; filter: none; }
.cs26gb-btn-secondary { color: #315bd8 !important; background: #fff !important; border-color: #4f73e8 !important; }
.cs26gb-menu-toggle { color: #315bd8; background: #fff; border-color: #9eb1ed; border-radius: 3px; }
.cs26gb-hero { min-height: 480px; background: #fff; border-color: #dfe3f1; }
.cs26gb-hero-media { inset: 34px max(22px, calc((100% - var(--cs26gb-max))/2 + 22px)) 34px auto; width: min(59%, 780px); height: calc(100% - 68px); object-position: center; border: 1px solid #ccd5f2; border-radius: 4px; box-shadow: 0 12px 30px rgba(45,69,145,.14); }
.cs26gb-hero::before { background: linear-gradient(90deg, #fff 0%, #fff 39%, rgba(255,255,255,.94) 48%, rgba(255,255,255,0) 73%); }
.cs26gb-hero::after { height: 4px; background: linear-gradient(90deg, #4f73e8 0 70%, #ff1f59 70%); }
.cs26gb-hero-inner { min-height: 480px; }
.cs26gb-hero h1 { color: #20316d; }
.cs26gb-hero p { color: #59627f; }
.cs26gb-section { background: #f5f6fb; }
.cs26gb-review-content { background: #fff; border-color: #d9def0; border-top: 4px solid #4f73e8; border-radius: 4px; box-shadow: 0 10px 28px rgba(34,52,112,.08); }
.cs26gb-review-content > p:first-of-type { color: #303957; }
.cs26gb-review-content h2, .cs26gb-review-content h3 { color: #20316d; }
.cs26gb-review-content h2 { border-color: #d9def0; }
.cs26gb-review-content p, .cs26gb-review-content li { color: #434c68; }
.cs26gb-review-content strong { color: #202744; }
.cs26gb-review-content a:not(.cs26gb-btn) { color: #315bd8; }
.cs26gb-review-content table { border-color: #ccd4eb; border-radius: 3px; }
.cs26gb-review-content th, .cs26gb-review-content td { border-color: #d7ddef; }
.cs26gb-review-content th { color: #fff; background: #4f73e8; }
.cs26gb-review-content tr:nth-child(even) td { background: #f5f7fd; }
.cs26gb-article-figure { background: #fff; border-color: #ccd5ee; border-radius: 4px; }
.cs26gb-article-figure img { border-radius: 2px; }
.cs26gb-article-figure figcaption { color: #68718b; }
.cs26gb-notice { color: #7a233d; background: #fff1f5; border-color: #ffacc3; border-radius: 3px; }
.cs26gb-author-box { border-color: #d9def0; }
.cs26gb-sidebar-card { background: #fff; border-color: #d9def0; border-radius: 4px; box-shadow: 0 8px 22px rgba(34,52,112,.07); }
.cs26gb-eyebrow { color: #315bd8; }
.cs26gb-toc a { color: #4c5571; border-color: #e3e6f1; }
.cs26gb-toc a:hover { color: #315bd8; }
.cs26gb-sidebar-cta { background: #eef2ff; border-color: #9eb1ed; }
.cs26gb-sidebar-cta strong { color: #ff1f59; }
.cs26gb-sidebar-cta p { color: #59627f; }
.cs26gb-site-footer { background: #1c285e; border-color: #34457f; }
.cs26gb-footer-inner p, .cs26gb-footer-menu, .cs26gb-footer-note { color: #d8def5; }
.cs26gb-footer-note { border-color: #40508a; }
@media (max-width: 920px) {
  .cs26gb-hero { min-height: 700px; }
  .cs26gb-hero::before { background: linear-gradient(180deg, #fff 0%, #fff 48%, rgba(255,255,255,.92) 61%, rgba(255,255,255,0) 79%); }
  .cs26gb-hero-inner { min-height: 700px; }
}
@media (max-width: 650px) {
  .cs26gb-review-content { border-radius: 3px; }
}
