:root{--purple:#43235c;--blue:#285a9a;--yellow:#f7ca62;--paper:#eeebf7;--ink:#292332;--mint:#d9eee3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#f5eef0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}img{display:block;max-width:100%;height:auto}.skip{position:absolute;left:20px;top:-100px;background:white;padding:10px;z-index:5}.skip:focus{top:10px}header{max-width:1320px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid #e2dce4}.brand{font-weight:900;font-size:27px;letter-spacing:-1px;text-decoration:none;line-height:1;color:var(--purple);white-space:nowrap}.brand span{color:var(--blue)}.brand small{display:block;font-size:11px;letter-spacing:4px;margin-top:8px}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav a{text-decoration:none}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.nav-shop{border:1px solid var(--purple);border-radius:50px;padding:10px 20px}.hero{max-width:1320px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:6%;padding:75px 5% 62px;align-items:center}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:1.9px;font-weight:700;color:var(--purple);line-height:1.6}.hero h1{font:normal clamp(42px,5.5vw,78px)/1.06 Georgia,serif;letter-spacing:-2.5px;margin:22px 0;color:var(--purple)}em{font-weight:normal;color:var(--blue)}.intro{max-width:440px;font-size:19px;line-height:1.6;margin-bottom:29px}.button{display:inline-block;text-decoration:none;background:var(--purple);color:white;border-radius:50px;padding:14px 27px;font-size:15px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:var(--blue);transform:translateY(-2px)}.byline{font-size:13px;margin-top:30px;line-height:1.7;color:#63566b}.hero-art{position:relative;padding:20px 18px 0}.hero-art>.book-cover-link img{width:100%;transform:rotate(3deg);box-shadow:8px 16px 0 #decaf0,0 20px 45px #43235c20;border-radius:3px}.star{position:absolute;z-index:1;line-height:1;color:var(--yellow)}.star-one{font-size:100px;top:-22px;right:-15px;transform:rotate(15deg)}.star-two{font-size:66px;bottom:43px;left:-15px;color:var(--blue)}.art-caption{font-family:Georgia,serif;font-style:italic;text-align:center;font-size:15px;margin:35px 0 0;color:var(--purple)}.ribbon{background:var(--yellow);display:flex;justify-content:center;gap:40px;padding:19px 20px;font:22px Georgia,serif;color:var(--purple)}.ribbon span:nth-child(even){font-size:18px}.section{max-width:1200px;margin:auto;padding:85px 5%}.section-heading{margin-bottom:50px}.section-heading h2{font:44px/1.2 Georgia,serif;color:var(--purple);margin:13px 0}.section-heading>p:last-child{max-width:540px}.book{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;align-items:center}.book-visual{background:#e8e8f6;padding:45px;border-radius:6px}.book-visual img{box-shadow:0 12px 22px #2a154337}.book h3{font:40px/1.17 Georgia,serif;color:var(--purple);margin:14px 0}.subtitle{font-family:Georgia,serif;font-size:21px;color:#64516e}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0}.tags span{font-size:12px;background:#f0e8f5;padding:5px 11px;border-radius:30px;color:var(--purple)}.credit{font-size:12px;color:#665c6b;line-height:1.7;margin-top:22px}.next-book{margin-top:75px;padding-top:70px;border-top:1px solid #ded5e4;align-items:stretch}.new-book-title{background:var(--mint);border-radius:6px;padding:34px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative}.release{background:var(--purple);color:white;padding:8px 14px;border-radius:30px;font-size:13px;margin:0 0 20px}.small-star{font-size:54px;line-height:1;color:var(--blue);margin:5px 0 20px}.new-book-title h3{font-size:43px;line-height:1.18;letter-spacing:-.8px}.new-book-title h3 em{color:var(--purple)}.new-book-title>p:not(.release){font-size:18px;font-family:Georgia,serif}.series-number{font-size:12px;color:#486255;margin-top:30px}.book h4{font:28px/1.3 Georgia,serif;color:var(--purple);margin:14px 0}.availability{font-size:16px;font-weight:bold;color:var(--purple)}details{border-top:1px solid #ded5e4;border-bottom:1px solid #ded5e4;padding:12px 0}summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--purple)}.flyer{margin:18px auto 5px;width:100%;max-width:390px}.quote-section{padding:65px 20px;background:var(--blue);color:white;text-align:center}.quote-section>span{color:var(--yellow);font-size:35px}.quote-section blockquote{font:normal clamp(32px,4vw,51px)/1.25 Georgia,serif;margin:20px 0}.quote-section p{font-size:13px;color:#deebff}.about{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;align-items:center;padding-top:95px;padding-bottom:95px}.author-mark h2{font:normal 72px/1.1 Georgia,serif;color:var(--purple);margin:22px 0}.author-mark p:last-child{font:20px/1.55 Georgia,serif}.about-copy h3{font:34px/1.2 Georgia,serif;color:var(--purple);margin:20px 0}.text-link{font-weight:700;font-size:15px;color:var(--blue);text-underline-offset:5px}.closing{padding:65px 5% 75px;background:var(--purple);color:white;text-align:center}.closing .eyebrow{color:var(--yellow)}.closing h2{font:40px/1.2 Georgia,serif;margin:20px 0 30px}.button.light{background:var(--yellow);color:var(--purple)}.button.light:hover{background:white}footer{max-width:1320px;margin:auto;padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:12px;color:#665c6b}footer .brand{font-size:22px}footer .brand small{font-size:9px;letter-spacing:3px}@media(max-width:850px){header{padding:22px 5%}nav{gap:18px}.nav-shop{display:none}.hero{gap:5%;padding-top:48px}.hero h1{font-size:52px}.hero-art{padding:10px}.star-one{font-size:72px}.intro{font-size:17px}.book{gap:6%}.book-visual{padding:26px}.book h3{font-size:34px}.new-book-title{padding:25px}.new-book-title h3{font-size:34px}.about{gap:7%}}@media(max-width:600px){body{font-size:16px}header{gap:12px}.brand{font-size:23px}nav{gap:14px;font-size:13px}.hero{grid-template-columns:1fr;padding:32px 7% 40px;gap:35px}.hero h1{font-size:51px;letter-spacing:-1.6px;max-width:450px}.hero .eyebrow{font-size:11px}.intro{max-width:400px}.byline{margin-top:22px}.hero-art{max-width:380px;margin:auto;padding:0 13px}.star-one{right:-4px;top:-25px}.star-two{left:-3px;bottom:38px;font-size:50px}.ribbon{gap:12px;font-size:16px;padding:18px 8px}.ribbon span:nth-child(even){font-size:12px}.section{padding:55px 7%}.section-heading{margin-bottom:32px}.section-heading h2{font-size:35px}.book{grid-template-columns:1fr;gap:24px}.book-visual{max-width:370px;width:100%;margin:auto;padding:30px}.book-copy h3{font-size:35px}.next-book{padding-top:40px;margin-top:45px}.new-book-title{padding:30px;min-height:390px}.new-book-title h3{font-size:40px}.quote-section{padding:43px 7%}.quote-section p{font-size:12px}.about{grid-template-columns:1fr;gap:25px}.author-mark h2{font-size:61px}.author-mark h2 br{display:none}.author-mark h2 em:before{content:' '}.author-mark p:last-child{font-size:18px}.about-copy h3{font-size:32px}.closing h2{font-size:33px}.closing{padding:45px 7% 55px}footer{flex-direction:column;align-items:flex-start;gap:10px;padding:28px 7%}footer p{margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.enough-cover{background:var(--mint);align-self:center}.enough-cover .release{display:table;margin:0 0 24px}.enough-cover img{width:100%;height:auto}

.closing-links{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:16px}.button.facebook{background:transparent;color:white;border:1px solid #c9b7df}.button.facebook:hover{background:#ffffff15}.footer-contact{font-size:14px;font-weight:700;color:var(--blue);text-underline-offset:4px}

.brand{display:block;width:170px;flex-shrink:0;mix-blend-mode:multiply}.brand svg{display:block;width:100%;height:auto}footer .brand{width:150px}.book-cover-link{display:block;border-radius:3px}.book-cover-link:hover img{filter:brightness(1.03)}@media(max-width:600px){header .brand{width:125px}nav{gap:12px;font-size:14px}}

/* Graphic accents, balanced banner, and author portrait. */
.hero-art{padding:30px 28px 0}
.star{display:block;height:auto;pointer-events:none}
.star-one{width:65px;top:-8px;right:0;transform:rotate(8deg)}
.star-two{width:43px;bottom:60px;left:0;transform:rotate(-8deg)}
.ribbon{align-items:center;line-height:1.4;gap:clamp(18px,3vw,40px)}
.ribbon span{white-space:nowrap}
.author-photo{width:100%;max-width:360px;border-radius:18px;box-shadow:0 12px 30px #43235c15;margin:26px 0 22px}
@media(max-width:850px){.star-one{width:52px}.star-two{width:36px}}
@media(max-width:600px){
.hero-art{padding:20px 22px 0}
.star-one{width:48px;right:0;top:-5px}
.star-two{width:34px;left:0;bottom:52px}
.ribbon{display:grid;grid-template-columns:1fr;gap:7px;padding:20px 7%;text-align:center;font-size:19px;line-height:1.4}
.ribbon span:nth-child(even){display:none}
.author-photo{max-width:380px;margin:24px 0 20px}
}

/* A warm, uninterrupted book photograph. */
.hero-art{padding:0;min-width:0}
.book-scene-link{display:block;border-radius:22px;overflow:hidden;box-shadow:0 16px 40px #43235c18}
.book-scene-link img{width:100%;height:auto}
.art-caption{margin-top:22px}
@media(max-width:600px){.hero-art{padding:0;width:100%;max-width:420px}.book-scene-link{border-radius:18px}}

/* Each section has its own soft, scrolling star field. */
html{min-height:100%;background:#e9eefa}
body{min-height:100vh;min-height:100svh;background:#e9eefa}
body::before{content:none}
.galaxy-panel{background-color:#e3e9f9;background-image:linear-gradient(#f2f5ff8c,#f2f5ff8c),url("soft-sparkle-background.jpg");background-size:cover;background-repeat:no-repeat;background-attachment:scroll}
.opening-panel{background-position:center top}
.books-panel{background-image:linear-gradient(#f5f6ffb8,#f5f6ffb8),url("soft-sparkle-background.jpg");background-position:65% center}
.author-panel{background-position:25% bottom}
header{border-bottom:0;background:transparent}
footer{background:#e9eefa}
.brand{mix-blend-mode:normal;background:transparent}
.hero::before,.hero::after,.about::before,.about::after{content:none}
@media(max-width:600px){.galaxy-panel{background-size:auto 100%;}.opening-panel{background-position:35% top}.books-panel{background-position:70% center}.author-panel{background-position:20% bottom}}

.closing-description{max-width:650px;margin:0 auto 30px;font:22px/1.5 Georgia,serif}.closing h2{margin-bottom:16px}@media(max-width:600px){.closing-description{font-size:20px}}
