@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,500;1,600&display=swap');
/* Shared chrome so the demos match the main Thibodeau Consulting site.
   Loaded AFTER each demo's inline <style>, so these win for body font + bg. */
body{font-family:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;}
:root{ --bg:#f4f8fc; }

/* sticky navy header (matches main site) */
.tc-header{position:sticky;top:0;z-index:60;background:#0F2A43;border-bottom:1px solid #0a2138}
.tc-nav{max-width:920px;margin:0 auto;padding:0 1.4rem;height:64px;display:flex;align-items:center;gap:16px}
.tc-wordmark{font-family:'Hanken Grotesk',system-ui,sans-serif;font-weight:500;font-size:1.35rem;color:#eef4fb;text-decoration:none;white-space:nowrap}
.tc-navlinks{display:flex;align-items:center;gap:24px;margin-left:auto}
.tc-navlinks a{font-size:.92rem;font-weight:500;color:#c4d2e2;text-decoration:none}
.tc-navlinks a:hover{color:#fff}
.tc-btn{display:inline-flex;align-items:center;gap:.45em;white-space:nowrap;background:#e8f1fb;color:#0F2A43;font-weight:600;font-size:.85rem;padding:.5em 1.05em;border-radius:2px;text-decoration:none;margin-left:8px}
.tc-btn .arr{transition:transform .18s ease}
.tc-btn:hover .arr{transform:translateX(3px)}
.tc-btn:hover{background:#fff}
/* tc-btn lives inside .tc-navlinks, whose link color (#c4d2e2) is more specific — pin navy text in both states */
.tc-navlinks a.tc-btn,.tc-navlinks a.tc-btn:hover{color:#0F2A43}
.tc-navtoggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;margin:0 2px 0 -6px;padding:0;background:none;border:0;color:#c4d2e2;cursor:pointer;border-radius:6px}
.tc-navtoggle:hover{color:#fff;background:rgba(255,255,255,.08)}
@media(max-width:600px){
  .tc-navtoggle{display:inline-flex}
  .tc-nav{position:relative;justify-content:flex-start;gap:10px}
  .tc-navlinks{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#0f2a43;border-bottom:1px solid #0a2138;padding:6px 0;display:none}
  .tc-header.nav-open .tc-navlinks{display:flex}
  .tc-navlinks a.hideable{display:block;padding:13px 18px}
  .tc-btn{margin-left:auto}
}

/* navy footer (matches main site) */
.tc-footer{background:#0F2A43;border-top:1px solid #0a2138}
.tc-foot{max-width:920px;margin:0 auto;padding:34px 1.4rem 46px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.tc-foot .tc-wordmark{font-size:1.1rem}
.tc-fine{font-size:.78rem;color:#93a6ba;margin-top:8px}
.tc-links{display:flex;gap:20px;font-size:.9rem;flex-wrap:wrap}
.tc-links a{color:#c4d2e2;text-decoration:none;padding:.3rem 0}
.tc-links a:hover{color:#fff}

/* mobile sizing fixes */
@media(max-width:600px){
  .tc-nav{padding:0 18px;height:58px}
  .tc-wordmark{font-size:1.02rem}
  .tc-foot{padding:28px 18px 36px}
}

/* a11y + consistency: navy eyebrow to match main site, visible focus */
.eyebrow{color:#0F2A43}
a:focus-visible,button:focus-visible,input[type=range]:focus-visible{outline:2px solid #275f9e;outline-offset:3px}

  /* T monogram logo */
  .wordmark,.tc-wordmark{display:inline-flex;align-items:center;gap:.5em}
  .tmark{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:600;font-size:1.9em;line-height:.85;color:#b3543a;flex:none;display:inline-block;margin-right:.04em}
  @media(max-width:380px){header .wname,.tc-header .wname{display:none}}

/* full-width alternating panels for demo pages (match the main site) */
.band{background:#f4f8fc}
.band-alt{background:#e4ecf5;border-top:3px solid #0F2A43;border-bottom:3px solid #0F2A43}
.band header.hero{border-bottom:none}
.hero-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:2.2rem;align-items:center}
.hero-cartoon{justify-self:end}
.hero-cartoon svg{display:block;width:100%;height:auto;max-width:340px}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr}.hero-cartoon{display:none}}
.engage.band-alt{background:#e4ecf5;padding:38px 0 44px}

/* "Work together" engagement panel */
.engage{padding:6px 0 30px;background:#f4f8fc}
.engage-inner{max-width:920px;margin:0 auto;padding:0 1.4rem}
.engage-card{background:#fff;border:1px solid #e1d8c4;border-top:3px solid #275f9e;border-radius:10px;padding:1.7rem 1.7rem 1.5rem;box-shadow:0 1px 2px rgba(15,42,67,.05)}
.engage-card h2{font-family:'Newsreader',Georgia,serif;font-weight:600;font-size:1.5rem;color:#0F2A43;margin:0 0 .2rem;letter-spacing:-.01em}
.engage-sub{color:#5a6b78;font-size:.95rem;margin:0 0 1.3rem}
.engage-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem 2.2rem}
.engage-col h3{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:#275f9e;font-weight:700;margin:0 0 .6rem}
.engage-col ul,.engage-col ol{margin:0;padding-left:1.15rem}
.engage-col li{font-size:.95rem;color:#1c2733;margin:.35rem 0;line-height:1.5}
.engage-cta{display:inline-block;margin-top:1.4rem;background:#275f9e;color:#fff;font-weight:600;font-size:.92rem;padding:.62rem 1.15rem;border-radius:3px;text-decoration:none}
.engage-cta:hover{background:#0F2A43}

/* canonical action button (Book Call CTAs + interactive controls) — matches engage-cta + main-site primary */
.btn{display:inline-block;border:1px solid #275f9e;background:#275f9e;color:#fff;font:inherit;font-weight:600;font-size:.92rem;padding:.62rem 1.15rem;border-radius:3px;cursor:pointer;text-decoration:none;transition:background .18s ease,border-color .18s ease}
.btn:hover{background:#0F2A43;border-color:#0F2A43}
@media(max-width:640px){.engage-cols{grid-template-columns:1fr;gap:1.1rem}}

/* "How we'd work together" process + deliverables (from designer) */
.howwe{padding:14px 0 6px}
.howwe .eyebrow{display:block}
.howwe h2{font-family:'Newsreader',Georgia,serif;font-weight:600;font-size:1.9rem;color:#0F2A43;letter-spacing:-.01em;margin:.5rem 0 1.5rem;line-height:1.1}
.howwe-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;margin-top:.4rem}
.howwe-step{border:1px solid var(--line);border-radius:8px;padding:1.2rem 1.2rem 1.3rem;background:#fff}
.howwe-step .n{font-family:'Newsreader',Georgia,serif;font-size:1.05rem;color:#9aa6af}
.howwe-step h3{font-family:'Newsreader',Georgia,serif;font-weight:600;font-size:1.18rem;color:#0F2A43;margin:.45rem 0 .5rem;letter-spacing:-.01em}
.howwe-step p{font-size:.92rem;color:#5a6b78;margin:0;line-height:1.55}
.howwe-optional{margin-top:1.5rem;background:#eef3f8;border:1px solid #dbe4ee;border-radius:10px;padding:1.1rem 1.3rem;display:flex;gap:1.1rem;align-items:flex-start}
.howwe-optional .n{font-family:'Newsreader',Georgia,serif;font-size:1.05rem;color:#9aa6af;flex:none}
.howwe-optional .body h3{font-family:'Newsreader',Georgia,serif;font-weight:600;font-size:1.08rem;color:#0F2A43;margin:0 0 .3rem;display:flex;align-items:center;gap:.55rem}
.howwe-optional .tag{font-family:'Hanken Grotesk',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#155e6b;background:#dbeef2;border-radius:3px;padding:.2em .5em}
.howwe-optional p{font-size:.9rem;color:#5a6b78;margin:0;line-height:1.5}
.walkaway{margin-top:1.5rem;background:#fff;border:1px solid #e1d8c4;border-radius:10px;padding:1.3rem 1.5rem}
.walkaway h3{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:#275f9e;font-weight:700;margin:0 0 .9rem}
.walkaway ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.55rem 1.6rem}
.walkaway li{font-size:.95rem;color:#1c2733;display:flex;gap:.55rem;align-items:flex-start}
.walkaway li::before{content:"\2713";color:#1F7A8C;font-weight:700;flex:none}
.walkaway .typ{margin:1rem 0 0;font-size:.86rem;color:#5a6b78;font-style:italic}
.howwe-seemethod{margin-top:2rem;border-top:1px solid #d8d3c8;padding-top:1.3rem}
.howwe-seemethod p{font-size:1.02rem;color:#5a6b78;margin:.5rem 0 0;max-width:44rem;line-height:1.55}
@media(max-width:760px){.howwe-steps{grid-template-columns:1fr 1fr;gap:1.3rem}.walkaway ul{grid-template-columns:1fr}}
@media(max-width:460px){.howwe-steps{grid-template-columns:1fr}}
