/*
Theme Name: KeralaJyothisham
Theme URI: https://keralajyothisham.com/
Author: KeralaJyothisham
Description: Lightweight, mobile-first Kerala astrology theme with a liquid-glass inspired interface.
Version: 1.0.0
License: GPL-2.0-or-later
Text Domain: keralajyothisham
*/

:root{
  --kj-bg:#f5f7fb;
  --kj-surface:rgba(255,255,255,.72);
  --kj-surface-strong:rgba(255,255,255,.88);
  --kj-ink:#121826;
  --kj-muted:#667085;
  --kj-line:rgba(16,24,40,.10);
  --kj-brand:#7c3aed;
  --kj-brand-2:#a855f7;
  --kj-accent:#f59e0b;
  --kj-success:#16a34a;
  --kj-danger:#dc2626;
  --kj-shadow:0 16px 50px rgba(19,30,55,.08);
  --kj-shadow-soft:0 8px 30px rgba(19,30,55,.06);
  --kj-radius:24px;
  --kj-radius-sm:16px;
  --kj-max:1180px;
  --kj-gap:clamp(16px,2vw,24px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--kj-bg);color:var(--kj-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans Malayalam",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(124,58,237,.30);outline-offset:3px;border-radius:10px}
img,svg,video{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button{cursor:pointer}

.kj-skip{position:fixed;left:12px;top:12px;z-index:1000;transform:translateY(-150%);background:#111827;color:#fff;padding:10px 14px;border-radius:12px;box-shadow:var(--kj-shadow)}
.kj-skip:focus{transform:none}

.kj-container{width:min(calc(100% - 32px),var(--kj-max));margin-inline:auto}
.kj-main{min-height:60vh}

/* Header */
.kj-header{position:sticky;top:0;z-index:100;background:rgba(245,247,251,.78);border-bottom:1px solid rgba(16,24,40,.07);backdrop-filter:saturate(1.25) blur(18px);-webkit-backdrop-filter:saturate(1.25) blur(18px)}
.kj-header__inner{min-height:72px;display:flex;align-items:center;gap:18px}
.kj-brand{display:inline-flex;align-items:center;gap:11px;min-width:0;font-weight:800;letter-spacing:-.03em}
.kj-brand__mark{width:40px;height:40px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#7c3aed,#c084fc);color:#fff;box-shadow:0 8px 24px rgba(124,58,237,.22)}
.kj-brand__name{font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kj-nav{margin-left:auto;display:flex;align-items:center;gap:6px}
.kj-nav__links{display:flex;align-items:center;gap:4px}
.kj-nav a{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;border-radius:999px;font-size:14px;color:#394150}
.kj-nav a:hover{background:rgba(255,255,255,.76);color:var(--kj-ink)}
.kj-nav__cta{background:#121826!important;color:#fff!important;padding-inline:16px!important;box-shadow:0 8px 20px rgba(18,24,38,.12)}
.kj-menu-toggle{display:none;margin-left:auto;width:42px;height:42px;border:1px solid var(--kj-line);border-radius:13px;background:var(--kj-surface-strong);align-items:center;justify-content:center}
.kj-mobile-panel{display:none}

/* Glass */
.kj-glass{background:var(--kj-surface);border:1px solid rgba(255,255,255,.75);box-shadow:var(--kj-shadow-soft);backdrop-filter:saturate(1.2) blur(18px);-webkit-backdrop-filter:saturate(1.2) blur(18px)}
.kj-card{border-radius:var(--kj-radius)}
.kj-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;background:rgba(255,255,255,.64);border:1px solid var(--kj-line);font-size:13px;color:#4b5563}

/* Hero */
.kj-hero{padding:clamp(38px,7vw,80px) 0 26px;position:relative;overflow:hidden}
.kj-hero::before,.kj-hero::after{content:"";position:absolute;border-radius:50%;filter:blur(10px);pointer-events:none;z-index:-1}
.kj-hero::before{width:300px;height:300px;left:-110px;top:10px;background:rgba(192,132,252,.20)}
.kj-hero::after{width:360px;height:360px;right:-140px;top:40px;background:rgba(245,158,11,.14)}
.kj-hero__grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:34px;align-items:center}
.kj-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#6d28d9;margin:0 0 14px}
.kj-dot{width:8px;height:8px;border-radius:50%;background:#8b5cf6;box-shadow:0 0 0 5px rgba(139,92,246,.12)}
.kj-hero h1{margin:0;max-width:760px;font-size:clamp(42px,7vw,76px);line-height:1.03;letter-spacing:-.055em}
.kj-hero h1 .kj-highlight{display:block;background:linear-gradient(90deg,#6d28d9,#a855f7,#f59e0b);-webkit-background-clip:text;background-clip:text;color:transparent}
.kj-hero__lead{max-width:680px;margin:18px 0 0;font-size:clamp(17px,2.2vw,20px);color:var(--kj-muted)}
.kj-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.kj-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 17px;border-radius:15px;border:1px solid transparent;font-weight:750;font-size:14px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.kj-button:hover{transform:translateY(-1px)}
.kj-button--primary{background:#121826;color:#fff;box-shadow:0 12px 24px rgba(18,24,38,.14)}
.kj-button--soft{background:rgba(255,255,255,.72);border-color:var(--kj-line)}
.kj-button--brand{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;box-shadow:0 12px 26px rgba(124,58,237,.22)}

.kj-birth-card{padding:22px}
.kj-birth-card__top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.kj-birth-card h2{margin:0;font-size:18px;letter-spacing:-.02em}
.kj-birth-card p{margin:4px 0 0;color:var(--kj-muted);font-size:13px}
.kj-mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.kj-field{display:grid;gap:6px}
.kj-field--full{grid-column:1/-1}
.kj-field label{font-size:12px;font-weight:700;color:#475467}
.kj-input{width:100%;border:1px solid var(--kj-line);background:rgba(255,255,255,.84);border-radius:13px;padding:11px 12px;color:var(--kj-ink)}
.kj-birth-card__submit{width:100%;margin-top:12px}
.kj-helper{font-size:12px;color:var(--kj-muted);margin:10px 0 0}

/* Sections */
.kj-section{padding:34px 0}
.kj-section__heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}
.kj-section__heading h2{margin:0;font-size:clamp(24px,4vw,36px);letter-spacing:-.035em}
.kj-section__heading p{margin:6px 0 0;color:var(--kj-muted);font-size:14px}
.kj-section__link{font-size:14px;font-weight:750;color:#6d28d9;white-space:nowrap}

.kj-tools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.kj-tool{padding:18px;min-height:168px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .18s ease,box-shadow .18s ease}
.kj-tool:hover{transform:translateY(-3px);box-shadow:var(--kj-shadow)}
.kj-tool__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,rgba(124,58,237,.11),rgba(245,158,11,.10));color:#6d28d9}
.kj-tool__title{margin:16px 0 4px;font-size:17px}
.kj-tool__text{margin:0;color:var(--kj-muted);font-size:13px;line-height:1.5}
.kj-tool__arrow{margin-top:12px;color:#98a2b3;font-size:18px}

.kj-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kj-feature{padding:22px}
.kj-feature h3{margin:14px 0 7px;font-size:18px}
.kj-feature p{margin:0;color:var(--kj-muted);font-size:14px}

.kj-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kj-post{overflow:hidden}
.kj-post__media{aspect-ratio:16/9;background:linear-gradient(135deg,rgba(124,58,237,.10),rgba(245,158,11,.08));overflow:hidden}
.kj-post__media img{width:100%;height:100%;object-fit:cover}
.kj-post__body{padding:18px}
.kj-post__meta{font-size:12px;color:#98a2b3;margin-bottom:7px}
.kj-post h3{margin:0;font-size:18px;line-height:1.3}
.kj-post p{margin:8px 0 0;color:var(--kj-muted);font-size:13px}

.kj-cta{padding:26px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,rgba(255,255,255,.80),rgba(245,240,255,.75));}
.kj-cta h2{margin:0;font-size:clamp(24px,4vw,34px);letter-spacing:-.035em}
.kj-cta p{margin:7px 0 0;color:var(--kj-muted);font-size:14px}

/* Content templates */
.kj-page-wrap{padding:34px 0 64px}
.kj-content{padding:clamp(20px,4vw,34px)}
.kj-content > :first-child{margin-top:0}
.kj-content > :last-child{margin-bottom:0}
.kj-content h1,.kj-content h2,.kj-content h3{letter-spacing:-.025em}
.kj-content a{color:#6d28d9;text-decoration:underline;text-underline-offset:3px}
.kj-content img{border-radius:18px}
.kj-post-header{padding:28px 0}
.kj-post-header h1{font-size:clamp(32px,6vw,56px);line-height:1.05;letter-spacing:-.05em;margin:6px 0 0}
.kj-post-header__meta{color:var(--kj-muted);font-size:13px}

/* Footer */
.kj-footer{margin-top:58px;padding:38px 0 28px;border-top:1px solid var(--kj-line);background:rgba(255,255,255,.44)}
.kj-footer__grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:30px}
.kj-footer h3{margin:0 0 8px;font-size:15px}
.kj-footer p,.kj-footer a{font-size:13px;color:var(--kj-muted)}
.kj-footer a:hover{color:var(--kj-ink)}
.kj-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.kj-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:28px;padding-top:18px;border-top:1px solid var(--kj-line);color:#98a2b3;font-size:12px}

.kj-empty{padding:24px;text-align:center;color:var(--kj-muted)}

@media (max-width: 980px){
  .kj-nav__links{display:none}
  .kj-menu-toggle{display:inline-flex}
  .kj-mobile-panel{position:absolute;left:16px;right:16px;top:calc(100% + 8px);padding:10px;display:grid;gap:4px;border-radius:18px;background:var(--kj-surface-strong);border:1px solid rgba(255,255,255,.88);box-shadow:var(--kj-shadow);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
  .kj-mobile-panel.is-open{opacity:1;visibility:visible;transform:none}
  .kj-mobile-panel a{padding:12px;border-radius:12px}
  .kj-mobile-panel a:hover{background:rgba(124,58,237,.07)}
  .kj-hero__grid{grid-template-columns:1fr}
  .kj-hero__content{max-width:760px}
  .kj-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kj-feature-grid,.kj-blog-grid{grid-template-columns:1fr}
  .kj-footer__grid{grid-template-columns:1fr 1fr}
}

@media (max-width: 640px){
  .kj-container{width:min(calc(100% - 20px),var(--kj-max))}
  .kj-header__inner{min-height:64px}
  .kj-brand__mark{width:36px;height:36px;border-radius:12px}
  .kj-brand__name{font-size:16px}
  .kj-hero{padding-top:28px}
  .kj-hero h1{font-size:clamp(38px,12vw,54px)}
  .kj-hero__actions{display:grid;grid-template-columns:1fr}
  .kj-button{width:100%}
  .kj-mini-grid{grid-template-columns:1fr}
  .kj-field--full{grid-column:auto}
  .kj-tools-grid{grid-template-columns:1fr}
  .kj-tool{min-height:0}
  .kj-cta{display:grid}
  .kj-cta .kj-button{width:auto}
  .kj-footer__grid{grid-template-columns:1fr}
  .kj-footer__bottom{display:grid}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

@media (prefers-color-scheme:dark){
  :root{--kj-bg:#0b0f18;--kj-surface:rgba(20,24,35,.68);--kj-surface-strong:rgba(22,27,39,.90);--kj-ink:#f2f4f7;--kj-muted:#aab2c2;--kj-line:rgba(255,255,255,.10);--kj-shadow:0 18px 56px rgba(0,0,0,.30);--kj-shadow-soft:0 10px 34px rgba(0,0,0,.24)}
  .kj-header{background:rgba(11,15,24,.74)}
  .kj-nav a{color:#c9cfda}
  .kj-input{background:rgba(24,29,42,.88);color:#f2f4f7}
  .kj-button--soft,.kj-pill{background:rgba(24,29,42,.76);color:#f2f4f7}
  .kj-footer{background:rgba(15,20,30,.46)}
}

/* The MU plugin currently supplies a placeholder WhatsApp destination. */
body > a[href^="https://wa.me/919876543210"]{display:none!important}

/* Launch readability and compact navigation improvements. */
@media (max-width:640px){
 .kj-header__inner{gap:12px}
 .kj-header .kj-nav{display:none}
 .kj-header .kj-brand{flex:1}
 .kj-menu-toggle{flex:0 0 42px}
 .kj-section__heading{align-items:flex-start;flex-wrap:wrap}
}
@media (prefers-color-scheme:dark){
 .kj-eyebrow,.kj-section__link,.kj-tool__icon,.kj-content a{color:#c4b5fd}
 .kj-field label{color:#cbd5e1}
 .kj-menu-toggle{color:#f2f4f7}
 .kj-hero h1 .kj-highlight{background-image:linear-gradient(90deg,#c4b5fd,#d8b4fe,#fbbf24)}
 .kj-cta{background:linear-gradient(135deg,rgba(24,29,42,.96),rgba(46,30,72,.9))}
}
