/*
Theme Name: WE88 Flatsome Child
Description: WE88 historical restoration, native UX Builder content and guided local import.
Author: WE88 Restoration
Template: flatsome
Version: 1.0.7
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: we88-flatsome-child
License: GPL-2.0-or-later
*/

/* 2. CSS variables — values recovered from the archived inline theme settings. */
:root {
  --we88-primary: #ffd800;
  --we88-secondary: #ff0000;
  --we88-text: #b5b5b5;
  --we88-bg: #1f1f1f;
  --we88-surface: #1e1e1e;
  --we88-border: #ffd800;
  --we88-radius: 10px;
  --we88-width: 1170px;
  --primary-color: var(--we88-primary);
}

/* 3. Global */
html { background: #000; }
body.we88-restored { color: var(--we88-text); background: #000; }
.we88-restored #wrapper { max-width: 1200px; margin-inline: auto; background: var(--we88-bg); }
.we88-restored #main, .we88-restored #main.dark { background: var(--we88-bg); }
.we88-restored .container, .we88-restored .row { max-width: var(--we88-width); }
.we88-restored .row.row-collapse { max-width: 1140px; }
.we88-restored .row.row-small { max-width: 1162.5px; }
.we88-restored .row.row-large { max-width: 1200px; }
.we88-restored .row .row { max-width: none; }
.we88-restored a { color: var(--we88-primary); }
.we88-restored a:hover { color: var(--we88-primary); }
.we88-restored :focus-visible { outline: 2px solid var(--we88-primary); outline-offset: 3px; }

/* 4. Typography — local Google Fonts distribution; OFL license is bundled. */
@font-face { font-family: 'Bai Jamjuree'; font-style: normal; font-weight: 400; font-display: swap; src: url('assets/fonts/BaiJamjuree-Regular.ttf') format('truetype'); }
@font-face { font-family: 'Bai Jamjuree'; font-style: normal; font-weight: 700; font-display: swap; src: url('assets/fonts/BaiJamjuree-Bold.ttf') format('truetype'); }
body.we88-restored { font-family: 'Bai Jamjuree', sans-serif; font-size: 110%; font-weight: 400; line-height: 1.6; }
.we88-restored h1, .we88-restored h2, .we88-restored h3, .we88-restored h4,
.we88-restored h5, .we88-restored h6, .we88-restored .heading-font,
.we88-restored .nav > li > a { font-family: 'Bai Jamjuree', sans-serif; font-weight: 700; }
.we88-restored h1, .we88-restored h2, .we88-restored h3, .we88-restored h4,
.we88-restored h5, .we88-restored h6 { color: var(--we88-primary); line-height: 1.3; overflow-wrap: break-word; }
.we88-content h1, .we88-content-box h1 { text-align: center; }
.we88-content-box h1 { text-transform: uppercase; }
.we88-content h2, .we88-content-box h2 { margin-top: 1.25em; }
.we88-restored p { margin-bottom: 1.3em; }

/* 5. Header — works with the native Flatsome Header Builder. */
.we88-restored .header-wrapper { max-width: 1200px; margin-inline: auto; }
.we88-restored .header-bg-color, .we88-restored .header-main { background: var(--we88-surface); }
.we88-restored .header-main { height: 90px; }
.we88-restored #logo { width: 260px; }
.we88-restored #logo img { max-height: 90px; }
.we88-restored .stuck .header-main { height: 70px; }
.we88-restored .header-bottom { min-height: 55px; background: var(--we88-primary); }
.we88-restored .header-top { min-height: 30px; }

/* 6. Navigation */
.we88-restored .header:not(.transparent) .header-bottom-nav.nav > li > a { color: #000; line-height: 16px; }
.we88-restored .header-bottom-nav > li > a::before { background: #000; }
.we88-restored .nav-dropdown, .we88-restored .off-canvas .mfp-content { background: var(--we88-surface); }
.we88-restored .nav-sidebar .menu-item > a { color: var(--we88-primary); }
.we88-restored .nav-sidebar .menu-item { border-color: #3b3b3b; }

/* 7. Homepage — no hard-coded hero, slider or table of contents. */
.we88-restored .we88-hero-slot .row { max-width: 100%; width: 100%; margin-inline: 0; }
.we88-hero-slot .col { padding-bottom: 0; }
.we88-hero-slot .section-content:empty { display: none; }
.we88-promo { padding-bottom: 0; }
.we88-promo .col { padding-bottom: 20px; }
.we88-games .col { padding-bottom: 20px; }
.we88-content-box { border: 2px solid var(--we88-border); border-radius: var(--we88-radius); box-shadow: 0 0 10px 5px var(--we88-primary); padding: 20px; margin-bottom: 50px; box-sizing: border-box; }
.we88-content-box > .col { padding: 0; }
.we88-section > .section-content { padding-inline: 15px; }

/* 8. Content */
.we88-content, .we88-content-box, .we88-restored .entry-content { overflow-wrap: break-word; }
.we88-restored blockquote { color: #fff; background: var(--we88-surface); padding: 10px 20px; border-left-color: var(--we88-primary); border-radius: 10px 1px 10px 1px; font-size: 1em; }
.we88-restored blockquote > p:last-child { margin-bottom: 0; }
.we88-restored li { margin-bottom: .6em; }
.we88-restored table { width: 100%; color: var(--we88-text); }
.we88-restored td, .we88-restored th { border-color: #454545; overflow-wrap: anywhere; }
.we88-restored input, .we88-restored textarea, .we88-restored select { color: #333; }

/* 9. Category / archive — retain Flatsome's native list and pagination. */
.we88-restored .archive-page-header { text-align: center; }
.we88-restored .box-blog-post .box-text { color: var(--we88-text); }
.we88-restored .nav-pagination > li > a, .we88-restored .nav-pagination > li > span { border-color: var(--we88-primary); }
.we88-restored .nav-pagination > li > .current { background: var(--we88-primary); color: #000; }
.we88-restored .badge-inner { background: var(--we88-primary); color: #000; }

/* 10. Single post */
.we88-restored .entry-title { color: var(--we88-primary); }
.we88-restored .entry-meta { color: var(--we88-text); }
.we88-restored .entry-divider { background: #555; }
.we88-restored .entry-content .aligncenter { margin-inline: auto; }
.we88-restored .blog-single .entry-content h2 { margin-top: 1.3em; }
.we88-restored .author-box, .we88-restored .navigation-post { border-color: #444; }

/* 11. Sidebar */
.we88-restored .widget-title, .we88-restored .widget h2 { color: var(--we88-primary); }
.we88-restored .row-divided > .col + .col:not(.large-12) { border-color: #424242; }
.we88-restored .widget ul li { border-color: #424242; }
.we88-restored .searchform .button { color: #000; }

/* 12. Footer — content comes exclusively from WE88 - Footer UX Block. */
.we88-footer { background: var(--we88-surface); color: var(--we88-text); font-size: .9em; }
.we88-footer .col { padding-bottom: 0; }
.we88-footer p { margin: 0; }
.we88-footer-active .absolute-footer { display: none; }
.we88-restored .footer-wrapper, .we88-restored .footer-1, .we88-restored .footer-2,
.we88-restored .absolute-footer { background: var(--we88-surface); }

/* 13. Buttons — historical red/yellow treatment; reduced-motion respected. */
.we88-restored .header .button, .we88-restored .button.we88-cta { color: #ff0; background: var(--we88-secondary); border: 2px solid #fff; border-radius: 5px; text-transform: none; animation: we88-pulse 2s infinite; }
.we88-restored .header .button { font-size: 13px; min-width: 130px; min-height: 30px; line-height: 26px; }
.we88-restored .button.we88-cta { font-size: 15px; min-height: 40px; border: 1px solid #ffec8b; border-radius: var(--we88-radius); margin: 1px; white-space: normal; }
.we88-restored .button.primary:not(.we88-cta), .we88-restored button[type=submit] { background-color: var(--we88-primary); color: #000; }
.we88-restored .header .button.primary { background-color: var(--we88-secondary); color: #ff0; }
@keyframes we88-pulse { 0%,100% { transform: scale(.9); box-shadow: 0 0 0 0 rgb(255 0 0 / 30%); } 40% { transform: scale(1); box-shadow: 0 0 0 8px rgb(228 255 0 / 14%); } 80% { transform: scale(1); box-shadow: 0 0 0 12px rgb(255 0 0 / 0%); } }
@media (prefers-reduced-motion: reduce) { .we88-restored .header .button, .we88-restored .button.we88-cta { animation: none; } }

/* 14. Images */
.we88-restored img { max-width: 100%; height: auto; }
.we88-content-image { margin: 0 auto 0; text-align: center; }
.we88-content-image .img-inner img { width: auto; max-width: 100%; }
.we88-restored figure { max-width: 100%; text-align: center; }
.we88-restored .wp-caption-text, .we88-restored figcaption, .we88-caption { text-align: center; font-size: .9em; color: var(--we88-text); }
.we88-caption p { margin: .4em 0 1.6em; }

/* 15. Tablet */
@media (max-width: 849px) {
  .we88-restored #wrapper, .we88-restored .header-wrapper { width: 100%; }
  .we88-content-box { margin-inline: auto; padding: 18px; }
  .we88-restored #logo { width: 210px; }
  .we88-restored .header .button { min-width: 95px; font-size: 12px; }
  .we88-restored .row-divided > .col + .col:not(.large-12) { border-left: 0; }
}

/* 16. Mobile */
@media (max-width: 549px) {
  .we88-restored .header-main { height: 70px; }
  .we88-restored #logo { width: 155px; }
  .we88-restored #logo img { max-height: 70px; }
  .we88-restored .header .button { min-width: 78px; font-size: 11px; padding-inline: 7px; }
  .we88-section > .section-content { padding-inline: 15px; }
  .we88-content-box { padding: 15px; box-shadow: 0 0 7px 2px var(--we88-primary); margin-bottom: 25px; }
  .we88-restored h1 { font-size: 1.55em; }
  .we88-restored h2 { font-size: 1.35em; }
  .we88-restored h3 { font-size: 1.15em; }
  .we88-footer .col-inner { text-align: center; }
  .we88-footer .col + .col { padding-top: 10px; }
  .we88-restored blockquote { padding: 10px 14px; }
}

@media (min-width: 850px) {
  #header #wide-nav,
  #header #wide-nav > .flex-row {
    min-height: 30px;
    align-items: center;
  }

  #header #wide-nav .header-bottom-nav {
    margin-top: 0;
    margin-bottom: 0;
    align-items: center;
  }

  #header #wide-nav .header-bottom-nav > li {
    display: flex;
    align-items: center;
  }

  #header #wide-nav .header-bottom-nav > li > a {
    display: flex;
    align-items: center;
    min-height: 30px;
    padding-top: 0;
    padding-bottom: 0;
    line-height: 1.2;
	position: relative;
    top: 5px;
  }
}