/* ===========================================================================
   OFFSHORE CASINOS — bpclaimoilspill.com
   Bespoke oil-rig / offshore design system. ALL colour lives in :root below.
   Motif: casino chips + oil-drop + ocean wave. Reserved CTA = teal (--cta),
   used on nothing but action buttons.
   =========================================================================== */
:root{
  /* chrome / ink */
  --ink:#0C1E29;          /* deep petroleum navy — footer, hero, headings */
  --ink-2:#14343F;        /* lighter petroleum — hero gradient, panels */
  --text:#182831;         /* body text */
  --muted:#5A686F;        /* meta / secondary text */
  /* accent (from the logo) */
  --gold:#E7A23A;         /* ranks, ribbons, eyebrows, stars, motif */
  --gold-d:#B97E1F;       /* gold hover / borders */
  --gold-soft:#FBEFD8;    /* gold wash backgrounds */
  /* bonus eye-catcher — the "rig flare" */
  --flare:#EC5626;
  --flare-soft:#FDEAE2;
  /* reserved CTA (buttons ONLY) */
  --cta:#0FB39A;
  --cta-d:#0B8E7B;
  /* surfaces */
  --bg:#F5F2EA;           /* warm shore off-white body */
  --paper:#FFFFFF;
  --line:#E5DECF;
  --line-2:#EFEADD;
  /* radii + shadow */
  --r:12px; --r-sm:8px; --r-lg:18px;
  --sh:0 1px 2px rgba(12,30,41,.06),0 6px 20px rgba(12,30,41,.07);
  --sh-lg:0 10px 34px rgba(12,30,41,.13);
  --wrap:1140px;
  --chip:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23E7A23A' d='M12 1a11 11 0 100 22 11 11 0 000-22zm0 3a8 8 0 018 8 8 8 0 01-.5 2.8l-2.6-1a5.2 5.2 0 00-1.9-6.4l1.3-2.5A7.9 7.9 0 0112 4zm-1 .1v2.9a5.2 5.2 0 00-3 8.9l-2 2A8 8 0 0111 4.1zM12 8.5a3.5 3.5 0 110 7 3.5 3.5 0 010-7z'/%3E%3C/svg%3E");
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);
  font:400 17px/1.68 "Source Sans 3","Segoe UI",system-ui,-apple-system,sans-serif;
  overflow-x:hidden;}
h1,h2,h3,h4{font-family:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;
  color:var(--ink);line-height:1.06;margin:0 0 .5em;font-weight:700;letter-spacing:.2px;}
h2{font-size:clamp(27px,3.4vw,38px);text-transform:none;}
h3{font-size:clamp(20px,2.3vw,25px);}
p{margin:0 0 1.05em}
a{color:var(--gold-d);text-decoration-thickness:1.5px;text-underline-offset:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
img{max-width:100%;height:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- section eyebrow (motif, not emoji) ---------- */
.eyebrow{display:flex;align-items:center;gap:9px;font:700 13px/1 "Barlow Condensed",sans-serif;
  letter-spacing:1.6px;text-transform:uppercase;color:var(--gold-d);margin:0 0 10px}
.eyebrow::before{content:"";width:22px;height:22px;background:var(--chip);background-size:contain;flex:0 0 auto}
.eyebrow::after{content:"";flex:1;height:2px;background:linear-gradient(90deg,var(--gold) 0,transparent 70%);border-radius:2px;opacity:.5;max-width:60px}

section{padding:46px 0}
section.alt{background:
  linear-gradient(180deg,rgba(231,162,58,.045),transparent 120px),var(--paper);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lead{font-size:19px;color:#33454d}

/* ===========================================================================
   MASTHEAD (non-sticky, light)
   =========================================================================== */
.bar{background:var(--paper);border-bottom:1px solid var(--line)}
.bar__in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;max-width:var(--wrap);margin:0 auto}
.bar__logo{display:inline-flex;align-items:center}
.bar__logo img{height:69px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:24px}
.nav a{color:var(--ink);font:600 15px/1 "Source Sans 3",sans-serif;text-decoration:none}
.nav a:hover{color:var(--gold-d)}
.nav__cta{margin-left:4px}
.burger{display:none;background:none;border:0;width:42px;height:42px;cursor:pointer;padding:9px}
.burger span{display:block;height:2.5px;background:var(--ink);border-radius:2px;margin:5px 0;transition:.25s}
#navtoggle{display:none}

/* ===========================================================================
   BUTTONS — reserved teal CTA (nowhere else)
   =========================================================================== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--cta);color:#fff;font:700 15px/1 "Source Sans 3",sans-serif;
  padding:13px 20px;border-radius:var(--r-sm);text-decoration:none;border:0;cursor:pointer;
  box-shadow:0 2px 0 var(--cta-d),0 6px 16px rgba(15,179,154,.28);transition:transform .12s,box-shadow .12s,background .12s;white-space:nowrap}
.btn:hover{background:var(--cta-d);transform:translateY(-1px);box-shadow:0 3px 0 var(--cta-d),0 10px 22px rgba(15,179,154,.34)}
.btn:active{transform:translateY(1px);box-shadow:0 1px 0 var(--cta-d)}
.btn__chev{font-size:17px;line-height:1;transform:translateY(-.5px)}
.btn--sm{padding:10px 15px;font-size:14px}
.btn--wide{width:100%}
.btn--ghost{background:transparent;color:var(--cta-d);box-shadow:inset 0 0 0 2px var(--cta)}
.btn--ghost:hover{background:var(--cta);color:#fff;box-shadow:inset 0 0 0 2px var(--cta)}

/* ===========================================================================
   HERO — compact petroleum band (keeps toplist above the fold)
   =========================================================================== */
.hero{position:relative;background:
  radial-gradient(120% 130% at 82% -10%,rgba(231,162,58,.16),transparent 46%),
  linear-gradient(160deg,var(--ink) 0%,var(--ink-2) 100%);
  color:#EAF1F3;overflow:hidden}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:34px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 40' preserveAspectRatio='none'%3E%3Cpath fill='%23F5F2EA' d='M0 40h1200V22c-140 14-260 14-410 4S480 6 300 12 90 26 0 20z'/%3E%3C/svg%3E") bottom/cover no-repeat}
.hero__in{max-width:var(--wrap);margin:0 auto;padding:30px 20px 46px;position:relative;z-index:1}
.hero h1{color:#fff;font-size:clamp(31px,5vw,50px);margin:0 0 12px;max-width:16ch}
.hero__lead{font-size:clamp(16px,2vw,19px);color:#C6D6DC;max-width:60ch;margin:0 0 18px}

/* byline — items intentionally designed with motif icons */
.byline{display:flex;flex-wrap:wrap;align-items:center;gap:14px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r);padding:12px 16px}
.byline__ph{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:0 0 auto;
  border:2px solid var(--gold);box-shadow:0 0 0 3px rgba(231,162,58,.18)}
.byline__who{display:flex;flex-direction:column;gap:2px;min-width:0}
.byline__name{color:#fff;font-weight:700;font-size:15.5px;text-decoration:none}
.byline__name:hover{color:var(--gold)}
.byline__role{color:#9FB4BC;font-size:12.5px}
.byline__meta{display:flex;flex-wrap:wrap;gap:6px 8px;margin-left:auto;align-items:center}
.byline__meta .mi{display:inline-flex;align-items:center;gap:6px;color:#CBDBE1;font-size:12.5px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:5px 11px 5px 9px;white-space:nowrap}
.byline__meta .mi svg{width:14px;height:14px;fill:var(--gold);flex:0 0 auto}
.hero__sep{width:1px;align-self:stretch;background:rgba(255,255,255,.14);margin:0 2px}

/* verified stamp near toplist */
.stamp{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);
  background:var(--gold-soft);border:1px solid #EBD6A6;border-radius:999px;padding:6px 14px;margin:0 0 18px}
.stamp svg{width:15px;height:15px;fill:var(--gold-d)}

/* ===========================================================================
   TOPLIST
   =========================================================================== */
.toplist{display:flex;flex-direction:column;gap:14px;counter-reset:rk}
.tcard{position:relative;display:grid;grid-template-columns:64px 132px 1fr 210px 168px;
  grid-template-areas:"rank logo info bonus cta" "rank logo tags bonus cta";
  align-items:center;column-gap:18px;row-gap:6px;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r);box-shadow:var(--sh);padding:18px 20px 18px 16px;transition:box-shadow .15s,transform .15s,border-color .15s}
.tcard .rank{grid-area:rank}.tcard .logo-chip{grid-area:logo}.tcard .tinfo{grid-area:info}
.tcard .tags{grid-area:tags}.tcard .bonus{grid-area:bonus}.tcard .tcta{grid-area:cta}
.tcard:hover{box-shadow:var(--sh-lg);transform:translateY(-2px);border-color:#DCCFA9}
.tcard--top{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),var(--sh-lg)}
.rank{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:56px;height:56px;border-radius:14px;background:linear-gradient(160deg,var(--ink),var(--ink-2));color:#fff}
.rank b{font:700 26px/1 "Barlow Condensed",sans-serif;color:var(--gold)}
.rank small{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#9FB4BC}
.tcard--top .rank{background:linear-gradient(160deg,var(--gold),var(--gold-d));}
.tcard--top .rank b{color:#fff}
.tcard--top .rank small{color:rgba(255,255,255,.85)}
.logo-chip{display:flex;align-items:center;justify-content:center;height:66px;background:#fff;
  border:1px solid var(--line);border-radius:10px;padding:8px}
.logo-chip img{max-height:46px;max-width:112px;object-fit:contain}
.tinfo{min-width:0}
.tinfo h3{margin:0 0 4px;font-size:22px}
.stars{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.stars b{color:var(--ink);font:700 14px/1 "Source Sans 3";font-family:inherit}
.stars .s{color:var(--gold);letter-spacing:1px}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.tag{font-size:11.5px;font-weight:600;color:#3d5058;background:var(--line-2);
  border:1px solid var(--line);border-radius:6px;padding:3px 8px;display:inline-flex;align-items:center;gap:5px}
.tag svg{width:12px;height:12px;fill:var(--gold-d)}
.tag--crypto{background:var(--gold-soft);border-color:#EBD6A6;color:var(--gold-d)}
/* bonus eye-catcher */
.bonus{border-left:1px solid var(--line);border-right:1px solid var(--line);padding:2px 14px;text-align:center}
.bonus .lbl{font:700 10.5px/1 "Source Sans 3";letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:4px}
.bonus .amt{font:800 25px/1.02 "Barlow Condensed",sans-serif;color:var(--flare);display:block;letter-spacing:.3px}
.bonus .sub{font-size:11.5px;color:var(--muted);display:block;margin-top:5px}
.tcta{display:flex;flex-direction:column;gap:7px;align-items:stretch}
.tcta .fine{font-size:11px;color:var(--muted);text-align:center}
.ribbon{position:absolute;top:-10px;left:16px;background:var(--gold);color:#3a2a05;
  font:700 11px/1 "Source Sans 3",sans-serif;letter-spacing:.4px;padding:5px 11px;border-radius:6px;box-shadow:var(--sh)}
.ribbon--flare{background:var(--flare);color:#fff}
.ribbon--ink{background:var(--ink);color:var(--gold)}

/* ===========================================================================
   TABLES
   =========================================================================== */
.tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);background:var(--paper)}
table.data{border-collapse:collapse;width:100%;min-width:640px;font-size:15px}
table.data th,table.data td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line-2)}
table.data thead th{background:var(--ink);color:#EAF1F3;font:700 13px/1.2 "Source Sans 3";letter-spacing:.4px;text-transform:uppercase;position:sticky;top:0}
table.data tbody tr:nth-child(even){background:#faf8f2}
table.data td b{color:var(--ink)}
.amt-f{color:var(--flare);font-weight:700}

/* ===========================================================================
   REVIEW CARDS
   =========================================================================== */
.review{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:22px;margin:0 0 20px}
.review__hd{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--line-2);padding-bottom:16px;margin-bottom:16px}
.review__chip{width:96px;height:56px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px;flex:0 0 auto}
.review__chip img{max-height:40px;max-width:84px;object-fit:contain}
.review__hd h3{margin:0}
.review__badge{font:700 12px/1 "Source Sans 3";color:var(--gold-d);background:var(--gold-soft);border:1px solid #EBD6A6;border-radius:6px;padding:6px 10px}
.review__score{margin-left:auto;text-align:center}
.review__score b{font:800 30px/1 "Barlow Condensed";color:var(--ink);display:block}
.review__score small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}
.subscores{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 22px;margin:6px 0 16px}
.ss{display:flex;flex-direction:column;gap:4px}
.ss .row{display:flex;justify-content:space-between;font-size:13px}
.ss .bar-t{height:6px;border-radius:4px;background:var(--line);overflow:hidden}
.ss .bar-t i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-d))}
.pc{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:6px}
.pc ul{list-style:none;margin:0;padding:0}
.pc li{position:relative;padding-left:26px;margin:0 0 8px;font-size:14.5px;line-height:1.5}
.pc li::before{position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.pc .pros li::before{content:"+";background:var(--gold-soft);color:var(--gold-d)}
.pc .cons li::before{content:"\2013";background:#fdeae2;color:var(--flare)}
.pc h4{font-family:"Source Sans 3";font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:0 0 8px}

/* ===========================================================================
   CONTENT bits
   =========================================================================== */
.prose h3{margin-top:1.5em}
.prose ul,.prose ol{margin:0 0 1.1em;padding-left:1.3em}
.prose li{margin:0 0 .5em}
.callout{background:var(--gold-soft);border:1px solid #EBD6A6;border-left:4px solid var(--gold);border-radius:var(--r-sm);padding:16px 18px;margin:0 0 1.2em}
.callout.flare{background:var(--flare-soft);border-color:#F6C9B8;border-left-color:var(--flare)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.qcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:18px}
.qcard h3{font-size:20px;margin-bottom:8px}
.qcard .route{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-weight:700;color:var(--ink)}
.qcard .route b{color:var(--gold-d)}

/* FAQ */
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--sh);margin:0 0 12px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:16px 48px 16px 18px;position:relative;
  font:700 18px/1.3 "Barlow Condensed",sans-serif;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);
  font:400 26px/1 "Source Sans 3";color:var(--gold-d)}
.faq details[open] summary::after{content:"\2013"}
.faq .ans{padding:0 18px 16px;font-size:15.5px}

/* author box */
.authorbox{display:flex;gap:18px;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:22px;flex-wrap:wrap}
.authorbox img{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid var(--gold-soft)}
.authorbox .ab__body{flex:1;min-width:220px}

/* sources */
.sources{font-size:14.5px;color:var(--muted)}
.sources li{margin:0 0 7px}

/* ===========================================================================
   FOOTER
   =========================================================================== */
.foot{background:var(--ink);color:#B9CBD2;margin-top:10px}
.foot__in{max-width:var(--wrap);margin:0 auto;padding:40px 20px 26px}
.foot__cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;margin-bottom:26px}
.foot img{height:40px;margin-bottom:12px}
.foot h4{color:#fff;font-family:"Source Sans 3";font-size:13px;letter-spacing:1px;text-transform:uppercase;margin:0 0 12px}
.foot a{color:#B9CBD2;text-decoration:none;display:block;margin:0 0 8px;font-size:14.5px}
.foot a:hover{color:var(--gold)}
.foot__rg{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-sm);padding:14px 16px;font-size:13px;color:#9FB4BC;margin-bottom:18px}
.foot__dis{font-size:12px;color:#7f939b;border-top:1px solid rgba(255,255,255,.1);padding-top:16px;line-height:1.6}
.foot__dis .ad{display:inline-block;font-weight:700;color:#B9CBD2;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:1px 6px;margin-right:6px}

/* ===========================================================================
   RESPONSIVE
   =========================================================================== */
@media(max-width:1000px){
  .tcard{grid-template-columns:56px 112px 1fr 172px;
    grid-template-areas:"rank logo info info" "rank logo tags tags" "rank logo bonus cta"}
  .tcard .bonus{border-left:0;text-align:left;padding-left:0}
  .foot__cols{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .nav{position:fixed;inset:0 0 0 auto;width:min(82vw,320px);background:var(--paper);
    flex-direction:column;align-items:stretch;gap:0;padding:76px 22px 22px;
    transform:translateX(102%);transition:transform .28s;box-shadow:var(--sh-lg);z-index:60}
  .nav a{padding:14px 4px;border-bottom:1px solid var(--line)}
  .nav__cta{margin:16px 0 0}
  #navtoggle:checked~.nav{transform:translateX(0)}
  #navtoggle:checked~.burger span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  #navtoggle:checked~.burger span:nth-child(2){opacity:0}
  #navtoggle:checked~.burger span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .burger{display:block;z-index:70}
  /* toplist -> centered stack, CTA last */
  .tcard{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:26px 16px 18px}
  .ribbon{left:50%;transform:translateX(-50%)}
  .rank{flex-direction:row;gap:6px;width:auto;height:auto;padding:5px 12px;border-radius:999px}
  .rank small{display:none}
  .logo-chip{width:100%;max-width:200px}
  .tcard .bonus{border:0;order:2;background:var(--flare-soft);border-radius:var(--r-sm);padding:14px 16px;width:100%;text-align:center}
  .bonus .amt{font-size:28px}
  .tinfo{order:1}
  .tags{order:3;justify-content:center}
  .tcta{order:4;width:100%}
  .pc{grid-template-columns:1fr}
  .review__score{margin-left:0}
  .foot__cols{grid-template-columns:1fr}
  /* compact hero so the toplist clears the fold */
  .hero__in{padding:14px 20px 16px}
  .hero::after{height:14px}
  .hero h1{font-size:26px;line-height:1.03;margin-bottom:8px}
  .hero__lead{font-size:14.5px;line-height:1.45;margin-bottom:12px}
  .bar__logo img{height:60px}
  #toplist{padding-top:14px}
  #toplist>.wrap>.stamp{margin-bottom:12px}
  #toplist>.wrap>h2{font-size:25px;margin-bottom:8px}
  .byline{gap:10px;padding:10px 12px}
  .byline__ph{width:44px;height:44px}
  .byline__name{font-size:14.5px}.byline__role{font-size:12px}
  .byline__meta{margin-left:0;width:100%;flex-wrap:nowrap;overflow-x:auto;
    -webkit-overflow-scrolling:touch;padding-bottom:2px;scrollbar-width:none}
  .byline__meta::-webkit-scrollbar{display:none}
  .byline__meta .mi{flex:0 0 auto}
}
@media(max-width:380px){
  body{font-size:16px}
  .bonus .amt{font-size:24px}
  .tinfo h3{font-size:20px}
}
