/*
Theme Name: CEO Cadence
Theme URI: https://ceocadence.com
Author: Avik Chowdhury
Description: Meridian — a restrained block theme for CEO Cadence. Deep green dominant, warm stone ground, brass carrying RAG status rather than decoration. Built for a boutique practice making the CEO agenda governable.
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ceo-cadence
Tags: blog, business, one-column, block-patterns, full-site-editing, editor-style, custom-colors
*/

:root{
  --cc-stone:#f5f2eb; --cc-stone-2:#eae5d9; --cc-paper:#ffffff;
  --cc-ink:#131a20; --cc-ink-2:#2b353d; --cc-muted:#5c6870;
  --cc-green:#1f4d3c; --cc-green-mid:#2d6b52; --cc-green-tint:#e7eeea; --cc-green-line:#c3d3ca;
  --cc-brass:#a67c34; --cc-brass-tint:#f0e4cd;
  --cc-red:#8f3a2c; --cc-red-tint:#f3e2de;
  --cc-line:#ded8cb; --cc-line-2:#c6bfae;
  --cc-display:'Newsreader',Georgia,'Times New Roman',serif;
  --cc-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --cc-mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --cc-radius:3px;
}

body{-webkit-font-smoothing:antialiased}
em{font-style:italic;color:var(--cc-green)}

/* ---------- text roles ---------- */
.cc-eyebrow{font-size:11px !important;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--cc-green);margin:0 0 22px}
.cc-lead{font-size:19.5px;line-height:1.62;color:var(--cc-ink-2);font-weight:300;max-width:60ch}
.cc-small{font-size:14.5px;line-height:1.68;color:var(--cc-muted)}
.cc-kicker{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--cc-muted);margin:0 0 11px}
.cc-num{font-family:var(--cc-display);font-size:13px;letter-spacing:.2em;color:var(--cc-green);margin:0 0 20px}
.cc-caption{font-size:13px;line-height:1.6;color:var(--cc-muted);margin:14px 0 0;max-width:70ch}

/* illustrative marker — every figure on this site is a worked example, not client data */
.cc-illus{display:inline-block;font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--cc-muted);border:1px solid var(--cc-line-2);border-radius:999px;padding:3px 9px;vertical-align:middle}

/* ---------- buttons ---------- */
.wp-block-button.cc-btn-primary .wp-block-button__link{
  background:var(--cc-green);color:var(--cc-stone);border-radius:var(--cc-radius);
  font-family:var(--cc-body);font-size:14px;font-weight:500;padding:14px 26px;border:1px solid transparent;transition:background .2s}
.wp-block-button.cc-btn-primary .wp-block-button__link:hover{background:var(--cc-green-mid);color:var(--cc-stone)}
.wp-block-button.cc-btn-ghost .wp-block-button__link{
  background:transparent;color:var(--cc-ink);border:1px solid var(--cc-line-2);border-radius:var(--cc-radius);
  font-family:var(--cc-body);font-size:14px;font-weight:500;padding:14px 26px;transition:all .2s}
.wp-block-button.cc-btn-ghost .wp-block-button__link:hover{border-color:var(--cc-green);color:var(--cc-green)}
.wp-block-button.cc-btn-light .wp-block-button__link{
  background:var(--cc-stone);color:var(--cc-green);border-radius:var(--cc-radius);font-size:14px;font-weight:500;padding:14px 26px}
.wp-block-button.cc-btn-light .wp-block-button__link:hover{background:#fff;color:var(--cc-green)}

/* ---------- header ---------- */
.cc-header{border-bottom:1px solid var(--cc-line);padding-top:28px;padding-bottom:28px}
.cc-logo{display:flex;align-items:center;gap:13px;text-decoration:none}
.cc-logo:hover{text-decoration:none}
.cc-bars{display:flex;align-items:flex-end;gap:3px;height:20px;flex-shrink:0}
.cc-bars i{display:block;width:2.5px;background:var(--cc-green);border-radius:1px}
.cc-bars i:nth-child(1){height:8px}.cc-bars i:nth-child(2){height:16px}
.cc-bars i:nth-child(3){height:11px}.cc-bars i:nth-child(4){height:20px}
.cc-logo-text{font-family:var(--cc-display);font-size:19px;font-weight:400;letter-spacing:.11em;text-transform:uppercase;color:var(--cc-ink);white-space:nowrap}
.cc-nav a{font-size:14.5px;color:var(--cc-muted);text-decoration:none}
.cc-nav a:hover{color:var(--cc-green)}
.cc-nav .wp-block-navigation__container{gap:34px}

/* ---------- hero ---------- */
.cc-hero{padding-top:96px;padding-bottom:88px}
.cc-hero h1{margin-bottom:26px}
.cc-hero .cc-lead{margin-bottom:0}
.cc-hero .wp-block-buttons{margin-top:34px;gap:13px}

/* ---------- panels & figures ---------- */
.cc-panel{background:var(--cc-paper);border:1px solid var(--cc-line);border-radius:var(--cc-radius);padding:28px 28px 24px}
.cc-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}
.cc-panel-title{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--cc-muted);margin:0}
.cc-figure{background:var(--cc-paper);border:1px solid var(--cc-line);border-radius:var(--cc-radius);padding:30px 30px 26px}
.cc-figure svg{display:block;width:100%;height:auto}

/* big number block */
.cc-bignum{font-family:var(--cc-display);font-size:60px;line-height:1;letter-spacing:-.02em;color:var(--cc-green);margin:0}
.cc-bignum small{font-size:24px;color:var(--cc-green-mid)}
.cc-bignum-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--cc-muted);margin:10px 0 0}

.cc-metrics{display:flex;gap:26px;flex-wrap:wrap;border-top:1px solid var(--cc-line);margin-top:22px;padding-top:18px}
.cc-metric{flex:1;min-width:96px}
.cc-metric b{display:block;font-family:var(--cc-display);font-size:26px;font-weight:400;color:var(--cc-ink);line-height:1.1}
.cc-metric span{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--cc-muted);margin-top:5px}

/* RAG */
.cc-rag{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--cc-ink-2)}
.cc-dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex-shrink:0}
.cc-dot.g{background:var(--cc-green)}
.cc-dot.a{background:var(--cc-brass)}
.cc-dot.r{background:var(--cc-red)}
.cc-rag-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:16px}

/* rhythm motif */
.cc-rhythm{display:flex;align-items:flex-end;gap:5px;height:104px;margin-bottom:16px}
.cc-rhythm i{flex:1;background:var(--cc-green-line);border-radius:1px}
.cc-rhythm i.mid{background:var(--cc-green-mid)}
.cc-rhythm i.beat{background:var(--cc-brass)}
.cc-rhythm-legend{display:flex;justify-content:space-between;border-top:1px solid var(--cc-line);padding-top:13px}
.cc-rhythm-legend span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--cc-muted)}

/* ---------- credentials strip ---------- */
.cc-strip{background:var(--cc-stone-2);border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line);padding:34px 0 32px;text-align:center}
.cc-strip .cc-strip-label{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--cc-muted);margin:0 0 20px}
.cc-marks{display:flex;gap:14px 44px;flex-wrap:wrap;justify-content:center;align-items:baseline}
.cc-mark{font-family:var(--cc-display);font-size:19px;letter-spacing:.06em;color:var(--cc-ink-2);opacity:.78;white-space:nowrap}

/* ---------- sections ---------- */
.cc-section{padding-top:96px;padding-bottom:96px}
.cc-section-tight{padding-top:0;padding-bottom:96px}
.cc-sec-head{margin-bottom:56px}
.cc-band{background:var(--cc-stone-2);border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line);padding:96px 0}

/* ---------- three fixes ---------- */
.cc-fix{border-top:2px solid var(--cc-green);padding-top:22px}
.cc-fix h3{font-size:22px;margin-bottom:12px}
.cc-fix p{font-size:14.5px;color:var(--cc-muted);margin:0}

/* ---------- what I build (six) ---------- */
.cc-cards{gap:1px !important;background:var(--cc-line);border:1px solid var(--cc-line);border-radius:var(--cc-radius);overflow:hidden}
.cc-card{background:var(--cc-paper);padding:36px 30px 32px;transition:background .25s}
.cc-card:hover{background:var(--cc-green-tint)}
.cc-card h3{font-size:21px;margin-bottom:13px}
.cc-card p{font-size:15px;color:var(--cc-muted);margin:0}
.cc-list{list-style:none;margin:20px 0 0;padding:16px 0 0;border-top:1px solid var(--cc-line)}
.cc-list li{font-size:14px;color:var(--cc-muted);padding:7px 0 7px 18px;position:relative;list-style:none}
.cc-list li::before{content:"";position:absolute;left:0;top:15px;width:6px;height:1px;background:var(--cc-green)}

/* ---------- monthly loop ---------- */
.cc-loop{display:flex;gap:0;flex-wrap:wrap;border:1px solid var(--cc-line);border-radius:var(--cc-radius);overflow:hidden;background:var(--cc-paper)}
.cc-loop-step{flex:1;min-width:150px;padding:26px 22px 24px;border-right:1px solid var(--cc-line);position:relative}
.cc-loop-step:last-child{border-right:0}
.cc-loop-step .n{font-family:var(--cc-mono);font-size:11px;letter-spacing:.1em;color:var(--cc-brass);margin:0 0 12px}
.cc-loop-step h4{font-family:var(--cc-display);font-size:19px;font-weight:400;text-transform:none;letter-spacing:-.01em;color:var(--cc-ink);margin:0 0 7px;opacity:1}
.cc-loop-step p{font-size:13px;color:var(--cc-muted);margin:0;line-height:1.55}
.cc-loop-step::after{content:"";position:absolute;right:-5px;top:50%;width:9px;height:9px;
  border-top:1px solid var(--cc-line-2);border-right:1px solid var(--cc-line-2);transform:translateY(-50%) rotate(45deg);background:var(--cc-paper);z-index:2}
.cc-loop-step:last-child::after{display:none}

/* ---------- owner bars ---------- */
.cc-owner{display:grid;grid-template-columns:130px 1fr 62px;gap:16px;align-items:center;padding:11px 0;border-bottom:1px solid var(--cc-line)}
.cc-owner:last-child{border-bottom:0}
.cc-owner .who{font-size:14.5px;color:var(--cc-ink)}
.cc-owner .track{background:var(--cc-stone-2);height:16px;border-radius:2px;overflow:hidden;display:flex}
.cc-owner .track i{display:block;height:100%}
.cc-owner .track i.g{background:var(--cc-green)}
.cc-owner .track i.a{background:var(--cc-brass)}
.cc-owner .track i.r{background:var(--cc-red)}
.cc-owner .pct{font-family:var(--cc-display);font-size:17px;color:var(--cc-ink);text-align:right}

/* ---------- priority table ---------- */
.cc-table{width:100%;border-collapse:collapse;font-size:13.5px}
.cc-table th{text-align:left;font-family:var(--cc-body);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:var(--cc-muted);padding:0 10px 12px 0;border-bottom:1px solid var(--cc-line)}
.cc-table td{padding:12px 10px 12px 0;border-bottom:1px solid var(--cc-line);color:var(--cc-ink-2);vertical-align:middle}
.cc-table tr:last-child td{border-bottom:0}
.cc-table .n{font-family:var(--cc-mono);font-size:12.5px;color:var(--cc-muted)}
.cc-table .num{font-family:var(--cc-display);font-size:16px;color:var(--cc-ink)}

/* ---------- horizontal bars ---------- */
.cc-hbar{display:grid;grid-template-columns:160px 1fr 54px;gap:14px;align-items:center;padding:9px 0}
.cc-hbar .lbl{font-size:14px;color:var(--cc-ink-2)}
.cc-hbar .bar{background:var(--cc-stone-2);height:14px;border-radius:2px;overflow:hidden}
.cc-hbar .bar i{display:block;height:100%;background:var(--cc-green)}
.cc-hbar .bar i.warn{background:var(--cc-brass)}
.cc-hbar .bar i.bad{background:var(--cc-red)}
.cc-hbar .val{font-family:var(--cc-display);font-size:15px;color:var(--cc-ink);text-align:right}

/* ---------- frameworks ---------- */
.cc-fw{background:var(--cc-paper);border:1px solid var(--cc-line);border-radius:var(--cc-radius);padding:24px 22px 20px;height:100%}
.cc-fw h4{font-family:var(--cc-display);font-size:18px;font-weight:400;text-transform:none;letter-spacing:-.01em;color:var(--cc-ink);margin:0 0 16px;opacity:1}
.cc-fw p{font-size:13px;color:var(--cc-muted);margin:16px 0 0;line-height:1.55}
.cc-fw svg{display:block;width:100%;height:auto}

/* ---------- quote ---------- */
.cc-quote{background:var(--cc-green);padding:92px 0}
.cc-quote blockquote,.cc-quote .cc-bq{font-family:var(--cc-display);font-style:italic;font-weight:400;
  font-size:clamp(26px,3.3vw,41px);line-height:1.3;letter-spacing:-.012em;color:#fff;margin:0;max-width:21ch;border:0;padding:0}
.cc-attrib{font-size:14px;color:rgba(245,242,235,.72);border-left:2px solid var(--cc-brass);padding-left:16px;margin:0}
.cc-attrib strong{color:#fff;font-weight:500}

/* ---------- download ---------- */
.cc-download{background:var(--cc-paper);border:1px solid var(--cc-line);border-radius:var(--cc-radius);padding:38px 36px}
.cc-download h3{font-size:26px;margin-bottom:12px}
.cc-download p{font-size:15px;color:var(--cc-muted);margin-bottom:0}
.cc-pdfmark{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.cc-pdfmark .tag{font-family:var(--cc-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--cc-red);border:1px solid var(--cc-red);border-radius:2px;padding:4px 8px}
.cc-pdfmark .meta{font-size:12.5px;color:var(--cc-muted)}

/* ---------- about ---------- */
.cc-portrait{aspect-ratio:4/5;background:var(--cc-stone-2);border:1px solid var(--cc-line);border-radius:var(--cc-radius);
  display:flex;align-items:center;justify-content:center;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--cc-muted)}
.cc-portrait img{width:100%;height:100%;object-fit:cover;border-radius:var(--cc-radius)}

/* ---------- cta ---------- */
.cc-cta{background:var(--cc-paper);border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line);padding:92px 0}

/* ---------- footer ---------- */
.cc-footer{background:var(--cc-green);color:rgba(245,242,235,.8);padding:64px 0 54px}
.cc-footer .cc-logo-text,.cc-footer h4{color:#fff}
.cc-footer .cc-bars i{background:var(--cc-brass)}
.cc-footer p{font-size:14.5px;color:rgba(245,242,235,.7)}
.cc-footer h4{font-family:var(--cc-body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font-weight:600;opacity:.65;color:#fff}
.cc-footer a{display:block;font-size:14.5px;color:rgba(245,242,235,.82);text-decoration:none;padding:4px 0}
.cc-footer a:hover{color:#fff}
.cc-foot-bottom{margin-top:46px;padding-top:22px;border-top:1px solid rgba(245,242,235,.18);font-size:13px;color:rgba(245,242,235,.55)}

/* ---------- responsive ---------- */
@media(max-width:781px){
  .cc-hero{padding-top:60px;padding-bottom:56px}
  .cc-section{padding-top:66px;padding-bottom:66px}
  .cc-section-tight{padding-bottom:66px}
  .cc-quote,.cc-cta,.cc-band{padding:66px 0}
  .cc-marks{gap:12px 28px}
  .cc-mark{font-size:17px}
  .cc-bignum{font-size:48px}
  .cc-loop-step{border-right:0;border-bottom:1px solid var(--cc-line)}
  .cc-loop-step:last-child{border-bottom:0}
  .cc-loop-step::after{display:none}
  .cc-owner{grid-template-columns:96px 1fr 50px;gap:10px}
  .cc-hbar{grid-template-columns:120px 1fr 46px;gap:10px}
  .cc-table th:nth-child(4),.cc-table td:nth-child(4){display:none}
}
