/* ==========================================================================
   base.css — shared foundation for every GreenTop page.
   Loaded first, before any page-specific stylesheet.
   Contains: design tokens (:root), a NON-destructive box-sizing rule,
   and the base body font. It deliberately does NOT zero out all margins
   with `* { margin:0 }`, which used to force !important everywhere.
   ========================================================================== */

:root {
    --logo-blue: #2C318C;
    --primary-blue: #2C318C;
    --dark-blue: #242875;
    --light-blue: #E8EAF6;
    --accent-teal: #00BFA5;
    --accent-orange: #FF6B35;
    --dark-gray: #1A1A1A;
    --medium-gray: #666666;
    --light-gray: #F5F7FA;
    --white: #FFFFFF;
    --border-radius-xl: 40px;
    --border-radius-lg: 20px;
    --border-radius-md: 12px;
    --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.12);
    --menu-border: rgba(0, 0, 0, 0.08);
}
/* Gentle, inheritance-based box-sizing (safe: doesn't strip content margins) */
html { box-sizing: border-box; }
*, *::before, *::after { box-sizing: inherit; }

/* Base typography */
body {
    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: var(--dark-gray);
}

/* Responsive images by default */
img { max-width: 100%; height: auto; }
