/* ============================================================
   Bariks landing — single source of truth for all UI styling.
   Decorative background images are injected as generated rules
   (Bariks_Site::dynamic_css) so markup stays free of inline style.
   ============================================================ */

/* Brand typeface (Outfit) and tokens (--bk-*) come from Portal.UI via App.razor.
   This file never redefines them. Local :root overrides (e.g. responsive --bk-layout-pad)
   live with their rule below. */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body.bk{background:var(--bk-color-bg);color:var(--bk-color-text);font-family:var(--bk-font-base);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{line-height:1.04;letter-spacing:-.02em;font-weight:800}

/* primitives */
.bk-wrap{max-width:var(--bk-layout-wrap);margin:0 auto;padding:0 var(--bk-layout-pad)}
.bk-eyebrow{display:inline-block;color:var(--bk-color-accent);text-transform:uppercase;letter-spacing:.18em;font-size:13px;font-weight:700}
.bk-h2{font-size:clamp(34px,5vw,64px);color:#fff}
.bk-lead{color:var(--bk-color-text-muted);font-size:18px;line-height:1.6;margin-top:18px;max-width:560px}
.bk-mt{margin-top:26px}
.bk-mb{margin-bottom:36px}
.bk-btn{display:inline-block;background:var(--bk-color-primary);color:#0A0E14;font-weight:600;padding:16px 34px;border-radius:999px;transition:transform .15s,background .2s} /* dark ink on teal = 9.2:1 (WCAG AA) */
.bk-btn:hover{background:var(--bk-color-primary-hover);transform:translateY(-2px)}
.bk-btn--sm{padding:10px 22px;font-size:14px}
.bk-sec{padding:110px 0}
[id]{scroll-margin-top:84px} /* fixed-nav offset for in-page anchors */
#bk-main{outline:none}
body.bk-noscroll{overflow:hidden} /* lock page scroll behind mobile menu */

/* skip-to-content (visible only on keyboard focus) */
.bk-skip{position:fixed;top:-100px;left:12px;z-index:2000;background:var(--bk-color-primary);color:#0A0E14;font-weight:600;padding:12px 20px;border-radius:0 0 12px 12px;transition:top .2s}
.bk-skip:focus{top:0}

/* nav / mega-menu */
.bk-nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(10,14,20,.55);backdrop-filter:blur(10px);border-bottom:1px solid var(--bk-color-hairline)}
.bk-nav.is-scrolled{background:rgba(8,11,16,.96)}
.bk-bar{display:flex;align-items:center;justify-content:space-between;padding:16px var(--bk-layout-pad)}
.bk-logo img{height:44px;width:auto;filter:brightness(0) invert(1)}
.bk-menu{display:flex;align-items:center;gap:34px;list-style:none}
.bk-menu>li>a{font-size:15px;font-weight:500;color:var(--bk-color-text-muted);padding:24px 0;display:inline-block;transition:color .2s}
.bk-menu>li:hover>a,.bk-menu>li.is-open>a{color:#fff}
.bk-panel{position:absolute;left:0;right:0;top:100%;background:var(--bk-color-surface);border-top:1px solid var(--bk-color-hairline);box-shadow:0 30px 50px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.24s}
.bk-nav.is-active .bk-panel.is-show{opacity:1;visibility:visible;transform:none}
.bk-panel__in{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;padding:40px var(--bk-layout-pad);max-width:var(--bk-layout-wrap);margin:0 auto}
.bk-feat{border-radius:20px;min-height:230px;background-size:cover;background-position:center;position:relative;overflow:hidden}
.bk-feat span{position:absolute;left:20px;bottom:18px;font-weight:700;font-size:18px;text-shadow:0 2px 16px rgba(0,0,0,.7)}
.bk-col h4{color:var(--bk-color-accent);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.bk-col a{display:block;color:var(--bk-color-text-muted);padding:8px 0;font-size:15px;transition:.15s}
.bk-col a:hover{color:#fff;padding-left:6px}

/* mobile nav */
.bk-burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.bk-burger span{width:24px;height:2px;background:#fff;border-radius:2px}
.bk-mobile{position:fixed;inset:0;z-index:1100;background:var(--bk-color-bg);padding:88px 28px 40px;transform:translateX(100%);transition:transform .32s ease;display:flex;flex-direction:column;gap:4px}
.bk-mobile.is-open{transform:none}
.bk-mobile a{font-size:22px;font-weight:600;padding:15px 0;border-bottom:1px solid var(--bk-color-hairline)}
.bk-mobile .bk-btn{margin-top:24px;text-align:center}
.bk-mclose{position:absolute;top:20px;right:22px;background:none;border:0;color:#fff;font-size:36px;line-height:1;cursor:pointer}
@media(min-width:901px){.bk-mobile{display:none}}
@media(max-width:900px){.bk-menu,.bk-panel{display:none!important}.bk-bar__cta{display:none}.bk-burger{display:flex}}
/* mobile accordion groups */
.bk-mob-group{border-bottom:1px solid var(--bk-color-hairline)}
.bk-mob-group summary{font-size:22px;font-weight:600;padding:15px 0;list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:#fff;border-bottom:none}
.bk-mob-group summary::-webkit-details-marker{display:none}
.bk-mob-group summary::after{content:"+";color:var(--bk-color-primary);font-size:24px;font-weight:400;line-height:1}
.bk-mob-group[open] summary::after{content:"\2212"}
.bk-mob-group a{display:block;font-size:16px;font-weight:500;padding:10px 0 10px 16px;border-bottom:none;color:var(--bk-color-text-muted)}
.bk-mob-group[open] a:last-child{padding-bottom:18px}

/* hero */
.bk-hero{position:relative;height:100vh;height:100dvh;min-height:620px;display:flex;align-items:center;overflow:hidden;background-size:cover;background-position:center}
.bk-hero__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bk-hero__ov{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(7,10,16,.82),rgba(7,10,16,.35) 60%,rgba(7,10,16,.15))}
.bk-hero__in{position:relative;z-index:2;width:100%}
.bk-hero__title{font-size:clamp(48px,8.5vw,110px);color:#fff;margin:14px 0 4px}
.bk-hero__sub{font-size:clamp(26px,4vw,46px);font-weight:800;color:var(--bk-color-text-muted);letter-spacing:-.02em}
.bk-hero__text{max-width:520px;color:var(--bk-color-text-muted);font-size:18px;line-height:1.55;margin:22px 0 30px}
.bk-sound{position:absolute;right:36px;bottom:32px;z-index:3;display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:13px;font-weight:600;letter-spacing:.04em;padding:9px 16px;border-radius:999px;cursor:pointer;transition:background .2s}
.bk-sound:hover{background:rgba(255,255,255,.22)}
.bk-sound.is-on{background:var(--bk-color-primary);border-color:var(--bk-color-primary)}
@media(max-width:700px){.bk-sound{right:20px;bottom:22px}}

/* scroll-reveal (height set by dynamic_css) */
.bk-sr{position:relative;height:100vh;height:100dvh}
.bk-sr__stick{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden}
.bk-sr-l{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .8s ease}
.bk-sr-l.on{opacity:1}
.bk-sr-l::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,10,16,.25),rgba(7,10,16,.6))}
.bk-sr__cap{position:absolute;left:8%;bottom:16%;z-index:2;color:#fff;font-size:clamp(40px,7vw,92px);font-weight:800;max-width:13ch;text-shadow:0 4px 30px rgba(0,0,0,.5)}
.bk-sr__dots{position:absolute;left:8%;bottom:11%;display:flex;gap:9px;z-index:3}
.bk-sr__dots i{width:30px;height:3px;border-radius:3px;background:rgba(255,255,255,.3);transition:.3s}
.bk-sr__dots i.on{background:var(--bk-color-primary)}

/* split */
.bk-split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.bk-split__media{order:2;background:var(--bk-color-surface);border:1px solid var(--bk-color-hairline);border-radius:var(--bk-layout-radius);overflow:hidden}
.bk-split__body{order:1}
.bk-split--rev .bk-split__media{order:1}
.bk-split--rev .bk-split__body{order:2}
@media(max-width:900px){.bk-split{grid-template-columns:1fr;gap:32px}.bk-split__media,.bk-split__body{order:initial}}

/* band */
.bk-band{position:relative;height:74vh;min-height:440px;display:flex;align-items:flex-end;background-size:cover;background-position:center}
.bk-band::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,10,16,.85),transparent 70%)}
.bk-band__in{position:relative;z-index:2;padding-bottom:60px}
.bk-band__title{font-size:clamp(40px,7vw,90px)}

/* statement (equations) */
.bk-stmt{display:flex;flex-direction:column;gap:18px}
.bk-stmt__row{display:flex;align-items:center;gap:clamp(16px,4vw,48px);flex-wrap:wrap}
.bk-stmt__a{font-size:clamp(34px,6vw,76px);font-weight:800;color:#fff}
.bk-stmt__arrow{color:var(--bk-color-primary);font-size:clamp(30px,5vw,56px)}
.bk-stmt__b{font-size:clamp(34px,6vw,76px);font-weight:800;color:var(--bk-color-accent)}

/* cards */
.bk-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.bk-cards{grid-template-columns:1fr}}
.bk-card2{background:var(--bk-color-surface);border:1px solid var(--bk-color-hairline);border-radius:var(--bk-layout-radius);padding:34px}
.bk-card2__t{color:#fff;font-size:24px;margin-bottom:12px}
.bk-card2__p{color:var(--bk-color-text-muted);line-height:1.6}

/* faq */
.bk-faq{border-top:1px solid rgba(255,255,255,.12)}
.bk-faq details{border-bottom:1px solid rgba(255,255,255,.12)}
.bk-faq summary{list-style:none;cursor:pointer;padding:26px 0;font-size:20px;font-weight:600;display:flex;justify-content:space-between;align-items:center}
.bk-faq summary::-webkit-details-marker{display:none}
.bk-faq summary::after{content:"+";color:var(--bk-color-primary);font-size:28px;font-weight:400}
.bk-faq details[open] summary::after{content:"\2212"}
.bk-faq p{color:var(--bk-color-text-muted);font-size:17px;line-height:1.6;padding:0 0 26px;max-width:780px}

/* footer */
.bk-foot{background:var(--bk-color-surface-deep);border-top:1px solid var(--bk-color-hairline);padding:80px 0 40px}
.bk-foot__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:36px}
@media(max-width:900px){.bk-foot__grid{grid-template-columns:1fr 1fr;gap:30px}}
.bk-foot__brand .bk-logo img{height:54px}
.bk-foot__mission{color:var(--bk-color-text-muted);max-width:300px;margin-top:14px;line-height:1.6}
.bk-foot h3{color:var(--bk-color-accent);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.bk-foot a{display:block;color:var(--bk-color-text-muted);padding:6px 0;font-size:15px}
.bk-foot a:hover{color:#fff}
.bk-foot__disclaimer{margin:54px 0 0;padding-top:24px;border-top:1px solid var(--bk-color-hairline);color:var(--bk-color-text-muted);font-size:12px;line-height:1.7;max-width:none}
.bk-foot__legal{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;justify-content:space-between;color:var(--bk-color-text-muted);font-size:13px;margin-top:20px}
.bk-foot__legal>*{white-space:nowrap}
.bk-foot__legal a{padding:0;font-size:13px;color:inherit;text-decoration:none}
.bk-foot__legal a:hover{text-decoration:underline}
@media(max-width:640px){.bk-foot__legal{flex-wrap:wrap;justify-content:center;gap:8px 18px;text-align:center}}

@media(max-width:700px){:root{--bk-layout-pad:22px}}

/* ── Motion — scroll-triggered entrance ────────────────────────── */
.bk-mo{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.bk-mo.is-vis{opacity:1;transform:none}
/* stagger children inside a parent container */
.bk-mo-stagger>.bk-mo:nth-child(1){transition-delay:0s}
.bk-mo-stagger>.bk-mo:nth-child(2){transition-delay:.12s}
.bk-mo-stagger>.bk-mo:nth-child(3){transition-delay:.12s}
.bk-mo-stagger>.bk-mo:nth-child(4){transition-delay:.24s}
.bk-mo-stagger>.bk-mo:nth-child(5){transition-delay:.36s}
.bk-mo-stagger>.bk-mo:nth-child(6){transition-delay:.48s}
/* hero entrance — CSS-only on page load (no IntersectionObserver needed) */
.bk-mo-hero{opacity:0;transform:translateY(28px);animation:bk-hero-in .9s cubic-bezier(.16,1,.3,1) forwards}
.bk-mo-hero:nth-child(1){animation-delay:.15s}
.bk-mo-hero:nth-child(2){animation-delay:.3s}
.bk-mo-hero:nth-child(3){animation-delay:.45s}
.bk-mo-hero:nth-child(4){animation-delay:.6s}
.bk-mo-hero:nth-child(5){animation-delay:.75s}
@keyframes bk-hero-in{to{opacity:1;transform:none}}

/* accessibility: honour reduced-motion */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .bk-sr-l,.bk-btn,.bk-panel,.bk-mobile,.bk-sound,.bk-col a,.bk-sr__dots i{transition:none}
  .bk-mo,.bk-mo-hero{opacity:1;transform:none;transition:none;animation:none}
}
:focus-visible{outline:2px solid var(--bk-color-accent);outline-offset:3px}
/* Headings focused programmatically by FocusOnNavigate (tabindex=-1) move focus for
   a11y but must not show a visible focus ring — only real keyboard focus should. */
[tabindex="-1"]:focus,[tabindex="-1"]:focus-visible{outline:none}


/* language toggle (added for the Blazor SSR portal) */
.bk-bar__cta{display:inline-flex;align-items:center;gap:10px}
.bk-lang{font-size:14px;font-weight:600;color:var(--bk-color-text-muted);padding:8px 4px;transition:color .2s}
.bk-lang:hover{color:#fff}
.bk-mobile .bk-lang{font-size:20px;padding:15px 0;border-bottom:1px solid var(--bk-color-hairline)}

/* lead / contact form */
.bk-form{display:flex;flex-direction:column;gap:18px;max-width:660px}
.bk-form__row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:600px){.bk-form__row{grid-template-columns:1fr}}
.bk-form label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--bk-color-text-muted)}
.bk-form input,.bk-form select,.bk-form textarea{background:var(--bk-color-surface);border:1px solid var(--bk-color-hairline);border-radius:14px;padding:14px 16px;color:#fff;font:inherit;font-weight:400}
.bk-form input:focus,.bk-form select:focus,.bk-form textarea:focus{outline:2px solid var(--bk-color-primary);outline-offset:1px;border-color:transparent}
.bk-form textarea{resize:vertical}
.bk-form button{align-self:flex-start;border:0;cursor:pointer}
.bk-form .validation-message{color:var(--bk-color-coral);font-size:13px;font-weight:500}
.bk-form__ok{color:var(--bk-color-primary);font-size:20px;font-weight:600;max-width:560px}
.bk-form__err{color:var(--bk-color-coral);font-size:14px;font-weight:500}

/* video inside scroll-reveal layers */
.bk-sr-l video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* footer lead-form block */
.bk-foot-lead{padding-bottom:48px;margin-bottom:48px;border-bottom:1px solid var(--bk-color-hairline)}
.bk-foot-lead__h{font-size:clamp(28px,4vw,44px);color:#fff;margin:6px 0 0}

/* caption text-motion — per slide: appears at (--cap-sx,--cap-sy), glides to rest
   (--cap-tx,--cap-ty) and stays. Positions are % of the slide; tune via edit-text-motion. */
.bk-sr-l .bk-sr__cap,.bk-hg__slide .bk-sr__cap{left:var(--cap-tx,8%);top:var(--cap-ty,54%);bottom:auto;opacity:0}
.bk-sr-l.on .bk-sr__cap,.bk-hg__slide.on .bk-sr__cap{animation:bk-cap-move var(--cap-dur,1.4s) cubic-bezier(.16,1,.3,1) .15s both}
@keyframes bk-cap-move{
  0%{left:var(--cap-sx,8%);top:var(--cap-sy,74%);opacity:0}
  18%{left:var(--cap-sx,8%);top:var(--cap-sy,74%);opacity:1}
  100%{left:var(--cap-tx,8%);top:var(--cap-ty,54%);opacity:1}
}
@media (prefers-reduced-motion:reduce){
  .bk-sr-l.on .bk-sr__cap,.bk-hg__slide.on .bk-sr__cap{animation:none;opacity:1;left:var(--cap-tx,8%);top:var(--cap-ty,54%)}
}

/* video slides switch via the prev/next arrows and clickable dots (no scroll hijack) */
.bk-sr__dots i{cursor:pointer}

/* image-slides — horizontal full-bleed gallery. The track holds one panel per
   photo (each 100% wide) and slides sideways via translateX. Travel stays LTR in
   both languages (photos aren't language-specific); caption text follows the page. */
.bk-hg{position:relative;height:100vh;height:100dvh}
.bk-hg__stick{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden}
.bk-hg__track{display:flex;direction:ltr;height:100%;will-change:transform;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.bk-hg__slide{position:relative;flex:0 0 100%;height:100%;background-size:cover;background-position:center;cursor:pointer}
.bk-hg__slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,10,16,.25),rgba(7,10,16,.6))}
@media (prefers-reduced-motion:reduce){.bk-hg__track,.bk-hg__nav{transition:none}.bk-hg__ticker-track{animation:none}}

/* image-gallery feature ticker — scrolling green band flush at the bottom */
.bk-hg__ticker{position:relative;width:100%;height:40px;overflow:hidden;background:var(--bk-color-primary)}
.bk-hg__ticker-track{display:flex;width:max-content;height:100%;animation:bk-ticker 28s linear infinite}
.bk-hg__ticker-group{display:flex;align-items:center}
.bk-hg__ticker-item{display:flex;align-items:center;height:100%;padding:0 30px;white-space:nowrap;font-size:15px;font-weight:600;letter-spacing:.01em;color:#070a10;border-left:1px solid rgba(7,10,16,.25)}
@keyframes bk-ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* image-gallery side navigation arrows */
.bk-hg__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:4;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:rgba(7,10,16,.38);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;cursor:pointer;opacity:.85;transition:background .25s,transform .25s,opacity .25s}
.bk-hg__nav:hover{background:rgba(7,10,16,.6);opacity:1}
.bk-hg__nav:active{transform:translateY(-50%) scale(.92)}
.bk-hg__nav--prev{left:clamp(12px,3vw,32px)}
.bk-hg__nav--next{right:clamp(12px,3vw,32px)}
.bk-hg__nav svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:600px){.bk-hg__nav{width:40px;height:40px}.bk-hg__nav svg{width:20px;height:20px}}

/* ── /system/data — light-themed content page ──────────────────── */
.bk-dpage{background:#eef0ec;color:#16181c}
.bk-dpage__wrap{max-width:var(--bk-layout-wrap);margin:0 auto;padding:0 var(--bk-layout-pad)}
.bk-dpage__split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.bk-dpage__hero{padding:150px 0 90px}
/* hero: large dashboard shot, text centred beside it (brand-book proportion) */
.bk-dpage__hero .bk-dpage__split{grid-template-columns:2fr .8fr;gap:48px}
/* reversed content hero (opt-in): text left, image right, balanced columns */
.bk-dpage__hero .bk-dpage__split.is-rev{grid-template-columns:1.05fr .95fr;gap:56px}
.bk-dpage__split.is-rev .bk-dpage__shot{order:2}
@media(max-width:900px){.bk-dpage__hero .bk-dpage__split.is-rev{grid-template-columns:1fr}}
.bk-dpage__title{font-size:clamp(30px,4.6vw,56px);font-weight:800;line-height:1.06;color:#14171b}
.bk-dpage__body{color:#51555b;font-size:20px;line-height:1.7;margin-top:22px;max-width:560px}
.bk-dpage__shot img{width:100%;height:auto;border-radius:18px;box-shadow:0 30px 60px rgba(0,0,0,.18)}
.bk-dpage__band{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-bottom:6px solid var(--bk-color-primary)}
.bk-dpage__band img{width:100%;height:100%;max-height:440px;object-fit:cover;display:block}
.bk-dpage__close{padding:90px 0 110px}
.bk-dpage__cta{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:28px}
.bk-dpage__ghost{display:inline-block;padding:15px 30px;border-radius:999px;border:1.5px solid rgba(20,23,27,.35);color:#14171b;font-weight:600;transition:background .2s,color .2s}
.bk-dpage__ghost:hover{background:#14171b;color:#fff}
.bk-dpage__phone img{width:100%;max-width:320px;height:auto;display:block;margin:0 auto}
.bk-dpage__center{max-width:760px;margin:0 auto;text-align:center}
.bk-dpage__center .bk-dpage__body{max-width:none;margin-left:auto;margin-right:auto}
.bk-dpage__center .bk-dpage__cta{justify-content:center}
/* accessibility / legal statement — readable single text column */
.bk-legal{max-width:760px}
.bk-legal .bk-dpage__body{max-width:none}
.bk-legal__h{font-size:clamp(20px,2.6vw,28px);font-weight:700;color:#14171b;margin:40px 0 12px}
.bk-legal__list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px;color:#51555b;font-size:18px;line-height:1.6}
.bk-legal__updated{margin-top:40px;color:#6a6e74;font-size:15px}
.bk-legal__meta{margin:6px 0 8px;color:#6a6e74;font-size:15px}
.bk-legal__sub{font-weight:600;color:#14171b;margin-top:6px}
.bk-legal__warn{display:flex;gap:10px;align-items:flex-start}
.bk-legal__warn-ico{color:#b3261e;font-size:20px;line-height:1.45;flex:none}

/* Data page — "Engineered for Precision": two columns, text left / image right,
   text vertically centred to the image height; stacks (text first) on mobile. */
.bk-data__hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:stretch}
.bk-data__media{display:flex;align-items:center;justify-content:center;background:#e7e7ea;border-radius:24px;padding:clamp(18px,2.4vw,36px)}
.bk-data__media img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:10px}
.bk-data__title{margin-bottom:30px}
.bk-data__accent{color:#006e5c} /* darker teal for text on the light page bg = ~5.4:1 (WCAG AA); brand teal fails at ~2:1 */
.bk-data__feat{border-left:3px solid var(--bk-color-primary);padding-left:18px;margin-top:26px}
.bk-data__feat:first-child{margin-top:0}
@media(max-width:900px){
  .bk-data__hero{grid-template-columns:1fr;gap:32px}
  .bk-data__text{order:1}
  .bk-data__media{order:2}
  .bk-data__media img{height:auto}
}
.bk-data__feat h2{font-size:20px;font-weight:700;color:#14171b;margin:0 0 8px}
.bk-data__feat p{color:#51555b;font-size:18px;line-height:1.6;margin:0;max-width:none}
@media(max-width:900px){.bk-data .bk-dpage__hero .bk-dpage__split{grid-template-columns:1fr}}
/* Data page closing — frame the "Recovery goals" phone in the same gray card as the
   hero dashboard, contained (uncropped) and sized for a balanced portrait. */
.bk-data .bk-dpage__phone{display:flex;align-items:center;justify-content:center;background:#e7e7ea;border-radius:24px;padding:clamp(18px,2.4vw,34px)}
.bk-data .bk-dpage__phone img{width:auto;max-width:100%;max-height:520px;height:auto;margin:0;object-fit:contain;border-radius:10px}
@media(max-width:900px){.bk-data .bk-dpage__phone img{max-height:440px}}

/* Product page — text left / product shot right, balanced columns;
   headline given extra line spacing between its sentences. */
.bk-prod .bk-dpage__hero .bk-dpage__split{grid-template-columns:1.05fr .95fr;gap:56px}
.bk-prod .bk-dpage__title{line-height:1.32}
@media(max-width:900px){.bk-prod .bk-dpage__hero .bk-dpage__split{grid-template-columns:1fr}}
/* Product page — feature list (teal markers, brand style). */
.bk-prod__benefits{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:14px}
.bk-prod__benefits li{position:relative;padding-left:18px;color:#3a3f45;font-size:19px;line-height:1.55}
.bk-prod__benefits li::before{content:"";position:absolute;left:0;top:.2em;width:4px;height:1.05em;border-radius:2px;background:var(--bk-color-primary)}
[dir="rtl"] .bk-prod__benefits li{padding-left:0;padding-right:18px}
[dir="rtl"] .bk-prod__benefits li::before{left:auto;right:0}

/* careers page */
.bk-career__hero{display:block;max-width:780px}
.bk-career__eyebrow{display:inline-block;color:var(--bk-color-accent);text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:700;margin-bottom:14px}
.bk-career__cta{margin-top:30px}
.bk-career__why{padding:10px 0 50px}
.bk-career__h2{font-size:clamp(24px,3vw,38px);font-weight:800;color:#14171b;margin-bottom:30px}
.bk-career__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.bk-career__card{background:#fff;border-radius:16px;padding:26px;border:1px solid rgba(20,23,27,.08)}
.bk-career__card h3{font-size:20px;font-weight:700;color:#14171b;margin:0 0 8px}
.bk-career__card p{color:#51555b;font-size:17px;line-height:1.6;margin:0}
.bk-career__roles{padding:30px 0 20px}
.bk-career__group{margin-bottom:36px}
.bk-career__dept{font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:var(--bk-color-accent);font-weight:700;margin:0 0 6px}
.bk-career__role{display:flex;align-items:center;gap:18px;padding:20px 4px;border-top:1px solid rgba(20,23,27,.12);color:#14171b;flex-wrap:wrap}
.bk-career__group .bk-career__role:last-child{border-bottom:1px solid rgba(20,23,27,.12)}
.bk-career__role-t{font-size:20px;font-weight:600;flex:1 1 260px}
.bk-career__role-m{color:#6a6e74;font-size:15px}
.bk-career__apply{color:var(--bk-color-primary);font-weight:600;font-size:15px;white-space:nowrap}
.bk-career__role:hover .bk-career__apply{text-decoration:underline}
.bk-career__role:hover .bk-career__role-t{color:var(--bk-color-primary)}
@media(max-width:900px){.bk-dpage__split{grid-template-columns:1fr;gap:28px}.bk-dpage__band{grid-template-columns:1fr}.bk-dpage__hero{padding:120px 0 56px}.bk-dpage__close{padding:60px 0 80px}}
