body, body p, body div{font-family: Jost !important;font-weight: 400 !important; }
h1,h2,h3,h4,h5,h6{font-family: Jost, 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: 'Jost';z-index:99;}
.ry-btn {height: 60px;display: flex;align-items: center;justify-content: center;padding-left: 25px;padding-right: 25px;max-width: max-content;color: #FFFFFF !important;background: #0056b8 !important;font-size: 20px !important;}
.ry-btn-primary:hover {background: #c99700 !important;color: #FFFFFF !important;}
.ry-btn.ry-btn-secondary{color: #FFFFFF !important;background: #c99700 !important;}
.ry-btn.ry-btn-secondary:hover {background: #0056b8 !important;color: #FFFFFF !important;box-shadow: unset !important;}
/*.cmsForm .has-error input {border: 1px solid #ff0069;}*/
.btn,.ry-btn,.ry-btn-primary {border-radius: 5px !important; font-size: 18px !important}
.btn-img {z-index: 999;}

.ry-anchor-hidden { display: block; position: relative; top: -200px; visibility: hidden;}
.full-link, .full-link a { position: absolute; inset: 0; color: transparent;}
.full-link:hover a { color: transparent; }
#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;
}

body.default .menu-wrap {
    background: #333333;
}

.link, .link a {
  background: transparent;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  color: transparent !important;
}

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




@media (max-width: 1080px) {
	.ry-list-wrp .ry-list-item .ry-list-photo img {
		margin: auto;
	}
	.ry-list-wrp .ry-list-item .ry-box-right * {
		text-align: center;
	}
	.ry-list-wrp .ry-list-item .ry-box-right .col-xs-12 {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 30px;
		margin-bottom: 20px;
	}
}

/* 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;
}


.ry-btn {
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 30px;
    padding-right: 30px;
    max-width: max-content;
    color: #FFFFFF !important;
    background: var(--color-secondary) !important;
    font-size: 20px !important;
	text-transform: uppercase;
}

.ry-heading h4 {
    line-height: 1.2;
    text-align: center;
    font-family: var(--font-title) !important;
    font-style: italic;
    font-size: 26px;
    color: #140e08;
    font-weight: 500 !important;
    font-style: italic;
    margin-bottom: 10px;
}

.ry-heading h2 {
    color: var(--color-primary) !important;
    font-size: 60px;
    line-height: 1;
    text-transform: uppercase;
}





/* OPTICAL SUITE */


div.hp-optical-suite-sec {
    background: url(https://www.royacdn.com/unsafe/smart/Site-2ab71bec-6880-4f2e-8a90-50179f509408/HomepageAssets/optical_bg.png);
    background-size: cover;
    background-position: center;
    padding: 12em 0;
}

div.hp-optical-suite-sec .ry-content.ry-flex {
    align-items: center;
}

div.hp-optical-suite-sec .ry-container {
    max-width: 1400px;
    width: 80%;
}

div.hp-optical-suite-sec .ry-list ul {
    margin: 2em 0;
    padding-left: 10px;
    max-width: 500px;
}

div.hp-optical-suite-sec .ry-list ul li {
    list-style: none;
}

div.hp-optical-suite-sec .ry-list ul li a, .ry-list ul li p {
    font-size: 25px;
    text-transform: uppercase;
    color: #000;
    height: 100%;
    padding: 15px 0;
    display: flex;
    width: 100%;
    position: relative;
}

div.hp-optical-suite-sec .ry-list ul li {
    display: flex;
    width: 100%;
    border-bottom: 1px solid rgb(51 51 51 / 46%);
}

div.hp-optical-suite-sec .ry-list ul li:last-child {
    border-bottom:0
}

.optical-sec-image {
    width: 60%;
    position: absolute;
    right: -18%;
}


div.hp-optical-suite-sec .ry-list ul li a:after {
    position: absolute;
    right: 3%;
    height: 30px;
    width: 30px;
    content: '';
    top: 25%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-arrow-right' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8'/%3E%3C/svg%3E");
    filter: brightness(0);
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(314deg);
}

@media (max-width:500px) {
	
	div.hp-optical-suite-sec .ry-list ul li a, .ry-list ul li p {
	  font-size: 18px;
	  padding: 10px 0;
	}
	
	div.hp-optical-suite-sec .ry-list ul li a::after {
	  width: 21px;
	  height: 21px;
	  top: 31%;
	}

}



/* OPTICAL SUITE */





/* HP TECNOLOGY */


.hp-tech-section {
    padding: 5em 0;
}

.hp-tech-slider button.slide-arrow.prev-arrow.slick-arrow, 
.hp-tech-slider button.slide-arrow.next-arrow.slick-arrow {
    position: absolute;
    left: -5%;
    background: transparent;
    width: 20px;
    height: 20px;
    top: 61%;
    border-top: 3px solid #666;
    border-right: 3px solid #666;
    transform: rotate(226deg);
}

.hp-tech-slider button.slide-arrow.next-arrow.slick-arrow {
    right: -5%;
    left: initial;
}

.hp-tech-slider button.slide-arrow.next-arrow.slick-arrow {
    transform: rotate(45deg);
}

.hp-tech-section .ry-each img {
    max-width: 300px;
    margin: 0 auto 2em;
    height: 300px;
    object-fit: contain;
}

.hp-tech-slider {
    max-width: 1300px;
    margin: 2em auto 0;
    float: none;
    position: relative;
    padding: 0 3em;
}

.tech-title p {
    text-transform: uppercase;
    font-size: 22px;
    letter-spacing: 2px;
    line-height: 16px;
    text-transform: uppercase;
    color: #fff;
    font-family: "Jost";
}

.hp-tech-slider ul.slick-dots {
    display:none !important;
}

.hp-tech-slider:before {
    background: linear-gradient(90deg, rgb(5, 17, 242) 0%, rgb(5, 61, 217) 13%, rgb(4, 104, 191) 25%, rgb(4, 120, 204) 38%, rgb(4, 135, 217) 50%, #0042ec 63%, #0048ff 75%, rgb(4 102 192) 88%, rgb(5 31 234) 100%);
    content:'';
    position:absolute;
    bottom: -12%;
    left:0;
    right:0;
    border-radius: 40px;
    height: 88%;
}


/* END HP TECNOLOGY */


/* RESPONSIVE */

@media (min-width:1200px) and (max-width:1660px) {
	.ry-heading h2 {
		font-size: 48px;
	}
	
	.ry-heading h4 {
			font-size: 23px;
	}
}



@media (min-width:1200px) and (max-width:1500px) {
	.person-img {
		max-width: 300px;
		height: 300px;
		object-fit: contain;
		object-position: left;
		right: -19px;
	}

	.hp-team-section .ry-each:nth-child(1) .person-img  {
		max-width: 220px;
		bottom: -10px;
	}

}



@media (max-width:1440px) {
	
    #welcome-wrap.style-1 .module-22 .ry-container {
    width: 80%;
    margin: auto;
	}

	#welcome-wrap.style-1 .module-22 .ry-content.ry-flex {
		align-items: flex-start;
		gap: 0 5%;
	}

	#welcome-wrap.style-1 {
		padding: 5em 0;
		justify-content: space-between;
	}

	#welcome-wrap.style-1 .module-22 .ry-left {
		width: 50%;
	}

	div.hp-optical-suite-sec {
		padding: 5em 0;
	}

	.ry-services.style2 .ry-container {
		width: 80%;
	}

	.hp-tech-slider button.slide-arrow.next-arrow.slick-arrow {
		right: -0%;
	}

	.hp-tech-slider button.slide-arrow.prev-arrow.slick-arrow {
		left: 0%;
	}

	.hp-tech-slider:before {
		width: 90%;
		margin: auto;
	}

	.ry-services.style2 {
		padding: 5em 0 1em;
	}

	.hp-team-section {
		padding: 3em 0 0 !important;
	}

	.footer-info-wrap {
		padding: 0 1em;
		gap: 0;
		max-width: 100%;
	}

}


@media (max-width:1199px) {
    .ry-heading h2 {
		font-size: 35px !important;
		text-align: center !important;
	}

	.ry-heading h4 {
		text-align: center !important;
		font-size: 20px !important;
	}

	div.hp-optical-suite-sec {
		background: #eff6ff !important;
		padding: 4em 0 !important;
	}

	div.hp-optical-suite-sec .ry-content.ry-flex {
		flex-direction: column !important;
		gap: 2em 0;
	}

	.optical-sec-image {
		position: static;
		width: 100%;
		max-width: 400px;
	}

	div.hp-optical-suite-sec .ry-list ul {
		margin: 2em auto 0;
	}

	.hp-tech-section {
		padding: 2em 0;
	}

	.hp-tech-section img {
		height: 180px !important;
		max-width: 180px !important;
	}

	.tech-title p {
		font-size: 18px;
		line-height: 1.1;
	}


	.serv-left .ry-flex .ry-each {
		width: 30%;
	}

	.serv-left .ry-flex {
		gap: 0 2em;
	}

	div#hp-team-flex {
		flex-direction: column;
		gap: 2em 0;
		max-width: 700px;
		margin: 1.5em auto 3em;
		float: none;
		clear: both;
	}
	
	.hp-team-section {
		padding-top:4em !important;
	}

	div#hp-testi-rev {
		gap: 2em 0;
		flex-direction: column-reverse !important;
	}

	.module-testimonials.option-1:before {
		height: 100%;
	}

	div#testi-image-wrap, div#hp-testi-rev .ry-each:nth-child(2) {
		width: 100% !important;
		top: 0 !important;
	}

	div#testi-image-wrap img {
		max-width: 400px;
		margin: auto;
	}


	.module-testimonials.option-1 .comment p {
		text-align: center;
		-webkit-line-clamp: initial !important;
	}

	div#hp-testi-rev .ry-name {
		flex-direction: column;
		gap: 10px 0 !important;
		margin-bottom:4em !important;
	}

	.module-testimonials.option-1 ol.carousel-indicators {
		justify-content: center;
	}    
    
	.module-testimonials.option-1 .ry-text {
		margin-bottom: 2em;
	}

}


@media (max-width:768px) {
    a#page-btn {
		margin: 1.5em auto 0;
	}
}


@media (max-width:767px) {
	 .hp-tech-slider::before {
		width: 80% !important;
		margin: auto;
  }
}


/* END RESPONSIVE */




:root {
    --color-primary: #0056b8;
    --color-secondary: #c99700;
    --font-default: Jost;
    --font-title: Lora;
    
}
	
/*MODULE -1*/
.module-1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 50px; }
    @media (max-width: 767px) {
      .module-1 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    .module-1 h1, .module-1 h2, .module-1 h3, .module-1 h4, .module-1 h5, .module-1 h6, .module-1 p {
      margin-bottom: 0 !important; }
      @media (max-width: 767px) {
        .module-1 h1, .module-1 h2, .module-1 h3, .module-1 h4, .module-1 h5, .module-1 h6, .module-1 p {
          text-align: center; } }
    .module-1 h1, .module-1 h2, .module-1 h3, .module-1 h4, .module-1 h5, .module-1 h6 {
      font-size: 26px !important; }
    .module-1 .ry-box-left {
      width: 25%; }
      @media (max-width: 500px) {
        .module-1 .ry-box-left {
          width: 50%; } }
      @media (max-width: 767px) {
        .module-1 .ry-box-left img {
          margin-bottom: 20px; } }
    .module-1 .ry-box-right {
      width: 70%; }
      @media (max-width: 767px) {
        .module-1 .ry-box-right {
          width: 100%; } }

/*MODULE -1 END*/

	
.custom-social-wrapper .social-inner-wrap li a {

    background:#0055b8;

}
	
.custom-social-wrapper .social-inner-wrap li a:hover {

    background:#373737;

}
