/*
 * Zeyep Editorial Style 3.2
 * Editorial hierarchy inspired by modern French recipe publishing.
 * No external fonts, no SEO/content changes, no header layout changes.
 */

:root {
  --zeyep-text: #403c35;
  --zeyep-heading: #2f2b24;
  --zeyep-soft-text: #5a554d;
  --zeyep-rule: #e8dfc8;
  --zeyep-accent: #2e4b3b;
  --zeyep-paper-soft: #faf9f5;
}

/* Base reading comfort without disturbing navigation controls. */
body.zeyep-editorial-style {
  color: var(--zeyep-text);
  text-rendering: optimizeLegibility;
}

/* ---------- RECIPE HERO ---------- */
.single-post .recipe-intro h1,
.single .recipe-intro h1 {
  font-size: clamp(46px, 4.35vw, 61px);
  line-height: 1.055;
  font-weight: 700;
  letter-spacing: -0.038em;
  color: var(--zeyep-heading);
  margin: 13px 0 17px;
  text-wrap: balance;
}

.single-post .recipe-intro .meta,
.single .recipe-intro .meta {
  font-size: 11.5px;
  line-height: 1.55;
  color: #5e675f;
  gap: 15px;
}

.single-post .recipe-intro .intro-text,
.single .recipe-intro .intro-text {
  max-width: 690px;
  margin-top: 19px;
  font-size: 18px;
  line-height: 1.78;
  color: #353c37;
}

.single-post .recipe-tools,
.single .recipe-tools {
  margin-top: 25px;
}

.single-post .recipe-tools .button,
.single .recipe-tools .button {
  font-size: 12.5px;
  font-weight: 650;
}


.single-post .editorial-content .zeyep-editorial-point,
.single .editorial-content .zeyep-editorial-point {
  margin: 0 0 30px;
  color: var(--zeyep-text);
}

.single-post .editorial-content .zeyep-editorial-point strong,
.single .editorial-content .zeyep-editorial-point strong {
  font-weight: 800;
  color: #2f2b24;
}

/* Preserve the two-block pre-recipe introduction created by Recipe Factory 2.1. */
.single-post .recipe-intro .intro-text,
.single .recipe-intro .intro-text {
  white-space: pre-line;
}

/* ---------- RECIPE CARD ---------- */
.single-post .recipe-sheet,
.single .recipe-sheet {
  border-color: #dedfd9;
  box-shadow: 0 1px 0 rgba(38, 59, 50, .02);
}

.single-post .sheet-heading h2,
.single .sheet-heading h2 {
  font-size: clamp(30px, 3vw, 35px);
  line-height: 1.13;
  font-weight: 700;
  letter-spacing: -0.025em;
  color: var(--zeyep-heading);
}

.single-post .sheet-body h3,
.single .sheet-body h3 {
  font-size: 27px;
  line-height: 1.22;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--zeyep-heading);
  margin-bottom: 18px;
}

.single-post .fact span,
.single .fact span {
  font-size: 10.5px;
  line-height: 1.4;
  color: #606961;
  font-weight: 650;
  letter-spacing: .02em;
}

.single-post .fact strong,
.single .fact strong {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 750;
  color: #26372f;
}

.single-post .ingredient-list li,
.single .ingredient-list li {
  font-size: 15.5px;
  line-height: 1.62;
  color: #303833;
  padding-top: 10px;
  padding-bottom: 10px;
}

.single-post .ingredient-list strong,
.single .ingredient-list strong {
  font-weight: 750;
  color: #202f28;
}

.single-post .steps li,
.single .steps li {
  margin-bottom: 23px;
}

.single-post .steps h4,
.single .steps h4 {
  font-size: 17.5px;
  line-height: 1.38;
  font-weight: 750;
  color: #223229;
  margin-bottom: 6px;
}

.single-post .steps p,
.single .steps p {
  font-size: 16px;
  line-height: 1.72;
  color: #3a423d;
}

.single-post .tip,
.single .tip {
  padding: 22px 24px;
}

.single-post .tip h3,
.single .tip h3 {
  font-family: var(--font, system-ui, sans-serif);
  font-size: 11px;
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #30453a;
  margin-bottom: 8px;
}

.single-post .tip p,
.single .tip p {
  font-size: 15.5px;
  line-height: 1.72;
  color: #3b463f;
}

/* ---------- LONG-FORM EDITORIAL ARTICLE ---------- */
.single-post .editorial-content,
.single .editorial-content {
  max-width: 790px;
  margin-top: 48px;
  color: var(--zeyep-text);
  font-size: 17.5px;
  line-height: 1.82;
  letter-spacing: -.004em;
}

.single-post .editorial-content > :first-child,
.single .editorial-content > :first-child {
  margin-top: 0;
}

.single-post .editorial-content p,
.single .editorial-content p {
  margin: 0 0 22px;
  color: var(--zeyep-text);
}

/* Strong, clean section titles: no decorative underline competing with the text. */
.single-post .editorial-content h2,
.single .editorial-content h2 {
  font-size: clamp(31px, 2.8vw, 37px);
  line-height: 1.17;
  font-weight: 700;
  letter-spacing: -0.028em;
  color: var(--zeyep-heading);
  margin: 58px 0 24px;
  padding: 0 0 17px;
  border: 0;
  border-bottom: 2px solid var(--zeyep-rule);
  text-wrap: balance;
}

.single-post .editorial-content h3,
.single .editorial-content h3 {
  font-size: clamp(22px, 2vw, 25px);
  line-height: 1.27;
  font-weight: 700;
  letter-spacing: -0.018em;
  color: #26372f;
  margin: 35px 0 12px;
  text-wrap: balance;
}

.single-post .editorial-content h4,
.single .editorial-content h4 {
  font-size: 19px;
  line-height: 1.35;
  font-weight: 750;
  color: #26372f;
  margin: 30px 0 10px;
}

.single-post .editorial-content strong,
.single .editorial-content strong {
  color: #202c26;
  font-weight: 750;
}

.single-post .editorial-content ul,
.single-post .editorial-content ol,
.single .editorial-content ul,
.single .editorial-content ol {
  margin: 0 0 24px;
  padding-left: 25px;
  color: var(--zeyep-text);
}

.single-post .editorial-content li,
.single .editorial-content li {
  margin: 7px 0;
  padding-left: 4px;
  line-height: 1.72;
}

.single-post .editorial-content a,
.single .editorial-content a {
  color: #24553c;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.single-post .editorial-content blockquote,
.single .editorial-content blockquote {
  margin: 30px 0;
  padding: 4px 0 4px 22px;
  border-left: 3px solid #9aa894;
  color: #3d4741;
  font-size: 18px;
  line-height: 1.75;
}

.single-post .editorial-content table,
.single .editorial-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 28px 0 34px;
  font-size: 15.5px;
  line-height: 1.55;
}

.single-post .editorial-content th,
.single-post .editorial-content td,
.single .editorial-content th,
.single .editorial-content td {
  padding: 12px 14px;
  border: 1px solid var(--zeyep-rule);
  vertical-align: top;
}

.single-post .editorial-content th,
.single .editorial-content th {
  background: var(--zeyep-paper-soft);
  color: var(--zeyep-heading);
  font-weight: 750;
  text-align: left;
}

/* Sidebar stays secondary but no longer looks faded. */
.single-post .recipe-aside,
.single .recipe-aside {
  color: #3d4741;
}

.single-post .aside-box h3,
.single .aside-box h3 {
  font-weight: 700;
  color: var(--zeyep-heading);
}

.single-post .aside-box p,
.single .aside-box p {
  font-size: 13.5px;
  line-height: 1.72;
  color: #4b554f;
}

/* ---------- GENERIC PAGES: ABOUT, CONTACT, LEGAL ---------- */
.page .text-page,
body.page .text-page {
  max-width: 830px;
  margin-bottom: 76px;
  color: var(--zeyep-text);
}

.page .text-page h1 {
  font-size: clamp(43px, 4vw, 54px);
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -0.035em;
  color: var(--zeyep-heading);
  margin: 12px 0 30px;
}

.page .text-page h2,
.page .text-page .editorial-content h2 {
  font-size: clamp(28px, 2.7vw, 34px);
  line-height: 1.2;
  font-weight: 700;
  color: var(--zeyep-heading);
  margin: 44px 0 20px;
  padding-bottom: 13px;
  border-bottom: 1px solid var(--zeyep-rule);
  letter-spacing: -0.024em;
}

.page .text-page h3,
.page .text-page .editorial-content h3 {
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
  color: #293a31;
  margin: 30px 0 12px;
}

.page .text-page p,
.page .text-page li,
.page .text-page .editorial-content p,
.page .text-page .editorial-content li {
  font-size: 17px;
  line-height: 1.82;
  color: #303833;
}

.page .text-page p {
  margin: 0 0 20px;
}

.page .text-page ul,
.page .text-page ol {
  font-size: 17px;
  line-height: 1.75;
  color: #303833;
  margin: 0 0 24px;
  padding-left: 24px;
}

/* ---------- HOMEPAGE ---------- */
.home .hero h1,
.front-page .hero h1 {
  font-weight: 700;
  color: var(--zeyep-heading);
  letter-spacing: -0.038em;
}

.home .hero-copy > p:not(.eyebrow),
.front-page .hero-copy > p:not(.eyebrow) {
  font-size: 15px;
  line-height: 1.78;
  color: #4c554f;
  max-width: 390px;
}

.home .section-heading h2,
.front-page .section-heading h2,
.related-section .section-heading h2 {
  font-size: clamp(31px, 3vw, 38px);
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -0.028em;
  color: var(--zeyep-heading);
}

.home .recipe-card h3,
.front-page .recipe-card h3,
.archive .recipe-card h3,
.search .recipe-card h3,
.related-section .recipe-card h3 {
  font-size: 23px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -0.022em;
  color: #26372f;
}

.home .card-body p,
.front-page .card-body p,
.archive .card-body p,
.search .card-body p,
.related-section .card-body p {
  font-size: 13px;
  line-height: 1.65;
  color: #59625c;
}

/* ---------- ARCHIVES / CATEGORIES / RECIPE LIBRARY ---------- */
.archive-head h1 {
  font-size: clamp(42px, 4vw, 52px);
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -0.035em;
  color: var(--zeyep-heading);
}

.archive-head > p:not(.eyebrow) {
  max-width: 720px;
  font-size: 16px;
  line-height: 1.75;
  color: #515b54;
}

/* Better readability for recurring supporting copy across the site. */
.zeyep-editorial-style .breadcrumbs {
  color: #626b65;
}

.zeyep-editorial-style .eyebrow {
  font-weight: 800;
}

.zeyep-editorial-style .quantity-note,
.zeyep-editorial-style .photo-caption,
.zeyep-editorial-style .wp-caption-text {
  color: #606962;
}

/* ---------- MOBILE ---------- */
@media (max-width: 780px) {
  .single-post .recipe-intro h1,
  .single .recipe-intro h1 {
    font-size: clamp(37px, 10.5vw, 44px);
    line-height: 1.08;
    margin-bottom: 14px;
  }

  .single-post .recipe-intro .intro-text,
  .single .recipe-intro .intro-text {
    font-size: 17px;
    line-height: 1.72;
    margin-top: 16px;
  }

  .single-post .editorial-content,
  .single .editorial-content {
    margin-top: 40px;
    font-size: 17px;
    line-height: 1.77;
  }

  .single-post .editorial-content p,
  .single .editorial-content p {
    margin-bottom: 20px;
  }

  .single-post .editorial-content h2,
  .single .editorial-content h2 {
    font-size: 29px;
    line-height: 1.18;
    margin: 45px 0 20px;
    padding-bottom: 13px;
  }

  .single-post .editorial-content h3,
  .single .editorial-content h3 {
    font-size: 22px;
    margin-top: 30px;
  }

  .single-post .sheet-heading h2,
  .single .sheet-heading h2 {
    font-size: 27px;
  }

  .single-post .sheet-body h3,
  .single .sheet-body h3 {
    font-size: 24px;
  }

  .single-post .ingredient-list li,
  .single .ingredient-list li {
    font-size: 15px;
    line-height: 1.6;
  }

  .single-post .steps h4,
  .single .steps h4 {
    font-size: 16.5px;
  }

  .single-post .steps p,
  .single .steps p {
    font-size: 15.5px;
    line-height: 1.7;
  }

  .page .text-page h1 {
    font-size: 38px;
    margin-bottom: 25px;
  }

  .page .text-page h2,
  .page .text-page .editorial-content h2 {
    font-size: 28px;
    margin-top: 38px;
  }

  .page .text-page p,
  .page .text-page li,
  .page .text-page .editorial-content p,
  .page .text-page .editorial-content li {
    font-size: 16.5px;
    line-height: 1.76;
  }

  .home .hero-copy > p:not(.eyebrow),
  .front-page .hero-copy > p:not(.eyebrow) {
    font-size: 14.5px;
    line-height: 1.72;
  }

  .home .section-heading h2,
  .front-page .section-heading h2,
  .related-section .section-heading h2 {
    font-size: 30px;
  }

  .home .recipe-card h3,
  .front-page .recipe-card h3,
  .archive .recipe-card h3,
  .search .recipe-card h3,
  .related-section .recipe-card h3 {
    font-size: 21px;
  }

  .home .card-body p,
  .front-page .card-body p,
  .archive .card-body p,
  .search .card-body p,
  .related-section .card-body p {
    font-size: 12px;
  }

  .archive-head h1 {
    font-size: 38px;
  }

  .archive-head > p:not(.eyebrow) {
    font-size: 15px;
    line-height: 1.7;
  }
}

@media (max-width: 430px) {
  .single-post .recipe-intro h1,
  .single .recipe-intro h1 {
    font-size: 37px;
  }

  .single-post .editorial-content h2,
  .single .editorial-content h2 {
    font-size: 28px;
  }

  .single-post .editorial-content h3,
  .single .editorial-content h3 {
    font-size: 21px;
  }

  .page .text-page h1 {
    font-size: 36px;
  }

  .page .text-page h2,
  .page .text-page .editorial-content h2 {
    font-size: 27px;
  }
}

/* Print remains compact and ink-friendly. */
@media print {
  .single-post .editorial-content,
  .single .editorial-content,
  .page .text-page p,
  .page .text-page li {
    color: #000;
  }
}

/* ============================================================
   ZEYEP EDITORIAL STYLE 3.0 — SITE-WIDE SYSTEM
   Warm French recipe-magazine direction inspired by the visual
   hierarchy of contemporary recipe publishers. Original Zeyep
   implementation: no external fonts, no copied assets/markup.
   ============================================================ */

:root {
  --zeyep-bg: #fffdfa;
  --zeyep-surface: #faf6ee;
  --zeyep-surface-2: #f4eee2;
  --zeyep-heading: #302c25;
  --zeyep-text: #48433c;
  --zeyep-soft-text: #70695f;
  --zeyep-rule: #e7dcc3;
  --zeyep-rule-strong: #d9c9a7;
  --zeyep-accent: #8f6334;
  --zeyep-accent-dark: #6f4926;
  --zeyep-button: #332f29;
  --zeyep-button-hover: #171512;
  --zeyep-serif: Georgia, "Times New Roman", serif;
  --zeyep-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --zeyep-content: 1220px;
  --zeyep-reading: 820px;
}

html { background: var(--zeyep-bg); }
body.zeyep-editorial-style {
  background: var(--zeyep-bg);
  color: var(--zeyep-text);
  font-family: var(--zeyep-sans);
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.zeyep-editorial-style h1,
body.zeyep-editorial-style h2,
body.zeyep-editorial-style h3 {
  font-family: var(--zeyep-serif);
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .wrap {
  width: min(var(--zeyep-content), calc(100% - 64px));
}
body.zeyep-editorial-style a { transition: color .16s ease, border-color .16s ease, background .16s ease, opacity .16s ease; }
body.zeyep-editorial-style .eyebrow {
  color: var(--zeyep-accent);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .17em;
}
body.zeyep-editorial-style .muted { color: var(--zeyep-soft-text); }

/* ---------- HEADER / BRAND / SEARCH ---------- */
body.zeyep-editorial-style .site-header {
  position: relative;
  z-index: 100;
  background: rgba(255,253,250,.98);
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .topline {
  background: var(--zeyep-heading);
  color: #fffaf0;
  border: 0;
  font-size: 10px;
  letter-spacing: .055em;
}
body.zeyep-editorial-style .topline .wrap { height: 30px; }
body.zeyep-editorial-style .topline span:first-child:before {
  background: #d8c39e;
  width: 4px;
  height: 4px;
}
body.zeyep-editorial-style .brand-row {
  min-height: 96px;
  gap: 34px;
}
body.zeyep-editorial-style .brand {
  color: var(--zeyep-heading);
  gap: 10px;
}
body.zeyep-editorial-style .brand-mark {
  width: 39px;
  height: 46px;
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .brand-name {
  font-family: var(--zeyep-serif);
  font-size: 36px;
  font-weight: 700;
  line-height: .96;
  letter-spacing: -.045em;
}
body.zeyep-editorial-style .brand-name i {
  color: var(--zeyep-accent);
  font-style: normal;
}
body.zeyep-editorial-style .brand-sub {
  margin-top: 7px;
  color: var(--zeyep-soft-text);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .19em;
}
body.zeyep-editorial-style .header-search { max-width: 475px; }
body.zeyep-editorial-style .search-form {
  min-height: 47px;
  background: #fff;
  border: 1px solid var(--zeyep-rule-strong);
  border-radius: 2px;
  box-shadow: none;
}
body.zeyep-editorial-style .search-form input {
  padding: 13px 16px;
  color: var(--zeyep-heading);
  font-size: 14px;
}
body.zeyep-editorial-style .search-form input::placeholder { color: #8a8379; opacity: 1; }
body.zeyep-editorial-style .search-form button {
  border-left: 1px solid var(--zeyep-rule);
  padding-inline: 16px;
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .search-form:focus-within {
  outline: 2px solid var(--zeyep-rule-strong);
  outline-offset: 2px;
}
body.zeyep-editorial-style .header-actions { gap: 17px; }
body.zeyep-editorial-style .saved-link {
  color: var(--zeyep-soft-text);
  font-size: 12px;
  font-weight: 650;
}
body.zeyep-editorial-style .saved-link:hover { color: var(--zeyep-heading); }
body.zeyep-editorial-style .saved-count {
  background: var(--zeyep-surface-2);
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .menu-toggle {
  border-color: var(--zeyep-rule-strong);
  border-radius: 2px;
  color: var(--zeyep-heading);
  background: #fff;
}

/* ---------- MAIN NAV / DROPDOWNS ---------- */
body.zeyep-editorial-style .main-nav {
  background: #fff;
  border-top: 1px solid var(--zeyep-rule);
  border-bottom: 1px solid var(--zeyep-rule);
}
body.zeyep-editorial-style .nav-inner { min-height: 55px; }
body.zeyep-editorial-style .nav-links { gap: 28px; }
body.zeyep-editorial-style .nav-links > li > a {
  position: relative;
  color: #3d3933;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .005em;
  padding: 18px 0 17px;
}
body.zeyep-editorial-style .nav-links > li > a:after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -1px;
  height: 2px;
  background: var(--zeyep-accent);
  transition: right .18s ease;
}
body.zeyep-editorial-style .nav-links > li:hover > a:after,
body.zeyep-editorial-style .nav-links > .current-menu-item > a:after,
body.zeyep-editorial-style .nav-links > .current-menu-ancestor > a:after { right: 0; }
body.zeyep-editorial-style .nav-links a:hover,
body.zeyep-editorial-style .nav-links .current-menu-item > a { color: var(--zeyep-accent-dark); }
body.zeyep-editorial-style .nav-links .sub-menu {
  min-width: 245px;
  padding: 12px 0;
  background: #fffdfa;
  border: 1px solid var(--zeyep-rule);
  border-top: 2px solid var(--zeyep-accent);
  border-radius: 0;
  box-shadow: 0 16px 34px rgba(48,44,37,.10);
}
body.zeyep-editorial-style .nav-links .sub-menu li { margin: 0; }
body.zeyep-editorial-style .nav-links .sub-menu a {
  display: block;
  padding: 9px 18px;
  color: #4c463e;
  font-size: 12.5px;
  line-height: 1.35;
}
body.zeyep-editorial-style .nav-links .sub-menu a:hover {
  background: var(--zeyep-surface);
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .nav-aside {
  color: var(--zeyep-accent-dark);
  font-size: 11.5px;
  font-weight: 700;
}

/* ---------- BUTTONS ---------- */
body.zeyep-editorial-style .button {
  background: var(--zeyep-button);
  color: #fff;
  border-radius: 2px;
  padding: 13px 21px;
  font-size: 12px;
  font-weight: 750;
  box-shadow: none;
}
body.zeyep-editorial-style .button:hover {
  background: var(--zeyep-button-hover);
  transform: none;
}
body.zeyep-editorial-style .button.secondary {
  background: transparent;
  color: var(--zeyep-heading);
  border-color: var(--zeyep-rule-strong);
}
body.zeyep-editorial-style .button.secondary:hover {
  background: var(--zeyep-surface);
  border-color: var(--zeyep-heading);
}

/* ---------- HOME HERO ---------- */
body.zeyep-editorial-style .hero {
  margin-top: 28px;
  min-height: 470px;
  background: var(--zeyep-surface);
  border: 1px solid var(--zeyep-rule);
  border-radius: 0;
}
body.zeyep-editorial-style .hero-copy { padding: 52px 48px; }
body.zeyep-editorial-style .hero h1 {
  max-width: 470px;
  color: var(--zeyep-heading);
  font-size: clamp(44px, 4.5vw, 64px);
  line-height: 1.02;
  font-weight: 700;
  letter-spacing: -.045em;
}
body.zeyep-editorial-style .hero h1 em { color: var(--zeyep-accent); }
body.zeyep-editorial-style .hero-copy > p:not(.eyebrow) {
  max-width: 390px;
  margin-top: 22px;
  color: var(--zeyep-text);
  font-size: 15px;
  line-height: 1.75;
}
body.zeyep-editorial-style .hero-photo,
body.zeyep-editorial-style .hero-photo img { border-radius: 0; }
body.zeyep-editorial-style .hero-recipe {
  background: rgba(255,253,250,.96);
  border: 1px solid var(--zeyep-rule);
  border-radius: 0;
  box-shadow: 0 8px 28px rgba(48,44,37,.09);
}
body.zeyep-editorial-style .hero-recipe h2 {
  font-weight: 700;
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .round-stamp {
  background: #fffdfa;
  border-color: var(--zeyep-rule-strong);
  color: var(--zeyep-heading);
}

/* ---------- HOME STRIP / SECTION HEADINGS ---------- */
body.zeyep-editorial-style .quick-strip {
  border-bottom-color: var(--zeyep-rule);
  color: var(--zeyep-soft-text);
  font-size: 11.5px;
}
body.zeyep-editorial-style .quick-strip strong { color: var(--zeyep-heading); font-weight: 700; }
body.zeyep-editorial-style .section { padding: 58px 0; }
body.zeyep-editorial-style .section-heading {
  align-items: end;
  padding-bottom: 15px;
  margin-bottom: 29px;
  border-bottom: 2px solid var(--zeyep-rule);
}
body.zeyep-editorial-style .section-heading h2 {
  margin-top: 5px;
  color: var(--zeyep-heading);
  font-size: clamp(31px, 3vw, 40px);
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -.028em;
}
body.zeyep-editorial-style .text-link {
  color: var(--zeyep-soft-text);
  border-bottom-color: var(--zeyep-rule-strong);
  font-size: 11.5px;
  font-weight: 700;
}
body.zeyep-editorial-style .text-link:hover { color: var(--zeyep-accent-dark); }

/* ---------- CATEGORY SHORTCUTS ---------- */
body.zeyep-editorial-style .category-grid { gap: 24px; }
body.zeyep-editorial-style .category-image {
  width: 112px;
  height: 112px;
  padding: 3px;
  background: #fff;
  border: 1px solid var(--zeyep-rule-strong);
}
body.zeyep-editorial-style .category-item:hover .category-image {
  transform: translateY(-2px);
  border-color: var(--zeyep-accent);
}
body.zeyep-editorial-style .category-item b {
  color: var(--zeyep-heading);
  font-size: 12.5px;
  font-weight: 750;
}
body.zeyep-editorial-style .category-item small {
  color: var(--zeyep-soft-text);
  font-size: 10.5px;
}

/* ---------- RECIPE CARDS / LISTINGS ---------- */
body.zeyep-editorial-style .recipe-grid { gap: 38px 28px; }
body.zeyep-editorial-style .card-image {
  border-radius: 2px;
  background: var(--zeyep-surface);
  box-shadow: none;
}
body.zeyep-editorial-style .recipe-card:hover .card-image img { transform: scale(1.018); }
body.zeyep-editorial-style .card-label {
  top: 11px;
  left: 11px;
  background: rgba(255,253,250,.94);
  border: 1px solid rgba(231,220,195,.8);
  border-radius: 0;
  color: var(--zeyep-heading);
  font-weight: 800;
}
body.zeyep-editorial-style .save-button {
  background: rgba(255,253,250,.96);
  border: 1px solid rgba(231,220,195,.85);
  color: var(--zeyep-heading);
}
body.zeyep-editorial-style .save-button[aria-pressed=true] {
  background: var(--zeyep-heading);
  border-color: var(--zeyep-heading);
}
body.zeyep-editorial-style .card-body { padding-top: 14px; }
body.zeyep-editorial-style .card-category {
  color: var(--zeyep-accent-dark);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .15em;
}
body.zeyep-editorial-style .recipe-card h3 {
  margin-top: 7px;
  color: var(--zeyep-heading);
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.16;
  font-weight: 700;
  letter-spacing: -.026em;
}
body.zeyep-editorial-style .card-body p {
  margin-top: 9px;
  color: var(--zeyep-text);
  font-size: 13.5px;
  line-height: 1.67;
}
body.zeyep-editorial-style .meta { color: var(--zeyep-soft-text); }

/* ---------- ARCHIVES / CATEGORY PAGES ---------- */
body.zeyep-editorial-style .archive-head {
  max-width: 850px;
  padding: 49px 0 30px;
  text-align: left;
}
body.zeyep-editorial-style .archive-head h1 {
  margin: 10px 0 14px;
  color: var(--zeyep-heading);
  font-size: clamp(43px, 4vw, 58px);
  line-height: 1.06;
  font-weight: 700;
  letter-spacing: -.04em;
}
body.zeyep-editorial-style .archive-head > p:not(.eyebrow),
body.zeyep-editorial-style .archive-head .editorial-content {
  max-width: 720px;
  color: var(--zeyep-text);
  font-size: 16px;
  line-height: 1.7;
}
body.zeyep-editorial-style .filter-bar {
  border-block-color: var(--zeyep-rule);
  margin-top: 5px;
}
body.zeyep-editorial-style .filter-links a {
  background: #fff;
  border-color: var(--zeyep-rule-strong);
  border-radius: 1px;
  color: var(--zeyep-soft-text);
  font-size: 10.5px;
  font-weight: 700;
}
body.zeyep-editorial-style .filter-links a.active,
body.zeyep-editorial-style .filter-links a:hover {
  background: var(--zeyep-heading);
  border-color: var(--zeyep-heading);
  color: #fff;
}
body.zeyep-editorial-style .sort-select {
  background: #fff;
  border-color: var(--zeyep-rule-strong);
  border-radius: 1px;
  color: var(--zeyep-heading);
  font-size: 11px;
}
body.zeyep-editorial-style .pagination .page-numbers {
  border-color: var(--zeyep-rule-strong);
  border-radius: 1px;
}
body.zeyep-editorial-style .pagination .current {
  background: var(--zeyep-heading);
  border-color: var(--zeyep-heading);
}

/* ---------- BREADCRUMBS ---------- */
body.zeyep-editorial-style .breadcrumbs {
  padding: 23px 0;
  color: #777067;
  font-size: 10.5px;
}
body.zeyep-editorial-style .breadcrumbs a:hover { color: var(--zeyep-heading); }

/* ---------- RECIPE ARTICLE HERO ---------- */
body.zeyep-editorial-style.single-post .recipe-intro,
body.zeyep-editorial-style.single .recipe-intro {
  gap: 48px;
  margin-bottom: 42px;
}
body.zeyep-editorial-style.single-post .recipe-intro h1,
body.zeyep-editorial-style.single .recipe-intro h1 {
  color: var(--zeyep-heading);
  font-size: clamp(46px, 4.25vw, 62px);
  line-height: 1.04;
  font-weight: 700;
  letter-spacing: -.043em;
}
body.zeyep-editorial-style.single-post .recipe-intro .meta,
body.zeyep-editorial-style.single .recipe-intro .meta {
  color: var(--zeyep-soft-text);
  font-size: 11.5px;
}
body.zeyep-editorial-style.single-post .recipe-intro .intro-text,
body.zeyep-editorial-style.single .recipe-intro .intro-text {
  max-width: 650px;
  color: var(--zeyep-text);
  font-size: 18px;
  line-height: 1.78;
}
body.zeyep-editorial-style .recipe-photo { border-radius: 2px; }

/* ---------- RECIPE SHEET ---------- */
body.zeyep-editorial-style .recipe-sheet {
  background: #fff;
  border: 1px solid var(--zeyep-rule-strong);
  border-radius: 0;
  box-shadow: none;
}
body.zeyep-editorial-style .sheet-heading {
  background: var(--zeyep-surface);
  border-bottom-color: var(--zeyep-rule);
}
body.zeyep-editorial-style .sheet-heading h2 {
  color: var(--zeyep-heading);
  font-weight: 700;
}
body.zeyep-editorial-style .recipe-sheet .facts { border-color: var(--zeyep-rule); }
body.zeyep-editorial-style .fact span { color: var(--zeyep-soft-text); }
body.zeyep-editorial-style .fact strong { color: var(--zeyep-heading); }
body.zeyep-editorial-style .sheet-body h3 {
  color: var(--zeyep-heading);
  font-weight: 700;
}
body.zeyep-editorial-style .ingredient-list li {
  border-color: var(--zeyep-rule);
  color: var(--zeyep-text);
}
body.zeyep-editorial-style .steps h4 { color: var(--zeyep-heading); }
body.zeyep-editorial-style .steps p { color: var(--zeyep-text); }
body.zeyep-editorial-style .tip {
  background: var(--zeyep-surface);
  border-color: var(--zeyep-rule-strong);
  border-radius: 0;
}

/* ---------- LONG-FORM EDITORIAL BODY ---------- */
body.zeyep-editorial-style.single-post .editorial-content,
body.zeyep-editorial-style.single .editorial-content {
  max-width: var(--zeyep-reading);
  color: var(--zeyep-text);
  font-size: 18px;
  line-height: 1.78;
}
body.zeyep-editorial-style.single-post .editorial-content p,
body.zeyep-editorial-style.single .editorial-content p {
  color: var(--zeyep-text);
  margin-bottom: 25px;
}
body.zeyep-editorial-style.single-post .editorial-content h2,
body.zeyep-editorial-style.single .editorial-content h2 {
  margin: 60px 0 26px;
  padding: 0 0 16px;
  border-bottom: 2px solid var(--zeyep-rule);
  color: var(--zeyep-heading);
  font-size: clamp(34px, 3.2vw, 43px);
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -.032em;
}
body.zeyep-editorial-style.single-post .editorial-content h3,
body.zeyep-editorial-style.single .editorial-content h3 {
  margin-top: 35px;
  color: var(--zeyep-heading);
  font-size: clamp(23px, 2.1vw, 27px);
  line-height: 1.24;
  font-weight: 700;
}
body.zeyep-editorial-style.single-post .editorial-content strong,
body.zeyep-editorial-style.single .editorial-content strong {
  color: var(--zeyep-heading);
  font-weight: 800;
}
body.zeyep-editorial-style .zeyep-editorial-point { margin-bottom: 31px; }
body.zeyep-editorial-style .zeyep-editorial-point strong { font-weight: 800; }

/* ---------- GENERIC CONTENT PAGES ---------- */
body.zeyep-editorial-style.page .text-page,
body.zeyep-editorial-style .text-page {
  max-width: 860px;
}
body.zeyep-editorial-style.page .text-page h1,
body.zeyep-editorial-style .text-page h1 {
  color: var(--zeyep-heading);
  font-size: clamp(43px, 4vw, 58px);
  font-weight: 700;
  letter-spacing: -.04em;
}
body.zeyep-editorial-style.page .text-page h2,
body.zeyep-editorial-style .text-page h2 {
  color: var(--zeyep-heading);
  border-bottom-color: var(--zeyep-rule);
  font-weight: 700;
}
body.zeyep-editorial-style.page .text-page p,
body.zeyep-editorial-style.page .text-page li,
body.zeyep-editorial-style .text-page p,
body.zeyep-editorial-style .text-page li {
  color: var(--zeyep-text);
  font-size: 17px;
  line-height: 1.8;
}
body.zeyep-editorial-style .text-page a {
  color: var(--zeyep-accent-dark);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

/* ---------- FORMS / COMMENTS / CONTACT ---------- */
body.zeyep-editorial-style input,
body.zeyep-editorial-style textarea,
body.zeyep-editorial-style select {
  border-color: var(--zeyep-rule-strong);
  border-radius: 2px;
  color: var(--zeyep-heading);
  background: #fff;
}
body.zeyep-editorial-style .comment-form input,
body.zeyep-editorial-style .comment-form textarea {
  padding: 12px 13px;
}
body.zeyep-editorial-style input:focus,
body.zeyep-editorial-style textarea:focus,
body.zeyep-editorial-style select:focus {
  border-color: var(--zeyep-accent);
}

/* ---------- FOOTER ---------- */
body.zeyep-editorial-style .site-footer {
  margin-top: 36px;
  padding: 52px 0 22px;
  background: var(--zeyep-surface);
  border-top: 1px solid var(--zeyep-rule-strong);
}
body.zeyep-editorial-style .footer-grid {
  grid-template-columns: 1.5fr 1fr 1fr;
  gap: 70px;
  padding-bottom: 38px;
}
body.zeyep-editorial-style .footer-brand p {
  max-width: 310px;
  color: var(--zeyep-text);
  font-size: 12px;
  line-height: 1.75;
}
body.zeyep-editorial-style .footer-col h3 {
  margin-bottom: 18px;
  color: var(--zeyep-heading);
  font-family: var(--zeyep-sans);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .15em;
}
body.zeyep-editorial-style .footer-col a {
  color: var(--zeyep-soft-text);
  font-size: 12px;
  line-height: 1.5;
  margin: 10px 0;
}
body.zeyep-editorial-style .footer-col a:hover { color: var(--zeyep-heading); }
body.zeyep-editorial-style .footer-bottom {
  padding-top: 20px;
  border-top-color: var(--zeyep-rule);
  color: var(--zeyep-soft-text);
  font-size: 10px;
}

/* ---------- EMPTY STATES / CALLOUTS ---------- */
body.zeyep-editorial-style .empty-state,
body.zeyep-editorial-style .notebook,
body.zeyep-editorial-style .demo-banner {
  background: var(--zeyep-surface);
  border-radius: 0;
}
body.zeyep-editorial-style .demo-banner { border-left-color: var(--zeyep-accent); }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1100px) {
  body.zeyep-editorial-style .wrap { width: calc(100% - 48px); }
  body.zeyep-editorial-style .nav-links { gap: 18px; }
  body.zeyep-editorial-style .nav-links > li > a { font-size: 11.5px; }
}

@media (max-width: 780px) {
  body.zeyep-editorial-style .wrap { width: calc(100% - 34px); }
  body.zeyep-editorial-style .topline .wrap { height: 28px; }
  body.zeyep-editorial-style .brand-row { min-height: 82px; }
  body.zeyep-editorial-style .brand-name { font-size: 31px; }
  body.zeyep-editorial-style .brand-sub { font-size: 7px; }
  body.zeyep-editorial-style .menu-toggle { display: grid; }
  body.zeyep-editorial-style .main-nav { border-top-color: var(--zeyep-rule); }
  body.zeyep-editorial-style .nav-inner {
    padding: 0 0 16px;
    background: #fffdfa;
  }
  body.zeyep-editorial-style .nav-inner.open { display: block; }
  body.zeyep-editorial-style .nav-links {
    display: block;
    border-top: 1px solid var(--zeyep-rule);
  }
  body.zeyep-editorial-style .nav-links > li { border-bottom: 1px solid var(--zeyep-rule); }
  body.zeyep-editorial-style .nav-links > li > a {
    padding: 13px 2px;
    font-size: 13px;
  }
  body.zeyep-editorial-style .nav-links > li > a:after { display: none; }
  body.zeyep-editorial-style .nav-links .sub-menu {
    display: block;
    position: static;
    min-width: 0;
    margin: -2px 0 9px 12px;
    padding: 0 0 2px 12px;
    border: 0;
    border-left: 1px solid var(--zeyep-rule-strong);
    box-shadow: none;
    background: transparent;
  }
  body.zeyep-editorial-style .nav-links .sub-menu a {
    padding: 7px 8px;
    font-size: 12px;
  }
  body.zeyep-editorial-style .nav-aside {
    margin-top: 14px;
    display: inline-flex;
  }
  body.zeyep-editorial-style .hero {
    margin-top: 20px;
    border-left: 0;
    border-right: 0;
  }
  body.zeyep-editorial-style .hero-copy { padding: 36px 29px 31px; }
  body.zeyep-editorial-style .hero h1 { font-size: clamp(40px, 11vw, 52px); }
  body.zeyep-editorial-style .hero-copy > p:not(.eyebrow) { font-size: 14px; }
  body.zeyep-editorial-style .section { padding: 43px 0; }
  body.zeyep-editorial-style .section-heading { margin-bottom: 23px; }
  body.zeyep-editorial-style .section-heading h2 { font-size: 31px; }
  body.zeyep-editorial-style .category-grid { grid-template-columns: repeat(3, 1fr); }
  body.zeyep-editorial-style .recipe-card h3 { font-size: 22px; }
  body.zeyep-editorial-style .archive-head { padding-top: 34px; }
  body.zeyep-editorial-style .archive-head h1 { font-size: 42px; }
  body.zeyep-editorial-style.single-post .recipe-intro h1,
  body.zeyep-editorial-style.single .recipe-intro h1 { font-size: 43px; }
  body.zeyep-editorial-style.single-post .recipe-intro .intro-text,
  body.zeyep-editorial-style.single .recipe-intro .intro-text { font-size: 17px; }
  body.zeyep-editorial-style.single-post .editorial-content,
  body.zeyep-editorial-style.single .editorial-content { font-size: 17px; line-height: 1.78; }
  body.zeyep-editorial-style.single-post .editorial-content h2,
  body.zeyep-editorial-style.single .editorial-content h2 {
    margin-top: 48px;
    font-size: 32px;
  }
  body.zeyep-editorial-style .footer-grid { gap: 30px; }
}

@media (max-width: 430px) {
  body.zeyep-editorial-style .wrap { width: calc(100% - 28px); }
  body.zeyep-editorial-style .brand-name { font-size: 29px; }
  body.zeyep-editorial-style .category-image { width: 88px; height: 88px; }
  body.zeyep-editorial-style .recipe-grid { gap: 28px 14px; }
  body.zeyep-editorial-style .recipe-card h3 { font-size: 20px; }
  body.zeyep-editorial-style .archive-head h1 { font-size: 38px; }
  body.zeyep-editorial-style.single-post .recipe-intro h1,
  body.zeyep-editorial-style.single .recipe-intro h1 { font-size: 38px; }
  body.zeyep-editorial-style.single-post .editorial-content h2,
  body.zeyep-editorial-style.single .editorial-content h2 { font-size: 30px; }
  body.zeyep-editorial-style.page .text-page h1,
  body.zeyep-editorial-style .text-page h1 { font-size: 38px; }
}


/* =========================================================
   V3.1 — RECIPE ACTIONS: no overlap + responsive layout
   ========================================================= */
body.zeyep-editorial-style .recipe-tools {
  display: flex;
  align-items: stretch;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 30px;
}

body.zeyep-editorial-style .recipe-tools .button,
body.zeyep-editorial-style .recipe-tools .save-button {
  position: static !important;
  inset: auto !important;
  float: none !important;
  margin: 0 !important;
  width: auto;
  min-width: 0;
  height: 54px;
  min-height: 54px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  flex: 0 0 auto;
  white-space: nowrap;
  border-radius: 2px;
  box-sizing: border-box;
}

body.zeyep-editorial-style .recipe-tools .save-button {
  border: 1px solid var(--zeyep-rule-strong);
  background: transparent;
  color: var(--zeyep-heading);
  font-size: 12.5px;
  font-weight: 700;
}

body.zeyep-editorial-style .recipe-tools .save-button:hover {
  background: var(--zeyep-surface);
  border-color: var(--zeyep-heading);
}

body.zeyep-editorial-style .recipe-tools .save-button[aria-pressed="true"] {
  background: var(--zeyep-heading);
  border-color: var(--zeyep-heading);
  color: #fff;
}

body.zeyep-editorial-style .recipe-tools .save-button::after {
  display: none !important;
}

body.zeyep-editorial-style .recipe-tools [data-jump] {
  min-width: 190px;
}

body.zeyep-editorial-style .recipe-tools [data-share] {
  width: 58px;
  min-width: 58px;
  padding-inline: 0;
}

@media (max-width: 640px) {
  body.zeyep-editorial-style .recipe-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 58px;
    gap: 10px;
    width: 100%;
  }

  body.zeyep-editorial-style .recipe-tools [data-jump] {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
  }

  body.zeyep-editorial-style .recipe-tools .save-button {
    grid-column: 1;
    width: 100%;
    min-width: 0;
  }

  body.zeyep-editorial-style .recipe-tools [data-share] {
    grid-column: 2;
    width: 58px;
    min-width: 58px;
  }
}
