.pb-cat-banner{
  position:relative;
  width:100%;
  max-width:965px;
  aspect-ratio:965 / 600;
  margin:auto;
  overflow:hidden;
  border-radius:16px;
  font-family:Arial, Helvetica, sans-serif;
  background:#111;
}

@supports not (aspect-ratio: 965 / 600){
  .pb-cat-banner{
    height:600px;
  }
}

.pb-cat-banner__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  animation:pbSceneLoop 8s linear infinite;
  will-change:filter;
}

.pb-cat-banner__lights{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}

.pb-light{
  position:absolute;
  top:6%;
  width:86px;
  height:18px;
  border-radius:30px;
  background:rgba(255,250,235,.10);
  opacity:.12;
  box-shadow:0 0 0 rgba(255,245,210,0);
}

.pb-light::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:38px;
  height:9px;
  border-radius:20px;
  background:rgba(255,255,250,.72);
  filter:blur(1px);
}

.pb-light::after{
  content:"";
  position:absolute;
  left:50%;
  top:100%;
  transform:translateX(-50%);
  width:260px;
  height:300px;
  background:radial-gradient(
    ellipse at top,
    rgba(255,248,215,.95) 0%,
    rgba(255,244,205,.50) 18%,
    rgba(255,244,205,.18) 38%,
    rgba(255,244,205,0) 72%
  );
  opacity:0;
  filter:blur(8px);
}

.pb-light-1{ left:10%; animation:pbLampCycle 8s linear infinite 2s; }
.pb-light-2{ left:28%; animation:pbLampCycle 8s linear infinite 1s; }
.pb-light-3{ left:46%; animation:pbLampCycle 8s linear infinite 0s; }
.pb-light-4{ left:64%; animation:pbLampCycle 8s linear infinite 1s; }
.pb-light-5{ left:82%; animation:pbLampCycle 8s linear infinite 2s; }

.pb-light-1::after{ animation:pbLampGlowCycle 8s linear infinite 2s; }
.pb-light-2::after{ animation:pbLampGlowCycle 8s linear infinite 1s; }
.pb-light-3::after{ animation:pbLampGlowCycle 8s linear infinite 0s; }
.pb-light-4::after{ animation:pbLampGlowCycle 8s linear infinite 1s; }
.pb-light-5::after{ animation:pbLampGlowCycle 8s linear infinite 2s; }

.pb-cat-banner__ambient{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 15% 10%, rgba(255,248,220,.18) 0%, rgba(255,248,220,0) 22%),
    radial-gradient(circle at 30% 10%, rgba(255,248,220,.22) 0%, rgba(255,248,220,0) 24%),
    radial-gradient(circle at 50% 10%, rgba(255,248,220,.32) 0%, rgba(255,248,220,0) 28%),
    radial-gradient(circle at 68% 10%, rgba(255,248,220,.22) 0%, rgba(255,248,220,0) 24%),
    radial-gradient(circle at 84% 10%, rgba(255,248,220,.18) 0%, rgba(255,248,220,0) 22%);
  animation:pbAmbientCycle 8s linear infinite;
}

.pb-cat-banner__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(180,0,0,.82) 0%,
    rgba(180,0,0,.62) 30%,
    rgba(0,0,0,.36) 60%,
    rgba(0,0,0,.46) 100%
  );
  z-index:1;
  animation:pbOverlayCycle 8s linear infinite;
}

.pb-cat-banner__inner{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  height:100%;
  padding:40px;
  box-sizing:border-box;
  gap:28px;
}

.pb-cat-banner__left{
  width:50%;
  color:#fff;
  position:relative;
}

.pb-cat-banner__workers{
  display:inline-flex;
  align-items:center;
  gap:2px;
  flex-wrap:wrap;
  margin:0 0 18px;
  padding:10px 18px;
  border-radius:14px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:
    0 10px 24px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.10);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}

.pb-worker-icon{
  font-size:28px;
  color:#ffb14a;
  margin-right:8px;
  line-height:1;
  text-shadow:
    0 0 10px rgba(255,160,60,.35),
    0 3px 10px rgba(0,0,0,.25);
}

.pb-cat-banner__workers-count{
  font-size:40px;
  font-weight:900;
  line-height:1;
  color:#ffb14a;
  text-shadow:
    0 0 10px rgba(255,160,60,.35),
    0 3px 10px rgba(0,0,0,.25);
}

.pb-cat-banner__plus{
  font-size:40px;
  font-weight:900;
  line-height:1;
  color:#ffb14a;
  text-shadow:
    0 0 10px rgba(255,160,60,.35),
    0 3px 10px rgba(0,0,0,.25);
}

.pb-cat-banner__workers-text{
  margin-left:10px;
  font-size:18px;
  font-weight:700;
  line-height:1.2;
  color:#fff;
  text-shadow:0 3px 10px rgba(0,0,0,.25);
}

.pb-cat-banner__title{
  margin:0;
}

.pb-cat-banner__title span{
  display:block;
  font-size:70px;
  font-weight:900;
  line-height:.9;
  text-shadow:0 4px 14px rgba(0,0,0,.25);
}

.pb-cat-banner__laser{
  position:relative;
  width:72%;
  height:4px;
  margin:24px 0 22px;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    rgba(255,110,0,.08) 0%,
    rgba(255,135,0,.90) 20%,
    rgba(255,185,60,1) 50%,
    rgba(255,135,0,.90) 80%,
    rgba(255,110,0,.08) 100%
  );
  box-shadow:
    0 0 6px rgba(255,140,0,.85),
    0 0 14px rgba(255,120,0,.65),
    0 0 28px rgba(255,90,0,.38);
  overflow:hidden;
}

.pb-cat-banner__laser::before{
  content:"";
  position:absolute;
  top:50%;
  left:-35%;
  width:35%;
  height:16px;
  transform:translateY(-50%) skewX(-28deg);
  background:linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,240,180,.18) 18%,
    rgba(255,255,255,.95) 50%,
    rgba(255,210,120,.28) 82%,
    rgba(255,255,255,0) 100%
  );
  filter:blur(1px);
  animation:pbLaserSweep 2.2s linear infinite;
}

.pb-cat-banner__laser::after{
  content:"";
  position:absolute;
  inset:-4px 0;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    rgba(255,90,0,0) 0%,
    rgba(255,140,0,.32) 25%,
    rgba(255,200,90,.62) 50%,
    rgba(255,140,0,.32) 75%,
    rgba(255,90,0,0) 100%
  );
  filter:blur(6px);
  opacity:.9;
  animation:pbLaserPulse 1.6s ease-in-out infinite;
}

.pb-cat-banner__site{
  font-size:36px;
  color:#fff;
  text-shadow:0 3px 10px rgba(0,0,0,.25);
}

.pb-cat-banner__right{
  width:40%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:stretch;
  gap:12px;
  height:100%;
}

.pb-cat-item{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  text-align:center;
  padding:12px 16px;
  font-size:20px;
  font-weight:700;
  color:#fff;
  text-decoration:none;
  border-radius:12px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.12);
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
  box-sizing:border-box;
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}

.pb-cat-item:hover{
  transform:scale(1.06);
  background:rgba(255,255,255,.24);
  border-color:rgba(255,255,255,.25);
}

@keyframes pbSceneLoop{
  0%{ filter:brightness(.26) contrast(.95) saturate(.92); }
  18%{ filter:brightness(.48) contrast(.99) saturate(.98); }
  35%{ filter:brightness(.82) contrast(1.03) saturate(1.03); }
  50%{ filter:brightness(1.18) contrast(1.08) saturate(1.08); }
  68%{ filter:brightness(1.18) contrast(1.08) saturate(1.08); }
  82%{ filter:brightness(.72) contrast(1.01) saturate(.98); }
  100%{ filter:brightness(.26) contrast(.95) saturate(.92); }
}

@keyframes pbOverlayCycle{
  0%{ opacity:1; }
  35%{ opacity:.90; }
  50%{ opacity:.74; }
  68%{ opacity:.74; }
  82%{ opacity:.90; }
  100%{ opacity:1; }
}

@keyframes pbAmbientCycle{
  0%{ opacity:.10; }
  35%{ opacity:.42; }
  50%{ opacity:.72; }
  68%{ opacity:.72; }
  82%{ opacity:.28; }
  100%{ opacity:.10; }
}

@keyframes pbLampCycle{
  0%{
    opacity:.10;
    box-shadow:0 0 0 rgba(255,245,210,0);
  }
  8%{
    opacity:.10;
    box-shadow:0 0 0 rgba(255,245,210,0);
  }
  14%{
    opacity:1;
    box-shadow:
      0 0 18px rgba(255,248,220,.95),
      0 0 40px rgba(255,255,255,.36),
      0 0 65px rgba(255,245,210,.35);
  }
  62%{
    opacity:1;
    box-shadow:
      0 0 16px rgba(255,248,220,.86),
      0 0 34px rgba(255,255,255,.28),
      0 0 56px rgba(255,245,210,.28);
  }
  72%{
    opacity:.08;
    box-shadow:0 0 0 rgba(255,245,210,0);
  }
  100%{
    opacity:.08;
    box-shadow:0 0 0 rgba(255,245,210,0);
  }
}

@keyframes pbLampGlowCycle{
  0%{ opacity:0; }
  8%{ opacity:0; }
  14%{ opacity:1; }
  62%{ opacity:.78; }
  72%{ opacity:0; }
  100%{ opacity:0; }
}

@keyframes pbLaserSweep{
  0%{
    left:-35%;
    opacity:0;
  }
  8%{
    opacity:1;
  }
  50%{
    opacity:1;
  }
  100%{
    left:105%;
    opacity:0;
  }
}

@keyframes pbLaserPulse{
  0%,100%{
    opacity:.58;
    transform:scaleX(.985);
  }
  50%{
    opacity:1;
    transform:scaleX(1.02);
  }
}

@media (max-width: 768px){
  .pb-cat-banner{
    border-radius:14px;
  }

  .pb-cat-banner__inner{
    padding:22px;
    gap:16px;
  }

  .pb-cat-banner__left{
    width:48%;
  }

  .pb-cat-banner__right{
    width:45%;
    gap:8px;
  }

  .pb-cat-banner__workers{
    margin:0 0 12px;
    padding:8px 12px;
    gap:1px;
    border-radius:10px;
  }

  .pb-worker-icon{
    font-size:18px;
    margin-right:6px;
  }

  .pb-cat-banner__workers-count{
    font-size:26px;
  }

  .pb-cat-banner__plus{
    font-size:26px;
  }

  .pb-cat-banner__workers-text{
    margin-left:8px;
    font-size:12px;
  }

  .pb-cat-banner__title span{
    font-size:42px;
    line-height:.95;
  }

  .pb-cat-banner__laser{
    width:78%;
    height:3px;
    margin:14px 0 14px;
  }

  .pb-cat-banner__site{
    font-size:22px;
  }

  .pb-cat-item{
    min-height:34px;
    padding:8px 10px;
    font-size:13px;
    border-radius:10px;
  }

  .pb-cat-item:hover{
    transform:scale(1.03);
  }

  .pb-light{
    width:58px;
    height:14px;
    top:7%;
  }

  .pb-light::before{
    width:24px;
    height:7px;
  }

  .pb-light::after{
    width:170px;
    height:180px;
  }
}

@media (max-width: 480px){
  .pb-cat-banner{
    border-radius:12px;
  }

  .pb-cat-banner__inner{
    padding:14px;
    gap:10px;
  }

  .pb-cat-banner__left{
    width:47%;
  }

  .pb-cat-banner__right{
    width:47%;
    gap:6px;
  }

  .pb-cat-banner__workers{
    margin:0 0 10px;
    padding:6px 10px;
    gap:1px;
    border-radius:8px;
  }

  .pb-worker-icon{
    font-size:14px;
    margin-right:4px;
  }

  .pb-cat-banner__workers-count{
    font-size:18px;
  }

  .pb-cat-banner__plus{
    font-size:18px;
  }

  .pb-cat-banner__workers-text{
    margin-left:6px;
    font-size:9px;
  }

  .pb-cat-banner__title span{
    font-size:28px;
    line-height:.95;
  }

  .pb-cat-banner__laser{
    width:85%;
    height:2px;
    margin:10px 0 10px;
  }

  .pb-cat-banner__site{
    font-size:15px;
  }

  .pb-cat-item{
    min-height:28px;
    padding:6px 8px;
    font-size:10px;
    font-weight:700;
    border-radius:8px;
  }

  .pb-light{
    width:34px;
    height:10px;
    top:8%;
  }

  .pb-light::before{
    width:14px;
    height:5px;
  }

  .pb-light::after{
    width:95px;
    height:100px;
    filter:blur(4px);
  }
}

-----------------------
.pbps-banner-fixed-ratio,
.pbps-banner-fixed-ratio *{
  box-sizing:border-box;
}

.pbps-banner-fixed-ratio{
  width:100%;
  max-width:1536px;
  margin:0 auto;
  aspect-ratio:1536 / 1024;
  min-height:420px;
  position:relative;
  overflow:hidden;
  border-radius:12px;
  display:block;
  font-family:Arial, Helvetica, sans-serif;
  background:#193882 !important;
  background-image:linear-gradient(135deg,#193882 0%, #0d57a4 50%, #2448a3 100%) !important;
}

.pbps-banner-fixed-ratio::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:#193882;
  background-image:linear-gradient(135deg,#193882 0%, #0d57a4 50%, #2448a3 100%);
}

@supports not (aspect-ratio: 1536 / 1024){
  .pbps-banner-fixed-ratio{
    height:600px;
  }
}

.pbps-banner-inner{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:5%;
  gap:3%;
}

.pbps-banner-left{
  width:35%;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}

.pbps-banner-left img{
  display:block;
  width:auto;
  max-width:100%;
  max-height:300px;
  height:auto;
  position:relative;
  z-index:1;
}

.pbps-product-links{
  position:absolute;
  inset:0;
  z-index:3;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:6% 3%;
}

.pbps-product-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.pbps-product-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:46px;
  padding:10px 8px;
  text-decoration:none;
  text-align:center;
  line-height:1.2;
  color:#fff;
  font-size:clamp(10px,0.95vw,15px);
  font-weight:700;
  border-radius:14px;
  background:rgba(255,255,255,0.14);
  border:1px solid rgba(255,255,255,0.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 6px 18px rgba(0,0,0,0.14);
  transition:.25s ease;
}

.pbps-product-link:hover{
  background:rgba(255,255,255,0.22);
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(0,0,0,0.18);
}

.pbps-banner-right{
  width:65%;
  text-align:center;
  position:relative;
  z-index:3;
}

.pbps-badge{
  display:inline-block;
  background:#ffc400;
  color:#111;
  padding:10px 20px;
  font-weight:800;
  border-radius:0 0 12px 12px;
  margin-bottom:12px;
  font-size:clamp(11px,1vw,18px);
}

.pbps-mini{
  color:#fff;
  font-size:clamp(14px,1.5vw,22px);
  font-weight:700;
  letter-spacing:.4px;
}

.pbps-title{
  margin:10px 0 12px;
  line-height:1.05;
}

.pbps-title span{
  display:block;
  font-size:clamp(28px,3vw,60px);
  font-weight:900;
  color:#d9ecff;
}

.pbps-title strong{
  display:inline-block;
  background:#ffd000;
  color:#111;
  font-size:clamp(28px,3.2vw,65px);
  padding:8px 18px;
  border-radius:12px;
  margin-top:8px;
  line-height:1.1;
}

.pbps-text{
  color:#fff;
  font-size:clamp(12px,1.2vw,18px);
  margin:12px auto 18px;
  max-width:700px;
  line-height:1.5;
}

.pbps-btn{
  display:inline-block;
  background:#111;
  color:#fff;
  padding:12px 22px;
  text-decoration:none;
  font-weight:700;
  font-size:clamp(12px,1.2vw,16px);
  border-radius:8px;
  transition:.25s ease;
}

.pbps-btn:hover{
  background:#000;
  transform:translateY(-2px);
}

@media (max-width:991px){
  .pbps-banner-inner{
    padding:4%;
    gap:2%;
  }

  .pbps-banner-left{
    width:34%;
  }

  .pbps-banner-right{
    width:66%;
  }

.pbps-banner-left img{
  width:auto;
  max-width:100%;
  max-height:230px;
}

  .pbps-product-links{
    gap:8px;
    padding:6% 2.5%;
  }

  .pbps-product-row{
    gap:6px;
  }

  .pbps-product-link{
    min-height:38px;
    font-size:10px;
    border-radius:12px;
    padding:8px 6px;
  }

  .pbps-badge{
    padding:8px 16px;
    margin-bottom:10px;
  }

  .pbps-title span{
    font-size:36px;
  }

  .pbps-title strong{
    font-size:38px;
    padding:7px 14px;
  }

  .pbps-text{
    font-size:14px;
    margin:10px auto 14px;
  }

  .pbps-btn{
    padding:10px 18px;
    font-size:13px;
  }
}

@media (max-width:768px){
  .pbps-banner-inner{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    padding:4%;
    gap:3%;
  }

  .pbps-banner-left{
    width:36%;
  }

  .pbps-banner-right{
    width:64%;
    text-align:center;
  }

.pbps-banner-left img{
  width:auto;
  max-width:100%;
  max-height:180px;
  height:auto;
}

  .pbps-product-links{
    gap:6px;
    padding:7% 2%;
  }

  .pbps-product-row{
    gap:4px;
  }

  .pbps-product-link{
    min-height:30px;
    font-size:8px;
    border-radius:9px;
    padding:5px 4px;
  }

  .pbps-badge{
    font-size:10px;
    padding:6px 10px;
    margin-bottom:6px;
    border-radius:0 0 8px 8px;
  }

  .pbps-mini{
    font-size:11px;
  }

  .pbps-title{
    margin:6px 0 8px;
  }

  .pbps-title span{
    font-size:22px;
  }

  .pbps-title strong{
    font-size:23px;
    padding:5px 9px;
    border-radius:8px;
    margin-top:4px;
  }

  .pbps-text{
    font-size:11px;
    line-height:1.35;
    margin:6px auto 10px;
  }

  .pbps-btn{
    padding:8px 12px;
    font-size:10px;
    border-radius:6px;
  }
}

@media (max-width:480px){
  .pbps-banner-fixed-ratio{
    min-height:320px;
  }

  .pbps-banner-inner{
    padding:4%;
    gap:2%;
  }

  .pbps-banner-left{
    width:38%;
  }

  .pbps-banner-right{
    width:62%;
  }

.pbps-banner-left img{
  width:auto;
  max-width:100%;
  max-height:145px;
}

  .pbps-product-links{
    gap:5px;
    padding:7% 2%;
  }

  .pbps-product-row{
    gap:3px;
  }

  .pbps-product-link{
    min-height:24px;
    font-size:7px;
    border-radius:8px;
    padding:4px 3px;
  }

  .pbps-badge{
    font-size:9px;
    padding:5px 8px;
    margin-bottom:5px;
  }

  .pbps-mini{
    font-size:10px;
  }

  .pbps-title span{
    font-size:18px;
  }

  .pbps-title strong{
    font-size:19px;
    padding:4px 7px;
  }

  .pbps-text{
    font-size:10px;
    line-height:1.3;
    margin:5px auto 8px;
  }

  .pbps-btn{
    font-size:9px;
    padding:7px 10px;
  }
}

-----
