:root{--navy:#0b203b;--navy2:#112e50;--gold:#d7b67a;--cream:#fbf8f2;--ink:#223148;--muted:#5c6c7c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.7 Georgia,serif}a{color:inherit}header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px max(24px,calc((100vw - 1140px)/2));background:#091b31;color:#fff;font:13px/1.4 Arial,sans-serif;letter-spacing:.09em}header .brand{font-weight:800;font-size:19px;letter-spacing:.13em;text-decoration:none}nav{display:flex;gap:22px}nav a{text-decoration:none}.hero{background:radial-gradient(circle at 23% 30%,#254c71 0,#0b203b 48%,#08172b 100%);color:#fff;padding:75px 24px 85px}.hero-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:minmax(240px,390px) 1fr;align-items:center;gap:75px}.cover{width:100%;max-width:390px;box-shadow:0 24px 55px #0009;transform:rotate(-1.5deg)}h1,h2,h3{font-family:Georgia,serif;line-height:1.13;font-weight:500;letter-spacing:-.025em}h1{font-size:clamp(42px,5.3vw,76px);margin:20px 0 25px}h2{font-size:clamp(32px,4vw,53px);margin:12px 0 25px}h3{font-size:25px;margin:0 0 12px}.hero p{font-size:clamp(20px,2vw,26px);line-height:1.5;color:#e6eaf0}.eyebrow{font:700 12px/1.5 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;color:#b48c4d}.hero .eyebrow,.dark .eyebrow{color:var(--gold)}.button{display:inline-block;background:var(--gold);color:#10233d;text-decoration:none;border-radius:4px;padding:14px 23px;font:700 14px/1.4 Arial,sans-serif;margin:10px 12px 0 0;transition:transform .15s}.button:hover{transform:translateY(-2px)}.button.secondary{border:1px solid #afc3d7;color:#fff;background:transparent}.section{max-width:1140px;margin:auto;padding:90px 28px}.narrow{max-width:860px}.section p{margin:0 0 22px}.lead{font-size:22px;line-height:1.65}.dark{background:var(--navy);color:#f8f8f4}.dark p{color:#d6e0eb}.blue{background:#e8eef1}.gold-band{background:#e9dfce}.story-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:center}.story-art{width:100%;border-radius:10px;box-shadow:0 20px 45px #10233d25}.quote-line{font-style:italic;font-size:22px;color:#344c62}.praise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.praise-card{background:white;border:1px solid #e5e0d6;border-radius:8px;padding:26px;display:flex;flex-direction:column}.praise-card blockquote{margin:0 0 24px;font-size:16px;line-height:1.7;flex:1}.person{display:flex;align-items:center;gap:12px;border-top:1px solid #eee;padding-top:17px;font:14px/1.4 Arial,sans-serif}.avatar{width:52px;height:52px;border-radius:50%;background:#d8e2e8;display:grid;place-items:center;color:#50647b;font-weight:700;flex-shrink:0}.person small{display:block;color:#667789;font-size:12px;margin-top:4px}.notice{border-left:3px solid var(--gold);padding:16px 22px;background:#ffffff13;margin-top:28px}.quiz-panel{background:white;border-radius:12px;padding:32px;box-shadow:0 15px 40px #112e5012}.quiz-panel .button{opacity:.7;cursor:default}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.author-photo{min-height:360px;background:linear-gradient(135deg,#b9c6d0,#e3e5df);display:flex;align-items:center;justify-content:center;text-align:center;color:#475b6e;padding:35px;border-radius:8px;font:15px/1.6 Arial,sans-serif}.fine{font:13px/1.65 Arial,sans-serif;color:var(--muted)}.dark .fine{color:#a9bacc}.closing{text-align:center}.closing h2{max-width:900px;margin:15px auto 25px}.footer{padding:35px 25px;text-align:center;background:#061322;color:#b8c5d2;font:13px Arial,sans-serif}.footer a{margin:0 12px}.placeholder{border:1px dashed #c6a46c;border-radius:7px;padding:20px;margin:22px 0}.link-inline{color:#a4773e;font-weight:bold}.dark .link-inline{color:#f0ca88}@media(max-width:780px){header{padding:15px 20px;flex-wrap:wrap}nav{gap:14px;font-size:11px}.hero{padding:45px 22px 65px}.hero-inner,.story-grid,.two-col{grid-template-columns:1fr;gap:34px}.hero-inner .cover{max-width:260px;margin:auto;display:block}.section{padding:65px 22px}.praise-grid{grid-template-columns:1fr}.author-photo{min-height:240px}h1{font-size:45px}}

/* Draft 3: story-first, shorter page, persistent preorder convenience */
body{padding-bottom:75px}.hero{padding:58px 24px 65px}.hero-inner{gap:55px}.hero h1{font-size:clamp(40px,4.7vw,67px)}.hero .hero-sub{font-size:clamp(19px,1.8vw,24px)}.section{padding-top:65px;padding-bottom:65px}.story-grid{grid-template-columns:1.2fr .8fr;gap:48px}.story p{margin-bottom:16px}.story-kicker{font-style:italic;color:#405775}.praise-wrap{background:#eef0ed}.praise-card{box-shadow:0 7px 24px #10233d0c}.heaven-grid{gap:50px}.excerpt-box{border:1px solid #6d7f91;border-radius:10px;padding:30px;background:#ffffff0b}.excerpt-box p{color:#e1e8ee}.accent-line{color:#e7c68d!important;font-style:italic;font-size:22px}.quiz-section{background:#e9dfce}.quiz-panel{color:#223148}.author-grid{display:grid;grid-template-columns:260px 1fr;gap:55px;align-items:center}.author-photo{min-height:265px}.closing{text-align:center}.publication{font:700 13px Arial,sans-serif;letter-spacing:.05em;color:#e8c78e!important}.sticky-preorder{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#07182aee;color:#fff;box-shadow:0 -5px 25px #0004;border-top:1px solid #a68b61;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.sticky-inner{max-width:1140px;margin:auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 25px}.sticky-copy{display:flex;flex-direction:column;line-height:1.35}.sticky-copy strong{font:700 16px Georgia,serif}.sticky-copy span{font:12px Arial,sans-serif;color:#ccd5e1;margin-top:4px}.sticky-button{display:inline-block;background:#d7b67a;color:#11243b;text-decoration:none;border-radius:5px;padding:11px 20px;font:700 14px Arial,sans-serif;white-space:nowrap}.sticky-button:focus-visible{outline:3px solid white;outline-offset:3px}@media(max-width:780px){.hero{padding:35px 22px 55px}.section{padding-top:50px;padding-bottom:50px}.story-grid,.author-grid{grid-template-columns:1fr;gap:30px}.story-art{max-width:420px;margin:auto}.sticky-inner{min-height:60px;padding:8px 14px}.sticky-copy strong{font-size:14px}.sticky-copy span{font-size:11px}.sticky-button{font-size:13px;padding:10px 14px}body{padding-bottom:62px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Draft 4: floating preorder card, not a full-width footer bar */
body{padding-bottom:0}
.quote-highlight{font-size:1.14em;line-height:1.45;color:#112e50;font-weight:700}
.float-preorder{position:fixed;right:18px;top:48%;transform:translateY(-50%);z-index:1000;width:212px;background:#102b4b;color:#fff;border:2px solid #d7b67a;border-radius:13px;box-shadow:0 16px 38px #06132265;padding:24px 14px 17px;text-align:center;font-family:Arial,sans-serif}
.float-label{display:block;font-size:10px;letter-spacing:.12em;line-height:1.5;color:#e4c890;font-weight:700;margin-bottom:9px}
.float-body strong{display:block;font:700 21px/1.22 Georgia,serif;margin-bottom:15px}
.float-button{display:block;text-decoration:none;background:#d7b67a;color:#10233d;border-radius:6px;padding:12px 9px;font:800 15px/1.2 Arial,sans-serif;box-shadow:0 3px 0 #a58249}
.float-button:hover{background:#f0d39a}.float-button:focus-visible,.float-toggle:focus-visible,.float-reopen:focus-visible{outline:3px solid #fff;outline-offset:3px}
.float-toggle{position:absolute;top:3px;right:5px;color:#e6d6bb;background:transparent;border:0;cursor:pointer;font:24px Arial,sans-serif;padding:1px 6px}
.float-reopen{border:0;background:#d7b67a;color:#10233d;font:800 14px Arial,sans-serif;border-radius:8px;padding:12px 14px;cursor:pointer}
.float-preorder.minimized{width:auto;padding:5px;border-radius:10px}.float-preorder.minimized .float-body,.float-preorder.minimized .float-toggle{display:none}
@media(max-width:900px){.float-preorder{width:170px;right:9px;top:auto;bottom:18px;transform:none;padding:21px 9px 11px}.float-body strong{font-size:17px}.float-label{font-size:9px}.float-button{font-size:13px;padding:10px 7px}}
@media(max-width:520px){.float-preorder{width:142px;right:9px;bottom:12px}.float-body strong{font-size:16px}.float-label{font-size:8px;letter-spacing:.06em}.float-button{font-size:12px}}

/* Draft 5: reposition floating preorder card lower and inward on desktop. */
@media(min-width:901px){
  .float-preorder{top:calc(48% + 110px);right:124px;transform:none;}
}
@media(min-width:521px) and (max-width:900px){
  .float-preorder{right:clamp(12px,7vw,65px);bottom:18px;}
}

/* Draft 6: lower floating card to clear the hero subtitle; widen for a single-line date. */
@media(min-width:901px){
  .float-preorder{top:calc(48% + 185px);right:112px;width:250px;}
  .float-label{white-space:nowrap;letter-spacing:.09em;}
}
@media(min-width:521px) and (max-width:900px){
  .float-preorder{width:215px;}
  .float-label{white-space:nowrap;letter-spacing:.07em;}
}

/* Draft 7: more legible and prominent floating call to action */
.float-button{font-size:19px;font-weight:900;line-height:1.25;padding:13px 8px}
@media(max-width:900px){.float-button{font-size:17px}}
@media(max-width:520px){.float-button{font-size:15px}}
/* Draft 8: make floating preorder CTA clearly readable, retaining approved card placement. */
.float-button{font-size:24px;font-weight:900;letter-spacing:-.035em;line-height:1.15;padding:16px 5px;text-shadow:0 0 .01px currentColor}
@media(max-width:900px){.float-button{font-size:21px;padding:14px 5px}}
@media(max-width:520px){.float-button{font-size:18px;padding:13px 4px}}

/* Draft 9: matching large, bold preorder CTAs (excluding secondary navigation button). */
a.button:not(.secondary){font-size:24px;font-weight:900;line-height:1.15;letter-spacing:-.035em;padding:17px 23px;text-align:center;text-shadow:0 0 .01px currentColor}
@media(max-width:900px){a.button:not(.secondary){font-size:21px;padding:16px 20px}}
@media(max-width:520px){a.button:not(.secondary){font-size:19px;padding:15px 18px}}

/* Final launch photography */
.avatar{display:block;width:64px;height:64px;object-fit:cover;object-position:center 30%;border-radius:50%;background:#d8e2e8;border:2px solid #e9e2d7;flex-shrink:0}.author-photo{padding:0;overflow:hidden;background:#dce3e7;min-height:320px;align-self:stretch}.author-photo img{width:100%;height:100%;min-height:320px;object-fit:cover;object-position:center 34%;display:block}.author-grid{grid-template-columns:minmax(240px,310px) 1fr}.button{font-weight:800;font-size:17px;padding:15px 25px}.float-button{font-weight:800!important;font-size:20px!important}@media(max-width:780px){.author-grid{grid-template-columns:1fr}.author-photo{max-width:350px;margin:0 auto;width:100%}.author-photo img{height:350px;min-height:0}}

/* Draft 11: larger, consistent endorsement headshots */
.praise-card .avatar{width:96px;height:96px;object-fit:cover;object-position:center center;border-radius:50%;border:3px solid #e9e2d7;}
.praise-card .person{gap:16px;align-items:center;}
.praise-card .person small{font-size:12px;line-height:1.5;}
@media(max-width:780px){.praise-card .avatar{width:90px;height:90px;}}

/* Final launch excerpt */
.excerpt-intro{font-style:italic;color:#d7b67a!important;font-size:15px}
.novel-excerpt{border-left:3px solid #d7b67a;padding-left:18px;margin:20px 0 12px}
.novel-excerpt p{font-size:16px;line-height:1.72;margin:0 0 13px}
.excerpt-attribution{font-size:13px!important;color:#d7b67a!important}
