body, body p, body div{font-family: 'Open Sans', sans-serif !important;font-weight: 400 !important; }
h1,h2,h3,h4,h5,h6{font-family: 'Open Sans', sans-serif !important;font-weight: 400 !important;}
b, strong {font-weight: bold !important;}
@media (max-width: 991px) {}
@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;}}
#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: 'Open Sans';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: #50639b !important;font-size: 20px !important;}
.ry-btn-primary:hover {background: #462c49 !important;color: #FFFFFF !important;}
.ry-btn.ry-btn-secondary{color: #FFFFFF !important;background: #462c49 !important;}
.ry-btn.ry-btn-secondary:hover {background: #50639b !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: -150px; 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;
}

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

body.default p {
	    color: var(--secondary-color);
}

#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 {
	font-family: 'Noto Serif Display', serif !important;
	font-weight: 700 !important;
	font-size: clamp(2.375rem, 2.1625rem + 1.0625vw, 3.4375rem) !important;
	text-transform: uppercase;
	color: var(--secondary-color) !important;
	line-height: 1.1;
		letter-spacing: 2px;
		    text-align: center;
}

.ry-headline h2 span {
    display: block;
    line-height: 150% !important;
    color: #242424;
    letter-spacing: 4px;
    text-transform: uppercase !important;
    font-weight: 400;
    font-size: 22px;
    font-style: normal;
	font-family: 'Open Sans',sans-serif !important;
	margin: 10px 0;
}

.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;
}

@media (max-width: 1080px) {
	.ry-headline h2, .ry-headline h2 span {
		color: #fff !important;
	}
}

/*Frames lenses inside page*/
.card {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 1.5rem;
  min-height: 400px;
  background-color: #fff;
  padding: 2rem 1.5rem; 
}

.image-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100px;
  display: block;
  margin: 0 auto;
  padding-top: 20px;
  padding-right: 20px;
  padding-left: 20px;
}
.icon-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 20px 0;
  height: 100px;
}

.icon-link {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
}

.my-icon {
  width: 24px;
  height: 24px;
  fill: #666;
  transition: fill 0.3s ease;
}

.my-icon:hover {
  fill: #007BFF;
}