/* Original KLA introduction, followed by a full-width, softly revealed chapter bar. */
.about-page{overflow-x:clip;--about-section-space:clamp(60px,7vw,96px)}
.about-page .about{overflow:visible;z-index:3}
.about-page .about-approach-scene{width:var(--kla-viewport-width,100vw);margin-inline:calc((100% - var(--kla-viewport-width,100vw))/2)}
.about-overview-copy p+p{margin-top:22px}
.about-page .about-vision > h1:first-child{margin-top:0}
.about-page .about-origin{grid-template-areas:'date title' 'date body';grid-template-rows:auto 1fr;row-gap:clamp(38px,4.5vw,62px);padding-top:var(--about-section-space);padding-bottom:0}
.about-page .about-conclusion{padding-block:var(--about-section-space)}
.about-origin-heading{grid-area:title;max-width:790px}
.about-origin-heading h2{max-width:730px;margin-top:21px;font-size:clamp(37px,4vw,58px);line-height:1.15}
.about-page .about-origin > .about-date{grid-area:date}
.about-page .about-origin-copy{grid-area:body}
.about-page .about-origin-copy .about-prose{margin-top:0}
.about-page .about-prose .about-origin-lead{color:#102638;font-size:clamp(18px,1.65vw,23px);line-height:1.75}
.about-origin-lead strong{color:#87672f;font-weight:600}
.about-origin-copy .about-prose p strong{font-weight:600}
.about-origin-copy .about-prose p+p{margin-top:28px}
.about-page .about-origin-statement{margin:clamp(36px,4vw,52px) 0 28px;padding:0;border:0;font-size:clamp(28px,2.7vw,38px);line-height:1.3;font-weight:400;text-wrap:pretty}
.about-origin-statement em{display:block;margin-top:8px;color:#9f7b3c;font-family:'Instrument Serif',Georgia,serif;font-weight:400}
@media(max-width:600px){.about-origin-copy .about-prose p+p{margin-top:24px}.about-page .about-origin-statement{font-size:30px;margin-top:36px}}
@media(max-width:780px){.about-page .about-origin{grid-template-areas:'title' 'date' 'body';grid-template-rows:auto auto auto;row-gap:36px}}
@media(max-width:600px){.about-origin-heading h2{font-size:clamp(32px,9.4vw,41px)}}
.about-outlook + .about-manifest{margin-top:calc(var(--about-section-space)/2)}
.about-page .about-manifest{padding-top:calc(var(--about-section-space)/2);padding-bottom:0;border-bottom:0}
.about-page .about-manifest + .about-beliefs{padding-top:var(--about-section-space)}
.about-page .about-beliefs{padding-bottom:0}
/* Images stay inside the existing label/number area; the prose column and row padding are unchanged. */
.about-belief-list .about-value-visual{grid-column:1/3;position:relative;isolation:isolate;display:flex;align-items:flex-end;box-sizing:border-box;width:min(100%,380px);height:88px;min-width:0;padding:12px 18px;overflow:hidden;background:#102638;color:#fff;font-size:clamp(19px,1.7vw,24px);line-height:1.2;letter-spacing:.025em;font-weight:500;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.about-value-visual img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 28%}
.about-belief-list li:nth-child(2) .about-value-visual img{object-position:center top}
.about-value-visual:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,25,39,.68),rgba(8,25,39,.08)),linear-gradient(0deg,rgba(8,25,39,.5),transparent 80%);pointer-events:none}
.about-belief-list li>p{grid-column:3}
@media(max-width:780px){.about-belief-list li{grid-template-columns:minmax(0,1fr)}.about-belief-list .about-value-visual{grid-column:1;width:calc(100% - 65px);margin-inline:auto;height:29.6875px;padding:4px 10px;font-size:18px;line-height:1.2;letter-spacing:.025em}.about-belief-list li>p{grid-column:1;width:calc(100% - 65px);margin-inline:auto}.about-value-visual img{left:auto;width:110px;object-position:center 24%}}
.about-page .about-approach{border-top:0;padding-top:var(--about-section-space);padding-bottom:0}
.about-page .about-vision{padding-bottom:var(--about-section-space)}
.about-page .about-mission{padding-block:var(--about-section-space)}
.about-page .about-toc-slot{margin-top:var(--about-section-space)}
.about-values-spirit{margin-top:clamp(50px,6vw,90px)}
.about-values-spirit .about-spirit-intro h3{max-width:670px;font-size:clamp(30px,3vw,46px);line-height:1.24;font-weight:500}
.about-toc-slot{position:relative;z-index:35;height:84px;width:var(--kla-viewport-width,100vw);margin-inline:calc((100% - var(--kla-viewport-width,100vw))/2);margin-top:clamp(28px,4vw,56px)}
.about-toc-bar{height:84px;width:100%;opacity:var(--about-toc-opacity,0);background:linear-gradient(112deg,#102638 0%,#1c3745 60%,#102638 100%);color:#fff;border-top:1px solid rgba(222,200,153,.7);border-bottom:1px solid rgba(222,200,153,.28);box-shadow:0 8px 24px rgba(16,38,56,.08);transition:opacity .4s ease,top .3s ease}
.about-toc-inner{display:flex;align-items:stretch;max-width:1600px;height:100%;margin:auto}
.about-toc-links{display:flex;flex:1;min-width:0;align-items:center;justify-content:safe center;gap:clamp(4px,.8vw,14px);padding:12px 24px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}
.about-toc-links::-webkit-scrollbar{display:none}
.about-toc-links a{position:relative;display:flex;align-items:center;justify-content:center;gap:14px;flex:0 0 auto;min-height:52px;padding:12px 20px;border:0;border-radius:3px;font-size:13px;line-height:1.4;white-space:nowrap;color:#e8edf0;transition:color .2s,background-color .2s}
.about-toc-links a:after{content:'';position:absolute;left:20px;right:20px;bottom:5px;height:1px;background:#dec899;transform:scaleX(0);transform-origin:center;transition:transform .25s ease}
.about-toc-links a span{color:#dec899;font-size:15px;margin-left:3px}
.about-toc-links a:hover,.about-toc-links a[aria-current="location"]{background:rgba(222,200,153,.055);color:#efdab0}
.about-toc-links a:hover:after,.about-toc-links a[aria-current="location"]:after{transform:scaleX(1)}
.about-toc-links a:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.about-toc-intro,.about-toc-mobile{display:none}
.about-toc-slot.is-pinned .about-toc-bar{position:fixed;top:var(--about-toc-top,0px);left:0;width:100%}
.about-page.has-about-navigation .header{z-index:45;transition:transform .3s ease,background-color .24s ease,box-shadow .24s ease}
.about-page.about-header-hidden .header{transform:translateY(calc(-100% - 2px));pointer-events:none}
.about-page [id="histoire-kla"],.about-page [id="convictions-kla"],.about-page [id="approche-kla"],.about-page [id="esprit-kla"]{scroll-margin-top:220px}
.about-mission{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,7vw,120px);padding:clamp(70px,8vw,128px) 0;scroll-margin-top:110px}
.about-mission h2,.about-outlook h2{font-size:clamp(34px,3.4vw,54px);line-height:1.14;letter-spacing:-.04em;font-weight:500;color:#102638;margin:24px 0 28px}
.about-mission h2 em,.about-outlook h2 em,.about-mission-signature em{font-family:'Instrument Serif',serif;font-weight:400;color:#9f7b3c}
.about-mission-copy{font-size:17px;line-height:1.85;color:#52616c}
.about-mission-copy p+p{margin-top:22px}
.about-mission-compass{margin-top:34px;padding-left:23px;border-left:1px solid #b2945c;font-size:15px;line-height:1.9;color:#52616c}
.about-mission-visual{position:relative;isolation:isolate;margin:36px 0 0;overflow:hidden}
.about-mission-visual img{display:block;width:100%;height:auto}
.about-mission-aura,.about-mission-rays,.about-mission-floor{position:absolute;pointer-events:none}
.about-mission-aura{z-index:2;left:83.6%;top:34%;width:21%;aspect-ratio:1;mix-blend-mode:screen;background:radial-gradient(ellipse,rgba(255,248,220,.84),rgba(255,218,150,.36) 28%,rgba(247,185,94,.08) 52%,transparent 72%);animation:mission-aura 7.2s ease-in-out infinite}
.about-mission-rays{z-index:1;inset:0;transform-origin:83.6% 34%;mix-blend-mode:screen;background:conic-gradient(from 246deg at 83.6% 34%,transparent 0deg,rgba(255,225,166,.15) 9deg,transparent 18deg,rgba(255,233,187,.11) 30deg,transparent 46deg);mask-image:radial-gradient(ellipse at 83.6% 34%,#000 6%,rgba(0,0,0,.65) 44%,transparent 81%);animation:mission-rays 7.2s ease-in-out infinite}
.about-mission-floor{z-index:2;inset:72% 0 0;overflow:hidden}
.about-mission-floor:before,.about-mission-floor:after{content:'';position:absolute;inset:0;pointer-events:none}
.about-mission-floor:before{mix-blend-mode:screen;background:radial-gradient(ellipse 76% 15% at 51% 45%,rgba(255,223,161,.48),rgba(249,187,107,.13) 48%,transparent 78%);transform-origin:84% 44%;animation:mission-floor-light 7.2s ease-in-out infinite}
.about-mission-floor:after{background:radial-gradient(ellipse 58% 46% at 36% 90%,rgba(8,20,29,.55),transparent 80%);animation:mission-floor-shadow 7.2s ease-in-out infinite}
/* Every layer shares one gentle cycle with identical endpoints; no image movement or flashes. */
@keyframes mission-aura{0%,100%{opacity:.18;transform:translate(-50%,-50%) scale(.96)}50%{opacity:.44;transform:translate(-50%,-50%) scale(1.08)}}
@keyframes mission-rays{0%,100%{opacity:.26;transform:scaleX(.98) rotate(-.35deg)}50%{opacity:.58;transform:scaleX(1.015) rotate(.35deg)}}
@keyframes mission-floor-light{0%,100%{opacity:.23;transform:scaleX(.98)}50%{opacity:.52;transform:scaleX(1.025)}}
@keyframes mission-floor-shadow{0%,100%{opacity:.22;transform:translateX(0)}50%{opacity:.11;transform:translateX(-1%)}}
@media(prefers-reduced-motion:reduce){.about-mission-aura,.about-mission-rays,.about-mission-floor:before,.about-mission-floor:after{animation:none}.about-mission-aura{opacity:.18;transform:translate(-50%,-50%)}.about-mission-rays{opacity:.26}.about-mission-floor:before{opacity:.23}.about-mission-floor:after{opacity:.22}}
@media(max-width:780px){.about-mission-visual{margin-top:28px;margin-bottom:20px}}
.about-mission-copy .about-mission-signature{border-left:1px solid #b2945c;padding-left:24px;margin-top:32px;color:#102638;font-size:23px;line-height:1.5}
.about-outlook{display:grid;grid-template-columns:1fr 1fr;background:#f3f4f3;width:var(--kla-viewport-width,100vw);margin-inline:calc((100% - var(--kla-viewport-width,100vw))/2);scroll-margin-top:100px}
.about-outlook-visual{margin:0;min-width:0;position:relative;overflow:hidden}
.about-outlook-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% center}
.about-outlook-copy{padding:clamp(40px,4.6vw,78px);max-width:850px}
.about-outlook-copy .about-label{font-size:11px;line-height:1.7;letter-spacing:.12em}
.about-outlook h2{font-size:clamp(34px,3vw,48px)}
.about-outlook-prose{font-size:15px;line-height:1.85;color:#52616c}
.about-outlook-prose p+p{margin-top:22px}
.about-outlook strong{font-weight:600;color:#87672f}
.about-page .about-outlook{grid-template-areas:'visual heading' 'visual copy';grid-template-rows:auto 1fr}
.about-outlook-heading{grid-area:heading;max-width:850px;padding:clamp(40px,4.6vw,78px) clamp(40px,4.6vw,78px) 0}
.about-outlook-heading .about-label{font-size:11px;line-height:1.7;letter-spacing:.12em}
.about-outlook-visual{grid-area:visual}
.about-page .about-outlook-copy{grid-area:copy;padding-top:0}
@media(max-width:1050px){.about-outlook-heading{padding:38px 30px 0}}
@media(max-width:780px){.about-page .about-outlook{grid-template-areas:'heading' 'visual' 'copy';grid-template-rows:auto auto auto}.about-outlook-heading{padding:38px 24px 0;max-width:none}.about-page .about-outlook-copy{padding-top:32px}}
.about-outlook-pillars{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:20px}
.about-outlook-pillars li{position:relative;padding-left:24px;font-size:14px;line-height:1.75;color:#52616c}
.about-outlook-pillars li:before{content:'';position:absolute;left:0;top:6.125px;width:17px;height:14px;background:url('assets/kla-monogram.png') center/contain no-repeat;mix-blend-mode:multiply}
.about-outlook-pillars strong{display:block;margin-bottom:3px;font-size:15px}
@media(max-width:1050px){.about-toc-links{gap:8px;padding-inline:18px}.about-toc-links a{padding-inline:15px;font-size:12px}.about-outlook-copy{padding:38px 30px}}
@media(max-width:780px){.about-mission{grid-template-columns:1fr;gap:12px;padding-block:64px}.about-outlook{grid-template-columns:1fr}.about-outlook-visual{height:300px}.about-outlook-visual img{object-position:center 36%}.about-outlook-copy{padding:38px 24px 44px;max-width:none}.about-mission-copy{font-size:16px}.about-mission h2,.about-outlook h2{font-size:36px}}
@media(max-width:780px){
  .about-toc-slot{height:224px}
  .about-toc-bar{height:auto;min-height:84px;position:relative}
  .about-toc-inner{display:block}
  .about-toc-intro{display:block;max-height:100px;overflow:hidden;opacity:1;margin:0;padding:22px 22px 14px;color:#e0c995;font-size:10px;letter-spacing:.16em;line-height:1.6;transition:max-height .3s ease,padding .3s ease,opacity .25s ease}
  .about-toc-links{display:grid;grid-template-columns:1fr 1fr;gap:0;max-height:220px;padding:0 16px 18px;overflow:hidden;opacity:1;visibility:visible;counter-reset:about-chapter;transition:max-height .3s ease,opacity .25s ease,padding .3s ease,visibility .3s}
  .about-toc-links a{counter-increment:about-chapter;justify-content:space-between;gap:8px;min-height:50px;padding:12px 12px 12px 30px;white-space:normal;font-size:12px;border-radius:0;border-top:1px solid rgba(222,200,153,.2)}
  .about-toc-links a:before{content:counter(about-chapter) '.';position:absolute;left:9px;top:15px;color:#dec899;font-size:10px;line-height:1.5}
  .about-toc-links a:nth-child(odd){margin-right:12px}
  .about-toc-links a:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 6px);margin-right:0}
  .about-toc-links a:after{left:12px;right:12px;bottom:5px}
  .about-toc-links a span{font-size:13px}
  .about-toc-mobile{display:block;padding:0 22px;height:84px;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .3s ease,padding .3s ease,opacity .25s ease,visibility .3s}
  .about-toc-reading{display:flex;align-items:center;gap:14px;min-height:26px;font-size:14px;line-height:1.4}
  [data-about-current]{color:#efdab0;font-weight:600;max-width:53%}
  .about-toc-thread{position:relative;height:2px;flex:1;min-width:16px;overflow:hidden;background:rgba(222,200,153,.2);border-radius:2px}
  .about-toc-thread:after{content:'';display:block;position:absolute;inset:0;background:linear-gradient(90deg,#b79a61,#efdab0);transform:scaleX(var(--about-reading-progress,0));transform-origin:left;transition:transform .18s ease-out}
  [data-about-next]{display:flex;align-items:center;gap:9px;min-height:28px;color:#e9eef0;font-size:12px}
  [data-about-next][hidden]{display:none}
  [data-about-next] span{color:#e0c995;font-size:17px}
  .about-toc-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:32px;border:0;padding:0;background:none;color:#d5dfe4;font:inherit;font-size:11px;text-align:left;cursor:pointer}
  .about-toc-toggle span{font-size:18px;color:#e0c995;transition:transform .25s ease}
  .about-toc-toggle[aria-expanded="true"] span{transform:rotate(180deg)}
  .about-toc-toggle:focus-visible,[data-about-next]:focus-visible{outline:2px solid #efdab0;outline-offset:2px}
  .about-toc-slot.is-compact .about-toc-intro{max-height:0;padding-block:0;opacity:0}
  .about-toc-slot.is-compact .about-toc-mobile{max-height:84px;padding-block:12px 10px;opacity:1;visibility:visible}
  .about-toc-slot.is-compact .about-toc-links{max-height:0;overflow:hidden;visibility:hidden;padding-block:0;opacity:0;transition:max-height .3s ease,opacity .25s ease,padding .3s ease,visibility .3s}
  .about-toc-slot.is-compact.is-menu-open .about-toc-links{max-height:min(220px,45dvh);overflow-y:auto;visibility:visible;padding-block:4px 14px;opacity:1}
}
@media(prefers-reduced-motion:reduce){.about-toc-bar,.about-toc-links a,.about-toc-links a:after,.about-page.has-about-navigation .header{transition:none}}
@media(prefers-reduced-motion:reduce){.about-toc-intro,.about-toc-mobile,.about-toc-links,.about-toc-slot.is-compact .about-toc-links,.about-toc-toggle span,.about-toc-thread:after{transition:none}}
