/* =========================
   TRIBE EVENTS
========================= */

h2.tribe-events-widget-events-list__header-title {
    color: #ffffff !important;
    font-weight: 700 !important;
}

a.tribe-events-widget-events-list__event-title-link {
    color: #e5a245 !important;
}

.tribe-events-widget-events-list__event-date-tag-daynum {
    color: #b1221f !important;
}

span.tribe-event-date-start,
.tribe-event-date-start,
.tribe-event-date-end {
    color: #fff !important;
    font-style: italic;
}

a.tribe-events-widget-events-list__view-more-link.tribe-common-anchor-thin {
    color: #277a15 !important;
}

.tribe-events-widget-events-list__event-date-tag-month {
    color: #7a7a7a !important;
}


/* =========================
   CATEGORY COLORS
========================= */

a[href*="category/early-access"] {
    color: #e5a245 !important;
}

a[href*="category/recommended"] {
    color: #277a15 !important;
}

body a[href*="category/not-recommended"] {
    color: #b1221f !important;
}

body a[href*="category/all"] {
    color: #a2b1b3 !important;
}

.cat-item a {
    color: inherit;
}


/* =========================
   TYPOGRAPHY
========================= */

h1, h2, h3, h4, h5, h6,
.qodef-m-title.entry-title,
.qodef-menu-item-text {
    font-family: "Nexa", sans-serif !important;
    font-weight: 800 !important;
}

body,
p,
.wp-block-paragraph,
.qodef-e-text {
    font-family: "Manrope", sans-serif !important;
    font-weight: 400 !important;
    line-height: 1.65;
}


/* =========================
   TEXT STYLING
========================= */

.entry-date {
    color: #ffffff !important;
    font-size: 16px;
    text-transform: uppercase !important;
}

.qodef-e-excerpt {
    color: #7a7a7a;
}

.wp-block-paragraph,
.wp-block-paragraph strong {
    color: #7a7a7a;
}

.qodef-e-info-tag a {
    color: #7a7a7a !important;
    font-size: 15px;
    opacity: 0.6;
    text-decoration: none;
    font-style: italic;
}


/* =========================
   SEARCH BLOCK (CONTENT AREA)
========================= */

.wp-block-search {
    position: relative;
}

.wp-block-search__inside-wrapper {
    display: flex;
    gap: 0;
}

.wp-block-search__input {
    width: 85% !important;
}

.wp-block-search__label {
    font-family: "Manrope", sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: 0.3px;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15px;
    color: #ffff
			;
    pointer-events: none;
    transition: 0.2s ease;
}

.wp-block-search:focus-within .wp-block-search__label {
    opacity: 0;
}


/* =========================
   FLUENT FORM BUTTON
========================= */

#fluentform_1 button.ff-btn-submit,
#fluentform_1 input.ff-btn-submit {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #fff !important;
    box-shadow: none !important;
}

#fluentform_1 .ff-btn-submit {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    background-image: none !important;
    text-decoration: none !important;
    position: relative !important;
    transition: all 0.25s ease-in-out;
}

#fluentform_1 .ff-btn-submit::before,
#fluentform_1 .ff-btn-submit::after {
    content: none !important;
    display: none !important;
}

#fluentform_1 .ff-btn-submit:hover {
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #000 !important;
}


/* =========================
   HEADER
========================= */

#qodef-page-header {
    border-bottom: 2px solid #ffffff !important;
}

@media (max-width: 1024px) {
    #qodef-page-header,
    .qodef-page-header,
    .qodef-mobile-header,
    .qodef-mobile-header-inner,
    header.qodef-mobile-header-appearance {
        border-bottom: 1px solid #ffffff !important;
    }
}

.qodef-menu-item-text {
    color: #000000 !important;
}

.qodef-svg--menu path {
    fill: #000 !important;
}


/* =========================
   HEADER SEARCH + HAMBURGER (FIXED)
========================= */

.qodef-header-widget-area {
    display: flex !important;
    align-items: center !important;
}

/* search icon */
.qodef-header-search-link {
    display: flex !important;
    align-items: center !important;
    line-height: 1;
    margin-right: 4px !important;
    color: #000;
    text-decoration: none;
}

.qodef-header-search-link svg {
    display: block;
}

/* hamburger */
.qodef-side-area-opener {
    display: flex !important;
    align-items: center !important;
    margin-left: 0 !important;
}


/* =========================
   PAGE LAYOUT SPACING
========================= */

.qodef-page-title {
    margin-top: 200px !important;
    margin-bottom: 50px !important;
}

.qodef-content-grid {
    margin-top: 10px !important;
    padding-top: 0 !important;
}


/* =========================
   FOOTER
========================= */

#qodef-page-footer-top-area {
    background: #fff !important;
    width: 100% !important;
}

#qodef-page-footer-top-area-inner {
    background: #fff !important;
    width: 100% !important;
    max-width: 100% !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: 40px !important;
    padding: 0 !important;
}

#qodef-page-footer-top-area-inner .qodef-grid,
#qodef-page-footer-top-area-inner .qodef-grid-inner,
#qodef-page-footer-top-area-inner .qodef-grid-item {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#qodef-page-footer-top-area-inner p {
    margin: 0 !important;
    color: #000 !important;
}


/* =========================
   HEADER WIDGET CLEANUP
========================= */

.qodef-header-widget-area .wp-block-search {
    position: absolute !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
}

.qodef-header-widget-area {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}
.wp-block-search__button {
    display: none !important;
}
.wp-block-search__input {
    border-bottom: 1px solid #000;
    background: transparent;
}
.qodef-widget-holder.qodef--one {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 18px !important; /* <- main control */
}

/* remove any leftover spacing from children */
.qodef-widget-holder.qodef--one > * {
    margin: 0 !important;
    padding: 0 !important;
}
#qodef-page-header-inner {
    max-width: 1200px; /* adjust if your site uses a different content width */
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}
.qodef-widget-holder.qodef--one {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}
.qodef-header-navigation {
    display: flex !important;
    align-items: center !important;
}
.qodef-widget-holder.qodef--one {
    margin-right: 0 !important;
    padding-right: 0 !important;
    justify-content: flex-end !important;
}
.wp-block-search__input::placeholder {
    color: #ffffff !important;
    font-family: "Manrope", sans-serif !important;
    opacity: 1 !important;
}
#qodef-page-header-inner {
    max-width: 1430px !important; /* match your content width */
    margin:  auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
#qodef-page-header {
    width: 100% !important;
}
.tribe-events-widget-events-list__event-title-link {
    pointer-events: none !important;
    cursor: default !important;
    text-decoration: none !important;
    color: inherit !important;
}
.tribe-events-widget-events-list__view-more-link {
    pointer-events: none !important;
    cursor: default !important;
    text-decoration: none !important;
    color: inherit !important;
}
@media (max-width: 1024px) {
    .qodef-mobile-logo-wrapper,
    .qodef-mobile-header-logo,
    .qodef-logo-wrapper {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
    }
}
@media (max-width: 1024px) {

    .qodef-page-title {
        margin-top: 80px !important;
    }

    .qodef-content-grid,
    .qodef-page-content-holder {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    body {
        padding-top: 0 !important;
    }
}
.qodef-post-info,
.qodef-e-info,
.qodef-blog-item .qodef-info,
.qodef-blog-list .qodef-info {
    display: flex;
    flex-wrap: wrap;
}
/* =========================
   FINAL DROPDOWN DEBUG FIX
========================= */

/* FORCE ALL MENU LEVELS TO WHITE BACKGROUND */
#qodef-page-header,
#qodef-page-header-inner,
.qodef-header-navigation,
.qodef-menu-area,
.qodef-menu-area-inner {
    background-color: #ffffff !important;
}

/* SUBMENU CONTAINER */
ul.sub-menu {
    background-color: #ffffff !important;
    z-index: 9999 !important;
}

/* MENU ITEMS (INCLUDING YOUR SPAN) */
ul.sub-menu li a,
ul.sub-menu li a .qodef-menu-item-text {
    color: #000000 !important;
}

/* HOVER BACKGROUND (THIS IS OFTEN THE “BLACK BOX”) */
ul.sub-menu li:hover,
ul.sub-menu li:focus,
ul.sub-menu li.current-menu-item {
    background-color: #ffffff !important;
}

/* HOVER TEXT */
ul.sub-menu li:hover > a {
    color: #e5a245 !important;
}

/* REMOVE ANY DARK OVERLAY LAYERS */
#qodef-page-header::before,
#qodef-page-header::after,
.qodef-menu-area::before,
.qodef-menu-area::after {
    display: none !important;
}
/* =========================
   TRANSPARENT DROPDOWN
========================= */

ul.sub-menu {
    background-color: transparent !important;
    box-shadow: none !important;
}

/* make text visible */
ul.sub-menu li a,
ul.sub-menu li a .qodef-menu-item-text {
    color: #ffffff !important;
}
/* =========================
   CLEAN ACTIVE MENU STATE
========================= */

/* remove full-block highlight */
ul.sub-menu li.current-menu-item,
ul.sub-menu li.current_page_item,
ul.sub-menu li.current-menu-ancestor {
    background-color: transparent !important;
}

/* style active link instead of full row */
ul.sub-menu li.current-menu-item > a,
ul.sub-menu li.current_page_item > a {
    color: #e5a245 !important;
    position: relative;
}
/* =========================
   SHRINK DROPDOWN TO CONTENT
========================= */

ul.sub-menu {
    width: auto !important;
    min-width: 0 !important;
    display: inline-block !important;
}

/* prevent full-width stretching from theme */
ul.sub-menu li,
ul.sub-menu li a {
    white-space: nowrap !important;
}
.qodef-blog.qodef-col-num--3 a.qodef-e-title-link {
    font-size: 19px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.3px;
}
.qodef-blog.qodef-col-num--3 .qodef-e-title {
    margin: 0 !important;
    padding: 0 !important;
}

.qodef-blog.qodef-col-num--3 a.qodef-e-title-link {
    line-height: 1.6 !important;
    display: inline-block;
}
/* remove full-row background */
ul.sub-menu li,
ul.sub-menu li.current-menu-item,
ul.sub-menu li:hover,
ul.sub-menu li:focus {
    background: transparent !important;
}

/* prevent pseudo-elements from appearing */
ul.sub-menu li::before,
ul.sub-menu li::after,
ul.sub-menu li a::before,
ul.sub-menu li a::after {
    content: none !important;
    display: none !important;
}

/* text-only hover effect */
ul.sub-menu li a {
    display: inline-block !important; /* only wraps text */
    padding: 0 !important; /* remove extra spacing that extends hover area */
}

ul.sub-menu li:hover > a {
    color: #e5a245 !important;
    background: transparent !important;
}
/* =========================
   GALLERY ONLY: INFO ROW FIX
========================= */

/* scope: gallery grid + category */
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder .qodef-e-info {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* remove separators without affecting layout */
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-info :is(.qodef-info-separator-single, .qodef-info-separator-end) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

/* prevent flex weirdness */
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder .qodef-e-info > * {
    flex: 0 1 auto !important;
}
/* =========================
   GALLERY ONLY: Balanced spacing title → info
========================= */
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-text {
    margin-bottom: 25px; /* default spacing for desktop */
}
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder {
    display: flex;
    flex-wrap: wrap; /* keeps date + tags on same line if space allows */
    gap: 8px; /* small spacing between date and tags */
}

/* Tablet */
@media (max-width: 1024px) {
    .qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-text {
        margin-bottom: 14px;
    }
    .qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder {
        gap: 6px;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-text {
        margin-bottom: 12px;
    }
    .qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder {
        gap: 4px;
    }
}
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder .qodef-e-info {
    display: flex;
    flex-wrap: wrap;
    align-items: center; /* KEY FIX: aligns date + tags properly */
    gap: 4px !important;
}

/* make ALL items behave consistently */
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder .qodef-e-info a,
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder .qodef-e-info .entry-date {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

/* tighten ONLY the date → first tag transition */
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder .entry-date {
    margin-right: 3px !important;
}

/* keep other tags slightly spaced */
.qodef-blog.qodef-col-num--3 .qodef-blog-item.category-all-reviews .qodef-e-bottom-holder a[rel="tag"] {
    margin-right: 4px !important;
}
/* Contact page only */
.page-id-5363 .tribe-compatibility-container,
.page-id-5363 .widget_categories,
.page-id-5363 #artorias_core_title_widget-11 {
    display: none !important;
}

.single-post .qodef-e-bottom-holder .qodef-e-info {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    align-items: center !important;
}
/* ========================================
   GALLERY CATEGORY PAGES
======================================== */

/* Gallery - Not Recommended */
.page-id-6014 .qodef-blog-item:not(.category-not-recommended) {
    display: none !important;
}

/* Gallery - Recommended */
.page-id-6059 .qodef-blog-item:not(.category-recommended) {
    display: none !important;
}

/* Gallery - Early Access */
.page-id-6070 .qodef-blog-item:not(.category-early-access) {
    display: none !important;
}

/* Reflow grid after hidden posts */
.page-id-6014 .qodef-blog-list-inner,
.page-id-6014 .qodef-grid-inner,
.page-id-6059 .qodef-blog-list-inner,
.page-id-6059 .qodef-grid-inner,
.page-id-6070 .qodef-blog-list-inner,
.page-id-6070 .qodef-grid-inner {
    display: flex !important;
    flex-wrap: wrap !important;
}


/* ========================================
   SIDEBAR CATEGORY MENU
======================================== */

.review-category-nav {
    list-style: none;
    padding: 0;
    margin: 0;
}

.review-category-nav li {
    margin-bottom: 8px;
}

.review-category-nav a {
    text-decoration: none;
}

/* Early Access */
.review-category-nav a[href*="early-access"] {
    color: #e5a245 !important;
}

/* Not Recommended */
.review-category-nav a[href*="not-recommended"] {
    color: #b1221f !important;
}

/* Recommended */
.review-category-nav a[href*="recommended"]:not([href*="not-recommended"]) {
    color: #277a15 !important;
}

/* All Reviews */
.review-category-nav a[href*="all-reviews"],
.review-category-nav a[href="/gallery/"] {
    color: #a2b1b3 !important;
}

/* ========================================
   CONTACT PAGE ONLY
======================================== */

.page-id-5363 .tribe-compatibility-container,
.page-id-5363 #artorias_core_title_widget-11,
.page-id-5363 #block-96 {
    display: none !important;
}
/* Keep pagination colors normal */
nav a,
.qodef-pagination a,
.qodef-m-pagination a,
.qodef-blog-pagination a,
.qodef-page-content-section nav a {
    color: #ffffff !important;
}
/* Hide View Calendar button in sidebar only */
#qodef-page-sidebar .tribe-events-widget-events-list__view-more {
    display: none !important;
}
/* Reviews dropdown background */
.qodef-drop-down-second-inner .sub-menu {
    background-color: transparent !important;
}
/* Contact page: visually move only the Fluent Form upward */
.page-id-5363 .elementor-element-88a99b8 {
    transform: translateY(-70px);
}
/* =========================================
   CONTACT FORM - SUBMIT BUTTON
   ========================================= */

.page-id-5363 form#fluentform_1 .ff_submit_btn_wrapper button.ff-btn.ff-btn-submit.wpf_has_custom_css {
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #ffffff !important;
    transition: all 0.3s ease !important;
}

.page-id-5363 form#fluentform_1 .ff_submit_btn_wrapper button.ff-btn.ff-btn-submit.wpf_has_custom_css:hover,
.page-id-5363 form#fluentform_1 .ff_submit_btn_wrapper button.ff-btn.ff-btn-submit.wpf_has_custom_css:focus {
    background: #000000 !important;
    color: #ffffff !important;
    border: 1px solid #ffffff !important;
}

/* =========================================
   CONTACT FORM - LABELS
   ========================================= */

.page-id-5363 #fluentform_1 .ff-el-input--label label {
    font-family: 'Nexa Heavy', 'NexaHeavy', 'Nexa', sans-serif !important;
    font-weight: 700 !important;
}

/* =========================================
   CONTACT FORM - PLACEHOLDERS
   ========================================= */

.page-id-5363 #fluentform_1 .ff-el-form-control::placeholder {
    font-family: 'Nexa Light', 'NexaLight', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
}
/* Contact page - Inquiries paragraph line height */
.page-id-5363 .elementor-element-75e0a46 p {
    line-height: 1.6 !important;
}
.page-id-5363 #fluentform_1 .ff-el-form-control::placeholder {
    font-family: 'Nexa Light', 'NexaLight', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    color: #7a7a7a !important;
    opacity: 1 !important;
}
/* Header: keep search + hamburger stable */
#qodef-page-header-inner .qodef-widget-holder.qodef--one /* Header: keep search + hamburger stable */
#qodef-page-header-inner .qodef-widget-holder.qodef--one {
    width: 223px !important;
    min-width: 230x !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
}

/* Header: actual search bar width */
#qodef-page-header-inner .qodef-widget-holder.qodef--one .wp-block-search__input {
    width: 230px !important;
    min-width: 230x !important;
}
/* Header: keep hamburger right edge aligned */
#qodef-page-header-inner .qodef-widget-holder.qodef--one {
    width: 309px !important;
    min-width: 309px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 42px !important;
}

/* Header: search length */
#qodef-page-header-inner .wp-block-search__input {
    width: 230px !important;
    min-width: 230px !important;
}
/* =========================================
   CONTACT PAGE - INQUIRIES ALIGNMENT FIX
========================================= */

/* Remove/override the form being pushed too far upward */
.page-id-5363 .elementor-element-88a99b8 {
    transform: translateY(-35px) !important;
}
/* Bring Inquiries text slightly lower / more balanced */
.page-id-5363 .elementor-element-75e0a46 {
    margin-top: 25px !important;
}

/* Inquiries paragraph spacing */
.page-id-5363 .elementor-element-75e0a46 p {
    line-height: 1.6 !important;
    margin-top: 0 !important;
}