:root{
color-scheme:light;
--paper:#FBF7F0;--oat:#EFE6D6;--sage:#7E9A83;--green:#1F3A2E;--green-soft:#2c5142;
--honey:#E8B05C;--coral:#E4443A;--coral-dark:#c5372e;
--ink:#33302a;--secondary:#6b6255;--line:#e2d6c3;--white:#fffdf9;
--radius:14px;--font:Manrope,'Segoe UI',sans-serif;--display:Fraunces,Georgia,serif;--ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:74px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.6 var(--font);-webkit-font-smoothing:antialiased}
::selection{background:var(--honey);color:var(--green)}
button,input{font:inherit}button{cursor:pointer}
a{color:inherit;text-underline-offset:.22em}a,button{-webkit-tap-highlight-color:transparent}
button:disabled,input:disabled{cursor:not-allowed}
[hidden]{display:none!important}:focus-visible{outline:3px solid var(--green);outline-offset:4px}
img,video{display:block;max-width:100%;height:auto}figure,h1,h2,h3,p,ul,ol{margin:0}
h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:-.02em;text-wrap:balance;color:var(--green)}
h1{font-size:clamp(2.35rem,6vw,3.9rem);line-height:1.05;letter-spacing:-.035em}
h1 em{font-style:italic;color:var(--coral);font-weight:600}
h2{font-size:clamp(1.9rem,4vw,3rem);line-height:1.12}
h3{font-size:1.4rem;line-height:1.18}
p{max-width:66ch}
.shell{width:min(1120px,100%);margin-inline:auto;padding-inline:32px}
.section-space{padding-block:72px}
.icon{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.skip{position:fixed;z-index:100;left:14px;top:-100px;background:var(--green);color:#fff;padding:14px 20px;border-radius:8px}.skip:focus{top:12px}
.text-link{display:inline-flex;align-items:center;gap:9px;font-weight:700;color:var(--green-soft);text-decoration:none;min-height:40px}
.text-link .icon{width:17px;height:17px;flex-basis:17px;transition:transform .25s var(--ease)}.text-link:hover .icon{transform:translateX(4px)}

/* ---- header ---- */
.site-header{background:var(--green);color:var(--paper)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--paper);font-family:var(--display);font-weight:600;font-size:1.15rem;line-height:1.1;letter-spacing:-.02em}
.brand small{display:block;margin-top:3px;font-family:var(--font);font-weight:400;font-size:.72rem;letter-spacing:0;color:#c9d6c8}
.brand-icon{width:30px;height:30px;flex-shrink:0;fill:none;stroke:var(--honey);stroke-width:1.5;stroke-linejoin:round}
.header-buy{display:inline-flex;align-items:center;gap:8px;text-decoration:none;background:var(--honey);color:var(--green);font-weight:800;font-size:.9rem;padding:9px 16px;border-radius:6px;white-space:nowrap}
.header-buy strong{font-weight:800}.header-buy:hover{background:#f0bd6f}.header-buy .icon{width:16px;height:16px;flex-basis:16px}

/* ---- promo bar ---- */
.promo-bar{position:sticky;top:0;z-index:40;background:var(--coral);color:#fff;font-size:.82rem;font-weight:600;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.promo-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 14px;min-height:38px;padding-block:7px;text-align:center}
.promo-off{background:#fff;color:var(--coral);font-weight:800;border-radius:5px;padding:2px 8px;letter-spacing:.01em}
.promo-price s{opacity:.72;margin-right:5px}.promo-price strong{font-weight:800}
.promo-timer b{font-variant-numeric:tabular-nums;font-weight:800;background:rgba(0,0,0,.18);padding:2px 7px;border-radius:5px;margin-left:2px}
.promo-day{opacity:.9}

/* ---- buy button (warm 3D) ---- */
.buy{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:60px;padding:0 22px;border:0;border-radius:6px;
background:linear-gradient(180deg,#FFCF90,#FFB15E);color:var(--green);font-weight:800;font-size:1.0625rem;line-height:1.15;text-decoration:none;text-align:center;
box-shadow:0 5px 0 #B56F2F,0 10px 18px -6px rgba(120,70,30,.5);transition:transform .12s var(--ease),box-shadow .12s var(--ease),filter .2s}
.buy:hover:not(:disabled){filter:brightness(1.03)}
.buy:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px 0 #B56F2F,0 4px 10px -4px rgba(120,70,30,.5)}
.buy .icon{width:19px;height:19px;flex-basis:19px}
.buy:disabled{background:#e3dccd;color:#7a7263;box-shadow:0 5px 0 #c9c0ad;filter:none}
.buy::after{content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;pointer-events:none;
background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:shine-sweep 2.8s var(--ease) infinite}
@keyframes shine-sweep{0%{left:-60%}55%,100%{left:130%}}
@media(prefers-reduced-motion:reduce){.buy::after{display:none}}
.buy-ghost{margin-top:12px;background:var(--paper);color:var(--green-soft);font-weight:700;box-shadow:none;border:1.5px solid var(--honey)}
.buy-ghost::after{display:none}
.buy-ghost:hover:not(:disabled){filter:none;background:var(--oat)}
.buy-ghost:active:not(:disabled){transform:none;box-shadow:none}

/* ---- hero ---- */
.hero{max-width:760px;margin-inline:auto;text-align:center;padding-block:34px 24px}
.eyebrow{display:inline-block;max-width:none;margin-bottom:14px;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--green-soft);background:var(--oat);padding:6px 14px;border-radius:999px}
.hero-lead{max-width:34ch;margin:16px auto 0;font-size:1.15rem;color:var(--secondary);line-height:1.5}
.hero-covers{display:flex;justify-content:center;align-items:flex-end;gap:clamp(14px,4vw,34px);margin:28px auto 30px;perspective:1600px}
.cover-object{position:relative;display:block;width:clamp(150px,23vw,214px);border-radius:3px;text-decoration:none;
box-shadow:0 20px 34px -14px rgba(120,70,30,.42),0 5px 12px rgba(120,70,30,.2);
transform-style:preserve-3d;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.cover-object img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:3px}
.cover-object::before{content:"";position:absolute;inset:0 auto 0 0;width:7%;border-radius:3px 0 0 3px;pointer-events:none;
background:linear-gradient(90deg,rgba(255,255,255,.32),rgba(255,255,255,.05) 55%,rgba(0,0,0,.06))}
.hero-covers .cover-object:first-child{transform:rotateY(9deg) rotate(-1.6deg)}
.hero-covers .cover-object:last-child{transform:rotateY(-9deg) rotate(1.6deg)}
@media(hover:hover){.hero-covers .cover-object:hover{transform:rotateY(0) rotate(0) translateY(-6px);box-shadow:0 28px 44px -14px rgba(120,70,30,.5)}}

/* ---- price block ---- */
.price-block{max-width:440px;margin:0 auto;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 26px 22px;text-align:center;box-shadow:0 16px 40px -22px rgba(60,40,20,.5)}
.pb-anchor{max-width:none;display:flex;align-items:center;justify-content:center;gap:10px;margin:0;color:var(--secondary);font-size:1rem}
.pb-anchor s{color:var(--coral);text-decoration-thickness:2px;font-weight:600;font-variant-numeric:tabular-nums}
.pb-off{background:var(--coral);color:#fff;font-weight:800;font-size:.75rem;border-radius:999px;padding:3px 10px;letter-spacing:.01em}
.pb-price{max-width:none;margin:4px 0 0;font-family:var(--display);font-weight:600;font-size:clamp(3.9rem,10vw,4.6rem);line-height:1;color:var(--green);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.pb-save{max-width:none;display:inline-block;margin:12px 0 0;color:#a8712a;font-weight:800;font-size:.9rem;border:1.5px solid var(--honey);border-radius:999px;padding:5px 14px}
.price-block .buy{margin-top:18px}
.pb-note{max-width:38ch;margin:14px auto 0;font-size:.78rem;color:var(--secondary);line-height:1.45}
.pb-timer{max-width:none;margin:10px 0 0;font-size:.82rem;color:var(--coral-dark);font-weight:700}
.pb-timer b{font-variant-numeric:tabular-nums}
.pb-guarantee{max-width:none;margin:12px 0 0;font-size:.78rem}.pb-guarantee a{color:var(--secondary)}
.launch-note{max-width:40ch;margin:12px auto 0;font-size:.78rem;color:var(--secondary)}

/* ---- trust strip ---- */

/* ---- recognition ---- */
.recognition{background:linear-gradient(180deg,var(--oat),#f3ecdd);border-block:1px solid var(--line);padding-block:56px}
.recognition h2{text-align:center}
.recognition-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px auto 0;max-width:860px}
.recognition-grid p{max-width:none;margin:0;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:18px 20px;font-size:1rem;color:var(--secondary);line-height:1.5}
.recognition-grid strong{color:var(--green);font-weight:700}
.recognition-close{max-width:44ch;margin:26px auto 0;text-align:center;font-weight:700;color:var(--green);font-size:1.05rem}

/* ---- section title ---- */
.section-title{text-align:center;max-width:640px;margin:0 auto 40px}
.section-title p{margin:14px auto 0;color:var(--secondary)}

/* ---- books ---- */
.single-books{display:grid;gap:28px}
.book-card{display:grid;grid-template-columns:290px 1fr;gap:36px;align-items:start;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:34px;transition:outline-color .4s}
.book-card[data-selected=true]{outline:3px solid var(--honey);outline-offset:2px}
.book-kindness{background:#f7f2e8}
.book-art{position:relative;border-radius:3px;box-shadow:0 16px 28px -14px rgba(120,70,30,.4),0 4px 10px rgba(120,70,30,.16)}
.book-art img{width:100%;border-radius:3px;aspect-ratio:2/3;object-fit:cover}
.book-art::before{content:"";position:absolute;inset:0 auto 0 0;width:6%;border-radius:3px 0 0 3px;background:linear-gradient(90deg,rgba(255,255,255,.3),rgba(255,255,255,.04) 55%,rgba(0,0,0,.05))}
.book-promise{margin-top:10px;font-weight:700;color:var(--green-soft);font-size:1.05rem}
.book-benefits{display:grid;gap:11px;padding:0;margin:20px 0 0;list-style:none;font-size:.95rem;line-height:1.5}
.book-benefits li{display:flex;gap:10px;align-items:start}.book-benefits .icon{width:18px;height:18px;flex-basis:18px;margin-top:3px;stroke:var(--sage)}
.chapter-list{margin-top:18px;border-top:1px solid var(--line)}
.chapter-list summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px;font-size:.88rem;font-weight:700;list-style:none;cursor:pointer;color:var(--green-soft)}
summary::-webkit-details-marker{display:none}
.chapter-list summary .icon{transition:transform .25s var(--ease)}.chapter-list[open] summary .icon{transform:rotate(45deg)}
.chapter-list ol{padding-left:20px;font-size:.9rem;line-height:1.5;display:grid;gap:9px;margin:3px 0 16px;color:var(--secondary)}
.peek{display:inline-flex;align-items:center;gap:12px;margin-top:16px;padding:8px;border:1px solid var(--line);border-radius:10px;text-decoration:none;background:var(--oat)}
.peek img{width:52px;height:auto;border-radius:4px;box-shadow:0 3px 8px rgba(0,0,0,.14)}
.peek span{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.9rem;color:var(--green-soft)}.peek .icon{width:16px;height:16px;flex-basis:16px}
.book-buy{display:flex;align-items:center;gap:18px;margin-top:22px;flex-wrap:wrap}
.book-price{max-width:none;margin:0;font-weight:700;line-height:1.2;font-size:.85rem;color:var(--secondary)}
.book-price span{display:flex;align-items:baseline;gap:8px;margin-top:4px}
.book-price s{color:var(--coral);font-size:.95rem;text-decoration-thickness:2px}
.book-price strong{font-family:var(--display);font-weight:600;font-size:1.85rem;color:var(--green);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.buy-single{width:auto;flex:1;min-width:220px;min-height:54px;font-size:1rem}
.sample-link{margin-top:14px;font-size:.9rem}
.edition-note{margin-top:12px;font-size:.75rem;color:var(--secondary);line-height:1.5}.edition-note cite{font-style:italic}

/* ---- sample ---- */
.inline-sample{max-width:780px;margin:0 auto;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);scroll-margin-top:80px}
.inline-sample>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:84px;padding:22px 26px;font-weight:700;font-size:1.1rem;list-style:none;cursor:pointer;color:var(--green)}
.inline-sample summary small{display:block;font-size:.8rem;font-weight:400;color:var(--secondary);margin-top:4px}
.inline-sample[open]>summary .icon{transform:rotate(45deg)}.inline-sample>summary .icon{transition:transform .25s var(--ease)}
.inline-sample-content{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:4px 26px 28px}
.inline-sample-content h3{font-size:1.2rem}.inline-sample-content p{font-size:.92rem;color:var(--secondary);margin-top:10px}
.sample-direct{display:flex;flex-direction:column;margin-top:14px;font-size:.88rem}.sample-direct a{display:flex;align-items:center;min-height:42px;color:var(--green-soft);font-weight:700}
.lform{position:relative;display:flex;flex-direction:column;gap:9px}
.lform label{font-size:.85rem;font-weight:700}
.lform input[type=email]{min-height:54px;border:1px solid #bcae97;border-radius:9px;padding:12px 15px;width:100%;background:var(--paper);color:var(--ink);font-size:1rem}
.lform input::placeholder{color:#8a8069}
.lform .buy{margin-top:4px}
.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-note{font-size:.75rem;margin-top:8px;color:var(--secondary)}.lform .form-note{color:var(--coral-dark)}.form-note:empty{display:none}
.form-done{display:none}.form-done.on{display:block}

/* ---- author + media ---- */
.author-block{display:grid;grid-template-columns:minmax(0,40%) minmax(0,1fr);gap:44px;align-items:center;border-top:1px solid var(--line)}
.author-block img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);background:var(--oat)}
.author-block p{margin-top:14px;color:var(--secondary)}.author-block a{color:var(--green-soft);font-weight:700}
.reader-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,calc((100% - 64px)/5));gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 18px;overscroll-behavior-x:contain}
.reader-card{scroll-snap-align:start;margin:0;min-width:0}
.reader-card video{width:100%;aspect-ratio:9/16;background:var(--green);border-radius:12px}
.reader-card figcaption{font-size:.8rem;color:var(--secondary);margin-top:9px}
.reviews-section .reader-rail{margin-top:8px}

/* ---- faq ---- */
.faq-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}
.faq-layout>div>p{margin-top:16px;color:var(--secondary)}
.faq-items details{border-bottom:1px solid var(--line)}.faq-items details:first-child{border-top:1px solid var(--line)}
.faq-items summary{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:64px;padding-block:18px;font-weight:700;font-size:1rem;line-height:1.5;list-style:none;cursor:pointer;color:var(--green)}
.faq-items summary .icon{transition:transform .25s var(--ease);stroke:var(--sage)}.faq-items details[open] summary .icon{transform:rotate(45deg)}
.faq-items p{font-size:.92rem;line-height:1.7;color:var(--secondary);padding:0 20px 22px 0}.faq-items cite{font-style:italic}
.faq-items a{color:var(--green-soft);font-weight:600}

/* ---- final offer ---- */
.final-offer{background:var(--green);color:var(--paper);text-align:center;padding-block:66px}
.final-offer h2{color:var(--paper)}
.final-sub{max-width:46ch;margin:16px auto 30px;color:#cdd8cb}
.final-offer .price-block{background:var(--white)}
.final-single{max-width:none;margin:24px 0 0;font-size:.95rem;color:#cdd8cb}
.final-single a{color:var(--honey);font-weight:700;text-decoration:none;white-space:nowrap}
.final-single strong{font-weight:800}

/* ---- footer ---- */
.site-footer{padding-block:34px 30px;background:#f3ecdd;border-top:1px solid var(--line)}
.footer-inner{display:grid;grid-template-columns:1fr auto;gap:20px 30px;align-items:center}
.footer-brand{font-family:var(--display);font-size:1.2rem;font-weight:600;text-decoration:none;color:var(--green)}
.footer-brand>span{display:block;font-family:var(--font);font-size:.8rem;font-weight:400;color:var(--secondary);margin-top:4px}
.footer-inner nav{display:flex;gap:22px;flex-wrap:wrap}.footer-inner nav a{font-size:.8rem;min-height:42px;display:flex;align-items:center;color:var(--secondary)}
.footer-inner>p{grid-column:1/-1;font-size:.75rem;color:var(--secondary)}

/* ---- sticky mobile bar ---- */
.sticky-offer{position:fixed;inset:auto 0 0;z-index:35;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 16px calc(9px + env(safe-area-inset-bottom));background:var(--white);box-shadow:0 -4px 22px rgba(60,40,20,.16);border-top:1px solid var(--line)}
.so-price{font-size:.82rem;font-weight:700;color:var(--green);white-space:nowrap}
.so-price s{color:var(--coral);margin-right:2px;font-weight:600}
.so-price b{font-variant-numeric:tabular-nums;color:var(--coral-dark)}
.sticky-offer .buy{width:auto;flex:0 0 auto;min-height:48px;font-size:.95rem;padding-inline:20px}
@media(min-width:900px){.sticky-offer{display:none!important}}

/* ---- badge pop (JS only, motion allowed). Content is never hidden — only the -50% badge animates. ---- */
@media(prefers-reduced-motion:no-preference){
html.js .pb-off.pop-in{animation:badge-pop .5s var(--ease)}
@keyframes badge-pop{0%{transform:scale(.7)}60%{transform:scale(1.12)}100%{transform:scale(1)}}
}

/* ---- responsive ---- */
@media(max-width:900px){
.faq-layout{grid-template-columns:1fr;gap:22px}
}
@media(max-width:760px){
.shell{padding-inline:20px}.section-space{padding-block:52px}
h1{font-size:clamp(2.2rem,9vw,2.9rem)}
.header-inner{min-height:54px}.brand{font-size:1.05rem}.brand small{font-size:.68rem}.brand-icon{width:26px;height:26px}
.header-buy{font-size:.82rem;padding:8px 12px}
.hero{padding-block:14px 10px}.eyebrow{font-size:.72rem;margin-bottom:8px}.hero-lead{font-size:.98rem;margin-top:9px}
.hero-covers{gap:11px;margin:15px auto 16px}.cover-object{width:clamp(132px,38vw,160px)}
.hero-covers .cover-object:first-child{transform:rotate(-1.4deg)}.hero-covers .cover-object:last-child{transform:rotate(1.4deg)}
.price-block{padding:18px 18px 15px}.pb-price{font-size:clamp(3rem,14vw,3.7rem)}.pb-save{margin-top:9px}.price-block .buy{margin-top:13px}.pb-note{margin-top:10px}.pb-timer{margin-top:8px}
.recognition{padding-block:44px}.recognition-grid{grid-template-columns:1fr;gap:12px;margin-top:22px}.recognition-grid p{font-size:.95rem;padding:15px 17px}
.section-title{margin-bottom:30px}
.single-books{gap:20px}
.book-card{grid-template-columns:120px 1fr;gap:18px;padding:20px 18px;border-radius:16px}
.book-art{align-self:start}
.book-card h3{font-size:1.2rem;letter-spacing:-.02em}
.book-promise{font-size:.92rem;margin-top:8px}
.book-benefits{grid-column:1/-1;margin-top:16px}
.chapter-list,.peek,.book-buy,.sample-link,.edition-note{grid-column:1/-1}
.buy-single{min-width:0;width:100%}
.book-buy{gap:14px}.book-price strong{font-size:1.6rem}
.inline-sample>summary{padding:18px 18px;min-height:78px;font-size:1rem}
.inline-sample-content{grid-template-columns:1fr;gap:20px;padding:4px 18px 22px}
.sample-form{padding-top:18px;border-top:1px solid var(--line)}
.author-block{grid-template-columns:1fr;gap:22px}.author-block img{max-width:none}
.faq-items summary{font-size:.95rem;min-height:60px}
.final-offer{padding-block:50px}
.footer-inner{grid-template-columns:1fr;gap:14px}.footer-inner nav{gap:0 18px}
.site-footer{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
}
@media(max-width:360px){
.shell{padding-inline:16px}.brand small{display:none}
.hero-covers{gap:9px}.cover-object{width:clamp(132px,43vw,160px)}
.book-card{grid-template-columns:96px 1fr;gap:14px}
.promo-inner{font-size:.76rem;gap:5px 10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition:none!important}}
