/* v0.16.5 — stronger sticky header and a more compact, readable search/menu UI. */

:root{
  --hhmm-sticky-dark:rgba(11,18,15,.84);
  --hhmm-sticky-light:rgba(244,241,234,.96);
  --hhmm-filter-card:#f8f5ee;
  --hhmm-filter-card-alt:#f1eee6;
  --hhmm-shadow:0 18px 46px rgba(10,18,15,.10);
}

/* Desktop / global sticky header */
.header-stack-v6{
  position:sticky;
  top:0;
  z-index:90;
  isolation:isolate;
  backdrop-filter:saturate(160%) blur(12px);
  -webkit-backdrop-filter:saturate(160%) blur(12px);
}
.header-stack-v6::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:var(--hhmm-sticky-light);
  box-shadow:0 10px 28px rgba(10,18,15,.06);
}
.home-overlay .header-stack-v6::before,
.header-stack-overlay.header-stack-v6::before{
  background:linear-gradient(180deg,var(--hhmm-sticky-dark),rgba(11,18,15,.72));
}
.header-stack-v6 .contact-rail,
.header-stack-v6 .site-header-v6{
  background:transparent;
}
.header-stack-v6 .contact-rail{min-height:34px}
.header-stack-v6 .site-header-v6{position:relative}

/* Stronger desktop search hierarchy */
@media(min-width:701px){
  .search-experience-v6>section{
    padding-left:max(28px,calc((100vw - 1320px)/2));
    padding-right:max(28px,calc((100vw - 1320px)/2));
  }
  .search-experience-v6 .search-sheet-head{
    padding-bottom:14px;
  }
  .search-experience-v6 .search-sheet-body-v3{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    padding:18px 6px 10px 0;
    align-items:start;
  }
  .search-experience-v6 .search-sheet-body-v3 .search-step{
    padding:18px 18px 16px !important;
    border:1px solid rgba(23,32,29,.13);
    background:var(--hhmm-filter-card);
    box-shadow:0 1px 0 rgba(255,255,255,.6) inset;
  }
  .search-experience-v6 .search-sheet-body-v3 .search-step:nth-child(2n){
    background:var(--hhmm-filter-card-alt);
  }
  .search-experience-v6 .search-sheet-body-v3 .search-step.search-step-project-v165,
  .search-experience-v6 .search-sheet-body-v3 .search-step:last-child{
    grid-column:1 / -1;
  }
  .search-experience-v6 .search-step > span{
    font-size:9px;
    font-weight:600;
    letter-spacing:.08em;
  }
  .search-experience-v6 .search-step p{
    margin-bottom:12px;
  }
  .search-experience-v6 .search-step .choice-note{
    display:block;
    margin-top:10px;
  }
  .search-step-project-v165 .project-filter-toggle-v70{
    min-height:60px;
    padding:0 18px;
  }
  .search-step-project-v165 .project-filter-panel-v70{
    position:relative;
    z-index:8;
    box-shadow:var(--hhmm-shadow);
  }
  .search-step-project-v165 .project-filter-options-v70{
    max-height:min(42dvh,380px);
  }
  .search-step-project-v165 .project-filter-options-v70 button{
    min-height:56px;
  }
  .search-experience-v6 .search-sheet-actions-v70{
    padding-top:12px;
  }
}

/* More compact mobile menu */
@media(max-width:900px){
  .site-header .main-nav-v53{
    box-shadow:0 18px 42px rgba(10,18,15,.12);
  }
  .mobile-menu-v53{
    padding:14px 16px calc(106px + env(safe-area-inset-bottom));
  }
  .mobile-menu-intro-v53{
    display:none;
  }
  .site-header .mobile-menu-links-v53>a{
    min-height:52px;
    grid-template-columns:24px 1fr auto;
    font-size:clamp(18px,5vw,24px);
  }
  .site-header .mobile-menu-links-v53>a span{
    font-size:8px;
    letter-spacing:.08em;
  }
  .site-header .mobile-menu-links-v53>a i{
    font-size:13px;
  }
  .mobile-menu-secondary-v53{
    gap:16px 20px;
    margin-top:20px;
  }
  .mobile-menu-secondary-v53>div{
    gap:9px;
  }
  .site-header .mobile-menu-secondary-v53 a{
    font-size:12px;
    line-height:1.35;
  }
}

/* More compact mobile filters */
@media(max-width:700px){
  .search-experience-v6>section{
    padding:12px 16px 0;
    min-height:0;
    height:100dvh;
    display:grid;
    grid-template-rows:auto minmax(0,1fr) auto;
    overflow:hidden;
  }
  .search-experience-v6 .search-sheet-head{
    padding-bottom:12px;
    align-items:flex-start;
    gap:10px;
  }
  .search-experience-v6 .search-sheet-head h2{
    font-size:clamp(26px,8vw,38px);
    line-height:.96;
    max-width:8ch;
  }
  .search-experience-v6 .search-sheet-head p{
    margin:0 0 8px;
    font-size:7px;
  }
  .search-head-actions-v70{
    gap:14px;
  }
  .search-head-actions-v70>button:last-child{
    width:38px;
    height:38px;
    font-size:28px;
  }
  .search-experience-v6 .search-sheet-body-v3{
    min-height:0;
    overflow:auto;
    padding:0 0 10px;
    display:grid;
    gap:10px;
    align-content:start;
  }
  .search-experience-v6 .search-sheet-body-v3 .search-step{
    grid-template-columns:22px 1fr;
    gap:10px;
    padding:14px 0 0 !important;
    border-top:1px solid rgba(23,32,29,.14);
    background:transparent;
    box-shadow:none;
  }
  .search-experience-v6 .search-sheet-body-v3 .search-step:first-child{
    border-top:0;
    padding-top:0 !important;
  }
  .search-experience-v6 .search-step > span{
    padding-top:2px;
    font-size:7px;
  }
  .search-experience-v6 .search-step p{
    margin:0 0 10px;
    font-size:7px;
    letter-spacing:.14em;
  }
  .search-experience-v6 .choice-note{
    display:block;
    margin-top:8px;
    font-size:11px;
    line-height:1.4;
  }
  .project-filter-toggle-v70{
    min-height:48px;
    padding:0 12px;
  }
  .project-filter-toggle-v70 span{
    font-size:15px;
  }
  .project-filter-search-v70{
    height:46px;
    padding:0 12px;
  }
  .project-filter-options-v70{
    max-height:34dvh;
  }
  .project-filter-options-v70 button{
    min-height:52px;
    padding:9px 11px;
  }
  .project-filter-options-v70 button b{
    font-size:15px;
  }
  .project-filter-options-v70 button small{
    font-size:8px;
  }
  .search-sheet-actions-v70{
    width:calc(100% + 32px);
    margin:0 -16px;
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));
    gap:8px;
    grid-template-columns:.88fr 1.12fr;
  }
  .search-sheet-actions-v70>button,
  .search-sheet-actions-v70 .search-sheet-action{
    min-height:54px;
    height:auto;
    padding:14px 12px;
  }
}

@media(max-width:480px){
  .site-header .mobile-menu-links-v53>a{
    min-height:48px;
    font-size:18px;
  }
  .search-experience-v6 .search-sheet-head h2{
    font-size:24px;
  }
}
