:root{
  --ink:#1f261f;
  --green:#1f5a2a;
  --green-dark:#153f1e;
  --green-soft:#dfe9dd;
  --cream:#f7f3e8;
  --paper:#fffdf8;
  --muted:#667066;
  --line:#d7d8ce;
  --shadow:0 18px 50px rgba(27,55,33,.12);
  --radius:20px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Georgia,'Times New Roman',serif;line-height:1.65}
a{color:inherit}
img{max-width:100%;display:block}
.container{width:min(1140px,calc(100% - 40px));margin:auto}
.eyebrow{font-family:Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;font-size:.74rem;font-weight:700;color:var(--green)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;border-radius:999px;padding:.86rem 1.25rem;font-family:Arial,sans-serif;font-weight:700;border:1px solid var(--green);background:var(--green);color:white;transition:.2s transform,.2s background}
.btn:hover{transform:translateY(-2px);background:var(--green-dark)}
.btn.secondary{background:transparent;color:var(--green)}
.btn.secondary:hover{background:var(--green-soft)}
.btn.light{background:white;color:var(--green);border-color:white}
header{position:sticky;top:0;z-index:20;background:rgba(255,253,248,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(31,90,42,.09)}
.nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand img{height:45px;width:auto}
.navlinks{display:flex;gap:24px;align-items:center;font-family:Arial,sans-serif;font-size:.92rem}
.navlinks a{text-decoration:none;color:#334033}.navlinks a:hover{color:var(--green)}
.menu-btn{display:none;border:0;background:none;font-size:1.5rem}
.hero{min-height:76vh;background:linear-gradient(180deg,var(--cream),#fffdf8);display:grid;align-items:center;padding:70px 0 60px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.hero h1{font-size:clamp(3.6rem,8vw,7rem);font-weight:400;line-height:.93;margin:.12em 0 .18em;color:var(--green-dark)}
.hero h2{font-size:clamp(1.55rem,3vw,2.5rem);font-weight:400;margin:0 0 22px}
.hero p{font-size:1.16rem;max-width:700px;color:#485448}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-art{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}
.hero-art:before{content:'';position:absolute;width:430px;height:430px;border-radius:50%;background:#e7ecdf}
.hero-art img{position:relative;max-height:560px;width:auto;filter:drop-shadow(0 22px 25px rgba(0,0,0,.11))}
.section{padding:92px 0}
.section.soft{background:var(--cream)}
.section h2{font-size:clamp(2.1rem,5vw,3.8rem);font-weight:400;line-height:1.08;margin:.15em 0 .4em;color:var(--green-dark)}
.lead{font-size:1.18rem;max-width:790px;color:#4a574b}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
.framework-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:38px}
.framework-card{background:white;border:1px solid #e5e4da;border-radius:var(--radius);padding:28px;min-height:220px;box-shadow:0 8px 24px rgba(0,0,0,.03)}
.framework-card .num{font-size:2.6rem;color:#b4c6b1}.framework-card h3{font-size:1.45rem;margin:.2rem 0}.framework-card p{color:#5f695f;margin:.4rem 0 0}
.quote{font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.25;font-style:italic;max-width:900px;margin:0 auto;text-align:center;color:var(--green-dark)}
.book-grid,.resource-grid,.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}
.book-cover{max-width:380px;margin:auto;box-shadow:var(--shadow);border-radius:4px}
.book-meta{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 0}.pill{font-family:Arial,sans-serif;font-size:.78rem;border:1px solid #cad5c9;border-radius:999px;padding:.35rem .7rem;color:#4e5f4d;background:white}
.format-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}.format-card{border:1px solid #dde2d8;border-radius:16px;padding:20px;background:white}.format-card strong{display:block;font-size:1.05rem}.format-card span{display:block;color:#647064;font-family:Arial,sans-serif;font-size:.86rem;margin:.25rem 0 1rem}
.note{font-size:.92rem;color:#667066}
.resource-card{border:1px solid #e1e3d8;border-radius:24px;background:white;padding:30px;box-shadow:0 12px 34px rgba(0,0,0,.04)}
.resource-cover{border-radius:12px;box-shadow:var(--shadow);max-height:520px;margin:auto;object-fit:cover}
.checks{columns:2;column-gap:30px;padding:0;list-style:none}.checks li{break-inside:avoid;margin:.45rem 0}.checks li:before{content:'✓';color:var(--green);font-weight:bold;margin-right:.55rem}
.about-photo{border-radius:28px;box-shadow:var(--shadow)}
.publisher{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:24px}.publisher img{max-height:110px;width:auto}
.cta{background:var(--green-dark);color:white;border-radius:30px;padding:54px;text-align:center}.cta h2{color:white;margin-top:0}.cta p{max-width:760px;margin:0 auto 26px;color:#e9f0e7}
footer{background:#102d18;color:#e6ede5;padding:56px 0 28px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:40px}.footer-logo{height:48px;width:auto;margin-bottom:16px}.footer-title{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:#b8cab6}.footer-links{display:grid;gap:8px}.footer-links a{text-decoration:none;color:#e6ede5;font-family:Arial,sans-serif;font-size:.9rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:22px;margin-top:34px;color:#b9c7b9;font-size:.85rem;font-family:Arial,sans-serif}
.page-hero{padding:90px 0 55px;background:var(--cream)}.page-hero h1{font-size:clamp(3rem,7vw,5.6rem);font-weight:400;margin:0;color:var(--green-dark);line-height:1}.page-hero p{font-size:1.18rem;max-width:760px;color:#4f5c50}
.prose{max-width:820px;margin:auto}.prose h2{font-size:2.1rem;color:var(--green-dark);font-weight:400;margin-top:2.2rem}.prose h3{font-size:1.35rem}.prose p{font-size:1.08rem;color:#3f4c40}
.contact-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.contact-form{display:grid;gap:15px}.contact-form label{font-family:Arial,sans-serif;font-size:.84rem;font-weight:700}.contact-form input,.contact-form textarea{width:100%;padding:14px 16px;border:1px solid #cfd6cc;border-radius:12px;background:white;font:inherit}.contact-form textarea{min-height:160px;resize:vertical}
@media(max-width:850px){.navlinks{display:none;position:absolute;top:74px;left:0;right:0;background:white;padding:20px;flex-direction:column;border-bottom:1px solid #eee}.navlinks.open{display:flex}.menu-btn{display:block}.hero-grid,.book-grid,.resource-grid,.about-grid,.contact-wrap{grid-template-columns:1fr}.hero{padding-top:45px}.hero-art{min-height:430px}.hero-art:before{width:320px;height:320px}.hero-art img{max-height:430px}.framework-grid{grid-template-columns:1fr 1fr}.book-grid,.resource-grid,.about-grid{gap:38px}.checks{columns:1}.footer-grid{grid-template-columns:1fr}.section{padding:70px 0}}
@media(max-width:540px){.container{width:min(100% - 28px,1140px)}.framework-grid,.format-cards{grid-template-columns:1fr}.hero h1{font-size:3.35rem}.cta{padding:38px 24px;border-radius:20px}.section{padding:58px 0}}

/* Leafy Satyam experience */
.nav{height:92px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{height:68px;width:auto;max-width:250px;object-fit:contain}
.quiz-hero{padding:72px 0 44px}
.quiz-hero h1{max-width:980px;margin-left:auto;margin-right:auto;font-size:clamp(2.6rem,6vw,5rem)}
.quiz-hero .lead{margin-left:auto;margin-right:auto}
.quiz-section{padding-top:52px;background:#fffdf8}
.quiz-stack{display:grid;gap:0;max-width:1220px}
.quiz-stack img{width:100%;height:auto;display:block;border-radius:0;box-shadow:0 10px 30px rgba(27,55,33,.07)}
.quiz-stack img:first-child{border-radius:18px 18px 0 0}
.quiz-stack img:last-child{border-radius:0 0 18px 18px}
.satyam-lineup{width:min(100%,1120px);margin:34px auto 0;border-radius:18px;box-shadow:0 12px 32px rgba(27,55,33,.07)}
.sample-intro{margin-left:auto;margin-right:auto}
.satyam-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:38px}
.satyam-card{border:1px solid #e0dfd3;border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(27,55,33,.06)}
.satyam-card:last-child{grid-column:1/-1;max-width:560px;justify-self:center;width:100%}
.satyam-card img{width:100%;height:auto;background:#fbf7ec}
.satyam-card-body{padding:20px 22px 24px;text-align:center}
.satyam-card-body .note{margin:.7rem 0 0}
.sample-btn{min-width:230px}
.sample-btn.purple{background:#62468d;border-color:#62468d}.sample-btn.purple:hover{background:#513875}
.sample-btn.blue{background:#2e5b92;border-color:#2e5b92}.sample-btn.blue:hover{background:#244b79}
.sample-btn.rust{background:#a94720;border-color:#a94720}.sample-btn.rust:hover{background:#8c381a}
.sample-btn.olive{background:#526c20;border-color:#526c20}.sample-btn.olive:hover{background:#405517}
.alignment-line{font-size:1.08rem;font-style:italic;margin-top:24px!important;color:#f0f4ed!important}
.leafy-teaser-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.leafy-teaser-grid img{border-radius:18px;box-shadow:0 12px 32px rgba(27,55,33,.08)}
@media(max-width:980px){.navlinks{gap:15px;font-size:.84rem}.brand img{height:60px;max-width:210px}}
@media(max-width:850px){.nav{height:84px}.brand img{height:58px;max-width:210px}.navlinks{top:84px}.satyam-grid,.leafy-teaser-grid{grid-template-columns:1fr}.satyam-card:last-child{grid-column:auto;max-width:none}.quiz-stack{width:100%}}
@media(max-width:540px){.brand img{height:52px;max-width:180px}.quiz-section{padding-top:34px}.satyam-grid{gap:20px}.satyam-card-body{padding:16px}.sample-btn{min-width:0;width:100%}}

/* Contact email directory */
.email-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:900px;margin:0 auto}
.email-contact-card{display:flex;flex-direction:column;gap:7px;padding:28px 30px;border:1px solid #d9dfcf;border-radius:18px;background:#fbfaf4;text-decoration:none;color:#153f1e;box-shadow:0 8px 24px rgba(21,63,30,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.email-contact-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(21,63,30,.09);border-color:#9dad8f}
.email-contact-card strong{font-size:clamp(18px,2vw,24px);overflow-wrap:anywhere}
.email-contact-label{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#687763;font-weight:700}
@media(max-width:700px){.email-contact-grid{grid-template-columns:1fr}.email-contact-card{padding:22px}}

/* Interactive, mobile-first Satyam Quiz */
.quiz-player{max-width:760px;margin:0 auto}
.quiz-progress{margin:0 0 18px;font-weight:700;color:#20482a;text-align:center}
.quiz-progress-track{height:8px;background:#e7eee7;border-radius:999px;overflow:hidden;margin-top:10px}
.quiz-progress-track span{display:block;height:100%;width:6.6667%;background:#1c5a2b;border-radius:999px;transition:width .25s ease}
.quiz-question-frame{background:#fffdf8;border-radius:20px;overflow:hidden;box-shadow:0 12px 34px rgba(27,55,33,.10)}
.quiz-question-frame img{display:block;width:100%;height:auto}
.quiz-answer-panel{margin-top:18px;background:#fff;border:1px solid #e5eadf;border-radius:20px;padding:20px;box-shadow:0 8px 24px rgba(27,55,33,.06)}
.quiz-answer-prompt{margin:0 0 14px;text-align:center;font-weight:700;color:#294a31}
.quiz-answer-letters{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.quiz-answer-letters button{min-height:52px;border:2px solid #d7e1d3;background:#fff;border-radius:14px;font-size:1.05rem;font-weight:800;cursor:pointer;color:#21462a;transition:.15s ease}
.quiz-answer-letters button:hover{border-color:#6f946f;background:#f5f8f2}
.quiz-answer-letters button.selected{border-color:#174f25;background:#e9f2e7;box-shadow:0 0 0 3px rgba(23,79,37,.08)}
.quiz-controls{display:flex;justify-content:space-between;gap:12px;margin-top:18px}
.quiz-controls .btn{margin:0;flex:1;text-align:center}
.quiz-controls .btn:disabled{opacity:.42;cursor:not-allowed}
.quiz-save-note{text-align:center;margin:12px 0 0}
.quiz-result-box{margin-top:24px;padding:32px 26px;background:#f3f6ef;border:1px solid #dce7d7;border-radius:20px;text-align:center}
.satyam-card.quiz-match{outline:4px solid rgba(29,89,43,.35);outline-offset:4px}
@media(max-width:540px){
  .quiz-player{width:100%}
  .quiz-answer-panel{padding:16px 12px}
  .quiz-answer-letters{gap:7px}
  .quiz-answer-letters button{min-height:48px;border-radius:12px}
  .quiz-controls{flex-direction:column-reverse}
  .quiz-controls .btn{width:100%}
}


/* Download popup */
body.modal-open{overflow:hidden}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.download-popup-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(19,38,21,.72);backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px}
.download-popup-card{position:relative;width:min(1200px,96vw)}
.download-popup-image{width:100%;height:auto;display:block;border-radius:28px;box-shadow:0 26px 70px rgba(0,0,0,.28)}
.popup-hotspot{position:absolute;display:block;border:0;background:transparent;cursor:pointer;border-radius:18px;text-decoration:none}
.popup-hotspot:focus-visible{outline:3px solid rgba(255,255,255,.95);outline-offset:2px}
.popup-close{top:1.7%;right:1.2%;width:5.5%;height:9.5%;border-radius:50%}
.popup-paperback{left:4.2%;top:74.2%;width:22.2%;height:12.2%;border-radius:20px}
.popup-kindle{left:27.5%;top:74.2%;width:22.0%;height:12.2%;border-radius:20px}
.popup-not-now{left:14.7%;top:89.4%;width:19.5%;height:5.6%;border-radius:12px}
@media(max-width:800px){
  .download-popup-backdrop{padding:12px}
  .download-popup-card{width:min(98vw,980px)}
}


/* Critical modal visibility rule: the HTML hidden attribute must override
   the popup's normal grid layout so it cannot cover the quiz before use. */
.download-popup-backdrop[hidden]{display:none!important}
