/* Added to prevent horizontal scrolling */
html, body {
    overflow-x: hidden;
    width: 100%;
}
/*.container-fluid {
    max-width: 100%;
    overflow: hidden;
}*/
:root {
    --wp--preset--aspect-ratio--square: 1;
    --wp--preset--aspect-ratio--4-3: 4 / 3;
    --wp--preset--aspect-ratio--3-4: 3 / 4;
    --wp--preset--aspect-ratio--3-2: 3 / 2;
    --wp--preset--aspect-ratio--2-3: 2 / 3;
    --wp--preset--aspect-ratio--16-9: 16 / 9;
    --wp--preset--aspect-ratio--9-16: 9 / 16;
    --wp--preset--color--black: #000;
    --wp--preset--color--cyan-bluish-gray: #abb8c3;
    --wp--preset--color--white: #fff;
    --wp--preset--color--pale-pink: #f78da7;
    --wp--preset--color--vivid-red: #cf2e2e;
    --wp--preset--color--luminous-vivid-orange: #ff6900;
    --wp--preset--color--luminous-vivid-amber: #fcb900;
    --wp--preset--color--light-green-cyan: #7bdcb5;
    --wp--preset--color--vivid-green-cyan: #00d084;
    --wp--preset--color--pale-cyan-blue: #8ed1fc;
    --wp--preset--color--vivid-cyan-blue: #0693e3;
    --wp--preset--color--vivid-purple: #9b51e0;
    --wp--preset--color--primary: #f15a23;
    --wp--preset--color--secondary: #8b1500;
    --wp--preset--color--background-1: #fff;
    --wp--preset--color--background-2: #f8f7f6;
    --wp--preset--color--background-3: #f4f2f0;
    --wp--preset--color--background-4: #eae6e1;
    --wp--preset--color--foreground-1: #000;
    --wp--preset--color--foreground-2: #222;
    --wp--preset--color--foreground-3: #333;
    --wp--preset--color--foreground-4: #777;
    --wp--preset--color--tertiary: #777;
    --wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg, rgba(6, 147, 227, 1) 0%, #9b51e0 100%);
    --wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg, #7adcb4 0%, #00d082 100%);
    --wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg, rgba(252, 185, 0, 1) 0%, rgba(255, 105, 0, 1) 100%);
    --wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg, rgba(255, 105, 0, 1) 0%, #cf2e2e 100%);
    --wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg, #eee 0%, #a9b8c3 100%);
    --wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg, #4aeadc 0%, #9778d1 20%, #cf2aba 40%, #ee2c82 60%, #fb6962 80%, #fef84c 100%);
    --wp--preset--gradient--blush-light-purple: linear-gradient(135deg, #ffceec 0%, #9896f0 100%);
    --wp--preset--gradient--blush-bordeaux: linear-gradient(135deg, #fecda5 0%, #fe2d2d 50%, #6b003e 100%);
    --wp--preset--gradient--luminous-dusk: linear-gradient(135deg, #ffcb70 0%, #c751c0 50%, #4158d0 100%);
    --wp--preset--gradient--pale-ocean: linear-gradient(135deg, #fff5cb 0%, #b6e3d4 50%, #33a7b5 100%);
    --wp--preset--gradient--electric-grass: linear-gradient(135deg, #caf880 0%, #71ce7e 100%);
    --wp--preset--gradient--midnight: linear-gradient(135deg, #020381 0%, #2874fc 100%);
    --wp--preset--gradient--hard-vertical-background-1-to-foreground-1: linear-gradient(to bottom, var(--wp--preset--color--background-1) 50%, var(--wp--preset--color--foreground-1) 50%);
    --wp--preset--gradient--hard-vertical-foreground-1-to-background-1: linear-gradient(to bottom, var(--wp--preset--color--foreground-1) 50%, var(--wp--preset--color--background-1) 50%);
    --wp--preset--gradient--hard-horizontal-background-1-to-foreground-1: linear-gradient(to right, var(--wp--preset--color--background-1) 50%, var(--wp--preset--color--foreground-1) 50%);
    --wp--preset--gradient--hard-horizontal-foreground-1-to-background-1: linear-gradient(to right, var(--wp--preset--color--foreground-1) 50%, var(--wp--preset--color--background-1) 50%);
    --wp--preset--gradient--hard-vertical-background-1-to-background-2: linear-gradient(to bottom, var(--wp--preset--color--background-1) 50%, var(--wp--preset--color--background-2) 50%);
    --wp--preset--gradient--hard-vertical-background-2-to-background-1: linear-gradient(to bottom, var(--wp--preset--color--background-2) 50%, var(--wp--preset--color--background-1) 50%);
    --wp--preset--font-size--small: clamp(1rem, 1rem + ((1vw - .2rem) * .185), 1.125rem);
    --wp--preset--font-size--medium: clamp(1.125rem, 1.125rem + ((1vw - .2rem) * .37), 1.375rem);
    --wp--preset--font-size--large: clamp(1.25rem, 1.25rem + ((1vw - .2rem) * 1.111), 2rem);
    --wp--preset--font-size--x-large: clamp(1.5rem, 1.5rem + ((1vw - .2rem) * 1.667), 2.625rem);
    --wp--preset--font-size--xx-large: clamp(2rem, 2rem + ((1vw - .2rem) * 2.963), 4rem);
    --wp--preset--font-size--xxx-large: clamp(2.75rem, 2.75rem + ((1vw - .2rem) * 3.333), 5rem);
    --wp--preset--font-size--giant: clamp(3.5rem, 3.5rem + ((1vw - .2rem) * 6.296), 7.75rem);
    --wp--preset--font-family--base: "Museo Sans", sans-serif;
    --wp--preset--font-family--accent: "Bethany Elingston", sans-serif;
    --wp--preset--spacing--20: .44rem;
    --wp--preset--spacing--30: .67rem;
    --wp--preset--spacing--40: 1rem;
    --wp--preset--spacing--50: 1.5rem;
    --wp--preset--spacing--60: 2.25rem;
    --wp--preset--spacing--70: 3.38rem;
    --wp--preset--spacing--80: 5.06rem;
    --wp--preset--spacing--x-small: clamp(.5rem, 1.5vw, 1rem);
    --wp--preset--spacing--small: clamp(.75rem, 2vw, 1.5rem);
    --wp--preset--spacing--medium: clamp(1rem, 2.5vw, 2rem);
    --wp--preset--spacing--large: clamp(1.25rem, 4vw, 3rem);
    --wp--preset--spacing--x-large: clamp(1.5rem, 6.5vw, 4rem);
    --wp--preset--spacing--xx-large: clamp(2rem, 7.5vw, 6rem);
    --wp--preset--spacing--giant: clamp(2rem, 8vw, 7.5rem);
    --wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, .2);
    --wp--preset--shadow--deep: 0px 24px 30px 0 rgba(0, 0, 0, .21);
    --wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, .2);
    --wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);
    --wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);
    --wp--custom--line-height--one: 1;
    --wp--custom--line-height--tiny: 1.1;
    --wp--custom--line-height--small: 1.25;
    --wp--custom--line-height--medium: 1.4;
    --wp--custom--line-height--normal: 1.6;
    --wp--custom--line-height--large: 2;
    --wp--custom--font-weight--thin: 100;
    --wp--custom--font-weight--extra-light: 200;
    --wp--custom--font-weight--light: 300;
    --wp--custom--font-weight--regular: 400;
    --wp--custom--font-weight--medium: 500;
    --wp--custom--font-weight--semi-bold: 600;
    --wp--custom--font-weight--bold: 700;
    --wp--custom--font-weight--extra-bold: 800;
    --wp--custom--font-weight--black: 900;
    --wp--custom--border-radius--tiny: 3px;
    --wp--custom--border-radius--small: 8px;
    --wp--custom--border-radius--medium: 24px;
    --wp--custom--border-radius--large: clamp(1.25rem, 2.5vw, 2rem);
    --wp--custom--border-radius--round: 9999px;
    --wp--custom--border-radius--circle: 50%;
}
.carousel-wrap-overflow-hide {
    overflow: hidden;
}

.cc_carousel .flickity-viewport {
    overflow: hidden;
    height: 100%;
}

.cc_carousel .carousel-cell {
    border-radius: 20px;
    margin-right: 12px;
    margin-left: 12px;
    display: flex;
    flex-direction: column;
    transition: all .2s ease-in-out;
    min-height: 100%;
}

.cc_carousel--dynamic .carousel-cell {
    width: calc(33.3333333333% - 24px);
    position: relative;
    transition: all .2s ease-in-out;
    align-items: stretch;
    background-color: var(--wp--preset--color--background-1);
}

@media (max-width: 1024px) {
    .cc_carousel--dynamic .carousel-cell {
        width:calc(50% - 24px);
    }
}

@media (max-width: 780px) {
    .cc_carousel--dynamic .carousel-cell {
        width:calc(100% - 24px);
    }
}

.cc_carousel--dynamic .carousel-cell:hover {
    background-color: var(--wp--preset--color--foreground-1);
    color: var(--wp--preset--color--background-1);
    margin-top: -12px;
    /*box-shadow: 0px 20px 60px 0px rgba(0,0,0,.2);*/
    box-shadow: none;
    z-index: 99;
}

.cc_carousel--dynamic .carousel-cell:hover .carousel-cell--top--inner {
    background: linear-gradient(180deg,rgba(0,0,0,0) 50%,#000 100%);
    height: 100%;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--inner {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-grow: 1;
    overflow: hidden !important;
    min-height: 100%;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top {
    height: 512px;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat;
    background-color: var(--wp--preset--color--foreground-1);
    border-radius: 20px;
    display: flex;
    align-items: flex-end;
    transition: all .2s ease-in-out;
}

@media (max-width: 780px) {
    .cc_carousel--dynamic .carousel-cell .carousel-cell--top {
        height:400px;
    }
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top--inner {
    padding: var(--wp--preset--spacing--small);
    height: 100%;
    height: 50%;
    display: flex;
    align-items: flex-end;
    border-radius: 20px;
    width: 100%;
    transition: all .2s ease-in-out;
    background: linear-gradient(180deg,rgba(0,0,0,0) 50%,rgba(0,0,0,0) 100%);
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top a {
    position: static;
    z-index: 4;
    color: var(--wp--preset--color--background-1);
    text-decoration: none;
    font-size: var(--wp--preset--font-size--x-large);
    font-family: var(--wp--preset--font-family--accent);
    letter-spacing: 0;
    font-weight: 400;
    line-height: 1;
}

@media screen and (max-width: 780px) {
    .cc_carousel--dynamic .carousel-cell .carousel-cell--top a {
        font-size:var(--wp--preset--font-size--xxx-large);
    }
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top a span {
    display: block;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top a::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    transition: all .2s ease-in-out;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--bottom {
    padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--large) var(--wp--preset--spacing--small) var(--wp--preset--spacing--small);
    font-size: var(--wp--preset--font-size--medium);
    line-height: 1.25;
}

.flickity-enabled {
    position: relative;
}

.flickity-enabled:focus {
    outline: none;
}

.flickity-viewport {
    overflow: hidden;
    position: relative;
    height: 100%;
}

.flickity-slider {
    position: absolute;
    width: 100%;
    height: 100%;
}

.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}

.flickity-button {
    position: absolute;
    background: hsla(0,0%,100%,.75);
    border: none;
    color: var(--wp--preset--color--foreground-2);
}

.flickity-button:hover {
    background: var(--wp--preset--color--primary);
    cursor: pointer;
    color: var(--wp--preset--color--background-1);
}

.flickity-button:focus {
    outline: none;
    box-shadow: 0 0 0 5px #19f;
}

.flickity-button:active {
    opacity: .6;
}

.flickity-button:disabled {
    opacity: .3;
    cursor: auto;
    pointer-events: none;
}

.flickity-button-icon {
    fill: currentColor;
}

.flickity-prev-next-button {
    top: 50%;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    transform: translateY(-50%);
    background-color: var(--wp--preset--color--background-3);
}

.flickity-prev-next-button.previous {
    left: 10px;
}

.flickity-prev-next-button.next {
    right: 10px;
}

.flickity-rtl .flickity-prev-next-button.previous {
    left: auto;
    right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
    right: auto;
    left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
    position: absolute;
    left: 35%;
    top: 35%;
    width: 30%;
    height: 30%;
}

.flickity-page-dots {
    position: absolute;
    width: 100%;
    bottom: -25px;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    line-height: 1;
}

.flickity-rtl .flickity-page-dots {
    direction: rtl;
}

.flickity-page-dots .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 8px;
    background: #333;
    border-radius: 50%;
    opacity: .25;
    cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
    opacity: 1;
}

.cc_carousel {
    visibility: hidden;
}

.cc_carousel.is-flickity-ready {
    visibility: visible;
}

.carousel-wrap-overflow-hide {
    overflow: hidden;
}

.cc_carousel .flickity-viewport {
    overflow: visible;
    height: 100%;
}

.cc_carousel .carousel-cell {
    border-radius: 20px;
    margin-right: 12px;
    margin-left: 12px;
    display: flex;
    flex-direction: column;
    transition: all .2s ease-in-out;
    min-height: 100%;
}

.cc_carousel--dynamic .carousel-cell {
    width: calc(33.3333333333% - 16px);
    position: relative;
    transition: all .2s ease-in-out;
    align-items: stretch;
    background-color: var(--wp--preset--color--background-1);
}

@media (max-width: 1024px) {
    .cc_carousel--dynamic .carousel-cell {
        width:calc(50% - 16px);
    }
}

@media (max-width: 780px) {
    .cc_carousel--dynamic .carousel-cell {
        width:calc(100% - 16px);
    }
}

.cc_carousel--dynamic .carousel-cell:hover {
    background-color: var(--wp--preset--color--foreground-1);
    color: var(--wp--preset--color--background-1);
    margin-top: -12px;
    box-shadow: 0px 20px 60px 0px rgba(0,0,0,.2);
    z-index: 99;
}

.cc_carousel--dynamic .carousel-cell:hover .carousel-cell--top--inner {
    background: linear-gradient(180deg,rgba(0,0,0,0) 50%,#000 100%);
    height: 100%;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--inner {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-grow: 1;
    overflow: hidden !important;
    min-height: 100%;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top {
    height: 512px;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat;
    background-color: var(--wp--preset--color--foreground-1);
    border-radius: 20px;
    display: flex;
    align-items: flex-end;
    transition: all .2s ease-in-out;
}

@media (max-width: 780px) {
    .cc_carousel--dynamic .carousel-cell .carousel-cell--top {
        height:400px;
    }
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top--inner {
    padding: var(--wp--preset--spacing--small);
    height: 100%;
    height: 50%;
    display: flex;
    align-items: flex-end;
    border-radius: 20px;
    width: 100%;
    transition: all .2s ease-in-out;
    background: linear-gradient(180deg,rgba(0,0,0,0) 50%,rgba(0,0,0,0) 100%);
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top a {
    position: static;
    z-index: 4;
    color: var(--wp--preset--color--background-1);
    text-decoration: none;
    font-size: var(--wp--preset--font-size--x-large);
    font-family: var(--wp--preset--font-family--accent);
    letter-spacing: 0;
    font-weight: 400;
    line-height: 1;
}

@media screen and (max-width: 780px) {
    .cc_carousel--dynamic .carousel-cell .carousel-cell--top a {
        font-size:var(--wp--preset--font-size--xxx-large);
    }
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top a span {
    display: block;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--top a::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    transition: all .2s ease-in-out;
}

.cc_carousel--dynamic .carousel-cell .carousel-cell--bottom {
    padding: var(--wp--preset--spacing--small) var(--wp--preset--spacing--large) var(--wp--preset--spacing--small) var(--wp--preset--spacing--small);
    font-size: var(--wp--preset--font-size--medium);
    line-height: 1.25;
}

.cc_carousel--cards .carousel-cell {
    width: 44%;
    background-color: var(--wp--preset--color--background-2);
    align-items: stretch;
}

@media (max-width: 780px) {
    .cc_carousel--cards .carousel-cell {
        width:100%;
    }
}

.cc_carousel--cards .carousel-cell:hover {
    background-color: var(--wp--preset--color--foreground-1);
    margin-top: -12px;
    box-shadow: 0px 20px 60px 0px rgba(0,0,0,.2);
}

.cc_carousel--cards .carousel-cell:hover .carousel-cell--top--heading,.cc_carousel--cards .carousel-cell:hover .carousel-cell--top--copy {
    color: var(--wp--preset--color--background-1);
}

.cc_carousel--cards .carousel-cell:hover .carousel-cell--top--link span {
    transform: translateX(4px);
}

.cc_carousel--cards .carousel-cell:hover .carousel-cell--bottom--scrim {
    opacity: 0;
}

.cc_carousel--cards .carousel-cell .carousel-cell--inner {
    display: inline-flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
    overflow: hidden !important;
    min-height: 100%;
}

.cc_carousel--cards .carousel-cell .carousel-cell--top {
    padding: var(--wp--preset--spacing--large) var(--wp--preset--spacing--x-large) 0 var(--wp--preset--spacing--large);
}

.cc_carousel--cards .carousel-cell .carousel-cell--top--heading {
    font-family: var(--wp--preset--font-family--accent);
    font-size: var(--wp--preset--font-size--xx-large);
    letter-spacing: normal;
    font-weight: 400;
    margin: 0 0 var(--wp--preset--spacing--small);
}

.cc_carousel--cards .carousel-cell .carousel-cell--top--copy {
    margin-bottom: var(--wp--preset--spacing--medium);
}

.cc_carousel--cards .carousel-cell .carousel-cell--top--link {
    position: static;
    z-index: 4;
    color: var(--wp--preset--color--foreground-1);
    background-color: var(--wp--preset--color--background-1);
    text-decoration: none;
    font-size: 16px;
    padding: 10px var(--wp--preset--spacing--small) 9px var(--wp--preset--spacing--small);
    border-radius: var(--wp--custom--border-radius--round);
    font-weight: 500;
    display: inline-flex;
    gap: 16px;
    transition: all .2s ease-in-out;
}

@media screen and (max-width: 780px) {
    .cc_carousel--cards .carousel-cell .carousel-cell--top--link {
        padding:8px var(--wp--preset--spacing--medium) 7px var(--wp--preset--spacing--medium);
    }
}

.cc_carousel--cards .carousel-cell .carousel-cell--top--link span {
    transition: all .2s ease-in-out;
}

.cc_carousel--cards .carousel-cell .carousel-cell--top--link::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    transition: all .2s ease-in-out;
}

.cc_carousel--cards .carousel-cell .carousel-cell--bottom {
    position: relative;
    display: inline-flex;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
    overflow: hidden;
    transition: all .2s ease-in-out;
}

.cc_carousel--cards .carousel-cell .carousel-cell--bottom--image {
    max-width: 100%;
    display: inline-flex;
}

.cc_carousel--cards .carousel-cell .carousel-cell--bottom--scrim {
    position: absolute;
    opacity: 1;
    transition: all .2s ease-in-out;
    top: -1px;
    left: 0;
    width: 100%;
    height: 30%;
    background: var(--wp--preset--color--background-2);
    clip-path: polygon(0% 100%,100% 70%,100% 0%,0% 0%);
}

.cc_carousel--cards .carousel-cell.no-angle .carousel-cell--bottom--scrim {
    display: none;
}

.cc_carousel--testimonials .flickity-viewport {
    overflow: hidden;
}

.cc_carousel--testimonials .carousel-cell {
    width: 100%;
    padding: var(--wp--preset--spacing--large);
}

@media (max-width: 780px) {
    .cc_carousel--testimonials .carousel-cell {
        padding-bottom:calc(var(--wp--preset--spacing--giant) * 2);
    }
}

.cc_carousel--testimonials .carousel-cell--quote--rating {
    display: inline-flex;
    justify-content: center;
    width: 100%;
}

.cc_carousel--testimonials .carousel-cell--quote--rating img {
    max-width: 174px;
}

.cc_carousel--testimonials .carousel-cell--quote--copy {
    font-size: var(--wp--preset--font-size--x-large);
    font-family: var(--wp--preset--font-family--accent);
    text-align: center;
    max-width: 880px;
    margin: var(--wp--preset--spacing--large) auto;
    line-height: 1.2;
}

.cc_carousel--testimonials .carousel-cell--cite {
    display: flex;
    gap: 24px;
    justify-content: center;
    align-items: center;
}

.cc_carousel--testimonials .carousel-cell--cite--avatar img {
    max-width: 80px;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 50%;
}

.cc_carousel--testimonials .carousel-cell--cite--info {
    max-width: 360px;
    line-height: 1.4;
    display: flex;
    gap: 4px;
    flex-direction: column;
}

.cc_carousel--testimonials .carousel-cell--cite--info--name {
    font-size: var(--wp--preset--font-size--medium);
    font-weight: 700;
}

@media (max-width: 780px) {
    .cc_carousel--testimonials .flickity-prev-next-button {
        top:auto;
        bottom: -20px;
    }
}

.flickity-enabled {
    position: relative;
}

.flickity-enabled:focus {
    outline: none;
}

.flickity-viewport {
    overflow: hidden;
    position: relative;
    height: 100%;
}

.flickity-slider {
    position: absolute;
    width: 100%;
    height: 100%;
}

.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}

.flickity-button {
    position: absolute;
    background: hsla(0,0%,100%,.75);
    border: none;
    color: var(--wp--preset--color--foreground-2);
}

.flickity-button:hover {
    background: var(--wp--preset--color--primary);
    cursor: pointer;
    color: var(--wp--preset--color--background-1);
}

.flickity-button:focus {
    outline: none;
    box-shadow: 0 0 0 5px #19f;
}

.flickity-button:active {
    opacity: .6;
}

.flickity-button:disabled {
    opacity: .3;
    cursor: auto;
    pointer-events: none;
}

.flickity-button-icon {
    fill: currentColor;
}

.flickity-prev-next-button {
    top: 50%;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    transform: translateY(-50%);
    background-color: var(--wp--preset--color--background-3);
}

.flickity-prev-next-button.previous {
    left: 10px;
}

.flickity-prev-next-button.next {
    right: 10px;
}

.flickity-rtl .flickity-prev-next-button.previous {
    left: auto;
    right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
    right: auto;
    left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
    position: absolute;
    left: 35%;
    top: 35%;
    width: 30%;
    height: 30%;
}

.flickity-page-dots {
    position: absolute;
    width: 100%;
    bottom: -25px;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    line-height: 1;
}

.flickity-rtl .flickity-page-dots {
    direction: rtl;
}

.flickity-page-dots .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 8px;
    background: #333;
    border-radius: 50%;
    opacity: .25;
    cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
    opacity: 1;
}

.cc_carousel {
    visibility: hidden;
}

.cc_carousel:not(.flickity-enabled) {
    display: flex;
    overflow: hidden;
}

.cc_carousel.is-flickity-ready {
    visibility: visible;
}

.cc_carousel:not(.flickity-enabled) > * {
    flex-shrink: 0;
    width: 100%;
    margin-right: 20px;
}
.cc_carousel--controls {
  display: flex;
  gap: 16px;
}
@media screen and (max-width: 780px) {
  .cc_carousel--controls {
      gap: 8px;
  }
}
.cc_carousel--controls .cc_carousel--controls--button {
  border: none;
  background-color: var(--wp--preset--color--background-3);
  cursor: pointer;
  width: 80px;
  height: 40px;
  border-radius: 99px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cc_carousel--controls .cc_carousel--controls--button::after {
  content: "";
  background-color: var(--wp--preset--color--foreground-1);
  display: block;
  position: static;
  mask-size: contain;
  -webkit-mask-size: contain;
  -webkit-mask: url("../images/carousel_arrow.svg");
  mask: url("../images/carousel_arrow.svg");
  width: 16px !important;
  height: 11px !important;
  transition: all ease-in-out 0.2s;
}
.cc_carousel--controls .cc_carousel--controls--button.cc_carousel--controls-prev::after {
  transform: rotate(180deg);
}
.cc_carousel--controls .cc_carousel--controls--button:hover {
  transform: scale(1.05);
  background-color: var(--wp--preset--color--background-4);
}
@media screen and (max-width: 780px) {
  .cc_carousel--controls .cc_carousel--controls--button {
      width: 50px;
      height: 25px;
  }
  .cc_carousel--controls .cc_carousel--controls--button::after {
      transform: scale(0.75);
  }
  .cc_carousel--controls .cc_carousel--controls--button.cc_carousel--controls-prev::after {
      transform: rotate(180deg) scale(0.75);
  }
}