:root{
  --green:#8858c8; --green-deep:#5f378f; --green-soft:#f3eef8; --pewter:#8f8795;
  --ink:#1d1b20; --muted:#625d66; --line:#ded7e3; --paper:#fcfbfd; --white:#fff;
  --purple:#8858c8; --purple-dark:#24172f; --purple-soft:#f3eef8;
  --red:#a31924; --red-dark:#741018; --red-soft:#faeef0;
  --shadow:0 18px 45px rgba(36,23,47,.12); --radius:20px; --max:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif}
a{color:var(--green);text-underline-offset:4px} img{max-width:100%;height:auto} button,input,textarea,select{font:inherit}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;margin:0 0 .55em} h1{font-size:clamp(2.6rem,6vw,5.5rem);letter-spacing:-.04em} h2{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.025em} h3{font-size:1.45rem}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.7rem 1rem;border-radius:8px}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:var(--green);margin:0 0 1rem}.lead{font-size:1.22rem;color:var(--muted);max-width:780px}.small{font-size:.92rem;color:var(--muted)}
.site-header{position:sticky;top:0;z-index:30;background:rgba(251,252,251,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{width:min(var(--max),calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:28px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink)}.brand img{width:45px;height:45px;object-fit:contain;border-radius:0}.brand-word{display:flex;flex-direction:column;line-height:1}.brand-word strong{font:700 1.17rem/1 Georgia,'Times New Roman',serif;letter-spacing:.12em;color:var(--purple)}.brand-word span{font-size:.72rem;letter-spacing:.28em;color:#111;margin-top:7px}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:10px;padding:.55rem .8rem}.nav{display:flex;align-items:center;gap:.55rem}.nav a{text-decoration:none;color:var(--ink);font-size:.95rem;padding:.48rem .68rem;border-radius:999px;transition:background-color .18s ease,color .18s ease}.nav a:hover{color:var(--green);background:var(--green-soft)}.nav a[aria-current="page"]{color:#fff;background:var(--green);font-weight:700}.nav .nav-cta{border:1px solid var(--green);border-radius:999px;padding:.55rem .9rem;color:var(--green);background:transparent}.nav .nav-cta:hover{background:var(--green);color:#fff}
.hero{padding:84px 0 74px;background:linear-gradient(135deg,#f3eef8 0%,#fff 55%,#faeef0 100%);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}.hero h1 em{color:var(--purple);font-weight:400}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-block;border:0;border-radius:999px;padding:.83rem 1.15rem;background:var(--green);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.button:hover{background:var(--green-deep)}.button.secondary{background:#fff;color:var(--green);border:1px solid var(--green)}.button.light{background:#fff;color:var(--green)}.hero-mark{background:#fff;border:1px solid var(--line);border-radius:30px;padding:34px;box-shadow:var(--shadow);text-align:center}.hero-mark img{width:min(290px,85%)}.hero-mark .official-logo{width:min(390px,100%);mix-blend-mode:multiply}.hero-mark p{margin:.75rem 0 0;color:var(--muted);font-size:.95rem}
.section{padding:74px 0}.section.alt{background:#fff;border-block:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}.section-head p{margin-bottom:0}.feature-grid,.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feature-card,.book-card,.form-card,.info-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px rgba(36,23,47,.07)}.feature-card{padding:28px}.feature-card p:last-child{margin-bottom:0}.feature-card .kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:var(--red);font-weight:700}.feature-card a{font-weight:700}
.book-card{overflow:hidden;display:flex;flex-direction:column}.cover-art-wrap{aspect-ratio:2/3;position:relative;background:#111;overflow:hidden}.cover-art{width:100%;height:100%;display:block;object-fit:cover}.coming-soon-banner{position:absolute;top:18px;right:-42px;z-index:3;width:180px;text-align:center;padding:.48rem .4rem;background:#5d3b87;color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;transform:rotate(36deg);box-shadow:0 4px 14px rgba(0,0,0,.28)}.cover-placeholder{aspect-ratio:2/3;background:linear-gradient(155deg,#17121b,#5f378f 58%,#a31924);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;position:relative}.cover-placeholder::after{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.28)}.cover-placeholder .cover-type{font-size:.72rem;text-transform:uppercase;letter-spacing:.17em;opacity:.8;position:relative;z-index:1}.cover-placeholder strong{font:400 1.55rem/1.08 Georgia,'Times New Roman',serif;margin-top:8px;position:relative;z-index:1}.cover-placeholder.purple{background:linear-gradient(155deg,#17121b,#24172f 58%,#684297)}.book-body{padding:22px;display:flex;flex-direction:column;flex:1}.book-meta{font-size:.78rem;text-transform:uppercase;letter-spacing:.11em;color:var(--red);font-weight:700;margin-bottom:.45rem}.book-body h3{margin-bottom:.4rem}.book-body p{color:var(--muted)}.badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:10px}.badge{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:.25rem .6rem;font-size:.78rem;background:#faf8fc;color:var(--muted)}.badge.soon{background:var(--red-soft);color:var(--red-dark);border-color:#e7c8cc}.book-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.text-button{font-weight:700;text-decoration:none}.disabled-link{color:#8d9692;text-decoration:none;cursor:default}
.page-hero{padding:64px 0 44px;background:#fff;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.5rem,5vw,4.6rem)}.catalog-filter{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}.catalog-filter button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.55rem .9rem;cursor:pointer}.catalog-filter button.active{background:var(--green);color:#fff;border-color:var(--green)}
.author-shell{padding:58px 0 72px}.author-brand{text-align:center;margin-bottom:34px}.author-logo{width:min(460px,78vw);max-height:310px;object-fit:contain}.author-hero{display:grid;grid-template-columns:.78fr 1.22fr;gap:48px;align-items:center}.author-photo-wrap{border-radius:26px;overflow:hidden;background:var(--purple-dark);box-shadow:var(--shadow)}.author-photo{width:100%;display:block;aspect-ratio:4/5;object-fit:cover}.author-mark{min-height:430px;border-radius:28px;background:linear-gradient(145deg,#17121b,#2b1d37 60%,#684297);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:38px;box-shadow:var(--shadow);position:relative;overflow:hidden}.author-mark::before,.author-mark::after{content:"";position:absolute;width:240px;height:110px;border-top:2px solid rgba(255,255,255,.22);border-radius:50%;top:78px}.author-mark::before{left:-75px;transform:rotate(18deg)}.author-mark::after{right:-75px;transform:rotate(-18deg)}.author-mark .initials{font:400 4.8rem/1 Georgia,'Times New Roman',serif;letter-spacing:.05em}.author-mark .name{font:400 1.45rem/1.2 Georgia,'Times New Roman',serif;letter-spacing:.18em;margin-top:12px}.author-mark .note{font-size:.78rem;opacity:.72;margin-top:30px}.author-copy .eyebrow{color:var(--purple)}.author-copy h1{font-size:clamp(2.7rem,5vw,4.7rem)}.author-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.author-books{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.author-books article{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(36,23,47,.07)}.author-books article>img,.author-books .cover-art-wrap{width:100%;aspect-ratio:2/3;object-fit:cover}.author-books h3{font-size:1.15rem;margin:14px 16px 4px}.author-books p{margin:0 16px 18px;color:var(--muted);font-size:.9rem}.button.purple{background:var(--purple)}.button.purple:hover{background:var(--purple-dark)}
.form-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:28px;align-items:start}.form-card{padding:28px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.address-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(120px,.75fr) minmax(120px,.75fr);gap:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-weight:700;font-size:.94rem}.field input,.field textarea,.field select{width:100%;border:1px solid #d8cfdf;border-radius:10px;padding:.72rem .78rem;background:#fff;color:var(--ink)}.field textarea{min-height:120px;resize:vertical}.book-request-list{display:grid;gap:12px;margin:18px 0 26px}.request-row{display:grid;grid-template-columns:minmax(0,1fr) 135px 90px;gap:12px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fcfbfd}.request-title strong{display:block}.request-title span{font-size:.85rem;color:var(--muted)}.subtotal-box{border-radius:14px;background:var(--purple-soft);padding:16px 18px;margin:18px 0}.subtotal-line{display:flex;justify-content:space-between;gap:20px;font-weight:700}.subtotal-line+.subtotal-line{margin-top:5px}.subtotal-line.total{margin-top:11px;padding-top:11px;border-top:1px solid rgba(136,88,200,.22);font-size:1.08rem}.form-error{border:1px solid #b64a4a;background:#fff2f2;color:#7d2323;padding:12px 14px;border-radius:10px;margin:14px 0}.subtotal-note{font-size:.86rem;color:var(--muted);margin:.35rem 0 0}.checkline{display:flex;align-items:flex-start;gap:10px;margin:13px 0}.checkline input{margin-top:.28rem}.side-stack{display:grid;gap:14px;align-content:start}.info-card{padding:18px}.info-card h3{font-size:1.25rem;margin-bottom:.35em}.info-card p{margin:.45rem 0}.info-card p:last-child{margin-bottom:0}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px}.contact-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.closing{background:linear-gradient(115deg,var(--purple-dark),#3e2455 68%,var(--red-dark));color:#fff;padding:48px 0}.closing .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.closing h2{font-size:2.15rem;margin-bottom:.25rem}.closing p{margin:0;color:#eee8f3}.footer{padding:34px 0 45px}.footer-inner{width:min(var(--max),calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer p{margin:.35rem 0 0;color:var(--muted);font-size:.9rem}.notice{border-left:4px solid var(--red);background:var(--red-soft);padding:15px 18px;border-radius:0 12px 12px 0}.privacy-copy{max-width:850px}.privacy-copy h2{font-size:1.65rem;margin-top:2rem}.hidden{display:none!important}
@media(max-width:900px){.hero-grid,.author-hero,.form-layout,.contact-grid{grid-template-columns:1fr}.feature-grid,.book-grid,.author-books{grid-template-columns:repeat(2,1fr)}.hero{padding-top:56px}.author-mark{min-height:330px}.section-head{align-items:start;flex-direction:column}.nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 20px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.menu-toggle{display:block}.nav .nav-cta{text-align:center}}
@media(max-width:620px){body{font-size:16px}.wrap,.header-inner,.footer-inner{width:min(100% - 28px,var(--max))}.feature-grid,.book-grid,.author-books,.field-grid,.address-grid{grid-template-columns:1fr}.request-row{grid-template-columns:1fr 1fr}.request-title{grid-column:1/-1}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{text-align:center}.closing .wrap,.footer-inner{grid-template-columns:1fr;display:grid}.brand-word strong{font-size:1rem}.brand-word span{font-size:.64rem}.page-hero{padding-top:46px}}

/* V6 retail links and bibliography */
.format-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:18px}.format-link{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:.42rem .72rem;border:1px solid var(--green);border-radius:999px;background:#fff;color:var(--green);font-size:.82rem;font-weight:800;text-decoration:none;line-height:1.15;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.format-link:hover{background:var(--green);color:#fff}.signed-link{border-color:#8c789e;color:var(--purple)}.signed-link:hover{background:var(--purple);border-color:var(--purple);color:#fff}.cover-placeholder.horsemen{background:linear-gradient(160deg,#21130f 0%,#7b2d1d 44%,#17171a 100%);justify-content:flex-start;padding:30px 24px}.cover-placeholder.horsemen::after{border-color:rgba(255,255,255,.22)}.cover-placeholder.horsemen .cover-type{margin-top:10px}.cover-placeholder.horsemen strong{font-size:2rem;text-transform:uppercase;letter-spacing:.03em;margin-top:22px}.cover-subtitle{position:relative;z-index:1;font:italic 1.05rem/1.25 Georgia,'Times New Roman',serif;margin-top:8px;max-width:92%}.cover-authors{position:relative;z-index:1;margin-top:auto;font-size:.72rem;line-height:1.45;opacity:.83;text-transform:uppercase;letter-spacing:.08em}.anthology-list{columns:2 360px;column-gap:20px}.anthology-group{display:inline-block;width:100%;vertical-align:top;break-inside:avoid;margin:0 0 20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px rgba(35,55,48,.05);overflow:hidden}.anthology-group-head{padding:20px 22px 16px;background:linear-gradient(180deg,#fff,#f7f2fa);border-bottom:1px solid var(--line)}.anthology-group-head h3{margin:.18rem 0 .25rem;font-size:1.35rem}.anthology-group-head p{margin:0;color:var(--muted);font-size:.9rem}.anthology-period{font-size:.73rem!important;color:var(--green)!important;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.anthology-items{display:grid}.anthology-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 20px}.anthology-row+.anthology-row{border-top:1px solid var(--line)}.anthology-row h4{margin:0 0 .25rem;font-size:1rem;line-height:1.28}.anthology-row p{margin:0;color:var(--muted);font-size:.84rem}.anthology-buy{white-space:nowrap}.author-catalog{grid-template-columns:repeat(3,1fr)}.anthology-list.compact .anthology-group{box-shadow:none}
@media(max-width:900px){.anthology-list{columns:1}.author-catalog{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.author-catalog{grid-template-columns:1fr}.anthology-row{grid-template-columns:1fr;gap:10px}.anthology-buy{justify-self:start}}

/* V15 locked-logo color treatment */
.site-header{box-shadow:0 3px 16px rgba(36,23,47,.04)}
.nav a:hover{color:var(--purple);background:var(--purple-soft)}
.nav a[aria-current="page"]{background:var(--purple)}
.nav .nav-cta{border-color:var(--purple);color:var(--purple)}
.nav .nav-cta:hover{background:var(--purple);color:#fff}
.eyebrow{color:var(--purple)}
.hero-actions .button:first-child{background:var(--purple)}
.hero-actions .button:first-child:hover{background:var(--purple-dark)}
.button.secondary{color:var(--purple);border-color:var(--purple)}
.button.secondary:hover{background:var(--purple-soft)}
.page-hero{background:linear-gradient(180deg,#fff 0%,#faf7fc 100%)}
.page-hero::after{content:"";display:block;width:72px;height:3px;background:linear-gradient(90deg,var(--purple),var(--red));margin-top:30px}
.catalog-filter button.active{background:var(--purple);border-color:var(--purple)}
.text-button,.feature-card a,.footer-links a{color:var(--purple)}
.text-button:hover,.feature-card a:hover,.footer-links a:hover{color:var(--red)}
.contact-card,.form-card,.info-card,.feature-card,.book-card{border-color:#ddd4e4}

/* V19 final polish */
@media(max-width:620px){
  .section{padding:64px 0}
  .feature-card{padding:24px}
  .book-body{padding:19px}
  .form-card,.contact-card{padding:24px}
  .info-card{padding:16px}
  .feature-grid,.book-grid{gap:18px}
}
