/* FCS Books (books.fullcirclestoryworks.com). Loaded after site.css and music.css on the books site only, so the music
   store is unchanged. Book covers are portrait and are never cropped; titles are long, so the type is smaller than the
   music store's track titles. */

/* Catalog: portrait covers, uncropped */
.books-catalog .card{grid-template-columns:minmax(120px,180px) 1fr}
.books-catalog .card-art img{aspect-ratio:auto;object-fit:contain;border-radius:3px}
.books-catalog .card h2{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.15}
.books-catalog .offers li{flex-direction:column;align-items:flex-start;gap:2px}
.books-catalog .offers .amount{font-size:1.25rem;font-weight:600}

/* Product hero */
.book{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:clamp(32px,5vw,80px);align-items:start;margin-bottom:72px}
.book-cover img{display:block;width:100%;height:auto;border-radius:3px;box-shadow:0 26px 48px rgba(51,35,18,.20),0 4px 10px rgba(51,35,18,.10)}
.book-main .eyebrow{margin-bottom:14px}
.store-page h1.book-title{font-size:clamp(2rem,3.3vw,3.1rem);line-height:1.08;letter-spacing:-.025em;margin:0 0 14px;max-width:22ch}
.book-subtitle{font-size:clamp(1.1rem,1.5vw,1.35rem);color:var(--muted);margin:0 0 30px}
.book-buybox{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;padding:22px 0;border-top:1px solid #d2cbc1;border-bottom:1px solid #d2cbc1;margin-bottom:26px}
.book-price{margin:0;display:flex;flex-direction:column}
.book-price .amount{font-size:2rem;font-weight:600;letter-spacing:-.02em;line-height:1.1}
.book-price .book-offer{font-size:14px;color:var(--muted);margin-top:4px}
/* .store-page a sets link colour copper; the button keeps white text. */
.store-page a.book-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 26px;border-radius:var(--radius);background:var(--copper);color:#fff;text-decoration:none;font-weight:500;transition:background .2s,transform .2s}
.store-page a.book-cta:hover{background:#873716;transform:translateY(-1px);color:#fff}
.book-facts{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--muted);width:100%}
.book-facts li:before{content:"✓ ";color:var(--copper)}
.book-bonus{background:var(--panel);border-left:3px solid var(--copper);padding:18px 22px}
.book-bonus .eyebrow{margin-bottom:6px}
.book-bonus p:last-child{margin:0}

/* Sections */
.book-section{border-top:1px solid var(--line);padding-top:44px;margin-bottom:64px}
.book-section>h2{margin-bottom:22px}
.included{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px}
.included li{background:var(--panel);padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.included li.bonus{background:#f3e6dc}
.included .kind{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--copper)}
.included strong{font-weight:550;line-height:1.35}
.included .size{font-size:13px;color:var(--muted)}
.book-about{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(30px,6vw,90px)}
.book-about p:not(.eyebrow){color:var(--muted)}
.book-buy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:clamp(30px,6vw,90px);align-items:start}
.book-buy-summary h2{margin-bottom:10px}
.book-checklist{list-style:none;margin:18px 0;padding:0;border-top:1px solid #d2cbc1}
.book-checklist li{padding:11px 0 11px 26px;border-bottom:1px solid #d2cbc1;position:relative;font-size:15px}
.book-checklist li:before{content:"✓";position:absolute;left:2px;color:var(--copper);font-weight:600}
.only-here{display:inline-block;margin-left:8px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--copper)}
.book-buy form.buy{margin:0;background:var(--panel);border:0}
.book-buy form.buy h2{font-size:1.5rem}
.book-buy form.buy input,.book-buy form.buy select{max-width:none}
.book-share{margin-top:28px}

/* "What's included" as a sales section: the book, the website-only rival AI reports, the value line */
.store-page h2.showcase-heading{font-size:clamp(2.2rem,3.6vw,3.4rem);line-height:1.05;letter-spacing:-.03em;margin:0 0 14px;max-width:none;text-wrap:balance}
.showcase-lede{font-size:clamp(1.05rem,1.4vw,1.25rem);color:var(--muted);max-width:760px;margin:0 0 30px}
.feature{display:grid;grid-template-columns:150px 1fr;gap:clamp(20px,3vw,40px);align-items:center;background:var(--panel);padding:clamp(22px,3vw,36px);margin-bottom:10px}
.feature-cover{display:block;width:100%;height:auto;border-radius:2px;box-shadow:0 16px 28px rgba(51,35,18,.18)}
.feature .kind{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--copper);margin:0 0 6px}
.feature h3{font-size:clamp(1.4rem,2vw,1.8rem);margin:0 0 14px;letter-spacing:-.02em}
.feature-facts{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:8px 24px}
.feature-facts li{padding-left:22px;position:relative;font-size:15px}
.feature-facts li:before{content:"✓";position:absolute;left:0;color:var(--copper);font-weight:600}
.feature-files{font-size:13px;color:var(--muted);margin:0}
.rivals-band{background:#262523;color:#f3ede4;padding:clamp(28px,4vw,56px);margin-bottom:10px}
.rivals-band .eyebrow{color:#f0a07a;margin-bottom:10px}
.rivals-band h3{color:#fff;font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.12;letter-spacing:-.025em;margin:0 0 10px;max-width:none;text-wrap:balance}
.rivals-lede{color:#cfc6ba;max-width:720px;margin:0 0 28px}
.rivals{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px}
.rival{background:#33312e;border-top:3px solid #f0a07a;padding:22px 22px 20px;display:flex;flex-direction:column}
.rival p{margin:0}
.rival-model{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#d8cfc3}
.rival-verdict{font-size:clamp(2.4rem,3.6vw,3.2rem);font-weight:600;letter-spacing:-.03em;line-height:1.05;color:#f0a07a;margin:12px 0 4px !important}
.rival-note{font-size:13px;color:#b9afa3}
.rival-teaser{font-size:15px;line-height:1.5;color:#ece5db;margin:14px 0 16px !important;flex:1}
.rival-meta{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#a99f93}
.rivals-fine{font-size:13px;color:#a99f93;margin:22px 0 0;max-width:820px}
.value-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;background:#f3e6dc;padding:22px clamp(22px,3vw,36px);margin-bottom:18px}
.value-line p{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px}
.value-line strong{font-size:1.15rem;font-weight:600}
.value-price{font-size:1.6rem;font-weight:600;letter-spacing:-.02em}

@media(max-width:899px){
  .book{grid-template-columns:1fr}
  .book-cover img{max-width:280px}
  .book-about,.book-buy{grid-template-columns:1fr;gap:10px}
}
@media(max-width:599px){
  .feature{grid-template-columns:1fr}.feature-cover{max-width:140px}
  .books-catalog .card{grid-template-columns:1fr}
  .books-catalog .card-art img{max-width:200px}
  .book-buybox{flex-direction:column;align-items:flex-start}
}
