
html {
    scroll-behavior: smooth;
}

div.page-menu {
    padding: 25px 0px;
    background: var(--color-primary) !important;
}

div.team-bio-wrapper .carousel-indicators li {
    background-size: cover;
    width: 100px !important;
    height: 100px !important;
    border-width: medium !important;
    border-style: none !important;
    border-color: currentcolor !important;
    border-image: initial !important;
}

div#ip-sec3 .ry-text ul li:nth-child(2)::before {
    background-image: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/bio_list_icon_2.png");
    background-position: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    background-size: contain !important;
    background-repeat: no-repeat !important;
}


.page-anchor {
    display: block;
    position: relative;
    top: -250px;
    visibility: hidden;
}

div#doc-page-blocks a.ry-btn.ry-btn-primary {
    max-width: fit-content;
    white-space: nowrap;
    font-size: 16px !important;
}

div.team-bio-wrapper ol.carousel-indicators {
    justify-content: flex-start;
    gap: 0px 10px;
    display: flex !important;
    width: auto !important;
    padding: 0px !important;
    position: static !important;
    margin: 10px 0px !important;
}

div#ip-sec3 div#with-image-text {
    align-items: flex-start;
}

div.team-bio-wrapper .carousel-control {
    display: none !important;
}

div.ip-custom-banner, div.ip-custom-banner img {
    height: 400px;
    object-fit: cover;
    object-position: center center;
}

.ip-custom-banner-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ip-section .ry-flex #with-image img {
    border-radius: 40px;
}

.ip-custom-banner-title .ry-heading h2, .ip-custom-banner-title .ry-heading h4 {
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    font-family: var(--font-title);
}

.ip-custom-banner-title .ry-heading h2 {
    font-size: 60px;
    line-height: 1.2;
    text-transform: uppercase;
    color: rgb(255, 255, 255);
    font-weight: 200;
    font-family: var(--font-default);
    text-align: center;
}

.ip-custom-banner-title .ry-heading h4 {
    font-size: 25px;
    letter-spacing: 8px;
    text-transform: uppercase;
    color: rgb(255, 255, 255);
    font-weight: 400;
    font-family: var(--font-title) !important;
}

div#ip-sec2 div#with-text h4 {
    margin-bottom: 20px;
}

@media (min-width: 1081px) {
    .menu-toggle {
        display: none;
    }
}

div.ip-section {
    padding-bottom: 8em;
}

.ip-section .ry-flex {
    justify-content: space-between;
    gap: 0px 7%;
    align-items: center;
}

.ip-section .ry-heading h2 {
    text-transform: uppercase;
    font-family: var(--font-default);
    font-size: 55px;
    line-height: 1.1;
    color: rgb(51, 51, 51);
    margin-bottom: 30px;
    font-weight: 300 !important;
}

#ip-sec1 {
    padding-top: 6em;
}

.ip-section .ry-flex #with-text ol, .ip-section .ry-flex #with-text ul {
    padding-left: 16px;
	margin: 20px 0;
}

.ip-section .ry-flex #with-text ol li {
	list-style:decimal;
	color:#fff;
}

div.ip-section .ry-text h4 {
    color: var(--color-primary);
    font-size: 22px;
    font-family: var(--font-default) !important;
    text-transform: initial !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    margin-bottom: 10px;
}
div.ip-section .ry-text p {
    font-weight: 400 !important;
    line-height: 1.8;
}

div#ip-sec2 #with-image-text {
    margin-top: 3em;
}

.ip-section .ry-flex #with-image {
    width: 40%;
}

.ip-section .ry-flex #with-text {
    width: 55%;
}

#ip-sec3 {
    background: var(--color-primary);
    padding: 11em 0px;
    position: relative;
}

#ip-sec3 .ry-container {
    max-width: 1300px;
    width: 90%;
    position: relative;
}

div.team-bio-wrapper p, #ip-sec3 #with-text h4 {
    color: rgb(255, 255, 255);
}

div#ip-sec3 #with-text h4 {
    font-weight: 500 !important;
    font-size: 26px !important;
}

#ip-sec3 h2 {
    color: rgb(255, 255, 255) !important;
    margin-bottom: 1em;
}

#ip-sec3 .ry-btn.ry-btn-primary {
    background: var(--color-secondary);
    margin-top: 1.5em;
}

.team-bio-wrapper #with-image {
    width: 20%;
}

#ip-sec3 .team-bio-wrapper #with-image {
    width: 31%;
}

div#ip-sec3 div.team-bio-wrapper #with-text {
    width: 70%;
}

#ip-sec3::before {
    content: "";
    position: absolute;
    left: 10%;
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/shape.png") 0% 0% / contain no-repeat;
    width: 186px;
    height: 99px;
    top: 0px;
    z-index: 999;
}

#ip-sec3::after {
    content: "";
    position: absolute;
    left: 0%;
    right: 0%;
    margin: auto;
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/shape_yellow.png") 0% 0% / contain no-repeat;
    width: 186px;
    height: 99px;
    bottom: -99px;
    z-index: 999;
    transform: rotate(0deg);
}

div#ip-sec3 .ry-text ul li {
    position: relative;
    list-style: none;
}

.ry-text ul {
    padding: 0px;
    margin: 20px 0px;
}

div#ip-sec3 .ry-text ul li p {
    font-weight: bold !important;
    position: relative;
}

div#ip-sec3 .ry-text ul li {
    position: relative;
    display: flex;
    align-items: center;
}

div#ip-sec3 .ry-text ul li::before {
    background-image: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/bio_list_icon_1.png");
    background-position: initial;
    background-repeat: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    width: 25px;
    height: 25px;
    content: "";
    left: 0px;
    display: inline-block;
    margin-right: 15px;
    background-size: contain !important;
}

div#ip-sec4 {
    padding: 12em 0px;
}

div#ip-sec4 div#with-text h4 {
    margin-bottom: 20px;
}

.services-slider .services-slide img {
    max-width: 150px;
}

.services-block img {
    max-width: 100px;
    margin: auto;
    object-fit: contain;
    height: 100px;
}

.services-slider .slick-track {
    display: flex;
    gap: 0px 30px;
}

.services-block {
    border-radius: 30px;
    background: rgb(255, 255, 255);
}

.inner-services-block {
    padding: 3em 1em;
    height: 50vh;
}

#ip-sec5 {
    padding: 10em 0px 15em;
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/hp_assets/services_bg.png") 0% 0% / cover;
}

#ip-sec5 .ry-heading h2, #ip-sec5 .ry-heading p, #ip-sec5 .ry-text p {
    color: rgb(255, 255, 255);
}

#services-slider-btn {
    margin: 2em auto 0px;
}

.services-slider .slick-dots {
    justify-content: center;
    align-items: center;
    gap: 0px 10px;
    display: flex !important;
}

.services-slider .slick-dots ul {
    padding: 0px;
}

.services-slider .slick-dots li {
    list-style: none;
}

.services-slider .slick-dots li button {
    width: 12px;
    height: 12px;
    font-size: 0px;
    background: var(--color-primary);
    border-radius: 100%;
}

.services-slider .slick-dots li.slick-active button {
    background: rgb(255, 255, 255) !important;
}

.inner-services-block h4 {
    color: rgb(51, 51, 51);
    text-align: center;
    margin: 1em 0px 0.5em;
    font-family: var(--font-default) !important;
    font-size: 25px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
}

.inner-services-block .ry-icon {
    background: var(--color-primary);
    margin: 1em auto;
    width: 40px;
    height: 40px;
}

.inner-services-block .ry-icon svg {
    fill: rgb(255, 255, 255);
    width: 20px;
    height: 20px;
}

.services-slider {
    margin: 3em 0px;
    padding: 0px 3em !important;
}

.services-slide-arrow.prev-arrow.slick-arrow {
    background: transparent;
    position: absolute;
    width: 20px;
    height: 20px;
    top: 44%;
    border-top: 2px solid rgb(255, 255, 255);
    border-left: 2px solid rgb(255, 255, 255);
    left: 0%;
    transform: rotate(-45deg);
}

.services-slide-arrow.next-arrow.slick-arrow {
    background: transparent;
    position: absolute;
    width: 20px;
    height: 20px;
    top: 44%;
    border-top: 2px solid rgb(255, 255, 255);
    border-left: 2px solid rgb(255, 255, 255);
    right: 0%;
    transform: rotate(135deg);
}

div#ip-sec6 {
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/amazing_team_sec.png") 0% 0% / cover;
    padding: 11em 0px 15em;
    margin-top: -6em;
    z-index: 1;
}

div#ip-sec6 div#with-image-text h2, div#ip-sec6 div#with-image-text h4 {
    color: rgb(255, 255, 255);
    font-family: Manrope;
}

div#ip-sec6 div#with-image-text h4 {
    font-size: 25px;
    letter-spacing: 0px;
}

div#ip-sec6 div#with-image-text h2 {
    margin-bottom: 10px;
}

div#flex-box-wrap {
    align-items: flex-start;
    gap: 2em 1em;
    margin-top: 5em;
}

div#flex-box-wrap .ry-each > div {
    background: rgb(255, 255, 255);
    padding: 3em;
    height: 100%;
    border-radius: 20px;
}

div#flex-box-wrap .ry-each {
    height: 400px;
    width: 31.8%;
}

div#ip-sec6 div#with-image-text div#with-image {
    width: 50%;
}

div#ip-sec7 {
    padding: 15em 0px 17em;
    background: var(--color-secondary);
    margin-top: -6em;
}

div#ip-sec7 .ry-heading h2 {
    color: rgb(255, 255, 255);
}

body.default .why-choose-box h5 {
    font-size: 23px;
    margin-bottom: 18px;
    font-family: var(--font-default) !important;
    font-weight: 400 !important;
    line-height: 1.1 !important;
}

div#bg-transparent-box h4 {
    font-family: Manrope;
    color: var(--color-primary) !important;
    font-size: 25px !important;
}

div#bg-transparent-box > div {
    background: transparent !important;
    padding-left: 0px !important;
}

div#bg-transparent-box > div p {
    color: rgb(255, 255, 255);
}

div#flex-box-wrap {
    flex-wrap: wrap;
}

div#ip-sec7 .ry-each {
    height: 260px;
}

div#ip-faq-section {
    background: url(https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/faq_bg.png);
    margin: -8em 0px 0px;
    padding: 17em 0px 12em !important;
    background-position: 38%;
    background-repeat: no-repeat;
    background-size: cover;
}

div#ip-faq-section .accordion-custom .ry-heading::after {
    content: "";
    font-family: fontawesome;
    position: absolute;
    right: 3%;
}

div#ip-faq-section .accordion-custom .ui-state-active::after {
    content: "";
}

#ip-faq-section #with-image-text {
    align-items: flex-start;
}

div#ip-faq-section .ry-heading h2, div#ip-faq-section .ry-heading h4 {
    color: rgb(255, 255, 255) !important;
}

div#ip-faq-section .ry-heading h2, div#ip-faq-section .ry-heading h4 {
    color: rgb(255, 255, 255);
}

div#ip-faq-section .ry-heading h4 {
    opacity: 0.8;
    font-size: 25px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: var(--font-title);
}

#faq-btn {
    background: var(--color-secondary);
    margin: 1.5em 0px 0px;
}

div#services-bottom-appointment div#bottom-app-section .ry-content h2 span {
    color: rgb(255, 255, 255) !important;
}

div#services-bottom-appointment a#bottom-app-btn {
    background: rgb(51, 51, 51) !important;
}

div#bottom-app-section {
    background-size: cover;
    background-position: center top;
    height: 700px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

div#bottom-app-section .ry-content {
    position: absolute;
    top: 55%;
    left: 50%;
    transform: translate(-50%, -50%);
}

div#bottom-app-section .ry-content h2, div#bottom-app-section .ry-content p {
    color: rgb(255, 255, 255);
}

a#bottom-app-btn {
    margin: 2em auto 0px;
}

div#bottom-app-section p {
    margin: 2em 0px 2.5em;
}

div#bottom-app-section .ry-content h2 .span-1 {
    color: var(--color-primary);
}

div#ip-faq-section .accordion-custom .ry-heading {
    background: rgb(255, 255, 255);
    color: rgb(51, 51, 51);
    padding: 30px;
    border-radius: 15px;
    font-weight: bold !important;
}

div#ip-faq-section .accordion-custom .ui-state-active {
    border-radius: 10px 10px 0px 0px;
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: initial;
}

div#ip-faq-section div#with-image {
    width: 65%;
}

div#ip-faq-section .accordion-custom .ui-state-active .ry-heading {
    border-bottom-left-radius: 0px !important;
}

div#ip-faq-section .each-item .content {
    border: transparent;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    padding: 0px 2em 2em 1.2em;
	margin-top: -1px;
}

.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
    display: none !important;
}

@media (min-width: 1199px) {
    .services-slider .slick-dots {
        display: none !important;
    }
}

.pg-menu-wrap .ry-each a {
    transition: color 0.3s;
    position: relative;
    color: rgb(255, 255, 255);
    font-size: clamp(16px, 10.9362px + 0.212766vw, 16px) !important;
}

.pg-menu-wrap .menu-toggle {
    display: none;
    background: transparent;
    color: rgb(255, 255, 255);
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: initial;
    padding: 10px 15px;
    font-size: 1rem;
    cursor: pointer;
    width: 100%;
    text-align: center;
    transition: 0.3s linear;
}

.pg-menu-wrap .menu-links .ry-each a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 1em 0px;
}

.pg-menu-wrap .menu-links .ry-each img {
    height: 60px;
    max-width: 60px;
    object-fit: contain;
}

@media (min-width: 1600px) {
    .pg-menu-wrap .ry-each a {
        font-size: 18px !important;
    }
}

@media (min-width: 1200px) {
    .pg-menu-wrap .menu-links {
        display: flex;
        justify-content: space-between;
        gap: 0px 10px;
        align-items: center;
        margin-bottom: 0px;
    }

    div.hp-gallery-slide {
        margin-top: 2em;
    }

    div#serv-mobile-link {
        display: none !important;
    }

    div.innerpage .col2-list ul {
        column-count: 2;
    }

    .featured-carousel.owl-carousel.owl-loaded.owl-drag {
        left: 5% !important;
    }

    div#custom-team-page-banner, div#custom-team-page-banner img {
        margin-bottom: -5em;
        height: 450px;
    }

    div#custom-team-page-banner .ip-custom-banner-title {
        top: 41%;
    }
}

@media (max-width: 1199px) {
    .pg-menu-wrap .menu-toggle {
        display: block;
        padding: 10px 0px;
    }

    div.page-menu {
        padding: 0px;
		display:none !important;
    }

    .pg-menu-wrap .ry-each a, .pg-menu-wrap .menu-toggle {
        font-size: 18px !important;
    }

    div.ip-custom-banner, div.ip-custom-banner img {
        height: 300px !important;
    }

    .ip-custom-banner-title .ry-heading h2 {
        font-size: 30px !important;
    }

    .ip-custom-banner-title .ry-heading h4 {
        font-size: 20px;
        letter-spacing: 2px;
        line-height: 1.3;
    }

    .ip-custom-banner-title {
        top: initial;
        bottom: 10%;
    }

    .pg-menu-wrap .menu-links {
        transition: max-height 0.4s;
        opacity: 0;
        position: absolute;
        max-height: 0px;
        left: 0px;
        right: 0px;
        width: 100%;
        padding-top: 2em;
        display: none;
    }

    .pg-menu-wrap .menu-links.open {
        display: block;
        z-index: 9999;
        background: var(--color-secondary);
        max-height: 100vh;
        opacity: 1;
        visibility: visible;
        height: 100vh;
    }

    div.page-menu .ry-container {
        max-width: 100% !important;
    }

    .pg-menu-wrap .ry-each a {
        padding: 10px 20px;
        display: block;
        letter-spacing: 0px;
        text-align: center;
        font-weight: normal !important;
    }
}

@media (max-width: 1080px) {
    div.ip-custom-banner {
        margin-top: 80px !important;
    }
}

.pg-menu-wrap {
    display: flex;
    gap: 0px 10px;
    justify-content: space-around;
    align-items: center;
}

.pg-menu-wrap a:hover {
    color: var(--color-primary);
}

.pg-menu-wrap .ry-each a.active {
    color: var(--color-primary);
}

.pg-menu-wrap .ry-each a.active::after, .pg-menu-wrap .ry-each a:hover::after {
    filter: none;
    transform: rotate(90deg);
}

div.menu-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

div.menu-links a {
    font-size: 18px;
    font-weight: 400;
    color: rgb(255, 255, 255) !important;
}

@media (max-width: 500px) {
    .pg-menu-wrap {
        height: 50px;
    }
}

@media (max-width: 1660px) {
    .ip-section .ry-heading h2 {
        font-size: 45px;
    }

    .ip-custom-banner-title .ry-heading h2 {
        font-size: 45px;
    }

    div.ip-custom-banner, div.ip-custom-banner img {
        height: 300px;
    }

    .default .ip-section .ry-container {
        max-width: 85% !important;
    }

    div.ip-section {
        padding-bottom: 8em !important;
    }

    #ip-sec3 {
        padding: 9em 0px 10em !important;
    }

    #ip-sec3 .ry-container {
        width: 80%;
    }

    #ip-sec3 div.team-bio-wrapper p {
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 6;
        -webkit-box-orient: vertical;
    }

    div#ip-sec4 {
        padding-top: 9em !important;
    }

    div#ip-sec4 #with-image-text {
        align-items: flex-start;
    }

    div#ip-sec4 #with-image {
    }

    #ip-sec5 {
        padding: 8em 0px 14em !important;
        background-position: center center !important;
    }

    .inner-services-block h4 {
        font-size: 20px !important;
        line-height: 1.3 !important;
    }

    .default #ip-sec5 .ry-container {
        max-width: 90%;
    }

    div#ip-sec6 div#flex-box-wrap .ry-each {
        height: 500px;
    }

    div#flex-box-wrap .ry-each > div {
        padding: 2em;
    }

    #ip-sec7 div#flex-box-wrap {
    }

    #ip-sec7 div#flex-box-wrap .ry-each {
        height: 350px;
    }

    #ip-sec7 {
        padding: 12em 0px !important;
        margin-top: -5em !important;
    }

    div#ip-faq-section {
        padding: 13em 0px 5em !important;
    }

    div#ip-faq-section #with-image-text {
        align-items: flex-start;
    }
}

@media (max-width: 1199px) {
    div.ip-section {
        padding: 4em 0px !important;
    }


    div#white-bg-top {
    padding-top: 0 !important;
}

div#ip-faq-section .accordion-custom .ry-heading {
    font-size: 16px !important;
}

div#ip-faq-section .accordion-custom .ry-heading::after {
    right: 5%;
    top: 40%;
}
    div#ip-sec4 #with-image-text {
        margin-top: 0px !important;
    }

    .ip-section .ry-flex {
        flex-direction: column !important;
        gap: 2em 0px !important;
        margin-top: 3em !important;
    }

    .feat-services-block #with-image-text:nth-child(even) {
        flex-direction:column-reverse !important;
        margin: 3em 0 !important;
    }

    .ip-section .ry-flex div#with-text, .ip-section .ry-flex div#with-image {
        width: 100% !important;
    }

    div#ip-faq-section .accordion-custom .ry-heading {
    font-size: 16px !important;
   }

    .default .ip-section .ry-container {
        max-width: 90% !important;
    }

    .ip-section .ry-heading h2 {
        text-align: center !important;
        font-size: 30px !important;
        line-height: 1.4 !important;
    }

    .ip-section .ry-heading h2 {
        margin-bottom:10px !important;
    }

    div.ip-section .ry-text p {
        text-align: center !important;
    }

    div.ip-section .ry-flex div#with-image img {
        max-width: 350px;
        margin: 0px auto !important;
    }

    .ry-heading.aos-init {
        /* opacity: 1; */
        /* transform: none !important; */
        /* transition: none !important; */
    }

    div.ip-section .ry-text h4, div.ip-section .ry-text p {
        text-align: center !important;
    }

    div#ip-sec3 {
        padding: 4em 0px !important;
    }

    #ip-sec3::before, #ip-sec3::after {
        display: none;
    }

    div#ip-sec3 .ry-text ul li {
        justify-content: center;
    }

    div.team-bio-wrapper ol.carousel-indicators {
        position: static !important;
        justify-content: center !important;
        left: 0px !important;
        text-align: center !important;
        margin: 1em auto !important;
    }

    #ip-sec3 .ry-btn.ry-btn-primary {
        margin: 2em auto 0px !important;
    }

    div#ip-sec4 {
        padding: 4em 0px !important;
    }

    div#ip-sec5 {
        padding: 4em 0px !important;
    }

    div#ip-sec6 {
        margin-top: -1px !important;
        background: var(--color-primary) !important;
    }

    div#ip-sec6 div#flex-box-wrap .ry-each {
        width: 100% !important;
        height: 100% !important;
    }

    div#ip-sec6 div#with-image-text {
        margin-top: 0px !important;
    }

    div#ip-sec6 div#flex-box-wrap .ry-each p {
        text-align: center !important;
    }

    div#ip-sec7 {
        padding: 4em 0px !important;
        margin-top: -1px !important;
    }

    #ip-sec7 div#flex-box-wrap .ry-each {
        height: auto !important;
        width: 100% !important;
    }

    #ip-sec7 div#flex-box-wrap {
        margin-top: 0px !important;
    }

    div#bg-transparent-box > div {
        padding: 0px !important;
    }

    div#bg-transparent-box h4 {
        text-align: center;
    }

    div#bg-transparent-box p {
        text-align: center !important;
    }

    #ip-sec7 div#flex-box-wrap .ry-each h5, #ip-sec7 div#flex-box-wrap .ry-each p {
        text-align: center !important;
    }

    div#ip-faq-section {
        margin: -1px 0px 0px !important;
        padding: 4em 0px !important;
        background: var(--color-primary) !important;
    }

    div#ip-faq-section #with-image-text {
        margin-top: 0px !important;
    }

    div#ip-faq-section .content p {
        text-align: left !important;
        font-size: 16px !important;
    }

    div.homepage-reviews-section {
        padding: 4em 1em !important;
    }

    div#bottom-app-section {
        height: auto !important;
        padding: 8em 0px 3em !important;
    }

    div#bottom-app-section .ry-container {
    }

    div#bottom-app-section .ry-content {
        position: static !important;
        transform: initial !important;
    }

    div#bottom-app-section .ry-el-bg img {
        display: none;
    }

    div#bottom-app-section .ry-el-bg img {
        display: none !important;
    }

    div#bottom-app-section img.img-responsive {
        display: none !important;
    }

    div#ip-sec6 div#with-image-text h4, div#ip-faq-section .ry-heading h4 {
        text-align: center !important;
    }

    div#ip-sec2 #with-image-text {
        margin-top: 1em !important;
    }
}

@media (max-width: 500px) {
    div.ip-section .ry-text h4 {
        font-size: 20px !important;
        line-height: 1.5 !important;
    }
}

div#doc-sec {
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/dr_bg.png") center top / cover;
    position: relative;
    padding: 13em 0px 0px !important;
}

div#doc-sec a.ry-btn.ry-btn-primary {
    margin: 2em 0px 0px;
}

div#doc-sec #with-image-text {
    align-items: flex-end;
    justify-content: flex-end;
}

div#doc-sec #with-image-text #with-image {
    width: 43%;
    position: absolute;
    bottom: 0px;
    left: -7%;
}

div#doc-sec #with-image-text #with-image img {
    border-radius: 0px;
}

div#doc-sec div#with-text {
    position: relative;
    top: -4em;
    width: 57%;
}

div#doc-page-blocks {
    padding: 8em 0px;
    background: var(--color-primary);
}

div#doc-page-blocks .ry-container {
}

div#doc-page-blocks div#with-text h2, div#doc-page-blocks div#with-text p {
    color: rgb(255, 255, 255);
}

div#doc-page-blocks a.ry-btn.ry-btn-primary {
    background: var(--color-secondary);
    margin: 2em 0px;
}

div#doc-page-blocks div#with-text {
    max-width: 900px;
    margin: auto;
    float: right;
}

div#doc-page-blocks div#with-image-text:first-child div#with-text {
    padding-left: 0px;
}

div#doc-page-blocks div#with-image-text:first-child {
    margin-bottom: 7em;
}

div#doc-page-blocks div#with-image-text:nth-child(2) {
    flex-direction: row-reverse;
}

div#doc-page-blocks div#with-image-text:nth-child(2) div#with-text {
    padding-right: 0;
}

div.dr-page-services {
    background: url(https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/dr_services_bg.jpg) !important;
    padding: 8em 0px 14em 0px !important;
}

div#doc-page-blocks::before {
    content: "";
    position: absolute;
    right: 15%;
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/shape.png") 0% 0% / contain no-repeat;
    width: 186px;
    height: 99px;
    top: 0px;
    z-index: 999;
}

.dr-page-services .slider-title p {
    max-width: 350px;
    margin: auto;
    line-height: 1.5;
}

.dr-page-services .ry-heading p {
    max-width: 1100px;
    margin: auto;
    text-align: center;
}

.dr-page-services {
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/dr_services_bg.jpg") !important;
}

.ip-section .ry-text ul li p {
    text-align: left !important;
}

div#ip-sec3 .ry-text ul li::before {
    background-size: contain !important;
    background-repeat: no-repeat !important;
}

.team-slider {
    flex-direction: column;
    display: flex;
}

.team-slider .ry-text p {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
}

#doc-page-blocks .ry-text ul li {
    color: rgb(255, 255, 255);
}

@media (max-width: 1500px) {
    div#doc-sec #with-image-text #with-image {
        position: static;
        width: 40%;
    }

    div#doc-sec #with-image-text #with-image img {
        background: rgb(254, 254, 254);
        border-radius: 100%;
        object-fit: contain;
        max-width: 400px;
        height: 400px;
        object-position: center bottom;
        width: 400px;
        border: 1px solid rgba(102, 102, 102, 0.14);
    }

    div#doc-sec #with-image-text {
        align-items: flex-start;
        justify-content: space-around;
        margin-top: 0px !important;
    }

    div#doc-sec {
        padding: 9em 0px 5em !important;
    }

    div#doc-sec div#with-text {
        top: 0px !important;
        width: 60%;
    }
}

@media (max-width: 1199px) {
    div#doc-sec {
        padding: 3em 0px 4em !important;
    }

    div#doc-sec #with-image-text #with-image img {
        height: 350px;
    }

    div#doc-sec {
        background: rgb(255, 255, 255) !important;
    }

    div#doc-sec a.ry-btn.ry-btn-primary {
        margin: 1em;
        max-width: fit-content !important;
    }

    div#doc-page-blocks::before {
        left: 0px;
        right: 0px;
        margin: auto;
        width: 100px;
        height: 80px;
    }

    div#doc-page-blocks div#with-image-text:first-child, div#doc-page-blocks div#with-image-text:nth-child(2) {
        padding: 0px 1em;
        margin-bottom: 1em !important;
        margin-top: 1em !important;
    }

    .services-slide-arrow.next-arrow.slick-arrow, .services-slide-arrow.prev-arrow.slick-arrow {
        display: none !important;
    }

    .services-slider {
        padding: 0px !important;
    }

    .services-slider .slick-dots {
        margin-top: 2em;
    }
}

@media (max-width: 768px) {
    .services-slider .slick-track {
        gap: 0px !important;
    }
}

body[data-page-name="vision-care-products"] .ip-section .ry-container {
    max-width: 1400px;
    width: 90%;
}

.feature-list .serv-list {
    max-width: 550px;
}

.ip-section .eye-care div#with-text div#serv-white-list {
    max-width: 100% !important;
}

.serv-list li a:hover, .serv-list:hover li {
    font-weight: bold !important;
    color: var(--color-secondary);
}

.serv-list li:hover a::after {
    color: rgb(255, 255, 255) !important;
    background: var(--color-primary) !important;
}

div#white-bg {
    padding: 8em 0px;
}

a#page-btn {
    margin: 1.5em 0px 0px;
}

.serv-contact-lens div#with-image-text {
    margin-top: 0px;
}

div#serv-white-list li a {
    color: rgb(255, 255, 255) !important;
}

div#serv-white-list li:hover a::after {
    border-color: var(--color-secondary);
    background: var(--color-secondary) !important;
}

.serv-list li a::after {
    background: transparent;
    content: "";
    position: absolute;
    width: 40px;
    height: 40px;
    right: 0px;
    border-radius: 100%;
    border: 1px solid rgb(202, 160, 3);
    font-family: FontAwesome;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 15px;
    padding-left: 4px;
}

.serv-list li {
    position: relative;
    width: 100%;
}

.serv-list li:hover a {
    font-weight: bold;
}

div#serv-white-list li {
    border-bottom: 1px solid rgb(255, 255, 255);
}

div#serv-white-list li a::after {
    background: transparent;
    border: 1px solid rgb(255, 255, 255);
}

.feature-list div#with-image img {
    display: block;
    width: 100%;
    transition: opacity 0.3s;
    border-radius: 30px;
}

.serv-list li a {
    color: rgb(51, 51, 51);
    font-size: 22px;
}

.feature-list #with-image img.is-changing {
    opacity: 0;
}

div.feature-list {
    margin-top: 2em;
}

div.feature-list #with-image, div.feature-list #with-text {
    width: 50% !important;
}

.serv-list li {
    list-style: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    padding: 15px 0px;
    cursor: pointer;
}

div.feature-list #with-text ul {
    padding: 0px;
}

div#yellow-bg {
    background: var(--color-primary);
    padding: 11em 0px;
    position: relative;
    margin-bottom: -1px;
}

div#yellow-bg::before {
    content: "";
    position: absolute;
    left: 0px;
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/shape.png") 0% 0% / contain no-repeat;
    width: 186px;
    height: 99px;
    top: 0px;
    z-index: 999;
    right: 0px;
    margin: auto;
}

div#yellow-bg::after {
    content: "";
    position: absolute;
    left: 0%;
    right: 0%;
    margin: auto;
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/shape_yellow.png") 0% 0% / contain no-repeat;
    width: 186px;
    height: 99px;
    bottom: -98px;
    z-index: 1;
    transform: rotate(0deg);
}

div#yellow-bg .ry-heading h2, div#black-bg .ry-heading h2 {
    color: rgb(255, 255, 255);
}

div#black-bg {
    padding: 13em 0px;
    background: var(--color-secondary);
}

div#black-bg::after {
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/shape_black.png");
    content: "";
    position: absolute;
    left: 0%;
    right: 0px;
    margin: auto;
    width: 186px;
    height: 99px;
    bottom: -99px;
    z-index: 999999;
    transform: rotate(360deg);
}

div#black-bg div#serv-white-list li:hover a::after {
    background: var(--color-primary) !important;
}

div#black-bg div#serv-white-list li:hover a {
    color: var(--color-primary) !important;
}

.ip-section .eye-care {
    flex-direction: column;
    gap: 4em 0px !important;
}

.ip-section .eye-care div#with-image, .eye-care div#with-text {
    width: 100% !important;
}

.ip-section .eye-care div#with-text div#serv-white-list {
    column-count: 2;
    gap: 0px 8%;
}

div.vision-correction::before {
    margin: auto;
    left: 0px !important;
    right: 0px !important;
}

div.vision-correction::after {
    right: initial !important;
    left: 15% !important;
}

.eye-conditions::before {
    right: initial !important;
    left: 20% !important;
}

.serv-emergency::after {
    left: initial !important;
    right: 20% !important;
}

div#services-bottom-appointment div#bottom-app-section {
    background-image: url("https://www.royacdn.com/unsafe/150x0/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/services_cta_bg.jpg") !important;
}

@media (max-width: 1199px) {
    div#yellow-bg::before, div#yellow-bg::after, div#black-bg::after {
        width: 80px !important;
        height: 80px !important;
        right: 0px !important;
        left: 0px !important;
        margin: auto !important;
        background-size: contain !important;
        background-repeat: no-repeat !important;
    }

    div#yellow-bg::after {
        bottom: -7%;
    }

    div.homepage-reviews-section .rev-text p {
    text-align: center !important;
}

div.homepage-reviews-section .rev-name p {
    text-align: center !important;
}

    div#rev-btn {
    margin: 7em auto 0 !important;
}

    div.feat-services-block div#with-image-text {
    margin-top: 0 !important;
}

    .serv-list li a {
        font-size: 16px !important;
    }

    .serv-list li p {
        text-align: left !important;
    }

    .serv-list li a::after {
        width: 30px;
        height: 30px;
        top: 18px;
    }

    div#yellow-bg, div#black-bg {
        padding: 6em 0px !important;
    }

    div#black-bg::after {
        top: initial;
        bottom: -80px;
    }

    div#yellow-bg::after {
        bottom: -78px !important;
    }

    body.default .eye-exams {
        padding: 4em 0px !important;
    }

    body.default .eye-exams #with-image-text {
        margin-top: 0px !important;
    }

    #page-btn {
        margin: 1.5em auto 0px !important;
    }

    div#white-bg #with-image-text {
        margin-top: 0px !important;
    }

    div#white-bg #with-image-text p {
        text-align: center !important;
    }

    .eye-conditions #with-image-text, .serv-contact-lens #with-image-text {
        flex-direction: column-reverse !important;
        margin-top: 0px !important;
    }

    .ip-section .feature-list {
        margin-top: 0px !important;
    }
}

@media (max-width: 767px) {
    .ip-section .eye-care div#with-text div#serv-white-list {
        column-count: 1 !important;
    }
}

div#white-bg-top {
    padding: 11em 0 8em;
    background: url(https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/top_white_background.png);
    background-size: contain;
    background-position: top center;
}


div.dot:hover {
    background: var(--color-primary);
    color: rgb(255, 255, 255) !important;
}

div.dot:hover p {
    color: rgb(255, 255, 255) !important;
}

.patient-education img {
    border-radius: 40px;
}

div.articles-inner-block .article-header {
    display: flex;
    background: var(--color-secondary);
    justify-content: space-between;
    align-items: center;
    padding: 2em;
    border-radius: 30px;
}

div.articles-inner-block .article-header img {
    max-width: 150px;
}

div.articles-inner-block .article-header p, div.articles-inner-block .article-header h4 {
    color: rgb(255, 255, 255);
}

div.articles-inner-block .article-header .ry-text {
    width: 80%;
}

div.articles-inner-block .article-header h4 {
    margin-top: 1.5em;
    font-size: 28px !important;
    line-height: 1.5 !important;
}

div.article-verbiage {
    padding: 2em 4em;
}

.ask-professional #with-image {
    width: 60% !important;
}

.ask-professional #with-text h2 {
    color: rgb(255, 255, 255);
    margin-bottom: 15px;
}

.ask-professional #with-text p {
    color: rgb(255, 255, 255);
}

div.articles-button {
    margin-top: 3em;
}

div.ask-professional .services-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 0px;
    justify-content: space-between;
}

div.ask-professional .services-list .service-button {
    background: rgb(255, 255, 255);
    border-radius: 10px;
    width: 31.5%;
    text-align: center;
}

div.ask-professional .service-button.active, div.ask-professional .service-button:hover {
    background: var(--color-secondary);
    border: 1px solid var(--color-secondary);
    color: rgb(255, 255, 255) !important;
}

div.ask-professional .ry-flex #with-text {
    width: 45%;
}

@media (max-width: 1660px) {
    div.ask-professional .services-list .service-button {
        font-size: 15px !important;
    }
}

#table-flex {
    gap: 0px 3%;
    max-width: 1200px;
    margin: 3em auto 0px;
    float: none;
}

#table-flex #with-text {
    width: 31%;
}

#table-flex .table-header {
    background: var(--color-secondary);
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#table-flex #with-text .table-header p {
    color: rgb(255, 255, 255);
}

.table-inner {
    border-top-left-radius: 20px;
}

#table-flex ul {
    padding: 0px !important;
    margin: 0 !important;
}

#table-flex ul li {
    list-style: none;
}

#table-flex ul li p {
    text-align: center;
    line-height: 1.3;
}

#table-flex ul li {
    height: 55px;
    background: rgb(255, 255, 255);
    display: flex;
    align-items: center;
    justify-content: center;
}

#table-flex ul li:nth-child(2n+1) {
    background: rgb(234, 234, 234);
}

#table-flex ul li:last-child {
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

div#white-bg-tab .nav-tabs a {
    background: var(--color-secondary) !important;
}
div#white-bg-tab ul.nav.nav-tabs {
    border-bottom: 1px solid rgb(51 51 51 / 18%) !important;
    gap: 10px 0 !important;
    display: flex;
    flex-wrap: wrap;
    padding: 0.2em 0 2em !important;
}

div#white-bg-tab li.active a {
    border: 1px solid #333 !important;
}

div#white-bg-tab .nav-tabs a:hover, div#white-bg-tab li.active a {
    background:var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

div#white-bg-tab .tab-content h4 {
    margin-top: 0.5em;
}



#yellow-bg .ry-heading p {
    color: rgb(255, 255, 255);
}

.feat-services-block::after {
    display: none !important;
}

.with-tab p {
    color: rgb(255, 255, 255);
}

.with-tab .tab-widget {
    margin: 2em 0px 0px;
}

div.tabs-widget .nav-tabs a {
    color: rgb(255, 255, 255);
    border-radius: 30px;
    width: 100%;
    font-size: 16px;
    border: 1px solid rgb(255, 255, 255);
    cursor: pointer;
    white-space: nowrap;
    background: transparent !important;
}

div.tabs-widget > .tab-content {
    border-width: medium !important;
    border-style: none !important;
    border-color: currentcolor !important;
    border-image: initial !important;
}

.with-tab .nav-tabs {
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: initial;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 14px 0;
    padding-left: 0 !important;
    margin: 1.5em 0 0 !important;
}

div.tabs-widget .nav > li {
    margin-right: 10px;
}

div.ip-section div.tabs-widget h4, .feat-services-block .with-tab h4 {
    color: var(--color-primary) !important;
    margin: 1.5em 0px 0.5em;
    font-size: 22px !important;
    =: 25px !important;
}

div.tabs-widget .nav-tabs a:hover, div.tabs-widget a:focus, div.tabs-widget a:active, 
div.tabs-widget li.active a, div.tabs-widget a:focus {
    border-color: var(--color-primary);
    background: var(--color-primary) !important;
    color: #fff !important;
}

.feat-services-block .with-tab {
    width: 50% !important;
}

div.feat-services-block #with-image img {
    padding-right: 1.5em;
    border-top-right-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
}

div.feat-services-block #with-image::after {
    background: transparent;
    right: 0px;
    width: 1px;
    height: 108%;
    content: "";
    z-index: 3;
    position: absolute;
    border: 1.5px dashed rgb(255, 255, 255);
    transform: translate(-50%, -50%);
    top: 50%;
}

.feat-services-block #with-image-text:nth-child(even) {
    margin: 8em 0px;
}

.feat-services-block #with-image-text:nth-child(even) #with-image::after {
    left: 0px;
}

.feat-services-block #with-image-text:nth-child(even) .img {
    padding-right: 0px;
    opacity: 0;
    padding-left: 1.5em !important;
}

.feat-services-block #with-image-text:nth-child(even) #with-image img {
    padding-left: 1.5em;
    padding-right: 0px;
    border-radius: 0px 40px 40px 0px !important;
}

div.feat-services-block {
    padding-bottom: 15em !important;
    padding-top: 11em !important;
}

.tabs-widget > .tab-content {
    border: transparent !important;
}

div.white-bg-quote {
    background: rgb(255, 255, 255);
    padding: 5em;
    border-radius: 40px;
}

div.white-bg-quote .ry-heading h2 {
    color: rgb(51, 51, 51) !important;
    line-height: 1.2;
}

div.white-bg-quote::after {
    content: "";
    position: absolute;
    left: 10%;
    background: url("https://www.royacdn.com/unsafe/smart/Site-0675dd93-95fa-4645-a10d-f95d4d06bf57/innerpage_assets/shape.png") 0% 0% / contain no-repeat;
    width: 170px;
    height: 80px;
    bottom: -79px;
    z-index: 1;
    margin: auto;
}

div.white-bg-quote {
    position: relative;
}

div#with-margin-top {
    margin-top: 10em !important;
}

div.white-bg-quote {
    margin-top: 0px !important;
}

.feat-services-block ul li {
    color: #fff;
}


@media (max-width: 1660px) {
    .ip-section .ry-flex {
        align-items: flex-start;
    }
}



@media (max-width:1199px) {
	
    .with-tab .nav-tabs {
		justify-content: center;
	}

	div.feat-services-block #with-image::after {
		display: none;
	}

	a#faq-btn {
		margin: 1.5em auto 0 !important;
	}

	div.homepage-reviews-slider .slick-prev.slick-arrow, div.homepage-reviews-slider .slick-next.slick-arrow {
		bottom: -25% !important;
	}

	div.white-bg-quote::after {
		right: 0;
		left: 0;
		width: 100px;
		height: 70px;
		bottom: -70px;
	}

	div.white-bg-quote {
		padding: 2em !important;
	}

	div.feat-services-block #with-image img, .feat-services-block #with-image-text:nth-child(even) #with-image img {
		padding: 0 !important;
		max-width: 300px !important;
		border-radius: 20px !important;
	}

    
	 div.feat-services-block #with-text .tabs-widget>.dropdown button,
    div#white-bg-top  #with-text .tabs-widget>.dropdown button {
		background: var(--color-primary);
		border: 1px solid var(--color-secondary);
		border-radius: 30px;
		text-align: center;
		display: flex;
		justify-content: center;
		color: #fff;
		border: 1px solid #fff;
	}

	div.feat-services-block #with-text .tabs-widget,
    div#white-bg-top #with-text .tabs-widget{
		margin-top: 2em;
	}

	div.feat-services-block #with-text .tabs-widget ul.dropdown-menu,
    div#white-bg-top #with-text .tabs-widget ul.dropdown-menu{
		background: var(--color-secondary);
		padding: 1em;
		text-align: center;
		margin: 0 !important;
		border: 1px solid #ffffff;
		border-radius: 10px;
	}

	div.feat-services-block .tabs-widget>.dropdown .caret,
    div#white-bg-top .tabs-widget>.dropdown .caret {
		margin-left: 9px;
		margin-top: 12px;
		border-top: 7px solid;
		border-right: 7px solid transparent;
		border-left: 7px solid transparent;
	}

	.ip-section .ry-flex div#with-text p {
		text-align: center;
	}


	div.feat-services-block #with-text div.tabs-widget .dropdown-menu>li>a {
		padding: 5px;
		font-size: 16px !important;
		white-space: initial !important;
	}

	#table-flex {
			max-width: 600px;
		}

	.with-tab .nav-tabs {
		justify-content: center;
	}
	
	div.homepage-reviews-section h4, div.white-bg-quote h4 {
		font-size: 20px !important;
		line-height: 1.3;
		letter-spacing: 1px;
	}
}



