/*
Theme Name: GD
Theme URI:
Author: Giuseppe De Sanctis
Author URI: https://www.fullcreative.it
Description: Starter Theme with Bootstrap 5
Version: 0.1
Requires at least: 5.9
Tested up to: 5.9
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, custom-header, custom-menu, editor-style, featured-images, sticky-post, translation-ready
Text Domain: gd

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.9.1/font/bootstrap-icons.css");

*,
*::before,
*::after{
    margin: 0;
    padding: 0;    
    box-sizing: border-box;
}

body{
    display: flex; 
    min-height: 100vh; 
    flex-direction: column; 
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 1rem;      
    font-weight: 300;
    color: #9d9fa2;
    
}
.main-content{flex:1;}
main{display: block;}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block;
}

/* Comments
-------------------------------------------------------- */
#comments{margin-bottom: 40px;}
.comments{padding-top: 40px;}
.comments textarea{width: 100%;}
.comments label{ min-width: 80px;}
.comments ul,
.comments ol{list-style-type: none;}
.comment-author img{border-radius: 999px; width:50px;}
.comment .reply{border-bottom:  1px solid #ccc; margin-bottom: 30px;padding-bottom: 10px;}


/* Widgets
-------------------------------------------------------- */
.widget_search .screen-reader-text{display: block;}
.widget_search #s{width:70%;float:left;}
.widget_search #searchsubmit{width:30%;float:left;background: #fff;}

/* pagination
-------------------------------------------------------- */
.pagination{margin-bottom:40px}
.page-numbers{display: inline-block;padding: 10px 15px;border: 1px solid #ddd;margin-right:4px;}

/* general wordpress style
-------------------------------------------------------- */
.post img{max-width: 100%; height:auto;}

/* WordPress Core Styles
-------------------------------------------------------------- */
.gallery-caption{padding:5px; font-size: 10px;}
.bypostauthor{border-left: 3px solid #ddd;padding-left: 20px;}
.alignnone { margin: 5px 20px 20px 0;}
.aligncenter,
div.aligncenter {display: block;margin: 5px auto 5px auto;}
.alignright {float:right;margin: 5px 0 20px 20px;}
.alignleft {float: left;margin: 5px 20px 20px 0;}
a img.alignright {float: right; margin: 5px 0 20px 20px;}
a img.alignnone {margin: 5px 20px 20px 0;}
a img.alignleft {float: left;margin: 5px 20px 20px 0;}
a img.aligncenter {display: block; margin-left: auto; margin-right: auto;}
.wp-caption {background: #fff;border: 1px solid #f0f0f0;max-width: 96%; /* Image does not overflow the content area */padding: 5px 3px 10px; text-align: center;}
.wp-caption.alignnone {margin: 5px 20px 20px 0;}
.wp-caption.alignleft {margin: 5px 20px 20px 0;}
.wp-caption.alignright {margin: 5px 0 20px 20px;}
.wp-caption img {border: 0 none; height: auto; margin: 0; max-width: 98.5%; padding: 0; width: auto;}
.wp-caption p.wp-caption-text {font-size: 11px;line-height: 17px; margin: 0; padding: 0 4px 5px;}
/* Text meant only for screen readers. */
.screen-reader-text {clip: rect(1px, 1px, 1px, 1px);position: absolute !important; white-space: nowrap;height: 1px;width: 1px;overflow: hidden;}
.screen-reader-text:focus {background-color: #f1f1f1;border-radius: 3px;box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);clip: auto !important;color: #21759b;display: block;	font-size: 14px;
	font-size: 0.875rem;font-weight: bold;height: auto;left: 5px;line-height: normal;padding: 15px 23px 14px;text-decoration: none;top: 5px;width: auto;z-index: 100000; /* Above WP toolbar. */}


/**************************************
***** Grafica personalizzata ********
*************************************/

/* Helper */
h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0.5rem; 
    font-weight: 500;
    font-weight: 300;
    color: #000;
    font-weight: 700;
    font-size: 100%;
    line-height: 1.6em;
}



p {
    margin-top: 0;
    margin-bottom: 1rem; 
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem; 
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0; 
}

a{text-decoration: none; }
a:hover{text-decoration:none;}

/* Variabili */
:root {    
    --colore-texto: #222222;
}

.content{position: relative; overflow: hidden;}

/* Menu */
.grid_container{max-width: 1440px; width:100%; margin-right: auto; margin-left: auto; padding-top: 25px; display: grid; grid-auto-flow: dense; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); grid-auto-rows: 120px; gap: 1rem;}
.grid-item{background-color: #e0e0e0; height: 120px;display:flex; align-items: center; justify-content:center; padding: 15px; text-align: center;position: relative;overflow: hidden;}
.grid-item a{color: #fff;text-transform: uppercase; font-weight: 500; font-size: 12px;}
.grid-item a:hover{color: #252525;}
.grid-item:nth-child(1){background-color: #7f7f7f; padding: 16px;}
.grid-item:nth-child(1) a:hover{color: #fff;}

@media (max-width: 768px){
    .grid_container{display:none;}    
}

.gd_box{position:relative;overflow:hidden;}

/* menu desktop */
.desk-hero{position: fixed; top: 0; right: 100%; width: 100%; height: 100vh; background-color:rgba(255, 255, 255, 0.9);z-index: 310;transition: all 1s cubic-bezier(.215,0.61, .355, 1);}
.desk-hero .main{display:flex; align-items:center; justify-content:center;}
.desk-hero .main ul{list-style:none;}
.desk-hero .main ul li a{color: #7f7f7f; font-size: 20px; padding-bottom: 15px; display: inline-block;}
.menu_open_desk{right: 0; }


/* Menu mobile */
.grid_container_mobile{position: relative; max-width: 1440px;width:100%;margin-right: auto; margin-left: auto; padding-top: 25px;display: grid; grid-template-columns: repeat(3, 1fr);grid-auto-rows: 120px; gap: 1rem;}
.grid_container_mobile .grid-item:nth-child(1){grid-column-start: 1; grid-column-end: 2;}
.grid_container_mobile .grid-item:nth-child(2){grid-column-start: 3; grid-column-end: 4;}

.grid_container .grid-item:nth-child(2) {
    grid-column-start: 7;
    grid-column-end: 8;
}


.grid_container_mobile{display:none;}
.gd__grid_menu_mobile{display:none;}

.toggleMenu{position: relative;/* width: 30px; height: 30px; */ background: url('./img/menu.png');background-color: #e0e0e0; background-size: 30px; background-position: center; background-repeat: no-repeat;cursor: pointer;z-index: 999999;}
.toggleMenu.active{ background: url('./img/close.png');background-color: #e0e0e0; background-position: center; background-size: 25px; background-repeat: no-repeat;z-index: 999999;}  




@media (max-width: 768px){
    .desk-hero{display: none;}
    .gd__grid_items{position: relative;}     
    .grid_container_mobile{display:grid;gap: 0.5rem; padding: 5px;}
        
    .gd__grid_menu_mobile{display:block;transition: all 1s cubic-bezier(.215,0.61, .355, 1); position: absolute;content: '';top: 0; right: -100%; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.9);z-index: 500;}
    
    .menu_open{right: 0; }
    .gd__grid_menu_mobile-box{padding: 30px;}
    .gd__grid_menu_mobile-uno ul{ list-style: none; padding-left: 0;}
    .gd__grid_menu_mobile-uno ul li{padding-bottom: 5px;}
    .gd__grid_menu_mobile-uno ul li a{color: #252525; font-size: 13px;}
    .gd__grid_menu_mobile-due small{color: #252525; font-weight: 700; display: block; padding-bottom: 8px; }
    .gd__grid_menu_mobile-due a{color: #252525; font-size: 13px; padding-bottom: 5px;}
}

/* Items */
.gd__grid_items{max-width: 1440px; width:100%; margin-right: auto; margin-left: auto; padding-top: 1rem; display: grid; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr));  grid-auto-rows: 120px; gap: 1rem;}
.grid-item-box{background-color: #e0e0e0; height: 120px;display:flex; align-items: center; justify-content:center; padding: 15px; text-align: center;position: relative;overflow: hidden;}
.grid-item-box a{color: #fff;text-transform: uppercase; font-weight: 500; font-size: 12px; z-index: 300;}
.grid-item-box-img{position: absolute;top: 0; left: 0;width: 100%;height: 100%; z-index:99;} 
.gd__sfondo{position: absolute;top: 0;left: 0;width: 100%;height: 100%; background-color:rgba(0, 0, 0, 0.0); z-index: 200;}
.grid-item-box:hover .gd__sfondo{background-color:rgba(0, 0, 0, 0.5);}
.grid-item-box .grid-item-box-img img{opacity: 0;}
.grid-item-box:hover .grid-item-box-img img{opacity: 1; }
.grid-item-box:hover .grid-item-box a{color: #fff !important;}

@media (max-width: 768px){    
    .gd__grid_items{grid-template-columns: repeat(3, 1fr); gap: 0.5rem;padding: 5px; overflow: hidden;}
    .grid-item-box a{font-size: 11px;font-weight: 400;}
}



 

/* Griglia */
.gd__row .projects {margin-right: -2%; display: -ms-flexbox; display: flex;  -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; padding-top: 3rem; }


.circle .circle-inner .circle-content {z-index: 3000;}
.circle {position: relative; padding-right: 1.5%; height: 100px; margin-bottom: 2rem;}
.circle .circle-inner {position: relative; width: 100%; height: 0; }
.circle .circle-content {display: -ms-flexbox;display: flex; flex-direction: column; -ms-flex-align: center; align-items: center;
    -ms-flex-pack: center; justify-content: center; position: absolute;left: 0;top: 0; background-color: #eee;width: 100%; height: 113px;    
    overflow: hidden;-webkit-backface-visibility: hidden;backface-visibility: hidden;-webkit-transform: translateZ(0);transform: translateZ(0);
}
.circle-content-text_url{position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.85); z-index: 15822;opacity: 0; }
.circle-content-text_url:hover{opacity: 1; }
.circle-content-text_url span{text-transform: capitalize; width: 100%;height:100%; color: #fff;opacity: 0;font-size: 13px; transition: 0.6s; display: flex; align-items: center; justify-content: center; padding: 8px;}
.circle-content-text_url:hover span{opacity: 1; }

.circle.logo .circle-content{background-color: #252525;}
.circle.logo .circle-content p{font-size: 13px; color: white; margin-bottom:0; padding-bottom: 0;}

.circle.logo {/* border: 1px solid red; */ z-index: 99999999;}
.circle.burger {/* border: 1px solid red;  */z-index: 99999999;}





.nav-bar{width: 100vw; height: 100vh;display: none; position:fixed; top: 0; left: 0;background-color:hsla(0,0%,100%,.99); transition: opacity .3s ease; z-index:10000;overflow: auto;}
.nav-bar.active{display: flex;}

.nav-bar a {position: relative;display: inline; font-size: 13px; color: #666;}
.nav-bar a:before {
    /* pointer-events: none; */
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.1rem;
    background-color: rgba(0, 0, 0, 0.5);
    content: "";
    opacity: 0;
    -webkit-transform: translateY(0.2rem);
        -ms-transform: translateY(0.2rem);
            transform: translateY(0.2rem);
    -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
    transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
    -o-transition: opacity 0.5s ease, transform 0.5s ease;
    transition: opacity 0.5s ease, transform 0.5s ease;
    transition: opacity 0.5s ease, transform 0.5s ease, -webkit-transform 0.5s ease; 
}
.nav-bar a:hover {color: #000;}
.nav-bar a.active:before,
.nav-bar a:hover:before {opacity: 1;-webkit-transform: translateY(0.1rem); -ms-transform: translateY(0.1rem);transform: translateY(0.1rem);}

.nav-bar .menu-columns {max-width: 67rem;width: 40rem; padding-top: 10.2rem; margin: 0 auto; display: -ms-flexbox; display: flex;-ms-flex-direction: row; flex-direction: row; position: relative;}

.nav-bar .menu-columns .menu-pages { width: 33%; -ms-flex-negative: 0; flex-shrink: 0; padding-right: 2rem;}

.nav-bar .menu-columns .menu-projects {display: -ms-flexbox;display: flex; -ms-flex-direction: row; flex-direction: row; -ms-flex: 1 1; flex: 1 1;}

.nav-bar .menu-projects-built {padding-right: 2rem;/* width: 50%; */}
.nav-bar .menu-projects-unbuilt {width: 50%;}

.nav-bar h3 {font-size: 12px;line-height: 1.6em; color: #000; font-weight: bold;}

.nav-bar h3,
.nav-bar ul {margin: 0; margin-bottom: 1.6em;}

.nav-bar ul { list-style: none; margin: 0; padding: 0; margin-bottom: 1.6em;}

.menu-visible .nav-bar {/* pointer-events: all; */opacity: 1;}

.circle.burger .circle-inner,
.circle.logo{z-index: 99999;}

@media (min-width: 1200px){
    .circle {width: 14.28571%;}
    .circle.burger { -ms-flex-order: 11; order: 11; }
}
@media (max-width: 768px){
    .circle {width: 33.33333%;}
    .circle.burger { -ms-flex-order: 3; order: 3; }
    .nav-bar.active{display: block;}
    .nav-bar{background-color: #fff;}
    .nav-bar .menu-columns {padding-top: calc(33.33333% + 5rem);max-width: calc(100% - 1.8rem);-ms-flex-wrap: wrap; flex-wrap: wrap;}
    .nav-bar .menu-columns .menu-projects {display: block;}
    .nav-bar .menu-columns .menu-pages,
    .nav-bar .menu-columns .menu-projects {width: 100%; padding-right: 0;}
    .nav-bar  .menu-columns .menu-projects>nav { width: 100%; padding-right: 0;}
}



/* Pagina */

header.site-header {position: fixed; top: 0;left: 0;width: 100%; z-index: 0;}
.max-width-container {padding: 0 4rem 0rem; max-width: 144rem; margin: 0 auto;}
header.site-header div.header-inner {margin-right: -2%; display: -ms-flexbox;  display: flex; -ms-flex-direction: row; flex-direction: row; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: stretch; align-items: stretch; padding-top: 4rem;}
.site-header .circle.burger .circle-content {background-color:#fff;}

@media (max-width: 991.98px){
    header.site-header { position: relative;}
}
@media (max-width: 991.98px){
    header.site-header .max-width-container { padding-left: 0; padding-right: 0;}
}
@media (max-width: 767.98px){
    header.site-header .max-width-container {padding-bottom: 0rem;}
}

@media (max-width: 767.98px){
    header.site-header div.header-inner {padding-top: 16px;padding-left: 16px;padding-right: 16px; margin-right: 0%;}
}




/* contenuto pagina */
.page-type-project:before {content: ""; width: 100%; display: block; height: 0; padding-bottom: calc(2.14286% + 1rem + 0.5em);}
.page-type-project .project-content {max-width: 50rem;margin: 0 auto; padding-bottom: 4rem; /* z-index: 999998; */}
.project-content h2{ padding-bottom: 20px;}
.page-type-project .project-content .project-detail .info {width: 50%; float: left;padding-right: 30px;}
.page-type-project .project-content .project-detail .info .details {color: #000; margin-bottom: 1.3em;}

.page-type-project .project-content .project-detail .gallery { width: 50%; float: right;}
.page-type-project .project-content .project-detail .gallery .progress-image img{ width: 100%;height: 100%; object-fit: cover;}

.page-type-project .project-content .project-detail .gallery>div {display: block; margin-bottom: 1.3em;z-index: -1;}
.progress-image {position: relative; overflow: hidden; opacity: 1; -webkit-transition: opacity 1s ease;-o-transition: opacity 1s ease; transition: opacity 1s ease;}

.page-type-project .project-content .project-detail .description {float: left; width: 50%; padding-right: 30px; word-wrap: break-word;}
.page-type-project .project-content .project-detail:after {display: block;clear: both; content: "";}

/* pagina contatti */
.page-template-contatti header.site-header {position: fixed; top: 0;left: 0;width: 100%;  z-index: 999999;}
.page-template-contatti .page-type-project .project-content .project-detail .description {float: left; width: 30%; padding-right: 30px; word-wrap: break-word;}
.page-template-contatti .page-type-project .project-content .project-detail:after {display: block;clear: both; content: "";}
.page-template-contatti .page-type-project .project-content .project-detail .gallery { width: 60%; float: right;}
.gd__form{border:1px solid #eee; padding: 15px; background-color: rgb(246, 246, 246);}
.gd__form .btn.btn-primary{background-color:#000;}

@media (max-width: 991.98px){
    .page-template-contatti header.site-header { position: relative;}
}

@media (max-width: 767.98px){
    .page-heading-pushdown:before, .page-type-project:before {padding-bottom: 0;}
}

@media (max-width: 767.98px){
    .page-type-project .project-content { max-width: calc(100% - 2rem);}

    .page-type-project .project-content .project-detail .description,
    .page-type-project .project-content .project-detail .gallery,
    .page-type-project .project-content .project-detail .info,
    .page-template-contatti .page-type-project .project-content .project-detail .description,
    .page-template-contatti .page-type-project .project-content .project-detail .gallery {float: none;width: 100%; padding-right: 0;}
}



/* Footer */
footer a{font-size: 13px; color: rgba(37, 37, 37, .5) !important;}
footer .copy{font-size: 13px; color: rgba(37, 37, 37, .5);}







