/* ============================================================
   THINGLET MARKETING — site-v2.css  (Batch 2, national hub)
   Loaded AFTER assets/styles.css on every page. styles.css is
   served with a one-year Expires header and no cache-buster, so
   anything new or changed lives here instead. Bump the ?v= on
   the <link> when this file changes.
   ============================================================ */

/* ---- Nav: two more links (Books, Speaking) need room ---- */
.nav-links{gap:22px}
.nav-links a{font-size:.92rem}
@media(max-width:1180px){.nav-links{gap:16px}.nav-links a{font-size:.88rem}}
@media(max-width:1040px){
  .nav-links{position:absolute;top:74px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;
    background:var(--white);border-bottom:1px solid var(--line);max-height:0;overflow:hidden;transition:max-height .28s ease}
  .nav-links.open{max-height:560px}
  .nav-links a{padding:16px 24px;border-top:1px solid var(--line);font-size:.96rem}
  .nav-links .btn{margin:14px 24px}
  .burger{display:flex}
}

/* ---- Proof strip under the hero ---- */
.proof-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:38px}
@media(max-width:900px){.proof-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.proof-strip{grid-template-columns:1fr}}
.proof{border-top:2px solid var(--azure);padding-top:12px}
.proof b{display:block;font-family:var(--display);font-size:1.55rem;font-weight:800;letter-spacing:-.02em;color:#fff;line-height:1.1}
.proof span{display:block;font-size:.86rem;color:#bcd3dc;margin-top:4px}

/* ---- Books ---- */
.book-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:34px}
.book{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px 22px;display:flex;flex-direction:column;position:relative;transition:transform .18s,box-shadow .18s}
.book:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.book .cover{aspect-ratio:2/3;border-radius:6px;margin-bottom:18px;display:flex;align-items:flex-end;padding:16px;
  background:linear-gradient(160deg,#0B2530 0%,#0e3a4d 60%,#0A9DCC 140%);color:#fff;font-family:var(--display);font-weight:800;font-size:1.15rem;line-height:1.15;letter-spacing:-.01em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 10px 24px rgba(4,33,43,.18)}
.book .cover.alt{background:linear-gradient(160deg,#3d3d3d 0%,#1f2a2f 60%,#0B7491 150%)}
.book .cover small{display:block;font-family:var(--mono);font-weight:500;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;opacity:.75;margin-bottom:8px}
.book .num{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--azure-deep);margin-bottom:6px}
.book h3{font-family:var(--display);font-size:1.18rem;margin:0 0 8px;color:var(--ink-strong)}
.book p{font-size:.93rem;color:var(--ink);margin:0 0 16px;flex:1}
.book .status{display:inline-block;font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--azure-soft);color:var(--azure-deep);margin-bottom:12px;align-self:flex-start}
.book .status.soon{background:#f3f4f6;color:#5b6b71}
.book .actions{display:flex;gap:10px;flex-wrap:wrap}
.book .actions .btn{padding:10px 16px;font-size:.88rem}
.on-dark .book{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
.on-dark .book h3{color:#fff}
.on-dark .book p{color:#bcd3dc}

/* ---- Speaking ---- */
.talk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px;margin-top:34px}
.talk{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;border-top:3px solid var(--azure)}
.talk .aud{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--azure-deep);margin-bottom:8px}
.talk h3{font-family:var(--display);font-size:1.22rem;margin:0 0 10px;color:var(--ink-strong)}
.talk p{font-size:.95rem;color:var(--ink);margin:0 0 12px}
.talk ul{margin:0;padding-left:18px;font-size:.92rem;color:var(--ink)}
.talk li{margin:4px 0}
.formats{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.formats span{font-family:var(--mono);font-size:.76rem;letter-spacing:.04em;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--white);color:var(--ink)}
.on-dark .formats span{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);color:#dbe9ee}
.bio-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start;margin-top:30px}
@media(max-width:880px){.bio-grid{grid-template-columns:1fr}}
.bio-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px}
.bio-card h4{font-family:var(--display);font-size:1.05rem;margin:0 0 10px;color:var(--ink-strong)}
.bio-card ul{margin:0;padding-left:18px;font-size:.93rem;color:var(--ink)}
.bio-card li{margin:5px 0}
.bio-card .copy-bio{margin-top:14px;font-size:.9rem;color:#5b6b71;border-top:1px solid var(--line);padding-top:12px}

/* ---- Inline subscribe (books page, footer of speaking) ---- */
.sub-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;box-shadow:var(--shadow-lg);max-width:640px;margin:30px auto 0}
.sub-card h3{font-family:var(--display);font-size:1.3rem;margin:0 0 6px;color:var(--ink-strong)}
.sub-card p{font-size:.93rem;color:var(--ink);margin:0 0 18px}
.sub-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}
@media(max-width:600px){.sub-row{grid-template-columns:1fr}}
.sub-row input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:.95rem;color:var(--ink)}
.sub-row input:focus{outline:2px solid var(--azure);outline-offset:1px;border-color:var(--azure)}
.sub-row .btn{white-space:nowrap}

/* ---- Speaking band on the homepage ---- */
.speak-band{background:var(--azure-soft);border:1px solid #cfe6ef;border-radius:var(--radius);padding:30px 28px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-top:30px}
@media(max-width:760px){.speak-band{grid-template-columns:1fr}}
.speak-band h3{font-family:var(--display);font-size:1.35rem;margin:0 0 6px;color:var(--ink-strong)}
.speak-band p{margin:0;font-size:.95rem;color:var(--ink)}

/* ---- Utility ---- */
.center-cta{text-align:center;margin-top:30px}
.page-updated{max-width:820px;margin:26px auto 0;text-align:center;font-family:var(--mono);font-size:.78rem;letter-spacing:.04em;color:#6b7a80}
.page-updated a{text-decoration:underline}
.src-link{color:var(--azure-deep);text-decoration:underline;text-underline-offset:2px}
.on-dark .src-link{color:var(--azure)}

/* hero: the proof strip sits in a second .wrap; pull it up under the grid */
.hero .wrap + .wrap{padding-top:0;margin-top:-56px;padding-bottom:64px}
@media(max-width:940px){.hero .wrap + .wrap{margin-top:-24px}}
.page-head .btn-ghost{color:#fff;border-color:rgba(255,255,255,.45)}
.page-head .btn-ghost:hover{background:rgba(255,255,255,.08);border-color:#fff}
.talk-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:760px){.talk-grid{grid-template-columns:1fr}}

/* real cover images in book cards */
.book .cover-img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:6px;margin-bottom:18px;box-shadow:0 10px 24px rgba(4,33,43,.18)}

/* ---- Tools we built ---- */
.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}
@media(max-width:960px){.tool-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.tool-grid{grid-template-columns:1fr}}
.tool{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;color:inherit;text-decoration:none;transition:transform .18s,box-shadow .18s}
.tool:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.tool img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;border-bottom:1px solid var(--line);background:#1b1b1b}
.tool-body{padding:18px 20px 22px}
.tool-price{display:inline-block;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--azure-deep);background:var(--azure-soft);padding:4px 9px;border-radius:999px;margin-bottom:10px}
.tool h3{font-family:var(--display);font-size:1.15rem;margin:0 0 6px;color:var(--ink-strong)}
.tool p{font-size:.92rem;color:var(--ink);margin:0}
