/*
 * content-typography.css
 * Rich-text content typography for Blog and Speciality pages.
 * Targets the areas where TinyMCE/editor content is rendered.
 * Scoped under specific parent classes to avoid breaking other page styles.
 */

/* ── Shared scope ─────────────────────────────────────────────────────────
   Applies to:
     .text-box1           – blog description wrapper
     .specialities-top-content  – speciality overview
     .conditions_cus_main       – conditions / treatments
     .brochure-content          – brochure tab
     .what-wedo-content         – conditions we treat section
     .accord-content            – FAQ answers inside accordions
     .blog-postt                – blog post wrapper (if used)
   ────────────────────────────────────────────────────────────────────── */

.text-box1,
.specialities-top-content,
.conditions_cus_main,
.brochure-content,
.what-wedo-content,
.accord-content,
.blog-postt {
    font-family: 'Open Sans', Arial, sans-serif;
    font-size: 15px;
    line-height: 1.8;
    color: #3d3d3d;
    word-break: break-word;
}

/* ── Paragraphs ─────────────────────────────────────────────────────────── */
.text-box1 p,
.specialities-top-content p,
.conditions_cus_main p,
.brochure-content p,
.what-wedo-content p,
.accord-content p,
.blog-postt p {
    margin: 0 0 14px 0;
    line-height: 1.8;
    color: #444;
    font-size: 15px;
}

/* ── Headings ───────────────────────────────────────────────────────────── */
.text-box1 h1,
.specialities-top-content h1,
.conditions_cus_main h1,
.brochure-content h1,
.what-wedo-content h1,
.accord-content h1,
.text-box1 h2,
.specialities-top-content h2,
.conditions_cus_main h2,
.brochure-content h2,
.what-wedo-content h2,
.accord-content h2,
.text-box1 h3,
.specialities-top-content h3,
.conditions_cus_main h3,
.brochure-content h3,
.what-wedo-content h3,
.accord-content h3,
.text-box1 h4,
.specialities-top-content h4,
.conditions_cus_main h4,
.brochure-content h4,
.what-wedo-content h4,
.accord-content h4,
.text-box1 h5,
.specialities-top-content h5,
.conditions_cus_main h5,
.brochure-content h5,
.what-wedo-content h5,
.accord-content h5,
.text-box1 h6,
.specialities-top-content h6,
.conditions_cus_main h6,
.brochure-content h6,
.what-wedo-content h6,
.accord-content h6 {
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1.35;
    margin-top: 24px;
    margin-bottom: 10px;
}

.text-box1 h1, .specialities-top-content h1, .conditions_cus_main h1,
.brochure-content h1, .what-wedo-content h1, .accord-content h1 { font-size: 26px; }

.text-box1 h2, .specialities-top-content h2, .conditions_cus_main h2,
.brochure-content h2, .what-wedo-content h2, .accord-content h2 {
    font-size: 22px;
    padding: 6px 0 8px 0;
    border-bottom: 2px solid #e8e8e8;
    margin-bottom: 14px;
}

.text-box1 h3, .specialities-top-content h3, .conditions_cus_main h3,
.brochure-content h3, .what-wedo-content h3, .accord-content h3 { font-size: 19px; }

.text-box1 h4, .specialities-top-content h4, .conditions_cus_main h4,
.brochure-content h4, .what-wedo-content h4, .accord-content h4 { font-size: 17px; }

.text-box1 h5, .specialities-top-content h5, .conditions_cus_main h5,
.brochure-content h5, .what-wedo-content h5, .accord-content h5 { font-size: 15px; }

.text-box1 h6, .specialities-top-content h6, .conditions_cus_main h6,
.brochure-content h6, .what-wedo-content h6, .accord-content h6 {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #555;
}

/* First heading after a section start — no extra top margin */
.text-box1 > h1:first-child,  .text-box1 > h2:first-child,
.text-box1 > h3:first-child,  .text-box1 > h4:first-child,
.specialities-top-content > h1:first-child,
.specialities-top-content > h2:first-child,
.specialities-top-content > h3:first-child,
.conditions_cus_main > h1:first-child,
.conditions_cus_main > h2:first-child,
.conditions_cus_main > h3:first-child {
    margin-top: 0;
}

/* ── Unordered & Ordered Lists ──────────────────────────────────────────── */
.text-box1 ul,
.specialities-top-content ul,
.conditions_cus_main ul,
.brochure-content ul,
.what-wedo-content ul,
.accord-content ul,
.text-box1 ol,
.specialities-top-content ol,
.conditions_cus_main ol,
.brochure-content ol,
.what-wedo-content ol,
.accord-content ol {
    margin: 6px 0 16px 0;
    padding-left: 24px;
}

.text-box1 ul,
.specialities-top-content ul,
.conditions_cus_main ul,
.brochure-content ul,
.what-wedo-content ul,
.accord-content ul {
    list-style: disc;
}

.text-box1 ol,
.specialities-top-content ol,
.conditions_cus_main ol,
.brochure-content ol,
.what-wedo-content ol,
.accord-content ol {
    list-style: decimal;
}

.text-box1 li,
.specialities-top-content li,
.conditions_cus_main li,
.brochure-content li,
.what-wedo-content li,
.accord-content li {
    margin-bottom: 6px;
    line-height: 1.75;
    font-size: 15px;
    color: #444;
    list-style: inherit !important; /* override any theme resets */
    margin-left: 0 !important;      /* let padding-left on ul/ol control indent */
}

/* Nested lists */
.text-box1 ul ul,  .text-box1 ol ol,
.text-box1 ul ol,  .text-box1 ol ul,
.specialities-top-content ul ul,
.conditions_cus_main ul ul,
.brochure-content ul ul {
    margin: 4px 0 6px 0;
    padding-left: 20px;
}

/* ── Blockquote ─────────────────────────────────────────────────────────── */
.text-box1 blockquote,
.specialities-top-content blockquote,
.conditions_cus_main blockquote,
.brochure-content blockquote,
.what-wedo-content blockquote {
    border-left: 4px solid #006837;
    background: #f7faf8;
    margin: 20px 0;
    padding: 14px 20px;
    font-style: italic;
    color: #555;
    border-radius: 0 4px 4px 0;
}

/* ── Tables ─────────────────────────────────────────────────────────────── */
.text-box1 table,
.specialities-top-content table,
.conditions_cus_main table,
.brochure-content table,
.what-wedo-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0 20px 0;
    font-size: 14px;
}

.text-box1 table th,
.specialities-top-content table th,
.conditions_cus_main table th,
.brochure-content table th,
.what-wedo-content table th {
    background: #006837;
    color: #fff;
    padding: 10px 14px;
    text-align: left;
    font-weight: 600;
}

.text-box1 table td,
.specialities-top-content table td,
.conditions_cus_main table td,
.brochure-content table td,
.what-wedo-content table td {
    padding: 9px 14px;
    border: 1px solid #dde;
    color: #444;
    vertical-align: top;
}

.text-box1 table tr:nth-child(even) td,
.specialities-top-content table tr:nth-child(even) td,
.conditions_cus_main table tr:nth-child(even) td,
.brochure-content table tr:nth-child(even) td,
.what-wedo-content table tr:nth-child(even) td {
    background: #f9f9f9;
}

/* ── Images inside content ──────────────────────────────────────────────── */
.text-box1 img,
.specialities-top-content img,
.conditions_cus_main img,
.brochure-content img,
.what-wedo-content img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    margin: 10px 0;
}

/* ── Inline elements ────────────────────────────────────────────────────── */
.text-box1 strong, .text-box1 b,
.specialities-top-content strong, .specialities-top-content b,
.conditions_cus_main strong, .conditions_cus_main b,
.brochure-content strong, .brochure-content b,
.what-wedo-content strong, .what-wedo-content b {
    font-weight: 700;
    color: #222;
}

.text-box1 a,
.specialities-top-content a,
.conditions_cus_main a,
.brochure-content a,
.what-wedo-content a {
    color: #006837;
    text-decoration: underline;
}

.text-box1 a:hover,
.specialities-top-content a:hover,
.conditions_cus_main a:hover,
.brochure-content a:hover,
.what-wedo-content a:hover {
    color: #004d28;
}

/* ── Horizontal rule ────────────────────────────────────────────────────── */
.text-box1 hr,
.specialities-top-content hr,
.conditions_cus_main hr,
.brochure-content hr,
.what-wedo-content hr {
    border: none;
    border-top: 1px solid #e0e0e0;
    margin: 22px 0;
}

/* ── Spacing fix: remove excess top margin on first child ───────────────── */
.text-box1 > *:first-child,
.specialities-top-content > *:first-child,
.conditions_cus_main > *:first-child,
.brochure-content > *:first-child,
.what-wedo-content > *:first-child {
    margin-top: 0 !important;
}

/* ── Spacing fix: remove excess bottom margin on last child ─────────────── */
.text-box1 > *:last-child,
.specialities-top-content > *:last-child,
.conditions_cus_main > *:last-child,
.brochure-content > *:last-child,
.what-wedo-content > *:last-child {
    margin-bottom: 0 !important;
}

/* ── Responsive tweaks ──────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .text-box1,
    .specialities-top-content,
    .conditions_cus_main,
    .brochure-content,
    .what-wedo-content,
    .accord-content {
        font-size: 14px;
    }

    .text-box1 h2, .specialities-top-content h2,
    .conditions_cus_main h2, .brochure-content h2 { font-size: 19px; }

    .text-box1 h3, .specialities-top-content h3,
    .conditions_cus_main h3, .brochure-content h3 { font-size: 16px; }

    .text-box1 table,
    .specialities-top-content table,
    .conditions_cus_main table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
