
:root{--ink:#222a2e;--ink-2:#374046;--paper:#f8f6f2;--paper-2:#eeeae3;--white:#fff;--line:#dedbd3;--red:#9b3337;--red-dim:#d8aaa7;--smoke:#5b6468;--dark:#19232b;--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}a:hover{color:var(--red)}:focus-visible{outline:3px solid #c75459;outline-offset:4px}h1,h2,h3,h4,.serif{font-family:Georgia,'Times New Roman',serif;font-weight:normal;line-height:1.13}h1{font-size:clamp(3.25rem,7vw,6.1rem);letter-spacing:-.035em;margin:22px 0 22px}h2{font-size:clamp(2.3rem,4.2vw,4.05rem);letter-spacing:-.025em;margin:14px 0 20px}h3{font-size:clamp(1.45rem,2.5vw,2.05rem);margin:16px 0}p{margin:0 0 17px}.eyebrow{font-size:.75rem;letter-spacing:.23em;text-transform:uppercase;color:var(--red);font-weight:700}.copy{color:var(--smoke);font-size:1.15rem;max-width:620px;line-height:1.72}.max{max-width:1190px;margin-inline:auto;padding-inline:30px}.section{padding:90px 0;border-top:1px solid var(--line)}.section.small{padding:62px 0}.tag{display:inline-block;background:#eaddda;color:#823138;padding:5px 11px;font-size:.68rem;text-transform:uppercase;font-weight:bold;letter-spacing:.12em}.button{border:1px solid var(--dark);background:var(--dark);color:#fff!important;display:inline-flex;align-items:center;gap:13px;padding:13px 22px;text-decoration:none;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;min-height:48px;transition:background .2s,border-color .2s}.button:hover{background:var(--red);border-color:var(--red)}.button.outline{color:var(--dark)!important;background:transparent}.button.outline:hover{background:var(--dark);color:#fff!important}.button.arrow::after{content:'→';font-size:1.2rem;line-height:1}.button.light{background:#fff;color:var(--dark)!important;border-color:#fff}.button.light:hover{background:#eee}.button-row{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-top:27px}.quiet{font-size:.82rem;color:var(--smoke)}
/* Navigation */
header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-family:Georgia,serif;text-decoration:none;letter-spacing:.07em;font-size:clamp(1rem,2vw,1.65rem);white-space:nowrap;color:var(--ink)!important}.navlinks{display:flex;flex-wrap:wrap;align-items:center;gap:26px}.navlinks a{text-transform:uppercase;text-decoration:none;letter-spacing:.13em;font-size:.72rem;font-weight:700}.navlinks a[aria-current="page"]{color:var(--red);text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:8px}.skip{position:absolute;left:-9999px;top:15px;background:white;padding:10px;z-index:30}.skip:focus{left:15px}
/* Hero */
.hero{display:grid;grid-template-columns:1fr .9fr;align-items:stretch;min-height:650px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:65px clamp(20px,4vw,74px) 80px 0}.hero-copy h1{max-width:610px}.hero-graphic{background:#162027;min-height:600px;overflow:hidden}.hero-graphic img{height:100%;width:100%;object-fit:cover;object-position:50% 50%}.hero-caption{font-size:1.12rem;margin:0;color:var(--smoke)}.hero .button-row{margin-top:33px}
/* Books */
.book-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(30px,6%,80px);align-items:center}.book-covers{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:start}.book-covers figure{margin:0}.book-covers img{width:100%;height:auto;box-shadow:12px 18px 28px rgba(9,15,20,.19);border-radius:2px}.book-covers figcaption{text-align:center;font-size:.74rem;color:var(--smoke);padding-top:14px}.book-covers a{display:block}.book-text h2{margin-bottom:18px}.book-text p{max-width:500px}.small-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.13em;color:var(--red);font-weight:bold}
/* Dark brand, feature and quote */
.dark{background:var(--dark);color:#fff}.dark .eyebrow{color:var(--red-dim)}.dark .copy{color:#e2e6e8}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;align-items:start}.dark p{color:#d4dade}.quote{font-family:Georgia,serif;font-size:clamp(1.4rem,3vw,2.25rem);line-height:1.3;color:var(--ink)}.stripe{height:4px;width:58px;background:var(--red);margin-bottom:22px}
/* Signup */
.newsletter{padding:83px 0;background:var(--paper-2)}.signup-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:7%;align-items:start}.signup-frame{width:100%;max-width:590px;min-height:420px;border:0;display:block;background:#fff;border-radius:2px}.signup-note{font-size:.82rem;color:#5e6769;margin-top:10px;max-width:580px}.signup-note a{text-decoration:underline;text-underline-offset:3px}.newsletter h2{max-width:450px}
/* Book page */
.book-hero{background:#f1eee8;padding:75px 0 83px;border-bottom:1px solid var(--line)}.book-hero-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(35px,8%,105px);align-items:center}.book-hero-cover{max-width:370px;margin-inline:auto}.book-hero-cover img{box-shadow:24px 31px 48px rgba(0,0,0,.26);width:100%}.book-hero h1{font-size:clamp(3.7rem,7vw,6.6rem);margin:16px 0}.book-hero .book-copy{font-size:1.24rem;line-height:1.65;max-width:610px}.book-facts{border-top:1px solid #d6d0c7;display:flex;gap:28px;flex-wrap:wrap;margin-top:30px;padding-top:15px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:#505b61}.text-section{max-width:800px}.text-section p{font-size:1.13rem;line-height:1.85;color:#4e5a5f}.gallery{display:grid;grid-template-columns:1fr 1fr;max-width:710px;gap:35px;margin:34px auto 0}.gallery figure{margin:0}.gallery img{width:100%;box-shadow:12px 17px 32px #0002}.gallery figcaption{text-align:center;font-size:.85rem;padding-top:15px;color:var(--smoke)}.aside-promo{border-left:4px solid var(--red);padding:20px 26px;background:#fff;max-width:800px}.aside-promo p:last-child{margin-bottom:0}
/* Privacy and footer */
.legal{padding:65px 0 80px}.legal article{max-width:870px}.legal h1{font-size:clamp(2.8rem,6vw,4.5rem)}.legal h2{font-size:1.95rem;margin-top:42px}.legal ul{padding-left:24px}.legal li{margin-bottom:10px}.legal p,.legal li{color:#4e5a5f}.legal .notice{border-left:3px solid var(--red);padding:10px 18px;background:#f1ece6}footer{background:#fff;border-top:1px solid var(--line);padding:33px 0}.foot{display:flex;gap:26px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:.8rem;color:#5a6368}.foot nav{display:flex;gap:20px;flex-wrap:wrap}.foot a{text-decoration:none}.foot a:hover{text-decoration:underline}.upper{letter-spacing:.13em;text-transform:uppercase}
@media(max-width:900px){.max{padding-inline:24px}.nav{min-height:74px}.navlinks{gap:16px}.hero{grid-template-columns:1.05fr .95fr;min-height:540px}.hero-copy{padding-right:26px}.hero-graphic{min-height:540px}.book-grid{gap:30px}.signup-grid{gap:30px}.book-hero-grid{gap:40px}}
@media(max-width:720px){.max{padding-inline:20px}.nav{align-items:flex-start;flex-direction:column;justify-content:center;gap:8px;padding-block:13px}.navlinks{gap:22px}.hero,.book-grid,.split,.signup-grid,.book-hero-grid{grid-template-columns:1fr}.hero{min-height:auto}.hero-copy{padding:54px 0 42px}.hero-copy h1{font-size:clamp(3.05rem,13vw,4.9rem)}.hero-graphic{min-height:0;aspect-ratio:1;max-height:600px}.section{padding:58px 0}.book-covers{max-width:560px;margin-inline:auto}.book-grid .book-text{padding-top:18px}.book-hero{padding:48px 0 55px}.book-hero-cover{max-width:270px}.book-hero .book-copy{font-size:1.08rem}.newsletter{padding:58px 0}.signup-frame{height:440px}.gallery{gap:18px}.foot{align-items:flex-start;flex-direction:column;gap:16px}}
@media(max-width:390px){.brand{font-size:1.05rem}.navlinks{gap:14px}.navlinks a{font-size:.65rem}.button-row{align-items:stretch}.button-row .button{width:100%;justify-content:center}.book-covers{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Company details */
.registered-details{font-style:normal;background:#f0ece5;border-left:3px solid var(--red);padding:17px 20px;margin:18px 0 24px;line-height:1.8;color:#39464c}
.company-disclosure{flex-basis:100%;font-size:.75rem;color:#687176;line-height:1.5;padding-top:12px;border-top:1px solid var(--line)}


/* Version 5: preserve each image's original proportions across screen sizes.
   The author graphic is square and the book covers are portrait 2:3. */
.hero {
  grid-template-columns: minmax(0, 1fr) minmax(0, .9fr);
  align-items: center;
  min-height: 0;
}
.hero-copy {min-width:0}
.hero-graphic {
  width: 100%;
  min-height: 0;
  height: auto;
  aspect-ratio: 1 / 1;
  align-self: center;
  overflow: hidden;
}
.hero-graphic img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center center;
}
.book-covers, .gallery {grid-template-columns: repeat(2, minmax(0, 1fr));}
.book-covers figure, .gallery figure, .book-hero-cover {min-width:0}
.book-covers img, .gallery img, .book-hero-cover img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 2 / 3;
  object-fit: contain;
}
@media (max-width: 720px) {
  .hero { grid-template-columns: 1fr; }
  .hero-graphic { min-height: 0; max-height: none; aspect-ratio:1 / 1; }
}
