﻿:root {
      --bg: #07111f;
      --bg-2: #0b1728;
      --panel: #101d30;
      --panel-2: #14233a;
      --line: rgba(255,255,255,.12);
      --line-strong: rgba(255,255,255,.2);
      --text: #eef5ff;
      --muted: #a7b6c9;
      --soft: #d6e2f3;
      --blue: #27a7ff;
      --cyan: #3ce7ff;
      --gold: #f6c85f;
      --green: #33d69f;
      --red: #ff6b7a;
      --shadow: 0 24px 70px rgba(0,0,0,.35);
      --radius: 8px;
      --max: 1180px;
      --content: 760px;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      background:
        radial-gradient(circle at 20% 0%, rgba(39,167,255,.18), transparent 34rem),
        radial-gradient(circle at 100% 20%, rgba(246,200,95,.12), transparent 28rem),
        linear-gradient(180deg, #06101d 0%, var(--bg) 44%, #050912 100%);
      color: var(--text);
      line-height: 1.65;
      text-rendering: optimizeLegibility;
    }

    a { color: inherit; text-decoration: none; }
    img, svg { max-width: 100%; display: block; }
    table { border-collapse: collapse; width: 100%; }
    button, input { font: inherit; }
    :focus-visible { outline: 3px solid var(--cyan); outline-offset: 3px; }

    .skip-link {
      position: fixed;
      left: 1rem;
      top: .75rem;
      z-index: 1000;
      transform: translateY(-160%);
      background: var(--gold);
      color: #161100;
      padding: .65rem 1rem;
      border-radius: var(--radius);
      font-weight: 800;
    }
    .skip-link:focus { transform: translateY(0); }
    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    .site-header {
      position: sticky;
      top: 0;
      z-index: 50;
      background: rgba(5,12,22,.82);
      border-bottom: 1px solid var(--line);
      backdrop-filter: blur(18px);
    }
    .header-inner {
      max-width: var(--max);
      margin: 0 auto;
      min-height: 72px;
      padding: 0 20px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
    }
    .brand {
      display: inline-flex;
      align-items: center;
      gap: .7rem;
      font-weight: 900;
      letter-spacing: 0;
    }
    .brand-mark {
      width: 40px;
      height: 40px;
      border: 1px solid rgba(246,200,95,.55);
      border-radius: 8px;
      display: grid;
      place-items: center;
      background: linear-gradient(135deg, rgba(39,167,255,.28), rgba(246,200,95,.2));
      box-shadow: inset 0 0 24px rgba(60,231,255,.16);
      overflow: hidden;
      padding: 5px;
    }
    .brand-mark img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
    .brand span:last-child { font-size: 1.05rem; }
    .desktop-nav {
      display: none;
      align-items: center;
      gap: 1.2rem;
      color: var(--muted);
      font-size: .92rem;
      font-weight: 700;
    }
    .desktop-nav a:hover { color: var(--text); }
    .header-actions { display: flex; align-items: center; gap: .7rem; }
    .menu-toggle {
      width: 44px;
      height: 44px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      color: var(--text);
      background: rgba(255,255,255,.05);
      cursor: pointer;
    }
    .menu-toggle span {
      display: block;
      width: 18px;
      height: 2px;
      background: currentColor;
      margin: 4px auto;
    }
    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 44px;
      padding: .75rem 1rem;
      border: 1px solid transparent;
      border-radius: var(--radius);
      font-weight: 900;
      line-height: 1.1;
      cursor: pointer;
      transition: transform .18s ease, border-color .18s ease, background .18s ease;
      white-space: nowrap;
    }
    .btn:hover { transform: translateY(-1px); }
    .btn-primary {
      background: linear-gradient(135deg, var(--gold), #ffea9a);
      color: #151000;
      box-shadow: 0 14px 36px rgba(246,200,95,.24);
    }
    .btn-ghost {
      background: rgba(255,255,255,.06);
      border-color: var(--line);
      color: var(--text);
    }
    .btn-blue {
      background: linear-gradient(135deg, var(--blue), var(--cyan));
      color: #001525;
      box-shadow: 0 14px 36px rgba(39,167,255,.24);
    }
    .mobile-panel {
      display: none;
      border-top: 1px solid var(--line);
      padding: 10px 20px 18px;
      background: #07111f;
    }
    .mobile-panel[data-open="true"] { display: block; }
    .mobile-panel a {
      display: block;
      padding: 12px 0;
      color: var(--soft);
      font-weight: 800;
      border-bottom: 1px solid var(--line);
    }

    .hero {
      max-width: var(--max);
      margin: 0 auto;
      padding: 64px 20px 28px;
      text-align: center;
    }
    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: .45rem;
      width: fit-content;
      border: 1px solid rgba(246,200,95,.42);
      border-radius: 999px;
      padding: .38rem .7rem;
      margin-inline: auto;
      color: #ffe9a5;
      background: rgba(246,200,95,.08);
      font-size: .78rem;
      font-weight: 900;
      text-transform: uppercase;
    }
    h1 {
      margin: .9rem auto 1rem;
      max-width: 1120px;
      font-size: clamp(2.15rem, 7vw, 5.6rem);
      line-height: .96;
      letter-spacing: 0;
      text-wrap: balance;
    }
    .lead {
      max-width: 920px;
      margin-inline: auto;
      color: var(--soft);
      font-size: clamp(1.05rem, 2vw, 1.28rem);
      text-wrap: pretty;
    }
    .meta-row {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      gap: .7rem 1rem;
      color: var(--muted);
      font-size: .92rem;
    }
    .author {
      display: inline-flex;
      align-items: center;
      gap: .65rem;
    }
    .author a {
      display: inline-flex;
      align-items: center;
      gap: .65rem;
      color: inherit;
      text-decoration: none;
    }
    .author a:hover,
    .author a:focus {
      text-decoration: underline;
    }
    .avatar {
      width: 38px;
      height: 38px;
      border-radius: 50%;
      object-fit: cover;
      border: 1px solid rgba(255,255,255,.22);
      background: rgba(255,255,255,.08);
    }
    .trust-strip {
      display: grid;
      grid-template-columns: repeat(2, minmax(0,1fr));
      gap: 10px;
      margin-top: 20px;
    }
    .trust-item {
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: rgba(255,255,255,.05);
      padding: .85rem;
    }
    .trust-item strong {
      display: block;
      color: var(--text);
      font-size: 1.05rem;
    }
    .trust-item span {
      color: var(--muted);
      font-size: .82rem;
      font-weight: 700;
    }

    .shell {
      max-width: var(--max);
      margin: 0 auto;
      padding: 20px;
    }
    .section-title {
      margin: 0 0 1rem;
      font-size: clamp(1.55rem, 3vw, 2.4rem);
      line-height: 1.1;
    }
    .section-intro {
      max-width: 780px;
      color: var(--muted);
      margin: 0 0 1.2rem;
    }

    .comparison {
      margin-top: 16px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: rgba(16,29,48,.78);
      overflow: hidden;
      box-shadow: var(--shadow);
    }
    .comparison-head {
      padding: 18px;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 12px;
      border-bottom: 1px solid var(--line);
    }
    .comparison-head p { margin: 0; color: var(--muted); }
    .table-wrap { overflow-x: auto; }
    .casino-table { min-width: 880px; }
    .casino-table th {
      text-align: left;
      padding: 14px 16px;
      color: var(--muted);
      background: rgba(255,255,255,.04);
      font-size: .82rem;
      text-transform: uppercase;
    }
    .casino-table td {
      padding: 16px;
      border-top: 1px solid var(--line);
      vertical-align: middle;
    }
    .casino-logo {
      display: flex;
      align-items: center;
      gap: .75rem;
      min-width: 190px;
    }
    .brand-logo {
      width: 88px;
      height: 38px;
      object-fit: contain;
      padding: 5px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: rgba(255,255,255,.07);
    }
    .review-heading {
      display: flex;
      align-items: center;
      gap: 12px;
      min-width: min(100%, 280px);
    }
    .review-heading .brand-logo {
      width: 104px;
      height: 46px;
      flex: 0 0 auto;
    }
    .rank {
      width: 36px;
      height: 36px;
      border-radius: 8px;
      display: grid;
      place-items: center;
      background: rgba(246,200,95,.16);
      color: #ffe08a;
      border: 1px solid rgba(246,200,95,.35);
      font-weight: 900;
    }
    .casino-logo strong { display: block; }
    .tag {
      display: inline-flex;
      align-items: center;
      min-height: 26px;
      padding: .2rem .55rem;
      border-radius: 999px;
      background: rgba(51,214,159,.12);
      color: #91ffd6;
      font-weight: 900;
      font-size: .75rem;
    }
    .stars { color: var(--gold); white-space: nowrap; font-weight: 900; }
    .pros {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
    }
    .pros span {
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: .18rem .5rem;
      color: var(--soft);
      background: rgba(255,255,255,.05);
      font-size: .78rem;
      font-weight: 800;
    }

    .content-grid {
      display: grid;
      justify-items: stretch;
      margin-top: 30px;
    }

    article {
      width: 100%;
      max-width: none;
      min-width: 0;
    }
    article section {
      scroll-margin-top: 92px;
      margin-bottom: 44px;
    }
    article h2 {
      margin: 0 0 1rem;
      font-size: clamp(1.65rem, 4vw, 2.45rem);
      line-height: 1.12;
      letter-spacing: 0;
    }
    article h3 {
      margin: 1.8rem 0 .65rem;
      font-size: 1.32rem;
      line-height: 1.25;
    }
    article h4 {
      margin: 1.25rem 0 .4rem;
      font-size: 1.05rem;
      color: #f7dc8c;
    }
    article p, article li {
      color: var(--soft);
      font-size: 1.04rem;
    }
    article p { margin: 0 0 1.1rem; }
    article ul, article ol { padding-left: 1.2rem; }
    .callout,
    blockquote {
      margin: 1.35rem 0;
      border: 1px solid rgba(246,200,95,.28);
      border-left: 4px solid var(--gold);
      border-radius: var(--radius);
      padding: 1rem;
      background: rgba(246,200,95,.08);
      color: #fff3c7;
      font-weight: 700;
    }
    .data-table {
      overflow-x: auto;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      margin: 1.3rem 0;
      background: rgba(16,29,48,.6);
    }
    .data-table table { min-width: 660px; }
    .data-table th,
    .data-table td {
      padding: 12px;
      border-bottom: 1px solid var(--line);
      text-align: left;
      color: var(--soft);
    }
    .data-table th {
      background: rgba(255,255,255,.06);
      color: var(--text);
      font-size: .86rem;
    }
    .review-card,
    .summary-box,
    .step-card {
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025));
      padding: 18px;
      margin: 18px 0;
    }
    .review-top {
      display: flex;
      gap: 12px;
      align-items: flex-start;
      justify-content: space-between;
      flex-wrap: wrap;
    }
    .review-top h3 { margin: 0; }
    .review-image {
      display: block;
      width: 100%;
      aspect-ratio: 16 / 7;
      object-fit: cover;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      margin: 1rem 0;
      background: rgba(255,255,255,.06);
    }
    .bonus {
      color: #ffe08a;
      font-weight: 900;
      font-size: 1.02rem;
    }
    .mini-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin: .8rem 0;
    }
    .mini-meta span {
      padding: .28rem .55rem;
      border: 1px solid var(--line);
      border-radius: 999px;
      color: var(--muted);
      font-size: .78rem;
      font-weight: 850;
    }
    .snippet {
      border: 1px solid rgba(39,167,255,.3);
      border-radius: var(--radius);
      background: rgba(39,167,255,.08);
      padding: 16px;
      margin: 20px 0;
    }
    .snippet strong { color: var(--cyan); }
    .steps {
      display: grid;
      gap: 12px;
      margin-top: 18px;
    }
    .step-card {
      display: grid;
      grid-template-columns: 44px 1fr;
      gap: 12px;
      margin: 0;
    }
    .step-num {
      width: 44px;
      height: 44px;
      border-radius: 8px;
      display: grid;
      place-items: center;
      background: rgba(39,167,255,.16);
      color: var(--cyan);
      font-weight: 900;
    }
    .step-card h4 { margin-top: 0; }

    .faq {
      display: grid;
      gap: 10px;
    }
    .faq-item {
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: rgba(16,29,48,.7);
      overflow: hidden;
    }
    .faq-question {
      width: 100%;
      text-align: left;
      color: var(--text);
      background: transparent;
      border: 0;
      padding: 16px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      cursor: pointer;
      font-weight: 900;
    }
    .faq-question::after {
      content: "+";
      color: var(--gold);
      font-size: 1.35rem;
      line-height: 1;
    }
    .faq-question[aria-expanded="true"]::after { content: "-"; }
    .faq-answer {
      display: none;
      padding: 0 16px 16px;
      color: var(--soft);
    }
    .faq-answer[data-open="true"] { display: block; }

    .rg-banner {
      border: 1px solid rgba(51,214,159,.28);
      border-radius: var(--radius);
      background: linear-gradient(135deg, rgba(51,214,159,.12), rgba(39,167,255,.08));
      padding: 20px;
      margin: 36px 0;
    }
    .rg-banner h2 { margin-top: 0; }
    .rg-links {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    .rg-links a {
      border: 1px solid var(--line);
      border-radius: var(--radius);
      padding: .55rem .75rem;
      color: var(--text);
      font-weight: 850;
      background: rgba(0,0,0,.16);
    }

    .author-box {
      display: grid;
      grid-template-columns: 54px 1fr;
      gap: 14px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: rgba(255,255,255,.04);
      padding: 16px;
    }
    .author-box p { margin: 0; color: var(--muted); }
    .author-box .avatar {
      width: 54px;
      height: 54px;
    }

    .site-footer {
      margin-top: 44px;
      border-top: 1px solid var(--line);
      background: #050912;
    }
    .footer-inner {
      max-width: var(--max);
      margin: 0 auto;
      padding: 36px 20px 86px;
      display: grid;
      gap: 22px;
    }
    .footer-grid {
      display: grid;
      gap: 18px;
    }
    .footer-inner h2,
    .footer-inner h3 { margin: 0 0 .6rem; }
    .footer-inner p,
    .footer-inner a {
      color: var(--muted);
      font-size: .94rem;
    }
    .footer-links {
      display: grid;
      gap: .45rem;
    }
    .footer-badges {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 12px;
    }
    .footer-badges img {
      width: auto;
      height: 44px;
      max-width: 170px;
      object-fit: contain;
      border-radius: 6px;
      background: rgba(255,255,255,.08);
      padding: 6px;
    }
    address { font-style: normal; color: var(--muted); }

    .mobile-cta {
      position: fixed;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 60;
      border-top: 1px solid var(--line);
      background: rgba(5,12,22,.92);
      backdrop-filter: blur(18px);
      padding: 10px 14px;
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 12px;
      align-items: center;
    }
    .mobile-cta strong { display: block; font-size: .92rem; }
    .mobile-cta span { color: var(--muted); font-size: .78rem; }

    @media (min-width: 720px) {
      .trust-strip { grid-template-columns: repeat(4, 1fr); }
      .footer-grid { grid-template-columns: 1.3fr repeat(3, 1fr); }
    }

    @media (min-width: 1040px) {
      .desktop-nav { display: flex; }
      .menu-toggle { display: none; }
      .mobile-cta { display: none; }
      .footer-inner { padding-bottom: 42px; }
    }

    @media (max-width: 560px) {
      .header-actions .btn { display: none; }
      .comparison {
        overflow: visible;
      }
      .comparison-head {
        padding: 16px;
      }
      .comparison-head .btn {
        width: 100%;
      }
      .table-wrap {
        overflow: visible;
        padding: 0 12px 14px;
      }
      .casino-table {
        min-width: 0;
        display: block;
      }
      .casino-table thead {
        display: none;
      }
      .casino-table tbody {
        display: grid;
        gap: 12px;
      }
      .casino-table tr {
        display: grid;
        gap: 10px;
        padding: 14px;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        background:
          linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.03)),
          var(--panel);
        box-shadow: 0 14px 34px rgba(0,0,0,.22);
      }
      .casino-table td {
        display: block;
        padding: 0;
        border: 0;
      }
      .casino-table td:nth-child(2)::before {
        display: block;
        margin-bottom: 2px;
        color: var(--muted);
        font-size: .72rem;
        font-weight: 900;
        text-transform: uppercase;
      }
      .casino-table td:nth-child(2)::before { content: "Bonus"; }
      .casino-table td:nth-child(3),
      .casino-table td:nth-child(4),
      .casino-table td:nth-child(5) {
        display: none;
      }
      .casino-table td:nth-child(6) .btn {
        width: 100%;
        margin-top: 2px;
      }
      .casino-logo {
        min-width: 0;
        justify-content: center;
        align-items: center;
      }
      .casino-logo .rank {
        display: none;
      }
      .casino-logo .brand-logo {
        width: 128px;
        height: 52px;
        flex: 0 0 auto;
      }
      .casino-logo div {
        display: none;
      }
      .casino-table td:nth-child(2) {
        text-align: center;
      }
      .step-card { grid-template-columns: 1fr; }
      .author-box { grid-template-columns: 1fr; }
    }

    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
      }
    }

/* Shared secondary page styles */
:root{--bg:#07111f;--panel:#101d30;--line:rgba(255,255,255,.14);--text:#eef5ff;--muted:#a7b6c9;--soft:#d6e2f3;--blue:#27a7ff;--gold:#f6c85f;--green:#33d69f;--radius:8px;--max:1120px}
    *{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 18% 0%,rgba(39,167,255,.18),transparent 34rem),linear-gradient(180deg,#06101d,var(--bg));color:var(--text);line-height:1.65}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid #3ce7ff;outline-offset:3px}.site-header{position:sticky;top:0;z-index:10;background:rgba(5,12,22,.86);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.header-inner,.shell{max-width:var(--max);margin:0 auto;padding:0 20px}.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:.7rem;font-weight:900}.brand-mark{width:40px;height:40px;border:1px solid rgba(246,200,95,.55);border-radius:8px;display:grid;place-items:center;background:rgba(255,255,255,.06);padding:5px}.brand-mark img{width:100%;height:100%;object-fit:contain}.nav{display:flex;gap:1rem;color:var(--muted);font-weight:800}.nav a:hover{color:var(--text)}.hero{padding:64px 20px 30px;text-align:center}.eyebrow{display:inline-flex;border:1px solid rgba(246,200,95,.42);border-radius:999px;padding:.38rem .7rem;color:#ffe9a5;background:rgba(246,200,95,.08);font-size:.78rem;font-weight:900;text-transform:uppercase}h1{max-width:920px;margin:.9rem auto 1rem;font-size:clamp(2.3rem,6vw,4.7rem);line-height:1;text-wrap:balance}.lead{max-width:820px;margin:0 auto;color:var(--soft);font-size:1.15rem}.grid{display:grid;gap:18px;margin:28px 0 50px}.card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));padding:22px}.card h2{margin:0 0 .7rem;font-size:1.55rem}.card p,.card li{color:var(--soft)}.metrics{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.metric strong{display:block;color:var(--gold);font-size:2rem;line-height:1}.steps{counter-reset:item}.steps li{margin:.65rem 0}.footer{border-top:1px solid var(--line);background:#050912;padding:28px 20px;color:var(--muted)}.footer-inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between}@media(max-width:640px){.nav{display:none}.hero{text-align:left}.eyebrow{margin:0}.lead{margin:0}}

/* Author archive page styles */
    :root{--bg:#07111f;--panel:#101d30;--line:rgba(255,255,255,.14);--text:#eef5ff;--muted:#a7b6c9;--soft:#d6e2f3;--blue:#27a7ff;--gold:#f6c85f;--green:#33d69f;--radius:8px;--max:1120px}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 80% 0%,rgba(246,200,95,.13),transparent 30rem),linear-gradient(180deg,#06101d,var(--bg));color:var(--text);line-height:1.65}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:10;background:rgba(5,12,22,.86);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.header-inner,.shell{max-width:var(--max);margin:0 auto;padding:0 20px}.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:.7rem;font-weight:900}.brand-mark{width:40px;height:40px;border:1px solid rgba(246,200,95,.55);border-radius:8px;display:grid;place-items:center;background:rgba(255,255,255,.06);padding:5px}.brand-mark img{width:100%;height:100%;object-fit:contain}.nav{display:flex;gap:1rem;color:var(--muted);font-weight:800}.nav a:hover{color:var(--text)}.author-hero{max-width:var(--max);margin:0 auto;padding:64px 20px 34px;display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:center}.avatar{width:120px;height:120px;border-radius:50%;object-fit:cover;border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 50px rgba(0,0,0,.32)}.eyebrow{display:inline-flex;border:1px solid rgba(246,200,95,.42);border-radius:999px;padding:.38rem .7rem;color:#ffe9a5;background:rgba(246,200,95,.08);font-size:.78rem;font-weight:900;text-transform:uppercase}h1{margin:.75rem 0 .5rem;font-size:clamp(2.4rem,6vw,4.8rem);line-height:1}.bio{max-width:760px;color:var(--soft);font-size:1.12rem}.meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.meta span{border:1px solid var(--line);border-radius:999px;padding:.3rem .65rem;color:var(--muted);font-weight:850;font-size:.82rem}.grid{display:grid;gap:16px;margin:24px 0 50px}.card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));padding:20px}.card h2,.card h3{margin:0 0 .6rem}.card p{color:var(--soft)}.post-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.post-card{min-height:220px;display:flex;flex-direction:column;justify-content:space-between}.tag{width:max-content;border-radius:999px;background:rgba(51,214,159,.12);color:#91ffd6;padding:.2rem .55rem;font-weight:900;font-size:.75rem}.btn{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:42px;border-radius:8px;background:linear-gradient(135deg,var(--gold),#ffea9a);color:#151000;padding:.7rem .9rem;font-weight:900}.footer{border-top:1px solid var(--line);background:#050912;padding:28px 20px;color:var(--muted)}.footer-inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between}@media(max-width:680px){.nav{display:none}.author-hero{grid-template-columns:1fr}.avatar{width:96px;height:96px}}

/* Universal injected footer/header corrections */
.site-footer {
  margin-top: 44px;
  border-top: 1px solid var(--line);
  background: #050912;
  padding: 0;
}
.site-footer .footer-inner {
  max-width: var(--max);
  margin: 0 auto;
  padding: 36px 20px 86px;
  display: grid;
  gap: 22px;
  justify-content: stretch;
}
.site-footer .footer-grid {
  display: grid;
  gap: 18px;
}
.site-footer h2,
.site-footer h3 {
  margin: 0 0 .6rem;
}
.site-footer p,
.site-footer a,
.site-footer address {
  color: var(--muted);
  font-size: .94rem;
}
.site-footer .footer-links {
  display: grid;
  gap: .45rem;
}

@media (min-width: 720px) {
  .site-footer .footer-grid {
    grid-template-columns: 1.3fr repeat(3, 1fr);
  }
}

@media (min-width: 1040px) {
  .site-footer .footer-inner {
    padding-bottom: 42px;
  }
}

:root {
  --max: 1180px;
}

.desktop-nav {
  display: none;
}

.hero h1 {
  margin: .9rem auto 1rem;
  max-width: 1120px;
  font-size: clamp(2.15rem, 7vw, 5.6rem);
  line-height: .96;
  text-wrap: balance;
}

.meta-row .avatar {
  width: 38px;
  height: 38px;
}

.author-box .avatar {
  width: 54px;
  height: 54px;
}

.author-hero .avatar {
  width: 120px;
  height: 120px;
}

@media (min-width: 1040px) {
  .desktop-nav {
    display: flex;
  }
}

@media (max-width: 680px) {
  .author-hero .avatar {
    width: 96px;
    height: 96px;
  }
}

/* About page */
.about-page {
  padding-top: 8px;
  padding-bottom: 34px;
}

.about-content {
  align-items: start;
}

.about-content .card {
  width: 100%;
}

.about-content h2 {
  margin: 0 0 .75rem;
  font-size: clamp(1.45rem, 3vw, 2.1rem);
  line-height: 1.15;
}

.about-content p,
.about-content li {
  color: var(--soft);
  font-size: 1.04rem;
}

.about-content ul,
.about-content ol {
  padding-left: 1.2rem;
}

.about-content li {
  margin: .55rem 0;
}

.about-content strong {
  color: var(--text);
}

.about-page .metrics {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

/* Legal and contact pages */
.legal-page {
  padding-top: 8px;
  padding-bottom: 42px;
}

.legal-card {
  max-width: 900px;
  margin: 0 auto;
}

.legal-card h2 {
  margin: 1.4rem 0 .55rem;
  font-size: clamp(1.25rem, 2.4vw, 1.8rem);
  line-height: 1.2;
}

.legal-card h2:first-child {
  margin-top: 0;
}

.legal-card p,
.legal-card li {
  color: var(--soft);
  font-size: 1.04rem;
}

.legal-card ul {
  padding-left: 1.2rem;
}

.legal-card li {
  margin: .55rem 0;
}

.legal-card a:not(.btn) {
  color: #91dcff;
  font-weight: 800;
}
