/*
Theme Name:  The Corporate Woman
Theme URI:   https://thecorporatewoman.in
Author:      TCW
Description: A modern editorial theme for The Corporate Woman.
Version:     1.0.0
License:     GNU General Public License v2 or later
Text Domain: tcw
Tags:        blog, editorial, custom-menu, featured-images, responsive-layout
*/

/* ── Variables ── */
:root {
    --wine:      #5A3145;
    --wine-d:    #4B2E3F;
    --wine-l:    #6D4A5B;
    --copper:    #B77C6D;
    --mauve:     #D8B1A0;
    --cream:     #F7F2EE;
    --blush:     #F4E7E1;
    --rose:      #E8D5CF;
    --bordeaux:  #8C5D5D;
    --muted:     #A07070;
    --white:     #FFFFFF;

    --fd: 'Cormorant Garamond', Georgia, serif;
    --fsc:'Cormorant SC', serif;
    --fb: 'Jost', sans-serif;

    --r-card: 24px;
    --r-pill: 999px;
    --shadow: 0 4px 24px rgba(90,49,69,.08);
    --shadow-h: 0 12px 40px rgba(90,49,69,.16);
    --trans: all .25s cubic-bezier(.4,0,.2,1);
}

/* ── Reset ── */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { font-size:16px; scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
body { font-family:var(--fb); background:var(--cream); color:var(--wine-d); line-height:1.7; overflow-x:hidden; padding-top:88px; }
/* Pages with full-width hero banners — remove body padding */

@media (max-width:960px) { body { padding-top:52px; }  }
/* Hide WordPress default site title/tagline */
.site-title, .site-description, .wp-block-site-title, .wp-block-site-tagline { display:none !important; }
a    { color:inherit; text-decoration:none; transition:var(--trans); }
img  { max-width:100%; height:auto; display:block; }
ul   { list-style:none; }

/* ── Skip link ── */
.skip-link { position:absolute; top:-100%; left:16px; background:var(--wine); color:var(--cream); padding:8px 20px; border-radius:0 0 8px 8px; font-size:.8rem; z-index:9999; }
.skip-link:focus { top:0; }

/* ── Buttons ── */
.btn-primary { display:inline-block; background:var(--wine); color:var(--cream); padding:13px 28px; border-radius:var(--r-pill); font-size:.72rem; letter-spacing:.15em; text-transform:uppercase; font-weight:500; border:none; cursor:pointer; transition:var(--trans); }
.btn-primary:hover { background:var(--wine-d); transform:translateY(-1px); box-shadow:0 8px 24px rgba(90,49,69,.25); color:var(--cream); }
.btn-outline { display:inline-block; background:transparent; color:var(--wine); padding:13px 28px; border-radius:var(--r-pill); font-size:.72rem; letter-spacing:.15em; text-transform:uppercase; font-weight:500; border:1.5px solid rgba(90,49,69,.3); cursor:pointer; transition:var(--trans); }
.btn-outline:hover { background:var(--wine); color:var(--cream); border-color:var(--wine); }

/* ── Section helpers ── */
.tcw-section { padding:80px 0; }
.tcw-container { max-width:1320px; margin:0 auto; padding:0 40px; }
.section-eye { font-size:.6rem; letter-spacing:.28em; text-transform:uppercase; color:var(--bordeaux); margin-bottom:10px; }
.section-h2  { font-family:var(--fd); font-size:clamp(1.9rem,3vw,2.8rem); font-weight:300; color:var(--wine-d); margin-bottom:48px; }
.section-h2 em { font-style:italic; color:var(--copper); }

/* ── Post card ── */
.story-card { background:var(--white); border-radius:var(--r-card); overflow:hidden; box-shadow:var(--shadow); transition:var(--trans); display:flex; flex-direction:column; }
.story-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-h); }
.sc-thumb { display:block; aspect-ratio:4/3; overflow:hidden; background:linear-gradient(135deg,var(--blush),var(--rose)); }
.sc-thumb img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.story-card:hover .sc-thumb img { transform:scale(1.04); }
.sc-thumb-placeholder { width:100%; height:100%; background:linear-gradient(135deg,var(--blush),var(--rose)); }
.sc-body   { padding:24px; flex:1; display:flex; flex-direction:column; }
.sc-cat    { font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; color:var(--copper); margin-bottom:8px; font-weight:500; }
.sc-cat a  { color:inherit; }
.sc-title  { font-family:var(--fd); font-size:1.2rem; font-weight:400; line-height:1.4; color:var(--wine-d); margin-bottom:8px; flex:1; }
.sc-title a { color:inherit; }
.sc-title a:hover { color:var(--copper); }
.sc-excerpt { font-size:.78rem; line-height:1.75; color:var(--wine-l); margin-bottom:16px; }
.sc-meta  { display:flex; align-items:center; justify-content:space-between; padding-top:12px; border-top:1px solid rgba(216,177,160,.18); font-size:.66rem; color:var(--mauve); }
.sc-read  { font-size:.6rem; letter-spacing:.14em; text-transform:uppercase; color:var(--wine-l); transition:var(--trans); }
.story-card:hover .sc-read { color:var(--copper); }

/* ── Pagination ── */
.tcw-pagination { margin-top:48px; }
.tcw-pagination .nav-links { display:flex; align-items:center; justify-content:center; gap:8px; flex-wrap:wrap; }
.tcw-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; font-size:.82rem; color:var(--wine-l); border:1px solid rgba(183,124,109,.25); transition:var(--trans); text-decoration:none; }
.tcw-pagination .page-numbers.current,
.tcw-pagination .page-numbers:hover { background:var(--wine); color:var(--cream); border-color:var(--wine); }

/* ── Forms ── */
.tcw-form-row { margin-bottom:18px; }
.tcw-form-row label { display:block; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--wine-l); margin-bottom:6px; }
.tcw-form-row input,
.tcw-form-row textarea,
.tcw-form-row select { width:100%; background:var(--white); border:1px solid rgba(183,124,109,.28); border-radius:10px; padding:12px 16px; font-family:var(--fb); font-size:.9rem; color:var(--wine-d); outline:none; transition:border-color .2s; }
.tcw-form-row input:focus,
.tcw-form-row textarea:focus { border-color:var(--copper); }
.tcw-form-row textarea { min-height:140px; resize:vertical; }
.tcw-form-notice { padding:12px 18px; border-radius:10px; font-size:.85rem; margin-bottom:20px; }
.tcw-form-notice.success { background:#EAF3DE; color:#27500A; border:1px solid #b7dfb0; }
.tcw-form-notice.error   { background:#FDE8E8; color:#7A1515; border:1px solid #f5b0b0; }

/* ── 404 ── */
.tcw-404 { min-height:60vh; display:flex; align-items:center; justify-content:center; text-align:center; }
.tcw-404-num  { font-family:var(--fd); font-size:8rem; font-weight:300; color:var(--rose); line-height:1; }
.tcw-404-title{ font-family:var(--fd); font-size:2rem; font-weight:300; color:var(--wine); margin:12px 0 16px; }
.tcw-404-text { font-size:.9rem; color:var(--wine-l); margin-bottom:28px; }

/* ══════════════
   HEADER
══════════════ */
.tcw-header { position:sticky; top:0; z-index:500; height:72px; background:rgba(247,242,238,.97); backdrop-filter:blur(16px); border-bottom:1px solid rgba(216,177,160,.22); transition:var(--trans); }
.tcw-header.scrolled { box-shadow:0 2px 20px rgba(90,49,69,.08); }
.tcw-header-inner { max-width:1400px; margin:0 auto; height:100%; display:flex; align-items:center; justify-content:space-between; padding:0 36px; gap:20px; }

/* Logo — rightmost */
.tcw-logo { text-align:right; flex-shrink:0; order:3; }
.tcw-logo a { text-decoration:none; }
.tcw-logo .logo-name { font-family:var(--fsc); font-size:1.05rem; letter-spacing:.3em; font-weight:600; text-transform:uppercase; color:var(--wine-d); line-height:1.2; display:block; }
.tcw-logo .logo-tag  { font-size:.56rem; letter-spacing:.2em; text-transform:uppercase; color:var(--bordeaux); margin-top:2px; display:block; }
.tcw-logo img { max-height:50px; width:auto; }

/* Search — leftmost */
.tcw-hdr-left { order:1; display:flex; align-items:center; }
.tcw-search-btn { background:none; border:none; cursor:pointer; padding:8px; border-radius:50%; color:var(--wine-l); display:flex; align-items:center; transition:var(--trans); }
.tcw-search-btn:hover { background:rgba(90,49,69,.07); color:var(--wine); }
.tcw-search-btn svg { width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:1.8; }

/* Primary nav — center */
.tcw-nav { order:2; flex:1; display:flex; justify-content:center; }
.tcw-menu { display:flex; align-items:center; gap:2px; margin:0; padding:0; list-style:none; }
.tcw-menu > li { position:relative; }
.tcw-menu > li > a { display:inline-flex; align-items:center; gap:5px; font-family:var(--fb); font-size:.68rem; font-weight:500; letter-spacing:.17em; text-transform:uppercase; color:var(--wine-l); padding:8px 12px; border-radius:8px; white-space:nowrap; transition:var(--trans); }
.tcw-menu > li > a:hover,
.tcw-menu > li.current-menu-item > a { color:var(--wine); background:rgba(90,49,69,.06); }
/* Arrow */
.tcw-menu > li.has-sub > a::after { content:''; display:inline-block; width:4px; height:4px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg) translateY(-2px); opacity:.55; transition:transform .2s; margin-left:3px; }
.tcw-menu > li.has-sub:hover > a::after { transform:rotate(225deg) translateY(-2px); }

/* ── Regular dropdown ── */
.tcw-drop { display:none; position:absolute; top:calc(100% + 6px); left:0; min-width:200px; background:var(--white); border:1px solid rgba(216,177,160,.28); border-radius:16px; box-shadow:0 20px 48px rgba(90,49,69,.14); padding:8px 6px; list-style:none; z-index:600; }
.tcw-menu > li:hover .tcw-drop { display:block; }
.tcw-drop li a { display:block; font-size:.78rem; letter-spacing:.05em; color:var(--wine-l); padding:9px 14px; border-radius:10px; transition:var(--trans); }
.tcw-drop li a:hover { background:var(--blush); color:var(--wine); padding-left:20px; }

/* ══════════════
   MEGA MENU
══════════════ */
.tcw-mega-wrap { display:none; position:fixed; top:72px; left:0; right:0; z-index:490; background:var(--white); border-top:1px solid rgba(216,177,160,.2); border-bottom:1px solid rgba(216,177,160,.15); box-shadow:0 24px 60px rgba(90,49,69,.12); animation:megaIn .2s ease; }
@keyframes megaIn { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:translateY(0); } }
.tcw-menu > li.tcw-mega-item:hover .tcw-mega-wrap { display:block; }
.tcw-mega-grid { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:300px 1fr; min-height:320px; }

/* Left: category list */
.tcw-mega-left  { background:#FAFAF9; border-right:1px solid rgba(216,177,160,.15); padding:24px 0; }
.tcw-mega-eyebrow { font-size:.55rem; letter-spacing:.25em; text-transform:uppercase; color:var(--muted); padding:0 22px 12px; border-bottom:1px solid rgba(216,177,160,.12); margin-bottom:6px; display:block; }
.tcw-mega-cats { list-style:none; margin:0; padding:0; }
.tcw-mega-cats li { display:flex; align-items:center; justify-content:space-between; border-left:3px solid transparent; cursor:pointer; transition:.15s; }
.tcw-mega-cats li a { display:block; flex:1; font-size:.82rem; font-weight:400; color:var(--wine-l); padding:11px 18px 11px 20px; transition:.15s; }
.tcw-mega-cats li .chev { font-size:1rem; color:var(--mauve); padding-right:16px; }
.tcw-mega-cats li:hover,
.tcw-mega-cats li.active { background:rgba(183,124,109,.07); border-left-color:var(--copper); }
.tcw-mega-cats li:hover a,
.tcw-mega-cats li.active a { color:var(--wine); font-weight:500; }
.tcw-mega-cats li.active .chev { color:var(--copper); }

/* Right: sub-links */
.tcw-mega-right { padding:28px 36px; }
.tcw-mega-panel { display:none; flex-direction:column; gap:3px; }
.tcw-mega-panel.active { display:flex; }
.tcw-mega-panel .view-all { font-size:.62rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--copper); display:inline-flex; align-items:center; gap:6px; padding-bottom:12px; margin-bottom:8px; border-bottom:1px solid rgba(216,177,160,.18); }
.tcw-mega-panel .view-all:hover { color:var(--wine); }
.tcw-mega-sub-link { display:inline-flex; align-items:center; gap:8px; font-size:.84rem; color:var(--wine-l); padding:9px 14px; border-radius:8px; transition:.18s; max-width:520px; }
.tcw-mega-sub-link:hover { background:var(--blush); color:var(--wine); padding-left:20px; }
.tcw-mega-sub-link.is-post { font-family:var(--fd); font-size:.92rem; font-style:italic; }

/* ══════════════
   SEARCH OVERLAY
══════════════ */
.tcw-search-ov { position:fixed; inset:0; z-index:2000; background:rgba(247,242,238,.97); backdrop-filter:blur(20px); display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; transition:opacity .3s; }
.tcw-search-ov.open { opacity:1; pointer-events:all; }
.tcw-search-close { position:absolute; top:26px; right:30px; background:none; border:none; cursor:pointer; font-family:var(--fb); font-size:.65rem; letter-spacing:.16em; text-transform:uppercase; color:var(--wine-l); display:flex; align-items:center; gap:6px; }
.tcw-search-inner { width:100%; max-width:620px; padding:0 24px; text-align:center; }
.tcw-search-inner .s-label { font-size:.6rem; letter-spacing:.26em; text-transform:uppercase; color:var(--bordeaux); margin-bottom:18px; }
.tcw-search-inner .search-form { display:flex; align-items:center; border-bottom:2px solid var(--wine); gap:10px; padding-bottom:10px; }
.tcw-search-inner .search-field { flex:1; background:transparent; border:none; outline:none; font-family:var(--fd); font-size:2rem; color:var(--wine-d); }
.tcw-search-inner .search-field::placeholder { color:rgba(90,49,69,.3); }
.tcw-search-inner .search-submit { background:none; border:none; cursor:pointer; color:var(--wine); padding:4px; display:flex; }
.tcw-search-inner .search-submit svg { width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.8; }

/* ══════════════
   MOBILE HEADER
══════════════ */
.tcw-mob-header { display:none; position:sticky; top:0; z-index:500; height:58px; background:rgba(247,242,238,.97); backdrop-filter:blur(16px); border-bottom:1px solid rgba(216,177,160,.2); align-items:center; justify-content:space-between; padding:0 18px; }
.tcw-mob-logo { font-family:var(--fsc); font-size:.88rem; letter-spacing:.26em; text-transform:uppercase; color:var(--wine-d); font-weight:600; flex:1; text-align:center; }
.tcw-ham { background:none; border:none; cursor:pointer; padding:6px; display:flex; flex-direction:column; gap:5px; width:32px; }
.tcw-ham span { display:block; height:1.5px; background:var(--wine-d); border-radius:2px; transition:.2s; transform-origin:left center; }
.tcw-ham.open span:nth-child(1) { transform:rotate(40deg); }
.tcw-ham.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
.tcw-ham.open span:nth-child(3) { transform:rotate(-40deg); }
.tcw-mob-actions { display:flex; align-items:center; }

/* Mobile drawer */
.tcw-mob-drawer { position:fixed; top:58px; left:0; right:0; bottom:0; z-index:499; background:var(--cream); transform:translateX(-100%); transition:transform .32s cubic-bezier(.4,0,.2,1); overflow-y:auto; padding:22px 20px 60px; }
.tcw-mob-drawer.open { transform:translateX(0); }
.mob-search-wrap { margin-bottom:18px; }
.mob-search-wrap form { display:flex; align-items:center; background:var(--white); border:1px solid rgba(183,124,109,.28); border-radius:var(--r-pill); padding:9px 16px; gap:8px; }
.mob-search-wrap input { flex:1; border:none; outline:none; font-family:var(--fb); font-size:.82rem; color:var(--wine-d); background:none; }
.mob-search-wrap input::placeholder { color:var(--mauve); }
.mob-search-wrap button { background:none; border:none; cursor:pointer; color:var(--wine-l); display:flex; }
.mob-search-wrap button svg { width:14px; height:14px; stroke:currentColor; fill:none; stroke-width:1.8; }
.tcw-mob-nav { list-style:none; }
.tcw-mob-nav > li { border-bottom:1px solid rgba(216,177,160,.18); }
.mob-row { display:flex; align-items:center; justify-content:space-between; }
.mob-row > a { display:block; font-size:.8rem; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--wine-l); padding:13px 0; flex:1; }
.mob-toggle { background:none; border:none; cursor:pointer; padding:8px; color:var(--wine-l); display:flex; align-items:center; }
.mob-toggle svg { transition:transform .2s; }
.tcw-mob-nav > li.open .mob-toggle svg { transform:rotate(180deg); }
.mob-sub { display:none; flex-direction:column; padding:6px 0 12px 14px; gap:2px; }
.tcw-mob-nav > li.open .mob-sub { display:flex; }
.mob-sub li a { display:block; font-size:.76rem; color:var(--wine-l); padding:8px 10px; border-radius:7px; }
.mob-sub li a:hover { background:var(--blush); color:var(--wine); }

/* ══════════════
   FOOTER
══════════════ */
.tcw-footer { background:var(--wine-d); color:rgba(247,242,238,.75); padding:60px 0 0; margin-top:80px; }
.footer-grid { max-width:1320px; margin:0 auto; padding:0 40px; display:grid; grid-template-columns:2fr 1fr 1.5fr; gap:60px; padding-bottom:48px; border-bottom:1px solid rgba(255,255,255,.07); }
.footer-col h3 { font-family:var(--fsc); font-size:.62rem; letter-spacing:.28em; text-transform:uppercase; color:var(--mauve); margin-bottom:16px; font-weight:400; }
.footer-col p { font-size:.82rem; line-height:1.9; color:rgba(247,242,238,.6); max-width:300px; }
.footer-col ul li { margin-bottom:10px; }
.footer-col ul li a { font-size:.8rem; color:rgba(247,242,238,.6); display:inline-flex; align-items:center; gap:7px; transition:var(--trans); }
.footer-col ul li a::before { content:''; display:block; width:12px; height:1px; background:var(--copper); transition:width .2s; }
.footer-col ul li a:hover { color:var(--cream); }
.footer-col ul li a:hover::before { width:20px; }
.footer-email { color:var(--copper) !important; text-decoration:underline; text-underline-offset:3px; }
.footer-bottom { max-width:1320px; margin:0 auto; padding:20px 40px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.footer-bottom p { font-size:.6rem; letter-spacing:.18em; text-transform:uppercase; color:rgba(247,242,238,.28); }
.footer-mark { font-family:var(--fsc); font-size:.62rem; letter-spacing:.28em; color:rgba(247,242,238,.14); }

/* ══════════════════════════════
   COMPLETE RESPONSIVE SYSTEM
   Mobile:       0 – 480px
   Tablet:     481 – 768px
   Tablet Lg:  769 – 1024px
   Desktop:   1025 – 1440px
   Wide:      1441 – 1920px
══════════════════════════════ */

/* ── Wide 1441–1920px ── */
@media (min-width:1441px) {
    .tcw-container { max-width:1600px; }
    .footer-grid, .footer-bottom { max-width:1600px; }
}

/* ── Tablet Large 769–1024px ── */
@media (max-width:1024px) {
    .tcw-container { padding:0 28px; }
    .footer-grid { grid-template-columns:1.5fr 1fr 1fr; gap:40px; padding:0 28px 40px; }
    .footer-bottom { padding:20px 28px; }
    .section-h2 { font-size:clamp(1.6rem,2.5vw,2.2rem); }
}

/* ── Switch to mobile header ── */
@media (max-width:960px) {
    .tcw-hdr { display:none; }
    .tcw-mob-hdr { display:flex; }
}

/* ── Tablet 481–768px ── */
@media (max-width:768px) {
    .tcw-container { padding:0 20px; }
    .section-h2 { font-size:1.6rem; margin-bottom:28px; }
    .tcw-section { padding:48px 0; }
    .footer-grid { grid-template-columns:1fr; gap:28px; padding:0 20px 32px; }
    .footer-bottom { padding:16px 20px; flex-direction:column; text-align:center; gap:6px; }
    .footer-col p { max-width:100%; }
    .story-card { flex-direction:column; }
    .sc-body { padding:18px; }
    .tcw-pagination .nav-links { gap:4px; }
    .tcw-pagination .page-numbers { width:34px; height:34px; font-size:.78rem; }
    .tcw-search-inner .search-field { font-size:1.4rem; }
    .tcw-search-inner { padding:0 20px; }
    .btn-primary, .btn-outline { padding:11px 22px; font-size:.68rem; }
    /* Blog grids */
    .blog-featured-grid { grid-template-columns:1fr !important; gap:24px !important; }
    .blog-grid { grid-template-columns:repeat(2,1fr) !important; gap:18px !important; }
}

/* ── Mobile 0–480px ── */
@media (max-width:480px) {
    .tcw-container { padding:0 14px; }
    .section-h2 { font-size:1.35rem; margin-bottom:20px; }
    .tcw-section { padding:36px 0; }
    .footer-grid { padding:0 14px 24px; gap:20px; }
    .footer-bottom { padding:12px 14px; }
    .tcw-pagination .page-numbers { width:30px; height:30px; font-size:.72rem; }
    .tcw-search-close { top:14px; right:14px; }
    .tcw-search-inner { padding:0 14px; }
    .tcw-search-inner .search-field { font-size:1.1rem; }
    .sc-thumb { aspect-ratio:16/9; }
    .sc-body { padding:14px; }
    .sc-title { font-size:1rem; }
    /* Blog grids single col */
    .blog-featured-grid { grid-template-columns:1fr !important; }
    .blog-grid { grid-template-columns:1fr !important; gap:14px !important; }
}

/* ── TCW TABLES ── */
.tcw-article table,
.entry-content table,
.sp-content table,
.post-content table {
    width: 100%;
    border-collapse: collapse;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-size: 14px;
    margin-bottom: 32px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(90,49,69,0.08);
}
.tcw-article table thead tr,
.entry-content table thead tr,
.sp-content table thead tr,
.post-content table thead tr {
    background-color: #5A3145;
    color: #F4E7E1;
}
.tcw-article table thead th,
.entry-content table thead th,
.sp-content table thead th,
.post-content table thead th {
    padding: 13px 16px;
    text-align: left;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.03em;
    border: 1px solid #4a2f42;
    color: #F4E7E1;
}
.tcw-article table tbody tr:nth-child(odd),
.entry-content table tbody tr:nth-child(odd),
.sp-content table tbody tr:nth-child(odd),
.post-content table tbody tr:nth-child(odd) {
    background-color: #ECE6E2;
}
.tcw-article table tbody tr:nth-child(even),
.entry-content table tbody tr:nth-child(even),
.sp-content table tbody tr:nth-child(even),
.post-content table tbody tr:nth-child(even) {
    background-color: #F8F5F1;
}
.tcw-article table tbody td,
.entry-content table tbody td,
.sp-content table tbody td,
.post-content table tbody td {
    padding: 12px 16px;
    border: 1px solid #ECE6E2;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-size: 14px;
    color: #4B2E3F;
    line-height: 1.7;
    vertical-align: top;
}
.tcw-article table tbody tr:hover,
.entry-content table tbody tr:hover,
.sp-content table tbody tr:hover,
.post-content table tbody tr:hover {
    background-color: #F4E7E1;
    transition: background 0.2s;
}

/* Mobile table scroll */
@media (max-width: 768px) {
    .tcw-article table,
    .entry-content table,
    .sp-content table,
    .post-content table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        font-size: 13px;
    }
    .tcw-article table thead th,
    .entry-content table thead th,
    .sp-content table thead th,
    .post-content table thead th {
        font-size: 12px;
        padding: 10px 12px;
    }
    .tcw-article table tbody td,
    .entry-content table tbody td,
    .sp-content table tbody td,
    .post-content table tbody td {
        padding: 10px 12px;
        font-size: 13px;
        min-width: 120px;
    }
}

/* ════════════════════════════
   GLOBAL BANNER & LAYOUT FIX
   Header is position:fixed
   Mobile header: 56px
   Desktop header: 88px
════════════════════════════ */

/* Desktop — header is fixed, body needs padding */
body { padding-top: 88px; }

/* All pages with full-width banners — remove padding */
body.home,
body.single,
body.single-post,
body.page,
body.blog,
body.archive { padding-top: 0 !important; }

/* main#primary — never add padding */
main#primary { padding: 0 !important; margin: 0 !important; }

/* Mobile */
@media (max-width: 960px) {
    body { padding-top: 56px; }
    body.home,
    body.single,
    body.single-post,
    body.page,
    body.blog,
    body.archive { padding-top: 0 !important; }
}
@media (max-width: 480px) {
    body { padding-top: 52px; }
}

/* ── Article/Blog content font fix ── */
.sp-content,
.sp-content p,
.sp-content li,
.sp-content td,
.sp-content blockquote,
.entry-content,
.entry-content p,
.entry-content li,
.post-content,
.post-content p,
.single-content p {
    font-family: Verdana, Geneva, Tahoma, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.85 !important;
}
.sp-content h1, .entry-content h1 { font-family: Verdana, Geneva, Tahoma, sans-serif !important; font-size: 22px !important; }
.sp-content h2, .entry-content h2 { font-family: Verdana, Geneva, Tahoma, sans-serif !important; font-size: 20px !important; }
.sp-content h3, .entry-content h3 { font-family: Verdana, Geneva, Tahoma, sans-serif !important; font-size: 18px !important; }