/* HM2 chrome — left dock + top bar */
.hm2-app{min-height:100vh}
.hm2-dock{
  position:fixed;inset:0 auto 0 0;width:88px;background:#1C1917;color:#fff;
  display:flex;flex-direction:column;align-items:center;padding:1rem .65rem;z-index:100;border-right:3px solid #C2410C;
}
.hm2-dock-brand{text-decoration:none;color:#fff;text-align:center;margin-bottom:1.5rem}
.hm2-dock-mark{display:block;width:44px;height:44px;line-height:44px;background:#C2410C;font-family:'Oswald',sans-serif;font-weight:700;font-size:1rem}
.hm2-dock-word{display:block;font-size:.65rem;letter-spacing:.2em;margin-top:.35rem;color:#94A3B8}
.hm2-dock-nav{flex:1;display:flex;flex-direction:column;gap:.35rem;width:100%}
.hm2-dock-link{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.55rem .25rem;
  text-decoration:none;color:rgba(255,255,255,.72);border-left:3px solid transparent;font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;
}
.hm2-dock-link:hover,.hm2-dock-link.is-active{color:#fff;border-left-color:#C2410C;background:rgba(255,255,255,.06)}
.hm2-dock-icon{font-size:1.1rem;line-height:1}
.hm2-dock-badge{position:absolute;top:2px;right:4px;background:#C2410C;color:#fff;font-style:normal;font-size:.62rem;min-width:16px;height:16px;line-height:16px;text-align:center;border-radius:999px}
.hm2-dock-foot{margin-top:auto;font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;color:#64748B;text-align:center;line-height:1.5}
.hm2-shell{margin-left:88px;min-height:100vh;display:flex;flex-direction:column}
.hm2-topbar{background:#fff;border-bottom:1px solid rgba(28,25,23,.1);position:sticky;top:0;z-index:50}
.hm2-topbar-inner{display:grid;grid-template-columns:1fr minmax(220px,420px) auto;gap:1rem;align-items:center;padding:.85rem 0}
.hm2-topbar-kicker{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#64748B;font-family:'Oswald',sans-serif}
.hm2-search{display:flex;border:2px solid #1C1917}
.hm2-search input{flex:1;border:0;padding:.65rem .85rem;min-width:0;background:#fff}
.hm2-search button{border:0;background:#1C1917;color:#fff;padding:0 1rem;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}
.hm2-topbar-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;font-size:.82rem}
.hm2-topbar-mail{color:#64748B;text-decoration:none}
.hm2-topbar-cart{text-decoration:none;font-weight:700;color:#C2410C}
.hm2-main{flex:1}
.hm2-footer{background:#1C1917;color:rgba(255,255,255,.78);padding:2rem 0;margin-top:auto}
.hm2-footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1.5rem;align-items:start}
.hm2-footer-brand strong{display:block;font-family:'Oswald',sans-serif;font-size:1.1rem;letter-spacing:.04em;color:#fff;margin-bottom:.5rem}
.hm2-footer-brand p{margin:0;font-size:.88rem;line-height:1.55;max-width:28rem}
.hm2-footer-links{display:flex;flex-wrap:wrap;gap:.65rem 1rem}
.hm2-footer-links a{color:rgba(255,255,255,.85);text-decoration:none;font-size:.88rem;text-transform:uppercase;letter-spacing:.04em;font-family:'Oswald',sans-serif}
.hm2-footer-meta{display:flex;flex-direction:column;gap:.35rem;font-size:.78rem;color:#94A3B8;text-align:right}
.hm2-mobile-toggle{display:none}
.hm2-mobile-sheet{display:none}
@media(max-width:960px){
  .hm2-dock{display:none}
  .hm2-shell{margin-left:0}
  .hm2-topbar-inner{grid-template-columns:1fr;gap:.75rem}
  .hm2-topbar-actions{align-items:flex-start}
  .hm2-footer-grid{grid-template-columns:1fr}
  .hm2-footer-meta{text-align:left}
  .hm2-mobile-toggle{
    display:block;position:fixed;bottom:1rem;left:1rem;z-index:120;
    background:#1C1917;color:#fff;border:0;padding:.65rem 1rem;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;
  }
  .hm2-mobile-sheet.is-open{display:block}
  .hm2-mobile-sheet{position:fixed;inset:0;z-index:130}
  .hm2-mobile-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55)}
  .hm2-mobile-panel{position:absolute;left:0;top:0;bottom:0;width:min(300px,88vw);background:#1C1917;color:#fff;padding:1rem;display:flex;flex-direction:column;gap:1rem}
  .hm2-mobile-panel header{display:flex;justify-content:space-between;align-items:center}
  .hm2-mobile-panel header button{background:none;border:0;color:#fff;font-size:1.5rem;cursor:pointer}
  .hm2-mobile-panel nav{display:grid;gap:.35rem}
  .hm2-mobile-panel nav a{color:#fff;text-decoration:none;padding:.65rem;border:1px solid rgba(255,255,255,.12);text-transform:uppercase;font-family:'Oswald',sans-serif;letter-spacing:.05em}
}
