/* Corporate learning: one principle, two formats, concrete results. */
body[data-page="learn"] { --blue:#344ce8; --orange:#fac581; background:var(--cream,#fbf1df); color:var(--ink,#293066); }
[data-page="learn"] h1, [data-page="learn"] h2, [data-page="learn"] h3, [data-page="learn"] p { margin:0; }
[data-page="learn"] .site-nav [aria-current="page"] { color:var(--blue); }
[data-page="learn"] main.page-shell { padding:0 24px 28px; }
.learn-contact-link { display:inline-flex; gap:12px; align-items:center; text-decoration:none; font-size:14px; }
.learn-contact-link:hover { text-decoration:underline; }
.learn-hero { display:grid; grid-template-columns:1.2fr .85fr; align-items:center; gap:48px; min-height:510px; padding:52px 64px; overflow:hidden; border:1px solid #fff9; border-radius:28px; background:var(--orange); box-shadow:inset 0 2px 1px #fff7,0 5px 0 #d5a974; }
.learn-hero-copy { position:relative; z-index:2; min-width:0; }
.learn-hero .eyebrow { color:#6d5540; font-size:12px; letter-spacing:.035em; }
.learn-hero h1 { color:var(--blue); font-size:clamp(48px,5.4vw,78px); font-weight:400; letter-spacing:-.065em; line-height:1.05; padding:26px 0; }
.learn-lead { max-width:465px; font-size:clamp(17px,1.55vw,21px); line-height:1.5; letter-spacing:-.015em; }
.learn-machine { position:relative; width:100%; max-width:370px; justify-self:center; padding:0 0 33px; transform:rotate(4deg); }
.machine-case { position:relative; z-index:1; background:#4159ed; border:1px solid #8ea1ff; border-radius:27px; padding:19px; box-shadow:inset 3px 4px 2px #8090ff,inset -4px -5px 2px #2039b5,0 10px 0 #2439b4,12px 20px 25px #b3764f30; }
.machine-top { display:flex; align-items:center; gap:9px; margin:1px 5px 16px; color:#f9f0df; font:10px var(--mono,monospace); letter-spacing:.06em; }
.machine-top > :last-child { margin-left:auto; font-size:16px; }
.machine-led { width:8px; height:8px; border:1px solid #ffeece; border-radius:50%; background:#fbd390; box-shadow:0 0 8px #ffdd8e; }
.machine-screen { position:relative; min-height:239px; padding:48px 18px 18px; overflow:hidden; border:7px solid #293dba; border-radius:15px; background:#f9f0df; box-shadow:inset 1px 3px 5px #35467145; }
.screen-bar { position:absolute; top:0; left:0; right:0; display:flex; justify-content:space-between; padding:9px 12px; border-bottom:1px solid #29306626; background:#dce1fa; font:10px var(--mono,monospace); }
.screen-object { position:relative; width:138px; height:59px; margin:0 auto 12px; }
.object-spark { position:absolute; top:-11px; left:0; display:block; font-size:76px; line-height:1; color:var(--blue); transform:rotate(-12deg); }
.object-square { position:absolute; right:28px; top:3px; height:39px; width:39px; border-radius:8px; background:var(--orange); transform:rotate(13deg); box-shadow:inset 2px 3px 2px #ffe6bb,2px 4px 0 #d59d63; }
.object-circle { position:absolute; right:0; top:26px; width:26px; height:26px; border:6px solid #c5b6ee; border-radius:50%; box-shadow:1px 2px 0 #9d89cb; }
.machine-screen > p { text-align:center; font-size:37px; line-height:1.1; letter-spacing:-.055em; }
.screen-status { display:flex; align-items:center; justify-content:center; gap:7px; margin-top:18px; padding:9px 4px; border-radius:9px; background:#e0e5f9; font-size:11px; }
.screen-status > span { color:var(--blue); }
.machine-controls { display:flex; align-items:center; justify-content:space-between; margin-top:16px; padding:0 5px; }
.machine-vents { display:flex; gap:5px; }
.machine-vents i { display:block; height:19px; width:4px; border-radius:5px; background:#2238b6; box-shadow:1px 1px 0 #7b8df5; }
.machine-key { display:grid; place-items:center; width:56px; height:36px; border-radius:10px; background:var(--orange); font-size:27px; box-shadow:inset 1px 2px 2px #fff0cf,0 4px 0 #c78d4b; }
.machine-foot { position:absolute; bottom:6px; left:19%; width:62%; height:40px; border-radius:20% 20% 12px 12px; background:var(--blue); transform:skewX(-5deg); box-shadow:inset 2px 2px 2px #6b80f4,0 5px 0 #263bbb; }
.machine-cable { position:absolute; top:30%; left:-28px; width:65px; height:115px; border:9px solid var(--blue); border-radius:37px; }
.learn-formats, .learn-proof { padding:68px 40px 0; }
.learn-formats h2, .learn-proof h2 { margin-bottom:25px; font-size:clamp(31px,3.5vw,46px); line-height:1.1; letter-spacing:-.055em; }
.format-grid, .proof-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.format-card { padding:28px 32px; border:1px solid #fff; border-radius:23px; background:#e0e4fa; box-shadow:inset 0 2px 1px #fff9,0 4px 0 #bdc5e2; }
.format-workshop { background:#eee4f8; box-shadow:inset 0 2px 1px #fff9,0 4px 0 #cfc0df; }
.format-top { display:flex; align-items:center; justify-content:space-between; height:49px; margin-bottom:27px; color:#676d91; font-size:13px; }
.format-symbol { display:grid; place-items:center; width:48px; height:46px; border:1px solid #93a0ff; border-radius:12px; background:var(--blue); color:#fff6df; font-size:32px; line-height:1; transform:rotate(-6deg); box-shadow:inset 1px 2px 1px #94a0ff,0 4px 0 #2639ac; }
.format-workshop .format-symbol { color:#293066; background:var(--orange); border-color:#ffe3b9; transform:rotate(7deg); box-shadow:inset 1px 2px 1px #fff0cf,0 4px 0 #d4a064; }
.format-card h3 { font-size:clamp(27px,2.6vw,36px); line-height:1.1; letter-spacing:-.05em; }
.format-card > p { margin-top:15px; max-width:440px; font-size:16px; line-height:1.5; }
.format-result { display:flex; align-items:center; gap:12px; margin-top:25px; padding-top:18px; border-top:1px solid #29306622; font-size:15px; color:var(--blue); }
.format-result > span { font-size:24px; line-height:1; }
.learn-proof { padding-top:58px; }
.proof-card { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:25px 20px; padding:28px 32px; border:1px solid #e5dccd; border-radius:21px; }
.proof-card .client-logo { width:150px; height:30px; object-fit:contain; object-position:left center; }
.proof-alfa .client-logo { width:158px; height:32px; }
.proof-metric { width:100%; display:flex; align-items:center; gap:22px; }
.proof-metric strong { font-size:76px; line-height:1; font-weight:400; letter-spacing:-.075em; color:var(--blue); }
.proof-metric > span { font-size:19px; line-height:1.25; }
.proof-card .text-link { font-size:12px; opacity:.75; }
.learn-contact { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-top:65px; padding:40px; border:1px solid #7d8cf5; border-radius:25px; background:var(--blue); color:#fbf1df; box-shadow:inset 0 2px 1px #7487fb,0 4px 0 #2537b4; scroll-margin-top:24px; }
.learn-contact h2 { max-width:620px; font-size:clamp(29px,3.2vw,43px); line-height:1.15; letter-spacing:-.05em; }
.learn-contact p { margin-top:12px; font-size:16px; color:#dfe4ff; }
.learn-contact .button { flex-shrink:0; }
@media(min-width:1440px) { .learn-hero { grid-template-columns:1.25fr .85fr; } }
@media(max-width:1050px) {
  .learn-hero { min-height:460px; padding:40px; gap:32px; grid-template-columns:1.15fr .85fr; }
  .learn-hero h1 { font-size:clamp(48px,5.7vw,65px); }
  .machine-case { padding:14px; }
  .machine-screen { border-width:5px; padding:46px 10px 16px; min-height:231px; }
  .machine-screen > p { font-size:32px; }
  .screen-status { font-size:10px; }
  .learn-formats, .learn-proof { padding-left:16px; padding-right:16px; }
  .format-card, .proof-card { padding:26px; }
  .learn-contact { padding:35px; }
}
@media(max-width:760px) {
  [data-page="learn"] main.page-shell { padding:0 14px 22px; }
  .learn-contact-link { margin-left:auto; font-size:13px; }
  .learn-hero { padding:32px 25px; gap:22px; grid-template-columns:1fr; }
  .learn-hero h1 { padding:23px 0 20px; font-size:clamp(42px,9.8vw,68px); max-width:560px; }
  .learn-lead { max-width:470px; font-size:17px; }
  .learn-machine { width:76%; max-width:285px; margin-top:10px; }
  .machine-screen { min-height:200px; padding:44px 10px 14px; }
  .machine-top { font-size:9px; margin-bottom:12px; }
  .machine-screen > p { font-size:31px; }
  .screen-object { transform:scale(.8); height:46px; margin-bottom:4px; }
  .screen-status { margin-top:13px; font-size:9px; }
  .machine-controls { margin-top:12px; }
  .machine-key { height:29px; width:47px; font-size:24px; }
  .learn-formats, .learn-proof { padding:45px 4px 0; }
  .learn-formats h2, .learn-proof h2 { margin-bottom:22px; }
  .format-grid, .proof-grid { grid-template-columns:1fr; gap:18px; }
  .format-card, .proof-card { padding:25px; }
  .format-top { margin-bottom:23px; }
  .format-card > p { max-width:none; }
  .proof-card { gap:22px; }
  .proof-metric strong { font-size:68px; }
  .proof-metric > span { font-size:18px; }
  .learn-contact { display:block; margin-top:45px; padding:29px 25px 33px; }
  .learn-contact h2 { font-size:33px; }
  .learn-contact p { font-size:15px; }
  .learn-contact .button { margin-top:25px; }
}
@media(max-width:360px) {
  .learn-hero { padding:27px 20px; }
  .learn-hero h1 { font-size:39px; }
  .learn-machine { width:91%; }
  .format-card, .proof-card { padding:23px; }
  .proof-metric { gap:15px; }
  .proof-metric strong { font-size:62px; }
  .proof-metric > span { font-size:16px; }
}

/* More context, within the same two-format layout. */
.learn-clients { padding:35px 40px 0; }
.learn-clients h2 { font-size:13px; font-weight:400; color:#686d86; letter-spacing:0; }
.learning-logo-list { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:center; gap:24px 34px; list-style:none; margin:24px 0 0; padding:0; }
.learning-logo-list li { display:flex; justify-content:center; align-items:center; min-width:0; height:48px; }
.learning-logo-list img { display:block; width:100%; max-width:158px; height:42px; object-fit:contain; }
.learning-brand-name { font-size:clamp(21px,2.1vw,29px); font-weight:600; letter-spacing:-.055em; }
.learn-formats .formats-intro { max-width:630px; margin:-10px 0 27px; font-size:16px; line-height:1.5; color:#686d86; }
.format-card { display:flex; flex-direction:column; }
.format-top { gap:14px; flex-shrink:0; }
.format-top > span:last-child:not(.format-symbol) { text-align:right; }
.format-details { display:grid; gap:17px; list-style:none; margin:25px 0 28px; padding:0; font-size:14px; line-height:1.5; }
.format-details li { position:relative; padding-left:19px; }
.format-details li::before { content:""; position:absolute; left:0; top:.53em; width:5px; height:5px; border-radius:50%; background:var(--blue); }
.format-details strong { font-weight:600; }
.format-result { margin-top:auto; min-height:49px; }
.proof-card { flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:24px; }
.proof-description { font-size:15px; line-height:1.55; }
.proof-description strong { font-weight:500; }
.proof-card .text-link { margin-top:auto; opacity:1; padding:12px 0; font-size:13px; }
.proof-publication { display:flex; align-items:center; gap:13px; width:100%; margin-top:auto; padding:14px 16px; border:1px solid #29306619; border-radius:14px; background:#f2e5d2; text-decoration:none; font-size:14px; line-height:1.3; transition:background .18s; }
.proof-publication:hover { background:var(--orange); }
.publication-mark { font-family:Georgia,serif; font-size:39px; line-height:1; }
.proof-publication small { display:block; margin-top:5px; font-size:11px; color:#686d86; }
.proof-publication > :last-child { margin-left:auto; font-size:21px; }
@media(max-width:1050px) { .learn-clients { padding-left:16px; padding-right:16px; }.learning-logo-list { gap:20px; } }
@media(max-width:760px) { .learn-clients { padding:32px 10px 0; }.learning-logo-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px 25px; }.learning-logo-list li { height:40px; }.learning-logo-list img { max-width:130px; height:35px; }.learn-formats .formats-intro { font-size:15px; margin-top:-9px; }.format-details { gap:16px; }.proof-publication { padding:13px; } }
@media(max-width:400px) { .learning-logo-list { gap:16px; }.proof-publication { font-size:13px; }.publication-mark { font-size:34px; } }
@media(prefers-reduced-motion:reduce) { .proof-publication { transition:none; } }

/* Allow the proof cards to reflow instead of squeezing their text on phones. */
@media(max-width:760px), (pointer:coarse) {
  .learn-contact-link { min-height:44px; }
}
@media(max-width:760px) {
  .proof-metric { flex-wrap:wrap; }
  .proof-publication > span:nth-child(2) { min-width:0; overflow-wrap:anywhere; }
  .proof-publication > span:first-child,
  .proof-publication > span:last-child { flex-shrink:0; }
}
