  /*
Theme Name: Shapro
Version: 0.0.9
Tested up to: 5.7
Requires PHP: 5.3
Description: Shapro is a clean and elegant WordPress theme. It is a perfect solution for any type of business, Shapro comes with a modern, sleek design and advanced functionalities.
Author: Unibirdtech
Author URI: http://unibirdtech.com/
Theme URI: https://unibirdtech.com/free-themes/shapro/
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: shapro
Tags: one-column, two-columns ,right-sidebar, flexible-header, custom-background, custom-header, custom-menu, editor-style, featured-images, footer-widgets, theme-options, threaded-comments, translation-ready, custom-logo, blog, e-commerce
*/
*/
/* ---- ==== body ==== ----*/
body {
  padding: 0;
  margin: 0;
  font-family: 'Rubik', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  color: #748494;
  -webkit-font-smoothing: antialiased;
}
h1, .h1 {
	font-size: 34px;
}
h2, .h2 {
	font-size: 32px;
}
h3, .h3 {
	font-size: 30px;
}
h4, .h4 {
	font-size: 28px;
}
h5, .h5 {
	font-size: 26px;
}
h6, .h6 {
	font-size: 22px;
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family: 'Poppins', sans-serif;
	line-height: 1.25;
	color: #151a33;
}
.alignright {
	text-align: right;
}
.alignleft {
	text-align: left;
}
.aligncenter {
	text-align: center;
}
.content {
	padding-top: 40px;
	padding-bottom: 30px;
}
ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], 
input[type="search"], input[type="number"], input[type="tel"], input[type="range"], 
input[type="date"], input[type="month"], input[type="week"], input[type="time"], 
input[type="datetime"], input[type="datetime-local"], input[type="color"], 
textarea, select,
.form-control, input:not([type]),textarea {    
	border-radius: 0;
    margin-bottom: 20px;
    box-shadow: inherit;
    padding: 6px 12px;
    line-height: 1;
    height: 50px;
    border-width: 2px;
    border-style: solid;
    width: 100%;
    border-color: #eee;
}
button, html [type="button"], [type="reset"], [type="submit"], .btn, .more-link {
	padding: 10px 35px !important;
	line-height: 26px;
	overflow: hidden;
	position: relative;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 600;
	display: inline-block;
	transition: all 0.1s ease 0s;
	border-width: 2px;
	border-style: solid;
	text-transform: uppercase;
}
.btn:hover {
	transition: all 0.3s ease 0s;
	outline: none;
	box-shadow: 0 4px 20px -5px rgba(0,0,0,0.5);
}
.hover_eff{
	transition-duration: .3s;
    transition-property: transform;
    transition-timing-function: ease-out;
    transition: all 0.3s linear;
}
.hover_eff:hover{
	transform: translateY(-8px);
}
.no-gutter > [class*=col-] {
 padding-right: 0;
 padding-left: 0;
}
.about .img-fluid {
    box-shadow: -30px 30px 1px 0 rgba(0,0,0,0.1);
    margin-bottom: 30px;
}
blockquote {
    position: relative;
    width: 100%;
    border-width: 0 0 0 5px;
    border-style: solid;
    padding: 20px;
}
blockquote p {
    font-style: italic;
    width: 94%;
    display: table;
    font-weight: bold;
    line-height: 1.5;
    margin: 0;
}
table {
    width: 100%;
}

a {
	text-decoration: underline;
}
a:hover, a:focus {
	text-decoration: underline;
}
a:focus {
  outline: 1px solid;
}
a.more-link:focus {
    outline: 1px dashed #000;
}
/* ---- ==== Header ==== ----*/
header.trasparent {
	position: absolute;
	right: 0;
	left: 0;
	z-index: 50;
}
/* ---- topbar ----*/
.topbar {
	padding: 10px 0;
}
.topbar ul {
	display: flex;
	margin: 0;
	padding: 0;
}
.topbar ul li {
	display: inline-block;
	margin-left: 5px;
	margin-right: 5px;
}
.topbar ul li a {
	font-size: 14px;
	line-height: 1;
}
.topbar ul.left li i {
	margin-right: 8px;
}
.topbar ul.left {
	justify-content: flex-start;
}
.topbar ul.right {
	justify-content: flex-end;
}
.topbar ul.right li i {
	margin-left: 8px;
}
.topbar .quote_btn {
	margin: -10px 0 -10px 10px;
	border-radius: 0;
	padding: 10px 20px;
}
.site-branding-text h1, .site-branding-text h1 a {
	font-size: 22px;
	margin: 0;
}

/* ---- ==== Home Sections ==== ----*/
/* ---- slider ----*/
.sliderhome .slide:before {
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}
.sliderhome .slide {
  position: relative;
  height: 750px;
  background-color: lightgray;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.sliderhome .owl-slide-animated {
  transform: translateX(20px);
  transition: all 0.05s;
}
.sliderhome .owl-slide-title  {
  transition-delay: 0.2s;
  font-size: 65px;
  font-weight: 800;
  line-height: 77px;
}
.sliderhome .owl-slide-subtitle.is-transitioned {
  transition-delay: 0.35s;
  font-size: 20px;
}
.sliderhome .owl-slide-cta.is-transitioned {
  transition-delay: 0.5s;
}
.sliderhome .btn:first-child  {
  margin-right: 15px;
}
.sliderhome  .owl-dots,
.sliderhome  .owl-nav div {
  position: absolute;
}
.sliderhome  .owl-dots .owl-dot,
.sliderhome  .owl-nav [class*="owl-"]:focus {
  outline: none;
}
.sliderhome  .owl-dots .owl-dot span {
  background: transparent;
  border: 1px solid var(--main-black-color);
  transition: all 0.2s ease;
}
.sliderhome  .owl-dots .owl-dot:hover span,
.sliderhome  .owl-dots .owl-dot.active span {
  background: var(--main-black-color);
}
.sliderhome  .owl-nav div {
  margin: 0;
}
.sliderhome  .owl-nav .owl-prev {
  left: 30px;
}
.sliderhome  .owl-nav .owl-next {
  right: 30px;
}

.owl-carousel .owl-nav div {
    width: 50px;
    height: 50px;
    display: block;
    font-size: 24px;
    line-height: 50px;
    opacity: 0;
    border-radius: 50%;
    text-align: center;
    border-width: 1px;
    border-style: solid;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.owl-carousel .owl-nav div i {
}
.owl-carousel:hover .owl-nav div {
    opacity: 1;
}
.owl-carousel .owl-nav {
    opacity: 1;
    transition: all 0.3s ease 0s;
}
.owl-carousel:hover .owl-nav {
    opacity: 1;
}
.owl-carousel:hover .owl-nav .owl-prev {
    left: 35px;
}
.owl-carousel:hover .owl-nav .owl-next {
    right: 35px;
}
.owl-nav .owl-prev, .owl-nav .owl-next {
    position: absolute;
    top: 55%;
    z-index: 5;
    margin: -30px 0 0;
    transition: all 0.3s ease 0s;
}
.owl-nav .owl-prev {
    left: 8px;
}
.owl-nav .owl-prev i {
    margin-left: 0;
    transition: all 0.3s ease 0s;
}
.owl-nav .owl-prev:hover i {
    margin-left: 0;
}
.owl-nav .owl-next {
    right: 8px;
}
.owl-nav .owl-next i {
    margin-right: 0;
    transition: all 0.3s ease 0s;
}
.owl-nav .owl-next:hover i {
    margin-right: 0;
}
.owl-dots {
    display: inline-block;
    vertical-align: middle;
    padding: 0 5px;
}
.owl-dots.active span {
    height: 12px;
    width: 12px;
}
.owl-dots span {
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 2%;
    background: transparent;
    border-width: 2px;
    border-style: solid;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
    background: #fff;
    border-color: #fff;
}
.owl-dots button.owl-dot {
    height: auto;
    width: auto;
    color: #fff;
    padding: 2px 10px;
    font-size: 12px;
    border-radius: 4px;
}
.owl-dots {
    bottom: 15px;
    left: 0;
    position: relative;
    right: 0;
    text-align: center;
}
/* ---- section title ----*/
.section {
	padding-top: 60px;
	padding-bottom: 40px;
	position: relative;
}
.section .container{
	z-index: 1;
	position: relative;
}
.bg-dark:after {
	content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.bg-dark:after {
    opacity: .6;
}
.cover-bg {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}
.tp-80 {
    top: -80px;
    z-index: 1;
}
.tp-100 {
    top: -100px;
    z-index: 1;
}
.tp-130 {
    top: -130px;
    z-index: 1;
}
.tp-150 {
    top: -150px;
    z-index: 1;
}
.pdt0 {
    padding-top: 0;
}
.pdb0 {
    padding-bottom: 0;
}
.pdb-100 {
    padding-bottom: 100px;
}
.pdb-150 {
    padding-bottom: 150px;
}
.mb-40{margin-bottom: -40px}
.section-heading {
	margin-bottom: 40px;
}
.section-heading h2.ititle {
	font-size: 36px;
	font-weight: 800;
}
.section-heading h3.sub-title {
	font-size: 16px;
    font-weight: 600;
    position: relative;
    display: inline-block;
    margin-bottom: 2px;
}
.section-heading .discription {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 8px;
}
/* ---- features ----*/
.features {
	box-shadow: 0px 2px 60px 0px rgba(0,0,0,.1);
	padding: 30px 25px 20px 25px;
}
.feature {
	padding: 15px 25px;
}
.feature i {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    font-size: 36px;
    border-radius: 5px;
}
.feature h5 {
	font-size: 20px;
	font-weight: 600;
	margin: 0;
}
/* ---- service ----*/
.service {
    position: relative;
    overflow: hidden;
    box-shadow: 0px 2px 60px 0px rgba(0,0,0,.1);
    margin-bottom: 30px; 
}
.service .inner {
	padding: 30px;
    transition: all 0.3s linear;
    background: #fff;
}

.service .top_icon i {
	margin-bottom: 20px;
	font-size: 80px;
}
.service .top_img {
    margin-bottom: 20px;
    margin-top: -30px;
    margin-left: -30px;
    margin-right: -30px;
}
.service .bottom_text h2 {
	font-size: 18px;
	font-weight: 800;
}
/* ---- teams ----*/
.team{
	box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.1);
	margin-bottom: 30px;
}
.team .bottom_content{
	padding: 20px;

}
.team .top_img {
    position: relative;
    overflow: hidden;
}
.team .top_img img {
    max-width: 100%;
    width: 100%;
}
.team .social {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    position: absolute;
    top: 0;
    right: 100%;
    width: 100%;
    transition: all .3s ease;
    text-align: center;
    z-index: 1;
}
.team:hover .social {
    right: 0;
}
.team h2{
	font-size: 22px;
	font-weight: 600;
}
.team .designation{
	font-weight: 600;
	margin-bottom: 10px;
}
.team .social a{
	width: 30px;
	height: 30px;
	line-height: 30px;
	margin-left: 5px;
	margin-right: 5px;
	display: inline-block;
}
/* ---- portfolio ----*/
.portfolio {
    padding: 15px;
    margin-bottom: 30px;
}
.portfolio .inner{
    opacity: 0;
    padding: 15px;
    outline-width: 2px;
    outline-style: solid;
}
.portfolio:hover .inner {
    opacity: 1;
}
.portfolio h2 {
    font-size: 22px;
    font-weight: 600;
}
.portfolio .icon {
    padding: 50px 0;
}
.portfolio .icon a {
    width: 50px;
    height: 50px;
    line-height: 50px;
    margin-left: 5px;
    margin-right: 5px;
    display: inline-block;
}
.portfolio .icon a i {
    font-size: 15px;
}
/* ---- funfacts ----*/
.funfact {
    padding: 30px;
    position: relative;
}
.funfact .title{
    font-size: 20px;
    font-weight: 700;
}
.funfact .counter{
    font-size: 40px;
    font-weight: 800;
}
.funfact .top_icon i {
	font-size: 50px;
}
/* ---- testimonials ----*/
.testimonial {
	box-shadow: 0px 2px 60px 0px rgba(0,0,0,.1);
    padding: 30px;
    margin-bottom: 30px;
}
.testimonial h4 {
    font-size: 28px;
    line-height: 1.3;
    font-weight: 600;
}
.testimonial h6 {
    font-size: 18px;
    line-height: 1;
    font-weight: 600;
    margin: 0;
}
.testimonial .img-author {
    width: 50px !important;
    height: 50px;
    object-fit: cover;
}
/* ---- ==== Breadcrumb ==== ----*/
.breadcrumb {
	background-image: url(images/breadcrumb.jpg);
	padding: unset !important;
	margin: unset;
	background-color: transparent;
	border-radius: 0;
	background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}
.breadcrumb .inner {
    height: 100%;
    padding: 250px 0 20px 0;
    position: relative;
    width: 100%;
}
/* ---- ==== img-effect ==== ----*/
.img_eff {
  overflow: hidden; 
}
.img_eff img {
	transition: transform .8s;
}
.img_eff img:hover {
  -ms-transform: scale(1); 
  -webkit-transform: scale(1);
  transform: scale(1.5); 
}
/* ---- ==== Blog ==== ----*/
.blog_post {
	box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.1);
}
.post-thumbnail img, .post_img img {
	width: 100%;
	height: auto;
}
.post-thumbnail a:focus {
  outline-style: solid;
  outline-width: 1px;
}
.post_img {
	position: relative;
}
.post_img span.date {
    bottom: 30px;
    position: absolute;
    left: 30px;
    width: auto;
    padding: 0px 6px;
    font-weight: 600;
}
.post_content {
	padding: 30px;
}
.post_content h4,  .post_content h1 {
	font-size: 24px;
	font-weight: 600;
}
.post_content p:last-child {
    margin-bottom: 0;
}
.post_meta{
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.5px;
    opacity: 0.8;
    text-transform: capitalize;
    padding-bottom: 5px;
}
.post_meta a{
    display: inline-flex;
}
.post_meta > span {
    margin-right: 10px;
}
.post_meta span:before {
    font-family: FontAwesome;
    position: relative;
    display: inline-flex;
    padding-right: 8px;
    padding-left: 1px;
    text-decoration: inherit;
    vertical-align: baseline;
}
.post_meta .date:before {
    content: "\f017";
}
.post_meta .author:before {
    content: "\f2c0";
}
.categories:before {
    content: "\f115";
}
.categories a {
    margin-right: 6px;
}
.comment-area, .comments-area {
  padding: 20px;
  border: 1px solid #eee;
}
footer.comment-meta {
  background: unset;
}
/* ---- ==== Sidebar ==== ----*/
.sidebar .widget {
  padding: 20px;
  border: 1px solid #f1f1f1;
  margin-bottom: 30px;
}
.sidebar .widget h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 15px;
  padding-left: 10px;
  border-left-width: 4px;
  border-left-style:solid;
}
/* ---- ==== widgets ==== ----*/
.widget ul {
	padding: 0;
	margin: 0;
}
.widget ul li {
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid #eee;
}
.widget ul li:last-child {
	border-bottom: unset;
  padding-bottom: 0;
}
.widget .tagcloud a {
    display: inline-block;
    line-height: 20px;
    margin: 0 5px 9px 0;
    padding: 6px 12px;
    border-radius: 3px;
}
.widget .input-group-btn .btn {
	border-radius: 0 4px 4px 0;
}
.widget .calendar_wrap table tbody td {
    line-height: 2.5em;
    transition: background 0.15s ease 0s;
    text-align: center;
    border-width: 1px;
    border-style: solid;
    padding: 0 8px;
}
.widget .textwidget img {
	width: 100%;
	height: auto;
}
.widget ul li .media-body h5 {
	font-size: 18px;
}
.widget ul li.media img {
	width: 70px;
    height: 70px;
    object-fit: cover;
}
/* ---- ==== Footer ==== ----*/
footer {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
footer .inner .top{
	padding-top: 40px;
	padding-bottom: 40px;
}
footer .widget h4 {
	margin-bottom: 20px;
	font-weight: 600;
	font-size: 20px;
}
footer .widget ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
footer .widget ul li {
	margin: 0;
	padding: 6px 0;
	border-bottom: unset;
}
footer .inner .bottom {
	padding-top: 10px;
	padding-bottom: 10px;
}
/* ---- ==== Media ==== ----*/
@media (min-width: 1200px) {
  .container {
  	max-width: 1200px;
  }
}
@media (max-width: 767.98px) {
	.topbar ul.left, .topbar ul.right {
		justify-content: center;
	}
	.topbar .quote_btn {
    margin: unset;
	}
	.sliderhome .owl-slide-title {
		font-size: 35px;
		line-height: 1.25;
	}
}
@media (max-width: 991.98px) {
	.sliderhome .owl-slide-title {
		font-size: 45px;
		line-height: 1.25;
	}
}
/* ---- ==== WordPress Core ==== ----*/
img.alignnone {
	max-width: 100%;
	height: auto;
}
img.size-large {
	width: 100%;
	height: auto;
}
select {
    width: 100%;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}

.no-js .some-element .screen-reader-text {
    position: static;
    -webkit-clip-path: none;
    clip-path: none;
    width: auto;
    height: auto;
    margin: 0;
}

.nav-links {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}
.nav-previous, .nav-next {
    width: 50%;
    padding: 25px 0;
    font-size: 16px;
    font-weight: 600;
}
.nav-next {
    text-align: right;
}

/* =WordPress Core
-------------------------------------------------------------- */
.bypostauthor{}
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Wp-caption css ----------------------------------------------- */
.wp-caption {
  border: 1px solid #cccccc;
  margin-bottom: 1.5rem;
  max-width: 100%;
}

#colophon .wp-caption {
  border: 1px solid #444444;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin: 1.2% auto 0;
  max-width: 98%;
}

.wp-caption-text {
  text-align: center;
}

.wp-caption .wp-caption-text {
  margin: 0.8075rem 0;
}

.gallery-caption {
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}