/*
 * Megha Nutrition landing styles.
 *
 * Lifted verbatim from the static build at /site/index.html so the Elementor
 * page can reuse the exact same classes. Do not restyle here to fix a single
 * page; add an override instead, or the two landing views drift apart.
 */

:root{
    --forest:#1F3D2B; --forest-deep:#132A1D;
    --marigold:#E8A33D; --marigold-deep:#C9852A;
    --coral:#FF6B4A; --coral-deep:#E24E2E;
    --teal:#2F8F86; --rose:#E85C7B; --sky:#3E7CB1; --sun:#F0C230;
    --blush:#F3DED2; --cream:#FBF7F0; --charcoal:#22261F; --muted:#6E7568;
    --line: rgba(31,61,43,0.14); --white:#FFFFFF;
  }
  *{box-sizing:border-box;}
  html{background:var(--cream);}
  html,body{margin:0; padding:0;}
  body{font-family:'Manrope',sans-serif; background:var(--cream); color:var(--charcoal);}
  img{display:block; max-width:100%; height:auto;}
  .wrap{max-width:1180px; margin:0 auto; padding:0 18px;}

  /* NAV */
  .nav{display:flex; align-items:center; justify-content:space-between; padding:14px 0; position:sticky; top:0; background:var(--cream); z-index:60; border-bottom:1px solid var(--line);}
  .logo{font-family:'Fraunces',serif; font-weight:600; font-size:19px; color:var(--forest-deep); display:flex; align-items:center;}
  .logo img{height:30px; width:auto; display:block;}
  .logo span{color:var(--marigold-deep);}
  .nav-links{display:none; gap:32px; font-size:14px; font-weight:600; color:var(--forest-deep);}
  .nav-cta{display:none; background:var(--coral); color:#fff; padding:12px 24px; border-radius:12px; font-size:13.5px; font-weight:800; box-shadow:0 6px 16px rgba(255,107,74,0.35); text-decoration:none;}
  .burger{width:22px;height:14px;position:relative; cursor:pointer;}
  .burger div{position:absolute;height:2px;width:100%;background:var(--forest);border-radius:2px;}
  .burger div:nth-child(1){top:0;} .burger div:nth-child(2){top:6px;} .burger div:nth-child(3){top:12px;}

  /* MARQUEE */
  .marquee-wrap{background:var(--forest-deep); overflow:hidden; padding:9px 0; border-bottom:2px solid var(--marigold); position:sticky; top:59px; z-index:55;}
  .marquee{display:flex; white-space:nowrap; animation:scroll 22s linear infinite; width:max-content;}
  .marquee span{color:var(--cream); font-size:12px; font-weight:700; padding:0 18px; display:flex; align-items:center;}
  .marquee span::after{content:"•"; color:var(--marigold); margin-left:18px;}
  @keyframes scroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

  /* HERO */
  .hero{padding:20px 18px 10px;}
  .hp-desktop{display:none;}
  .eyebrow{order:1; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--marigold-deep); margin-bottom:10px; display:flex; align-items:center; gap:6px;}
  .eyebrow::before{content:"🌿";}
  h1.hero-h{order:2; font-family:'Fraunces',serif; font-size:29px; line-height:1.16; font-weight:700; color:var(--charcoal); margin:0 0 10px;}
  .hero-type-line{white-space:nowrap; overflow:hidden;}
  .hero-type-line .type-word{color:var(--coral-deep); font-weight:700;}
  .hero-static-line{display:block;}
  .cursor{display:inline-block; width:2px; height:.95em; background:var(--coral-deep); margin-left:2px; vertical-align:middle; animation:blink 0.9s step-end infinite;}
  @keyframes blink{ 50%{opacity:0;} }
  .hero-sub{order:3; font-size:14.5px; line-height:1.55; color:var(--muted); margin:0 0 16px; max-width:460px;}
  .hero-photo{order:4; width:100%; min-height:190px; border-radius:18px; overflow:hidden; background:linear-gradient(160deg,var(--forest) 0%, var(--forest-deep) 100%); position:relative; margin-bottom:16px;}
  .hero-photo img{width:100%; height:100%; object-fit:cover; object-position:center 22%; position:absolute; inset:0;}
  .hero-photo .photo-caption{position:relative; z-index:2; height:100%; display:flex; align-items:center; justify-content:center; text-align:center; color:rgba(255,255,255,0.85); font-size:12.5px; padding:20px; line-height:1.5; font-weight:600; min-height:190px;}
  .badge-row{order:5; display:flex; gap:8px; overflow-x:auto; margin:0 0 16px; padding-bottom:2px;}
  .badge{flex:0 0 auto; background:var(--white); border:1px solid var(--line); border-radius:12px; padding:8px 12px; font-size:11.5px; font-weight:700; color:var(--forest-deep); white-space:nowrap;}
  .cta-primary{order:6; display:block; text-align:center; background:var(--coral); color:#fff; font-weight:800; font-size:15px; padding:15px 28px; border-radius:14px; box-shadow:0 8px 18px rgba(255,107,74,0.4); text-decoration:none; width:100%;}

  /* SECTIONS */
  .section{padding:26px 18px;}
  .section.alt{background:var(--white);}
  .section.dark{background:var(--forest-deep); color:var(--cream);}
  .sec-head{text-align:center; max-width:600px; margin:0 auto 20px;}
  .eyebrow-sm{font-size:10.5px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--marigold-deep); margin-bottom:8px;}
  h2.sec-h{font-family:'Fraunces',serif; font-weight:600; font-size:22px; line-height:1.2; color:var(--forest-deep); margin:0;}
  .dark h2.sec-h{color:var(--cream);}

  /* PAIN ROW */
  .pain-row{display:flex; gap:12px; overflow-x:auto; margin:0 -18px 14px; padding:0 18px 8px;}
  .pain-card{flex:0 0 auto; width:230px; border-radius:16px; overflow:hidden; scroll-snap-align:start; background:var(--white); border:1px solid var(--line);}
  .pain-photo{width:100%; aspect-ratio:16/11; overflow:hidden;}
  .pain-photo img{width:100%; height:100%; object-fit:cover;}
  .pain-cap{padding:12px 13px; font-size:12.5px; font-weight:700; color:var(--forest-deep); line-height:1.4;}
  .pivot-line{background:var(--forest-deep); color:var(--cream); border-radius:14px; padding:16px; text-align:center; font-family:'Fraunces',serif; font-size:16px; line-height:1.4; max-width:760px; margin:0 auto;}
  .pivot-line b{color:var(--marigold);}

  /* VIDEO ROW */
  .video-row{display:block;}
  .video-block{position:relative; border-radius:18px; overflow:hidden; aspect-ratio:16/10; display:flex; align-items:center; justify-content:center; text-align:center; color:#fff;}
  .video-block img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 25%;}
  .video-block .play-overlay{position:absolute; inset:0; background:rgba(0,0,0,0.28); display:flex; align-items:center; justify-content:center; z-index:2;}
  .play-btn{width:58px; height:58px; border-radius:50%; background:var(--coral); display:flex; align-items:center; justify-content:center; margin:0 auto 12px; box-shadow:0 6px 22px rgba(0,0,0,0.4);}
  .play-btn div{width:0;height:0; border-top:10px solid transparent; border-bottom:10px solid transparent; border-left:16px solid #fff; margin-left:4px;}
  .video-caption{font-family:'Manrope',sans-serif; font-weight:400; font-size:14.5px; line-height:1.6; color:var(--muted); margin:18px 0 16px;}
  .cred-row{display:flex; flex-wrap:wrap; gap:8px;}
  .cred{background:var(--forest); color:var(--cream); font-size:11px; font-weight:700; padding:8px 13px; border-radius:20px;}

  /* CHAIN */
  .chain{display:flex; flex-direction:column;}
  .chain-item{display:flex; gap:14px; position:relative; padding-bottom:24px;}
  .chain-item:last-child{padding-bottom:0;}
  .chain-item::before{content:""; position:absolute; left:19px; top:44px; bottom:0; width:2px; background:repeating-linear-gradient(180deg, var(--marigold) 0 6px, transparent 6px 12px);}
  .chain-item:last-child::before{display:none;}
  .chain-node{flex:0 0 auto; width:40px; height:40px; border-radius:12px; background:rgba(232,163,61,0.16); border:1.5px solid rgba(201,133,42,0.4); display:flex; align-items:center; justify-content:center; z-index:2;}
  .chain-node svg{width:19px; height:19px; stroke:var(--marigold-deep); fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
  .chain-body h4{margin:5px 0 4px; font-size:14px; color:var(--forest-deep);}
  .chain-body p{margin:0; font-size:12px; color:var(--muted); line-height:1.5;}
  .chain-text{text-align:left;}

  /* CATEGORIES */
  .cat-list{display:flex; flex-direction:column; gap:10px;}
  .cat-card{display:flex; align-items:center; gap:14px; border-radius:16px; padding:16px; color:#fff;}
  .cat-ic{font-size:22px; flex:0 0 auto;}
  .cat-card h4{font-family:'Fraunces',serif; font-size:16px; margin:0 0 2px;}
  .cat-card p{font-size:11.5px; margin:0; opacity:.92; line-height:1.4;}
  .cat1{background:linear-gradient(150deg,var(--rose),#B33E5A);} .cat2{background:linear-gradient(150deg,var(--sky),#274F70);}
  .cat3{background:linear-gradient(150deg,var(--teal),#1D5C55);} .cat4{background:linear-gradient(150deg,var(--marigold),var(--marigold-deep));}
  .cat5{background:linear-gradient(150deg,var(--sun),#C99A17);}

  /* PRICING */
  .price-grid{display:flex; flex-direction:column; gap:10px;}
  .price-card{background:var(--white); border:1.5px solid var(--line); border-radius:16px; padding:18px; position:relative;}
  .price-card.popular{border-color:var(--coral); box-shadow:0 6px 18px rgba(255,107,74,0.18);}
  .price-badge{position:absolute; top:-10px; right:16px; background:var(--coral); color:#fff; font-size:9.5px; font-weight:800; padding:4px 10px; border-radius:20px; text-transform:uppercase;}
  .price-badge.value{background:var(--teal);}
  .price-top{display:flex; justify-content:space-between; align-items:baseline;}
  .price-top h4{margin:0; font-size:14.5px; color:var(--forest-deep); font-family:'Fraunces',serif;}
  .price-amt{font-family:'Fraunces',serif; font-size:22px; font-weight:700; color:var(--forest-deep);}
  .price-note{font-size:11px; color:var(--muted); margin-top:4px;}
  .price-save{font-size:11px; color:var(--teal); font-weight:700; margin-top:4px;}
  .price-reassure{text-align:center; background:var(--blush); border-radius:14px; padding:16px; font-size:13.5px; color:var(--forest-deep); font-weight:600; max-width:640px; margin:16px auto 0;}
  .pay-icons{display:flex; gap:8px; justify-content:center; font-size:10.5px; color:var(--muted); margin-top:12px;}
  .pay-icons .pi{background:#fff; border:1px solid var(--line); border-radius:6px; padding:4px 10px; font-weight:700;}

  /* STATS */
  .stats-strip{display:flex; justify-content:space-between; text-align:center;}
  .trust-stats{padding-top:16px; padding-bottom:16px;}
  .stat .num{font-family:'Fraunces',serif; font-size:24px; font-weight:600; color:var(--marigold);}
  .stat .lbl{font-size:10px; color:rgba(251,247,240,0.75); margin-top:4px;}

  /* PROOF */
  .proof-row{display:flex; gap:12px; overflow-x:auto; padding-bottom:6px; margin:0 -18px; padding-left:18px; padding-right:18px;}
  .proof-card{flex:0 0 auto; width:230px; scroll-snap-align:start; background:var(--blush); border-radius:16px; padding:16px;}
  .proof-card.gmb{background:var(--white); border:1px solid var(--line);}
  .proof-card.transform{width:280px; padding:0; overflow:hidden; background:var(--white); border:1px solid var(--line);}
  .transform-photo{width:100%; aspect-ratio:2.083/1; overflow:hidden; background:#eee;}
  .transform-photo img{width:100%; height:100%; object-fit:cover; object-position:center;}
  .transform-cap{padding:12px 14px; font-size:12px; color:var(--forest-deep); font-weight:700; line-height:1.4;}
  .stars{color:var(--coral-deep); font-size:13px; margin-bottom:8px;}
  .gmb-badge{display:block; font-size:9.5px; font-weight:800; color:#4285F4; margin-bottom:6px;}
  .proof-card p{font-family:'Fraunces',serif; font-style:italic; font-size:14px; color:var(--forest-deep); line-height:1.5; margin:0 0 12px;}
  .proof-who .name{font-size:12px; font-weight:700; color:var(--forest-deep);}
  .proof-who .loc{font-size:10.5px; color:var(--muted);}

  /* FAQ */
  .faq-item{border-bottom:1px solid var(--line); padding:15px 0;}
  .faq-q{display:flex; justify-content:space-between; align-items:center; font-size:13.5px; font-weight:700; color:var(--forest-deep);}
  .faq-a{font-size:12.5px; color:var(--muted); line-height:1.55; margin-top:8px;}

  /* BLOG */
  .blog-row{display:flex; gap:12px; overflow-x:auto; margin:0 -18px; padding:0 18px 4px;}
  .blog-card{flex:0 0 auto; width:170px; background:var(--white); border:1px solid var(--line); border-radius:14px; overflow:hidden;}
  .blog-thumb{height:90px; display:flex; align-items:center; justify-content:center; color:#fff;}
  .blog-thumb svg{width:34px; height:34px; stroke:#fff; fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; opacity:.92;}
  .bt-pmos{background:linear-gradient(150deg,var(--rose),#B33E5A);}
  .bt-gut{background:linear-gradient(150deg,var(--teal),#1D5C55);}
  .bt-diabetes{background:linear-gradient(150deg,var(--sky),#274F70);}
  .blog-card .bc-body{padding:10px 11px;}
  .blog-card .bc-tag{font-size:9px; font-weight:800; color:var(--coral-deep); text-transform:uppercase; letter-spacing:.05em;}
  .blog-card h5{font-size:12px; margin:5px 0 0; color:var(--forest-deep); line-height:1.35;}

  /* FINAL CTA */
  .final-cta{text-align:center; max-width:640px; margin:0 auto;}
  .social-nudge{display:flex; gap:10px; margin-top:20px; padding-top:20px; border-top:1px solid rgba(251,247,240,0.15);}
  .social-nudge .sn{flex:1; background:rgba(251,247,240,0.08); border-radius:12px; padding:12px; text-align:center; text-decoration:none;}
  .social-nudge .sn .ic{font-size:17px; margin-bottom:5px;}
  .social-nudge .sn p{margin:0; font-size:10.5px; line-height:1.4; color:rgba(251,247,240,0.85);}
  .social-nudge .sn b{display:block; color:var(--marigold); font-size:11px; margin-top:4px; font-weight:600;}

  .quiz-cta{margin:0 18px 24px; background:linear-gradient(135deg,var(--coral),var(--coral-deep)); border-radius:18px; padding:22px 20px; text-align:center; box-shadow:0 10px 26px rgba(255,107,74,0.35);}
  .quiz-cta .qc-eyebrow{font-size:10.5px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,0.85); margin-bottom:6px;}
  .quiz-cta h3{font-family:'Fraunces',serif; color:#fff; font-size:19px; margin:0 0 6px; line-height:1.3;}
  .quiz-cta p{color:rgba(255,255,255,0.9); font-size:12.5px; margin:0 0 16px; line-height:1.5;}
  .quiz-cta a{display:inline-block; background:#fff; color:var(--coral-deep); font-weight:800; font-size:14px; padding:13px 26px; border-radius:12px; text-decoration:none;}

  /* FOOTER */
  footer.foot{background:var(--forest-deep); color:rgba(251,247,240,0.8); padding:34px 20px 90px; font-size:12px; line-height:1.8;}
  footer.foot .foot-logo{color:var(--cream); font-family:'Fraunces',serif; font-size:18px; font-weight:600; margin-bottom:10px;}
  footer.foot a{color:var(--marigold); text-decoration:none;}
  .foot-grid{display:block;}
  .foot-col{margin-bottom:20px;}
  .foot-col h5{color:var(--cream); font-size:11.5px; letter-spacing:.06em; text-transform:uppercase; margin:0 0 10px; font-weight:800;}
  .foot-bottom{border-top:1px solid rgba(251,247,240,0.15); padding-top:18px; font-size:11px; opacity:.65;}

  /* MOBILE-ONLY sticky elements */
  .sticky-cta{position:fixed; bottom:0; left:0; right:0; z-index:70; background:var(--white); border-top:1px solid var(--line); padding:11px 16px 15px; display:flex; gap:10px; align-items:center; box-shadow:0 -6px 16px rgba(0,0,0,0.08);}
  .sticky-cta .price-hint{flex:1; font-size:11px; color:var(--muted); line-height:1.3;}
  .sticky-cta .price-hint b{display:block; font-size:13px; color:var(--forest-deep); font-family:'Fraunces',serif;}
  .sticky-cta button{background:var(--coral); color:#fff; border:none; border-radius:12px; padding:12px 20px; font-weight:800; font-size:13px; white-space:nowrap;}
  .wa-fab{position:fixed; right:18px; bottom:80px; width:48px; height:48px; border-radius:50%; background:#25D366; display:flex; align-items:center; justify-content:center; color:#fff; font-size:22px; box-shadow:0 6px 16px rgba(0,0,0,0.3); z-index:65; text-decoration:none;}
  body{padding-bottom:78px;}

  /* ============ DESKTOP OVERRIDES ============ */
  @media (min-width:900px){
    body{padding-bottom:0;}
    .wrap{padding:0 40px;}
    .nav{padding:20px 0;}
    .logo{font-size:24px;}
    .logo img{height:38px;}
    .nav-links{display:flex;}
    .nav-cta{display:inline-block;}
    .burger{display:none;}
    .marquee-wrap{top:80px;}

    .hero{
      display:grid;
      grid-template-columns:1fr 0.95fr;
      column-gap:64px;
      align-items:center;
      padding:70px 40px 80px; max-width:1180px; margin:0 auto;
    }
    .hero-text{display:block;}
    .hp-mobile{display:none;}
    .hp-desktop{display:block; aspect-ratio:4/5;}
    .hero-photo img{object-position:68% center;}
    h1.hero-h{font-size:52px;}
    .hero-sub{font-size:16.5px;}
    .badge-row{overflow-x:visible; gap:16px;}
    .cta-primary{width:auto;}

    .section{padding:80px 40px;}
    .sec-head{margin-bottom:46px;}
    h2.sec-h{font-size:34px;}

    .pain-row{display:grid; grid-template-columns:repeat(5,1fr); gap:18px; overflow:visible; margin:0 0 36px; padding:0;}
    .pain-card{width:auto;}
    .pivot-line{padding:32px; font-size:22px;}

    .video-row{display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px; align-items:center;}
    .video-caption{font-size:16px;}
    .video-block{margin-bottom:0;}

    .chain{display:grid; grid-template-columns:repeat(5,1fr); gap:20px; position:relative;}
    .chain::before{content:""; position:absolute; top:20px; left:8%; right:8%; height:2px; background:repeating-linear-gradient(90deg, var(--marigold) 0 6px, transparent 6px 12px); z-index:0;}
    .chain-item{flex-direction:column; text-align:center; padding-bottom:0;}
    .chain-item::before{display:none;}
    .chain-node{margin:0 auto;}
    .chain-text{text-align:center;}

    .cat-list{display:grid; grid-template-columns:repeat(5,1fr); gap:16px;}
    .cat-card{flex-direction:column; text-align:center; padding:26px 18px; min-height:150px; justify-content:center; gap:8px;}
    .cat-ic{font-size:26px;}

    .price-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
    .price-reassure{padding:18px 24px;}

    .stats-strip{max-width:600px; margin:0 auto; gap:0;}
    .trust-stats{padding-top:28px; padding-bottom:28px;}

    .proof-row{display:grid; grid-template-columns:repeat(5,1fr); gap:16px; overflow:visible; margin:0; padding:0;}
    .proof-card{width:auto;}
    .proof-card.transform{width:auto;}

    .faq-grid-desktop{display:grid; grid-template-columns:1fr 1fr; gap:0 56px; max-width:960px; margin:0 auto;}

    .blog-row{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; overflow:visible; margin:0; padding:0;}
    .blog-card{width:auto;}
    .blog-thumb{height:150px;}

    .social-nudge{max-width:480px; margin:20px auto 0; gap:20px;}
    .quiz-cta{max-width:640px; margin:0 auto 40px; padding:32px 40px;}
    .quiz-cta h3{font-size:24px;}
    .quiz-cta p{font-size:14px;}

    .foot-grid{display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:36px;}
    footer.foot{padding:56px 40px 36px;}

    .sticky-cta, .wa-fab{display:none;}
  }


/* ============================================================
   MEGHA: WORDPRESS CHROME
   Additions on top of the ported static CSS. The static build had
   hardcoded <div> nav items and a decorative burger; these rules adapt the
   same visual language to real WordPress menu markup and a working panel.
   ============================================================ */

/* wp_nav_menu prints ul > li > a inside the original .nav-links shell. */
.nav-links ul.nav-menu { list-style:none; margin:0; padding:0; display:flex; gap:32px; align-items:center; }
.nav-links ul.nav-menu li { margin:0; }
.nav-links ul.nav-menu a { color:inherit; font:inherit; text-decoration:none; }
.nav-links ul.nav-menu a:hover { color:var(--coral-deep); }
.nav-links ul.nav-menu .current-menu-item > a { color:var(--coral-deep); }

/* The burger is a real <button> now, so reset the UA chrome. */
.burger { background:none; border:none; padding:0; }

/* Mobile panel, toggled by the burger. */
.mobile-nav { background:var(--white); border-bottom:1px solid var(--line); }
.mobile-nav[hidden] { display:none; }
.mobile-nav ul { list-style:none; margin:0; padding:6px 18px 12px; }
.mobile-nav li { border-bottom:1px solid var(--line); }
.mobile-nav li:last-child { border-bottom:none; }
.mobile-nav a { display:block; padding:13px 2px; font-size:14px; font-weight:700; color:var(--forest-deep); text-decoration:none; }

/* The sticky bar CTA is an <a> now, not a <button>. */
.sticky-cta .sticky-cta-btn {
  background:var(--coral); color:#fff; border:none; border-radius:12px;
  padding:12px 20px; font-weight:800; font-size:13px; white-space:nowrap;
  text-decoration:none; display:inline-block;
}

/* Anchor jumps must clear the sticky nav and the marquee above them. */
html { scroll-behavior:smooth; }
.megha-landing-body [id] { scroll-margin-top:130px; }

@media (min-width:900px) {
  .mobile-nav { display:none; }
  .megha-landing-body [id] { scroll-margin-top:150px; }
}

/* Blog cards are links now, and may carry a real featured image. */
.blog-card { text-decoration:none; color:inherit; display:block; }
.blog-card:hover { border-color:var(--coral); }
.blog-thumb-img { padding:0; overflow:hidden; }
.blog-thumb-img img { width:100%; height:100%; object-fit:cover; display:block; }

/* Width shell for Elementor containers: mirrors .wrap with no padding. */
.megha-wrap { max-width:1180px; margin:0 auto; padding:0; width:100%; }

/* ============================================================
   MEGHA: BLOG AND ARTICLE
   Archive cards and post typography, using the same tokens as the
   landing page so the blog does not read as a different website.
   ============================================================ */

.post-list { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.post-card { display:block; text-decoration:none; color:inherit; background:var(--white);
  border:1px solid var(--line); border-radius:16px; overflow:hidden; transition:border-color .18s, transform .18s; }
.post-card:hover { border-color:var(--coral); transform:translateY(-2px); }
.post-card-thumb { aspect-ratio:16/10; overflow:hidden; background:var(--sand); }
.post-card-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.post-card-body { padding:16px 18px 20px; }
.post-card-body h3 { font-family:Fraunces,serif; font-size:17px; font-weight:600;
  line-height:1.3; margin:8px 0 6px; color:var(--forest-deep); }
.post-card-body p { font-size:13px; line-height:1.55; color:var(--ink-soft); margin:0; }

.post-pagination { margin-top:34px; text-align:center; }
.post-pagination .page-numbers { display:inline-block; padding:8px 14px; margin:0 3px;
  border:1px solid var(--line); border-radius:10px; text-decoration:none;
  font-size:13px; font-weight:700; color:var(--forest-deep); }
.post-pagination .page-numbers.current { background:var(--forest); color:#fff; border-color:var(--forest); }
.post-pagination .screen-reader-text { position:absolute; left:-9999px; }

/* Single post / plain page */
.entry { max-width:760px; margin:0 auto; }
.entry-head { text-align:center; margin-bottom:26px; }
.entry-title { font-family:Fraunces,serif; font-size:34px; font-weight:600;
  line-height:1.2; color:var(--forest-deep); margin:10px 0 8px; }
.entry-meta { font-size:12px; color:var(--ink-soft); letter-spacing:.04em; }
.entry-thumb { margin:0 0 28px; border-radius:16px; overflow:hidden; }
.entry-thumb img { width:100%; height:auto; display:block; }
.entry-content { font-size:16px; line-height:1.75; color:var(--ink); }
.entry-content p { margin:0 0 18px; }
.entry-content h2 { font-family:Fraunces,serif; font-size:24px; font-weight:600;
  color:var(--forest-deep); margin:34px 0 12px; }
.entry-content h3 { font-family:Fraunces,serif; font-size:19px; font-weight:600;
  color:var(--forest-deep); margin:26px 0 10px; }
.entry-content a { color:var(--coral-deep); }
.entry-content ul, .entry-content ol { margin:0 0 18px 20px; }
.entry-content li { margin-bottom:8px; }
.entry-content img { max-width:100%; height:auto; border-radius:12px; }
.entry-content blockquote { margin:24px 0; padding:14px 20px; border-left:3px solid var(--coral);
  background:var(--sand); border-radius:0 12px 12px 0; font-style:italic; }
.entry-empty { text-align:center; color:var(--ink-soft); padding:40px 0; }

@media (max-width:900px) {
  .post-list { grid-template-columns:repeat(2,1fr); gap:16px; }
  .entry-title { font-size:26px; }
}
@media (max-width:620px) {
  .post-list { grid-template-columns:1fr; }
}

/* Sparse blog row: centre 1-2 cards instead of leaving dead columns. */
.blog-row.blog-row-1, .blog-row.blog-row-2 { justify-content:center; }
@media (min-width:900px) {
  .blog-row.blog-row-1 { grid-template-columns:minmax(0,360px); }
  .blog-row.blog-row-2 { grid-template-columns:repeat(2,minmax(0,360px)); }
}
