/*
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;
}
.blog-cat-css h5 {
    color: #F7941C;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 5px;
}
.blog-cat-css ul{
    list-style: none;
    padding-left: 0;
    
}
.blog-cat-css ul li, .blog-cat-css ul li a{
    color: #535353;
    font-size: 16px;
    font-weight: 400;
}
.elementor-element .form-css p.gform_required_legend {
    display:  none;
}

.elementor-element .form-css .gform_fields {
    row-gap: 15px;
}
body .elementor-element .form-css .ginput_address_zip {
    inline-size: 100%;
}

body .elementor-element .form-css .gfield--type-address legend.gfield_label {
    display: block;
    margin-bottom: 11px;
    position: relative;
    top: 3px;
}
.elementor-element .form-css  label.gfield_label,
.elementor-element .form-css legend.gfield_label,
.elementor-element .form-css .gform-grid-col label.gform-field-label--type-sub{
    color: #282828;
    font-size: 16px;
    font-weight: 500;
    padding-left: 23px;
    margin-top: 5px;
    text-transform: uppercase;
}
.elementor-element .form-css fieldset.gfield--type-checkbox {
    padding-left: 23px
}

.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 input[type=number],
.elementor-element .form-css textarea,
.elementor-element .form-css select,
.elementor-element .form-css input[type=file]{
    border:0;
    border-radius: 25px;
    box-shadow: none;
    color: #000;
    font-size: 16px;
    font-weight: 400;
    background: #F5F4FA !important;
    height: 40px;
    padding: 0 23px
}
.elementor-element .form-css textarea,
.elementor-element .form-css select{
    padding: 12px 23px;
}
.elementor-element .form-css input:focus,
.elementor-element .form-css textarea:focus,
.elementor-element .form-css select:focus{
    outline: 0;
    
}
.form-css input[type=submit]{
    border-radius:25px !important;
    background: #F7941C!important;
    color: #F5F4FA!important;
    font-size: 16px!important;
    font-weight: 700!important;
    margin: 0 auto !important;
    padding:15px 44px !important;
    cursor:  pointer !important;
}
.form-css input[type=submit]:hover{
    background: #282828 !important;
}

.elementor-element .form-css .ginput_address_city, .elementor-element .form-css .ginput_address_state, .elementor-element .form-css .ginput_address_zip{
    inline-size: 33.33%
    
}
.cat-link-color span.elementor-icon-list-text a{
    color: #535353;
}
.elementor-sticky--active .elementor-element.sticky-box-shadow-none {
    border-radius: 0 !important;
    box-shadow: none !important;
}

header .elementor-sticky--active {
    box-shadow: 0 0 20px rgba(0,0,0,.2);
}

.elementor-element.frame-over {
    position: relative;
    z-index: 1;
}

.elementor-element.frame-over:after,.elementor-element.gray-frame:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-size: 100% 100% !important;
    background-image: url(assets/img/white-frame.png);
}
.elementor-element.gray-frame:after {
    background-image: url(assets/img/gray-frame.png);
}
.bg-size:before {
    background-size: 100% 100% !important;
}
.ppm-featured-reviews {
    padding-left: 50%;
    position: relative;
    min-height: 400px;
}

.review-icon {
    width: 100px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #000000;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 20px;
    cursor: pointer;
}

.elementor .review-icon img,.elementor .review-content h3 span img {
    max-width: 70%;
}

.ppm-featured-reviews > div:nth-child(2) .review-icon,.ppm-featured-reviews > div:nth-child(5) .review-icon {
    left: calc(50% - 200px);
}

.ppm-featured-reviews > div:nth-child(5) .review-icon {
    top: auto;
    bottom: 20px;
}

.ppm-featured-reviews > div:nth-child(4) .review-icon {
    left: 50px;
    top: auto;
    bottom: 0;
}

.ppm-featured-reviews > div:nth-child(3) .review-icon {
    top: calc(50% - 50px);
    left: calc(25% - 100px);
}

.elementor .review-content img {
    max-width: 120px;
    margin-bottom: 15px;
}

.review-content h3 span {
    display: flex;
    width: 45px;
    height: 45px;
    justify-content: center;
    align-items: center;
    background: #f7941c;
    border-radius: 50%;
}

.elementor .review-content h3 {text-transform: capitalize;font-size: 20px;font-weight: 500;margin: 20px 0 0 !important;display: flex;align-items: center;column-gap: 15px;font-style: normal;}

.ppm-featured-reviews .review-content {
  visibility: hidden;
  opacity: 0;
  margin-left: 30px;
  transition: .3s;
  height: 0;
  
}
.ppm-featured-reviews .review-inner{
    padding: 60px;
    min-height: 370px;
    display: none;
    background: #fff;
    box-shadow: 3px 4px 11px rgba(0,0,0,.25);
    border-radius: 30px;
    font-size: 22px;
    font-weight: 600;
    font-style: italic;
    line-height: 1.4;
}
.ppm-featured-reviews .review-item.active .review-content {
  visibility: visible;
  opacity: 1;
  margin: 0;
}
.ppm-featured-reviews .review-item.active .review-inner{
    display: block;
}
.review-icon:before {
    position: absolute;
    width: 550px;
    height: 2px;
    background: #F7941C;
    content: "";
    right: -525px;
    visibility: hidden;
    opacity: 0;
    z-index: 2;
}

.active .review-icon:before {
    visibility: visible;
    opacity: 1;
}
.elementor .review-content h3 span img{
    margin: 0;
}
.ppm-featured-reviews > div:nth-child(2) .review-icon:before, .ppm-featured-reviews > div:nth-child(5) .review-icon:before {
    width: 150px;
    right: -125px;
}

.ppm-featured-reviews > div:nth-child(3) .review-icon:before {
    width: 350px;
    right: -325px;
}

.ppm-featured-reviews > div:nth-child(4) .review-icon:before {
    width: 500px;
    right: -475px;
}
.gray-quote-box .review-inner {
    background: #f5f4f9;
}
.rev-quote-bg {
    width: 90px;
    height: 70px;
    background-size: contain;
    background-color: #fff;
    margin-left: auto;
    margin-top: -100px;
    margin-bottom: 30px;
}
.elementor .review-icon img {
    max-height: 80%;
}

.elementor-element.footer-img-overlay {
    position: relative;
    
}
.elementor-element.footer-img-overlay::after {
    position: absolute;
    content: "";
    height: 50%;
    width: 50%;
    background: linear-gradient(237deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.62) 100%);
    left: 0;
    right: auto;
    bottom: 0;
}

.tab-css .e-n-tabs-heading {
    background: #fff;
    padding: 14px;
    border-radius: 23px;
}
/* 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) {

.menu-center ul li a{
    display: flex;
    justify-content: center;
}
.ppm-featured-reviews .review-inner {
    display: block;
}

.ppm-featured-reviews .review-content {
    visibility: visible;
    opacity: 1;
    margin: 0;
    height: auto;
}

.ppm-featured-reviews {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 40px;
}

.review-icon {
    display: none;
}

.ppm-featured-reviews .review-inner {
    text-align: center;
    font-size: 15px;
    min-height: auto;
    padding: 15px;
}

.rev-quote-bg {
    width: 50px;
    height: 40px;
    margin-top: -34px;
    margin-bottom: 5px;
}

.elementor .review-content h3 {
    justify-content: center;
}
.review-item {
    width: 100%;
}

.tab-css .e-n-tabs-heading .e-n-tab-title{
    order: inherit !important;
    margin-bottom: 0 !important;
}

.e-n-tabs-heading {
    display: flex;
    flex-direction: column !important;
}
}

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


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

.elementor-element.frame-over:after,.elementor-element.gray-frame:after{
    display: none;
}
.tab-css .e-n-tabs-content .e-active {
margin-top: 30px;
}
}
/* Wide Mobile Layout: 480px. */
@media only screen and (min-width: 480px) and (max-width: 767px) {

}