:root {

    --clr-red: #b50105;

    --clr-blue: hsl(207, 100%, 17%);




    --clr-blue-transp: hsl(207deg 100% 17% / 80%);
    --clr-blue-semi-transp: hsl(207deg 100% 17% / 90%);





    --spacing-xsmall: 1rem;

    --spacing-small: 1.5rem;

    --spacing-def: 3rem;

    --spacing-large: 4.5rem;

    --spacing-xlarge: 5.25rem;

    --spacing-xxlarge: 8rem;

}



*, ::after, ::before {

    box-sizing: border-box;

}







html {

    font-size: 16px;

    scroll-behavior: smooth;

}



body {

    font-size: 1.25rem;

    margin: 0;

    padding: 0;

    line-height: 1.6;

    font-family: Arial, Helvetica, sans-serif;

}



img {

    display: block;

    max-width: 100%;

}



h1, .h1,

h2, .h2,

h3, .h3,

h4, .h4,

h5, .h5,

h6, .h6 {

    margin-block: 0;

    display: block;

    line-height: 1.2;

}



p {

    margin-top: 0;

}



.text-center {

    text-align: center;

}



.w100 {

    max-width: 100rem;

}

.w90 {

    max-width: 90rem;

}

.w80 {

    max-width: 80rem;

}

.w60 {

    max-width: 60rem;

}

.w65 {

    max-width: 65rem;

}

.w50 {

    max-width: 50rem;

}

.m-inline-auto {

    margin-inline: auto;

}

.m-block-0 {

    margin-block: 0;

}



section {

    padding-block: var(--spacing-def);

}



img {

    display: block;

    max-width: 100%;

}



.link-unstyled {

    color: inherit;

    text-decoration: none;

}







.container {

    padding-inline: 2rem;

}









.cp-btn {

    text-decoration: none;

    color: #fff;

    padding: 0.25em 1.5em;

    font-weight: 700;

    font-size: 1.3rem;

    display: inline-block;

}

.cp-btn-red {

    background: var(--clr-red);

}

.cp-btn-w-brd {

    border: 0.2rem solid #fff;

}

.cp-btn-large {

    font-size: 1.5rem;

}



.hero .slider {

    position: absolute;

    z-index: -1;

    inset: 0;

    /* top: -13rem; */

}

.hero .slider img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}

.hero .slider .splide {

    height: 100%;

}

.hero .slider .splide__track {

    height: 100%;

}

.hero {

    display: flex;

    align-items: center;

    justify-content: center;

    min-height: 42rem;

    overflow: hidden;

    position: relative;

    color: #fff;

    font-size: 1rem;

}

.hero .heading {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

}

.hero h1 {

    font-size: 3.75em;

    font-weight: 900;

    text-align: center;

}

.hero .subheading {

    font-size: 2em;

    margin-bottom: 6rem;

}

.hero .cp-btn,

.what-sets .cp-btn {

    padding: 0.5em 1.5em;

    font-size: 1.75rem;

    font-weight: 700;

    display: block;

    width: fit-content;

    margin-inline: auto;

}



.hero .slider__slide {

    /* background: url("/img/Chattanooga-Painters-House-Painting.jpg") no-repeat center; */

    /* background-size: cover; */

    height: 100%;

    /* background-position-y: 40%; */

}
h1, .h1 {
    font-size: 3rem;
}


h2, .h2 {

    font-size: 2.75rem;

}



h3, .h3 {

    font-size: 2.5rem; 

}



.clr-blue {

    color: var(--clr-blue);

}

.clr-white {

    color: #fff;

}



.fw-900 {

    font-weight: 900;

}

.fw-700 {

    font-weight: 700;

}

/* 
p {
    margin-bottom: 0;
}
p + p {
    margin-top: 1em;
} */


.thinking .images {

    display: grid;

    gap: 5rem;

    grid-template-columns: repeat(5, 1fr);

    margin-top: 4rem;

}

.thinking .images > div,

.thinking .images > div a {

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    text-decoration: none;

}



.thinking .images img {

    width: fit-content;

}

.thinking .images p {

    font-size: 1.4rem;

    line-height: 1.2;

    color: var(--clr-blue);

    padding-top: .5rem;

}



.what-sets {

    background: url("/img/Chattanooga-Painters-Customer-Testamonial-Background.jpg") no-repeat;

    background-position: center;

    background-size: cover;

}

.what-sets h2 {

    max-width: 50rem;

    margin-inline: auto;

    margin-bottom: 3rem;

}

.what-sets .stars {

    text-align: center;

    margin-bottom: 3rem;

}

.what-sets .stars img {

    max-width: 20rem;

    margin-inline: auto;

}

.what-sets p {

    text-align: center;

    font-weight: 700;

}

.what-sets .cp-btn {

    margin-top: var(--spacing-def);

}



.commercial-clients {

    background: url("/img/Chattanooga-Painters-Commercial-Clents-Background.jpg") no-repeat center;

    background-size: cover;

    background-position-y: 90%;

    padding-bottom: var(--spacing-large);

}

.commercial-clients .images {

    display: grid;

    grid-template-columns: repeat(9, 1fr);

    gap: 1rem;

}

.commercial-clients .images img {

    width: 100%;

}

.commercial-clients h2 {

    margin-bottom: var(--spacing-def);

    font-weight: 900;

    color: #333333;

}



.residential-painting {

    padding-top: 0;

    padding-bottom: 0;

}



.residential-painting .heading,
.blue-heading {

    background-color: var(--clr-blue-transp);

    color: #fff;

    padding-block: var(--spacing-small);



}


.semi-transp-bg {
    background-color: var(--clr-blue-semi-transp) !important;
}
.no-transp-bg {
    background-color: var(--clr-blue) !important;
}



.residential-painting .top {

    background: url("/img/Residental-Painting-Background-2-min.jpg");

    background-repeat: no-repeat;

    background-size: cover;

    background-position: 50% 65%;

}

.residential-painting.commercial-painting .top {

    background: url("/img/Commercial-Painting-Our-Promise-To-You-2-min.jpg");

    background-repeat: no-repeat;

    background-size: cover;

    background-position: 50% 65%;



}

.residential-painting .top > .container {

    background-color: rgba(255, 255, 255, 0.85);

}

.residential-painting .top .content {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 2rem;

    padding-block: var(--spacing-xlarge);

    font-size: 1.35rem;

}

.residential-painting .top .content .h2 {

    margin-bottom: var(--spacing-xsmall);

}

.residential-painting .top img {

    width: 100%;

}

.residential-painting .bot {

    padding-block: var(--spacing-xxlarge);

    background: #f2f3f7;

}



.residential-painting .cards {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: clamp(1rem, 10vw, 10rem);

    justify-items: center;

}



.residential-painting .card {
	
	background: #ffffff;

    box-shadow: 0px 0px 1rem 0.2rem #b8b8b8;

        max-width: 35rem;

}

.residential-painting .card__info {

    display: flex;

    flex-direction: column;

    align-items: center;

    padding: 2rem;

}

.residential-painting .card__img {

    display: flex;

    align-items: center;

    justify-content: center;

    position: relative;

}

.residential-painting .card__img-text {

    position: absolute;

    color: #fff;

    font-weight: 700;

    font-size: 2.6rem;

    text-transform: uppercase;

    display: block;

    min-width: 15rem;

    text-align: center;

    background: var(--clr-blue-transp);

    padding: 0.25em 1em;

    line-height: 1.2;

}

.residential-painting .card__img img {

    width: 100%;

}



.about-us .content {

    display: grid;

    grid-template-columns: auto 30rem;

    gap: 2rem;

}

.about-us {

    background: url("/img/Chattanooga-Painters-About-Us-Backgkround.jpg") no-repeat;

    background-size: cover;

    color: #fff;

    background-position: 50% 85%;

}

.about-us .heading {

    margin-bottom: var(--spacing-small);

}

.about-us img {

    width: 100%;

}



.team {

    background: #e0e0e0;

    color: #333333;

    padding-bottom: var(--spacing-large);

}

.team .heading {

    margin-bottom: var(--spacing-def);

}

.team .members {

    display: grid;

    gap: 3rem;

    grid-template-columns: repeat(4, 1fr);

}

.team .member__info {

    text-align: center;

    font-size: 1.5rem;

    font-weight: 700;

    line-height: 1.2;

}

.team .member__img {

    margin-bottom: 1rem;

    display: flex;

    justify-content: center;

    border-radius: 50%;

    overflow: hidden;

    max-width: 15rem;

    margin-inline: auto;

}

.team .member__img img {

    width: 100%;

}





input[type="text"],

input[type="email"],

input[type="tel"],

textarea {

    display: block;

        width: 100%;

    min-height: 3rem;

    font-size: 1em;

    padding-inline: 1rem;

    font-family: inherit;

}

textarea {

    padding-block: 1rem;

}



.main-contact-form {

    background: #003057;

    color: #fff;

        max-width: 35rem;

    width: 100%;

    padding: 1.5rem;

    margin-left: auto;

    position: relative;

}



.main-contact-form input,

.main-contact-form textarea {

    background: #fff;

    border: 0;

    box-shadow: none;

    font-size: 16px;

    border-radius: 0;

    -webkit-border-radius:0px;

}



.form-section .content {

    display: grid;

    gap: 3rem;

    grid-template-columns: repeat(2, 1fr);

}

.form-section .heading {

    margin-bottom: var(--spacing-def);

    color: #333333;

}

.form-section a.cp-btn {

    font-size: 3rem;

    display: block;

    margin-inline: auto !important;

    width: fit-content;

    font-weight: 900;

    margin-top: 3rem;

}

.form-section {

    padding-bottom: var(--spacing-xlarge);

}

.main-contact-form label {

    display: block;

    font-weight: 700;

    font-size: 1.5rem;

}

.main-contact-form > div + div {

    margin-top: 1.5rem;

}



.main-contact-form input[type="submit"] {

    background: var(--clr-red);

    font-size: 2rem;

    position: absolute;

    left: 50%;

    transform: translateX(-50%);

    outline: 4px solid #fff;

    outline-offset: -1px;

    cursor: pointer;

    font-weight: 900;

    border-radius: 0 !important;

    -webkit-border-radius:0px !important;

    -webkit-appearance: none !important;

}

.main-contact-form > div:last-child {

    position: relative;

}


.title-icons,
.commercial-painting .title-icons,
.residential-painting .title-icons {

    width: fit-content;

    position: relative;

}

.title-icons::before,
.commercial-painting .title-icons::before,
.residential-painting .title-icons::before,
.title-icons::after, 
.commercial-painting .title-icons::after, 
.residential-painting .title-icons::after {

    position: absolute;

    left: -6rem;

    background: red;

    content: "";

    width: 5rem;

    height: calc(100% + var(--spacing-xsmall));

    top: calc(var(--spacing-xsmall) / 2 * -1);

    background-size: contain !important;

}


.title-icons::after,
.commercial-painting .title-icons::after, 
.residential-painting .title-icons::after {

    right: -6rem;

    left: auto;

}




.title-icons::after,
.commercial-painting .title-icons::after,
.residential-painting .title-icons::after {

    background: url(/img/Commercial-Painting-5-Star-Icon.png) no-repeat center;

}

.title-icons::before,
.residential-painting .title-icons::before {

    background: url(/img/Chattanooga-Painters-Residental-Painting-icon.png) no-repeat center;

}

.commercial-painting .title-icons::before {

    background: url(/img/Commercial-Painting-Building-Icon.png) no-repeat center;

}





.footer {

    color: #fff;

    background: var(--clr-blue);

    padding-bottom: var(--spacing-xsmall);

    margin-top: var(--spacing-def);

}

.copyright {

    text-align: center;

}

.footer .content {

    position: relative;

    margin-bottom: var(--spacing-xsmall)

}

.footer .content .grid {

    display: grid;

    grid-template-columns: 30rem repeat(3, 1fr);

    gap: 2rem;

    padding-bottom: 2.5rem;

}

.footer a {

    color: #fff;

    text-decoration: none;

}

.footer a:hover {

    text-decoration: underline;

}

.footer__logo {

    margin-bottom: 1rem;
    padding-left: 1rem;

}

.footer__logo img {

    max-width: 20rem;

}

.footer__menu {

    list-style: none;

    padding: 0;

    margin: 0;

}

.footer__menu-title {

    font-weight: 700;

    margin-bottom: .5rem;

}

.footer__menu-title span {

    position: relative;

    display: block;

    max-width: 8rem;

}

.footer__menu-title span::after {

    position: absolute;

    content: "";

    height: .3rem;

    width: 100%;

    background: var(--clr-red);

    left: 0;

    top: 100%;

}

.footer__menu li + li {

    margin-top: .35rem;

}

.footer__col.left {

    line-height: 1.3;

    display: flex;

    flex-direction: column;

}

.footer__col.left > div + div {

    margin-top: 1rem;

}

.footer__tel {

    font-size: 1.75rem;

    font-weight: 700;

}

.footer .ico {

    position: relative;

    padding-left: 3.5rem;

}

.footer .ico::before {

    content: "";

    position: absolute;

    left: 0;

    height: 100%;

    width: 3rem;

    background-size: 1.5rem !important;

}



.footer .ico.footer__tel::before {

    background: url(/img/Phone-Icon.png) no-repeat center;

}

.footer .ico.footer__schedule::before {

    background: url(/img/Clock-Icon.png) no-repeat center;

    background-size: contain;

}

.footer .ico.footer__email::before {

    background: url(/img/Mail-Icon.png) no-repeat center;

    background-size: 2rem;

}

.footer .ico.footer__address::before {

    background: url(/img/Address-Icon.png) no-repeat center;

    background-position-y: top;

}

.footer__social {

    display: flex;

    position: absolute;

    right: 0;

    bottom: 0;

    gap: 0.75rem;

}



.header__menu-list {

    padding: 0;

    margin: 0;

    list-style: none;

    background: #fff;

}



header {

    padding-block: var(--spacing-xsmall);

    z-index: 11;

    background: #fff;

    position: sticky;

    position: -webkit-sticky;

    top: 0;

}

header .content  {

    display: grid;

    grid-template-columns: 18rem 1fr auto;

    gap: 3rem;

    align-items: flex-end;

    grid-template-areas: 

        'logo menu banner';

    transition: gap .2s ease-in-out;

}

.header__logo {

    grid-area: logo;

}

.header__nav {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    grid-area: menu;

}

.header__banner {

    grid-area: banner;

}



.header__menu-list {

    position: absolute;

    z-index: 3;

    transform: translateY(-1rem);

    opacity: 0;

    transition: all .2s ease-in-out;

    padding: 1rem 1.25rem;

    top: 100%;

    visibility: hidden;

}





.header__menu-title > .header__menu-link {

    position: relative;

    z-index: 10;



}

.header__menu-title > .header__menu-link::after {

    position: absolute;

    left: 0;

    bottom: -0.2rem;

    width: 100%;

    height: 0.2rem;

    background-color: var(--clr-red);

    opacity: 0;

    content: "";

    transition: all .2s ease-in-out;



}



.header__menu {

    position: relative;

    align-self: end;

    align-self: flex-end;

    display: flex;

    flex-direction: column;

    align-items: center;

}

.header__menu a {

    color: var(--clr-blue);

    text-decoration: none;



}

.header__menu-title {

    padding-inline: 1.25rem;

}

.header__menu-title a {

    font-weight: 700;

    white-space: nowrap;

}

.header__menu-list li {

    white-space: nowrap;

}

.header__menu-list li + li {

    margin-top: .5rem;

}

.header__menu-list li a:hover {

    text-decoration: underline;

}

.header__banner {

    align-self: end;

    align-self: flex-end;

    font-size: 1rem;

}

.header__phone a {

    margin-bottom: 0;

    font-size: 2em;

    font-weight: 700;

    color: var(--clr-blue);

    text-decoration: none;

    position: relative;

    padding-left: 1.3em;

    display: flex;

    align-items: center;

}



.header__phone {

    position: relative;

    margin-bottom: .1em;

    

}

.header__phone a::before {

    content: "";

    background: url(/img/Phone-Icon-blue.png) no-repeat center;

    padding-left: 1.1em;

    height: 1.2em;

    background-size: contain;

    position: absolute;

    left: 0;

}



.header__cta {

    white-space: nowrap;

}

.header__cta a {

    font-size: 1.5em;

}



.mobile-menu-overlay {

    position: fixed;

    inset: 0;

    background-color: rgba(255, 255, 255, 1);

    z-index: 10;

    visibility: hidden;

    opacity: 0;

    transition: all .2s ease-in-out;

}



.form-message {

    max-width: 35rem;

    margin-right: 0;

    margin-left: auto;

    margin-top: 3rem;

    text-align: center;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 0.5rem;

    position: absolute !important;

    top: calc(100% + 2rem);

    left: 0;

    right: 0;

    white-space: nowrap;

}

.form-error {

    border: 2px solid var(--clr-red);

    background: hsl(359deg 99% 36% / 0.22);

}

.form-success {

    border: 2px solid var(--clr-blue);

    background: #e9f0fd;

}

.form-message p {

    margin: 0;

    color: #333333;

}



form.submitting input[type="submit"] {

    background: #b4b4b4;

    pointer-events: none;

    transition: background 100ms linear;

}



.videos {

    display: flex;

    justify-content: center;

    gap: 2rem;

    margin-top: var(--spacing-def);

}

.videos__video {

    aspect-ratio: 16 / 9;

    flex: 1 1 100%;

}

.videos__video iframe {

    width: 100%;

    height: 100%;

}





.bg-fixed {

    background-attachment: initial !important;

}

.header__logo img {

    transition: max-width 0.2s ease-in-out;

}

@supports (background-attachment: fixed) {

    .bg-fixed {

        background-attachment: fixed !important;

    }

}

.about-service .main-title {
    margin-bottom: var(--spacing-small);
    font-size: 2.4rem;
    color: #333333
}

.float-image-right {
    float: right;
}
.about-service .float-image-right {
    max-width: 35rem;
    margin-left: 4rem;
    margin-bottom: 1rem;
}

.float-image-left {
    float: left;
}
.about-service .float-image-left {
    max-width: 35rem;
    margin-right: 4rem;
    margin-bottom: 1rem;
}
.float-image-right,
.float-image-left,
.float-image-right img,
.float-image-left img {
    width: 100%;
}

.about-service .block-title {
    margin-bottom: 1rem;
    font-size: 1.8rem;
    color: #333333;
}

.about-service .row + .row {
    margin-top: var(--spacing-def);
}

.floats::after {
    display: table;
    clear: both;
    content: "";
}

.floats .row::after {
    display: table;
    clear: both;
    content: "";
}

.service-page .faq {
    background: url(/img/Painted-Brick-House-Background-min.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}

.faq .heading {
    margin-bottom: var(--spacing-def);
}
.faq h2 {
    font-size: 2.2rem;
}
.faq h3 {
    font-size: 1.8rem;
    margin-bottom: .25rem;
}

.job-examples {
    padding-bottom: var(--spacing-large);
    padding-top: 0;
}
.job-examples .content .title {
    margin-block: var(--spacing-def);
    color: #333333;
}
.job-examples .examples {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(1rem, 5vw, 5rem);
}
.job-examples .heading .row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
}


.residential-painting .top .content div p:last-child {
    margin-bottom: 0;
}


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

    .thinking .images {

        gap: 3rem;

    }

    header .content {

        gap: 1rem;

        grid-template-columns: 14rem 1fr auto;

    }

    .header__banner {

        font-size: 0.9rem;

    }
    .about-service .float-image-right {
        margin-left: 3rem;
    }
    .about-service .float-image-left {
        margin-right: 3rem;
    }   
  

}



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

    .thinking .images {

        gap: 2rem;

    }

    .thinking .images img {

        max-width: 120px;

        max-height: 120px;

    }

    .footer .content .grid {

        grid-template-columns: repeat(4, 1fr);

    }

    .form-section a.cp-btn {

        font-size: 2rem;

    }

    header .content {

        gap: 1rem;

        grid-template-columns: 12rem 1fr auto;

    }

    .header__banner {

        font-size: 0.65rem;

    }

    .header__menu a {

        font-size: 1rem;

    }

    .residential-painting .card__img-text {

        font-size: 2.2rem;

    }

    .about-service .float-image-right {
        margin-left: 2.5rem;
    }
    .about-service .float-image-left {
        margin-right: 2.5rem;
    }

}



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

    html {

        font-size: 15px;

    }

    .thinking .images img {

        max-width: 100px;

        max-height: 100px;

    }

    .residential-painting .cards {

        gap: 3rem;

    }

    .residential-painting .bot {

        padding-block: var(--spacing-large);

    }

    .residential-painting .top .content,

    .about-us .content {

        grid-template-columns: 1fr;

        align-items: center;

    }

    .residential-painting .top .content div:last-child,

    .about-us .content div:last-child {

        grid-row: 1;

    }

    .team .members {

        grid-template-columns: repeat(2, 1fr);

    }

    .residential-painting .card__img-text {

        font-size: 2rem;

    }

    .about-service .float-image-right {
        margin-left: 2rem;
    }
    .about-service .float-image-left {
        margin-right: 2rem;
    }

    .service-page .residential-painting .top .content {
        padding-block: var(--spacing-def);
    }
    
}



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

    .form-section a.cp-btn {

        font-size: 1.65rem;

    }

    .header__banner {

        font-size: 0.6rem;

    }

    header .content {

        grid-template-columns: 11rem 1fr auto;

    }

    .header__menu-title {

        padding-inline: 0.5rem;

    }
    .float-image-right, .float-image-left, .float-image-right img, .float-image-left img {
        float: none;
        max-width: 100% !important;
        margin-inline: auto !important;
    }
    .job-examples .heading .row {
        flex-direction: column;
        gap: 1rem;
    }
    .about-service .block-title {
        margin-top: 2rem;
        margin-bottom: 0.5rem;
    }
    .about-service .row + .row {
        margin-top: var(--spacing-xsmall);
    }

}



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

    /* header .content {

        grid-template-columns: 9rem 1fr auto;

    }

    .header__banner {

        font-size: 0.5rem;

    } */

    .header__menu a {

            font-size: 0.9rem;

    }

}



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

    html {

        font-size: 14px;

    }

    .thinking .images {

        display: flex;

        flex-wrap: wrap;

    }

    .thinking .images > div {

        margin-inline: auto;

        width: 30%;

    }

    .thinking .images img {

        max-width: 70px;

        max-height: 70px;

    }

    .commercial-clients .images {

        grid-template-columns: repeat(6, 1fr);

    }

    .residential-painting .cards {

        gap: 2rem;

    }

    .container {

        padding-inline: 1.25rem;

    }

    .footer .content .grid {

        grid-template-columns: repeat(2, 1fr);

    }

    .form-section .content {

        grid-template-columns: 1fr;

    }

    .main-contact-form {

        margin-inline: auto;

    }

    header {

        position: sticky;

        top: 0;

        padding-bottom: 0;

    }

    header .container {

        position: relative;

    }

    header .content {

        grid-template-areas: 

            'logo'

            'banner'

            'menu';

        grid-template-columns: 1fr;

    }

    .header__logo,

    .header__banner {

        justify-content: center;

        display: flex;

        margin-inline: auto;

    }

    .header__logo img {

        max-width: 20rem;

    }

    .header__nav {

        position: absolute;

        top: 100%;

        grid-template-columns: 1fr;

        background: #fff;

        left: 0;

        right: 0;

        /* padding-block: 1.5rem; */

        height: 0;

        overflow: hidden;

        transition: height .2s ease-in-out;

    }

    .header__menu-title,

    .header__menu-list {

        width: 100%;

    }

    .header__menu-title > .header__menu-link {

        font-size: 1.4rem;

    }

    .header__menu-list {

        visibility: visible;

        opacity: 1;

        position: relative;

    }

    .header__nav {

        display: block;

    }

    .header__menu {

        /* align-items: flex-start; */

        /* align-self: baseline; */

        padding-inline: 2rem;

            display: block !important;

    }

    .header__menu a {

        font-size: 1.2rem;

    }

    .header__menu-list {

        padding: 1rem 1.25rem 0;

    }

    .header__banner > div {

        display: flex;

        gap: 1rem;

    }

    .header__banner {

        font-size: .7rem;

    }

    .header__nav .header__menu:last-child {

        margin-bottom: 1.5rem;

    }

    .header__toggler {

        display: block;

        position: absolute;

        right: 20px;

        top: 10px;

        display: flex;

        flex-direction: column;

        width: 40px;

        height: 30px;

        align-items: center;

        justify-content: center;

        transition: top 0.2s ease-in-out;

    }

    .header__toggler span {

        background-color: #333;

        width: 30px;

        height: 3px;

        display: block;

        transition: all .2s ease-in-out;

    }

    .header__toggler span + span {

        margin-top: 5px;

    }



    .navShow .header__toggler span {

        position: absolute;

        margin: 0 !important;

    }

    .navShow .header__toggler span:nth-child(2) {

        /* display: none; */

        opacity: 0;

        visibility: hidden;

    }

    .navShow .header__toggler span:first-child {

        transform: rotate(45deg);

    }

    .navShow .header__toggler span:last-child {

        transform: rotate(-45deg);

    }



    body.navShow {

        overflow: hidden;

    }

    .navShow .mobile-menu-overlay {

        opacity: 1;

        visibility: visible;

    }



    .header__nav.show {

        overflow: auto;

    }

    .header__menu-title > .header__menu-link::after {

        opacity: 1;

        height: 3px;

        top: 100%;

        bottom: auto;

    }

    body.scrolled .header__logo img {

        max-width: 10rem;

    }

    body.scrolled header .content {

        gap: .5rem;

    }

    body.scrolled .header__toggler {

        top: 2px;

    }

    .footer__menu-title {

        margin-bottom: .5rem;

    }

    .footer__menu-title span::after {

        height: 3px;

    }

    .videos {

        flex-direction: column;

        gap: 3rem;

        margin-top: var(--spacing-small);

    }

    .hero {

        min-height: unset;

    }

    .hero .subheading {

        margin-bottom: 3rem;

    }

    .form-section a.cp-btn {

        max-width: 35rem;

        width: 100%;

        text-align: center;

        font-size: 2rem;

    }

    .form-section .content {
        gap: 3.75rem;
    }

}



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

    .thinking .images > div {

        width: 45%;

    }

    .thinking .images img {

        height: 70px;

        width: auto;

    }

    .thinking .images {

        gap: 1rem;

    }

    html {

        font-size: 13px;

    }

    .hero .cp-btn, .what-sets .cp-btn {

        font-size: 1.3rem;

    }

    .hero .subheading {

        text-align: center;

        margin-top: 1rem;

        font-size: 1.5em;

    }

    .commercial-clients .images {

        grid-template-columns: repeat(3, 1fr);

    }

    .residential-painting .cards {

        grid-template-columns: 1fr;

    }

    .footer .content .grid {

        /* grid-template-columns: repeat(3, 1fr); */

        display: flex;

        flex-wrap: wrap;

    }

    .footer__col {

        flex: 1 1 28%;

    }

    .footer__col.left {

        flex: 1 1 100%;

    }

    .footer__social {

        position: relative;

        justify-content: center;

        margin-bottom: 2rem;

    }

    .commercial-painting .title-icons::before, 
    .title-icons::before,
    .residential-painting .title-icons::before, 
    .commercial-painting .title-icons::after, 
    .title-icons::after,
    .residential-painting .title-icons::after {

        /* display: none; */

        height: calc(50% + var(--spacing-xsmall));

        top: 0;

        width: 2rem;

        left: -3rem;

    }

    .residential-painting .title-icons {

        font-size: 2rem;

    }


    .title-icons::after,
    .commercial-painting .title-icons::after, 
    .residential-painting .title-icons::after {

        right: -3rem;

        left: auto;

    }

    .residential-painting .card__img-text {

        font-size: 2.4rem;

    }

    .job-examples .examples {
        grid-template-columns: 1fr;
    }

    .footer__col.left {
        margin-left: 50%;
        transform: translateX(-50%);
    }
}



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

    .hero h1 {

        font-size: 2.75em;

    }

    .footer__col {

        flex:  1 1 45%;

    }

    .team .member__img {

        max-width: 10rem;

    }
    .service-page .what-sets .cp-btn {
        text-align: center;
    }

}



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

    html {

        font-size: 12px;

    }

    .hero .cp-btn, .what-sets .cp-btn {

        font-size: 1.4rem;
        text-align: center;

    }

    

    .header__logo img {

        max-width: 18rem;

    }

    .residential-painting .card__img-text {

        font-size: 2.2rem;

    }

}



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

    .hero .cp-btn, .what-sets .cp-btn {

        font-size: 1.1rem;

    }

    .hero h1 {

        font-size: 2.5em;

    }



    .residential-painting .card__img-text {

        font-size: 1.8rem;

    }

}





@media screen and (min-width: 769px) {

    .header__toggler {

        display: none;

    }

    .header__menu:hover .header__menu-list {

        opacity: 1;

        transform: translateY(0);

        visibility: visible;

    }

    .header__menu:hover .header__menu-title > .header__menu-link::after {

        opacity: 1;

    }

}

@media screen and (min-width: 2400px) {

    html {

        font-size: 20px;

    }

    .header__logo img {

        width: 100%;

    }

}

@media screen and (min-width: 2800px) {

    html {

        font-size: 24px;

    }

}

@media screen and (min-width: 3200px) {

    html {

        font-size: 30px;

    }

}

