
:root{--blue:#00267F;--blue-d:#001a5a;--gold:#FFC726;--gold-d:#e0a800;--cream:#FBF6EA;--sand:#F3E9D2;--ink:#1c1b19;--muted:#5a5650;--card:#fff;--radius:14px;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.6 var(--sans);-webkit-text-size-adjust:100%;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold-d);outline-offset:3px;border-radius:6px}
h1,h2,h3,h4{font-family:var(--serif);line-height:1.2;margin:0 0 .5em;color:var(--blue-d)}
h2{font-size:clamp(1.9rem,4.5vw,2.6rem)}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}
.draft-banner{background:var(--gold);color:#1c1b19;text-align:center;font-weight:700;font-size:.85rem;padding:6px 12px;letter-spacing:.02em}
.site-header{position:sticky;top:0;z-index:20;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.brand{color:#fff;text-decoration:none;font-family:var(--serif);font-weight:700;font-size:1.1rem;white-space:nowrap}
.site-header nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.site-header nav::-webkit-scrollbar{display:none}
.site-header nav a{color:#fff;text-decoration:none;padding:8px 12px;border-radius:999px;font-size:.92rem;white-space:nowrap}
.site-header nav a:hover{background:rgba(255,255,255,.14)}
.hero{background:linear-gradient(160deg,var(--blue) 0%,var(--blue) 58%,#0b3a9e 100%);color:#fff;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:linear-gradient(90deg,var(--blue) 0 33.3%,var(--gold) 33.3% 66.6%,var(--blue) 66.6%)}
.hero-inner{max-width:1120px;margin:0 auto;padding:56px 20px 64px;display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:center}
.headshot{width:100%;border-radius:18px;border:5px solid var(--gold);box-shadow:0 18px 40px rgba(0,0,0,.35);aspect-ratio:476/698;object-fit:cover}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;color:var(--gold);margin:0 0 .6em}
.hero h1{color:#fff;font-size:clamp(2.3rem,6vw,3.8rem);margin-bottom:.2em}
.tagline{font-family:var(--serif);font-size:clamp(1.25rem,2.6vw,1.6rem);margin:0 0 .8em;color:#fff}
.hero-quote{font-style:italic;color:#dfe6fb;border-left:3px solid var(--gold);padding-left:14px;margin:0 0 1.6em;max-width:40em}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;padding:12px 20px;border-radius:999px;border:2px solid var(--blue);transition:transform .15s,background .15s;min-height:44px;line-height:1.2}
.btn:hover{background:var(--blue-d);transform:translateY(-1px)}
.hero .btn{background:var(--gold);border-color:var(--gold);color:#1c1b19}
.hero .btn:hover{background:#ffd552}
.hero .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.hero .btn-ghost:hover{background:rgba(255,255,255,.12)}
section{padding:64px 0}
.lead{font-size:1.1rem;color:var(--muted);max-width:44em}
.jump{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 8px}
.jump a{background:#fff;border:1px solid #e3d8bd;border-radius:999px;padding:8px 14px;text-decoration:none;font-weight:600;font-size:.92rem}
.group{padding:40px 0 8px}
.group-head{border-top:3px solid var(--gold);padding-top:18px;margin-bottom:22px}
.group-head h3{font-size:clamp(1.5rem,3.4vw,2rem);margin-bottom:.25em}
.group-head p{margin:0;color:var(--muted);max-width:46em}
.book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.book{background:var(--card);border-radius:var(--radius);padding:20px;display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto 1fr;grid-template-areas:"cover head" "cover text";column-gap:20px;align-items:start;box-shadow:0 1px 2px rgba(0,0,0,.05),0 8px 24px rgba(60,40,0,.06)}
.book .cover{grid-area:cover;width:100%;border-radius:6px;box-shadow:0 6px 16px rgba(0,0,0,.22)}
.book-head{grid-area:head}.book-text{grid-area:text}
.book h4{font-size:1.2rem;margin-bottom:.15em}
.book .meta{font-size:.85rem;color:var(--muted);margin:0 0 .7em}
.book p{margin:0 0 .8em}
details{margin:0 0 1em}
summary{cursor:pointer;color:var(--blue);font-weight:600;font-size:.95rem;padding:4px 0}
details p{margin-top:.6em}
.coming{background:var(--sand)}
.coming-inner{display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:center}
.coming .cover{border-radius:8px;box-shadow:0 10px 26px rgba(0,0,0,.25)}
.coming .eyebrow{color:var(--blue)}
.about-inner{max-width:780px}
.about p{font-size:1.06rem}
.mgm{background:#fff;border-left:5px solid var(--gold);padding:14px 16px;border-radius:8px}
.media{background:#fff}
.tv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}
.tv{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--cream);border-radius:var(--radius);overflow:hidden;border:1px solid #eadfc4;transition:transform .15s}
.tv:hover{transform:translateY(-2px)}
.tv-thumb{position:relative;aspect-ratio:16/9;background:#000;display:block}
.tv-thumb img{width:100%;height:100%;object-fit:cover}
.play{position:absolute;inset:0;margin:auto;width:56px;height:56px;border-radius:50%;background:rgba(0,38,127,.88);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:22px;padding-left:4px}
.tv-text{display:flex;flex-direction:column;gap:2px;padding:14px 16px 16px}
.tv-text strong{font-family:var(--serif);font-size:1.1rem;color:var(--blue-d)}
.tv-text span{font-size:.9rem;color:var(--muted)}
.tv-text .tv-cta{color:var(--blue);font-weight:700;margin-top:6px}
.press-h{margin-top:40px}
.press{padding-left:1.1em}
.press li{margin:.5em 0}
.contact{background:var(--blue);color:#fff;text-align:center}
.contact h2{color:#fff}
.contact-inner{max-width:720px}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#1c1b19;font-size:1.05rem;word-break:break-all}
.btn-gold:hover{background:#ffd552}
.social{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.social a{color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:8px 14px;display:inline-block;text-decoration:none;font-size:.92rem}
.social a:hover{background:rgba(255,255,255,.12)}
.contact a:focus-visible{outline-color:var(--gold)}
.site-footer{background:var(--blue-d);color:#c9d3f0;text-align:center;font-size:.85rem;padding:18px}
.site-footer p{margin:0}
@media (max-width:900px){.book-grid{grid-template-columns:1fr}.tv-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
 body{font-size:16px}
 .site-header{padding:8px 14px;flex-direction:column;align-items:stretch;gap:4px}
 .brand{text-align:center}
 .site-header nav{justify-content:flex-start}
 .site-header nav a{padding:6px 10px;font-size:.88rem}
 html{scroll-padding-top:96px}
 .hero-inner{grid-template-columns:1fr;gap:26px;padding:34px 20px 48px;text-align:center}
 .headshot{max-width:210px;margin:0 auto}
 .hero-quote{text-align:left}
 .hero-ctas{justify-content:center}
 section{padding:48px 0}
 .book{grid-template-columns:92px minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:"cover head" "text text";column-gap:16px;row-gap:14px;padding:16px}
 .book-head{align-self:center}
 .book-head{grid-area:head}.book-text{grid-area:text}
.book h4{font-size:1.08rem}
 .tv-grid{grid-template-columns:1fr}
 .coming-inner{grid-template-columns:110px 1fr;gap:18px}
 .coming h2{font-size:1.5rem}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.tv{transition:none}}

.creds{list-style:none;padding:0;margin:0 0 1.3em;display:flex;flex-wrap:wrap;gap:6px 0;font-size:.9rem;font-weight:600;color:#fff;letter-spacing:.01em}
.creds li{white-space:nowrap}
.creds li+li::before{content:"·";color:var(--gold);margin:0 .6em;font-weight:700}
@media (max-width:900px){.creds{justify-content:center}}
@media (max-width:640px){.creds{font-size:.86rem;line-height:1.5;gap:2px 0}.creds li:first-child{flex-basis:100%;text-align:center}.creds li:nth-child(2)::before{content:none}}

/* media: click-to-play video cards */
.yt-h{margin-top:40px;font-size:1.25rem}
.yt-grid{margin-top:14px}
.yt .tv-text strong{font-size:1rem;line-height:1.3}
.yt.playing{cursor:default}.yt.playing:hover{transform:none}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sc-thumb{background:linear-gradient(160deg,var(--blue),#0b3a9e)}
@media (max-width:640px){.yt-grid{grid-template-columns:1fr 1fr;gap:12px}.yt-h{font-size:1.15rem;margin-top:32px}.yt .tv-text,.sc .tv-text{padding:8px 10px 10px}.yt .tv-text strong,.sc .tv-text strong{font-size:.86rem}.yt .tv-text span,.sc .tv-text span{font-size:.78rem}.yt-grid .play{width:40px;height:40px;font-size:16px}}

/* media: own portrait video + its TikTok card */
.vid .tv-thumb,.vid-link .tv-thumb{aspect-ratio:3/4}
.vid .tv-thumb video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
.vid:hover{transform:none}
.vid-link .tv-thumb img{position:absolute;inset:0;object-position:center 40%}
