:root{--navy:#101e30;--navy2:#172a40;--gold:#c4a76a;--ink:#182535;--muted:#596674;--line:#dfe4e8;--paper:#fff;--back:#f5f7f8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--back);font:1rem/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid #b88a2d;outline-offset:5px}.wrap{max-width:1240px;margin:auto;padding-inline:40px}.skip{position:absolute;left:20px;top:-100px;z-index:10;background:white;padding:10px}.skip:focus{top:10px}.header{background:var(--navy);color:white;border-bottom:1px solid #ffffff18}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:114px}.brand{text-decoration:none;display:flex;align-items:center;gap:14px}.brand-logo{display:block;width:76px;height:76px;object-fit:contain;flex-shrink:0}.footer-brand{display:flex;align-items:center;gap:18px}.footer-logo{display:block;width:70px;height:70px;object-fit:contain;flex-shrink:0}.brand-name{display:block;font:1.4rem Georgia,serif;letter-spacing:.02em}.brand-sub{display:block;font-size:.75rem;letter-spacing:.24em;text-transform:uppercase;color:#c4cbd3;margin-top:3px}.nav{display:flex;gap:30px;align-items:center}.nav a{font-size:.875rem;color:#d5dbe1;text-decoration:none;padding:10px 0}.nav a:hover{color:var(--gold)}.hero{background:var(--navy);color:white;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.15fr 1fr;min-height:415px;align-items:center;gap:56px;padding-block:48px}.eyebrow{color:var(--gold);font-size:.75rem;letter-spacing:.19em;text-transform:uppercase;font-weight:600;margin:0 0 16px}.hero h1{font:clamp(2.8rem,5.2vw,4.5rem)/1.06 Georgia,serif;letter-spacing:-.035em;margin:0 0 23px;max-width:510px}.hero h1 em{font-style:normal;color:var(--gold)}.hero-text{color:#c6ced7;max-width:455px;margin:0 0 25px;line-height:1.7}.catalog-link{display:inline-block;color:var(--gold);text-decoration:none;border-bottom:1px solid #c4a76a77;padding-bottom:4px;font-size:.9rem}.hero-feature{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:27px;border-left:1px solid #ffffff1c;padding-left:36px}.hero-feature img{width:180px;height:260px;object-fit:contain;filter:drop-shadow(0 15px 15px #0005)}.feature-label{font-size:.7rem;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);margin:0 0 10px}.hero-feature h2{font:1.65rem/1.25 Georgia,serif;margin:0 0 18px}.hero-feature .feature-button{display:inline-block;border:1px solid #c4a76a88;padding:10px 18px;text-decoration:none;color:#e6d2ab;font-size:.875rem}.hero-feature .feature-button:hover{background:#c4a76a15}.catalog{padding-block:52px 64px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section-head h2{font:2.1rem/1.2 Georgia,serif;margin:0 0 8px}.section-head p{margin:0;color:var(--muted);font-size:.9375rem}.count{font-size:.8125rem;color:var(--muted);white-space:nowrap;border:1px solid var(--line);padding:6px 12px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}.book{background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s}.book:hover{box-shadow:0 8px 28px #101e300c;border-color:#b7c0c9}.book-visual{display:flex;align-items:center;justify-content:center;background:#eaf0f3;padding:24px 28px;height:285px;border-bottom:1px solid var(--line)}.book:nth-child(3n+2) .book-visual{background:#edf0f0}.book:nth-child(3n) .book-visual{background:#eef1f5}.book-visual img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(5px 9px 7px #172a4026);transition:transform .25s}.book:hover .book-visual img{transform:translateY(-4px)}.book-info{display:flex;flex-direction:column;flex:1;padding:22px}.theme{font-size:.7rem;text-transform:uppercase;letter-spacing:.11em;color:#776237;margin:0 0 10px}.book h3{font:1.24rem/1.35 Georgia,serif;margin:0 0 10px}.author{color:var(--muted);font-size:.8125rem;margin:0 0 24px}.purchase{margin-top:auto}.purchase a{display:block;padding:11px 12px;background:var(--navy);color:white;text-decoration:none;text-align:center;font-size:.875rem;font-weight:500;border:1px solid var(--navy)}.purchase a:hover{background:var(--navy2)}.platform{display:block;text-align:center;color:var(--muted);font-size:.75rem;margin-top:8px}.text-only{height:auto;min-height:240px}.text-only .book-info{padding:28px}.buy-help{border-top:1px solid var(--line);background:#fff;padding-block:40px}.help-inner{display:grid;grid-template-columns:1fr 1.6fr;gap:60px;align-items:start}.buy-help h2{font:1.8rem/1.25 Georgia,serif;margin:0}.buy-help p{margin:0;color:var(--muted);max-width:640px;font-size:.9375rem}.footer{background:var(--navy);color:#d3dae2;padding-block:38px}.footer-inner{display:flex;justify-content:space-between;gap:28px;align-items:center}.footer-name{font:1.3rem Georgia,serif;color:white;margin:0 0 6px}.footer-slogan{font-size:.8125rem;color:var(--gold);margin:0}.footer-note{font-size:.75rem;max-width:320px;text-align:right;margin:0;color:#aeb9c5}@media(min-width:1300px){.book-visual{height:310px}}@media(max-width:1050px){.wrap{padding-inline:28px}.hero-inner{gap:30px}.hero-feature{grid-template-columns:135px 1fr;padding-left:24px;gap:20px}.hero-feature img{width:135px;height:220px}.hero-feature h2{font-size:1.4rem}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.book-visual{height:290px}}@media(max-width:760px){.header-inner{min-height:88px}.brand-name{font-size:1.15rem}.brand-sub{font-size:.65rem}.nav{gap:18px}.nav a{font-size:.8125rem}.hero-inner{grid-template-columns:1fr;gap:28px;padding-block:40px}.hero h1{max-width:none;font-size:3.4rem}.hero-feature{border-left:0;border-top:1px solid #ffffff1c;padding:27px 0 0;grid-template-columns:110px 1fr;gap:24px}.hero-feature img{width:110px;height:155px}.hero-feature h2{font-size:1.5rem;max-width:300px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.book-visual{height:265px;padding:22px}.book-info{padding:18px}.help-inner{grid-template-columns:1fr;gap:16px}.footer-inner{align-items:start}.section-head{align-items:start}.catalog{padding-block:38px 44px}.section-head h2{font-size:1.8rem}}@media(max-width:480px){.wrap{padding-inline:20px}.header-inner{flex-wrap:wrap;padding-block:18px;gap:13px}.nav{width:100%;border-top:1px solid #ffffff18;padding-top:8px}.nav a{padding:2px 0}.hero h1{font-size:3rem}.grid{gap:20px 12px}.book-visual{height:200px;padding:16px}.book-info{padding:15px}.book h3{font-size:1.05rem}.author{font-size:.75rem;margin-bottom:18px}.theme{font-size:.65rem;letter-spacing:.06em}.purchase a{padding:10px 4px;font-size:.8125rem}.section-head{flex-wrap:wrap}.section-head p{font-size:.875rem}.footer-inner{flex-direction:column;gap:18px}.footer-note{text-align:left}.hero-feature h2{font-size:1.3rem}.hero-feature .feature-button{padding:8px 12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

@media(max-width:760px){.brand-logo{width:68px;height:68px}.header-inner{min-height:104px}.footer-logo{width:64px;height:64px}}
@media(max-width:480px){.brand-logo{width:64px;height:64px}.brand{gap:12px}}

.hero-feature img.hero-cover-3d{object-fit:cover;object-position:center}

/* A compact opening and readable book rows on phones. */
@media(max-width:760px){
  .header-inner{min-height:0;padding-block:16px;gap:12px;flex-wrap:wrap}
  .brand-logo{width:54px;height:54px}
  .brand-name{font-size:1.2rem}
  .brand-sub{font-size:.75rem;letter-spacing:.18em}
  .nav{width:100%;border-top:1px solid #ffffff18;padding-top:5px;gap:26px}
  .nav a{font-size:.875rem;padding:7px 0;min-height:38px}
  .hero-inner{min-height:0;padding-block:25px 28px;gap:22px}
  .eyebrow{font-size:.75rem;letter-spacing:.13em;margin-bottom:10px}
  .hero h1{font-size:clamp(2rem,8.2vw,3rem);line-height:1.15;margin-bottom:14px;letter-spacing:-.035em}
  .hero h1 br{display:none}
  .hero-text{font-size:1rem;line-height:1.55;margin-bottom:14px;max-width:560px}
  .catalog-link{font-size:.875rem;padding-block:7px;min-height:38px}
  .hero-feature{padding-top:20px;grid-template-columns:140px minmax(0,1fr);gap:18px}
  .hero-feature img{width:140px;height:190px}
  .feature-label{font-size:.75rem;letter-spacing:.09em;margin-bottom:9px}
  .hero-feature h2{font-size:1.6rem;line-height:1.2;margin-bottom:14px}
  .feature-title{display:block}
  .feature-subtitle{display:block;font:normal .9375rem/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#c6ced7;margin-top:8px}
  .hero-feature .feature-button{font-size:.875rem;min-height:44px;padding:10px 14px}
  .catalog{padding-block:28px 38px}
  .section-head{align-items:center;margin-bottom:22px;gap:14px}
  .section-head h2{font-size:1.75rem;margin-bottom:5px}
  .count{font-size:.8125rem;padding:5px 9px}
  .buy-help{padding-block:30px}
  .footer{padding-block:28px}
}
@media(max-width:480px){
  .wrap{padding-inline:20px}
  .hero-feature{grid-template-columns:122px minmax(0,1fr);gap:17px}
  .hero-feature img{width:122px;height:182px}
  .hero-feature h2{font-size:1.4rem}
  .hero-feature .feature-button{display:block;text-align:center;padding:10px 8px}
  .section-head{flex-wrap:nowrap}
  .grid{grid-template-columns:1fr;gap:16px}
  .book{display:grid;grid-template-columns:116px minmax(0,1fr)}
  .book-visual{height:100%;min-height:215px;padding:13px;border-bottom:0;border-right:1px solid var(--line)}
  .book-visual img{height:175px;object-fit:contain}
  .book-info{padding:18px 16px;min-width:0}
  .theme{font-size:.75rem;letter-spacing:.04em;margin-bottom:8px}
  .book h3{font-size:1.2rem;line-height:1.3;margin-bottom:8px}
  .author{font-size:.8125rem;margin-bottom:16px}
  .purchase a{font-size:.875rem;min-height:44px;padding:10px 8px}
  .platform{font-size:.75rem}
  .footer-name{font-size:1.15rem}
}
@media(max-width:350px){
  .wrap{padding-inline:16px}
  .hero-feature{grid-template-columns:104px minmax(0,1fr);gap:13px}
  .hero-feature img{width:104px;height:162px}
  .hero-feature h2{font-size:1.2rem}
  .feature-subtitle{font-size:.875rem}
  .book{grid-template-columns:100px minmax(0,1fr)}
  .book-info{padding:16px 13px}
}

@media(max-width:760px){.feature-divider{display:none}}
