/* Loaded, therefore the plugin is serving the assets.
   The page ships hidden behind a small inline guard so that a site whose plugin
   has not been updated yet shows one honest line instead of an unstyled, dead
   looking form. These two rules are what lift the guard, and they carry
   !important because the guard sits later in the document than this file. */
.jt{display:block!important}
.jt-wait{display:none!important}

/* Jathakam report page. All selectors prefixed jt- so nothing collides with
   Astra or the other tool pages. Brand tokens match the rest of manasastram. */

.entry-header{display:none}
/* Astra's page builder layout injects a max-width:none on every direct child of
   .entry-content, which beats a single class. This is the rule that has to win. */
.entry-content > .jt{max-width:1120px!important;margin:0 auto!important;padding:0 16px 40px!important}

.jt{
  --gold:#C9971C; --gold-d:#96650A; --maroon:#6B1626; --ink:#2B2118;
  --cream:#FBF3E3; --card:#FFFDF7; --line:#E5D8B8; --mut:#7A6C57;
  --shadow:0 1px 2px rgba(43,33,24,.05),0 10px 30px rgba(43,33,24,.07);
  color:var(--ink);
  font-family:'Noto Sans Telugu',Poppins,system-ui,sans-serif;
  font-size:16px;line-height:1.7;
}
.jt *{box-sizing:border-box}
.jt p{margin:0 0 14px}

/* ---------- hero ---------- */
.jt-hero{position:relative;padding:44px 0 46px;overflow:hidden}

/* A drifting nakshatra field. Themed to the subject and drawn in canvas, which
   costs a few kilobytes instead of a stock photograph that would say nothing. */
.jt-sky{
  position:absolute;inset:0;width:100%;height:100%;pointer-events:none;
  opacity:.75;z-index:0;
}

.jt-herogrid{
  position:relative;z-index:1;display:grid;gap:40px;align-items:center;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
}
@media (max-width:900px){
  .jt-herogrid{grid-template-columns:1fr;gap:22px}
  /* display:contents lifts the left column's children into the grid so each one
     can be ordered individually, which is what puts the sample card third. */
  .jt-heroleft{display:contents}
  .jt-heroleft > *{text-align:center}
  .jt-eyebrow{order:1}
  .jt-hero h1{order:2}
  .jt-sub{order:3}
  .jt-heroright{order:4}
  .jt-hookrow{order:5}
  .jt-herocta{order:6}
}

.jt-eyebrow{font:600 12px/1 Poppins,sans-serif;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold-d);margin:0 0 16px!important}
.jt-hero h1{
  margin:0 0 16px!important;color:var(--maroon)!important;
  font-family:'Noto Serif Telugu',Georgia,serif;font-weight:600;
  font-size:clamp(1.9rem,4vw,3.1rem);line-height:1.1;letter-spacing:-.012em;
  text-wrap:balance;
}
.jt-sub{margin:0 0 22px!important;font-size:1.02rem;color:var(--mut);max-width:52ch}
@media (max-width:900px){.jt-sub{margin-left:auto!important;margin-right:auto!important}}

/* the hooks double as the preview's tab strip */
.jt-hookrow{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:24px}
@media (max-width:900px){
  .jt-hookrow{
    flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;
    scroll-snap-type:x mandatory;padding-bottom:6px;margin-bottom:18px;
    scrollbar-width:none;-ms-overflow-style:none;
  }
  .jt-hookrow::-webkit-scrollbar{display:none}
  .jt-hook{flex:0 0 auto;scroll-snap-align:start}
}
.jt-hook{
  border:1px solid var(--line);background:var(--card);border-radius:999px;cursor:pointer;
  padding:7px 14px;font:600 13px/1.35 'Noto Sans Telugu',Poppins,sans-serif;color:var(--mut);
  transition:background .2s,color .2s,border-color .2s;
}
.jt-hook:hover{border-color:var(--gold);color:var(--ink)}
.jt-hook.on{background:var(--maroon);border-color:var(--maroon);color:#FFF6E2}
.jt-hook:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* The price sits in the hero rather than only down at the buy box, because the
   whole pitch is that a real reading costs Rs 199 and the visitor should know
   that before scrolling. The struck through figure is the reference price. */
/* The call to action, deliberately NOT maroon.
   Maroon is the hero's own colour, so a maroon panel inside a maroon-headed
   hero just reads as more of the same page. This is deep green, which is the
   one colour that carries gold as well as maroon does and still reads as
   auspicious rather than corporate. Against a cream hero it is the darkest
   thing on screen, so the eye lands on it. */
.jt-herocta{
  background:linear-gradient(152deg,#1B5138 0%,#123A28 55%,#0C2A1D 100%);
  border:1px solid rgba(201,151,28,.5);border-radius:20px;
  padding:20px 22px 18px;margin:0 0 8px;position:relative;overflow:hidden;
  box-shadow:0 3px 8px rgba(12,42,29,.18),0 20px 44px rgba(12,42,29,.26);
}
.jt-herocta::after{
  content:"";position:absolute;right:-80px;top:-80px;width:250px;height:250px;
  border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(201,151,28,.26) 0%,rgba(201,151,28,0) 70%);
}
.jt-herocta > *{position:relative;z-index:1}

.jt-heroprice{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  background:none;border:0;border-radius:0;
  padding:0;margin:0 0 14px;
}
.jt-hp-tag{background:rgba(246,212,94,.16);color:#F6D45E;border-radius:999px;padding:5px 12px;
  font:600 11.5px/1.4 Poppins,sans-serif;letter-spacing:.04em;white-space:nowrap;
  border:1px solid rgba(201,151,28,.45)}
.jt-hp-nums{display:inline-flex;align-items:baseline;gap:7px}
.jt-hp-nums s{color:#B7CEC0;font-size:15px}
/* Bright gold, not cream. Cream on dark green reads soft, and the price is the
   one number a visitor must not miss. Gold is the accent and it lands hard here. */
.jt-hp-nums b{color:#F6D45E;font-family:'Noto Serif Telugu',Georgia,serif;
  font-size:31px;font-weight:800;line-height:1;text-shadow:0 1px 0 rgba(0,0,0,.25)}
.jt-hp-note{font-size:12.5px;color:#CBDFD4;white-space:nowrap}
@media (max-width:900px){
  .jt-heroprice{justify-content:center}
}
@media (max-width:420px){
  .jt-hp-note{display:none}
}

.jt-cta{
  display:block;width:100%;color:#231A08;
  background:linear-gradient(135deg,#F2CB63 0%,#DCA92A 52%,#C4900F 100%);
  border-radius:14px;padding:15px 20px;text-align:center;margin:0 0 13px;
  box-shadow:0 6px 20px rgba(0,0,0,.28);transition:transform .15s,box-shadow .15s;
}
.jt-cta span em{font-style:normal;margin-left:9px;display:inline-block;
  transition:transform .18s ease}
.jt-cta:hover span em{transform:translateX(4px)}
/* Astra underlines content anchors, so the button needs to say otherwise and
   win on specificity. */
.jt .jt-cta,.jt .jt-cta:hover,.jt .jt-cta:focus{text-decoration:none!important}
.jt .jt-footlinks a{text-decoration:none}
.jt .jt-footlinks a:hover{text-decoration:underline}

.jt-cta:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.34)}
.jt-cta span{display:block;font:600 16px/1.35 Poppins,sans-serif}
.jt-cta small{display:block;margin-top:3px;font-size:12px;opacity:.8}

.jt-trustline{font-size:12.5px;line-height:1.6;color:#A9C4B4;margin:0!important;
  padding-top:12px;border-top:1px solid rgba(255,246,226,.16)}
.jt-trustline strong{color:#F2D999}


/* ---------- the animated report preview ---------- */
.jt-stack{position:relative;padding:0 8px 26px;perspective:1600px}
.jt-sheetback{
  position:absolute;left:50%;top:0;width:88%;height:96%;border-radius:14px;
  background:var(--card);border:1px solid var(--line);
}
.jt-b1{transform:translate(-50%,0) rotate(-2.4deg) translateY(11px);opacity:.85}
.jt-b2{transform:translate(-50%,0) rotate(3deg) translateY(21px);opacity:.55}

.jt-demo{
  position:relative;margin:0;background:#FFFDF7;border:1px solid var(--line);
  border-radius:15px;padding:26px 26px 20px;
  box-shadow:0 2px 4px rgba(43,33,24,.05),0 22px 50px rgba(43,33,24,.14);
}
.jt-demotag{
  position:absolute;top:-11px;right:18px;background:var(--maroon);color:#FFF6E2;
  border-radius:6px;padding:4px 10px;font:600 10.5px/1.5 Poppins,sans-serif;letter-spacing:.06em;
}
.jt-demohead{display:flex;align-items:center;gap:13px;padding-bottom:14px;
  border-bottom:2px solid var(--gold);margin-bottom:16px}
.jt-demonum{
  flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:9px;
  background:rgba(201,151,28,.16);color:var(--gold-d);
  font:700 15px/1 Poppins,sans-serif;font-variant-numeric:tabular-nums;
}
.jt-demohead strong{
  display:block;font-family:'Noto Serif Telugu',Georgia,serif;font-weight:600;
  font-size:1.16rem;color:var(--maroon);line-height:1.25;
}
.jt-demohead em{display:block;font-style:normal;font-size:12px;color:var(--mut);
  letter-spacing:.05em;text-transform:uppercase;margin-top:1px}

.jt-demoq{
  margin:0 0 15px!important;font:600 14px/1.5 Poppins,sans-serif;color:var(--ink);
}
.jt-demoq::before{content:"“";color:var(--gold);font-size:22px;line-height:0;margin-right:2px}

.jt-demobody{min-height:184px}
.jt-demote{margin:0 0 12px!important;font-size:15.5px;line-height:1.95;color:var(--ink)}
.jt-demoen{margin:0!important;font-size:13px;line-height:1.75;color:var(--mut)}

/* the highlighter sweep, drawn as a growing background rather than a box */
.jt-mk{
  /* mark carries a browser default background of pure yellow, which shows
     straight through a background-image and turns the brand gold into
     highlighter yellow. Clearing it is the whole fix. */
  background-color:transparent;color:inherit;
  background-image:linear-gradient(rgba(201,151,28,.34),rgba(201,151,28,.34));
  background-repeat:no-repeat;background-position:0 92%;background-size:0 38%;
  padding:0 2px;border-radius:2px;
  transition:background-size .85s cubic-bezier(.4,0,.2,1) .35s;
}
.jt-demo.lit .jt-mk{background-size:100% 38%}

/* The card turns over rather than cross fading, so each section arrives as its
   own page of a sample report. Two halves: turn away, swap the words at the
   point where the card is edge on, then turn back from the other side. */
.jt-demo{
  transform-origin:50% 50%;backface-visibility:hidden;
  transition:transform .34s cubic-bezier(.42,0,.4,1),box-shadow .34s ease;
}
.jt-demo.flipout{transform:rotateY(-84deg) scale(.93);
  box-shadow:0 1px 2px rgba(43,33,24,.04),0 8px 18px rgba(43,33,24,.08)}
.jt-demo.flipin{transform:rotateY(84deg) scale(.93);transition:none;
  box-shadow:0 1px 2px rgba(43,33,24,.04),0 8px 18px rgba(43,33,24,.08)}
/* The sheets behind lift a little as the card turns, which reads as a stack
   being leafed through rather than one card spinning on its own. */
.jt-sheetback{transition:transform .34s cubic-bezier(.42,0,.4,1),opacity .34s ease}
.jt-stack.turning .jt-b1{transform:translate(-50%,0) rotate(-4.2deg) translateY(6px);opacity:1}
.jt-stack.turning .jt-b2{transform:translate(-50%,0) rotate(5.4deg) translateY(14px);opacity:.75}

.jt-demote,.jt-demoen,.jt-demoq{transition:opacity .32s ease,transform .32s ease}

.jt-demofoot{display:flex;align-items:center;gap:5px;margin-top:18px;padding-top:13px;
  border-top:1px solid var(--line)}
.jt-demofoot i{display:block;width:16px;height:4px;border-radius:2px;background:rgba(201,151,28,.4)}
.jt-demofoot i:nth-child(2){width:26px;opacity:.7}
.jt-demofoot i:nth-child(3){width:10px;opacity:.45}
.jt-demofoot span{margin-left:auto;font:400 10.5px/1 Poppins,sans-serif;color:var(--mut);letter-spacing:.05em}

.jt-dots{display:flex;justify-content:center;gap:6px;margin-top:20px}
.jt-dots i{display:block;width:22px;height:3px;border-radius:2px;background:var(--line);
  transition:background .3s}
.jt-dots i.on{background:var(--gold)}

/* ---------- entrances ---------- */
.jt-rise{opacity:0;transform:translateY(14px);
  transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.3,1)}
.jt-rise.in{opacity:1;transform:none}
.jt-heroright{opacity:0;transform:translateY(20px) scale(.975);
  transition:opacity .8s ease .25s,transform .8s cubic-bezier(.2,.7,.3,1) .25s}
.jt-heroright.in{opacity:1;transform:none}
.jt-reveal{opacity:0;transform:translateY(16px);
  transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.3,1)}
.jt-reveal.in{opacity:1;transform:none}

/* ---------- cards and headings ---------- */
.jt-card{
  background:var(--card);border:1px solid var(--line);border-radius:16px;
  padding:26px 24px;margin:0 0 26px;box-shadow:var(--shadow);
}
.jt-card h2,.jt-h2{
  margin:0 0 8px!important;color:var(--maroon)!important;
  font-family:'Noto Serif Telugu',Georgia,serif;font-weight:600;
  font-size:clamp(1.25rem,2.6vw,1.6rem);line-height:1.25;
}
.jt-h2{margin-top:36px!important}
.jt-note,.jt-help,.jt-secintro{font-size:13.5px;line-height:1.6;color:var(--mut)}
.jt-note{margin-bottom:20px!important}
.jt-help{margin:2px 0 14px!important}
.jt-secintro{margin:0 0 20px!important;max-width:66ch}

/* ---------- form ---------- */
.jt-frow{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:14px}
.jt-fld{display:block;position:relative;width:100%}
.jt-fld.jt-wide{grid-column:1/-1}
.jt-fld > span{
  display:block;margin-bottom:6px;font:600 12px/1.4 Poppins,sans-serif;
  letter-spacing:.02em;color:var(--ink);
}
.jt-fld input{
  display:block;width:100%;height:47px;padding:0 13px;font-size:15px;font-family:inherit;
  color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;
  -webkit-appearance:none;appearance:none;
}
.jt-fld input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,151,28,.2)}

.jt-seg{display:flex;gap:6px;padding:4px;background:rgba(201,151,28,.10);border-radius:11px;height:47px}
.jt-seg button{
  flex:1;border:0;background:transparent;border-radius:8px;cursor:pointer;
  font:600 14px/1 Poppins,sans-serif;color:var(--mut);
}
.jt-seg button.on{background:#fff;color:var(--maroon);box-shadow:0 1px 3px rgba(43,33,24,.14)}

.jt-sugg{
  position:absolute;z-index:40;top:100%;left:0;right:0;margin-top:4px;max-height:240px;
  overflow-y:auto;background:#fff;border:1px solid var(--line);border-radius:11px;
  box-shadow:0 12px 34px rgba(43,33,24,.16);
}
.jt-sugg button{
  display:block;width:100%;text-align:left;border:0;background:none;cursor:pointer;
  padding:10px 13px;font-size:14px;font-family:inherit;color:var(--ink);border-bottom:1px solid #F2EAD6;
}
.jt-sugg button:last-child{border-bottom:0}
.jt-sugg button:hover,.jt-sugg button.on{background:rgba(201,151,28,.11)}
.jt-sugg small{display:block;color:var(--mut);font-size:12px;margin-top:1px}

/* ---------- buttons ---------- */
.jt-btn{
  display:block;width:100%;border:0;border-radius:12px;cursor:pointer;padding:13px 18px;
  font-family:Poppins,sans-serif;text-align:center;transition:filter .15s,transform .05s;
}
.jt-btn span{display:block;font-size:15.5px;font-weight:600;line-height:1.35}
.jt-btn small{display:block;margin-top:3px;font-size:12px;font-weight:400;opacity:.78}
.jt-btn:hover{filter:brightness(1.06)}
.jt-btn:active{transform:translateY(1px)}
.jt-btn:disabled{opacity:.55;cursor:default;filter:none;transform:none}
.jt-btn-primary{background:var(--gold);color:#231A08}
.jt-btn-buy{background:var(--maroon);color:#FFF6E2;max-width:460px;margin:0 auto}
.jt-btn:focus-visible{outline:3px solid var(--maroon);outline-offset:2px}

.jt-err{
  margin:0 0 12px!important;padding:10px 12px;border-radius:9px;font-size:13.5px;
  color:#8A1F2E;background:rgba(138,31,46,.09);
}
.jt-fine{margin:12px 0 0!important;font-size:12px;color:var(--mut);text-align:center}

/* ---------- chart basics ---------- */
.jt-grid3{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:14px}
.jt-stat{
  background:var(--card);border:1px solid var(--line);border-radius:13px;padding:16px 18px;text-align:center;
}
.jt-lbl{display:block;font:600 11px/1.4 Poppins,sans-serif;letter-spacing:.09em;
  text-transform:uppercase;color:var(--mut);margin-bottom:7px}
.jt-stat strong{
  display:block;font-family:'Noto Serif Telugu',Georgia,serif;font-weight:600;
  font-size:1.55rem;line-height:1.15;color:var(--maroon);
}
.jt-stat em{display:block;margin-top:3px;font-style:normal;font-size:13px;color:var(--mut)}

.jt-cusp{
  padding:11px 14px;border-radius:10px;font-size:13.5px;line-height:1.55;
  background:rgba(201,151,28,.13);border:1px solid rgba(201,151,28,.4);color:#6b5210;
}

.jt-planets{
  display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));margin:14px 0 0;
}
.jt-gr{
  background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:13.5px;
}
.jt-gr b{display:block;color:var(--maroon);font-size:14.5px;margin-bottom:1px}
.jt-gr i{font-style:normal;color:var(--mut);font-size:12.5px}
.jt-gr .jt-rx{color:var(--gold-d);font-weight:600;font-size:11.5px;letter-spacing:.04em}

/* ---------- gate ---------- */
.jt-gate{border-color:var(--gold);border-width:1.5px}
.jt-gatesub{font-size:14.5px;color:var(--mut);margin-bottom:18px!important}
.jt-check{display:flex;gap:10px;align-items:flex-start;margin:4px 0 18px;font-size:13px;
  line-height:1.55;color:var(--mut);cursor:pointer}
.jt-check input{margin-top:3px;width:17px;height:17px;accent-color:var(--gold);flex:0 0 auto}

/* ---------- the reading ---------- */
.jt-read{
  background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px 26px;
  box-shadow:var(--shadow);
}
.jt-read h3{
  margin:0 0 12px!important;color:var(--maroon)!important;font-family:'Noto Serif Telugu',Georgia,serif;
  font-weight:600;font-size:1.1rem;
}
.jt-read h3 + p{margin-top:0}
.jt-read h3:not(:first-child){margin-top:26px!important;padding-top:22px;border-top:1px solid var(--line)}
.jt-te{font-size:16.5px;line-height:1.95;color:var(--ink)}
.jt-en{font-size:14.5px;line-height:1.75;color:var(--mut)}
.jt-freeend{margin:16px 0 0!important;text-align:center;font-size:13.5px;color:var(--mut)}

/* ---------- locked cards ---------- */
.jt-lockgrid{perspective:1200px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(262px,1fr));margin-bottom:26px}
.jt-lock.dealt{opacity:1;transform:none}
.jt-lock{
  opacity:0;transform:translateY(22px) rotateX(9deg);transform-origin:50% 0;
  transition:opacity .5s cubic-bezier(.22,.7,.3,1),transform .5s cubic-bezier(.22,.7,.3,1);
  position:relative;background:var(--card);border:1px solid var(--line);border-radius:14px;
  padding:18px 18px 16px;overflow:hidden;
}
.jt-lock h3{
  margin:0 0 4px!important;color:var(--maroon)!important;font-family:'Noto Serif Telugu',Georgia,serif;
  font-weight:600;font-size:1.06rem;
}
.jt-lock .jt-q{font-size:13.5px;line-height:1.55;color:var(--ink);margin:0 0 12px}
.jt-lock .jt-count{
  display:inline-block;padding:4px 10px;border-radius:6px;background:rgba(201,151,28,.15);
  color:var(--gold-d);font:600 11.5px/1.5 Poppins,sans-serif;letter-spacing:.03em;
}
.jt-lock .jt-blur{margin-top:12px;display:grid;gap:7px}
.jt-lock .jt-blur i{display:block;height:8px;border-radius:4px;background:linear-gradient(90deg,rgba(107,22,38,.16),rgba(107,22,38,.05))}
.jt-lock .jt-blur i:nth-child(2){width:92%}
.jt-lock .jt-blur i:nth-child(3){width:64%}
.jt-lock::after{
  content:"🔒";position:absolute;top:14px;right:15px;font-size:14px;opacity:.5;
}

/* ---------- buy ---------- */
.jt-buy{
  background:linear-gradient(180deg,rgba(201,151,28,.10),rgba(201,151,28,.03));
  border:1.5px solid var(--gold);border-radius:18px;padding:28px 24px;text-align:center;
}
.jt-price{display:flex;align-items:baseline;justify-content:center;gap:11px;flex-wrap:wrap;margin-bottom:8px}
.jt-price strong{font-family:'Noto Serif Telugu',Georgia,serif;font-size:2.5rem;line-height:1;color:var(--maroon)}
.jt-was{font-size:1.15rem;color:var(--mut);text-decoration:line-through}
.jt-off{padding:3px 9px;border-radius:6px;background:var(--maroon);color:#FFF6E2;
  font:600 11.5px/1.6 Poppins,sans-serif;letter-spacing:.04em}
.jt-buysub{max-width:46ch;margin:0 auto 20px!important;font-size:14px;color:var(--mut)}
.jt-assure{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:6px;font-size:13px;color:var(--mut)}
.jt-assure li::before{content:"✓";color:var(--gold-d);font-weight:700;margin-right:7px}

/* ---------- sample pages ---------- */
.jt-sample{margin-top:12px}
.jt-pages{display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:26px}
@media (max-width:600px){.jt-pages{grid-template-columns:1fr 1fr}.jt-pages .jt-pg:last-child{display:none}}
.jt-pg{margin:0}
.jt-pgbody{
  aspect-ratio:1/1.414;background:#fff;border:1px solid var(--line);border-radius:8px;
  box-shadow:var(--shadow);padding:16px 15px;overflow:hidden;
}
.jt-pgtitle{font-family:'Noto Serif Telugu',Georgia,serif;color:var(--maroon);font-size:14px;
  font-weight:600;margin-bottom:4px}
.jt-pgmeta{font-size:9px;color:var(--mut);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}
.jt-pgrow{display:flex;gap:5px;margin-bottom:12px}
.jt-pgrow span{flex:1;height:26px;border-radius:5px;background:rgba(201,151,28,.18)}
.jt-pgtable{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.jt-pgtable i{display:block;height:15px;border-radius:3px;background:rgba(43,33,24,.07)}
.jt-pgline{height:6px;border-radius:3px;background:rgba(43,33,24,.10);margin-bottom:6px}
.jt-pgline.sp{margin-top:12px}
.w60{width:60%}.w72{width:72%}.w78{width:78%}.w88{width:88%}.w90{width:90%}.w92{width:92%}.w94{width:94%}.w96{width:96%}
.jt-pgbars{display:grid;gap:6px;margin-bottom:6px}
.jt-pgbars i{display:block;height:11px;border-radius:3px;background:rgba(107,22,38,.22)}
.jt-pg figcaption{margin-top:9px;text-align:center;font-size:12px;color:var(--mut)}

.jt-toc{margin:0;padding-left:22px;font-size:14.5px;line-height:1.85;color:var(--mut)}
.jt-toc b{color:var(--ink);font-weight:600}

/* ---------- faq ---------- */
.jt-faq details{
  background:var(--card);border:1px solid var(--line);border-radius:11px;
  padding:14px 18px;margin-bottom:9px;
}
.jt-faq summary{cursor:pointer;font-weight:600;font-size:14.5px;color:var(--maroon);list-style:none}
.jt-faq summary::-webkit-details-marker{display:none}
.jt-faq summary::before{content:"+";display:inline-block;width:18px;color:var(--gold-d);font-weight:700}
.jt-faq details[open] summary::before{content:"−"}
.jt-faq details p{margin:12px 0 0!important;font-size:14px;line-height:1.7;color:var(--mut)}

.jt-disclaimer{
  margin:30px 0 0!important;padding-top:18px;border-top:1px solid var(--line);
  font-size:12.5px;line-height:1.7;color:var(--mut);text-align:center;max-width:68ch;
  margin-left:auto!important;margin-right:auto!important;
}

/* ---------- in page footer ---------- */
.jt-foot{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);text-align:center}
.jt-footlinks{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-bottom:14px}
.jt-footlinks a{font-size:13.5px;color:var(--maroon);text-decoration:none;font-weight:500}
.jt-footlinks a:hover{text-decoration:underline}
.jt-footmeta{margin:0!important;font-size:12.5px;line-height:1.8;color:var(--mut)}
.jt-footmeta a{color:var(--mut)}

/* ---------- the printed report ----------
   Lives outside .jt, so it must set its own box-sizing. Getting this wrong is
   what crushed every line of the first version. */
#jtSheet,#jtSheet *{box-sizing:border-box}
#jtSheet{position:fixed;left:-10000px;top:0;width:794px;background:#fff}

.jt-sheetpg{
  width:794px;height:1123px;overflow:hidden;position:relative;
  background:#fff;color:#2B2118;padding:56px 60px 74px;
  font-family:'Noto Sans Telugu',Poppins,sans-serif;
}
.r-ruler{height:auto!important;overflow:visible!important}

.r-foot{
  position:absolute;left:60px;right:60px;bottom:30px;display:flex;
  justify-content:space-between;font:400 10px/1 Poppins,sans-serif;color:#A79C8B;
  border-top:1px solid #EADFC6;padding-top:10px;letter-spacing:.04em;
}

/* cover */
.r-coverpg{padding:0}
.r-cover{
  height:1123px;padding:76px 66px 60px;position:relative;
  display:flex;flex-direction:column;
  background:linear-gradient(160deg,#6B1626 0%,#4A0F1C 55%,#2B0910 100%);color:#FFF6E2;
}
/* The cover used fixed margins, which left a third of the page empty under the
   cards. Two auto margins split the slack instead, so the block always sits in
   the same visual place whatever the length of the name and the town. */
.r-cbrand{font:600 13px/1 Poppins,sans-serif;letter-spacing:.34em;text-transform:uppercase;
  color:#E8C56A;margin-bottom:0;position:relative;z-index:2}
/* Two spacers rather than two auto margins, so the slack is split 3 to 1 and the
   title block sits low on the page with the rings filling the band above it. */
.r-cgap{flex:3 1 0}
.r-cgap2{flex:1 1 0}
.r-chead{position:relative;z-index:2}
/* Thin concentric rings bleeding off the right edge. Plain divs rather than
   pseudo elements, because html2canvas renders those far more reliably. */
.r-cring,.r-cring2{position:absolute;border-radius:50%;pointer-events:none}
.r-cring{right:-190px;top:60px;width:560px;height:560px;border:1px solid rgba(201,151,28,.26)}
.r-cring2{right:-96px;top:154px;width:372px;height:372px;border:1px solid rgba(201,151,28,.17)}
.r-cglow{position:absolute;right:-160px;top:20px;width:640px;height:640px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,151,28,.13) 0%,rgba(201,151,28,0) 68%);
  pointer-events:none}
.r-ctitle{font-family:'Noto Serif Telugu',Georgia,serif;font-size:46px;line-height:1.2;
  font-weight:600;margin-bottom:10px}
.r-csub{font:400 15px/1 Poppins,sans-serif;letter-spacing:.16em;text-transform:uppercase;
  color:#D8B978}
.r-cline{width:70px;height:3px;background:#C9971C;margin:34px 0 40px}
.r-cmeta{display:flex;gap:34px;margin-bottom:0;flex-wrap:wrap}
.r-cmeta span{display:block;font:400 10px/1 Poppins,sans-serif;letter-spacing:.14em;
  text-transform:uppercase;color:#C09B62;margin-bottom:7px}
.r-cmeta b{font-family:'Noto Sans Telugu',sans-serif;font-size:15px;font-weight:500;color:#FFF6E2}
.r-ccards{display:flex;gap:14px;margin-top:46px;position:relative;z-index:2}
.r-ccards > div{
  flex:1;border:1px solid rgba(201,151,28,.42);border-radius:12px;padding:18px 16px;text-align:center;
  background:rgba(255,246,226,.05);
}
.r-ccards span{display:block;font:400 9.5px/1 Poppins,sans-serif;letter-spacing:.13em;
  text-transform:uppercase;color:#C09B62;margin-bottom:9px}
.r-ccards b{font-family:'Noto Serif Telugu',Georgia,serif;font-size:22px;font-weight:600;color:#F2D999}
.r-cnote{padding-top:34px;position:relative;z-index:2;border-top:1px solid rgba(201,151,28,.3);
  display:flex;align-items:baseline;gap:16px}
.r-cnote b{font:600 13px/1.3 Poppins,sans-serif;letter-spacing:.06em;color:#E8C56A;
  white-space:nowrap;font-family:'Noto Sans Telugu',Poppins,sans-serif}
.r-cnote span{font-family:'Noto Sans Telugu',sans-serif;font-size:12.5px;line-height:1.6;
  color:#D6BE93}
.r-cfoot{margin-top:26px;font:400 11px/1 Poppins,sans-serif;
  letter-spacing:.1em;color:#B08E56}

/* headings */
.r-h1{
  font-family:'Noto Serif Telugu',Georgia,serif;color:#6B1626;font-size:27px;font-weight:600;
  line-height:1.24;margin:0 0 4px;
}
.r-h1 span{display:block;font-family:Poppins,sans-serif;font-size:11px;font-weight:500;
  letter-spacing:.15em;text-transform:uppercase;color:#A08A5E;margin-top:6px}
.r-h2{font-family:'Noto Serif Telugu',Georgia,serif;color:#6B1626;font-size:20px;
  font-weight:600;margin:22px 0 4px}
.r-h2 span{display:block;font-family:Poppins,sans-serif;font-size:10px;letter-spacing:.13em;
  text-transform:uppercase;color:#A08A5E;margin-top:4px}
.r-h3{font-family:'Noto Serif Telugu',Georgia,serif;color:#96650A;font-size:15px;
  font-weight:600;margin:20px 0 8px}
.r-h4{font-family:'Noto Serif Telugu',Georgia,serif;color:#96650A;font-size:13.5px;
  font-weight:600;margin:0 0 7px}
.r-rule{height:2px;width:60px;background:#C9971C;margin:14px 0 22px}

/* Latin text in the printed report
   The report is rasterised by html2canvas, and when English inherits the Telugu
   face html2canvas measures it wrongly: words run together and commas vanish.
   It looked perfect on screen because a DOM screenshot is not the same thing as
   what html2canvas draws. So Latin gets its own stack, and nothing under 12px,
   which is also simply easier to read. */
.r-en,.r-small,.r-ghead span,.r-you-line i,.r-ft-h,.r-ft-r .r-small,
.r-now-band span,.r-next-band span,.r-mo-t i,.r-do i,.r-sub .r-en,.r-faq .r-en{
  font-family:Poppins,"Helvetica Neue",Arial,sans-serif;
}

/* body text */
.r-te{font-size:14.5px;line-height:1.95;margin:0 0 7px;color:#2B2118}
.r-en{font-size:12.5px;line-height:1.75;margin:0 0 4px;color:#5F5445}
.r-pass{margin:0 0 18px;page-break-inside:avoid}
.r-note{background:#FBF6EA;border-left:3px solid #C9971C;border-radius:0 8px 8px 0;
  padding:12px 15px;margin:4px 0 18px}
.r-note .r-te{font-size:13px;line-height:1.8;margin-bottom:4px}
.r-note .r-en{font-size:12px;margin:0}

/* flowing tables
   Rows are separate blocks so the paginator can pack them like paragraphs, which
   is what stops a nine row table from stranding most of a page. Widths ride on
   each cell rather than on a table element. */
.r-ft-h,.r-ft-r{display:flex;align-items:center;width:100%;font-size:12px}
.r-ft-h{font:600 9.5px/1.4 Poppins,sans-serif;letter-spacing:.1em;text-transform:uppercase;
  color:#8A7C68;border-bottom:1.5px solid #2B2118}
.r-ft-h .r-ft-c{padding:8px 9px}
.r-ft-r{border-bottom:1px solid #EADFC6}
.r-ft-r .r-ft-c{padding:9px}
.r-ft-c{box-sizing:border-box;min-width:0;overflow-wrap:break-word}
.r-ft-c .r-c{display:block;text-align:center}
.r-ft-h .r-c{text-align:center}
/* Uppercasing and letter spacing a Telugu word at 9.5px turns it into a smear,
   so Telugu column headings keep their own casing and size. */
.r-ft-h .r-th-te{font-family:'Noto Sans Telugu',sans-serif;font-size:12px;font-weight:600;
  letter-spacing:0;text-transform:none;color:#6A5F51}
.r-ft-r .r-small{font-size:12px;line-height:1.55;color:#5F5445}
.r-ft-r .r-num{font:600 12px Poppins,sans-serif;color:#A08A5E}
.r-ft-r b{font-family:'Noto Serif Telugu',Georgia,serif;font-weight:600;color:#6B1626;font-size:13.5px}
.r-ft-r i{display:block;font-style:normal;font-size:10px;color:#9A8D7B;margin-top:2px}
.r-ft-r.r-now{background:rgba(201,151,28,.17)}
/* The last row of a run carries the closing gap, since there is no table to do it. */
.r-ft-r + :not(.r-ft-r){margin-top:18px}

/* tables */
.r-tbl{width:100%;border-collapse:collapse;font-size:12px;margin:0 0 18px}
.r-tbl th{
  text-align:left;font:600 9.5px/1.4 Poppins,sans-serif;letter-spacing:.1em;text-transform:uppercase;
  color:#8A7C68;border-bottom:1.5px solid #2B2118;padding:8px 9px;
}
.r-tbl td{padding:9px;border-bottom:1px solid #EADFC6;vertical-align:middle}
.r-tbl .r-c{text-align:center}
.r-tbl .r-small{font-size:12px;line-height:1.55;color:#5F5445}
.r-tbl .r-num{font:600 12px Poppins,sans-serif;color:#A08A5E}
.r-gname b,.r-tbl b{font-family:'Noto Serif Telugu',Georgia,serif;font-weight:600;color:#6B1626;
  font-size:13.5px}
.r-tbl i{display:block;font-style:normal;font-size:10px;color:#9A8D7B;margin-top:2px}
.r-tbl-b td{padding:8px 9px}
.r-tbl-time tr.r-now td{background:rgba(201,151,28,.17)}
.r-tbl-sub tr.r-now td{background:rgba(201,151,28,.17)}

/* the twelve month strip
   Cells are windows rather than months, sized by how many months they cover, so
   a single long sub period reads as one honest band instead of twelve
   identical looking cards. */
.r-mogrid{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.r-mo{box-sizing:border-box;min-width:150px;flex-grow:1;border:1px solid #EADFC6;border-radius:12px;
  padding:16px 16px;background:#FCF9F3}
.r-mo.r-t-good{border-color:rgba(76,140,90,.45);background:rgba(76,140,90,.07)}
.r-mo.r-t-slow{border-color:rgba(154,123,138,.45);background:rgba(154,123,138,.07)}
.r-mo.r-t-mixed{border-color:rgba(201,151,28,.45);background:rgba(201,151,28,.08)}
.r-mo-m{display:block;font-family:'Noto Sans Telugu',sans-serif;font-size:15px;font-weight:600;
  color:#3A2E22;margin-bottom:9px}
.r-mo-l{display:flex;align-items:center;gap:7px;font-family:'Noto Sans Telugu',sans-serif;
  font-size:12px;color:#6A5F51;margin-bottom:11px}
.r-mo-t{display:block;font-family:'Noto Sans Telugu',sans-serif;font-size:13px;font-weight:600;
  color:#3A2E22;line-height:1.5}
.r-mo-t i{display:block;font-style:normal;font:400 11px/1.5 Poppins,sans-serif;color:#8A7C68;
  margin-top:1px}

/* tone colouring for the year by year table */
.r-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#C4B79F}
.r-t-good .r-dot{background:#4C8C5A}
.r-t-mixed .r-dot{background:#C9971C}
.r-t-slow .r-dot{background:#9A7B8A}
.r-key{display:flex;gap:16px;margin:0 0 20px;font:500 10.5px/1 Poppins,sans-serif}
.r-k{display:inline-flex;align-items:center;gap:6px;color:#6A5F51}
.r-k::before{content:"";width:9px;height:9px;border-radius:50%;background:#C4B79F}
.r-k.r-t-good::before{background:#4C8C5A}
.r-k.r-t-mixed::before{background:#C9971C}
.r-k.r-t-slow::before{background:#9A7B8A}

/* the one page summary */
.r-sum{margin:0 0 16px}
.r-sum-row{display:flex;gap:12px}
.r-sum-row > div{flex:1;border:1px solid #EADFC6;border-radius:12px;padding:16px 14px;
  text-align:center;background:#FCF9F3}
.r-sum-row span{display:block;font-family:'Noto Sans Telugu',sans-serif;font-size:11px;
  color:#8A7C68;margin-bottom:7px}
.r-sum-row b{display:block;font-family:'Noto Serif Telugu',Georgia,serif;font-size:24px;
  font-weight:600;color:#6B1626;line-height:1.2}
.r-sum-row i{display:block;font-style:normal;font-size:11px;color:#9A8D7B;margin-top:4px}
.r-sum-now{background:linear-gradient(135deg,rgba(107,22,38,.09),rgba(201,151,28,.10));
  border:1px solid rgba(201,151,28,.5);border-radius:12px;padding:16px 18px;margin:0 0 14px}
.r-sum-tag{font-family:'Noto Sans Telugu',sans-serif;font-size:11px;color:#8A7C68;
  margin-bottom:7px}
.r-sum-tag i{font-style:normal;font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;
  margin-left:7px;color:#A08A5E}
.r-sum-now b{display:block;font-family:'Noto Serif Telugu',Georgia,serif;font-size:19px;
  color:#6B1626;font-weight:600}
.r-sum-now span{display:block;margin-top:5px;font-size:12.5px;color:#5F5445}

/* the chakram */
.r-ck{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,86px);
  gap:0;border:1.5px solid #6B1626;margin:0 0 16px;background:#FFFDF7}
.r-ck-cell{border:1px solid #E5D8B8;padding:6px 7px;position:relative;overflow:hidden}
.r-ck-lagna{background:rgba(201,151,28,.16);border-color:rgba(201,151,28,.7)}
.r-ck-rasi{display:block;font-family:'Noto Sans Telugu',sans-serif;font-size:10.5px;
  color:#8A7C68}
.r-ck-tag{position:absolute;top:5px;right:6px;background:#6B1626;color:#FFF6E2;
  border-radius:4px;padding:1px 5px;font-family:'Noto Sans Telugu',sans-serif;font-size:9px}
.r-ck-gs{display:flex;flex-wrap:wrap;gap:3px 7px;margin-top:5px}
.r-ck-g{font-family:'Noto Serif Telugu',Georgia,serif;font-size:13px;font-weight:600;
  color:#6B1626;line-height:1.35}
.r-ck-rx{color:#96650A}
.r-ck-rx::after{content:"వ";font-size:8px;vertical-align:super;margin-left:1px}
.r-ck-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:3px;border:1px solid #E5D8B8;background:#FBF6EA;text-align:center;padding:8px}
.r-ck-mid b{font-family:'Noto Serif Telugu',Georgia,serif;font-size:15px;color:#6B1626;
  font-weight:600;line-height:1.3}
.r-ck-mid span{font-family:'Noto Sans Telugu',sans-serif;font-size:10.5px;color:#7A6C57}

/* the personal block
   The owner's complaint was that nothing said whether a passage was his reading
   or a definition. This is the treatment for anything computed from his own
   chart, and the reference material at the back deliberately looks nothing like
   it. */
.r-you{border-left:3px solid #C9971C;background:#FDFAF3;border-radius:0 10px 10px 0;
  padding:16px 18px 14px;margin:0 0 16px}
.r-you-tag{display:inline-block;background:#6B1626;color:#FFF6E2;border-radius:5px;
  padding:3px 9px;margin-bottom:10px;font-family:'Noto Sans Telugu',sans-serif;
  font-size:11px;font-weight:600}
.r-you-tag i{font-style:normal;font-family:Poppins,sans-serif;font-size:9.5px;
  letter-spacing:.09em;text-transform:uppercase;color:#E2C9A0;margin-left:7px}
.r-you-line{margin:0 0 10px;font-family:'Noto Sans Telugu',sans-serif;font-size:14px;
  color:#3A2E22}
.r-you-line b{color:#6B1626;font-weight:600}
.r-you-line i{display:block;font-style:normal;font-size:11.5px;color:#8A7C68;margin-top:3px}

/* graha cards */
.r-graha{border:1px solid #EADFC6;border-radius:10px;padding:15px 17px;margin:0 0 12px;
  page-break-inside:avoid}
.r-ghead{display:flex;align-items:baseline;gap:11px;margin-bottom:9px}
.r-ghead b{font-family:'Noto Serif Telugu',Georgia,serif;font-size:17px;color:#6B1626;font-weight:600}
.r-ghead span{font-size:12px;color:#8A7C68}
.r-graha .r-te{font-size:13.5px;line-height:1.85}
.r-graha .r-en{font-size:12px}
.r-gmine{margin-top:9px;padding-top:8px;border-top:1px dashed #EADFC6;font-size:11px;color:#96650A}

/* the current period */
.r-now-band,.r-next-band{
  background:linear-gradient(135deg,rgba(201,151,28,.19),rgba(201,151,28,.07));
  border:1px solid rgba(201,151,28,.5);border-radius:11px;padding:15px 18px;margin:0 0 18px;
  font-family:'Noto Serif Telugu',Georgia,serif;font-size:17px;color:#6B1626;font-weight:600;
}
.r-now-band span,.r-next-band span{display:block;margin-top:5px;font-family:Poppins,sans-serif;
  font-size:12px;font-weight:400;color:#6A5F51}
.r-next-band{margin-top:22px}

.r-do{display:flex;gap:12px;margin:4px 0 18px}
.r-do > div{flex:1;border-radius:10px;padding:13px 15px;font-size:13px;line-height:1.8}
.r-do span{display:block;font:600 9.5px/1 Poppins,sans-serif;letter-spacing:.12em;
  text-transform:uppercase;margin-bottom:7px}
.r-do i{display:block;font-style:normal;font-size:11px;line-height:1.6;color:#6A5F51;margin-top:5px}
.r-do-y{background:rgba(76,140,90,.11);border:1px solid rgba(76,140,90,.35)}
.r-do-y span{color:#3B7048}
.r-do-n{background:rgba(154,123,138,.11);border:1px solid rgba(154,123,138,.35)}
.r-do-n span{color:#7E5C6C}

/* sub period cards */
.r-sub{border-left:3px solid #C4B79F;padding:11px 0 11px 14px;margin:0 0 13px;
  page-break-inside:avoid}
.r-sub.r-t-good{border-left-color:#4C8C5A}
.r-sub.r-t-mixed{border-left-color:#C9971C}
.r-sub.r-t-slow{border-left-color:#9A7B8A}
.r-sub .r-te{font-size:13.5px;line-height:1.85;margin-bottom:5px}
.r-sub .r-en{font-size:11.5px;margin:0}

/* faq */
.r-faq{margin:0 0 16px;page-break-inside:avoid}
.r-q{font-family:'Noto Serif Telugu',Georgia,serif;font-size:14.5px;color:#6B1626;
  font-weight:600;margin:0 0 7px}
.r-q i{display:block;font-family:Poppins,sans-serif;font-style:normal;font-size:11px;
  font-weight:400;color:#8A7C68;margin-top:3px}

.r-end{margin-top:46px;text-align:center;font:400 12px/1 Poppins,sans-serif;
  letter-spacing:.1em;color:#A08A5E}

@media print{.jt{display:none}}
@media (max-width:560px){
  .jt-hero{padding-top:22px}
  .jt-card{padding:20px 17px}
  .jt-read{padding:20px 18px}
  .jt-buy{padding:22px 17px}
}
@media (prefers-reduced-motion:reduce){
  .jt *{transition:none!important;animation:none!important}
  .jt-rise,.jt-heroright,.jt-reveal,.jt-lock{opacity:1!important;transform:none!important}
  .jt-demo,.jt-demo.flipout,.jt-demo.flipin{transform:none!important;transition:none!important}
  .jt-mk{background-size:100% 38%}
  .jt-sky{display:none}
}
