:root {
  --purple: #6b269f;
  --purple-dark: #48205f;
  --purple-soft: #eee4f3;
  --teal: #31889a;
  --teal-dark: #17616f;
  --teal-soft: #e1f1f1;
  --orange: #f9a448;
  --orange-soft: #fff0dc;
  --ink: #272230;
  --muted: #67616c;
  --cream: #fbf8f3;
  --white: #ffffff;
  --line: rgba(39, 34, 48, .12);
  --shadow: 0 28px 80px rgba(63, 37, 75, .14);
  --radius: 28px;
  --container: min(1180px, calc(100% - 40px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--cream); font-family: "DM Sans", sans-serif; -webkit-font-smoothing: antialiased; }
.owner-preview-bar { position:relative; z-index:1000; display:flex; min-height:44px; padding:8px 24px; align-items:center; justify-content:center; gap:14px; color:white; background:#1d716e; font-size:12px; box-shadow:0 6px 20px rgba(19,61,62,.18); }
.owner-preview-bar strong { color:#ffd09a; }.owner-preview-bar span { color:rgba(255,255,255,.8); }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline:3px solid var(--orange); outline-offset:3px; }
.container { width: var(--container); margin-inline: auto; }
.skip-link { position: fixed; left: 18px; top: -60px; z-index: 100; background: var(--ink); color: white; padding: 12px 18px; border-radius: 10px; text-decoration: none; transition: top .2s; }
.skip-link:focus { top: 18px; }
.skip-link:focus-visible { outline-color:white; }

.site-header { position: relative; z-index: 20; background: rgba(251, 248, 243, .88); backdrop-filter: blur(18px); }
.hours-bar { color: white; background: var(--purple-dark); font-size: 12px; letter-spacing: .02em; }
.hours-inner { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.hours-inner p { margin: 0; display: flex; align-items: center; gap: 7px; }
.pulse { width: 7px; height: 7px; border-radius: 50%; background: #8fe3ca; box-shadow: 0 0 0 5px rgba(143, 227, 202, .12); }
.divider { width: 1px; height: 13px; margin: 0 8px; background: rgba(255,255,255,.28); }
.nav { min-height: 94px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: block; width: 250px; height: 72px; overflow: hidden; }
.brand img { display: block; width: 100%; height: 100%; object-fit: contain; }
.nav-links { display: flex; align-items: center; gap: 26px; }
.nav-links a { position: relative; font-weight: 600; font-size: 14px; text-decoration: none; }
.nav-links a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 2px; background: var(--purple); transition: right .25s ease; }
.nav-links a:hover::after, .nav-links a:focus-visible::after { right: 0; }
.nav-actions { display: flex; align-items: center; gap: 12px; }
.language { width: 38px; height: 38px; border: 1px solid var(--line); border-radius: 50%; color: var(--purple); background: transparent; font-size: 17px; cursor: pointer; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; min-height: 56px; padding: 0 26px; color: white; background: var(--purple); border-radius: 999px; font-weight: 700; text-decoration: none; box-shadow: 0 12px 28px rgba(107, 38, 159, .2); transition: transform .2s, box-shadow .2s, background .2s; }
.button:hover { transform: translateY(-2px); box-shadow: 0 16px 36px rgba(107, 38, 159, .28); background: #7b30b5; }
.button-small { min-height: 44px; padding: 0 19px; font-size: 13px; box-shadow: none; }

.hero { position: relative; min-height: 720px; padding: 82px 0 74px; overflow: hidden; background: radial-gradient(circle at 88% 5%, #efe4f4 0 17%, transparent 42%), linear-gradient(135deg, #fbf8f3 0%, #f8f4f2 58%, #edf6f4 100%); }
.hero-grid { display: grid; grid-template-columns: 1.03fr .97fr; align-items: center; gap: 68px; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 24px; color: var(--teal-dark); font-weight: 700; font-size: 13px; text-transform: uppercase; letter-spacing: .12em; }
.eyebrow span { width: 34px; height: 2px; background: var(--orange); }
h1, h2 { margin: 0; font-family: "Manrope", sans-serif; letter-spacing: -.045em; }
h1 { max-width: 690px; font-size: clamp(52px, 5.25vw, 76px); line-height: 1.03; font-weight: 700; }
h1 em { position: relative; color: var(--purple); font-style: normal; white-space: nowrap; }
h1 em::after { content: ""; position: absolute; left: 2%; right: 0; bottom: -5px; height: 9px; border-top: 3px solid var(--orange); border-radius: 50%; transform: rotate(-2deg); }
.hero-lede { max-width: 650px; margin: 30px 0 0; color: var(--muted); font-size: 19px; line-height: 1.72; }
.hero-actions { display: flex; align-items: center; gap: 26px; margin-top: 36px; }
.text-link { color: var(--purple-dark); font-weight: 700; text-underline-offset: 5px; text-decoration-color: rgba(72,32,95,.3); }
.text-link span { margin-left: 6px; color: var(--orange); }
.trust-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 56px; padding-top: 25px; border-top: 1px solid var(--line); }
.trust-row strong, .trust-row span { display: block; }
.trust-row strong { margin-bottom: 5px; color: var(--purple-dark); font-size: 13px; }
.trust-row span { color: var(--muted); font-size: 11px; line-height: 1.45; }

.hero-visual { position: relative; min-height: 520px; }
.visual-panel { position: absolute; inset: 5px 10px 38px 24px; overflow: hidden; border: 1px solid rgba(255,255,255,.7); border-radius: 48% 48% 32px 32px; background: linear-gradient(160deg, #f9efe3, #e8f2f0); box-shadow: var(--shadow); }
.visual-panel::before { content: ""; position: absolute; inset: 24px; border: 1px dashed rgba(72, 32, 95, .15); border-radius: inherit; }
.arch { position: absolute; border-radius: 50% 50% 0 0; border-style: solid; border-bottom: 0; }
.arch-orange { width: 400px; height: 380px; right: -115px; bottom: -72px; border-width: 62px; border-color: rgba(249,164,72,.78); transform: rotate(-8deg); }
.arch-teal { width: 318px; height: 305px; right: -68px; bottom: -56px; border-width: 52px; border-color: rgba(49,136,154,.82); transform: rotate(-8deg); }
.arch-purple { width: 228px; height: 230px; right: -22px; bottom: -44px; border-width: 42px; border-color: rgba(107,38,159,.82); transform: rotate(-8deg); }
.figure { position: absolute; right: 104px; bottom: 94px; width: 126px; height: 238px; transform: rotate(2deg); }
.figure-head { position: absolute; top: 0; left: 41px; width: 61px; height: 66px; border-radius: 48% 46% 52% 45%; background: #5d355e; box-shadow: inset -12px -4px 0 rgba(255,255,255,.1); }
.figure-head::after { content: ""; position: absolute; top: 9px; right: -9px; width: 29px; height: 34px; border-radius: 50%; background: #342333; transform: rotate(-28deg); }
.figure-body { position: absolute; left: 26px; top: 58px; width: 92px; height: 166px; border-radius: 46px 44px 22px 22px; background: #fff8ed; transform: rotate(-7deg); box-shadow: inset -12px -8px 0 rgba(249,164,72,.15); }
.figure-arm { position: absolute; left: -17px; top: 98px; width: 90px; height: 28px; border-radius: 999px; background: #f0b18f; transform: rotate(26deg); transform-origin: right center; }
.care-card { position: absolute; display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 1px solid rgba(255,255,255,.84); border-radius: 18px; background: rgba(255,255,255,.88); box-shadow: 0 12px 35px rgba(72,32,95,.12); backdrop-filter: blur(12px); }
.care-card p { margin: 0; color: var(--purple-dark); font-weight: 700; font-size: 12px; line-height: 1.35; }
.care-card-top { top: 64px; left: 36px; max-width: 205px; }
.care-icon { display: grid; flex: 0 0 auto; width: 38px; height: 38px; place-items: center; color: white; border-radius: 13px; background: var(--orange); }
.care-card-bottom { left: 38px; bottom: 56px; }
.mini-faces { display: flex; padding-left: 5px; }
.mini-faces i { width: 27px; height: 27px; margin-left: -5px; border: 3px solid white; border-radius: 50%; background: var(--purple-soft); }
.mini-faces i:nth-child(2) { background: var(--teal-soft); }
.mini-faces i:nth-child(3) { background: var(--orange-soft); }
.visual-note { position: absolute; right: 16px; bottom: 0; margin: 0; color: var(--teal-dark); font-family: "Manrope"; font-size: 12px; font-weight: 700; letter-spacing: .04em; }
.hero-orb { position: absolute; border-radius: 50%; filter: blur(2px); }
.hero-orb-one { width: 90px; height: 90px; left: -38px; top: 28%; border: 18px solid rgba(249,164,72,.22); }
.hero-orb-two { width: 32px; height: 32px; left: 49%; bottom: 7%; background: rgba(49,136,154,.16); }

.journey-strip { position: relative; z-index: 3; margin-top: -8px; padding: 34px 0 42px; color: white; background: var(--purple-dark); }
.journey-grid { display: grid; grid-template-columns: 1.45fr repeat(4, 1fr); gap: 26px; align-items: center; }
.section-kicker { margin: 0 0 4px; color: #d6bcdf; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.journey-grid h2 { max-width: 230px; font-size: 26px; line-height: 1.2; letter-spacing: -.03em; }
.journey-grid > a { position: relative; min-height: 120px; padding: 15px 0 8px; border-left: 1px solid rgba(255,255,255,.17); text-decoration: none; transition: transform .2s; }
.journey-grid > a:hover { transform: translateY(-5px); }
.journey-grid a span, .journey-grid a strong, .journey-grid a small { display: block; padding-left: 18px; }
.journey-grid a span { margin-bottom: 22px; color: var(--orange); font-family: "Manrope"; font-size: 12px; font-weight: 800; }
.journey-grid a strong { margin-bottom: 7px; font-size: 15px; }
.journey-grid a small { color: #d5cfd8; font-size: 11px; line-height: 1.4; }

@media (max-width: 1050px) {
  .nav-links { display: none; }
  .hero-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .journey-grid { grid-template-columns: repeat(2, 1fr); }
  .journey-grid > div { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  :root { --container: min(100% - 28px, 620px); }
  .hours-inner { justify-content: center; }
  .hours-inner p:first-child { display: none; }
  .hours-inner p { font-size: 10px; }
  .nav { min-height: 76px; }
  .brand { width: 174px; height: 58px; }
  .nav-actions .button { display: none; }
  .hero { min-height: auto; padding: 55px 0 48px; }
  .hero-grid { grid-template-columns: 1fr; }
  h1 { font-size: clamp(43px, 13vw, 60px); }
  .hero-lede { font-size: 17px; }
  .hero-actions { align-items: flex-start; flex-direction: column; }
  .trust-row { grid-template-columns: 1fr; gap: 13px; }
  .hero-visual { min-height: 450px; }
  .visual-panel { inset: 4px 0 32px; }
  .journey-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
  .journey-grid > a { min-height: 108px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Arabic experience — full RTL, Arabic typography and mirrored interaction */
html[dir="rtl"] { direction:rtl; scroll-behavior:smooth; }
html[dir="rtl"] body { direction:rtl; text-align:right; font-family:"Alexandria","Tahoma",sans-serif; font-weight:400; }
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] h4,html[dir="rtl"] strong,html[dir="rtl"] .button { font-family:"Alexandria","Tahoma",sans-serif; letter-spacing:-.035em; }
html[dir="rtl"] h1 em,html[dir="rtl"] h2 em,html[dir="rtl"] h3 em,html[dir="rtl"] .hero em,html[dir="rtl"] .service-hero-thought em { font-family:"Aref Ruqaa Ink","Noto Naskh Arabic",serif; font-style:normal; font-weight:700; letter-spacing:0; }
html[dir="rtl"] .eyebrow,html[dir="rtl"] .section-kicker,html[dir="rtl"] .collection-kicker,html[dir="rtl"] small,html[dir="rtl"] [class*="kicker"] { letter-spacing:.02em; }
html[dir="rtl"] .nav,html[dir="rtl"] .hours-inner,html[dir="rtl"] .footer-grid,html[dir="rtl"] .footer-bottom { direction:rtl; }
html[dir="rtl"] .nav-links,html[dir="rtl"] .nav-actions { direction:rtl; }
html[dir="rtl"] .language { font-family:"Alexandria",sans-serif; font-size:10px; font-weight:800; text-decoration:none; }
html[dir="rtl"] .hero-copy,html[dir="rtl"] .collection-hero-copy,html[dir="rtl"] .detail-cinematic-copy,html[dir="rtl"] .service-detail-hero-copy,html[dir="rtl"] .contact-page-copy,html[dir="rtl"] .article-header { text-align:right; }
html[dir="rtl"] .eyebrow span,html[dir="rtl"] .section-kicker::before { margin-right:0; margin-left:10px; }
html[dir="rtl"] .hero-actions,html[dir="rtl"] .studio-actions,html[dir="rtl"] .nav-actions { justify-content:flex-start; }
html[dir="rtl"] .hero-scroll,html[dir="rtl"] .service-detail-scroll { right:auto; left:30px; }
html[dir="rtl"] .hero-stage::after,html[dir="rtl"] .collection-hero::after { right:auto; left:-8%; }
html[dir="rtl"] .service-card-copy,html[dir="rtl"] .program-art-copy,html[dir="rtl"] .assessment-art-copy,html[dir="rtl"] .training-art-copy,html[dir="rtl"] .article-copy,html[dir="rtl"] .job-card { text-align:right; }
html[dir="rtl"] .service-card-number,html[dir="rtl"] .page-number { right:auto; left:24px; }
html[dir="rtl"] .card-link b,html[dir="rtl"] .arrow-link span,html[dir="rtl"] .button span { display:inline-block; transform:scaleX(-1); }
html[dir="rtl"] .service-detail-quick > .container,html[dir="rtl"] .program-detail-quick > .container,html[dir="rtl"] .assessment-detail-quick > .container,html[dir="rtl"] .training-detail-quick > .container { direction:rtl; }
html[dir="rtl"] .service-detail-quick p { border-left:0; border-right:1px solid rgba(255,255,255,.16); }
html[dir="rtl"] .service-method-steps li,html[dir="rtl"] .program-path-steps,html[dir="rtl"] .assessment-path-steps,html[dir="rtl"] .training-path-steps { direction:rtl; }
html[dir="rtl"] .service-possibility { border-right:0; border-left:1px solid rgba(255,255,255,.16); }
html[dir="rtl"] .service-related-card > div,html[dir="rtl"] .assessment-related-card > div,html[dir="rtl"] .training-related-card > div,html[dir="rtl"] .program-related-card > div { text-align:right; }
html[dir="rtl"] .service-fit-number strong { left:auto; right:45px; }
html[dir="rtl"] .service-fit-number > span { left:auto; right:45px; }
html[dir="rtl"] .program-inclusion-card,html[dir="rtl"] .assessment-lens,html[dir="rtl"] .training-topic { text-align:right; }
html[dir="rtl"] .program-inclusion-card ol li,html[dir="rtl"] .program-inclusion-card ul li { direction:rtl; }
html[dir="rtl"] .assessment-clinical-note .container { direction:rtl; }
html[dir="rtl"] .inquiry-form,html[dir="rtl"] .contact-form-card,html[dir="rtl"] .resource-search { direction:rtl; text-align:right; }
html[dir="rtl"] input,html[dir="rtl"] textarea,html[dir="rtl"] select { text-align:right; font-family:"Alexandria",sans-serif; }
html[dir="rtl"] select { background-position:left 14px center; }
html[dir="rtl"] .consent-field { direction:rtl; }
html[dir="rtl"] .form-errors,html[dir="rtl"] .errorlist { text-align:right; }
html[dir="rtl"] .article-body,html[dir="rtl"] .prose,html[dir="rtl"] .service-prose { font-family:"Alexandria",sans-serif; text-align:right; line-height:2; }
html[dir="rtl"] .article-byline,html[dir="rtl"] .contact-detail-card p,html[dir="rtl"] .footer-hours p { direction:rtl; }
html[dir="rtl"] .back-link { direction:rtl; }
html[dir="rtl"] .messages { direction:rtl; text-align:right; }
html[dir="rtl"] .footer-brand,html[dir="rtl"] .site-footer { text-align:right; }
html[dir="rtl"] .footer-cta { display:inline-flex; direction:rtl; }
html[dir="rtl"] .article-art span { right:24px; left:auto; }
@media (max-width:700px) {
  html[dir="rtl"] .nav-links { right:auto; left:0; text-align:right; }
  html[dir="rtl"] .service-detail-scroll { left:18px; right:auto; }
  html[dir="rtl"] .service-detail-quick p { border-right:0; }
  html[dir="rtl"] .service-possibility { border-left:0; }
}

/* Shared components and full site */
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.section { padding: 118px 0; }
.section-kicker.dark { color: var(--teal-dark); }
.section-heading { margin-bottom: 54px; }
.section-heading h2, .approach-copy h2, .assessment-intro h2 { font-size: clamp(40px, 4.2vw, 62px); line-height: 1.08; }
.section-heading h2 em, .approach-copy h2 em, .assessment-intro h2 em { color: var(--purple); font-style: normal; }
.split-heading { display: grid; grid-template-columns: 1.2fr .8fr; gap: 90px; align-items: end; }
.split-heading > div:last-child { padding-bottom: 8px; }
.split-heading > div:last-child > p { margin: 0 0 22px; color: var(--muted); font-size: 17px; line-height: 1.7; }
.centered-heading { max-width: 860px; margin-inline: auto; text-align: center; }
.arrow-link { display: inline-flex; gap: 12px; align-items: center; color: var(--purple); font-weight: 700; text-underline-offset: 5px; }
.arrow-link span { color: var(--orange); }
.card-link { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 22px; color: var(--purple); border-top: 1px solid var(--line); font-weight: 700; font-size: 13px; }
.menu-toggle { display: none; width: 42px; height: 42px; padding: 10px; border: 0; border-radius: 50%; background: var(--purple-soft); }
.menu-toggle > span:not(.sr-only) { display: block; width: 19px; height: 2px; margin: 4px auto; background: var(--purple-dark); }
.reveal-card { opacity: 0; transform: translateY(18px); transition: opacity .55s ease, transform .55s ease; }.reveal-card.in-view { opacity: 1; transform: translateY(0); }

.services-section { background: white; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.service-card { position: relative; display: flex; min-height: 370px; padding: 30px; overflow: hidden; border: 1px solid var(--line); border-radius: 24px; flex-direction: column; text-decoration: none; background: #fff; transition: transform .25s, box-shadow .25s, border-color .25s; }
.service-card:last-child { grid-column: 2 / 3; }
.service-card:hover { transform: translateY(-8px); border-color: transparent; box-shadow: 0 24px 58px rgba(57,37,65,.12); }
.service-number { position: absolute; top: 26px; right: 28px; color: #a9a5ab; font: 700 11px "Manrope"; }
.service-icon { display: grid; width: 62px; height: 62px; margin-bottom: 32px; place-items: center; color: var(--purple); border-radius: 20px; background: var(--purple-soft); font: 800 13px "Manrope"; }
.accent-teal .service-icon { color: var(--teal-dark); background: var(--teal-soft); }
.accent-orange .service-icon { color: #9e5711; background: var(--orange-soft); }
.service-card h3 { margin: 0 0 14px; font: 700 24px/1.2 "Manrope"; letter-spacing: -.035em; }
.service-card > p { margin: 0 0 28px; color: var(--muted); line-height: 1.65; }

.approach-section { background: linear-gradient(150deg, #f8f2eb, #edf5f3); }
.approach-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 110px; align-items: center; }
.approach-visual { position: relative; min-height: 570px; border-radius: 40px; background: linear-gradient(145deg, #fffdf9, #eadfed); box-shadow: var(--shadow); overflow: hidden; }
.approach-visual::before { content: ""; position: absolute; width: 260px; height: 260px; left: -70px; bottom: -55px; border-radius: 50%; background: var(--orange); opacity: .22; }
.approach-rings { position: absolute; inset: 50%; width: 360px; height: 360px; transform: translate(-50%,-50%); }
.approach-rings span { position: absolute; inset: 0; border: 1px solid rgba(72,32,95,.18); border-radius: 50%; }
.approach-rings span:nth-child(2) { inset: 55px; border-color: rgba(49,136,154,.34); }
.approach-rings span:nth-child(3) { inset: 112px; border: 0; background: var(--purple); box-shadow: 0 22px 60px rgba(107,38,159,.28); }
.approach-rings strong { position: absolute; inset: 0; display: grid; place-items: center; color: white; z-index: 2; font: 700 24px "Manrope"; }
.orbit-note { position: absolute; padding: 14px 22px; color: var(--purple-dark); border-radius: 999px; background: rgba(255,255,255,.88); box-shadow: 0 10px 30px rgba(72,32,95,.1); font-weight: 700; font-size: 13px; }
.note-one { top: 90px; left: 58px; }.note-two { top: 118px; right: 40px; }.note-three { bottom: 75px; left: 38%; }
.approach-copy > p:not(.section-kicker) { margin: 28px 0 35px; color: var(--muted); font-size: 18px; line-height: 1.75; }
.steps-list { margin: 0; padding: 0; list-style: none; }
.steps-list li { display: grid; grid-template-columns: 48px 1fr; gap: 20px; padding: 22px 0; border-top: 1px solid var(--line); }
.steps-list li > span { color: var(--orange); font: 800 12px "Manrope"; }
.steps-list strong { display: block; margin-bottom: 6px; font: 700 17px "Manrope"; }
.steps-list p { margin: 0; color: var(--muted); line-height: 1.55; }

.programs-section { background: #fdfaf5; }
.program-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.program-card { position: relative; padding: 44px; overflow: hidden; border-radius: 30px; background: white; box-shadow: 0 22px 65px rgba(57,37,65,.09); }
.program-card::after { content: ""; position: absolute; width: 190px; height: 190px; top: -95px; right: -80px; border: 30px solid var(--purple-soft); border-radius: 50%; }
.program-card.accent-teal::after { border-color: var(--teal-soft); }
.program-top { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; margin-bottom: 45px; }
.program-top p { margin: 0; color: var(--teal-dark); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.program-top span { color: var(--orange); font: 800 12px "Manrope"; }
.program-card h3 { position: relative; z-index: 2; margin: 0 0 18px; font: 700 35px/1.15 "Manrope"; letter-spacing: -.045em; }
.program-card > p { min-height: 86px; margin: 0; color: var(--muted); font-size: 16px; line-height: 1.7; }
.program-services { margin: 32px 0; padding-top: 25px; border-top: 1px solid var(--line); }
.program-services > strong { display: block; margin-bottom: 13px; color: var(--purple-dark); font-size: 12px; text-transform: uppercase; letter-spacing: .07em; }
.program-services > div { display: flex; flex-wrap: wrap; gap: 8px; }
.program-services span { padding: 8px 11px; color: var(--teal-dark); border-radius: 8px; background: var(--teal-soft); font-size: 11px; font-weight: 700; }
.button-outline { color: var(--purple); border: 1px solid rgba(107,38,159,.24); background: transparent; box-shadow: none; }
.button-outline:hover { color: white; }

.assessments-section { color: white; background: var(--purple-dark); }
.assessment-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
.assessment-intro { position: sticky; top: 35px; }
.assessment-intro h2 em { color: var(--orange); }
.assessment-intro > p:not(.section-kicker) { margin: 28px 0 34px; color: #d7ceda; font-size: 17px; line-height: 1.75; }
.warm-button { color: var(--purple-dark); background: var(--orange); box-shadow: none; }
.warm-button:hover { background: #ffb25d; }
.assessment-list { border-top: 1px solid rgba(255,255,255,.2); }
.assessment-list > a { display: grid; grid-template-columns: 95px 1fr 28px; gap: 20px; align-items: start; padding: 27px 4px; border-bottom: 1px solid rgba(255,255,255,.16); text-decoration: none; transition: padding .2s, background .2s; }
.assessment-list > a:hover { padding-inline: 15px; background: rgba(255,255,255,.05); }
.assessment-code { color: var(--orange); font: 800 18px "Manrope"; }
.assessment-list strong, .assessment-list small { display: block; }
.assessment-list strong { margin-bottom: 9px; font-size: 14px; }
.assessment-list small { color: #cfc6d2; line-height: 1.55; }
.assessment-list b { color: var(--orange); }

.training-section { background: white; }
.training-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.training-card { display: grid; grid-template-columns: 46px 1fr 40px; gap: 22px; min-height: 260px; padding: 35px; align-items: start; color: white; border-radius: 26px; text-decoration: none; background: var(--purple); transition: transform .22s; }
.training-card:hover { transform: translateY(-6px); }
.training-card.accent-teal { background: var(--teal-dark); }
.training-index { color: var(--orange); font: 800 12px "Manrope"; }
.training-card div > p { margin: 0 0 22px; opacity: .72; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.training-card h3 { margin: 0 0 18px; font: 700 30px/1.2 "Manrope"; }
.training-card div > span { display: block; color: rgba(255,255,255,.78); line-height: 1.65; }
.training-card > b { display: grid; width: 40px; height: 40px; place-items: center; color: var(--purple-dark); border-radius: 50%; background: var(--orange); }

.resources-section { background: #f7f2eb; }
.article-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.article-card { overflow: hidden; border-radius: 24px; background: white; box-shadow: 0 16px 45px rgba(57,37,65,.08); }
.article-art { position: relative; display: flex; height: 210px; padding: 24px; align-items: flex-start; overflow: hidden; background: var(--purple-soft); }
.article-art::before, .article-art::after { content: ""; position: absolute; border-radius: 50%; }
.article-art::before { width: 220px; height: 220px; right: -70px; bottom: -110px; border: 36px solid var(--purple); opacity: .82; }
.article-art::after { width: 80px; height: 80px; left: 35px; bottom: -23px; background: var(--orange); opacity: .85; }
.article-art.art-2 { background: var(--teal-soft); }.article-art.art-2::before { border-color: var(--teal); }.article-art.art-3 { background: var(--orange-soft); }.article-art.art-3::before { border-color: var(--orange); }.article-art.art-3::after { background: var(--purple); }
.article-art span { position: relative; z-index: 2; padding: 8px 11px; color: var(--purple-dark); border-radius: 999px; background: rgba(255,255,255,.82); font-size: 10px; font-weight: 700; text-transform: uppercase; }
.article-copy { display: flex; min-height: 315px; padding: 28px; flex-direction: column; }
.article-copy > p { margin: 0 0 14px; color: var(--teal-dark); font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.article-copy h3, .article-copy h2 { margin: 0 0 14px; font: 700 21px/1.35 "Manrope"; letter-spacing: -.025em; }
.article-copy h3 a, .article-copy h2 a { text-decoration: none; }
.article-copy > span { margin-bottom: 25px; color: var(--muted); font-size: 14px; line-height: 1.65; }

.contact-section { padding: 110px 0; color: white; background: linear-gradient(140deg, var(--teal-dark), #144b55); }
.contact-grid { display: grid; grid-template-columns: 1fr .95fr; gap: 100px; align-items: center; }
.contact-copy h2 { margin: 0; max-width: 630px; font: 700 clamp(44px, 5vw, 66px)/1.08 "Manrope"; letter-spacing: -.045em; }
.contact-copy > p:not(.section-kicker) { max-width: 580px; margin: 28px 0 38px; color: #c9e0df; font-size: 18px; line-height: 1.75; }
.contact-hours { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.contact-hours span { color: #9ac9c9; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }.contact-hours i { width: 1px; height: 17px; background: rgba(255,255,255,.3); }
.contact-form-card { padding: 38px; color: var(--ink); border-radius: 28px; background: white; box-shadow: 0 30px 80px rgba(11,51,57,.25); }
.contact-form-card > h3, .contact-form-card > h2 { margin: 0 0 8px; font: 700 30px "Manrope"; }.contact-form-card > p { margin: 0 0 25px; color: var(--muted); }
.inquiry-form { display: grid; gap: 16px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.inquiry-form label > span:first-child { display: block; margin-bottom: 6px; color: var(--purple-dark); font-size: 11px; font-weight: 700; }
.inquiry-form input:not([type="checkbox"]), .inquiry-form select, .inquiry-form textarea { width: 100%; min-height: 49px; padding: 12px 14px; color: var(--ink); border: 1px solid #dcd8dd; border-radius: 11px; outline: none; background: #fcfbfa; font: inherit; }
.inquiry-form textarea { min-height: 110px; resize: vertical; }.inquiry-form input:focus, .inquiry-form select:focus, .inquiry-form textarea:focus { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(107,38,159,.1); }
.consent-field { display: grid; grid-template-columns: 18px 1fr; gap: 9px; align-items: start; }.consent-field input { margin-top: 2px; accent-color: var(--purple); }.consent-field > span { margin: 0 !important; color: var(--muted) !important; font-size: 10px !important; line-height: 1.45; }
.consent-field a { color:var(--purple); font-weight:700; text-underline-offset:2px; }
.form-errors { padding:12px 14px; color:#8d2c3c; border:1px solid #e9bac2; border-radius:9px; background:#fff1f3; font-size:12px; }
.errorlist { margin: 5px 0 0; padding: 0; color: #a82b3e; list-style: none; font-size: 11px; }.messages { position: relative; z-index: 50; }.message { margin: 14px 0; padding: 15px 18px; color: #145b48; border: 1px solid #a8dccc; border-radius: 12px; background: #e9f8f2; }

.site-footer { padding: 75px 0 24px; color: #ddd5e0; background: #25142e; }
.footer-grid { display: grid; grid-template-columns: 1.5fr .7fr .7fr 1.15fr; gap: 65px; padding-bottom: 55px; }
.footer-brand img { width: 270px; max-width: 100%; height: 90px; padding: 9px; object-fit: contain; border-radius: 16px; background: white; }.footer-brand p { max-width: 350px; color: #bfb4c4; line-height: 1.7; }
.footer-grid h2 { margin: 8px 0 20px; color: white; font: 700 13px "Manrope"; text-transform: uppercase; letter-spacing: .08em; }
.footer-grid > div:not(.footer-brand) > a { display: block; margin-bottom: 12px; color: #cfc5d2; text-decoration: none; font-size: 13px; }.footer-grid a:hover { color: var(--orange); }
.footer-hours p { display: flex; justify-content: space-between; gap: 18px; margin: 0; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.12); font-size: 12px; }.footer-hours span { color: #9e92a4; }.footer-cta { margin-top: 22px; color: var(--orange) !important; font-weight: 700; }
.footer-bottom { display: flex; justify-content: space-between; gap: 35px; padding-top: 23px; border-top: 1px solid rgba(255,255,255,.12); color: #897e8e; font-size: 10px; }.footer-bottom p { margin: 0; }

/* Interior pages */
.page-hero { padding: 108px 0 100px; color: white; background: linear-gradient(135deg, var(--purple-dark), #6c3185); }
.page-hero-inner { max-width: 950px; }.page-hero h1 { max-width: 900px; font-size: clamp(52px, 7vw, 88px); }.page-hero-inner > p:last-child { max-width: 720px; margin: 28px 0 0; color: #ded1e2; font-size: 20px; line-height: 1.7; }
.resources-hero { background: linear-gradient(140deg, #124f5a, var(--teal)); }.careers-hero { background: linear-gradient(140deg, #48205f, #6c269e 65%, #9d5c28); }
.collection-section { background: white; }.collection-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.collection-card { display: flex; min-height: 420px; padding: 34px; flex-direction: column; border: 1px solid var(--line); border-radius: 26px; text-decoration: none; background: white; transition: transform .23s, box-shadow .23s; }.collection-card:hover { transform: translateY(-7px); box-shadow: var(--shadow); }.collection-number { color: var(--orange); font: 800 11px "Manrope"; }.collection-card > p { margin: 45px 0 10px; color: var(--teal-dark); font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }.collection-card h2 { margin: 0 0 10px; font-size: 28px; line-height: 1.18; }.collection-card small { margin-bottom: 15px; color: var(--purple); font-weight: 700; }.collection-card > span:not(.collection-number) { margin-bottom: 30px; color: var(--muted); line-height: 1.65; }.collection-card > b { margin-top: auto; padding-top: 20px; color: var(--purple); border-top: 1px solid var(--line); font-size: 13px; }
.mini-cta { padding: 55px 0; color: white; background: var(--teal-dark); }.mini-cta .container { display: flex; align-items: center; justify-content: space-between; gap: 50px; }.mini-cta p { margin: 0 0 5px; color: #b7d6d4; font-size: 12px; text-transform: uppercase; letter-spacing: .07em; }.mini-cta h2 { font-size: 28px; letter-spacing: -.03em; }
.detail-hero { padding: 90px 0 105px; overflow: hidden; }.accent-bg-purple { background: linear-gradient(135deg, #f7f0fa, #f5eee8); }.accent-bg-teal { background: linear-gradient(135deg, #e9f5f4, #faf7f1); }.accent-bg-orange { background: linear-gradient(135deg, #fff1df, #f5edf6); }
.detail-hero-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; align-items: center; }.back-link { display: inline-block; margin-bottom: 42px; color: var(--muted); font-size: 13px; text-underline-offset: 4px; }.detail-hero h1 { max-width: 760px; font-size: clamp(54px, 7vw, 86px); }.full-name { max-width: 750px; margin: 16px 0 0; color: var(--purple); font-weight: 700; }.detail-summary { max-width: 760px; margin: 28px 0 34px; color: var(--muted); font-size: 20px; line-height: 1.7; }
.detail-mark { position: relative; display: grid; width: 360px; height: 360px; place-items: center; justify-self: end; color: white; border-radius: 48% 52% 40% 60%; background: var(--purple); box-shadow: var(--shadow); }.accent-bg-teal .detail-mark { background: var(--teal); }.accent-bg-orange .detail-mark { color: var(--purple-dark); background: var(--orange); }.detail-mark span { position: relative; z-index: 3; max-width: 260px; text-align: center; font: 800 42px/1.1 "Manrope"; }.detail-mark i { position: absolute; width: 150px; height: 150px; top: -28px; right: -24px; border: 24px solid var(--orange); border-radius: 50%; opacity: .75; }.detail-mark i:last-child { width: 80px; height: 80px; top: auto; right: auto; bottom: -10px; left: -18px; border: 0; background: var(--teal); }
.detail-content { background: white; }.detail-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 100px; }.prose p { margin: 0 0 24px; color: var(--muted); font-size: 18px; line-height: 1.85; }.info-block { margin-top: 45px; padding-top: 34px; border-top: 1px solid var(--line); }.info-block h2 { margin: 0 0 14px; font-size: 28px; }.info-block p, .info-block li { color: var(--muted); font-size: 17px; line-height: 1.75; }
.aside-card { margin-bottom: 20px; padding: 30px; border-radius: 22px; background: #f7f3f7; }.aside-card h2 { margin: 0 0 20px; font-size: 20px; }.aside-card ul { margin: 0; padding: 0; list-style: none; }.aside-card li { position: relative; padding: 11px 0 11px 23px; border-top: 1px solid var(--line); color: var(--muted); font-size: 14px; }.aside-card li::before { content: "✓"; position: absolute; left: 0; color: var(--teal); font-weight: 800; }.soft-card { background: var(--teal-soft); }.soft-card > p, .clinical-note { color: var(--muted); font-size: 12px; line-height: 1.6; }.clinical-note { padding: 18px; border-left: 3px solid var(--orange); background: var(--orange-soft); }
.related-section { background: #f8f4ef; }.related-section > .container > h2 { margin: 0 0 32px; font-size: 38px; }.related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }.related-grid a { padding: 28px; border-radius: 20px; text-decoration: none; background: white; }.related-grid span { color: var(--teal-dark); font-size: 10px; text-transform: uppercase; }.related-grid h3 { margin: 20px 0 12px; font: 700 22px "Manrope"; }.related-grid p { color: var(--muted); font-size: 13px; line-height: 1.55; }.related-grid b { color: var(--purple); font-size: 12px; }
.resource-search { display: flex; max-width: 620px; margin-top: 35px; padding: 6px; border-radius: 999px; background: white; }.resource-search input { flex: 1; min-width: 0; padding: 14px 20px; border: 0; outline: 0; border-radius: inherit; font: inherit; }.resource-search button { padding: 0 24px; color: white; border: 0; border-radius: 999px; background: var(--purple); font-weight: 700; }.library-grid { align-items: start; }
.article-header { padding: 90px 0 75px; background: linear-gradient(140deg, #f8f1e9, #e9f4f3); }.narrow-container { max-width: 820px; }.article-header h1 { font-size: clamp(48px, 6vw, 76px); }.article-excerpt { margin: 28px 0; color: var(--muted); font-size: 20px; line-height: 1.7; }.article-byline { display: flex; gap: 24px; color: var(--teal-dark); font-size: 12px; font-weight: 700; }.article-body { padding-block: 70px 100px; }.article-body > p { margin: 0 0 28px; color: #4f4954; font-size: 19px; line-height: 1.9; }.article-disclaimer { margin-top: 55px; padding: 28px; border-radius: 18px; background: var(--orange-soft); }.article-disclaimer strong { color: var(--purple-dark); }.article-disclaimer p { margin: 8px 0 0; color: var(--muted); line-height: 1.6; }
.jobs-list { display: grid; gap: 22px; }
.job-card { display: grid; grid-template-columns: minmax(280px,.72fr) 1fr; min-height: 320px; overflow: hidden; border: 1px solid var(--line); border-radius: 20px; text-decoration: none; background: white; transition: transform .3s, box-shadow .3s; }
.job-card:hover { transform: translateY(-5px); box-shadow: 0 28px 70px rgba(49,29,54,.13); }
.job-card-media { position: relative; display: block; min-height: 320px; overflow: hidden; background: var(--purple-soft); }
.job-card-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 72%,rgba(255,255,255,.18)); }
.job-card-media img { display:block; width:100%; height:100%; object-fit:cover; transition: transform .65s cubic-bezier(.2,.7,.2,1); }
.job-card:hover .job-card-media img { transform:scale(1.035); }
.job-card-copy { display:flex; padding:48px; flex-direction:column; justify-content:center; }
.job-card p { margin: 0 0 14px; color: var(--teal-dark); font-size: 11px; font-weight:750; letter-spacing:.07em; text-transform: uppercase; }
.job-card h2 { margin: 0 0 16px; font-size: clamp(28px,3vw,42px); letter-spacing:-.045em; }
.job-card span { color: var(--muted); line-height:1.75; }
.job-card b { margin-top:28px; color: var(--purple); font-size:12px; }
.empty-state { grid-column: 1 / -1; padding: 60px; text-align: center; border-radius: 24px; background: #f5f1f5; }.large-empty { max-width: 700px; margin: auto; }.large-empty > span { display: grid; width: 60px; height: 60px; margin: 0 auto 20px; place-items: center; color: white; border-radius: 50%; background: var(--orange); }.empty-state h2 { margin: 0 0 10px; font-size: 28px; }.empty-state p { color: var(--muted); }
.contact-page { padding: 95px 0 110px; background: linear-gradient(145deg, var(--teal-dark) 0 47%, #f7f1e8 47%); }.contact-page-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; align-items: center; }.contact-page-copy { color: white; }.contact-page-copy h1 { font-size: clamp(52px, 6vw, 78px); }.contact-page-copy > p:not(.eyebrow) { max-width: 590px; color: #cde1e0; font-size: 18px; line-height: 1.75; }.contact-detail-card { margin-top: 40px; padding: 25px; border: 1px solid rgba(255,255,255,.17); border-radius: 19px; background: rgba(255,255,255,.08); }.contact-detail-card h2 { margin: 0 0 15px; font-size: 16px; }.contact-detail-card p { display: flex; justify-content: space-between; margin: 0; padding: 11px 0; border-top: 1px solid rgba(255,255,255,.14); }.contact-detail-card span { color: #9fc9c7; }.contact-detail-card small { display: block; margin-top: 16px; color: #a9cecc; line-height: 1.5; }.large-form { padding: 45px; }

@media (max-width: 1050px) {
  .service-grid, .collection-grid { grid-template-columns: repeat(2,1fr); }.service-card:last-child { grid-column: auto; }
  .approach-grid, .assessment-layout, .detail-hero-grid, .detail-grid, .contact-page-grid { gap: 55px; }
  .footer-grid { grid-template-columns: 1.4fr .7fr .7fr; }.footer-hours { grid-column: 1 / -1; }
}

@media (max-width: 860px) {
  .nav { position: relative; }.menu-toggle { display: block; order: 2; }.nav-actions { margin-left: auto; }.nav-actions .language { display: none; }
  .nav-links { position: absolute; display: none; top: 76px; left: 0; right: 0; padding: 20px; border-radius: 16px; flex-direction: column; align-items: stretch; background: white; box-shadow: var(--shadow); }.nav-links.is-open { display: flex; }.nav-links a { padding: 10px; }
  .split-heading, .approach-grid, .assessment-layout, .contact-grid, .contact-page-grid, .detail-grid, .detail-hero-grid { grid-template-columns: 1fr; }
  .split-heading { gap: 28px; }.approach-visual { min-height: 470px; }.assessment-intro { position: static; }.detail-mark { justify-self: center; }.contact-page { background: linear-gradient(180deg, var(--teal-dark) 0 48%, #f7f1e8 48%); }
  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; gap: 35px; }
}

@media (max-width: 650px) {
  .section { padding: 78px 0; }.section-heading h2, .approach-copy h2, .assessment-intro h2 { font-size: 39px; }
  .service-grid, .program-grid, .training-grid, .article-grid, .collection-grid, .related-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 330px; }.program-card { padding: 30px; }.training-card { grid-template-columns: 35px 1fr; padding: 27px; }.training-card > b { display: none; }
  .journey-grid { grid-template-columns: 1fr; }.journey-grid > a { min-height: auto; padding: 18px 0; }.journey-grid a span { margin-bottom: 7px; }
  .assessment-list > a { grid-template-columns: 72px 1fr; }.assessment-list > a > b { display: none; }.assessment-code { font-size: 14px; }
  .form-row { grid-template-columns: 1fr; }.contact-form-card, .large-form { padding: 26px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }.footer-brand, .footer-hours { grid-column: 1 / -1; }.footer-bottom { flex-direction: column; }
  .page-hero { padding: 75px 0; }.page-hero h1 { font-size: 50px; }.page-hero-inner > p:last-child { font-size: 17px; }
  .detail-mark { width: 270px; height: 270px; }.detail-mark span { max-width: 200px; font-size: 30px; }.detail-summary { font-size: 17px; }.detail-grid { gap: 55px; }
  .mini-cta .container { flex-direction: column; align-items: flex-start; }.article-body > p { font-size: 17px; }.job-card { grid-template-columns:1fr; }.job-card-media { min-height:240px; }.job-card-copy { padding:30px 25px; }
}

/* Unified CBS editorial art direction */
.editorial-photo { min-height: 650px; border-radius: 3px; }
.editorial-photo picture { position: absolute; inset: 0; display: block; }
.editorial-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center; filter: saturate(.86); }
.editorial-photo::before { inset: 0; width: auto; height: auto; left: 0; bottom: 0; border-radius: 0; background: linear-gradient(0deg, rgba(40,18,47,.88), transparent 62%); opacity: 1; z-index: 1; }
.approach-photo-note { position: absolute; z-index: 2; left: 38px; right: 38px; bottom: 38px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; color: white; }
.approach-photo-note span { flex-basis: 100%; color: #ffc17c; font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.approach-photo-note strong { font: 600 25px "Cormorant Garamond", serif; }
.approach-photo-note i { color: var(--orange); font-style: normal; }

.programs-editorial { padding: 140px 0; background: #f7efe5; }
.programs-editorial .split-heading { margin-bottom: 65px; }
.programs-editorial .split-heading > div:last-child { align-self: end; }
.programs-editorial .split-heading > div:last-child p { color: var(--muted); font-size: 17px; line-height: 1.75; }
.programs-cinematic { position: relative; min-height: 760px; overflow: hidden; color: white; background: #301b38; isolation: isolate; box-shadow: 0 35px 90px rgba(46,25,53,.2); }
.programs-cinematic-media { position: absolute; inset: 0; z-index: -3; }
.programs-cinematic-media img { width: 100%; height: 100%; object-fit: cover; object-position: 53% center; }
.programs-cinematic-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(38,17,45,.92), rgba(38,17,45,.18) 56%, rgba(38,17,45,.35)), linear-gradient(0deg, rgba(38,17,45,.94), transparent 60%); }
.programs-cinematic-copy { position: absolute; left: clamp(34px,5vw,72px); top: clamp(45px,7vw,90px); max-width: 530px; }
.programs-cinematic-copy > p { color: #f5be7c; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.programs-cinematic-copy h3 { margin: 20px 0 0; font: 600 clamp(47px,5vw,70px)/.92 "Manrope", sans-serif; letter-spacing: -.06em; }
.program-chapters { position: absolute; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: repeat(2,1fr); background: rgba(36,16,43,.8); backdrop-filter: blur(15px); }
.program-chapters > a { display: grid; grid-template-columns: 40px 1fr 25px; gap: 20px; min-height: 250px; padding: 38px clamp(28px,4vw,55px); color: white; border-top: 1px solid rgba(255,255,255,.2); text-decoration: none; }
.program-chapters > a + a { border-left: 1px solid rgba(255,255,255,.2); }
.program-chapters > a > span { color: var(--orange); font-size: 10px; font-weight: 700; }
.program-chapters small { display: block; margin-bottom: 13px; color: #b9d9d6; font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.program-chapters strong { display: block; font: 600 26px/1.1 "Manrope", sans-serif; }
.program-chapters p { color: rgba(255,255,255,.62); font-size: 12px; line-height: 1.6; }
.program-chapters b { transition: transform .2s; }.program-chapters a:hover b { transform: translate(4px,-4px); }

.assessment-editorial { position: relative; padding: 140px 0; overflow: hidden; }
.assessment-editorial::after { content: "UNDERSTAND"; position: absolute; left: -14px; bottom: -38px; color: rgba(255,255,255,.035); font: 800 150px/1 "Manrope", sans-serif; letter-spacing: -.08em; pointer-events: none; }
.assessment-editorial .assessment-intro { position: static; }
.assessment-portrait { position: relative; height: 320px; margin-bottom: 45px; overflow: hidden; }
.assessment-portrait picture, .assessment-portrait img { display: block; width: 100%; height: 100%; }
.assessment-portrait img { object-fit: cover; object-position: 64% center; filter: saturate(.76); }
.assessment-portrait::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(44,19,52,.82), transparent 55%); }
.assessment-portrait span { position: absolute; z-index: 2; left: 28px; bottom: 24px; color: white; font: 600 italic 24px "Cormorant Garamond", serif; }

.training-cinematic { position: relative; min-height: 820px; padding: 140px 0; overflow: hidden; color: white; background: #2e1936; isolation: isolate; }
.training-cinematic-media { position: absolute; inset: 0; z-index: -3; }
.training-cinematic-media img { width: 100%; height: 100%; object-fit: cover; object-position: 43% center; }
.training-cinematic-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(39,18,47,.38), rgba(39,18,47,.96) 58%), linear-gradient(0deg, rgba(34,15,41,.9), transparent 70%); }
.training-cinematic-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 100px; align-items: end; }
.training-cinematic-copy { align-self: start; padding-top: 25px; }
.training-cinematic-copy h2 { margin: 24px 0; color: white; font-size: clamp(50px,5.7vw,78px); }
.training-cinematic-copy h2 em { color: var(--orange); }
.training-cinematic-copy > p:last-child { max-width: 550px; color: rgba(255,255,255,.7); font-size: 17px; line-height: 1.75; }
.training-cinematic-list { border-top: 1px solid rgba(255,255,255,.25); }
.training-cinematic-list > a { display: grid; grid-template-columns: 38px 1fr 30px; gap: 22px; padding: 32px 0; color: white; border-bottom: 1px solid rgba(255,255,255,.25); text-decoration: none; }
.training-cinematic-list > a > span { color: var(--orange); font-size: 10px; }
.training-cinematic-list small { color: #b9d9d6; font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.training-cinematic-list strong { display: block; margin: 8px 0 10px; font: 600 27px "Manrope", sans-serif; }
.training-cinematic-list p { margin: 0; color: rgba(255,255,255,.58); font-size: 12px; line-height: 1.6; }

.contact-cinematic { position: relative; overflow: hidden; background: #321c3a; isolation: isolate; }
.contact-cinematic-media { position: absolute; inset: 0; z-index: -3; }
.contact-cinematic-media img { width: 100%; height: 100%; object-fit: cover; object-position: 52% center; }
.contact-cinematic-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(40,18,48,.95), rgba(40,18,48,.72) 50%, rgba(40,18,48,.38)); }
.contact-cinematic .contact-form-card { border: 1px solid rgba(255,255,255,.3); background: rgba(255,255,255,.93); box-shadow: 0 30px 90px rgba(25,9,30,.32); }

/* Collection and detail chapters */
.collection-hero { position: relative; display: flex; min-height: 670px; align-items: flex-end; overflow: hidden; color: white; background: #2f1937; isolation: isolate; }
.collection-hero-media { position: absolute; inset: 0; z-index: -3; }
.collection-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 58% center; }
.collection-hero-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(38,17,45,.98), rgba(38,17,45,.75) 45%, rgba(38,17,45,.12)), linear-gradient(0deg, rgba(31,13,38,.7), transparent 55%); }
.collection-hero-copy { padding-top: 115px; padding-bottom: 85px; }
.collection-hero-copy h1 { max-width: 770px; margin: 22px 0; color: white; font-size: clamp(63px,7.4vw,104px); line-height: .92; letter-spacing: -.07em; }
.collection-hero-copy h1 em { color: var(--orange); font-family: "Cormorant Garamond", serif; }
.collection-hero-copy > p:not(.eyebrow) { max-width: 650px; color: rgba(255,255,255,.72); font-size: 19px; line-height: 1.75; }
.collection-hero-copy > a { display: inline-flex; margin-top: 24px; align-items: center; gap: 14px; color: white; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.collection-hero-copy > a span { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgba(255,255,255,.32); border-radius: 50%; }
.editorial-collection { padding: 120px 0; background: #f8f1e8; }
.collection-editorial-list { border-top: 1px solid rgba(72,32,95,.2); }
.collection-editorial-row { display: grid; grid-template-columns: 70px 1fr 1fr 40px; gap: 35px; min-height: 210px; padding: 38px 0; align-items: center; color: var(--ink); border-bottom: 1px solid rgba(72,32,95,.2); text-decoration: none; }
.collection-editorial-row > .collection-number { color: var(--orange); font: 700 11px "Manrope", sans-serif; }
.collection-editorial-title small { display: block; margin-bottom: 10px; color: var(--teal-dark); font-size: 9px; letter-spacing: .11em; text-transform: uppercase; }
.collection-editorial-title h2 { margin: 0; font-size: clamp(30px,3vw,46px); letter-spacing: -.05em; }
.collection-editorial-title em { display: block; margin-top: 8px; color: var(--purple); font: 600 italic 20px "Cormorant Garamond", serif; }
.collection-editorial-row > p { color: var(--muted); font-size: 14px; line-height: 1.7; }
.collection-editorial-row > b { display: grid; width: 38px; height: 38px; place-items: center; color: white; border-radius: 50%; background: var(--purple); transition: transform .25s; }
.collection-editorial-row:hover > b { transform: translate(5px,-5px); }

.detail-cinematic { position: relative; display: flex; min-height: 730px; padding: 0; align-items: flex-end; overflow: hidden; color: white; isolation: isolate; }
.detail-cinematic-media { position: absolute; inset: 0; z-index: -3; }
.detail-cinematic-media img { width: 100%; height: 100%; object-fit: cover; object-position: 60% center; }
.detail-cinematic-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(37,16,44,.98), rgba(37,16,44,.78) 48%, rgba(37,16,44,.12)), linear-gradient(0deg, rgba(29,11,35,.66), transparent); }
.detail-cinematic-copy { display: flex; padding-top: 110px; padding-bottom: 80px; align-items: flex-end; justify-content: space-between; gap: 70px; }
.detail-cinematic-copy > div { max-width: 760px; }
.detail-cinematic .back-link { color: rgba(255,255,255,.7); }
.detail-cinematic h1 { margin: 20px 0; color: white; font-size: clamp(62px,7vw,102px); line-height: .9; letter-spacing: -.07em; }
.detail-cinematic .full-name { color: var(--orange); font: 600 italic 25px "Cormorant Garamond", serif; }
.detail-cinematic .detail-summary { color: rgba(255,255,255,.72); }
.detail-cinematic-quote { margin: 0 0 12px; color: white; font: 600 italic 31px/1.05 "Cormorant Garamond", serif; text-align: right; }
.detail-content article > .section-kicker { display: flex; align-items: center; gap: 10px; }
.detail-content article > .section-kicker::before { content: ""; width: 38px; height: 1px; background: var(--orange); }

.contact-page-cinematic { position: relative; overflow: hidden; background: #2f1937; isolation: isolate; }
.contact-page-media { position: absolute; inset: 0; z-index: -3; }
.contact-page-media img { width: 100%; height: 100%; object-fit: cover; object-position: 55% center; }
.contact-page-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(40,18,48,.97), rgba(40,18,48,.68) 52%, rgba(247,241,232,.9) 76%); }
.contact-page-cinematic .contact-page-copy h1 em { color: var(--orange); font-family: "Cormorant Garamond", serif; }
.contact-page-cinematic .large-form { border: 1px solid rgba(72,32,95,.12); background: rgba(255,255,255,.95); box-shadow: 0 34px 100px rgba(35,15,42,.3); }
.resources-hero .resource-search { background: rgba(255,255,255,.96); }
.article-card, .job-card, .aside-card, .related-grid a { border-radius: 3px; }
.article-card { transition: transform .3s, box-shadow .3s; }.article-card:hover { transform: translateY(-6px); box-shadow: 0 28px 70px rgba(49,29,54,.15); }
.article-art { background-position: center; background-size: cover; isolation: isolate; }
.article-art img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; }
.article-art::before { inset: 0; width: auto; height: auto; right: 0; bottom: 0; border: 0; border-radius: 0; background: linear-gradient(0deg, rgba(41,18,49,.78), rgba(41,18,49,.08)); opacity: 1; z-index: -1; }
.article-art::after { display: none; }
.article-art.art-1, .article-art.art-2, .article-art.art-3 { height: 250px; background-repeat: no-repeat; background-size: cover; }
.article-art.art-1 { background-image: url("../images/art-programs-v3.webp"); background-position: 54% center; }.article-art.art-2 { background-image: url("../images/art-assessment-v3.webp"); background-position: 62% center; }.article-art.art-3 { background-image: url("../images/art-training-v3.webp"); background-position: 46% center; }
.article-art span { color: white; border: 1px solid rgba(255,255,255,.3); background: rgba(43,20,51,.42); backdrop-filter: blur(8px); }
.article-header-cinematic { position: relative; min-height: 650px; padding: 100px 0 75px; overflow: hidden; color: white; background: #2e1936; isolation: isolate; }
.article-header-cinematic > picture { position: absolute; inset: 0; z-index: -3; }.article-header-cinematic > picture img { width: 100%; height: 100%; object-fit: cover; object-position: 58% center; }
.article-header-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(39,17,46,.98), rgba(39,17,46,.73) 55%, rgba(39,17,46,.15)); }
.article-header-cinematic .back-link { color: rgba(255,255,255,.68); }.article-header-cinematic h1 { color: white; }.article-header-cinematic .article-excerpt { color: rgba(255,255,255,.72); }.article-header-cinematic .article-byline { color: #f3bd7e; }
.about-page { overflow:hidden; background:#fbf7f0; }
.about-hero { position:relative; display:grid; min-height:780px; align-items:center; overflow:hidden; color:white; background:#2d1735; isolation:isolate; }
.about-hero-media { position:absolute; inset:0; z-index:-3; }
.about-hero-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.015); animation:aboutHeroDrift 18s ease-in-out infinite alternate; }
.about-hero-wash { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(38,17,47,.98) 0%,rgba(38,17,47,.92) 29%,rgba(38,17,47,.56) 50%,rgba(38,17,47,.05) 72%),linear-gradient(0deg,rgba(25,12,30,.5),transparent 42%); }
.about-hero-copy { position:relative; z-index:2; padding-block:120px 132px; }
.about-hero-copy .eyebrow { color:#f5c68f; }
.about-hero-copy h1 { max-width:700px; margin:18px 0 26px; color:white; font-size:clamp(62px,6.3vw,98px); line-height:.92; letter-spacing:-.07em; text-wrap:balance; }
.about-hero-copy > p:last-of-type { max-width:610px; margin:0; color:rgba(255,255,255,.81); font-size:18px; line-height:1.8; }
.about-hero-link-wrap { display:flex; max-width:700px; margin-top:36px; justify-content:flex-start; }
.about-hero-link-wrap > a { display:inline-flex; align-items:center; gap:12px; color:#ffd09a; font-size:11px; font-weight:800; letter-spacing:.09em; text-decoration:none; text-transform:uppercase; }
.about-hero-link-wrap > a span { display:grid; width:34px; height:34px; place-items:center; border:1px solid rgba(255,255,255,.26); border-radius:50%; transition:transform .3s,background .3s; }
.about-hero-link-wrap > a:hover span { color:#2f1937; background:#ffd09a; transform:translateY(4px); }
.about-hero-orbit { position:absolute; right:6vw; bottom:-170px; z-index:-1; width:420px; aspect-ratio:1; border:1px solid rgba(255,255,255,.16); border-radius:50%; pointer-events:none; }
.about-hero-orbit::before,.about-hero-orbit i { content:""; position:absolute; border:1px solid rgba(255,255,255,.11); border-radius:50%; }
.about-hero-orbit::before { inset:58px; }.about-hero-orbit i:first-child { inset:118px; border-color:rgba(249,164,72,.34); }.about-hero-orbit i:last-child { top:46px; left:54px; width:18px; height:18px; border:0; background:#f9a448; box-shadow:0 0 0 9px rgba(249,164,72,.12); }

.about-story { position:relative; padding:140px 0 132px; background:#f7efe5; }
.about-story::after { content:"CBS"; position:absolute; right:-38px; bottom:-30px; color:rgba(107,38,159,.045); font:800 220px/.8 "Manrope",sans-serif; letter-spacing:-.1em; pointer-events:none; }
.about-story-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:105px; }
.about-story-heading { position:relative; }
.about-story h2 { max-width:480px; margin:18px 0 0; font-size:clamp(52px,5.5vw,78px); line-height:.98; letter-spacing:-.065em; text-wrap:balance; }
.about-story-line { position:absolute; top:205px; left:0; width:210px; height:1px; background:rgba(72,32,95,.2); }
.about-story-line span { position:absolute; top:-6px; left:0; width:13px; height:13px; border:3px solid #f7efe5; border-radius:50%; background:var(--orange); box-shadow:0 0 0 1px rgba(72,32,95,.16); animation:aboutStoryPulse 3.8s ease-in-out infinite; }
.about-prose p { margin:0 0 24px; color:var(--muted); font-size:18px; line-height:1.92; }
.about-story-content .about-prose p:first-child { color:var(--ink); font-size:22px; line-height:1.7; }
.about-milestones { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:54px; overflow:hidden; border:1px solid rgba(72,32,95,.11); border-radius:3px; background:rgba(72,32,95,.11); }
.about-milestones article { min-height:150px; padding:27px 24px; background:#fffaf3; }
.about-milestones strong,.about-milestones span { display:block; }
.about-milestones strong { color:var(--purple); font:700 38px/1 "Manrope",sans-serif; letter-spacing:-.06em; }
.about-milestones strong sup { color:var(--orange); font-size:.48em; }
.about-milestones span { margin-top:32px; color:var(--muted); font-size:11px; font-weight:700; line-height:1.45; text-transform:uppercase; letter-spacing:.08em; }

.about-direction { padding:0 0 140px; background:#f7efe5; }
.about-direction-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.about-direction-card { position:relative; min-height:520px; padding:62px 58px 55px; overflow:hidden; color:white; isolation:isolate; }
.about-direction-card::before { content:""; position:absolute; right:-115px; bottom:-120px; z-index:-1; width:360px; height:360px; border:64px solid rgba(255,255,255,.07); border-radius:50%; transition:transform .65s; }
.about-direction-card:hover::before { transform:translate(-15px,-15px) rotate(10deg); }
.about-mission-card { background:#173f42; }.about-vision-card { background:#442052; }
.about-direction-card > span { color:rgba(255,255,255,.4); font:700 11px "Manrope",sans-serif; letter-spacing:.12em; }
.about-direction-card .section-kicker { margin-top:92px; color:#f5c68f; }
.about-direction-card h2 { max-width:470px; margin:18px 0 24px; color:white; font-size:clamp(38px,4vw,56px); line-height:1.03; letter-spacing:-.055em; }
.about-direction-card > p:last-child { max-width:500px; margin:0; color:rgba(255,255,255,.72); font-size:16px; line-height:1.85; }

.about-founder { position:relative; padding:145px 0; background:#fff; }
.about-founder::before { content:"“"; position:absolute; right:2vw; top:-90px; color:rgba(107,38,159,.045); font:600 390px/1 "Cormorant Garamond",serif; pointer-events:none; }
.about-founder-grid { display:grid; grid-template-columns:.86fr 1.14fr; gap:105px; align-items:center; }
.about-founder-photo { position:relative; height:650px; overflow:hidden; background:#ebe2d9; box-shadow:0 34px 90px rgba(45,26,50,.16); }
.about-founder-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(35,17,40,.66),transparent 40%); }
.about-founder-photo img { width:100%; height:100%; object-fit:cover; object-position:center 22%; filter:saturate(.88) contrast(1.02); transition:transform .9s cubic-bezier(.2,.8,.2,1); }
.about-founder-photo:hover img { transform:scale(1.035); }
.about-founder-photo span { position:absolute; left:30px; right:30px; bottom:27px; z-index:2; color:#fff; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.about-founder blockquote { position:relative; margin:0; padding:92px 48px 50px; isolation:isolate; border:1px solid rgba(91,65,47,.13); background:#fffaf0; box-shadow:0 34px 80px rgba(55,36,48,.13),0 4px 12px rgba(55,36,48,.08),inset 0 0 45px rgba(139,103,67,.035); transform:rotate(-.32deg); transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s; }
.about-founder blockquote:hover { box-shadow:0 40px 90px rgba(55,36,48,.16),0 5px 14px rgba(55,36,48,.09),inset 0 0 45px rgba(139,103,67,.035); transform:rotate(0) translateY(-3px); }
.about-founder blockquote::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.72; background:linear-gradient(118deg,rgba(255,255,255,.72),transparent 34%,rgba(210,183,145,.055) 72%,transparent),repeating-linear-gradient(0deg,rgba(91,65,47,.018) 0,rgba(91,65,47,.018) 1px,transparent 1px,transparent 5px),repeating-linear-gradient(90deg,rgba(255,255,255,.26) 0,rgba(255,255,255,.26) 1px,transparent 1px,transparent 8px); pointer-events:none; }
.about-founder blockquote::after { content:""; position:absolute; right:-1px; bottom:-1px; z-index:2; width:46px; height:46px; background:linear-gradient(135deg,rgba(202,178,145,.2) 0 49%,#eadfcf 50% 68%,#f8eddd 69%); clip-path:polygon(100% 0,0 100%,100% 100%); filter:drop-shadow(-4px -4px 5px rgba(61,42,50,.08)); pointer-events:none; }
.about-founder blockquote > i { position:absolute; top:29px; left:46px; z-index:1; color:var(--orange); font:600 96px/.8 "Cormorant Garamond",serif; }
.about-founder blockquote > p { position:relative; z-index:1; margin:0; color:#302637; font:500 italic clamp(34px,3.6vw,53px)/1.28 "Cormorant Garamond",serif; letter-spacing:-.025em; text-wrap:balance; }
.about-founder blockquote footer { display:flex; margin-top:45px; padding-top:25px; align-items:center; justify-content:space-between; gap:25px; border-top:1px solid var(--line); }
.about-founder blockquote footer strong,.about-founder blockquote footer span { display:block; }
.about-founder blockquote footer strong { color:var(--purple-dark); font-size:14px; }.about-founder blockquote footer span { color:var(--muted); font-size:11px; }

.about-approach { position:relative; padding:145px 0 130px; color:white; background:#29202e; }
.about-approach::after { content:"METHOD"; position:absolute; right:-35px; top:80px; color:rgba(255,255,255,.025); font:800 155px/.8 "Manrope",sans-serif; letter-spacing:-.09em; pointer-events:none; }
.about-approach-heading { display:grid; grid-template-columns:1.08fr .92fr; gap:100px; margin-bottom:78px; align-items:end; }
.about-approach-heading .section-kicker { color:#f5c68f; }
.about-approach-heading h2 { max-width:670px; margin-top:18px; color:white; font-size:clamp(52px,5.5vw,78px); line-height:.95; letter-spacing:-.065em; }
.about-approach-heading > p { max-width:500px; margin:0 0 8px; color:rgba(255,255,255,.63); font-size:17px; line-height:1.85; }
.about-approach-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:18px; }
.about-approach-grid article { min-height:300px; grid-column:span 4; padding:32px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.035); transition:transform .45s,border-color .45s,background .45s; }
.about-approach-grid article:nth-child(4) { grid-column:3 / span 4; }.about-approach-grid article:nth-child(5) { grid-column:7 / span 4; }
.about-approach-grid article:hover { border-color:rgba(249,164,72,.55); background:rgba(255,255,255,.065); transform:translateY(-8px); }
.about-approach-top { display:flex; align-items:center; justify-content:space-between; }
.about-approach-top span { color:#f5c68f; font:700 10px "Manrope",sans-serif; letter-spacing:.12em; }
.about-approach-top i { display:grid; width:48px; height:48px; place-items:center; color:#f7c487; border:1px solid rgba(247,196,135,.3); border-radius:50%; font-size:19px; }
.about-approach-grid article > p { margin:80px 0 0; color:rgba(255,255,255,.78); font-size:15px; line-height:1.82; }

.about-values { padding:140px 0; background:#fff; }
.about-values .section-heading h2 { max-width:800px; font-size:clamp(50px,5.5vw,76px); line-height:.98; }
.about-values .section-heading h2 em { color:var(--purple); font-family:"Cormorant Garamond",serif; font-weight:600; }
.about-values-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:66px; background:var(--line); }
.about-values-grid article { position:relative; min-height:310px; padding:35px; overflow:hidden; background:white; transition:background .35s,color .35s; }
.about-values-grid article:hover { color:white; background:var(--purple-dark); }
.about-values-grid article > span { color:var(--orange); font-size:10px; font-weight:800; letter-spacing:.1em; }
.about-values-grid article > i { position:absolute; top:32px; right:30px; width:28px; height:28px; border:1px solid rgba(72,32,95,.2); border-radius:50%; transition:border-color .35s,transform .35s; }
.about-values-grid article > i::after { content:""; position:absolute; inset:8px; border-radius:50%; background:var(--teal); }
.about-values-grid article:hover > i { border-color:rgba(255,255,255,.35); transform:scale(1.15); }
.about-values-grid p { margin:105px 0 0; font-size:20px; line-height:1.52; }

.about-trust { padding:140px 0 130px; color:white; background:#173f42; }
.about-trust-heading { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; margin-bottom:75px; align-items:end; }
.about-trust-heading .section-kicker { color:#f5c68f; }.about-trust-heading h2 { color:white; font-size:clamp(49px,5.2vw,72px); line-height:1; }.about-trust-heading h2 em { color:#f3c18a; font-family:"Cormorant Garamond",serif; font-weight:600; }
.about-trust-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.about-trust-grid > article { padding:42px; border:1px solid rgba(255,255,255,.13); background:rgba(255,255,255,.035); }
.about-trust-title { display:flex; padding-bottom:28px; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid rgba(255,255,255,.12); }
.about-trust-title span { color:#f5c68f; font:700 10px "Manrope",sans-serif; }.about-trust-title h3 { margin:0; color:white; font:700 25px/1.2 "Manrope",sans-serif; letter-spacing:-.04em; }
.about-trust-grid ul { display:grid; gap:22px; margin:32px 0 0; padding:0; list-style:none; }
.about-trust-grid li { display:grid; grid-template-columns:24px 1fr; gap:14px; color:rgba(255,255,255,.72); font-size:14px; line-height:1.72; }
.about-trust-grid li i { color:#f5c68f; font-size:16px; }
.about-safety-note { display:grid; grid-template-columns:68px 1fr; gap:28px; margin-top:22px; padding:34px 42px; align-items:center; color:#2c2331; background:#f6c58d; }
.about-safety-note > i { display:grid; width:58px; height:58px; place-items:center; border:1px solid rgba(44,35,49,.22); border-radius:50%; font-size:23px; }.about-safety-note p { max-width:900px; margin:0; font-size:16px; font-weight:600; line-height:1.7; }

@keyframes aboutHeroDrift { from { transform:scale(1.015) translateX(0); } to { transform:scale(1.055) translateX(-8px); } }
@keyframes aboutStoryPulse { 0%,100% { transform:translateX(0); } 50% { transform:translateX(188px); } }
@keyframes aboutStoryPulseRtl { 0%,100% { transform:translateX(0); } 50% { transform:translateX(-188px); } }
.privacy-hero { padding:130px 0 110px; color:white; background:linear-gradient(135deg,#30183a,#173f42); }.privacy-hero h1 { margin:20px 0 25px; color:white; font-size:clamp(54px,7vw,88px); line-height:.95; letter-spacing:-.065em; }.privacy-hero h1 em { color:#f4bd7b; font-family:"Cormorant Garamond",serif; }.privacy-hero > .container > p:last-child { color:rgba(255,255,255,.72); font-size:18px; line-height:1.8; }
.privacy-body { background:#fbf7f1; }.privacy-body section { padding:35px 0; border-top:1px solid var(--line); }.privacy-body h2 { margin:0 0 14px; font-size:28px; }.privacy-body section p { margin:0; color:var(--muted); font-size:16px; line-height:1.9; }.privacy-updated { margin-top:35px; color:var(--teal-dark); font-size:12px; font-weight:700; }
@media (max-width:980px) {
  .about-story-grid,.about-founder-grid { gap:58px; }
  .about-approach-heading { gap:55px; }
  .about-approach-grid article { grid-column:span 6; }
  .about-approach-grid article:nth-child(4),.about-approach-grid article:nth-child(5) { grid-column:span 6; }
  .about-approach-grid article:last-child { grid-column:4 / span 6; }
  .about-values-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:760px) {
  .about-hero { min-height:690px; align-items:end; }
  .about-hero-media img { object-position:63% center; }
  .about-hero-wash { background:linear-gradient(0deg,rgba(38,17,47,.99) 0%,rgba(38,17,47,.92) 52%,rgba(38,17,47,.38) 100%); }
  .about-hero-copy { padding-block:220px 70px; }
  .about-hero-copy h1 { max-width:100%; font-size:clamp(48px,14vw,67px); line-height:.98; }
  .about-hero-copy > p:last-of-type { font-size:15px; line-height:1.75; }
  .about-hero-orbit { right:-160px; bottom:-200px; }
  .about-story,.about-founder,.about-approach,.about-values,.about-trust { padding-block:95px; }
  .about-story::after { font-size:130px; }
  .about-story-grid,.about-direction-grid,.about-founder-grid,.about-approach-heading,.about-trust-heading,.about-trust-grid { grid-template-columns:1fr; gap:48px; }
  .about-story-line { display:none; }
  .about-story-content .about-prose p:first-child { font-size:19px; }
  .about-milestones { grid-template-columns:1fr; }
  .about-milestones article { min-height:110px; }.about-milestones span { margin-top:18px; }
  .about-direction { padding-bottom:95px; }
  .about-direction-card { min-height:430px; padding:42px 30px; }.about-direction-card .section-kicker { margin-top:65px; }
  .about-founder-photo { height:560px; }
  .about-founder blockquote { padding:92px 28px 44px; transform:none; }
  .about-founder blockquote:hover { transform:translateY(-2px); }
  .about-founder blockquote > i { top:27px; left:28px; }.about-founder blockquote > p { font-size:36px; }
  .about-founder blockquote footer { align-items:flex-start; flex-direction:column; }
  .about-approach::after { font-size:85px; }
  .about-approach-grid article,.about-approach-grid article:nth-child(4),.about-approach-grid article:nth-child(5),.about-approach-grid article:last-child { min-height:255px; grid-column:1 / -1; }
  .about-approach-grid article > p { margin-top:55px; }
  .about-values-grid { grid-template-columns:1fr; }.about-values-grid article { min-height:230px; }.about-values-grid p { margin-top:70px; }
  .about-trust-heading { gap:20px; }.about-trust-grid > article { padding:30px 24px; }
  .about-trust-title { align-items:flex-start; flex-direction:column; }
  .about-safety-note { grid-template-columns:1fr; padding:30px; }
}

html[dir="rtl"] .about-hero-copy { direction:rtl; text-align:right; }
html[dir="rtl"] .about-hero-copy .eyebrow,
html[dir="rtl"] .about-hero-copy h1,
html[dir="rtl"] .about-hero-copy > p:last-of-type,
html[dir="rtl"] .about-hero-link-wrap { margin-right:auto; margin-left:0; }
html[dir="rtl"] .about-hero-copy .eyebrow { width:min(700px,52vw); }
html[dir="rtl"] .about-hero-copy h1 { width:min(700px,52vw); }
html[dir="rtl"] .about-hero-copy > p:last-of-type { width:min(610px,48vw); }
html[dir="rtl"] .about-hero-link-wrap { width:min(700px,52vw); justify-content:flex-end; }
html[dir="rtl"] .about-hero-copy h1 { line-height:1.15; letter-spacing:-.045em; }
html[dir="rtl"] .about-hero-link-wrap > a { letter-spacing:.02em; }
html[dir="rtl"] .about-story::after { right:auto; left:-38px; }
html[dir="rtl"] .about-story-line { right:0; left:auto; }
html[dir="rtl"] .about-story-line span { right:0; left:auto; animation-name:aboutStoryPulseRtl; }
html[dir="rtl"] .about-direction-card::before { right:auto; left:-115px; }
html[dir="rtl"] .about-story h2,
html[dir="rtl"] .about-approach-heading h2,
html[dir="rtl"] .about-values .section-heading h2,
html[dir="rtl"] .about-trust-heading h2 { line-height:1.22; letter-spacing:0; }
html[dir="rtl"] .about-direction-card h2 { line-height:1.35; letter-spacing:0; text-wrap:balance; }
html[dir="rtl"] .about-founder::before { right:auto; left:2vw; }
html[dir="rtl"] .about-founder-photo span { text-align:right; letter-spacing:.02em; }
html[dir="rtl"] .about-founder blockquote { transform:rotate(.32deg); }
html[dir="rtl"] .about-founder blockquote:hover { transform:rotate(0) translateY(-3px); }
html[dir="rtl"] .about-founder blockquote::after { right:auto; left:-1px; transform:scaleX(-1); }
html[dir="rtl"] .about-founder blockquote > i { right:46px; left:auto; }
html[dir="rtl"] .about-founder blockquote > p { font-family:"Aref Ruqaa Ink","Noto Naskh Arabic",serif; font-size:clamp(35px,3.25vw,46px); font-style:normal; line-height:1.7; letter-spacing:0; }
html[dir="rtl"] .about-founder-brand { display:inline-block; direction:ltr; color:inherit; font-family:"Caveat","Segoe Print",cursive; font-size:1.14em; font-style:normal; font-weight:700; line-height:1; letter-spacing:.025em; white-space:nowrap; unicode-bidi:isolate; vertical-align:-.03em; transform:rotate(-1deg); }
html[dir="rtl"] .about-approach::after { content:"المنهج"; right:auto; left:-35px; font-family:"Alexandria",sans-serif; letter-spacing:-.04em; }
html[dir="rtl"] .about-values-grid article > i { right:auto; left:30px; }
html[dir="rtl"] .about-values .section-heading h2 em,html[dir="rtl"] .about-trust-heading h2 em { font-family:"Aref Ruqaa Ink","Noto Naskh Arabic",serif; line-height:1.35; }
html[dir="rtl"] .about-trust-title h3 { font-family:"Alexandria",sans-serif; }
@media (max-width:760px) {
  html[dir="rtl"] .about-hero-copy .eyebrow,
  html[dir="rtl"] .about-hero-copy h1,
  html[dir="rtl"] .about-hero-copy > p:last-of-type,
  html[dir="rtl"] .about-hero-link-wrap { width:auto; max-width:100%; margin-right:0; margin-left:auto; }
  html[dir="rtl"] .about-hero-copy h1 { font-size:clamp(43px,12vw,58px); line-height:1.22; }
  html[dir="rtl"] .about-founder blockquote { transform:none; }
  html[dir="rtl"] .about-founder blockquote:hover { transform:translateY(-2px); }
  html[dir="rtl"] .about-founder blockquote > i { right:28px; }
}
.site-footer { position: relative; overflow: hidden; }
.site-footer::after { content: "Care begins with understanding."; position: absolute; right: -10px; bottom: -20px; color: rgba(255,255,255,.035); font: 600 italic 72px "Cormorant Garamond", serif; pointer-events: none; }

/* Services gallery — cinematic cards with deliberate motion */
.services-gallery-section { position: relative; padding: 135px 0 115px; overflow: hidden; background: #f7efe5; }
.services-gallery-section::before { content: "CARE"; position: absolute; top: 40px; right: -45px; color: rgba(107,38,159,.045); font: 800 230px/.8 "Manrope", sans-serif; letter-spacing: -.09em; pointer-events: none; }
.services-gallery-intro { display: grid; grid-template-columns: 1.1fr .9fr; gap: 80px; margin-bottom: 75px; align-items: end; }
.services-gallery-intro .section-kicker { grid-column: 1 / -1; display: flex; margin-bottom: -45px; align-items: center; gap: 12px; }
.services-gallery-intro .section-kicker span { width: 40px; height: 1px; background: var(--orange); }
.services-gallery-intro h2 { margin: 0; font-size: clamp(54px,6vw,82px); line-height: .94; }
.services-gallery-intro h2 em { color: var(--purple); font-family: "Cormorant Garamond", serif; }
.services-gallery-intro > p { max-width: 520px; margin: 0 0 8px; color: var(--muted); font-size: 17px; line-height: 1.75; }
.services-art-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 24px; }
.service-art-card { --mx: 0px; --my: 0px; position: relative; display: block; min-height: 545px; grid-column: span 6; overflow: hidden; color: white; background: #321c3a; isolation: isolate; text-decoration: none; box-shadow: 0 25px 70px rgba(48,26,55,.14); transition: transform .55s cubic-bezier(.2,.8,.2,1), box-shadow .55s; }
.service-art-card-1 { grid-column: span 8; min-height: 650px; }.service-art-card-2 { grid-column: span 4; min-height: 650px; }.service-art-card-3 { grid-column: span 5; }.service-art-card-4 { grid-column: span 7; }.service-art-card-5 { grid-column: span 7; }.service-art-card-6 { grid-column: span 5; }.service-art-card-7 { grid-column: 2 / span 10; min-height: 610px; }
.service-art-media { position: absolute; inset: 0; z-index: -3; }
.service-art-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.035) translate3d(var(--mx),var(--my),0); transition: transform .9s cubic-bezier(.2,.8,.2,1), filter .6s; filter: saturate(.84) contrast(.98); }
.service-art-card-2 .service-art-media img, .service-art-card-3 .service-art-media img, .service-art-card-6 .service-art-media img { object-position: 48% center; }
.service-art-shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(0deg, rgba(35,15,42,.96) 0%, rgba(35,15,42,.55) 44%, rgba(35,15,42,.08) 74%), linear-gradient(90deg, rgba(35,15,42,.28), transparent 58%); transition: background .5s; }
.service-art-top { position: absolute; top: 30px; left: 32px; right: 32px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.service-art-top > span { color: #ffc17b; font-size: 10px; font-weight: 700; letter-spacing: .1em; }
.service-art-top small { padding: 8px 12px; border: 1px solid rgba(255,255,255,.3); border-radius: 999px; background: rgba(42,19,50,.25); backdrop-filter: blur(9px); font-size: 8px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.service-art-copy { position: absolute; left: 38px; right: 38px; bottom: 34px; }
.service-art-copy h2 { max-width: 720px; margin: 0 0 13px; color: white; font-size: clamp(31px,3.2vw,50px); line-height: .98; letter-spacing: -.055em; }
.service-art-copy > p { max-width: 650px; margin: 0; color: rgba(255,255,255,.69); font-size: 13px; line-height: 1.65; transform: translateY(7px); transition: transform .45s, color .45s; }
.service-art-explore { display: flex; max-height: 0; margin-top: 0; align-items: center; justify-content: space-between; overflow: hidden; color: #ffd09a; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; opacity: 0; transform: translateY(10px); transition: max-height .45s, margin .45s, opacity .35s, transform .45s; }
.service-art-explore b { display: grid; width: 36px; height: 36px; place-items: center; color: var(--purple-dark); border-radius: 50%; background: var(--orange); font-size: 14px; transition: transform .45s; }
.service-art-card:hover { transform: translateY(-9px); box-shadow: 0 38px 100px rgba(48,26,55,.24); }
.service-art-card:focus-visible { outline: 4px solid var(--orange); outline-offset: 5px; }
.service-art-card:hover .service-art-media img { transform: scale(1.085) translate3d(var(--mx),var(--my),0); filter: saturate(1) contrast(1); }
.service-art-card:hover .service-art-shade { background: linear-gradient(0deg, rgba(35,15,42,.98) 0%, rgba(35,15,42,.62) 48%, rgba(35,15,42,.06) 78%); }
.service-art-card:hover .service-art-copy > p { color: rgba(255,255,255,.82); transform: translateY(0); }
.service-art-card:hover .service-art-explore { max-height: 50px; margin-top: 20px; opacity: 1; transform: translateY(0); }
.service-art-card:hover .service-art-explore b { transform: rotate(45deg); }
.js .service-art-card { opacity: 0; clip-path: inset(10% 0 0 0); transform: translateY(45px); }
.js .service-art-card.in-view { opacity: 1; clip-path: inset(0); transform: translateY(0); transition: opacity .75s calc(var(--reveal-order) * 55ms), clip-path .9s calc(var(--reveal-order) * 55ms) cubic-bezier(.2,.8,.2,1), transform .9s calc(var(--reveal-order) * 55ms) cubic-bezier(.2,.8,.2,1), box-shadow .55s; }
.js .service-art-card.in-view:hover { transform: translateY(-9px); }
.services-gallery-note { display: flex; margin-top: 85px; padding-top: 45px; align-items: center; justify-content: space-between; gap: 40px; border-top: 1px solid rgba(72,32,95,.18); }
.services-gallery-note p { margin: 0; color: var(--ink); font: 600 40px/1 "Manrope", sans-serif; letter-spacing: -.05em; }.services-gallery-note p em { color: var(--purple); font-family: "Cormorant Garamond", serif; }

@media (max-width: 900px) {
  .services-gallery-intro { grid-template-columns: 1fr; gap: 25px; }.services-gallery-intro .section-kicker { margin-bottom: 0; }.service-art-card, .service-art-card-1, .service-art-card-2, .service-art-card-3, .service-art-card-4, .service-art-card-5, .service-art-card-6, .service-art-card-7 { grid-column: span 6; min-height: 560px; }.service-art-card-7 { grid-column: 1 / -1; }
}

@media (max-width: 650px) {
  .services-gallery-section { padding: 88px 0; }.services-gallery-intro { margin-bottom: 45px; }.services-gallery-intro h2 { font-size: 49px; }.services-art-grid { gap: 18px; }.service-art-card, .service-art-card-1, .service-art-card-2, .service-art-card-3, .service-art-card-4, .service-art-card-5, .service-art-card-6, .service-art-card-7 { grid-column: 1 / -1; min-height: 500px; }.service-art-copy { left: 26px; right: 26px; bottom: 27px; }.service-art-top { top: 24px; left: 25px; right: 25px; }.service-art-copy h2 { font-size: 36px; }.service-art-explore { max-height: 50px; margin-top: 16px; opacity: 1; transform: none; }.services-gallery-note { align-items: flex-start; flex-direction: column; }.services-gallery-note p { font-size: 35px; }
}

@media (prefers-reduced-motion: reduce) {
  .js .service-art-card, .js .service-art-card.in-view { opacity: 1; clip-path: none; transform: none; transition: none; }
  .service-art-card, .service-art-media img, .service-art-copy > p, .service-art-explore, .service-art-explore b { transition: none; }
}

/* Service detail journey */
.program-gallery-section { position: relative; padding: 140px 0 115px; overflow: hidden; background: #f6eee3; }
.program-gallery-section::before { content: "TOGETHER"; position: absolute; right: -80px; top: 55px; color: rgba(107,38,159,.045); font: 800 155px/.8 "Manrope", sans-serif; letter-spacing: -.08em; pointer-events: none; }
.program-gallery-intro { display: grid; grid-template-columns: 1.15fr .85fr; gap: 90px; margin-bottom: 75px; align-items: end; }
.program-gallery-intro .section-kicker { display: flex; align-items: center; gap: 12px; }.program-gallery-intro .section-kicker span { width: 40px; height: 1px; background: var(--orange); }
.program-gallery-intro h2 { margin: 22px 0 0; font-size: clamp(55px,6vw,84px); line-height: .93; }.program-gallery-intro h2 em { color: var(--purple); font-family: "Cormorant Garamond", serif; }
.program-gallery-intro > p { max-width: 530px; margin: 0 0 8px; color: var(--muted); font-size: 18px; line-height: 1.78; }
.program-art-list { display: flex; flex-direction: column; gap: 48px; }
.program-art-card { --mx: 0px; --my: 0px; position: relative; display: block; width: 94%; min-height: 690px; overflow: hidden; color: white; background: #2d1735; isolation: isolate; text-decoration: none; box-shadow: 0 32px 90px rgba(46,25,53,.18); transition: transform .6s cubic-bezier(.2,.8,.2,1), box-shadow .6s; }
.program-art-card-2 { width: 88%; margin-left: auto; }
.program-art-media { position: absolute; inset: 0; z-index: -3; }.program-art-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.035) translate3d(var(--mx),var(--my),0); filter: saturate(.86); transition: transform 1s cubic-bezier(.2,.8,.2,1), filter .6s; }
.program-art-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,rgba(34,15,41,.94),rgba(34,15,41,.62) 51%,rgba(34,15,41,.08)),linear-gradient(0deg,rgba(28,11,34,.74),transparent 60%); }
.program-art-index { position: absolute; top: 38px; right: 42px; color: var(--orange); font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.program-art-content { position: absolute; left: clamp(34px,5vw,72px); bottom: clamp(38px,6vw,70px); width: min(720px,70%); }
.program-art-content small { color: #bbd9d7; font-size: 9px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.program-art-content h2 { margin: 16px 0 20px; color: white; font-size: clamp(51px,5.5vw,78px); line-height: .89; letter-spacing: -.07em; }
.program-art-content > p { max-width: 640px; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.68; }
.program-art-services { display: flex; margin: 24px 0 28px; flex-wrap: wrap; gap: 8px; }.program-art-services span { padding: 8px 11px; border: 1px solid rgba(255,255,255,.26); border-radius: 999px; background: rgba(42,19,50,.28); backdrop-filter: blur(8px); font-size: 9px; }
.program-art-content > strong { display: flex; max-width: 260px; align-items: center; justify-content: space-between; color: #ffd09a; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }.program-art-content > strong b { display: grid; width: 40px; height: 40px; place-items: center; color: var(--purple-dark); border-radius: 50%; background: var(--orange); font-size: 14px; transition: transform .45s; }
.program-art-card:hover { transform: translateY(-8px); box-shadow: 0 42px 110px rgba(46,25,53,.27); }.program-art-card:hover .program-art-media img { transform: scale(1.08) translate3d(var(--mx),var(--my),0); filter: saturate(1); }.program-art-card:hover .program-art-content > strong b { transform: rotate(45deg); }
.program-art-card:focus-visible { outline: 4px solid var(--orange); outline-offset: 5px; }
.js .program-art-card { opacity: 0; clip-path: inset(12% 0 0); transform: translateY(48px); }.js .program-art-card.in-view { opacity: 1; clip-path: inset(0); transform: translateY(0); transition: opacity .75s calc(var(--program-order) * 100ms),clip-path 1s calc(var(--program-order) * 100ms) cubic-bezier(.2,.8,.2,1),transform 1s calc(var(--program-order) * 100ms) cubic-bezier(.2,.8,.2,1),box-shadow .6s; }.js .program-art-card.in-view:hover { transform: translateY(-8px); }
.program-gallery-promise { display: flex; margin-top: 75px; padding: 30px 0; align-items: center; justify-content: center; gap: 22px; color: var(--teal-dark); border-top: 1px solid rgba(72,32,95,.18); border-bottom: 1px solid rgba(72,32,95,.18); font-size: 10px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }.program-gallery-promise i { width: 5px; height: 5px; border-radius: 50%; background: var(--orange); }

@media (max-width: 800px) { .program-gallery-intro { grid-template-columns: 1fr; gap: 28px; }.program-art-card,.program-art-card-2 { width: 100%; min-height: 650px; margin-left: 0; }.program-art-content { width: auto; right: 35px; }.program-gallery-promise { flex-wrap: wrap; } }
@media (max-width: 650px) { .program-gallery-section { padding: 88px 0; }.program-gallery-intro { margin-bottom: 48px; }.program-gallery-intro h2 { font-size: 49px; }.program-art-card,.program-art-card-2 { min-height: 630px; }.program-art-wash { background: linear-gradient(0deg,rgba(34,15,41,.97),rgba(34,15,41,.58) 65%,rgba(34,15,41,.08)); }.program-art-content { left: 27px; right: 27px; bottom: 30px; }.program-art-content h2 { font-size: 48px; }.program-art-content > p { font-size: 13px; }.program-gallery-promise { justify-content: flex-start; } }
@media (prefers-reduced-motion: reduce) { .js .program-art-card,.js .program-art-card.in-view { opacity: 1; clip-path: none; transform: none; transition: none; }.program-art-card,.program-art-media img,.program-art-content > strong b { transition: none; } }

.service-detail-page { --hero-shift: 0px; background: #fbf8f2; }
.service-detail-hero { position: relative; display: flex; min-height: 820px; align-items: flex-end; overflow: hidden; color: white; background: #2e1936; isolation: isolate; }
.service-detail-hero-media { position: absolute; inset: -40px 0; z-index: -4; }
.service-detail-hero-media img { width: 100%; height: calc(100% + 80px); object-fit: cover; object-position: center; transform: translate3d(0,var(--hero-shift),0) scale(1.045); animation: service-hero-arrive 1.25s cubic-bezier(.2,.8,.2,1) both; }
.service-detail-hero-wash { position: absolute; inset: 0; z-index: -3; background: linear-gradient(90deg, rgba(36,16,43,.98) 0%, rgba(36,16,43,.84) 43%, rgba(36,16,43,.12) 73%), linear-gradient(0deg, rgba(29,12,35,.75), transparent 58%); }
.service-detail-hero-grain { position: absolute; inset: 0; z-index: -2; opacity: .1; background-image: radial-gradient(rgba(255,255,255,.7) .45px,transparent .6px); background-size: 4px 4px; mix-blend-mode: soft-light; }
.service-detail-hero-copy { display: flex; padding-top: 130px; padding-bottom: 105px; align-items: flex-end; justify-content: space-between; gap: 80px; }
.service-detail-hero-copy > div { max-width: 820px; animation: service-copy-arrive .9s .12s cubic-bezier(.2,.8,.2,1) both; }
.service-detail-hero .back-link { margin-bottom: 55px; color: rgba(255,255,255,.66); }
.service-detail-hero h1 { max-width: 950px; margin: 20px 0 25px; color: white; font-size: clamp(64px,7vw,105px); line-height: .87; letter-spacing: -.075em; text-wrap: balance; }
.service-detail-hero-copy > div > p:not(.eyebrow) { max-width: 710px; margin: 0 0 34px; color: rgba(255,255,255,.74); font-size: 19px; line-height: 1.72; }
.service-hero-thought { flex: 0 0 300px; margin: 0 0 35px; color: white; font: 600 italic 33px/1.05 "Cormorant Garamond", serif; text-align: right; animation: service-copy-arrive .9s .45s cubic-bezier(.2,.8,.2,1) both; }
.service-hero-thought em { color: var(--orange); }
.service-detail-scroll { position: absolute; right: max(calc((100vw - 1180px)/2),40px); bottom: 28px; display: flex; align-items: center; gap: 12px; color: white; font-size: 9px; font-weight: 700; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.service-detail-scroll span { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; animation: service-scroll-pulse 2.2s ease-in-out infinite; }
.service-detail-quick { color: white; background: #4a225c; }
.service-detail-quick > .container { display: grid; grid-template-columns: .8fr 2.2fr; min-height: 110px; align-items: center; gap: 45px; }
.service-detail-quick > .container > span { color: #f5be7c; font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.service-detail-quick > .container > div { display: grid; grid-template-columns: repeat(3,1fr); }
.service-detail-quick p { margin: 0; padding: 18px 25px; color: rgba(255,255,255,.82); border-left: 1px solid rgba(255,255,255,.18); font-size: 11px; line-height: 1.45; }

.service-story { padding: 145px 0; background: #fbf8f2; }
.service-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 115px; align-items: start; }
.service-story-title { position: sticky; top: 55px; }
.service-story-title h2 { margin: 22px 0 0; font-size: clamp(48px,5vw,72px); line-height: .98; }
.service-story-title h2 em { color: var(--purple); font-family: "Cormorant Garamond", serif; }
.service-prose p { margin: 0 0 30px; color: #514b55; font-size: 19px; line-height: 1.9; }
.service-prose p:first-child::first-letter { float: left; margin: 7px 10px 0 0; color: var(--purple); font: 600 68px/.72 "Cormorant Garamond", serif; }
html[dir="rtl"] .service-prose p:first-child::first-letter { float:none; margin:0; color:inherit; font:inherit; }
.service-story-note { margin: 45px 0 0; padding: 28px 0 0 34px; color: var(--purple-dark); border-top: 1px solid rgba(72,32,95,.18); border-left: 3px solid var(--orange); font: 600 italic 26px/1.25 "Cormorant Garamond", serif; }

.service-possibilities { position: relative; padding: 135px 0; overflow: hidden; color: white; background: #2b1634; }
.service-possibilities::after { content: "POSSIBLE"; position: absolute; right: -35px; bottom: -32px; color: rgba(255,255,255,.035); font: 800 150px/.8 "Manrope", sans-serif; letter-spacing: -.08em; pointer-events: none; }
.service-possibilities-heading { display: grid; grid-template-columns: .8fr 1.2fr; gap: 60px; margin-bottom: 70px; align-items: end; }
.service-possibilities-heading h2 { margin: 0; color: white; font-size: clamp(50px,5.5vw,76px); line-height: .94; }.service-possibilities-heading h2 em { color: var(--orange); font-family: "Cormorant Garamond", serif; }
.service-possibilities-grid { display: grid; grid-template-columns: repeat(5,1fr); border-top: 1px solid rgba(255,255,255,.2); }
.service-possibility { position: relative; display: flex; min-height: 255px; padding: 28px 24px; flex-direction: column; border-right: 1px solid rgba(255,255,255,.18); }
.service-possibility:last-child { border-right: 0; }
.service-possibility span { color: var(--orange); font-size: 10px; }
.service-possibility strong { margin: auto 0 25px; font: 600 21px/1.2 "Manrope", sans-serif; }
.service-possibility i { width: 22px; height: 1px; background: var(--teal); transition: width .35s; }.service-possibility:hover i { width: 70px; }

.service-fit { position: relative; padding: 140px 0; overflow: hidden; background: #efe5d8; }
.service-fit::before { content: "WHO"; position: absolute; left: -25px; top: 10px; color: rgba(107,38,159,.05); font: 800 220px/.9 "Manrope", sans-serif; letter-spacing: -.09em; }
.service-fit-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 120px; align-items: center; }
.service-fit-number { position: relative; min-height: 470px; padding: 55px; color: white; background: var(--purple); box-shadow: 0 30px 90px rgba(61,30,72,.22); }
.service-fit-number::after { content: ""; position: absolute; width: 150px; height: 150px; right: -45px; bottom: -45px; border: 28px solid var(--orange); border-radius: 50%; opacity: .85; }
.service-fit-number span { color: #f4be7c; font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.service-fit-number strong { position: absolute; left: 55px; bottom: 55px; font: 600 53px/.95 "Manrope", sans-serif; letter-spacing: -.06em; }
.service-fit-copy h2 { margin: 22px 0 25px; font-size: clamp(42px,4.5vw,64px); line-height: 1; }
.service-fit-copy > p { margin: 0 0 30px; color: var(--muted); font-size: 18px; line-height: 1.8; }

.service-method { padding: 140px 0; color: white; background: #164f59; }
.service-method-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 110px; align-items: start; }
.service-method-copy { position: sticky; top: 55px; }
.service-method-copy h2 { margin: 22px 0 28px; color: white; font-size: clamp(50px,5.3vw,74px); line-height: .95; }.service-method-copy h2 em { color: var(--orange); font-family: "Cormorant Garamond", serif; }
.service-method-copy > p:last-child { max-width: 570px; color: rgba(255,255,255,.72); font-size: 17px; line-height: 1.78; }
.service-method-steps { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.22); }
.service-method-steps li { display: grid; grid-template-columns: 55px 1fr; gap: 25px; padding: 36px 0; border-bottom: 1px solid rgba(255,255,255,.22); }
.service-method-steps li > span { color: var(--orange); font-size: 10px; font-weight: 700; }
.service-method-steps strong { display: block; margin-bottom: 11px; font: 600 25px "Manrope", sans-serif; }.service-method-steps p { margin: 0; color: rgba(255,255,255,.63); font-size: 13px; line-height: 1.65; }

.service-related { padding: 135px 0; background: #fbf8f2; }
.service-related-heading { display: flex; margin-bottom: 55px; align-items: end; justify-content: space-between; gap: 40px; }.service-related-heading h2 { margin: 0; font-size: 52px; }
.service-related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.service-related-card { position: relative; display: block; min-height: 460px; overflow: hidden; color: white; background: #2d1735; text-decoration: none; isolation: isolate; }
.service-related-card picture { position: absolute; inset: 0; z-index: -3; }.service-related-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.8,.2,1); }
.service-related-card > span { position: absolute; inset: 0; z-index: -2; background: linear-gradient(0deg,rgba(35,15,42,.93),rgba(35,15,42,.05) 72%); }
.service-related-card > div { position: absolute; left: 28px; right: 28px; bottom: 27px; }.service-related-card small { color: #f3be80; font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }.service-related-card h3 { margin: 10px 0 20px; color: white; font-size: 28px; }.service-related-card b { font-size: 10px; }.service-related-card:hover img { transform: scale(1.07); }

.service-final-cta { padding: 125px 0; text-align: center; color: white; background: #301939; }
.service-final-cta p { color: #b9d8d5; font-size: 10px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.service-final-cta h2 { margin: 25px auto 38px; color: white; font-size: clamp(52px,6vw,82px); line-height: .92; }.service-final-cta h2 em { color: var(--orange); font-family: "Cormorant Garamond", serif; }
.program-detail-hero .service-detail-hero-wash { background: linear-gradient(90deg,rgba(32,15,39,.98),rgba(32,15,39,.78) 46%,rgba(32,15,39,.08) 76%),linear-gradient(0deg,rgba(25,10,31,.7),transparent 58%); }
.program-detail-quick { background: #15515a; }
.program-detail-story { background: #f7efe4; }
.program-inclusions { padding: 140px 0; color: white; background: #2d1736; }
.program-inclusions-heading { display: grid; grid-template-columns: .7fr 1.3fr; gap: 70px; margin-bottom: 70px; align-items: end; }.program-inclusions-heading h2 { margin: 0; color: white; font-size: clamp(50px,5.5vw,76px); line-height: .94; }.program-inclusions-heading h2 em { color: var(--orange); font-family: "Cormorant Garamond", serif; }
.program-inclusions-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.program-inclusion-card { min-height: 590px; padding: 48px; color: var(--ink); background: #fbf8f2; }
.program-inclusion-card > span { color: var(--orange); font-size: 10px; font-weight: 700; }.program-inclusion-card > small { display: block; margin-top: 80px; color: var(--teal-dark); font-size: 9px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.program-inclusion-card h3 { margin: 18px 0 40px; font-size: 34px; line-height: 1.05; }
.program-inclusion-card ol,.program-inclusion-card ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(72,32,95,.18); }.program-inclusion-card li { display: grid; grid-template-columns: 42px 1fr; gap: 15px; padding: 17px 0; align-items: center; border-bottom: 1px solid rgba(72,32,95,.18); }.program-inclusion-card li b { color: var(--orange); font-size: 9px; }.program-inclusion-card li strong { font: 600 14px/1.4 "Manrope",sans-serif; }
.program-inclusion-family { color: white; background: #18535c; }.program-inclusion-family > small { color: #b7d8d5; }.program-inclusion-family h3 { color: white; }.program-inclusion-family ul { border-color: rgba(255,255,255,.2); }.program-inclusion-family li { border-color: rgba(255,255,255,.2); }.program-inclusion-family li i { display: grid; width: 25px; height: 25px; place-items: center; color: var(--teal-dark); border-radius: 50%; background: var(--orange); font-size: 10px; font-style: normal; }
.program-path { padding: 140px 0; background: #fbf8f2; }
.program-path-heading { display: grid; grid-template-columns: .7fr 1.3fr; gap: 70px; margin-bottom: 70px; align-items: end; }.program-path-heading h2 { margin: 0; font-size: clamp(50px,5.5vw,76px); line-height: .94; }.program-path-heading h2 em { color: var(--purple); font-family: "Cormorant Garamond",serif; }
.program-path-steps { display: grid; grid-template-columns: repeat(4,1fr); margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(72,32,95,.2); border-bottom: 1px solid rgba(72,32,95,.2); }.program-path-steps li { min-height: 300px; padding: 30px 28px; border-right: 1px solid rgba(72,32,95,.2); }.program-path-steps li:last-child { border-right: 0; }.program-path-steps span { color: var(--orange); font-size: 10px; font-weight: 700; }.program-path-steps strong { display: block; margin: 95px 0 13px; font: 600 25px "Manrope",sans-serif; }.program-path-steps p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.program-schedule { position: relative; padding: 140px 0; overflow: hidden; background: #eee3d4; }.program-schedule::after { content: "EVOLVE"; position: absolute; right: -35px; bottom: -32px; color: rgba(107,38,159,.05); font: 800 155px/.8 "Manrope",sans-serif; letter-spacing: -.08em; }
.program-schedule-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 110px; align-items: center; }.program-schedule-mark { position: relative; display: flex; min-height: 480px; padding: 50px; flex-direction: column; justify-content: space-between; color: white; background: var(--purple); box-shadow: 0 30px 90px rgba(56,28,65,.22); }.program-schedule-mark::after { content: ""; position: absolute; width: 130px; height: 130px; right: -35px; bottom: -35px; border: 25px solid var(--orange); border-radius: 50%; }.program-schedule-mark span { color: #f2bd7c; font-size: 9px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }.program-schedule-mark strong { max-width: 390px; font: 600 50px/.95 "Manrope",sans-serif; letter-spacing: -.06em; }
.program-schedule-copy h2 { margin: 22px 0 28px; font-size: clamp(43px,4.5vw,63px); line-height: 1; }.program-schedule-copy > p { color: var(--muted); font-size: 17px; line-height: 1.75; }.program-schedule-copy > p + p { margin-top: 18px; }
.program-related { padding: 130px 0; color: white; background: #164f59; }.program-related > .container > .section-kicker { margin-bottom: 35px; }.program-related-card { position: relative; display: block; min-height: 600px; overflow: hidden; color: white; background: #2d1735; isolation: isolate; text-decoration: none; }.program-related-card picture { position: absolute; inset: 0; z-index: -3; }.program-related-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.8,.2,1); }.program-related-card > span { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,rgba(33,14,40,.94),rgba(33,14,40,.32) 70%),linear-gradient(0deg,rgba(33,14,40,.75),transparent); }.program-related-card > div { position: absolute; left: clamp(35px,6vw,80px); bottom: clamp(35px,6vw,75px); max-width: 720px; }.program-related-card small { color: #b8d8d5; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }.program-related-card h2 { margin: 15px 0 20px; color: white; font-size: clamp(48px,5.5vw,75px); line-height: .92; }.program-related-card p { color: rgba(255,255,255,.7); line-height: 1.7; }.program-related-card b { display: block; margin-top: 25px; color: var(--orange); font-size: 10px; letter-spacing: .09em; text-transform: uppercase; }.program-related-card:hover img { transform: scale(1.06); }
.program-final-cta { background: #2d1736; }
.js .service-detail-reveal { opacity: 0; transform: translateY(35px); transition: opacity .75s calc(var(--detail-order,0) * 70ms), transform .9s calc(var(--detail-order,0) * 70ms) cubic-bezier(.2,.8,.2,1); }
.js .service-detail-reveal.in-view { opacity: 1; transform: translateY(0); }
@keyframes service-hero-arrive { from { opacity: .55; transform: translate3d(0,15px,0) scale(1.1); } to { opacity: 1; transform: translate3d(0,var(--hero-shift),0) scale(1.045); } }
@keyframes service-copy-arrive { from { opacity: 0; transform: translateY(25px); } to { opacity: 1; transform: translateY(0); } }
@keyframes service-scroll-pulse { 0%,100% { transform: translateY(0); } 50% { transform: translateY(5px); } }

@media (max-width: 950px) {
  .service-detail-hero-copy { align-items: flex-start; flex-direction: column; }.service-hero-thought { display: none; }.service-story-grid, .service-fit-grid, .service-method-grid { grid-template-columns: 1fr; gap: 65px; }.service-story-title, .service-method-copy { position: static; }.service-possibilities-grid { grid-template-columns: repeat(3,1fr); }.service-possibility { border-bottom: 1px solid rgba(255,255,255,.18); }.service-related-card { min-height: 400px; }
}

@media (max-width: 850px) { .program-inclusions-heading,.program-path-heading,.program-inclusions-grid,.program-schedule-grid { grid-template-columns: 1fr; gap: 40px; }.program-path-steps { grid-template-columns: repeat(2,1fr); }.program-path-steps li:nth-child(2) { border-right: 0; }.program-path-steps li:nth-child(-n+2) { border-bottom: 1px solid rgba(72,32,95,.2); } }

@media (max-width: 650px) {
  .service-detail-hero { min-height: 720px; }.service-detail-hero-media img { object-position: 62% center; }.service-detail-hero-wash { background: linear-gradient(0deg,rgba(35,15,42,.99),rgba(35,15,42,.76) 62%,rgba(35,15,42,.1)); }.service-detail-hero-copy { padding-top: 120px; padding-bottom: 90px; }.service-detail-hero .back-link { margin-bottom: 35px; }.service-detail-hero h1 { font-size: 58px; }.service-detail-hero-copy > div > p:not(.eyebrow) { font-size: 16px; line-height: 1.6; }.service-detail-scroll { right: 20px; }.service-detail-quick > .container { grid-template-columns: 1fr; padding-block: 24px; gap: 10px; }.service-detail-quick > .container > div { grid-template-columns: 1fr; }.service-detail-quick p { padding: 11px 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.16); }.service-story, .service-possibilities, .service-fit, .service-method, .service-related { padding: 88px 0; }.service-story-grid { gap: 45px; }.service-prose p { font-size: 17px; }.service-possibilities-heading { grid-template-columns: 1fr; gap: 25px; }.service-possibilities-grid { grid-template-columns: 1fr; }.service-possibility { min-height: 150px; border-right: 0; }.service-fit-number { min-height: 380px; padding: 38px; }.service-fit-number strong { left: 38px; bottom: 38px; font-size: 44px; }.service-method-grid { gap: 45px; }.service-related-heading { align-items: flex-start; flex-direction: column; }.service-related-grid { grid-template-columns: 1fr; }.service-related-card { min-height: 430px; }.service-final-cta { padding: 90px 0; }
}

@media (max-width: 650px) { .program-inclusions,.program-path,.program-schedule,.program-related { padding: 88px 0; }.program-inclusion-card { min-height: auto; padding: 30px; }.program-inclusion-card > small { margin-top: 55px; }.program-path-steps { grid-template-columns: 1fr; }.program-path-steps li,.program-path-steps li:nth-child(2) { min-height: 220px; border-right: 0; border-bottom: 1px solid rgba(72,32,95,.2); }.program-path-steps strong { margin-top: 55px; }.program-schedule-mark { min-height: 390px; padding: 36px; }.program-schedule-mark strong { font-size: 43px; }.program-related-card { min-height: 580px; }.program-related-card > span { background: linear-gradient(0deg,rgba(33,14,40,.96),rgba(33,14,40,.22) 75%); }.program-related-card > div { left: 28px; right: 28px; bottom: 30px; }.program-related-card h2 { font-size: 47px; } }

@media (prefers-reduced-motion: reduce) {
  .service-detail-hero-media img, .service-detail-hero-copy > div, .service-hero-thought, .service-detail-scroll span { animation: none; }
  .js .service-detail-reveal, .js .service-detail-reveal.in-view { opacity: 1; transform: none; transition: none; }
}

@media (max-width: 900px) {
  .training-cinematic-layout { grid-template-columns: 1fr; gap: 55px; }.training-cinematic-wash { background: linear-gradient(0deg, rgba(39,18,47,.98) 0%, rgba(39,18,47,.72) 70%, rgba(39,18,47,.25)); }.programs-cinematic { min-height: 900px; }.programs-cinematic-copy { max-width: 460px; }.collection-editorial-row { grid-template-columns: 50px 1fr 38px; }.collection-editorial-row > p { grid-column: 2 / 3; }.detail-cinematic-copy { align-items: flex-start; flex-direction: column; }.detail-cinematic-quote { display: none; }.contact-page-wash { background: linear-gradient(180deg, rgba(40,18,48,.96) 0%, rgba(40,18,48,.78) 52%, rgba(247,241,232,.94) 72%); }
}

@media (max-width: 650px) {
  .editorial-photo { min-height: 470px; }.programs-editorial, .assessment-editorial, .training-cinematic { padding: 88px 0; }.programs-cinematic { min-height: 1020px; }.programs-cinematic-copy { left: 28px; right: 28px; }.programs-cinematic-copy h3 { font-size: 47px; }.program-chapters { grid-template-columns: 1fr; }.program-chapters > a { min-height: 230px; padding: 28px; }.program-chapters > a + a { border-left: 0; }.assessment-portrait { height: 280px; }.training-cinematic { min-height: 900px; }.training-cinematic-copy h2 { font-size: 46px; }.collection-hero { min-height: 610px; }.collection-hero-copy { padding-top: 100px; padding-bottom: 60px; }.collection-hero-copy h1 { font-size: 57px; }.collection-editorial-row { grid-template-columns: 32px 1fr 32px; gap: 17px; padding: 30px 0; }.collection-editorial-row > p { font-size: 12px; }.collection-editorial-row > b { width: 32px; height: 32px; }.detail-cinematic { min-height: 680px; }.detail-cinematic h1 { font-size: 58px; }.detail-cinematic-copy { padding-top: 90px; padding-bottom: 55px; }.contact-page-cinematic { padding-top: 75px; }.contact-page-cinematic .contact-page-grid { gap: 55px; }
}

/* Cinematic CBS hero */
.hero-cinematic { position: relative; display: flex; min-height: calc(100svh - 128px); height: clamp(700px, calc(100svh - 128px), 910px); align-items: stretch; overflow: hidden; color: white; background: #2b1733; isolation: isolate; }
.hero-cinematic-media { position: absolute; inset: 0; z-index: -4; }
.hero-cinematic-poster,.hero-cinematic-video { position:absolute; inset:0; display:block; width:100%; height:100%; }
.hero-cinematic-poster img,.hero-cinematic-video { width:100%; height:100%; object-fit:cover; object-position:63% center; }
.hero-cinematic-poster img { transform:scale(1.015); animation:hero-breathe 10s cubic-bezier(.2,.75,.2,1) both; }
.hero-cinematic-video { z-index:1; opacity:0; background:#2b1733; transition:opacity .8s ease; }
.hero-cinematic-video.is-playing { opacity:1; }
.hero-cinematic-wash { position: absolute; inset: 0; z-index: -3; background: linear-gradient(90deg, rgba(37,19,44,.98) 0%, rgba(48,23,57,.96) 25%, rgba(48,23,57,.75) 47%, rgba(37,19,44,.08) 72%, rgba(37,19,44,.18) 100%), linear-gradient(0deg, rgba(28,13,34,.76) 0%, transparent 40%); }
.hero-cinematic-grain { position: absolute; inset: 0; z-index: -2; opacity: .12; background-image: radial-gradient(rgba(255,255,255,.65) .45px, transparent .6px); background-size: 4px 4px; mix-blend-mode: soft-light; pointer-events: none; }
.hero-cinematic-stage { position: relative; display: flex; padding-top: clamp(78px, 10vh, 120px); padding-bottom: 130px; align-items: flex-start; justify-content: space-between; }
.hero-cinematic-copy { width: min(680px, 58%); animation: hero-copy-in .9s .12s cubic-bezier(.18,.8,.25,1) both; }
.hero-signature { display: flex; margin: 0 0 28px; align-items: center; gap: 13px; color: #f5c68f; font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.hero-signature span { width: 42px; height: 1px; background: var(--orange); }
.hero-cinematic h1 { margin: 0; max-width: 660px; color: white; font: 600 clamp(61px, 6vw, 91px)/.92 "Manrope", sans-serif; letter-spacing: -.065em; text-wrap: balance; }
.hero-cinematic h1 > span, .hero-cinematic h1 > em { display: block; }
.hero-cinematic h1 > span { font-size: .66em; line-height: 1.18; letter-spacing: -.045em; }
.hero-cinematic h1 > em { margin-top: 7px; color: #ffbd70; font: 600 1.22em/.78 "Cormorant Garamond", serif; letter-spacing: -.035em; }
.hero-cinematic-lede { max-width: 590px; margin: 30px 0 0; color: rgba(255,255,255,.8); font-size: clamp(17px, 1.3vw, 20px); line-height: 1.72; text-wrap: balance; }
.hero-cinematic-actions { display: flex; margin-top: 36px; align-items: center; gap: 30px; }
.hero-primary-action { min-height: 60px; padding-inline: 29px; color: var(--purple-dark); background: var(--orange); box-shadow: 0 16px 38px rgba(15,6,18,.26); }
.hero-primary-action:hover { color: var(--purple-dark); background: #ffb45e; box-shadow: 0 18px 48px rgba(15,6,18,.34); }
.hero-secondary-action { display: flex; align-items: center; gap: 13px; color: white; text-decoration: none; }
.play-mark { display: grid; flex: 0 0 auto; width: 46px; height: 46px; place-items: center; color: var(--orange); border: 1px solid rgba(255,255,255,.38); border-radius: 50%; transition: border-color .2s, transform .2s; }
.hero-secondary-action:hover .play-mark { transform: rotate(18deg); border-color: var(--orange); }
.hero-secondary-action > span:last-child { font-size: 13px; font-weight: 700; }
.hero-secondary-action small { display: block; margin-top: 4px; color: rgba(255,255,255,.55); font-size: 10px; font-weight: 400; }
.hero-cinematic-whisper { position: absolute; right: 0; bottom: 132px; display: flex; width: 300px; align-items: flex-start; gap: 18px; animation: hero-whisper-in .9s .55s ease both; }
.whisper-line { width: 58px; height: 1px; margin-top: 11px; background: rgba(255,255,255,.62); }
.hero-cinematic-whisper p { margin: 0; color: rgba(255,255,255,.94); font: 600 italic 25px/1.13 "Cormorant Garamond", serif; text-shadow: 0 2px 18px rgba(25,10,28,.45); }
.hero-cinematic-foot { position: absolute; left: 0; right: 0; bottom: 0; min-height: 86px; border-top: 1px solid rgba(255,255,255,.22); background: rgba(35,17,42,.22); backdrop-filter: blur(12px); }
.hero-cinematic-foot > .container { display: flex; min-height: 86px; align-items: center; justify-content: space-between; gap: 40px; }
.hero-disciplines { display: flex; align-items: center; gap: 15px; color: rgba(255,255,255,.78); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hero-disciplines i { width: 4px; height: 4px; border-radius: 50%; background: var(--orange); }
.hero-cinematic-foot a { display: flex; align-items: center; gap: 14px; color: white; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.hero-cinematic-foot a span { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(255,255,255,.32); border-radius: 50%; }
.home-page .journey-strip { margin-top: 0; }

@keyframes hero-copy-in { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@keyframes hero-whisper-in { from { opacity: 0; transform: translateX(22px); } to { opacity: 1; transform: translateX(0); } }
@keyframes hero-breathe { from { transform: scale(1.035); } to { transform: scale(1.005); } }

@media (max-width: 1000px) {
  .hero-cinematic { height: 760px; min-height: 760px; }
  .hero-cinematic-copy { width: min(650px, 70%); }
  .hero-cinematic-wash { background: linear-gradient(90deg, rgba(37,19,44,.98) 0%, rgba(45,22,53,.93) 33%, rgba(45,22,53,.62) 60%, rgba(37,19,44,.12) 100%), linear-gradient(0deg, rgba(28,13,34,.75), transparent 48%); }
  .hero-cinematic-whisper { right: 20px; }
}

@media (max-width: 760px) {
  .hero-cinematic { min-height: 720px; height: calc(100svh - 110px); max-height: 820px; align-items: flex-end; }
  .hero-cinematic-poster img, .hero-cinematic-video { object-position: 66% center; }
  .hero-cinematic-wash { background: linear-gradient(0deg, rgba(34,16,41,.99) 0%, rgba(34,16,41,.9) 43%, rgba(34,16,41,.15) 78%, rgba(34,16,41,.15) 100%), linear-gradient(90deg, rgba(34,16,41,.68), transparent 75%); }
  .hero-cinematic-stage { padding-top: 250px; padding-bottom: 118px; align-items: flex-end; }
  .hero-cinematic-copy { width: 100%; }
  .hero-signature { margin-bottom: 18px; font-size: 9px; letter-spacing: .14em; }
  .hero-cinematic h1 { font-size: clamp(50px, 15vw, 69px); line-height: .92; }
  .hero-cinematic h1 > em { margin-top: 5px; }
  .hero-cinematic-lede { max-width: 520px; margin-top: 20px; font-size: 15px; line-height: 1.58; }
  .hero-cinematic-actions { margin-top: 24px; gap: 18px; }
  .hero-primary-action { min-height: 52px; padding-inline: 22px; }
  .hero-secondary-action small { display: none; }
  .hero-secondary-action > span:last-child { font-size: 11px; }
  .play-mark { width: 40px; height: 40px; }
  .hero-cinematic-whisper { display: none; }
  .hero-cinematic-foot, .hero-cinematic-foot > .container { min-height: 72px; }
  .hero-disciplines span:nth-of-type(n+4), .hero-disciplines i:nth-of-type(n+3) { display: none; }
  .hero-disciplines { gap: 9px; font-size: 8px; }
  .hero-cinematic-foot a { font-size: 0; }.hero-cinematic-foot a span { font-size: 13px; }
}

@media (max-width: 470px) {
  .hero-cinematic-actions { align-items: flex-start; flex-direction: column; }
  .hero-secondary-action { display: none; }
  .hero-cinematic-stage { padding-top: 260px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-cinematic-poster img, .hero-cinematic-copy, .hero-cinematic-whisper { animation: none; }
  .hero-cinematic-video { display:none; }
}

/* Editorial service chapter */
.services-editorial { position: relative; padding: 140px 0 130px; overflow: hidden; background: #f8f1e7; }
.services-editorial::before { content: ""; position: absolute; width: 430px; height: 430px; right: -225px; top: 80px; border: 70px solid rgba(107,38,159,.08); border-radius: 50%; }
.editorial-heading { display: grid; grid-template-columns: 1.25fr .75fr; gap: 80px; margin-bottom: 72px; align-items: end; }
.editorial-heading .section-kicker { grid-column: 1 / -1; display: flex; align-items: center; gap: 12px; margin-bottom: -42px; }
.editorial-heading .section-kicker span { width: 40px; height: 1px; background: var(--orange); }
.editorial-heading h2 { margin: 0; font: 600 clamp(49px, 5.2vw, 74px)/.99 "Manrope", sans-serif; letter-spacing: -.06em; }
.editorial-heading h2 em { display: inline-block; color: var(--purple); font: 600 1.08em/.85 "Cormorant Garamond", serif; letter-spacing: -.035em; }
.editorial-heading > p { max-width: 480px; margin: 0 0 5px; color: var(--muted); font-size: 17px; line-height: 1.78; }
.services-editorial-stage { display: grid; grid-template-columns: .92fr 1.08fr; min-height: 680px; overflow: hidden; border-radius: 3px; background: #2e1936; box-shadow: 0 34px 90px rgba(49,29,54,.18); }
.services-editorial-image { position: relative; min-height: 680px; overflow: hidden; }
.services-editorial-image picture { position: absolute; inset: 0; display: block; }
.services-editorial-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 58%; filter: saturate(.88) contrast(.96); transition: transform 1.1s cubic-bezier(.2,.8,.2,1); }
.services-editorial-stage:hover .services-editorial-image img { transform: scale(1.025); }
.services-editorial-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(40,19,47,.78), transparent 58%); }
.services-image-caption { position: absolute; left: 42px; right: 40px; bottom: 38px; z-index: 2; color: white; }
.services-image-caption span { display: block; margin-bottom: 10px; color: #f4bc77; font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.services-image-caption p { margin: 0; font: 600 italic 35px/1 "Cormorant Garamond", serif; }
.services-editorial-index { display: flex; padding: 18px 46px; flex-direction: column; justify-content: center; }
.service-editorial-row { display: grid; grid-template-columns: 50px 1.1fr 1fr 28px; gap: 22px; min-height: 86px; padding: 18px 0; align-items: center; color: white; border-bottom: 1px solid rgba(255,255,255,.14); text-decoration: none; transition: padding .25s, color .25s; }
.service-editorial-row:first-child { border-top: 1px solid rgba(255,255,255,.14); }
.service-editorial-row:hover { padding-inline: 12px; color: #ffd09a; }
.service-editorial-number { color: var(--orange); font: 700 10px "Manrope", sans-serif; letter-spacing: .08em; }
.service-editorial-name { font: 600 20px/1.15 "Manrope", sans-serif; letter-spacing: -.03em; }
.service-editorial-copy { color: rgba(255,255,255,.58); font-size: 11px; line-height: 1.5; }
.service-editorial-row b { display: grid; width: 27px; height: 27px; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; font-size: 10px; }
.services-editorial-foot { display: flex; margin-top: 30px; align-items: center; justify-content: space-between; gap: 30px; }
.services-editorial-foot p { margin: 0; color: var(--muted); font-size: 13px; }

@media (max-width: 950px) {
  .editorial-heading { grid-template-columns: 1fr; gap: 25px; }.editorial-heading .section-kicker { margin-bottom: 0; }.services-editorial-stage { grid-template-columns: 1fr; }.services-editorial-image { min-height: 500px; }.services-editorial-index { padding: 35px 42px; }
}

@media (max-width: 650px) {
  .services-editorial { padding: 88px 0; }.editorial-heading { margin-bottom: 42px; }.editorial-heading h2 { font-size: 44px; }.editorial-heading > p { font-size: 15px; }.services-editorial-image { min-height: 430px; }.services-editorial-index { padding: 18px 25px; }.service-editorial-row { grid-template-columns: 36px 1fr 24px; min-height: 77px; }.service-editorial-copy { display: none; }.service-editorial-name { font-size: 17px; }.services-editorial-foot { align-items: flex-start; flex-direction: column; }
}

/* Assessment collection — observe, understand, plan */
.collection-hero-assessment .collection-hero-media img { object-position: center; }
.collection-hero-assessment .collection-hero-wash { background: linear-gradient(90deg,rgba(22,31,35,.96) 0%,rgba(23,36,39,.84) 42%,rgba(23,36,39,.08) 73%),linear-gradient(0deg,rgba(17,27,30,.58),transparent 55%); }
.assessment-gallery-section { position: relative; padding: 140px 0 118px; overflow: hidden; background: #f3ede4; }
.assessment-gallery-section::before { content: "NOTICE"; position: absolute; top: 58px; right: -64px; color: rgba(27,86,84,.05); font: 800 180px/.8 "Manrope",sans-serif; letter-spacing: -.09em; pointer-events: none; }
.assessment-gallery-intro { position: relative; z-index: 1; display: grid; grid-template-columns: 1.15fr .7fr; gap: 100px; margin-bottom: 72px; align-items: end; }
.assessment-gallery-intro h2 { margin: 18px 0 0; color: #262230; font: 650 clamp(50px,5.4vw,77px)/.98 "Manrope",sans-serif; letter-spacing: -.065em; }
.assessment-gallery-intro h2 em { color: #1f716e; font: 600 italic 1.08em/.85 "Cormorant Garamond",serif; letter-spacing: -.03em; }
.assessment-gallery-intro > p { max-width: 510px; margin: 0 0 7px; color: #6d6870; font-size: 17px; line-height: 1.8; }
.assessment-art-grid { display: grid; grid-template-columns: repeat(12,1fr); gap: 22px; }
.assessment-art-card { --mx:0px; --my:0px; position: relative; display: flex; grid-column: span 6; min-height: 650px; padding: 44px; align-items: flex-end; overflow: hidden; color: white; border-radius: 3px; box-shadow: 0 25px 70px rgba(36,42,40,.13); text-decoration: none; isolation: isolate; transform: translate3d(var(--mx),var(--my),0); transition: transform .25s ease,box-shadow .45s ease; }
.assessment-art-card-1 { grid-column: 1 / span 7; min-height: 710px; }
.assessment-art-card-2 { grid-column: 8 / span 5; min-height: 710px; }
.assessment-art-card-3 { grid-column: 1 / span 5; min-height: 680px; }
.assessment-art-card-4 { grid-column: 6 / span 7; min-height: 680px; }
.assessment-art-card-5 { grid-column: 2 / span 10; min-height: 660px; }
.assessment-art-media { position: absolute; inset: 0; z-index: -3; }
.assessment-art-media img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.025); filter: saturate(.88) contrast(.98); transition: transform 1.2s cubic-bezier(.2,.8,.2,1),filter .6s ease; }
.assessment-art-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(0deg,rgba(21,34,37,.97) 0%,rgba(23,39,41,.73) 41%,rgba(22,36,38,.04) 76%),linear-gradient(90deg,rgba(20,31,34,.38),transparent 70%); transition: background .45s ease; }
.assessment-art-index { position: absolute; top: 36px; left: 40px; width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; color: #f6b976; font: 700 10px "Manrope",sans-serif; letter-spacing: .12em; }
.assessment-art-content { max-width: 680px; }
.assessment-art-content small { display: block; margin-bottom: 12px; color: #f5bc7c; font: 700 9px "Manrope",sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.assessment-art-content h2 { margin: 0 0 7px; color: white; font: 650 clamp(49px,5vw,73px)/.85 "Manrope",sans-serif; letter-spacing: -.07em; }
.assessment-art-content em { display: block; max-width: 620px; color: rgba(255,255,255,.75); font: 500 italic 18px/1.25 "Cormorant Garamond",serif; }
.assessment-art-content > p { max-width: 630px; margin: 18px 0 0; color: rgba(255,255,255,.73); font-size: 13px; line-height: 1.7; }
.assessment-art-focus { display: flex; margin-top: 20px; flex-wrap: wrap; gap: 8px; }
.assessment-art-focus span { padding: 8px 12px; color: rgba(255,255,255,.78); border: 1px solid rgba(255,255,255,.22); border-radius: 99px; font-size: 9px; line-height: 1.2; }
.assessment-art-content > strong { display: flex; max-height: 0; margin-top: 0; align-items: center; gap: 12px; overflow: hidden; opacity: 0; color: white; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; transform: translateY(12px); transition: all .35s ease; }
.assessment-art-content > strong b { display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid rgba(255,255,255,.34); border-radius: 50%; }
.assessment-art-card:hover { box-shadow: 0 32px 95px rgba(28,40,39,.25); }
.assessment-art-card:hover .assessment-art-media img { transform: scale(1.075); filter: saturate(1) contrast(1); }
.assessment-art-card:hover .assessment-art-content > strong { max-height: 55px; margin-top: 22px; opacity: 1; transform: none; }
.js .assessment-art-card { opacity: 0; transform: translate3d(var(--mx),calc(var(--my) + 35px),0); transition: opacity .75s calc(var(--assessment-order) * 90ms),transform .9s calc(var(--assessment-order) * 90ms) cubic-bezier(.2,.8,.2,1),box-shadow .45s; }
.js .assessment-art-card.in-view { opacity: 1; transform: translate3d(var(--mx),var(--my),0); }
.assessment-gallery-note { display: grid; grid-template-columns: auto minmax(20px,1fr) auto minmax(20px,1fr) auto 2fr; gap: 20px; margin-top: 55px; align-items: center; color: #2b605f; font: 700 10px "Manrope",sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.assessment-gallery-note i { height: 1px; background: rgba(31,113,110,.3); }
.assessment-gallery-note p { margin: 0 0 0 30px; color: #746e75; font-size: 11px; font-weight: 500; line-height: 1.6; letter-spacing: 0; text-transform: none; }

/* Assessment detail — a clinical story without becoming clinical-looking */
.assessment-detail-hero .service-detail-hero-wash { background: linear-gradient(90deg,rgba(15,31,34,.98) 0%,rgba(16,39,41,.84) 46%,rgba(18,43,43,.1) 77%),linear-gradient(0deg,rgba(12,28,30,.72),transparent 58%); }
.assessment-detail-hero .eyebrow,.assessment-detail-hero .service-hero-thought em { color: #f4be7d; }
.assessment-detail-hero h1 { margin-bottom: 12px; font-size: clamp(80px,9vw,135px); }
.assessment-detail-hero .assessment-full-name { max-width: 690px; margin: 0 0 19px!important; color: rgba(255,255,255,.9)!important; font: 500 italic clamp(19px,2vw,27px)/1.18 "Cormorant Garamond",serif!important; }
.assessment-detail-quick { background: #195b59; }
.assessment-story { background: #f4eee5; }
.assessment-story .service-story-note { border-color: #1f716e; }
.assessment-lenses { position:relative; padding: 145px 0 155px; overflow:hidden; color:white; background:radial-gradient(circle at 88% 13%,rgba(80,171,161,.2),transparent 28%),radial-gradient(circle at 8% 92%,rgba(241,184,116,.12),transparent 25%),#103737; isolation:isolate; }
.assessment-lenses::before { content:"PROFILE"; position:absolute; right:-22px; bottom:-42px; z-index:-1; color:rgba(255,255,255,.025); font:800 clamp(130px,18vw,270px)/.75 "Manrope",sans-serif; letter-spacing:-.09em; pointer-events:none; }
.assessment-lenses::after { content:""; position:absolute; inset:0; z-index:-2; opacity:.3; background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(90deg,transparent,black 24%,black 76%,transparent); pointer-events:none; }
.assessment-lenses-orbit { position:absolute; top:72px; right:6vw; z-index:-1; width:290px; height:290px; border:1px solid rgba(255,255,255,.08); border-radius:50%; pointer-events:none; }
.assessment-lenses-orbit::before,.assessment-lenses-orbit::after { content:""; position:absolute; border:1px solid rgba(241,184,116,.18); border-radius:50%; }
.assessment-lenses-orbit::before { inset:48px; }
.assessment-lenses-orbit::after { inset:103px; background:rgba(241,184,116,.12); box-shadow:0 0 45px rgba(241,184,116,.1); }
.assessment-lenses-orbit i { position:absolute; width:8px; height:8px; border-radius:50%; background:#f0b874; box-shadow:0 0 18px rgba(240,184,116,.75); }
.assessment-lenses-orbit i:nth-child(1) { top:27px; left:63px; }
.assessment-lenses-orbit i:nth-child(2) { right:18px; bottom:94px; }
.assessment-lenses-orbit i:nth-child(3) { left:78px; bottom:44px; width:5px; height:5px; background:#8ed1c9; }
.assessment-lenses-heading { position:relative; z-index:1; display:grid; grid-template-columns:.68fr 1.32fr; gap:70px; margin-bottom:76px; align-items:end; }
.assessment-lenses-heading .section-kicker { color: #f2b874; }
.assessment-lenses-heading h2 { margin: 0; color: white; font: 650 clamp(48px,5vw,72px)/.98 "Manrope",sans-serif; letter-spacing: -.06em; }
.assessment-lenses-heading h2 em { color: #f0b874; font: 600 italic 1.06em/.9 "Cormorant Garamond",serif; }
.assessment-lenses-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.assessment-lens { position:relative; grid-column:span 4; min-height:315px; padding:28px 30px 31px; overflow:hidden; color:white; border:1px solid rgba(255,255,255,.12); border-radius:24px; background:linear-gradient(145deg,rgba(255,255,255,.115),rgba(255,255,255,.035)); box-shadow:0 24px 65px rgba(3,24,25,.2); backdrop-filter:blur(5px); transform:translateY(0); transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s ease,background .35s ease,box-shadow .45s ease; }
.assessment-lens:nth-child(1) { grid-column:span 5; }
.assessment-lens:nth-child(2) { grid-column:span 3; }
.assessment-lens:nth-child(3) { grid-column:span 4; }
.assessment-lens:nth-child(4) { grid-column:span 7; min-height:275px; }
.assessment-lens:nth-child(5) { grid-column:span 5; min-height:275px; }
.assessment-lens::before { content:""; position:absolute; width:210px; height:210px; right:-108px; bottom:-116px; border:44px solid rgba(255,255,255,.045); border-radius:50%; transition:transform .7s cubic-bezier(.2,.8,.2,1),border-color .35s ease; }
.assessment-lens::after { content:""; position:absolute; width:120px; height:120px; right:18px; top:-80px; border-radius:50%; background:rgba(82,169,160,.11); filter:blur(2px); }
.assessment-lens:nth-child(even)::after { background:rgba(240,184,116,.12); }
.assessment-lens-top { display:flex; align-items:center; justify-content:space-between; }
.assessment-lens span { display:grid; width:46px; height:46px; place-items:center; color:#173e3e; border-radius:50%; background:#f0b874; box-shadow:0 9px 25px rgba(240,184,116,.18); font:800 10px "Manrope",sans-serif; letter-spacing:.1em; }
.assessment-lens i { position:relative; display:block; width:52px; height:52px; border:1px solid rgba(255,255,255,.2); border-radius:50%; }
.assessment-lens i::before { content:""; position:absolute; inset:9px; border:1px solid rgba(142,209,201,.55); border-radius:50%; }
.assessment-lens i::after { content:""; position:absolute; width:7px; height:7px; top:22px; left:22px; border-radius:50%; background:#8ed1c9; box-shadow:0 0 18px rgba(142,209,201,.68); }
.assessment-lens h3 { position:absolute; left:30px; right:78px; bottom:38px; margin:0; color:#fff; font:650 clamp(20px,1.65vw,27px)/1.18 "Manrope",sans-serif; letter-spacing:-.045em; }
.assessment-lens b { position:absolute; right:29px; bottom:38px; width:24px; height:24px; border-right:1px solid rgba(255,255,255,.44); border-bottom:1px solid rgba(255,255,255,.44); }
.assessment-lens b::before { content:""; position:absolute; right:-1px; bottom:-1px; width:7px; height:7px; border-right:1px solid #f0b874; border-bottom:1px solid #f0b874; }
.assessment-lens:hover { z-index:2; border-color:rgba(240,184,116,.48); background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055)); box-shadow:0 34px 78px rgba(3,24,25,.32); transform:translateY(-8px); }
.assessment-lens:hover::before { border-color:rgba(240,184,116,.12); transform:scale(1.13); }
.assessment-lens:hover i { animation:assessment-pulse 1.8s ease-in-out infinite; }
@keyframes assessment-pulse { 50% { box-shadow:0 0 0 9px rgba(142,209,201,.055); transform:scale(1.04); } }
.assessment-path { position:relative; padding:145px 0 155px; overflow:hidden; background:radial-gradient(circle at 92% 9%,rgba(31,113,110,.09),transparent 25%),linear-gradient(180deg,#f7f1e8 0%,#f1e8dc 100%); }
.assessment-path::before { content:"01  ·  02  ·  03  ·  04"; position:absolute; left:-22px; bottom:-20px; color:rgba(31,113,110,.045); font:800 clamp(75px,10vw,150px)/.8 "Manrope",sans-serif; letter-spacing:-.07em; white-space:nowrap; pointer-events:none; }
.assessment-path::after { content:""; position:absolute; width:480px; height:480px; right:-245px; top:50px; border:78px solid rgba(31,113,110,.055); border-radius:50%; pointer-events:none; }
.assessment-path-heading { display: grid; grid-template-columns: .7fr 1.3fr; gap: 70px; margin-bottom: 70px; align-items: end; }
.assessment-path-heading h2 { margin: 0; color: #292531; font: 650 clamp(48px,5vw,72px)/.98 "Manrope",sans-serif; letter-spacing: -.06em; }
.assessment-path-heading h2 em { color: #1f716e; font: 600 italic 1.05em/.9 "Cormorant Garamond",serif; }
.assessment-path-steps { position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:0; padding:0; list-style:none; }
.assessment-path-steps::before { content:""; position:absolute; top:53px; left:6%; right:6%; z-index:-1; height:2px; background:linear-gradient(90deg,#1f716e 0%,#67aaa2 44%,#efb56e 100%); box-shadow:0 0 16px rgba(31,113,110,.12); }
.assessment-path-steps li { position:relative; min-width:0; padding:0; transition:transform .42s cubic-bezier(.2,.8,.2,1); }
.assessment-step-node { position:relative; display:grid; width:106px; height:106px; margin:0 auto; place-items:center; border:7px solid #f5ede2; border-radius:50%; color:white; background:#1f716e; box-shadow:0 0 0 1px rgba(31,113,110,.2),0 18px 45px rgba(30,88,85,.2); transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,background .35s ease; }
.assessment-step-node span { position:absolute; top:-12px; right:-9px; display:grid; width:38px; height:38px; place-items:center; color:#254c4a; border:4px solid #f5ede2; border-radius:50%; background:#f1b772; font:800 9px "Manrope",sans-serif; letter-spacing:.08em; }
.assessment-step-node i { position:relative; display:inline-flex; width:auto; height:auto; align-items:center; justify-content:center; color:#fff; font-size:38px; line-height:1; }
/* Translate: the analyzed information becomes an agreed plan. */
.assessment-path-steps li:nth-child(4) .assessment-step-node { color:#173e3e; background:#f1b772; }
.assessment-path-steps li:nth-child(4) .assessment-step-node i { color:#173e3e; }
.assessment-step-copy { position:relative; min-height:225px; margin-top:30px; padding:31px 29px 29px; overflow:hidden; border:1px solid rgba(31,78,76,.11); border-radius:21px; background:rgba(255,255,255,.72); box-shadow:0 18px 48px rgba(68,54,47,.08); transition:background .35s ease,border-color .35s ease,box-shadow .4s ease; }
.assessment-step-copy::before { content:""; position:absolute; top:-7px; left:50%; width:14px; height:14px; border-top:1px solid rgba(31,78,76,.13); border-left:1px solid rgba(31,78,76,.13); background:#faf6f0; transform:translateX(-50%) rotate(45deg); }
.assessment-step-copy::after { content:""; position:absolute; right:-48px; bottom:-58px; width:125px; height:125px; border:25px solid rgba(31,113,110,.045); border-radius:50%; }
.assessment-path-steps strong { position:relative; z-index:1; display:block; margin:0 0 15px; color:#244b4a; font:650 clamp(23px,2vw,29px)/1.08 "Manrope",sans-serif; letter-spacing:-.045em; }
.assessment-path-steps p { position:relative; z-index:1; margin:0; color:#706a70; font-size:13px; line-height:1.75; }
.assessment-path-steps li:nth-child(4) .assessment-step-copy { border-color:#1f716e; background:#1f5f5d; box-shadow:0 22px 55px rgba(31,91,89,.2); }
.assessment-path-steps li:nth-child(4) .assessment-step-copy::before { border-color:#1f716e; background:#1f5f5d; }
.assessment-path-steps li:nth-child(4) .assessment-step-copy::after { border-color:rgba(241,183,114,.12); }
.assessment-path-steps li:nth-child(4) strong { color:#f7d9b0; }
.assessment-path-steps li:nth-child(4) p { color:rgba(255,255,255,.78); }
.assessment-path-steps li:hover { transform:translateY(-7px); }
.assessment-path-steps li:hover .assessment-step-node { background:#286f6c; box-shadow:0 0 0 8px rgba(31,113,110,.07),0 25px 55px rgba(30,88,85,.25); transform:scale(1.04); }
.assessment-path-steps li:nth-child(4):hover .assessment-step-node { background:#f6c68a; }
.assessment-path-steps li:hover .assessment-step-copy { border-color:rgba(31,113,110,.26); box-shadow:0 26px 62px rgba(68,54,47,.13); }
.assessment-outcome { padding: 130px 0; background: #fffaf3; }
.assessment-outcome-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 95px; align-items: center; }
.assessment-outcome-mark { position: relative; min-height: 480px; padding: 50px; overflow: hidden; color: white; background: #1a605e; }
.assessment-outcome-mark::after { content:""; position:absolute; width:300px; height:300px; right:-115px; bottom:-95px; border:55px solid rgba(246,188,121,.22); border-radius:50%; }
.assessment-outcome-mark span { color: #f4bd7a; font: 700 10px "Manrope",sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.assessment-outcome-mark strong { position: absolute; left: 50px; bottom: 48px; color: white; font: 650 clamp(48px,5vw,68px)/.9 "Manrope",sans-serif; letter-spacing: -.065em; }
.assessment-outcome-copy h2 { max-width: 670px; margin: 18px 0 23px; color: #292531; font: 650 clamp(42px,4.6vw,64px)/.97 "Manrope",sans-serif; letter-spacing: -.06em; }
.assessment-outcome-copy > p { max-width: 680px; color: #6d6870; font-size: 17px; line-height: 1.8; }
.assessment-outcome-copy .arrow-link { margin-top: 27px; color: #1f716e; }
.assessment-clinical-note { padding: 37px 0; color: rgba(255,255,255,.78); background: #102f30; }
.assessment-clinical-note .container { display: grid; grid-template-columns: 45px 1fr; gap: 25px; align-items: center; }
.assessment-clinical-note span { display:grid; width:44px; height:44px; place-items:center; color:#f3b977; border:1px solid rgba(255,255,255,.25); border-radius:50%; }
.assessment-clinical-note p { max-width: 1040px; margin: 0; font-size: 12px; line-height: 1.7; }
.assessment-clinical-note strong { color: white; }
.assessment-related { padding: 125px 0; background: #173e3e; }
.assessment-related-heading { display: flex; margin-bottom: 45px; align-items: end; justify-content: space-between; gap: 40px; }
.assessment-related-heading .section-kicker { color: #f1b773; }
.assessment-related-heading h2 { margin: 0; color: white; font: 650 clamp(42px,4.5vw,62px)/1 "Manrope",sans-serif; letter-spacing: -.06em; }
.assessment-related-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px; }
.assessment-related-card { position: relative; min-height: 410px; display: flex; padding: 35px; align-items: flex-end; overflow: hidden; color: white; text-decoration: none; isolation: isolate; }
.assessment-related-card picture,.assessment-related-card > span { position:absolute; inset:0; z-index:-2; }
.assessment-related-card img { width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.2,.8,.2,1); }
.assessment-related-card > span { z-index:-1; background:linear-gradient(0deg,rgba(11,30,31,.95),rgba(11,30,31,.12) 72%); }
.assessment-related-card small { color:#f3b873; font-size:9px; letter-spacing:.15em; text-transform:uppercase; }
.assessment-related-card h3 { margin:10px 0 17px; color:white; font-size:37px; letter-spacing:-.05em; }
.assessment-related-card b { font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
.assessment-related-card:hover img { transform:scale(1.06); }
.assessment-final-cta { background: #f0b76f; }
.assessment-final-cta .container > p,.assessment-final-cta h2,.assessment-final-cta h2 em { color: #173e3e; }
.assessment-final-cta .warm-button { color: white; background: #173e3e; }

@media (max-width: 1000px) {
  .assessment-gallery-intro,.assessment-lenses-heading,.assessment-path-heading,.assessment-outcome-grid { grid-template-columns: 1fr; gap: 35px; }
  .assessment-art-card,.assessment-art-card-1,.assessment-art-card-2,.assessment-art-card-3,.assessment-art-card-4,.assessment-art-card-5 { grid-column: span 6; min-height: 640px; }
  .assessment-gallery-note { grid-template-columns: auto 1fr auto 1fr auto; }.assessment-gallery-note p { grid-column:1 / -1; margin:10px 0 0; }
  .assessment-lenses-grid { grid-template-columns:repeat(2,1fr); }.assessment-lens,.assessment-lens:nth-child(1),.assessment-lens:nth-child(2),.assessment-lens:nth-child(3),.assessment-lens:nth-child(4),.assessment-lens:nth-child(5) { grid-column:auto; min-height:285px; }.assessment-lens:last-child:nth-child(odd) { grid-column:1 / -1; min-height:245px; }
  .assessment-path-steps { grid-template-columns:repeat(2,1fr); gap:28px 20px; }.assessment-path-steps::before { display:none; }.assessment-step-copy { min-height:205px; }.assessment-path-steps li { border:0; }
}

@media (max-width: 650px) {
  .collection-hero-assessment .collection-hero-media img { object-position: 68% center; }
  .collection-hero-assessment .collection-hero-wash { background:linear-gradient(0deg,rgba(18,34,36,.99),rgba(18,34,36,.75) 65%,rgba(18,34,36,.06)); }
  .assessment-gallery-section { padding:88px 0; }.assessment-gallery-intro { margin-bottom:45px; }.assessment-gallery-intro h2 { font-size:48px; }.assessment-gallery-intro > p { font-size:15px; }
  .assessment-art-grid { gap:18px; }.assessment-art-card,.assessment-art-card-1,.assessment-art-card-2,.assessment-art-card-3,.assessment-art-card-4,.assessment-art-card-5 { grid-column:1 / -1; min-height:630px; padding:27px; }.assessment-art-index { top:25px; left:25px; }.assessment-art-content h2 { font-size:52px; }.assessment-art-content > strong { max-height:55px; margin-top:20px; opacity:1; transform:none; }
  .assessment-detail-hero .service-detail-hero-media img { object-position:62% center; }.assessment-detail-hero h1 { font-size:72px; }.assessment-detail-hero .assessment-full-name { font-size:18px!important; }
  .assessment-lenses,.assessment-path,.assessment-outcome,.assessment-related { padding:88px 0; }.assessment-lenses-heading,.assessment-path-heading { margin-bottom:45px; }.assessment-lenses-heading h2,.assessment-path-heading h2 { font-size:45px; }
  .assessment-lenses { padding:92px 0 98px; }.assessment-lenses-orbit { top:35px; right:-95px; width:230px; height:230px; }.assessment-lenses::before { right:-8px; bottom:-12px; font-size:105px; }.assessment-lenses-grid { grid-template-columns:1fr; }.assessment-lens,.assessment-lens:nth-child(1),.assessment-lens:nth-child(2),.assessment-lens:nth-child(3),.assessment-lens:nth-child(4),.assessment-lens:nth-child(5),.assessment-lens:last-child:nth-child(odd) { grid-column:1 / -1; min-height:225px; padding:24px; border-radius:20px; }.assessment-lens h3 { left:24px; right:70px; bottom:29px; font-size:22px; }.assessment-lens b { right:24px; bottom:29px; }.assessment-lens span { width:42px; height:42px; }.assessment-lens i { width:44px; height:44px; }.assessment-lens i::after { top:18px; left:18px; }.assessment-path { padding:92px 0 100px; }.assessment-path::before { display:none; }.assessment-path-steps { display:block; }.assessment-path-steps::before { display:block; top:38px; bottom:38px; left:40px; right:auto; width:2px; height:auto; background:linear-gradient(180deg,#1f716e,#efb56e); }.assessment-path-steps li { display:grid; grid-template-columns:82px 1fr; gap:16px; margin-bottom:22px; align-items:start; }.assessment-path-steps li:last-child { margin-bottom:0; }.assessment-step-node { width:80px; height:80px; margin:0; border-width:6px; }.assessment-step-node span { top:-8px; right:-5px; width:31px; height:31px; border-width:3px; font-size:8px; }.assessment-step-node i { font-size:31px; }.assessment-step-copy { min-height:0; margin-top:0; padding:25px 23px 24px; border-radius:18px; }.assessment-step-copy::before { top:27px; left:-7px; transform:rotate(-45deg); }.assessment-path-steps strong { margin:0 0 11px; font-size:23px; }
  .assessment-outcome-mark { min-height:390px; padding:35px; }.assessment-outcome-mark strong { left:35px; bottom:35px; font-size:51px; }.assessment-outcome-copy h2 { font-size:44px; }
  .assessment-clinical-note .container { grid-template-columns:1fr; }.assessment-related-heading { align-items:flex-start; flex-direction:column; }.assessment-related-grid { grid-template-columns:1fr; }.assessment-related-card { min-height:390px; }
}

@media (prefers-reduced-motion: reduce) {
  .js .assessment-art-card,.js .assessment-art-card.in-view { opacity:1; transform:none; transition:none; }
  .assessment-art-card,.assessment-art-media img { transform:none!important; transition:none!important; }
  .assessment-lens,.assessment-lens:hover { transform:none; transition:none; }.assessment-lens:hover i { animation:none; }
  .assessment-path-steps li,.assessment-path-steps li:hover,.assessment-step-node,.assessment-path-steps li:hover .assessment-step-node { transform:none; transition:none; }
}

/* Training collection — knowledge that moves into practice */
.collection-hero-training .collection-hero-media img { object-position:center; }
.collection-hero-training .collection-hero-wash { background:linear-gradient(90deg,rgba(43,22,48,.97) 0%,rgba(54,27,58,.85) 42%,rgba(55,28,58,.08) 75%),linear-gradient(0deg,rgba(38,19,43,.6),transparent 55%); }
.training-gallery-section { position:relative; padding:140px 0 118px; overflow:hidden; background:#f7efe5; }
.training-gallery-section::before { content:"GROW"; position:absolute; right:-35px; top:65px; color:rgba(107,38,159,.048); font:800 210px/.8 "Manrope",sans-serif; letter-spacing:-.09em; pointer-events:none; }
.training-gallery-intro { position:relative; z-index:1; display:grid; grid-template-columns:1.12fr .7fr; gap:100px; margin-bottom:72px; align-items:end; }
.training-gallery-intro h2 { margin:18px 0 0; color:#292330; font:650 clamp(50px,5.4vw,77px)/.98 "Manrope",sans-serif; letter-spacing:-.065em; }
.training-gallery-intro h2 em { color:#7b3294; font:600 italic 1.08em/.85 "Cormorant Garamond",serif; letter-spacing:-.03em; }
.training-gallery-intro > p { max-width:520px; margin:0 0 7px; color:#6e6871; font-size:17px; line-height:1.8; }
.training-art-list { display:grid; gap:24px; }
.training-art-card { --mx:0px; --my:0px; position:relative; display:flex; min-height:700px; padding:48px; align-items:flex-end; overflow:hidden; color:white; border-radius:3px; box-shadow:0 26px 75px rgba(51,28,55,.14); text-decoration:none; isolation:isolate; transform:translate3d(var(--mx),var(--my),0); transition:transform .25s ease,box-shadow .45s ease; }
.training-art-card-2 { width:88%; min-height:650px; margin-left:auto; }
.training-art-media { position:absolute; inset:0; z-index:-3; }
.training-art-media img { display:block; width:100%; height:100%; object-fit:cover; transform:scale(1.025); filter:saturate(.9) contrast(.98); transition:transform 1.2s cubic-bezier(.2,.8,.2,1),filter .6s ease; }
.training-art-card-1 .training-art-media img { object-position:center; }
.training-art-wash { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(38,19,45,.94) 0%,rgba(42,20,49,.75) 44%,rgba(38,19,44,.06) 78%),linear-gradient(0deg,rgba(32,15,38,.78),transparent 66%); }
.training-art-card-2 .training-art-wash { background:linear-gradient(90deg,rgba(25,49,49,.95) 0%,rgba(24,51,51,.72) 47%,rgba(22,44,45,.05) 78%),linear-gradient(0deg,rgba(18,38,39,.72),transparent 64%); }
.training-art-number { position:absolute; top:38px; right:42px; display:grid; width:52px; height:52px; place-items:center; border:1px solid rgba(255,255,255,.35); border-radius:50%; color:#f3b977; font:700 10px "Manrope",sans-serif; letter-spacing:.12em; }
.training-art-content { max-width:690px; }
.training-art-content small { display:block; margin-bottom:13px; color:#f3b977; font:700 9px "Manrope",sans-serif; letter-spacing:.17em; text-transform:uppercase; }
.training-art-content h2 { max-width:700px; margin:0; color:white; font:650 clamp(50px,5.5vw,78px)/.91 "Manrope",sans-serif; letter-spacing:-.065em; }
.training-art-content > p { max-width:640px; margin:23px 0 0; color:rgba(255,255,255,.76); font-size:14px; line-height:1.75; }
.training-art-audience { display:grid; grid-template-columns:auto 1fr; gap:18px; max-width:650px; margin-top:25px; padding-top:20px; align-items:start; border-top:1px solid rgba(255,255,255,.2); }
.training-art-audience span { color:#f3b977; font-size:9px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.training-art-audience strong { color:rgba(255,255,255,.72); font-size:11px; line-height:1.55; }
.training-art-content > b { display:flex; max-height:0; margin-top:0; align-items:center; gap:12px; overflow:hidden; opacity:0; font-size:10px; letter-spacing:.1em; text-transform:uppercase; transform:translateY(12px); transition:all .35s ease; }
.training-art-content > b i { display:grid; width:31px; height:31px; place-items:center; border:1px solid rgba(255,255,255,.34); border-radius:50%; font-style:normal; }
.training-art-card:hover { box-shadow:0 34px 100px rgba(46,25,51,.26); }
.training-art-card:hover .training-art-media img { transform:scale(1.07); filter:saturate(1) contrast(1); }
.training-art-card:hover .training-art-content > b { max-height:55px; margin-top:24px; opacity:1; transform:none; }
.js .training-art-card { opacity:0; transform:translate3d(var(--mx),calc(var(--my) + 36px),0); transition:opacity .75s calc(var(--training-order) * 110ms),transform .9s calc(var(--training-order) * 110ms) cubic-bezier(.2,.8,.2,1),box-shadow .45s; }
.js .training-art-card.in-view { opacity:1; transform:translate3d(var(--mx),var(--my),0); }
.training-gallery-promise { display:grid; grid-template-columns:auto 1fr auto 1fr auto 1fr auto 2.2fr; gap:18px; margin-top:55px; align-items:center; color:#6e2e84; font:700 9px "Manrope",sans-serif; letter-spacing:.14em; text-transform:uppercase; }
.training-gallery-promise p { margin:0; }.training-gallery-promise i { height:1px; background:rgba(107,38,159,.25); }.training-gallery-promise span { margin-left:25px; color:#766f78; font-size:11px; font-weight:500; line-height:1.55; letter-spacing:0; text-transform:none; }

/* Training detail — from knowledge to action */
.training-detail-hero .service-detail-hero-wash { background:linear-gradient(90deg,rgba(43,20,49,.98) 0%,rgba(49,22,55,.86) 45%,rgba(50,24,54,.1) 78%),linear-gradient(0deg,rgba(35,16,40,.72),transparent 58%); }
.training-detail-hero .eyebrow,.training-detail-hero .service-hero-thought em { color:#f2b871; }
.training-detail-hero h1 { max-width:980px; font-size:clamp(62px,7vw,102px); }
.training-detail-quick { background:#713088; }
.training-story { background:#f6efe6; }
.training-story .service-story-note { border-color:#7a3292; }
.training-topics { padding:135px 0; color:white; background:#2f1836; }
.training-topics-heading { display:grid; grid-template-columns:.7fr 1.3fr; gap:70px; margin-bottom:65px; align-items:end; }
.training-topics-heading .section-kicker { color:#f1b770; }
.training-topics-heading h2 { margin:0; color:white; font:650 clamp(50px,5vw,72px)/.98 "Manrope",sans-serif; letter-spacing:-.06em; }
.training-topics-heading h2 em { color:#f0b46d; font:600 italic 1.06em/.9 "Cormorant Garamond",serif; }
.training-topics-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.18); border-left:1px solid rgba(255,255,255,.18); }
.training-topic { min-height:300px; padding:32px 30px; border-right:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
.training-topic span { color:#f1b56f; font:700 10px "Manrope",sans-serif; letter-spacing:.13em; }
.training-topic h3 { margin:72px 0 13px; color:white; font:650 24px/1.1 "Manrope",sans-serif; letter-spacing:-.04em; }
.training-topic p { margin:0; color:rgba(255,255,255,.6); font-size:12px; line-height:1.7; }
.training-path { position:relative; padding:140px 0; overflow:hidden; background:#f6efe6; }
.training-path::after { content:""; position:absolute; width:420px; height:420px; right:-245px; top:80px; border:70px solid rgba(122,50,146,.06); border-radius:50%; }
.training-path-heading { display:grid; grid-template-columns:.7fr 1.3fr; gap:70px; margin-bottom:68px; align-items:end; }
.training-path-heading h2 { margin:0; color:#2c2630; font:650 clamp(49px,5vw,72px)/.98 "Manrope",sans-serif; letter-spacing:-.06em; }
.training-path-heading h2 em { color:#7a3292; font:600 italic 1.06em/.9 "Cormorant Garamond",serif; }
.training-path-steps { position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); margin:0; padding:0; border-top:1px solid rgba(75,45,81,.2); list-style:none; }
.training-path-steps li { min-height:300px; padding:33px 27px; border-right:1px solid rgba(75,45,81,.16); }
.training-path-steps li:last-child { border-right:0; }
.training-path-steps span { color:#c96b3d; font:700 10px "Manrope",sans-serif; letter-spacing:.12em; }
.training-path-steps strong { display:block; margin:75px 0 12px; color:#703086; font:650 25px "Manrope",sans-serif; letter-spacing:-.04em; }
.training-path-steps p { margin:0; color:#716b72; font-size:13px; line-height:1.7; }
.training-fit { padding:130px 0; background:#fffaf3; }
.training-fit-grid { display:grid; grid-template-columns:.84fr 1.16fr; gap:95px; align-items:center; }
.training-fit-mark { position:relative; min-height:500px; padding:50px; overflow:hidden; color:white; background:#74308b; }
.training-fit-mark::after { content:""; position:absolute; width:320px; height:320px; right:-120px; bottom:-110px; border:60px solid rgba(244,185,113,.21); border-radius:50%; }
.training-fit-mark small { color:#f2b770; font-size:9px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.training-fit-mark strong { position:absolute; left:50px; right:45px; bottom:47px; color:white; font:650 clamp(42px,4.5vw,64px)/.95 "Manrope",sans-serif; letter-spacing:-.06em; }
.training-fit-copy h2 { max-width:710px; margin:18px 0 24px; color:#2c2730; font:650 clamp(37px,4.2vw,58px)/1 "Manrope",sans-serif; letter-spacing:-.055em; }
.training-fit-copy > p { max-width:700px; color:#6e6870; font-size:16px; line-height:1.78; }
.training-fit-copy .arrow-link { margin-top:25px; color:#713087; }
.training-related { padding:125px 0; background:#321938; }
.training-related .section-kicker { margin-bottom:40px; color:#f1b56f; }
.training-related-card { position:relative; display:flex; min-height:560px; padding:45px; align-items:flex-end; overflow:hidden; color:white; text-decoration:none; isolation:isolate; }
.training-related-card picture,.training-related-card > span { position:absolute; inset:0; z-index:-2; }
.training-related-card img { width:100%; height:100%; object-fit:cover; transition:transform .9s cubic-bezier(.2,.8,.2,1); }
.training-related-card > span { z-index:-1; background:linear-gradient(90deg,rgba(38,18,44,.96),rgba(38,18,44,.68) 53%,rgba(38,18,44,.05) 82%),linear-gradient(0deg,rgba(31,13,36,.76),transparent 68%); }
.training-related-card div { max-width:680px; }
.training-related-card small { color:#f1b56f; font-size:9px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.training-related-card h2 { margin:12px 0 17px; color:white; font:650 clamp(45px,5vw,68px)/.92 "Manrope",sans-serif; letter-spacing:-.06em; }
.training-related-card p { max-width:620px; color:rgba(255,255,255,.7); font-size:14px; line-height:1.7; }
.training-related-card b { display:block; margin-top:22px; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.training-related-card:hover img { transform:scale(1.055); }
.training-final-cta { background:#e9a85f; }
.training-final-cta .container > p,.training-final-cta h2,.training-final-cta h2 em { color:#321938; }
.training-final-cta .warm-button { color:white; background:#321938; }

@media (max-width:1000px) {
  .training-gallery-intro,.training-topics-heading,.training-path-heading,.training-fit-grid { grid-template-columns:1fr; gap:35px; }
  .training-art-card-2 { width:100%; }
  .training-gallery-promise { grid-template-columns:auto 1fr auto 1fr auto 1fr auto; }.training-gallery-promise span { grid-column:1 / -1; margin:10px 0 0; }
  .training-path-steps { grid-template-columns:repeat(2,1fr); }.training-path-steps li { border-bottom:1px solid rgba(75,45,81,.16); }
}

@media (max-width:650px) {
  .collection-hero-training .collection-hero-media img { object-position:68% center; }.collection-hero-training .collection-hero-wash { background:linear-gradient(0deg,rgba(44,21,49,.99),rgba(44,21,49,.74) 66%,rgba(44,21,49,.08)); }
  .training-gallery-section { padding:88px 0; }.training-gallery-intro { margin-bottom:45px; }.training-gallery-intro h2 { font-size:48px; }.training-gallery-intro > p { font-size:15px; }
  .training-art-card,.training-art-card-2 { min-height:650px; padding:27px; }.training-art-number { top:25px; right:25px; }.training-art-content h2 { font-size:49px; }.training-art-content > p { font-size:13px; }.training-art-audience { grid-template-columns:1fr; gap:8px; }.training-art-content > b { max-height:55px; margin-top:22px; opacity:1; transform:none; }
  .training-detail-hero .service-detail-hero-media img { object-position:62% center; }.training-detail-hero h1 { font-size:55px; }
  .training-topics,.training-path,.training-fit,.training-related { padding:88px 0; }.training-topics-heading,.training-path-heading { margin-bottom:45px; }.training-topics-heading h2,.training-path-heading h2 { font-size:45px; }
  .training-topics-grid,.training-path-steps { grid-template-columns:1fr; }.training-topic { min-height:250px; }.training-topic h3 { margin-top:55px; }.training-path-steps li { min-height:220px; border-right:0; }.training-path-steps strong { margin-top:45px; }
  .training-fit-mark { min-height:420px; padding:35px; }.training-fit-mark strong { left:35px; right:30px; bottom:35px; font-size:47px; }.training-fit-copy h2 { font-size:39px; }
  .training-related-card { min-height:520px; padding:30px; }.training-related-card > span { background:linear-gradient(0deg,rgba(41,19,47,.97),rgba(41,19,47,.4) 72%); }.training-related-card h2 { font-size:45px; }
}

@media (prefers-reduced-motion:reduce) {
  .js .training-art-card,.js .training-art-card.in-view { opacity:1; transform:none; transition:none; }
  .training-art-card,.training-art-media img { transform:none!important; transition:none!important; }
}

/* Knowledge library v2 */
.resource-library-page { --resource-ink:#25222c; --resource-parent:#6b286f; --resource-professional:#14515a; --resource-gold:#efb66f; --resource-mint:#91d2c7; background:#f8f4ed; }
.resource-library-hero { position:relative; min-height:860px; padding:150px 0 120px; overflow:hidden; color:#fff; background:#153f46; isolation:isolate; }
.resource-library-hero-media { position:absolute; inset:0; z-index:-4; }.resource-library-hero-media img { width:100%; height:100%; object-fit:cover; object-position:64% center; transform:scale(1.025); }
.resource-library-hero-wash { position:absolute; inset:0; z-index:-3; background:linear-gradient(90deg,rgba(13,45,50,.99) 0%,rgba(13,45,50,.94) 46%,rgba(13,45,50,.32) 78%,rgba(13,45,50,.18)); }
.resource-library-hero-lines { position:absolute; inset:0; z-index:-2; opacity:.15; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:90px 90px; mask-image:linear-gradient(90deg,#000,transparent 80%); }
.resource-library-hero-grid { display:grid; grid-template-columns:1.18fr .82fr; gap:85px; align-items:center; }
.resource-library-hero-copy { max-width:760px; }.resource-library-hero-copy .eyebrow { color:var(--resource-gold); }
.resource-library-hero-copy h1 { margin:24px 0 31px; color:#fff; font:650 clamp(66px,7.2vw,106px)/.88 "Manrope",sans-serif; letter-spacing:-.075em; }
.resource-library-hero-copy h1 em { color:var(--resource-gold); font:600 italic 1.04em/.85 "Cormorant Garamond",serif; }
.resource-library-hero-copy > p:not(.eyebrow) { max-width:680px; color:rgba(255,255,255,.74); font-size:17px; line-height:1.75; }
.resource-library-search { display:flex; max-width:690px; margin-top:38px; padding:7px; align-items:center; border:1px solid rgba(255,255,255,.2); border-radius:999px; background:rgba(255,255,255,.12); backdrop-filter:blur(15px); }
.resource-library-search > i { margin-inline:17px 7px; color:var(--resource-gold); }.resource-library-search input { min-width:0; padding:14px 10px; flex:1; color:#fff; border:0; outline:0; background:transparent; font:inherit; }.resource-library-search input::placeholder { color:rgba(255,255,255,.56); }
.resource-library-search button { padding:14px 26px; color:#2d2730; border:0; border-radius:999px; background:var(--resource-gold); font-weight:800; cursor:pointer; }
.resource-library-compass { position:relative; width:min(100%,520px); aspect-ratio:1; justify-self:end; border:1px solid rgba(255,255,255,.18); border-radius:50%; background:rgba(255,255,255,.055); box-shadow:0 30px 100px rgba(0,0,0,.22),inset 0 0 0 70px rgba(255,255,255,.018); backdrop-filter:blur(9px); }
.resource-library-compass::before,.resource-library-compass::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.13); border-radius:50%; }.resource-library-compass::before { inset:70px; }.resource-library-compass::after { inset:145px; border-color:rgba(239,182,111,.35); }
.resource-compass-label { position:absolute; top:38px; left:50%; color:rgba(255,255,255,.6); font:800 9px "Manrope",sans-serif; letter-spacing:.17em; transform:translateX(-50%); }
.resource-compass-core { position:absolute; left:50%; top:50%; z-index:2; display:grid; width:132px; height:132px; place-content:center; text-align:center; border-radius:50%; background:linear-gradient(145deg,#7b327d,#4d1f58); box-shadow:0 18px 48px rgba(0,0,0,.25),0 0 0 15px rgba(255,255,255,.05); transform:translate(-50%,-50%); }.resource-compass-core strong { color:#fff; font:700 44px/1 "Manrope",sans-serif; }.resource-compass-core small { margin-top:7px; color:var(--resource-gold); font:800 7px "Manrope",sans-serif; letter-spacing:.13em; }
.resource-compass-path { position:absolute; z-index:3; display:flex; width:180px; min-height:112px; padding:18px; align-items:center; gap:12px; color:#fff; border:1px solid rgba(255,255,255,.18); border-radius:18px; background:rgba(10,38,43,.84); box-shadow:0 14px 42px rgba(0,0,0,.18); text-decoration:none; transition:transform .35s,border-color .35s; }.resource-compass-path.parents { left:-22px; top:112px; }.resource-compass-path.professionals { right:-22px; bottom:105px; }.resource-compass-path i { display:grid; width:43px; height:43px; flex:0 0 auto; place-items:center; color:#2c2931; border-radius:50%; background:var(--resource-gold); }.resource-compass-path span { font-size:13px; font-weight:700; }.resource-compass-path b { margin-inline-start:auto; color:var(--resource-mint); font:700 21px "Manrope",sans-serif; }.resource-compass-path:hover { border-color:var(--resource-gold); transform:translateY(-6px); }
.resource-library-scroll { position:absolute; right:38px; bottom:36px; display:flex; align-items:center; gap:15px; color:rgba(255,255,255,.65); font-size:10px; font-weight:800; letter-spacing:.13em; text-decoration:none; text-transform:uppercase; }.resource-library-scroll span { display:grid; width:38px; height:38px; place-items:center; color:#2c2830; border-radius:50%; background:var(--resource-gold); }

.resource-library-paths { padding:140px 0 150px; background:linear-gradient(180deg,#fbf8f2,#f0e6d9); }
.resource-path-intro { display:grid; grid-template-columns:.55fr 1.45fr; gap:70px; margin-bottom:70px; align-items:end; }.resource-path-intro h2 { margin:0; color:var(--resource-ink); font-size:clamp(50px,5.3vw,76px); line-height:.96; letter-spacing:-.065em; }.resource-path-intro h2 em { color:var(--resource-parent); font-family:"Cormorant Garamond",serif; }
.resource-path-cards { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }.resource-path-card { position:relative; min-height:470px; padding:38px; overflow:hidden; color:#fff; border-radius:28px; text-decoration:none; isolation:isolate; transition:transform .45s,box-shadow .45s; }.resource-path-card.parents { background:radial-gradient(circle at 90% 5%,rgba(255,255,255,.14),transparent 31%),linear-gradient(145deg,#743178,#3e1d4a); }.resource-path-card.professionals { background:radial-gradient(circle at 90% 5%,rgba(255,255,255,.14),transparent 31%),linear-gradient(145deg,#226a71,#103e45); }.resource-path-card::before { content:""; position:absolute; width:340px; height:340px; right:-160px; bottom:-170px; z-index:-1; border:60px solid rgba(255,255,255,.055); border-radius:50%; transition:transform .6s; }.resource-path-card > span { position:absolute; right:30px; top:25px; color:rgba(255,255,255,.3); font:750 62px "Manrope",sans-serif; }.resource-path-card > i { display:grid; width:68px; height:68px; margin-bottom:60px; place-items:center; color:#342139; border-radius:50%; background:var(--resource-gold); font-size:25px; }.resource-path-card small { color:var(--resource-mint); font:800 9px "Manrope",sans-serif; letter-spacing:.15em; }.resource-path-card h3 { max-width:500px; margin:13px 0 18px; color:#fff; font-size:clamp(34px,3.4vw,49px); line-height:1; letter-spacing:-.05em; }.resource-path-card p { max-width:530px; color:rgba(255,255,255,.7); font-size:15px; line-height:1.75; }.resource-path-card > b { position:absolute; left:38px; bottom:35px; color:var(--resource-gold); font-size:11px; }.resource-path-card:hover { transform:translateY(-9px); box-shadow:0 35px 80px rgba(38,24,42,.22); }.resource-path-card:hover::before { transform:scale(1.13); }

.resource-shelf { position:relative; padding:145px 0 160px; overflow:hidden; }.parents-shelf { background:#fbf8f2; }.professionals-shelf { color:#fff; background:linear-gradient(145deg,#102f35,#173f47); isolation:isolate; }.resource-shelf-gridlines { position:absolute; inset:0; z-index:-1; opacity:.34; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:82px 82px; mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent); }
.resource-shelf-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:85px; margin-bottom:75px; align-items:end; }.resource-shelf-heading h2 { margin:20px 0 0; color:var(--resource-ink); font-size:clamp(50px,5.1vw,72px); line-height:.98; letter-spacing:-.065em; }.resource-shelf-heading h2 em { color:var(--resource-parent); font-family:"Cormorant Garamond",serif; }.resource-shelf-heading > p { margin:0; color:#6b6570; font-size:15px; line-height:1.8; }.professionals-shelf .resource-shelf-heading h2 { color:#fff; }.professionals-shelf .resource-shelf-heading h2 em,.professionals-shelf .resource-shelf-heading .section-kicker { color:var(--resource-gold); }.professionals-shelf .resource-shelf-heading > p { color:rgba(255,255,255,.66); }
.resource-editorial-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:22px; }.resource-editorial-card { grid-column:span 4; overflow:hidden; border-radius:24px; background:#fff; box-shadow:0 20px 62px rgba(43,31,46,.09); transition:transform .45s,box-shadow .45s; }.resource-editorial-card.featured { grid-column:span 8; display:grid; grid-template-columns:1.05fr .95fr; }.professionals-shelf .resource-editorial-card { background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.11); box-shadow:0 25px 68px rgba(0,0,0,.16); backdrop-filter:blur(5px); }
.resource-editorial-media { position:relative; display:block; min-height:270px; overflow:hidden; background:#dcd4ca; }.resource-editorial-card.featured .resource-editorial-media { min-height:500px; }.resource-editorial-media::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(27,15,31,.5),transparent 65%); }.resource-editorial-media img { width:100%; height:100%; object-fit:cover; transition:transform .75s cubic-bezier(.2,.8,.2,1); }.resource-audience-badge { position:absolute; left:20px; top:19px; z-index:2; display:flex; padding:9px 12px; align-items:center; gap:7px; color:#fff; border:1px solid rgba(255,255,255,.28); border-radius:999px; background:rgba(42,22,49,.55); font-size:9px; font-weight:750; backdrop-filter:blur(8px); }.resource-editorial-media > b { position:absolute; right:18px; bottom:17px; z-index:2; padding:8px 10px; color:#33273a; border-radius:999px; background:var(--resource-gold); font-size:9px; }
.resource-editorial-copy { display:flex; min-height:310px; padding:28px; flex-direction:column; }.resource-editorial-card.featured .resource-editorial-copy { min-height:500px; padding:42px; justify-content:center; }.resource-editorial-copy > p { margin:0 0 14px; color:var(--resource-parent); font-size:9px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }.resource-editorial-copy h3 { margin:0 0 17px; color:var(--resource-ink); font-size:clamp(23px,2.1vw,32px); line-height:1.16; letter-spacing:-.04em; }.resource-editorial-card.featured .resource-editorial-copy h3 { font-size:clamp(34px,3.6vw,50px); line-height:1.04; }.resource-editorial-copy h3 a { color:inherit; text-decoration:none; }.resource-editorial-copy > span { margin-bottom:25px; color:#6b6570; font-size:13px; line-height:1.72; }.resource-read-link { margin-top:auto; color:var(--resource-parent); font-size:10px; font-weight:800; text-decoration:none; }.professionals-shelf .resource-editorial-copy > p,.professionals-shelf .resource-read-link { color:var(--resource-gold); }.professionals-shelf .resource-editorial-copy h3 { color:#fff; }.professionals-shelf .resource-editorial-copy > span { color:rgba(255,255,255,.65); }.resource-editorial-card:hover { box-shadow:0 34px 80px rgba(43,31,46,.17); transform:translateY(-8px); }.resource-editorial-card:hover img { transform:scale(1.055); }

.resource-standards { padding:145px 0; background:#eee2d3; }.resource-standards-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:center; }.resource-standards h2 { margin:20px 0 0; color:var(--resource-ink); font-size:clamp(45px,4.7vw,65px); line-height:1; letter-spacing:-.06em; }.resource-standards h2 em { color:var(--resource-parent); font-family:"Cormorant Garamond",serif; }.resource-standards ol { margin:0; padding:0; list-style:none; border-top:1px solid rgba(44,32,49,.14); }.resource-standards li { display:grid; padding:26px 0; grid-template-columns:55px 1fr; border-bottom:1px solid rgba(44,32,49,.14); }.resource-standards li span { color:var(--resource-parent); font:800 9px "Manrope",sans-serif; letter-spacing:.11em; }.resource-standards li p { margin:0; color:#625b66; font-size:15px; line-height:1.7; }.resource-standards li strong { color:var(--resource-ink); }

/* Long-form article system */
.knowledge-article-page { --article-accent:#743178; --article-deep:#301a39; background:#fbf8f2; }.knowledge-article-hero.professional,.article-visual-explainer.professional { --article-accent:#24747a; --article-deep:#113f46; }
.article-reading-progress { position:fixed; left:0; right:0; top:0; z-index:1100; height:3px; background:transparent; }.article-reading-progress span { display:block; width:0; height:100%; background:linear-gradient(90deg,var(--article-accent),#efb66f); }
.knowledge-article-hero { position:relative; display:flex; min-height:820px; padding:150px 0 105px; align-items:flex-end; overflow:hidden; color:#fff; background:var(--article-deep); isolation:isolate; }.knowledge-article-hero-media { position:absolute; inset:0; z-index:-3; }.knowledge-article-hero-media img { width:100%; height:100%; object-fit:cover; }.knowledge-article-hero-wash { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(30,14,36,.99),rgba(30,14,36,.87) 52%,rgba(30,14,36,.2)); }.knowledge-article-hero.professional .knowledge-article-hero-wash { background:linear-gradient(90deg,rgba(9,39,44,.99),rgba(9,39,44,.86) 52%,rgba(9,39,44,.2)); }.knowledge-article-hero-grain { position:absolute; inset:0; z-index:-1; opacity:.13; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E"); }
.knowledge-article-hero-copy { max-width:1000px; margin-left:max(calc((100vw - 1240px)/2),0px); }.knowledge-article-hero .back-link { color:rgba(255,255,255,.63); }.knowledge-article-labels { display:flex; margin:35px 0 21px; gap:10px; }.knowledge-article-labels span { display:flex; padding:9px 13px; align-items:center; gap:7px; color:#fff; border:1px solid rgba(255,255,255,.22); border-radius:999px; background:rgba(255,255,255,.09); font-size:9px; font-weight:750; backdrop-filter:blur(8px); }.knowledge-article-labels i { color:#efb66f; }
.knowledge-article-hero h1 { max-width:950px; margin:0; color:#fff; font-size:clamp(55px,6.8vw,96px); line-height:.94; letter-spacing:-.07em; }.knowledge-article-hero-copy > p { max-width:760px; margin:28px 0; color:rgba(255,255,255,.72); font-size:18px; line-height:1.7; }.knowledge-article-meta { display:flex; flex-wrap:wrap; gap:12px 25px; color:#efb66f; font-size:10px; font-weight:750; }.knowledge-article-meta span { display:flex; align-items:center; gap:7px; }.knowledge-article-number { position:absolute; right:-18px; bottom:-50px; z-index:-1; color:rgba(255,255,255,.04); font:800 clamp(120px,20vw,280px)/.75 "Manrope",sans-serif; letter-spacing:-.1em; }
.knowledge-article-intro { padding:120px 0 125px; background:linear-gradient(180deg,#f3e8db,#fbf8f2); }.knowledge-article-intro-grid { display:grid; grid-template-columns:.45fr .85fr 1.2fr; gap:60px; align-items:center; }.article-opening-mark { position:relative; display:flex; min-height:310px; padding:28px; overflow:hidden; justify-content:space-between; flex-direction:column; color:#fff; border-radius:110px 10px 10px 10px; background:linear-gradient(145deg,var(--article-accent),var(--article-deep)); box-shadow:0 25px 70px rgba(46,27,49,.19); }.article-opening-mark::after { content:""; position:absolute; width:170px; height:170px; right:-80px; bottom:-90px; border:30px solid rgba(255,255,255,.08); border-radius:50%; }.article-opening-mark span { color:#efb66f; font:800 8px "Manrope",sans-serif; letter-spacing:.15em; }.article-opening-mark i { align-self:center; color:#fff; font-size:45px; }.knowledge-article-intro-grid h2 { margin:20px 0 0; color:#2b2730; font-size:clamp(42px,4.3vw,61px); line-height:1; letter-spacing:-.06em; }.knowledge-article-intro-grid h2 em { color:var(--article-accent); font-family:"Cormorant Garamond",serif; }.knowledge-article-intro-grid ol { margin:0; padding:0; list-style:none; border-top:1px solid rgba(47,32,52,.13); }.knowledge-article-intro-grid ol li { display:grid; padding:20px 0; grid-template-columns:48px 1fr; border-bottom:1px solid rgba(47,32,52,.13); }.knowledge-article-intro-grid ol span { color:var(--article-accent); font:800 9px "Manrope",sans-serif; }.knowledge-article-intro-grid ol p { margin:0; color:#57515b; font-size:14px; font-weight:600; line-height:1.65; }
.article-visual-explainer { position:relative; padding:140px 0; overflow:hidden; color:#fff; background:linear-gradient(145deg,var(--article-deep),#182b37); isolation:isolate; }.article-visual-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:85px; align-items:center; }.article-visual-copy .section-kicker { color:#efb66f; }.article-visual-copy h2 { margin:22px 0 25px; color:#fff; font-size:clamp(48px,4.9vw,70px); line-height:.98; letter-spacing:-.06em; }.article-visual-copy > p:last-child { color:rgba(255,255,255,.67); font-size:14px; line-height:1.8; }.article-visual-steps { position:relative; display:grid; margin:0; padding:0; grid-template-columns:repeat(2,1fr); gap:18px; list-style:none; }.article-visual-steps::before { content:""; position:absolute; left:50%; top:50%; width:73%; height:73%; border:1px dashed rgba(239,182,111,.28); border-radius:50%; transform:translate(-50%,-50%) rotate(12deg); }.article-visual-steps li { position:relative; z-index:1; display:flex; min-height:235px; padding:24px; justify-content:space-between; flex-direction:column; border:1px solid rgba(255,255,255,.13); border-radius:25px; background:rgba(255,255,255,.075); backdrop-filter:blur(4px); }.article-visual-steps li > span { color:#efb66f; font:800 9px "Manrope",sans-serif; }.article-visual-steps li > i { display:grid; width:49px; height:49px; place-items:center; color:var(--article-deep); border-radius:50%; background:#efb66f; font-size:18px; }.article-visual-steps li strong { max-width:235px; color:#fff; font:650 18px/1.35 "Manrope",sans-serif; }.article-visual-orbit { position:absolute; width:480px; height:480px; right:-320px; top:-200px; z-index:-1; border:1px solid rgba(255,255,255,.08); border-radius:50%; }.article-visual-orbit::before,.article-visual-orbit::after { content:""; position:absolute; border:1px solid rgba(239,182,111,.16); border-radius:50%; }.article-visual-orbit::before { inset:72px; }.article-visual-orbit::after { inset:150px; }
.knowledge-article-layout { display:grid; padding-top:125px; padding-bottom:130px; grid-template-columns:285px minmax(0,780px); gap:95px; justify-content:center; align-items:start; }.knowledge-article-aside { position:sticky; top:115px; }.article-aside-card { padding:27px; border:1px solid rgba(50,34,55,.12); border-radius:20px; background:#f3e9dd; }.article-aside-card > span { color:var(--article-accent); font:800 9px "Manrope",sans-serif; letter-spacing:.14em; }.article-aside-card nav { display:grid; margin-top:20px; }.article-aside-card nav a { display:grid; padding:13px 0; grid-template-columns:35px 1fr; color:#514a54; border-top:1px solid rgba(50,34,55,.1); font-size:11px; font-weight:650; line-height:1.45; text-decoration:none; }.article-aside-card nav a span { color:var(--article-accent); font:800 8px "Manrope",sans-serif; }.article-aside-standard { margin-top:18px; padding:25px; color:#fff; border-radius:20px; background:linear-gradient(145deg,var(--article-accent),var(--article-deep)); }.article-aside-standard > i { color:#efb66f; font-size:28px; }.article-aside-standard strong { display:block; margin:15px 0 9px; color:#fff; font-size:14px; }.article-aside-standard p { margin:0; color:rgba(255,255,255,.7); font-size:11px; line-height:1.65; }
.knowledge-article-body { color:#4f4953; font-size:18px; line-height:1.95; }.knowledge-article-body > p { margin:0 0 29px; }.knowledge-article-body h2 { margin:75px 0 24px; scroll-margin-top:110px; color:#29252d; font-size:clamp(38px,4vw,54px); line-height:1.08; letter-spacing:-.055em; }.knowledge-article-body h2:first-child { margin-top:0; }.knowledge-article-body h3 { margin:42px 0 17px; color:var(--article-accent); font-size:24px; line-height:1.25; }.knowledge-article-body ul { display:grid; margin:8px 0 35px; padding:0; gap:11px; list-style:none; }.knowledge-article-body li { position:relative; padding-inline-start:29px; }.knowledge-article-body li::before { content:""; position:absolute; left:0; top:.73em; width:9px; height:9px; border:2px solid var(--article-accent); border-radius:50%; }.knowledge-article-body strong { color:#2f2932; }.knowledge-article-body blockquote { position:relative; margin:44px 0; padding:32px 34px; color:#352d38; border:0; border-inline-start:4px solid #efb66f; border-radius:4px 19px 19px 4px; background:#f1e4d5; font:600 italic 22px/1.65 "Cormorant Garamond",serif; }.knowledge-article-body a { display:inline-flex; align-items:center; gap:5px; color:var(--article-accent); font-weight:700; text-underline-offset:4px; }.knowledge-article-body a span { font-size:.75em; }
.article-evidence-note { padding:55px 0; color:#fff; background:#163e45; }.article-evidence-note .container { display:grid; max-width:1040px; grid-template-columns:220px 1fr; gap:60px; align-items:center; }.article-evidence-note div > div { display:flex; align-items:center; gap:14px; }.article-evidence-note i { display:grid; width:46px; height:46px; place-items:center; color:#173d44; border-radius:50%; background:#efb66f; }.article-evidence-note span { color:#efb66f; font-size:11px; font-weight:800; }.article-evidence-note p { margin:0; color:rgba(255,255,255,.72); font-size:13px; line-height:1.75; }
.article-disclaimer-v2 { padding:30px 0; background:#0e2b30; }.article-disclaimer-v2 .container { display:flex; max-width:1000px; align-items:flex-start; gap:18px; }.article-disclaimer-v2 span { display:grid; width:40px; height:40px; flex:0 0 auto; place-items:center; color:#2e2731; border-radius:50%; background:#efb66f; }.article-disclaimer-v2 p { margin:0; color:rgba(255,255,255,.65); font-size:11px; line-height:1.75; }.article-disclaimer-v2 strong { color:#fff; }
.article-related-v2 { padding:135px 0 145px; background:#f2e8dc; }.article-related-v2 header { display:flex; margin-bottom:55px; align-items:end; justify-content:space-between; gap:50px; }.article-related-v2 h2 { margin:0; color:#29252d; font-size:clamp(42px,4vw,58px); letter-spacing:-.055em; }.article-related-v2 .container > div { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }.article-related-v2 a { position:relative; display:flex; min-height:430px; padding:28px; overflow:hidden; justify-content:flex-end; flex-direction:column; color:#fff; border-radius:22px; text-decoration:none; isolation:isolate; }.article-related-v2 picture { position:absolute; inset:0; z-index:-2; }.article-related-v2 img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }.article-related-v2 a::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,rgba(30,14,36,.95),rgba(30,14,36,.06) 70%); }.article-related-v2 a > span { color:#efb66f; font-size:9px; font-weight:800; }.article-related-v2 h3 { margin:13px 0 24px; color:#fff; font-size:25px; line-height:1.15; }.article-related-v2 a > b { font-size:10px; }.article-related-v2 a:hover img { transform:scale(1.06); }.article-mini-cta { background:#321b3b; }

html[dir="rtl"] .resource-library-hero-wash { background:linear-gradient(270deg,rgba(13,45,50,.99) 0%,rgba(13,45,50,.94) 46%,rgba(13,45,50,.32) 78%,rgba(13,45,50,.18)); }
html[dir="rtl"] .resource-library-hero-copy h1,html[dir="rtl"] .resource-path-intro h2,html[dir="rtl"] .resource-shelf-heading h2,html[dir="rtl"] .resource-standards h2,html[dir="rtl"] .knowledge-article-hero h1,html[dir="rtl"] .knowledge-article-intro-grid h2,html[dir="rtl"] .article-visual-copy h2,html[dir="rtl"] .knowledge-article-body h2 { line-height:1.18; letter-spacing:-.035em; }
html[dir="rtl"] .resource-library-compass { justify-self:start; }html[dir="rtl"] .resource-library-scroll { right:auto; left:38px; }
html[dir="rtl"] .resource-path-card > span { right:auto; left:30px; }html[dir="rtl"] .resource-path-card::before { right:auto; left:-160px; }html[dir="rtl"] .resource-path-card > b { left:auto; right:38px; }
html[dir="rtl"] .resource-audience-badge { left:auto; right:20px; }html[dir="rtl"] .resource-editorial-media > b { right:auto; left:18px; }
html[dir="rtl"] .knowledge-article-hero-wash { background:linear-gradient(270deg,rgba(30,14,36,.99),rgba(30,14,36,.87) 52%,rgba(30,14,36,.2)); }html[dir="rtl"] .knowledge-article-hero.professional .knowledge-article-hero-wash { background:linear-gradient(270deg,rgba(9,39,44,.99),rgba(9,39,44,.86) 52%,rgba(9,39,44,.2)); }
html[dir="rtl"] .knowledge-article-hero-copy { margin-left:auto; margin-right:max(calc((100vw - 1240px)/2),0px); }html[dir="rtl"] .knowledge-article-number { right:auto; left:-18px; }
html[dir="rtl"] .article-opening-mark { border-radius:10px 110px 10px 10px; }html[dir="rtl"] .article-opening-mark::after { right:auto; left:-80px; }
html[dir="rtl"] .knowledge-article-body li::before { left:auto; right:0; }html[dir="rtl"] .knowledge-article-body blockquote { border-radius:19px 4px 4px 19px; }

@media (max-width:1050px) {
  .resource-library-hero-grid { grid-template-columns:1fr; }.resource-library-compass { display:none; }.resource-library-hero-copy { max-width:820px; }
  .resource-path-intro,.resource-shelf-heading,.resource-standards-grid,.article-visual-grid { grid-template-columns:1fr; gap:35px; }
  .resource-editorial-card,.resource-editorial-card.featured { grid-column:span 6; display:block; }.resource-editorial-card.featured .resource-editorial-media { min-height:320px; }.resource-editorial-card.featured .resource-editorial-copy { min-height:310px; padding:28px; }.resource-editorial-card.featured .resource-editorial-copy h3 { font-size:clamp(23px,3vw,34px); }
  .knowledge-article-intro-grid { grid-template-columns:.5fr 1.5fr; }.knowledge-article-intro-grid > ol { grid-column:1/-1; }.knowledge-article-layout { grid-template-columns:230px minmax(0,1fr); gap:55px; }
}
@media (max-width:760px) {
  .resource-library-hero { min-height:780px; padding:130px 0 100px; }.resource-library-hero-copy h1 { font-size:clamp(52px,14vw,70px); }.resource-library-hero-copy > p:not(.eyebrow) { font-size:15px; }.resource-library-search { border-radius:20px; }.resource-library-search button { padding-inline:18px; }.resource-library-scroll { display:none; }
  .resource-library-paths,.resource-shelf,.resource-standards { padding:90px 0; }.resource-path-intro h2,.resource-shelf-heading h2,.resource-standards h2 { font-size:clamp(40px,11vw,52px); }.resource-path-cards { grid-template-columns:1fr; }.resource-path-card { min-height:450px; padding:30px; }.resource-editorial-grid { grid-template-columns:1fr; }.resource-editorial-card,.resource-editorial-card.featured { grid-column:auto; }.resource-editorial-media,.resource-editorial-card.featured .resource-editorial-media { min-height:260px; }.resource-editorial-copy,.resource-editorial-card.featured .resource-editorial-copy { min-height:330px; padding:27px; }.resource-standards-grid { gap:55px; }
  .knowledge-article-hero { min-height:720px; padding:125px 0 75px; }.knowledge-article-hero h1 { font-size:clamp(48px,13vw,63px); }.knowledge-article-hero-copy > p { font-size:15px; }.knowledge-article-meta { display:grid; }.knowledge-article-labels { flex-wrap:wrap; }
  .knowledge-article-intro { padding:85px 0; }.knowledge-article-intro-grid { grid-template-columns:1fr; gap:40px; }.article-opening-mark { min-height:260px; border-radius:70px 8px 8px 8px; }.knowledge-article-intro-grid > ol { grid-column:auto; }
  .article-visual-explainer { padding:90px 0; }.article-visual-copy h2 { font-size:clamp(40px,11vw,52px); }.article-visual-steps { grid-template-columns:1fr; }.article-visual-steps li { min-height:210px; }
  .knowledge-article-layout { padding-top:85px; padding-bottom:95px; grid-template-columns:1fr; }.knowledge-article-aside { position:static; }.article-aside-standard { display:none; }.knowledge-article-body { font-size:17px; }.knowledge-article-body h2 { margin-top:60px; font-size:clamp(36px,10vw,47px); }.knowledge-article-body blockquote { padding:26px; font-size:20px; }
  .article-evidence-note .container { grid-template-columns:1fr; gap:22px; }.article-related-v2 { padding:90px 0; }.article-related-v2 header { align-items:flex-start; flex-direction:column; }.article-related-v2 .container > div { grid-template-columns:1fr; }.article-related-v2 a { min-height:390px; }
  html[dir="rtl"] .article-opening-mark { border-radius:8px 70px 8px 8px; }
}

/* Arabic finishing layer — optical rhythm, mixed-direction data and localized art words */
.bidi-ltr { direction:ltr; unicode-bidi:isolate; white-space:nowrap; }
html[dir="rtl"] .hours-inner p:last-child { direction:rtl; }
html[dir="rtl"] .hours-inner strong,
html[dir="rtl"] .footer-hours strong,
html[dir="rtl"] .contact-hours strong { letter-spacing:0; }

html[dir="rtl"] .hero-cinematic-stage { direction:ltr; }
html[dir="rtl"] .hero-cinematic-copy { width:min(540px,46%); direction:rtl; text-align:right; }
html[dir="rtl"] .hero-cinematic h1 { font-family:"Alexandria","Tahoma",sans-serif; font-size:clamp(50px,4.1vw,62px); line-height:1.06; letter-spacing:-.045em; }
html[dir="rtl"] .hero-cinematic h1 > span { font-size:.72em; line-height:1.24; letter-spacing:-.035em; }
html[dir="rtl"] .hero-cinematic h1 > em { margin-top:10px; font-family:"Aref Ruqaa Ink","Noto Naskh Arabic",serif; font-size:1.04em; line-height:1.05; letter-spacing:0; }
html[dir="rtl"] .hero-cinematic-whisper { right:0; left:auto; direction:rtl; text-align:right; }
html[dir="rtl"] .hero-cinematic-whisper p { font-family:"Aref Ruqaa Ink","Noto Naskh Arabic",serif; font-style:normal; line-height:1.25; }
html[dir="rtl"] .hero-cinematic-actions { position:relative; z-index:2; }

html[dir="rtl"] .editorial-heading h2,
html[dir="rtl"] .assessment-gallery-intro h2,
html[dir="rtl"] .training-gallery-intro h2,
html[dir="rtl"] .collection-hero-copy h1,
html[dir="rtl"] .service-detail-hero h1,
html[dir="rtl"] .service-final-cta h2,
html[dir="rtl"] .program-inclusions-heading h2,
html[dir="rtl"] .program-path-heading h2,
html[dir="rtl"] .training-topics-heading h2,
html[dir="rtl"] .training-path-heading h2,
html[dir="rtl"] .training-fit-copy h2 { font-family:"Alexandria","Tahoma",sans-serif; letter-spacing:-.04em; }
html[dir="rtl"] .editorial-heading h2 em,
html[dir="rtl"] .assessment-gallery-intro h2 em,
html[dir="rtl"] .training-gallery-intro h2 em,
html[dir="rtl"] .service-final-cta h2 em,
html[dir="rtl"] .program-inclusions-heading h2 em,
html[dir="rtl"] .program-path-heading h2 em,
html[dir="rtl"] .training-topics-heading h2 em,
html[dir="rtl"] .training-path-heading h2 em { font-family:"Aref Ruqaa Ink","Noto Naskh Arabic",serif; font-style:normal; letter-spacing:0; line-height:1.08; }

html[dir="rtl"] .assessment-editorial::after { content:"نفهم"; font-family:"Alexandria",sans-serif; }
html[dir="rtl"] .site-footer::after { content:"الرعاية تبدأ بالفهم."; right:auto; left:-10px; font-family:"Aref Ruqaa Ink","Noto Naskh Arabic",serif; font-style:normal; }
html[dir="rtl"] .services-gallery-section::before { content:"رعاية"; right:auto; left:-45px; font-family:"Alexandria",sans-serif; letter-spacing:-.05em; }
html[dir="rtl"] .program-gallery-section::before { content:"معاً"; right:auto; left:-80px; font-family:"Alexandria",sans-serif; letter-spacing:-.05em; }
html[dir="rtl"] .service-possibilities::after { content:"ممكن"; right:auto; left:-35px; font-family:"Alexandria",sans-serif; letter-spacing:-.05em; }
html[dir="rtl"] .service-fit::before { content:"لِمَن؟"; left:auto; right:-25px; font-family:"Alexandria",sans-serif; letter-spacing:-.05em; }
html[dir="rtl"] .program-schedule::after { content:"نتطور"; right:auto; left:-35px; font-family:"Alexandria",sans-serif; letter-spacing:-.05em; }
html[dir="rtl"] .assessment-gallery-section::before { content:"نلاحظ"; right:auto; left:-64px; font-family:"Alexandria",sans-serif; letter-spacing:-.05em; }
html[dir="rtl"] .training-gallery-section::before { content:"ننمو"; right:auto; left:-35px; font-family:"Alexandria",sans-serif; letter-spacing:-.05em; }

@media (min-width:761px) {
  html[dir="rtl"] .hero-cinematic h1 > em { width:max-content; max-width:100%; margin:10px auto 0; }
  html[dir="rtl"] .hero-cinematic-actions { justify-content:flex-end; }
}

@media (min-width:761px) and (max-width:1000px) {
  html[dir="rtl"] .hero-cinematic-copy { width:min(520px,60%); }
  html[dir="rtl"] .hero-cinematic h1 { font-size:clamp(48px,5.4vw,56px); }
}

@media (max-width:760px) {
  html[dir="rtl"] .hero-cinematic-copy { width:100%; }
  html[dir="rtl"] .hero-cinematic h1 { font-size:clamp(43px,12.2vw,61px); line-height:1.1; }
  html[dir="rtl"] .hero-cinematic h1 > span { font-size:.7em; }
  html[dir="rtl"] .hero-cinematic h1 > em { margin-top:7px; font-size:1em; }
}

/* Arabic calligraphic accents: cool teal on light surfaces, champagne on dark art */
html[dir="rtl"] { --arabic-calligraphy: #24777a; --arabic-calligraphy-light: #f3d8b2; }
html[dir="rtl"] main h1 em,
html[dir="rtl"] main h2 em,
html[dir="rtl"] main h3 em {
  color:var(--arabic-calligraphy) !important;
  font-family:"Aref Ruqaa Ink",serif !important;
  font-weight:700;
  -webkit-text-fill-color:var(--arabic-calligraphy);
  filter:hue-rotate(155deg) saturate(.68) brightness(.86);
}
html[dir="rtl"] .hero-cinematic-whisper p {
  font-family:"Aref Ruqaa Ink",serif !important;
  filter:hue-rotate(28deg) saturate(.36) brightness(1.42);
}
html[dir="rtl"] .hero-cinematic h1 > em,
html[dir="rtl"] .service-detail-hero h1 em,
html[dir="rtl"] .service-hero-thought em,
html[dir="rtl"] .assessment-intro h2 em,
html[dir="rtl"] .training-cinematic-copy h2 em,
html[dir="rtl"] .service-possibilities-heading h2 em,
html[dir="rtl"] .service-method-copy h2 em,
html[dir="rtl"] .service-final-cta:not(.assessment-final-cta):not(.training-final-cta) h2 em,
html[dir="rtl"] .program-inclusions-heading h2 em,
html[dir="rtl"] .training-topics-heading h2 em,
html[dir="rtl"] .training-related-card h2 em {
  color:var(--arabic-calligraphy-light) !important;
  -webkit-text-fill-color:var(--arabic-calligraphy-light);
  filter:hue-rotate(28deg) saturate(.36) brightness(1.42);
}

/* The Arabic hero emphasis needs a cool, luminous contrast over both halves of the image. */
html[dir="rtl"] .hero-cinematic h1 > em {
  color:#9ce7df !important;
  -webkit-text-fill-color:#9ce7df;
  filter:hue-rotate(155deg) saturate(.72) brightness(1.24);
  text-shadow:0 3px 20px rgba(10,31,43,.62);
}

/* Arabic display type needs more vertical breathing room than the Latin art direction. */
html[dir="rtl"] :is(
  .editorial-heading h2,
  .services-gallery-intro h2,
  .program-gallery-intro h2,
  .collection-hero-copy h1,
  .detail-cinematic h1,
  .service-art-copy h2,
  .program-art-content h2,
  .assessment-art-content h2,
  .training-art-content h2,
  .service-detail-hero h1,
  .service-story-title h2,
  .service-possibilities-heading h2,
  .service-fit-copy h2,
  .service-method-copy h2,
  .service-final-cta h2,
  .service-related-heading h2,
  .service-related-card h3,
  .program-inclusions-heading h2,
  .program-path-heading h2,
  .program-schedule-copy h2,
  .program-related-card h2,
  .assessment-gallery-intro h2,
  .assessment-lenses-heading h2,
  .assessment-path-heading h2,
  .assessment-outcome-copy h2,
  .assessment-related-heading h2,
  .assessment-related-card h3,
  .training-gallery-intro h2,
  .training-cinematic-copy h2,
  .training-topics-heading h2,
  .training-path-heading h2,
  .training-fit-copy h2,
  .training-related-card h2
) {
  line-height:1.2;
  letter-spacing:-.025em;
}

html[dir="rtl"] :is(
  .editorial-heading h2,
  .services-gallery-intro h2,
  .program-gallery-intro h2,
  .collection-hero-copy h1,
  .detail-cinematic h1,
  .service-story-title h2,
  .service-possibilities-heading h2,
  .service-method-copy h2,
  .service-final-cta h2,
  .program-inclusions-heading h2,
  .program-path-heading h2,
  .assessment-gallery-intro h2,
  .assessment-lenses-heading h2,
  .assessment-path-heading h2,
  .training-gallery-intro h2,
  .training-cinematic-copy h2,
  .training-topics-heading h2,
  .training-path-heading h2
) em {
  line-height:1.32;
  white-space:normal;
}

html[dir="rtl"] .service-story-title h2 {
  font-size:clamp(44px,4.4vw,62px);
  line-height:1.24;
}

html[dir="rtl"] .service-story-title h2 em { font-size:.9em; line-height:1.36; }

/* Keep the assessment profile headline luminous and readable on the dark canvas. */
html[dir="rtl"] .assessment-lenses-heading h2 em {
  color:#f7dfbf !important;
  -webkit-text-fill-color:#f7dfbf;
  filter:none;
  text-shadow:0 8px 28px rgba(2,25,26,.24);
}

/* Fast, accessible WhatsApp contact on every public page. */
.whatsapp-fab {
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:950;
  display:grid;
  width:58px;
  height:58px;
  min-height:58px;
  padding:0;
  place-items:center;
  color:#fff;
  border:1px solid rgba(255,255,255,.38);
  border-radius:999px;
  background:#20b95b;
  box-shadow:0 15px 35px rgba(13,77,39,.3);
  text-decoration:none;
  transition:transform .22s ease,background .22s ease,box-shadow .22s ease;
}
.whatsapp-fab:hover { color:#fff; background:#159c49; box-shadow:0 19px 42px rgba(13,77,39,.38); transform:translateY(-3px); }
.whatsapp-fab:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.whatsapp-fab-icon {
  display:block;
  width:32px;
  height:32px;
  filter:brightness(0) invert(1);
}
html[dir="rtl"] .whatsapp-fab { right:auto; left:24px; }
@media (max-width:650px) {
  .whatsapp-fab { right:16px; bottom:16px; width:56px; height:56px; min-height:56px; }
  html[dir="rtl"] .whatsapp-fab { right:auto; left:16px; }
  .whatsapp-fab-icon { width:31px; height:31px; }
}

/* Balanced Arabic hero lines: equal visual weight from laptop to wide displays. */
html[dir="rtl"] .hero-cinematic h1 > .hero-title-line {
  display:block;
  font-size:.96em;
  line-height:1.16;
  letter-spacing:-.035em;
}
html[dir="rtl"] .hero-cinematic h1 > .hero-title-line-second { margin-top:-.05em; }
@media (min-width:1600px) {
  html[dir="rtl"] .hero-cinematic-copy { width:580px; }
  html[dir="rtl"] .hero-cinematic h1 { font-size:64px; }
}
@media (max-width:760px) {
  html[dir="rtl"] .hero-cinematic h1 > .hero-title-line { font-size:.82em; line-height:1.2; }
  html[dir="rtl"] .hero-cinematic h1 > .hero-title-line-second { margin-top:0; }
}

/* Clear language control that remains available on every screen size. */
.language {
  display:inline-flex;
  width:auto;
  min-width:96px;
  height:44px;
  padding:0 14px;
  align-items:center;
  justify-content:center;
  gap:9px;
  color:var(--purple-dark);
  border:1px solid rgba(72,32,95,.16);
  border-radius:999px;
  background:#fff;
  box-shadow:0 8px 22px rgba(72,32,95,.08);
  font:700 11px/1 "Manrope",sans-serif;
  text-decoration:none;
  transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease;
}
.language:hover { color:#fff; border-color:var(--purple); background:var(--purple); transform:translateY(-2px); }
.language:focus-visible { outline:3px solid rgba(107,38,159,.28); outline-offset:3px; }
.language-globe {
  position:relative;
  display:block;
  flex:0 0 auto;
  width:18px;
  height:18px;
  border:1.7px solid currentColor;
  border-radius:50%;
}
.language-globe::before {
  content:"";
  position:absolute;
  top:2px;
  bottom:2px;
  left:5px;
  right:5px;
  border-left:1.3px solid currentColor;
  border-right:1.3px solid currentColor;
  border-radius:50%;
}
.language-globe::after {
  content:"";
  position:absolute;
  left:2px;
  right:2px;
  top:7px;
  height:1.3px;
  background:currentColor;
}
.language-short { display:none; }
html[dir="rtl"] .language { font-family:"Alexandria",sans-serif; font-size:11px; }
@media (max-width:860px) {
  .nav-actions .language { display:inline-flex; }
  .language { min-width:62px; width:62px; height:42px; padding:0 9px; gap:6px; }
  .language-long { display:none; }
  .language-short { display:block; font-size:9px; }
  .language-globe { width:17px; height:17px; }
}

/* RTL cinematic composition: keep Arabic copy on quiet, high-contrast image areas. */
html[dir="rtl"] .contact-page-wash {
  background:
    linear-gradient(90deg, rgba(247,241,232,.9) 0%, rgba(53,28,61,.78) 48%, rgba(40,18,48,.98) 100%),
    linear-gradient(0deg, rgba(31,13,38,.45), transparent 48%);
}
html[dir="rtl"] .contact-page-copy h1 {
  max-width:620px;
  text-shadow:0 8px 34px rgba(20,8,25,.34);
}
html[dir="rtl"] .contact-page-copy .eyebrow { color:#f5c68f; }
html[dir="rtl"] .contact-page-copy h1 em {
  color:#9ce7df !important;
  -webkit-text-fill-color:#9ce7df;
  filter:none;
  text-shadow:0 5px 24px rgba(5,27,34,.48);
}
html[dir="rtl"] .contact-page-copy > p:not(.eyebrow) { color:rgba(255,255,255,.86); }
html[dir="rtl"] .contact-page-copy .contact-detail-card {
  border-color:rgba(255,255,255,.24);
  background:rgba(35,16,42,.28);
  box-shadow:0 22px 60px rgba(20,8,25,.14);
  backdrop-filter:blur(8px);
}
html[dir="rtl"] .contact-page-copy .contact-detail-card span { color:#c7e4e1; }

@media (min-width:901px) {
  html[dir="rtl"] .collection-hero .collection-hero-copy {
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    text-align:right;
  }
  html[dir="rtl"] .collection-hero .collection-hero-copy :is(.eyebrow,h1) {
    width:min(640px,52%);
  }
  html[dir="rtl"] .collection-hero .collection-hero-copy .eyebrow { color:#f5c68f; }
  html[dir="rtl"] .collection-hero .collection-hero-copy h1 {
    font-size:clamp(58px,6vw,82px);
    line-height:1.08;
  }
  html[dir="rtl"] .collection-hero .collection-hero-copy > p:not(.eyebrow) {
    width:min(620px,52%);
  }
}

@media (max-width:900px) {
  html[dir="rtl"] .contact-page-wash {
    background:linear-gradient(180deg, rgba(40,18,48,.97) 0%, rgba(40,18,48,.8) 52%, rgba(247,241,232,.95) 74%);
  }
}

@media (max-width:650px) {
  html[dir="rtl"] .collection-hero-copy h1 {
    max-width:100%;
    font-size:clamp(48px,13vw,52px);
    line-height:1.16;
    letter-spacing:-.025em;
  }
}

/* Service journeys v2 — each discipline keeps one system with its own visual voice. */
.service-detail-page-v2 {
  --service-deep:#28142f;
  --service-mid:#542066;
  --service-accent:#f0b46d;
  --service-cool:#79c7c0;
  --service-paper:#f6efe5;
}
.service-detail-page-v2[data-service-slug="occupational-therapy"] { --service-deep:#123d43; --service-mid:#1f6c6d; --service-accent:#efb974; --service-cool:#9bd7cf; --service-paper:#eef2eb; }
.service-detail-page-v2[data-service-slug="aba-therapy"] { --service-deep:#192c47; --service-mid:#31567c; --service-accent:#f0aa67; --service-cool:#88c7db; --service-paper:#edf1f4; }
.service-detail-page-v2[data-service-slug="academic-support"] { --service-deep:#342047; --service-mid:#694484; --service-accent:#f2ad62; --service-cool:#a5d4cb; --service-paper:#f5efe3; }
.service-detail-page-v2[data-service-slug="developmental-skills"] { --service-deep:#173c35; --service-mid:#39705d; --service-accent:#efbd72; --service-cool:#91d4bd; --service-paper:#edf2e8; }
.service-detail-page-v2[data-service-slug="behavior-support"] { --service-deep:#402331; --service-mid:#7b4251; --service-accent:#f0b26c; --service-cool:#91cec8; --service-paper:#f5ebe6; }
.service-detail-page-v2[data-service-slug="shadow-teacher"] { --service-deep:#1b3045; --service-mid:#3d617b; --service-accent:#efb36b; --service-cool:#91cbd0; --service-paper:#eef0e9; }

.service-detail-page-v2 .service-story { position:relative; overflow:hidden; }
.service-detail-page-v2 .service-story::after { content:""; position:absolute; width:430px; height:430px; right:-260px; bottom:-250px; border:70px solid rgba(107,38,159,.045); border-radius:50%; pointer-events:none; }

/* A discipline-specific visual model: the page explains the service before it lists it. */
.service-signature { position:relative; padding:145px 0; overflow:hidden; background:linear-gradient(145deg,#fbf8f2,var(--service-paper)); isolation:isolate; }
.service-signature::before { content:""; position:absolute; width:520px; height:520px; left:-365px; top:-345px; z-index:-1; border:82px solid color-mix(in srgb,var(--service-mid) 7%,transparent); border-radius:50%; }
.service-signature-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:88px; align-items:center; }
.service-signature-copy h2 { margin:20px 0 28px; max-width:670px; color:#292530; font-size:clamp(46px,4.7vw,68px); line-height:.99; letter-spacing:-.065em; }
.service-signature-copy h2 em { color:var(--service-mid); font-family:"Cormorant Garamond",serif; }
.service-signature-copy > p:last-child { max-width:610px; margin:0; color:#67616c; font-size:16px; line-height:1.85; }
.service-signature-canvas { position:relative; min-height:610px; padding:42px; overflow:hidden; border:1px solid rgba(49,30,57,.1); border-radius:34px; background:rgba(255,255,255,.64); box-shadow:0 32px 90px rgba(44,31,48,.12); isolation:isolate; }
.service-signature-canvas::before,.service-signature-canvas::after { content:""; position:absolute; z-index:-2; pointer-events:none; }
.service-signature-core { position:absolute; left:50%; top:50%; z-index:3; display:flex; width:158px; height:158px; padding:23px; align-items:center; justify-content:center; flex-direction:column; gap:12px; color:#fff; text-align:center; border-radius:50%; background:linear-gradient(145deg,var(--service-mid),var(--service-deep)); box-shadow:0 20px 50px color-mix(in srgb,var(--service-deep) 28%,transparent),0 0 0 14px rgba(255,255,255,.72); transform:translate(-50%,-50%); }
.service-signature-core::after { content:""; position:absolute; inset:-25px; z-index:-1; border:1px solid color-mix(in srgb,var(--service-mid) 22%,transparent); border-radius:inherit; animation:serviceSignaturePulse 4.8s ease-in-out infinite; }
.service-signature-core i { color:var(--service-accent); font-size:31px; }
.service-signature-core strong { font:800 9px/1.35 "Manrope",sans-serif; letter-spacing:.13em; }
.service-signature-nodes { position:relative; z-index:1; display:grid; min-height:526px; margin:0; padding:0; grid-template-columns:repeat(2,1fr); gap:145px 120px; align-content:space-between; list-style:none; }
.service-signature-nodes li { position:relative; display:flex; min-height:150px; padding:22px 20px; align-items:center; justify-content:center; flex-direction:column; color:#302b34; text-align:center; border:1px solid rgba(45,30,52,.1); border-radius:22px; background:rgba(255,255,255,.84); box-shadow:0 14px 38px rgba(41,28,47,.07); transition:transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .42s,border-color .35s; }
.service-signature-nodes li:hover { z-index:4; border-color:color-mix(in srgb,var(--service-mid) 42%,transparent); box-shadow:0 24px 52px rgba(41,28,47,.14); transform:translateY(-7px); }
.service-signature-nodes li > span { position:absolute; left:17px; top:15px; color:var(--service-mid); font:800 8px "Manrope",sans-serif; letter-spacing:.12em; }
.service-signature-nodes li > i { display:grid; width:43px; height:43px; margin-bottom:12px; place-items:center; color:#fff; border-radius:50%; background:var(--service-mid); font-size:17px; box-shadow:0 9px 22px color-mix(in srgb,var(--service-mid) 22%,transparent); }
.service-signature-nodes strong { color:#302b34; font:750 16px/1.2 "Manrope",sans-serif; letter-spacing:-.025em; }
.service-signature-nodes small { margin-top:7px; color:#7b7480; font-size:10px; line-height:1.4; }
.service-signature-canvas::after { left:50%; top:50%; width:63%; height:63%; border:1px dashed color-mix(in srgb,var(--service-mid) 24%,transparent); border-radius:50%; transform:translate(-50%,-50%) rotate(12deg); }

/* Speech: rounded dialogue shapes and a living waveform. */
[data-service-slug="speech-therapy"] .service-signature-canvas { background:radial-gradient(circle at 50% 50%,rgba(84,32,102,.09),transparent 30%),linear-gradient(145deg,#fff9f2,#f6e9f4); }
[data-service-slug="speech-therapy"] .service-signature-canvas::before { inset:49% 5% auto; height:42px; opacity:.38; background:repeating-linear-gradient(90deg,transparent 0 12px,var(--service-mid) 13px 16px,transparent 17px 25px); clip-path:polygon(0 42%,5% 42%,7% 5%,10% 95%,13% 24%,16% 75%,20% 42%,100% 42%,100% 58%,20% 58%,16% 88%,13% 35%,10% 100%,7% 16%,5% 58%,0 58%); }
[data-service-slug="speech-therapy"] .service-signature-nodes li { border-radius:42px 42px 42px 9px; }
[data-service-slug="speech-therapy"] .service-signature-nodes li:nth-child(even) { border-radius:42px 42px 9px 42px; }

/* OT: activities orbit participation, reflecting person-task-environment fit. */
[data-service-slug="occupational-therapy"] .service-signature-canvas { border-radius:48% 48% 32px 32px; background:radial-gradient(circle at 50% 49%,rgba(31,108,109,.13),transparent 31%),#f4f7f2; }
[data-service-slug="occupational-therapy"] .service-signature-canvas::before { inset:54px; border:1px solid rgba(31,108,109,.18); border-radius:50%; }
[data-service-slug="occupational-therapy"] .service-signature-canvas::after { width:48%; height:48%; border-style:solid; }
[data-service-slug="occupational-therapy"] .service-signature-nodes li { border-radius:48% 52% 44% 56%; }
[data-service-slug="occupational-therapy"] .service-signature-nodes li:nth-child(2),[data-service-slug="occupational-therapy"] .service-signature-nodes li:nth-child(3) { border-radius:55% 45% 58% 42%; }

/* ABA: a precise learning cycle with a measurement grid. */
[data-service-slug="aba-therapy"] .service-signature-canvas { border-radius:12px; background-color:#f4f7fa; background-image:linear-gradient(rgba(49,86,124,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(49,86,124,.07) 1px,transparent 1px); background-size:34px 34px; }
[data-service-slug="aba-therapy"] .service-signature-canvas::before { inset:80px; border:2px solid rgba(49,86,124,.2); clip-path:polygon(0 0,48% 0,48% 8%,100% 8%,100% 100%,52% 100%,52% 92%,0 92%); }
[data-service-slug="aba-therapy"] .service-signature-core,[data-service-slug="aba-therapy"] .service-signature-core::after,[data-service-slug="aba-therapy"] .service-signature-nodes li { border-radius:10px; }

/* Academic support: an ascending staircase from baseline to independence. */
[data-service-slug="academic-support"] .service-signature-canvas { background:linear-gradient(155deg,#fffaf0,#f1e9f5); }
[data-service-slug="academic-support"] .service-signature-canvas::before { left:42px; right:42px; bottom:50px; height:350px; opacity:.16; background:linear-gradient(135deg,transparent 0 24%,var(--service-mid) 24% 26%,transparent 26% 49%,var(--service-mid) 49% 51%,transparent 51% 74%,var(--service-mid) 74% 76%,transparent 76%); }
[data-service-slug="academic-support"] .service-signature-canvas::after { display:none; }
[data-service-slug="academic-support"] .service-signature-core { left:auto; right:47px; top:38px; width:128px; height:128px; transform:none; }
[data-service-slug="academic-support"] .service-signature-nodes { grid-template-columns:repeat(4,1fr); gap:12px; align-items:end; }
[data-service-slug="academic-support"] .service-signature-nodes li { padding-inline:10px; }
[data-service-slug="academic-support"] .service-signature-nodes li:nth-child(1) { min-height:180px; }.service-detail-page-v2[data-service-slug="academic-support"] .service-signature-nodes li:nth-child(2) { min-height:250px; }.service-detail-page-v2[data-service-slug="academic-support"] .service-signature-nodes li:nth-child(3) { min-height:320px; }.service-detail-page-v2[data-service-slug="academic-support"] .service-signature-nodes li:nth-child(4) { min-height:390px; }

/* Development: organic nodes connect around the child and family. */
[data-service-slug="developmental-skills"] .service-signature-canvas { background:radial-gradient(circle at 17% 18%,rgba(145,212,189,.32),transparent 25%),radial-gradient(circle at 85% 83%,rgba(239,189,114,.24),transparent 28%),#f4f7ef; }
[data-service-slug="developmental-skills"] .service-signature-canvas::before { width:440px; height:440px; left:50%; top:50%; border:1px solid rgba(57,112,93,.17); border-radius:43% 57% 51% 49%; transform:translate(-50%,-50%) rotate(23deg); }
[data-service-slug="developmental-skills"] .service-signature-canvas::after { border-radius:58% 42% 48% 52%; }
[data-service-slug="developmental-skills"] .service-signature-nodes li:nth-child(1) { border-radius:62% 38% 54% 46%; }.service-detail-page-v2[data-service-slug="developmental-skills"] .service-signature-nodes li:nth-child(2) { border-radius:38% 62% 44% 56%; }.service-detail-page-v2[data-service-slug="developmental-skills"] .service-signature-nodes li:nth-child(3) { border-radius:48% 52% 66% 34%; }.service-detail-page-v2[data-service-slug="developmental-skills"] .service-signature-nodes li:nth-child(4) { border-radius:56% 44% 38% 62%; }

/* Behavior support: a linear assessment-to-plan pathway, not a decorative cycle. */
[data-service-slug="behavior-support"] .service-signature-canvas { padding-right:190px; background:linear-gradient(145deg,#fff8f4,#f6ebe8); }
[data-service-slug="behavior-support"] .service-signature-canvas::before { left:88px; top:80px; bottom:80px; width:2px; background:linear-gradient(var(--service-accent),var(--service-mid)); }
[data-service-slug="behavior-support"] .service-signature-canvas::after { display:none; }
[data-service-slug="behavior-support"] .service-signature-core { left:auto; right:28px; width:138px; height:138px; transform:translateY(-50%); clip-path:polygon(25% 7%,75% 7%,100% 50%,75% 93%,25% 93%,0 50%); }
[data-service-slug="behavior-support"] .service-signature-core::after { display:none; }
[data-service-slug="behavior-support"] .service-signature-nodes { min-height:526px; grid-template-columns:1fr; gap:12px; }
[data-service-slug="behavior-support"] .service-signature-nodes li { min-height:119px; padding:18px 20px 18px 82px; align-items:flex-start; text-align:left; }
[data-service-slug="behavior-support"] .service-signature-nodes li > i { position:absolute; left:24px; margin:0; }
[data-service-slug="behavior-support"] .service-signature-nodes li > span { left:auto; right:17px; }

/* Shadow teacher: support rises toward independence and becomes visually lighter. */
[data-service-slug="shadow-teacher"] .service-signature-canvas { background:linear-gradient(150deg,#f6f8fa,#eaf1f1); }
[data-service-slug="shadow-teacher"] .service-signature-canvas::before { left:35px; right:35px; bottom:72px; height:4px; border-radius:3px; background:linear-gradient(100deg,var(--service-mid),var(--service-accent)); transform:rotate(-29deg); transform-origin:center; }
[data-service-slug="shadow-teacher"] .service-signature-canvas::after { display:none; }
[data-service-slug="shadow-teacher"] .service-signature-core { left:auto; right:42px; top:36px; width:130px; height:130px; transform:none; }
[data-service-slug="shadow-teacher"] .service-signature-nodes { grid-template-columns:repeat(4,1fr); gap:12px; align-items:end; }
[data-service-slug="shadow-teacher"] .service-signature-nodes li { padding-inline:9px; }
[data-service-slug="shadow-teacher"] .service-signature-nodes li:nth-child(1) { min-height:170px; background:color-mix(in srgb,var(--service-mid) 17%,white); }.service-detail-page-v2[data-service-slug="shadow-teacher"] .service-signature-nodes li:nth-child(2) { min-height:235px; background:color-mix(in srgb,var(--service-mid) 12%,white); }.service-detail-page-v2[data-service-slug="shadow-teacher"] .service-signature-nodes li:nth-child(3) { min-height:300px; background:color-mix(in srgb,var(--service-mid) 7%,white); }.service-detail-page-v2[data-service-slug="shadow-teacher"] .service-signature-nodes li:nth-child(4) { min-height:365px; background:#fff; }

[data-service-slug="speech-therapy"] .service-domains::before { content:"VOICE"; }
[data-service-slug="occupational-therapy"] .service-domains::before { content:"DOING"; }
[data-service-slug="aba-therapy"] .service-domains::before { content:"LEARNING"; }
[data-service-slug="academic-support"] .service-domains::before { content:"KNOWLEDGE"; }
[data-service-slug="developmental-skills"] .service-domains::before { content:"GROWTH"; }
[data-service-slug="behavior-support"] .service-domains::before { content:"FUNCTION"; }
[data-service-slug="shadow-teacher"] .service-domains::before { content:"BELONGING"; }
html[dir="rtl"] [data-service-slug="speech-therapy"] .service-domains::before { content:"تواصل"; }
html[dir="rtl"] [data-service-slug="occupational-therapy"] .service-domains::before { content:"مشاركة"; }
html[dir="rtl"] [data-service-slug="aba-therapy"] .service-domains::before { content:"تعلّم"; }
html[dir="rtl"] [data-service-slug="academic-support"] .service-domains::before { content:"معرفة"; }
html[dir="rtl"] [data-service-slug="developmental-skills"] .service-domains::before { content:"نمو"; }
html[dir="rtl"] [data-service-slug="behavior-support"] .service-domains::before { content:"وظيفة"; }
html[dir="rtl"] [data-service-slug="shadow-teacher"] .service-domains::before { content:"استقلال"; }

@keyframes serviceSignaturePulse { 0%,100% { opacity:.42; transform:scale(.96); } 50% { opacity:1; transform:scale(1.04); } }

.service-domains { position:relative; padding:145px 0 155px; overflow:hidden; color:#fff; background:radial-gradient(circle at 88% 8%,rgba(255,255,255,.11),transparent 26%),radial-gradient(circle at 6% 92%,rgba(240,180,109,.11),transparent 25%),var(--service-deep); isolation:isolate; }
.service-domains::before { content:"ABILITIES"; position:absolute; right:-30px; bottom:-38px; z-index:-1; color:rgba(255,255,255,.025); font:800 clamp(115px,17vw,250px)/.75 "Manrope",sans-serif; letter-spacing:-.1em; pointer-events:none; }
.service-domains::after { content:""; position:absolute; inset:0; z-index:-2; opacity:.28; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:76px 76px; mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent); }
.service-domains-orbit { position:absolute; top:68px; right:5vw; z-index:-1; width:310px; height:310px; border:1px solid rgba(255,255,255,.09); border-radius:50%; }
.service-domains-orbit::before,.service-domains-orbit::after { content:""; position:absolute; border:1px solid rgba(240,180,109,.2); border-radius:50%; }
.service-domains-orbit::before { inset:51px; }.service-domains-orbit::after { inset:111px; background:rgba(255,255,255,.035); }
.service-domains-orbit i { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--service-accent); box-shadow:0 0 20px rgba(240,180,109,.78); }
.service-domains-orbit i:nth-child(1) { top:31px; left:72px; }.service-domains-orbit i:nth-child(2) { right:22px; bottom:96px; }.service-domains-orbit i:nth-child(3) { left:84px; bottom:43px; width:5px; height:5px; background:var(--service-cool); }
.service-domains-heading { position:relative; z-index:1; display:grid; grid-template-columns:.66fr 1.34fr; gap:70px; margin-bottom:76px; align-items:end; }
.service-domains-heading .section-kicker { color:var(--service-accent); }
.service-domains-heading h2 { margin:0; color:#fff; font:650 clamp(48px,5vw,72px)/.98 "Manrope",sans-serif; letter-spacing:-.06em; }
.service-domains-heading h2 em { color:var(--service-accent); font:600 italic 1.04em/.92 "Cormorant Garamond",serif; }
.service-domains-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.service-domain { position:relative; grid-column:span 4; min-height:305px; padding:28px 30px; overflow:hidden; color:#fff; border:1px solid rgba(255,255,255,.13); border-radius:24px; background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.035)); box-shadow:0 24px 65px rgba(6,14,24,.18); backdrop-filter:blur(6px); transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s,background .35s,box-shadow .45s; }
.service-domain:nth-child(1) { grid-column:span 5; }.service-domain:nth-child(2) { grid-column:span 3; }.service-domain:nth-child(3) { grid-column:span 4; }.service-domain:nth-child(4) { grid-column:span 7; min-height:275px; }.service-domain:nth-child(5) { grid-column:span 5; min-height:275px; }
.service-domain::before { content:""; position:absolute; width:215px; height:215px; right:-112px; bottom:-118px; border:44px solid rgba(255,255,255,.045); border-radius:50%; transition:transform .7s,border-color .35s; }
.service-domain-top { display:flex; align-items:center; justify-content:space-between; }
.service-domain-top span { display:grid; width:46px; height:46px; place-items:center; color:var(--service-deep); border-radius:50%; background:var(--service-accent); box-shadow:0 10px 28px rgba(0,0,0,.12); font:800 10px "Manrope",sans-serif; letter-spacing:.1em; }
.service-domain-top i { display:grid; width:53px; height:53px; place-items:center; color:var(--service-cool); border:1px solid rgba(255,255,255,.21); border-radius:50%; font-size:20px; }
.service-domain h3 { position:absolute; left:30px; right:75px; bottom:38px; margin:0; color:#fff; font:650 clamp(20px,1.65vw,27px)/1.2 "Manrope",sans-serif; letter-spacing:-.045em; }
.service-domain > b { position:absolute; right:30px; bottom:39px; width:22px; height:22px; border-right:1px solid rgba(255,255,255,.44); border-bottom:1px solid rgba(255,255,255,.44); }
.service-domain:hover { z-index:2; border-color:var(--service-accent); background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.055)); box-shadow:0 34px 80px rgba(4,15,25,.3); transform:translateY(-8px); }
.service-domain:hover::before { border-color:rgba(240,180,109,.12); transform:scale(1.14); }

.service-session { position:relative; padding:145px 0 155px; overflow:hidden; background:radial-gradient(circle at 90% 8%,rgba(121,199,192,.12),transparent 25%),linear-gradient(180deg,#faf6ef,var(--service-paper)); }
.service-session::before { content:"01  ·  02  ·  03  ·  04"; position:absolute; left:-24px; bottom:-22px; color:rgba(53,56,68,.045); font:800 clamp(72px,10vw,145px)/.8 "Manrope",sans-serif; letter-spacing:-.07em; white-space:nowrap; }
.service-session-heading { display:grid; grid-template-columns:1.2fr .8fr; gap:90px; margin-bottom:76px; align-items:end; }
.service-session-heading h2 { margin:20px 0 0; color:#282532; font-size:clamp(48px,5vw,70px); line-height:.98; letter-spacing:-.065em; }
.service-session-heading h2 em { color:var(--service-mid); font-family:"Cormorant Garamond",serif; }
.service-session-heading > p { margin:0; color:#6d6872; font-size:15px; line-height:1.8; }
.service-session-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:42px; align-items:stretch; }
.service-session-mark { position:relative; display:flex; min-height:560px; padding:38px; overflow:hidden; flex-direction:column; justify-content:space-between; color:#fff; border-radius:28px; background:linear-gradient(155deg,var(--service-mid),var(--service-deep)); box-shadow:0 32px 90px rgba(29,25,39,.2); isolation:isolate; }
.service-session-mark::before { content:""; position:absolute; width:360px; height:360px; right:-175px; top:-170px; z-index:-1; border:70px solid rgba(255,255,255,.075); border-radius:50%; }
.service-session-mark::after { content:""; position:absolute; inset:auto 0 0; z-index:-2; height:45%; background:linear-gradient(0deg,rgba(0,0,0,.18),transparent); }
.service-session-mark small { color:var(--service-accent); font:800 10px "Manrope",sans-serif; letter-spacing:.16em; }
.service-session-mark > i { display:grid; width:88px; height:88px; place-items:center; align-self:center; color:var(--service-cool); border:1px solid rgba(255,255,255,.25); border-radius:50%; font-size:35px; box-shadow:0 0 0 18px rgba(255,255,255,.035); }
.service-session-mark strong { max-width:360px; color:#fff; font:650 clamp(33px,3.5vw,51px)/.96 "Manrope",sans-serif; letter-spacing:-.06em; }
.service-session-mark > span { position:absolute; width:90px; height:90px; right:31px; bottom:27px; border:20px solid var(--service-accent); border-radius:50%; opacity:.78; }
.service-session-steps { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin:0; padding:0; list-style:none; }
.service-session-steps li { position:relative; min-height:270px; padding:26px 27px 30px; overflow:hidden; border:1px solid rgba(52,39,58,.11); border-radius:24px; background:rgba(255,255,255,.68); box-shadow:0 18px 50px rgba(48,35,48,.06); transition:transform .4s,border-color .35s,box-shadow .4s; }
.service-session-steps li::after { content:""; position:absolute; width:160px; height:160px; right:-105px; bottom:-105px; border:28px solid rgba(84,32,102,.045); border-radius:50%; }
.service-session-node { display:flex; align-items:center; justify-content:space-between; }
.service-session-node span { color:var(--service-mid); font:800 10px "Manrope",sans-serif; letter-spacing:.12em; }
.service-session-node i { display:grid; width:48px; height:48px; place-items:center; color:#fff; border-radius:50%; background:var(--service-mid); font-size:18px; box-shadow:0 11px 25px rgba(42,25,51,.16); }
.service-session-steps p { position:absolute; left:27px; right:27px; bottom:28px; margin:0; color:#38333e; font-size:15px; font-weight:600; line-height:1.55; }
.service-session-steps li:hover { border-color:rgba(84,32,102,.3); box-shadow:0 26px 62px rgba(48,35,48,.11); transform:translateY(-6px); }

.service-fit-v2 { position:relative; padding:145px 0; overflow:hidden; background:#efe4d6; }
.service-fit-v2::before { content:"WHO"; position:absolute; left:-23px; top:-42px; color:rgba(70,42,76,.055); font:800 clamp(140px,20vw,290px)/1 "Manrope",sans-serif; letter-spacing:-.1em; }
.service-fit-v2-grid { position:relative; display:grid; grid-template-columns:.78fr 1.22fr; gap:105px; align-items:center; }
.service-fit-v2-art { position:relative; display:flex; min-height:510px; padding:42px; overflow:hidden; flex-direction:column; justify-content:space-between; color:#fff; border-radius:2px 105px 2px 2px; background:linear-gradient(145deg,var(--service-mid),var(--service-deep)); box-shadow:0 32px 90px rgba(44,27,48,.2); }
.service-fit-v2-art::before { content:""; position:absolute; width:250px; height:250px; right:-95px; top:-95px; border:46px solid rgba(255,255,255,.07); border-radius:50%; }
.service-fit-v2-art > span { color:var(--service-accent); font:800 10px "Manrope",sans-serif; letter-spacing:.16em; }
.service-fit-v2-art strong { position:relative; z-index:1; color:#fff; font:650 clamp(41px,4vw,58px)/.98 "Manrope",sans-serif; letter-spacing:-.065em; }
.service-fit-v2-art strong em { color:var(--service-accent); font-family:"Cormorant Garamond",serif; }
.service-fit-v2-art > i { position:absolute; width:130px; height:130px; right:-29px; bottom:-32px; border:25px solid var(--service-accent); border-radius:50%; }
.service-fit-v2-copy h2 { margin:20px 0 28px; color:#292530; font-size:clamp(45px,4.6vw,66px); line-height:1.02; letter-spacing:-.065em; }
.service-fit-v2-copy h2 em { color:var(--service-mid); font-family:"Cormorant Garamond",serif; }
.service-fit-v2-copy > p { color:#66606a; font-size:17px; line-height:1.85; }

.service-progress { position:relative; padding:145px 0 155px; overflow:hidden; color:#fff; background:linear-gradient(145deg,var(--service-deep),#102f35); isolation:isolate; }
.service-progress::before { content:"PROGRESS"; position:absolute; right:-32px; top:-30px; z-index:-1; color:rgba(255,255,255,.025); font:800 clamp(110px,16vw,235px)/1 "Manrope",sans-serif; letter-spacing:-.1em; }
.service-progress::after { content:""; position:absolute; width:520px; height:520px; left:-330px; bottom:-300px; z-index:-1; border:85px solid rgba(255,255,255,.035); border-radius:50%; }
.service-progress-heading { display:grid; grid-template-columns:.58fr 1.05fr .72fr; gap:55px; margin-bottom:70px; align-items:end; }
.service-progress-heading .section-kicker { color:var(--service-accent); }
.service-progress-heading h2 { margin:0; color:#fff; font-size:clamp(43px,4.6vw,66px); line-height:1; letter-spacing:-.06em; }
.service-progress-heading h2 em { color:var(--service-accent); font-family:"Cormorant Garamond",serif; }
.service-progress-heading > p { margin:0; color:rgba(255,255,255,.68); font-size:13px; line-height:1.75; }
.service-progress-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.service-progress-card { position:relative; min-height:285px; padding:26px; overflow:hidden; border:1px solid rgba(255,255,255,.13); border-radius:22px; background:rgba(255,255,255,.055); transition:transform .4s,border-color .35s,background .35s; }
.service-progress-card > span { color:var(--service-accent); font:800 10px "Manrope",sans-serif; letter-spacing:.13em; }
.service-progress-card > p { position:absolute; left:26px; right:26px; bottom:30px; margin:0; color:#fff; font-size:17px; font-weight:600; line-height:1.55; }
.service-progress-card > i { position:absolute; width:100px; height:100px; right:-55px; top:-58px; border:19px solid rgba(255,255,255,.06); border-radius:50%; }
.service-progress-card:hover { border-color:var(--service-accent); background:rgba(255,255,255,.09); transform:translateY(-7px); }
.service-partnership { display:grid; grid-template-columns:1fr 1fr; gap:85px; margin-top:30px; padding:48px 52px; align-items:center; border:1px solid rgba(255,255,255,.14); border-radius:25px; background:linear-gradient(120deg,rgba(255,255,255,.1),rgba(255,255,255,.04)); }
.service-partnership small { color:var(--service-cool); font:800 9px "Manrope",sans-serif; letter-spacing:.15em; }
.service-partnership h3 { margin:13px 0 0; color:#fff; font-size:clamp(28px,3vw,42px); line-height:1.08; letter-spacing:-.055em; }
.service-partnership p { margin:0; color:rgba(255,255,255,.75); font-size:15px; line-height:1.8; }
.service-partnership a { display:inline-flex; margin-top:20px; gap:10px; color:var(--service-accent); font-size:11px; font-weight:800; text-decoration:none; }
.service-clinical-note { padding:30px 0; color:#e4f2f0; background:#0d292d; }
.service-clinical-note .container { display:flex; max-width:1000px; align-items:center; gap:20px; }
.service-clinical-note span { display:grid; width:44px; height:44px; flex:0 0 auto; place-items:center; color:#172f34; border-radius:50%; background:var(--service-accent); }
.service-clinical-note p { margin:0; color:rgba(255,255,255,.72); font-size:12px; line-height:1.7; }.service-clinical-note strong { color:#fff; }

html[dir="rtl"] .service-domain h3 { left:75px; right:30px; }
html[dir="rtl"] .service-domain > b { right:auto; left:30px; transform:rotate(90deg); }
html[dir="rtl"] .service-domain::before,html[dir="rtl"] .service-session-steps li::after { right:auto; left:-112px; }
html[dir="rtl"] .service-session-steps p,html[dir="rtl"] .service-progress-card > p { text-align:right; }
html[dir="rtl"] .service-fit-v2::before { left:auto; right:-23px; }
html[dir="rtl"] .service-fit-v2-art { border-radius:105px 2px 2px 2px; }
html[dir="rtl"] .service-fit-v2-art > i { right:auto; left:-29px; }
html[dir="rtl"] .service-progress::before { right:auto; left:-32px; }
html[dir="rtl"] .service-session-heading h2,html[dir="rtl"] .service-domains-heading h2,html[dir="rtl"] .service-fit-v2-copy h2,html[dir="rtl"] .service-progress-heading h2 { line-height:1.18; letter-spacing:-.035em; }
html[dir="rtl"] .service-signature-copy h2 { line-height:1.2; letter-spacing:-.03em; }
html[dir="rtl"] .service-signature-nodes li > span { left:auto; right:17px; }
html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-canvas { padding-right:42px; padding-left:190px; }
html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-core { right:auto; left:28px; }
html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-nodes li { padding:18px 82px 18px 20px; align-items:flex-start; text-align:right; }
html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-nodes li > i { left:auto; right:24px; }
html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-nodes li > span { right:auto; left:17px; }

@media (max-width:950px) {
  .service-domains-heading,.service-session-heading,.service-progress-heading { grid-template-columns:1fr; gap:28px; }
  .service-signature-grid { grid-template-columns:1fr; gap:55px; }
  .service-signature-copy > p:last-child { max-width:760px; }
  .service-session-layout,.service-fit-v2-grid { grid-template-columns:1fr; gap:45px; }
  .service-session-mark { min-height:430px; }.service-progress-heading > p { max-width:650px; }
  .service-progress-grid { grid-template-columns:repeat(2,1fr); }.service-partnership { gap:45px; }
}
@media (max-width:700px) {
  .service-signature,.service-domains,.service-session,.service-fit-v2,.service-progress { padding:90px 0; }
  .service-signature-copy h2 { font-size:clamp(40px,11vw,51px); }
  .service-signature-canvas { min-height:auto; padding:24px; border-radius:24px; }
  .service-signature-core { position:relative; left:auto; top:auto; width:122px; height:122px; margin:0 auto 24px; transform:none; }
  .service-signature-nodes { min-height:0; grid-template-columns:1fr; gap:12px; }
  .service-signature-nodes li { min-height:145px!important; border-radius:20px!important; }
  [data-service-slug="academic-support"] .service-signature-core,[data-service-slug="shadow-teacher"] .service-signature-core,[data-service-slug="behavior-support"] .service-signature-core { left:auto; right:auto; top:auto; width:122px; height:122px; transform:none; clip-path:none; }
  [data-service-slug="academic-support"] .service-signature-nodes,[data-service-slug="shadow-teacher"] .service-signature-nodes { grid-template-columns:1fr; }
  [data-service-slug="behavior-support"] .service-signature-canvas,html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-canvas { padding:24px; }
  [data-service-slug="behavior-support"] .service-signature-nodes li,html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-nodes li { padding:20px; align-items:center; text-align:center; }
  [data-service-slug="behavior-support"] .service-signature-nodes li > i,html[dir="rtl"] [data-service-slug="behavior-support"] .service-signature-nodes li > i { position:static; margin-bottom:12px; }
  .service-domains-orbit { top:35px; right:-115px; }
  .service-domains-heading { margin-bottom:48px; }.service-domains-heading h2,.service-session-heading h2,.service-fit-v2-copy h2,.service-progress-heading h2 { font-size:clamp(40px,11vw,51px); }
  .service-domains-grid { grid-template-columns:1fr; }.service-domain,.service-domain:nth-child(n) { grid-column:auto; min-height:220px; }.service-domain h3 { bottom:29px; }
  .service-session-heading { margin-bottom:45px; }.service-session-layout { gap:28px; }.service-session-mark { min-height:390px; padding:31px; }.service-session-steps { grid-template-columns:1fr; }.service-session-steps li { min-height:225px; }
  .service-fit-v2-grid { gap:48px; }.service-fit-v2-art { min-height:400px; padding:32px; border-radius:2px 70px 2px 2px; }.service-fit-v2-art strong { font-size:41px; }
  .service-progress-heading { margin-bottom:45px; }.service-progress-grid { grid-template-columns:1fr; }.service-progress-card { min-height:210px; }.service-partnership { grid-template-columns:1fr; gap:26px; padding:34px 28px; }
  .service-clinical-note .container { align-items:flex-start; }
  html[dir="rtl"] .service-fit-v2-art { border-radius:70px 2px 2px 2px; }
}
@media (prefers-reduced-motion:reduce) {
  .service-signature-core::after { animation:none; }
  .service-signature-nodes li,.service-domain,.service-session-steps li,.service-progress-card { transition:none; }
  .service-signature-nodes li:hover { transform:none; }
  .service-domain:hover,.service-session-steps li:hover,.service-progress-card:hover { transform:none; }
}

/* Article infographic grammar — selected per article in the owner dashboard. */
.article-visual-explainer.style-pathway .article-visual-steps { grid-template-columns:1fr; gap:12px; }
.article-visual-explainer.style-pathway .article-visual-steps::before { left:48px; top:40px; bottom:40px; width:2px; height:auto; border:0; border-radius:0; background:linear-gradient(#efb66f,var(--article-accent)); transform:none; }
.article-visual-explainer.style-pathway .article-visual-steps li { min-height:112px; padding:22px 24px 22px 86px; justify-content:center; }
.article-visual-explainer.style-pathway .article-visual-steps li > i { position:absolute; left:25px; top:50%; transform:translateY(-50%); }
.article-visual-explainer.style-pathway .article-visual-steps li > span { position:absolute; right:20px; top:17px; }
.article-visual-explainer.style-orbit .article-visual-steps::before { width:64%; height:64%; border-style:solid; }
.article-visual-explainer.style-orbit .article-visual-steps li { border-radius:48% 52% 46% 54%; }
.article-visual-explainer.style-orbit .article-visual-steps li:nth-child(2),.article-visual-explainer.style-orbit .article-visual-steps li:nth-child(3) { border-radius:56% 44% 58% 42%; }
.article-visual-explainer.style-cycle .article-visual-steps { transform:rotate(4deg); }
.article-visual-explainer.style-cycle .article-visual-steps li { border-radius:50%; transform:rotate(-4deg); }
.article-visual-explainer.style-cycle .article-visual-steps li:nth-child(even) { transform:rotate(-4deg) translateY(18px); }
.article-visual-explainer.style-cycle .article-visual-steps::before { width:72%; height:72%; border:3px double rgba(239,182,111,.32); }
.article-visual-explainer.style-ladder .article-visual-steps { grid-template-columns:repeat(4,1fr); gap:11px; align-items:end; }
.article-visual-explainer.style-ladder .article-visual-steps::before { left:5%; top:auto; bottom:38%; width:90%; height:3px; border:0; border-radius:2px; background:linear-gradient(90deg,var(--article-accent),#efb66f); transform:rotate(-16deg); }
.article-visual-explainer.style-ladder .article-visual-steps li { padding:18px; }
.article-visual-explainer.style-ladder .article-visual-steps li:nth-child(1) { min-height:190px; }.article-visual-explainer.style-ladder .article-visual-steps li:nth-child(2) { min-height:245px; }.article-visual-explainer.style-ladder .article-visual-steps li:nth-child(3) { min-height:300px; }.article-visual-explainer.style-ladder .article-visual-steps li:nth-child(4) { min-height:355px; }
.article-visual-explainer.style-comparison .article-visual-steps::before { width:2px; height:88%; border:0; border-radius:0; background:linear-gradient(transparent,#efb66f 18%,#efb66f 82%,transparent); transform:translate(-50%,-50%); }
.article-visual-explainer.style-comparison .article-visual-steps li:nth-child(odd) { border-radius:26px 6px 26px 26px; }.article-visual-explainer.style-comparison .article-visual-steps li:nth-child(even) { border-radius:6px 26px 26px 26px; }
.article-visual-explainer.style-target .article-visual-steps::before { width:76%; height:76%; border:34px solid rgba(239,182,111,.09); box-shadow:0 0 0 34px rgba(255,255,255,.025); }
.article-visual-explainer.style-target .article-visual-steps li { border-radius:12px; }
.article-visual-explainer.style-target .article-visual-steps li:nth-child(1),.article-visual-explainer.style-target .article-visual-steps li:nth-child(4) { transform:translateX(18px); }.article-visual-explainer.style-target .article-visual-steps li:nth-child(2),.article-visual-explainer.style-target .article-visual-steps li:nth-child(3) { transform:translateX(-18px); }
html[dir="rtl"] .article-visual-explainer.style-pathway .article-visual-steps li { padding:22px 86px 22px 24px; }
html[dir="rtl"] .article-visual-explainer.style-pathway .article-visual-steps li > i { left:auto; right:25px; }
html[dir="rtl"] .article-visual-explainer.style-pathway .article-visual-steps li > span { right:auto; left:20px; }
html[dir="rtl"] .article-visual-explainer.style-pathway .article-visual-steps::before { left:auto; right:48px; }
@media (max-width:760px) {
  .article-visual-explainer.style-ladder .article-visual-steps { grid-template-columns:1fr; }.article-visual-explainer.style-ladder .article-visual-steps li { min-height:180px!important; }.article-visual-explainer.style-ladder .article-visual-steps::before { display:none; }
  .article-visual-explainer.style-cycle .article-visual-steps,.article-visual-explainer.style-cycle .article-visual-steps li,.article-visual-explainer.style-cycle .article-visual-steps li:nth-child(even),.article-visual-explainer.style-target .article-visual-steps li:nth-child(n) { transform:none; }
  .article-visual-explainer.style-cycle .article-visual-steps li,.article-visual-explainer.style-orbit .article-visual-steps li,.article-visual-explainer.style-comparison .article-visual-steps li { border-radius:22px; }
  .article-visual-explainer.style-pathway .article-visual-steps li,html[dir="rtl"] .article-visual-explainer.style-pathway .article-visual-steps li { min-height:145px; padding:24px; }
  .article-visual-explainer.style-pathway .article-visual-steps li > i,html[dir="rtl"] .article-visual-explainer.style-pathway .article-visual-steps li > i { position:static; transform:none; }
  .article-visual-explainer.style-pathway .article-visual-steps::before { display:none; }
}
.service-hero-thought.cms-managed + .service-hero-thought{display:none!important}
.service-signature-managed~.section-kicker,.service-signature-managed~h2,.service-signature-managed~p{display:none!important}
.service-signature-managed-canvas~.service-signature-core,.service-signature-managed-canvas~.service-signature-nodes{display:none!important}
.service-signature-managed-canvas{display:contents}
