/* ==========================================================================
   Padma Bank Securities PLC — section-scoped stylesheet
   Every rule below is scoped to a .pbsl-* block. Nothing here touches a
   global element selector, :root, or a Bootstrap class on its own.
   ========================================================================== */

/* --------------------------------------------------------------- page scope */
.pbsl-page{
  --pb-magenta:#e92a8e;
  --pb-purple:#af33c2;
  --pb-indigo:#120664;
  --pb-ink:#0f0a2b;
  --pb-navy:#17148b;
  --pb-teal:#007caa;
  --pb-blue-mid:#1c9fd1;
  --pb-blue-light:#3cc7eb;
  --pb-sky:#4cb3db;
  --pb-serif:"Bitter",Georgia,"Times New Roman",serif;
  --pb-sans:"Wix Madefor Text","Helvetica Neue",Helvetica,Arial,sans-serif;
  --pb-wrap:1430px;

  font-family:var(--pb-sans);
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  background:#fff;
  /* clip, not hidden: hidden would make this div a scroll container */
  overflow-x:clip;
}
.pbsl-page .pbsl-wrap{
  max-width:var(--pb-wrap);
  margin-inline:auto;
  padding-inline:36px;
}
.pbsl-page .pbsl-serif{font-family:var(--pb-serif);font-weight:500;}

/* ------------------------------------------------------------------- header */
/* scrolls away with the page (the reference pins its header, but this is
   a deliberate departure) */
.pbsl-header{
  position:relative;
  /* above .pbsl-hero__inner so the mobile menu overlay covers the hero */
  z-index:1050;
  background:linear-gradient(79deg,#ffffff 0%,#220264 100%);
}
.pbsl-header .pbsl-header__row{
  display:flex;
  align-items:stretch;
  min-height:145px;
}
.pbsl-header .pbsl-header__logo{
  flex:0 0 auto;
  width:150px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  z-index:3;
}
.pbsl-header .pbsl-header__logo img{width:100%;height:auto;display:block;}
.pbsl-header .pbsl-header__right{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-width:0;
}
.pbsl-header .pbsl-header__titles{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:18px 0 10px 24px;
}
.pbsl-header .pbsl-header__toggle{display:none;}
.pbsl-header .pbsl-menu-close{display:none;}
.pbsl-header .pbsl-header__name{
  margin:0;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:13.5px;
  font-weight:700;
  line-height:1;
  color:var(--pb-purple);
}
.pbsl-header .pbsl-header__tag{
  margin:7px 0 0;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:11.3px;
  font-weight:700;
  line-height:1;
  text-transform:uppercase;
  color:var(--pb-purple);
}

/* ---------------------------------------------------------------------- nav */
/* Sizes are the reference values measured at a 1440px viewport, expressed in
   vw so the bar scales down the way the reference does, and capped with min()
   so it never grows past the 1440 design size. */
.pbsl-nav{
  background:#0a0b08;
  border-radius:4.506px;
  padding:min(5.63px,.391vw) min(15.77px,1.0951vw);
  min-height:min(65px,4.514vw);
}
.pbsl-nav .navbar-nav{gap:0;}
.pbsl-nav .navbar-nav .nav-link{
  font-family:var(--pb-sans);
  font-weight:400;
  font-size:min(15.6px,1.0833vw);
  line-height:1.346;
  letter-spacing:normal;
  text-transform:uppercase;
  color:var(--pb-magenta);
  padding:min(15.77px,1.0951vw) min(24.78px,1.7208vw);
  white-space:nowrap;
}
/* hover: label turns cream and the item picks up a cream glow — no fill */
.pbsl-nav .navbar-nav .nav-link:hover,
.pbsl-nav .navbar-nav .nav-link:focus,
.pbsl-nav .navbar-nav .nav-item.show .nav-link{
  color:#fefbee;
  background:transparent;
  box-shadow:0 0 min(9px,.625vw) 0 #fefbee;
}
/* current page: stays magenta, underlined */
.pbsl-nav .navbar-nav .nav-link.pbsl-nav__active{text-decoration:underline;}
.pbsl-nav .navbar-nav .nav-link.pbsl-nav__active:hover{color:#fefbee;}
.pbsl-header .pbsl-header__toggle{
  border:0;
  padding:.25rem .5rem;
  box-shadow:none;
}
.pbsl-header .navbar-toggler-icon{
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23ffffff' stroke-width='2' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.pbsl-nav .dropdown-menu{
  background:#0a0b08;
  border:0;
  border-radius:0;
  min-width:220px;
  min-height:90px;
  padding:.5rem 0;
}
.pbsl-nav .dropdown-item{
  color:var(--pb-magenta);
  font-size:14px;
  text-transform:uppercase;
}
.pbsl-nav .dropdown-item:hover{background:#1a1a16;color:#fefbee;}

/* --------------------------------------------------------------------- hero */
.pbsl-hero{
  background:var(--pb-indigo);
  padding:0 0 28px;
}
.pbsl-hero .pbsl-hero__stage{
  position:relative;
  margin:0 20px;
  border-radius:45.06px;
  overflow:hidden;
  min-height:clamp(380px,46vw,640px);
  display:flex;
  align-items:center;
  justify-content:center;
  background:#000;
}
.pbsl-hero .pbsl-hero__video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.pbsl-hero .pbsl-hero__inner{
  position:relative;
  z-index:2;
  text-align:center;
  padding:40px 24px;
  max-width:980px;
}
.pbsl-hero h1{
  font-family:var(--pb-serif);
  font-weight:500;
  color:#fff;
  font-size:clamp(2.4rem,5vw,71.3px);
  line-height:1;
  margin:0 0 26px;
}
.pbsl-hero .pbsl-hero__lead{
  color:#f3d8f8;
  font-size:clamp(1rem,1.4vw,20.04px);
  line-height:1.35;
  margin:0 auto 32px;
  max-width:640px;
}
.pbsl-hero .pbsl-hero__btn{
  display:inline-block;
  background:var(--pb-magenta);
  color:#fff;
  border:0;
  border-radius:8.91px;
  padding:8.9px 26.72px;
  font-size:17.8px;
  line-height:1.35;
  text-decoration:none;
}
.pbsl-hero .pbsl-hero__btn:hover{background:#d01f7c;color:#fff;}

/* -------------------------------------------------------------------- about */
.pbsl-about{
  background:linear-gradient(351deg,rgba(235,233,239,.54) 0%,#140850 100%,#4726c2 100%);
  padding:70px 0 0;
}
.pbsl-about h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-magenta);
  font-size:clamp(1.9rem,3.2vw,36px);
  line-height:1;
  margin:0 0 20px;
}
.pbsl-about .pbsl-about__rule{
  width:26.79%;
  height:2px;
  background:var(--pb-teal);
  margin:22px 0 26px;
}
.pbsl-about .pbsl-about__lead{
  font-size:20.04px;
  line-height:1.35;
  color:#fff;
  text-align:justify;
  margin:0;
}
/* the reference crops this to ~2.36:1, so match rather than use the
   source file's own aspect */
.pbsl-about .pbsl-about__shot{
  width:100%;
  aspect-ratio:626/265;
  height:auto;
  object-fit:cover;
  border-radius:14px;
  display:block;
}
.pbsl-about .pbsl-about__card{
  background:var(--pb-sky);
  border-radius:13.36px;
  padding:26px 24px;
  height:100%;
}
.pbsl-about .pbsl-about__card h3{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-purple);
  font-size:26.7px;
  line-height:1.1;
  margin:0 0 14px;
}
.pbsl-about .pbsl-about__card p{
  margin:0;
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  text-align:justify;
}
.pbsl-about .pbsl-about__office{
  margin-top:60px;
  padding:0 34px 0;
}
/* the reference serves a pre-cropped 3:1 file here, so crop to match */
.pbsl-about .pbsl-about__office img{
  width:100%;
  aspect-ratio:1357/451;
  height:auto;
  object-fit:cover;
  border-radius:13.52px;
  display:block;
}

/* ----------------------------------------------------------------- services */
.pbsl-services{
  background:linear-gradient(0deg,#ffffff 0%,#2f1892 100%);
  padding:64px 0 72px;
}
.pbsl-services h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-magenta);
  font-size:clamp(2rem,4.4vw,53.4px);
  line-height:1;
  text-align:center;
  margin:0 0 46px;
}
.pbsl-services h3{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-purple);
  font-size:clamp(1.6rem,2.8vw,35.6px);
  line-height:1.1;
  margin:0 0 18px;
}
.pbsl-services p{
  font-size:17.8px;
  line-height:1.35;
  text-align:justify;
  color:#000;
  margin:0 0 26px;
}
.pbsl-services .pbsl-services__link{
  color:var(--pb-purple);
  font-size:17.8px;
  text-decoration:underline;
  text-underline-offset:4px;
}
.pbsl-services .pbsl-services__link:hover{color:var(--pb-magenta);}
/* the reference insets this section further and uses wide column gaps */
.pbsl-services .pbsl-wrap{padding-inline:72px;}
.pbsl-services .row{--bs-gutter-x:106px;}
.pbsl-services .pbsl-services__col{
  display:flex;
  flex-direction:column;
  height:100%;
}
.pbsl-services .pbsl-services__foot{margin-top:auto;text-align:center;}

/* ----------------------------------------------------------------- research */
.pbsl-research{
  background:linear-gradient(329deg,#ffffff 0%,#29067d 100%);
  padding:56px 0 72px;
}
.pbsl-research h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-magenta);
  font-size:clamp(2rem,4.4vw,54.1px);
  line-height:1;
  text-align:right;
  margin:0 0 40px;
}
.pbsl-research .pbsl-research__card img{
  width:100%;
  height:clamp(190px,23vw,334px);
  object-fit:cover;
  border-radius:0;
  display:block;
}
.pbsl-research .pbsl-research__card h3{
  font-family:var(--pb-sans);
  font-size:17.8px;
  font-weight:400;
  color:#007eaf;
  margin:18px 0 10px;
}
.pbsl-research .pbsl-research__card p{
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  margin:0 0 10px;
}
.pbsl-research .pbsl-research__link{
  color:#000;
  font-size:17.8px;
  text-decoration:underline;
  text-underline-offset:3px;
}
.pbsl-research .pbsl-research__link:hover{color:var(--pb-magenta);}

/* --------------------------------------------------------------------- news */
.pbsl-news{
  background:linear-gradient(90deg,#ffffff 0%,#4cb3db 100%);
  padding:56px 0 76px;
}
.pbsl-news h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-magenta);
  font-size:clamp(2rem,4.4vw,53.4px);
  line-height:1;
  margin:0;
}
.pbsl-news .pbsl-news__all{
  display:inline-block;
  color:var(--pb-purple);
  font-size:17.8px;
  text-decoration:underline;
  text-underline-offset:4px;
}
.pbsl-news .pbsl-news__all:hover{color:var(--pb-magenta);}
.pbsl-news .pbsl-news__card{
  background:#fff;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  padding:34px 30px;
  height:100%;
  min-height:310px;
  display:block;
  text-decoration:none;
}
.pbsl-news .pbsl-news__date{
  display:block;
  font-size:12px;
  color:#595959;
  margin-bottom:16px;
}
.pbsl-news .pbsl-news__card h3{
  font-family:var(--pb-serif);
  font-weight:500;
  color:#af33c0;
  font-size:22px;
  line-height:1.4;
  margin:0 0 14px;
}
.pbsl-news .pbsl-news__card p{
  font-size:16px;
  line-height:1.5;
  color:#333;
  margin:0;
}

/* ------------------------------------------------------------------ trading */
.pbsl-trading{
  background:linear-gradient(341deg,#ffffff 0%,#562fb1 100%);
  padding:64px 0 72px;
}
.pbsl-trading h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-magenta);
  font-size:clamp(2rem,4.4vw,53.4px);
  line-height:1;
  margin:0 0 28px;
}
.pbsl-trading h3{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-purple);
  font-size:20.3px;
  line-height:1.1;
  margin:0 0 16px;
}
.pbsl-trading p{
  font-size:17.8px;
  line-height:1.35;
  text-align:justify;
  color:#000;
  margin:0 0 18px;
}
.pbsl-trading ul{
  margin:0;
  padding-left:1.15rem;
}
.pbsl-trading li{
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  margin-bottom:2px;
}
.pbsl-trading .pbsl-trading__shot{
  width:100%;
  max-width:463px;
  height:auto;
  border-radius:0;
  display:block;
  margin-inline:auto;
}

/* ----------------------------------------------------------------------- dp */
.pbsl-dp{
  background:linear-gradient(8deg,#ffffff 0%,#cfc8eb 26.15%,#2807a4 100%);
  padding:64px 0 76px;
}
.pbsl-dp h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-magenta);
  font-size:clamp(2rem,4.4vw,53.4px);
  line-height:1;
  text-align:center;
  margin:0 0 24px;
}
.pbsl-dp .pbsl-dp__lead{
  font-size:17.8px;
  line-height:1.35;
  color:#fff;
  text-align:center;
  max-width:820px;
  margin:0 auto 44px;
}
/* chips sit in a narrower centred block in the reference */
.pbsl-dp .pbsl-dp__grid{
  max-width:1011px;
  margin-inline:auto;
  --bs-gutter-x:11px;
}
.pbsl-dp .pbsl-dp__chip{
  border-radius:13.52px;
  min-height:90px;
  padding:20px 16px;
  text-align:center;
  font-family:var(--pb-serif);
  font-weight:500;
  font-size:17.8px;
  line-height:1.1;
  color:#fff;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.pbsl-dp .pbsl-dp__chip--blue{background:var(--pb-sky);}
.pbsl-dp .pbsl-dp__chip--pink{background:var(--pb-magenta);}

/* ----------------------------------------------------------------- benefits */
.pbsl-benefits{
  background:linear-gradient(340deg,#ffffff 0%,#2d2d89 100%);
  padding:60px 0 72px;
}
.pbsl-benefits h2{
  font-family:var(--pb-sans);
  font-weight:400;
  color:var(--pb-magenta);
  font-size:clamp(1.9rem,3.2vw,36px);
  line-height:1.35;
  margin:0 0 10px;
}
.pbsl-benefits h3{
  font-family:var(--pb-sans);
  font-weight:700;
  color:var(--pb-purple);
  font-size:20.3px;
  line-height:1.35;
  margin:0 0 18px;
}
.pbsl-benefits .pbsl-benefits__left .pbsl-benefits__kicker{
  font-family:var(--pb-sans);
  font-weight:700;
  color:var(--pb-purple);
  font-size:20.3px;
  line-height:1.35;
  text-align:start;
  margin:0 0 18px;
}
/* "Corporate Investment" sits a step smaller than the IPO heading */
.pbsl-benefits .pbsl-benefits__right .pbsl-benefits__sub{
  font-family:var(--pb-sans);
  font-weight:700;
  color:var(--pb-purple);
  font-size:18px;
  line-height:1.35;
  text-align:start;
  margin:0 0 18px;
}
/* "Why Invest?" is plain black body copy, not a bold heading */
.pbsl-benefits .pbsl-benefits__right .pbsl-benefits__plain{
  font-weight:400;
  color:#000;
  text-align:start;
}
.pbsl-benefits p{
  font-size:17.8px;
  line-height:1.35;
  text-align:justify;
  margin:0 0 18px;
}
.pbsl-benefits .pbsl-benefits__left p{color:var(--pb-ink);}
.pbsl-benefits .pbsl-benefits__right p{color:var(--pb-navy);}
.pbsl-benefits ul{margin:0 0 18px;padding-left:1.15rem;}
.pbsl-benefits li{font-size:17.8px;line-height:1.35;margin-bottom:6px;}
.pbsl-benefits .pbsl-benefits__left li{color:var(--pb-ink);}
.pbsl-benefits .pbsl-benefits__right li{color:var(--pb-navy);}
.pbsl-benefits .pbsl-benefits__note{font-size:16px;color:var(--pb-navy);}
.pbsl-benefits .pbsl-benefits__shot{
  width:100%;
  height:auto;
  border-radius:12px;
  display:block;
  margin-top:10px;
}

/* ---------------------------------------------------------------------- cta */
.pbsl-cta{
  background:linear-gradient(90deg,#ffffff 0%,#1c0240 100%);
  padding:36px 0;
}
.pbsl-cta .pbsl-cta__box{
  background:linear-gradient(302deg,#ffffff 0%,#e92a8e 100%);
  border-radius:13.36px;
  padding:34px 28px;
  text-align:center;
}
.pbsl-cta h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:#000;
  font-size:clamp(1.4rem,2.9vw,35.6px);
  line-height:1.1;
  margin:0 0 14px;
}
.pbsl-cta p{
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  max-width:760px;
  margin:0 auto 22px;
}
.pbsl-cta .pbsl-cta__btn{
  display:inline-block;
  background:var(--pb-magenta);
  color:#fff;
  border-radius:8.91px;
  padding:10.9px 26.72px;
  font-size:17.8px;
  line-height:1.35;
  text-decoration:none;
}
.pbsl-cta .pbsl-cta__btn:hover{background:#c71c76;color:#fff;}

/* -------------------------------------------------------------------- files */
.pbsl-files{
  background:var(--pb-teal);
  padding:50px 0 60px;
}
.pbsl-files .pbsl-files__panel{
  background:var(--pb-blue-mid);
  border-radius:13.36px;
  padding:48px 34px;
  margin-bottom:28px;
}
.pbsl-files h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-purple);
  font-size:clamp(1.8rem,2.9vw,35.6px);
  line-height:1.1;
  margin:0 0 20px;
}
.pbsl-files .pbsl-files__intro{
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  text-align:justify;
  margin:0;
}
.pbsl-files .pbsl-files__shot{
  width:100%;
  height:auto;
  border-radius:13.52px;
  display:block;
  margin-bottom:28px;
}
.pbsl-files .pbsl-files__card{
  border-radius:13.36px;
  padding:26px 24px;
  margin-bottom:28px;
}
.pbsl-files .pbsl-files__card--light{background:var(--pb-blue-light);}
.pbsl-files .pbsl-files__card--mid{background:var(--pb-blue-mid);}
.pbsl-files .pbsl-files__card h3{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-purple);
  font-size:22.3px;
  line-height:1.1;
  margin:0 0 14px;
}
.pbsl-files .pbsl-files__card p{
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  text-align:justify;
  margin:0 0 14px;
}
.pbsl-files .pbsl-files__card p:last-child{margin-bottom:0;}
.pbsl-files .pbsl-files__card strong{font-weight:700;}

/* ------------------------------------------------------------------ contact */
.pbsl-contact{
  background:linear-gradient(90deg,#ffffff 0%,#044654 100%);
  padding:56px 0 46px;
}
.pbsl-contact h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-purple);
  font-size:clamp(1.9rem,4.4vw,53.4px);
  line-height:1;
  margin:0 0 14px;
}
.pbsl-contact .pbsl-contact__rule{
  width:115px;
  height:1px;
  background:#000;
  margin:0 0 26px;
}
.pbsl-contact h3{
  font-family:var(--pb-serif);
  font-weight:500;
  color:#000;
  font-size:22.3px;
  line-height:1.1;
  margin:0 0 10px;
}
/* the rule sits under each address in the reference, not above it */
.pbsl-contact .pbsl-contact__line{
  font-size:17.8px;
  line-height:1.35;
  color:#000;
  border-bottom:1px solid #000;
  padding-bottom:14px;
  margin:0 0 26px;
}
.pbsl-contact .pbsl-contact__meta{
  font-size:17.8px;
  line-height:1.35;
  margin:0 0 6px;
}
.pbsl-contact .pbsl-contact__email,
.pbsl-contact .pbsl-contact__email a{color:#007caa;}
.pbsl-contact .pbsl-contact__phone,
.pbsl-contact .pbsl-contact__phone a{color:#000;}
.pbsl-contact .pbsl-contact__meta a{text-decoration:none;}
.pbsl-contact .pbsl-contact__meta a:hover{text-decoration:underline;}
.pbsl-contact .pbsl-contact__map{
  width:100%;
  aspect-ratio:656/564;
  height:auto;
  border:0;
  border-radius:0;
  display:block;
  /* the reference uses a dark-styled Google map; a keyless embed cannot be
     styled, so invert it to get the same dark treatment */
  filter:invert(91%) hue-rotate(180deg) saturate(.55) brightness(.93) contrast(1.05);
}
.pbsl-contact .pbsl-contact__social{
  display:flex;
  gap:23px;
  margin-top:34px;
}
.pbsl-contact .pbsl-contact__social a{
  width:27px;
  height:27px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:14px;
  text-decoration:none;
}
.pbsl-contact .pbsl-contact__social a:nth-child(1){background:#1877f2;}
.pbsl-contact .pbsl-contact__social a:nth-child(2){background:#ff0000;}
.pbsl-contact .pbsl-contact__social a:nth-child(3){background:#000000;}
.pbsl-contact .pbsl-contact__social a:nth-child(4){background:#0a66c2;}

/* --------------------------------------------------------------- foot links */
.pbsl-footlinks{
  background:#000;
  padding:70px 0 80px;
}
.pbsl-footlinks h2{
  font-family:var(--pb-sans);
  font-weight:400;
  color:var(--pb-magenta);
  font-size:17.8px;
  line-height:1.35;
  letter-spacing:normal;
  text-transform:uppercase;
  margin:0 0 34px;
}
.pbsl-footlinks ul{margin:0;padding-left:1.1rem;}
.pbsl-footlinks li{margin-bottom:4px;}
.pbsl-footlinks li::marker{color:#007eaf;}
.pbsl-footlinks a{
  color:#007eaf;
  font-size:17.8px;
  line-height:1.35;
  text-decoration:none;
}
.pbsl-footlinks a:hover{color:#fff;text-decoration:underline;}

/* ------------------------------------------------------------------- footer */
.pbsl-footer{
  background:linear-gradient(180deg,#ffffff 0%,rgba(34,4,114,.1) 100%);
  padding:30px 0 40px;
}
.pbsl-footer .pbsl-footer__logo{
  width:150px;
  height:auto;
  display:block;
  margin-bottom:30px;
}
.pbsl-footer h2{
  font-family:var(--pb-serif);
  font-weight:500;
  color:var(--pb-magenta);
  font-size:22.3px;
  line-height:1.1;
  margin:0 0 16px;
}
.pbsl-footer p{
  font-size:15.6px;
  line-height:1.6;
  color:#101010;
  margin:0;
}
.pbsl-footer a{color:#101010;text-decoration:none;}
.pbsl-footer a:hover{text-decoration:underline;}
.pbsl-footer .pbsl-footer__social{display:flex;gap:12px;}
.pbsl-footer .pbsl-footer__social a{
  width:32px;height:32px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  color:#fff;font-size:16px;background:#101010;
}
.pbsl-footer .pbsl-footer__copy{
  font-size:15.6px;
  line-height:1.35;
  color:#cccccc;
  margin:34px 0 0;
}

/* ------------------------------------------------------------- post cards
   Deliberately NOT nested under .pbsl-blog: the same card is used on the
   listing page and inside .pbsl-post, so it must not depend on an ancestor. */
.pbsl-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:0;
  text-decoration:none;
  color:#000;
}
.pbsl-card:hover{color:#000;text-decoration:none;}
.pbsl-card .pbsl-card__top{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:20px;
}
.pbsl-card .pbsl-card__avatar{
  width:32px;height:32px;border-radius:50%;
  background:#dcdcdc;color:#fff;font-size:21px;
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
}
.pbsl-card .pbsl-card__who{display:flex;flex-direction:column;line-height:1.35;}
.pbsl-card .pbsl-card__author{font-size:12px;color:#000;}
.pbsl-card .pbsl-card__meta{font-size:12px;color:#5a5a5a;}
.pbsl-card .pbsl-card__more{margin-left:auto;color:#5a5a5a;font-size:15px;}
.pbsl-card .pbsl-card__title{
  font-family:var(--pb-serif);
  font-weight:500;
  color:#000;
  margin:0 0 14px;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.pbsl-card .pbsl-card__excerpt{
  font-family:var(--pb-sans);
  font-size:16px;
  line-height:24px;
  color:#000;
  margin:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.pbsl-card .pbsl-card__stats{
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:25px;
  border-top:1px solid rgba(0,0,0,.2);
  padding-top:15px;
  font-size:12px;
  color:#000;
}
.pbsl-card .pbsl-card__stats i{font-size:16px;margin-right:6px;vertical-align:-2px;}
.pbsl-card .pbsl-card__heart{margin-left:auto;color:#e84a43;font-size:16px;}

.pbsl-card.pbsl-card--list{padding:24px;min-height:596px;}
.pbsl-card.pbsl-card--list .pbsl-card__title{font-size:22px;line-height:30.8px;-webkit-line-clamp:3;}
.pbsl-card.pbsl-card--list .pbsl-card__excerpt{-webkit-line-clamp:3;}

.pbsl-card.pbsl-card--recent{padding:25px;min-height:313px;}
.pbsl-card.pbsl-card--recent .pbsl-card__title{font-size:18px;line-height:1.15;-webkit-line-clamp:2;}
.pbsl-card.pbsl-card--recent .pbsl-card__excerpt{-webkit-line-clamp:4;}

/* ---------------------------------------------------------------- blog list */
.pbsl-blog{
  background:#fff;
  padding:26px 0 70px;
}
.pbsl-blog .pbsl-blog__crumb{
  font-size:14px;
  color:#007caa;
  text-decoration:none;
  display:inline-block;
  margin-bottom:26px;
}
.pbsl-blog .pbsl-blog__crumb:hover{text-decoration:underline;}
.pbsl-blog .pbsl-blog__grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:36px;
}
.pbsl-blog .pbsl-blog__grid .pbsl-card{width:328px;}

/* --------------------------------------------------------------- blog post */
.pbsl-post{
  background:#f7f7f7;
  padding:26px 0 70px;
}
.pbsl-post .pbsl-post__crumb{
  font-size:15px;
  color:#101010;
  text-decoration:none;
  display:inline-block;
  margin-bottom:22px;
}
.pbsl-post .pbsl-post__crumb:hover{text-decoration:underline;}
.pbsl-post .pbsl-post__sheet{
  background:#fff;
  max-width:950px;
  margin-inline:auto;
  border-radius:4px;
  box-shadow:0 1px 4px rgba(0,0,0,.12);
  padding:34px 48px 56px;
}
.pbsl-post .pbsl-post__meta{
  font-size:14px;
  color:#595959;
  margin:0 0 22px;
}
.pbsl-post h1{
  font-family:var(--pb-serif);
  font-weight:600;
  color:#101010;
  font-size:clamp(1.9rem,3.4vw,40px);
  line-height:1.25;
  margin:0 0 24px;
}
.pbsl-post h2{
  font-family:var(--pb-serif);
  font-weight:600;
  color:#101010;
  font-size:26px;
  margin:34px 0 14px;
}
.pbsl-post h3{
  font-family:var(--pb-serif);
  font-weight:600;
  color:#101010;
  font-size:21px;
  margin:26px 0 12px;
}
.pbsl-post p{
  font-size:17px;
  line-height:1.6;
  color:#101010;
  margin:0 0 18px;
}
.pbsl-post ul{margin:0 0 18px;padding-left:1.3rem;}
.pbsl-post li{font-size:17px;line-height:1.6;color:#101010;margin-bottom:8px;}
.pbsl-post figure{margin:0 0 26px;}
.pbsl-post figure img{width:100%;height:auto;display:block;border-radius:2px;}
.pbsl-post figcaption{
  font-size:14px;
  color:#595959;
  text-align:center;
  padding-top:10px;
}
.pbsl-post .pbsl-post__recent{
  max-width:940px;
  margin:47px auto 0;
}
.pbsl-post .pbsl-post__recent-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  margin-bottom:20px;
}
.pbsl-post .pbsl-post__recent h2{
  font-family:var(--pb-sans);
  font-weight:400;
  font-size:18px;
  line-height:27px;
  color:#000;
  margin:0;
}
.pbsl-post .pbsl-post__seeall{
  font-family:var(--pb-sans);
  font-size:14px;
  line-height:21px;
  color:#000;
  text-decoration:none;
}
.pbsl-post .pbsl-post__seeall:hover{text-decoration:underline;}
.pbsl-post .pbsl-post__recent-grid{
  display:flex;
  flex-wrap:wrap;
  gap:34px;
}
.pbsl-post .pbsl-post__recent-grid .pbsl-card{width:291px;}

/* comments panel */
.pbsl-post .pbsl-post__comments{
  max-width:940px;
  margin:36px auto 0;
  background:#fff;
  border:1px solid #e6e6e6;
  padding:60px;
}
.pbsl-post .pbsl-post__comments h2{
  font-family:var(--pb-serif);
  font-weight:500;
  font-size:16px;
  color:#000;
  margin:0 0 20px;
  padding-bottom:20px;
  border-bottom:1px solid rgba(0,0,0,.35);
}
.pbsl-post .pbsl-post__write{
  border:1px solid #d9d9d9;
  border-radius:13.36px;
  padding:17px 16px;
  color:#5a5a5a;
  font-size:16px;
  line-height:24px;
}

/* ------------------------------------------------------------- back to top
   Not in the reference design — added on request. Lives outside .pbsl-page
   so the wrapper's overflow can never interfere with the fixed position. */
.pbsl-totop{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:1040;
  width:46px;
  height:46px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#e92a8e;
  color:#fff;
  font-size:20px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 4px 14px rgba(0,0,0,.28);
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:opacity .2s ease,transform .2s ease,background .2s ease,visibility .2s;
}
.pbsl-totop.pbsl-totop--on{
  opacity:1;
  visibility:visible;
  transform:none;
}
.pbsl-totop:hover{background:#c71c76;color:#fff;}
.pbsl-totop:focus-visible{outline:2px solid #fff;outline-offset:3px;}

@media (max-width:991.98px){
  .pbsl-totop{right:16px;bottom:16px;width:42px;height:42px;font-size:18px;}
}
@media (prefers-reduced-motion:reduce){
  .pbsl-totop{transition:none;transform:none;}
}

/* ------------------------------------------------------------- small screens */
@media (max-width:991.98px){
  .pbsl-page .pbsl-wrap{padding-inline:23px;}
  .pbsl-services .pbsl-wrap{padding-inline:23px;}
  .pbsl-services .row{--bs-gutter-x:24px;}

  /* one compact bar: small logo, brand text, burger — no separate nav row */
  .pbsl-header .pbsl-header__row{min-height:57px;flex-wrap:nowrap;align-items:flex-start;}
  .pbsl-header .pbsl-header__logo{
    flex:0 0 auto;
    width:auto;
    height:57px;
    background:transparent;
    padding:0 0 0 11px;
  }
  .pbsl-header .pbsl-header__logo img{width:35px;}
  .pbsl-header .pbsl-header__titles{min-height:57px;padding:0 6px 0 10px;}
  .pbsl-header .pbsl-header__name{font-size:16px;line-height:1;color:var(--pb-magenta);}
  .pbsl-header .pbsl-header__tag{font-size:9.62px;margin-top:1px;color:var(--pb-purple);}
  .pbsl-header .pbsl-header__toggle{display:block;}

  .pbsl-nav{background:transparent;border-radius:0;padding:0;min-height:0;}

  /* the menu is a full-screen overlay on phones: light backdrop, close
     button top-right, black panel of centred links */
  .pbsl-menu-open{overflow:hidden;}
  .pbsl-nav .navbar-collapse.show,
  .pbsl-nav .navbar-collapse.collapsing{
    position:fixed;
    inset:0;
    z-index:1050;
    height:100%!important;
    background:#f2f2f2;
    overflow-y:auto;
    transition:none;
  }
  .pbsl-nav .navbar-collapse.show .navbar-nav,
  .pbsl-nav .navbar-collapse.collapsing .navbar-nav{
    background:#0a0b08;
    margin-top:96px;
    padding:23px 0;
    row-gap:13px;
  }
  .pbsl-header .pbsl-menu-close{
    display:none;
    position:absolute;
    top:0;
    right:0;
    width:44px;
    height:44px;
    border:0;
    padding:0;
    background:transparent;
    color:#000;
    font-size:19px;
    line-height:1;
    align-items:center;
    justify-content:center;
  }
  .pbsl-nav .navbar-collapse.show .pbsl-menu-close,
  .pbsl-nav .navbar-collapse.collapsing .pbsl-menu-close{display:flex;}
  .pbsl-nav .navbar-nav .nav-link{
    font-size:13.47px;
    line-height:18.19px;
    text-align:center;
    padding:13px 0;
  }
  .pbsl-nav .navbar-nav .nav-link:hover,
  .pbsl-nav .navbar-nav .nav-link:focus,
  .pbsl-nav .navbar-nav .nav-item.show .nav-link{box-shadow:0 0 9px 0 #fefbee;}
  .pbsl-nav .dropdown-menu{min-height:0;}

  /* hero: video becomes a banner above the text, both inside the dark card */
  .pbsl-hero{padding:38px 0 39px;}
  .pbsl-hero .pbsl-hero__stage{
    display:block;
    margin:0 23px;
    padding:24px 0 34px;
    border-radius:20px;
    background:rgba(0,0,0,.95);
    min-height:0;
  }
  .pbsl-hero .pbsl-hero__video{
    position:static;
    display:block;
    width:72%;
    height:auto;
    aspect-ratio:16/9;
    margin:0 auto 34px;
    border-radius:4px;
  }
  .pbsl-hero .pbsl-hero__inner{padding:0 20px;max-width:none;}
  .pbsl-about .pbsl-about__office{padding:0 23px;}

  /* chips are full width and shorter on phones */
  .pbsl-dp .pbsl-dp__grid{--bs-gutter-x:0;}
  .pbsl-dp .pbsl-dp__chip{min-height:63px;padding:14px 16px;}

  /* news cards are taller on phones in the reference */
  .pbsl-news .pbsl-news__card{min-height:492px;}

  /* the reference drops all but the last Files photo on phones */
  .pbsl-files .pbsl-files__shot--sm-hide{display:none;}
  /* the reference stacks these almost flush on phones */
  .pbsl-files .pbsl-files__card{margin-bottom:2px;}

  /* the CTA band carries much deeper padding on phones */
  .pbsl-cta{padding:97px 0;}
  .pbsl-hero h1{font-size:28.87px;margin-bottom:11px;}
  .pbsl-hero .pbsl-hero__lead{font-size:15.4px;margin-bottom:31px;}
  .pbsl-hero .pbsl-hero__btn{font-size:15.4px;line-height:1.35;}

  /* phone type scale — the reference drops body copy to 15.4px and the
     headings to 23.1 / 26.95 / 19.25, and inverts three sections to white */
  .pbsl-about .pbsl-about__rule{width:27%;}
  .pbsl-about h2{font-size:23.1px;}
  .pbsl-about .pbsl-about__lead{font-size:15.4px;}
  /* stacked cards size to their own content, they are not equalised */
  .pbsl-about .pbsl-about__card{padding:23px;height:auto;}
  .pbsl-about .pbsl-about__card p{text-align:left;}
  .pbsl-about .pbsl-about__card h3{font-size:19.25px;margin-bottom:12px;}
  .pbsl-about .pbsl-about__card p{font-size:15.4px;}

  .pbsl-services h2,
  .pbsl-research h2,
  .pbsl-news h2,
  .pbsl-trading h2,
  .pbsl-dp h2{font-size:26.9px;line-height:1;}
  .pbsl-services h3{font-size:23.1px;}
  .pbsl-services p{color:#fff;font-size:15.4px;}
  .pbsl-services .pbsl-services__link{font-size:15.4px;}

  .pbsl-research .pbsl-research__card img{height:247px;}
  .pbsl-trading .pbsl-trading__shot{aspect-ratio:329/289;object-fit:cover;}
  .pbsl-research .pbsl-research__card h3{font-size:15.4px;color:#007eaf;}
  .pbsl-research .pbsl-research__card p,
  .pbsl-research .pbsl-research__link{font-size:15.4px;}

  .pbsl-news .pbsl-news__all{font-size:15.4px;}
  .pbsl-news .pbsl-news__card h3{font-size:19.25px;}
  .pbsl-news .pbsl-news__card p{font-size:15px;}

  .pbsl-trading h3{font-size:15.4px;line-height:1.1;}
  .pbsl-trading p,
  .pbsl-trading li{font-size:15.4px;}

  .pbsl-dp .pbsl-dp__lead,
  .pbsl-dp .pbsl-dp__chip{font-size:15.4px;}

  .pbsl-benefits h2{font-size:23.1px;}
  .pbsl-benefits h3,
  .pbsl-benefits .pbsl-benefits__left .pbsl-benefits__kicker{font-size:15.4px;line-height:1.35;}
  .pbsl-benefits .pbsl-benefits__right .pbsl-benefits__sub{font-size:18px;line-height:1.155;}
  .pbsl-benefits p,
  .pbsl-benefits li{font-size:15.4px;}

  .pbsl-cta h2{font-size:23.1px;line-height:1.1;}
  .pbsl-cta p{font-size:15.4px;}
  .pbsl-cta .pbsl-cta__btn{font-size:15.4px;}

  .pbsl-files h2{font-size:23.1px;}
  .pbsl-files .pbsl-files__card h3{font-size:17.3px;line-height:19.1px;}
  .pbsl-files .pbsl-files__intro,
  .pbsl-files .pbsl-files__card p{font-size:15.4px;}

  .pbsl-contact h2{font-size:26.9px;line-height:1;}
  .pbsl-contact h3{font-size:17.3px;line-height:19.1px;}
  .pbsl-contact .pbsl-contact__line,
  .pbsl-contact .pbsl-contact__meta{font-size:15.4px;}

  .pbsl-footlinks h2{font-size:15.4px;line-height:1.35;}
  .pbsl-footlinks a{font-size:15.4px;}

  .pbsl-footer h2{font-size:17.3px;line-height:19.1px;}
  .pbsl-footer .pbsl-footer__copy{font-size:13.5px;line-height:1.35;}

  .pbsl-blog .pbsl-blog__grid .pbsl-card,
  .pbsl-post .pbsl-post__recent-grid .pbsl-card{width:100%;min-height:0;}
  .pbsl-post .pbsl-post__sheet{padding:26px 22px 36px;}
  .pbsl-post .pbsl-post__comments{padding:26px 22px;}

  /* the reference drops justification on phones */
  .pbsl-about .pbsl-about__lead,
  .pbsl-services p,
  .pbsl-trading p,
  .pbsl-benefits p,
  .pbsl-files .pbsl-files__intro,
  .pbsl-files .pbsl-files__card p{text-align:left;}
  .pbsl-about,
  .pbsl-services,
  .pbsl-research,
  .pbsl-news,
  .pbsl-trading,
  .pbsl-dp,
  .pbsl-benefits,
  .pbsl-files,
  .pbsl-contact{padding-top:38px;padding-bottom:48px;}
  .pbsl-about .pbsl-about__rule{margin:28px 0 32px;}
  .pbsl-research h2{text-align:left;}
  .pbsl-footlinks{padding:44px 0;}
}
