/*
 Theme Name:   The Ultimate Finish
 Theme URI:    https://theultimatefinish.co.uk
 Description:  The Ultimate Finish child theme
 Author:       Megantic
 Template:     generatepress
 Version:      0.1
*/

/* custom */

body {
    font-family: "Open Sans", sans-serif;
}

h1, h2, h3, h4, h5, h6, .nun {
    font-family: "Nunito", sans-serif;
    text-transform: uppercase;
}

a {
    text-decoration: none;
}

p {
    /*margin-bottom: unset;*/
    margin-bottom: 15px!important;
}

.bold,
b,
strong {
    font-weight: 700;
}


a:hover, a:focus, a:active {
    color: unset;
    text-decoration: none!important;
}

.uppercase {
    text-transform: uppercase;
}

ol, ul {
    list-style: none;
}

body, h1, h2, h3, h4, h5, h6, p, ol, ul {
    margin: 0;
    padding: 0;
    font-weight: normal;
}

:root {
    --red: #dc0c23;
    --green: #17b678;
    --orange: #f98d43;
    --yellow: #f2c94c;
    --blue: #2f80ed;
    --black: #262626;
    --light-grey: #e5e5e5;
    --grey-1: #333;
    --grey-2: #4f4f4f;
    --grey-3: #828282;
    --grey-4: #bdbdbd;
    --grey-5: #bdbdbd;
    --grey-6: #cccccc;
    --grey-7: #f9f9f9;
    --grey-8: #3e4c57;
    --grey-9: #e7ebee;
    --white: #fff;
    --grey-border: #f2f2f2;
    --input: linear-gradient(180deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 100%), #f9f9f9;
    --input-border: #e0e0e0;
    --subtle-shadow: 0px 4px 10px rgba(0, 0, 0, 0.02);
    --object-shadow: 0px 4px 40px rgba(0, 0, 0, 0.05);
    --strong-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1);
    --red-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%), #dc0c23;
}

.site-content {
    display: block;
}

.c-red,
button.c-red,
input[type="submit"].c-red,
input[type="button"].c-red,
input[type="reset"].c-red {
    color: var(--red);
}

.c-green,
button.c-green,
input[type="submit"].c-green,
input[type="button"].c-green,
input[type="reset"].c-green {
    color: var(--green);
}

.c-orange,
button.c-orange,
input[type="submit"].c-orange,
input[type="button"].c-orange,
input[type="reset"].c-orange {
    color: var(--orange);
}

.c-yellow,
button.c-yellow,
input[type="submit"].c-yellow,
input[type="button"].c-yellow,
input[type="reset"].c-yellow {
    color: var(--yellow);
}

.c-blue,
button.c-blue,
input[type="submit"].c-blue,
input[type="button"].c-blue,
input[type="reset"].c-blue {
    color: var(--blue);
}

.c-black,
button.c-black,
input[type="submit"].c-black,
input[type="button"].c-black,
input[type="reset"].c-black {
    color: var(--black);
}

.c-light-grey,
button.c-light-grey,
input[type="submit"].c-light-grey,
input[type="button"].c-light-grey,
input[type="reset"].c-light-grey {
    color: var(--light-grey);
}

.c-white,
button.c-white,
input[type="submit"].c-white,
input[type="button"].c-white,
input[type="reset"].c-white {
    color: var(--white);
}

.c-grey-border,
button.c-grey-border,
input[type="submit"].c-grey-border,
input[type="button"].c-grey-border,
input[type="reset"].c-grey-border {
    color: var(--grey-border);
}

.c-input,
button.c-input,
input[type="submit"].c-input,
input[type="button"].c-input,
input[type="reset"].c-input {
    color: var(--input);
}

.c-grey-1,
button.c-grey-1,
input[type="submit"].c-grey-1,
input[type="button"].c-grey-1,
input[type="reset"].c-grey-1 {
    color: var(--grey-1);
}

.c-grey-2,
button.c-grey-2,
input[type="submit"].c-grey-2,
input[type="button"].c-grey-2,
input[type="reset"].c-grey-2 {
    color: var(--grey-2);
}

.c-grey-3,
button.c-grey-3,
input[type="submit"].c-grey-3,
input[type="button"].c-grey-3,
input[type="reset"].c-grey-3 {
    color: var(--grey-3);
}

.c-grey-4,
button.c-grey-4,
input[type="submit"].c-grey-4,
input[type="button"].c-grey-4,
input[type="reset"].c-grey-4 {
    color: var(--grey-4);
}

.c-grey-5,
button.c-grey-5,
input[type="submit"].c-grey-5,
input[type="button"].c-grey-5,
input[type="reset"].c-grey-5 {
    color: var(--grey-5);
}

.c-grey-7,
button.c-grey-7,
input[type="submit"].c-grey-7,
input[type="button"].c-grey-7,
input[type="reset"].c-grey-7 {
    color: var(--grey-7);
}

.c-input-border,
button.c-input-border,
input[type="submit"].c-input-border,
input[type="button"].c-input-border,
input[type="reset"].c-input-border {
    color: var(--input-border);
}

.c-input,
button.c-input,
input[type="submit"].c-input,
input[type="button"].c-input,
input[type="reset"].c-input {
    color: var(--input);
}

.bg-red,
button.bg-red,
input[type="submit"].bg-red,
input[type="button"].bg-red,
input[type="reset"].bg-red {
    background: var(--red);
}

.bg-green,
button.bg-green,
input[type="submit"].bg-green,
input[type="button"].bg-green,
input[type="reset"].bg-green {
    background: var(--green);
}

.bg-orange,
button.bg-orange,
input[type="submit"].bg-orange,
input[type="button"].bg-orange,
input[type="reset"].bg-orange {
    background: var(--orange);
}

.bg-yellow,
button.bg-yellow,
input[type="submit"].bg-yellow,
input[type="button"].bg-yellow,
input[type="reset"].bg-yellow {
    background: var(--yellow);
}

.bg-blue,
button.bg-blue,
input[type="submit"].bg-blue,
input[type="button"].bg-blue,
input[type="reset"].bg-blue {
    background: var(--blue);
}

.bg-black,
button.bg-black,
input[type="submit"].bg-black,
input[type="button"].bg-black,
input[type="reset"].bg-black {
    background: #034963;
}

.bg-light-grey,
button.bg-light-grey,
input[type="submit"].bg-light-grey,
input[type="button"].bg-light-grey,
input[type="reset"].bg-light-grey {
    background: var(--light-grey);
}

.bg-white,
button.bg-white,
input[type="submit"].bg-white,
input[type="button"].bg-white,
input[type="reset"].bg-white {
    background: var(--white);
}

.bg-grey-border,
button.bg-grey-border,
input[type="submit"].bg-grey-border,
input[type="button"].bg-grey-border,
input[type="reset"].bg-grey-border {
    background: var(--grey-border);
}

.bg-input,
button.bg-input,
input[type="submit"].bg-input,
input[type="button"].bg-input,
input[type="reset"].bg-input {
    background: var(--input);
}

.bg-grey-1,
button.bg-grey-1,
input[type="submit"].bg-grey-1,
input[type="button"].bg-grey-1,
input[type="reset"].bg-grey-1 {
    background: var(--grey-1);
}

.bg-grey-2,
button.bg-grey-2,
input[type="submit"].bg-grey-2,
input[type="button"].bg-grey-2,
input[type="reset"].bg-grey-2 {
    background: var(--grey-2);
}

.bg-grey-3,
button.bg-grey-3,
input[type="submit"].bg-grey-3,
input[type="button"].bg-grey-3,
input[type="reset"].bg-grey-3 {
    background: var(--grey-3);
}

.bg-grey-4,
button.bg-grey-4,
input[type="submit"].bg-grey-4,
input[type="button"].bg-grey-4,
input[type="reset"].bg-grey-4 {
    background: var(--grey-4);
}

.bg-grey-5,
button.bg-grey-5,
input[type="submit"].bg-grey-5,
input[type="button"].bg-grey-5,
input[type="reset"].bg-grey-5 {
    background: var(--grey-5);
}

.bg-grey-7,
button.bg-grey-7,
input[type="submit"].bg-grey-7,
input[type="button"].bg-grey-7,
input[type="reset"].bg-grey-7 {
    background: var(--grey-7);
}

.bg-grey-8,
button.bg-grey-8,
input[type="submit"].bg-grey-8,
input[type="button"].bg-grey-8,
input[type="reset"].bg-grey-8 {
    background: var(--grey-8);
}

.bg-input-border,
button.bg-input-border,
input[type="submit"].bg-input-border,
input[type="button"].bg-input-border,
input[type="reset"].bg-input-border {
    background: var(--input-border);
}

.bg-input,
button.bg-input,
input[type="submit"].bg-input,
input[type="button"].bg-input,
input[type="reset"].bg-input {
    background: var(--input);
}



.f-0 {
    font-size: 0;
}

.f-0_5 {
    font-size: 0.125rem;
}

.f-1 {
    font-size: 0.25rem;
}

.f-1_5 {
    font-size: 0.375rem;
}

.f-2 {
    font-size: 0.5rem;
}

.f-3 {
    font-size: 0.75rem;
}

.f-3_5 {
    font-size: 0.875rem;
}

.f-4 {
    font-size: 1rem;
}

.f-5 {
    font-size: 1.25rem;
}

.f-6 {
    font-size: 1.5rem;
}

.f-8 {
    font-size: 2rem;
}

.f-10 {
    font-size: 2.5rem;
}

.f-px {
    font-size: 1px;
}

.p-0 {
    padding: 0;
}

.p-0_5 {
    padding: 0.125rem;
}

.p-1 {
    padding: 0.25rem;
}

.p-1_5 {
    padding: 0.375rem;
}

.p-2 {
    padding: 0.5rem;
}

.p-3 {
    padding: 0.75rem;
}

.p-3_5 {
    padding: 0.875rem;
}

.p-4 {
    padding: 1rem;
}

.p-5 {
    padding: 1.25rem;
}

.p-6 {
    padding: 1.5rem;
}

.p-8 {
    padding: 2rem;
}

.p-10 {
    padding: 2.5rem;
}

.p-px {
    padding: 1px;
}

.p-t-0 {
    padding-top: 0;
}

.p-t-0_5 {
    padding-top: 0.125rem;
}

.p-t-1 {
    padding-top: 0.25rem;
}

.p-t-1_5 {
    padding-top: 0.375rem;
}

.p-t-2 {
    padding-top: 0.5rem;
}

.p-t-3 {
    padding-top: 0.75rem;
}

.p-t-3_5 {
    padding-top: 0.875rem;
}

.p-t-4 {
    padding-top: 1rem;
}

.p-t-5 {
    padding-top: 1.25rem;
}

.p-t-6 {
    padding-top: 1.5rem;
}

.p-t-8 {
    padding-top: 2rem;
}

.p-t-10 {
    padding-top: 2.5rem;
}

.p-t-px {
    padding-top: 1px;
}

.p-r-0 {
    padding-right: 0;
}

.p-r-0_5 {
    padding-right: 0.125rem;
}

.p-r-1 {
    padding-right: 0.25rem;
}

.p-r-1_5 {
    padding-right: 0.375rem;
}

.p-r-2 {
    padding-right: 0.5rem;
}

.p-r-3 {
    padding-right: 0.75rem;
}

.p-r-3_5 {
    padding-right: 0.875rem;
}

.p-r-4 {
    padding-right: 1rem;
}

.p-r-5 {
    padding-right: 1.25rem;
}

.p-r-6 {
    padding-right: 1.5rem;
}

.p-r-8 {
    padding-right: 2rem;
}

.p-r-10 {
    padding-right: 2.5rem;
}

.p-r-px {
    padding-right: 1px;
}

.p-b-0 {
    padding-bottom: 0;
}

.ip-b-0 {
    padding-bottom: 0 !important;
}

.p-b-0_5 {
    padding-bottom: 0.125rem;
}

.p-b-1 {
    padding-bottom: 0.25rem;
}

.p-b-1_5 {
    padding-bottom: 0.375rem;
}

.p-b-2 {
    padding-bottom: 0.5rem;
}

.p-b-3 {
    padding-bottom: 0.75rem;
}

.p-b-3_5 {
    padding-bottom: 0.875rem;
}

.p-b-4 {
    padding-bottom: 1rem;
}

.p-b-5 {
    padding-bottom: 1.25rem;
}

.p-b-6 {
    padding-bottom: 1.5rem;
}

.p-b-8 {
    padding-bottom: 2rem;
}

.p-b-10 {
    padding-bottom: 2.5rem;
}

.p-b-px {
    padding-bottom: 1px;
}

.p-l-0 {
    padding-left: 0;
}

.p-l-0_5 {
    padding-left: 0.125rem;
}

.p-l-1 {
    padding-left: 0.25rem;
}

.p-l-1_5 {
    padding-left: 0.375rem;
}

.p-l-2 {
    padding-left: 0.5rem;
}

.p-l-3 {
    padding-left: 0.75rem;
}

.p-l-3_5 {
    padding-left: 0.875rem;
}

.p-l-4 {
    padding-left: 1rem;
}

.p-l-5 {
    padding-left: 1.25rem;
}

.p-l-6 {
    padding-left: 1.5rem;
}

.p-l-8 {
    padding-left: 2rem;
}

.p-l-10 {
    padding-left: 2.5rem;
}

.p-l-px {
    padding-left: 1px;
}

.m-0 {
    margin: 0;
}

.m-0_5 {
    margin: 0.125rem;
}

.m-1 {
    margin: 0.25rem;
}

.m-1_5 {
    margin: 0.375rem;
}

.m-2 {
    margin: 0.5rem;
}

.m-3 {
    margin: 0.75rem;
}

.m-3_5 {
    margin: 0.875rem;
}

.m-4 {
    margin: 1rem;
}

.m-5 {
    margin: 1.25rem;
}

.m-6 {
    margin: 1.5rem;
}

.m-8 {
    margin: 2rem;
}

.m-10 {
    margin: 2.5rem;
}

.m-px {
    margin: 1px;
}

.m-t-auto {
    margin-top: auto
}

.m-t-0 {
    margin-top: 0;
}

.m-t-0_5 {
    margin-top: 0.125rem;
}

.m-t-1 {
    margin-top: 0.25rem;
}

.m-t-1_5 {
    margin-top: 0.375rem;
}

.m-t-2 {
    margin-top: 0.5rem;
}

.m-t-3 {
    margin-top: 0.75rem;
}

.m-t-3_5 {
    margin-top: 0.875rem;
}

.m-t-4 {
    margin-top: 1rem;
}

.m-t-5 {
    margin-top: 1.25rem;
}

.m-t-6 {
    margin-top: 1.5rem;
}

.m-t-8 {
    margin-top: 2rem;
}

.m-t-10 {
    margin-top: 2.5rem;
}

.m-t-px {
    margin-top: 1px;
}

.m-r-0 {
    margin-right: 0;
}

.m-r-0_5 {
    margin-right: 0.125rem;
}

.m-r-1 {
    margin-right: 0.25rem;
}

.m-r-1_5 {
    margin-right: 0.375rem;
}

.m-r-2 {
    margin-right: 0.5rem;
}

.m-r-3 {
    margin-right: 0.75rem;
}

.m-r-3_5 {
    margin-right: 0.875rem;
}

.m-r-4 {
    margin-right: 1rem;
}

.m-r-5 {
    margin-right: 1.25rem;
}

.m-r-6 {
    margin-right: 1.5rem;
}

.m-r-8 {
    margin-right: 2rem;
}

.m-r-10 {
    margin-right: 2.5rem;
}

.m-r-px {
    margin-right: 1px;
}

.m-b-0 {
    margin-bottom: 0;
}

.m-b-0_5 {
    margin-bottom: 0.125rem;
}

.m-b-1 {
    margin-bottom: 0.25rem;
}

.m-b-1_5 {
    margin-bottom: 0.375rem;
}

.m-b-2 {
    margin-bottom: 0.5rem;
}

.m-b-3 {
    margin-bottom: 0.75rem;
}

.m-b-3_5 {
    margin-bottom: 0.875rem;
}

.m-b-4 {
    margin-bottom: 1rem;
}

.m-b-5 {
    margin-bottom: 1.25rem;
}

.m-b-6 {
    margin-bottom: 1.5rem;
}

.m-b-8 {
    margin-bottom: 2rem;
}

.m-b-10 {
    margin-bottom: 2.5rem;
}

.m-b-px {
    margin-bottom: 1px;
}

.m-l-0 {
    margin-left: 0;
}

.m-l-0_5 {
    margin-left: 0.125rem;
}

.m-l-1 {
    margin-left: 0.25rem;
}

.m-l-1_5 {
    margin-left: 0.375rem;
}

.m-l-2 {
    margin-left: 0.5rem;
}

.m-l-3 {
    margin-left: 0.75rem;
}

.m-l-3_5 {
    margin-left: 0.875rem;
}

.m-l-4 {
    margin-left: 1rem;
}

.m-l-5 {
    margin-left: 1.25rem;
}

.m-l-6 {
    margin-left: 1.5rem;
}

.m-l-8 {
    margin-left: 2rem;
}

.m-l-10 {
    margin-left: 2.5rem;
}

.m-l-px {
    margin-left: 1px;
}

.-m-0 {
    margin: -0;
}

.-m-0_5 {
    margin: -0.125rem;
}

.-m-1 {
    margin: -0.25rem;
}

.-m-1_5 {
    margin: -0.375rem;
}

.-m-2 {
    margin: -0.5rem;
}

.-m-3 {
    margin: -0.75rem;
}

.-m-3_5 {
    margin: -0.875rem;
}

.-m-4 {
    margin: -1rem;
}

.-m-5 {
    margin: -1.25rem;
}

.-m-6 {
    margin: -1.5rem;
}

.-m-8 {
    margin: -2rem;
}

.-m-10 {
    margin: -2.5rem;
}

.-m-px {
    margin: -1px;
}

.-m-t-0 {
    margin-top: -0;
}

.-m-t-0_5 {
    margin-top: -0.125rem;
}

.-m-t-1 {
    margin-top: -0.25rem;
}

.-m-t-1_5 {
    margin-top: -0.375rem;
}

.-m-t-2 {
    margin-top: -0.5rem;
}

.-m-t-3 {
    margin-top: -0.75rem;
}

.-m-t-3_5 {
    margin-top: -0.875rem;
}

.-m-t-4 {
    margin-top: -1rem;
}

.-m-t-5 {
    margin-top: -1.25rem;
}

.-m-t-6 {
    margin-top: -1.5rem;
}

.-m-t-8 {
    margin-top: -2rem;
}

.-m-t-10 {
    margin-top: -2.5rem;
}

.-m-t-px {
    margin-top: -1px;
}

.-m-r-0 {
    margin-right: -0;
}

.-m-r-0_5 {
    margin-right: -0.125rem;
}

.-m-r-1 {
    margin-right: -0.25rem;
}

.-m-r-1_5 {
    margin-right: -0.375rem;
}

.-m-r-2 {
    margin-right: -0.5rem;
}

.-m-r-3 {
    margin-right: -0.75rem;
}

.-m-r-3_5 {
    margin-right: -0.875rem;
}

.-m-r-4 {
    margin-right: -1rem;
}

.-m-r-5 {
    margin-right: -1.25rem;
}

.-m-r-6 {
    margin-right: -1.5rem;
}

.-m-r-8 {
    margin-right: -2rem;
}

.-m-r-10 {
    margin-right: -2.5rem;
}

.-m-r-px {
    margin-right: -1px;
}

.-m-b-0 {
    margin-bottom: -0;
}

.-m-b-0_5 {
    margin-bottom: -0.125rem;
}

.-m-b-1 {
    margin-bottom: -0.25rem;
}

.-m-b-1_5 {
    margin-bottom: -0.375rem;
}

.-m-b-2 {
    margin-bottom: -0.5rem;
}

.-m-b-3 {
    margin-bottom: -0.75rem;
}

.-m-b-3_5 {
    margin-bottom: -0.875rem;
}

.-m-b-4 {
    margin-bottom: -1rem;
}

.-m-b-5 {
    margin-bottom: -1.25rem;
}

.-m-b-6 {
    margin-bottom: -1.5rem;
}

.-m-b-8 {
    margin-bottom: -2rem;
}

.-m-b-10 {
    margin-bottom: -2.5rem;
}

.-m-b-px {
    margin-bottom: -1px;
}

.-m-l-0 {
    margin-left: -0;
}

.-m-l-0_5 {
    margin-left: -0.125rem;
}

.-m-l-1 {
    margin-left: -0.25rem;
}

.-m-l-1_5 {
    margin-left: -0.375rem;
}

.-m-l-2 {
    margin-left: -0.5rem;
}

.-m-l-3 {
    margin-left: -0.75rem;
}

.-m-l-3_5 {
    margin-left: -0.875rem;
}

.-m-l-4 {
    margin-left: -1rem;
}

.-m-l-5 {
    margin-left: -1.25rem;
}

.-m-l-6 {
    margin-left: -1.5rem;
}

.-m-l-8 {
    margin-left: -2rem;
}

.-m-l-10 {
    margin-left: -2.5rem;
}

.-m-l-px {
    margin-left: -1px;
}

.flex {
    display: flex;
}

.inline-flex {
    display: inline-flex;
}

.flex-row {
    flex-direction: row;
}

.flex-row-reverse {
    flex-direction: row-reverse;
}

.flex-col {
    flex-direction: column;
}

.flex-col-reverse {
    flex-direction: column-reverse;
}

.flex-wrap {
    flex-wrap: wrap;
}

@media(max-width:320px) {
    .flex-wrap_m {
        flex-wrap: wrap;
    }

    #AvailabilityDate span {
        position: relative;
        top: 10px !important;
    }
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse;
}

.flex-no-wrap {
    flex-wrap: nowrap;
}


.justify-start {
    justify-content: flex-start;
}

.justify-end {
    justify-content: flex-end;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.justify-around {
    justify-content: space-around;
}

.content-center {
    align-content: center;
}

.content-start {
    align-content: flex-start;
}

.content-end {
    align-content: flex-end;
}

.content-between {
    align-content: space-between;
}

.content-around {
    align-content: space-around;
}

/* custom ends */




/* hidden elements */

.hidden {
    display: none;
}

.hidden_m {
    display: none;
}

@media (min-width: 960px) {
    .hidden_m {
        display: block;
    }

    .hidden_m.flex {
        display: flex;
    }

    .hidden_m.inline {
        display: inline;
    }

    .hidden_t {
        display: none;
    }

    .hidden_t.flex,
    .hidden_t.inline {
        display: none;
    }

    .hidden_t- {
        display: none;
    }

    .hidden_t-.flex,
    .hidden_t-.inline {
        display: none;
    }
}

@media (min-width: 1024px) {
    .hidden_t {
        display: block;
    }

    .hidden_t.flex {
        display: flex;
    }

    .hidden_t.inline {
        display: inline;
    }

    .hidden_l {
        display: none;
    }

    .hidden_l.flex,
    .hidden_l.inline {
        display: none;
    }

    .hidden_l- {
        display: none;
    }

    .hidden_l-.flex,
    .hidden_l-.inline {
        display: none;
    }
}

@media (min-width: 1300px) {
    .hidden_l {
        display: block;
    }

    .hidden_l.flex {
        display: flex;
    }

    .hidden_l.inline {
        display: inline;
    }

    .hidden_d {
        display: none;
    }

    .hidden_d.flex,
    .hidden_d.inline {
        display: none;
    }
}

/* hidden elements end */


/* customize header */

header a, .header_sub a, .benefits-bar a {
    text-decoration: none;
}

img.tag {
    width: 16px;
    height: 16px;
    display: inline-block;
}

.pre-header .c-white {
    font-weight: bold;
}


.br-1 {
    border: 1px solid var(--input-border);
}

.br-t-1 {
    border-top: 1px solid var(--input-border);
}

@media (max-width: 767px) {
    .br-t-0_m {
        border-top: 0;
    }
}

@media (max-width: 767px) {
    .br-t-1_m {
        border-top: 1px solid var(--input-border);
    }
}

.br-b-1 {
    border-bottom: 1px solid var(--input-border);
}

.br-l-1 {
    border-left: 1px solid var(--input-border);
}

.br-r-1 {
    border-right: 1px solid var(--input-border);
}

.b-none {
    border: none;
}

.br-red-1 {
    border: 1px solid var(--red);
}

.benefits-bar {
    width: 100%;
    background: var(--grey-border);
    position: relative;
    max-width: 100vw;
}

.benefits-bar__benefit {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    max-width: 100vw;
}

@media(max-width: 959px) {
    .benefits-bar {
        display: grid;
        position: relative;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
    }

    .benefits-bar__benefit {
        grid-column: 1 / 2;
        grid-row: 1 / 2;
        opacity: 0;
        transition: opacity 0.5s ease-in-out;
        position: relative;
    }

    .benefits-bar__benefit_active {
        opacity: 1;
        z-index: 10;
    }
}

@media(min-width:960px) {
    .benefits-bar__benefit {
        opacity: 1 !important;
    }
}

@media (min-width: 960px) {
    .benefits-bar__benefit.hidden_t {
        display: none;
    }
}

@media (min-width: 1024px) {
    .benefits-bar__benefit.hidden_t {
        display: flex;
    }
}

@media (min-width: 1300px) {

    .benefits-bar__benefit.hidden_t {
        display: flex;
    }
}

.benefits-bar__icon {
    padding-right: 0.5rem;
    color: var(--red);
}

.benefits-bar__text {
    display: flex;
    color: var(--black);
    justify-content: center;
    align-items: center;
    height: 100%;
    gap: 0.5rem;
}

.benefits-bar__title {
    font-weight: 700;
    font-size: 0.825rem;
}

.benefits-bar__sub {
    font-size: 0.6875rem;
}

@media (min-width: 1300px) {
    .benefits-bar__sub {
        font-size: 0.825rem;
    }
}

.mobile-benefits {
    display: flex;
}

.mobile-benefits__benefit {
    width: 100%;
    padding: 0.5rem;
    text-decoration: none;
}

.mobile-benefits__benefit:first-child {
    margin-right: 0.25rem;
    border-radius: 0 7px 7px 0;
}

.mobile-benefits__benefit:last-child {
    margin-left: 0.25rem;
    border-radius: 7px 0 0 7px;
}

.mobile-benefits__title {
    padding-left: 0.25rem;
    font-size: 1.0625rem;
}

.mobile-benefits__hero {
    display: flex;
    align-items: center;
}

/* customize header end */


/* footer */

footer {
    color: var(--grey-4);
}

@media (min-width: 1800px) {
    footer {
        padding-bottom: 2rem;
    }
}

footer a {
    color: var(--grey-4);
}

footer a:hover {
    color: var(--red);
}

footer .social a i:hover {
    color: var(--red);
}

footer h3 {
    color: var(--white);
    font-weight: bold;
    padding-bottom: 1rem;
}

@media (min-width: 1800px) {
    footer h3 {
        padding-bottom: 2rem;
    }
}

footer ul {
    margin-bottom: -1rem;
}

footer li {
    padding-bottom: 1rem;
}

footer li a {
    text-decoration: none;
    font-size: 0.875rem;
}

@media (min-width: 1800px) {
    footer li a {
        font-size: 1rem;
    }
}

footer p {
    padding-bottom: 1rem;
    font-size: 0.875rem;
}

@media (min-width: 1800px) {
    footer p {
        font-size: 1rem;
    }
}

@media (min-width: 768px) {
    footer {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
}

.footer_col {
    padding: 1rem;
    border-bottom: 1px solid var(--grey-2);
}

@media (min-width: 768px) {
    .footer_col {
        border: none;
        flex-grow: 1;
        width: 33.333333%;
    }
}

@media (min-width: 1024px) {
    .footer_col {
        flex: 1;
    }
}

@media (min-width: 1024px) {
    .footer_col:last-child {
        flex: 2;
    }
}

@media (min-width: 1300px) {
    .footer_col {
        padding: 2rem 3rem;
        width: auto;
    }
}

.newsletter {
    background: var(--grey-2);
    border: 1px solid var(--grey-2);
    padding: 1rem;
    border-radius: 6px;
}

.newsletter input[type="text"] {
    border: 1px solid var(--grey-1);
    font-size: 1rem;
}

.newsletter input[type="text"]:-ms-input-placeholder {
    font-style: italic;
}

.newsletter input[type="text"]::-ms-input-placeholder {
    font-style: italic;
}

.newsletter input[type="text"]::placeholder {
    font-style: italic;
}

.newsletter p {
    padding: 1rem 0 0;
}

.sub-footer {
    width: 100%;
}

@media (min-width: 768px) {
    .sub-footer {
        border-top: 1px solid var(--grey-2);
    }
}

@media (min-width: 1300px) {
    .sub-footer {
        padding: 1rem 2rem;
    }
}

@media (min-width: 1800px) {
    .sub-footer {
        font-size: 0.825rem;
    }
}

@media (max-width: 767px) {
    footer li {
        padding-bottom: 0.4rem;
        line-height: 1.4;
    }

    footer ul {
        margin-bottom: -0.4rem; /* matches the li padding so the column ends flush */
    }

    footer p {
        padding-bottom: 0.4rem;
        margin-bottom: 0 !important; /* overrides the global p margin */
        line-height: 1.4;
    }

    footer h3 {
        padding-bottom: 0.6rem;
    }
}

/* footer end */


/* menu start */

#mega-menu-primary {
    display: flex!important;
    width: 100%!important;
    justify-content: stretch;
}


#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item {

    flex-grow: 1!important;
}

#mega-menu-primary > li.mega-menu-item > a{
    line-height: unset!important;
    height: unset!important;
    font-family: "Open Sans", sans-serif;
    font-weight: 800!important;
    border-bottom: 0;
    position: relative;
    /*text-align: center!important;*/
    font-size: clamp(10px, 1vw, 13px)!important;
    justify-content: center;
    align-items: center;
    /*padding: 12px 15px 11px;*/
    word-wrap: break-word;
    width: 100%;
    display: flex;
    color: white;
    text-decoration: none;
    letter-spacing: 1px;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {

    padding: 0px 15px 15px 11px;
}

@media only screen and (max-width: 768px) {
    #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary {
        left: -500px;
    }
}

/*mega-toggle-on*/

/* menu end */


/* search start */

.custom-header-search {
    width: 100%;
}

:is(.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands,.fa-classic,.fa):before {
    display: none;
}


.header__search {
    display: none;
}

@media (min-width: 960px) {
    .header__search {
        display: block;
        width: 100%;
        margin-right: auto;
        padding: 0 2rem;
    }
}

.header__search_visible,
.header__search_closed {
    display: flex;
    position: absolute;
    top: 100%;
    width: 100%;
    background: var(--black);
    left: 0;
    align-items: center;
    animation: open 0.25s;
    transition-timing-function: cubic-bezier(0.17, 0.67, 0.83, 0.67);
    transform-origin: top right 2rem;
    z-index: 99;
}

.header__search_visible:before,
.header__search_closed:before {
    content: "";
    display: block;
    background: var(--white);
    width: 3px;
    height: 2rem;
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translate(-50%, -50%);
}

.header__search_visible .header__search__text-input,
.header__search_closed .header__search__text-input {
    background: none;
    border: none;
    color: var(--white);
    padding: 1.5rem 2rem;
    font-size: 1rem;
    width: 100%;
    outline: none;
}

.header__search_visible :-ms-input-placeholder,
.header__search_closed :-ms-input-placeholder {
    color: var(--grey-4);
}

.header__search_visible ::-ms-input-placeholder,
.header__search_closed ::-ms-input-placeholder {
    color: var(--grey-4);
}

.header__search_visible ::placeholder,
.header__search_closed ::placeholder {
    color: var(--grey-4);
}

.header__search_closed {
    display: flex;
    animation: close 0.25s;
    transition-timing-function: cubic-bezier(0.13, 0.98, 0.4, 0.3);
    transform-origin: top right;
    transform: scale(0);
}

.header__search__close {
    height: 100%;
    padding: 1rem;
    display: none;
}

.header__search_visible .header__search__close {
    display: block;
}

.header__search-button {
    height: 100%;
    padding: 1rem;
    padding: 0.5rem;
}

@media (min-width: 960px) {
    .header__search {
        height: 3rem;
        display: flex;
    }


    .header__search-button,
    button.header__search-button {
        height: 3rem;
        width: 3rem;
        background: var(--orange);
        border-radius: 0 6px 6px 0;
    }

    .header__search__text-input {
        flex: 1 1 0%;
        height: 3rem;
        border: 1px solid var(--input-border);
        background: var(--input);
        width: 100%;
        padding: 1rem;
        font-size: 1.125rem;
        border-radius: 6px 0 0 6px!important;
    }

    .header__search-toggle {
        display: none;
    }

    .header__search__text-input:-ms-input-placeholder {
        color: var(--grey-4);
        font-style: italic;
    }

    .header__search__text-input::-ms-input-placeholder {
        color: var(--grey-4);
        font-style: italic;
    }

    .header__search__text-input::placeholder {
        color: var(--grey-4);
        font-style: italic;
    }
}
/* search end */


/* Sidebar left ONLY on product categories */
/*.tax-product_cat .site-main {*/
/*    display: flex;*/
/*}*/

/*.tax-product_cat .site-main .widget-area {*/
/*    order: -1;*/
/*    margin-right: 30px;*/
/*}*/

/* =========================================
   FIX: WooCommerce category sidebar layout
   (GeneratePress – minimal override)
   ========================================= */

.woocommerce-shop .site-content  {
    display: flex;
}

.woocommerce-shop .widget-area.is-left-sidebar {
    order: 1;
}

.woocommerce-shop .site-content .content-area {
    order: 2;
}

.icon_above_image {

    right: unset!important;
    left: 7px;
}

.tax-product_brand .site-content {
    display: flex;
    align-items: flex-start;
}

.tax-product_cat .site-content {
    display: flex;
    align-items: flex-start;
}

/* Sidebar (left) */
.tax-product_cat .widget-area.sidebar {
    order: 1;
   /* width: 22%;*/
   /* flex: 0 0 22%;*/
}

/* Main content (right) */
.tax-product_cat .content-area {
    order: 2;
    width: 80%;
    flex: 0 0 80%;
}

/* Mobile: stack again */
@media (max-width: 768px) {
    .tax-product_cat .site-content {
        display: block;
    }
}


/* Woocommerce category */

.woocommerce-products-header__title {
    font-size: 2rem;
    color: var(--red);
    font-weight: 700;
    padding: 0.5rem 0.5rem 0.5rem;
}


.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull {
    margin-left: auto;
    width: auto;
}




/* ==========================================================
   MAX MEGA MENU – TRUE COLUMN (MASONRY) LAYOUT
   Fixes ALL vertical gaps between columns
   ========================================================== */

/* 1️⃣ Turn the mega menu into real columns */
#mega-menu-wrap-primary
li.mega-menu-megamenu > ul.mega-sub-menu {
    column-count: 4 !important;     /* 4 columns */
    column-gap: 48px !important;    /* spacing between columns */
    /*display: block !important;      !* disable flex/grid *!*/
    display: block;
}

/* 2️⃣ Prevent items from breaking across columns */
#mega-menu-wrap-primary
li.mega-menu-megamenu > ul.mega-sub-menu
> li.mega-menu-item {
    break-inside: avoid !important;
    -webkit-column-break-inside: avoid !important;
    page-break-inside: avoid !important;
    width: 100% !important;
}


/* 7️⃣ Improve readability */
#mega-menu-wrap-primary
.mega-menu-link {
    line-height: 1.35;
}

/* 8️⃣ Responsive: 2 columns on tablet */
@media (max-width: 1024px) {
    #mega-menu-wrap-primary
    li.mega-menu-megamenu > ul.mega-sub-menu {
        column-count: 2 !important;
    }
}

/* 9️⃣ Responsive: 1 column on mobile */
@media (max-width: 767px) {
    #mega-menu-wrap-primary
    li.mega-menu-megamenu > ul.mega-sub-menu {
        column-count: 1 !important;
    }
}



/* Borders on all items (default) */
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column-standard,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
    border-bottom: 1px solid #000;
    padding-bottom: 10px; /* optional spacing */
    margin-bottom: 10px;  /* optional spacing */
}

/* JS will add this class to the last visible item in each column */
#mega-menu-wrap-primary .mm-no-border {
    border-bottom: none !important;
}

.wc-block-mini-cart__button {
    background: #f2f2f2!important;
    width: 42px;
    height: 42px;
    min-width: 42px;
    min-height: 42px;
    border-radius: 0.25rem;
}

.wc-block-mini-cart__button svg {
    color: #262626;
}

span:where(.wc-block-mini-cart__badge) {
    background-color: #dc0c23!important;
    color: #f2f2f2!important;
}

@media only screen and (max-width: 768px) {
    #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary {
        background-color: #3e4c57;
    }


    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
        border-bottom: 1px solid #536675;
        padding: 12px 15px 11px;
        word-wrap: break-word;
        width: 100%;
        display: flex;
        color: white;
        text-decoration: none;
        font-weight: 400;
        font-size: 15px!important;
        letter-spacing: 1px;
        justify-content: space-between;
    }

    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item {
        flex-grow: unset!important;
    }

    #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator:after {
        font-size: 25px!important;
    }

    #mega-menu-primary > li.mega-menu-item > a {
        height: 40px!important;
    }

    #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column-standard {
        padding-bottom: 0!important;
    }

    #mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open ~ button.mega-close {
        visibility: visible;
        opacity: 1;
        left: 90%;
        background: #3e4c57;
        border-bottom: 1px solid #536675;
        margin-top: -1px;
    }

}


/* Cap subcategory tile width when there are few items */
.tuf-sbc.cat-subcategories .cat-grid-bottom {
    grid-template-columns: repeat(auto-fill, minmax(160px, 200px));
    justify-content: start;
}

/* ---- home: brands showcase (Custom HTML block) ----
   Layout only. Cards, type, button and the red slash motif all come from
   .uf-brandcard / .ey / .btn above. The markup lives in the homepage
   Custom HTML block; keep the .uf-bhome prefix so nothing collides.
   Two tidy rows at every width: 16 desktop / 12 laptop / 6 mobile. */
.uf-clean .uf-bhome{
  /* Content cap on wide desktops; background stays full-bleed.
     max() keeps the clamp gutters until the viewport passes the cap. */
  --uf-max:1520px;   /* matches .wrap.uf-wide; lower to pull in further */
  padding-block:20px 24px;
  padding-inline:max(clamp(14px,4vw,40px), calc((100% - var(--uf-max)) / 2));
  background:var(--bg);
}
.uf-clean .uf-bhome__head{margin-bottom:32px;}
.uf-clean .uf-bhome__head h2{
  font-family:var(--display);
  font-size:clamp(1.9rem,3vw,2.6rem);
  line-height:1.04;letter-spacing:.005em;margin-bottom:14px;
}
.uf-clean .uf-bhome__head p{margin-bottom:18px;}
.uf-clean .uf-bhome__accent{
  width:44px;height:4px;background:var(--red);
  transform:skewX(-20deg);border-radius:1px;
}

/* 8 across, two rows */
.uf-clean .uf-bhome__grid{
  display:grid;grid-template-columns:repeat(8,1fr);gap:14px;margin-bottom:32px;
}
.uf-clean .uf-bhome__grid .uf-brandcard:nth-child(n+17){display:none;}

/* Lifted card, so it sits with the Shop By Category tiles */
.uf-clean .uf-bhome__grid .uf-brandcard{
  border-color:transparent;box-shadow:var(--shadow-sm);
}
.uf-clean .uf-bhome__grid .uf-brandcard:hover{
  transform:translateY(-4px);box-shadow:var(--shadow);
  border-color:rgba(220,0,0,.28);
}
.uf-clean .uf-bhome__grid .uf-brandcard:hover .uf-brandcard__name{color:var(--red);}

.uf-clean .uf-bhome__cta{text-align:center;}

/* Laptop — 6 across, 12 brands */
@media (max-width:1200px){
  .uf-clean .uf-bhome__grid{grid-template-columns:repeat(6,1fr);}
  .uf-clean .uf-bhome__grid .uf-brandcard:nth-child(n+13){display:none;}
}

/* Mobile / tablet — 3 across, 6 brands */
@media (max-width:900px){
  .uf-clean .uf-bhome{padding:18px clamp(14px,4vw,40px) 22px;}
  .uf-clean .uf-bhome__grid{grid-template-columns:repeat(3,1fr);gap:12px;}
  .uf-clean .uf-bhome__grid .uf-brandcard:nth-child(n+7){display:none;}
  .uf-clean .uf-bhome__grid .uf-brandcard img{height:62px;}
}

@media (max-width:480px){
  .uf-clean .uf-bhome{padding:16px clamp(12px,3.5vw,16px) 20px;}
  .uf-clean .uf-bhome__grid{gap:10px;}
  .uf-clean .uf-bhome__grid .uf-brandcard{padding:14px 8px 12px;}
  .uf-clean .uf-bhome__grid .uf-brandcard img{height:52px;}
  .uf-clean .uf-bhome__grid .uf-brandcard__name{font-size:.7rem;}
  .uf-clean .uf-bhome__cta .btn{width:100%;max-width:320px;}
}

@media (prefers-reduced-motion:reduce){
  .uf-clean .uf-bhome__grid .uf-brandcard:hover{transform:none;}
}

/* ============================================================
   HOMEPAGE SECTIONS — append to the end of ufbase.css
   Contains: the brand dark token, the band system, the
   "Talk to us" CTA and the Blog section.

   Markup for both sections lives in their own Custom HTML
   blocks on the homepage. Nothing here touches existing rules.
   ============================================================ */

/* ---- brand dark ground ----
   --ink (#1d1d1f) stays the TEXT colour. This is the ground
   colour for dark sections only. Declared on .uf-clean so it
   sits alongside the existing tokens without editing them. */
.uf-clean{
  --deep:#034963;
}

/* ---- band system ----
   One modifier per section controls ground and measure, so the
   homepage rhythm is set by class names rather than by editing
   each section's CSS. Background stays full-bleed; content is
   capped by --uf-max and centred with the max() gutter. */
.uf-clean .uf-band{
  --uf-max:1720px;
  background:var(--bg);
  padding-block:20px 24px;
  padding-inline:max(clamp(14px,4vw,40px), calc((100% - var(--uf-max)) / 2));
}
.uf-clean .uf-band--white{background:var(--card);}
.uf-clean .uf-band--deep{background:var(--deep);color:#fff;}
.uf-clean .uf-band--narrow{--uf-max:1240px;}

@media (max-width:900px){
  .uf-clean .uf-band{padding-block:18px 22px;}
}
@media (max-width:480px){
  .uf-clean .uf-band{padding-block:16px 20px;padding-inline:clamp(12px,3.5vw,16px);}
}

/* ============================================================
   TALK TO US — inset panel, not a band
   The panel floats on the paper ground, which is what stops the
   homepage reading as a stack of slabs. Sits directly under the
   Categories section and shares its ground deliberately.
   ============================================================ */
.uf-clean .uf-talk{
  --uf-max:1720px;
  background:var(--bg);
  padding-block:10px 24px;
  padding-inline:max(clamp(14px,4vw,40px), calc((100% - var(--uf-max)) / 2));
}
.uf-clean .uf-talk__panel{
  position:relative;overflow:hidden;
  background:var(--deep);color:#fff;border-radius:var(--radius-lg);
  display:grid;grid-template-columns:1.25fr .9fr;gap:clamp(28px,4vw,56px);
  align-items:center;padding:clamp(30px,4vw,44px);
}
/* one gradient, no image — stops the dark panel reading flat */
.uf-clean .uf-talk__panel::after{
  content:"";position:absolute;right:-70px;top:-60px;width:320px;height:320px;
  background:radial-gradient(circle,rgba(220,0,0,.20),transparent 68%);
  pointer-events:none;
}
.uf-clean .uf-talk__text,
.uf-clean .uf-talk__actions{position:relative;z-index:1;}

.uf-clean .uf-talk .ey{color:rgba(255,255,255,.55);margin-bottom:0;}
.uf-clean .uf-talk h2{
  font-family:var(--display);color:#fff;
  font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.02;letter-spacing:.005em;
  margin:14px 0 0;max-width:13ch;
}
.uf-clean .uf-talk__text p{
  color:rgba(255,255,255,.62);font-size:.98rem;line-height:1.6;
  margin:16px 0 0;max-width:46ch;
}

.uf-clean .uf-talk__actions{display:grid;gap:16px;justify-items:start;}
.uf-clean .uf-talk__tel-label{
  font-family:var(--body);font-weight:700;font-size:.64rem;letter-spacing:.2em;
  text-transform:uppercase;color:rgba(255,255,255,.45);
}
.uf-clean .uf-talk__tel{
  font-family:var(--display);font-weight:700;color:#fff;
  font-size:clamp(1.3rem,3.6vw,2.6rem);line-height:1;letter-spacing:-.01em;
  text-decoration:none;border-bottom:none;display:block;margin-top:6px;
  transition:color .2s ease;
}
.uf-clean .uf-talk__tel:hover,
.uf-clean .uf-talk__tel:focus{color:#fff;opacity:.85;}
.uf-clean .uf-talk__hours{
  color:rgba(255,255,255,.5);font-size:.85rem;margin:-6px 0 2px;max-width:none;
}
.uf-clean .uf-talk__btns{display:flex;gap:10px;flex-wrap:wrap;}

@media (max-width:860px){
  .uf-clean .uf-talk__panel{grid-template-columns:1fr;gap:26px;}
  .uf-clean .uf-talk h2{max-width:none;}
}
@media (max-width:480px){
  .uf-clean .uf-talk{padding-block:8px 20px;padding-inline:clamp(12px,3.5vw,16px);}
  .uf-clean .uf-talk__btns .ufbtn{width:100%;justify-content:center;}
}

/* ============================================================
   BLOG — editorial, on the brand dark
   One feature plus three compact rows. No card chrome: the
   external-content signals are the ↗ arrow, the named domain,
   the absence of product-card styling, and the red tag.
   ============================================================ */
.uf-clean .uf-blog{
  --uf-max:1540px;
  background:var(--deep);color:#fff;
  padding-block:20px 28px;
  padding-inline:max(clamp(14px,4vw,40px), calc((100% - var(--uf-max)) / 2));
}
.uf-clean .uf-blog__head{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:24px;flex-wrap:wrap;margin-bottom:28px;
}
.uf-clean .uf-blog .ey{color:rgba(255,255,255,.5);margin-bottom:0;}
.uf-clean .uf-blog h2{
  font-family:var(--display);color:#fff;
  font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.04;letter-spacing:.005em;
  margin:12px 0 0;
}
.uf-clean .uf-blog__src{
  font-size:.82rem;color:rgba(255,255,255,.6);text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.28);padding-bottom:2px;white-space:nowrap;
  transition:color .2s ease;
}
.uf-clean .uf-blog__src:hover{color:#fff;}
.uf-clean .uf-blog__src b{color:#fff;font-weight:700;}

.uf-clean .uf-blog__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(24px,3vw,38px);align-items:stretch;}

.uf-clean .uf-blog__feature{text-decoration:none;border-bottom:none;display:block;color:inherit;}
.uf-clean .uf-blog__feature .shot{
  width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden;
  background:rgba(255,255,255,.06);display:block;
}
.uf-clean .uf-blog__feature .shot img,
.uf-clean .uf-blog__row .shot img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .45s ease;
}
.uf-clean .uf-blog__feature:hover .shot img,
.uf-clean .uf-blog__row:hover .shot img{transform:scale(1.04);}

.uf-clean .uf-blog__tag{
  font-family:var(--body);font-weight:700;font-size:.62rem;letter-spacing:.16em;
  text-transform:uppercase;color:#ff4d4d;display:block;margin-top:16px;
}
.uf-clean .uf-blog__feature h3{
  font-family:var(--display);font-weight:700;color:#fff;
  font-size:clamp(1.3rem,2.2vw,1.75rem);line-height:1.08;margin:10px 0 8px;
  text-wrap:balance;
}
.uf-clean .uf-blog__feature p{
  color:rgba(255,255,255,.58);font-size:.92rem;margin:0;max-width:52ch;
}
.uf-clean .uf-blog__meta{
  font-size:.75rem;color:rgba(255,255,255,.42);margin-top:10px;
}

/* Rows stay tight at the top; only the CTA drops to the bottom, so it
   lands level with the feature's last line without stretching the rows. */
.uf-clean .uf-blog__rows{display:flex;flex-direction:column;}
.uf-clean .uf-blog__rows .uf-cta-block{margin-top:auto;}
.uf-clean .uf-blog__row:last-of-type{margin-bottom:22px;}
.uf-clean .uf-blog__row{
  display:grid;grid-template-columns:104px 1fr;gap:16px;align-items:center;
  padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12);
  text-decoration:none;border-left:none;border-right:none;color:inherit;
}
.uf-clean .uf-blog__row:first-child{padding-top:0;}
.uf-clean .uf-blog__row .shot{
  width:100%;aspect-ratio:4/3;border-radius:9px;overflow:hidden;
  background:rgba(255,255,255,.06);display:block;
}
.uf-clean .uf-blog__row .uf-blog__tag{margin-top:0;}
.uf-clean .uf-blog__row h3{
  font-family:var(--body);font-weight:700;color:#fff;
  font-size:.98rem;line-height:1.35;margin:6px 0 0;
}
.uf-clean .uf-blog__row:hover h3{color:#fff;text-decoration:underline;}

/* red block CTA, shared with Staff Picks */
.uf-clean .uf-cta-block{
  display:block;width:100%;text-align:center;margin-top:22px;
  padding:15px 22px;border-radius:100px;
  background:var(--red);color:#fff;border-bottom:none;
  font-family:var(--body);font-weight:700;font-size:.76rem;
  letter-spacing:.12em;text-transform:uppercase;text-decoration:none;
  transition:background .2s ease, transform .2s ease;
}
.uf-clean .uf-cta-block:hover,
.uf-clean .uf-cta-block:focus{background:#b50000;color:#fff;transform:translateY(-2px);}

@media (max-width:860px){
  .uf-clean .uf-blog__grid{grid-template-columns:1fr;gap:28px;}
  .uf-clean .uf-blog__rows{margin-top:-6px;}
  .uf-clean .uf-blog__rows .uf-blog__row:first-child{
    padding-top:16px;border-top:1px solid rgba(255,255,255,.12);
  }
}
@media (max-width:480px){
  .uf-clean .uf-blog{padding-block:16px 24px;padding-inline:clamp(12px,3.5vw,16px);}
  .uf-clean .uf-blog__row{grid-template-columns:84px 1fr;gap:13px;}
  .uf-clean .uf-blog__row h3{font-size:.9rem;}
}

@media (prefers-reduced-motion:reduce){
  .uf-clean .uf-blog__feature .shot img,
  .uf-clean .uf-blog__row .shot img,
  .uf-clean .uf-cta-block,
  .uf-clean .uf-talk__tel{transition:none;}
  .uf-clean .uf-blog__feature:hover .shot img,
  .uf-clean .uf-blog__row:hover .shot img{transform:none;}
  .uf-clean .uf-cta-block:hover{transform:none;}
}