/* The hub's secondary destinations share one restrained visual language. */
body.hub-editorial :is(.catalog-page,.secondary-page){max-width:none;width:100%;margin-inline:auto;padding:0 0 70px;min-width:0}
body.hub-editorial :is(.catalog-page,.secondary-page) :is(h1,h2,h3){text-wrap:balance}
body.hub-editorial :is(.catalog-page,.secondary-page) .eyebrow{color:#e9c888;letter-spacing:.19em;font-weight:750}
body.hub-editorial :is(.catalog-page,.secondary-page) .section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}
body.hub-editorial :is(.catalog-page,.secondary-page) .section-heading h2{font:750 clamp(25px,2.7vw,38px)/1.13 Inter,"Segoe UI",sans-serif;letter-spacing:-.04em;margin:8px 0 0;color:#faf6ed}
body.hub-editorial :is(.catalog-page,.secondary-page) .section-heading :is(p,span){color:#bcbeb8;font-size:13px;line-height:1.6}
body.hub-editorial :is(.catalog-page,.secondary-page) .button.primary{background:#e7c383;border-color:#e7c383;color:#18211e!important;font-weight:750;border-radius:9px;padding:11px 18px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
body.hub-editorial :is(.catalog-page,.secondary-page) .button.primary:hover{background:#f1d59c;transform:translateY(-1px)}
body.hub-editorial :is(.catalog-page,.secondary-page) .button.subtle{background:#26312f;border:1px solid #53615c;border-radius:9px;color:#f3e4c9}
body.hub-editorial :is(.catalog-page,.secondary-page) :is(a,button,select,input):focus-visible{outline:2px solid #f7d895;outline-offset:3px}

/* Hero: a clear introduction beside the same cinematic salon artwork used on the hub. */
body.hub-editorial .secondary-hero,
body.hub-editorial .catalog-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:26px;min-height:350px;margin:0 0 44px;padding:38px max(32px,calc((100vw - 1280px)/2));border:1px solid #3b4742;border-radius:0 0 22px 22px;background:radial-gradient(circle at 88% 18%,#52614f33,transparent 44%),linear-gradient(120deg,#1d2a26,#1b2221 58%,#252722);overflow:hidden;color:#fff;box-shadow:0 22px 50px #00000018}
body.hub-editorial .secondary-hero::after,
body.hub-editorial .catalog-hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,#ba9b61,transparent);pointer-events:none}
body.hub-editorial .secondary-hero-copy{position:relative;z-index:2;max-width:680px}
body.hub-editorial .secondary-hero .eyebrow,
body.hub-editorial .catalog-hero .eyebrow{margin:0 0 18px;font-size:10px}
body.hub-editorial .secondary-hero h1,
body.hub-editorial .catalog-hero h1,
body.hub-editorial .tournament-hero h1{font:760 clamp(39px,4.2vw,65px)/1.02 Inter,"Segoe UI",sans-serif;letter-spacing:-.055em;color:#fff;margin:0 0 20px}
body.hub-editorial .secondary-hero h1 em,
body.hub-editorial .catalog-hero h1 em{font-style:normal;color:#eacb92}
body.hub-editorial .secondary-hero-copy>p:not(.eyebrow):not(.chess-eyebrow),
body.hub-editorial .catalog-hero>div:first-child>p:last-child{font-size:15px;line-height:1.75;color:#d5d7cf;max-width:570px;margin:0 0 24px}
body.hub-editorial .secondary-hero-art{height:280px;min-width:0;position:relative;align-self:center}
body.hub-editorial .secondary-hero-art img{display:block;width:100%;height:100%;object-fit:cover;border-radius:15px;border:1px solid #d7bd8555;box-shadow:0 18px 36px #0007}
body.hub-editorial .secondary-hero-art.thumbnail-hero-art{width:min(100%,450px);height:auto;aspect-ratio:391/174;justify-self:center}
body.hub-editorial .secondary-hero-art::after{content:"";position:absolute;inset:20% 0 0;border-radius:15px;background:linear-gradient(0deg,#090d0ce6,transparent 52%);pointer-events:none}
body.hub-editorial .secondary-hero-art span{position:absolute;bottom:18px;left:20px;right:20px;color:#f7e8c8;font-size:12px;letter-spacing:.02em;z-index:1}

/* Catalogue */
body.hub-editorial .catalog-hero{min-height:375px}
body.hub-editorial .catalog-hero-art{height:280px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:0;overflow:visible}
body.hub-editorial .catalog-hero-art img{width:145%;height:225px;object-fit:cover;border:3px solid #d4b475;border-radius:12px;box-shadow:0 12px 26px #0009;position:relative}
body.hub-editorial .catalog-hero-art img:nth-child(1){transform:rotate(-10deg) translateX(20px);z-index:1}
body.hub-editorial .catalog-hero-art img:nth-child(2){height:270px;transform:rotate(3deg) translateX(-3px);z-index:3}
body.hub-editorial .catalog-hero-art img:nth-child(3){transform:rotate(10deg) translateX(-30px);z-index:2}
body.hub-editorial .catalog-page .collection{margin:0}
body.hub-editorial .catalog-page .section-heading{margin-bottom:25px}
body.hub-editorial .catalog-page .catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;border:1px solid #35423e;background:#1a2220;border-radius:16px 16px 0 0}
body.hub-editorial .catalog-page .filters{gap:8px;display:flex;flex-wrap:wrap}
body.hub-editorial .catalog-page .chip{border-radius:100px;padding:9px 14px;min-height:40px;font-size:12px}
body.hub-editorial .catalog-page .search{border-radius:9px;min-width:220px;max-width:260px;min-height:42px}
body.hub-editorial .catalog-page .search input{width:100%;min-width:0}
body.hub-editorial .catalog-page .geography-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:0;padding:15px 20px;border:1px solid #35423e;border-top:0;background:#1a2220;border-radius:0 0 16px 16px}
body.hub-editorial .catalog-page .geography-note{margin:14px 4px 26px;line-height:1.5}
body.hub-editorial .catalog-page .game-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.hub-editorial .catalog-page .game-card{background:#1d2623;border:1px solid #3b4843;border-radius:14px;overflow:hidden}
body.hub-editorial .catalog-page .game-card:hover{border-color:#d8bb82;box-shadow:0 15px 36px #0004}
body.hub-editorial .catalog-page .card-image{display:block;height:auto;aspect-ratio:1.55;background:#24312e}
body.hub-editorial .catalog-page .card-image::after{content:"";position:absolute;inset:28% 0 0;background:linear-gradient(0deg,#0b1211ab,transparent 75%);pointer-events:none}
body.hub-editorial .catalog-page .card-image>img.hub-card-scene{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}
body.hub-editorial .catalog-page .game-card:hover .card-image>img.hub-card-scene{transform:scale(1.045)}
body.hub-editorial .catalog-page .hub-card-logo{position:absolute;right:10px;bottom:8px;z-index:1;width:54px;height:54px;padding:0;filter:drop-shadow(0 4px 5px #0009)}
body.hub-editorial .catalog-page .card-image .hub-card-logo img{width:100%;height:100%;max-height:none;object-fit:contain}
body.hub-editorial .catalog-page .card-play{z-index:1;background:#16221dd9;border:1px solid #e4c489aa;color:#f5e2bc}
body.hub-editorial .catalog-page .card-copy{padding:17px 17px 19px}
body.hub-editorial .catalog-page .card-copy h3{font:700 18px/1.25 Inter,"Segoe UI",sans-serif;margin:7px 0 10px;color:#fff}
body.hub-editorial .catalog-page .card-copy>p{font-size:12px;line-height:1.5;color:#c3c7bd}
body.hub-editorial .catalog-page .card-meta{border-top:1px solid #ffffff1b;padding-top:11px;margin-top:12px;color:#ded1b9}
body.hub-editorial .catalog-page .card-meta span:last-child{background:#344239;border:1px solid #65775b;color:#f2e2bb;border-radius:6px;padding:4px 8px}
body.hub-editorial .catalog-page .discovery-banner{margin:42px 0 0}
body.hub-editorial .catalog-page .catalog-duration{margin:14px 0}

/* Learning */
body.hub-editorial .learn-index-page .learn-intro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;border:0;margin:0 0 58px}
body.hub-editorial .learn-index-page .learn-intro>div{min-width:0;padding:23px;border:1px solid #394741;border-radius:14px;background:#1d2724}
body.hub-editorial .learn-index-page .learn-intro span{display:inline-grid;place-items:center;width:38px;height:38px;padding:0;background:#344238;color:#f5dbad;border-radius:10px;font-size:13px;font-weight:800}
body.hub-editorial .learn-index-page .learn-intro h3{font:700 18px/1.3 Inter,"Segoe UI",sans-serif;margin:17px 0 8px;color:#fff}
body.hub-editorial .learn-index-page .learn-intro p{line-height:1.6;color:#c6c8c0;margin:0}
body.hub-editorial .learn-index-page .learn-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
body.hub-editorial .learn-index-page .learn-card{display:flex;flex-direction:column;padding:0;gap:0;overflow:hidden;border:1px solid #3a4943;border-radius:14px;background:#1d2623}
body.hub-editorial .learn-index-page .learn-card:hover{border-color:#d8ba80}
body.hub-editorial .learn-index-page .hub-learn-preview{height:auto;aspect-ratio:1.75;padding:0;overflow:hidden}
body.hub-editorial .learn-index-page .hub-learn-preview>img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center bottom;border-radius:0;filter:none;transition:transform .25s}
body.hub-editorial .learn-index-page .learn-card:hover .hub-learn-preview>img{transform:scale(1.045)}
body.hub-editorial .learn-index-page .hub-learn-preview>span{position:absolute;left:13px;bottom:12px;color:#fff;background:#101c18d9;border:1px solid #dcc28685;border-radius:100px;padding:6px 11px;font-size:10px;font-weight:700}
body.hub-editorial .learn-index-page .learn-card>div{padding:20px;display:flex;flex-direction:column;flex:1}
body.hub-editorial .learn-index-page .learn-card h3{font:720 22px/1.2 Inter,"Segoe UI",sans-serif;color:#fff;margin:7px 0}
body.hub-editorial .learn-index-page .learn-card p{line-height:1.5}
body.hub-editorial .learn-index-page .learn-card [data-learning-summary]{margin-top:auto;padding-top:12px;border-top:1px solid #ffffff1c}
body.hub-editorial .learn-index-page .learn-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px}
body.hub-editorial .learn-index-page .learn-card-actions .text-link{font-size:12px;color:#efd5a4}

/* Current games and archives */
body.hub-editorial .games-page .secondary-section-heading{margin:0 0 20px}
body.hub-editorial .games-page>.resume-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0 0 40px}
body.hub-editorial .games-page .resume-card{padding:0;overflow:hidden;border-color:#3a4842;background:#1e2724}
body.hub-editorial .games-page .resume-card-art{height:170px;position:relative}
body.hub-editorial .games-page .resume-card-art>img{width:100%;height:100%;object-fit:cover;border-radius:0}
body.hub-editorial .games-page .resume-card-art>span{position:absolute;right:12px;bottom:10px;width:54px;height:54px;filter:drop-shadow(0 3px 5px #0009)}
body.hub-editorial .games-page .resume-card-art>span img{width:100%;height:100%;object-fit:contain}
body.hub-editorial .games-page .resume-card-copy{padding:20px}
body.hub-editorial .games-page .resume-card h2{font:700 23px/1.2 Inter,"Segoe UI",sans-serif;color:#fff;margin:0 0 8px}
body.hub-editorial .games-page .resume-card p{font-size:13px;line-height:1.6;color:#c7cbc4}
body.hub-editorial .games-page .resume-card a{margin:0 8px 0 0}
body.hub-editorial .games-page .empty-state{display:flex;align-items:center;justify-content:center;gap:30px;padding:44px;border:1px dashed #657263;background:linear-gradient(110deg,#22312b,#1b2422);text-align:left}
body.hub-editorial .games-page .empty-state>span{font-size:88px;color:#e5c184;line-height:1}
body.hub-editorial .games-page .empty-state h2{font:700 27px/1.2 Inter,"Segoe UI",sans-serif;margin:5px 0 8px;color:#fff}
body.hub-editorial .games-page #archive-library{margin-top:0!important;padding:27px;border:1px solid #374640;background:#1a2421}
body.hub-editorial .games-page #archive-library>h2{font:730 26px/1.2 Inter,"Segoe UI",sans-serif;color:#fff;margin:15px 0 7px}
body.hub-editorial .games-page #archive-library>p:first-child{display:flex;flex-wrap:wrap;gap:8px;margin:0}
body.hub-editorial .games-page #archive-library>p:first-child a{font-size:12px}
body.hub-editorial .games-page #archive-library .resume-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:20px 0 0}
body.hub-editorial .games-page #archive-library .resume-grid .panel{padding:20px;border:1px solid #3c4a45;background:#212c28}
body.hub-editorial .games-page #archive-library .resume-grid .panel h3{font:700 18px/1.3 Inter,"Segoe UI",sans-serif;color:#fff}
body.hub-editorial .games-page #archive-library .resume-grid .panel :is(a,button){margin:5px 6px 0 0}

/* Tournament service */
body.hub-editorial .tournaments-page{max-width:none;padding:0 0 70px}
body.hub-editorial .tournaments-page .tournament-hero .chess-back{display:inline-flex;margin:0 0 22px;color:#dfd4be;font-size:12px}
body.hub-editorial .tournaments-page .tournament-hero .chess-eyebrow{font:750 10px/1.3 Inter,"Segoe UI",sans-serif;letter-spacing:.19em;color:#e9c888;margin:0 0 15px}
body.hub-editorial .tournaments-page .tournament-hero .chess-service-lead{max-width:580px;color:#d2d6ce;margin:0 0 24px;font-size:15px;line-height:1.7}
body.hub-editorial .tournaments-page .tournament-toolbar{display:flex;align-items:end;justify-content:space-between;gap:22px;margin:0 0 16px;padding:0 0 18px;border-bottom:1px solid #3b4943}
body.hub-editorial .tournaments-page .tournament-toolbar h2{font:750 31px/1.15 Inter,"Segoe UI",sans-serif;color:#fff;margin:7px 0 0}
body.hub-editorial .tournaments-page .chess-game-filter{display:grid;gap:7px;margin:0;font-size:12px;color:#e9d3a8;min-width:220px}
body.hub-editorial .tournaments-page .chess-game-filter select{margin:0;width:100%;border-radius:9px;min-height:45px}
body.hub-editorial .tournaments-page .chess-service-status{margin:15px 0 20px;min-height:0;color:#c5c9c0}
body.hub-editorial .tournaments-page .chess-tournament{border:1px solid #3a4942;border-radius:15px;padding:25px;background:#1c2622;box-shadow:0 12px 30px #0002}
body.hub-editorial .tournaments-page .chess-tournament h2{font:720 25px/1.2 Inter,"Segoe UI",sans-serif;color:#fff}
body.hub-editorial .tournaments-page .chess-empty{margin-top:14px;border:1px dashed #5b6b60;border-radius:15px;background:linear-gradient(110deg,#22312b,#1b2421);font-size:14px;line-height:1.6}
body.hub-editorial .tournaments-page .chess-service-note{padding:24px;border:1px solid #3c4b42;border-radius:14px;background:#1d2723}
body.hub-editorial .tournaments-page .chess-service-status{padding:19px 21px;border:1px solid #425246;border-radius:12px;background:#202c26;color:#ecd6a8}
body.hub-editorial .tournaments-page .tournament-discovery{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding:27px 30px;border-radius:15px;border:1px solid #3f5146;background:linear-gradient(110deg,#23342a,#1b2522)}
body.hub-editorial .tournaments-page .tournament-discovery h2{font:720 22px/1.2 Inter,"Segoe UI",sans-serif;color:#fff;margin:7px 0}
body.hub-editorial .tournaments-page .tournament-discovery p:not(.eyebrow){font-size:13px;color:#c4cdc1;margin:0}
body.hub-editorial .tournaments-page .tournament-discovery>div:last-child{display:flex;gap:10px;flex-wrap:wrap;justify-content:end;flex:none}

/* A player's salon collection is part of the same journey. */
body.hub-editorial .collection-page{max-width:none;padding:0 0 70px}
body.hub-editorial .collection-page .collection-hero .chess-back{display:inline-flex;margin:0 0 22px;color:#dfd4be;font-size:12px}
body.hub-editorial .collection-page .collection-hero .chess-eyebrow{font:750 10px/1.3 Inter,"Segoe UI",sans-serif;letter-spacing:.19em;color:#e9c888;margin:0 0 15px}
body.hub-editorial .collection-page .collection-hero .chess-service-lead{max-width:560px;color:#d2d6ce;margin:0;font-size:15px;line-height:1.7}
body.hub-editorial .collection-page .chess-service-note{padding:22px;border:1px solid #3c4b42;border-radius:13px;background:#202b26;line-height:1.65}
body.hub-editorial .collection-page .chess-service-note a{color:#efd19b}
body.hub-editorial .collection-page .chess-collection-grid{gap:16px}
body.hub-editorial .collection-page .chess-collection-card{border-color:#3b4942;border-radius:14px;background:#1d2723;transition:transform .2s,border-color .2s}
body.hub-editorial .collection-page .chess-collection-card:hover{transform:translateY(-3px);border-color:#d7b87d}
body.hub-editorial .collection-page .chess-collection-card>img{height:170px}
body.hub-editorial .collection-page .chess-collection-card h2{font:700 18px/1.25 Inter,"Segoe UI",sans-serif;color:#fff}

/* Reading pages stay calm, legible and aligned with the destination pages. */
body.hub-editorial .legal-shell{max-width:none;padding:0 0 70px}
body.hub-editorial .legal-shell .legal-page{max-width:none;margin:auto;color:#e7e9e2;font-size:15px;line-height:1.75}
body.hub-editorial .legal-shell .legal-hero{margin:0 0 22px;padding:46px max(32px,calc((100vw - 920px)/2));border:1px solid #3e4c44;border-radius:0 0 19px 19px;background:radial-gradient(circle at 90% 15%,#a1884b22,transparent 45%),linear-gradient(115deg,#23322a,#1c2522)}
body.hub-editorial .legal-shell .legal-hero h1{font:760 clamp(35px,4vw,56px)/1.05 Inter,"Segoe UI",sans-serif;letter-spacing:-.05em;color:#fff;margin:14px 0}
body.hub-editorial .legal-shell .legal-hero p:last-child{margin:0;color:#cbd1c7}
body.hub-editorial .legal-shell .legal-navigation{display:flex;gap:8px;margin:0 0 27px;padding:10px;border:1px solid #3a4941;border-radius:12px;background:#1c2722}
body.hub-editorial .legal-shell .legal-navigation a{padding:8px 13px;border-radius:7px;color:#d5dacc;text-decoration:none;font-size:12px}
body.hub-editorial .legal-shell .legal-navigation a[aria-current=page]{background:#e7c383;color:#1b221e;font-weight:750}
body.hub-editorial .legal-shell .legal-page>h2{font:730 24px/1.2 Inter,"Segoe UI",sans-serif;color:#f7e8c9;margin:38px 0 10px}
body.hub-editorial .legal-shell .legal-page>p:not(.eyebrow){color:#cbd3c9;line-height:1.75}
body.hub-editorial .legal-shell .legal-page a:not(.button){color:#efd09a;text-underline-offset:3px}
body.hub-editorial .legal-shell .legal-navigation a[aria-current=page]:not(.button){color:#1b221e}
body.hub-editorial .legal-shell .legal-status{border:1px solid #886f46;border-left:4px solid #dfb875;border-radius:9px;padding:16px 19px;background:#3a302327;color:#f0e5cd!important}
body.hub-editorial .legal-shell .legal-table{border-color:#405046}
body.hub-editorial .legal-shell .legal-table th,body.hub-editorial .legal-shell .legal-table td{border-color:#405046}
body.hub-editorial .legal-shell .legal-table thead{background:#26352d}

/* The individual guide and three-step lesson carry the same theme into reading. */
body.hub-editorial .guide-page{max-width:none;padding:20px 0 70px}
body.hub-editorial .guide-page :is(.rules-page,#learning-app){max-width:none;margin-inline:auto}
body.hub-editorial .guide-page .back-link{display:inline-flex;margin:14px 0 14px max(32px,calc((100vw - 1180px)/2));color:#e8d3ad;font-size:12px}
body.hub-editorial .guide-page .guide-hero{position:relative;isolation:isolate;display:flex;align-items:center;gap:24px;min-height:265px;margin:4px 0 23px;padding:35px max(32px,calc((100vw - 1180px)/2));border:1px solid #485549;border-radius:0;background:#1b2923;overflow:hidden}
body.hub-editorial .guide-page .guide-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#17251ff2 0%,#17251fea 47%,#17251f24 100%);z-index:1}
body.hub-editorial .guide-page .guide-hero .guide-hero-art{position:absolute;right:max(32px,calc((100vw - 1180px)/2));top:50%;transform:translateY(-50%);width:min(34vw,450px);height:auto;aspect-ratio:391/174;object-fit:cover;z-index:0;border:1px solid #d7bd8555;border-radius:14px;box-shadow:0 18px 36px #0007}
body.hub-editorial .guide-page .guide-hero>.game-emblem{position:relative;z-index:2;width:90px;height:90px;flex:none;object-fit:contain}
body.hub-editorial .guide-page .guide-hero>div{position:relative;z-index:2;max-width:610px}
body.hub-editorial .guide-page .guide-hero h1{font:760 clamp(34px,4.3vw,55px)/1.05 Inter,"Segoe UI",sans-serif;letter-spacing:-.045em;color:#fff;margin:8px 0 11px}
body.hub-editorial .guide-page .guide-hero p:last-child{font-size:14px;line-height:1.6;color:#e6e2d5;margin:0}
body.hub-editorial .guide-page :is(.rules-variant,.rules-text,.movement-library,.learning-overview,.learning-question,#learning-practice){background:#1e2924;border:1px solid #3c4a41;border-radius:14px;color:#e8e8de}
body.hub-editorial .guide-page :is(.rules-variant,.rules-text,.movement-library,.learning-question,#learning-practice){padding:25px}
body.hub-editorial .guide-page .rules-actions{gap:10px}
body.hub-editorial .guide-page .rules-actions .text-link{color:#efd6a5}
body.hub-editorial .guide-page :is(.rules-variant h2,.rules-text h2,.learning-question legend,#learning-practice h2){font-family:Inter,"Segoe UI",sans-serif;font-weight:720;color:#fff}
body.hub-editorial .guide-page .rules-text li{background:#26342c;border-color:#46564a;color:#f4f0e3}
body.hub-editorial .guide-page .learning-overview{padding:20px}
body.hub-editorial .guide-page .learning-overview figure{margin:0 0 17px}
body.hub-editorial .guide-page .learning-overview figcaption{color:#c9d2c7;font-size:12px;line-height:1.55}
body.hub-editorial .guide-page .learning-options label{background:#26342c;border-color:#46564a;color:#f6f1e5}
body.hub-editorial .guide-page .learning-options label:has(input:checked){outline-color:#e2bf7d;background:#344534}
body.hub-editorial .guide-page .learning-options input{accent-color:#e7c383}
body.hub-editorial .guide-page .learning-explanation{background:#283a2e;color:#ecf0dd;border-left-color:#e1bd7a}
body.hub-editorial .guide-page .learning-progress{padding:15px 20px;border:1px solid #455248;border-radius:11px;background:#202c25;color:#eed6a7}

/* Player and account */
body.hub-editorial .player-page .profile-overview{margin:0 0 19px;padding:24px 28px;border:1px solid #46534a;border-radius:15px;background:#26342e}
body.hub-editorial .player-page .profile-overview h2{font:740 25px/1.2 Inter,"Segoe UI",sans-serif;color:#fff;margin:9px 0 5px}
body.hub-editorial .player-page .profile-overview p{color:#d2d8ce;margin:0}
body.hub-editorial .player-page .profile-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.85fr);gap:18px}
body.hub-editorial .player-page .profile-layout>.panel{padding:29px;background:#1d2723;border-color:#3b4842}
body.hub-editorial .player-page .profile-layout>.panel h2{font:730 27px/1.2 Inter,"Segoe UI",sans-serif;margin:9px 0 23px;color:#fff}
body.hub-editorial .player-page .profile-links{gap:12px}
body.hub-editorial .player-page .profile-links a{padding:20px 23px;background:#1d2723;border:1px solid #3b4842;border-radius:13px;transition:transform .2s,border-color .2s}
body.hub-editorial .player-page .profile-links a:hover{transform:translateX(3px);border-color:#d5bb84}
body.hub-editorial .player-page .profile-links h2{display:flex;align-items:center;justify-content:space-between;gap:10px;font:700 20px/1.25 Inter,"Segoe UI",sans-serif;margin:8px 0;color:#fff}
body.hub-editorial .player-page .profile-links h2 b{font-weight:400;color:#e8c88f}
body.hub-editorial .player-page .profile-links p{font-size:12px;line-height:1.5;color:#bec7bd;margin:0}
body.hub-editorial .player-page>.muted.small{line-height:1.7;margin-top:19px}
body.hub-editorial .account-page .account-layout{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:18px}
body.hub-editorial .account-page .account-layout>.panel{padding:29px;background:#1e2824;border:1px solid #3b4942;border-radius:15px}
body.hub-editorial .account-page .account-layout>.panel h2{font:740 27px/1.2 Inter,"Segoe UI",sans-serif;color:#fff;margin:8px 0 20px}
body.hub-editorial .account-page .account-layout>.panel h3{font:700 18px/1.25 Inter,"Segoe UI",sans-serif;color:#f6e5c2;margin:25px 0 10px}
body.hub-editorial .account-page .account-layout>.panel p,
body.hub-editorial .account-page .account-layout li{font-size:13px;line-height:1.65;color:#cad1c6}
body.hub-editorial .account-page .account-layout label{color:#f1dfb7;font-size:12px}
body.hub-editorial .account-page .account-layout :is(input,select){margin-top:7px;border:1px solid #516055;border-radius:8px;min-height:43px;background:#15201c;color:#fff}
body.hub-editorial .account-page .account-actions{margin:20px 0 0}
body.hub-editorial .account-page .account-layout aside{background:linear-gradient(145deg,#26352d,#1c2623)}

/* Full-width introductions, with the reading and card grids kept on one aligned rail. */
body.hub-editorial :is(.catalog-page,.secondary-page)>:not(:is(.catalog-hero,.secondary-hero,.legal-page,.rules-page,#learning-app)){
 width:calc(100% - 64px);max-width:1280px;margin-inline:auto
}
body.hub-editorial .legal-shell .legal-page>:not(.legal-hero){width:calc(100% - 64px);max-width:920px;margin-inline:auto}
body.hub-editorial .guide-page :is(.rules-page,#learning-app)>:not(.guide-hero):not(.back-link){width:calc(100% - 64px);max-width:1180px;margin-inline:auto}

@media(max-width:1000px){
 body.hub-editorial .catalog-page .game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 body.hub-editorial .learn-index-page .learn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.hub-editorial .games-page>.resume-grid,body.hub-editorial .games-page #archive-library .resume-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.hub-editorial .catalog-page .catalog-toolbar{display:block}
 body.hub-editorial .catalog-page .search{margin-top:12px;max-width:none;width:100%}
}
@media(max-width:760px){
 body.hub-editorial :is(.catalog-page,.secondary-page){padding-inline:0;padding-bottom:45px}
 body.hub-editorial :is(.catalog-page,.secondary-page)>:not(:is(.catalog-hero,.secondary-hero,.legal-page,.rules-page,#learning-app)),body.hub-editorial .legal-shell .legal-page>:not(.legal-hero),body.hub-editorial .guide-page :is(.rules-page,#learning-app)>:not(.guide-hero):not(.back-link){width:calc(100% - 36px)}
 body.hub-editorial .secondary-hero,body.hub-editorial .catalog-hero{grid-template-columns:1fr;gap:14px;min-height:0;padding:30px 25px;margin:0 0 34px;border-radius:0 0 18px 18px}
 body.hub-editorial .secondary-hero h1,body.hub-editorial .catalog-hero h1,body.hub-editorial .tournament-hero h1{font-size:clamp(35px,9vw,53px)}
 body.hub-editorial .secondary-hero-art{height:205px}
 body.hub-editorial .secondary-hero-art.thumbnail-hero-art{height:auto;max-width:391px}
 body.hub-editorial .catalog-hero-art{height:175px;margin-top:5px}
 body.hub-editorial .catalog-hero-art img{height:135px;border-width:2px}
 body.hub-editorial .catalog-hero-art img:nth-child(2){height:165px}
 body.hub-editorial .learn-index-page .learn-intro{grid-template-columns:1fr;gap:10px;margin-bottom:42px}
 body.hub-editorial .learn-index-page .learn-intro>div{padding:18px;display:grid;grid-template-columns:38px 1fr;gap:0 14px}
 body.hub-editorial .learn-index-page .learn-intro h3{margin:1px 0 4px}
 body.hub-editorial .learn-index-page .learn-intro p{grid-column:2}
 body.hub-editorial .tournaments-page{padding-inline:0}
 body.hub-editorial .collection-page,body.hub-editorial .legal-shell{padding-inline:0}
 body.hub-editorial .guide-page{padding-inline:0}
 body.hub-editorial .guide-page .back-link{margin-left:18px}
 body.hub-editorial .legal-shell .legal-hero{margin-inline:0;padding:35px 26px}
 body.hub-editorial .player-page .profile-layout,body.hub-editorial .account-page .account-layout{grid-template-columns:1fr}
}
@media(max-width:560px){
 body.hub-editorial :is(.catalog-page,.secondary-page) .section-heading{display:block}
 body.hub-editorial .catalog-page .game-grid,body.hub-editorial .learn-index-page .learn-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body.hub-editorial .catalog-page .card-image{aspect-ratio:1.25}
 body.hub-editorial .catalog-page .card-copy{padding:12px}
 body.hub-editorial .catalog-page .card-copy h3{font-size:15px}
 body.hub-editorial .catalog-page .card-copy>p{font-size:11px}
 body.hub-editorial .catalog-page .hub-card-logo{width:39px;height:39px}
 body.hub-editorial .learn-index-page .learn-card>div{padding:13px}
 body.hub-editorial .learn-index-page .learn-card h3{font-size:17px}
 body.hub-editorial .learn-index-page .learn-card-actions .button{width:100%;font-size:11px}
 body.hub-editorial .learn-index-page .learn-card-actions .text-link{min-height:28px}
 body.hub-editorial .games-page>.resume-grid,body.hub-editorial .games-page #archive-library .resume-grid{grid-template-columns:1fr}
 body.hub-editorial .games-page .empty-state{display:block;text-align:center;padding:30px 20px}
 body.hub-editorial .games-page .empty-state>span{font-size:64px}
 body.hub-editorial .tournaments-page .tournament-toolbar{display:block}
 body.hub-editorial .tournaments-page .chess-game-filter{margin-top:18px}
 body.hub-editorial .tournaments-page .tournament-discovery{display:block;padding:22px}
 body.hub-editorial .tournaments-page .tournament-discovery>div:last-child{justify-content:start;margin-top:18px}
 body.hub-editorial .legal-shell .legal-navigation{padding:8px;gap:4px}
 body.hub-editorial .legal-shell .legal-navigation a{font-size:11px;padding:7px 9px}
 body.hub-editorial .guide-page .guide-hero{display:block;min-height:0;padding:26px}
 body.hub-editorial .guide-page .guide-hero>.game-emblem{width:66px;height:66px;margin-bottom:13px}
 body.hub-editorial .guide-page .guide-hero .guide-hero-art{inset:0;width:100%;height:100%;aspect-ratio:auto;transform:none;border:0;border-radius:0;opacity:.38}
 body.hub-editorial .guide-page .guide-hero::after{background:linear-gradient(90deg,#17251ff0,#17251fa8)}
 body.hub-editorial .account-page .account-layout>.panel,body.hub-editorial .player-page .profile-layout>.panel{padding:20px}
}
@media(max-width:390px){body.hub-editorial .catalog-page .game-grid,body.hub-editorial .learn-index-page .learn-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body.hub-editorial .secondary-page *,body.hub-editorial .catalog-page *{scroll-behavior:auto!important;transition:none!important}}
body.hub-editorial .games-page [data-delete-table].danger{color:#ffb4a5!important}
