/* GreenHabit Global Styles - Exact Wix Brand Match */

/* Import Fonts */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900&display=swap');

/* Global Body Styles */
body {
    font-family: 'Avenir Light', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif !important;
    font-weight: 300 !important;
    color: #052812 !important;
    background: #FFFAF1 !important;
    line-height: 1.6 !important;
    font-size: 19px !important;
}

/* All Headings - Exact Typography Specifications with Character Spacing */
h1, h1.entry-title {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    color: #052812 !important;
    font-size: 106px !important;
    line-height: 1.0 !important;
    letter-spacing: -0.03em !important;
}

h2 {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    color: #052812 !important;
    font-size: 79px !important;
    line-height: 1.0 !important;
    letter-spacing: -0.02em !important;
}

h3 {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    color: #052812 !important;
    font-size: 55px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
}

h4 {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    color: #052812 !important;
    font-size: 37px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
}

h5 {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    color: #052812 !important;
    font-size: 25px !important;
    line-height: 1.4 !important;
    letter-spacing: -0.03em !important;
}

h6 {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    color: #052812 !important;
    font-size: 20px !important;
    line-height: 1.4 !important;
    letter-spacing: -0.01em !important;
}

.site-title,
.widget-title {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    color: #052812 !important;
}

/* Main Content Areas */
.site-content,
.content-area,
.entry-content,
.page-content {
    background: #FFFAF1 !important;
    color: #052812 !important;
}

/* Paragraph Typography Specifications with Character and Line Spacing */
p, .entry-content p {
    color: #052812 !important;
    font-family: 'Avenir Light', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif !important;
    font-weight: 300 !important;
    font-size: 19px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.01em !important;
}

/* Paragraph Size Variations */
.paragraph-large, .p1 {
    font-size: 19px !important;
    letter-spacing: -0.01em !important;
    line-height: 1.3 !important;
}

.paragraph-medium, .p2 {
    font-size: 17px !important;
    letter-spacing: 0 !important;
    line-height: 1.5 !important;
}

.paragraph-small, .p3 {
    font-size: 15px !important;
    letter-spacing: 0 !important;
    line-height: 1.3 !important;
}

/* Secondary Text */
.secondary-text,
.meta-text,
.entry-meta,
small {
    color: #052812 !important;
    font-size: 17px !important;
}

/* Subtitles */
.subtitle,
.hero-tagline {
    color: #052812 !important;
    font-size: 17px !important;
}

/* Header Styles */
.site-header {
    background: #FFFAF1 !important;
    border-bottom: 1px solid #052812 !important;
}

.site-title a {
    color: #052812 !important;
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
}

/* Navigation */
.main-navigation a,
.menu-toggle,
nav a {
    color: #052812 !important;
    font-weight: 400 !important;
}

.main-navigation a:hover,
nav a:hover {
    color: #445D4A !important;
}

/* Lines and Dividers */
hr,
.divider,
.separator {
    border-color: #052812 !important;
    background-color: #052812 !important;
}

/* Links and Actions */
a {
    color: #445D4A !important;
    text-decoration: none !important;
}

a:hover {
    color: #24582A !important;
    text-decoration: underline !important;
}

/* Primary Buttons */
.button,
.btn,
.btn-primary,
input[type="submit"],
button,
.wp-block-button__link,
.cta-button {
    background: #24582A !important;
    color: #FFFAF1 !important;
    border: 1px solid #24582A !important;
    padding: 12px 24px !important;
    border-radius: 5px !important;
    font-weight: 400 !important;
    font-family: 'Avenir Light', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif !important;
    text-decoration: none !important;
    transition: all 0.3s !important;
}

.button:hover,
.btn:hover,
.btn-primary:hover,
input[type="submit"]:hover,
button:hover,
.wp-block-button__link:hover,
.cta-button:hover {
    background: #445D4A !important;
    color: #FFFAF1 !important;
    border-color: #445D4A !important;
}

/* Secondary Buttons */
.btn-secondary,
.button-secondary {
    background: #FFFAF1 !important;
    color: #052812 !important;
    border: 1px solid #FFFAF1 !important;
    padding: 12px 24px !important;
    border-radius: 5px !important;
    font-weight: 400 !important;
    font-family: 'Avenir Light', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif !important;
    text-decoration: none !important;
    transition: all 0.3s !important;
}

.btn-secondary:hover,
.button-secondary:hover {
    background: #D4E9CF !important;
    color: #052812 !important;
    border-color: #D4E9CF !important;
}

/* Sidebar & Widgets */
.widget-area,
.sidebar {
    background: #FFFAF1 !important;
}

.widget {
    background: #D4E9CF !important;
    padding: 20px !important;
    margin-bottom: 20px !important;
    border-radius: 10px !important;
    border: 1px solid #052812 !important;
}

/* Footer */
.site-footer {
    background: #052812 !important;
    color: #FFFAF1 !important;
}

.site-footer a {
    color: #445D4A !important;
}

.site-footer a:hover {
    color: #FFFAF1 !important;
}

.site-footer h1, .site-footer h2, .site-footer h3, 
.site-footer h4, .site-footer h5, .site-footer h6 {
    color: #FFFAF1 !important;
}

/* Blog Post Specific */
.entry-header {
    background: #FFFAF1 !important;
}

.entry-title {
    color: #24582A !important;
}

.entry-meta,
.entry-meta a {
    color: #17371A !important;
}

/* Blockquotes */
blockquote {
    background: #D4E9CF !important;
    border-left: 4px solid #24582A !important;
    padding: 20px !important;
    margin: 20px 0 !important;
    color: #052812 !important;
}

/* Forms */
input[type="text"],
input[type="email"],
input[type="password"],
textarea,
select {
    background: #FFFAF1 !important;
    color: #052812 !important;
    border: 1px solid #D4E9CF !important;
    padding: 10px !important;
    border-radius: 5px !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus {
    border-color: #24582A !important;
    outline: none !important;
}

/* Tables */
table {
    background: #FFFAF1 !important;
    border: 1px solid #D4E9CF !important;
}

th {
    background: #D4E9CF !important;
    color: #052812 !important;
}

td {
    color: #052812 !important;
    border-bottom: 1px solid #D4E9CF !important;
}

/* Container Overrides */
.container,
.site-container,
.grid-container {
    background: #FFFAF1 !important;
}

/* WordPress Blocks */
.wp-block-group {
    background: #FFFAF1 !important;
}

.wp-block-quote {
    background: #D4E9CF !important;
    border-left: 4px solid #24582A !important;
    padding: 20px !important;
}

/* Comments */
.comments-area {
    background: #FFFAF1 !important;
}

.comment-body {
    background: #D4E9CF !important;
    padding: 15px !important;
    margin: 10px 0 !important;
    border-radius: 5px !important;
}

/* Pagination */
.pagination a,
.page-numbers {
    background: #24582A !important;
    color: #FFFAF1 !important;
    padding: 8px 12px !important;
    margin: 0 2px !important;
    border-radius: 3px !important;
}

.pagination a:hover,
.page-numbers:hover {
    background: #17371A !important;
}

/* Search */
.search-form input[type="search"] {
    background: #FFFAF1 !important;
    color: #052812 !important;
    border: 1px solid #D4E9CF !important;
}

/* Mobile Responsive Typography Adjustments */
@media (max-width: 768px) {
    body {
        font-size: 17px !important;
    }
    
    h1 {
        font-size: 53px !important; /* 50% of desktop size */
    }
    
    h2 {
        font-size: 39px !important; /* 50% of desktop size */
    }
    
    h3 {
        font-size: 27px !important; /* 50% of desktop size */
    }
    
    h4 {
        font-size: 24px !important;
    }
    
    h5 {
        font-size: 20px !important;
    }
    
    h6 {
        font-size: 18px !important;
    }
    
    .paragraph-large, .p1 {
        font-size: 17px !important;
    }
    
    .paragraph-medium, .p2 {
        font-size: 15px !important;
    }
    
    .paragraph-small, .p3 {
        font-size: 14px !important;
    }
}

@media (max-width: 480px) {
    h1 {
        font-size: 42px !important; /* Even smaller for very small screens */
    }
    
    h2 {
        font-size: 32px !important;
    }
    
    h3 {
        font-size: 22px !important;
    }
}/* Single Post Styles - GreenHabit */

/* Ensure proper spacing for single posts */
.single-post .entry-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 3rem 20px;
}

.single-post .entry-header {
    background: #D4E9CF;
    padding: 4rem 0;
    text-align: center;
    margin-bottom: 3rem;
}

.single-post .entry-title {
    font-family: 'Fraunces', serif !important;
    font-optical-sizing: auto !important;
    font-weight: 300 !important;
    font-size: 79px !important;
    color: #052812 !important;
    line-height: 1.0 !important;
    letter-spacing: -0.02em !important;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.single-post .entry-meta {
    font-size: 17px !important;
    color: #052812 !important;
    margin-top: 1rem;
}

.single-post .entry-content p {
    font-size: 19px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.01em !important;
    margin-bottom: 1.5rem !important;
}

.single-post .entry-content h2 {
    margin-top: 3rem !important;
    margin-bottom: 1.5rem !important;
}

.single-post .entry-content h3 {
    margin-top: 2.5rem !important;
    margin-bottom: 1rem !important;
}

.single-post .entry-content ul,
.single-post .entry-content ol {
    margin: 1.5rem 0 !important;
    padding-left: 30px !important;
}

.single-post .entry-content li {
    font-size: 19px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.01em !important;
    margin-bottom: 0.75rem !important;
}

/* Post navigation */
.post-navigation {
    background: #D4E9CF;
    padding: 2rem;
    margin-top: 3rem;
    border-radius: 10px;
    border: 1px solid #052812;
}

.post-navigation a {
    color: #445D4A !important;
    text-decoration: none !important;
    font-weight: 500;
}

.post-navigation a:hover {
    color: #24582A !important;
    text-decoration: underline !important;
}

/* Comments section */
.comments-area {
    background: #FFFAF1;
    padding: 2rem;
    margin-top: 3rem;
    border-top: 1px solid #052812;
}

@media (max-width: 768px) {
    .single-post .entry-title {
        font-size: 39px !important;
    }
    
    .single-post .entry-content {
        padding: 2rem 15px;
    }
}