﻿/* Article and directory layout */
@media (min-width: 1200px) {
  .container,
  .elementor-section.elementor-section-boxed > .elementor-container { max-width: 1380px; }
}
.header-style-3 .main-menu > nav > .site-primary-menu { align-items: center; display: flex; flex-wrap: nowrap; gap: clamp(12px, 1.3vw, 24px); justify-content: flex-end; }
.header-style-3 .main-menu > nav > .site-primary-menu > li { display: block; margin: 0; }
.header-style-3 .main-menu > nav > .site-primary-menu > li > a { font-size: clamp(13px, 0.95vw, 16px); line-height: 1.25; padding: 28px 0; white-space: nowrap; }
@media (max-width: 991px) {
  .header-style-3 .row.align-items-center > .col-8 { align-items: center; display: flex; justify-content: flex-end; }
  .header-style-3 .menu-open { display: inline-block !important; opacity: 1; position: relative; visibility: visible; z-index: 20; }
  .header-style-3 .menu-open a { align-items: center; display: flex; flex-direction: column; height: 48px; justify-content: center; width: 48px; }
  .header-style-3 .menu-open svg { display: block; }
  .header-style-3 .menu-open a span { background: #181b1d; display: block; height: 2px; margin: 4px auto; width: 22px; }
}
body.page-id-266 .elementor-top-section { margin-top: 0 !important; }
.site-article-content { color: #495057; font-size: 15px; line-height: 1.8; }
.site-article-content .article-lead { margin: 0 0 26px; }
.site-article-content .article-lead p { color: #495057 !important; font-size: 15px !important; font-weight: 400 !important; line-height: 1.8 !important; margin: 0; }
.site-article-content h2, .site-article-content h3 { color: #181b1d; line-height: 1.4; margin: 30px 0 14px; }
.site-article-content p { margin: 0 0 18px; }
.site-article-content ul, .site-article-content ol { margin: 0 0 22px; padding-left: 1.5rem; }
.site-article-content li { margin: 0 0 8px; }
.site-article-content .table-responsive { margin: 20px 0 32px; overflow-x: auto; }
.site-article-content table { border-collapse: collapse; min-width: 620px; width: 100%; }
.site-article-content th, .site-article-content td { border: 1px solid #e2e6e9; padding: 11px 13px; text-align: left; vertical-align: top; }
.site-article-content th { background: #f4f6f7; color: #20252a; font-weight: 700; }
.site-article-content dl { display: grid; grid-template-columns: minmax(150px, 0.8fr) minmax(0, 2fr); margin: 20px 0 28px; }
.site-article-content dt, .site-article-content dd { border-bottom: 1px solid #e5e9ec; margin: 0; padding: 12px 14px; }
.site-article-content dt { color: #20252a; font-weight: 700; }
.site-article-content dd { color: #495057; }
.article-inline-photo, .article-hero-photo { display: block; float: none; margin: 26px auto 32px; max-width: 100%; text-align: center; }
.article-inline-photo img, .article-hero-photo img { display: block; height: auto; margin: 0 auto; max-height: 480px; object-fit: cover; width: 100%; }
.real-casino-screen { background: #f7f9fb; border: 1px solid #e1e8ee; border-radius: 12px; box-shadow: 0 12px 30px rgba(19, 37, 58, .08); margin: 34px 0 38px; overflow: hidden; padding: 12px 12px 0; }
.real-casino-screen img { border-radius: 7px; display: block; height: auto; width: 100%; }
.real-casino-screen--capture img { aspect-ratio: 1.9; object-fit: cover; object-position: center top; }
.real-casino-screen--poker .screen-crop { aspect-ratio: 1.6; background: #071534; border-radius: 7px; overflow: hidden; }
.real-casino-screen--poker .screen-crop img { height: auto; max-width: none; width: 200%; }
.real-casino-screen figcaption { color: #55616b; font-size: 13px; line-height: 1.6; padding: 13px 4px 16px; }
.real-casino-screen figcaption a { color: #2f5f8f; text-decoration: underline; text-underline-offset: 2px; }
.category-directory { margin: 0 auto; max-width: 1357px; padding: 38px 0; }
.category-directory > h1 { color: #181b1d; font-size: clamp(28px, 4vw, 38px); margin: 0 0 28px; }
.category-grid { display: grid; gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.casino-location-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.category-card { background: #fff; border: 1px solid #e8ebed; border-radius: 8px; display: flex; flex-direction: column; min-width: 0; overflow: hidden; }
.category-card__image { aspect-ratio: 3 / 2; display: block; overflow: hidden; }
.category-card__image img { display: block; height: 100%; object-fit: cover; width: 100%; }
.category-card__body { display: flex; flex: 1; flex-direction: column; padding: 18px; }
.category-card__body h2 { font-size: 19px; line-height: 1.35; margin: 0 0 10px; }
.category-card__body p { color: #59616a; flex: 1; line-height: 1.6; margin: 0 0 14px; min-height: 3.2em; }
.category-card__link { align-self: flex-start; color: #8b6927; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.review-place .thumb, .cities-wrap .thumb { aspect-ratio: 16 / 10; overflow: hidden; }
.review-place .thumb img, .cities-wrap .thumb img { display: block; height: 100%; object-fit: cover; width: 100%; }
.review-place .content { display: flex; flex-direction: column; min-height: 150px; }
.review-place .bdevselement-post-title { min-height: 2.7em; }
.review-place .bdevselement-post-tab-meta { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; min-height: 3em; overflow: hidden; }
@media (max-width: 991px) { .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) { .category-grid { gap: 16px; grid-template-columns: 1fr; } .site-article-content dl { grid-template-columns: 1fr; } .site-article-content dt { border-bottom: 0; padding-bottom: 2px; } .site-article-content dd { padding-top: 2px; } }

/* Category illustration icons follow the theme's red outline icon style. */
.category-wrap-3 .icon > svg { display: inline-block; width: 50px; height: 50px; vertical-align: middle; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }

/* Bring inner-page content closer to the main navigation. */
.blog-area.pt-120 { padding-top: 30px; }

/* Give the new wordmark enough room to remain legible. */
.header-style-3 .logo img { display: block; width: 205px; max-width: 100%; height: auto; }
.footer-logo img { max-width: 205px; }
.side__logo img { width: 205px; max-width: 100%; height: auto; }

/* Email draft form on the About page. */
.about-contact-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 20px; margin: 24px 0 14px; padding: 28px; background: #f8f9fa; border: 1px solid #e9ecef; border-radius: 10px; }
.about-contact-form label { display: flex; flex-direction: column; gap: 7px; color: #181b1d; font-weight: 600; }
.about-contact-form__full, .about-contact-form__actions { grid-column: 1 / -1; }
.about-contact-form input, .about-contact-form textarea { box-sizing: border-box; width: 100%; padding: 12px 14px; border: 1px solid #cbd1d5; border-radius: 5px; background: #fff; color: #181b1d; font: inherit; font-weight: 400; }
.about-contact-form textarea { min-height: 160px; resize: vertical; }
.about-contact-form input:focus, .about-contact-form textarea:focus { border-color: #e74c3c; outline: 2px solid #e74c3c33; outline-offset: 1px; }
.about-contact-form__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 18px; }
.about-contact-form button { padding: 12px 24px; border: 0; border-radius: 5px; background: #e74c3c; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.about-contact-form button:hover, .about-contact-form button:focus-visible { background: #cb3c2d; }
.about-contact-form__actions span { color: #59616a; font-size: 14px; }
#contact-status:empty { display: none; }
@media (max-width: 575px) { .about-contact-form { grid-template-columns: 1fr; padding: 20px; } }

/* Homepage contact section uses a solid background because the old image is unavailable. */
body .elementor-1229 .home-contact-section { background: #181b1d !important; }
body .elementor-1229 .home-contact-section > .elementor-background-overlay { display: none; }
.home-contact-section .newsletter-title .sub-title { color: #f2c573; }
.home-contact-section .newsletter-title .title { color: #fff; font-size: clamp(32px, 3vw, 46px); line-height: 1.15; }
.home-contact-section .newsletter-contact p { color: #f1f3f5; font-size: 16px; line-height: 1.65; margin: 0 0 18px; }
.home-contact-section .newsletter-contact p a { color: #f2c573; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.home-contact-section .newsletter-contact p a:hover { color: #fff; }
.home-contact-section .newsletter-contact .site-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 22px; border-radius: 6px; background: #e74c3c; color: #fff; font-weight: 700; line-height: 1.3; text-decoration: none; }
.home-contact-section .newsletter-contact .site-btn:hover, .home-contact-section .newsletter-contact .site-btn:focus-visible { background: #c93d30; color: #fff; }

/* The theme hides post titles on single posts; these pages use them as their H1. */
.single-post h1.postbox__title { display: block; }
.single-post .postbox__item > h1.postbox__title { margin: 0 0 24px; }
.blog-single-area .postbox__item { border: 0; }
