@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--ink:#123d40;--teal:#0c4a4d;--sage:#aebbad;--sage-pale:#edf1ea;--cream:#fbf8f1;--paper:#fffdf8;--gold:#bd8e36;--wine:#70243a;--line:#ded8c8;--muted:#64706c;--shadow:0 18px 45px #17393617}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:83px;padding:0 max(4vw,24px);display:flex;align-items:center;gap:28px;background:#fffcf7eF;border-bottom:1px solid #e6dfd2;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand b{font:600 20px 'Playfair Display',serif;letter-spacing:.01em}.brand small{display:block;font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.brand-mark{height:38px;width:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:26px}nav{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:14px;font-weight:600}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--gold);transition:.2s}.site-header a:hover:after{width:100%}.header-actions{display:flex;gap:12px;align-items:center}.header-actions button{border:0;background:transparent;color:var(--ink);font-size:24px;cursor:pointer}.cart{border:1px solid var(--line);border-radius:22px;padding:6px 12px;font-size:13px;font-weight:700}.cart span{background:var(--teal);color:white;border-radius:50%;font-size:11px;padding:2px 6px;margin-left:4px}.menu-toggle{display:none}.search-panel{position:fixed;z-index:19;top:84px;inset-inline:0;padding:18px max(4vw,24px);background:#fffdf8;border-bottom:1px solid var(--line)}.search-panel form{max-width:680px;display:flex;gap:10px;margin:auto}.search-panel input{flex:1}.hero{padding:clamp(62px,10vw,134px) max(5vw,25px) 68px;display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;max-width:1380px;margin:auto;align-items:center;background:radial-gradient(circle at 70% 10%,#e6eddf 0,transparent 36%)}.eyebrow{letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--gold);margin:0 0 14px}.hero h1,h1,h2{font-family:'Playfair Display',Georgia,serif;line-height:1.13;letter-spacing:-.025em}.hero h1{font-size:clamp(40px,5.2vw,76px);margin:0;max-width:800px}.lead{font-size:19px;max-width:640px;color:#365457;margin:26px 0}.cta-row{display:flex;gap:13px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--teal);background:var(--teal);color:white;border-radius:4px;padding:12px 20px;font-size:14px;font-weight:700;cursor:pointer;transition:.2s}.button:hover{background:#083c3e;transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed}.button-ghost{color:var(--teal);background:transparent}.button-small{padding:9px 12px;font-size:12px}.hero-book{position:relative;margin:auto;max-width:360px;transform:perspective(900px) rotateY(-10deg) rotateX(1deg);filter:drop-shadow(20px 24px 20px #143b3b42)}.hero-book:before{content:'';position:absolute;inset:2% -10% -6%;background:#c4cfbf;border-radius:50%;z-index:-1}.hero-book img{border-radius:5px}.gold-dot{position:absolute;z-index:2;left:-25px;top:25%;height:14px;width:14px;border-radius:50%;background:var(--gold)}.statistics{background:var(--teal);color:white;padding:23px 5vw;display:flex;justify-content:center;gap:clamp(25px,7vw,110px);flex-wrap:wrap}.statistics div{text-align:center}.statistics b{font:600 25px 'Playfair Display',serif;display:block;color:#ebd28e}.statistics span{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.intro{max-width:840px;text-align:center;margin:100px auto;padding:0 24px}.intro h2,.section h2,.why h2,.author h2,.contact h2{font-size:clamp(31px,4vw,51px);margin:0 0 18px}.intro p:last-child{color:var(--muted);font-size:17px}.section,.why,.author,.contact,.archive,.book-detail{padding:85px max(5vw,24px);max-width:1380px;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px}.section-heading>a,.text-link{color:var(--wine);font-size:14px;font-weight:700}.books-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.book-card{background:var(--paper);border:1px solid #e7e0d4;border-radius:7px;overflow:hidden;box-shadow:0 7px 20px #153d3c0d;transition:.25s}.book-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.cover{display:grid;place-items:center;min-height:320px;padding:26px;background:#e5ebe1}.cover img{max-height:352px;box-shadow:11px 14px 17px #2944433d}.placeholder-cover{width:185px;min-height:260px;padding:31px 16px;display:flex;flex-direction:column;justify-content:end;gap:10px;text-align:center;background:linear-gradient(140deg,#f6eee1,#c9d2c5);border-left:8px solid var(--teal);box-shadow:11px 14px 17px #2944433d;color:var(--teal)}.placeholder-cover b{font:600 25px/1.1 'Playfair Display',serif}.placeholder-cover small{color:var(--gold);text-transform:uppercase;letter-spacing:.13em}.book-card-body{padding:20px}.book-card-body h3{font:600 24px/1.25 'Playfair Display',serif;margin:8px 0}.book-card-body p{font-size:13px;color:var(--muted);min-height:44px}.book-card-body small{font-size:11px;color:var(--muted)}.book-meta{display:flex;justify-content:space-between;gap:7px;color:var(--gold);font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.free-badge{background:#e4eee1;color:#315b51;border-radius:9px;padding:1px 7px}.card-actions{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:16px}.card-actions strong{font-size:18px;color:var(--wine)}.sage-section{max-width:none;background:var(--sage-pale);padding-inline:max(5vw,24px)}.why{text-align:center}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:left;margin-top:38px}.benefits article{padding:24px;border:1px solid var(--line);background:var(--paper);border-radius:7px}.benefits i{font-style:normal;font-size:25px;color:var(--gold)}.benefits h3{margin:12px 0 4px;font-size:16px}.benefits p{font-size:13px;color:var(--muted);margin:0}.author{display:grid;grid-template-columns:.5fr 1fr;gap:clamp(35px,9vw,135px);align-items:center;background:#f0f2ed;max-width:none}.author>div:last-child{max-width:700px}.author-symbol{width:min(300px,70vw);aspect-ratio:1;border-radius:50%;margin:auto;background:var(--teal);border:12px solid #d5dccf;color:#e4c570;display:grid;place-items:center;font:110px 'Playfair Display',serif;position:relative}.author-symbol span{font:46px sans-serif;position:absolute;color:#d7dfd5}.author-title{color:var(--wine);font-weight:700}.faq{max-width:840px}.faq details{border-top:1px solid var(--line);padding:17px 3px}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:700;list-style:none}.faq summary:after{content:'+';float:right;color:var(--gold);font-size:21px}.faq details[open] summary:after{content:'−'}.faq p{color:var(--muted);max-width:680px}.contact{max-width:none;background:var(--teal);color:white;display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.contact .eyebrow{color:#eac979}.contact form{background:#fffdf8;color:var(--ink);padding:26px;border-radius:6px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact label{font-size:12px;font-weight:700}.contact label:nth-of-type(3),.contact label:nth-of-type(4),.contact .consent{grid-column:span 2}.contact textarea{min-height:110px;resize:vertical}.contact .button{justify-self:start}.hp{display:none}input,textarea,select{width:100%;border:1px solid #d8d1c6;background:white;border-radius:3px;padding:10px;margin-top:4px;color:var(--ink)}input:focus,textarea:focus,select:focus,button:focus,a:focus{outline:3px solid #d9b65d;outline-offset:3px}footer{padding:55px max(5vw,24px) 25px;background:#0b383a;color:#dce6e1;display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:40px;font-size:13px}footer h3{color:#e9c97f;font-size:12px;text-transform:uppercase;letter-spacing:.1em}footer a{display:block;margin:6px 0}.newsletter{display:flex}.newsletter input{margin:0;border-radius:3px 0 0 3px}.newsletter button{border:0;background:var(--gold);color:#163839;padding:0 12px;border-radius:0 3px 3px 0;font-weight:700}footer>small{grid-column:1/-1;border-top:1px solid #ffffff26;padding-top:20px}.archive{min-height:65vh}.archive h1{font-size:clamp(37px,5vw,58px);margin:0 0 25px}.filters{display:flex;gap:10px;margin-bottom:35px}.filters input{flex:1}.filters select{width:190px}.book-detail{padding-top:35px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:28px}.detail-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(35px,7vw,95px);align-items:center}.detail-cover{min-height:540px;display:grid;place-items:center;background:#e5ebe1;padding:38px}.detail-cover img{max-height:530px;box-shadow:15px 18px 25px #2944433d}.detail-grid h1{font-size:clamp(42px,5vw,68px);margin:0}.subtitle{font-size:21px;color:var(--wine)}.byline{color:var(--muted)}.small-lead{font-size:16px}.detail-grid dl{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:25px 0}.detail-grid dl div{border-top:1px solid var(--line);padding-top:7px}.detail-grid dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.detail-grid dd{margin:0;font-weight:700;font-size:13px}.purchase-box{padding:20px;background:#eef2ea;border-radius:5px;display:flex;gap:15px;align-items:center;flex-wrap:wrap}.purchase-box strong{font-size:24px;color:var(--wine)}.prose{max-width:830px;padding-top:0}.prose h2{font-size:30px;margin-top:40px}.prose p,.prose li{color:#3a5658}.reader{max-width:none;padding:0;background:#162e30;min-height:calc(100vh - 83px);color:white}.reader-toolbar{padding:14px 25px;display:flex;justify-content:space-between;align-items:center;background:#0e2527;font-size:13px}.reader-toolbar button{border:1px solid #ffffff33;color:white;background:transparent;border-radius:4px;padding:4px 9px;cursor:pointer}.reader-toolbar b{font-family:'Playfair Display',serif}.reader-toolbar a{color:#e6c77d}.reader #reader-stage{display:flex;gap:20px;align-items:center;justify-content:center;min-height:calc(100vh - 175px);padding:30px}.reader #reader-stage>button{border:0;background:#ffffff17;color:#eac979;font-size:55px;width:50px;height:80px;border-radius:5px;cursor:pointer}.reader #book-shell{max-width:min(900px,80vw);min-height:300px;display:grid;place-items:center}.reader canvas{max-width:100%;height:auto;box-shadow:0 12px 28px #0009}.reader-loading{color:#e5c574}.reader-footer{padding:14px 25px;display:flex;justify-content:center;gap:25px;align-items:center;background:#0e2527;font-size:12px}.reader-footer input{width:72px;margin:0;padding:5px}.reader progress{accent-color:var(--gold)}.cart-list{max-width:700px}.cart-list article{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--line)}.cart-list small{display:block;color:var(--muted)}.checkout{max-width:700px;padding:20px;margin-top:25px;background:#eef2ea;border-radius:5px}.install{min-height:100vh;display:grid;place-items:center;padding:24px}.install-card{width:min(530px,100%);padding:38px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:7px}.install-card h1{margin-top:0}.install-card form{display:grid;gap:12px}.install-card label{font-size:12px;font-weight:700}.error{color:#9e2430}.note{font-size:12px;color:var(--muted)}#toast{position:fixed;right:20px;bottom:20px;background:var(--teal);color:white;padding:13px 17px;border-radius:4px;box-shadow:var(--shadow);transform:translateY(100px);transition:.3s;z-index:50}#toast.show{transform:none}@media(max-width:820px){.site-header{height:68px;gap:12px}.brand small,.header-actions .search-toggle{display:none}.brand b{font-size:17px}nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fffdf8;padding:18px 24px;border-bottom:1px solid var(--line)}nav.open{display:grid;gap:16px}.menu-toggle{display:block;margin-left:auto;border:0;background:transparent;font-size:22px;color:var(--teal)}.header-actions{margin-left:0}.hero{grid-template-columns:1fr;text-align:center;padding-top:62px}.hero .lead{margin-inline:auto}.cta-row{justify-content:center}.hero-book{max-width:250px;grid-row:1}.statistics{gap:22px}.books-grid,.benefits{grid-template-columns:repeat(2,1fr)}.author,.contact{grid-template-columns:1fr;gap:36px}.contact{padding:60px 24px}.detail-grid{grid-template-columns:1fr}.detail-cover{min-height:380px}.detail-cover img{max-height:360px}footer{grid-template-columns:1fr 1fr}.reader-toolbar b{display:none}.reader #reader-stage{gap:6px;padding:15px}.reader #reader-stage>button{width:34px;font-size:38px}.reader #book-shell{max-width:calc(100vw - 95px)}.reader-footer{gap:10px;flex-wrap:wrap}}@media(max-width:540px){.hero h1{font-size:41px}.books-grid,.benefits{grid-template-columns:1fr}.section,.why,.author,.archive{padding-block:58px}.cover{min-height:280px}.statistics{justify-content:space-around}.statistics div{min-width:75px}.contact form{grid-template-columns:1fr}.contact label:nth-of-type(3),.contact label:nth-of-type(4),.contact .consent{grid-column:auto}.filters{flex-direction:column}.filters select{width:100%}footer{grid-template-columns:1fr}.detail-grid dl{grid-template-columns:repeat(2,1fr)}.reader-footer label{display:none}}
.admin{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:#f6f5ef}.admin aside{padding:28px 18px;background:#103d3f;color:white;display:flex;flex-direction:column;gap:7px}.admin aside .brand{margin-bottom:35px}.admin aside .brand b{font-size:17px}.admin aside>a:not(.brand){padding:9px 12px;border-radius:4px;font-size:14px}.admin aside>a:not(.brand):hover{background:#ffffff18}.admin>main{padding:40px min(5vw,70px);max-width:1400px;width:100%}.admin-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.admin-head h1{margin:0;font-size:38px}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.admin-stats article,.admin-panel,.admin-form{background:#fffdf8;border:1px solid var(--line);border-radius:6px;padding:20px}.admin-stats b{font:600 30px 'Playfair Display',serif;display:block;color:var(--wine)}.admin-stats span{font-size:12px;color:var(--muted)}.admin-panel{margin-top:22px;overflow:auto}.admin-panel h2{font-size:24px;margin:0 0 14px}.admin-panel table{width:100%;border-collapse:collapse;font-size:13px}.admin-panel th,.admin-panel td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}.admin-panel a{color:var(--wine);font-weight:700}.admin-warning,.admin-notice{padding:12px 15px;border-radius:4px}.admin-warning{background:#fff1df;color:#7c4519}.admin-notice{background:#e3efe5;color:#24533b}.admin-form{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;max-width:950px}.admin-form label{font-size:12px;font-weight:700}.admin-form .wide,.admin-form fieldset{grid-column:1/-1}.admin-form fieldset{border:1px solid var(--line);border-radius:4px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:15px}.admin-form legend{font-weight:700;font-size:13px;padding:0 5px}.admin-form textarea{min-height:100px}.admin-form .button{justify-self:start}@media(max-width:780px){.admin{grid-template-columns:1fr}.admin aside{padding:15px;flex-direction:row;flex-wrap:wrap;align-items:center}.admin aside .brand{margin:0 auto 0 0}.admin>main{padding:28px 18px}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-form{grid-template-columns:1fr}.admin-form fieldset{grid-template-columns:1fr}.admin-head h1{font-size:30px}}
.hero-slider{position:relative;height:520px;width:min(400px,38vw);margin:auto}.hero-slide{position:absolute;inset:0;opacity:0;transform:translateY(14px) scale(.97);pointer-events:none;transition:opacity .7s,transform .7s;display:grid;place-items:center}.hero-slide.is-active{opacity:1;transform:none;pointer-events:auto}.hero-slide img{max-height:470px;border-radius:6px;box-shadow:25px 28px 34px #123d4059}.hero-slide em{position:absolute;bottom:10px;right:-12px;background:var(--gold);color:#173e40;font-size:11px;font-style:normal;font-weight:700;padding:8px 12px;border-radius:2px}.hero-placeholder{width:220px;min-height:330px;background:#f6eee1;border-left:9px solid var(--teal);box-shadow:20px 25px 28px #123d4040;padding:35px 18px;display:flex;flex-direction:column;justify-content:end;text-align:center}.hero-placeholder b{font:600 30px/1.1 'Playfair Display',serif}.hero-placeholder small{color:var(--gold);letter-spacing:.1em;margin-top:12px}.slider-dots{position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);display:flex;gap:7px}.slider-dots i{height:6px;width:6px;border-radius:50%;background:#b9c7bf}.slider-dots i.active{width:20px;border-radius:4px;background:var(--gold)}.book-card{height:100%;display:flex;flex-direction:column}.book-card-body{display:flex;flex:1;flex-direction:column}.book-card-body .card-actions{margin-top:auto;padding-top:15px}.books-grid{align-items:stretch}.sage-section{background:#b8c4b5}.sage-section .book-card{border-color:#9dac99;box-shadow:0 15px 28px #28413720}.sage-section .cover{background:#d4ddd1}.sage-section .cover img{max-width:82%;height:325px;object-fit:contain}.why{background:#fffdf8;border-top:1px solid var(--line)}.why .benefits article{padding:29px 25px;border-top:3px solid var(--gold)}.author{background:linear-gradient(110deg,#e1e9dc,#f9f6ed)}.contact{background:linear-gradient(135deg,#0c4244,#123336)}footer{background:#082e30}@media(max-width:820px){.hero-slider{height:350px;width:250px}.hero-slide img{max-height:330px}}
.reader-cover{border:0;background:transparent;display:grid;gap:15px;color:#f0d58e;font-weight:700;cursor:pointer}.reader-cover img{max-height:min(67vh,530px);max-width:min(70vw,380px);border-radius:5px;box-shadow:20px 28px 35px #000b}.page-spread{display:flex;gap:0;max-width:100%;perspective:1600px}.page-spread canvas{max-width:50%;height:auto;background:#fff;box-shadow:0 12px 28px #0009}.page-spread canvas:first-child{border-radius:3px 0 0 3px;border-right:1px solid #bcb5a5}.page-spread canvas:last-child{border-radius:0 3px 3px 0}.curl{animation:curl .55s cubic-bezier(.2,.8,.2,1)}@keyframes curl{0%{transform:rotateY(-9deg) translateX(28px);filter:brightness(.72)}55%{transform:rotateY(5deg) translateX(-7px)}100%{transform:none;filter:none}}@media(max-width:600px){.page-spread canvas{max-width:100%}.page-spread canvas:nth-child(2){display:none}}
