/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.medical-team-image img {
    height: 350px;
    object-fit: cover;
    object-position: top;
}
.page-id-1532 .medical-team-image img {
    height: 456px;
    object-fit: cover;
    object-position: top;
}
.wp-block-button.start-now-btn button {
    border-radius: 0px !important;
    border: 1px solid #000 !important;
    background-color: #000;
    color: #fff;
    padding: 20px 50px;
}
.wp-block-buttons.is-layout-flex.wp-block-buttons-is-layout-flex {
    position: absolute;
    bottom: 50px;
}
.two-cards .medical-team-item {
    padding:50px 30px;
    background-color: #fff;
}

.two-cards h3.medical-team-title {
    color: #000;
}

.two-cards p.medical-team-position {
    color: #000;
}

.two-cards a.medical-team-button {
    color: #000;
}
.arrow-right svg {
    width: 80px;
}
.two-cards .medical-team-item {
    flex: 0 0 calc((100% - 100px) / 1) !important;
    scroll-snap-align: start;
}
.cstm-reviews {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;   /* 🔒 one row only */
  overflow-x: auto !important;
  overflow-y: hidden !important;
  width: 100%;
  gap: 150px;
}

/* each review card */
.review-list {
  flex: 0 0 auto !important;
  width: 300px !important;        /* column width */
  box-sizing: border-box;
}


.slider-wrapper .slick-arrow {
    z-index: 99999;
}
.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;
    opacity: .75;
    color: #000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.cstm-carousel button.slick-arrow {
    color: #000;
}
/* Hide default slick arrows */
.newsletter-slick-slider .slick-prev:before,
.newsletter-slick-slider .slick-next:before {
    content: '';
}

/* Custom chevron arrows */
.newsletter-slick-slider .slick-prev,
.newsletter-slick-slider .slick-next {
    width: 0px;
    height: 60px;
    z-index: 10;
}
.newsletter-slick-slider .slick-prev{
    margin-left:-20px;
}

.newsletter-slick-slider .slick-prev:after,
.newsletter-slick-slider .slick-next:after {
    font-size: 60px;
    color: #000;
    font-family: inherit;
    line-height: 1;

}

/* Left Chevron */
.newsletter-slick-slider .slick-prev:after {
    content: '‹';
}

/* Right Chevron */
.newsletter-slick-slider .slick-next:after {
    content: '›';
}

.cstm-carousel button.slick-arrow {
    border: 0px;
    font-size: 0;
}
.cstm-carousel button.slick-arrow:before{
    font-size:50px !important;
    color:#000;
}
.newsletter-list {
    column-count: 2;
    column-gap: 60px;
}

.newsletter-item {
    break-inside: avoid;
    margin-bottom: 14px;
}
.cstm-carousel img {
    box-shadow: -1px -1px 5px 2px rgba(110,97,97,0.75);
    -webkit-box-shadow: -1px -1px 5px 2px rgba(110,97,97,0.75);
    -moz-box-shadow: -1px -1px 5px 2px rgba(110,97,97,0.75);

    transition: transform 0.4s ease, box-shadow 0.4s ease;
    overflow:hidden;
}

.cstm-carousel img:hover {
    transform: scale(1.08);
}
.cstm-carousel .slick-slide {
    display: block;
    padding: 20px 20px 20px 20px
}
.cstm-carousel .elementor-swiper-button.elementor-swiper-button-prev {
    margin-left: -50px;
}
.cstm-carousel .elementor-swiper-button.elementor-swiper-button-next {
    margin-right: -50px;
}
.newsletter-link.active {
    font-weight: 700;
}

.newsletter-item {
    text-decoration: underline;
    margin: 0 !important;
}
.newsletter-item a {
    font-family: Helvetica, sans-serif;
    font-size: 13px;
    line-height: 20px;
    text-decoration: underline;
    color:#000 !important;
}
.cstm-iphone .e-hosted-video.elementor-wrapper.elementor-open-inline {
    width: 90% !important;
    
}

.cstm-iphone .elementor-widget.elementor-widget-video {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius:110px 110px 0px 0px;
}
.page-id-1700 footer#colophon, .page-id-1557 footer#colophon, .page-id-1559 footer#colophon, .page-id-2640 footer#colophon {
    display: none;
}
.cstm-iphone .elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay {
    background-position: unset;
	pointer-events: none;
}

.cstm-iphone video.elementor-video {
    position: relative;
    top: 18px;
    height: 700px;
}
html{
	scroll-behavior: smooth;
}
html, body{
	overflow-x:hidden;
}
.cstm-back span.elementor-button-icon {
    border-radius: 60px;
    border: 0;
    padding: 5px;
    width: 25px;
    height: 25px;
}
.page-id-1553 .open-icon {
    display: none !important;
}
.slide-content {
    display: flex !important;
}
/* @font-face {
    font-family: 'Tungsten-Narrow-Book';
    src: url('/wp-content/themes/hello-theme-child-master/tungsten1/TungstenNarrow-Book.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Tungsten-Narrow-Bold';
    src: url('/wp-content/themes/hello-theme-child-master/tungsten1/Tungsten-Bold.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'Tungsten-Narrow-SemiBold';
    src: url('/wp-content/themes/hello-theme-child-master/tungsten1/Tungsten-Semibold.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Tungsten-Narrow-Medium';
    src: url('/wp-content/themes/hello-theme-child-master/tungsten1/TungstenNarrow-Medium.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
} */
.medical-team-image img {
    height: 350px;
    object-fit: cover;
}
.plan-bg .elementor-background-video-container::before {
    background-size: 100% 100% !important;
}
/* .narrow-book{
	font-family: 'Tungsten-Narrow-Book' !important;
}
.narrow-bold{
	font-family: 'Tungsten-Narrow-Bold' !important;
}
.narrow-book h2 {
    font-family: 'Tungsten-Narrow-SemiBold';
}
h1 {
    font-family: 'Tungsten-Narrow-Book', sans-serif;
}
h2, .narrow-medium {
    font-family: 'Tungsten-Narrow-Medium', sans-serif;
} */
span.red:before {
    content: url("/wp-content/uploads/2025/11/rc-logo-white-2-scaled-e1762963786369.png");
    transform: scale(0.5); /* Adjust scale factor as needed */
    display: inline-block; /* Ensure it behaves like an image */
}

.one-roof:before {
    content: "360° VIEW";
    font-size: 235.809px;
    font-family: "Tungsten Narrow", sans-serif;
	font-weight:700;
    position: relative;
    bottom: -140px;
    color: #E7E7E7;
    z-index: -1;
    left: -173px;
    letter-spacing: 8px;
}
.hfe-creative-menu {
    border-bottom: 0px !important;
}
/* Make wrapper the positioning reference */
.slider-wrapper {
    position: relative;
}
.slider-wrapper button:before{
    display:none;
}
/* Base arrow styling */
.slider-wrapper .slick-arrow:hover{
    background-color:#000;
}
.slider-wrapper .slick-arrow:hover svg{
    fill:#fff !important;
}
.slider-wrapper .slick-arrow {
    background-color:#fff;
    padding:10px;
    position: absolute;
    top: 20px;
    left: 50px;

    width: 44px;
    height: 44px;

    border: none;
    cursor: pointer;
    z-index: 10;

    /* reset slick defaults */
    bottom: auto;
    transform: none;
}

/* Next arrow sits beside prev */
.slider-wrapper .slick-next {
    left: 100px; /* spacing between arrows */
}

/* SVG sizing & color */
.slider-wrapper .slick-arrow svg {
    width: 100%;
    height: 100%;
    fill: #000; /* change color */
}

/* Rotate prev arrow to point left */
.slider-wrapper .slick-prev svg {
    transform: rotate(180deg);
}

/* Hover state */
.slider-wrapper .slick-arrow:hover svg {
    fill: #555;
}

span.red{
    color:#841E31;
    text-shadow: 10px 2px 4px rgba(255, 255, 255, 0.8); /* White shadow */
}
span.red-text{
    color:#841E31;
    font-weight:bold;
}
.program-list ul.elementor-icon-list-items.elementor-inline-items {
    display: grid;
    grid-template-columns: 1fr 1fr !important;
	gap:10px;
}
span.elementor-button-icon {
    border-radius: 60px;
    border: 1px solid;
    padding: 5px;
    width: 25px;
    height: 25px;
}

span.elementor-button-content-wrapper {
    display: flex;
    align-items: center;
}

a.elementor-button.elementor-button-link:hover svg {
    transform: rotate(-270deg);
    transition: transform 0.3s ease;
}
a.elementor-button.elementor-button-link .elementor-button-text {
    transform: translateX(-5px);
    transition: transform 0.3s ease;
}

a.elementor-button.elementor-button-link:hover .elementor-button-text {
    transform: translateX(0);
}

a.elementor-button.elementor-button-link .elementor-button-icon {
    transition: transform 0.3s ease;
}

a.elementor-button.elementor-button-link:hover .elementor-button-icon svg {
    transform: rotate(90deg);
}
.infinite-health:hover {
    background-color: #000;
}
.infinite-health:hover .cstm-infinite-text h2{
    color:#fff;
}
.infinite-health .cstm-infinite-text h2 {
    transform: translateX(0px);
    transition: transform 0.3s ease, color 0.3s ease;
    color: #000;
}
.infinite-wrapper{
    border-bottom:1px solid #CFCFD2;
    padding-bottom:20px;
}
.infinite-wrapper:nth-child(1):hover {
    transform: translateX(-50px);
    color: #fff;
}
.infinite-wrapper:nth-child(2):hover {
    transform: translateX(-50px);
    color: #fff;
}
.infinite-wrapper:nth-child(3):hover {
    transform: translateX(-50px);
    color: #fff;
}
.cstm-form_wrapper p.gform_required_legend{
    display:none;
}
.cstm-form label.gfield_label.gform-field-label{
    color:#ffffff !important;
    font-family: Helvetica, sans-serif;
    font-size:14px;
    font-weight:400;
}

.cstm-slider img {
    transition: filter 0.3s ease; /* Smooth transition */
}

.cstm-slider img:hover {
    filter: grayscale(100%);
}

.gform_button {
    background-color: #841E31;
    color: #fff !important;
    border:0px;
    border-radius:10px !important;
    text-align:center;
    margin:auto;
    width:350px;
    font-size:16px !important;
}

.resilience {
    font-size: 48px;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    padding-right: 5px;
    visibility: hidden;
    animation: typing 4s steps(20) 1s forwards, blink-caret 0.75s step-end infinite;
}
.close-icon:hover {
    transform: rotate(90deg);
}
.full-nav {
  display: none; /* Initially hidden */
}

.open-icon {
  display: block; /* Make sure open icon is visible initially */
  cursor:pointer;
}

.close-icon {
  cursor:pointer;
}
.home .open-icon path, .page-id-709 .open-icon path, .page-id-1181 .open-icon path {
    stroke: #fff;
}
.open-icon path {
    stroke: #000;
}
.open-icon:hover path {
    stroke: #841E31;
}
.cstm-icon-list .elementor-icon-list-icon svg{
	padding:10px;
	border-radius:60px;
	background-color:#fff;
}
@keyframes typing {
    from {
        width: 0;
        visibility: visible;
    }
    to {
        width: 100%;
		visibility: visible;
    }
}

@keyframes blink-caret {
    50% {
        border-color: transparent;
    }
    100% {
        border-color: black;
    }
}

.flip {
    font-size: 48px;
    display: inline-block;
    perspective: 1000px;
    opacity: 0; /* Make sure it's hidden initially */
}

.flip.animate {
    animation: flip-animation 2s ease-out forwards;
}

@keyframes flip-animation {
    0% {
        transform: rotateX(-90deg); /* Start flipping from the top */
        opacity: 0;
    }
    50% {
        transform: rotateX(0deg); /* Flip to the final position */
        opacity: 1;
    }
    100% {
        transform: rotateX(0deg);
        opacity: 1;
    }
}

.one-roof:before {
    z-index: -1;
}
.one-roof{
    z-index:9999;
}
.medical-team-wrapper {
    display: flex; 
	gap: 50px; 
	overflow-x: scroll;
}

.medical-team-item {
    flex: 0 0 calc((100% - 100px) / 3);
    scroll-snap-align: start;
}

.four-cards .medical-team-item {
    flex: 0 0 calc((90% - 150px) / 4);
    scroll-snap-align: start;
}

.medical-team-item {
    border: 1px solid #4F4F4F;
    height: 800px;
    color: #fff;
    width: 33%;
    padding: 5% 3%;
    position:relative;
}

.medical-team-image img {
    width: 100%;
}

h3.medical-team-title {
    font-family: roboto-bold, roboto, sans-serif;
    font-size: 28.7422px;
    letter-spacing: -0.327422px;
    font-weight: bold;
    margin-bottom: 0px;
}
a.medical-team-button {
    border-bottom: 1px solid currentColor;
    transition: border-bottom-width 0.3s ease;
}
.nav-previous a {
    color: #fff;
    border-bottom: 1px solid currentColor;
    transition: border-bottom-width 0.3s ease;
    padding-bottom:10px;
}
.nav-previous a:hover {
    border-bottom-width: 0;
    color:#fff;
}
a.contact, .read-more a {
    color: #fff;
    border-bottom: 1px solid currentColor;
    transition: border-bottom-width 0.3s ease;
    padding-bottom:10px;
}
a.contact:after, .read-more a:after{
    content: "→";
    margin-left: 10px;
}
.single-content p, .single-content ul {
    font-family: helvetica-w01-roman, sans-serif;
    font-size: 19.5px;
    color:#fff;
}
a.medical-team-button:hover, a.contact:hover, .read-more a:hover {
    border-bottom-width: 0;
    color:unset;
}
a.linked-in:after {
    content: "→";
    margin-left: 10px;
}
a.medical-team-button:after {
    content: "→";
    margin-left: 10px;
}
p.medical-team-position {
    font-family: georgia, palatino, "book antiqua", "palatino linotype", serif;
    font-size: 22.3243px;
    letter-spacing: -0.669729px;
    line-height: 22.3243px;
    word-spacing: 0px;
}

a.medical-team-button {
    position: absolute;
    bottom: 50px;
    right: 70px;
    color:#fff;
    font-size:12px;
    font-family: georgia, palatino, "book antiqua", "palatino linotype", serif;
    border-bottom: 1px solid;
    padding-bottom:10px;
    
}

/* Body background */
body.single {
    background-color: #000;
}

.single-wrapper {
    padding: 100px 20px;
}

/* Title style */
h1.single-title {
    font-family: helvetica-w01-roman, sans-serif;
    font-size: 89.538px;
    letter-spacing: -2.68614px;
    line-height: 89.538px;
    text-align: left;
    word-spacing: 0px;
    color: #fff;
    margin: 0 0 10px 0;
}

/* 2-column layout */
.single-two-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: start;
    color: #fff;
}

/* Left column wrapper */
.single-left {
    display: flex;
    flex-direction: column;
}


.single-featured-image img.featured-full {
    width: 100%;
    height: 100%;
    max-height: 100vh;
    object-fit: cover;
    display: block;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
    border-radius: 10px;
	object-position:top;
}

/* Right column content */
.single-right {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Post content text */
.single-content {
    color: #dedede;
    line-height: 1.7;
    font-size: 17px;
}

.single-content h3 {
    font-family: helvetica-w01-roman, sans-serif;
    font-size: 72px;
    letter-spacing: -2.16px;
    line-height: 72px;
    text-align: left;
    word-spacing: 0px;
    margin-top: 50px;
}
.basic-information {
    display: flex;
    color: #fff;
	gap:10px;
}
.basic-information a{
    font-family: georgia, palatino, "book antiqua", "palatino linotype", serif;
    font-size: 20px;
    line-height: 26px;
    word-spacing: 0px;
	color:#fff;
}
.basic-information a:hover{
	color:#fff;
}
/* Responsive: stack columns on small screens */
@media (max-width: 768px) {
    .single-two-columns {
        grid-template-columns: 1fr;
    }

    .single-featured-image img.featured-full {
        height: auto; /* let image scale naturally */
    }
}

.single-featured-image {
    position: fixed;
    width: 45vw;
    height: 85vh;
    object-fit: cover;
}
/* Ensure parent container allows sticky behavior */
.overlap-container {
    position: relative; /* needed for sticky to stay within */
}

.elementor-element-207aac5 {
    position: sticky; /* basic stickiness */
    top: 20px;
    z-index: 10;
    transition: opacity 0.5s ease; /* smooth fade effect */

	left:0;
	right:0;
}
.medical-team-item {
    background-color: #000;
    z-index: 9999;
}
.executive-leadership .medical-team-item {
    flex: 0 0 calc((100% - 150px) / 4);
    scroll-snap-align: start;
}
.medical-team-item{
	z-index:999;
}
.executive-leadership .medical-team-wrapper {
    overflow-x: hidden;
    z-index: 999;
}
.executive-leadership .medical-team-wrapper {
    position: relative;
    min-height: 100vh; /* ensures the pinned section has space */
}

.executive-leadership .medical-team-item {
    opacity: 0;             /* hidden initially */
    transform: translateY(80px);

}
.executive-leadership .medical-team-wrapper{
	overflow-x:hidden;
}
.five-cards .medical-team-item {
    flex: 0 0 calc((100% - 200px) / 5);
    scroll-snap-align: start;
    padding: 5% 1.5%;
}
.three-cards .medical-team-item{
    flex: 0 0 calc((100% - 200px) / 3);
    scroll-snap-align: start;
}
.three-cards .medical-team-wrapper{
	gap:100px;
}
@media screen and (max-width:1024px){

.executive-leadership .medical-team-wrapper {
    position: relative;
    height: 500px !important;
    margin-top: 50px !important;
	overflow-x: auto;
}
.single-featured-image {
    position: relative;
    width: 100%;
    height: auto;
    object-fit: cover;
}
.four-cards .medical-team-item {
    flex: 0 0 calc((100% - 50px) / 2);
    scroll-snap-align: start;
}
.medical-team-item {
    border: 1px solid #4F4F4F;
    height: 500px;
    color: #fff;
    width: 33%;
    padding: 5% 3%;
    position: relative;
}
	span.red:before {
    content: url(/wp-content/uploads/2025/11/rc-logo-white-2-scaled-e1762963786369.png);
    transform: scale(0.5);
    display: inline-block;
    position: relative;
    bottom: -57px;
}
.one-roof:before {
    content: "360° VIEW";
    font-size: 126px;
    font-family: "Tungsten Narrow", sans-serif;
    position: relative;
    bottom: -95px;
    color: #E7E7E7;
    z-index: -1;
    left: -15px;
    letter-spacing: 8px;
}
.one-roof{
    z-index:9999;
}
}
@media screen and (max-width:767px){
p.position {
    font-size: 16px;
}
.single-content h3 {
    font-family: helvetica-w01-roman, sans-serif;
    font-size: 26px;
    letter-spacing: -2.16px;
    line-height: 72px;
    text-align: left;
    word-spacing: 0px;
    margin-top: 20px;
    margin-bottom: 0px;
}
h1.single-title {
    font-family: helvetica-w01-roman, sans-serif;
    font-size: 30.538px;
    letter-spacing: -2.68614px;
    line-height: 43.538px;
    text-align: left;
    word-spacing: 0px;
    color: #fff;
    margin: 0 0 10px 0;
}
.single-navigation {
    display: flex;
    flex-direction: column;
}

.basic-information {
    display: flex;
    flex-direction: column;
}

.nav-previous {
    margin-bottom: 20px;
}
p.medical-team-position {
    font-family: georgia, palatino, "book antiqua", "palatino linotype", serif;
    font-size: 15.3243px;
    letter-spacing: -0.669729px;
    line-height: 22.3243px;
    word-spacing: 0px;
}
h3.medical-team-title {
    font-family: roboto-bold, roboto, sans-serif;
    font-size: 18.7422px;
    letter-spacing: -0.327422px;
    font-weight: bold;
    margin-bottom: 0px;
}
a.medical-team-button {
    position: absolute;
    bottom: 50px;
    left: auto;
    right: 20px;
    color: #fff;
    font-size: 12px;
    font-family: georgia, palatino, "book antiqua", "palatino linotype", serif;
    border-bottom: 1px solid;
    padding-bottom: 10px;
}
    .four-cards .medical-team-item {
        flex: 0 0 calc((100% - -200px) / 2);
        scroll-snap-align: start;
    }
.medical-team-item {
    flex: 0 0 calc((100% - -100px) / 2);
    scroll-snap-align: start;
}
    .medical-team-item {
        border: 1px solid #4F4F4F;
        height: 500px;
        color: #fff;
        width: 100% !important;
        padding: 5% 3%;
        position: relative;
    }
.one-roof:before {
        content: "360° VIEW";
        font-size: 99px;
        font-family: "Tungsten Narrow", sans-serif;
        position: relative;
        bottom: -69px;
        color: #E7E7E7;
        z-index: -1;
        left: -15px;
        letter-spacing: 8px;
    }
}