/* Shared styles for K Publisher inner pages (books index, about, policies, knowledge).
   Tokens, nav, buttons and footer mirror the homepage so the pages read as one site. */
:root{
  --ink:#141010;--paper:#fbf6f3;--paper2:#f3ebe6;--maroon:#67010c;--maroon2:#8a0f1c;--grey:#6b6361;--line:#ded3cd;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --wrap:1180px;--read:760px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--maroon);margin:0 0 18px}
h1,h2,h3{font-family:var(--serif);font-weight:700;letter-spacing:-.015em;line-height:1.12;margin:0}
h1{font-size:clamp(38px,5vw,64px);line-height:1.05}
h2{font-size:clamp(28px,3.6vw,42px);margin:56px 0 18px}
h3{font-size:clamp(21px,2.4vw,27px);margin:30px 0 10px}
p{margin:0 0 1.1em}
:focus-visible{outline:3px solid var(--maroon2);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 16px;z-index:100}
.skip:focus{left:8px}
.btn{display:inline-block;font-weight:700;font-size:16px;text-decoration:none;padding:15px 26px;border:2px solid var(--ink);border-radius:2px;transition:background .25s,color .25s,border-color .25s}
.btn-solid{background:var(--ink);color:#fff}
.btn-solid:hover{background:var(--maroon);border-color:var(--maroon)}
.btn-line{background:transparent;color:var(--ink)}
.btn-line:hover{background:var(--ink);color:#fff}
.ctas{display:flex;flex-wrap:wrap;gap:14px;margin:26px 0}
.arrow-link{font-weight:700;text-decoration:none;border-bottom:2px solid var(--maroon);padding-bottom:3px}
.arrow-link:hover{color:var(--maroon)}
.nav{position:sticky;top:0;z-index:50;background:rgba(251,246,243,.92);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:88px}
.brand{display:flex;align-items:center;gap:16px;text-decoration:none;font-weight:800;letter-spacing:.08em;font-size:22px}
.brand img{width:58px;height:auto}
.nav ul{display:flex;gap:30px;list-style:none;margin:0;padding:0}
.nav ul a{text-decoration:none;font-size:15px;font-weight:600;padding:6px 0;border-bottom:2px solid transparent}
.nav ul a:hover,.nav ul a[aria-current]{border-bottom-color:var(--maroon)}
.nav .btn{padding:10px 20px;font-size:14px}
.menu-btn{display:none;background:none;border:2px solid var(--ink);border-radius:2px;padding:8px 14px;font:700 14px var(--sans);cursor:pointer;color:var(--ink)}
.mobile-menu{display:none}
.crumbs{font-size:14px;color:var(--grey);padding:26px 0 0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px 10px;margin:0;padding:0}
.crumbs li+li::before{content:"/";margin-right:10px;color:var(--line)}
.crumbs a{text-decoration:none;border-bottom:1px solid var(--line)}
.crumbs a:hover{color:var(--maroon)}
.page-head{padding:34px 0 40px;border-bottom:1px solid var(--line)}
.page-head .lede{font-size:clamp(18px,1.9vw,22px);max-width:36em;color:#3a3231;margin:22px 0 0}
.page{padding:20px 0 90px}
.read{max-width:var(--read)}
.read ul,.read ol{padding-left:1.25em;margin:0 0 1.2em}
.read li{margin-bottom:.45em}
.read a{color:var(--maroon);text-decoration-thickness:1px;text-underline-offset:3px}
.read a:hover{color:var(--maroon2)}
.meta{font-size:15px;color:var(--grey);margin-top:14px}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:0 26px;margin:0 0 1.4em;border-top:2px solid var(--ink)}
.facts dt{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--maroon);padding:14px 0;border-bottom:1px solid var(--line)}
.facts dd{margin:0;padding:12px 0;border-bottom:1px solid var(--line)}
.callout{background:var(--paper2);border-left:4px solid var(--maroon);padding:20px 24px;margin:0 0 1.4em}
.callout p:last-child{margin:0}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:34px;margin:30px 0 0}
.card{display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;padding:28px}
.card img{margin:0 auto 22px;max-height:360px;width:auto}
.card .pair2{display:flex;justify-content:center;gap:12px;margin-bottom:22px}
.card .pair2 img{margin:0;max-height:300px;width:auto;max-width:46%}
.card h2,.card h3{margin:0 0 10px;font-size:clamp(26px,3vw,36px)}
.card .aud{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--maroon);margin:0 0 14px}
.card .btn{margin-top:auto;text-align:center}
.card p.price{font-weight:700}
.linklist{list-style:none;padding:0;margin:26px 0 0}
.linklist li{border-top:1px solid var(--line);padding:22px 0}
.linklist li:last-child{border-bottom:1px solid var(--line)}
.linklist a.t{font-family:var(--serif);font-size:clamp(22px,2.4vw,28px);font-weight:700;text-decoration:none}
.linklist a.t:hover{color:var(--maroon)}
.linklist p{margin:6px 0 0;color:#4a4140}
.byline{display:flex;gap:18px;align-items:center;margin:0 0 30px}
.portrait{float:right;width:min(320px,40%);margin:6px 0 20px 34px}
.portrait img{width:100%;border-radius:2px}
.portrait figcaption{font-size:14px;color:var(--grey);margin-top:8px}
.tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ink);padding:4px 10px;border-radius:2px;margin:0 8px 8px 0}
.q{border-top:1px solid var(--line);padding:6px 0}
.q:last-of-type{border-bottom:1px solid var(--line)}
.q summary{cursor:pointer;font-family:var(--serif);font-size:clamp(19px,2.1vw,24px);font-weight:700;padding:14px 36px 14px 0;list-style:none;position:relative}
.q summary::-webkit-details-marker{display:none}
.q summary::after{content:"+";position:absolute;right:4px;top:10px;font-size:28px;color:var(--maroon);font-weight:400}
.q[open] summary::after{content:"\2212"}
.q p{margin:0 0 16px}
footer{background:#0d0a0a;color:#cfc4c0;padding:70px 0 40px;font-size:16px}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:36px}
.foot .brand{color:#fff;margin-bottom:14px}
.foot .brand img{width:52px}
.foot h4{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#e0a3a9;margin:0 0 16px}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{margin-bottom:8px}
.foot a{text-decoration:none}
.foot a:hover{color:#fff;text-decoration:underline}
.foot .stmt{font-family:var(--serif);font-style:italic;font-size:20px;color:#fff;max-width:14em}
.copy{margin-top:56px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14);font-size:14px;color:#9a8f8b}
@media(max-width:960px){
  .nav-in{height:76px}
  .brand img{width:46px}
  .brand{font-size:19px}
  .nav ul,.nav .btn-nav{display:none}
  .menu-btn{display:block}
  .mobile-menu.open{display:block;border-top:1px solid var(--line);background:var(--paper);padding:10px 28px 22px}
  .mobile-menu a{display:block;padding:14px 0;font-weight:600;text-decoration:none;border-bottom:1px solid var(--line)}
  .cards{grid-template-columns:1fr}
  .foot{grid-template-columns:1fr 1fr}
  .portrait{float:none;width:min(320px,100%);margin:0 0 24px}
}
@media(max-width:560px){
  body{font-size:17px}
  .wrap{padding:0 20px}
  .mobile-menu.open{padding:10px 20px 22px}
  .btn{width:100%;text-align:center;padding:17px 20px}
  .ctas{flex-direction:column}
  .facts{grid-template-columns:1fr;gap:0}
  .facts dt{border-bottom:0;padding:14px 0 0}
  .facts dd{padding:4px 0 14px}
  .foot{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
