/* ---------------------------------
   Shared transparent hero header
   --------------------------------- */
body.page-template {
    --apollo-home-header-height: 6.5rem;
}

/*
 * Reserves space for the transparent header while the header remains
 * in normal document flow.
 */
.site-header-slot {
    height: var(--apollo-home-header-height);
}

.site-header--home {
    position: relative;
    z-index: 100;
    border-bottom: 0;
    background: transparent;
    color: var(--wp--preset--color--base);
}

.site-header--home.site-header--sticky {
    position: relative;
    top: auto;
}

.site-header--home .site-header__inner {
    min-height: var(--apollo-home-header-height);
}

.site-header--home .primary-nav > .primary-nav__list > li > a {
    color: var(--wp--preset--color--base);
}

.site-header--home .primary-nav > .primary-nav__list > li.current-menu-item > a,
.site-header--home .primary-nav > .primary-nav__list > li > a:hover {
    color: var(--wp--preset--color--primary);
}

.site-header--home .nav-toggle {
    border-color: var(--wp--preset--color--contrast);
    color: var(--wp--preset--color--contrast);
}

.site-header--home.site-header--sticky.is-past-hero {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 100;
    background: var(--wp--preset--color--base);
    box-shadow: var(--wp--preset--shadow--sm);
}

.site-header--home.is-past-hero .site-header__inner {
    min-height: var(--apollo-header-height);
}

.site-header--home.is-past-hero .primary-nav > .primary-nav__list > li > a {
    color: var(--wp--preset--color--contrast);
}

.site-header--home.is-past-hero
    .primary-nav > .primary-nav__list > li.current-menu-item > a,
.site-header--home.is-past-hero
    .primary-nav > .primary-nav__list > li > a:hover {
    color: var(--wp--preset--color--primary);
}

.site-header--home.is-past-hero .nav-toggle {
    border-color: var(--wp--preset--color--border);
    color: var(--wp--preset--color--contrast);
}

@media (min-width: 62rem) {
    .site-header--home .primary-nav {
        position: static;
        transform: none;
    }
    .site-header--home.is-past-hero .site-header__cta .apollo-button {
        min-height: 2.75rem;
        padding-block: 0.55rem;
    }
    .site-header--home.is-past-hero .site-branding__logo img {
        max-height: 3rem;
    }
}

@media (max-width: 61.99rem) {
    body.page-template {
        --apollo-home-header-height: 6.5rem;
    }
    .site-header--home .primary-nav {
        color: var(--wp--preset--color--contrast);
    }
    .site-header--home .primary-nav > .primary-nav__list > li > a {
        color: var(--wp--preset--color--contrast);
    }
    .site-header--home .primary-nav > .primary-nav__list > li.current-menu-item > a {
        color: var(--wp--preset--color--primary);
    }
}



/* ---------------------------------
   About introduction
   --------------------------------- */
.apollo-about-intro {
    position: relative;
    overflow: hidden;
    padding-block: var(--wp--preset--spacing--80);
    background: var(--wp--preset--color--base);
}

.apollo-about-intro__inner {
    display: flex;
    align-items: stretch;
    gap: var(--wp--preset--spacing--60);
}

.apollo-about-intro__visual,
.apollo-about-intro__content {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
}

.apollo-about-intro__visual {
    align-items: flex-end;
    gap: var(--wp--preset--spacing--30);
}

.apollo-about-intro__visual-col {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    min-width: 0;
}

.apollo-about-intro__visual-col:not(
    .apollo-about-intro__visual-col--image
) {
    justify-content: space-between;
    gap: var(--wp--preset--spacing--50);
    align-self: stretch;
}

.apollo-about-intro__visual-label {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
}

.apollo-about-intro__visual-intro {
    margin: 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
    max-width: 14rem;
}

.apollo-about-intro__image {
    width: 100%;
    margin: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-about-intro__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.apollo-about-intro__image--primary {
    aspect-ratio: 1.35 / 1;
}

.apollo-about-intro__image--secondary {
    aspect-ratio: 1 / 1.1;
}

.apollo-about-intro__visual-col--image {
    display: flex;
}

.apollo-about-intro__content {
    position: relative;
    align-items: center;
}

.apollo-about-intro__content-copy {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--50);
    min-width: 0;
}

.apollo-about-intro__description {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.025em;
}

.apollo-about-intro__additional-description {
    margin: 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-about-intro__mark {
    position: absolute;
    right: -10rem;
    bottom: 2rem;
    z-index: 0;
    width: 25rem;
    height: 25rem;
    object-fit: contain;
    pointer-events: none;
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .page-template-template-home
    .apollo-about-intro__description {
        font-size: var(--wp--preset--font-size--body);
        font-weight: 400;
    }
    .apollo-about-intro {
        padding-block: var(--wp--preset--spacing--70);
    }
    .apollo-about-intro__inner {
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-about-intro__visual {
        gap: var(--wp--preset--spacing--20);
        align-items: center;
    }
    .apollo-about-intro__visual-col:not( .apollo-about-intro__visual-col--image ) {
        align-self: center;
    }
    .apollo-about-intro__mark {
        right: -8rem;
        width: 20rem;
        height: 20rem;
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-about-intro__inner {
        flex-direction: column;
        gap: var(--wp--preset--spacing--60);
    }
    .apollo-about-intro__visual,
    .apollo-about-intro__content {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-about-intro__visual {
        align-items: stretch;
    }
    .apollo-about-intro__visual-col {
        flex: 1 1 0;
    }
    .apollo-about-intro__content {
        align-items: flex-start;
    }
    .apollo-about-intro__content-copy {
        align-items: center;
        width: 100%;
    }
    .apollo-about-intro__mark {
        right: -4rem;
        bottom: -2rem;
        width: 16rem;
        height: 16rem;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-about-intro {
        padding-block: var(--wp--preset--spacing--60);
    }
    .apollo-about-intro__inner {
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-about-intro__visual {
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-about-intro__content-copy {
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-about-intro__description {
        font-size: var(--wp--preset--font-size--title-lg);
    }
    .apollo-about-intro__additional-description {
        font-size: var(--wp--preset--font-size--body);
    }
    .apollo-about-intro__mark {
        right: -3rem;
        bottom: 0;
        width: 12rem;
        height: 12rem;
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-about-intro__visual {
        flex-direction: column;
        align-items: stretch;
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-about-intro__visual-intro {
        max-width: none;
        text-align: center;
    }
    .apollo-about-intro__visual-col--image {
        display: none;
    }
    .apollo-about-intro__visual-col,
    .apollo-about-intro__visual-col--image {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-about-intro__visual-col:not(
    .apollo-about-intro__visual-col--image) {
        align-self: auto;
    }
    .apollo-about-intro__image--primary,
    .apollo-about-intro__image--secondary {
        aspect-ratio: 4 / 3;
    }
    .apollo-about-intro__content-copy {
        align-items: center;
    }
    .apollo-about-intro__mark {
        right: -2rem;
        bottom: 0;
        width: 9rem;
        height: 9rem;
        opacity: 0.35;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-about-intro {
        padding-block: var(--wp--preset--spacing--50);
    }
    .apollo-about-intro__inner {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-about-intro__visual {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-about-intro__visual-col:not(
    .apollo-about-intro__visual-col--image) {
        gap: var(--wp--preset--spacing--20);
    }
    .apollo-about-intro__content-copy {
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-about-intro__image--primary,
    .apollo-about-intro__image--secondary {
        aspect-ratio: 3 / 2;
    }
    .apollo-about-intro__mark {
        width: 7rem;
        height: 7rem;
    }
}



/* ---------------------------------
   Feature cards
   --------------------------------- */
.apollo-feature-cards {
    display: flex;
    align-items: stretch;
    gap: var(--wp--preset--spacing--50);
}

.apollo-feature-card {
    display: flex;
    flex: 1 1 0;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--40);
    min-width: 0;
    padding: var(--wp--preset--spacing--50);
    border-radius: var(--apollo-radius);
}

.apollo-feature-card--blue {
    background: var(--wp--preset--color--primary-soft);
}

.apollo-feature-card--teal {
    background: var(--wp--preset--color--teal-soft);
}

.apollo-feature-card__icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 5.75rem;
    height: 5.75rem;
    border-radius: 50%;
    color: var(--wp--preset--color--contrast);
}

.apollo-feature-card--blue .apollo-feature-card__icon {
    background: color-mix(
        in srgb,
        var(--wp--preset--color--primary) 25%,
        var(--wp--preset--color--base)
    );
}

.apollo-feature-card--teal .apollo-feature-card__icon {
    background: color-mix(
        in srgb,
        var(--wp--preset--color--teal) 25%,
        var(--wp--preset--color--base)
    );
}

.apollo-feature-card__icon svg {
    width: 3rem;
    height: 3rem;
}

.apollo-feature-card__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-self: stretch;
    min-width: 0;
}

.apollo-feature-card__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: -0.02em;
}

.apollo-feature-card__text {
    flex: 1 1 auto;
    margin: var(--wp--preset--spacing--20) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.35;
}

.apollo-feature-card__more {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: var(--wp--preset--spacing--20);
    margin-top: var(--wp--preset--spacing--40);
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--link-xs);
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
}

.apollo-feature-card__more-icon {
    display: block;
    flex: 0 0 auto;
    width: 1em;
    height: 1em;
}

.apollo-feature-card--link:hover .apollo-feature-card__more,
.apollo-feature-card--link:focus-visible .apollo-feature-card__more {
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

/* Linked feature cards */
.apollo-feature-card--link {
    color: inherit;
    text-decoration: none;
    transition: box-shadow var(--apollo-transition), transform var(--apollo-transition);
}

.apollo-feature-card--link:hover,
.apollo-feature-card--link:focus-visible {
    color: inherit;
    text-decoration: none;
    box-shadow: var(--wp--preset--shadow--md);
}

.apollo-feature-card--link:hover .apollo-feature-card__title,
.apollo-feature-card--link:focus-visible .apollo-feature-card__title {
    color: var(--wp--preset--color--primary);
}

.apollo-feature-card--link:focus-visible {
    outline: var(--apollo-focus-ring);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    .apollo-feature-card--link {
        transition: none;
    }
}

/* Below 1440px */
@media (max-width: 89.99rem) {
    .apollo-feature-card {
        gap: var(--wp--preset--spacing--30);
        padding: var(--wp--preset--spacing--40);
    }
    .apollo-feature-card__icon {
        width: 4.5rem;
        height: 4.5rem;
    }
    .apollo-feature-card__icon svg {
        width: 2.25rem;
        height: 2.25rem;
    }
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-feature-cards {
        flex-wrap: wrap;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-feature-card {
        flex: 0 0 calc((100% - var(--wp--preset--spacing--40)) / 2);
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-feature-cards {
        flex-direction: column;
        flex-wrap: nowrap;
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-feature-card {
        flex: 0 0 auto;
        width: 100%;
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-feature-card {
        padding: var(--wp--preset--spacing--30);
    }
    .apollo-feature-card__icon {
        width: 3.75rem;
        height: 3.75rem;
    }
    .apollo-feature-card__icon svg {
        width: 1.875rem;
        height: 1.875rem;
    }
}

/* Shared doctor card Read More and Book Now buttons. */
.apollo-team-card__actions > .apollo-team-card__button {
    border-radius: 16px;
}

/* ---------------------------------
   Team cards
   --------------------------------- */
.apollo-team-card {
    display: flex;
    overflow: hidden;
    flex-direction: column;
    height: 100%;
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--surface);
}

.apollo-team-card__image {
    aspect-ratio: 1.35 / 1;
    margin: 0;
    overflow: hidden;
}

.apollo-team-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

.apollo-team-card__image {
    position: relative;
    isolation: isolate;
}

.apollo-team-card__image img {
    transition: transform 350ms ease;
}

.apollo-team-card__image::after {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
        0deg,
        #1851e1 -74.26%,
        rgba(24, 81, 225, 0) 100%
    );
    content: "";
    opacity: 0;
    pointer-events: none;
    transition: opacity 350ms ease;
}

.apollo-team-card:hover .apollo-team-card__image img {
    transform: scale(1.06);
}

.apollo-team-card:hover .apollo-team-card__image::after {
    opacity: 1;
}

.apollo-team-carousel .apollo-carousel__dots {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .apollo-team-card__image img,
    .apollo-team-card__image::after {
        transition: none;
    }

    .apollo-team-card:hover .apollo-team-card__image img {
        transform: none;
    }
}

.apollo-team-card__body {
    display: flex;
    min-height: 7.5rem;
    flex-direction: column;
    align-items: center;
    padding: var(--wp--preset--spacing--40)
        var(--wp--preset--spacing--30);
    text-align: center;
}

.apollo-team-card__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.apollo-team-card__label {
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.4;
}

@media (max-width: 79.99rem) {
    .apollo-team-carousel {
        --apollo-carousel-gap: var(--wp--preset--spacing--40);
    }
}

@media (max-width: 61.99rem) {
    .apollo-team-card__body {
        min-height: 7rem;
    }
}

@media (max-width: 47.99rem) {
    .apollo-team-carousel {
        --apollo-carousel-gap: var(--wp--preset--spacing--30);
    }
    .apollo-team-carousel .apollo-carousel__dots {
        display: flex;
    }
    .apollo-team-carousel .apollo-carousel__controls {
        margin-top: var(--wp--preset--spacing--40);
    }
    .apollo-team-card__body {
        min-height: 0;
    }
}

@media (max-width: 34.99rem) {
    .apollo-team-card__body {
        padding: var(--wp--preset--spacing--30);
    }
    .apollo-team-card__label {
        margin-top: var(--wp--preset--spacing--20);
    }
}

@media (max-width: 24.99rem) {
    .apollo-team-card__image {
        aspect-ratio: 1.1 / 1;
    }
    .apollo-team-card__body {
        padding: var(--wp--preset--spacing--30)
            var(--wp--preset--spacing--20);
    }
}





/* ---------------------------------
   Southcare service card
   --------------------------------- */
.apollo-service-card {
    min-width: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-service-card__link {
    display: block;
    color: inherit;
    text-decoration: none;
}

.apollo-service-card__media {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 0;
    aspect-ratio: 0.73 / 1;
}

.apollo-service-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 450ms ease;
}

.apollo-service-card__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
        0deg,
        rgba(24, 81, 225, 0.9) -74.26%,
        rgba(24, 81, 225, 0) 100%
    );
    pointer-events: none;
}

.apollo-service-card__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    padding: var(--wp--preset--spacing--50)
        var(--wp--preset--spacing--50);
    color: var(--wp--preset--color--base);
}

.apollo-service-card__content::before {
    position: absolute;
    inset: -2rem 0 0;
    z-index: -1;
    background: linear-gradient(
        to top,
        rgba(12, 30, 77, 0.38),
        rgba(12, 30, 77, 0)
    );
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    content: "";
    pointer-events: none;
    -webkit-mask-image: linear-gradient(to top, #000 55%, transparent 100%);
    mask-image: linear-gradient(to top, #000 55%, transparent 100%);
}

.apollo-service-card__title {
    font-size:  var(--wp--preset--font-size--service-card-title);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.apollo-service-card__description {
    margin-top: var(--wp--preset--spacing--20);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.45;
}

.apollo-service-card:hover .apollo-service-card__image,
.apollo-service-card__link:focus-visible .apollo-service-card__image {
    transform: scale(1.06);
}

.apollo-service-card__link:focus-visible {
    outline: 3px solid var(--wp--preset--color--primary);
    outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    .apollo-service-card__image {
        transition: none;
    }
    .apollo-service-card:hover .apollo-service-card__image,
    .apollo-service-card__link:focus-visible .apollo-service-card__image {
        transform: none;
    }
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-card__content {
        padding: var(--wp--preset--spacing--40);
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-card__media {
        aspect-ratio: 0.9 / 1;
    }
    .apollo-service-card__content {
        padding: var(--wp--preset--spacing--50);
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-card__media {
        aspect-ratio: 0.73 / 1;
    }
    .apollo-service-card__content {
        padding: var(--wp--preset--spacing--30);
    }
}

/* Below 560px*/
@media (max-width: 34.99rem) {
    .apollo-service-card__media {
        aspect-ratio: 4 / 3;
    }
    .apollo-service-card__content {
        padding: var(--wp--preset--spacing--40);
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-service-card__media {
        aspect-ratio: 1 / 1;
    }
    .apollo-service-card__content {
        padding: var(--wp--preset--spacing--30);
    }
}





/* ---------------------------------
   Fees information section
   --------------------------------- */
.apollo-fees-section {
    padding-block: var(--wp--preset--spacing--80);
    background: var(--wp--preset--color--base);
}

.apollo-fees-section__inner {
    display: flex;
    align-items: stretch;
    gap: var(--wp--preset--spacing--80);
}

.apollo-fees-section__visual,
.apollo-fees-section__content {
    flex: 1 1 0;
    min-width: 0;
}

.apollo-fees-section__visual {
    display: flex;
}

.apollo-fees-section__image {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    margin: 0;
    border-radius: var(--apollo-radius);
    aspect-ratio: 1.1 / 0.94;
}

.apollo-fees-section__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.apollo-fees-section__image-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(0, 0, 0, 0.55);
    pointer-events: none;
}

.apollo-fees-section__visual-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: var(--wp--preset--spacing--50);
    color: var(--wp--preset--color--base);
}

.apollo-eyebrow--on-image {
    color: var(--wp--preset--color--base);
}

.apollo-fees-section__intro-title {
    margin-top: var(--wp--preset--spacing--20);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.apollo-fees-section__intro-text {
    max-width: 29rem;
    margin-top: auto;
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-fees-section__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding-block: var(--wp--preset--spacing--30);
}

.apollo-fees-section__content-title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.apollo-fees-section__paragraph {
    max-width: 45rem;
    margin: var(--wp--preset--spacing--50) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.55;
}

.apollo-fees-section__criteria {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--50);
    margin: var(--wp--preset--spacing--50) 0 0;
    padding: 0;
    list-style: none;
}

.apollo-fees-section__criteria li {
    position: relative;
    padding-left: 1.5rem;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.4;
}

.apollo-fees-section__criteria li::before {
    position: absolute;
    top: 0.45em;
    left: 0;
    width: var(--wp--preset--spacing--30);
    height: var(--wp--preset--spacing--30);
    border-radius: 50%;
    background: var(--wp--preset--color--primary);
    content: "";
}

.apollo-fees-section__content .apollo-button {
    margin-top: var(--wp--preset--spacing--60);
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-fees-section {
        padding-block: var(--wp--preset--spacing--70);
    }
    .apollo-fees-section__inner {
        gap: var(--wp--preset--spacing--60);
    }
    .apollo-fees-section__visual-content {
        padding: var(--wp--preset--spacing--40);
    }
    .apollo-fees-section__paragraph,
    .apollo-fees-section__criteria {
        margin-top: var(--wp--preset--spacing--40);
        max-width: none;
    }
    .apollo-fees-section__criteria {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-fees-section__content .apollo-button {
        margin-top: var(--wp--preset--spacing--50);
    }
}

/* Below 992px*/
@media (max-width: 61.99rem) {
    .apollo-fees-section__inner {
        flex-direction: column;
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-fees-section__visual,
    .apollo-fees-section__content {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-fees-section__image {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 24rem;
        aspect-ratio: auto;
    }
    .apollo-fees-section__image img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .apollo-fees-section__visual-content {
        position: relative;
        inset: auto;
        flex: 1 1 auto;
        min-width: 0;
        min-height: 24rem;
        gap: var(--wp--preset--spacing--20);
    }
    .apollo-fees-section__intro-title {
        margin-top: 0;
        max-width: 38rem;
    }
    .apollo-fees-section__intro-text {
        margin-top: auto;
    }
    .apollo-fees-section__content {
        padding-block: 0;
    }
    .apollo-fees-section__content .apollo-button {
        align-self: center;
        margin-top: var(--wp--preset--spacing--50);
    }
    .apollo-fees-section__criteria {
        flex-direction: row;
        flex-wrap: wrap;
    }
    .apollo-fees-section__criteria li {
        flex: 0 0 calc((100% - var(--wp--preset--spacing--40)) / 2);
        min-width: 0;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-fees-section {
        padding-block: var(--wp--preset--spacing--60);
    }
    .apollo-fees-section__inner {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-fees-section__image,
    .apollo-fees-section__visual-content {
        min-height: 22rem;
    }
    .apollo-fees-section__visual-content {
        padding: var(--wp--preset--spacing--40);
    }
    .apollo-fees-section__paragraph,
    .apollo-fees-section__criteria {
        margin-top: var(--wp--preset--spacing--30);
    }
    .apollo-fees-section__criteria {
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-fees-section__criteria li {
        flex-basis: calc((100% - var(--wp--preset--spacing--30)) / 2);
    }
    .apollo-fees-section__content .apollo-button {
        margin-top: var(--wp--preset--spacing--40);
        max-width: 100%;
        white-space: normal;
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-fees-section__image,
    .apollo-fees-section__visual-content {
        min-height: 0;
    }
    .apollo-fees-section__visual-content {
        gap: var(--wp--preset--spacing--20);
        padding: var(--wp--preset--spacing--40);
    }
    .apollo-fees-section__intro-text {
        margin-top: var(--wp--preset--spacing--60);
    }
    .apollo-fees-section__criteria {
        flex-direction: column;
    }
    .apollo-fees-section__criteria li {
        flex: 0 0 auto;
        width: 100%;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-fees-section {
        padding-block: var(--wp--preset--spacing--50);
    }
    .apollo-fees-section__visual-content {
        padding: var(--wp--preset--spacing--30);
    }
    .apollo-fees-section__intro-text {
        margin-top: var(--wp--preset--spacing--50);
    }
    .apollo-fees-section__content .apollo-button {
        width: 100%;
        padding: 0.75rem 1.25rem;
    }
}

/* ---------------------------------
   About accreditation variant
   --------------------------------- */
.apollo-fees-section--about
    .apollo-fees-section__intro-title {
    max-width: 40rem;
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.4;
}

.apollo-fees-section--about
    .apollo-fees-section__intro-text {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--30);
    max-width: 45rem;
}

.apollo-fees-section--about
    .apollo-fees-section__intro-text p {
    margin: 0;
}

.apollo-fees-section--about
    .apollo-fees-section__paragraph--footer {
    margin-top: var(--wp--preset--spacing--40);
}

.apollo-fees-section--about
    .apollo-fees-section__criteria
    + .apollo-fees-section__paragraph--footer {
    margin-top: var(--wp--preset--spacing--70);
}

.apollo-fees-section--about
    .apollo-fees-section__content .apollo-button {
    display: none;
}

@media (max-width: 79.99rem) {
    .apollo-fees-section--about
        .apollo-fees-section__criteria
        + .apollo-fees-section__paragraph--footer {
        margin-top: var(--wp--preset--spacing--60);
    }
}

@media (max-width: 61.99rem) {
    .apollo-fees-section--about
        .apollo-fees-section__intro-title {
        max-width: 38rem;
    }

    .apollo-fees-section--about
        .apollo-fees-section__intro-text {
        max-width: 38rem;
    }

    .apollo-fees-section--about
        .apollo-fees-section__criteria
        + .apollo-fees-section__paragraph--footer {
        margin-top: var(--wp--preset--spacing--60);
    }
}

@media (max-width: 34.99rem) {
    .apollo-fees-section--about
        .apollo-fees-section__intro-text {
        max-width: none;
    }
}



/* ---------------------------------
   Location map
   --------------------------------- */
.apollo-location-map {
    width: 100%;
    background: var(--wp--preset--color--base);
}

.apollo-location-map__frame {
    width: 100%;
    aspect-ratio: 16 / 4;
    overflow: hidden;
}

.apollo-location-map__frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 48rem) {
    .apollo-location-map__frame {
        aspect-ratio: 4 / 3;
    }
}



/* ---------------------------------
   Shared appointment section
   --------------------------------- */
.apollo-appointment-section {
    margin-top: var(--wp--preset--spacing--70);
    padding-block: var(--wp--preset--spacing--70);
    background: var(--wp--preset--color--surface);
}

.apollo-appointment-section__inner {
    display: flex;
    flex-direction: column;
}

.apollo-appointment-section__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: var(--wp--preset--spacing--60);
    text-align: center;
}

.apollo-appointment-section__header .apollo-eyebrow {
    margin-bottom: var(--wp--preset--spacing--20);
}

.apollo-appointment-section__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.apollo-appointment-section__layout {
    display: flex;
    align-items: stretch;
    gap: var(--wp--preset--spacing--60);
}

.apollo-appointment-section__image,
.apollo-appointment-section__form-card,
.apollo-appointment-section__contact-details {
    flex: 1 1 0;
    min-width: 0;
}

.apollo-appointment-section__image {
    position: relative;
    display: block;
    margin: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-appointment-section__image img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.apollo-appointment-section__form-card {
    padding: var(--wp--preset--spacing--50);
    border-radius: var(--apollo-radius);
    border: 1px solid var(--wp--preset--color--border-strong);
    background: var(--wp--preset--color--card);
}

.apollo-appointment-section__contact-details {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: var(--wp--preset--spacing--60);
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--primary-soft);
}

.apollo-appointment-section__contact-title {
    margin: 0 0 var(--wp--preset--spacing--60);
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--hero);
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.04em;
}

.apollo-appointment-section__contact-group {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
}

.apollo-appointment-section__contact-group + .apollo-appointment-section__contact-group {
    margin-top: var(--wp--preset--spacing--60);
}

.apollo-appointment-section__contact-label {
    margin: 0;
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--lg);
    font-weight: 600;
    line-height: 1.3;
}

.apollo-appointment-section__contact-group p {
    display: flex;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--20);
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--md);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-appointment-section__contact-group p > span:last-child {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.apollo-appointment-section__contact-group a {
    text-decoration: none;
    overflow-wrap: anywhere;
}

.apollo-appointment-section__contact-group a:hover,
.apollo-appointment-section__contact-group a:focus-visible {
    color: var(--wp--preset--color--primary);
}

.apollo-appointment-section__contact-icon {
    display: inline-flex;
    flex: 0 0 auto;
    width: var(--wp--preset--spacing--40);
    height: var(--wp--preset--spacing--40);
    margin-top: 0.15rem;
}

.apollo-appointment-section__contact-icon svg {
    width: 100%;
    height: 100%;
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-appointment-section {
        padding-block: var(--wp--preset--spacing--30);
        margin-top: var(--wp--preset--spacing--60);
    }
    .apollo-appointment-section__layout {
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-appointment-section__form-card {
        padding: var(--wp--preset--spacing--40);
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-appointment-section__header {
        margin-bottom: var(--wp--preset--spacing--50);
    }
    .apollo-appointment-section__layout {
        flex-direction: column;
    }
    .apollo-appointment-section__image,
    .apollo-appointment-section__form-card,
    .apollo-appointment-section__contact-details {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-appointment-section__image {
        aspect-ratio: 16 / 9;
    }
    .apollo-appointment-section__contact-details {
        padding: var(--wp--preset--spacing--50);
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-appointment-section {
        padding-block: var(--wp--preset--spacing--50);
        margin-top: var(--wp--preset--spacing--50);
    }
    .apollo-appointment-section__header {
        margin-bottom: var(--wp--preset--spacing--40);
    }
    .apollo-appointment-section__layout {
        gap: var(--wp--preset--spacing--60);
    }
    .apollo-appointment-section__image {
        aspect-ratio: 4 / 3;
    }
    .apollo-appointment-section__form-card,
    .apollo-appointment-section__contact-details {
        padding: var(--wp--preset--spacing--40);
    }
    .apollo-appointment-section__contact-title {
        font-size: var(--wp--preset--font-size--display-sm);
        margin: 0 0 var(--wp--preset--spacing--50);
    }
    .apollo-appointment-section__contact-group + .apollo-appointment-section__contact-group {
        margin-top: var(--wp--preset--spacing--40);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-appointment-section__image {
        aspect-ratio: 4 / 3;
    }
    .apollo-appointment-section__form-card,
    .apollo-appointment-section__contact-details {
        padding: var(--wp--preset--spacing--30);
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-appointment-section {
        margin-top: var(--wp--preset--spacing--50);
        padding-block: var(--wp--preset--spacing--50);
    }
    .apollo-appointment-section__header {
        margin-bottom: var(--wp--preset--spacing--30);
    }
    .apollo-appointment-section__image {
        aspect-ratio: 3 / 2;
    }
    .apollo-appointment-section__form-card,
    .apollo-appointment-section__contact-details {
        padding: var(--wp--preset--spacing--20);
    }
}


/* ---------------------------------
   Contact opening hours
   Separate, aligned day and time columns
   --------------------------------- */
.apollo-contact-hours {
    display: flex;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--20);
    width: 100%;
    min-width: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--md);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-contact-hours__list {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
    min-width: 0;
}

.apollo-contact-hours__row {
    display: flex;
    align-items: baseline;
    gap: var(--wp--preset--spacing--40);
    min-width: 0;
}

.apollo-contact-hours__day {
    flex: 0 0 7em;
    min-width: 0;
}

.apollo-contact-hours__time {
    flex: 1 1 0;
    min-width: 0;
    white-space: normal;
}

@media (min-width: 35rem) and (max-width: 61.99rem) {
    .apollo-appointment-section__contact-details {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-start;
        column-gap: var(--wp--preset--spacing--50);
        row-gap: var(--wp--preset--spacing--60);
    }
    .apollo-appointment-section__contact-details
    > .apollo-appointment-section__contact-title {
        order: 0;
        flex: 0 0 100%;
        width: 100%;
        margin: 0;
    }
    .apollo-appointment-section__contact-details
    > .apollo-appointment-section__contact-group {
        flex: 0 0 calc(
            (100% - var(--wp--preset--spacing--50)) / 2
        );
        min-width: 0;
        margin-top: 0;
    }
    .apollo-appointment-section__contact-group--address {
        order: 1;
    }
    .apollo-appointment-section__contact-group--call {
        order: 2;
    }
    .apollo-appointment-section__contact-group--hours {
        order: 3;
    }
    .apollo-appointment-section__contact-group--social {
        order: 4;
    }
}


/* ---------------------------------
   Southcare appointment form
   --------------------------------- */
.apollo-appointment-form {
    display: flex;
    flex-direction: column;
}

.apollo-appointment-form > p {
    margin: 0;
}

.apollo-appointment-form br {
    display: none;
}

.apollo-appointment-form h3 {
    max-width: 30rem;
    margin: 0 0 var(--wp--preset--spacing--60);
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.02em;
}

.apollo-appointment-form .apollo-form-row {
    display: flex;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--30);
    width: 100%;
    margin-bottom: var(--wp--preset--spacing--60);
}

.apollo-appointment-form .apollo-form-row > p {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
}

.apollo-appointment-form .apollo-form-row label {
    flex: 1 1 0;
    min-width: 0;
}

.apollo-appointment-form label {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
    width: 100%;
    margin: 0;
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.4;
}

.apollo-appointment-form label > .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    min-width: 0;
}

.apollo-appointment-form input:not(
    [type="submit"],
    [type="checkbox"],
    [type="radio"]
),
.apollo-appointment-form select,
.apollo-appointment-form textarea {
    display: block;
    width: 100%;
    border: 1px solid var(--wp--preset--color--border-strong);
    border-radius: 15px;
    background: #fcfcfc;
    color: var(--wp--preset--color--contrast);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
}

.apollo-appointment-form input:not(
    [type="submit"],
    [type="checkbox"],
    [type="radio"]
),
.apollo-appointment-form select {
    min-height: 2.75rem;
    padding: 0.65rem 0.875rem;
}

.apollo-appointment-form textarea {
    min-height: 7.75rem;
    padding: 0.875rem;
    resize: vertical;
}

.apollo-appointment-form input::placeholder,
.apollo-appointment-form textarea::placeholder {
    color: var(--wp--preset--color--contrast-muted);
    font-size: 14px;
    font-weight: 400;
    opacity: 0.55;
}

.apollo-appointment-form input:focus,
.apollo-appointment-form select:focus,
.apollo-appointment-form textarea:focus {
    border-color: var(--wp--preset--color--primary);
    outline: none;
    box-shadow: 0 0 0 2px var(--wp--preset--color--primary-soft);
}

.apollo-appointment-form > p:has(> label:not(.apollo-form-consent)) {
    margin-bottom: var(--wp--preset--spacing--50);
}

.apollo-appointment-form .apollo-form-consent {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: var(--wp--preset--spacing--20);
    margin: 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.4;
}

.apollo-appointment-form .apollo-form-consent > .wpcf7-form-control-wrap {
    flex: 0 0 auto;
    width: auto;
}

.apollo-appointment-form .apollo-form-consent .wpcf7-list-item {
    display: flex;
    margin: 0;
}

.apollo-appointment-form .apollo-form-consent input[type="checkbox"] {
    width: 1.25rem;
    height: 1.25rem;
    margin: 0;
    accent-color: var(--wp--preset--color--primary);
}

.apollo-appointment-form .apollo-form-consent > span:last-child {
    flex: 1 1 auto;
    min-width: 0;
}

.apollo-appointment-form .apollo-form-consent a {
    color: var(--wp--preset--color--primary);
}

.apollo-appointment-form > p:has(input[type="submit"]) {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: var(--wp--preset--spacing--60);
}

.apollo-appointment-form input.apollo-button {
    cursor: pointer;
}

.apollo-appointment-form.submitting input.wpcf7-submit,
.wpcf7.submitting .apollo-appointment-form input.wpcf7-submit {
    color: transparent !important;
    pointer-events: none;
}

.apollo-appointment-form .wpcf7-spinner {
    position: absolute !important;
    top: 50% !important;
    left: var(--apollo-spinner-center, 50%) !important;
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    transform: translate(-50%, -50%) !important;
}

.apollo-appointment-section .apollo-appointment-form.submitting
input.wpcf7-submit.apollo-button--outline,
.apollo-appointment-section .wpcf7.submitting
.apollo-appointment-form input.wpcf7-submit.apollo-button--outline {
    background: var(--wp--preset--color--primary);
    border-color: var(--wp--preset--color--primary);
}

.apollo-appointment-form > p:has(input[type="submit"]) {
    --apollo-spinner-center: 50%;
    width: fit-content;
    max-width: 100%;
}

.apollo-review-dialog .apollo-appointment-form > p:has(input[type="submit"]) {
    width: 100%;
}

.apollo-appointment-form .wpcf7-spinner::before {
    display: none !important;
}

.apollo-appointment-form .wpcf7-spinner::after {
    display: block;
    width: 24px;
    height: 24px;
    border: 3px solid rgb(255 255 255 / 30%);
    border-top-color: var(--wp--preset--color--base);
    border-radius: 50%;
    content: "";
    animation: apollo-wpcf7-spin 0.8s linear infinite;
}

.wpcf7 form .wpcf7-response-output {
    text-align: center;
}

@keyframes apollo-wpcf7-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-appointment-form h3 {
        margin-bottom: var(--wp--preset--spacing--50);
    }
    .apollo-appointment-form .apollo-form-row {
        margin-bottom: var(--wp--preset--spacing--50);
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-appointment-form > p:has(input[type="submit"]) {
        margin-top: var(--wp--preset--spacing--40);
        justify-content: center;
    }
    .apollo-appointment-form h3 {
        max-width: none;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-appointment-form h3 {
        margin-bottom: var(--wp--preset--spacing--40);
    }
    .apollo-appointment-form .apollo-form-row {
        margin-bottom: var(--wp--preset--spacing--40);
    }
    .apollo-appointment-form > p:has(> label:not(.apollo-form-consent)) {
        margin-bottom: var(--wp--preset--spacing--40);
    }
    .apollo-appointment-form > p:has(input[type="submit"]) {
        margin-top: var(--wp--preset--spacing--40);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-appointment-form .apollo-form-row {
        flex-direction: column;
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-appointment-form .apollo-form-row > p,
    .apollo-appointment-form .apollo-form-row > label {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-appointment-form input.apollo-button {
        max-width: 100%;
        white-space: normal;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-appointment-form .apollo-form-row {
        gap: var(--wp--preset--spacing--20);
    }
    .apollo-appointment-form > p:has(input[type="submit"]) {
        width: 100%;
    }
    .apollo-appointment-form input.apollo-button {
        width: 100%;
        padding-inline: var(--wp--preset--spacing--30);
    }
    .apollo-appointment-form .wpcf7-spinner {
        left: 50% !important;
    }
}





/* ---------------------------------
   Southcare care CTA
   --------------------------------- */
.apollo-care-cta {
    position: relative;
    overflow: hidden;
    padding-block: var(--wp--preset--spacing--80);
    background: var(--wp--preset--color--base);
}

.apollo-care-cta__inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 28rem;
}

.apollo-care-cta__content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-inline: auto;
    text-align: center;
}

.apollo-care-cta__content .apollo-eyebrow {
    margin-bottom: var(--wp--preset--spacing--20);
}

.apollo-care-cta__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.035em;
    text-wrap: balance;
}

.apollo-care-cta__description {
    max-width: 42rem;
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    line-height: 1.5;
}

.apollo-care-cta__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--wp--preset--spacing--20);
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-care-cta__images {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.apollo-care-cta__image {
    position: absolute;
    margin: 0;
    overflow: hidden;
    border: 2px solid var(--wp--preset--color--primary);
    border-radius: 50%;
    background: var(--wp--preset--color--base);
}

.apollo-care-cta__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Border colour variants */

.apollo-care-cta__image--primary {
    border-color: var(--wp--preset--color--primary);
}

.apollo-care-cta__image--accent {
    border-color: var(--wp--preset--color--accent);
}

.apollo-care-cta__image--positive {
    border-color: var(--wp--preset--color--positive);
}

/* Image positions */

.apollo-care-cta__image--top-left {
    top: 1rem;
    left: 0;
    width: 7rem;
    height: 7rem;
}

.apollo-care-cta__image--left-middle {
    top: 35%;
    left: 14%;
    width: 3rem;
    height: 3rem;
}

.apollo-care-cta__image--bottom-left {
    bottom: 1rem;
    left: 6%;
    width: 6rem;
    height: 6rem;
}

.apollo-care-cta__image--top-right {
    top: 1rem;
    right: 5%;
    width: 3rem;
    height: 3rem;
}

.apollo-care-cta__image--right-middle {
    top: 30%;
    right: 14%;
    width: 5rem;
    height: 5rem;
}

.apollo-care-cta__image--bottom-right {
    right: 0;
    bottom: 2rem;
    width: 7rem;
    height: 7rem;
}

/* Below 1440px*/
@media (max-width: 89.99rem) {
    .apollo-care-cta__image--top-left {
        left: 1%;
        width: 6.5rem;
        height: 6.5rem;
    }
    .apollo-care-cta__image--left-middle {
        left: 10%;
    }
    .apollo-care-cta__image--bottom-left {
        left: 4%;
        width: 5.5rem;
        height: 5.5rem;
    }
    .apollo-care-cta__image--top-right {
        right: 3%;
    }
    .apollo-care-cta__image--right-middle {
        right: 10%;
        width: 4.5rem;
        height: 4.5rem;
    }
    .apollo-care-cta__image--bottom-right {
        right: 1%;
        width: 6.5rem;
        height: 6.5rem;
    }
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-care-cta {
        padding-block: var(--wp--preset--spacing--70);
    }
    .apollo-care-cta__content {
        max-width: 42rem;
    }
    .apollo-care-cta__image--top-left,
    .apollo-care-cta__image--bottom-right {
        width: 6rem;
        height: 6rem;
    }
    .apollo-care-cta__image--bottom-left {
        width: 5rem;
        height: 5rem;
    }
    .apollo-care-cta__image--left-middle {
        left: 7%;
    }
    .apollo-care-cta__image--right-middle {
        right: 7%;
        width: 4rem;
        height: 4rem;
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-care-cta__inner {
        min-height: 26rem;
    }
    .apollo-care-cta__content {
        max-width: 36rem;
    }
    .apollo-care-cta__image--top-left {
        top: 0;
        left: 0;
        width: 5rem;
        height: 5rem;
    }
    .apollo-care-cta__image--left-middle {
        left: 10%;
        width: 2.5rem;
        height: 2.5rem;
    }
    .apollo-care-cta__image--bottom-left {
        bottom: 0;
        left: 3%;
        width: 4rem;
        height: 4rem;
    }
    .apollo-care-cta__image--top-right {
        top: 0;
        right: 2%;
    }
    .apollo-care-cta__image--right-middle {
        right: 10%;
        width: 3.5rem;
        height: 3.5rem;
    }
    .apollo-care-cta__image--bottom-right {
        right: 0;
        bottom: 0;
        width: 5rem;
        height: 5rem;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-care-cta {
        padding-block: var(--wp--preset--spacing--60);
    }
    .apollo-care-cta__inner {
        min-height: 0;
        padding-block: 5rem;
    }
    .apollo-care-cta__content {
        max-width: 32rem;
    }
    .apollo-care-cta__description {
        margin-top: var(--wp--preset--spacing--20);
    }
    .apollo-care-cta__actions {
        margin-top: var(--wp--preset--spacing--40);
    }
    .apollo-care-cta__actions .apollo-button {
        max-width: 100%;
        min-width: 0;
        white-space: normal;
    }
    .apollo-care-cta__image--left-middle,
    .apollo-care-cta__image--right-middle {
        display: none;
    }
    .apollo-care-cta__image--top-left,
    .apollo-care-cta__image--bottom-right {
        width: 4rem;
        height: 4rem;
    }
    .apollo-care-cta__image--bottom-left {
        width: 3rem;
        height: 3rem;
    }
    .apollo-care-cta__image--top-right {
        width: 2.5rem;
        height: 2.5rem;
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-care-cta__inner {
        padding-block: 4.5rem;
    }
    .apollo-care-cta__content {
        width: 100%;
    }
    .apollo-care-cta__actions {
        width: 100%;
        flex-direction: column;
        align-items: center;
        gap: var(--wp--preset--spacing--20);
    }
    .apollo-care-cta__actions .apollo-button {
        width: min(100%, 18rem);
    }
    .apollo-care-cta__image--bottom-left,
    .apollo-care-cta__image--top-right {
        display: none;
    }
    .apollo-care-cta__image--top-left,
    .apollo-care-cta__image--bottom-right {
        width: 3.5rem;
        height: 3.5rem;
        opacity: 0.55;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-care-cta {
        padding-block: var(--wp--preset--spacing--50);
    }
    .apollo-care-cta__inner {
        padding-block: 3.5rem;
    }
    .apollo-care-cta__actions .apollo-button {
        width: 100%;
        padding: 0.75rem 1.25rem;
    }
    .apollo-care-cta__image--top-left,
    .apollo-care-cta__image--bottom-right {
        width: 2.75rem;
        height: 2.75rem;
        opacity: 0.35;
    }
}





/* ---------------------------------
   Private review dialog
   --------------------------------- */
.apollo-review-dialog {
    width: min(calc(100% - 2rem), 42rem);
    max-width: 42rem;
    max-height: 90vh;
    max-height: 90dvh;
    margin: auto;
    padding: var(--wp--preset--spacing--50);
    overflow-y: auto;
    border: 0;
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--base);
    color: var(--wp--preset--color--contrast);
    box-shadow: var(--wp--preset--shadow--lg);
}

.apollo-review-dialog::backdrop {
    background: rgb(7 25 71 / 65%);
}

.apollo-review-dialog__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--wp--preset--spacing--40);
    margin-bottom: var(--wp--preset--spacing--40);
}

.apollo-review-dialog__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.2;
}

.apollo-review-dialog__close {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;
    padding: 0;
    border: 1px solid var(--wp--preset--color--border);
    border-radius: 50%;
    background: var(--wp--preset--color--base);
    color: var(--wp--preset--color--contrast);
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
}

.apollo-review-dialog__close:hover {
    border-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--primary);
}

.apollo-review-dialog .apollo-appointment-form > p:has(input[type="submit"]) {
    width: 100%;
}

.apollo-review-dialog .apollo-appointment-form input.apollo-button {
    width: 100%;
}

@media (max-width: 34.99rem) {
    .apollo-review-dialog__head {
        gap: var(--wp--preset--spacing--20);
        margin-bottom: var(--wp--preset--spacing--50);
    }
}




/* ------------------------------------------------------------------ Abot Page Start ------------------------------------------------------------------ */
/* ---------------------------------
   Page hero (inner pages)
   --------------------------------- */

.apollo-main:has(> .apollo-page-hero) {
    padding-top: 0;
}

.apollo-page-hero {
    position: relative;
    isolation: isolate;
    display: flex;
    min-height: 13rem;
    margin: var(--wp--preset--spacing--30);
    margin-top: calc(
        var(--wp--preset--spacing--30) - var(--apollo-home-header-height)
    );
    overflow: hidden;
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--contrast);
    color: var(--wp--preset--color--base);
}

.apollo-page-hero__background {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* object-position: top; */
}

.apollo-page-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(
        0deg,
        rgba(24, 81, 225, 0.9) -74.26%,
        rgba(24, 81, 225, 0) 100%
    );
}

.apollo-page-hero__container {
    display: flex;
    align-items: flex-end;
    padding-top: calc(
        var(--apollo-home-header-height) + var(--wp--preset--spacing--40)
    );
    padding-bottom: var(--wp--preset--spacing--50);
}

.apollo-page-hero__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}

.apollo-page-hero .apollo-page-hero__title {
    margin: 0;
    color: var(--wp--preset--color--base);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-page-hero {
        min-height: 11rem;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-page-hero {
        min-height: 9rem;
    }
    .apollo-page-hero__container {
        padding-bottom: var(--wp--preset--spacing--20);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-page-hero {
        margin: var(--wp--preset--spacing--20);
        margin-top: calc(
            var(--wp--preset--spacing--20) - var(--apollo-home-header-height)
        );
        min-height: 8rem;
    }
}




/* ---------------------------------
   Story section (reusable)
   --------------------------------- */
.apollo-story {
    margin-top: var(--wp--preset--spacing--80);
}

.apollo-story__inner {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--70);
}

.apollo-story--image-left .apollo-story__inner {
    flex-direction: row-reverse;
}

.apollo-story__content {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
}

.apollo-story__title {
    margin: var(--wp--preset--spacing--20) 0 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

.apollo-story__text {
    margin: var(--wp--preset--spacing--40) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-story__text + .apollo-story__text {
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-story__image {
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-story__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1.83 / 1;
    height: auto;
    object-fit: cover;
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-story {
        margin-top: var(--wp--preset--spacing--70);
    }
    .apollo-story__inner {
        gap: var(--wp--preset--spacing--50);
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-story__inner,
    .apollo-story--image-left .apollo-story__inner {
        flex-direction: column;
        align-items: stretch;
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-story__content,
    .apollo-story__image {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-story__image img {
        aspect-ratio: 1.6 / 1;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-story {
        margin-top: var(--wp--preset--spacing--60);
    }
    .apollo-story__title {
        text-wrap: unset;
        text-align: center;
    }
    .apollo-story__content {
        align-items: center;
    }
    .apollo-story__inner,
    .apollo-story--image-left .apollo-story__inner {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-story__content > :first-child {
        align-self: center;
        text-align: center;
    }
    .apollo-story__text + .apollo-story__text {
        margin-top: var(--wp--preset--spacing--40);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-story__image img {
        aspect-ratio: 1.4 / 1;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-story {
        margin-top: var(--wp--preset--spacing--50);
    }
}
/* ------------------------------------------------------------------ Abot Page End ------------------------------------------------------------------ */




/* ------------------------------------------------------------------ Fees & Billing Page Start ------------------------------------------------------------------ */
/* ---------------------------------
   Shared media-text row
   --------------------------------- */
.apollo-media-text-row {
    margin-top: var(--wp--preset--spacing--80);
}

.apollo-media-text-row__inner {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--60);
}

.apollo-media-text-row--reverse
    .apollo-media-text-row__inner {
    flex-direction: row-reverse;
}

.apollo-media-text-row__image {
    flex: 0 0 55%;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-media-text-row__content {
    display: flex;
    flex: 0 0 calc(45% - var(--wp--preset--spacing--60));
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
}

.apollo-media-text-row__image img {
    display: block;
    width: 100%;
    aspect-ratio: 2.2 / 1;
    height: auto;
    object-fit: cover;
}

.apollo-media-text-row__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.apollo-media-text-row__description {
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-media-text-row__description strong {
    font-weight: 700;
}

.apollo-media-text-row__button {
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-media-text-row__note {
    position: relative;
    margin: var(--wp--preset--spacing--40) 0 0;
    padding-left: 1.5rem;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-media-text-row__note::before {
    position: absolute;
    top: 0.45em;
    left: 0;
    width: var(--wp--preset--spacing--30);
    height: var(--wp--preset--spacing--30);
    border-radius: 50%;
    background: var(--wp--preset--color--primary);
    content: "";
}

.apollo-media-text-row__note strong {
    color: var(--wp--preset--color--contrast);
    font-weight: 600;
}

.apollo-media-text-row__description
  .apollo-media-text-row__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    margin: 0 12px 12px 0;
    white-space: normal;
    text-align: center;
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-media-text-row {
        margin-top: var(--wp--preset--spacing--70);
    }
    .apollo-media-text-row__inner {
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-media-text-row__image {
        flex-basis: 55%;
    }
    .apollo-media-text-row__content {
        flex-basis: calc(45% - var(--wp--preset--spacing--50));
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-media-text-row__inner,
    .apollo-media-text-row--reverse .apollo-media-text-row__inner {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-media-text-row__image {
        flex-basis: 55%;
    }
    .apollo-media-text-row__content {
        flex-basis: calc(45% - var(--wp--preset--spacing--40));
    }
    .apollo-media-text-row__title {
        font-size: var(--wp--preset--font-size--xxl);
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-media-text-row {
        margin-top: var(--wp--preset--spacing--60);
    }
    .apollo-media-text-row__inner,
    .apollo-media-text-row--reverse .apollo-media-text-row__inner {
        flex-direction: column;
        align-items: stretch;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-media-text-row__image,
    .apollo-media-text-row__content {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-media-text-row__image img {
        aspect-ratio: 2.2 / 1;
    }
    .apollo-media-text-row__title {
        font-size: var(--wp--preset--font-size--xl);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-media-text-row {
        margin-top: var(--wp--preset--spacing--60);
    }
    .apollo-media-text-row__description {
        margin-top: var(--wp--preset--spacing--20);
    }
    .apollo-media-text-row__button {
        margin-top: var(--wp--preset--spacing--40);
    }
    .apollo-media-text-row__image img {
        aspect-ratio: 2 / 1;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-media-text-row__title {
        font-size: var(--wp--preset--font-size--lg);
    }
    .apollo-media-text-row__image img {
        aspect-ratio: 1.8 / 1;
    }
}




/* ---------------------------------
   Patient Info: appointment section
   --------------------------------- */
.apollo-patient-booking__grid {
    display: flex;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--70);
}

.apollo-patient-booking__main {
    flex: 55 1 0;
    min-width: 0;
}

.apollo-patient-booking__policy {
    flex: 45 1 0;
    min-width: 0;
}

.apollo-patient-booking .apollo-media-text-row__description {
    margin: 0 0 var(--wp--preset--spacing--50);
    color: var(--wp--preset--color--contrast-muted);
    font-family: var(--wp--preset--font-family--sans);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: inherit;
}

.apollo-patient-booking
.apollo-media-text-row__description strong {
    color: var(--wp--preset--color--contrast);
    font-weight: 700;
}

.apollo-patient-booking__actions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: var(--wp--preset--spacing--30);
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-patient-booking__actions .apollo-button {
    display: inline-flex;
    flex: 0 1 auto;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: auto;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    white-space: normal;
    text-align: center;
    text-decoration: none;
    font-size: var(--wp--preset--font-size--button);
}

.apollo-patient-booking__policy-title {
    margin: 0 0 var(--wp--preset--spacing--40);
    color: var(--wp--preset--color--contrast);
    font-family: var(--wp--preset--font-family--sans);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 700;
}

.apollo-patient-booking__policy
.apollo-media-text-row__description:last-child {
    margin-bottom: 0;
}


/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-patient-booking__grid {
        gap: var(--wp--preset--spacing--60);
    }
    .apollo-patient-booking__actions {
        justify-content: center;
    }
}


/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-patient-booking__grid {
        gap: var(--wp--preset--spacing--50);
    }
}


/* Below 768px: stacked, full-width buttons */
@media (max-width: 47.99rem) {
    .apollo-patient-booking__grid {
        flex-direction: column;
        align-items: stretch;
        gap: var(--wp--preset--spacing--50);
    }

    .apollo-patient-booking__main,
    .apollo-patient-booking__policy {
        flex: 0 1 auto;
        width: 100%;
    }

    .apollo-patient-booking__actions {
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: var(--wp--preset--spacing--20);
        width: 100%;
        margin-top: var(--wp--preset--spacing--40);
    }

    .apollo-patient-booking__actions .apollo-button {
        flex: 0 0 auto;
        align-self: stretch;
        width: 100%;
        max-width: 100%;
        justify-content: center;
        padding-inline: var(--wp--preset--spacing--40);
        text-align: center;
    }
}


/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-patient-booking__grid {
        gap: var(--wp--preset--spacing--40);
    }

    .apollo-patient-booking .apollo-media-text-row__description {
        margin-bottom: var(--wp--preset--spacing--40);
    }

    .apollo-patient-booking__policy
    .apollo-media-text-row__description:last-child {
        margin-bottom: 0;
    }
}







/* ---------------------------------
   Fees & Billing: consultation table
   --------------------------------- */
.apollo-fee-schedule__table-wrap {
    width: 100%;
    margin-top: var(--wp--preset--spacing--60);
    overflow-x: auto;
}

.apollo-fee-schedule__table-wrap:focus-visible {
    outline: auto;
    outline-offset: var(--wp--preset--spacing--20);
}

.apollo-fee-schedule__table {
    width: 100%;
    border-collapse: collapse;
    color: var(--wp--preset--color--contrast);
    font-family: var(--wp--preset--font-family--sans);
    font-size: var(--wp--preset--font-size--body);
    text-align: left;
}

.apollo-fee-schedule__table th,
.apollo-fee-schedule__table td {
    padding: var(--wp--preset--spacing--50);
    vertical-align: top;
}

.apollo-fee-schedule__table thead {
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--on-primary);
}

.apollo-fee-schedule__table thead th {
    font-weight: 600;
}

.apollo-fee-schedule__table tbody th {
    font-weight: 600;
}

.apollo-fee-schedule__table tbody td {
    color: var(--wp--preset--color--contrast-muted);
    white-space: nowrap;
}

.apollo-fee-schedule__table tbody tr:nth-child(odd) {
    background: var(--wp--preset--color--surface);
}

.apollo-fee-schedule__table tbody tr:nth-child(even) {
    background: var(--wp--preset--color--base);
}

.apollo-fee-schedule__note {
    margin: var(--wp--preset--spacing--50) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: inherit;
}


/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-fee-schedule__table-wrap {
        margin-top: var(--wp--preset--spacing--50);
    }

    .apollo-fee-schedule__table th,
    .apollo-fee-schedule__table td {
        padding: var(--wp--preset--spacing--40);
    }
}


/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-fee-schedule__table-wrap {
        margin-top: var(--wp--preset--spacing--40);
    }

    .apollo-fee-schedule__table th,
    .apollo-fee-schedule__table td {
        padding: var(--wp--preset--spacing--30);
    }

    .apollo-fee-schedule__note {
        margin-top: var(--wp--preset--spacing--40);
    }

    .apollo-fee-schedule__actions {
        display: flex;
        justify-content: center;
        width: 100%;
    }

    .apollo-fee-schedule__actions .apollo-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        white-space: normal;
        text-align: center;
    }
}
/* ------------------------------------------------------------------ Fees & Billing Page End ------------------------------------------------------------------ */




/* ------------------------------------------------------------------ Service Main Page Start ------------------------------------------------------------------ */
/* ---------------------------------
   Indigenous Health section
   --------------------------------- */
.apollo-indigenous-health {
    padding-block: var(--wp--preset--spacing--80);
    background: var(--wp--preset--color--base);
}

.apollo-indigenous-health__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.apollo-indigenous-health__image {
    width: 100%;
    margin: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-indigenous-health__image img {
    display: block;
    width: 100%;
    aspect-ratio: 3.9 / 1;
    height: auto;
    object-fit: cover;
}

.apollo-indigenous-health__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 73rem;
    text-align: center;
}

.apollo-indigenous-health__title {
    margin: var(--wp--preset--spacing--50) 0 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

.apollo-indigenous-health__description {
    max-width: 73rem;
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.55;
}

.apollo-indigenous-health__button {
    margin-top: var(--wp--preset--spacing--50);
}

@media (max-width: 79.99rem) {
    .apollo-indigenous-health {
        padding-block: var(--wp--preset--spacing--70);
    }

    .apollo-indigenous-health__title {
        margin-top: var(--wp--preset--spacing--40);
    }
}

@media (max-width: 61.99rem) {
    .apollo-indigenous-health__image img {
        aspect-ratio: 2.8 / 1;
    }

    .apollo-indigenous-health__content {
        max-width: 46rem;
    }
}

@media (max-width: 47.99rem) {
    .apollo-indigenous-health {
        padding-block: var(--wp--preset--spacing--60);
    }

    .apollo-indigenous-health__image img {
        aspect-ratio: 1.8 / 1;
    }

    .apollo-indigenous-health__title {
        margin-top: var(--wp--preset--spacing--40);
    }

    .apollo-indigenous-health__description {
        margin-top: var(--wp--preset--spacing--20);
        line-height: 1.5;
    }

    .apollo-indigenous-health__button {
        margin-top: var(--wp--preset--spacing--40);
    }
}

@media (max-width: 34.99rem) {
    .apollo-indigenous-health {
        padding-block: var(--wp--preset--spacing--50);
    }

    .apollo-indigenous-health__image img {
        aspect-ratio: 1.35 / 1;
    }

    .apollo-indigenous-health__button {
        width: min(100%, 18rem);
    }
}

@media (max-width: 24.99rem) {
    .apollo-indigenous-health__image img {
        aspect-ratio: 1.15 / 1;
    }

    .apollo-indigenous-health__button {
        width: 100%;
    }
}




/* ---------------------------------
   Reusable service cards
   --------------------------------- */
.apollo-service-cards {
    padding-block: var(--wp--preset--spacing--80);
    background: var(--wp--preset--color--base);
}

.apollo-service-cards__inner {
    display: flex;
    flex-direction: column;
}

.apollo-service-cards__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 48rem;
    margin-inline: auto;
    text-align: center;
}

.apollo-service-cards__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.apollo-service-cards__description {
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-cards__items {
    display: flex;
    align-items: stretch;
    gap: var(--wp--preset--spacing--60);
    margin-top: var(--wp--preset--spacing--70);
}

.apollo-service-cards__card {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    min-width: 0;
}

.apollo-service-cards__image {
    width: 100%;
    margin: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-service-cards__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1.78 / 1;
    height: auto;
    object-fit: cover;
}

.apollo-service-cards__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
}

.apollo-service-cards__card-title {
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

.apollo-service-cards__card-description {
    margin: var(--wp--preset--spacing--20) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-cards__button {
    margin-top: var(--wp--preset--spacing--40);
}


/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-cards {
        padding-block: var(--wp--preset--spacing--70);
    }

    .apollo-service-cards__items {
        gap: var(--wp--preset--spacing--50);
        margin-top: var(--wp--preset--spacing--60);
    }
}


/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-cards__items {
        gap: var(--wp--preset--spacing--40);
    }
}


/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-cards {
        padding-block: var(--wp--preset--spacing--60);
    }

    .apollo-service-cards__items {
        flex-direction: column;
        gap: var(--wp--preset--spacing--50);
        margin-top: var(--wp--preset--spacing--50);
    }

    .apollo-service-cards__card-title {
        margin-top: var(--wp--preset--spacing--20);
    }

    .apollo-service-cards__button {
        margin-top: var(--wp--preset--spacing--30);
    }
}


/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-service-cards {
        padding-block: var(--wp--preset--spacing--50);
    }

    .apollo-service-cards__items {
        gap: var(--wp--preset--spacing--40);
    }
}
/* ------------------------------------------------------------------ Service Main Page End ------------------------------------------------------------------ */




/* ------------------------------------------------------------------ Service Inner Page Start ------------------------------------------------------------------ */
/* ---------------------------------
   Service inner pages — Quick links
   --------------------------------- */
.apollo-service-quick-links {
    margin-top: var(--wp--preset--spacing--70);
}

.apollo-service-quick-links__inner {
    display: flex;
    align-items: center;
    width: 100%;
    padding-block: var(--wp--preset--spacing--60);
    border-radius: var(--apollo-button-radius);
    background: color-mix(
        in srgb,
        var(--wp--preset--color--primary) 5%,
        var(--wp--preset--color--base)
    );
}

.apollo-service-quick-links__intro {
    display: flex;
    flex: 0 0 25%;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding-inline: var(--wp--preset--spacing--60);
}

.apollo-service-quick-links .apollo-service-quick-links__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -0.035em;
}

.apollo-service-quick-links__description {
    margin: var(--wp--preset--spacing--20) 0 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--eyebrow);
    font-weight: 400;
    line-height: 1.4;
}

.apollo-service-quick-links__list {
    display: flex;
    flex: 1 1 0;
    align-items: stretch;
    min-width: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.apollo-service-quick-links__item {
    position: relative;
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.apollo-service-quick-links__item + .apollo-service-quick-links__item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 7rem;
    background: var(--wp--preset--color--border);
    content: "";
}

.apollo-service-quick-links__link {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: var(--wp--preset--spacing--20)
        var(--wp--preset--spacing--60);
    color: var(--wp--preset--color--contrast);
    text-decoration: none;
}

.apollo-service-quick-links__main {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--50);
    min-width: 0;
}

.apollo-service-quick-links__icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    color: var(--wp--preset--color--primary);
}

.apollo-service-quick-links__icon svg {
    display: block;
    width: 100%;
    height: 100%;
}

.apollo-service-quick-links__label {
    display: block;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-quick-links__more {
    display: block;
    margin-top: var(--wp--preset--spacing--50);
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 600;
    line-height: 1.4;
}

.apollo-service-quick-links__link:hover,
.apollo-service-quick-links__link:focus-visible {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
}

.apollo-service-quick-links__link:hover .apollo-service-quick-links__more,
.apollo-service-quick-links__link:focus-visible .apollo-service-quick-links__more {
    color: var(--wp--preset--color--primary-hover);
}

.apollo-service-quick-links__link:focus-visible {
    outline: var(--apollo-focus-ring);
    outline-offset: -2px;
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-quick-links {
        margin-top: var(--wp--preset--spacing--70);
    }
    .apollo-service-quick-links__intro {
        padding-inline: var(--wp--preset--spacing--50);
    }
    .apollo-service-quick-links__link {
        padding-inline: var(--wp--preset--spacing--50);
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-quick-links__inner {
        flex-direction: column;
        align-items: stretch;
        gap: var(--wp--preset--spacing--60);
        padding: var(--wp--preset--spacing--50);
    }
    .apollo-service-quick-links__intro {
        flex: 0 0 auto;
        width: 100%;
        padding: 0;
    }
    .apollo-service-quick-links__list {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-service-quick-links__link {
        padding-inline: var(--wp--preset--spacing--50);
    }
    .apollo-service-quick-links__item:first-child
        .apollo-service-quick-links__link {
        padding-left: 0;
    }
    .apollo-service-quick-links__item:last-child
        .apollo-service-quick-links__link {
        padding-right: 0;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-quick-links {
        margin-top: var(--wp--preset--spacing--60);
    }
    .apollo-service-quick-links__intro {
        align-items: center;
        text-align: center;
    }
    .apollo-service-quick-links__main {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-service-quick-links__icon {
        width: 2.5rem;
        height: 2.5rem;
    }
    .apollo-service-quick-links__link {
        padding-inline: var(--wp--preset--spacing--40);
    }
    .apollo-service-quick-links__more {
        margin-top: var(--wp--preset--spacing--40);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-service-quick-links__inner {
        gap: var(--wp--preset--spacing--50);
        padding: var(--wp--preset--spacing--50)
            var(--wp--preset--spacing--40);
    }
    .apollo-service-quick-links__list {
        flex-wrap: wrap;
        row-gap: var(--wp--preset--spacing--60);
    }
    .apollo-service-quick-links__item {
        flex: 0 0 50%;
    }
    .apollo-service-quick-links__item:nth-child(odd)::before {
        display: none;
    }
    .apollo-service-quick-links__item
        .apollo-service-quick-links__link {
        padding-inline: var(--wp--preset--spacing--40);
    }
    .apollo-service-quick-links__item:nth-child(odd)
        .apollo-service-quick-links__link {
        padding-left: 0;
    }
    .apollo-service-quick-links__item:nth-child(even)
        .apollo-service-quick-links__link {
        padding-right: 0;
    }
    .apollo-service-quick-links__item + .apollo-service-quick-links__item::before {
        height: 6rem;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-service-quick-links {
        margin-top: var(--wp--preset--spacing--50);
    }
    .apollo-service-quick-links__list {
        row-gap: var(--wp--preset--spacing--50);
    }
    .apollo-service-quick-links__icon {
        width: 2.25rem;
        height: 2.25rem;
    }
}





/* ---------------------------------
   Service introduction
   --------------------------------- */
.apollo-service-intro {
    margin-top: var(--wp--preset--spacing--80);
}

.apollo-service-intro__inner {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--70);
}

/* Image on the right */
.apollo-service-intro--reverse .apollo-service-intro__inner {
    flex-direction: row-reverse;
}

.apollo-service-intro__image {
    flex: 0 0 calc(50% - (var(--wp--preset--spacing--70) / 2));
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border-radius: var(--apollo-radius);
}

.apollo-service-intro__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1.13 / 1;
    height: auto;
    object-fit: cover;
}

.apollo-service-intro__content {
    flex: 1 1 0;
    min-width: 0;
}

.apollo-service-intro__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.apollo-service-intro__subtitle {
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-intro__description,
.apollo-service-intro__list-title,
.apollo-service-intro__list li {
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-intro__description {
    margin: var(--wp--preset--spacing--40) 0 0;
}

.apollo-service-intro__additional-description {
    margin: var(--wp--preset--spacing--50) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-intro__list-title {
    margin: var(--wp--preset--spacing--50) 0 0;
}

.apollo-service-intro__list {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
    margin: var(--wp--preset--spacing--30) 0 0;
    padding: 0;
    list-style: none;
}

.apollo-service-intro__list li {
    position: relative;
    padding-left: 1.5rem;
}

.apollo-service-intro__list li::before {
    position: absolute;
    top: 0.45em;
    left: 0;
    width: var(--wp--preset--spacing--30);
    height: var(--wp--preset--spacing--30);
    border-radius: 50%;
    background: var(--wp--preset--color--primary);
    content: "";
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-intro {
        margin-top: var(--wp--preset--spacing--70);
    }
    .apollo-service-intro__inner {
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-service-intro__image {
        flex-basis: calc(50% - (var(--wp--preset--spacing--50) / 2));
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-intro__inner {
        flex-direction: column;
        align-items: stretch;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-service-intro--reverse .apollo-service-intro__inner {
        flex-direction: column;
    }
    .apollo-service-intro__image {
        flex: 0 0 auto;
        width: 100%;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-intro {
        margin-top: var(--wp--preset--spacing--60);
    }
    .apollo-service-intro__additional-description {
        margin-top: var(--wp--preset--spacing--40);
    }
}





/* ---------------------------------
   Doctors available for this service
   --------------------------------- */
.apollo-service-doctors {
    margin-top: var(--wp--preset--spacing--80);
    margin-bottom: var(--wp--preset--spacing--80);
}

.apollo-service-doctors__inner {
    display: flex;
    flex-direction: column;
}

.apollo-service-doctors__header {
    margin-bottom: var(--wp--preset--spacing--60);
    text-align: center;
}

.apollo-service-doctors__header .apollo-eyebrow {
    margin-bottom: var(--wp--preset--spacing--20);
}

.apollo-service-doctors__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

/* Three columns on desktop. */
.apollo-service-doctors__list {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: var(--wp--preset--spacing--40);
}

.apollo-service-doctors__list > .apollo-team-item {
    display: flex;
    flex: 0 0 calc((100% - (var(--wp--preset--spacing--40) * 2)) / 3);
    flex-direction: column;
    align-items: stretch;
    min-width: 0;
}

.apollo-service-doctors__list > .apollo-team-item > .apollo-team-card {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    height: auto;
}

.apollo-service-doctors__list > .apollo-team-item > .apollo-team-card__button {
    flex: 0 0 auto;
}

.apollo-service-doctors__list .apollo-team-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 79.99rem) {
    .apollo-service-doctors {
        margin-top: var(--wp--preset--spacing--70);
        margin-bottom: var(--wp--preset--spacing--70);
    }
    .apollo-service-doctors__list {
        gap: var(--wp--preset--spacing--30);
    }
}

@media (max-width: 61.99rem) {
    .apollo-service-doctors__list > .apollo-team-item {
        flex-basis: calc((100% - var(--wp--preset--spacing--30)) / 2);
    }
}

@media (max-width: 47.99rem) {
    .apollo-service-doctors {
        margin-top: var(--wp--preset--spacing--60);
        margin-bottom: var(--wp--preset--spacing--60);
    }
    .apollo-service-doctors__header {
        margin-bottom: var(--wp--preset--spacing--40);
    }
    .apollo-service-doctors__list .apollo-team-card__body {
        min-height: 0;
    }
}

@media (max-width: 34.99rem) {
    .apollo-service-doctors {
        margin-top: var(--wp--preset--spacing--50);
        margin-bottom: var(--wp--preset--spacing--50);
    }
    .apollo-service-doctors__list {
        flex-direction: column;
    }
    .apollo-service-doctors__list > .apollo-team-item {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-service-doctors__list .apollo-team-card__body {
        padding: var(--wp--preset--spacing--30);
    }
    .apollo-service-doctors__list .apollo-team-card__label {
        margin-top: var(--wp--preset--spacing--20);
    }
}



/* ---------------------------------
   Service inner pages — FAQ
   --------------------------------- */
.apollo-service-faq {
    margin-top: var(--wp--preset--spacing--70);
    background: var(--wp--preset--color--base);
}

.apollo-service-faq__inner {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.apollo-service-faq__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    min-width: 0;
}

.apollo-service-faq__item + .apollo-service-faq__item {
    margin-top: var(--wp--preset--spacing--60);
    padding-top: var(--wp--preset--spacing--60);
    border-top: 1px solid var(--wp--preset--color--contrast-muted);
    border-top-color: color-mix(
        in srgb,
        var(--wp--preset--color--contrast-muted) 20%,
        transparent
    );
}

.apollo-service-faq__eyebrow {
    margin: 0 0 var(--wp--preset--spacing--40);
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--eyebrow);
    font-weight: 400;
    line-height: 1.4;
}

.apollo-service-faq .apollo-service-faq__question {
    width: 100%;
    max-width: 56rem;
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.035em;
}

.apollo-service-faq__answer {
    width: 100%;
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-service-faq__answer p {
    margin: 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-faq__answer p + p {
    margin-top: var(--wp--preset--spacing--40);
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-faq {
        margin-top: var(--wp--preset--spacing--70);
    }
    .apollo-service-faq .apollo-service-faq__question {
        max-width: none;
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-faq__eyebrow {
        margin-bottom: var(--wp--preset--spacing--30);
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-faq {
        margin-top: var(--wp--preset--spacing--70);
    }
    .apollo-service-faq__item + .apollo-service-faq__item {
        margin-top: var(--wp--preset--spacing--50);
        padding-top: var(--wp--preset--spacing--50);
    }
    .apollo-service-faq__answer {
        margin-top: var(--wp--preset--spacing--40);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-service-faq__eyebrow {
        justify-content: flex-start;
        text-align: left;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-service-faq {
        margin-top: var(--wp--preset--spacing--70);
    }
    .apollo-service-faq__item + .apollo-service-faq__item {
        margin-top: var(--wp--preset--spacing--50);
        padding-top: var(--wp--preset--spacing--50);
    }
    .apollo-service-faq__eyebrow {
        margin-bottom: var(--wp--preset--spacing--20);
    }
}





/* ---------------------------------
   Service inner pages — Plan cards
   --------------------------------- */
.apollo-service-plan {
    margin-top: var(--wp--preset--spacing--70);
    padding-block: var(--wp--preset--spacing--70);
    background: color-mix(
        in srgb,
        var(--wp--preset--color--primary) 3%,
        var(--wp--preset--color--base)
    );
}

.apollo-service-plan__inner {
    display: flex;
    flex-direction: column;
}

.apollo-service-plan__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 45rem;
    margin-inline: auto;
    text-align: center;
}

/* Desktop: 14px / 400 */
.apollo-service-plan__eyebrow {
    justify-content: center;
    margin: 0 0 var(--wp--preset--spacing--40);
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--eyebrow);
    font-weight: 400;
    line-height: 1.4;
}

/* Desktop: 48px / 700 */
.apollo-service-plan .apollo-service-plan__title {
    width: 100%;
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.035em;
}

.apollo-service-plan__cards {
    display: flex;
    align-items: stretch;
    gap: var(--wp--preset--spacing--60);
    margin-top: var(--wp--preset--spacing--60);
}

.apollo-service-plan__card {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
    padding: var(--wp--preset--spacing--60);
    border: 1px solid color-mix(
        in srgb,
        var(--wp--preset--color--primary) 65%,
        var(--wp--preset--color--base)
    );
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--base);
    text-align: center;
}

/* Desktop: 20px / 600 */
.apollo-service-plan .apollo-service-plan__card-title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--service-card-title);
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.02em;
}

/* Desktop: 16px / 400 */
.apollo-service-plan__card-text {
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-plan
.apollo-service-plan__card-text
a.apollo-service-plan__source-link {
    color: var(--wp--preset--color--primary-hover);
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

.apollo-service-plan
.apollo-service-plan__card-text
a.apollo-service-plan__source-link:hover {
    color: var(--wp--preset--color--primary);
}

.apollo-service-plan
.apollo-service-plan__card-text
a.apollo-service-plan__source-link:focus-visible {
    outline: var(--apollo-focus-ring);
    outline-offset: 3px;
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-plan {
        margin-top: var(--wp--preset--spacing--70);
        padding-block: var(--wp--preset--spacing--60);
    }

    .apollo-service-plan__cards {
        gap: var(--wp--preset--spacing--50);
        margin-top: var(--wp--preset--spacing--50);
    }

    .apollo-service-plan__card {
        padding: var(--wp--preset--spacing--50);
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-plan__header {
        max-width: 40rem;
    }

    .apollo-service-plan__cards {
        gap: var(--wp--preset--spacing--40);
    }

    .apollo-service-plan__card {
        padding: var(--wp--preset--spacing--50)
            var(--wp--preset--spacing--40);
    }

    .apollo-service-plan__eyebrow {
        margin-bottom: var(--wp--preset--spacing--30);
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-plan {
        margin-top: var(--wp--preset--spacing--60);
        padding-block: var(--wp--preset--spacing--60);
    }

    .apollo-service-plan__cards {
        flex-direction: column;
        gap: var(--wp--preset--spacing--40);
        margin-top: var(--wp--preset--spacing--50);
    }

    .apollo-service-plan__card {
        flex: 0 0 auto;
        width: 100%;
        padding: var(--wp--preset--spacing--50);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-service-plan {
        padding-block: var(--wp--preset--spacing--50);
    }

    .apollo-service-plan__cards {
        margin-top: var(--wp--preset--spacing--40);
    }

    .apollo-service-plan__card {
        padding: var(--wp--preset--spacing--50)
            var(--wp--preset--spacing--40);
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-service-plan {
        margin-top: var(--wp--preset--spacing--50);
    }

    .apollo-service-plan__eyebrow {
        margin-bottom: var(--wp--preset--spacing--20);
    }

    .apollo-service-plan__cards {
        gap: var(--wp--preset--spacing--30);
    }

    .apollo-service-plan__card {
        padding: var(--wp--preset--spacing--40);
    }
}





/* ---------------------------------
   Service inner pages — New fees banner
   --------------------------------- */
.apollo-service-fees-new {
    position: relative;
    isolation: isolate;
    margin-top: var(--wp--preset--spacing--70);
    overflow: hidden;
    background: var(--wp--preset--color--contrast);
    color: var(--wp--preset--color--base);
}

.apollo-service-fees-new__background {
    position: absolute;
    inset: 0;
    z-index: -2;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.apollo-service-fees-new__overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgb(0 0 0 / 55%);
    pointer-events: none;
}

.apollo-service-fees-new__inner {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--80);
    min-height: 23rem;
    padding-block: var(--wp--preset--spacing--70);
}

.apollo-service-fees-new__content {
    display: flex;
    flex: 1.1 1 0;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
}

.apollo-service-fees-new__eyebrow {
    margin: 0 0 var(--wp--preset--spacing--40);
    color: var(--wp--preset--color--base);
    font-size: var(--wp--preset--font-size--eyebrow);
    font-weight: 400;
    line-height: 1.4;
}

.apollo-service-fees-new .apollo-service-fees-new__title {
    width: 100%;
    margin: 0;
    color: var(--wp--preset--color--base);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.035em;
}

.apollo-service-fees-new__description {
    max-width: 45rem;
    margin: var(--wp--preset--spacing--60) 0 0;
    color: var(--wp--preset--color--base);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-fees-new__card {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: var(--wp--preset--spacing--60);
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--base);
    color: var(--wp--preset--color--contrast);
}

.apollo-service-fees-new .apollo-service-fees-new__card-title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.035em;
}

.apollo-service-fees-new__card-description {
    max-width: 34rem;
    margin: var(--wp--preset--spacing--40) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-service-fees-new__link {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    max-width: 100%;
    margin-top: var(--wp--preset--spacing--50);
    color: var(--wp--preset--color--primary);
    font-size: var(--wp--preset--font-size--service-card-title);
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
}

.apollo-service-fees-new__link:hover,
.apollo-service-fees-new__link:focus-visible {
    color: var(--wp--preset--color--primary-hover);
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-fees-new {
        margin-top: var(--wp--preset--spacing--70);
    }

    .apollo-service-fees-new__inner {
        gap: var(--wp--preset--spacing--60);
        padding-block: var(--wp--preset--spacing--60);
    }

    .apollo-service-fees-new__card {
        padding: var(--wp--preset--spacing--50);
    }

    .apollo-service-fees-new__description {
        margin-top: var(--wp--preset--spacing--50);
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-fees-new__inner {
        flex-direction: column;
        align-items: stretch;
        gap: var(--wp--preset--spacing--50);
        min-height: 0;
    }

    .apollo-service-fees-new__content,
    .apollo-service-fees-new__card {
        flex: 0 0 auto;
        width: 100%;
    }

    .apollo-service-fees-new__content {
        max-width: 46rem;
    }

    .apollo-service-fees-new__card-description {
        max-width: none;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-fees-new {
        margin-top: var(--wp--preset--spacing--60);
    }

    .apollo-service-fees-new__eyebrow {
        margin-bottom: var(--wp--preset--spacing--30);
    }

    .apollo-service-fees-new__description {
        margin-top: var(--wp--preset--spacing--40);
    }

    .apollo-service-fees-new__card-description {
        margin-top: var(--wp--preset--spacing--30);
    }

    .apollo-service-fees-new__link {
        margin-top: var(--wp--preset--spacing--40);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-service-fees-new__inner {
        padding-block: var(--wp--preset--spacing--50);
    }

    .apollo-service-fees-new__card {
        padding: var(--wp--preset--spacing--50)
            var(--wp--preset--spacing--40);
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-service-fees-new {
        margin-top: var(--wp--preset--spacing--50);
    }

    .apollo-service-fees-new__inner {
        gap: var(--wp--preset--spacing--40);
    }

    .apollo-service-fees-new__card {
        padding: var(--wp--preset--spacing--40);
    }
}





/* ---------------------------------
   Service inner pages — Related services
   Compact vertical layout
   --------------------------------- */
.apollo-service-related {
    margin-top: var(--wp--preset--spacing--60);
    background: var(--wp--preset--color--base);
}

.apollo-service-related__inner {
    display: flex;
    flex-direction: column;
}

.apollo-service-related__header {
    display: flex;
    justify-content: center;
    width: 100%;
    text-align: center;
}

.apollo-service-related .apollo-service-related__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.035em;
}

.apollo-service-related__cards {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: var(--wp--preset--spacing--50);
    margin-top: var(--wp--preset--spacing--40);
}

.apollo-service-related__card {
    display: flex;
    flex: 0 0 calc(
        (100% - (var(--wp--preset--spacing--50) * 2)) / 3
    );
    min-width: 0;
}

.apollo-service-related__link {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    color: var(--wp--preset--color--contrast);
    text-decoration: none;
}

.apollo-service-related__media {
    width: 100%;
    overflow: hidden;
    border-radius: var(--apollo-radius);
    aspect-ratio: 3.2 / 1;
}

.apollo-service-related__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    transition: transform 300ms ease;
}

.apollo-service-related .apollo-service-related__card-title {
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--title-lg);
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.035em;
    text-align: center;
}

.apollo-service-related__link:hover,
.apollo-service-related__link:focus-visible {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
}

.apollo-service-related__link:hover .apollo-service-related__card-title,
.apollo-service-related__link:focus-visible .apollo-service-related__card-title {
    color: var(--wp--preset--color--primary);
}

.apollo-service-related__link:focus-visible {
    outline: var(--apollo-focus-ring);
    outline-offset: 5px;
    border-radius: var(--apollo-button-radius);
}

@media (hover: hover) {
    .apollo-service-related__link:hover .apollo-service-related__image {
        transform: scale(1.04);
    }
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-service-related__cards {
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-service-related__card {
        flex-basis: calc(
            (100% - (var(--wp--preset--spacing--40) * 2)) / 3
        );
    }
}

/* Below 992px */
@media (max-width: 61.99rem) {
    .apollo-service-related__card {
        flex-basis: calc(
            (100% - var(--wp--preset--spacing--40)) / 2
        );
    }
    .apollo-service-related__media {
        aspect-ratio: 2.8 / 1;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-service-related {
        margin-top: var(--wp--preset--spacing--50);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-service-related__cards {
        flex-direction: column;
        flex-wrap: nowrap;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-service-related__card {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-service-related__media {
        aspect-ratio: 3 / 1;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-service-related__cards {
        margin-top: var(--wp--preset--spacing--30);
    }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .apollo-service-related__image {
        transition: none;
    }
    .apollo-service-related__link:hover .apollo-service-related__image {
        transform: none;
    }
}
/* ------------------------------------------------------------------ Service Inner Page End ------------------------------------------------------------------ */







/* ------------------------------------------------------------------ Pation Info Page start ------------------------------------------------------------------ */
/* ---------------------------------
   Appointment CTA
   --------------------------------- */
.apollo-appointment-cta {
    margin: var(--wp--preset--spacing--80) 0;
    padding-block: var(--wp--preset--spacing--80);
    background: var(--wp--preset--color--contrast);
    color: var(--wp--preset--color--base);
}

.apollo-appointment-cta__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.apollo-appointment-cta__title {
    margin: 0;
    color: var(--wp--preset--color--base);
    font-size: var(--wp--preset--font-size--hero);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.035em;
}

.apollo-appointment-cta__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--wp--preset--spacing--20);
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-appointment-cta__actions .apollo-button {
    min-width: 12rem;
}

.apollo-appointment-cta__actions .apollo-button--primary {
    border-color: var(--wp--preset--color--base);
    background: transparent;
    color: var(--wp--preset--color--base);
}

.apollo-appointment-cta__actions .apollo-button--primary:hover,
.apollo-appointment-cta__actions .apollo-button--primary:focus-visible {
    border-color: var(--wp--preset--color--base);
    background: var(--wp--preset--color--base);
    color: var(--wp--preset--color--contrast);
}

.apollo-appointment-cta__actions .apollo-button--secondary {
    border-color: var(--wp--preset--color--base);
    background: var(--wp--preset--color--base);
    color: var(--wp--preset--color--contrast);
}

.apollo-appointment-cta__actions .apollo-button--secondary:hover,
.apollo-appointment-cta__actions .apollo-button--secondary:focus-visible {
    border-color: var(--wp--preset--color--base);
    background: var(--wp--preset--color--primary-soft);
    color: var(--wp--preset--color--contrast);
}

@media (max-width: 79.99rem) {
    .apollo-appointment-cta {
        margin: var(--wp--preset--spacing--70) 0;
        padding-block: var(--wp--preset--spacing--70);
    }
}

@media (max-width: 61.99rem) {
    .apollo-appointment-cta {
        margin: var(--wp--preset--spacing--70) 0;
    }
}

@media (max-width: 47.99rem) {
    .apollo-appointment-cta {
        margin: var(--wp--preset--spacing--60) 0;
        padding-block: var(--wp--preset--spacing--60);
    }
    .apollo-appointment-cta__actions {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        max-width: 20rem;
        margin-top: var(--wp--preset--spacing--40);
    }
    .apollo-appointment-cta__actions .apollo-button {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 34.99rem) {
    .apollo-appointment-cta {
        margin: var(--wp--preset--spacing--50) 0;
        padding-block: var(--wp--preset--spacing--50);
    }
    .apollo-appointment-cta__actions {
        max-width: none;
    }
}

@media (max-width: 24.99rem) {
    .apollo-appointment-cta {
        margin: var(--wp--preset--spacing--40) 0;
        padding-block: var(--wp--preset--spacing--40);
    }
}




/* ---------------------------------
   Frequently asked questions
   --------------------------------- */
.apollo-faq {
    margin: var(--wp--preset--spacing--80) 0 0;
}

.apollo-faq__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.apollo-faq__title {
    max-width: 60rem;
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--display-sm);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.03em;
    text-align: center;
}

.apollo-faq__description {
    max-width: 42rem;
    margin: var(--wp--preset--spacing--30) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
}

.apollo-faq__items {
    width: min(100%, 56rem);
    margin-top: var(--wp--preset--spacing--70);
}

.apollo-faq__item {
    overflow: hidden;
    margin: 0 0 var(--wp--preset--spacing--30);
    border: 1px solid var(--wp--preset--color--border);
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--base);
}

.apollo-faq__item:last-child {
    margin-bottom: 0;
}

.apollo-faq__item:has(
    .apollo-faq__trigger[aria-expanded="true"]
) {
    border-color: var(--wp--preset--color--primary);
}

.apollo-faq__question {
    margin: 0;
}

.apollo-faq__trigger {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 4.25rem;
    gap: var(--wp--preset--spacing--20);
    padding: var(--wp--preset--spacing--30);
    border: 0;
    background: transparent;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.4;
    text-align: left;
    cursor: pointer;
}

.apollo-faq__trigger:hover,
.apollo-faq__trigger:focus-visible,
.apollo-faq__trigger[aria-expanded="true"] {
    color: var(--wp--preset--color--primary);
}

.apollo-faq__icon {
    position: relative;
    display: inline-flex;
    flex: 0 0 1rem;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    color: currentColor;
}

.apollo-faq__icon-horizontal,
.apollo-faq__icon-vertical {
    position: absolute;
    display: block;
    width: 0.65rem;
    height: 1px;
    background: currentColor;
}

.apollo-faq__icon-vertical {
    transform: rotate(90deg);
    transition: transform 150ms ease;
}

.apollo-faq__trigger[aria-expanded="true"]
.apollo-faq__icon-vertical {
    transform: rotate(0deg);
}

.apollo-faq__question-text {
    flex: 1 1 auto;
    min-width: 0;
}

.apollo-faq__answer {
    padding: var(--wp--preset--spacing--30);
    border-top: 1px solid var(--wp--preset--color--border);
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-faq__answer p {
    margin: 0;
}

.apollo-faq__answer p + p {
    margin-top: var(--wp--preset--spacing--30);
}

@media (max-width: 79.99rem) {
    .apollo-faq {
        margin: var(--wp--preset--spacing--70) 0 0;
    }
    .apollo-faq__items {
        margin-top: var(--wp--preset--spacing--60);
    }
}

@media (max-width: 47.99rem) {
    .apollo-faq {
        margin: var(--wp--preset--spacing--60) 0;
    }
    .apollo-faq__items {
        margin-top: var(--wp--preset--spacing--50);
    }
    .apollo-faq__trigger,
    .apollo-faq__answer {
        padding: var(--wp--preset--spacing--30)
            var(--wp--preset--spacing--20);
    }
}

@media (max-width: 24.99rem) {
    .apollo-faq {
        margin: var(--wp--preset--spacing--50) 0;
    }
}
/* ------------------------------------------------------------------ Pation Info Page End ------------------------------------------------------------------ */





/* ------------------------------------------------------------------ Footer Map Section Start ------------------------------------------------------------------ */
/* ---------------------------------
   Shared location, map and contact details
   Homepage and footer placement
   --------------------------------- */
.apollo-home-hours-map {
    width: 100%;
    padding-block: var(--wp--preset--spacing--70);
}

.apollo-home-hours-map__inner {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--70);
    padding: var(--wp--preset--spacing--60);
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--primary-soft);
}

.apollo-home-hours-map__info {
    flex: 0 1 22rem;
    min-width: 0;
}

.apollo-home-hours-map__details {
    flex: 0 1 21rem;
    min-width: 0;
}

.apollo-home-hours-map__map {
    flex: 1 1 0;
    align-self: stretch;
    min-width: 0;
    min-height: 21rem;
    overflow: hidden;
    border-radius: var(--apollo-radius);
    background: var(--wp--preset--color--surface);
}

.apollo-home-hours-map__map iframe {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 21rem;
    border: 0;
}

.apollo-home-hours-map__item {
    display: flex;
    align-items: flex-start;
    gap: var(--wp--preset--spacing--40);
}

.apollo-home-hours-map__details > .apollo-home-hours-map__item
    + .apollo-home-hours-map__item {
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-home-hours-map__icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 2.875rem;
    height: 2.875rem;
    border-radius: 50%;
    background: var(--wp--preset--color--base);
    color: var(--wp--preset--color--primary);
}

.apollo-home-hours-map__icon svg {
    width: 1.25rem;
    height: 1.25rem;
}

.apollo-home-hours-map__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
}

.apollo-home-hours-map__title {
    margin: 0;
    color: var(--wp--preset--color--contrast);
    font-size: var(--wp--preset--font-size--service-card-title);
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.02em;
}

.apollo-home-hours-map__text {
    margin: var(--wp--preset--spacing--20) 0 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.apollo-home-hours-map__text > span {
    display: block;
}

.apollo-home-hours-map__text + .apollo-home-hours-map__text {
    margin-top: var(--wp--preset--spacing--40);
}

.apollo-home-hours-map__link {
    color: inherit;
    text-decoration: none;
}

.apollo-home-hours-map__link:hover,
.apollo-home-hours-map__link:focus-visible {
    color: var(--wp--preset--color--primary);
    text-decoration: none;
}

.apollo-home-hours-map__button {
    margin-top: var(--wp--preset--spacing--50);
}

.apollo-home-hours-map__hours {
    margin-top: var(--wp--preset--spacing--20);
}

.apollo-home-hours-map__hours-row {
    display: flex;
    column-gap: var(--wp--preset--spacing--30);
    margin: 0;
    color: var(--wp--preset--color--contrast-muted);
    font-size: var(--wp--preset--font-size--body);
    font-weight: 400;
    line-height: 1.5;
}

.apollo-home-hours-map__hours-row
    + .apollo-home-hours-map__hours-row {
    margin-top: var(--wp--preset--spacing--20);
}

.apollo-home-hours-map__hours-day {
    flex: 0 0 8rem;
    min-width: 0;
}

.apollo-home-hours-map__hours-time {
    flex: 1 1 auto;
    min-width: 0;
    white-space: nowrap;
}

@media (min-width: 80rem) {
    .apollo-home-hours-map__details {
        display: flex;
        flex: 0 1 28rem;
        flex-wrap: wrap;
        align-content: flex-start;
        gap: var(--wp--preset--spacing--50)
             var(--wp--preset--spacing--40);
    }
    .apollo-home-hours-map__details
        > .apollo-home-hours-map__item {
        flex: 0 0 100%;
        min-width: 0;
        margin-top: 0;
    }
    .apollo-home-hours-map__contact-items {
        display: flex;
        flex: 0 0 100%;
        flex-wrap: wrap;
        gap: var(--wp--preset--spacing--50)
             var(--wp--preset--spacing--40);
        min-width: 0;
    }
    .apollo-home-hours-map__contact-items
        > .apollo-home-hours-map__item {
        flex: 0 0 calc(
            (100% - var(--wp--preset--spacing--40)) / 2
        );
        min-width: 0;
        margin-top: 0;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-home-hours-map__contact-items
        > .apollo-home-hours-map__item
        .apollo-home-hours-map__icon {
        width: 2.5rem;
        height: 2.5rem;
    }
}

/* Below 1280px */
@media (max-width: 79.99rem) {
    .apollo-home-hours-map {
        padding-block: var(--wp--preset--spacing--60);
    }
    .apollo-home-hours-map__inner {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: stretch;
        gap: var(--wp--preset--spacing--50);
        padding: var(--wp--preset--spacing--50);
    }
    .apollo-home-hours-map__info,
    .apollo-home-hours-map__map {
        flex: 1 1 calc(
            (100% - var(--wp--preset--spacing--50)) / 2
        );
        width: auto;
        min-width: 0;
    }
    .apollo-home-hours-map__map {
        align-self: stretch;
        min-height: 22rem;
    }
    .apollo-home-hours-map__map iframe {
        min-height: 22rem;
    }
    .apollo-home-hours-map__item {
        gap: var(--wp--preset--spacing--30);
    }
    .apollo-home-hours-map__icon {
        width: 2.5rem;
        height: 2.5rem;
    }
    .apollo-home-hours-map__details {
        display: flex;
        flex: 0 0 100%;
        flex-wrap: wrap;
        width: 100%;
        gap: var(--wp--preset--spacing--50)
             var(--wp--preset--spacing--60);
    }
    .apollo-home-hours-map__details > .apollo-home-hours-map__item {
        min-width: 0;
        margin-top: 0;
    }
    .apollo-home-hours-map__contact-items {
        display: flex;
        flex: 1 1 0;
        flex-direction: column;
        min-width: 0;
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-home-hours-map__contact-items
        > .apollo-home-hours-map__item {
        flex: 0 0 auto;
        width: 100%;
        min-width: 0;
        margin-top: 0;
    }
}

@media (min-width: 48rem) and (max-width: 79.99rem) {
    .apollo-home-hours-map__details {
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: flex-start;
        gap: var(--wp--preset--spacing--60);
    }
    .apollo-home-hours-map__details
        > .apollo-home-hours-map__item {
        flex: 1 1 0;
    }
    .apollo-home-hours-map__contact-items {
        flex: 1 1 0;
    }
    .apollo-home-hours-map__hours-time {
        white-space: normal;
    }
}

/* Below 768px */
@media (max-width: 47.99rem) {
    .apollo-home-hours-map {
        padding-block: var(--wp--preset--spacing--50);
    }
    .apollo-home-hours-map__inner {
        flex-direction: column;
        flex-wrap: nowrap;
        gap: var(--wp--preset--spacing--40);
        padding: var(--wp--preset--spacing--40);
    }
    .apollo-home-hours-map__info,
    .apollo-home-hours-map__map,
    .apollo-home-hours-map__details {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-home-hours-map__map {
        align-self: auto;
    }
    .apollo-home-hours-map__map,
    .apollo-home-hours-map__map iframe {
        min-height: 18rem;
    }
    .apollo-home-hours-map__details {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: flex-start;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-home-hours-map__details
        > .apollo-home-hours-map__item {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
        margin-top: 0;
        gap: var(--wp--preset--spacing--20);
    }
    .apollo-home-hours-map__contact-items {
        display: flex;
        flex: 1 1 0;
        flex-direction: column;
        width: auto;
        min-width: 0;
        gap: var(--wp--preset--spacing--50);
    }
    .apollo-home-hours-map__contact-items
        > .apollo-home-hours-map__item {
        flex: 0 0 auto;
        width: 100%;
        min-width: 0;
        margin-top: 0;
        gap: var(--wp--preset--spacing--20);
    }
    .apollo-home-hours-map__hours-row {
        flex-direction: column;
    }
    .apollo-home-hours-map__hours-day,
    .apollo-home-hours-map__hours-time {
        flex: 0 0 auto;
    }
    .apollo-home-hours-map__hours-time {
        white-space: normal;
    }
    .apollo-home-hours-map__button {
        margin-top: var(--wp--preset--spacing--40);
    }
}

/* Below 560px */
@media (max-width: 34.99rem) {
    .apollo-home-hours-map__map,
    .apollo-home-hours-map__map iframe {
        min-height: 16rem;
    }
    .apollo-home-hours-map__icon {
        width: 2.25rem;
        height: 2.25rem;
    }
    .apollo-home-hours-map__icon svg {
        width: 1.125rem;
        height: 1.125rem;
    }
    .apollo-home-hours-map__hours-day {
        flex: 0 0 auto;
    }
    .apollo-home-hours-map__info {
        --apollo-hours-map-button-offset: calc(
            2.25rem + var(--wp--preset--spacing--30)
        );
    }
    .apollo-home-hours-map__info
    .apollo-home-hours-map__body
    .apollo-home-hours-map__button {
        display: flex;
        align-items: center;
        justify-content: center;
        align-self: flex-start;
        box-sizing: border-box;
        width: calc(
            100% + var(--apollo-hours-map-button-offset)
        );
        max-width: none;
        margin-left: calc(
            0px - var(--apollo-hours-map-button-offset)
        );
        padding: 0.75rem 1.25rem;
    }
}

/* Below 400px */
@media (max-width: 24.99rem) {
    .apollo-home-hours-map {
        padding-block: var(--wp--preset--spacing--40);
        margin: 2rem 0;
    }
    .apollo-home-hours-map__inner {
        padding: var(--wp--preset--spacing--30);
    }
    .apollo-home-hours-map__map,
    .apollo-home-hours-map__map iframe {
        min-height: 14rem;
    }
    .apollo-home-hours-map__details {
        flex-direction: column;
        flex-wrap: nowrap;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-home-hours-map__details
        > .apollo-home-hours-map__item {
        flex: 0 0 auto;
        width: 100%;
    }
    .apollo-home-hours-map__contact-items {
        display: flex;
        flex: 0 0 auto;
        flex-direction: column;
        width: 100%;
        min-width: 0;
        gap: var(--wp--preset--spacing--40);
    }
    .apollo-home-hours-map__contact-items
        > .apollo-home-hours-map__item {
        flex: 0 0 auto;
        width: 100%;
        margin-top: 0;
    }
    .apollo-home-hours-map__hours {
        width: 100%;
    }
    .apollo-home-hours-map__hours-row {
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: baseline;
        gap: var(--wp--preset--spacing--20);
    }
    .apollo-home-hours-map__hours-day {
        flex: 0 0 auto;
    }
    .apollo-home-hours-map__hours-time {
        flex: 0 1 auto;
        min-width: 0;
        text-align: right;
        white-space: normal;
    }
}
/* ------------------------------------------------------------------ Footer Map Section End ------------------------------------------------------------------ */