/* ============================================
   CHILTERN – INNER PAGES CSS
   Applies to ALL pages except Home, Contact, About
   Primary: #1F7A63 | Dark: #145A4A
   CTA: #FF7A00 | BG: #F8FBFA | Text: #1A1A1A
============================================ */

/* =====================
   0. RESETS & BASE
   ===================== */
.inner-slider,
.inner-slider *,
.service-page-wrapper,
.service-page-wrapper *,
.blog-wrapper,
.blog-wrapper *,
.clinet-say-wrapper,
.clinet-say-wrapper *,
.property-listing,
.property-listing *,
.building-surveys-wrapper,
.building-surveys-wrapper *,
.what-included-survey,
.what-included-survey *,
.what-do-when-wrapper,
.what-do-when-wrapper *,
.local-knowledge-wrapper,
.local-knowledge-wrapper *,
.error-wrapper,
.error-wrapper *,
.chartered-surveyors,
.chartered-surveyors *,
.historic-building-survey,
.historic-building-survey *,
.static-content-wrapper,
.static-content-wrapper *,
.read-next-wrapper,
.read-next-wrapper * {
    font-family: 'Poppins', sans-serif !important;
}
/* Restore icon fonts */
.fas, .far, .fab, .fa {
    font-family: "Font Awesome 5 Free" !important;
}
.fab {
    font-family: "Font Awesome 5 Brands" !important;
}
.bi, [class^="bi-"], [class*=" bi-"] {
    font-family: "bootstrap-icons" !important;
}

/* =====================
   1. HERO BANNER (About Us Style)
   ===================== */
.inner-slider {
    min-height: 380px !important;
    width: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    position: relative !important;
    display: flex !important;
    align-items: flex-end !important;
    padding: 0 0 70px !important;
    overflow: hidden !important;
}
.inner-slider::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(10,50,42,0.82) 0%, rgba(20,90,74,0.92) 100%) !important;
    z-index: 1 !important;
}
.inner-slider .container {
    position: relative !important;
    z-index: 3 !important;
}

/* Breadcrumb */
.inner-breadcrumb {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 18px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    font-family: 'Poppins', sans-serif !important;
}
.inner-breadcrumb a {
    color: rgba(255,255,255,0.65) !important;
    text-decoration: none !important;
    transition: color 0.25s !important;
}
.inner-breadcrumb a:hover {
    color: #FF7A00 !important;
}
.inner-breadcrumb .sep {
    color: rgba(255,255,255,0.3) !important;
    font-size: 11px !important;
}
.inner-breadcrumb .current {
    color: #fff !important;
    font-weight: 600 !important;
}

/* Title */
.inner-slider-text {
    padding-top: 80px !important;
}
.inner-slider-text h1 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 48px !important;
    font-weight: 800 !important;
    color: #fff !important;
    text-transform: none !important;
    letter-spacing: -0.5px !important;
    margin: 0 0 14px !important;
    line-height: 1.1 !important;
    text-align: left !important;
}
.inner-slider-text h1 a {
    color: #fff !important;
    text-decoration: none !important;
}
/* Subtitle under hero title */
.inner-slider-text .inner-hero-sub {
    font-size: 16px !important;
    color: rgba(255,255,255,0.7) !important;
    font-weight: 300 !important;
    margin: 0 !important;
    letter-spacing: 0.2px !important;
    font-family: 'Poppins', sans-serif !important;
}
/* Remove old orange bar */
.inner-slider-text::after {
    display: none !important;
}

/* SVG wave at bottom of hero */
.inner-slider .inner-wave {
    position: absolute !important;
    bottom: -1px !important;
    left: 0 !important;
    width: 100% !important;
    height: 70px !important;
    z-index: 2 !important;
    display: block !important;
}

/* Responsive – Tablet */
@media (max-width: 991px) {
    .inner-slider {
        min-height: 320px !important;
        padding: 0 0 60px !important;
    }
    .inner-slider-text h1 {
        font-size: 38px !important;
    }
    .inner-slider .inner-wave {
        height: 50px !important;
    }
}
/* Responsive – Mobile */
@media (max-width: 575px) {
    .inner-slider {
        min-height: 280px !important;
        padding: 0 0 50px !important;
    }
    .inner-slider-text {
        padding-top: 60px !important;
    }
    .inner-slider-text h1 {
        font-size: 30px !important;
    }
    .inner-slider .inner-wave {
        height: 40px !important;
    }
}

/* =====================
   2. TYPOGRAPHY OVERRIDES
   ===================== */
.heading-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 34px !important;
    font-weight: 700 !important;
    color: #1A1A1A !important;
    line-height: 1.3 !important;
    margin-bottom: 16px !important;
}
.heading-small {
    font-family: 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #1A1A1A !important;
    line-height: 1.4 !important;
}
.heading-small.blue {
    color: #1F7A63 !important;
}
.heading-small.text-white,
.heading-title.text-white {
    color: #fff !important;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Poppins', sans-serif !important;
}
.text18 {
    font-size: 16px !important;
    line-height: 1.75 !important;
    color: #4A4A4A !important;
}
p {
    font-size: 15px;
    line-height: 1.75;
    color: #4A4A4A;
}

/* =====================
   3. SERVICE CARDS
   ===================== */
.service-page-wrapper {
    padding: 80px 0 !important;
    background: #F8FBFA !important;
}
.service-offer-bx {
    background: #fff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
    transition: all 0.35s ease !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.service-offer-bx:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 12px 32px rgba(31,122,99,0.12) !important;
}
.service-offer-pic {
    height: 240px !important;
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
    margin-bottom: 0 !important;
}
.service-offer-pic img {
    width: 100% !important;
    height: 100% !important;
    min-height: unset !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    transition: transform 0.5s ease !important;
}
.service-offer-bx:hover .service-offer-pic img {
    transform: scale(1.05) !important;
}
.service-offer-txt {
    padding: 24px !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}
.service-offer-txt h4 {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #1A1A1A !important;
    margin-bottom: 10px !important;
}
.service-offer-txt p {
    font-size: 14px !important;
    color: #4A4A4A !important;
    line-height: 1.65 !important;
    margin-bottom: 16px !important;
    flex: 1 !important;
}
.service-offer-txt a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #1F7A63 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    border-top: 1px solid #f0f0f0 !important;
    padding: 16px 0 0 !important;
    margin-top: auto !important;
    transition: all 0.3s ease !important;
}
.service-offer-txt a:hover {
    color: #145A4A !important;
    padding-left: 6px !important;
}

/* =====================
   4. SPEAK-EXPERT & CALL-NOW CTA BANNER — NEW DESIGN
   ===================== */

/* ── Kill ALL old pseudo-elements ── */
.speak-expert::after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* ── LEFT: Animated gradient panel ── */
.speak-expert {
    background: linear-gradient(135deg, #0f6b56 0%, #1a8a6e 40%, #145A4A 70%, #0d4f3f 100%) !important;
    background-size: 300% 300% !important;
    animation: ctaGradientShift 8s ease infinite !important;
    border-radius: 24px 0 0 24px !important;
    padding: 52px 48px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
    z-index: 1 !important;
    min-height: 140px !important;
}

@keyframes ctaGradientShift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Decorative floating circles */
.speak-expert::before {
    content: "" !important;
    position: absolute !important;
    width: 200px !important;
    height: 200px !important;
    border-radius: 50% !important;
    background: rgba(255, 122, 0, 0.08) !important;
    top: -60px !important;
    right: -40px !important;
    pointer-events: none !important;
    z-index: 0 !important;
    animation: ctaFloat 6s ease-in-out infinite !important;
}

@keyframes ctaFloat {
    0%, 100% { transform: translate(0, 0) scale(1); }
    50% { transform: translate(-15px, 10px) scale(1.05); }
}

/* Heading typography */
.speak-expert h2,
.speak-expert h3,
.speak-expert .heading-small {
    color: #fff !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    text-transform: none !important;
    letter-spacing: -0.3px !important;
    margin: 0 !important;
    position: relative !important;
    z-index: 1 !important;
    text-shadow: 0 2px 12px rgba(0,0,0,0.15) !important;
}

/* ── RIGHT: Modern contact card ── */
.call-now-expert {
    background: #fff !important;
    border-radius: 0 24px 24px 0 !important;
    padding: 36px 40px !important;
    height: 100% !important;
    box-shadow: 12px 12px 40px rgba(0,0,0,0.06), 0 2px 8px rgba(0,0,0,0.03) !important;
    border: 1px solid rgba(31,122,99,0.05) !important;
    border-left: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 28px !important;
    position: relative !important;
}

/* Expert avatar with animated ring */
.call-now-expert .expert-pic {
    flex-shrink: 0 !important;
    position: relative !important;
}

.call-now-expert .expert-pic img {
    width: 76px !important;
    height: 76px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    padding: 4px !important;
    background: conic-gradient(from 0deg, #1F7A63, #FF7A00, #1F7A63) !important;
    box-shadow: 0 6px 24px rgba(31,122,99,0.2) !important;
    transition: transform 0.4s ease !important;
}

.call-now-expert .expert-pic img:hover {
    transform: rotate(8deg) scale(1.05) !important;
}

/* ── Contact action buttons ── */
.call-now-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    flex: 1 !important;
}

.call-now-info a,
.call-now-info a.text-white {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    text-decoration: none !important;
    margin: 0 !important;
    padding: 14px 24px !important;
    border-radius: 14px !important;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    line-height: 1.3 !important;
    border: 2px solid transparent !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Phone button — bold gradient */
.call-now-info a:first-child,
.call-now-info a.text-white:first-child {
    color: #fff !important;
    background: linear-gradient(135deg, #1F7A63 0%, #0f6b56 50%, #145A4A 100%) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    box-shadow: 0 6px 20px rgba(31,122,99,0.3), inset 0 1px 0 rgba(255,255,255,0.15) !important;
    letter-spacing: 0.2px !important;
}

.call-now-info a:first-child:hover {
    background: linear-gradient(135deg, #FF7A00 0%, #E56E00 100%) !important;
    box-shadow: 0 8px 28px rgba(255,122,0,0.35) !important;
    transform: translateY(-3px) !important;
}

/* Email button — outlined style */
.call-now-info a:last-child,
.call-now-info a.text-white:last-child {
    color: #145A4A !important;
    background: linear-gradient(135deg, #f0faf6, #e8f5f1) !important;
    border-color: rgba(31,122,99,0.15) !important;
    font-size: 14px !important;
}

.call-now-info a:last-child:hover,
.call-now-info a.text-white:last-child:hover {
    color: #fff !important;
    background: linear-gradient(135deg, #1F7A63, #145A4A) !important;
    border-color: #1F7A63 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 20px rgba(31,122,99,0.25) !important;
}

/* ── Full-width variant ── */
.col-lg-12 > .speak-expert,
.what-do-when-info .speak-expert {
    border-radius: 24px !important;
    padding: 44px 48px !important;
    text-align: center !important;
}
.col-lg-12 > .speak-expert h2,
.col-lg-12 > .speak-expert h3,
.col-lg-12 > .speak-expert .heading-small,
.what-do-when-info .speak-expert h2,
.what-do-when-info .speak-expert .heading-small {
    font-size: 24px !important;
}
.what-do-when-info .speak-expert::after {
    display: none !important;
    content: none !important;
}

/* ── Responsive – Tablet ── */
@media (max-width: 991px) {
    .speak-expert {
        border-radius: 24px 24px 0 0 !important;
        padding: 40px 32px !important;
        text-align: center !important;
    }
    .call-now-expert {
        border-radius: 0 0 24px 24px !important;
        padding: 32px 28px !important;
        border-left: 1px solid rgba(31,122,99,0.05) !important;
        border-top: none !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }
    .speak-expert h2,
    .speak-expert h3,
    .speak-expert .heading-small {
        font-size: 20px !important;
    }
    .call-now-info {
        align-items: stretch !important;
        width: 100% !important;
        max-width: 340px !important;
    }
    .call-now-info a,
    .call-now-info a.text-white {
        justify-content: center !important;
    }
}

/* ── Responsive – Mobile ── */
@media (max-width: 575px) {
    .speak-expert {
        padding: 32px 22px !important;
    }
    .speak-expert h2,
    .speak-expert h3,
    .speak-expert .heading-small {
        font-size: 18px !important;
    }
    .call-now-expert {
        padding: 28px 20px !important;
        gap: 18px !important;
    }
    .call-now-expert .expert-pic img {
        width: 64px !important;
        height: 64px !important;
    }
    .call-now-info a,
    .call-now-info a.text-white {
        font-size: 13px !important;
        padding: 12px 18px !important;
    }
    .call-now-info a:first-child,
    .call-now-info a.text-white:first-child {
        font-size: 14px !important;
    }
}

/* =====================
   5. WHY-CHOOSE CARDS (Blue Section)
   ===================== */
.why-choose-box {
    background: rgba(255,255,255,0.1) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    height: 100% !important;
    text-align: center !important;
    padding: 32px 20px !important;
    border-radius: 16px !important;
    transition: all 0.35s ease !important;
    -webkit-backdrop-filter: blur(6px) !important;
    backdrop-filter: blur(6px) !important;
}
.why-choose-box:hover {
    background: rgba(255,255,255,0.18) !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
}
.why-choose-txt {
    color: #fff !important;
}
.why-choose-txt span img {
    width: 52px !important;
    height: 52px !important;
    margin-bottom: 16px !important;
    filter: brightness(0) invert(1) !important;
}
.why-choose-txt h5 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #fff !important;
    margin-top: 12px !important;
    margin-bottom: 10px !important;
}
.why-choose-txt p {
    font-size: 13px !important;
    color: rgba(255,255,255,0.8) !important;
    line-height: 1.65 !important;
}

/* =====================
   6. LOCAL KNOWLEDGE (Green Banner Sections)
   ===================== */
.local-knowledge-wrapper {
    background: linear-gradient(135deg, #1F7A63 0%, #145A4A 100%) !important;
    padding: 80px 0 !important;
    position: relative !important;
    overflow: hidden !important;
}
.local-knowledge-wrapper::before {
    content: "" !important;
    position: absolute !important;
    top: -100px !important;
    right: -100px !important;
    width: 300px !important;
    height: 300px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,0.04) !important;
    pointer-events: none !important;
}
.local-knowledge-wrapper .heading-title,
.local-knowledge-wrapper h2,
.local-knowledge-wrapper h3 {
    color: #fff !important;
}
.local-knowledge-wrapper p,
.local-knowledge-wrapper .text18 {
    color: rgba(255,255,255,0.85) !important;
}
/* All raw ACF content inside dark wrappers must be white */
.bg-blue p,
.bg-blue li,
.bg-blue ul li,
.local-knowledge-wrapper li,
.local-knowledge-wrapper ul li {
    color: rgba(255,255,255,0.85) !important;
}
.bg-blue a {
    color: #fff !important;
}
/* Links/text in light bg sections must be dark */
.historic-building-survey p {
    color: #4A4A4A !important;
}
.historic-building-survey p a {
    color: #1F7A63 !important;
}
.historic-building-survey p a:hover {
    color: #FF7A00 !important;
}

/* =====================
   7. TAB INTERFACE
   ===================== */
.what-do-when-wrapper {
    padding: 80px 0 !important;
    background: #fff !important;
}
.what-do-when-info {
    background: #F8FBFA !important;
    border-radius: 16px !important;
    padding: 40px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06) !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.what-do-when-info ul.nav.nav-tabs {
    justify-content: center !important;
    padding: 10px 0 0 !important;
    border-bottom: 2px solid #E8F5F1 !important;
    gap: 4px !important;
}
.what-do-when-info .nav li a {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #4A4A4A !important;
    padding: 14px 24px !important;
    border: none !important;
    border-radius: 8px 8px 0 0 !important;
    text-align: center !important;
    width: auto !important;
    height: auto !important;
    margin-right: 0 !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
}
.what-do-when-info .nav-link.active {
    background: #1F7A63 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px 8px 0 0 !important;
}
.what-do-when-info .nav li a:hover {
    background: #E8F5F1 !important;
    color: #1F7A63 !important;
    border-radius: 8px 8px 0 0 !important;
}
.what-do-when-info .tab-content {
    padding: 30px 0 0 !important;
}

/* =====================
   8. WHAT-INCLUDED / SPLIT SECTIONS
   ===================== */
.what-included-survey {
    padding: 0 !important;
    overflow: hidden !important;
}
.what-included-left {
    background: #145A4A !important;
    padding: 48px !important;
}
.what-included-left h2,
.what-included-left .heading-title {
    color: #fff !important;
}
.what-included-right {
    padding: 48px !important;
    background: linear-gradient(135deg, #1F7A63 0%, #145A4A 100%) !important;
    position: relative !important;
}
.what-included-right::after {
    background: rgba(31,122,99,0.95) !important;
}

/* =====================
   9. AREA COVERED BULLETS (Rewritten)
   Default = DARK text. White only inside dark wrappers.
   ===================== */
.area-coverd-widget ul {
    column-count: 2 !important;
    margin-top: 20px !important;
    padding-left: 0 !important;
    list-style: none !important;
}
.area-coverd-widget ul li {
    position: relative !important;
    padding-left: 24px !important;
    margin: 0 0 14px !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #1A1A1A !important;
}
.area-coverd-widget ul li strong {
    color: #050505 !important;
    font-weight: 700 !important;
}
.area-coverd-widget ul li::before {
    font-family: "bootstrap-icons" !important;
    font-weight: 900 !important;
    content: "\F272" !important;
    color: #FF7A00 !important;
    left: 0 !important;
    position: absolute !important;
    font-size: 12px !important;
    top: 3px !important;
}
.area-coverd-widget ul li a {
    color: #1F7A63 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}
.area-coverd-widget ul li a:hover {
    color: #FF7A00 !important;
}
/* Override to WHITE only inside dark wrappers */
.bg-blue .area-coverd-widget ul li,
.local-knowledge-wrapper .area-coverd-widget ul li,
.what-included-left .area-coverd-widget ul li,
.what-included-right .area-coverd-widget ul li,
.area-coverd-wrapper .area-coverd-widget ul li {
    color: #fff !important;
}
.bg-blue .area-coverd-widget ul li::before,
.local-knowledge-wrapper .area-coverd-widget ul li::before,
.what-included-left .area-coverd-widget ul li::before,
.what-included-right .area-coverd-widget ul li::before,
.area-coverd-wrapper .area-coverd-widget ul li::before {
    color: #fff !important;
}
.bg-blue .area-coverd-widget ul li a,
.local-knowledge-wrapper .area-coverd-widget ul li a,
.what-included-left .area-coverd-widget ul li a,
.what-included-right .area-coverd-widget ul li a,
.area-coverd-wrapper .area-coverd-widget ul li a {
    color: #fff !important;
}

/* =====================
  10. BLOG LAYOUTS
   ===================== */
.blog-wrapper {
    padding: 80px 0 !important;
    background: #F8FBFA !important;
}
.blog-detail-bx .blog-pic {
    border-radius: 12px !important;
    overflow: hidden !important;
    margin-bottom: 24px !important;
}
.blog-detail-bx .blog-pic img {
    width: 100% !important;
    border-radius: 12px !important;
    object-fit: cover !important;
}
.blog-detail-bx .blog-reviews {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 0 24px !important;
    padding-bottom: 20px !important;
    border-bottom: 2px solid #E8F5F1 !important;
}
.blog-detail-bx .blog-reviews ul {
    display: flex !important;
    gap: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}
.blog-detail-bx .blog-reviews ul li {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #4A4A4A !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
}
.blog-detail-bx .blog-reviews ul li::before {
    display: none !important;
}
.blog-detail-bx .blog-reviews ul li span {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: #E8F5F1 !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #1F7A63 !important;
    font-size: 14px !important;
}

/* Blog cards grid */
.blog-example-bx {
    background: #fff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
    transition: all 0.35s ease !important;
    height: 100% !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.blog-example-bx:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 28px rgba(31,122,99,0.1) !important;
}
.blog-example-bx .blog-pic {
    height: 200px !important;
    overflow: hidden !important;
    position: relative !important;
}
.blog-example-bx .blog-pic img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.4s ease !important;
    border-radius: 0 !important;
}
.blog-example-bx:hover .blog-pic img {
    transform: scale(1.05) !important;
}
.blog-example-bx .blog-txt {
    padding: 20px !important;
}
.blog-example-bx .blog-txt h4,
.blog-example-bx .blog-txt .heading-small {
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #1A1A1A !important;
    margin-bottom: 8px !important;
}
.blog-example-bx .blog-txt a {
    color: #1F7A63 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
}

/* Read Next section */
.read-next-wrapper {
    padding: 60px 0 !important;
    background: #fff !important;
}
.read-next-wrapper .blog-txt-heading {
    border-top: 3px solid #1F7A63 !important;
    padding-top: 20px !important;
    margin-bottom: 24px !important;
}

/* Pagination */
.blog-wrapper .wp-pagenavi,
.clinet-say-wrapper .wp-pagenavi,
.property-listing .wp-pagenavi {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    margin-top: 40px !important;
}
.wp-pagenavi span.current {
    background: #1F7A63 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
}
.wp-pagenavi a {
    background: #fff !important;
    color: #1A1A1A !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}
.wp-pagenavi a:hover {
    background: #E8F5F1 !important;
    border-color: #1F7A63 !important;
    color: #1F7A63 !important;
}

/* Sidebar */
.sidebar-panel-item {
    background: #fff !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
    margin-bottom: 24px !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.sidebar-panel-item h4,
.sidebar-panel-item .heading-small {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #1A1A1A !important;
    padding-bottom: 12px !important;
    margin-bottom: 16px !important;
    border-bottom: 2px solid #E8F5F1 !important;
}
.news-post-panel {
    display: flex !important;
    gap: 14px !important;
    margin-bottom: 16px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #f0f0f0 !important;
}
.news-post-panel:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.news-post-panel img {
    width: 70px !important;
    height: 70px !important;
    border-radius: 8px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
}
.news-post-panel h5 a {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1A1A1A !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    transition: color 0.3s ease !important;
}
.news-post-panel h5 a:hover {
    color: #1F7A63 !important;
}

/* =====================
  11. TESTIMONIALS PAGE
   ===================== */
.clinet-say-wrapper {
    padding: 80px 0 !important;
    background: #F8FBFA !important;
}
.clinet-info {
    background: #fff !important;
    border-radius: 16px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    border-bottom: 3px solid #1F7A63 !important;
    padding: 32px !important;
    height: 100% !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.05) !important;
    transition: all 0.35s ease !important;
    background-image: none !important;
}
.clinet-info:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 32px rgba(31,122,99,0.1) !important;
}
.quote-icon {
    margin-bottom: 16px !important;
}
.quote-icon img {
    width: 40px !important;
    height: 40px !important;
    opacity: 0.3 !important;
}
.clinet-txt p {
    font-size: 15px !important;
    font-style: italic !important;
    color: #4A4A4A !important;
    line-height: 1.75 !important;
}
.clinet-txt small {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1A1A1A !important;
    display: block !important;
    margin-top: 16px !important;
    padding-top: 16px !important;
    border-top: 1px solid #f0f0f0 !important;
}

/* =====================
  12. PROPERTY PAGES
   ===================== */
.property-listing {
    padding: 80px 0 !important;
    background: #F8FBFA !important;
}
.property-bx {
    background: #fff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
    transition: all 0.35s ease !important;
    height: 100% !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.property-bx:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 12px 32px rgba(31,122,99,0.12) !important;
}
.property-pic {
    height: 240px !important;
    overflow: hidden !important;
}
.property-pic img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    transition: transform 0.4s ease !important;
}
.property-bx:hover .property-pic img {
    transform: scale(1.05) !important;
}
.property-offer-txt {
    padding: 24px !important;
}
.property-offer-txt h4,
.property-offer-txt .heading-small {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #1A1A1A !important;
    margin-bottom: 6px !important;
}
.property-offer-txt p {
    font-size: 14px !important;
    color: #4A4A4A !important;
    margin-bottom: 12px !important;
}
.property-offer-txt a {
    color: #1F7A63 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}
.property-offer-txt a:hover {
    color: #145A4A !important;
    padding-left: 4px !important;
}

/* Single property gallery */
.property-gallery-bx {
    background: #fff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
    margin-bottom: 32px !important;
}
.property-gallery-bx img {
    border-radius: 12px !important;
}
.property-bx-detail {
    background: #fff !important;
    border-radius: 16px !important;
    padding: 32px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.05) !important;
    margin-bottom: 32px !important;
}
.property-location-bx {
    margin-bottom: 32px !important;
}
.property-location-bx h3 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #1A1A1A !important;
    margin-bottom: 16px !important;
}
.map-location {
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
}
.map-location iframe {
    border-radius: 12px !important;
    border: none !important;
}
.facts-feature-bx {
    background: #F8FBFA !important;
    border-radius: 16px !important;
    padding: 32px !important;
    margin-bottom: 32px !important;
}
.facts-feature-bx h3 {
    font-size: 22px !important;
    font-weight: 700 !important;
    margin-bottom: 24px !important;
}

/* Quotation box (property sidebar form) */
.quotation-box {
    background: #fff !important;
    border-radius: 16px !important;
    padding: 32px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
    border: 1px solid rgba(31,122,99,0.1) !important;
    position: sticky !important;
    top: 100px !important;
}
.quotation-box h3,
.quotation-box .heading-title {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #1A1A1A !important;
    margin-bottom: 20px !important;
    text-align: center !important;
}

/* =====================
  13. CHARTERED SURVEYORS / LOCATION PAGES
   ===================== */
.chartered-surveyors {
    padding: 80px 0 !important;
    background: #fff !important;
}
.chartered-property .heading-title,
.chartered-property h2 {
    font-size: 30px !important;
    font-weight: 700 !important;
    color: #1A1A1A !important;
    margin-bottom: 16px !important;
}

/* Location intro (blue text) */
.buying-property p.blue,
.buying-property .blue {
    color: #1F7A63 !important;
    font-weight: 600 !important;
    font-size: 16px !important;
}

/* Propertie service (alternating image+text sections) */
.propertie-service {
    padding: 80px 0 !important;
}
.propertie-service.bg-blue {
    background: linear-gradient(135deg, #1F7A63 0%, #145A4A 100%) !important;
}
.propertie-txt h2,
.propertie-txt .heading-title {
    font-size: 28px !important;
    font-weight: 700 !important;
    margin-bottom: 16px !important;
}
.propertie-pic {
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}
.propertie-pic img {
    width: 100% !important;
    border-radius: 16px !important;
    object-fit: cover !important;
}

/* =====================
  14. BUILDING SURVEY SECTIONS
   ===================== */
.building-surveys-wrapper {
    padding: 80px 0 !important;
    background: #fff !important;
}
.building-surveys-wrapper img {
    border-radius: 16px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}
.approachable-service {
    padding: 60px 0 !important;
    background: #F8FBFA !important;
}
.approachable-service .service-box {
    background: #fff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
    transition: all 0.35s ease !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.approachable-service .service-box:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 24px rgba(31,122,99,0.1) !important;
}
.approachable-service .service-box img {
    border-radius: 12px 12px 0 0 !important;
    box-shadow: none !important;
    width: 100% !important;
    object-fit: cover !important;
}

/* =====================
  15. HISTORIC / LISTED BUILDING SURVEY
   ===================== */
.historic-building-survey {
    padding: 60px 0 !important;
    background: #F8FBFA !important;
}
.historic-building-survey .heading-title {
    font-size: 28px !important;
}

/* Areas services listing within location pages */
.area-serviced-list ul {
    list-style: none !important;
    padding: 0 !important;
}
.area-serviced-list ul li {
    margin-bottom: 10px !important;
}
.area-serviced-list ul li a {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 12px 16px !important;
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
    color: #1A1A1A !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.area-serviced-list ul li a:hover {
    background: #E8F5F1 !important;
    color: #1F7A63 !important;
    border-color: rgba(31,122,99,0.15) !important;
    transform: translateX(4px) !important;
}

/* =====================
  16. GRAY SECTIONS
   ===================== */
.bg-gray,
section.bg-gray {
    background: #F8FBFA !important;
}

/* =====================
  17. 404 PAGE
   ===================== */
.error-wrapper {
    padding: 80px 0 !important;
    background: #F8FBFA !important;
}
.error-box {
    background: #fff !important;
    border-radius: 20px !important;
    padding: 60px 48px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.06) !important;
    text-align: center !important;
    max-width: 800px !important;
    margin: 0 auto !important;
}
.error-pic img {
    max-width: 280px !important;
    margin-bottom: 32px !important;
}
.error-txt h2 {
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #1A1A1A !important;
    margin-bottom: 12px !important;
}
.error-txt p {
    font-size: 16px !important;
    color: #4A4A4A !important;
    margin-bottom: 28px !important;
}
.error-txt a.btn,
.error-txt .btn {
    display: inline-block !important;
    background: #1F7A63 !important;
    color: #fff !important;
    padding: 14px 36px !important;
    border-radius: 50px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: none !important;
}
.error-txt a.btn:hover,
.error-txt .btn:hover {
    background: #145A4A !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(31,122,99,0.3) !important;
}

/* =====================
  18. STATIC CONTENT (Default page.php)
   ===================== */
.static-content-wrapper {
    padding: 80px 0 !important;
    background: #fff !important;
}
.static-content-wrapper .flip-txt {
    position: absolute !important;
    top: -20px !important;
    right: -10px !important;
    opacity: 0.04 !important;
}
.static-content-wrapper img {
    border-radius: 12px !important;
}

/* Detailed wrapper (services bottom text section) */
.detailed-wrapper {
    padding: 60px 0 !important;
    background: #F8FBFA !important;
}

/* =====================
  19. SOUTHWOLD & SPECIAL LOCATIONS
   ===================== */
.southwold-surveyors,
.southwold-sea,
.north-parade,
.southwold-survey {
    padding: 60px 0 !important;
}
.southwold-sea {
    background: linear-gradient(135deg, #1F7A63 0%, #145A4A 100%) !important;
}
.southwold-property img,
.north-parade img {
    border-radius: 16px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}

/* =====================
  20. AREAS COVER PAGE
   ===================== */
.areas-cover-wrapper {
    padding: 60px 0 !important;
    background: #fff !important;
}
.chiltern-location-wrapper {
    padding: 60px 0 !important;
    background: #F8FBFA !important;
}
.location-point {
    margin-bottom: 16px !important;
}
.location-point a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 14px 20px !important;
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
    color: #1A1A1A !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
}
.location-point a:hover {
    background: #E8F5F1 !important;
    color: #1F7A63 !important;
    border-color: rgba(31,122,99,0.15) !important;
    transform: translateX(4px) !important;
}
.location-icon {
    text-align: center !important;
}
.location-icon i {
    font-size: 120px !important;
    color: #E8F5F1 !important;
}

/* =====================
  21. TIMBER FRAMED
   ===================== */
.timber-framed-building {
    padding: 80px 0 !important;
    background: #fff !important;
}
.timber-framed-building img {
    border-radius: 16px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}

/* =====================
  22. COMMERCIAL PAGES
   ===================== */
.comm-to-res-wrapper,
.commercial-wrapper {
    padding: 80px 0 !important;
    background: #fff !important;
}
.comm-to-res-wrapper img,
.commercial-wrapper img {
    border-radius: 16px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}
.structural-service {
    padding: 60px 0 !important;
    background: #F8FBFA !important;
}
.structural-service img {
    border-radius: 12px !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
}

/* Orange section fix */
.bg-org {
    background: linear-gradient(135deg, #FF7A00 0%, #E56E00 100%) !important;
    padding: 60px 0 !important;
}
.bg-org .heading-title,
.bg-org h2,
.bg-org h3 {
    color: #fff !important;
}
.bg-org p,
.bg-org .text18 {
    color: rgba(255,255,255,0.9) !important;
}

/* Local expertise (location pages) */
.local-expertise {
    padding: 60px 0 !important;
    background: #fff !important;
}
.independent-property img {
    border-radius: 16px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}

/* Listed building wrapper */
.listed-building-wrapper {
    padding: 80px 0 !important;
    background: #fff !important;
}
.listed-building-wrapper img {
    border-radius: 16px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}
.float_pic img {
    border-radius: 16px !important;
}

/* Inner about wrapper (historic buildings) */
.inner-abt-wrapper {
    padding: 80px 0 !important;
    background: #fff !important;
}
.inner-abt-wrapper img {
    border-radius: 16px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1) !important;
}

/* =====================
  23. BUTTONS
   ===================== */
.enq-button a,
a.btn-primary,
.btn-about {
    display: inline-block !important;
    background: #1F7A63 !important;
    color: #fff !important;
    padding: 14px 32px !important;
    border-radius: 50px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}
.enq-button a:hover,
a.btn-primary:hover,
.btn-about:hover {
    background: #145A4A !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(31,122,99,0.3) !important;
    color: #fff !important;
}

/* =====================
  24. RESPONSIVE
   ===================== */
@media (max-width: 1199px) {
    .inner-slider-text h1 {
        font-size: 36px !important;
    }
    .heading-title {
        font-size: 30px !important;
    }
    .what-do-when-info .nav li a {
        font-size: 14px !important;
        padding: 12px 18px !important;
    }
}

@media (max-width: 991px) {
    .inner-slider {
        min-height: 280px !important;
        padding: 80px 0 50px !important;
    }
    .inner-slider-text h1 {
        font-size: 30px !important;
    }
    .heading-title {
        font-size: 26px !important;
    }
    .heading-small {
        font-size: 18px !important;
    }
    .service-page-wrapper,
    .blog-wrapper,
    .clinet-say-wrapper,
    .property-listing,
    .building-surveys-wrapper,
    .chartered-surveyors,
    .what-do-when-wrapper,
    .local-knowledge-wrapper,
    .comm-to-res-wrapper,
    .commercial-wrapper,
    .timber-framed-building,
    .listed-building-wrapper,
    .inner-abt-wrapper {
        padding: 60px 0 !important;
    }
    .propertie-service,
    .southwold-sea {
        padding: 60px 0 !important;
    }
    .what-do-when-info {
        padding: 24px !important;
    }
    .what-do-when-info .nav li a {
        font-size: 13px !important;
        padding: 10px 14px !important;
    }
    .error-box {
        padding: 40px 24px !important;
    }
    .why-choose-box {
        padding: 24px 16px !important;
        margin-bottom: 16px !important;
    }
    .area-coverd-widget ul {
        column-count: 1 !important;
    }
    .propertie-pic {
        margin-bottom: 24px !important;
    }
}

@media (max-width: 767px) {
    .inner-slider {
        min-height: 240px !important;
        padding: 70px 0 40px !important;
    }
    .inner-slider-text h1 {
        font-size: 26px !important;
    }
    .heading-title {
        font-size: 24px !important;
    }
    .service-page-wrapper,
    .blog-wrapper,
    .clinet-say-wrapper,
    .property-listing,
    .building-surveys-wrapper,
    .chartered-surveyors,
    .what-do-when-wrapper,
    .local-knowledge-wrapper,
    .comm-to-res-wrapper,
    .commercial-wrapper {
        padding: 48px 0 !important;
    }
    .service-offer-pic {
        height: 200px !important;
    }
    .property-pic {
        height: 200px !important;
    }
    .what-do-when-info ul.nav.nav-tabs {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    .what-do-when-info .nav li a {
        border-radius: 8px !important;
        text-align: center !important;
    }
    .what-do-when-info .nav-link.active {
        border-radius: 8px !important;
    }
    .what-included-left,
    .what-included-right {
        padding: 32px 20px !important;
    }
    .error-box {
        padding: 32px 20px !important;
    }
    .error-pic img {
        max-width: 200px !important;
    }
    .property-gallery-bx,
    .property-bx-detail,
    .facts-feature-bx {
        padding: 20px !important;
    }
    .quotation-box {
        position: static !important;
        margin-top: 32px !important;
    }
}

@media (max-width: 575px) {
    .inner-slider-text h1 {
        font-size: 22px !important;
    }
    .heading-title {
        font-size: 22px !important;
    }
    .heading-small {
        font-size: 16px !important;
    }
    .blog-detail-bx .blog-reviews ul {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }
    .service-offer-txt {
        padding: 18px !important;
    }
    .property-offer-txt {
        padding: 18px !important;
    }
    .clinet-info {
        padding: 24px !important;
    }
    .what-do-when-info {
        padding: 16px !important;
    }
}
