/* ==========================================================================
   THEME · Editorial  —  newspaper / magazine. Crisp serif, ruled lines, red.
   Ink black on off-white with a single red accent. Print, news, blogs, media.
   ========================================================================== */
body.theme-editorial {
  --font-head: "DM Serif Display", Georgia, serif;
  --font-body: "Newsreader", Georgia, serif;

  --color-bg:        #f7f4ee;
  --color-surface:   #fffdf8;
  --color-surface-2: #eee9df;
  --color-text:      #16130e;
  --color-muted:     #5c564c;
  --color-border:    #16130e;

  --color-primary:          #16130e;   /* ink */
  --color-primary-contrast: #fffdf8;
  --color-secondary:        #9a1f16;   /* editorial red */
  --color-accent:           #9a1f16;

  --color-success: #2f6b3a;
  --color-warn:    #a9791b;
  --color-error:   #9a1f16;

  --radius-sm: 0px;
  --radius:    0px;
  --radius-lg: 0px;
  --border-width: 1px;
  --shadow-sm: none;
  --shadow:    none;
  --shadow-lg: none;
}

/* Personality: hard rules, no radius, uppercase kickers, tight columns */
body.theme-editorial h1, body.theme-editorial h2, body.theme-editorial h3,
body.theme-editorial .card-title, body.theme-editorial .hero h3 { font-weight: 400; letter-spacing: -0.01em; }
body.theme-editorial .btn { border-radius: 0; border: 1.5px solid #16130e; text-transform: uppercase; letter-spacing: .12em; font-size: .78rem; font-weight: 700; font-family: "Newsreader", serif; }
body.theme-editorial .btn:hover { transform: none; background: #16130e; color: #fffdf8; box-shadow: none; }
body.theme-editorial .btn-secondary, body.theme-editorial .btn-accent { background: #9a1f16; color: #fffdf8; }
body.theme-editorial .btn-outline { color: #16130e; }
body.theme-editorial .badge { border-radius: 0; border: 1px solid #16130e; text-transform: uppercase; letter-spacing: .1em; background: transparent; color: #16130e; }
body.theme-editorial .badge-solid { background: #16130e; color: #fffdf8; }
body.theme-editorial .badge-accent { background: #9a1f16; color: #fffdf8; border-color: #9a1f16; }
body.theme-editorial .card,
body.theme-editorial .pricing,
body.theme-editorial .testimonial,
body.theme-editorial .stat { border-radius: 0; border: 1.5px solid #16130e; box-shadow: none; }
body.theme-editorial .card:hover { transform: none; box-shadow: 5px 5px 0 #16130e; }
body.theme-editorial .card-eyebrow,
body.theme-editorial .plan { color: #9a1f16; text-transform: uppercase; letter-spacing: .14em; font-weight: 700; font-family: "Newsreader", serif; }
body.theme-editorial .card-media { background: repeating-linear-gradient(0deg, #16130e 0 2px, #f7f4ee 2px 5px); }
body.theme-editorial .input, body.theme-editorial .textarea, body.theme-editorial .select { border-radius: 0; border: 1.5px solid #16130e; background: #fffdf8; }
body.theme-editorial .hero { border-radius: 0; border: 2px solid #16130e; background: #fffdf8; color: #16130e; }
body.theme-editorial .hero p { color: #5c564c; }
body.theme-editorial .hero .badge { background: #9a1f16; color: #fffdf8; border-color: #9a1f16; }
body.theme-editorial .hero .btn { border-color: #16130e; color: #16130e; }
body.theme-editorial .hero .btn:hover { background: #16130e; color: #fffdf8; }
body.theme-editorial .navbar { border-radius: 0; background: #16130e; }
body.theme-editorial .footer-demo { border-radius: 0; background: #16130e; }
body.theme-editorial .stat .num { color: #9a1f16; }
body.theme-editorial .table-wrap { border-radius: 0; border: 1.5px solid #16130e; }
body.theme-editorial .progress { border-radius: 0; border: 1px solid #16130e; }
body.theme-editorial .progress > span { background: #9a1f16; }
body.theme-editorial .doc-canvas { background: #f7f4ee; }
