:root{--wine:#772735;--deep:#251016;--gold:#d0aa61;--ivory:#fffaf4;--paper:#fff;--blush:#f1dddf;--ink:#302125;--muted:#746468;--line:rgba(119,39,53,.2);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{margin:0;background:var(--ivory);color:var(--ink);font:17px/1.78 var(--sans)}a{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:white;padding:1rem}.progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:60}.progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),#f1d78d)}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:1.2rem;padding:.9rem clamp(1rem,4vw,3rem);background:rgba(31,11,17,.97);color:white;border-bottom:1px solid rgba(208,170,97,.6)}.brand{margin-right:auto;text-decoration:none}.brand strong,.brand span{display:block}.brand strong{font:500 1rem var(--serif);color:#f2d68e}.brand span{font-size:.55rem;letter-spacing:.16em;text-transform:uppercase}.topbar nav{display:flex;gap:1rem}.topbar nav a{font-size:.63rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.book-hero{min-height:94svh;display:grid;grid-template-columns:1.05fr .95fr;background:radial-gradient(circle at 30% 25%,#a43b4a,#491821 50%,#1b090e);color:#fff}.book-hero>div{padding:clamp(4rem,8vw,8rem);align-self:center}.book-hero img{width:100%;height:100%;object-fit:cover;min-height:650px;mix-blend-mode:screen;opacity:.82}.eyebrow{font-size:.67rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--gold)}.wine{color:var(--wine)}.book-hero h1{font:italic 500 clamp(4.5rem,9vw,9rem)/.86 var(--serif);margin:1rem 0}.subtitle{font:500 clamp(1.2rem,2.2vw,2rem)/1.35 var(--serif);color:#f2d690}.byline{font-size:.76rem;letter-spacing:.11em;text-transform:uppercase}.lead{max-width:720px;color:#ecdde0}.actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.7rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.8rem 1.1rem;border:1px solid var(--gold);text-decoration:none;font-size:.66rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.button.primary{background:linear-gradient(110deg,#f1d48b,var(--gold));color:#23150c}.front{width:min(1120px,calc(100% - 3rem));margin:auto;padding:7rem 0;display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem}.front h2,.section-head h2{font:500 clamp(3rem,6vw,6rem)/1 var(--serif);color:var(--wine);margin:.6rem 0}.front p{color:var(--muted)}.disclosure{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;padding:2rem max(1.5rem,calc((100% - 1120px)/2));background:#2b1118;color:#eadadd}.disclosure strong{color:#f2d690;font:500 1.3rem var(--serif)}.disclosure a{color:#f2d690}.contents{padding:7rem max(1.5rem,calc((100% - 1180px)/2));background:#211016;color:#fff}.section-head{max-width:800px}.section-head h2{color:#fff}.section-head p{color:#d8c4c8}.chapter-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(255,255,255,.17)}.chapter-list li{border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.chapter-list li:nth-child(2n){border-right:0}.chapter-list a{display:grid;grid-template-columns:2.5rem 1fr;gap:.2rem 1rem;min-height:150px;padding:1.3rem;text-decoration:none}.chapter-list a:hover,.chapter-list a:focus-visible{background:rgba(255,255,255,.08);outline:2px solid var(--gold);outline-offset:-2px}.chapter-list span{grid-row:1/3;color:var(--gold);font-size:.68rem}.chapter-list strong{font:500 1.4rem/1.25 var(--serif)}.chapter-list small{color:#d4c0c4}.chapter{scroll-margin-top:4rem}.chapter>header{padding:7rem max(1.5rem,calc((100% - 900px)/2));background:linear-gradient(135deg,#f1dddf,#fffaf4)}.chapter:nth-of-type(even)>header{background:linear-gradient(135deg,#fffaf4,#ede1d1)}.chapter>header span{color:var(--wine);font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600}.chapter>header h2{font:500 clamp(3rem,7vw,6.6rem)/.94 var(--serif);color:var(--wine);margin:.7rem 0}.chapter>header p{font:italic 500 1.3rem var(--serif);color:var(--muted)}.chapter>img{display:block;width:min(1180px,100%);max-height:720px;object-fit:cover;margin:auto}.chapter-body{width:min(780px,calc(100% - 3rem));margin:auto;padding:5rem 0 7rem}.chapter-body>p:first-child::first-letter{float:left;font:500 5.2rem/.78 var(--serif);color:var(--wine);padding:.15rem .5rem .2rem 0}.chapter-body aside{margin:2.5rem 0;padding:1.4rem;border-left:4px solid var(--gold);background:#fff}.chapter-body aside strong{font:500 1.3rem var(--serif);color:var(--wine)}.chapter-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin:2rem 0}.chapter-actions a{padding:.75rem 1rem;background:var(--wine);color:#fff;text-decoration:none;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.next{text-align:right;margin-top:3rem}.next a{color:var(--wine);font-weight:600}.final-chapter{background:#fbf1eb}.afterword{padding:8rem max(1.5rem,calc((100% - 1000px)/2));text-align:center;background:radial-gradient(circle at 50% 0,#9f3b4b,#3a151e 56%,#1b0a0f);color:#fff}.afterword h2{font:italic 500 clamp(3.5rem,7vw,7rem)/.95 var(--serif);margin:.7rem 0}.afterword p{color:#e8d7da}.afterword .actions{justify-content:center}footer{padding:3rem 1rem;text-align:center;background:#14080c;color:#d4c2c5;font-size:.76rem}footer a{display:inline-block;margin:.4rem;color:#efd18b}@media(max-width:820px){.book-hero,.front{grid-template-columns:1fr}.book-hero img{min-height:50svh}.front{gap:2rem}.topbar nav a:nth-child(-n+2){display:none}.disclosure{grid-template-columns:1fr}.chapter-list{grid-template-columns:1fr}.chapter-list li{border-right:0}}@media(max-width:560px){body{font-size:16px}.book-hero>div{padding:4.5rem 1rem}.book-hero h1{font-size:4.1rem}.front,.chapter-body{width:calc(100% - 2rem)}.front{padding:5rem 0}.actions{display:grid}.button{width:100%;text-align:center}.chapter>header{padding:5rem 1rem}.chapter-body{padding:4rem 0 5rem}.chapter-actions{display:grid}.chapter-actions a{text-align:center}.topbar nav a:not(:last-child){display:none}}
