/*
 Theme Name:   GeneratePress PRO SS
 Theme URI:    https://generatepress.com
 Description:  GeneratePress Child Theme by Glarish
 Author:       Glarish
 Author URI:   https://www.linkedin.com/in/matteosilvestri
 Organization URI: Author URI:   https://www.linkedin.com/company/glarish-inc/
 Template:     generatepress
 Text Domain:	generatepress-child-pro-ss
 Version:      1.0 
*/
/*
	 * Date: August 24, 2026 
	 */ 



/***** BREADCRUMB  ***/


.home #breadcrumbs{
display:none;
}

#breadcrumbs{
width:100vw;
padding: 0 0 0 3%;
}
.wp-block-boldblocks-breadcrumb-block ol{display:flex;flex-wrap:wrap;gap:var(--bb--crumb-gap,.4em);list-style:none;margin:0;padding:0}
.wp-block-boldblocks-breadcrumb-block ol {align-items:center;display:flex}
.wp-block-boldblocks-breadcrumb-block li {line-height:15px;}
.wp-block-boldblocks-breadcrumb-block ol li .sep{line-height:23px; margin-left:var(--bb--crumb-gap,.4em)}
.wp-block-boldblocks-breadcrumb-block .breadcrumb-item-name{word-break:break-word}
.wp-block-boldblocks-breadcrumb-block.hide-current-page .breadcrumb-item--current,.wp-block-boldblocks-breadcrumb-block.hide-current-page .breadcrumb-item--parent .sep,.wp-block-boldblocks-breadcrumb-block.hide-home-page .breadcrumb-item--home{display:none}
.wp-block-boldblocks-breadcrumb-block{padding: 5px 40px 0 40px;}
.wp-block-boldblocks-breadcrumb-block .breadcrumb-item-name{font-size: 13px;}


/***** OTHERS: LOGO, CF7 CUSTOM, RECAPTCHA  ***/


.site-header .site-logo-link, .site-header .site-logo-link:hover{
text-decoration:none;
color:#000;
}

.site-logo-link .site-logo{
margin-right: 3px;
}

.main-title{
font-weight:200;
}



input[type="checkbox"] {
margin: 9px 9px 1px 9px;
    height: 17px;
    width: 17px;
}

.privacy-inline{
display:inline-block;
}

.position-send{
padding: 20px 0;
    text-align: center;
}

.grecaptcha-badge{
right:-250px !important;
}





/***** FAQ ACCORDION  ***/


.faq-container {
width:100%;
    max-width: 600px;
    margin: 0 auto;
}

.faq-title{
display: flex;
    align-items: center;
    width:100%;
    padding: 10px;
   background-color: #edf4f3;
   border: 0.5px solid #d9dbdc;
}

.faq-sign{
right: 21px;
    position: absolute;
    top: 19px;

}

.faq-title:hover{
 box-sizing: border-box;
    box-shadow: 1px 1px 2px 1px #999;
    transition: 0.3s ease;
}

.faq {
	
    margin: 5px 0;
    padding: 5px;
    position: relative;
    overflow: hidden;
    transition: 0.3s ease;
    box-sizing: border-box;
    box-shadow: none;
}

.faq:hover{

    margin: 5px 0;
    padding: 5px;
 
 
    cursor:pointer;
}

.faq button:hover, .faq button{}

.faq .dashicons{
color: #fff;
    font-size: 17px;
}

.faq .dashicons, .faq .dashicons-before:before{
width:30px;
height:30px;
background-color: #028084;
    padding: 8px 0 0 0;
    border-radius:50%;
}


.faq.active {}

.active .dashicons-arrow-down-alt2 {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
       transition: transform 0.5s ease-in-out; /* Add a delay of 0.3 seconds */
}


.faq-title {
    margin: 0 35px 0 0;
	font-size:20px;
	    display: inline-block;
}

.block-faq .faq-text {
    display: none;
    margin: 5px 10px 0 10px;
}

.block-faq.active .faq-text {
    display: inline-block;
}




.faq-toggle:focus {
    outline: 0;
}




.keep-block-centered,.no-sidebar .entry-content .alignfull{
	margin: 0 auto;
	
}



/* SITEMAP */

.hierarchical-sitemap ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.hierarchical-sitemap li {
    margin: 5px 0;
}

.hierarchical-sitemap a {
    text-decoration: none;
    color: #0073aa;
}

.hierarchical-sitemap a:hover {
    text-decoration: underline;
}
/* END SITEMAP */



.modulo-recension{
position:relative;
z-index:0;
}

/* SPECIAL CSS TAGS START */

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}
.show-pointer{
	cursor:pointer;
	
}


/* SPECIAL CSS TAGS ENDS */

/


.copyright-bar span, 
.copyright-bar,
.copyright-bar a, 
.copyright-bar .copyright {
    font-size: clamp(10px, calc(8px + 0.3vw), 14px); /* Clearer scaling for small screens */
    line-height: clamp(12px, calc(10px + 0.5vw), 18px); /* Balanced spacing for tiny text */
    margin-bottom: 2px; /* Minimal spacing without cramping */
    letter-spacing: -0.2px; /* Softened tracking for readability */
    color: #000; /* Maintains consistent dark text color */
}


.send-me-class p,
.send-me-class > span,
.send-me-class a,
.send-me-class .wpcf7-list-item-label,
.wpcf7-list-item-label a,
.send-me-class-flex,
.wpcf7-form .send-me-class {
    font-size: clamp(14px, calc(12px + 0.6vw), 16px); /* Minimum: 14px, Maximum: 18px */
    line-height: clamp(20px, calc(18px + 0.6vw), 28px); /* Balanced for better readability */
    margin-bottom: clamp(2px, calc(1px + 0.3vw), 4px); /* Slightly increased spacing */
    letter-spacing: 0px; /* Neutral tracking for legibility */
    font-weight: 300; /* Lightweight but readable */
	padding: 5px 0;
}



.send-me-class .wpcf7-list-item, .send-me-class-flex .wpcf7-list-item{
margin:0;
}

.send-me-class-flex label{
display:flex;
}


#messaggio, .messaggio textarea{
height: 70px;
resize: both;
            overflow: auto;
}


.wpcf7-form-control-wrap {
    display: flex;
    align-items: baseline; /* Align items along the text baseline */
}
.wpcf7-form-control-wrap label {
    --display: flex;
    --align-items: baseline; /* Align label items along the text baseline */
}
.wpcf7-list-item-label {
    margin-left: 8px; /* Add some space between the checkbox and the text */
    line-height: normal; /* Ensure normal line height */
  
}

.wpcf7-list-item-label a{
  text-decoration: underline;
}

.wpcf7-list-item-label a:hover{
 color: #0628cd;
}

.wpcf7-form-control {
    vertical-align: middle; /* Align the checkbox in the middle */
}


body .wpcf7 form .wpcf7-response-output {
    margin: -1.5em 0.5em 1em;
    padding: 7px 5px;
    border: 3px solid #00a0d2;
    max-width: 60%;
    text-align: center;
    background: white;
    color: black;
    font-weight:400;
}



.my-custom-class{
margin-left:13%;
}

.my-custom-class a{
line-height:15px;

}



.submit-button{
text-align:right;
    width: 30%;
    float: right;
}



.search-form{
width:70vw;
max-width:800px;
margin: 0 auto;

}

.search-form {
    text-align: left; /* Align everything to the left */
    white-space: nowrap; /* Ensure elements stay on the same line */
}

.search-field, .search-submit {
    display: inline-block; /* Align input and button inline */
    vertical-align: middle; /* Align them properly vertically */
    margin: 5px; /* Add some spacing for visual balance */
}


.title-404-default, .text-404-default, .subtitle-404-ext, .title-search, .end-404-all{
text-align:center;
margin:0 auto;
padding: 10px;
}




/* additional style */
.featured-image{
    margin: 0 auto;
    width: 100%;
    text-align: center;
}

.featured-image img{
max-height: 65vh;
    width: auto;
    margin: 0 auto;
}	


.gb-grid-column.has-post-thumbnail{
    margin: 0 auto;
    text-align: center;
}
.gb-grid-column.has-post-thumbnail img{
max-height: 50vh;
    width: auto;
    margin: 0 auto;
}

.type-post.has-post-thumbnail{
    margin: 0 auto;
    text-align: center;
}


.type-post.has-post-thumbnail img{
max-height: 50vh;
    width: auto;
    margin: 0 auto;
}

  .gsh-distance-calculator input {
    display: block;
    margin: 10px 0;
    padding: 5px;
}
.gsh-distance-calculator button {
    padding: 8px 16px;
    background: #0073aa;
    color: white;
    border: none;
    cursor: pointer;
}




/* STARS STATIC */    
 
 .central-stars{
 text-align:center;
 display:block;
 visibility: visible;
 }
 
  .central-stars   ul {
    list-style: none; /* removes default bullet points */
    padding: 0; /* removes default padding */
    margin: 0; /* removes default margin */
  }
 .central-stars li {
    display: inline-block; /* makes list items display horizontally */
    margin-right: 10px; /* adds space between list items */
  }
    
    .stars-home{
    color: gold;
font-size:35px;

 text-shadow:
    -1px -1px 0 #aaa,
    1px -1px 0 #aaa,
    -1px 1px 0 #aaa,
    1px 1px 0 #333;  
    }
  /* END STAR STATICS */  
  /* star rating block - START */

.survey-block .wp-survey-block{
overflow:hidden;
}

.survey-block .wp-survey-block .responsive-row{
    display: block;
    width: 100%;
	text-align:left;
}

.survey-block .wp-survey-block .responsive-row >div:first-child {
    float: left;
	min-width:250px;
	width:60%;
	 display: inline-block;
}
.survey-block .wp-survey-block .responsive-row .rating{
    display: inline;
	  margin: 0 auto;
   }
.survey-block .wp-survey-block .responsive-row div:nth-child(2){
 min-width:156px;
    display: inline-block;
   }

.survey-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #ddd;
}

.survey-item:last-child {
    border-bottom: none;
}


.rating input {
    display: none;
}

.rating label {
    font-size: 1.6em;
    cursor: pointer;
    color: #eee;
	 padding: 0 3px 0 0;
	padding-right: clamp(3px, 2vw, 20px);

   
	text-shadow: -1px 1px 2px #2b2a2a, 0px 0px 1px #2b2a2a;
    
}

.rating input:checked ~ label {
    color: gold;
}

/* Change color of all previous labels on hover */
.rating label:hover,
.rating label:hover ~ label {
    color: gold;
}

.rating label:hover ~ label,
.rating label:hover ~ input ~ label {
    color: #ddd;
}

.rating label:hover,
.rating label:hover ~ label,
.rating input:hover ~ label,
.rating input:hover ~ label ~ label {
    color: gold;
}

  
  .rating > label{float:right}  
  .topic{
  margin:0 auto;
  text-align:center;
  }
    


/* star rating block - END */

/* VERSION 8.0 */
/* additional style to V4-v7.2 */

.entry-content:not(:first-child), .entry-summary:not(:first-child), .page-content:not(:first-child){
margin:0;

}

.no-comments,.display-none{
display: none;
}

  .gsh-distance-calculator input {
    display: block;
    margin: 10px 0;
    padding: 5px;
}
.gsh-distance-calculator button {
    padding: 8px 16px;
    background: #0073aa;
    color: white;
    border: none;
    cursor: pointer;
}


/* TOP BAR */

/* General Top Bar Styling */
.top-bar-small {
    text-align: center;
   
    display: flex;
    justify-content: center;
    gap: 20px; /* Space between icons */
}

.top-bar-small .hover-wrapper {
    position: relative;
    display: inline-block;
    cursor: pointer;
	margin: 0 10px;
	color:#fff;
	font-size: clamp(9px, 2vw, 13px);
}

.top-bar-small svg {
    vertical-align: bottom;
	
}

/* Hover Content Styling */
.hover-content {
    display: none;
    position: absolute;
    left: 33px;
    top: 28px;
    transform: translateX(-50%);
    color: #000;
    z-index: 999100;
    font-size: 14px;
    width: 250px;
    background-color: #fff;
}

.hover-content.first-in-line{
  left: 53px;
}

.hover-content.last-in-line{
  left: 13px;
}

/* Show Content on Hover */
.hover-wrapper:hover .hover-content {
    display: block !important;
}



.top-bar-small .hover-wrapper a{
 text-decoration:none;
}
.top-bar-small .hover-wrapper span {
  position: relative; /* This is key */
  color: #fff;
  text-decoration: none;
  transition: color 0.3s ease;
}
.top-bar-small .hover-wrapper span::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 2px; /* increased thickness */
  background: rgba(255, 255, 255, 0.9); /* brighter white */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  box-shadow: 0 0 4px rgba(255, 255, 255, 0.4);

}


.top-bar-small .hover-wrapper span:hover::after {
  transform: scaleX(1);
}
.top-bar-small a {
 color: #000 !important;
  font-size: clamp(9px, 1.5vw, 14px) !important;
 letter-spacing: 1px;
 font-weight: 800;
text-decoration:underline;
}
.hover-wrapper svg{
stroke:#fff;
stroke-width: 1px;

}
.hover-wrapper svg:hover{
stroke:#fff;
stroke-width: 4px;

}



/*********** SURVEY ********/
.survey-block .label-class{
font-weight:800;

}

.survey-block-master .spacing-pad{
padding: 10px 0;
}


.survey-block-master .spacing-pad input[type="checkbox"]{
vertical-align:sub;
}

.survey-block-master .send-me-class-flex.first-spacing-pad{
padding: 25px 0 0 0;
}

 .send-me-class,.send-me-class-flex{
padding: 15px 0 10px 0;
}

.survey-block-master .send-me-class, .survey-block-master .send-me-class-flex{
padding: 15px 0 10px 0;
}
.send-me-class input[type="checkbox"], .send-me-class-flex input[type="checkbox"]  {
margin: 0px 0px 0px 0px; height: 17px;  width: 17px; 
}

.wpcf7-list-item-label {
line-height:20px;
text-align:left;
}

.stretch-container{
 position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
}





.hero-home .overlay-container{
background: linear-gradient(to right, rgb(73 87 88 / 84%) 30%, /* Dark base */ rgb(46 62 67 / 20%) 100% /* Slight teal tint */)
}





/*
input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea:not(#comment){
font-family: Nunito, Nunito Sans, 'Nunito Sans', sans-serif;
color: #000 !important;
opacity:1;
font-weight:700;
border-color: #c3c3c6 ;
}
*/
.window-privacy a {
color: #000 !important;
text-decoration: underline !important;
}

.comment-form-comment textarea{
font-weight:200 !important;
}

.wp-block-button.button-book > .wp-block-button__link:not(.has-background) {
    background-color: #16b1d0;
    color: white;
    padding: 8px 12px;
    border-radius: 8px;
    border: 2px solid #117a8c;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    font-weight: 800;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.wp-block-button.button-book > .wp-block-button__link:not(.has-background):hover {
  background-color: #117a8c;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15);
}
.wp-block-button.button-book > .wp-block-button__link:not(.has-background) {
  outline: 1px solid rgba(0, 0, 0, 0.05); /* barely visible outline for UX subtlety */
}

@media all and (min-width: 781px)
{
.hero-button-centered .wp-block-buttons.is-content-justification-center {
justify-content:left;
}
}

.bookly\:cursor-pointer{
font-weight:500;
}

.bookly\:cursor-pointer.font-weight-500 {
    font-weight: 500 !important;
}

.bookly\:cursor-pointer.font-weight-300 {
    font-weight: 300 !important;
    opacity: 0.8 !important;
}

.bookly\:rounded-t.bg-bookly.bookly\:relative {
    color: white !important; /* Ensures text is white */
   
}

.bookly-css-root .bookly\:bg-white{
 --background-color: transparent !important; /* Makes background transparent */
}

.bookly\:bg-white.bookly\:font-sans.bookly\:p-4{
--background-color: transparent !important; /* Makes background transparent */
}

.bookly\:flex.bookly\:bg-white.bookly\:float-right.bookly\:p-2.bookly\:border.bookly\:border-default-border.bookly\:absolute.bookly\:right-2.bookly\:bottom-2.bookly\:card-title{
background-color: transparent !important; /* Makes background transparent */

}



.bookly-css-root .bookly\:border-default-border {
    border: 0px solid #fff !important;
}

.bookly:rounded-b .bookly:flex .bookly:flex-col .bookly:p-4 .bookly:overflow-hidden{
height:auto !important;
}

.bookly\:flex-1.bookly\:p-4.bookly\:rounded.bookly\:flex.bookly\:flex-col{
background-color:#e7e8eff9;

}

.bookly\:w-full.bookly\:h-14.bookly\:bg-white {
  background-color: #fff !important;
}
textarea.bookly\:w-full.bookly\:bg-white {
  background-color: #fff !important;
}


.bookly-css-root .bookly\:absolute.bookly\:top-2.bookly\:w-72.bookly\:p-2.bookly\:bg-white.bookly\:border.bookly\:border-default-border.bookly\:rounded.bookly\:min-w-\[200px\].bookly\:start-0, .bookly-css-root .bookly\:bg-white.bookly\:min-w-[200px]  {
  background-color: #fff !important;
}

.bookly-css-root .bookly\:z-10{
    z-index: 10 !important;
    position: absolute !important;
    top: -200px;
      background-color: #fff !important;
}

.bookly\:text-gray-600.bookly\:mx-2 {
    display: none;
}


.bookly-css-root .bookly\:flex.bookly\:mb-2 
  > div > button > span {
    display: none ;
}


.bookly\:text-gray-600.bookly\:opacity-50 > span {
    font-size: 20px !important;
    color: black !important;
    font-weight: bold !important;
      display: block !important;
}


.bookly\:mb-3.bookly\:me-3.bookly-service-card-mark.bookly-card-mark:not(:hover)  {
background-color:#e2f0f0 !important;
}

.bookly\:mb-3.bookly\:me-3.bookly-services-category-mark:not(:hover)  {
background-color:#e2f0f0 !important;
} 

.bookly-css-root .privacy-class-book{
text-decoration: underline;
color: #0070ff;
}

.bookly-css-root .privacy-class-book:hover{
color: #333;
}

.pagare-style{
font-size:16px;
}


.wpcf7-checkbox .wpcf7-list-item {
  display: block;
  margin: 4px 0;       /* vertical spacing */
  padding-left: 0;     /* removes left padding */
}


.wpcf7-list-item {
  display: block;
  margin-bottom: 8px;
  padding-left: 0 !important;
}

.wpcf7-list-item label {
  margin-left: 0 !important;
  display: flex;
  align-items: center;
}

.send-me-class {
  padding-left: 0 !important;
  margin-left: 0 !important;
  text-align: left;
}

.send-me-class label {
  display: flex;
  align-items: center;
  gap: 6px; /* optional spacing between checkbox and text */
}




input[type=email]::placeholder, input[type=number]::placeholder, input[type=password]::placeholder, input[type=search]::placeholder, input[type=tel]::placeholder, input[type=text]::placeholder, input[type=url]::placeholder, select::placeholder, textarea::placeholder{

color: #686a7b !important;
font-weight:400;
opacity:0.9;
}

.wpcf7-not-valid-tip {
	color: #ff0505; /* Red */
	font-size: 90%;
	font-weight: normal;
	display: block;
	position:absolute;
	z-index:1;

right:3px;
}

input[type="email"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="url"], select, textarea:not(#comment){
z-index:3;
background-color: #ffffff9e !important;

}

.whatsapp-float {
    position: fixed;
    bottom: auto;
    top: 75vh;
    right: 10px;
    background-color: #25D366;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    z-index: 1000;
}
.whatsapp-float img {
  width: 30px;
  height: 30px;
}
@media (min-width: 980px) {
  .whatsapp-float {
    display: none;
  }
}

.generate-back-to-top {
 
    bottom: 60px !important;
    right: 10px !important;
  
}
.hide-bullet{
margin: 0;
list-style: none;
}

.invisible-comment{
visibility:hidden;
height:0 !important;
}


.comment-form-comment textarea{
font-weight:200 !important;
}

.pwd-toggle-class{
display: block;
    margin: 0 0 40px 0;
}

.login-eye-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 8px;
    cursor: pointer;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23555'><path d='M10 3C5.5 3 2.1 6.2 1 10c1.1 3.8 4.5 7 9 7s7.9-3.2 9-7c-1.1-3.8-4.5-7-9-7zm0 12c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zm0-8c-1.7 0-3 1.3-3 3s1.3 3 3 3 3-1.3 3-3-1.3-3-3-3z'/></svg>");

  -webkit-user-select: none; /* Chrome, Safari */
    -moz-user-select: none;    /* Firefox */
    -ms-user-select: none;     /* IE/Edge */
    user-select: none;         /* Standard */

}

.password-field-wrapper {
    position: relative;
    display: flex;
    align-items: center;


}

#login_error {
  display: none !important;
}


/* stylesheet for CHIUSURA TOP BAR 
 .top-chiusura-banner {
    width: 100vw;
    background-color: #e2f4f7;
    color: #325357;
       font-size: clamp(0.75rem, 2.5vw, 25px);
    font-weight: 600;
    text-align: center;
    padding: 1em 1.2em;
    box-sizing: border-box;
    margin-bottom: 1em;
    display: inline-block;
    line-height: 30px;
   
    
  }

   .top-chiusura-banner span {
        white-space: nowrap;
    }

   .top-bar .top-chiusura-banner a {
        color:#000;
    }
      .top-bar .top-chiusura-banner a:hover {
        text-decoration: underline;
    }


  .top-chiusura-banner span:first-child {
    color: #325357;
     text-transform: uppercase;
  }

  .top-chiusura-banner span:last-child {
    color: #02808e;
  }
  
*/

