/**
 * Theme Name:     Child Theme
 * Author:         OHPNK
 * Template:       generatepress
 * Text Domain:	   child-theme
 * Description:    one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images, flexible-header, post-formats, sticky-post, threaded-comments, translation-ready
 * Theme URI:      https://ohpnk.com/
 * Author URI:     http://OHPNK%20Digital%20Studio
 * Version:        1.1
 * License:        GNU General Public License v2 or later
 * License URI:    http://licence/GPL.txt
 * Tags:           one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images
 */

@font-face{font-family:'ElegantIcons'; src: url('./fonts/ElegantIcons.eot'); src: url('./fonts/ElegantIcons.eot?#iefix') format('embedded-opentype'), url('./fonts/ElegantIcons.woff') format('woff'), url('./fonts/ElegantIcons.ttf') format('truetype'); font-weight: normal; font-style: normal; font-display: swap;}


/*-------------------- General Styles --------------------*/

/* Colors */
.white-color{color:#faf9f6;}
.beige-color{color:#e8dfd2;}
.black-color{color:#242625;}
.purple-color{color:#5C0F8B;}
.grey-color{color:#dbd9d5;}
.bronze-color{color:#8C6A4B;}

/* Text styling */
.uppercase{text-transform:uppercase;}
.lowercase{text-transform:lowercase;}
.italic{font-style:italic;}
.underline{text-decoration:underline;}
.underline-offset3{text-underline-offset:3px;}
.underline-offset4{text-underline-offset:4px;}
.underline-offset6{text-underline-offset:6px;}
.text-center{text-align:center;}
.text-left{text-align:left;}
.text-right{text-align:right;}
.text-justify{text-align:justify;}
.font-regular{font-weight:400;}
.font-medium{font-weight:500;}
.font-semibold{font-weight:600;}
.letter-spaceing-1-3{letter-spacing:1.3px;}
.letter-spaceing-1-5{letter-spacing:1.5px;}
.letter-spaceing-2{letter-spacing:2px;}



/* spacing */
.no-margin{margin:0 !important;}
.no-padding{padding:0 !important;}
.no-mt{margin-top:0 !important;}
.no-mb{margin-bottom:0 !important;}
.no-pt{padding-top:0 !important;}
.no-pb{padding-bottom:0 !important;}

/* Buttons */
.beige-btn{background-color:#e8dfd2; color:#242625 !important; display:inline-block; width:fit-content; padding:4px 30px; transition:all 0.3s ease-in-out; text-decoration:none; text-transform:uppercase; border:1px solid #e8dfd2; letter-spacing:1.5px;}
.beige-btn:hover{background-color:#dbd9d5; color:#242625 !important;}
.black-btn{background-color:#242625;color:#faf9f6 !important; display:inline-block; width:fit-content; padding:4px 30px; transition:all 0.3s ease-in-out; text-decoration:none; text-transform:uppercase; border:1px solid #242625; letter-spacing:1.5px;}
.black-btn:hover{background-color:transparent; color:#242625 !important; border:1px solid #242625;}


/* CTA style */
.underline-cta{letter-spacing:1.3px; text-transform:uppercase; text-decoration:underline; text-underline-offset:6px; display:inline-block; text-decoration-thickness: 1px; text-decoration-color:rgba(36, 38, 37, .3); font-size:11px;}
.text-subtitle{font-size: 12px; opacity: 0.7 !important; text-transform: uppercase; letter-spacing:1.4px; margin:0;}

.cta-link{font-size:11px; letter-spacing:1.5px;}
.cta-btn-style{letter-spacing:1.3px; text-transform:uppercase; display:inline-block; position:relative;}
.cta-btn-style::after {content: "";position: absolute;left: 0;bottom: -4px;width: 85%;height: 1px;background-color: rgba(36, 38, 37, .6);transition: width 0.3s ease-in-out; }
.cta-btn-style:hover::after{width:104%; background-color: rgba(92, 15, 139, .6);}
@media (min-width: 768px){.cta-btn-style{font-size:12px;}}
@media (max-width: 767px){.cta-btn-style{font-size:11px;}}

/* Page */
html, body{overflow-x: hidden;}
.full-width{width:100%; position:relative;}
.section-grid{position:relative; max-width:1100px; width:100%; padding-left:30px; padding-right:30px; margin:0 auto; box-sizing: border-box;}
@media (min-width: 1400px) {.section-grid{max-width: 1300px;}}
@media (min-width: 1025px) and (max-width: 1200px){.section-grid{max-width: 950px;}}

.section-grid .row{display: flex; flex-wrap: wrap; margin: 0 -15px;}
.section-grid .col{padding: 0 30px; min-width: 300px;}
.section-grid .col-33 { flex: 0 0 33.333%; max-width: 33.333%; padding: 0 15px;}
.section-grid .col-30 {flex: 0 0 30%;}
.section-grid .col-40 {flex: 0 0 40%;}
.section-grid .col-50 {flex: 0 0 50%;}
.section-grid .col-60 {flex: 0 0 60%;}
.section-grid .col-70 {flex: 0 0 70%;}
@media (max-width: 1024px) {.section-grid .row .col {flex: 0 0 100%; max-width: 100%;} }


/* Image Animations */
/* zoom in transition */
.zoom-in-image {overflow:hidden; display: flex; flex-direction:column;}
.zoom-in-image img{opacity: 0; transform: scale(1.12);  transition: opacity 1s ease, transform 3s ease-in-out; transform-origin: center center;}
.zoom-in-image.visible img {opacity: 1;transform: scale(1);}

/* Slide in bottom transition */
.slide-in-image {overflow:hidden; display: flex;justify-content: center; align-items: center;}
.slide-in-image img{opacity: 0; transform: translateY(20px);  transition: opacity 1s ease, transform 3s ease;; transform-origin: center center;}
.slide-in-image.visible img {opacity: 1; transform: translateY(0);}

/* Pulse in bottom transition */
.pulse-in-image img {opacity: 0; transform: scale(1); animation: pulse 2s ease-in-out; transition: opacity 1s ease;}
@keyframes pulse {0%, 100% {transform: scale(1);}50% {transform: scale(1.05); } }
.pulse-in-image.visible img {opacity: 1;animation: pulse 2s ease-in-out;}

/* Image hover transition */
.img-hover-transition img{transition: transform 2.5s ease;}
.img-hover-transition img:hover {transform: scale(1.14);}
.img-hover-transition .vc_single_image-wrapper{overflow:hidden;}




/*======= Header section =======*/
.inside-header{padding:0 50px; max-width:100%; height:70px;}
.inside-header .site-logo a{display:block;}
.inside-header .site-logo img{height:40px;}
.main-navigation .main-nav ul li a{padding:0 20px;}
.inside-header .main-nav .header-cta a{background-color:#242625; display:inline-block; width:fit-content; border:1px solid transparent; padding:4px 30px; transition:all 0.3s ease-in-out; }
.inside-header .main-nav .header-cta a:hover{background-color:transparent; color:#242625 !important; border:1px solid #242625;}
.inside-header .main-nav .header-number a{color:#242625;transition:all 0.3s ease-in-out;}


@media (max-width: 768px) {
	.inside-header{padding:0 30px; /*flex-direction:column !important; */justify-content:space-between;}
	.inside-header .site-logo img{height:30px;}
	nav.main-navigation{flex-basis:unset !important; margin-left:unset !important;}
	.mobile-menu-control-wrapper{display:none !important;}
    .main-navigation ul{display: flex !important;}
	.main-navigation ul li.header-number{display:none;}
	.inside-header .main-nav .header-cta a{padding:4px 15px;}
}


/*======= Hero Banner section =======*/
.hero{position: relative; width: 100%; height: 90vh; min-height: 500px; overflow: hidden;}
.hero-media{height:100%;}
.hero-media img{width: 100%; height: 100%; object-fit: cover;}
.home-hero .hero-media img{object-position:center center;}
.interior-hero .hero-media img{object-position:center bottom;}
.hero-overlay{position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.4) 100%); }
.hero-content{position: absolute; bottom:120px; left:80px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start;}
.hero-content h1{margin:0 0 15px;} 
.hero-content p{margin-bottom:20px; font-size:18px;}

@media (max-width: 768px) {
	.hero{height:500px;}
	.hero-overlay{background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0.5) 100%);}
	.hero-content{bottom:40px; left:15px; right:15px; text-align:center; align-items:center;}
}

/*===== Logo carousel section =====*/
section.logo-carousel{position:relative; margin:60px 0;}
.logo-container .swiper-wrapper{-webkit-transition-timing-function:linear!important; -o-transition-timing-function:linear!important;transition-timing-function:linear!important; align-items:center;}
.logo-container .swiper-wrapper .swiper-slide{-webkit-backface-visibility: hidden; display:flex; justify-content:center; align-items:center;}
.logo-container .swiper-wrapper img{width:120px; height:30px; object-fit: contain;}
.logo-container .swiper-wrapper img.antoniolupi{height:40px; margin-top:3px;}
.logo-container .swiper-wrapper img.artemide{width:100px;}
.logo-container .swiper-wrapper img.bb-italia{height:40px; width:auto;}
.logo-container .swiper-wrapper img.bulthaup{width:100px;}
.logo-container .swiper-wrapper img.ernestomeda{width:120px; }
.logo-container .swiper-wrapper img.gabriel-scott{width:150px;}
.logo-container .swiper-wrapper img.vladimir-kagan{width:80px;}
.logo-container .swiper-wrapper img.lualdi{width:70px;}
.logo-container .swiper-wrapper img.okha{width:70px;}
.logo-container .swiper-wrapper img.poliform{width:90px;}
.logo-container .swiper-wrapper img.porada{width:90px; height:25px;}
.logo-container .swiper-wrapper img.porro{width:90px; height:22px; margin-top:7px;}
.logo-container .swiper-wrapper img.tribu{width:90px; height:22px;}
.logo-container .swiper-wrapper img.monitillo-1980{height:40px; width:150px; }
.logo-container .swiper-wrapper img.paolo-castelli{height:42px; width:150px; }
.logo-container .swiper-wrapper img.Maxalto50{height:25px; width:auto; margin-top:7px;}
.logo-container .swiper-wrapper img.vismara{height:22px; width:auto; margin-top:7px;}
.logo-container .swiper-wrapper img.arclinea{height:22px;}


/*======= About section =======*/
section.about{position:relative; margin:0 0 80px;}
.about .row{align-items:center;}
.about .content-col h2{margin:0 0 25px;}
.about .content-col p{width:80%; margin-bottom:40px;}
.about .content-col .line-separator{background:rgba(219, 217, 213, 1); height:1px; width:80%; margin-bottom:40px;}
.about .content-col .contact-info a{display:block; text-underline-offset:3px; text-decoration-color:rgba(36, 38, 37, .5);}
.about .content-col .contact-info a.telephone{margin-bottom:6px;}
.about .img-col img {width: 100%; height: auto; object-fit: cover; display: block;}

@media (max-width: 1024px) {
	section.logo-carousel{margin:30px auto;}
	.about .section-grid .content-col{order:2;}
	.about .section-grid .img-col{order:1;  margin-bottom:30px;}
	section.about{margin-top:30px;}
}

@media (max-width: 768px) {
	.about .content-col p{width:100%}
}


/*======= Subcategories Intro section =======*/
section.sub-intro{position:relative; margin:0 0 80px;}
.sub-intro .row{align-items:center; padding:40px 0;}
.sub-intro .content-col h2{margin:0 0 25px;}
.sub-intro .content-col p{width:80%;}
.sub-intro .content-col, .sub-intro .img-col{z-index:99;}
@media (min-width: 1025px) {.sub-intro .img-col{padding-right:40px;}}
.sub-intro .bg-color{position:absolute; right:0; top:0; height:100%; width:70%; background-color:rgba(232, 223, 210, 1); z-index:9;}

@media (max-width: 1024px) {
	.sub-intro .section-grid .img-col{ margin-bottom:30px;}
	.sub-intro .bg-color{display:none;}
	section.sub-intro{margin-bottom:50px;}
}

@media (max-width: 768px) {
	.sub-intro .content-col p{width:100%}
}


/*======= Sub categories section =======*/
section.categories{position:relative; background:rgba(232, 223, 210, .5);}
.categories .row{align-items:center;}
.categories .img-container{overflow:hidden;}
.categories .img-col .img-txt{margin:3px 0 0;}
.living .row{padding:120px 0 60px;}
.dining .row{padding:60px 0;}
.outdoor .row{padding:60px 0;}
.complements .row{padding:60px 0;}

.interior-curation .row{padding:120px 0 60px;}
.fine-furniture .row{padding:60px 0;}
.luxury-systems .row{padding:60px 0;}
.custom-lighting .row{padding:60px 0;}

.systems-kitchen .row{padding:120px 0 60px;}
.systems-wardrobes .row{padding:60px 0;}
.systems-bathrooms .row{padding:60px 0;}
.systems-doors .row{padding:60px 0;}
.systems-lighting .row{padding:60px 0;}


@media (max-width: 1024px) {
	.categories .img-col .img-txt{text-align:right;}
	.living .row{padding:60px 0 20px;}
	.living .section-grid .img-col{margin-bottom:20px;}
	.dining .section-grid .content-col{order:2;}
	.dining .section-grid .img-col{order:1; margin-bottom:20px;}
	.outdoor .row{padding:20px 0 60px;}
	.complements .section-grid .content-col{order:2;}
	.complements .section-grid .img-col{order:1; margin-bottom:20px;}
	
	.categories .img-col .img-txt{text-align:right;}
	.interior-curation .row{padding:60px 0 20px;}
	.interior-curation .section-grid .img-col{margin-bottom:20px;}
	.fine-furniture .section-grid .content-col{order:2;}
	.fine-furniture .section-grid .img-col{order:1; margin-bottom:20px;}
	.luxury-systems .row{padding:20px 0 60px;}
	.custom-lighting .section-grid .content-col{order:2;}
	.custom-lighting .section-grid .img-col{order:1; margin-bottom:20px;}
	
	.systems-kitchen .row{padding:60px 0 20px;}
	.systems-kitchen .section-grid .img-col{margin-bottom:20px;}
	.systems-wardrobes .section-grid .content-col{order:2;}
	.systems-wardrobes .section-grid .img-col{order:1; margin-bottom:20px;}
	.systems-bathrooms .row{padding:20px 0 60px;}
	.systems-doors .section-grid .content-col{order:2;}
	.systems-doors .section-grid .img-col{order:1; margin-bottom:20px;}
	.systems-lighting .section-grid .img-col{margin-bottom:20px;}
	
}

@media (max-width: 768px) {
	.about .content-col p{width:100%}
}


/*======= Testimonials section =======*/
section.testimonials{position:relative; padding:80px 0; text-align: center;}
.testimonials .testimonial-swiper{width: 100%; min-height: 150px; margin:40px 0;}
.testimonials .testimonial-swiper .swiper-slide{height: auto;}
.testimonials .testimonial-item{max-width: 700px;margin: 0 auto;}
.testimonials .testimonial-text{font-size: 20px; margin-bottom: 30px;}
.testimonials .testimonial-author{font-weight: 400; letter-spacing:1.3px; margin-bottom:40px;}

/* Swiper pagination */
.testimonial-container .swiper-pagination{bottom:0 !important; margin:0 auto; width: 120px !important; display:flex;right:0;}
.testimonial-container .swiper-pagination-bullet{background:#dbd9d5 !important; opacity:1 !important; border-radius:0 !important; width:100% !important; height:3px !important; margin: 0 auto !important;}
.testimonial-container .swiper-pagination-bullet-active{background:#242625 !important;}

@media (max-width: 768px) {.testimonials .testimonial-text{font-size:18px;}}


/*======= Contact form section =======*/
section.contact-form{position:relative; padding:80px 0; box-shadow:0 -7px 10px -10px rgba(51, 51, 51, .2);}
.contact-form .title-section{text-align:center;}
.contact-form .title-section h2{}
.contact-form .title-section p{text-align:center; margin:10px 0 60px;}

/* Contact Form */
.contact-form .cf-wrapper{width:100%; margin:0 auto; }
.contact-form .cf-wrapper .form-group{position:relative;}
.contact-form .cf-wrapper .form-row{display: flex;justify-content: space-between;gap: 15px;position:relative;}
.contact-form .cf-wrapper .form-group{flex: 1;position:relative; margin-bottom:30px;}
.contact-form .cf-wrapper .form-group.project-scope{margin-bottom:25px;}

/* Respond */
.wpcf7 form.sent .wpcf7-response-output{border-color:#dbd9d5 !important; color:#242625 !important;}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output{border-color:#dbd9d5 !important; color:#242625 !important;}

/* input fields */
.contact-form .cf-wrapper .form-group input[type=text], .contact-form .cf-wrapper .form-group input[type=email], .contact-form .cf-wrapper .form-group select, .contact-form .cf-wrapper .form-group textarea{position: relative; border-radius:3px; margin:0 !important; width:100%; padding:15px 20px;}
.contact-form .cf-wrapper .form-group label {position: absolute; top:-10px; z-index: 1; left:20px; padding: 0 5px; background-color: #faf9f6; padding: 0 10px;}
.contact-form .cf-wrapper .form-group textarea{resize: vertical;min-height:60px;height:80px; max-height:120px;overflow-y: auto; }
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active{-webkit-box-shadow: 0 0 0 30px #faf9f6 inset !important;}
.contact-form .cf-wrapper .submit-group{display:flex; flex-direction:column; align-items:center;}
.contact-form .cf-wrapper .form-group input.wpcf7-submit{padding:5px 50px !important;width:fit-content !important; letter-spacing:1.5px; border:1px solid #242625; transition:all 0.3s ease-in-out;}

/* telephone */ 
.intl-tel-input.separate-dial-code .selected-flag{background-color:transparent;}
.intl-tel-input.allow-dropdown .flag-container:hover .selected-flag{background-color:transparent;}
.intl-tel-input.separate-dial-code .selected-dial-code{color: #242625 !important;}
.wpcf7-not-valid-tip{color:rgba(92, 15, 139, 0.6) !important;}

/* select 2 */
.contact-form .cf-wrapper .select2-selection{border-radius:3px !important; border-color:#dbd9d5 !important; height:48px !important; margin:0 !important; background-color:#faf9f6 !important;}
.contact-form .cf-wrapper .select2-selection__rendered{color: #242625; padding:15px 20px; line-height:normal;}
.select2-selection--single .select2-selection__arrow{height:100% !important; display:flex; align-items:center; right:4px !important;}
.select2-selection--single .select2-selection__arrow b{display:none;} 
.select2-selection__arrow:before {font-family:'ElegantIcons'; content:"\33"; font-size:18px;}
.select2-container--default .select2-search--dropdown .select2-search__field{border-color:#dbd9d5 !important; margin-bottom:10px;}
.select2-container--open .select2-dropdown--below{background:rgba(250, 249, 246, 1) !important; padding:10px; border-color:#dbd9d5 !important;}
.select2-container--default .select2-results__options{max-height:none !important;}
.select2-dropdown .select2-results__option:hover {background-color: #e8dfd2 !important; color: #242625 !important; }
.select2-dropdown .select2-results__option--highlighted.select2-results__option--selectable{background-color:rgba(232, 223, 210, .5) !important; color:#242625 !important;}
.select2-dropdown .select2-results__option--selected{background-color:#dbd9d5 !important; color:#242625 !important;font-weight: 500 !important;}

@media (max-width: 768px){
	.contact-form .cf-wrapper .form-row{flex-direction:column;}
}



/*======= Website footer =======*/
.footer-widgets-container{padding:80px 40px 40px;}
/*.site-footer{border-top:1px solid #dbd9d5;}*/
.site-footer .footer-col{display:flex; flex-direction:column;}
.site-footer .footer-col img.footer-logo{width:100px; height:auto; margin-bottom:30px;}
.site-footer .footer-col .footer-about{width:100%;}
.site-footer .footer-col .footer-about p{line-height:24px;}

.site-footer .footer-col .locations{margin-top:67px;}
.site-footer .footer-col .locations ul li{margin-bottom:30px; min-height:130px;}
.site-footer .footer-col .locations ul li p{line-height:24px;}
.site-footer .footer-col .locations ul li p a{color:#242625; text-underline-offset:4px;  text-decoration-color:rgba(36, 38, 37, .3); text-decoration-thickness: 1px; transition: all 0.3s ease;}
.site-footer .footer-col .locations ul li p a:hover{color:#5C0F8B; text-decoration-color: rgba(92, 15, 139, .3);}

/* Column 4 */
.site-footer .footer-col.fcol-4{margin-top:67px;}
.site-footer .fcol-4 .address-map{width: 100%; height: 150px; -webkit-filter: grayscale(100%); filter: grayscale(100%);}
.site-footer .fcol-4 .obegi-map p{margin-bottom:10px;}
.site-footer .fcol-4 h4{font-size:14px; margin:15px 0 15px}
.site-footer .footer-col .social-media{display:flex; gap:20px;}
.site-footer .footer-col .social-media img{width:18px; height:18px;}

@media (min-width: 769px) and (max-width: 1024px){
	.inside-footer-widgets{display: grid; grid-template-columns: repeat(2, 1fr);}
	.footer-widget-3{order: 4;}
	.footer-widget-4{order: 3;}
	.site-footer .footer-col .locations, .site-footer .footer-col.fcol-4{margin-top:0;}
	.footer-widget-2, .footer-widget-3{margin-bottom:0 !important;}
	.site-footer .footer-col .locations ul li{min-height:auto;}
}

@media (max-width: 768px){
	.site-footer .footer-col .locations, .site-footer .footer-col.fcol-4{margin-top:0;}
	.footer-widget-2, .footer-widget-3{margin-bottom:0 !important;}
	.site-footer .footer-col .locations ul li{min-height:auto;}
}




/*======= Highlight card section =======*/
section.highlight-cards{position:relative; padding:80px 0; box-shadow:0 -7px 10px -10px rgba(51, 51, 51, .2);}
.highlight-cards .col p.text-subtitle{margin: 10px 0 0;}
.highlight-cards .col h4{margin:10px 0 20px; }


@media (max-width: 1024px){
	.highlight-cards .col{margin-bottom:50px;}
	section.highlight-cards{padding-bottom:50px;}
}








