*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
--white:#ffffff;--bg:#ffffff;--surface:#f8f9fa;--surface-alt:#f1f3f5;
--text:#1a1a2e;--text-secondary:#555770;--text-light:#8a8a9a;
--border:#e2e4e9;--border-light:#eff0f3;
--red:#dc2626;--red-hover:#b91c1c;--red-light:#fef2f2;
--accent:#2563eb;--accent-light:#eff6ff;
--green:#16a34a;--green-light:#f0fdf4;
--gold:#f59e0b;
--radius:10px;--radius-lg:14px;--radius-sm:6px;
--shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);
--shadow-md:0 4px 12px rgba(0,0,0,.07);
--shadow-lg:0 10px 30px rgba(0,0,0,.08);
--max-w:960px;
--font:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent);text-decoration:none;transition:color .2s}
a:hover{color:var(--red)}

/* Layout */
.wrap{max-width:var(--max-w);margin:0 auto;padding:0 20px}

/* Header */
.site-header{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:70px}
.logo-box{width:300px;height:80px;display:flex;align-items:center}
.logo-box svg{width:100%;height:100%}
.header-nav{display:flex;gap:24px}
.header-nav a{color:var(--text);font-size:.9rem;font-weight:500;transition:color .2s}
.header-nav a:hover{color:var(--red)}

/* Hero */
.hero{padding:48px 0 32px;text-align:center}
.hero h1{font-size:2rem;font-weight:800;line-height:1.25;color:var(--text);margin-bottom:16px}
.hero p{font-size:1.05rem;color:var(--text-secondary);max-width:680px;margin:0 auto;line-height:1.7}

/* Author bar */
.author-bar{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--surface);border-radius:var(--radius-lg);margin-bottom:40px;flex-wrap:wrap}
.author-bar img{width:120px;height:120px;border-radius:50%;object-fit:cover;border:2px solid var(--border)}
.author-info{display:flex;flex-direction:column;gap:2px}
.author-info .name{font-weight:700;font-size:.95rem;color:var(--text)}
.author-info .role{font-size:.82rem;color:var(--text-secondary)}
.author-bar .updated{margin-left:auto;font-size:.82rem;color:var(--text-light);white-space:nowrap}

/* Casino Cards */
.casinos-heading{font-size:1.5rem;font-weight:700;margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid var(--red)}
.casino-card{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:24px;background:var(--white);box-shadow:var(--shadow);transition:box-shadow .25s}
.casino-card:hover{box-shadow:var(--shadow-md)}
.casino-card-logo{background:var(--surface);display:flex;align-items:center;justify-content:center;padding:36px 20px;min-height:130px;border-bottom:1px solid var(--border-light)}
.casino-card-logo .logo-text{font-size:2rem;font-weight:800;letter-spacing:-.5px;color:var(--text)}
.casino-card-body{padding:24px}
.casino-card-body h3{font-size:1.15rem;font-weight:700;margin-bottom:6px}
.casino-bonus{display:inline-block;background:var(--green-light);color:var(--green);font-weight:700;font-size:.85rem;padding:4px 12px;border-radius:var(--radius-sm);margin-bottom:12px}
.casino-card-body .desc{font-size:.92rem;color:var(--text-secondary);margin-bottom:14px;line-height:1.65}
.payment-methods{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}
.payment-methods span{background:var(--surface);font-size:.78rem;padding:4px 10px;border-radius:var(--radius-sm);color:var(--text-secondary);border:1px solid var(--border-light)}
.btn-play{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;font-weight:700;font-size:.95rem;padding:12px 36px;border-radius:var(--radius);border:none;cursor:pointer;transition:background .2s,transform .15s;text-decoration:none}
.btn-play:hover{background:var(--red-hover);color:#fff;transform:translateY(-1px)}

/* Content section */
.content-block{padding:48px 0}
.content-block h2{font-size:1.45rem;font-weight:700;margin:36px 0 14px;color:var(--text);line-height:1.3}
.content-block h3{font-size:1.15rem;font-weight:700;margin:28px 0 10px;color:var(--text)}
.content-block p{font-size:.95rem;color:var(--text-secondary);margin-bottom:16px;line-height:1.75}
.content-block ul,.content-block ol{margin:0 0 18px 24px;color:var(--text-secondary);font-size:.95rem;line-height:1.75}
.content-block li{margin-bottom:6px}
.content-block figure{margin:24px 0;text-align:center}
.content-block figure img{border-radius:var(--radius);border:1px solid var(--border);margin:0 auto}
.content-block figcaption{font-size:.82rem;color:var(--text-light);margin-top:8px;font-style:italic}
.content-block table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.9rem}
.content-block thead{background:var(--surface)}
.content-block th,.content-block td{padding:10px 14px;text-align:left;border:1px solid var(--border)}
.content-block th{font-weight:600;color:var(--text);font-size:.85rem}
.content-block td{color:var(--text-secondary)}
.content-block blockquote{border-left:3px solid var(--red);margin:20px 0;padding:14px 20px;background:var(--red-light);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic;color:var(--text-secondary);font-size:.95rem}
.content-block .video-embed{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;margin:24px 0;border-radius:var(--radius)}
.content-block .video-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;border-radius:var(--radius)}

/* TOC */
.toc{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:32px}
.toc-title{font-size:1rem;font-weight:700;margin-bottom:12px;color:var(--text)}
.toc ol{list-style:decimal;margin:0 0 0 20px;padding:0}
.toc li{margin-bottom:6px;font-size:.9rem}
.toc a{color:var(--accent);font-weight:500}
.toc a:hover{color:var(--red)}

/* FAQ */
.faq-list{margin-bottom:40px}
.faq-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:10px;overflow:hidden}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;font-weight:600;font-size:.95rem;background:var(--white);transition:background .2s;gap:12px}
.faq-q:hover{background:var(--surface)}
.faq-q::after{content:'+';font-size:1.3rem;color:var(--text-light);transition:transform .2s;flex-shrink:0}
.faq-item.open .faq-q::after{content:'−'}
.faq-a{display:none;padding:0 20px 16px;font-size:.92rem;color:var(--text-secondary);line-height:1.7}
.faq-item.open .faq-a{display:block}

/* Reviews */
.reviews-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:40px}
.review-card{background:var(--surface);border-radius:var(--radius);padding:20px 24px}
.review-stars{color:var(--gold);font-size:1rem;margin-bottom:8px;letter-spacing:2px}
.review-text{font-size:.92rem;color:var(--text-secondary);line-height:1.65;margin-bottom:10px;font-style:italic}
.review-author{font-size:.82rem;font-weight:600;color:var(--text)}

/* Contact form */
.contact-form{max-width:560px;margin:0 auto 48px}
.form-group{margin-bottom:16px}
.form-group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;color:var(--text)}
.form-group input,.form-group textarea{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.92rem;font-family:var(--font);background:var(--white);color:var(--text);transition:border-color .2s}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}
.form-group textarea{resize:vertical;min-height:110px}
.btn-submit{background:var(--red);color:#fff;font-weight:700;font-size:.95rem;padding:12px 32px;border:none;border-radius:var(--radius);cursor:pointer;transition:background .2s}
.btn-submit:hover{background:var(--red-hover)}

/* About / Author sections */
.about-block{background:var(--surface);border-radius:var(--radius-lg);padding:32px;margin-bottom:32px}
.about-block h2{font-size:1.25rem;font-weight:700;margin-bottom:14px;color:var(--text)}
.about-block p{font-size:.92rem;color:var(--text-secondary);line-height:1.7;margin-bottom:12px}
.author-section{display:flex;gap:24px;align-items:flex-start;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px;margin-bottom:48px}
.author-section img{width:120px;height:120px;border-radius:50%;object-fit:cover;flex-shrink:0;border:3px solid var(--border)}
.author-section .author-bio h2{font-size:1.2rem;font-weight:700;margin-bottom:4px}
.author-section .author-bio .author-title{font-size:.85rem;color:var(--text-light);margin-bottom:12px}
.author-section .author-bio p{font-size:.92rem;color:var(--text-secondary);line-height:1.7;margin-bottom:10px}

/* Footer */
.site-footer{background:var(--surface);border-top:1px solid var(--border);padding:28px 0;text-align:center}
.site-footer p{font-size:.82rem;color:var(--text-light);margin:0}
.site-footer .site-name{font-weight:700;color:var(--text)}

/* Responsive */
@media(min-width:640px){
.hero h1{font-size:2.4rem}
.reviews-grid{grid-template-columns:1fr 1fr}
}
@media(min-width:768px){
.hero h1{font-size:2.6rem}
}
@media(max-width:600px){
.site-header .wrap{flex-wrap:wrap;height:auto;padding:12px 20px;gap:8px}
.logo-box{width:200px;height:54px}
.header-nav{gap:16px}
.author-bar{flex-direction:column;align-items:flex-start}
.author-bar .updated{margin-left:0}
.author-section{flex-direction:column;align-items:center;text-align:center}
.casino-card-body{padding:18px}
}