/* Kadence's configured mobile header breakpoint is 1024px.
   Keep every override inside this query; desktop navigation is unchanged.
   Native drawer visibility, submenu toggles and animations are not replaced. */
.rh-mobile-header-name{display:none}
@media (max-width:1024px){
  /* Use only the existing horizontal gap. No header height, logo size or
     vertical padding changes are needed for these two small text lines. */
  #mobile-header .site-main-header-inner-wrap.rh-mobile-brand-row{
    grid-template-columns:auto minmax(0,1fr) auto;column-gap:10px;
  }
  #mobile-header .rh-mobile-header-name{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    align-self:center;justify-self:stretch;min-width:0;margin:0;padding:0;
    color:#123D32;line-height:1.15;text-align:center;gap:3px;
    container-type:inline-size;
  }
  #mobile-header .rh-mobile-header-name>span{display:block;white-space:nowrap}
  #mobile-header .rh-mobile-brand-name,
  #mobile-drawer .rh-mobile-brand-name{
    display:block;white-space:nowrap;font-family:Questrial,Karla,Arial,sans-serif;
    font-size:clamp(9px,3.05vw,18px);font-weight:400;line-height:1.15;letter-spacing:.01em;
  }
  #mobile-header .rh-mobile-brand-descriptor,
  #mobile-drawer .rh-mobile-brand-descriptor{
    display:block;white-space:nowrap;font-family:Cormorant,Georgia,serif;
    font-size:clamp(8px,2.15vw,12px);font-weight:500;line-height:1.1;letter-spacing:.06em;
  }
  @supports (font-size:1cqw){
    /* Size from the actual gap between logo and menu, including small phones. */
    #mobile-header .rh-mobile-brand-name,
    #mobile-drawer .rh-mobile-brand-name{font-size:clamp(9px,6cqw,18px)}
    #mobile-header .rh-mobile-brand-descriptor,
    #mobile-drawer .rh-mobile-brand-descriptor{font-size:clamp(8px,4.1cqw,12px)}
  }
  #mobile-header #mobile-toggle{
    box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;
    width:46px;height:46px;min-width:46px;min-height:46px;padding:0!important;
    border:1px solid transparent;border-radius:4px;background:transparent!important;
    color:#123D32!important;box-shadow:none!important;line-height:1;
    -webkit-tap-highlight-color:transparent;
  }
  #mobile-header #mobile-toggle .menu-toggle-icon{display:flex;align-items:center;justify-content:center;font-size:26px;line-height:1}
  #mobile-header #mobile-toggle svg{display:block;width:26px;height:26px}

  #mobile-drawer .drawer-overlay{background:rgba(6,15,12,.72)}
  #mobile-drawer .drawer-inner{
    box-sizing:border-box;display:flex;flex-direction:column;
    width:min(380px,calc(100vw - 24px));max-width:100%;
    height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-height:0;
    overflow:hidden;background:#F7F3EA;color:#24211D;
    box-shadow:-12px 0 40px rgba(6,15,12,.2);
  }
  #mobile-drawer .drawer-header{
    box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;
    min-height:76px;margin:0;padding:16px 18px;
    border-bottom:1px solid #DDD4C3;background:#F7F3EA;color:#123D32;
  }
  #mobile-drawer .drawer-header .rh-mobile-drawer-brand{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    flex:1 1 auto;min-width:0;margin:0;padding:0;gap:3px;container-type:inline-size;
    color:#123D32;line-height:1.15;letter-spacing:0;text-align:center;
  }
  #mobile-drawer .drawer-header .menu-toggle-close{
    box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;
    flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;
    margin:0;padding:0!important;border:1px solid #D8CBAD;border-radius:50%;
    background:#F7F3EA!important;color:#123D32!important;box-shadow:none;
    font-family:Karla,Arial,sans-serif;line-height:1;cursor:pointer;
  }
  #mobile-drawer .menu-toggle-close .toggle-close-bar{
    box-sizing:border-box;position:absolute;display:block;
    width:20px;height:2px;left:calc(50% - 10px);top:calc(50% - 1px);
    margin:0;padding:0;background:currentColor;border:0;border-radius:1px;
  }
  #mobile-drawer .menu-toggle-close .toggle-close-bar:first-child{transform:rotate(45deg)}
  #mobile-drawer .menu-toggle-close .toggle-close-bar:last-child{transform:rotate(-45deg)}
  #mobile-drawer .drawer-content{
    box-sizing:border-box;flex:1 1 auto;min-width:0;min-height:0;
    overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain;scrollbar-width:thin;
    padding:10px 14px 24px;padding-bottom:max(24px,env(safe-area-inset-bottom));
    background:#F7F3EA;color:#24211D;
  }
  #mobile-drawer #mobile-site-navigation{width:100%;font-family:Karla,Arial,sans-serif;color:#24211D}
  #mobile-drawer #mobile-menu,#mobile-drawer #mobile-menu ul{list-style:none}
  #mobile-drawer #mobile-menu{margin:0;padding:0}
  #mobile-drawer #mobile-menu li{font-family:Karla,Arial,sans-serif;font-size:18px;line-height:1.5;font-weight:500}
  #mobile-drawer #mobile-menu>li{margin:0;border-bottom:1px solid #DDD4C3}
  #mobile-drawer #mobile-menu a{
    box-sizing:border-box;display:flex;align-items:center;min-width:0;min-height:54px;
    margin:0;padding:14px 14px;font-family:Karla,Arial,sans-serif;
    font-size:18px;font-weight:500;line-height:1.45;letter-spacing:0;text-transform:none;
    white-space:normal;overflow-wrap:break-word;text-decoration:none;
    color:#24211D!important;background:transparent!important;border:0;border-radius:3px;
    box-shadow:none!important;-webkit-tap-highlight-color:transparent;
  }
  #mobile-drawer #mobile-menu .drawer-nav-drop-wrap{display:flex;align-items:stretch;margin:0;border:0;color:#24211D!important;background:transparent!important;box-shadow:none!important}
  #mobile-drawer #mobile-menu .drawer-nav-drop-wrap>a{flex:1 1 auto}
  #mobile-drawer #mobile-menu .drawer-sub-toggle{
    box-sizing:border-box;display:flex;align-items:center;justify-content:center;
    align-self:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;
    margin:0 6px 0 0;padding:0!important;border:0;border-radius:4px;
    background:transparent!important;color:#123D32!important;box-shadow:none;
    font-family:Karla,Arial,sans-serif;line-height:1;cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  #mobile-drawer #mobile-menu .drawer-sub-toggle svg{display:block;width:22px;height:22px}
  /* A current page, open submenu or retained pointer focus is not a press.
     Keep those states visually neutral. Only the native chevron indicates
     expansion; keyboard focus has a separate visible outline below. */
  #mobile-drawer #mobile-menu a:visited,
  #mobile-drawer #mobile-menu a:focus,
  #mobile-drawer #mobile-menu a:active,
  #mobile-drawer #mobile-menu .current-menu-item>a,
  #mobile-drawer #mobile-menu .current-menu-ancestor>a,
  #mobile-drawer #mobile-menu .current-menu-parent>a,
  #mobile-drawer #mobile-menu .current_page_item>a,
  #mobile-drawer #mobile-menu .current_page_ancestor>a,
  #mobile-drawer #mobile-menu .current_page_parent>a,
  #mobile-drawer #mobile-menu .current-menu-item>.drawer-nav-drop-wrap>a,
  #mobile-drawer #mobile-menu .current-menu-ancestor>.drawer-nav-drop-wrap>a,
  #mobile-drawer #mobile-menu .current-menu-parent>.drawer-nav-drop-wrap>a{
    background:transparent!important;color:#24211D!important;box-shadow:none!important;
  }
  #mobile-drawer #mobile-menu .sub-menu{
    margin:0 8px 12px 14px;padding:4px 0 4px 10px;
    border-left:2px solid #B08A4A;background:#EFE8DB;border-radius:0 3px 3px 0;
  }
  #mobile-drawer #mobile-menu .sub-menu li{margin:0;border:0;font-size:16px}
  #mobile-drawer #mobile-menu .sub-menu a{min-height:48px;padding:12px 12px;font-size:16px;font-weight:400;line-height:1.5}
  #mobile-drawer .rh-mobile-social{margin:16px 0 0;padding:0}
  #mobile-drawer .rh-mobile-instagram,
  #mobile-drawer .rh-mobile-instagram:visited,
  #mobile-drawer .rh-mobile-instagram:focus,
  #mobile-drawer .rh-mobile-instagram:active{
    box-sizing:border-box;display:inline-flex;align-items:center;gap:10px;min-height:48px;
    padding:12px 14px;border:0;border-radius:3px;background:transparent!important;
    color:#123D32!important;box-shadow:none!important;text-decoration:none;
    font-family:Karla,Arial,sans-serif;font-size:16px;font-weight:500;line-height:1.5;
    -webkit-tap-highlight-color:transparent;
  }
  #mobile-drawer .rh-mobile-instagram svg{display:block;flex:none}
  #mobile-header #mobile-toggle:focus,
  #mobile-header #mobile-toggle:active{background:transparent!important;color:#123D32!important;box-shadow:none!important}
  #mobile-drawer button:focus,
  #mobile-drawer button:active{box-shadow:none!important}
  #mobile-header #mobile-toggle:focus:not(:focus-visible),
  #mobile-drawer a:focus:not(:focus-visible),
  #mobile-drawer button:focus:not(:focus-visible){outline:none!important}
  #mobile-header #mobile-toggle:focus-visible,
  #mobile-drawer a:focus-visible,
  #mobile-drawer button:focus-visible{outline:3px solid #B08A4A!important;outline-offset:2px;box-shadow:none!important}
}
/* Hover belongs to a hover-capable fine pointer, not a phone's retained tap.
   Target the actual control rather than highlighting its entire parent row. */
@media (max-width:1024px) and (hover:hover) and (pointer:fine){
  #mobile-header #mobile-toggle:hover,
  #mobile-drawer .drawer-header .menu-toggle-close:hover,
  #mobile-drawer #mobile-menu a:hover,
  #mobile-drawer #mobile-menu .drawer-nav-drop-wrap>a:hover,
  #mobile-drawer #mobile-menu .drawer-sub-toggle:hover,
  #mobile-drawer .rh-mobile-instagram:hover{background:#E9DFCF!important;color:#123D32!important}
}
@media (max-width:1024px) and (prefers-reduced-motion:reduce){
  #mobile-header #mobile-toggle,
  #mobile-drawer a,
  #mobile-drawer button{transition:none}
}
