/* Start custom CSS for html, class: .elementor-element-15e9171 */.nb-post-wrapper {
        --primary-1: #3F1801;
        --primary-2: #860D01;
        --secondary: #267200;
        --rare-bg: #FCE2A9;
        --text-color: #000000;
        --border-color: rgba(63, 24, 1, 0.1);
        
        max-width: 100%;
        margin: 0 auto;
        font-family: inherit; /* Adheres to default WordPress theme font */
        color: var(--text-color);
        line-height: 1.8;
        background-color: transparent; /* Finance-type clean background */
    }

    .nb-post-wrapper h1, .nb-post-wrapper h2, .nb-post-wrapper h3 {
        color: var(--primary-1);
        font-family: inherit;
        font-weight: 700;
        margin-top: 0;
    }

    .nb-post-wrapper h1 { font-size: 2.2rem; line-height: 1.3; margin-bottom: 1.5rem; }
    .nb-post-wrapper h2 { font-size: 1.8rem; margin-bottom: 1.5rem; border-bottom: 2px solid var(--rare-bg); padding-bottom: 0.5rem; display: inline-block;}
    
    .nb-post-wrapper a {
        color: var(--primary-2);
        text-decoration: none;
        transition: color 0.3s ease;
        font-weight: 500;
    }
    .nb-post-wrapper a:hover {
        text-decoration: underline;
        color: var(--primary-1);
    }

    /* Section Styling */
    .nb-section {
        background: #ffffff;
        border: 1px solid var(--border-color);
        border-radius: 12px;
        padding: 3rem;
        margin-bottom: 3rem;
        box-shadow: 0 10px 30px -10px rgba(0,0,0,0.03); /* Soft, classic finance depth */
    }

    /* Quick Answer Blockquote */
    .nb-quick-answer {
        background-color: var(--rare-bg);
        border-left: 5px solid var(--primary-1);
        padding: 1.5rem 2rem;
        border-radius: 0 8px 8px 0;
        margin: 2rem 0;
        font-size: 1.05rem;
        color: var(--text-color);
    }

    /* Table of Contents */
    .nb-toc {
        background: #ffffff;
        border: 1px solid var(--border-color);
        border-left: 5px solid var(--primary-2);
        border-radius: 8px;
        padding: 1.5rem;
        margin-bottom: 2.5rem;
        box-shadow: 0 4px 15px rgba(0,0,0,0.02);
    }
    .nb-toc summary {
        font-size: 1.25rem;
        font-weight: bold;
        color: var(--primary-1);
        cursor: pointer;
        outline: none;
        display: flex;
        align-items: center;
    }
    .nb-toc summary::-webkit-details-marker { display: none; }
    .nb-toc summary::before {
        content: "▼";
        font-size: 0.8rem;
        margin-right: 10px;
        transition: transform 0.3s;
    }
    .nb-toc[open] summary::before { transform: rotate(180deg); }
    .nb-toc-nav ul {
        list-style: none;
        padding-left: 1rem;
        margin-top: 1rem;
    }
    .nb-toc-nav > ul { padding-left: 0; }
    .nb-toc-nav li { margin-bottom: 0.5rem; }
    .nb-toc-nav a { color: var(--text-color); font-weight: normal; }
    .nb-toc-nav a:hover { color: var(--primary-2); }
    .nb-toc-nav ul ul { padding-left: 1.5rem; border-left: 1px dashed var(--border-color); margin-top: 0.25rem; }

    /* Checklist specific styling */
    .nb-h3-check {
        display: flex;
        align-items: center;
        margin-top: 2.5rem;
        margin-bottom: 1rem;
        font-size: 1.4rem;
        color: var(--primary-1);
    }
    .nb-h3-check svg {
        color: var(--secondary);
        width: 28px;
        height: 28px;
        margin-right: 12px;
        flex-shrink: 0;
    }

    /* Standard Lists */
    .nb-post-wrapper ul {
        padding-left: 1.5rem;
        margin-bottom: 1.5rem;
    }
    .nb-post-wrapper li { margin-bottom: 0.5rem; }

    /* Images */
    .nb-image-figure {
        margin: 2.5rem 0;
        text-align: center;
    }
    .nb-image-figure img {
        max-width: 100%;
        height: auto;
        border-radius: 8px;
        border: 1px solid var(--border-color);
    }
    .nb-image-figure figcaption {
        margin-top: 0.75rem;
        font-size: 0.9rem;
        color: #555;
        font-style: italic;
    }

    /* Table Styling */
    .nb-table-responsive {
        overflow-x: auto;
        margin: 2rem 0;
    }
    .nb-post-wrapper table {
        width: 100%;
        border-collapse: collapse;
        text-align: left;
        background: #fff;
    }
    .nb-post-wrapper th {
        background-color: var(--primary-1);
        color: #fff;
        padding: 1rem 1.5rem;
        font-weight: 600;
    }
    .nb-post-wrapper td {
        padding: 1rem 1.5rem;
        border-bottom: 1px solid var(--border-color);
        vertical-align: middle;
    }
    .nb-post-wrapper tr:nth-child(even) td { background-color: #fafafa; }

    /* Icons */
    .nb-icon {
        width: 1.2rem;
        height: 1.2rem;
        vertical-align: middle;
        margin-right: 0.5rem;
        color: var(--primary-2);
    }

    /* FAQs Accordion */
    .nb-faq-item {
        background: #ffffff;
        border: 1px solid var(--border-color);
        border-radius: 8px;
        margin-bottom: 1rem;
        overflow: hidden;
        transition: box-shadow 0.3s;
    }
    .nb-faq-item:hover { box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
    .nb-faq-item summary {
        padding: 1.25rem 1.5rem;
        font-weight: 600;
        color: var(--primary-1);
        cursor: pointer;
        background-color: #fafafa;
        list-style: none;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .nb-faq-item summary::-webkit-details-marker { display: none; }
    .nb-faq-item summary::after {
        content: "+";
        font-size: 1.5rem;
        color: var(--primary-2);
        transition: transform 0.3s;
    }
    .nb-faq-item[open] summary::after {
        content: "−";
        transform: rotate(180deg);
    }
    .nb-faq-item p {
        padding: 1.5rem;
        margin: 0;
        border-top: 1px solid var(--border-color);
    }

    /* Video Embed Wrapper */
    .wp-block-embed { margin: 2.5rem auto; text-align: center; }

    /* Responsive adjustments */
    @media (max-width: 768px) {
        .nb-section { padding: 1.5rem; }
        .nb-post-wrapper h1 { font-size: 1.8rem; }
        .nb-post-wrapper h2 { font-size: 1.5rem; }
        .nb-quick-answer { padding: 1rem 1.25rem; font-size: 1rem; }
    }/* End custom CSS */