/* ---- css/template.css ---- */
.Global_Book_Service, .Global_phone_number1, .RedButton {
    color: #fff;
    border-radius: 4px;
    text-transform: uppercase;
    cursor: pointer;
    font-weight: 700
}


/*Blue - #00f */
/*Orange - #f88f19 */
/*Brick - #BC4A3C  */
/*Brick:hover - #8E1C0E  */


#navbarMenu, .font-Roboto-Bold, .navbaTop {
    
}
.Top-Main-Block .ul-main li, .Top-Main-Block .ul-main-normal li, .global-ul-main li {
    text-indent: -16px;
    margin: 14px 0;
    padding-left: 40px
}
.List-Of-Areas li, .global-ul-main, .ul-list-of-advantages {
    list-style-type: none
}
.Book-Page.Contacts .TechnicianDetails .Row a:link, body {
    color: #333
}

@font-face {
    font-family: "Roboto-Black";
    font-style: normal;
    src: local("Roboto-Black"), url("/fonts/Roboto-Black.woff2") format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Roboto-Bold";
    font-style: normal;
    src: local("Roboto-Bold"), url("/fonts/Roboto-Bold.woff2") format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Roboto-Light";
    font-style: normal;
    src: local("Roboto-Light"), url("/fonts/Roboto-Light.woff2") format("woff2");
    font-display: swap;
}

@font-face {
    font-family: "Roboto-Regular";
    font-style: normal;
    src: local("Roboto-Regular"), url("/fonts/Roboto-Regular.woff2") format("woff2");
    font-display: swap;
}


body {
    margin: 0;
    font-family: "Roboto-Regular", sans-serif;
    font-size: 14px;
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    text-align: var(--bs-body-text-align);
    background-color: var(--bs-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
    background: url(/files/row_bg.png) #e8e8e8
}
h1, h2, h3 {
    font-weight: 700 !important
}
.MainWidth {
    max-width: 1140px;
    margin: 0 auto;
    background-color: #fff
}
#List_Advantages, #navbarMenu .RightParallelogramm, .Top-Promo-Block, .navbaTop {
    background-color: #BC4A3C;
}
.MobileMainTopLogo {
    max-width: 80px !important;
    padding: 8px 0
}
:root {
    --primary: #1e60aa;
    --secondary: #ff4917;
    --light: #edf1fc;
    --dark: #17224d
}
.table-data {
    display: table;
    width: 100%;
    border-spacing: 0px
}
.table-data .cell {
    display: table-cell
}
.table-data .row {
    display: table-row
}
.AlignRight {
    text-align: right;
    margin-left: auto
}
.AlignLeft {
    text-align: left;
    margin-left: auto
}
#navbarMenu, .navbaTop {
    margin: 0 auto;
    padding: 0
}
.Global_Book_Service, .Global_phone_number1 {
    padding: 8px 12px;
    display: inline-block
}
.navbaTop .Item {
    margin: 0 8px;
    display: inline-block
}
#navbarCollapse .dropdown-menu a:active, .navbaTop .Item a {
    color: #fff
}
.font-Roboto-Black {
    font-family: Roboto-Black
}
.font-Roboto-Light {
    font-family: Roboto-Light
}
.font-Roboto-Bold {
    font-family: "Roboto-Bold";
}
.Global_Book_Service, .Global_phone_number1, .RedButton, .font-Roboto-Regular {
    font-family: Roboto-Regular
}
.ChangeOpacity, .ChangeOpacity_09 {
    opacity: 1;
    transition: opacity .5s ease-out;
    -moz-transition: opacity .5s ease-out;
    -webkit-transition: opacity .5s ease-out;
    -o-transition: opacity .5s ease-out
}
.ChangeOpacity:hover {
    opacity: .7
}
.ChangeOpacity_09:hover {
    opacity: .8
}
.Top-Promo-Block {
    margin: 0 auto;
    text-align: center;
    font-size: 18px;
    font-weight: 700
}
#navbarMenu .Top_AddressBlock {
    text-align: right;
}
#navbarMenu .Top_AddressBlock .Item {
    margin: 0 8px;
    display: inline-block;
    padding: 6px 4px
}
#navbarMenu .Top_AddressBlock a, .List-Of-Areas a, .Sub-Item-link-Global {
    text-decoration: none
}
#navbarMenu .Top_AddressBlock a:hover, .List-Of-Areas a:hover, .footer .botton-links:hover {
    text-decoration: underline
}
#navbarMenu .Top_AddressBlock i {
    margin-right: 2px
}
#navbarMenu .Top_AddressBlock .Item.phone_number {
    color: #ff4917;
    font-family: Roboto-Regular;
    font-weight: 700
}
#navbarMenu .Top_AddressBlock .Item.phone_number a {
    color: #ff4917;
    font-size: 18px;
    text-decoration: none
}
#navbarMenu .Details {
    padding: 6px 0 2px 4px;
    color: #fff;
    display: inline-block;
    float: left
}
.Global_phone_number1 {
    margin-right: 4px;
    font-size: 14px;
    background-color: #ff4917
}
.GlobalClearLink, .Global_Book_Service a, .Global_phone_number1 a, .RedButton a, .RedButton a:hover, .footer .Location-block a, .footer .h4_link {
    color: #fff;
    text-decoration: none
}
.Global_Book_Service .bi-wrench-adjustable::before, .Global_phone_number1 .bi-telephone-fill::before {
    margin-right: 4px
}
.Global_Book_Service {
    font-size: 14px;
    background-color: #0d6efd
}
.RedButton {
    display: inline-block;
    font-size: 14px;
    background-color: #BC4A3C;
    padding: 1rem 16px; text-align:center; text-decoration:none;
}
.RedButton:hover {
    cursor:pointer;
}
.btn {  }
.btn:hover { cursor:pointer; }
.GlobalContentPadding { padding: 20px 40px;}
.GlobalContentPadding2 { padding: 2px 40px; }
.GlobalPaddingLeft { padding-left: 40px !important; line-height: 160%; }
.GlobalPaddingLeft h2 { padding: 4px 0; margin:4px 0; }
.GlobalPaddingRight { padding-right: 40px !important; line-height: 160%; }
.GlobalPaddingRight h2 { padding: 4px 0; margin: 4px 0; }
.global-main-page-table {
    width: 100%;
    border-spacing: 0px;
}
.global-main-page-table th {
    border: 1px solid #ae0e0e;
    background-color: #DD1C1C;
    color: #fff;
}
.global-main-page-table td {
    border: 1px solid #ebebeb;
}
.global-main-page-table .alternative-color {
    background-color: #f6f6f6;
}
.global-main-page-table tr:nth-child(odd) {
    background-color: #EDEDED;
    color: #000;
}

.GlobalTextJustify {
        text-align: justify
    }
.GlobalNumberList li::marker {
    font-size: 18px
}
#navbarMenu .Dicount-Image {
    width: 94px;
    cursor: pointer
}
#navbarMenu .BlockMenu {
    padding-top: 20px
}
#navbarMenu .menu_item { display: inline-block; position: relative; font-family: "Roboto-Bold"; }
#DefDetailsAreas, #MenuNavigate .Popup-submenu, #MobileContacts, #book_state_loading, #navbarCollapse, #navbarCollapse .cell5, #navbarMenu .Popup-submenu, #state_loading, .back-to-top {
    display: none
}
#navbarMenu .menu-phone-number {
    font-size: 18px;
    color: #c5292c;
    text-decoration: none
}
#navbarMenu .menu_item > .ItemMenu {
    text-transform: uppercase;
    padding: 4px 14px;
    cursor: pointer
}
#MenuNavigate .Sub-Item-link:hover, #MenuNavigate .menu_item > .ItemMenu:hover, #navbarCollapse .dropdown-menu a:hover, #navbarMenu .Sub-Item-link:hover, #navbarMenu .menu_item > .ItemMenu:hover, .footer .btn.btn-social:hover {
    color: #f88f19;
}
#navbarMenu .Popup-submenu .Sub-Item {
    border-bottom: 1px solid #ebebeb;
    text-align: left;
    text-decoration: none;
    color: #2e2e2e;
    display: block;
    padding: 6px 8px;
    font-size: 14px
}
#MenuNavigate .Popup-submenu .Sub-Item:hover, #navbarMenu .Popup-submenu .Sub-Item:hover {
    background-color: #e9ecef; color:#f88f19;
}
#MenuNavigate .Popup-submenu .Sub-Item:active, #navbarMenu .Popup-submenu .Sub-Item:active {
    background-color: #BC4A3C; color: #fff;
}
#navbarMenu .menu_item:hover .Popup-submenu {
    position: absolute;
    width: 240px;
    padding: 12px 0 4px;
    left: -20px;
    z-index: 5;
    background-color: #fff;
    box-shadow: 0 8px 10px rgb(0 0 0 / 30%);
    display: block
}
#navbarCollapse .appliance-icon, #navbarMenu .Popup-submenu .appliance-icon {
    width: 24px;
    vertical-align: middle;
    padding-bottom: 2px;
    margin: 0 10px 0 8px
}
#navbarCollapse .area-icon, #navbarMenu .Popup-submenu .area-icon {
    width: 20px;
    vertical-align: middle;
    padding-bottom: 2px;
    margin: 0 6px 0 4px
}
#MenuNavigate .Sub-Item-link, #navbarMenu .Sub-Item-link {
    text-decoration: none;
    color: #2e2e2e
}
#MenuNavigate .Popup-submenu .Brand_Padding, #navbarMenu .Popup-submenu .Brand_Padding {
    padding-left: 14px
}
#MenuNavigate .Popup-submenu .LastElement, #navbarMenu .Popup-submenu .LastElement {
    text-align: right
}
#navbarMenu .fa-phone-alt::before, #navbarMenu .fa-wrench::before {
    margin-right: 6px;
    font-size: 16px
}
.HomeStarLogo {
    width: 90px;
    margin-top: 10px
}
.back-to-top {
    position: fixed;
    right: 45px;
    bottom: 45px;
    z-index: 99
}
.footer .btn.btn-social {
    margin-right: 5px;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--light);
    border: 1px solid #fff;
    border-radius: 35px;
    transition: .3s
}
.footer .btn.btn-link {
    display: block;
    margin-bottom: 5px;
    padding: 0;
    text-align: left;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    text-transform: capitalize;
    transition: .3s;
    text-decoration: none
}
.footer .btn.btn-link::before {
    margin-right: 4px;
    vertical-align: middle
}
.footer .btn.btn-link:hover {
    letter-spacing: 1px;
    box-shadow: none
}
.footer .copyright {
    padding: 25px 0;
    font-size: 15px;
    border-top: 1px solid rgba(256,256,256,.1)
}
.footer .copyright a {
    color: var(--light);
    margin: 8px 0
}
.footer .bi-facebook::before {
    font-size: 18px;
    margin-top: 4px
}
.footer .bi-instagram::before {
    font-size: 18px;
    margin: 4px 0 0 2px
}
.footer .botton-links {
    margin: 0 8px;
    text-decoration: none
}
.footer .BlockBrand, .footer .BlockCity {
    margin: 4px 14px 2px 0;
    font-size: 12px;
    display: inline-block
}
.footer ul {
    padding: 0
}
.footer .BlockCity {
    width: 40%;
    border-bottom: 1px dotted #9b9b9b
}
.footer .BlockBrand a, .footer .BlockCity a {
    color: #fff;
    text-decoration: none;
    cursor: pointer
}
.footer .BlockCity a:hover {
    color: #ed1c24
}
.footer .BlockBrand {
    vertical-align: top;
    width: 15%
}
.footer .BlockBrand a:hover {
    color: #64a3ff
}
.footer .ul-brands {
    max-height: 420px;
    overflow: auto
}
.footer .ul-brands .item {
    padding: 0 0 4px 14px
}
.footer .Location-block {
    display: inline-block;
    padding: 2px 4px
}
.footer .Location-block a:hover, .footer .h4_link:hover {
    text-decoration: underline;
    cursor: pointer
}
.footer .AddressSplit {
    border-right: 1px solid #cdcdcd;
    padding: 0 14px
}
.footer .Location-block:last-child {
    margin-right: 34px
}
.Top-Main-Block .bi-check-square-fill::before, .global-ul-main .bi-check-square-fill::before {
    color: #ed1c24;
    margin-right: 8px;
    font-size: 18px
}
#navbarCollapse .dropdown-item.menu-padding {
    padding: 10px 30px 10px 4px
}
#navbarCollapse .dropdown-item.area-padding {
    padding: 6px 30px 6px 4px
}
#navbarCollapse .dropdown-menu {
    padding-bottom: 0
}
#section_001 .image_bg, #section_dishwasher .image_bg, #section_dryer .image_bg, #section_freezer .image_bg, #section_fridge .image_bg, #section_oven .image_bg, #section_stove .image_bg, #section_washer .image_bg {
    min-height: 440px;
    padding: 30px 0;
    background-position: top
}
#navbarCollapse .RightPhoneBlock {
    margin-right: 1rem
}
#navbarCollapse .cell {
    vertical-align: middle
}
#navbarCollapse .cell5 img {
    width: 140px
}
.MainTopLogo {
    width: 70px;
    vertical-align: middle;
    margin: 2px 0 4px
}
.Name-Logo {
    display: inline-block;
    vertical-align: middle;
    font-size: 24px
}
.MainContentBlock .brand-block {
    width: 12vw;
    max-width: 100px;
    height: 6vh;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    margin: 8px
}
.MainContentBlock .brand-block:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%
}
.MainContentBlock .brand-block img {
    max-width: 100%;
    max-height: 100%;
    vertical-align: middle;
    -webkit-transition: .4s;
    transition: .4s
}
.zoom-effect-container:hover img {
    -webkit-transform: scale(1.06);
    transform: scale(1.06)
}
.bgWhite {
    background-color: #fff
}
.Appliances-Block, .GlobalCenter, .RatingBLock {
    text-align: center
}
h1 {
    margin: 2rem 0 1rem
}
h2 {
    margin: 1.5rem 0 .8rem
}
h3 {
    margin: 1.3rem 0 .6rem
}
h4 {
    margin: 1.3rem 0 .75rem
}
h5 {
    margin: 1.1rem 0 .6rem
}
.container img {
    max-width: 100%
}
.RatingBLock img {
    width: 46px !important;
    margin: 0 auto
}
.HeadClearBoth {
    clear: both
}
.MainContentBlock {
    margin: 20px 0
}
.MainContentBlock .image-block-float-right {
    float: right;
    padding: 0 20px;
    text-align: center
}
.MainContentBlock .image-block-float-left {
    float: left;
    padding: 0 20px;
    text-align: center
}
.Global-image-block-float-right {
    float: right;
    padding: 0 20px;
    text-align: center
}
.MainContentBlock .image-block-float-left {
    float: left;
    padding: 0 20px;
    text-align: center
}
.Global-image-block-float-left {
    float: left;
    padding: 0 20px;
    text-align: center
}
.txt_in_all_incorr {
    background-color: #ffb8b8 !important
}
.txt_in_all_incorr:focus {
    -moz-box-shadow: 0 0 2px #00a0ff;
    -webkit-box-shadow: 0 0 2px #00a0ff;
    box-shadow: 0 0 2px #00a0ff;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px
}
.MainPopup {
    width: 500px;
    height: 360px;
    top: 50%;
    left: 50%;
    position: fixed;
    margin-left: -250px;
    margin-top: -180px;
    background-color: #fff;
    z-index: 11;
    padding: 8px;
    border: 3px solid #f2f2f2;
    display: none
}
.BackFon, .FonPopup {
    position: fixed;
    z-index: 10;
    background-color: #000;
    padding-top: 0;
    top: 0;
    display: none;
    vertical-align: middle;
    height: 100%;
    width: 100%
}
.FonPopup {
    left: 0;
    -moz-opacity: 0.8;
    opacity: .8
}
.BackFon {
    right: 0;
    -moz-opacity: 0.64;
    opacity: .64
}
.Parallelogram {
    -webkit-transform: skew(-20deg);
    -moz-transform: skew(-20deg);
    -o-transform: skew(-20deg)
}
#section_001 .image_bg { background-image: url(/image/?id=512&show=thumbnail); }
#section_about.image_bg[style*="background-image"] {
    min-height: 440px;
    padding: 30px 0;
    background-position: top;
}
#section_fridge .image_bg {
    background-image: url(/files/bg/fridge_bg.webp)
}
#section_dishwasher .image_bg {
    background-image: url(/files/bg/dishwasher_bg.webp)
}
#section_washer .image_bg {
    background-image: url(/files/bg/washer_bg.webp)
}
#section_dryer .image_bg {
    background-image: url(/files/bg/dryer_bg.webp)
}
#section_stove .image_bg {
    background-image: url(/files/bg/stove_bg.webp)
}
#section_oven .image_bg {
    background-image: url(/files/bg/oven_bg.webp)
}
#section_freezer .image_bg {
    background-image: url(/files/bg/freezer_bg.webp)
}
.fill {
    height: 100%;
    left: 0;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute;
    right: 0;
    top: 0
}
.bg-fill {
    background-position: 50% 50%;
    background-repeat: no-repeat !important;
    background-size: cover !important
}
#MenuNavigate {
    display: none;
    padding: 20px 10px;
    overflow: auto
}
#MenuNavigate .menu_item {
    position: relative;
    margin: 6px 0
}
#MenuNavigate .menu_item > .ItemMenu {
    text-transform: uppercase;
    font-size: 16px;
    padding: 4px;
    cursor: pointer; font-weight:bold;
}
#MenuNavigate .Popup-submenu .Sub-Item {
    border-bottom: 1px solid #ebebeb;
    text-align: left;
    text-decoration: none;
    color: #2e2e2e;
    display: block;
    padding: 6px 8px;
    font-size: 15px
}
#MenuNavigate .Popup-submenu .appliance-icon {
    width: 26px;
    vertical-align: middle;
    padding-bottom: 2px;
    margin: 0 10px 0 8px
}
#MenuNavigate .Popup-submenu .brand-icon {
    width: 46px;
    vertical-align: middle;
    padding-bottom: 2px;
    margin: 0 10px 0 8px
}
#MenuNavigate .Popup-submenu .area-icon {
    width: 22px;
    vertical-align: middle;
    padding-bottom: 2px;
    margin: 0 6px 0 4px
}
.BodyFix {
    overflow: hidden
}
#MobileMenuControll .bi-list::before {
    width: 40px;
    font-size: 36px
}
#MobileMenuControll .bi-x-lg::before {
    width: 40px;
    font-size: 30px
}
.Top-Main-Block {
    margin: 0
}
.Top-Main-Block h1 {
    margin: 0;
    text-transform: uppercase
}
.Top-Main-Block .Right-Image-Section {
    text-align: center;
    margin: 0 auto;
    max-width: 500px
}
.Top-Main-Block .ul-main, .Top-Main-Block .ul-main-normal {
    list-style-type: none;
    font-size: 16px;
    padding: 0;
    margin: 22px 0
}
.Top-Main-Block .ul-main li {
    font-weight: 700
}
.Top-Main-Block .left-block {
    padding-left: 40px
}
.global-ul-main {
    padding: 0;
    margin: 22px 0
}
.global-ul-main .bi-check-square-fill::before {
    vertical-align: bottom
}
.Descriton-Service {
    color: #bc4a3c;
    margin: 12px 0 20px;
    font-size: 16px
}
.Right-Image-Section {
    max-width: 50rem
}
.Right-Image-Section::before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    left: -1px;
    bottom: -1px;
    border-right: 1.1em solid transparent;
    border-bottom: .07em solid #fff
}
.ul-list-of-advantages, .ul-list-of-advantages li {
    margin: 6px 0
}
#List_Advantages {
    text-align: center;
    padding: 2rem 0;
    color: #fff
}
#List_Advantages h4 {
    margin: 0 0 6px;
    font-size: 18px
}
#List_Advantages .Item {
    width: 200px;
    display: inline-block;
    margin: 6px 4px;
    vertical-align: top
}
#List_Advantages .LeftCell {
    width: 80px;
    vertical-align: middle;
    text-align: center
}
#List_Advantages .RightCell {
    text-align: left;
    font-size: 16px;
    vertical-align: middle
}
#List_Advantages .bi-briefcase::before, #List_Advantages .bi-clock-history::before, #List_Advantages .bi-hand-thumbs-up::before, #List_Advantages .bi-person-vcard::before, #List_Advantages .bi-shield-check::before {
    font-size: 50px;
    color: #fff
}
.WhyChose-UL {
    list-style: none;
    font-size: 18px
}
.WhyChose .bi-briefcase-fill::before, .WhyChose .bi-hand-thumbs-up-fill::before, .WhyChose .bi-person-vcard-fill::before, .WhyChose .bi-shield-check::before {
    color: #0d6efd;
    vertical-align: text-bottom
}
.setion-row {
    padding: 1.5rem 0
}
.setion-row:nth-child(odd) {
    color: #000;
    padding: 1.5rem 0
}
.section-gray-row {
    padding-top: 14px;
    color: #7b7b7b;
    border: 1px solid #dcdcdc;
    background-color: #f0f0f0
}
.Appliances-Block .Item {
    border: 1px solid #cdcdcd;
    position: relative;
    text-decoration: none;
    vertical-align: top;
    display: inline-block;
    margin: 14px 8px;
    background-color: #ffff;
    border-radius: 4px
}
.Appliances-Block .Item:hover {
    -moz-box-shadow: 0 0 8px #cdcdcd;
    -webkit-box-shadow: 0 0 8px #cdcdcd;
    box-shadow: 0 0 8px #b9b9b9;
}
.Appliances-Block .Item:hover .Description-place {
    background-color: #8E1C0E;
    color: #fff;
    -moz-border-radius-bottomleft: 4px;
    -moz-border-radius-bottomright: 4px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px
}
.Appliances-Block .Icon-place {
    background-color: #fff;
    text-align: center;
    width: 240px;
    height: 160px;
    display: table-cell;
    vertical-align: middle;
}
.Appliances-Block .Icon-place img {
    max-width: 100%;
    max-height: 100%
}
.Appliances-Block .Description-place {
    text-align: center;
    padding: 14px 0 30px 4px;
    line-height: 16px;
    color: #000;
    font-weight: 700;
    font-size: 16px;
    height: 30px;
    text-decoration: none; background-color: #BC4A3C; color:#fff;
}
.Appliances-Block .Link-place {
    padding-bottom: 14px
}
.Appliances-Block .Troubles {
    font-size: 12px;
    color: #000;
    text-align: left
}
.List-Of-Areas .bi-geo-alt-fill::before {
    color: #ec0c0c;
    margin-right: 6px
}
.Def-ListOfBrands {
    margin: 30px 0
}
.Def-ListOfBrands .brand-block {
    width: 12vw;
    overflow: hidden;
    max-width: 120px;
    text-decoration: none;
    height: 60px;
    display: inline-block;
    vertical-align: middle;
    background-color: #fff;
    text-align: center;
    border: 1px solid #cdcdcd;
    border-radius: 4px;
    margin: 8px
}
.Book-Page .ItemSelect, .ParentBlockToOpen, .global-service-table .left-cell {
    background-color: #f3f3f3
}
.Def-ListOfBrands .brand-block::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 100%;
    vertical-align: middle
}
.Def-ListOfBrands .brand-block img {
    max-width: 90%;
    padding-left: 2px;
    max-height: 80%;
    vertical-align: middle;
    -webkit-transition: .4s;
    transition: .4s
}
#MainPopup_Form0 #Result_Block {
    padding: 30px
}
#MainPopup_Form0 #Result_Block .header-text {
    text-align: center;
    font-size: 26px
}
#MainPopup_Form0 .row-data {
    margin: 12px 0;
    text-align: center
}
#MainPopup_Form0 #resultvalue {
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    color: #12aa06
}
.showLoader {
    display: inline-block !important
}
.Book-Page .ItemSelect {
    display: inline-block;
    border: 1px solid #cdcdcd;
    border-radius: 4px
}
.Book-Page .row-data {
    padding: 16px 0;
    border-bottom: 1px solid #ebebeb
}
.Book-Page.Contacts .TechnicianDetails {
    font-size: 18px;
    margin-top: 30px
}
.Book-Page.Contacts .TechnicianDetails .Row {
    padding: 6px 0
}
.Book-Page.Contacts .bi-building-fill-check::before, .Book-Page.Contacts .bi-clock-fill::before, .Book-Page.Contacts .bi-envelope-at-fill::before, .Book-Page.Contacts .bi-telephone-fill::before {
    color: #0d6efd
}
.Global_call_Us {
    text-decoration: underline;
    font-weight: 700
}
.bi-caret-down-fill::before, .bi-caret-right-fill::before {
    font-size: 18px
}
.bi-caret-down-fill, .bi-caret-right-fill {
    margin-left: 8px
}
.ParentBlockToOpen {
    cursor: pointer;
    padding: 6px 10px;
    box-shadow: 0 4px 10px rgb(0 0 0 / 10%)
}
.ParentBlockToOpen .TopHeader {
    font-size: 1.5rem
}
.ParentBlockToOpen h2 {
    font-size: 1.2rem
}
.Parent-GlobalRight-Image {
    margin-left: 16px;
    text-align: center;
    float: right
}
.GlobalRight-Image {
    max-width: 240px;
    max-height: 500px
}
.global-service-table {
    width: 100%
}
.global-service-table td {
    border: 1px solid #ebebeb;
    padding: 6px 9px
}
.article h1 {
    font-size: 22px;
}
.article .Descriton-Service {
    font-size: 22px
}
.FAQ_Header {
    border: 1px solid #dfdfdf;
    font-size: 16px;
    position: relative;
    cursor: pointer;
    margin: 10px 0;
    padding: 8px 34px 8px 16px;
    border-radius: 4px
}
.FAQ_Header:hover {
    background-color: #f5f5f5
}
.FAQ_Header-Details {
    padding: 4px 22px;
    display: none
}
.FAQ_Header .bi-arrow-right-circle-fill {
    color: #0d6efd;
    font-size: 20px;
    position: absolute;
    top: 6px;
    right: 6px
}
.red-block { padding:4px 12px; text-transform:uppercase; text-align:center; background-color:#c5292c; color:#fff; margin-top:30px; }
.content-right-side { }
.content-right-side .row { margin:14px 0; }
#FullBook {  }
#FullBook .row-data{ margin:14px 0; }
.coupon-image { margin:6px 0; max-width:260px !important; }

.blink_me { animation: blinker 2s linear infinite; }
#TopImg { display:none; }
.DivPhoneT 
{
    position:fixed; right:10%; bottom:5%; border:1px solid white; background-color:#BC4A3C;
    width:64px; height:64px; text-align:center; vertical-align:middle; 
    -moz-border-radius:50px; -webkit-border-radius:50px; border-radius:50px;
    -moz-box-shadow: 0px 0px 18px #BC4A3C;
    -webkit-box-shadow: 0px 0px 18px #BC4A3C;
    box-shadow: 0px 0px 18px #BC4A3C;
    -webkit-animation: pulsate 3s ease-out;
    -webkit-animation-iteration-count: infinite; 
    -moz-animation: pulsate 3s ease-out;
    -moz-animation-iteration-count:infinite;
}
.DivPhoneT:hover {
    -webkit-animation-play-state: paused; 
    animation-play-state: paused;
    cursor:pointer;
    -webkit-animation-iteration-count: 0; -webkit-animation-iteration-count: 1; -webkit-animation: ShowImage 0.6s; -moz-animation: ShowImage 0.6s;
    -webkit-animation:RotateImag 1.2s ease-in-out 0.2s infinite alternate;
    -moz-animation:RotateImag 1.2s ease-in-out 0.2s infinite alternate;
    animation:RotateImag 1.2s ease-in-out 0.2s infinite alternate;
}
.GlobalSocialIcons { margin-top:16px; }
.GlobalSocialIcons img { width:32px; margin-right:6px; }
.GlobalSocialIcons a { text-decoration:none; }

.BreadcrumbBar { background-color:#F7F5F3; border-bottom:1px solid #EBE7E3; padding:10px 0; }
.BreadcrumbList { list-style:none; display:flex; flex-wrap:wrap; align-items:center; margin:0; padding:0; font-size:13px; }
.BreadcrumbItem { display:flex; align-items:center; }
.BreadcrumbList a { color:#6b6b6b; text-decoration:none; }
.BreadcrumbList a:hover { color:#BC4A3C; text-decoration:underline; }
.BreadcrumbSep { margin:0 8px; color:#b5b0aa; }
.BreadcrumbCurrent { color:#BC4A3C; font-weight:600; }
@media (max-width:576px) { .BreadcrumbList { font-size:12px; } .BreadcrumbSep { margin:0 6px; } }

.MainPhoneNumber {
    background-color: #BC4A3C !important;
    font-weight: 600;
    font-style: italic;
    text-decoration: underline;
    line-height: 38px;
    word-spacing: 4px;
    padding: 4px 16px;
    text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.3);
    fill: #FFFFFF;
    color: #FFFFFF !important;
    border-radius: 6px;
    box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.5);
}
.MainPhoneNumber .menu-phone-number { color:#fff !important; }
.bell {
    -webkit-animation: ring 4s .7s ease-in-out infinite;
    -webkit-transform-origin: 50% 4px;
    -moz-animation: ring 4s .7s ease-in-out infinite;
    -moz-transform-origin: 50% 4px;
    animation: ring 4s .7s ease-in-out infinite;
    transform-origin: 50% 4px;
}

.block_h1 {
    margin: 0 0 6px;
    font-weight: bold;
    font-size: 24px;
}
.block_h2 {
    margin: 0 0 6px;
    font-weight: bold;
    font-size: 22px;
}
.block_h3 {
    margin: 0 0 6px;
    font-weight: bold;
    font-size: 20px;
}
.block_h4 {
    margin: 0 0 6px;
    font-weight: bold;
    font-size: 18px;
}
.block_h5 {
    margin: 0 0 6px;
    font-weight: bold;
    font-size: 17px;
}

.global-show-only-for-phone { visibility:hidden; display:none; }
.global-show-only-for-PC { visibility:visible; display:block; }
.gold-button {
    box-shadow: 0px 1px 0px 0px #fff6af;
    background: linear-gradient(to bottom, #ffec64 5%, #ffab23 100%);
    background-color: #ffec64;
    border-radius: 6px;
    border: 1px solid #ffaa22;
    display: inline-block;
    cursor: pointer;
    color: #333333;
    font-family: Arial;
    font-size: 15px;
    font-weight: bold;
    padding: 6px 14px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #ffee66;
}
.gold-button:hover { background: linear-gradient(to bottom, #ffab23 5%, #ffec64 100%); background-color: #ffab23; }
.gold-button:active { position: relative; top: 1px; }
.container {
    text-align: left !important;
}
.img-thumbsup {
    max-width: 200px;
    max-height: 210px;
}
.text-justify p { text-align:justify; }
.ul-list-of-errors {
    font-size: 14px;
    line-height: 20px;
}




@media only screen and (min-width:1001px) and (max-width:1200px) {
    .footer .BlockBrand {
        width: 18%
    }
}

@media only screen and (max-width:1060px) {
    #List_Advantages .Item {
        width: 30%
    }
}

@media only screen and (max-width:1000px) {
    .footer .BlockCity {
        width: 40%
    }

    .footer .BlockBrand {
        width: 20%
    }
}

@media only screen and (max-width:940px) {
    #navbarCollapse .book_service, #navbarCollapse .phone_number1 {
        font-weight: 700;
        cursor: pointer;
        display: inline-block;
        text-transform: uppercase;
        border-radius: 4px;
        padding: 8px 12px;
        font-size: 14px
    }

    #navbarCollapse {
        display: block
    }

    #navbarMenu {
        display: none
    }

    #navbarCollapse .phone_number {
        font-weight: 700;
        color: #ff4917;
        text-align: center;
        vertical-align: middle
    }

    #navbarCollapse .phone_number a {
        color: #ff4917;
        font-size: 18px;
        text-decoration: none
    }

    #navbarCollapse .phone_number1 {
        font-family: Roboto-Regular;
        margin-right: 4px;
        color: #fff;
        background-color: #ff4917;
        margin-left: 10px
    }

    #navbarCollapse .book_service a, #navbarCollapse .phone_number1 a {
        color: #fff;
        text-decoration: none
    }

    #navbarCollapse .bi-telephone-fill::before, #navbarCollapse .fa-wrench::before, #navbarCollapse .phone_number1 .bi-telephone-fill::before {
        margin-right: 6px
    }

    #navbarCollapse .book_service {
        color: #fff;
        background-color: #0d6efd;
        vertical-align: middle
    }

    #navbarCollapse .fa-phone-alt::before {
        margin-right: 6px;
        font-size: 14px
    }

    #navbarCollapse .fa-bars, #navbarCollapse .fa-times {
        margin: 0 6px 0 0;
        vertical-align: middle
    }

    #navbarCollapse .fa-bars::before, #navbarCollapse .fa-times::before {
        font-size: 30px
    }

    #navbarCollapse .cell0 {
        width: 15%
    }

    #navbarCollapse .cell1, #navbarCollapse .cell2 {
        text-align: center
    }

    #navbarCollapse .cell3 {
        width: 10%
    }
}

@media only screen and (max-width:800px) {
    #DefDetailsAreas {
        display: block
    }

    .area-block1, .area-block2, .area-block3 {
        display: none
    }

    .Def-ListOfBrands .brand-block {
        max-height: 160px;
        height: 80px;
        max-width: unset;
        width: 28%
    }

    .footer .BlockCity {
        width: 44%
    }

    .footer .BlockBrand {
        width: 22%
    }

    #List_Advantages .Item {
        width: 60%
    }
}

@media only screen and (max-width:767px) {
    .Parent-GlobalRight-Image {
        float: none;
        margin: 8px auto
    }
    .Parent-GlobalRight-Image img {
        max-width: 100%
    }
    .footer .BlockBrand {
        width: 30%
    }
    .GlobalPaddingLeft {
        padding-left: 0;
        line-height: 140%
    }
    .GlobalPaddingRight {
        padding-right: 0 !important;
        line-height: 140%
    }
    .global-show-only-for-phone { visibility:visible; display:block; }
    .global-show-only-for-PC { visibility:hidden; display:none; }
    #section_about.image_bg {
        background-image: none !important; padding:10px 0 !important;
    }
    #section_about.image_bg[style*="background-image"] {
        min-height: 0 !important; padding:10px 0 !important;
    }
}
@media only screen and (max-width:700px) {
    .GlobalPaddingLeft {
        padding-left: 20px !important;
    }
}
@media only screen and (max-width:600px) {
    .MainContentBlock .image-block-float-left, .MainContentBlock .image-block-float-right {
        float: none !important;
        text-align: center;
        padding: 0
    }

    .MainPopup {
        width: 90vw;
        margin-left: -45vw
    }

    #MainPopup_Form0 #Result_Block .header-text {
        font-size: 20px
    }

    .footer .BlockBrand {
        width: 44%
    }

    .Top-Main-Block .left-block {
        padding-left: 20px
    }

    #navbarCollapse .container {
        padding: 0 20px !important
    }

    #List_Advantages .Item {
        width: 80%
    }

    #section_001 .image_bg, #section_dishwasher .image_bg, #section_dryer .image_bg, #section_freezer .image_bg, #section_fridge .image_bg, #section_oven .image_bg, #section_stove .image_bg, #section_washer .image_bg {
        background-image: none
    }
    
    .global-hide-toll-element { height:300px; overflow:auto; border-top: 1px solid #dbdbdb; border-bottom: 1px solid #dbdbdb; }
}
@media only screen and (max-width:500px) {
    #MobileContacts .cell-0, #MobileContacts .cell-1, #MobileContacts .phone_number {
        text-align: center;
        vertical-align: middle
    }

    #navbarCollapse .container-fluid {
        padding: 0 !important
    }

    #navbarCollapse .cell1, #navbarCollapse .cell2 {
        display: none
    }

    #navbarCollapse .cell5 {
        display: table-cell;
        text-align: center
    }

    #MobileContacts .book_service, #MobileContacts .phone_number1 {
        font-weight: 700;
        cursor: pointer;
        display: inline-block;
        text-transform: uppercase;
        font-size: 14px;
        border-radius: 4px;
        padding: 8px
    }

    #MobileContacts {
        display: block;
        padding: 4px 0 6px
    }



    #MobileContacts .phone_number {
        font-weight: 700;
        color: #ff4917
    }

    #MobileContacts .phone_number a {
        color: #ff4917;
        font-size: 18px;
        text-decoration: none
    }

    #MobileContacts .phone_number1 {
        font-family: Roboto-Regular;
        color: #fff;
        background-color: #ff4917
    }

    #MobileContacts .book_service a, #MobileContacts .phone_number1 a {
        color: #fff;
        text-decoration: none
    }

    #MobileContacts .bi-wrench-adjustable::before, #MobileContacts .phone_number1 .bi-telephone-fill::before {
        margin-right: 4px
    }

    #MobileContacts .book_service {
        color: #fff;
        background-color: #0d6efd;
        vertical-align: middle
    }

    .Def-ListOfBrands .brand-block {
        width: 42%
    }

    .footer .BlockCity {
        width: 44%
    }
    .RedButton { padding: 8px 12px; }
    .img-thumbsup {
        max-width: 44% !important;
        max-height: 170px;
    }
    .GlobalContentPadding2 {
        padding: 20px 10px;
    }
    .review-block .Item { width:98% !important; }
    body { font-size:14px; }   /* was 12px, which is the legibility floor */
    .GlobalContentPadding2 .col-md-6 { padding:0; }
    .row { margin-left:auto !important; margin-right:auto !important; }

    h1, h2, h3, h4, h5 { text-align:center; }
    .Descriton-Service {
        font-size: 18px !important;
    }
    .Top-Main-Block .left-block { padding:0px; !important; }
    .FAQ_Header { text-align:left; }
    .GlobalContentPadding {
        padding: 10px 0px;
    }
    .footer .container { padding:10px 0px !important; }
}
@media only screen and (max-width:450px) {
    .footer .BlockCity {
        width: 94%
    }
}
@media only screen and (max-width:400px) {
    #MainPopup_Form0 #Result_Block .header-text {
        font-size: 18px
    }
    .Appliances-Block .Item {
        display: block;
        margin: 14px 4px
    }
    .Appliances-Block .Icon-place {
        display: block;
        width: 100%;
        padding-top: 20px
    }
    .Appliances-Block .Description-place {
        width: 100%
    }
    .GlobalPaddingRight {
        padding-left: 0px !important;
    }
    .GlobalPaddingLeft {
        padding-left: 0px !important;
    }
}
@media only screen and (max-width:320px) {
    #MainPopup_Form0 #Result_Block .header-text {
        font-size: 16px
    }
}

.block-call-back {
    background: rgb(170, 26, 8);
    margin: 0 0 25px 25px;
    padding: 20px 0;
    border-radius: 12px; margin:14px auto !important; 
}
.review-block { text-align:left; }
.review-block .Item {
    border: 1px solid #ebebeb;
    vertical-align: top;
    height: 240px;
    border-radius: 4px;
    margin: 2px 4px;
    padding: 12px 14px;
    display: inline-block;
    width: 48%;
}
.review-block .parent-image {
    position: relative;
    font-weight: 700
}
.review-block .google-icon {
    float: right;
    width: 24px;
    margin: 6px 10px 0 0
}
.review-block .data-details {
    font-size: 12px;
    color: #626262;
    margin: 0 0 6px
}
.review-block .star-block {
    margin: 4px 0
}
.review-block .star-block .bi-star-fill {
    width: 18px
}
.review-block .review-content {
    font-size: 13px;
    margin: 2px 0;
    padding: 6px 0;
    text-align: justify;
    height: 150px;
    overflow: auto;
}


@-webkit-keyframes pulsate {
    0% { -webkit-transform: scale(0.3, 0.3); opacity: 0.0;}
    50% { opacity: 0.86;}
    100% { -webkit-transform: scale(1.0, 1.0); opacity: 0.0;}
}
@-moz-keyframes pulsate {
    0% { -webkit-transform: scale(0.3, 0.3);  opacity: 0.0; }
    50% { opacity: 0.86; }
    100% { -webkit-transform: scale(1.0, 1.0); opacity: 0.0;  }
}
@-webkit-keyframes ShowImage {
    50% { -webkit-transform: scale(0.6, 0.6); opacity: 0.8;}
    100% { -webkit-transform: scale(1.0, 1.0); opacity: 1;}
}
@-moz-keyframes ShowImage {
    50% { -webkit-transform: scale(0.6, 0.6); opacity: 0.8;}
    100% { -webkit-transform: scale(1.0, 1.0); opacity: 1;}
}
@-moz-keyframes RotateImag { 
    0%   { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    10%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    20%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    30%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    40%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    50%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    60%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    70%  { -webkit-transform: rotate(-100deg); transform:rotate(-100deg);}
    80%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); }
    90%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    100% { -webkit-transform: rotate(-100deg); transform:rotate(-100deg); } 
}
@-webkit-keyframes RotateImag { 
    0%   { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    10%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    20%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    30%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    40%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    50%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    60%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    70%  { -webkit-transform: rotate(-100deg); transform:rotate(-100deg);}
    80%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); }
    90%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    100% { -webkit-transform: rotate(-100deg); transform:rotate(-100deg); } 
}
@keyframes RotateImag {
    0%   { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    10%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    20%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    30%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    40%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    50%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    60%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    70%  { -webkit-transform: rotate(-100deg); transform:rotate(-100deg);}
    80%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); }
    90%  { -webkit-transform: rotate(0deg); transform:rotate(0deg); } 
    100% { -webkit-transform: rotate(-100deg); transform:rotate(-100deg); } 
}

@keyframes blinker {
    50% { opacity: 0; }
}
@keyframes glowing {
    0% { background-position: 0 0; }
    50% { background-position: 400% 0; }
    100% { background-position: 0 0; }
}

@-webkit-keyframes ring {
  0% { -webkit-transform: rotateZ(0); }
  1% { -webkit-transform: rotateZ(15deg); }
  3% { -webkit-transform: rotateZ(-14deg); }
  5% { -webkit-transform: rotateZ(17deg); }
  7% { -webkit-transform: rotateZ(-16deg); }
  9% { -webkit-transform: rotateZ(15deg); }
  11% { -webkit-transform: rotateZ(-14deg); }
  13% { -webkit-transform: rotateZ(13deg); }
  15% { -webkit-transform: rotateZ(-12deg); }
  17% { -webkit-transform: rotateZ(11deg); }
  19% { -webkit-transform: rotateZ(-10deg); }
  21% { -webkit-transform: rotateZ(9deg); }
  23% { -webkit-transform: rotateZ(-8deg); }
  25% { -webkit-transform: rotateZ(7deg); }
  27% { -webkit-transform: rotateZ(-6deg); }
  29% { -webkit-transform: rotateZ(5deg); }
  31% { -webkit-transform: rotateZ(-4deg); }
  33% { -webkit-transform: rotateZ(3deg); }
  35% { -webkit-transform: rotateZ(-1deg); }
  37% { -webkit-transform: rotateZ(1deg); }
  39% { -webkit-transform: rotateZ(-1deg); }
  41% { -webkit-transform: rotateZ(1deg); }

  43% { -webkit-transform: rotateZ(0); }
  100% { -webkit-transform: rotateZ(0); }
}
@-moz-keyframes ring {
  0% { -moz-transform: rotate(0); }
  1% { -moz-transform: rotate(15deg); }
  3% { -moz-transform: rotate(-14deg); }
  5% { -moz-transform: rotate(17deg); }
  7% { -moz-transform: rotate(-16deg); }
  9% { -moz-transform: rotate(15deg); }
  11% { -moz-transform: rotate(-14deg); }
  13% { -moz-transform: rotate(13deg); }
  15% { -moz-transform: rotate(-12deg); }
  17% { -moz-transform: rotate(11deg); }
  19% { -moz-transform: rotate(-10deg); }
  21% { -moz-transform: rotate(9deg); }
  23% { -moz-transform: rotate(-8deg); }
  25% { -moz-transform: rotate(7deg); }
  27% { -moz-transform: rotate(-6deg); }
  29% { -moz-transform: rotate(5deg); }
  31% { -moz-transform: rotate(-4deg); }
  33% { -moz-transform: rotate(3deg); }
  35% { -moz-transform: rotate(-2deg); }
  37% { -moz-transform: rotate(1deg); }
  39% { -moz-transform: rotate(-1deg); }
  41% { -moz-transform: rotate(1deg); }

  43% { -moz-transform: rotate(0); }
  100% { -moz-transform: rotate(0); }
}
@keyframes ring {
  0% { transform: rotate(0); }
  1% { transform: rotate(15deg); }
  3% { transform: rotate(-14deg); }
  5% { transform: rotate(17deg); }
  7% { transform: rotate(-16deg); }
  9% { transform: rotate(15deg); }
  11% { transform: rotate(-14deg); }
  13% { transform: rotate(13deg); }
  15% { transform: rotate(-12deg); }
  17% { transform: rotate(11deg); }
  19% { transform: rotate(-10deg); }
  21% { transform: rotate(9deg); }
  23% { transform: rotate(-8deg); }
  25% { transform: rotate(7deg); }
  27% { transform: rotate(-6deg); }
  29% { transform: rotate(5deg); }
  31% { transform: rotate(-4deg); }
  33% { transform: rotate(3deg); }
  35% { transform: rotate(-2deg); }
  37% { transform: rotate(1deg); }
  39% { transform: rotate(-1deg); }
  41% { transform: rotate(1deg); }

  43% { transform: rotate(0); }
  100% { transform: rotate(0); }
}



/* ===== Customer review cards, rendered by the [reviews] shortcode ===== */
.reviews-block { margin: 26px 0; }
.reviews-block .reviews-title { margin: 0 0 4px 0; }
.reviews-block .reviews-sub { font-size: 14px; color: #666; margin-bottom: 14px; }
.reviews-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.reviews-list .reviews-grid { grid-template-columns: minmax(0, 1fr); }
@media (max-width: 767px) { .reviews-grid { grid-template-columns: minmax(0, 1fr); } }

.review-card { border: 1px solid #e3e3e3; border-left: 4px solid #c0392b; border-radius: 6px;
    padding: 16px 18px; background: #fff; display: flex; flex-direction: column; }
.review-stars { line-height: 1; margin-bottom: 8px; }
.review-stars .star { color: #dcdcdc; font-size: 15px; letter-spacing: 1px; }
.review-stars .star.on { color: #f5b301; }
.review-text { color: #222; font-size: 15px; line-height: 24px; margin-bottom: 14px; flex: 1; }
.review-foot { display: flex; align-items: center; gap: 10px; border-top: 1px solid #eee; padding-top: 12px; }
.review-avatar { width: 32px; height: 32px; border-radius: 50%; color: #fff; font-weight: bold;
    font-size: 14px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; background: #4285f4; }
.review-avatar[data-i="1"] { background: #0f9d58; }
.review-avatar[data-i="2"] { background: #db4437; }
.review-avatar[data-i="3"] { background: #ab47bc; }
.review-avatar[data-i="4"] { background: #f4b400; }
.review-avatar[data-i="5"] { background: #00897b; }
.review-who { flex: 1; min-width: 0; }
.review-author { font-weight: bold; color: #222; font-size: 14px; line-height: 18px; }
.review-meta { color: #888; font-size: 12px; line-height: 16px; }
.review-tag { border: 1px solid #ddd; border-radius: 14px; padding: 3px 11px; font-size: 12px;
    color: #666; flex-shrink: 0; }
.review-src-link { font-size: 12px; margin-top: 8px; display: inline-block; }


/* ===== Content tables inside an article =====
   EditorDop.css is only loaded in the admin, so a .Share-table written by the
   editor rendered with no borders on the public site. These rules match the
   inline-styled tables already used on the service pages. Inline styles still
   win, so existing tables are unaffected. */
.article .Share-table, .Top-Main-Block .Share-table {
    border-collapse: collapse;
    width: 100%;
    margin: 14px 0 18px 0;
    font-size: 15px;
}
.article .Share-table th, .Top-Main-Block .Share-table th {
    background: #f4f4f4;
    border: 1px solid #dcdcdc;
    padding: 10px;
    text-align: left;
    font-weight: bold;
    color: #222;
}
.article .Share-table td, .Top-Main-Block .Share-table td {
    border: 1px solid #e5e5e5;
    padding: 8px 10px;
    text-align: left;
    line-height: 21px;
    vertical-align: top;
}
.article .Share-table tbody tr:nth-child(even) td,
.Top-Main-Block .Share-table tbody tr:nth-child(even) td { background: #fafafa; }
/* A three-column table squeezed into a 375px screen gives ~100px columns, which
   is unreadable. Below 767px the table keeps a usable minimum width and scrolls
   sideways inside its own box instead, so the page itself never scrolls. */
.table-scroll { margin: 14px 0 18px 0; }
.table-scroll > .Share-table { margin: 0; }
@media only screen and (max-width:767px) {
    .article .Share-table, .Top-Main-Block .Share-table { font-size: 14px; }
    .article .Share-table td, .Top-Main-Block .Share-table td { padding: 8px 10px; }
    .article .Share-table th, .Top-Main-Block .Share-table th { padding: 8px 10px; }
    .table-scroll {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        border: 1px solid #ececec;
        border-radius: 4px;
    }
    .table-scroll > .Share-table { min-width: 560px; border: 0; }
}


/* ===== In-content call-to-action buttons =====
   .RedButton and .Global_Book_Service each have their own padding and
   text-decoration rules declared in more than one place, so side by side they
   rendered at different heights with one of them underlined. These two share a
   single box: inline-flex with a fixed min-height means both are always the
   same size whatever the label length. */
.cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: stretch;
    margin: 24px 0 10px 0;
}
.cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 50px;
    padding: 10px 24px;
    box-sizing: border-box;
    border: 0;
    border-radius: 4px;
    font-family: Roboto-Bold, Roboto-Regular, sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none !important;
    cursor: pointer;
    transition: opacity .3s ease-out;
}
.cta-btn:hover, .cta-btn:focus, .cta-btn:active {
    text-decoration: none !important;
}
.cta-btn i { font-size: 17px; line-height: 1; }
.cta-btn-call { background-color: #BC4A3C; color: #fff !important; }
.cta-btn-book { background-color: #1B2A4A; color: #fff !important; }
.cta-btn-book:hover, .cta-btn-book:focus { background-color: #24365e; }
.cta-btn-call:hover, .cta-btn-call:focus { background-color: #a53d31; }
@media only screen and (max-width:560px) {
    .cta-row { flex-direction: column; gap: 10px; }
    .cta-btn { width: 100%; font-size: 14px; }
}


/* ===== reclaim horizontal space on phones =====
   On a 375px screen the article stacked three paddings on top of each other:
   .Top-Main-Block 12px, .GlobalContentPadding2 10px and .GlobalPaddingLeft 12px,
   leaving body copy 319px of 375 (85%). The outer 12px page gutter is the one
   worth keeping; the inner two are desktop spacing that has no job here. */
@media only screen and (max-width:560px) {
    .Top-Main-Block .GlobalContentPadding2 { padding-left: 0 !important; padding-right: 0 !important; }
    .Top-Main-Block .GlobalPaddingLeft { padding-left: 0 !important; padding-right: 0 !important; }
    .Top-Main-Block .GlobalPaddingRight { padding-left: 0 !important; padding-right: 0 !important; }
    /* default browser list indent is 40px, which is a lot of a narrow screen */
    .Top-Main-Block .article ul, .Top-Main-Block .article ol { padding-left: 22px; }
    .Top-Main-Block .GlobalContentPadding2 ul[style] { padding-left: 0 !important; }
}


/* ===== nested article container =====
   An imported page body brings its own .container.max-width.Top-Main-Block and
   the CMS view wraps it in another, so the 12px page gutter was applied twice
   and cost 24px of a 375px screen. Only the outer one should indent. */
@media only screen and (max-width:560px) {
    .Top-Main-Block .Top-Main-Block,
    .Top-Main-Block .container.max-width {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}


/* ===== hero band padding on phones =====
   The rule at line 451 puts 30px of vertical padding on the service-page hero
   bands. On a phone the background image is already switched off at 600px, so
   that padding is empty space above and below the copy. */
@media only screen and (max-width:767px) {
    #section_001 .image_bg,
    #section_dishwasher .image_bg,
    #section_dryer .image_bg,
    #section_freezer .image_bg,
    #section_fridge .image_bg,
    #section_oven .image_bg,
    #section_stove .image_bg,
    #section_washer .image_bg {
        padding: 0 !important;
    }
}


/* ===== blog listing (/blog/) ===== */
.blog-intro { font-size: 16px; line-height: 1.6; color: #555; max-width: 820px; margin: 6px 0 4px 0; }
.blog-grid + .blog-pager { margin-top: 26px; }

.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    margin: 26px 0 10px 0;
}
.blog-card {
    position: relative;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    display: flex;
    flex-direction: column;
    transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.blog-card:hover {
    box-shadow: 0 8px 22px rgba(27,42,74,.13);
    transform: translateY(-3px);
    border-color: #d8d8d8;
}
/* one link covering the card, so the whole tile is the hit area */
.blog-card-hit { position: absolute; inset: 0; z-index: 2; text-indent: -9999px; overflow: hidden; }
.blog-card-hit:focus-visible { outline: 3px solid #BC4A3C; outline-offset: -3px; }

.blog-card-img { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #f2f2f2; }
.blog-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.blog-card:hover .blog-card-img img { transform: scale(1.03); }

.blog-card-body { padding: 16px 18px 18px 18px; display: flex; flex-direction: column; flex: 1 1 auto; }
.blog-card-date {
    font-size: 12px; letter-spacing: .05em; text-transform: uppercase;
    color: #9a9a9a; margin-bottom: 8px;
}
/* clamp both text blocks so every card in a row lines up */
.blog-card-title {
    font-size: 18px; line-height: 1.35; margin: 0 0 8px 0; color: #1B2A4A;
    text-transform: none; font-weight: 700;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.blog-card:hover .blog-card-title { color: #BC4A3C; }
.blog-card-desc {
    font-size: 15px; line-height: 1.55; color: #5a5a5a; margin: 0 0 16px 0;
    flex: 1 1 auto; min-height: 3em;
    display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.blog-card-more {
    font-weight: 600; font-size: 15px; color: #BC4A3C; align-self: flex-start;
}
.blog-card-more::after { content: " \2192"; }

.blog-pager { display: flex; align-items: center; gap: 18px; margin: 30px 0; }
.blog-pager a { color: #BC4A3C; font-weight: 600; text-decoration: none; }
.blog-pager a:hover { text-decoration: underline; }
.blog-pager-state { color: #888; font-size: 14px; }

.blog-empty { text-align: center; padding: 34px 20px 44px 20px; }
.blog-empty img { max-width: 320px; height: auto; margin-bottom: 18px; }

.blog-cta {
    margin: 36px 0 12px 0;
    padding: 24px 26px;
    background: #f7f7f7;
    border-left: 5px solid #BC4A3C;
    border-radius: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    align-items: center;
    justify-content: space-between;
}
.blog-cta h2 { margin: 0 0 6px 0; font-size: 21px; text-transform: none; }
.blog-cta p { margin: 0; color: #555; }

@media only screen and (max-width: 767px) {
    .blog-intro { font-size: 15px; }
}
@media only screen and (max-width: 560px) {
    .blog-grid { grid-template-columns: 1fr; gap: 18px; }
    .blog-cta { flex-direction: column; align-items: flex-start; }
}

/* ============================================================
   MOBILE REDESIGN 2026-09 — phones only (<=767px).
   Everything below is inside a mobile media query; desktop is untouched.
   ============================================================ */

#mobTop { display: none; }
#mobCards { display: none; }

@media only screen and (max-width: 767px) {

    /* ---------- 1. Header: white, logo left, hamburger right ---------- */
    #navbarCollapse {
        background: #fff;
        border-bottom: 1px solid #e6e6e6;
        box-shadow: 0 1px 4px rgba(0,0,0,.06);
    }
    #navbarCollapse .container { padding: 6px 14px !important; }
    #navbarCollapse .cell1, #navbarCollapse .cell2 { display: none !important; }
    #navbarCollapse .cell0 { width: auto; }
    #navbarCollapse .cell3 { width: 60px; text-align: right !important; }
    .MobileMainTopLogo { max-height: 62px; width: auto; }
    #navbarCollapse .navbar-toggler {
        border: 0; background: none; padding: 4px 0; box-shadow: none;
    }
    #navbarCollapse #MobileIconMenu { font-size: 34px; color: #222; line-height: 1; }

    /* ---------- 2. The two big call-to-action buttons ---------- */
    #mobTop { display: block; background: #fff; padding: 8px 12px 0 12px; }

    .mobCta {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        min-height: 54px;
        margin-bottom: 9px;
        padding: 12px 14px;
        border-radius: 8px;
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 700;
        font-size: 19px;
        line-height: 1.15;
        letter-spacing: .2px;
        text-transform: uppercase;
        text-decoration: none !important;
        color: #fff !important;
        box-shadow: 0 2px 5px rgba(0,0,0,.22);
        -webkit-tap-highlight-color: transparent;
    }
    .mobCta i { font-size: 20px; line-height: 1; }
    .mobCta:active { transform: translateY(1px); box-shadow: 0 1px 3px rgba(0,0,0,.25); }
    .mobCta-call { background: #1B4F82; }
    .mobCta-book { background: #BC4A3C; }

    /* ---------- 3. Availability strip ---------- */
    .mobAvail {
        display: flex;
        align-items: center;
        gap: 12px;
        margin: 4px -12px 0 -12px;
        padding: 12px 16px;
        background: #d9f0de;
        border-top: 1px solid #bfe3c8;
        border-bottom: 1px solid #bfe3c8;
    }
    .mobAvail-ico {
        flex: 0 0 auto;
        width: 42px; height: 42px;
        display: flex; align-items: center; justify-content: center;
        border-radius: 50%;
        background: #fff;
        border: 2px solid #35a352;
    }
    .mobAvail-ico i { font-size: 22px; color: #1f7a3d; line-height: 1; }
    .mobAvail-txt {
        font-size: 15px;
        line-height: 1.32;
        font-weight: 600;
        color: #175c31;
    }
    .mobAvail-txt strong { color: #0f4a26; white-space: nowrap; }

    /* ---------- 4. Hero photo: rounded card ---------- */
    .Top-Main-Block .global-show-only-for-phone,
    .Top-Main-Block .global-show-only-for-phone.img-thumbnail {
        display: block !important;
        width: 100%;
        height: auto;
        margin: 14px 0 4px 0;
        padding: 0;
        border: 0;
        border-radius: 12px;
        box-shadow: 0 3px 10px rgba(0,0,0,.16);
        object-fit: cover;
        aspect-ratio: 16 / 10;
    }
    .Top-Main-Block .image_bg { padding: 0 !important; }
    .Top-Main-Block .row > [class*="col-md-"] { padding-left: 12px; padding-right: 12px; }

    /* ---------- 5. H1 ---------- */
    .Top-Main-Block .left-block h1 {
        margin: 12px 0 6px 0;
        text-align: center;
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 800;
        font-size: 27px;
        line-height: 1.14;
        letter-spacing: -.2px;
        color: #141414;
        text-transform: uppercase;
    }
    .Top-Main-Block .left-block > p {
        font-size: 15px;
        line-height: 1.5;
        text-align: left;
    }

    /* ---------- 6. The two green value cards ---------- */
    #mobCards {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin: 14px 0 16px 0;
    }
    .mobCard {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 2px;
        min-height: 96px;
        padding: 10px 8px;
        border: 2px solid #4caf50;
        border-radius: 14px;
        background: #f2fbf4;
        text-align: center;
    }
    .mobCard-lead {
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-size: 16px;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: .2px;
        color: #1e8e3e;
        line-height: 1.1;
    }
    .mobCard-row { display: flex; align-items: center; justify-content: center; gap: 7px; }
    .mobCard-row b {
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-size: 28px;
        font-weight: 800;
        color: #17803a;
        white-space: nowrap;
        line-height: 1.1;
    }
    .mobCard-ico { font-size: 26px; color: #35b357; line-height: 1; flex: 0 0 auto; }
    .mobCard-r { flex-direction: row; gap: 9px; }
    .mobCard-r .mobCard-ico { font-size: 34px; }
    .mobCard-stack { display: flex; flex-direction: column; line-height: 1.12; text-align: left; }
    .mobCard-stack b {
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-size: 26px;
        font-weight: 800;
        color: #17803a;
        line-height: 1;
    }
    .mobCard-stack small {
        font-size: 12.5px;
        font-weight: 800;
        text-transform: uppercase;
        color: #1e8e3e;
        letter-spacing: .2px;
        line-height: 1.15;
    }

    /* ---------- Availability strip: technician cluster ---------- */
    .mobAvail-ico { position: relative; width: 52px; height: 44px; border: 0; background: none; display: block; }
    .mobAvail-ico i { position: absolute; line-height: 1; color: #2b4d7e; }
    .mobAvail-p1 { font-size: 22px; left: 0;   top: 9px; opacity: .78; }
    .mobAvail-p2 { font-size: 28px; left: 12px; top: 3px; }
    .mobAvail-p3 { font-size: 22px; left: 30px; top: 9px; opacity: .78; }
    .mobAvail-tick {
        font-size: 19px !important;
        color: #2fa84f !important;
        left: 30px; top: 24px;
        background: #fff;
        border-radius: 50%;
    }

    /* ---------- Why choose us + brand strip ---------- */
    #mobWhy { display: block; padding: 4px 14px 18px 14px; background: #fff; }
    .mobWhy-div {
        display: flex;
        align-items: center;
        gap: 12px;
        margin: 6px 0 12px 0;
        color: #8a8a8a;
        font-size: 15px;
        letter-spacing: 1.6px;
        text-transform: uppercase;
    }
    .mobWhy-div::before, .mobWhy-div::after {
        content: "";
        flex: 1 1 auto;
        height: 1px;
        background: #dcdcdc;
    }
    .mobWhy-div span { flex: 0 0 auto; }
    .mobWhy-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; }
    .mobWhy-grid a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 58px;
        padding: 6px;
        border: 1px solid #dcdcdc;
        border-radius: 8px;
        background: #fff;
    }
    .mobWhy-grid img { max-width: 88%; max-height: 34px; width: auto; height: auto; object-fit: contain; }
    .mobWhy-all {
        display: block;
        margin-top: 12px;
        text-align: center;
        font-weight: 700;
        font-size: 14px;
        color: #1B4F82;
        text-decoration: underline;
    }

    /* ---------- 7. Trust grid (built from the hero list) ---------- */
    .Top-Main-Block .left-block ul {
        list-style: none !important;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0;
        margin: 6px 0 14px 0 !important;
        padding: 0 !important;
        border-top: 1px solid #e3e3e3;
        text-transform: none !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
    }
    .Top-Main-Block .left-block ul li {
        display: flex;
        align-items: center;
        gap: 9px;
        min-height: 56px;
        padding: 9px 8px;
        border-bottom: 1px solid #e3e3e3;
        font-size: 14px;
        line-height: 1.22;
        color: #23303c;
        text-align: left;
    }
    .Top-Main-Block .left-block ul li:nth-child(odd) { border-right: 1px solid #e3e3e3; }
    .Top-Main-Block .left-block ul li::before {
        font-family: bootstrap-icons !important;
        font-style: normal;
        font-weight: 400;
        content: "\f26a";
        font-size: 21px;
        line-height: 1;
        color: #1B4F82;
        flex: 0 0 auto;
    }
    /* Home page hero list, item by item */
    #section_001 .left-block ul li:nth-child(1)::before { content: "\f4d5"; }
    #section_001 .left-block ul li:nth-child(2)::before { content: "\f291"; }
    #section_001 .left-block ul li:nth-child(3)::before { content: "\f247"; }
    #section_001 .left-block ul li:nth-child(4)::before { content: "\f531"; }
    #section_001 .left-block ul li:nth-child(5)::before { content: "\f3e7"; }
    #section_001 .left-block ul li:nth-child(6)::before { content: "\f292"; }
    #section_001 .left-block ul li:nth-child(7)::before { content: "\f790"; }
    #section_001 .left-block ul li:nth-child(8)::before { content: "\f26a"; }

    /* ---------- 8. Warranty shield banner ---------- */
    .Top-Main-Block .left-block .col-md-5 img[src*="id=1017"],
    .Top-Main-Block .left-block img[src*="id=1017"] {
        display: block;
        width: 100%;
        max-width: 420px;
        height: auto;
        margin: 4px auto 14px auto;
    }

    /* ---------- 9. Hero buttons ---------- */
    .Top-Main-Block .left-block .MainPhoneNumber.btn,
    .Top-Main-Block .left-block a.MainPhoneNumber {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        min-height: 50px;
        margin: 0 0 10px 0 !important;
        padding: 12px 14px !important;
        border-radius: 8px;
        font-style: normal;
        font-weight: 700;
        font-size: 16px;
        line-height: 1.15;
        text-decoration: none !important;
        text-transform: uppercase;
        word-spacing: normal;
        box-shadow: 0 2px 5px rgba(0,0,0,.2);
    }
    .Top-Main-Block .left-block .row .col-md-4,
    .Top-Main-Block .left-block .row .col-md-6 { padding-left: 0; padding-right: 0; }

    /* ---------- 10. Brand grid, 4 across ---------- */
    .Def-ListOfBrands { padding: 0 !important; }
    .Def-ListOfBrands .MainContentBlock {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr);
        gap: 6px;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0;
    }
    .Def-ListOfBrands .brand-block {
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        min-height: 62px;
        border: 1px solid #dcdcdc;
        border-radius: 8px;
        background: #fff;
    }
    .Def-ListOfBrands .brand-block::after { content: none !important; }
    .Def-ListOfBrands .brand-block img {
        max-width: 84% !important;
        max-height: 42px !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        object-fit: contain;
    }
    .global-hide-toll-element {
        height: 320px;
        overflow: auto;
        padding: 8px !important;
        border: 1px solid #e3e3e3;
        border-radius: 10px;
        background: #fafafa;
        -webkit-overflow-scrolling: touch;
    }

    /* ---------- 11. Sticky bottom contact bar ---------- */
    #MobileContacts {
        display: block !important;
        position: fixed;
        left: 0; right: 0; bottom: 0;
        z-index: 1040;
        padding: 7px 10px !important;
        background: #ffffff;
        border-top: 1px solid #e0e0e0;
        box-shadow: 0 -2px 10px rgba(0,0,0,.14);
    }
    #MobileContacts .table-data { width: 100%; display: table; }
    #MobileContacts .cell-0, #MobileContacts .cell-1, #MobileContacts .cell-2 {
        display: table-cell;
        padding: 0 3px;
        vertical-align: middle;
        text-align: center;
    }
    #MobileContacts .cell-0 { width: 42%; }
    #MobileContacts .cell-1 { width: 36%; }
    #MobileContacts .cell-2 { width: 22%; }
    #MobileContacts .cell-2 .RedButton { background: #4a5b6b; }
    #MobileContacts .RedButton {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 46px;
        padding: 8px 10px !important;
        border-radius: 8px;
        background: #1B4F82;
    }
    #MobileContacts .cell-1 .RedButton { background: #BC4A3C; }
    #MobileContacts .RedButton a {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        color: #fff !important;
        font-weight: 700;
        font-size: 15px;
        text-transform: uppercase;
        text-decoration: none !important;
        width: 100%;
    }
    #MobileContacts .RedButton a i { font-size: 17px; }
    body { padding-bottom: 66px; }

    /* ---------- 12. General mobile polish ---------- */
    .MainWidth { box-shadow: none; }
    .setion-row, .section-row { padding-left: 0; padding-right: 0; }
    .container.max-width { padding-left: 14px; padding-right: 14px; }
}

@media only screen and (max-width: 400px) {
    .mobCta { font-size: 17px; min-height: 50px; }
    .Top-Main-Block .left-block h1 { font-size: 24px; }
    .mobCard-txt b { font-size: 19px; }
    .mobCard { min-height: 84px; }
    .Def-ListOfBrands .brand-block { min-height: 54px; }
    .Def-ListOfBrands .brand-block img { max-height: 34px !important; }
}

/* --- MOBILE REDESIGN 2026-09, pass 2 --- */
@media only screen and (max-width: 767px) {

    /* Warranty badge presented as the silver banner from the design */
    .Top-Main-Block .left-block div:has(> img[src*="id=1017"]) {
        display: flex;
        align-items: center;
        gap: 12px;
        margin: 8px 0 16px 0;
        padding: 8px 14px 8px 8px;
        border: 1px solid #c4c4c4;
        border-radius: 10px;
        background: linear-gradient(180deg, #fbfbfb 0%, #e6e6e6 55%, #cfcfcf 100%);
        box-shadow: inset 0 1px 0 #fff, 0 1px 3px rgba(0,0,0,.14);
    }
    .Top-Main-Block .left-block div:has(> img[src*="id=1017"])::after {
        content: "Up to 3-month warranty on all repairs";
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 800;
        font-size: 14px;
        line-height: 1.2;
        letter-spacing: .2px;
        text-transform: uppercase;
        color: #1f1f1f;
        text-align: left;
    }
    .Top-Main-Block .left-block img[src*="id=1017"] {
        width: 58px !important;
        max-width: 58px !important;
        min-width: 58px;
        height: auto;
        margin: 0 !important;
        flex: 0 0 auto;
    }

    /* Hero buttons: kill the italic/underline, give each a distinct colour */
    .Top-Main-Block .left-block a.Sub-Item-link,
    .Top-Main-Block .left-block a.Sub-Item-link:hover {
        text-decoration: none !important;
        display: block;
    }
    .Top-Main-Block .left-block .MainPhoneNumber,
    .Top-Main-Block .left-block a.MainPhoneNumber {
        font-style: normal !important;
        text-decoration: none !important;
        text-shadow: none;
        box-shadow: 0 2px 5px rgba(0,0,0,.18);
    }
    .Top-Main-Block .left-block .row .col-md-4:nth-child(1) .MainPhoneNumber,
    .Top-Main-Block .left-block .row .col-md-6:nth-child(1) .MainPhoneNumber {
        background-color: #1B4F82 !important;
    }
    .Top-Main-Block .left-block .row .col-md-4:nth-child(3) .MainPhoneNumber {
        background-color: #fff !important;
        color: #1B4F82 !important;
        border: 2px solid #1B4F82;
        box-shadow: none;
    }

    /* Floating phone bubble collides with the fixed bottom bar */
    #DopPhone, .DivPhoneT { display: none !important; }

    /* The 1502 strip under the buttons */
    .Top-Main-Block .left-block img[src*="id=1502"] {
        width: 100%;
        max-width: 100%;
        height: auto;
        margin: 6px 0 4px 0;
    }
}

/* --- MOBILE REDESIGN 2026-09, pass 3: content polish --- */
@media only screen and (max-width: 767px) {
    /* Oversized promo images inside article bodies */
    .MainContentBlock img,
    .article img,
    .GlobalPaddingLeft img,
    .GlobalPaddingRight img {
        max-width: 100%;
        height: auto;
    }
    .Top-Main-Block.article ~ * img[src*="/image/?id="],
    .article .MainContentBlock > p > img,
    .article div > img.img-thumbnail { max-height: 300px; width: auto; }

    /* Breadcrumbs: keep them, make them compact under the green strip */
    .BreadcrumbList { padding: 8px 14px !important; font-size: 12px; }

    /* Section headings */
    .setion-row h2, .section-row h2 { font-size: 22px; line-height: 1.2; }
}

/* --- MOBILE REDESIGN 2026-09, pass 4 --- */
#mobWhy { display: none; }
@media only screen and (max-width: 767px) {
    /* bottom-bar labels get tight at 3 cells */
    #MobileContacts .RedButton a { font-size: 13.5px; gap: 5px; }
    #MobileContacts .cell-0 .RedButton a { font-size: 15px; }
    #MobileContacts .RedButton { padding: 8px 6px !important; }
}
@media only screen and (max-width: 360px) {
    #MobileContacts .RedButton a span { font-size: 12px; }
    .mobWhy-grid { gap: 5px; }
    .mobCard-row b, .mobCard-stack b { font-size: 21px; }
    .mobCard-lead { font-size: 13px; }
}

/* --- MOBILE REDESIGN 2026-09, pass 5: match the mockup's density --- */
@media only screen and (max-width: 767px) {

    /* Hero photo was ~240px tall; the design's is ~150px. */
    .Top-Main-Block .global-show-only-for-phone,
    .Top-Main-Block .global-show-only-for-phone.img-thumbnail {
        aspect-ratio: 22 / 10;
        margin: 12px 0 2px 0;
        object-position: center 42%;
    }

    /* Availability strip: separate the three figures so they read as people */
    .mobAvail { padding: 10px 14px; }
    .mobAvail-ico { width: 50px; height: 40px; }
    .mobAvail-p1 { font-size: 19px; left: 0;   top: 8px; opacity: 1; }
    .mobAvail-p1, .mobAvail-p3 { color: #7e93b3; }
    .mobAvail-p2 { font-size: 25px; left: 13px; top: 3px; color: #2b4d7e; }
    .mobAvail-p3 { font-size: 19px; left: 29px; top: 8px; }
    .mobAvail-p1, .mobAvail-p2, .mobAvail-p3 {
        text-shadow: 0 0 0 #d9f0de, -1.5px 0 0 #d9f0de, 1.5px 0 0 #d9f0de, 0 -1.5px 0 #d9f0de, 0 1.5px 0 #d9f0de;
    }
    .mobAvail-tick { font-size: 17px !important; left: 25px; top: 22px; }
    .mobAvail-txt { font-size: 14.5px; }

    /* ---------- Bottom bar: three buttons, identical height, never wrap ---------- */
    #MobileContacts { padding: 6px 8px !important; }
    #MobileContacts .cell-0, #MobileContacts .cell-1, #MobileContacts .cell-2 { padding: 0 3px; }
    #MobileContacts .cell-0 { width: 40%; }
    #MobileContacts .cell-1 { width: 35%; }
    #MobileContacts .cell-2 { width: 25%; }
    #MobileContacts .RedButton {
        height: 42px;
        min-height: 42px;
        padding: 0 6px !important;
        border-radius: 7px;
        overflow: hidden;
    }
    #MobileContacts .RedButton a,
    #MobileContacts .cell-0 .RedButton a {
        height: 42px;
        gap: 5px;
        font-size: 13px;
        line-height: 42px;
        white-space: nowrap;
    }
    #MobileContacts .cell-0 .RedButton a { font-size: 14px; }
    #MobileContacts .RedButton a i { font-size: 15px; }
    #MobileContacts .RedButton a span { white-space: nowrap; }
    body { padding-bottom: 58px; }

    /* Trim the CTA stack a little so more of the page clears the fold */
    #mobTop { padding: 7px 12px 0 12px; }
    .mobCta { min-height: 48px; margin-bottom: 8px; font-size: 18px; }
}
@media only screen and (max-width: 360px) {
    #MobileContacts .cell-0 .RedButton a { font-size: 12.5px; }
    #MobileContacts .RedButton a { font-size: 11.5px; }
    .mobCta { font-size: 16px; }
}

/* pass 5b: the global #mobWhy hide (pass 4) was overriding the mobile rule — same
   specificity, later in the file. Re-assert it for phones. */
@media only screen and (max-width: 767px) {
    #mobWhy { display: block !important; }
}

/* pass 5c: mobWhy now sits inside .left-block, so cancel the outer gutters */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .left-block #mobWhy { padding: 2px 0 10px 0; }
}

/* --- MOBILE REDESIGN 2026-09, pass 6 --- */
@media only screen and (max-width: 767px) {
    /* The .bell shake animation makes the fixed bottom-bar phone button wobble
       off its own edges. Kill it there (the hero CTA keeps it). */
    #MobileContacts .bell {
        -webkit-animation: none !important;
        -moz-animation: none !important;
        animation: none !important;
        transform: none !important;
    }

    /* Tighten the hero button stack */
    .Top-Main-Block .left-block .MainPhoneNumber.btn,
    .Top-Main-Block .left-block a.MainPhoneNumber {
        min-height: 46px;
        margin: 0 0 8px 0 !important;
        font-size: 15.5px;
    }
    .Top-Main-Block .left-block .mt-4.row { margin-top: 10px !important; }

    /* Long trust-grid labels were pushing rows to three lines */
    .Top-Main-Block .left-block ul li { font-size: 13.5px; min-height: 52px; padding: 8px 7px; }
    .Top-Main-Block .left-block ul li::before { font-size: 19px; }
}

/* --- MOBILE REDESIGN 2026-09, pass 7 ---
   The mockup's trust grid is four items. On the home hero the other four are
   already stated elsewhere on the same screen: SAME-DAY SERVICE is the green
   strip, AFFORDABLE RATES and NO HIDDEN FEES are the two green cards. Hiding
   them here pulls the warranty banner and the brand grid above the fold.
   Home page only (#section_001) - location pages keep their full service list. */
@media only screen and (max-width: 767px) {
    #section_001 .left-block ul li:nth-child(1),
    #section_001 .left-block ul li:nth-child(2),
    #section_001 .left-block ul li:nth-child(3),
    #section_001 .left-block ul li:nth-child(8) { display: none; }
    /* re-stripe the four that remain: 4th and 6th are now the left column */
    #section_001 .left-block ul li:nth-child(odd) { border-right: 0; }
    #section_001 .left-block ul li:nth-child(4),
    #section_001 .left-block ul li:nth-child(6) { border-right: 1px solid #e3e3e3; }
}

/* pass 7b: put the four surviving items in the mockup's reading order -
   Service Warranty | 15+ Years, then Serving Multiple Locations | All Brands */
@media only screen and (max-width: 767px) {
    #section_001 .left-block ul li:nth-child(4) { order: 1; }
    #section_001 .left-block ul li:nth-child(6) { order: 2; }
    #section_001 .left-block ul li:nth-child(5) { order: 3; }
    #section_001 .left-block ul li:nth-child(7) { order: 4; }
    #section_001 .left-block ul li:nth-child(6) { border-right: 0; }
    #section_001 .left-block ul li:nth-child(5) { border-right: 1px solid #e3e3e3; }
}

/* --- MOBILE REDESIGN 2026-09, pass 8 ---
   Top Call / Schedule buttons removed at Andrei's request. The sticky bottom
   bar already carries Call, Book service and Map, so the green availability
   strip now sits directly under the header. */
@media only screen and (max-width: 767px) {
    #mobTop .mobCta { display: none !important; }
    #mobTop { padding: 0 !important; }
    #mobTop .mobAvail { margin: 0 !important; }
}

/* --- MOBILE REDESIGN 2026-09, pass 9 ---
   Map button removed at Andrei's request. Bottom bar is back to two buttons. */
@media only screen and (max-width: 767px) {
    #MobileContacts .cell-2 { display: none !important; }
    #MobileContacts .cell-0 { width: 50%; }
    #MobileContacts .cell-1 { width: 50%; }
    #MobileContacts .cell-0 .RedButton a { font-size: 15px; }
    #MobileContacts .cell-1 .RedButton a { font-size: 14px; }
}
@media only screen and (max-width: 360px) {
    #MobileContacts .cell-0 .RedButton a { font-size: 13.5px; }
    #MobileContacts .cell-1 .RedButton a { font-size: 12.5px; }
}

/* --- MOBILE REDESIGN 2026-09, pass 10 ---
   Warranty badge overlaid on the bottom-right corner of the hero photo.
   Drawn as a decorative ::after so no markup changes and no duplicate alt
   text - the badge with real alt text still sits in the silver banner below. */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone) {
        position: relative;
    }
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        content: "";
        position: absolute;
        right: 20px;
        bottom: 10px;
        width: 118px;
        height: 118px;
        background: url(/image/?id=1017) center center / contain no-repeat;
        filter: drop-shadow(0 2px 6px rgba(0,0,0,.4));
        pointer-events: none;
    }
}
@media only screen and (max-width: 400px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        width: 104px;
        height: 104px;
        right: 14px;
    }
}

/* pass 11: sit the warranty badge right in the photo's bottom-right corner */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        right: 14px;
        bottom: 0;
    }
}
@media only screen and (max-width: 400px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        right: 12px;
        bottom: 0;
    }
}

/* pass 12: the badge source is 800x510, so a square box left ~19px of empty
   space above and below it under background-size:contain. Match the ratio. */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        width: 152px;
        height: 97px;
        right: 10px;
        bottom: 4px;
        background-position: right bottom;
    }
}
@media only screen and (max-width: 400px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        width: 134px;
        height: 85px;
        right: 8px;
        bottom: 4px;
    }
}

/* pass 13: badge position/size as tuned by Andrei in DevTools */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        width: 100px;
        height: 70px;
        right: 10px;
        bottom: -16px;
        background-position: right bottom;
    }
}
@media only screen and (max-width: 400px) {
    .Top-Main-Block .row > div:has(> img.global-show-only-for-phone)::after {
        width: 134px;
        height: 65px;
        right: 8px;
        bottom: -16px;
    }
}

/* --- MOBILE REDESIGN 2026-09, pass 14 ---
   1) H1 is fitted to one line by site.js (font-size set inline there).
   2) smaller green cards + smaller type inside them
   3) tighter margins around the cards
   4) stronger header shadow and a real border-bottom
   --------------------------------------------------------------- */
@media only screen and (max-width: 767px) {

    /* 1 - leave room for the fitter; it sets font-size inline */
    .Top-Main-Block .left-block h1 {
        margin: 10px 0 4px 0;
        line-height: 1.15;
        overflow: hidden;
    }

    /* 2 + 3 - green value cards */
    #mobCards {
        gap: 8px;
        margin: 8px 0 10px 0;
    }
    .mobCard {
        min-height: 74px;
        padding: 8px 6px;
        border-width: 2px;
        border-radius: 12px;
        gap: 1px;
    }
    .mobCard-lead { font-size: 13.5px; }
    .mobCard-row { gap: 6px; }
    .mobCard-row b { font-size: 23px; }
    .mobCard-ico { font-size: 21px; }
    .mobCard-r { gap: 8px; }
    .mobCard-r .mobCard-ico { font-size: 28px; }
    .mobCard-stack b { font-size: 22px; }
    .mobCard-stack small { font-size: 11px; }

    /* 4 - header */
    #navbarCollapse {
        border-bottom: 2px solid #d5d5d5;
        box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
    }
}
@media only screen and (max-width: 360px) {
    .mobCard-row b, .mobCard-stack b { font-size: 20px; }
    .mobCard-lead { font-size: 12.5px; }
    .mobCard-stack small { font-size: 10.5px; }
}

/* --- MOBILE REDESIGN 2026-09, pass 15 ---
   1) brand strip scrolls horizontally, every logo links to its brand page
   2) "Our appliance repair services" as a compact two-column card grid
   --------------------------------------------------------------- */
@media only screen and (max-width: 767px) {

    /* ---------- 1. Brand strip: swipeable single row ---------- */
    .mobWhy-scroller {
        position: relative;
        margin: 0 -14px;
        padding: 2px 0 6px 0;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        /* fade the right edge so it reads as "there is more" */
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .mobWhy-scroller::-webkit-scrollbar { display: none; }

    .mobWhy-grid {
        display: inline-flex !important;
        grid-template-columns: none !important;
        flex-wrap: nowrap;
        gap: 8px;
        padding: 0 14px;
        min-width: 100%;
    }
    .mobWhy-grid a {
        flex: 0 0 auto;
        width: 104px;
        min-height: 62px;
        scroll-snap-align: start;
        transition: border-color .15s ease, box-shadow .15s ease;
    }
    .mobWhy-grid a:active {
        border-color: #1B4F82;
        box-shadow: 0 0 0 2px rgba(27, 79, 130, .15);
    }
    .mobWhy-grid img { max-width: 80%; max-height: 36px; }

    /* ---------- 2. Services cards ---------- */
    .Appliances-Block {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        padding: 0 !important;
        text-align: left;
    }
    .Appliances-Block .Item {
        display: flex !important;
        flex-direction: column;
        width: auto !important;
        margin: 0 !important;
        border: 1px solid #e3e3e3;
        border-radius: 10px;
        overflow: hidden;
        background: #fff;
        box-shadow: 0 2px 6px rgba(0, 0, 0, .09);
    }
    .Appliances-Block .Icon-place {
        display: block !important;
        width: 100% !important;
        height: 102px !important;
        padding: 0 !important;
        overflow: hidden;
    }
    .Appliances-Block .Icon-place img {
        width: 100%;
        height: 102px;
        max-width: none;
        max-height: none;
        object-fit: cover;
        display: block;
    }
    .Appliances-Block .Item > div:last-child { margin-top: auto; }
    .Appliances-Block .Description-place {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        height: auto !important;
        min-height: 44px;
        padding: 8px 6px !important;
        font-size: 13px;
        line-height: 1.2;
        text-align: center;
    }
}
@media only screen and (max-width: 360px) {
    .mobWhy-grid a { width: 94px; min-height: 56px; }
    .mobWhy-grid img { max-height: 32px; }
    .Appliances-Block { gap: 8px; }
    .Appliances-Block .Icon-place, .Appliances-Block .Icon-place img { height: 92px !important; }
    .Appliances-Block .Description-place { font-size: 12px; min-height: 40px; }
}

/* pass 15b: the grid rule used display:flex !important, which overrode the
   inline display:none on the hidden Freezer card (it points at the stove page).
   Keep anything hidden inline hidden. */
@media only screen and (max-width: 767px) {
    .Appliances-Block .Item[style*="display:none"],
    .Appliances-Block .Item[style*="display: none"] { display: none !important; }
}

/* pass 15c: never render #mobWhy until the script has moved it into the hero.
   Without this it falls back to its markup position, above the hero photo. */
#mobWhy[hidden] { display: none !important; }

/* ============================================================
   SHORTCODES (Models/ShortcodeClass.cs) - work on any CMS page,
   desktop and mobile.
   ============================================================ */
.sc-phone { font-weight: 700; color: #BC4A3C; text-decoration: none; white-space: nowrap; }
.sc-phone:hover { text-decoration: underline; }

.sc-cta { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0; }
.sc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex: 1 1 220px;
    min-height: 50px;
    padding: 12px 18px;
    border-radius: 8px;
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.15;
    text-transform: uppercase;
    text-decoration: none !important;
    color: #fff !important;
    box-shadow: 0 2px 5px rgba(0,0,0,.2);
}
.sc-btn i { font-size: 18px; line-height: 1; }
.sc-btn:active { transform: translateY(1px); }
.sc-btn-call { background: #1B4F82; }
.sc-btn-book { background: #BC4A3C; }

.sc-warranty {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 18px 0;
    padding: 10px 18px 10px 10px;
    border: 1px solid #c4c4c4;
    border-radius: 10px;
    background: linear-gradient(180deg, #fbfbfb 0%, #e6e6e6 55%, #cfcfcf 100%);
    box-shadow: inset 0 1px 0 #fff, 0 1px 3px rgba(0,0,0,.14);
}
.sc-warranty img { width: 66px; min-width: 66px; height: auto; }
.sc-warranty span {
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-weight: 800; font-size: 16px; line-height: 1.2;
    text-transform: uppercase; color: #1f1f1f;
}

/* ---------- Trusted team panel ---------- */
.sc-team {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 26px;
    align-items: center;
    margin: 26px 0;
    padding: 28px 30px;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, #9d2318 0%, #bc3325 55%, #a8291c 100%);
    box-shadow: 0 6px 18px rgba(0,0,0,.18);
}
.sc-team-h {
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-weight: 800;
    font-size: 27px;
    line-height: 1.15;
    margin-bottom: 14px;
}
.sc-team-list { list-style: none; margin: 0; padding: 0; }
.sc-team-list li {
    position: relative;
    padding: 5px 0 5px 30px;
    font-size: 16.5px;
    line-height: 1.35;
}
.sc-team-list li::before {
    content: "\f26a";                 /* bi-check-circle-fill */
    font-family: bootstrap-icons !important;
    font-style: normal;
    position: absolute;
    left: 0; top: 5px;
    font-size: 18px;
    color: #ffd36b;
}
.sc-team-right { text-align: center; }
.sc-team-offer {
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.12;
    margin-bottom: 16px;
}
.sc-team-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    min-height: 54px;
    padding: 13px 20px;
    border-radius: 9px;
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-weight: 800;
    font-size: 17px;
    text-transform: uppercase;
    text-decoration: none !important;
    color: #3d2200 !important;
    background: linear-gradient(180deg, #ffd977 0%, #f5b81f 55%, #e0a012 100%);
    box-shadow: 0 3px 0 #b87f07, 0 5px 12px rgba(0,0,0,.25);
}
.sc-team-btn:active { transform: translateY(2px); box-shadow: 0 1px 0 #b87f07, 0 3px 8px rgba(0,0,0,.25); }
.sc-team-note { margin-top: 10px; font-size: 13.5px; opacity: .88; }

/* ---------- Coupons ---------- */
.sc-coupons { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 22px 0; }
.sc-coupons a { display: block; }
.sc-coupons img { width: 100%; height: auto; border-radius: 8px; display: block; }

/* ---------- Brand strip ---------- */
.sc-brands { margin: 22px 0; }
.sc-brands-h {
    display: flex; align-items: center; gap: 12px;
    margin-bottom: 12px; color: #8a8a8a; font-size: 15px;
    letter-spacing: 1.6px; text-transform: uppercase;
}
.sc-brands-h::before, .sc-brands-h::after { content: ""; flex: 1 1 auto; height: 1px; background: #dcdcdc; }
.sc-brands-h span { flex: 0 0 auto; }
.sc-brands-scroller { overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.sc-brands-scroller::-webkit-scrollbar { display: none; }
.sc-brands-row { display: inline-flex; flex-wrap: nowrap; gap: 8px; min-width: 100%; }
.sc-brands-row a {
    flex: 0 0 auto;
    display: flex; align-items: center; justify-content: center;
    width: 118px; min-height: 68px; padding: 8px;
    border: 1px solid #dcdcdc; border-radius: 8px; background: #fff;
}
.sc-brands-row img { max-width: 84%; max-height: 40px; width: auto; height: auto; object-fit: contain; }
.sc-brands-all {
    display: block; margin-top: 12px; text-align: center;
    font-weight: 700; font-size: 14px; color: #1B4F82; text-decoration: underline;
}

/* ---------- Service cards ---------- */
.sc-services { margin: 22px 0; }
.sc-services-h {
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-weight: 800; font-size: 22px; margin-bottom: 14px; text-align: center;
}
.sc-services-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.sc-services-grid a {
    display: flex; flex-direction: column; align-items: center; justify-content: flex-start;
    gap: 8px; padding: 16px 10px;
    border: 1px solid #e3e3e3; border-radius: 10px; background: #fff;
    text-decoration: none !important; color: #23303c;
    font-weight: 700; font-size: 14px; line-height: 1.2; text-align: center;
    box-shadow: 0 2px 6px rgba(0,0,0,.07);
}
.sc-services-grid a:hover { border-color: #BC4A3C; box-shadow: 0 3px 10px rgba(0,0,0,.13); }
.sc-services-grid img { width: 46px; height: 46px; object-fit: contain; }

@media only screen and (max-width: 767px) {
    .sc-cta { gap: 8px; margin: 14px 0; }
    .sc-btn { flex: 1 1 100%; font-size: 15px; min-height: 48px; }
    .sc-warranty span { font-size: 14px; }
    .sc-warranty img { width: 58px; min-width: 58px; }

    .sc-team { grid-template-columns: 1fr; gap: 16px; padding: 20px 16px; margin: 18px 0; border-radius: 12px; }
    .sc-team-h { font-size: 22px; text-align: center; margin-bottom: 10px; }
    .sc-team-list li { font-size: 15px; padding: 4px 0 4px 27px; }
    .sc-team-offer { font-size: 23px; }
    .sc-team-btn { font-size: 15px; min-height: 50px; }

    .sc-coupons { grid-template-columns: 1fr 1fr; gap: 10px; }
    .sc-brands-scroller {
        margin: 0 -14px; padding: 0 0 4px 0;
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .sc-brands-row { gap: 8px; padding: 0 14px; }
    .sc-brands-row a { width: 104px; min-height: 62px; }
    .sc-brands-row img { max-height: 36px; }
    .sc-services-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
    .sc-services-grid a { font-size: 13px; padding: 14px 8px; }
    .sc-services-grid img { width: 40px; height: 40px; }
    .sc-services-h { font-size: 19px; }
}

/* ============================================================
   MOBILE REDESIGN 2026-09, pass 16
   - services cards: lighter caption, no lone orphan in the last row
   - the CMS "Trusted Appliance Repair Team" block gets the same
     treatment as the [trusted-team] shortcode
   ============================================================ */
@media only screen and (max-width: 767px) {

    .Appliances-Block .Description-place {
        background-color: #BC4A3C;
        font-size: 12.5px !important;
        min-height: 40px;
        padding: 7px 6px !important;
        letter-spacing: .1px;
    }
    .Appliances-Block .Icon-place,
    .Appliances-Block .Icon-place img { height: 96px !important; }
    .Appliances-Block .Icon-place img { object-position: center 35%; }
    /* a single card left over on the last row spans the full width */
    .Appliances-Block .Item:last-child:nth-child(odd) { grid-column: 1 / -1; }
    .Appliances-Block .Item:last-child:nth-child(odd) .Icon-place,
    .Appliances-Block .Item:last-child:nth-child(odd) .Icon-place img { height: 120px !important; }

    /* CMS version of the trusted-team panel */
    .global-red-block.block-call-back {
        padding: 20px 14px !important;
        margin: 18px 0;
        border-radius: 12px;
        background: linear-gradient(135deg, #9d2318 0%, #bc3325 55%, #a8291c 100%);
        box-shadow: 0 6px 18px rgba(0,0,0,.18);
    }
    .global-red-block.block-call-back > .row { width: 100% !important; margin: 0 !important; }
    .global-red-block.block-call-back .col-md-6 { padding: 0 !important; }
    .global-red-block.block-call-back .mb-3[style*="26px"] {
        font-size: 22px !important;
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 800;
        text-align: center;
        line-height: 1.15;
    }
    .global-red-block.block-call-back .mb-3[style*="34px"] {
        font-size: 23px !important;
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 800;
        text-align: center;
        line-height: 1.12;
    }
    .global-red-block.block-call-back ul {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .global-red-block.block-call-back ul li {
        position: relative;
        padding: 4px 0 4px 27px;
        font-size: 15px;
        line-height: 1.35;
    }
    .global-red-block.block-call-back ul li::before {
        content: "\f26a";
        font-family: bootstrap-icons !important;
        font-style: normal;
        position: absolute; left: 0; top: 4px;
        font-size: 17px; color: #ffd36b;
    }
    .global-red-block.block-call-back .gold-button {
        min-height: 50px;
        border-radius: 9px;
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 800;
        font-size: 15px;
        text-transform: uppercase;
        color: #3d2200 !important;
        background: linear-gradient(180deg, #ffd977 0%, #f5b81f 55%, #e0a012 100%);
        box-shadow: 0 3px 0 #b87f07, 0 5px 12px rgba(0,0,0,.25);
    }
}

/* ---------- [block name="..."] - blocks managed in Admin -> Shortcodes ---------- */
.sc-block { margin: 22px 0; }
.sc-block-grid {
    display: grid;
    grid-template-columns: repeat(var(--sc-block-cols, 4), 1fr);
    gap: 14px;
}
.sc-block-item { display: block; }
.sc-block-item a { display: block; text-decoration: none; }
.sc-block-item img { width: 100%; height: auto; border-radius: 8px; display: block; }
.sc-block-item span {
    display: block;
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.35;
    text-align: center;
    color: #444;
}
.sc-block-scroll { overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.sc-block-scroll::-webkit-scrollbar { display: none; }
.sc-block-track { display: inline-flex; flex-wrap: nowrap; gap: 12px; min-width: 100%; }
.sc-block-scroll .sc-block-item { flex: 0 0 auto; width: 210px; }

@media only screen and (max-width: 767px) {
    .sc-block { margin: 16px 0; }
    .sc-block-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .sc-block-item span { font-size: 12px; }
    .sc-block-scroll {
        margin: 0 -14px;
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .sc-block-track { padding: 0 14px; }
    .sc-block-scroll .sc-block-item { width: 160px; }
}

/* Footer: separate the standalone pages from the service links above them */
.footer .btn.btn-link.footer-split {
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, .22);
}

/* --- MOBILE REDESIGN 2026-09, pass 17 ---
   "Symptom + cause" hero lists (washer, dryer, fridge service pages).
   site.js splits the cause onto its own line and tags the list .has-notes;
   these lists get the full width instead of the two-column icon grid. */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .left-block ul.has-notes {
        grid-template-columns: 1fr;
        border-top: 1px solid #e3e3e3;
    }
    /* grid, not flex: the icon, the symptom and the cause are three cells,
       so the cause sits UNDER the symptom instead of beside it */
    .Top-Main-Block .left-block ul.has-notes li {
        display: grid;
        grid-template-columns: 22px 1fr;
        column-gap: 11px;
        row-gap: 2px;
        align-items: start;
        min-height: 0;
        padding: 11px 4px;
        border-right: 0 !important;
        line-height: 1.35;
    }
    .Top-Main-Block .left-block ul.has-notes li::before {
        grid-column: 1;
        grid-row: 1;
        margin-top: 1px;
        color: #2e9e4c;
    }
    .Top-Main-Block .left-block ul.has-notes li strong,
    .Top-Main-Block .left-block ul.has-notes li b {
        grid-column: 2;
        grid-row: 1;
        font-size: 14.5px;
        font-weight: 700;
        color: #16222e;
    }
    .Top-Main-Block .left-block ul.has-notes .li-note {
        grid-column: 2;
        grid-row: 2;
        font-size: 13px;
        line-height: 1.35;
        color: #5b6b7a;
    }
}

/* Desktop keeps one line per item, just with the cause set apart. */
@media only screen and (min-width: 768px) {
    .Top-Main-Block .left-block ul.has-notes .li-note { color: #5b6b7a; }
    .Top-Main-Block .left-block ul.has-notes .li-note::before { content: " \2014 "; color: #9aa7b4; }
}

/* --- MOBILE REDESIGN 2026-09, pass 18 ---
   Availability now lives in the header row, between the logo and the
   hamburger, instead of as a full-width band underneath it.
   Site palette only: navy #1B4F82, red #BC4A3C, green #2e9e4c. */
@media only screen and (max-width: 767px) {

    #navbarCollapse .table-data { width: 100%; }
    #navbarCollapse .cell0 { width: 1%; white-space: nowrap; }

    #navbarCollapse .cell-avail {
        display: table-cell !important;
        width: auto;
        padding: 0 8px;
        vertical-align: middle;
    }
    .MobileMainTopLogo { max-height: 52px; }

    /* the strip itself, now a compact inline pill */
    #navbarCollapse .mobAvail {
        display: flex;
        align-items: center;
        gap: 8px;
        margin: 0;
        padding: 6px 9px;
        border: 1px solid #bfe3c8;
        border-radius: 8px;
        background: #eaf7ee;
    }
    #navbarCollapse .mobAvail-ico { width: 34px; height: 26px; }
    #navbarCollapse .mobAvail-p1 { font-size: 13px; left: 0;  top: 6px; }
    #navbarCollapse .mobAvail-p2 { font-size: 17px; left: 8px; top: 2px; }
    #navbarCollapse .mobAvail-p3 { font-size: 13px; left: 19px; top: 6px; }
    #navbarCollapse .mobAvail-tick { font-size: 12px !important; left: 17px; top: 14px; }
    #navbarCollapse .mobAvail-txt {
        display: block;
        font-size: 11.5px;
        line-height: 1.22;
        font-weight: 600;
        color: #175c31;
    }
    #navbarCollapse .mobAvail-txt strong {
        display: block;
        font-size: 12.5px;
        font-weight: 800;
        color: #0f4a26;
    }
    #navbarCollapse .mobAvail-txt small {
        display: block;
        font-size: 10.5px;
        font-weight: 600;
        color: #3f7a54;
    }
}
@media only screen and (max-width: 400px) {
    #navbarCollapse .mobAvail { padding: 5px 7px; gap: 6px; }
    #navbarCollapse .mobAvail-txt { font-size: 10.5px; }
    #navbarCollapse .mobAvail-txt strong { font-size: 11.5px; }
    #navbarCollapse .mobAvail-txt small { font-size: 9.5px; }
    .MobileMainTopLogo { max-height: 46px; }
}

/* ============================================================
   MOBILE 2026-09, pass 19 — service-page hero to the mockup.
   Site palette only: navy #1B4F82, red #BC4A3C, green #2e9e4c.
   ============================================================ */
#mobHeroCta { display: none; }

@media only screen and (max-width: 767px) {

    /* logo +10% */
    .MobileMainTopLogo { max-height: 57px; }

    /* ---------- H1 + red rule + subtitle ---------- */
    .Top-Main-Block .left-block h1 {
        text-align: left;
        color: #1B4F82;
        letter-spacing: -.3px;
        margin: 14px 0 0 0;
        padding-bottom: 9px;
        position: relative;
    }
    .Top-Main-Block .left-block h1::after {
        content: "";
        position: absolute;
        left: 0; bottom: 0;
        width: 74px; height: 5px;
        border-radius: 3px;
        background: #BC4A3C;
    }
    .Top-Main-Block .left-block h1 + p,
    .Top-Main-Block .left-block h1 + div {
        margin-top: 10px;
    }
    .Top-Main-Block .left-block .Descriton-Service,
    .Top-Main-Block .left-block h1 ~ p > strong:first-child {
        color: #BC4A3C;
    }

    /* ---------- value cards: circular icon + stacked text ---------- */
    .mobCard {
        flex-direction: row;
        justify-content: flex-start;
        gap: 10px;
        padding: 11px 10px;
        min-height: 84px;
        border-color: #7dc98f;
        background: #f2fbf4;
    }
    .mobCard-ico {
        display: flex; align-items: center; justify-content: center;
        width: 42px; min-width: 42px; height: 42px;
        border-radius: 50%;
        background: #2e9e4c;
        color: #fff;
        font-size: 20px;
    }
    .mobCard-lead, .mobCard-row, .mobCard-stack { text-align: left; }
    .mobCard-row { flex-direction: column; align-items: flex-start; gap: 0; }
    .mobCard-row .mobCard-ico { display: none; }
    .mobCard-lead { font-size: 12px; letter-spacing: .3px; }
    .mobCard-row b { font-size: 25px; color: #16803a; }
    .mobCard-stack b { font-size: 25px; color: #16803a; }
    .mobCard-stack small { font-size: 11.5px; }

    /* ---------- hero CTA pair + trust row ---------- */
    #mobHeroCta { display: block; margin: 4px 0 16px 0; }
    .mhc-book, .mhc-call {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        width: 100%;
        min-height: 54px;
        margin-bottom: 10px;
        padding: 12px 16px;
        border-radius: 9px;
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 800;
        font-size: 16.5px;
        line-height: 1.15;
        text-transform: uppercase;
        text-decoration: none !important;
    }
    .mhc-book {
        background: #BC4A3C;
        color: #fff !important;
        box-shadow: 0 2px 6px rgba(0,0,0,.2);
        position: relative;
    }
    .mhc-book .mhc-ico {
        display: flex; align-items: center;
        padding-right: 12px;
        border-right: 1px solid rgba(255,255,255,.45);
    }
    .mhc-book svg { width: 23px; height: 23px; }
    .mhc-book .mhc-arrow { font-size: 24px; line-height: 1; margin-left: 2px; }
    .mhc-call {
        background: #fff;
        color: #1B4F82 !important;
        border: 2px solid #1B4F82;
    }
    .mhc-call svg { width: 19px; height: 19px; }
    .mhc-book:active, .mhc-call:active { transform: translateY(1px); }

    .mhc-trust {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-top: 12px;
    }
    .mhc-trust span {
        flex: 1 1 0;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 5px;
        padding: 0 6px;
        font-size: 11.5px;
        line-height: 1.2;
        color: #23303c;
        text-align: center;
    }
    .mhc-trust span + span { border-left: 1px solid #dcdcdc; }
    .mhc-trust i { font-style: normal; font-weight: 700; color: #2e9e4c; font-size: 13px; }

    /* ---------- "Common problems" cards ---------- */
    .Top-Main-Block .left-block ul.prob-cards {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        border-top: 0;
        margin: 8px 0 16px 0 !important;
    }
    .Top-Main-Block .left-block ul.prob-cards li {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 12px 10px;
        border: 1px solid #e2e9f2;
        border-bottom: 1px solid #e2e9f2;
        border-radius: 10px;
        background: #f4f7fb;
        min-height: 66px;
    }
    .Top-Main-Block .left-block ul.prob-cards li::before { content: none !important; }
    .Top-Main-Block .left-block ul.prob-cards .prob-ico {
        flex: 0 0 auto;
        display: flex; align-items: center; justify-content: center;
        width: 30px; height: 30px;
        color: #1B4F82;
    }
    .Top-Main-Block .left-block ul.prob-cards .prob-ico svg { width: 28px; height: 28px; }
    .Top-Main-Block .left-block ul.prob-cards li strong,
    .Top-Main-Block .left-block ul.prob-cards li b {
        display: block;
        font-size: 13.5px;
        font-weight: 700;
        color: #1B4F82;
        line-height: 1.22;
    }
    .Top-Main-Block .left-block ul.prob-cards .li-note {
        display: block;
        font-size: 11px;
        line-height: 1.25;
        color: #7a8894;
        margin-top: 2px;
    }
}
@media only screen and (max-width: 400px) {
    .MobileMainTopLogo { max-height: 51px; }
    .mhc-book, .mhc-call { font-size: 15px; min-height: 50px; }
    .mhc-trust span { font-size: 10.5px; }
    .mobCard-row b, .mobCard-stack b { font-size: 22px; }
    .Top-Main-Block .left-block ul.prob-cards li { padding: 10px 8px; gap: 8px; }
    .Top-Main-Block .left-block ul.prob-cards li strong { font-size: 12.5px; }
}

/* --- MOBILE 2026-09, pass 20: value cards to the mockup ---
   Both cards: solid green circle with a white outline icon on the left
   (price tag / shield-check), text stacked beside it. */
@media only screen and (max-width: 767px) {
    #mobCards { grid-template-columns: 1fr 1fr; gap: 9px; margin: 12px 0 14px 0; }

    .mobCard {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        min-height: 80px;
        padding: 10px 9px;
        border: 2px solid #7dc98f;
        border-radius: 12px;
        background: #f2fbf4;
        text-align: left;
    }

    .mobCard .mobCard-ico {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        min-width: 42px;
        border-radius: 50%;
        background: #2e9e4c;
        font-size: 0;
    }
    .mobCard .mobCard-ico svg { width: 24px; height: 24px; display: block; }

    .mobCard .mobCard-txt {
        display: flex;
        flex-direction: column;
        justify-content: center;
        line-height: 1.12;
        min-width: 0;
    }
    .mobCard .mobCard-txt b {
        font-family: "Roboto-Bold", Arial, sans-serif;
        font-size: 24px;
        font-weight: 800;
        color: #16803a;
        line-height: 1.05;
        white-space: nowrap;
    }
    .mobCard .mobCard-txt small {
        font-size: 11.5px;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: .2px;
        color: #1e8e3e;
        line-height: 1.2;
    }
}
@media only screen and (max-width: 400px) {
    .mobCard { gap: 8px; padding: 9px 7px; min-height: 74px; }
    .mobCard .mobCard-ico { width: 36px; height: 36px; min-width: 36px; }
    .mobCard .mobCard-ico svg { width: 21px; height: 21px; }
    .mobCard .mobCard-txt b { font-size: 21px; }
    .mobCard .mobCard-txt small { font-size: 10.5px; }
}

/* ============================================================
   MOBILE 2026-09, pass 21 — FIXES for two things I broke.

   1. Pass 20 styled .mobCard-ico as a filled circle with font-size:0.
      That markup only exists after a rebuild; against the markup that
      is actually live it turned the bootstrap glyph into an empty
      green blob and left the text scattered. These rules make BOTH
      the old and the new markup render correctly, so the cards look
      right before and after the rebuild.

   2. Pass 19 set .prob-cards li to display:flex, which overrode the
      grid from pass 17, so the cause ended up beside the symptom in a
      one-word-wide column instead of underneath it.
   ============================================================ */
@media only screen and (max-width: 767px) {

    /* ---------- 1a. old markup (icon is an <i> bootstrap glyph) ---------- */
    .mobCard i.mobCard-ico {
        font-size: 21px !important;
        color: #fff;
        line-height: 42px;
        text-align: center;
    }
    /* the old left card nests label + value + icon; lay it out like the new one */
    .mobCard .mobCard-row {
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
        justify-content: flex-end;
        gap: 10px;
        width: 100%;
    }
    .mobCard .mobCard-lead {
        order: 2;
        font-size: 11.5px;
        font-weight: 800;
        text-transform: uppercase;
        color: #1e8e3e;
    }
    .mobCard:has(.mobCard-row) {
        flex-wrap: wrap;
        align-content: center;
        row-gap: 0;
    }
    .mobCard .mobCard-row b { font-size: 24px; color: #16803a; }
    .mobCard .mobCard-stack { display: flex; flex-direction: column; }
    .mobCard .mobCard-stack b { font-size: 24px; color: #16803a; line-height: 1.05; }
    .mobCard .mobCard-stack small {
        font-size: 11.5px; font-weight: 800; text-transform: uppercase; color: #1e8e3e; line-height: 1.2;
    }

    /* ---------- 2. problem cards: cause UNDER the symptom ---------- */
    .Top-Main-Block .left-block ul.prob-cards li {
        display: grid !important;
        grid-template-columns: 30px 1fr;
        column-gap: 10px;
        row-gap: 1px;
        align-items: center;
    }
    .Top-Main-Block .left-block ul.prob-cards .prob-ico {
        grid-column: 1;
        grid-row: 1 / span 2;
        align-self: center;
    }
    .Top-Main-Block .left-block ul.prob-cards li strong,
    .Top-Main-Block .left-block ul.prob-cards li b { grid-column: 2; grid-row: 1; }
    .Top-Main-Block .left-block ul.prob-cards .li-note { grid-column: 2; grid-row: 2; }

    /* header pill was wrapping to three lines */
    #navbarCollapse .mobAvail-txt strong { white-space: nowrap; }
    #navbarCollapse .mobAvail-txt { font-size: 11px; }
}

/* ============================================================
   MOBILE 2026-09, pass 22 — hero block matched to the mockup.
   Site palette: red #BC4A3C, navy #1B4F82, green #1da84c / #15803d.
   ============================================================ */
@media only screen and (max-width: 767px) {

    /* ---------- value cards ---------- */
    #mobCards { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 12px 0 12px 0; }
    #mobCards .mobCard {
        display: flex; flex-direction: row; align-items: center; justify-content: flex-start;
        gap: 10px; min-height: 78px; padding: 10px 10px;
        border: 1.5px solid #bfe3c8; border-radius: 11px; background: #f4fbf6; text-align: left;
    }
    #mobCards .mobCard-ico {
        flex: 0 0 auto; display: flex; align-items: center; justify-content: center;
        width: 44px; height: 44px; min-width: 44px; border-radius: 50%;
        background: #1da84c; font-size: 0;
    }
    #mobCards .mobCard-ico svg { width: 25px; height: 25px; display: block; }
    #mobCards .mobCard-txt { display: flex; flex-direction: column; justify-content: center; min-width: 0; }
    #mobCards .mobCard-txt b {
        font-family: "Roboto-Bold", Arial, sans-serif; font-size: 25px; font-weight: 800;
        color: #15803d; line-height: 1.04; white-space: nowrap;
    }
    #mobCards .mobCard-txt small {
        font-size: 12px; font-weight: 800; text-transform: uppercase;
        letter-spacing: .2px; color: #1e8e3e; line-height: 1.18;
    }

    /* ---------- book / call ---------- */
    #mobHeroCta { display: block; margin: 0 0 14px 0; }
    .mhc-book, .mhc-call {
        display: flex; align-items: center; justify-content: center; gap: 13px;
        width: 100%; min-height: 56px; margin-bottom: 10px; padding: 12px 14px;
        border-radius: 9px; font-family: "Roboto-Bold", Arial, sans-serif;
        font-weight: 800; font-size: 17px; line-height: 1.12;
        text-transform: uppercase; text-decoration: none !important; letter-spacing: .2px;
    }
    .mhc-book { background: #BC4A3C; color: #fff !important; box-shadow: 0 2px 6px rgba(0,0,0,.18); }
    .mhc-book .mhc-ico {
        display: flex; align-items: center; padding-right: 13px;
        border-right: 1.5px solid rgba(255,255,255,.5);
    }
    .mhc-book .mhc-ico svg { width: 25px; height: 25px; display: block; }
    .mhc-book .mhc-arrow { font-size: 25px; line-height: 1; font-weight: 400; margin-top: -3px; }
    .mhc-call { background: #fff; color: #1B4F82 !important; border: 2px solid #1B4F82; gap: 11px; font-size: 18px; }
    .mhc-call svg { width: 19px; height: 19px; }
    .mhc-book:active, .mhc-call:active { transform: translateY(1px); }

    /* ---------- trust row ---------- */
    .mhc-trust { display: flex; align-items: stretch; margin-top: 12px; }
    .mhc-trust span {
        flex: 1 1 0; display: flex; align-items: center; justify-content: center; gap: 6px;
        padding: 0 5px; font-size: 12px; line-height: 1.2; color: #1b3a5c; text-align: center;
    }
    .mhc-trust span + span { border-left: 1px solid #dde3ea; }
    .mhc-trust i { font-style: normal; font-weight: 800; color: #1da84c; font-size: 14px; }
}
@media only screen and (max-width: 400px) {
    #mobCards .mobCard { gap: 8px; padding: 9px 8px; min-height: 72px; }
    #mobCards .mobCard-ico { width: 38px; height: 38px; min-width: 38px; }
    #mobCards .mobCard-ico svg { width: 22px; height: 22px; }
    #mobCards .mobCard-txt b { font-size: 21px; }
    #mobCards .mobCard-txt small { font-size: 10.5px; }
    .mhc-book { font-size: 15px; gap: 10px; }
    .mhc-call { font-size: 16px; }
    .mhc-trust span { font-size: 10.5px; gap: 4px; }
}

/* pass 22b: keep each trust item on one line at 375px */
@media only screen and (max-width: 767px) {
    .mhc-trust span {
        padding: 0 2px;
        font-size: 11px;
        gap: 5px;
        white-space: nowrap;
    }
    .mhc-trust i { font-size: 13px; }
}
@media only screen and (max-width: 360px) {
    .mhc-trust span { font-size: 10px; gap: 3px; }
}

/* ============================================================
   MOBILE 2026-09, pass 23 — spacing polish on service pages.
   1) breathing room between the logo and the availability pill
   2) tighter breadcrumb bar
   3) gradient on the red "Book" button
   4) symptom cards use the full content width
   Site palette only: navy #1B4F82, red #BC4A3C (dark #8E1C0E),
   green #2e9e4c.
   ============================================================ */
@media only screen and (max-width: 767px) {

    /* 1) the pill starts further from the logo (it had ~57px of slack) */
    #navbarCollapse .cell-avail { padding-left: 18px; padding-right: 6px; }

    /* 2) breadcrumbs: same content, about half the vertical space */
    .BreadcrumbBar { padding: 2px 0 !important; }
    .BreadcrumbList { padding: 4px 14px !important; }

    /* 3) the Book button gets a vertical gradient in the site red */
    .mhc-book {
        background: linear-gradient(180deg, #C9563F 0%, #BC4A3C 52%, #9E3225 100%);
        box-shadow: 0 2px 6px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.18);
    }
    .mhc-book:active {
        background: linear-gradient(180deg, #B14335 0%, #A63A2C 52%, #8E1C0E 100%);
    }

    /* 4) the hero's inner bootstrap column adds 12px of padding on each
       side, so the symptom cards sat narrower than the buttons above
       them. Drop it for the column that holds the list. */
    .Top-Main-Block .left-block .row > [class*="col-"]:has(ul.has-notes),
    .Top-Main-Block .left-block .row > [class*="col-"]:has(ul.prob-cards) {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .Top-Main-Block .left-block ul.prob-cards { gap: 9px; }
    .Top-Main-Block .left-block ul.prob-cards li { padding: 11px 9px; }
}
@media only screen and (max-width: 400px) {
    #navbarCollapse .cell-avail { padding-left: 16px; padding-right: 5px; }
}

/* ============================================================
   MOBILE 2026-09, pass 24.
   1) the sticky bottom "Book service" button gets the same red
      gradient as the hero button
   2) pages that already list brands in their own content do not
      also get the header strip of 20 brand logos
   3) that in-content brand list stops being one logo per row
   ============================================================ */
@media only screen and (max-width: 767px) {

    /* 1) sticky bar, same gradient as .mhc-book */
    #MobileContacts .cell-1 .RedButton {
        background: linear-gradient(180deg, #C9563F 0%, #BC4A3C 52%, #9E3225 100%);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
    }
    #MobileContacts .cell-1 .RedButton:active {
        background: linear-gradient(180deg, #B14335 0%, #A63A2C 52%, #8E1C0E 100%);
    }

    /* 2) no duplicate brand strip when the page body already has one.
       The in-content list is kept because it carries every brand link;
       the strip only repeats 20 of them. */
    body:has(.Def-ListOfBrands) #mobWhy { display: none !important; }

    /* 3) three logos per row instead of one.
       Only for the pages whose brand links sit straight inside the
       container. Where the CMS wrapped them in <p class="MainContentBlock">
       (the home page) the four-across rule further up already handles
       it, and adding a grid here would squeeze that whole grid into
       one 113px column. */
    .Def-ListOfBrands:not(:has(.MainContentBlock)) {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        padding: 8px 0 !important;
    }
    .Def-ListOfBrands:not(:has(.MainContentBlock)) .brand-block {
        width: auto !important;
        margin: 0 !important;
        padding: 8px 4px;
        border: 1px solid #e6e6e6;
        border-radius: 8px;
        background: #fff;
    }
    .Def-ListOfBrands .brand-block a { display: flex; align-items: center; justify-content: center; width: 100%; }
    .Def-ListOfBrands:not(:has(.MainContentBlock)) .brand-block img { max-width: 100%; height: auto; padding: 0 !important; }
}

/* ============================================================
   MOBILE 2026-09, pass 25 — every red button gets the gradient.
   background-image only, so buttons that override the shorthand
   at higher specificity (the navy phone button and the grey one
   in the sticky bar) keep their own colour.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .RedButton,
    .cta-btn-call,
    .sc-btn-book,
    .mobCta-book,
    .MainPhoneNumber,
    .DivPhoneT {
        background-image: linear-gradient(180deg, #C9563F 0%, #BC4A3C 52%, #9E3225 100%);
    }
    .RedButton:active,
    .cta-btn-call:active,
    .sc-btn-book:active,
    .mobCta-book:active,
    .MainPhoneNumber:active {
        background-image: linear-gradient(180deg, #B14335 0%, #A63A2C 52%, #8E1C0E 100%);
    }
}

/* ============================================================
   FIX 2026-09 — [reviews] wrapper collided with its own grid.
   The shortcode renders <div class="reviews-block reviews-grid">
   around a second <div class="reviews-grid">, so the plain
   .reviews-grid rule turned the WRAPPER into a 2-column grid and
   pushed the heading into column 1 and all the cards into column 2.
   Grid now applies only to the inner track. Desktop keeps two
   cards per row, matching the hardcoded blocks it replaces.
   ============================================================ */
.reviews-block { display: block; }
.reviews-block > .reviews-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.reviews-block.reviews-list > .reviews-grid { grid-template-columns: minmax(0, 1fr); }
@media (max-width: 767px) {
    .reviews-block > .reviews-grid { grid-template-columns: minmax(0, 1fr); }
}

/* Grid blocks keep the thin photo frame the hardcoded
   .img-thumbnail markup used to give them. Scroll blocks
   (the coupons) stay frameless, as before. */
.sc-block-grid .sc-block-item img {
    padding: 4px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
}

/* ============================================================
   MOBILE 2026-09, pass 27 — grid blocks scroll sideways on
   phones instead of stacking two per row. Desktop keeps the
   four-across grid.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .sc-block-grid {
        display: flex !important;
        flex-wrap: nowrap;
        gap: 10px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        margin: 0 -14px;
        padding: 2px 14px;
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .sc-block-grid::-webkit-scrollbar { display: none; }
    .sc-block-grid .sc-block-item { flex: 0 0 auto; width: 168px; }
    .sc-block-grid .sc-block-item img { width: 100%; }
}

/* ============================================================
   2026-09, pass 28 — a max height set in Admin -> Shortcodes
   must not squash the picture. The image now keeps its aspect
   ratio (width follows height) and the row centres itself
   instead of stretching every photo to the column width.
   Scroll blocks (coupons) keep their own fixed item width.
   ============================================================ */
.sc-block-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 14px;
}
.sc-block-grid .sc-block-item { width: auto; }
.sc-block-grid .sc-block-item img {
    width: auto;
    max-width: 100%;
    height: auto;
}
@media only screen and (max-width: 767px) {
    .sc-block-grid {
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 10px;
    }
    .sc-block-grid .sc-block-item { flex: 0 0 auto; width: auto; }
    .sc-block-grid .sc-block-item img { width: auto; max-width: 70vw; }
}

/* Scroll blocks (the coupon strip): centre the row on desktop when
   the items do not fill the width. On phones it stays left-aligned
   so the strip still scrolls from the first item. */
@media only screen and (min-width: 768px) {
    .sc-block-scroll { text-align: center; }
    .sc-block-track { justify-content: center; }
}

/* ============================================================
   MOBILE 2026-09, pass 29 — home hero list uses the same cards
   and line icons as the service pages. The list items there are
   plain text (no <strong>), so they need their own type rule.
   The four items hidden by the #section_001 rules above stay
   hidden: an id selector outranks these class selectors.
   ============================================================ */
@media only screen and (max-width: 767px) {
    #section_001 .left-block ul.prob-cards {
        grid-template-columns: 1fr 1fr;
        gap: 9px;
        border-top: 0;
        margin: 10px 0 14px 0 !important;
    }
    #section_001 .left-block ul.prob-cards li {
        display: flex;
        align-items: center;
        gap: 10px;
        min-height: 60px;
        padding: 11px 9px;
        border: 1px solid #e2e9f2 !important;
        border-radius: 10px;
        background: #f4f7fb;
        font-size: 12.5px;
        font-weight: 700;
        line-height: 1.22;
        color: #1B4F82;
        text-align: left;
    }
    #section_001 .left-block ul.prob-cards li::before { content: none !important; }
    #section_001 .left-block ul.prob-cards .prob-ico {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        color: #1B4F82;
    }
    #section_001 .left-block ul.prob-cards .prob-ico svg { width: 26px; height: 26px; }
}

/* ...and keep the four the mobile layout deliberately leaves out:
   the card rule above has the same weight as the hiding rule, so it
   would otherwise win by coming later in the file. */
@media only screen and (max-width: 767px) {
    #section_001 .left-block ul.prob-cards li:nth-child(1),
    #section_001 .left-block ul.prob-cards li:nth-child(2),
    #section_001 .left-block ul.prob-cards li:nth-child(3),
    #section_001 .left-block ul.prob-cards li:nth-child(8) { display: none !important; }
}

/* The red gradient must only land on buttons that are actually red.
   The home hero has three .MainPhoneNumber buttons: navy "Call now",
   red "Book online" and the white outlined "Service area" - the
   gradient was painting over the navy and the white ones. */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .left-block .row .col-md-4:nth-child(3) .MainPhoneNumber {
        background-image: none !important;
    }
}

/* ============================================================
   MOBILE 2026-09, pass 30 — content sections that sat flush with
   the screen edge ("Brands We Work With" and anything else using
   a bare .container.max-width.MainContentBlock) get the same 14px
   side gutter as the rest of the page.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .section-row > .container.max-width.MainContentBlock,
    .setion-row > .container.max-width.MainContentBlock {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}

/* ============================================================
   MOBILE 2026-09, pass 31 — testimonials scroll sideways on
   phones, one card at a time, like the photo and coupon strips.
   Desktop keeps the two-per-row grid.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .reviews-block > .reviews-grid {
        display: flex;
        flex-wrap: nowrap;
        gap: 10px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        margin: 0 -14px;
        padding: 2px 14px 6px 14px;
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .reviews-block > .reviews-grid::-webkit-scrollbar { display: none; }
    .reviews-block > .reviews-grid > .review-card {
        flex: 0 0 86%;
        scroll-snap-align: start;
    }
}

/* ============================================================
   MOBILE 2026-09, pass 32 — the service write-ups on the home
   page sat flush with both screen edges. The ≤560px rule that
   kills double padding on nested article containers had also
   removed their gutter, so give it back on the content rows.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .setion-row > .container.max-width > .row.GlobalContentPadding,
    .section-row > .container.max-width > .row.GlobalContentPadding {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}

/* ============================================================
   MOBILE 2026-09, pass 33.
   a) plain-text hero lists (fridge "Common Refrigerator Issues",
      and any other page without the symptom/cause split) get the
      same icon cards as the home page
   b) home brand wall scrolls sideways instead of being a tall
      inner scroll box
   c) mobile menu tidied up
   d) pages with their own hero (appliance installation) no longer
      show the layout's stray Book/Call pair above everything
   ============================================================ */

/* ---------- a) plain hero lists as cards ---------- */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .left-block ul.plain-cards {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 9px;
        border-top: 0;
        margin: 10px 0 16px 0 !important;
    }
    .Top-Main-Block .left-block ul.plain-cards li {
        display: flex;
        align-items: center;
        gap: 10px;
        min-height: 60px;
        padding: 11px 9px;
        border: 1px solid #e2e9f2 !important;
        border-radius: 10px;
        background: #f4f7fb;
        font-size: 12.5px;
        font-weight: 700;
        line-height: 1.22;
        color: #1B4F82;
        text-align: left;
    }
    .Top-Main-Block .left-block ul.plain-cards li::before { content: none !important; }
    .Top-Main-Block .left-block ul.plain-cards .prob-ico {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        color: #1B4F82;
    }
    .Top-Main-Block .left-block ul.plain-cards .prob-ico svg { width: 26px; height: 26px; }
    /* an odd last item spans the full width instead of leaving a gap */
    .Top-Main-Block .left-block ul.plain-cards li:last-child:nth-child(odd) { grid-column: 1 / -1; }
}

/* ---------- b) brand wall scrolls sideways on the home page ---------- */
@media only screen and (max-width: 767px) {
    .Def-ListOfBrands:has(.MainContentBlock) {
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        margin: 16px 0 !important;
    }
    .Def-ListOfBrands .MainContentBlock {
        grid-template-columns: none !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 92px;
        grid-template-rows: repeat(2, auto);
        gap: 8px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        padding: 2px 14px !important;
        margin: 0 -14px !important;
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .Def-ListOfBrands .MainContentBlock::-webkit-scrollbar { display: none; }
}

/* ---------- c) mobile menu ---------- */
@media only screen and (max-width: 767px) {
    #MenuNavigate { padding: 6px 12px 22px 12px; background: #fff; }
    #MenuNavigate .menu_item { margin: 2px 0; }
    #MenuNavigate .menu_item > .ItemMenu {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 13px 10px;
        font-size: 14px;
        letter-spacing: .4px;
        color: #1B4F82;
        border-bottom: 1px solid #e8edf3;
    }
    #MenuNavigate .menu_item > .ItemMenu .bi-chevron-down { font-size: 13px; color: #8b9bad; }
    #MenuNavigate .menu_item > .ItemMenu:hover { background: #f4f7fb; border-radius: 8px; }
    #MenuNavigate .Popup-submenu { padding: 2px 0 8px 0; }
    #MenuNavigate .Popup-submenu .Sub-Item {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 10px 10px;
        border-bottom: 1px solid #f0f2f5;
        border-radius: 8px;
        font-size: 14.5px;
        color: #23303c;
    }
    #MenuNavigate .Popup-submenu .Sub-Item:active { background: #f4f7fb; }
    #MenuNavigate .Popup-submenu .appliance-icon,
    #MenuNavigate .Popup-submenu .area-icon {
        width: 34px !important;
        height: 34px;
        margin: 0 !important;
        padding: 5px !important;
        border: 1px solid #e8edf3;
        border-radius: 8px;
        background: #f7f9fc;
        object-fit: contain;
    }
    #MenuNavigate .Popup-submenu .brand-icon {
        width: 54px !important;
        height: 30px;
        margin: 0 !important;
        padding: 3px !important;
        object-fit: contain;
    }
    #MenuNavigate .Sub-Item-link {
        display: block;
        width: 100%;
        font-size: 14px;
        letter-spacing: .4px;
        color: #1B4F82 !important;
        text-decoration: none !important;
    }
    #MenuNavigate .menu_item.align-top > .ItemMenu { padding: 13px 10px; }
}

/* ---------- d) no stray hero CTA on pages that build their own ---------- */
@media only screen and (max-width: 767px) {
    body:not(:has(.Top-Main-Block .left-block)) #mobHeroCta,
    body:not(:has(.Top-Main-Block .left-block)) #mobCards { display: none !important; }
}

/* ============================================================
   2026-09, pass 34 — "Service area map + Book appointment".
   Map on the left, booking card on the right; stacked on phones.
   Site palette: navy #1B4F82, red #BC4A3C.
   ============================================================ */
.sam-row { padding: 28px 0; background: #f4f7fb; }
.sam-grid {
    display: grid;
    grid-template-columns: 1.35fr 1fr;
    gap: 22px;
    align-items: stretch;
}
.sam-col-map { display: flex; flex-direction: column; }
.sam-col-map h2 {
    margin: 0 0 12px 0;
    font-size: 24px;
    font-weight: 800;
    color: #1B4F82;
    text-transform: uppercase;
    letter-spacing: .3px;
}
#sam_map {
    position: relative;
    flex: 1;
    min-height: 320px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #dde4ec;
    background: #e9eef4;
}
#sam_map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }

/* Borough map: the four boroughs we cover are filled, the rest is muted. */
#sam_map { display: flex; flex-direction: column; justify-content: center; padding: 10px 10px 6px 10px; background: #eef3f8; }
#sam_map svg { width: 100%; height: auto; max-height: 340px; display: block; }
.sam-boro { stroke: #fff; stroke-width: 3; stroke-linejoin: round; }
.sam-boro.is-on { fill: #1B4F82; }
.sam-boro.is-off { fill: #cdd7e2; }
.sam-boro-label {
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-size: 31px;
    font-weight: 800;
    text-anchor: middle;
    paint-order: stroke fill;
    stroke: rgba(255,255,255,.85);
    stroke-width: 5;
}
.sam-boro-label.is-on { fill: #fff; stroke: rgba(22,63,104,.55); }
.sam-boro-label.is-out { fill: #1B4F82; stroke: #eef3f8; stroke-width: 6; }
.sam-boro-label.is-off { fill: #7e8ea0; }
.sam-map-legend {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    font-size: 12.5px;
    color: #5b6b7a;
}
.sam-map-legend .sam-key { width: 12px; height: 12px; border-radius: 3px; display: inline-block; }
.sam-map-legend .sam-key.is-on { background: #1B4F82; }
.sam-map-legend .sam-key.is-off { background: #cdd7e2; margin-left: 10px; }
.sam-map-note { margin: 10px 0 0 0; font-size: 14px; color: #5b6b7a; }

.sam-card {
    padding: 22px 20px;
    border-radius: 12px;
    background: linear-gradient(180deg, #1f5a94 0%, #1B4F82 55%, #163f68 100%);
    box-shadow: 0 6px 18px rgba(0,0,0,.18);
    color: #fff;
}
.sam-card-head {
    margin-bottom: 14px;
    font-size: 21px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .4px;
}
.sam-card input[type="text"],
.sam-card input[type="tel"] {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    padding: 12px 13px;
    border: 1px solid #cfd9e4;
    border-radius: 8px;
    background: #fff;
    color: #23303c;
    font-size: 15px;
}
.sam-card input::placeholder { color: #8b9bad; }
.sam-check {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 4px 0 14px 0;
    font-size: 12.5px;
    line-height: 1.35;
    color: #dfe9f4;
    cursor: pointer;
}
.sam-check input { margin-top: 2px; width: 16px; height: 16px; flex: 0 0 auto; }
.sam-btn {
    display: block;
    width: 100%;
    min-height: 50px;
    border: 0;
    border-radius: 9px;
    background: linear-gradient(180deg, #C9563F 0%, #BC4A3C 52%, #9E3225 100%);
    color: #fff;
    font-family: "Roboto-Bold", Arial, sans-serif;
    font-weight: 800;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: .3px;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.18);
}
.sam-btn:active { background: linear-gradient(180deg, #B14335 0%, #A63A2C 52%, #8E1C0E 100%); transform: translateY(1px); }
.sam-btn[disabled] { opacity: .75; cursor: default; }
.sam-result { margin-top: 10px; font-size: 13.5px; line-height: 1.35; min-height: 18px; }
.sam-result-ok { color: #cdf3d8; }
.sam-result-bad { color: #ffd7cf; }

@media only screen and (max-width: 767px) {
    .sam-row { padding: 18px 0; }
    .sam-row > .container.max-width { padding-left: 14px !important; padding-right: 14px !important; }
    .sam-grid { grid-template-columns: 1fr; gap: 16px; }
    .sam-col-map h2 { font-size: 19px; text-align: center; }
    #sam_map { min-height: 230px; }
    .sam-map-note { font-size: 13px; text-align: center; }
    .sam-card { padding: 18px 16px; }
    .sam-card-head { font-size: 18px; text-align: center; }
}

/* ============================================================
   MOBILE 2026-09, pass 35 — in-content lists on service pages.
   a) "Common ... Issues We Deal With" as icon cards
   b) "Common ... Replacement Parts" as chips
   c) the brand wall scrolls sideways on service pages too
   ============================================================ */
@media only screen and (max-width: 767px) {

    /* a) issue cards */
    .Top-Main-Block ul.issue-cards {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 9px;
        margin: 10px 0 18px 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }
    .Top-Main-Block ul.issue-cards li {
        display: flex;
        align-items: center;
        gap: 10px;
        min-height: 60px;
        margin: 0 !important;
        padding: 11px 9px;
        border: 1px solid #e2e9f2;
        border-radius: 10px;
        background: #f4f7fb;
        font-size: 12.5px;
        font-weight: 700;
        line-height: 1.22;
        color: #1B4F82;
        list-style: none !important;
    }
    .Top-Main-Block ul.issue-cards li::before,
    .Top-Main-Block ul.issue-cards li::marker { content: none !important; }
    .Top-Main-Block ul.issue-cards .prob-ico {
        flex: 0 0 auto;
        display: flex; align-items: center; justify-content: center;
        width: 28px; height: 28px;
        color: #1B4F82;
    }
    .Top-Main-Block ul.issue-cards .prob-ico svg { width: 26px; height: 26px; }
    .Top-Main-Block ul.issue-cards li:last-child:nth-child(odd) { grid-column: 1 / -1; }

    /* b) replacement parts as chips */
    .Top-Main-Block ul.parts-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 7px;
        margin: 10px 0 18px 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }
    .Top-Main-Block ul.parts-chips li {
        margin: 0 !important;
        padding: 7px 12px;
        border: 1px solid #dde4ec;
        border-radius: 999px;
        background: #f7f9fc;
        font-size: 12.5px;
        line-height: 1.2;
        color: #23303c;
        list-style: none !important;
    }
    .Top-Main-Block ul.parts-chips li::before,
    .Top-Main-Block ul.parts-chips li::marker { content: none !important; }

    /* c) brand wall: same sideways strip the home page uses */
    .Def-ListOfBrands:not(:has(.MainContentBlock)) {
        display: grid !important;
        grid-auto-flow: column;
        grid-auto-columns: 92px;
        grid-template-rows: repeat(2, 80px);
        grid-template-columns: none !important;
        max-height: none !important;
        overflow-x: auto;
        overflow-y: hidden;
        gap: 8px;
        padding: 2px 14px !important;
        margin: 8px -14px !important;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .Def-ListOfBrands:not(:has(.MainContentBlock))::-webkit-scrollbar { display: none; }
    .Def-ListOfBrands:not(:has(.MainContentBlock)) .brand-block {
        width: auto !important;
        height: 80px;
        min-height: 0;
        margin: 0 !important;
    }
}

/* The brand wall used to be a fixed-height box with its own scrollbar
   (.global-hide-toll-element). Now that it is a sideways strip, drop the
   box so the two rows size themselves. */
@media only screen and (max-width: 767px) {
    .Def-ListOfBrands.global-hide-toll-element {
        height: auto !important;
        max-height: none !important;
        border: 0 !important;
        background: transparent !important;
        overflow-y: hidden !important;
    }
}

/* reCAPTCHA inside the booking card: appears once the visitor starts
   typing, scaled to fit the card on narrow phones. */
.sam-captcha { margin: 2px 0 12px 0; min-height: 78px; }
.sam-captcha > div { max-width: 100%; }
@media only screen and (max-width: 400px) {
    .sam-captcha { transform: scale(.92); transform-origin: left top; min-height: 72px; }
}

/* ============================================================
   2026-09, pass 36.
   a) the navy buttons get a gradient of their own, matching the
      treatment the red ones already have
   b) the brand wall loses its grey panel everywhere, not only on
      phones
   ============================================================ */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .left-block .row .col-md-4:nth-child(1) .MainPhoneNumber,
    .Top-Main-Block .left-block .row .col-md-6:nth-child(1) .MainPhoneNumber,
    #MobileContacts .cell-0 .RedButton,
    .mobCta-call,
    .sc-btn-call,
    .cta-btn-book {
        background-image: linear-gradient(180deg, #23608F 0%, #1B4F82 52%, #143D66 100%);
    }
    .Top-Main-Block .left-block .row .col-md-4:nth-child(1) .MainPhoneNumber:active,
    #MobileContacts .cell-0 .RedButton:active,
    .mobCta-call:active,
    .sc-btn-call:active,
    .cta-btn-book:active {
        background-image: linear-gradient(180deg, #1B4F82 0%, #17457090 52%, #102F4F 100%);
    }
    /* the third sticky-bar button keeps its own grey */
    #MobileContacts .cell-2 .RedButton { background-image: none; }
}

/* b) no grey panel behind the brand logos */
.Def-ListOfBrands.global-hide-toll-element,
.Def-ListOfBrands {
    background: transparent !important;
    border: 0 !important;
}

/* (the grey row around the brand wall is gone from the markup itself,
   so the override that whitened it is no longer needed) */

/* ============================================================
   MOBILE 2026-09, pass 37 — "Average repair" label keeps to one
   line. It is the <small> that comes FIRST in a value card (the
   label-above-number card); the other card puts its <small> after
   the <b>, and that one must still wrap.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .mobCard .mobCard-txt small:first-child {
        white-space: nowrap !important;
        font-size: 11px !important;
        letter-spacing: 0 !important;
    }
    .mobCard { gap: 7px; padding: 11px 7px; }
    .mobCard-ico { width: 32px; min-width: 32px; height: 32px; font-size: 16px; }
    /* keep both cards the same width: the no-wrap label must not stretch
       its own column */
    #mobCards .mobCard { min-width: 0; }
}
@media only screen and (max-width: 360px) {
    .mobCard .mobCard-txt small:first-child { font-size: 10px !important; }
    .mobCard { gap: 6px; padding: 10px 6px; }
    .mobCard-ico { width: 29px; min-width: 29px; height: 29px; font-size: 14px; }
}
/* Below this the label cannot fit on one line without shrinking to an
   unreadable size, so let it wrap again on the smallest phones. */
@media only screen and (max-width: 340px) {
    .mobCard .mobCard-txt small:first-child { white-space: normal !important; font-size: 10px !important; }
}

/* ============================================================
   MOBILE 2026-09, pass 38 — tighten the space around the hero
   subtitle ("Your Local ... Repair Company"): it had 10px above
   and 20px below, which left the red rule and the value cards
   floating away from it.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .left-block h1 { padding-bottom: 7px !important; }
    .Top-Main-Block .left-block .Descriton-Service {
        margin-top: 5px !important;
        margin-bottom: 9px !important;
    }
    #mobCards { margin: 8px 0 !important; }
}

/* ============================================================
   MOBILE 2026-09, pass 39 — the "... Across All Brands" heading
   sat in 44px of its own padding and margin, inside a section row
   that added another 24px top and bottom. Tighten both.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .Top-Main-Block h2.GlobalContentPadding2,
    .Top-Main-Block h3.GlobalContentPadding2 {
        padding-top: 2px !important;
        padding-bottom: 2px !important;
        margin-top: 14px !important;
        margin-bottom: 6px !important;
    }
    .setion-row:has(.Def-ListOfBrands),
    .section-row:has(.Def-ListOfBrands) {
        padding-top: 4px !important;
        padding-bottom: 8px !important;
    }
}

/* ============================================================
   MOBILE 2026-09, pass 40 — technician case studies scroll
   sideways, one card at a time, like the reviews and the photo
   strip. Their cards were also fixed at 240px with the body text
   capped at 150px, which cut the resolution text off mid-sentence;
   both now size to their content.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .review-block {
        display: flex !important;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 10px;
        height: auto !important;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        margin: 8px -14px 14px -14px !important;
        padding: 2px 14px 8px 14px;
        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
                mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), transparent 100%);
    }
    .Top-Main-Block .review-block::-webkit-scrollbar { display: none; }
    .Top-Main-Block .review-block .Item {
        flex: 0 0 86%;
        width: auto !important;
        height: auto !important;
        min-height: 0;
        margin: 0 !important;
        scroll-snap-align: start;
        overflow: visible;
    }
    .Top-Main-Block .review-block .review-content {
        height: auto !important;
        overflow: visible !important;
    }
}

/* ============================================================
   MOBILE 2026-09, pass 41 — "Types of ... appliances we deal
   with": four bootstrap columns that stacked into four very tall
   full-width images. Now a 2x2 card grid, picture above label.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .Top-Main-Block .row.text-center:has(> [class*="col-"] > img),
    .Top-Main-Block .row.text-center:has(> [class*="col-"] > h4 + img) {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin: 10px 0 16px 0 !important;
    }
    .Top-Main-Block .row.text-center:has(> [class*="col-"] > h4 + img) > [class*="col-"] {
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        justify-content: flex-end;
        gap: 8px;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        padding: 10px 8px;
        border: 1px solid #e2e9f2;
        border-radius: 10px;
        background: #f7f9fc;
    }
    .Top-Main-Block .row.text-center:has(> [class*="col-"] > h4 + img) h4 {
        margin: 0;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.2;
        color: #1B4F82;
    }
    .Top-Main-Block .row.text-center:has(> [class*="col-"] > h4 + img) img {
        max-height: 92px !important;
        width: auto;
        max-width: 100%;
        margin: 0;
    }
}

/* ==================================================================
   Pass 42 - Service-areas hero map.
   The map replaces the old photo in the hero column. It is scaled
   down a fifth on desktop and given breathing room above and below,
   so it does not crowd the intro text or the first area panel.
   Scoped to .Top-Main-Block so the home-page map (.sam-row) keeps
   its own size.
   ================================================================== */
.Top-Main-Block .sam-col-map {
    margin: 16px 0 22px 0;
}
.Top-Main-Block .sam-col-map #sam_map {
    min-height: 0;
    padding: 8px 8px 4px 8px;
}
.Top-Main-Block .sam-col-map #sam_map svg {
    max-height: 272px;   /* 340px - 20% */
}
@media only screen and (min-width: 768px) {
    .Top-Main-Block .sam-col-map #sam_map {
        width: 80%;
        max-width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
}
@media only screen and (max-width: 767px) {
    .Top-Main-Block .sam-col-map {
        margin: 12px 0 16px 0;
    }
}

/* ==================================================================
   Pass 43 - Brand logo wall on /brands/ at phone width.
   .MainContentBlock .brand-block sizes itself with width:12vw, which
   is fine on a desktop and collapses to 47px on a 390px screen - five
   unreadable logos per row. On mobile the wall becomes a 3-column
   grid of proper cards instead. The strips inside .Def-ListOfBrands
   keep their own sideways-scroll treatment, so they are excluded.
   ================================================================== */
@media only screen and (max-width: 767px) {
    .MainContentBlock:has(.brand-block):not(.Def-ListOfBrands .MainContentBlock) {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        margin: 12px 0 !important;
        padding: 0 !important;
    }
    .MainContentBlock:has(.brand-block) .brand-block {
        width: auto !important;
        max-width: none !important;
        height: auto !important;
        min-height: 62px;
        margin: 0 !important;
        padding: 10px 8px;
        display: flex !important;
        align-items: center;
        justify-content: center;
        border: 1px solid #e2e9f2;
        border-radius: 10px;
        background: #fff;
    }
    .MainContentBlock:has(.brand-block) .brand-block:before { content: none !important; }
    .MainContentBlock:has(.brand-block) .brand-block img {
        max-width: 100% !important;
        max-height: 36px !important;
        width: auto;
        height: auto;
    }
}
@media only screen and (max-width: 360px) {
    .MainContentBlock:has(.brand-block):not(.Def-ListOfBrands .MainContentBlock) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ==================================================================
   Pass 44 - keep the aspect ratio now that images carry width/height.
   The width and height attributes added for CLS are presentational
   hints: a browser uses them as the real width and height for any
   axis that CSS leaves unset. So a rule like
       .GlobalSocialIcons img { width: 32px; }
   left height coming from the attribute - the Google icon rendered
   32 x 173 instead of 32 x 28. Defaulting height to auto turns the
   attribute pair back into a pure aspect-ratio hint, which is what
   reserves the space without dictating the size. This is the same
   one-liner WordPress and Bootstrap ship for exactly this reason.
   It has the lowest possible specificity, so every existing rule
   that really wants a fixed height still wins.
   ================================================================== */
img {
    height: auto;
}

/* The few places that set a height and leave width to the attribute need
   the mirror of the same rule, or they stretch sideways instead. */
.Appliances-Block .Icon-place img,
.appliance-icon,
.brand-icon {
    width: auto;
}

/* ---- css/bootstrap_mini3.css ---- */
@charset "UTF-8";/*!
 * Bootstrap  v5.3.0-alpha1 (https://getbootstrap.com/)
 * Copyright 2011-2022 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */p,ul{margin-top:0;margin-bottom:1rem}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.g-0,.row{--bs-gutter-y:0}.table,address,p,ul{margin-bottom:1rem}.form-check-input:focus,.form-control:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}.btn,.form-control[type=file]:not(:disabled):not([readonly]),[role=button],[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}.btn-dark,.btn-light,.btn-primary{--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn,.btn-link{--bs-btn-font-weight:400}.form-check-input,.navbar-toggler-icon{background-repeat:no-repeat;background-position:center}.border-dark,.border-light,.border-primary,.border-white{--bs-border-opacity:1}.text-black,.text-black-50,.text-body,.text-dark,.text-light,.text-primary,.text-white,.text-white-50{--bs-text-opacity:1}.bg-black,.bg-body,.bg-dark,.bg-light,.bg-primary,.bg-transparent,.bg-white{--bs-bg-opacity:1}:root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:#FF4917;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text:#0a58ca;--bs-secondary-text:#6c757d;--bs-success-text:#146c43;--bs-info-text:#087990;--bs-warning-text:#997404;--bs-danger-text:#b02a37;--bs-light-text:#6c757d;--bs-dark-text:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#f8f9fa;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#e9ecef;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33,37,41,.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33,37,41,.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0,0,0,.175);--bs-border-radius:.375rem;--bs-border-radius-sm:.25rem;--bs-border-radius-lg:.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-2xl:2rem;--bs-border-radius-pill:50rem;--bs-box-shadow:0 .5rem 1rem rgba(var(--bs-body-color-rgb),.15);--bs-box-shadow-sm:0 .125rem .25rem rgba(var(--bs-body-color-rgb),.075);--bs-box-shadow-lg:0 1rem 3rem rgba(var(--bs-body-color-rgb),.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(var(--bs-body-color-rgb),.075);--bs-emphasis-color:#000;--bs-form-control-bg:var(--bs-body-bg);--bs-form-control-disabled-bg:var(--bs-secondary-bg);--bs-highlight-bg:#fff3cd;--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}[data-bs-theme=dark]{--bs-body-color:#adb5bd;--bs-body-color-rgb:173,181,189;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#f8f9fa;--bs-emphasis-color-rgb:248,249,250;--bs-secondary-color:rgba(173,181,189,.75);--bs-secondary-color-rgb:173,181,189;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(173,181,189,.5);--bs-tertiary-color-rgb:173,181,189;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-emphasis-color:#fff;--bs-primary-text:#6ea8fe;--bs-secondary-text:#dee2e6;--bs-success-text:#75b798;--bs-info-text:#6edff6;--bs-warning-text:#ffda6a;--bs-danger-text:#ea868f;--bs-light-text:#f8f9fa;--bs-dark-text:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#212529;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#495057;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#055160;--bs-warning-border-subtle:#664d03;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:#fff;--bs-link-color:#6ea8fe;--bs-link-hover-color:#9ec5fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:158,197,254;--bs-code-color:#e685b5;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255,255,255,.15)}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;color:var(--bs-heading-color,inherit)}.h4,.h5,.h6,h4,h5,h6{font-weight:700}.h1,h1{font-size:26px}.h2,h2{font-size:24px}.h3,h3{font-size:20px}.h4,h4{font-size:18px}.h5,h5{font-size:17px}.h6,h6{font-size:16px}address{font-style:normal;line-height:inherit}ul{padding-left:2rem}ul ul{margin-bottom:0}b{font-weight:bolder}sub{position:relative;font-size:.75em;line-height:0;vertical-align:baseline;bottom:-.25em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}tbody,td,tr{border:0 solid;border-color:inherit}button{border-radius:0;text-transform:none}button:focus:not(:focus-visible){outline:0}button,input{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}::-moz-focus-inner{padding:0;border-style:none}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}.display-1,.display-2,.display-3,.display-4,.display-5,.display-6{font-weight:300;line-height:1.2}.d-none,[hidden]{display:none!important}.display-1{font-size:calc(1.625rem + 4.5vw)}.display-2{font-size:calc(1.575rem + 3.9vw)}.display-3{font-size:calc(1.525rem + 3.3vw)}.display-4{font-size:calc(1.475rem + 2.7vw)}.display-5{font-size:calc(1.425rem + 2.1vw)}.display-6{font-size:calc(1.375rem + 1.5vw)}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.container,.container-fluid,.container-lg,.container-md,.container-sm,.row>*{width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5)}.container,.container-fluid,.container-lg,.container-md,.container-sm{--bs-gutter-x:1.5rem;--bs-gutter-y:0;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}.col-sm{flex:1 0 0%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.g-sm-0{--bs-gutter-x:0;--bs-gutter-y:0}.g-sm-1{--bs-gutter-x:.25rem;--bs-gutter-y:.25rem}.g-sm-2{--bs-gutter-x:.5rem;--bs-gutter-y:.5rem}.g-sm-3{--bs-gutter-x:1rem;--bs-gutter-y:1rem}.g-sm-4{--bs-gutter-x:1.5rem;--bs-gutter-y:1.5rem}.g-sm-5{--bs-gutter-x:3rem;--bs-gutter-y:3rem}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}.col-md{flex:1 0 0%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.g-md-0{--bs-gutter-x:0;--bs-gutter-y:0}.g-md-1{--bs-gutter-x:.25rem;--bs-gutter-y:.25rem}.g-md-2{--bs-gutter-x:.5rem;--bs-gutter-y:.5rem}.g-md-3{--bs-gutter-x:1rem;--bs-gutter-y:1rem}.g-md-4{--bs-gutter-x:1.5rem;--bs-gutter-y:1.5rem}.g-md-5{--bs-gutter-x:3rem;--bs-gutter-y:3rem}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}.col-lg{flex:1 0 0%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.g-lg-0{--bs-gutter-x:0;--bs-gutter-y:0}.g-lg-1{--bs-gutter-x:.25rem;--bs-gutter-y:.25rem}.g-lg-2{--bs-gutter-x:.5rem;--bs-gutter-y:.5rem}.g-lg-3{--bs-gutter-x:1rem;--bs-gutter-y:1rem}.g-lg-4{--bs-gutter-x:1.5rem;--bs-gutter-y:1.5rem}.g-lg-5{--bs-gutter-x:3rem;--bs-gutter-y:3rem}}@media (min-width:1200px){.display-1{font-size:5rem}.display-2{font-size:4.5rem}.display-3{font-size:4rem}.display-4{font-size:3.5rem}.display-5{font-size:3rem}.display-6{font-size:2.5rem}.container,.container-lg,.container-md,.container-sm{max-width:1140px}}.row{--bs-gutter-x:1.5rem;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;max-width:100%;margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2,.col-3{flex:0 0 auto}.col-2{width:16.66666667%}.col-3{width:25%}.col-4,.col-5{flex:0 0 auto}.col-4{width:33.33333333%}.col-5{width:41.66666667%}.col-6,.col-7{flex:0 0 auto}.col-6{width:50%}.col-7{width:58.33333333%}.col-8,.col-9{flex:0 0 auto}.col-8{width:66.66666667%}.col-9{width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.g-0{--bs-gutter-x:0}.g-1{--bs-gutter-x:.25rem;--bs-gutter-y:.25rem}.g-2{--bs-gutter-x:.5rem;--bs-gutter-y:.5rem}.g-3{--bs-gutter-x:1rem;--bs-gutter-y:1rem}.g-4{--bs-gutter-x:1.5rem;--bs-gutter-y:1.5rem}.g-5{--bs-gutter-x:3rem;--bs-gutter-y:3rem}.nav-fill .nav-item .nav-link,.table{width:100%}.table{--bs-table-color:var(--bs-body-color);--bs-table-bg:transparent;--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-body-color);--bs-table-striped-bg:rgba(0,0,0,.05);--bs-table-active-color:var(--bs-body-color);--bs-table-active-bg:rgba(0,0,0,.1);--bs-table-hover-color:var(--bs-body-color);--bs-table-hover-bg:rgba(0,0,0,.075);color:var(--bs-table-color);vertical-align:top;border-color:var(--bs-table-border-color)}.table-light,.table-primary{--bs-table-color:#000;--bs-table-striped-color:#000;--bs-table-active-color:#000;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table-sm>:not(caption)>*>*{padding:.25rem}.table-primary{--bs-table-bg:#cfe2ff;--bs-table-border-color:#bacbe6;--bs-table-striped-bg:#c5d7f2;--bs-table-active-bg:#bacbe6;--bs-table-hover-bg:#bfd1ec}.table-light{--bs-table-bg:#f8f9fa;--bs-table-border-color:#dfe0e1;--bs-table-striped-bg:#ecedee;--bs-table-active-bg:#dfe0e1;--bs-table-hover-bg:#e5e6e7}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#373b3e;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control,.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-form-control-bg)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.375rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[type=file]{overflow:hidden}.form-control:focus{border-color:#86b7fe}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-form-control-disabled-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border:0 solid;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;border-color:inherit}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border:0 solid;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;border-color:inherit}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-sm{min-height:calc(1.5em + .5rem +) calc(var(--bs-border-width) * 2) );padding:.25rem .5rem;font-size:.875rem;border-radius:.25rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem +) calc(var(--bs-border-width) * 2) );padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.nav,.navbar-nav{--bs-nav-link-padding-y:.5rem;margin-bottom:0;list-style:none}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg:var(--bs-form-control-bg);width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.btn,.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg)}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label{cursor:default;opacity:.5}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}.btn{--bs-btn-padding-x:.75rem;--bs-btn-padding-y:.375rem;--bs-btn-font-size:1rem;--bs-btn-line-height:1.5;--bs-btn-color:#212529;--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:.375rem;--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);--bs-btn-disabled-opacity:.65;--bs-btn-focus-box-shadow:0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb),.5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);text-align:center;text-decoration:none;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark,.btn-outline-primary{--bs-btn-hover-color:#fff;--bs-btn-active-color:#fff}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-dark,.btn-outline-light,.btn-outline-primary{--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,.125);--bs-btn-disabled-bg:transparent;--bs-gradient:none}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-disabled-color:#212529;--bs-btn-disabled-border-color:#212529}.btn-link{--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:none;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-close:hover,.nav-link,.navbar-brand,.navbar-toggler:hover,.page-link{text-decoration:none}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg{--bs-btn-padding-y:.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:.5rem}.btn-sm{--bs-btn-padding-y:.25rem;--bs-btn-padding-x:.5rem;--bs-btn-font-size:.875rem;--bs-btn-border-radius:.25rem}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb),.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb),.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb),.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-nav-link-padding-x:.5rem;--bs-navbar-toggler-padding-y:.25rem;--bs-navbar-toggler-padding-x:.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb),.15);--bs-navbar-toggler-border-radius:.375rem;--bs-navbar-toggler-focus-width:.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar-dark,[data-bs-theme=dark] .navbar{--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);white-space:nowrap}.navbar-text,.navbar-toggler{color:var(--bs-navbar-color)}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0}.navbar-nav .show>.nav-link,.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-text{padding-top:.5rem;padding-bottom:.5rem}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-size:100%}.navbar-dark{--bs-navbar-color:rgba(255,255,255,.55);--bs-navbar-hover-color:rgba(255,255,255,.75);--bs-navbar-disabled-color:rgba(255,255,255,.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255,255,255,.1)}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.btn-close,.btn-close:hover{color:var(--bs-btn-close-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity:.5;--bs-btn-close-hover-opacity:.75;--bs-btn-close-focus-shadow:0 0 0 .25rem rgba(13,110,253,.25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:.25;--bs-btn-close-white-filter:invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em;background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white,[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-.125em;--bs-spinner-border-width:.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.form-control{transition:none}.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}.btn,.nav-link,.navbar-toggler,.page-link{transition:none}.spinner-border{--bs-spinner-animation-speed:1.5s}}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}@keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0;mask-position:-200% 0}}.text-bg-primary{color:#fff!important;background-color:RGBA(13,110,253,var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(248,249,250,var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(33,37,41,var(--bs-bg-opacity,1))!important}.link-primary{color:#0d6efd!important}.link-primary:focus,.link-primary:hover{color:#0a58ca!important}.link-light{color:#f8f9fa!important}.link-light:focus,.link-light:hover{color:#f9fafb!important}.link-dark{color:#212529!important}.link-dark:focus,.link-dark:hover{color:#1a1e21!important}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.shadow{box-shadow:0 .5rem 1rem rgba(var(--bs-body-color-rgb),.15)!important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(var(--bs-body-color-rgb),.075)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(var(--bs-body-color-rgb),.175)!important}.shadow-none{box-shadow:none!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-light{border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-white{border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-1{--bs-border-width:1px}.border-2{--bs-border-width:2px}.border-3{--bs-border-width:3px}.border-4{--bs-border-width:4px}.border-5{--bs-border-width:5px}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-around{align-content:space-around!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-light{color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.bg-primary{background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-light{background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{background-color:transparent!important}.rounded,.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-2xl)!important}.rounded-top,.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-2xl)!important;border-top-right-radius:var(--bs-border-radius-2xl)!important}.rounded-end,.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-2xl)!important;border-bottom-right-radius:var(--bs-border-radius-2xl)!important}.rounded-bottom,.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-2xl)!important;border-bottom-left-radius:var(--bs-border-radius-2xl)!important}.rounded-start,.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-2xl)!important;border-top-left-radius:var(--bs-border-radius-2xl)!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-around{align-content:space-around!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-around{align-content:space-around!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-around{align-content:space-around!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}
