/* ==========================================================================
   Coding Temple v2 look (preview pages with _ct_v2). Loaded after ds.css.
   Brand: DM Serif Display headlines, DM Sans text, black / teal / gold,
   gold-to-teal gradient, mono "terminal" accents.
   ========================================================================== */
@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/dmserifdisplay-9464d2ef.woff2) format("woff2")}
@font-face{font-family:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/dmserifdisplay-ea129236.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/dmsans-d26d93f6.woff2) format("woff2")}

.ct2{
  --c2-serif:"DM Serif Display",Georgia,"Times New Roman",serif;
  --c2-sans:"DM Sans",var(--ds-font);
  --c2-mono:var(--ds-mono);
  --c2-teal:#0CC4A0;--c2-teal-d:#006E64;--c2-gold:#FEC853;
  --c2-grad:linear-gradient(90deg,#FFE7A0 0%,#A6E6CF 50%,#0CC4A0 100%);
  --c2-night:#0E0C0C;--c2-night-2:#171414;--c2-night-3:#221E1E;
  --c2-paper:#FAF9F7;
  --c2-r:18px;
  --c2-se:#0CC4A0;--c2-cs:#7C93FF;--c2-da:#2FB8DA;--c2-qa:#FEC853;
}
body.ct2{font-family:var(--c2-sans);background:var(--c2-paper)}
.ct2 .ds,.ct2 .ds-main{font-family:var(--c2-sans)}
.ct2 .ds-main h1,.ct2 .ds-main h2{font-family:var(--c2-serif);font-weight:400;letter-spacing:-.01em;line-height:1.05}
.ct2 .ds-main h2{font-size:clamp(2rem,1.4rem + 2.2vw,3.25rem)}
.ct2 .ds-main h2 em,.ct2 .ds-main h1 em{font-style:italic;color:var(--c2-teal)}
.c2-light h2 em{color:var(--c2-teal-d)!important}

/* ---------- shared pieces ---------- */
.c2-sec{position:relative;padding-block:clamp(4rem,3rem + 4vw,7rem)}
.c2-sec--night{background:var(--c2-night);color:#F7F4F2}
.c2-sec--paper{background:var(--c2-paper)}
.c2-sec--white{background:#fff}
.c2-stripe{height:6px;background:var(--c2-grad)}
.c2-head{max-width:760px;margin:0 auto clamp(2.5rem,2rem + 2vw,4rem);text-align:center;display:grid;gap:1rem}
.c2-head p{margin:0;font-size:clamp(1.05rem,1rem + .3vw,1.25rem);color:var(--ds-ink-2)}
.c2-sec--night .c2-head p{color:#C9C1BE}
.c2-kicker{display:inline-flex;align-items:center;gap:.5rem;justify-self:center;margin:0;padding:.35rem .8rem;border-radius:999px;font:500 .8125rem/1 var(--c2-mono);letter-spacing:.02em;text-transform:lowercase;background:#fff;border:1px solid var(--ds-line);color:var(--ds-ink)}
.c2-kicker::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--c2-teal)}
.c2-sec--night .c2-kicker{background:var(--c2-night-3);border-color:#332D2D;color:#F7F4F2}
.c2-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:0 1.5rem;border-radius:12px;font:600 1rem/1 var(--c2-sans);text-decoration:none;border:1.5px solid transparent;transition:transform .15s var(--ds-ease),background .15s,border-color .15s,box-shadow .15s}
.c2-btn:hover{transform:translateY(-1px)}
.c2-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #fff,0 0 0 5px var(--c2-teal-d)}
.c2-btn--teal{background:var(--c2-teal);color:#0E0C0C;box-shadow:0 10px 30px -12px rgb(12 196 160/.7)}
.c2-btn--teal:hover{background:#19D6B1}
.c2-btn--dark{background:var(--c2-night);color:#fff}
.c2-btn--dark:hover{background:#000}
.c2-btn--ghost{border-color:rgb(255 255 255/.28);color:#fff}
.c2-btn--ghost:hover{border-color:#fff;background:rgb(255 255 255/.06)}
.c2-btn--line{border-color:var(--ds-ink);color:var(--ds-ink);background:transparent}
.c2-btn--line:hover{background:var(--ds-ink);color:#fff}
.c2-btn svg{width:1.1em;height:1.1em}
.c2-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.c2-stars{color:var(--c2-gold);letter-spacing:.1em}

/* ---------- hero ---------- */
.c2-hero{position:relative;overflow:hidden;background:var(--c2-night);color:#F7F4F2;padding-block:clamp(3.5rem,2.5rem + 5vw,7.5rem) clamp(7rem,6rem + 4vw,9rem)}
.c2-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgb(255 255 255/.045) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255/.045) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 70% 40%,#000 0%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 0%,transparent 70%)}
.c2-hero::after{content:"";position:absolute;width:720px;height:720px;right:-160px;top:-220px;background:radial-gradient(circle,rgb(12 196 160/.28),transparent 62%);pointer-events:none}
.c2-hero__grid{position:relative;z-index:1;display:grid;gap:clamp(2.5rem,2rem + 3vw,4.5rem);align-items:center}
@media (min-width:1000px){.c2-hero__grid{grid-template-columns:1.08fr .92fr}}
.c2-hero__copy{display:grid;gap:1.25rem;justify-items:start}
.c2-hero .c2-kicker{justify-self:start}
.c2-prompt{color:var(--c2-teal)}
.c2-caret{display:inline-block;width:.55em;height:1.05em;margin-left:.1em;background:var(--c2-teal);animation:c2blink 1.1s steps(1) infinite;vertical-align:-.15em}
@keyframes c2blink{50%{opacity:0}}
.c2-hero h1{margin:0;font-size:clamp(2.75rem,1.6rem + 5.2vw,5.5rem);line-height:.98;color:#fff}
.c2-hero h1 em{display:block}
.c2-hero__tag{margin:0;font:700 clamp(1.25rem,1.1rem + .8vw,1.75rem)/1.2 var(--c2-sans);background:var(--c2-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.c2-hero__lede{margin:0;max-width:34rem;font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.55;color:#D6CFCC}
.c2-hero__lede strong{color:#fff}
.c2-hero__sub{margin:-.25rem 0 0;font-size:.95rem;color:#A9A09D}
.c2-hero__sub a{color:#fff;text-underline-offset:.2em}
.c2-proof{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:.5rem;padding-top:1.25rem;border-top:1px solid #2C2828;font-size:.95rem;color:#C9C1BE}
.c2-proof strong{color:#fff}
.c2-proof__faces{display:flex}
.c2-proof__faces img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--c2-night);margin-left:-8px}
.c2-proof__faces img:first-child{margin-left:0}

.c2-hero__art{position:relative;min-height:520px}
.c2-photo{position:absolute;margin:0;border-radius:22px;overflow:hidden;box-shadow:0 30px 60px -20px rgb(0 0 0/.7);border:1px solid rgb(255 255 255/.08)}
.c2-photo img{display:block;width:100%;height:100%;object-fit:cover}
.c2-photo--a{width:52%;aspect-ratio:4/5;left:6%;top:4%;transform:rotate(-3deg)}
.c2-photo--b{width:40%;aspect-ratio:1;right:4%;top:0;transform:rotate(4deg)}
.c2-photo--c{width:38%;aspect-ratio:1;right:10%;bottom:2%;transform:rotate(-2deg)}
.c2-float{position:absolute;z-index:2;border-radius:16px;box-shadow:0 24px 50px -18px rgb(0 0 0/.75)}
.c2-float--stat{left:0;bottom:12%;width:min(260px,60%);padding:1.1rem 1.25rem;background:#fff;color:var(--ds-ink);display:grid;gap:.25rem}
.c2-float__num{font:400 3rem/1 var(--c2-serif);color:var(--ds-ink)}
.c2-float__label{font-size:.875rem;line-height:1.35;color:var(--ds-ink-2)}
.c2-float__label strong{color:var(--c2-teal-d)}
.c2-float--term{right:0;top:44%;width:min(290px,70%);padding:.9rem 1rem 1rem;background:#141111;border:1px solid #2F2A2A;font:500 .8125rem/1.7 var(--c2-mono);color:#E9E3E0}
.c2-term__bar{display:flex;gap:6px;margin-bottom:.6rem}
.c2-term__bar i{width:10px;height:10px;border-radius:50%;background:#3A3434}
.c2-term__bar i:nth-child(1){background:#FF6B5E}.c2-term__bar i:nth-child(2){background:var(--c2-gold)}.c2-term__bar i:nth-child(3){background:var(--c2-teal)}
.c2-term__p{color:var(--c2-teal)}
.c2-term__ok{color:var(--c2-gold)}
.c2-float--chip{left:38%;top:-2%;padding:.6rem .9rem;background:var(--c2-gold);color:#0E0C0C;font:700 .875rem/1 var(--c2-sans);border-radius:999px;transform:rotate(-4deg)}
@media (max-width:999px){
  .c2-hero__art{min-height:0;height:clamp(360px,90vw,520px);max-width:560px;width:100%;justify-self:center}
}
@media (max-width:599px){
  .c2-float--term{display:none}
  .c2-photo--a{width:60%;left:0}
  .c2-photo--b{width:44%;right:0}
  .c2-photo--c{width:42%;right:2%}
  .c2-float--stat{bottom:4%}
  .c2-float--chip{left:auto;right:4%;top:auto;bottom:44%}
  .c2-hero__copy .c2-btn{flex:1 1 100%}
}

/* awards strip that overlaps hero */
.c2-awards{position:relative;z-index:2;margin-top:calc(-1 * clamp(4.5rem,4rem + 2vw,5.5rem))}
.c2-awards__card{display:grid;gap:1rem;align-items:center;padding:1.25rem clamp(1.25rem,1rem + 2vw,2.25rem);background:#fff;border-radius:var(--c2-r);box-shadow:0 30px 60px -30px rgb(20 18 19/.35);border:1px solid var(--ds-line)}
@media (min-width:1000px){.c2-awards__card{grid-template-columns:auto 1fr}}
.c2-awards__label{margin:0;font:500 .8125rem/1.4 var(--c2-mono);color:var(--ds-ink-2);max-width:15rem}
.c2-awards__label strong{display:block;font:400 1.5rem/1.1 var(--c2-serif);color:var(--ds-ink)}
.c2-awards ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem 1.5rem;list-style:none;margin:0;padding:0}
@media (min-width:1000px){.c2-awards ul{justify-content:space-between}}
.c2-awards img{height:64px;width:auto;display:block}
@media (max-width:599px){.c2-awards img{height:48px}}

/* alumni logos */
.c2-logos{padding-block:clamp(2.5rem,2rem + 2vw,4rem) 0;background:var(--c2-paper)}
.c2-logos__title{margin:0 0 1.5rem;text-align:center;font:500 .8125rem/1 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-ink-3)}
.ct2 .c2-logos .ds-logowall--alumni img{opacity:.5}

/* ---------- programs ---------- */
.c2-programs{background:var(--c2-paper);overflow:hidden}
.c2-programs::before{content:"";position:absolute;inset:auto -10% 0 -10%;height:60%;background:radial-gradient(ellipse at 20% 100%,rgb(12 196 160/.10),transparent 60%),radial-gradient(ellipse at 85% 90%,rgb(254 200 83/.14),transparent 55%);pointer-events:none}
.c2-cards{position:relative;display:grid;gap:1.25rem}
@media (min-width:700px){.c2-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.c2-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2-card{--acc:var(--c2-teal);position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--ds-line);border-radius:22px;overflow:hidden;transition:transform .2s var(--ds-ease),box-shadow .2s var(--ds-ease),border-color .2s}
.c2-card::before{content:"";position:absolute;inset:0 0 auto;height:190px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 22%,#fff),#fff);pointer-events:none}
.c2-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -30px rgb(20 18 19/.35);border-color:color-mix(in srgb,var(--acc) 60%,var(--ds-line))}
.c2-card--se{--acc:var(--c2-se)}.c2-card--cs{--acc:var(--c2-cs)}.c2-card--da{--acc:var(--c2-da)}.c2-card--qa{--acc:var(--c2-qa)}
.c2-card__body{position:relative;display:flex;flex-direction:column;gap:.9rem;padding:1.75rem 1.5rem 1.5rem;text-align:center;align-items:center;flex:1}
.c2-card__icon{width:48px;height:48px;border-radius:12px}
.c2-card h3{margin:0;font:400 clamp(1.6rem,1.4rem + .6vw,1.9rem)/1.1 var(--c2-serif);letter-spacing:-.01em}
.c2-card h3 a{color:inherit;text-decoration:none}
.c2-card h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.c2-card__rating{font-size:.9rem;color:var(--ds-ink-2)}
.c2-card__role{margin:0;font-weight:700;font-size:1rem}
.c2-card__desc{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.5}
.c2-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;list-style:none;margin:0;padding:0}
.c2-facts li{padding:.35rem .6rem;border-radius:999px;background:color-mix(in srgb,var(--acc) 14%,#fff);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);font:500 .75rem/1 var(--c2-mono);color:var(--ds-ink)}
.c2-card__list{display:grid;gap:.6rem;list-style:none;margin:.25rem 0 0;padding:0;text-align:left;width:100%}
.c2-card__list li{position:relative;padding-left:1.6rem;font-size:.9375rem;line-height:1.45}
.c2-card__list li::before{content:"";position:absolute;left:0;top:.2em;width:1.05rem;height:1.05rem;border-radius:50%;background:color-mix(in srgb,var(--acc) 22%,#fff) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23141213' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/70% no-repeat}
.c2-card__pay{margin:auto 0 0;padding:.9rem 1rem;width:100%;border-radius:14px;background:var(--c2-night);color:#fff;text-align:left;font-size:.9rem;line-height:1.45}
.c2-card__pay strong{color:var(--acc)}
.c2-card__cta{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1.1rem 1.5rem;background:var(--c2-night);color:#fff;font-weight:600;text-decoration:none;border-top:3px solid var(--acc)}
.c2-card__cta:hover{background:#000}
.c2-card__cta svg{width:1.2rem;height:1.2rem;transition:transform .2s}
.c2-card:hover .c2-card__cta svg{transform:translateX(4px)}
.c2-programs__more{position:relative;margin:2.5rem 0 0;text-align:center;font-size:1rem;color:var(--ds-ink-2)}
.c2-programs__more a{color:var(--c2-teal-d);font-weight:600}

/* ---------- big stat ---------- */
.c2-stat{background:var(--c2-night);color:#fff;overflow:hidden;padding-block:clamp(4rem,3rem + 4vw,6.5rem)}
.c2-stat__inner{position:relative;display:grid;gap:2rem;justify-items:center;text-align:center}
.c2-marquee{width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.c2-marquee ul{display:flex;gap:1rem;width:max-content;list-style:none;margin:0;padding:0;animation:c2scroll 40s linear infinite}
.c2-marquee--rev ul{animation-direction:reverse}
.c2-marquee img{width:76px;height:76px;border-radius:50%;object-fit:cover;border:3px solid #2A2525;display:block}
@keyframes c2scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.c2-marquee ul,.c2-caret{animation:none}}
.c2-stat__num{margin:0;font:400 clamp(5rem,3rem + 9vw,10rem)/.9 var(--c2-serif);background:var(--c2-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.c2-stat__label{margin:0;max-width:36rem;font-size:clamp(1.05rem,1rem + .4vw,1.3rem);color:#D6CFCC}
.c2-stat__label strong{display:block;margin-top:.5rem;color:var(--c2-teal);font:600 .95rem/1.3 var(--c2-mono);letter-spacing:.04em;text-transform:uppercase}

/* ---------- why ---------- */
.c2-why{display:grid;gap:1.25rem}
@media (min-width:900px){.c2-why{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2-why__card{display:flex;flex-direction:column;gap:.85rem;padding:2rem 1.75rem;background:#fff;border-radius:22px;border:1px solid var(--ds-line);position:relative;overflow:hidden}
.c2-why__card::after{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--c2-grad)}
.c2-why__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--c2-night);color:var(--c2-teal)}
.c2-why__icon svg{width:28px;height:28px}
.c2-why__card h3{margin:.25rem 0 0;font:400 1.75rem/1.1 var(--c2-serif)}
.c2-why__card p{margin:0;color:var(--ds-ink-2);line-height:1.55}
.c2-why__big{font:400 2.5rem/1 var(--c2-serif)!important;color:var(--ds-ink)!important}
.c2-why__card .c2-btn{margin-top:auto;align-self:flex-start}

/* ---------- career timeline ---------- */
.c2-steps{position:relative;display:grid;gap:2rem;list-style:none;margin:0;padding:0;counter-reset:c2s}
@media (min-width:900px){.c2-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
  .c2-steps::before{content:"";position:absolute;left:28px;right:28px;top:27px;height:2px;background:var(--c2-grad)}}
.c2-steps li{position:relative;display:grid;gap:.75rem;align-content:start}
.c2-steps__dot{position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--c2-night);color:var(--c2-teal);font:600 1rem/1 var(--c2-mono);box-shadow:0 0 0 6px var(--c2-paper)}
.c2-steps h3{margin:.25rem 0 0;font:700 1.25rem/1.25 var(--c2-sans)}
.c2-steps h3 em{font-style:normal;color:var(--c2-teal-d)}
.c2-steps p{margin:0;color:var(--ds-ink-2);line-height:1.55}

/* ---------- stories ---------- */
.c2-stories .c2-head{text-align:left;margin-inline:0;max-width:none;grid-template-columns:1fr;align-items:end}
@media (min-width:900px){.c2-stories .c2-head{grid-template-columns:1fr auto}}
.c2-stories .c2-head h2{margin:0;color:#fff}
.c2-stories .c2-kicker{justify-self:start}
.c2-rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(85%,380px);gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;list-style:none;margin:0;padding:0 0 1rem;scrollbar-width:thin;scrollbar-color:#3A3434 transparent}
.c2-rail li{scroll-snap-align:start;display:grid;gap:.75rem;align-content:start}
.c2-rail .ds-video__play{position:relative;display:block;width:100%;padding:0;border:0;border-radius:18px;overflow:hidden;background:#000;cursor:pointer;aspect-ratio:16/10}
.c2-rail .ds-video__play img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s var(--ds-ease),opacity .3s}
.c2-rail .ds-video__play:hover img{transform:scale(1.04);opacity:.85}
.c2-rail .ds-video__play::after{content:"";position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--c2-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z' fill='%230E0C0C'/%3E%3C/svg%3E") 55% 50%/40% no-repeat;box-shadow:0 10px 30px -8px rgb(12 196 160/.7)}
.c2-rail iframe{width:100%;aspect-ratio:16/10;border:0;border-radius:18px}
.c2-rail h3{margin:0;font:600 1.125rem/1.3 var(--c2-sans);color:#fff}
.c2-rail p{margin:0;color:#B9B1AE;font-size:.9375rem;line-height:1.5}
.c2-stories__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;margin-top:2.5rem;padding:1.5rem;border:1px solid #2C2828;border-radius:22px;background:var(--c2-night-2)}
.c2-stories__foot p{margin:0;color:#D6CFCC}
.c2-stories__foot .c2-proof__faces img{width:44px;height:44px;border-color:var(--c2-night-2)}

/* ---------- enroll ---------- */
.c2-enroll{display:grid;gap:1.5rem;align-items:stretch}
@media (min-width:900px){.c2-enroll{grid-template-columns:1.25fr .75fr}}
.c2-enroll__card{display:grid;gap:1.25rem;align-content:start;padding:clamp(1.75rem,1.25rem + 2vw,3rem);background:#fff;border:1px solid var(--ds-line);border-radius:26px}
.c2-enroll__card h2{margin:0}
.c2-enroll__card > p{margin:0;font-size:1.15rem;color:var(--ds-ink-2)}
.c2-enroll__card > p strong{color:var(--ds-ink)}
.c2-enroll__list{display:grid;gap:.75rem;list-style:none;margin:.25rem 0 .5rem;padding:0;counter-reset:c2e}
@media (min-width:600px){.c2-enroll__list{grid-template-columns:1fr 1fr}}
.c2-enroll__list li{counter-increment:c2e;display:flex;align-items:center;gap:.9rem;padding:1rem;border-radius:14px;background:var(--c2-paper);font-weight:600}
.c2-enroll__list li::before{content:counter(c2e);display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:10px;background:var(--c2-night);color:var(--c2-teal);font:600 .95rem/1 var(--c2-mono)}
.c2-enroll__sub{font-size:.95rem;color:var(--ds-ink-2)}
.c2-enroll__sub a{color:var(--c2-teal-d)}
.c2-quote{position:relative;margin:0;border-radius:26px;overflow:hidden;background:#000;min-height:420px}
.c2-quote video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.c2-quote blockquote{position:absolute;left:1rem;right:1rem;top:1rem;margin:0;padding:.9rem 1.1rem;background:#fff;border-radius:14px;font:italic 400 1.2rem/1.3 var(--c2-serif);color:var(--ds-ink);box-shadow:0 20px 40px -20px rgb(0 0 0/.6);transform:rotate(-1.5deg);pointer-events:none}

/* ---------- guidance band ---------- */
.c2-band{display:grid;gap:1.25rem;align-items:center;padding:clamp(1.75rem,1.25rem + 2vw,3rem);border-radius:26px;background:var(--c2-grad);color:#0E0C0C}
@media (min-width:900px){.c2-band{grid-template-columns:1fr auto}}
.c2-band h2{margin:0;font-size:clamp(1.9rem,1.4rem + 1.8vw,2.75rem)!important}
.c2-band p{margin:.5rem 0 0;font-size:1.05rem}
.c2-band__cta{display:grid;gap:.5rem;justify-items:start}
@media (min-width:900px){.c2-band__cta{justify-items:end;text-align:right}}
.c2-band__cta small{font-size:.875rem}

/* ---------- faq ---------- */
.c2-faq{display:grid;gap:2rem}
@media (min-width:1000px){.c2-faq{grid-template-columns:.8fr 1.2fr;gap:4rem}}
.c2-faq__aside{display:grid;gap:1rem;align-content:start}
@media (min-width:1000px){.c2-faq__aside{position:sticky;top:110px}}
.c2-faq__aside h2{margin:0}
.c2-faq__aside p{margin:0;color:var(--ds-ink-2)}
.c2-faq__help{display:grid;gap:.75rem;margin-top:1rem;padding:1.5rem;border-radius:20px;background:var(--c2-night);color:#fff}
.c2-faq__help p{color:#D6CFCC}
.c2-faq__help strong{font:400 1.5rem/1.1 var(--c2-serif);color:#fff}
.c2-faq__group{margin:1.75rem 0 .75rem;font:500 .8125rem/1 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2-faq__group:first-child{margin-top:0}
.c2-faq details{border:1px solid var(--ds-line);border-radius:16px;background:#fff;margin-bottom:.6rem;transition:border-color .2s,box-shadow .2s}
.c2-faq details[open]{border-color:color-mix(in srgb,var(--c2-teal) 55%,var(--ds-line));box-shadow:0 20px 40px -30px rgb(20 18 19/.4)}
.c2-faq summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;font-weight:600;font-size:1.0625rem;cursor:pointer;list-style:none}
.c2-faq summary::-webkit-details-marker{display:none}
.c2-faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--c2-paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' stroke='%23141213' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E") center/50% no-repeat;transition:transform .2s}
.c2-faq details[open] summary::after{transform:rotate(45deg);background-color:var(--c2-teal)}
.c2-faq__a{padding:0 1.25rem 1.25rem;color:var(--ds-ink-2);line-height:1.6}
.c2-faq__a p{margin:0 0 .75rem}.c2-faq__a p:last-child{margin:0}
.c2-faq__a a{color:var(--c2-teal-d)}

/* footer accent */
.ct2 .ds-footer,.ct2 footer.ds-footer{border-top:6px solid transparent;border-image:var(--c2-grad) 1}
.c2-hero .c2-kicker{background:transparent;border-color:#332D2D;color:#D6CFCC}
.c2-hero .c2-kicker::before{display:none}
.c2-programs__more a{text-underline-offset:.2em}

/* ====   v2.1 approachable pass: warm cream, pastel accents, light photo hero
   ========================================================================== */
.ct2{--c2-cream:#F7F2EA;--c2-mint:#DDF5EC;--c2-butter:#FFF1CC;--c2-lav:#E8EBFF;--c2-sky:#DDF2F9;--c2-peach:#FFE6D8}
body.ct2{background:var(--c2-cream)}
.c2-sec--paper,.c2-programs,.c2-logos{background:var(--c2-cream)}
.c2-kicker{background:#fff}
.c2-sec--paper .c2-steps__dot{box-shadow:0 0 0 6px var(--c2-cream)}

/* light hero */
.c2-hero--light{background:var(--c2-cream);color:var(--ds-ink);padding-block:clamp(2.5rem,2rem + 3vw,5rem) clamp(6.5rem,6rem + 3vw,8rem)}
.c2-hero--light::before{background-image:radial-gradient(circle at 1px 1px,rgb(20 18 19/.09) 1px,transparent 0);background-size:22px 22px;mask-image:radial-gradient(ellipse at 80% 30%,#000,transparent 65%);-webkit-mask-image:radial-gradient(ellipse at 80% 30%,#000,transparent 65%)}
.c2-hero--light::after{background:radial-gradient(circle,rgb(12 196 160/.20),transparent 62%)}
.c2-hero--light h1{color:var(--ds-ink)}
.c2-hero--light h1 em{color:var(--c2-teal-d)}
.c2-hero--light .c2-kicker{background:#fff;border-color:var(--ds-line);color:var(--ds-ink)}
.c2-hero--light .c2-hero__tag{background:none;color:var(--ds-ink);-webkit-background-clip:initial;background-clip:initial}
.c2-hero--light .c2-hero__tag mark{background:linear-gradient(transparent 55%,var(--c2-butter) 55%);color:inherit;padding:0 .1em}
.c2-hero--light .c2-hero__lede{color:var(--ds-ink-2)}
.c2-hero--light .c2-hero__lede strong{color:var(--ds-ink)}
.c2-hero--light .c2-hero__sub{color:var(--ds-ink-3)}
.c2-hero--light .c2-hero__sub a{color:var(--ds-ink)}
.c2-hero--light .c2-proof{border-top-color:var(--ds-line);color:var(--ds-ink-2)}
.c2-hero--light .c2-proof strong{color:var(--ds-ink)}
.c2-hero--light .c2-proof__faces img{border-color:var(--c2-cream)}
.c2-hero--light .c2-btn--ghost{border-color:var(--ds-ink);color:var(--ds-ink)}
.c2-hero--light .c2-btn--ghost:hover{background:var(--ds-ink);color:#fff}
.c2-hero h1{font-size:clamp(2.6rem,1.5rem + 4.4vw,4.75rem)}
.c2-hero__photo{position:absolute;inset:4% 6% 6% 10%;margin:0;border-radius:200px 200px 32px 32px;overflow:hidden;background:var(--c2-mint);box-shadow:0 40px 80px -40px rgb(20 18 19/.45)}
.c2-hero__photo img{width:100%;height:100%;object-fit:cover;object-position:62% 50%;display:block}
.c2-hero__blob{position:absolute;width:150px;height:150px;border-radius:50%;background:var(--c2-gold);left:2%;top:10%;z-index:0}
.c2-hero__spark{position:absolute;right:0;top:0;width:78px;height:78px;color:var(--ds-ink);z-index:3}
.c2-hero--light .c2-hero__art{min-height:560px}
.c2-hero--light .c2-float{box-shadow:0 24px 50px -24px rgb(20 18 19/.45)}
.c2-hero--light .c2-float--stat{left:0;bottom:8%;background:var(--c2-butter);border:1px solid #F3DFA4}
.c2-float--people{right:0;bottom:22%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--c2-mint);border:1px solid #BDE9D9;border-radius:18px;font-size:.875rem;line-height:1.3;color:var(--ds-ink)}
.c2-float--people strong{display:block;font-size:1rem}
.c2-hero--light .c2-float--chip{left:auto;right:8%;top:6%;background:var(--ds-ink);color:#fff;transform:rotate(3deg)}
.c2-hero--light .c2-float--chip::before{content:"✓ ";color:var(--c2-teal)}
@media (max-width:999px){.c2-hero--light .c2-hero__art{min-height:0;height:clamp(380px,100vw,560px)}}
@media (max-width:599px){.c2-hero__photo{inset:6% 2% 10% 8%}.c2-float--people{bottom:26%}.c2-hero__blob{width:100px;height:100px}}

/* quick facts row under hero */
.c2-quick{position:relative;z-index:2;margin-top:calc(-1 * clamp(4.5rem,4rem + 2vw,5.5rem))}
.c2-quick__grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1000px){.c2-quick__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2-quick__item{display:grid;gap:.35rem;align-content:start;padding:1.25rem 1.25rem 1.35rem;border-radius:22px;background:#fff;border:1px solid var(--ds-line);box-shadow:0 20px 40px -32px rgb(20 18 19/.4)}
.c2-quick__item:nth-child(1){background:var(--c2-mint);border-color:#BDE9D9}
.c2-quick__item:nth-child(2){background:var(--c2-butter);border-color:#F3DFA4}
.c2-quick__item:nth-child(3){background:var(--c2-lav);border-color:#CDD3FF}
.c2-quick__item:nth-child(4){background:var(--c2-peach);border-color:#F8CDB6}
.c2-quick__big{font:400 clamp(1.9rem,1.5rem + 1.2vw,2.5rem)/1 var(--c2-serif)}
.c2-quick__item p{margin:0;font-size:.9375rem;line-height:1.4;color:var(--ds-ink-2)}
.c2-awards{margin-top:1.25rem}

/* program cards: softer */
.c2-card{border-radius:26px}
.c2-card::before{height:220px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 26%,#fff),#fff)}
.c2-card__pay{background:color-mix(in srgb,var(--acc) 16%,#fff);color:var(--ds-ink);border:1px dashed color-mix(in srgb,var(--acc) 60%,#fff)}
.c2-card__pay strong{color:var(--ds-ink);background:linear-gradient(transparent 55%,color-mix(in srgb,var(--acc) 45%,#fff) 55%)}
.c2-card__cta{border-top:0;margin:0 1rem 1rem;border-radius:16px}

/* why cards: pastel */
.c2-why__card::after{display:none}
.c2-why__card:nth-child(1){background:var(--c2-mint);border-color:#BDE9D9}
.c2-why__card:nth-child(2){background:var(--c2-butter);border-color:#F3DFA4}
.c2-why__card:nth-child(3){background:var(--c2-lav);border-color:#CDD3FF}
.c2-why__card{border-radius:26px}

/* before -> after stories */
.c2-journeys{display:grid;gap:1.25rem}
@media (min-width:760px){.c2-journeys{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2-journeys{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2-journey{position:relative;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border-radius:26px;background:#fff;border:1px solid var(--ds-line);transition:transform .2s var(--ds-ease),box-shadow .2s}
.c2-journey:hover{transform:translateY(-3px);box-shadow:0 30px 60px -36px rgb(20 18 19/.45)}
.c2-journey blockquote{margin:0;font:italic 400 1.3rem/1.35 var(--c2-serif);color:var(--ds-ink)}
.c2-journey blockquote::before{content:"\201C";display:block;font:400 3rem/.6 var(--c2-serif);color:var(--c2-teal);margin-bottom:.25rem}
.c2-journey mark{background:linear-gradient(transparent 50%,var(--hl,var(--c2-butter)) 50%);color:inherit;padding:0 .08em}
.c2-journey:nth-child(3n+2){--hl:var(--c2-mint)}
.c2-journey:nth-child(3n){--hl:var(--c2-lav)}
.c2-journey__who{display:flex;align-items:center;gap:.8rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--ds-line)}
.c2-journey__who img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:none}
.c2-journey__who strong{display:block;font-size:1rem}
.c2-journey__path{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.8125rem;color:var(--ds-ink-2)}
.c2-journey__path span{padding:.2rem .5rem;border-radius:999px;background:var(--c2-cream)}
.c2-journey__path b{padding:.2rem .5rem;border-radius:999px;background:var(--ds-ink);color:#fff;font-weight:600}
.c2-journey a.c2-journey__link{position:absolute;inset:0;border-radius:inherit}
.c2-journey a.c2-journey__link span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.c2-center{text-align:center;margin-top:2rem}

/* ==== v2.2 fixes ==== */
.ct2 .ds-main a.c2-btn{text-decoration:none}
.ct2 .ds-main a.c2-btn--dark{color:#fff}
.ct2 .ds-main a.c2-btn--teal{color:#0E0C0C}
.ct2 .ds-main a.c2-btn--line{color:var(--ds-ink)}
.ct2 .ds-main a.c2-btn--line:hover{color:#fff}
.ct2 .ds-main .c2-sec--night a.c2-btn--ghost,.ct2 .ds-main .c2-hero:not(.c2-hero--light) a.c2-btn--ghost{color:#fff}
.ct2 .ds-main .c2-hero--light a.c2-btn--ghost{color:var(--ds-ink)}
.ct2 .ds-main .c2-hero--light a.c2-btn--ghost:hover{color:#fff}
.ct2 .ds-main a.c2-card__cta{color:#fff}
.ct2 .ds-main .c2-logos__title{font:500 .8125rem/1 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2-hero h1{font-size:clamp(2.5rem,1.4rem + 3.6vw,4.25rem)}
@media (min-width:1000px){.c2-hero__grid{grid-template-columns:1.15fr .85fr}}
.c2-hero--light .c2-float--people{right:-2%;bottom:auto;top:40%}
.c2-hero--light .c2-float--stat{bottom:2%;left:-2%}
.c2-hero--light .c2-float--chip{right:auto;left:34%;top:1%}
.c2-hero__spark{right:auto;left:0;top:auto;bottom:34%;width:60px;height:60px}
@media (max-width:599px){.c2-hero--light .c2-float--people{top:auto;bottom:30%;right:0}.c2-hero--light .c2-float--chip{left:auto;right:2%}.c2-hero__spark{display:none}}
/* awards on dark so every badge reads */
.c2-awards__card{background:var(--c2-night);border-color:var(--c2-night);color:#fff}
.c2-awards__label{color:#B9B1AE}
.c2-awards__label strong{color:#fff}
@media (min-width:1000px){.c2-awards ul{justify-content:flex-end;gap:1rem 2rem}}
/* journeys: simpler path line */
.c2-journey__path{display:block;margin-top:.15rem;line-height:1.4}
.c2-journey__path span{padding:0;background:none}
.c2-journey__path b{display:inline;padding:0;background:none;color:var(--c2-teal-d);font-weight:700}
.c2-center{margin-top:2.5rem}
/* hand-drawn underline under highlighted heading words */
.c2-light h2 em,.c2-hero--light h1 em{font-style:italic;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8.5C40 3 90 2.5 198 6' fill='none' stroke='%23FEC853' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") left 92%/100% .32em no-repeat;padding-bottom:.08em}
.c2-hero--light h1 em{display:inline;background-size:100% .22em}
/* no red anywhere in our own UI */
.c2-term__bar i:nth-child(1){background:var(--c2-gold)}.c2-term__bar i:nth-child(2){background:#A6E6CF}

/* logos title spacing */
.ct2 .ds-main .c2-logos .c2-logos__title{margin:0 0 1.75rem;text-align:center}
/* contrast: teal on cream */
.ct2 .ds-main .c2-light h2 em,.ct2 .ds-main .c2-hero--light h1 em{color:#006E64}
/* mobile hero art fix */
@media (max-width:599px){.c2-hero--light .c2-float--chip{top:2%;bottom:auto;right:2%;left:auto}.c2-hero--light .c2-float--people{display:none}.c2-hero--light .c2-float--stat{left:0;bottom:0;width:min(250px,72%)}.c2-quick__big{font-size:1.55rem}.c2-quick__item{padding:1rem}}
/* phone: swipeable program cards and stories */
@media (max-width:699px){.c2-cards,.c2-journeys{grid-auto-flow:column;grid-auto-columns:86%;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--ds-gutter));padding:0 var(--ds-gutter) 1rem;scroll-padding-inline:var(--ds-gutter);scrollbar-width:none}.c2-cards::-webkit-scrollbar,.c2-journeys::-webkit-scrollbar{display:none}.c2-card,.c2-journey{scroll-snap-align:start}.c2-card:hover,.c2-journey:hover{transform:none}}

/* ==========================================================================
   v2 program page template
   ========================================================================== */
.c2-phero{--acc:var(--c2-teal);--acc-soft:var(--c2-mint);position:relative;overflow:hidden;background:var(--c2-cream);padding-block:clamp(2rem,1.5rem + 2.5vw,4rem) clamp(3rem,2.5rem + 3vw,5rem)}
.c2-phero--cs{--acc:#6C84F5;--acc-soft:var(--c2-lav)}
.c2-phero--da{--acc:#2FB8DA;--acc-soft:var(--c2-sky)}
.c2-phero--qa{--acc:var(--c2-gold);--acc-soft:var(--c2-butter)}
.c2-phero::before{content:"";position:absolute;right:-180px;top:-200px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--acc) 26%,transparent),transparent 65%);pointer-events:none}
.c2-phero__grid{position:relative;display:grid;gap:clamp(2rem,1.5rem + 3vw,4rem);align-items:start}
@media (min-width:1000px){.c2-phero__grid{grid-template-columns:1.2fr .8fr;align-items:center}}
.c2-phero__copy{display:grid;gap:1.1rem;justify-items:start}
.ct2 .ds-main a.c2-back{display:inline-flex;align-items:center;gap:.4rem;font:500 .875rem/1 var(--c2-mono);color:var(--ds-ink-2);text-decoration:none}
.ct2 .ds-main a.c2-back:hover{color:var(--ds-ink)}
.c2-phero h1{margin:0;font-size:clamp(2.5rem,1.5rem + 3.6vw,4.5rem);color:var(--ds-ink)}
.c2-phero h1 em{font-style:italic;color:var(--ds-ink);background:linear-gradient(transparent 62%,var(--acc-soft) 62%)}
.c2-prating{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;font-size:.95rem;color:var(--ds-ink-2)}
.c2-prating strong{color:var(--ds-ink)}
.c2-phero__lede{margin:0;max-width:38rem;font-size:clamp(1.05rem,1rem + .3vw,1.2rem);line-height:1.6;color:var(--ds-ink-2)}
.c2-ptrust{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:.25rem 0 0;padding:0}
.c2-ptrust li{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border-radius:999px;background:#fff;border:1px solid var(--ds-line);font-size:.875rem;font-weight:500}
.c2-ptrust li::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--acc)}
.c2-ptrust a{color:inherit}
.c2-pcard{position:relative;display:grid;gap:1.1rem;padding:1.75rem;border-radius:28px;background:var(--c2-night);color:#fff;box-shadow:0 40px 80px -40px rgb(20 18 19/.6)}
.c2-pcard::after{content:"";position:absolute;inset:0 0 auto;height:6px;border-radius:28px 28px 0 0;background:var(--c2-grad)}
.c2-pcard__title{margin:0;font:400 1.6rem/1.1 var(--c2-serif)}
.c2-pcard dl{display:grid;gap:0;margin:0}
.c2-pcard dl div{display:grid;grid-template-columns:7.5rem 1fr;gap:.75rem;padding:.8rem 0;border-top:1px solid #2C2828}
.c2-pcard dt{font:500 .75rem/1.5 var(--c2-mono);text-transform:uppercase;letter-spacing:.06em;color:#9E9592}
.c2-pcard dd{margin:0;font-weight:600;line-height:1.4}
.c2-pcard dd small{display:block;font-weight:400;color:#B9B1AE}
.c2-pcard .c2-btn{width:100%}
.c2-pcard__note{margin:0;font-size:.85rem;color:#B9B1AE;text-align:center}
.c2-ptiles{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:clamp(2rem,1.5rem + 2vw,3rem) 0 0;padding:0;position:relative}
@media (min-width:900px){.c2-ptiles{grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}}
.c2-ptiles li{display:grid;justify-items:center;gap:.6rem;padding:1.25rem 1rem;border-radius:22px;background:#fff;border:1px solid var(--ds-line);text-align:center;font-weight:600;font-size:.95rem}
.c2-ptiles li:nth-child(4n+1){background:var(--c2-mint);border-color:#BDE9D9}
.c2-ptiles li:nth-child(4n+2){background:var(--c2-butter);border-color:#F3DFA4}
.c2-ptiles li:nth-child(4n+3){background:var(--c2-lav);border-color:#CDD3FF}
.c2-ptiles li:nth-child(4n+4){background:var(--c2-peach);border-color:#F8CDB6}
.c2-ptiles img{width:100%;max-width:150px;height:96px;object-fit:contain}

/* existing program sections, restyled */
.ct2 .ds-main .ds-section{background:#fff}
.ct2 .ds-main .ds-section--paper-2{background:var(--c2-cream)}
.ct2 .ds-main .ds-section--night{background:var(--c2-night)}
.ct2 .ds-main .ds-eyebrow{display:inline-flex;align-items:center;gap:.5rem;width:max-content;padding:.35rem .8rem;border-radius:999px;background:#fff;border:1px solid var(--ds-line);font:500 .8125rem/1 var(--c2-mono);text-transform:lowercase;color:var(--ds-ink)}
.ct2 .ds-main .ds-eyebrow::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--c2-teal)}
.ct2 .ds-main .ds-section--night .ds-eyebrow{background:var(--c2-night-3);border-color:#332D2D;color:#F7F4F2}
.ct2 .ds-main .ds-home-logos__title{font:500 .8125rem/1.3 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-ink-3);text-align:center;margin:0 0 1.5rem}
.ct2 .ds-main .ds-pg-nav{margin-top:2rem}
.ct2 .ds-main .ds-pg-nav .ds-chips{justify-content:center}
.ct2 .ds-main .ds-pg-nav a.ds-chip{padding:.55rem 1rem;border-radius:999px;background:#fff;border:1px solid var(--ds-line);font:500 .875rem/1 var(--c2-sans);color:var(--ds-ink);text-decoration:none;transition:background .15s,color .15s}
.ct2 .ds-main .ds-pg-nav a.ds-chip:hover{background:var(--ds-ink);color:#fff}
.ct2 .ds-main .ds-chips .ds-chip{border-radius:999px;background:var(--c2-mint);border:1px solid #BDE9D9;color:var(--ds-ink)}
.ct2 .ds-main .ds-kicker{font:700 1.125rem/1.3 var(--c2-sans);color:var(--ds-ink)}
.ct2 .ds-main .ds-card{border-radius:24px}
.ct2 .ds-main .ds-media img{border-radius:24px}
/* buttons */
.ct2 .ds-main a.ds-btn,.ct2 .ds-main button.ds-btn{min-height:52px;padding:0 1.5rem;border-radius:12px;background:var(--c2-night);color:#fff;border:1.5px solid var(--c2-night);font:600 1rem/1 var(--c2-sans)}
.ct2 .ds-main a.ds-btn:hover{background:#000}
.ct2 .ds-main a.ds-btn--ghost{background:transparent;color:var(--ds-ink);border-color:var(--ds-ink)}
.ct2 .ds-main a.ds-btn--ghost:hover{background:var(--ds-ink);color:#fff}
.ct2 .ds-main .ds-section--night a.ds-btn{background:var(--c2-teal);border-color:var(--c2-teal);color:#0E0C0C}
.ct2 .ds-main .ds-section--night a.ds-btn--ghost{background:transparent;border-color:rgb(255 255 255/.3);color:#fff}
/* curriculum modules */
.ct2 .ds-main .ds-curric{display:grid;gap:.75rem}
.ct2 .ds-main .ds-curric details{border:1px solid var(--ds-line);border-radius:20px;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.ct2 .ds-main .ds-curric details[open]{border-color:color-mix(in srgb,var(--c2-teal) 55%,var(--ds-line));box-shadow:0 24px 50px -36px rgb(20 18 19/.45)}
.ct2 .ds-main .ds-curric summary{padding:1.1rem 1.25rem;gap:1rem}
.ct2 .ds-main .ds-curric__label{display:inline-grid;place-items:center;min-width:5.5rem;padding:.35rem .6rem;border-radius:999px;background:var(--c2-night);color:var(--c2-teal);font:600 .75rem/1 var(--c2-mono)}
.ct2 .ds-main .ds-curric__title{font:600 1.0625rem/1.3 var(--c2-sans)}
.ct2 .ds-main .ds-curric__hours{padding:.3rem .6rem;border-radius:999px;background:var(--c2-butter);font:500 .75rem/1 var(--c2-mono);color:var(--ds-ink)}
.ct2 .ds-main .ds-curric__body{padding:0 1.25rem 1.25rem}
.ct2 .ds-main .ds-band--light{border-radius:26px;background:var(--c2-grad)}
/* tuition plans */
.ct2 .ds-main .ds-plans{gap:1.25rem}
.ct2 .ds-main .ds-plan{border-radius:26px;padding:1.75rem;border:1px solid var(--ds-line);background:#fff}
.ct2 .ds-main .ds-plan:nth-child(1){background:var(--c2-mint);border-color:#BDE9D9}
.ct2 .ds-main .ds-plan:nth-child(2){background:var(--c2-night);border-color:var(--c2-night);color:#fff;transform:translateY(-8px);box-shadow:0 40px 80px -40px rgb(20 18 19/.6)}
.ct2 .ds-main .ds-plan:nth-child(2) dt,.ct2 .ds-main .ds-plan:nth-child(2) .ds-plan__tag,.ct2 .ds-main .ds-plan:nth-child(2) s{color:#B9B1AE}
.ct2 .ds-main .ds-plan:nth-child(2) dd,.ct2 .ds-main .ds-plan:nth-child(2) strong,.ct2 .ds-main .ds-plan:nth-child(2) h3{color:#fff}
.ct2 .ds-main .ds-plan:nth-child(2) .ds-plan__rows div{border-color:#2C2828}
.ct2 .ds-main .ds-plan:nth-child(3){background:var(--c2-butter);border-color:#F3DFA4}
.ct2 .ds-main .ds-plan h3{font:400 1.75rem/1.1 var(--c2-serif)}
.ct2 .ds-main .ds-plan .ds-chip{border-radius:999px;background:#fff;border:1px solid var(--ds-line);color:var(--ds-ink);font:500 .75rem/1 var(--c2-mono)}
.ct2 .ds-main .ds-plan:nth-child(2) .ds-chip{background:var(--c2-teal);border-color:var(--c2-teal)}
.ct2 .ds-main .ds-plan__price strong{font:400 2.75rem/1 var(--c2-serif)}
@media (max-width:899px){.ct2 .ds-main .ds-plan:nth-child(2){transform:none}}
/* career (night) cards */
.ct2 .ds-main .ds-section--night .ds-card{background:var(--c2-night-2);border-color:#2C2828}
/* reviews */
.ct2 .ds-main .ds-review{border-radius:26px;background:#fff;border:1px solid var(--ds-line)}
.ct2 .ds-main .ds-review blockquote p{font:italic 400 1.15rem/1.45 var(--c2-serif);color:var(--ds-ink)}
.ct2 .ds-main .ds-review blockquote::before{content:"\201C";display:block;font:400 3rem/.6 var(--c2-serif);color:var(--c2-teal);margin-bottom:.4rem}
/* stat cards */
.ct2 .ds-main .ds-statcard{border-radius:22px;background:#fff}
.ct2 .ds-main .ds-statcard .ds-stat__num{font-family:var(--c2-serif);font-weight:400}
/* faq */
.ct2 .ds-main .ds-faq details{border:1px solid var(--ds-line);border-radius:16px;background:#fff;margin-bottom:.6rem}
.ct2 .ds-main .ds-faq details[open]{border-color:color-mix(in srgb,var(--c2-teal) 55%,var(--ds-line))}
.ct2 .ds-main .ds-faq summary{padding:1.1rem 1.25rem;font-weight:600}
.ct2 .ds-main .ds-faq__a{padding:0 1.25rem 1.25rem}
.c2-phero .c2-hero__sub{color:var(--ds-ink-3)}
.ct2 .ds-main .c2-phero .c2-hero__sub a{color:var(--ds-ink)}
.c2-phero .c2-kicker{justify-self:start}
.c2-phero .c2-kicker::before{display:none}
.ct2 .ds-main .c2-pcard a.c2-btn--teal{color:#0E0C0C}

/* program template polish */
.ct2 .ds-main .c2-phero h1 em{color:var(--ds-ink)}
.c2-pcard{overflow:hidden}
.c2-pcard::after{border-radius:0}
.ct2 .ds-main .ds-kicker.ds-fc-explore{margin:2.25rem 0 1rem}
.ct2 .ds-main .ds-videos .ds-video__play{border-radius:18px;overflow:hidden}
/* pcard phone rows */
@media (max-width:599px){.c2-pcard{padding:1.35rem}.c2-pcard dl div{grid-template-columns:5.5rem 1fr}}

/* program colours v2 (Natalie): Cybersecurity electric lime, QA burnt orange */
.ct2{--c2-cs:#9ED11F;--c2-qa:#F08A24}
.c2-phero--cs{--acc:#9ED11F;--acc-soft:#EEF8D0}
.c2-phero--qa{--acc:#F08A24;--acc-soft:#FFE6D1}

/* no lavender: pastels match brand + program colours */
.ct2{--c2-limet:#EEF8D0}
.c2-quick__item:nth-child(3){background:var(--c2-limet);border-color:#D6ECA0}
.c2-why__card:nth-child(3){background:var(--c2-limet);border-color:#D6ECA0}
.c2-journey:nth-child(3n){--hl:var(--c2-sky)}
.c2-ptiles li:nth-child(4n+3){background:var(--c2-sky);border-color:#B9E3F2}

/* ==== program cards 2x2 (v3): left aligned, rows line up across each pair ==== */
.c2-cards{max-width:1120px;margin-inline:auto;gap:1.5rem}
@media (min-width:700px){.c2-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.c2-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.c2-card{display:grid;grid-template-rows:subgrid;grid-row:span 7;row-gap:0;text-align:left;align-items:start}
.c2-card::before{height:180px}
.c2-card > *{position:relative;margin:0;padding-inline:clamp(1.5rem,1.2rem + 1vw,2.25rem)}
.c2-card__top{display:flex;align-items:center;gap:1rem;padding-top:clamp(1.5rem,1.2rem + 1vw,2.25rem)}
.c2-card__icon{flex:none;width:52px;height:52px;border-radius:14px}
.c2-card__name{display:grid;gap:.3rem}
.c2-card h3{font-size:clamp(1.6rem,1.35rem + .8vw,2.1rem);line-height:1.05}
.c2-card__rating{font-size:.9rem;color:var(--ds-ink-2)}
.c2-card__role{padding-top:1.25rem;font-weight:700;font-size:1.0625rem}
.c2-card__desc{padding-top:.4rem;color:var(--ds-ink-2);font-size:1rem;line-height:1.5}
.c2-card .c2-facts{justify-content:flex-start;padding-top:1rem;padding-bottom:0}
.c2-card .c2-card__list{padding-top:1.25rem;margin-top:1.25rem;border-top:1px dashed color-mix(in srgb,var(--acc) 45%,var(--ds-line));width:auto}
.c2-card .c2-card__list li{font-size:1rem}
.c2-card__pay{align-self:stretch;margin:1.25rem clamp(1.5rem,1.2rem + 1vw,2.25rem) 0!important;padding:1rem 1.1rem!important;width:auto;font-size:.95rem}
.c2-card__cta{margin:1.5rem clamp(1rem,.8rem + .6vw,1.35rem) clamp(1rem,.8rem + .6vw,1.35rem)!important;padding:1.1rem 1.35rem!important;align-self:end;justify-content:space-between}
.c2-card h3 a::after{z-index:1}
@media (max-width:699px){.c2-card{display:flex;flex-direction:column}.c2-card__cta{margin-top:auto!important}.c2-card__pay{margin-bottom:1.5rem!important}}

/* cards v3 fixes: phone rail bleed, tablet CTA fit */
@media (max-width:699px){.c2-cards{margin-inline:calc(-1 * var(--ds-gutter));max-width:none;grid-auto-columns:min(86%,360px)}}
@media (min-width:700px) and (max-width:1023px){.c2-card__cta{margin-inline:.75rem!important;padding-inline:1rem!important;font-size:.95rem}}
@media (max-width:699px){.c2-cards{grid-auto-columns:min(88%,360px)}.c2-card > *{padding-inline:1.25rem}.c2-card__pay{margin-inline:1.25rem!important}.c2-card__cta{margin:1.25rem .75rem .75rem!important;padding:1rem!important;font-size:.9375rem;gap:.5rem}.c2-card h3{font-size:1.5rem}.c2-card__icon{width:44px;height:44px}}

/* ==== coolness layer v1: product UI illustrations, diagrams, code texture, motion ==== */
.ct2{--c2-lime:#9ED11F;--c2-orange:#F08A24;--c2-sky-d:#2FB8DA;--c2-ink-ui:#141212}

/* code texture canvas */
.c2-matrix{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;display:block}
.c2-hero .c2-matrix{inset:-8% -12% -8% 0;width:112%;height:116%;opacity:.9;mask-image:radial-gradient(ellipse at 60% 45%,#000 20%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse at 60% 45%,#000 20%,transparent 72%)}
.c2-stat,.c2-stories{position:relative;isolation:isolate}
.c2-stat > .c2-matrix,.c2-stories > .c2-matrix{z-index:-1;mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent)}

/* hero stage */
.c2-stage .c2-hero__photo{inset:0 0 20% 18%}
.c2-stage .c2-hero__blob{left:8%;top:2%}
.c2-ide{left:-6%;bottom:0;width:min(372px,80%);background:var(--c2-ink-ui);border:1px solid #2B2626;border-radius:16px;overflow:hidden;color:#EDE7E3;box-shadow:0 40px 70px -30px rgb(20 18 19/.7)!important}
.c2-ide__bar,.c2-ui__bar{display:flex;align-items:center;gap:6px;padding:.6rem .8rem;border-bottom:1px solid #2B2626;font:500 .75rem/1 var(--c2-mono);color:#9A918D}
.c2-ide__bar i,.c2-ui__bar i{width:9px;height:9px;border-radius:50%;background:#3A3434}
.c2-ide__bar i:nth-child(1){background:#F08A24}.c2-ide__bar i:nth-child(2){background:#FEC853}.c2-ide__bar i:nth-child(3){background:#0CC4A0}
.c2-ide__bar span,.c2-ui__bar span{margin-left:.4rem}
.c2-ide__bar b{margin-left:auto;font-weight:500;color:#0CC4A0}
.c2-ide pre{margin:0;padding:.85rem 1rem 1rem;min-height:12.4em;font:500 .8125rem/1.7 var(--c2-mono);white-space:pre-wrap;color:#EDE7E3;background:none;border:0;counter-reset:ln}
.c2-ide pre .ln{display:block;padding-left:2.1em;position:relative}
.c2-ide pre .ln::before{counter-increment:ln;content:counter(ln);position:absolute;left:0;width:1.3em;text-align:right;color:#5E5654}
.c2-tok-k{color:#FF9E64}.c2-tok-f{color:#7FE3C8}.c2-tok-s{color:#FEC853}.c2-tok-c{color:#7E7572;font-style:italic}.c2-tok-n{color:#B7E35B}.c2-tok-o{color:#0CC4A0;font-weight:700}
.c2-typecaret{display:inline-block;width:.55em;height:1.1em;margin-left:1px;vertical-align:-.18em;background:#0CC4A0;animation:c2blink 1s steps(1) infinite}
@keyframes c2blink{50%{opacity:0}}
.c2-toast{display:flex;align-items:center;gap:.7rem;padding:.7rem .95rem;background:#fff;border:1px solid var(--ds-line);border-radius:16px;font-size:.8125rem;line-height:1.3;color:var(--ds-ink-2)}
.c2-toast b{display:block;color:var(--ds-ink);font-size:.9rem}
.c2-toast img{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none}
.c2-toast--live{left:-2%;top:12%}
.c2-toast--live .c2-proof__faces img{width:28px;height:28px}
.c2-live{display:inline-flex;align-items:center;gap:.35rem;font:700 .7rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:#C2410C}
.c2-live::before{content:"";width:8px;height:8px;border-radius:50%;background:#F08A24;box-shadow:0 0 0 0 rgb(240 138 36/.6);animation:c2pulse 1.6s ease-out infinite}
@keyframes c2pulse{to{box-shadow:0 0 0 9px rgb(240 138 36/0)}}
.c2-toast--offer{right:-4%;bottom:26%;width:min(270px,62%);background:var(--c2-mint);border-color:#BDE9D9}
.c2-toast--offer .c2-toast__tag{display:inline-block;margin-bottom:.2rem;font:700 .7rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:#006E64}
.c2-stage .c2-float--chip{left:34%;top:-1%}
.c2-float{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.c2-stage .c2-toast,.c2-stage .c2-ide{animation:c2bob 7s ease-in-out infinite}.c2-stage .c2-toast--offer{animation-delay:-2.5s}.c2-stage .c2-ide{animation-duration:9s;animation-delay:-4s}}
@keyframes c2bob{50%{translate:0 -8px}}
@media (max-width:999px){.c2-ide{left:0}.c2-toast--offer{right:0}}
@media (max-width:599px){.c2-stage .c2-hero__photo{inset:0 0 26% 10%}.c2-ide{width:92%;font-size:.75rem}.c2-ide pre{font-size:.72rem;min-height:11.5em}.c2-toast--live{display:none}.c2-toast--offer{top:30%;bottom:auto;width:min(230px,70%)}.c2-stage .c2-float--chip{top:2%}}

/* program card mini UIs */
.c2-card{grid-row:span 8}
.c2-card > .c2-ui{margin:clamp(1rem,.8rem + .6vw,1.35rem) clamp(1rem,.8rem + .6vw,1.35rem) 0;padding:0!important;height:148px;border-radius:14px;overflow:hidden;background:var(--c2-ink-ui);border:1px solid #2B2626;color:#EDE7E3;font:500 .78rem/1.65 var(--c2-mono);position:relative}
.c2-card__top{padding-top:1.25rem!important}
.c2-ui__bar{padding:.5rem .75rem;font-size:.7rem}
.c2-ui__bar i:nth-child(1){background:var(--acc)}
.c2-ui__body{padding:.6rem .85rem;display:grid;gap:.1rem}
.c2-ui__body > span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c2-ui__pill{position:absolute;right:.75rem;bottom:.7rem;padding:.3rem .55rem;border-radius:999px;background:var(--acc);color:#0E0C0C;font:700 .68rem/1 var(--c2-mono);letter-spacing:.03em}
.c2-ui .c2-dim{color:#7E7572}.c2-ui .c2-acc{color:var(--acc)}.c2-ui .c2-warn{color:#FEC853}
.c2-ui--chart svg{position:absolute;left:.85rem;right:.85rem;bottom:.8rem;width:calc(100% - 1.7rem);height:84px}
.c2-ui--chart .c2-bar{fill:var(--acc);opacity:.85;transform-origin:50% 100%;transform-box:fill-box}
.c2-ui--chart .c2-trend{fill:none;stroke:#FEC853;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:400;stroke-dashoffset:0}
.c2-ui--tests .c2-ui__body > span::first-letter{color:var(--acc)}
/* sequenced reveal inside UIs */
.c2-anim .c2-seq{opacity:0;translate:0 4px}
.c2-anim.is-on .c2-seq{animation:c2in .35s ease forwards;animation-delay:calc(var(--i,0) * .45s + .2s)}
.c2-anim .c2-ui__pill{opacity:0;scale:.8}
.c2-anim.is-on .c2-ui__pill{animation:c2pop .4s cubic-bezier(.3,1.6,.5,1) forwards;animation-delay:calc(var(--n,3) * .45s + .5s)}
.c2-anim .c2-bar{transform:scaleY(0)}
.c2-anim.is-on .c2-bar{animation:c2grow .7s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i,0) * .08s + .2s)}
.c2-anim .c2-trend{stroke-dashoffset:400}
.c2-anim.is-on .c2-trend{animation:c2draw 1.4s ease forwards .7s}
@keyframes c2in{to{opacity:1;translate:0 0}}
@keyframes c2pop{to{opacity:1;scale:1}}
@keyframes c2grow{to{transform:scaleY(1)}}
@keyframes c2draw{to{stroke-dashoffset:0}}
@media (hover:hover){.c2-card{transition:translate .35s ease,box-shadow .35s ease}.c2-card:hover{translate:0 -4px;box-shadow:0 30px 60px -34px rgb(20 18 19/.45)}}
@media (max-width:699px){.c2-card > .c2-ui{height:132px}}

/* tools marquee */
.c2-stack{margin:clamp(2rem,1.5rem + 1.5vw,3rem) auto 0;max-width:1120px;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.c2-stack__label{display:block;text-align:center;margin:0 0 .9rem;font:600 .75rem/1 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2-stack ul{display:flex;gap:.6rem;width:max-content;margin:0;padding:0;list-style:none;animation:c2scroll 45s linear infinite}
.c2-stack li{display:flex;align-items:center;gap:.5rem;padding:.55rem .9rem;border:1px solid var(--ds-line);border-radius:999px;background:#fff;font:600 .85rem/1 var(--c2-mono);color:var(--ds-ink);white-space:nowrap}
.c2-stack li::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--dot,#0CC4A0)}
.c2-stack:hover ul{animation-play-state:paused}

/* career change map */
.c2-map{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 190px minmax(0,1fr);column-gap:clamp(3rem,2rem + 4vw,7rem);row-gap:.7rem;align-items:center;max-width:1040px;margin:0 auto clamp(3rem,2rem + 3vw,4.5rem)}
.c2-map__row{display:contents}
.c2-map__from,.c2-map__to{position:relative;z-index:1;display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;border-radius:14px;background:#fff;border:1px solid var(--ds-line);font-size:.95rem;line-height:1.25}
.c2-map__from{grid-column:1;justify-self:end;color:var(--ds-ink-2)}
.c2-map__from img{width:30px;height:30px;border-radius:50%;object-fit:cover;flex:none}
.c2-map__to{grid-column:3;justify-self:start;background:var(--c2-ink-ui);border-color:#2B2626;color:#fff}
.c2-map__to b{font-weight:700}
.c2-map__to small{display:block;color:#0CC4A0;font:600 .72rem/1.3 var(--c2-mono);letter-spacing:.02em}
.c2-map__hub{grid-column:2;grid-row:1 / span 6;position:relative;z-index:1;display:grid;gap:.6rem;justify-items:center;text-align:center;padding:1.4rem 1rem;border-radius:24px;background:var(--c2-ink-ui);color:#fff;box-shadow:0 30px 60px -30px rgb(20 18 19/.6)}
.c2-map__hub strong{font:400 1.45rem/1.05 var(--c2-serif)}
.c2-map__hub small{font:600 .7rem/1.2 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:#9A918D}
.c2-map__dots{display:flex;gap:.35rem}
.c2-map__dots i{width:10px;height:10px;border-radius:3px}
.c2-map__lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:0;pointer-events:none}
.c2-map__lines path{fill:none;stroke-width:2;stroke-linecap:round}
.c2-map__lines .c2-mp-base{stroke:#D9D2C9}
.c2-map__lines .c2-mp-live{stroke:url(#c2mapgrad);stroke-dasharray:1;stroke-dashoffset:1}
.c2-map.is-on .c2-mp-live{animation:c2draw 1.3s cubic-bezier(.4,0,.2,1) forwards;animation-delay:calc(var(--i,0) * .12s)}
.c2-map__lines circle{fill:#0CC4A0}
.c2-map__cap{grid-column:1 / -1;margin:1rem 0 0;text-align:center;font:600 .75rem/1.4 var(--c2-mono);color:var(--ds-ink-3);letter-spacing:.04em}
@media (max-width:859px){
  .c2-map{grid-template-columns:1fr;row-gap:.6rem;max-width:520px}
  .c2-map__lines{display:none}
  .c2-map__hub{grid-column:1;grid-row:1;margin-bottom:.8rem;grid-template-columns:auto 1fr;justify-items:start;text-align:left;align-items:center;padding:1rem 1.2rem}
  .c2-map__hub .c2-map__dots{grid-column:1;grid-row:1 / span 2}
  .c2-map__row{display:grid;grid-template-columns:minmax(0,.8fr) auto minmax(0,1.2fr);align-items:center;gap:.5rem}
  .c2-map__row::after{content:"→";grid-column:2;grid-row:1;color:#0CC4A0;font-weight:700}
  .c2-map__from,.c2-map__to{grid-column:auto;justify-self:stretch;padding:.55rem .7rem;font-size:.85rem}
  .c2-map__from{grid-column:1;grid-row:1}.c2-map__to{grid-column:3;grid-row:1}
  .c2-map__from img{display:none}
}

/* roadmap illustrations on the career steps */
.c2-steps__art{height:124px;border-radius:16px;background:#fff;border:1px solid var(--ds-line);position:relative;overflow:hidden;padding:.8rem;font:600 .72rem/1.3 var(--c2-mono);color:var(--ds-ink-2)}
@media (min-width:900px){.c2-steps::before{transform-origin:0 50%;transform:scaleX(var(--prog,1));transition:transform 1.6s cubic-bezier(.4,0,.2,1)}.c2-steps.c2-anim:not(.is-on)::before{--prog:0}}
.c2-steps.c2-anim .c2-steps__dot{transition:background .4s,color .4s;transition-delay:calc(var(--i,0) * .35s + .2s)}
.c2-steps.c2-anim.is-on .c2-steps__dot{background:#0CC4A0;color:#0E0C0C}
/* 01 profile */
.c2-art-profile{display:grid;grid-template-columns:44px 1fr;gap:.35rem .7rem;align-content:start}
.c2-art-profile .av{grid-row:span 2;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#FEC853,#0CC4A0)}
.c2-art-profile .ln{height:8px;border-radius:4px;background:#ECE6DE}.c2-art-profile .ln.w{width:70%;background:#D9D2C9}
.c2-art-profile .badges{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.45rem}
.c2-art-profile .badges span{padding:.25rem .45rem;border-radius:999px;background:var(--c2-mint);color:#006E64}
/* 02 job board */
.c2-art-board{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}
.c2-art-board > div{display:grid;align-content:start;gap:.3rem;padding:.4rem;border-radius:10px;background:#F7F2EA;min-height:98px;font-size:.62rem;color:var(--ds-ink-3)}
.c2-art-board .card{height:18px;border-radius:5px;background:#fff;border:1px solid var(--ds-line)}
.c2-art-board .mover{position:absolute;left:1.2rem;top:2.3rem;width:calc((100% - 2.4rem) / 3 - .8rem);height:18px;border-radius:5px;background:#0CC4A0;box-shadow:0 6px 14px -6px rgb(0 110 100/.6)}
.c2-anim.is-on .c2-art-board .mover{animation:c2hunt 5s cubic-bezier(.6,0,.3,1) infinite 1s}
@keyframes c2hunt{0%,18%{translate:0 0;background:#0CC4A0}40%,58%{translate:calc(100% + 1.2rem) 0;background:#FEC853}80%,100%{translate:calc(200% + 2.4rem) 0;background:#F08A24}}
/* 03 offer */
.c2-art-offer{display:grid;gap:.45rem;align-content:start}
.c2-art-offer .row{display:flex;justify-content:space-between;align-items:center}
.c2-art-offer .track{height:10px;border-radius:5px;background:#ECE6DE;overflow:hidden}
.c2-art-offer .fill{height:100%;width:100%;border-radius:5px;background:linear-gradient(90deg,#FEC853,#0CC4A0);transform-origin:0 50%;transform:scaleX(.55)}
.c2-anim.is-on .c2-art-offer .fill{animation:c2neg 1.6s cubic-bezier(.3,.8,.2,1) forwards 1s}
@keyframes c2neg{to{transform:scaleX(.86)}}
.c2-art-offer .ok{justify-self:start;padding:.3rem .55rem;border-radius:999px;background:var(--c2-ink-ui);color:#fff}
.c2-art-offer .ok::before{content:"✓ ";color:#0CC4A0}
/* 04 forever */
.c2-art-loop{display:grid;place-items:center}
.c2-art-loop svg{width:100%;height:70px}
.c2-art-loop .p{fill:none;stroke:#D9D2C9;stroke-width:6;stroke-linecap:round}
.c2-art-loop .d{fill:#0CC4A0}
.c2-art-loop .tags{display:flex;gap:.3rem;flex-wrap:wrap;justify-content:center}
.c2-art-loop .tags span{padding:.22rem .45rem;border-radius:999px;background:#F7F2EA}

/* big stat counter */
.c2-stat__num{font-variant-numeric:tabular-nums}

/* scroll reveal (added by JS only to elements below the fold) */
.c2-rv{opacity:0;translate:0 26px;transition:opacity .7s ease,translate .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--rd,0s)}
.c2-rv.is-in{opacity:1;translate:0 0}

@media (prefers-reduced-motion:reduce){
  .c2-stack ul,.c2-stage .c2-toast,.c2-stage .c2-ide,.c2-live::before,.c2-typecaret{animation:none!important}
  .c2-anim .c2-seq,.c2-anim .c2-ui__pill{opacity:1;translate:none;scale:1;animation:none!important}
  .c2-anim .c2-bar{transform:none;animation:none!important}
  .c2-anim .c2-trend,.c2-map .c2-mp-live{stroke-dashoffset:0;animation:none!important}
  .c2-anim.is-on .c2-art-board .mover,.c2-anim.is-on .c2-art-offer .fill{animation:none}
  .c2-rv{opacity:1;translate:none;transition:none}
}

.c2-stack + .c2-programs__more{margin-top:1.5rem}
@media (max-width:599px){.c2-toast--offer{display:none}.c2-stage .c2-hero__photo{inset:0 0 24% 6%}.c2-hero--light .c2-hero__art.c2-stage{height:clamp(400px,112vw,470px)}}

/* ==== tint system v1 ====
   program tints: SE mint, Cyber lime, DA sky, QA peach (only on program things)
   neutral tints for everything else: mint (brand teal) + butter
   one text teal: #006E64 */
.ct2{--c2-peach:#FFE6D1;--c2-text-teal:#006E64}
.c2-phero--qa{--acc-soft:var(--c2-peach)}
.c2-quick__item:nth-child(odd){background:var(--c2-mint);border-color:#BDE9D9}
.c2-quick__item:nth-child(even){background:var(--c2-butter);border-color:#F3DFA4}
.c2-quick__item:nth-child(1)::before{content:"";display:block;width:52px;height:6px;margin-bottom:.35rem;border-radius:3px;background:linear-gradient(90deg,#0CC4A0 0 25%,#9ED11F 0 50%,#2FB8DA 0 75%,#F08A24 0)}
.c2-why__card:nth-child(odd){background:var(--c2-mint);border-color:#BDE9D9}
.c2-why__card:nth-child(even){background:var(--c2-butter);border-color:#F3DFA4}
.c2-journey:nth-child(odd){--hl:var(--c2-butter)}
.c2-journey:nth-child(even){--hl:var(--c2-mint)}
.c2-ptiles li:nth-child(odd){background:var(--acc-soft,var(--c2-mint));border-color:color-mix(in srgb,var(--acc,#0CC4A0) 35%,#fff)}
.c2-ptiles li:nth-child(even){background:var(--c2-butter);border-color:#F3DFA4}

/* ==== clean + fresh pass v1: Geist headlines, fresher neutrals, grid-paper motif, flatter cards ==== */
.ct2{--c2-cream:#F5F6F3;--c2-paper:#FAFAF8;--c2-mint:#E5F6F0;--c2-butter:#FFF4D6;--c2-sky:#E3F3F9;--c2-limet:#F0F8DA;--c2-peach:#FFEADB;--c2-sans:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--c2-serif:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--c2-accent:"DM Serif Display",Georgia,serif}
.ct2 .ds-main{font-family:var(--c2-sans)}
/* headlines: tight, confident grotesk */
.ct2 .ds-main :is(h1,h2,h3,.c2-quick__big,.c2-stat__num,.c2-float__num,.c2-why__big,.c2-map__hub strong){font-family:var(--c2-sans);font-weight:600;letter-spacing:-.035em}
.ct2 .ds-main h1{letter-spacing:-.045em;line-height:1}
.ct2 .ds-main :is(h3){letter-spacing:-.02em}
/* one warm accent: emphasized words stay in the italic serif, no hand-drawn swoosh */
.ct2 .ds-main :is(h1,h2) em{font-family:var(--c2-accent);font-weight:400;font-style:italic;letter-spacing:-.01em;background:none!important;padding-bottom:0}
.ct2 .ds-main .c2-stat__num{letter-spacing:-.06em}
/* hero: grid paper, no blob or spark */
.c2-hero--light::before{background-image:linear-gradient(rgb(20 18 19/.055) 1px,transparent 1px),linear-gradient(90deg,rgb(20 18 19/.055) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse at 72% 38%,#000 5%,transparent 68%);-webkit-mask-image:radial-gradient(ellipse at 72% 38%,#000 5%,transparent 68%)}
.c2-hero__blob,.c2-hero__spark{display:none!important}
.c2-hero--light .c2-hero__tag mark{background:none;color:var(--c2-text-teal,#006E64)}
/* flatter, crisper surfaces */
.c2-quick__item,.c2-why__card,.c2-journey,.c2-map__from,.c2-toast,.c2-steps__art,.c2-stack li{box-shadow:none!important;border-color:rgb(20 18 19/.08)!important}
.c2-quick__item{box-shadow:0 1px 0 rgb(20 18 19/.04)!important}
.c2-card{box-shadow:none}
.c2-quick__item,.c2-why__card,.c2-journey{border-radius:20px}

/* fresh pass: no faux italics, quiet FAQ group labels */
.c2-journey blockquote{font-style:normal;font-weight:500;letter-spacing:-.015em}
.ct2 .ds-main .c2-faq h3.c2-faq__group{margin:2rem 0 .75rem;font:600 .75rem/1 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-ink-3)}
.ct2 .ds-main .c2-faq h3.c2-faq__group::before{content:'// ';color:#0CC4A0}
.ct2 .ds-main .c2-faq h3.c2-faq__group:first-child,.ct2 .ds-main .c2-faq h3.c2-faq__group:first-of-type{margin-top:0}

/* ==== hero options (A stage, B mosaic, C terminal) ==== */
.c2-optlabel{background:var(--c2-night);color:#fff;padding:.9rem 0}
.c2-optlabel .ds-container{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem}
.c2-optlabel span{font:600 .75rem/1 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:#0CC4A0}
.c2-optlabel strong{font:600 1.1rem/1.2 var(--c2-sans)}
.c2-optlabel em{font-style:normal;color:#B9B1AE;font-size:.95rem}
.c2-hopt{padding-block:clamp(2.5rem,2rem + 3vw,5rem)!important}

/* shared: track list */
.c2-hb-tracks__list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.c2-hb-tracks__list li{display:flex;align-items:center;gap:.55rem;font:600 .9rem/1.2 var(--c2-sans);color:var(--ds-ink)}
.c2-hb-tracks__list li::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--c);flex:none}

/* A: product stage */
.c2-hero--light .c2-hero__art.c2-stageB{min-height:540px}
.c2-stageB .c2-ide{left:10%;right:0;top:14%;bottom:auto;width:auto}
.c2-ide--lg pre{font-size:.9rem;min-height:14.5em}
.c2-hb-tracks{left:-6%;top:0;z-index:3;width:250px;padding:1rem 1.1rem;background:#fff;border:1px solid rgb(20 18 19/.08);border-radius:16px}
.c2-hb-lab{display:block;margin-bottom:.6rem;font:600 .72rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2-hb-stat{left:0;bottom:0;z-index:3;display:grid;gap:.2rem;width:220px;padding:.9rem 1.1rem;background:var(--c2-butter);border:1px solid rgb(20 18 19/.08);border-radius:16px;font-size:.82rem;line-height:1.35;color:var(--ds-ink-2)}
.c2-hb-stat b{font:600 2.2rem/1 var(--c2-sans);letter-spacing:-.04em;color:var(--ds-ink)}
.c2-stageB .c2-toast--offer{right:-3%;bottom:4%;top:auto}
@media (max-width:999px){.c2-hb-tracks{left:0}.c2-stageB .c2-ide{left:4%}}
@media (max-width:599px){.c2-hero--light .c2-hero__art.c2-stageB{min-height:0;height:auto;display:grid;gap:.75rem}
 .c2-stageB .c2-float{position:relative;inset:auto;width:auto;translate:none}
 .c2-stageB .c2-toast--offer{display:flex}.c2-stageB .c2-hb-stat{width:auto}.c2-stageB .c2-matrix{display:none}}

/* B: real grads mosaic */
.c2-hero--light .c2-hero__art.c2-mosaic-wrap{min-height:0}
.c2-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.c2-mo{position:relative;margin:0;aspect-ratio:1;border-radius:20px;overflow:hidden}
.c2-mo--ph img{width:100%;height:100%;object-fit:cover;display:block}
.c2-mo figcaption{position:absolute;left:8px;right:8px;bottom:8px;padding:.4rem .55rem;border-radius:10px;background:rgb(255 255 255/.94);font:600 .72rem/1.25 var(--c2-sans);color:var(--ds-ink)}
.c2-mo figcaption span{display:block;font:500 .64rem/1.2 var(--c2-mono);color:var(--ds-ink-3)}
.c2-mo--code,.c2-mo--num,.c2-mo--tracks{display:grid;place-content:center;justify-items:center;gap:.35rem;text-align:center;padding:.5rem}
.c2-mo small{font:600 .68rem/1.2 var(--c2-mono);letter-spacing:.04em;text-transform:uppercase}
.c2-mo--code{background:var(--c2-ink-ui);color:#0CC4A0}.c2-mo--code span{font:600 2.4rem/1 var(--c2-mono)}.c2-mo--code small{color:#B9B1AE}
.c2-mo--num{background:var(--c2-butter)}.c2-mo--num b{font:600 2.1rem/1 var(--c2-sans);letter-spacing:-.04em}.c2-mo--num small{color:var(--ds-ink-2)}
.c2-mo--tracks{background:var(--c2-mint);grid-template-columns:repeat(2,18px);gap:6px}.c2-mo--tracks i{width:18px;height:18px;border-radius:5px;background:var(--c)}.c2-mo--tracks small{grid-column:1 / -1;margin-top:.3rem;color:#006E64}
.c2-mosaic-wrap .c2-float--chip{left:auto!important;right:-2%!important;top:-3%!important}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.c2-mo{transition:transform .4s ease}.c2-mosaic:hover .c2-mo:hover{transform:translateY(-4px) rotate(-1deg)}}
@media (max-width:599px){.c2-mosaic{gap:8px}.c2-mo{border-radius:14px}.c2-mo figcaption{left:5px;right:5px;bottom:5px;padding:.3rem .4rem;font-size:.6rem}.c2-mo figcaption span{font-size:.55rem}.c2-mo--num b{font-size:1.5rem}.c2-mo--code span{font-size:1.7rem}}

/* C: centered big type + terminal */
.c2-hero--center .c2-hero__grid{grid-template-columns:minmax(0,1fr)!important;justify-items:center;text-align:center;gap:2.5rem}
.c2-hero--center .c2-hero__copy{justify-items:center;max-width:860px}
.c2-hero--center .c2-kicker,.c2-hero--center .c2-hero .c2-kicker{justify-self:center}
.c2-hero--center .c2-actions,.c2-hero--center .c2-proof{justify-content:center}
.c2-hero--center h1{font-size:clamp(2.6rem,1.4rem + 4.8vw,5.25rem)!important}
.c2-hero--center .c2-hero__lede{margin-inline:auto}
.c2-hero--center > .c2-matrix{position:absolute;inset:0;width:100%;height:100%;opacity:.8;mask-image:radial-gradient(ellipse at 50% 78%,#000 10%,transparent 65%);-webkit-mask-image:radial-gradient(ellipse at 50% 78%,#000 10%,transparent 65%)}
.c2-hero--light .c2-hero__art.c2-termwrap{min-height:0;height:auto;width:100%;max-width:880px;text-align:left}
.c2-term{width:100%;box-shadow:0 40px 80px -40px rgb(20 18 19/.55)}
.c2-term pre{font-size:clamp(.78rem,.7rem + .3vw,.95rem);min-height:10.5em}
.c2-termchips{margin-top:1.1rem}
.c2-termchips .c2-hb-tracks__list{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}
.c2-termchips li{padding:.5rem .8rem;border:1px solid rgb(20 18 19/.08);border-radius:999px;background:#fff}

/* hero options tweaks */
@media (min-width:600px){.c2-stageB .c2-ide{left:16%;right:0;top:17%}.c2-stageB .c2-ide pre{min-height:16.5em}.c2-hb-tracks{left:-4%;top:0;width:230px}.c2-hb-stat{left:2%;bottom:2%}.c2-stageB .c2-toast--offer{right:-2%;bottom:6%}}
.c2-hero--center > .c2-matrix{mask-image:linear-gradient(180deg,transparent 55%,#000 85%);-webkit-mask-image:linear-gradient(180deg,transparent 55%,#000 85%);opacity:.7}

/* hero A on phones: editor + new-role card only */
@media (max-width:599px){.c2-stageB .c2-hb-tracks,.c2-stageB .c2-hb-stat{display:none}}

/* ==== career steps in program colors (Natalie request) ==== */
.c2-steps > li:nth-child(1){--st:#0CC4A0;--st-soft:var(--c2-mint);--st-ink:#006E64}
.c2-steps > li:nth-child(2){--st:#9ED11F;--st-soft:var(--c2-limet);--st-ink:#4A6B00}
.c2-steps > li:nth-child(3){--st:#2FB8DA;--st-soft:var(--c2-sky);--st-ink:#006A85}
.c2-steps > li:nth-child(4){--st:#F08A24;--st-soft:var(--c2-peach);--st-ink:#A84B00}
.c2-steps::before{background:linear-gradient(90deg,#0CC4A0,#9ED11F 38%,#2FB8DA 64%,#F08A24)!important}
.c2-steps .c2-steps__dot,.c2-steps.c2-anim.is-on .c2-steps__dot{background:var(--st);color:#0E0C0C}
.c2-steps.c2-anim:not(.is-on) .c2-steps__dot{background:var(--c2-night);color:var(--st)}
.c2-steps h3 em{color:var(--st-ink)}
.c2-steps .c2-steps__art{border-top:3px solid var(--st)}
.c2-art-profile .av{background:linear-gradient(135deg,var(--st-soft),var(--st))}
.c2-art-profile .badges span{background:var(--st-soft);color:var(--st-ink)}
.c2-art-board > div{background:var(--st-soft)}
.c2-art-board .mover{background:var(--st)!important;box-shadow:0 6px 14px -6px var(--st)}
.c2-art-board .card{border-color:rgb(20 18 19/.06)}
.c2-art-offer .fill{background:linear-gradient(90deg,var(--st-soft),var(--st))}
.c2-art-offer .ok::before{color:var(--st)}
.c2-art-loop .d{fill:var(--st)}
.c2-art-loop .tags span{background:var(--st-soft);color:var(--st-ink)}

/* ==== DA card chart v2: smooth area chart, gridlines, last-year ghost line, live dot ==== */
.c2-ui--chart .c2-chart{position:absolute;left:.85rem;right:.85rem;bottom:.55rem}
.c2-ui--chart .c2-chart svg{position:static;display:block;width:100%;height:62px;overflow:visible}
.c2-chart__plot{position:relative}
.c2-chart__grid line{stroke:#2B2626;stroke-width:1;stroke-dasharray:3 4;vector-effect:non-scaling-stroke}
.c2-chart__ly{fill:none;stroke:#5E5654;stroke-width:1.5;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}
.c2-chart__line{fill:none;stroke:#2FB8DA;stroke-width:2.5;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 6px rgb(47 184 218/.55))}
.c2-chart__dot{position:absolute;right:-5px;top:calc(12.5% - 5px);width:10px;height:10px;border-radius:50%;background:#2FB8DA;box-shadow:0 0 0 3px rgb(47 184 218/.25)}
.c2-chart__tip{position:absolute;right:12px;top:-20px;padding:.2rem .45rem;border-radius:6px;background:#2FB8DA;color:#0E0C0C;font:700 .66rem/1 var(--c2-mono)}
.c2-chart__axis{display:flex;justify-content:space-between;margin-top:.3rem;font:500 .6rem/1 var(--c2-mono);color:#6F6764}
.c2-anim .c2-chart__plot svg{clip-path:inset(0 100% 0 0)}
.c2-anim.is-on .c2-chart__plot svg{animation:c2wipe 1.4s cubic-bezier(.4,0,.2,1) forwards .4s}
.c2-anim .c2-chart__dot,.c2-anim .c2-chart__tip{opacity:0;scale:.6}
.c2-anim.is-on .c2-chart__dot,.c2-anim.is-on .c2-chart__tip{animation:c2pop .4s cubic-bezier(.3,1.6,.5,1) forwards 1.7s}
.c2-anim.is-on .c2-chart__dot{animation:c2pop .4s cubic-bezier(.3,1.6,.5,1) forwards 1.7s,c2ping 2s ease-out infinite 2.2s}
@keyframes c2wipe{to{clip-path:inset(0 0 0 0)}}
@keyframes c2ping{0%{box-shadow:0 0 0 0 rgb(47 184 218/.55)}100%{box-shadow:0 0 0 10px rgb(47 184 218/0)}}
@media (prefers-reduced-motion:reduce){.c2-anim .c2-chart__plot svg{clip-path:none;animation:none!important}.c2-anim .c2-chart__dot,.c2-anim .c2-chart__tip{opacity:1;scale:1;animation:none!important}}

/* ==== hierarchy pass v1: quick facts become one white stat panel; hero floats go white so the code window leads ==== */
.c2-quick__grid{gap:0;background:#fff;border:1px solid rgb(20 18 19/.09);border-radius:20px;box-shadow:0 24px 50px -36px rgb(20 18 19/.35);overflow:hidden}
.c2-quick__item,.c2-quick__item:nth-child(odd),.c2-quick__item:nth-child(even){background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:1.4rem 1.5rem 1.5rem}
.c2-quick__item + .c2-quick__item{border-left:1px solid rgb(20 18 19/.08)!important}
.ct2 .ds-main .c2-quick__big{font-size:clamp(1.9rem,1.5rem + 1vw,2.4rem)}
.c2-quick__item p{font-size:.9rem;color:var(--ds-ink-2)}
@media (max-width:999px){.c2-quick__item:nth-child(3){border-left:0!important}.c2-quick__item:nth-child(n+3){border-top:1px solid rgb(20 18 19/.08)!important}}
.c2-hb-stat,.c2-stageB .c2-toast--offer{background:#fff!important;border-color:rgb(20 18 19/.09)!important;box-shadow:0 20px 40px -24px rgb(20 18 19/.35)!important}
.c2-hb-stat b{color:var(--ds-ink)}
.c2-stageB .c2-toast--offer .c2-toast__tag{color:#006E64}

.ct2 .ds-main .c2-quick__big{white-space:nowrap}
@media (max-width:599px){.ct2 .ds-main .c2-quick__big{font-size:1.6rem}.c2-quick__item,.c2-quick__item:nth-child(odd),.c2-quick__item:nth-child(even){padding:1.1rem 1rem 1.2rem}}

/* ==== course color pass v1: small doses of teal / lime / sky / orange across the page ==== */
.ct2{--k-se:#0CC4A0;--k-cs:#9ED11F;--k-da:#2FB8DA;--k-qa:#F08A24}

/* hero illustration cards: colored accent edge + color details */
.c2-stageB .c2-hb-stat{box-shadow:inset 4px 0 0 var(--k-cs),0 20px 40px -24px rgb(20 18 19/.35)!important}
.c2-hb-stat b{display:inline-flex;align-items:center;gap:.45rem}
.c2-hb-stat b::after{content:"↑";display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:var(--k-cs);color:#0E0C0C;font:700 .85rem/1 var(--c2-sans);letter-spacing:0}
.c2-stageB .c2-toast--offer{box-shadow:inset 4px 0 0 var(--k-se),0 20px 40px -24px rgb(20 18 19/.35)!important}
.c2-stageB .c2-toast--offer img{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--k-se)}
.c2-stageB .c2-toast--offer .c2-toast__tag{padding:.2rem .45rem;border-radius:999px;background:var(--c2-mint);color:#006E64!important}
.c2-hb-tracks{position:absolute;overflow:hidden}
.c2-hb-tracks::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--k-se) 0 25%,var(--k-cs) 0 50%,var(--k-da) 0 75%,var(--k-qa) 0)}

/* quick facts: one small colored tick per fact */
.c2-quick__item:nth-child(n+2)::before{content:"";display:block;width:52px;height:6px;margin-bottom:.35rem;border-radius:3px}
.c2-quick__item:nth-child(2)::before{background:var(--k-se)}
.c2-quick__item:nth-child(3)::before{background:var(--k-da)}
.c2-quick__item:nth-child(4)::before{background:var(--k-qa)}

/* section kicker dots rotate through the course colors */
.c2-sec:has(.c2-why) .c2-kicker::before{background:var(--k-cs)}
.c2-sec:has(.c2-journeys) .c2-kicker::before{background:var(--k-da)}
.c2-sec:has(.c2-steps) .c2-kicker::before{background:var(--k-qa)}
.c2-enroll .c2-kicker::before{background:var(--k-cs)}
.c2-sec:has(.c2-faq) .c2-kicker::before{background:var(--k-da)}

/* why cards: white, colored icon tile + slim top edge */
.c2-why__card,.c2-why__card:nth-child(odd),.c2-why__card:nth-child(even){background:#fff!important;border-color:rgb(20 18 19/.09)!important}
.c2-why__card:nth-child(1){--wc:var(--k-se)}.c2-why__card:nth-child(2){--wc:var(--k-da)}.c2-why__card:nth-child(3){--wc:var(--k-qa)}
.c2-why__card::after{display:block!important;background:var(--wc)!important;height:4px!important}
.c2-why__card .c2-why__icon{background:var(--wc);color:#0E0C0C}

/* student quotes: rotate quote mark + highlight through the course colors */
.c2-journey:nth-child(4n+1){--jc:var(--k-se);--hl:var(--c2-mint)}
.c2-journey:nth-child(4n+2){--jc:var(--k-cs);--hl:var(--c2-limet)}
.c2-journey:nth-child(4n+3){--jc:var(--k-da);--hl:var(--c2-sky)}
.c2-journey:nth-child(4n+4){--jc:var(--k-qa);--hl:var(--c2-peach)}
.c2-journey blockquote::before{color:var(--jc)}

/* career map: company line in a different course color per row (on dark) */
.c2-map__row:nth-child(4n+3) .c2-map__to small{color:var(--k-se)}
.c2-map__row:nth-child(4n+4) .c2-map__to small{color:var(--k-cs)}
.c2-map__row:nth-child(4n+5) .c2-map__to small{color:var(--k-da)}
.c2-map__row:nth-child(4n+6) .c2-map__to small{color:var(--k-qa)}

/* enroll steps: numbered chips in the course colors */
.c2-enroll .c2-enroll__list li:nth-child(1)::before{background:var(--k-se);color:#0E0C0C}
.c2-enroll .c2-enroll__list li:nth-child(2)::before{background:var(--k-cs);color:#0E0C0C}
.c2-enroll .c2-enroll__list li:nth-child(3)::before{background:var(--k-da);color:#0E0C0C}
.c2-enroll .c2-enroll__list li:nth-child(4)::before{background:var(--k-qa);color:#0E0C0C}

/* FAQ group labels: // in a different color per group */
.ct2 .ds-main .c2-faq h3.c2-faq__group:nth-of-type(4n+1)::before{color:var(--k-se)}
.ct2 .ds-main .c2-faq h3.c2-faq__group:nth-of-type(4n+2)::before{color:#6E9412}
.ct2 .ds-main .c2-faq h3.c2-faq__group:nth-of-type(4n+3)::before{color:var(--k-da)}
.ct2 .ds-main .c2-faq h3.c2-faq__group:nth-of-type(4n+4)::before{color:var(--k-qa)}

/* ==== soft color pass v1: light tints (program-card recipe) instead of solid fills ====
   recipe: fade  = color-mix(acc 22%, #fff) -> #fff
           chip  = bg color-mix(acc 14%), border color-mix(acc 35%), text dark shade
   solid course colors stay only on tiny marks (dots, lines, glyphs) */
.ct2{--k-se-ink:#006E64;--k-cs-ink:#4A6B00;--k-da-ink:#006A85;--k-qa-ink:#A84B00}

/* hero cards */
.c2-stageB .c2-hb-stat{--acc:var(--k-cs);--acc-ink:var(--k-cs-ink)}
.c2-stageB .c2-toast--offer{--acc:var(--k-se);--acc-ink:var(--k-se-ink)}
.c2-stageB .c2-hb-stat,.c2-stageB .c2-toast--offer{background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 22%,#fff),#fff 85%)!important;border:1px solid color-mix(in srgb,var(--acc) 35%,#fff)!important;box-shadow:0 20px 40px -24px rgb(20 18 19/.35)!important}
.c2-hb-stat b::after{background:color-mix(in srgb,var(--acc) 22%,#fff);border:1px solid color-mix(in srgb,var(--acc) 50%,#fff);color:var(--acc-ink)}
.c2-stageB .c2-toast--offer img{box-shadow:0 0 0 2px #fff,0 0 0 4px color-mix(in srgb,var(--acc) 50%,#fff)}
.c2-stageB .c2-toast--offer .c2-toast__tag{background:color-mix(in srgb,var(--acc) 14%,#fff);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);color:var(--acc-ink)!important}
.c2-hb-tracks::before{display:none}
.c2-hb-tracks__list{gap:.35rem}
.c2-hb-tracks .c2-hb-tracks__list li{padding:.35rem .55rem;border-radius:8px;background:color-mix(in srgb,var(--c) 14%,#fff);border:1px solid color-mix(in srgb,var(--c) 35%,#fff)}

/* quick facts: each column fades from its tint */
.c2-quick .c2-quick__item:nth-child(1){--acc:var(--k-se)}
.c2-quick .c2-quick__item:nth-child(2){--acc:var(--k-cs)}
.c2-quick .c2-quick__item:nth-child(3){--acc:var(--k-da)}
.c2-quick .c2-quick__item:nth-child(4){--acc:var(--k-qa)}
.c2-quick .c2-quick__item:nth-child(n){background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 18%,#fff),#fff 80%)!important}
.c2-quick__item:nth-child(n+2)::before{display:none}

/* why cards: program-card fade + soft icon tile */
.c2-why__card:nth-child(1){--wc-ink:var(--k-se-ink)}.c2-why__card:nth-child(2){--wc-ink:var(--k-da-ink)}.c2-why__card:nth-child(3){--wc-ink:var(--k-qa-ink)}
.c2-why .c2-why__card:nth-child(n){background:linear-gradient(180deg,color-mix(in srgb,var(--wc) 20%,#fff),#fff 55%)!important;border-color:color-mix(in srgb,var(--wc) 30%,#fff)!important}
.c2-why__card::after{display:none!important}
.c2-why__card .c2-why__icon{background:color-mix(in srgb,var(--wc) 22%,#fff);border:1px solid color-mix(in srgb,var(--wc) 50%,#fff);color:var(--wc-ink)}

/* career steps: soft number circles, softer track */
.c2-steps > li:nth-child(1){--st-ink:var(--k-se-ink)}.c2-steps > li:nth-child(2){--st-ink:var(--k-cs-ink)}.c2-steps > li:nth-child(3){--st-ink:var(--k-da-ink)}.c2-steps > li:nth-child(4){--st-ink:var(--k-qa-ink)}
.c2-steps .c2-steps__dot,.c2-steps.c2-anim .c2-steps__dot,.c2-steps.c2-anim.is-on .c2-steps__dot,.c2-steps.c2-anim:not(.is-on) .c2-steps__dot{background:color-mix(in srgb,var(--st) 22%,#fff);color:var(--st-ink);border:2px solid color-mix(in srgb,var(--st) 55%,#fff)}
.c2-steps::before{background:linear-gradient(90deg,color-mix(in srgb,#0CC4A0 50%,#fff),color-mix(in srgb,#9ED11F 50%,#fff) 38%,color-mix(in srgb,#2FB8DA 50%,#fff) 64%,color-mix(in srgb,#F08A24 50%,#fff))!important}
.c2-steps .c2-steps__art{border-top:1px solid color-mix(in srgb,var(--st) 35%,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--st) 10%,#fff),#fff 70%)}

/* enroll steps: soft chips */
.c2-enroll .c2-enroll__list li:nth-child(1){--acc:var(--k-se);--acc-ink:var(--k-se-ink)}
.c2-enroll .c2-enroll__list li:nth-child(2){--acc:var(--k-cs);--acc-ink:var(--k-cs-ink)}
.c2-enroll .c2-enroll__list li:nth-child(3){--acc:var(--k-da);--acc-ink:var(--k-da-ink)}
.c2-enroll .c2-enroll__list li:nth-child(4){--acc:var(--k-qa);--acc-ink:var(--k-qa-ink)}
.c2-enroll .c2-enroll__list li:nth-child(n)::before{background:color-mix(in srgb,var(--acc) 22%,#fff);border:1px solid color-mix(in srgb,var(--acc) 50%,#fff);color:var(--acc-ink)}

@media (min-width:600px){.c2-stageB .c2-hb-tracks{width:268px}}
.c2-hb-tracks .c2-hb-tracks__list li{white-space:nowrap}

/* ==== awards first (overlaps hero), quick facts panel below; hero stage relaid so the code window stays readable ==== */
.c2-awards{position:relative;z-index:2;margin-top:calc(-1 * clamp(4.5rem,4rem + 2vw,5.5rem))!important}
.c2-awards + .c2-quick{margin-top:clamp(1rem,.8rem + .6vw,1.5rem)!important}
@media (min-width:600px){
 .c2-stageB .c2-hb-tracks{left:auto;right:-3%;top:-2%}
 .c2-stageB .c2-ide{left:-4%;right:12%;top:26%}
 .c2-stageB .c2-ide pre{min-height:0}
 .c2-stageB .c2-hb-stat{left:6%;bottom:0}
 .c2-stageB .c2-toast--offer{right:-3%;bottom:3%}
}

/* ==== AI pass v1: AI badge, AI bullet on program cards, "built around AI" section ==== */
.c2-aibadge{display:inline-grid;place-items:center;flex:none;min-width:1.9rem;height:1.35rem;padding:0 .35rem;border-radius:6px;background:color-mix(in srgb,var(--acc,#0CC4A0) 20%,#fff);border:1px solid color-mix(in srgb,var(--acc,#0CC4A0) 50%,#fff);color:var(--acc-ink,#006E64);font:700 .68rem/1 var(--c2-mono);letter-spacing:.04em}
.c2-card--se{--acc-ink:#006E64}.c2-card--cs{--acc-ink:#4A6B00}.c2-card--da{--acc-ink:#006A85}.c2-card--qa{--acc-ink:#A84B00}
.c2-card .c2-card__list li.c2-card__ai{display:flex;align-items:flex-start;gap:.55rem;font-weight:600;color:var(--ds-ink)}
.c2-card .c2-card__list li.c2-card__ai::before{display:none}
.c2-card .c2-card__list li.c2-card__ai .c2-aibadge{margin-top:.1rem}

.c2-ai{display:grid;gap:1.25rem;max-width:1120px;margin:0 auto}
@media (min-width:700px){.c2-ai{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2-ai{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2-ai__card{display:flex;flex-direction:column;gap:.8rem;padding:1.5rem 1.35rem 1.4rem;border-radius:22px;border:1px solid color-mix(in srgb,var(--acc) 30%,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 20%,#fff),#fff 55%)}
.c2-ai__card header{display:flex;align-items:center;gap:.6rem}
.ct2 .ds-main .c2-ai__card h3{margin:0;font:600 1.15rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2-ai__card > p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.5}
.c2-ai__label{margin-top:.2rem;font:600 .68rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2-ai__card ul{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.c2-ai__card li{display:grid;gap:.2rem;padding:.65rem .8rem;border-radius:12px;background:#fff;border:1px solid color-mix(in srgb,var(--acc) 25%,#fff);font:600 .9rem/1.3 var(--c2-sans);color:var(--ds-ink)}
.c2-ai__card li span{font:600 .66rem/1 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--acc-ink)}
.c2-ai__card li span::before{content:"✦ ";color:var(--acc)}
.c2-sec:has(.c2-ai) .c2-kicker::before{background:#9ED11F}
@media (max-width:699px){.c2-ai{grid-auto-flow:column;grid-auto-columns:min(86%,340px);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--ds-gutter));padding:0 var(--ds-gutter) 1rem;scroll-padding-inline:var(--ds-gutter);scrollbar-width:none}.c2-ai::-webkit-scrollbar{display:none}.c2-ai__card{scroll-snap-align:start}}

.c2-card .c2-card__list li.c2-card__ai{padding-left:0!important;margin-left:0}

/* ==== what students build + comparison v1 ==== */
.c2-build{display:grid;gap:1.25rem}
@media (min-width:700px){.c2-build{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2-build{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2-build__card{display:flex;flex-direction:column;gap:.9rem;min-width:0;padding:.7rem .7rem 1.2rem;border-radius:22px;border:1px solid color-mix(in srgb,var(--acc) 30%,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 20%,#fff),#fff 62%)}
.c2-build__card .ds-video__play{border-radius:14px;box-shadow:0 10px 24px -14px rgba(20,18,19,.45)}
.c2-build__card .ds-video__play::after{width:52px;height:52px;margin:-26px 0 0 -26px;background-size:24px}
.c2-build__card iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:14px;display:block}
.c2-build__body{display:grid;gap:.45rem;padding:0 .55rem}
.c2-build__tag{font:600 .66rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--acc-ink)}
.ct2 .ds-main .c2-build__card h3{margin:0;font:600 1.2rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2-build__body > p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.45}
.c2-build__team{display:flex;flex-wrap:wrap;gap:.35rem;margin:.35rem 0 0;padding:0;list-style:none}
.c2-build__team li{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .55rem;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,var(--ds-ink) 10%,#fff);font:600 .68rem/1 var(--c2-mono);color:var(--ds-ink-2)}
.c2-build__team li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c)}
.c2-build__foot{margin:2rem 0 0;text-align:center}
.c2-buildsec .c2-kicker::before{background:#2FB8DA}
@media (max-width:699px){.c2-build{grid-auto-flow:column;grid-auto-columns:min(86%,340px);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--ds-gutter));padding:0 var(--ds-gutter) 1rem;scroll-padding-inline:var(--ds-gutter);scrollbar-width:none}.c2-build::-webkit-scrollbar{display:none}.c2-build__card{scroll-snap-align:start}}

.c2-compare{max-width:1040px;margin:0 auto;padding:.5rem;border-radius:24px;background:#fff;border:1px solid color-mix(in srgb,var(--ds-ink) 10%,#fff);box-shadow:0 24px 48px -32px rgba(20,18,19,.35)}
.c2-compare table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:.95rem}
.c2-compare th,.c2-compare td{padding:1rem 1.1rem;text-align:left;vertical-align:middle;border-bottom:1px solid color-mix(in srgb,var(--ds-ink) 8%,#fff);color:var(--ds-ink-2);line-height:1.35}
.c2-compare tbody tr:last-child > *{border-bottom:0}
.c2-compare thead th{font:600 .72rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ds-ink-3);padding-top:1.1rem;padding-bottom:1.1rem}
.c2-compare tbody th{font:600 .72rem/1.3 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ds-ink-3);width:26%}
.c2-compare thead td{width:26%}
.c2-compare .c2-compare__ct{background:color-mix(in srgb,#0CC4A0 12%,#fff);color:var(--ds-ink);font-weight:600;border-bottom-color:color-mix(in srgb,#0CC4A0 22%,#fff)}
.c2-compare thead .c2-compare__ct{border-radius:16px 16px 0 0;color:var(--ds-ink)}
.c2-compare tbody tr:last-child .c2-compare__ct{border-radius:0 0 16px 16px}
.c2-compare td.c2-compare__ct{display:table-cell}
.c2-compare td.c2-compare__ct > *{vertical-align:middle}
.c2-compare__ic{width:18px;height:18px;margin-right:.5rem;flex:none;color:#006E64;display:inline-block}
.c2-compare__badge{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .65rem;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,#0CC4A0 40%,#fff);color:#006E64;font:700 .72rem/1 var(--c2-mono);letter-spacing:.05em}
.c2-compare__badge::before{content:"";width:7px;height:7px;border-radius:50%;background:#0CC4A0}
.c2-compare sup{font-size:.7em;line-height:0}
.c2-compare__foot{display:grid;gap:1.5rem;max-width:1040px;margin:1.5rem auto 0;align-items:center}
@media (min-width:900px){.c2-compare__foot{grid-template-columns:1fr auto;gap:2.5rem}}
.c2-compare__note{margin:0;font-size:.8rem;line-height:1.5;color:var(--ds-ink-3)}
.c2-compare__note a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.c2-compare__cta{display:flex;flex-wrap:wrap;gap:.75rem}
.c2-comparesec .c2-kicker::before{background:#F08A24}
@media (max-width:760px){
 .c2-compare{padding:.35rem}
 .c2-compare table,.c2-compare tbody,.c2-compare tr,.c2-compare th,.c2-compare td{display:block;width:auto}
 .c2-compare thead{display:none}
 .c2-compare tbody tr{padding:1rem .85rem;border-bottom:1px solid color-mix(in srgb,var(--ds-ink) 8%,#fff)}
 .c2-compare tbody tr:last-child{border-bottom:0}
 .c2-compare tbody th,.c2-compare tbody td{padding:0;border:0;width:auto}
 .c2-compare tbody th{margin-bottom:.6rem}
 .c2-compare tbody td.c2-compare__ct{display:flex;align-items:center;padding:.6rem .75rem;border-radius:12px!important;margin-bottom:.5rem}
 .c2-compare tbody td:not(.c2-compare__ct){display:flex;gap:.5rem;font-size:.88rem;padding:.2rem .75rem}
 .c2-compare tbody td:not(.c2-compare__ct)::before{content:attr(data-label) ":";flex:none;min-width:8.2rem;font:600 .68rem/1.6 var(--c2-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ds-ink-3)}
}
/* build+compare tweaks */
.c2-build__card .ds-video__play::after{left:auto;top:auto;right:12px;bottom:12px;margin:0;width:46px;height:46px;background-size:22px}
.c2-compare td.c2-compare__ct{padding-left:2.6rem;position:relative}
.c2-compare td.c2-compare__ct .c2-compare__ic{position:absolute;left:1.1rem;top:50%;margin:-9px 0 0}
.c2-compare tbody th{color:var(--ds-ink-2)}
@media (max-width:760px){.c2-compare tbody td.c2-compare__ct{padding-left:2.4rem}.c2-compare td.c2-compare__ct .c2-compare__ic{left:.75rem}}

/* ==== pricing v1 (tuition & payment + tuition protection strip) ==== */
.c2-price{display:grid;gap:1.25rem;max-width:1040px;margin:0 auto}
@media (min-width:860px){.c2-price{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2-price__card{display:flex;flex-direction:column;gap:.55rem;padding:1.6rem 1.5rem 1.5rem;border-radius:22px;border:1px solid color-mix(in srgb,var(--acc) 32%,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 20%,#fff),#fff 58%)}
.c2-price__tag{align-self:flex-start;padding:.38rem .6rem;border-radius:999px;background:color-mix(in srgb,var(--acc) 14%,#fff);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);color:var(--acc-ink);font:700 .66rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase}
.ct2 .ds-main .c2-price__card h3{margin:.35rem 0 0;font:600 1.15rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2-price__amt{display:flex;align-items:baseline;flex-wrap:wrap;gap:.1rem .55rem;margin:.1rem 0 0}
.c2-price__amt s{order:3;flex-basis:100%;font:500 .85rem/1 var(--c2-mono);color:var(--ds-ink-3)}
.c2-price__amt b{font:600 clamp(2.3rem,4vw,2.9rem)/1 var(--c2-sans);letter-spacing:-.04em;color:var(--ds-ink)}
.c2-price__amt small{font:500 1rem var(--c2-sans);color:var(--ds-ink-2)}
.c2-price__note{margin:.2rem 0 .3rem;font-weight:600;color:var(--acc-ink);font-size:.95rem}
.c2-price__card ul{display:grid;gap:.55rem;margin:.3rem 0 0;padding:1rem 0 0;list-style:none;border-top:1px solid color-mix(in srgb,var(--acc) 25%,#fff)}
.c2-price__card li{display:flex;align-items:center;gap:.55rem;color:var(--ds-ink-2);font-size:.95rem}
.c2-price__card li svg{width:17px;height:17px;flex:none;color:var(--acc-ink)}
.c2-protect{display:grid;gap:1rem;align-items:center;max-width:1040px;margin:1.25rem auto 0;padding:1.4rem 1.5rem;border-radius:22px;background:#fff;border:1px solid color-mix(in srgb,var(--ds-ink) 10%,#fff)}
@media (min-width:860px){.c2-protect{grid-template-columns:auto 1fr auto;gap:1.5rem}}
.c2-protect__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:color-mix(in srgb,#0CC4A0 14%,#fff);border:1px solid color-mix(in srgb,#0CC4A0 35%,#fff);color:#006E64}
.c2-protect__icon svg{width:26px;height:26px}
.ct2 .ds-main .c2-protect h3{margin:0 0 .3rem;font:600 1.1rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2-protect p{margin:0;color:var(--ds-ink-2);font-size:.92rem;line-height:1.5}
.c2-protect__cta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.1rem}
.c2-protect__link{color:var(--ds-ink-2);font-size:.9rem;text-decoration:underline;text-underline-offset:2px}
.c2-pricesec .c2-kicker::before{background:#0CC4A0}

/* ==== program pages v3 (fresh look): c2p-* ==== */
.c2p-lab{display:block;font:600 .68rem/1.2 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ds-ink-3)}
/* hero */
.c2p-hero{position:relative;overflow:hidden;padding:clamp(2.5rem,2rem + 3vw,5rem) 0 clamp(2.5rem,2rem + 2vw,4rem);background:#F7F6F2;background-image:linear-gradient(rgb(20 18 19/.045) 1px,transparent 1px),linear-gradient(90deg,rgb(20 18 19/.045) 1px,transparent 1px);background-size:32px 32px}
.c2p-hero::after{content:"";position:absolute;right:-10%;top:-20%;width:60%;height:120%;background:radial-gradient(closest-side,color-mix(in srgb,var(--acc) 22%,transparent),transparent);pointer-events:none}
.c2p-hero__grid{position:relative;z-index:1;display:grid;gap:clamp(2rem,1.5rem + 2vw,3.5rem);align-items:center}
@media (min-width:1000px){.c2p-hero__grid{grid-template-columns:minmax(0,1.02fr) minmax(0,1fr)}}
.c2p-hero__copy{display:grid;gap:1.1rem;justify-items:start}
.c2p-back{font:500 .8rem/1 var(--c2-mono);color:var(--ds-ink-2);text-decoration:none}
.c2p-back:hover{color:var(--acc-ink)}
.c2p-hero .c2-kicker{background:#fff}
.c2p-hero .c2-kicker .c2-prompt{color:var(--acc-ink)}
.ct2 .ds-main .c2p-hero h1{margin:0;font-size:clamp(2.6rem,1.6rem + 3.6vw,4.6rem);line-height:.98;letter-spacing:-.045em}
.ct2 .ds-main .c2p-hero h1 em{color:var(--acc-ink)}
.c2p-hero__lede{margin:0;max-width:36rem;font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.55;color:var(--ds-ink-2)}
.c2p-hero .c2-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.c2p-hero__sub{margin:0;font-size:.9rem;color:var(--ds-ink-2)}
.c2p-hero__sub a{color:var(--ds-ink);text-decoration:underline;text-underline-offset:2px}
.c2p-stars{color:#E3A600;letter-spacing:.06em}
.c2p-dot{margin:0 .35rem;color:var(--ds-ink-3)}
.c2p-stage{position:relative;display:grid;gap:.9rem;min-width:0}
.c2p-stage > .c2-matrix{position:absolute;inset:-12% -8%;width:116%;height:124%;opacity:.55;pointer-events:none;mask-image:radial-gradient(ellipse at 60% 50%,#000 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 60% 50%,#000 20%,transparent 70%)}
.c2p-stage .c2p-ide{position:relative;inset:auto;left:auto;right:auto;top:auto;bottom:auto;width:auto;z-index:1;font-size:.8rem}
.c2p-stage .c2p-ide pre{min-height:0;font-size:clamp(.74rem,.7rem + .2vw,.86rem)}
.c2p-float{position:relative;z-index:2;padding:.9rem 1rem;border-radius:16px;background:#fff;border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);box-shadow:0 20px 40px -24px rgb(20 18 19/.35)}
.c2p-float--tools ul{display:flex;flex-wrap:wrap;gap:.35rem;margin:.55rem 0 0;padding:0;list-style:none}
.c2p-float--tools li{padding:.32rem .55rem;border-radius:8px;background:color-mix(in srgb,var(--acc) 14%,#fff);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);color:var(--acc-ink);font:600 .75rem/1 var(--c2-mono)}
.c2p-float--toast{display:grid;gap:.2rem;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 20%,#fff),#fff 85%)}
.c2p-float--toast .c2p-tag{justify-self:start;padding:.22rem .5rem;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,var(--acc) 40%,#fff);color:var(--acc-ink);font:700 .66rem/1 var(--c2-mono);letter-spacing:.04em;text-transform:uppercase}
.c2p-float--toast b{font:600 1rem/1.25 var(--c2-sans);color:var(--ds-ink)}
.c2p-float--toast > span:last-child{font:500 .75rem/1.3 var(--c2-mono);color:var(--ds-ink-2)}
@media (min-width:600px){
 .c2p-stage{display:block;padding:3.2rem 0 4.2rem}
 .c2p-stage .c2p-ide{margin-right:9%}
 .c2p-float{position:absolute}
 .c2p-float--tools{right:0;top:0;width:min(250px,48%)}
 .c2p-float--toast{right:2%;bottom:0;width:min(290px,56%)}
}
@media (prefers-reduced-motion:no-preference){.c2p-float{animation:c2pbob 8s ease-in-out infinite}.c2p-float--toast{animation-delay:-4s}}
@keyframes c2pbob{50%{translate:0 -6px}}
/* glance + nav */
.c2p-glance{padding:0 0 clamp(1.5rem,1rem + 1vw,2.25rem);background:#F7F6F2}
.c2p-glance__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-radius:22px;background:#fff;border:1px solid rgb(20 18 19/.09);overflow:hidden}
@media (min-width:900px){.c2p-glance__grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.c2p-glance__item{padding:1.1rem 1.15rem 1.2rem;border-right:1px solid rgb(20 18 19/.07);border-bottom:1px solid rgb(20 18 19/.07)}
.c2p-glance__item:first-child{background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 18%,#fff),#fff 90%)}
.c2p-glance__item dt{font:600 .66rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2p-glance__item dd{margin:.5rem 0 0;display:grid;gap:.2rem;font:600 1.15rem/1.15 var(--c2-sans);letter-spacing:-.02em;color:var(--ds-ink)}
.c2p-glance__item dd small{font:400 .82rem/1.35 var(--c2-sans);letter-spacing:0;color:var(--ds-ink-2)}
@media (max-width:899px){.c2p-glance__item:last-child{grid-column:1/-1}}
.c2p-nav{margin-top:1rem}
.c2p-nav ul{display:flex;gap:.45rem;margin:0;padding:0 0 .25rem;list-style:none;overflow-x:auto;scrollbar-width:none}
.c2p-nav ul::-webkit-scrollbar{display:none}
@media (min-width:900px){.c2p-nav ul{justify-content:center;flex-wrap:wrap}}
.c2p-nav a{display:block;padding:.5rem .8rem;border-radius:999px;background:#fff;border:1px solid rgb(20 18 19/.1);font:500 .8rem/1 var(--c2-mono);color:var(--ds-ink-2);text-decoration:none;white-space:nowrap}
.c2p-nav a:hover{border-color:var(--acc);color:var(--acc-ink)}
.c2p-logos{background:#F7F6F2!important;padding-bottom:clamp(2.5rem,2rem + 2vw,4rem)!important}
[id="ai"],[id="curriculum"],[id="projects"],[id="career"],[id="reviews"],[id="tuition"],[id="faq"]{scroll-margin-top:90px}
/* kicker dots */
.c2p-aisec .c2-kicker::before,.c2p-cursec .c2-kicker::before,.c2p-projsec .c2-kicker::before,.c2p-ressec .c2-kicker::before,.c2p-revsec .c2-kicker::before{background:var(--acc)}
/* AI path */
.c2p-aipath{display:grid;gap:1rem;margin:0;padding:0;list-style:none;counter-reset:none}
@media (min-width:700px){.c2p-aipath{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2p-aipath{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2p-aipath li{position:relative;display:grid;align-content:start;gap:.55rem;padding:1.4rem 1.3rem;border-radius:20px;border:1px solid color-mix(in srgb,var(--acc) calc(18% + var(--s,0) * 6%),#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--acc) calc(8% + var(--s,0) * 5%),#fff),#fff 70%)}
.c2p-aipath li:nth-child(2){--s:1}.c2p-aipath li:nth-child(3){--s:2}.c2p-aipath li:nth-child(4){--s:3}
.c2p-aipath__n{font:600 .75rem/1 var(--c2-mono);color:var(--acc-ink)}
.c2p-aipath__lab{justify-self:start;padding:.3rem .55rem;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);font:600 .66rem/1 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--acc-ink)}
.ct2 .ds-main .c2p-aipath h3{margin:.2rem 0 0;font:600 1.15rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2p-aipath p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.5}
@media (min-width:1100px){.c2p-aipath li:not(:last-child)::after{content:"";position:absolute;right:-.75rem;top:2.1rem;width:.5rem;height:.5rem;border-top:2px solid var(--acc);border-right:2px solid var(--acc);rotate:45deg;opacity:.7}}
.c2p-airules{display:grid;gap:1rem;margin-top:1.25rem}
@media (min-width:900px){.c2p-airules{grid-template-columns:1fr 1.3fr;align-items:stretch}}
.c2p-quote{margin:0;padding:1.5rem 1.6rem;border-radius:20px;background:#141213;color:#F7F4F2;display:grid;align-content:center;gap:.6rem}
.c2p-quote p{margin:0;font:italic 400 clamp(1.3rem,1.1rem + .8vw,1.75rem)/1.25 var(--c2-serif,'DM Serif Display',serif);color:#fff}
.c2p-quote cite{font:500 .72rem/1 var(--c2-mono);font-style:normal;letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb,var(--acc) 70%,#fff)}
.c2p-airules__list{padding:1.4rem 1.5rem;border-radius:20px;background:#fff;border:1px solid rgb(20 18 19/.09)}
.c2p-airules__list ul{display:flex;flex-wrap:wrap;gap:.45rem;margin:.75rem 0 0;padding:0;list-style:none}
.c2p-airules__list li{padding:.45rem .7rem;border-radius:10px;background:#F7F6F2;border:1px solid rgb(20 18 19/.08);font-size:.9rem;color:var(--ds-ink)}
/* curriculum */
.c2p-cur__meta{display:grid;gap:1rem;margin-bottom:1.25rem}
@media (min-width:900px){.c2p-cur__meta{grid-template-columns:1fr 1.6fr}}
.c2p-cur__meta > div{padding:1.25rem 1.3rem;border-radius:20px;background:#fff;border:1px solid rgb(20 18 19/.09)}
.c2p-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.7rem 0 0;padding:0;list-style:none}
.c2p-chips li{padding:.42rem .65rem;border-radius:999px;background:color-mix(in srgb,var(--acc) 14%,#fff);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);color:var(--acc-ink);font:600 .85rem/1 var(--c2-sans)}
.c2p-chips--tools li{border-radius:8px;background:#F7F6F2;border-color:rgb(20 18 19/.09);color:var(--ds-ink);font:500 .78rem/1 var(--c2-mono)}
.c2p-cur__hint{display:flex;align-items:center;gap:.5rem;margin:1.5rem 0 1rem;font-size:.9rem;color:var(--ds-ink-2)}
.c2p-group{margin-top:1.5rem}
.ct2 .ds-main h3.c2p-group__title{display:flex;align-items:baseline;gap:.7rem;margin:0 0 .7rem;font:600 1.2rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2p-group__title span{font:600 .68rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--acc-ink)}
.c2p-mods{display:grid;gap:.55rem}
.c2p-mod{border-radius:16px;background:#fff;border:1px solid rgb(20 18 19/.09);transition:border-color .2s}
.c2p-mod[open]{border-color:color-mix(in srgb,var(--acc) 45%,#fff);box-shadow:0 18px 36px -28px rgb(20 18 19/.35)}
.c2p-mod summary{display:flex;align-items:center;gap:.9rem;padding:1rem 1.1rem;cursor:pointer;list-style:none}
.c2p-mod summary::-webkit-details-marker{display:none}
.c2p-mod summary::after{content:"";flex:none;width:26px;height:26px;margin-left:auto;border-radius:50%;background:#F7F6F2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' stroke='%23141213' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center/13px no-repeat;transition:transform .2s}
.c2p-mod[open] summary::after{transform:rotate(45deg);background-color:color-mix(in srgb,var(--acc) 30%,#fff)}
.c2p-mod summary .c2-aibadge{flex:none}
.c2p-mod__n{flex:none;display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:12px;background:color-mix(in srgb,var(--acc) 14%,#fff);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);font:600 .85rem/1 var(--c2-mono);color:var(--acc-ink)}
.c2p-mod__t{display:grid;gap:.2rem;min-width:0}
.c2p-mod__t b{font:600 1.02rem/1.25 var(--c2-sans);color:var(--ds-ink)}
.c2p-mod__t small{font-size:.88rem;line-height:1.35;color:var(--ds-ink-2)}
.c2p-mod__body{display:grid;gap:.8rem;padding:0 1.1rem 1.15rem calc(2.6rem + 2rem)}
@media (max-width:599px){.c2p-mod__body{padding-left:1.1rem}}
.c2p-mod__ai{display:flex;align-items:flex-start;gap:.5rem;margin:0;font-weight:600;color:var(--ds-ink)}
.c2p-topics{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}
@media (min-width:700px){.c2p-topics{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}}
.c2p-topics li{position:relative;padding-left:1rem;font-size:.93rem;line-height:1.4;color:var(--ds-ink-2)}
.c2p-topics li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:2px;background:var(--acc)}
.c2p-mod__proj{margin:0;padding:.65rem .8rem;border-radius:12px;background:#F7F6F2;font-size:.92rem;color:var(--ds-ink)}
.c2p-mod__proj span{display:block;margin-bottom:.2rem;font:600 .64rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--acc-ink)}
.c2p-cap{display:grid;gap:1.25rem;margin-top:1.75rem;padding:clamp(1.4rem,1.1rem + 1.2vw,2.25rem);border-radius:24px;background:#141213;color:#F7F4F2}
@media (min-width:900px){.c2p-cap{grid-template-columns:1fr 1.25fr;align-items:start;gap:2.5rem}}
.c2p-cap .c2p-lab{color:color-mix(in srgb,var(--acc) 75%,#fff)}
.ct2 .ds-main .c2p-cap h3{margin:.5rem 0 .6rem;font:600 clamp(1.35rem,1.2rem + .6vw,1.75rem)/1.15 var(--c2-sans);letter-spacing:-.03em;color:#fff}
.c2p-cap p{margin:0;color:#C9C1BE;line-height:1.55}
.c2p-cap__items{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
@media (min-width:600px){.c2p-cap__items{grid-template-columns:repeat(2,minmax(0,1fr))}}
.c2p-cap__items li{display:flex;align-items:flex-start;gap:.5rem;padding:.6rem .75rem;border-radius:12px;background:#1F1B1C;border:1px solid #2F2A2A;font-size:.92rem;color:#EDE7E3}
.c2p-cap__items svg{flex:none;width:16px;height:16px;margin-top:.15rem;color:var(--acc)}
.c2p-cap__paths{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.c2p-cap__path{padding:.9rem 1rem;border-radius:14px;background:#1F1B1C;border:1px solid #2F2A2A}
.c2p-cap__path span{font:600 .66rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:color-mix(in srgb,var(--acc) 75%,#fff)}
.c2p-cap__path b{display:block;margin:.35rem 0 .25rem;font:600 1.02rem/1.25 var(--c2-sans);color:#fff}
.c2p-cap__path p{font-size:.9rem}
.c2p-cert{display:grid;gap:1.1rem;align-items:center;margin-top:1rem;padding:1.25rem 1.4rem;border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--acc) 22%,#fff),#fff 70%);border:1px solid color-mix(in srgb,var(--acc) 38%,#fff)}
@media (min-width:700px){.c2p-cert{grid-template-columns:130px 1fr}}
.c2p-cert img{width:130px;height:auto}
.ct2 .ds-main .c2p-cert h3{margin:.45rem 0 .35rem;font:600 1.3rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2p-cert p{margin:0;color:var(--ds-ink-2)}
.c2p-cur__cta{margin:1.75rem 0 0;text-align:center}
/* projects */
.c2p-proj{display:grid;gap:1.25rem}
@media (min-width:900px){.c2p-proj{grid-template-columns:1fr 1.15fr}}
.c2p-work{display:grid;align-content:start;gap:.7rem;padding:clamp(1.4rem,1.1rem + 1vw,2rem);border-radius:24px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 20%,#fff),#fff 65%);border:1px solid color-mix(in srgb,var(--acc) 32%,#fff)}
.c2p-work .c2p-lab{color:var(--acc-ink)}
.ct2 .ds-main .c2p-work h3{margin:0;font:600 clamp(1.35rem,1.2rem + .6vw,1.7rem)/1.15 var(--c2-sans);letter-spacing:-.03em}
.c2p-work > p{margin:0 0 .6rem;color:var(--ds-ink-2);line-height:1.55}
.c2p-flow{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}
.c2p-flow li{display:flex;align-items:center;gap:.35rem;padding:.4rem .6rem;border-radius:8px;background:#fff;border:1px solid rgb(20 18 19/.09);font:500 .78rem/1 var(--c2-mono);color:var(--ds-ink)}
.c2p-flow li:not(:last-child)::after{content:"→";margin-left:.2rem;color:var(--acc-ink)}
.c2p-port{padding:clamp(1.4rem,1.1rem + 1vw,2rem);border-radius:24px;background:#fff;border:1px solid rgb(20 18 19/.09)}
.c2p-port__list{display:grid;gap:0;margin:.8rem 0 0;padding:0;list-style:none}
.c2p-port__list li{display:grid;grid-template-columns:6.5rem 1fr;gap:.75rem;align-items:baseline;padding:.6rem 0;border-bottom:1px dashed rgb(20 18 19/.12)}
.c2p-port__list li:last-child{border-bottom:0}
.c2p-port__list span{font:500 .72rem/1.2 var(--c2-mono);letter-spacing:.03em;text-transform:uppercase;color:var(--acc-ink)}
.c2p-port__list b{font:600 .98rem/1.3 var(--c2-sans);color:var(--ds-ink)}
.c2p-port__note{margin:.9rem 0 0;font-size:.85rem;color:var(--ds-ink-3)}
/* residency */
.c2p-res{display:grid;gap:1rem;margin-top:1.25rem}
@media (min-width:860px){.c2p-res{grid-template-columns:repeat(2,minmax(0,1fr))}}
.c2p-res article{display:grid;align-content:start;gap:.7rem;padding:1.5rem;border-radius:22px;background:#fff;border:1px solid rgb(20 18 19/.09)}
.ct2 .ds-main .c2p-res h3{margin:0;font:600 1.25rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2p-res ul{display:grid;gap:.45rem;margin:0 0 .4rem;padding:0;list-style:none}
.c2p-res li{display:flex;gap:.5rem;align-items:flex-start;color:var(--ds-ink-2);font-size:.95rem}
.c2p-res li svg{flex:none;width:16px;height:16px;margin-top:.2rem;color:var(--acc-ink)}
.c2p-res .c2-btn{justify-self:start}
.c2p-ressec .c2-build__card .ds-video__play::after{left:auto;top:auto;right:12px;bottom:12px;margin:0;width:46px;height:46px;background-size:22px}
/* career (night) */
.c2p-careersec{overflow:hidden}
.c2p-careersec > .c2-matrix{position:absolute;inset:0;width:100%;height:100%;opacity:.35;pointer-events:none}
.c2p-career{position:relative;display:grid;gap:2rem}
@media (min-width:1000px){.c2p-career{grid-template-columns:.9fr 1.5fr;align-items:start;gap:3rem}}
.c2p-career__lead{display:grid;gap:1rem;justify-items:start}
.ct2 .ds-main .c2p-career h2{margin:0;color:#fff}
.ct2 .ds-main .c2p-career h2 em{color:color-mix(in srgb,var(--acc) 70%,#fff)}
.c2p-career__lead > p{margin:0;color:#C9C1BE;line-height:1.55}
.c2p-career__stat{display:flex;align-items:baseline;gap:.75rem;padding:1rem 1.2rem;border-radius:16px;background:#1F1B1C;border:1px solid #2F2A2A}
.c2p-career__stat b{font:600 2.4rem/1 var(--c2-sans);letter-spacing:-.04em;background:linear-gradient(90deg,#FEC853,var(--acc));-webkit-background-clip:text;background-clip:text;color:transparent}
.c2p-career__stat span{color:#C9C1BE;font-size:.9rem}
.c2p-career__extra{padding:.9rem 1.1rem;border-radius:14px;border:1px dashed #3A3434;color:#C9C1BE;font-size:.9rem}
.c2p-career__cols{display:grid;gap:1rem}
@media (min-width:700px){.c2p-career__cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2p-career__cols article{padding:1.3rem;border-radius:20px;background:#1B1718;border:1px solid #2F2A2A}
.ct2 .ds-main .c2p-career__cols h3{margin:0 0 .8rem;font:600 1.05rem/1.2 var(--c2-sans);color:#fff}
.c2p-career__cols ul{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.c2p-career__cols li{position:relative;padding-left:1rem;color:#C9C1BE;font-size:.92rem;line-height:1.4}
.c2p-career__cols li::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:2px;background:var(--acc)}
/* reviews */
.c2p-scores{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin:0 0 2rem;padding:0;list-style:none}
.c2p-scores li{display:grid;justify-items:center;gap:.3rem;min-width:9.5rem;padding:1rem 1.25rem;border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 16%,#fff),#fff 90%);border:1px solid color-mix(in srgb,var(--acc) 30%,#fff)}
.c2p-scores b{font:600 2rem/1 var(--c2-sans);letter-spacing:-.04em;color:var(--ds-ink)}
.c2p-scores small{font-size:.9rem;color:var(--ds-ink-3)}
.c2p-scores span{font:600 .68rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--acc-ink)}
.c2p-reviews{columns:1;column-gap:1rem}
@media (min-width:700px){.c2p-reviews{columns:2}}
@media (min-width:1100px){.c2p-reviews{columns:3}}
.c2p-review{break-inside:avoid;display:grid;gap:1rem;margin:0 0 1rem;padding:1.3rem 1.3rem 1.2rem;border-radius:20px;background:#F7F6F2;border:1px solid rgb(20 18 19/.07)}
.c2p-review blockquote{margin:0;font-size:.97rem;line-height:1.55;color:var(--ds-ink)}
.c2p-review blockquote::before{content:"“";display:block;height:1.4rem;font:400 2.6rem/1 var(--c2-serif,'DM Serif Display',serif);color:var(--acc)}
.c2p-review figcaption{display:flex;align-items:center;gap:.6rem}
.c2p-review figcaption img{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#fff}
.c2p-review figcaption b{font:600 .92rem/1 var(--c2-sans)}
.c2p-awards{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem 2.5rem;margin:1.5rem 0 2.5rem;padding:0;list-style:none}
.c2p-awards img{height:64px;width:auto}
.c2p-stories .c2-build__card{background:#fff}
.c2p-stories .c2-build__card .ds-video__play::after{left:auto;top:auto;right:12px;bottom:12px;margin:0;width:46px;height:46px;background-size:22px}
.c2p-stories .c2-build__body > h3{font-size:1.02rem!important}
/* final */
.c2p-final .c2-band small a{color:inherit;text-decoration:underline}
/* program pages v3 fixes 1 */
@media (min-width:600px){.c2p-stage{padding-bottom:6.2rem}.c2p-float--toast{bottom:.4rem}}
.ct2 .ds-main p.c2p-cur__cta{margin:2.25rem 0 0!important}
.c2p-career .c2-kicker{justify-self:start}
.c2p-work{align-content:stretch;grid-template-rows:auto auto auto 1fr auto}
.c2p-work > .c2p-lab:nth-of-type(2){align-self:end}
/* program pages v3 fixes 2 */
@media (max-width:1099px){.c2p-hero__grid{grid-template-columns:minmax(0,1fr)!important}.c2p-stage{max-width:660px;width:100%}}

/* ==== free courses + conversion pages v1: c2f-* / c2a-* ==== */
.c2f-inside{display:grid;gap:1.25rem}
@media (min-width:960px){.c2f-inside{grid-template-columns:1.25fr 1fr;align-items:start}}
.c2f-inside__list{padding:clamp(1.3rem,1.1rem + .8vw,1.8rem);border-radius:24px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 16%,#fff),#fff 55%);border:1px solid color-mix(in srgb,var(--acc) 30%,#fff)}
.c2f-inside__list .c2p-lab{color:var(--acc-ink)}
.c2f-courses{display:grid;gap:.45rem;margin:.9rem 0 0;padding:0;list-style:none}
@media (min-width:600px){.c2f-courses{grid-template-columns:repeat(2,minmax(0,1fr))}}
.c2f-courses li{display:flex;align-items:center;gap:.7rem;padding:.65rem .75rem;border-radius:12px;background:#fff;border:1px solid rgb(20 18 19/.08)}
.c2f-courses li span{flex:none;display:grid;place-items:center;width:2rem;height:2rem;border-radius:9px;background:color-mix(in srgb,var(--acc) 14%,#fff);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff);font:600 .72rem/1 var(--c2-mono);color:var(--acc-ink)}
.c2f-courses li b{font:600 .93rem/1.3 var(--c2-sans);color:var(--ds-ink)}
.c2f-inside__side{display:grid;gap:1rem}
.c2f-card{padding:1.25rem 1.3rem;border-radius:20px;background:#fff;border:1px solid rgb(20 18 19/.09)}
.c2f-card--note{background:#141213;border-color:#141213;color:#C9C1BE;font-size:.95rem;line-height:1.5}
.c2f-card--note b{color:#fff}
.c2f-points{display:grid;gap:.6rem;margin:.75rem 0 0;padding:0;list-style:none}
.c2f-points li{display:flex;gap:.55rem;align-items:flex-start;font-size:.93rem;line-height:1.45;color:var(--ds-ink-2)}
.c2f-points li svg{flex:none;width:16px;height:16px;margin-top:.2rem;color:var(--acc-ink)}
.c2f-points b{color:var(--ds-ink)}
.c2f-who{display:grid;gap:1rem}
@media (min-width:700px){.c2f-who{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2f-who{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2f-who article{padding:1.4rem 1.3rem;border-radius:20px;background:#fff;border:1px solid rgb(20 18 19/.08)}
.c2f-who article:nth-child(4n+1){--k:#0CC4A0}.c2f-who article:nth-child(4n+2){--k:#9ED11F}.c2f-who article:nth-child(4n+3){--k:#2FB8DA}.c2f-who article:nth-child(4n+4){--k:#F08A24}
.c2f-who article::before{content:"";display:block;width:34px;height:6px;margin-bottom:.9rem;border-radius:3px;background:var(--k)}
.ct2 .ds-main .c2f-who h3{margin:0 0 .45rem;font:600 1.1rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2f-who p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.5}
.c2f-statsec{overflow:hidden}
.c2f-statsec > .c2-matrix{position:absolute;inset:0;width:100%;height:100%;opacity:.35;pointer-events:none}
.c2f-statsec .ds-container{position:relative}
.c2f-statsec .c2-head h2{color:#fff}
.c2f-statsec .c2-head h2 em{color:color-mix(in srgb,var(--acc,#0CC4A0) 70%,#fff)}
.c2f-stats{display:grid;gap:1rem;margin:0;padding:0;list-style:none}
@media (min-width:800px){.c2f-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2f-stats li{display:grid;gap:.45rem;padding:1.5rem;border-radius:20px;background:#1B1718;border:1px solid #2F2A2A}
.c2f-stats b{font:600 clamp(2.4rem,2rem + 1.5vw,3.2rem)/1 var(--c2-sans);letter-spacing:-.04em;background:linear-gradient(90deg,#FEC853,var(--acc,#0CC4A0));-webkit-background-clip:text;background-clip:text;color:transparent}
.c2f-stats span{color:#EDE7E3;font-size:.95rem;line-height:1.45}
.c2f-stats small{font:500 .7rem/1.3 var(--c2-mono);letter-spacing:.03em;color:#8E8683}
.c2f-vs{display:grid;gap:1.25rem;max-width:1040px;margin:0 auto}
@media (min-width:860px){.c2f-vs{grid-template-columns:1fr 1.15fr;align-items:stretch}}
.c2f-vs article{display:grid;align-content:start;gap:.7rem;padding:clamp(1.4rem,1.1rem + 1vw,2rem);border-radius:24px}
.c2f-vs__free{background:#F7F6F2;border:1px solid rgb(20 18 19/.09)}
.c2f-vs__boot{background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 22%,#fff),#fff 70%);border:1px solid color-mix(in srgb,var(--acc) 40%,#fff);box-shadow:0 24px 48px -32px rgb(20 18 19/.35)}
.c2f-vs__boot .c2p-lab{color:var(--acc-ink)}
.ct2 .ds-main .c2f-vs h3{margin:0;font:600 1.35rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2f-vs__price{margin:0;font:600 2rem/1 var(--c2-sans);letter-spacing:-.04em;color:var(--ds-ink)}
.c2f-vs__price small{display:block;margin-top:.35rem;font:400 .9rem/1.3 var(--c2-sans);letter-spacing:0;color:var(--ds-ink-2)}
.c2f-vs ul{display:grid;gap:.5rem;margin:.4rem 0 .6rem;padding:0;list-style:none}
.c2f-vs li{display:flex;gap:.5rem;align-items:flex-start;font-size:.95rem;color:var(--ds-ink-2)}
.c2f-vs li svg{flex:none;width:16px;height:16px;margin-top:.2rem;color:var(--acc-ink)}
.c2f-vs .c2-btn{justify-self:start;align-self:end}
/* hub */
.c2f-paths{display:grid;gap:1.1rem}
@media (min-width:700px){.c2f-paths{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2f-paths{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2f-path{display:flex;flex-direction:column;gap:.65rem;padding:1.5rem 1.4rem 1.35rem;border-radius:22px;border:1px solid color-mix(in srgb,var(--acc) 32%,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 20%,#fff),#fff 60%)}
.c2f-path__tag{align-self:flex-start;padding:.35rem .6rem;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,var(--acc) 40%,#fff);font:600 .66rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--acc-ink)}
.ct2 .ds-main .c2f-path h3{margin:.2rem 0 0;font:600 1.3rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.ct2 .ds-main .c2f-path h3 a{color:var(--ds-ink);text-decoration:none}
.c2f-path > p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.5}
.c2f-path .c2p-chips{margin:.2rem 0 .4rem}
.c2f-path__link{margin-top:auto;display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--acc-ink)!important;text-decoration:none}
.c2f-path__link svg,.c2f-up__list svg{width:16px;height:16px}
.c2f-up{display:grid;gap:2rem;align-items:center}
@media (min-width:900px){.c2f-up{grid-template-columns:1.2fr 1fr;gap:3rem}}
.c2f-up > div{display:grid;gap:1rem;justify-items:start}
.ct2 .ds-main .c2f-up h2{margin:0;color:#fff}
.ct2 .ds-main .c2f-up h2 em{color:#7FE3CF}
.c2f-up p{margin:0;color:#C9C1BE;line-height:1.55}
.c2f-up__list{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.c2f-up__list a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-radius:16px;background:#1B1718;border:1px solid #2F2A2A;border-left:4px solid var(--acc);color:#fff!important;font-weight:600;text-decoration:none;transition:background .2s}
.c2f-up__list a:hover{background:#241F20}
.c2f-reviews{columns:1}
@media (min-width:700px){.c2f-reviews{columns:2}}
.c2f-hubsec .c2-kicker::before{background:#0CC4A0}
/* talk to admissions */
.c2a-talk__grid{position:relative;z-index:1;display:grid;gap:2rem;align-items:start}
@media (min-width:980px){.c2a-talk__grid{grid-template-columns:1fr 1fr;gap:3rem}}
.c2a-talk .c2f-card{width:100%;max-width:34rem}
.c2a-note{margin:.8rem 0 0;font:500 .78rem/1.3 var(--c2-mono);color:var(--ds-ink-3)}
.c2a-contact{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}
.c2a-contact li{display:flex;align-items:baseline;gap:.75rem}
.c2a-contact span{min-width:3.5rem;font:500 .72rem/1 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2a-contact a{font-weight:600;color:var(--ds-ink);text-decoration:none}
.c2a-contact a:hover{color:var(--acc-ink)}
.c2a-social{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}
.c2a-social a{display:block;padding:.4rem .7rem;border-radius:999px;background:#fff;border:1px solid rgb(20 18 19/.1);font:500 .78rem/1 var(--c2-mono);color:var(--ds-ink-2);text-decoration:none}
.c2a-social a:hover{border-color:var(--acc);color:var(--acc-ink)}
.c2a-formcard{padding:clamp(1.4rem,1.1rem + 1.2vw,2.25rem);border-radius:26px;background:#fff;border:1px solid rgb(20 18 19/.09);box-shadow:0 30px 60px -36px rgb(20 18 19/.4)}
.ct2 .ds-main .c2a-formcard h2{margin:.4rem 0 1.1rem;font-size:clamp(1.6rem,1.3rem + 1vw,2.1rem)}
@media (min-width:980px){.c2a-formcard{position:sticky;top:110px}}
/* payment */
.c2a-summary{display:grid;gap:.8rem;padding:1.5rem;border-radius:24px;background:#fff;border:1px solid rgb(20 18 19/.09);box-shadow:0 30px 60px -36px rgb(20 18 19/.4)}
.c2a-summary ul{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.c2a-summary li{display:grid;grid-template-columns:1fr auto;gap:.1rem .75rem;align-items:baseline;padding:.8rem .9rem;border-radius:14px;background:linear-gradient(90deg,color-mix(in srgb,var(--acc) 16%,#fff),#fff);border:1px solid color-mix(in srgb,var(--acc) 32%,#fff)}
.c2a-summary li span{font:600 .72rem/1 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ds-ink-2)}
.c2a-summary li b{grid-row:span 2;font:600 1.5rem/1 var(--c2-sans);letter-spacing:-.03em;color:var(--ds-ink)}
.c2a-summary li small{font-size:.82rem;color:var(--ds-ink-2)}
.c2a-summary .c2-btn{justify-self:start}
.c2a-options{max-width:900px;margin:0 auto}
.c2a-options .c2p-mod__body p{margin:0;color:var(--ds-ink-2);line-height:1.55}
.c2a-options .c2p-mod__body p.c2p-mod__proj{color:var(--ds-ink)}
.c2a-benefits{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}
@media (min-width:760px){.c2a-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
.c2a-benefits li{display:flex;gap:.7rem;align-items:flex-start;padding:1rem 1.1rem;border-radius:16px;background:#fff;border:1px solid rgb(20 18 19/.08);font-size:.95rem;line-height:1.45;color:var(--ds-ink-2)}
.c2a-benefits li svg{flex:none;width:18px;height:18px;margin-top:.1rem;color:var(--acc-ink)}
.c2a-benefits b{color:var(--ds-ink)}
.c2a-schol{display:grid;gap:1.25rem;align-items:center;margin-top:1.5rem;padding:clamp(1.4rem,1.1rem + 1vw,2rem);border-radius:24px;background:linear-gradient(135deg,#FEF3D0,color-mix(in srgb,#0CC4A0 18%,#fff));border:1px solid rgb(20 18 19/.06)}
@media (min-width:900px){.c2a-schol{grid-template-columns:1fr auto;gap:2rem}}
.ct2 .ds-main .c2a-schol h3{margin:.4rem 0 .4rem;font:600 1.4rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2a-schol p{margin:0;color:var(--ds-ink-2)}
.c2a-schol .c2-actions{display:flex;flex-wrap:wrap;gap:.6rem}
/* tuition protection */
.c2a-believe{display:grid;gap:.8rem;justify-items:start;padding:clamp(1.4rem,1.1rem + 1vw,2rem);border-radius:24px;background:#141213;color:#C9C1BE}
.c2a-believe .c2p-lab{color:#7FE3CF}
.ct2 .ds-main .c2a-believe h2{margin:0;font-size:clamp(1.5rem,1.25rem + 1vw,2rem);color:#fff}
.ct2 .ds-main .c2a-believe h2 em{color:#7FE3CF}
.c2a-believe p{margin:0;line-height:1.55}
.c2a-req{display:grid;gap:1.25rem}
@media (min-width:900px){.c2a-req{grid-template-columns:1fr 1fr}}
.c2a-req article{padding:clamp(1.4rem,1.1rem + 1vw,2rem);border-radius:24px;background:#fff;border:1px solid rgb(20 18 19/.09)}
.c2a-req article:first-child{background:linear-gradient(180deg,color-mix(in srgb,#0CC4A0 16%,#fff),#fff 60%);border-color:color-mix(in srgb,#0CC4A0 30%,#fff)}
.c2a-req article:last-child{background:linear-gradient(180deg,color-mix(in srgb,#F08A24 14%,#fff),#fff 60%);border-color:color-mix(in srgb,#F08A24 30%,#fff)}
.ct2 .ds-main .c2a-req h3{margin:.45rem 0 .6rem;font:600 1.35rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2a-req p{margin:0 0 .6rem;color:var(--ds-ink-2)}
.c2a-req ul{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.c2a-req li{display:flex;gap:.55rem;align-items:flex-start;padding:.7rem .85rem;border-radius:12px;background:#fff;border:1px solid rgb(20 18 19/.07);font-size:.95rem;color:var(--ds-ink)}
.c2a-req li svg{flex:none;width:16px;height:16px;margin-top:.2rem;color:#006E64}
/* free + conversion fixes 1 */
.c2p-hero .c2p-hero__copy > .c2-kicker{justify-self:start;margin-left:0}
.c2a-talk .c2f-points{margin-bottom:.2rem}
.ct2 .ds-main p.c2a-note{margin:1rem 0 0!important;padding-top:.75rem;border-top:1px dashed rgb(20 18 19/.12)}
.c2f-vs article{grid-template-rows:auto auto auto 1fr auto}
.c2f-vs article > ul{align-self:start}

/* ==== residency / paths / career services v1: c2m-* ==== */
@media (min-width:800px){.c2f-stats.c2m-stats2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px;margin-inline:auto}}
.c2m-gain{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:1.5rem 0 0;padding:0;list-style:none}
.c2m-gain li{display:flex;align-items:center;gap:.5rem;padding:.6rem .9rem;border-radius:999px;background:#1B1718;border:1px solid #2F2A2A;color:#EDE7E3;font-size:.92rem}
.c2m-gain svg{width:16px;height:16px;color:#7FE3CF}
.c2m-more{margin-top:1.75rem}
.c2m-more__grid{display:grid;gap:1rem;margin-top:.75rem}
@media (min-width:760px){.c2m-more__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.c2m-proj{display:grid;grid-template-columns:120px 1fr;gap:1rem;align-items:center;padding:.7rem;border-radius:18px;background:#F7F6F2;border:1px solid rgb(20 18 19/.08);color:var(--ds-ink-2)!important;text-decoration:none;font-size:.9rem;line-height:1.45;transition:border-color .2s}
.c2m-proj:hover{border-color:var(--acc)}
.c2m-proj img{width:120px;height:80px;object-fit:cover;border-radius:12px}
.c2m-proj b{display:block;margin-bottom:.2rem;color:var(--ds-ink);font:600 1rem/1.2 var(--c2-sans)}
.c2m-duo{display:grid;gap:1.25rem}
@media (min-width:900px){.c2m-duo{grid-template-columns:1fr 1fr;align-items:start}}
.ct2 .ds-main .c2m-h3,.ct2 .ds-main .c2p-port h3{margin:.45rem 0 .6rem;font:600 clamp(1.25rem,1.1rem + .5vw,1.5rem)/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2m-roles{margin-top:1rem}
.c2m-roles li{background:color-mix(in srgb,var(--acc,#E7E1DE) 14%,#fff);border-color:color-mix(in srgb,var(--acc,#B9B0AD) 35%,#fff);color:var(--ds-ink)}
.c2m-quotes{columns:1!important}
.c2m-quotes .c2p-review figcaption b{font:600 .72rem/1.2 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--acc-ink)}
.c2m-duo--intro{align-items:center}
.c2m-duo--intro > div:first-child{display:grid;gap:1rem;justify-items:start}
.ct2 .ds-main .c2m-duo--intro h2{margin:0}
.c2m-duo--intro .c2f-card p{margin:0 0 .75rem;color:var(--ds-ink-2);line-height:1.6}
.c2m-duo--intro .c2f-card p:last-child{margin:0;color:var(--ds-ink)}
/* career paths */
.c2m-chooser li{padding:0;display:block}
.c2m-chooser li a{display:grid;gap:.25rem;padding:.8rem .9rem;color:var(--ds-ink);text-decoration:none}
.c2m-chooser li a span{font:600 .68rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ds-ink-2)}
.c2m-chooser li a b{font:600 1.1rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2m-chooser__q{margin:0;font-size:.9rem;color:var(--ds-ink-2)}
.c2m-chooser__q a{color:#006E64;font-weight:600}
.c2m-tracksec{scroll-margin-top:90px}
.c2m-track{display:grid;gap:1.5rem;padding:clamp(1.4rem,1.1rem + 1.5vw,2.75rem);border-radius:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--acc) 18%,#fff),#fff 60%);border:1px solid color-mix(in srgb,var(--acc) 32%,#fff)}
@media (min-width:980px){.c2m-track{grid-template-columns:1.25fr 1fr;gap:2.5rem;align-items:start}}
.c2m-track__main{display:grid;gap:.9rem;justify-items:start}
.c2m-track__n{font:600 .7rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--acc-ink)}
.ct2 .ds-main .c2m-track h2{margin:0;font-size:clamp(2rem,1.5rem + 2vw,3rem)}
.c2m-track__lede{margin:0;font-size:1.1rem;color:var(--ds-ink);line-height:1.5}
.c2m-track__main > p{margin:0;color:var(--ds-ink-2);line-height:1.6}
.c2m-track__excel{width:100%;padding:1rem 1.1rem;border-radius:16px;background:#fff;border:1px dashed color-mix(in srgb,var(--acc) 50%,#fff)}
.c2m-track__excel p{margin:.45rem 0 0;color:var(--ds-ink)}
.c2m-track .c2-actions{display:flex;flex-wrap:wrap;gap:.6rem}
.c2m-track__side{display:grid;gap:1rem}
.c2m-track__salary{display:grid;gap:.35rem;padding:1.2rem 1.3rem;border-radius:20px;background:#141213}
.c2m-track__salary .c2p-lab{color:color-mix(in srgb,var(--acc) 70%,#fff)}
.c2m-track__salary b{font:600 2.4rem/1 var(--c2-sans);letter-spacing:-.04em;background:linear-gradient(90deg,#FEC853,var(--acc));-webkit-background-clip:text;background-clip:text;color:transparent}
.c2m-track__salary small{font:500 .72rem/1 var(--c2-mono);color:#8E8683}
/* career services */
.c2m-outcomes__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;width:100%;margin:.3rem 0 0;padding:0;list-style:none}
.c2m-outcomes__grid li{display:grid;gap:.3rem;padding:1rem;border-radius:14px;background:#1F1B1C;border:1px solid #2F2A2A}
.c2m-outcomes__grid b{font:600 2rem/1 var(--c2-sans);letter-spacing:-.04em;background:linear-gradient(90deg,#FEC853,#7FE3CF);-webkit-background-clip:text;background-clip:text;color:transparent}
.c2m-outcomes__grid span{font-size:.85rem;color:#C9C1BE}
.c2m-outcomes__link{display:inline-flex;align-items:center;gap:.4rem;color:#7FE3CF!important;font-weight:600;text-decoration:none}
.c2m-outcomes__link svg{width:16px;height:16px}
@media (min-width:1100px){.c2p-aipath.c2m-six{grid-template-columns:repeat(3,minmax(0,1fr))}.c2p-aipath.c2m-six li:not(:last-child)::after{display:none}}
.c2p-aipath.c2m-six li:nth-child(5){--s:2}.c2p-aipath.c2m-six li:nth-child(6){--s:3}
@media (min-width:700px){.c2p-career__cols.c2m-cols5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2p-career__cols.c2m-cols5{grid-template-columns:repeat(5,minmax(0,1fr))}}
.c2m-cols5{position:relative}
.c2m-darklogos{position:relative;margin-top:2.5rem;text-align:center}
.c2m-darklogos .c2p-lab{color:#8E8683}
.c2m-darklogos ul{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.25rem 2.5rem;margin:1rem 0 0;padding:0;list-style:none}
.c2m-darklogos img{height:28px;width:auto;opacity:.75}
.c2m-posts{display:grid;gap:1.1rem}
@media (min-width:860px){.c2m-posts{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2m-post{display:grid;overflow:hidden;border-radius:20px;background:#F7F6F2;border:1px solid rgb(20 18 19/.08);text-decoration:none;transition:border-color .2s,transform .2s}
.c2m-post:hover{border-color:#0CC4A0;transform:translateY(-2px)}
.c2m-post img{width:100%;aspect-ratio:1024/392;object-fit:cover}
.c2m-post span{display:grid;gap:.4rem;padding:1rem 1.1rem 1.2rem}
.c2m-post small{font:600 .66rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:#006E64}
.c2m-post b{font:600 1.05rem/1.3 var(--c2-sans);color:var(--ds-ink)}
.c2f-vs__free > p,.c2f-vs__boot > p{margin:0;color:var(--ds-ink-2);line-height:1.55}
.c2m-darklogos img{filter:brightness(0) invert(1)}

/* ==== blog v1 (posts, index, category, author, search, 404): c2b-* ==== */
.ct2 .c2b-head,.ct2 .c2b-hero{position:relative;overflow:hidden;background:#F7F6F2;background-image:linear-gradient(rgb(20 18 19/.045) 1px,transparent 1px),linear-gradient(90deg,rgb(20 18 19/.045) 1px,transparent 1px);background-size:32px 32px;border-bottom:1px solid rgb(20 18 19/.06)}
.ct2 .c2b-head::after,.ct2 .c2b-hero::after{content:"";position:absolute;right:-12%;top:-30%;width:55%;height:140%;background:radial-gradient(closest-side,color-mix(in srgb,var(--acc,#0CC4A0) 20%,transparent),transparent);pointer-events:none}
.ct2 .c2b-head__inner,.ct2 .c2b-hero > .ds-container{position:relative;z-index:1}
.ct2 .c2b-head{padding:clamp(1.5rem,1rem + 2vw,3rem) 0 clamp(1.75rem,1.2rem + 2vw,3rem)}
.ct2 .c2b-head__inner{display:grid;gap:1rem;max-width:920px}
.ct2 .c2b-crumbs{margin:0}
.ct2 .ds-main .c2b-crumbs a{color:#006E64}
.ct2 .c2b-chip{justify-self:start;padding:.4rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--acc) 16%,#fff);border:1px solid color-mix(in srgb,var(--acc) 40%,#fff);font:600 .7rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:#141213;text-decoration:none}
.ct2 .ds-main .c2b-head h1{margin:0;font-size:clamp(2rem,1.4rem + 2.6vw,3.4rem);line-height:1.05;letter-spacing:-.04em;max-width:22ch}
.ct2 .c2b-byline{margin-top:.5rem;padding-top:1.1rem;border-top:1px solid rgb(20 18 19/.1)}
.ct2 .c2b-byline .ds-share{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}
.ct2 .c2b-byline .ds-share .ds-byline__label{flex-basis:100%}
.ct2 .ds-main .c2b-byline .ds-share a{display:inline-flex;align-items:center;min-height:34px;padding:0 .7rem;border-radius:999px;background:#fff;border:1px solid rgb(20 18 19/.12);font:500 .78rem/1 var(--c2-mono);color:var(--ds-ink);text-decoration:none}
.ct2 .ds-main .c2b-byline .ds-share a:hover{border-color:var(--acc);color:#006E64}
.ct2 .c2b-media{margin-top:clamp(1.5rem,1rem + 2vw,2.5rem)}
.ct2 .c2b-media .ds-media{border-radius:24px;overflow:hidden;border:1px solid rgb(20 18 19/.08)}
.ct2 .c2b-media img{width:100%;height:auto;display:block}
.ct2 .c2b-layout{display:grid;gap:2rem;padding-block:clamp(2rem,1.5rem + 2vw,3.5rem)}
.ct2 .c2b-layout:not(.has-toc) .c2b-body{max-width:760px;margin-inline:auto;width:100%}
@media (min-width:1100px){.ct2 .c2b-layout.has-toc{grid-template-columns:270px minmax(0,760px);justify-content:center;gap:3.5rem;align-items:start}}
.ct2 .c2b-aside{display:grid;gap:1rem}
@media (min-width:1100px){.ct2 .c2b-aside{position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto;scrollbar-width:thin}}
.ct2 .c2b-toc{border-radius:18px;background:#F7F6F2;border:1px solid rgb(20 18 19/.08);padding:.2rem 1rem}
.ct2 .c2b-toc summary{display:flex;justify-content:space-between;align-items:center;padding:.8rem 0;cursor:pointer;list-style:none;font:600 .72rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ds-ink-2)}
.ct2 .c2b-toc summary::-webkit-details-marker{display:none}
.ct2 .c2b-toc summary::after{content:"+";font-size:1rem}
.ct2 .c2b-toc[open] summary::after{content:"\2212"}
.ct2 .c2b-toc ol{display:grid;gap:.1rem;margin:0 0 .8rem;padding:0;list-style:none;counter-reset:toc}
.ct2 .c2b-toc li{counter-increment:toc}
.ct2 .ds-main .c2b-toc a{display:grid;grid-template-columns:1.6rem 1fr;gap:.2rem;padding:.4rem .2rem;border-radius:8px;font-size:.88rem;line-height:1.35;color:var(--ds-ink-2);text-decoration:none}
.ct2 .ds-main .c2b-toc a::before{content:counter(toc,decimal-leading-zero);font:500 .7rem/1.6 var(--c2-mono);color:var(--ds-ink-3)}
.ct2 .ds-main .c2b-toc a:hover{background:#fff;color:#006E64}
.ct2 .c2b-asidecta{display:none}
@media (min-width:1100px){.ct2 .c2b-asidecta{display:grid;gap:.6rem;padding:1.1rem;border-radius:18px;background:#141213;color:#C9C1BE;font-size:.88rem;line-height:1.45}}
.ct2 .c2b-asidecta__lab{font:600 .68rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:#7FE3CF}
.ct2 .c2b-asidecta p{margin:0}
.ct2 .c2b-asidecta .c2-btn{justify-self:start;padding:.6rem 1rem;font-size:.85rem}
.ct2 .ds-main .c2b-asidecta__link{color:#7FE3CF;font-weight:600;text-decoration:underline;text-underline-offset:2px}
/* reading styles */
.ct2 .c2b-body{font-size:1.08rem;line-height:1.75;color:#2A2526}
.ct2 .ds-main .c2b-body h2{margin-top:2.2em;font:600 clamp(1.5rem,1.25rem + .9vw,1.95rem)/1.2 var(--c2-sans);letter-spacing:-.03em;color:var(--ds-ink);scroll-margin-top:100px}
.ct2 .ds-main .c2b-body h3{margin-top:1.8em;font:600 1.25rem/1.3 var(--c2-sans);letter-spacing:-.02em;color:var(--ds-ink)}
.ct2 .ds-main .c2b-body h1{font-size:clamp(1.6rem,1.3rem + 1vw,2.1rem)}
.ct2 .ds-main .c2b-body a{color:#006E64;text-decoration:underline;text-decoration-color:color-mix(in srgb,#0CC4A0 55%,transparent);text-underline-offset:3px;text-decoration-thickness:2px}
.ct2 .ds-main .c2b-body a:hover{text-decoration-color:#0CC4A0}
.ct2 .c2b-body ul,.ct2 .c2b-body ol{padding-left:1.3em}
.ct2 .c2b-body li::marker{color:#0CC4A0}
.ct2 .c2b-body blockquote{margin:1.8em 0;padding:1.1rem 1.3rem;border-left:0;border-radius:16px;background:color-mix(in srgb,var(--acc) 12%,#fff);border:1px solid color-mix(in srgb,var(--acc) 30%,#fff);color:var(--ds-ink);font-size:1.05rem}
.ct2 .c2b-body img{border-radius:16px}
.ct2 .c2b-body code{padding:.1em .35em;border-radius:6px;background:#F1EFEA;font:500 .9em var(--c2-mono)}
.ct2 .c2b-body pre{border-radius:16px;background:#141213}
.ct2 .c2b-body pre code{padding:0;background:none;color:inherit}
.ct2 .c2b-body table{width:100%;border-collapse:collapse;font-size:.95rem;display:block;overflow-x:auto}
.ct2 .c2b-body th,.ct2 .c2b-body td{padding:.6rem .75rem;border-bottom:1px solid rgb(20 18 19/.1);text-align:left}
.ct2 .c2b-body th{font:600 .75rem/1.2 var(--c2-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ds-ink-2);background:#F7F6F2}
.ct2 .c2b-body hr{border:0;border-top:1px dashed rgb(20 18 19/.15);margin:2.2em 0}
/* post FAQ, CTA, related */
.ct2 .c2b-narrow{max-width:820px}
.ct2 .c2b-faq{background:#F7F6F2}
.ct2 .c2b-faq .ds-faq{display:grid;gap:.5rem}
.ct2 .c2b-faq .ds-faq details{border:1px solid rgb(20 18 19/.09);border-radius:16px;background:#fff;padding:0 1.1rem}
.ct2 .ds-main .c2b-faq .ds-faq summary{font:600 1.02rem/1.35 var(--c2-sans);padding-block:1rem}
.ct2 .c2b-cta{padding:clamp(2.5rem,2rem + 2vw,4rem) 0}
.ct2 .c2b-cta__card{display:grid;gap:1.5rem;align-items:center;padding:clamp(1.5rem,1.2rem + 1.5vw,2.5rem);border-radius:28px;background:#141213;color:#C9C1BE;overflow:hidden;position:relative}
.ct2 .c2b-cta__card::before{content:"";position:absolute;inset:auto -10% -60% auto;width:60%;height:120%;background:radial-gradient(closest-side,rgb(12 196 160/.25),transparent);pointer-events:none}
@media (min-width:960px){.ct2 .c2b-cta__card{grid-template-columns:1.1fr 1fr;gap:3rem}}
.ct2 .c2b-cta__card > *{position:relative}
.ct2 .c2b-cta__lab{font:600 .7rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:#7FE3CF}
.ct2 .ds-main .c2b-cta h2{margin:.6rem 0 .6rem;color:#fff;font-size:clamp(1.7rem,1.3rem + 1.4vw,2.4rem)}
.ct2 .ds-main .c2b-cta h2 em{color:#7FE3CF}
.ct2 .c2b-cta p{margin:0;line-height:1.55}
.ct2 .c2b-cta__progs{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.ct2 .ds-main .c2b-cta__progs a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border-radius:14px;background:#1F1B1C;border:1px solid #2F2A2A;border-left:4px solid var(--c);color:#fff;font-weight:600;text-decoration:none}
.ct2 .ds-main .c2b-cta__progs a:hover{background:#262122}
.ct2 .c2b-cta__progs svg{width:16px;height:16px}
.ct2 .c2b-related{background:#F7F6F2}
/* archive views */
.ct2 .c2b-hero{padding:clamp(2rem,1.5rem + 2.5vw,4rem) 0 clamp(2rem,1.5rem + 2vw,3.25rem)}
.ct2 .c2b-hero .ds-stack{gap:1rem}
.ct2 .c2b-hero .c2-kicker{justify-self:start;background:#fff}
.ct2 .ds-main .c2b-hero h1{margin:0;font-size:clamp(2.3rem,1.6rem + 3vw,4rem);line-height:1;letter-spacing:-.045em}
.ct2 .ds-main .c2b-hero h1 em{color:#006E64}
.ct2 .c2b-hero .ds-lead{max-width:40rem;font-size:1.1rem;color:var(--ds-ink-2)}
.ct2 .c2b-hero .ds-lead p{margin:0}
.ct2 .ds-main .ds-catnav .ds-catnav__label{font:600 .7rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase}
.ct2 .ds-main .ds-catnav a.ds-chip{min-height:40px;border-radius:999px;background:#fff;border:1px solid rgb(20 18 19/.12);font:500 .85rem/1 var(--c2-sans)}
.ct2 .ds-main .ds-catnav a.ds-chip:hover{border-color:#0CC4A0;color:#006E64}
.ct2 .ds-main .ds-catnav a.ds-chip.is-current{background:#141213;border-color:#141213;color:#fff}
.ct2 .ds-main .c2b-card{display:flex;flex-direction:column;gap:.7rem;padding:.7rem .7rem 1.2rem;border-radius:22px;background:#fff;border:1px solid rgb(20 18 19/.08);box-shadow:none;transition:border-color .2s,transform .2s}
.ct2 .ds-main .c2b-card:hover{border-color:color-mix(in srgb,var(--acc) 55%,#fff);transform:translateY(-2px)}
.ct2 .c2b-card .ds-card__media{border-radius:14px;overflow:hidden;aspect-ratio:16/9;background:#F1EFEA}
.ct2 .c2b-card .ds-card__media img{width:100%;height:100%;object-fit:cover}
.ct2 .c2b-card .c2b-ph{display:grid;place-items:end start;padding:1rem;background:linear-gradient(135deg,color-mix(in srgb,var(--acc) 30%,#fff),color-mix(in srgb,var(--acc) 8%,#fff));background-image:linear-gradient(rgb(20 18 19/.05) 1px,transparent 1px),linear-gradient(90deg,rgb(20 18 19/.05) 1px,transparent 1px),linear-gradient(135deg,color-mix(in srgb,var(--acc) 30%,#fff),color-mix(in srgb,var(--acc) 8%,#fff));background-size:22px 22px,22px 22px,auto;text-decoration:none}
.ct2 .c2b-card .c2b-ph span{padding:.35rem .6rem;border-radius:999px;background:#fff;font:600 .68rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:#141213}
.ct2 .c2b-card .ds-card__meta,.ct2 .c2b-card > h2,.ct2 .c2b-card > h3,.ct2 .c2b-card .ds-postcard__excerpt{padding-inline:.5rem}
.ct2 .c2b-card .ds-card__meta{font:600 .68rem/1.2 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:#006E64}
.ct2 .ds-main .c2b-card .ds-postcard__title{margin:0;font:600 1.15rem/1.3 var(--c2-sans);letter-spacing:-.02em}
.ct2 .ds-main .c2b-card .ds-card__title-link{color:var(--ds-ink);text-decoration:none}
.ct2 .c2b-card .ds-postcard__excerpt{margin:0;color:var(--ds-ink-2);font-size:.92rem;line-height:1.5}
.ct2 .ds-main .ds-archive__row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.ct2 .ds-main .ds-archive__row h2{margin:0;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}
.ct2 .ds-main .ds-archive__row .ds-link{font:600 .8rem/1 var(--c2-mono);color:#006E64}
.ct2 .ds-main .ds-section--paper-2{background:#F7F6F2}
.ct2 .ds-main .ds-pager a,.ct2 .ds-main .ds-pager span{border-radius:999px}
.ct2 .ds-main .ds-search input{border-radius:14px}
.ct2 .ds-main .ds-search .ds-btn{border-radius:14px}
.ct2 .ds-main .ds-results li{padding:1rem 1.1rem;border-radius:16px;background:#fff;border:1px solid rgb(20 18 19/.08);margin-bottom:.5rem;list-style:none}
.ct2 .ds-main .ds-results{padding:0}
.ct2 .ds-main .ds-author__photo{border-radius:24px}
.ct2 .ds-notfound.c2b-hero{padding-block:clamp(3rem,2rem + 5vw,7rem)}
.ct2 .ds-main .ds-notfound h1{font-size:clamp(2.6rem,1.8rem + 3.5vw,4.6rem)}
.ct2 .ds-notfound .ds-eyebrow{font:600 .72rem/1 var(--c2-mono);letter-spacing:.08em;text-transform:uppercase;color:#006E64}

/* blog fixes 1 */
.ct2 .ds-main .c2b-card .ds-card__media{margin:0;width:auto;display:block}

/* ==== brand + proof pages v1 (why, stories, awards): c2w-* / c2s-* ==== */
.c2w-mission p{font-size:.98rem}
/* why: we-cards */
.c2w-wegrid{display:grid;gap:1rem}
@media (min-width:700px){.c2w-wegrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1080px){.c2w-wegrid{grid-template-columns:repeat(4,minmax(0,1fr))}.c2w-we:first-child{grid-column:span 2;grid-row:span 2}}
.c2w-we{position:relative;display:grid;align-content:start;gap:.55rem;padding:1.35rem 1.35rem 1.5rem;border-radius:20px;background:#F7F6F2;border:1px solid rgb(20 18 19/.07);transition:border-color .2s,transform .2s}
.c2w-we:hover{border-color:color-mix(in srgb,var(--acc) 50%,#fff);transform:translateY(-2px)}
.c2w-we__n{font:600 .72rem/1 var(--c2-mono);letter-spacing:.06em;color:var(--acc-ink)}
.c2w-we h3{margin:0;font:600 1.3rem/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2w-we p{margin:0;color:var(--ds-ink-2);line-height:1.55}
.c2w-we:first-child{background:linear-gradient(160deg,color-mix(in srgb,var(--acc) 22%,#fff),#fff 65%);border-color:color-mix(in srgb,var(--acc) 35%,#fff);align-content:end;min-height:14rem}
@media (min-width:1080px){.c2w-we:first-child h3{font-size:2.2rem}.c2w-we:first-child p{font-size:1.1rem;max-width:30ch}}
/* why: difference orbit */
.c2w-diff__copy{display:grid;gap:1rem;justify-items:start}
.c2w-diff__copy h2,.c2w-diff__copy p{margin:0}
.c2w-diff__list{display:grid;gap:.6rem;margin:.3rem 0 0;padding:0;list-style:none}
.c2w-diff__list li{display:flex;gap:.6rem;align-items:flex-start}
.c2w-diff__list svg{flex:none;width:20px;height:20px;margin-top:.15rem;padding:3px;border-radius:50%;background:color-mix(in srgb,var(--acc) 22%,#fff);color:var(--acc-ink)}
.c2w-orbit{position:relative;width:min(100%,440px);aspect-ratio:1;margin-inline:auto}
.c2w-orbit__ring{position:absolute;inset:14%;border-radius:50%;border:1.5px dashed rgb(20 18 19/.2);animation:c2wspin 60s linear infinite}
@keyframes c2wspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.c2w-orbit__ring{animation:none}}
.c2w-orbit__c{position:absolute;inset:36%;display:grid;place-items:center;border-radius:50%;background:#141213;color:#7FE3CF;font:600 clamp(1rem,.8rem + 1vw,1.4rem)/1 var(--c2-mono);box-shadow:0 20px 50px -20px rgb(20 18 19/.5)}
.c2w-orbit__c::before{content:"// ";color:#8A817E}
.c2w-orbit ul{margin:0;padding:0;list-style:none}
.c2w-orbit__n{position:absolute;display:grid;place-items:center;width:34%;aspect-ratio:1;padding:.5rem;border-radius:50%;text-align:center;font:600 clamp(.78rem,.7rem + .35vw,1rem)/1.2 var(--c2-sans);background:color-mix(in srgb,var(--t) 20%,#fff);border:1.5px solid color-mix(in srgb,var(--t) 55%,#fff);color:#141213}
.c2w-orbit__n--0{top:0;left:33%}
.c2w-orbit__n--1{top:33%;right:0}
.c2w-orbit__n--2{bottom:0;left:33%}
.c2w-orbit__n--3{top:33%;left:0}
.c2w-t-se{--t:#0CC4A0}.c2w-t-cs{--t:#9ED11F}.c2w-t-da{--t:#2FB8DA}.c2w-t-qa{--t:#F08A24}
/* why: values */
.c2w-vals{display:grid;gap:2rem}
.c2w-vals__g{display:grid;gap:1rem}
.c2w-vals__g h3{margin:0}
.c2w-vals__grid{display:grid;gap:1rem}
@media (min-width:700px){.c2w-vals__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.c2w-vals__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2w-val{display:grid;align-content:start;gap:.45rem;padding:1.2rem 1.25rem;border-radius:18px;background:#fff;border:1px solid rgb(20 18 19/.09);border-top:3px solid color-mix(in srgb,var(--acc) 70%,#fff)}
.c2w-vals__g--st .c2w-val{background:#F7F6F2;border-top-color:#FEC853}
.c2w-val h4{margin:0;font:600 1.1rem/1.25 var(--c2-sans)}
.c2w-val p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.55}
/* why: history log */
.c2w-log{position:relative;display:grid;gap:0;max-width:860px;margin:0 auto;padding:0;list-style:none}
.c2w-log li{position:relative;display:grid;grid-template-columns:4.5rem minmax(0,1fr);gap:1.25rem;padding:0 0 1.75rem}
.c2w-log li::before{content:"";position:absolute;left:5.35rem;top:.35rem;bottom:-.35rem;width:1.5px;background:#332D2D}
.c2w-log li:last-child::before{display:none}
.c2w-log li::after{content:"";position:absolute;left:calc(5.35rem - 5px);top:.3rem;width:12px;height:12px;border-radius:50%;background:#171414;border:2px solid #7FE3CF}
.c2w-log code{justify-self:end;padding-top:.15rem;font:600 .9rem/1 var(--c2-mono);color:#FEC853;background:none}
.c2w-log div{padding-left:1.25rem}
.c2w-log h3{margin:0 0 .35rem;color:#fff;font:600 1.15rem/1.3 var(--c2-sans)}
.c2w-log p{margin:0;color:#B9B0AD;line-height:1.55;font-size:.95rem}
.c2w-log li.is-now::after{background:#7FE3CF;box-shadow:0 0 0 6px rgb(127 227 207/.18)}
.c2w-log li.is-now code{color:#7FE3CF}
.c2w-log li.is-now div{padding:1rem 1.2rem;margin-left:1.25rem;border-radius:16px;background:#1F1B1C;border:1px solid #2F2A2A}
@media (max-width:560px){.c2w-log li{grid-template-columns:3.2rem minmax(0,1fr);gap:.9rem}.c2w-log li::before{left:4.05rem}.c2w-log li::after{left:calc(4.05rem - 5px)}.c2w-log div{padding-left:1rem}.c2w-log li.is-now div{margin-left:1rem}}
/* why: news + programs */
.c2w-newsgrid,.c2w-progs{display:grid;gap:1rem}
@media (min-width:800px){.c2w-newsgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:700px){.c2w-progs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2w-progs{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ct2 .ds-main a.c2w-news,.ct2 .ds-main a.c2w-prog{color:var(--ds-ink);text-decoration:none}
.c2w-news,.c2w-prog{display:grid;align-content:start;gap:.6rem;padding:1.3rem;border-radius:20px;background:#fff;border:1px solid rgb(20 18 19/.09);transition:border-color .2s,transform .2s}
.c2w-news:hover,.c2w-prog:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--acc) 55%,#fff)}
.c2w-news b{font:600 1.5rem/1.1 var(--c2-sans);letter-spacing:-.02em}
.c2w-news p,.c2w-prog p{margin:0;color:var(--ds-ink-2);line-height:1.55}
.c2w-news__go{display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;font-weight:600;color:var(--acc-ink)}
.c2w-news__go svg{width:16px;height:16px}
.c2w-prog{background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 16%,#fff),#fff 70%);border-color:color-mix(in srgb,var(--acc) 35%,#fff);min-height:15rem}
.c2w-prog h3{margin:0;font:600 1.3rem/1.2 var(--c2-sans)}
.c2w-awards{margin-top:1.5rem;padding:0;background:none}
/* stories */
.c2s-log{display:grid;gap:.55rem;width:100%;margin:.2rem 0 0;padding:0;list-style:none;font:500 .88rem/1.35 var(--c2-mono)}
.c2s-log li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;padding:.65rem .8rem;border-radius:12px;background:#1F1B1C;border:1px solid #2F2A2A;color:#B9B0AD}
.c2s-log b{color:#fff;font-weight:600}
.c2s-log__ok{color:#7FE3CF}
.c2s-log__arr{color:#FEC853}
.c2s-logcard__foot{display:flex;align-items:baseline;gap:.5rem;margin:.2rem 0 0}
.c2s-logcard__foot b{font:600 1.6rem/1 var(--c2-sans);background:linear-gradient(90deg,#FEC853,#7FE3CF);-webkit-background-clip:text;background-clip:text;color:transparent}
.c2s-grid{display:grid;gap:1.1rem}
@media (min-width:640px){.c2s-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.c2s-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2s-card{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:1rem;align-items:start;padding:1rem;border-radius:20px;background:#fff;border:1px solid rgb(20 18 19/.09);transition:border-color .2s,transform .2s}
.c2s-card:hover{border-color:color-mix(in srgb,var(--acc) 55%,#fff);transform:translateY(-2px)}
.c2s-card__img{display:block;border-radius:16px;overflow:hidden;aspect-ratio:1;background:#F1EFEA}
.c2s-card__img img{width:100%;height:100%;object-fit:cover}
.c2s-card__body{display:grid;gap:.5rem;min-width:0}
.c2s-move{display:grid;gap:.3rem;margin:0;font:500 .78rem/1.35 var(--c2-mono)}
.c2s-move small{display:inline-block;min-width:3.6rem;margin-right:.35rem;font:600 .62rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ds-ink-3)}
.c2s-move__from{color:var(--ds-ink-3);text-decoration:line-through;text-decoration-color:rgb(20 18 19/.3)}
.c2s-move__to{color:#141213;font-weight:600}
.c2s-move__to small{color:var(--acc-ink)}
.c2s-card h3{margin:0;font:600 1.05rem/1.3 var(--c2-sans);letter-spacing:-.01em}
.ct2 .ds-main .c2s-card h3 a{color:var(--ds-ink);text-decoration:none}
.c2s-card__who{margin:0;color:var(--ds-ink-2);font-size:.9rem}
/* awards by year */
.c2w-years{display:grid;gap:0;border-top:1px solid rgb(20 18 19/.09)}
.c2w-year{display:grid;gap:1rem;padding:1.6rem 0;border-bottom:1px solid rgb(20 18 19/.09)}
@media (min-width:860px){.c2w-year{grid-template-columns:10rem minmax(0,1fr);gap:2rem}.c2w-year__y{position:sticky;top:6rem;align-self:start}}
.c2w-year__y{display:flex;gap:.8rem;align-items:baseline}
@media (min-width:860px){.c2w-year__y{display:grid;gap:.4rem}}
.c2w-year__y code{font:600 clamp(1.6rem,1.3rem + 1.2vw,2.4rem)/1 var(--c2-mono);color:#141213;background:none;letter-spacing:-.03em}
.c2w-year__y span{font:500 .75rem/1 var(--c2-mono);color:var(--ds-ink-3);text-transform:uppercase;letter-spacing:.06em}
.c2w-awgrid{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}
@media (min-width:600px){.c2w-awgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2w-awgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2w-aw{display:grid;grid-template-columns:64px minmax(0,1fr);gap:.9rem;align-items:center;padding:.8rem;border-radius:16px;background:#F7F6F2;border:1px solid rgb(20 18 19/.06)}
.c2w-aw img{width:64px;height:64px;object-fit:contain;padding:4px;border-radius:12px;background:#fff}
.c2w-aw h3{margin:0 0 .2rem;font:600 .98rem/1.3 var(--c2-sans)}
.c2w-aw p{margin:0;font:500 .75rem/1.2 var(--c2-mono);letter-spacing:.03em;text-transform:uppercase;color:var(--acc-ink)}
.ct2 .ds-main .c2w-aw p a{color:var(--acc-ink);text-decoration:none}
.ct2 .ds-main .c2w-aw p a:hover{text-decoration:underline}

/* brand + proof fixes 1 */
@media (min-width:1080px){.c2w-we:first-child{grid-column:span 2;grid-row:auto}}
.c2w-orbit__c{display:flex;align-items:center;justify-content:center;gap:.25em}
.c2w-orbit__c::before{content:"//"}
.ct2 .ds-main .c2w-vals__g h3.c2p-lab{font:600 .75rem/1.2 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--acc-ink)}
.c2-awards.c2w-awards{margin-top:2rem;padding:0}
.c2s-move > span{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:.4rem;align-items:baseline}
.c2s-move small{min-width:0;margin:0}
.c2s-move__from{text-decoration:none}

/* brand + proof fixes 2 */
.ct2 .c2-awards.c2w-awards{margin-top:2rem!important}

/* ==== site-wide skin for remaining ds pages + city/story templates (2026-09-24): c2k-* / c2c-* / c2s-* ==== */
/* hero on ds pages */
.ct2 .ds-main .c2k-hero{position:relative;overflow:hidden;background:#F7F6F2;background-image:linear-gradient(rgb(20 18 19/.045) 1px,transparent 1px),linear-gradient(90deg,rgb(20 18 19/.045) 1px,transparent 1px);background-size:32px 32px;padding-block:clamp(2.5rem,2rem + 3vw,5rem) clamp(2.5rem,2rem + 2vw,4rem);color:var(--ds-ink)}
.ct2 .ds-main .c2k-hero::after{content:"";position:absolute;right:-10%;top:-30%;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgb(12 196 160/.14),transparent);pointer-events:none}
.ct2 .ds-main .c2k-hero > *{position:relative;z-index:1}
.ct2 .ds-main .c2k-hero h1{margin:0;font:600 clamp(2.4rem,1.7rem + 3vw,4.2rem)/1.02 var(--c2-sans);letter-spacing:-.045em;color:#141213}
.ct2 .ds-main .c2k-hero h1 em{font-family:var(--c2-accent);font-style:italic;font-weight:400;letter-spacing:-.01em;color:#006E64}
.ct2 .ds-main .c2k-hero .ds-lede{color:var(--ds-ink-2)}
.ct2 .c2k-kicker{justify-self:start;align-self:start;margin-bottom:.4rem;width:max-content;max-width:100%}
.ct2 .ds-main .c2k-hero .ds-head{text-align:left;margin-inline:0}
/* night heroes on program-style pages (AI Automation, AI bundle, podcast) */
.ct2 .ds-main .c2k-hero.ds-section--night{background:#0E0C0C;background-image:linear-gradient(rgb(255 255 255/.04) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255/.04) 1px,transparent 1px);background-size:32px 32px;color:#F7F4F2}
.ct2 .ds-main .c2k-hero.ds-section--night h1{color:#fff}
.ct2 .ds-main .c2k-hero.ds-section--night h1 em{color:#7FE3CF}
.ct2 .ds-main .c2k-hero.ds-section--night .c2-kicker{background:#221E1E;border-color:#332D2D;color:#F7F4F2}
.ct2 .ds-main .c2k-hero.ds-section--night .ds-lede{color:#C9C1BE}
/* on-this-page card (replaces old hero illustrations, tops legal pages) */
.c2k-toc{display:grid;gap:.8rem;padding:clamp(1.2rem,1rem + 1vw,1.8rem);border-radius:24px;background:#141213;color:#C9C1BE;box-shadow:0 30px 60px -40px rgb(20 18 19/.6)}
.c2k-toc .c2p-lab{color:#7FE3CF}
.c2k-toc ol{display:grid;gap:.35rem;margin:0;padding:0;list-style:none;counter-reset:t}
.c2k-toc li{counter-increment:t}
.ct2 .ds-main .c2k-toc a{display:flex;gap:.7rem;align-items:baseline;padding:.55rem .75rem;border-radius:10px;background:#1F1B1C;border:1px solid #2F2A2A;color:#F7F4F2;text-decoration:none;font:500 .95rem/1.35 var(--c2-sans);transition:border-color .2s,background .2s}
.ct2 .ds-main .c2k-toc a::before{content:counter(t,decimal-leading-zero);font:600 .7rem/1 var(--c2-mono);color:#FEC853}
.ct2 .ds-main .c2k-toc a:hover{border-color:#7FE3CF;background:#262122}
.c2k-media{align-self:center;width:100%;max-width:30rem;justify-self:end}
.ct2 .ds-prose + .c2k-toc,.ct2 .ds-head + .c2k-toc{margin:1.5rem 0 2.5rem}
@media (min-width:900px){.ct2 .ds-container--narrow > .c2k-toc ol{grid-template-columns:1fr 1fr}}
/* general ds components in the new look */
.ct2 .ds-main .ds-card{border-radius:20px;border:1px solid rgb(20 18 19/.09);box-shadow:none;transition:border-color .2s,transform .2s}
.ct2 .ds-main a.ds-card:hover,.ct2 .ds-main .ds-card:has(.ds-card__title-link):hover{border-color:rgb(12 196 160/.55)}
.ct2 .ds-main .ds-section--night .ds-card{border-color:#2F2A2A}
.ct2 .ds-main .ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:0 1.5rem;border-radius:12px;font:600 1rem/1 var(--c2-sans);background:#141213;color:#fff;border:1.5px solid #141213;box-shadow:none;text-decoration:none}
.ct2 .ds-main .ds-btn:hover{background:#006E64;border-color:#006E64}
.ct2 .ds-main .ds-btn--ghost,.ct2 .ds-main .ds-btn--secondary{background:transparent;color:var(--ds-ink);border-color:var(--ds-ink)}
.ct2 .ds-main .ds-section--night .ds-btn,.ct2 .ds-main .ds-band--night .ds-btn{background:#0CC4A0;border-color:#0CC4A0;color:#0E0C0C}
.ct2 .ds-main .ds-section--night .ds-btn--ghost{background:transparent;border-color:#F7F4F2;color:#F7F4F2}
.ct2 .ds-main .ds-eyebrow{display:inline-flex;align-items:center;gap:.5rem;width:max-content;max-width:100%;padding:.35rem .8rem;border-radius:999px;font:500 .8125rem/1.2 var(--c2-mono);letter-spacing:.02em;text-transform:lowercase;background:#fff;border:1px solid var(--ds-line);color:var(--ds-ink)}
.ct2 .ds-main .ds-section--night .ds-eyebrow{background:#221E1E;border-color:#332D2D;color:#F7F4F2}
.ct2 .ds-main .ds-chip{font-family:var(--c2-mono);font-size:.8rem}
.ct2 .ds-main .ds-head h2 em,.ct2 .ds-main h2 em{font-family:var(--c2-accent);font-style:italic;font-weight:400;color:#006E64}
/* legal / long text */
.ct2 .ds-main .ds-prose{max-width:74ch}
.ct2 .ds-main .ds-prose h2{margin-top:2.4em;padding-top:1.2em;border-top:1px solid rgb(20 18 19/.09);font:600 clamp(1.3rem,1.15rem + .6vw,1.65rem)/1.25 var(--c2-sans);letter-spacing:-.02em;scroll-margin-top:6rem}
.ct2 .ds-main .ds-prose h3{font:600 1.15rem/1.3 var(--c2-sans)}
.ct2 .ds-main .ds-prose p,.ct2 .ds-main .ds-prose li{line-height:1.7;color:var(--ds-ink-2)}
.ct2 .ds-main [id]{scroll-margin-top:6rem}
/* contact page */
.ct2 .ds-main .ds-contact-list{display:grid;gap:.6rem;margin:1.2rem 0;padding:0;list-style:none}
.ct2 .ds-main .ds-contact-list a{display:inline-flex;gap:.6rem;align-items:center;padding:.7rem 1rem;border-radius:12px;background:#fff;border:1px solid rgb(20 18 19/.1);font:500 .95rem/1.2 var(--c2-mono);color:#141213;text-decoration:none}
.ct2 .ds-main .ds-contact-list a:hover{border-color:#0CC4A0}
/* city template extras */
.c2c-market small{display:block;margin-top:.25rem;font:500 .62rem/1.2 var(--c2-mono);letter-spacing:.05em;text-transform:uppercase;color:#8A817E}
.c2c-stat b{font:600 clamp(2.2rem,1.8rem + 1.5vw,3rem)/1 var(--c2-sans);letter-spacing:-.04em;color:#141213}
.c2c-src{margin-top:auto;font:500 .72rem/1.2 var(--c2-mono);color:var(--ds-ink-3);text-transform:uppercase;letter-spacing:.05em}
.c2c-tools{display:grid;gap:.8rem;margin-top:2rem;justify-items:center;text-align:center}
.c2c-tools ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0;padding:0;list-style:none}
.c2c-tools li{padding:.4rem .75rem;border-radius:999px;background:#F7F6F2;border:1px solid rgb(20 18 19/.08);font:500 .8rem/1 var(--c2-mono);color:#141213}
.ct2 .c2p-hero__copy .c2-kicker a{color:inherit;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}
/* student story template */
.ct2 .ds-main .c2s-crumbs{margin:0 0 .6rem;font:500 .78rem/1 var(--c2-mono)}
.ct2 .ds-main .c2s-crumbs a{color:var(--acc-ink);text-decoration:none}
.ct2 .ds-main .c2s-crumbs span{margin:0 .4rem;color:var(--ds-ink-3)}
.c2s-story__name{font-weight:600;color:#141213}
.c2s-move--hero{max-width:32rem;margin-top:.4rem;padding:1rem 1.1rem;border-radius:16px;background:#fff;border:1px solid rgb(20 18 19/.09);font-size:.88rem}
.c2s-move--hero > span{grid-template-columns:3.4rem minmax(0,1fr)}
.c2s-story__photo{position:relative;justify-self:center;width:min(100%,440px);aspect-ratio:1;border-radius:28px;overflow:hidden;background:#EDEBE6;box-shadow:0 30px 60px -35px rgb(20 18 19/.5)}
@media (min-width:1100px){.c2s-story__photo{justify-self:end}}
.c2s-story__photo img{width:100%;height:100%;object-fit:cover}
.c2s-story__photo .c2p-lab{position:absolute;left:1rem;bottom:1rem;padding:.45rem .7rem;border-radius:999px;background:#141213;color:#7FE3CF}
.c2s-qa{display:grid;max-width:880px}
.c2s-qa__row{display:grid;grid-template-columns:3.5rem minmax(0,1fr);gap:1rem;padding:1.6rem 0;border-bottom:1px solid rgb(20 18 19/.08)}
.c2s-qa__row:first-child{padding-top:0}
.c2s-qa__n{font:600 .8rem/1.9 var(--c2-mono);color:var(--acc-ink)}
.ct2 .ds-main .c2s-qa h2{margin:0 0 .6rem;font:600 clamp(1.15rem,1.05rem + .5vw,1.45rem)/1.3 var(--c2-sans);letter-spacing:-.02em;color:#141213}
.c2s-qa__a p{margin:0 0 .8rem;color:var(--ds-ink-2);line-height:1.7}
.c2s-qa__a p:last-child{margin-bottom:0}
@media (max-width:560px){.c2s-qa__row{grid-template-columns:1fr;gap:.3rem}}

/* skin fixes 1 */
.ct2 .ds-main .c2k-hero.ds-pg-hero .c2k-kicker{justify-self:center;margin-inline:auto}
.ct2 .ds-main .c2k-hero .ds-eyebrow{justify-self:start}

/* skin fixes 2: form cards on small phones (Turnstile is 300px wide) */
@media (max-width:420px){.ct2 .ds-main .ds-card:has(.fluentform){padding:1rem 0;border:0;background:transparent;box-shadow:none}}

/* skin fixes 3 */
.ct2 .ds-main .ds-eyebrow,.ct2 .c2k-kicker{width:fit-content;flex-wrap:wrap}
.ct2 .ds-main h1,.ct2 .ds-main h2{overflow-wrap:break-word}

/* quick facts moved into the 4 career tracks section (2026-09-24) */
.c2-programs .c2-quick--inline{margin:0 0 clamp(2rem,1.5rem + 1.5vw,3rem)!important;z-index:auto}

/* AI cards: no module labels, 4 items each (2026-09-24) */
.c2-ai__card li{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:.55rem}
.c2-ai__card li::before{content:"\2726";font-size:.75rem;color:var(--acc-ink)}

/* quick facts below the program cards, same width as the cards */
.c2-programs .c2-quick--inline{max-width:1120px;margin:clamp(1.5rem,1.2rem + 1vw,2.25rem) auto clamp(2rem,1.5rem + 1.5vw,3rem)!important}

/* AI cards: program names always on one line, scaled to the card width */
.c2-ai__card header{container-type:inline-size;align-items:center}
.ct2 .ds-main .c2-ai__card h3{white-space:nowrap;font-size:min(1.15rem,calc((100cqi - 44px) / 11.6))}

/* site-wide: centered buttons under grids get breathing room (a .ds-main p reset was zeroing their margin) */
.ct2 .ds-main :is(.c2-center,.c2-build__foot,.c2-protect__cta,.c2-compare__cta,.c2p-cur__cta,.c2-programs__more){margin-top:clamp(2rem,1.6rem + 1vw,2.75rem)!important}
/* AI cards: program names on one line (retry with higher specificity) */
.ct2 .ds-main .c2-ai__card header{container-type:inline-size;align-items:center}
.ct2 .ds-main .c2-ai .c2-ai__card header h3{white-space:nowrap!important;font-size:min(1.15rem,calc((100cqi - 44px) / 11.6))!important}

/* AI cards: AI tag above the name so the name keeps a readable size on one line */
.ct2 .ds-main .c2-ai .c2-ai__card header{flex-direction:column;align-items:flex-start;gap:.6rem}
.ct2 .ds-main .c2-ai .c2-ai__card header h3{font-size:min(1.15rem,calc(100cqi / 11.4))!important}

/* hero: Zach toast no longer covered by the $23k card */
.c2-hero .c2-toast--offer{z-index:4}
.c2-hero .c2-hb-stat{translate:-28px 0}

/* hero floats at 1000-1199px: keep the $23k card clear of Zach's photo */
@media (max-width:1199px){.c2-hero .c2-hb-stat{translate:-80px 0}}
/* text-us number: a live "online" dot that pulses, on every texting link (not buttons) */
.ct2 a[href^="sms:"]:not(.c2-btn):not(.ds-btn){display:inline-flex;align-items:center;gap:.45em;font-weight:600;color:#006E64;text-decoration-color:rgb(12 196 160/.55);text-underline-offset:3px;white-space:nowrap}
.ct2 a[href^="sms:"]:not(.c2-btn):not(.ds-btn)::before{content:"";flex:none;width:.55em;height:.55em;border-radius:50%;background:#0CC4A0;box-shadow:0 0 0 0 rgb(12 196 160/.55);animation:ctSmsPulse 2.2s ease-out infinite}
.ct2 a[href^="sms:"]:not(.c2-btn):not(.ds-btn):hover{color:#0CC4A0}
.ct2 :is(.ds-header,.ds-footer,.c2-sec--night,.ds-section--night,.c2a-believe,.c2-faq__help,.c2k-toc) a[href^="sms:"]:not(.c2-btn):not(.ds-btn){color:#7FE3CF}
@keyframes ctSmsPulse{0%{box-shadow:0 0 0 0 rgb(12 196 160/.55)}70%{box-shadow:0 0 0 .6em rgb(12 196 160/0)}100%{box-shadow:0 0 0 0 rgb(12 196 160/0)}}
@media (prefers-reduced-motion:reduce){.ct2 a[href^="sms:"]::before{animation:none}}
/* hero: keep a slight overlap between the $23k card and the Zach card (Zach card on top) */
.c2-hero .c2-hb-stat{translate:0 0}
@media (max-width:1199px){.c2-hero .c2-hb-stat{translate:-36px 0}}
@media (max-width:1199px){.c2-hero .c2-hb-stat{translate:-64px 0}}

/* hero overlap at 1000-1199px (final) */
@media (max-width:1199px){.ct2 .c2-hero .c2-hb-stat{translate:-64px 0}}
/* quick facts: headings line up (remove the color bar above the 4) */
.c2-quick .c2-quick__item:nth-child(1)::before{display:none!important}
@media (max-width:1199px) and (min-width:1000px){.ct2 .c2-hero .c2-hb-stat{translate:calc(-38px - (1199px - 100vw) * .18) 0}}

/* ==== BLS job market block (c2mk) ==== */
.c2mk__grid{display:grid;gap:clamp(1.5rem,1rem + 2vw,3rem);align-items:center}
@media (min-width:960px){.c2mk__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.c2mk__copy{display:grid;gap:1rem;justify-items:start}
.c2mk__copy h2,.c2mk__copy p{margin:0}
.c2mk__copy p{color:var(--ds-ink-2);line-height:1.6}
.c2mk__fine{font-size:.85rem;padding:.7rem .9rem;border-radius:12px;background:#fff;border:1px dashed rgb(20 18 19/.18)}
.c2mk__term{margin:0;display:grid;gap:.7rem}
.c2mk__term > .c2mk__bar,.c2mk__term > .c2mk__body{background:#141213;color:#E9E4E2}
.c2mk__bar{display:flex;align-items:center;gap:.4rem;padding:.7rem 1rem;border-radius:18px 18px 0 0;border-bottom:1px solid #2A2526;font:500 .75rem/1 var(--c2-mono);color:#8A817E}
.c2mk__bar i{width:10px;height:10px;border-radius:50%;background:#3A3434}
.c2mk__bar i:first-child{background:var(--acc)}
.c2mk__bar span{margin-left:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.c2mk__body{margin-top:-.7rem;padding:1.1rem 1.2rem 1.2rem;border-radius:0 0 18px 18px;font-family:var(--c2-mono);box-shadow:0 30px 60px -40px rgb(20 18 19/.6)}
.c2mk__cmd{margin:0 0 .9rem;font-size:.82rem;color:#B9B0AD;overflow-wrap:anywhere}
.c2mk__cmd span{color:var(--acc)}
.c2mk__body ul{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.c2mk__body li{display:grid;grid-template-columns:minmax(6.5rem,auto) auto minmax(0,1fr);gap:.4rem .9rem;align-items:baseline;padding:.6rem .75rem;border-radius:10px;background:#1F1B1C;border:1px solid #2F2A2A;animation:c2mkIn .5s ease-out both;animation-delay:calc(var(--i) * .12s)}
.c2mk__k{font-size:.72rem;color:#8A817E}
.c2mk__v{font:600 clamp(1.25rem,1rem + .8vw,1.6rem)/1 var(--c2-sans);letter-spacing:-.03em;color:#fff}
.c2mk__n{font-size:.72rem;line-height:1.35;color:#B9B0AD}
.c2mk__ok{margin:.9rem 0 0;font-size:.75rem;color:var(--acc)}
.c2mk__term figcaption{font-size:.78rem;line-height:1.5;color:var(--ds-ink-3)}
.ct2 .ds-main .c2mk__term figcaption a{color:var(--acc-ink)}
@keyframes c2mkIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.c2mk__body li{animation:none}}
@media (max-width:560px){.c2mk__body li{grid-template-columns:1fr auto}.c2mk__n{grid-column:1 / -1}}
.c2-card__pay .ct-src{display:inline-block;margin-left:.25rem;font:500 .7rem/1 var(--c2-mono);color:var(--ds-ink-3);text-transform:uppercase;letter-spacing:.04em}
.ct2 .ds-main .c2mk h2 em{color:var(--acc-ink)}
.c2mk__grid{grid-template-columns:minmax(0,1fr)}.c2mk__grid > *{min-width:0}
@media (min-width:960px){.c2mk__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.c2mk__term{grid-template-columns:minmax(0,1fr)}.c2mk__term > *{min-width:0}.c2mk__bar span{min-width:0}
@media (max-width:560px){.c2mk__body li{grid-template-columns:minmax(0,1fr) auto}.c2mk__body{padding:1rem .8rem}}
/* curriculum modules never force width on tiny phones */
.c2p-mod,.c2p-mod > *,.c2p-mod summary > *{min-width:0}
.c2p-mod summary{overflow-wrap:anywhere}

/* FAQs: search + sticky topics */
.c2q-search{display:flex;align-items:center;gap:.6rem;width:100%;max-width:34rem;margin-top:1.2rem;padding:.35rem .45rem .35rem 1rem;border-radius:16px;background:#141213;box-shadow:0 24px 50px -30px rgb(20 18 19/.6)}
.c2q-search__icon{font:600 .9rem/1 var(--c2-mono);color:#7FE3CF}
.ct2 .ds-main .c2q-search input{flex:1;min-width:0;min-height:48px;padding:0 .4rem;border:0;background:transparent;color:#fff;font:500 1rem/1.2 var(--c2-sans);outline:none}
.ct2 .ds-main .c2q-search input::placeholder{color:#8A817E}
.c2q-count{padding:.4rem .7rem;border-radius:10px;font:500 .75rem/1 var(--c2-mono);color:#141213;background:#7FE3CF}
.c2q-count:empty{display:none}
.c2q-search:focus-within{outline:2px solid #0CC4A0;outline-offset:3px}
.ct2 .ds-main .c2q-nav{position:sticky;top:64px;z-index:5;margin-inline:-1rem;padding:.7rem 1rem;background:rgb(247 246 242/.92);backdrop-filter:blur(8px);border-bottom:1px solid rgb(20 18 19/.06)}
.admin-bar .ct2 .ds-main .c2q-nav{top:96px}
.c2q-nav .ds-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.c2q-empty{display:grid;gap:.5rem;margin-top:1.5rem;padding:1.2rem 1.3rem;border-radius:16px;background:#141213;color:#E9E4E2}
.c2q-empty .c2p-lab{color:#FEC853}
.c2q-empty p{margin:0}
.c2q-empty[hidden],.ds-faq details[hidden],.ds-faq[hidden],.ds-faq__group[hidden]{display:none!important}
.ct2 .ds-main .c2q-nav .ds-chips{display:flex;flex-wrap:nowrap!important;gap:.5rem;overflow-x:auto;margin:0;padding:0}.ct2 .ds-main .c2q-nav .ds-chip{white-space:nowrap}
.ct2 .ds-main .c2q-nav{top:58px}.admin-bar .ct2 .ds-main .c2q-nav,.admin-bar.ct2 .ds-main .c2q-nav{top:90px}

/* ==== hero backdrops by page family (2026-09-24): each section of the site gets its own texture ==== */
/* programs + their free courses: a motif per track */
.ct2:is(.page-id-28403,.page-id-31114) .ds-main .c2p-hero{background-color:#F2FBF8;background-image:radial-gradient(60% 70% at 88% 10%,rgb(12 196 160/.20),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='90'%3E%3Ctext x='8' y='34' font-family='monospace' font-size='20' fill='%23006E64' fill-opacity='.10'%3E%26lt;/%26gt;%3C/text%3E%3Ctext x='78' y='78' font-family='monospace' font-size='18' fill='%23006E64' fill-opacity='.07'%3E%7B %7D%3C/text%3E%3C/svg%3E");background-size:auto,140px 90px}
.ct2:is(.page-id-30041,.page-id-30915) .ds-main .c2p-hero{background-color:#F7FBEC;background-image:radial-gradient(60% 70% at 88% 10%,rgb(158 209 31/.24),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='100'%3E%3Cpath d='M28 66L0 50V16L28 0l28 16v34L28 66zm0 34V66' fill='none' stroke='%234A6B00' stroke-opacity='.12'/%3E%3C/svg%3E");background-size:auto,56px 100px}
.ct2:is(.page-id-40725,.page-id-30946) .ds-main .c2p-hero{background-color:#F1F9FC;background-image:radial-gradient(60% 70% at 88% 10%,rgb(47 184 218/.22),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='640' height='220'%3E%3Cpolyline points='0,200 80,170 160,180 240,130 320,140 400,90 480,100 560,50 640,30' fill='none' stroke='%23006A85' stroke-opacity='.16' stroke-width='3'/%3E%3Cg fill='%23006A85' fill-opacity='.18'%3E%3Ccircle cx='240' cy='130' r='5'/%3E%3Ccircle cx='400' cy='90' r='5'/%3E%3Ccircle cx='560' cy='50' r='5'/%3E%3C/g%3E%3C/svg%3E"),radial-gradient(circle,rgb(0 106 133/.13) 1.2px,transparent 1.6px);background-size:auto,640px 220px,22px 22px;background-position:0 0,right -40px bottom 0,0 0;background-repeat:no-repeat,no-repeat,repeat}
.ct2:is(.page-id-29872,.page-id-30873) .ds-main .c2p-hero{background-color:#FEF7F0;background-image:radial-gradient(60% 70% at 88% 10%,rgb(240 138 36/.20),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96'%3E%3Cg fill='none' stroke='%23A84B00' stroke-opacity='.13' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 24l6 6 12-14'/%3E%3Cpath d='M62 72l6 6 12-14'/%3E%3C/g%3E%3C/svg%3E");background-size:auto,96px 96px}
/* free course hub: all four tracks */
.ct2.page-id-31817 .ds-main .c2p-hero{background-color:#FAF9F7;background-image:radial-gradient(35% 45% at 10% 0%,rgb(12 196 160/.16),transparent 70%),radial-gradient(35% 45% at 40% 0%,rgb(158 209 31/.16),transparent 70%),radial-gradient(35% 45% at 70% 0%,rgb(47 184 218/.16),transparent 70%),radial-gradient(35% 45% at 100% 0%,rgb(240 138 36/.16),transparent 70%),radial-gradient(circle,rgb(20 18 19/.09) 1px,transparent 1.4px);background-size:auto,auto,auto,auto,18px 18px}
/* Tech Residency: blueprint */
.ct2.page-id-17431 .ds-main .c2p-hero{background-color:#EEF6FA;background-image:linear-gradient(rgb(0 106 133/.12) 1px,transparent 1px),linear-gradient(90deg,rgb(0 106 133/.12) 1px,transparent 1px),linear-gradient(rgb(0 106 133/.05) 1px,transparent 1px),linear-gradient(90deg,rgb(0 106 133/.05) 1px,transparent 1px);background-size:96px 96px,96px 96px,16px 16px,16px 16px}
/* Career Paths: four diagonal paths */
.ct2.page-id-17622 .ds-main .c2p-hero{background-color:#FAF9F7;background-image:linear-gradient(115deg,transparent 0 18%,rgb(12 196 160/.10) 18% 30%,transparent 30% 38%,rgb(158 209 31/.12) 38% 50%,transparent 50% 58%,rgb(47 184 218/.10) 58% 70%,transparent 70% 78%,rgb(240 138 36/.10) 78% 90%,transparent 90%)}
/* Career Services: support rings */
.ct2.page-id-19332 .ds-main .c2p-hero{background-color:#F4FBF8;background-image:repeating-radial-gradient(circle at 85% 30%,transparent 0 38px,rgb(0 110 100/.08) 38px 39px)}
/* Why Coding Temple: warm mesh, no grid */
.ct2.page-id-18728 .ds-main .c2p-hero{background-color:#FBF7EE;background-image:radial-gradient(50% 60% at 15% 20%,rgb(254 200 83/.28),transparent 70%),radial-gradient(45% 55% at 85% 15%,rgb(12 196 160/.20),transparent 70%),radial-gradient(40% 50% at 60% 100%,rgb(240 138 36/.14),transparent 70%)}
/* Student stories (index + every story): soft people-network dots */
.ct2:is(.page-id-3971,.single-student-success) .ds-main .c2p-hero{background-color:#FBF6F2;background-image:radial-gradient(45% 60% at 90% 20%,rgb(47 184 218/.18),transparent 70%),radial-gradient(40% 50% at 10% 90%,rgb(240 138 36/.14),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cg fill='none' stroke='%23141213' stroke-opacity='.07'%3E%3Cpath d='M20 20L70 45L100 100M70 45L110 15'/%3E%3C/g%3E%3Cg fill='%23141213' fill-opacity='.10'%3E%3Ccircle cx='20' cy='20' r='3'/%3E%3Ccircle cx='70' cy='45' r='3'/%3E%3Ccircle cx='100' cy='100' r='3'/%3E%3Ccircle cx='110' cy='15' r='3'/%3E%3C/g%3E%3C/svg%3E");background-size:auto,auto,120px 120px}
/* Awards: gold rays */
.ct2.page-id-17271 .ds-main .c2p-hero{background-color:#FCF8EC;background-image:radial-gradient(40% 55% at 85% 20%,rgb(254 200 83/.35),transparent 70%),repeating-conic-gradient(from 0deg at 85% 20%,rgb(254 200 83/.10) 0deg 6deg,transparent 6deg 18deg)}
/* Outcomes: chart gridlines */
.ct2.page-id-18138 .ds-main .c2p-hero{background-color:#F4FAF8;background-image:radial-gradient(50% 60% at 85% 15%,rgb(12 196 160/.18),transparent 70%),repeating-linear-gradient(0deg,rgb(0 110 100/.08) 0 1px,transparent 1px 48px)}
/* Talk to Admissions + Contact: conversation dots */
.ct2:is(.page-id-19309,.page-id-17525) .ds-main :is(.c2p-hero,.c2k-hero){background-color:#F3FAF7;background-image:radial-gradient(50% 60% at 85% 20%,rgb(12 196 160/.18),transparent 70%),radial-gradient(circle,rgb(0 110 100/.14) 2px,transparent 2.5px);background-size:auto,28px 28px}
/* Money pages (Payment Options, Tuition Protection, WIOA, BCBS, Tuition Assistance): ledger lines */
.ct2:is(.page-id-18280,.page-id-18541,.page-id-19289,.page-id-18648,.page-id-19281) .ds-main :is(.c2p-hero,.c2k-hero){background-color:#F6FBF3;background-image:radial-gradient(45% 60% at 88% 15%,rgb(158 209 31/.20),transparent 70%),repeating-linear-gradient(0deg,rgb(20 18 19/.06) 0 1px,transparent 1px 32px),linear-gradient(90deg,transparent 0 64px,rgb(240 138 36/.18) 64px 65px,transparent 65px)}
/* City pages: topographic contours */
.ct2.single-city .ds-main .c2p-hero{background-color:#F4F8F4;background-image:radial-gradient(50% 60% at 88% 15%,rgb(12 196 160/.16),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cg fill='none' stroke='%23006E64' stroke-opacity='.10'%3E%3Cellipse cx='70' cy='80' rx='26' ry='17'/%3E%3Cellipse cx='70' cy='80' rx='48' ry='32'/%3E%3Cellipse cx='70' cy='80' rx='70' ry='48'/%3E%3Cellipse cx='200' cy='195' rx='22' ry='15'/%3E%3Cellipse cx='200' cy='195' rx='42' ry='29'/%3E%3Cellipse cx='200' cy='195' rx='62' ry='44'/%3E%3C/g%3E%3C/svg%3E");background-size:auto,260px 260px}
/* quiet pages (FAQs, legal, experts, community finder, credentials): clean paper, no grid */
.ct2:is(.page-id-17587,.page-id-17496,.page-id-17504,.page-id-17491,.page-id-17509,.page-id-22274,.page-id-33906,.page-id-2534,.page-id-19501) .ds-main .c2k-hero{background-color:#FAF9F7;background-image:radial-gradient(45% 70% at 90% 0%,rgb(12 196 160/.10),transparent 70%)}
/* hero backdrops: stop the base 32px grid size from tiling the gradients */
.ct2:is(.page-id-18728,.page-id-17271,.page-id-18138,.page-id-17622,.page-id-19332,.page-id-18280,.page-id-18541,.page-id-19289,.page-id-18648,.page-id-19281) .ds-main :is(.c2p-hero,.c2k-hero),.ct2:is(.page-id-17587,.page-id-17496,.page-id-17504,.page-id-17491,.page-id-17509,.page-id-22274,.page-id-33906,.page-id-2534,.page-id-19501) .ds-main .c2k-hero{background-size:auto}

/* Hire Our Graduates (c2h-*) */
.c2h-hero{padding-block:clamp(3rem,2.5rem + 3vw,5.5rem)}
.ct2 .ds-main .c2h-hero h1{margin:0;font:600 clamp(2.6rem,1.8rem + 3.4vw,4.6rem)/1 var(--c2-sans);letter-spacing:-.045em;color:#fff}
.ct2 .ds-main .c2h-hero h1 em{color:#7FE3CF}
.c2h-hero .c2p-hero__lede{color:#C9C1BE}
.c2h-hero .c2-kicker{justify-self:start;background:#221E1E;border-color:#332D2D;color:#F7F4F2}
.c2h-hero .c2p-hero__copy{display:grid;gap:1.1rem}
.c2h-dash{border-radius:22px;background:#171414;border:1px solid #2F2A2A;box-shadow:0 40px 80px -40px rgb(0 0 0/.8);overflow:hidden}
.c2h-dash__bar{display:flex;gap:.4rem;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #2A2526;font:500 .75rem/1 var(--c2-mono);color:#8A817E}
.c2h-dash__bar i{width:10px;height:10px;border-radius:50%;background:#3A3434}.c2h-dash__bar i:first-child{background:#0CC4A0}
.c2h-dash__bar span{margin-left:.5rem}
.c2h-dash__rows{display:grid;gap:.55rem;margin:0;padding:1rem;list-style:none}
.c2h-dash__rows li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.2rem .7rem;align-items:center;padding:.8rem .9rem;border-radius:12px;background:#1F1B1C;border:1px solid #2F2A2A;animation:c2mkIn .5s ease-out both}
.c2h-dash__rows li:nth-child(2){animation-delay:.1s}.c2h-dash__rows li:nth-child(3){animation-delay:.2s}.c2h-dash__rows li:nth-child(4){animation-delay:.3s}
.c2h-dot{grid-row:span 2;width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 25%,transparent)}
.c2h-dash__rows b{font:600 1rem/1.2 var(--c2-sans);color:#fff}
.c2h-tools{font:500 .75rem/1.3 var(--c2-mono);color:#B9B0AD}
.c2h-dash__foot{margin:0;padding:.9rem 1rem;border-top:1px solid #2A2526;font:500 .8rem/1.3 var(--c2-mono);color:#B9B0AD}
.c2h-dash__foot b{color:#FEC853}
.c2h-tracks{display:grid;gap:1rem}
@media (min-width:760px){.c2h-tracks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.c2h-tracks{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2h-track{display:grid;align-content:start;gap:.6rem;padding:1.3rem;border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 16%,#fff),#fff 60%);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff)}
.c2h-track h3{margin:0;font:600 1.2rem/1.2 var(--c2-sans)}
.c2h-track__lab{margin:.3rem 0 0;font:600 .68rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--acc-ink)}
.c2h-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}
.c2h-chips li{padding:.35rem .6rem;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,var(--acc) 30%,#fff);font:500 .8rem/1.2 var(--c2-sans)}
.c2h-chips--tools li{font:500 .74rem/1.2 var(--c2-mono);background:#F7F6F2;border-color:rgb(20 18 19/.08)}
.c2h-track .c2w-news__go{margin-top:.4rem}
.c2h-proof .c2m-outcomes__grid li{background:#1F1B1C}
.c2h-formcard{padding:clamp(1rem,.8rem + 1vw,1.6rem)}

/* eligibility checks + funding router (c2e) */
.c2e__grid{display:grid;gap:clamp(1.5rem,1rem + 2vw,3rem);align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.c2e__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
.c2e__card{display:grid;gap:.9rem;padding:0 0 1.2rem;border-radius:22px;background:#141213;color:#E9E4E2;overflow:hidden;box-shadow:0 30px 60px -40px rgb(20 18 19/.6)}
.c2e__card > :not(.c2e__bar){margin-inline:1.2rem}
.c2e__bar{display:flex;gap:.4rem;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #2A2526;font:500 .75rem/1 var(--c2-mono);color:#8A817E}
.c2e__bar i{width:10px;height:10px;border-radius:50%;background:#3A3434}.c2e__bar i:first-child{background:var(--acc)}.c2e__bar span{margin-left:.5rem}
.c2e__title{margin:0;font:600 .72rem/1.2 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--acc)}
.c2e__list{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.c2e__list label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.7rem;align-items:center;padding:.75rem .85rem;border-radius:12px;background:#1F1B1C;border:1px solid #2F2A2A;cursor:pointer;font:500 .95rem/1.35 var(--c2-sans);color:#F7F4F2;transition:border-color .2s,background .2s}
.c2e__list input{position:absolute;opacity:0;pointer-events:none}
.c2e-tick{width:22px;height:22px;border-radius:7px;border:2px solid #4A4343;display:grid;place-items:center;transition:all .2s}
.c2e__list input:checked + .c2e-tick{background:var(--acc);border-color:var(--acc)}
.c2e__list input:checked + .c2e-tick::after{content:'\2713';font:700 .8rem/1 var(--c2-sans);color:#141213}
.c2e__list label:has(input:checked){border-color:color-mix(in srgb,var(--acc) 60%,#2F2A2A);background:#231F20}
.c2e__list input:focus-visible + .c2e-tick{outline:2px solid var(--acc);outline-offset:2px}
.c2e__out{display:grid;gap:.8rem;justify-items:start;padding-top:.3rem}
.c2e__msg{display:none;margin:0;font:500 .9rem/1.45 var(--c2-mono);color:#B9B0AD}
.c2e__msg span{color:#FEC853}
.c2e__out[data-state='0'] .c2e__msg--0,.c2e__out[data-state='some'] .c2e__msg--some,.c2e__out[data-state='all'] .c2e__msg--all{display:block}
.c2e__out[data-state='all'] .c2e__msg--all{color:var(--acc)}
.c2e-q{display:grid;gap:.5rem;margin:0;padding:.85rem .95rem;border-radius:12px;background:#1F1B1C;border:1px solid #2F2A2A}
.c2e-q legend{float:left;width:100%;margin-bottom:.5rem;font:500 .95rem/1.4 var(--c2-sans);color:#F7F4F2}
.c2e-q label{display:inline-flex;align-items:center;gap:.45rem;margin-right:1rem;font:500 .85rem/1 var(--c2-mono);color:#E9E4E2;cursor:pointer}
.c2e-q input{accent-color:#0CC4A0;width:18px;height:18px}
.c2e-res{display:grid;gap:.5rem;justify-items:start;padding:1rem;border-radius:14px;background:linear-gradient(180deg,rgb(12 196 160/.16),transparent);border:1px solid rgb(12 196 160/.45);animation:c2mkIn .35s ease-out both}
.c2e-res[hidden]{display:none}
.c2e-res .c2p-lab{color:#7FE3CF}
.ct2 .ds-main .c2e-res h3{margin:0;color:#fff;font:600 1.2rem/1.2 var(--c2-sans)}
.c2e-res p{margin:0;color:#C9C1BE}

/* Digital Credentials (c2d) */
.ct2 .ds-main a.c2d-cred{position:relative;display:grid;justify-items:center;gap:.5rem;padding:1.3rem 1.4rem 1.4rem;border-radius:26px;background:#141213;color:#E9E4E2;text-decoration:none;overflow:hidden;box-shadow:0 40px 80px -40px rgb(20 18 19/.7);transform:perspective(900px) rotateX(4deg) rotateY(-8deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.ct2 .ds-main a.c2d-cred:hover{transform:perspective(900px) rotateX(0) rotateY(0) translateY(-4px)}
.c2d-cred__shine{position:absolute;inset:-40% -60%;background:linear-gradient(115deg,transparent 40%,rgb(255 255 255/.14) 50%,transparent 60%);animation:c2dShine 4.5s ease-in-out infinite;pointer-events:none}
@keyframes c2dShine{0%,60%{transform:translateX(-40%)}100%{transform:translateX(40%)}}
@media (prefers-reduced-motion:reduce){.c2d-cred__shine{animation:none}.ct2 .ds-main a.c2d-cred{transform:none}}
.c2d-cred__top{display:flex;justify-content:space-between;align-items:center;width:100%}
.c2d-cred .c2p-lab{color:#7FE3CF}
.c2d-cred__ok{padding:.3rem .6rem;border-radius:999px;background:rgb(12 196 160/.18);border:1px solid rgb(12 196 160/.5);font:600 .72rem/1 var(--c2-mono);color:#7FE3CF}
.c2d-cred img{width:min(200px,60%);height:auto;filter:drop-shadow(0 16px 30px rgb(0 0 0/.5))}
.c2d-cred__name{font:600 1.2rem/1.2 var(--c2-sans);color:#fff}
.c2d-cred__meta{font:500 .8rem/1 var(--c2-mono);color:#B9B0AD}
.c2d-cred__row{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:.3rem}
.c2d-cred__row span{padding:.35rem .6rem;border-radius:999px;background:#1F1B1C;border:1px solid #2F2A2A;font:500 .72rem/1 var(--c2-mono);color:#E9E4E2}
.ct2 .ds-main .ds-credbadges{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;padding:0;list-style:none}
.ct2 .ds-main .ds-credbadges li{position:relative;display:grid;justify-items:center;gap:.6rem;padding:1rem .8rem;border-radius:18px;background:#fff;border:1px solid rgb(20 18 19/.08);overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}
.ct2 .ds-main .ds-credbadges li::after{content:'';position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 42%,rgb(255 255 255/.7) 50%,transparent 58%);transform:translateX(-60%);transition:transform .7s ease;pointer-events:none}
.ct2 .ds-main .ds-credbadges li:hover{transform:translateY(-4px);border-color:rgb(12 196 160/.5);box-shadow:0 20px 40px -28px rgb(20 18 19/.4)}
.ct2 .ds-main .ds-credbadges li:hover::after{transform:translateX(60%)}
.ct2 .ds-main .ds-credbadges img{width:100%;max-width:120px;height:auto;aspect-ratio:1;object-fit:contain}
.ct2 .ds-main .ds-credbadges span{font:500 .78rem/1.3 var(--c2-sans);text-align:center;color:var(--ds-ink-2)}
.ct2 .ds-main .ds-credbadges--certs{grid-template-columns:repeat(auto-fill,minmax(180px,220px))}

/* ==== conversion helpers (c2x / proofline) ==== */
.ct2 .ds-main .c2-proofline{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .45rem;margin:.75rem 0 0;font:500 .85rem/1.35 var(--c2-sans);color:var(--ds-ink-2)}
.c2-proofline__stars{letter-spacing:.08em;color:#F5B301;font-size:.8rem}
.ct2 .ds-main .c2-proofline a{color:inherit;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}
.c2-band__cta .c2-proofline{justify-content:center}
@media (min-width:900px){.c2-band__cta .c2-proofline{justify-content:flex-end}}
.ct2 .ds-main :is(.c2-sec--night,.c2h-hero) .c2-proofline{color:#C9C1BE}
/* blog mid-article CTA */
.ct2 .ds-main .c2x-cta{display:grid;gap:.6rem;margin:2.5rem 0;padding:1.4rem 1.5rem;border-radius:22px;background:linear-gradient(160deg,color-mix(in srgb,var(--acc) 20%,#fff),#fff 70%);border:1px solid color-mix(in srgb,var(--acc) 40%,#fff);box-shadow:0 24px 50px -40px rgb(20 18 19/.45)}
.ct2 .ds-main .c2x-cta__lab{font:600 .7rem/1 var(--c2-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--acc-ink)}
.ct2 .ds-main .ds-prose .c2x-cta__title{margin:0;font:600 clamp(1.3rem,1.1rem + .8vw,1.7rem)/1.2 var(--c2-sans);letter-spacing:-.02em;color:#141213}
.ct2 .ds-main .ds-prose .c2x-cta__text{margin:0;color:var(--ds-ink-2)}
.c2x-cta__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.3rem}
.ct2 .ds-main .ds-prose .c2x-cta a.c2-btn{text-decoration:none;min-height:48px}
.ct2 .ds-main .ds-prose .c2x-cta a.c2-btn--dark{color:#fff}
.ct2 .ds-main .ds-prose .c2x-cta a.c2-btn--line{color:#141213}
.ct2 .ds-main .ds-prose .c2x-cta .c2-proofline{margin-top:.2rem}
/* sticky mobile action bar */
.c2x-bar{display:none}
@media (max-width:767px){
  .c2x-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1.35fr;gap:.5rem;padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));background:rgb(20 18 19/.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid #2F2A2A;transform:translateY(110%);visibility:hidden;transition:transform .3s ease,visibility .3s}
  .c2x-bar.is-on{transform:none;visibility:visible}
  .c2x-bar a{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:50px;border-radius:12px;font:600 1rem/1 var(--c2-sans);text-decoration:none}
  .ct2 .c2x-bar a.c2x-bar__text{color:#fff;background:#221E1E;border:1px solid #3A3434;white-space:nowrap}
  .ct2 .c2x-bar a.c2x-bar__apply{color:#0E0C0C;background:#0CC4A0}
  body.has-c2x-bar{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){.c2x-bar{transition:none}}.ct2 .ds-main .c2x-formnote{display:flex;align-items:center;gap:.45rem;margin:0 0 1rem;padding:.55rem .8rem;border-radius:10px;background:rgb(12 196 160/.1);font:500 .85rem/1.3 var(--c2-sans);color:#006E64}
@media (max-width:767px){.ct2 .c2x-bar a.c2x-bar__text{color:#fff!important;font-weight:600;text-decoration:none}.ct2 .c2x-bar a.c2x-bar__text::before{background:#7FE3CF}}
.c2-proofline__start{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:999px;background:rgb(12 196 160/.14);color:#006E64;font:600 .78rem/1.2 var(--c2-sans)}.c2-proofline__start::before{content:'';width:.45rem;height:.45rem;border-radius:50%;background:#0CC4A0;animation:ctSmsPulse 2.2s ease-out infinite}
.ct2 .ds-main :is(.c2-sec--night,.c2h-hero) .c2-proofline__start{background:rgb(127 227 207/.14);color:#7FE3CF}

/* ==== BLS state pay: tile map (c2sm) + city state cards (c2sp) ==== */
.c2sm{margin-top:clamp(2rem,1.5rem + 2vw,3.5rem);padding:clamp(1.1rem,.9rem + 1vw,1.8rem);border-radius:24px;background:#fff;border:1px solid rgb(20 18 19/.08)}
.c2sm__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem}
.c2sm__head h3{margin:.35rem 0 0;font:600 clamp(1.2rem,1rem + .8vw,1.6rem)/1.2 var(--c2-sans);letter-spacing:-.02em}
.c2sm__pick select{min-height:44px;padding:0 2.2rem 0 .9rem;border-radius:12px;border:1px solid rgb(20 18 19/.18);background:#F7F6F2;font:500 .9rem/1 var(--c2-sans);color:#141213}
.c2sm__out{min-height:1.5em;margin:.9rem 0 1rem;font:500 .92rem/1.4 var(--c2-mono);color:var(--ds-ink-2)}
.c2sm__out b{color:#141213}
.c2sm__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(8,auto);gap:4px;margin:0;padding:0;list-style:none}
.c2sm__t{display:grid;place-items:center;align-content:center;aspect-ratio:1;border-radius:8px;background:color-mix(in srgb,var(--acc) var(--p),#fff);color:#141213;cursor:default;transition:transform .15s,box-shadow .15s;outline:none}
.c2sm__t[data-dark]{background:color-mix(in srgb,var(--acc-ink) calc(var(--p) - 30%),var(--acc));color:#fff}
.c2sm__t b{font:600 clamp(.55rem,.4rem + .5vw,.8rem)/1 var(--c2-mono)}
.c2sm__t span{font:500 clamp(.5rem,.35rem + .4vw,.68rem)/1.1 var(--c2-mono);opacity:.85}
.c2sm__t:hover,.c2sm__t:focus-visible,.c2sm__t.is-on{transform:scale(1.12);box-shadow:0 0 0 2px #141213;z-index:1;position:relative}
.c2sm__t--na{background:#F1EFEA;color:#B9B0AD}
.c2sm__legend{display:flex;align-items:center;gap:.6rem;margin:.9rem 0 0;font:500 .75rem/1 var(--c2-mono);color:var(--ds-ink-3)}
.c2sm__legend i{flex:0 1 180px;height:8px;border-radius:4px;background:linear-gradient(90deg,color-mix(in srgb,var(--acc) 12%,#fff),var(--acc),var(--acc-ink))}
@media (max-width:640px){.c2sm__t span{display:none}.c2sm__grid{gap:3px}.c2sm__t{border-radius:5px}}
.c2sp__grid{display:grid;gap:1rem;margin:0;padding:0;list-style:none}
@media (min-width:700px){.c2sp__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2sp__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2sp__grid li{display:grid;gap:.45rem;padding:1.2rem;border-radius:20px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 16%,#fff),#fff 70%);border:1px solid color-mix(in srgb,var(--acc) 35%,#fff)}
.c2sp__grid b{font:600 clamp(1.8rem,1.5rem + 1vw,2.3rem)/1 var(--c2-sans);letter-spacing:-.04em;color:#141213}
.c2sp__grid small{font:500 .8rem/1.3 var(--c2-mono);color:var(--acc-ink)}
.c2sp__fine{margin:1rem 0 0;font-size:.8rem;color:var(--ds-ink-3);text-align:center}
/* ==== program page additions: curriculum map (c2cm), week (c2wk), fit check (c2fit) ==== */
.c2sm__grid{max-width:860px;margin-inline:auto}
.c2cm{margin:1.5rem 0 2rem;padding:1.2rem 1.3rem 1.4rem;border-radius:22px;background:#141213;color:#E9E4E2;overflow:hidden}
.c2cm .c2p-lab{color:var(--acc)}
.c2cm ol{position:relative;display:flex;gap:0;margin:1rem 0 0;padding:0 0 .4rem;list-style:none;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#3A3434 transparent}
.c2cm li{position:relative;flex:0 0 auto;display:grid;justify-items:center;gap:.55rem;width:118px;padding:0 .35rem;text-align:center}
.c2cm li::before{content:'';position:absolute;top:21px;left:-50%;width:100%;height:3px;background:#2F2A2A;z-index:0}
.c2cm li:first-child::before{display:none}
.c2cm li::after{content:'';position:absolute;top:21px;left:-50%;width:0;height:3px;background:var(--acc);z-index:0;transition:width .35s ease;transition-delay:calc(var(--i) * .12s)}
.c2cm li:first-child::after{display:none}
.c2cm.is-lit li::after{width:100%}
.c2cm__n{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#1F1B1C;border:2px solid #3A3434;font:600 .85rem/1 var(--c2-mono);color:#B9B0AD;transition:all .35s ease;transition-delay:calc(var(--i) * .12s)}
.c2cm.is-lit .c2cm__n{background:var(--acc);border-color:var(--acc);color:#141213;box-shadow:0 0 0 5px color-mix(in srgb,var(--acc) 22%,transparent)}
.c2cm li.is-ai .c2cm__n::after{content:'AI';position:absolute;top:-8px;right:-10px;padding:2px 4px;border-radius:5px;background:#FEC853;color:#141213;font:700 .5rem/1 var(--c2-mono)}
.c2cm__t{font:500 .78rem/1.3 var(--c2-sans);color:#E9E4E2}
.c2cm__end .c2cm__n{background:#FEC853;border-color:#FEC853;color:#141213}
@media (prefers-reduced-motion:reduce){.c2cm li::after,.c2cm__n{transition:none}}
.c2wk__loop{display:grid;gap:1rem;margin:0;padding:0;list-style:none;counter-reset:w}
@media (min-width:760px){.c2wk__loop{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2wk__loop{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2wk__loop li{position:relative;display:grid;align-content:start;gap:.5rem;padding:1.3rem;border-radius:20px;background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 14%,#fff),#fff 70%);border:1px solid color-mix(in srgb,var(--acc) 32%,#fff)}
@media (min-width:1100px){.c2wk__loop li:not(:last-child)::after{content:'\2192';position:absolute;right:-.85rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;display:grid;place-items:center;border-radius:50%;background:#141213;color:#fff;font-size:.75rem;z-index:1}}
.c2wk__ic{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#141213;color:var(--acc);font:700 .9rem/1 var(--c2-mono)}
.c2wk__loop h3{margin:0;font:600 1.15rem/1.25 var(--c2-sans)}
.c2wk__loop p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.5}
.c2fit__grid{display:grid;gap:clamp(1.5rem,1rem + 2vw,3rem);align-items:center;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.c2fit__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}
.c2fit__video{display:grid;gap:1rem;justify-items:start}
.c2fit__video h2,.c2fit__video p{margin:0}
.c2fit__video p{color:var(--ds-ink-2)}
.c2fit__video .ds-video{width:100%;border-radius:20px;overflow:hidden}
.c2fit__out{display:grid;gap:.8rem;justify-items:start;padding-top:.3rem}
.c2fit__msg,.c2fit__cta{display:none}
.c2fit__msg{margin:0;font:500 .9rem/1.45 var(--c2-mono);color:#B9B0AD}
.c2fit__out[data-state='0'] .c2fit__msg--0,.c2fit__out[data-state='low'] :is(.c2fit__msg--low,.c2fit__cta--low),.c2fit__out[data-state='mid'] :is(.c2fit__msg--mid,.c2fit__cta--mid),.c2fit__out[data-state='high'] :is(.c2fit__msg--high,.c2fit__cta--high){display:block}
.c2fit__out[data-state='high'] .c2fit__msg--high{color:var(--acc)}
/* c2cm fit to width on desktop, scroll on phones */
.c2cm li{flex:1 0 84px;width:auto;padding:0 .2rem}
.c2cm__t{font-size:.74rem;overflow-wrap:anywhere}
@media (max-width:759px){.c2cm li{flex:0 0 104px}}
.c2cm ol{padding-top:10px}
.c2cm li::before,.c2cm li::after{top:31px}
/* same-background neighbours: no doubled gap */
.ct2 .ds-main :is(.c2wk + .c2-sec--white,.c2-sec--white + .c2fit,.c2-sec--paper + .c2mk){padding-top:0!important}

/* ==== plan finder (c2pp), what happens next (c2nx), sprint board (c2sb), AI lab demo (c2lab) 2026-09-24 ==== */
.c2pp__pick{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:0 auto 1.8rem}
.c2pp__pick button{appearance:none;cursor:pointer;padding:.7rem 1.1rem;border-radius:999px;border:1.5px solid #DDD6D3;background:#fff;color:#141213;font:500 .95rem/1.2 var(--c2-sans);transition:all .2s ease}
.c2pp__pick button:hover{border-color:#141213}
.c2pp__pick button[aria-pressed="true"]{background:#141213;border-color:#141213;color:#fff}
.c2pp__grid{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.c2pp__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c2pp__plan{position:relative;padding:1.4rem 1.4rem 1.1rem;border-radius:22px;background:#fff;border:1.5px solid #E7E1DE;transition:all .3s ease}
.c2pp__plan h3{margin:0 0 .8rem;font:600 1.25rem/1.2 var(--c2-sans);display:flex;align-items:center;gap:.5rem}
.c2pp__plan h3::before{content:'';width:12px;height:12px;border-radius:50%;background:var(--acc)}
.c2pp__plan dl{margin:0;display:grid}
.c2pp__plan dl div{display:grid;gap:.15rem;padding:.7rem 0;border-top:1px dashed #E7E1DE}
.c2pp__plan dt{font:600 .7rem/1.2 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ds-ink-2)}
.c2pp__plan dd{margin:0;font-size:.98rem;line-height:1.45;color:#141213}
.c2pp__match{position:absolute;top:-.8rem;right:1rem;padding:.3rem .7rem;border-radius:999px;background:var(--acc);color:#141213;font:700 .72rem/1 var(--c2-mono);opacity:0;transform:translateY(4px);transition:all .25s ease}
.c2pp[data-sel] .c2pp__plan{opacity:.55}
.c2pp[data-sel] .c2pp__plan.is-match{opacity:1;border-color:var(--acc);background:color-mix(in srgb,var(--acc) 8%,#fff);box-shadow:0 18px 40px -24px color-mix(in srgb,var(--acc-ink) 60%,transparent)}
.c2pp__plan.is-match .c2pp__match{opacity:1;transform:none}
.c2pp__foot{margin:1.6rem auto 0;text-align:center;color:var(--ds-ink-2);max-width:60ch}
.c2pp__foot a{font-weight:600;color:#006E64}

.c2nx__steps{display:grid;gap:1rem;margin:0;padding:0;list-style:none;grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.c2nx__steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.c2nx__steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.c2nx__steps li{position:relative;display:grid;align-content:start;gap:.5rem;padding:1.3rem;border-radius:20px;background:#FAF9F7;border:1px solid #ECE6E3}
.c2nx__n{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#141213;color:#0CC4A0;font:700 .85rem/1 var(--c2-mono)}
.c2nx__steps li:last-child .c2nx__n{background:#0CC4A0;color:#141213}
.c2nx__steps h3{margin:0;font:600 1.12rem/1.25 var(--c2-sans)}
.c2nx__steps p{margin:0;color:var(--ds-ink-2);font-size:.95rem;line-height:1.5}
@media (min-width:1100px){.c2nx__steps li:not(:last-child)::after{content:'';position:absolute;top:43px;right:-1rem;width:1rem;height:2px;background:#0CC4A0}}

.c2sb .c2-head{margin-bottom:1.8rem}
.c2sb__board{border-radius:22px;background:#1B1718;border:1px solid #2F2A2A;overflow:hidden;box-shadow:0 30px 60px -30px rgb(0 0 0/.6)}
.c2sb__bar{display:flex;align-items:center;gap:.4rem;padding:.75rem 1rem;border-bottom:1px solid #2F2A2A;font:500 .78rem/1 var(--c2-mono);color:#8F8784}
.c2sb__bar i{width:10px;height:10px;border-radius:50%;background:#3A3434}
.c2sb__bar i:first-child{background:#0CC4A0}
.c2sb__bar span:first-of-type{margin-left:.5rem}
.c2sb__ship{margin-left:auto;padding:.3rem .6rem;border-radius:999px;background:#FEC853;color:#141213;font-weight:700;opacity:0;transform:scale(.9);transition:all .3s ease}
.c2sb__board.is-shipped .c2sb__ship{opacity:1;transform:none}
.c2sb__cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;padding:1rem}
.c2sb__col{min-width:0;display:grid;align-content:start;gap:.6rem;padding:.7rem;border-radius:14px;background:#141213;min-height:300px}
.c2sb__h{margin:0;display:flex;justify-content:space-between;align-items:center;font:600 .72rem/1 var(--c2-mono);letter-spacing:.06em;text-transform:uppercase;color:#B9B0AD}
.c2sb__h b{padding:.2rem .45rem;border-radius:6px;background:#2F2A2A;color:#E9E4E2}
.c2sb__col ul{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.c2sb__card{display:grid;gap:.35rem;padding:.65rem .7rem;border-radius:10px;background:#231E1F;border:1px solid #332D2E;border-left:3px solid var(--c);color:#E9E4E2;font-size:.85rem;line-height:1.35;animation:c2sbIn .35s ease}
.c2sb__card span{justify-self:start;padding:.15rem .4rem;border-radius:5px;background:color-mix(in srgb,var(--c) 22%,transparent);color:var(--c);font:700 .62rem/1.1 var(--c2-mono);text-transform:uppercase;letter-spacing:.05em}
.c2sb__card--dev{--c:#0CC4A0}.c2sb__card--cyber{--c:#9ED11F}.c2sb__card--data{--c:#2FB8DA}.c2sb__card--qa{--c:#F08A24}
.c2sb__col[data-col="done"] .c2sb__card{opacity:.75}
.c2sb__col[data-col="done"] .c2sb__card span::before{content:'\2713  '}
@keyframes c2sbIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.c2sb__fine{margin:1rem 0 0;text-align:center;font:500 .8rem/1.4 var(--c2-mono);color:#8F8784}
@media (max-width:899px){.c2sb__cols{grid-template-columns:repeat(2,minmax(0,1fr))}.c2sb__col{min-height:0}}
@media (max-width:479px){.c2sb__cols{padding:.7rem;gap:.5rem}.c2sb__col{padding:.5rem}.c2sb__card{font-size:.78rem;padding:.55rem}}
@media (prefers-reduced-motion:reduce){.c2sb__card{animation:none}}

.c2lab{display:grid;gap:clamp(1.5rem,1rem + 2vw,3rem);align-items:center;margin-top:clamp(2.5rem,2rem + 2vw,4rem);grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.c2lab{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
.c2lab__copy{display:grid;gap:.8rem;justify-items:start}
.c2lab__copy h3{margin:0;font:600 clamp(1.4rem,1.2rem + .8vw,1.9rem)/1.2 var(--c2-sans)}
.c2lab__copy p{margin:0;color:var(--ds-ink-2)}
.c2lab__copy .c2p-lab{color:#006E64}
.c2lab__note{font:500 .8rem/1.4 var(--c2-mono);padding:.4rem .6rem;border-radius:8px;background:#FEF7E6;color:#7A5A00 !important}
.c2lab__win{margin:0;border-radius:22px;background:#141213;color:#E9E4E2;overflow:hidden;box-shadow:0 30px 60px -30px rgb(20 18 19/.55)}
.c2lab__bar{display:flex;align-items:center;gap:.4rem;padding:.75rem 1rem;border-bottom:1px solid #2F2A2A;font:500 .78rem/1 var(--c2-mono);color:#8F8784}
.c2lab__bar i{width:10px;height:10px;border-radius:50%;background:#3A3434}
.c2lab__bar i:first-child{background:#0CC4A0}
.c2lab__bar span{margin-left:.5rem}
.c2lab__log{display:grid;align-content:start;gap:.8rem;min-height:230px;max-height:340px;overflow-y:auto;padding:1.1rem 1.1rem .6rem}
.c2lab__sys{margin:0;font:500 .82rem/1.45 var(--c2-mono);color:#8F8784}
.c2lab__u{justify-self:end;max-width:85%;margin:0;padding:.6rem .85rem;border-radius:14px 14px 4px 14px;background:#0CC4A0;color:#141213;font-size:.93rem;font-weight:500}
.c2lab__r{margin:0;display:grid;gap:.4rem;font:500 .8rem/1.45 var(--c2-mono);color:#7FE3CF}
.c2lab__b{justify-self:start;max-width:92%;margin:0;padding:.7rem .9rem;border-radius:14px 14px 14px 4px;background:#231E1F;border:1px solid #332D2E;font-size:.93rem;line-height:1.5}
.c2lab__b.is-typing::after{content:'\258D';margin-left:2px;color:#0CC4A0;animation:c2labBlink 1s steps(1) infinite}
@keyframes c2labBlink{50%{opacity:0}}
.c2lab__qs{display:flex;flex-wrap:wrap;gap:.5rem;padding:.9rem 1.1rem 1.1rem;border-top:1px solid #2F2A2A}
.c2lab__qs button{appearance:none;cursor:pointer;padding:.5rem .8rem;border-radius:999px;border:1px solid #3A3434;background:#1F1B1C;color:#E9E4E2;font:500 .85rem/1.2 var(--c2-sans);transition:all .2s ease}
.c2lab__qs button:hover,.c2lab__qs button:focus-visible{border-color:#0CC4A0;color:#7FE3CF}
.c2lab__qs button:disabled{opacity:.45;cursor:default}
.ct2 .ds-main .c2pp + .c2-sec--white{padding-top:0!important}

/* ==== CTA band v2 (2026-09-24): dark terminal card instead of the yellow-to-teal gradient ==== */
.ct2 .ds-main .c2-band{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(55% 130% at 100% 0%,rgb(12 196 160/.30),transparent 62%),radial-gradient(45% 110% at 0% 100%,rgb(12 196 160/.10),transparent 60%),#141213;border:1px solid #2A2526;color:#fff;box-shadow:0 30px 60px -36px rgb(20 18 19/.7)}
.ct2 .ds-main .c2-band::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle,rgb(255 255 255/.07) 1px,transparent 1.5px) 0 0/22px 22px;-webkit-mask:linear-gradient(90deg,transparent 0,#000 55%);mask:linear-gradient(90deg,transparent 0,#000 55%)}
.ct2 .ds-main .c2-band h2{color:#fff}
.ct2 .ds-main .c2-band h2 em{color:#7FE3CF}
.ct2 .ds-main .c2-band p{color:#C9C1BE}
.ct2 .ds-main .c2-band__cta small{color:#B9B0AD}
.ct2 .ds-main .c2-band__cta small a{color:#fff}
.ct2 .ds-main .c2-band .c2-btn--dark{background:#0CC4A0;border-color:#0CC4A0;color:#141213}
.ct2 .ds-main .c2-band .c2-btn--dark:hover,.ct2 .ds-main .c2-band .c2-btn--dark:focus-visible{background:#7FE3CF;border-color:#7FE3CF;color:#141213}
.ct2 .ds-main .c2-band .c2-btn:not(.c2-btn--dark){color:#fff;border-color:rgb(255 255 255/.35)}
.ct2 .ds-main .c2-band .c2-proofline{color:#C9C1BE}
.ct2 .ds-main .c2-band .c2-proofline a{color:#E9E4E2}
.ct2 .ds-main .c2-band .c2-proofline__start{background:rgb(127 227 207/.14);color:#7FE3CF}
.ct2 .ds-main .c2-band a[href^="sms:"]:not(.c2-btn){color:#7FE3CF}.ct2 .ds-main .c2-band h2 em{color:#7FE3CF!important}
.ct2 .ds-main .c2-band{background:radial-gradient(50% 140% at 100% 0%,rgb(12 196 160/.42),transparent 65%),radial-gradient(40% 120% at 0% 100%,rgb(12 196 160/.14),transparent 60%),#141213}

/* CTA band layout v2: heading left, button + admissions link stacked right, proof line as a full-width footer row */
.ct2 .ds-main .c2-band .c2-proofline{justify-content:flex-start;margin-top:.4rem;padding-top:1.1rem;border-top:1px solid rgb(255 255 255/.09);width:100%}
@media (min-width:900px){
.ct2 .ds-main .c2-band{grid-template-columns:minmax(0,1fr) auto;column-gap:3rem;row-gap:0}
.ct2 .ds-main .c2-band__cta{display:contents}
.ct2 .ds-main .c2-band>div:first-child{grid-column:1;grid-row:1/span 2;align-self:center}
.ct2 .ds-main .c2-band__cta>.c2-btn{grid-column:2;grid-row:1;align-self:end;justify-content:center;min-width:220px}
.ct2 .ds-main .c2-band__cta>small{grid-column:2;grid-row:2;justify-self:center;align-self:start;margin-top:.7rem;text-align:center}
.ct2 .ds-main .c2-band__cta>.c2-proofline{grid-column:1/-1;grid-row:3;justify-content:flex-start;margin-top:1.6rem}
}
/* ==== hero background options (c2bg-*), 2026-09-24 ==== */
.ct2 .ds-main .c2bg{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(420px,52vw,560px);display:grid;align-items:center;background-image:none;background-color:#F7F6F2}
.c2bg__layer{position:absolute;inset:0;z-index:0;pointer-events:none;width:100%;height:100%}
.c2bg__inner{position:relative;z-index:1}
.c2bg__copy{max-width:620px;display:grid;gap:1rem;justify-items:start}
.ct2 .ds-main .c2bg .c2bg__h{margin:0;font-size:clamp(2.6rem,1.6rem + 3.6vw,4.6rem);line-height:.98;letter-spacing:-.045em}
.ct2 .ds-main .c2bg .c2bg__h em{color:var(--acc-ink)}
.ct2 .ds-main .c2bg .c2p-hero__lede{margin:0}
.c2bg-note{text-align:center;font:500 .9rem/1.4 var(--c2-mono);color:var(--ds-ink-2)}
.ct2 .ds-main .c2bg-intro{padding-bottom:1rem}
@media (max-width:760px){.c2bg__layer{opacity:.55}}

/* 1 binary drift */
.c2bg-bin{display:grid;grid-auto-flow:column;grid-auto-columns:22px;justify-content:end;gap:0;padding:0 1rem;font:500 15px/22px var(--c2-mono);color:rgb(20 18 19/.10);-webkit-mask:linear-gradient(90deg,transparent 0 30%,#000 72%);mask:linear-gradient(90deg,transparent 0 30%,#000 72%);overflow:hidden}
.c2bg-bin span{display:block;text-align:center;white-space:pre;transition:color 1.2s ease}
.c2bg-bin span.is-on{color:rgb(12 196 160/.75)}
.c2bg--binary{background-color:#F6F7F4!important}

/* 2 ghost code */
.c2bg-code{display:flex;align-items:center;justify-content:flex-end;padding-right:clamp(0rem,4vw,5rem);-webkit-mask:linear-gradient(90deg,transparent 0 38%,#000 70%);mask:linear-gradient(90deg,transparent 0 38%,#000 70%)}
.c2bg-code pre{margin:0;font:500 clamp(13px,1.1vw,17px)/1.75 var(--c2-mono);color:color-mix(in srgb,var(--acc-ink) 20%,transparent);white-space:pre;background:none;border:0;padding:0}
.c2bg-code pre .c2bg-code__type{color:color-mix(in srgb,var(--acc-ink) 55%,transparent)}
.c2bg-code pre .c2bg-code__type::after{content:'';display:inline-block;width:.55em;height:1.1em;margin-left:2px;vertical-align:-.2em;background:var(--acc);animation:c2bgBlink 1s steps(1) infinite}
@keyframes c2bgBlink{50%{opacity:0}}
.c2bg--code{background-image:radial-gradient(55% 70% at 90% 20%,color-mix(in srgb,var(--acc) 16%,transparent),transparent 70%)!important}
.c2bg-pick{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
.c2bg-pick button{appearance:none;cursor:pointer;padding:.4rem .75rem;border-radius:999px;border:1px solid #DDD6D3;background:#fff;font:500 .8rem/1.2 var(--c2-mono);color:#141213}
.c2bg-pick button[aria-pressed="true"]{background:#141213;border-color:#141213;color:#fff}

/* 3 git graph */
.c2bg-git{-webkit-mask:linear-gradient(90deg,transparent 0 30%,#000 60%);mask:linear-gradient(90deg,transparent 0 30%,#000 60%);opacity:.5}
.c2bg-git path{stroke-dasharray:1400;stroke-dashoffset:1400;animation:c2bgDraw 2.6s cubic-bezier(.4,0,.2,1) forwards}
.c2bg-git path:nth-child(2){animation-delay:.3s}.c2bg-git path:nth-child(3){animation-delay:.55s}.c2bg-git path:nth-child(4){animation-delay:.8s}.c2bg-git path:nth-child(5){animation-delay:1.05s}
.c2bg-git__main{stroke-dasharray:none!important;stroke-dashoffset:0!important;animation:none!important;opacity:.6}
.c2bg-git circle{opacity:0;animation:c2bgPop .4s ease forwards;animation-delay:calc(1.4s + var(--d))}
.c2bg-git__tag{font:600 18px var(--c2-mono);fill:#141213;opacity:0;animation:c2bgPop .5s ease 3.4s forwards}
@keyframes c2bgDraw{to{stroke-dashoffset:0}}
@keyframes c2bgPop{from{opacity:0}to{opacity:1}}
.c2bg--git{background-image:radial-gradient(circle,rgb(0 106 133/.10) 1px,transparent 1.4px)!important;background-size:20px 20px!important}

/* 4 state map */
.c2bg-map{display:flex;align-items:center;justify-content:flex-end;padding-right:clamp(0rem,3vw,4rem);-webkit-mask:linear-gradient(90deg,transparent 0 35%,#000 65%);mask:linear-gradient(90deg,transparent 0 35%,#000 65%)}
.c2bg-map__grid{display:grid;grid-template-columns:repeat(12,clamp(28px,3.2vw,46px));grid-auto-rows:clamp(28px,3.2vw,46px);gap:5px}
.c2bg-map__grid i{border-radius:8px;background:rgb(0 110 100/.07);border:1px solid rgb(0 110 100/.08)}
.c2bg-map__grid i.is-on{position:relative;display:grid;place-items:center;background:#0CC4A0;border-color:#0CC4A0}
.c2bg-map__grid i.is-on b{font:700 .75rem/1 var(--c2-mono);color:#141213}
.c2bg-map__grid i.is-on::after{content:'';position:absolute;inset:-6px;border-radius:12px;border:2px solid #0CC4A0;animation:c2bgRing 2.4s ease-out infinite}
@keyframes c2bgRing{from{opacity:.7;transform:scale(.9)}to{opacity:0;transform:scale(1.6)}}
.c2bg--map{background-color:#F4F8F4!important}

/* 5 network pulse */
.c2bg-net{-webkit-mask:linear-gradient(90deg,transparent 0 30%,#000 65%);mask:linear-gradient(90deg,transparent 0 30%,#000 65%)}
.c2bg-net circle{fill:rgb(20 18 19/.16);transition:fill .8s ease,r .8s ease}
.c2bg-net circle.is-on{fill:#2FB8DA}
.c2bg-net line{stroke:#2FB8DA;stroke-width:1.6;opacity:0;transition:opacity .9s ease}
.c2bg-net line.is-on{opacity:.55}
.c2bg--net{background-color:#FBF6F2!important;background-image:radial-gradient(45% 60% at 90% 20%,rgb(47 184 218/.14),transparent 70%)!important}

/* 6 radar */
.c2bg--radar{background-color:#F7FBEC!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='100'%3E%3Cpath d='M28 66L0 50V16L28 0l28 16v34L28 66zm0 34V66' fill='none' stroke='%234A6B00' stroke-opacity='.10'/%3E%3C/svg%3E")!important;background-size:56px 100px!important}
.c2bg-radar{-webkit-mask:linear-gradient(90deg,transparent 0 40%,#000 70%);mask:linear-gradient(90deg,transparent 0 40%,#000 70%)}
.c2bg-radar__disc{position:absolute;right:-8%;top:50%;width:min(62vw,760px);aspect-ratio:1;transform:translateY(-50%);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 58px,rgb(74 107 0/.13) 58px 59px);overflow:hidden}
.c2bg-radar__beam{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgb(158 209 31/.30),transparent 60deg);animation:c2bgSpin 8s linear infinite}
.c2bg-radar__disc b{position:absolute;left:var(--x);top:var(--y);width:10px;height:10px;border-radius:50%;background:#7FA800;box-shadow:0 0 0 6px rgb(158 209 31/.25);opacity:0;animation:c2bgBlip 8s linear infinite;animation-delay:var(--d)}
@keyframes c2bgSpin{to{transform:rotate(360deg)}}
@keyframes c2bgBlip{0%{opacity:0}2%{opacity:1}30%{opacity:0}100%{opacity:0}}

/* 7 trend */
.c2bg-trend{-webkit-mask:linear-gradient(90deg,transparent 0 40%,#000 70%);mask:linear-gradient(90deg,transparent 0 40%,#000 70%)}
.c2bg-trend__bars rect{fill:rgb(0 106 133/.10);transform-box:fill-box;transform-origin:bottom;transform:scaleY(0);animation:c2bgRise .8s cubic-bezier(.4,0,.2,1) forwards;animation-delay:var(--d)}
.c2bg-trend__line{fill:none;stroke:#2FB8DA;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;opacity:.55;stroke-dasharray:1000;stroke-dashoffset:1000;animation:c2bgDraw 2.4s cubic-bezier(.4,0,.2,1) .6s forwards}
.c2bg-trend__dots circle{fill:#006A85;opacity:0;animation:c2bgPop .4s ease forwards}
.c2bg-trend__dots circle:nth-child(1){animation-delay:1.9s}.c2bg-trend__dots circle:nth-child(2){animation-delay:2.3s}.c2bg-trend__dots circle:nth-child(3){animation-delay:2.7s}
@keyframes c2bgRise{to{transform:scaleY(1)}}
.c2bg--trend{background-color:#F1F9FC!important;background-image:radial-gradient(circle,rgb(0 106 133/.11) 1.2px,transparent 1.6px)!important;background-size:22px 22px!important}

/* 8 glyph */
.c2bg-glyph{display:flex;align-items:center;justify-content:flex-end;font:300 clamp(16rem,34vw,34rem)/1 var(--c2-mono);letter-spacing:-.08em;color:transparent;-webkit-text-stroke:2px rgb(0 110 100/.14);white-space:nowrap;transform:translateX(12%)}
.c2bg--glyph{background-color:#FAF9F7!important;background-image:radial-gradient(45% 70% at 90% 0%,rgb(12 196 160/.10),transparent 70%)!important}

@media (prefers-reduced-motion:reduce){
.c2bg-git path,.c2bg-git circle,.c2bg-git__tag,.c2bg-trend__bars rect,.c2bg-trend__line,.c2bg-trend__dots circle{animation:none!important;stroke-dashoffset:0;opacity:1;transform:none}
.c2bg-git{opacity:.5}
.c2bg-trend__line{opacity:.55}
.c2bg-radar__beam{animation:none}
.c2bg-radar__disc b{animation:none;opacity:.6}
.c2bg-map__grid i.is-on::after{animation:none;opacity:0}
.c2bg-code pre .c2bg-code__type::after{animation:none}
}

/* c2bg fixes */
.ct2 .ds-main .c2bg{background-size:auto;background-repeat:no-repeat}
.ct2 .ds-main :is(.c2bg--git,.c2bg--trend,.c2bg--radar){background-repeat:repeat!important}
.ct2 .ds-main .c2bg .c2-kicker{justify-self:start}
.c2bg-git{opacity:.4;-webkit-mask:linear-gradient(90deg,transparent 0 40%,#000 70%);mask:linear-gradient(90deg,transparent 0 40%,#000 70%)}
.c2bg-git__tag{font:500 13px var(--c2-mono)!important}
.ct2 .ds-main .c2bg svg.c2bg__layer{width:100%!important;height:100%!important;max-width:none!important}
.c2bg-net{-webkit-mask:linear-gradient(90deg,transparent 0 42%,#000 70%);mask:linear-gradient(90deg,transparent 0 42%,#000 70%)}
.c2bg-net circle.is-on{r:6px}
.c2bg-net line{stroke-width:2}
.c2bg-net line.is-on{opacity:.7}
/* c2bg tone-down */
.c2bg-radar__beam{background:conic-gradient(from 0deg,rgb(158 209 31/.16),transparent 50deg)}
.c2bg-radar__disc b{background:#9ED11F;box-shadow:0 0 0 6px rgb(158 209 31/.22)}
.c2bg-trend{-webkit-mask:linear-gradient(90deg,transparent 0 46%,#000 76%);mask:linear-gradient(90deg,transparent 0 46%,#000 76%)}
.c2bg-trend__line{opacity:.32!important}
.c2bg-trend__bars rect{fill:rgb(0 106 133/.06)}
.c2bg-trend__dots circle{fill:#2FB8DA}
.c2bg-trend__dots{opacity:.5}
.c2bg-glyph{transform:translateX(3%)}
/* ==== hero backgrounds on real heroes (c2bg-on), 2026-09-25 ==== */
.ct2 .ds-main .c2bg-on{position:relative;isolation:isolate;overflow:hidden}
.ct2 .ds-main .c2bg-on>.ds-container{position:relative;z-index:1}
.ct2 .ds-main .c2bg-on svg.c2bg__layer{width:100%!important;height:100%!important;max-width:none!important}
.ct2 .ds-main .c2bg-on>.c2bg__layer{position:absolute!important;inset:0;z-index:0;margin:0}

/* ==== city hero: map above, pay card lower right, no rings (Natalie), 2026-09-25 ==== */
.ct2 .ds-main .c2p-hero.c2bg--map{background-image:radial-gradient(50% 60% at 88% 15%,rgb(12 196 160/.14),transparent 70%)!important}
.ct2 .ds-main .c2bg--map .c2bg-map{-webkit-mask:none;mask:none;align-items:flex-start;justify-content:flex-end;padding:22px max(20px,calc((100% - 1264px)/2 + 32px)) 0 0;opacity:1}
.ct2 .ds-main .c2bg--map .c2bg-map__grid{grid-template-columns:repeat(12,22px);grid-auto-rows:22px;gap:4px}
.ct2 .ds-main .c2bg--map .c2bg-map__grid i{border-radius:5px;background:rgb(0 110 100/.09);border-color:rgb(0 110 100/.10)}
.ct2 .ds-main .c2bg--map .c2bg-map__grid i.is-on b{font-size:.58rem}
.ct2 .ds-main .c2bg--map .c2bg-map__grid i.is-on::after{inset:-4px;border-radius:8px}
@media (min-width:1100px){
.ct2 .ds-main .c2bg--map .c2p-hero__grid{align-items:end}
.ct2 .ds-main .c2bg--map .c2p-hero__grid>aside{align-self:end;margin-top:200px}
.ct2 .ds-main .c2bg--map .c2p-hero__copy{align-self:center}
}
@media (max-width:1099px){
.ct2 .ds-main .c2bg--map .c2bg-map{padding:14px 16px 0 0;opacity:.6}
.ct2 .ds-main .c2bg--map .c2bg-map__grid{grid-template-columns:repeat(12,14px);grid-auto-rows:14px;gap:3px}
.ct2 .ds-main .c2bg--map .c2bg-map__grid i{border-radius:3px}
.ct2 .ds-main .c2bg--map .c2bg-map__grid i.is-on b{display:none}
}
.ct2 .ds-main .c2bg--map .c2bg-map__grid i.is-on{background:#0CC4A0;border-color:#0CC4A0}
.ct2 .ds-main .c2bg--map .c2bg-map__grid i.is-on b{color:#141213}
/* glance panels with 4 items: 4 columns, no empty 5th cell (2026-09-25) */
@media (min-width:900px){.ct2 .ds-main .c2p-glance__grid:not(:has(>:nth-child(5))){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:767px){.ct2 .ds-main .c2bg--map .c2bg-map{display:none}}

/* 2026-09-25 hero backgrounds: hide the old hero art where a new background layer is active */
.ct2 .ds-main .c2bg-on{background-image:none!important}
.ct2 .ds-main .c2bg-on::after{display:none!important}
.ct2 .ds-main .c2bg-on .c2-matrix{display:none!important}

/* 2026-09-25 headings in IBM Plex Mono, all caps (Natalie picked in the font preview: Plex Mono, all caps, no serif accent, section headings too, 100%) */
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/ibmplexmono-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/ibmplexmono-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
.ct2{--ct-head:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.ct2 .ds-main h1,.ct2 .ds-main h2{font-family:var(--ct-head)!important;letter-spacing:-0.02em!important}
.ct2 .ds-main h1{font-weight:700!important}
.ct2 .ds-main h1 *,.ct2 .ds-main h2 *{font-family:inherit!important;font-style:normal!important;font-weight:inherit!important;letter-spacing:inherit!important}
.ct2 .ds-main h1,.ct2 .ds-main h2{text-transform:uppercase!important;line-height:1.02!important}
.ct2 .ds-main h1,.ct2 .ds-main h2,.ct2 .ds-main h3{overflow-wrap:break-word}
/* Plex Mono headings: phones. Mono caps run wide (0.6em per letter), so the H1 is sized so a 13-letter word (CYBERSECURITY) fits the column */
@media (max-width:600px){.ct2 .ds-main h1{font-size:clamp(26px,calc((100vw - 44px) / 8),44px)!important}}

/* 2026-09-25 one mono: labels, pills, code and stats move from Geist Mono to IBM Plex Mono; card titles (H3) stay Geist (Natalie) */
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibmplexmono-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibmplexmono-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
.ct2,body.ct2{--ds-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--c2-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.ct2 .ds-main h3 em,.ct2 .ds-main h3 i{font-family:var(--c2-sans);font-style:normal}

/* 2026-09-25 swipe rows on phones: cards never fade in, they are always visible */
@media (max-width:699px){.c2-cards>.c2-rv,.c2-journeys>.c2-rv,.c2-rail>.c2-rv{opacity:1!important;translate:none!important}}

/* 2026-09-25 homepage program card names always on one line: the name column is a size container and the name scales to it (AI Software Engineering, the longest, is about 10.8em wide) */
.c2-programs .c2-card__top{align-self:stretch;box-sizing:border-box;width:100%}
.c2-programs .c2-card__name{flex:1 1 auto;min-width:0;container-type:inline-size}
.c2-programs .c2-card h3{white-space:nowrap;font-size:min(clamp(1.6rem,1.35rem + .8vw,2.1rem),calc(100cqi / 10.9))}
@media (max-width:699px){.c2-programs .c2-card h3{font-size:min(1.5rem,calc(100cqi / 10.9))}}
@media (max-width:1023px){.c2-programs .c2-card__top{flex-direction:column;align-items:flex-start;gap:.75rem}.c2-programs .c2-card__name{width:100%}}

/* mobile fixes 2026-09-26: menu hides sticky bar; program cards full-width code windows + aligned CTA */
html.ds-lock .c2x-bar{transform:translateY(110%)!important;visibility:hidden!important}
@media (max-width:699px){
.c2-programs .c2-card>.c2-ui{align-self:stretch;width:auto;max-width:none;box-sizing:border-box}
.c2-programs .c2-card>.c2-card__cta{align-self:stretch;justify-content:center}
.c2-programs .c2-ui:has(.c2-ui__pill) .c2-ui__body{padding-bottom:2.6rem}
}
/* program card code windows: grow instead of clipping when a pill sits under the last line */
.c2-programs .c2-card>.c2-ui:not(.c2-ui--chart){height:auto;min-height:148px}
.c2-programs .c2-ui:not(.c2-ui--chart):has(.c2-ui__pill) .c2-ui__body{padding-bottom:2.6rem}
@media (max-width:699px){.c2-programs .c2-card>.c2-ui:not(.c2-ui--chart){min-height:132px}
.c2-programs .c2-card>.c2-card__cta{font-size:.9375rem;padding-inline:1rem;gap:.5rem;white-space:nowrap}}
@media (max-width:359px){.c2-programs .c2-card>.c2-card__cta{font-size:.875rem;padding-inline:.75rem;letter-spacing:-.01em}}
.c2-programs .c2-card>.c2-ui--chart{height:169px}
/* speed 2026-09-26: animations pause while their section is off screen (class set by ct2.js) */
.c2-off,.c2-off *,.c2-off *::before,.c2-off *::after{animation-play-state:paused!important}
/* hero CTAs side by side on phones, 2026-09-26 (overrides the flex:1 1 100% stack above) */
@media (max-width:599px){.c2-hero__copy .c2-actions{flex-wrap:nowrap;gap:.5rem;width:100%}.c2-hero__copy .c2-btn{flex:1 1 auto;min-width:0;padding:0 .7rem;gap:.4rem;font-size:.9375rem;white-space:nowrap}}
@media (max-width:359px){.c2-hero__copy .c2-btn{font-size:.875rem;padding:0 .55rem}}
