/* Shared, approved typography, list, FAQ and tag styling for blog details. */
.blog-detail-polish .blog-details .text p,
.blog-detail-polish .blog-details .text li {
    color: #505950;
    font-size: 15px;
    line-height: 1.85;
    text-align: justify;
}
.blog-detail-polish .blog-details .text p { margin-bottom: 18px; }
.blog-detail-polish .blog-details .text h2,
.blog-detail-polish .blog-details .text h3,
.blog-detail-polish .blog-details .text h4 {
    color: #285539;
    font-weight: 600;
    line-height: 1.45;
    text-transform: none;
}
.blog-detail-polish .blog-details .text > h2 { font-size: 26px; margin: 30px 0 16px; }
.blog-detail-polish .blog-details .text > h3 { font-size: 22px; margin: 28px 0 14px; }
.blog-detail-polish .blog-details .text > h4 { font-size: 18px; margin: 24px 0 12px; }
.blog-detail-polish .blog-details .text ul,
.blog-detail-polish .blog-details .text ol { padding-left: 24px; margin: 16px 0 24px; list-style-position: outside; }
.blog-detail-polish .blog-details .text ul { list-style-type: disc; }
.blog-detail-polish .blog-details .text ol { list-style-type: decimal; }
.blog-detail-polish .blog-details .text li { display: list-item; margin: 8px 0; padding-left: 4px; }
.blog-detail-polish .blog-details .text ul { padding-left: 0; }
.blog-detail-polish .blog-details .text ul > li { position: relative; list-style: none; padding-left: 32px; }
.blog-detail-polish .blog-details .text ol > li { list-style: decimal outside; }
/* Replace the theme's font icons with a consistent circle-check marker. */
.blog-detail-polish .blog-details .lower-content .text li::before { content: none; display: none; }
.blog-detail-polish .blog-details .lower-content .text ul > li::before {
    content: '\2713';
    display: grid;
    place-items: center;
    position: absolute;
    top: .28em;
    left: 0;
    width: 21px;
    height: 21px;
    border: 1px solid #cedfc0;
    border-radius: 50%;
    background: #edf5e5;
    color: #387047;
    font-family: Arial, sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    text-align: center;
}
.blog-detail-polish .blog-details .text li::marker { color: #45804c; font-weight: 600; }
.blog-detail-polish .blog-details .text li p { margin-bottom: 10px; line-height: 1.85; }
.blog-detail-polish .key-takeaways h3 { margin: 0 0 14px; font-size: 19px; }
.blog-detail-polish .key-takeaways ul { margin-bottom: 0 !important; }
.blog-detail-polish .blog-details .key-takeaways li { font-size: 14px; }

.blog-detail-polish #faqAccordion .card {
    overflow: hidden;
    margin-bottom: 12px;
    border: 1px solid #dfe7da;
    border-radius: 10px !important;
    box-shadow: none;
}
.blog-detail-polish #faqAccordion .card-header { padding: 0; border: 0; background: #fff; }
.blog-detail-polish #faqAccordion .card-header h5 { margin: 0; }
.blog-detail-polish .blog-details .lower-content #faqAccordion .card-header button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 18px 20px;
    border: 0;
    border-radius: 0;
    color: #2b5034;
    background: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
    white-space: normal;
    text-transform: none;
    text-decoration: none;
}
.blog-detail-polish #faqAccordion button::after {
    content: '+';
    position: static;
    flex: 0 0 20px;
    color: #508246;
    font-family: inherit;
    font-size: 22px;
    text-align: center;
    transform: none;
}
.blog-detail-polish .blog-details .lower-content #faqAccordion button[aria-expanded="true"] { background: #f3f7ef; }
.blog-detail-polish #faqAccordion button[aria-expanded="true"]::after { content: '\2212'; }
.blog-detail-polish #faqAccordion .card-body {
    padding: 16px 20px 20px;
    border-top: 1px solid #e5ecdf;
    background: #fff;
    color: #505950;
    font-size: 14px;
    line-height: 1.85;
    text-align: left;
}
.blog-detail-polish #faqAccordion button:focus-visible { outline: 2px solid #528549; outline-offset: -3px; }

.blog-detail-polish .blog-hastag .tag-title { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.blog-detail-polish .blog-details > .blog-hastag { margin-top: 26px; padding-top: 22px; border-top: 1px solid #e2e9dc; }
.blog-detail-polish .blog-details > .rc-ai-summary { margin-top: 24px; }
.blog-detail-polish .blog-hastag .tag-title :is(span, a) {
    margin: 0;
    padding: 6px 12px;
    border: 1px solid #dce6d5;
    border-radius: 999px;
    background: #f4f8ef;
    color: #4d7042;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6;
    text-transform: none;
}
.blog-detail-polish .blog-hastag .tag-title span:hover { background: #f4f8ef; color: #4d7042; transform: none; }
.blog-detail-polish .blog-hastag .tag-title a:hover { background: #2a5c3c; color: #fff; transform: none; }
@media (max-width: 575px) {
    .blog-detail-polish .blog-details .text > h2 { font-size: 23px; }
    .blog-detail-polish .blog-details .text > h3 { font-size: 20px; }
    .blog-detail-polish .blog-details .text > h4 { font-size: 17px; }
    .blog-detail-polish .blog-details .text p,
    .blog-detail-polish .blog-details .text li { font-size: 14px; }
    .blog-detail-polish .blog-details .lower-content #faqAccordion .card-header button { padding: 16px; }
    .blog-detail-polish #faqAccordion .card-body { padding: 14px 16px 18px; }
}
