.book-landing-page h1,.book-landing-page h2 { font-family:inherit; font-weight:700; letter-spacing:-.035em; line-height:1.12; }
.landing-section { padding:64px max(6%,calc((100vw - 1260px)/2)); }
.book-hero { display:grid; grid-template-columns:minmax(210px,.8fr) minmax(0,1.2fr); align-items:center; gap:64px; }
.book-hero-cover { display:flex; justify-content:center; align-items:center; background:#eae7df; padding:36px; border-radius:12px; }
.book-hero-cover>img { width:auto; max-width:100%; max-height:510px; height:auto; box-shadow:10px 16px 22px #14242d25; }
.book-hero-copy .eyebrow { margin:24px 0 12px; }
.book-hero h1 { font-size:clamp(30px,3.5vw,56px); overflow-wrap:break-word; margin-bottom:15px; }
.book-subtitle { font-size:22px; line-height:1.4; color:var(--ink); margin-bottom:12px; }
.book-hero-copy>p { max-width:64ch; }
.book-hero .actions { gap:20px; flex-wrap:wrap; }
.book-fulfillment { font-size:13px; margin:20px 0 0; }
.book-order,.book-resources { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; }
.book-order { border-block:1px solid var(--line); background:#ebe6db; }
.book-order h2,.book-resources h2 { font-size:clamp(26px,2.8vw,38px); }
.book-order-form { padding:28px; border:1px solid #b7aa96; border-radius:10px; background:var(--paper); }
.book-order-form>label,#inscription-fields>label { display:block; font-size:14px; font-weight:600; margin-top:14px; }
.book-order-form input,.book-order-form select,.book-order-form textarea { max-width:none; width:100%; box-sizing:border-box; font:inherit; background:white; color:var(--ink); border:1px solid #8b948d; padding:12px; margin:8px 0 16px; }
.book-order-form textarea { resize:vertical; }
.book-order-form .button { width:100%; margin-top:16px; }
.button:disabled { opacity:.6; cursor:not-allowed; }
.consent { display:flex; align-items:flex-start; gap:10px; font-size:13px; line-height:1.5; margin:18px 0; }
.consent input { width:18px!important; height:18px; flex:0 0 18px; margin:1px 0 0; }
.book-resources .signup-panel { padding:26px; margin:0; max-width:none; border-radius:10px; }
.book-resources .signup-grid { gap:16px; }
.book-resource-preview li { color:var(--muted); font-size:15px; line-height:1.7; margin:12px 0; }
.book-resource-preview ul { padding-left:20px; }
.book-resource-preview h3 { margin-top:28px; font-size:19px; }
#signup-panel,#order,#book-resources { scroll-margin-top:24px; }
#download-catalog .actions { flex-wrap:wrap; }
.form-privacy { font-size:12px; }
@media(max-width:800px) {
  .book-hero,.book-order,.book-resources { grid-template-columns:1fr; gap:32px; }
  .book-hero-cover { max-width:320px; width:100%; margin:auto; }
  .book-hero-cover>img { max-height:370px; }
  .book-hero-copy .eyebrow { margin-top:16px; }
  .landing-section { padding-top:40px; padding-bottom:40px; }
}
@media(max-width:420px) {
  .book-order-form,.book-resources .signup-panel { padding:20px; }
  .book-resources .signup-grid { grid-template-columns:1fr; }
  .book-subtitle { font-size:19px; }
}
.storefront { max-width:1180px; margin:auto; padding:48px 6%; min-height:55vh; }
.storefront h1,.storefront h2 { font-family:inherit; font-weight:700; letter-spacing:-.03em; }
.storefront h1 { font-size:clamp(32px,4vw,52px); }
.storefront h2 { font-size:23px; overflow-wrap:anywhere; }
.storefront .actions { flex-wrap:wrap; }
.storefront a:not(.button) { text-decoration:underline; }
.cart-row { padding:24px 0; border-bottom:1px solid var(--line); }
.cart-row p { font-size:15px; margin-bottom:10px; }
.cart-row input[type=number] { width:85px; margin-left:15px; }
.cart-row button:not(.button),.inventory-row button { font:inherit; padding:10px 16px; background:white; border:1px solid #8b948d; cursor:pointer; }
#purchase-downloads .button { cursor:pointer; }
#admin-signin { max-width:560px; }
.inventory-row { display:flex; gap:15px; align-items:center; border-bottom:1px solid var(--line); flex-wrap:wrap; padding:14px 0; }
.inventory-row p { flex:1; margin:0; font-size:14px; }
.inventory-row input { max-width:95px; }
