/* Shared storefront rhythm; book artwork and wording stay intact. */
body[data-page],body[data-book-id],body.shop-page{--berry:#63418e;--plum:#342145;--gold:#c99b35;--ink:#30283b;--cream:#fffcf6}
body[data-page] header,body[data-book-id] header{gap:1.25rem;padding-block:1.1rem;align-items:center}
body[data-page] header nav,body[data-book-id] header nav{gap:.45rem 1rem;align-items:center;line-height:1.4}
body[data-page] header nav a,body[data-book-id] header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.45rem .55rem;text-align:center;border-radius:10px}
body[data-page] header nav .pill{padding:.7rem 1rem}
body[data-page] main>section{padding-block:2.75rem}
body[data-page] .section-head{gap:1.25rem;margin-bottom:1.6rem}
body[data-page] .meta,body[data-page] .book-includes{line-height:1.6}
body[data-page] .grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:1.5rem}
body[data-page] .card{display:flex;flex-direction:column;min-width:0;border-radius:18px;box-shadow:0 6px 20px #3421450c;cursor:default}
body[data-page] .card[hidden]{display:none}
/* A fixed image frame keeps intrinsic artwork sizes out of grid sizing. */
body[data-page] .card .cover{display:block;position:relative;overflow:hidden;width:100%;height:290px;min-height:0;aspect-ratio:auto;padding:0;border:0;border-bottom:1px solid #e8deee;background:#faf6ef;cursor:pointer;flex:none}
body[data-page] .card .cover img{position:absolute;inset:1rem;display:block;width:calc(100% - 2rem);height:calc(100% - 2rem);max-width:calc(100% - 2rem);max-height:calc(100% - 2rem);min-width:0;min-height:0;margin:0;object-fit:contain;object-position:center}
body[data-page] .card-body{display:flex;flex-direction:column;flex:1;gap:.8rem;padding:1.25rem;min-width:0}
body[data-page] .card h3{min-height:0;font-size:1.3rem;line-height:1.3;margin:0}
body[data-page] .card .tag{line-height:1.5}
body[data-page] .card .meta,body[data-page] .card .book-includes,body[data-page] .card .pdf-bundle-value{min-height:0;margin:0;font-family:Arial,sans-serif}
body[data-page] .card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:auto;padding-top:.5rem}
body[data-page] .card-actions button,body[data-page] .card-actions a,body[data-page] .book-extras button{display:flex;align-items:center;justify-content:center;min-height:48px;width:100%;padding:.65rem .7rem;border:1px solid #d7c6e5;border-radius:10px;font:700 .9rem/1.35 Arial,sans-serif;text-align:center;text-decoration:none;white-space:normal}
body[data-page] .card-actions .cart-add{grid-column:1/-1}
body[data-page] .book-extras{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:0}
body[data-page] .book-extras:empty{display:none}
body[data-page] .book-extras button{background:#faf7fd;color:var(--berry)}
body[data-page] .card-pricing{border-block:1px solid #eee6f2;padding:.7rem 0;font: .9rem/1.6 Arial,sans-serif}
body[data-page] .card-pricing summary{cursor:pointer;color:var(--berry);font-weight:700;min-height:44px;padding:.5rem 0}
body[data-page] .card-pricing .prices{margin:.6rem 0}
body[data-page=home] #book-options .topic-links{gap:1.65rem;max-width:760px}
body[data-page=home] #book-options .topic-links a{min-width:0;aspect-ratio:1;gap:.8rem;padding:1rem;box-shadow:0 0 0 1px #d9c7e8,0 6px 18px #4e2e7814}
body[data-page=home] #book-options .topic-covers{height:68px;gap:3px;align-items:center}
body[data-page=home] #book-options .topic-covers img,body[data-page=home] #book-options .topic-covers img:only-child{width:32px;max-width:32px;min-width:0;flex:0 1 32px;height:52px;object-fit:contain;border-width:1px}
body[data-page=home] #book-options .topic-label{font-size:1.1rem;line-height:1.25;min-height:2.5em;display:grid;place-items:center}
body[data-page=topic] .topic-links{gap:.6rem}
body[data-page=topic] .topic-links a{min-height:44px;font-size:.9rem;padding:.65rem 1rem;box-shadow:none}
body[data-page] .collection-tools{gap:1rem;padding-block:1rem}
body[data-page] .filter-chip,body[data-page] .language-option{min-height:44px;line-height:1.4}
body[data-page] .sample-dialog{padding:1.25rem;max-width:1000px}
body[data-page] .book-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
body[data-page] .option-button{min-height:56px;line-height:1.45}
body[data-page] .sample-footer{flex-wrap:wrap;gap:.8rem}
body[data-page] .shop-panel{border-radius:16px}
body[data-page] .order,body[data-page] .guide-results{gap:1.5rem}
body[data-book-id] .book-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:1.25rem 0}
body[data-book-id] .book-shortcuts a{min-height:48px;padding:.7rem;border:1px solid #d7c6e5;border-radius:10px;color:var(--berry);background:white;text-decoration:none;text-align:center;font:700 .95rem/1.45 Arial,sans-serif;display:grid;place-items:center}
body[data-book-id] .book-shortcuts a:last-child{background:var(--berry);color:white}
body[data-book-id] .purchase-details{border:1px solid #e2d6e9;border-radius:16px;background:white;padding:1rem 1.25rem;scroll-margin-top:1.5rem}
body[data-book-id] .purchase-details>summary{min-height:44px;cursor:pointer;font:700 1.15rem/1.5 Georgia,serif;color:var(--plum);padding:.5rem 0}
body[data-book-id] .purchase-details .choice{padding:1rem 0 0;border:0;box-shadow:none}
body[data-book-id] .below{grid-template-columns:minmax(0,1fr);gap:1.5rem;margin-top:2rem}
body[data-book-id] .panel{min-width:0;scroll-margin-top:1.5rem}
body[data-book-id] .facts{line-height:1.5;gap:.6rem}
body[data-book-id] .description{line-height:1.65}
body[data-book-id] .home-button{min-height:44px;box-shadow:none}
.site-back-button{margin:0 0 1.1rem!important;border-radius:10px!important;box-shadow:none}
body[data-page] a:focus-visible,body[data-page] button:focus-visible,body[data-page] summary:focus-visible,body[data-book-id] summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:960px){body[data-page] .grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-page] header{flex-wrap:wrap}body[data-page] header nav{justify-content:flex-start}}
@media(max-width:600px){body[data-page] header,body[data-book-id] header{flex-wrap:wrap;padding:1rem 5%;gap:.65rem}body[data-page] header nav,body[data-book-id] header nav{display:flex;width:100%;gap:.3rem;justify-content:flex-start;font-size:.85rem}body[data-page] header nav a,body[data-book-id] header nav a{flex:1 1 auto;padding:.5rem .6rem}body[data-page] main>section{padding:2rem 5%}body[data-page] .grid{grid-template-columns:minmax(0,1fr)}body[data-page] .card .cover{height:300px}body[data-page] .card-body{padding:1.1rem}body[data-page=home] #book-options .topic-links{grid-template-columns:repeat(2,minmax(0,1fr));max-width:360px;gap:1.1rem}body[data-page=home] #book-options .topic-links a{gap:.4rem;padding:.7rem}body[data-page=home] #book-options .topic-label{font-size:1rem}body[data-page=home] #book-options .topic-covers{height:58px}body[data-page=home] #book-options .topic-covers img{height:46px}body[data-book-id] .layout{gap:1.5rem}body[data-page] .sample-dialog{padding:1rem}body[data-page] .book-options{gap:.6rem}body[data-page] .order{grid-template-columns:minmax(0,1fr)}body[data-page] .zelle-email,body[data-page] .contact-links .email-link{white-space:normal;overflow-wrap:anywhere}body[data-book-id] .book-shortcuts a{font-size:.9rem}body[data-book-id] .two{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){body[data-page] .card:hover,body[data-page=home] #book-options .topic-links a:hover{transform:none}}
.site-back-button{margin:.75rem 5% 1rem!important}body[data-book-id] .site-back-button,.shop-page main>.site-back-button{margin:0 0 1rem!important}

body[data-book-id] .purchase-details>summary{color:white;padding:.85rem 1rem}
.attachment-summary{padding-left:1.2rem;font-size:.9rem;line-height:1.6}.attachment-summary li+li{margin-top:.5rem}

/* Three portrait covers in each category circle. */
body[data-page=home] #book-options .topic-links{gap:1.25rem}
body[data-page=home] #book-options .topic-links a{aspect-ratio:1;min-height:0;border-radius:50%;gap:.65rem;padding:.85rem}
body[data-page=home] #book-options .topic-links .topic-covers{display:flex;align-items:center;justify-content:center;gap:3px;width:100%;height:82px}
body[data-page=home] #book-options .topic-links .topic-covers img,
body[data-page=home] #book-options .topic-links .topic-covers img:only-child{display:block;width:31%;max-width:49px;min-width:0;flex:0 1 31%;height:78px;object-fit:contain;margin:0;border-width:1px;transform:none}
body[data-page=home] #book-options .topic-links .topic-label{min-height:1.3em}
@media(max-width:600px){body[data-page=home] #book-options .topic-links{gap:1rem}body[data-page=home] #book-options .topic-links a{padding:.7rem;gap:.4rem}}
@media(max-width:420px){body[data-page=home] #book-options .topic-links .topic-covers{height:70px}body[data-page=home] #book-options .topic-links .topic-covers img{height:67px;max-width:43px}}

/* A quieter palette lets the book covers lead. */
body[data-page],body[data-book-id],body.shop-page{background:#fffcf7}
body[data-page=home] header{padding-block:.7rem}
body[data-page=home] .brand-logo{width:58px;height:58px;box-shadow:0 3px 10px #34214512}
body[data-page=home] .hero{margin-top:.25rem;margin-bottom:.25rem;padding-block:1.25rem;background:#faf6fc;background-image:none;border-color:#eee6f2;box-shadow:none}
body[data-page=home] .hero-layout{grid-template-columns:minmax(0,1fr) 170px;gap:1.5rem}
body[data-page=home] .hero-feature-logo{width:170px;height:170px}
body[data-page=home] .hero h1{font-size:clamp(1.9rem,3.5vw,2.7rem);line-height:1.15;margin-block:0 .7rem}
body[data-page=home] .hero p{margin-block:.5rem .9rem}
body[data-page=home] #book-options{padding-top:1.1rem;padding-bottom:2rem}
body[data-page=home] #book-options .section-head{margin-bottom:1.1rem}
body[data-page=home] .book-search{margin-bottom:1.5rem}
body[data-page=home] #book-options .topic-links a{background:#f6f0f9;color:var(--plum);border:1px solid #e9dfef;box-shadow:0 3px 12px #3421450a;justify-content:center;gap:.45rem}
body[data-page=home] #book-options .topic-links a:nth-child(3n+2){background:#fbf5e9;border-color:#eee5d4}
body[data-page=home] #book-options .topic-links a:nth-child(3n+3){background:#eff5ef;border-color:#e0e9df}
body[data-page=home] #book-options .topic-links a:hover,body[data-page=home] #book-options .topic-links a:focus-visible{background:#eee5f5;color:var(--plum);border-color:#bda6d0;box-shadow:0 5px 16px #34214512;transform:translateY(-2px)}
body[data-page=home] #book-options .topic-links .topic-covers img{background:transparent;border:0;border-radius:1px;box-shadow:0 2px 4px #34214520}
body[data-page=home] #book-options .topic-links .topic-label{display:grid;place-items:center;min-height:2.5em;line-height:1.25;font-size:1.05rem}
/* Larger previews and shorter summaries keep browsing easy to scan. */
body[data-page] .card{border-color:#e9e1eb;box-shadow:0 3px 14px #34214508}
body[data-page] .card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #34214512}
body[data-page] .card .cover{height:320px;background:#faf7f1;border-color:#eee7dd}
body[data-page] .card .cover img{inset:.65rem;width:calc(100% - 1.3rem);height:calc(100% - 1.3rem);max-width:calc(100% - 1.3rem);max-height:calc(100% - 1.3rem)}
body[data-page] .card-body{gap:.65rem;padding:1.1rem}
body[data-page] .card .meta{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.5;font-size:.93rem}
body[data-page] .book-features{margin:.25rem 0;gap:.3rem}
body[data-page] .book-features span{background:#f4eef8;color:#563779}
body[data-page] .card-actions button,body[data-page] .card-actions a,body[data-page] .book-extras button,body[data-page] .book-extras a{min-height:46px;border-radius:10px;box-sizing:border-box;font:700 .88rem/1.35 Arial,sans-serif}
body[data-page] .card-actions .order-book{background:var(--berry);border-color:var(--berry);color:white}
body[data-page] .card-actions .look-inside{background:white;border-color:#d8c9e4;color:var(--berry)}
body[data-page] .card-actions .cart-add{background:#f6f1f9;border-color:#e5d9ee;color:var(--berry)}
body[data-page] .book-extras button,body[data-page] .book-extras a{display:flex;align-items:center;justify-content:center;padding:.6rem;background:#faf7fc;color:var(--berry);border:1px solid #e8deef;text-align:center;text-decoration:none}
@media(max-width:600px){body[data-page=home] header{padding-block:.65rem}body[data-page=home] .brand-logo{width:48px;height:48px}body[data-page=home] .hero{padding:1rem 1.15rem}body[data-page=home] .hero-layout{grid-template-columns:1fr;gap:.65rem}body[data-page=home] .hero-feature-logo{width:104px;height:104px}body[data-page=home] .hero h1{font-size:1.9rem}body[data-page=home] #book-options{padding-top:.85rem}body[data-page=home] #book-options .topic-links a{padding:.55rem;gap:.3rem}body[data-page=home] #book-options .topic-links .topic-label{font-size:.98rem}body[data-page] .card .cover{height:330px}body[data-page] .card-body{padding:1rem}}

/* One main menu across the storefront, with the current order kept separate. */
body[data-page] header,body[data-book-id] header,.shop-page header{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1.25rem}
header .store-nav{display:flex;gap:.25rem;flex-wrap:wrap;align-items:center;margin-left:auto}
header .store-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .75rem;border-radius:9px;font:700 .9rem/1.3 Arial,sans-serif;text-decoration:none}
header .store-nav a[aria-current="page"]{background:#f0e8f6;color:#4e2e78}
header .header-order{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .85rem;background:#63418e;color:white;border-radius:10px;font:700 .85rem/1.3 Arial,sans-serif;text-decoration:none;white-space:nowrap}
body[data-book-id] .book-shortcuts a:last-child{background:white;color:var(--berry)}
body[data-book-id] .book-shortcuts a[href="#purchase-options"]{background:var(--berry);color:white}
body[data-book-id] .book-shortcuts a{font:700 .95rem/1.4 Arial,sans-serif;min-height:52px}
body[data-book-id] .purchase-details>summary{background:#63418e;border-radius:9px}
body[data-book-id] .book-options-back:focus-visible{outline:3px solid #c99b35;outline-offset:3px}
body[data-page] main,body[data-book-id] main,.shop-page main{min-width:0}
body[data-page] input,body[data-book-id] input,.shop-page input,.shop-page select{max-width:100%;font-size:16px}
@media(max-width:760px){
 body[data-page] header,body[data-book-id] header,.shop-page header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;padding:.75rem 5%}
 header .store-nav,body[data-page] header .store-nav,body[data-book-id] header .store-nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:.25rem;margin:0}
 header .store-nav a,body[data-page] header .store-nav a,body[data-book-id] header .store-nav a{min-width:0;min-height:48px;padding:.4rem .2rem;font-size:.78rem;line-height:1.25}
 header .header-order{grid-column:2;grid-row:1;font-size:.78rem;padding:.5rem .65rem}
 body[data-page] .brand,body[data-book-id] .brand{min-width:0;gap:.5rem;font-size:.85rem}
 body[data-page] .brand-logo,body[data-book-id] .brand img{width:42px;height:42px;flex:none}
 body[data-page] .brand-text small{display:none}
 body[data-page] .brand-text{font-size:.85rem}
 body[data-page] .grid{gap:1.1rem}
 body[data-page] .card .cover{height:255px}
 body[data-page] .card-body{padding:1rem;gap:.65rem}
 body[data-book-id] main{padding-top:.75rem}
 body[data-book-id] .crumbs{margin:.75rem 0 1rem;font-size:.8rem}
 body[data-book-id] .layout{gap:1rem}
 body[data-book-id] .facts span{font-size:.8rem;padding:.35rem .5rem}
 body[data-book-id] .book-shortcuts{margin:.85rem 0;gap:.55rem}
 body[data-book-id] .book-shortcuts a{font-size:.9rem}
 body[data-book-id] .purchase-overview{margin:.85rem 0;padding:.9rem}
 body[data-book-id] .purchase-details{padding:1rem}
 body[data-book-id] .payment{overflow-wrap:anywhere}
 .shop-page .cart-row{grid-template-columns:54px minmax(0,1fr);gap:12px}
 .shop-page .cart-row img{width:54px;height:76px}
 .shop-page .cart-row-controls select{width:100%;min-height:44px}
}

/* Keep browsing focused on the next choice. */
body[data-page] .card-actions{grid-template-columns:1fr;padding-top:.25rem}
body[data-page] .card-actions .order-book{background:#63418e;color:white;border-color:#63418e;min-height:48px}
body[data-page] .card-price{font:700 1rem/1.5 Arial,sans-serif;color:#342145;margin:0}
body[data-page] .card-price span{font-weight:400;color:#685a70}
body[data-page] .card-body h3{font-size:1.2rem;line-height:1.3}
body[data-page] .browse-filters{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem}
body[data-page] .browse-filters label{font:700 .85rem/1.4 Arial,sans-serif;color:#342145}
body[data-page] .browse-filters select{display:block;width:100%;max-width:100%;min-height:46px;margin-top:.3rem;border:1px solid #c9b9d4;border-radius:9px;padding:.6rem;background:white;color:#342145;font:16px Arial,sans-serif}
body[data-page] .browse-filters select:focus-visible{outline:3px solid #c99b35;outline-offset:3px}
body[data-page] #collectionTools{display:none}
body[data-page=home] .teaching-note{font-size:.95rem;line-height:1.55;color:#685a70;max-width:430px}
@media(max-width:420px){body[data-page] .browse-filters{grid-template-columns:1fr}body[data-page] .book-search .search-row{display:grid;grid-template-columns:minmax(0,1fr) auto}body[data-page] .book-search button{font-size:.85rem;padding:.6rem}}

/* Compact learning and extras labels, shared by collection and detail pages. */
.book-skills,.book-features{display:flex;flex-wrap:wrap;gap:.35rem;margin:.25rem 0;font:700 .78rem/1.45 Arial,sans-serif}
.book-skills span{padding:.3rem .55rem;border-radius:7px;background:#f1e9f7;color:#4e2e78}
.book-features span{padding:.3rem .55rem;border-radius:7px;background:#edf4ed;color:#355339}
body[data-page=home] .book-search .browse-filters{display:none}
body[data-page=topic] #books>.book-search{max-width:none;margin:1rem 0 1.5rem}
