/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* HEADER */
.elementor-element.elementor-element-0ad3fb5.e-con-full.e-flex.e-con.e-parent.elementor-sticky.elementor-sticky--active.elementor-section--handles-inside.e-lazyloaded.elementor-sticky--effects .elementor-element.elementor-element-29876b7.e-con-full.e-flex.e-con.e-child {
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.cls-2 {
    fill: #606c38 !important;
}

.image-container {
  overflow: hidden; 
}

.image-container img, .e-gallery-image.elementor-gallery-item__image.e-gallery-image-loaded {
  width: 100!important; 
  height: 100!important; 
  object-fit: cover!important; 
  transition: transform 0.4s ease!important; 
}

.image-container:hover img, .e-gallery-image.elementor-gallery-item__image.e-gallery-image-loaded:hover {
  transform: scale(1.1)!important; 
}

/* HERO FIXE */
.hero-fixed {
  height: 100vh;
  position: sticky;
  top: 0;
}

/* SECTION QUI PASSE DEVANT */
.content-scroll {
  position: relative;
  z-index: 2;
  background: #ffffff;
}

/* 🔽 En dessous de 1200px : plus d'effet sticky */
@media (max-width: 1199px) {
  .hero-fixed {
    position: relative; /* On enlève le sticky */
    height: auto; /* Hauteur normale */
  }
}

/* FORMULAIRE */

input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required, textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
    font-family: 'CaviarDreams'!important;
    font-weight: 700!important;
}

.form-contact a {
    color: black;
}

span.wpcf7-list-item-label {
    font-family: 'Poppins';
}

.grecaptcha-badge {
	 visibility: hidden!important;
}

.elementor-container {
  display: flex;
  flex-direction: column;
  gap: 15px; 
}

.ligne-form {
  display: flex;
  gap: 20px;
  margin-top: 20px;
}

.ligne-form .colonne-50 {
  flex: 1 1 50%;
}

.elementor-container input, .message-form-cta textarea {
    width: 100%;
    padding: 10px;
    border-bottom: 1px solid #004161 !important;
    border-radius: 0px;
    box-sizing: border-box;
    font-size: 16px;
    border: none;
    outline:none;
}

.message-form-cta textarea {
  min-height: 120px;
  resize: vertical;
}

form.wpcf7-form.init a {
    color: black;
}

.acceptance-form {
  font-size: 14px;
  margin-top: 10px;
}

textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
    margin-top: 20px;
    height: 200px;
}

input[type="submit"] {
    background-color: #f3ae00;
    color: #fff;
    border: none;
    padding: 12px 25px 10px 25px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 15px;
    transition: background-color 0.3s ease;
    font-family: 'CaviarDreams';
    text-transform: uppercase;
    font-weight: 600;
    border-radius: 150px;
    letter-spacing: 0.2px;
    margin-top: 30px;
}

input[type="submit"]:hover {
  background-color: #005bb5;
}

.elementor-element.elementor-element-01fd190.maps.elementor-widget.elementor-widget-google_maps {
    border-radius: 50px 0px 50px 0px;
}

/* BLOG */

figure.wp-block-image.size-large.img-cta img {
    height: 300px;
    object-fit: cover;
    margin-bottom: -40px;
	border-radius: 20px;
	margin-top: 40px;
	width: 1500px;
}

h2.wp-block-heading {
    font-family: 'CaviarDreams';
    font-weight: 100;
    margin-top: 50px;
    font-size: 40px;
}


.bloc-cta-droit {
    background: #f8f8f8;
    padding: 30px 30px 50px 30px;
    border-radius: 30px 0px 30px 0px;
    margin-left: -160px !important;
}

h3.wp-block-accordion-heading > button, h3.wp-block-accordion-heading > button:focus {
	background :white;
    width: 100%;
    display: flex;
    justify-content: left !important;
    border: none;
    color: black !important;
	padding : 0px;
}

h3.wp-block-accordion-heading > button:hover {
	background : White;
    text-decoration: none !important;
}

.accordeon-blog p {
    margin-bottom: 45px !important;
    margin-top: -10px !important;
}

.accordeon-blog {
    margin-top: 20px!important;
}

span.wp-block-accordion-heading__toggle-title:hover {
    text-decoration: none !important;
    color: black;
}

span.wp-block-accordion-heading__toggle-title {
    justify-content: left !important;
    position: absolute;
    margin-left: 30px;
	color: #76834d;
}

.resumer-colonne {
    background: #f8f8f8;
    padding: 30px;
    margin-top: 50px !important;
    border-radius: 20px 0px 20px 0px;
}

.bloc-cta-gauche {
    background: #f8f8f8;
    padding: 30px 30px 50px 30px;
    border-radius: 30px 0px 30px 0px;
    margin-right: -160px !important;
}

.img-cta-gauche img {
    border-radius: 30px 0px 30px 0px;
	height: 650px;
    object-fit: cover;
}

.contenu .wp-block-column.is-vertically-aligned-center.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 80% !important;
}

.blog-design {
    margin-top: 50px;
    margin-bottom: 50px;
}

.btn-cta a.wp-block-button__link.wp-element-button {
    background: #f3ae00;
    font-family: 'CaviarDreams';
    font-weight: 500;
    color: white;
    text-transform: uppercase;
    font-size: 15px;
    padding: 10px 30px;
    letter-spacing: 0.5px;
	margin-bottom: 40px;
}

.contenu li {
    text-decoration: none;
    list-style: none;
}

.contenu li::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 19px;
    background-image: url(https://appartements-portemars.com/wp-content/uploads/2026/03/favicon-appartements-porte-de-mars.png);
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 8px;
	margin-bottom: -5px;
}

.contenu ul.wp-block-list {
    padding: 0px;
	margin-bottom: 20px;
}

.btn-cta a.wp-block-button__link.wp-element-button:hover {
    background: #E4A300;
}

.contenu p {
    text-align: justify;
}

h3.wp-block-heading {
    font-family: 'CaviarDreams';
    color: #f3ae00;
    font-weight: 100;
    font-size: 28px;
}



/*Cookies - Complianz*/
#cmplz-manage-consent .cmplz-btn.cmplz-manage-consent{
    overflow: hidden;
    color: #01061900 !important;
}

.cmplz-banner-checkbox label:before{
    box-shadow: none!important;
}
.cmplz-manage-consent::before {
   /* font-family: "Font Awesome 5 Free";
    font-weight: 900;  
    content: "\f564";*/
    content: "";
    display: inline-block;
    vertical-align: middle;
    margin-left: 4px;
    color: white;

}
#cmplz-manage-consent .cmplz-manage-consent {
    bottom: 30px !important;
    left: 30px !important;
    border-radius: 100% !important;
    color: #010619 !important;
    background: #010619 !important;
    padding: 15px 15px 15px 15px !important;
    min-width: unset !important;
    width: 45px;
    height: 45px !important;
    padding: 0 !important;
    background-image: url(/wp-content/uploads/2026/03/cookie.png) !important;
    background-position: center;
    background-repeat: no-repeat !important;
}
#cmplz-cookies-overview{
    background-color: #fff;
}
@media screen and (min-width: 768px) and (max-width: 1024px){
    #cmplz-manage-consent .cmplz-manage-consent {
        bottom: 45px !important;
        left: 15px !important;
    }
}@media screen and (max-width: 768px){
    #cmplz-manage-consent .cmplz-manage-consent {
        bottom: 15px !important;
        left: 15px !important;
    }
}
.cmplz-show-banner.elementor-widget-button a:hover{
    cursor: pointer;
    background-color: var(--e-global-color-primary);
} 

.lang-switch {
    font-family: 'CaviarDreams';
    font-weight: 700;
}

/* RESPONSIVE */
.lang-switch a {
    color: black;
}

.lang-switch a:hover {
    color: #606c38;
}

@media screen and (max-width: 1366px) {
.sous-menu a.elementor-sub-item {
    font-size: 15px !important;
    /* margin-bottom: -10px; */
    margin-top: -10px;
}
}

/* Responsive pour mobile */
@media screen and (max-width: 768px) {
  .ligne-form {
    flex-direction: column;
  }
	

.sous-menu a.elementor-sub-item {
    font-size: 14px !important;
	margin-top: -10px;
    margin-bottom: -10px;
}

/* BLOG */	
h2.wp-block-heading {
    font-size: 25px;
}
	
figure.wp-block-image.size-large.img-cta img {
    height: 200px;
}
	
.btn-cta a.wp-block-button__link.wp-element-button {
     margin-bottom: 0px; 
}
	
.bloc-cta-gauche {
    padding: 0px 30px 50px 30px;
    margin-right: 0px!important;
}
	
.img-cta-gauche img {
    height: 200px;
}
	
.bloc-cta-droit {
    padding: 0px 30px 20px 30px;
    margin-left: 0px!important;
}


}

/* RESPONSIVE */
@media screen and (max-width: 1024px) {
.background-bleu {
    background: white !important;
}
}