/* ==========================================================================
   Fahrenheit Hotels & Resorts - Blog & Single Post Styles
   ========================================================================== */

/* --- Single Post Styles --- */
.fhr-single-post-wrapper {
    background-color: #ffffff;
    padding-top: 150px;
    padding-bottom: 80px;
}

.fhr-single-container {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 20px;
}

.fhr-post-breadcrumbs {
    font-size: 14px;
    color: #888888;
    margin-bottom: 20px;
    font-family: "Source Sans Pro", sans-serif;
}

.fhr-post-breadcrumbs a {
    color: #555555;
    text-decoration: none;
    transition: color 0.2s ease;
}

.fhr-post-breadcrumbs a:hover {
    color: #DB2519;
}

.fhr-post-breadcrumbs .separator {
    margin: 0 8px;
    color: #cccccc;
}

.fhr-post-category-tag {
    display: inline-block;
    background-color: #FAF2F0;
    color: #DB2519;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 5px 14px;
    border-radius: 20px;
    margin-bottom: 16px;
    text-decoration: none;
    font-family: "Source Sans Pro", sans-serif;
}

h1.fhr-single-title {
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 42px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #111111 !important;
    margin: 0 0 18px 0 !important;
}

@media (max-width: 768px) {
    h1.fhr-single-title {
        font-size: 28px !important;
        line-height: 1.3 !important;
    }
}

.fhr-post-meta-bar {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    font-size: 14px;
    color: #777777;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #EEEEEE;
    font-family: "Source Sans Pro", sans-serif;
}

.fhr-post-meta-bar .meta-author {
    font-weight: 600;
    color: #222222;
}

.fhr-post-featured-image {
    margin-bottom: 40px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.fhr-post-featured-image img {
    width: 100%;
    height: auto;
    max-height: 520px;
    object-fit: cover;
    display: block;
}

/* Article Body Typography */
.fhr-post-content {
    font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 18px;
    line-height: 1.8;
    color: #333333;
}

.fhr-post-content p {
    margin-bottom: 24px;
}

.fhr-post-content h2 {
    font-family: "Playfair Display", Georgia, serif;
    font-size: 28px;
    font-weight: 600;
    color: #111111;
    margin-top: 45px;
    margin-bottom: 18px;
    line-height: 1.35;
}

.fhr-post-content h3 {
    font-family: "Playfair Display", Georgia, serif;
    font-size: 22px;
    font-weight: 600;
    color: #222222;
    margin-top: 35px;
    margin-bottom: 14px;
    line-height: 1.4;
}

.fhr-post-content ul, .fhr-post-content ol {
    margin: 0 0 24px 24px;
    padding: 0;
}

.fhr-post-content li {
    margin-bottom: 10px;
}

.fhr-post-content a {
    color: #DB2519;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.2s ease;
}

.fhr-post-content a:hover {
    color: #A51A0F;
}

.fhr-post-content blockquote {
    border-left: 4px solid #DB2519;
    padding: 15px 25px;
    margin: 30px 0;
    background-color: #FAF8F5;
    border-radius: 0 12px 12px 0;
    font-style: italic;
    color: #444444;
}

/* Single Post CTA & Nav */
.fhr-single-footer {
    margin-top: 50px;
    padding-top: 30px;
    border-top: 1px solid #EEEEEE;
}

.fhr-single-cta-box {
    background: linear-gradient(135deg, #FAF8F5 0%, #F5EFEB 100%);
    border: 1px solid #EAE3DC;
    border-radius: 16px;
    padding: 40px 30px;
    text-align: center;
    margin: 50px 0 40px 0;
}

.fhr-single-cta-box h3 {
    font-family: "Playfair Display", Georgia, serif;
    font-size: 28px;
    color: #111111;
    margin: 0 0 12px 0;
}

.fhr-single-cta-box p {
    font-size: 16px;
    color: #555555;
    max-width: 600px;
    margin: 0 auto 25px auto;
}

.fhr-single-cta-box a.btn-cta {
    display: inline-block;
    background-color: #DB2519;
    color: #ffffff;
    padding: 13px 34px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    box-shadow: 0 4px 15px rgba(219,37,25,0.3);
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.fhr-single-cta-box a.btn-cta:hover {
    background-color: #b51a0f;
    transform: translateY(-2px);
}

.fhr-back-to-blog-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: #555555;
    text-decoration: none;
    font-size: 15px;
    transition: color 0.2s ease;
}

.fhr-back-to-blog-link:hover {
    color: #DB2519;
}


/* ==========================================================================
   --- Blog Archive / Listing Styles ---
   ========================================================================== */
.fhr-blog-archive-page {
    background-color: #FCFBF9;
    min-height: 80vh;
}

/* Hero Section */
.fhr-blog-hero {
    background: linear-gradient(180deg, #FAF8F5 0%, #F5ECE5 100%);
    padding: 150px 20px 60px 20px;
    text-align: center;
    border-bottom: 1px solid #ECE5DE;
}

.fhr-blog-hero-inner {
    max-width: 800px;
    margin: 0 auto;
}

.fhr-blog-badge {
    display: inline-block;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #DB2519;
    background: rgba(219, 37, 25, 0.08);
    padding: 6px 18px;
    border-radius: 30px;
    margin-bottom: 16px;
}

.fhr-blog-hero h1 {
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 46px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: #111111 !important;
    margin: 0 0 16px 0 !important;
}

@media (max-width: 768px) {
    .fhr-blog-hero h1 {
        font-size: 32px !important;
    }
}

.fhr-blog-hero p {
    font-family: "Source Sans Pro", sans-serif;
    font-size: 18px;
    line-height: 1.6;
    color: #555555;
    margin: 0;
}

/* Blog Grid */
.fhr-blog-grid-container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 60px 20px 90px 20px;
}

.fhr-blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
    gap: 35px;
}

@media (max-width: 768px) {
    .fhr-blog-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

.fhr-blog-card {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #ECE7E1;
    box-shadow: 0 6px 20px rgba(0,0,0,0.04);
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.fhr-blog-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(0,0,0,0.09);
    border-color: #DFD7CE;
}

.fhr-card-media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background-color: #EFEFEF;
}

.fhr-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}

.fhr-blog-card:hover .fhr-card-media img {
    transform: scale(1.05);
}

.fhr-card-category-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    background: rgba(17, 17, 17, 0.75);
    backdrop-filter: blur(6px);
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 4px 12px;
    border-radius: 20px;
    z-index: 2;
}

.fhr-card-body {
    padding: 26px 26px 24px 26px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.fhr-card-meta {
    font-size: 13px;
    color: #888888;
    margin-bottom: 12px;
    font-family: "Source Sans Pro", sans-serif;
    display: flex;
    align-items: center;
    gap: 8px;
}

.fhr-card-title {
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    margin: 0 0 12px 0 !important;
}

.fhr-card-title a {
    color: #111111;
    text-decoration: none;
    transition: color 0.2s ease;
}

.fhr-card-title a:hover {
    color: #DB2519;
}

.fhr-card-excerpt {
    font-family: "Source Sans Pro", sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: #666666;
    margin: 0 0 20px 0;
    flex-grow: 1;
}

.fhr-card-footer {
    margin-top: auto;
    padding-top: 15px;
    border-top: 1px solid #F3EFEA;
}

.fhr-read-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #DB2519;
    text-decoration: none;
    transition: gap 0.2s ease, color 0.2s ease;
}

.fhr-read-more-btn:hover {
    color: #a51a0f;
    gap: 10px;
}

/* Pagination */
.fhr-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 50px;
}

.fhr-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    padding: 0 14px;
    border-radius: 8px;
    background: #ffffff;
    border: 1px solid #E5DFD7;
    color: #333333;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.fhr-pagination .page-numbers:hover,
.fhr-pagination .page-numbers.current {
    background: #DB2519;
    border-color: #DB2519;
    color: #ffffff;
}

/* ==========================================================================
   Fahrenheit Hotels & Resorts - Universal Hero & Booking Bar Styles
   ========================================================================== */

.wpr-slider-content {
    border-radius: 20px !important;
}

.wpr-slider-item-bg {
    border-radius: 20px !important;
}

/* Universal Booking Widget Selector (matches any page ID, demo or live) */
div.wpcf7:has(.GuestSearchRow),
div[id*="wpcf7-f5345"],
div.wpcf7:has(.check-in-out) {
    background: rgba(255, 255, 255, 0.25) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    padding: 20px 25px 25px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    margin: 0 auto;
    max-width: 100%;
}

div.wpcf7:has(.GuestSearchRow) form,
div[id*="wpcf7-f5345"] form,
div.wpcf7:has(.check-in-out) form {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-end !important;
    gap: 20px !important;
    flex-wrap: wrap;
}

div.wpcf7:has(.GuestSearchRow) input,
div.wpcf7:has(.GuestSearchRow) textarea,
div.wpcf7:has(.GuestSearchRow) select,
div[id*="wpcf7-f5345"] input,
div[id*="wpcf7-f5345"] textarea,
div[id*="wpcf7-f5345"] select {
    border: 1px solid #e5e4e4 !important;
    background: #ffffff !important;
    padding: 8px 15px !important;
    margin: 5px 0 0 !important;
    border-radius: 8px !important;
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: 15px !important;
    color: #333333 !important;
}

div.wpcf7:has(.GuestSearchRow) label,
div[id*="wpcf7-f5345"] label {
    margin-top: 5px !important;
    margin-bottom: 2px !important;
    text-align: center !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    display: block !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}

.check-in-out {
    display: flex !important;
    gap: 20px !important;
    align-items: center !important;
}

.check-in-out .date-field {
    display: flex;
    flex-direction: column;
}

.GuestSearchRow {
    display: flex !important;
    gap: 25px !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.GuestSearchRow .inc-div {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4px !important;
    margin-top: 5px;
    background: #ffffff;
    border-radius: 8px;
    padding: 3px 6px;
    border: 1px solid #e5e4e4;
}

.GuestSearchRow .inc-div button.incr-btn {
    width: 28px !important;
    height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    font-weight: bold !important;
    line-height: 1 !important;
    background: #f0f0f0 !important;
    color: #333333 !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    padding: 0 !important;
    transition: background 0.2s;
}

.GuestSearchRow .inc-div button.incr-btn:hover {
    background: #e0e0e0 !important;
}

.GuestSearchRow .inc-div input.quantity {
    max-width: 40px !important;
    text-align: center !important;
    border: none !important;
    padding: 2px 4px !important;
    margin: 0 !important;
    font-weight: 600 !important;
}

a.booking-submit-btn,
#fhr-book-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: #DB2519 !important;
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 24px !important;
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 10px 30px !important;
    margin: 5px 0 0 !important;
    border-radius: 8px !important;
    transition: background-color 0.2s ease, transform 0.2s ease !important;
    border: none !important;
    box-shadow: 0 4px 12px rgba(219, 37, 25, 0.3) !important;
}

a.booking-submit-btn:hover,
#fhr-book-btn:hover {
    background-color: #b71c1c !important;
    transform: translateY(-1px) !important;
}

@media only screen and (max-width: 768px) {
    div.wpcf7:has(.GuestSearchRow),
    div[id*="wpcf7-f5345"],
    div.wpcf7:has(.check-in-out) {
        background: rgba(255, 255, 255, 0.92) !important;
        padding: 15px !important;
        width: calc(100% - 20px) !important;
        margin: 0 auto !important;
    }

    div.wpcf7:has(.GuestSearchRow) form,
    div[id*="wpcf7-f5345"] form {
        flex-direction: column !important;
        gap: 12px !important;
    }

    div.wpcf7:has(.GuestSearchRow) label,
    div[id*="wpcf7-f5345"] label {
        color: #333333 !important;
        text-shadow: none !important;
    }

    .check-in-out,
    .GuestSearchRow {
        width: 100% !important;
        justify-content: space-between !important;
    }

    a.booking-submit-btn,
    #fhr-book-btn {
        width: 100% !important;
    }
}

/* ==========================================================================
   Fahrenheit Hotels & Resorts - Booking Widget Universal Fixes
   ========================================================================== */

/* Universal styling for the booking submit / link button in any CF7 form */
div.wpcf7 form a,
div.wpcf7 a[href*="swiftbook"],
div.wpcf7 a.booking-submit-btn,
#fhr-book-btn {
    display: inline-block !important;
    text-align: center !important;
    background-color: #DB2519 !important;
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 24px !important;
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 10px 32px !important;
    margin: 5px 0 0 !important;
    border-radius: 8px !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(219, 37, 25, 0.3) !important;
    transition: background-color 0.2s ease, transform 0.2s ease !important;
}

div.wpcf7 form a:hover,
div.wpcf7 a[href*="swiftbook"]:hover,
div.wpcf7 a.booking-submit-btn:hover,
#fhr-book-btn:hover {
    background-color: #b71c1c !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    text-decoration: none !important;
}

/* Fix duplicate Adult/Children fields caused by legacy markup */
div.wpcf7 .GuestSearchRow.Childselectwrap .Adultselect {
    display: none !important;
}

div.wpcf7 .GuestSearchRow.Adultselectwrap .Childselect {
    display: none !important;
}

/* Desktop alignment for hero booking guest selector */
@media only screen and (min-width: 769px) {
    div.wpcf7:has(.GuestSearchRow) form,
    div[id*="wpcf7-f5345"] form {
        display: flex !important;
        justify-content: space-between !important;
        align-items: flex-end !important;
        gap: 15px !important;
    }

    div.wpcf7 .check-in-out {
        display: flex !important;
        gap: 15px !important;
        align-items: center !important;
    }

    div.wpcf7 .GuestSearchRow.Adultselectwrap,
    div.wpcf7 .GuestSearchRow.Childselectwrap {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }
}

/* ==========================================================================
   Fahrenheit Contact Us Form (ID: 4538) - Vertical Clean Layout
   ========================================================================== */
div[id*="wpcf7-f4538"] form,
#wpcf7-f4538-p4843-o1 form {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
    width: 100% !important;
}

div[id*="wpcf7-f4538"] .wpcf7-form-control-wrap,
#wpcf7-f4538-p4843-o1 .wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
}

div[id*="wpcf7-f4538"] input[type="text"],
div[id*="wpcf7-f4538"] input[type="email"],
div[id*="wpcf7-f4538"] input[type="tel"],
div[id*="wpcf7-f4538"] select,
div[id*="wpcf7-f4538"] textarea,
#wpcf7-f4538-p4843-o1 input,
#wpcf7-f4538-p4843-o1 select,
#wpcf7-f4538-p4843-o1 textarea {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    background: #ffffff !important;
    border: 1px solid #d1d5db !important;
    padding: 12px 16px !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    color: #333333 !important;
    box-sizing: border-box !important;
    font-family: "Source Sans Pro", sans-serif !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

div[id*="wpcf7-f4538"] input:focus,
div[id*="wpcf7-f4538"] select:focus,
div[id*="wpcf7-f4538"] textarea:focus {
    border-color: #DB2519 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(219, 37, 25, 0.15) !important;
}

div[id*="wpcf7-f4538"] label,
#wpcf7-f4538-p4843-o1 label {
    display: block !important;
    margin-bottom: 4px !important;
    margin-top: 6px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #333333 !important;
    text-align: left !important;
}

div[id*="wpcf7-f4538"] textarea,
#wpcf7-f4538-p4843-o1 textarea {
    min-height: 130px !important;
    resize: vertical !important;
}

div[id*="wpcf7-f4538"] input[type="submit"],
#wpcf7-f4538-p4843-o1 input[type="submit"] {
    width: 100% !important;
    background-color: #DB2519 !important;
    color: #ffffff !important;
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 14px 28px !important;
    border: none !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: background-color 0.25s ease, transform 0.2s ease !important;
    box-shadow: 0 4px 12px rgba(219, 37, 25, 0.25) !important;
    margin-top: 6px !important;
}

div[id*="wpcf7-f4538"] input[type="submit"]:hover,
#wpcf7-f4538-p4843-o1 input[type="submit"]:hover {
    background-color: #b71c1c !important;
    transform: translateY(-2px) !important;
}

/* Mobile responsive guest selector */
@media only screen and (max-width: 768px) {
    div.wpcf7 .GuestSearchRow.Childselectwrap {
        display: none !important;
    }

    div.wpcf7 .GuestSearchRow.Adultselectwrap .Childselect {
        display: block !important;
    }

    div.wpcf7 form a,
    div.wpcf7 a[href*="swiftbook"] {
        width: 100% !important;
        margin-top: 10px !important;
    }
}

/* ==========================================================================
   Room Details Slider Card Spacing Fix (Away from Next Arrow)
   ========================================================================== */
.wpr-advanced-slider .wpr-slider-content,
.elementor-widget-wpr-advanced-slider .wpr-slider-content {
    border-radius: 20px !important;
    margin-right: 90px !important;
    max-width: 420px !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12) !important;
}

.wpr-advanced-slider .wpr-slider-arrow {
    z-index: 10 !important;
}

@media only screen and (max-width: 1024px) {
    .wpr-advanced-slider .wpr-slider-content,
    .elementor-widget-wpr-advanced-slider .wpr-slider-content {
        margin-right: 70px !important;
        max-width: 380px !important;
    }
}

@media only screen and (max-width: 768px) {
    .wpr-advanced-slider .wpr-slider-content,
    .elementor-widget-wpr-advanced-slider .wpr-slider-content {
        margin-right: 0 !important;
        margin-left: 0 !important;
        max-width: 100% !important;
        border-radius: 0 0 20px 20px !important;
    }
}

/* ==========================================================================
   Fahrenheit Hotels & Resorts - Brand Theme Alignment (Colors & Fonts)
   ========================================================================== */

/* Brand Typography Definitions */
:root {
    --fhr-primary-red: #DB2519;
    --fhr-primary-hover: #b71c1c;
    --fhr-dark-text: #333333;
    --fhr-body-text: #555555;
    --fhr-light-bg: #FAF8F5;
    --fhr-border-color: #ECE5DE;
    --fhr-font-heading: "Playfair Display", Georgia, serif;
    --fhr-font-subheading: "Source Sans Pro", -apple-system, BlinkMacSystemFont, sans-serif;
    --fhr-font-body: "Lato", "Source Sans Pro", sans-serif;
}

/* Enforce Playfair Display on all section titles across new pages */
.elementor-6926 h1, .elementor-6926 h2, .elementor-6926 h3,
.elementor-6927 h1, .elementor-6927 h2, .elementor-6927 h3,
.elementor-6928 h1, .elementor-6928 h2, .elementor-6928 h3,
.elementor-6929 h1, .elementor-6929 h2, .elementor-6929 h3,
.fhr-section-title,
.fhr-card-title {
    font-family: var(--fhr-font-heading) !important;
    color: var(--fhr-dark-text);
    letter-spacing: -0.01em;
}

/* Enforce Brand Red Accent on badges, eyebrows and highlights */
.fhr-eyebrow,
.fhr-tag,
.fhr-badge-red {
    font-family: var(--fhr-font-subheading) !important;
    color: var(--fhr-primary-red) !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

/* Enforce Brand Red Buttons across all new pages & widgets */
.elementor-6926 .elementor-button,
.elementor-6927 .elementor-button,
.elementor-6928 .elementor-button,
.elementor-6929 .elementor-button,
.fhr-btn-primary,
.wpr-slider-primary-btn {
    background-color: var(--fhr-primary-red) !important;
    color: #ffffff !important;
    font-family: var(--fhr-font-subheading) !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    transition: all 0.25s ease !important;
    box-shadow: 0 4px 12px rgba(219, 37, 25, 0.25) !important;
}

.elementor-6926 .elementor-button:hover,
.elementor-6927 .elementor-button:hover,
.elementor-6928 .elementor-button:hover,
.elementor-6929 .elementor-button:hover,
.fhr-btn-primary:hover,
.wpr-slider-primary-btn:hover {
    background-color: var(--fhr-primary-hover) !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 18px rgba(219, 37, 25, 0.35) !important;
}

/* Standardize Body Paragraphs */
.elementor-6926 p,
.elementor-6927 p,
.elementor-6928 p,
.elementor-6929 p {
    font-family: var(--fhr-font-body) !important;
    color: var(--fhr-body-text);
    line-height: 1.75;
}

/* Cards & Feature Boxes Styling */
.fhr-feature-card,
.fhr-experience-box {
    background: #ffffff !important;
    border: 1px solid var(--fhr-border-color) !important;
    border-radius: 12px !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.fhr-feature-card:hover,
.fhr-experience-box:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08) !important;
}
body{
	#comments, #tab_slide{
		display: none;
	}	
	.page-header, .entry-title{
		display: none;
	}
	#menu-fahrenheit #menu-item-4013{
			background: #e00000;
	
		}
		#menu-fahrenheit #menu-item-6666{
			background: #e00000;
	
		}
	div[data-id="5f2cea2"], body div[data-id="3aba1c9"]{
		overflow: unset;
	}
}

body.custom-homepage{
	#menu-fahrenheit{
		#menu-item-4894{
			background: #f0f0f0;
				a{
				color: #333;		
				}
		}
	}
}

body.custom-weddings{
	#menu-item-4053{
			background: #f0f0f0;
				a{
					color: #333;		
				}
		}
	
}

body.custom-contact{
	#menu-item-4698{
			background: #f0f0f0;
				a{
					color: #333;		
				}
		}
}

body.custom-suites{
	#menu-item-4008{
			background: #f0f0f0;
				a{
					color: #333;		
				}
		}
	.page-header, .entry-title{
		display: none;
	}
}

body.custom-policy{
	header{
		background: #9d9d9d8c !important;
	}
	main{
		margin: 75px 0;
		border: 1px solid #e2e2e2;
    padding: 30px;
    border-radius: 20px;
		p{
			margin-bottom: 15px;
		}
		li{
			    margin-bottom: 5px;
		}
	}
}

body.custom-faqs{
	header{
		background: #9d9d9d8c !important;
	}
	main{
		li{
			margin-bottom: 5px;
		}
	}
}

header{
	position: absolute;
	top: 30px;
	left: 0;
	right: 0;
	z-index: 999;
	width: calc(100% - 60px);
	margin: 0 auto;
	border-radius: 12px;
	padding: 8px 0 !important;
	    background: rgba(255, 255, 255) !important;
    backdrop-filter: blur(4.099999904632568px);
	#menu-fahrenheit{
		gap: 10px;
		li{
			background: #727272;
    border-radius: 25px;
    align-items: center;
    height: 30px;
			transition: all 0.5s ease-in-out;
			a{
				color: #fff;
    text-decoration: none;
    padding: 2px 15px !important;
    line-height: 1;
    font-size: 14px;
			}
			&amp;:hover{
				background: #f0f0f0;
				a{
			
				color: #333;		
				}
			}
		}
	}
	transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	&amp;.scrolled{
		position: sticky;
		border-radius: 0;
		top: 0px;
		width: 100%;
		background: #fff;
		border-bottom: 1px solid #ddd;
		box-shadow: 0px 0px 20px 7px #c5c5c58f;
	}
}

.site-navigation-dropdown{
	    top: 90px;
	    margin: 0 -10px;
    width: calc(100% + 20px);
	#menu-fahrenheit-1{
		position: static;
		                border-radius: 20px 20px 0 0;
		box-shadow: 0px 0px 12px 0px #666;
		li{
			padding:0 20px;
			a{
				text-decoration: none;
                font-size: 16px;
				    box-shadow: none;
				border-bottom: 1px solid #DB25198F;
			}
		}
	}
	.social-media-mobile{
		    display: flex
;
		background: #fff;
		box-shadow: 0px 10px 20px -10px #666;
    border-radius: 0 0 20px 20px;
		padding: 15px 0;
    justify-content: center;
    align-items: center;
		gap: 10px;
		a{
			    background: #eee;
    padding: 8px;
    border-radius: 50%;
			img{
				width: auto;
    height: 22px;
			}
			&amp;.instagram,  &amp;.facebook{
				padding: 4px;
				img{
					height: 30px;
				}
			}
		}
	}
}

footer{
	padding: 60px 0 10px !important;
	background: #f2f2f2 !important;
	.footer-inner{
		    flex-direction: row !Important;
		.navbar-links{
			ul{
				padding: 0;
				li{
					list-style: none;
    text-align: left;
					                    margin: 10px 0;
					a{
						font-size: 16px;
    color: #333;
    text-decoration: none;
    font-weight: 600;
    margin: 5px 0;
					}
				}
			}
			.social-media{
				    display: flex
;gap: 10px;margin-top: 30px;
    justify-content: center;
    align-items: center;
				a{
					    width: 30px;
    height: 30px;
    background: #ccc;
    border-radius: 50%;
    display: flex
;
    justify-content: center;
    align-items: center;
					img{
						    width: 20px;
    height: 20px;
					}
				}
			}
			
		}
		.footer-img{
				border-radius: 12px;
			}
	}
	.custom-copyright{
		    padding: 30px 0;
    border-top: 1px solid #ff0000;
    width: 50%;
    margin: 30px auto 0;
		p{
			text-align: center;
			color: #333;
		}
	}
}

.elementor-4539, .elementor-6926 .elementor-element{ .wpr-slider-content{
	border-radius: 20px;
	margin-right: 10%;
}
	.wpr-slider-item-bg{
		border-radius: 20px;
		
	}
}

#wpcf7-f4538-p4843-o1{
	input, textarea, select{
		border: 1px solid gray;
    padding: 8px 15px;
    margin: 5px 0;
    border-radius: 8px;
	}
	label{
		margin-top: 5px;
		margin-bottom: 2px;
	}
	textarea{
		    max-height: 150px;
	}
	input[type="submit"]{
		    width: 100%;
    font-size: 16px;
	}
}

#wpcf7-f5345-p4539-o1, #wpcf7-f5345-p6926-o1, .fhr-booking-box{
	background: rgb(255 255 255 / 25%) !important;
    backdrop-filter: blur(4.099999904632568px);
    padding: 20px 25px 25px;
    border-radius: 12px;
	form{
		    display: flex
;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
		input, textarea, select{
		border: 1px solid gray;
    padding: 8px 15px;
    margin: 5px 0 0;
    border-radius: 8px;
			border: 1px solid #e5e4e4;
	}
	label{
		margin-top: 5px;
		margin-bottom: 2px;
		            text-align: center;
            color: white;
	}
		a{
			display: block;
			text-align: center;
			background-color: var(--e-global-color-primary);
    font-family: "Source Sans Pro", Sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    color: var(--e-global-color-85f0825);
			text-decoration: none;
			padding: 10px 40px;
            margin: 5px 0 0;
            border-radius: 8px;
/*             border: 1px solid #e5e4e4; */
		}
		.GuestSearchRow {
			display: flex
;
    gap: 35px;
    justify-content: space-between;
    align-items: center;
			p, label{
				text-align: center;
			}
			.inc-div{
				p{
					display: flex
;
    justify-content: center;
    align-items: center;
    gap: 2px;
					button{
						    padding: 2px 10px 7px 10px;
    width: 30px;
    height: 30px;
    display: flex
;
    align-items: center;
    justify-content: center;
    font-size: 35px;
    line-height: 1;
						&amp;.incr-btn{
							font-size: 20px;
							padding: 2px 10px 2px 10px;
						}
					}
					input{
						max-width: 45px;
					}
				}
			}
			&amp;.Childselectwrap{
				.Adultselect{
					display:  none;
				}
			}
			&amp;.Adultselectwrap{
				.Childselect{
					display:  none;
				}
			}
		}
	}
	.check-in-out{
			display: flex
;
    gap: 130px;
		}
}

#sb_instagram{
	.sb_instagram_header{
		text-transform: capitalize;
	}
}

@media only screen and (max-width: 600px) {
	body div[data-id="5f2cea2"], body div[data-id="3aba1c9"]{
		overflow: auto;
	}
	header{
		    top: 10px;
    width: calc(100% - 20px);
	}
	
	footer{
		padding-bottom: 0px !important;
		padding-top: 30px !important;
	.footer-inner{
		justify-content: center !important;
		gap: 30px;
		.navbar-links{
			ul{
				padding: 0;
				li{
/* 					text-align: center; */
					a{
					}
				}
			}
			.social-media{
				a{
					width: 35px;
					height: 35px;
					img{
					}
				}
			}
			
		}
		.footer-img{
			display: none;
			}
	}
		.custom-copyright{
		    padding: 30px 0;
    width: calc(100% - 20px);
    margin: 30px auto 0;
		p{
			font-size: 13px;
			text-align: center;
			color: #fff;
		}
	}
}
	
	
	#wpcf7-f5345-p4539-o1, #wpcf7-f5345-p6926-o1, .fhr-booking-box{
	background: #ffffffd1;
        padding: 10px 10px 10px;
        border-radius: 12px;
        width: calc(100% - 20px);
        margin: 0 auto;
	form{
		    flex-direction: column;
		gap: 5px;
		span{
			    display: flex
;
                width: 100%;
                justify-content: center;
                align-items: center;
    width: 100%;
		}
		p, div{
			width: 100%;
		}
		input, textarea, select{
		                width: 100%;
	}
	label{
		            margin-top: 0px;
            margin-bottom: -8px;
            text-align: center;
            font-size: 12px;
            font-weight: 600;
	}
		a{
			font-size: 14px;
		}
		.GuestSearchRow {
			
			p, label{
/* 				text-align: left; */
			}
			.inc-div{
				margin-top: 5px;
				p{
					justify-content: center;
					button{
						    
						&amp;.incr-btn{
							
						}
					}
					input{
						margin: 0;
					}
				}
			}
			&amp;.Childselectwrap{
					display:  none;
			}
			&amp;.Adultselectwrap{
				gap: 10px;
				.Childselect{
					display:  block;
				}
			}
		}
		.check-in-out{
			display: flex
;
			                align-items: center;
    gap: 10px;
		}
	}
}
	
	.elementor-4539, .elementor-6926 .elementor-element {
    .wpr-slider-content {
        border-radius: 0 0 20px 20px  !important;
        margin-right: 0;
/*         position: absolute;
        top: 170px;
        left: 0;
        right: 0; */
    }
}
	
	 .wpr-slider-item-bg{
		border-radius: 20px !important;
		
	}
	body.custom-policy{
		padding: 0 15px;
	main{
		margin: 75px 0;
		border: 1px solid #e2e2e2;
    padding: 30px;
    border-radius: 20px;
		p{
			margin-bottom: 15px;
		}
	}
}
	div[data-id="b247408"]{
		.wpr-slider-item-bg{
			background-position: top;
			    height: 50% !important;
			border-radius: 20px 20px 0 0 !important;
		}
	}
}

.elementor-kit-4521 h2{
	font-size:32px;
}
.elementor-kit-4521 h3{
	font-size:28px;
}

/* Blog paragraphs spacing */
.single-post p{
    margin-bottom: 10px;
}

/* Clean Booking Bar Styles */
.wpcf7-form {
    margin-bottom: 0;
}
#wpcf7-f5345-p4539-o1, #wpcf7-f5345-p6926-o1, div.wpcf7[id*="wpcf7-f5345"] {
    background: rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    padding: 20px 25px 25px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.2);
}
#wpcf7-f5345-p4539-o1 form, #wpcf7-f5345-p6926-o1 form, div.wpcf7[id*="wpcf7-f5345"] form {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
    flex-wrap: wrap;
}
div.wpcf7[id*="wpcf7-f5345"] .check-in-out {
    display: flex;
    gap: 20px;
}
div.wpcf7[id*="wpcf7-f5345"] .check-in-out .date-field {
    display: flex;
    flex-direction: column;
}
div.wpcf7[id*="wpcf7-f5345"] label {
    margin-bottom: 6px;
    color: #ffffff;
    font-weight: 600;
    font-size: 14px;
    text-shadow: 0 1px 3px rgba(0,0,0,0.5);
}
div.wpcf7[id*="wpcf7-f5345"] input[type="date"] {
    border: 1px solid #e5e4e4;
    padding: 8px 12px;
    border-radius: 8px;
    background: #ffffff;
    color: #333;
    font-size: 14px;
    height: 38px;
}
div.wpcf7[id*="wpcf7-f5345"] .GuestSearchRow {
    display: flex;
    gap: 20px;
    align-items: flex-end;
}
div.wpcf7[id*="wpcf7-f5345"] .inc-div {
    display: flex;
    align-items: center;
}
div.wpcf7[id*="wpcf7-f5345"] .incr-btn {
    width: 32px;
    height: 38px;
    background: #ffffff;
    border: 1px solid #d1d5db;
    font-size: 18px;
    font-weight: 700;
    color: #1f2937;
    border-radius: 6px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}
div.wpcf7[id*="wpcf7-f5345"] .incr-btn:hover {
    background: #f3f4f6;
}
div.wpcf7[id*="wpcf7-f5345"] .quantity {
    width: 44px;
    height: 38px;
    text-align: center;
    border: 1px solid #d1d5db;
    margin: 0 5px;
    background: #ffffff;
    font-size: 15px;
    font-weight: 600;
    color: #111827;
    border-radius: 6px;
}
div.wpcf7[id*="wpcf7-f5345"] a.booking-submit-btn,
div.wpcf7[id*="wpcf7-f5345"] a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #a90707 !important;
    color: #ffffff !important;
    font-family: "Source Sans Pro", sans-serif;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    padding: 0 32px;
    height: 38px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(169, 7, 7, 0.4);
    transition: background-color 0.2s ease;
    white-space: nowrap;
}
div.wpcf7[id*="wpcf7-f5345"] a:hover {
    background-color: #8b0606 !important;
}

@media only screen and (max-width: 768px) {
    div.wpcf7[id*="wpcf7-f5345"] form {
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
    }
    div.wpcf7[id*="wpcf7-f5345"] .check-in-out {
        flex-direction: column;
        gap: 10px;
    }
    div.wpcf7[id*="wpcf7-f5345"] .GuestSearchRow {
        justify-content: space-between;
    }
    div.wpcf7[id*="wpcf7-f5345"] a.booking-submit-btn,
    div.wpcf7[id*="wpcf7-f5345"] a {
        width: 100%;
        text-align: center;
    }
}
