/* === CKEditor Content Styling (Scoped to .pq-service-description) === */

.pq-service-description {
    color: #30373f;
    line-height: 1.7;
    font-family: 'Arial', sans-serif;
    font-size: 1.1em;
    max-width: 1300px;
    margin: 0 auto 0px;
    padding: 0 15px;
}

/* Paragraphs */
.pq-service-description p {
    margin-bottom: 0em;
    text-align: justify;
    /* text-indent: 2em; */
    text-indent: 0em;
}

/* Headings */
.pq-service-description h1 { font-size: 2.5em; }
.pq-service-description h2 { font-size: 2em; }
.pq-service-description h3 { font-size: 1.75em; }
.pq-service-description h4 { font-size: 1.5em; }
.pq-service-description h5 { font-size: 1.25em; }
.pq-service-description h6 { font-size: 1em; }

.pq-service-description h1,
.pq-service-description h2,
.pq-service-description h3,
.pq-service-description h4,
.pq-service-description h5,
.pq-service-description h6 {
    font-weight: 800;
    margin-top: 1.5em;
    margin-bottom: 0.5em;
    color: #024C72;
    line-height: 1.2;
}

/* Lists */
.pq-service-description ul,
.pq-service-description ol {
    margin: 0 0 1em 50px;
    padding: 0;
}

.pq-service-description ul li {
    margin-bottom: 0em;
    list-style-position: outside;
    color: #30373f;
    list-style-type: disc;
}

.pq-service-description ol li {
    margin-bottom: 0.5em;
    list-style-position: outside;
    color: #30373f;
    list-style-type: decimal;
}

/* Todo Lists */
.pq-service-description ul.todo-list {
    list-style: none;
}

.pq-service-description ul.todo-list li {
    display: flex;
    align-items: flex-start;
    margin-bottom: 8px;
}

.pq-service-description ul.todo-list li input[type="checkbox"] {
    margin-right: 8px;
    margin-top: 4px;
}

/* Bold, Italic, Underline, Strikethrough */
.pq-service-description b,
.pq-service-description strong {
    font-weight: bold;
    color: #024C72;
}

.pq-service-description i,
.pq-service-description em {
    font-style: italic;
}

.pq-service-description u {
    text-decoration: underline;
}

.pq-service-description s {
    text-decoration: line-through;
}

/* Subscript and Superscript */
.pq-service-description sub {
    vertical-align: sub;
    font-size: smaller;
}

.pq-service-description sup {
    vertical-align: super;
    font-size: smaller;
}

/* Links */
.pq-service-description a {
    color: #024C72;
    text-decoration: none;
    transition: color 0.3s ease;
}

.pq-service-description a:hover {
    color: #012b40;
    text-decoration: underline;
}

/* Blockquotes */
.pq-service-description blockquote {
    border-left: 4px solid #ccc;
    padding-left: 15px;
    margin: 1.5em 0;
    font-style: italic;
    color: #555;
}

/* Tables */
/*
    .pq-service-description table {
        width: 100%;
        border-collapse: collapse;
        margin: 1.5em 0;
        font-size: 0.95em;
    }

    .pq-service-description th,
    .pq-service-description td {
        border: 1px solid #ddd;
        padding: 10px;
        text-align: left;
    }

    .pq-service-description th {
        background-color: #f0f8fb;
        font-weight: bold;
        color: #024C72;
    }
*/

/* === Designer Table Styles inside .pq-service-description === */
.pq-service-description table {
    width: 100%;
    border-collapse: collapse;
    margin: 2em 0;
    font-size: 0.95em;
    background-color: #fff;
    border-radius: 0px;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}

/* Header cells */
.pq-service-description th {
    background: linear-gradient(90deg, #024C72 0%, #02668f 100%);
    color: #fff;
    padding: 12px 16px;
    text-align: left;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid #024C72;
}

/* Data cells */
.pq-service-description td {
    padding: 12px 16px;
    color: #30373f;
    border-bottom: 1px solid #eee;
    transition: background-color 0.3s ease;
}

/* Zebra striping for better readability */
.pq-service-description tr:nth-child(even) td {
    background-color: #f9fcfd;
}

/* Hover effect */
.pq-service-description tr:hover td {
    background-color: #eef6f9;
}

/* Optional: Rounded corners for the first & last cells in each row */
.pq-service-description tr:first-child th:first-child {
    border-top-left-radius: 8px;
}
.pq-service-description tr:first-child th:last-child {
    border-top-right-radius: 8px;
}
.pq-service-description tr:last-child td:first-child {
    border-bottom-left-radius: 8px;
}
.pq-service-description tr:last-child td:last-child {
    border-bottom-right-radius: 8px;
}


/* Horizontal Rule */
.pq-service-description hr {
    border: none;
    border-top: 1px solid #eee;
    margin: 2em 0;
}

/* Highlight */
.pq-service-description mark {
    background-color: yellow;
    padding: 0.2em 0.4em;
    border-radius: 3px;
}

/* Text Alignment Helpers */
.pq-service-description .text-align-left   { text-align: left; }
.pq-service-description .text-align-center { text-align: center; }
.pq-service-description .text-align-right  { text-align: right; }
.pq-service-description .text-align-justify{ text-align: justify; }

/* Responsive Tweaks */
@media (max-width: 768px) {
    .pq-service-description {
        font-size: 1em;
    }
}
