/*
Theme Name: Bientitude
Template: generatepress
Version: 1.0
Description: Thème enfant GeneratePress pour Bientitude - Magazine bien-être
Author: Bientitude
*/

/* ===== VARIABLES ===== */
:root {
    --sapin: #2E3A2D;
    --lin: #F7F3EC;
    --terracotta: #C97A5C;
    --ivoire: #EDE8DF;
    --texte: #2E3A2D;
    --texte-clair: #6B7066;
    --fond: #F7F3EC;
    --fond-carte: #FDFAF6;
    --radius: 10px;
    --shadow: 0 3px 16px rgba(46,58,45,0.08);
}

/* ===== RESET & BASE ===== */
*, *::before, *::after { box-sizing: border-box; }

body {
    background-color: var(--lin) !important;
    color: var(--texte);
    font-family: 'Inter', sans-serif;
    font-size: 17px;
    line-height: 1.7;
}

/* ===== TYPOGRAPHY ===== */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Cormorant Garamond', serif;
    color: var(--sapin);
    line-height: 1.25;
    font-weight: 700;
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.5rem; }

a { color: var(--terracotta); transition: 0.25s; }
a:hover { color: var(--sapin); }

p { margin-bottom: 1.25rem; }

/* ===== NAVIGATION ===== */
.site-header { background: var(--sapin) !important; border-bottom: none; }
.main-navigation a { color: var(--ivoire) !important; font-family: 'Inter', sans-serif; font-size: 0.9rem; font-weight: 500; letter-spacing: 0.03em; }
.main-navigation a:hover,
.main-navigation .current-menu-item > a { color: var(--terracotta) !important; }
.site-title a { color: var(--ivoire) !important; font-family: 'Cormorant Garamond', serif; font-size: 1.6rem; font-weight: 700; }
.site-title a:hover { color: var(--terracotta) !important; }
.site-description { color: rgba(237,232,223,0.6); font-size: 0.8rem; }

/* Sub-menu */
.main-navigation .sub-menu { background: var(--sapin); border: 1px solid rgba(201,122,92,0.3); border-radius: 6px; box-shadow: 0 8px 24px rgba(0,0,0,0.2); }
.main-navigation .sub-menu a { border-bottom: 1px solid rgba(255,255,255,0.06); }

/* Mobile toggle */
.menu-toggle { color: var(--ivoire) !important; }

/* ===== CONTENT AREA ===== */
.content-area { background: transparent; }
.entry-content, .entry-summary { color: var(--texte); }

/* ===== FEATURED IMAGE ===== */
.post-image img, .featured-image img {
    border-radius: var(--radius);
    width: 100%;
    height: auto;
}

/* ===== SINGLE POST ===== */
.entry-title { font-size: 2.4rem; line-height: 1.2; color: var(--sapin); margin-bottom: 0.75rem; }
.entry-meta { color: var(--texte-clair); font-size: 0.85rem; font-family: 'Inter', sans-serif; margin-bottom: 2rem; }
.entry-meta a { color: var(--terracotta); }
.entry-content h2 { font-size: 1.7rem; margin-top: 2.5rem; color: var(--sapin); border-left: 3px solid var(--terracotta); padding-left: 16px; }
.entry-content h3 { font-size: 1.3rem; margin-top: 2rem; color: var(--sapin); }
.entry-content blockquote { border-left: 3px solid var(--terracotta); background: var(--ivoire); padding: 20px 24px; border-radius: 0 var(--radius) var(--radius) 0; font-style: italic; color: var(--sapin); }
.entry-content ul li::before { content: '—'; color: var(--terracotta); margin-right: 8px; }

/* ===== BLOG LIST ===== */
.post { margin-bottom: 3rem; padding-bottom: 3rem; border-bottom: 1px solid var(--ivoire); }
.post:last-child { border-bottom: none; }
.entry-header .entry-title a { color: var(--sapin); }
.entry-header .entry-title a:hover { color: var(--terracotta); }

/* ===== CATEGORY & TAG LABELS ===== */
.cat-links a, .tags-links a {
    background: var(--ivoire);
    color: var(--sapin);
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
    display: inline-block;
    margin: 2px;
}
.cat-links a:hover { background: var(--terracotta); color: white; }

/* ===== BUTTONS ===== */
.button, button, input[type="submit"] {
    background: var(--terracotta) !important;
    color: white !important;
    border: none;
    border-radius: 50px;
    padding: 10px 24px;
    font-weight: 600;
    font-family: 'Inter', sans-serif;
    transition: 0.25s;
    cursor: pointer;
}
.button:hover, button:hover, input[type="submit"]:hover {
    background: var(--sapin) !important;
    transform: translateY(-1px);
}

/* ===== WIDGETS ===== */
.widget-title { font-family: 'Cormorant Garamond', serif; font-size: 1.3rem; color: var(--sapin); border-bottom: 2px solid var(--terracotta); padding-bottom: 8px; margin-bottom: 16px; }
.widget { background: var(--fond-carte); border-radius: var(--radius); padding: 24px; box-shadow: var(--shadow); margin-bottom: 24px; }

/* ===== SIDEBAR ===== */
.sidebar .widget a { color: var(--texte); }
.sidebar .widget a:hover { color: var(--terracotta); }

/* ===== PAGINATION ===== */
.paging-navigation .nav-links a, .post-navigation .nav-previous a, .post-navigation .nav-next a {
    background: var(--ivoire);
    color: var(--sapin);
    border-radius: 50px;
    padding: 8px 20px;
    font-weight: 600;
    font-size: 0.9rem;
}
.paging-navigation .nav-links a:hover { background: var(--terracotta); color: white; }

/* ===== FOOTER ===== */
.site-footer { background: var(--sapin) !important; color: var(--ivoire); padding: 48px 0 24px; }
.site-footer a { color: var(--terracotta); }
.site-footer a:hover { color: var(--ivoire); }
.site-info { color: rgba(237,232,223,0.6); font-size: 0.82rem; }
.footer-bar { background: #1e2a1d !important; }
.footer-bar p { color: rgba(237,232,223,0.5); font-size: 0.8rem; }

/* ===== YOUTUBE EMBEDS ===== */
.wp-block-embed { margin: 2.5rem 0; width: 100%; }
.wp-block-embed__wrapper { width: 100%; }
.wp-block-embed__wrapper iframe,
.entry-content iframe {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    border: 0 !important;
    border-radius: var(--radius);
}

/* ===== IMAGES ===== */
.entry-content img { border-radius: var(--radius); max-width: 100%; height: auto; }
figure.wp-block-image { margin: 2rem 0; }
figcaption { font-size: 0.85rem; color: var(--texte-clair); text-align: center; margin-top: 8px; font-style: italic; }

/* ===== SEARCH ===== */
.search-form input[type="search"] { border: 1px solid var(--ivoire); border-radius: 50px 0 0 50px; padding: 8px 16px; font-family: 'Inter', sans-serif; background: white; }
.search-form input[type="submit"] { border-radius: 0 50px 50px 0 !important; }

/* ===== TABLE OF CONTENTS ===== */
.wp-block-table { border-collapse: collapse; width: 100%; }
.wp-block-table td, .wp-block-table th { padding: 12px 16px; border: 1px solid var(--ivoire); }
.wp-block-table thead { background: var(--sapin); color: var(--ivoire); }
.wp-block-table tbody tr:nth-child(even) { background: var(--fond-carte); }

/* ===== ONE CONTAINER FIX ===== */
.one-container .container { background: transparent !important; }

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
    .entry-title { font-size: 1.8rem; }
    h1 { font-size: 1.9rem; }
    h2 { font-size: 1.5rem; }
}
