/* ==========================================================
   SEA LICENSING — LIBERIA OPERATIONAL PAGE V1
   Isolated Liberia classes only
   ========================================================== */

.lbr{
  --navy:#082d44;
  --navy2:#104d69;
  --blue:#107fae;
  --cyan:#35aeda;
  --cyan2:#7bdaf2;
  --ink:#102f42;
  --muted:#607986;
  --line:#d5e7ee;
  --pale:#f2f9fc;

  overflow:hidden;

  background:
    linear-gradient(
      135deg,
      rgba(17,142,191,.026) 25%,
      transparent 25%
    ) 0 0/41px 41px,
    #fff;
}


.lbr-shell{
  width:min(1240px,calc(100% - 48px));
  margin:auto;
}


/* ==========================================================
   HERO
   ========================================================== */

.lbr-hero{
  position:relative;

  min-height:690px;

  display:flex;
  align-items:center;

  overflow:hidden;

  background:
    linear-gradient(
      90deg,
      rgba(3,26,42,.96) 0%,
      rgba(5,39,59,.89) 39%,
      rgba(7,50,72,.61) 68%,
      rgba(3,24,38,.38) 100%
    ),
    url('/assets/images/hero-flag-liberia.webp')
    center 44% / cover no-repeat;

  isolation:isolate;
}


.lbr-hero::before{
  content:"";

  position:absolute;
  inset:0;

  z-index:-1;

  background:
    radial-gradient(
      circle at 82% 18%,
      rgba(60,182,225,.17),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      rgba(255,255,255,.03) 0 1px,
      transparent 1px 35px
    );

  background-size:auto,35px 35px;
}


.lbr-hero-inner{
  width:min(1240px,calc(100% - 48px));
  margin:auto;

  padding:92px 0 78px;

  display:grid;

  grid-template-columns:
    minmax(0,1.08fr)
    minmax(390px,.82fr);

  gap:67px;

  align-items:center;
}


.lbr-kicker{
  display:block;

  margin-bottom:10px;

  color:#56c1e5;

  font-size:10px;
  line-height:1;
  font-weight:850;

  letter-spacing:.17em;
  text-transform:uppercase;
}


.lbr-hero-copy h1{
  margin:0;

  color:#fff;

  font-size:clamp(62px,7vw,102px);
  line-height:.94;
  letter-spacing:-.055em;
}


.lbr-hero-copy h2{
  max-width:690px;

  margin:22px 0 0;

  color:#fff;

  font-size:clamp(24px,2.2vw,35px);
  line-height:1.16;

  letter-spacing:-.025em;
}


.lbr-hero-copy > p{
  max-width:660px;

  margin:19px 0 0;

  color:rgba(231,244,249,.79);

  font-size:15px;
  line-height:1.72;
}


.lbr-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;

  margin-top:29px;
}


.lbr-btn{
  position:relative;

  min-height:49px;
  padding:0 20px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  overflow:hidden;

  border-radius:8px;

  text-decoration:none;

  font-size:12px;
  font-weight:800;

  transition:
    transform .28s cubic-bezier(.22,1,.36,1),
    background .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}


.lbr-btn.primary{
  color:#fff;

  background:#159bc9;

  border:1px solid #159bc9;
}


.lbr-btn.primary:hover{
  transform:translateY(-3px);

  background:
    linear-gradient(
      135deg,
      #087eb9,
      #079fd1 52%,
      #16b6dd
    );

  box-shadow:
    0 10px 24px rgba(5,106,158,.24),
    0 0 0 4px rgba(47,188,225,.08);
}


.lbr-btn.ghost{
  color:#fff;

  border:1px solid rgba(255,255,255,.29);

  background:rgba(255,255,255,.06);
}


.lbr-btn.ghost:hover{
  transform:translateY(-3px);

  background:rgba(255,255,255,.12);
}


/* ==========================================================
   HERO PATHWAYS
   ========================================================== */

.lbr-paths{
  padding:24px;

  border-radius:18px;

  border:1px solid rgba(255,255,255,.15);

  background:
    linear-gradient(
      145deg,
      rgba(8,40,60,.87),
      rgba(5,30,47,.79)
    );

  box-shadow:
    0 26px 65px rgba(0,0,0,.27),
    inset 0 1px 0 rgba(255,255,255,.05);

  backdrop-filter:blur(14px);
}


.lbr-path-head{
  padding:2px 2px 16px;

  border-bottom:
    1px solid rgba(255,255,255,.10);
}


.lbr-path-head span{
  color:#78d2ef;

  font-size:9px;
  font-weight:850;

  letter-spacing:.16em;
  text-transform:uppercase;
}


.lbr-path-head h3{
  margin:6px 0 0;

  color:#fff;

  font-size:23px;
  letter-spacing:-.025em;
}


.lbr-path-list{
  display:grid;
  gap:7px;

  margin-top:11px;
}


.lbr-path{
  min-height:69px;
  padding:11px 13px;

  display:grid;

  grid-template-columns:
    36px minmax(0,1fr) auto;

  gap:11px;

  align-items:center;

  border-radius:10px;

  border:1px solid transparent;

  background:
    rgba(255,255,255,.045);

  text-decoration:none;

  transition:.22s ease;
}


.lbr-path:hover{
  transform:translateX(4px);

  background:
    linear-gradient(
      110deg,
      rgba(26,103,139,.58),
      rgba(41,137,180,.27)
    );

  border-color:
    rgba(105,206,239,.27);

  box-shadow:
    0 10px 25px rgba(0,0,0,.16);
}


.lbr-path-num{
  width:36px;
  height:36px;

  display:grid;
  place-items:center;

  border-radius:50%;

  color:#9ae3f7;

  background:
    rgba(47,147,187,.14);

  border:
    1px solid rgba(108,207,238,.30);

  font-size:9px;
  font-weight:850;
}


.lbr-path-copy strong{
  display:block;

  color:#fff;

  font-size:12px;
  line-height:1.25;
}


.lbr-path-copy small{
  display:block;

  margin-top:4px;

  color:
    rgba(219,239,247,.65);

  font-size:9px;
  line-height:1.35;
}


.lbr-path-tag{
  padding:5px 7px;

  border-radius:20px;

  color:#88dcf4;

  background:
    rgba(48,163,202,.10);

  border:
    1px solid rgba(90,196,231,.18);

  font-size:7px;
  line-height:1;
  font-weight:850;

  letter-spacing:.09em;
  text-transform:uppercase;
}


/* ==========================================================
   NAVIGATOR
   ========================================================== */

.lbr-navigator{
  padding:57px 0;

  background:
    radial-gradient(
      circle at 84% 0%,
      rgba(51,181,224,.12),
      transparent 29%
    ),
    #eff8fc;

  border-bottom:
    1px solid #dcebf1;
}


.lbr-head{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(320px,.75fr);

  gap:55px;

  align-items:end;

  margin-bottom:28px;
}


.lbr-head h2{
  margin:0;

  color:var(--ink);

  font-size:
    clamp(30px,3vw,43px);

  line-height:1.04;

  letter-spacing:-.045em;
}


.lbr-head > p{
  margin:0;

  padding-left:19px;

  border-left:
    2px solid #4eb7dc;

  color:var(--muted);

  font-size:12px;
  line-height:1.7;
}


.lbr-nav-grid{
  display:grid;

  grid-template-columns:
    repeat(4,1fr);

  gap:11px;
}


.lbr-nav-card{
  min-height:146px;

  padding:20px;

  display:flex;
  flex-direction:column;

  border-radius:12px;

  border:
    1px solid #d1e5ee;

  background:#fff;

  text-decoration:none;

  transition:.22s ease;
}


.lbr-nav-card:hover{
  transform:translateY(-4px);

  background:
    linear-gradient(
      145deg,
      #113b54,
      #236f92
    );

  border-color:#347f9f;

  box-shadow:
    0 16px 32px
    rgba(10,54,76,.16);
}


.lbr-nav-card > span:first-child{
  color:#168fbd;

  font-size:9px;
  font-weight:850;

  letter-spacing:.11em;
  text-transform:uppercase;
}


.lbr-nav-card strong{
  margin-top:17px;

  color:#15364a;

  font-size:15px;
  line-height:1.25;
}


.lbr-nav-card small{
  margin-top:6px;

  color:#6a818d;

  font-size:10px;
  line-height:1.5;
}


.lbr-nav-card > span:last-child{
  margin-top:auto;

  padding-top:13px;

  color:#158ab6;

  font-size:9px;
  font-weight:800;
}


.lbr-nav-card:hover *{
  color:#fff !important;
}


/* ==========================================================
   GENERIC SECTIONS
   ========================================================== */

.lbr-section{
  padding:76px 0;
}


.lbr-section.alt{
  background:
    linear-gradient(
      135deg,
      rgba(17,142,191,.032) 25%,
      transparent 25%
    ) 0 0/40px 40px,
    #f3f9fc;

  border-top:
    1px solid #e0edf2;

  border-bottom:
    1px solid #e0edf2;
}


.lbr-split{
  display:grid;

  grid-template-columns:
    1.08fr .92fr;

  gap:18px;
}


/* ==========================================================
   PANELS
   ========================================================== */

.lbr-panel{
  padding:27px;

  border-radius:14px;

  border:
    1px solid #d3e6ed;

  background:#fff;

  box-shadow:
    0 9px 26px
    rgba(18,65,86,.05);
}


.lbr-panel.dark{
  color:#fff;

  border-color:#245b74;

  background:
    linear-gradient(
      135deg,
      rgba(72,183,220,.06) 0 1px,
      transparent 1px 34px
    ),
    linear-gradient(
      145deg,
      #0a334a,
      #164e69
    );

  background-size:
    34px 34px,
    auto;
}


.lbr-panel.lightblue{
  background:
    linear-gradient(
      135deg,
      #f3fcff 0%,
      #e3f7fd 43%,
      #cfeffa 72%,
      #b9e7f7 100%
    );

  border-color:#8fd2e9;

  box-shadow:
    0 14px 32px
    rgba(43,143,181,.10),
    inset 0 1px 0
    rgba(255,255,255,.88);
}


.lbr-panel-head{
  padding-bottom:17px;
  margin-bottom:17px;

  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;

  border-bottom:
    1px solid #dce9ef;
}


.lbr-panel.dark .lbr-panel-head{
  border-color:
    rgba(255,255,255,.12);
}


.lbr-panel-head span{
  color:#168fbd;

  font-size:9px;
  font-weight:850;

  letter-spacing:.13em;
  text-transform:uppercase;
}


.lbr-panel.dark .lbr-panel-head span{
  color:#7bd6ef;
}


.lbr-panel-head h3{
  margin:5px 0 0;

  color:#15364a;

  font-size:21px;
}


.lbr-panel.dark .lbr-panel-head h3{
  color:#fff;
}


.lbr-count{
  width:40px;
  height:40px;

  display:grid;
  place-items:center;

  flex:0 0 auto;

  border-radius:50%;

  background:#e8f6fb;

  color:#178ab5;

  font-size:10px;
  font-weight:850;
}


/* ==========================================================
   CHECKLIST
   ========================================================== */

.lbr-checks{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:9px;
}


.lbr-check{
  min-height:73px;

  padding:12px;

  display:grid;

  grid-template-columns:
    30px 1fr;

  gap:10px;

  border-radius:9px;

  border:
    1px solid #dce9ef;

  background:#fbfdfe;

  transition:.2s ease;
}


.lbr-check:hover{
  transform:
    translateY(-2px);

  background:
    linear-gradient(
      135deg,
      #123e57,
      #236f92
    );

  border-color:#3983a3;
}


.lbr-check-num{
  width:30px;
  height:30px;

  display:grid;
  place-items:center;

  border-radius:50%;

  color:#168fc0;

  background:#e5f5fb;

  font-size:8px;
  font-weight:850;
}


.lbr-check b{
  display:block;

  color:#17374a;

  font-size:10.5px;
  line-height:1.35;
}


.lbr-check small{
  display:block;

  margin-top:4px;

  color:#748995;

  font-size:8.5px;
  line-height:1.4;
}


.lbr-check:hover b,
.lbr-check:hover small{
  color:#fff;
}


/* ==========================================================
   PROCEDURE + CONTINUOUS MOTION
   ========================================================== */

.lbr-steps{
  position:relative;

  overflow:hidden;
}


.lbr-steps::after{
  content:"";

  position:absolute;

  left:16px;
  top:18px;

  width:3px;
  height:58px;

  z-index:2;

  border-radius:999px;

  pointer-events:none;

  background:
    linear-gradient(
      to bottom,
      transparent,
      rgba(110,220,255,.30) 20%,
      #7ce5ff 48%,
      rgba(83,199,239,.57) 72%,
      transparent
    );

  box-shadow:
    0 0 8px
      rgba(90,210,248,.72),
    0 0 18px
      rgba(65,178,224,.40);

  animation:
    lbrTimeline 5.4s
    linear infinite;
}


@keyframes lbrTimeline{

  0%{
    transform:
      translateY(-65px);

    opacity:0;
  }

  8%{
    opacity:1;
  }

  88%{
    opacity:1;
  }

  100%{
    transform:
      translateY(390px);

    opacity:0;
  }
}


.lbr-step{
  position:relative;

  min-height:72px;

  padding:
    13px 9px 13px 58px;

  border-bottom:
    1px solid
    rgba(255,255,255,.12);

  border-radius:8px;

  animation:
    lbrRowGlow
    5.4s ease-in-out infinite;
}


.lbr-step:last-child{
  border-bottom:0;
}


.lbr-step::before{
  content:"";

  position:absolute;

  left:17px;
  top:0;
  bottom:0;

  width:1px;

  background:
    rgba(89,195,231,.30);
}


.lbr-step:first-child::before{
  top:22px;
}


.lbr-step:last-child::before{
  bottom:40px;
}


.lbr-step-num{
  position:absolute;

  left:1px;
  top:13px;

  width:33px;
  height:33px;

  z-index:4;

  display:grid;
  place-items:center;

  border-radius:50%;

  background:#123f58;

  border:
    1px solid
    rgba(109,207,239,.44);

  color:#86d9f3;

  font-size:8px;
  font-weight:850;

  animation:
    lbrStepPulse
    5.4s ease-in-out infinite;
}


.lbr-step:nth-child(1),
.lbr-step:nth-child(1) .lbr-step-num{
  animation-delay:0s;
}

.lbr-step:nth-child(2),
.lbr-step:nth-child(2) .lbr-step-num{
  animation-delay:.9s;
}

.lbr-step:nth-child(3),
.lbr-step:nth-child(3) .lbr-step-num{
  animation-delay:1.8s;
}

.lbr-step:nth-child(4),
.lbr-step:nth-child(4) .lbr-step-num{
  animation-delay:2.7s;
}

.lbr-step:nth-child(5),
.lbr-step:nth-child(5) .lbr-step-num{
  animation-delay:3.6s;
}

.lbr-step:nth-child(6),
.lbr-step:nth-child(6) .lbr-step-num{
  animation-delay:4.5s;
}


@keyframes lbrStepPulse{

  0%,78%,100%{
    background:#123f58;

    border-color:
      rgba(109,207,239,.44);

    color:#86d9f3;

    box-shadow:
      0 0 0
      rgba(74,197,236,0);

    transform:scale(1);
  }

  8%{
    background:#2b8fba;

    border-color:#8ee8ff;

    color:#fff;

    box-shadow:
      0 0 0 5px
        rgba(77,194,232,.10),
      0 0 15px
        rgba(81,210,248,.58);

    transform:scale(1.08);
  }

  17%{
    background:#1d6f94;

    border-color:#70d7f6;

    color:#fff;

    box-shadow:
      0 0 11px
      rgba(80,203,241,.32);

    transform:scale(1.03);
  }

}


@keyframes lbrRowGlow{

  0%,78%,100%{
    background:
      rgba(255,255,255,0);
  }

  8%{
    background:
      linear-gradient(
        90deg,
        rgba(69,180,220,.09),
        rgba(69,180,220,.025) 72%,
        transparent
      );
  }

  18%{
    background:
      rgba(255,255,255,0);
  }
}


.lbr-step strong{
  display:block;

  color:#fff;

  font-size:11px;
}


.lbr-step p{
  margin:5px 0 0;

  color:
    rgba(226,242,247,.69);

  font-size:9px;
  line-height:1.5;
}


/* ==========================================================
   DOWNLOADS
   ========================================================== */

.lbr-downloads{
  display:grid;

  grid-template-columns:
    repeat(3,1fr);

  gap:10px;

  margin-top:17px;
}


.lbr-download{
  min-height:104px;

  padding:16px;

  display:flex;
  flex-direction:column;

  border-radius:10px;

  border:
    1px solid #d4e7ef;

  background:#fff;

  text-decoration:none;

  transition:.22s ease;
}


.lbr-download:hover{
  transform:translateY(-4px);

  background:
    linear-gradient(
      135deg,
      #10384f,
      #194f70 58%,
      #3379a3
    );

  border-color:#4088a9;

  box-shadow:
    0 15px 28px
    rgba(7,42,62,.18);
}


.lbr-download-tag{
  color:#168fbd;

  font-size:8px;
  font-weight:850;

  letter-spacing:.11em;
  text-transform:uppercase;
}


.lbr-download strong{
  margin-top:8px;

  color:#17374a;

  font-size:11px;
  line-height:1.35;
}


.lbr-download > span:last-child{
  margin-top:auto;

  padding-top:10px;

  color:#178ab6;

  font-size:9px;
  font-weight:800;
}


.lbr-download:hover *{
  color:#fff !important;
}


/* ==========================================================
   CRA / DIGITAL NOTICE
   ========================================================== */

.lbr-notice{
  padding:23px 25px;

  display:grid;

  grid-template-columns:
    50px 1fr auto;

  gap:20px;

  align-items:center;

  border-radius:13px;

  border:
    1px solid #3d92b4;

  color:#fff;

  background:
    linear-gradient(
      110deg,
      #0b3a54,
      #145c7a 65%,
      #298aae
    );

  box-shadow:
    0 14px 30px
    rgba(10,52,74,.12);
}


.lbr-notice-icon{
  width:50px;
  height:50px;

  display:grid;
  place-items:center;

  border-radius:9px;

  border:
    1px solid
    rgba(255,255,255,.22);

  color:#84def6;

  font-size:9px;
  font-weight:900;
}


.lbr-notice span{
  color:#7bd9f3;

  font-size:8px;
  font-weight:850;

  letter-spacing:.13em;
  text-transform:uppercase;
}


.lbr-notice h3{
  margin:4px 0 4px;

  color:#fff;

  font-size:20px;
}


.lbr-notice p{
  margin:0;

  color:
    rgba(230,245,250,.76);

  font-size:10px;
  line-height:1.55;
}


.lbr-notice-link{
  padding:12px 14px;

  border-radius:7px;

  border:
    1px solid
    rgba(255,255,255,.25);

  color:#fff;

  text-decoration:none;

  font-size:9px;
  font-weight:800;
}


/* ==========================================================
   SQC SELECTOR
   ========================================================== */

.lbr-sqc{
  padding:80px 0;

  color:#fff;

  background:
    radial-gradient(
      circle at 86% 8%,
      rgba(59,185,225,.22),
      transparent 28%
    ),
    linear-gradient(
      135deg,
      rgba(255,255,255,.025)
      0 1px,
      transparent 1px 34px
    ),
    linear-gradient(
      145deg,
      #072b41,
      #104c69
    );

  background-size:
    auto,
    34px 34px,
    auto;
}


.lbr-sqc .lbr-head h2{
  color:#fff;
}


.lbr-sqc .lbr-head > p{
  color:
    rgba(225,241,247,.72);
}


.lbr-sqc-layout{
  display:grid;

  grid-template-columns:
    .90fr 1.10fr;

  gap:18px;
}


.lbr-sqc-options{
  display:grid;

  grid-template-columns:
    repeat(2,1fr);

  gap:8px;
}


.lbr-sqc-option{
  min-height:78px;

  padding:13px;

  border-radius:9px;

  border:
    1px solid
    rgba(255,255,255,.13);

  background:
    rgba(255,255,255,.045);

  color:#fff;

  text-align:left;

  cursor:pointer;

  transition:.2s ease;
}


.lbr-sqc-option:hover,
.lbr-sqc-option.active{
  transform:
    translateY(-2px);

  background:
    linear-gradient(
      135deg,
      #17688c,
      #2692bb
    );

  border-color:#61c6e7;
}


.lbr-sqc-option small{
  display:block;

  color:#70cce9;

  font-size:8px;
  font-weight:850;

  letter-spacing:.10em;
}


.lbr-sqc-option strong{
  display:block;

  margin-top:6px;

  color:#fff;

  font-size:10px;
  line-height:1.35;
}


.lbr-sqc-detail{
  min-height:350px;

  padding:28px;

  border-radius:14px;

  border:
    1px solid
    rgba(106,204,236,.23);

  background:
    rgba(3,28,43,.46);
}


.lbr-sqc-detail-head{
  padding-bottom:18px;
  margin-bottom:16px;

  display:flex;
  justify-content:space-between;

  gap:25px;

  border-bottom:
    1px solid
    rgba(255,255,255,.12);
}


.lbr-sqc-detail-head span{
  color:#70d0ef;

  font-size:8px;
  font-weight:850;

  letter-spacing:.12em;
  text-transform:uppercase;
}


.lbr-sqc-detail h3{
  margin:5px 0 0;

  color:#fff;

  font-size:25px;
  line-height:1.1;
}


.lbr-rule{
  padding:7px 9px;

  border-radius:6px;

  color:#89ddf4;

  border:
    1px solid
    rgba(96,197,230,.20);

  background:
    rgba(67,175,211,.10);

  font-size:8px;
  font-weight:850;

  white-space:nowrap;
}


.lbr-sqc-list{
  display:grid;
  gap:8px;
}


.lbr-sqc-item{
  padding:11px 13px;

  display:grid;

  grid-template-columns:
    22px 1fr;

  gap:9px;

  align-items:center;

  border-radius:8px;

  background:
    rgba(255,255,255,.05);

  color:#e6f3f8;

  font-size:10px;
  line-height:1.4;
}


.lbr-sqc-item::before{
  content:"✓";

  width:22px;
  height:22px;

  display:grid;
  place-items:center;

  border-radius:50%;

  background:#278cb2;

  color:#fff;

  font-size:9px;
  font-weight:900;
}


/* ==========================================================
   COC EXAMS
   ========================================================== */

.lbr-service-grid{
  display:grid;

  grid-template-columns:
    repeat(2,1fr);

  gap:14px;
}


.lbr-service-card{
  padding:25px;

  border-radius:13px;

  border:
    1px solid #d1e5ed;

  background:#fff;
}


.lbr-service-card.dark{
  color:#fff;

  border-color:#2d7392;

  background:
    linear-gradient(
      145deg,
      #103c54,
      #246f91
    );
}


.lbr-service-card.light{
  background:
    linear-gradient(
      135deg,
      #f3fcff,
      #dff5fd 45%,
      #c5ebf9
    );

  border-color:#8ed0e7;
}


.lbr-service-card > span{
  color:#188fba;

  font-size:8px;
  font-weight:850;

  letter-spacing:.12em;
  text-transform:uppercase;
}


.lbr-service-card.dark > span{
  color:#8ee0f6;
}


.lbr-service-card h3{
  margin:8px 0 0;

  color:#15364a;

  font-size:20px;
}


.lbr-service-card.dark h3{
  color:#fff;
}


.lbr-service-card p{
  margin:8px 0 0;

  color:#667e8a;

  font-size:10px;
  line-height:1.55;
}


.lbr-service-card.dark p{
  color:
    rgba(230,244,249,.72);
}


.lbr-grade-list{
  margin:18px 0 0;
  padding:0;

  display:grid;
  gap:7px;

  list-style:none;
}


.lbr-grade-list li{
  padding:9px 11px;

  border-radius:7px;

  background:
    rgba(255,255,255,.62);

  color:#294b5b;

  font-size:9.5px;
}


.lbr-service-card.dark
.lbr-grade-list li{
  background:
    rgba(255,255,255,.065);

  color:#edf8fb;
}


/* ==========================================================
   REGISTRY TABS
   ========================================================== */

.lbr-reg-tabs{
  display:flex;
  flex-wrap:wrap;

  gap:8px;

  margin-bottom:15px;
}


.lbr-reg-tab{
  padding:12px 16px;

  border-radius:8px;

  border:
    1px solid #cee3ec;

  background:#fff;

  color:#315c70;

  font-size:10px;
  font-weight:800;

  cursor:pointer;

  transition:.22s ease;
}


.lbr-reg-tab.active{
  color:#fff;

  border-color:#123f58;

  background:#123f58;

  box-shadow:
    0 0 0 3px
      rgba(80,198,235,.08),
    0 7px 18px
      rgba(12,59,80,.12);
}


.lbr-reg-panel{
  padding:25px;

  border-radius:13px;

  border:
    1px solid #d2e5ed;

  background:#fff;
}


.lbr-reg-top{
  padding-bottom:17px;
  margin-bottom:17px;

  display:flex;
  justify-content:space-between;
  gap:20px;

  align-items:center;

  border-bottom:
    1px solid #dce9ef;
}


.lbr-reg-top h3{
  margin:0;

  color:#15364a;

  font-size:21px;
}


.lbr-reg-top p{
  margin:5px 0 0;

  color:#6a808c;

  font-size:9.5px;
}


.lbr-reg-label{
  padding:8px 10px;

  border-radius:7px;

  color:#157ca4;

  background:#e7f6fb;

  font-size:8px;
  font-weight:850;
}


.lbr-reg-list{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:8px;
}


.lbr-reg-item{
  min-height:56px;

  padding:11px 12px;

  display:grid;

  grid-template-columns:
    27px 1fr;

  gap:9px;

  border-radius:8px;

  border:
    1px solid #e0ebf0;

  background:#fbfdfe;
}


.lbr-reg-item span{
  color:#32a2ca;

  font-size:8px;
  font-weight:850;
}


.lbr-reg-item b{
  color:#294b5b;

  font-size:9px;
  line-height:1.42;
}


/* ==========================================================
   RESOURCES
   ========================================================== */

.lbr-resources{
  display:grid;

  grid-template-columns:
    repeat(4,1fr);

  gap:10px;
}


.lbr-resource{
  min-height:198px;

  padding:18px;

  display:flex;
  flex-direction:column;

  border-radius:11px;

  border:
    1px solid #d2e5ed;

  background:#fff;

  text-decoration:none;

  transition:.22s ease;
}


.lbr-resource:hover{
  transform:translateY(-4px);

  background:
    linear-gradient(
      145deg,
      #123e57,
      #246f92
    );

  border-color:#327d9e;

  box-shadow:
    0 15px 28px
    rgba(9,49,69,.15);
}


.lbr-resource > span:first-child{
  color:#218fba;

  font-size:8px;
  font-weight:850;

  letter-spacing:.10em;
  text-transform:uppercase;
}


.lbr-resource-badge{
  width:38px;
  height:38px;

  margin:17px 0 14px;

  display:grid;
  place-items:center;

  border-radius:7px;

  color:#168fbd;

  background:#e8f6fb;

  font-size:8px;
  font-weight:900;
}


.lbr-resource h3{
  margin:0;

  color:#17374a;

  font-size:13px;
  line-height:1.25;
}


.lbr-resource p{
  margin:7px 0 0;

  color:#6e838e;

  font-size:8.5px;
  line-height:1.45;
}


.lbr-resource-action{
  margin-top:auto;

  padding-top:13px;

  color:#168bb6;

  font-size:8.5px;
  font-weight:800;
}


.lbr-resource:hover *{
  color:#fff !important;
}


/* ==========================================================
   FINAL CTA
   ========================================================== */

.lbr-final{
  padding:57px 0;

  background:
    radial-gradient(
      circle at 85% 0%,
      rgba(71,193,231,.22),
      transparent 30%
    ),
    linear-gradient(
      120deg,
      #082f47,
      #0d5675
    );
}


.lbr-final-inner{
  display:flex;

  justify-content:space-between;
  align-items:center;

  gap:40px;
}


.lbr-final span{
  color:#70d2ef;

  font-size:8px;
  font-weight:850;

  letter-spacing:.13em;
  text-transform:uppercase;
}


.lbr-final h2{
  margin:7px 0 0;

  color:#fff;

  font-size:29px;

  letter-spacing:-.035em;
}


.lbr-final p{
  margin:7px 0 0;

  color:
    rgba(230,245,250,.72);

  font-size:10px;
}


.lbr-final-btn{
  position:relative;

  overflow:hidden;

  flex:0 0 auto;

  padding:14px 19px;

  border-radius:8px;

  color:#fff;

  background:#22a3d1;

  text-decoration:none;

  font-size:10px;
  font-weight:850;

  transition:.26s ease;
}


.lbr-final-btn:hover{
  transform:translateY(-3px);

  background:
    linear-gradient(
      135deg,
      #087eb9,
      #079fd1 52%,
      #16b6dd
    );

  box-shadow:
    0 10px 24px
      rgba(5,106,158,.24),
    0 0 0 4px
      rgba(47,188,225,.08);
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media(max-width:1050px){

  .lbr-hero-inner,
  .lbr-split,
  .lbr-sqc-layout{
    grid-template-columns:1fr;
  }

  .lbr-nav-grid,
  .lbr-resources{
    grid-template-columns:
      repeat(2,1fr);
  }

}


@media(max-width:760px){

  .lbr-shell,
  .lbr-hero-inner{
    width:min(100% - 28px,1240px);
  }

  .lbr-hero{
    min-height:auto;
  }

  .lbr-hero-inner{
    padding:68px 0 52px;
  }

  .lbr-head{
    grid-template-columns:1fr;
    gap:16px;
  }

  .lbr-checks,
  .lbr-downloads,
  .lbr-reg-list,
  .lbr-service-grid{
    grid-template-columns:1fr;
  }

  .lbr-sqc-options{
    grid-template-columns:1fr;
  }

  .lbr-notice{
    grid-template-columns:
      42px 1fr;
  }

  .lbr-notice-link{
    grid-column:1/-1;
  }

  .lbr-final-inner{
    display:grid;
  }

}


@media(max-width:520px){

  .lbr-nav-grid,
  .lbr-resources{
    grid-template-columns:1fr;
  }

  .lbr-path{
    grid-template-columns:
      34px minmax(0,1fr);
  }

  .lbr-path-tag{
    display:none;
  }

  .lbr-reg-tabs{
    display:grid;

    grid-template-columns:
      1fr;
  }

}


@media(prefers-reduced-motion:reduce){

  .lbr-steps::after,
  .lbr-step,
  .lbr-step-num{
    animation:none !important;
  }

}
