/* Vastuguruji Books — shared styles (marketing/content pages) */
:root{
  --navy1:#12162e;--navy2:#1d2550;--navy3:#2c3670;--gold:#c8a24a;--gold2:#e6c877;
  --cream:#faf8f3;--ink:#1e2130;--muted:#63636e;--line:#e9e4d8;--card:#fff;--good:#0a7c43;--bad:#b23b3b;
}
*{box-sizing:border-box;min-width:0;} html{scroll-behavior:smooth;overflow-x:clip;scroll-padding-top:80px;}
body{margin:0;background:var(--cream);color:var(--ink);font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:clip;}
h1,h2,h3{overflow-wrap:break-word;}
a{color:inherit;text-decoration:none;} .wrap{max-width:1160px;margin:0 auto;padding:0 22px;}
.serif{font-family:'Marcellus',serif;font-weight:400;}
img{max-width:100%;height:auto;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:11px;font-weight:700;font-size:15px;cursor:pointer;border:0;transition:transform .12s,box-shadow .2s,filter .2s;}
.btn-gold{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#2a2410;box-shadow:0 10px 24px -12px rgba(200,162,74,.9);}
.btn-gold:hover{filter:brightness(1.05);transform:translateY(-1px);}
.btn-navy{background:linear-gradient(180deg,#2a3363,#1a2145);color:#fff;box-shadow:0 10px 24px -12px rgba(26,33,69,.8);}
.btn-navy:hover{filter:brightness(1.1);transform:translateY(-1px);}
.btn-ghost{border:1.5px solid rgba(255,255,255,.35);color:#fff;background:transparent;}
.btn-ghost:hover{border-color:var(--gold2);color:var(--gold2);}

/* Nav — Apple-style light frosted glass + soft hide/reveal on scroll */
header.nav{position:sticky;top:0;z-index:40;
  background:rgba(251,251,253,.72);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid rgba(0,0,0,.10);
  transition:transform .38s cubic-bezier(.33,.02,.15,1), background .3s ease, box-shadow .3s ease;
  will-change:transform;}
header.nav.nav--scrolled{background:rgba(251,251,253,.86);box-shadow:0 1px 0 rgba(0,0,0,.05),0 10px 30px -18px rgba(0,0,0,.28);}
header.nav.nav--hidden{transform:translateY(-100%);}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  header.nav{background:rgba(251,251,253,.98);}
}
header.nav .brand{color:#1d1d1f;}
header.nav .brand b{color:#1d1d1f;}
.nav .wrap{display:flex;align-items:center;gap:20px;height:66px;}
.brand{display:flex;align-items:center;gap:11px;color:#fff;}
.brand .dia{width:28px;height:28px;transform:rotate(45deg);border:2px solid var(--gold);border-radius:6px;display:grid;place-items:center;}
.brand .dia i{width:8px;height:8px;background:var(--gold);border-radius:2px;}
.brand b{font-family:'Marcellus',serif;font-size:19px;letter-spacing:.13em;text-transform:uppercase;font-weight:400;}
.nav nav{margin-left:auto;display:flex;align-items:center;gap:26px;}
.nav nav a.lnk{color:rgba(29,29,31,.82);font-size:14.5px;font-weight:600;}
.nav nav a.lnk:hover{color:#1d1d1f;}
.navtog{display:none;} .burger{display:none;}
@media(max-width:820px){
  .brand b{font-size:16px;letter-spacing:.07em;}
  .nav .wrap{gap:10px;}
  .burger{display:block;margin-left:auto;font-size:24px;line-height:1;color:#1d1d1f;cursor:pointer;padding:6px 10px;user-select:none;}
  .nav nav{position:absolute;top:66px;left:0;right:0;margin:0;flex-direction:column;align-items:stretch;gap:0;
    background:rgba(251,251,253,.98);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);
    border-bottom:1px solid rgba(0,0,0,.10);box-shadow:0 14px 30px -16px rgba(0,0,0,.3);padding:6px 22px 16px;display:none;}
  .navtog:checked ~ nav{display:flex;}
  .nav nav a.lnk{display:block;font-size:16px;padding:14px 2px;border-bottom:1px solid rgba(0,0,0,.06);color:#1d1d1f;}
  .nav nav a.btn{margin-top:14px;justify-content:center;}
}

/* Page hero (navy) */
.phero{color:#eef0fb;background:radial-gradient(120% 90% at 90% -10%,rgba(200,162,74,.20),transparent 55%),linear-gradient(160deg,var(--navy1),var(--navy2) 62%,var(--navy3));}
.phero .wrap{padding:56px 22px 64px;max-width:900px;}
.crumb{font-size:13px;color:#9aa0c6;margin-bottom:18px;}
.crumb a{color:#c5cae6;} .crumb a:hover{color:var(--gold2);} .crumb span{color:#6f76a0;padding:0 6px;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold2);background:rgba(200,162,74,.12);border:1px solid rgba(230,200,119,.35);padding:5px 12px;border-radius:20px;}
.phero h1{font-family:'Marcellus',serif;font-weight:400;font-size:clamp(26px,6.4vw,52px);line-height:1.08;margin:18px 0 14px;color:#fff;text-wrap:balance;}
.phero h1 em{font-style:normal;color:var(--gold2);}
.phero p.lead{font-size:17.5px;color:#c5cae6;max-width:60ch;margin:0 0 26px;}
.phero .cta{display:flex;gap:14px;flex-wrap:wrap;}

/* Prose / content */
.prose{max-width:820px;margin:0 auto;padding:56px 22px;}
.prose h2{font-family:'Marcellus',serif;font-weight:400;font-size:clamp(24px,3vw,32px);color:var(--navy1);margin:38px 0 12px;text-wrap:balance;}
.prose h3{font-size:19px;color:var(--navy1);margin:26px 0 8px;}
.prose p{color:#3a3a46;font-size:16.5px;margin:0 0 16px;}
.prose ul{padding-left:20px;margin:0 0 18px;} .prose li{margin:7px 0;color:#3a3a46;}
.prose strong{color:var(--navy1);}
.lede{font-size:18.5px !important;color:var(--muted) !important;}

/* Comparison table */
.cmpwrap{overflow-x:auto;margin:22px 0 8px;}
.cmp{width:100%;border-collapse:collapse;min-width:560px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:15px;}
.cmp th,.cmp td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;}
.cmp thead th{background:var(--navy1);color:#fff;font-family:'Marcellus',serif;font-weight:400;font-size:16px;}
.cmp thead th.us{background:linear-gradient(180deg,var(--navy2),var(--navy3));}
.cmp tbody tr:last-child td{border-bottom:0;}
.cmp td:first-child{font-weight:700;color:var(--navy1);width:34%;}
.cmp .yes{color:var(--good);font-weight:700;} .cmp .no{color:var(--bad);}
.cmp .col-us{background:#fbf7ec;}

/* Feature cards */
.feat{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:22px 0;}
@media(max-width:860px){.feat{grid-template-columns:1fr;}}
.fcard{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:24px 22px;transition:transform .15s,box-shadow .2s,border-color .2s;display:block;}
.fcard:hover{transform:translateY(-4px);box-shadow:0 22px 44px -26px rgba(30,40,90,.4);border-color:#dfd3b6;}
.fcard .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:linear-gradient(150deg,#20264f,#2f3a72);color:var(--gold2);margin-bottom:15px;}
.fcard h3{font-size:18px;margin:0 0 7px;color:var(--navy1);}
.fcard p{color:var(--muted);font-size:14.5px;margin:0;}

/* FAQ */
.faq{max-width:820px;margin:0 auto;padding:8px 22px 20px;}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px 18px;margin:10px 0;}
.faq summary{cursor:pointer;font-weight:700;color:var(--navy1);padding:14px 0;list-style:none;font-size:16px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";float:right;color:var(--gold);font-size:20px;line-height:1;}
.faq details[open] summary::after{content:"\2212";}
.faq details p{color:#3a3a46;font-size:15.5px;margin:0 0 16px;}

/* Blog */
.ameta{font-size:13.5px;color:#9aa0c6;margin-top:6px;}
.postlist{max-width:840px;margin:0 auto;padding:44px 22px 8px;display:grid;gap:18px;}
.postcard{display:block;background:#fff;border:1px solid var(--line);border-radius:15px;padding:24px 24px;transition:transform .15s,box-shadow .2s,border-color .2s;}
.postcard:hover{transform:translateY(-3px);box-shadow:0 22px 44px -26px rgba(30,40,90,.4);border-color:#dfd3b6;}
.postcard .date{font-size:12.5px;color:var(--gold);font-weight:700;letter-spacing:.04em;text-transform:uppercase;}
.postcard h2{font-family:'Marcellus',serif;font-weight:400;font-size:23px;color:var(--navy1);margin:8px 0 8px;}
.postcard p{color:var(--muted);font-size:15.5px;margin:0 0 12px;}
.postcard .more{color:var(--navy2);font-weight:700;font-size:14.5px;}
.prose .callout{background:#fbf7ec;border:1px solid #ecdcb0;border-left:4px solid var(--gold);border-radius:10px;padding:14px 18px;margin:18px 0;font-size:15px;color:#4a4433;}
.prose ol{padding-left:20px;margin:0 0 18px;} .prose ol li{margin:7px 0;color:#3a3a46;}

/* GST calculator widget */
.calcwrap{max-width:720px;margin:0 auto;padding:34px 22px 0;}
.calc{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 60px -34px rgba(20,26,54,.45);padding:26px 24px;}
.calc .seg{display:flex;flex-wrap:wrap;max-width:100%;background:#eef1fb;border-radius:11px;padding:4px;gap:4px;}
.calc .seg button{border:0;background:transparent;padding:9px 16px;border-radius:8px;font-weight:700;font-size:14px;cursor:pointer;color:var(--navy2);font-family:inherit;flex:1 1 auto;white-space:nowrap;}
.calc .seg button.on{background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.10);color:var(--navy1);}
.calc label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:16px 0 7px;text-transform:uppercase;letter-spacing:.05em;}
.calc input[type=number]{width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:11px;font-size:18px;font-family:inherit;color:var(--ink);}
.calc input[type=number]:focus{outline:0;border-color:var(--gold);}
.rates{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.rates button{border:1.5px solid var(--line);background:#fff;padding:9px 15px;border-radius:10px;font-weight:700;cursor:pointer;color:var(--navy2);font-family:inherit;font-size:14px;}
.rates button.on{background:var(--navy1);color:#fff;border-color:var(--navy1);}
.rates input{width:92px;padding:9px 12px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:14px;}
.calc .res{margin-top:22px;border-top:1px dashed var(--line);padding-top:8px;}
.rrow{display:flex;justify-content:space-between;padding:9px 2px;font-size:15px;color:#3a3a46;}
.rrow b{font-variant-numeric:tabular-nums;color:var(--navy1);}
.rrow.tot{font-size:20px;font-weight:800;color:var(--navy1);border-top:1px solid var(--line);margin-top:6px;padding-top:15px;}
.rrow.tot b{color:var(--good);}
.calc .note{font-size:12.5px;color:#9aa0c6;margin-top:14px;}
.splitbar{display:flex;height:14px;border-radius:8px;overflow:hidden;margin:8px 0 6px;border:1px solid var(--line);}
.splitbar .p{background:linear-gradient(180deg,#2a3363,#1a2145);} .splitbar .i{background:linear-gradient(180deg,var(--gold2),var(--gold));}
.splitleg{display:flex;gap:18px;font-size:12.5px;color:var(--muted);flex-wrap:wrap;}
.splitleg span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:middle;}
.splitleg .lp::before{background:#1a2145;} .splitleg .li::before{background:var(--gold);}

/* CTA band */
.ctaband{padding:8px 22px 72px;} .ctaband .inner{max-width:1160px;margin:0 auto;}
.final{text-align:center;background:linear-gradient(160deg,var(--navy2),var(--navy3));color:#fff;border-radius:22px;padding:48px 26px;}
.final h2{font-family:'Marcellus',serif;font-weight:400;font-size:clamp(24px,3vw,34px);margin:0 0 12px;}
.final p{color:#c5cae6;margin:0 0 22px;}

footer{background:#0f1226;color:#aeb3d0;padding:46px 0 30px;font-size:14px;}
footer a:not(.btn){color:#c9cde6;} footer a:not(.btn):hover{color:var(--gold2);}
footer{padding:54px 0 30px;}
.fgrid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1fr;gap:34px 26px;align-items:start;}
@media(max-width:980px){.fgrid{grid-template-columns:1fr 1fr 1fr;}.fbrand{grid-column:1/-1;}}
@media(max-width:560px){.fgrid{grid-template-columns:1fr 1fr;}}
.fcol h4{color:#fff;font-size:12.5px;text-transform:uppercase;letter-spacing:.11em;margin:0 0 12px;}
.fcol h4.mt{margin-top:22px;}
.fcol a:not(.btn){display:block;padding:5px 0;font-size:14px;color:#aeb3d0;}
.fcol a:hover{color:var(--gold2);}
.fbrand .ftag{margin-top:12px;color:#8b90ad;font-size:13.5px;max-width:34ch;line-height:1.6;}
.fbrand .fmade{margin-top:14px;color:#6a6f8e;font-size:12.5px;max-width:34ch;line-height:1.5;}
.fnet{display:flex;flex-wrap:wrap;align-items:center;gap:9px 18px;margin-top:34px;padding-top:18px;border-top:1px solid #22264a;font-size:13.5px;}
.fnet .fnet-lbl{color:#fff;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.11em;}
.fbot{margin-top:14px;color:#6a6f8e;font-size:12.5px;}
@media(prefers-reduced-motion:reduce){*{transition:none!important;}}

/* ── Small-screen tuning (core, not patch) ── */
.cmpwrap{max-width:100%;}
.calc input[type=number]{max-width:100%;}
@media(max-width:640px){
  .phero .wrap{padding:40px 20px 44px;}
  .prose{padding:40px 20px;}
  .phero p.lead{font-size:16.5px;}
  .prose p{font-size:16px;}
  .cmp{font-size:13.5px;} .cmp th,.cmp td{padding:11px 12px;}
  .faq,.postlist{padding-left:20px;padding-right:20px;}
  .final{padding:38px 20px;}
  .calc{padding:22px 18px;}
}
