 /* === RESET & BASE === */
 *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
 body {
     font-family: 'Georgia', 'Times New Roman', serif;
     color: #333;
     background-color: #faf9f6;
     line-height: 1.7;
 }
 a { text-decoration: none; color: inherit; transition: opacity 0.3s; }
 a:hover { opacity: 0.7; }
 img { max-width: 100%; height: auto; }
 .container { max-width: 1080px; margin: 0 auto; padding: 0 30px; }

 /* === HEADER === */
 .site-header {
     background-color: #1a1a1a;
     position: sticky;
     top: 0;
     z-index: 1000;
     box-shadow: 0 2px 10px rgba(0,0,0,0.3);
 }
 .header-inner {
     display: flex;
     align-items: center;
     justify-content: space-between;
     height: 80px;
 }
 .logo {
     font-family: 'Georgia', serif;
     font-size: 26px;
     color: #d4af37;
     letter-spacing: 3px;
     text-transform: uppercase;
     font-weight: 700;
 }
 .logo span { color: #fff; font-weight: 300; }
 .main-nav ul { list-style: none; display: flex; gap: 32px; }
 .main-nav a {
     color: rgba(255,255,255,0.75);
     font-size: 14px;
     text-transform: uppercase;
     letter-spacing: 1.5px;
     font-family: 'Helvetica Neue', Arial, sans-serif;
     font-weight: 600;
     padding: 8px 0;
     position: relative;
 }
 .main-nav a::after {
     content: '';
     position: absolute;
     bottom: 0; left: 0;
     width: 0; height: 2px;
     background: #d4af37;
     transition: width 0.3s;
 }
 .main-nav a:hover { opacity: 1; color: #fff; }
 .main-nav a:hover::after { width: 100%; }
 .menu-toggle {
     display: none; background: none; border: none;
     cursor: pointer; flex-direction: column; gap: 5px;
 }
 .menu-toggle span { display: block; width: 28px; height: 2px; background: #fff; }

 /* === HERO === */
 .hero {
     background: linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.55)),
                 url('') center/cover no-repeat;
     background-color: #2c2c2c;
     min-height: 360px;
     display: flex;
     align-items: center;
     justify-content: center;
     text-align: center;
     color: #fff;
     padding: 60px 20px;
 }
 .hero h1 {
     font-size: 42px;
     letter-spacing: 3px;
     text-transform: uppercase;
     margin-bottom: 16px;
     font-weight: 400;
 }
 .hero p {
     font-size: 18px;
     color: rgba(255,255,255,0.8);
     max-width: 650px;
     margin: 0 auto 12px;
 }
 .hero .updated {
     font-size: 13px;
     color: #d4af37;
     font-family: 'Helvetica Neue', Arial, sans-serif;
     letter-spacing: 1px;
     margin-top: 16px;
 }

 /* === SECTIONS === */
 .section { padding: 60px 0; }
 .section h2 {
     font-size: 30px;
     color: #1a1a1a;
     font-weight: 400;
     letter-spacing: 1px;
     margin-bottom: 10px;
 }
 .separator { width: 60px; height: 2px; background: #d4af37; margin-bottom: 28px; }
 .section h3 {
     font-size: 22px;
     color: #1a1a1a;
     font-weight: 400;
     margin: 36px 0 14px;
 }
 .section p {
     color: #555;
     font-size: 16px;
     margin-bottom: 16px;
     max-width: 900px;
 }

 /* === CASINO TABLE === */
 .casino-table-wrap { overflow-x: auto; margin: 28px 0; }
 .casino-table {
     width: 100%;
     border-collapse: collapse;
     font-family: 'Helvetica Neue', Arial, sans-serif;
     font-size: 14px;
     background: #fff;
     box-shadow: 0 2px 12px rgba(0,0,0,0.06);
     border-radius: 8px;
     overflow: hidden;
 }
 .casino-table thead th {
     background: #1a1a1a;
     color: #d4af37;
     font-weight: 700;
     text-transform: uppercase;
     letter-spacing: 1px;
     font-size: 12px;
     padding: 14px 16px;
     text-align: left;
     white-space: nowrap;
 }
 .casino-table tbody tr {
     border-bottom: 1px solid #f0ede6;
     transition: background 0.2s;
 }
 .casino-table tbody tr:hover { background: #faf7f0; }
 .casino-table tbody td {
     padding: 16px;
     vertical-align: middle;
     color: #555;
 }
 .casino-table .casino-name {
     font-family: 'Georgia', serif;
     font-size: 16px;
     color: #1a1a1a;
     font-weight: 700;
 }
 .casino-table .bonus { color: #d4af37; font-weight: 600; }
 .casino-table .rating { color: #d4af37; font-weight: 700; font-size: 15px; }
 .rank {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 32px; height: 32px;
     background: #f0ede6;
     border: 1px solid #d4af3740;
     border-radius: 50%;
     color: #d4af37;
     font-weight: 700;
     font-size: 14px;
 }
 .casino-table .cta-btn {
     display: inline-block;
     padding: 10px 24px;
     background: #d4af37;
     color: #1a1a1a;
     font-weight: 700;
     font-size: 12px;
     text-transform: uppercase;
     letter-spacing: 1px;
     border-radius: 4px;
     white-space: nowrap;
     transition: all 0.3s;
 }
 .casino-table .cta-btn:hover { background: #1a1a1a; color: #d4af37; opacity: 1; }

 /* === REVIEW CARD === */
 .review-card {
     background: #fff;
     border: 1px solid #ebe8e0;
     border-left: 3px solid #d4af37;
     border-radius: 8px;
     padding: 32px;
     margin: 28px 0;
     box-shadow: 0 2px 12px rgba(0,0,0,0.04);
 }
 .review-card h3 { color: #1a1a1a; font-size: 22px; margin: 0 0 6px; }
 .review-card .review-meta {
     font-family: 'Helvetica Neue', Arial, sans-serif;
     font-size: 13px;
     color: #d4af37;
     margin-bottom: 18px;
     letter-spacing: 0.5px;
 }
 .review-card p { color: #666; font-size: 15px; margin-bottom: 14px; }
 .pros-cons { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 20px; }
 .pros-cons h4 {
     font-family: 'Helvetica Neue', Arial, sans-serif;
     font-size: 13px;
     text-transform: uppercase;
     letter-spacing: 1.5px;
     margin-bottom: 10px;
 }
 .pros h4 { color: #4a8c50; }
 .cons h4 { color: #b55a5a; }
 .pros-cons ul { list-style: none; }
 .pros-cons li {
     font-size: 14px; color: #666;
     padding: 5px 0 5px 22px;
     position: relative;
     font-family: 'Helvetica Neue', Arial, sans-serif;
 }
 .pros li::before { content: '✓'; position: absolute; left: 0; color: #4a8c50; font-weight: 700; }
 .cons li::before { content: '✗'; position: absolute; left: 0; color: #b55a5a; font-weight: 700; }

 /* === STYLED LISTS === */
 .styled-list { list-style: none; margin: 20px 0; }
 .styled-list li {
     padding: 10px 0 10px 28px;
     position: relative;
     font-size: 15px;
     color: #555;
     border-bottom: 1px solid #f0ede6;
 }
 .styled-list li::before {
     content: '◆';
     position: absolute; left: 0;
     color: #d4af37;
     font-size: 10px;
     top: 14px;
 }
 .styled-list li strong { color: #1a1a1a; }

 .numbered-list {
     list-style: none;
     counter-reset: item;
     margin: 20px 0;
 }
 .numbered-list li {
     counter-increment: item;
     padding: 10px 0 10px 36px;
     position: relative;
     font-size: 15px;
     color: #555;
     border-bottom: 1px solid #f0ede6;
 }
 .numbered-list li::before {
     content: counter(item);
     position: absolute; left: 0;
     width: 24px; height: 24px;
     background: #f0ede6;
     border: 1px solid #d4af3740;
     border-radius: 50%;
     color: #d4af37;
     font-size: 12px;
     font-weight: 700;
     display: flex;
     align-items: center;
     justify-content: center;
     top: 11px;
     font-family: 'Helvetica Neue', Arial, sans-serif;
 }

 /* === DISCLAIMER === */
 .disclaimer {
     background: #fdf5f5;
     border: 1px solid #e0c8c8;
     border-radius: 8px;
     padding: 28px 32px;
     margin: 40px 0;
 }
 .disclaimer h4 {
     font-family: 'Helvetica Neue', Arial, sans-serif;
     font-size: 13px;
     text-transform: uppercase;
     letter-spacing: 2px;
     color: #b55a5a;
     margin-bottom: 12px;
 }
 .disclaimer p { font-size: 13px; color: #888; line-height: 1.8; }
 .disclaimer a { color: #b55a5a; }

 /* === FAQ === */
 .faq-item { border-bottom: 1px solid #f0ede6; padding: 24px 0; }
 .faq-item h3 { color: #1a1a1a; font-size: 18px; margin: 0 0 10px; font-weight: 400; }
 .faq-item p { color: #666; font-size: 15px; margin: 0; }

 /* === FOOTER === */
 .site-footer {
     background-color: #1a1a1a;
     color: rgba(255,255,255,0.7);
     padding: 60px 0 0;
     margin-top: 20px;
 }
 .footer-widgets {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 40px;
     padding-bottom: 50px;
     border-bottom: 1px solid rgba(255,255,255,0.1);
 }
 .footer-widget h3 {
     color: #d4af37;
     font-size: 16px;
     text-transform: uppercase;
     letter-spacing: 2px;
     margin-bottom: 20px;
     font-weight: 400;
 }
 .footer-widget p, .footer-widget li {
     font-size: 14px;
     line-height: 2;
     color: rgba(255,255,255,0.6);
 }
 .footer-widget ul { list-style: none; }
 .footer-widget ul li a { color: rgba(255,255,255,0.6); }
 .footer-widget ul li a:hover { color: #d4af37; opacity: 1; }
 .footer-bottom {
     text-align: center;
     padding: 25px 0;
     font-size: 13px;
     color: rgba(255,255,255,0.4);
     font-family: 'Helvetica Neue', Arial, sans-serif;
 }

 /* === RESPONSIVE === */
 @media (max-width: 768px) {
     .header-inner { height: 65px; }
     .logo { font-size: 20px; }
     .menu-toggle { display: flex; }
     .main-nav { display: none; position: absolute; top: 65px; left: 0; right: 0; background: #1a1a1a; padding: 20px 30px; }
     .main-nav.active { display: block; }
     .main-nav ul { flex-direction: column; gap: 0; }
     .main-nav li { border-bottom: 1px solid rgba(255,255,255,0.08); }
     .main-nav a { display: block; padding: 14px 0; }
     .hero h1 { font-size: 28px; }
     .hero { min-height: 280px; }
     .section { padding: 40px 0; }
     .pros-cons { grid-template-columns: 1fr; }
     .footer-widgets { grid-template-columns: 1fr; }
     .review-card { padding: 24px 20px; }
     .disclaimer { padding: 20px; }
 }

 /* === REVIEW CARD IMAGE === */
 .review-card .review-img {
     width: 100%;
     max-height: 320px;
     object-fit: cover;
     border-radius: 6px;
     margin-bottom: 20px;
     display: block;
 }

 /* === SCROLL TO TOP === */
 .scroll-top {
     position: fixed;
     bottom: 32px;
     right: 32px;
     width: 48px;
     height: 48px;
     background: #d4af37;
     color: #1a1a1a;
     border: none;
     border-radius: 50%;
     font-size: 22px;
     cursor: pointer;
     display: none;
     align-items: center;
     justify-content: center;
     box-shadow: 0 4px 16px rgba(0,0,0,0.25);
     z-index: 9999;
     transition: background 0.3s, opacity 0.3s;
 }
 .scroll-top:hover { background: #1a1a1a; color: #d4af37; }
 .scroll-top.visible { display: flex; }

 /* === HERO AUTHOR === */
 .hero .author {
     font-size: 14px;
     color: rgba(255,255,255,0.7);
     font-family: 'Helvetica Neue', Arial, sans-serif;
     letter-spacing: 0.5px;
     margin-top: 8px;
 }
 .hero .author strong { color: #fff; }