/* ModelBook — FINAL clean menu/social reset v1.4.0 */

/* Kill old social/menu residues everywhere */
.mobile-social-inline,
.mobile-social-fallback{
  all:unset;
}

.site-header .menu-social-icons a,
.site-header .mobile-social-inline a{
  text-indent:0!important;
}

/* =========================
   DESKTOP
========================= */
@media(min-width:901px){

  .mobile-menu-toggle{
    display:none!important;
  }

  .site-header,
  .site-header.v6-header.unified-header{
    background:#070707!important;
    color:#f8f2e9!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    padding:38px min(6vw,96px) 28px!important;
    overflow:visible!important;
    z-index:1000!important;
  }

  .site-header .v6-logo-row{
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
    align-items:center!important;
    width:100%!important;
    min-height:82px!important;
    margin:0 auto 22px!important;
    padding:0!important;
  }

  .site-header .brand{
    grid-column:2!important;
    position:static!important;
    transform:none!important;
    margin:0 auto!important;
    width:auto!important;
    max-width:420px!important;
    text-align:center!important;
  }

  .site-header .brand span{
    display:block!important;
    color:#d8b98e!important;
    font-family:"Cormorant Garamond", Georgia, serif!important;
    font-size:clamp(42px,4.4vw,68px)!important;
    line-height:.78!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
    text-align:center!important;
  }

  .site-header .brand span::after{
    content:"modèle photo"!important;
    display:block!important;
    color:#d8b98e!important;
    font-family:"Cormorant Garamond", Georgia, serif!important;
    font-size:19px!important;
    line-height:1!important;
    margin-top:8px!important;
    opacity:.9!important;
    text-align:center!important;
  }

  .site-header .brand img{
    display:block!important;
    max-width:360px!important;
    max-height:82px!important;
    object-fit:contain!important;
    margin:0 auto!important;
  }

  .site-header .v6-nav{
    display:flex!important;
    position:static!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:30px!important;
    width:100%!important;
    margin:0 auto!important;
    padding:0 0 24px!important;
    background:transparent!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    box-shadow:none!important;
    text-align:center!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  .site-header .v6-nav > a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    color:#f8f2e9!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:700!important;
    letter-spacing:.22em!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
  }

  .site-header .v6-nav > a.active,
  .site-header .v6-nav > a:hover{
    color:#d8b98e!important;
  }

  .site-header .menu-social-icons{
    grid-column:3!important;
    display:flex!important;
    position:static!important;
    transform:none!important;
    justify-self:end!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  .site-header .menu-social-icons a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    max-width:38px!important;
    max-height:38px!important;
    padding:0!important;
    margin:0!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.16)!important;
    background:rgba(255,255,255,.055)!important;
    color:#f8f2e9!important;
    text-decoration:none!important;
    font-size:0!important;
    line-height:0!important;
    letter-spacing:0!important;
    overflow:hidden!important;
  }

  .site-header .menu-social-icons a::before,
  .site-header .menu-social-icons a::after{
    content:none!important;
    display:none!important;
  }

  .site-header .menu-social-icons svg{
    display:block!important;
    width:17px!important;
    height:17px!important;
    flex:0 0 auto!important;
  }

  .site-header .menu-social-icons a span,
  .site-header .menu-social-icons a .label,
  .site-header .menu-social-icons a .text{
    display:none!important;
  }

  .site-header .v6-nav .mb-mobile-social{
    display:none!important;
  }
}


/* =========================
   MOBILE
========================= */
@media(max-width:900px){

  body{
    overflow-x:hidden!important;
  }

  body.mb-menu-open{
    overflow:hidden!important;
  }

  .site-header,
  .site-header.v6-header.unified-header{
    position:relative!important;
    z-index:1000!important;
    background:#070707!important;
    color:#f8f2e9!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    padding:16px 18px!important;
    min-height:108px!important;
    overflow:visible!important;
  }

  .site-header .v6-logo-row{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:76px!important;
    min-height:76px!important;
    margin:0!important;
    padding:0 76px 0 8px!important;
  }

  .site-header .brand{
    position:static!important;
    transform:none!important;
    display:block!important;
    width:auto!important;
    max-width:calc(100vw - 132px)!important;
    margin:0 auto!important;
    padding:0!important;
    overflow:hidden!important;
    text-align:center!important;
  }

  .site-header .brand span{
    display:block!important;
    color:#d8b98e!important;
    font-family:"Cormorant Garamond", Georgia, serif!important;
    font-size:clamp(38px,10.8vw,52px)!important;
    line-height:.82!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
    text-align:center!important;
  }

  .site-header .brand span::after{
    content:"modèle photo"!important;
    display:block!important;
    color:#d8b98e!important;
    font-family:"Cormorant Garamond", Georgia, serif!important;
    font-size:clamp(15px,4vw,21px)!important;
    line-height:1!important;
    margin-top:4px!important;
    opacity:.9!important;
    text-align:center!important;
  }

  .site-header .brand img{
    display:block!important;
    max-width:calc(100vw - 136px)!important;
    max-height:68px!important;
    object-fit:contain!important;
    margin:0 auto!important;
  }

  .mobile-menu-toggle{
    display:flex!important;
    position:absolute!important;
    right:18px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:3000!important;
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    min-height:54px!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    background:rgba(255,255,255,.09)!important;
    backdrop-filter:blur(10px)!important;
    padding:0!important;
    margin:0!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:5px!important;
    cursor:pointer!important;
    overflow:hidden!important;
  }

  .mobile-menu-toggle span{
    display:block!important;
    width:24px!important;
    height:2px!important;
    min-height:2px!important;
    max-height:2px!important;
    padding:0!important;
    margin:0!important;
    border-radius:999px!important;
    background:#f8f2e9!important;
    opacity:1!important;
    transform:none!important;
    box-shadow:none!important;
    text-indent:-9999px!important;
    overflow:hidden!important;
    transition:transform .22s ease, opacity .22s ease!important;
  }

  .mobile-menu-toggle span::before,
  .mobile-menu-toggle span::after{
    content:none!important;
    display:none!important;
  }

  body.mb-menu-open .mobile-menu-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg)!important;
  }

  body.mb-menu-open .mobile-menu-toggle span:nth-child(2){
    opacity:0!important;
  }

  body.mb-menu-open .mobile-menu-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg)!important;
  }

  body:not(.mb-menu-open) .site-header .v6-nav{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  .site-header > .menu-social-icons{
    display:none!important;
  }

  body.mb-menu-open .site-header .v6-nav{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:108px!important;
    z-index:2500!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100vw!important;
    max-height:calc(100svh - 108px)!important;
    overflow-y:auto!important;
    margin:0!important;
    padding:26px 42px 30px!important;
    background:#070707!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 32px 70px rgba(0,0,0,.68)!important;
    text-align:center!important;
  }

  body.mb-menu-open .site-header .v6-nav > a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:680px!important;
    padding:16px 0!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    color:#f8f2e9!important;
    font-size:clamp(22px,5.8vw,29px)!important;
    line-height:1!important;
    font-weight:500!important;
    letter-spacing:.24em!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
  }

  body.mb-menu-open .site-header .v6-nav > a.active{
    color:#d8b98e!important;
  }

  body.mb-menu-open .site-header .v6-nav > a:last-of-type{
    border-bottom:0!important;
  }

  body.mb-menu-open .site-header .v6-nav .mb-mobile-social{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:18px!important;
    width:100%!important;
    max-width:680px!important;
    margin:22px auto 0!important;
    padding:8px 0 0!important;
    background:transparent!important;
    border:0!important;
  }

  body.mb-menu-open .site-header .v6-nav .mb-mobile-social a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
    max-width:52px!important;
    max-height:52px!important;
    padding:0!important;
    margin:0!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.16)!important;
    background:rgba(255,255,255,.06)!important;
    color:#f8f2e9!important;
    text-decoration:none!important;
    font-size:0!important;
    line-height:0!important;
    letter-spacing:0!important;
    overflow:hidden!important;
  }

  body.mb-menu-open .site-header .v6-nav .mb-mobile-social a::before,
  body.mb-menu-open .site-header .v6-nav .mb-mobile-social a::after{
    content:none!important;
    display:none!important;
  }

  body.mb-menu-open .site-header .v6-nav .mb-mobile-social svg{
    display:block!important;
    width:22px!important;
    height:22px!important;
    flex:0 0 auto!important;
  }

  body.mb-menu-open::after{
    content:"";
    position:fixed;
    inset:0;
    z-index:900;
    background:rgba(0,0,0,.45);
    pointer-events:none;
  }
}

@media(max-width:430px){
  .site-header,
  .site-header.v6-header.unified-header{
    min-height:102px!important;
    padding:14px 18px!important;
  }

  .site-header .v6-logo-row{
    height:74px!important;
    min-height:74px!important;
  }

  .site-header .brand span{
    font-size:clamp(36px,10.5vw,49px)!important;
  }

  .mobile-menu-toggle{
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
  }

  body.mb-menu-open .site-header .v6-nav{
    top:102px!important;
    max-height:calc(100svh - 102px)!important;
    padding:24px 42px 28px!important;
  }

  body.mb-menu-open .site-header .v6-nav > a{
    font-size:23px!important;
    padding:15px 0!important;
  }

  body.mb-menu-open .site-header .v6-nav .mb-mobile-social{
    margin-top:18px!important;
  }
}
