/*
Theme Name: Agency Apparel Child
Theme URI: https://agencyapparel.fr
Description: Thème enfant Hello Elementor — header et footer globaux Agency Apparel.
Author: Agency Apparel
Template: hello-elementor
Version: 4.0.0
Text Domain: agency-apparel-child
*/

:root{
  --agency-black:#050505;
  --agency-black-soft:#0b0b0b;
  --agency-white:#ffffff;
  --agency-muted:#b9b9b9;
  --agency-line:rgba(255,255,255,.14);
  --agency-blue:#0b70e7;
}

/* Masque les en-têtes et pieds de page natifs ou anciens les plus courants. */
body > header.site-header,
body > footer.site-footer,
#site-header,
#site-footer,
.elementor-location-header,
.elementor-location-footer,
.uael-hf-header,
.uael-hf-footer{
  display:none !important;
}

body{
  margin:0;
}

/* =========================
   HEADER GLOBAL
========================= */

#agency-site-header,
#agency-site-header *{
  box-sizing:border-box;
}

#agency-site-header{
  position:relative;
  top:auto;
  z-index:99999;
  width:100%;
  background:rgba(5,5,5,.97);
  border-bottom:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-family:inherit;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

#agency-site-header .agency-header-inner{
  width:100%;
  max-width:1480px;
  min-height:108px;
  margin:0 auto;
  padding:14px 34px;
  display:grid;
  grid-template-columns:220px 1fr auto;
  align-items:center;
  gap:28px;
}

#agency-site-header .agency-header-logo{
  display:inline-flex;
  align-items:center;
  text-decoration:none;
}

#agency-site-header .agency-header-logo img{
  display:block;
  width:170px;
  max-height:78px;
  object-fit:contain;
  object-position:left center;
  image-rendering:auto;
  transform:translateZ(0);
}

#agency-site-header .agency-header-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:34px;
}

#agency-site-header .agency-header-nav a{
  position:relative;
  padding:15px 0;
  color:#fff;
  font-size:13px;
  font-weight:750;
  letter-spacing:.015em;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
}

#agency-site-header .agency-header-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:6px;
  height:2px;
  background:#fff;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .22s ease;
}

#agency-site-header .agency-header-nav a:hover::after,
#agency-site-header .agency-header-nav a.is-current::after{
  transform:scaleX(1);
}

#agency-site-header .agency-header-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 23px;
  border:1px solid rgba(255,255,255,.82);
  border-radius:8px;
  background:transparent;
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.025em;
  text-decoration:none;
  text-transform:uppercase;
  transition:.2s ease;
}

#agency-site-header .agency-header-cta:hover{
  background:#fff;
  color:#050505;
}

#agency-site-header .agency-menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:9px;
  background:transparent;
  color:#fff;
  cursor:pointer;
}

#agency-site-header .agency-menu-toggle span,
#agency-site-header .agency-menu-toggle span::before,
#agency-site-header .agency-menu-toggle span::after{
  display:block;
  width:21px;
  height:2px;
  background:#fff;
  content:"";
  transition:.2s ease;
}

#agency-site-header .agency-menu-toggle span{
  position:relative;
}

#agency-site-header .agency-menu-toggle span::before{
  position:absolute;
  top:-7px;
}

#agency-site-header .agency-menu-toggle span::after{
  position:absolute;
  top:7px;
}

#agency-site-header .agency-mobile-panel{
  display:none;
}

@media(max-width:1180px){
  #agency-site-header .agency-header-inner{
    grid-template-columns:200px 1fr auto;
    padding-inline:24px;
  }

  #agency-site-header .agency-header-nav{
    gap:22px;
  }

  #agency-site-header .agency-header-nav a{
    font-size:12px;
  }
}

@media(max-width:980px){
  #agency-site-header .agency-header-inner{
    min-height:88px;
    grid-template-columns:1fr auto;
  }

  #agency-site-header .agency-header-logo img{
    width:145px;
    max-height:62px;
  }

  #agency-site-header .agency-header-nav,
  #agency-site-header .agency-header-cta{
    display:none;
  }

  #agency-site-header .agency-menu-toggle{
    display:flex;
  }

  #agency-site-header .agency-mobile-panel{
    display:none;
    padding:0 24px 24px;
    border-top:1px solid rgba(255,255,255,.10);
    background:#050505;
  }

  #agency-site-header.is-open .agency-mobile-panel{
    display:block;
  }

  #agency-site-header .agency-mobile-nav{
    display:flex;
    flex-direction:column;
    padding:17px 0 19px;
  }

  #agency-site-header .agency-mobile-nav a{
    padding:14px 0;
    border-bottom:1px solid rgba(255,255,255,.10);
    color:#fff;
    font-size:13px;
    font-weight:750;
    text-decoration:none;
    text-transform:uppercase;
  }

  #agency-site-header .agency-mobile-cta{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    border:1px solid #fff;
    border-radius:8px;
    color:#fff;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
    text-transform:uppercase;
  }
}

/* =========================
   FOOTER GLOBAL
========================= */

#agency-site-footer,
#agency-site-footer *{
  box-sizing:border-box;
}

#agency-site-footer{
  position:relative;
  z-index:3;
  width:100%;
  padding:58px 34px 24px;
  background:#050505;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.10);
  font-family:inherit;
}

#agency-site-footer .agency-footer-inner{
  width:100%;
  max-width:1480px;
  margin:0 auto;
}

#agency-site-footer .agency-footer-main{
  display:grid;
  grid-template-columns:1.15fr .9fr 1fr 1fr 1.05fr;
  gap:54px;
  padding-bottom:47px;
}

#agency-site-footer .agency-footer-brand img{
  display:block;
  width:210px;
  max-height:115px;
  object-fit:contain;
  object-position:left center;
  margin-bottom:18px;
}

#agency-site-footer .agency-footer-brand p{
  max-width:285px;
  margin:0;
  color:#c2c2c2;
  font-size:14px;
  line-height:1.75;
}

#agency-site-footer .agency-footer-column h3{
  margin:0 0 22px;
  color:#fff;
  font-size:13px;
  font-weight:850;
  letter-spacing:.025em;
  text-transform:uppercase;
}

#agency-site-footer .agency-footer-column nav{
  display:flex;
  flex-direction:column;
  gap:14px;
}

#agency-site-footer .agency-footer-column a,
#agency-site-footer .agency-footer-column p{
  margin:0;
  color:#d2d2d2;
  font-size:13px;
  line-height:1.55;
  text-decoration:none;
  transition:.2s ease;
}

#agency-site-footer .agency-footer-column a:hover{
  color:#fff;
  transform:translateX(2px);
}

#agency-site-footer .agency-footer-contact-item{
  display:flex;
  align-items:flex-start;
  gap:11px;
  margin-bottom:17px;
}

#agency-site-footer .agency-footer-contact-icon{
  flex:0 0 auto;
  width:19px;
  color:#fff;
  font-size:16px;
  line-height:1.4;
}

#agency-site-footer .agency-footer-socials{
  display:flex;
  gap:12px;
  margin-top:24px;
}

#agency-site-footer .agency-footer-socials a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:35px;
  height:35px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:7px;
  color:#fff;
  font-size:12px;
  text-decoration:none;
}

#agency-site-footer .agency-footer-bottom{
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:center;
  gap:32px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.18);
}

#agency-site-footer .agency-footer-copy{
  color:#b5b5b5;
  font-size:12px;
}

#agency-site-footer .agency-footer-legal{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:24px;
}

#agency-site-footer .agency-footer-legal a{
  color:#c8c8c8;
  font-size:12px;
  text-decoration:none;
}

#agency-site-footer .agency-footer-backtop{
  display:flex;
  align-items:center;
  justify-content:center;
  width:43px;
  height:43px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:7px;
  background:#171717;
  color:#fff;
  text-decoration:none;
  transition:.2s ease;
}

#agency-site-footer .agency-footer-backtop:hover{
  background:#fff;
  color:#050505;
}

@media(max-width:1100px){
  #agency-site-footer .agency-footer-main{
    grid-template-columns:1.2fr 1fr 1fr;
  }
}

@media(max-width:760px){
  #agency-site-footer{
    padding:45px 22px 22px;
  }

  #agency-site-footer .agency-footer-main{
    grid-template-columns:1fr 1fr;
    gap:38px 26px;
  }

  #agency-site-footer .agency-footer-brand{
    grid-column:1 / -1;
  }

  #agency-site-footer .agency-footer-bottom{
    grid-template-columns:1fr auto;
  }

  #agency-site-footer .agency-footer-legal{
    grid-column:1 / -1;
    grid-row:2;
    justify-content:flex-start;
  }
}

@media(max-width:520px){
  #agency-site-footer .agency-footer-main{
    grid-template-columns:1fr;
  }

  #agency-site-footer .agency-footer-brand{
    grid-column:auto;
  }

  #agency-site-footer .agency-footer-bottom{
    grid-template-columns:1fr auto;
  }

  #agency-site-footer .agency-footer-legal{
    flex-direction:column;
    align-items:flex-start;
    gap:11px;
  }
}
