@import url('tokens/fonts.css');
@import url('tokens/colors.css');
@import url('tokens/typography.css');
@import url('tokens/spacing.css');
@import url('tokens/radius.css');
@import url('tokens/shadows.css');

html{overflow-x:hidden}

/* Site header + mobile hamburger nav */
.lf-header{display:flex;align-items:center;justify-content:space-between;padding:28px 64px;background:#F8F7F4;border-bottom:1px solid var(--border-default);position:relative;z-index:1000}
.lf-header-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:16px;position:relative;z-index:1001}
.lf-nav-desktop{display:flex;gap:32px;align-items:center}
.lf-nav-toggle-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.lf-nav-toggle-btn{display:none;align-items:center;justify-content:center;width:44px;height:44px;margin:-10px;border-radius:var(--radius-md);cursor:pointer;background:transparent;color:var(--ink);flex-shrink:0;-webkit-tap-highlight-color:transparent}
.lf-nav-toggle-btn:hover{background:var(--surface-sunken)}
.lf-nav-icon-close{display:none}
.lf-nav-backdrop{display:none;position:fixed;inset:0;background:rgba(20,18,15,0.45);z-index:998;border:none;padding:0;cursor:pointer;opacity:0;transition:opacity 0.25s ease}
.lf-nav-mobile-panel{display:none;position:fixed;top:0;right:0;bottom:0;width:min(320px,84vw);max-width:84vw;background:var(--surface-page,#fff);z-index:999;flex-direction:column;gap:2px;padding:100px 24px 32px;box-shadow:-12px 0 32px rgba(0,0,0,0.14);transform:translateX(100%);transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);overflow-y:auto;pointer-events:none}
.lf-nav-mobile-panel a,.lf-nav-mobile-panel label{display:flex;align-items:center;min-height:48px;padding:10px 4px;font-size:17px;font-weight:500;color:var(--text-secondary);text-decoration:none;border-bottom:1px solid var(--border-default);cursor:pointer}
.lf-nav-mobile-panel .lf-cta-btn{justify-content:center;margin-top:20px;border-bottom:none;min-height:48px;color:var(--paper)}
.lf-footer-link{display:inline-block;padding:14px 0;margin:-14px 0}

@media (max-width:860px){
  .lf-header{padding:18px 20px}
  .lf-nav-desktop{display:none}
  .lf-nav-toggle-btn{display:inline-flex}
  .lf-nav-mobile-panel{display:flex}
  .lf-nav-toggle-input:checked ~ .lf-header-row .lf-nav-toggle-btn .lf-nav-icon-open{display:none}
  .lf-nav-toggle-input:checked ~ .lf-header-row .lf-nav-toggle-btn .lf-nav-icon-close{display:block}
  .lf-nav-toggle-input:checked ~ .lf-nav-backdrop{display:block;opacity:1}
  .lf-nav-toggle-input:checked ~ .lf-nav-mobile-panel{transform:translateX(0);pointer-events:auto}
}
@media (prefers-reduced-motion: reduce){
  .lf-nav-mobile-panel,.lf-nav-backdrop{transition:none}
}
