@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Inter:wght@400;500;600&display=swap');
:root{--ink:#080c22;--paper:#f4f0e8;--white:#fff;--gold:#e2aa3d;--orange:#f36c2d;--purple:#3b0e4d;--magenta:#9b2058;--line:rgba(255,255,255,.18);--serif:'Cormorant Garamond',Georgia,serif;--sans:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:var(--sans);font-size:17px;line-height:1.65}img{display:block;max-width:100%}a{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:20;background:#fff;color:#000;padding:.7rem 1rem}.site-header{height:84px;padding:0 clamp(1.25rem,5vw,5rem);display:flex;align-items:center;gap:2.5rem;background:#060a1d;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{text-decoration:none;line-height:1;text-transform:uppercase;letter-spacing:.3em}.brand span{display:block;font-size:.64rem}.brand strong{display:block;margin-top:.55rem;font-size:1rem;font-weight:500}.site-header nav{display:flex;gap:clamp(1rem,2.5vw,2.25rem);margin-left:auto}.site-header nav a{text-decoration:none;font-size:.85rem;color:#d8d9e4}.site-header nav a:hover{color:var(--gold)}.menu{display:none}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.65rem 1.5rem;background:linear-gradient(110deg,#d49a2d,#f2cb6c);color:#090b18;text-decoration:none;border:1px solid var(--gold);font-weight:600;font-size:.92rem}.button-small{min-height:40px;padding:.5rem 1.25rem;border-radius:3rem}.button-outline{background:transparent;color:#fff}.button-muted{background:transparent;color:#d9d8df;border-color:#73667a;font-weight:500;cursor:default}.eyebrow{text-transform:uppercase;letter-spacing:.3em;color:var(--gold);font-size:.75rem;font-weight:600}.hero{min-height:760px;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(390px,1.25fr) minmax(280px,1fr);align-items:center;gap:clamp(2rem,4vw,5rem);padding:5.5rem clamp(1.25rem,5vw,5rem);position:relative;overflow:hidden;background:radial-gradient(circle at 15% 55%,rgba(154,22,87,.38),transparent 28%),radial-gradient(circle at 88% 72%,rgba(238,91,34,.25),transparent 30%),linear-gradient(100deg,#140622,#081129 58%,#160921)}.hero:after{content:'';position:absolute;inset:auto 0 0;height:6px;background:linear-gradient(90deg,var(--magenta),var(--orange),#b22b6e,var(--gold))}.signal-lines{position:absolute;inset:0;opacity:.19;background:repeating-linear-gradient(90deg,transparent 0 4.3%,rgba(247,142,170,.42) 4.35% 4.5%,transparent 4.55% 8%);pointer-events:none}.hero>*:not(.signal-lines){position:relative;z-index:1}.hero-book{filter:drop-shadow(0 30px 28px rgba(0,0,0,.55));transform:perspective(900px) rotateY(5deg)}.hero-copy{max-width:670px}.hero-copy h1{font-size:clamp(4rem,7vw,7.4rem);line-height:.78;text-transform:uppercase;letter-spacing:.06em;margin:.5rem 0 1.5rem;font-weight:400}.hero-copy h1 span{display:block;font:500 .16em var(--sans);letter-spacing:.52em;color:var(--gold);margin-bottom:1.1rem}.subtitle{text-transform:uppercase;letter-spacing:.35em;color:#ffc75b;font-size:1rem;line-height:1.55}.byline{text-transform:uppercase;letter-spacing:.42em;font-size:.9rem}.intro{font-size:1.12rem}.hero-copy blockquote,.new-edition blockquote{font:italic 600 clamp(1.8rem,3vw,3rem)/1.1 var(--serif);margin:1.5rem 0;color:#fff}.actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-portrait{align-self:stretch;margin:0;position:relative;min-height:620px}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center;border-left:1px solid rgba(226,170,61,.4);filter:saturate(.8) contrast(1.05)}.hero-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080d26 0,transparent 45%),linear-gradient(0deg,#091027 0,transparent 45%)}.hero-portrait figcaption{position:absolute;z-index:2;bottom:2rem;right:1rem;text-align:right;text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;color:#eee}.progression{background:var(--paper);color:#16151c;padding:6.5rem clamp(1.25rem,7vw,7rem);display:grid;grid-template-columns:.9fr 1.3fr;gap:7vw}.section-lead h2,.case-heading h2,.author h2,.reviews h2,.edition h2,.new-edition h2{font:600 clamp(2.8rem,5vw,5.3rem)/.96 var(--serif);margin:.6rem 0 1.5rem}.section-lead>p:last-child{max-width:560px}.progression-list article{display:grid;grid-template-columns:70px 1fr;gap:1.25rem;padding:1.6rem 0;border-top:1px solid #c8c0b5}.progression-list article:last-child{border-bottom:1px solid #c8c0b5}.progression-list span{font:500 1rem var(--sans);color:#ae6f12}.progression-list h3{font:600 2rem var(--serif);text-transform:uppercase;letter-spacing:.06em;margin:0}.progression-list em{font:500 1.3rem var(--serif)}.progression-list p{margin:.35rem 0}.cases{display:grid;grid-template-columns:1.25fr repeat(3,1fr);background:#0d1125}.case-heading,.cases article{padding:5rem clamp(1.5rem,3vw,3.5rem);border-right:1px solid var(--line)}.case-heading{background:linear-gradient(145deg,#291036,#091124)}.cases article span{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-size:.72rem}.cases article h3{font:600 2rem/1.05 var(--serif);margin:1.2rem 0}.cases article p{color:#c9cad3}.author{display:grid;grid-template-columns:1fr 1.15fr;min-height:650px;background:#090c1e}.author figure{margin:0}.author figure img{width:100%;height:100%;object-fit:cover;object-position:center 38%}.author>div{padding:7rem clamp(2rem,7vw,8rem);background:radial-gradient(circle at 100% 100%,rgba(151,30,76,.35),transparent 45%)}.author>div p:not(.eyebrow){font-size:1.15rem;max-width:690px}.reviews{background:var(--paper);color:#17151d;padding:5rem clamp(1.25rem,7vw,7rem);display:grid;grid-template-columns:.5fr 1fr 1fr;gap:4vw;align-items:center}.reviews h2{font-size:clamp(2.4rem,4vw,4rem)}.review-rule{height:1px;background:#af8a48}.edition{padding:6rem clamp(1.25rem,12vw,12rem);display:grid;grid-template-columns:minmax(220px,370px) 1fr;gap:clamp(3rem,8vw,9rem);align-items:center;background:linear-gradient(120deg,#161027,#070b1d)}.edition>img{box-shadow:0 35px 70px #000;max-height:620px}.edition-sub{font:italic 500 1.7rem var(--serif)}dl{max-width:560px;margin:2rem 0}dl>div{display:grid;grid-template-columns:160px 1fr;border-top:1px solid var(--line);padding:.75rem 0}dt{color:#aeb0bc}dd{margin:0}.new-edition{padding:7rem clamp(1.25rem,10vw,10rem);display:grid;grid-template-columns:minmax(220px,350px) 1fr;gap:clamp(3rem,8vw,9rem);align-items:center;background:radial-gradient(circle at 15% 70%,rgba(218,74,40,.45),transparent 25%),radial-gradient(circle at 92% 30%,rgba(137,25,90,.5),transparent 35%),#090a21;position:relative;overflow:hidden}.new-edition:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 7%,rgba(239,135,152,.14) 7.1% 7.3%)}.new-edition>*{position:relative}.unrevealed-book{aspect-ratio:2/3;background:linear-gradient(135deg,#15162f,#070817);box-shadow:20px 30px 50px #000;border-left:10px solid #20142e;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-transform:uppercase;letter-spacing:.28em;padding:2rem}.unrevealed-book strong{font-size:1.5rem;font-weight:400}.unrevealed-book small{margin-top:5rem;color:var(--gold);line-height:2}footer{background:#050817;padding:4rem clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;border-top:1px solid var(--line);color:#cfd0da}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 2rem}.footer-links a{text-decoration:none}footer small{grid-column:1/-1;color:#858895;margin-top:2rem}
@media(max-width:1100px){.site-header nav{display:none}.site-header .button-small{margin-left:auto}.menu{display:block;margin-left:auto;background:none;color:#fff;border:1px solid #555;padding:.5rem .75rem}.site-header .button-small{display:none}.site-header nav.open{display:flex;position:absolute;top:84px;left:0;right:0;background:#070a1c;padding:1.5rem;flex-direction:column}.hero{grid-template-columns:minmax(180px,.65fr) 1.35fr}.hero-portrait{grid-column:1/-1;min-height:430px}.cases{grid-template-columns:1fr 1fr}.case-heading{grid-column:1/-1}.reviews{grid-template-columns:1fr}.review-rule{display:none}}
@media(max-width:760px){body{font-size:16px}.site-header{height:70px}.site-header nav.open{top:70px}.hero{padding-top:3rem;grid-template-columns:1fr}.hero-book{max-width:260px;margin:auto}.hero-copy h1{font-size:clamp(3.5rem,18vw,5rem)}.hero-portrait{min-height:380px}.progression,.author,.edition,.new-edition{grid-template-columns:1fr}.progression{padding-top:4rem}.cases{grid-template-columns:1fr}.case-heading{grid-column:auto}.cases article,.case-heading{border-right:0;border-bottom:1px solid var(--line);padding:3.5rem 1.5rem}.author figure{min-height:480px}.author>div{padding:4rem 1.5rem}.reviews{padding:4rem 1.5rem}.edition,.new-edition{padding:5rem 1.5rem}.edition>img{max-height:520px;margin:auto}.unrevealed-book{max-width:300px;margin:auto}footer{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr}footer small{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Integrate the hero portrait into the surrounding signal field. */
.hero-portrait{
  margin:-5.5rem -5rem -5.5rem -5rem;
  min-height:760px;
  overflow:hidden;
  background:#0a1027;
}
.hero-portrait img{
  border-left:0;
  filter:saturate(.72) contrast(1.06) brightness(.86) sepia(.06);
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 24%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 24%,#000 100%);
}
.hero-portrait:before{
  content:'';
  position:absolute;
  z-index:1;
  inset:0;
  background:radial-gradient(circle at 68% 28%,rgba(191,72,102,.12),transparent 38%),linear-gradient(90deg,#081027 0,rgba(8,16,39,.72) 14%,transparent 48%),linear-gradient(0deg,#091027 0,rgba(9,16,39,.52) 15%,transparent 46%),linear-gradient(180deg,rgba(24,8,35,.46) 0,transparent 20%);
  mix-blend-mode:multiply;
  pointer-events:none;
}
.hero-portrait:after{
  z-index:1;
  box-shadow:inset 0 0 90px 35px rgba(8,12,34,.46);
  background:linear-gradient(90deg,rgba(129,27,78,.18),transparent 46%),linear-gradient(0deg,rgba(225,83,38,.1),transparent 30%);
  pointer-events:none;
}
@media(max-width:1100px){
  .hero-portrait{min-height:520px;margin:0 -5rem -5.5rem}
  .hero-portrait img{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 15%,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 15%,#000 86%,transparent 100%)}
}
@media(max-width:760px){
  .hero-portrait{min-height:430px;margin:0 -1.25rem -5.5rem}
}

/* Transparent portrait integration. */
.hero-portrait{
  margin:-5.5rem -5rem -5.5rem -6rem;
  min-height:760px;
  overflow:visible;
  background:transparent;
}
.hero-portrait img{
  position:absolute;
  left:50%;
  bottom:-3%;
  width:min(155%,700px);
  height:auto;
  max-width:none;
  object-fit:contain;
  transform:translateX(-50%);
  border:0;
  filter:saturate(.76) contrast(1.03) brightness(.9) drop-shadow(-22px 26px 28px rgba(0,0,0,.42));
  -webkit-mask-image:none;
  mask-image:none;
}
.hero-portrait:before{
  z-index:0;
  inset:7% -14% 2% -24%;
  background:radial-gradient(ellipse at 62% 38%,rgba(191,55,108,.28),transparent 48%),radial-gradient(ellipse at 55% 76%,rgba(236,91,40,.16),transparent 48%);
  mix-blend-mode:screen;
}
.hero-portrait:after{
  z-index:1;
  inset:auto -16% 0 -22%;
  height:28%;
  box-shadow:none;
  background:linear-gradient(0deg,#0b0e26 0,rgba(11,14,38,.68) 25%,transparent 100%);
}
@media(max-width:1100px){
  .hero-portrait{min-height:560px;margin:0 -5rem -5.5rem}
  .hero-portrait img{width:min(72%,680px);bottom:-5%}
}
@media(max-width:760px){
  .hero-portrait{min-height:480px;margin:0 -1.25rem -5.5rem}
  .hero-portrait img{width:min(125%,560px)}
}

.reviews{grid-template-columns:1.05fr repeat(3,1fr);align-items:stretch;gap:0;padding-right:0}
.review-intro{padding-right:clamp(2rem,5vw,6rem)}
.review-intro h2{font-size:clamp(2.5rem,4vw,4.2rem)}
.review-intro a{color:#815313;text-underline-offset:.25rem}
.reviews blockquote{margin:0;padding:1.5rem clamp(1.5rem,3vw,3rem);border-left:1px solid #c8c0b5;display:flex;flex-direction:column;justify-content:center}
.reviews blockquote p{font:italic 600 clamp(1.55rem,2.3vw,2.2rem)/1.15 var(--serif);margin:0 0 2rem}
.reviews cite{font-style:normal;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;color:#714b15}
.reviews cite span{text-transform:none;letter-spacing:0;color:#625e58;font-size:.85rem}
.cta-note{font-size:.88rem;color:#b8b7c3;margin:.85rem 0 0}
@media(max-width:1100px){.reviews{grid-template-columns:1fr 1fr;padding-right:clamp(1.25rem,7vw,7rem)}.review-intro{grid-column:1/-1;padding:0 0 2rem}.reviews blockquote:nth-of-type(3){grid-column:1/-1}.reviews blockquote{border-top:1px solid #c8c0b5;border-left:0}}
@media(max-width:760px){.reviews{grid-template-columns:1fr;padding-right:1.5rem}.review-intro{grid-column:auto}.reviews blockquote:nth-of-type(3){grid-column:auto}.reviews blockquote{padding:2rem 0}}
