:root{
  --cream:#fff9f2; --ivory:#fffcf7; --charcoal:#26282a; --muted:#706b68;
  --burgundy:#980f2f; --rose:#f6cbd4; --pink:#ffe6ea; --blue:#dceaf8; --lav:#ede7ff; --peach:#ffd8c5;
  --shadow: 0 24px 70px rgba(70,45,45,.12); --soft: 0 14px 40px rgba(122,15,47,.08);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--charcoal);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:#fffdf9;}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block}button,input{font:inherit}
.page-shell{width:100%;margin:0;background:linear-gradient(180deg,#fffdf9 0%,#fff8f3 34%,#fffdf9 100%);min-height:100vh;overflow:hidden;position:relative}.page-shell:before,.page-shell:after{content:"";position:absolute;inset:auto;pointer-events:none;z-index:0}.page-shell:before{width:620px;height:620px;left:-180px;top:480px;background:radial-gradient(circle,#ffe0e5 0,#ffe0e500 70%);filter:blur(6px)}.page-shell:after{width:680px;height:680px;right:-260px;top:950px;background:radial-gradient(circle,#dfeeff 0,#dfeeff00 70%);filter:blur(6px)}
.navbar{height:92px;padding:0 clamp(28px,6vw,110px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,253,249,.88);backdrop-filter:blur(16px);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(152,15,47,.08)}.brand{display:inline-flex;flex-direction:column;line-height:1;gap:4px}.brand span{font-family:"Cormorant Garamond",serif;text-transform:uppercase;letter-spacing:.05em;font-size:24px}.brand b{font-size:32px}.brand i{font-family:"Great Vibes",cursive;text-transform:none;color:var(--burgundy);font-size:32px;font-style:normal;letter-spacing:0}.brand small{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:16px;text-align:center;color:#343434}.nav-links{display:flex;align-items:center;gap:36px;font:600 15px/1 Inter}.nav-links a{position:relative}.nav-links a:not(.nav-cta):after{content:"";height:2px;width:0;background:var(--burgundy);position:absolute;left:0;bottom:-11px;transition:.25s}.nav-links a:hover:after,.nav-links .active:after{width:100%}.nav-cta{padding:14px 24px;border-radius:999px;background:var(--burgundy);color:white;box-shadow:var(--soft)}.mobile-menu-button{display:none;width:44px;height:44px;border:1px solid rgba(152,15,47,.16);border-radius:50%;background:#fff;cursor:pointer;padding:13px 10px}.mobile-menu-button span{display:block;height:2px;background:var(--burgundy)}.mobile-menu-button span+span{margin-top:7px}
.section-pad{padding:74px clamp(34px,6vw,110px)}.hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:70px;align-items:center;min-height:690px;position:relative;z-index:1;overflow:hidden}.hero:before{content:"";position:absolute;width:460px;height:460px;right:9%;top:50%;border:1px solid rgba(152,15,47,.08);border-radius:50%;transform:translateY(-50%);pointer-events:none}.hero:after{content:"";position:absolute;width:340px;height:340px;right:13%;top:50%;border:1px solid rgba(30,72,112,.08);border-radius:50%;transform:translateY(-50%);pointer-events:none}.hero-copy{position:relative;z-index:5;max-width:700px}.eyebrow{color:var(--burgundy);font-weight:700;letter-spacing:.22em;text-transform:uppercase;font-size:12px}.hero-title{position:relative;width:max-content;max-width:100%;margin:12px 0 0;font-family:"Cormorant Garamond",serif;line-height:.78;text-transform:none}.hero-title span{display:block;letter-spacing:0}.hero-title-top{font-size:clamp(36px,3.6vw,58px);font-weight:600;text-transform:uppercase}.hero-title-heart{font-size:clamp(98px,10vw,156px);font-weight:600;text-transform:uppercase}.hero-title-beats{position:absolute;right:-14px;bottom:-57px;color:var(--burgundy);font:400 clamp(82px,8vw,128px)/1 "Great Vibes",cursive;transform:rotate(-4deg)}.hero-edition{margin:74px 0 0;color:#947c7e;font:600 11px/1 Inter,sans-serif;letter-spacing:.22em;text-transform:uppercase}.hero h2{font:600 36px/1.1 "Cormorant Garamond",serif;margin:14px 0}.micro-divider{display:flex;align-items:center;gap:14px;width:360px;margin:0 0 20px;color:var(--burgundy)}.micro-divider span{height:1px;background:rgba(152,15,47,.28);flex:1}.tagline{font-family:"Cormorant Garamond",serif;font-size:24px;margin:0 0 34px}.hero-actions{display:flex;gap:22px;align-items:center}.hero-actions.center{justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:8px;padding:17px 28px;font-weight:700;transition:.25s;border:1px solid rgba(152,15,47,.32)}.btn-primary{background:var(--burgundy);color:#fff;box-shadow:0 14px 30px rgba(152,15,47,.20)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(152,15,47,.28)}.btn-outline{background:rgba(255,255,255,.62);color:var(--burgundy)}.btn-outline:hover{background:#fff0f3;transform:translateY(-2px)}.btn.small{padding:13px 22px;font-size:14px;margin:20px auto 0;display:flex;width:max-content}
.hero-art{min-height:550px;position:relative;z-index:2}.book-stage{height:550px;position:relative;display:grid;place-items:center}.book-aura{position:absolute;width:470px;height:470px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.98) 0,rgba(255,234,237,.62) 38%,rgba(225,239,255,.34) 58%,transparent 72%);filter:blur(2px);z-index:0}.book-mockup{position:relative;width:350px;height:525px;transform:perspective(1100px) rotateY(-9deg) rotateX(1deg);filter:drop-shadow(0 38px 35px rgba(45,28,20,.19));z-index:3;animation:float 6s ease-in-out infinite}.book-front{height:100%;overflow:hidden;border-radius:3px 9px 9px 3px;background:#fff;box-shadow:inset -6px 0 12px rgba(0,0,0,.12)}.book-front img{width:100%;height:100%;object-fit:cover}.book-spine{position:absolute;right:-28px;top:12px;width:34px;height:500px;background:linear-gradient(90deg,#d7cfc8,#fff,#c0b6ae);border-radius:0 8px 8px 0;transform:skewY(3deg);z-index:-1}.pedestal{position:absolute;bottom:3px;width:500px;height:90px;border-radius:50%;background:radial-gradient(ellipse at center,#dfcec5 0,#cfbeb5 38%,#ffffff00 72%);opacity:.72;z-index:1}.orbit{position:absolute;border:1px solid rgba(152,15,47,.13);border-radius:50%;z-index:1}.orbit-one{width:455px;height:455px;animation:orbit-pulse 5s ease-in-out infinite}.orbit-two{width:520px;height:360px;border-color:rgba(38,72,112,.09);transform:rotate(-15deg);animation:orbit-pulse 6s 1s ease-in-out infinite}.float-heart{position:absolute;display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(152,15,47,.1);border-radius:50%;background:rgba(255,255,255,.8);color:#d95f78;font-size:14px;z-index:4;box-shadow:0 8px 25px rgba(152,15,47,.12);animation:heart-drift 5s ease-in-out infinite}.float-heart.one{left:10%;top:54%}.float-heart.two{right:10%;top:17%;animation-delay:.8s}.float-heart.three{left:22%;top:14%;width:25px;height:25px;font-size:10px;animation-delay:1.6s}.float-heart.four{right:15%;top:60%;width:26px;height:26px;font-size:10px;animation-delay:2.2s}.float-heart.five{left:16%;bottom:12%;width:22px;height:22px;font-size:9px;animation-delay:2.8s}
.card-section{width:calc(100% - 140px);margin:0 auto 40px;padding:42px;border-radius:28px;background:rgba(255,255,255,.70);border:1px solid rgba(152,15,47,.08);box-shadow:var(--soft);position:relative;z-index:1}.section-title{text-align:center;margin-bottom:28px}.section-title h2{font:700 42px/1 "Cormorant Garamond",serif;text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px}.section-title p{margin:0;color:var(--muted)}.duel-grid{display:grid;grid-template-columns:1fr 90px 1fr;align-items:center;gap:24px}.duel-card{min-height:250px;border-radius:20px;padding:24px;display:grid;grid-template-columns:190px 1fr;align-items:center;gap:20px;border:1px solid rgba(152,15,47,.08)}.duel-card img{height:230px;width:190px;object-fit:cover;object-position:top;border-radius:18px;background:white}.duel-card h3,.character-card h3,.author-copy h3{font:700 34px/1 "Cormorant Garamond",serif;text-transform:uppercase;letter-spacing:.05em;margin:0;color:var(--burgundy)}.duel-card small,.character-card small{font-family:"Cormorant Garamond",serif;font-style:italic;color:var(--burgundy);font-size:16px}.duel-card p,.character-card p,.author-copy p,.author-note p{color:#4b4643;line-height:1.7}.duel-card blockquote{font-family:"Cormorant Garamond",serif;font-style:italic;color:var(--burgundy);font-size:20px;margin:10px 0 0}.pink-card{background:linear-gradient(135deg,#fff4f6,#fff)}.blue-card{grid-template-columns:1fr 190px;background:linear-gradient(135deg,#fff,#f4f8ff)}.blue-card h3,.blue-card small,.blue-card blockquote{color:#1e4870}.vs-badge{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;margin:auto;font:700 34px/1 "Cormorant Garamond",serif;color:var(--burgundy);border:1px solid rgba(152,15,47,.20);background:#fff;box-shadow:var(--soft)}
.heartbeats{padding:38px clamp(30px,6vw,100px) 70px;position:relative;z-index:1}.heartbeat-path{height:230px;max-width:1500px;margin:auto;position:relative}.heartbeat-path svg{width:100%;height:220px;position:absolute;inset:0}.path-shadow,.path{fill:none;vector-effect:non-scaling-stroke}.path-shadow{stroke:rgba(255,255,255,.9);stroke-width:8}.path{stroke:#d486a0;stroke-width:3;stroke-linecap:round;stroke-dasharray:7 9;animation:dash 14s linear infinite}.beat{position:absolute;width:58px;height:58px;display:grid;place-items:center;color:white;font:800 21px/1 "Cormorant Garamond",serif;background:linear-gradient(135deg,#ec7895,#9d83d2);box-shadow:0 10px 24px rgba(152,15,47,.18);clip-path:path("M29 55 C-12 25 7 0 29 15 C51 0 70 25 29 55Z");transform:translate(-50%,-50%);transition:.25s}.beat:hover{filter:saturate(1.15);transform:translate(-50%,-50%) scale(1.1)}.b1{left:4%;top:120px}.b2{left:16%;top:105px}.b3{left:28%;top:75px}.b4{left:40%;top:92px}.b5{left:52%;top:150px}.b6{left:62%;top:92px}.b7{left:73%;top:62px}.b8{left:82%;top:112px}.b9{left:91%;top:90px}.b10{left:96%;top:112px;background:linear-gradient(135deg,#ff91a2,#f04f6b);width:66px;height:66px;font-size:26px}
.characters{padding:18px clamp(24px,5vw,90px) 58px;position:relative;z-index:1}.character-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1540px;margin:auto}.character-card{min-height:225px;border-radius:20px;border:1px solid rgba(152,15,47,.08);background:rgba(255,255,255,.76);padding:18px;display:grid;grid-template-columns:140px 1fr;align-items:center;gap:18px;box-shadow:var(--soft);transition:.25s;cursor:pointer}.character-card:hover,.character-card:focus{transform:translateY(-6px);box-shadow:var(--shadow);outline:none}.character-card img{height:185px;width:140px;object-fit:cover;object-position:top;border-radius:16px;background:#fff}.character-card h3{font-size:28px}.character-card p{font-size:14px}.character-card button,.author-note button,.footer-column button{border:0;background:transparent;color:var(--burgundy);cursor:pointer;font-weight:700;padding:0;text-align:left}.character-monogram{width:140px;height:185px;display:grid;place-items:center;border-radius:16px;color:#fff;font:700 62px/1 "Cormorant Garamond",serif}.character-monogram.pink{background:linear-gradient(145deg,#db6680,#8e1232)}.character-monogram.blue{background:linear-gradient(145deg,#7897bd,#23466e)}.character-monogram.gold{background:linear-gradient(145deg,#e0b973,#90612d)}.character-monogram.lavender{background:linear-gradient(145deg,#b29bdb,#64518e)}.character-monogram.coral{background:linear-gradient(145deg,#ed927c,#a83d45)}.character-monogram.peach{background:linear-gradient(145deg,#efb28e,#bc6d6e)}
.quote-strip{margin:0 70px 44px;border-radius:28px;padding:48px 52px;background:linear-gradient(90deg,#fce7ef,#fff,#eaf2ff);display:grid;grid-template-columns:repeat(3,1fr);gap:34px;box-shadow:var(--soft);position:relative;z-index:1}.quote-strip blockquote{margin:0;text-align:center;font:600 italic 28px/1.25 "Cormorant Garamond",serif;color:#2e2b2b}.quote-strip blockquote:not(:last-child){border-right:1px solid rgba(152,15,47,.20);padding-right:34px}
.reader-reviews{margin:0 clamp(24px,5vw,70px) 48px;padding:64px clamp(28px,5vw,72px);border:1px solid rgba(152,15,47,.09);border-radius:28px;background:#fff;box-shadow:var(--soft);position:relative;z-index:1;overflow:hidden}.reader-reviews:before{content:"“";position:absolute;right:3%;top:-80px;color:rgba(152,15,47,.055);font:700 300px/1 "Cormorant Garamond",serif}.reviews-heading{display:grid;grid-template-columns:1fr minmax(300px,.72fr);gap:70px;align-items:end;margin-bottom:38px}.reviews-heading h2{max-width:720px;margin:0;font:700 clamp(42px,5vw,68px)/.95 "Cormorant Garamond",serif}.reviews-heading>p{margin:0;color:var(--muted);line-height:1.75}.review-showcase{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}.review-feature,.review-stack article{border:1px solid rgba(152,15,47,.1);border-radius:8px;background:linear-gradient(145deg,#fff8f9,#fff);padding:30px}.review-feature{min-height:300px;display:grid;align-content:space-between}.review-feature blockquote{max-width:780px;margin:30px 0;font:600 italic clamp(28px,3vw,42px)/1.22 "Cormorant Garamond",serif}.review-feature div:last-child,.review-stack article{display:grid}.review-feature span{margin-top:4px;color:var(--muted);font-size:12px}.review-stars{color:#c7922d;font-size:15px;letter-spacing:.16em}.review-stack{display:grid;gap:22px}.review-stack article{align-content:space-between}.review-stack p{font:600 20px/1.45 "Cormorant Garamond",serif}.review-stack b{color:var(--burgundy);font-size:12px}.reviews-actions{display:flex;justify-content:center;gap:16px;margin-top:34px}
.section-kicker{margin:0 0 6px;color:var(--burgundy);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.journey-section{margin:0 70px 48px;padding:48px 44px;border:1px solid rgba(152,15,47,.08);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,241,244,.72) 50%,rgba(238,246,255,.82));box-shadow:var(--soft);position:relative;z-index:1}.journey-layout{display:grid;grid-template-columns:250px 1fr;gap:34px}.journey-tabs{display:grid;align-content:start;border-right:1px solid rgba(152,15,47,.14);padding-right:24px}.journey-tab{display:flex;align-items:center;gap:14px;border:0;border-bottom:1px solid rgba(152,15,47,.09);background:transparent;color:#756c69;cursor:pointer;padding:13px 8px;text-align:left;font-weight:600;transition:.2s}.journey-tab span{width:34px;color:var(--burgundy);font:700 18px/1 "Cormorant Garamond",serif}.journey-tab:hover,.journey-tab.active{color:var(--burgundy);transform:translateX(5px)}.journey-tab.active{background:linear-gradient(90deg,rgba(255,231,236,.8),transparent)}.journey-detail{min-height:340px;display:grid;grid-template-columns:100px 1fr 220px;align-items:center;gap:30px;overflow:hidden;border:1px solid rgba(152,15,47,.1);border-radius:22px;background:rgba(255,255,255,.75);padding:34px;position:relative}.journey-number{align-self:start;color:rgba(152,15,47,.18);font:700 86px/.8 "Cormorant Garamond",serif}.journey-label{margin:0 0 7px;color:var(--burgundy);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.journey-detail h3{margin:0 0 12px;color:var(--burgundy);font:700 48px/1 "Cormorant Garamond",serif}.journey-detail p:not(.journey-label){color:#554e4b;line-height:1.7}.journey-detail blockquote{margin:22px 0 0;color:var(--burgundy);font:600 italic 22px/1.35 "Cormorant Garamond",serif}.journey-detail img{width:220px;mix-blend-mode:multiply;opacity:.76;transition:.35s}.journey-detail.changing img{transform:scale(.93) rotate(-2deg);opacity:.35}
.inside-book{margin:0 70px 48px;display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);gap:56px;align-items:center;padding:54px;border-radius:28px;background:linear-gradient(120deg,#25283a,#303958 62%,#6f2643);color:#fff;box-shadow:var(--shadow);position:relative;z-index:1;overflow:hidden}.inside-book:after{content:"";position:absolute;width:400px;height:400px;right:-120px;bottom:-180px;border-radius:50%;background:rgba(255,210,222,.12);filter:blur(4px)}.inside-book-cover{position:relative;z-index:1}.inside-book-cover img{width:min(100%,430px);max-height:520px;object-fit:contain;margin:auto;border-radius:5px;box-shadow:0 28px 50px rgba(0,0,0,.26);transform:perspective(900px) rotateY(7deg)}.inside-book-copy{position:relative;z-index:1}.inside-book-copy .section-kicker{color:#f3b7c4}.inside-book-copy>h2{margin:0 0 18px;font:700 clamp(38px,4vw,60px)/1.02 "Cormorant Garamond",serif}.inside-book-copy>p{color:rgba(255,255,255,.72);line-height:1.75}.story-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0}.story-pillars article{min-height:175px;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:rgba(255,255,255,.06);padding:20px}.story-pillars b{color:#f3b7c4;font:700 20px/1 "Cormorant Garamond",serif}.story-pillars h3{margin:12px 0 8px;font:700 21px/1.1 "Cormorant Garamond",serif}.story-pillars p{margin:0;color:rgba(255,255,255,.62);font-size:13px;line-height:1.55}.book-meta{display:flex;gap:28px;margin:0 0 28px;padding:18px 0;border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.book-meta span{display:grid;font-family:"Cormorant Garamond",serif;font-size:19px}.book-meta small{color:#f3b7c4;font:600 9px/1.4 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.author-grid{display:grid;grid-template-columns:240px 1fr 240px;gap:32px;align-items:center}.author-avatar{text-align:center}.author-avatar img{border-radius:50%;width:190px;height:190px;object-fit:cover;margin:0 auto}.author-avatar span{font-family:"Great Vibes",cursive;color:var(--burgundy);font-size:34px}.socials{display:flex;gap:14px;margin-top:16px}.socials a{width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid rgba(152,15,47,.12);display:grid;place-items:center}.socials img{width:24px;height:24px;object-fit:contain}.author-note{border:1px solid rgba(152,15,47,.16);border-radius:20px;padding:26px;text-align:center;background:#fffdfc}.author-note b{color:var(--burgundy);font-size:26px}.author-note a{color:var(--burgundy);font-weight:700}
.final-cta{margin:0 70px 40px;padding:46px 54px;border-radius:28px;background:linear-gradient(90deg,#fff0f4,#fff,#f0f6ff);display:grid;grid-template-columns:130px 1fr 170px;gap:28px;align-items:center;position:relative;z-index:1;overflow:hidden}.final-cta .cta-book{height:170px;border-radius:4px;box-shadow:0 18px 30px rgba(0,0,0,.14)}.final-cta .cta-door{height:160px;margin-left:auto}.final-cta p{text-align:center;margin:0 0 6px;color:var(--burgundy);font-family:"Cormorant Garamond",serif;font-size:22px}.final-cta h2{text-align:center;margin:0 0 20px;font:700 40px/1.1 "Cormorant Garamond",serif}
.site-footer{position:relative;z-index:1;border-top:1px solid rgba(152,15,47,.1);background:#261d23;color:#fff;padding:72px clamp(24px,6vw,110px) 24px}.footer-main{display:grid;grid-template-columns:1.25fr .65fr .65fr 1fr;gap:56px;max-width:1600px;margin:auto}.site-footer .brand span,.site-footer .brand small{color:#fff}.site-footer .brand i{color:#f3a2b4}.footer-brand-block>p,.footer-newsletter>p{color:rgba(255,255,255,.58);line-height:1.65}.footer-amazon{display:inline-flex;margin-top:12px;color:#f3a2b4;font-family:"Cormorant Garamond",serif;font-size:18px;font-weight:700}.footer-column,.footer-newsletter{display:grid;align-content:start;gap:12px}.footer-column h3,.footer-newsletter h3{margin:0 0 9px;color:#f3a2b4;font:700 21px/1 "Cormorant Garamond",serif;text-transform:uppercase}.footer-column a,.footer-column button{color:rgba(255,255,255,.72);font-size:13px}.footer-column button{font-weight:400}.footer-column a:hover,.footer-column button:hover{color:#fff}.footer-newsletter form{display:flex;margin-top:10px}.footer-newsletter input{min-width:0;flex:1;border:1px solid rgba(255,255,255,.18);border-radius:8px 0 0 8px;background:rgba(255,255,255,.08);color:#fff;padding:13px}.footer-newsletter button{border:0;border-radius:0 8px 8px 0;background:var(--burgundy);color:#fff;cursor:pointer;padding:0 18px;font-weight:700}.footer-bottom{max-width:1600px;display:flex;justify-content:space-between;gap:20px;margin:50px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.44);font-size:12px}.footer-bottom p{margin:0;color:inherit}
.site-modal{width:min(1180px,calc(100vw - 34px));max-height:min(860px,calc(100vh - 34px));border:0;border-radius:24px;background:#fffaf6;color:var(--charcoal);box-shadow:0 35px 110px rgba(30,15,22,.4);padding:0;overflow:hidden}.site-modal[open]{animation:modal-in .25s ease both}.site-modal::backdrop{background:rgba(31,20,26,.72);backdrop-filter:blur(8px)}@keyframes modal-in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}.modal-close{position:absolute;z-index:5;top:14px;right:14px;width:40px;height:40px;border:1px solid rgba(152,15,47,.18);border-radius:50%;background:#fff;color:var(--burgundy);cursor:pointer;font-size:27px;line-height:1}.heartbeat-modal{width:min(1380px,calc(100vw - 28px));max-height:calc(100vh - 28px)}.modal-heading{padding:24px 70px 18px;text-align:center;background:linear-gradient(120deg,#fff0f4,#fff,#edf4ff)}.modal-heading p{margin:0;color:var(--burgundy);font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.modal-heading h2{margin:4px 0;font:700 clamp(34px,4vw,48px)/1 "Cormorant Garamond",serif;text-transform:uppercase}.modal-heading>span{color:var(--muted);font-size:13px}.heartbeat-modal-layout{display:grid;grid-template-rows:auto 150px;min-height:0}.all-heartbeats{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px;align-content:start;overflow:hidden;padding:18px 22px}.modal-heartbeat{min-height:57px;border:1px solid rgba(152,15,47,.12);border-radius:8px;background:#fff;cursor:pointer;padding:8px;text-align:left;overflow:hidden;transition:.2s}.modal-heartbeat:hover,.modal-heartbeat.active{transform:translateY(-2px);border-color:var(--burgundy);background:#fff0f4;box-shadow:var(--soft)}.modal-heartbeat span{display:block;color:var(--burgundy);font:700 16px/1 "Cormorant Garamond",serif}.modal-heartbeat small{display:block;margin-top:4px;color:#403b3a;font-size:9px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-heartbeat{display:grid;grid-template-columns:95px 130px minmax(190px,.8fr) minmax(300px,1.5fr);align-items:center;gap:18px;border-top:1px solid rgba(152,15,47,.1);background:linear-gradient(100deg,#fff4f6,#f2f7ff);padding:22px 34px}.selected-heartbeat>span{color:rgba(152,15,47,.24);font:700 74px/.8 "Cormorant Garamond",serif}.selected-heartbeat small{margin:0;color:var(--burgundy);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.selected-heartbeat h3{margin:0;color:var(--burgundy);font:700 30px/1 "Cormorant Garamond",serif}.selected-heartbeat p{margin:0;color:#574f4d;font-size:13px;line-height:1.5}.character-modal{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);align-items:stretch}.character-modal[open]{display:grid}.character-modal-visual{min-height:590px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(150deg,#fff0f3,#edf4ff)}.character-modal-visual img{width:100%;height:100%;object-fit:cover;object-position:top}.character-modal-visual .modal-monogram{width:230px;height:300px;display:grid;place-items:center;border-radius:28px;color:#fff;background:linear-gradient(145deg,#c75c78,#364f7d);font:700 110px/1 "Cormorant Garamond",serif;box-shadow:var(--shadow)}.character-modal-copy{display:grid;align-content:center;padding:70px}.character-modal-copy>p:first-child,.author-modal-copy>p:first-child{margin:0;color:var(--burgundy);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.character-modal-copy h2,.author-modal-copy h2{margin:10px 0 20px;color:var(--burgundy);font:700 clamp(45px,6vw,76px)/.9 "Cormorant Garamond",serif;text-transform:uppercase}.character-modal-copy [data-character-description]{color:#514a48;line-height:1.75}.character-modal-copy blockquote{margin:28px 0 0;color:var(--burgundy);font:600 italic 24px/1.4 "Cormorant Garamond",serif}.author-modal{grid-template-columns:360px 1fr}.author-modal[open]{display:grid}.author-modal-photo{display:grid;align-content:center;justify-items:center;background:linear-gradient(150deg,#fff0f4,#fff);padding:45px}.author-modal-photo img{width:260px;height:260px;border-radius:50%;object-fit:cover}.author-modal-photo span{margin-top:-12px;color:var(--burgundy);font:400 46px/1 "Great Vibes",cursive;transform:rotate(-5deg)}.author-modal-copy{overflow-y:auto;padding:60px}.author-modal-copy>p:not(:first-child){color:#514a48;line-height:1.75}.author-modal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.site-toast{position:fixed;z-index:100;right:24px;bottom:24px;transform:translateY(15px);border-radius:999px;background:#261d23;color:#fff;padding:13px 20px;opacity:0;pointer-events:none;transition:.2s}.site-toast.show{transform:none;opacity:1}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease, transform .75s ease}.reveal.show{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.14s}@keyframes float{0%,100%{transform:perspective(1100px) rotateY(-9deg) rotateX(1deg) translateY(0)}50%{transform:perspective(1100px) rotateY(-9deg) rotateX(1deg) translateY(-12px)}}@keyframes heart-drift{0%,100%{transform:translateY(0) scale(1);opacity:.68}50%{transform:translateY(-16px) scale(1.08);opacity:1}}@keyframes orbit-pulse{0%,100%{opacity:.5;transform:scale(.98)}50%{opacity:1;transform:scale(1.03)}}@keyframes dash{to{stroke-dashoffset:-220}}
@media(max-width:1180px){.nav-links{gap:14px;font-size:12px}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-main{grid-template-columns:1.2fr 1fr 1fr}.footer-newsletter{grid-column:1/-1}.all-heartbeats{grid-template-columns:repeat(10,minmax(0,1fr))}.modal-heartbeat small{display:none}.selected-heartbeat{grid-template-columns:80px 100px 1fr 1.5fr}.review-showcase{grid-template-columns:1fr}.review-stack{grid-template-columns:1fr 1fr}}
@media(max-width:1050px){.navbar{padding:0 24px}.nav-links{gap:13px;font-size:13px}.hero{grid-template-columns:1fr;padding:52px 28px}.card-section,.quote-strip,.final-cta,.journey-section,.inside-book{width:auto;margin-left:24px;margin-right:24px}.duel-grid,.author-grid,.final-cta{grid-template-columns:1fr}.vs-badge{order:2}.duel-card,.blue-card{grid-template-columns:130px 1fr}.duel-card img{width:130px;height:160px}.quote-strip{grid-template-columns:1fr}.quote-strip blockquote:not(:last-child){border-right:0;border-bottom:1px solid rgba(152,15,47,.20);padding:0 0 24px}.heartbeat-path{transform:scale(.9);transform-origin:center}.journey-layout{grid-template-columns:1fr}.journey-tabs{grid-template-columns:repeat(4,1fr);border-right:0;border-bottom:1px solid rgba(152,15,47,.14);padding:0 0 20px}.journey-detail{grid-template-columns:80px 1fr 180px}.inside-book{grid-template-columns:1fr;padding:45px}.inside-book-cover img{max-height:420px}.heartbeat-modal-layout{grid-template-columns:1fr}.selected-heartbeat{border-top:1px solid rgba(152,15,47,.1);border-left:0}.character-modal,.author-modal{grid-template-columns:1fr}.character-modal-visual{min-height:330px}.author-modal-photo{display:none}}
@media(max-width:760px){.navbar{height:auto;min-height:82px;padding:14px 18px}.navbar .brand span{font-size:18px}.navbar .brand b,.navbar .brand i{font-size:25px}.navbar .brand small{font-size:12px}.mobile-menu-button{display:block}.nav-links{position:absolute;top:100%;left:14px;right:14px;display:grid;gap:0;transform:translateY(-8px);border:1px solid rgba(152,15,47,.1);border-radius:16px;background:rgba(255,253,249,.98);box-shadow:var(--shadow);padding:14px 22px;opacity:0;visibility:hidden;transition:.2s}.nav-links.open{transform:none;opacity:1;visibility:visible}.nav-links a{border-bottom:1px solid rgba(152,15,47,.08);padding:14px 0}.nav-links a:after{display:none}.nav-links .nav-cta{margin-top:10px;border-bottom:0;padding:14px;text-align:center}.character-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}.footer-brand-block,.footer-newsletter{grid-column:1/-1}.all-heartbeats{grid-template-columns:repeat(3,minmax(0,1fr))}.modal-heading{padding:42px 24px 22px}.character-modal-copy,.author-modal-copy{padding:45px 28px}}
@media(max-width:620px){.page-shell{border-radius:0}.hero h2{font-size:28px}.tagline{font-size:20px}.hero-actions{flex-direction:column;align-items:flex-start}.micro-divider{width:100%}.book-stage{height:400px}.book-mockup{width:235px;height:360px}.book-spine{height:340px}.card-section,.heartbeats,.characters{padding:28px 18px}.duel-card,.blue-card,.character-card{grid-template-columns:1fr;text-align:center}.duel-card img,.character-card img,.character-monogram{margin:auto}.section-title h2{font-size:34px}.journey-section,.inside-book{margin-left:14px;margin-right:14px;padding:28px 18px}.journey-tabs{grid-template-columns:repeat(2,1fr)}.journey-detail{grid-template-columns:1fr;padding:24px}.journey-number{font-size:60px}.journey-detail h3{font-size:38px}.journey-detail img{width:160px;margin:auto}.story-pillars{grid-template-columns:1fr}.book-meta{flex-wrap:wrap}.final-cta{padding:30px 18px}.final-cta .cta-door{margin:auto}.quote-strip{padding:32px 22px}.site-footer{padding:55px 20px 22px}.footer-main{grid-template-columns:1fr}.footer-brand-block,.footer-newsletter{grid-column:auto}.footer-bottom{align-items:center;flex-direction:column;text-align:center}.character-modal-visual{min-height:260px}.author-modal-actions{align-items:stretch;flex-direction:column}}

/* Community pages */
.community-page{min-height:100vh;background:#fffaf5}.community-nav{position:relative}.community-nav-links{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700}.community-nav-links a:not(.nav-cta){padding:12px 0;border-bottom:2px solid transparent}.community-nav-links a.active,.community-nav-links a:hover{color:var(--burgundy);border-color:var(--burgundy)}.community-main{max-width:1580px;margin:auto;padding:70px clamp(24px,5vw,80px) 90px}.community-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end;padding:35px 0 70px;border-bottom:1px solid rgba(152,15,47,.12)}.community-intro h1{max-width:850px;margin:6px 0 0;font:700 clamp(58px,7vw,104px)/.88 "Cormorant Garamond",serif}.community-intro>p{max-width:570px;margin:0;color:var(--muted);font:500 20px/1.65 "Cormorant Garamond",serif}.community-workspace{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);gap:60px;align-items:start;padding-top:60px}.community-form{position:sticky;top:28px;display:grid;gap:20px;border:1px solid rgba(152,15,47,.11);border-radius:8px;background:#fff;padding:34px;box-shadow:var(--soft)}.form-heading h2,.feed-heading h2{margin:4px 0 0;font:700 42px/1 "Cormorant Garamond",serif}.community-form label{display:grid;gap:8px;color:#4b4442;font-size:12px;font-weight:700}.community-form input,.community-form textarea,.community-form select{width:100%;border:1px solid rgba(60,42,42,.16);border-radius:6px;background:#fffdfb;color:var(--charcoal);padding:13px 14px;outline:none}.community-form input:focus,.community-form textarea:focus,.community-form select:focus{border-color:var(--burgundy);box-shadow:0 0 0 3px rgba(152,15,47,.07)}.community-form textarea{min-height:150px;resize:vertical;line-height:1.6}.rating-field{margin:0;border:0;padding:0}.rating-field legend{margin-bottom:8px;color:#4b4442;font-size:12px;font-weight:700}.star-picker{display:flex;gap:4px}.star-picker button{border:0;background:transparent;color:#d5c5b2;cursor:pointer;padding:0;font-size:28px}.star-picker button.selected{color:#c7922d}.community-form>.btn{width:100%;cursor:pointer}.feed-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.feed-heading>span{color:var(--burgundy);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.review-wall,.blog-feed{display:grid;gap:18px}.wall-review,.blog-entry{border:1px solid rgba(152,15,47,.1);border-radius:8px;background:#fff;padding:28px;box-shadow:0 12px 34px rgba(80,45,50,.055)}.wall-review-top,.blog-entry-meta,.blog-entry-author{display:flex;justify-content:space-between;gap:20px;align-items:center}.wall-review-top span{color:#c7922d;letter-spacing:.12em}.wall-review-top small,.blog-entry-meta small{color:var(--muted)}.wall-review h3,.blog-entry h3{margin:18px 0 8px;font:700 30px/1.05 "Cormorant Garamond",serif}.wall-review p,.blog-entry p{color:#5d5552;line-height:1.72}.wall-review b{display:block;margin-top:20px;color:var(--burgundy);font-size:12px}.blog-entry{padding:34px}.blog-entry-meta span{color:var(--burgundy);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.blog-entry h3{max-width:850px;font-size:38px}.blog-entry p{white-space:pre-line}.blog-entry-author{margin-top:25px;padding-top:18px;border-top:1px solid rgba(152,15,47,.1);color:var(--burgundy);font-size:11px}.blog-entry-author span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.community-footer{display:flex;justify-content:space-between;gap:20px;padding:28px clamp(24px,5vw,80px);background:#261d23;color:rgba(255,255,255,.66);font-size:12px}.community-footer p{margin:0}.community-footer a{color:#f3a2b4;font-weight:700}

@media(max-width:1050px){
  .hero{grid-template-columns:1fr;gap:25px}.hero-copy{margin:auto;text-align:center}.hero-title{margin-left:auto;margin-right:auto}.hero-title-beats{right:-10px}.micro-divider{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-art{min-height:500px}.reviews-heading,.community-intro{grid-template-columns:1fr;gap:24px}.review-showcase{grid-template-columns:1fr}.community-workspace{grid-template-columns:1fr}.community-form{position:relative;top:auto}.community-nav-links{gap:16px}
  .heartbeat-modal-layout{grid-template-rows:auto 145px}.selected-heartbeat{grid-template-columns:70px 90px 1fr 1.4fr;padding:20px}.selected-heartbeat>span{font-size:60px}.selected-heartbeat h3{font-size:25px}
}
@media(max-width:760px){
  .hero{min-height:auto;padding-top:50px}.hero:before,.hero:after{display:none}.hero-title-top{font-size:34px}.hero-title-heart{font-size:88px}.hero-title-beats{right:0;bottom:-37px;font-size:75px}.hero-edition{margin-top:58px}.hero h2{font-size:30px}.book-aura{width:350px;height:350px}.book-mockup{width:260px;height:395px}.book-spine{height:374px}.reviews-heading{margin-bottom:26px}.reader-reviews{padding:42px 22px}.review-stack{grid-template-columns:1fr}.review-feature{min-height:250px}.reviews-actions{align-items:stretch;flex-direction:column}.community-nav{display:grid;gap:16px;padding-bottom:18px}.community-nav .brand{margin:auto}.community-nav-links{justify-content:center;flex-wrap:wrap}.community-main{padding-top:30px}.community-intro{padding:20px 0 45px}.community-intro h1{font-size:60px}.community-workspace{padding-top:38px;gap:38px}.community-form{padding:24px}.heartbeat-modal .modal-heading{padding:18px 55px 12px 18px;text-align:left}.heartbeat-modal .modal-heading h2{font-size:27px}.heartbeat-modal .modal-heading>span{display:none}.heartbeat-modal-layout{grid-template-rows:auto auto}.all-heartbeats{grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;padding:10px}.modal-heartbeat{min-width:0;min-height:42px;padding:4px;text-align:center}.modal-heartbeat span{font-size:13px}.selected-heartbeat{grid-template-columns:52px 1fr;gap:6px 14px;padding:14px 18px}.selected-heartbeat>span{grid-row:1/3;font-size:52px}.selected-heartbeat small{font-size:8px}.selected-heartbeat h3{font-size:22px}.selected-heartbeat p{grid-column:1/-1;font-size:11px;line-height:1.4}.community-footer{align-items:center;flex-direction:column;text-align:center}
}
@media(max-width:620px){
  .hero h1 span{display:block}.hero-title-top{font-size:29px!important}.hero-title-heart{font-size:76px!important}.hero-title-beats{font-size:68px!important}.hero-actions{align-items:stretch}.book-stage{height:420px}.book-mockup{width:235px;height:360px}.book-spine{height:340px}.float-heart.one{left:3%}.float-heart.two{right:3%}.orbit-one{width:330px;height:330px}.orbit-two{width:350px;height:260px}.heartbeat-path{height:200px;transform:none}.heartbeat-path svg{height:190px}.beat{width:46px;height:46px;font-size:17px;clip-path:path("M23 44 C-9 20 6 0 23 12 C41 0 56 20 23 44Z")}.b1{top:104px}.b2{top:91px}.b3{top:65px}.b4{top:79px}.b5{top:129px}.b6{top:79px}.b7{top:54px}.b8{top:97px}.b9{top:78px}.b10{top:97px;width:52px;height:52px;font-size:20px}.review-feature blockquote{font-size:27px}.community-intro h1{font-size:49px}.community-intro>p{font-size:18px}.community-nav-links .nav-cta{width:100%;text-align:center}.feed-heading{align-items:flex-start;flex-direction:column;gap:10px}.wall-review,.blog-entry{padding:23px}.blog-entry h3{font-size:31px}.site-modal.heartbeat-modal{width:calc(100vw - 8px);max-height:calc(100vh - 8px)}
}

/* Reference-led literary redesign */
:root{--burgundy:#aa0b32;--charcoal:#292b2d;--cream:#fffaf5}
body{background:#fffaf6}
.page-shell{background:#fffaf6}
.page-shell:before,.page-shell:after{display:none}
.navbar{height:92px;padding:0 clamp(32px,4vw,66px);background:rgba(255,250,246,.94);border-bottom:0;backdrop-filter:blur(18px)}
.author-brand{position:relative;display:inline-grid;gap:10px;color:#36383a;font:500 18px/1 Inter,sans-serif;letter-spacing:.32em;text-transform:uppercase}
.author-brand:after{content:"";position:absolute;left:0;bottom:-9px;width:108px;height:1px;background:#d8c7c8}
.author-brand i{position:absolute;left:105px;bottom:-18px;color:var(--burgundy);font:normal 12px/1 Inter,sans-serif;letter-spacing:0}
.nav-links{gap:clamp(20px,2.6vw,43px);font:500 11px/1 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.nav-links a:not(.nav-cta):after{height:1px;bottom:-14px}
.nav-cta{padding:15px 25px;border-radius:999px;letter-spacing:.08em}
.cart-link{width:30px;height:30px;display:grid;place-items:center}
.cart-link img{width:23px;height:23px}
.nav-links .cart-link:after{display:none}
.hero-reference{position:relative;z-index:1;min-height:910px;overflow:hidden;background:#fffaf6;padding:0 clamp(42px,5vw,82px) 40px}
.hero-background,.hero-reference-inner{position:absolute;inset:0}
.hero-background{pointer-events:none}
.hero-clouds,.hero-city{position:absolute;left:0;bottom:0;width:100%;height:100%;object-fit:cover}
.hero-clouds{opacity:.42;mix-blend-mode:multiply}
.hero-city{opacity:.74;object-position:center bottom}
.hero-door{position:absolute;left:-70px;bottom:92px;width:300px;height:520px;object-fit:contain;filter:drop-shadow(0 20px 30px rgba(190,83,45,.12))}
.hero-reference-inner{position:relative;display:grid;grid-template-columns:minmax(500px,.92fr) minmax(520px,1.08fr) 190px;align-items:center;max-width:1500px;height:740px;margin:auto;gap:20px}
.hero-reference .hero-copy{align-self:center;justify-self:center;max-width:620px;margin:25px 0 0 70px;text-align:left}
.hero-kicker{margin:0 0 27px 24px;color:#c52d4c;font-size:10px;font-weight:600;letter-spacing:.42em;text-transform:uppercase}
.reference-title{position:relative;width:470px;height:310px;margin:0;color:#292b2d;font-family:"Playfair Display",serif;font-weight:400;letter-spacing:0}
.reference-title span{position:absolute;display:block;letter-spacing:0}
.ways-line{top:0;left:0;font-size:72px;line-height:.95}
.the-line{top:72px;left:126px;font-size:39px;line-height:1}
.heart-line{top:83px;left:0;font-size:112px;line-height:.95}
.beats-line{left:10px;bottom:-4px;color:var(--burgundy);font:400 91px/.9 "Great Vibes",cursive;transform:rotate(-3deg)}
.beats-line:after{content:"";position:absolute;left:-8px;right:-43px;bottom:4px;height:22px;border-bottom:2px solid var(--burgundy);border-radius:50%;transform:rotate(2deg)}
.beats-line i{position:absolute;right:-55px;bottom:-3px;font:normal 25px/1 "Cormorant Garamond",serif}
.hero-reference .hero-copy h2{margin:16px 0 16px 25px;font:500 29px/1.1 "Playfair Display",serif}
.hero-reference .micro-divider{width:240px;margin:0 0 24px 72px}
.hero-reference .tagline{margin:0 0 30px -14px;font:500 italic 20px/1.3 "Cormorant Garamond",serif}
.hero-reference .hero-actions{margin-left:-28px}
.hero-reference .btn{min-height:54px;border-radius:7px;padding:16px 24px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.trailer-button{border-color:#ce8798;background:rgba(255,255,255,.52)}
.trailer-button img{width:15px;height:15px}
.reference-book-art{position:relative;align-self:end;height:660px}
.reference-book{position:absolute;z-index:3;left:50%;bottom:62px;width:min(610px,48vw);max-width:none;transform:translateX(-50%);filter:drop-shadow(0 28px 28px rgba(78,46,40,.1));animation:reference-float 6s ease-in-out infinite}
.reference-pedestal{position:absolute;z-index:1;left:50%;bottom:0;width:620px;height:145px;transform:translateX(-50%);border-radius:50%;background:linear-gradient(180deg,#fdf9f5 0,#e8d7cd 65%,#d9c3b7 100%);box-shadow:0 28px 55px rgba(98,61,55,.12),inset 0 2px 0 #fff}
.reference-pedestal:before{content:"";position:absolute;left:45px;right:45px;top:-56px;height:118px;border-radius:50%;background:linear-gradient(180deg,#fffdfb,#eadbd2);box-shadow:0 12px 22px rgba(98,61,55,.1),inset 0 2px 0 #fff}
.reference-pedestal span{position:absolute;left:90px;right:90px;top:-94px;height:100px;border-radius:50%;background:linear-gradient(180deg,#fff,#eee2db);box-shadow:0 10px 20px rgba(98,61,55,.09)}
.reference-pedestal i{position:absolute;left:50%;bottom:-22px;width:480px;height:60px;border-radius:50%;background:rgba(116,71,57,.1);filter:blur(16px);transform:translateX(-50%)}
.reference-swirl{position:absolute;z-index:2;left:-90px;top:150px;width:200px;opacity:.52}
.hero-side-note{position:relative;align-self:center;width:175px;height:175px;display:grid;place-items:center;text-align:center;border:1px solid rgba(170,11,50,.24);border-radius:50%;color:#36383a}
.hero-side-note:before{content:"";position:absolute;inset:-12px;border:1px solid rgba(170,11,50,.16);border-radius:48% 52% 49% 51%}
.hero-side-note span{position:absolute;top:38px;color:var(--burgundy);font-size:15px}
.hero-side-note p{margin:32px 0 0;font-size:10px;font-weight:600;line-height:1.75;letter-spacing:.12em;text-transform:uppercase}
.hero-feature-strip{position:absolute;z-index:6;left:5%;right:5%;bottom:28px;min-height:170px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;border:1px solid rgba(170,11,50,.08);border-radius:22px;background:rgba(255,255,255,.82);box-shadow:0 20px 55px rgba(103,65,60,.08);backdrop-filter:blur(18px);padding:25px 38px}
.hero-feature-strip article{min-height:86px;display:grid;grid-template-columns:48px 1fr;gap:18px;align-items:start;padding:0 28px}
.hero-feature-strip article+article{border-left:1px solid rgba(170,11,50,.15)}
.hero-feature-strip img{width:40px;height:40px;object-fit:contain}
.hero-feature-strip h3{margin:4px 0 10px;font:600 11px/1.2 Inter,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.hero-feature-strip p{margin:0;color:#62605f;font:400 13px/1.65 Inter,sans-serif}
.section-title h2,.inside-book-copy>h2,.final-cta h2,.reviews-heading h2{font-family:"Playfair Display",serif;font-weight:500;letter-spacing:0}
.card-section,.journey-section,.inside-book,.quote-strip,.reader-reviews,.final-cta{border-radius:8px}
.duel-card,.character-card,.story-pillars article,.author-note,.review-feature,.review-stack article{border-radius:8px}
.character-card img{height:205px;object-position:center 12%;background:#fbf8f6}
.character-card.text-character img{object-position:center 18%}
.character-modal-visual img{object-position:center 15%}
@keyframes reference-float{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-8px)}}

@media(max-width:1250px){
  .navbar{padding:0 28px}.nav-links{gap:18px;font-size:10px}
  .hero-reference{min-height:940px}
  .hero-reference-inner{grid-template-columns:minmax(430px,.9fr) minmax(450px,1.1fr);height:760px}
  .hero-side-note{position:absolute;right:20px;top:165px;width:145px;height:145px}
  .reference-book{width:540px}.reference-pedestal{width:540px}
  .hero-feature-strip{left:3%;right:3%;padding:24px 16px}.hero-feature-strip article{padding:0 18px}
}
@media(max-width:1050px){
  .hero-reference{min-height:1320px;padding:0 28px 35px}
  .hero-reference-inner{height:1110px;grid-template-columns:1fr;grid-template-rows:530px 560px;gap:0}
  .hero-reference .hero-copy{justify-self:center;margin:40px auto 0}
  .reference-book-art{height:560px;align-self:start}
  .reference-book{width:520px;bottom:50px}.reference-pedestal{width:550px}
  .hero-side-note{right:8%;top:650px}
  .hero-door{left:-80px;bottom:160px;width:250px}
  .hero-feature-strip{grid-template-columns:repeat(2,1fr);bottom:25px}.hero-feature-strip article:nth-child(3){border-left:0}.hero-feature-strip article{padding:14px 22px}
}
@media(max-width:760px){
  .navbar{min-height:76px;padding:12px 18px}.author-brand{font-size:13px;letter-spacing:.25em}.author-brand:after{width:80px}.author-brand i{left:78px}
  .nav-links{top:100%;text-transform:none;letter-spacing:0}.nav-links .cart-link{display:none}
  .hero-reference{min-height:1300px;padding:0 16px 30px}
  .hero-reference-inner{height:1050px;grid-template-rows:500px 530px}
  .hero-reference .hero-copy{width:100%;margin-top:30px;text-align:center}
  .hero-kicker{margin:0 0 22px;font-size:8px}
  .reference-title{width:310px;height:255px;margin:auto;text-align:left}
  .ways-line{font-size:54px}.the-line{top:54px;left:98px;font-size:31px}.heart-line{top:66px;font-size:82px}.beats-line{bottom:4px;font-size:72px}.beats-line i{right:-35px}
  .hero-reference .hero-copy h2{margin:10px 0 14px;font-size:24px}.hero-reference .micro-divider{margin:0 auto 20px}.hero-reference .tagline{margin:0 0 25px;font-size:18px}
  .hero-reference .hero-actions{margin:0;justify-content:center;align-items:center;flex-direction:row}.hero-reference .btn{padding:14px 15px;font-size:10px}
  .reference-book{width:430px;bottom:50px}.reference-pedestal{width:440px;height:120px}.reference-pedestal:before{left:32px;right:32px}.reference-pedestal span{left:65px;right:65px}
  .hero-side-note{display:none}.hero-door{left:-100px;bottom:170px;width:220px;opacity:.8}
  .hero-feature-strip{grid-template-columns:1fr;left:16px;right:16px;bottom:18px;padding:14px 22px}.hero-feature-strip article{min-height:auto;grid-template-columns:36px 1fr;padding:13px 0}.hero-feature-strip article+article{border-left:0;border-top:1px solid rgba(170,11,50,.12)}.hero-feature-strip img{width:30px;height:30px}.hero-feature-strip h3{margin:0 0 4px}.hero-feature-strip p{font-size:11px;line-height:1.45}
}
@media(max-width:480px){
  .hero-reference{min-height:1240px}.hero-reference-inner{height:990px;grid-template-rows:480px 500px}
  .reference-book{width:370px}.reference-pedestal{width:380px}
  .hero-reference .hero-actions{gap:9px}.hero-reference .btn{min-height:49px}
  .hero-door{left:-112px;width:205px}
}
.community-intro h1{font-family:"Playfair Display",serif;font-weight:500}
.form-heading h2,.feed-heading h2,.wall-review h3,.blog-entry h3{font-family:"Playfair Display",serif;font-weight:500}
@media(max-width:760px){.community-nav .author-brand{margin:auto}}

/* Organized hero layout */
.hero-reference{
  min-height:0;
  padding:24px clamp(28px,5vw,80px) 34px;
}
.hero-reference-inner{
  position:relative;
  inset:auto;
  width:100%;
  max-width:1440px;
  height:640px;
  display:grid;
  grid-template-columns:minmax(430px,.9fr) minmax(570px,1.1fr);
  gap:clamp(28px,4vw,72px);
  align-items:center;
  margin:0 auto;
}
.hero-reference .hero-copy{
  align-self:center;
  justify-self:center;
  width:500px;
  max-width:100%;
  margin:0;
  padding-left:38px;
}
.hero-kicker{margin:0 0 24px 18px}
.reference-title{width:450px;height:300px}
.ways-line{font-size:69px}
.the-line{top:68px;left:122px;font-size:37px}
.heart-line{top:80px;font-size:108px}
.beats-line{bottom:0;font-size:88px}
.hero-reference .hero-copy h2{margin:16px 0 16px 20px}
.hero-reference .micro-divider{margin:0 0 22px 66px}
.hero-reference .tagline{margin:0 0 28px 0}
.hero-reference .hero-actions{margin-left:0}
.reference-book-art{
  align-self:center;
  width:100%;
  height:600px;
}
.reference-book{
  left:44%;
  bottom:35px;
  width:min(520px,39vw);
}
.reference-pedestal{
  left:44%;
  bottom:22px;
  width:min(550px,41vw);
  height:112px;
  background:linear-gradient(180deg,#fffdfa,#eadbd2 64%,#dac4b8);
}
.reference-pedestal:before{
  left:40px;
  right:40px;
  top:-40px;
  height:82px;
}
.reference-pedestal span{display:none}
.reference-pedestal i{bottom:-12px;width:78%;height:42px}
.reference-swirl{left:1%;top:178px;width:150px}
.hero-side-note{
  position:absolute;
  z-index:5;
  right:-75px;
  top:190px;
  width:158px;
  height:158px;
}
.hero-side-note span{top:31px}
.hero-side-note p{margin-top:28px;font-size:9px}
.hero-door{
  left:-55px;
  bottom:112px;
  width:245px;
  height:430px;
  opacity:.88;
}
.hero-clouds{opacity:.3}
.hero-city{opacity:.61}
.hero-feature-strip{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  width:100%;
  max-width:1440px;
  min-height:148px;
  margin:-8px auto 0;
  padding:24px 25px;
}
.hero-feature-strip article{
  min-width:0;
  min-height:82px;
  grid-template-columns:42px minmax(0,1fr);
  gap:15px;
  padding:0 22px;
}
.hero-feature-strip p br{display:none}

@media(max-width:1250px){
  .hero-reference{padding-left:28px;padding-right:28px}
  .hero-reference-inner{grid-template-columns:minmax(390px,.88fr) minmax(500px,1.12fr);gap:24px}
  .hero-reference .hero-copy{width:450px;padding-left:20px}
  .reference-title{transform:scale(.92);transform-origin:left center}
  .reference-book{left:47%;width:min(520px,43vw)}
  .reference-pedestal{left:47%;width:min(520px,44vw)}
  .hero-side-note{right:5px;width:132px;height:132px}
  .hero-side-note span{top:24px}.hero-side-note p{margin-top:23px;font-size:8px}
  .hero-feature-strip{grid-template-columns:repeat(2,1fr)}
  .hero-feature-strip article{padding:16px 28px}
  .hero-feature-strip article:nth-child(3){border-left:0}
  .hero-feature-strip article:nth-child(n+3){border-top:1px solid rgba(170,11,50,.12)}
}
@media(max-width:1050px){
  .hero-reference{padding:32px 24px}
  .hero-reference-inner{
    height:auto;
    grid-template-columns:1fr;
    grid-template-rows:auto 550px;
    gap:20px;
  }
  .hero-reference .hero-copy{width:500px;margin:10px auto 0;padding:0}
  .reference-title{transform:none}
  .reference-book-art{height:550px}
  .reference-book{left:50%;bottom:32px;width:520px}
  .reference-pedestal{left:50%;width:540px}
  .hero-side-note{right:8%;top:auto;bottom:285px;width:142px;height:142px}
  .hero-door{left:-72px;bottom:235px;width:230px}
  .hero-feature-strip{margin-top:8px}
}
@media(max-width:760px){
  .hero-reference{padding:28px 16px 22px}
  .hero-reference-inner{grid-template-rows:auto 430px;gap:10px}
  .hero-reference .hero-copy{width:100%;margin:0;text-align:center}
  .reference-title{width:310px;height:255px}
  .hero-reference .tagline{margin-bottom:24px}
  .hero-reference .hero-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:380px;margin:auto}
  .hero-reference .btn{width:100%;padding:13px 10px}
  .reference-book-art{height:430px}
  .reference-book{bottom:35px;width:375px}
  .reference-pedestal{bottom:18px;width:370px;height:85px}
  .reference-pedestal:before{left:28px;right:28px;top:-30px;height:62px}
  .reference-swirl,.hero-side-note{display:none}
  .hero-door{left:-88px;bottom:170px;width:190px;height:330px;opacity:.65}
  .hero-feature-strip{grid-template-columns:1fr 1fr;margin-top:0;padding:12px}
  .hero-feature-strip article{display:block;min-height:118px;padding:15px;text-align:center}
  .hero-feature-strip article:nth-child(3){border-left:1px solid rgba(170,11,50,.12)}
  .hero-feature-strip article:nth-child(odd){border-left:0}
  .hero-feature-strip article:nth-child(n+3){border-top:1px solid rgba(170,11,50,.12)}
  .hero-feature-strip img{margin:0 auto 8px}
}
@media(max-width:480px){
  .hero-reference-inner{grid-template-rows:auto 390px}
  .reference-book-art{height:390px}
  .reference-book{width:340px}
  .reference-pedestal{width:340px}
  .hero-feature-strip article{min-height:126px;padding:13px 8px}
  .hero-feature-strip h3{font-size:9px}
  .hero-feature-strip p{font-size:10px}
}

/* Simple hero requested in the final reference */
.hero-reference{
  padding:18px clamp(38px,6vw,100px) 36px;
  background:
    radial-gradient(circle at 4% 80%,rgba(247,190,201,.48),transparent 26%),
    linear-gradient(180deg,#fffaf5 0%,#fffdf9 100%);
}
.hero-background{overflow:hidden}
.hero-clouds{
  left:-3%;
  bottom:-12%;
  width:66%;
  height:78%;
  object-fit:cover;
  object-position:left bottom;
  opacity:.28;
  mix-blend-mode:multiply;
}
.hero-reference-inner{
  max-width:1380px;
  height:650px;
  grid-template-columns:minmax(500px,.92fr) minmax(520px,1.08fr);
  gap:70px;
}
.hero-reference .hero-copy{
  width:560px;
  padding:0;
  justify-self:center;
}
.hero-kicker{
  margin:0 0 24px 5px;
  color:var(--burgundy);
  font-size:12px;
  letter-spacing:.34em;
}
.reference-title{
  width:540px;
  height:286px;
  margin:0;
}
.ways-line{
  top:0;
  left:0;
  font-size:72px;
  white-space:nowrap;
}
.ways-line i{
  font-style:normal;
  font-size:.55em;
}
.the-line{display:none!important}
.heart-line{
  top:68px;
  left:0;
  font-size:130px;
}
.beats-line{
  left:225px;
  bottom:0;
  font-size:91px;
  transform:rotate(-4deg);
}
.beats-line:after{
  left:-18px;
  right:-45px;
  bottom:7px;
  height:18px;
}
.beats-line i{display:none}
.hero-reference .hero-copy h2{
  margin:12px 0 18px 42px;
  font-size:31px;
}
.hero-reference .micro-divider{
  width:300px;
  margin:0 0 25px 42px;
}
.hero-reference .tagline{
  margin:0 0 30px 42px;
  font-size:22px;
  line-height:1.45;
}
.hero-reference .hero-actions{
  margin-left:0;
  gap:20px;
}
.hero-reference .btn{
  min-width:205px;
  min-height:58px;
  font-family:"Cormorant Garamond",serif;
  font-size:18px;
  letter-spacing:0;
  text-transform:none;
}
.reference-book-art{
  height:620px;
  display:grid;
  place-items:center;
}
.reference-book{
  left:50%;
  bottom:36px;
  width:390px;
  aspect-ratio:973/1505;
  border-radius:3px 8px 8px 3px;
  filter:drop-shadow(22px 32px 22px rgba(54,42,38,.19));
  animation:book-loop 5.5s ease-in-out infinite;
}
.reference-book>img{
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
}
.book-page-edge{
  position:absolute;
  z-index:1;
  top:12px;
  right:-25px;
  bottom:12px;
  width:30px;
  border-radius:0 8px 8px 0;
  background:repeating-linear-gradient(90deg,#d9d3ce 0 2px,#f9f7f4 2px 5px);
  transform:skewY(3deg);
  box-shadow:8px 8px 14px rgba(60,45,40,.13);
}
.reference-pedestal,.reference-swirl,.hero-side-note{display:none}
.book-shadow{
  position:absolute;
  z-index:1;
  left:50%;
  bottom:42px;
  width:420px;
  height:45px;
  border-radius:50%;
  background:rgba(79,54,48,.17);
  filter:blur(17px);
  transform:translateX(-50%);
  animation:shadow-loop 5.5s ease-in-out infinite;
}
.book-heart{
  position:absolute;
  z-index:2;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:rgba(255,255,255,.82);
  color:#d85e78;
  box-shadow:0 8px 25px rgba(170,11,50,.12);
  font-size:13px;
  animation:heart-loop 4.8s ease-in-out infinite;
}
.heart-one{left:18%;top:31%}
.heart-two{right:12%;top:23%;animation-delay:.8s}
.heart-three{left:10%;top:55%;width:22px;height:22px;font-size:9px;animation-delay:1.5s}
.heart-four{right:17%;top:57%;width:24px;height:24px;font-size:10px;animation-delay:2.1s}
.heart-five{left:27%;top:18%;width:20px;height:20px;font-size:8px;animation-delay:2.8s}
.hero-feature-strip{
  margin-top:0;
  background:rgba(255,255,255,.9);
}
.hero-feature-strip p br{display:block}
@keyframes book-loop{
  0%,100%{transform:translateX(-50%) translateY(0) rotate(.2deg)}
  50%{transform:translateX(-50%) translateY(-14px) rotate(-.35deg)}
}
@keyframes shadow-loop{
  0%,100%{opacity:.8;transform:translateX(-50%) scaleX(1)}
  50%{opacity:.48;transform:translateX(-50%) scaleX(.84)}
}
@keyframes heart-loop{
  0%,100%{opacity:.55;transform:translateY(0) scale(.92)}
  50%{opacity:1;transform:translateY(-18px) scale(1.08)}
}
@media(max-width:1100px){
  .hero-reference-inner{grid-template-columns:1fr;grid-template-rows:auto 510px;height:auto;gap:10px}
  .hero-reference .hero-copy{margin:30px auto 0}
  .reference-book-art{height:510px}
  .reference-book{width:330px}
  .hero-reference .hero-actions{justify-content:flex-start}
}
@media(max-width:760px){
  .hero-reference{padding:28px 18px 24px}
  .hero-reference-inner{grid-template-rows:auto 405px}
  .hero-reference .hero-copy{width:100%;text-align:left}
  .hero-kicker{margin-left:0;text-align:center;font-size:9px}
  .reference-title{width:330px;height:225px;margin:auto}
  .ways-line{font-size:51px}.heart-line{top:51px;font-size:91px}.beats-line{left:145px;bottom:0;font-size:70px}
  .hero-reference .hero-copy h2{margin:12px 0 16px;text-align:center;font-size:25px}
  .hero-reference .micro-divider{width:230px;margin:0 auto 20px}
  .hero-reference .tagline{margin:0 0 24px;text-align:center;font-size:19px}
  .hero-reference .hero-actions{grid-template-columns:1fr 1fr;gap:10px}
  .hero-reference .btn{min-width:0;min-height:52px;font-size:15px}
  .reference-book-art{height:405px}
  .reference-book{bottom:30px;width:250px}
  .book-shadow{bottom:35px;width:265px}
  .heart-one{left:5%}.heart-two{right:2%}.heart-three{left:2%}.heart-four{right:5%}
}

/* Final mobile delivery pass */
@media(max-width:620px){
  body{font-size:15px}
  .navbar{min-height:74px;padding:12px 16px}
  .author-brand{font-size:13px;white-space:nowrap}
  .mobile-menu-button{width:42px;height:42px}
  .nav-links{left:10px;right:10px;padding:10px 18px;border-radius:8px}
  .nav-links a{padding:13px 0}

  .hero-reference{padding:24px 14px 20px}
  .hero-reference-inner{grid-template-rows:auto 360px}
  .reference-book-art{height:360px}
  .reference-book{bottom:26px;width:225px}
  .book-shadow{bottom:28px;width:230px}
  .hero-feature-strip{gap:0;padding:8px}
  .hero-feature-strip article{min-height:108px;padding:12px 6px}
  .hero-feature-strip img{width:27px;height:27px}
  .hero-feature-strip h3{font-size:8px;line-height:1.25}
  .hero-feature-strip p{font-size:9px;line-height:1.45}

  .card-section{margin:0 12px 32px;padding:28px 14px}
  .section-title{margin-bottom:22px}
  .section-title h2{font-size:31px}
  .section-title p{font-size:13px;line-height:1.5}
  .duel-grid{gap:14px}
  .duel-card,.blue-card{min-height:0;grid-template-columns:105px minmax(0,1fr);gap:14px;padding:12px;text-align:left}
  .duel-card img{width:105px;height:155px;margin:0;border-radius:7px}
  .blue-card img{grid-column:1;grid-row:1}.blue-card>div{grid-column:2;grid-row:1}
  .duel-card h3{font-size:26px}.duel-card p{font-size:12px;line-height:1.5;margin:9px 0}.duel-card blockquote{font-size:16px}
  .vs-badge{width:58px;height:58px;font-size:25px}

  .heartbeats{padding:30px 12px 42px}
  .heartbeat-path{height:180px}
  .heartbeat-path svg{height:175px}
  .btn.small{max-width:100%;font-size:12px;padding:12px 16px}

  .journey-section{margin:0 10px 34px;padding:28px 14px}
  .journey-tabs{display:flex;grid-template-columns:none;gap:4px;overflow-x:auto;padding:0 0 12px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .journey-tabs::-webkit-scrollbar{display:none}
  .journey-tab{min-width:125px;flex:0 0 125px;padding:12px 8px;scroll-snap-align:start}
  .journey-detail{min-height:0;display:grid;grid-template-columns:55px 1fr;gap:12px;padding:20px 16px;text-align:left}
  .journey-number{font-size:50px}.journey-detail h3{font-size:34px}.journey-detail p:not(.journey-label){font-size:13px;line-height:1.55}.journey-detail blockquote{font-size:18px;margin-top:14px}.journey-detail img{display:none}

  .characters{padding:18px 12px 40px}
  .character-grid{gap:12px}
  .character-card,.character-card.text-character{min-height:184px;grid-template-columns:105px minmax(0,1fr);gap:13px;padding:11px;text-align:left}
  .character-card img,.character-card.text-character img{width:105px;height:160px;margin:0;border-radius:7px;object-position:center 14%}
  .character-card h3{font-size:24px}.character-card small{font-size:14px}.character-card p{font-size:11px;line-height:1.45;margin:8px 0}.character-card button{font-size:12px}

  .quote-strip{margin:0 12px 34px;padding:26px 18px;gap:20px}
  .quote-strip blockquote{font-size:23px}.quote-strip blockquote:not(:last-child){padding-bottom:20px}

  .inside-book{margin:0 10px 34px;padding:28px 16px;gap:24px}
  .inside-book-cover img{max-height:300px}
  .inside-book-copy>h2{font-size:35px}.inside-book-copy>p{font-size:13px;line-height:1.6}
  .story-pillars{gap:9px;margin:20px 0}
  .story-pillars article{min-height:0;padding:15px}
  .story-pillars h3{margin:7px 0 5px}.story-pillars p{font-size:12px}
  .book-meta{gap:18px;padding:14px 0}.inside-book .btn{width:100%}

  .reader-reviews{margin:0 12px 34px;padding:34px 16px}
  .reviews-heading h2{font-size:38px}.reviews-heading>p{font-size:13px}
  .review-feature,.review-stack article{min-height:0;padding:20px}
  .review-feature blockquote{margin:20px 0;font-size:25px}
  .review-stack{gap:12px}.review-stack p{font-size:18px}

  .author-grid{gap:20px}
  .author-avatar img{width:145px;height:145px}.author-avatar span{font-size:30px}
  .author-copy h3{font-size:30px}.author-copy p{font-size:13px;line-height:1.6}
  .author-note{padding:18px}.author-note p{font-size:13px}

  .final-cta{margin:0 12px 32px;padding:26px 16px;gap:18px}
  .final-cta .cta-book{height:120px;margin:auto}.final-cta .cta-door{display:none}
  .final-cta h2{font-size:32px}.final-cta p{font-size:18px}
  .final-cta .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.final-cta .btn{width:100%}

  .site-footer{padding:42px 18px 20px}
  .footer-main{gap:30px}.footer-column{gap:10px}.footer-bottom{margin-top:32px}

  .site-modal:not(.heartbeat-modal){overflow-y:auto}
  .character-modal[open],.author-modal[open]{display:block}
  .character-modal-visual{min-height:220px;height:220px}
  .character-modal-visual img{object-position:center 14%}
  .character-modal-copy,.author-modal-copy{padding:30px 22px}
  .character-modal-copy h2,.author-modal-copy h2{font-size:42px}
  .character-modal-copy [data-character-description]{font-size:13px;line-height:1.6}
  .character-modal-copy blockquote{font-size:19px;margin-top:20px}

  .community-nav{height:auto;min-height:154px;display:grid;align-content:start;gap:12px;padding:16px}
  .community-nav .author-brand{margin:0 auto 8px}
  .community-nav-links{width:100%;display:flex;justify-content:center;gap:12px 16px}
  .community-nav-links a:not(.nav-cta){padding:7px 0}
  .community-nav-links .nav-cta{width:100%;margin:0;padding:13px;text-align:center}
  .community-main{padding-left:16px;padding-right:16px}
  .community-intro{padding-top:14px}
}
