/* ==========================================================================
   Buraq Tech LLC — custom layer on Bootstrap 5.3
   Brand colours sampled from the official logo:  Blue #001E96 · Red #EA0000
   Design width: 1440px
   ========================================================================== */

:root{
  /* --- Brand (logo-accurate) --- */
  --bt-blue:#001E96;
  --bt-blue-600:#0A2AB8;
  --bt-blue-400:#3A55D8;
  --bt-blue-100:#DCE2FA;
  --bt-blue-050:#EEF1FD;

  --bt-red:#EA0000;
  --bt-red-700:#C10000;      /* interactive: white text passes AA */
  --bt-red-050:#FDECEC;

  --bt-navy:#000F3D;
  --bt-navy-900:#000616;

  --bt-white:#FFFFFF;
  --bt-gray-50:#F6F7FA;
  --bt-gray-100:#EDEFF5;
  --bt-gray-200:#E1E5EF;
  --bt-gray-400:#98A2BA;
  --bt-gray-500:#6B7690;

  --bt-ink:#0B1020;
  --bt-body:#4A5468;

  /* --- Type --- */
  --bt-font-head:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;
  --bt-font-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;

  /* Type scale */
  --fs-display:clamp(2.4rem,5.9vw,4.75rem);
  --fs-h2:clamp(1.65rem,3.1vw,2.5rem);
  --fs-h3:clamp(1.2rem,2vw,1.55rem);
  --fs-lead:clamp(1.0625rem,1.35vw,1.1875rem);
  --fs-body:1rem;
  --fs-sm:.9375rem;
  --fs-xs:.8125rem;
  --fs-micro:.6875rem;

  /* Spacing rhythm (8px base) */
  --s1:.5rem; --s2:.75rem; --s3:1rem; --s4:1.5rem;
  --s5:2rem; --s6:2.5rem; --s7:3.5rem; --s8:5rem; --s9:7rem;

  /* --- Shape --- */
  --bt-radius:16px;
  --bt-radius-lg:24px;
  --bt-pill:999px;

  --bt-shadow-nav:0 12px 32px rgba(0,15,61,.10),0 2px 8px rgba(0,15,61,.06);
  --bt-shadow-nav-stuck:0 16px 40px rgba(0,15,61,.16),0 2px 8px rgba(0,15,61,.07);

  --bt-ease:.28s cubic-bezier(.4,0,.2,1);
}

:root{
  --bs-body-font-family:var(--bt-font-body);
  --bs-body-color:#4A5468;
  --bs-body-line-height:1.7;
  --bs-link-color:#001E96;
  --bs-link-hover-color:#C10000;
}

*,*::before,*::after{box-sizing:border-box}

body{
  font-family:var(--bt-font-body);
  font-size:var(--fs-body);
  color:var(--bt-body);
  background:var(--bt-white);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  font-feature-settings:"kern" 1,"liga" 1,"cv11" 1;
  overflow-x:hidden;
}

h1,h2,h3,h4,h5,h6{
  font-family:var(--bt-font-head);
  font-weight:600;
  color:var(--bt-ink);
  letter-spacing:-.025em;
  line-height:1.15;
  margin:0;
}

p{margin:0}
a{text-decoration:none}
img,svg{max-width:100%;height:auto}
ul{margin:0;padding:0;list-style:none}

.bt-skip{
  position:absolute;left:-9999px;top:0;z-index:2000;
  background:var(--bt-red-700);color:#fff;padding:.75rem 1.25rem;border-radius:0 0 12px 0;
}
.bt-skip:focus{left:0;color:#fff}

:focus-visible{outline:3px solid var(--bt-blue-400);outline-offset:3px;border-radius:6px}
::selection{background:var(--bt-blue);color:#fff}

/* ==========================================================================
   NAVBAR — floating pill
   ========================================================================== */
.bt-nav-wrap{
  position:fixed;inset:0 0 auto 0;z-index:1030;
  padding:24px 0;pointer-events:none;
  transition:padding var(--bt-ease);
}
.bt-nav-wrap > .container{pointer-events:auto}

.bt-nav{
  display:flex;align-items:center;gap:var(--s4);
  background:var(--bt-white);
  border-radius:var(--bt-pill);
  box-shadow:var(--bt-shadow-nav);
  padding:.5rem .5rem .5rem 1.75rem;
  min-height:68px;
  transition:box-shadow var(--bt-ease);
}
.bt-nav-wrap.is-stuck{padding:12px 0}
.bt-nav-wrap.is-stuck .bt-nav{box-shadow:var(--bt-shadow-nav-stuck)}

.bt-logo{display:inline-flex;align-items:center;flex:0 0 auto;line-height:0}
.bt-logo img{height:34px;width:auto;display:block}

.bt-menu{display:flex;align-items:center;gap:.15rem;margin:0 auto 0 1.25rem}
.bt-menu > li > a{
  display:block;padding:.6rem .95rem;border-radius:var(--bt-pill);
  font-size:var(--fs-sm);font-weight:500;color:#39425A;white-space:nowrap;
  transition:color var(--bt-ease),background var(--bt-ease);
}
.bt-menu > li > a:hover{color:var(--bt-blue);background:var(--bt-gray-50)}
.bt-menu > li.is-active > a{color:var(--bt-blue);font-weight:500}
.bt-menu > li.is-active > a::after{
  content:"";display:block;width:18px;height:2px;border-radius:2px;
  background:var(--bt-red);margin:.3rem auto -.3rem;
}

.bt-cta{
  display:inline-flex;align-items:center;gap:var(--s1);flex:0 0 auto;
  background:var(--bt-blue);color:#fff;border:0;line-height:1;
  font-family:var(--bt-font-head);font-weight:500;font-size:var(--fs-sm);
  padding:.8rem 1.4rem;border-radius:var(--bt-pill);
  transition:background var(--bt-ease),transform var(--bt-ease),box-shadow var(--bt-ease);
}
.bt-cta:hover{background:var(--bt-red-700);color:#fff;transform:translateY(-1px);box-shadow:0 10px 26px rgba(193,0,0,.30)}

.bt-toggle{
  display:none;width:48px;height:48px;flex:0 0 auto;margin-left:auto;
  border:0;border-radius:var(--bt-pill);background:var(--bt-gray-50);
  color:var(--bt-blue);cursor:pointer;align-items:center;justify-content:center;
  transition:background var(--bt-ease);
}
.bt-toggle:hover{background:var(--bt-gray-100)}
.bt-toggle span{display:block;width:18px;height:2px;border-radius:2px;background:currentColor;position:relative;transition:all var(--bt-ease)}
.bt-toggle span::before,.bt-toggle span::after{content:"";position:absolute;left:0;width:18px;height:2px;border-radius:2px;background:currentColor;transition:all var(--bt-ease)}
.bt-toggle span::before{top:-6px}
.bt-toggle span::after{top:6px}
.bt-toggle[aria-expanded="true"] span{background:transparent}
.bt-toggle[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
.bt-toggle[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}

.bt-mobile{margin-top:var(--s2)}
.bt-mobile__inner{background:#fff;border-radius:var(--bt-radius-lg);box-shadow:var(--bt-shadow-nav-stuck);padding:var(--s3)}
.bt-mobile ul{margin-bottom:var(--s2)}
.bt-mobile ul a{display:block;padding:.85rem 1rem;border-radius:12px;font-size:1rem;font-weight:500;color:#39425A}
.bt-mobile ul a:hover{background:var(--bt-gray-50);color:var(--bt-blue)}
.bt-mobile li.is-active a{color:var(--bt-blue);font-weight:600;background:var(--bt-gray-50)}
.bt-mobile .bt-cta{width:100%;justify-content:center}

@media (max-width:991.98px){
  .bt-menu{display:none}
  .bt-nav > .bt-cta{display:none}
  .bt-toggle{display:inline-flex}
  .bt-nav{padding:.5rem .5rem .5rem 1.15rem;min-height:62px;gap:var(--s2)}
  .bt-logo img{height:28px}
}

/* ==========================================================================
   HERO — centred, typographic, with capability marquee
   ========================================================================== */
.bt-hero{
  position:relative;
  background:linear-gradient(180deg,#F4F7FE 0%,#FAFBFF 52%,#FFFFFF 100%);
  padding-top:clamp(8.5rem,13vw,11.5rem);
  overflow:hidden;
  isolation:isolate;
  text-align:center;
}

/* soft brand blobs, left and right */
.bt-blob{position:absolute;z-index:0;pointer-events:none;border-radius:50%}
.bt-blob--l{
  width:640px;height:640px;top:4%;left:-300px;
  background:radial-gradient(circle,rgba(0,30,150,.12) 0%,rgba(0,30,150,.04) 42%,transparent 68%);
}
.bt-blob--r{
  width:600px;height:600px;top:12%;right:-280px;
  background:radial-gradient(circle,rgba(234,0,0,.085) 0%,rgba(234,0,0,.03) 42%,transparent 68%);
}
.bt-blob--c{
  width:900px;height:520px;top:-280px;left:50%;transform:translateX(-50%);
  background:radial-gradient(circle,rgba(58,85,216,.10) 0%,transparent 66%);
}

/* dot grid */
.bt-dots{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(circle,rgba(0,30,150,.16) 1px,transparent 1px);
  background-size:26px 26px;
  opacity:.34;
  mask-image:radial-gradient(ellipse 62% 55% at 50% 32%,transparent 34%,#000 78%);
  -webkit-mask-image:radial-gradient(ellipse 62% 55% at 50% 32%,transparent 34%,#000 78%);
}

.bt-hero__inner{position:relative;z-index:1;padding-bottom:clamp(3.5rem,6vw,5.5rem)}

/* --- Members badge --- */
.bt-badge{
  display:inline-flex;align-items:center;gap:.7rem;
  background:var(--bt-white);
  border:1px solid var(--bt-gray-200);
  border-radius:var(--bt-pill);
  padding:.4rem 1.1rem .4rem .5rem;
  box-shadow:0 6px 20px rgba(0,15,61,.07);
  margin-bottom:clamp(var(--s4),3vw,var(--s6));
}
.bt-badge__avatars{display:flex;align-items:center;flex:0 0 auto}
.bt-badge__avatars span{
  width:30px;height:30px;border-radius:50%;margin-left:-9px;
  display:grid;place-items:center;flex:0 0 auto;
  font-family:var(--bt-font-head);font-size:.625rem;font-weight:600;color:#fff;
  border:2px solid #fff;background:var(--bt-blue);
}
.bt-badge__avatars span:first-child{margin-left:0}
.bt-badge__avatars span:nth-child(2){background:#1B34AE}
.bt-badge__avatars span:nth-child(3){background:#2B44C6}
.bt-badge__avatars span:nth-child(4){background:var(--bt-red-700)}
.bt-badge__text{
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;
  color:var(--bt-body);letter-spacing:-.01em;white-space:nowrap;
}
.bt-badge__text b{color:var(--bt-blue);font-weight:600}

/* --- Display headline --- */
.bt-display{
  font-family:var(--bt-font-head);
  font-size:var(--fs-display);
  font-weight:600;
  line-height:1.06;
  letter-spacing:-.028em;
  color:var(--bt-blue);
  max-width:24ch;
  margin:0 auto clamp(var(--s4),2.5vw,var(--s5));
  text-wrap:balance;
}
.bt-display .red{color:var(--bt-red);font-weight:600}
.bt-display .kw{color:var(--bt-blue)}

/* --- Lead --- */
.bt-lead{
  font-size:var(--fs-lead);
  line-height:1.72;
  color:var(--bt-body);
  max-width:56ch;
  margin:0 auto clamp(var(--s5),3.5vw,var(--s6));
  text-wrap:pretty;
}
.bt-lead strong{color:var(--bt-ink);font-weight:600}

/* --- Primary CTA --- */
.bt-btn{
  display:inline-flex;align-items:center;gap:.55rem;
  font-family:var(--bt-font-head);font-weight:500;font-size:var(--fs-sm);line-height:1;
  padding:.85rem 1.6rem;border-radius:var(--bt-pill);border:2px solid transparent;
  cursor:pointer;white-space:nowrap;transition:all var(--bt-ease);
}
.bt-btn--primary{
  background:var(--bt-red-700);color:#fff;
  box-shadow:0 8px 22px rgba(193,0,0,.22);
}
.bt-btn--primary:hover{
  background:var(--bt-red);color:#fff;transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(234,0,0,.28);
}
.bt-btn__ico{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.2);flex:0 0 auto}

.bt-btn--quiet{background:transparent;color:var(--bt-blue);border-color:var(--bt-gray-200);padding:.85rem 1.5rem}
.bt-btn--quiet:hover{border-color:var(--bt-blue);color:var(--bt-blue);background:var(--bt-white);transform:translateY(-2px)}

/* --- Note + hand-drawn arrow --- */
.bt-note{
  position:relative;
  display:inline-flex;align-items:center;gap:.5rem;
  margin-top:clamp(var(--s5),3.5vw,var(--s6));
  font-size:var(--fs-xs);font-weight:500;color:var(--bt-gray-500);
}
.bt-note svg.tick{color:var(--bt-red);flex:0 0 auto}
.bt-note__arrow{
  position:absolute;left:-84px;top:-26px;
  width:76px;height:58px;color:var(--bt-red);opacity:.75;
  pointer-events:none;
}
.bt-note__arrow path{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

/* --- Capability marquee --- */
.bt-marquee{
  position:relative;z-index:1;
  border-top:1px solid var(--bt-gray-200);
  border-bottom:1px solid var(--bt-gray-200);
  background:var(--bt-white);
  overflow:hidden;
  padding:1.35rem 0;
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
}
.bt-marquee__track{
  display:flex;width:max-content;
  animation:btMarquee 30s linear infinite;
  will-change:transform;
}
.bt-marquee ul{display:flex;align-items:center;gap:0;padding:0;flex:0 0 auto}
.bt-marquee li{
  display:flex;align-items:center;gap:2.25rem;padding-right:2.25rem;
  font-family:var(--bt-font-head);font-size:1rem;font-weight:500;
  letter-spacing:-.01em;color:var(--bt-blue);white-space:nowrap;
}
.bt-marquee li::after{
  content:"";width:6px;height:6px;flex:0 0 auto;
  background:var(--bt-red);transform:rotate(45deg);border-radius:1px;
}
@keyframes btMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.bt-marquee:hover .bt-marquee__track{animation-play-state:paused}

/* --- Entrance --- */
.bt-up{opacity:0;transform:translateY(20px);animation:btUp .85s cubic-bezier(.2,.7,.3,1) forwards}
.bt-up--1{animation-delay:.04s}
.bt-up--2{animation-delay:.12s}
.bt-up--3{animation-delay:.22s}
.bt-up--4{animation-delay:.32s}
.bt-up--5{animation-delay:.42s}
@keyframes btUp{to{opacity:1;transform:none}}

/* ---------- Hero responsive ---------- */
@media (max-width:1199.98px){
  .bt-blob--l{left:-380px}
  .bt-blob--r{right:-360px}
}
@media (max-width:991.98px){
  .bt-hero{padding-top:clamp(7rem,18vw,9rem)}
  .bt-display{line-height:1.02;letter-spacing:-.035em;max-width:100%}
  .bt-dots{opacity:.35}
}
@media (max-width:767.98px){
  .bt-note__arrow{display:none}
}
@media (max-width:575.98px){
  .bt-hero{padding-top:7rem}
  .bt-display{letter-spacing:-.03em}
  .bt-lead{font-size:1rem}
  .bt-btn{width:100%;justify-content:center;padding:1.05rem 1.5rem}
  .bt-badge{padding:.35rem .9rem .35rem .4rem}
  .bt-badge__text{font-size:.75rem;white-space:normal;text-align:left}
  .bt-badge__avatars span{width:26px;height:26px}
  .bt-marquee li{font-size:.9375rem;gap:1.5rem;padding-right:1.5rem}
  .bt-blob--l,.bt-blob--r{width:420px;height:420px}
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .bt-up{opacity:1;transform:none}
}

/* ==========================================================================
   SECTION SHELL (shared by all inner sections)
   ========================================================================== */
.bt-section{padding-block:clamp(3.5rem,7vw,6.5rem);position:relative}
.bt-section--tint{background:#F4F6FD}

.bt-sec-head{max-width:52rem;margin:0 auto clamp(var(--s6),5vw,var(--s7));text-align:center}
.bt-pill{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:var(--bt-blue);
  background:var(--bt-white);border:1px solid rgba(0,30,150,.14);
  padding:.45rem 1.05rem;border-radius:var(--bt-pill);
  margin-bottom:var(--s4);
}
.bt-pill i{width:6px;height:6px;border-radius:50%;background:var(--bt-red);flex:0 0 auto}

.bt-h2{
  font-family:var(--bt-font-head);
  font-size:var(--fs-h2);
  font-weight:600;
  line-height:1.2;
  letter-spacing:-.02em;
  color:var(--bt-blue);
  margin:0 0 var(--s3);
  text-wrap:balance;
}
.bt-h2 .red{color:var(--bt-red)}
.bt-sec-sub{
  font-size:var(--fs-sm);line-height:1.75;color:var(--bt-gray-500);
  max-width:40rem;margin:0 auto;text-wrap:pretty;
}

/* ==========================================================================
   SERVICE CARDS
   ========================================================================== */
.bt-card{
  height:100%;
  display:flex;flex-direction:column;
  background:var(--bt-white);
  border:1px solid rgba(0,30,150,.07);
  border-radius:18px;
  padding:1.5rem;
  box-shadow:0 2px 8px rgba(0,15,61,.04);
  transition:transform var(--bt-ease),box-shadow var(--bt-ease),border-color var(--bt-ease);
}
.bt-card:hover{
  transform:translateY(-5px);
  border-color:rgba(0,30,150,.14);
  box-shadow:0 18px 40px rgba(0,15,61,.10);
}

.bt-card__ico{
  width:46px;height:46px;flex:0 0 auto;
  display:grid;place-items:center;
  border-radius:13px;
  background:var(--bt-blue-050);
  color:var(--bt-blue);
  margin-bottom:2.25rem;
  transition:background var(--bt-ease),color var(--bt-ease);
}
.bt-card:hover .bt-card__ico{background:var(--bt-blue);color:#fff}

.bt-card__title{
  font-family:var(--bt-font-head);font-size:1rem;font-weight:600;
  line-height:1.35;letter-spacing:-.015em;color:var(--bt-ink);
  margin:0 0 .5rem;
}
.bt-card__title a{color:inherit}
.bt-card__title a:hover{color:var(--bt-blue)}
.bt-card__text{
  font-size:var(--fs-xs);line-height:1.65;color:var(--bt-gray-500);
  margin:0 0 1.5rem;flex:1 1 auto;
}
.bt-card__more{
  display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;
  color:var(--bt-blue);
}
.bt-card__more svg{transition:transform var(--bt-ease)}
.bt-card:hover .bt-card__more svg{transform:translateX(4px)}
.bt-card__more:hover{color:var(--bt-red)}

/* --- Featured (filled) card --- */
.bt-card--featured{
  background:var(--bt-blue);
  border-color:transparent;
  box-shadow:0 18px 44px rgba(0,30,150,.28);
}
.bt-card--featured:hover{box-shadow:0 24px 56px rgba(0,30,150,.34);border-color:transparent}
.bt-card--featured .bt-card__ico{background:rgba(255,255,255,.15);color:#fff}
.bt-card--featured:hover .bt-card__ico{background:#fff;color:var(--bt-blue)}
.bt-card--featured .bt-card__title,
.bt-card--featured .bt-card__title a{color:#fff}
.bt-card--featured .bt-card__text{color:rgba(255,255,255,.72)}
.bt-card--featured .bt-card__more{color:#fff}
.bt-card--featured .bt-card__more:hover{color:#fff}

/* --- Reveal on scroll --- */
.bt-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1)}
.bt-reveal.is-in{opacity:1;transform:none}

@media (max-width:575.98px){
  .bt-card{padding:1.35rem}
  .bt-card__ico{margin-bottom:1.5rem}
}
@media (prefers-reduced-motion:reduce){
  .bt-reveal{opacity:1;transform:none}
}

/* ==========================================================================
   WHY US — asymmetric split + numbered value rows
   ========================================================================== */
.bt-sec-head--left{max-width:34rem;margin-inline:0;text-align:left}

.bt-why__aside{position:sticky;top:120px}

.bt-vlist{display:grid;gap:0;border-top:1px solid rgba(0,30,150,.10)}
.bt-vrow{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:1.5rem;
  padding:1.75rem 0;
  border-bottom:1px solid rgba(0,30,150,.10);
  transition:padding-left var(--bt-ease);
}
.bt-vrow:hover{padding-left:.5rem}
.bt-vnum{
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:600;
  letter-spacing:.12em;color:var(--bt-red);
  padding-top:.35rem;min-width:1.75rem;
}
.bt-vrow h3{
  font-family:var(--bt-font-head);font-size:1.0625rem;font-weight:600;
  line-height:1.4;letter-spacing:-.015em;color:var(--bt-ink);margin:0 0 .45rem;
}
.bt-vrow p{font-size:var(--fs-sm);line-height:1.7;color:var(--bt-gray-500);margin:0}

/* --- Proof strip --- */
.bt-proof{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  background:var(--bt-white);
  border:1px solid rgba(0,30,150,.09);
  border-radius:18px;
  box-shadow:0 2px 8px rgba(0,15,61,.04);
  margin-top:clamp(var(--s6),5vw,var(--s7));
  overflow:hidden;
}
.bt-proof__cell{
  display:flex;align-items:center;gap:.85rem;
  padding:1.4rem 1.5rem;
  border-right:1px solid rgba(0,30,150,.08);
}
.bt-proof__cell:last-child{border-right:0}
.bt-proof__ico{
  width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;
  border-radius:11px;background:var(--bt-blue-050);color:var(--bt-blue);
}
.bt-proof__label{
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:600;
  color:var(--bt-ink);line-height:1.35;letter-spacing:-.01em;display:block;
}
.bt-proof__note{font-size:var(--fs-micro);color:var(--bt-gray-400);line-height:1.4;display:block;margin-top:.15rem}

@media (max-width:991.98px){
  .bt-why__aside{position:static}
  .bt-sec-head--left{max-width:100%;margin-bottom:var(--s5)}
  .bt-proof{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bt-proof__cell:nth-child(2){border-right:0}
  .bt-proof__cell:nth-child(1),.bt-proof__cell:nth-child(2){border-bottom:1px solid rgba(0,30,150,.08)}
}
@media (max-width:575.98px){
  .bt-proof{grid-template-columns:1fr}
  .bt-proof__cell{border-right:0;border-bottom:1px solid rgba(0,30,150,.08)}
  .bt-proof__cell:last-child{border-bottom:0}
  .bt-vrow{gap:1rem;padding:1.4rem 0}
}

/* ==========================================================================
   FAQ — native details/summary accordion (no JS required)
   ========================================================================== */
.bt-faq{max-width:48rem;margin-inline:auto}
.bt-faq details{border-bottom:1px solid rgba(0,30,150,.10)}
.bt-faq details:first-of-type{border-top:1px solid rgba(0,30,150,.10)}

.bt-faq summary{
  display:flex;align-items:center;gap:1.5rem;
  padding:1.35rem .25rem;
  cursor:pointer;list-style:none;
  transition:color var(--bt-ease);
}
.bt-faq summary::-webkit-details-marker{display:none}
.bt-faq summary::marker{content:""}

/* the question text — scoped to its own class so it cannot match the toggle */
.bt-faq__q{
  flex:1 1 auto;min-width:0;
  font-family:var(--bt-font-head);font-size:1.0625rem;font-weight:600;
  line-height:1.45;letter-spacing:-.015em;color:var(--bt-ink);
  transition:color var(--bt-ease);
}
.bt-faq summary:hover .bt-faq__q,
.bt-faq details[open] .bt-faq__q{color:var(--bt-blue)}

/* the +/- toggle — fixed box, right aligned */
.bt-faq__sign{
  flex:0 0 30px;
  width:30px;height:30px;min-width:30px;
  border-radius:9px;
  background:var(--bt-blue-050);color:var(--bt-blue);
  display:grid;place-items:center;
  position:relative;
  transition:background var(--bt-ease),color var(--bt-ease),transform var(--bt-ease);
}
.bt-faq__sign::before,
.bt-faq__sign::after{
  content:"";position:absolute;
  top:50%;left:50%;
  background:currentColor;border-radius:2px;
  transition:opacity var(--bt-ease),transform var(--bt-ease);
}
.bt-faq__sign::before{width:11px;height:2px;transform:translate(-50%,-50%)}
.bt-faq__sign::after{width:2px;height:11px;transform:translate(-50%,-50%)}
.bt-faq summary:hover .bt-faq__sign{background:var(--bt-blue);color:#fff}
.bt-faq details[open] .bt-faq__sign{background:var(--bt-blue);color:#fff}
.bt-faq details[open] .bt-faq__sign::after{opacity:0;transform:translate(-50%,-50%) rotate(90deg)}

.bt-faq__body{
  padding:0 calc(30px + 1.5rem) 1.5rem .25rem;
  font-size:var(--fs-sm);line-height:1.75;color:var(--bt-gray-500);
}
.bt-faq__body p{margin:0 0 .85rem}
.bt-faq__body p:last-child{margin-bottom:0}
.bt-faq__body a{color:var(--bt-blue);border-bottom:1px solid rgba(0,30,150,.25)}
.bt-faq__body a:hover{color:var(--bt-red);border-bottom-color:var(--bt-red)}

.bt-faq__more{
  display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;
  margin-top:var(--s5);font-size:var(--fs-sm);color:var(--bt-gray-500);
}
.bt-faq__more a{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--bt-font-head);font-weight:500;color:var(--bt-blue)}
.bt-faq__more a svg{transition:transform var(--bt-ease)}
.bt-faq__more a:hover{color:var(--bt-red)}
.bt-faq__more a:hover svg{transform:translateX(3px)}

@media (max-width:575.98px){
  .bt-faq summary{gap:1rem;padding:1.15rem .15rem}
  .bt-faq__q{font-size:1rem}
  .bt-faq__body{padding-right:calc(30px + 1rem)}
}

/* shared section footer (centred CTA under a section) */
.bt-sec-foot{display:flex;justify-content:center;margin-top:clamp(var(--s6),5vw,var(--s7))}

/* ==========================================================================
   PROCESS — zigzag timeline
   ========================================================================== */
.bt-tl{position:relative;max-width:60rem;margin-inline:auto}
.bt-tl::before{
  content:"";position:absolute;top:0;bottom:0;left:50%;width:0;
  border-left:2px dashed rgba(0,30,150,.16);transform:translateX(-1px);
}
.bt-tl__row{
  position:relative;
  display:grid;grid-template-columns:1fr 64px 1fr;
  align-items:center;
  margin-bottom:1rem;
}
.bt-tl__row:last-child{margin-bottom:0}
.bt-tl__node{
  grid-column:2;justify-self:center;
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;position:relative;z-index:2;
  background:var(--bt-white);
  border:2px solid rgba(0,30,150,.14);
  color:var(--bt-blue);
  font-family:var(--bt-font-head);font-size:.8125rem;font-weight:600;
  transition:all var(--bt-ease);
}
.bt-tl__card{
  display:flex;align-items:flex-start;gap:1.15rem;
  padding:1.5rem;border-radius:18px;
  border:1px solid transparent;
  transition:background var(--bt-ease),border-color var(--bt-ease),box-shadow var(--bt-ease);
}
.bt-tl__row:nth-child(odd) .bt-tl__card{grid-column:3;text-align:left}
.bt-tl__row:nth-child(even) .bt-tl__card{grid-column:1;flex-direction:row-reverse;text-align:right}
.bt-tl__row:hover .bt-tl__card{
  background:var(--bt-white);
  border-color:rgba(0,30,150,.09);
  box-shadow:0 14px 34px rgba(0,15,61,.07);
}
.bt-tl__row:hover .bt-tl__node{background:var(--bt-blue);border-color:var(--bt-blue);color:#fff}
.bt-tl__ico{
  width:46px;height:46px;flex:0 0 auto;border-radius:13px;
  display:grid;place-items:center;
  background:var(--bt-blue-050);color:var(--bt-blue);
  transition:background var(--bt-ease),color var(--bt-ease);
}
.bt-tl__row:hover .bt-tl__ico{background:var(--bt-blue);color:#fff}
.bt-tl__card h3{
  font-family:var(--bt-font-head);font-size:1.0625rem;font-weight:600;
  line-height:1.35;letter-spacing:-.015em;color:var(--bt-ink);margin:0 0 .4rem;
}
.bt-tl__card p{font-size:var(--fs-xs);line-height:1.7;color:var(--bt-gray-500);margin:0 0 .65rem}
.bt-tl__tag{
  display:inline-flex;align-items:flex-start;gap:.35rem;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  line-height:1.45;color:var(--bt-blue);
}
.bt-tl__row:nth-child(even) .bt-tl__tag{flex-direction:row-reverse}
.bt-tl__tag svg{flex:0 0 auto;color:var(--bt-red);margin-top:.1rem}

@media (max-width:767.98px){
  .bt-tl::before{left:22px}
  .bt-tl__row{grid-template-columns:44px 1fr;gap:1rem;margin-bottom:.5rem}
  .bt-tl__node{grid-column:1;justify-self:start}
  .bt-tl__row:nth-child(odd) .bt-tl__card,
  .bt-tl__row:nth-child(even) .bt-tl__card{
    grid-column:2;flex-direction:row;text-align:left;padding:1rem 0 1.5rem;
  }
  .bt-tl__row:nth-child(even) .bt-tl__tag{flex-direction:row}
  .bt-tl__row:hover .bt-tl__card{background:transparent;border-color:transparent;box-shadow:none}
}

/* ==========================================================================
   CASE STUDIES — carousel
   ========================================================================== */
.bt-cases{position:relative}
.bt-cases__rail{
  display:flex;overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;-ms-overflow-style:none;gap:1.5rem;
}
.bt-cases__rail::-webkit-scrollbar{display:none}
.bt-case{
  flex:0 0 100%;scroll-snap-align:center;
  display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:0;
  background:var(--bt-white);
  border:1px solid rgba(0,30,150,.08);
  border-radius:24px;overflow:hidden;
  box-shadow:0 4px 16px rgba(0,15,61,.05);
}
.bt-case__visual{
  position:relative;min-height:340px;
  display:grid;place-items:center;overflow:hidden;
}
.bt-case__visual::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px);
}
.bt-case__visual span{
  position:relative;z-index:1;
  font-family:var(--bt-font-head);font-size:1.125rem;font-weight:600;
  color:rgba(255,255,255,.92);letter-spacing:-.015em;text-align:center;padding:1.5rem;
}
.bt-case__v1{background:linear-gradient(140deg,#00092A,#001E96)}
.bt-case__v2{background:linear-gradient(140deg,#001347,#2B44C6)}
.bt-case__v3{background:linear-gradient(140deg,#5C0A0A,#EA0000)}
.bt-case__body{padding:clamp(1.75rem,3vw,2.5rem);display:flex;flex-direction:column}
.bt-case__client{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--bt-gray-400);
  margin-bottom:.9rem;
}
.bt-case__client i{width:6px;height:6px;border-radius:50%;background:var(--bt-red);flex:0 0 auto}
.bt-case__body h3{
  font-family:var(--bt-font-head);font-size:clamp(1.25rem,2vw,1.6rem);font-weight:600;
  line-height:1.3;letter-spacing:-.02em;color:var(--bt-ink);margin:0 0 .75rem;
}
.bt-case__body p{font-size:var(--fs-sm);line-height:1.7;color:var(--bt-gray-500);margin:0 0 1.25rem}
.bt-case__stack{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem}
.bt-case__stack li{
  font-size:var(--fs-micro);font-weight:500;padding:.3rem .65rem;border-radius:var(--bt-pill);
  background:var(--bt-blue-050);color:var(--bt-blue);
}
.bt-case__metrics{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;
  padding-top:1.35rem;margin-top:auto;
  border-top:1px solid rgba(0,30,150,.09);
}
.bt-case__val{
  display:block;
  font-family:var(--bt-font-head);font-size:clamp(1.3rem,2.2vw,1.75rem);font-weight:600;
  letter-spacing:-.03em;color:var(--bt-blue);line-height:1;
}
.bt-case__val.red{color:var(--bt-red)}
.bt-case__lab{
  display:block;font-size:var(--fs-micro);color:var(--bt-gray-400);
  line-height:1.4;margin-top:.35rem;
}
.bt-case__more{
  display:inline-flex;align-items:center;gap:.4rem;margin-top:1.35rem;
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;color:var(--bt-blue);
}
.bt-case__more svg{transition:transform var(--bt-ease)}
.bt-case__more:hover{color:var(--bt-red)}
.bt-case__more:hover svg{transform:translateX(4px)}

.bt-carousel-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:var(--s5)}
.bt-cbtn{
  width:44px;height:44px;flex:0 0 auto;border-radius:50%;
  border:1px solid rgba(0,30,150,.14);background:var(--bt-white);color:var(--bt-blue);
  display:grid;place-items:center;cursor:pointer;transition:all var(--bt-ease);
}
.bt-cbtn:hover{background:var(--bt-blue);border-color:var(--bt-blue);color:#fff}
.bt-cbtn:disabled{opacity:.35;cursor:default}
.bt-cbtn:disabled:hover{background:var(--bt-white);color:var(--bt-blue);border-color:rgba(0,30,150,.14)}
.bt-dots{display:flex;gap:.4rem}
.bt-dots button{
  width:8px;height:8px;padding:0;border:0;border-radius:var(--bt-pill);
  background:rgba(0,30,150,.18);cursor:pointer;transition:all var(--bt-ease);
}
.bt-dots button[aria-current="true"]{width:26px;background:var(--bt-red)}

@media (max-width:767.98px){
  .bt-case{grid-template-columns:1fr}
  .bt-case__visual{min-height:200px}
}

/* ==========================================================================
   PORTFOLIO grid
   ========================================================================== */
.bt-work{
  height:100%;display:flex;flex-direction:column;
  background:var(--bt-white);
  border:1px solid rgba(0,30,150,.08);
  border-radius:18px;overflow:hidden;
  box-shadow:0 2px 8px rgba(0,15,61,.04);
  transition:transform var(--bt-ease),box-shadow var(--bt-ease);
}
.bt-work:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(0,15,61,.10)}
.bt-work__media{
  position:relative;aspect-ratio:16/10;display:grid;place-items:center;overflow:hidden;
}
.bt-work__media::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px);
}
.bt-work__media span{
  position:relative;z-index:1;font-family:var(--bt-font-head);font-size:.9375rem;font-weight:600;
  color:rgba(255,255,255,.9);text-align:center;padding:1rem;
}
.bt-work__tag{
  position:absolute;z-index:2;top:.85rem;left:.85rem;
  background:rgba(255,255,255,.95);color:var(--bt-blue);
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;
  padding:.3rem .65rem;border-radius:var(--bt-pill);
}
.bt-work__body{padding:1.4rem;display:flex;flex-direction:column;flex:1 1 auto}
.bt-work__body h3{
  font-family:var(--bt-font-head);font-size:1rem;font-weight:600;
  line-height:1.35;letter-spacing:-.015em;color:var(--bt-ink);margin:0 0 .4rem;
}
.bt-work__body h3 a{color:inherit}
.bt-work__body h3 a:hover{color:var(--bt-blue)}
.bt-work__body p{font-size:var(--fs-xs);line-height:1.65;color:var(--bt-gray-500);margin:0 0 1rem;flex:1 1 auto}
.bt-work__res{
  display:flex;align-items:center;gap:.45rem;margin-top:auto;
  padding-top:.9rem;border-top:1px solid rgba(0,30,150,.08);
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;color:var(--bt-blue);
}
.bt-work__res svg{flex:0 0 auto;color:var(--bt-red)}

/* ==========================================================================
   PRICING — starting price per service
   ========================================================================== */
.bt-ptable{
  background:var(--bt-white);
  border:1px solid rgba(0,30,150,.09);
  border-radius:22px;
  box-shadow:0 2px 10px rgba(0,15,61,.05);
  overflow:hidden;
}
.bt-prow{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:1.5rem;
  padding:1.25rem 1.6rem;
  border-bottom:1px solid rgba(0,30,150,.08);
  transition:background var(--bt-ease);
}
.bt-prow:last-child{border-bottom:0}
.bt-prow:hover{background:#FAFBFE}
.bt-prow__main{display:flex;align-items:center;gap:1rem;min-width:0}
.bt-prow__ico{
  width:42px;height:42px;flex:0 0 auto;border-radius:12px;display:grid;place-items:center;
  background:var(--bt-blue-050);color:var(--bt-blue);
  transition:background var(--bt-ease),color var(--bt-ease);
}
.bt-prow:hover .bt-prow__ico{background:var(--bt-blue);color:#fff}
.bt-prow__name{
  font-family:var(--bt-font-head);font-size:1rem;font-weight:600;
  letter-spacing:-.015em;color:var(--bt-ink);margin:0 0 .15rem;line-height:1.3;
}
.bt-prow__name a{color:inherit}
.bt-prow__name a:hover{color:var(--bt-blue)}
.bt-prow__note{font-size:var(--fs-micro);color:var(--bt-gray-500);margin:0;line-height:1.5}
.bt-prow__price{text-align:right;white-space:nowrap}
.bt-prow__from{
  display:block;font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.1em;text-transform:uppercase;color:var(--bt-gray-400);margin-bottom:.1rem;
}
.bt-prow__amt{
  font-family:var(--bt-font-head);font-size:1.3rem;font-weight:600;
  letter-spacing:-.03em;color:var(--bt-blue);line-height:1;
}
.bt-prow__amt small{font-size:var(--fs-micro);font-weight:500;color:var(--bt-gray-400);letter-spacing:0}
.bt-prow__amt.scoped{font-size:.9375rem;color:var(--bt-gray-500);letter-spacing:-.01em}
.bt-prow__cta{
  display:inline-flex;align-items:center;gap:.4rem;flex:0 0 auto;
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;
  color:var(--bt-blue);border:0;background:none;cursor:pointer;padding:0;
}
.bt-prow__cta svg{transition:transform var(--bt-ease)}
.bt-prow:hover .bt-prow__cta svg{transform:translateX(4px)}
.bt-prow__cta:hover{color:var(--bt-red)}

.bt-pnote{
  display:flex;align-items:flex-start;gap:.6rem;justify-content:center;
  margin-top:var(--s4);font-size:var(--fs-xs);line-height:1.6;color:var(--bt-gray-500);
  text-align:center;max-width:52rem;margin-inline:auto;
}
.bt-pnote svg{flex:0 0 auto;color:var(--bt-red);margin-top:.15rem}

/* consultation card (shared with inner pages) */
.bt-consult{
  position:relative;overflow:hidden;
  margin-top:var(--s5);
  border-radius:22px;
  padding:clamp(1.75rem,3.5vw,2.5rem);
  background:linear-gradient(115deg,#EEF1FD 0%,#F7F1FB 42%,#FDECEC 100%);
  border:1px solid rgba(0,30,150,.08);
  display:flex;align-items:center;justify-content:center;gap:1.5rem;
  flex-wrap:wrap;text-align:center;
}
.bt-consult__who{display:flex;align-items:center;gap:.75rem}
.bt-consult__who span{
  width:42px;height:42px;border-radius:50%;flex:0 0 auto;
  display:grid;place-items:center;background:var(--bt-blue);color:#fff;
  font-family:var(--bt-font-head);font-size:.8125rem;font-weight:600;
}
.bt-consult__t{
  font-family:var(--bt-font-head);font-size:1.0625rem;font-weight:600;
  letter-spacing:-.015em;color:var(--bt-ink);margin:0 0 .2rem;
}
.bt-consult__s{font-size:var(--fs-xs);color:var(--bt-gray-500);margin:0}

/* price badge on the services page rows */
.bt-sprice{
  display:inline-flex;align-items:baseline;gap:.4rem;
  background:var(--bt-blue-050);border:1px solid rgba(0,30,150,.10);
  padding:.5rem 1rem;border-radius:var(--bt-pill);margin-bottom:1.25rem;
}
.bt-sprice em{
  font-style:normal;font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.1em;text-transform:uppercase;color:var(--bt-gray-400);
}
.bt-sprice b{
  font-family:var(--bt-font-head);font-size:1.0625rem;font-weight:600;
  letter-spacing:-.02em;color:var(--bt-blue);
}
.bt-sprice b small{font-size:var(--fs-micro);font-weight:500;color:var(--bt-gray-400);letter-spacing:0}

@media (max-width:767.98px){
  .bt-prow{grid-template-columns:1fr auto;gap:.9rem 1rem;padding:1.15rem 1.15rem}
  .bt-prow__main{grid-column:1/-1}
  .bt-prow__price{text-align:left}
  .bt-prow__cta{justify-self:end}
}

/* ==========================================================================
   BLOG
   ========================================================================== */
.bt-post{
  height:100%;display:flex;flex-direction:column;
  background:var(--bt-white);
  border:1px solid rgba(0,30,150,.08);
  border-radius:18px;overflow:hidden;
  box-shadow:0 2px 8px rgba(0,15,61,.04);
  transition:transform var(--bt-ease),box-shadow var(--bt-ease);
}
.bt-post:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(0,15,61,.10)}
.bt-post__media{position:relative;aspect-ratio:16/9;overflow:hidden}
.bt-post__media::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 1px,transparent 1px 22px);
}
.bt-post__m1{background:linear-gradient(135deg,#00092A,#2B44C6)}
.bt-post__m2{background:linear-gradient(135deg,#001E96,#00092A)}
.bt-post__m3{background:linear-gradient(135deg,#3A1247,#001E96)}
.bt-post__body{padding:1.4rem;display:flex;flex-direction:column;flex:1 1 auto}
.bt-post__meta{
  display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.06em;text-transform:uppercase;color:var(--bt-gray-400);
  margin-bottom:.7rem;
}
.bt-post__cat{color:var(--bt-blue)}
.bt-post__meta i{width:4px;height:4px;border-radius:50%;background:var(--bt-gray-400);flex:0 0 auto}
.bt-post__body h3{
  font-family:var(--bt-font-head);font-size:1rem;font-weight:600;
  line-height:1.4;letter-spacing:-.015em;color:var(--bt-ink);margin:0 0 .5rem;
}
.bt-post__body h3 a{color:inherit}
.bt-post__body h3 a:hover{color:var(--bt-blue)}
.bt-post__body p{font-size:var(--fs-xs);line-height:1.65;color:var(--bt-gray-500);margin:0 0 1rem;flex:1 1 auto}
.bt-post__more{
  display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;color:var(--bt-blue);
}
.bt-post__more svg{transition:transform var(--bt-ease)}
.bt-post:hover .bt-post__more svg{transform:translateX(4px)}

/* ==========================================================================
   NEWSLETTER
   ========================================================================== */
.bt-news{
  position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(160deg,var(--bt-navy-900) 0%,#00103C 55%,#001551 100%);
  padding-block:clamp(3rem,6vw,4.5rem);
}
.bt-news__stars{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(circle,rgba(255,255,255,.5) .9px,transparent 1px);
  background-size:40px 40px;opacity:.16;
  mask-image:radial-gradient(ellipse 70% 70% at 50% 40%,#000 10%,transparent 74%);
  -webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 40%,#000 10%,transparent 74%);
}
.bt-news__inner{
  position:relative;z-index:1;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(1.5rem,4vw,3rem);align-items:center;
}
.bt-news h2{
  font-family:var(--bt-font-head);font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:600;
  line-height:1.2;letter-spacing:-.025em;color:#fff;margin:0 0 .6rem;
}
.bt-news h2 .red{color:#FF5A5A}
.bt-news p{font-size:var(--fs-sm);line-height:1.7;color:#A9B6D9;margin:0;max-width:38ch}
.bt-form{display:flex;gap:.6rem;flex-wrap:wrap}
.bt-form input[type="email"]{
  flex:1 1 240px;min-width:0;
  padding:.9rem 1.15rem;border-radius:var(--bt-pill);
  border:1px solid rgba(180,196,255,.24);
  background:rgba(255,255,255,.07);color:#fff;
  font-family:var(--bt-font-body);font-size:var(--fs-sm);
  transition:border-color var(--bt-ease),background var(--bt-ease);
}
.bt-form input[type="email"]::placeholder{color:#7D8CB5}
.bt-form input[type="email"]:focus{
  outline:none;background:rgba(255,255,255,.11);
  border-color:rgba(180,196,255,.5);box-shadow:0 0 0 4px rgba(58,85,216,.18);
}
.bt-form input[type="email"][aria-invalid="true"]{border-color:#FF5A5A}
.bt-form button{flex:0 0 auto}
.bt-form__note{
  display:block;margin-top:.85rem;
  font-size:var(--fs-micro);color:#7D8CB5;line-height:1.5;
}
.bt-form__msg{
  display:none;margin-top:.85rem;align-items:center;gap:.45rem;
  font-size:var(--fs-xs);font-weight:500;color:#8FE3B0;
}
.bt-form__msg.is-on{display:flex}
.bt-form__msg svg{flex:0 0 auto}

@media (max-width:991.98px){
  .bt-news__inner{grid-template-columns:1fr;text-align:center}
  .bt-news p{margin-inline:auto}
  .bt-form{justify-content:center}
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.bt-footer{
  position:relative;overflow:hidden;
  background:var(--bt-navy-900);
  color:#A9B6D9;
  padding-top:clamp(3rem,6vw,4.5rem);
}
.bt-footer__grid{
  position:relative;z-index:1;
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1.15fr;
  gap:2.5rem;
}
.bt-footer__logo{display:inline-block;line-height:0;margin-bottom:1.15rem}
.bt-footer__logo img{height:34px;width:auto}
.bt-footer__about{font-size:var(--fs-xs);line-height:1.75;color:#8FA0CB;max-width:32ch;margin:0 0 1.5rem}
.bt-footer h3{
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:#fff;margin:0 0 1.15rem;
}
.bt-footer__links{display:grid;gap:.75rem}
.bt-footer__links a{font-size:var(--fs-xs);color:#A9B6D9;transition:color var(--bt-ease)}
.bt-footer__links a:hover{color:#fff}
.bt-footer__contact{display:grid;gap:1rem}
.bt-footer__contact li{display:flex;gap:.7rem;align-items:flex-start;font-size:var(--fs-xs);line-height:1.6}
.bt-footer__contact svg{flex:0 0 auto;color:var(--bt-red);margin-top:.15rem}
.bt-footer__contact a{color:#A9B6D9}
.bt-footer__contact a:hover{color:#fff}
.bt-socials{display:flex;gap:.5rem}
.bt-socials a{
  width:36px;height:36px;border-radius:10px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.07);color:#C6D2F5;
  border:1px solid rgba(180,196,255,.14);
  transition:all var(--bt-ease);
}
.bt-socials a:hover{background:var(--bt-red);border-color:var(--bt-red);color:#fff;transform:translateY(-2px)}
.bt-footer__bar{
  position:relative;z-index:1;
  margin-top:clamp(2.5rem,5vw,3.5rem);
  padding-block:1.5rem;
  border-top:1px solid rgba(180,196,255,.12);
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;flex-wrap:wrap;
  font-size:var(--fs-micro);color:#7D8CB5;
}
.bt-footer__bar ul{display:flex;gap:1.25rem;flex-wrap:wrap}
.bt-footer__bar a{color:#7D8CB5}
.bt-footer__bar a:hover{color:#fff}
.bt-footer__mark{
  position:absolute;z-index:0;pointer-events:none;
  bottom:-2%;left:50%;transform:translateX(-50%);
  width:min(96%,1180px);opacity:.045;
}

@media (max-width:991.98px){
  .bt-footer__grid{grid-template-columns:1fr 1fr;gap:2rem}
}
@media (max-width:575.98px){
  .bt-footer__grid{grid-template-columns:1fr}
  .bt-footer__bar{flex-direction:column;text-align:center}
  .bt-footer__bar ul{justify-content:center}
}

/* Fixed navbar is ~92px tall — anchored sections must clear it, otherwise
   jumping to #pricing hides the heading behind the bar. */
section[id],div[id]{scroll-margin-top:110px}
@media (max-width:991.98px){section[id],div[id]{scroll-margin-top:92px}}

/* ==========================================================================
   INNER PAGE HERO
   ========================================================================== */
.bt-phero{
  position:relative;overflow:hidden;isolation:isolate;text-align:center;
  background:linear-gradient(180deg,#EFF3FC 0%,#F8FAFE 62%,#FFFFFF 100%);
  padding-top:clamp(7.5rem,11vw,10rem);
  padding-bottom:clamp(2.5rem,5vw,4rem);
}
.bt-phero > .container{position:relative;z-index:1}
.bt-crumbs{
  display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;
  font-size:var(--fs-micro);color:var(--bt-gray-400);margin-bottom:var(--s4);
}
.bt-crumbs a{color:var(--bt-blue)}
.bt-crumbs a:hover{color:var(--bt-red)}
.bt-crumbs span[aria-current]{color:var(--bt-gray-500)}
.bt-crumbs i{opacity:.5;font-style:normal}
.bt-phero h1{
  font-family:var(--bt-font-head);
  font-size:clamp(2rem,4.4vw,3.4rem);font-weight:600;
  line-height:1.1;letter-spacing:-.032em;color:var(--bt-blue);
  margin:0 auto var(--s3);max-width:20ch;text-wrap:balance;
}
.bt-phero h1 .red{color:var(--bt-red)}
.bt-phero__sub{
  font-size:var(--fs-lead);line-height:1.72;color:var(--bt-body);
  max-width:54ch;margin:0 auto;text-wrap:pretty;
}
.bt-phero__cta{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;margin-top:var(--s5)}

/* ==========================================================================
   SERVICE DETAIL ROWS
   ========================================================================== */
.bt-srow{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(1.5rem,4vw,3.5rem);align-items:center;
  padding-block:clamp(2rem,4vw,3rem);
  border-bottom:1px solid rgba(0,30,150,.09);
}
.bt-srow:last-child{border-bottom:0}
.bt-srow:nth-child(even) .bt-srow__media{order:-1}
.bt-srow__ico{
  width:52px;height:52px;border-radius:15px;display:grid;place-items:center;
  background:var(--bt-blue-050);color:var(--bt-blue);margin-bottom:1.15rem;
}
.bt-srow h2{
  font-family:var(--bt-font-head);font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:600;
  line-height:1.25;letter-spacing:-.025em;color:var(--bt-ink);margin:0 0 .75rem;
}
.bt-srow > div > p{font-size:var(--fs-sm);line-height:1.75;color:var(--bt-gray-500);margin:0 0 1.35rem}
.bt-srow__list{display:grid;gap:.65rem;margin:0 0 1.5rem}
.bt-srow__list li{display:flex;align-items:flex-start;gap:.6rem;font-size:var(--fs-xs);line-height:1.6;color:var(--bt-gray-500)}
.bt-srow__list svg{flex:0 0 auto;color:var(--bt-red);margin-top:.2rem}
.bt-srow__media{
  position:relative;border-radius:22px;overflow:hidden;
  min-height:280px;display:grid;place-items:center;padding:2rem;
}
.bt-srow__media::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px);
}
.bt-srow__media span{
  position:relative;z-index:1;text-align:center;
  font-family:var(--bt-font-head);font-size:1.0625rem;font-weight:600;
  color:rgba(255,255,255,.92);letter-spacing:-.015em;line-height:1.5;
}
.bt-srow__stack{
  position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-top:1rem;
}
.bt-srow__stack li{
  font-size:var(--fs-micro);font-weight:500;padding:.28rem .6rem;border-radius:var(--bt-pill);
  background:rgba(255,255,255,.16);color:#fff;
}
@media (max-width:767.98px){
  .bt-srow{grid-template-columns:1fr;gap:1.5rem}
  .bt-srow:nth-child(even) .bt-srow__media{order:0}
  .bt-srow__media{min-height:190px}
}

/* ==========================================================================
   FILTER CHIPS
   ========================================================================== */
.bt-chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:var(--s6)}
.bt-chips a{
  font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;
  padding:.55rem 1.1rem;border-radius:var(--bt-pill);
  background:var(--bt-white);border:1px solid rgba(0,30,150,.12);color:var(--bt-gray-500);
  transition:all var(--bt-ease);
}
.bt-chips a:hover{border-color:var(--bt-blue);color:var(--bt-blue)}
.bt-chips a[aria-current="true"]{background:var(--bt-blue);border-color:var(--bt-blue);color:#fff}

/* ==========================================================================
   PERSON / FOUNDER
   ========================================================================== */
.bt-person{
  display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:clamp(1.5rem,4vw,3rem);align-items:center;
}
.bt-person__photo{
  position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/5;
  display:grid;place-items:center;
  background:linear-gradient(150deg,#00092A,#001E96);
}
.bt-person__photo::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px);
}
.bt-person__photo span{
  position:relative;z-index:1;font-family:var(--bt-font-head);
  font-size:3rem;font-weight:600;color:rgba(255,255,255,.9);letter-spacing:-.03em;
}
.bt-person__role{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;color:var(--bt-blue);
  background:var(--bt-blue-050);padding:.4rem 1rem;border-radius:var(--bt-pill);margin-bottom:1rem;
}
.bt-person h2{
  font-family:var(--bt-font-head);font-size:clamp(1.4rem,2.6vw,2rem);font-weight:600;
  letter-spacing:-.028em;color:var(--bt-ink);margin:0 0 1rem;
}
.bt-person p{font-size:var(--fs-sm);line-height:1.8;color:var(--bt-gray-500);margin:0 0 1rem}
.bt-person p:last-of-type{margin-bottom:1.5rem}
@media (max-width:767.98px){.bt-person{grid-template-columns:1fr}}

/* ==========================================================================
   BLOG — featured post
   ========================================================================== */
.bt-feat{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  background:var(--bt-white);border:1px solid rgba(0,30,150,.08);
  border-radius:22px;overflow:hidden;box-shadow:0 4px 16px rgba(0,15,61,.05);
  margin-bottom:var(--s6);
}
.bt-feat__media{position:relative;min-height:300px;background:linear-gradient(135deg,#00092A,#2B44C6)}
.bt-feat__media::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 1px,transparent 1px 22px);
}
.bt-feat__flag{
  position:absolute;z-index:2;top:1.15rem;left:1.15rem;
  background:var(--bt-red);color:#fff;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.1em;text-transform:uppercase;padding:.35rem .8rem;border-radius:var(--bt-pill);
}
.bt-feat__body{padding:clamp(1.75rem,3vw,2.5rem);display:flex;flex-direction:column;justify-content:center}
.bt-feat__body h2{
  font-family:var(--bt-font-head);font-size:clamp(1.3rem,2.2vw,1.75rem);font-weight:600;
  line-height:1.3;letter-spacing:-.025em;color:var(--bt-ink);margin:0 0 .75rem;
}
.bt-feat__body h2 a{color:inherit}
.bt-feat__body h2 a:hover{color:var(--bt-blue)}
.bt-feat__body > p{font-size:var(--fs-sm);line-height:1.75;color:var(--bt-gray-500);margin:0 0 1.35rem}
@media (max-width:767.98px){.bt-feat{grid-template-columns:1fr}.bt-feat__media{min-height:190px}}

/* ==========================================================================
   CONTACT
   ========================================================================== */
.bt-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}
.bt-infobox{
  background:linear-gradient(160deg,var(--bt-navy-900),#001551);
  border-radius:22px;padding:clamp(1.75rem,3vw,2.25rem);color:#A9B6D9;
  position:relative;overflow:hidden;
}
.bt-infobox::after{
  content:"";position:absolute;width:340px;height:340px;border-radius:50%;
  top:-160px;right:-140px;background:radial-gradient(circle,rgba(58,85,216,.35),transparent 68%);
}
.bt-infobox > *{position:relative;z-index:1}
.bt-infobox h2{
  font-family:var(--bt-font-head);font-size:1.25rem;font-weight:600;
  letter-spacing:-.02em;color:#fff;margin:0 0 .6rem;
}
.bt-infobox > p{font-size:var(--fs-xs);line-height:1.7;color:#A9B6D9;margin:0 0 1.75rem}
.bt-infolist{display:grid;gap:1.15rem;margin-bottom:1.75rem}
.bt-infolist li{display:flex;gap:.85rem;align-items:flex-start}
.bt-infolist__ic{
  width:38px;height:38px;flex:0 0 auto;border-radius:11px;display:grid;place-items:center;
  background:rgba(255,255,255,.09);border:1px solid rgba(180,196,255,.16);color:#C6D2F5;
}
.bt-infolist strong{
  display:block;font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;color:#7D8CB5;margin-bottom:.15rem;
}
.bt-infolist span{font-size:var(--fs-xs);line-height:1.6;color:#DCE3F7}
.bt-infolist a{color:#DCE3F7}
.bt-infolist a:hover{color:#fff}

.bt-formcard{
  background:var(--bt-white);border:1px solid rgba(0,30,150,.09);
  border-radius:22px;padding:clamp(1.75rem,3vw,2.25rem);
  box-shadow:0 2px 8px rgba(0,15,61,.04);
}
.bt-field{margin-bottom:1.15rem}
.bt-field label{
  display:block;font-family:var(--bt-font-head);font-size:var(--fs-xs);font-weight:500;
  color:var(--bt-ink);margin-bottom:.45rem;
}
.bt-field label .req{color:var(--bt-red)}
.bt-field input,.bt-field select,.bt-field textarea{
  width:100%;padding:.8rem 1rem;border-radius:12px;
  border:1px solid rgba(0,30,150,.14);background:var(--bt-white);
  font-family:var(--bt-font-body);font-size:var(--fs-sm);color:var(--bt-ink);
  transition:border-color var(--bt-ease),box-shadow var(--bt-ease);
}
.bt-field textarea{min-height:140px;resize:vertical}
.bt-field input:focus,.bt-field select:focus,.bt-field textarea:focus{
  outline:none;border-color:var(--bt-blue);box-shadow:0 0 0 4px rgba(0,30,150,.10);
}
.bt-field input[aria-invalid="true"],.bt-field textarea[aria-invalid="true"]{border-color:var(--bt-red)}
.bt-field__err{display:none;margin-top:.35rem;font-size:var(--fs-micro);color:var(--bt-red-700)}
.bt-field__err.is-on{display:block}
.bt-check{display:flex;align-items:flex-start;gap:.6rem;font-size:var(--fs-micro);line-height:1.6;color:var(--bt-gray-500)}
.bt-check input{width:auto;margin-top:.15rem;flex:0 0 auto}
.bt-formcard .bt-btn{width:100%;justify-content:center;margin-top:1.35rem}
.bt-form-ok{
  display:none;align-items:flex-start;gap:.6rem;margin-top:1.15rem;padding:.9rem 1rem;
  border-radius:12px;background:#E9F7EF;color:#12643C;font-size:var(--fs-xs);line-height:1.6;
}
.bt-form-ok.is-on{display:flex}
.bt-form-ok svg{flex:0 0 auto;margin-top:.15rem}
.bt-grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.15rem}
@media (max-width:991.98px){.bt-contact{grid-template-columns:1fr}}
@media (max-width:575.98px){.bt-grid2{grid-template-columns:1fr;gap:0}}

/* ==========================================================================
   QUOTE MODAL
   ========================================================================== */
.bt-modal .modal-dialog{max-width:640px}
.bt-modal .modal-content{
  border:0;border-radius:24px;overflow:hidden;
  box-shadow:0 40px 90px rgba(0,6,22,.35);
}
.bt-modal .modal-content{max-height:none}
.bt-modal__head{
  position:relative;overflow:hidden;isolation:isolate;
  flex:0 0 auto;                 /* must not be shrunk by the flex column */
  background:linear-gradient(150deg,var(--bt-navy-900) 0%,#00103C 60%,#001551 100%);
  padding:1.6rem 3.5rem 1.4rem 1.75rem;
}
.bt-modal__head::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(circle,rgba(255,255,255,.5) .9px,transparent 1px);
  background-size:34px 34px;opacity:.16;
  mask-image:radial-gradient(ellipse 70% 80% at 78% 10%,#000 10%,transparent 74%);
  -webkit-mask-image:radial-gradient(ellipse 70% 80% at 78% 10%,#000 10%,transparent 74%);
}
.bt-modal__head > *{position:relative;z-index:1}
.bt-modal__pill{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:#C6D2F5;
  background:rgba(58,85,216,.22);border:1px solid rgba(160,180,255,.24);
  padding:.4rem 1rem;border-radius:var(--bt-pill);margin-bottom:.9rem;
}
.bt-modal__pill i{width:6px;height:6px;border-radius:50%;background:var(--bt-red);flex:0 0 auto}
.bt-modal__head h2{
  font-family:var(--bt-font-head);font-size:1.25rem;font-weight:600;
  line-height:1.25;letter-spacing:-.025em;color:#fff;margin:0 0 .4rem;
}
.bt-modal__head h2 .red{color:#FF5A5A}
.bt-modal__head p{font-size:var(--fs-xs);line-height:1.6;color:#A9B6D9;margin:0;max-width:44ch}
.bt-modal__x{
  position:absolute;z-index:2;top:1.1rem;right:1.1rem;
  width:36px;height:36px;border:0;border-radius:50%;
  background:rgba(255,255,255,.1);color:#fff;
  display:grid;place-items:center;cursor:pointer;
  transition:background var(--bt-ease),transform var(--bt-ease);
}
.bt-modal__x:hover{background:var(--bt-red);transform:rotate(90deg)}
.bt-modal__body{padding:1.75rem;flex:1 1 auto}
.bt-modal__trust{
  display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;
  padding-top:1.15rem;margin-top:1.15rem;border-top:1px solid rgba(0,30,150,.09);
}
.bt-modal__trust span{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:var(--fs-micro);color:var(--bt-gray-500);
}
.bt-modal__trust svg{flex:0 0 auto;color:var(--bt-red)}
.bt-modal .bt-form-ok{margin-top:0}
.bt-modal form > .bt-btn{width:100%;justify-content:center;margin-top:1.25rem}

@media (max-width:575.98px){
  .bt-modal .modal-dialog{margin:.75rem}
  .bt-modal__head{padding:1.5rem 1.35rem 1.25rem}
  .bt-modal__body{padding:1.35rem}
  .bt-modal__head h2{font-size:1.15rem}
}

/* ==========================================================================
   PEOPLE — founder + lead
   ========================================================================== */
.bt-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.bt-pcard{
  display:flex;flex-direction:column;height:100%;
  background:var(--bt-white);
  border:1px solid rgba(0,30,150,.09);
  border-radius:22px;padding:1.75rem;
  box-shadow:0 2px 10px rgba(0,15,61,.05);
  transition:transform var(--bt-ease),box-shadow var(--bt-ease);
}
.bt-pcard:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(0,15,61,.10)}
.bt-pcard__top{display:flex;align-items:center;gap:1rem;margin-bottom:1.35rem}
.bt-pcard__av{
  width:60px;height:60px;flex:0 0 auto;border-radius:18px;
  display:grid;place-items:center;position:relative;overflow:hidden;
  background:linear-gradient(150deg,#00092A,#001E96);
  font-family:var(--bt-font-head);font-size:1.15rem;font-weight:600;
  color:rgba(255,255,255,.94);letter-spacing:-.02em;
}
.bt-pcard--lead .bt-pcard__av{background:linear-gradient(150deg,#5C0A0A,#EA0000)}
.bt-pcard__name{
  font-family:var(--bt-font-head);font-size:1.0625rem;font-weight:600;
  letter-spacing:-.02em;color:var(--bt-ink);margin:0 0 .3rem;line-height:1.3;
}
.bt-pcard__role{
  display:inline-flex;align-items:center;gap:.4rem;
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.1em;text-transform:uppercase;color:var(--bt-blue);
  background:var(--bt-blue-050);padding:.3rem .75rem;border-radius:var(--bt-pill);
}
.bt-pcard--lead .bt-pcard__role{color:var(--bt-red-700);background:var(--bt-red-050)}
.bt-pcard p{font-size:var(--fs-xs);line-height:1.75;color:var(--bt-gray-500);margin:0 0 .85rem}
.bt-pcard p:last-child{margin-bottom:0}
.bt-pcard__skills{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:1.15rem}
.bt-pcard__skills li{
  font-size:var(--fs-micro);font-weight:500;padding:.28rem .65rem;border-radius:var(--bt-pill);
  background:var(--bt-gray-50);border:1px solid rgba(0,30,150,.08);color:var(--bt-gray-500);
}
@media (max-width:767.98px){.bt-people{grid-template-columns:1fr}}

/* ==========================================================================
   MAP
   ========================================================================== */
.bt-map{
  border-radius:22px;overflow:hidden;line-height:0;
  border:1px solid rgba(0,30,150,.09);
  box-shadow:0 2px 10px rgba(0,15,61,.05);
  margin-top:var(--s6);
}
.bt-map iframe{width:100%;height:380px;border:0;display:block;filter:grayscale(.15)}
@media (max-width:575.98px){.bt-map iframe{height:280px}}

/* ==========================================================================
   ARTICLE (blog detail)
   ========================================================================== */
.bt-article{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.bt-prose{max-width:68ch}
.bt-prose > p{font-size:1.0625rem;line-height:1.85;color:var(--bt-body);margin:0 0 1.35rem}
.bt-prose > p:first-of-type{font-size:1.15rem;color:var(--bt-ink);line-height:1.8}
.bt-prose h2{
  font-family:var(--bt-font-head);font-size:clamp(1.25rem,2.2vw,1.6rem);font-weight:600;
  letter-spacing:-.025em;color:var(--bt-ink);margin:2.5rem 0 .85rem;scroll-margin-top:120px;
}
.bt-prose h3{
  font-family:var(--bt-font-head);font-size:1.125rem;font-weight:600;
  letter-spacing:-.02em;color:var(--bt-ink);margin:2rem 0 .6rem;
}
.bt-prose ul,.bt-prose ol{margin:0 0 1.35rem;padding-left:1.25rem;list-style:disc}
.bt-prose ol{list-style:decimal}
.bt-prose li{font-size:1.0625rem;line-height:1.8;color:var(--bt-body);margin-bottom:.5rem;padding-left:.25rem}
.bt-prose strong{color:var(--bt-ink);font-weight:600}
.bt-prose a{color:var(--bt-blue);border-bottom:1px solid rgba(0,30,150,.28)}
.bt-prose a:hover{color:var(--bt-red);border-bottom-color:var(--bt-red)}
.bt-prose blockquote{
  margin:2rem 0;padding:1.35rem 1.5rem;border-left:3px solid var(--bt-red);
  background:var(--bt-gray-50);border-radius:0 14px 14px 0;
}
.bt-prose blockquote p{margin:0;font-size:1.0625rem;line-height:1.75;color:var(--bt-ink);font-style:italic}
.bt-callout{
  display:flex;gap:.9rem;align-items:flex-start;
  margin:2rem 0;padding:1.25rem 1.35rem;border-radius:16px;
  background:var(--bt-blue-050);border:1px solid rgba(0,30,150,.10);
}
.bt-callout svg{flex:0 0 auto;color:var(--bt-blue);margin-top:.15rem}
.bt-callout p{margin:0;font-size:var(--fs-sm);line-height:1.7;color:var(--bt-body)}

.bt-artmeta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:center;margin-bottom:var(--s3)}
.bt-artmeta span,.bt-artmeta time{
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:500;
  letter-spacing:.08em;text-transform:uppercase;color:var(--bt-gray-400);
}
.bt-artmeta .cat{color:var(--bt-blue)}
.bt-artmeta i{width:4px;height:4px;border-radius:50%;background:var(--bt-gray-400);flex:0 0 auto}
.bt-artcover{
  border-radius:22px;overflow:hidden;aspect-ratio:2/1;position:relative;
  background:linear-gradient(135deg,#00092A,#2B44C6);margin-bottom:clamp(2rem,4vw,3rem);
}
.bt-artcover::after{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 1px,transparent 1px 24px)}

.bt-aside{position:sticky;top:120px;display:grid;gap:1.25rem}
.bt-toc{background:var(--bt-white);border:1px solid rgba(0,30,150,.09);border-radius:18px;padding:1.35rem}
.bt-toc h2{
  font-family:var(--bt-font-head);font-size:var(--fs-micro);font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--bt-ink);margin:0 0 .9rem;
}
.bt-toc ol{display:grid;gap:.6rem;counter-reset:t;list-style:none}
.bt-toc a{
  display:flex;gap:.6rem;font-size:var(--fs-xs);line-height:1.5;color:var(--bt-gray-500);
}
.bt-toc a::before{counter-increment:t;content:counter(t,decimal-leading-zero);color:var(--bt-red);font-family:var(--bt-font-head);font-weight:600;flex:0 0 auto}
.bt-toc a:hover{color:var(--bt-blue)}
.bt-authorbox{
  background:linear-gradient(160deg,var(--bt-navy-900),#001551);
  border-radius:18px;padding:1.5rem;color:#A9B6D9;
}
.bt-authorbox__top{display:flex;align-items:center;gap:.85rem;margin-bottom:.9rem}
.bt-authorbox__av{
  width:44px;height:44px;border-radius:13px;flex:0 0 auto;display:grid;place-items:center;
  background:rgba(255,255,255,.12);color:#fff;font-family:var(--bt-font-head);font-weight:600;font-size:.8125rem;
}
.bt-authorbox strong{display:block;color:#fff;font-family:var(--bt-font-head);font-size:.9375rem;font-weight:600;line-height:1.3}
.bt-authorbox em{font-style:normal;font-size:var(--fs-micro);color:#7D8CB5;letter-spacing:.08em;text-transform:uppercase}
.bt-authorbox p{font-size:var(--fs-xs);line-height:1.7;margin:0 0 1rem}
.bt-share{display:flex;gap:.5rem}
.bt-share a{
  width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
  background:rgba(255,255,255,.08);border:1px solid rgba(180,196,255,.16);color:#C6D2F5;
  transition:all var(--bt-ease);
}
.bt-share a:hover{background:var(--bt-red);border-color:var(--bt-red);color:#fff}

@media (max-width:991.98px){
  .bt-article{grid-template-columns:1fr}
  .bt-aside{position:static;grid-template-columns:1fr 1fr;display:grid}
}
@media (max-width:575.98px){.bt-aside{grid-template-columns:1fr}}
