/*
Theme Name:   GP - Child
Theme URI:    http://alessioangeloro.it
Description:  Alessio Angeloro Child of Generate Press
Author:       Alessio Angeloro
Author URI:   http://alessioangeloro.it
Template:     generatepress
Version:      2.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  alessioangeloro
*/
:root{
  --heading:#0e1319;
  --paragraph:#0f172b;
  --link:#155dfc;
  --link-hover:#3476f9;
  --btn-primary:#155dfc;
  --btn-primary-hover:#3476f9;
  --btn-secondary:#0f172b;
  --btn-secondary-hover:#2d394d;
  --border-primary:#f0f3f7;
  --border-secondary:#eef4fe;
  --background-default:#f1f5f9;
  --background-primary:#2563ea;
  --background-secondary:#0f172b;
  --border-radius-50:50px;
  --border-radius-4:4px;
  --border: 1px solid rgb(229, 232, 237);
  --box-shadow: 0px 7px 14px 0px rgba(59, 65.00000000000004, 94, 0.1);
  /*btn add to cart*/
  --btn-add-to-cart-bg: #F7BE38;
  --btn-add-to-cart-bg-hover: #F7BE38E6;
  --btn-add-to-cart-color: #0f172b;
  --btn-add-to-cart-font-size: 1.2rem;
  --btn-add-to-cart-font-weight: 600;
  --btn-add-to-cart-width: 100%;
  --btn-add-to-cart-radius: var(--border-radius-50);
}
/*MainMenu - SubMenu Items*/
.inside-header {
  padding: 20px 0px 20px 0px !important;
}
.main-navigation .main-nav ul ul li a {
  border-radius: var(--border-radius-4);
  margin: 10px;
  box-sizing: border-box;
}
.main-navigation ul ul{
  border-radius: var(--border-radius-4);
  box-shadow: var(--box-shadow);
}
/*Main*/
#main{
  box-sizing: border-box;
  border-radius: var(--border-radius-4, 16px);
  overflow: hidden;
}
.post,.comments-area,.page{
  border: var(--border, 1px solid currentColor);
  border-radius: var(--border-radius-4, 16px);
}
.box-shadow{
  box-shadow: var(--box-shadow);
}
/*Page Hero*/
.hero-page-bullets ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.hero-page-bullets ul li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 8px;
}
.hero-page-bullets ul li::before {
  content: "";
  position: absolute;
  top: 30%;
  left: 10px;
  width: 10px;
  height: 10px;
  border-style: solid;
  border-width: 0 4px 4px 0;
  border-color: #ffffff;
  transform: translateY(-50%) rotate(-45deg);
  border-radius: 2px;
}
/*Buttons*/
.btn-toolbar {
  border-radius: var(--border-radius-50);
  font-size: 1rem;
  font-weight: 600;
  background: #0f172b !important;
  color: #fff !important;
  padding: 10px;
  text-decoration: none;
}
.btn-toolbar:hover{
  background: #2d394d !important;
}
.btn-add-to-cart{
  background: var(--btn-add-to-cart-bg) !important;
  border-radius: var(--btn-add-to-cart-radius) !important;
  color: var(--btn-add-to-cart-color) !important;
  font-size: var(--btn-add-to-cart-font-size) !important;
  font-weight: var(--btn-add-to-cart-font-weight) !important;
}
.btn-add-to-cart:hover{
  background: var(--btn-add-to-cart-bg-hover) !important;
}
.btn-services {
  background-color: var(--btn-primary) !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  fill: #FFFFFF !important;
  color: #FFFFFF !important;
  border-radius: var(--border-radius-50) !important;
  padding: 20px 20px 20px 20px !important;
  width: 100% !important;
  line-height:calc(1.25/.875) !important;
}
.btn-services:hover, .btn-services:focus {
  background-color: var(--btn-primary-hover) !important;
}
/*Backgrounds*/
.background-blue {
  min-height: 100vh; /* altezza */
  background:
      radial-gradient(circle at 18% 72%,
          rgba(220, 140, 255, 0.9) 0,
          rgba(220, 140, 255, 0) 55%),
      radial-gradient(circle at 48% 60%,
          rgba(120, 205, 255, 0.95) 0,
          rgba(120, 205, 255, 0) 52%),
      radial-gradient(circle at 80% 28%,
          rgba(90, 215, 255, 0.95) 0,
          rgba(90, 215, 255, 0) 50%),
      #2563ea;
  background-repeat: no-repeat;
  background-size: 140% 140%;
}
/*Elementor*/
/*Image No Margin Right*/
.img-extra-right{
  margin-left: auto;
  margin-right: -20px;
}
.img-extra-right{
  margin-left: auto;
  width: clamp(520px, 52vw, 980px);
}
.img-extra-right img{
  display: block !important;
  height: auto !important;
  max-width: none !important;
  object-fit: contain;
}
/*Elementor Icons List*/
.icon-blue .elementor-icon-list-icon{
  border-radius: var(--border-radius-4);
  background: #155dfc;
  padding: 10px 5px 10px 10px;
  margin-right: 5px;
  margin-top: 5px;
  color: #ffffff;
  font-size: 1.4rem;
}
/*Elementor Text Editor List Type*/
.icon-bullets-editor ul{
  list-style: none;
  padding: 0;
  margin: 0;
}
.icon-bullets-editor ul li{
  position: relative;
  padding-left: 34px;
  margin-bottom: 12px;
}
.icon-bullets-editor ul li::before{
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 0.2em;
  width: 27px;
  height: 27px;
  line-height: 27px;
  text-align: center;
  background-color: #2b7fff;
  color: #ffffff;
  border-radius: var(--border-radius-4);
  font-size: 12px;
}
/*Elementor Box List 5 Columns Grid Layout*/
.box-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}
.box-list .box-shadow {
  flex: 0 0 calc((100% - 40px) / 5) !important;
  max-width: calc((100% - 40px) / 5) !important;
  border: 1px solid #E5E8ED;
}
@media (max-width: 1024px) {
  .box-list .box-shadow:first-child {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  .box-list .box-shadow:not(:first-child) {
    flex: 0 0 calc((100% - 20px) / 3) !important;
    max-width: calc((100% - 20px) / 3) !important;
  }
}
@media (max-width: 767px) {
  .box-list .box-shadow:first-child,
  .box-list .box-shadow:last-child {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  .box-list .box-shadow:not(:first-child):not(:last-child) {
    flex: 0 0 calc((100% - 10px) / 2) !important;
    max-width: calc((100% - 10px) / 2) !important;
  }
}
/*Aumento Velocità - Pagina*/
.box-features{
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch;
  justify-content: flex-start;
}
.box-features > .box-shadow{
  width: calc(50% - 20px);
  margin: 10px 10px;
  border-radius: var(--border-radius-4);
  padding: 20px 20px 20px 20px !important;
  box-sizing: border-box;
  overflow: hidden;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  gap: 10px;
}
.box-features > .box-shadow > .elementor-element{
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  position: static !important;
}
.box-features > .box-shadow > .elementor-widget-image{
  flex: 0 0 60px !important;
  width: 60px !important;
  max-width: 60px !important;
}
.box-features > .box-shadow > .elementor-widget-image img{
  display: block;
  width: 60px !important;
  height: 60px !important;
  object-fit: contain;
}
.box-features > .box-shadow > .elementor-widget-heading{
  flex: 1 1 calc(100% - 70px) !important;
  min-width: 0 !important;
}
.box-features > .box-shadow > .elementor-widget-heading .elementor-heading-title{
  margin: 0 !important;
  line-height: 1.2;
}
.box-features > .box-shadow > .elementor-widget-text-editor{
  flex: 0 0 100% !important;
  width: 100% !important;
}
.box-features > .box-shadow > .elementor-widget-text-editor p{
  margin: 10px 0 0 !important;
}
@media (max-width: 767px){
  .box-features > .box-shadow{
    width: calc(100% - 20px);
  }
}
#speed-plan #buy-btn a.elementor-price-table__button::before {
  content: "\f07a";
  font-family: "Font Awesome 6 Free";
}
/*Manutenzione WordPress - Pagina*/
span.delega{
  display: block;
  line-height: 1.8rem;
}
span.collaboro{
  line-height: 1.5rem;
  font-size: 1.2rem;
}
.box-plan i {
  color: #155dfc !important;
}
.box-plan li .elementor-price-table__feature-inner {
  margin-inline: 10px !important;
}
.box-plan a.elementor-price-table__button::before{
  content: "\f07a";
  font-family: "Font Awesome 6 Free";
}
.box-plan .elementor-price-table__button{
  width: 100%;
}
/*Box Services via ACF Shortcode*/
.elementor-element.img-services,
.img-services {
  margin-left: auto;
  align-self: flex-start;
}
.img-services img {
  display: block;
}
@media (max-width: 767px){
  .elementor-icon-list-text[style]{
    font-size: 0.879rem !important;
    padding-top: 20px;
  }
}
@media (max-width: 1024px) {
  .elementor-element.img-services,
  .img-services {
    display: none !important;
  }
}
@media (max-width: 1024px) {
  .aa_services_row {
    flex-wrap: wrap !important;
  }
  .aa_services_icons {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  .aa_services_cta {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    display: block !important;
  }
}
/*Full Width Elementor Grid*/
#box-full.e-con.e-child {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}
#box-full.e-con.e-child {
  grid-column: 1 / -1;
}
/*Unlimited Elements for Elementor - Posts Grid Widget*/
.page-id-14331 h2{
  font-size: 1.4rem !important;
}
.page-id-14331 h2:hover{
  color: var(--link-hover) !important;
}
/*Single Posts*/
.single-post h2,.single-post h3{
  font-size: 2rem !important;
}
.btn-tags{
	border-radius: var(--border-radius-50);
	background: var(--btn-primary);
	color: #ffffff !important;
	margin: 5px;
	padding: 10px;
	text-decoration: none;
	font-size: 0.879rem;
	font-weight: 600;
}
span.author-name{margin-right: 5px;}
table{
  border-radius: var(--border-radius-4);
}
.alert{
  background: #cde8f6;
  padding: 10px;
  border-radius: var(--border-radius-4);
  margin-bottom: 10px; 
}
.crayon-theme-alessio-angeloro {
  border: 1px solid #e5e6e7 !important;
  border-radius: var(--border-radius-4) !important;
  padding: 10px;

}
.btn-copy-code{
  background: #101828;
  color: #ffffff !important;
  padding: 10px;
  margin-top: 10px !important;
  float: left;
  border-radius: var(--border-radius-4);
  text-decoration: none;
  font-weight: 600;
}
.btn-copy-code:hover{
  background: #ffffff;
  color: #0f172b !important;
}
/*Author Box*/
.elementor-author-box__bio{
  text-align: justify;
}
/*Portfolio*/
.box-portfolio {
  display: flex;
  flex-wrap: wrap;
}
/* DESKTOP – 3 colonne */
.box-portfolio > .e-child {
  flex: 0 0 calc((100% - 60px) / 3) !important;
  margin: 10px;
}
/* IMMAGINI */
.box-portfolio .elementor-widget-image {
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.box-portfolio .elementor-widget-image img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* TABLET – 1 colonna */
@media (max-width: 1024px) {
  .box-portfolio > .e-child {
    flex: 0 0 100% !important;
    margin: 10px 0;
  }
}
/* MOBILE – 1 colonna (ridondante ma sicuro) */
@media (max-width: 767px) {
  .box-portfolio > .e-child {
    flex: 0 0 100% !important;
    margin: 10px 0;
  }
}
/*Footer*/
.footer h2.elementor-heading-title{
  font-size: 1.1rem !important;
}
.logo-footer{
  width: fit-content;
}
