
:root{
  --ink:#151515;--ink2:#2a2a2a;--muted:#6e7b73;--line:#dfe6e0;--soft:#f3f7f3;--white:#fff;
  --green:#8BEA00;--shadow:0 22px 60px rgba(0,0,0,.08);--radius:22px;--max:1240px;--header:70px
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 44px));margin:auto}.skip{position:fixed;top:8px;left:8px;z-index:999;background:var(--green);padding:10px 14px;border-radius:8px;transform:translateY(-150%)}.skip:focus{transform:none}:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header);background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:900;letter-spacing:.035em;white-space:nowrap}.brand b{color:var(--green)}.nav{display:flex;align-items:center;gap:2px}.nav a,.nav-deck{border:0;background:transparent;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;padding:10px;border-radius:10px;color:#555}.nav a:hover{background:var(--soft)}.nav-deck{background:var(--green);color:#132015;margin-left:6px;padding-inline:15px;cursor:pointer}.menu-btn{display:none;border:0;background:transparent;padding:7px}.menu-btn span{display:block;width:23px;height:2px;background:var(--ink);margin:5px 0}
.hero{position:relative;min-height:810px;padding:calc(var(--header) + 74px) 0 80px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#f7faf7 70%,#f0f7ec 100%);border-bottom:1px solid var(--line)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,#000,transparent 83%)}.hero:after{content:"";position:absolute;width:540px;height:540px;border-radius:50%;right:-120px;top:55px;background:radial-gradient(circle,var(--green),transparent 68%);opacity:.35}.hero-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center;position:relative;z-index:2}.eyebrow,.section-kicker{font-size:11px;font-weight:900;letter-spacing:.15em;color:#666}.hero h1{font-size:clamp(55px,7vw,96px);line-height:.95;margin:20px 0 28px;font-weight:760;letter-spacing:-.05em}.hero h1 span{color:var(--green)}.hero-copy>p{max-width:690px;font-size:18px;line-height:1.65;color:var(--muted);margin:0 0 18px}.authors{font-size:13px;font-weight:800;color:#555;margin-bottom:28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{border:0;border-radius:13px;padding:14px 18px;font-weight:850;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.18s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--green);color:#132015}.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.dark-btn{background:#151515;color:#fff}.book-stage{display:flex;justify-content:center;align-items:center;min-height:600px;perspective:1200px}
.book-stage img{width:min(100%,470px);max-height:650px;object-fit:contain;filter:none;box-shadow:none;transform:rotateX(0deg) rotateY(0deg) translate3d(0,0,0);transform-style:preserve-3d;transition:transform .14s ease-out;will-change:transform}
.section{padding:104px 0;border-bottom:1px solid var(--line)}.white{background:#fff}.soft{background:var(--soft)}.section-head{margin-bottom:46px}.section-head.split{display:grid;grid-template-columns:1fr .86fr;gap:60px;align-items:end}.section-head h2{font-size:clamp(37px,4.8vw,64px);line-height:1.02;letter-spacing:-.05em;margin:10px 0 0;font-weight:760}.section-head p{margin:0;font-size:17px;line-height:1.65;color:var(--muted)}
.about-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.widget{border:1px solid var(--line);border-radius:18px;padding:24px;background:#fff;transition:.22s}.widget:hover{background:var(--green);border-color:var(--green);transform:translateY(-2px)}.about-grid .widget{min-height:210px}.about-grid strong{font-size:44px;letter-spacing:-.05em;color:var(--green);display:block}.about-grid .widget:hover strong{color:var(--ink)}.about-grid h3{font-size:20px;margin:28px 0 9px}.about-grid p{font-size:13px;line-height:1.55;color:var(--muted);margin:0}.about-grid .widget:hover p{color:#222}
.contents-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.toc-intro,.toc-part{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.toc-intro{grid-column:1/-1;font-weight:900;font-size:17px}.toc-intro:hover{background:var(--green);border-color:var(--green)}.toc-part h3{font-size:13px;letter-spacing:.08em;margin:0 0 14px;color:#555}.toc-part a{display:block;padding:9px 0;border-top:1px solid #edf1ed;font-size:13px;font-weight:700;color:#666}.toc-part a:hover{color:#274400}
.reading-shell{background:#fff;border-bottom:1px solid var(--line)}.reading-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:58px;align-items:start}.reading-nav{position:relative}.reading-nav-inner{position:sticky;top:92px;max-height:calc(100vh - 112px);overflow:auto;padding:30px 4px 36px 0;scrollbar-width:thin}.reading-nav h3{font-size:18px;line-height:1.2;margin:9px 0 20px}.reading-nav a{display:block;padding:8px 0;font-size:12px;color:#666;font-weight:750}.reading-nav a:hover{color:#365b10}.reading-nav .collab-mini{display:inline-block;background:var(--green);color:#151515;padding:10px 12px;border-radius:10px;margin-top:15px}
.book-content{border-left:1px solid var(--line);padding-left:58px;padding-bottom:80px}.book-intro,.book-part{padding:82px 0 0}.part-banner{background:var(--green);color:#151515;border-radius:20px;padding:34px 38px;margin-bottom:44px}
.part-banner span{color:#151515;font-size:10px;font-weight:900;letter-spacing:.16em}
.part-banner h2{font-size:clamp(34px,4vw,54px);line-height:1;margin:10px 0 0;letter-spacing:-.045em;color:#151515}.chapter{padding:54px 0 65px;border-bottom:1px solid var(--line)}.chapter:first-of-type{padding-top:0}.chapter-heading{position:relative;margin-bottom:30px}.chapter-heading>span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#666}.chapter-heading h2{font-size:clamp(35px,4vw,55px);line-height:1.02;letter-spacing:-.045em;margin:9px 0 10px}.intro-heading{padding-top:0}.back-toc{font-size:11px;font-weight:800;color:#666}.chapter p,.book-intro p{font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.82;color:#333;max-width:850px;margin:0 0 20px}.chapter h3,.book-intro h3{font-size:26px;line-height:1.18;letter-spacing:-.025em;margin:48px 0 18px;max-width:850px}.summary-point{font-family:Inter,ui-sans-serif,system-ui!important;background:var(--soft);border:1px solid var(--line);border-radius:13px;padding:14px 16px 14px 46px!important;position:relative;font-size:14px!important;line-height:1.55!important}.summary-point span{position:absolute;left:15px;top:13px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:var(--ink);font-size:11px;font-weight:900}
.contact-section{background:#fff}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.contact-copy h2{font-size:clamp(38px,4.5vw,62px);line-height:1.02;letter-spacing:-.05em;margin:10px 0 18px}.contact-copy p{font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 25px}.contact-form{background:var(--green);border-radius:20px;padding:28px;display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form label span,.modal-form label span{display:block;font-size:11px;font-weight:850;margin:0 0 6px}.contact-form input,.contact-form textarea,.modal-form input,.modal-form textarea{width:100%;border:1px solid rgba(24,32,27,.23);border-radius:10px;padding:12px 13px;background:#fff}.contact-form small{font-size:10px;color:#333}
footer{background:#151515;color:#fff;padding:48px 0}.footer-inner{display:grid;grid-template-columns:1fr 1.4fr auto;gap:35px;align-items:start}.footer-brand b{color:var(--green)}footer p{font-size:12px;color:#aaa;margin:10px 0 0}footer nav{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:#ccc}.copyright{font-size:11px;color:#999;text-align:right}
dialog{border:0;padding:0;border-radius:21px;width:min(570px,calc(100% - 28px));box-shadow:0 35px 100px rgba(0,0,0,.28)}dialog::backdrop{background:rgba(0,0,0,.63);backdrop-filter:blur(4px)}.modal{padding:34px;position:relative}.modal-close{position:absolute;right:16px;top:16px;width:36px;height:36px;border:0;border-radius:50%;background:var(--soft);font-size:20px;cursor:pointer}.modal h2{font-size:38px;letter-spacing:-.04em;line-height:1.03;margin:9px 0 12px}.modal>p{color:var(--muted);line-height:1.55}.modal-form{display:grid;gap:13px;margin-top:23px}
.reveal{opacity:0;transform:translateY(16px);transition:.6s ease}.reveal.show{opacity:1;transform:none}
@media(max-width:980px){.nav{display:none;position:absolute;top:62px;right:22px;left:22px;background:#fff;border:1px solid var(--line);padding:14px;border-radius:14px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav.open{display:flex}.menu-btn{display:block}.hero-layout{grid-template-columns:1fr}.hero{min-height:auto}.book-stage{min-height:450px}.book-stage img{max-height:520px}.section-head.split,.contact-layout{grid-template-columns:1fr;gap:28px}.about-grid{grid-template-columns:repeat(2,1fr)}.reading-layout{grid-template-columns:1fr}.reading-nav{display:none}.book-content{border-left:0;padding-left:0}.contents-grid{grid-template-columns:1fr}.toc-intro{grid-column:auto}.footer-inner{grid-template-columns:1fr}.copyright{text-align:left}}
@media(max-width:560px){.container{width:min(var(--max),calc(100% - 28px))}.hero{padding-top:120px}.hero h1{font-size:50px}.book-stage{min-height:380px}.book-stage img{max-height:430px}.section{padding:72px 0}.about-grid,.form-row{grid-template-columns:1fr}.chapter p,.book-intro p{font-size:17px;line-height:1.72}.chapter h3{font-size:23px}.part-banner{padding:28px 24px}.chapter{padding:45px 0 55px}.book-intro,.book-part{padding-top:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

.chapter{border-radius:18px;padding-left:24px;padding-right:24px;margin-left:-24px;margin-right:-24px;transition:background .18s ease,border-color .18s ease}
.chapter:hover{background:var(--green);border-bottom-color:transparent}
.chapter:hover .chapter-heading>span,
.chapter:hover .back-toc,
.chapter:hover p,
.chapter:hover h3{color:#151515}
.chapter:hover .summary-point{background:#fff;border-color:rgba(0,0,0,.12)}
.chapter:hover .summary-point span{background:#151515;color:#fff}

.authors{display:none!important;}

#contents{background:#fff;}
#contents .section-kicker,
#contents .section-head h2,
#contents .section-head p{
  color:#151515;
}
#contents .toc-part,
#contents .toc-intro{
  background:#fff;
  border-color:rgba(0,0,0,.1);
}
#contents .toc-part h3,
#contents .toc-part a,
#contents .toc-intro{
  color:#151515;
}

.hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.hero-actions .btn.primary{
  order:1;
}
.hero-actions .btn.secondary{
  order:2;
}

.part-banner{
  background:var(--green) !important;
  color:#151515 !important;
}
.part-banner h2{
  color:#151515 !important;
}

.chapter{
  border-radius:18px;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.chapter:hover{
  background:var(--green);
  border-bottom-color:transparent;
  transform:translateY(-1px);
}
.chapter:hover .chapter-heading > span,
.chapter:hover .chapter-heading h2,
.chapter:hover .back-toc,
.chapter:hover p,
.chapter:hover h3{
  color:#151515 !important;
}

.reading-nav-inner{
  position:sticky !important;
  top:90px !important;
  max-height:calc(100vh - 110px);
  overflow:auto;
}

.book-stage img{
  box-shadow:none !important;
  filter:none !important;
}

.section-kicker,
.eyebrow{
  color:#151515;
}
.hero .eyebrow{
  color:#151515;
}

.book-stage{
  perspective:1200px;
}

.contact-copy h2{
  max-width:760px;
}

#contents{background:#fff !important;}
#contents .section-kicker{color:var(--green) !important;}
#contents .section-head h2{color:#151515 !important;}
#contents .section-head p{color:var(--muted) !important;}
#contents .toc-part,
#contents .toc-intro{background:#fff !important;border-color:var(--line) !important;}

.reading-layout{
  display:grid;
  grid-template-columns:245px minmax(0,1fr);
  gap:58px;
  align-items:start;
}
.reading-nav{
  position:sticky;
  top:86px;
  align-self:start;
  height:calc(100vh - 96px);
}
.reading-nav-inner{
  position:static !important;
  top:auto !important;
  max-height:100%;
  overflow:auto;
  padding:28px 4px 34px 0;
}
.book-content{
  min-width:0;
}

.part-banner{
  background:transparent !important;
  color:#151515 !important;
  border-radius:0 !important;
  padding:0 !important;
  margin:0 0 38px !important;
}
.part-banner h2{
  color:var(--green) !important;
  font-size:15px !important;
  line-height:1.25 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  margin:0 !important;
  font-weight:850 !important;
}
.chapter{
  background:transparent !important;
  border-radius:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  transform:none !important;
}
.chapter:hover{
  background:transparent !important;
  border-bottom-color:var(--line) !important;
  transform:none !important;
}
.chapter-heading>span{
  color:var(--green) !important;
}
.chapter:hover .chapter-heading>span,
.chapter:hover .chapter-heading h2,
.chapter:hover p,
.chapter:hover h3{
  color:inherit !important;
}
.back-toc{
  color:#777 !important;
  transition:color .18s ease;
}
.back-toc:hover{
  color:var(--green) !important;
}
.summary-point{
  background:#f7f8f7 !important;
  border-color:var(--line) !important;
}
.summary-point span{
  background:var(--green) !important;
  color:#151515 !important;
}

.intro-heading>span{color:var(--green) !important;}

.chapter p,
.book-intro p{
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size:16px !important;
  line-height:1.72 !important;
  color:#4f5651 !important;
  max-width:850px;
  margin:0 0 18px !important;
}
.chapter h3,
.book-intro h3{
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size:22px !important;
  line-height:1.28 !important;
  letter-spacing:-.015em !important;
  margin:38px 0 14px !important;
  color:#151515 !important;
}
.chapter-heading{
  margin-bottom:24px !important;
}
.chapter-heading h2{
  font-size:clamp(31px,3.7vw,48px) !important;
  line-height:1.06 !important;
  letter-spacing:-.038em !important;
  margin:7px 0 9px !important;
}
.chapter{
  padding:46px 0 54px !important;
}
.book-intro,
.book-part{
  padding-top:66px !important;
}

.contact-copy .section-kicker,
.modal .section-kicker{
  color:var(--green) !important;
}

.contact-form .btn.dark-btn{
  width:auto !important;
  justify-self:start !important;
  min-width:108px;
  padding-left:24px;
  padding-right:24px;
}

.hero:after{display:none !important;}

.reading-nav a.active,
.reading-nav a[aria-current="true"]{
  color:var(--green) !important;
  background:transparent !important;
}

.part-banner h2{
  color:var(--green) !important;
  font-size:clamp(34px,4.2vw,56px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
  text-transform:none !important;
  margin:0 0 18px !important;
  font-weight:760 !important;
}
.book-part > p{
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size:16px !important;
  line-height:1.72 !important;
  color:#4f5651 !important;
  max-width:850px !important;
  margin:0 0 42px !important;
}
button.collab-mini{
  border:0;
  cursor:pointer;
  font:inherit;
}
