/*
Theme Name: PPM Quickstart
*/

/* Box sizing rules */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Remove default padding */
ul[class],
ol[class] {
    padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
    margin: 0;
}

/* Set core body defaults */
body {
    min-height: 100vh;
    scroll-behavior: smooth;
    text-rendering: optimizeSpeed;
    line-height: 1.5;
    background-color: #fff;
    color: #333;
}
select, input {
    background-color: #fff;
    border: 1px solid #ddd;
    color: #333;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
    list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
    text-decoration-skip-ink: auto;
}

body {
    font-family: Helvetica, 'sans-serif';
}

/* Natural flow and rhythm in articles by default */
article > * + * {
    margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
    font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/*.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}*/

/*.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background-color:#333}.woocommerce #respond input#submit.alt:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background-color:#000}.woocommerce-message{border-top-color:#000}.woocommerce-message::before{color:#000}.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background-color:#333;color:#fff}.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background-color:#000;color:#fff}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{min-width:150px}*/

.alignleft {
    float: left;
    margin-right: 15px;
}
.alignright {
    float: right;
    margin-left: 15px;
}
.aligncenter {
    display: block;
    margin: 0 auto 15px;
}
a:hover { text-decoration: none }
a:focus { outline: 0 solid; text-decoration: none}
img {
    max-width: 100%;
    height: auto;
}
input:focus, button:focus, textarea:focus, a:focus {outline: none}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 15px;
    font-weight: 700;
}
p {margin-bottom: 15px}
p:last-child {margin-bottom: 0}

.content-block {padding: 60px 0}

.internal-content-wrap {
    min-width: 100%;
}

input[type=text], input[type=email], input[type=tel], input[type=password], textarea {
    border: 1px solid #ddd;
    padding: 10px;
}
.elementor-element .form-css .gform_fields{
    gap: 17px;
}
.elementor-element .form-css input[type=text],
.elementor-element .form-css input[type=tel],
.elementor-element .form-css input[type=email],
.elementor-element .form-css textarea{
    border-radius: 3px;
    background: #EBEBEB;
    border: 0;
    height: 37px;
    color: #000;
    font-size: 17px;
    font-weight: 400;
    padding: 0px 14px;
}
.elementor-element .form-css input::placeholder,
.elementor-element .form-css textarea::placeholder{
    color: #B2B2B2;
    font-size: 17px;
    font-weight: 400;
}

.elementor-element .form-css input[type=file]{
  border-radius: 3px;
  border: 1px dashed #E3E3E3;
  background: #FBFBFF;
  border-radius: 3px;
  height: 37px;
  color: #B2B2B2;
  font-size: 17px;
  font-weight: 400;
  padding: 0px 14px;
}
.elementor-element .form-css textarea{
    padding: 8px 14px;
}
.elementor-element .form-css input[type=text]:focus,
.elementor-element .form-css input[type=tel]:focus,
.elementor-element .form-css input[type=email]:focus,
.elementor-element .form-css textarea:focus,
.elementor-element .form-css input[type=file]:focus
{
  outline: 0;
}
.form-css input[type=submit]{
    color: #FFF!important;
    font-family: "Josefin Sans"!important;
    font-size: 20px!important;
    font-weight: 600!important;
    background:#F15A29 !important;
    border-radius: 270px !important;
    padding: 13px 37px !important;
    margin-top: 10px  !important;
    margin: 0 auto !important;
}
.form-css input[type=submit]:hover{
  background:#000 !important;
}

.elementor-element.hero-bg {
    position: relative;
    z-index: 1;
}
.elementor-element.hero-bg::after{
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    background: linear-gradient(259deg, rgba(0, 0, 0, 0.65) 0%, #000 81.46%);
    top: 0;
    left: 0;
    background-repeat: no-repeat;
	   background-size: contain;
    z-index: -1;
}

.button-overlay .elementor-button {
  position: relative;
  z-index: 1;
}
.button-overlay .elementor-button::after{
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  background: linear-gradient(203deg, rgba(241, 90, 41, 0.00) 19.43%, #F15A29 68.28%);
  opacity: .65;
  bottom: 0;
  left: 0;
  border-radius: 15px;
  z-index: -1;
  
}
.button-overlay:hover .elementor-button::after {
  display: none;
}
.button-overlay  .elementor-button-icon {
  height: 12px;
  width: 12px;
}
.button-overlay  .elementor-button .elementor-button-content-wrapper {
  align-items: center;
}
.button-overlay:hover .elementor-button::after {
  display: none;
}
.button-overlay:hover .elementor-button-icon svg{
  filter: brightness(0) saturate(100%) invert(64%) sepia(89%) saturate(4482%) hue-rotate(341deg) brightness(93%) contrast(103%);
}

.header-btn-fx.elementor-widget-button .elementor-button-icon svg {
    min-width: 35px;
    position: absolute;
    right: 15px;
}

.header-btn-fx.elementor-widget-button span.elementor-button-text,.btn-border.elementor-widget-button span.elementor-button-text {
    position: relative;
    bottom: -2px;
}
.btn-border .elementor-button-wrapper {
    border: 2px solid transparent; 
    border-radius: 50px; 
    background-image: linear-gradient(#95381a, #95381a), linear-gradient(90deg, #FFF 0.56%, #F15A29 99.44%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
}
.btn-border.elementor-widget-button .elementor-button-icon svg {
    min-width: 43px;
    position: absolute;
    right: 1px;
	background-color: #f05a29;
    border-radius: 50%;
}
.border-black.btn-border .elementor-button-wrapper {
    background-image: linear-gradient(#95381a, #95381a), linear-gradient(90deg, #000 0.56%, #F15A29 99.44%);
}
.button-overlay span.elementor-button-text {
    text-align: left;
}

.button-overlay .elementor-button .elementor-button-content-wrapper {
    align-items: end !important;
}

.button-overlay .elementor-button-icon {
    position: relative;
    top: -9px;
    right: -8px;
}
.elementor-element.expets-hover {
    margin-bottom: -100%;
    transition:.5s;
}

.elementor-element.outer-ex-box:hover .elementor-element.expets-hover {
    margin: 0;
}
.menu-arrow a.elementor-item {
    position: relative;
    padding-left:20px !important;
}

.menu-arrow a.elementor-item:before {
    position: absolute;
    content: "";
    background: transparent;
    border: 1.5px solid #F15A29;
    width: 8px;
    height: 8px;
    opacity: 1 !important;
    transform: rotate(45deg);
    border-left: 0;
    border-bottom: 0;
    top: 50%;
    margin-top: -4px;
}
.elementor .left-bg-size:before {
    max-width: 35%;
}
.elementor-element.button-overlay .elementor-button-wrapper,.elementor-element.button-overlay .elementor-button-wrapper > a {
    height: 100%;
}

.elementor-element.button-overlay .elementor-button-wrapper > a {
    display: flex;
}
.icon-style span.elementor-icon {
    padding: 24px;
    background: #F15A29;
    border-radius: 50%;
}

.box-hover:hover .icon-style span.elementor-icon {
  background: #fff;
}
.box-hover:hover .icon-style span.elementor-icon svg path{
  fill: #F15A29;
}

.accordion-css .e-n-accordion > .e-n-accordion-item[open] > .e-n-accordion-item-title {
    padding-bottom: 12px;
}
.icon-bg .elementor-icon{
	padding: 24px;
    background: #F15A29;
    border-radius: 50%;
}

.overflow-hidden {
    overflow: hidden;
}


.elementor-element .caro-shadow {
  position: relative;
  z-index: 1;
}

.elementor-element.caro-shadow::before{
  position: absolute;
  content: "";
  height: 100%;
  width: 30%;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0.00) 0%, #FFF 87.02%);
  left: 0;
  top: 0;
  z-index: 2;
}
.elementor-element.caro-shadow::after{
  position: absolute;
  content: "";
  height: 100%;
  width: 30%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.00) 0%, #FFF 87.02%);
  right: 0;
  top: 0;
  z-index: 2;
}
.gallery-css a.elementor-item{
	background: transparent;
    padding: 8px 30px;
    border-radius: 100px;
}
.gallery-css a.elementor-item:hover,
.gallery-css a.elementor-item.elementor-gallery-title.elementor-item-active{
    background: #F15A29;
    padding: 8px 30px;
    border-radius: 100px;
}

.gallery-css .elementor-gallery__titles-container {
	padding: 10px 13px;
	border-radius: 60px;
	border: 0.934px solid #E4E4E4;
	background: #F5F5F5;
}
.elementor-element .contact-css .gform_fields{
    row-gap: 27px;
    column-gap: 37px;
}
.elementor-element .contact-css input[type=text],
.elementor-element .contact-css input[type=tel],
.elementor-element .contact-css input[type=email],
.elementor-element .contact-css textarea{
    border-radius: 12px;
    border: 1.158px solid #CCC;
    box-shadow: none;
    height: 55px;
    color: #333;
    font-size: 18px;
    font-weight: 400;
    padding: 0px 18px;
}
.elementor-element .contact-css textarea{
    padding: 10px 18px;
}
.contact-css input[type=submit]{
    color: #FFF !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    background: #000 !important;
    border-radius: 100px !important;
    padding: 13px !important;
    margin-top: 10px  !important;
    width: 100% !important;
}
.contact-css input[type=submit]:hover{
    background: #F15A29 !important;
}
.elementor-element .contact-css .gfield_label {
    color: #333;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
}

.elementor-element .contact-css .gform_required_legend {
    display: none;
}

.elementor-element.overlay-bottom, .elementor-element.left-overlay {
  position: relative;
}
.elementor-element.overlay-bottom::before{
  position: absolute;
  top: 40px;
}

.elementor-element.left-overlay::before{
  position: absolute;
  top: -90px;
}

.project-category span.elementor-post-info__terms-list a{
    background: #9b1a1a;
    padding: 4px 10px;
    border-radius: 5px;
    
}
.project-category span.elementor-post-info__terms-list{
    display: flex!important;
    flex-direction: row;
    gap: 5px !important;
    flex-wrap: wrap;
}
/* Medium Layout: 1280px. */
@media only screen and (min-width: 992px) and (max-width: 1200px) {


}
/* Tablet & mobile Layout: 768px. */
@media only screen and (max-width: 991px) {


}

/* Tablet Layout: 768px. */
@media only screen and (min-width: 768px) and (max-width: 991px) {


}
/* Mobile Layout: 320px. */
@media only screen and (max-width: 767px) {


}
/* Wide Mobile Layout: 480px. */
@media only screen and (min-width: 480px) and (max-width: 767px) {

}