/*
Theme Name:   MMW-News
Theme URI:    https://mmwnews.com
Description:  World-class editorial news theme. Hero grid, breaking ticker, 5 category blocks, pillar pages, Telugu language support, 14 ad zones, full SEO schema markup, dark mode, WCAG 2.1 accessible, sticky menu, breadcrumbs, customizer controls. Works with PHP 7.4+ and WordPress 6.0+.
Version:      1.0.0
Author:       MMW Media
Author URI:   https://mmwnews.com
Requires at least: 6.0
Requires PHP: 7.4
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  mmw-news
Tags:         news, magazine, technology, regional, dark-mode, seo, responsive, accessibility-ready, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, full-width-template, two-columns, three-columns
*/

/* ════════════════════════════════════════
   DESIGN TOKENS
════════════════════════════════════════ */
:root {
  /* Brand — override in Customizer */
  --mmw-primary:    #0057FF;
  --mmw-primary-d:  #003FCC;
  --mmw-accent:     #00D4FF;
  --mmw-breaking:   #FF4520;
  --mmw-success:    #00A86B;
  --mmw-warning:    #F59E0B;
  --mmw-purple:     #7C3AED;
  --mmw-teal:       #0E7490;

  /* Header/Footer navy */
  --mmw-ink:        #040D1F;
  --mmw-ink2:       #0A1528;

  /* Surfaces */
  --mmw-bg:         #F4F5F7;
  --mmw-card:       #FFFFFF;
  --mmw-alt:        #F9FAFB;

  /* Text */
  --mmw-t1:         #0C0E18;
  --mmw-t2:         #374151;
  --mmw-t3:         #6B7280;
  --mmw-t4:         #9CA3AF;

  /* Borders */
  --mmw-b1:         #E5E7EB;
  --mmw-b2:         #F0F1F4;

  /* Shadows */
  --mmw-s1: 0 1px 4px rgba(0,0,0,.07);
  --mmw-s2: 0 4px 18px rgba(0,0,0,.10);
  --mmw-s3: 0 8px 32px rgba(0,0,0,.14);
  --mmw-s4: 0 20px 60px rgba(0,0,0,.20);

  /* Typography */
  --mmw-fd: 'Playfair Display','Georgia',serif;
  --mmw-fh: 'Barlow Condensed','Arial Narrow',sans-serif;
  --mmw-fb: 'Source Serif 4','Georgia',serif;
  --mmw-fu: 'DM Sans','Helvetica Neue',sans-serif;
  --mmw-ft: 'Noto Sans Telugu','Mandali',sans-serif;

  /* Layout:
     Total container  = 1300px max
     160px outer margin = auto-centering on screens > 1620px (no padding needed inside)
     Internal gutter   = 24px each side (for breathing room on narrow screens)
     2 cols min 310px each + 296px sidebar = 916px min + gaps = fits in 1300px  */
  --mmw-wrap:    1300px;
  --mmw-sidebar: 296px;
  --mmw-col-min: 310px;
  --mmw-outer:   24px;   /* internal gutter only — 160px visual margin is auto outside wrap */
  --mmw-nav-h:   52px;

  /* Radius */
  --mmw-r:    4px;
  --mmw-r2:   8px;
  --mmw-r3:   12px;
  --mmw-r4:   16px;
  --mmw-img-r: 6px;   /* Customizer-controlled */

  /* Transition */
  --mmw-tr: .18s ease;
}

/* Dark mode */
[data-mmw-theme="dark"] {
  --mmw-bg:   #080D1C;
  --mmw-card: #0D1527;
  --mmw-alt:  #0F1A32;
  --mmw-t1:   #EDF0F7;
  --mmw-t2:   #B8C1D4;
  --mmw-t3:   #6B7A99;
  --mmw-t4:   #3D4F70;
  --mmw-b1:   #1A2540;
  --mmw-b2:   #111928;
}

/* ════════════════════════════════════════
   RESET & BASE
════════════════════════════════════════ */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body {
  font-family: var(--mmw-fu);
  font-size: 15px;
  background: var(--mmw-bg);
  color: var(--mmw-t1);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  transition: background .22s, color .22s;
}
img { display:block; max-width:100%; height:auto; }
a   { color:inherit; text-decoration:none; }
ul,ol { list-style:none; }
button,input,select,textarea { font-family:inherit; font-size:inherit; }
p { margin-bottom:1em; }
p:last-child { margin-bottom:0; }
h1,h2,h3,h4,h5,h6 { line-height:1.18; }

/* Regional language */
body.mmw-lang-te { font-family:var(--mmw-ft); line-height:1.95; }

/* Accessibility */
.mmw-skip {
  position:absolute; top:-100px; left:0; z-index:9999;
  background:var(--mmw-primary); color:#fff;
  padding:8px 16px; border-radius:0 0 var(--mmw-r2) 0;
  font-size:12px; font-weight:700; transition:top .15s;
}
.mmw-skip:focus { top:0; }
.mmw-sr {
  position:absolute; width:1px; height:1px;
  padding:0; margin:-1px; overflow:hidden;
  clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
:focus-visible { outline:2px solid var(--mmw-accent); outline-offset:3px; }

/* ════════════════════════════════════════
   LAYOUT — outer 160px each side
════════════════════════════════════════ */
.mmw-site   { min-height:100vh; display:flex; flex-direction:column; }
.mmw-content{ flex:1; }
.mmw-wrap {
  max-width: var(--mmw-wrap);
  margin: 0 auto;
  padding: 0 var(--mmw-outer);
  width: 100%;
  box-sizing: border-box;
}
/* On screens wider than 1620px the auto-centering provides ~160px visual margin each side */
/* Tighten gutter only on very small screens */
@media(max-width:600px){ .mmw-wrap { padding:0 14px; } }

/* ════════════════════════════════════════
   TOPBAR
════════════════════════════════════════ */
.mmw-topbar {
  background:var(--mmw-ink);
  padding:5px 0;
  font-size:11px;
  color:rgba(255,255,255,.36);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.mmw-topbar-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.mmw-topbar-l   { display:flex; align-items:center; gap:8px; overflow:hidden; white-space:nowrap; }
.mmw-topbar-r   { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.mmw-topbar-r a { color:rgba(255,255,255,.3); font-weight:600; font-size:10.5px; letter-spacing:.04em; transition:color var(--mmw-tr); }
.mmw-topbar-r a:hover { color:rgba(255,255,255,.72); }
.mmw-topbar-sep { color:rgba(255,255,255,.14); }
.mmw-lang-pill  {
  background:rgba(0,87,255,.2); border:1px solid rgba(0,87,255,.36);
  color:var(--mmw-accent)!important; padding:1px 8px; border-radius:3px;
  font-family:var(--mmw-ft); font-weight:700!important; font-size:11.5px!important;
  transition:all var(--mmw-tr);
}
.mmw-lang-pill:hover { background:rgba(0,87,255,.36)!important; color:#fff!important; }

/* ════════════════════════════════════════
   HEADER AD BAR
════════════════════════════════════════ */
.mmw-hdr-ad { background:var(--mmw-alt); border-bottom:1px solid var(--mmw-b1); padding:7px 0; text-align:center; }

/* ════════════════════════════════════════
   SITE HEADER
════════════════════════════════════════ */
.mmw-header {
  background:var(--mmw-ink);
  box-shadow:0 2px 20px rgba(0,0,0,.35);
  transition:box-shadow var(--mmw-tr), top .25s;
  z-index:500;
  position:relative;   /* JS adds position:sticky when enabled */
}
.mmw-header.mmw-sticky   { position:sticky; top:0; }
.mmw-header.mmw-scrolled { box-shadow:0 4px 30px rgba(0,0,0,.55); }

.mmw-header-row { display:flex; align-items:center; height:var(--mmw-nav-h); gap:10px; }

/* Logo */
.mmw-logo {
  display:flex; align-items:center; gap:9px;
  flex-shrink:0; height:var(--mmw-nav-h); text-decoration:none;
}
.mmw-logo img.custom-logo { height:36px; width:auto; max-width:180px; object-fit:contain; }
.mmw-logo-mark {
  width:30px; height:30px; min-width:30px; border-radius:7px;
  background:linear-gradient(135deg,var(--mmw-primary),var(--mmw-accent));
  display:flex; align-items:center; justify-content:center;
}
.mmw-logo-type  { display:flex; flex-direction:column; line-height:1; }
.mmw-logo-name  { font-family:var(--mmw-fh); font-size:19px; font-weight:900; color:#fff; letter-spacing:-.02em; }
.mmw-logo-name .mmw-ac { color:var(--mmw-accent); }
.mmw-logo-sub   { font-size:7.5px; font-weight:700; color:rgba(255,255,255,.24); text-transform:uppercase; letter-spacing:.17em; margin-top:2px; }

/* Primary nav */
.mmw-primary-nav { flex:1; display:flex; align-items:stretch; justify-content:center; height:var(--mmw-nav-h); overflow:hidden; }
.mmw-nav-list { display:flex; align-items:stretch; height:100%; list-style:none; }
.mmw-nav-list > li { position:relative; display:flex; align-items:stretch; }
.mmw-nav-list > li > a {
  display:flex; align-items:center; gap:4px; height:100%; padding:0 10px;
  font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  color:rgba(255,255,255,.56); border-bottom:2px solid transparent; white-space:nowrap;
  transition:all var(--mmw-tr);
}
.mmw-nav-list > li > a .mmw-nav-icon { width:14px; height:14px; }
.mmw-nav-list > li > a:hover,
.mmw-nav-list > li.current-menu-item > a,
.mmw-nav-list > li.current-menu-ancestor > a {
  color:#fff; background:rgba(255,255,255,.05); border-bottom-color:var(--mmw-accent);
}
/* Dropdown */
.mmw-nav-list > li > ul.sub-menu {
  position:absolute; top:100%; left:0; z-index:600;
  background:#0C1530; border:1px solid rgba(255,255,255,.07);
  border-radius:0 var(--mmw-r2) var(--mmw-r2) var(--mmw-r2);
  min-width:210px; box-shadow:var(--mmw-s4);
  opacity:0; pointer-events:none; transform:translateY(8px);
  transition:opacity var(--mmw-tr),transform var(--mmw-tr); list-style:none;
}
.mmw-nav-list > li:hover > ul.sub-menu,
.mmw-nav-list > li:focus-within > ul.sub-menu { opacity:1; pointer-events:all; transform:translateY(0); }
.mmw-nav-list > li > ul.sub-menu li a {
  display:block; padding:9px 16px;
  font-size:12px; font-weight:600; color:rgba(255,255,255,.52);
  border-bottom:1px solid rgba(255,255,255,.04); transition:all var(--mmw-tr);
}
.mmw-nav-list > li > ul.sub-menu li:last-child a { border-bottom:none; }
.mmw-nav-list > li > ul.sub-menu li a:hover { background:rgba(255,255,255,.05); color:var(--mmw-accent); padding-left:20px; }

/* Header actions */
.mmw-header-actions { display:flex; align-items:center; gap:4px; flex-shrink:0; }
.mmw-hbtn {
  background:none; border:none; cursor:pointer;
  color:rgba(255,255,255,.46); width:36px; height:36px;
  border-radius:var(--mmw-r); display:flex; align-items:center; justify-content:center;
  transition:all var(--mmw-tr);
}
.mmw-hbtn:hover { color:#fff; background:rgba(255,255,255,.08); }
.mmw-sub-btn {
  background:var(--mmw-primary); color:#fff;
  padding:6px 14px; border-radius:var(--mmw-r);
  font-size:11.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  white-space:nowrap; border:none; cursor:pointer; transition:background var(--mmw-tr);
}
.mmw-sub-btn:hover { background:var(--mmw-primary-d); }
.mmw-hamburger { display:none!important; }
/* shown only at ≤600px via the mobile media query */

/* ════════════════════════════════════════
   MOBILE DRAWER
════════════════════════════════════════ */
.mmw-mob-drawer {
  background:var(--mmw-ink2); border-top:1px solid rgba(255,255,255,.05);
  max-height:0; overflow:hidden;
  transition:max-height .34s cubic-bezier(.4,0,.2,1);
}
.mmw-mob-drawer.open { max-height:80vh; overflow-y:auto; }
.mmw-mob-drawer > .mmw-wrap { padding-top:8px; padding-bottom:16px; }
.mmw-mob-nav li { border-bottom:1px solid rgba(255,255,255,.05); }
.mmw-mob-nav li a { display:block; padding:12px 0; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:rgba(255,255,255,.7); transition:color var(--mmw-tr); }
.mmw-mob-nav li a:hover,.mmw-mob-nav li.current-menu-item a { color:var(--mmw-accent); }
.mmw-mob-sub-btn { display:block; margin:14px 0 4px; text-align:center; background:var(--mmw-primary); color:#fff; padding:10px; border-radius:var(--mmw-r2); font-weight:700; font-size:13px; }

/* ════════════════════════════════════════
   BREAKING TICKER
════════════════════════════════════════ */
.mmw-ticker { display:flex; align-items:center; height:36px; overflow:hidden; background:linear-gradient(90deg,var(--mmw-ink2),#0C1835); border-bottom:2px solid var(--mmw-primary); }
.mmw-ticker-label { flex-shrink:0; background:var(--mmw-primary); color:#fff; font-size:9.5px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; padding:0 26px 0 16px; height:36px; line-height:36px; white-space:nowrap; clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%); }
.mmw-ticker-port { flex:1; overflow:hidden; height:36px; position:relative; }
.mmw-ticker-track { display:inline-flex; align-items:center; gap:52px; white-space:nowrap; position:absolute; top:0; left:0; height:100%; animation:mmw-tick 40s linear infinite; will-change:transform; }
.mmw-ticker-track:hover { animation-play-state:paused; }
.mmw-ticker-item { display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:500; color:rgba(255,255,255,.82); white-space:nowrap; flex-shrink:0; transition:color var(--mmw-tr); }
.mmw-ticker-item::before { content:''; width:5px; height:5px; background:var(--mmw-accent); border-radius:50%; flex-shrink:0; }
.mmw-ticker-item:hover { color:var(--mmw-accent); }
@keyframes mmw-tick { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* ════════════════════════════════════════
   BREADCRUMBS
════════════════════════════════════════ */
.mmw-breadcrumbs { background:var(--mmw-alt); border-bottom:1px solid var(--mmw-b1); padding:8px 0; font-size:11.5px; color:var(--mmw-t3); }
.mmw-bc-inner { display:flex; align-items:center; flex-wrap:wrap; gap:5px; list-style:none; }
.mmw-bc-inner a { color:var(--mmw-t3); transition:color var(--mmw-tr); }
.mmw-bc-inner a:hover { color:var(--mmw-primary); }
.mmw-bc-sep { color:var(--mmw-t4); font-size:10px; }
.mmw-bc-current { color:var(--mmw-t2); font-weight:600; }

/* ════════════════════════════════════════
   AD ZONES (14 placements)
════════════════════════════════════════ */
.mmw-ad-wrap { text-align:center; }
.mmw-ad-label { display:block; font-size:8.5px; color:var(--mmw-t4); text-transform:uppercase; letter-spacing:.1em; margin-bottom:3px; }
.mmw-ad { display:inline-flex; align-items:center; justify-content:center; background:#FFF6F0; border:1.5px dashed #FDA46A; border-radius:var(--mmw-r2); color:#C05F1A; font-size:9.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
[data-mmw-theme="dark"] .mmw-ad { background:rgba(253,164,106,.05); border-color:rgba(253,164,106,.22); color:#FDA46A; }
.mmw-ad-728 { width:728px; max-width:100%; height:90px; }
.mmw-ad-970 { width:100%; height:160px; }
.mmw-ad-300 { width:100%; height:250px; }
.mmw-ad-600 { width:100%; height:560px; }
.mmw-ad-feed{ width:100%; height:80px; }
.mmw-ad-mob { width:100%; height:50px; }
.mmw-ad-row { margin:22px 0; text-align:center; }

/* ════════════════════════════════════════
   HERO GRID
════════════════════════════════════════ */
.mmw-hero { padding:16px 0 12px; }
.mmw-hero-grid {
  display:grid;
  grid-template-columns:1.55fr 1fr 276px;
  grid-template-rows:1fr 1fr;
  gap:3px; border-radius:var(--mmw-r4);
  overflow:hidden; background:var(--mmw-b1); min-height:440px;
}
/* Feature */
.mmw-feat { grid-row:1/3; position:relative; overflow:hidden; cursor:pointer; }
.mmw-feat-bg,.mmw-mid-bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.mmw-feat:hover .mmw-feat-bg,.mmw-mid:hover .mmw-mid-bg { transform:scale(1.04); }
.mmw-feat-ov { position:absolute; inset:0; background:linear-gradient(to top,rgba(4,13,31,.96) 0%,rgba(4,13,31,.28) 60%,transparent 100%); }
.mmw-feat-body { position:absolute; bottom:0; left:0; right:0; padding:22px; }
.mmw-feat-title { font-family:var(--mmw-fd); font-size:clamp(15px,1.8vw,23px); font-weight:800; color:#fff; line-height:1.22; margin:8px 0 10px; text-shadow:0 2px 10px rgba(0,0,0,.4); }
.mmw-feat-title a { color:inherit; transition:color var(--mmw-tr); }
.mmw-feat-title a:hover { color:var(--mmw-accent); }
.mmw-feat-meta { display:flex; align-items:center; gap:8px; font-size:11.5px; color:rgba(255,255,255,.44); flex-wrap:wrap; }
.mmw-feat-meta .sep { width:4px; height:4px; background:var(--mmw-accent); border-radius:50%; }
/* Mid */
.mmw-mid { position:relative; overflow:hidden; cursor:pointer; }
.mmw-mid-ov { position:absolute; inset:0; background:linear-gradient(to top,rgba(4,13,31,.93) 0%,transparent 100%); }
.mmw-mid-body { position:absolute; bottom:0; left:0; right:0; padding:14px; }
.mmw-mid-title { font-family:var(--mmw-fh); font-size:14px; font-weight:700; color:#fff; line-height:1.25; text-shadow:0 1px 5px rgba(0,0,0,.5); }
.mmw-mid-title a { color:inherit; transition:color var(--mmw-tr); }
.mmw-mid-title a:hover { color:var(--mmw-accent); }
.mmw-mid-meta { font-size:10.5px; color:rgba(255,255,255,.4); margin-top:5px; }
/* Rail */
.mmw-rail { background:var(--mmw-card); display:flex; flex-direction:column; }
.mmw-rail-item { display:flex; gap:10px; padding:11px 12px; align-items:flex-start; border-bottom:1px solid var(--mmw-b1); cursor:pointer; flex:1; transition:background var(--mmw-tr); }
.mmw-rail-item:last-child { border-bottom:none; }
.mmw-rail-item:hover { background:var(--mmw-alt); }
.mmw-rail-thumb { width:72px; height:52px; border-radius:var(--mmw-img-r); overflow:hidden; flex-shrink:0; }
.mmw-rail-thumb img { width:100%; height:100%; object-fit:cover; }
.mmw-rail-ph { width:100%; height:100%; background:linear-gradient(135deg,var(--mmw-ink),var(--mmw-ink2)); }
.mmw-rail-title { font-family:var(--mmw-fh); font-size:11.5px; font-weight:700; line-height:1.3; }
.mmw-rail-title a { color:var(--mmw-t1); transition:color var(--mmw-tr); }
.mmw-rail-title a:hover { color:var(--mmw-primary); }
.mmw-rail-meta { font-size:10px; color:var(--mmw-t3); margin-top:3px; }

/* ════════════════════════════════════════
   BADGES
════════════════════════════════════════ */
.mmw-badge { display:inline-block; font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; padding:2px 7px; border-radius:3px; line-height:1.7; }
.mmw-badge-primary  { background:var(--mmw-primary);  color:#fff; }
.mmw-badge-breaking { background:var(--mmw-breaking); color:#fff; }
.mmw-badge-success  { background:var(--mmw-success);  color:#fff; }
.mmw-badge-warning  { background:var(--mmw-warning);  color:#fff; }
.mmw-badge-purple   { background:var(--mmw-purple);   color:#fff; }
.mmw-badge-teal     { background:var(--mmw-teal);     color:#fff; }

/* ════════════════════════════════════════
   SECTION HEADINGS
════════════════════════════════════════ */
.mmw-sec-hd { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:18px; padding-bottom:10px; border-bottom:2px solid var(--mmw-b1); position:relative; }
.mmw-sec-hd::after { content:''; position:absolute; bottom:-2px; left:0; height:2px; width:46px; background:var(--mmw-primary); border-radius:2px; transition:width .22s; }
.mmw-sec-hd:hover::after { width:70px; }
.mmw-sec-title { font-size:12.5px; font-weight:800; text-transform:uppercase; letter-spacing:.09em; display:flex; align-items:center; gap:7px; }
.mmw-sec-more  { font-size:11px; font-weight:700; color:var(--mmw-primary); text-transform:uppercase; letter-spacing:.07em; flex-shrink:0; transition:color var(--mmw-tr); }
.mmw-sec-more:hover { color:var(--mmw-primary-d); }

/* ════════════════════════════════════════
   HOME BODY — 2 cols + sidebar
   Min 310px per col, 160px outer padding each side
════════════════════════════════════════ */
.mmw-home-grid {
  display:grid;
  grid-template-columns:minmax(310px,1fr) minmax(310px,1fr) var(--mmw-sidebar);
  gap:24px; padding:20px 0 36px; align-items:start;
}
.mmw-home-col { min-width:0; overflow:hidden; }

/* ════════════════════════════════════════
   CATEGORY BLOCK — top-5 list
════════════════════════════════════════ */
.mmw-cat-block { margin-bottom:32px; }
.mmw-cat-list  { display:flex; flex-direction:column; }
.mmw-cat-post  {
  display:flex; gap:11px; padding:10px 8px;
  align-items:flex-start; cursor:pointer;
  border-bottom:1px solid var(--mmw-b1); border-radius:var(--mmw-r);
  transition:background var(--mmw-tr), padding-left var(--mmw-tr), box-shadow var(--mmw-tr);
}
.mmw-cat-post:first-child { padding-top:4px; }
.mmw-cat-post:last-child  { border-bottom:none; padding-bottom:4px; }
.mmw-cat-post:hover {
  background:var(--mmw-alt); padding-left:14px;
  box-shadow:inset 3px 0 0 var(--mmw-primary);
}
.mmw-cat-thumb { width:88px; height:62px; border-radius:var(--mmw-img-r); overflow:hidden; flex-shrink:0; }
.mmw-cat-thumb img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s; }
.mmw-cat-post:hover .mmw-cat-thumb img { transform:scale(1.06); }
.mmw-cat-ph   { width:100%; height:100%; background:linear-gradient(135deg,var(--mmw-ink),var(--mmw-primary-d)); }
.mmw-cat-post-title { font-family:var(--mmw-fh); font-size:13px; font-weight:700; line-height:1.3; margin-bottom:5px; color:var(--mmw-t1); transition:color var(--mmw-tr); }
.mmw-cat-post:hover .mmw-cat-post-title { color:var(--mmw-primary); }
.mmw-cat-post-title a { color:inherit; }
.mmw-cat-post-meta  { font-size:10.5px; color:var(--mmw-t3); display:flex; gap:6px; flex-wrap:wrap; }
/* Layout variants — controlled from Customizer per block */
.mmw-layout-first .mmw-cat-post:not(:first-child) .mmw-cat-thumb { display:none; }
.mmw-layout-first .mmw-cat-post:not(:first-child) { gap:8px; }
.mmw-layout-first .mmw-cat-post:not(:first-child)::before { content:'▸'; font-size:9px; color:var(--mmw-primary); flex-shrink:0; margin-top:3px; }
.mmw-layout-bullets .mmw-cat-thumb { display:none; }
.mmw-layout-bullets .mmw-cat-post { gap:8px; }
.mmw-layout-bullets .mmw-cat-post::before { content:'▸'; font-size:9px; color:var(--mmw-primary); flex-shrink:0; margin-top:3px; }

/* ════════════════════════════════════════
   NEWS CARDS GRID
════════════════════════════════════════ */
.mmw-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.mmw-card {
  background:var(--mmw-card); border:1px solid var(--mmw-b1);
  border-radius:var(--mmw-r3); overflow:hidden;
  display:flex; flex-direction:column; cursor:pointer;
  transition:transform var(--mmw-tr),box-shadow var(--mmw-tr),border-color var(--mmw-tr);
}
.mmw-card:hover { transform:translateY(-4px); box-shadow:var(--mmw-s4); border-color:var(--mmw-primary); }
.mmw-card-img-w { overflow:hidden; flex-shrink:0; }
.mmw-card-img   { width:100%; height:172px; object-fit:cover; display:block; transition:transform .46s; }
.mmw-card:hover .mmw-card-img { transform:scale(1.05); }
.mmw-card-ph    { width:100%; height:172px; }
.mmw-card-body  { padding:14px; display:flex; flex-direction:column; flex:1; }
.mmw-card-body .mmw-badge { margin-bottom:8px; }
.mmw-card-title { font-family:var(--mmw-fh); font-size:15px; font-weight:700; line-height:1.28; margin-bottom:8px; flex:1; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; color:var(--mmw-t1); transition:color var(--mmw-tr); }
.mmw-card:hover .mmw-card-title { color:var(--mmw-primary); }
.mmw-card-title a { color:inherit; }
.mmw-card-excerpt { font-family:var(--mmw-fb); font-size:12.5px; color:var(--mmw-t3); line-height:1.55; margin-bottom:10px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.mmw-card-meta  { display:flex; align-items:center; gap:6px; font-size:10.5px; color:var(--mmw-t4); padding-top:9px; border-top:1px solid var(--mmw-b2); flex-wrap:wrap; }
.mmw-card-av    { width:20px; height:20px; border-radius:50%; overflow:hidden; flex-shrink:0; }
.mmw-card-av img{ width:100%; height:100%; object-fit:cover; }
.mmw-card-read  { margin-left:auto; }

/* ════════════════════════════════════════
   SIDEBAR & WIDGETS
════════════════════════════════════════ */
.mmw-sidebar { display:flex; flex-direction:column; gap:20px; }
.mmw-widget  { background:var(--mmw-card); border:1px solid var(--mmw-b1); border-radius:var(--mmw-r3); overflow:hidden; }
.mmw-widget-head { padding:10px 14px; background:var(--mmw-alt); border-bottom:1px solid var(--mmw-b1); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; display:flex; align-items:center; gap:8px; }
.mmw-widget-head::before { content:''; width:3px; height:13px; background:var(--mmw-primary); border-radius:2px; flex-shrink:0; }
.mmw-widget-body { padding:14px; }

/* Trending */
.mmw-trend-list { display:flex; flex-direction:column; }
.mmw-trend { display:flex; gap:10px; align-items:flex-start; padding:10px 6px; border-bottom:1px solid var(--mmw-b2); cursor:pointer; border-radius:var(--mmw-r); transition:all var(--mmw-tr); }
.mmw-trend:hover { background:var(--mmw-alt); padding-left:10px; }
.mmw-trend:last-child { border-bottom:none; }
.mmw-trend-num  { font-family:var(--mmw-fh); font-size:22px; font-weight:900; color:var(--mmw-b1); line-height:1; min-width:28px; flex-shrink:0; transition:color var(--mmw-tr); }
.mmw-trend:hover .mmw-trend-num { color:var(--mmw-primary); }
.mmw-trend h4   { font-family:var(--mmw-fh); font-size:12.5px; font-weight:700; line-height:1.3; }
.mmw-trend h4 a { color:var(--mmw-t1); transition:color var(--mmw-tr); }
.mmw-trend h4 a:hover { color:var(--mmw-primary); }
.mmw-trend-meta { font-size:10px; color:var(--mmw-t3); margin-top:3px; }

/* Newsletter widget */
.mmw-nl-widget { background:linear-gradient(135deg,var(--mmw-ink),#0D1E4A); border-radius:var(--mmw-r3); padding:18px; text-align:center; border:1px solid rgba(0,87,255,.18); }
.mmw-nl-widget h3 { font-family:var(--mmw-fh); font-size:17px; color:#fff; margin-bottom:5px; }
.mmw-nl-widget p  { font-size:11.5px; color:rgba(255,255,255,.44); margin-bottom:14px; line-height:1.6; }
.mmw-nl-form  { display:flex; flex-direction:column; gap:8px; }
.mmw-nl-input { padding:9px 12px; border:1.5px solid rgba(255,255,255,.11); border-radius:var(--mmw-r); background:rgba(255,255,255,.06); color:#fff; font-size:12.5px; outline:none; width:100%; transition:border-color var(--mmw-tr); }
.mmw-nl-input:focus { border-color:var(--mmw-accent); }
.mmw-nl-input::placeholder { color:rgba(255,255,255,.24); }
.mmw-nl-btn   { padding:9px; background:var(--mmw-primary); color:#fff; border:none; border-radius:var(--mmw-r); font-weight:800; font-size:12.5px; cursor:pointer; width:100%; transition:background var(--mmw-tr); }
.mmw-nl-btn:hover { background:var(--mmw-primary-d); }

/* Tags cloud */
.mmw-tags { display:flex; flex-wrap:wrap; gap:6px; }
.mmw-tag  { font-size:11px; font-weight:700; padding:4px 10px; border:1.5px solid var(--mmw-b1); border-radius:20px; color:var(--mmw-t3); cursor:pointer; transition:all var(--mmw-tr); }
.mmw-tag:hover { border-color:var(--mmw-primary); color:var(--mmw-primary); }

/* Sidebar mini posts */
.mmw-mini-post { display:flex; gap:10px; padding:11px 14px; border-bottom:1px solid var(--mmw-b1); cursor:pointer; transition:background var(--mmw-tr); }
.mmw-mini-post:last-child { border-bottom:none; }
.mmw-mini-post:hover { background:var(--mmw-alt); }
.mmw-mini-thumb { width:76px; height:54px; border-radius:var(--mmw-img-r); flex-shrink:0; overflow:hidden; }
.mmw-mini-thumb img { width:100%; height:100%; object-fit:cover; }
.mmw-mini-ph  { width:100%; height:100%; background:linear-gradient(135deg,var(--mmw-ink),var(--mmw-ink2)); }
.mmw-mini-title { font-size:12px; font-weight:700; line-height:1.3; color:var(--mmw-t1); transition:color var(--mmw-tr); }
.mmw-mini-post:hover .mmw-mini-title { color:var(--mmw-primary); }
.mmw-mini-title a { color:inherit; }
.mmw-mini-meta  { font-size:10px; color:var(--mmw-t3); margin-top:3px; }

/* ════════════════════════════════════════
   ARCHIVE / CATEGORY PAGE
════════════════════════════════════════ */
.mmw-archive-banner { padding:28px 0; background:linear-gradient(135deg,var(--mmw-ink),var(--mmw-ink2)); border-bottom:3px solid var(--mmw-primary); }
.mmw-archive-lbl  { font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.18em; color:rgba(255,255,255,.32); margin-bottom:5px; }
.mmw-archive-title{ font-family:var(--mmw-fd); color:#fff; margin-bottom:7px; font-size:clamp(1.5rem,3.5vw,2.5rem); }
.mmw-archive-title .mmw-hl { color:var(--mmw-accent); }
.mmw-archive-desc { font-family:var(--mmw-fb); font-size:13px; color:rgba(255,255,255,.48); max-width:560px; line-height:1.7; }
.mmw-archive-layout { display:grid; grid-template-columns:1fr var(--mmw-sidebar); gap:24px; padding:24px 0 40px; align-items:start; }
.mmw-archive-layout .mmw-cards-grid { grid-template-columns:1fr 1fr; }

/* ════════════════════════════════════════
   SINGLE ARTICLE
════════════════════════════════════════ */
#mmw-reading-progress { position:fixed; top:0; left:0; height:3px; width:0%; background:linear-gradient(90deg,var(--mmw-primary),var(--mmw-accent)); z-index:9999; pointer-events:none; transition:width .1s linear; }
.mmw-single-layout { display:grid; grid-template-columns:1fr var(--mmw-sidebar); gap:24px; padding:22px 0 40px; align-items:start; }
.mmw-article-cats  { display:flex; gap:7px; flex-wrap:wrap; margin-bottom:10px; }
.mmw-article-title { font-family:var(--mmw-fd); font-size:clamp(1.5rem,3vw,2.4rem); line-height:1.18; margin-bottom:12px; font-weight:700; }
.mmw-article-sub   { font-family:var(--mmw-fb); font-size:1.05rem; color:var(--mmw-t2); line-height:1.65; margin-bottom:16px; font-style:italic; }
.mmw-byline { display:flex; align-items:center; gap:12px; padding:13px 0; border-top:1px solid var(--mmw-b1); border-bottom:1px solid var(--mmw-b1); margin-bottom:22px; flex-wrap:wrap; }
.mmw-byline-av { width:44px; height:44px; border-radius:50%; overflow:hidden; flex-shrink:0; }
.mmw-byline-av img { width:100%; height:100%; object-fit:cover; }
.mmw-byline-name { font-weight:700; font-size:13px; }
.mmw-byline-name a { color:var(--mmw-primary); }
.mmw-byline-date { font-size:11.5px; color:var(--mmw-t3); }
.mmw-share-btns  { margin-left:auto; display:flex; gap:6px; flex-wrap:wrap; }
.mmw-share-btn   { display:inline-flex; align-items:center; gap:4px; padding:5px 11px; border:1.5px solid var(--mmw-b1); border-radius:20px; font-size:11px; font-weight:700; color:var(--mmw-t3); background:var(--mmw-card); cursor:pointer; transition:all var(--mmw-tr); }
.mmw-share-btn:hover { border-color:var(--mmw-primary); color:var(--mmw-primary); }
.mmw-article-hero { border-radius:var(--mmw-img-r); overflow:hidden; margin-bottom:7px; }
.mmw-article-hero img { width:100%; max-height:520px; object-fit:cover; }
.mmw-article-cap  { font-size:11.5px; color:var(--mmw-t3); font-style:italic; margin-bottom:22px; }
/* Article body typography */
.mmw-article-body { font-family:var(--mmw-fb); font-size:16.5px; line-height:1.88; color:var(--mmw-t2); }
.mmw-article-body p { margin-bottom:1.3rem; }
.mmw-article-body h2 { font-family:var(--mmw-fh); font-size:1.45rem; margin:2.2rem 0 .8rem; padding-top:.8rem; border-top:1px solid var(--mmw-b1); color:var(--mmw-t1); }
.mmw-article-body h3 { font-family:var(--mmw-fh); font-size:1.18rem; margin:1.6rem 0 .6rem; color:var(--mmw-t1); }
.mmw-article-body a  { color:var(--mmw-primary); text-decoration:underline; text-underline-offset:3px; }
.mmw-article-body ul { list-style:disc; padding-left:1.5rem; margin-bottom:1.3rem; }
.mmw-article-body ol { list-style:decimal; padding-left:1.5rem; margin-bottom:1.3rem; }
.mmw-article-body li { margin-bottom:.45rem; }
.mmw-article-body blockquote { border-left:4px solid var(--mmw-primary); margin:1.8rem 0; padding:13px 20px; background:var(--mmw-alt); border-radius:0 var(--mmw-r3) var(--mmw-r3) 0; font-style:italic; color:var(--mmw-t2); }
.mmw-article-body table { width:100%; border-collapse:collapse; font-size:14px; margin-bottom:1.3rem; }
.mmw-article-body th,.mmw-article-body td { padding:9px 12px; border:1px solid var(--mmw-b1); text-align:left; }
.mmw-article-body th { background:var(--mmw-alt); font-weight:700; font-size:13px; }
.mmw-article-body img { border-radius:var(--mmw-img-r); margin:1.3rem 0; }
/* Tags */
.mmw-article-tags { display:flex; flex-wrap:wrap; gap:6px; margin:22px 0; }
.mmw-article-tag  { font-size:11.5px; font-weight:700; padding:4px 12px; background:var(--mmw-alt); border:1.5px solid var(--mmw-b1); border-radius:20px; color:var(--mmw-t3); transition:all var(--mmw-tr); }
.mmw-article-tag:hover { border-color:var(--mmw-primary); color:var(--mmw-primary); }
/* Author box */
.mmw-author-box { display:flex; gap:14px; padding:18px; background:var(--mmw-alt); border-radius:var(--mmw-r3); border:1px solid var(--mmw-b1); margin:24px 0; }
.mmw-author-box-av { width:64px; height:64px; border-radius:50%; overflow:hidden; flex-shrink:0; }
.mmw-author-box-av img { width:100%; height:100%; object-fit:cover; }
.mmw-author-box-name { font-weight:800; font-size:14px; margin-bottom:4px; }
.mmw-author-box-bio  { font-size:12.5px; color:var(--mmw-t3); line-height:1.6; }

/* ════════════════════════════════════════
   RELATED POSTS — 2-col desktop, 1-col mobile, hover highlight
════════════════════════════════════════ */
.mmw-related { padding:24px 0; border-top:2px solid var(--mmw-b1); margin-top:8px; }
.mmw-related-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.mmw-rel-card {
  background:var(--mmw-card); border:1px solid var(--mmw-b1);
  border-radius:var(--mmw-r3); overflow:hidden; cursor:pointer;
  transition:transform var(--mmw-tr),box-shadow var(--mmw-tr),border-color var(--mmw-tr);
}
.mmw-rel-card:hover { transform:translateY(-4px); box-shadow:var(--mmw-s4); border-color:var(--mmw-primary); }
.mmw-rel-thumb     { overflow:hidden; }
.mmw-rel-thumb img { width:100%; height:140px; object-fit:cover; transition:transform .42s; display:block; }
.mmw-rel-card:hover .mmw-rel-thumb img { transform:scale(1.05); }
.mmw-rel-ph  { width:100%; height:140px; background:linear-gradient(135deg,var(--mmw-ink),var(--mmw-ink2)); }
.mmw-rel-body{ padding:12px; }
.mmw-rel-body .mmw-badge { margin-bottom:7px; display:inline-block; }
.mmw-rel-title { font-family:var(--mmw-fh); font-size:13px; font-weight:700; line-height:1.3; margin-bottom:5px; color:var(--mmw-t1); transition:color var(--mmw-tr); }
.mmw-rel-card:hover .mmw-rel-title { color:var(--mmw-primary); }
.mmw-rel-title a { color:inherit; }
.mmw-rel-meta  { font-size:10.5px; color:var(--mmw-t3); }

/* In-article TOC */
.mmw-toc { background:var(--mmw-alt); border:1px solid var(--mmw-b1); border-left:3px solid var(--mmw-primary); border-radius:var(--mmw-r3); padding:16px 18px; margin:22px 0; }
.mmw-toc-title { font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; margin-bottom:10px; }
.mmw-toc ol { list-style:decimal; padding-left:1.2rem; }
.mmw-toc li { font-size:13px; margin-bottom:6px; }
.mmw-toc a  { color:var(--mmw-primary); }
.mmw-toc a.active { font-weight:700; }

/* ════════════════════════════════════════
   PILLAR PAGE
════════════════════════════════════════ */
.mmw-pillar-hero { padding:50px 0; text-align:center; background:linear-gradient(135deg,var(--mmw-ink),var(--mmw-ink2)); border-bottom:3px solid var(--mmw-primary); }
.mmw-pillar-hero h1 { font-family:var(--mmw-fd); color:#fff; font-size:clamp(2rem,4.5vw,3.5rem); margin-bottom:14px; }
.mmw-pillar-hero h1 .mmw-hl { color:var(--mmw-accent); }
.mmw-pillar-sub    { font-family:var(--mmw-fb); color:rgba(255,255,255,.55); font-size:1.1rem; max-width:640px; margin:0 auto; line-height:1.7; }
.mmw-pillar-body   { display:grid; grid-template-columns:1fr var(--mmw-sidebar); gap:24px; padding:24px 0 40px; align-items:start; }
.mmw-pillar-toc    { background:var(--mmw-card); border:1px solid var(--mmw-b1); border-radius:var(--mmw-r3); padding:18px; margin-bottom:24px; position:sticky; top:70px; }
.mmw-pillar-toc-title { font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; margin-bottom:12px; padding-bottom:8px; border-bottom:2px solid var(--mmw-b1); }
.mmw-pillar-toc ol { list-style:decimal; padding-left:1.4rem; }
.mmw-pillar-toc li { font-size:14px; margin-bottom:8px; }
.mmw-pillar-toc a  { color:var(--mmw-primary); transition:color var(--mmw-tr); }
.mmw-pillar-toc a:hover,.mmw-pillar-toc a.active { color:var(--mmw-primary-d); font-weight:700; }
.mmw-pillar-section { margin-bottom:40px; padding-top:24px; border-top:2px solid var(--mmw-b1); }
.mmw-pillar-section:first-child { border-top:none; padding-top:0; }
.mmw-pillar-section h2 { font-family:var(--mmw-fd); font-size:clamp(1.3rem,2.5vw,1.9rem); margin-bottom:14px; }
.mmw-pillar-related { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:22px; }

/* ════════════════════════════════════════
   TELUGU / REGIONAL LANGUAGE PAGE
════════════════════════════════════════ */
.mmw-te-hero { background:linear-gradient(135deg,#040D1F,#0A1528); padding:28px 0; border-bottom:3px solid var(--mmw-primary); }
.mmw-te-hero h1 { font-family:var(--mmw-ft); color:#fff; font-size:clamp(1.6rem,3vw,2.6rem); }
.mmw-te-hero p  { font-family:var(--mmw-ft); color:rgba(255,255,255,.48); font-size:14px; margin-top:6px; }
.mmw-te-layout  { display:grid; grid-template-columns:1fr var(--mmw-sidebar); gap:24px; padding:22px 0 40px; align-items:start; }
.mmw-te-cat-block { margin-bottom:28px; }
.mmw-te-block-title { font-family:var(--mmw-ft); font-size:17px; font-weight:700; }
/* Cards in Telugu */
.mmw-te-card { background:var(--mmw-card); border:1px solid var(--mmw-b1); border-radius:var(--mmw-r3); overflow:hidden; display:flex; gap:12px; padding:12px; cursor:pointer; transition:all var(--mmw-tr); }
.mmw-te-card:hover { border-color:var(--mmw-primary); box-shadow:var(--mmw-s3); transform:translateX(4px); }
.mmw-te-card-thumb { width:100px; height:70px; border-radius:var(--mmw-img-r); overflow:hidden; flex-shrink:0; }
.mmw-te-card-thumb img { width:100%; height:100%; object-fit:cover; }
.mmw-te-card-title { font-family:var(--mmw-ft); font-size:14px; font-weight:700; line-height:1.6; color:var(--mmw-t1); transition:color var(--mmw-tr); }
.mmw-te-card:hover .mmw-te-card-title { color:var(--mmw-primary); }
.mmw-te-card-title a { color:inherit; }
.mmw-te-card-meta  { font-family:var(--mmw-ft); font-size:11px; color:var(--mmw-t3); margin-top:4px; }

/* ════════════════════════════════════════
   PAGINATION
════════════════════════════════════════ */
.mmw-pagination { display:flex; justify-content:center; gap:5px; padding:24px 0; flex-wrap:wrap; }
.page-numbers    { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border:1.5px solid var(--mmw-b1); border-radius:var(--mmw-r); font-size:13px; font-weight:700; color:var(--mmw-t3); background:var(--mmw-card); transition:all var(--mmw-tr); }
.page-numbers:hover,.page-numbers.current { background:var(--mmw-primary); border-color:var(--mmw-primary); color:#fff; }
.page-numbers.dots { border-color:transparent; background:none; width:auto; }
.mmw-load-more   { text-align:center; margin:24px 0; }
.mmw-btn-load    { padding:11px 34px; background:var(--mmw-primary); color:#fff; border:none; border-radius:var(--mmw-r3); font-weight:800; font-size:13px; cursor:pointer; letter-spacing:.06em; text-transform:uppercase; transition:all var(--mmw-tr); }
.mmw-btn-load:hover { background:var(--mmw-primary-d); transform:translateY(-1px); }
.mmw-btn-load:disabled { opacity:.6; cursor:not-allowed; transform:none; }

/* ════════════════════════════════════════
   FOOTER
════════════════════════════════════════ */
.mmw-footer     { background:var(--mmw-ink); color:rgba(255,255,255,.52); }
.mmw-footer-ad  { background:var(--mmw-ink2); border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06); padding:10px 0; text-align:center; }
.mmw-footer-grid{ display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr; gap:34px; padding:36px 0 24px; border-bottom:1px solid rgba(255,255,255,.07); }
.mmw-footer-brand-name { font-family:var(--mmw-fh); font-size:22px; font-weight:900; color:#fff; margin-bottom:3px; }
.mmw-footer-brand-name .mmw-ac { color:var(--mmw-accent); }
.mmw-footer-tagline { font-size:9px; color:rgba(255,255,255,.2); text-transform:uppercase; letter-spacing:.15em; margin-bottom:12px; font-weight:700; }
.mmw-footer-about   { font-size:12px; color:rgba(255,255,255,.34); line-height:1.75; margin-bottom:14px; }
.mmw-footer-social  { display:flex; gap:7px; flex-wrap:wrap; }
.mmw-soc-btn { width:32px; height:32px; border-radius:50%; border:1px solid rgba(255,255,255,.13); display:flex; align-items:center; justify-content:center; font-size:11px; color:rgba(255,255,255,.36); font-weight:700; text-decoration:none; transition:all var(--mmw-tr); }
.mmw-soc-btn:hover { border-color:var(--mmw-accent); color:var(--mmw-accent); }
.mmw-footer-col-title { font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.13em; color:rgba(255,255,255,.72); margin-bottom:13px; padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.07); }
.mmw-footer-links   { display:flex; flex-direction:column; gap:9px; }
.mmw-footer-links a { font-size:12px; color:rgba(255,255,255,.34); transition:color var(--mmw-tr); }
.mmw-footer-links a:hover { color:rgba(255,255,255,.75); }
.mmw-footer-bottom  { display:flex; align-items:center; justify-content:space-between; padding:13px 0; font-size:11px; flex-wrap:wrap; gap:8px; color:rgba(255,255,255,.22); }
.mmw-footer-bl      { display:flex; gap:16px; }
.mmw-footer-bl a    { color:rgba(255,255,255,.2); transition:color var(--mmw-tr); }
.mmw-footer-bl a:hover { color:rgba(255,255,255,.6); }

/* Mobile anchor ad */
#mmw-mob-ad { display:none; position:fixed; bottom:0; left:0; right:0; z-index:8000; background:var(--mmw-ink); border-top:1px solid rgba(255,255,255,.08); padding:3px 0; text-align:center; }
#mmw-mob-ad-close { position:absolute; top:4px; right:10px; background:none; border:none; color:rgba(255,255,255,.4); font-size:16px; cursor:pointer; line-height:1; }

/* Search overlay */
.mmw-search-ov  { position:fixed; top:0; left:0; right:0; z-index:9000; padding:80px 20px 0; opacity:0; pointer-events:none; transition:opacity .2s; }
.mmw-search-ov.active { opacity:1; pointer-events:all; }
.mmw-search-bg  { position:fixed; inset:0; background:rgba(4,13,31,.92); backdrop-filter:blur(8px); z-index:8999; opacity:0; pointer-events:none; transition:opacity .2s; }
.mmw-search-bg.active { opacity:1; pointer-events:all; }
.mmw-search-box { max-width:640px; margin:0 auto; position:relative; }
.mmw-search-form { display:flex; align-items:center; position:relative; }
.mmw-search-form input[type="search"] { width:100%; background:rgba(255,255,255,.07); border:2px solid rgba(255,255,255,.13); border-radius:var(--mmw-r3); color:#fff; font-family:var(--mmw-fh); font-size:1.4rem; padding:15px 52px 15px 22px; outline:none; transition:border-color var(--mmw-tr); }
.mmw-search-form input:focus { border-color:var(--mmw-accent); }
.mmw-search-form input::placeholder { color:rgba(255,255,255,.2); }
.mmw-search-form button[type="submit"] { position:absolute; right:16px; background:none; border:none; cursor:pointer; color:rgba(255,255,255,.44); transition:color var(--mmw-tr); }
.mmw-search-form button[type="submit"]:hover { color:var(--mmw-accent); }
.mmw-search-close { position:absolute; top:-50px; right:0; background:rgba(255,255,255,.1); border:none; cursor:pointer; color:rgba(255,255,255,.5); width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:18px; transition:all var(--mmw-tr); }
.mmw-search-close:hover { background:rgba(255,255,255,.2); color:#fff; }
.mmw-search-hint { font-size:11px; color:rgba(255,255,255,.18); text-align:center; margin-top:10px; }
.mmw-search-hint kbd { background:rgba(255,255,255,.1); padding:1px 5px; border-radius:3px; font-size:10px; font-family:monospace; }

/* ════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════ */

/* Large desktop: 3-col home stays intact all the way down to 1024px */
@media(max-width:1100px){
  :root{ --mmw-sidebar:240px; }
  .mmw-footer-grid { grid-template-columns:1.4fr 1fr 1fr; gap:22px; }
  .mmw-rail { display:grid!important; grid-template-columns:repeat(4,1fr); }
  .mmw-rail-item { border-bottom:none!important; border-right:1px solid var(--mmw-b1); }
  .mmw-rail-item:last-child { border-right:none; }
}

/* Tablet landscape: 2-col home, sidebar moves below */
@media(max-width:1023px){
  :root{ --mmw-sidebar:220px; }
  .mmw-home-grid { grid-template-columns:1fr 1fr; }
  .mmw-home-grid .mmw-sidebar { grid-column:1/3; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .mmw-footer-grid { grid-template-columns:1fr 1fr; gap:20px; }
  .mmw-hero-grid { grid-template-columns:1.4fr 1fr; }
  .mmw-single-layout,.mmw-archive-layout,.mmw-pillar-body,.mmw-te-layout { grid-template-columns:1fr; }
  .mmw-pillar-toc { position:static; }
  .mmw-pillar-related { grid-template-columns:1fr 1fr; }
  .mmw-archive-layout .mmw-cards-grid { grid-template-columns:1fr 1fr; }
}

/* Tablet portrait */
@media(max-width:768px){
  .mmw-home-grid { grid-template-columns:1fr!important; }
  .mmw-home-grid .mmw-sidebar { grid-column:auto; display:flex!important; }
  .mmw-hero-grid { grid-template-columns:1fr!important; grid-template-rows:auto; }
  .mmw-feat { grid-row:auto; min-height:250px; }
  .mmw-rail { grid-column:auto; display:grid!important; grid-template-columns:1fr 1fr; }
  .mmw-rail-item { border-right:none!important; border-bottom:1px solid var(--mmw-b1)!important; }
  .mmw-archive-layout .mmw-cards-grid { grid-template-columns:1fr 1fr; }
  .mmw-cards-grid { grid-template-columns:1fr 1fr; }
}

/* Mobile */
@media(max-width:600px){
  .mmw-primary-nav,.mmw-sub-btn { display:none!important; }
  .mmw-hamburger { display:flex!important; }
  .mmw-hdr-ad    { display:none; }
  .mmw-topbar-tagline,.mmw-topbar-sep { display:none; }
  #mmw-mob-ad    { display:block; }
  body           { padding-bottom:58px; }
  .mmw-cards-grid { grid-template-columns:1fr!important; }
  .mmw-related-grid { grid-template-columns:1fr!important; }
  .mmw-pillar-related { grid-template-columns:1fr!important; }
  .mmw-archive-layout .mmw-cards-grid { grid-template-columns:1fr; }
  .mmw-byline    { flex-direction:column; align-items:flex-start; }
  .mmw-share-btns { margin-left:0; }
  .mmw-footer-grid { grid-template-columns:1fr 1fr; gap:14px; }
  .mmw-footer-bottom { flex-direction:column; align-items:center; text-align:center; }
}

@media(max-width:420px){
  .mmw-footer-grid { grid-template-columns:1fr; }
  .mmw-rail { grid-template-columns:1fr!important; }
  .mmw-mid  { min-height:160px; }
}

@media print{
  .mmw-header,.mmw-topbar,.mmw-ticker,.mmw-hdr-ad,
  .mmw-footer,.mmw-related,.mmw-ad,.mmw-ad-wrap,
  #mmw-progress,.mmw-sidebar,.mmw-share-btns,
  #mmw-mob-ad,.mmw-search-ov,.mmw-search-bg { display:none!important; }
  .mmw-single-layout,.mmw-archive-layout { grid-template-columns:1fr; }
  .mmw-article-body { font-size:12pt; line-height:1.7; }
}

/* ════════════════════════════════════════
   HERO SLIDESHOW
════════════════════════════════════════ */
.mmw-feat { position:relative; }

/* All slides stacked */
.mmw-slide {
  position:absolute; inset:0;
  opacity:0; transition:opacity .7s ease;
  pointer-events:none;
}
.mmw-slide-active {
  opacity:1; position:relative;
  pointer-events:auto;
}
/* When no slideshow, single slide behaves normally */
.mmw-feat:not([data-slideshow]) .mmw-slide {
  position:relative; opacity:1; pointer-events:auto;
}

/* Slide nav bar */
.mmw-slide-nav {
  position:absolute; bottom:14px; left:0; right:0; z-index:10;
  display:flex; align-items:center; justify-content:center; gap:10px;
}
.mmw-slide-prev,
.mmw-slide-next {
  background:rgba(255,255,255,.18); border:none; color:#fff;
  width:30px; height:30px; border-radius:50%; cursor:pointer;
  font-size:18px; line-height:1; display:flex; align-items:center;
  justify-content:center; transition:background var(--mmw-tr);
  flex-shrink:0;
}
.mmw-slide-prev:hover,
.mmw-slide-next:hover { background:rgba(255,255,255,.38); }

/* Dots */
.mmw-slide-dots { display:flex; gap:6px; align-items:center; }
.mmw-dot {
  width:7px; height:7px; border-radius:50%;
  background:rgba(255,255,255,.35); border:none; cursor:pointer;
  padding:0; transition:background var(--mmw-tr), transform var(--mmw-tr);
}
.mmw-dot-active { background:#fff; transform:scale(1.3); }

/* ════════════════════════════════════════
   EXTRA BLOCKS (11 & 12) full-width row
════════════════════════════════════════ */
.mmw-extra-blocks {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px; margin-bottom:0;
}
@media(max-width:768px){
  .mmw-extra-blocks { grid-template-columns:1fr; }
}

/* ════════════════════════════════════════
   RELATED POSTS — 3-col option
════════════════════════════════════════ */
.mmw-related-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.mmw-related-cols-3 { grid-template-columns:repeat(3,1fr); }
@media(max-width:768px){
  .mmw-related-cols-3 { grid-template-columns:1fr 1fr; }
}
@media(max-width:600px){
  .mmw-related-grid,
  .mmw-related-cols-3 { grid-template-columns:1fr!important; }
}

/* ════════════════════════════════════════
   ARCHIVE CARDS — 3-col option
════════════════════════════════════════ */
.mmw-cards-cols-3 { grid-template-columns:repeat(3,1fr)!important; }
@media(max-width:768px){
  .mmw-cards-cols-3 { grid-template-columns:1fr 1fr!important; }
}
@media(max-width:600px){
  .mmw-cards-cols-3 { grid-template-columns:1fr!important; }
}
