@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600;700&family=Sora:wght@400;500;600;700;800&display=swap');
:root{--bg:#0B1F33;--surface:#14324A;--sea:#1F6F78;--gold:#E8A317;--success:#3DDC97;--text:#F5F7FA;--muted:#9BB0C3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:'IBM Plex Sans',sans-serif;line-height:1.65}a{color:inherit;text-underline-offset:4px}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{max-width:1280px;margin:auto;padding:76px 40px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1200px)/2));background:#0b1f33f5;border-bottom:1px solid #9bb0c333;position:sticky;top:0;z-index:20;backdrop-filter:blur(16px)}.identity{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Sora,sans-serif;font-size:19px;letter-spacing:1px;line-height:1.25}.identity strong{color:var(--gold)}.identity small{display:block;font-size:8px;letter-spacing:2.5px;margin-top:5px;color:var(--muted)}nav{display:flex;gap:30px;font-size:14px}nav a{text-decoration:none}.safety{display:flex;justify-content:space-between;gap:14px;max-width:1200px;margin:auto;padding:14px 0;font-size:12px;color:var(--muted)}.safety b{color:var(--text)}h1,h2,h3,.footer-brand{font-family:Sora,sans-serif;line-height:1.15;letter-spacing:-1.6px}h1{font-size:clamp(42px,4.5vw,68px);font-weight:700;margin:22px 0}h1 em{font-style:normal;color:var(--gold)}h2{font-size:38px;margin:12px 0 22px}h3{font-size:25px;letter-spacing:-.7px}p{margin:0 0 20px}.eyebrow{font:500 11px 'IBM Plex Mono',monospace;letter-spacing:2px;color:var(--success)}.hero{display:grid;grid-template-columns:1.18fr 1fr;gap:42px;align-items:center;padding-top:48px;padding-bottom:64px}.hero-sub{font-size:20px;max-width:460px;color:#d4dee7}.button{display:flex;justify-content:space-between;align-items:center;gap:35px;background:var(--gold);color:var(--bg);text-decoration:none;padding:15px 21px;font-weight:700;border-radius:5px;transition:background .2s}.button:hover{background:#ffc34d}.hero .button{display:inline-flex;margin:10px 0 14px}.fine{font-size:12px;color:var(--muted)}.hero-note{font-size:13px;color:var(--muted);border-left:2px solid var(--sea);padding-left:15px;margin-top:24px}.hero-art{position:relative;height:440px;background:radial-gradient(ellipse at center,#1f6f7855,transparent 67%),repeating-linear-gradient(0deg,transparent,transparent 39px,#9bb0c30c 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,#9bb0c30c 40px);border:1px solid #9bb0c326;border-radius:50% 50% 8px 8px;display:flex;align-items:center;justify-content:center}.latitude{position:absolute;top:32px;font:9px 'IBM Plex Mono';letter-spacing:2px;color:var(--muted)}.compass{width:300px;height:300px;border:1px solid #9bb0c370;border-radius:50%;position:relative;box-shadow:0 0 0 12px #9bb0c309,0 0 0 13px #9bb0c32a;background:repeating-conic-gradient(from 0deg,#9bb0c355 0deg 1deg,transparent 1deg 15deg);}.compass span{position:absolute;font:12px 'IBM Plex Mono';color:var(--gold);z-index:2}.north{top:10px;left:48%}.south{bottom:10px;left:48%}.east{right:12px;top:47%}.west{left:12px;top:47%}.compass-inner{position:absolute;inset:33px;background:var(--bg);border-radius:50%;border:1px solid #9bb0c350;display:grid;place-items:center}.needle{position:absolute;width:110px;height:205px;background:linear-gradient(110deg,var(--gold) 50%,#a86a0b 50%);clip-path:polygon(50% 0,64% 40%,100% 50%,64% 60%,50% 100%,36% 60%,0 50%,36% 40%);transform:rotate(30deg)}.compass b{background:var(--bg);border:1px solid var(--gold);border-radius:50%;padding:12px;font:600 18px Sora;z-index:1}.chart-label{position:absolute;bottom:15px;left:20px;font:9px/1.8 'IBM Plex Mono';letter-spacing:1px;color:var(--muted)}.chart-label strong{color:var(--text)}.art-index{position:absolute;right:20px;bottom:20px;font:12px 'IBM Plex Mono';color:var(--gold)}.trust-strip{padding:22px 32px;display:flex;justify-content:center;gap:45px;background:var(--surface);border-block:1px solid #9bb0c326;font-size:13px}.trust-strip a{color:var(--success)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-head>p{font-size:14px;color:var(--muted)}.crew-control{display:flex;justify-content:space-between;align-items:center;padding:19px 22px;background:var(--surface);border:1px solid #9bb0c330;border-radius:8px;margin:24px 0}.crew-control>div:first-child{display:flex;align-items:center;gap:16px}.mini-compass{font-size:42px;color:var(--gold)}.crew-control b{font:11px 'IBM Plex Mono';letter-spacing:1px}.crew-control small{display:block;color:var(--muted);font-size:12px}.pick-buttons{display:flex;gap:8px}.pick-buttons button{background:var(--bg);border:1px solid #9bb0c355;color:var(--text);padding:10px 12px;border-radius:4px;cursor:pointer;font-size:12px}.pick-buttons button[aria-pressed=true]{background:var(--gold);color:var(--bg);border-color:var(--gold)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.brand-card{background:var(--surface);border:1px solid #9bb0c32d;border-radius:8px;padding:22px 19px;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}.brand-card.selected{border-color:var(--gold);box-shadow:0 -3px 0 var(--gold)}.card-top{display:flex;justify-content:space-between;gap:3px;font:8px 'IBM Plex Mono';color:var(--muted)}.selected-label{color:var(--gold);visibility:hidden;font-size:7px}.selected .selected-label{visibility:visible}.logo{height:100px;margin:18px 0 8px;display:flex;align-items:center;justify-content:center}.logo img{object-fit:contain;width:100%;height:80px}.brand-card h3{margin:12px 0}.brand-card>p{font-size:14px;color:#c1d0dc;min-height:92px}.brand-card [data-offer]{margin-top:auto}.offer{font-weight:600;font-size:15px;min-height:50px;margin:0 0 8px}.brand-card .button{font-size:13px;gap:5px;padding:13px}.review-link{font-size:12px;display:flex;justify-content:space-between;margin-top:20px}.picks>.fine{margin-top:20px}.table-scroll{overflow-x:auto;border:1px solid #9bb0c340;border-radius:8px;margin-top:24px}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;min-width:720px}th,td{padding:23px 25px;border-bottom:1px solid #9bb0c326}thead{background:var(--surface);color:var(--muted);font-size:12px}tbody tr:last-child>*{border:0}td a{color:var(--gold)}.course{display:grid;grid-template-columns:1fr 1fr;gap:100px;border-block:1px solid #9bb0c32a}.course p{color:#c1d0dc}.text-link{color:var(--gold)}.check-list>div{display:flex;gap:24px;border-bottom:1px solid #9bb0c330;padding:20px 0}.check-list b{color:var(--gold);font:14px 'IBM Plex Mono'}.check-list strong{display:block;color:var(--text);margin-bottom:7px}.check-list p{font-size:15px;margin:0}.faq{max-width:1000px;padding-bottom:100px}details{border-bottom:1px solid #9bb0c33b;padding:23px 0}summary{cursor:pointer;font-weight:600;list-style:none;padding-right:25px;position:relative}summary:after{content:'+';position:absolute;right:2px;color:var(--gold)}details[open] summary:after{content:'−'}details p{color:#c1d0dc;margin:20px 0 0;max-width:760px}footer{padding:60px max(32px,calc((100vw - 1200px)/2));background:#081827;display:grid;grid-template-columns:1fr 1fr;gap:35px}.footer-brand{font-size:24px;font-weight:700;text-decoration:none;letter-spacing:-.6px}.footer-brand span{color:var(--gold)}footer p{color:var(--muted);font-size:14px;margin-top:16px}.footer-links{display:flex;flex-wrap:wrap;justify-content:end;align-content:start;gap:20px;font-size:13px}footer>.fine{grid-column:1/-1;border-top:1px solid #9bb0c333;padding-top:24px;margin-bottom:0}.mobile-cta{display:none}.skip{position:fixed;top:-100px;z-index:100;background:var(--gold);color:var(--bg);padding:10px}.skip:focus{top:0}.article{max-width:900px}.article h1{font-size:48px}.article h2{font-size:27px;margin-top:42px}.article p,.article li{color:#d0dce6;font-size:17px}.article .lede{font-size:22px;color:var(--muted)}.article .review-banner{padding:28px;background:var(--surface);border-left:3px solid var(--gold);margin:35px 0}.article .review-banner .button{display:inline-flex}.article .breadcrumbs{font-size:13px;color:var(--muted)}.region-note{padding:15px;background:var(--bg);color:var(--muted);font-size:14px}.error{text-align:center;min-height:55vh}.error h1{color:var(--gold)}
@media(max-width:1000px){.cards{grid-template-columns:1fr 1fr}.safety{padding:12px 25px}.crew-control{align-items:start;gap:15px;flex-direction:column}.hero-art{height:360px}.compass{width:250px;height:250px}.needle{height:160px}.trust-strip{gap:20px;flex-wrap:wrap}.course{gap:40px}.card-top{font-size:10px}.selected-label{font-size:9px}}
@media(max-width:600px){header{height:75px;padding:0 20px}.identity{font-size:15px;gap:8px}.identity img{width:35px;height:35px}.identity small{font-size:6px}nav{gap:14px;font-size:12px}nav a:nth-child(n+2){display:none}.safety{padding:12px 20px;font-size:10px;display:block}.safety>span{display:block;margin:2px 0}.wrap{padding:48px 22px}.hero{grid-template-columns:1fr;gap:15px;padding-top:32px}h1{font-size:42px;letter-spacing:-2px;margin:18px 0}.hero-sub{font-size:18px}.hero .button{width:100%}.hero-note{margin-bottom:0}.hero-art{height:325px;margin-top:15px}.latitude{top:24px;font-size:8px}.compass{width:220px;height:220px}.needle{height:145px;width:85px}.compass-inner{inset:28px}.compass b{font-size:15px;padding:10px}.chart-label{font-size:8px;bottom:10px}.trust-strip{justify-content:start;padding:20px 22px;gap:12px 20px;font-size:11px}.section-head{display:block}h2{font-size:30px}.section-head>p{font-size:14px}.crew-control{padding:15px}.pick-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%}.pick-buttons button{text-align:left}.cards{grid-template-columns:1fr;gap:22px}.brand-card{padding:23px}.brand-card>p{min-height:0}.logo{height:85px}.logo img{max-width:240px}.offer{min-height:0}.brand-card .button{font-size:16px}.review-link{font-size:14px}.course{grid-template-columns:1fr;gap:15px}.faq{padding-bottom:60px}footer{padding:45px 22px 95px;grid-template-columns:1fr;gap:20px}.footer-links{justify-content:start}footer>.fine{grid-column:1}.article h1{font-size:36px}.article .lede{font-size:20px}.article h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.icon{display:inline-block;width:16px;height:16px;vertical-align:middle;flex-shrink:0}.mini-compass{display:flex}

/* Canada directory: compact tiles below the featured compass picks. */
.partners{border-top:1px solid var(--sea)}.partner-intro{max-width:760px;color:var(--muted)}.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:32px 0 24px}.partner-card{min-width:0;padding:24px;background:var(--surface);border-top:3px solid var(--sea);border-radius:6px;display:flex;flex-direction:column}.partner-logo{height:104px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #9bb0c333;margin-bottom:20px}.partner-logo img{max-width:100%;width:240px;height:90px;object-fit:contain}.partner-card h3{font-size:21px;letter-spacing:-.5px;margin:0 0 14px}.partner-card>p{color:var(--muted);flex:1}.partner-card .button{min-height:48px;font-size:14px;padding:12px 15px;gap:12px}.partner-review{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding-top:12px;color:var(--success);font-size:14px}.partner-card .region-note{margin:0;padding:12px 0}@media(max-width:1000px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.partner-grid{grid-template-columns:1fr}.partner-card{padding:20px}}

/* Full-width nautical chart and featured operator offer. */
.hero{display:block;padding:0;background:radial-gradient(ellipse at 78% 40%,#24687170,transparent 60%),radial-gradient(ellipse at 5% 95%,#1f6f7830,transparent 55%),repeating-linear-gradient(0deg,transparent 0 47px,#9bb0c30a 48px),repeating-linear-gradient(90deg,transparent 0 47px,#9bb0c30a 48px),linear-gradient(120deg,#081827,#102c43 65%,#0b1f33);border-block:1px solid #9bb0c326;overflow:hidden}
.hero-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center;padding-top:46px;padding-bottom:48px}.hero-copy{position:relative;z-index:1}.hero-logo{display:inline-flex;align-items:center;justify-content:center;padding:8px 22px;border:1px solid #5fbbba55;border-radius:10px;background:linear-gradient(130deg,#154954,#102438);box-shadow:0 12px 35px #0003}.hero-logo img{width:240px;height:80px;object-fit:contain}.hero h1{font-size:clamp(38px,4vw,58px);max-width:650px;margin:22px 0 16px}.hero .hero-sub{margin-bottom:12px}.hero-note{max-width:400px;margin-top:20px}.hero-art{background:radial-gradient(circle,#2d929528,transparent 68%);box-shadow:0 0 100px #3ddc9707}.hero-copy>.fine{margin-bottom:0}nav{align-items:center;gap:24px}.nav-cta{font-size:13px;padding:12px 16px;min-height:44px}.nav-mobile{display:none}.logo,.partner-logo{padding:12px;border:1px solid #9bb0c32a;border-radius:8px;background:linear-gradient(135deg,#1b4a58,#0b1f33);box-shadow:inset 0 1px 0 #ffffff08}.logo{height:112px}.logo img{height:80px}#acelucky .logo{background:linear-gradient(135deg,#382b55,#171e34)}#lekkerbets .logo{background:linear-gradient(135deg,#275241,#102b2d)}#africasports .logo{background:linear-gradient(135deg,#4a3920,#17293b)}.partner-logo{height:116px}.brand-card,.partner-card{transition:transform .2s,border-color .2s,box-shadow .2s}.mobile-offer{display:none}
@media(hover:hover){.brand-card:hover,.partner-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0003}}
@media(max-width:767px){header{height:75px;padding:0 20px}.identity{font-size:15px;gap:8px}.identity img{width:35px;height:35px}.identity small{font-size:6px}nav>a:not(.nav-cta){display:none}nav a.nav-cta{display:flex;min-width:94px;justify-content:center;padding:10px 12px}.nav-desktop{display:none}.nav-mobile{display:inline}.hero-layout{grid-template-columns:1fr;gap:0;padding:28px 22px 32px}.hero-logo img{width:220px;height:70px}.hero .eyebrow{margin-bottom:16px}.hero h1{font-size:38px;letter-spacing:-1.5px;margin-top:20px}.hero .hero-sub{font-size:18px}.hero .button{width:100%;margin:8px 0 12px;min-height:52px}.hero .fine{font-size:11px}.hero-note{font-size:12px;margin-top:16px;margin-bottom:0}.hero-art{position:absolute;width:300px;height:300px;right:-150px;opacity:.13;pointer-events:none;transform:rotate(-15deg)}.hero-layout{position:relative}.hero-art .latitude,.hero-art .chart-label,.hero-art .art-index{display:none}.mobile-offer:not([hidden]){display:grid;gap:4px;position:fixed;bottom:0;left:0;right:0;padding:10px 16px max(8px,env(safe-area-inset-bottom));background:#081827f5;border-top:1px solid #9bb0c344;backdrop-filter:blur(16px);z-index:15;box-shadow:0 -8px 30px #0004}.mobile-offer .button{min-height:48px;padding:10px 18px}.mobile-offer .fine{text-align:center;font-size:10px}body:has(.mobile-offer) footer{padding-bottom:125px}.brand-card:active,.partner-card:active{transform:scale(.99)}.pick-buttons button{min-height:44px}}

/* Casino offer hero and prominent review branding. */
.hero{background:radial-gradient(ellipse at 80% 48%,#b67b2440,transparent 48%),radial-gradient(ellipse at 12% 10%,#287e8545,transparent 50%),linear-gradient(115deg,#081526,#102b43 58%,#161e32)}
.hero-layout{grid-template-columns:1.1fr 1fr;gap:70px;padding-block:42px}.hero-copy{padding:30px;border:1px solid #e8a31766;border-radius:18px;background:linear-gradient(145deg,#183b50ee,#0c2035f5);box-shadow:0 24px 60px #020b1855,inset 0 1px #fff1}.hero-logo{display:flex;background:linear-gradient(120deg,#205765,#152f49);border-color:#79b6b74d}.hero h1{font-size:44px}.hero .button{display:flex;width:100%;box-shadow:0 6px 24px #e8a31730;min-height:54px}.hero .eyebrow{color:#f2c46c;letter-spacing:1.5px}.hero-note{margin-top:14px}
.casino-stage{height:470px;position:relative;perspective:1000px}.casino-halo{position:absolute;inset:15px -40px;border:1px solid #e8a31733;border-radius:50%;box-shadow:0 0 0 22px #e8a31708,0 0 90px #e8a31712;background:repeating-conic-gradient(#e8a31720 0deg 1deg,transparent 1deg 15deg)}.playing-card{position:absolute;width:195px;height:275px;border-radius:18px;border:2px solid #c69a55;background:linear-gradient(140deg,#29495d,#122339);box-shadow:0 24px 45px #020b1899;padding:20px;color:#f6d69d;font-family:Georgia,serif}.playing-card span{font-size:28px}.playing-card b{display:block;font-size:115px;text-align:center;line-height:1.4}.playing-card small{display:block;text-align:right;font-size:22px}.card-back{top:40px;left:35px;transform:rotate(-21deg);color:#ffb38c;background:linear-gradient(140deg,#634339,#261f30)}.card-front{top:75px;left:170px;transform:rotate(12deg)}.casino-chip{position:absolute;display:grid;place-items:center;width:100px;height:100px;border:10px dashed #f3cc83;border-radius:50%;background:#15525b;box-shadow:0 7px 0 #092c34,0 16px 26px #0006;color:#f3cc83;font:700 25px Sora;transform:rotate(-18deg)}.chip-one{left:65px;bottom:90px}.chip-two{left:145px;bottom:62px;background:#56402b;transform:rotate(13deg)}.stage-caption{position:absolute;bottom:0;left:30px}.stage-caption span{font:11px 'IBM Plex Mono';letter-spacing:3px;color:#e8a317}.stage-caption strong{display:block;font:600 24px Sora;margin-top:9px}
.review-hero{padding:28px;margin:24px 0;border:1px solid #e8a31755;border-radius:14px;background:radial-gradient(ellipse at top right,#a77c3233,transparent 65%),linear-gradient(125deg,#194654,#10243c)}.review-logo{display:flex;align-items:center;justify-content:center;max-width:330px;min-height:140px;margin-bottom:24px;padding:14px;background:linear-gradient(135deg,#235362,#11273e);border:1px solid #91b8bc44;border-radius:10px}.review-logo img{width:260px;max-width:100%;height:110px;object-fit:contain}.article .review-hero .eyebrow{font-size:11px;color:var(--success)}.review-hero h1{margin-bottom:0}
@media(max-width:1000px) and (min-width:768px){.hero-layout{gap:24px;grid-template-columns:1.2fr 1fr}.card-front{left:90px}.card-back{left:0}.playing-card{width:165px}.hero h1{font-size:36px}}
@media(max-width:767px){.hero-layout{display:block;padding:22px 16px 28px}.hero-copy{padding:22px 18px;border-radius:14px}.hero h1{font-size:34px;margin:18px 0 14px}.hero .eyebrow{font-size:10px;line-height:1.5;margin-bottom:14px}.hero-logo img{width:240px;height:80px}.hero .hero-sub{font-size:18px}.hero-note{font-size:11px}.casino-stage{display:none}.review-hero{padding:20px;margin-top:20px}.review-logo{padding:10px;min-height:130px}.article .review-hero h1{font-size:31px}.article:has(.review-hero){padding-top:26px}.article .review-banner{padding:22px}.nav-cta{max-width:160px}}
