/**
.---------------------------------------------------------------------.
|  @package: Theme Start5up (a.k.a. theme Startup Pro)
|  @version: v2.4.5.1 (21 January 2025)
|  @link:    http://italinux.com/startup-pro
|  @docs:    http://italinux.com/theme-startup-pro
|
|  @author: Matteo Montanari <matteo@italinux.com>
|  @link:   https://matteo-montanari.com
'---------------------------------------------------------------------'
.---------------------------------------------------------------------------.
| @copyright (c) 2025                                                       |
| ------------------------------------------------------------------------- |
| @license: Concrete5.org Marketplace Commercial Add-Ons & Themes License   |
|           https://concrete5.org/help/legal/commercial_add-on_license      |
|           or just: file://theme_start5up/LICENSE.TXT                      |
|                                                                           |
| This program is distributed in the hope that it will be useful - WITHOUT  |
| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or     |
| FITNESS FOR A PARTICULAR PURPOSE.                                         |
'---------------------------------------------------------------------------'
*/
.single-space-bottom > section.services.page-block,
.double-space-bottom > section.services.page-block,
.no-spaces > section.services.page-block,
.no-space-bottom > section.services.page-block {
  padding-bottom: 0 !important;
}
.single-space-top > section.services.page-block,
.double-space-top > section.services.page-block,
.no-spaces > section.services.page-block,
.no-space-top > section.services.page-block {
  padding-top: 0 !important;
}
.no-sides-spaces > section.services.page-block {
  padding-left: 0px !important;
  padding-right: 0px !important;
}
.no-spaces.strict > section.services.page-block div.service-item,
.no-sides-spaces.strict > section.services.page-block div.service-item {
  max-width: 100% !important;
}
section.services {
  position: relative;
  overflow: hidden;
}
section.services a:not(.CTA-clean).info::after,
section.services a:not(.CTA-clean).goto::after {
  margin-top: 0px;
  font-family: "FontAwesome";
  font-size: 0.8em;
  text-decoration: none;
}
section.services a:not(.CTA-clean).info > span,
section.services a:not(.CTA-clean).goto > span {
  align-self: center;
}
section.services a:not(.CTA-clean).info::after {
  content: "\f05a";
  margin-right: 5px;
  margin-left: 5px;
}
section.services a:not(.CTA-clean).goto::after {
  content: "\f08e";
  margin-left: 6px;
  margin-right: 10px;
}
section.services div.global-cta {
  margin-top: 4em;
  margin-bottom: 2em;
  font-size: 120%;
  text-align: center;
}
section.services div.global-cta a.btn {
  width: 30%;
}
section.services .btn {
  max-width: 460px;
}
section.services .btn.btn-primary[disabled] {
  cursor: default;
}
section.services.editMode {
  border: 1px dashed #bbb;
}
section.services.page-block {
  margin: 0px auto;
  padding: 6em 8%;
}
section.services.over-image::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  content: "";
}
section.services.over-image {
  background-color: transparent;
  background-repeat: repeat;
  background-attachment: fixed;
  background-size: cover;
  background-position: center center;
}
section.services.over-image.cfg-color h1 {
  color: inherit;
}
section.services.over-image.cfg-color h2 {
  color: inherit;
}
section.services.over-image.cfg-color h3 {
  color: inherit;
}
section.services.over-image.cfg-color h4 {
  color: inherit;
}
section.services.over-image.cfg-color h5 {
  color: inherit;
}
section.services.over-image.cfg-color h6 {
  color: inherit;
}
section.services.over-image.cfg-color p {
  color: inherit;
}
section.services.over-image.cfg-color a:not(.btn) {
  color: inherit;
}
section.services div.block-header {
  position: relative;
  padding: 0 0 3em;
  text-align: center;
  border: none;
}
section.services .hide {
  display: none;
  visibility: hidden;
}
section.services .show {
  display: block;
  visibility: visible;
}
section.services .single-space-bottom {
  padding-bottom: 1.8em;
}
section.services .double-space-bottom {
  padding-bottom: 3.2em;
}
section.services .single-space-top {
  padding-top: 1.8em;
}
section.services .double-space-top {
  padding-top: 3.2em;
}
section.services .no-margins {
  margin: 0 !important;
}
section.services .no-paddings {
  padding: 0 !important;
}
section.services .no-spaces {
  margin: 0 !important;
  padding: 0 !important;
}
section.services .no-sides-margins {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
section.services .no-sides-paddings {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
section.services .no-space-bottom {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
section.services .no-space-top {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
section.services .no-margin-bottom {
  margin-bottom: 0 !important;
}
section.services .no-margin-top {
  margin-top: 0 !important;
}
section.services .nopaque {
  opacity: 0;
}
section.services .opaque {
  opacity: 1;
}
@media screen and (max-width: 1600px) {
  section.services.page-block {
    padding-left: 6%;
    padding-right: 6%;
  }
}
@media screen and (max-width: 1280px) {
  section.services.page-block {
    padding-left: 4%;
    padding-right: 4%;
  }
}
@media screen and (max-width: 1024px) {
  section.services.page-block {
    padding-left: 3%;
    padding-right: 3%;
  }
}
section.services[class^="mobile_view"].page-block {
  padding-left: 2%;
  padding-right: 2%;
}
@media screen and (max-width: 500px) {
  section.services.page-block {
    padding-left: 2%;
    padding-right: 2%;
  }
}
section.services + section.services.page-block {
  padding-top: 0px;
}
section.services.page-block {
  padding-left: 0%;
  padding-right: 0%;
}
section.services.over-image {
  background-position: 20% center;
}
section.services div.global-cta {
  padding-bottom: 50px;
}
section.services .btn {
  padding-left: 0px;
  padding-right: 0px;
}
section.services div.main {
  position: relative;
  width: 100%;
  margin: 0px auto;
  text-align: center;
}
section.services div.main > div {
  padding: 0px;
}
section.services div.main div.services-item-1 > div:first-of-type::before {
  background-color: rgba(137, 85, 41, 0.48);
}
section.services div.main div.services-item-1 > div:first-of-type div.inner-content.with-shadow h3,
section.services div.main div.services-item-1 > div:first-of-type div.inner-content.with-shadow p {
  text-shadow: 0px 0px 1px #895529;
}
section.services div.main div.services-item-1 > div:first-of-type div.inner-content.clean h3,
section.services div.main div.services-item-1 > div:first-of-type div.inner-content.clean p {
  text-shadow: 0px 0px 1px rgba(137, 85, 41, 0.5);
}
section.services div.main div.services-item-2 > div:first-of-type::before {
  background-color: rgba(109, 137, 41, 0.48);
}
section.services div.main div.services-item-2 > div:first-of-type div.inner-content.with-shadow h3,
section.services div.main div.services-item-2 > div:first-of-type div.inner-content.with-shadow p {
  text-shadow: 0px 0px 1px #6d8929;
}
section.services div.main div.services-item-2 > div:first-of-type div.inner-content.clean h3,
section.services div.main div.services-item-2 > div:first-of-type div.inner-content.clean p {
  text-shadow: 0px 0px 1px rgba(109, 137, 41, 0.5);
}
section.services div.main div.services-item-3 > div:first-of-type::before {
  background-color: rgba(101, 41, 137, 0.48);
}
section.services div.main div.services-item-3 > div:first-of-type div.inner-content.with-shadow h3,
section.services div.main div.services-item-3 > div:first-of-type div.inner-content.with-shadow p {
  text-shadow: 0px 0px 1px #652989;
}
section.services div.main div.services-item-3 > div:first-of-type div.inner-content.clean h3,
section.services div.main div.services-item-3 > div:first-of-type div.inner-content.clean p {
  text-shadow: 0px 0px 1px rgba(101, 41, 137, 0.5);
}
section.services div.main div.services-item-4 > div:first-of-type::before {
  background-color: rgba(53, 41, 137, 0.48);
}
section.services div.main div.services-item-4 > div:first-of-type div.inner-content.with-shadow h3,
section.services div.main div.services-item-4 > div:first-of-type div.inner-content.with-shadow p {
  text-shadow: 0px 0px 1px #352989;
}
section.services div.main div.services-item-4 > div:first-of-type div.inner-content.clean h3,
section.services div.main div.services-item-4 > div:first-of-type div.inner-content.clean p {
  text-shadow: 0px 0px 1px rgba(53, 41, 137, 0.5);
}
section.services div.inner-content,
section.services div.outer-content {
  max-width: 380px;
  height: auto;
  left: 0px;
  right: 0px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
section.services div.inner-content p,
section.services div.outer-content p {
  word-wrap: normal;
  word-break: normal;
  margin: 10px auto;
}
section.services div.inner-content {
  position: absolute;
  width: 70%;
  max-height: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
     -moz-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: 5px;
  margin-top: auto;
  margin-bottom: auto;
  visibility: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 2;
}
section.services div.inner-content h4 {
  margin-top: 0px;
}
section.services div.inner-content p {
  font-weight: 500;
}
section.services div.inner-content strong,
section.services div.inner-content b {
  font-weight: 600;
}
section.services div.outer-content {
  position: relative;
  width: 96%;
  margin-bottom: 5em;
  overflow: hidden;
}
section.services div.outer-content h4 {
  margin-top: 30px;
  margin-bottom: 25px;
}
section.services div.service-item {
  position: relative;
  max-width: 600px;
  margin: 0px auto 30px auto;
  padding-left: 15px;
  padding-right: 15px;
  text-align: center;
}
section.services div.service-item.with-info div.service-icon::before {
  z-index: 1;
}
section.services div.service-item.with-info div.service-icon.enable-content div.inner-content {
  z-index: 3;
  border-radius: 50% 50% 40px 40px;
}
section.services div.service-item.with-content-url div.service-icon div.inner-content {
  z-index: 3;
}
section.services div.service-item.with-content-url div.service-icon div.inner-content h4 {
  padding-top: 5px !important;
}
section.services div.service-item.with-content-url div.service-icon div.inner-content p {
  margin-bottom: 0px !important;
}
section.services div.service-item.with-stretched-image div.service-icon {
  width: 100%;
}
section.services div.service-item div.service-icon {
  position: relative;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  background-color: transparent;
  border-radius: 0px;
  display: inline-block;
  overflow: hidden;
}
section.services div.service-item div.service-icon::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  content: "";
  display: block;
}
section.services div.service-item div.service-icon img {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}
section.services div.service-item div.service-icon.play-now > img {
  -webkit-transform: scale3d(1, 1, 1);
     -moz-transform: scale3d(1, 1, 1);
       -o-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-transition: all 0.5s linear;
     -moz-transition: all 0.5s linear;
       -o-transition: all 0.5s linear;
          transition: all 0.5s linear;
}
section.services div.service-item div.service-icon.play-now:hover > img {
  -webkit-transform: scale3d(1.2, 1.2, 1);
     -moz-transform: scale3d(1.2, 1.2, 1);
       -o-transform: scale3d(1.2, 1.2, 1);
          transform: scale3d(1.2, 1.2, 1);
  -webkit-transition-duration: 0.3s;
     -moz-transition-duration: 0.3s;
       -o-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
section.services div.service-item div.service-icon > a {
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: 0 auto;
  text-align: center;
  border-width: 0px;
  border-style: none;
  border-color: transparent;
  display: block;
  overflow: hidden;
  z-index: 3;
}
@media screen and (max-width: 1680px) {
  section.services div.inner-content,
  section.services div.outer-content {
    width: 95%;
  }
}
@media screen and (max-width: 1200px) {
  section.services div.inner-content,
  section.services div.outer-content {
    width: 90%;
  }
}
@media screen and (max-width: 1024px) {
  section.services div.inner-content {
    visibility: hidden !important;
  }
  section.services div.outer-content {
    display: block !important;
    margin-bottom: 8em;
  }
  section.services[class*="_inner_info "] div.service-item div.service-icon::before,
  section.services[class*="_outer_info "] div.service-item div.service-icon::before {
    display: none;
  }
  section.services[class*="_inner_info "] div.service-item div.outer-content.empty-content,
  section.services[class*="_outer_info "] div.service-item div.outer-content.empty-content {
    display: none !important;
  }
  section.services[class*="_hidden_info "] div.inner-content,
  section.services[class*="_hide "] div.inner-content {
    visibility: hidden !important;
  }
  section.services[class*="_hidden_info "] div.outer-content,
  section.services[class*="_hide "] div.outer-content {
    display: none !important;
  }
  section.services div.global-cta {
    margin-top: 1em !important;
  }
  section.services div.global-cta a.btn {
    width: 50%;
  }
}
@media screen and (max-width: 991px) {
  section.services div.main div.inner-content,
  section.services div.main div.outer-content {
    width: 85%;
  }
  section.services div.main div.service-item {
    max-width: 700px;
  }
  section.services div.main div.service-item div[data-animation="icon"],
  section.services div.main div.service-item img {
    -webkit-animation: 0s ease 0s normal none 1 running none !important;
       -moz-animation: 0s ease 0s normal none 1 running none !important;
         -o-animation: 0s ease 0s normal none 1 running none !important;
            animation: 0s ease 0s normal none 1 running none !important;
    -webkit-transform: none !important;
       -moz-transform: none !important;
         -o-transform: none !important;
            transform: none !important;
    -webkit-transition-property: none !important;
       -moz-transition-property: none !important;
         -o-transition-property: none !important;
            transition-property: none !important;
  }
  section.services div.main div.service-item a.popup-image {
    pointer-events: none;
    cursor: default;
  }
}
@media screen and (max-width: 768px) {
  section.services div.main div.service-item {
    max-width: 700px;
  }
}
section.services[class^="mobile_view"] div.service-item {
  max-width: 700px;
  margin-bottom: 40px;
}
section.services[class^="mobile_view"] div.service-item div.inner-content,
section.services[class^="mobile_view"] div.service-item div.outer-content {
  width: 90%;
}
section.services[class^="mobile_view"] div.service-item div.inner-content h4,
section.services[class^="mobile_view"] div.service-item div.outer-content h4 {
  text-shadow: none;
}
section.services[class^="mobile_view"] div.global-cta a.btn {
  width: 80%;
}
@media screen and (max-width: 500px) {
  section.services[class^="mobile_view"] div.global-cta {
    margin-top: 1em !important;
  }
}
@media screen and (max-width: 500px) {
  section.services div.service-item {
    margin-left: 2px !important;
    margin-right: 2px !important;
    margin-bottom: 40px;
  }
  section.services div.service-item div.inner-content,
  section.services div.service-item div.outer-content {
    width: 92%;
  }
  section.services div.service-item div.inner-content h4,
  section.services div.service-item div.outer-content h4 {
    text-shadow: none;
  }
  section.services div.global-cta {
    margin-top: 2em !important;
  }
  section.services div.global-cta a.btn {
    width: 80%;
  }
}
