/* 
Theme Name: Cabinet Douchin
Theme URI: https://www.cabinet-douchin.fr/
Description: Theme enfant du site web cabinet-douchin.fr
Author: Parker & Lewis
Author URI: https://www.parker-lewis.fr/
Template: hello-elementor
Version: 1.0.0
Text Domain: cabinet-douchin
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 */
/* ====== CD Menu Mobile Off-Canvas (Right) ====== */
:root{
  --cd-menu-mobile-width: 320px;
  --cd-menu-mobile-overlay-opacity: 0.45;
  --cd-menu-mobile-z: 99999;
}

/* Panel */
.cd-menu-mobile-panel{
  position: fixed;
  top: 0;
  right: 0;
  width: var(--cd-menu-mobile-width);
  max-width: 86vw;
  height: 100vh;
  z-index: var(--cd-menu-mobile-z);
  transform: translateX(110%);
  transition: transform 280ms ease;
  will-change: transform;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.cd-menu-mobile-panel .elementor-nav-menu .menu-item {
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.cd-menu-mobile-panel .elementor-nav-menu .menu-item:before {
    font-family: "Font Awesome 5 Free";
    content: "\f105";
    margin-right: 8px;
    display:block;
    position: absolute;
    top: 50%;
    left: 0;
    color: #ffffff;
}

/* Overlay */
.cd-menu-mobile-overlay{
  position: fixed;
  inset: 0;
  background: #000;
  opacity: 0;
  pointer-events: none;
  z-index: calc(var(--cd-menu-mobile-z) - 1);
  transition: opacity 280ms ease;
}

/* Content push target */
.cd-menu-mobile-content{
  transition: transform 280ms ease;
  will-change: transform;
}

/* Active state (added by JS) */
html.cd-menu-mobile-active .cd-menu-mobile-panel{
  transform: translateX(0);
}

html.cd-menu-mobile-active .cd-menu-mobile-overlay{
  opacity: var(--cd-menu-mobile-overlay-opacity);
  pointer-events: auto;
}

html.cd-menu-mobile-active .cd-menu-mobile-content{
  transform: translateX(calc(-1 * var(--cd-menu-mobile-width)));
}

/* Optional: lock scroll when menu open */
html.cd-menu-mobile-active,
html.cd-menu-mobile-active body{
  overflow: hidden;
  touch-action: none;
}

/* Toggle visible by default */
.cd-menu-mobile-toggle{
  transition: opacity 200ms ease, visibility 0s linear 200ms;
}

/* Hide ONLY the open toggle when menu is active */
html.cd-menu-mobile-active .cd-menu-mobile-toggle[data-cd-menu-action="open"]{
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 200ms ease, visibility 0s linear 0s;
}


/* Desktop (>= 1024px) : on masque complètement le off-canvas */
@media (min-width: 1025px){
  .cd-menu-mobile-panel{
    display: none !important;
  }
  .cd-menu-mobile-overlay{
    display: none !important;
  }
  .cd-menu-mobile-content{
    transform: none !important;
  }
  html.cd-menu-mobile-active,
  html.cd-menu-mobile-active body{
    overflow: auto;
    touch-action: auto;
  }
}

/***
* class: .sticky-header
*/
header.sticky-header {
	--header-height: 90px;
	--shrink-header-to: 0.78;
	--transition: .45s cubic-bezier(.4, 0, .2, 1);
	background-color: rgba(244, 245, 248, 1);
	transition: background-color var(--transition),
				backdrop-filter var(--transition),
				box-shadow var(--transition);
}

/***
* Sticky header activated
*/
header.sticky-header.elementor-sticky--effects {
	background-color: rgba(244, 245, 248, .8);
	box-shadow: 0px 4px 33px 1px rgba(0, 0, 0, .07);
	-webkit-backdrop-filter: saturate(180%) blur(20px);
	backdrop-filter: saturate(180%) blur(20px);
}
header.sticky-header > .e-con-inner {
    height: 70px;
	min-height: var(--header-height);
	transition: min-height var(--transition);
}

@media only screen and (min-width: 1025px) {
    
    header.sticky-header.elementor-sticky--effects > .e-con-inner {
	min-height: calc( var(--header-height) * var(--shrink-header-to) );
}
    
    header.sticky-header .logo {
        transition: transform var(--transition);
    }
    header.sticky-header.elementor-sticky--effects .logo {
        margin: 0;
        padding: 0;
        transform: scale(.6);
    }
/*
    header.sticky-header.elementor-sticky--effects .logo img {
        transform: scale(.8);
    }
*/
    header.sticky-header.elementor-sticky--effects .elementor-nav-menu .menu-item > a.elementor-item {
        padding-top: 28px;
        padding-bottom: 28px;
    }
}

/***
* Footer
*/
.elementor-location-footer .elementor-nav-menu .fas, .elementor-location-footer .elementor-nav-menu .far, .elementor-location-footer .elementor-nav-menu .fab, .elementor-location-footer .elementor-nav-menu .fa {
    margin-right: 8px;
    color: #CCA906;
}

/***
* Formulaire de contact
*/
#gform_submit_button_1 {
    padding: 16px 48px 16px 48px;
    font-family: "Roboto", Sans-serif;
    font-size: 16px;
    font-weight: 900;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: var(--e-global-color-9d2e89f);
    background-color: var(--e-global-color-accent);
    border-radius: 100px 100px 100px 100px;
}