/* Start custom CSS *//* ===== Elementor wrapper adapter: full-bleed, let .shell control width ===== */
.elementor-section.elementor-section-boxed > .elementor-container,
.elementor-section > .elementor-container { max-width: none !important; padding-left: 0 !important; padding-right: 0 !important; }
.elementor-widget-wrap { padding: 0 !important; }
.elementor-column-gap-default > .elementor-column > .elementor-element-populated { padding: 0 !important; }
.elementor-widget-html .elementor-widget-container { padding: 0 !important; }
.elementor-widget-shortcode:has(.stnav) { margin-block-end: 0 !important; margin-bottom: 0 !important; }
.elementor-section:has(.stnav) .elementor-widget-wrap,
.elementor-section:has(.stnav) .elementor-column { padding: 0 !important; }

/* ============ Brand: SocialTalent (shared) ============ */
@font-face { font-family: "TT Hoves Pro"; src: url('/wp-content/themes/socialtalent-v3/public/fonts/TT%20Hoves%20Pro/woff2/TT_Hoves_Pro_Regular.woff2') format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "TT Hoves Pro"; src: url('/wp-content/themes/socialtalent-v3/public/fonts/TT%20Hoves%20Pro/woff2/TT_Hoves_Pro_Medium.woff2') format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "TT Hoves Pro"; src: url('/wp-content/themes/socialtalent-v3/public/fonts/TT%20Hoves%20Pro/woff2/TT_Hoves_Pro_DemiBold.woff2') format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "TT Hoves Pro"; src: url('/wp-content/themes/socialtalent-v3/public/fonts/TT%20Hoves%20Pro/woff2/TT_Hoves_Pro_Bold.woff2') format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
:root {
    --frost:   #EBF5EB;
    --pastel:  #C2F5C4;
    --lime:    #96F782;
    --leaf:    #00A75C;
    --emerald: #147054;
    --forest:  #124036;
    --ocean:   #03261F;
    --ink:     #03261F;
    --paper:   #ffffff;
    --font: "TT Hoves Pro", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --r:        18px;
    --r-lg:     28px;
    --r-pill:   999px;
    --shadow:    0 25px 25px rgba(3,38,31,0.30);
    --shadow-sm: 0 12px 18px rgba(3,38,31,0.14);
  }
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
    font-family: var(--font);
    font-weight: 400;
    color: var(--ink);
    background: var(--paper);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    line-height: 1.4;
  }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: 0; background: none; color: inherit; }
img, svg { display: block; max-width: 100%; }
.shell { max-width: 1440px; margin: 0 auto; padding: 0 40px; }
@media (max-width: 720px) {
.shell { padding: 0 20px; }
}
/* ============ Buttons ============ */
.btn {
    display: inline-flex; align-items: center; gap: 10px;
    height: 48px; padding: 0 22px;
    border-radius: var(--r-pill);
    font-weight: 600; font-size: 15px;
    transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
    white-space: nowrap;
  }
.btn:hover { transform: translateY(-1px); }
.btn:active { transform: translateY(0); }
.btn--primary { background: var(--lime); color: var(--ocean); }
.btn--primary:hover { background: #b6ffa5; }
.btn--solid-dark { background: var(--ocean); color: var(--frost); }
.btn--solid-dark:hover { background: var(--forest); }
.btn--ghost-light { color: var(--frost); border: 1px solid rgba(235,245,235,0.28); }
.btn--ghost-light:hover { background: rgba(235,245,235,0.06); }
.btn--ghost-dark { color: var(--ocean); border: 1px solid rgba(3,38,31,0.18); }
.btn--ghost-dark:hover { background: rgba(3,38,31,0.04); }
.btn .arrow { display: inline-block; transition: transform .2s ease; }
.btn:hover .arrow { transform: translateX(3px); }
/* ============ Nav ============ */
/* ============ Eyebrow ============ */
.eyebrow {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 8px 14px 8px 12px;
    border-radius: var(--r-pill);
    background: transparent;
    border: 1px solid rgba(0,167,92,0.25);
    color: var(--leaf);
    font-size: 12px; font-weight: 700;
    letter-spacing: 0.16em; text-transform: uppercase;
  }
.eyebrow .dot { display: none; }
.eyebrow--light {
    background: transparent;
    border-color: rgba(150,247,130,0.28);
    color: var(--lime);
  }
/* ============ HERO (light) ============ */
.hero {
    position: relative;
    background:
      radial-gradient(70% 60% at 100% 100%, rgba(0,167,92,0.08) 0%, rgba(0,167,92,0) 60%),
      radial-gradient(60% 60% at 0% 0%, rgba(150,247,130,0.18) 0%, rgba(150,247,130,0) 65%),
      var(--frost);
    color: var(--ocean);
    overflow: hidden;
    padding: 56px 0 50px;
  }
.hero__watermark {
    position: absolute;
    right: -140px;
    top: -140px;
    width: 900px;
    height: 900px;
    z-index: 0;
    pointer-events: none;
    opacity: 0.04;
    color: var(--leaf);
    transform: rotate(12deg);
    transform-origin: center;
  }
.hero__watermark svg { width: 100%; height: 100%; display: block; }
.hero__watermark svg path { fill: currentColor; }
.hero .shell { position: relative; z-index: 1; }
.hero__grid {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 56px;
    align-items: center;
    min-height: 620px;
  }
.hero__center {
    text-align: center;
    max-width: 1040px;
    margin: 0 auto;
    padding: 24px 0 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
.hero__center .hero__supra {
    margin: 0 0 18px;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 0;
    border: 0;
    background: transparent;
    border-radius: 0;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--emerald);
  }
.hero__center .hero__supra::before {
    content: "";
    width: 3px;
    height: 22px;
    background: var(--lime);
    border-radius: 2px;
    flex: none;
  }
.hero__center .hero__title {
    margin: 0 auto 48px;
    max-width: 18ch;
  }
.persona-grid {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 40px;
  }
.persona-card {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 22px;
    align-items: flex-start;
    padding: 40px 36px 36px;
    min-height: 460px;
    background: var(--paper);
    border: 1px solid rgba(3,38,31,0.08);
    border-radius: var(--r-lg);
    text-align: left;
    color: var(--ocean);
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
  }
.persona-card__portrait {
    position: absolute;
    right: -10px;
    bottom: 0;
    width: 271px;
    height: auto;
    z-index: 2;
    pointer-events: none;
    user-select: none;
  }
.persona-card__portrait--sm {
    width: 222px;
    right: 20px;
    bottom: -20px;
  }
/* Wide trio cutout (3 faculty) anchored to the card's bottom-right */
.persona-card__portrait--trio {
    width: 318px;
    right: -28px;
    bottom: 0;
  }
.persona-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 40px rgba(3,38,31,0.10);
  }
/* ===== Mission-card stack (For Recruiters) ===== */
.persona-card--stack { overflow: visible; }
.persona-card--stack .persona-card__cta {
    margin-top: 4px;
    padding: 12px 22px;
    border-radius: var(--r-pill);
    background: var(--lime);
    color: var(--ocean);
  }
.persona-card__stack {
    position: absolute;
    left: 50%;
    bottom: -18px;
    transform: translateX(calc(-50% + 60px)) scale(0.72);
    transform-origin: bottom center;
    width: 300px;
    z-index: 2;
    pointer-events: none;
  }
.mc {
    --mc-line: #E8E8E3;
    --mc-ink: #1D1D1B;
    --mc-muted: #5C5C57;
    --mc-green: #97F881;
    --mc-chip-tint: #DFF3E6;
    --mc-chip-ink: #0F5331;
    position: absolute;
    left: 0; right: 0; bottom: 0;
    background: #FFFFFF;
    border: 1px solid var(--mc-line);
    border-radius: 18px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transform-origin: bottom center;
    transition: transform .42s cubic-bezier(.2,.8,.2,1), box-shadow .42s ease, opacity .42s ease;
    box-shadow:
      0 1px 2px rgba(15,23,18,.06),
      0 14px 32px -16px rgba(15,23,18,.20);
  }
.mc:nth-child(1) { transform: translate(-192px, 0)    scale(0.94); z-index: 1; opacity: 0.14; }
.mc:nth-child(2) { transform: translate(-128px, -10px) scale(0.96); z-index: 2; opacity: 0.55; }
.mc:nth-child(3) { transform: translate(-64px, -20px) scale(0.98); z-index: 3; opacity: 0.85; }
.mc:nth-child(4) { transform: translate(0, -30px)     scale(1.00); z-index: 4; opacity: 1; }
.persona-card--stack:hover .mc:nth-child(1) {
    transform: translateX(-236px) rotate(-21deg) scale(1.0); opacity: 1;
  }
.persona-card--stack:hover .mc:nth-child(2) {
    transform: translateX(-138px) rotate(-9deg) scale(1.0); opacity: 1;
  }
.persona-card--stack:hover .mc:nth-child(3) {
    transform: translateX(-38px) rotate(7deg) scale(1.0); opacity: 1;
  }
.persona-card--stack:hover .mc:nth-child(4) {
    transform: translateX(64px) rotate(19deg) scale(1.0); opacity: 1;
  }
.persona-card--stack:hover .mc {
    box-shadow:
      0 2px 4px rgba(15,23,18,.08),
      0 26px 50px -18px rgba(15,23,18,.30);
  }
.mc__thumb {
    position: relative;
    aspect-ratio: 16 / 10;
    background: #0C2A19;
    overflow: hidden;
    flex: none;
  }
.mc__thumb img {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    object-position: 50% 28%;
    transform: scale(1.62);
    transform-origin: 50% 26%;
    display: block;
  }
.mc__thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 60%, rgba(0,0,0,.22));
  }
.mc:nth-child(1) .mc__thumb img { transform: scale(1.0); transform-origin: 50% 30%; object-position: 60% 28%; }
.persona-card:not(.persona-card--dark) .mc:nth-child(1) .mc__thumb img { transform: scale(1.4); transform-origin: 50% 16%; object-position: 50% 14%; }
.mc:nth-child(2) .mc__thumb img { transform: scale(1.0); transform-origin: 50% 30%; object-position: 57% 14%; }
.mc:nth-child(3) .mc__thumb img { transform: scale(1.0); transform-origin: 50% 30%; object-position: 58% 22%; }
.persona-card:not(.persona-card--dark) .mc:nth-child(3) .mc__thumb img { transform: scale(1.7); transform-origin: 50% 18%; object-position: 50% 16%; }
/* For Interviewers stack — landscape frames, gentle uniform crop + dark CTA */
.persona-card--dark .mc:nth-child(1) .mc__thumb img,
  .persona-card--dark .mc:nth-child(2) .mc__thumb img,
  .persona-card--dark .mc:nth-child(3) .mc__thumb img { transform: scale(1.0); transform-origin: 50% 30%; object-position: 50% 28%; }
.persona-card--dark .mc:nth-child(1) .mc__thumb img { transform: scale(1.62); transform-origin: 50% 26%; object-position: 50% 28%; }
.persona-card--dark .mc:nth-child(4) .mc__thumb img { transform: scale(1.76); transform-origin: 50% 28%; object-position: 50% 28%; }
.persona-card--dark .mc:nth-child(3) .mc__thumb img { transform: scale(1.7); transform-origin: 50% 22%; object-position: 50% 22%; }
.persona-card--dark.persona-card--stack .persona-card__cta {
    background: var(--ocean);
    color: var(--lime);
  }
.mc__play {
    position: absolute;
    left: 14px; bottom: 14px;
    width: 52px; height: 52px;
    border-radius: 50%;
    background: var(--mc-green);
    display: grid; place-items: center;
    box-shadow: 0 4px 14px rgba(0,0,0,.22);
    z-index: 2;
  }
.mc__play svg { width: 18px; height: 18px; margin-left: 3px; display: block; }
.mc__body {
    padding: 18px 18px 16px;
    display: flex; flex-direction: column;
    gap: 10px;
    flex: 1;
    min-width: 0;
  }
.mc__title {
    font-size: 19px;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: -0.012em;
    color: var(--mc-ink);
    margin: 0;
    text-wrap: balance;
    min-height: 2.44em;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
.mc__foot {
    margin-top: auto;
    padding-top: 14px;
    display: flex; align-items: center; justify-content: flex-end;
    gap: 8px;
  }
.mc__by {
    width: 84px;
    height: 10px;
    border-radius: 3px;
    background: #EFEFEC;
    flex: none;
  }
.mc__chips { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; }
.mc__chip {
    width: 62px;
    height: 10px;
    border-radius: 3px;
    background: #BFE9CE;
    flex: none;
  }
.mc__chip:nth-child(2) { width: 46px; }
.mc__dur {
    width: 42px;
    height: 10px;
    border-radius: 3px;
    background: #EFEFEC;
    flex: none;
  }
.persona-card__icon {
    position: absolute;
    top: 36px;
    right: 36px;
    width: 64px; height: 64px;
    border-radius: 18px;
    background: var(--frost);
    color: var(--emerald);
    display: inline-flex; align-items: center; justify-content: center;
  }
.persona-card__icon svg { width: 30px; height: 30px; }
.persona-card__body {
    flex: 1; min-width: 0;
    display: flex; flex-direction: column;
    gap: 10px;
    width: 100%;
  }
.persona-card__eyebrow {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--emerald);
  }
.persona-card__h {
    margin: 0;
    font-size: clamp(24px, 2.2vw, 30px);
    font-weight: 500;
    letter-spacing: -0.02em;
    line-height: 1.15;
    color: var(--ocean);
    text-wrap: balance;
  }
.persona-card__cta {
    margin-top: auto;
    padding-top: 18px;
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 14.5px;
    font-weight: 600;
    color: var(--emerald);
    align-self: flex-start;
  }
.persona-card__pills {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 22px;
    max-height: 150px;
    overflow: hidden;
    /* mask-image disabled for screenshot */
    /* -webkit-mask-image disabled for screenshot */
  }
.persona-pill {
    display: inline-flex; align-items: center;
    padding: 6px 12px;
    border-radius: var(--r-pill);
    background: var(--frost);
    border: 1px solid rgba(3,38,31,0.08);
    color: var(--ocean);
    font-size: 12.5px;
    font-weight: 500;
    white-space: nowrap;
    line-height: 1.2;
  }
.persona-card__cta .arrow { transition: transform .2s ease; }
.persona-card:hover .persona-card__cta .arrow { transform: translateX(4px); }
.persona-card--dark {
    background: var(--pastel);
    border-color: transparent;
    color: var(--ocean);
  }
.persona-card--dark .persona-card__icon {
    background: var(--ocean);
    color: var(--pastel);
  }
.persona-card--dark .persona-card__eyebrow { color: var(--emerald); }
.persona-card--dark .persona-card__h { color: var(--ocean); }
.persona-card--dark .persona-card__cta { color: var(--emerald); }
.persona-card--dark .persona-pill {
    background: rgba(3,38,31,0.06);
    border-color: rgba(3,38,31,0.10);
    color: var(--ocean);
  }
.persona-pill:nth-child(even) {
    background: rgba(0,167,92,0.10);
    border-color: rgba(0,167,92,0.22);
    color: var(--emerald);
  }
.persona-card--dark .persona-pill:nth-child(even) {
    background: rgba(3,38,31,0.14);
    border-color: rgba(3,38,31,0.22);
    color: var(--ocean);
  }
@media (max-width: 860px) {
.persona-grid { grid-template-columns: 1fr; }
.persona-card { padding: 26px 24px 24px; }
}
.hero__title {
    font-weight: 500;
    font-size: clamp(40px, 5.0vw, 76px);
    line-height: 0.98;
    letter-spacing: -0.03em;
    margin: 12px 0 22px;
    max-width: 16ch;
    color: var(--ocean);
    text-wrap: balance;
  }
.hero__supra {
    margin: 0;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 500;
    color: var(--emerald);
    letter-spacing: -0.005em;
  }
.hero__title .em { color: var(--leaf); font-style: normal; }
.hero__lede {
    font-size: clamp(17px, 1.4vw, 21px);
    line-height: 1.5;
    color: rgba(3,38,31,0.7);
    max-width: 48ch;
    margin: 0 0 36px;
  }
.hero__actions {
    display: flex; flex-wrap: wrap; align-items: center;
    gap: 14px;
    margin-bottom: 36px;
  }
.hero__byline {
    display: flex; flex-direction: column; gap: 8px;
    font-size: 13px;
    color: rgba(3,38,31,0.5);
  }
.hero__byline strong { color: var(--emerald); font-weight: 600; }
.hero__byline ul {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-wrap: wrap; gap: 6px 22px;
    font-size: 14px;
    color: rgba(3,38,31,0.78);
  }
.hero__byline li {
    display: inline-flex; align-items: center; gap: 8px;
  }
.hero__byline li::before {
    content: "";
    width: 8px; height: 8px;
    border-radius: 50%;
    background: var(--leaf);
    flex: none;
  }
/* Hero visual — lesson chip stack */
.hero__visual {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 560px;
  }
.lessons {
    width: calc(100% + 100px);
    max-width: 720px;
    margin-right: -100px;
    display: grid;
    gap: 16px;
  }
.lesson {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 22px;
    border-radius: 16px;
    background: rgba(3,38,31,0.04);
    border: 1px solid rgba(3,38,31,0.08);
    box-shadow: 0 8px 24px rgba(3,38,31,0.06);
    transition: transform .25s ease;
  }
.lesson:nth-child(1) { transform: translateX(-12px); }
.lesson:nth-child(2) { transform: translateX(28px); }
.lesson:nth-child(3) { transform: translateX(-4px); }
.lesson:nth-child(4) { transform: translateX(18px); }
.lesson__icon {
    width: 40px; height: 40px;
    border-radius: 12px;
    background: rgba(3,38,31,0.08);
    color: var(--forest);
    display: inline-flex; align-items: center; justify-content: center;
    flex: none;
  }
.lesson__icon svg { width: 18px; height: 18px; }
.lesson__t {
    font-weight: 600;
    font-size: 15.5px;
    line-height: 1.25;
    color: var(--ocean);
    margin-bottom: 3px;
  }
.lesson__m {
    font-size: 12.5px;
    color: rgba(3,38,31,0.55);
    display: flex; gap: 10px; align-items: center;
  }
.lesson__progress {
    width: 70px; height: 4px;
    border-radius: 999px;
    background: rgba(3,38,31,0.10);
    overflow: hidden;
    display: inline-block;
  }
.lesson__progress > i {
    display: block; height: 100%; width: 65%;
    background: var(--leaf);
    border-radius: 999px;
  }
.lesson--featured {
    background: var(--ocean);
    border-color: transparent;
    box-shadow: 0 24px 44px rgba(3,38,31,0.30);
  }
.lesson--featured .lesson__icon {
    background: var(--lime);
    color: var(--ocean);
  }
.lesson--featured .lesson__t { color: var(--frost); }
.lesson--featured .lesson__m { color: rgba(235,245,235,0.7); }
.lesson--featured .lesson__progress { background: rgba(235,245,235,0.20); }
.lesson--featured .lesson__progress > i { background: var(--lime); }
.lesson__live {
    display: inline-flex; align-items: center;
    margin-right: 2px;
  }
.lesson__live i {
    width: 7px; height: 7px;
    border-radius: 50%;
    background: var(--leaf);
    box-shadow: 0 0 0 4px rgba(0,167,92,0.20);
    animation: livePulse 1.6s ease-in-out infinite;
  }
.lesson--featured .lesson__live i {
    background: var(--lime);
    box-shadow: 0 0 0 4px rgba(150,247,130,0.20);
  }
@keyframes livePulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.55; transform: scale(0.85); }
  }
@media (max-width: 1100px) {
.hero__grid { grid-template-columns: 1fr; gap: 60px; min-height: 0; }
.hero__visual { min-height: 460px; max-width: 600px; margin: 0 auto; width: 100%; justify-content: center; }
.lessons { width: 100%; max-width: 600px; margin-right: 0; }
}
@media (max-width: 640px) {
.hero { padding: 36px 0 60px; }
.lessons { gap: 12px; }
.lesson { padding: 14px 16px; gap: 12px; }
.lesson__icon { width: 34px; height: 34px; }
.lesson__t { font-size: 14px; }
}
/* ============ Trust ============ */
.trust {
    background: var(--paper);
    border-bottom: 1px solid rgba(3,38,31,0.06);
    padding: 28px 0;
  }
.trust__label {
    text-align: center;
    margin: 0 0 18px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(3,38,31,0.45);
  }
.trust__track {
    overflow: hidden;
    mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  }
.trust__marquee {
    display: flex; gap: 64px;
    align-items: center;
    animation: trustScroll 40s linear infinite;
    width: max-content;
  }
.trust__marquee span {
    font-weight: 700; font-size: 22px;
    color: var(--ocean);
    white-space: nowrap;
    opacity: 0.7;
    filter: grayscale(1);
  }
@keyframes trustScroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
  }
/* ============ Section ============ */
.section { padding: 60px 0; background: var(--paper); }
.section--frost { background: var(--frost); }
.section--ocean { background: var(--ocean); color: var(--frost); }
.section__head {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 64px;
  }
.section__head .eyebrow { margin-bottom: 22px; }
.section__title {
    font-weight: 500;
    font-size: clamp(34px, 4.0vw, 56px);
    line-height: 1.0;
    letter-spacing: -0.025em;
    margin: 0 0 18px;
    color: var(--ocean);
    text-wrap: balance;
  }
.section__title .em { color: var(--leaf); font-style: normal; }
.section--ocean .section__title { color: var(--frost); }
.section--ocean .section__title .em { color: var(--lime); }
.section__lede {
    font-size: 18px; line-height: 1.55;
    color: rgba(3,38,31,0.66);
    margin: 0;
  }
.section--ocean .section__lede { color: rgba(235,245,235,0.7); }
/* ============ Library — 4 content types ============ */
.library {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }
.lib {
    background: var(--paper);
    border: 1px solid rgba(3,38,31,0.08);
    border-radius: var(--r-lg);
    padding: 32px 28px 28px;
    display: flex; flex-direction: column;
    gap: 14px;
    transition: transform .2s ease, box-shadow .2s ease;
  }
.lib:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); }
.lib__icon {
    width: 44px; height: 44px;
    border-radius: 12px;
    background: var(--frost);
    color: var(--emerald);
    display: inline-flex; align-items: center; justify-content: center;
  }
.lib__icon svg { width: 22px; height: 22px; }
.lib h3 {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: var(--ocean);
    margin: 0;
  }
.lib p {
    font-size: 14.5px;
    line-height: 1.5;
    color: rgba(3,38,31,0.66);
    margin: 0;
  }
.lib__count {
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid rgba(3,38,31,0.08);
    font-size: 12.5px;
    font-weight: 600;
    color: var(--emerald);
    letter-spacing: 0.04em;
  }
@media (max-width: 980px) {
.library { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 540px) {
.library { grid-template-columns: 1fr; }
}
/* ============ Methodology — research-led / expert-led / certified ============ */
.method {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    counter-reset: method;
  }
.method__item {
    background: var(--paper);
    border: 1px solid rgba(3,38,31,0.08);
    border-radius: var(--r-lg);
    padding: 36px 32px 32px;
    display: flex; flex-direction: column;
    gap: 16px;
    position: relative;
    min-height: 380px;
  }
.method__num {
    counter-increment: method;
    font-size: 13px;
    font-weight: 700;
    color: var(--leaf);
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }
.method__num::before { content: "—  " counter(method, decimal-leading-zero) "  ·  "; }
.method__item h3 {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -0.015em;
    color: var(--ocean);
    margin: 0;
    line-height: 1.15;
    text-wrap: balance;
  }
.method__item p {
    font-size: 15px;
    line-height: 1.5;
    color: rgba(3,38,31,0.66);
    margin: 0;
  }
.method__demo {
    margin-top: auto;
    background: var(--frost);
    border: 1px solid rgba(3,38,31,0.06);
    border-radius: 14px;
    padding: 16px;
    font-size: 13px;
    color: rgba(3,38,31,0.7);
  }
.method__demo .row {
    display: flex; align-items: center; gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid rgba(3,38,31,0.06);
  }
.method__demo .row:last-child { border-bottom: 0; padding-bottom: 0; }
.method__demo .row:first-child { padding-top: 0; }
.method__demo .row .name { color: var(--ocean); font-weight: 500; }
.method__demo .row .role { color: rgba(3,38,31,0.5); font-size: 12px; }
.method__demo .avatar {
    width: 26px; height: 26px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--lime), var(--leaf));
    color: var(--ocean);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 11px; font-weight: 700;
    flex: none;
  }
.method__cert {
    display: flex; align-items: center; gap: 12px;
    background: var(--ocean);
    color: var(--frost);
    border-radius: 14px;
    padding: 14px 16px;
    margin-top: auto;
  }
.method__cert .seal {
    width: 38px; height: 38px;
    border-radius: 50%;
    background: var(--lime);
    color: var(--ocean);
    display: inline-flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: 14px;
    flex: none;
  }
.method__cert strong { color: var(--frost); font-weight: 600; display: block; }
.method__cert span { color: rgba(235,245,235,0.65); font-size: 12.5px; }
.method__research {
    display: grid;
    gap: 6px;
    background: var(--frost);
    border: 1px solid rgba(3,38,31,0.06);
    border-radius: 14px;
    padding: 16px;
    font-size: 12.5px;
    color: rgba(3,38,31,0.7);
    margin-top: auto;
  }
.method__research .stat-line {
    display: flex; align-items: baseline; gap: 8px;
  }
.method__research .stat-line b {
    color: var(--leaf); font-weight: 700; font-size: 18px;
    letter-spacing: -0.01em;
  }
@media (max-width: 980px) {
.method { grid-template-columns: 1fr; }
}
/* ============ Tracks ============ */
.tracks {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
  }
.track {
    background: var(--paper);
    border: 1px solid rgba(3,38,31,0.08);
    border-radius: var(--r-lg);
    padding: 36px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
    transition: transform .2s ease, box-shadow .2s ease;
  }
.track:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); }
.track__role {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--emerald);
  }
.track__role .num {
    display: inline-flex; align-items: center; justify-content: center;
    width: 22px; height: 22px;
    border-radius: 50%;
    border: 1px solid currentColor;
    font-size: 11px;
    font-weight: 600;
  }
.track h3 {
    font-size: clamp(26px, 2.2vw, 32px);
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--ocean);
    margin: -8px 0 0;
    line-height: 1.1;
    text-wrap: balance;
  }
.track p {
    font-size: 15px;
    line-height: 1.5;
    color: rgba(3,38,31,0.66);
    margin: 0;
  }
.track__modules {
    display: grid;
    gap: 8px;
  }
.track__module {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 14px;
    border-radius: 12px;
    background: var(--frost);
    border: 1px solid rgba(3,38,31,0.05);
    font-size: 14px;
    color: var(--ocean);
  }
.track__module .check {
    width: 22px; height: 22px;
    border-radius: 50%;
    background: var(--leaf);
    color: var(--ocean);
    display: inline-flex; align-items: center; justify-content: center;
    flex: none;
  }
.track__module .check svg { width: 12px; height: 12px; }
.track__module .meta {
    margin-left: auto;
    font-size: 12px;
    color: rgba(3,38,31,0.5);
  }
.track__cta {
    margin-top: auto;
    align-self: flex-start;
    display: inline-flex; align-items: center; gap: 10px;
    font-weight: 600;
    font-size: 15px;
    padding-bottom: 3px;
    border-bottom: 1.5px solid var(--ocean);
    color: var(--ocean);
  }
.track__cta .arrow { transition: transform .2s ease; }
.track:hover .track__cta .arrow { transform: translateX(4px); }
.track--dark {
    background: linear-gradient(160deg, var(--emerald) 0%, var(--forest) 80%);
    border-color: transparent;
    color: var(--frost);
  }
.track--dark .track__role { color: var(--pastel); }
.track--dark h3 { color: var(--frost); }
.track--dark p { color: rgba(235,245,235,0.75); }
.track--dark .track__module {
    background: rgba(235,245,235,0.06);
    border-color: rgba(235,245,235,0.08);
    color: var(--frost);
  }
.track--dark .track__module .meta { color: rgba(235,245,235,0.55); }
.track--dark .track__cta {
    color: var(--lime);
    border-bottom-color: var(--lime);
  }
@media (max-width: 860px) {
.tracks { grid-template-columns: 1fr; }
.track { padding: 28px; }
}
/* ============ AI tracks (video-forward) ============ */
.ai-tracks {
    display: flex;
    flex-direction: column;
    gap: 28px;
  }
/* Shared video frame chrome */
.clip-frame { position: relative; background: #0C2A19; overflow: hidden; }
.clip-frame img { width: 100%; height: 100%; object-fit: cover; display: block; }
.clip-frame::after {
    content: "";
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(3,38,31,0) 38%, rgba(3,38,31,0.55) 100%);
    pointer-events: none;
  }
.clip-play {
    position: absolute;
    border-radius: 50%;
    background: var(--lime);
    color: var(--ocean);
    display: grid; place-items: center;
    box-shadow: 0 8px 22px rgba(3,38,31,0.35);
    z-index: 2;
    transition: transform .2s ease, background .2s ease;
  }
.clip-play svg { margin-left: 2px; }
.clip-dur {
    position: absolute;
    z-index: 2;
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(3,38,31,0.62);
    backdrop-filter: blur(6px);
    color: var(--frost);
    font-size: 12px; font-weight: 600;
    font-variant-numeric: tabular-nums;
  }
.clip-tag {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 5px 11px;
    border-radius: 999px;
    background: rgba(0,167,92,0.12);
    color: var(--emerald);
    font-size: 11px; font-weight: 700;
    letter-spacing: 0.12em; text-transform: uppercase;
  }
.clip-tag i { width: 6px; height: 6px; border-radius: 50%; background: var(--leaf); }
/* Featured AI masterclass clip */
.ai-feature {
    position: relative;
    display: grid;
    grid-template-columns: 1.25fr 1fr;
    align-items: center;
    background: var(--ocean);
    color: var(--frost);
    border-radius: var(--r-lg);
    border: 1px solid rgba(3,38,31,0.08);
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
  }
.ai-feature:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
.ai-feature__video { position: relative; align-self: stretch; min-height: 100%; }
.ai-feature__video .wistia_responsive_padding { height: 100%; }
.ai-feature__video .wistia_responsive_wrapper { background: #0C2A19; }
.ai-feature__video iframe { display: block; }
.ai-feature__flag {
    position: absolute; left: 18px; top: 18px; z-index: 3;
    pointer-events: none;
    display: inline-flex; align-items: center; gap: 8px;
    padding: 7px 13px;
    border-radius: 999px;
    background: var(--lime);
    color: var(--ocean);
    font-size: 11px; font-weight: 700;
    letter-spacing: 0.12em; text-transform: uppercase;
  }
.ai-feature__body {
    display: flex; flex-direction: column;
    gap: 14px;
    padding: 40px 44px;
    justify-content: center;
  }
.ai-feature h3 {
    margin: 0;
    font-size: clamp(26px, 2.4vw, 36px);
    font-weight: 500;
    letter-spacing: -0.02em;
    line-height: 1.1;
    color: var(--frost);
    text-wrap: balance;
  }
.ai-feature p {
    margin: 0;
    font-size: 15.5px;
    line-height: 1.55;
    color: rgba(235,245,235,0.74);
    max-width: 50ch;
  }
.ai-feature__by {
    margin-top: 8px;
    padding-top: 20px;
    border-top: 1px solid rgba(235,245,235,0.12);
    display: flex; align-items: center; gap: 12px;
  }
.ai-feature__by img {
    width: 44px; height: 44px;
    border-radius: 50%;
    object-fit: cover;
    flex: none;
    background: var(--emerald);
  }
.ai-feature__by .who strong { display: block; color: var(--frost); font-weight: 600; font-size: 15px; }
.ai-feature__by .who span { font-size: 12.5px; color: rgba(235,245,235,0.6); }
.ai-feature__by .more {
    margin-left: auto;
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 14px; font-weight: 600;
    color: var(--lime);
  }
.ai-feature__by .more .arrow { transition: transform .2s ease; }
.ai-feature:hover .ai-feature__by .more .arrow { transform: translateX(4px); }
@media (max-width: 860px) {
.ai-feature { grid-template-columns: 1fr; }
.ai-feature__body { padding: 28px 26px; }
}
/* Other AI courses — catalog cards (not playable) */
.ai-courses {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
.course-card {
    display: flex; flex-direction: column;
    background: var(--paper);
    border: 1px solid rgba(3,38,31,0.08);
    border-radius: var(--r-lg);
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
  }
.course-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); }
.course-card__thumb { aspect-ratio: 16 / 9; }
.course-card__thumb .clip-tag {
    position: absolute; left: 14px; bottom: 14px; z-index: 2;
    background: rgba(3,38,31,0.62);
    color: var(--frost);
    backdrop-filter: blur(6px);
  }
.course-card__body {
    flex: 1;
    display: flex; flex-direction: column;
    gap: 10px;
    padding: 22px 24px 24px;
  }
.course-card h4 {
    margin: 0;
    font-size: 19px;
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: 1.22;
    color: var(--ocean);
    text-wrap: balance;
  }
.course-card p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    color: rgba(3,38,31,0.62);
  }
.course-card__foot {
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid rgba(3,38,31,0.08);
    display: flex; align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--emerald);
    letter-spacing: 0.02em;
  }
.course-card__foot .dot {
    width: 4px; height: 4px; border-radius: 50%;
    background: rgba(3,38,31,0.25);
  }
.course-card__foot .meta { color: rgba(3,38,31,0.5); font-weight: 500; }
@media (max-width: 980px) {
.ai-courses { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
.ai-courses { grid-template-columns: 1fr; }
}
/* ============ Stats & quote ============ */
.stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-bottom: 64px;
  }
.stat {
    text-align: left;
    padding: 32px 28px;
    border-radius: var(--r-lg);
    background: rgba(235,245,235,0.04);
    border: 1px solid rgba(235,245,235,0.08);
  }
.stat .num {
    font-size: clamp(40px, 4.2vw, 64px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--lime);
  }
.stat .label {
    margin-top: 14px;
    font-size: 15px;
    color: rgba(235,245,235,0.78);
    line-height: 1.4;
  }
@media (max-width: 860px) {
.stats { grid-template-columns: 1fr 1fr; }
}
.bigquote {
    padding: 56px;
    background: rgba(235,245,235,0.04);
    border: 1px solid rgba(235,245,235,0.08);
    border-radius: var(--r-lg);
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 48px;
    align-items: center;
  }
.bigquote__portrait {
    width: 220px; height: 260px;
    border-radius: 24px;
    background: linear-gradient(165deg, var(--emerald), var(--ocean));
    overflow: hidden;
    position: relative;
    flex: none;
  }
.bigquote__portrait img {
    position: absolute;
    bottom: -10px; left: 50%;
    transform: translateX(-50%);
    width: 110%; max-width: none;
  }
.bigquote blockquote {
    margin: 0;
    font-size: clamp(22px, 2.2vw, 30px);
    line-height: 1.3;
    letter-spacing: -0.015em;
    color: var(--frost);
    font-weight: 500;
    text-wrap: pretty;
  }
.bigquote blockquote::before {
    content: "“";
    display: block;
    font-size: 56px;
    line-height: 0.7;
    color: var(--lime);
    margin-bottom: 8px;
    font-family: Georgia, serif;
  }
.bigquote__by {
    margin-top: 22px;
    font-size: 14px;
    color: rgba(235,245,235,0.6);
  }
.bigquote__by strong { color: var(--frost); font-weight: 600; display: block; font-size: 15px; }
@media (max-width: 860px) {
.bigquote { grid-template-columns: 1fr; padding: 32px; }
.bigquote__portrait { width: 100%; height: 220px; }
}
/* ============ Bridge to Cara (dark) ============ */
.bridge {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 56px;
    align-items: center;
  }
.bridge__title {
    font-weight: 500;
    font-size: clamp(34px, 4.0vw, 56px);
    line-height: 1.0;
    letter-spacing: -0.025em;
    margin: 18px 0 16px;
    color: var(--frost);
  }
.bridge__title .em { color: var(--lime); font-style: normal; }
.bridge__lede {
    font-size: 17px;
    line-height: 1.55;
    color: rgba(235,245,235,0.78);
    margin: 0 0 28px;
    max-width: 52ch;
  }
.bridge__cara {
    position: relative;
    min-height: 380px;
    border-radius: 24px;
    background:
      radial-gradient(60% 70% at 20% 30%, rgba(150,247,130,0.30) 0%, rgba(150,247,130,0) 70%),
      linear-gradient(165deg, var(--emerald), var(--ocean));
    overflow: hidden;
    padding: 32px;
    display: flex; flex-direction: column;
    gap: 16px;
  }
.bridge__caraOrb {
    position: absolute;
    right: -40px; bottom: -40px;
    width: 280px; height: 280px;
    border-radius: 50%;
    background:
      radial-gradient(circle at 30% 30%, #d8ffce 0%, var(--lime) 35%, var(--leaf) 75%, #064c34 100%);
    box-shadow: 0 0 0 16px rgba(150,247,130,0.10), 0 32px 70px rgba(0,0,0,0.45);
    z-index: 0;
  }
.bridge__cara > * { position: relative; z-index: 1; }
.bridge__cara h4 {
    margin: 0;
    font-size: 13px;
    font-weight: 700;
    color: var(--lime);
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }
.bridge__cara p {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -0.015em;
    color: var(--frost);
    margin: 0;
    max-width: 18ch;
  }
.bridge__cara .pill-row {
    margin-top: auto;
    display: flex; flex-wrap: wrap; gap: 8px;
  }
.bridge__cara .pill-row span {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(3,38,31,0.55);
    border: 1px solid rgba(235,245,235,0.10);
    color: var(--frost);
    font-size: 12px;
    font-weight: 500;
    backdrop-filter: blur(6px);
  }
.bridge__cara .pill-row span::before {
    content: "";
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--lime);
  }
@media (max-width: 980px) {
.bridge { grid-template-columns: 1fr; }
}
/* ============ Enterprise ============ */
[data-screen-label="Enterprise"] .enterprise {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
  }
@media (max-width: 860px) {
[data-screen-label="Enterprise"] .enterprise { padding: 0; }
}
.enterprise {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 48px;
    padding: 56px 48px;
    background: var(--paper);
    border: 1px solid rgba(3,38,31,0.08);
    border-radius: var(--r-lg);
    align-items: center;
  }
.enterprise h3 {
    margin: 0;
    font-size: clamp(24px, 2.4vw, 34px);
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--ocean);
    line-height: 1.1;
  }
.enterprise h3 .em { color: var(--leaf); font-style: normal; }
.enterprise p {
    margin: 14px 0 0;
    font-size: 15px;
    color: rgba(3,38,31,0.65);
    line-height: 1.5;
  }
.enterprise__items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
  }
.enterprise__item {
    display: flex; gap: 14px; align-items: flex-start;
  }
.enterprise__item .icon {
    width: 38px; height: 38px;
    border-radius: 10px;
    background: var(--frost);
    color: var(--emerald);
    display: inline-flex; align-items: center; justify-content: center;
    flex: none;
  }
.enterprise__item .icon svg { width: 18px; height: 18px; }
.enterprise__item h4 {
    margin: 0 0 4px;
    font-size: 15px;
    font-weight: 600;
    color: var(--ocean);
  }
.enterprise__item p {
    margin: 0;
    font-size: 13.5px;
    color: rgba(3,38,31,0.6);
    line-height: 1.4;
  }
@media (max-width: 860px) {
.enterprise { grid-template-columns: 1fr; padding: 36px 28px; }
.enterprise__items { grid-template-columns: 1fr; }
}
/* ============ Experts strip (small) ============ */
.experts {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px 16px;
  }
.expert {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }
.expert__portrait {
    width: 100px; height: 100px;
    border-radius: 50%;
    overflow: hidden;
    background: linear-gradient(165deg, var(--emerald), var(--ocean));
    border: 1px solid rgba(3,38,31,0.08);
    position: relative;
  }
.expert__portrait img {
    width: 100%; height: 100%;
    object-fit: cover;
    display: block;
  }
.expert__name {
    font-weight: 600;
    color: var(--ocean);
    font-size: 14.5px;
    line-height: 1.2;
  }
.expert__role {
    font-size: 12.5px;
    color: rgba(3,38,31,0.60);
    line-height: 1.4;
    max-width: 22ch;
  }
.expert__badge {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--emerald);
    background: var(--frost);
    border: 1px solid rgba(0,167,92,0.18);
    padding: 4px 10px;
    border-radius: 999px;
    margin-top: 2px;
  }
.expert__badge i {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--leaf);
  }
@media (max-width: 1100px) {
.experts { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 560px) {
.experts { grid-template-columns: repeat(2, 1fr); }
}
/* ============ Tick list (other features) ============ */
.tick-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 56px;
    row-gap: 0;
  }
.tick-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 16px;
    padding: 22px 0;
    border-top: 1px solid rgba(3,38,31,0.08);
    align-items: flex-start;
  }
.tick-item .check {
    width: 32px; height: 32px;
    border-radius: 10px;
    background: rgba(0,167,92,0.10);
    color: var(--leaf);
    display: inline-flex; align-items: center; justify-content: center;
    flex: none;
  }
.tick-item .check svg { width: 16px; height: 16px; }
.tick-item h4 {
    font-size: 16px;
    font-weight: 600;
    color: var(--ocean);
    margin: 4px 0 4px;
    line-height: 1.25;
  }
.tick-item p {
    font-size: 14px;
    color: rgba(3,38,31,0.65);
    margin: 0;
    line-height: 1.5;
  }
@media (max-width: 860px) {
.tick-list { grid-template-columns: 1fr; column-gap: 0; }
}
.enterprise--features {
    align-items: start;
    background: var(--frost);
    border-color: rgba(0,167,92,0.14);
  }
.enterprise--features .tick-list {
    column-gap: 40px;
  }
.enterprise--features .tick-item {
    border-top-color: rgba(3,38,31,0.10);
  }
.enterprise--features .tick-item .check {
    background: rgba(0,167,92,0.14);
  }
.enterprise--features .tick-item:first-child,
  .enterprise--features .tick-item:nth-child(2) {
    border-top: 0;
    padding-top: 4px;
  }
/* Faculty card — single column, centered head + experts grid below */
.enterprise--faculty {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 56px 0 48px;
    background: transparent;
    border: 0;
    border-radius: 0;
  }
.faculty__head {
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
  }
.faculty__head .eyebrow { margin-bottom: 4px; }
.faculty__head h3 {
    margin: 0 0 12px;
    font-size: clamp(24px, 2.4vw, 34px);
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--ocean);
    line-height: 1.1;
  }
.faculty__head h3 .em { color: var(--leaf); font-style: normal; }
.faculty__head p {
    margin: 0;
    font-size: 15px;
    color: rgba(3,38,31,0.65);
    line-height: 1.55;
  }
@media (max-width: 860px) {
.enterprise--faculty { padding: 36px 0; }
}
/* Shared modular header (used by method, tracks, etc) */
.modular__head {
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
  }
.modular__head .eyebrow { margin-bottom: 4px; }
.modular__head h3 {
    margin: 0 0 12px;
    font-size: clamp(26px, 2.6vw, 38px);
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--ocean);
    line-height: 1.1;
    text-wrap: balance;
  }
.modular__head h3 .em { color: var(--leaf); font-style: normal; }
.modular__head p {
    margin: 0;
    font-size: 15.5px;
    color: rgba(3,38,31,0.65);
    line-height: 1.55;
  }
/* Method + Tracks modular variants */
.enterprise--method,
  .enterprise--tracks {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 56px 48px;
    align-items: stretch;
  }
.enterprise--method .method,
  .enterprise--tracks .tracks {
    gap: 18px;
  }
@media (max-width: 860px) {
.enterprise--method,
    .enterprise--tracks { padding: 36px 24px; }
}
/* Proof card — dark modular card on a light section */
.enterprise--proof {
    grid-template-columns: 1fr;
    gap: 56px;
    padding: 64px 56px;
    background:
      radial-gradient(60% 70% at 10% 0%, rgba(150,247,130,0.10) 0%, rgba(150,247,130,0) 60%),
      linear-gradient(165deg, var(--emerald) 0%, var(--forest) 60%, var(--ocean) 100%);
    border-color: transparent;
    color: var(--frost);
  }
.proof__head {
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
  }
.proof__head h3 {
    margin: 0 0 12px;
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 500;
    letter-spacing: -0.025em;
    color: var(--frost);
    line-height: 1.05;
    text-wrap: balance;
  }
.proof__head h3 .em { color: var(--lime); font-style: normal; }
.proof__head p {
    margin: 0;
    font-size: 16px;
    color: rgba(235,245,235,0.72);
    line-height: 1.55;
  }
.enterprise--proof .stats { margin: 0; }
.enterprise--proof .stat {
    background: rgba(235,245,235,0.05);
    border-color: rgba(235,245,235,0.10);
  }
.enterprise--proof .stat .num { color: var(--lime); }
.enterprise--proof .stat .label { color: rgba(235,245,235,0.75); }
.enterprise--proof .bigquote {
    margin: 0;
    background: transparent;
    border: 0;
    border-top: 1px solid rgba(235,245,235,0.12);
    border-radius: 0;
    padding: 40px 0 0;
  }
.enterprise--proof .bigquote blockquote { color: var(--frost); }
.enterprise--proof .bigquote blockquote::before { color: var(--lime); }
.enterprise--proof .bigquote__by { color: rgba(235,245,235,0.65); }
.enterprise--proof .bigquote__by strong { color: var(--frost); }
@media (max-width: 860px) {
.enterprise--proof { padding: 36px 24px; }
}
@media (max-width: 860px) {
.enterprise--features .tick-item:nth-child(2) {
      border-top: 1px solid rgba(3,38,31,0.08);
      padding-top: 22px;
    }
}
/* ============ Footer CTA ============ */
.footer-cta { padding: 0; background: var(--paper); }
.footer-cta__panel {
    background: var(--frost);
    color: var(--ocean);
    text-align: center;
    padding: 96px 32px 92px;
    position: relative;
    overflow: hidden;
    isolation: isolate;
  }
.footer-cta__panel::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
      radial-gradient(60% 60% at 10% 100%, rgba(0,167,92,0.10) 0%, rgba(0,167,92,0) 60%),
      radial-gradient(50% 60% at 100% 0%, rgba(0,167,92,0.08) 0%, rgba(0,167,92,0) 60%);
    z-index: -1; pointer-events: none;
  }
.footer-cta__h {
    font-weight: 500;
    font-size: clamp(34px, 4.0vw, 56px);
    line-height: 1.0;
    letter-spacing: -0.025em;
    margin: 0 auto 16px;
    max-width: 22ch;
    color: var(--ocean);
  }
.footer-cta__h .em { color: var(--leaf); font-style: normal; }
.footer-cta__p {
    font-size: 17px;
    line-height: 1.55;
    color: rgba(3,38,31,0.66);
    margin: 0 auto 36px;
    max-width: 56ch;
  }
.footer-cta__actions {
    display: inline-flex; align-items: center; gap: 14px;
    flex-wrap: wrap; justify-content: center;
    margin-top: 20px;
  }
@media (max-width: 720px) {
.footer-cta__panel { padding: 64px 24px 60px; }
}
/* ============ Footer ============ */
/* Hero results trio */
.hero-results { display:flex; gap:40px; flex-wrap:wrap; margin: 6px 0 36px; }
.hero-results .r { display:flex; flex-direction:column; gap:5px; }
.hero-results .r b { font-size: clamp(30px,3.2vw,44px); font-weight:500; letter-spacing:-0.02em; color:var(--leaf); line-height:0.95; }
.hero-results .r span { font-size:13px; color:rgba(3,38,31,0.62); max-width:17ch; line-height:1.35; }
/* Hero product image */
.hero__visual { justify-content:flex-start; overflow:visible; position:relative; }
.hero-product { width:151%; max-width:none; height:auto; display:block; transform:translateX(-110px); filter:drop-shadow(0 34px 60px rgba(3,38,31,0.24)); position:relative; z-index:2; }
@media (max-width:1100px) {
.hero__visual { justify-content:center; }
.hero-product { width:100%; max-width:864px; transform:none; }
}
/* Floating liquid-glass keyword pills */
.kw-field { position:absolute; inset:0; z-index:3; pointer-events:none; transform:translateX(-40px); }
.kw-pill {
    position:absolute; pointer-events:auto; white-space:nowrap;
    padding:11px 19px; border-radius:999px;
    font-family:var(--font); font-size:14px; font-weight:500; letter-spacing:-0.005em;
    color:rgba(3,38,31,0.82);
    background:linear-gradient(135deg, rgba(150,247,130,0.55), rgba(150,247,130,0.24));
    -webkit-backdrop-filter:blur(13px) saturate(160%);
    backdrop-filter:blur(13px) saturate(160%);
    border:1px solid rgba(150,247,130,0.7);
    box-shadow:0 10px 30px rgba(3,38,31,0.12), inset 0 1px 1px rgba(255,255,255,0.7), inset 0 -6px 14px rgba(150,247,130,0.25);
    animation:kwfloat 7s ease-in-out infinite;
    will-change:transform;
  }
/* pills that tuck behind the laptop */
.kw-pill.behind { z-index:1; color:rgba(3,38,31,0.7); }
.kw-field--behind { z-index:1; }
/* positions — relative to the visual area, laptop sits center-left */
.kw-p1 { top:6%;  left:30%; animation-delay:-0.4s; }
/* Sourcing */
.kw-p2 { top:calc(2% + 40px);  right:2%; animation-delay:-2.6s; }
/* AI */
.kw-p3 { top:22%; left:calc(-4% + 10px); animation-delay:-1.5s; }
/* Screening (behind phone) */
.kw-p4 { top:calc(21% + 70px); right:calc(9% - 90px); animation-delay:-3.4s; }
/* Business acumen */
.kw-p5 { bottom:calc(16% + 30px); left:9%; animation-delay:-0.9s; }
/* Social */
.kw-p6 { top:55%; right:-2%; animation-delay:-4.2s; }
/* Negotiation (behind) */
.kw-p7 { bottom:6%; right:24%; animation-delay:-2.0s; }
/* Engaging talent */
@keyframes kwfloat {
    0%,100% { transform:translateY(0); }
    50%     { transform:translateY(-4px); }
  }
@media (prefers-reduced-motion: reduce) {
.kw-pill { animation:none; }
}
@media (max-width:1100px) {
.kw-field { display:none; }
}
/* Skill cards */
/* Four skills — video cards */
.skills { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; max-width:900px; margin:0 auto; }
.skill { display:flex; flex-direction:column; background:var(--paper); border:1px solid rgba(3,38,31,0.08); border-radius:var(--r-lg); overflow:hidden; transition:transform .2s ease, box-shadow .2s ease; }
.skill:hover { transform:translateY(-4px); box-shadow:var(--shadow-sm); }
.skill__media { aspect-ratio:16/9; position:relative; background:#0C2A19; overflow:hidden; }
.skill__media--video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }
.skill__media--video::after { display:none; }
.skill__media img { width:100%; height:100%; object-fit:cover; object-position:50% 22%; display:block; transition:transform .35s ease; }
.skill:hover .skill__media img { transform:scale(1.05); }
.skill__media::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(3,38,31,0) 55%, rgba(3,38,31,0.42)); pointer-events:none; }
.skill__num { position:absolute; left:12px; top:11px; z-index:2; font-size:10.5px; font-weight:700; letter-spacing:0.14em; color:var(--frost); background:rgba(3,38,31,0.5); backdrop-filter:blur(6px); padding:5px 9px; border-radius:999px; }
.skill__play { position:absolute; right:12px; bottom:12px; z-index:2; width:42px; height:42px; border-radius:50%; background:var(--lime); color:var(--ocean); display:grid; place-items:center; box-shadow:0 6px 16px rgba(3,38,31,0.32); transition:transform .2s ease; }
.skill:hover .skill__play { transform:scale(1.08); }
.skill__play svg { width:15px; height:15px; margin-left:2px; }
.skill__body { padding:18px 20px 22px; display:flex; flex-direction:column; gap:8px; flex:1; }
.skill__body h3 { margin:0; font-size:17px; font-weight:600; letter-spacing:-0.01em; color:var(--ocean); line-height:1.25; }
.skill__body p { margin:0; font-size:13.5px; line-height:1.5; color:rgba(3,38,31,0.66); }
@media (max-width:760px) {
.skills { grid-template-columns:1fr; max-width:480px; }
}
/* Skills stage — ghost cards imply a larger catalog */
.skills-stage { position:relative; display:flex; justify-content:center; align-items:center; gap:24px; margin-inline:calc(50% - 50vw); padding-inline:24px; overflow:hidden; -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 22%, #000 78%, transparent 100%); mask-image:linear-gradient(90deg, transparent 0, #000 22%, #000 78%, transparent 100%); }
.skills-stage .skills { flex:0 0 auto; }
.ghost-col { display:grid; grid-auto-rows:max-content; gap:24px; flex:0 0 250px; }
.skill--ghost { pointer-events:none; opacity:.6; user-select:none; }
.skill--ghost .skill__media { display:grid; place-items:center; background:rgba(3,38,31,0.05); }
.skill--ghost .skill__media::after { display:none; }
.skill--ghost .skill__play { position:static; background:rgba(3,38,31,0.08); color:rgba(3,38,31,0.4); box-shadow:none; }
.skill--ghost .skill__body { gap:10px; padding-bottom:24px; }
.gbar { display:block; height:11px; border-radius:6px; background:rgba(3,38,31,0.12); }
.gbar--t { height:14px; width:82%; background:rgba(3,38,31,0.2); }
.gbar--s { width:54%; }
@media (max-width:760px) {
.skills-stage { margin-inline:0; padding-inline:0; overflow:visible; -webkit-mask-image:none; mask-image:none; }
.ghost-col { display:none; }
}
.skills-more { text-align:center; margin:28px 0 0; font-size:18px; font-weight:500; letter-spacing:0.03em; color:rgba(3,38,31,0.5); }
/* 5-up pillar grid */
.library--5 { grid-template-columns:repeat(5,1fr); }
.library--5 .lib__icon { background:var(--ocean); color:var(--lime); font-weight:700; font-size:15px; letter-spacing:0.04em; }
@media (max-width:1100px) {
.library--5 { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:760px) {
.library--5 { grid-template-columns:1fr 1fr; }
}
@media (max-width:480px) {
.library--5 { grid-template-columns:1fr; }
}
/* TA Academy — split: photo left, stacked boxes right */
.academy { display:grid; grid-template-columns:0.92fr 1.08fr; gap:56px; align-items:stretch; }
.academy__left { display:flex; flex-direction:column; }
.academy__left .eyebrow { margin-bottom:20px; align-self:flex-start; }
.academy__title { margin:0 0 16px; font-size:clamp(34px,4.0vw,56px); font-weight:500; letter-spacing:-0.025em; line-height:1.0; color:var(--ocean); text-wrap:balance; }
.academy__title .em { color:var(--leaf); font-style:normal; }
.academy__lede { margin:0 0 28px; font-size:16px; line-height:1.55; color:rgba(3,38,31,0.66); max-width:46ch; }
.academy__photo { position:relative; margin-top:auto; border-radius:var(--r-lg); overflow:hidden; min-height:300px; flex:1; background:#0C2A19; box-shadow:0 26px 50px -28px rgba(3,38,31,0.4); }
.academy__photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 40%; }
.academy__badge { position:absolute; left:20px; bottom:20px; display:flex; align-items:center; gap:16px; padding:16px 22px 16px 18px; border-radius:18px; background:rgba(255,255,255,0.92); backdrop-filter:blur(8px); box-shadow:0 14px 30px -12px rgba(3,38,31,0.45); max-width:300px; }
.academy__badge-n { font-size:36px; font-weight:600; letter-spacing:-0.02em; line-height:1; color:var(--emerald); flex:none; }
.academy__badge-l { font-size:12.5px; line-height:1.35; color:rgba(3,38,31,0.66); }
.academy__steps { display:flex; flex-direction:column; justify-content:flex-end; gap:14px; }
.abox { display:flex; align-items:center; gap:20px; background:var(--paper); border:1px solid rgba(3,38,31,0.08); border-radius:18px; padding:20px 24px; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.abox:hover { transform:translateX(4px); box-shadow:var(--shadow-sm); border-color:rgba(0,167,92,0.28); }
.abox__n { flex:none; width:46px; height:46px; border-radius:13px; background:var(--ocean); color:var(--lime); display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-weight:700; letter-spacing:0.02em; }
.abox__c h3 { margin:0 0 4px; font-size:17px; font-weight:600; letter-spacing:-0.01em; color:var(--ocean); line-height:1.2; }
.abox__c p { margin:0; font-size:13.5px; line-height:1.5; color:rgba(3,38,31,0.64); }
@media (max-width:900px) {
.academy { grid-template-columns:1fr; gap:36px; }
.academy__photo { min-height:280px; margin-top:28px; }
}
/* The Pitfalls — striking dark banner */
.catch-section { background:var(--ocean); position:relative; overflow:hidden; padding:84px 0 108px; color:var(--frost); }
.catch-section::before { content:""; position:absolute; inset:0; background:radial-gradient(110% 78% at 50% -18%, rgba(150,247,130,0.13), transparent 58%); pointer-events:none; }
.catch-section::after { content:""; position:absolute; right:-140px; bottom:-160px; width:480px; height:480px; border-radius:50%; background:radial-gradient(circle, rgba(0,167,92,0.18), transparent 68%); pointer-events:none; }
.catch { background:transparent; border-radius:0; padding:0; color:var(--frost); position:relative; z-index:1; }
.catch__head { max-width:860px; margin:0 auto 62px; text-align:center; }
.catch__head .eyebrow { margin-bottom:24px; }
.catch__head h2 { margin:0 0 18px; font-size:clamp(34px,4.0vw,56px); font-weight:500; letter-spacing:-0.025em; line-height:1.0; color:#fff; text-wrap:balance; }
.catch__head h2 .em { color:var(--lime); font-style:normal; }
.catch__head p { margin:0 auto; max-width:560px; font-size:18.5px; line-height:1.5; color:rgba(235,245,235,0.6); }
.catch__traps { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid rgba(235,245,235,0.14); }
.catch__trap { position:relative; overflow:hidden; background:transparent; border:0; border-left:1px solid rgba(235,245,235,0.14); border-radius:0; padding:46px 40px 16px; transition:background .25s ease; }
.catch__trap:first-child { border-left:none; }
.catch__trap:hover { transform:none; background:rgba(235,245,235,0.035); }
.catch__trap-n { position:absolute; top:22px; right:30px; font-size:58px; font-weight:600; letter-spacing:-0.04em; line-height:1; color:rgba(150,247,130,0.11); font-variant-numeric:tabular-nums; pointer-events:none; }
.catch__trap-ic { display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:15px; background:rgba(150,247,130,0.13); color:var(--lime); margin-bottom:26px; }
.catch__trap-ic svg { width:23px; height:23px; }
.catch__trap h4 { margin:0 0 12px; font-size:21px; font-weight:600; letter-spacing:-0.014em; color:#fff; line-height:1.22; text-wrap:balance; }
.catch__trap p { margin:0; font-size:15px; line-height:1.6; color:rgba(235,245,235,0.6); }
.catch__trap p strong { color:var(--lime); font-weight:700; }
@media (max-width:860px) {
.catch-section { padding:64px 0 72px; }
.catch__traps { grid-template-columns:1fr; border-top:none; }
.catch__trap { border-left:none; border-top:1px solid rgba(235,245,235,0.14); padding:34px 4px 22px; }
}
/* Partner quotes */
.pquotes { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.pquote { background:var(--paper); border:1px solid rgba(3,38,31,0.08); border-radius:var(--r-lg); padding:34px 32px; display:flex; flex-direction:column; gap:20px; }
.pquote__logo { font-weight:700; font-size:17px; color:var(--ocean); letter-spacing:-0.01em; opacity:0.85; }
.pquote blockquote { margin:0; font-size:17px; line-height:1.45; color:var(--ocean); font-weight:500; letter-spacing:-0.012em; text-wrap:pretty; flex:1; }
.pquote blockquote::before { content:"201C"; display:block; font-family:Georgia,serif; font-size:44px; line-height:0.5; color:var(--leaf); margin-bottom:10px; }
.pquote__by { font-size:13px; color:rgba(3,38,31,0.55); line-height:1.4; }
.pquote__by strong { display:block; color:var(--emerald); font-weight:600; font-size:14px; }
@media (max-width:860px) {
.pquotes { grid-template-columns:1fr; }
}
/* FAQ */
.faq { max-width:840px; margin:0 auto; }
.faq__item { border-top:1px solid rgba(3,38,31,0.10); }
.faq__item:last-child { border-bottom:1px solid rgba(3,38,31,0.10); }
.faq__q { list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 4px; font-size:18px; font-weight:600; color:var(--ocean); line-height:1.3; }
.faq__q::-webkit-details-marker { display:none; }
.faq__q .ic { width:30px; height:30px; border-radius:50%; border:1px solid rgba(3,38,31,0.18); display:inline-flex; align-items:center; justify-content:center; flex:none; font-size:20px; font-weight:400; line-height:1; color:var(--emerald); transition:transform .25s ease, background .2s ease, border-color .2s ease; }
.faq__item[open] .faq__q .ic { background:var(--lime); border-color:transparent; transform:rotate(45deg); color:var(--ocean); }
.faq__a { padding:0 4px 26px; font-size:15px; line-height:1.6; color:rgba(3,38,31,0.66); max-width:66ch; }
[id^="sec-"] {scroll-margin-top:100px}
/*--screenshot-helper*/
#sec-why .section__head {max-width:960px}
#sec-why .section__lede {max-width:680px;margin-left:auto;margin-right:auto}
#sec-academy {padding-top:70px;padding-bottom:90px}
.proof-section { padding: 0; background: var(--lime); }
.proof-simple {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 56px;
    align-items: center;
    padding: 82px 0;
  }
.proof-simple__lead {
    margin: 0;
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: -0.02em;
    color: var(--ocean);
    text-wrap: balance;
  }
.proof-simple__text {
    display: flex;
    flex-direction: column;
    gap: 22px;
  }
.proof-simple__body p {
    margin: 0;
    font-size: 16.5px;
    line-height: 1.6;
    color: rgba(3,38,31,0.7);
  }
.proof-simple__cite {
    display: flex;
    align-items: center;
    gap: 14px;
  }
.proof-simple__ph {
    flex: none;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--emerald);
  }
.proof-simple__ph img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; display: block; }
.proof-simple__by {
    margin: 0 !important;
    font-size: 14px;
    font-weight: 700;
    color: var(--ink) !important;
  }
.proof-simple__logo { display: block; align-self: flex-start; width: 120px; height: auto; margin-top: 2px; }
@media (max-width: 860px) {
.proof-simple { grid-template-columns: 1fr; gap: 28px; padding: 48px 28px; align-items: start; }
}
#sec-partnership .enterprise { display:block; background:transparent; border:0; border-radius:0; padding:0; text-align:center; }
#sec-partnership .enterprise > div:first-child { max-width:720px; margin:0 auto 44px; }
#sec-partnership .enterprise .eyebrow { margin-bottom:18px; }
#sec-partnership .enterprise p { max-width:58ch; margin-left:auto; margin-right:auto; padding-bottom:20px; }
#sec-partnership .enterprise__items { max-width:1040px; margin:0 auto; display:flex; flex-wrap:wrap; justify-content:center; gap:30px 44px; }
#sec-partnership .enterprise__item { flex:0 1 290px; text-align:left; }
#sec-partnership { padding-top:70px; padding-bottom:90px; background:var(--frost); }
#sec-partnership .enterprise h3 { font-size:clamp(34px,4.0vw,56px); line-height:1.0; letter-spacing:-0.025em; }
.popular { background: var(--ocean); color: var(--frost); padding: 84px 0 88px; overflow: hidden; }
.popular__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 44px; }
.popular__head .eyebrow { margin-bottom: 20px; }
.popular__title { margin: 0; font-weight: 500; font-size: clamp(34px, 4.0vw, 56px); line-height: 1.0; letter-spacing: -0.025em; color: var(--frost); }
.popular__title .em { color: var(--lime); font-style: normal; }
.popular__nav { display: flex; gap: 12px; flex: none; margin-bottom: 6px; }
.popular__arrow { width: 52px; height: 52px; border-radius: 50%; border: 1px solid rgba(235,245,235,0.28); color: var(--frost); display: inline-flex; align-items: center; justify-content: center; transition: background .15s ease, border-color .15s ease, opacity .15s ease; }
.popular__arrow:hover { background: rgba(235,245,235,0.08); }
.popular__arrow svg { width: 20px; height: 20px; }
.popular__arrow:disabled { opacity: 0.35; cursor: default; }
.popular__arrow:disabled:hover { background: none; }
.popular__track { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; padding-bottom: 4px; margin: 0 -40px; padding-left: 40px; padding-right: 40px; scrollbar-width: none; }
.popular__track::-webkit-scrollbar { display: none; }
@media (max-width: 720px) {
.popular__track { margin: 0 -20px; padding-left: 20px; padding-right: 20px; }
}
.pop { flex: 0 0 360px; scroll-snap-align: start; display: flex; flex-direction: column; background: rgba(235,245,235,0.04); border: 1px solid rgba(235,245,235,0.10); border-radius: 22px; padding: 16px; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.pop:hover { transform: translateY(-4px); border-color: rgba(150,247,130,0.35); background: rgba(235,245,235,0.06); }
.pop__thumb { position: relative; aspect-ratio: 16 / 10; border-radius: 14px; overflow: hidden; background: #0C2A19; }
.pop__thumb img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; display: block; }
.pop__play { position: absolute; right: 14px; bottom: 14px; width: 48px; height: 48px; border-radius: 50%; background: var(--lime); color: var(--ocean); display: grid; place-items: center; box-shadow: 0 6px 18px rgba(3,38,31,0.35); transition: transform .2s ease; }
.pop:hover .pop__play { transform: scale(1.06); }
.pop__play svg { width: 17px; height: 17px; margin-left: 2px; }
.pop__body { display: flex; flex-direction: column; flex: 1; padding: 20px 8px 8px; }
.pop__missions { font-size: 13px; color: rgba(235,245,235,0.55); margin-bottom: 14px; }
.pop__title { margin: 0 0 14px; font-size: 21px; font-weight: 600; line-height: 1.22; letter-spacing: -0.012em; color: var(--frost); text-wrap: balance; }
.pop__desc { margin: 0; font-size: 14px; line-height: 1.55; color: rgba(235,245,235,0.55); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pop__by { margin-top: auto; padding-top: 22px; display: flex; align-items: center; gap: 10px; font-size: 14px; color: rgba(235,245,235,0.55); }
.pop__avatar { width: 30px; height: 30px; border-radius: 50%; overflow: hidden; background: var(--emerald); flex: none; }
.pop__avatar img { width: 100%; height: 100%; object-fit: cover; }
.pop__by strong { color: var(--frost); font-weight: 600; }
.popular__foot { display: flex; justify-content: center; margin-top: 52px; }
@media (max-width: 720px) {
.pop { flex-basis: 300px; }
.popular__head { flex-direction: column; align-items: flex-start; }
}

/* ===== Homepage-v3 logo carousel (replaces the text marquee) ===== */
.hero__trust { background: var(--paper); padding: 28px 0; overflow: hidden; }
.hero__trust-track { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.logo-marquee { display: flex; gap: 64px; align-items: center; width: max-content; animation: heroLogosScroll 40s linear infinite; }
.logo-marquee .lm { display: inline-flex; align-items: center; filter: grayscale(1); opacity: 0.7; }   /* match prod: greyscale + muted */
.logo-marquee .lm img { display: block; height: 26px; width: auto; max-width: none; object-fit: contain; }
@keyframes heroLogosScroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .logo-marquee { animation: none; } }
@media (max-width: 720px) { .hero__trust { padding: 24px 0 28px; } .logo-marquee { gap: 44px; } .logo-marquee .lm img { height: 22px; } }


/* ===== Hero: centered laptop + glass keyword pills in orbit ===== */
@media (min-width: 1101px) {
  /* scale the whole visual (laptop + pills together) 1.5x to fill the right;
     grow from a left-of-centre origin so it expands rightward and never overlaps copy */
  #sec-hero .hero__visual { min-height: 0 !important; height: auto !important; align-self: center !important; justify-content: center !important; padding: 0 !important; overflow: visible !important; transform: scale(1.2) !important; transform-origin: 38% 50% !important; }
  #sec-hero .hero-product { width: 100% !important; max-width: 100% !important; transform: none !important; margin: 0 auto !important; }
  #sec-hero .kw-field, #sec-hero .kw-field--behind { transform: none !important; z-index: 4 !important; }
  /* pills 0.9x: the 1.2x visual scale enlarges them, so shrink intrinsic type+pad
     by 0.9 (font 14->12.6, pad 11/19 -> 9.9/17.1) — keeps the float animation */
  #sec-hero .kw-pill { white-space: nowrap; font-size: 12.6px !important; padding: 9.9px 17.1px !important; }
  #sec-hero .kw-pill.behind { color: rgba(3,38,31,0.82) !important; }
  #sec-hero .kw-p1 { top: 4% !important;   bottom: auto !important; left: 9% !important;    right: auto !important; } /* Sourcing        — top-left */
  #sec-hero .kw-p2 { top: -4% !important;  bottom: auto !important; left: 42.5% !important; right: auto !important; } /* AI             — top-center (raised) */
  #sec-hero .kw-p6 { top: 4% !important;   bottom: auto !important; left: auto !important;  right: 7.5% !important; } /* Negotiation    — top-right */
  #sec-hero .kw-p3 { top: 33% !important;  bottom: auto !important; left: 0.5% !important;  right: auto !important; } /* Screening      — left edge */
  #sec-hero .kw-p4 { top: 45% !important;  bottom: auto !important; left: auto !important;  right: 3.5% !important; } /* Business acumen — right edge */
  #sec-hero .kw-p5 { top: auto !important; bottom: 16% !important;  left: 5.5% !important;  right: auto !important; } /* Social         — lower-left */
  #sec-hero .kw-p7 { top: auto !important; bottom: -4% !important;  left: 40% !important;   right: auto !important; } /* Engaging talent — bottom-center */
}/* End custom CSS */