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

:root {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  }

.btn:focus-visible,.nav-link:focus-visible {
    outline: rgba(0,0,0,0)
}

.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px 24px;
    height: 46px;
    background: #408b82;
    border-radius: 46px;
    color: #fff !important;
    font-family: Brooklyn,sans-serif;
    font-size: 16px;
    font-weight: 600
}

.btn_transparent,.btn_ghost {
    border: 2px solid #232323;
    background: #fff;
    color: #232323 !important
}

.btn_ghost {
    border-color: rgba(0,0,0,0)
}

.btn-wrapper {
    justify-content: center;
    display: flex
}

.btn-wrapper_row {
    justify-content: flex-start;
    flex-direction: row;
    gap: 12px;
    flex-wrap: wrap
}

@font-face {
    font-family: Brooklyn;
    src: url("../fonts/Brooklyn-Normal.otf") format("otf"),url("../fonts/Brooklyn-Normal.ttf") format("ttf"),url("../fonts/Brooklyn-Normal.otf") format("opentype"),url("../fonts/Brooklyn-Normal.ttf") format("truetype");
    font-weight: 400;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: Brooklyn;
    src: url("../fonts/Brooklyn-SemiBold.otf") format("otf"),url("../fonts/Brooklyn-SemiBold.ttf") format("ttf"),url("../fonts/Brooklyn-SemiBold.otf") format("opentype"),url("../fonts/Brooklyn-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: Brooklyn;
    src: url("../fonts/Brooklyn-Bold.otf") format("otf"),url("../fonts/Brooklyn-Bold.ttf") format("ttf"),url("../fonts/Brooklyn-Bold.otf") format("opentype"),url("../fonts/Brooklyn-Bold.ttf") format("truetype");
    font-weight: 700;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: GeneralSans;
    src: url("../fonts/GeneralSans-Extralight.woff2") format("woff2"),url("../fonts/GeneralSans-Extralight.woff") format("woff"),url("../fonts/GeneralSans-Extralight.woff") format("woff");
    font-weight: 200;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: GeneralSans;
    src: url("../fonts/GeneralSans-Light.woff2") format("woff2"),url("../fonts/GeneralSans-Light.woff") format("woff"),url("../fonts/GeneralSans-Light.woff") format("woff");
    font-weight: 300;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: GeneralSans;
    src: url("../fonts/GeneralSans-Regular.woff2") format("woff2"),url("../fonts/GeneralSans-Regular.woff") format("woff"),url("../fonts/GeneralSans-Regular.woff") format("woff");
    font-weight: 400;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: GeneralSans;
    src: url("../fonts/GeneralSans-Medium.woff2") format("woff2"),url("../fonts/GeneralSans-Medium.woff") format("woff"),url("../fonts/GeneralSans-Medium.woff") format("woff");
    font-weight: 500;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: GeneralSans;
    src: url("../fonts/GeneralSans-Semibold.woff2") format("woff2"),url("../fonts/GeneralSans-Semibold.woff") format("woff"),url("../fonts/GeneralSans-Semibold.woff") format("woff");
    font-weight: 600;
    font-display: swap;
    font-style: normal
}

@font-face {
    font-family: GeneralSans;
    src: url("../fonts/GeneralSans-Bold.woff2") format("woff2"),url("../fonts/GeneralSans-Bold.woff") format("woff"),url("../fonts/GeneralSans-Bold.woff") format("woff");
    font-weight: 700;
    font-display: swap;
    font-style: normal
}

html,body {
    font-family: GeneralSans,sans-serif
}

.page-wrap {
    padding-top: 40px;
    overflow-y: scroll;
    overflow-x: hidden;
    height: 100%
}

@media(max-width: 1140px) {
    .page-wrap {
        padding-top:0
    }
}

@media(min-width: 1400px) {
    .container {
        max-width:1200px
    }
}

.branded-text-color {
    color: #408b82
}

.branded-text-color-custom {
    display: block
}

.container {
    padding-left: 20px;
    padding-right: 20px
}

.block-title {
    font-size: 56px;
    font-weight: 600;
    margin-bottom: 24px;
    letter-spacing: -0.03em
}

@media(max-width: 768px) {
    .block-title {
        text-align:left;
        font-size: 44px
    }
}

.block-text {
    line-height: 28px;
    font-size: 20px;
    font-weight: 500
}



.px-0 {
    padding-right: 0!important;
    padding-left: 0!important;
}

.expand-menu__header {
    height: 90px;
    border-color: #c0e0de
}

.expand-menu__toggler {
    width: 30px;
    height: 30px;
    border: 0;
    background: url("https://cdn.safeportlaw.com/webapp/img/nav-arrow.svg") no-repeat center
}

.expand-menu__btn {
    flex-grow: 1;
    flex-basis: 0
}

.expand-menu__list-item {
    height: 80px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between
}

.expand-menu__link {
    font-weight: 500;
    font-size: 20px;
    text-decoration: none;
    color: #232323
}

.expand-menu .btn-wrapper {
    height: 80px;
    align-items: center
}

.expand-menu .btn_transparent {
    border-color: rgba(64,139,130,.15)
}


.footer {
    background: linear-gradient(345.59deg, #408b82 0%, #408b82 100%);
    padding-top: 80px;
    color: #fff
}

.footer__logo {
    width: 221px
}

.footer__bottom-line {
    padding: 20px 0 17px;
    color: #f7f7f7;
    margin-top: 80px;
    border-top: 1px solid #5caaa0
}

.footer__bottom-line .container {
    display: flex;
    flex-direction: row;
    justify-content: space-between
}

@media(max-width: 1140px) {
    .footer__bottom-line .container {
        flex-direction:column
    }
}

.footer__bottom-line-text {
    font-size: 14px;
    letter-spacing: -0.015em;
    margin-bottom: 0;
    line-height: 24px
}

.footer__sections {
    display: flex;
    flex-direction: row;
    gap: 120px;
    justify-content: space-between;
    flex-wrap: wrap
}

@media(max-width: 1140px) {
    .footer__sections {
        gap:60px
    }
}

@media(max-width: 1140px) {
    .footer__sections-first {
        flex-direction:column
    }
}

.footer__sections>.footer__sections {
    flex: 1;
    gap: 24px
}

@media(max-width: 1140px) {
    .footer__sections>.footer__sections {
        gap:32px
    }
}

.footer__section {
    letter-spacing: -0.01em;
    gap: 12px;
    display: flex;
    flex-direction: column
}

.footer__section-title {
    font-weight: 600;
    font-size: 20px
}

@media(max-width: 1140px) {
    .footer__section-title {
        margin-bottom:0
    }
}

.footer__section-text {
    font-weight: 500;
    font-size: 16px;
    color: #fff;
    display: block;
    text-decoration: none;
    white-space: nowrap
}

.footer__section-text:hover {
    color: #fff;
    text-decoration: underline
}

.footer__socials {
    display: flex;
    width: 96px;
    justify-content: space-between
}

@media(max-width: 1140px) {
    .footer__socials {
        align-self:center;
        margin-top: 16px
    }
}

.footer__social {
    width: 24px;
    height: 24px;
    object-fit: none
}

.page-blog {
    background: none;
}
body{
    background: #f4f4f4;
}

.btn:focus-visible, .nav-link:focus-visible {
    outline: transparent;
}
.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px 24px;
    height: 46px;
    background: #408b82;
    border-radius: 46px;
    color: white !important;
    font-family: Brooklyn, sans-serif;
    font-size: 16px;
    font-weight: 600;
}
.btn_transparent, .btn_ghost {
    border: 2px solid #232323;
    background: white;
    color: #232323 !important;
}
.btn_ghost {
    border-color: transparent;
}
.btn-wrapper {
    justify-content: center;
    display: flex;
}
.btn-wrapper_row {
    justify-content: flex-start;
    flex-direction: row;
    gap: 12px;
    flex-wrap: wrap;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1020;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1020;
}

.sticky-top{    
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }

  .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    width: 100%;
    padding-right: var(--bs-gutter-x,.75rem);
    padding-left: var(--bs-gutter-x,.75rem);
    margin-right: auto;
    margin-left: auto;
}


@media (min-width: 576px){
    .container, .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px){
    .container, .container-md, .container-sm {
        max-width: 720px;
    }
}


  @media (min-width: 992px){
        .container, .container-lg, .container-md, .container-sm {
            max-width: 960px;
        }
  }

  .navbar {
    box-shadow: 0 16px 40px rgba(64,139,130,.12);
    height: 84px;
    font-size: 16px;
    border-radius: 16px
}


@media (min-width: 1200px){
    .navbar-expand-xl {
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1140px;
    }
}

@media(max-width: 1140px) {
    .navbar-container {
        padding:0 20px
    }
}


@media(max-width: 1140px) {
    .navbar {
        top:16px
    }
}

@media(max-width: 768px) {
    .navbar .navbar-brand {
        margin-right:0
    }
}

.navbar .phone-number {
    align-self: center;
    font-size: 16px;
    font-weight: 600
}

.navbar .navbar-toggler {
    border: none !important;
    box-shadow: none
}

.navbar .navbar-toggler-icon {
    background-image: url("https://cdn.safeportlaw.com/webapp/img/burger-icon.svg");
    width: 24px;
    height: 17px
}

.navbar .main-nav-list-item-link {
    font-size: 16px;
    font-weight: 500;
    color: #232323 !important
}

.navbar>.container, .navbar>.container-fluid, .navbar>.container-lg, .navbar>.container-md, .navbar>.container-sm, .navbar>.container-xl, .navbar>.container-xxl {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between;
}

.bg-white {
    background-color: #fff!important;
}
