*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:62.5%;scroll-behavior:smooth}
body{font-family:"Outfit",system-ui,sans-serif;font-size:1.7rem;line-height:1.7;color:#334155;background:#F1F5F9;min-height:100vh;display:flex;flex-direction:column}
img{max-width:100%;height:auto;display:block}
a{color:#5B21B6;text-decoration:none;transition:color .2s}
a:hover{color:#7C3AED}
.container{width:100%;max-width:120rem;margin:0 auto;padding:0 2.4rem}
:root{--widget-scale:.78}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid #E2E8F0}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.4rem 0}
.site-logo{display:flex;align-items:center;gap:1rem;font-weight:700;color:#1E293B}
.site-logo img{height:4rem;width:auto}
.site-nav ul{display:flex;gap:.4rem;list-style:none}
.site-nav a{display:block;padding:.8rem 1.4rem;font-size:1.5rem;font-weight:500;color:#475569;border-radius:.8rem;transition:background .2s,color .2s}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:#EDE9FE;color:#5B21B6}
.menu-toggle{display:none;flex-direction:column;gap:.5rem;padding:.8rem;background:none;border:none;cursor:pointer}
.menu-toggle span{display:block;width:2.4rem;height:.2rem;background:#1E293B;border-radius:2px;transition:transform .2s,opacity .2s}
.menu-toggle--active span:nth-child(1){transform:translateY(.7rem) rotate(45deg)}
.menu-toggle--active span:nth-child(2){opacity:0}
.menu-toggle--active span:nth-child(3){transform:translateY(-.7rem) rotate(-45deg)}

/* Hero */
.hero{background:linear-gradient(135deg,#1E1B4B 0%,#5B21B6 50%,#7C3AED 100%);color:#fff;padding:5rem 0 4rem;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(251,191,36,.15) 0%,transparent 50%);pointer-events:none}
.hero__inner{position:relative;width:100%}
.hero__badge{display:inline-block;margin-bottom:1.6rem;padding:.5rem 1.2rem;font-size:1.3rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:10rem}
.hero__title{font-family:"Libre Baskerville",Georgia,serif;font-size:clamp(2.8rem,5vw,4.4rem);font-weight:700;line-height:1.2;margin-bottom:1.6rem;max-width:90rem}
.hero__lead{font-size:1.8rem;line-height:1.65;color:rgba(255,255,255,.88);max-width:100%}
.hero__stats{display:flex;flex-wrap:wrap;gap:2rem;margin-top:3rem;padding-top:2.4rem;border-top:1px solid rgba(255,255,255,.15)}
.hero__stat-num{display:block;font-size:2.8rem;font-weight:700;color:#FBBF24}
.hero__stat-label{font-size:1.3rem;color:rgba(255,255,255,.7)}

/* Main layout */
main{flex:1}
.section{padding:4rem 0}
.section--white{background:#fff}
.section__title{font-family:"Libre Baskerville",Georgia,serif;font-size:2.8rem;font-weight:700;color:#1E293B;margin-bottom:1.2rem;line-height:1.25}
.section__subtitle{font-size:1.7rem;color:#64748B;margin-bottom:3rem}
.content-block{width:100%;max-width:none}
.content-block p{margin-bottom:1.6rem;text-align:left}
.content-block h2{font-family:"Libre Baskerville",Georgia,serif;font-size:2.4rem;color:#1E293B;margin:3.6rem 0 1.2rem;line-height:1.3}
.content-block h3{font-size:1.9rem;font-weight:600;color:#334155;margin:2.4rem 0 1rem}
.content-block h4{font-size:1.7rem;font-weight:600;color:#475569;margin:1.8rem 0 .8rem}
.content-block ul,.content-block ol{margin:1.2rem 0 1.6rem 2rem}
.content-block li{margin-bottom:.6rem}
.content-block img.article-img{display:inline-block;width:auto;max-width:16rem;height:auto;margin:1.6rem 0;border-radius:.6rem;box-shadow:none;vertical-align:middle}

/* Widget */
.widget-wrap{width:100%;margin:2.4rem 0;padding:0;background:transparent;border:none;box-shadow:none;overflow:hidden}
.widget-wrap__scale{width:calc(100% / var(--widget-scale));transform:scale(var(--widget-scale));transform-origin:top left}
.widget-wrap iframe{width:100%;border:none;display:block;overflow:hidden}

/* Casino blocks */
.casino-grid{display:flex;flex-direction:column;gap:3rem;margin:2.4rem 0;width:100%}
.casino-card{width:100%;padding:0 0 2.4rem;border-bottom:1px solid #E2E8F0;background:transparent;box-shadow:none;border-radius:0}
.casino-card:last-child{border-bottom:none;padding-bottom:0}
.casino-card__head{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem}
.casino-card__rank{display:inline-flex;align-items:center;justify-content:center;min-width:2.8rem;height:2.8rem;padding:0 .6rem;font-size:1.3rem;font-weight:700;color:#fff;background:#5B21B6;border-radius:.4rem;flex-shrink:0}
.casino-card__name{font-family:"Libre Baskerville",Georgia,serif;font-size:2rem;color:#1E293B;margin:0}
.casino-table{width:100%;border-collapse:collapse;margin:1.2rem 0 1.6rem;font-size:1.5rem;border:1px solid #CBD5E1;table-layout:fixed}
.casino-table th,.casino-table td{padding:.9rem 1.2rem;text-align:left;border:1px solid #E2E8F0;vertical-align:top}
.casino-table th{width:28%;font-weight:600;color:#475569;background:#F8FAFC}
.casino-table td{color:#1E293B;font-weight:400;background:#fff}
.casino-table tbody tr:nth-child(even) td{background:#FAFBFC}
.score-badge{display:inline-block;padding:.2rem .8rem;font-size:1.4rem;font-weight:700;color:#059669;background:#D1FAE5;border-radius:.4rem}

/* Criteria grid */
.criteria-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin:2.4rem 0;width:100%}
.criteria-item{padding:2rem;background:#F8FAFC;border-radius:1.2rem;border-left:.4rem solid #5B21B6}
.criteria-item h3{font-size:1.7rem;margin-bottom:.8rem;color:#1E293B}
.criteria-item p{font-size:1.5rem;color:#64748B;margin:0;line-height:1.6}

/* Lists styled */
.feature-list{list-style:none;margin:2rem 0;padding:0}
.feature-list li{position:relative;padding:1.2rem 1.2rem 1.2rem 3.6rem;margin-bottom:1rem;background:#fff;border-radius:1rem;border:1px solid #E2E8F0;font-size:1.6rem}
.feature-list li::before{content:"";position:absolute;left:1.2rem;top:1.6rem;width:.8rem;height:.8rem;background:#5B21B6;border-radius:50%}
.warning-list li{border-left:.4rem solid #EF4444}
.warning-list li::before{background:#EF4444}

/* Payment pills */
.payment-row{display:flex;flex-wrap:wrap;gap:1.2rem;margin:2rem 0}
.payment-pill{display:flex;align-items:center;gap:1rem;padding:1.2rem 1.6rem;background:#fff;border:1px solid #E2E8F0;border-radius:1rem;min-width:14rem}
.payment-pill img{width:2.2rem;height:2.2rem;object-fit:contain;flex-shrink:0}
.payment-pill span{font-weight:600;font-size:1.5rem;color:#1E293B}

/* Author byline */
.author-byline{display:flex;align-items:center;gap:1.6rem;margin:3rem 0;padding:1.6rem 2rem;background:#fff;border-radius:1.2rem;border:1px solid #E2E8F0;box-shadow:0 2px 12px rgba(30,27,75,.04)}
.author-byline__avatar{width:5.6rem;height:5.6rem;border-radius:50%;object-fit:cover;border:.3rem solid #EDE9FE;flex-shrink:0}
.author-byline__name{font-size:1.7rem;font-weight:700;color:#1E293B}
.author-byline__role{font-size:1.4rem;color:#64748B}
.author-byline__meta{font-size:1.3rem;color:#94A3B8;margin-top:.4rem}

/* Author card full */
.author-card-full{width:100%;display:grid;grid-template-columns:auto 1fr;gap:3rem;padding:3rem;background:linear-gradient(135deg,#1E1B4B,#5B21B6);border-radius:1.6rem;color:#fff;margin:3rem 0}
.author-card-full__avatar{width:11rem;height:11rem;border-radius:1.2rem;object-fit:cover;border:.3rem solid rgba(255,255,255,.2)}
.author-card-full__name{font-family:"Libre Baskerville",Georgia,serif;font-size:3rem;margin-bottom:.4rem}
.author-card-full__role{font-size:1.6rem;color:rgba(255,255,255,.75);margin-bottom:1.6rem}
.author-card-full__bio{font-size:1.6rem;line-height:1.7;color:rgba(255,255,255,.9);margin-bottom:2rem}
.author-tags{display:flex;flex-wrap:wrap;gap:.8rem;list-style:none}
.author-tags li{padding:.5rem 1.2rem;font-size:1.3rem;font-weight:500;background:rgba(255,255,255,.12);border-radius:10rem}

/* FAQ */
.faq-list{margin:2.4rem 0}
.faq-item{border:1px solid #E2E8F0;border-radius:1.2rem;margin-bottom:1rem;background:#fff;overflow:hidden}
.faq-item summary{padding:1.6rem 2rem;font-weight:600;font-size:1.7rem;color:#1E293B;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:2rem;color:#5B21B6;font-weight:400;transition:transform .2s}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item__body{padding:0 2rem 1.6rem;font-size:1.6rem;color:#64748B;line-height:1.65}

/* Page hero (inner pages) */
.page-hero{background:linear-gradient(135deg,#1E1B4B,#5B21B6);color:#fff;padding:4rem 0 3rem;text-align:center}
.page-hero h1{font-family:"Libre Baskerville",Georgia,serif;font-size:clamp(2.6rem,4vw,3.6rem);margin-bottom:1rem}
.page-hero p{font-size:1.7rem;color:rgba(255,255,255,.85);max-width:100%;margin:0 auto}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem;margin:3rem 0}
.contact-card{padding:2.4rem;background:#fff;border-radius:1.6rem;border:1px solid #E2E8F0}
.contact-card h2{font-size:1.9rem;margin-bottom:1.2rem;color:#1E293B}
.contact-card p{margin-bottom:.8rem;font-size:1.6rem;color:#64748B}
.contact-card a{font-weight:600;font-size:1.8rem}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.8rem;padding:1.2rem 2.4rem;font-family:inherit;font-size:1.5rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#5B21B6,#7C3AED);border:none;border-radius:1rem;cursor:pointer;text-decoration:none;transition:opacity .2s,transform .2s}
.btn:hover{color:#fff;opacity:.92;transform:translateY(-1px)}
.btn--outline{background:transparent;border:2px solid #5B21B6;color:#5B21B6}
.btn--outline:hover{background:#EDE9FE;color:#5B21B6}

/* Footer */
.site-footer{background:#1E1B4B;color:rgba(255,255,255,.8);padding:4rem 0 2rem;margin-top:auto}
.site-footer__top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.1)}
.site-footer__brand img{height:3.6rem;margin-bottom:1.2rem;filter:brightness(0) invert(1)}
.site-footer__brand p{font-size:1.5rem;line-height:1.6;max-width:36rem}
.site-footer h3{font-size:1.4rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#FBBF24;margin-bottom:1.2rem}
.site-footer ul{list-style:none}
.site-footer li{margin-bottom:.8rem}
.site-footer a{color:rgba(255,255,255,.75);font-size:1.5rem}
.site-footer a:hover{color:#fff}
.site-footer__badges{display:flex;gap:1.2rem;margin:1.6rem 0}
.site-footer__badges img{height:4rem;border-radius:.4rem}
.site-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:1.3rem;color:rgba(255,255,255,.5)}
.responsible-banner{text-align:center;padding:1.2rem;background:rgba(251,191,36,.15);border-radius:.8rem;margin-bottom:2rem;font-weight:600;color:#FBBF24;font-size:1.4rem}

/* Scroll up */
.scroll-top{position:fixed;bottom:2rem;right:2rem;width:4.4rem;height:4.4rem;display:none;align-items:center;justify-content:center;background:#5B21B6;color:#fff;border:none;border-radius:50%;cursor:pointer;box-shadow:0 4px 16px rgba(91,33,182,.4);font-size:2rem;z-index:50;transition:transform .2s}
.scroll-top:hover{transform:scale(1.05)}

/* Responsive */
@media(max-width:1100px){
  .criteria-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .site-nav{position:fixed;inset:0;top:6.4rem;background:#fff;padding:2rem;transform:translateX(100%);transition:transform .3s;z-index:99}
  .site-nav--open{transform:translateX(0)}
  .site-nav ul{flex-direction:column}
  .menu-toggle{display:flex}
  .contact-grid,.site-footer__top,.author-card-full{grid-template-columns:1fr}
  .author-card-full{text-align:center}
  .author-card-full__avatar{margin:0 auto}
  .author-tags{justify-content:center}
  .criteria-grid{grid-template-columns:1fr}
  :root{--widget-scale:1}
  .widget-wrap__scale{width:100%;transform:none}
}
@media(max-width:600px){
  .hero{padding:3.5rem 0 3rem}
  .casino-table{font-size:1.3rem;table-layout:auto}
  .casino-table th,.casino-table td{padding:.7rem .8rem}
  .casino-table th{width:38%}
  .content-block img.article-img{max-width:12rem}
}
