/* Vector illustrations and entrance animations. */
.bkk-atelier{--at-cyan:#63cfed;--at-red:#e87585;position:relative;isolation:isolate;min-width:0;width:100%;margin:0;align-self:center;pointer-events:none}
.bkk-atelier-stage{position:relative;min-width:0;direction:ltr}
.bkk-atelier-stage::before{content:'';position:absolute;inset:18% 10% 14%;z-index:-1;background:radial-gradient(ellipse,#15374b30,transparent 70%);pointer-events:none}
.bkk-atelier-svg{display:block;width:100%;height:auto;aspect-ratio:760/520;overflow:visible;pointer-events:none;user-select:none;direction:ltr}
.bkk-atelier-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 18px;margin:0 5%;padding:13px 0 0;border-top:1px solid #6b99ac26;font:400 10px/1.8 'JetBrains Mono',monospace;letter-spacing:.07em;color:#9eafbe}
.bkk-atelier-title{color:#cfdfeb}.bkk-atelier-legend{display:flex;flex-wrap:wrap;gap:5px 14px}.bkk-atelier-legend>span{display:inline-flex;align-items:center;gap:6px}.bkk-atelier-legend>span::before{content:'';width:3px;height:3px;flex:none;background:#63cfed88}
.bkk-illustrated-split{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(24px,4vw,52px);align-items:center}
.bkk-illustrated-copy{min-width:0}.bkk-illustrated-copy>p:last-child{margin-bottom:0}.bkk-illustrated-copy ul{line-height:1.8}
.bkk-about-model{margin-block:32px 48px;padding-block:28px 34px;border-block:1px solid #2b41505c;gap:36px}.bkk-about-model>.bkk-atelier{width:calc(100% + 24px);margin-inline-end:-24px}
.bkk-about-model h2{font:500 clamp(1.3rem,2vw,1.8rem)/1.3 'Space Grotesk',sans-serif;letter-spacing:-.02em;color:#eff5fa;margin-bottom:16px}
.bkk-about-model p,.bkk-about-mission p{font-size:14px;line-height:1.9;color:#bac6d2}.bkk-about-mission{max-width:850px;margin-bottom:12px}
.bkk-service-pair{grid-template-columns:minmax(0,1fr)!important}.bkk-service-pair>.bkk-illustrated-split{gap:24px}.bkk-service-pair>.bkk-illustrated-split .bkk-atelier{margin-block:-8px 6px}
.bkk-illustrated-board>.bkk-illustrated-split{margin-bottom:26px}.bkk-illustrated-board>.bkk-illustrated-split h2{font-size:clamp(1.125rem,1.8vw,1.5rem);line-height:1.4}
.bkk-private-approach.bkk-illustrated-split{gap:28px}.bkk-sector-layout{align-items:center!important}.bkk-sector-visual{min-width:0}.bkk-sector-visual>.bkk-atelier{margin-bottom:25px;width:calc(100% + 24px);margin-inline-start:-12px}
.bkk-visual-art.bkk-atelier--redteam{padding:6px 0 12px;overflow:visible}.bkk-visual-art.bkk-atelier--redteam .bkk-atelier-svg{overflow:hidden;aspect-ratio:760/520}
/* Materials: cool graphite planes, small machining details and crisp controlled edge light. */
.bkk-atelier-svg :is(path,polygon,rect,circle,ellipse){stroke-linejoin:round;stroke-linecap:round}
.bkk-atelier-svg .sc-floor{stroke:#326079;stroke-width:.6;fill:none;opacity:.34}
.bkk-atelier-svg .sc-register{stroke:#476171;stroke-width:1;opacity:.65;fill:none}
.bkk-atelier-svg .sc-ground{fill:#0d203028;stroke:#39566c;stroke-width:1;opacity:.7}
.bkk-atelier-svg .sc-top{fill:var(--sc-surface,#152939);stroke:#64869c;stroke-width:1.1}
.bkk-atelier-svg .sc-left{fill:#0a1520;stroke:#395365;stroke-width:1.1}
.bkk-atelier-svg .sc-right{fill:#102432;stroke:#476c83;stroke-width:1.1}
.bkk-atelier-svg .sc-rim{stroke:#8caec0;stroke-width:1;opacity:.6;fill:none}
.bkk-atelier-svg .sc-line{stroke:#6897b0;stroke-width:1.25;fill:none}
.bkk-atelier-svg .sc-detail{stroke:#58809a;stroke-width:1;opacity:.65;fill:none}
.bkk-atelier-svg .sc-trace{stroke:#63cfed;stroke-width:1.8;fill:none;opacity:.85}
.bkk-atelier-svg .sc-trace.sc-red{stroke:#e87585}
.bkk-atelier-svg .sc-dot{fill:#9de6f5;stroke:#5bbdd7;stroke-width:1}
.bkk-atelier-svg .sc-muted-dot{fill:#57788f}
.bkk-atelier-svg .sc-node-ring{fill:#0b1e2d;stroke:#65cce6;stroke-width:1;opacity:.8}
.bkk-atelier-svg .sc-glass{fill:var(--sc-glass,#102330);stroke:#59839a;stroke-width:1.2}
.bkk-atelier-svg .sc-glass-edge{stroke:#88b1c7;stroke-width:.8;opacity:.35;fill:none}
.bkk-atelier-svg .sc-screen-head{fill:#244052;stroke:#405f73;stroke-width:.6;opacity:.7}
.bkk-atelier-svg .sc-key{fill:#122737;stroke:#567e95;stroke-width:1}
.bkk-atelier-svg .sc-metal{fill:none;stroke:#527286;stroke-width:2}
.bkk-atelier-svg .sc-table-leg{fill:#0b1420;stroke:#354c5e;stroke-width:1.2}
.bkk-atelier-svg .sc-workplane{fill:#24506835;stroke:#5babc7;stroke-width:1}
.bkk-atelier-svg .sc-tablet{fill:#0b141c;stroke:#7098ae;stroke-width:1.3}
.bkk-atelier-svg .sc-tablet-screen{fill:#24526870;stroke:#347895;stroke-width:.7}
.bkk-atelier-svg .sc-window{fill:#225069;stroke:#446b85;stroke-width:.7}
.bkk-atelier-svg .sc-hospital-cross{fill:#79bed4;stroke:#9ee5f1;stroke-width:.7}
.bkk-atelier-svg .sc-pediment{fill:#203d50;stroke:#6b9ab4;stroke-width:1.1}
.bkk-atelier-svg .sc-column{fill:#214258;stroke:#6c8fa5;stroke-width:.8}
.bkk-atelier-svg .sc-server-slot{stroke:#5ba4be;stroke-width:2;opacity:.6}
.bkk-atelier-svg .sc-roof-fin{fill:#1b3546;stroke:#57869c;stroke-width:1}
.bkk-atelier-svg .sc-boundary{fill:#56bdd905;stroke:#63cfed;stroke-width:1.1;opacity:.75}
.bkk-atelier-svg .sc-boundary-soft{fill:#2e6c8810;stroke:#67b4cf;stroke-width:1;opacity:.25}
.bkk-atelier-svg .sc-drive-seam{stroke:#699bb8;stroke-width:1.5;opacity:.7}
.bkk-atelier-svg .sc-core-top{fill:#142e40;stroke:#7eb8d0;stroke-width:1.4}
.bkk-atelier-svg .sc-check{fill:none;stroke:#8ad9e8;stroke-width:1.7}
.bkk-atelier-svg .sc-panel{fill:#0d2130;stroke:#51788f;stroke-width:1.2}
.bkk-atelier-svg .sc-plane{fill:#0b1e2a;stroke:#446b81;stroke-width:1}
/* Faceted people deliberately have no animated faces, bodies or hover tracking. */
.bkk-atelier-svg .sc-person{--person-rim:#6dd5eb}
.bkk-atelier-svg .sc-person--red{--person-rim:#df7a8a}
.bkk-atelier-svg .sc-suit{fill:#0b1621;stroke:#517184;stroke-width:1.2}
.bkk-atelier-svg .sc-boot{fill:#090f17;stroke:#3f5869;stroke-width:1}
.bkk-atelier-svg .sc-collar{fill:#b1c8d2;stroke:#8da4b1;stroke-width:.8}
.bkk-atelier-svg .sc-facet{fill:#142737;stroke:#3b586a;stroke-width:.7}
.bkk-atelier-svg .sc-facet-light{fill:var(--sc-face,#1c3445);stroke:#5b788b;stroke-width:.8}
.bkk-atelier-svg .sc-head{fill:#142532;stroke:#84b2c8;stroke-width:1}
.bkk-atelier-svg .sc-hair{fill:#0b1722;stroke:#4f7086;stroke-width:.9}
.bkk-atelier-svg .sc-face-facet{fill:#1a3546;stroke:#446c83;stroke-width:.5}
.bkk-atelier-svg .sc-seam{fill:none;stroke:#61849b;stroke-width:.8;opacity:.7}
.bkk-atelier-svg .sc-sleeve{fill:#152b3b;stroke:#567b93;stroke-width:1}
.bkk-atelier-svg .sc-hand{fill:#2c485b;stroke:#7e9eb1;stroke-width:.9}
.bkk-atelier-svg .sc-person-rim{fill:none;stroke:var(--person-rim);stroke-width:1.2;opacity:.8}
.bkk-atelier-svg .sc-pin{fill:var(--person-rim)}
.bkk-atelier-svg .sc-channel{opacity:.4;transition:opacity .2s ease}
.bkk-visual[data-active="0"] .sc-channel-0,.bkk-visual[data-active="1"] .sc-channel-1,.bkk-visual[data-active="2"] .sc-channel-2{opacity:1}
/* All resource categories retain individual symbols in the same dimensional dossier. */
.bkk-atelier-svg .sc-dossier-back{fill:#0c1c29;stroke:#47677d;stroke-width:1}
.bkk-atelier-svg .sc-dossier{fill:var(--sc-surface,#162b3b);stroke:#83a6bc;stroke-width:1.2}
.bkk-atelier-svg .sc-binding{fill:#244454;stroke:#7bb2c7;stroke-width:1}
.bkk-atelier-svg .sc-binding-hole{fill:#07141d;stroke:#4a7a8e;stroke-width:.7}
.bkk-atelier-svg .sc-index-tab{fill:#163b50;stroke:#62abc7;stroke-width:1}
.bkk-atelier-svg .sc-bar{fill:#386c83;stroke:#73bed5;stroke-width:.8}
.bkk-resource-cover.bkk-atelier-cover{background:radial-gradient(ellipse at 35% 50%,#17324790,transparent 75%),#0b141d;border-color:#35556b;margin-bottom:24px;border-radius:8px}
.bkk-atelier-cover .bkk-atelier-svg{width:100%;height:auto;aspect-ratio:2/1;overflow:hidden}
.bkk-atelier-cover .bkk-resource-cover-label{color:#adc8da;background:#14263550;border-bottom-color:#4e779533}
/* Responsive lifecycle stages. */
.bkk-lifecycle.bkk-atelier-lifecycle>div::before{display:none}
.bkk-lifecycle-track{position:relative;gap:0!important}
.bkk-lifecycle-track>div{position:relative;min-width:0;border:0!important;border-radius:0!important;background:transparent!important;padding:0 16px 12px!important}
.bkk-lifecycle-track>div+div{border-inline-start:1px solid #34556b55!important}
.bkk-lifecycle-art{position:relative;direction:ltr;margin:0 -6px 14px;pointer-events:none}
.bkk-lifecycle-art .bkk-atelier-svg{aspect-ratio:320/205}
.bkk-lifecycle-art::after{content:'';position:absolute;top:48%;inset-inline-start:90%;width:calc(20% + 32px);height:1px;background:linear-gradient(90deg,#5fadc98c,#5fadc928);transform-origin:left}
.bkk-lifecycle-track>div:last-child .bkk-lifecycle-art::after{display:none}
[dir=rtl] .bkk-lifecycle-art::after{inset-inline-start:auto;right:90%;transform-origin:right}
/* Progressive enhancement: without JS every layer and trace is already visible. */
[data-atelier].is-atelier-playing .sc-assemble{animation:bkk-atelier-place 1.4s cubic-bezier(.2,.65,.3,1) both;animation-delay:var(--sc-delay,0s)}
[data-atelier].is-atelier-playing .sc-trace{stroke-dasharray:1;animation:bkk-atelier-connect 2.5s cubic-bezier(.22,.6,.35,1) both;animation-delay:var(--sc-delay,0s)}
[data-atelier] .sc-phase-1{--sc-delay:.18s}[data-atelier] .sc-phase-2{--sc-delay:.38s}[data-atelier] .sc-phase-3{--sc-delay:.6s}
.bkk-lifecycle-track>div.is-atelier-playing .bkk-lifecycle-art::after{animation:bkk-atelier-link 2.8s ease-out both}
@keyframes bkk-atelier-place{from{fill-opacity:.65;stroke-opacity:.65}to{fill-opacity:1;stroke-opacity:1}}
@keyframes bkk-atelier-connect{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes bkk-atelier-link{from{scale:0 1;opacity:.25}to{scale:1 1;opacity:1}}
@media(max-width:1023px){.bkk-illustrated-split{gap:24px}.bkk-atelier-caption{font-size:10px;letter-spacing:.015em}.bkk-about-model>.bkk-atelier{width:100%;margin-inline-end:0}.bkk-sector-visual>.bkk-atelier{width:100%;margin-inline-start:0}.bkk-sector-layout{grid-template-columns:1fr 1fr!important}}
@media(max-width:767px){.bkk-illustrated-split,.bkk-sector-layout{grid-template-columns:minmax(0,1fr)!important;gap:18px}.bkk-atelier{max-width:540px;margin-inline:auto}.bkk-atelier-stage{margin-inline:-7px}.bkk-atelier-svg{overflow:hidden}.bkk-about-model{padding-block:24px;margin-block:26px 36px}.bkk-about-model>.bkk-atelier{width:100%}.bkk-atelier-caption{font-size:10px;letter-spacing:0;gap:8px;margin-inline:3%;padding-top:10px}.bkk-atelier-legend{gap:5px 10px}.bkk-service-pair>.bkk-illustrated-split .bkk-atelier{margin-block:0 4px}.bkk-illustrated-board>.bkk-illustrated-split{margin-bottom:24px}.bkk-lifecycle-track{grid-template-columns:minmax(0,1fr)!important;gap:22px!important}.bkk-lifecycle-track>div{padding:0 0 20px!important}.bkk-lifecycle-track>div+div{border-inline-start:0!important;border-top:1px solid #34556b55!important;padding-top:4px!important}.bkk-lifecycle-art{width:min(100%,270px);margin:0 auto 14px}.bkk-lifecycle-art::after{display:none}.bkk-visual-art.bkk-atelier--redteam{padding-block:8px 0}}
@media(prefers-reduced-motion:reduce){[data-atelier] *,[data-atelier] *::after{animation:none!important;transition:none!important;translate:none!important;stroke-dasharray:none!important}.bkk-lifecycle-art::after{scale:none!important}}
@media(forced-colors:active){.bkk-atelier-stage,.bkk-lifecycle-art,.bkk-atelier-cover{display:none}.bkk-atelier-caption{border-color:CanvasText;color:CanvasText}.bkk-atelier-title{color:CanvasText}.bkk-atelier-legend>span::before{background:CanvasText}}
@media print{[data-atelier] *,[data-atelier] *::after{animation:none!important;transition:none!important;stroke-dasharray:none!important}.bkk-atelier-stage{display:none}.bkk-atelier-caption{color:#222;border-color:#aaa}.bkk-atelier-title{color:#111}}
