/* ============================================================= */
/* postContentShortcodes.css – FINAL UNIFIED & TIGHT VERSION     */
/* One heading class to rule them all → heading3                 */
/* Perfect two-column harmony, beautiful on web + print          */
/* ============================================================= */

@import url('https://fonts.googleapis.com/css2?family=Averia+Libre:wght@400&display=swap');

/* ——— GLOBAL PRINT ——— */
@page { size: A4 portrait; margin: 20mm 15mm 25mm 15mm; }
@media print {
    body { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }
    h1,h2,.day,.outcome-block,.consultant,.admonition { page-break-inside: avoid !important; page-break-after: avoid !important; }
}

/* Add this to the very bottom of post_print.css */
.page-break-before  { page-break-before: always !important; }
.page-break-after   { page-break-after: always !important; }
.no-break           { page-break-inside: avoid !important; }

/* ——— CONTAINER ——— */
.brochure-container {
    max-width: 170mm !important;
    width: 100% !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}
@media print { .brochure-container { padding: 0 1.8em !important; } }
@media (max-width: 768px) { .brochure-container { padding: 0 1em !important; } }

/* ——— COVER OVERLAY + TITLE — WORKS ON WEB AND PDF ——— */
.brochure-cover-wrapper {
    position: relative !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important;
}

.brochure-cover-img {
    width: 100% !important;
    height: 88mm !important;
    object-fit: cover !important;
    display: block !important;
}

.brochure-cover-overlay {
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
    background: #2C3E2C80 !important;   /* 50% opacity */
    pointer-events: none !important;
}



/* Optional: hide title on web if you only want overlay */
@media screen {
    .brochure-cover-title { display: none !important; }  /* remove this line if you want title on web too */
}

/* ——— UNIVERSAL HEADINGS ——— */
.heading1 { 
    font-size: 21pt !important; 
    line-height: 1.15 !important; 
    margin: 0 0 1em 0 !important; 
    text-align: center !important; 
    color: #446344 !important;
    font-family: "Averia Serif Libre", serif !important;
}

.heading2 { 
    font-size: 18pt !important; 
    line-height: 1.2 !important; 
    margin: 0 0 0.9em 0 !important; 
    text-align: center !important; 
    color: #446344 !important;
    font-family: "Averia Serif Libre", serif !important;
}

.heading3 { 
    font-size: 15pt !important; 
    line-height: 1.3 !important; 
    margin: 0 0 0.6em 0 !important; 
    color: #446344 !important; 
    font-weight: 600 !important; 
    text-align: center !important;
    font-family: "Averia Serif Libre", serif !important;
}

/* ——— UNIVERSAL PARAGRAPH STYLING (two-column) ——— */
.paragraph {
    font-size: 12.5pt !important;
    line-height: 1.5 !important;
    margin: 0 0 1.2em 0 !important;
    padding: 0 !important;
    font-family: Verdana, sans-serif !important;
}
.paragraph:last-child { margin-bottom: 0 !important; }
.paragraph strong { font-weight: 700 !important; }

/* ——— UNIVERSAL BODY TEXT – IDENTICAL EVERYWHERE ( admonitions) ——— */

.admonition .admonition-content .message {
    font-weight: 500 !important;
    font-size: 12.5pt !important;
    line-height: 1.5 !important;
    font-family: "Averia Serif Libre", serif !important;
    color: #333 !important;
}


/* ——— MOBILE – EXACT SAME SIZING EVERYWHERE ——— */
@media (max-width: 768px) {
    .heading1 { font-size: 22pt !important; }
    .heading2 { font-size: 20pt !important; }
    .heading3 { font-size: 16pt !important; }

    .paragraph,
    .section-content,
    .day-content,
    .consultant p,
    .author-signature,
    .admonition .admonition-content {
        font-size: 12pt !important;
        line-height: 1.45 !important;
        margin-bottom: 1em !important;
    }
    .big-yellow-button { font-size: 17pt !important; }
}


/* ——— TWO COLUMN: TIGHT SPACING, SINGLE OUTER BORDER + 6PX LEFT ——— */
.master-two-column-wrapper > .two-column-wrapper {
    border: 1px solid #446344 !important;
    border-left: 6px solid #446344 !important;
    border-radius: 6px !important;
    padding: 1em !important;
    box-sizing: border-box !important;
    background: white !important;
}

/* Only ONE wrapper uses gap — the inner one */
.master-two-column-wrapper > .two-column-wrapper > .two-column-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1.2em !important;        /* ← reduced gap */
    margin: 0 !important;
    align-items: stretch !important;
}

/* Remove all fake lines */
.two-column-wrapper::before,
.two-column-wrapper::after {
    display: none !important;
}

/* Columns */
.column-left,
.column-right {
    flex: 1 1 45% !important;
    min-width: 45% !important;
}

/* Header & footer — tight spacing */
.two-column-header,
.two-column-footer {
    flex: 0 0 100% !important;
    width: 100% !important;
    text-align: center !important;
    font-weight: 600 !important;
    color: #f57c00 !important;
    margin: 0.4em 0 !important;    /* ← tight vertical spacing */
    padding: 0 !important;
}

.two-column-sub-header{
    color: #f57c00 !important;
    text-align:center !important;
}

/* ——— UPPERCASE FOR HEADER ONLY ——— */
.two-column-header {
    text-transform: uppercase !important;
}

/* Remove ALL margins from content */
.consultant,
.section-content {
    margin: 0 !important;
    padding: 0.8em !important;
}
/* ——— CONSULTANTS: SPACE BETWEEN EACH BOX ——— */
.consultants-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 1em !important;          /* ← THIS IS THE SPACE BETWEEN EACH CONSULTANT */
    width: 100% !important;
}

.consultant {
    background: #E8ECE7 !important;
    border-radius: 12px !important;
    padding: 1em !important;
    text-align: center !important;
    margin: 0 !important;         /* ← remove any old margins */
    flex: 1 !important;
}



/* Mobile */
@media (max-width: 768px) {
    .column-left,
    .column-right {
        flex: 1 1 100% !important;
    }
}



/* ——— RESULTS – FORCE 2 COLUMNS, 53 mm wide each ——— */
.outcomes-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1em !important;           /* keeps original spacing */
    justify-content: center !important;
    margin: 1em 0 !important;
}

.outcome-block {
    flex: 0 1 90% !important;     /* ← exactly 53 mm wide */
    min-width: 90% !important;
    padding: 0.8em 0.8em !important;
    line-height: 1.45 !important;
    background-color:#E8ECE7;
    border-radius: 12px !important;
    font-family: Verdana, Georgia;
    font-size:12.5pt;
}

/* Mobile: stack vertically */
@media (max-width: 768px) {
    .outcome-block {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
}

/* ——— DAILY RHYTHM – FINAL: "DAY" inside circle, text top-aligned ——— */


.day {
    display: flex !important;
    align-items: flex-start !important;
    gap: 0.8em !important;
    padding: 0.7em 0.9em !important;
}

.day-content-wrapper {
    display: flex;
    flex-direction: column;
}

.day-label-outside {
    font-size: 10pt !important;
    font-weight: 600 !important;
    color: #f57c00 !important;
    margin-bottom: 0.15em !important;
    line-height: 1.2 !important;
}

.day-number-circle {
    width: 48px !important;
    height: 48px !important;
    background: #f57c00 !important;
    color: white !important;
    border-radius: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    font-weight: bold !important;
    font-size: 9pt !important;          /* small but readable */
    line-height: 1.1 !important;
    text-align: center !important;
    flex-shrink: 0 !important;
}

/* "DAY" on top line, number below */
.day-text   { font-size: 8pt !important; opacity: 0.9; }
.day-number { font-size: 14pt !important; line-height: 1 !important; }

/* Optional label (Arrival, Departure) — tiny */
.day-label  { font-size: 12.5pt !important; margin-top: 1px !important; opacity: 0.9; }

.day-content {
    font-size: 12.5pt !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    font-family:Verdana,Georgia;
}



/* ——— CTA & AUTHOR ——— */
.big-yellow-button { font-size: 18pt !important; padding: 0.5em 1.1em !important; border-radius: 30px !important; background: #f57c00 !important; color: #fff !important; }
.brochure-author { text-align: center !important; margin: 2em auto 1.2em !important; }

/* ——— POSTINFO ——— */
.brochure-postinfo-clean {
    margin: 1.2em auto !important;
    padding: 0.7em 2em !important;
    background: #f8f8f8 !important;
    border-top: 1px solid #e2e2e2 !important;
    border-bottom: 1px solid #e2e2e2 !important;
    font-size: 1em !important;
    color: #446344 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0.8em !important;
}
.brochure-postinfo-clean .author-name-link:hover { color: #FFCC33 !important; }

/* ——— ORIGINAL ORANGE “DOWNLOAD THE BROCHURE” BUTTON (using universal fonts) ——— */
.print-button-wrapper {
    text-align: center !important;
    margin: 1em auto !important;
    display:flex;
    justify-content:center !important;
    align-items:center !important;
}

.print-button-link {
    display: inline-block !important;
    background: #f57c00 !important;
    color: #ffffff !important;
    
    /* Uses your universal heading font & weight */
    font-family: "Averia Serif Libre", serif !important;
    font-size: 16pt !important;           /* matches heading3 size family */
    font-weight: 600 !important;
    line-height: 1.2 !important;
    
    padding: 0.65em 1.8em !important;
    border-radius: 40px !important;
    text-decoration: none !important;
    box-shadow: 0 6px 20px rgba(245, 124, 0, 0.35) !important;
    transition: all 0.3s ease !important;
}

.print-button-link:hover {
    background: #ff9d33 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 30px rgba(245, 124, 0, 0.45) !important;
    color: #fff !important;
}

/* Optional: make it a bit bigger on desktop/print */
@media (min-width: 769px), print {
    .print-button-link {
        font-size: 18pt !important;
        padding: 0.75em 2.2em !important;
    }
}

/* ================================================================== */
/* FAQ ACCORDION – EXACT MATCH TO YOUR CURRENT VIDEO ACCORDION STYLE   */
/* + / – on left | Closed = white/#446344 | Hover = #FFCC33 | Open = #f57c00 */
/* ================================================================== */

.faq-accordion {
    margin: 1em 0 !important;
    border: solid !important;
    border-color: #446344 !important;
    border-width: 1px !important;
    overflow: hidden !important;
    box-shadow: 0 6px 18px rgba(0,0,0,0.1) !important;
    background: transparent !important;
}

.faq-accordion-title {
    background: white !important;
    color: #446344 !important;
    padding: 0.3em 0.6em !important;
    font-family: "Averia Serif Libre", serif !important;
    font-size: 15pt !important;
    font-weight: 400 !important;
    cursor: pointer !important;
    user-select: none !important;
    transition: all 0.35s ease !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
}

/* + / – on the LEFT */
.faq-plus-minus {
    display: inline-block !important;
    width: 24px !important;
    height: 24px !important;
    line-height: 22px !important;
    text-align: center !important;
    font-size: 20pt !important;
    font-weight: bold !important;
    color: #446344 !important;
    flex-shrink: 0 !important;
    transition: all 0.3s ease !important;
}

/* When OPEN → show minus + orange background */
.faq-accordion[open] .faq-accordion-title {
    background: #f57c00 !important;
    color: white !important;
}
.faq-accordion[open] .faq-plus-minus {
    color: white !important;
}

/* Hover = golden yellow */
.faq-accordion-title:hover {
    background: #FFCC33 !important;
    color: #333 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(255,204,51,0.3) !important;
}
.faq-accordion-title:hover .faq-plus-minus {
    color: #333 !important;
}

/* Remove browser default marker */
.faq-accordion-title::-webkit-details-marker,
.faq-accordion-title::marker { 
    display: none !important; 
}

.faq-accordion-content {
    padding: 2em !important;
    background: white !important;
    border: 2px solid #f57c00 !important;
    border-top: none !important;
}

/* FAQ items inside */
.faq-item { 
    margin: 1.4em 0 !important; 
    page-break-inside: avoid !important; 
}
.faq-question { 
    font-size: 13pt !important; 
    color: #446344 !important; 
    margin-bottom: 0.4em !important;
    font-family: "Averia Serif Libre", serif !important;
}
.faq-answer { 
    font-size: 10.5pt !important; 
    line-height: 1.5 !important; 
    color: #333 !important;
}
.faq-ref { 
    font-size: 8pt !important; 
    color: #f57c00 !important; 
}

/* References */
.faq-references {
    font-size: 9pt !important;
    color: #666 !important;
    margin-top: 2em !important;
    padding-top: 1em !important;
    border-top: 1px solid #ddd !important;
}