/* The owner's preferred Field Notes treatment is the shared editorial visual language. */
:root { --field-lavender:#c5b7d7; --field-lavender-light:#eee8f4; --field-vermilion:#ed4827; --field-ink:#1c1a17; }
.editorial-feature { display:grid; grid-template-columns:minmax(150px,.85fr) minmax(0,1.15fr); gap:28px; align-items:center; }
.type-tile { position:relative; min-height:245px; padding:20px; color:var(--field-ink); border:1px solid var(--field-ink); display:flex; flex-direction:column; justify-content:center; overflow:hidden; }
.tile-lavender { background:var(--field-lavender); }
.tile-vermilion { background:var(--field-vermilion); }
.type-tile>span { font-size:11px; line-height:1.5; letter-spacing:.8px; font-weight:600; position:relative; z-index:1; max-width:190px; }
.type-tile>strong { display:block; font:140px/.9 var(--serif); text-align:center; margin:10px 0; letter-spacing:-5px; }
.type-tile>strong:has(br) { font:800 46px/.9 var(--condensed); text-align:left; letter-spacing:-1px; margin:18px 0; }
.type-tile>strong b { font:48px/.65 var(--serif); font-weight:400; }
.type-tile>i { position:absolute; bottom:10px; right:16px; font:36px/1 var(--sans); transform:rotate(-8deg); }
.feature-copy { min-width:0; }
.reading-body .feature-copy h4 { font:32px/1.12 var(--serif); letter-spacing:-.5px; margin:0 0 14px; }
main .feature-copy p,.feature-copy dd,.feature-copy li { font-size:16px; line-height:1.65; color:var(--field-ink); }
.feature-facts { margin:0; }
.feature-facts>div+div { margin-top:12px; }
.feature-facts dt { font:700 15px/1.5 var(--sans); }
.feature-facts dd { margin:2px 0 0; }
.reading-body .feature-checks { margin:0; padding-left:22px; }
.feature-checks li { margin-bottom:10px; padding-left:4px; }
.feature-checks li::marker { color:var(--red-ink); font-weight:750; }
/* Let colour and type carry the illustration, with open paper around the prose. */
.editorial-visual:has(.editorial-feature) { background:transparent!important; padding:0; }
.editorial-visual:has(.editorial-feature)>figcaption { color:var(--field-ink); letter-spacing:1px; margin-bottom:16px; }
.visual-groups,.visual-identity { background:var(--field-lavender)!important; }
.visual-groups figcaption,.visual-identity figcaption { color:var(--field-ink); }
.visual-bonus { background:var(--field-vermilion)!important; color:var(--field-ink); }
.visual-bonus figcaption { color:var(--field-ink); }
.visual-support { background:var(--field-lavender-light)!important; }
.reading-section:nth-of-type(3n+2) { background:transparent; }
.editorial-stamp { display:inline-flex; align-items:center; justify-content:center; width:72px; height:72px; border:1px solid var(--field-ink); border-radius:50%; transform:rotate(-13deg); background:var(--field-vermilion); color:var(--field-ink); box-shadow:2px 2px 0 var(--field-ink); font:12px/1.3 var(--sans); text-align:center; }
/* Discovery and directory retain their functional controls and short proportions. */
.hub-page .directory-hero { background:transparent; border:0; padding-inline:0; }
.hub-finder-panel { padding:20px; background:var(--field-lavender); border:1px solid var(--field-ink); }
.hub-browse-cue { color:var(--field-ink); }
.directory-box { background:transparent; border-bottom:1px solid var(--line); }
.hub-card-image { background:var(--field-lavender-light); }
.hub-card-image .profile-logo-area { background:transparent; }
.directory-box:nth-child(even) .hub-card-image { background:#fbe7df; }
.directory-box h3 { font-family:var(--serif); font-weight:400; font-size:28px; }
/* Individual profiles echo the same illustrated-left/editorial-right composition. */
.profile-answer { background:transparent; border:0; padding-inline:0; }
.profile-answer>div:first-child { display:grid; grid-template-columns:72px minmax(0,1fr); column-gap:20px; align-items:center; }
.profile-answer>div:first-child>.eyebrow { grid-column:1/-1; margin-bottom:14px; }
.profile-answer h2 { margin:0; font-size:32px; }
.profile-comparison-feature { grid-template-columns:minmax(190px,.7fr) minmax(0,1.7fr); gap:32px; align-items:stretch; }
.profile-comparison-feature>.type-tile { min-height:280px; }
.profile-comparison-feature>.type-tile>strong { font-size:65px; }
.profile-comparison-feature .comparison-topics { gap:20px 30px; }
.comparison-topics article { border:0; padding-top:0; }
.comparison-topics h3 { font:26px/1.15 var(--serif); margin-bottom:10px; }
.profile-research { background:var(--field-lavender-light); border:0; }
.profile-research h2 { font-size:37px; }
/* Author stamps belong to the publication, and do not assert verified credentials. */
.author-identity { position:relative; }
.author-stamp { position:absolute; right:-5px; top:-12px; display:flex; align-items:center; justify-content:center; width:50px; height:50px; background:var(--field-vermilion); border:1px solid var(--field-ink); color:var(--field-ink); border-radius:50%; transform:rotate(12deg); font:9px/1.2 var(--sans); text-align:center; }
.author-box h2 { font:28px/1.15 var(--serif); }
.author-avatar { background:var(--field-lavender); border:1px solid #a997bd; }
.author-avatar span { color:var(--field-ink); }
.author-tab { padding-right:36px; }
/* Existing guide and information illustrations use the same two-colour family. */
.guide-cover,.notes-board { background:var(--field-lavender); border-color:var(--field-ink); color:var(--field-ink); }
.guide-cover>strong,.notes-board strong { color:var(--field-ink); }
.guide-cover>i,.static-marker>i { background:var(--field-vermilion); color:var(--field-ink); border-color:var(--field-ink); }
.static-marker { background:var(--field-vermilion); color:var(--field-ink); }
.static-marker>strong,.static-marker>b,main .static-marker>p { color:var(--field-ink)!important; }
.guide-answer { border:0; border-left:4px solid var(--field-lavender); padding-left:24px; }
.guide-checklist article>span { font-family:var(--serif); color:var(--red-ink); }
.guide-signpost { background:var(--field-lavender-light); }
.static-principles #principles-list>article:nth-child(odd) { background:var(--field-lavender-light); }
.static-principles #principles-list>article { padding:20px; }
@media(max-width:1100px) {
 .editorial-feature { grid-template-columns:minmax(140px,.8fr) minmax(0,1.2fr); gap:20px; }
 .type-tile { padding:14px; min-height:225px; }
 .type-tile>strong { font-size:110px; }
 .type-tile>strong:has(br) { font-size:39px; }
 .reading-body .feature-copy h4 { font-size:28px; }
 .directory-box h3 { font-size:25px; }
 .profile-comparison-feature { grid-template-columns:minmax(170px,.65fr) minmax(0,1.6fr); gap:24px; }
}
@media(max-width:719px) {
 .editorial-feature { grid-template-columns:1fr; gap:20px; }
 .type-tile { min-height:190px; padding:16px; }
 .type-tile>strong { font-size:125px; margin:5px 0; }
 .type-tile>strong:has(br) { font-size:40px; line-height:.85; margin:8px 0; }
 .type-tile>strong b { font-size:36px; }
 .reading-body .feature-copy h4 { font-size:29px; }
 .reading-section:nth-of-type(3n+2) { padding-inline:0; }
 .hub-finder-panel { padding:12px; }
 .directory-box h3 { font-size:23px; }
 .profile-answer>div:first-child { grid-template-columns:58px minmax(0,1fr); column-gap:14px; }
 .profile-answer .editorial-stamp { width:58px; height:58px; font-size:10px; }
 .profile-answer h2 { font-size:28px; overflow-wrap:break-word; }
 .profile-comparison-feature { grid-template-columns:1fr; }
 .profile-comparison-feature>.type-tile { min-height:190px; }
 .profile-comparison-feature>.type-tile>strong { font-size:43px; }
 .comparison-topics h3 { font-size:25px; }
 .profile-research h2 { font-size:32px; }
 .author-stamp { width:40px; height:40px; top:-8px; right:0; font-size:8px; }
 .author-tab { padding-top:38px; padding-right:0; }
 .author-box h2 { font-size:25px; }
}
@media(prefers-reduced-motion:reduce) { .type-tile { scroll-behavior:auto; } }

/* Comprehensive refinement: shared coloured ink, compact heroes and centred reading. */
:root { --ink:#29243a; --field-ink:#29243a; --muted:#514a53; --line:#b3aab9; --field-vermilion:#f26543; --red:#f26543; --red-ink:#a63720; --field-lavender:#c5b7d7; --field-lavender-light:#f0eaf5; --paper:#fffdfa; --paper-deep:#f5f1ed; --section-space:72px; }
body { color:var(--ink); }
h1,h2,h3,h4,h5,h6 { color:var(--ink); }
main p:not(.eyebrow) { color:#443d46; }
.site-header { top:0; border-color:var(--line); }
html { scroll-padding-top:86px; }
main [id] { scroll-margin-top:16px; }
.wordmark { color:var(--ink); }
.wordmark .wordmark-accent,.footer-logo .wordmark-accent { color:var(--field-vermilion); }
.site-footer .footer-logo { color:#fffdfa; }
main { padding-bottom:var(--section-space); }
.breadcrumb { padding-block:10px; margin:0 auto; }
main .eyebrow { color:var(--ink); }
.casino-grid .casino-card.bonus-card,.directory-box,.library-card,.guide-art,.author-box,.static-opening,.content-table { border:1px solid var(--ink); }
.bonus-logo { border:1px solid var(--line); background:#faf8fc; padding:4px; }
.bonus-logo img,.profile-logo-area img { object-fit:contain; }
.bonus-offer { background:#f5edf7; }
.casino-grid .casino-card.bonus-card:hover { box-shadow:2px 2px 0 var(--ink); }
/* All opening sections put their content before decorative height. */
.home-page .discovery-hero,.hub-page .directory-hero,.guides-hero,.guide-article-hero,.static-hero { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:36px; padding-block:20px 28px; align-items:center; }
.home-page .discovery-hero h1,.hub-page .directory-hero h1,.casino-page h1,.guides-hero h1,.guide-article-hero h1,.static-hero h1 { font:500 clamp(36px,3.6vw,50px)/1.08 var(--serif); letter-spacing:-1.1px; text-transform:none; margin:8px 0 12px; }
.home-page .discovery-hero .hero-text,.guides-hero>div>p:last-child,.guide-article-hero>div>p:not(.eyebrow),.static-hero>div>p:not(.eyebrow) { margin-top:12px; font-size:16px; line-height:1.6; max-width:650px; }
.home-page .discovery-hero .hero-search { margin-top:16px; }
.home-page .directory { width:100%; padding-block:44px; margin:0; background:var(--field-lavender-light); border:0; }
.home-page .directory .placeholder-note { margin-top:20px; }
.homepage-reading { border:0; padding-block:var(--section-space); }
.reading-heading { max-width:820px; text-align:left; margin:0 auto 32px; }
.reading-heading h2 { font:40px/1.15 var(--serif); }
.reading-layout,.profile-reading-layout,.guide-article-layout,.static-layout { display:grid; grid-template-columns:minmax(155px,1fr) minmax(0,820px) minmax(0,1fr); gap:28px; align-items:start; }
.reading-column,.profile-reading-column,.guide-article-main,.static-main { min-width:0; width:100%; }
.reading-intro { text-align:left; max-width:none; margin:0; }
.reading-body,.reading-group { max-width:100%; }
.reading-body>.reading-section { padding:0; margin-top:var(--section-space); border:0; background:transparent; }
.reading-section>header { text-align:center; margin-bottom:26px; }
.reading-body h3 { margin-inline:auto; }
.reading-toc { position:sticky; top:90px; background:transparent; padding:0; }
.reading-toc details>div { max-height:none; overflow:visible; }
.reading-toc summary { padding:10px 0; border-bottom:1px solid var(--line); }
.reading-toc a { padding:8px; font-size:14px; min-height:38px; line-height:1.4; }
.reading-toc a[aria-current=location] { background:var(--field-lavender-light); color:var(--ink); border-left-color:var(--red-ink); }
.editorial-visual { border:1px solid var(--ink); padding:22px; }
.editorial-visual:has(.editorial-feature) { border:0; }
.editorial-visual:has(.editorial-feature) .type-tile { min-height:210px; }
.visual-checks,.visual-payments { background:var(--field-lavender-light)!important; }
.visual-accounts { background:#fff0e9!important; }
main .visual-bonus p { color:var(--ink); }
.content-table { overflow-x:auto; max-width:100%; margin:24px 0 0; }
.content-table table { width:100%; min-width:530px; border-collapse:collapse; font:16px/1.65 var(--sans); color:var(--ink); }
.content-table caption { text-align:left; padding:12px 16px; font-weight:700; background:#fffdfa; border-bottom:3px solid var(--red); caption-side:top; }
.content-table th,.content-table td { padding:13px 16px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line); }
.content-table thead th { background:#e5dced; font-weight:750; }
.content-table tbody th { background:transparent; font-weight:650; }
.content-table tr>:not(:first-child) { border-left:1px solid var(--line); }
.content-table tbody tr:nth-child(even) { background:#f8f5f9; }
/* The hub is a selection of page files, not a search or relationship graph. */
.catalogue-visual { background:var(--field-lavender); border:1px solid var(--ink); padding:16px; }
.catalogue-visual ol { list-style:none; padding:0; margin:12px 0 0; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.catalogue-visual li { display:flex; align-items:center; gap:9px; border:1px solid var(--ink); background:#fffdfa; padding:12px 10px; font-size:14px; }
.catalogue-visual li>span:first-child { color:var(--red-ink); font-size:12px; }
.catalogue-visual li>span:last-child { margin-left:auto; }
.hub-page .hub-directory { padding-top:24px; padding-bottom:0; margin-top:0; }
.hub-box-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.directory-box { display:flex; flex-direction:column; align-items:stretch; gap:0; padding:14px; background:#fffdfa; }
.hub-card-image { border:1px solid var(--ink); padding:12px; min-height:100px; display:flex; align-items:center; justify-content:center; background:var(--field-lavender-light); }
.directory-box:nth-child(even) .hub-card-image { background:var(--field-lavender-light); }
.directory-box .profile-logo-area { background:transparent; border:0; height:70px; }
.directory-box .profile-logo-area img { height:62px; width:170px; }
.hub-card-content { display:flex; flex-direction:column; flex:1; }
.directory-box h3 { font:28px/1.15 var(--serif); min-height:0; margin:16px 0 12px; }
main .hub-card-description { font-size:15px; line-height:1.6; margin-bottom:16px; }
.directory-box-action { width:100%; max-width:100%; margin-top:auto; padding:10px 14px; min-height:44px; color:#fff; background:var(--cta); justify-content:center; text-align:center; border:1px solid var(--cta); font:700 15px/1.4 var(--sans); }
.directory-box-action:hover { background:var(--cta-hover); color:#fff; text-decoration:none; }
@media(min-width:1360px) { .hub-box-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
/* Casino identity is short; the long-form article has its own bounded contents rail. */
.casino-page h1 { font-size:44px; }
.profile-connections { padding:0 0 36px; margin-bottom:36px; }
.profile-connections #connections-title { margin-top:0; }
.profile-connections #connections-intro { margin-bottom:0; }
.profile-reading-layout { padding-top:12px; }
.profile-reading-column>section { margin:0 0 var(--section-space); padding:0; border:0; }
.profile-reading-column h2 { font:36px/1.15 var(--serif); margin:10px 0 20px; }
.profile-reading-column h3 { font:25px/1.2 var(--serif); }
.profile-reading-column p,.profile-reading-column li { font-size:16px; line-height:1.75; }
.profile-reading-column p+p { margin-top:14px; }
.profile-reading-column .profile-answer { display:block; padding:24px; background:#fff0e9; border:1px solid var(--ink); }
.profile-answer>div:first-child { grid-template-columns:58px minmax(0,1fr); }
.profile-answer .editorial-stamp { width:58px; height:58px; font-size:10px; }
.profile-answer h2 { font-size:30px; }
.profile-jumps { display:none; }
.account-comparison { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.account-comparison>div { padding:20px; border:1px solid var(--ink); background:#fff0e9; }
.account-comparison>div:last-child { background:var(--field-lavender-light); }
.account-comparison h3 { margin:10px 0; }
.payment-process { margin:24px 0 0; background:var(--field-lavender-light); padding:22px; border:1px solid var(--ink); }
.payment-process figcaption { font-size:12px; letter-spacing:.6px; font-weight:700; }
.payment-process ol { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:20px; padding:0; margin:18px 0; }
.payment-process li { display:flex; gap:12px; }
.payment-process li>span { font:34px/1 var(--serif); color:var(--red-ink); }
.payment-process li p { margin-top:8px; }
.profile-comparison-feature { grid-template-columns:180px minmax(0,1fr); gap:24px; }
.profile-comparison-feature>.type-tile { min-height:210px; }
.profile-comparison-feature .comparison-topics { grid-template-columns:1fr; gap:24px; }
.profile-reading-column .profile-research { display:block; padding:24px; border:1px solid var(--ink); }
.profile-research ol { display:grid; gap:10px; list-style:none; counter-reset:evidence; padding:0; margin:24px 0; }
.profile-research ol>li { display:flex; gap:14px; padding:12px; border:1px solid var(--ink); background:#fffdfa; margin:0; counter-increment:evidence; }
.profile-research ol>li:before { content:'0' counter(evidence); font:24px/1.3 var(--serif); color:var(--red-ink); }
.source-record { margin-top:20px; }
.profile-reading-column .profile-recommendations { background:var(--field-lavender-light); border:1px solid var(--ink); padding:24px; }
.recommendation-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:24px; }
.recommendation-grid .directory-box h3 { font-size:25px; }
.profile-reading-column .author-section { padding-top:0; margin-bottom:48px; }
.author-box { border-left:4px solid var(--red); padding:20px; }
.author-box h2 { font-size:26px; color:#fffdfa; margin:4px 0; }
.profile-reading-column .page-faq { padding:0; }
.profile-next { border:0; padding-block:0; }
/* Preserve the guide and information artwork at a smaller, consistent scale. */
.guides-hero,.guide-article-hero,.static-hero { grid-template-columns:minmax(0,1.5fr) minmax(0,.85fr); }
.guides-hero h1 svg { display:none; }
.notes-board,.guide-cover,.static-marker { height:220px; min-height:0; margin:0; max-width:none; width:100%; padding:16px; }
.notes-board:before,.guide-cover:before,.static-marker:before,.library-art:after { content:none; }
.notes-board>div { top:52px; left:20px; right:20px; width:auto; min-height:0; height:146px; padding:14px; transform:rotate(-2deg); box-shadow:3px 3px 0 var(--ink); }
.notes-board>div strong { font-size:100px; margin:0; position:absolute; right:25px; top:20px; }
.notes-board>div p { margin-top:10px; padding-top:8px; max-width:65%; }
.guide-cover>strong,.static-marker>strong { font-size:112px; line-height:1; margin:8px 0 0; letter-spacing:-4px; }
.guide-cover>p,.static-marker>p { bottom:12px; left:16px; border-top:0; font-size:12px!important; padding:0; }
.guide-cover>i,.static-marker>i { top:65px; right:20px; font-size:10px; box-shadow:none; }
.guide-cover>span,.static-marker>span { border-color:var(--ink); padding-bottom:8px; }
.guide-cover.comparison-cover { background:var(--field-vermilion); }
.static-marker.context-marker { background:var(--field-lavender); }
.article-byline { flex-wrap:wrap; gap:8px 16px; margin-top:14px; }
.guides-index { border:0; background:var(--field-lavender-light); padding:36px 0; }
.guides-index-head h2 { font-size:34px; margin-top:8px; }
.guides-index-head h2 br { display:none; }
.guide-library { margin-top:24px; gap:20px; }
.library-card { min-height:0; }
.library-card>a { grid-template-columns:1fr; grid-template-rows:120px 1fr; }
.library-art { background:var(--field-lavender); color:var(--ink); padding:10px; }
.library-two .library-art,.library-six .library-art { background:var(--field-lavender); }
.library-three .library-art,.library-four .library-art,.library-five .library-art { background:var(--field-vermilion); color:var(--ink); }
.library-card { --red-ink:#a63720; }
.library-card .library-art>strong { font-size:85px; margin-top:0; }
.library-card h3 { font-size:24px; line-height:1.15; margin:8px 0 12px; }
.library-card a>div:last-child { padding:16px; }
main .library-card .library-description { font:15px/1.6 var(--sans); letter-spacing:0; margin-bottom:14px; }
main .library-card a>div:last-child>p:first-child { font-size:12px; color:var(--red-ink); }
.library-card a>div:last-child>span { min-height:44px; display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); margin-top:auto; }
.guide-signpost { margin-top:48px; padding:28px; gap:36px; border:1px solid var(--ink); }
.guide-signpost h2 { font-size:32px; }
.guide-signpost>div:first-child>span { color:var(--ink); }
.guide-signpost>div:last-child a,.guide-next a,.static-next a { font-size:15px; min-height:44px; }
.guide-article-layout,.static-layout { padding-block:48px 0; }
.article-contents { top:90px; border-top:1px solid var(--ink); }
.static-opening { background:var(--field-lavender-light); }
.static-opening h2,.static-principles h2,.static-next h2,.guide-answer h2,.guide-checklist h2,.guide-mistakes h2,.guide-next h2 { font-size:34px; line-height:1.15; }
.static-principles { padding-block:56px; }
.static-principles #principles-list>article { border:1px solid var(--ink); margin-top:14px; }
.guide-mistakes h2,.static-next h2 { color:#fffdfa; }
.guide-mistakes .eyebrow,.static-next .eyebrow { color:#ffad94; }
.guide-next { border:0; }
.article-related { margin-top:28px; }
@media(max-width:1199px) {
 .reading-layout,.profile-reading-layout,.guide-article-layout,.static-layout { grid-template-columns:165px minmax(0,1fr); gap:28px; }
 .home-page .discovery-hero,.hub-page .directory-hero,.guides-hero,.guide-article-hero,.static-hero { gap:24px; }
 .catalogue-visual ol { grid-template-columns:1fr; }
 .catalogue-visual li { padding:6px 10px; }
 .profile-comparison-feature { grid-template-columns:150px minmax(0,1fr); }
}
@media(max-width:959px) {
 :root { --section-space:56px; }
 .reading-layout,.profile-reading-layout,.guide-article-layout,.static-layout { display:block; max-width:820px; margin-inline:auto; }
 .reading-toc { position:static; padding:10px 16px; margin-bottom:28px; border:1px solid var(--ink); background:var(--field-lavender-light); }
 .reading-toc details>div { max-height:none; overflow:visible; }
 .reading-toc a { min-height:44px; font-size:15px; }
 .reading-toc summary { min-height:44px; }
 .home-page .discovery-hero h1,.hub-page .directory-hero h1,.casino-page h1,.guides-hero h1,.guide-article-hero h1,.static-hero h1 { font-size:36px; }
 .home-page .discovery-hero { grid-template-columns:1.2fr 1fr; }
 .catalogue-visual { padding:12px; }
 .article-contents { display:none; }
}
@media(max-width:719px) {
 :root { --section-space:44px; }
 .home-page .discovery-hero,.hub-page .directory-hero,.guides-hero,.guide-article-hero,.static-hero { grid-template-columns:1fr; padding-block:12px 24px; gap:18px; }
 .home-page .discovery-hero h1,.hub-page .directory-hero h1,.casino-page h1,.guides-hero h1,.guide-article-hero h1,.static-hero h1 { font-size:34px; line-height:1.1; letter-spacing:-.7px; margin:4px 0 10px; }
 .home-page .discovery-hero .hero-text { font-size:16px; line-height:1.6; }
 .home-page .directory { padding-block:32px; }
 .home-page .section-head h2,.profile-connections>.directory-section-heading h2 { font-size:32px; }
 .bonus-logo { height:38px; padding:3px; border:1px solid var(--line); }
 .bonus-logo img { height:30px; }
 .reading-heading h2 { font-size:32px; }
 .reading-body h3 { font-size:29px; }
 .reading-section>header { margin-bottom:22px; }
 .reading-intro { text-align:left; }
 .editorial-visual { padding:16px; }
 .editorial-visual:has(.editorial-feature) .type-tile { min-height:165px; }
 .type-tile>strong { font-size:105px; }
 .hub-page .directory-hero { padding-inline:0; }
 .catalogue-visual ol { grid-template-columns:1fr 1fr; gap:6px; margin-top:8px; }
 .catalogue-visual li { flex-wrap:wrap; font-size:13px; padding:8px; gap:6px; }
 .catalogue-visual li>span:last-child { display:none; }
 .hub-box-grid { grid-template-columns:1fr; gap:16px; }
 .directory-box { display:grid; grid-template-columns:88px minmax(0,1fr); gap:14px; padding:12px; }
 .hub-card-image { padding:6px; min-height:100px; }
 .directory-box .profile-logo-area { height:60px; }
 .directory-box .profile-logo-area img { width:100%; height:55px; }
 .directory-box h3 { font-size:25px; margin:0 0 10px; }
 main .hub-card-description { font-size:15px; line-height:1.55; margin-bottom:12px; }
 .directory-box-action { font-size:15px; }
 .profile-connections { padding:0 0 20px; margin-bottom:24px; }

 .profile-reading-column h2 { font-size:30px; }
 .profile-reading-column .profile-answer,.profile-reading-column .profile-research,.profile-reading-column .profile-recommendations { padding:18px; }
 .profile-reading-column .profile-answer h2 { font-size:27px; }
 .account-comparison,.payment-process ol { grid-template-columns:1fr; }
 .account-comparison>div { padding:18px; }
 .payment-process { padding:18px; }
 .profile-comparison-feature { grid-template-columns:1fr; }
 .profile-comparison-feature>.type-tile { min-height:165px; }
 .recommendation-grid { grid-template-columns:1fr; }
 .recommendation-grid .directory-box { grid-template-columns:65px minmax(0,1fr); gap:10px; padding:10px; }
 .recommendation-grid .directory-box h3 { font-size:23px; }
 .recommendation-grid .hub-card-image { padding:3px; }
 .author-box { padding:16px; gap:12px; }
 .author-box h2,.profile-reading-column .author-box h2 { font-size:24px; color:#fffdfa; }
 .notes-board,.guide-cover,.static-marker { height:155px; min-height:0; padding:12px; }
 .notes-board>div { left:12px; right:12px; top:42px; height:98px; padding:10px; transform:none; box-shadow:none; }
 .notes-board>div strong { font-size:80px; right:18px; top:10px; }
 .notes-board>div i { display:none; }
 .notes-board>div p { margin:0; max-width:65%; }
 .guide-cover>strong,.static-marker>strong { font-size:82px; margin:8px 0 0; }
 .guide-cover>p,.static-marker>p { left:auto; right:12px; bottom:10px; text-align:right; }
 .guide-cover>i,.static-marker>i { display:none; }
 .guide-cover>b,.static-marker>b { top:3px; bottom:auto; right:12px; font-size:28px; }
 .guide-cover>span,.static-marker>span { padding-right:30px; }
 .guide-library { grid-template-columns:1fr; gap:16px; }
 .library-card>a { grid-template-columns:85px minmax(0,1fr); grid-template-rows:1fr; }
 .library-art { border-right:1px solid var(--ink); border-bottom:0; padding:10px; }
 .library-card .library-art>strong { font-size:64px; margin-top:20px; letter-spacing:-3px; }
 .library-card h3 { font-size:23px; }
 .library-card a>div:last-child { padding:14px; }
 .guides-index-head { display:block; }
 .guides-index-head>p { text-align:left; margin-top:10px; }
 .guides-index-head>p br { display:none; }
 .guide-signpost { display:block; margin-top:36px; padding:20px; }
 .guide-signpost>div:first-child { padding-left:0; }
 .guide-signpost>div:first-child>span { display:none; }
 .guide-signpost>div:last-child { margin-top:20px; }
 .guide-article-layout,.static-layout { padding-top:36px; }
 .static-principles { padding-block:40px; }
 .static-opening,.static-next,.guide-mistakes { padding:20px; }
 .static-opening h2,.static-principles h2,.static-next h2,.guide-answer h2,.guide-checklist h2,.guide-mistakes h2,.guide-next h2 { font-size:30px; }
 .static-principles #principles-list>article { padding:14px; grid-template-columns:36px minmax(0,1fr); }
}
@media(max-width:359px) {
 .directory-box { grid-template-columns:65px minmax(0,1fr); gap:10px; }
 .directory-box h3 { font-size:23px; }
 .home-page .discovery-hero h1,.hub-page .directory-hero h1,.casino-page h1,.guides-hero h1,.guide-article-hero h1,.static-hero h1 { font-size:32px; }
 .library-card>a { grid-template-columns:65px minmax(0,1fr); }
 .library-card .library-art>strong { font-size:50px; }
 .library-card a>div:last-child { padding:12px; }
}
/* Keep titles and explanatory text readable in the shortest supported hero. */
main .library-card a>div:last-child>p:first-child { font-size:12px!important; }
.profile-reading-column .eyebrow { font-size:12px; line-height:1.5; }
@media(max-width:719px) {
}
main .notes-board>div p { font-size:12px!important; line-height:1.45; }
@media(max-width:719px) {
 .notes-board>div:after { content:none; }
 .notes-board>div p { max-width:68%; }
}
main .guide-cover>p,.guide-cover>b { color:var(--ink)!important; }

/* Larger casino image areas retain the existing card widths and grid columns. */
.casino-grid .bonus-logo { height:88px; padding:8px; }
.casino-grid .bonus-logo img { width:100%; max-width:180px; height:70px; object-fit:contain; }
@media(max-width:719px) {
 .casino-grid .bonus-logo { height:72px; padding:6px; }
 .casino-grid .bonus-logo img { max-width:150px; height:58px; }
}

/* Align the opening heading with the article when the contents rail uses two columns. */
@media(min-width:960px) and (max-width:1199px) {
 .homepage-reading>.reading-heading { max-width:none; margin-left:193px; }
}

/* Supplied static-page Markdown flows through the same editorial reading template. */
#marker-copy,#marker-note { white-space:pre-line; }
.static-copy { font-size:16px; line-height:1.8; }
.static-copy .static-introduction { padding:22px 24px; margin-bottom:48px; border:1px solid var(--ink); border-left:4px solid var(--red); background:var(--field-lavender-light); }
.static-copy-section { margin-bottom:56px; scroll-margin-top:16px; }
.static-copy-section:last-child { margin-bottom:0; }
.static-copy-section h2 { font:34px/1.2 var(--serif); margin:0 0 22px; letter-spacing:-.4px; }
.static-copy-section h3 { font:700 22px/1.4 var(--sans); margin:28px 0 14px; }
.static-copy p { font-size:16px; line-height:1.8; margin:0 0 18px; }
.static-copy p:last-child { margin-bottom:0; }
.static-copy ul,.static-copy ol { margin:18px 0 22px; padding-left:24px; }
.static-copy li { font-size:16px; line-height:1.8; padding-left:4px; margin-bottom:10px; }
.static-copy li::marker { color:var(--red-ink); }
.static-copy-section:first-of-type { padding:24px; background:var(--field-lavender-light); border:1px solid var(--ink); }
.static-copy-section.static-callout { padding:24px; background:#fff0e9; border:1px solid var(--ink); border-left:4px solid var(--red); }
.static-toc { align-self:start; }
.static-toc summary { cursor:pointer; font-size:16px; font-weight:700; min-height:44px; }
.static-toc a { display:flex; align-items:center; border-left:2px solid transparent; text-decoration:none; }
.static-toc a:hover { background:var(--field-lavender-light); }
.static-toc details>div { max-height:none; overflow:visible; }
@media(max-width:719px) {
 .static-copy-section { margin-bottom:40px; }
 .static-copy-section h2 { font-size:29px; margin-bottom:18px; }
 .static-copy-section h3 { font-size:21px; }
 .static-copy .static-introduction { margin-bottom:36px; padding:18px; }
 .static-copy-section:first-of-type,.static-copy-section.static-callout { padding:18px; }
}

/* Individual casino file: one compact identity row, four sourced facts.
   Scoped font sizes override the legacy main p:not(...) readability rule. */
.casino-page-hero.casino-file { display:block; padding:0; border:1px solid var(--field-ink); background:var(--paper); margin-block:8px 28px; }
.casino-file-top { display:grid; grid-template-columns:220px minmax(0,1fr) 96px; align-items:center; gap:24px; padding:20px; }
.casino-file-image { min-width:0; height:132px; padding:10px 14px; border:1px solid var(--field-ink); background:var(--field-lavender); display:flex; flex-direction:column; }
.casino-file-image-label { font:600 10px/1.4 var(--sans); letter-spacing:1px; text-transform:uppercase; color:inherit; }
.casino-file-logo { flex:1; min-height:0; display:flex; align-items:center; justify-content:center; }
.casino-file-logo img { display:block; width:100%; height:90px; max-height:100%; object-fit:contain; }
.casino-file-placeholder { display:flex; flex-direction:column; align-items:center; gap:4px; color:var(--field-ink); font:600 12px/1.4 var(--sans); text-align:center; }
.casino-file-placeholder>span { font:36px/1 var(--serif); }
.casino-file-copy { min-width:0; }
.casino-file-stamp-slot { display:grid; place-items:center; width:96px; height:96px; align-self:start; justify-self:end; }
.casino-file-stamp { width:80px; height:80px; font-size:10px; line-height:1.3; transform:rotate(-10deg); }
.casino-page .casino-file h1 { font:500 clamp(28px,2.8vw,40px)/1.12 var(--serif); letter-spacing:-.8px; text-transform:none; margin:0 0 8px; overflow-wrap:normal; }
.casino-file .casino-file-intro { font:400 15px/1.5 var(--sans); font-size:15px!important; color:#443d46; margin:0; max-width:720px; overflow-wrap:anywhere; }
.casino-file .casino-file-status { display:inline-block; max-width:100%; padding:3px 8px; margin:10px 0 0; border:1px solid var(--red-ink); color:var(--red-ink); background:var(--paper); font:600 12px/1.4 var(--sans); font-size:12px!important; }
.casino-file-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:1fr; gap:10px; margin:0; padding:12px 20px; border-top:1px solid var(--field-ink); background:var(--field-lavender-light); }
.casino-file-fact { min-width:0; border:1px solid var(--field-ink); padding:10px 12px; background:var(--paper); overflow-wrap:anywhere; }
.casino-file-fact dt { font:500 12px/1.4 var(--sans); color:#514a53; margin:0 0 3px; }
.casino-file-fact dd { font:700 18px/1.35 var(--sans); color:var(--field-ink); margin:0; }
.casino-file-fact dd small { display:block; margin-top:5px; font:400 12px/1.45 var(--sans); color:#514a53; }
.casino-file-bonus { background:#ffdfd2; border-color:var(--red-ink); }
.casino-file-stripe { height:4px; background:linear-gradient(to right,var(--field-vermilion) 0 25%,var(--field-ink) 25% 62%,var(--field-lavender) 62% 100%); }
@media(max-width:719px) {
 .casino-file-top { grid-template-columns:80px minmax(0,1fr); align-items:start; gap:12px; padding:14px 12px; }
 .casino-file-image { height:88px; padding:8px; }
 .casino-file-image { grid-column:1; grid-row:1; }
 .casino-file-stamp-slot { grid-column:2; grid-row:1; width:80px; height:80px; }
 .casino-file-stamp { width:68px; height:68px; font-size:9px; }
 .casino-file-copy { grid-column:1 / -1; grid-row:2; }
 .casino-file-image-label { display:none; }
 .casino-file-logo img { height:68px; }
 .casino-file-placeholder { font-size:11px; }
 .casino-file-placeholder>span { font-size:28px; }
 .casino-page .casino-file h1 { font-size:26px; line-height:1.1; letter-spacing:-.5px; margin-bottom:7px; }
 .casino-file .casino-file-intro { font-size:13px!important; line-height:1.45; }
 .casino-file .casino-file-status { font-size:12px!important; margin-top:8px; padding:3px 6px; }
 .casino-file-facts { grid-template-columns:repeat(2,minmax(0,1fr)); padding:10px 12px; gap:8px; }
 .casino-file-fact { padding:8px 10px; }
 .casino-file-fact dd { font-size:16px; }
}
@media(max-width:359px) {
 .casino-file-top { grid-template-columns:66px minmax(0,1fr); gap:10px; padding:12px 10px; }
 .casino-file-image { height:78px; padding:6px; }
 .casino-page .casino-file h1 { font-size:24px; }
 .casino-file-facts { padding:10px; }
}

/* Homepage hero promotion replaces the former discovery illustration. */
.home-page .discovery-hero { grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:28px; }

/* Featured homepage dossier; all styling is confined to this component. */
.featured-file { min-width:0; margin:0; }
.featured-file .featured-file-tab { display:table; position:relative; margin:0 0 -1px; padding:7px 14px; border:1px solid var(--field-ink); border-bottom-color:var(--field-lavender); background:var(--field-lavender); color:var(--field-ink); font:700 11px/1.4 var(--sans); font-size:11px!important; letter-spacing:.8px; text-transform:uppercase; z-index:1; }
.featured-file-frame { padding:10px; border:1px solid var(--field-ink); background:var(--field-lavender); }
.featured-file-card { display:grid; grid-template-columns:minmax(0,1fr) 110px; align-items:start; gap:14px; padding:16px; border:1px solid var(--field-ink); background:var(--paper); }
.featured-file-copy { min-width:0; }
.featured-file .featured-file-label { font:700 11px/1.4 var(--sans); letter-spacing:1px; margin:0 0 8px; }
.featured-file h2 { font:500 30px/1.12 var(--serif); letter-spacing:-.6px; margin:0 0 10px; }
.featured-file .featured-file-intro { font:400 14px/1.5 var(--sans); font-size:14px!important; color:var(--muted); max-width:590px; margin:0 0 14px; }
.featured-file-facts { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:8px; margin:0 0 14px; max-width:590px; }
.featured-file-facts>div { padding:8px 10px; border:1px solid var(--field-ink); background:var(--field-lavender-light); min-width:0; }
.featured-file-facts>div:last-child { background:#ffdfd2; }
.featured-file-facts dt { font:500 12px/1.4 var(--sans); color:var(--muted); margin-bottom:3px; }
.featured-file-facts dd { font:700 14px/1.4 var(--sans); color:var(--field-ink); margin:0; }
.featured-file-action { display:flex; align-items:center; gap:10px; }
.featured-file .bonus-button { display:flex; align-items:center; justify-content:center; min-height:44px; width:132px; max-width:100%; padding:10px 16px; border:1px solid var(--cta); border-radius:0; background:var(--cta); color:#fff; box-shadow:none; font:700 15px/1.4 var(--sans); text-align:center; cursor:default; opacity:1; }
.featured-file .bonus-button:focus-visible { outline:2px solid var(--field-ink); outline-offset:3px; }
.featured-file .featured-file-terms { font:400 11px/1.4 var(--sans); font-size:11px!important; color:var(--muted); margin:0; }
.featured-file-image { min-width:0; margin:0 5px 5px 0; border:1px solid var(--field-ink); aspect-ratio:1; background:#0050de; box-shadow:5px 5px 0 var(--field-vermilion); }
.featured-file-image img { display:block; width:100%; height:100%; object-fit:contain; }
@media(max-width:959px) {
 .home-page .discovery-hero { grid-template-columns:minmax(0,1fr); }
 .featured-file-card { gap:20px; padding:18px; grid-template-columns:minmax(0,1fr) minmax(130px,26%); }
}
@media(max-width:719px) {
 .featured-file-frame { padding:8px; }
 .featured-file-card { grid-template-columns:minmax(0,1fr) 82px; align-items:start; gap:12px; padding:12px; }
 .featured-file h2 { font-size:26px; }
 .featured-file .featured-file-intro { font-size:13px!important; line-height:1.45; }
 .featured-file-facts { grid-template-columns:minmax(0,1fr); gap:6px; }
 .featured-file-facts>div { padding:7px 8px; }
 .featured-file-facts dt { font-size:11px; }
 .featured-file-facts dd { font-size:14px; }
 .featured-file-action { flex-direction:column; align-items:stretch; gap:6px; }
 .featured-file .bonus-button { width:100%; }
 .featured-file .featured-file-terms { font-size:11px!important; text-align:center; }
 .featured-file-image { margin-top:2px; }
 .featured-file-image img { min-height:44px; }
}
@media(max-width:359px) {
 .featured-file-card { grid-template-columns:minmax(0,1fr) 66px; gap:10px; padding:10px; }
 .featured-file h2 { font-size:24px; }
}
