body, body p, body div{font-family: var(--body-font);font-weight: 400 !important; }
h1,h2,h3,h4,h5,h6{font-family: var(--body-font);font-weight: 400 !important;}
b, strong {font-weight: bold !important;}
@media (max-width: 991px) {

	#ry-section-map{
		margin: 0 !important;
	}
}
@media only screen and (max-width: 768px){
	.swiper-slide {width: 100% !important;}
	.testimonials-wrapper .testimonials-block .carousel-control {display: none;}
	.carousel-control.left, .carousel-control.right {background-image: unset; background-image: unset;background-repeat: unset;}
	.carousel-control, .carousel-control:hover, .carousel-control:focus {color: #FFFFFF;}
	.icon-bar {
		display: none;
	}
}
#services-box a{ margin:0 auto;}
#articles .ry-btn-primary, 
#articles .ry-btn-primary:after {color: #FFFFFF;}
#articles .ry-btn-primary:hover, 
#articles .ry-btn-primary:hover:after {color: #FFFFFF;}

.ry-btn:after {display:none;}
.btn, .ry-btn, .ry-btn-primary, .ry-btn-secondary {font-family: 'Montserrat';z-index:99;}
.ry-btn {text-transform: uppercase;height: auto;display: flex;align-items: center;justify-content: center;padding-left: 30px;padding-right: 30px;max-width: max-content;color: #FFFFFF !important;background: #144ce7 !important;font-size: 20px !important;}
.ry-btn-primary:hover {background: #001f6f !important;color: #FFFFFF !important;}
.ry-btn.ry-btn-secondary{color: #FFFFFF !important;background: #001f6f !important;}
.ry-btn.ry-btn-secondary:hover {background: #144ce7 !important;color: #FFFFFF !important;box-shadow: unset !important;}
/*.cmsForm .has-error input {border: 1px solid #ff0069;}*/
.btn,.ry-btn,.ry-btn-primary {border-radius: 15px !important; font-size: 18px !important}
.btn-img {z-index: 999;}

.anchor-hidden { display: block; position: relative; top: -250px; visibility: hidden;}
.full-link, .full-link a { position: absolute; inset: 0; color: transparent;}
.full-link:hover a { color: transparent; }
.ry-each-link, .ry-each-link a {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index: 9;
}

.service-slider .service-collection .slick-slide { transform: scale(.8); }

#ry-pg-body .ry-left p {
    margin: 0 0 10px 0 !important;
}

body.default p {
	    color: #333333;
}

#ry-pg-body .owl-carousel .owl-item img {filter: unset;}
.HOLDsp-slides-container {height: calc(100vh - 120px) !important;}
li.third-level-container:not(.third-level a):after {
    content: '\f105';
    font-family: fontawesome;
    color: #fff;
    position: relative;
    top: 12px;
    right: 12px;
}


.ry-headline h2,
.hp--team--slick .each--person .person--info .person--name h3 {
	font-family: var(--title-font) !important;
	font-weight: 400 !important;
	font-size: clamp(2.375rem, 2.0625rem + 1.6667vw, 4.0625rem) !important;
	text-transform: uppercase;
	color: var(--secondary-color) !important;
	line-height: 1.1;
		letter-spacing: 0px;
		    text-align: center;
}

.ry-headline h2 span,
.hp--meet--our--team .person--name span.span-1 {
    display: block;
    line-height: 150% !important;
    color: #242424;
    letter-spacing: 3px;
    text-transform: uppercase !important;
    font-weight: 500;
    font-size: 22px;
    font-style: normal;
	font-family: var(--body-font) !important;
	margin: 10px 0;
}

@media (max-width: 1280px) {
	.ry-headline h2,
	.hp--team--slick .each--person .person--info .person--name h3 {
		font-size: clamp(2.25rem, 2.0132rem + 1.1842vw, 2.8125rem) !important;
	}

	.ry-headline h2 span:not(.span-2),
	.hp--meet--our--team .person--name span.span-1 {
		letter-spacing: 4px;
		font-size: 24px;
	}
}

/*body.home div#section-insurances .ry-headline h2,
.module-services.custom .ry-headline h2,
.hp-section.hp-welcome.hp-myopia .ry-headline h2,
#team-wrap .outer-container .ry-headline h2,
.module-brand.module-20 .ry-headline h2,
.module-testimonials.style-3 .ry-headline h2,
.module-appointment.custom .content .solid-content .ry-headline h2{
	font-family: var(--body-font) !important;
	font-weight: 300 !important;
	font-size: clamp(2.125rem, 1.8241rem + 1.6049vw, 3.75rem) !important;
	text-transform: uppercase;
	letter-spacing: 2px;
}

@media (max-width: 1399px) {
	body.home div#section-insurances .ry-headline h2,
	.module-services.custom .ry-headline h2,
	.hp-section.hp-welcome.hp-myopia .ry-headline h2,
	#team-wrap .outer-container .ry-headline h2,
	.module-brand.module-20 .ry-headline h2,
	.module-testimonials.style-3 .ry-headline h2,
	.module-appointment.custom .content .solid-content .ry-headline h2{
		font-size: clamp(2.25rem, 2.2037rem + 0.2469vw, 2.5rem) !important;
	}
}*/

.module-testimonials.style-3 .ry-headline h2 {
    padding: 0 8%;
}

.mt-20{margin-top: 20px;}

.icon-bar a {
	padding: 14px;
}

.icon-bar a img {
	width: 24px;
	height: 24px;
	object-fit: contain;
	transition: .2s;
}

/* INTERIOR PAGE SIDEBAR AND FULL WIDTH */
body.default #ry-pg-body[data-interior-layout="Full Width"] > .ry-container > .ry-content > .ry-left {
    width: 100%;
    max-width: 100%;
    float: unset;
}

body.default #ry-pg-body[data-interior-layout="Full Width"] > .ry-container > .ry-content > .ry-right {
    display: none;
}

.title-open {
  border-radius: 10px 10px 0 0 !important;
}

.title-closed {
  border-radius: 10px !important;
}

body[data-page-name="contact"] .custom-map {
	display: none;
}

.mobile-container .flex-wrap .flex-item.right-nav .mobile-button a:first-child {
    margin-right: 0px;
}

.mobile-container .flex-wrap .flex-item.right-nav .mobile-button {
    display:flex;
    gap:8px
}


/* Patient Information */


.dry-eye-quiz__question-text {
    font-size: clamp(1.25rem, 0.9951rem + 1.0458vw, 2.25rem) !important;
    color: #ffffff;
    font-weight: 100;
    line-height: normal !important;
}

.dry-eye-quiz__number {
      font-size: clamp(1.25rem, 0.9951rem + 1.0458vw, 2.25rem) !important;
    
}

.dry-eye-quiz {
    padding: 30px 0 0;
}

.modal-body {
    padding: 0 !important;
}

.modal-header {
    display: none !important;
}

.modal-footer {
    display: none !important;
}

.dry-eye-quiz__patient-title {
    margin: 0 0 15px;
		color: #fff;

}

.dry-eye-quiz__patient-description {
    margin: 0 0 30px;
    line-height: 1.6;
	color: #fff !important;
}

.dry-eye-quiz__patient-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
}

.dry-eye-quiz__field {
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
}

.dry-eye-quiz__field label {
    display: block;
    font-weight: 600;
}

.dry-eye-quiz__field input {
    width: 100%;
    min-width: 0;
    min-height: 52px;
    padding: 12px 16px;
    border: 1px solid rgba(255, 255, 255, .45);
    background: #fff;
    color: #222;
}

.dry-eye-quiz__field input:focus {
    outline: 2px solid #9ec3ff;
    outline-offset: 2px;
}

.dry-eye-quiz__patient-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 35px;
}

@media (max-width: 767px) {
    .dry-eye-quiz__patient-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .dry-eye-quiz__patient-actions {
        margin-top: 28px;
    }

    .dry-eye-quiz__patient-actions .dry-eye-quiz__btn {
        width: 100%;
    }
}


/* Replace bg_1.jpg with your uploaded CMS image URL */

.dry-eye-quiz {
    --deq-blue: #1452ef;
    --deq-navy: #061e60;
    --deq-bg: url('https://s3.amazonaws.com/static.organiclead.com/Site-6d7ef251-74a5-486f-b965-b3638c574da7/bg.jpg');
    position: relative;
    min-height: 680px;
    background: #07162c var(--deq-bg) center/cover no-repeat;
    color: #fff;
    overflow: hidden;
}

.dry-eye-quiz * {
    box-sizing: border-box;
}

.dry-eye-quiz [hidden] {
    display: none !important;
}

.dry-eye-quiz__banner {
    background: #061f67;
    padding: 18px max(24px, calc((100% - 820px)/2));
    letter-spacing: .19em;
    text-transform: uppercase;
    font-size: clamp(18px, 2.2vw, 26px);
}

.dry-eye-quiz__inner {
    max-width: 820px;
    margin: auto;
    padding: 55px 40px 65px;
}

.dry-eye-quiz__swiper {
    overflow: hidden;
}

.dry-eye-quiz__swiper .swiper-wrapper {
    display: flex;
    align-items: stretch;
}

.dry-eye-quiz__swiper .swiper-slide {
    flex-shrink: 0;
    width: 100%;
    min-width: 0;
}

.dry-eye-quiz__question {
    display: flex;
    align-items: flex-start;
    gap: 26px;
    margin: 0 0 38px;
    font-size: clamp(26px, 4.2vw, 48px);
}

.dry-eye-quiz__number {
    font-weight: 700;
    line-height: 1.1;
    flex: 0 0 auto;
}

.dry-eye-quiz__question-text {
    line-height: 1.25;
    margin: 0;
    width: min(690px, 90%);
    text-align: left !important;
}

.dry-eye-quiz__options {
    display: grid;
    gap: 20px;
    margin-left: 58px;
}

.dry-eye-quiz__option {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    width: fit-content;
    font-size: clamp(20px, 2.5vw, 30px);
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

.dry-eye-quiz__option input {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
}

.dry-eye-quiz__radio {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 50%;
    border: 3px solid #fff;
}

.dry-eye-quiz__option input:checked + .dry-eye-quiz__radio::after {
    content: "";
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--deq-blue);
}

.dry-eye-quiz__option input:focus-visible + .dry-eye-quiz__radio {
    outline: 3px solid #9ec3ff;
    outline-offset: 4px;
}

.dry-eye-quiz__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin-top: 55px;
}

.dry-eye-quiz__dots {
    display: flex;
    align-items: center;
    gap: 11px;
}

.dry-eye-quiz__dot {
    width: 12px;
    height: 12px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .24);
    padding: 0;
}

.dry-eye-quiz__dot.is-active {
    background: var(--deq-blue);
}

.dry-eye-quiz__actions {
    display: flex;
    gap: 12px;
}

.dry-eye-quiz__btn {
    border: 0;
    border-radius: 12px;
    padding: 13px 26px;
    min-height: 52px;
    cursor: pointer;
    font-size: 20px;
}

.dry-eye-quiz__btn--primary {
    background: var(--deq-blue);
    color: #fff;
}

.dry-eye-quiz__btn--back {
    background: rgba(255, 255, 255, .15);
    color: #fff;
}

.dry-eye-quiz__error {
    margin-top: 18px;
    color: #fff !important;
    background: #9b1c1c;
    padding: 10px 14px;
    border-radius: 8px;
}

@media (max-width: 767px) {
    .dry-eye-quiz {
        min-height: 610px;
    }

    .dry-eye-quiz__inner {
        padding: 42px 22px 44px;
    }

    .dry-eye-quiz__question {
        gap: 12px;
        margin-bottom: 30px;
    }

    .dry-eye-quiz__options {
        margin-left: 0;
        gap: 20px;
    }

    .dry-eye-quiz__option {
        gap: 14px;
    }

    .dry-eye-quiz__radio {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

    .dry-eye-quiz__footer {
        margin-top: 48px;
        flex-wrap: wrap;
    }

    .dry-eye-quiz__btn {
        padding: 12px 18px;
    }

    .dry-eye-quiz__dots {
        gap: 8px;
    }

    .dry-eye-quiz__dot {
        width: 10px;
        height: 10px;
    }
}

	
	
/* =========================================
   PATIENT SATISFACTION SURVEY
========================================= */

.patient-satisfaction {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.patient-satisfaction *,
.patient-satisfaction *::before,
.patient-satisfaction *::after {
    box-sizing: border-box;
}

.patient-satisfaction [hidden] {
    display: none !important;
}

/* Introduction */

.patient-satisfaction__intro {
    margin-bottom: 35px;
}

.patient-satisfaction__intro h2 {
    margin: 0 0 12px;
}

.patient-satisfaction__intro p {
    margin: 0;
    line-height: 1.7;
}

/* Sections */

.patient-satisfaction__section {
    padding: 35px;
    margin-bottom: 25px;
    border: 1px solid #e4e8ee;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .035);
}

.patient-satisfaction__section-header {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-bottom: 22px;
    margin-bottom: 28px;
    border-bottom: 1px solid #e8edf3;
}

.patient-satisfaction__section-number {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #edf3ff;
    color: #2455a4;
    font-weight: 700;
}

.patient-satisfaction__section-header h3 {
    margin: 0;
}

.patient-satisfaction__section-description {
    margin: -12px 0 25px;
    color: #667085;
}

/* Grid */

.patient-satisfaction__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
}

.patient-satisfaction__field {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.patient-satisfaction__field--full {
    grid-column: 1 / -1;
}

.patient-satisfaction__field > label,
.patient-satisfaction__field > .patient-satisfaction__label {
    display: block;
    margin: 0;
    font-weight: 600;
}

/* Inputs */

.patient-satisfaction__field input:not([type="radio"]),
.patient-satisfaction__field select,
.patient-satisfaction__field textarea {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: 50px;
    padding: 12px 15px;
    border: 1px solid #d5dce6;
    border-radius: 8px;
    background: #fff;
    color: #243047;
    transition: border-color .2s, box-shadow .2s;
}

.patient-satisfaction__field textarea {
    min-height: 115px;
    resize: vertical;
}

.patient-satisfaction__field input:focus,
.patient-satisfaction__field select:focus,
.patient-satisfaction__field textarea:focus {
    outline: none;
    border-color: #4676d7;
    box-shadow: 0 0 0 3px rgba(70, 118, 215, .12);
}

/* Ratings */

.patient-satisfaction__rating {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.patient-satisfaction__rating-option {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-width: 95px;
    min-height: 46px;
    padding: 10px 15px;
    border: 1px solid #dce2ea;
    border-radius: 8px;
    background: #fafbfd;
    cursor: pointer;
    transition: background .2s, border-color .2s;
}

.patient-satisfaction__rating-option:hover {
    border-color: #9db8e9;
}

.patient-satisfaction__rating-option:has(input:checked) {
    background: #edf3ff;
    border-color: #4676d7;
}

.patient-satisfaction__rating-option input {
    width: 17px;
    height: 17px;
    margin: 0;
    accent-color: #2455a4;
}

.patient-satisfaction__rating-option span {
    line-height: 1.4;
}

/* Rating Rows */

.patient-satisfaction__rating-row {
    padding: 20px 0;
    border-bottom: 1px solid #edf0f4;
}

.patient-satisfaction__rating-row:first-child {
    padding-top: 0;
}

.patient-satisfaction__rating-row:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.patient-satisfaction__rating-title {
    display: block;
    margin-bottom: 13px;
    font-weight: 600;
}

/* Conditional Fields */

.patient-satisfaction__conditional {
    grid-column: 1 / -1;
    padding: 22px;
    border: 1px solid #e0e7f0;
    border-radius: 10px;
    background: #f8fafd;
}

/* Footer */

.patient-satisfaction__footer {
    display: flex;
    justify-content: flex-end;
    padding: 15px 0 35px;
}

.patient-satisfaction__footer .ry-btn {
    min-width: 190px;
    text-align: center;
}

/* Responsive */

@media (max-width: 767px) {
    .patient-satisfaction__intro {
        margin-bottom: 25px;
    }

    .patient-satisfaction__section {
        padding: 22px 18px;
        margin-bottom: 20px;
        border-radius: 10px;
    }

    .patient-satisfaction__section-header {
        gap: 12px;
        padding-bottom: 18px;
        margin-bottom: 22px;
    }

    .patient-satisfaction__section-number {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
    }

    .patient-satisfaction__grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .patient-satisfaction__field--full,
    .patient-satisfaction__conditional {
        grid-column: auto;
    }

    .patient-satisfaction__rating {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .patient-satisfaction__rating-option {
        min-width: 0;
        justify-content: flex-start;
        padding: 10px 12px;
    }

    .patient-satisfaction__rating-option:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .patient-satisfaction__conditional {
        padding: 18px 15px;
    }

    .patient-satisfaction__footer {
        padding-top: 10px;
    }

    .patient-satisfaction__footer .ry-btn {
        width: 100%;
    }
}

@media (max-width: 380px) {
    .patient-satisfaction__rating-option {
        gap: 7px;
        padding: 10px 9px;
    }
}
