:root{--cover:url("../images/book-cover.webp");--ink:#08131f;--navy:#07131f;--navy2:#0b2034;--cream:#f4f0e8;--paper:#fbfaf6;--gold:#d3aa45;--gold2:#f0cf79;--muted:#6f7680;--line:rgba(8,19,31,.12);--white:#fff;--max:1200px}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink);line-height:1.55}

a{text-decoration:none;color:inherit}

button,input{font:inherit}

.container{width:min(var(--max),calc(100% - 40px));margin:auto}

.serif{font-family:Georgia,"Times New Roman",serif}

.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.73rem;font-weight:600}

.gold{color:var(--gold)}

.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,246,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}

.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}

.brand{font-weight:700;letter-spacing:.18em;font-size:1.06rem}

.brand small{display:block;font-size:.56rem;letter-spacing:.16em;margin-top:2px;color:#636973}

.links{display:flex;align-items:center;gap:28px;font-size:.9rem}

.links a{position:relative;padding:28px 0}

.links a:after{content:"";position:absolute;left:0;right:100%;bottom:17px;height:2px;background:var(--gold);transition:.2s}

.links a:hover:after{right:0}

.cta{background:var(--ink);color:white;border:0;padding:12px 18px;border-radius:2px;font-weight:600;cursor:pointer}

.nav-signup{font-size:.82rem;font-weight:600;border:1px solid #b58a25;padding:10px 12px;color:#6f5314;white-space:nowrap}

.menu{display:none;border:0;background:none;font-size:1.5rem}

.hero{background:radial-gradient(circle at 72% 34%,rgba(31,91,131,.26),transparent 25%),linear-gradient(120deg,#06101a 0%,#0a2135 52%,#07111b 100%);color:white;overflow:hidden;padding:0}

.hero .container{min-height:0;display:grid;grid-template-columns:1.12fr .88fr;align-items:start;gap:48px;padding:28px 0 42px}

.hero h1{font-size:clamp(2.7rem,3.25vw,3.55rem);line-height:1.06;letter-spacing:-.025em;font-weight:500;margin:14px 0 22px;max-width:790px}

.hero p{font-size:1.14rem;color:#dce5eb;max-width:650px}

.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border:1px solid rgba(255,255,255,.32);color:white;background:transparent;font-weight:600;cursor:pointer}

.btn.primary{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#111;border-color:transparent}

.hero-note{margin-top:30px;color:#a9bac8;font-size:.83rem;letter-spacing:.14em;text-transform:uppercase}

.book-stage{position:relative;min-height:0;display:flex;align-items:flex-start;justify-content:center;padding-top:0}

.book-stage:before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(214,176,81,.24),transparent 64%);filter:blur(2px)}

.book{position:relative;width:min(340px,74%);filter:drop-shadow(0 36px 30px rgba(0,0,0,.5));transform:perspective(1200px) rotateY(-5deg);transition:.35s}

.book:hover{transform:perspective(1200px) rotateY(0) translateY(-6px)}

.book .cover-img{display:block;width:100%;aspect-ratio:708/1036;background-image:var(--cover);background-size:cover;background-position:center;border-radius:2px}

.value-strip{background:#f3efe6;border-bottom:1px solid var(--line)}

.value-grid{display:grid;grid-template-columns:repeat(4,1fr)}

.value{padding:30px 28px;text-align:center;border-right:1px solid var(--line)}

.value:last-child{border-right:0}

.icon{font-size:1.6rem;margin-bottom:7px}

.value b{display:block;font-family:Georgia,serif;font-size:1.18rem;font-weight:500}

.value span{font-size:.88rem;color:#6a6f75}

body > main > section{padding:88px 0}

body > main > section[id]{scroll-margin-top:92px}

.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:34px}

.section-head h2{font-size:clamp(2.1rem,4vw,3.7rem);font-weight:400;line-height:1.08;margin:7px 0 0;letter-spacing:-.025em}

.section-head p{max-width:520px;color:#636a72;margin:0}

.book-section{background:white}

.book-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:72px;align-items:center}

.book-flat{max-width:330px;margin:auto;box-shadow:0 35px 60px rgba(7,19,31,.18)}

.book-copy h2{font-size:3.2rem;font-weight:400;line-height:1.08;margin:10px 0 18px}

.book-copy p{font-size:1.05rem;color:#515861}

.pull{border-left:3px solid var(--gold);padding-left:20px;margin:28px 0;font-family:Georgia,serif;font-size:1.2rem;color:#1d2630}

.ticks{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:28px 0}

.ticks span:before{content:"✓";color:#8b6a17;font-weight:900;margin-right:8px}

.sales-band{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

.sales-band-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:44px 0}

.sales-band h2{font-size:2.35rem;font-weight:400;line-height:1.12;margin:7px 0 6px;max-width:760px}

.sales-band p{margin:0;color:#5c6269}

.sales-band .btn{flex:0 0 auto}

.cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}

.influence{background:#071522;color:white}

.influence .section-head p{color:#b8c4cc}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

.card{background:#0d2234;border:1px solid rgba(255,255,255,.08);min-height:320px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;transition:.25s;cursor:pointer}

.card:hover{transform:translateY(-5px);border-color:rgba(211,170,69,.55)}

.card .tag{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold2)}

.card h3{
  margin:14px 0;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.65rem;
  font-weight:400;
  line-height:1.15;
}

.card p{color:#b7c4ce;font-size:.93rem}

.read{font-size:.86rem;font-weight:600;color:#fff}

.read span{color:var(--gold);margin-left:5px}

.test{background:#efe9dd}

.test-shell{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}

.test h2{font-size:3.3rem;font-weight:400;line-height:1.08;margin:8px 0 20px}

.test-card{background:white;padding:30px;box-shadow:0 24px 60px rgba(10,20,30,.1)}

.q{display:none}

.q.active{display:block}

.q h3,
[data-quiz] h3{
  margin-top:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  font-weight:500;
}

.options{display:grid;gap:10px}

.options button{padding:12px 14px;border:1px solid #d7d4ce;background:#fbfaf7;text-align:left;cursor:pointer}

.options button:hover{border-color:#9d7a24}

.progress{height:5px;background:#ebe6dc;margin-bottom:24px}

.progress i{display:block;height:100%;background:var(--gold);width:20%;transition:.25s}

.result{display:block}

.result h3{font-family:Georgia,serif;font-size:1.6rem;font-weight:500}

.result .score{font-size:3.2rem;font-weight:600;color:#9d7a24}

.about{background:white}

.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}

.portrait{background:linear-gradient(145deg,#0a2032,#102b41);min-height:420px;padding:44px;color:white;display:flex;align-items:flex-end;position:relative;overflow:hidden}

.portrait:after{content:"DO";position:absolute;right:-10px;top:-44px;font-family:Georgia,serif;font-size:17rem;color:rgba(255,255,255,.035);font-weight:900}

.portrait h3{font-size:2.5rem;font-weight:500;margin:0;position:relative;z-index:2}

.about-copy h2{font-size:3.3rem;font-weight:400;line-height:1.08;margin:8px 0 18px}

.about-copy p{color:#555d65}

.newsletter{background:linear-gradient(120deg,#07131f,#0d2b42);color:white;padding:58px 0}

.newsletter .container{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}

.newsletter h2{font-family:Georgia,serif;font-size:2.3rem;font-weight:500;margin:0 0 8px}

.newsletter p{color:#c4d0d9;margin:0}

.signup{display:flex}

.signup input{flex:1;min-width:0;border:0;padding:15px 16px}

.signup button{border:0;background:var(--gold);padding:0 22px;font-weight:600;cursor:pointer}

.signup button:disabled{opacity:.65;cursor:wait}

.signup-msg{font-size:.8rem;color:#d9e2e8;margin-top:8px;min-height:1em}

.article-signup{margin-top:30px;padding:24px;background:#0b1d2c;color:#fff}

.article-signup h3{font-family:Georgia,serif;font-size:1.45rem;font-weight:500;margin:0 0 6px}

.article-signup p{color:#c7d2da;margin:0 0 14px}

.article-signup .signup-msg{color:#c7d2da}

.article-signup .signup input{border:1px solid #d9d9d9}

footer{background:#f8f6f1;border-top:1px solid var(--line);padding:34px 0}

.foot{display:flex;justify-content:space-between;gap:30px;align-items:center;font-size:.84rem;color:#636a72}

.foot strong{color:var(--ink);font-weight:600;letter-spacing:.15em}

.foot-links{display:flex;gap:18px;flex-wrap:wrap}

.mobile-nav{display:none}

@media(max-width:900px){.sales-band-inner{align-items:flex-start;flex-direction:column}

.nav{gap:12px}

.brand{flex:0 0 105px;font-size:.88rem;line-height:1.15;letter-spacing:.13em}

.brand small{display:none}

.sales-band h2{font-size:2rem}

.links{display:none}

.menu{display:block}

.hero .container,.book-grid,.test-shell,.about-grid,.newsletter .container{grid-template-columns:1fr}

.hero .container{padding:28px 0 30px}

.book-stage{min-height:0}

.value-grid{grid-template-columns:1fr 1fr}

.value:nth-child(2){border-right:0}

.value:nth-child(-n+2){border-bottom:1px solid var(--line)}

.cards{grid-template-columns:1fr}

.section-head{align-items:start;flex-direction:column}

.mobile-nav{position:fixed;top:76px;left:0;right:0;background:#fbfaf6;border-bottom:1px solid var(--line);padding:18px 20px;z-index:49;display:none}

.mobile-nav.open{display:grid;gap:12px}

.book-grid{gap:42px}

.about-grid{gap:35px}

.newsletter .container{gap:20px}

.foot{align-items:flex-start;flex-direction:column}

.ticks{grid-template-columns:1fr}

}

@media(max-width:560px){.container{width:min(100% - 26px,var(--max))}

.hero h1{font-size:2.25rem;line-height:1.04}

.book-stage{min-height:360px}

.value-grid{grid-template-columns:1fr}

.value{border-right:0!important;border-bottom:1px solid var(--line)}

.value:last-child{border-bottom:0}

.book-copy h2,.test h2,.about-copy h2{font-size:2.45rem}

.signup{flex-direction:column}

.signup button{padding:14px}

}

/* Editorial spacing + book-section cover polish */
.book-section{background:#111;color:#fff}

.book-flat{width:min(330px,100%);aspect-ratio:708/1036;background-image:var(--cover);background-size:cover;background-position:center;border-radius:2px;box-shadow:0 35px 60px rgba(0,0,0,.34)}

.book-copy p{color:#c9c9c9}

.book-section .pull{color:#f1f1f1}

.book-section .btn:not(.primary){color:#fff!important;border-color:#666!important}

.hero h1{margin-bottom:30px}

.book-copy h2{margin-bottom:28px}

.section-head{margin-bottom:46px}

.section-head h2{margin-bottom:18px}

.test h2,.about-copy h2{margin-bottom:28px}

.sales-band h2{margin-bottom:14px}

.newsletter h2{margin-bottom:14px}

.card h3,.q h3{margin-bottom:18px}

@media(max-width:900px){.book-flat{width:min(300px,82vw);margin:0 auto 12px}

.section-head{gap:18px;margin-bottom:38px}

}

[hidden]{display:none!important}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.honeypot{position:absolute;left:-9999px;opacity:0;pointer-events:none}

.secondary-dark{color:#fff;border-color:#666}

.section-action{display:flex;justify-content:flex-end;margin-top:32px}

.influence-status{grid-column:1/-1;color:#b7c4ce}

.editorial-page{background:#f5f1e8}

.editorial-main{min-height:70vh}

.archive-hero{padding:78px 0 56px;background:linear-gradient(120deg,#06101a,#0a2135);color:#fff}

.archive-hero h1{max-width:900px;font-size:clamp(2.7rem,5vw,4.4rem);font-weight:400;line-height:1.08;letter-spacing:-.025em;margin:14px 0 20px}

.archive-hero p{max-width:650px;font-size:1.08rem;color:#c5d1da}

.archive-section{padding:64px 0 88px}

.archive-cards{grid-template-columns:repeat(3,1fr)}

.article-shell{padding:70px 0 90px}

.influence-article{width:min(790px,100%);margin:0 auto;background:#fff;padding:clamp(28px,6vw,72px);box-shadow:0 30px 80px rgba(7,19,31,.09)}

.article-header{padding-bottom:34px;border-bottom:1px solid var(--line);margin-bottom:38px}

.article-meta{
  color:#8c6a18;
  font-size:.76rem;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.article-header h1{
  margin:16px 0 22px;
  font-size:clamp(2.35rem,4.6vw,3.8rem);
  font-weight:400;
  letter-spacing:-.025em;
  line-height:1.08;
}

.article-dek{font-size:1.2rem;line-height:1.6;color:#535c65;margin:0}

.article-section{padding:0;margin:0 0 38px}

.article-section h2,
.article-sources h2{
  margin:0 0 16px;
  font-size:1.75rem;
  font-weight:500;
  line-height:1.2;
}

.article-section p{font-size:1.04rem;line-height:1.76;color:#343d46}

.influence-article blockquote{border-left:4px solid var(--gold);margin:46px 0;padding:4px 0 4px 24px;font-family:Georgia,serif;font-size:1.35rem;line-height:1.5;color:#1c2732}

.book-bridge{margin:48px -28px;padding:36px;background:#0b1d2c;color:#fff}

.book-bridge h2{
  margin:10px 0 14px;
  font-size:1.75rem;
  font-weight:500;
  line-height:1.2;
}

.book-bridge p{color:#c7d2da;margin:0 0 24px}

.article-sources{padding:28px 0 0;margin-top:42px;border-top:1px solid var(--line)}

.article-sources ul{padding-left:20px}

.article-sources a{text-decoration:underline;text-decoration-color:#c8a345;text-underline-offset:3px}

.article-signup{margin:48px 0 0;padding:28px;background:#0b1d2c;color:#fff}

.article-signup h2{
  margin:0 0 8px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.55rem;
  font-weight:500;
}

.article-not-found{width:min(760px,100%);margin:0 auto;text-align:center;background:#fff;padding:70px 30px}

.article-not-found h1{font-size:clamp(2.2rem,5vw,4rem);font-weight:400;line-height:1.1}

@media(max-width:900px){
  .archive-cards{grid-template-columns:1fr}
}

@media(max-width:560px){
  .article-shell{padding:28px 0 52px}
  .influence-article{padding:28px 20px}
  .book-bridge{margin:38px -8px;padding:28px 20px}
  .article-header h1{font-size:clamp(2.15rem,11vw,3rem)}
}
