:root{--navy:#122b3c;--ink:#183244;--gold:#b89152;--light:#f6f5f1;--muted:#5b6870;--line:#dce0df;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--light);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.13}h1{font-size:clamp(3.1rem,6.8vw,6.2rem);letter-spacing:-.045em}h2{font-size:clamp(2.3rem,4vw,3.5rem);letter-spacing:-.035em}h3{font-size:1.7rem}p+p{margin-top:1.2em}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.eyebrow{text-transform:uppercase;font-size:.75rem;letter-spacing:.19em;font-weight:600;color:var(--gold);display:block;margin-bottom:21px}.btn{display:inline-flex;gap:22px;align-items:center;justify-content:center;padding:14px 25px;background:var(--navy);color:white;border:1px solid var(--navy);font-size:.875rem;border-radius:2px;transition:background .2s,transform .2s}.btn:hover{background:#294c62;transform:translateY(-2px)}.btn.gold{background:#d9bb82;color:#142c3d;border-color:#d9bb82}.btn.outline{background:transparent;border-color:#b6bebf;color:var(--ink)}.text-link{font-size:.875rem;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-flex;gap:24px;align-items:center}.arrow{font-size:1.25rem;line-height:1}.site-header{background:var(--light);position:relative;z-index:20;border-bottom:1px solid var(--line)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-family:var(--serif);line-height:.96;font-size:1.52rem;letter-spacing:-.025em;display:flex;align-items:center;gap:13px;min-width:210px}.brand-mark{width:31px;height:38px;object-fit:cover;object-position:left}.brand small{font-family:Arial,sans-serif;font-size:.58rem;letter-spacing:.26em;display:block;margin-bottom:7px}.nav{display:flex;align-items:center;gap:25px;font-size:.875rem}.nav>a,.nav summary{padding:8px 0}.nav .active{color:#8a652d}.nav details{position:relative}.nav summary{cursor:pointer;list-style:none}.nav summary:after{content:none;margin-left:7px}.dropdown{position:absolute;left:-20px;top:40px;width:210px;background:var(--light);padding:15px 20px;box-shadow:0 8px 24px #102b3c18;border:1px solid var(--line)}.dropdown a{display:block;padding:8px 0}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:7px 15px}.hero{position:relative;color:#fff;background:var(--navy);overflow:hidden}.hero-bg{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center;opacity:.47}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102b3cee 0%,#102b3cb0 42%,#102b3c10 100%)}.hero-inner{position:relative;z-index:1;min-height:660px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:30px;padding-top:68px;padding-bottom:70px}.hero .eyebrow{color:#e4c78d}.hero h1{max-width:640px}.hero h1 em{color:#e2c28b;font-weight:400}.hero-copy>p{max-width:410px;color:#e1e5e6;line-height:1.8;margin-top:26px;font-size:1.05rem}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin-top:32px}.hero .text-link{color:#fff}.hero-books{width:100%;max-width:550px;filter:drop-shadow(0 25px 24px #0005);margin:auto}.hero-caption{display:flex;gap:12px;align-items:center;justify-content:center;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#e5e8e8;margin-top:20px}.hero-caption:before{content:'';width:24px;height:1px;background:#d6bd87}.journey-bar{border-bottom:1px solid var(--line);padding:26px 0}.journey-bar .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.journey-bar p{font-family:var(--serif);font-size:1.25rem}.journey-bar span{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.section{padding:105px 0}.section.white{background:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.split p{color:var(--muted);margin-top:25px}.split .text-link{margin-top:28px}.photo-frame{position:relative}.photo-frame img{width:100%;aspect-ratio:1.16;object-fit:cover}.photo-frame:after{content:'';position:absolute;inset:18px -18px -18px 18px;border:1px solid #b8915260;z-index:-1}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:46px}.section-head h2{max-width:650px}.volumes{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:48px}.volume{padding:35px 34px 16px 0;position:relative}.volume+.volume{padding-left:34px;border-left:1px solid var(--line)}.volume .number{font-family:var(--serif);color:#b49b6f;font-size:2.5rem;display:block;margin-bottom:24px}.volume h3{font-size:1.65rem;margin-bottom:18px}.volume p{color:var(--muted);font-size:.94rem}.status{display:inline-block;font-size:.69rem;text-transform:uppercase;letter-spacing:.13em;color:#69767b;margin:25px 0 10px}.status.available{color:#7b602e}.quote-section{background:var(--navy);color:white;text-align:center;padding:78px 0}.quote-section blockquote{font-family:var(--serif);font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.5;max-width:850px;margin:15px auto 30px}.quote-author{display:flex;align-items:center;gap:15px;justify-content:center;font-size:.875rem;text-align:left}.quote-author img{width:54px;height:54px;border-radius:50%;object-fit:cover}.quote-author span{display:block;color:#bfcbd1;font-size:.75rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.card img{width:100%;aspect-ratio:1.4;object-fit:cover;transition:transform .35s}.card .card-image{overflow:hidden;background:#e5e5df;margin-bottom:22px}.card:hover img{transform:scale(1.035)}.card .eyebrow{margin-bottom:12px;font-size:.69rem}.card h3{font-size:1.65rem;line-height:1.23}.card p{font-size:.94rem;color:var(--muted);margin-top:15px}.card .text-link{margin-top:20px}.song-banner{display:grid;grid-template-columns:1fr 1fr;background:#eaece7}.song-banner .song-image{width:100%;height:100%;min-height:370px;object-fit:cover}.song-copy{padding:65px 70px}.song-copy p{color:var(--muted);margin-top:24px}.footer{background:var(--navy);color:#e4e9ec;padding:65px 0 25px}.footer-top{display:flex;justify-content:space-between;gap:50px}.footer .brand{font-size:2rem}.footer p{font-size:.875rem;color:#b0c1ca;margin-top:20px;max-width:320px}.footer-links{display:flex;gap:65px;font-size:.875rem}.footer-links div{display:flex;flex-direction:column;gap:10px}.footer-bottom{border-top:1px solid #ffffff20;margin-top:55px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#b0c1ca;font-size:.75rem}.page-heading{padding:65px 0 58px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:.75rem;color:var(--muted);margin-bottom:35px}.page-heading h1{font-size:clamp(2.8rem,5.5vw,5rem);max-width:1000px}.page-heading .lead{max-width:730px;color:var(--muted);font-size:1.1rem;margin-top:24px}.article{max-width:800px;margin:auto;padding:65px 0 90px;font-size:1.1rem;overflow-wrap:anywhere}.article h2,.article h3,.article h4{margin:35px 0 20px}.article p{margin:0 0 24px}.article a{text-decoration:underline;text-underline-offset:4px}.article img{max-height:650px;object-fit:contain;margin:30px auto}.article figure{margin:35px 0}.article figcaption{font-size:.8rem;color:var(--muted);text-align:center}.article iframe{width:100%;aspect-ratio:16/9;height:auto;border:0}.article>img.portrait{width:400px;max-height:430px;object-fit:cover;margin:0 0 35px}.article blockquote{border-left:2px solid var(--gold);padding-left:25px;font-family:var(--serif);font-size:1.5rem}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 28px}.gallery .card img{aspect-ratio:1.25}.gallery .card h3{font-size:1.35rem}.people .card img{aspect-ratio:1.05;object-position:top}.article-nav{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:30px;margin-top:45px;font-size:.875rem}.faq{max-width:820px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq summary{font-family:var(--serif);font-size:1.45rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:30px}.faq summary:after{content:none;font-family:Arial;color:var(--gold)}.faq details[open] summary:after{content:none}.faq details p{color:var(--muted);padding:20px 40px 0 0}.shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.product{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:25px;border:1px solid var(--line);background:#fff;padding:35px}.product img{max-height:310px;margin:auto}.product p{color:var(--muted);font-size:.875rem;margin-top:18px}.price{font-family:var(--serif);font-size:2rem;margin:20px 0}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.email{font-size:clamp(1.1rem,2.4vw,1.8rem);font-family:var(--serif);overflow-wrap:anywhere;display:block;margin:25px 0}.video{background:#0f2635;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}.video iframe{width:100%;height:100%;border:0}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:white;z-index:100}.skip:focus{top:10px}.not-found{text-align:center;padding:100px 20px}.article ol,.article ul{padding-left:25px}
@media(min-width:1600px){.hero-inner{min-height:750px}}@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.nav{gap:17px}.header-inner{gap:15px}.brand{min-width:170px;font-size:1.3rem}.header-inner>.btn{display:none}.split{gap:55px}.hero-inner{min-height:610px}.song-copy{padding:40px}.product{padding:25px;grid-template-columns:1fr}.product img{height:240px}.product>div{text-align:center}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:82px}.brand{font-size:1.35rem}.menu-toggle{display:block}.nav{display:none;position:absolute;top:82px;left:0;right:0;padding:20px;background:var(--light);box-shadow:0 15px 20px #122b3c15;align-items:stretch}.nav.open{display:flex;flex-direction:column;gap:6px}.nav>a,.nav summary{padding:10px}.dropdown{position:static;box-shadow:none;border:0;padding:4px 25px}.hero-inner{grid-template-columns:1fr;padding-top:55px;padding-bottom:35px;gap:30px}.hero h1{font-size:clamp(3.4rem,12vw,5rem)}.hero-copy>p{font-size:1rem;max-width:100%}.hero-books{max-width:390px}.hero-caption{margin-top:0}.hero-bg{object-position:70% center}.hero:after{background:linear-gradient(180deg,#102b3cdf,#102b3c75)}.journey-bar .wrap{align-items:start;gap:14px;flex-direction:column}.journey-bar p{font-size:1.15rem}.journey-bar span{font-size:.65rem}.section{padding:65px 0}.split{grid-template-columns:1fr;gap:45px}.split.reverse .photo-frame{order:2}.photo-frame:after{inset:12px -8px -12px 12px}.volumes{grid-template-columns:1fr;margin-top:30px}.volume,.volume+.volume{padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.volume .number{float:left;width:60px;margin-bottom:10px;font-size:2rem}.volume h3{margin-left:60px;min-height:42px}.volume .status{margin-top:15px}.cards,.gallery{grid-template-columns:1fr 1fr;gap:30px 20px}.cards:not(.people):not(.gallery){grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}.song-banner{grid-template-columns:1fr}.song-banner .song-image{min-height:0;height:270px}.song-copy{padding:40px 25px}.quote-section{padding:60px 0}.footer-top{flex-direction:column}.footer-links{gap:60px}.footer-bottom{flex-direction:column}.page-heading{padding:40px 0}.page-heading h1{font-size:2.8rem}.article{padding:40px 0 65px;font-size:1rem}.shop-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.product{grid-template-columns:1fr 1fr;gap:20px;padding:25px}.product>div{text-align:left}.product img{height:auto}.faq summary{font-size:1.2rem}.card h3,.gallery .card h3{font-size:1.3rem}.page-heading .lead{font-size:1rem}.article-nav{flex-direction:column}.contact-grid{gap:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Refined navigation and book call to action. */
.header-inner{min-height:108px;gap:22px}
.nav{gap:4px;font-size:1.0625rem;font-weight:500;line-height:1.4}
.nav>a,.nav summary{position:relative;padding:13px 15px;border-radius:9px;transition:background .2s,color .2s;white-space:nowrap}
.nav>a:hover,.nav>a:focus-visible,.nav summary:hover,.nav details[open]>summary{background:#b891521a;color:#815a25}
.nav>a.active{background:#b8915212;color:#815a25}
.nav>a:after{content:'';position:absolute;left:15px;right:15px;bottom:6px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:center;transition:transform .2s}
.nav>a:hover:after,.nav>a.active:after{transform:scaleX(1)}
.dropdown{top:100%;left:0;width:235px;padding:10px;border-radius:12px;border-color:#b8915230;box-shadow:0 16px 40px #122b3c1c;font-size:1rem}
.dropdown a{padding:11px 13px;border-radius:7px;transition:background .2s,color .2s}
.dropdown a:hover,.dropdown a:focus-visible{background:#b891521a;color:#815a25}
.header-inner>.book-cta{display:inline-flex;flex-shrink:0;gap:16px;padding:11px 14px 11px 22px;min-height:54px;border:1px solid #c6a366;border-radius:999px;background:linear-gradient(135deg,#ead1a2,#ccaa6c);color:#122b3c;font-size:1rem;font-weight:600;box-shadow:0 5px 15px #815a2520,inset 0 1px 0 #fff7;transition:transform .2s,box-shadow .2s,background .2s}
.book-cta .arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#122b3c;color:#f5e5c7;transition:transform .2s}
.header-inner>.book-cta:hover{background:linear-gradient(135deg,#f2deb8,#d9b779);transform:translateY(-2px);box-shadow:0 9px 22px #815a2530,inset 0 1px 0 #fff8}
.book-cta:hover .arrow{transform:rotate(9deg)}
.menu-toggle{border-radius:8px;font-size:1rem;padding:8px 14px}

/* A shuffled, responsive contributor carousel; the complete grid is the no-JS fallback. */
.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}
.carousel-controls[hidden],.is-carousel .card[hidden]{display:none}
.carousel-controls button{min-height:46px;border:1px solid #b7bfc1;background:transparent;color:var(--ink);border-radius:999px;transition:background .2s,color .2s,border-color .2s}
.carousel-controls button:hover{background:var(--navy);color:white;border-color:var(--navy)}
.carousel-play{padding:8px 20px;font-size:1rem}
.carousel-navigation{display:flex;align-items:center;gap:12px}
.carousel-navigation>span{color:var(--muted);font-size:.875rem;margin-right:8px;font-variant-numeric:tabular-nums}
.carousel-navigation>button{width:46px;font-size:1.35rem}
.is-carousel .people{grid-template-columns:repeat(3,minmax(0,1fr))}
.is-carousel .card h3{min-height:2.5em}
@media(max-width:1150px) and (min-width:901px){.header-inner{gap:12px}.nav{font-size:1rem}.nav>a,.nav summary{padding:12px 10px}.header-inner>.book-cta{padding-left:17px;gap:9px}.brand{min-width:165px}.wrap{width:calc(100% - 48px)}}
@media(max-width:900px){.header-inner{min-height:88px;gap:12px}.header-inner>.book-cta{margin-left:auto;min-height:46px;font-size:.9375rem;padding:8px 11px 8px 17px;gap:10px}.menu-toggle{display:block;order:3}.nav{display:none;position:absolute;top:100%;left:0;right:0;padding:16px 20px 22px;background:var(--light);border-bottom:1px solid var(--line);box-shadow:0 16px 25px #122b3c16;align-items:stretch;font-size:1.125rem}.nav.open{display:flex;flex-direction:column;gap:5px}.nav>a,.nav summary{padding:13px 16px}.dropdown{position:static;width:auto;margin-top:5px;box-shadow:none;border:0;padding:5px 12px;font-size:1rem;background:#b891520a}.nav>a:after{display:none}.is-carousel .people{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.header-inner{flex-wrap:wrap;padding-top:15px;padding-bottom:15px;gap:10px}.header-inner .brand{font-size:1.2rem;min-width:0;flex:1 1 calc(100% - 95px)}.menu-toggle{order:0}.header-inner>.book-cta{order:1;margin-left:0;min-height:44px}.is-carousel .people{grid-template-columns:minmax(0,1fr)}.carousel-controls{gap:12px;flex-wrap:wrap}.carousel-play{font-size:.875rem;padding:8px 15px}.is-carousel .card h3{min-height:0}.is-carousel .card .card-image{max-height:430px}}

/* Supplied paperback artwork, with its original upright arrangement. */
.hero-paperbacks{width:100%;max-width:550px;margin:0 auto 22px;filter:drop-shadow(8px 22px 18px #0005)}
.hero-paperbacks-image{width:100%;height:auto;aspect-ratio:1119/889;clip-path:polygon(5.004% 4.049%,5.273% 3.487%,5.898% 2.925%,6.792% 2.700%,51.832% 5.174%,51.832% 7.649%,96.336% 10.349%,96.247% 94.938%,49.687% 97.638%,48.883% 97.413%,47.989% 96.625%,47.989% 89.876%,6.792% 92.126%,5.809% 91.901%,5.004% 91.339%)}
.hero-caption{position:relative;font-size:.8125rem;letter-spacing:.1em}
@media(max-width:760px){.hero-paperbacks{max-width:410px;margin-top:4px;margin-bottom:18px}}

/* A clearer, more distinctive wordmark. */
.brand-title{display:block;white-space:nowrap}
.brand-title em{font-weight:400;color:#a57735}
.site-header .brand{min-width:235px;font-size:1.8rem;letter-spacing:-.045em;line-height:1.1;padding:8px 0}
.site-header .brand small{display:flex;align-items:center;gap:10px;font-size:.6875rem;letter-spacing:.25em;font-weight:600;color:#7f5b28;margin-bottom:5px}
.site-header .brand small:after{content:'';height:1px;width:35px;background:#b89152}
.site-header .brand-title{transition:color .2s}
.site-header .brand:hover .brand-title{color:#456175}
.footer .brand-title em{color:#e2c28b}
@media(max-width:1150px) and (min-width:901px){.site-header .brand{min-width:200px;font-size:1.55rem}.nav>a,.nav summary{padding-left:8px;padding-right:8px}}
@media(max-width:900px){.site-header .brand{min-width:210px;font-size:1.65rem}}
@media(max-width:540px){.site-header .brand{min-width:0;font-size:1.65rem}.site-header .brand small{font-size:.625rem}}

/* Editorial product cards, confined to the shop section. */
.shop-products{padding-top:64px;padding-bottom:84px}
.shop-products .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:stretch}
.shop-products .product{display:flex;flex-direction:column;gap:0;min-width:0;align-items:stretch;padding:0;border:1px solid #122b3c17;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 12px 32px #122b3c08}
.shop-products .shop-product-stage{position:relative;isolation:isolate;display:flex;justify-content:center;align-items:center;min-height:380px;padding:38px 30px;overflow:hidden;text-align:center;background:#ece8de}
.shop-products .shop-product-stage:before{content:'';position:absolute;width:310px;height:310px;border:1px solid #b8915236;border-radius:50%;z-index:-1}
.shop-products .shop-product-stage:after{content:'';position:absolute;left:12%;right:12%;bottom:29px;height:1px;background:linear-gradient(90deg,transparent,#b8915259,transparent);z-index:-1}
.shop-products .shop-product-stage-ebook{background:#e9edeb}
.shop-products .shop-product-stage-ebook:before{border-color:#122b3c17}
.shop-products .shop-product-stage img{position:relative;width:auto;height:300px;max-width:100%;max-height:none;object-fit:contain;margin:0;filter:drop-shadow(10px 15px 12px #122b3c26)}
.shop-products .shop-product-stage-paperback img{transform:rotate(-3deg)}
.shop-products .shop-product-copy{display:flex;flex-direction:column;flex:1;padding:32px 34px 34px;text-align:left}
.shop-products .shop-product-copy .eyebrow{margin-bottom:12px;color:#815f2e;font-size:.875rem;letter-spacing:.18em}
.shop-products .shop-product-title{display:flex;justify-content:space-between;align-items:baseline;gap:20px}
.shop-products .shop-product-title h2{font-size:clamp(2.1rem,3vw,2.75rem);letter-spacing:-.035em}
.shop-products .price{flex-shrink:0;margin:0;font-size:1.9rem;line-height:1.2;color:var(--navy)}
.shop-products .shop-product-description{margin:18px 0 27px;font-size:1rem;line-height:1.65;color:var(--ink)}
.shop-products .shop-product-description span{display:block;margin-top:4px;color:var(--muted);font-size:.875rem;letter-spacing:.025em}
.shop-products .shop-product-copy .btn{justify-content:space-between;width:100%;min-height:56px;margin-top:auto;padding:13px 18px 13px 21px;border-radius:6px;border-color:var(--navy);background:var(--navy);font-size:.9375rem;font-weight:600;box-shadow:0 4px 10px #122b3c12}
.shop-products .shop-product-copy .btn .arrow{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#ffffff12;color:#e2c28b}
.shop-products .shop-product-copy .btn:hover{background:#25475b;border-color:#25475b;box-shadow:0 7px 15px #122b3c20}
.shop-products .shop-price-note{max-width:760px;margin:24px auto 0;color:var(--muted);font-size:.8125rem;text-align:center;line-height:1.7}
.shop-products .shop-journey{display:grid;grid-template-columns:1fr 1.3fr;gap:56px;max-width:none;margin-top:64px;padding:46px 0 0;border-top:1px solid #b8915252;font-size:1rem}
.shop-products .shop-journey h2{margin:0;font-size:clamp(2.1rem,3vw,2.8rem)}
.shop-products .shop-journey p{margin:0;color:var(--muted)}
.shop-products .shop-journey p+p{margin-top:18px}
@media(max-width:900px){.shop-products .shop-grid{gap:24px}.shop-products .shop-product-copy{padding:27px 25px}.shop-products .shop-product-title{gap:12px}.shop-products .shop-product-title h2{font-size:2.1rem}.shop-products .price{font-size:1.65rem}}
@media(max-width:760px){.shop-products{padding-top:38px;padding-bottom:60px}.shop-products .shop-grid{grid-template-columns:minmax(0,1fr);gap:28px}.shop-products .shop-product-stage{min-height:340px;padding:30px}.shop-products .shop-product-stage img{height:280px}.shop-products .shop-product-stage:before{width:280px;height:280px}.shop-products .shop-product-stage:after{bottom:22px}.shop-products .shop-product-copy{padding:26px}.shop-products .shop-product-title h2{font-size:2.35rem}.shop-products .price{font-size:1.85rem}.shop-products .shop-price-note{text-align:left;margin-top:22px}.shop-products .shop-journey{grid-template-columns:1fr;gap:24px;margin-top:42px;padding-top:34px}}
@media(max-width:380px){.shop-products .shop-product-copy{padding:24px 20px}.shop-products .shop-product-title h2{font-size:2rem}.shop-products .price{font-size:1.65rem}}

/* Homepage hero actions: a warm primary and a clearly playable secondary. */
.hero .hero-actions{gap:14px;margin-top:34px;align-items:stretch}
.hero .hero-actions>.hero-action{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:58px;padding:12px 22px;border:1px solid transparent;border-radius:999px;font-size:1.0625rem;font-weight:600;line-height:1.35;text-align:center;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.hero .hero-actions>.hero-action-primary{gap:18px;padding-right:14px;color:#122b3c;background:linear-gradient(135deg,#ecd4a7,#d5ae69);border-color:#e5c48b;box-shadow:0 7px 20px #0003,inset 0 1px 0 #fff7}
.hero .hero-action-primary .arrow{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:#122b3c;color:#f4e2be;font-size:1.2rem}
.hero .hero-actions>.hero-action-secondary{color:#fff5e3;background:#122b3c70;border-color:#e4c78d99;box-shadow:inset 0 1px 0 #ffffff0a}
.hero .hero-action-play{display:grid;place-items:center;flex:none;width:30px;height:30px;border:1px solid #e4c78d99;border-radius:50%;color:#e9cc96}
.hero .hero-action-play svg{display:block;width:13px;height:13px;margin-left:2px;fill:currentColor}
.hero .hero-actions>.hero-action:focus-visible{outline:3px solid #fff4d9;outline-offset:5px}
@media(hover:hover){.hero .hero-actions>.hero-action-primary:hover{background:linear-gradient(135deg,#f4dfb7,#e0bc7b);box-shadow:0 10px 24px #0004,inset 0 1px 0 #fff8;transform:translateY(-2px)}.hero .hero-actions>.hero-action-secondary:hover{background:#e4c78d1f;border-color:#e4c78d;transform:translateY(-2px)}}
.hero .hero-actions>.hero-action:active{transform:translateY(0)}
@media(max-width:540px){.hero .hero-actions{gap:12px}.hero .hero-actions>.hero-action{width:100%;min-height:58px}}
@media(prefers-reduced-motion:reduce){.hero .hero-actions>.hero-action,.hero .hero-actions>.hero-action:hover,.hero .hero-actions>.hero-action:active{transition:none;transform:none}}

/* FAQ: additive rules, scoped away from navigation disclosure controls. */
.faq-section{background:linear-gradient(180deg,#f6f5f1 0%,#efeee8 100%);padding-top:76px;padding-bottom:100px}
.faq-layout{display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,2fr);gap:clamp(42px,6vw,90px);align-items:start}
.faq-intro{padding-top:12px}
.faq-intro .eyebrow{margin-bottom:20px}
.faq-intro h2{font-size:clamp(2.1rem,3.3vw,3rem);line-height:1.13}
.faq-intro p{font-size:1rem;color:var(--muted);max-width:235px;margin-top:22px;line-height:1.8}
.faq-intro-rule{width:44px;height:1px;background:var(--gold);margin:30px 0 16px}
.faq-count{color:var(--muted);font-size:.8125rem;letter-spacing:.13em;text-transform:uppercase}
.faq.faq-refined{width:100%;max-width:none;margin:0;min-width:0}
.faq-refined .faq-item{padding:0;border:1px solid #d9ddd9;border-radius:5px;background:#ffffffb8;margin:0 0 12px;box-shadow:0 2px 4px #122b3c02;transition:border-color .24s,background-color .24s,box-shadow .24s}
.faq-refined .faq-item:hover{border-color:#b9bbaa;background:#fff}
.faq-refined .faq-item[open]{background:#fff;border-color:#c7b38d;box-shadow:0 8px 24px #122b3c05}
.faq-refined .faq-item summary{display:grid;grid-template-columns:25px minmax(0,1fr) 29px;gap:20px;align-items:center;padding:25px 26px;list-style:none;font-size:1.3rem;line-height:1.35;cursor:pointer;border-radius:4px;user-select:none}
.faq-refined .faq-item summary::-webkit-details-marker{display:none}
.faq-refined .faq-item summary::marker{content:''}
.faq-refined .faq-item summary:after{content:none}
.faq-refined .faq-item summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.faq-refined .faq-number{font-family:Arial,Helvetica,sans-serif;font-size:.8125rem;letter-spacing:.05em;color:#897142}
.faq-refined .faq-question{overflow-wrap:anywhere}
.faq-refined .faq-icon{position:relative;display:block;width:29px;height:29px;border:1px solid #d8c8aa;border-radius:50%;color:#97743c;transition:transform .3s ease,background-color .3s ease}
.faq-refined .faq-icon:before,.faq-refined .faq-icon:after{content:'';position:absolute;left:8px;right:8px;top:13px;height:1px;background:currentColor}
.faq-refined .faq-icon:after{transform:rotate(90deg)}
.faq-refined .faq-item[open] .faq-icon{transform:rotate(45deg);background:#f5efe3}
.faq-refined .faq-item[data-faq-state="closing"] .faq-icon{transform:rotate(0deg);background:transparent}
.faq-refined .faq-answer{padding:0 75px 27px 71px}
.faq-refined .faq-answer p{padding:0;margin:0;font-size:1rem;line-height:1.85;color:var(--muted);overflow-wrap:anywhere}
.faq-refined .faq-contact{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 0 0;margin-top:26px;border-top:1px solid #d4d7d0}
.faq-refined .faq-contact p{font-family:var(--serif);font-size:1.2rem;color:var(--ink)}
.faq-refined .faq-contact .text-link{flex-shrink:0;font-size:.875rem;color:#6e532c;gap:18px}
@media(max-width:900px){.faq-layout{grid-template-columns:1fr;gap:34px}.faq-intro h2 br{display:none}.faq-intro p{max-width:none;margin-top:15px}.faq-intro-rule,.faq-count{display:none}.faq-section{padding-top:48px;padding-bottom:70px}}
@media(max-width:540px){.faq-refined .faq-item summary{grid-template-columns:20px minmax(0,1fr) 27px;gap:12px;padding:21px 17px;font-size:1.15rem}.faq-refined .faq-icon{width:27px;height:27px}.faq-refined .faq-icon:before,.faq-refined .faq-icon:after{left:7px;right:7px;top:12px}.faq-refined .faq-answer{padding:0 24px 24px 49px}.faq-refined .faq-answer p{font-size:1rem}.faq-refined .faq-contact{align-items:flex-start;flex-direction:column;gap:14px;margin-top:25px}.faq-section{padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){.faq-refined .faq-item,.faq-refined .faq-icon{transition:none}}

.faq-layout{display:block;max-width:940px}.faq-refined .faq-contact{justify-content:center}

/* The book's gold title lettering, as a pure-text header logo. */
.site-header .brand{width:250px;min-width:250px;flex-shrink:0;padding:0}
.site-header .brand-logo{display:block;width:100%;height:auto;max-height:92px;object-fit:contain;mix-blend-mode:multiply}
@media(max-width:1150px) and (min-width:901px){.site-header .brand{width:200px;min-width:200px}}
@media(max-width:900px){.site-header .brand{width:225px;min-width:225px}}
@media(max-width:540px){.site-header .brand{width:auto;min-width:0;flex:1 1 calc(100% - 95px)}.site-header .brand-logo{width:220px;max-width:100%;max-height:78px}}

/* Contact form prepares an email for the visitor to review and send. */
.contact-section .contact-grid{align-items:start;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:90px}
.contact-form{display:grid;gap:22px;max-width:620px;margin-top:30px}
.contact-field{display:grid;gap:8px}
.contact-field label{font-size:1rem;font-weight:600;color:var(--ink)}
.contact-field input,.contact-field textarea{display:block;width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:inherit;line-height:1.5;transition:border-color .2s,box-shadow .2s}
.contact-field textarea{resize:vertical;min-height:170px}
.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-color:var(--gold)}
.contact-help,.contact-status{font-size:.875rem;color:var(--muted);line-height:1.7;max-width:540px}
.contact-status:empty{display:none}
.contact-form .btn{justify-self:start;min-height:54px;font-size:1rem;font-weight:600;border-radius:6px}
.contact-publisher{border-top:3px solid var(--gold);padding:30px 0}
.contact-publisher p{margin:24px 0;color:var(--muted)}
@media(max-width:900px){.contact-section .contact-grid{grid-template-columns:1fr;gap:48px}.contact-form{max-width:none}.contact-publisher{max-width:620px}}
@media(max-width:540px){.contact-form .btn{width:100%;justify-self:stretch}.contact-section .email{font-size:1.25rem}}

/* Orange, white and black brand restoration. Append after the component CSS. */
:root {
  --navy: #151515;
  --ink: #171717;
  --gold: #b84216;
  --light: #fffaf6;
  --muted: #59534f;
  --line: #e8ddd5;
  --orange: #ff5740;
  --orange-hover: #ff5740;
  --orange-frame: #ffbf91;
  --orange-soft: #fff0e4;
  --brand-gradient: linear-gradient(90deg, #ffd06b 0%, #fa6036 100%);
}

body { background: var(--light); }
.site-header { background: #fff; }
.nav, .nav > a, .nav summary, .dropdown a { color: #111; }
.nav > a.active,
.nav > a:hover,
.nav > a:focus-visible,
.nav summary:hover,
.nav details[open] > summary,
.dropdown a:hover,
.dropdown a:focus-visible { color: #111; background: var(--orange-soft); }
.nav > a:after { background: var(--orange); }
.dropdown { background: #fff; border-color: var(--line); box-shadow: 0 16px 40px #17171714; }

/* Keep the original composition and isolated 3D book renders. */
.hero { color: #fff; background: var(--brand-gradient); }
.hero-bg { opacity: 0; }
.hero:after { background: linear-gradient(90deg, #622400a6, #62240066 58%, transparent); }
.hero .eyebrow,
.hero h1 em,
.hero-copy > p,
.hero .text-link,
.hero-caption { color: #fff; }
.hero-caption:before { background: #fff; }
.journey-bar { background: #fff; border-color: var(--line); }
.page-heading { background: linear-gradient(90deg, #fff2d8, #ffe5dc); }
.song-banner { background: linear-gradient(110deg, #ffe6ad, #ffbe9f); }
.song-copy p { color: #42342b; }
.song-copy .eyebrow { color: #843312; }
.photo-frame:after { border-color: #fa603659; }
.volume .number { color: var(--gold); }
.status, .status.available { color: var(--muted); }
.status.available { color: var(--gold); }
.text-link { text-decoration-color: var(--orange); border-bottom-color: var(--orange); }
.text-link:hover { color: var(--gold); }
.card .card-image { background: #f2e8df; }
.quote-section, .footer, .video { background: #151515; }
.quote-section .eyebrow { color: #ffad78; }
.quote-author span { color: #ccc5c0; }
.footer { color: #fffaf6; }
.footer p, .footer-bottom { color: #cbc5c0; }
.footer .brand-title em { color: #ffad78; }
.footer a:hover { color: #ffad78; }

/* Bright coral buttons with a softer orange frame, including existing
   component-specific selectors so no navy or gold CTA survives the cascade. */
.btn,
.btn.gold,
.btn.outline,
.header-inner > .book-cta,
.hero .hero-actions > .hero-action,
.hero .hero-actions > .hero-action-primary,
.hero .hero-actions > .hero-action-secondary,
.shop-products .shop-product-copy .btn,
.carousel-controls button,
.menu-toggle {
  background: var(--orange);
  color: #fff;
  border-color: var(--orange);
  box-shadow: 0 0 0 4px var(--orange-frame), 0 5px 14px #71301614;
  font-weight: 600;
}
.btn:hover,
.btn.gold:hover,
.btn.outline:hover,
.header-inner > .book-cta:hover,
.hero .hero-actions > .hero-action-primary:hover,
.hero .hero-actions > .hero-action-secondary:hover,
.shop-products .shop-product-copy .btn:hover,
.carousel-controls button:hover,
.menu-toggle:hover {
  background: var(--orange-hover);
  color: #fff;
  border-color: var(--orange-hover);
  box-shadow: 0 0 0 4px #ffaf7b, 0 7px 18px #71301624;
}
.book-cta .arrow,
.hero .hero-action-primary .arrow,
.hero .hero-action-play,
.shop-products .shop-product-copy .btn .arrow {
  color: #fff;
  background: #00000016;
  border-color: #17171733;
}
.hero .hero-actions > .hero-action:focus-visible,
.btn:focus-visible,
.carousel-controls button:focus-visible,
.menu-toggle:focus-visible { outline: 3px solid #171717; outline-offset: 7px; }
.hero .hero-actions { gap: 18px; }

.shop-products .product { border-color: var(--line); box-shadow: 0 12px 32px #17171708; }
.shop-products .shop-product-stage { background: #fff0dc; }
.shop-products .shop-product-stage-ebook { background: #ffe8dc; }
.shop-products .shop-product-stage:before,
.shop-products .shop-product-stage-ebook:before { border-color: #e8814536; }
.shop-products .shop-product-stage:after { background: linear-gradient(90deg, transparent, #f0804d70, transparent); }
.shop-products .shop-product-stage img { filter: drop-shadow(10px 15px 12px #2d1a1426); }
.shop-products .shop-product-copy .eyebrow { color: var(--gold); }
.shop-products .shop-journey { border-color: var(--line); }

.faq-section { background: linear-gradient(180deg, #fffaf6, #fff3e9); }
.faq-refined .faq-item { background: #fff; border-color: var(--line); box-shadow: 0 2px 4px #17171702; }
.faq-refined .faq-item:hover { border-color: #edaf89; }
.faq-refined .faq-item[open] { border-color: #ed9160; box-shadow: 0 8px 24px #71301608; }
.faq-refined .faq-number { color: var(--gold); }
.faq-refined .faq-icon { color: #171717; background: var(--orange); border-color: var(--orange); }
.faq-refined .faq-item[open] .faq-icon { background: #ffb98a; }
.faq-refined .faq-item[data-faq-state="closing"] .faq-icon { background: var(--orange); }
.faq-refined .faq-contact { border-color: var(--line); }
.faq-refined .faq-contact .text-link { color: var(--ink); border-color: var(--orange); }
.faq-refined .faq-contact .text-link:hover { color: var(--gold); }

@media (max-width: 900px) {
  .nav { background: #fff; box-shadow: 0 16px 25px #17171712; }
  .dropdown { background: var(--orange-soft); }
}
@media (max-width: 540px) {
  .hero .hero-actions { gap: 16px; }
}

/* Font Awesome Free: local inline SVG geometry, with no icon-font dependency. */
.icon{display:inline-block;flex:none;width:1em;height:1em;vertical-align:-.125em;fill:currentColor}
.arrow{display:inline-flex;align-items:center;justify-content:center}
.arrow>.icon{width:1em;height:1em}
.book-cta .arrow>.icon,.hero .hero-action-primary .arrow>.icon,.shop-products .shop-product-copy .btn .arrow>.icon{width:15px;height:15px}
.nav .nav-chevron{width:12px;height:12px;margin-left:8px;vertical-align:0;transition:transform .2s}
.nav details[open] .nav-chevron{transform:rotate(180deg)}
.nav summary:after{content:none}
.menu-toggle{align-items:center;justify-content:center;gap:10px}
.menu-icon-open,.menu-icon-close{line-height:1;align-items:center;justify-content:center}
.menu-icon-open{display:inline-flex}.menu-icon-close{display:none}
.menu-toggle[aria-expanded="true"] .menu-icon-open{display:none}
.menu-toggle[aria-expanded="true"] .menu-icon-close{display:inline-flex}
.carousel-controls button{display:inline-flex;align-items:center;justify-content:center;gap:10px}
.carousel-controls [data-playing="true"] .slideshow-play,.carousel-controls [data-playing="false"] .slideshow-pause{display:none}
.carousel-navigation>button>.icon{width:18px;height:18px}
.footer-bottom a[href="#top"]{display:inline-flex;align-items:center;gap:10px}
.faq-refined .faq-icon{display:grid;place-items:center}
.faq-refined .faq-icon:before,.faq-refined .faq-icon:after{content:none}
.faq-refined .faq-icon>.icon{grid-area:1/1;width:13px;height:13px}
.faq-refined .faq-icon>.faq-minus{display:none}
.faq-refined .faq-item[open] .faq-icon,.faq-refined .faq-item[data-faq-state="closing"] .faq-icon{transform:none}
.faq-refined .faq-item[open] .faq-plus{display:none}
.faq-refined .faq-item[open] .faq-minus{display:block}
.faq-refined .faq-item[data-faq-state="closing"] .faq-plus{display:block}
.faq-refined .faq-item[data-faq-state="closing"] .faq-minus{display:none}
@media(max-width:900px){.menu-toggle{display:inline-flex}}
.nav summary::-webkit-details-marker{display:none}
.nav summary::marker{content:''}

/* Supplied trilogy logo: crop only its outer whitespace in the layout. */
.site-header .brand{width:300px;min-width:300px}
.brand-logo-window{position:relative;display:block;width:100%;aspect-ratio:1396/280;overflow:hidden}
.brand-logo-window .brand-logo,.site-header .brand-logo-window .brand-logo{position:absolute;display:block;width:110.029%;max-width:none;height:auto;max-height:none;left:-5.015%;top:-69.643%;object-fit:contain;mix-blend-mode:normal}
.footer .brand{display:block;width:380px;max-width:100%;min-width:0;padding:0;background:transparent;border-radius:0}
.footer-logo{display:block;width:100%;height:auto;overflow:visible}
@media(max-width:1150px) and (min-width:1051px){.site-header .brand{width:250px;min-width:250px}}
@media(max-width:1050px) and (min-width:901px){.site-header .brand{width:200px;min-width:200px}}
@media(max-width:900px){.site-header .brand{width:260px;min-width:260px}}
@media(max-width:540px){.site-header .brand{width:auto;min-width:0;flex:1 1 calc(100% - 95px)}.site-header .brand-logo-window{max-width:300px}}

/* Plain buttons and a quiet monochrome navigation. */
.btn,.btn.gold,.btn.outline,
.header-inner>.book-cta,
.hero .hero-actions>.hero-action,
.hero .hero-actions>.hero-action-primary,
.hero .hero-actions>.hero-action-secondary,
.shop-products .shop-product-copy .btn,
.carousel-controls button,.menu-toggle,
.btn:hover,.btn.gold:hover,.btn.outline:hover,
.header-inner>.book-cta:hover,
.hero .hero-actions>.hero-action-primary:hover,
.hero .hero-actions>.hero-action-secondary:hover,
.shop-products .shop-product-copy .btn:hover,
.carousel-controls button:hover,.menu-toggle:hover{border:0;box-shadow:none}
.hero .hero-action-play{border:0}
.nav,.nav>a,.nav summary,.dropdown a{color:#111}
.nav>a.active,.nav>a:hover,.nav>a:focus-visible,
.nav summary:hover,.nav details[open]>summary,
.dropdown a:hover,.dropdown a:focus-visible{color:#111;background:#f3f3f3}
.nav>a:after{display:none}
.dropdown{background:#fff;border-color:#e5e5e5;box-shadow:0 12px 30px #0000000d}
.site-header .nav a:focus-visible,.site-header .nav summary:focus-visible{outline-color:#111}
.header-inner>.book-cta,.menu-toggle{background:#171717;color:#fff}
.header-inner>.book-cta:hover,.menu-toggle:hover{background:#303030;color:#fff}
.header-inner>.book-cta .arrow{background:#ffffff18;color:#fff;border:0}
.header-inner>.book-cta:hover .arrow{transform:none}
@media(max-width:900px){.nav,.dropdown{background:#fff}.nav{border-color:#e5e5e5}}

/* Center the mobile logo above the navigation controls. */
@media(max-width:900px){
  .site-header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding-top:18px;padding-bottom:18px}
  .site-header .header-inner>.brand{grid-column:1/-1;grid-row:1;justify-self:center;width:min(300px,100%);min-width:0;max-width:100%;order:0}
  .site-header .brand-logo-window{max-width:none}
  .header-inner>.book-cta{grid-column:1;grid-row:2;justify-self:start;margin-left:0;order:0}
  .header-inner>.menu-toggle{grid-column:2;grid-row:2;justify-self:end;order:0}
}

/* Editorial feedback: books first on phones, with the desktop composition retained. */
@media(max-width:760px){
  .hero-inner{padding-top:20px;gap:26px}
  .hero-books-column{grid-row:1;min-width:0}
  .hero-paperbacks{width:min(100%,380px);margin:0 auto 12px}
  .hero-caption{font-size:.75rem;letter-spacing:.07em}
  .hero-copy{grid-row:2}
  .hero:after{background:linear-gradient(180deg,#62240042,#622400a6)}
}
/* Keep the centered logo and place the remaining menu control close beneath it. */
@media(max-width:900px){
  .site-header .header-inner{gap:9px;padding-top:14px;padding-bottom:12px}
}
/* Contributors awaiting their supplied portrait retain a deliberate, readable card. */
.contributor-initials{aspect-ratio:1.05;display:grid;place-items:center;background:#f5eee9;color:#85614d;font:400 clamp(2.8rem,6vw,5rem)/1 var(--serif)}

.contributor-group{width:min(100%,900px);margin:0 auto 56px;padding:18px;background:#fff;border-radius:8px}
.contributor-group img{width:100%;height:auto}
@media(max-width:760px){.contributor-group{padding:8px;margin-bottom:34px}}

/* Supplied yellow-to-orange hero background and unified button color. */
.hero-bg { opacity: 1; object-position: center; }
.hero:after { background: none; }
.hero, .hero .eyebrow, .hero h1 em, .hero-copy > p,
.hero .text-link, .hero-caption { color: #171717; }
.hero-caption:before { background: #171717; }
.page-heading { background: #ffc746 url('/assets/yellow-orange-background.jpg') center / cover no-repeat; color: #171717; }
.page-heading .breadcrumb, .page-heading .lead, .page-heading h1 { color: #171717; }
.header-inner > .book-cta, .menu-toggle,
.header-inner > .book-cta:hover, .menu-toggle:hover { background: var(--orange); }
/* Blog overview: show the entire featured image, including on hover. */
.blog-cards .card .card-image { aspect-ratio: 1.4; display: flex; align-items: center; justify-content: center; }
.blog-cards .card .card-image img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: contain; object-position: center; transform: none; }
