/*
Theme Name:   Sahita
Theme URI:    https://sahitavivahamatching.com
Template:     generatepress
Author:       App Sapien
Description:  Sahita child theme for GeneratePress — Vedic kundali matching. Direction A (Classical Manuscript): Fraunces + Inter on ivory, deep maroon for structure, marigold as a spark. Styles post content so every article auto-inherits the design system.
Version:      1.0.0
License:      GNU General Public License v2 or later
Text Domain:  sahita
*/

/* ============================================================
   TOKENS  — single source of truth (mirror of theme.json)
   ============================================================ */
:root{
  --iv:#FBF7EF;        /* ivory / page bg     */
  --maroon:#6E1423;    /* primary             */
  --maroon-dk:#561019; /* hover / dark        */
  --gold:#E8A33D;      /* marigold accent     */
  --gold-dk:#D4882A;   /* deep marigold       */
  --sand:#F3E9D6;      /* card / callout fill */
  --ink:#2A2422;       /* body text           */
  --mut:#7A716B;       /* muted / meta        */
  --line:#E6DBC8;      /* hairline            */
  --ok:#3E6B4F;        /* success / good      */
  --warn:#B5532E;      /* warning / dosha     */

  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

  --r-card:14px; --r-btn:10px; --r-input:8px; --r-pill:999px;
  --shadow:0 2px 8px rgba(42,36,34,.06);
  --shadow-h:0 8px 22px rgba(42,36,34,.12);
  --measure:720px;
}

/* ============================================================
   GLOBAL
   ============================================================ */
body{
  background:var(--iv);
  color:var(--ink);
  font-family:var(--sans);
  font-size:18px;
  line-height:1.7;
}
a{ color:var(--maroon); }
a:hover{ color:var(--maroon-dk); }

/* GeneratePress containers */
.site-content,.entry-content{ color:var(--ink); }

/* ============================================================
   HEADINGS  (Fraunces for h1/h2, Inter for h3/h4)
   ============================================================ */
.entry-title,
.entry-content h1,
.entry-content h2{
  font-family:var(--serif);
  font-weight:600;
  line-height:1.2;
  letter-spacing:-.01em;
  color:var(--ink);
}
.entry-title{ color:var(--maroon); font-size:46px; }
.entry-content h1{ font-size:42px; color:var(--maroon); margin:1.6em 0 .5em; }
.entry-content h2{ font-size:34px; margin:1.6em 0 .5em; display:flex; align-items:center; gap:14px; }

/* marigold rule beside every H2 */
.entry-content h2::before{
  content:"";
  flex:none;
  width:28px; height:4px;
  border-radius:2px;
  background:var(--gold);
}

.entry-content h3{
  font-family:var(--sans);
  font-weight:600;
  font-size:24px;
  line-height:1.25;
  color:var(--maroon);
  margin:1.5em 0 .4em;
}
.entry-content h4{
  font-family:var(--sans);
  font-weight:600;
  font-size:20px;
  line-height:1.3;
  color:var(--ink);
  margin:1.4em 0 .4em;
}

/* ============================================================
   BODY PROSE  — measure, rhythm, links, bold
   ============================================================ */
.entry-content{ font-size:18px; line-height:1.7; }
.entry-content > p,
.entry-content > ul,
.entry-content > ol,
.entry-content > h2,
.entry-content > h3,
.entry-content > h4,
.entry-content > figure,
.entry-content > blockquote,
.entry-content > .wp-block-table{
  max-width:var(--measure);
  margin-left:auto;
  margin-right:auto;
}
.entry-content p{ margin:0 0 1.25em; }
.entry-content strong,
.entry-content b{ color:var(--maroon); font-weight:600; }

.entry-content a{
  color:var(--maroon);
  text-decoration:underline;
  text-decoration-color:rgba(232,163,61,.55);
  text-underline-offset:2px;
}
.entry-content a:hover{
  color:var(--maroon-dk);
  text-decoration-color:var(--gold);
}

/* ============================================================
   LISTS  — custom marigold markers
   ============================================================ */
.entry-content ul{ list-style:none; padding-left:0; margin:0 0 1.5em; }
.entry-content ul li{ position:relative; padding-left:28px; margin:0 0 .65em; }
.entry-content ul li::before{
  content:"";
  position:absolute; left:2px; top:.62em;
  width:9px; height:9px;
  background:var(--gold);
  border-radius:2px;
  transform:rotate(45deg);
}
.entry-content ol{ padding-left:1.3em; margin:0 0 1.5em; }
.entry-content ol li{ margin:0 0 .65em; padding-left:6px; }
.entry-content ol li::marker{ color:var(--gold-dk); font-weight:700; }

/* ============================================================
   TABLES  — the workhorse (auto-styles any pasted table)
   ============================================================ */
.entry-content table,
.entry-content .wp-block-table table{
  width:100%;
  border-collapse:collapse;
  font-family:var(--sans);
  font-size:16px;
  line-height:1.4;
  border:1px solid var(--line);
  border-radius:var(--r-card);
  overflow:hidden;
  box-shadow:var(--shadow);
}
.entry-content thead th{
  background:var(--maroon);
  color:var(--iv);
  font-weight:600;
  font-size:13px;
  letter-spacing:.04em;
  text-align:left;
  padding:14px 18px;
}
.entry-content tbody td{ padding:13px 18px; border-bottom:1px solid var(--line); }
.entry-content tbody tr:nth-child(even){ background:var(--sand); }
.entry-content tbody tr:nth-child(odd){ background:#fff; }
.entry-content tbody tr:last-child td{ border-bottom:0; }
/* right-align numeric columns by adding class .num to a cell, or last column */
.entry-content td.num, .entry-content th.num{ text-align:right; font-variant-numeric:tabular-nums; }

/* horizontal-scroll on mobile, with hint */
.entry-content .wp-block-table{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
@media (max-width:600px){
  .entry-content .wp-block-table::before{
    content:"← swipe table →";
    display:block; text-align:right;
    font-size:11px; font-weight:500; color:var(--mut);
    margin-bottom:6px;
  }
  .entry-content .wp-block-table table{ min-width:460px; }
}

/* score chips — pair color WITH a label/dot (never color alone) */
.score{ display:inline-flex; align-items:center; gap:6px; font-weight:600; font-size:13px; }
.score::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; }
.score-good{ color:var(--ok); }
.score-ok{ color:var(--mut); }
.score-poor{ color:var(--warn); }

/* ============================================================
   CALLOUTS  — built on core blockquote + helper classes
   ============================================================ */
.entry-content blockquote,
.callout{
  background:var(--sand);
  border-left:4px solid var(--maroon);
  border-radius:0 var(--r-btn) var(--r-btn) 0;
  padding:18px 20px;
  margin:0 auto 1.6em;
  max-width:var(--measure);
  font-style:normal;
}
.entry-content blockquote p{ margin:0; font-size:16px; line-height:1.65; }
.callout .callout-label{
  font-size:11px; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; margin-bottom:8px;
}
.callout-tip{ border-left-color:var(--gold); }
.callout-tip .callout-label{ color:var(--gold-dk); }
.callout-dosha{ border-left-color:var(--warn); }
.callout-dosha .callout-label{ color:var(--warn); }
.callout-note{ border-left-color:var(--maroon); }
.callout-note .callout-label{ color:var(--maroon); }

/* ============================================================
   FIGURES / IMAGES
   ============================================================ */
.entry-content figure,
.entry-content img{ border-radius:var(--r-card); }
.entry-content .wp-block-image img{ box-shadow:var(--shadow); }
.entry-content figcaption{
  font-size:13px; line-height:1.5; color:var(--mut);
  text-align:center; margin-top:10px;
}

/* ============================================================
   BUTTONS  (core button block + .btn helpers)
   ============================================================ */
.wp-block-button__link,
.btn{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--sans); font-weight:600; font-size:15px;
  padding:13px 22px; border-radius:var(--r-btn);
  text-decoration:none; line-height:1; cursor:pointer;
  border:1.5px solid transparent;
  box-shadow:var(--shadow);
  transition:background .15s ease, color .15s ease;
}
.btn-primary,
.wp-block-button__link{ background:var(--maroon); color:var(--iv); }
.btn-primary:hover,
.wp-block-button__link:hover{ background:var(--maroon-dk); color:var(--iv); }
.btn-secondary{ background:transparent; border-color:var(--maroon); color:var(--maroon); box-shadow:none; }
.btn-secondary:hover{ background:var(--maroon); color:var(--iv); }
.btn-accent{ background:var(--gold); color:var(--ink); }
.btn-accent:hover{ background:var(--gold-dk); color:var(--ink); }

/* core button-block variants (class sits on the wrapper) */
.wp-block-button.is-accent .wp-block-button__link{ background:var(--gold); color:var(--ink); }
.wp-block-button.is-accent .wp-block-button__link:hover{ background:var(--gold-dk); color:var(--ink); }
.wp-block-button.is-secondary .wp-block-button__link{ background:transparent; border:1.5px solid var(--maroon); color:var(--maroon); box-shadow:none; }
.wp-block-button.is-secondary .wp-block-button__link:hover{ background:var(--maroon); color:var(--iv); }
:focus-visible{ outline:none; box-shadow:0 0 0 3px rgba(110,20,35,.30); border-radius:var(--r-btn); }

/* ============================================================
   PILLS / TAGS / BADGES
   ============================================================ */
.pill{
  display:inline-block; padding:5px 13px;
  background:var(--sand); border:1px solid var(--line);
  border-radius:var(--r-pill);
  font-size:12px; font-weight:600; color:var(--maroon);
  text-decoration:none;
}

/* ============================================================
   PLAY CTA BLOCK  (.sahita-cta)
   ============================================================ */
.sahita-cta{
  position:relative; overflow:hidden;
  background:var(--maroon); color:var(--iv);
  border-radius:var(--r-card);
  padding:30px 32px;
  margin:1.6em auto;
  max-width:var(--measure);
}
.sahita-cta::after{
  content:""; position:absolute; top:-40px; right:-30px;
  width:150px; height:150px; border:1.5px solid var(--gold);
  border-radius:50%; opacity:.22; pointer-events:none;
}
.sahita-cta h3{ font-family:var(--serif); font-size:24px; line-height:1.25; color:var(--iv); margin:0; }
.sahita-cta p{ color:var(--sand); font-size:15px; margin:8px 0 0; }
.sahita-cta .ticks{ display:flex; gap:16px; flex-wrap:wrap; font-size:13px; color:var(--sand); margin-top:14px; }

/* ============================================================
   KOOTA CARDS  (.koota-card — use inside a Columns block)
   ============================================================ */
.koota-card{
  background:#fff; border:1px solid var(--line);
  border-radius:var(--r-card); padding:20px;
  box-shadow:var(--shadow);
}
.koota-card.is-feature{ background:var(--maroon); border-color:var(--maroon); }
.koota-card .koota-top{ display:flex; justify-content:space-between; align-items:baseline; }
.koota-card .koota-num{ font-family:var(--sans); font-size:13px; font-weight:600; color:var(--mut); }
.koota-card .koota-weight{ font-family:var(--serif); font-size:28px; font-weight:600; color:var(--gold); line-height:1; }
.koota-card .koota-name{ font-family:var(--serif); font-size:18px; font-weight:600; color:var(--maroon); margin:10px 0 0; }
.koota-card .koota-desc{ font-family:var(--sans); font-size:13px; line-height:1.55; color:var(--mut); margin:5px 0 0; }
.koota-card.is-feature .koota-num{ color:var(--gold); }
.koota-card.is-feature .koota-name{ color:var(--iv); }
.koota-card.is-feature .koota-desc{ color:var(--sand); }

/* ============================================================
   SITE HEADER / NAV  (GeneratePress)
   ============================================================ */
.site-header{ background:rgba(251,247,239,.92); border-bottom:1px solid var(--line); }
.main-title a,.site-logo .site-title{ font-family:var(--serif); color:var(--maroon)!important; font-weight:600; }
.main-navigation .menu-item a{ font-family:var(--sans); font-weight:500; color:var(--ink); }
.main-navigation .menu-item a:hover{ color:var(--maroon); }

/* ============================================================
   FOOTER  (GeneratePress)
   ============================================================ */
.site-footer,.site-info{ background:var(--ink); color:var(--iv); }
.site-footer a,.site-info a{ color:#D7CCC2; }
.site-footer a:hover{ color:var(--gold); }

/* ============================================================
   RESPONSIVE TYPE  (mobile-first scale-down)
   ============================================================ */
@media (max-width:768px){
  .entry-title{ font-size:36px; }
  .entry-content h1{ font-size:36px; }
  .entry-content h2{ font-size:27px; }
  .entry-content h3{ font-size:21px; }
  .entry-content h4{ font-size:18px; }
  .entry-content{ font-size:17px; }
  body{ font-size:17px; }
  .sahita-cta{ padding:24px; }
}


/* ============================================================
   HOMEPAGE SECTIONS + FIXES (ported from Code Snippets 15/16, 2026-07-02)
   Uses the v1.0 token set defined at the top of this file.
   ============================================================ */
/* ============================================================
   v1.2 ADDITIONS — match Claude Design reference
   ============================================================ */

/* --- Tighter hero typography per reference -------------------- */
body.sahita-front .sahita-hero h1{ font-size:60px; letter-spacing:-.02em; }
@media (max-width:860px){ body.sahita-front .sahita-hero h1{ font-size:38px; } }

/* --- Section header H2 in MAROON (was ink) -------------------- */
body.sahita-front .sahita-sec-head h2{
  color:var(--maroon);
  font-size:44px;
  letter-spacing:-.01em;
}
@media (max-width:560px){ body.sahita-front .sahita-sec-head h2{ font-size:30px; } }

/* --- Phone mockup: real Match Report --------------------------- */
.sahita-hero .sahita-phone{
  width:320px; aspect-ratio:9/19.5;
  border-width:10px;
  background:#fff;
  box-shadow:0 28px 70px rgba(42,36,34,.28), inset 0 0 0 2px var(--gold);
  display:flex; flex-direction:column;
}
.sahita-hero .sahita-phone::before{
  width:90px; height:7px; top:10px;
}
.sahita-hero .sahita-phone-content{
  padding:0; text-align:left;
  display:flex; flex-direction:column; flex:1;
}
.sahita-match-report{
  background:var(--maroon); color:var(--iv);
  padding:34px 22px 22px;
  text-align:center;
  position:relative;
}
.sahita-match-report .report-header{
  font-family:var(--sans); font-size:12px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--sand); margin-bottom:10px;
  text-align:center;
}
.sahita-match-report .report-score{
  font-family:var(--serif); font-weight:600;
  color:var(--gold); line-height:1; margin:6px 0 6px;
}
.sahita-match-report .report-score .big{ font-size:64px; }
.sahita-match-report .report-score .small{ font-size:30px; color:var(--gold); opacity:.85; }
.sahita-match-report .report-label{
  font-family:var(--sans); font-size:11px; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; color:var(--sand);
  margin-bottom:0;
}
.sahita-match-report .report-table{
  background:#fff; padding:0; color:var(--ink);
  flex:1; display:flex; flex-direction:column;
}
.sahita-match-report .report-row{
  display:flex; justify-content:space-between; align-items:center;
  padding:14px 22px; border-bottom:1px solid var(--line);
  font-family:var(--sans); font-size:14px;
}
.sahita-match-report .report-row:last-of-type{ border-bottom:0; }
.sahita-match-report .report-row .k-name{ font-weight:600; color:var(--ink); }
.sahita-match-report .report-row .k-score{
  font-family:var(--sans); font-weight:600; font-variant-numeric:tabular-nums;
  display:inline-flex; align-items:center; gap:8px;
}
.sahita-match-report .report-row .k-score::after{
  content:""; width:8px; height:8px; border-radius:50%; background:var(--ok);
  margin-left:2px;
}
.sahita-match-report .report-row.is-ok .k-score::after{ background:var(--mut); }
.sahita-match-report .report-row.is-poor .k-score::after{ background:var(--warn); }
.sahita-match-report .report-cta{
  padding:14px 22px 22px;
  background:#fff;
}
.sahita-match-report .report-cta a{
  display:block; text-align:center;
  background:var(--gold); color:var(--ink);
  font-family:var(--sans); font-weight:700; font-size:13px;
  padding:13px 18px; border-radius:var(--r-btn);
  text-decoration:none;
}

/* --- Trust strip (horizontal divider with bullet separators) -- */
.sahita-trust-strip{
  display:flex; gap:0; flex-wrap:wrap; justify-content:center; align-items:center;
  max-width:1100px; margin:0 auto;
  padding:28px 0;
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.sahita-trust-strip .ts-item{
  font-family:var(--sans); font-size:14px; font-weight:600;
  color:var(--maroon);
  padding:0 28px;
  display:inline-flex; align-items:center; gap:8px;
  position:relative;
}
.sahita-trust-strip .ts-item + .ts-item::before{
  content:"·"; position:absolute; left:-4px; top:50%; transform:translateY(-60%);
  color:var(--mut); font-weight:700; font-size:16px;
}
.sahita-trust-strip .ts-item .ico{ font-size:18px; }
@media (max-width:760px){
  .sahita-trust-strip{ padding:16px 8px; gap:6px 0; }
  .sahita-trust-strip .ts-item{ padding:6px 14px; font-size:13px; }
  .sahita-trust-strip .ts-item + .ts-item::before{ content:none; }
}

/* --- How-It-Works: large icon circles (replace numbered) ----- */
.sahita-steps .sahita-step .n{
  width:80px; height:80px;
  background:rgba(232,163,61,.18); color:var(--gold-dk);
  font-family:var(--serif); font-size:36px;
  box-shadow:0 0 0 6px rgba(232,163,61,.08);
  margin-bottom:18px;
}
.sahita-steps .sahita-step h3{ font-size:22px; margin-bottom:8px; }
.sahita-steps .sahita-step p{ color:var(--mut); }

/* --- Article-card section: title + view-all link side by side - */
body.sahita-front .sahita-articles-head{
  display:flex; justify-content:space-between; align-items:end; gap:24px;
  max-width:1100px; margin:0 auto 40px;
}
body.sahita-front .sahita-articles-head .left{ text-align:left; }
body.sahita-front .sahita-articles-head .left .eyebrow{
  font-family:var(--sans); font-size:12px; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase; color:var(--gold-dk);
}
body.sahita-front .sahita-articles-head .left h2{
  font-family:var(--serif); font-weight:600; font-size:44px; line-height:1.1;
  color:var(--maroon); margin:8px 0 0; letter-spacing:-.01em;
}
body.sahita-front .sahita-articles-head h2::before{ content:none; }
body.sahita-front .sahita-articles-head .view-all{
  font-family:var(--sans); font-size:14px; font-weight:600;
  color:var(--maroon); text-decoration:underline;
  text-decoration-color:rgba(232,163,61,.55); text-underline-offset:3px;
  white-space:nowrap;
}
@media (max-width:640px){
  body.sahita-front .sahita-articles-head{ flex-direction:column; align-items:flex-start; gap:8px; }
  body.sahita-front .sahita-articles-head .left h2{ font-size:32px; }
}

/* --- Testimonials with marigold star rating ------------------- */
.sahita-testimonial .stars{
  display:flex; gap:4px; margin-bottom:14px;
  color:var(--gold); font-size:17px; letter-spacing:.05em; line-height:1;
}
/* hide the giant pull-quote mark from v1.1 */
.sahita-testimonial::before{ content:none !important; }
.sahita-testimonial .who{ margin-top:12px; }

/* --- Final CTA band: marigold button + inline checks ---------- */
.sahita-cta-band p{ font-size:18px; margin:0 0 28px; }
.sahita-cta-band .ticks{
  display:flex; gap:24px; flex-wrap:wrap; justify-content:center;
  font-family:var(--sans); font-size:14px; color:var(--sand);
  margin-top:18px;
}
.sahita-cta-band .ticks span::before{ content:"✓ "; color:var(--gold); font-weight:700; }

/* --- Site footer (dark, 3-column) ----------------------------- */
/* GP footer wrapper styling — override default GP footer with full dark layout */
.site-footer{ background:var(--ink); color:var(--iv); padding-top:64px; }
.site-footer .inside-site-info{ background:var(--ink); }
.site-footer a{ color:#D7CCC2; text-decoration:none; }
.site-footer a:hover{ color:var(--gold); }
.sahita-footer{
  display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:48px;
  max-width:1200px; margin:0 auto; padding:0 24px 36px;
}
.sahita-footer .col-brand .name{
  font-family:var(--serif); font-size:36px; font-weight:600;
  color:var(--iv); margin:0 0 12px;
}
.sahita-footer .col-brand p{
  font-family:var(--sans); font-size:15px; color:#C8BFB7;
  margin:0 0 18px; line-height:1.55;
}
.sahita-footer .col-brand .gp-btn{
  display:inline-block;
  background:var(--gold); color:var(--ink);
  font-family:var(--sans); font-weight:700; font-size:13px;
  padding:10px 18px; border-radius:var(--r-btn);
  text-decoration:none;
}
.sahita-footer .col-brand .gp-btn:hover{ background:var(--gold-dk); color:var(--ink); }
.sahita-footer h4{
  font-family:var(--sans); font-size:12px; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--gold); margin:0 0 16px;
}
.sahita-footer ul{ list-style:none; padding:0; margin:0; }
.sahita-footer ul li{ margin:0 0 10px; padding-left:0; }
.sahita-footer ul li::before{ content:none; }
.sahita-footer ul li a{
  font-family:var(--sans); font-size:15px; color:#D7CCC2;
}
.sahita-footer ul li a:hover{ color:var(--gold); }
.sahita-footer-bottom{
  border-top:1px solid rgba(255,255,255,.10);
  max-width:1200px; margin:0 auto;
  padding:20px 24px;
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;
  font-family:var(--sans); font-size:13px; color:#9C918A;
}
.sahita-footer-bottom a{ color:#C8BFB7; }
.sahita-footer-bottom a:hover{ color:var(--gold); }
@media (max-width:760px){
  .sahita-footer{ grid-template-columns:1fr; gap:32px; padding:0 18px 28px; }
  .sahita-footer-bottom{ flex-direction:column; align-items:flex-start; }
}

/* Hide GP's default site-info copyright (we replace via injected sahita-footer) */
.site-info > *:not(.sahita-footer-wrap){ display:none; }

/* --- Header overrides (logo tagline + Download Free button) --- */
.main-title{ display:flex; align-items:baseline; gap:14px; }
.main-title .site-tagline{
  font-family:var(--sans); font-size:14px; font-weight:500;
  color:var(--mut); white-space:nowrap;
}
@media (max-width:768px){ .main-title .site-tagline{ display:none; } }
.menu-item.cta-download a{
  background:var(--maroon); color:var(--iv) !important;
  padding:10px 20px !important; border-radius:var(--r-pill);
  font-weight:700;
}
.menu-item.cta-download a:hover{ background:var(--maroon-dk); color:var(--iv) !important; }


body.sahita-front .sahita-hero a.btn,body.sahita-front .sahita-hero a.btn-primary{color:#FBF7EF !important;text-decoration:none !important;}body.sahita-front .sahita-hero a.btn-secondary{color:#6E1423 !important;background:transparent !important;text-decoration:none !important;}body.sahita-front .sahita-hero a.btn-secondary:hover{color:#FBF7EF !important;background:#6E1423 !important;}.sahita-match-report.report-table{background:#fff !important;padding:0;color:#2A2422 !important;}.sahita-match-report.report-table .report-row{color:#2A2422 !important;}.sahita-match-report.report-table .report-row .k-name,.sahita-match-report.report-table .report-row .k-score{color:#2A2422 !important;}.sahita-match-report.report-cta{background:#fff !important;}.sahita-match-report.report-cta a{color:#2A2422 !important;text-decoration:none !important;background:#E8A33D !important;display:block;text-align:center;padding:13px 18px;border-radius:10px;font-weight:700;font-size:13px;}body.sahita-front .site-header,body.sahita-front #masthead{position:sticky !important;top:0 !important;z-index:999 !important;background:rgba(251,247,239,.95) !important;backdrop-filter:saturate(180%) blur(10px) !important;-webkit-backdrop-filter:saturate(180%) blur(10px) !important;}

/* ============================================================
   v1.1 ADDITIONS — sticky header + homepage section helpers
   Scoped to `body.sahita-front` so they don't leak into articles.
   All driven by :root tokens. AA-contrast checked.
   ============================================================ */

/* Sticky header (GP free has no sticky menu plus) */
body.sahita-front .site-header{
  position:sticky; top:0; z-index:100;
  backdrop-filter:saturate(180%) blur(10px);
  -webkit-backdrop-filter:saturate(180%) blur(10px);
}

/* Override GP's default container padding inside our hero / bands */
body.sahita-front .sahita-section{ padding:72px 24px; }
@media (max-width:768px){
  body.sahita-front .sahita-section{ padding:48px 18px; }
}

/* --- Hero -------------------------------------------------- */
.sahita-hero{
  background:linear-gradient(180deg,var(--iv) 0%,var(--sand) 100%);
  position:relative; overflow:hidden;
}
.sahita-hero::before,
.sahita-hero::after{
  content:""; position:absolute; pointer-events:none;
  width:280px; height:280px; border:1.5px solid var(--gold);
  border-radius:50%; opacity:.18;
}
.sahita-hero::before{ top:-90px; left:-90px; }
.sahita-hero::after{ bottom:-110px; right:-90px; width:340px; height:340px; }
.sahita-hero .sahita-hero-inner{
  display:grid; grid-template-columns:1.2fr .8fr; gap:48px;
  align-items:center; max-width:1100px; margin:0 auto;
}
.sahita-hero h1{
  font-family:var(--serif); font-weight:600;
  font-size:52px; line-height:1.1; letter-spacing:-.015em;
  color:var(--maroon); margin:14px 0 18px;
}
.sahita-hero p.lede{
  font-family:var(--sans); font-size:18px; line-height:1.6;
  color:var(--ink); margin:0 0 26px; max-width:520px;
}
.sahita-hero .sahita-trust-badge{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 14px; border-radius:var(--r-pill);
  background:rgba(232,163,61,.16); border:1px solid rgba(232,163,61,.45);
  color:var(--maroon); font-family:var(--sans); font-weight:600; font-size:13px;
}
.sahita-hero .sahita-hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.sahita-hero .sahita-phone{
  width:280px; aspect-ratio:9/19; margin-left:auto;
  background:linear-gradient(160deg,#fff 0%,var(--sand) 100%);
  border:8px solid var(--maroon-dk); border-radius:36px;
  box-shadow:0 24px 60px rgba(42,36,34,.22), inset 0 0 0 2px var(--gold);
  position:relative; overflow:hidden;
}
.sahita-hero .sahita-phone::before{
  content:""; position:absolute; top:8px; left:50%; transform:translateX(-50%);
  width:60px; height:6px; background:var(--maroon-dk); border-radius:0 0 8px 8px;
}
.sahita-hero .sahita-phone-content{
  padding:36px 18px 18px; text-align:center;
  font-family:var(--serif); color:var(--maroon);
}
.sahita-hero .sahita-phone-content .score-num{
  font-family:var(--serif); font-size:64px; font-weight:600; line-height:1;
  color:var(--maroon); margin:8px 0 4px;
}
.sahita-hero .sahita-phone-content .score-label{
  font-family:var(--sans); font-size:12px; color:var(--mut); letter-spacing:.12em; text-transform:uppercase;
}
@media (max-width:860px){
  .sahita-hero .sahita-hero-inner{ grid-template-columns:1fr; text-align:center; gap:32px; }
  .sahita-hero h1{ font-size:38px; }
  .sahita-hero .sahita-hero-ctas{ justify-content:center; }
  .sahita-hero .sahita-phone{ margin:0 auto; width:240px; }
}

/* --- Stat strip -------------------------------------------- */
.sahita-stat-strip{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  background:var(--maroon); color:var(--iv);
  border-radius:var(--r-card); overflow:hidden;
  max-width:1100px; margin:-32px auto 0;
  position:relative; z-index:2;
  box-shadow:var(--shadow-h);
}
.sahita-stat{ padding:24px 16px; text-align:center; border-right:1px solid rgba(232,163,61,.25); }
.sahita-stat:last-child{ border-right:0; }
.sahita-stat .num{ font-family:var(--serif); font-size:34px; font-weight:600; color:var(--gold); line-height:1; }
.sahita-stat .lbl{ font-family:var(--sans); font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--sand); margin-top:6px; }
@media (max-width:600px){
  .sahita-stat-strip{ grid-template-columns:repeat(2,1fr); margin:24px 18px 0; }
  .sahita-stat{ border-right:0; border-bottom:1px solid rgba(232,163,61,.25); }
  .sahita-stat:nth-child(odd){ border-right:1px solid rgba(232,163,61,.25); }
  .sahita-stat:nth-last-child(-n+2){ border-bottom:0; }
}

/* --- Feature grid (6 cards, 3-up) -------------------------- */
.sahita-feature-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:20px;
  max-width:1100px; margin:0 auto;
}
.sahita-feature{
  background:#fff; border:1px solid var(--line);
  border-radius:var(--r-card); padding:24px;
  box-shadow:var(--shadow);
  transition:transform .15s ease, box-shadow .15s ease;
}
.sahita-feature:hover{ transform:translateY(-2px); box-shadow:var(--shadow-h); }
.sahita-feature .icon{
  width:44px; height:44px; border-radius:12px;
  background:var(--sand); color:var(--maroon);
  display:inline-flex; align-items:center; justify-content:center;
  font-size:22px; margin-bottom:12px;
}
.sahita-feature h3{ font-family:var(--serif); font-size:20px; color:var(--maroon); margin:0 0 6px; line-height:1.25; }
.sahita-feature p{ font-family:var(--sans); font-size:15px; color:var(--ink); margin:0; line-height:1.55; }
@media (max-width:860px){ .sahita-feature-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .sahita-feature-grid{ grid-template-columns:1fr; } }

/* --- Section header (eyebrow + H2 + lede) ------------------ */
.sahita-sec-head{ text-align:center; max-width:760px; margin:0 auto 40px; }
.sahita-sec-head .eyebrow{
  font-family:var(--sans); font-size:12px; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase; color:var(--gold-dk);
}
.sahita-sec-head h2{
  font-family:var(--serif); font-weight:600; font-size:36px; line-height:1.15;
  color:var(--ink); margin:10px 0 12px;
  /* override .entry-content h2 marigold-rule display:flex if section header is inside content */
  display:block;
}
.sahita-sec-head h2::before{ content:none; }
.sahita-sec-head p{ color:var(--mut); font-size:16px; margin:0; }
@media (max-width:560px){ .sahita-sec-head h2{ font-size:28px; } }

/* --- Ashta Koota grid (8 cards, 4-up → 2-up → 1-up) -------- */
.sahita-koota-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px;
  max-width:1100px; margin:0 auto;
}
@media (max-width:860px){ .sahita-koota-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:480px){ .sahita-koota-grid{ grid-template-columns:1fr; } }

/* --- How it works (3 steps) -------------------------------- */
.sahita-steps{
  display:grid; grid-template-columns:repeat(3,1fr); gap:32px;
  max-width:980px; margin:0 auto;
}
.sahita-step{ text-align:center; }
.sahita-step .n{
  width:56px; height:56px; border-radius:50%;
  background:var(--maroon); color:var(--gold);
  font-family:var(--serif); font-size:24px; font-weight:600;
  display:inline-flex; align-items:center; justify-content:center;
  box-shadow:0 0 0 4px rgba(110,20,35,.08);
  margin-bottom:14px;
}
.sahita-step h3{ font-family:var(--serif); font-size:20px; color:var(--maroon); margin:0 0 6px; }
.sahita-step p{ color:var(--ink); font-size:15px; line-height:1.55; margin:0; }
@media (max-width:760px){ .sahita-steps{ grid-template-columns:1fr; gap:24px; } }

/* --- Trust band -------------------------------------------- */
.sahita-trust-band{
  background:var(--sand); border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.sahita-trust-band .row{
  display:flex; gap:32px; flex-wrap:wrap; justify-content:center; align-items:center;
  max-width:1100px; margin:0 auto;
}
.sahita-trust-band .item{
  font-family:var(--sans); font-size:14px; color:var(--ink);
  display:inline-flex; align-items:center; gap:8px;
}
.sahita-trust-band .item .ico{ color:var(--gold-dk); font-size:18px; }

/* --- Article cards (3-up) ---------------------------------- */
.sahita-article-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:22px;
  max-width:1100px; margin:0 auto;
}
.sahita-article-card{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-card);
  overflow:hidden; box-shadow:var(--shadow);
  display:flex; flex-direction:column;
}
.sahita-article-card .thumb{
  aspect-ratio:16/9; background:linear-gradient(135deg,var(--sand),var(--iv));
  display:flex; align-items:center; justify-content:center;
  color:var(--gold-dk); font-family:var(--serif); font-size:42px;
}
.sahita-article-card .body{ padding:20px; flex:1; display:flex; flex-direction:column; }
.sahita-article-card .meta{
  font-family:var(--sans); font-size:11px; font-weight:600; letter-spacing:.12em;
  text-transform:uppercase; color:var(--gold-dk); margin-bottom:8px;
}
.sahita-article-card h3{
  font-family:var(--serif); font-size:20px; line-height:1.25; color:var(--maroon);
  margin:0 0 10px;
}
.sahita-article-card h3 a{ color:var(--maroon); text-decoration:none; }
.sahita-article-card h3 a:hover{ color:var(--maroon-dk); }
.sahita-article-card p{ font-size:14px; color:var(--mut); margin:0 0 14px; flex:1; line-height:1.55; }
.sahita-article-card .read-more{
  font-family:var(--sans); font-size:13px; font-weight:600;
  color:var(--maroon); text-decoration:none;
}
.sahita-article-card .read-more:hover{ color:var(--maroon-dk); }
@media (max-width:860px){ .sahita-article-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .sahita-article-grid{ grid-template-columns:1fr; } }

/* --- Testimonials (3-up) ----------------------------------- */
.sahita-testimonials{
  display:grid; grid-template-columns:repeat(3,1fr); gap:22px;
  max-width:1100px; margin:0 auto;
}
.sahita-testimonial{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-card);
  padding:24px; box-shadow:var(--shadow); position:relative;
}
.sahita-testimonial::before{
  content:"\201C"; position:absolute; top:6px; left:14px;
  font-family:var(--serif); font-size:56px; color:var(--gold); opacity:.55; line-height:1;
}
.sahita-testimonial p{ font-family:var(--sans); font-size:15px; line-height:1.6; color:var(--ink); margin:14px 0 14px; }
.sahita-testimonial .who{ font-family:var(--sans); font-size:13px; font-weight:600; color:var(--maroon); }
.sahita-testimonial .who span{ display:block; font-weight:400; color:var(--mut); font-size:12px; margin-top:2px; }
.sahita-rating-row{
  display:flex; gap:24px; justify-content:center; flex-wrap:wrap;
  max-width:1100px; margin:32px auto 0;
}
.sahita-rating-row .stat{
  font-family:var(--serif); color:var(--maroon); font-size:32px; font-weight:600; text-align:center;
}
.sahita-rating-row .stat span{
  display:block; font-family:var(--sans); font-size:12px; color:var(--mut);
  font-weight:500; letter-spacing:.08em; text-transform:uppercase; margin-top:4px;
}
@media (max-width:860px){ .sahita-testimonials{ grid-template-columns:1fr; } }

/* --- FAQ accordion (native <details>) ---------------------- */
.sahita-faq{ max-width:780px; margin:0 auto; }
.sahita-faq details{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-card);
  padding:0; margin:0 0 12px; box-shadow:var(--shadow);
  overflow:hidden;
}
.sahita-faq summary{
  list-style:none; cursor:pointer;
  padding:18px 22px; padding-right:54px; position:relative;
  font-family:var(--sans); font-weight:600; font-size:16px; color:var(--ink);
}
.sahita-faq summary::-webkit-details-marker{ display:none; }
.sahita-faq summary::after{
  content:"+"; position:absolute; right:20px; top:50%;
  transform:translateY(-50%);
  font-family:var(--serif); font-size:28px; color:var(--gold-dk); line-height:1;
  transition:transform .15s ease;
}
.sahita-faq details[open] summary::after{ content:"\2013"; }
.sahita-faq details > div{
  padding:0 22px 20px; font-size:15px; line-height:1.65; color:var(--ink);
  border-top:1px solid var(--line);
  padding-top:14px;
}

/* --- Final CTA band (full-bleed maroon) -------------------- */
.sahita-cta-band{
  background:var(--maroon); color:var(--iv);
  text-align:center; position:relative; overflow:hidden;
}
.sahita-cta-band::before,
.sahita-cta-band::after{
  content:""; position:absolute; pointer-events:none;
  width:220px; height:220px; border:1.5px solid var(--gold);
  border-radius:50%; opacity:.22;
}
.sahita-cta-band::before{ top:-80px; left:-60px; }
.sahita-cta-band::after{ bottom:-90px; right:-60px; width:280px; height:280px; }
.sahita-cta-band .inner{ max-width:760px; margin:0 auto; position:relative; z-index:2; }
.sahita-cta-band h2{ font-family:var(--serif); font-weight:600; font-size:40px; line-height:1.15; color:var(--iv); margin:0 0 14px; }
.sahita-cta-band p{ color:var(--sand); font-size:17px; margin:0 0 28px; }
.sahita-cta-band .wp-block-buttons{ justify-content:center; }
@media (max-width:560px){ .sahita-cta-band h2{ font-size:30px; } }

/* ============================================================


/* ============================================================
   DESIGN-MATCH CHROME — header tagline, CTA band, dark footer,
   blog index hero + chips + card grid (2026-07-02)
   ============================================================ */

/* Header tagline next to logo */
.site-header .main-title{ font-family:var(--serif); font-weight:700; }
.site-header .main-title a::after{ content:'Vedic Kundali Matching'; font-family:var(--sans); font-size:11px; font-weight:500; color:var(--mut); letter-spacing:.02em; margin-left:10px; position:relative; top:-2px; }

/* Hide GP default footer — replaced by .sahita-footer */
.site-footer{ display:none; }

/* CTA band */
.sahita-ctaband{ background:var(--maroon); color:var(--iv); text-align:center; padding:64px 24px; }
.sahita-ctaband h2{ font-family:var(--serif); font-weight:600; color:var(--iv); font-size:clamp(28px,4vw,40px); margin:0 0 10px; }
.sahita-ctaband p{ color:rgba(251,247,239,.85); margin:0 0 6px; }
.sahita-cta-row{ margin-top:18px !important; display:flex; gap:18px; align-items:center; justify-content:center; flex-wrap:wrap; }
.sahita-goldbtn{ display:inline-block; background:var(--gold); color:#3A2408 !important; font-family:var(--sans); font-weight:700; font-size:15px; padding:12px 22px; border-radius:var(--r-btn); text-decoration:none; box-shadow:var(--shadow); }
.sahita-goldbtn:hover{ background:var(--gold-dk); color:#2A1A05 !important; }
.sahita-ticks{ color:rgba(251,247,239,.9); font-size:14px; font-weight:600; }

/* Dark footer */
.sahita-footer{ background:#221C19; color:#CFC6BE; }
.sahita-footer-in{ max-width:1200px; margin:0 auto; padding:56px 24px 40px; display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; }
.sahita-footer .sf-logo{ font-family:var(--serif); font-weight:700; font-size:26px; color:var(--iv); margin-bottom:8px; }
.sahita-footer p{ font-size:14px; line-height:1.6; color:#A99E95; max-width:280px; }
.sahita-footer .sf-btn{ font-size:13px; padding:9px 16px; margin-top:6px; }
.sahita-footer h4{ font-family:var(--sans); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--gold); margin:6px 0 14px; }
.sahita-footer ul{ list-style:none; margin:0; padding:0; }
.sahita-footer ul li{ margin:0 0 10px; }
.sahita-footer ul a{ color:#CFC6BE; text-decoration:none; font-size:14.5px; }
.sahita-footer ul a:hover{ color:var(--iv); }
.sf-bottom{ border-top:1px solid rgba(255,255,255,.08); }
.sf-bottom-in{ max-width:1200px; margin:0 auto; padding:18px 24px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; font-size:13px; color:#8F857C; }
.sf-bottom a{ color:#8F857C; text-decoration:none; }
.sf-bottom a:hover{ color:var(--iv); }
@media (max-width:768px){ .sahita-footer-in{ grid-template-columns:1fr; gap:28px; } }

/* Blog index hero */
.sahita-archero{ background:var(--maroon); color:var(--iv); }
.sahita-archero-in{ max-width:1200px; margin:0 auto; padding:48px 24px 56px; }
.sahita-crumb{ font-size:13px; color:rgba(251,247,239,.7); margin-bottom:14px; }
.sahita-crumb a{ color:rgba(251,247,239,.7); text-decoration:none; }
.sahita-archero h1{ font-family:var(--serif); font-weight:600; color:var(--iv); font-size:clamp(32px,5vw,46px); margin:0 0 12px; }
.sahita-archero p{ color:rgba(251,247,239,.85); max-width:460px; margin:0; font-size:16.5px; }

/* Filter chips bar */
.sahita-chipsbar{ background:var(--iv); border-bottom:1px solid var(--line); }
.sahita-chipsbar-in{ max-width:1200px; margin:0 auto; padding:16px 24px; display:flex; gap:10px; flex-wrap:wrap; }
.sahita-chipsbar .chip{ display:inline-block; padding:7px 16px; border:1px solid var(--line); border-radius:var(--r-pill); background:#fff; color:var(--ink); font-size:13.5px; font-weight:600; text-decoration:none; }
.sahita-chipsbar .chip:hover{ border-color:var(--maroon); color:var(--maroon); }
.sahita-chipsbar .chip.is-on{ background:var(--maroon); border-color:var(--maroon); color:var(--iv); }

/* Card grid for blog/category archives */
body.blog .site-main, body.archive.category .site-main{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; max-width:1200px; }
body.blog .site-main > .paging-navigation, body.archive.category .site-main > .paging-navigation, body.blog .site-main > nav, body.archive.category .site-main > nav{ grid-column:1 / -1; }
body.blog article.post, body.archive.category article.post{ background:#fff; border:1px solid var(--line); border-radius:var(--r-card); box-shadow:var(--shadow); overflow:hidden; transition:box-shadow .18s ease, transform .18s ease; margin-bottom:0 !important; }
body.blog article.post:hover, body.archive.category article.post:hover{ box-shadow:var(--shadow-h); transform:translateY(-2px); }
body.blog article.post .inside-article, body.archive.category article.post .inside-article{ padding:22px; }
body.blog article.post .post-image, body.archive.category article.post .post-image{ margin:-22px -22px 16px; }
body.blog article.post .post-image img, body.archive.category article.post .post-image img{ width:100%; height:auto; display:block; }
body.blog article.post .entry-title, body.archive.category article.post .entry-title{ font-family:var(--serif); font-size:21px; line-height:1.3; margin:8px 0 8px; }
body.blog article.post .entry-title a, body.archive.category article.post .entry-title a{ color:var(--maroon); text-decoration:none; }
body.blog article.post .entry-meta, body.archive.category article.post .entry-meta{ font-size:12.5px; color:var(--mut); }
body.blog article.post .entry-summary, body.archive.category article.post .entry-summary{ font-size:14.5px; color:var(--ink); line-height:1.6; }
body.blog article.post .read-more, body.archive.category article.post .read-more{ color:var(--maroon); font-weight:600; font-size:14px; text-decoration:none; }
@media (max-width:980px){ body.blog .site-main, body.archive.category .site-main{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ body.blog .site-main, body.archive.category .site-main{ grid-template-columns:1fr; } }

/* Pagination pills */
body.blog .paging-navigation .page-numbers, body.archive.category .paging-navigation .page-numbers{ display:inline-block; min-width:38px; text-align:center; padding:8px 12px; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); text-decoration:none; font-weight:600; margin:0 3px; }
body.blog .paging-navigation .page-numbers.current, body.archive.category .paging-navigation .page-numbers.current{ background:var(--maroon); border-color:var(--maroon); color:var(--iv); }

/* FOOTER LAYOUT FIX — override older ported footer rules + full-bleed */
.sahita-ctaband, .sahita-footer{ width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); box-sizing:border-box; }
.sahita-footer{ display:block !important; padding:0 !important; }
.sahita-footer-in{ display:grid !important; grid-template-columns:1.4fr 1fr 1fr; width:100%; box-sizing:border-box; }
.sf-bottom{ display:block !important; width:100%; box-sizing:border-box; }
.sf-bottom-in{ display:flex !important; }
@media (max-width:768px){ .sahita-footer-in{ grid-template-columns:1fr !important; } }

/* ============================================================
   HEADER POLISH + SECTION SPACING (design-match pass 2)
   ============================================================ */

/* Header: single clean bar on ivory — no white box behind nav */
.site-header, .site-header .inside-header{ background:var(--iv) !important; }
.main-navigation, .main-navigation .inside-navigation, nav#site-navigation{ background:transparent !important; }
.main-navigation ul{ background:transparent !important; }
.site-header .inside-header{ padding-top:18px; padding-bottom:18px; }

/* Nav links: Inter, ink — kill default blue */
.main-navigation .main-nav ul li a{ font-family:var(--sans); font-size:15px; font-weight:600; color:var(--ink) !important; padding-left:16px; padding-right:16px; line-height:46px; }
.main-navigation .main-nav ul li a:hover{ color:var(--maroon) !important; }
.main-navigation .main-nav ul li.current-menu-item > a,
.main-navigation .main-nav ul li[class*=current] > a{ color:var(--maroon) !important; }

/* Download Free pill: compact, like the design */
.main-navigation .main-nav ul li:last-child > a{ background:var(--maroon) !important; color:var(--iv) !important; border-radius:var(--r-pill); padding:0 22px !important; line-height:40px !important; margin-left:10px; margin-top:3px; display:inline-block; }
.main-navigation .main-nav ul li:last-child > a:hover{ background:var(--maroon-dk) !important; color:var(--iv) !important; }

/* Steps section: tighten the huge bottom gap */
body.sahita-front .sahita-steps{ padding-bottom:32px !important; margin-bottom:0 !important; }
body.sahita-front .sahita-steps + *{ margin-top:0 !important; }
body.sahita-front .sahita-trust-band{ margin-top:0 !important; }

/* ============================================================
   ARTICLE CHROME CSS — breadcrumb, chips, byline, image order,
   more-posts grid (design-match pass 3)
   ============================================================ */

/* Title first, image after title+meta */
.single-post .inside-article{ display:flex; flex-direction:column; }
.single-post .inside-article > .entry-header{ order:1; }
.single-post .inside-article > .featured-image{ order:2; margin:6px 0 26px; }
.single-post .inside-article > .entry-content{ order:3; }
.single-post .inside-article > *{ min-width:0; }
.single-post .featured-image img{ border-radius:var(--r-card); border:1px solid var(--line); box-shadow:var(--shadow); }

/* Breadcrumb + chips above H1 */
.sahita-post-crumb{ font-size:13px; color:var(--mut); margin-bottom:10px; }
.sahita-post-crumb a{ color:var(--mut); text-decoration:none; }
.sahita-post-crumb a:hover{ color:var(--maroon); }
.sahita-post-chips{ margin-bottom:12px; display:flex; gap:8px; flex-wrap:wrap; }
.sahita-post-chips .pchip{ display:inline-block; background:var(--sand); color:var(--maroon); font-size:12px; font-weight:700; letter-spacing:.02em; padding:4px 12px; border-radius:var(--r-pill); text-decoration:none; }

/* Byline row; hide GP default meta */
.sahita-postmeta{ font-size:14px; color:var(--mut); margin:10px 0 4px; }
.sahita-postmeta strong{ color:var(--ink); }
.single-post .entry-header .entry-meta{ display:none; }

/* More posts grid */
.sahita-moreposts{ max-width:var(--measure); margin:8px auto 40px; padding:0 20px; }
.sahita-moreposts h2{ font-family:var(--serif); color:var(--maroon); font-size:26px; margin-bottom:18px; }
.sahita-moreposts-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.sahita-moreposts .mp-card{ display:block; background:#fff; border:1px solid var(--line); border-radius:var(--r-card); box-shadow:var(--shadow); overflow:hidden; text-decoration:none; transition:box-shadow .18s ease, transform .18s ease; }
.sahita-moreposts .mp-card:hover{ box-shadow:var(--shadow-h); transform:translateY(-2px); }
.sahita-moreposts .mp-img{ width:100%; height:auto; display:block; }
.sahita-moreposts .mp-title{ display:block; font-family:var(--serif); color:var(--maroon); font-size:16px; line-height:1.35; padding:14px 16px 6px; }
.sahita-moreposts .mp-more{ display:block; color:var(--maroon); font-size:13px; font-weight:600; padding:0 16px 16px; }
@media (max-width:700px){ .sahita-moreposts-grid{ grid-template-columns:1fr; } }

/* FLEX ORDER FIX — all article children get explicit order */
.single-post .inside-article > *{ order:4; }
.single-post .inside-article > .entry-header{ order:1; }
.single-post .inside-article > .featured-image{ order:2; }
.single-post .inside-article > .entry-content{ order:3; }
/* Hide GP default cat-links footer + prev/next nav (not in design) */
.single-post .inside-article > footer.entry-meta,
.single-post .post-navigation,
.single-post nav.post-navigation,
.single-post .paging-navigation{ display:none !important; }

/* ============================================================
   ARTICLE RAILS GRID — TOC left, content center, app card right
   ============================================================ */
@media (min-width:1100px){
  .single-post .inside-article{ display:grid !important; grid-template-columns:200px minmax(0,720px) 260px; justify-content:center; column-gap:48px; }
  .single-post .inside-article > *{ grid-column:2; }
  .single-post .inside-article > .sahita-toc{ grid-column:1; grid-row:1 / span 60; align-self:start; position:sticky; top:110px; }
  .single-post .inside-article > .sahita-sidecard{ grid-column:3; grid-row:1 / span 60; align-self:start; position:sticky; top:110px; }
}
@media (max-width:1099px){ .sahita-toc, .sahita-sidecard{ display:none; } }

/* TOC */
.sahita-toc .toc-t{ font-family:var(--sans); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-dk); margin-bottom:10px; }
.sahita-toc ol{ list-style:none; margin:0; padding:0; border-left:2px solid var(--line); }
.sahita-toc li{ margin:0; }
.sahita-toc a{ display:block; padding:6px 0 6px 12px; font-size:13.5px; line-height:1.4; color:var(--mut); text-decoration:none; border-left:2px solid transparent; margin-left:-2px; }
.sahita-toc a:hover{ color:var(--maroon); border-left-color:var(--gold); }

/* Side card */
.sahita-sidecard{ background:#fff; border:1.5px solid var(--maroon); border-radius:var(--r-card); box-shadow:var(--shadow); padding:20px; text-align:center; }
.sahita-sidecard .sc-logo{ width:40px; height:40px; border-radius:50%; background:var(--maroon); color:var(--iv); font-family:var(--serif); font-weight:700; font-size:20px; line-height:40px; margin:0 auto 10px; }
.sahita-sidecard .sc-t{ font-family:var(--serif); font-weight:600; color:var(--maroon); font-size:18px; margin-bottom:6px; }
.sahita-sidecard p{ font-size:13.5px; color:var(--mut); line-height:1.5; margin:0 0 14px; }
.sahita-sidecard .sc-btn{ display:block; font-size:14px; padding:10px 12px; }
.sahita-sidecard .sc-fine{ font-size:11.5px; color:var(--mut); margin-top:10px; }

/* Author box */
.sahita-authorbox{ display:flex; gap:14px; align-items:flex-start; background:var(--sand); border-radius:var(--r-card); padding:18px 20px; margin:26px 0; }
.sahita-authorbox img{ border-radius:50%; flex-shrink:0; }
.sahita-authorbox .ab-t{ font-family:var(--serif); font-weight:600; color:var(--maroon); font-size:16px; margin-bottom:4px; }
.sahita-authorbox p{ font-size:14px; color:var(--ink); line-height:1.55; margin:0; }

/* Keep byline + moreposts inside the grid center column */
.single-post .sahita-moreposts{ max-width:none; padding:0; }

/* STEPS GAP FINAL — tighten section padding around the steps */
.sahita-section:has(.sahita-steps){ padding-bottom:36px !important; }
.sahita-section:has(.sahita-steps) + .sahita-section{ padding-top:36px !important; }
body.sahita-front .sahita-steps{ padding-bottom:0 !important; }