:root{
  --navy:#0b2a48; --navy2:#163c63; --navy3:#214d78; --gold:#d4ad57; --gold2:#b98a2e;
  --ink:#1f2a37; --muted:#667085; --paper:#fffdf8; --cream:#f7f1e5; --line:#e4e7ec;
  --white:#fff; --shadow:0 18px 50px rgba(11,42,72,.12); --radius:18px; --max:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--ink);background:#fff;font-family:Georgia,'Times New Roman',serif;line-height:1.65}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block} button,input,textarea,select{font:inherit}
.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.narrow{width:min(820px,calc(100% - 40px));margin:auto}
.topbar{background:var(--navy);color:#dfe8f1;font:700 12px/1.2 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.topbar a{opacity:.9}.topbar a:hover{opacity:1;color:var(--gold)}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid rgba(228,231,236,.9)}
.header-row{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;min-width:250px}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--navy);border:2px solid var(--gold);color:var(--gold);font:700 18px Georgia,serif}.brand-copy strong{display:block;color:var(--navy);font:800 16px/1.05 Arial,sans-serif;letter-spacing:.04em}.brand-copy span{display:block;color:var(--gold2);font:700 9.5px/1.4 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;margin-top:4px}
.nav{display:flex;align-items:center;gap:28px;font:700 13px Arial,sans-serif;color:#213547}.nav a{padding:29px 0 25px;border-bottom:3px solid transparent}.nav a:hover,.nav a.active{color:var(--navy);border-bottom-color:var(--gold)}
.header-actions{display:flex;align-items:center;gap:10px}.mini-link{font:700 12px Arial,sans-serif;color:var(--navy)}
.menu-btn{display:none;border:0;background:transparent;font-size:26px;color:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 22px;border-radius:4px;border:1px solid var(--gold);background:var(--gold);color:var(--navy);font:800 12px Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase;transition:.2s}.btn:hover{transform:translateY(-1px);background:#e2c06f}.btn.outline{background:transparent;border-color:currentColor}.btn.white{color:#fff;border-color:#fff}.btn.navy{background:var(--navy);border-color:var(--navy);color:#fff}.btn.small{min-height:40px;padding:0 16px;font-size:11px}
.eyebrow{color:var(--gold2);font:800 11px Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;margin:0 0 12px}.display{font-size:clamp(44px,6vw,76px);line-height:1.02;letter-spacing:-.035em;margin:0 0 20px;color:#fff}.lead{font-size:clamp(19px,2vw,24px);line-height:1.5;margin:0 0 28px;color:#eef3f8}.section-title{font:800 clamp(30px,4vw,48px)/1.12 Arial,sans-serif;letter-spacing:-.025em;color:var(--navy);margin:0 0 18px}.section-sub{font-size:20px;color:#475467;max-width:760px;margin:0 auto 42px}.center{text-align:center}
.hero{position:relative;min-height:650px;display:flex;align-items:center;background-image:linear-gradient(90deg,rgba(5,26,48,.94) 0%,rgba(5,26,48,.82) 45%,rgba(5,26,48,.36) 74%,rgba(5,26,48,.24) 100%),url('../images/hero-books.webp');background-size:cover;background-position:center}.hero .content{max-width:750px;padding:84px 0}.hero .eyebrow{color:#e4c16d}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{margin-top:26px;color:#d6dee7;font:600 13px Arial,sans-serif}.hero-note span{display:inline-block;margin-right:18px}
.trust-strip{background:var(--paper);border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:22px 18px;text-align:center;border-right:1px solid var(--line);font:800 13px Arial,sans-serif;color:var(--navy)}.trust-item:last-child{border-right:0}.trust-item span{display:block;color:var(--gold2);font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.section{padding:92px 0}.section.soft{background:#f8f9fb}.section.cream{background:var(--cream)}.section.dark{background:var(--navy);color:#fff}.section.dark .section-title{color:#fff}.section.dark .section-sub{color:#dfe8f1}
.split{display:grid;grid-template-columns:1.02fr .98fr;gap:64px;align-items:center}.visual-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#fff}.visual-card img{width:100%;height:100%;object-fit:cover}.copy p{font-size:18px;margin:0 0 18px}.copy strong{color:var(--navy)}.quote{border-left:4px solid var(--gold);padding:10px 0 10px 22px;margin:28px 0;font-style:italic;color:#344054;font-size:19px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 8px 30px rgba(11,42,72,.05)}.card .icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--cream);color:var(--navy);font:800 20px Arial,sans-serif;margin-bottom:18px}.card h3{font:800 20px/1.25 Arial,sans-serif;color:var(--navy);margin:0 0 10px}.card p{margin:0;color:#667085}.card .kicker{color:var(--gold2);font:800 10px Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px}
.book-system{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}.book-panel{position:relative;overflow:hidden;border-radius:18px;min-height:420px;padding:42px;background:var(--navy);color:#fff}.book-panel.image{background:linear-gradient(120deg,rgba(11,42,72,.94),rgba(11,42,72,.58)),url('../images/desk-alt.webp') center/cover}.book-panel h3{font:800 32px/1.08 Arial,sans-serif;margin:0 0 12px}.book-panel p{font-size:17px;color:#e8eef5}.book-panel .volume{color:var(--gold);font:800 11px Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}.book-panel ul{padding-left:18px}.book-panel li{margin:7px 0}.book-panel.light{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow)}.book-panel.light h3{color:var(--navy)}.book-panel.light p{color:#475467}
.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:36px}.step{position:relative;background:#fff;border:1px solid rgba(255,255,255,.2);border-radius:50%;aspect-ratio:1;display:grid;place-items:center;text-align:center;color:var(--navy);font:800 13px Arial,sans-serif;padding:10px}.step:after{content:'→';position:absolute;right:-13px;color:var(--gold);font-size:18px}.step:last-child:after{display:none}.step span{display:block;color:var(--gold2);font-size:11px;margin-bottom:3px}
.disciplines{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.discipline{border:1px solid #d7dee8;background:#fff;border-radius:12px;padding:22px 16px;min-height:132px;display:flex;flex-direction:column;justify-content:center;text-align:center}.discipline b{font:800 14px Arial,sans-serif;color:var(--navy)}.discipline span{color:var(--gold2);font:800 12px Arial,sans-serif;margin-bottom:8px}
.cta-band{background:linear-gradient(120deg,var(--navy),#163c63);color:#fff;padding:56px 0}.cta-row{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-row h2{font:800 34px Arial,sans-serif;margin:0 0 8px}.cta-row p{margin:0;color:#dce6f0;max-width:720px}.cta-actions{display:flex;gap:10px;flex-shrink:0}
.page-hero{background:linear-gradient(120deg,var(--navy),#214d78);color:#fff;text-align:center;padding:72px 0}.page-hero h1{font:800 clamp(38px,5vw,60px)/1.05 Arial,sans-serif;margin:0 0 14px}.page-hero p{max-width:780px;margin:auto;color:#dce6f0;font-size:20px}.page-hero .eyebrow{color:#e1bd67}
.book-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.cover-frame{background:linear-gradient(180deg,#f8f1e4,#fff);border:1px solid #e7dbc2;padding:22px;border-radius:14px;box-shadow:var(--shadow)}.cover-frame img{margin:auto;max-height:650px;object-fit:contain}.book-meta{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.chip{border:1px solid #d8dee8;border-radius:999px;padding:8px 12px;font:700 12px Arial,sans-serif;color:#344054;background:#fff}
.info-box{padding:22px 26px;border-left:4px solid var(--gold);background:#fbf7ee;border-radius:0 10px 10px 0;color:#344054}.toc{columns:2;column-gap:50px;padding-left:20px}.toc li{break-inside:avoid;margin:8px 0}
.author-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.author-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.author-portrait{height:250px;background:radial-gradient(circle at 50% 35%,#2e5b87,#0b2a48);display:grid;place-items:center;color:var(--gold);font:700 72px Georgia,serif}.author-body{padding:26px}.author-body h3{font:800 22px Arial,sans-serif;color:var(--navy);margin:0 0 8px}.author-role{color:var(--gold2);font:800 11px Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.author-body p{color:#475467}.fine{font-size:13px;color:#667085}
.products{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.product-top{min-height:230px;padding:28px;background:linear-gradient(145deg,#0b2a48,#214d78);color:#fff;position:relative;display:flex;align-items:flex-end}.product-top.cover{background:linear-gradient(90deg,rgba(11,42,72,.25),rgba(11,42,72,.7)),url('../images/front-cover.webp') center/cover}.badge{position:absolute;top:16px;right:16px;background:var(--gold);color:var(--navy);font:800 10px Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;padding:7px 9px;border-radius:4px}.product-top .volume{color:#e0bf70;font:800 10px Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}.product-top h3{font:800 22px/1.1 Arial,sans-serif;margin:6px 0 0}.product-body{padding:24px;display:flex;flex-direction:column;flex:1}.product-body p{color:#667085;margin:0 0 16px}.price{font:800 24px Arial,sans-serif;color:var(--navy);margin-top:auto;margin-bottom:16px}.price s{font-size:15px;color:#98a2b3;margin-right:7px}.product .btn{width:100%}
.form-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:32px;box-shadow:0 10px 36px rgba(11,42,72,.08)}.field{margin-bottom:18px}.field label{display:block;font:800 12px Arial,sans-serif;color:var(--navy);margin-bottom:7px}.field input,.field textarea,.field select{width:100%;padding:13px 14px;border:1px solid #ccd4df;border-radius:5px;background:#fff}.field textarea{min-height:130px}.form-note{font-size:12px;color:#667085}.check{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:#475467}
.engage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.engage-card{padding:30px;border-radius:16px;background:#fff;border:1px solid var(--line)}.engage-card h3{font:800 22px Arial,sans-serif;color:var(--navy);margin:10px 0}.engage-card p{color:#667085}
footer{background:#f5f6f7;border-top:4px solid var(--navy)}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:44px;padding:55px 0}.footer-grid h4{font:800 11px Arial,sans-serif;color:var(--navy);letter-spacing:.16em;text-transform:uppercase;margin:0 0 15px}.footer-grid a{display:block;margin:9px 0;color:#344054}.footer-grid p{color:#667085}.copyright{border-top:1px solid #dfe3e8;padding:20px 0;text-align:center;color:#667085;font-size:13px}
.table-wrap{overflow-x:auto}.compare{width:100%;border-collapse:collapse}.compare th,.compare td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}.compare th{font:800 12px Arial,sans-serif;color:var(--navy);background:#f8fafc}.compare td{color:#475467}
@media(max-width:980px){.nav{position:fixed;inset:112px 0 auto 0;background:#fff;display:none;flex-direction:column;gap:0;padding:10px 26px 22px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav.open{display:flex}.nav a{width:100%;padding:14px 0}.menu-btn{display:block}.header-actions .mini-link{display:none}.split,.book-hero,.book-system{grid-template-columns:1fr}.cards,.author-grid,.products,.engage-grid{grid-template-columns:repeat(2,1fr)}.disciplines{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(3,1fr)}.step{border-radius:16px;aspect-ratio:auto;min-height:86px}.step:after{display:none}.cta-row{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.hero{min-height:620px;background-position:65% center}.hero .content{padding:70px 0}}
@media(max-width:640px){.wrap,.narrow{width:min(100% - 28px,var(--max))}.topbar .wrap{justify-content:center}.topbar .right{display:none}.header-row{height:68px}.brand{min-width:auto}.brand-copy span{display:none}.brand-mark{width:36px;height:36px}.site-header .btn.small{display:none}.nav{inset:102px 0 auto 0}.hero{min-height:690px;background-image:linear-gradient(rgba(5,26,48,.88),rgba(5,26,48,.88)),url('../images/hero-books.webp');background-position:center}.display{font-size:45px}.lead{font-size:19px}.section{padding:68px 0}.split{gap:34px}.cards,.author-grid,.products,.engage-grid{grid-template-columns:1fr}.disciplines{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.book-panel{padding:30px;min-height:auto}.cta-actions{flex-wrap:wrap}.footer-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--line)}.hero-actions .btn{width:100%}.toc{columns:1}}

/* v3 — publication status, cover imagery, applications and fully labelled forms */
:root{--focus-ring:#c18425}
html{scroll-behavior:smooth}
:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
.site-header .nav{gap:17px}
.nav a{white-space:nowrap}
.publication-ribbon{margin:22px 0 0;padding:12px 16px;display:inline-flex;background:rgba(250,240,217,.17);border:1px solid rgba(243,211,139,.5);border-radius:9px;font-size:14px;color:#fff}
.publication-ribbon strong{color:var(--gold);margin-right:5px}
.listing-panel,.availability{background:#fff9ed;border:1px solid #e7cf9c;color:#634515;border-radius:12px;padding:17px 19px;margin:20px 0;font-size:15px;line-height:1.6}
.listing-panel small{color:#5b6371;font-size:13px}.listing-dot{display:inline-block;width:10px;height:10px;background:#247950;border-radius:50%;margin-right:7px}
.book-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px;margin-top:34px}
.book-gallery figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.book-gallery figure:first-child{grid-column:span 2}
.book-gallery img{width:100%;height:320px;object-fit:cover}
.book-gallery figure:first-child img{height:auto;max-height:540px;object-fit:contain;background:#f5f0e6}
.book-gallery figcaption{padding:14px 18px;color:#475467;font-size:14px;font-weight:700}
.asset-caption{font-size:12px;margin:10px 0 0;color:#5b6371;text-align:center;line-height:1.5}
.ecosystem-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:38px}
.featured-offshoot{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden;display:grid;grid-template-columns:42% 58%;align-items:center}
.featured-offshoot img{height:100%;width:100%;min-height:250px;object-fit:cover}
.featured-offshoot:first-child img{object-fit:contain;background:#f5eee4;padding:20px}
.featured-offshoot > div{padding:27px}
.featured-offshoot h3{font:800 24px/1.2 Arial,sans-serif;color:var(--navy);margin:8px 0 12px}
.featured-offshoot p{color:#667085;margin:0 0 14px}
.price-note{font-weight:700;color:#52616f;font-size:14px;margin-top:auto!important}
.product.published{border-color:#d6bd82;box-shadow:0 16px 40px rgba(11,42,72,.09)}
.product-top.workbook-image{background:linear-gradient(90deg,rgba(11,42,72,.83),rgba(11,42,72,.44)),url('../images/desk-alt.webp') center/cover}
.product-top.lab-image{background:linear-gradient(90deg,rgba(11,42,72,.83),rgba(11,42,72,.4)),url('../images/storyboard.webp') center/cover}
.badge.badge-soft{background:#f4dfaf;color:#503b13}.shop-book-thumb{max-height:215px;width:auto;max-width:100%;object-fit:contain;margin:0 auto 18px;border-radius:5px}
.inquiry-form h2{font:800 25px/1.25 Arial,sans-serif;color:var(--navy);margin:0 0 12px}
.inquiry-form .form-intro{margin:0 0 24px;color:#566475}
.inquiry-form .pmp-honey{position:absolute;clip-path:inset(50%);overflow:hidden;width:1px;height:1px}
.inquiry-form .pmp-consent{padding:4px 0 19px;align-items:start}
.inquiry-form .pmp-consent input{margin:5px 0 0;width:auto;min-width:16px}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{font:inherit}
.pmp-form-status{font-size:14px;margin:12px 0 0;line-height:1.5}
.pmp-form-status[data-type="error"]{color:#992e29}.pmp-form-status[data-type="success"]{color:#165f3f}.pmp-form-status[data-type="info"]{color:#394f6a}
.contact-help{padding:30px 0 0;margin-top:38px;border-top:1px solid var(--line)}.contact-help h2{font:800 21px Arial,sans-serif;color:var(--navy)}.contact-help p{font-size:14px;color:#667085}
.text-link{display:inline-block;color:#24517d;font-weight:700;margin-top:16px}
.center-buttons{justify-content:center;margin-top:26px}
@media(max-width:1160px){.site-header .nav{gap:10px}.nav a{font-size:12px}}
@media(max-width:980px){.site-header .nav{gap:0}.ecosystem-highlights{grid-template-columns:1fr}}
@media(max-width:640px){.book-gallery{grid-template-columns:1fr}.book-gallery figure:first-child{grid-column:auto}.book-gallery img{height:auto;max-height:300px;object-fit:contain}.featured-offshoot{grid-template-columns:1fr}.featured-offshoot img{max-height:260px;min-height:0}.featured-offshoot>div{padding:22px}.publication-ribbon{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
