/* Shared Milo Menu Styles */
:root {
    /* Font standardization */
    --primary-font: 'Inter', sans-serif;
    --display-font: 'Bungee', cursive;
    --accent-font: 'Baloo 2', cursive;
    
    /* Font size standardization */
    --font-size-xs: 0.75rem;    /* 12px */
    --font-size-sm: 0.875rem;   /* 14px */
    --font-size-base: 1rem;     /* 16px */
    --font-size-md: 1.125rem;   /* 18px */
    --font-size-lg: 1.25rem;    /* 20px */
    --font-size-xl: 1.5rem;     /* 24px */
    --font-size-2xl: 1.75rem;   /* 28px */
    --font-size-3xl: 2rem;      /* 32px */
    --font-size-4xl: 2.5rem;    /* 40px */
    --font-size-5xl: 3rem;      /* 48px */
    --font-size-title: 18rem;   /* For the main Milo title */
}
/* Prevent FOUC for logo */
.logo-container {
    opacity: 0;
    transition: opacity 0.5s ease;
    /* Ensure logo position is fixed from the start */
    position: static;
    top: auto;
    right: auto;
    left: auto;
    margin: 0;
    visibility: hidden;
}

.logo-container.visible {
    opacity: 1;
    visibility: visible;
}

/* Ensure the MILO wordmark uses the correct font and size on all pages */
.logo-container .logo,
.logo-link .logo {
    font-family: 'Bungee', cursive;
    font-size: 48px;
    line-height: 1;
    color: #281B04;
    margin: 0;
    text-decoration: none;
}

/* button */
.milo-menu-toggle{
  position:fixed;
  top:24px;
  left:24px;
  width:32px;height:24px;
  z-index:1100;
  cursor:pointer;
  display:flex;flex-direction:column;justify-content:space-between;
  background:none;border:none;padding:0;transition:transform .3s ease;
}
.milo-menu-toggle span{display:block;height:3px;width:100%;background:#281B04;border-radius:2px;transition:all .3s ease;}
body.milo-menu-open .milo-menu-toggle span:nth-child(1){transform:translateY(10px) rotate(45deg);} 
body.milo-menu-open .milo-menu-toggle span:nth-child(2){opacity:0;} 
body.milo-menu-open .milo-menu-toggle span:nth-child(3){transform:translateY(-10px) rotate(-45deg);} 

/* overlay */
.milo-menu__overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:1090;
}
body.milo-menu-open #miloMenuOverlay{opacity:1;pointer-events:auto;}

/* menu */
.milo-menu{
  position:fixed;inset:0 auto 0 0;width:280px;max-width:80vw;height:100vh;display:flex;flex-direction:column;padding:120px 40px 60px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);transform:translateX(-100%);transition:transform .35s ease;box-shadow:5px 0 20px rgba(0,0,0,.15);z-index:1100;
}
body.milo-menu-open #miloMenu{transform:translateX(0);}

.milo-menu__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px;}
.milo-menu__links a{font-family:var(--accent-font);font-weight:700;font-size:var(--font-size-lg);color:#333;text-decoration:none;transition:opacity .3s;}
.milo-menu__links a:hover{opacity:.7;color:#281B04;}

.milo-menu__social{margin-top:40px;display:flex;flex-direction:column;gap:20px;}
.milo-menu__social a{font-family:'Baloo 2',cursive;font-size:18px;font-weight:700;color:#333;text-decoration:none;opacity:.9;transition:opacity .3s;}
.milo-menu__social a:hover{opacity:1;color:#281B04;}

.milo-menu__terms{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:15px;}
.milo-menu__terms a{font-family:'Baloo 2',cursive;font-size:18px;font-weight:700;color:#333;text-decoration:none;opacity:.9;transition:opacity .3s;}
.milo-menu__terms a:hover{opacity:1;color:#281B04;}

.milo-menu__footer{margin-top:auto;display:flex;gap:20px;flex-wrap:wrap;justify-content:center;font-family:'Baloo 2',cursive;font-size:14px;font-weight:700;}
.milo-menu__footer a{color:#333;text-decoration:none;}
.milo-menu__footer a:hover{opacity:.7;}

@media(max-width:480px){
    .milo-menu{padding:100px 24px 40px;width:240px;}
    
    /* Move footer links higher up on mobile */
    .milo-menu__footer {
        margin-top: 20px;
        flex-direction: column;
        gap: 15px;
        justify-content: flex-start;
        font-size: 16px;
    }
    
    .milo-menu__social {
        margin-top: 20px;
    }
}

header.milo-header {
  display: flex;
  align-items: center;
  gap: 18px;
  position: fixed; /* keep header from affecting layout flow */
  top: 0;
  left: 0;
  right: 0;
  padding: 18px 0 0 72px; /* push logo to the right of fixed hamburger */
  background: transparent;
  z-index: 1200;
}
.milo-menu-toggle{position:fixed;}
.logo-container{position:static;top:auto;right:auto;left:auto;margin:0;}


/* Legacy menu rule removed - sidebar should be visible */
