/* RepairHit Stage 1L: force only one Request Quote button visually */
.rh-target-hero .rh-target-hidden-old-summary,
.rh-target-hero .rh-target-old-actions{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
}

    /* RepairHit Stage 1M: hide old middle quick-action buttons */
    body:has(.rh-target-hero) .rh-target-info-card .profile-body,
    body:has(.rh-target-hero) .rh-target-info-card .action-row,
    body:has(.rh-target-hero) .rh-target-info-card .action-row-brand,
    body:has(.rh-target-hero) .rh-target-info-card .btn-action,
    body:has(.rh-target-hero) .rh-target-info-card .business-track-link:not(.rh-target-btn),
    body:has(.rh-target-hero) .rh-target-info-card .share-business-trigger:not(.rh-target-btn):not(.rh-target-circle){
        display:none!important;
        visibility:hidden!important;
        height:0!important;
        max-height:0!important;
        overflow:hidden!important;
        margin:0!important;
        padding:0!important;
        border:0!important;
    }

    body:has(.rh-target-hero) .rh-target-info-card > .rh-target-action-grid,
    body:has(.rh-target-hero) .rh-target-info-card > .rh-target-claim-btn,
    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid .rh-target-btn,
    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid form,
    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid form button{
        display:flex!important;
        visibility:visible!important;
    }

    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid{
        display:grid!important;
    }

    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid-top{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }

    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid-bottom{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid-bottom .rh-target-btn{
        background:#fff!important;
        color:#071d49!important;
        border:1px solid #c9d8ee!important;
    }

    body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid-bottom .rh-target-btn:first-child{
        background:#fff!important;
        color:#071d49!important;
        box-shadow:none!important;
    }

    @media(max-width:430px){
        body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid-top{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
        }

        body:has(.rh-target-hero) .rh-target-info-card .rh-target-action-grid-bottom{
            grid-template-columns:1fr!important;
        }
    }


    /* RepairHit Stage 1O: center Request Quote modal */
    body.quote-modal-open{
        overflow:hidden!important;
    }

    .rh-quote-modal,
    #repairhitQuoteModal,
    #requestQuoteModal,
    [data-request-quote-modal]{
        position:fixed!important;
        inset:0!important;
        z-index:9999!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        padding:24px!important;
        background:rgba(7, 18, 42, .68)!important;
        backdrop-filter:blur(6px)!important;
        overflow-y:auto!important;
    }

    .rh-quote-modal[hidden],
    #repairhitQuoteModal[hidden],
    #requestQuoteModal[hidden],
    [data-request-quote-modal][hidden]{
        display:none!important;
    }

    .rh-quote-modal > *,
    #repairhitQuoteModal > *,
    #requestQuoteModal > *,
    [data-request-quote-modal] > *{
        width:min(100%, 640px)!important;
        max-width:640px!important;
        margin:auto!important;
        border-radius:22px!important;
    }

    .rh-quote-modal form,
    #repairhitQuoteModal form,
    #requestQuoteModal form,
    [data-request-quote-modal] form{
        width:100%!important;
        max-width:640px!important;
        margin:0 auto!important;
    }

    @media(max-width:760px){
        .rh-quote-modal,
        #repairhitQuoteModal,
        #requestQuoteModal,
        [data-request-quote-modal]{
            align-items:flex-start!important;
            justify-content:center!important;
            padding:14px!important;
        }

        .rh-quote-modal > *,
        #repairhitQuoteModal > *,
        #requestQuoteModal > *,
        [data-request-quote-modal] > *{
            width:100%!important;
            max-width:100%!important;
            margin:18px auto!important;
            border-radius:18px!important;
        }
    }


    /* RepairHit Stage 2A: target tabs only */
    .rh-target-tabs{
        width:100%!important;
        max-width:100%!important;
        margin:12px auto 0!important;
        padding:8px!important;
        display:flex!important;
        align-items:center!important;
        gap:8px!important;
        overflow-x:auto!important;
        scrollbar-width:none!important;
        -webkit-overflow-scrolling:touch!important;
        border:1px solid rgba(214,227,250,.95)!important;
        border-radius:22px!important;
        background:#fff!important;
        box-shadow:0 12px 28px rgba(8,27,66,.08)!important;
    }

    .rh-target-tabs::-webkit-scrollbar{
        display:none!important;
    }

    .rh-target-tabs a{
        flex:1 0 auto!important;
        min-width:max-content!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        min-height:46px!important;
        padding:0 18px!important;
        border-radius:16px!important;
        color:#071d49!important;
        text-decoration:none!important;
        font-weight:900!important;
        font-size:.98rem!important;
        border:1px solid transparent!important;
        background:transparent!important;
        white-space:nowrap!important;
    }

    .rh-target-tabs a.is-active,
    .rh-target-tabs a:hover{
        background:#fff7d8!important;
        border-color:#f1d67a!important;
        color:#071d49!important;
    }

    body:has(.rh-target-tabs) .profile-nav.profile-nav-equal{
        display:none!important;
        visibility:hidden!important;
        height:0!important;
        overflow:hidden!important;
        margin:0!important;
        padding:0!important;
        border:0!important;
    }

    .rh-target-overview-anchor{
        position:relative!important;
        top:-90px!important;
        height:0!important;
        overflow:hidden!important;
    }

    @media(max-width:760px){
        .rh-target-tabs{
            margin-top:10px!important;
            padding:7px!important;
            gap:6px!important;
            border-radius:18px!important;
        }

        .rh-target-tabs a{
            min-height:42px!important;
            padding:0 14px!important;
            border-radius:13px!important;
            font-size:.9rem!important;
        }
    }


    /* RepairHit Stage 2B: target About section only */
    .rh-target-about-card{
        width:100%!important;
        max-width:100%!important;
        margin:14px auto 0!important;
        padding:24px!important;
        display:grid!important;
        grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr)!important;
        gap:22px!important;
        align-items:stretch!important;
        border:1px solid rgba(214,227,250,.95)!important;
        border-radius:28px!important;
        background:#fff!important;
        box-shadow:0 18px 42px rgba(8,27,66,.10)!important;
        box-sizing:border-box!important;
    }

    .rh-target-about-main{
        min-width:0!important;
    }

    .rh-target-section-kicker{
        display:inline-flex!important;
        align-items:center!important;
        width:max-content!important;
        margin-bottom:10px!important;
        padding:6px 12px!important;
        border-radius:999px!important;
        background:#fff7d8!important;
        border:1px solid #f1d67a!important;
        color:#071d49!important;
        font-size:.82rem!important;
        font-weight:950!important;
        letter-spacing:.02em!important;
        text-transform:uppercase!important;
    }

    .rh-target-about-card h2{
        margin:0 0 10px!important;
        color:#071d49!important;
        font-size:1.55rem!important;
        line-height:1.16!important;
        letter-spacing:-.025em!important;
        font-weight:950!important;
    }

    .rh-target-about-card p{
        margin:0!important;
        color:#405778!important;
        font-size:1rem!important;
        line-height:1.7!important;
        font-weight:500!important;
    }

    .rh-target-about-tags{
        margin-top:18px!important;
        display:flex!important;
        flex-wrap:wrap!important;
        gap:10px!important;
    }

    .rh-target-about-tags span{
        display:inline-flex!important;
        align-items:center!important;
        min-height:36px!important;
        padding:0 13px!important;
        border-radius:999px!important;
        background:#f8fbff!important;
        border:1px solid rgba(214,227,250,.95)!important;
        color:#071d49!important;
        font-size:.9rem!important;
        font-weight:850!important;
    }

    .rh-target-trust-card{
        display:grid!important;
        gap:12px!important;
        align-content:start!important;
        padding:16px!important;
        border-radius:22px!important;
        border:1px solid rgba(214,227,250,.95)!important;
        background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%)!important;
        box-sizing:border-box!important;
    }

    .rh-target-trust-item{
        display:grid!important;
        grid-template-columns:42px minmax(0,1fr)!important;
        gap:12px!important;
        align-items:start!important;
        padding:12px!important;
        border-radius:18px!important;
        background:#fff!important;
        border:1px solid rgba(226,234,246,.95)!important;
    }

    .rh-target-trust-item > span{
        width:42px!important;
        height:42px!important;
        display:grid!important;
        place-items:center!important;
        border-radius:14px!important;
        background:#071d49!important;
        color:#ffc928!important;
        font-size:1rem!important;
        font-weight:950!important;
    }

    .rh-target-trust-item strong{
        display:block!important;
        margin:0 0 4px!important;
        color:#071d49!important;
        font-size:.98rem!important;
        line-height:1.2!important;
        font-weight:950!important;
    }

    .rh-target-trust-item small{
        display:block!important;
        color:#567094!important;
        font-size:.86rem!important;
        line-height:1.4!important;
        font-weight:600!important;
    }

    @media(max-width:860px){
        .rh-target-about-card{
            grid-template-columns:1fr!important;
            gap:16px!important;
        }
    }

    @media(max-width:760px){
        .rh-target-about-card{
            margin-top:12px!important;
            padding:18px!important;
            border-radius:22px!important;
        }

        .rh-target-about-card h2{
            font-size:1.32rem!important;
        }

        .rh-target-about-card p{
            font-size:.96rem!important;
            line-height:1.62!important;
        }

        .rh-target-trust-card{
            padding:12px!important;
            border-radius:18px!important;
        }

        .rh-target-trust-item{
            grid-template-columns:38px minmax(0,1fr)!important;
            padding:10px!important;
            border-radius:16px!important;
        }

        .rh-target-trust-item > span{
            width:38px!important;
            height:38px!important;
            border-radius:12px!important;
        }
    }

/* ---- moved from business.blade.php ---- */

.rh-public-services-section{padding:24px!important}
                    .rh-public-service-list{display:grid;gap:18px;margin-top:18px}
                    .rh-public-service-card{display:flex;gap:20px;align-items:flex-start;padding:18px 20px;border:1px solid #e1e6ee;border-radius:22px;background:#fff;box-shadow:0 8px 18px rgba(16,38,69,.08)}
                    .rh-public-service-card.no-image{display:block}
                    .rh-public-service-image{width:92px;height:92px;border-radius:18px;object-fit:cover;flex:0 0 auto;background:#f1f5f9}
                    .rh-public-service-body{min-width:0;display:grid;gap:8px}
                    .rh-public-service-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
                    .rh-public-service-body h3{margin:0;color:#111827;font-size:1.18rem;line-height:1.25;font-weight:900}
                    .rh-public-service-body p{margin:0;color:#475569;font-size:1rem;line-height:1.55}
                    .rh-public-service-price{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;background:#fff7dc;color:#604600;border:1px solid #f0d57b;font-weight:900;white-space:nowrap}
                    @media(max-width:680px){
                        .rh-public-services-section{padding:16px!important}
                        .rh-public-service-card{gap:14px;padding:14px;border-radius:18px}
                        .rh-public-service-image{width:72px;height:72px;border-radius:15px}
                        .rh-public-service-title-row{display:grid;gap:8px}
                        .rh-public-service-price{justify-self:start}
                    }
                
    /* RepairHit Stage 1 visible test */
    .rh-stage1-visible-hero{
        background:#fff!important;
        border-radius:28px!important;
        overflow:hidden!important;
        padding:0!important;
        border:1px solid #d7e3f4!important;
        box-shadow:0 18px 42px rgba(8,27,66,.12)!important;
    }
    .rh-stage1-visible-hero .profile-cover{
        padding:0!important;
        background:#fff!important;
    }
    .rh-stage1-visible-hero .profile-header-grid{
        display:block!important;
        grid-template-columns:none!important;
        gap:0!important;
        background:#fff!important;
    }
    .rh-stage1-visible-main-image{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        padding:0!important;
    }
    .rh-stage1-visible-main-image .profile-thumb-card-large{
        width:100%!important;
        height:430px!important;
        min-height:430px!important;
        border-radius:0!important;
        border:0!important;
        box-shadow:none!important;
        background:#eef4fb!important;
    }
    .rh-stage1-visible-main-image .profile-thumb-card-large img{
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        object-position:center!important;
        border-radius:0!important;
        display:block!important;
    }
    .rh-stage1-visible-hero .profile-header-copy{
        padding:26px 30px 10px!important;
        max-width:100%!important;
        background:#fff!important;
    }
    .rh-stage1-visible-hero .profile-body{
        padding:10px 30px 30px!important;
        background:#fff!important;
    }
    .rh-stage1-visible-hero h1{
        color:#071d49!important;
    }
    @media(max-width:760px){
        .rh-stage1-visible-main-image .profile-thumb-card-large{
            height:310px!important;
            min-height:310px!important;
        }
        .rh-stage1-visible-hero .profile-header-copy{
            padding:20px 18px 8px!important;
        }
        .rh-stage1-visible-hero .profile-body{
            padding:8px 18px 22px!important;
        }
    }


    /* RepairHit target Stage 1: gallery + business info card */
    .rh-target-hero{
        width:100%!important;
        max-width:100%!important;
        margin:0 auto 18px!important;
        padding:0!important;
        border:0!important;
        background:transparent!important;
        box-shadow:none!important;
        overflow:visible!important;
    }

    .rh-target-gallery-card,
    .rh-target-info-card{
        width:100%!important;
        max-width:100%!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    .rh-target-main-photo-wrap{
        position:relative!important;
        width:100%!important;
        height:430px!important;
        overflow:hidden!important;
        border-radius:28px!important;
        border:1px solid rgba(214,227,250,.95)!important;
        background:#eef4fb!important;
        box-shadow:0 16px 34px rgba(8,27,66,.12)!important;
    }

    .rh-target-main-photo{
        display:block!important;
        width:100%!important;
        height:100%!important;
        padding:0!important;
        margin:0!important;
        border:0!important;
        background:#eef4fb!important;
        cursor:pointer!important;
    }

    .rh-target-main-photo img{
        width:100%!important;
        height:100%!important;
        display:block!important;
        object-fit:cover!important;
        object-position:center!important;
    }

    .rh-target-main-photo-empty{
        display:grid!important;
        place-items:center!important;
        color:#0d2a6b!important;
    }

    .rh-target-photo-count{
        position:absolute!important;
        top:18px!important;
        left:18px!important;
        z-index:6!important;
        display:inline-flex!important;
        align-items:center!important;
        gap:8px!important;
        padding:10px 15px!important;
        border-radius:999px!important;
        background:rgba(255,255,255,.96)!important;
        border:1px solid rgba(214,227,250,.95)!important;
        color:#071d49!important;
        text-decoration:none!important;
        font-weight:900!important;
        box-shadow:0 10px 24px rgba(8,27,66,.14)!important;
    }

    .rh-target-image-actions{
        position:absolute!important;
        top:18px!important;
        right:18px!important;
        z-index:6!important;
        display:flex!important;
        align-items:center!important;
        gap:10px!important;
    }

    .rh-target-image-actions form{
        margin:0!important;
    }

    .rh-target-circle{
        width:48px!important;
        height:48px!important;
        border-radius:999px!important;
        border:1px solid rgba(214,227,250,.95)!important;
        background:rgba(255,255,255,.96)!important;
        color:#071d49!important;
        display:grid!important;
        place-items:center!important;
        text-decoration:none!important;
        font-size:1.2rem!important;
        font-weight:900!important;
        cursor:pointer!important;
        box-shadow:0 10px 24px rgba(8,27,66,.14)!important;
    }

    .rh-target-thumb-strip{
        position:absolute!important;
        left:18px!important;
        right:18px!important;
        bottom:18px!important;
        z-index:6!important;
        display:flex!important;
        gap:10px!important;
        overflow-x:auto!important;
        scroll-snap-type:x mandatory!important;
        scroll-behavior:smooth!important;
        -webkit-overflow-scrolling:touch!important;
        overscroll-behavior-x:contain!important;
        scrollbar-width:none!important;
    }

    .rh-target-thumb-strip::-webkit-scrollbar{
        display:none!important;
    }

    .rh-target-thumb{
        flex:0 0 156px!important;
        width:156px!important;
        height:92px!important;
        padding:0!important;
        border:2px solid rgba(255,255,255,.94)!important;
        border-radius:16px!important;
        overflow:hidden!important;
        background:#071d49!important;
        color:#fff!important;
        cursor:pointer!important;
        scroll-snap-align:start!important;
        text-decoration:none!important;
        box-shadow:0 10px 24px rgba(8,27,66,.22)!important;
    }

    .rh-target-thumb img{
        width:100%!important;
        height:100%!important;
        display:block!important;
        object-fit:cover!important;
        object-position:center!important;
    }

    .rh-target-view-all{
        display:grid!important;
        place-items:center!important;
        gap:4px!important;
        text-align:center!important;
        font-weight:900!important;
        background:#071d49!important;
        color:#fff!important;
    }

    .rh-target-view-all span{
        font-size:1.5rem!important;
        line-height:1!important;
    }

    .rh-target-info-card{
        margin-top:12px!important;
        padding:24px!important;
        border:1px solid rgba(214,227,250,.95)!important;
        border-radius:28px!important;
        background:#fff!important;
        box-shadow:0 18px 42px rgba(8,27,66,.12)!important;
    }

    .rh-target-status-row{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        gap:8px!important;
        margin-bottom:8px!important;
    }

    .rh-target-status-pill{
        display:inline-flex!important;
        align-items:center!important;
        padding:5px 12px!important;
        border-radius:999px!important;
        background:#dcfce7!important;
        color:#166534!important;
        font-size:.86rem!important;
        font-weight:900!important;
    }

    .rh-target-status-gold{
        background:#fff3c4!important;
        color:#8a5b00!important;
    }

    .rh-target-status-verified{
        background:#dbeafe!important;
        color:#174ea6!important;
    }

    .rh-target-business-name{
        margin:0 0 12px!important;
        color:#071d49!important;
        font-size:clamp(2rem,4vw,3.35rem)!important;
        line-height:1.08!important;
        letter-spacing:-.045em!important;
        font-weight:950!important;
    }

    .rh-target-rating-line{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        gap:10px!important;
        margin-bottom:14px!important;
        color:#071d49!important;
        font-weight:800!important;
    }

    .rh-target-stars{
        display:inline-flex!important;
        gap:2px!important;
        font-size:1.35rem!important;
        line-height:1!important;
    }

    .rh-target-stars .is-filled{
        color:#f7bd17!important;
    }

    .rh-target-stars .is-empty{
        color:#cbd5e1!important;
    }

    .rh-target-rating-line a{
        color:#075fd3!important;
        text-decoration:none!important;
        font-weight:800!important;
    }

    .rh-target-dot{
        color:#8aa0bf!important;
    }

    .rh-target-category-chip{
        display:inline-flex!important;
        align-items:center!important;
        padding:8px 14px!important;
        border-radius:999px!important;
        background:#f1f5fb!important;
        color:#071d49!important;
        font-size:.92rem!important;
        font-weight:900!important;
    }

    .rh-target-meta-line{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        gap:16px!important;
        margin-bottom:18px!important;
        color:#071d49!important;
        font-weight:750!important;
    }

    .rh-target-meta-line strong{
        color:#075fd3!important;
    }

    .rh-target-action-grid{
        display:grid!important;
        gap:12px!important;
        margin-top:12px!important;
    }

    .rh-target-action-grid-top{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }

    .rh-target-action-grid-bottom{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    .rh-target-action-grid form{
        margin:0!important;
        display:block!important;
    }

    .rh-target-btn{
        min-height:54px!important;
        width:100%!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        gap:8px!important;
        padding:12px 16px!important;
        border-radius:14px!important;
        font-weight:950!important;
        text-decoration:none!important;
        cursor:pointer!important;
        border:1px solid rgba(214,227,250,.95)!important;
    }

    .rh-target-btn-dark{
        background:#071d49!important;
        color:#fff!important;
        border-color:#071d49!important;
    }

    .rh-target-btn-light{
        background:#fff!important;
        color:#071d49!important;
    }

    .rh-target-claim-btn{
        min-height:58px!important;
        margin-top:14px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        gap:10px!important;
        width:100%!important;
        border-radius:14px!important;
        background:#ffc928!important;
        color:#071d49!important;
        text-decoration:none!important;
        font-weight:950!important;
        box-shadow:0 10px 22px rgba(255,201,40,.24)!important;
    }

    .rh-target-claim-btn span{
        margin-left:auto!important;
        padding-right:14px!important;
        color:#fff!important;
    }

    .rh-target-hidden-old-summary{
        display:none!important;
    }

    .rh-target-old-actions{
        display:none!important;
    }

    @media(max-width:760px){
        .rh-target-main-photo-wrap{
            height:330px!important;
            border-radius:22px!important;
        }

        .rh-target-photo-count{
            top:12px!important;
            left:12px!important;
            padding:8px 12px!important;
            font-size:.86rem!important;
        }

        .rh-target-image-actions{
            top:12px!important;
            right:12px!important;
            gap:8px!important;
        }

        .rh-target-circle{
            width:42px!important;
            height:42px!important;
            font-size:1rem!important;
        }

        .rh-target-thumb-strip{
            left:12px!important;
            right:12px!important;
            bottom:12px!important;
            gap:8px!important;
        }

        .rh-target-thumb{
            flex-basis:112px!important;
            width:112px!important;
            height:72px!important;
            border-radius:13px!important;
        }

        .rh-target-info-card{
            margin-top:10px!important;
            padding:18px!important;
            border-radius:22px!important;
        }

        .rh-target-business-name{
            font-size:1.85rem!important;
        }

        .rh-target-action-grid-top{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
        }

        .rh-target-action-grid-top .rh-target-btn-dark{
            grid-column:auto!important;
        }

        .rh-target-action-grid-bottom{
            grid-template-columns:1fr!important;
        }
    }


    /* RepairHit Stage 1D: organize target business card buttons */
    .rh-target-info-card .rh-target-action-grid{
        width:100%!important;
        display:grid!important;
        gap:12px!important;
    }

    .rh-target-info-card .rh-target-action-grid-top{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        align-items:stretch!important;
        margin-top:16px!important;
    }

    .rh-target-info-card .rh-target-action-grid-bottom{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        align-items:stretch!important;
        margin-top:12px!important;
    }

    .rh-target-info-card .rh-target-action-grid form{
        display:block!important;
        width:100%!important;
        margin:0!important;
    }

    .rh-target-info-card .rh-target-btn,
    .rh-target-info-card .rh-target-action-grid form button{
        width:100%!important;
        min-height:56px!important;
        height:56px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        text-align:center!important;
        gap:8px!important;
        padding:0 14px!important;
        border-radius:15px!important;
        font-size:1rem!important;
        line-height:1.1!important;
        font-weight:900!important;
        white-space:nowrap!important;
        box-sizing:border-box!important;
    }

    .rh-target-info-card .rh-target-btn-dark{
        background:#071d49!important;
        color:#fff!important;
        border-color:#071d49!important;
    }

    .rh-target-info-card .rh-target-btn-light{
        background:#fff!important;
        color:#071d49!important;
        border:1px solid rgba(190,207,232,.95)!important;
    }

    .rh-target-info-card .rh-target-claim-btn{
        width:100%!important;
        min-height:58px!important;
        height:58px!important;
        margin:14px 0 0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        border-radius:15px!important;
        background:#ffc928!important;
        color:#071d49!important;
        font-size:1.05rem!important;
        font-weight:950!important;
        text-align:center!important;
        text-decoration:none!important;
        box-sizing:border-box!important;
    }

    .rh-target-info-card .rh-target-action-grid-top + .rh-target-claim-btn + .rh-target-action-grid-bottom{
        margin-top:12px!important;
    }

    @media(max-width:760px){
        .rh-target-info-card .rh-target-action-grid-top{
            grid-template-columns:repeat(4,minmax(0,1fr))!important;
            gap:8px!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
            gap:8px!important;
        }

        .rh-target-info-card .rh-target-btn,
        .rh-target-info-card .rh-target-action-grid form button{
            min-height:52px!important;
            height:52px!important;
            padding:0 8px!important;
            font-size:.88rem!important;
            border-radius:13px!important;
        }

        .rh-target-info-card .rh-target-claim-btn{
            min-height:54px!important;
            height:54px!important;
            font-size:.98rem!important;
            border-radius:13px!important;
        }
    }

    @media(max-width:420px){
        .rh-target-info-card .rh-target-action-grid-top{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom{
            grid-template-columns:1fr!important;
        }
    }


    /* RepairHit Stage 1E: final target card button organization */
    .rh-target-info-card{
        overflow:hidden!important;
    }

    .rh-target-info-card .rh-target-action-grid-top{
        display:grid!important;
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        gap:12px!important;
        width:100%!important;
        margin:18px 0 0!important;
    }

    .rh-target-info-card .rh-target-action-grid-bottom{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:12px!important;
        width:100%!important;
        margin:12px 0 0!important;
    }

    .rh-target-info-card .rh-target-action-grid form{
        display:block!important;
        width:100%!important;
        margin:0!important;
    }

    .rh-target-info-card .rh-target-btn,
    .rh-target-info-card .rh-target-action-grid form button{
        width:100%!important;
        height:56px!important;
        min-height:56px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        padding:0 14px!important;
        border-radius:15px!important;
        border:1px solid rgba(190,207,232,.95)!important;
        box-sizing:border-box!important;
        font-size:1rem!important;
        line-height:1.1!important;
        font-weight:900!important;
        text-align:center!important;
        text-decoration:none!important;
        white-space:nowrap!important;
        background:#fff!important;
        color:#071d49!important;
    }

    .rh-target-info-card .rh-target-btn-dark{
        background:#071d49!important;
        color:#fff!important;
        border-color:#071d49!important;
    }

    .rh-target-info-card .rh-target-claim-btn{
        width:100%!important;
        height:58px!important;
        min-height:58px!important;
        margin:14px 0 0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        padding:0 16px!important;
        border-radius:15px!important;
        background:#ffc928!important;
        color:#071d49!important;
        box-sizing:border-box!important;
        font-size:1.05rem!important;
        line-height:1.1!important;
        font-weight:950!important;
        text-align:center!important;
        text-decoration:none!important;
    }

    .rh-target-info-card .rh-target-claim-btn span{
        display:none!important;
    }

    /* Hide old right contact/sidebar card during target redesign */
    .business-contact-card,
    .business-sidebar,
    .profile-sidebar,
    .contact-business-card,
    aside .section-card,
    aside.business-sidebar-card{
        display:none!important;
    }

    .profile-shell,
    .business-page-shell .container{
        max-width:1180px!important;
    }

    .profile-shell{
        display:block!important;
    }

    @media(max-width:760px){
        .rh-target-info-card .rh-target-action-grid-top{
            grid-template-columns:repeat(4,minmax(0,1fr))!important;
            gap:8px!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
            gap:8px!important;
        }

        .rh-target-info-card .rh-target-btn,
        .rh-target-info-card .rh-target-action-grid form button{
            height:52px!important;
            min-height:52px!important;
            padding:0 8px!important;
            border-radius:13px!important;
            font-size:.88rem!important;
        }

        .rh-target-info-card .rh-target-claim-btn{
            height:54px!important;
            min-height:54px!important;
            border-radius:13px!important;
            font-size:.98rem!important;
        }
    }

    @media(max-width:420px){
        .rh-target-info-card .rh-target-action-grid-top{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom{
            grid-template-columns:1fr!important;
        }
    }


    /* RepairHit Stage 1F: layout priority + no duplicated sidebar */
    body:has(.rh-target-hero) .profile-shell{
        display:block!important;
        width:100%!important;
        max-width:1180px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    body:has(.rh-target-hero) .business-page-shell .container{
        width:100%!important;
        max-width:1180px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    body:has(.rh-target-hero) .profile-shell > aside,
    body:has(.rh-target-hero) aside,
    body:has(.rh-target-hero) .profile-sidebar,
    body:has(.rh-target-hero) .business-sidebar,
    body:has(.rh-target-hero) .contact-sidebar,
    body:has(.rh-target-hero) .contact-business-card,
    body:has(.rh-target-hero) .business-contact-card,
    body:has(.rh-target-hero) .sticky-contact-card{
        display:none!important;
        visibility:hidden!important;
        width:0!important;
        height:0!important;
        overflow:hidden!important;
        pointer-events:none!important;
    }

    .rh-target-info-card{
        width:100%!important;
        max-width:100%!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }

    .rh-target-info-card .rh-target-action-grid{
        width:100%!important;
        display:grid!important;
        gap:12px!important;
        margin-left:0!important;
        margin-right:0!important;
        box-sizing:border-box!important;
    }

    .rh-target-info-card .rh-target-action-grid-top{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        margin-top:18px!important;
    }

    .rh-target-info-card .rh-target-action-grid-bottom{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        margin-top:12px!important;
    }

    .rh-target-info-card .rh-target-action-grid form{
        display:block!important;
        width:100%!important;
        margin:0!important;
        padding:0!important;
    }

    .rh-target-info-card .rh-target-btn,
    .rh-target-info-card .rh-target-action-grid form button{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        height:56px!important;
        min-height:56px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        padding:0 14px!important;
        border-radius:15px!important;
        box-sizing:border-box!important;
        border:1px solid rgba(190,207,232,.95)!important;
        background:#fff!important;
        color:#071d49!important;
        font-size:1rem!important;
        line-height:1.1!important;
        font-weight:900!important;
        text-align:center!important;
        white-space:nowrap!important;
        text-decoration:none!important;
        box-shadow:none!important;
    }

    .rh-target-info-card .rh-target-btn-dark{
        background:#071d49!important;
        color:#fff!important;
        border-color:#071d49!important;
    }

    .rh-target-info-card .rh-target-claim-btn{
        width:100%!important;
        max-width:100%!important;
        height:58px!important;
        min-height:58px!important;
        margin:14px 0 0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        padding:0 16px!important;
        border-radius:15px!important;
        box-sizing:border-box!important;
        background:#ffc928!important;
        color:#071d49!important;
        font-size:1.05rem!important;
        line-height:1.1!important;
        font-weight:950!important;
        text-align:center!important;
        text-decoration:none!important;
        box-shadow:0 10px 22px rgba(255,201,40,.22)!important;
    }

    .rh-target-info-card .rh-target-claim-btn span{
        display:none!important;
    }

    .rh-target-hidden-old-summary,
    .rh-target-old-actions{
        display:none!important;
    }

    @media(max-width:900px){
        body:has(.rh-target-hero) .profile-shell,
        body:has(.rh-target-hero) .business-page-shell .container{
            max-width:100%!important;
        }
    }

    @media(max-width:760px){
        .rh-target-info-card .rh-target-action-grid{
            gap:8px!important;
        }

        .rh-target-info-card .rh-target-action-grid-top{
            grid-template-columns:repeat(4,minmax(0,1fr))!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
        }

        .rh-target-info-card .rh-target-btn,
        .rh-target-info-card .rh-target-action-grid form button{
            height:52px!important;
            min-height:52px!important;
            padding:0 8px!important;
            border-radius:13px!important;
            font-size:.88rem!important;
        }

        .rh-target-info-card .rh-target-claim-btn{
            height:54px!important;
            min-height:54px!important;
            border-radius:13px!important;
            font-size:.98rem!important;
        }
    }

    @media(max-width:430px){
        .rh-target-info-card .rh-target-action-grid-top{
            grid-template-columns:repeat(2,minmax(0,1fr))!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom{
            grid-template-columns:1fr!important;
        }
    }


    /* RepairHit Stage 1G: desktop button balance only */
    @media(min-width:761px){
        .rh-target-info-card{
            padding:26px 28px!important;
        }

        .rh-target-info-card .rh-target-action-grid-top{
            display:grid!important;
            grid-template-columns:repeat(4, minmax(0, 1fr))!important;
            gap:14px!important;
            width:100%!important;
            margin:20px 0 0!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom{
            display:grid!important;
            grid-template-columns:repeat(2, minmax(0, 1fr))!important;
            gap:14px!important;
            width:100%!important;
            margin:14px 0 0!important;
        }

        .rh-target-info-card .rh-target-action-grid form{
            width:100%!important;
            display:block!important;
            margin:0!important;
            padding:0!important;
        }

        .rh-target-info-card .rh-target-btn,
        .rh-target-info-card .rh-target-action-grid form button{
            width:100%!important;
            max-width:100%!important;
            min-width:0!important;
            height:58px!important;
            min-height:58px!important;
            display:flex!important;
            align-items:center!important;
            justify-content:center!important;
            padding:0 18px!important;
            border-radius:16px!important;
            box-sizing:border-box!important;
            font-size:1rem!important;
            font-weight:900!important;
            line-height:1!important;
            text-align:center!important;
            white-space:nowrap!important;
            text-decoration:none!important;
            border:1px solid #c9d8ee!important;
            background:#fff!important;
            color:#071d49!important;
            box-shadow:none!important;
        }

        .rh-target-info-card .rh-target-btn-dark{
            background:#071d49!important;
            color:#fff!important;
            border-color:#071d49!important;
        }

        .rh-target-info-card .rh-target-claim-btn{
            width:100%!important;
            max-width:100%!important;
            height:60px!important;
            min-height:60px!important;
            margin:16px 0 0!important;
            display:flex!important;
            align-items:center!important;
            justify-content:center!important;
            padding:0 18px!important;
            border-radius:16px!important;
            box-sizing:border-box!important;
            background:#ffc928!important;
            color:#071d49!important;
            font-size:1.05rem!important;
            font-weight:950!important;
            line-height:1!important;
            text-align:center!important;
            text-decoration:none!important;
            box-shadow:0 10px 22px rgba(255,201,40,.20)!important;
        }

        .rh-target-info-card .rh-target-claim-btn span{
            display:none!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom .rh-target-btn{
            background:#fff!important;
            color:#071d49!important;
            border-color:#c9d8ee!important;
            box-shadow:none!important;
        }

        .rh-target-info-card .rh-target-action-grid-bottom .rh-target-btn:nth-child(2){
            background:#fff!important;
            color:#071d49!important;
        }
    }


    /* RepairHit Stage 1K: hide old duplicate CTA/contact areas after target card */
    body:has(.rh-target-hero) .rh-target-hidden-old-summary,
    body:has(.rh-target-hero) .rh-target-old-actions{
        display:none!important;
        visibility:hidden!important;
        height:0!important;
        max-height:0!important;
        overflow:hidden!important;
        margin:0!important;
        padding:0!important;
        border:0!important;
    }

    body:has(.rh-target-hero) .location-map-card .action-row,
    body:has(.rh-target-hero) .location-map-card .action-row-brand,
    body:has(.rh-target-hero) .location-map-card .btn-action,
    body:has(.rh-target-hero) .location-map-card a[href*="/claim"],
    body:has(.rh-target-hero) aside,
    body:has(.rh-target-hero) .profile-sidebar,
    body:has(.rh-target-hero) .business-sidebar,
    body:has(.rh-target-hero) .contact-business-card,
    body:has(.rh-target-hero) .business-contact-card,
    body:has(.rh-target-hero) .sticky-contact-card,
    body:has(.rh-target-hero) .request-quote-card,
    body:has(.rh-target-hero) .quote-card,
    body:has(.rh-target-hero) .claim-card{
        display:none!important;
        visibility:hidden!important;
        width:0!important;
        height:0!important;
        overflow:hidden!important;
        pointer-events:none!important;
    }

    body:has(.rh-target-hero) .profile-shell{
        display:block!important;
        grid-template-columns:1fr!important;
        max-width:1180px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    body:has(.rh-target-hero) .profile-shell > div{
        width:100%!important;
        max-width:100%!important;
    }

/* ---- moved from business.blade.php ---- */

.reviews-showcase-card{overflow:hidden}
    .review-list-google{display:grid;gap:16px}
    .review-google-card{display:grid;gap:14px;padding:20px 22px;border:1px solid #dbe5f3;border-radius:26px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:0 14px 36px rgba(13,37,76,.06)}
    .review-google-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
    .review-google-author{display:flex;align-items:center;gap:14px;min-width:0}
    .review-avatar{width:52px;height:52px;border-radius:999px;overflow:hidden;flex:0 0 52px;background:#eef3fb;border:1px solid #d7e2f2;display:flex;align-items:center;justify-content:center;color:#163154;font-size:1rem;font-weight:800}
    .review-avatar img{width:100%;height:100%;object-fit:cover;display:block}
    .review-author-copy{min-width:0;display:grid;gap:4px}
    .review-author-copy strong{font-size:1rem;line-height:1.2;color:#11294b}
    .review-author-copy > span{font-size:.9rem;color:#667791}
    .review-stars-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:2px}
    .review-stars-row .stars{letter-spacing:.14em;color:#f4b400;font-size:.95rem}
    .review-stars-row .rating-label{font-size:.92rem;font-weight:700;color:#183358}
    .review-title-line{margin:0;font-size:1.02rem;line-height:1.35;color:#132b4e}
    .review-body-copy{margin:0;font-size:1rem;line-height:1.78;color:#5f6f86}
    .review-body-wrap{display:grid;gap:10px;position:relative}
    .review-body-wrap.is-collapsed .review-body-copy{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
    .review-body-wrap.is-collapsed::after{content:"";position:absolute;left:0;right:0;bottom:42px;height:42px;background:linear-gradient(180deg,rgba(251,253,255,0) 0%,#fbfdff 92%);pointer-events:none}
    .review-read-toggle{justify-self:flex-start;appearance:none;border:none;background:transparent;padding:0;color:#163154;font-weight:800;font-size:.94rem;cursor:pointer}
    .review-read-toggle:hover{text-decoration:underline}
    .review-stars-row .hero-star.is-filled,.review-stars-row .search-star.is-filled{color:#fcc931!important}
    .review-stars-row .hero-star.is-empty,.review-stars-row .search-star.is-empty{color:#cfd7e6!important}
    .review-owner-response{display:grid;gap:6px;margin-left:66px;padding:14px 16px;border-radius:18px;background:#f6f9ff;border:1px solid #dbe5f6}
    #faqs .faq-list{gap:18px}
    #faqs .faq-item{padding-top:20px;padding-bottom:20px}
    .review-owner-response strong{font-size:.92rem;color:#11294b}
    .review-owner-response p{margin:0;color:#607089;line-height:1.65}
    .review-owner-response span{font-size:.84rem;color:#71839c}
    .review-social-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
    .review-action-btn{appearance:none;border:1px solid #dbe5f3;background:#fff;border-radius:999px;padding:10px 14px;display:inline-flex;align-items:center;gap:8px;color:#163154;font-weight:700;font-size:.92rem;cursor:pointer;text-decoration:none;box-shadow:0 8px 20px rgba(15,39,77,.05)}
    .review-action-btn.is-active{border-color:#f4c8cf;background:#fff5f6}
    body.report-modal-open{overflow:hidden}
    .review-report-modal{position:fixed;inset:0;z-index:160;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(5,12,24,.78);backdrop-filter:blur(3px)}
    .review-report-modal[hidden]{display:none!important}
    .review-report-modal.is-open{display:flex}
    .review-report-backdrop{position:absolute;inset:0}
    .review-report-panel{position:relative;z-index:1;display:grid;gap:12px;padding:18px;border-radius:24px;border:1px solid rgba(255,255,255,.08);background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.34);max-height:min(82vh,640px);overflow:auto;width:min(92vw,520px)}
    .review-report-panel strong{color:#132b4e;font-size:1.05rem}
    .review-report-panel p{margin:0;color:#667791;font-size:.92rem}
    .review-report-options{display:grid;gap:10px}
    .review-report-options label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #e5edf8;border-radius:14px;background:#f9fbff;color:#183358;font-size:.93rem}
    .review-report-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
    .review-report-close{position:absolute;top:10px;right:10px;border:none;background:transparent;font-size:1.5rem;line-height:1;color:#607089;cursor:pointer}
    .review-form-enhanced{position:relative;display:grid;gap:16px}
    .review-public-note{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:18px;background:#fff9e9;border:1px solid #f1dfa8;color:#6b5307;box-shadow:0 10px 24px rgba(97,73,2,.08)}
    .review-public-note[hidden]{display:none!important}
    .review-public-note strong{display:block;margin-bottom:4px;font-size:.95rem}
    .review-public-note p{margin:0;font-size:.92rem;line-height:1.55}
    .review-public-note-close{border:none;background:transparent;color:#7b6107;font-size:1.4rem;line-height:1;cursor:pointer;padding:0 2px}
    .review-existing-card{display:grid;gap:14px}
    .review-existing-body{display:grid;gap:10px;padding:16px 18px;border:1px solid #dbe5f3;border-radius:20px;background:#fbfdff}
    .review-existing-body strong{font-size:1rem;color:#132b4e}
    .review-existing-body p{margin:0;color:#607089;line-height:1.7}
    .review-existing-meta{display:flex;gap:12px;flex-wrap:wrap;color:#71839c;font-size:.9rem}
    body.lightbox-open{overflow:hidden}
    @media (max-width: 760px){
        .review-google-card{padding:18px}
        .review-google-head{display:grid;gap:12px}
        .review-owner-response{margin-left:0}
        .review-avatar{width:48px;height:48px;flex-basis:48px}
        .review-social-row{gap:8px}
        .review-action-btn{padding:9px 12px;font-size:.88rem}
        .review-report-modal{padding:14px}
        .review-report-panel{padding:16px}
    }

        .appointment-feature-card{position:relative;overflow:hidden;padding:22px;border:1px solid rgba(12,45,113,.72);background:linear-gradient(145deg,#0a235c 0%,#10378e 58%,#0e2d77 100%);box-shadow:0 26px 54px rgba(7,21,56,.22)}
        .appointment-feature-card::before{display:none!important;content:none!important}
        .appointment-feature-card::after{content:"";position:absolute;right:-90px;top:-85px;width:280px;height:280px;border-radius:999px;background:radial-gradient(circle,rgba(255,224,131,.28) 0%,rgba(255,224,131,.12) 34%,rgba(255,224,131,0) 72%);pointer-events:none}
        .appointment-feature-card .section-head-inline{position:relative;z-index:1;margin:0 0 18px;padding:6px 4px 18px;border-radius:0;background:transparent;box-shadow:none}
        .appointment-feature-card .business-section-copy h2{color:#f7c948}
        .appointment-feature-card .business-section-copy .muted{color:rgba(235,243,255,.92)!important}
        .appointment-feature-card .business-section-logo{background:#fff4c7!important;border-color:rgba(255,212,76,.65)!important;box-shadow:0 10px 24px rgba(7,21,56,.20)!important}
        .appointment-feature-card .business-section-initial{background:#f7c948!important;color:#0d2a6b!important}
        .appointment-request-form{position:relative;border-color:rgba(214,227,250,.95);background:linear-gradient(180deg,rgba(255,255,255,.99) 0%,#f8fbff 100%);box-shadow:0 18px 40px rgba(8,27,66,.18)}
        .appointment-request-form .input,
        .appointment-request-form textarea{border-color:#c7d8f6;background:#fff}
        .appointment-request-form .input:focus,
        .appointment-request-form textarea:focus{border-color:#2f6ef2;box-shadow:0 0 0 4px rgba(47,110,242,.14)}
        .appointment-request-form .btn.btn-primary{background:linear-gradient(135deg,#0f2f74 0%,#1d4ed8 52%,#2f6ef2 100%);border-color:#123c95;box-shadow:0 16px 32px rgba(15,47,116,.18)}
        .appointment-request-form .btn.btn-primary:hover{transform:translateY(-1px)}
        .appointment-datetime-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}
        .appointment-datetime-grid > *{min-width:0}
        .input-icon-wrap{position:relative;min-width:0;overflow:hidden}
        .input-icon-wrap .input{padding-left:48px;width:100%;min-width:0;display:block;font-size:16px;-webkit-appearance:none;appearance:none;min-height:58px;height:58px;line-height:1.2}
        .appointment-help-copy{margin-top:10px;color:#47638f;font-size:.92rem;line-height:1.55}
        .appointment-request-form label{color:#102a56;font-weight:800}
        .appointment-request-form textarea{min-height:150px}
                .appointment-feature-card .review-form-card{border-radius:30px}
        .appointment-success-modal{position:fixed;inset:0;z-index:220;display:grid;place-items:center;padding:18px}
        .appointment-success-overlay{position:absolute;inset:0;background:rgba(10,24,40,.42);backdrop-filter:blur(3px)}
        .appointment-success-card{position:relative;z-index:1;width:min(92vw,760px);display:grid;gap:18px;padding:26px;border:1px solid #bfe2c8;border-radius:30px;background:linear-gradient(180deg,#effcf3 0%,#dff7e5 100%);box-shadow:0 28px 60px rgba(12,37,23,.22)}
        .appointment-success-card .mini-info{background:rgba(255,255,255,.82);border-color:#cbe8d3}
        .appointment-success-close{position:absolute;right:16px;top:16px;width:46px;height:46px;border:none;border-radius:999px;background:#ffffff;color:#1a4f35;font-size:1.75rem;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 20px rgba(18,59,45,.12)}
        .appointment-success-close:hover{transform:translateY(-1px)}
        .appointment-feature-card .field.full:last-child .btn{min-height:58px;border-radius:18px;font-size:1rem;font-weight:800}
        .input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:1.05rem;pointer-events:none;opacity:.88;z-index:1}
        .input-icon-wrap input[type="date"]::-webkit-calendar-picker-indicator,
        .input-icon-wrap input[type="time"]::-webkit-calendar-picker-indicator{opacity:.85;position:relative;z-index:2}
        .photo-lightbox-dialog{position:fixed;inset:0;z-index:170;display:grid;place-items:center;padding:16px;background:rgba(4,10,20,.92);backdrop-filter:blur(4px)}
        .photo-lightbox-dialog[hidden]{display:none!important}
        .photo-lightbox-shell{position:relative;display:grid;gap:16px;padding:12px 12px 18px;border-radius:28px;background:transparent;box-shadow:none;width:min(96vw,1080px);max-width:min(96vw,1080px)}
        .photo-lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:280px;max-height:76vh;overflow:hidden;border-radius:22px;background:transparent;touch-action:pan-y}
        .photo-lightbox-stage img{display:block;max-width:100%;max-height:74vh;object-fit:contain;border-radius:20px}
        .photo-lightbox-strip{display:flex;gap:10px;overflow-x:auto;padding:2px 0 2px;scrollbar-width:none}
        .photo-lightbox-strip::-webkit-scrollbar{display:none}
        .photo-lightbox-thumb{flex:0 0 84px;height:84px;padding:0;border-radius:18px;border:2px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);overflow:hidden;cursor:pointer}
        .photo-lightbox-thumb img{width:100%;height:100%;object-fit:cover;display:block}
        .photo-lightbox-thumb.is-active{border-color:#f4c949;box-shadow:0 0 0 3px rgba(244,201,73,.22)}
        .photo-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(13,24,40,.78);color:#fff;font-size:2rem;line-height:1;display:grid;place-items:center;cursor:pointer;z-index:3;box-shadow:0 16px 32px rgba(0,0,0,.24)}
        .photo-lightbox-prev{left:14px}
        .photo-lightbox-next{right:14px}
        .photo-lightbox-close{position:absolute;top:0;right:0;z-index:4;width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(13,24,40,.82);color:#fff;font-size:1.8rem;display:grid;place-items:center;cursor:pointer}
        .photo-gallery-carousel{position:relative;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pinch-zoom;scroll-behavior:smooth;padding-bottom:2px;overflow-x:auto!important}
        .photo-gallery-carousel::-webkit-scrollbar{display:none}
        .photo-gallery-track{display:flex!important;align-items:stretch;gap:18px;padding-bottom:4px;overflow:visible!important}
        .photo-gallery-card{flex:0 0 min(31vw,420px)!important;width:min(31vw,420px)!important;max-width:min(31vw,420px)!important;height:230px!important;padding:0!important;border:none!important;text-align:left!important;background:#f8fafc!important;border-radius:14px!important;overflow:hidden!important;box-shadow:none!important;cursor:pointer!important;position:relative!important;scroll-snap-align:start!important;scroll-snap-stop:normal!important}
        .photo-gallery-card img{width:100%!important;height:230px!important;display:block!important;object-fit:cover!important;object-position:center!important;background:#f1f5f9!important;border-radius:14px!important;border:0!important;box-shadow:none!important}
        .photo-carousel-controls{margin-left:auto;display:flex!important;gap:10px!important;align-items:center!important}
        @media (min-width: 761px) and (max-width: 1180px){
            .photo-gallery-card{flex:0 0 min(31vw,420px)!important;width:min(31vw,420px)!important;max-width:min(31vw,420px)!important;height:230px!important;padding:0!important;border:none!important;text-align:left!important;background:#f8fafc!important;border-radius:14px!important;overflow:hidden!important;box-shadow:none!important;cursor:pointer!important;position:relative!important;scroll-snap-align:start!important;scroll-snap-stop:normal!important}
            .photo-gallery-card img{width:100%!important;height:230px!important;display:block!important;object-fit:cover!important;object-position:center!important;background:#f1f5f9!important;border-radius:14px!important;border:0!important;box-shadow:none!important}
            .appointment-feature-card{padding:18px}
            .appointment-request-form{padding:24px}
        }
        @media (max-width: 760px){
            .appointment-datetime-grid{grid-template-columns:1fr}
            .photo-lightbox-shell{width:min(100vw - 12px,100vw - 12px);max-width:min(100vw - 12px,100vw - 12px);padding:12px 6px 18px}
            .photo-lightbox-nav{display:none}
            .photo-lightbox-thumb{flex-basis:72px;height:72px}
            .photo-gallery-carousel{position:relative;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pinch-zoom;scroll-behavior:smooth;padding-bottom:2px;overflow-x:auto!important}
            .photo-gallery-track{display:flex!important;align-items:stretch;gap:18px;padding-bottom:4px;overflow:visible!important}
            .photo-gallery-card{flex:0 0 min(31vw,420px)!important;width:min(31vw,420px)!important;max-width:min(31vw,420px)!important;height:230px!important;padding:0!important;border:none!important;text-align:left!important;background:#f8fafc!important;border-radius:14px!important;overflow:hidden!important;box-shadow:none!important;cursor:pointer!important;position:relative!important;scroll-snap-align:start!important;scroll-snap-stop:normal!important}
            .photo-gallery-card img{width:100%!important;height:230px!important;display:block!important;object-fit:cover!important;object-position:center!important;background:#f1f5f9!important;border-radius:14px!important;border:0!important;box-shadow:none!important}
        }

/* ---- moved from business.blade.php ---- */

/* Public business services: image-card layout */
#services .services-grid,
#services .services-list,
section[id="services"] .services-grid,
section[id="services"] .services-list {
    display: grid !important;
    gap: 18px !important;
}

#services .service-card,
#services .business-service-card,
#services .rh-service-card,
#services .service-item,
#services .business-service-item,
#services article,
#services li,
section[id="services"] .service-card,
section[id="services"] .business-service-card,
section[id="services"] .rh-service-card,
section[id="services"] .service-item,
section[id="services"] .business-service-item,
section[id="services"] article,
section[id="services"] li {
    display: grid !important;
    grid-template-columns: 112px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 20px !important;
    padding: 22px 26px !important;
    border-radius: 20px !important;
    border: 1px solid #dfe7f1 !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(15, 38, 74, .08) !important;
}

#services .service-card:not(:has(img)),
#services .business-service-card:not(:has(img)),
#services .rh-service-card:not(:has(img)),
#services .service-item:not(:has(img)),
#services .business-service-item:not(:has(img)),
#services article:not(:has(img)),
#services li:not(:has(img)),
section[id="services"] .service-card:not(:has(img)),
section[id="services"] .business-service-card:not(:has(img)),
section[id="services"] .rh-service-card:not(:has(img)),
section[id="services"] .service-item:not(:has(img)),
section[id="services"] .business-service-item:not(:has(img)),
section[id="services"] article:not(:has(img)),
section[id="services"] li:not(:has(img)) {
    grid-template-columns: 1fr !important;
}

#services img,
section[id="services"] img {
    width: 112px !important;
    height: 112px !important;
    object-fit: cover !important;
    border-radius: 18px !important;
    display: block !important;
    flex: 0 0 112px !important;
}

#services h2,
#services h3,
#services h4,
section[id="services"] h2,
section[id="services"] h3,
section[id="services"] h4 {
    font-size: 1.22rem !important;
    line-height: 1.18 !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
    margin: 0 0 7px !important;
    color: #102033 !important;
}

#services p,
section[id="services"] p {
    font-size: 1rem !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    color: #43536b !important;
    margin: 6px 0 0 !important;
}

#services .service-duration,
#services .duration,
#services [class*="duration"],
section[id="services"] .service-duration,
section[id="services"] .duration,
section[id="services"] [class*="duration"] {
    display: inline-flex !important;
    align-items: center !important;
    width: fit-content !important;
    margin: 0 0 6px !important;
    padding: 5px 12px !important;
    border-radius: 999px !important;
    border: 1px solid #9cc5ff !important;
    background: #edf6ff !important;
    color: #075fc8 !important;
    font-size: .92rem !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

#services strong,
section[id="services"] strong {
    font-weight: 800 !important;
}

@media(max-width:700px){
    #services .service-card,
    #services .business-service-card,
    #services .rh-service-card,
    #services .service-item,
    #services .business-service-item,
    #services article,
    #services li,
    section[id="services"] .service-card,
    section[id="services"] .business-service-card,
    section[id="services"] .rh-service-card,
    section[id="services"] .service-item,
    section[id="services"] .business-service-item,
    section[id="services"] article,
    section[id="services"] li {
        grid-template-columns: 78px minmax(0, 1fr) !important;
        gap: 14px !important;
        padding: 16px !important;
        border-radius: 18px !important;
    }

    #services img,
    section[id="services"] img {
        width: 78px !important;
        height: 78px !important;
        border-radius: 15px !important;
    }

    #services h2,
    #services h3,
    #services h4,
    section[id="services"] h2,
    section[id="services"] h3,
    section[id="services"] h4 {
        font-size: 1rem !important;
        margin-bottom: 4px !important;
    }

    #services p,
    section[id="services"] p {
        font-size: .92rem !important;
        line-height: 1.42 !important;
        margin-top: 4px !important;
    }
}

/* ---- moved from business.blade.php ---- */

/* Only make public service titles slightly lighter. Do not change layout/design. */
#services h2,
#services h3,
#services h4,
section[id="services"] h2,
section[id="services"] h3,
section[id="services"] h4 {
    font-weight: 700 !important;
}

/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 1P: mobile quote modal close safety */
body.quote-modal-open,
body.rh-quote-modal-open{
    overflow:hidden!important;
}

.rh-quote-modal button,
#repairhitQuoteModal button,
#requestQuoteModal button,
[data-request-quote-modal] button,
.quote-modal button{
    touch-action:manipulation;
}

.rh-quote-modal [data-quote-close],
.rh-quote-modal [data-request-quote-close],
.rh-quote-modal [data-modal-close],
.rh-quote-modal .quote-modal-close,
.rh-quote-modal .rh-quote-close,
.rh-quote-modal .rh-quote-modal-close,
.rh-quote-modal .modal-close,
#repairhitQuoteModal [data-quote-close],
#requestQuoteModal [data-quote-close],
[data-request-quote-modal] [data-quote-close]{
    pointer-events:auto!important;
    cursor:pointer!important;
    z-index:10001!important;
}

/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 1Q: native quote modal centering + mobile close */
#repairhitQuoteModal.rh-quote-modal,
#repairhitUnclaimedQuoteNotice.rh-unclaimed-quote{
    position:fixed!important;
    inset:0!important;
    z-index:99999!important;
    align-items:center!important;
    justify-content:center!important;
    padding:18px!important;
    background:rgba(7,18,42,.68)!important;
    backdrop-filter:blur(6px)!important;
    overflow-y:auto!important;
}

#repairhitQuoteModal.rh-quote-modal.is-visible,
#repairhitUnclaimedQuoteNotice.rh-unclaimed-quote.is-visible{
    display:flex!important;
}

#repairhitQuoteModal.rh-quote-modal[aria-hidden="true"],
#repairhitUnclaimedQuoteNotice.rh-unclaimed-quote[aria-hidden="true"]{
    display:none!important;
}

#repairhitQuoteModal .rh-quote-backdrop,
#repairhitUnclaimedQuoteNotice .rh-unclaimed-quote__backdrop{
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
}

#repairhitQuoteModal .rh-quote-card,
#repairhitUnclaimedQuoteNotice .rh-unclaimed-quote__card{
    position:relative!important;
    z-index:1!important;
    width:min(100%, 640px)!important;
    max-width:640px!important;
    margin:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
}

#repairhitQuoteModal .rh-quote-close,
#repairhitUnclaimedQuoteNotice .rh-unclaimed-quote__close{
    pointer-events:auto!important;
    touch-action:manipulation!important;
    z-index:3!important;
    cursor:pointer!important;
}

html.rh-quote-open,
body.rh-quote-open,
body.quote-modal-open{
    overflow:hidden!important;
}

@media(max-width:760px){
    #repairhitQuoteModal.rh-quote-modal,
    #repairhitUnclaimedQuoteNotice.rh-unclaimed-quote{
        align-items:flex-start!important;
        justify-content:center!important;
        padding:12px!important;
    }

    #repairhitQuoteModal .rh-quote-card,
    #repairhitUnclaimedQuoteNotice .rh-unclaimed-quote__card{
        width:100%!important;
        max-width:100%!important;
        margin:12px auto!important;
        max-height:calc(100vh - 24px)!important;
        overflow-y:auto!important;
        -webkit-overflow-scrolling:touch!important;
    }
}

/* ---- moved from business.blade.php ---- */



/* ---- moved from business.blade.php ---- */



/* ---- moved from business.blade.php ---- */

/* RepairHit HARD RESET: Google-style Services only */
.rh-force-hide-services,
#services-legacy,
#services-clean-legacy,
#services-google-legacy,
.rh-public-services-section,
.rh-clean-services-section,
.rh-google-services:not(.rh-gbiz-services-panel){
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
}

.rh-gbiz-services-panel{
    width:100%!important;
    margin:18px auto 0!important;
    padding:0!important;
    border-top:1px solid #e3e8f2!important;
    background:transparent!important;
}

.rh-gbiz-services-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:18px 0 12px!important;
}

.rh-gbiz-services-head h2{
    margin:0!important;
    color:#071d49!important;
    font-size:1.42rem!important;
    line-height:1.2!important;
    font-weight:900!important;
}

.rh-gbiz-services-head button{
    appearance:none!important;
    border:0!important;
    background:transparent!important;
    color:#1a73e8!important;
    font-size:.96rem!important;
    font-weight:700!important;
    cursor:pointer!important;
    padding:6px 0!important;
}

.rh-gbiz-services-row{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    margin:0!important;
    padding:0!important;
}

.rh-gbiz-service-chip{
    appearance:none!important;
    min-height:42px!important;
    padding:9px 15px!important;
    border:1px solid #dadce0!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#202124!important;
    font-size:.94rem!important;
    line-height:1.2!important;
    font-weight:600!important;
    cursor:pointer!important;
    text-align:center!important;
    box-shadow:none!important;
}

.rh-gbiz-services-modal{
    position:fixed!important;
    inset:0!important;
    z-index:99999!important;
    display:none!important;
    align-items:center!important;
    justify-content:center!important;
    padding:18px!important;
}

.rh-gbiz-services-modal.is-visible{
    display:flex!important;
}

.rh-gbiz-services-modal[hidden]{
    display:none!important;
}

.rh-gbiz-services-backdrop{
    position:absolute!important;
    inset:0!important;
    background:rgba(32,33,36,.58)!important;
}

.rh-gbiz-services-dialog{
    position:relative!important;
    z-index:1!important;
    width:min(100%, 620px)!important;
    max-height:min(720px, calc(100vh - 36px))!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 20px 60px rgba(0,0,0,.28)!important;
}

.rh-gbiz-services-dialog-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:20px 22px!important;
    border-bottom:1px solid #eceff5!important;
}

.rh-gbiz-services-dialog-head h2{
    margin:0!important;
    color:#202124!important;
    font-size:1.35rem!important;
    line-height:1.2!important;
    font-weight:700!important;
}

.rh-gbiz-services-dialog-head p{
    margin:4px 0 0!important;
    color:#5f6368!important;
    font-size:.94rem!important;
}

.rh-gbiz-services-dialog-head button{
    width:40px!important;
    height:40px!important;
    border:0!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#202124!important;
    font-size:1.7rem!important;
    line-height:1!important;
    cursor:pointer!important;
}

.rh-gbiz-services-list{
    padding:6px 22px 18px!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
}

.rh-gbiz-service-row{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:15px 0!important;
    border-bottom:1px solid #eceff5!important;
}

.rh-gbiz-service-row:last-child{
    border-bottom:0!important;
}

.rh-gbiz-service-row h3{
    margin:0!important;
    color:#202124!important;
    font-size:1rem!important;
    line-height:1.32!important;
    font-weight:700!important;
}

.rh-gbiz-service-row p{
    margin:6px 0 0!important;
    color:#5f6368!important;
    font-size:.92rem!important;
    line-height:1.45!important;
}

.rh-gbiz-service-row span{
    flex:0 0 auto!important;
    color:#1a73e8!important;
    font-size:.9rem!important;
    font-weight:700!important;
    white-space:nowrap!important;
}

body.rh-gbiz-services-open{
    overflow:hidden!important;
}

@media(max-width:760px){
    .rh-gbiz-services-row{
        flex-wrap:nowrap!important;
        overflow-x:auto!important;
        overflow-y:hidden!important;
        -webkit-overflow-scrolling:touch!important;
        scrollbar-width:none!important;
        padding-bottom:2px!important;
    }

    .rh-gbiz-services-row::-webkit-scrollbar{
        display:none!important;
    }

    .rh-gbiz-service-chip{
        flex:0 0 auto!important;
        min-width:124px!important;
        max-width:180px!important;
        min-height:40px!important;
        padding:8px 13px!important;
        font-size:.9rem!important;
    }

    .rh-gbiz-services-modal{
        align-items:flex-end!important;
        padding:0!important;
    }

    .rh-gbiz-services-dialog{
        width:100%!important;
        max-height:86vh!important;
        border-radius:22px 22px 0 0!important;
    }

    .rh-gbiz-service-row{
        display:block!important;
    }

    .rh-gbiz-service-row span{
        display:inline-flex!important;
        margin-top:8px!important;
    }
}

/* ---- moved from business.blade.php ---- */



/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 3B: exact DB review rating overview */
.rh-ratings-overview-card{
    width:100%;
    max-width:100%;
    margin:0 0 16px;
    padding:18px;
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:18px;
    align-items:center;
    border:1px solid rgba(214,227,250,.95);
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 28px rgba(8,27,66,.06);
    box-sizing:border-box;
}

.rh-ratings-score-block{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:150px;
    padding:16px;
    border:1px solid rgba(214,227,250,.95);
    border-radius:18px;
    background:#fff;
    text-align:center;
}

.rh-ratings-score-block strong{
    color:#071d49;
    font-size:2.7rem;
    line-height:1;
    font-weight:950;
    letter-spacing:-.04em;
}

.rh-ratings-stars{
    display:flex;
    gap:2px;
    margin-top:8px;
    font-size:1.2rem;
    line-height:1;
}

.rh-ratings-stars .is-filled{
    color:#f7bd17;
}

.rh-ratings-stars .is-empty{
    color:#cbd5e1;
}

.rh-ratings-score-block small{
    margin-top:8px;
    color:#5d7190;
    font-size:.92rem;
    font-weight:750;
}

.rh-ratings-bars{
    display:grid;
    gap:9px;
}

.rh-rating-bar-row{
    display:grid;
    grid-template-columns:22px minmax(0,1fr) 48px;
    gap:10px;
    align-items:center;
}

.rh-rating-bar-row span,
.rh-rating-bar-row em{
    color:#071d49;
    font-size:.9rem;
    font-style:normal;
    font-weight:850;
}

.rh-rating-bar-row em{
    text-align:right;
    color:#5d7190;
}

.rh-rating-bar-track{
    height:9px;
    border-radius:999px;
    background:#edf2f7;
    overflow:hidden;
}

.rh-rating-bar-track i{
    display:block;
    height:100%;
    border-radius:999px;
    background:#f7bd17;
}

@media(max-width:760px){
    .rh-ratings-overview-card{
        grid-template-columns:1fr;
        gap:12px;
        padding:14px;
        border-radius:18px;
    }

    .rh-ratings-score-block{
        min-height:120px;
    }

    .rh-ratings-score-block strong{
        font-size:2.25rem;
    }
}

/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 5A: Google-style FAQ rebuild */
.rh-google-faq-section{
    width:100%!important;
    max-width:100%!important;
    margin:18px auto 0!important;
    padding:0!important;
    border-top:1px solid #e3e8f2!important;
    background:transparent!important;
}

.rh-google-faq-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:18px 0 12px!important;
}

.rh-google-faq-head h2{
    margin:0!important;
    color:#071d49!important;
    font-size:1.42rem!important;
    line-height:1.2!important;
    font-weight:900!important;
}

.rh-google-faq-head button{
    appearance:none!important;
    border:0!important;
    background:transparent!important;
    color:#1a73e8!important;
    font-size:.96rem!important;
    font-weight:700!important;
    cursor:pointer!important;
    padding:6px 0!important;
}

.rh-google-faq-list{
    border:1px solid #dadce0!important;
    border-radius:16px!important;
    background:#fff!important;
    overflow:hidden!important;
}

.rh-google-faq-item,
.rh-google-faq-modal-item{
    border-bottom:1px solid #eceff5!important;
    background:#fff!important;
}

.rh-google-faq-item:last-child,
.rh-google-faq-modal-item:last-child{
    border-bottom:0!important;
}

.rh-google-faq-item summary,
.rh-google-faq-modal-item summary{
    min-height:58px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:0 18px!important;
    cursor:pointer!important;
    list-style:none!important;
    color:#202124!important;
    font-size:.98rem!important;
    line-height:1.3!important;
    font-weight:650!important;
}

.rh-google-faq-item summary::-webkit-details-marker,
.rh-google-faq-modal-item summary::-webkit-details-marker{
    display:none!important;
}

.rh-google-faq-item summary i,
.rh-google-faq-modal-item summary i{
    flex:0 0 auto!important;
    width:28px!important;
    height:28px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    color:#5f6368!important;
    font-style:normal!important;
    font-size:1.25rem!important;
    line-height:1!important;
    font-weight:500!important;
}

.rh-google-faq-item[open] summary i,
.rh-google-faq-modal-item[open] summary i{
    transform:rotate(45deg)!important;
}

.rh-google-faq-answer{
    padding:0 18px 16px!important;
    color:#5f6368!important;
    font-size:.95rem!important;
    line-height:1.55!important;
    font-weight:450!important;
}

.rh-google-faq-modal{
    position:fixed!important;
    inset:0!important;
    z-index:99999!important;
    display:none!important;
    align-items:center!important;
    justify-content:center!important;
    padding:18px!important;
}

.rh-google-faq-modal.is-visible{
    display:flex!important;
}

.rh-google-faq-modal[hidden]{
    display:none!important;
}

.rh-google-faq-backdrop{
    position:absolute!important;
    inset:0!important;
    background:rgba(32,33,36,.58)!important;
}

.rh-google-faq-dialog{
    position:relative!important;
    z-index:1!important;
    width:min(100%, 680px)!important;
    max-height:min(760px, calc(100vh - 36px))!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 20px 60px rgba(0,0,0,.28)!important;
}

.rh-google-faq-dialog-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:20px 22px!important;
    border-bottom:1px solid #eceff5!important;
}

.rh-google-faq-dialog-head h2{
    margin:0!important;
    color:#202124!important;
    font-size:1.35rem!important;
    line-height:1.2!important;
    font-weight:700!important;
}

.rh-google-faq-dialog-head p{
    margin:4px 0 0!important;
    color:#5f6368!important;
    font-size:.94rem!important;
}

.rh-google-faq-dialog-head button{
    width:40px!important;
    height:40px!important;
    border:0!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#202124!important;
    font-size:1.7rem!important;
    line-height:1!important;
    cursor:pointer!important;
}

.rh-google-faq-modal-list{
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
}

body.rh-faq-open{
    overflow:hidden!important;
}

@media(max-width:760px){
    .rh-google-faq-section{
        margin-top:14px!important;
    }

    .rh-google-faq-head{
        padding:16px 0 10px!important;
    }

    .rh-google-faq-head h2{
        font-size:1.32rem!important;
    }

    .rh-google-faq-item summary,
    .rh-google-faq-modal-item summary{
        min-height:54px!important;
        padding:0 15px!important;
        font-size:.95rem!important;
    }

    .rh-google-faq-answer{
        padding:0 15px 15px!important;
        font-size:.93rem!important;
    }

    .rh-google-faq-modal{
        align-items:flex-end!important;
        padding:0!important;
    }

    .rh-google-faq-dialog{
        width:100%!important;
        max-height:86vh!important;
        border-radius:22px 22px 0 0!important;
    }

    .rh-google-faq-dialog-head{
        padding:18px!important;
    }
}

/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 3D: real Google-style review popup */
.rh-google-review-entry{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 16px!important;
    padding:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    border:1px solid rgba(214,227,250,.95)!important;
    border-radius:20px!important;
    background:#fff!important;
    box-shadow:0 12px 28px rgba(8,27,66,.06)!important;
    box-sizing:border-box!important;
}

.rh-google-review-entry h3{
    margin:0!important;
    color:#071d49!important;
    font-size:1.15rem!important;
    line-height:1.2!important;
    font-weight:900!important;
}

.rh-google-review-entry p{
    margin:5px 0 0!important;
    color:#5d7190!important;
    font-size:.94rem!important;
    font-weight:600!important;
}

.rh-google-review-open{
    appearance:none!important;
    min-height:48px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    padding:0 18px!important;
    border:1px solid #dadce0!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#202124!important;
    font-size:.95rem!important;
    font-weight:800!important;
    cursor:pointer!important;
    white-space:nowrap!important;
}

.rh-google-review-open span{
    color:#fbbc04!important;
    letter-spacing:1px!important;
    font-size:1.05rem!important;
}

.rh-google-review-modal{
    position:fixed!important;
    inset:0!important;
    z-index:99999!important;
    display:none!important;
    align-items:center!important;
    justify-content:center!important;
    padding:18px!important;
}

.rh-google-review-modal.is-visible{
    display:flex!important;
}

.rh-google-review-modal[hidden]{
    display:none!important;
}

.rh-google-review-backdrop{
    position:absolute!important;
    inset:0!important;
    background:rgba(32,33,36,.58)!important;
}

.rh-google-review-dialog{
    position:relative!important;
    z-index:1!important;
    width:min(100%, 540px)!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 20px 60px rgba(0,0,0,.28)!important;
    overflow:hidden!important;
}

.rh-google-review-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:20px 22px!important;
    border-bottom:1px solid #eceff5!important;
}

.rh-google-review-head h2{
    margin:0!important;
    color:#202124!important;
    font-size:1.35rem!important;
    line-height:1.2!important;
    font-weight:750!important;
}

.rh-google-review-head p{
    margin:4px 0 0!important;
    color:#5f6368!important;
    font-size:.94rem!important;
}

.rh-google-review-head button{
    width:40px!important;
    height:40px!important;
    border:0!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#202124!important;
    font-size:1.7rem!important;
    line-height:1!important;
    cursor:pointer!important;
}

.rh-google-review-form{
    display:grid!important;
    gap:14px!important;
    padding:22px!important;
}

.rh-google-star-picker{
    display:flex!important;
    justify-content:center!important;
    gap:8px!important;
    margin:0 0 4px!important;
}

.rh-google-star{
    appearance:none!important;
    border:0!important;
    background:transparent!important;
    color:#dadce0!important;
    font-size:2.25rem!important;
    line-height:1!important;
    cursor:pointer!important;
    padding:0!important;
}

.rh-google-star.is-filled{
    color:#fbbc04!important;
}

.rh-google-review-field{
    display:grid!important;
    gap:7px!important;
    text-align:left!important;
}

.rh-google-review-field span{
    color:#202124!important;
    font-size:.9rem!important;
    font-weight:750!important;
}

.rh-google-review-field input,
.rh-google-review-field textarea{
    width:100%!important;
    border:1px solid #dadce0!important;
    border-radius:14px!important;
    padding:12px 14px!important;
    color:#202124!important;
    font-size:.95rem!important;
    line-height:1.4!important;
    box-sizing:border-box!important;
}

.rh-google-review-field textarea{
    min-height:118px!important;
    resize:vertical!important;
}

.rh-google-review-submit{
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    border:0!important;
    border-radius:999px!important;
    background:#071d49!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:.96rem!important;
    font-weight:900!important;
    cursor:pointer!important;
}

.rh-google-review-login-note{
    margin:0!important;
    color:#5f6368!important;
    font-size:.95rem!important;
    line-height:1.45!important;
    text-align:center!important;
}

body.rh-google-review-opened{
    overflow:hidden!important;
}

@media(max-width:760px){
    .rh-google-review-entry{
        display:grid!important;
        padding:16px!important;
        border-radius:18px!important;
    }

    .rh-google-review-open{
        width:100%!important;
    }

    .rh-google-review-modal{
        align-items:flex-end!important;
        padding:0!important;
    }

    .rh-google-review-dialog{
        width:100%!important;
        max-height:88vh!important;
        overflow-y:auto!important;
        border-radius:22px 22px 0 0!important;
    }

    .rh-google-star{
        font-size:2rem!important;
    }
}

/* ---- moved from business.blade.php ---- */

/* RepairHit: make Write a review text blue only */
.rh-google-review-entry h3{
    color:#075fd3!important;
}

/* ---- moved from business.blade.php ---- */

/* RepairHit: make actual clickable Write a review button blue */
.rh-google-review-open{
    background:#075fd3!important;
    border-color:#075fd3!important;
    color:#ffffff!important;
}

.rh-google-review-open span{
    color:#ffc928!important;
}

/* ---- moved from business.blade.php ---- */

/* RepairHit: clickable Write a review text blue only */
.rh-google-review-open{
    background:#ffffff!important;
    border-color:#dadce0!important;
    color:#075fd3!important;
    box-shadow:none!important;
}

.rh-google-review-open span{
    color:#fbbc04!important;
}

/* ---- moved from business.blade.php ---- */

/* RepairHit: make only clickable Write a review words blue */
.rh-google-review-open{
    background:#ffffff!important;
    border-color:#dadce0!important;
    box-shadow:none!important;
}

.rh-google-review-open .rh-google-review-stars-inline{
    color:#fbbc04!important;
}

.rh-google-review-open .rh-google-review-button-text{
    color:#075fd3!important;
    font-weight:900!important;
}

/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 6C: safe Google-style Location section */
.rh-safe-location-section{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:18px auto 0!important;
    padding:20px!important;
    border:1px solid rgba(214,227,250,.95)!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 12px 28px rgba(8,27,66,.06)!important;
    box-sizing:border-box!important;
}

.rh-safe-location-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:0 0 14px!important;
}

.rh-safe-location-head h2{
    margin:0!important;
    color:#071d49!important;
    font-size:1.45rem!important;
    line-height:1.15!important;
    font-weight:950!important;
    letter-spacing:-.02em!important;
}

.rh-safe-location-head p{
    margin:5px 0 0!important;
    color:#5d7190!important;
    font-size:.95rem!important;
    font-weight:650!important;
}

.rh-safe-location-head a{
    flex:0 0 auto!important;
    color:#075fd3!important;
    font-size:.96rem!important;
    font-weight:850!important;
    text-decoration:none!important;
    padding:6px 0!important;
}

.rh-safe-location-grid{
    display:grid!important;
    grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr)!important;
    gap:14px!important;
}

.rh-safe-address-card{
    padding:18px!important;
    border:1px solid rgba(214,227,250,.95)!important;
    border-radius:18px!important;
    background:#fff!important;
    box-sizing:border-box!important;
}

.rh-safe-address-card span{
    display:inline-flex!important;
    margin-bottom:10px!important;
    color:#5d7190!important;
    font-size:.82rem!important;
    font-weight:900!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
}

.rh-safe-address-card strong{
    display:block!important;
    color:#071d49!important;
    font-size:1.05rem!important;
    line-height:1.4!important;
    font-weight:900!important;
}

.rh-safe-address-card p{
    margin:7px 0 0!important;
    color:#50698f!important;
    font-size:.95rem!important;
    line-height:1.45!important;
    font-weight:600!important;
}

.rh-safe-location-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    margin-top:16px!important;
}

.rh-safe-location-actions a{
    min-height:42px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 15px!important;
    border:1px solid #dadce0!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#075fd3!important;
    text-decoration:none!important;
    font-size:.92rem!important;
    font-weight:850!important;
}

.rh-safe-map-card{
    min-height:260px!important;
    border-radius:18px!important;
    overflow:hidden!important;
    border:1px solid rgba(214,227,250,.95)!important;
    background:#eef4fb!important;
}

.rh-safe-map-card iframe{
    width:100%!important;
    height:100%!important;
    min-height:260px!important;
    display:block!important;
    border:0!important;
}

.rh-safe-map-empty{
    min-height:260px!important;
    display:grid!important;
    place-items:center!important;
    padding:22px!important;
    text-align:center!important;
}

@media(max-width:760px){
    .rh-safe-location-section{
        margin-top:14px!important;
        padding:16px!important;
        border-radius:20px!important;
    }

    .rh-safe-location-head{
        display:grid!important;
        gap:10px!important;
    }

    .rh-safe-location-head h2{
        font-size:1.34rem!important;
    }

    .rh-safe-location-grid{
        grid-template-columns:1fr!important;
    }

    .rh-safe-map-card,
    .rh-safe-map-card iframe,
    .rh-safe-map-empty{
        min-height:220px!important;
    }

    .rh-safe-location-actions a{
        flex:1 1 auto!important;
    }
}

/* ---- moved from business.blade.php ---- */



/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 6E: make mobile Location map 60% smaller */
@media(max-width:760px){
    .rh-safe-map-card,
    .rh-safe-map-card iframe,
    .rh-safe-map-empty{
        min-height:90px!important;
        height:90px!important;
        max-height:90px!important;
    }

    .rh-safe-location-section{
        padding:12px!important;
    }

    .rh-safe-location-head{
        padding-bottom:8px!important;
    }

    .rh-safe-location-head h2{
        font-size:1.22rem!important;
    }

    .rh-safe-location-head p{
        font-size:.86rem!important;
        margin-top:3px!important;
    }

    .rh-safe-address-card{
        padding:12px!important;
    }

    .rh-safe-address-card strong{
        font-size:.95rem!important;
        line-height:1.32!important;
    }

    .rh-safe-address-card p{
        font-size:.86rem!important;
        line-height:1.35!important;
    }

    .rh-safe-location-actions{
        margin-top:10px!important;
    }

    .rh-safe-location-actions a{
        min-height:36px!important;
        font-size:.86rem!important;
        padding:0 12px!important;
    }
}

/* ---- moved from business.blade.php ---- */

/* RepairHit Stage 7B: keep hero photo sharp */
.rh-target-main-photo,
.rh-target-main-photo img{
    image-rendering:auto!important;
    filter:none!important;
    transform:none!important;
    object-fit:cover!important;
    object-position:center!important;
}

/* ---- moved from business.blade.php ---- */

/* RepairHit compact business photo gallery override */
.business-page .photos-section,
.business-page .business-photos,
.business-page .business-gallery,
.business-page .photo-gallery-section,
.business-page .profile-photos,
.business-page [data-section="photos"] {
    margin-top: 1.25rem !important;
    padding: 1.25rem !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 12px 35px rgba(15, 23, 42, 0.05) !important;
    min-height: unset !important;
}

.business-page .photos-section h2,
.business-page .business-photos h2,
.business-page .business-gallery h2,
.business-page .photo-gallery-section h2,
.business-page .profile-photos h2,
.business-page [data-section="photos"] h2 {
    font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
    line-height: 1.05 !important;
    margin: 0 0 1rem !important;
    letter-spacing: -0.04em !important;
}

.business-page .photos-section .carousel,
.business-page .business-photos .carousel,
.business-page .business-gallery .carousel,
.business-page .photo-gallery-section .carousel,
.business-page .profile-photos .carousel,
.business-page .photos-section .slider,
.business-page .business-photos .slider,
.business-page .business-gallery .slider,
.business-page .photo-gallery-section .slider,
.business-page .profile-photos .slider,
.business-page .photos-section .swiper,
.business-page .business-photos .swiper,
.business-page .business-gallery .swiper,
.business-page .photo-gallery-section .swiper,
.business-page .profile-photos .swiper {
    position: relative !important;
    overflow: hidden !important;
    min-height: unset !important;
}

.business-page .photos-section .carousel-track,
.business-page .business-photos .carousel-track,
.business-page .business-gallery .carousel-track,
.business-page .photo-gallery-section .carousel-track,
.business-page .profile-photos .carousel-track,
.business-page .photos-section .slider-track,
.business-page .business-photos .slider-track,
.business-page .business-gallery .slider-track,
.business-page .photo-gallery-section .slider-track,
.business-page .profile-photos .slider-track,
.business-page .photos-section .swiper-wrapper,
.business-page .business-photos .swiper-wrapper,
.business-page .business-gallery .swiper-wrapper,
.business-page .photo-gallery-section .swiper-wrapper,
.business-page .profile-photos .swiper-wrapper {
    display: flex !important;
    gap: 18px !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    padding: 0 0 0.35rem !important;
    min-height: unset !important;
    -webkit-overflow-scrolling: touch !important;
}

.business-page .photos-section .carousel-track::-webkit-scrollbar,
.business-page .business-photos .carousel-track::-webkit-scrollbar,
.business-page .business-gallery .carousel-track::-webkit-scrollbar,
.business-page .photo-gallery-section .carousel-track::-webkit-scrollbar,
.business-page .profile-photos .carousel-track::-webkit-scrollbar,
.business-page .photos-section .slider-track::-webkit-scrollbar,
.business-page .business-photos .slider-track::-webkit-scrollbar,
.business-page .business-gallery .slider-track::-webkit-scrollbar,
.business-page .photo-gallery-section .slider-track::-webkit-scrollbar,
.business-page .profile-photos .slider-track::-webkit-scrollbar {
    display: none !important;
}

.business-page .photos-section img,
.business-page .business-photos img,
.business-page .business-gallery img,
.business-page .photo-gallery-section img,
.business-page .profile-photos img,
.business-page [data-section="photos"] img {
    width: 100% !important;
    height: 230px !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 12px !important;
    display: block !important;
    background: #f1f5f9 !important;
}

.business-page .photos-section picture,
.business-page .business-photos picture,
.business-page .business-gallery picture,
.business-page .photo-gallery-section picture,
.business-page .profile-photos picture,
.business-page .photos-section figure,
.business-page .business-photos figure,
.business-page .business-gallery figure,
.business-page .photo-gallery-section figure,
.business-page .profile-photos figure,
.business-page .photos-section .slide,
.business-page .business-photos .slide,
.business-page .business-gallery .slide,
.business-page .photo-gallery-section .slide,
.business-page .profile-photos .slide,
.business-page .photos-section .swiper-slide,
.business-page .business-photos .swiper-slide,
.business-page .business-gallery .swiper-slide,
.business-page .photo-gallery-section .swiper-slide,
.business-page .profile-photos .swiper-slide,
.business-page .photos-section .photo-card,
.business-page .business-photos .photo-card,
.business-page .business-gallery .photo-card,
.business-page .photo-gallery-section .photo-card,
.business-page .profile-photos .photo-card {
    flex: 0 0 clamp(260px, 31vw, 420px) !important;
    max-width: clamp(260px, 31vw, 420px) !important;
    min-width: clamp(260px, 31vw, 420px) !important;
    height: 230px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
    background: #f8fafc !important;
    border: 0 !important;
    box-shadow: none !important;
}

.business-page .photos-section button,
.business-page .business-photos button,
.business-page .business-gallery button,
.business-page .photo-gallery-section button,
.business-page .profile-photos button {
    width: 46px !important;
    height: 46px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,0.94) !important;
    border: 1px solid rgba(15, 23, 42, 0.12) !important;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.14) !important;
    color: #0f172a !important;
    z-index: 5 !important;
}

.business-page .photos-section .prev,
.business-page .business-photos .prev,
.business-page .business-gallery .prev,
.business-page .photo-gallery-section .prev,
.business-page .profile-photos .prev,
.business-page .photos-section .previous,
.business-page .business-photos .previous,
.business-page .business-gallery .previous,
.business-page .photo-gallery-section .previous,
.business-page .profile-photos .previous {
    position: absolute !important;
    left: 16px !important;
    top: 58% !important;
    transform: translateY(-50%) !important;
}

.business-page .photos-section .next,
.business-page .business-photos .next,
.business-page .business-gallery .next,
.business-page .photo-gallery-section .next,
.business-page .profile-photos .next {
    position: absolute !important;
    right: 16px !important;
    top: 58% !important;
    transform: translateY(-50%) !important;
}

@media (max-width: 768px) {
    .business-page .photos-section,
    .business-page .business-photos,
    .business-page .business-gallery,
    .business-page .photo-gallery-section,
    .business-page .profile-photos,
    .business-page [data-section="photos"] {
        padding: 1rem !important;
        border-radius: 18px !important;
    }

    .business-page .photos-section img,
    .business-page .business-photos img,
    .business-page .business-gallery img,
    .business-page .photo-gallery-section img,
    .business-page .profile-photos img,
    .business-page [data-section="photos"] img {
        height: 180px !important;
    }

    .business-page .photos-section picture,
    .business-page .business-photos picture,
    .business-page .business-gallery picture,
    .business-page .photo-gallery-section picture,
    .business-page .profile-photos picture,
    .business-page .photos-section figure,
    .business-page .business-photos figure,
    .business-page .business-gallery figure,
    .business-page .photo-gallery-section figure,
    .business-page .profile-photos figure,
    .business-page .photos-section .slide,
    .business-page .business-photos .slide,
    .business-page .business-gallery .slide,
    .business-page .photo-gallery-section .slide,
    .business-page .profile-photos .slide,
    .business-page .photos-section .swiper-slide,
    .business-page .business-photos .swiper-slide,
    .business-page .business-gallery .swiper-slide,
    .business-page .photo-gallery-section .swiper-slide,
    .business-page .profile-photos .swiper-slide,
    .business-page .photos-section .photo-card,
    .business-page .business-photos .photo-card,
    .business-page .business-gallery .photo-card,
    .business-page .photo-gallery-section .photo-card,
    .business-page .profile-photos .photo-card {
        flex-basis: 82vw !important;
        min-width: 82vw !important;
        max-width: 82vw !important;
        height: 180px !important;
    }
}

/* ---- moved from business.blade.php ---- */

/* Final exact RepairHit photo gallery override */
#photos.section-card{
    padding:24px!important;
    margin-top:22px!important;
    border-radius:24px!important;
    min-height:unset!important;
}
#photos .photo-gallery-carousel{
    position:relative!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
}
#photos .photo-gallery-track{
    display:flex!important;
    gap:18px!important;
    align-items:stretch!important;
    padding:0 0 4px!important;
}
#photos .photo-gallery-card{
    flex:0 0 min(31vw,420px)!important;
    width:min(31vw,420px)!important;
    max-width:min(31vw,420px)!important;
    height:230px!important;
    padding:0!important;
    border:0!important;
    border-radius:14px!important;
    overflow:hidden!important;
    background:#f8fafc!important;
    box-shadow:none!important;
    scroll-snap-align:start!important;
}
#photos .photo-gallery-card img{
    width:100%!important;
    height:230px!important;
    object-fit:cover!important;
    object-position:center!important;
    border:0!important;
    border-radius:14px!important;
    background:#f1f5f9!important;
    box-shadow:none!important;
}
#photos .photo-carousel-controls{
    display:flex!important;
    gap:10px!important;
}
#photos .carousel-button{
    width:48px!important;
    height:48px!important;
    border-radius:999px!important;
}
@media (max-width:768px){
    #photos.section-card{padding:16px!important;border-radius:18px!important}
    #photos .photo-gallery-track{gap:12px!important}
    #photos .photo-gallery-card{
        flex-basis:82vw!important;
        width:82vw!important;
        max-width:82vw!important;
        height:180px!important;
    }
    #photos .photo-gallery-card img{height:180px!important}
}

/* ---- moved from business.blade.php ---- */

/* Tighten Photos section spacing */
#photos.section-card{
    padding:18px 22px 20px!important;
}

#photos .section-head-inline{
    margin-bottom:10px!important;
    align-items:center!important;
}

#photos .section-title,
#photos h2{
    margin:0!important;
    line-height:1!important;
}

#photos .photo-carousel-controls{
    margin-top:0!important;
}

#photos .photo-gallery-carousel{
    margin-top:8px!important;
}

#photos .photo-gallery-track{
    padding-top:0!important;
}

#photos .photo-gallery-card{
    height:210px!important;
}

#photos .photo-gallery-card img{
    height:210px!important;
}

@media (max-width:768px){
    #photos.section-card{
        padding:14px!important;
    }

    #photos .section-head-inline{
        margin-bottom:8px!important;
    }

    #photos .photo-gallery-carousel{
        margin-top:6px!important;
    }

    #photos .photo-gallery-card,
    #photos .photo-gallery-card img{
        height:170px!important;
    }
}

/* ---- moved from business.blade.php ---- */

/* Final Photos placement + spacing fix */
#photos.section-card{
    padding:18px 22px 20px!important;
    margin-top:22px!important;
    min-height:unset!important;
}
#photos .section-head-inline{
    margin-bottom:8px!important;
    align-items:center!important;
}
#photos .section-head-inline h2,
#photos h2{
    margin:0!important;
    line-height:1!important;
}
#photos .photo-carousel-controls{
    margin-top:0!important;
}
#photos .photo-gallery-carousel{
    margin-top:4px!important;
}
#photos .photo-gallery-track{
    padding-top:0!important;
    gap:16px!important;
}
#photos .photo-gallery-card{
    height:205px!important;
    flex:0 0 min(31vw,420px)!important;
    width:min(31vw,420px)!important;
    max-width:min(31vw,420px)!important;
}
#photos .photo-gallery-card img{
    height:205px!important;
    object-fit:cover!important;
    object-position:center!important;
}
@media (max-width:768px){
    #photos.section-card{
        padding:14px!important;
        margin-top:16px!important;
    }
    #photos .section-head-inline{
        margin-bottom:6px!important;
    }
    #photos .photo-gallery-carousel{
        margin-top:2px!important;
    }
    #photos .photo-gallery-card{
        flex-basis:82vw!important;
        width:82vw!important;
        max-width:82vw!important;
        height:165px!important;
    }
    #photos .photo-gallery-card img{
        height:165px!important;
    }
}

/* ---- moved from business.blade.php ---- */

/* Correct Photos location/spacing final override */
#photos.section-card{
    padding:20px 22px 22px!important;
    margin-top:22px!important;
    margin-bottom:22px!important;
    min-height:unset!important;
    overflow:hidden!important;
}
#photos .section-head-inline{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin:0 0 12px!important;
    gap:14px!important;
}
#photos h2,
#photos .section-head-inline h2{
    margin:0!important;
    line-height:1!important;
}
#photos .photo-carousel-controls{
    margin:0!important;
    display:flex!important;
    gap:10px!important;
}
#photos .photo-gallery-carousel{
    margin-top:0!important;
    padding-top:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
}
#photos .photo-gallery-track{
    padding:0!important;
    gap:18px!important;
    align-items:stretch!important;
}
#photos .photo-gallery-card{
    flex:0 0 min(42vw,560px)!important;
    width:min(42vw,560px)!important;
    max-width:min(42vw,560px)!important;
    height:300px!important;
    padding:0!important;
    border:0!important;
    border-radius:16px!important;
    overflow:hidden!important;
    background:#f8fafc!important;
    box-shadow:none!important;
}
#photos .photo-gallery-card img{
    width:100%!important;
    height:300px!important;
    object-fit:cover!important;
    object-position:center!important;
    border:0!important;
    border-radius:16px!important;
    background:#f1f5f9!important;
    box-shadow:none!important;
}
@media (max-width:768px){
    #photos.section-card{
        padding:14px!important;
        margin-top:16px!important;
        margin-bottom:16px!important;
    }
    #photos .section-head-inline{
        margin-bottom:10px!important;
    }
    #photos .photo-gallery-track{
        gap:12px!important;
    }
    #photos .photo-gallery-card{
        flex-basis:88vw!important;
        width:88vw!important;
        max-width:88vw!important;
        height:220px!important;
    }
    #photos .photo-gallery-card img{
        height:220px!important;
    }
}

/* ---- moved from business.blade.php ---- */

/* RepairHit final business photos layout */
#photos.section-card{
    padding:16px 20px 20px!important;
    margin:20px 0!important;
    min-height:unset!important;
    overflow:hidden!important;
}
#photos .section-head-inline{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin:0 0 10px!important;
    gap:12px!important;
}
#photos h2,
#photos .section-head-inline h2{
    margin:0!important;
    line-height:1!important;
}
#photos .photo-carousel-controls{
    margin:0!important;
    display:flex!important;
    gap:10px!important;
}
#photos .carousel-button{
    width:46px!important;
    height:46px!important;
    border-radius:999px!important;
}
#photos .photo-gallery-carousel{
    margin:0!important;
    padding:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
}
#photos .photo-gallery-track{
    display:flex!important;
    gap:16px!important;
    align-items:stretch!important;
    padding:0!important;
}
#photos .photo-gallery-card{
    flex:0 0 min(44vw,580px)!important;
    width:min(44vw,580px)!important;
    max-width:min(44vw,580px)!important;
    height:300px!important;
    padding:0!important;
    border:0!important;
    border-radius:16px!important;
    overflow:hidden!important;
    background:#f8fafc!important;
    box-shadow:none!important;
}
#photos .photo-gallery-card img{
    width:100%!important;
    height:300px!important;
    object-fit:cover!important;
    object-position:center!important;
    border:0!important;
    border-radius:16px!important;
    background:#f1f5f9!important;
    box-shadow:none!important;
}
@media (max-width:768px){
    #photos.section-card{
        padding:14px!important;
        margin:16px 0!important;
    }
    #photos .section-head-inline{
        margin-bottom:8px!important;
    }
    #photos .photo-gallery-track{
        gap:12px!important;
    }
    #photos .photo-gallery-card{
        flex-basis:88vw!important;
        width:88vw!important;
        max-width:88vw!important;
        height:220px!important;
    }
    #photos .photo-gallery-card img{
        height:220px!important;
    }
}

/* RepairHit logo clarity fix: logos should not be cropped, stretched, or blurred like cover photos */
.rh-target-logo img,
.rh-business-logo img,
.business-logo img,
.business-page img[src*="/logos/"],
img[src*="business-media"][src*="/logos/"] {
    object-fit: contain !important;
    object-position: center center !important;
    image-rendering: auto !important;
    background: #ffffff !important;
}

/* Keep logo containers clean and readable */
.rh-target-logo,
.rh-business-logo,
.business-logo {
    background: #ffffff !important;
    overflow: hidden !important;
}

/* Do not force logo images to fill like gallery photos */
.rh-target-logo img,
.rh-business-logo img,
.business-logo img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    padding: 6px !important;
}

/* RepairHit result-card logo fallback clarity:
   If a card must use a logo because no real photo exists, render it like a logo, not like a cropped photo. */
.business-card img[src*="/logos/"],
.related-carousel-card img[src*="/logos/"],
.search-page-shell img[src*="/logos/"],
img[src*="business-media"][src*="/logos/"] {
    object-fit: contain !important;
    object-position: center center !important;
    background: #ffffff !important;
    padding: 10px !important;
    image-rendering: auto !important;
}

/* RepairHit business page typography soften - 2026-05-16 */
.rh-target-business-name {
    font-weight: 800 !important;
    letter-spacing: -0.035em !important;
    line-height: 1.05 !important;
}

.rh-target-rating-line,
.rh-target-meta-line {
    font-weight: 600 !important;
}

.rh-target-rating-line strong {
    font-weight: 750 !important;
}

.rh-target-rating-line a,
.rh-target-meta-line span,
.rh-target-category-chip {
    font-weight: 600 !important;
}

.rh-target-stars {
    letter-spacing: -1px !important;
}

.rh-target-tabs a {
    font-weight: 700 !important;
    font-size: 14px !important;
}

.rh-target-about-card h2,
.rh-gbiz-services-head h2,
.rh-safe-location-head h2,
.reviews-showcase-card h2,
.rh-google-faq-head h2 {
    font-weight: 780 !important;
    letter-spacing: -0.025em !important;
}

.rh-target-about-card p,
.rh-target-trust-item small,
.rh-safe-location-head p,
.rh-safe-address-card p,
.rh-gbiz-service-row p,
.rh-business-service-row p {
    font-weight: 500 !important;
    line-height: 1.6 !important;
}

.rh-target-section-kicker,
.section-kicker {
    font-weight: 700 !important;
    letter-spacing: .04em !important;
    opacity: .72 !important;
}

.rh-target-btn,
.rh-target-claim-btn,
.rh-gbiz-services-head button,
.rh-gbiz-service-chip {
    font-weight: 700 !important;
}

.rh-target-trust-item strong,
.mini-info strong,
.business-rail-row strong {
    font-weight: 720 !important;
}

.rh-target-about-tags span,
.service-chip {
    font-weight: 650 !important;
}

/* Avoid duplicated visual hierarchy: make Overview kicker quieter */
.rh-target-about-card .rh-target-section-kicker {
    font-size: 12px !important;
    color: #64748b !important;
    margin-bottom: 4px !important;
}

/* RepairHit soft gray replacement for yellow UI accents - 2026-05-16 */
:root {
    --rh-soft-gray-bg: #f3f4f6;
    --rh-soft-gray-border: #d6dbe4;
    --rh-soft-gray-text: #6b7280;
    --rh-soft-gray-text-strong: #4b5563;
}

/* Active tabs / tab buttons */
.rh-target-tabs .is-active,
.rh-target-tabs .active,
.rh-target-tabs a[aria-selected="true"],
.rh-target-tabs button[aria-selected="true"],
.rh-target-tabs .tab-active,
.rh-target-tabs .current {
    background: var(--rh-soft-gray-bg) !important;
    border-color: var(--rh-soft-gray-border) !important;
    color: #0b2147 !important;
    box-shadow: none !important;
}

/* Small section kicker / pill like OVERVIEW */
.rh-target-section-kicker,
.section-kicker,
.rh-target-about-card .rh-target-section-kicker,
.rh-target-about-card .section-kicker {
    background: var(--rh-soft-gray-bg) !important;
    border: 1px solid var(--rh-soft-gray-border) !important;
    color: var(--rh-soft-gray-text) !important;
    box-shadow: none !important;
}

/* If any outlined pill/button is still yellow-tinted */
.rh-target-about-tags span,
.rh-target-chip,
.rh-target-pill,
.service-chip {
    background: #f8fafc !important;
    border-color: #dbe1ea !important;
    color: var(--rh-soft-gray-text-strong) !important;
}

/* Remove any lingering pale yellow fill on overview/service/location nav area */
.rh-target-tabs a,
.rh-target-tabs button {
    box-shadow: none !important;
}

/* RepairHit: remove remaining yellow tab hover/active states - 2026-05-16 */
.rh-target-tabs a,
.rh-target-tabs button,
.rh-target-tabs a:link,
.rh-target-tabs a:visited {
    background: transparent !important;
    border-color: transparent !important;
    color: #0b2147 !important;
    box-shadow: none !important;
}

.rh-target-tabs a:hover,
.rh-target-tabs a:focus,
.rh-target-tabs a:focus-visible,
.rh-target-tabs a:active,
.rh-target-tabs button:hover,
.rh-target-tabs button:focus,
.rh-target-tabs button:focus-visible,
.rh-target-tabs button:active {
    background: #f3f4f6 !important;
    border-color: #d6dbe4 !important;
    color: #0b2147 !important;
    box-shadow: none !important;
    outline: none !important;
}

.rh-target-tabs a.is-active,
.rh-target-tabs a.active,
.rh-target-tabs a[aria-current="page"],
.rh-target-tabs a[aria-selected="true"],
.rh-target-tabs button.is-active,
.rh-target-tabs button.active,
.rh-target-tabs button[aria-selected="true"] {
    background: #f3f4f6 !important;
    border-color: #d6dbe4 !important;
    color: #0b2147 !important;
    box-shadow: none !important;
}

/* Remove pale yellow from overview/kicker pills too */
.rh-target-section-kicker,
.section-kicker,
.rh-target-about-card .rh-target-section-kicker,
.rh-target-about-card .section-kicker,
.rh-target-overview-anchor + .rh-target-about-card .rh-target-section-kicker {
    background: #f3f4f6 !important;
    border-color: #d6dbe4 !important;
    color: #6b7280 !important;
    box-shadow: none !important;
}

/* Catch older yellow variables/classes if present */
.rh-target-tabs a[style],
.rh-target-tabs button[style] {
    background-color: #f3f4f6 !important;
    border-color: #d6dbe4 !important;
}

/* RepairHit hero image quality fix:
   Show full image instead of cropping/zooming it inside the cover area. */
.rh-target-main-photo img,
.rh-target-main-photo-wrap .rh-target-main-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #f8fafc !important;
    image-rendering: auto !important;
}

/* Keep the hero photo area clean when image does not fill every edge */
.rh-target-main-photo,
.rh-target-main-photo-wrap {
    background: #f8fafc !important;
}

/* RepairHit hero: full-quality image with filled background */
.rh-target-main-photo {
    position: relative !important;
    overflow: hidden !important;
    background: #0f172a !important;
}

/* Add soft filled background behind the real image */
.rh-target-main-photo::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background-image: inherit !important;
    background-size: cover !important;
    background-position: center center !important;
    filter: blur(18px) brightness(0.85) !important;
    transform: scale(1.08) !important;
    z-index: 0 !important;
}

/* Real hero image stays full, not cropped */
.rh-target-main-photo img {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: transparent !important;
    image-rendering: auto !important;
}

/* RepairHit final hero image rule:
   Do not crop, do not force fixed-height empty holder.
   Let the image fill width and set its own natural height. */
.rh-target-main-photo-wrap,
.rh-target-main-photo {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    background: transparent !important;
    overflow: hidden !important;
}

/* Disable blurred background layer from previous test */
.rh-target-main-photo::before {
    display: none !important;
    content: none !important;
}

/* Full image, full width, no crop */
.rh-target-main-photo img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: transparent !important;
}

/* Keep rounded clean card look */
.rh-target-main-photo {
    border-radius: 22px !important;
}

/* RepairHit hero image floating controls:
   Photo count, share, and save/heart should look like transparent glass overlays,
   not white card wrappers. */
.rh-target-main-photo-wrap .rh-photo-count,
.rh-target-main-photo-wrap .photo-count,
.rh-target-main-photo-wrap [class*="photo-count"],
.rh-target-main-photo-wrap .rh-share-button,
.rh-target-main-photo-wrap .share-button,
.rh-target-main-photo-wrap [class*="share"],
.rh-target-main-photo-wrap .rh-save-button,
.rh-target-main-photo-wrap .save-button,
.rh-target-main-photo-wrap [class*="favorite"],
.rh-target-main-photo-wrap [class*="heart"] {
    background: rgba(15, 23, 42, 0.42) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18) !important;
    backdrop-filter: blur(12px) saturate(135%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(135%) !important;
}

/* Make inner icons/text inherit white instead of black/gray */
.rh-target-main-photo-wrap .rh-photo-count *,
.rh-target-main-photo-wrap .photo-count *,
.rh-target-main-photo-wrap [class*="photo-count"] *,
.rh-target-main-photo-wrap .rh-share-button *,
.rh-target-main-photo-wrap .share-button *,
.rh-target-main-photo-wrap [class*="share"] *,
.rh-target-main-photo-wrap .rh-save-button *,
.rh-target-main-photo-wrap .save-button *,
.rh-target-main-photo-wrap [class*="favorite"] *,
.rh-target-main-photo-wrap [class*="heart"] * {
    color: #ffffff !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

/* Remove white wrapper look from hero image action buttons */
.rh-target-main-photo-wrap button,
.rh-target-main-photo-wrap a {
    text-decoration: none !important;
}

/* Stronger targeting for common hero overlay action containers */
.rh-target-main-photo-wrap .rh-hero-actions,
.rh-target-main-photo-wrap .rh-target-actions,
.rh-target-main-photo-wrap .rh-photo-actions {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}

/* RepairHit final hero controls: clear glossy glass, not blue/white blocks */
.rh-target-main-photo-wrap .rh-photo-count,
.rh-target-main-photo-wrap .photo-count,
.rh-target-main-photo-wrap [class*="photo-count"],
.rh-target-main-photo-wrap .rh-share-button,
.rh-target-main-photo-wrap .share-button,
.rh-target-main-photo-wrap [class*="share"],
.rh-target-main-photo-wrap .rh-save-button,
.rh-target-main-photo-wrap .save-button,
.rh-target-main-photo-wrap [class*="favorite"],
.rh-target-main-photo-wrap [class*="heart"],
.rh-target-main-photo-wrap button[class*="save"],
.rh-target-main-photo-wrap button[class*="share"],
.rh-target-main-photo-wrap button[class*="heart"],
.rh-target-main-photo-wrap a[class*="share"] {
    background: rgba(255, 255, 255, 0.16) !important;
    background-color: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.32) !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.18) !important;
    backdrop-filter: blur(16px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(160%) !important;
}

/* Remove solid white icon/button circles inside share/save/heart */
.rh-target-main-photo-wrap .rh-share-button *,
.rh-target-main-photo-wrap .share-button *,
.rh-target-main-photo-wrap [class*="share"] *,
.rh-target-main-photo-wrap .rh-save-button *,
.rh-target-main-photo-wrap .save-button *,
.rh-target-main-photo-wrap [class*="save"] *,
.rh-target-main-photo-wrap [class*="favorite"] *,
.rh-target-main-photo-wrap [class*="heart"] * {
    background: transparent !important;
    background-color: transparent !important;
    color: #ffffff !important;
    fill: none !important;
    stroke: #ffffff !important;
    box-shadow: none !important;
}

/* If the heart SVG is filled by default, make it outline/glossy */
.rh-target-main-photo-wrap svg,
.rh-target-main-photo-wrap svg path,
.rh-target-main-photo-wrap svg circle {
    background: transparent !important;
}

/* Keep active/saved heart visible but not white-blocked */
.rh-target-main-photo-wrap [class*="heart"].is-active,
.rh-target-main-photo-wrap [class*="favorite"].is-active,
.rh-target-main-photo-wrap [class*="save"].is-active {
    background: rgba(255, 255, 255, 0.22) !important;
    background-color: rgba(255, 255, 255, 0.22) !important;
    border-color: rgba(255, 255, 255, 0.42) !important;
}

/* No wrapper band behind the controls */
.rh-target-main-photo-wrap .rh-hero-actions,
.rh-target-main-photo-wrap .rh-target-actions,
.rh-target-main-photo-wrap .rh-photo-actions,
.rh-target-main-photo-wrap [class*="actions"] {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* RepairHit: remove hero image overlay controls/counts */
.rh-target-main-photo-wrap .rh-photo-count,
.rh-target-main-photo-wrap .photo-count,
.rh-target-main-photo-wrap [class*="photo-count"],
.rh-target-main-photo-wrap .rh-share-button,
.rh-target-main-photo-wrap .share-button,
.rh-target-main-photo-wrap [class*="share"],
.rh-target-main-photo-wrap .rh-save-button,
.rh-target-main-photo-wrap .save-button,
.rh-target-main-photo-wrap [class*="save"],
.rh-target-main-photo-wrap [class*="favorite"],
.rh-target-main-photo-wrap [class*="heart"],
.rh-target-main-photo-wrap .rh-hero-actions,
.rh-target-main-photo-wrap .rh-target-actions,
.rh-target-main-photo-wrap .rh-photo-actions,
.rh-target-main-photo-wrap [class*="actions"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Keep image itself clickable/openable only if the main photo button is used */
.rh-target-main-photo-wrap .rh-target-main-photo,
.rh-target-main-photo-wrap .rh-target-main-photo img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* RepairHit business profile status badge polish — exact target pills only */
.rh-target-status-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    padding: 7px 14px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em !important;
    box-shadow: none !important;
    text-transform: none !important;
}

/* Verified = clean blue identity */
.rh-target-status-pill.rh-target-status-verified {
    background: #e8f2ff !important;
    color: #1757a6 !important;
    border: 1px solid #cfe3ff !important;
}

/* Top-Rated / Promoted = gold identity, lighter and cleaner */
.rh-target-status-pill.rh-target-status-gold {
    background: #fff3bf !important;
    color: #7a4d00 !important;
    border: 1px solid #ffe58a !important;
}

/* Slightly different promoted identity if browser supports content-sensitive styling */
.rh-target-status-pill.rh-target-status-gold:last-of-type {
    background: #fff0cc !important;
    color: #8a4b00 !important;
    border-color: #ffd98a !important;
}

@media (max-width: 640px) {
    .rh-target-status-pill {
        min-height: 28px !important;
        padding: 6px 11px !important;
        font-size: 12px !important;
        font-weight: 600 !important;
    }
}

/* RepairHit desktop hero size fix:
   Keep full image visible but prevent huge desktop hero height. */
@media (min-width: 901px) {
    .rh-target-main-photo-wrap,
    .rh-target-main-photo {
        max-height: 520px !important;
        height: auto !important;
        overflow: hidden !important;
    }

    .rh-target-main-photo img {
        width: 100% !important;
        height: auto !important;
        max-height: 520px !important;
        object-fit: contain !important;
        object-position: center center !important;
        display: block !important;
        margin: 0 auto !important;
    }
}

/* Large desktop: slightly tighter so it does not dominate the page */
@media (min-width: 1280px) {
    .rh-target-main-photo-wrap,
    .rh-target-main-photo {
        max-height: 480px !important;
    }

    .rh-target-main-photo img {
        max-height: 480px !important;
    }
}

/* Mobile/tablet: keep natural full-image behavior */
@media (max-width: 900px) {
    .rh-target-main-photo-wrap,
    .rh-target-main-photo {
        max-height: none !important;
        height: auto !important;
    }

    .rh-target-main-photo img {
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
    }
}

/* RepairHit final hero image layout:
   Fill the hero holder cleanly, prevent huge desktop height, no empty spaces. */
.rh-target-main-photo-wrap,
.rh-target-main-photo {
    width: 100% !important;
    overflow: hidden !important;
    background: #f8fafc !important;
}

/* Desktop filled hero */
@media (min-width: 901px) {
    .rh-target-main-photo-wrap,
    .rh-target-main-photo {
        height: 460px !important;
        max-height: 460px !important;
        aspect-ratio: auto !important;
    }

    .rh-target-main-photo img {
        width: 100% !important;
        height: 100% !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        display: block !important;
    }
}

/* Large desktop: keep it balanced */
@media (min-width: 1280px) {
    .rh-target-main-photo-wrap,
    .rh-target-main-photo {
        height: 430px !important;
        max-height: 430px !important;
    }
}

/* Mobile/tablet: filled but not oversized */
@media (max-width: 900px) {
    .rh-target-main-photo-wrap,
    .rh-target-main-photo {
        height: 280px !important;
        max-height: 280px !important;
        aspect-ratio: auto !important;
    }

    .rh-target-main-photo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
        display: block !important;
    }
}

/* Small phones */
@media (max-width: 520px) {
    .rh-target-main-photo-wrap,
    .rh-target-main-photo {
        height: 230px !important;
        max-height: 230px !important;
    }
}

/* RepairHit strongest final hero fill override.
   This defeats earlier contain/natural-height rules. */
@media (min-width: 901px) {
    .rh-target-main-photo-wrap {
        width: 100% !important;
        height: 420px !important;
        min-height: 420px !important;
        max-height: 420px !important;
        overflow: hidden !important;
        background: #f8fafc !important;
        border-radius: 22px !important;
    }

    .rh-target-main-photo-wrap .rh-target-main-photo {
        width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        max-height: 100% !important;
        display: block !important;
        overflow: hidden !important;
        border-radius: 22px !important;
        background: #f8fafc !important;
    }

    .rh-target-main-photo-wrap .rh-target-main-photo img {
        width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        max-height: 100% !important;
        display: block !important;
        object-fit: cover !important;
        object-position: center center !important;
        background: #f8fafc !important;
    }
}

@media (min-width: 1280px) {
    .rh-target-main-photo-wrap {
        height: 400px !important;
        min-height: 400px !important;
        max-height: 400px !important;
    }
}

@media (max-width: 900px) {
    .rh-target-main-photo-wrap {
        width: 100% !important;
        height: 260px !important;
        min-height: 260px !important;
        max-height: 260px !important;
        overflow: hidden !important;
        border-radius: 18px !important;
    }

    .rh-target-main-photo-wrap .rh-target-main-photo {
        width: 100% !important;
        height: 100% !important;
        display: block !important;
        overflow: hidden !important;
    }

    .rh-target-main-photo-wrap .rh-target-main-photo img {
        width: 100% !important;
        height: 100% !important;
        display: block !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}

/* RepairHit services section edge fix:
   keep service cards from touching left/right screen edges */
.rh-gbiz-services-panel,
.rh-public-services-section,
.rh-business-services-section,
.business-services-section,
section[id*="services"],
div[id*="services"] {
    box-sizing: border-box !important;
}

/* Mobile/tablet padding */
@media (max-width: 900px) {
    .rh-gbiz-services-panel,
    .rh-public-services-section,
    .rh-business-services-section,
    .business-services-section,
    section[id*="services"],
    div[id*="services"] {
        margin-left: 12px !important;
        margin-right: 12px !important;
        width: auto !important;
        max-width: calc(100% - 24px) !important;
    }

    .rh-gbiz-services-panel *,
    .rh-public-services-section *,
    .rh-business-services-section *,
    .business-services-section * {
        box-sizing: border-box !important;
    }
}

/* Small phone: slightly tighter but still not touching edges */
@media (max-width: 520px) {
    .rh-gbiz-services-panel,
    .rh-public-services-section,
    .rh-business-services-section,
    .business-services-section,
    section[id*="services"],
    div[id*="services"] {
        margin-left: 10px !important;
        margin-right: 10px !important;
        max-width: calc(100% - 20px) !important;
    }
}
