/*
Theme Name: SWP Painting
Theme URI: https://scintillawpthemes.com/product/swp-painting/
Author: scintillawpthemes
Author URI: https://scintillawpthemes.com/
Description: SWP Painting is a modern, lightweight, and responsive WordPress theme designed for painting companies, house painters, interior and exterior painting services, decorators, renovation contractors, and home improvement businesses. Its clean and professional design helps you showcase your services, completed projects, customer testimonials, and contact information with ease. The theme features a mobile-friendly layout, fast-loading performance, SEO-friendly code, and compatibility with the latest version of WordPress. It supports the Block Editor (Gutenberg) and works seamlessly with popular page builders, allowing you to create beautiful pages without coding knowledge. Whether you're a professional painter, commercial painting contractor, wallpaper installer, drywall specialist, epoxy flooring expert, pressure washing service, or a home renovation business, SWP Painting provides a flexible foundation for creating a professional online presence.
Version: 1.0
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 7.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: swp-painting
Tags: blog, education, portfolio, one-column, two-columns, custom-colors, custom-menu, custom-logo, sticky-post, threaded-comments, right-sidebar, left-sidebar, grid-layout, custom-background, rtl-language-support, featured-images, wide-blocks, editor-style, full-site-editing, block-patterns, block-styles, template-editing, footer-widgets, custom-header, translation-ready
*/

.swp-parent-container-1 {
    padding: 90px 20px !important;
}

.swp-single-post-template {
    padding: 0px 20px !important;
}

/* Header */
.swp-header-wrap {
    position: sticky;
    top: 0;
    z-index: 60;
}
.swp-topbar-item {
    color: var(--wp--preset--color--dark-background);
    margin: 0;
}
.swp-topbar-item a:hover,
.swp-topbar-promo a:hover {
    color: var(--wp--preset--color--accent);
}
.swp-topbar-item {
    color: var(--wp--preset--color--dark-background);
    align-items: center;
}
.swp-topbar-item p {
    margin: 0;
    line-height: 1;
    color: var(--wp--preset--color--dark-background);
}
.swp-topbar-ico {
    margin: 0 !important;
    display: flex;
    align-items: center;
    flex: none;
}
.swp-topbar-ico img {
    display: block;
}
.swp-topbar-item a:hover {
    color: var(--wp--preset--color--accent);
}
.swp-topbar-socials {
    gap: 10px !important;
}
.swp-topbar-socials .wp-social-link {
    width: 24px !important;
    height: 24px !important;
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: transparent !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff;
    transition: background .2s ease, border-color .2s ease;
}
.swp-topbar-socials .wp-social-link:hover {
    background: var(--wp--preset--color--accent) !important;
    border-color: var(--wp--preset--color--accent);
    transform: none;
}
.swp-topbar-socials .wp-social-link svg {
    width: 12px !important;
    height: 12px !important;
    fill: #fff !important;
}
.swp-header-search {
    position: relative;
}
.swp-header-search .wp-block-search__inside-wrapper {
    border: none;
}
.swp-header-search .wp-block-search__button {
    background: #fff !important;
    border: 1px solid #17130f1f !important;
    color: var(--wp--preset--color--heading) !important;
    border-radius: 50% !important;
    width: 42px;
    min-width: 42px;
    height: 42px;
    padding: 0 !important;
    margin: 0 !important;
    display: grid;
    place-items: center;
    transition: border-color .2s ease, transform .2s ease;
}
.swp-header-search .wp-block-search__button:hover {
    border-color: var(--wp--preset--color--heading) !important;
    transform: translateY(-2px);
}
.swp-header-search .wp-block-search__button svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}
/* open input overlays below button, no layout reflow */
.swp-header-search .wp-block-search__input {
    position: absolute;
    right: 0;
    top: calc(100% + 10px);
    width: 280px;
    max-width: 72vw;
    padding: 12px 16px;
    border: 1px solid #17130f1f !important;
    border-radius: 30px;
    background: #fff;
    box-shadow: var(--wp--preset--shadow--deep-shadow);
    z-index: 65;
}
.swp-header-search .wp-block-search__input:focus {
    outline: none;
    border-color: var(--wp--preset--color--accent) !important;
}

/* Header navigation */
.swp-header-nav {
    font-weight: 600;
}
@media (min-width: 1081px) {
    .swp-header-nav > .wp-block-navigation__container {
        flex-wrap: nowrap;
    }
}
.swp-header-nav .wp-block-navigation-item__content {
    padding: 10px 14px;
    border-radius: 30px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    transition: color .2s ease, background .2s ease;
}
.swp-header-nav > .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
.swp-header-nav .wp-block-navigation-item__content:focus {
    color: var(--wp--preset--color--accent-deep);
    background: rgba(255, 90, 31, .08);
}
/* caret spacing */
.swp-header-nav .wp-block-navigation__submenu-icon {
    margin-left: 2px;
}

/* Dropdown submenu box — desktop only */
@media (min-width: 1081px) {
    .swp-header-nav .wp-block-navigation__submenu-container {
        background: #fff;
        border: 1px solid #17130f1f;
        border-radius: 14px;
        box-shadow: var(--wp--preset--shadow--deep-shadow);
        padding: 8px;
        min-width: 214px;
        margin-top: 8px;
    }
    /* invisible bridge covers the 8px gap so hover doesn't drop */
    .swp-header-nav .wp-block-navigation__submenu-container::before {
        content: "";
        position: absolute;
        top: -8px;
        left: 0;
        right: 0;
        height: 8px;
        background: transparent;
    }
    .swp-header-nav .wp-block-navigation__submenu-container .wp-block-navigation-item {
        margin-bottom: 4px;
    }
    .swp-header-nav .wp-block-navigation__submenu-container .wp-block-navigation-item:last-child {
        margin-bottom: 0;
    }
    .swp-header-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        display: block;
        padding: 9px 14px;
        border-radius: 9px;
        text-transform: none;
        letter-spacing: 0;
        font-weight: 600;
        color: var(--wp--preset--color--light-heading);
    }
    .swp-header-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
        background: var(--wp--preset--color--dark-background);
        color: var(--wp--preset--color--accent-deep);
    }
}

/* Mobile overlay menu */
.swp-header-nav .wp-block-navigation__responsive-container.is-menu-open {
    background: var(--wp--preset--color--light-background);
    padding-top: 80px;
}
.swp-header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    gap: 0;
}
.swp-header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
    width: 100%;
    border-bottom: 1px solid #17130f14;
}
.swp-header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    padding: 14px 4px;
    border-radius: 0;
    font-size: 1.15rem;
    font-weight: 700;
    text-transform: uppercase;
}
/* submenu expands inline — kill the desktop floating box */
.swp-header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
    position: static;
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0 0 0 14px;
    margin: 0;
    min-width: 0;
}
.swp-header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    font-size: 1rem;
    font-weight: 500;
    text-transform: none;
    color: var(--wp--preset--color--body-text);
}

/* Headings never overflow small screens */
h1, h2, h3, h4 {
    overflow-wrap: break-word;
    word-break: normal;
}

/* Footer */
.swp-footer {
    color: #A89F92;
    padding: 90px 20px 20px 20px !important;
}
.swp-footer-about,
.swp-footer-about a {
    color: #A89F92;
}
.swp-footer-about a:hover {
    color: var(--wp--preset--color--accent);
}
.swp-foot-heading {
    color: #fff;
}
.swp-foot-nav .wp-block-navigation-item__content {
    color: #A89F92;
    padding: 7px 0;
    transition: color .2s ease, padding .2s ease;
}
.swp-foot-nav .wp-block-navigation-item__content:hover {
    color: var(--wp--preset--color--accent);
    padding-left: 6px;
}
.swp-foot-contact {
    align-items: flex-start;
}
.swp-foot-ico {
    margin-top: 2px;
    flex: none;
}

/* Footer social icons — bordered boxes (match reference) */
.swp-foot-socials {
    gap: 10px !important;
}
.swp-foot-socials .wp-social-link {
    width: 38px !important;
    height: 38px !important;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: transparent !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0 !important;
    transition: background .2s ease, border-color .2s ease;
}
.swp-foot-socials .wp-social-link:hover {
    background: var(--wp--preset--color--accent) !important;
    border-color: var(--wp--preset--color--accent);
    transform: none;
}
.swp-foot-socials .wp-social-link svg {
    width: 16px !important;
    height: 16px !important;
    fill: #fff !important;
}

/* Newsletter field */
.swp-foot-news {
    margin-top: 16px;
}
.swp-foot-news .wp-block-search__inside-wrapper {
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 40px;
    padding: 5px 5px 5px 18px;
}
.swp-foot-news .wp-block-search__input {
    background: transparent !important;
    border: none !important;
    color: #fff;
    box-shadow: none !important;
}
.swp-foot-news .wp-block-search__input::placeholder {
    color: #8E8578;
}
.swp-foot-news .wp-block-search__button {
    background: var(--wp--preset--color--accent) !important;
    color: #fff !important;
    border: none !important;
    width: 42px;
    min-width: 42px;
    height: 42px;
    border-radius: 50% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid;
    place-items: center;
}
.swp-foot-news .wp-block-search__button svg {
    width: 17px;
    height: 17px;
    fill: #fff;
}

/* Sub-footer */
.swp-subfoot-text,
.swp-subfoot-text a {
    color: #8E8578;
    text-transform: none;
    letter-spacing: 0;
}
.swp-subfoot-text a:hover {
    color: var(--wp--preset--color--accent);
}

/* Blog cards */
.swp-blog-card {
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: left;
}
.swp-blog-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--wp--preset--shadow--deep-shadow);
}
.swp-blog-thumb {
    position: relative;
    min-height: 210px;
    background: var(--wp--preset--color--dark-background) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2317130f' stroke-opacity='0.18' stroke-width='1.5'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Ccircle cx='9' cy='9' r='2'/%3E%3Cpath d='m21 15-5-5L5 21'/%3E%3C/svg%3E") center/48px no-repeat;
    overflow: hidden;
    border-radius: 18px 18px 0 0;
}
.swp-blog-thumb .wp-block-post-featured-image,
.swp-blog-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    margin: 0;
}
.swp-blog-thumb img {
    object-fit: cover;
}
.swp-blog-date {
    position: absolute;
    left: 14px;
    top: 14px;
    z-index: 2;
    background: var(--wp--preset--color--accent);
    color: #fff;
    border-radius: 12px;
    padding: 8px 12px;
    line-height: 1;
    text-align: center;
    box-shadow: var(--wp--preset--shadow--soft-shadow);
}
.swp-blog-date a,
.swp-blog-date time {
    color: #fff !important;
}
.swp-blog-card .wp-block-post-title,
.swp-blog-card .swp-blog-tags,
.swp-blog-card .swp-blog-more {
    text-align: left;
}
.swp-blog-more {
    margin-top: 20px !important;
}
.swp-blog-more a {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    justify-content: flex-start;
}
.swp-blog-card:hover .swp-blog-more a {
    color: var(--wp--preset--color--accent) !important;
}

/* Services cards */
.swp-service-card {
    transition: transform .3s ease, box-shadow .3s ease, background .3s ease;
    height: 100%;
}
.swp-service-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--wp--preset--shadow--deep-shadow);
    background: var(--wp--preset--color--heading) !important;
}
.swp-service-card:hover h3,
.swp-service-card:hover p {
    color: #fff !important;
}
.swp-service-card:hover .swp-read-more a {
    color: var(--wp--preset--color--accent) !important;
}
.swp-read-more a {
    display: inline-flex;
    gap: 8px;
    align-items: center;
}

/* Hero visual + overlay chip */
.swp-hero-visual {
    position: relative;
}
.swp-hero-visual img {
    box-shadow: var(--wp--preset--shadow--deep-shadow);
}
.swp-hero-chip {
    position: absolute;
    right: -10px;
    top: 30px;
    z-index: 2;
    box-shadow: var(--wp--preset--shadow--deep-shadow);
}

/* Ghost button */
.swp-btn-ghost .wp-block-button__link {
    background-color: transparent !important;
    color: var(--wp--preset--color--heading) !important;
    border: 1.5px solid #17130f1f !important;
}
.swp-btn-ghost .wp-block-button__link:hover {
    border-color: var(--wp--preset--color--heading) !important;
}

.swp-homeo-btn-gold a:hover{
    background-color: #17130F;
    transition: all 0.3s ease;
}

.swp-homeo-btn-green a:hover{
    background-color: #FF5A1F !important;
    transition: all 0.3s ease;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .swp-parent-container-1 {
        padding: 48px 18px !important;
    }
    .swp-footer {
        padding: 40px 18px 10px 18px !important;
    }
    .swp-parent-container-remove-bg {
        background: none !important;
    }
    .swp-counter-column-2 {
        border: none !important;
    }
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column .swp-counter-column {
        flex-basis: 25% !important;
    }
    .swp-about-img-1 img {
        width: 100% !important;
        height: 400px !important;
    }
    .swp-about-img-2 {
        bottom: -20px !important;
    }
    .swp-about-img-2 img {
        width: 220px !important;
        height: 220px !important;
    }
    .swp-headerbutton {
        display: none !important;
    }
    .swp-header-logo-wrapper {
        flex-basis: 75% !important;
    }
    .swp-header-logo-menu-wrapper {
        flex-basis: 25% !important;
    }
    .swp-hero-chip {
        right: 12px !important;
        top: auto !important;
        bottom: 18px;
        display: inline-flex !important;
        width: auto;
    }
    /* cap tall hero image */
    .swp-hero-visual img {
        aspect-ratio: 4 / 3 !important;
        max-height: 440px;
    }
    /* keep hero "800+" on one line (exclude services heading) */
    .swp-parent-container-1:not(.swp-services) .has-h-2-font-size {
        white-space: nowrap;
    }
    /* blog "View all posts" stays right on mobile */
    .swp-blog .wp-block-buttons {
        justify-content: flex-end !important;
        width: 100%;
    }
}

/* Tab responsive */
@media (min-width: 768px) and (max-width: 1024px) {
    .footer-columns-parent {
        display: flex !important;
        flex-wrap: wrap !important;
    }
    .wp-block-columns:not(.is-not-stacked-on-mobile)> .footer-columns-child {
        flex-basis: 45% !important;
        margin-bottom: 20px !important;
        flex-grow: unset !important;
    }   
}