/* GENERATED by src/build.py from src/css/leaders.css — edit the source, not this file. */
/* CEEZ AI — the "For leaders" hero: the message on the left, a diagram of how Ceez works for that role on the right.
   Markup comes from src/leaders_hero.py. Loaded after inner.css. Violet + neutrals only. */

.lh .lh-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:clamp(32px,4vw,72px);align-items:center}
.lh .display{max-width:none;font-size:clamp(38px,4.5vw,68px);text-wrap:balance}
.lh .lede{max-width:52ch}
.lh-pledge{display:flex;flex-wrap:wrap;gap:10px 0;margin-top:26px;font-size:clamp(14px,1.12vw,17px);color:var(--acc2)}
.lh-pledge li{white-space:nowrap;padding:0 14px;border-left:1px solid var(--line2)}
.lh-pledge li:first-child{padding-left:0;border-left:0}
.lh .cta-row{margin-top:30px}

/* the diagram */
.lh-diagram{position:relative;min-width:0}
.lh-top{display:flex;align-items:center;justify-content:center;gap:16px;width:min(72%,500px);margin:0 auto;padding:16px 22px;border:1px solid var(--acc-border);border-radius:14px;
  background:linear-gradient(180deg,rgb(var(--acc-rgb) / .16),rgb(var(--acc-rgb) / .06));box-shadow:0 14px 40px rgba(0,0,0,.35)}
.lh-top>svg{width:40px;height:40px;flex-shrink:0}
.lh-top b{display:block;font-size:clamp(17px,1.4vw,20px);font-weight:500;color:var(--text)}
.lh-top ul{display:flex;flex-wrap:wrap;gap:2px 0;margin-top:6px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.lh-top li+li::before{content:"|";margin:0 9px;color:var(--faint)}
.lh svg{fill:none;stroke:var(--acc2);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

.lh-wires{display:block;width:100%;height:56px}
.lh-wires path{stroke:var(--acc-border-strong);stroke-width:1.2;stroke-dasharray:3 6}
.js-motion .lh-wires path{animation:lhFlow 2.4s linear infinite}
@keyframes lhFlow{to{stroke-dashoffset:-18}}

.lh-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2.2vw,32px)}
.lh-stages li{position:relative;display:flex}
.lh-stages li:not(:last-child)::after{content:"→";position:absolute;right:calc(clamp(18px,2.2vw,32px)/-2);top:50%;transform:translate(50%,-50%);font-size:16px;color:var(--acc2);pointer-events:none}
.lh-stage{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;padding:20px 12px 18px;border:1px solid var(--acc-border);border-radius:14px;
  background:linear-gradient(180deg,rgb(var(--acc-rgb) / .13),rgb(var(--acc-rgb) / .04));box-shadow:0 14px 40px rgba(0,0,0,.3);transition:border-color .2s,background .2s,transform .25s var(--ease)}
.lh-stage::before{content:"";position:absolute;left:50%;top:-4px;width:7px;height:7px;margin-left:-3px;border-radius:50%;background:var(--acc2)}
.lh-stage:hover{border-color:var(--acc-border-strong);background:linear-gradient(180deg,rgb(var(--acc-rgb) / .2),rgb(var(--acc-rgb) / .07));transform:translateY(-2px)}
.lh-stage svg{width:30px;height:30px;margin-bottom:12px}
.lh-stage b{font-size:clamp(15px,1.2vw,17px);font-weight:500;color:var(--text)}
.lh-stage span{margin-top:8px;font-size:clamp(12.5px,.95vw,14px);line-height:1.45;font-weight:300;color:var(--muted)}

.lh-bracket{display:flex;align-items:center;gap:16px;margin-top:16px;font-family:var(--mono);font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--acc2)}
.lh-bracket::before,.lh-bracket::after{content:"";flex:1;height:14px;border-bottom:1px solid var(--acc-border);transform:translateY(7px)}
.lh-bracket::before{border-left:1px solid var(--acc-border);border-bottom-left-radius:14px}
.lh-bracket::after{border-right:1px solid var(--acc-border);border-bottom-right-radius:14px}

.lh-base{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:22px}
.lh-base li{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;font-size:clamp(12px,.95vw,14px);color:var(--muted)}
.lh-base li>svg{box-sizing:content-box;width:20px;height:20px;padding:13px;border:1px solid var(--border-strong);border-radius:50%;background:rgba(255,255,255,.02)}
.lh-base li:not(:last-child)::after{content:"";position:absolute;left:calc(50% + 34px);right:calc(-50% + 34px);top:26px;border-top:1px dotted var(--border-strong)}

@media(max-width:1100px){
  .lh .lh-grid{grid-template-columns:minmax(0,1fr);gap:48px}
  .lh .display{max-width:20ch}
}
@media(max-width:640px){
  .lh-top{width:100%}
  .lh-wires{display:none}
  .lh-top{margin-bottom:22px}
  .lh-stages{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:26px}
  .lh-stages li:nth-child(2n)::after,.lh-stages li:last-child::after{display:none}
  .lh-stage::before{display:none}
  .lh-base{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}
  .lh-base li::after{display:none}
  .lh-pledge{flex-direction:column;gap:6px}
  .lh-pledge li{padding:0;border:0}
  .lh-top ul{gap:4px 14px}
  .lh-top li+li::before{display:none}
}
@media(prefers-reduced-motion:reduce){.js-motion .lh-wires path{animation:none}.lh-stage{transition:none}}

/* ═══ Why Ceez: one bespoke graphic per page (drawn in src/why_graphics.py). Violet + neutrals only. ═══ */
.wg{min-width:0}
.wg svg{display:block;width:100%;height:auto;margin-inline:auto;overflow:visible;fill:none;stroke:none}   /* each svg carries its own max-width = its viewBox width, so 1 unit is 1px and every graphic shares one type scale */
.wg text{stroke:none}
.wg text{font-family:var(--sans)}
.wg .wg-serif{font-family:var(--serif)}
.wg-vs{fill:rgba(35,30,86,1);fill:color-mix(in srgb,var(--acc) 22%,var(--bg));stroke:var(--acc-border-strong);stroke-width:1.2}
.wg-v{fill:rgba(20,18,58,1);fill:color-mix(in srgb,var(--acc) 12%,var(--bg));stroke:var(--acc-border);stroke-width:1.2}
.wg-d{fill:rgba(18,17,44,1);fill:color-mix(in srgb,#fff 4%,var(--bg));stroke:var(--border-strong);stroke-width:1.2}
.wg-gate{fill:var(--bg);stroke:var(--acc2);stroke-width:1.3}
.wg-dash{stroke-dasharray:4 6}
.wg-ln{fill:none;stroke:var(--acc-border-strong);stroke-width:1.4}
.wg-lnd{fill:none;stroke:var(--border-strong);stroke-width:1.2}
.wg-dot-ring{fill:none;stroke:var(--border-strong);stroke-width:1.2;stroke-dasharray:1 7;stroke-linecap:round}
.wg-t{fill:var(--text);font-weight:400}
.wg-m{fill:var(--muted);font-weight:300}
.wg-a{fill:var(--acc2)}
.wg-k{fill:var(--soft);letter-spacing:.14em;text-transform:uppercase;font-family:var(--mono)!important}
.wg-acc{fill:var(--acc2)}
.wg-mute{fill:var(--faint)}
.wg-dot{fill:var(--acc2);filter:drop-shadow(0 0 6px rgb(var(--acc2-rgb) / .8))}
.wg-icon{fill:none;stroke:var(--acc2);stroke-width:1.6;stroke-linecap:round}
.wg-tick{fill:none;stroke:var(--acc2);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(prefers-reduced-motion:reduce){.wg-dot{display:none}}
@media(max-width:1100px){.wg{max-width:640px}}

/* the hero visual on the home page: the four Ceez stages light in turn, as an objective moves through them */
.wg-seq{animation:wgSeq 8s ease-in-out infinite}
.wg-seq.s1{animation-delay:2s}.wg-seq.s2{animation-delay:4s}.wg-seq.s3{animation-delay:6s}
@keyframes wgSeq{0%,22%{fill:color-mix(in srgb,var(--acc) 48%,var(--bg));stroke:var(--acc2)}30%,100%{fill:color-mix(in srgb,var(--acc) 22%,var(--bg))}}
@media(prefers-reduced-motion:reduce){.wg-seq{animation:none}}
