/* ==========================================================================
   Blog Essential Styles
   Consolidated CSS variables, typography, and utilities needed for blog pages
   ========================================================================== */

/* Import Material Icons from Google Fonts */
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');

/* CSS Variables - Only what's needed for blog */
:root {
    /* Colors */
    --primary-green: #00B96B;
    --primary-green-hover: #00A859;
    --primary-green-dark: #008B4F;
    --bg-white: #FFFFFF;
    --bg-gray: #F5F5F5;
    --bg-light-gray: #FAFAFA;
    --text-dark: #212121;
    --text-gray: #6c757d;
    --border-dark: #757575;
    --border-gray: #BDBDBD;
    --border-light: #E5E5E5;
    --border-lighter: #EEEEEE;
    --color-white: #FFFFFF;

    /* Typography */
    --font-family: 'Roboto', sans-serif;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    /* Spacing */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing-md: 16px;
    --spacing-lg: 24px;
    --spacing-xl: 32px;
    --spacing-xxl: 48px;
    --container-padding-lg: 64px;
    --container-padding-md: 40px;

    /* Border Radius */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 16px;
    --radius-xl: 24px;

    /* Shadows */
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.1);

    /* Transitions */
    --transition-fast: 0.2s ease;
    --transition-base: 0.3s ease;

    /* Container Widths */
    --container-width-lg: 1328px;
    --container-width-md: 978px;
}

/* Typography Classes - Only what's used in blog */
.h1 {
    font-size: 54px;
    font-weight: 700;
    line-height: 1.2;
    font-family: 'Roboto', sans-serif;
}

.h2 {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.2;
    font-family: 'Roboto', sans-serif;
}

.h5 {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    font-family: 'Roboto', sans-serif;
}

.body-1 {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;
    font-family: 'Roboto', sans-serif;
}

.body-4 {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    font-family: 'Roboto', sans-serif;
}

/* Responsive Typography */
@media screen and (min-width: 600px) and (max-width: 1279px) {
    .h1 { font-size: 44px; }
    .h2 { font-size: 28px; }
    .h5 { font-size: 16px; }
    .body-1 { font-size: 18px; }
    .body-4 { font-size: 13px; }
}

@media screen and (max-width: 959px) {
    .h1 { font-size: 28px; }
    .h2 { font-size: 20px; }
    .h5 { font-size: 14px; }
    .body-1 { font-size: 16px !important; }
    .body-4 { font-size: 12px !important; }
}

/* Material Icons */
.material-icons {
    font-family: 'Material Icons';
    font-weight: 200 !important;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: 'liga';
}

/* Container */
.main-container {
    margin: 0 auto;
    padding: 0 var(--container-padding-lg);
    text-align: center;
    max-width: var(--container-width-lg);
}

/* Responsive Container Padding */
@media screen and (min-width: 960px) and (max-width: 1279px) {
    .main-container {
        padding: 0 var(--container-padding-md);
        max-width: var(--container-width-md);
    }
}

@media (max-width: 959px) {
    .main-container {
        padding: 0 30px;
    }
}

@media (max-width: 599px) {
    .main-container {
        padding: 0 16px;
    }
}

/* Text Utilities */
.text-gray {
    color: var(--text-gray) !important;
}
