.workbooks-page { background: #f7f2e8; }
.workbooks-page .nav-inner { max-width: 1380px; }
.workbooks-page .nav-links { gap: 20px; font-size: 11px; }
.workbook-hero { position: relative; overflow: hidden; padding: clamp(70px, 8vw, 120px) 0 clamp(90px, 10vw, 150px); color: var(--cream); background: radial-gradient(circle at 76% 22%, rgba(100, 39, 165, .32), transparent 28%), radial-gradient(circle at 12% 78%, rgba(212, 175, 55, .12), transparent 30%), #09070d; }
.workbook-hero::before { content:""; position:absolute; inset:0; opacity:.2; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(to bottom, #000, transparent 90%); }
.workbook-hero::after { content:""; position:absolute; width:460px; height:460px; border:1px solid rgba(212,175,55,.2); border-radius:50%; right:-180px; top:-190px; box-shadow:0 0 0 50px rgba(212,175,55,.025), 0 0 0 100px rgba(212,175,55,.018); }
.workbook-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0, 1.08fr) minmax(420px, .92fr); align-items:center; gap:clamp(48px, 7vw, 100px); }
.workbook-hero-copy h1 { max-width: 900px; font-size:clamp(48px, 5.4vw, 82px); margin:22px 0 26px; }
.workbook-hero-copy h1 em, .detail-copy h2 em, .pricing-heading h2 em, .use-notice h2 em { color:var(--gold); font-weight:400; }
.workbook-hero-copy p { color:rgba(246,241,231,.78); max-width:670px; font-size:clamp(19px, 1.7vw, 25px); }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:34px; }
.hero-cover-stack { position:relative; min-height:620px; perspective:1400px; }
.stack-cover { position:absolute; width:47%; margin:0; filter:drop-shadow(0 24px 30px rgba(0,0,0,.52)); transition:transform .5s ease; }
.stack-cover img { width:100%; border:1px solid rgba(212,175,55,.55); }
.stack-child { left:0; top:100px; transform:rotate(-9deg) translateZ(-10px); }
.stack-preteen { left:26%; top:22px; z-index:2; transform:rotate(1deg) translateZ(20px); }
.stack-teen { right:0; top:112px; transform:rotate(9deg) translateZ(-10px); }
.hero-cover-stack:hover .stack-child { transform:rotate(-12deg) translateX(-12px); }
.hero-cover-stack:hover .stack-teen { transform:rotate(12deg) translateX(12px); }
.hero-cover-stack:hover .stack-preteen { transform:translateY(-10px); }
.collection-intro { padding-top:clamp(80px, 9vw, 130px); }
.section-kicker { display:flex; justify-content:space-between; gap:20px; padding-bottom:24px; border-bottom:1px solid var(--line-strong); font-family:var(--font-ui); font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--gold-deep); }
.workbook-card-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:28px; margin-top:44px; }
.collection-card { position:relative; background:#fff; border:1px solid #dfd6c5; box-shadow:0 18px 55px rgba(35,24,6,.08); overflow:hidden; }
.collection-cover { height:430px; padding:28px 28px 0; display:flex; align-items:flex-end; justify-content:center; background:linear-gradient(145deg,#ede4d4,#faf7f1); }
.collection-cover img { height:100%; width:auto; object-fit:contain; filter:drop-shadow(0 15px 17px rgba(25,17,5,.25)); transition:transform .35s ease; }
.collection-card:hover .collection-cover img { transform:translateY(-8px) rotate(-1deg); }
.age-chip { position:absolute; z-index:2; top:18px; right:18px; padding:8px 12px; color:#fff; background:#241030; font:600 10px/1 var(--font-ui); letter-spacing:.16em; text-transform:uppercase; border:1px solid var(--gold); }
.collection-card-copy { padding:28px; }
.collection-card-copy .card-number { color:var(--gold-deep); font:500 10px/1 var(--font-ui); letter-spacing:.24em; }
.collection-card-copy h2 { font-size:clamp(28px, 2.5vw, 38px); margin:10px 0 14px; }
.collection-card-copy p { font-size:18px; color:var(--muted); min-height:84px; }
.collection-card-copy strong { display:block; margin:22px 0 18px; font:600 22px/1 var(--font-ui); }
.text-link { border:0; padding:0 0 5px; border-bottom:1px solid var(--gold-deep); background:none; cursor:pointer; font:600 11px/1.4 var(--font-ui); letter-spacing:.16em; text-transform:uppercase; color:var(--ink); }
.text-link span { color:var(--gold-deep); font-size:17px; margin-left:6px; }
.workbook-details { padding-top:30px; }
.detail-row { display:grid; grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr); gap:clamp(55px, 8vw, 120px); align-items:center; padding:clamp(75px, 9vw, 130px) 0; border-bottom:1px solid var(--line); }
.detail-row-reverse .detail-cover { order:2; }
.detail-cover { position:relative; display:flex; justify-content:center; }
.detail-cover::before { content:""; position:absolute; width:85%; aspect-ratio:1; border-radius:50%; background:rgba(212,175,55,.13); top:14%; }
.detail-cover img { position:relative; width:min(100%,390px); max-height:530px; object-fit:contain; filter:drop-shadow(0 24px 25px rgba(39,25,4,.25)); }
.detail-index { position:absolute; z-index:2; left:0; top:8%; font:500 clamp(70px,9vw,130px)/1 var(--font-display); color:rgba(168,134,42,.15); }
.detail-copy h2 { font-size:clamp(38px,4.2vw,61px); margin:16px 0 22px; }
.detail-lede { font-size:clamp(21px,1.8vw,26px); color:#332d26; }
.detail-facts { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin:34px 0; padding:28px 0; border-block:1px solid var(--line); }
.detail-facts h3 { font:600 11px/1.3 var(--font-ui); letter-spacing:.2em; text-transform:uppercase; margin-bottom:10px; color:var(--gold-deep); }
.detail-facts p { margin:0; font-size:17px; color:var(--muted); }
.detail-buy { display:flex; align-items:end; justify-content:space-between; gap:24px; }
.detail-buy span, .detail-buy small { display:block; font:500 10px/1.4 var(--font-ui); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }
.detail-buy strong { display:block; font:600 30px/1.3 var(--font-ui); }
.pricing-section { color:var(--cream); background:linear-gradient(135deg,#130b1c 0%,#09090b 55%,#14100a 100%); }
.pricing-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(55px,8vw,110px); align-items:center; }
.pricing-heading h2 { font-size:clamp(42px,5vw,70px); margin:18px 0 24px; }
.pricing-heading p { color:rgba(246,241,231,.7); max-width:500px; }
.pricing-heading .btn { margin-top:18px; }
.pricing-table-wrap { border:1px solid rgba(212,175,55,.3); background:rgba(255,255,255,.035); padding:clamp(18px,3vw,38px); }
.pricing-table { width:100%; border-collapse:collapse; font-family:var(--font-ui); }
.pricing-table caption { text-align:left; color:var(--gold); font-size:11px; letter-spacing:.2em; text-transform:uppercase; margin-bottom:18px; }
.pricing-table th { padding:14px 12px; text-align:left; color:rgba(246,241,231,.5); font-size:10px; letter-spacing:.16em; text-transform:uppercase; border-bottom:1px solid rgba(212,175,55,.28); }
.pricing-table td { padding:19px 12px; font-size:14px; border-bottom:1px solid rgba(255,255,255,.09); }
.pricing-table td:nth-child(2) { color:var(--gold-soft); font-weight:600; }
.pricing-table .quote-tier td { color:var(--gold); }
.shipping-note { margin:20px 0 0; color:rgba(246,241,231,.54); font:400 12px/1.5 var(--font-ui); }
.use-notice { padding:clamp(70px,8vw,110px) 0; background:#efe6d6; }
.notice-inner { display:grid; grid-template-columns:150px 1fr; gap:clamp(30px,6vw,80px); align-items:center; max-width:1050px; }
.notice-mark { width:140px; height:140px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--gold-deep); box-shadow:inset 0 0 0 9px #efe6d6, inset 0 0 0 10px var(--gold-deep); font:500 47px/1 var(--font-display); color:#281331; }
.use-notice h2 { font-size:clamp(38px,4.5vw,62px); margin:14px 0 20px; }
.use-notice p { max-width:850px; }
.order-section { background:#fbf8f1; }
.order-heading { max-width:720px; margin-bottom:50px; }
.order-heading h2 { margin:15px 0 14px; }
.order-form { border:1px solid #ded4c3; background:#fff; box-shadow:0 25px 80px rgba(52,35,9,.09); }
.order-builder { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr); }
.order-lines { padding:clamp(25px,4vw,50px); }
.order-lines > h3, .buyer-fields > h3 { font-size:25px; margin-bottom:28px; }
.order-line { display:grid; grid-template-columns:70px minmax(150px,1fr) 92px 105px 120px; gap:18px; align-items:center; padding:20px 0; border-top:1px solid #e9e1d5; }
.order-line img { width:56px; height:74px; object-fit:cover; object-position:top; box-shadow:0 6px 12px rgba(0,0,0,.18); }
.line-title strong { display:block; font:600 15px/1.3 var(--font-ui); }
.line-title span, .line-price span, .line-subtotal span { display:block; color:var(--muted); font:400 11px/1.4 var(--font-ui); margin-top:4px; }
.order-line label { color:var(--muted); font:500 10px/1.3 var(--font-ui); letter-spacing:.1em; text-transform:uppercase; }
.order-line input { width:100%; margin-top:7px; padding:11px 8px; border:1px solid #cfc4b1; font:600 16px var(--font-ui); }
.line-price strong, .line-subtotal strong { font:600 15px/1.3 var(--font-ui); }
.order-summary { padding:clamp(28px,4vw,48px); color:var(--cream); background:#100b14; }
.summary-items { margin:25px 0; min-height:100px; }
.empty-summary { color:rgba(246,241,231,.5); font-size:16px; }
.summary-item { display:grid; grid-template-columns:1fr auto; gap:8px; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.1); font:400 13px/1.4 var(--font-ui); }
.summary-item small { grid-column:1/-1; color:rgba(246,241,231,.5); }
.summary-totals { border-top:1px solid rgba(212,175,55,.35); padding-top:15px; }
.summary-totals > div { display:flex; justify-content:space-between; gap:15px; padding:8px 0; font:400 13px/1.4 var(--font-ui); }
.summary-totals .final-total { margin-top:10px; padding-top:18px; border-top:1px solid rgba(255,255,255,.13); color:var(--gold); }
.final-total strong { font-size:25px; }
.discount-note { margin-top:20px; padding:12px; border:1px solid rgba(212,175,55,.25); color:rgba(246,241,231,.65); font:400 11px/1.5 var(--font-ui); }
.bulk-message { margin-top:22px; padding:18px; background:var(--gold); color:#17100a; }
.bulk-message strong { font:600 13px/1.4 var(--font-ui); text-transform:uppercase; }
.bulk-message p { margin:7px 0 0; font-size:15px; }
.buyer-fields { padding:clamp(30px,5vw,60px); border-top:1px solid #ded4c3; }
.field-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px 26px; }
.field-grid label { color:#494037; font:600 12px/1.3 var(--font-ui); letter-spacing:.05em; }
.field-grid label > span { color:#8d1f3b; }
.field-grid label small { font-weight:400; color:var(--muted); }
.field-grid input, .field-grid textarea, .field-grid select { width:100%; margin-top:9px; padding:14px 15px; border:1px solid #cfc5b4; border-radius:0; background:#fdfbf7; color:var(--ink); font:400 15px/1.4 var(--font-ui); }
.field-grid input:focus, .field-grid textarea:focus, .field-grid select:focus, .order-line input:focus { outline:2px solid var(--gold); outline-offset:2px; }
.field-wide { grid-column:1/-1; }
.payment-choice { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:0; padding:0 clamp(30px,5vw,60px) clamp(35px,5vw,55px); border:0; }
.payment-choice legend { width:100%; margin-bottom:20px; font:500 25px/1.1 var(--font-display); }
.payment-choice label { display:flex; gap:13px; align-items:flex-start; padding:20px; border:1px solid #d8cebd; cursor:pointer; }
.payment-choice input { accent-color:#2d123d; margin-top:5px; }
.payment-choice strong, .payment-choice small { display:block; font-family:var(--font-ui); }
.payment-choice strong { font-size:14px; }
.payment-choice small { margin-top:5px; color:var(--muted); font-size:11px; }
.copyright-check { display:flex; gap:15px; margin:0 clamp(30px,5vw,60px) 28px; padding:22px; background:#f2eadb; border-left:4px solid var(--gold-deep); font:400 14px/1.55 var(--font-ui); cursor:pointer; }
.copyright-check input { flex:0 0 auto; width:19px; height:19px; accent-color:#2d123d; margin-top:2px; }
.form-error { margin:0 clamp(30px,5vw,60px) 22px; padding:14px 18px; color:#7b1730; background:#fff0f3; border:1px solid #e2a7b5; font:600 13px/1.5 var(--font-ui); }
.order-submit { margin:0 0 0 clamp(30px,5vw,60px); min-width:280px; border:0; cursor:pointer; }
.order-submit:disabled { opacity:.6; cursor:wait; }
.secure-note { display:inline-block; margin:0 30px 45px 18px; color:var(--muted); font:400 11px/1.5 var(--font-ui); }
.order-message { margin-bottom:32px; padding:28px; border:1px solid #79a386; background:#eef8f0; }
.order-message h2 { font-size:34px; color:#214e2c; }
.order-message p { margin:10px 0 0; }
.request-confirmation { padding:clamp(55px,8vw,100px); text-align:center; }
.request-confirmation h2 { margin:16px auto; max-width:700px; }
.request-confirmation p { max-width:680px; margin:0 auto; }
.closing-cta { position:relative; overflow:hidden; color:var(--cream); background:#0b090d; text-align:center; }
.closing-cta::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at center,rgba(88,34,132,.35),transparent 55%); }
.closing-inner { position:relative; }
.closing-inner h2 { max-width:850px; margin:18px auto 30px; }
.closing-inner .script { font-size:42px; }
.closing-inner > div { display:flex; justify-content:center; flex-wrap:wrap; gap:14px; }
@media (max-width:1050px) { .workbooks-page .nav-links { gap:13px; font-size:10px; } .workbook-hero-grid { grid-template-columns:1fr; } .workbook-hero-copy { max-width:850px; } .hero-cover-stack { width:min(680px,100%); margin:0 auto; min-height:630px; } .workbook-card-grid { grid-template-columns:1fr 1fr; } .collection-card:last-child { grid-column:1/-1; width:calc(50% - 14px); justify-self:center; } .order-builder { grid-template-columns:1fr; } .order-line { grid-template-columns:65px 1fr 90px 100px 115px; } }
@media (max-width:800px) { .workbook-card-grid { grid-template-columns:1fr; } .collection-card:last-child { grid-column:auto; width:auto; } .collection-cover { height:500px; } .detail-row { grid-template-columns:1fr; } .detail-row-reverse .detail-cover { order:0; } .detail-cover img { max-height:520px; } .pricing-layout { grid-template-columns:1fr; } .notice-inner { grid-template-columns:1fr; } .notice-mark { width:105px; height:105px; font-size:37px; } .order-line { grid-template-columns:54px 1fr 86px; } .line-price, .line-subtotal { grid-column:2; display:flex; justify-content:space-between; } .line-subtotal { grid-column:3; display:block; } .field-grid, .payment-choice { grid-template-columns:1fr; } }
@media (max-width:560px) { .workbook-hero { padding-top:62px; } .workbook-hero-copy h1 { font-size:42px; } .hero-actions .btn { width:100%; text-align:center; } .hero-cover-stack { min-height:400px; } .stack-cover { width:50%; } .stack-child { top:74px; } .stack-preteen { top:12px; left:25%; } .stack-teen { top:80px; } .collection-cover { height:410px; } .detail-facts { grid-template-columns:1fr; } .detail-buy { align-items:stretch; flex-direction:column; } .detail-buy .btn { text-align:center; } .pricing-table th:nth-child(3), .pricing-table td:nth-child(3) { display:none; } .pricing-table td { padding:16px 8px; font-size:13px; } .order-line { grid-template-columns:45px 1fr 72px; gap:11px; } .order-line img { width:43px; height:58px; } .line-title strong { font-size:12px; } .line-price, .line-subtotal { font-size:12px; } .field-wide { grid-column:auto; } .order-submit { width:calc(100% - 60px); min-width:0; margin-right:30px; } .secure-note { display:block; margin:16px 30px 35px; } }
