:root{--ink:#131b2e;--muted:#64748b;--purple:#6b01cd;--orange:#fd5e34;--paper:#faf8ff;--lavender:#f3f0ff;--warm:#f3f0e8;--sans:'Google Sans Flex',Arial,sans-serif;--serif:'Newsreader',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.5 var(--sans);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}p,h1,h2,h3,figure,blockquote{margin:0}p+p{margin-top:20px}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--purple);outline-offset:6px;border-radius:3px}.skip{position:fixed;left:16px;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:12px}.header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 6.25%}.brand{font-size:14px;letter-spacing:1.68px;font-weight:700;white-space:nowrap}.header nav{display:flex;gap:30px;font-size:14px;font-weight:600;letter-spacing:.35px;color:#4b4455}.header nav a{position:relative;padding:8px 0}.header nav a:after{content:'';position:absolute;bottom:1px;left:0;width:100%;height:2px;background:var(--purple);transform:scaleX(0);transform-origin:left;transition:transform .2s}.header nav a:hover:after{transform:scaleX(1)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:17px 26px;background:var(--purple);color:white;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;transition:background .18s,transform .18s,box-shadow .18s}.button:hover{background:#5500a7;transform:translateY(-2px);box-shadow:0 6px 18px #6b01cd22}.button:active{transform:translateY(0)}.button.small{min-height:40px;padding:11px 20px;white-space:nowrap}.button.secondary{background:white;color:var(--ink)}.button.secondary:hover{background:var(--lavender)}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;padding:40px 24px 64px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:24px}.hero:before{content:'';position:absolute;z-index:-1;top:260px;width:min(620px,85vw);height:620px;background:linear-gradient(45deg,#fd5e3426,#6b01cd1a,transparent);filter:blur(32px);border-radius:12px;pointer-events:none}.badge{display:flex;align-items:center;gap:8px;max-width:100%;background:#e2e7ff99;box-shadow:0 1px 2px #0000000d;padding:6px 16px;border-radius:12px;font-size:12px;line-height:16px;letter-spacing:1.44px;text-transform:uppercase}.badge span{height:8px;width:8px;flex-shrink:0;border-radius:50%;background:var(--orange)}h1{font-size:clamp(36px,4.7vw,60px);font-weight:800;font-variation-settings:'wght' 820,'wdth' 105;line-height:1.1;letter-spacing:-.03em}h1 span{color:var(--purple)}@font-face{font-family:'Newsreader Display';font-style:italic;font-weight:200 800;font-display:swap;src:url('assets/newsreader-italic-variable.ttf') format('truetype')}h1 em{color:var(--orange);font-family:'Newsreader Display',Georgia,serif;font-weight:800;font-style:italic;font-variation-settings:'wght' 800,'opsz' 60;-webkit-text-stroke:0}.serif{font:400 20px/1.4 var(--serif);color:var(--muted)}.book-stage{width:100%;padding:24px 0 16px}.book{position:relative;overflow:hidden;width:362px;aspect-ratio:362/510;margin:auto;box-shadow:0 10px 24px #261a1a29}.book img{position:absolute;max-width:none;width:128.2446%;height:129.183%;left:-14.1274%;top:-13.6072%}.actions{display:flex;gap:16px}.actions .button{min-width:226px}.shops{display:flex;justify-content:center;align-items:center;gap:48px;flex-wrap:wrap}.shops a{display:flex;justify-content:center;align-items:center;min-height:44px;padding:7px 4px;transition:transform .18s,opacity .18s}.shops img{width:116px;height:28px;object-fit:contain}.shops a:first-child img{width:105px}.shops a:hover{transform:translateY(-3px);opacity:.75}.facts{background:var(--lavender);padding:44px 6.25%;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;text-align:center}.facts strong{display:block;font-size:36px;line-height:40px;font-weight:700;letter-spacing:-1.26px}.facts div:nth-child(2) strong{color:var(--orange)}.facts span{display:block;margin-top:8px;text-transform:uppercase;color:var(--muted);font-size:12px;line-height:16px;font-weight:700;letter-spacing:1.44px}.section{padding:88px max(6.25%,calc((100% - 1120px)/2))}.section-heading{text-align:center;display:flex;flex-direction:column;gap:24px}.eyebrow{color:var(--purple);font-size:12px;line-height:16px;font-weight:700;letter-spacing:1.44px;text-transform:uppercase}h2{font-size:36px;font-weight:800;line-height:40px;letter-spacing:-.54px}h3{font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.3px}.flywheel-section{background:white}.wheel-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-top:48px}.wheel{width:100%;height:auto;display:block}.wheel-wrap{min-width:0}.wheel-controls{text-align:center;margin-top:12px}.text-button{background:transparent;border:0;color:#4b4455;font-size:12px;min-height:44px;text-decoration:underline;text-underline-offset:4px;padding:10px 14px}.text-button:hover{color:var(--purple)}.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:28px}.tabs button{background:#f2f0fc;border:0;color:var(--ink);font-size:14px;font-weight:700;min-height:44px;padding:10px 4px;border-radius:5px;transition:background .18s,color .18s}.tabs button:hover{background:#e6ddf6}.tabs button[aria-selected=true]{background:#3b2e91;color:white}.wheel-details h3{font-size:28px;line-height:1.3;margin-bottom:20px}.wheel-details p{margin-bottom:24px}.wheel-details ol{list-style:none;counter-reset:task;padding:0;margin:0}.wheel-details li{counter-increment:task;line-height:1.7}.wheel-details li:before{content:counter(task,decimal-leading-zero);font-size:12px;color:var(--purple);font-weight:600;margin-right:16px}#wheel-panel{min-height:300px}.quote-section{background:var(--warm);padding:64px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px}.quote-icon{width:48px;height:48px;display:grid;place-items:center;background:var(--purple);border-radius:12px}blockquote{font:italic 30px/36px var(--serif);max-width:816px}.dark{color:var(--ink)}.attribution{font-size:14px;line-height:20px;font-style:italic;margin-top:0}.book-photo img{width:100%;height:auto;aspect-ratio:1800/1142;object-fit:cover}.book-photo figcaption{background:white;padding:14px 24px;text-align:center;font-size:12px;color:#777068}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}.card{padding:24px;background:var(--lavender);border-radius:8px;min-height:296px}.number{display:grid;place-items:center;width:32px;height:32px;border-radius:12px;background:var(--purple);color:white;font-size:12px;font-weight:700;margin-bottom:13px}.card:nth-child(even) .number{background:var(--orange)}.card .serif{font-size:18px;margin-top:13px}.card>p:last-child{font-size:14px;line-height:22.75px;color:#4b4455;margin-top:13px}.methods-line{text-align:center;color:#667085;font-size:14px;margin-top:24px}.companion{background:white}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:88px}.two-columns h2{margin:22px 0}.two-columns .serif{margin-bottom:22px}.two-columns p:not(.eyebrow):not(.serif):not(.status){color:#667085}.status{color:var(--purple);font-size:12px;font-weight:700;display:block;margin-top:22px}.steps{list-style:none;counter-reset:step;padding:0;margin:0}.steps li{counter-increment:step;margin-bottom:30px}.steps h3:before{content:counter(step,decimal-leading-zero);margin-right:12px}.steps p{font-size:16px;line-height:23.2px;margin-top:8px}.author{background:var(--warm)}.author .two-columns{grid-template-columns:360px 1fr}.author h2{font-size:46px;line-height:1.1}.author .author-lead{font-size:18px;color:var(--ink)!important}.author .status{font-size:14px}.purchase{text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px}.purchase>p{margin:0}.purchase>p:not(.eyebrow):not(.shop-label){font-size:18px;color:#667085}.shop-label{font-size:14px}footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:36px 6.25%;background:var(--lavender)}footer>span{font-size:12px;color:var(--muted)}
@media(min-width:1600px){.book-photo{max-width:1600px;margin:auto}.hero{padding-top:60px}}
@media(max-width:1050px){.header{gap:20px;padding:22px 5%}.header nav{gap:16px;font-size:13px}.header .button.small{padding:11px 12px}.wheel-layout{gap:32px}.two-columns{gap:40px}.author .two-columns{grid-template-columns:1fr 1.5fr}.cards{grid-template-columns:repeat(2,1fr)}.card{min-height:240px}}
@media(max-width:760px){.header{flex-wrap:wrap;gap:12px;position:relative;padding:20px 24px}.header>.button{display:none}.menu-toggle{display:flex;align-items:center;gap:12px;margin-left:auto;background:transparent;border:0;padding:10px 0;min-height:44px;font-size:14px}.header nav{display:none;width:100%;flex-direction:column;gap:0;padding:12px 0}.header nav.open{display:flex}.header nav a{padding:12px 0;font-size:16px}.hero{padding-top:24px;gap:22px}.badge{font-size:9px;letter-spacing:.8px;line-height:14px;max-width:340px}.hero h1{font-size:clamp(31px,5.8vw,44px);max-width:600px}.intro{font-size:18px;max-width:370px}.book{width:min(290px,74vw)}.book-stage{padding:12px 0}.hero:before{top:210px;height:450px}.actions{width:min(100%,470px);gap:10px}.actions .button{min-width:0;flex:1;font-size:10px;letter-spacing:.8px;padding:15px 12px}.shops{display:grid;grid-template-columns:repeat(2,1fr);column-gap:36px;row-gap:12px}.facts{padding:32px 24px;gap:16px}.facts strong{font-size:30px}.facts span{font-size:9px;letter-spacing:.8px;line-height:14px}.section{padding:64px 24px}.section-heading{gap:18px}h2{font-size:30px;line-height:34px}.section-heading .serif{font-size:18px}.wheel-layout{grid-template-columns:1fr;gap:32px;margin-top:32px}.wheel-wrap{max-width:500px;width:100%;margin:auto}.wheel-details h3{font-size:25px}.tabs{margin-bottom:24px}#wheel-panel{min-height:285px}.quote-section{padding:56px 24px}blockquote{font-size:26px;line-height:32px}.attribution{max-width:440px}.book-photo img{min-height:280px}.book-photo figcaption{font-size:10px;line-height:15px}.cards{gap:12px;margin-top:32px}.card{padding:20px;min-height:280px}.card .serif{font-size:17px}.two-columns,.author .two-columns{grid-template-columns:1fr;gap:36px}.author h2 br{display:none}.author h2{font-size:38px}.author .serif br{display:none}.steps li:last-child{margin-bottom:0}.purchase>p:not(.eyebrow):not(.shop-label){font-size:16px}.purchase .shops{margin-top:8px}footer{padding:30px 24px;align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:380px){.cards{grid-template-columns:1fr}.card{min-height:0}.hero h1{font-size:29px}.header .brand{font-size:12px}.tabs{gap:5px}.tabs button{font-size:12px}.facts{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.wheel{cursor:pointer}

@font-face{font-family:'Google Sans Flex Wide';font-style:normal;font-weight:100 1000;font-stretch:25% 151%;font-display:swap;src:url('assets/google-sans-flex-variable.ttf') format('truetype')}
/* Timed accordion inspired by the Asana interaction. */
.wheel-layout{--book-violet:#402683;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:54px;align-items:center;padding:0;border:0;background:transparent}
.wheel-wrap{width:100%;min-width:0;margin:0;align-self:start;padding-top:20px}
.wheel-details{border:0;background:transparent;padding:0;min-width:0}
.wheel-accordion{border-bottom:1px solid #dedde1}
.accordion-item{position:relative;border-top:1px solid #dedde1}
.wheel-details .accordion-item h3{margin:0}
.accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:92px;padding:25px 0;border:0;background:none;text-align:left;color:#402683;font-family:'Google Sans Flex Wide',var(--sans);font-variation-settings:'wdth' 112,'wght' 650;font-size:23px;line-height:1.3;font-weight:650;transition:opacity .2s}
.accordion-trigger:hover{opacity:.7}
.accordion-chevron{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:50%;background:#40268308}
.accordion-chevron:before{content:'';width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s}
[aria-expanded=true] .accordion-chevron:before{transform:translateY(2px) rotate(225deg)}
.accordion-panel{min-height:270px;padding:0 35px 29px 0;animation:accordion-reveal .28s ease-out}
.accordion-panel[hidden]{display:none}
.wheel-details .accordion-panel p{font-size:17px;line-height:1.5;margin:0 0 20px}
.wheel-details .accordion-panel li{display:flex;align-items:baseline;font-size:16px;line-height:28px}
.wheel-details .accordion-panel li:before{color:#402683;font-size:16px;font-weight:600;flex:none;width:24px;margin-right:10px}
.accordion-progress{position:absolute;left:0;top:-1px;width:100%;height:2px;background:#402683;transform:scaleX(var(--progress,0));transform-origin:left;pointer-events:none}
.accordion-controls{text-align:right;margin-top:10px}
.accordion-controls .text-button{padding-right:0}
@keyframes accordion-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.wheel-layout{gap:32px}.accordion-trigger{font-size:20px}}
@media(max-width:760px){.wheel-layout{grid-template-columns:minmax(0,1fr);gap:26px}.wheel-wrap{max-width:500px;margin:auto;padding:0}.accordion-trigger{font-size:21px;min-height:82px;gap:12px}.accordion-panel{padding-right:0}.accordion-controls{text-align:left}}
@media(prefers-reduced-motion:reduce){.accordion-panel{animation:none}}

.accordion-item[data-area="drive"] li:before{content:"D" counter(task)}
.accordion-item[data-area="lead"] li:before{content:"L" counter(task)}
.accordion-item[data-area="ship"] li:before{content:"S" counter(task)}

/* Two complementary sources of trust: practice and publishing experience. */
.facts.proof{display:block;padding:58px max(6.25%,calc((100% - 1120px)/2));text-align:center}
.proof-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:36px;text-align:center}
.proof-columns article{padding:0 40px}
.proof-columns article+article{border-left:1px solid #40268330}
.proof-columns h2{margin:0 0 24px;letter-spacing:0}
.facts .proof-columns h2 strong{display:block;font-size:64px;line-height:1.1;font-weight:700;letter-spacing:-2px;color:#402683}
.facts .proof-columns h2 span{display:block;margin-top:8px;font-size:19px;line-height:1.4;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink)}
.proof-columns p{max-width:380px;font-size:16px;line-height:1.6;color:#4b4455;margin:0 auto}
.proof-columns .proof-lead{font-size:18px;line-height:1.5;font-weight:500;color:var(--ink);margin-bottom:12px}
.proof-columns .proof-lead em{font-style:italic}
.proof-columns .proof-note{font-size:12px;line-height:1.5;color:#777080;margin-top:18px}
@media(max-width:1050px){.proof-columns article{padding:0 30px}}
@media(max-width:760px){.facts.proof{padding:44px 24px}.proof-columns{grid-template-columns:minmax(0,1fr);margin:30px auto 0;max-width:480px}.proof-columns article{padding:0}.proof-columns article+article{border-left:0;border-top:1px solid #40268330;margin-top:30px;padding-top:30px}.facts .proof-columns h2 strong{font-size:52px}.facts .proof-columns h2 span{font-size:20px}.proof-columns h2{margin-bottom:20px}}

/* Brushed metallic orange with a soft spotlight and a sharper foil reflection. */
.book{isolation:isolate}
.book::before,.book::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;mask-image:var(--orange-mask,linear-gradient(transparent,transparent));mask-size:100% 100%;mask-repeat:no-repeat;background-repeat:no-repeat;background-size:250% 220%;animation:cover-metal-light 4s ease-in-out infinite}
.book::before{z-index:1;mix-blend-mode:multiply;background-image:radial-gradient(ellipse at center,transparent 12%,rgba(104,42,10,.16) 29%,rgba(104,42,10,.07) 43%,transparent 57%)}
.book::after{z-index:2;mix-blend-mode:screen;background-image:linear-gradient(112deg,transparent 37%,#fff3ce08 43%,#fff7db18 45%,#fffbea38 49%,#fff7da24 53%,#ffd28b0c 57%,transparent 59%),radial-gradient(ellipse at center,rgba(255,231,189,.26) 0%,rgba(255,212,143,.16) 13%,rgba(255,191,109,.06) 26%,transparent 39%)}
.book-metal-grain{position:absolute;inset:0;z-index:1;pointer-events:none;mask-image:var(--orange-mask,linear-gradient(transparent,transparent));mask-size:100% 100%;mix-blend-mode:soft-light;opacity:.42;background-image:repeating-linear-gradient(3deg,#fff9e838 0px,#fff9e838 .35px,#57200030 .7px,transparent 1.3px,transparent 2px),repeating-linear-gradient(1deg,transparent 0 3px,#ffffff28 3.2px,transparent 3.7px 6px),linear-gradient(110deg,#56220255 0%,#ffc47a22 25%,#fff3d15c 42%,#55230955 60%,#ffdca540 78%,#79300544 100%)}
@keyframes cover-metal-light{0%{opacity:0;background-position:150% 110%}5%{opacity:1}32%{opacity:1}45%{opacity:0;background-position:-50% -10%}100%{opacity:0;background-position:-50% -10%}}
@media(prefers-reduced-motion:reduce){.book::before,.book::after{animation:none;display:none}}

.cover-material{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}
.book.has-material::before,.book.has-material::after,.book.has-material .book-metal-grain{display:none}

/* A soft sheen clipped to the bestseller badge. */
.badge{position:relative;overflow:hidden;isolation:isolate}
.badge::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(110deg,transparent 43%,rgba(255,255,255,.18) 47%,rgba(255,255,255,.55) 50%,rgba(255,255,255,.18) 53%,transparent 57%);background-size:300% 100%;background-repeat:no-repeat;opacity:0;animation:badge-sheen 12s ease-in-out 1s infinite}
@keyframes badge-sheen{0%{background-position:150% 0;opacity:0}3%{opacity:.65}17%{opacity:.65}22%{background-position:-50% 0;opacity:0}100%{background-position:-50% 0;opacity:0}}
@media(prefers-reduced-motion:reduce){.badge::after{animation:none;display:none}}

.companion-cta{margin-top:28px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.companion-cta .status{margin:0}
.companion-cta .button{border:0}
.companion-cta .button:disabled{opacity:.65;cursor:default;transform:none;box-shadow:none;background:var(--purple)}
