/* colour variables — moved to assets/css/tokens.css (single source of truth) */

html {
    box-sizing: border-box;
}

*,
*:before,
*:after {
    box-sizing: inherit;
    box-sizing: border-box;
    min-height: 0;
    min-width: 0;
}

html body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: var(--font-body);
    font-size: var(--fs-body);
    line-height: 24px;
    font-weight: var(--fw-body);
    color: var(--body-text);
}

textarea {
    height: 165px;
}

.grecaptcha-badge {
    visibility: hidden;
}

body a {
    color: var(--orange);
    transition: all 0.3s ease-in-out;
}

ul,
ol {
    margin: 0 0 22px 22px;
}

/*
    * Rebrand typography CSS 
    */
body h1,
.heading-h1 {
    font-size: var(--fs-h1);
    font-style: normal;
    font-weight: var(--fw-heading);
}

body h2,
.heading-h2 {
    font-size: var(--fs-h2);
    font-style: normal;
    font-weight: var(--fw-heading);
}

body h3,
.heading-h3 {
    font-size: var(--fs-h3);
    font-style: normal;
    font-weight: var(--fw-heading);
}

body h4,
.heading-h4 {
    font-size: var(--fs-h4);
    font-style: normal;
    font-weight: var(--fw-h4);
}


.whatsapp-header {
    display: none !important;
}
@media (max-width: 768px) {
    .whatsapp-header {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }
}

h1,
h2,
h3,
h4 {
    font-family: var(--font-display);
    margin-bottom: 20px;
}

@media (max-width: 768px) {

    body h1,
    .heading-h1 {
        font-size: var(--fs-h1-mobile);
        font-style: normal;
        font-weight: var(--fw-h1-mobile);
    }

    body h2,
    .heading-h2 {
        font-size: var(--fs-h2-mobile);
        font-style: normal;
        font-weight: var(--fw-heading);
    }
}

/* Rebrand CSS for one off content */
#large-cta h2 {
    font-weight: 600;
    margin-top: -10px;
}

#center .section-introduction {
    text-align: center;
}

#right .section-introduction {
    text-align: right;
}

/*
    * Rebrand CSS for readsmore content
    */
[data-read-smore-inline=true] ul:not([style="display: inline;"]),
[data-read-smore-inline=true] ol:not([style="display: inline;"]) {
    display: inline-block;
    width: 100%;
    max-width: calc(100% - 22px);
}

[data-read-smore-inline=true] ul[style="display: inline;"],
[data-read-smore-inline=true] ol[style="display: inline;"] {
    display: inline-block !important;
    margin-bottom: 6px;
    width: 100%;
    max-width: calc(100% - 22px);
}

/*
    * Rebrand CSS for the site top bar
    */
.top-bar {
    background-color: var(--orange, #E34312) !important;
    color: #fff !important;
    max-width:100vw;
}
#site-navigation{
	max-width:100vw;
    top:0;
}

.top-bar aside.widget {
    margin: auto;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
}

.top-bar aside.widget p {
    margin: 0;
}

.top-bar {
  text-align: center;
  font-weight: bold!important;
  font-size: 1rem!important;
  padding: 5px;
}

.top-bar a#evo-countdown-cta:hover{
  color: #FFF;
  text-decoration: underline;
  text-underline-position: under;
}
@media (width >= 768px) {
  .top-bar {
    
  }
}

@media (min-width: 1025px) {
    .main-navigation+.top-bar {
        display: block;
        z-index: 2;
        width: 100%;
        position: fixed;
    }
}

@media (max-width: 1024px) {
    .main-navigation+.top-bar, .main-navigation  {
        position: fixed;
        display: block;
        width: 100%;
        z-index: 99;
    }
    

    #sticky-placeholder {
        height: unset !important;
    }

    body:has(.top-bar) .site-main {
        padding-top: 44px;
    }
}

/*
    * Rebrand CSS for the site header
    */
.main-nav:has(#menu-rebrand-main-menu) {
    margin-left: auto;
}

a.nav-call-button.content-button {
    order: 3;
}

a.nav-call-button.content-button svg {
    position: relative;
    right: auto;
    transform: none;
    top: 2px;
    margin-right: 4px;
    height: 15px;
    width: 15px;
}

a.nav-call-button.content-button svg path {
    fill: #fff;
    transition: ease fill .3s;
}

a.nav-call-button.content-button:hover svg path {
    fill: var(--orange);
}

/* #large-space h1{
        margin-bottom: 220px;
    } */
header.page-banner-section:not(:has(img)) {
    margin-bottom: -90px;
}

.main-navigation {
    background-color: white !important;
}

.main-navigation .sub-menu {
    background-color: var(--light-orange, #FAF3F1) !important;
    border-radius: 0 0 4px 4px;
    box-shadow: none;
}

.main-navigation .inside-navigation {
    max-width: none !important;
    padding: 0 48px !important;
    width: 100%;
    box-shadow: none !important;
    display: flex;
    justify-content: space-between !important;
}

.sticky-enabled .main-navigation.is_stuck {
    box-shadow: none !important;
}

.main-navigation .site-logo {
    display: inline-flex;
    align-items: center;
    margin-right: 20px;
}

.main-navigation .site-logo a {
    display: inline-flex;
    flex-wrap: wrap;
}

.main-navigation .site-logo img {
    flex: 0 0 80px;
}

/* desktop only (above the 1070px mobile/tablet logo breakpoint) */
@media (min-width: 1071px) {
    .main-navigation .site-logo img {
        
    }
}

.main-navigation .main-nav ul ul li a {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.main-navigation .main-nav .main-navigation .sub-menu>li:last-child {
    border-radius: 0 0 4px 4px;
    overflow: hidden;
}

.main-navigation .main-nav ul.menu>li:is(:hover, :focus)>a {
    background-color: var(--light-orange, #FAF3F1) !important;
}

.main-navigation .main-nav li a:is(:hover, :focus),
.main-navigation .main-nav li:is(.current-menu-ancestor, .current-menu-item)>a {
    color: var(--orange) !important;
    -webkit-text-stroke-width: 0.4px;
    background-color: var(--light-orange, #FAF3F1) !important;
}


.call-button {
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  order: 1;
  border-radius: 50%!important;
  width: 57px;
  height: 57px;
  img {
    position: relative;
  }
}
.main-navigation .call-button {
  display: flex;
}

.call-button,
.call-button:focus, 
.call-button:hover {
  background: #E34312!important;
}

@media (width > 1070px) {
  .inside-navigation .call-button {
    display: none!important;
  }
}

@media (max-width: 1480px) {

    .main-navigation .main-nav ul.menu li a,
    .menu-toggle,
    .main-navigation ul.menu .menu-bar-item>a {
        padding-left: 17px;
        padding-right: 17px;
    }

    .main-navigation ul.menu .menu-item-has-children .dropdown-menu-toggle {
        padding-right: 0;
    }
}

@media(max-width: 1337px) {

    .main-navigation .main-nav ul.menu li a,
    .menu-toggle,
    .main-navigation ul.menu .menu-bar-item>a {
        padding-left: 12px;
        padding-right: 12px;
    }

    .main-navigation .main-nav ul li a {
        font-size: 14px;
    }
}

@media (max-width: 1070px) {
    .main-navigation .site-logo img {
        flex: 0 0 60px;
    }

    a.nav-call-button.content-button {
        order: 2;
        flex-grow: 0;
    }

    a.nav-call-button.content-button span {
        display: none;
    }

    .main-navigation .menu-toggle {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        height: 60px;
        padding: 0 24px !important;
        margin-right: -14px;
        margin-left: 0;
    }

    body:has(.is_stuck) .mm-ocd--open .mm-ocd__content {
        padding-top: 60px;
    }

    .main-navigation .inside-navigation {
        padding: 10px 14px !important;
    }

    .main-navigation .main-nav ul li a,
    .main-navigation .menu-toggle {
        line-height: 60px;
    }

    .main-navigation .menu-toggle .mobile-menu {
        display: none;
    }
}

.main-navigation .main-nav>ul {
    justify-content: flex-end;
}

/* No Menu Navigation */
.no-menu {
    padding: 1rem 0;
}

.no-menu .site-logo {
    display: none;
}

.no-menu-buttons {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

.no-menu-buttons .nav-call-button-mobile-only {
    display: none;
}

@media (width <=380px) {
    .main-navigation .inside-navigation {
        justify-content: center !important;
        padding-bottom: 1rem !important;
        gap: 1rem;
    }
}

@media (max-width: 1038px) {
    .no-menu-buttons .nav-call-button-mobile-only {
        display: block;
    }
}

.no-menu .menu-toggle {
    display: none;
}

/* Social Links in header */
#primary-menu {
    flex-grow: 1;
}

#primary-menu .social-links {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    padding: 20px 0;
    border-bottom: 1px solid var(--orange);
}

#primary-menu .social-links a {
    margin-left: 30px;
}

@media (max-width: 1038px) {
    #primary-menu .social-links {
        padding: 0;
    }

    #primary-menu .social-links a {
        display: none;
    }
}

/*
    * Rebrand CSS for section colours
    */
.background-grey {
    background-color: var(--grey, #d2d5d9);
}

.background-light-grey {
    background-color: var(--light-grey, #f1f3f4);
}

.background-light-orange {
    background-color: var(--light-orange, #FAF3F1);
}

.background-navy {
    background-color: var(--navy, #1D2A36);
    .section-introduction {
      color: white;
    }
}

/* Body text inherits white from .section-introduction above, but headings get a
   dark colour set directly (GeneratePress, and `.content-section
   .section-introduction h2` at 0,2,1) which beats inheritance — so headings
   would stay dark on a navy background. Force them white. The second selector
   (0,3,1) outranks the dark content-section rule. */
.background-navy :is(h1, h2, h3, h4),
.content-section.background-navy .section-introduction :is(h1, h2, h3, h4) {
    color: #fff;
}

.overlay-navy::before {
    content: "";
    background-color: rgba(29, 42, 54, 0.67);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.background-light-blue {
    background-color: var(--light-blue, #326DB3);
    color: #fff;
}

.background-light-teal {
    background-color: var(--light-teal, #e5f0f1);
}

.background-orange {
    background-color: var(--orange);
}

.background-teal {
    background-color: var(--teal, #489197);
}

.background-purple {
    background-color: var(--light-purple, #7c65a0);
    color: #fff;
}

.background-teal a:not(.content-button),
.background-navy a:not(.content-button) {
    color: var(--orange);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 1px;
}

.background-white+.background-white+.background-white:not(.trustpilot-bar-section, .contained-content-section) {
    padding-top: 80px;
}

/*
    * Rebrand CSS for section colours - contained sections
    */
section[class*="contained-background-"] {
    background-color: #fff;
}

section[class*="contained-background-"] .container {
    position: relative;
    padding: 25px 30px;
}

section[class*="contained-background-"].media-full-size .container {
    padding: 40px 35px;
}

section[class*="contained-background-"] .container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 15px;
    width: calc(100% - 30px);
    height: 100%;
    z-index: 0;
    pointer-events: none;
    border-radius: 20px;
}

.contained-background-light-orange .container::before {
    background-color: var(--light-orange, #FAF3F1);
}

.contained-background-navy .container::before {
    background-color: var(--navy, #1D2A36); 
}

.contained-background-orange .container::before {
    background-color: var(--orange);
}

.contained-background-teal .container::before {
    background-color: var(--teal, #489197);
}

@media (max-width: 991px) {
    section[class*="contained-background-"] .container {
        padding: 25px;
    }

    section[class*="contained-background-"] .container::before {
        left: 25px;
        width: calc(100% - 50px);
    }
}

/*
    * Rebrand css for section header prefixes
    */
.section-introduction:has(h1, h2, h3, h4) .read-more-content>p:first-child,
.section-introduction:has(h1, h2, h3, h4)>p:first-child {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 30px;
    color: var(--teal, #489197);
}

.section-introduction:has(h1, h2, h3, h4) .read-more-content> :last-child,
.section-introduction:has(h1, h2, h3, h4):not(:has(.read-more-content))> :last-child {
    margin-bottom: 0;
}

.section-introduction h2 {
    word-wrap: normal;
}

/* New Video Section */
.video-section .content h3 {
    font-size: 20px;
    text-transform: uppercase;
    margin: 0;
}

.video-section .content h2 {
    color: white;
}

.video-section .video-section-link-box {
    background-color: var(--orange);
    border-bottom: 2px solid var(--gold, #d6be3f);
    padding: 20px;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: center;
}

.video-section .video-section-link-box .video-section-link-icon {
    height: 50px;
    width: 50px;
}

.video-section .video-section-link-box .video-section-link {
    color: white;
    font-weight: bold;
    max-width: 100%;
    text-align: left;
    padding-left: 20px;
}

/*
    * Rebrand CSS for the content sections
    */

.content-section .section-introduction :is(h1, h2, h3, h4)+p:last-child {
    font-size: inherit;
    font-weight: inherit;
    line-height: normal;
}

.content-section .section-introduction {
    text-align: center;
}

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

.content-element-video {
    align-self: center;
}

.content-element-video .content-button:has(svg) {
    padding-left: 36px;
}

.content-element-video .content-button svg {
    transition: none;
    position: absolute;
    right: auto;
    left: 15px;
    transform: translateY(-50%);
}

.modal-video-button:has(svg) {
    padding-left: 36px;
}

.modal-video-button svg {
    transition: none;
    position: absolute;
    right: auto;
    left: 15px;
    transform: translateY(-50%);
}

.video-poster-box {
    position: relative;
}

/* will switch to content buttons */
.video-poster-box .content-buttons:has(svg) {
    position: absolute;
    z-index: 1;
    transform: translate(-50%, -50%);
    inset: 50% auto auto 50%;
}

.video-poster {
    width: 100%;
    border-radius: 20px;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    filter: brightness(0.65);
}

.content-element-video .perfmatters-lazy-youtube {
    border-radius: 20px;
}

.content-element-images figure {
    border-radius: 20px;
    overflow: hidden;
    max-height: 550px;     /* cap image height (was growing tall in the column) */
}

/* clip off-screen carousel slides so their edges don't show */
.content-element-images.swiper {
    overflow: hidden;
}

/* benefit blocks: drop the buttons' top gap (the list above already spaces them) */
.benefit-blocks .content-buttons {
    margin-top: 0;
}

.content-element-images figure::before {
    content: "";
    display: inline-block;
    z-index: -1;
    padding-top: 80%;
}

.media-full-size .content-element-images {
    margin-top: 30px;
}

.media-full-size.left-media .content-element-images {
    margin-top: 0;
    margin-bottom: 30px;
}

.media-full-size .content-element-images figure::before {
    padding-top: 56.25%;
}

.content-element-images figure img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.content-section {
    background-repeat: no-repeat;
    background-size: cover;
}

.content-section:not(.media-full-size):has(.content-element-images, .content-element-video) .section-introduction {
    text-align: left;
}

.content-section.left-media :is(.content-element-images, .content-element-video) {
    order: -1;
    padding-right: 25px;
}

.content-section.left-media:has(.content-element-images, .content-element-video) .section-introduction {
    padding-left: 25px;
}

.content-section.right-media :is(.content-element-images, .content-element-video) {
    padding-left: 25px;
}

.content-section.right-media:has(.content-element-images, .content-element-video) .section-introduction {
    padding-right: 25px;
}

.content-section.right-media.media-full-size :is(.content-element-images, .content-element-video) {
    margin-top: 30px;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
}

.content-section.left-media.media-full-size :is(.content-element-images, .content-element-video) {
    margin-bottom: 30px;
    padding-right: 15px;
    width: 100%;
}

.contained-content-section blockquote {
    float: none;
    background: transparent;
    font-size: 20px;
    line-height: 30px;
    padding: 0;
    border: none;
    font-style: normal;
    position: relative;
}

.content-section.media-half-size .content-buttons {
    justify-content: flex-start;
}

.content-section.media-half-size .section-introduction {
    text-align: left;
}

@media (max-width: 991px) {
    .content-section.media-half-size .content-buttons {
        justify-content: center;
    }

    .content-section.media-half-size .section-introduction {
        text-align: center;
    }
}

.has-icons .container {
    justify-content: center;
}

.has-icons .container .content-buttons {
    margin-top: 20px;
}

.contained-content-section blockquote::before {
    content: url("data:image/svg+xml,%3Csvg width='40' height='33' viewBox='0 0 40 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.25' d='M39.9906 32.135H22.7906V18.935L30.9906 0.334961L37.2906 2.13496L32.9906 15.735H39.9906V32.135ZM17.5906 32.135H0.390625V18.935L8.59063 0.334961L14.8906 2.13496L10.5906 15.735H17.5906V32.135Z' fill='%231D2A36'/%3E%3C/svg%3E%0A");
    display: block;
    text-align: left;
}

.contained-content-section blockquote::after {
    content: url("data:image/svg+xml,%3Csvg width='41' height='32' viewBox='0 0 41 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.25' d='M0.857029 0.134569H18.057V13.3346L9.85703 31.9346L3.55703 30.1346L7.85703 16.5346H0.857029V0.134569ZM23.257 0.134569H40.457V13.3346L32.257 31.9346L25.957 30.1346L30.257 16.5346H23.257V0.134569Z' fill='%231D2A36'/%3E%3C/svg%3E");
    display: block;
    text-align: right;
}

.contained-content-section blockquote a {
    font-weight: 600;
    color: var(--navy);
    text-decoration: underline;
}

.content div:has(table) {
    overflow-x: auto;
}

@media (max-width: 991px) {
    .content-section.right-media.media-full-size :is(.content-element-images, .content-element-video) {
        padding-left: 25px;
    }

    .content-section.left-media.media-full-size :is(.content-element-images, .content-element-video) {
        padding-right: 25px;
    }

    .content-section.left-media :is(.content-element-images, .content-element-video) {
        margin-bottom: 30px;
    }

    #homepage-nationwide-video.content-section.right-media :is(.content-element-images, .content-element-video) {
        order: 1;
    }

    .content-section.right-media :is(.content-element-images, .content-element-video) {
        order: -1;
        margin-bottom: 30px;
    }
}

/*
    * Rebrand css the content section - contained sections
    */
.contained-content-section .container {
    align-items: center;
}

.contained-content-section .section-introduction:has(h1, h2, h3, h4)>p:first-child,
.contained-content-section .section-introduction:has(h1, h2, h3, h4) .read-more-content>p:first-child {
    margin-bottom: 15px;
}

.contained-content-section.left-media :is(.content-element-images, .content-element-video) {
    order: -1;
}

@media (max-width: 991px) {
    .contained-content-section .content-element-images {
        order: -1;
        margin-bottom: 30px;
    }

    .content-element-video {
        margin-top: 31px;
    }
}

.contained-content-section .section-introduction .content-with-icon {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    align-content: center;
    padding: 20px 0;
}

.contained-content-section .icon-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px;
}

@media (max-width: 991px) {
    .contained-content-section .icon-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

.contained-content-section .icon-grid .content-with-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991px) {
    .contained-content-section .section-introduction {
        padding-top: 20px;
    }

    .contained-content-section .section-introduction .content-with-icon {
        justify-content: flex-start;
        padding: 20px 0;
    }
}

.contained-content-section .section-introduction .content-with-icon .text {
    padding-left: 20px;
}

/*
    * Rebrand CSS for the site banner
    */
.page-banner-section .banner-slide {
    padding: 90px 0 90px 0;
}

.page-banner-section.large-banner .banner-slide {
    min-height: 640px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.page-banner-section .banner-slide .container {
    min-height: 50vh;
    height: 100%;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.page-banner-section .banner-content {
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;

}

.page-banner-section.background-white .banner-content {
    color: #213F66;
}

.page-banner-section.background-navy .banner-content {
    color: white;
}


.page-banner-section:has(.banner-background) .banner-content {
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.page-banner-section:has(.banner-background) .banner-content h1 {
    font-size: 4rem;
    line-height: 4rem;
}

.spacer-desktop {
    display: block;
}

.banner-background img{
  object-fit: cover;
  height: 100%;
}

.spacer-mobile {
    display: none;
}

@media(max-width: 1000px) {
    .spacer-desktop {
        display: none;
    }

    .spacer-mobile {
        display: block;
    }

    .page-banner-section:has(.banner-background) .banner-content h1 {
        font-size: 2.75rem;
        line-height: 2.75rem;
    }
}

.page-banner-section .banner-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.page-banner-section .banner-background::before {
    content: "";
    z-index: 0;
    background: rgba(0, 0, 0, 0.45);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.page-banner-section .banner-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: -1;
}

.page-banner-section .content-buttons {
    justify-content: center;
}

/*
    * Rebrand CSS for buttons
    */
.content-buttons {
    display: flex;
    flex-wrap: wrap;
    margin: -7px;
}

.content-buttons .content-button {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex: 0 0 auto;
    margin: 7px;
    width: max-content;
}

/* ============================================================
   CANONICAL BUTTON SYSTEM
   Base = .content-button (all theme markup uses this class).
   Variants: .white-outline-button, .orange-button, .orange-solid.
   Colours/radius come from tokens.css. Define button styles here,
   not per-section.
   ============================================================ */
.content-button,
a.content-button,
.content-buttons a[data-readmore-toggle],
a.button,
form input[type="submit"],
form button[type="submit"] {
    width: max-content;
    font-size: var(--fs-body);
    font-style: normal;
    font-weight: var(--fw-button);
    display: inline-block;
    position: relative;
    color: #fff;
    padding: 8px 20px;
    background: var(--orange);
    border-radius: var(--button-border-radius);
    border: 2px solid var(--orange);
    box-sizing: border-box;
    transition: ease all .3s;
}

.content-button:is(:hover, :focus) {
    color: var(--orange);
    background: #fff;
    border: 2px solid var(--orange);
}

.content-button.white-outline-button {
    background: transparent;
    color: #fff;
    border: 2px solid #fff;
}

.content-button.white-outline-button:is(:hover, :focus) {
    background: #fff;
    color: var(--navy);
}

.white-outline-button svg path {
    transition: ease fill .3s;
}

.white-outline-button:hover svg path {
    fill: var(--navy);
}

span.button-title {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 24px;
}

/* .modal-video-button::before {
    --play-icon: url("data:image/svg+xml,%3Csvg width='14' height='15' viewBox='0 0 14 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.25 13.3062V1.59319C0.25 0.855864 1.02075 0.372085 1.68475 0.692637L13.0073 6.1587C13.7384 6.51164 13.7664 7.54265 13.0556 7.93483L1.73308 14.1818C1.0666 14.5495 0.25 14.0674 0.25 13.3062Z' fill='currentColor'/%3E%3C/svg%3E%0A");
    content: var(--play-icon);
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
    font-size: 0;
    color: #fff;
    margin-right: 5px;
    } */

.modal-video-vertical .modal-video-movie-wrap {
    aspect-ratio: 9/16;
    height: 100%;
    width: auto;
}

.modal-video-button:is(:hover, :focus)::before {
    color: var(--navy);
}

.modal-video-close-btn {
    top: 18px;
    right: 18px;
    border-radius: 4px;
    width: 24px;
    height: 24px;
    padding: 3px;
}

.modal-video-close-btn:after {
    display: none;
}

.modal-video-close-btn:before {
    content: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L19 19' stroke='white' stroke-width='2'/%3E%3Cpath d='M19 1L1 19' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
    background: transparent;
    height: 18px;
    width: 18px;
    margin-top: 0;
    top: 3px;
    left: 3px;
    transform: none;
}

.vertical-video .modal-video-movie-wrap {
    height: 100%;
}

@media (max-width: 575px) {
    .content-buttons {
        display: grid;
        /* width: 100%; */
    }

    .content-buttons .content-button {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-left: auto;
        margin-right: auto;
    }
}

/* 
    * Rebrand css for trustpilot bar section
    */
.trustpilot-bar-section {
    border-bottom: 10px solid var(--orange);
    padding-bottom: 20px;
    padding-top: 20px;
}

.trustpilot-bar-section .trustpilot-widget {
    margin: auto;
}

#main :first-child:has(.trustpilot-widget) {
    padding-top: 6px;
    margin-top: -6px;
}

@media (max-width: 1024px) {
    #main :first-child:has(.trustpilot-widget) {
        padding-top: 0;
    }
}

/* 
    * Rebrand css for trustpilot slider section
    */
.trustpilot-slider-section .section-introduction {
    text-align: center;
    margin-bottom: 20px;
}

.trustpilot-slider-section .trustpilot-widget {
    background-color: white;
}

/* 
    * Rebrand CSS for Trust Feature section 
    */
.trust-feature-section.left-media .feature-elements {
    order: -1;
}

.trustpilot-quote {
    padding: 32px;
    box-shadow: 0px 2px 12px 0px rgba(95, 109, 179, 0.16);
    border-radius: 10px;
}

@media(max-width: 991px) {
    .trust-feature-section.left-media .feature-elements {
        padding-bottom: 70px;
    }

    .section-introduction+.feature-elements {
        margin-top: 50px;
    }
}

/*
    * Rebrand CSS for the social icons
    */
.social-icons {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.social-icons a {
    width: 22px;
    height: 22px;
    display: inline-block;
    margin-right: 15px;
}

.social-icons a:last-child {
    margin-right: 0;
}

/*
    * Rebrand CSS for call to action block
    */

.call-to-action-block {
    border-radius: 20px;
    padding: 80px 45px;
    text-align: center;
}

.call-to-action-block+.trustpilot-quote {
    margin-top: 31px;
}

.call-to-action-block .call-to-action-text {
    font-size: 32px;
    line-height: 1.25;
    font-weight: 600;
    margin-bottom: 25px;
}

@media(max-width: 991px) {
    .page-banner-section .call-to-action-block {
        max-width: calc(100% - 50px);
    }
}

/* Rebrand CSS for th team members section */
.team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(164px, 1fr));
    gap: 80px;
}

.rounded .team-grid {
    gap: 30px;
}

.team-grid.condensed {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(164px, max-content));
    gap: 30px;
    justify-content: space-between;
}

.team-members {
  padding-top: 40px;
}

.team-member {
    width: 100%;
    max-width: 100%;
    text-align: center;
}

.team-grid.condensed .team-member {
    width: 100%;
    max-width: 164px;
}

.team-members-section.rounded .team-member {
    padding: 25px;
    border: solid 1px #e1e1e1;
    border-radius: 20px;
    text-align: left;
}

.team-grid .team-member img {
    width: 164px;
    height: 164px;
    border-radius: 20px;
    object-fit: cover;
    object-position: center;
}

.team-members-section.rounded .team-member img {
    border-radius: 100px;
    height: 100px;
    width: 100px;
}

.team-member-quote {
    font-size: 19px;
    line-height: 1.4;
    margin-bottom: 15px;
    margin-top: 20px;
}

.team-member-role,
.team-member-name {
    font-size: 22px;
    display: block;
    text-align: center;
}

.rounded .team-member-role,
.rounded .team-member-name {
    font-size: 15px;
    text-align: left;
}

.team-member-name {
    font-weight: 600;
}

.team-members-section .section-introduction {
    text-align: center;
    margin-bottom: 30px;
}

.team-members-section .content-buttons {
    justify-content: center;
    width: 100%;
    margin-top: 25px;
}

.team-member-section .team-member-items .team-members-image:is(svg) {
    margin-bottom: 0;
}

@media(max-width: 991px) {
    .team-grid.condensed {
        grid-template-columns: repeat(auto-fit, minmax(164px, max-content));
        gap: 40px 20px;
        justify-content: space-between;
    }

    .team-members-section.square .team-member-info {
        margin-top: 20px;
    }

    .team-members-section.square .team-member-info .team-member-name {
        margin-bottom: 14px;
    }

    .team-member-role {
        font-size: 18px;
    }
}

@media(max-width:392px) {
    .team-grid.condensed {
        grid-template-columns: repeat(auto-fit, minmax(140px, max-content));
    }
}

/*
    * Rebrand CSS for the find clinic form
    */
.find-clinic-section .container {
    padding: 0 15px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 32px;
}

.find-clinic-section .find-locations-form {
    display: grid;
    border: 1px solid #D1D1D1;
    border-radius: 20px;
    background-color: var(--light-orange, #FAF3F1);
    padding: 0;
    overflow: hidden;
    margin: 0;
}

.find-locations-form .mobile-only,
.find-locations-form .desktop-only {
    width: 100%;
}

.find-locations-form label.location-radio,
.find-locations-form a.location-radio {
    background-color: #fff;
    padding: 30px 25px 30px 60px;
    border-bottom: 1px solid #D1D1D1;
    cursor: pointer;
    flex: 0 0 100%;
    display: flex;
    flex-wrap: wrap;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='38' viewBox='0 0 26 38' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13 0.5C5.8175 0.5 0 6.27328 0 13.4181C0 21.0733 5.59 23.944 9.55499 30.5784C12.09 34.8207 11.3425 37.5 13 37.5C14.7225 37.5 13.975 34.7569 16.445 30.6422C20.085 24.3586 26 21.1052 26 13.4181C26 6.27328 20.1825 0.5 13 0.5Z' fill='white'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13.0167 35.5C12.7836 35.5 12.7171 35.4346 12.3176 34.225C11.9848 33.1789 11.4854 31.5769 10.1873 29.6154C8.92233 27.6866 7.59085 26.1173 6.32594 24.6135C3.36339 21.0174 1 18.2057 1 13.1385C1.03329 6.69808 6.39251 1.5 13.0167 1.5C19.6408 1.5 25 6.73078 25 13.1385C25 18.2057 22.6699 21.05 19.6741 24.6462C18.4425 26.15 17.1443 27.7193 15.8793 29.6154C14.6144 31.5442 14.0818 33.1135 13.749 34.1596C13.3495 35.4346 13.2497 35.5 13.0167 35.5Z' fill='%23F15931'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13 18.5C15.7614 18.5 18 16.2614 18 13.5C18 10.7386 15.7614 8.5 13 8.5C10.2386 8.5 8 10.7386 8 13.5C8 16.2614 10.2386 18.5 13 18.5Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position-x: 18px;
    background-position-y: center;
}

.find-locations-form label.location-radio:is(:hover, :focus) {
    background-color: var(--light-orange, #FAF3F1);
}

.find-locations-form label.location-radio input[type="radio"] {
    visibility: hidden;
    display: none;
    position: relative;
}

.find-locations-form label.location-radio:has(input[type="radio"]:checked) {
    background-color: var(--light-orange, #FAF3F1);
}

.list-of-clinics .desktop-only:nth-last-of-type(2) label,
.list-of-clinics .mobile-only:last-of-type a {
    border-bottom: none;
}

.find-locations-form .location-name {
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 22px;
    color: var(--body-text);
}

.find-locations-form .address-search {
    padding: 25px;
    display: flex;
    flex-wrap: wrap;
}

.find-locations-form .list-of-clinics {
    display: flex;
    flex-wrap: wrap;
    max-height: 400px;
    overflow-y: auto;
}

.find-locations-form .list-of-clinics .location-content {
    flex: 1 0;
    padding-right: 16px;
    color: initial;
}

.find-locations-form .list-of-clinics .location-content p {
    margin-bottom: 8px;
}

.find-locations-form .list-of-clinics .location-content :last-child {
    margin-bottom: 0;
}

.find-locations-form .address-search label {
    color: var(--navy);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 22px;
    flex: 0 0 100%;
    margin-bottom: 12px;
}

.find-locations-form .address-search .getAddress_autocomplete_container {
    flex: 1 0;
    min-width: 50%;
}

.find-locations-form .address-search .getAddress_autocomplete_list {
    border: 2px solid var(--orange);
    border-top: none;
    margin-top: -4px;
    padding: 4px 16px;
    border-radius: 0 0 4px 4px;
}

.find-locations-form .address-search input[type="text"] {
    width: 100%;
    border: 2px solid var(--orange);
    border-radius: 5px 0 0 5px;
    flex: 1 0;
    font-family: inherit;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
    padding: 15px 16px 13px 16px;
}

.find-locations-form .address-search button[type="submit"] {
    padding: unset;
    border-radius: 0 5px 5px 0;
    line-height: 1;
    flex: 0 0 50px;
    align-items: center;
    justify-content: center;
}

.find-clinic-section .clinic-details h3 {
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 22px;
    margin-bottom: 14px;
}

.find-clinic-section #find-clinic-map {
    border-radius: 20px 20px 0px 0px;
}

@media (min-width: 991px) {
    .find-locations-form .mobile-only {
        display: none;
    }
}

@media (max-width: 991px) {
    .find-clinic-section .container {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .find-locations-form .desktop-only,
    .find-locations-form .address-search input[type="text"],
    .find-locations-form .address-search button[type="submit"] {
        display: none;
    }

    .find-locations-form .address-search label {
        margin-bottom: 0;
    }
}

/* Rebrand CSS for the products shortcode */
.evo-products-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.evo-product {
    background: var(--light-orange, #FAF3F1);
    border-radius: 20px;
    overflow: hidden;
}

.evo-product.teal {
    background: var(--teal, #489197);
}

.evo-product.blue {
    background: var(--blue, #2a4d69);
}

.evo-product.purple {
    background: var(--purple, #4b3c6b);
}

.evo-product.teal svg path {
    fill: var(--teal, #489197);
}

.evo-product.blue svg path {
    fill: var(--blue, #2a4d69);
}

.evo-product.purple svg path {
    fill: var(--purple, #4b3c6b);
}

figure.product-image {
    position: relative;
    z-index: 1;
}

figure.product-image img {
    object-fit: cover;
    height: 200px;
}

.product-image svg {
    position: absolute;
    inset: auto 0 3px 0;
    z-index: 2;
    width: 100%;
}

.evo-product .product-details {
    padding: 20px 30px;
    color: #fff;
    text-align: left;
}

.evo-product .product-details ul {
    font-size: 18px;
    margin-left: 20px;
}

.evo-product .content-button {
    margin-top: 1.5rem;
}

.evo-product .content-button::after {
    display: none;
}

@media(max-width: 768px) {
    .evo-products-grid {
        grid-template-columns: 1fr;
        grid-gap: 30px;
    }
}

/* latest blogs */
.latest-blogs article .post-image div img {
    max-height: 200px;
}

/*
 * Rebrand CSS for the FAQs section
 */
.faqs-section .container {
  position: relative;
}
.faqs-section__help-icon {
  display: none;
}
@media (width >= 768px) {
  .faqs-section__help-icon {
    display: block;
    position: absolute;
    top: -16px;
    right: 0;
  }
}

.faqs-section .section-introduction {
    text-align: left;
    margin-bottom: 30px;
}

.faqs-section .section-introduction h2:first-child {
    text-align: center;
    padding-bottom: 20px;
}

.faqs-section .faqs-list {
    display: inline-block;
    width: 100%;
    text-align: left;
}

.faqs-section.left-media :is(.faqs-element-images, .content-element-video) {
    padding-right: 25px;
}

.faqs-section.left-media:has(.faqs-element-images, .content-element-video) .faqs-list {
    padding-left: 25px;
    order: 1;
}

.faqs-section.right-media :is(.faqs-element-images, .content-element-video) {
    padding-left: 25px;
}

.faqs-section.right-media:has(.faqs-element-images, .content-element-video) .faqs-list {
    padding-right: 25px;
}

.faqs-section.right-media.media-full-size :is(.faqs-element-images, .content-element-video) {
    margin-top: 30px;
    padding-left: 15px;
}

.faqs-section.left-media.media-full-size :is(.faqs-element-images, .content-element-video) {
    margin-bottom: 30px;
    padding-right: 15px;
}

details {
    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    font-weight: bold;
    border-bottom: 1px solid #E3E3E3;
    padding: 16px 22px 16px 0;
}
details:last-of-type {
  border-bottom: none;
}

details summary {
    list-style: none;
    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='7' viewBox='0 0 13 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.08469 6.41008L6.52945 0.965313C6.64661 0.848155 6.83656 0.848155 6.95371 0.965313L12.3984 6.41008' stroke='%23E06540' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-origin: content-box;
    background-position: right center;
}
details .read-more-content {
  font-weight: normal;
}

details:last-of-type {
    margin: 0;
}

details summary .faq-title {
    color: white;
}

details summary .faq-subtitle {
    color: var(--navy, #1B2A3D);
}

details summary::-webkit-details-marker {
    display: none;
}

details[open] summary {
  background-image: url("data:image/svg+xml,%3Csvg width='13' height='7' viewBox='0 0 13 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath transform='scale(1%2C-1)%20translate(0%2C-7)' d='M1.08469%206.41008L6.52945%200.965313C6.64661%200.848155%206.83656%200.848155%206.95371%200.965313L12.3984%206.41008' stroke='%23E06540' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.faqs-element-images figure {
    border-radius: 20px;
    overflow: hidden;
    max-height: fit-content;
}

.faqs-element-images figure::before {
    content: "";
    display: inline-block;
    z-index: -1;
    padding-top: 56.25%;
}

.faqs-element-images figure img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 991px) {
    .faqs-section .faqs-element-images {
        margin-top: 30px;
    }
}

/*
    * New Customer Stories v1
    */

.new-customer-stories-v1-section .customer-stories-v1 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* three equal columns */
    gap: 100px;
    /* spacing between items */
    align-items: start;
    /* aligns content in each cell */
}

@media (max-width: 991px) {
    .new-customer-stories-v1-section .customer-stories-v1 {
        padding: 50px 20px 20px 20px;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 600px) {
    .new-customer-stories-v1-section .customer-stories-v1 {
        padding: 50px 20px 20px 20px;
        grid-template-columns: 1fr;
        /* 1 column */
    }
}

.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 {
    color: var(--steel-blue, #334D5D);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: relative;
}

.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 .story-content-v1 {
    padding: 20px 0;
}


.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 .story-title-v1 {
    font-weight: 600;
    font-size: 18px;
}

.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 .story-excerpt-v1 {
    padding-top: 10px;
}

.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 .story-image-v1 {
    z-index: 1;
    border-radius: 20px;
    width: 100%;
    height: 400px;
    object-fit: cover;
}

.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 .story-image-box-v1 .story-image-box-text-v1 {
    position: absolute;
    z-index: 2;
    bottom: 175px;
    left: 20px;
    color: white;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
}

.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 .story-image-box-v1 .story-image-box-text-v1 .story-image-box-title-v1 {
    font-size: 30px;
    font-weight: 600;
    padding-bottom: 10px;
}

.new-customer-stories-v1-section .customer-stories-v1 .single-story-v1 .story-image-box-v1 .story-image-box-text-v1 .story-image-box-subtitle-v1 {
    font-size: 20px;
}

/*
    * New Customer Stories v2
    */

.new-customer-stories-v2-section .customer-stories-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* three equal columns */
    gap: 20px;
    /* spacing between items */
    align-items: start;
    /* aligns content in each cell */
    padding-top: 50px;
}

@media (max-width: 991px) {
    .new-customer-stories-v2-section .customer-stories-v2 {
        padding: 0 20px;
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .new-customer-stories-v2-section .customer-stories-v2 {
        padding: 0 20px;
        grid-template-columns: 1fr;
        /* 1 column */
    }
}

.new-customer-stories-v2-section .section-introduction {
    padding-bottom: 20px;
}

.new-customer-stories-v2-section .customer-stories-v2 .single-story-v2 {
    color: var(--steel-blue, #334D5D);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: relative;
}

.new-customer-stories-v2-section .customer-stories-v2 .single-story-v2 .story-content-v2 {
    padding: 20px 0;
}

.new-customer-stories-v2-section .customer-stories-v2 .single-story-v2 .story-title-v2 {
    font-weight: 600;
    font-size: 18px;
}

.new-customer-stories-v2-section .customer-stories-v2 .single-story-v2 .story-excerpt-v2 {
    padding-top: 10px;
}

.new-customer-stories-v2-section .customer-stories-v2 .single-story-v2 .story-image-v2 {
    z-index: 1;
    border-radius: 20px;
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.read-more-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    /* space between text and arrow */
}

.read-more-link::after {
    content: "";
    display: inline-block;
    width: 14px;
    /* adjust size */
    height: 14px;
    background: url('../images/right-arrow-orange.svg') no-repeat center center;
    background-size: contain;
}

.read-more-link:hover {
    text-decoration: underline;
}

/* Blog Posts */
.blog-posts-section .container {
    padding: 80px 0;
}

.blog-posts-section .blog-posts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* three equal columns */
    gap: 20px;
    /* spacing between items */
    align-items: start;
    /* aligns content in each cell */
    padding-top: 50px;
}

@media (max-width: 991px) {
    .blog-posts-section .blog-posts {
        padding: 50px 20px 20px 20px;
        grid-template-columns: 1fr;
    }
}

.blog-posts-section .blog-posts .single-blog-post {
    color: var(--steel-blue, #334D5D);
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    position: relative;
}

.blog-posts-section .blog-posts .single-blog-post .blog-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-basis: 50%;
    padding: 0 0 0 20px;
}

.blog-posts-section .blog-posts .single-blog-post .blog-image {
    width: 100%;
    height: 400px;
    object-fit: cover;
    flex-basis: 50%;
    border-radius: 20px;
}


.blog-posts-section .blog-posts .single-blog-post .blog-title {
    font-weight: 600;
    font-size: 18px;
}

.blog-posts-section .blog-posts .single-blog-post .blog-excerpt {
    padding: 20px 0;
}


/*
    * Rebrand CSS for customer stories section
    */
.customer-stories-section .section-introduction {
    margin: 30px 0;
}

.customer-stories-section .section-introduction .content-buttons {
    justify-content: center;
}

.customer-stories-slider {
    max-width: 1440px;
    padding-bottom: 55px;
}

customer-stories-slider .swiper-wrapper {
     padding: 8px 0; /* accomodate shadow on .single-story */
}
#page-hero .swiper-wrapper {
  padding: 0;
}

.single-story {
    display: flex;
    align-items: flex-end;
    border-radius: 16px;
    overflow: hidden;
    color: #fff;
    aspect-ratio: 3 / 5;
    transition: margin 0.3s ease-in-out;
    width: 337.5px;
    margin-right: 20px;

    box-shadow: 0px 2px 10px 0px #00000040;

}

.single-story::after {
    content: "";
    inset: auto 0 0 0;
    position: absolute;
    height: 60%;
    background: linear-gradient(0deg, rgb(0 0 0 / 55%), transparent);
    z-index: -1;
}

.story-content {
    font-size: 19px;
    padding: 24px;
}

.story-image {
    position: absolute;
    object-fit: cover;
    inset: 0;
    z-index: -1;
    height: 100%;
    width: 100%;
}

.story-excerpt {
    margin-bottom: 20px;
    font-style: italic;
}

.story-title {
    font-size: 15px;
    font-weight: 600;
}

@media(max-width: 768px) {
    .customer-stories-slider {
        max-width: 100%;
    }

    .single-story {
        aspect-ratio: 121 / 200;
    }

}

/*
    * Rebrand CSS for the Table section
    */
.table-section table.table-sheet {
    margin: 0;
    border: unset;
    border-radius: 0;
    box-sizing: border-box;
    background-color: transparent;
    table-layout: fixed;
}

.table-section table.table-sheet :is(th, td) {
    text-align: left;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 23px;
    padding: 8px 20px;
}

.table-section table.table-sheet thead th {
    background-color: var(--navy, #1D2A36);
    color: #fff;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
    padding: 10px 20px;
}

.table-section table.table-sheet thead th:first-child {
    border-top-left-radius: 10px;
}

.table-section table.table-sheet thead th:last-child {
    border-top-right-radius: 10px;
}

.table-section table.table-sheet td:first-child {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.table-section table.table-sheet td:last-child {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.table-section table.table-sheet td::before,
.table-section table.table-sheet td::after {
    display: none;
}

.table-section table.table-sheet td,
.table-section table.table-sheet tr:last-child td,
.table-section table.table-sheet td:first-child {
    background-color: #fff;
    color: var(--navy, #1D2A36);
}

.table-section table.table-sheet tr:has(td:nth-child(2):empty, td:nth-child(3):empty) td {
    background-color: var(--orange);
    color: #fff;
}

.table-section table.table-sheet tr:first-child:has(td:nth-child(2):empty, td:nth-child(3):empty) td {
    border-top-left-radius: 0;
}

.table-section table.table-sheet tr:first-child:has(td:nth-child(2):empty, td:nth-child(3):empty) td {
    border-top-right-radius: 0;
}

.table-section .table-sheet-navigation {
    display: none;
}

.table-section .table-sheet-navigation button {
    background-color: var(--navy, #1D2A36);
    color: #fff;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
    padding: 10px 20px;
    border-radius: 10px;
}

.table-section .table-sheet-navigation button[aria-selected="true"] {
    background-color: var(--orange);
    color: #fff;
}

.table-section table.table-sheet tr.alt-row td {
    background-color: #F5F5F5;
}

.table-section .table-section-appendix {
}

@media (min-width: 576px) {
    .table-section table.table-sheet td {
        display: table-cell !important;
    }
}

@media (max-width: 575px) {
    .table-section .table-sheet-navigation {
        display: grid;
        grid-gap: 6px;
        margin-bottom: 21px;
    }

    .table-section thead {
        display: none;
    }

    .table-section table.table-sheet tr td:not(:nth-child(1), :nth-child(2)) {
        display: none;
    }

    .table-section table.table-sheet tr:first-child:has(td:nth-child(2):empty, td:nth-child(3):empty) td:first-child {
        border-top-left-radius: 10px;
    }

    .table-section table.table-sheet tr:has(td:nth-child(2):empty, td:nth-child(3):empty) td:not(:first-child),
    .table-section table.table-sheet tr:first-child:has(td:nth-child(2):empty, td:nth-child(3):empty) td:not(:first-child) {
        border-top-right-radius: 10px;
        border-bottom-right-radius: 10px;
    }
}

/*
    * Rebrand CSS for the site footer
    */
.site-footer {
    display: inline-block;
    width: 100%;
    border-top: 15px solid var(--orange);
    background: var(--navy, #1D2A36);
}

.site-footer .footer-widgets,
.site-footer .site-info {
    background: var(--navy, #1D2A36);
}

.site-footer .footer-social-bar {
    color: #fff;
    padding: 48px 15px;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.site-footer .footer-social-bar p {
    font-size: 23px;
    font-style: normal;
    font-weight: 400;
    line-height: 31px;
    margin: 0;
    flex: 1 0 auto;
}

.site-footer .footer-social-bar::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 15px;
    height: 1px;
    background-color: #fff;
    width: calc(100% - 30px);
    pointer-events: none;
}

.site-footer .footer-social-bar .social-icons svg {
    width: 22px;
    height: 22px;
    fill: #fff;
}

.site-footer .footer-social-bar .social-icons svg path {
    fill: #fff;
}

.site-footer .footer-widgets-container {
    padding: 40px 0;
}

.site-footer .footer-widgets .footer-widgets-container .inside-footer-widgets {
    width: 100%;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}

.footer-widgets .inside-footer-widgets>div {
    flex: 1 0 auto;
}

.site-footer .footer-widgets .footer-widgets-container .inside-footer-widgets>div {
    padding: 0 15px;
    flex: 1 0 auto;
}

.site-footer .footer-widgets .footer-widgets-container .inner-padding {
    padding: 0;
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 23px;
    margin: 0;
}

.site-footer .footer-widgets .footer-widgets-container .wp-block-heading,
.site-footer .footer-widgets .footer-widgets-container .widget-title {
    font-size: 17px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
    margin-bottom: 13px;
}

.site-footer .footer-widgets .footer-widgets-container .inner-padding p {
    margin-bottom: 10px;
}

.site-footer .footer-widgets .footer-widgets-container ul li {
    margin-bottom: 10px;
}

.site-footer .footer-widgets a:not(:hover, :focus) {
    text-decoration: none;
}

.site-footer .inside-site-info {
    padding: 30px 15px;
    color: #767B84;
    font-size: 13px;
    font-weight: 400;
    line-height: 25px;
}

.site-footer .inside-site-info .copyright-bar {
    text-align: right;
    margin-right: 0 !important;
}

.site-footer .inside-site-info .footer-terms {
    text-align: left;
}

.site-footer .footer-widgets .footer-widgets-container .widget-title[aria-expanded="true"]::before {
    transform: translateY(-50%) rotate(90deg);
    transition: all 0.3s ease-in-out;
}

.footer-call {
    display: flex;
    align-items: center;
    gap: 10px;
}

.site-footer .footer-widgets .footer-widgets-container .footer-call h2 {
    margin-bottom: 0;
}

@media (max-width: 1024px) {
    .site-footer .footer-widgets .footer-widgets-container .inside-footer-widgets>div {
        flex: 0 0 50%;
        margin: 0 0 22px;
    }

    .site-footer .footer-widgets-container {
        padding: 40px 0 18px 0;
    }
}

@media (max-width: 991px) {
    .site-footer .footer-widgets .footer-widgets-container .inside-footer-widgets>div {
        padding: 0 25px;
    }

    .site-footer .footer-social-bar {
        padding: 48px 25px;
    }

    .site-footer .footer-social-bar::after {
        left: 25px;
        width: calc(100% - 50px);
    }
}

@media (max-width: 768px) {
    .site-footer .footer-widgets .footer-widgets-container .inside-footer-widgets>div {
        flex: 0 0 100%;
    }

    .site-footer .inside-site-info .footer-terms {
        text-align: center;
    }

    .site-footer .inside-site-info .copyright-bar {
        text-align: center;
        margin-right: auto !important;
    }
}

@media (max-width: 575px) {
    .site-footer .footer-widgets .footer-widgets-container .widget-title[aria-expanded] {
        padding-right: 20px;
        position: relative;
        cursor: pointer;
    }

    .site-footer .footer-widgets .footer-widgets-container .widget-title[aria-expanded]::before {
        content: url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_87_1805)'%3E%3Cpath d='M5.96513 2.40831L5.19173 3.18167C5.00868 3.36472 5.00868 3.66151 5.19173 3.8446L12.2503 10.92L5.19173 17.9954C5.00868 18.1784 5.00868 18.4752 5.19173 18.6583L5.96513 19.4317C6.14817 19.6148 6.44497 19.6148 6.62806 19.4317L14.8083 11.2515C14.9913 11.0684 14.9913 10.7716 14.8083 10.5885L6.62806 2.40831C6.44497 2.22522 6.14817 2.22522 5.96513 2.40831Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_87_1805'%3E%3Crect width='20' height='20' fill='white' transform='translate(0 0.919922)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        font-size: 0;
        line-height: 1;
        transition: all 0.3s ease-in-out;
    }

    .site-footer .footer-social-bar {
        text-align: center;
    }

    .site-footer .footer-social-bar .social-icons {
        flex: 0 0 100%;
        margin-top: 30px;
    }

    .social-icons a {
        margin-right: 30px;
    }

    .site-footer .footer-widgets .footer-widgets-container .inside-footer-widgets>div aside:has(.widget-title[aria-expanded="false"])>*:not(.widget-title) {
        display: none;
    }
}

/*
    * Rebrand CSS for basic post and page content
    */
.single-page-article .inside-article,
.single-post-article .inside-article,
.no-results .inside-article {
    padding-right: 15px;
    padding-left: 15px;
}

/* 
    * Rebrand CSS grid sizing
    */
section,
.single-page-article,
.single-post-article {
    padding-top: 80px;
    padding-bottom: 80px;
    width: 100%;
}

/* body.page-template-rebrand:has(.top-bar) #main {
        padding-top: 42px;
    } */
body:not(.home) section.background-white:first-of-type:not(.content-section.background-white) {
    padding-top: 0;
}

.container,
.grid-container,
.site-content,
.single-page-article .inside-article,
.single-post-article .inside-article {
    width: 100%;
    max-width: 1080px;
    background: transparent !important;
    margin-right: auto;
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

#page,
#page .site-content {
    width: 100%;
    max-width: 100%;
}

.site-content .content-area {
    width: 100%;
}

@media (max-width: 991px) {

    section,
    .single-page-article,
    .single-post-article {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

/* Button styles */
.navy-button {
    background-color: var(--steel-blue, #334D5D);
    color: white;
    border: none;
    border-radius: var(--button-border-radius);
    padding: 10px 30px;
}

.orange-button span {
    padding-right: 20px;
}

.orange-button::after {
    content: "";
    display: inline-block;
    width: 14px;
    /* adjust size */
    height: 14px;
    background: url('../images/right-arrow-white.svg') no-repeat center center;
    background-size: contain;
}

.orange-solid::after {
    content: "";
    display: inline-block;
    width: 14px;
    /* adjust size */
    height: 14px;
    background: url('../images/right-arrow-white.svg') no-repeat center center;
    background-size: contain;
    margin-left: 20px;
}

.navy-button:hover {
    background-color: var(--steel-blue, #334D5D);
    color: white;
    border: none;
    border-radius: var(--button-border-radius);
    padding: 10px 30px;
    filter: brightness(75%);
}

/* Page banner slider */
#page-banner-slider {
    width: 100%;
    height: 700px;
}

#page-banner-slider .banner-slide .slider-container {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#page-banner-slider .banner-slide .slider-container .slider-text-content {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

@media (max-width: 991px) {
    #page-banner-slider .banner-slide .slider-container .slider-text-content {
        padding: 0 20px;
    }
}

#page-banner-slider .banner-slide .slider-container .slider-text-content .main-heading {
    max-width: 55%;
    font-size: 3rem;
    font-weight: bold;
}

@media (max-width: 991px) {
    #page-banner-slider .banner-slide .slider-container .slider-text-content .main-heading {
        max-width: 100%;
    }
}

#page-banner-slider .banner-slide .slider-container .page-hero-background {
    height: 100%;
}

#page-banner-slider .banner-slide .slider-container .page-hero-background img {
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#page-banner-slider .swiper-pagination-bullet {
    background: white;
    opacity: 0.5;
}

#page-banner-slider .swiper-pagination-bullet-active {
    background: white;
    opacity: 1;
}

/* YouTube Feed */
#sb_youtube_sbyPLYoVQuvUo4v3 .sby_items_wrap .sby_item .sby_inner_item .sby_video_thumbnail {
    border-radius: 1rem;
    height: 180px !important;
}

#sb_youtube_sbyPLYoVQuvUo4v3 .sby_items_wrap .sby_item .sby_inner_item .sby-video-info {
    text-align: left;
}

#sb_youtube_sbyPLYoVQuvUo4v3 .sby_items_wrap .sby_item .sby_inner_item .sby_video_title_wrap {
    margin-bottom: 1rem;
}

/* Pricing Tables */
@media (width <=991px) {
    .pricing-table-desktop {
        display: none;
    }

    .pricing-table-mobile {
        display: flex;
    }

    .compare-pricing {
        display: block;
        text-align: center;
        margin-bottom: 1rem;
        color: black;
    }
}

@media (width >=992px) {
    .pricing-table-desktop {
        display: table;
    }

    .pricing-table-mobile {
        display: none;
    }

    .compare-pricing {
        display: none;
    }
}

.pricing-table-section .content-buttons {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 2rem;
}

.pricing-table-wrapper {
    padding: 1rem;
    background-color: #B7C2CF;
    width: 100%;
}

/* Pricing Table - Desktop */
.pricing-table-desktop {
    border-radius: 0 !important;
    border-collapse: collapse !important;
    border-style: hidden !important;
    margin-bottom: 1rem !important;
}

.pricing-table-desktop:last-of-type {
    margin-bottom: 0 !important;
}

.pricing-table-desktop tbody tr td::before,
.pricing-table-desktop tbody tr td::after,
.pricing-table-mobile tbody tr td::before,
.pricing-table-mobile tbody tr td::after {
    background: none !important;
}

.pricing-table-desktop h3,
.pricing-table-desktop p {
    margin: 0;
}

.pricing-table-desktop .tier {
    text-align: center;
    width: 250px;
}

/* Pricing Table - Mobile */
.pricing-table-mobile {
    width: 100%;
    border-radius: 0 !important;
    border-collapse: collapse !important;
    border-style: hidden !important;
    margin-bottom: 1rem !important;
    flex-direction: column;
    flex-wrap: wrap;
}

.pricing-table-mobile .tier {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    flex: 1;
    padding: 1rem
}

.pricing-table-mobile .pricing-table-cell {
    flex: 1;
    padding: 1rem 1rem 0 1rem;
}

.pricing-table-mobile p {
    margin: 0;
}

.pricing-table-mobile .pricing-table-header {
    text-align: left;
    flex-basis: 100%;
    flex-grow: 1;
    font-weight: 700;
    padding: 1rem 1rem 0 1rem;
}

.pricing-table-mobile .pricing-table-row {
    display: flex;
    flex-basis: 100%;
    flex-grow: 1;
    flex-direction: row;
}

.pricing-table-mobile .tier-description {
    font-weight: normal;
}

.pricing-table-mobile .price-label {
    width: 20%;
}

.pricing-table-mobile .tier-text {
    display: flex;
    align-items: baseline;
}

.pricing-table-mobile .tier-title {
    font-size: 1.25rem;
    font-weight: bold;
}

.pricing-table-mobile .price-label,
.pricing-table-mobile .price-value {
    text-align: left;
}

.pricing-table-mobile .divider {
    padding: 0 3px;
}

@media (width <=450px) {
    .pricing-table-mobile .tier-title {
        font-size: 1rem;
    }

    .pricing-table-mobile .tier-description {
        font-size: 0.75rem;
    }

    .price-label p {
        font-size: 0.75rem;
        padding-bottom: 1rem;
    }
}

/* Teal Table */
.table-color-teal {
    background-color: var(--teal, #008080);
    color: white;
}

.table-color-teal tbody tr td,
.table-color-teal .pricing-table-cell {
    background-color: #8badb8 !important;
    color: black !important;
}

.pricing-table-desktop.table-color-teal tbody tr td {
    border: 3px solid var(--teal, #008080) !important;
}

.pricing-table-mobile.table-color-teal .pricing-table-header {
    background-color: #25777E;
}

.pricing-table-mobile.table-color-teal .pricing-table-data-row {
    border-bottom: 3px solid var(--teal, #008080);
}

.pricing-table-mobile.table-color-teal .pricing-table-data-row:last-of-type {
    border-bottom: none;
}

/* Blue Table */
.table-color-blue {
    background-color: var(--blue, #2A4D69);
    color: white;
}

.table-color-blue tbody tr td,
.table-color-blue .pricing-table-cell {
    background-color: #7f93a6 !important;
    color: black !important;
}

.pricing-table-desktop.table-color-blue tbody tr td {
    border: 3px solid var(--blue, #2A4D69) !important;
}

.pricing-table-mobile.table-color-blue .pricing-table-header {
    background-color: #183B56;
}

.pricing-table-mobile.table-color-blue .pricing-table-data-row {
    border-bottom: 3px solid var(--blue, #2A4D69);
}

.pricing-table-mobile.table-color-blue .pricing-table-data-row:last-of-type {
    border-bottom: none;
}

/* Purple Table */
.table-color-purple {
    background-color: var(--purple, #4B3C6B);
    color: white;
}

.table-color-purple tbody tr td,
.table-color-purple .pricing-table-cell {
    background-color: #8c8ca8 !important;
    color: black !important;
}

.pricing-table-desktop.table-color-purple tbody tr td {
    border: 3px solid var(--purple, #4B3C6B) !important;
}

.pricing-table-mobile.table-color-purple .pricing-table-header {
    background-color: #362A4F;
}

.pricing-table-mobile.table-color-purple .pricing-table-data-row {
    border-bottom: 5px solid var(--purple, #4B3C6B);
}

.pricing-table-mobile.table-color-purple .pricing-table-data-row:last-of-type {
    border-bottom: none;
}

/* Gravity forms */
@media (width <=991px) {
    .gform-shortcode-wrapper {
        margin-top: 2rem;
    }
}

.gform-shortcode-wrapper {
    background-color: white;
    color: var(--navy, #1B2A3D);
    padding: 1rem;
    border-radius: 1rem;
}

.gform-shortcode-wrapper .main-heading {
    color: var(--steel-blue, #334D5D);
    text-align: left;
    margin: 0;
}

.gform-shortcode-wrapper form {
    padding-bottom: 2rem;
}

.gform-shortcode-wrapper .gform_body #gform_fields_29,
.gform-shortcode-wrapper .gform_body #gform_fields_32,
#gform_fields_31 {
    display: grid;
    grid-gap: 11px 25px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: row dense;
}

/* Description */
.gform-shortcode-wrapper .gform_body #field_29_28,
.gform_body #field_31_28,
.gform_body #field_32_28 {
    text-align: left;
    grid-column: span 2;
}

.gform-shortcode-wrapper .gform_heading {
    display: none;
}

.gform-shortcode-wrapper .gform_body .gform_fields {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.gform-shortcode-wrapper .gform_body .gfield {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.gform-shortcode-wrapper .gform_body .gfield .gfield_label {
    font-weight: bold;
    margin-bottom: 0.5rem;
}

/* Date of Birth */
.gform-shortcode-wrapper .gform_body .ginput_container {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.gform-shortcode-wrapper .gform_body #field_29_10,
#field_31_10,
#field_32_10 {
    grid-column: span 2;
}

.gform-shortcode-wrapper .gform_body fieldset {
    text-align: left;
}

.gform-shortcode-wrapper .gform_body fieldset select {
    width: 90%;
}

/* Box tick */

.gform-shortcode-wrapper .gform_body #field_29_26,
.gform-shortcode-wrapper .gform_body #field_29_27,
.gform-shortcode-wrapper .gform_body #field_29_19,
.gform-shortcode-wrapper .gform_body #field_29_30,
.gform-shortcode-wrapper .gform_body #field_29_31,
.gform_body #field_31_31,
.gform_body #field_32_26,
.gform_body #field_32_27,
.gform_body #field_32_19,
.gform_body #field_32_30,
.gform_body #field_32_31 {
    text-align: left;
    grid-column: span 2;
}

.gform-shortcode-wrapper .gform_body #field_29_19.gfield_visibility_hidden,
.gform-shortcode-wrapper .gform_body #field_29_27.gfield_visibility_hidden,
.gform-shortcode-wrapper .gform_body #field_31_19.gfield_visibility_hidden,
.gform-shortcode-wrapper .gform_body #field_31_27.gfield_visibility_hidden,
.gform-shortcode-wrapper .gform_body #field_32_19.gfield_visibility_hidden,
.gform-shortcode-wrapper .gform_body #field_32_27.gfield_visibility_hidden {
    display: none;
    margin: 0;
}

.gform-shortcode-wrapper .gform_body #field_29_17.gfield_visibility_hidden,
.gform-shortcode-wrapper .gform_body #field_31_17.gfield_visibility_hidden,
.gform-shortcode-wrapper .gform_body #field_32_17.gfield_visibility_hidden {
    margin: 0;
}

/* Errors */
.free-consultation-popup .gform_validation_errors {
    padding-top: 1rem;
}

.free-consultation-popup .gform_validation_errors ol li {
    color: red;
    text-align: left;
}

.free-consultation-popup .gform_submission_error {
    text-align: left;
    font-size: 20px;
    color: #ff5050;
    font-weight: 500;
    line-height: 2rem;
    margin: 0 0 0.5rem 0;
}

/* Gform 31 */

#gform_31 .gform_body .gfield {
    text-align: left;
}

#gform_31 .gfield_checkbox .gform-field-label {
    display: none;
}

/* New Clinic Locations */

.new-find-clinic-section .container {
    position: relative;
}

.clinic-locations {
    width: 100%;
    overflow: hidden;
}

@media (width <=991px) {
    .clinic-locations {
        padding: 0 2rem;
    }
}

.clinic-locations .swiper-wrapper {
    display: flex;
    align-items: stretch;
}

.clinic-locations .swiper-slide {
    height: 350px;
}

.clinic-location {
    display: flex;
    flex-direction: column;
    background-color: white;
    border-radius: 2rem;
    color: var(--navy, #1B2A3D);
    overflow: hidden;
    transition: transform 0.3s;
    max-width: 292.8px;
    margin-right: 1rem;
}

/* Orange overlay */
.clinic-location::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(227, 67, 18, 0.3);
    border-radius: 2rem;
    opacity: 0;
    transition: opacity 0.3s;
    pointer-events: none;
}


.clinic-location__image-wrapper {
    height: 200px;
    width: 100%;
}

.clinic-location__image {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.clinic-location__information {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    width: 100%;
    padding: 0.75rem 1rem 1rem 1rem;
}

.clinic-location__name {
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: normal;
    margin: 0;
}

.clinic-location__address {
    font-size: 1rem;
    line-height: 1.5rem;
    margin: 0 0 0.5rem 0;
}

@media (width <=991px) {
    .clinic-location__name {
        font-size: 1rem;
        line-height: 1.5rem;
    }

    .clinic-location__address {
        font-size: 0.85rem;
        line-height: 1.25rem;
    }
}

.clinic-location__phone_number {
    display: flex;
    align-items: center;
    font-size: 1rem;
    line-height: 1.5rem;
    margin: 1rem 0 0 0;
    padding: 8px 20px;
    width: max-content;
    gap: 8px;
    background-color: var(--orange);
    color: white !important;
    text-decoration: none !important;
    border-radius: var(--button-border-radius);
}

.clinic-location__phone_number:before {
    content: '';
    background-image: url("../images/phone-icon-white.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.25rem;
    height: 1.25rem;
    display: inline-block;
}

.clinic-locations .swiper-wrapper {
    height: auto;
}

.clinic-locations .swiper-pagination {
    position: relative;
    top: 0;
    bottom: 0;
    margin-top: 1rem;
}

.clinic-locations .swiper-pagination .swiper-pagination-bullet-active {
    background-color: white;
}

.clinic-locations .swiper-pagination .swiper-pagination-bullet {
    border: 1px solid white;
    opacity: 100%;
}

/* Arrows */

.new-find-clinic-section .swiper-button-prev,
.new-find-clinic-section .swiper-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.new-find-clinic-section .swiper-button-prev {
    left: -50px;
}

.new-find-clinic-section .swiper-button-next {
    right: -50px;
}

@media (width <=1280px) {

    .new-find-clinic-section .swiper-button-prev,
    .new-find-clinic-section .swiper-button-next {
        display: none;
    }
}


/*
* Rebrand CSS for video testimonial section
*/

.video-testimonials-section .section-introduction {
    text-align: center;
    margin-bottom: 30px;
}

.video-testimonials-section .section-introduction .content-buttons {
    justify-content: center;
}

.video-testimonials-slider {
    max-width: 1440px;
    padding-bottom: 55px;
}

.single-video-testimonial {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    overflow: hidden;
    color: #fff;
    aspect-ratio: 3 / 5;
    transition: margin 0.3s ease-in-out;
    max-height: 600px;
    max-width: 533.33px;
    margin-right: 20px;
}

.single-video-testimonial::after {
    content: "";
    inset: auto 0 0 0;
    position: absolute;
    height: 60%;
    background: linear-gradient(0deg, rgb(0 0 0 / 55%), transparent);
    z-index: -1;
}

.testimonial-video-button {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #7a310f;
    border-radius: 50%;
    padding: 24px !important;
}

.testimonial-video-button svg {
    position: relative;
    transform: none;
    right: auto;
    left: auto;
}

@media(max-width: 768px) {
    .video-testimonials-slider {
        max-width: 100%;
    }

    .single-video-testimonial {
        aspect-ratio: 121 / 200;
    }
}

/* 2026 Pricing Module */
.pricing-module-2026 {
  color: var(--body-text); /* dark text — visible on white / light-orange backgrounds */
  .container {
    display: flex;
    flex-direction: column;
    padding: 0 1rem;
  }
  h2 {
    margin-top: 40px;
  }
}

/* white text only on the dark (navy) background variant */
.pricing-module-2026.background-navy {
  color: #fff;
}

.pmma-price,
.zirconia-price,
.emax-price {
    font-size: 1.1rem;
}

/* 2026 Pricing Table */
.pricing-table-2026 {
    padding: 2rem;
    border-radius: 1.5rem;
    margin-bottom: 1rem;
}

.pricing-table-2026 .container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.pricing-table-2026__table-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.pricing-table-2026__appendix {
    margin-top: 1rem;
}

.pricing-table-2026__product-name {
    margin-bottom: 0.15rem;
    font-weight: normal;
    font-size: 2.5rem;
}

.pricing-table-2026__starting_price {
    margin-bottom: 1rem;
    font-size: 1.1rem;
}

:not(.pricing-table-2026__table) .table{
  max-width: 100vw;
  display: inline-block;
  overflow: scroll;
}

.pricing-table-2026__table table {
    border-radius: 0;
    border: none;
}

.pricing-table-2026__table table thead tr th {
    padding-bottom: 0;
}

.pricing-table-2026__table table thead tr th,
.pricing-table-2026__table table tbody tr td,
.pricing-table-2026__table table tbody tr td:first-child,
.pricing-table-2026__table table tbody tr:last-child td {
    background-color: transparent;
    color: white;
    text-align: left;
    font-weight: normal;
    min-width: 100px;
    padding: 1rem 1rem 1rem 0;
}


.pricing-table-2026__table table tbody tr td::before,
.pricing-table-2026__table table tbody tr td::after {
    display: none;
}

/* 2026 Pricing Table - DESKTOP size */

.pricing-table-2026__table-desktop {
    display: table;
}

.pricing-table-2026__table-desktop table tbody .pricing-table-2026__single-jaw-row td {
    border-bottom: 1px solid white;
}

/* 2026 Pricing Table - MOBILE size */
.pricing-table-2026__table-mobile {
    display: none;
}

.pricing-table-2026__table table thead tr th {
    padding: 0 1rem 1rem 0;
}

.pricing-table-2026__table-mobile table tbody tr td,
.pricing-table-2026__table-mobile table tbody tr td:first-child,
.pricing-table-2026__table-mobile table thead tr td:first-child {
    padding: 0 1rem 1rem 0;
    width: 125px;
}

.pricing-table-2026__table-mobile table tbody tr:last-child td {
    padding-top: 0 !important;
}

/* Toggle for pricing table material change */
.material-switch {
    position: relative;
    display: inline-block;
    width: 160px;
    height: 40px;
}

.material-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.material-slider {
    position: absolute;
    inset: 0;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px;
    cursor: pointer;
    box-sizing: border-box;
}

/* The moving pill */
.material-slider::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(50% - 4px);
    height: calc(100% - 8px);
    background-color: #f26532;
    /* orange */
    border-radius: 999px;
    transition: transform 0.3s ease;
    z-index: 1;
}

/* Move pill when checked */
.material-switch input:checked+.material-slider::before {
    transform: translateX(100%);
}

/* Text styles */
.material-option {
    position: relative;
    z-index: 2;
    width: 50%;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    color: #fff;
    user-select: none;
    transition: color 0.3s ease;
}

/* Optional: dim inactive text */
.material-switch input:not(:checked)+.material-slider .material-option--zirconia,
.material-switch input:checked+.material-slider .material-option--pmma {
    opacity: 0.7;
}


@media(max-width: 768px) {
    .pricing-table-2026 {
        padding: 2rem 1rem;
    }

    .pricing-table-2026 table tbody tr:last-child .third-col {
        padding: 0 0 1rem 1.5rem;
        border-left: 1px solid white;
    }

    .pricing-table-2026 .third-col {
        padding: 0 0 1rem 1.5rem;
        border-left: 1px solid white;
    }

    .pricing-table-2026 .second-col {
        padding: 0 1.5rem 1rem 0;
    }

    .pricing-table-2026 .container {
        display: flex;
        flex-direction: column;
    }

    .pricing-table-2026__table-header {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .pricing-table-2026__table-desktop {
        display: none;
    }

    .pricing-table-2026__table-mobile {
        display: table;
    }

    .material-slider {
        border: 1px solid white;
    }
}

/* 2026 Pricing Cards */
.pricing-cards-2026 {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    width: 100%;
}

.pricing-card-2026 {
    border-radius: 24px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    img {
      display: block;
      width: 100%;
    }
}

.pricing-card-2026__content {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.pricing-card-2026__product-name {
    margin-bottom: 0.15rem;
    font-weight: normal;
    font-size: 2.5rem;
}

.pricing-card-2026__starting-price {
    font-size: 16px;
}

.pricing-card-2026__description {
    flex-grow: 1;
    font-size: 16px;
    margin-top: 1rem;
    p {
      margin-bottom: 0.25rem;
    }

}

.pricing-card-2026__appendix {
  font-weight: 400;
  font-size: 10px;
  leading-trim: NONE;
  line-height: 125%;
  letter-spacing: 0%;
  vertical-align: middle;
  p {
    margin: 0;
  }
}

.pricing-card-2026__table table {
    border-radius: 0;
    border: none;
}

.pricing-card-2026__table table thead tr th {
    padding-bottom: 0;
}

.pricing-card-2026__table table thead tr th,
.pricing-card-2026__table table tbody tr td,
.pricing-card-2026__table table tbody tr td:first-child,
.pricing-card-2026__table table tbody tr:last-child td {
    background-color: transparent;
    color: white;
    text-align: left;
    font-weight: normal;
    min-width: 75px;
    padding: 1rem 1rem 0 1rem;
}

.pricing-card-2026__table table tbody tr td::before,
.pricing-card-2026__table table tbody tr td::after {
    display: none;
}

.pricing-card-2026__table table thead tr th:first-child {
    padding: 1rem 1rem 0 0;
}

.pricing-card-2026__table table tbody tr td:first-child {
    padding: 1rem 1rem 0 0;
}

.pricing-card-2026__view-finance-options {
    margin: 1rem 0;
}

/* mobile horizontal scroll for pricing cards with snap */
@media (width < 768px) {
  .pricing-card-2026 {
    flex: 0 0 75vw;
  }

  .horizontal-scroll-wrapper {
    width: 100%;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
}




/*
  2026 Refresh 
*/

.page-banner-section-2026 {
    position: relative;
    overflow: hidden;

    .banner-background {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 0;
        overflow: hidden;
    }

    .banner-background video {
        width: 100% !important;
        position: absolute;
        object-fit: cover;
        z-index: 0;
    }

    /* container holds the content of the banner and sits on top of the banner-background video/image */
    .page-banner-content {
        position: relative;
        z-index: 1;
        border-top-right-radius: 24px;
        border-bottom-right-radius: 24px;
        background: white;
        box-shadow: 0px 4px 40px 0px #0000001F;
        margin: 60px 40px 30px 0;
        padding: 20px;

    }
/*
    .bullet-columns {
        display:grid;
        grid-template-columns: 1fr 1fr;
    }
*/
    .trustpilot-widget {
      margin: 10px 10px 20px -10px;
    }
}

@media (max-width: 767px) {
    .page-banner-section-2026 .banner-background img { display: none; }
    .page-banner-section-2026.show-bg-on-mobile .banner-background img { display: block; }
}

/* Phase 1 pre-launch: navy hero (no background image) on these treatment pages,
   matching the mobile presentation. Scoped by page so other pages keep their image. */
.page-id-67031 .page-banner-section-2026 .banner-background img,
.page-id-83632 .page-banner-section-2026 .banner-background img,
.page-id-83125 .page-banner-section-2026 .banner-background img,
.page-id-83225 .page-banner-section-2026 .banner-background img { display: none; }

div.top-bar + header.page-banner-section-2026 {
  margin-top: 54px;
}
@media(max-width:1023px){
div.top-bar + header.page-banner-section-2026 {
  margin-top: 134px;
}}

/* The 2026 banner's text sits in a white content box, so its headings must stay
   dark even when the section background is navy — overrides the generic
   .background-navy white-heading rule (which would make them invisible here). */
.page-banner-section-2026 .page-banner-content :is(h1, h2, h3, h4) {
    color: var(--navy);
    margin:10px 0;
}

/* mobile: smaller top gap on the banner content box */
@media (max-width: 767px) {
    .page-banner-section-2026 .page-banner-content {
        margin-top: 40px;
    }
}

@media (min-width: 768px) {
  .page-banner-section-2026 {
    video {
      max-height: 490px;
    }
    .page-banner-content {
      max-width: 620px;
      padding: 40px;
    }
  }
  .page-id-79814 .page-banner-content {
    max-width: 620px !important;
    padding: 40px;
  }
}
@media (min-width: 1080px) {
  .page-banner-section-2026 {
    .page-banner-content {
      border-radius: 24px;
    }
  }
}



h1.text-cycle-banner {
  font-weight: 600;
  line-height: 105%;

  >div:first-child {
    display: inline-grid;
    vertical-align: top;

    span {
      /* overlap these so they can be transitioned between */
      grid-area: 1 / 1;
      opacity: 1;
      transition: opacity 0.7s ease-in-out;
      position: relative;
    }

    span:first-child {
      opacity: 1;
    }

    span:not(:first-child) {
      opacity: 0;
    }

  }

  >div:last-child {
    max-width: 310px;
  }

}


/* Quick Stats Section */


.quick-stats-list {
  /* 2 column grid on mobile, 4 for desktop */
  display: flex;

  > div {
    .stat-icon {
      margin-bottom: 4px;
      height: 64px;
      width: 64px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    h3 {
      margin-bottom: 6px;
    }
  }
}

@media (min-width: 400px) {
  .quick-stats-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));

  }
}

@media (min-width: 768px) {
  /* Desktop: Swiper is destroyed, so the list is a static flex row of
     thin fixed-width cards (matches staging). NOT a grid — a 4-col grid
     combined with the swiper-wrapper width below collapsed every card
     into one tall sliver. */
  .quick-stats-list {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 10px;
  }

  .quick-stats-list .swiper-slide {
    flex: 0 0 auto;
    width: 260px;
  }
}



/* container variants */

section.section-inset {
  padding: 0 20px;
  > .container {
    background: var(--light-orange)!important;
    padding: 20px;
    border-radius: 24px;
  }
}

section.section-full-bleed {
  background: var(--light-orange);
}

@media (min-width: 768px) {
  section.section-inset {
    paddign: 0;
  }

}



/* Feature cards including process step cards */


.feature-cards {

  .feature-card {
    display: flex;

    div, h3, p {
      margin: 0;
    }
    h3 {
      font-size: 24px;
    }

    .feature-card__step-label {
      font-weight: bold;
    }

    .media {
      img {
        display: block;
        object-fit: cover;
        border-radius: 8px;
        height: 173px;
      }
    }
  }
}

@media (width < 768px) {
  .feature-cards {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  .feature-card {
    display: flex;
    gap: 16px;

    border-top: 1px solid #ddd;
    padding-top: 30px;

    .media {
      flex: 0 0 125px;
    }
  }
}

@media (width >= 768px) {

  .feature-cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px;

    .feature-card, .feature-card .content {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
  }

}



/* Trustpilot + Before & After photos section */

  /* <section class="trustpilot-before-and-after-section">  */

.trustpilot-before-and-after-section {

  .container {
    display: block;
  }

  .before-and-after-labels {
    display: none;
  }

  .before-and-after-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;

    img {
      display: block;
      width: 100%;
      object-fit: cover;
      height: 228px;
    }
  }

  .guarantee-box {
    background: white;
    border-top-right-radius: 24px;
    border-bottom-right-radius: 24px;
    padding: 20px 30px;
    box-shadow: 0px 4px 40px 0px #0000001F;
    max-width: 350px;
    margin: 0 40px 0 0;
    position: relative;
    top: -50px;

    display: flex;
    align-items: center;
    gap: 32px;

    img {
      flex: 0 0 80px;
    }

    h4 {
      font-weight: 500;
      font-style: Medium;
      font-size: 16px;
      line-height: 114.99999999999999%;
      letter-spacing: 0;

      text-transform: capitalize;
      color: var(--orange);
      margin-bottom: 8px;
    }
    p {
      font-weight: 500;
      font-style: Medium;
      font-size: 14px;
      line-height: 115%;
      margin: 0;
    }

  }

}


@media (width < 1080px) {
  .trustpilot-before-and-after-section {
    .before-and-after-grid {
      img:nth-child(n+3) {
        display: none;
      }
    }

    .guarantee-box {
      position: relative;
      top: -50px;
    }
  }
}

@media (width >= 1080px) {


  section.trustpilot-before-and-after-section {

    .container {
      display: flex;
      align-items: center;
    }

    .left {
      flex: 0 0 620px;
      overflow: hidden;
    }

    .right {
      border-radius: 24px;
      background: #F8F9FA;
      box-shadow: 0px 2px 40px 0px #0000001F;
      /*flex-grow: 1;*/
      width:460px;  
      height: 540px;
    }

    .guarantee-box {
      top: -50px;
      border-top-left-radius: 24px;
      border-bottom-left-radius: 24px;
      margin: 0 auto;
    }

    .before-and-after-labels, .before-and-after-grid {
      width: 620px;
    }

    .before-and-after-labels {
      display: flex;
      div {
        flex: 0 0 310px;
        text-align: center;
        font-size: 16px;
        font-weight: bold;
        padding-bottom: 32px;
      }
    }

    .before-and-after-grid {
      border-radius: 24px;
      overflow: hidden;


      img {
        height: 228px;
      }
    }

  }
}


/* Content with media section */

.content-with-media-section {
  padding: 0;
  .container {
    display: block;
    overflow: hidden;
  }
}

.content-with-media-section__video {
  video {
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
  }
}

.content-with-media-section__text {
  background: #1B2A3D;
  color: white;
  padding: 20px;
}

@media (width >= 768px) {
  .content-with-media-section {
    padding: 125px 0;
    .container {
      display: flex!important;
      flex-wrap: nowrap!important;
    }
  }

  .content-with-media-section__video {
    flex: 0 0 560px;
  }

  .content-with-media-section__text {
    padding: 40px 72px;
  }
}

@media (width >= 1025px) {
  .content-with-media-section {
    .container {
      border-radius: 24px;
    }
  }
}

/* Content sections: h2s match .pmwf-title, buttons match .pmwf-callout-cta a */
.content-section .section-introduction h2 {
  line-height: 1.1;
  color: #0B1B2D;
}

.content-with-media-section__text h2 {
  line-height: 1.1;
}

.content-section .section-introduction .content-button,
.content-with-media-section__text :is(a.button, .content-button) {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #f15b31;
  color: #fff;
  padding: 14px 24px;
  border-radius: 999px;
  border: none;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  transition: opacity .2s ease;
}

.content-section .section-introduction .content-button:is(:hover, :focus),
.content-with-media-section__text :is(a.button, .content-button):is(:hover, :focus) {
  opacity: 0.9;
  background: #f15b31;
  color: #fff;
  border: none;
}

.content-section .section-introduction .content-button::after,
.content-with-media-section__text :is(a.button, .content-button)::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  background: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 7H13M13 7L7 1M13 7L7 13' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center center;
  background-size: contain;
}



/* Tweak position of 'back to top' button. Avoid overlapping chat widget */
.generate-back-to-top {
  right: 17px!important; /* center align with chat button */
  bottom: 75px!important;
}



/* 
  Sticky CTA at bottom of page 
*/


.sticky-cta {
  position: fixed;
  left: 42%;
  transform: translate(-50%, 80px);
  transition: transform 0.3s ease-in-out;
  &.onscreen {
    transform: translate(-50%, 0);
  }
  bottom: 15px;
  background: black;
  border-radius: 99999px;
  z-index: 1000;
  box-shadow: 0px 4px 10px 0px #00000044;


  a, a:hover {
    color: white!important;
  }

  a {
    line-height: normal;
    padding: 8px 8px 8px 18px;
    display: flex;
    gap: 10px;
    white-space: nowrap;
      justify-content: center;
      align-items: center;
    span {
      position: relative;
      top: 3px;
    }
  }

  span:first-child {
    color: var(--orange);
  }

  .call-button {
    width: 32px!important;
    height: 32px!important;
  }

}

div#CookiebotWidget {
    display: none !important;
}
.trustpilot-widget.small-trustpilot {
    margin: 20px 100px 50px;
}
/* Style the menu item link like a button */
.menu-item a.micromodal-trigger {
    display: inline-block !important;         
    background-color: #f15b31 !important;     
    color: #ffffff !important;          
    padding: 20px !important;        
    border-radius: 8px !important;           
    text-decoration: none !important;         
    font-weight: bold !important;
    transition: background-color 0.3s ease, transform 0.2s ease !important;
    line-height: 10px !important;
    margin-left: 5px;
}
.slideout-menu .menu-item a.micromodal-trigger {
    margin-top: 10px;
}

/* Hover effect */
.menu-item a.micromodal-trigger:hover {
    background-color: #f15b31 !important;    
    transform: translateY(-2px) !important;   
}

@media (max-width: 374px) {
    .sticky-cta {
        left: 41%;
    }
    .sticky-cta.onscreen {
    width: 80%;
    font-size: 13px;
}
}

@media (max-width:500px) {
li.micromodal-trigger.smooth-scroll.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-83426 {
    margin-left: 10px !important;
}
.trustpilot-widget.small-trustpilot {
    margin: 0px 100px 20px;
}
}

.gform_confirmation_wrapper {
    display: none !important;
}
.page-id-67850 div#field_12_13 {
    width: 510px;
}
.page-id-67850 select#input_12_13 {
    width: 100%;
    border-radius: 50px;
}
.page-id-66913 div#field_5_10 {
    width: 390px;
}
.page-id-66913 select#input_5_10 {
    width: 100%;
    border-radius: 50px;
}
.page-id-66913 div#field_5_17 {
    width: 390px;
}
.page-id-66913 select#input_5_17 {
    width: 100%;
    border-radius: 50px;
}

@keyframes overlayFade {
    to { opacity: 1; }
}
body::before {
    transition: opacity 0.3s ease;
}

/* New Blog Cards - DB */
.blog-container {
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 20px; /* keeps it neat on smaller screens */
}

.blog-carousel-section {
    padding: 60px 0;
    max-width: 1080px;
    margin: 0 auto;
}

.blog-section-heading {
    margin-bottom: 30px;
}

.blog-carousel {
    display: flex;
    gap: 20px;
}

/* Card */
.blog-card {
    background: #ffffff;
    border-radius: 25px;
    overflow: hidden;
    flex: 0 0 calc(25% - 15px); /* 4 cards visible */
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
    transition: transform 0.3s ease;
    height: 330px !important;
}

.blog-card:hover {
    transform: translateY(-5px);
}

/* Image */
.blog-card-image img {
    width: 100%;
    height: auto;
    display: block;
    height: 173px;
    object-fit: cover;
} 

/* Content */
.blog-card-content {
    padding: 20px;
}

.blog-meta {
    color: #E06540;
    font-size: 14px;
    margin-bottom: 10px;
}

.blog-title {
    color: #1b2a3d;
    font-size: 18px;
    line-height: 1.4;
}

.page-id-67031 .swiper-wrapper {
    margin-bottom:10px !important;
}

.page-id-67031 .swiper-pagination-bullet {
    background: #ccc;
    opacity: 1;
}

.page-id-67031 .swiper-pagination-bullet-active {
    background: #1b2a3d !important;
}

.page-id-67031 .swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: -5px !important;
    top: auto;
    left: 0;
    width: 100%;
    z-index: 99999;
    position: relative;
}

/* Responsive */
@media (max-width: 1024px) {
    .blog-card {
        flex: 0 0 calc(50% - 10px);
    }
}

@media (max-width: 600px) {
    .blog-card {
        flex: 0 0 100%;
    }
}

/* Mobile only: the active Swiper carousel sizes its slides inline; this
   width must NOT leak to desktop (≥768px) where the list is a full-width
   flex row — otherwise all four cards collapse into a 260px column. */
@media (max-width: 767px) {
    .quick-stats-list.swiper-wrapper {
        width: 260px;
    }
}

section.acf-accordion-section {
    max-width: 1080px;
    margin: 0 auto;
}

/* Base */
.accordion-item {
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 15px;
}

/* Header */
.accordion-header {
    width: 100%;
    text-align: left;
    padding: 18px 20px;  
    font-size: 18px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    border: none;
}

/* Icon (chevron) */
.accordion-icon {
    width: 10px;
    height: 10px;
    border-right: 2px solid #f15b31;
    border-bottom: 2px solid #f15b31;
    transform: rotate(45deg); /* down */
    transition: all 0.3s ease;
}

/* Open state */
.accordion-item.active .accordion-icon {
    transform: rotate(-135deg); /* up */
}

/* Content */
.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: #fff;
}

.accordion-inner {
    padding: 20px;
}

/* =========================
   COLOUR THEMES
   ========================= */

/* Default (white bg, navy text, orange chevron) */
.accordion-white .accordion-header {
    background: #ffffff;
    color: #1B2A3D;
}

/* Navy */
.accordion-navy .accordion-header {
    background: #1B2A3D;
    color: #ffffff;
}

/* Orange (special chevron rule) */
.accordion-orange .accordion-header {
    background: #f15b31;
    color: #ffffff;
}

.accordion-orange .accordion-icon {
    border-color: #ffffff;  
}

/* Teal */
.accordion-teal .accordion-header {
    background: #2a9d8f;
    color: #ffffff;
}

/* Light Grey */
.accordion-light-grey .accordion-header {
    background: #f5f5f5;
    color: #1B2A3D;
}

/* Light Orange */
.accordion-light-orange .accordion-header {
    background: #fde5dd;
    color: #1B2A3D;
}

/* Light Teal */
.accordion-light-teal .accordion-header {
    background: #e0f4f2;
    color: #1B2A3D;
}




.pricing-container {
    max-width: 1080px;
    margin: 0 auto;
    padding: 60px 20px;
}

.pricing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.pricing-card {
    background: #fff;
    border-radius: 20px;
    padding: 25px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    display: flex;
    flex-direction: column;
    gap: 15px;
}


/* Primary price */
.pricing-primary {
    font-size: 26px;
    font-weight: 700;
    color: #1B2A3D; 
}
h3.pricing-card-title {
    margin-bottom: 0 !important;
}
span.pricing-prefix {
    font-size: 16px;
}
/* Finance block */
.pricing-finance {
    font-size: 14px;
    color: #666;
    line-height: 1.4;
}

/* Each finance line */
.finance-line {
    margin-bottom: 4px;
}

/* Finance note (e.g. interest free) */
.finance-note {
    font-size: 12px;
    opacity: 0.8;
    margin-left: 4px;
}

/* Ensure hierarchy spacing feels right */
.pricing-content {
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.5;
}

/* CTA */
.pricing-btn {
    margin-top: auto;
    background: #f15b31;
    color: #fff;
    padding: 12px 16px;
    border-radius: 10px;
    text-align: center;
    text-decoration: none;
}
a.pricing-btn:hover {
    color: #fff !important;
}

.pricing-small-print {
    max-width: 800px;
    margin: 30px auto 0;
    font-size: 12px;
    line-height: 1.5;
    color: #777;
    text-align: center;
}




/* Single pricing */
.single-pricing-section {
    padding: 60px 20px;
}

/* INNER BOX (THIS now controls colour) */
.single-pricing-box {
    max-width: 1080px;
    margin: 0 auto;
    border-radius: 25px;
    padding: 60px;
    color: #fff;
}

/* BG OPTIONS */
.bg-blue { background: #1f4a80; }
.bg-navy { background: #1B2A3D; }
.bg-orange {background:#f15b31; color:#1B2A3D; }
.bg-white {background:#ffffff; color:#1B2A3D; }
.bg-light-grey { background: #f5f5f5; color: #1B2A3D; }
.bg-light-orange { background: #fde5dd; color: #1B2A3D; }
.bg-light-teal { background: #e0f4f2; color: #1B2A3D; }

/* GRID */
.single-pricing-grid {
    display: flex;
    gap: 60px;
    align-items: flex-start;
}

.single-pricing-left {
    flex: 7;
}

.single-pricing-right {
    flex: 4;
}

/* CARD */
.pricing-card {
    background: #fff;
    border-radius: 20px;
    padding: 25px;
    color: #1B2A3D;
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

/* SMALL PRINT */
.single-pricing-small-print {
    margin-top: 30px;
    text-align: center;
    font-size: 12px;
    opacity: 0.85;
}

/* MOBILE */
@media (max-width: 900px) {
    .single-pricing-grid {
        flex-direction: column;
    }
}


/* OUTER SECTION */
.boxed-content-section {
    padding: 30px 20px;
}

/* INNER BOX */
.boxed-content-box {
    max-width: 1080px;
    margin: 0 auto;
    padding: 60px;
    border-radius: 25px;
}

/* TYPOGRAPHY */
.boxed-content-title {
    margin-bottom: 20px;
}

/* BACKGROUND OPTIONS */
.bg-white { background: #ffffff; }
.bg-navy { background: #1B2A3D; color: #fff; }
.bg-orange { background: #E06540; color: #fff; }
.bg-teal { background: #1aa6a6; color: #fff; }

.bg-light-grey { background: #f5f5f5; }
.bg-light-orange { background: #fde5dd; }
.bg-light-teal { background: #e0f4f2; }

/* Ensure readability on light backgrounds */
.bg-light-grey,
.bg-light-orange,
.bg-light-teal {
    color: #1B2A3D;
}

/* Mobile Tidy Up for Singles, Sectionals and New Home Pages */ 
@media (max-width:600px) {
.content-section {
    padding: 20px;
}   
.content-element-images figure {
    margin-left: 15px;
}
section.acf-accordion-section {
    padding: 50px 30px 10px;
}
.boxed-content-box {
    padding: 40px;
}
.single-pricing-grid {
    align-items: center;
}
.single-pricing-box {
    padding: 40px;
}
.boxed-content-section {
    padding: 20px 20px;
}
.page-banner-content {
        margin: 40px 40px 30px 0 !important;
    }
.bullet-columns {
    grid-template-columns: 1fr;
}
}

/* S&S Forms */
div#gform_fields_32 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    display: grid;
    grid-gap: 11px 25px;
}
div#field_32_28 {
    grid-column: span 2;
}
#implants-consultation-vca form#gform_32 .gform-body .gfield--type-html,
#implants-consultation-vca form#gform_32 .gform-body fieldset.gfield--type-consent,
#implants-consultation-vca form#gform_32 .gform-body fieldset.gfield--type-date {
    grid-column: span 2;
}
#implants-consultation-vca form#gform_32 .gform-body .gfield--type-html {
    line-height: 1.4;
}
#implants-consultation form#gform_32 .gform-body fieldset.gfield--type-consent,
	#implants-consultation form#gform_32 .gform-body fieldset.gfield--type-date{
		grid-column: span 3;
	}
#implants-consultation form#gform_32 .gform-body label,
#implants-consultation form .gform-body #field_32_10 legend.gfield_label.gfield_label_before_complex {
    display: block;
}
#implants-consultation-vca form fieldset#field_32_26, 
#implants-consultation-vca form fieldset#field_32_27,
#implants-consultation-vca form fieldset#field_32_31 {
	grid-column: span 2;
	font-size: 14px;
}
form#gform_32 small.form-footer-terms {
    display: inline-block;
    justify-content: center;
    margin-bottom: 10px;
    line-height: 1;
    text-align: center;
	width: 100%;
}
form#gform_32 small.form-footer-terms,
	form.new-style small.form-footer-terms {
    text-align: left;
    font-weight: 300;
    font-style: italic;
    line-height: 1.4;
	}
	#implants-consultation form.new-style#gform_32 .gform-body fieldset.gfield--type-date {
	grid-column: span 3;
	}

#implants-consultation .modal-container {
    overflow: scroll;
}
#implants-consultation form#gform_32 .gform-body .section-one .gform_page_fields .gform_fields,
#implants-consultation form#gform_32 .gform-body .gform_fields {
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-gap: 11px 25px;
}
#implants-consultation form#gform_32 .gform-body fieldset.gfield--type-date .gform-grid-row {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-gap: 30px;
    grid-auto-flow: row dense;
}
#implants-consultation form#gform_32 .gform-body .ginput_container input:not([type="radio"]) {
    width: 100%;
    border: 1px solid #ececec;
    transition: all 0.3s ease-in-out;
    border-radius: 5px;
}
#implants-consultation form#gform_32 .gform-body .ginput_container input:not([type="radio"]):hover,
#implants-consultation form#gform_32 .gform-body .ginput_container input:not([type="radio"]):active {
    border-color: var(--orange);
}
#implants-consultation form .gform-body .gform_page.section-one .gform_page_fields .gform_fields select,
#implants-consultation form .gform-body .gform_fields select {
    width: 100%;
}
#implants-consultation form .gform-body .ginput_container {
    width: 100%;
    border: none;
}
#implants-consultation form .gform-body .gfield--type-html,
#implants-consultation form .gform-body fieldset.gfield--type-consent,
#implants-consultation form .gform-body fieldset.gfield--type-date,
#implants-consultation form .gform-body .number-teeth-field {
    grid-column: span 2;
}
#implants-consultation form.new-style .gform-body .number-teeth-field {
    grid-column: span 2;
}
#implants-consultation .gform_confirmation_wrapper,
#implants-consultation .gform_confirmation_message,
#implants-consultation .gform_confirmation,
#implants-consultation #gform_confirmation_wrapper_32,
#implants-consultation .gform_confirmation_anchor {
    display: none !important;
}

#implants-consultation button[data-micromodal-close].close-modal {
    position: absolute;
    top: 12px;
    right: 12px;
    background: #cf5959;
    border: unset;
    width: 32px;
    height: 32px;
    overflow: hidden;
    padding: unset;
    white-space: nowrap;
    color: #fff;
    transition: all 0.15s ease-in-out;
}

#implants-consultation form.new-style .gform-body select,
#implants-consultation-vca form.new-style .gform-body select,
.implants-consultation-form form.new-style .gform-body .gform_page.section-one .ginput_container input:not([type="radio"]),
#implants-consultation form.new-style .gform-body .ginput_container input:not([type="radio"]),
#implants-consultation-vca form.new-style .gform-body .ginput_container input:not([type="radio"]) {
    border-radius: 3px;
    border: solid 1px #a9a9a9;
    background: #FAFAFA;
}
#implants-consultation form.new-style .gform-body input:-webkit-autofill,
#implants-consultation form.new-style .gform-body input:-webkit-autofill:hover,
#implants-consultation form.new-style .gform-body input:-webkit-autofill:active,
#implants-consultation form.new-style .gform-body input:-webkit-autofill:focus,
#implants-consultation-vca form.new-style .gform-body input:-webkit-autofill,
#implants-consultation-vca form.new-style .gform-body input:-webkit-autofill:hover,
#implants-consultation-vca form.new-style .gform-body input:-webkit-autofill:active,
#implants-consultation-vca form.new-style .gform-body input:-webkit-autofill:focus{
    background-color: #FAFAFA !important;
    color: #666666 !important;
    -webkit-box-shadow: 0 0 0 1000px #FAFAFA inset !important;
    -webkit-text-fill-color: #666666 !important;
}
#implants-consultation form.new-style .gform-body .ginput_container select,
#implants-consultation-vca form.new-style .gform-body .ginput_container select {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19' fill='none'%3E%3Cpath d='M15.8579 7.54504L9.92041 13.4825C9.86526 13.5377 9.79978 13.5815 9.7277 13.6114C9.65562 13.6413 9.57836 13.6567 9.50033 13.6567C9.4223 13.6567 9.34504 13.6413 9.27296 13.6114C9.20088 13.5815 9.1354 13.5377 9.08025 13.4825L3.14275 7.54504C3.03134 7.43363 2.96875 7.28252 2.96875 7.12496C2.96875 6.9674 3.03134 6.8163 3.14275 6.70489C3.25416 6.59347 3.40527 6.53088 3.56283 6.53088C3.72039 6.53088 3.8715 6.59347 3.98291 6.70489L9.50033 12.223L15.0178 6.70489C15.0729 6.64972 15.1384 6.60596 15.2105 6.57611C15.2826 6.54625 15.3598 6.53088 15.4378 6.53088C15.5158 6.53088 15.5931 6.54625 15.6652 6.57611C15.7373 6.60596 15.8027 6.64972 15.8579 6.70489C15.9131 6.76005 15.9568 6.82554 15.9867 6.89762C16.0165 6.9697 16.0319 7.04695 16.0319 7.12496C16.0319 7.20298 16.0165 7.28023 15.9867 7.35231C15.9568 7.42439 15.9131 7.48988 15.8579 7.54504Z' fill='%23343330'/%3E%3C/svg%3E") calc(100% - 15px) center / 18px no-repeat, #fafafa;
	-webkit-appearance: none;
    -moz-appearance: none;
	height: 45px;
}
form.new-style .validation_message {
    background: rgb(234 0 0 / 10%);
    color: #EA0000;
    margin-top: 5px;
    font-size: 15px;
}
#implants-consultation .gform_submission_error, #implants-consultation-vca .gform_submission_error {
    text-align: left;
    font-size: 20px;
    color: #ff5050;
    font-weight: 500;
	line-height: 2rem;
	margin: 0;
}
.implants-consultation-form form.new-style .ginput_container.ginput_container_date {
    position: relative;
}
.implants-consultation-form form.new-style .ginput_container.ginput_container_date::after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='23' viewBox='0 0 23 23' fill='none'%3E%3Cpath d='M18.6875 2.875H16.5312V2.15625C16.5312 1.96563 16.4555 1.78281 16.3207 1.64802C16.1859 1.51323 16.0031 1.4375 15.8125 1.4375C15.6219 1.4375 15.4391 1.51323 15.3043 1.64802C15.1695 1.78281 15.0938 1.96563 15.0938 2.15625V2.875H7.90625V2.15625C7.90625 1.96563 7.83052 1.78281 7.69573 1.64802C7.56094 1.51323 7.37812 1.4375 7.1875 1.4375C6.99688 1.4375 6.81406 1.51323 6.67927 1.64802C6.54448 1.78281 6.46875 1.96563 6.46875 2.15625V2.875H4.3125C3.93125 2.875 3.56562 3.02645 3.29603 3.29603C3.02645 3.56562 2.875 3.93125 2.875 4.3125V18.6875C2.875 19.0687 3.02645 19.4344 3.29603 19.704C3.56562 19.9735 3.93125 20.125 4.3125 20.125H18.6875C19.0687 20.125 19.4344 19.9735 19.704 19.704C19.9735 19.4344 20.125 19.0687 20.125 18.6875V4.3125C20.125 3.93125 19.9735 3.56562 19.704 3.29603C19.4344 3.02645 19.0687 2.875 18.6875 2.875ZM6.46875 4.3125V5.03125C6.46875 5.22187 6.54448 5.40469 6.67927 5.53948C6.81406 5.67427 6.99688 5.75 7.1875 5.75C7.37812 5.75 7.56094 5.67427 7.69573 5.53948C7.83052 5.40469 7.90625 5.22187 7.90625 5.03125V4.3125H15.0938V5.03125C15.0938 5.22187 15.1695 5.40469 15.3043 5.53948C15.4391 5.67427 15.6219 5.75 15.8125 5.75C16.0031 5.75 16.1859 5.67427 16.3207 5.53948C16.4555 5.40469 16.5312 5.22187 16.5312 5.03125V4.3125H18.6875V7.1875H4.3125V4.3125H6.46875ZM18.6875 18.6875H4.3125V8.625H18.6875V18.6875Z' fill='%23343330'/%3E%3C/svg%3E");
    position: absolute;
    inset: 10px 10px 10px auto;
}
#implants-consultation form.new-style .gform-body select::placeholder,
.implants-consultation-form form.new-style .gform-body .gform_page.section-one .ginput_container input:not([type="radio"])::placeholder,
#implants-consultation form.new-style .gform-body .ginput_container input:not([type="radio"])::placeholder,
#implants-consultation form.new-style .gform-body .gform_fields select,
#implants-consultation-vca form.new-style .gform-body select::placeholder,
#implants-consultation-vca form.new-style .gform-body .ginput_container input:not([type="radio"])::placeholder,
#implants-consultation-vca form.new-style .gform-body .gform_fields select {
    color: #a9a9a9;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.3px;
}
.page-id-83484 .modal button[data-micromodal-close].close-modal::before, .page-id-83516 .modal button[data-micromodal-close].close-modal::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cmask id='mask0_39_1242' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_39_1242)'%3E%3Cpath d='M6.4 19.04L5 17.6388L10.6 12.0342L5 6.42968L6.4 5.02853L12 10.6331L17.6 5.02853L19 6.42968L13.4 12.0342L19 17.6388L17.6 19.04L12 13.4354L6.4 19.04Z' fill='%232D3349'/%3E%3C/g%3E%3C/svg%3E");
}
#implants-consultation form#gform_26 .gform-body .gfield--type-html,
#implants-consultation form#gform_29 .gform-body .gfield--type-html,
#implants-consultation-vca form#gform_31 .gform-body .gfield--type-html {
    line-height: 1.4;
}
#implants-consultation form.new-style fieldset#field_26_26.gfield--type-checkbox,
#implants-consultation form.new-style fieldset#field_26_27.gfield--type-checkbox {
    flex: auto;
    width: 100%;
    flex-wrap: nowrap;
    flex-direction: row;
}
#implants-consultation form.new-style fieldset#field_29_32.gfield--type-checkbox legend,
#implants-consultation-vca form.new-style fieldset#field_32_27.gfield--type-checkbox legend,
#implants-consultation-vca form.new-style fieldset#field_32_31.gfield--type-checkbox legend {
    width: calc(100% - 25px);
    float: right;
	font-size: 14px;
} 
#implants-consultation form.new-style fieldset#field_32_27.gfield--type-checkbox .ginput_container_checkbox label,
#implants-consultation form.new-style fieldset#field_32_31.gfield--type-checkbox .ginput_container_checkbox label {
	display: none;
}
#input_29_31 {
	display: flex;
}
.page-id-83484 .modal button[data-micromodal-close].close-modal, .page-id-83516 .modal button[data-micromodal-close].close-modal {
    background: transparent;
}
.page-id-83484 .modal .modal-container .modal-header, .page-id-83516 .modal .modal-container .modal-header {
    text-align: left;
	margin-bottom: 0;
}
.page-id-83484 .modal .modal-container .modal-header .main-heading, .page-id-83516 .modal .modal-container .modal-header .main-heading {
    font-size: 32px;
    font-weight: 600;
	text-align: left;
}
#implants-consultation-vca form.new-style fieldset#field_32_26.gfield--type-checkbox .ginput_container_checkbox,
#implants-consultation-vca form.new-style fieldset#field_32_27.gfield--type-checkbox .ginput_container_checkbox
 {
    width: 20px;
}

form.new-style fieldset.gfield--type-checkbox legend.gfield_label {
	font-style: italic;
	font-weight: 300 !important;
	line-height: 20px; /* 142.857% */
	letter-spacing: -0.28px;
}
#implants-consultation form.new-style .gfield--input-type-checkbox legend.gfield_label.gform-field-label.gfield_label_before_complex,
#implants-consultation form .gform-body .ginput_container_radio .gchoice label,
#implants-consultation form.new-style .gform-body label,
#implants-consultation form.new-style .gform-body legend.gfield_label.gfield_label_before_complex,
#implants-consultation form.new-style .gform-body legend,
#implants-consultation-vca form.new-style .gfield--input-type-checkbox legend.gfield_label.gform-field-label.gfield_label_before_complex,
#implants-consultation-vca form .gform-body .ginput_container_radio .gchoice label,
#implants-consultation-vca form.new-style .gform-body label,
#implants-consultation-vca form.new-style .gform-body legend.gfield_label.gfield_label_before_complex,
#implants-consultation-vca form.new-style .gform-body legend{
    text-align: left;
    color: #2D3349;
    font-weight: 500;
    letter-spacing: -0.32px;
}
#implants-consultation form.new-style .gform-body fieldset.gfield--type-date .gform-grid-row .ginput_container,
#implants-consultation-vca form.new-style .gform-body fieldset.gfield--type-date .gform-grid-row .ginput_container  {
    grid-column: span 1;
}

legend.gfield_label.gform-field-label.gfield_label_before_complex {
    margin-bottom: 0;
}

/* New Banner Section 2026 */


.banner-section {
    position: relative;
    overflow: hidden;
}

/* MAIN GRID */
.banner-split-layout {
    display: flex;
    align-items: center;
    min-height: inherit;
    width:100%;
}
h1.text-cycle-banner {
    margin: 50px 0 20px;
}
/* LEFT CONTENT */
.banner-left {
    width: 50%;
    max-width: 540px;
    position: relative;
    z-index: 3;
    padding-right: 40px;
}


/* RIGHT WRAPPER */
.banner-right-wrap {
    position: relative;
    width: 100%;
    margin-right: calc(50% - 50vw);
    overflow: hidden;
}
.banner-right {
    width: 100%;
    height: 100%;
}

/* MEDIA */
.banner-right img,
.banner-right video {
    width: 100%;
    height: 700px;

    object-fit: cover;

    display: block;

    border-radius: 25px 0 0 25px;
}

/* FADE */
.banner-fade {
    position: absolute;
    left: 0;
    top: 0;

    width: 180px;
    height: 100%;

    z-index: 2;

    pointer-events: none;

    background: linear-gradient(
        to right,
        rgba(255,255,255,1) 0%,
        rgba(255,255,255,0) 100%
    );
}

/* NAVY BG SUPPORT */
.bg-navy .banner-fade {
    background: linear-gradient(
        to right,
        rgba(27,42,61,1) 0%,
        rgba(27,42,61,0) 100%
    );
}

/* ORANGE BG SUPPORT */
.bg-orange .banner-fade {
    background: linear-gradient(
        to right,
        rgba(224,101,64,1) 0%,
        rgba(224,101,64,0) 100%
    );
}

/* MEDIA */
.banner-right img,
.banner-right video {
    width: 100%;
    height: 700px;

    object-fit: cover;

    display: block;

    border-radius: 25px 0 0 25px;
}

/* BULLETS */
.banner-bullets {
    list-style: none;
    padding: 0;
    margin-top: 30px;
}

.banner-bullets li {
    position: relative;
    padding-left: 38px;
    margin-bottom: 16px;
}

.banner-bullets li::before {
    content: '';

    position: absolute;
    left: 0;
    top: 2px;

    width: 22px;
    height: 22px;

    background-image: url('../images/orange-check-outline.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

/* MOBILE */
@media (max-width: 900px) {

    .banner-split-layout {
        flex-direction: column;
    }
    #main :first-child:has(.trustpilot-widget) {
    margin-top: 0;
    }
    .banner-left,
    .banner-right-wrap {
        width: 100%;
        max-width: 100%;
    }
    .banner-left {
        padding-left:40px;
    }
    .banner-right {
    padding: 0px 30px !important;
    }
    .banner-right-wrap {
        margin-right: 0;
    }
    ul.banner-bullets {
    margin-left: 0;
    }
    .banner-right img,
    .banner-right video {
        height: auto;
        border-radius: 25px;
    }

    .banner-fade {
        display: none;
    }

}

/** CUSTOMER STORIES VIDEOS SECTION **/
/* Video slide layout — mirrors the image version */
.single-story--video .story-poster {
    position: relative;
    width: 100%;
    height: 100%; /* inherits slide height from your existing Swiper styles */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

/* Darken the poster so white text is legible */
.single-story--video .story-poster::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 1;
    transition: opacity 0.3s ease;
}

/* Play button */
.story-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: none;
    border: none;
    cursor: pointer;
    z-index: 2;
    transition: transform 0.2s ease, opacity 0.2s ease;
}
.story-play-btn:hover {
    transform: translate(-50%, -50%) scale(1.1);
}

/* Iframe fills the slide once playing */
.story-video-embed {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: none;
}
.story-video-embed iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

/* On play: show iframe, hide overlay and button */
.story-poster--playing::before {
    opacity: 0;
    pointer-events: none;
}
.story-poster--playing .story-play-btn {
    display: none;
}
.story-poster--playing .story-video-embed {
    display: block;
}
/* Keep text visible until video plays, hide it after */
.story-poster--playing .story-content {
    display: none;
}

/* Text overlay — same as image version */
.single-story--video .story-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1.5rem;
    z-index: 2;
    color: #fff;
}
.single-story--video .story-excerpt,
.single-story--video .story-title {
    color: #fff;
}

button.story-play-btn:hover {
    background: transparent;
}
.page-id-67031 .phlp-prices__cash{
	background: #489197;
}

.page-id-67031 .phlp-pricing__title{
	color: #489197 !important;
}

.inside-navigation .call-button{
	height: 40px;
	width: 40px;
	line-height: 40px;
	padding: 0;
}

#menu-item-79842-sub-menu, #menu-item-81934-sub-menu{
	top: 8.8vh;
}

.whatsapp-header {
    background: #25D366;
    color: #fff;
    border-color: #25D366;
    height: 40px;
    width: 40px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
		display: none;
}

.whatsapp-header svg {
    display: block;
    /* margin: 8px auto 0; */
}

.top-bar{
	padding: 15px 0;
	background: #c33364 !important;
	z-index: 999 !important;

}

.banner-section{
	padding-top: 50px !important;
}


@media (max-width: 1070px) {
    .main-navigation+.top-bar {
        top: 80px;
        margin-top: 0;
    }
    .whatsapp-header{
        display: inline-flex !important    
    }
  .main-navigation .inside-navigation .whatsapp-header {
    order: 1;
    margin-left: auto;
  }
  .main-navigation .inside-navigation .call-button {
    order: 2;
    margin-left: 12px;
  }
  .main-navigation .inside-navigation .menu-toggle {
    order: 3;
  }
}