/* The Cheeky Rooster base styles (extracted from the live homepage, Oct 2026) */
body{margin:0}
:root{
    --navy:#1E2D4A;
    --navy-deep:#16233A;
    --sky:#5882BC;
    --sky-ink:#3F659B;
    --lav:#B4A0F0;
    --slate:#556080;
    --pale:#E8EEF8;
    --mist:#F4F6FB;
    --powder:#C8D8F0;
    --white:#FFFFFF;

    --bg:#FFFFFF;
    --bg-soft:var(--mist);
    --bg-fill:var(--pale);
    --band:var(--navy);
    --band-ink:#FFFFFF;
    --band-sub:var(--powder);
    --ink:var(--navy);
    --ink-2:var(--slate);
    --rule:#D6E0F0;
    --card:#FFFFFF;
    --card-edge:#DDE5F3;
    --accent:var(--sky);
    --accent-ink:var(--sky-ink);
    --btn:var(--navy);
    --btn-ink:#FFFFFF;
    --shadow:0 1px 2px rgba(30,45,74,.05), 0 8px 24px -12px rgba(30,45,74,.18);

    --serif:Georgia,"Times New Roman",serif;
    --sans:Arial,Helvetica,sans-serif;
    --measure:1120px;
  }
  @media (prefers-color-scheme:dark){
    :root:not([data-theme="light"]){
      --bg:#111A2C;
      --bg-soft:#16223A;
      --bg-fill:#1B2942;
      --band:#0D1424;
      --band-ink:#FFFFFF;
      --band-sub:var(--powder);
      --ink:#EAF0FA;
      --ink-2:#A9B8D4;
      --rule:#2B3A57;
      --card:#182541;
      --card-edge:#2B3A57;
      --accent:#8AAEDE;
      --accent-ink:#9CBCE8;
      --btn:#8AAEDE;
      --btn-ink:#0D1424;
      --shadow:0 1px 2px rgba(0,0,0,.3), 0 10px 28px -14px rgba(0,0,0,.6);
    }
  }
  :root[data-theme="dark"]{
    --bg:#111A2C;
    --bg-soft:#16223A;
    --bg-fill:#1B2942;
    --band:#0D1424;
    --band-ink:#FFFFFF;
    --band-sub:var(--powder);
    --ink:#EAF0FA;
    --ink-2:#A9B8D4;
    --rule:#2B3A57;
    --card:#182541;
    --card-edge:#2B3A57;
    --accent:#8AAEDE;
    --accent-ink:#9CBCE8;
    --btn:#8AAEDE;
    --btn-ink:#0D1424;
    --shadow:0 1px 2px rgba(0,0,0,.3), 0 10px 28px -14px rgba(0,0,0,.6);
  }

  *{box-sizing:border-box}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:var(--sans);
    font-size:16.5px;
    line-height:1.62;
    -webkit-font-smoothing:antialiased;
  }
  a{color:var(--accent-ink)}
  h1,h2,h3{font-family:var(--serif);text-wrap:balance;margin:0;line-height:1.14;letter-spacing:-.012em}
  p{margin:0}
  img{max-width:100%}
  :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}
  @media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

  .wrap{max-width:var(--measure);margin:0 auto;padding-inline:24px}
  .band{background:var(--band);color:var(--band-ink)}
  .soft{background:var(--bg-soft)}
  .fill{background:var(--bg-fill)}
  section{padding-block:76px}
  @media (max-width:640px){section{padding-block:52px}}

  /* ---------- eyebrow device (from the proposal running header) ---------- */
  .eyebrow{
    display:flex;align-items:center;gap:12px;
    font:700 11px/1 var(--sans);
    letter-spacing:.18em;text-transform:uppercase;
    color:var(--accent-ink);
    margin-bottom:18px;
  }
  .eyebrow::before{content:"";width:30px;height:2px;background:var(--accent);flex:none}
  .band .eyebrow{color:var(--band-sub)}
  .band .eyebrow::before{background:var(--lav)}

  .h2{font-size:clamp(1.7rem,3.4vw,2.5rem)}
  .lede{font-size:1.075rem;color:var(--ink-2);max-width:64ch;margin-top:14px}
  .band .lede{color:var(--band-sub)}

  /* ---------- nav ---------- */
  header.nav{position:sticky;top:0;z-index:20;background:var(--navy);border-bottom:1px solid rgba(200,216,240,.18)}
  .navrow{display:flex;align-items:center;gap:20px;min-height:68px;flex-wrap:wrap;padding-block:10px}
  .brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff;margin-right:auto}
  .brand img{width:42px;height:42px;flex:none}
  .brand span{font-family:var(--serif);font-size:1.13rem;letter-spacing:.005em;white-space:nowrap}
  .navlinks{display:flex;gap:22px;flex-wrap:wrap}
  .navlinks a{color:var(--powder);text-decoration:none;font-size:.875rem;letter-spacing:.02em;padding-block:4px}
  .navlinks a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
  @media (max-width:760px){.navlinks{display:none}}

  /* ---------- buttons ---------- */
  .btn{
    display:inline-block;font:700 .875rem/1 var(--sans);letter-spacing:.03em;
    padding:15px 24px;border-radius:3px;text-decoration:none;border:1.5px solid transparent;
    transition:background .15s ease,color .15s ease,border-color .15s ease;
  }
  .btn-primary{background:var(--btn);color:var(--btn-ink);border-color:var(--btn)}
  .btn-primary:hover{background:var(--navy-deep);border-color:var(--navy-deep);color:#fff}
  :root[data-theme="dark"] .btn-primary:hover{background:#A6C4EA;border-color:#A6C4EA;color:#0D1424}
  .btn-ghost{background:transparent;color:var(--accent-ink);border-color:var(--rule)}
  .btn-ghost:hover{border-color:var(--accent);color:var(--accent-ink)}
  .band .btn-primary{background:#fff;color:var(--navy);border-color:#fff}
  .band .btn-primary:hover{background:var(--powder);border-color:var(--powder);color:var(--navy)}
  .band .btn-ghost{color:#fff;border-color:rgba(200,216,240,.5)}
  .band .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.07)}
  .nav .btn{padding:11px 18px}

  .btnrow{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}

  /* ---------- hero ---------- */
  .hero{padding-block:96px 84px}
  .hero h1{font-size:clamp(2.3rem,5.6vw,3.9rem);font-weight:700;max-width:19ch}
  .themes{
    margin-top:22px;color:var(--lav);font-size:.9rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  }
  .hero .lede{font-size:1.16rem;margin-top:20px;max-width:56ch}
  .heronote{
    margin-top:34px;padding-top:20px;border-top:1px solid rgba(200,216,240,.22);
    color:var(--powder);font-size:.86rem;max-width:60ch;
  }
  @media (max-width:640px){.hero{padding-block:60px 56px}}

  /* ---------- statement ---------- */
  .statement h2{font-size:clamp(1.65rem,3.6vw,2.35rem);max-width:21ch}
  .statement .cols{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;margin-top:8px}
  @media (max-width:820px){.statement .cols{grid-template-columns:1fr;gap:22px}}
  .statement p{color:var(--ink-2);max-width:60ch}
  .statement p + p{margin-top:14px}

  /* ---------- services ---------- */
  .svc{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:34px}
  @media (max-width:820px){.svc{grid-template-columns:1fr}}
  .svc article{background:var(--card);padding:34px 32px;display:flex;flex-direction:column;gap:12px}
  .svc h3{font-size:1.32rem}
  .svc p{color:var(--ink-2);font-size:.97rem}
  .deliv{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}
  .deliv li{
    font-size:.845rem;color:var(--ink-2);padding-left:16px;position:relative;letter-spacing:.005em;
  }
  .deliv li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:1.5px;background:var(--accent)}
  .svclabel{font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink);margin-top:4px}


  /* ---------- engagement ---------- */
  .models{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}
  @media (max-width:820px){.models{grid-template-columns:1fr}}
  .models article{background:var(--card);border:1px solid var(--card-edge);border-top:3px solid var(--accent);padding:28px 26px;box-shadow:var(--shadow)}
  .models h3{font-size:1.18rem}
  .models p{color:var(--ink-2);font-size:.95rem;margin-top:10px}
  .models .tag{font:700 10.5px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink);display:block;margin-bottom:10px}

  .callout{
    margin-top:26px;background:var(--bg-fill);border-left:3px solid var(--accent);
    padding:20px 24px;color:var(--ink-2);font-size:.95rem;max-width:70ch;
  }
  .callout b{color:var(--ink);font-family:var(--sans)}

  /* ---------- sectors + proof ---------- */
  .sectors{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
  .sectors li{
    list-style:none;background:var(--card);border:1px solid var(--card-edge);
    padding:9px 15px;font-size:.875rem;color:var(--ink);border-radius:2px;
  }
  .resultgrid{margin-top:36px}
  .bigresult{background:var(--card);border:1px solid var(--card-edge);border-top:4px solid var(--accent);
    padding:38px 40px;box-shadow:var(--shadow);display:grid;grid-template-columns:minmax(260px,.85fr) 1fr;gap:48px;align-items:center}
  @media (max-width:820px){.bigresult{grid-template-columns:1fr;gap:22px;padding:30px 26px}}
  .bigresult .tag{font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink)}
  .bigresult .fig{font-family:var(--serif);font-size:clamp(2.4rem,5.4vw,3.5rem);color:var(--ink);line-height:1.05;margin-top:16px;letter-spacing:-.02em}
  .bigresult .cap{font:700 .92rem/1.4 var(--sans);color:var(--accent-ink);margin-top:8px}
  .bigresult p{color:var(--ink-2);font-size:.99rem;max-width:50ch}
  .ph{
    display:inline-block;font:700 9.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;
    color:var(--accent-ink);background:var(--bg-fill);border:1px solid var(--card-edge);
    padding:5px 8px;border-radius:2px;margin-bottom:12px;
  }
  /* ---------- about ---------- */
  .about{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:start;margin-top:8px}
  @media (max-width:820px){.about{grid-template-columns:1fr;gap:28px}}
  .portrait{position:relative;max-width:100%}
  .portrait img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;background:var(--card);max-width:100%}
  .portrait::after{content:"";display:block;height:3px;background:var(--accent);margin-top:14px;width:64px}
  .about p{color:var(--ink-2);max-width:62ch}
  .about p + p{margin-top:14px}
  .sig{margin-top:22px;font-family:var(--serif);font-size:1.05rem;color:var(--ink)}
  .sig small{display:block;font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-top:5px}

  /* ---------- podcast ---------- */
  .pod{display:grid;grid-template-columns:1.35fr 1fr;gap:44px;align-items:center}
  @media (max-width:820px){.pod{grid-template-columns:1fr;gap:26px}}
  .podart{
    position:relative;aspect-ratio:1/1;max-width:340px;width:100%;
    background:rgba(255,255,255,.05);
    display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;
    color:var(--powder);font-size:.76rem;letter-spacing:.13em;text-transform:uppercase;line-height:1.8;
  }
  .podart img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:100%}
  .platforms{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:26px;padding-top:18px;border-top:1px solid rgba(200,216,240,.22)}
  .platforms a{color:var(--powder);font-size:.83rem;text-decoration:none;letter-spacing:.02em}
  .platforms a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
  .platforms span{color:rgba(200,216,240,.5);font-size:.83rem}
  .podtag{font-family:var(--serif);font-size:1.2rem;color:var(--lav);margin-top:14px}
  .pod h2{font-size:clamp(1.6rem,3.2vw,2.2rem)}

  /* ---------- insights ---------- */
  .posts{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:34px}
  @media (max-width:820px){.posts{grid-template-columns:1fr}}
  .posts article{border-top:1px solid var(--rule);padding-top:20px}
  .posts .meta{font:700 10.5px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-2)}
  .posts h3{font-size:1.13rem;margin-top:12px}
  .posts p{color:var(--ink-2);font-size:.93rem;margin-top:10px}

  /* ---------- booking ---------- */
  .book{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
  @media (max-width:820px){.book{grid-template-columns:1fr;gap:28px}}
  .bookcard{border:1px solid rgba(200,216,240,.32);padding:28px 26px;background:rgba(255,255,255,.05)}
  .bookcard ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
  .bookcard li{padding-left:18px;position:relative;font-size:.93rem;color:var(--powder)}
  .bookcard li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:1.5px;background:var(--lav)}
  .bookcard .tag{font:700 10.5px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--lav)}

  /* ---------- contact ---------- */
  .contactgrid{display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start;margin-top:8px}
  @media (max-width:820px){.contactgrid{grid-template-columns:1fr;gap:32px}}
  form{display:grid;gap:16px;margin-top:26px}
  .frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  @media (max-width:560px){.frow{grid-template-columns:1fr}}
  label{display:block;font:700 10.5px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-2);margin-bottom:8px}
  input,textarea{
    width:100%;font-family:var(--sans);font-size:.95rem;color:var(--ink);
    background:var(--card);border:1px solid var(--card-edge);border-radius:2px;padding:12px 13px;
  }
  input:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px rgba(88,130,188,.18)}
  textarea{min-height:120px;resize:vertical;line-height:1.55}
  .details{background:var(--card);border:1px solid var(--card-edge);padding:26px 24px}
  .details dt{font:700 10.5px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-2);margin-bottom:6px}
  .details dd{margin:0 0 18px;font-size:.98rem}
  .details dd:last-child{margin-bottom:0}
  .details a{text-decoration:none}
  .details a:hover{text-decoration:underline;text-underline-offset:3px}

  /* ---------- footer ---------- */
  footer{background:var(--navy);color:var(--powder);padding-block:52px 30px}
  .foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}
  @media (max-width:820px){.foot{grid-template-columns:1fr;gap:26px}}
  .foot img{width:56px;height:56px}
  .foot h4{font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:0 0 14px}
  .foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
  .foot a{color:var(--powder);text-decoration:none;font-size:.9rem}
  .foot a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
  .foot p{font-size:.9rem;margin-top:14px;max-width:38ch}
  .footbar{
    margin-top:38px;padding-top:18px;border-top:1px solid rgba(200,216,240,.2);
    display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.8rem;color:rgba(200,216,240,.75);
  }
  .footbar i{font-style:italic}
  /* ---------- added: service grid ---------- */
  .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:34px}
  @media (max-width:980px){.grid4{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:560px){.grid4{grid-template-columns:1fr}}
  .grid4 article{background:var(--card);padding:26px 24px}
  .grid4 h3{font-size:1.1rem}
  .grid4 p{color:var(--ink-2);font-size:.92rem;margin-top:9px}

  .addons{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:22px}
  @media (max-width:820px){.addons{grid-template-columns:1fr}}
  .addons article{background:var(--card);border:1px solid var(--card-edge);border-left:3px solid var(--lav);padding:22px 24px}
  .addons h3{font-size:1.06rem}
  .addons p{color:var(--ink-2);font-size:.92rem;margin-top:8px}
  .addlabel{font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);margin-top:40px}

  .posts .meta{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}
  .posts .meta span{font:400 10.5px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
  .posts a.card{text-decoration:none;display:block}
  .posts a.card:hover h3{text-decoration:underline;text-underline-offset:4px}
  .posts .more{display:inline-block;margin-top:14px;font:700 .8rem/1 var(--sans);letter-spacing:.04em;color:var(--accent-ink)}

  /* ---------- added: FAQ (SEO / AEO) ---------- */
  .faq{display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px;margin-top:34px}
  @media (max-width:860px){.faq{grid-template-columns:1fr}}
  .faq article{padding:24px 0;border-top:1px solid var(--rule)}
  .faq h3{font-size:1.1rem;font-family:var(--serif)}
  .faq p{color:var(--ink-2);font-size:.95rem;margin-top:10px;max-width:56ch}

  /* ---------- added: two ICP panels ---------- */
  .icps{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}
  @media (max-width:860px){.icps{grid-template-columns:1fr}}
  .icps article{background:var(--card);border:1px solid var(--card-edge);border-top:4px solid var(--accent);padding:34px 32px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow)}
  .icps article.alt{border-top-color:var(--lav)}
  .icps .tag{font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink)}
  .icps article.alt .tag{color:var(--ink-2)}
  .icps h3{font-size:1.42rem}
  .icps p{color:var(--ink-2);font-size:.97rem}
  .icps ul{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
  .icps li{font-size:.885rem;color:var(--ink-2);padding-left:16px;position:relative}
  .icps li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:1.5px;background:var(--accent)}
  .icps article.alt li::before{background:var(--lav)}
  .icps .go{margin-top:auto;padding-top:8px;font:700 .82rem/1 var(--sans);letter-spacing:.04em;text-decoration:none;color:var(--accent-ink)}
  .icps .go:hover{text-decoration:underline;text-underline-offset:4px}
  .sublabel{font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);margin-top:52px}

  /* ---------- added: VC section ---------- */
  .vcgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:38px}
  @media (max-width:860px){.vcgrid{grid-template-columns:1fr}}
  .vcgrid article{border:1px solid rgba(200,216,240,.28);background:rgba(255,255,255,.05);padding:26px 24px}
  .vcgrid h3{font-size:1.14rem}
  .vcgrid p{color:var(--powder);font-size:.94rem;margin-top:10px}

  /* ---------- added: three-up value blocks ---------- */
  .threeup{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:38px}
  @media (max-width:820px){.threeup{grid-template-columns:1fr;gap:26px}}
  .threeup article{border-top:2px solid var(--accent);padding-top:20px}
  .threeup h3{font-size:1.18rem}
  .threeup p{color:var(--ink-2);font-size:.95rem;margin-top:11px}

  /* ---------- added: what we care about ---------- */
  .cares{display:grid;grid-template-columns:1fr 1.25fr;gap:56px;align-items:start}
  @media (max-width:820px){.cares{grid-template-columns:1fr;gap:28px}}
  .carelist{display:flex;flex-direction:column}
  .carelist article{padding:22px 0;border-top:1px solid var(--rule);display:grid;grid-template-columns:88px 1fr;gap:22px;align-items:baseline}
  .carelist article:first-child{border-top:0;padding-top:0}
  .carelist article:last-child{padding-bottom:0}
  @media (max-width:560px){.carelist article{grid-template-columns:1fr;gap:8px}}
  .carelist h3{font:700 10.5px/1.5 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink)}
  .carelist p{color:var(--ink-2);font-size:.97rem;max-width:56ch}
  .cares .intro{color:var(--ink-2);margin-top:14px;max-width:34ch}

  /* ---------- added: name story ---------- */
  .namecard{display:grid;grid-template-columns:190px 1fr;gap:44px;align-items:center;background:var(--card);border:1px solid var(--card-edge);padding:38px 40px;box-shadow:var(--shadow)}
  @media (max-width:820px){.namecard{grid-template-columns:1fr;gap:26px;padding:30px 26px}}
  .namecard img{width:100%;max-width:190px;height:auto;display:block}
  .namecard h2{font-size:clamp(1.5rem,3vw,2.05rem)}
  .namecard p{color:var(--ink-2);max-width:60ch;margin-top:14px}

  /* ---------- added: founder letter ---------- */
  .founder{display:grid;grid-template-columns:320px 1fr;gap:56px;align-items:start}
  @media (max-width:820px){.founder{grid-template-columns:1fr;gap:30px}}
  .letter p{color:var(--ink-2);max-width:62ch}
  .letter p + p{margin-top:16px}
  .letter .open{font-family:var(--serif);font-size:1.22rem;color:var(--ink);line-height:1.5;max-width:40ch}
