/* =====================================================================
   DEALSTOPR BLOG - styles
   1) Single post (editorial design, purane single-blog.php se)
   2) Blog list / category cards (purane blog.php se)
   3) WordPress extras (comments, pagination, alignments)
   ===================================================================== */

/* ================= Editorial blog page ================= */
.ed-page {
    --ed-ink: #111111;
    --ed-text: #222222;
    --ed-muted: #6b6b6b;
    --ed-line: #e2e2e2;
    --ed-accent: #FF5F00;
    --ed-accent-dark: #d94f00;
    --ed-soft: #f6f5f2;
    --ed-serif: 'Source Serif 4', Georgia, 'Times New Roman', serif;
    --ed-sans: 'Inter', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
    background: #fff;
    color: var(--ed-text);
    font-family: var(--ed-sans);
}
.ed-wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}
.ed-page a { text-decoration: none; }

/* Breadcrumb */
.ed-crumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 12px;
    color: var(--ed-muted);
    padding: 22px 0 0;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.ed-crumbs a { color: var(--ed-muted); }
.ed-crumbs a:hover { color: var(--ed-ink); }

/* Layout: article + sidebar */
.ed-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 56px;
    padding: 18px 0 48px;
}

/* Article header */
.ed-kicker {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--ed-accent);
    margin-bottom: 14px;
}
.ed-title {
    font-family: var(--ed-serif);
    font-size: 46px;
    line-height: 1.12;
    font-weight: 700;
    color: var(--ed-ink);
    letter-spacing: -.01em;
    margin: 0 0 20px;
}
.ed-dek {
    font-family: var(--ed-serif);
    font-size: 20px;
    line-height: 1.5;
    color: #444;
    margin: 0 0 22px;
}
.ed-byline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 14px;
    border-top: 1px solid var(--ed-line);
    border-bottom: 1px solid var(--ed-line);
    padding: 12px 0;
    margin-bottom: 26px;
}
.ed-byline-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 13px;
    color: var(--ed-muted);
}
.ed-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--ed-ink);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 15px;
    flex-shrink: 0;
}
.ed-byline-meta strong { color: var(--ed-ink); font-weight: 600; display: block; font-size: 14px; }
.ed-dot { margin: 0 6px; }
.ed-share { display: flex; gap: 8px; }
.ed-share a,
.ed-share button {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1px solid var(--ed-line);
    background: #fff;
    color: var(--ed-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background .2s, color .2s, border-color .2s;
    padding: 0;
}
.ed-share a:hover,
.ed-share button:hover { background: var(--ed-ink); color: #fff; border-color: var(--ed-ink); }
.ed-share svg { width: 15px; height: 15px; }

/* Hero image */
.ed-hero { margin: 0 0 30px; }

.ed-body h2 { scroll-margin-top: 90px; }
html { scroll-behavior: smooth; }
.ed-hero img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
    background: var(--ed-soft);
}
.ed-hero figcaption {
    font-size: 12px;
    color: var(--ed-muted);
    padding-top: 8px;
    border-bottom: 1px solid var(--ed-line);
    padding-bottom: 8px;
}

/* Article body */
.ed-body {
    font-family: var(--ed-serif);
    font-size: 19px;
    line-height: 1.75;
    color: var(--ed-text);
    max-width: 700px;
    overflow-wrap: break-word;
}
.ed-body > :first-child { margin-top: 0 !important; }
.ed-body p,
.ed-body p:first-child,
.ed-body p:first-of-type,
.ed-body li {
    font-family: var(--ed-serif) !important;
    font-size: 19px !important;
    line-height: 1.75 !important;
    color: var(--ed-text);
    font-weight: 400;
}
.ed-body p { margin: 0 0 24px; }
.ed-body h2, .ed-body h3, .ed-body h4, .ed-body h5, .ed-body h6 {
    font-family: var(--ed-serif) !important;
    color: var(--ed-ink);
    font-weight: 700 !important;
    line-height: 1.25;
    letter-spacing: -.005em;
    margin: 44px 0 16px;
}
.ed-body h2 { font-size: 30px !important; }
.ed-body h3 { font-size: 24px !important; }
.ed-body h4 { font-size: 20px !important; }
.ed-body h5, .ed-body h6 { font-size: 18px !important; }
.ed-body strong, .ed-body b { font-weight: 700; color: var(--ed-ink); }
.ed-body a {
    color: var(--ed-ink);
    text-decoration: underline;
    text-decoration-color: var(--ed-accent);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}
.ed-body a:hover { color: var(--ed-accent); }
.ed-body ul, .ed-body ol { margin: 0 0 26px; padding-left: 26px; }
.ed-body li { margin-bottom: 10px; padding-left: 4px; }
.ed-body ul li::marker { color: var(--ed-accent); }
.ed-body ol li::marker { font-family: var(--ed-sans); font-weight: 700; color: var(--ed-ink); font-size: 16px; }
.ed-body img { max-width: 100%; height: auto; margin: 8px 0 24px; }
.ed-body hr { border: 0; border-top: 1px solid var(--ed-line); margin: 40px 0; opacity: 1; }

/* Quote box (gold frame like a "quote of the day") */
.ed-body blockquote {
    border: 1px solid #d9b86c;
    background: #fffdf7;
    padding: 26px 30px;
    margin: 34px 0;
    text-align: center;
    font-style: italic;
}
.ed-body blockquote p,
.ed-body blockquote p:first-child {
    font-size: 22px !important;
    line-height: 1.5 !important;
    color: var(--ed-ink);
    margin: 0;
}

/* Tables */
.ed-body table {
    width: 100%;
    border-collapse: collapse;
    margin: 10px 0 30px;
    display: block;
    overflow-x: auto;
    font-family: var(--ed-sans);
}
.ed-body th, .ed-body td {
    border-bottom: 1px solid var(--ed-line);
    padding: 12px 14px !important;
    text-align: left;
    vertical-align: top;
    font-size: 15px !important;
    font-family: var(--ed-sans) !important;
}
.ed-body table tr:first-child td,
.ed-body th {
    border-bottom: 2px solid var(--ed-ink);
    font-weight: 700;
    color: var(--ed-ink);
    font-size: 13px !important;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.ed-body td p, .ed-body th p { margin: 0; font-size: inherit !important; font-family: inherit !important; }

/* End of article */
.ed-endnote {
    max-width: 700px;
    margin-top: 40px;
    padding-top: 18px;
    border-top: 3px solid var(--ed-ink);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    font-size: 13px;
    color: var(--ed-muted);
}
.ed-tag {
    display: inline-block;
    border: 1px solid var(--ed-ink);
    color: var(--ed-ink);
    padding: 5px 12px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
}

/* Sidebar */
.ed-side { position: relative; }
.ed-sticky { position: sticky; top: 24px; }
.ed-side-head {
    border-top: 3px solid var(--ed-ink);
    padding-top: 10px;
    margin-bottom: 6px;
    font-family: var(--ed-sans);
    font-size: 15px;
    font-weight: 700;
    color: var(--ed-ink);
    display: flex;
    align-items: center;
    justify-content: space-between;
}
/* Categories list */
.ed-cats { list-style: none; padding: 0; margin: 0 0 34px; }
.ed-cats li { border-bottom: 1px solid var(--ed-line); }
.ed-cats a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 0;
    font-family: var(--ed-serif);
    font-size: 17px;
    font-weight: 600;
    color: var(--ed-ink);
    transition: color .2s, padding .2s;
}
.ed-cats a:hover { color: var(--ed-accent); padding-left: 6px; }
.ed-cats .ed-count {
    font-family: var(--ed-sans);
    font-size: 12px;
    font-weight: 600;
    color: var(--ed-muted);
    background: var(--ed-soft);
    min-width: 28px;
    text-align: center;
    padding: 3px 8px;
    border-radius: 20px;
}
.ed-kicker:hover { color: var(--ed-accent-dark); }
.ed-tag:hover { background: var(--ed-ink); color: #fff !important; }

.ed-promo {
    background: var(--ed-ink);
    color: #fff;
    padding: 24px 22px;
}
.ed-promo small {
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--ed-accent);
    font-weight: 700;
}
.ed-promo h3 {
    font-family: var(--ed-serif);
    font-size: 22px;
    line-height: 1.3;
    margin: 8px 0 10px;
    color: #fff;
}
.ed-promo p { font-size: 14px; color: #c9c9c9; margin: 0 0 18px; line-height: 1.5; }
.ed-btn {
    display: inline-block;
    background: var(--ed-accent);
    color: #fff !important;
    font-weight: 600;
    font-size: 14px;
    padding: 11px 20px;
    border: 0;
    cursor: pointer;
    transition: background .2s;
}
.ed-btn:hover { background: var(--ed-accent-dark); }

/* Section header like "Money →" */
.ed-section { padding: 10px 0 50px; }
.ed-section-head {
    border-top: 3px solid var(--ed-ink);
    padding-top: 10px;
    margin-bottom: 22px;
    font-size: 18px;
    font-weight: 700;
    color: var(--ed-ink);
    display: flex;
    align-items: center;
    gap: 8px;
}
.ed-section-head a { color: var(--ed-ink); display: inline-flex; align-items: center; gap: 8px; }
.ed-section-head a:hover { color: var(--ed-accent); }

/* "More from" grid: 1 bara + 2 chhote + 4 list items */
.ed-feature-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 30px;
    padding-bottom: 10px;
}
.ed-card img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
    margin-bottom: 14px;
    background: var(--ed-soft);
}
.ed-card h3 {
    font-family: var(--ed-serif);
    font-weight: 700;
    color: var(--ed-ink);
    line-height: 1.25;
    margin: 0 0 8px;
}
.ed-card h3 a { color: inherit; }
.ed-card h3 a:hover { text-decoration: underline; }
.ed-card-lg { text-align: center; }
.ed-card-lg h3 { font-size: 30px; }
.ed-card-lg p {
    font-family: var(--ed-serif);
    font-size: 17px;
    color: #555;
    max-width: 620px;
    margin: 0 auto 8px;
    line-height: 1.55;
}
.ed-card-sm h3 { font-size: 18px; }
.ed-stack { display: grid; gap: 26px; align-content: start; }
.ed-meta { font-size: 12px; color: var(--ed-muted); }

/* Comments */
.ed-comments {
    max-width: 700px;
    padding-bottom: 60px;
}
.ed-comments p.ed-note { font-size: 14px; color: var(--ed-muted); margin: -10px 0 22px; }
.ed-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ed-field { margin-bottom: 20px; }
.ed-field label {
    display: block;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--ed-ink);
    margin-bottom: 8px;
}
.ed-field input,
.ed-field textarea {
    width: 100%;
    border: 1px solid #cfcfcf;
    border-radius: 0;
    padding: 12px 14px;
    font-size: 15px;
    font-family: var(--ed-sans);
    background: #fff;
    box-sizing: border-box;
}
.ed-field textarea {
    height: 150px;
    resize: none;          /* user isay khud bada/chhota nahi kar sakta */
    line-height: 1.6;
}
.ed-counter {
    display: block;
    text-align: right;
    font-size: 12px;
    color: var(--ed-muted);
    margin-top: 6px;
}
.ed-counter.is-full { color: #c62828; font-weight: 600; }
.ed-field input:focus,
.ed-field textarea:focus {
    outline: none;
    border-color: var(--ed-ink);
    box-shadow: inset 0 0 0 1px var(--ed-ink);
}

/* Copy-link toast */
.ed-toast {
    position: fixed;
    left: 50%;
    bottom: 28px;
    transform: translateX(-50%) translateY(20px);
    background: var(--ed-ink);
    color: #fff;
    font-size: 14px;
    padding: 10px 18px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s, transform .25s;
    z-index: 999;
}
.ed-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* Responsive */
@media (max-width: 1024px) {
    .ed-grid { grid-template-columns: 1fr; gap: 40px; }
    .ed-sticky { position: static; }
    .ed-side { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
}
@media (max-width: 768px) {
    .ed-title { font-size: 32px; }
    .ed-dek { font-size: 18px; }
    .ed-feature-grid { grid-template-columns: 1fr; }
    .ed-card-lg h3 { font-size: 24px; }
    .ed-side { grid-template-columns: 1fr; }
    .ed-body p, .ed-body p:first-child, .ed-body p:first-of-type, .ed-body li { font-size: 18px !important; }
    .ed-body h2 { font-size: 25px !important; }
    .ed-body h3 { font-size: 21px !important; }
    .ed-body blockquote { padding: 20px; }
    .ed-body blockquote p, .ed-body blockquote p:first-child { font-size: 19px !important; }

    /* Mobile: table ke columns ke beech vertical lines */
    .ed-body th,
    .ed-body td {
        border-right: 1px solid var(--ed-line);
    }
    .ed-body th:last-child,
    .ed-body td:last-child {
        border-right: 0;
    }
}
@media (max-width: 576px) {
    .ed-wrap { padding: 0 16px; }
    .ed-title { font-size: 28px; }
    .ed-form-row { grid-template-columns: 1fr; gap: 0; }
    .ed-byline { flex-direction: column; align-items: flex-start; }
}

/* ================= Blog list (purane blog.php se) ================= */
:root {
    --brand-orange: #FF5F00;
    --ink: #111;
    --line: #e7e7e7;
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
    padding: 24px 0;
}

.blog-card {
    border-radius: 5px;
    overflow: hidden;
    box-shadow: none;
    transition: transform 0.18s ease, border-color 0.18s ease;
    background: #fff;
    border: 1px solid var(--line);
    display: flex;
    flex-direction: column;
    height: 100%;
}

.blog-card:hover {
    transform: translateY(-2px);
    border-color: #d5d5d5;
    box-shadow: 0 5px 15px rgba(0,0,0,.055);
}

.post-img-ad {
    width: 100%;
    height: 200px;
    flex-shrink: 0;
}

.post-img-ad img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
}

.post-text-ad { 
    padding: 20px; 
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.post_category {
    color: #a84608;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: .35px;
}

.blog_title h2 {
    color: var(--ink);
    font-size: 17px;
    margin: 10px 0 7px;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 46px;
}

.blogDescription { 
    color: #666; 
    font-size: 0.95rem; 
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 15px;
}

.btn-read {
    display: inline-block;
    margin-top: auto;
    color: var(--brand-orange);
    font-weight: 700;
    font-size: 12px;
    text-decoration: none;
    border-bottom: 0;
}


/* Blog list hero (purane inline styles) */
.dsr-blog-hero {
    background-color: #F7F6F4;
    text-align: center;
    padding: 38px 20px 34px;
}
.dsr-blog-hero h1 { font-size: 36px; font-weight: 700; margin: 0 0 12px; }
.dsr-blog-hero p { font-size: 1.1rem; max-width: 650px; margin: 0 auto; line-height: 1.6; color: #666; }
.dsr-hero-crumbs { justify-content: center; padding: 0 0 12px; }
@media (max-width: 576px) { .dsr-blog-hero h1 { font-size: 28px; } }

/* Blog categories page: grid (col-md-4 cards) */
.dsr-cat-grid { display: flex; flex-wrap: wrap; margin: 0 -10px; }
.dsr-cat-grid > .col-md-4 { padding: 10px; }

/* ================= WordPress extras ================= */

/* Pagination */
.dsr-pagination { padding: 10px 0 50px; }
.dsr-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.dsr-pagination .page-numbers {
    min-width: 40px; height: 40px; padding: 0 14px;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--line); border-radius: 5px;
    color: var(--ink); font-weight: 600; font-size: 14px; background: #fff;
}
.dsr-pagination .page-numbers.current,
.dsr-pagination a.page-numbers:hover { background: var(--brand-orange); border-color: var(--brand-orange); color: #fff; }
.screen-reader-text {
    border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%);
    height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important;
}

/* Content: WordPress editor classes */
.ed-body .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.ed-body .alignleft { float: left; margin: 6px 24px 16px 0; }
.ed-body .alignright { float: right; margin: 6px 0 16px 24px; }
.ed-body figure { margin: 8px 0 24px; max-width: 100%; }
.ed-body figure img { margin: 0; }
.ed-body figcaption,
.ed-body .wp-caption-text { font-family: var(--ed-sans); font-size: 13px; color: var(--ed-muted); padding-top: 8px; }
.ed-body .wp-block-image img { height: auto; }
.ed-body .wp-block-table { margin: 10px 0 30px; overflow-x: auto; }
.ed-body .wp-block-table table { margin: 0; }
.ed-body iframe, .ed-body video { max-width: 100%; }
.ed-body pre, .ed-body code { font-family: Menlo, Consolas, monospace; font-size: 15px; background: var(--ed-soft); }
.ed-body pre { padding: 16px; overflow-x: auto; margin: 0 0 24px; }
.ed-body::after { content: ""; display: table; clear: both; }
.ed-endnote .ed-tag { margin: 0 6px 6px 0; }
.ed-pages { font-family: var(--ed-sans); font-size: 15px; }
.dsr-page-wrap { padding-top: 40px; padding-bottom: 60px; }

/* Comments list */
.ed-comment-list { list-style: none; padding: 0; margin: 0 0 40px; }
.ed-comment-list .children { list-style: none; padding-left: 28px; margin: 0; }
.ed-comment-list .comment-body { border-bottom: 1px solid var(--ed-line); padding: 18px 0; }
.ed-comment-list .comment-author { display: flex; align-items: center; gap: 10px; font-weight: 600; color: var(--ed-ink); }
.ed-comment-list .comment-author .avatar { border-radius: 50%; }
.ed-comment-list .comment-author .says { display: none; }
.ed-comment-list .comment-metadata { font-size: 12px; margin: 4px 0 10px; }
.ed-comment-list .comment-metadata a { color: var(--ed-muted); }
.ed-comment-list .comment-content p { font-size: 16px; line-height: 1.65; margin: 0 0 10px; }
.ed-comment-list .reply a { font-size: 13px; font-weight: 600; color: var(--ed-accent); }
.ed-comment-list .comment-awaiting-moderation { font-size: 13px; color: var(--ed-muted); }
.ed-comments .comment-respond { margin-top: 10px; }
.ed-comments .form-submit { margin: 0; }
.ed-comments #cancel-comment-reply-link { font-size: 13px; margin-left: 12px; color: var(--ed-muted); }
