











































































/*
* Bootstrap Grid v4.5.0 (https://getbootstrap.com/)
* Copyright 2011-2020 The Bootstrap Authors
* Copyright 2011-2020 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/



/* Responsive Grid */

.row-fluid {
    width: 100%;
  }
  
  .row-fluid:before, .row-fluid:after {
    display: table;
    content: "";
  }
  
  .row-fluid:after {
    clear: both;
  }
  
  .row-fluid [class*="span"] {
    display: block;
    float: left;
    width: 100%;
    /* min-height: 28px; */
    min-height: 0px;
    margin-left: 2.127659574%;
    box-sizing: border-box;
  }
  
  .row-fluid [class*="span"]:first-child {
    margin-left: 0;
  }
  
  .row-fluid .span12 {
    width: 99.99999998999999%;
  }
  
  .row-fluid .span11 {
    width: 91.489361693%;
  }
  
  .row-fluid .span10 {
    width: 82.97872339599999%;
  }
  
  .row-fluid .span9 {
    width: 74.468085099%;
  }
  
  .row-fluid .span8 {
    width: 65.95744680199999%;
  }
  
  .row-fluid .span7 {
    width: 57.446808505%;
  }
  
  .row-fluid .span6 {
    width: 48.93617020799999%;
  }
  
  .row-fluid .span5 {
    width: 40.425531911%;
  }
  
  .row-fluid .span4 {
    width: 31.914893614%;
  }
  
  .row-fluid .span3 {
    width: 23.404255317%;
  }
  
  .row-fluid .span2 {
    width: 14.89361702%;
  }
  
  .row-fluid .span1 {
    width: 6.382978723%;
  }
  
  .container-fluid:before, .container-fluid:after {
    display: table;
    content: "";
  }
  
  .container-fluid:after {
    clear: both;
  }
  
  @media (max-width: 767px) {
    .row-fluid {
        width: 100%;
    }
  
    .row-fluid [class*="span"] {
        display: block;
        float: none;
        width: auto;
        margin-left: 0;
    }
  }
  
  @media (min-width: 768px) and (max-width: 1139px) {
    .row-fluid {
        width: 100%;
    }
  
    .row-fluid:before, .row-fluid:after {
        display: table;
        content: "";
    }
  
    .row-fluid:after {
        clear: both;
    }
  
    .row-fluid [class*="span"] {
        display: block;
        float: left;
        width: 100%;
        /* min-height: 28px; */
        min-height: 0px;
        margin-left: 2.762430939%;
        box-sizing: border-box;
    }
  
    .row-fluid [class*="span"]:first-child {
        margin-left: 0;
    }
  
    .row-fluid .span12 {
        width: 99.999999993%;
    }
  
    .row-fluid .span11 {
        width: 91.436464082%;
    }
  
    .row-fluid .span10 {
        width: 82.87292817100001%;
    }
  
    .row-fluid .span9 {
        width: 74.30939226%;
    }
  
    .row-fluid .span8 {
        width: 65.74585634900001%;
    }
  
    .row-fluid .span7 {
        width: 57.182320438000005%;
    }
  
    .row-fluid .span6 {
        width: 48.618784527%;
    }
  
    .row-fluid .span5 {
        width: 40.055248616%;
    }
  
    .row-fluid .span4 {
        width: 31.491712705%;
    }
  
    .row-fluid .span3 {
        width: 22.928176794%;
    }
  
    .row-fluid .span2 {
        width: 14.364640883%;
    }
  
    .row-fluid .span1 {
        width: 5.801104972%;
    }
  }
  
  @media (min-width: 1280px) {
    .row-fluid {
        width: 100%;
    }
  
    .row-fluid:before, .row-fluid:after {
        display: table;
        content: "";
    }
  
    .row-fluid:after {
        clear: both;
    }
  
    .row-fluid [class*="span"] {
        display: block;
        float: left;
        width: 100%;
        /* min-height: 28px; */
        min-height: 0px;
        margin-left: 2.564102564%;
        box-sizing: border-box;
    }
  
    .row-fluid [class*="span"]:first-child {
        margin-left: 0;
    }
  
    .row-fluid .span12 {
        width: 100%;
    }
  
    .row-fluid .span11 {
        width: 91.45299145300001%;
    }
  
    .row-fluid .span10 {
        width: 82.905982906%;
    }
  
    .row-fluid .span9 {
        width: 74.358974359%;
    }
  
    .row-fluid .span8 {
        width: 65.81196581200001%;
    }
  
    .row-fluid .span7 {
        width: 57.264957265%;
    }
  
    .row-fluid .span6 {
        width: 48.717948718%;
    }
  
    .row-fluid .span5 {
        width: 40.170940171000005%;
    }
  
    .row-fluid .span4 {
        width: 31.623931624%;
    }
  
    .row-fluid .span3 {
        width: 23.076923077%;
    }
  
    .row-fluid .span2 {
        width: 14.529914530000001%;
    }
  
    .row-fluid .span1 {
        width: 5.982905983%;
    }
  }
  
  /* Clearfix */

  
  .clearfix:before, .clearfix:after {
    display: table;
    content: "";
  }
  
  .clearfix:after {
    clear: both;
  }
  
  
  
   html {
      box-sizing: border-box;
    }
    
    *,
    *::before,
    *::after {
      box-sizing: inherit;
    }
    
    .container {
      width: 100%;
      padding-right: 20px;
      padding-left: 20px;
      margin-right: auto;
      margin-left: auto;
    }


    
    @media (min-width: 576px) {
      .container {
        max-width: 540px;
      }
    }
    
    @media (min-width: 768px) {
      .container {
        max-width: 720px;
      }
    }
    
    @media (min-width: 1024px) {
      .container {
        max-width: 960px;
      }
    }
    
    @media (min-width: 1320px) {
      .container {
        max-width: 1280px;
      }
    }
    
    .container-fluid {
      width: 100%;
      padding-right: 0px;
      padding-left: 0px;
      margin-right: auto;
      margin-left: auto;
    } 
    .container--sm, .container--md, .container--lg, .container--xl {
      width: 100%;
      padding-right: 20px;
      padding-left: 20px;
      margin-right: auto;
      margin-left: auto;
    }


    .section--dnd > .container-fluid {
      padding-left: 0;
      padding-right: 0;
    }
    
    @media (min-width: 576px) {
      .container, .container--sm {
        max-width: 540px;
      }
    }
    
    @media (min-width: 768px) {
      .container, .container--sm, .container--md {
        max-width: 720px;
      }
    }
    
    @media (min-width: 1024px) {
      .container, .container--sm, .container--md, .container--lg {
        max-width: 960px;
      }
    }
    
    @media (min-width: 1320px) {
      .container, .container--sm, .container--md, .container--lg, .container--xl {
        max-width: 1280px;
        /* padding-left: 80px;
        padding-right: 80px; */
      }
    }

    .container--sm {
      max-width: 590px;
    }
    .container--md {
      max-width: 812px;
    }
    .container--lg {
      max-width: 1120px;
    }
    
    .row {
      display: flex;
      flex-wrap: wrap;
      margin-right: -16px;
      margin-left: -16px;
      row-gap: 2rem;
    }

    
    .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
    .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
    .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
    .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
    .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
    .col-xl-auto {
      position: relative;
      width: 100%;
      padding-right: 16px;
      padding-left: 16px;
    }
    
    .col {
      flex-basis: 0;
      flex-grow: 1;
      min-width: 0;
      max-width: 100%;
    }
    
    .row-cols-1 > * {
      flex: 0 0 100%;
      max-width: 100%;
    }
    
    .row-cols-2 > * {
      flex: 0 0 50%;
      max-width: 50%;
    }
    
    .row-cols-3 > * {
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    
    .row-cols-4 > * {
      flex: 0 0 25%;
      max-width: 25%;
    }
    
    .row-cols-5 > * {
      flex: 0 0 20%;
      max-width: 20%;
    }
    
    .row-cols-6 > * {
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    
    .col-auto {
      flex: 0 0 auto;
      width: auto;
      max-width: 100%;
    }
    
    .col-1 {
      flex: 0 0 8.333333%;
      max-width: 8.333333%;
    }
    
    .col-2 {
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    
    .col-3 {
      flex: 0 0 25%;
      max-width: 25%;
    }
    
    .col-4 {
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    
    .col-5 {
      flex: 0 0 41.666667%;
      max-width: 41.666667%;
    }
    
    .col-6 {
      flex: 0 0 50%;
      max-width: 50%;
    }
    
    .col-7 {
      flex: 0 0 58.333333%;
      max-width: 58.333333%;
    }
    
    .col-8 {
      flex: 0 0 66.666667%;
      max-width: 66.666667%;
    }
    
    .col-9 {
      flex: 0 0 75%;
      max-width: 75%;
    }
    
    .col-10 {
      flex: 0 0 83.333333%;
      max-width: 83.333333%;
    }
    
    .col-11 {
      flex: 0 0 91.666667%;
      max-width: 91.666667%;
    }
    
    .col-12 {
      flex: 0 0 100%;
      max-width: 100%;
    }
    
    
    @media (min-width: 576px) {
      .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%;
      }
      .row-cols-sm-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
      }
      .row-cols-sm-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .row-cols-sm-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .row-cols-sm-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .row-cols-sm-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
      }
      .row-cols-sm-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
      }
      .col-sm-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
      }
      .col-sm-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .col-sm-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
      }
      .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .col-sm-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
      }
      .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
      }
      .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%;
      }
      .col-sm-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
      }
      .col-sm-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
      }
      .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%;
      }
      
    }
    
    @media (min-width: 768px) {
      .col-md {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%;
      }
      .row-cols-md-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
      }
      .row-cols-md-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .row-cols-md-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .row-cols-md-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .row-cols-md-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
      }
      .row-cols-md-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-md-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
      }
      .col-md-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
      }
      .col-md-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .col-md-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
      }
      .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .col-md-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
      }
      .col-md-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
      }
      .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%;
      }
      .col-md-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
      }
      .col-md-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
      }
      .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
      }
      
    }
    
    @media (min-width: 1024px) {
      .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%;
      }
      .row-cols-lg-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
      }
      .row-cols-lg-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .row-cols-lg-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .row-cols-lg-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .row-cols-lg-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
      }
      .row-cols-lg-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
      }
      .col-lg-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
      }
      .col-lg-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .col-lg-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .col-lg-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
      }
      .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .col-lg-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
      }
      .col-lg-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
      }
      .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%;
      }
      .col-lg-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
      }
      .col-lg-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
      }
      .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%;
      }
      
    }
    
    @media (min-width: 1281px ) {
      .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        min-width: 0;
        max-width: 100%;
      }
      .row-cols-xl-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
      }
      .row-cols-xl-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .row-cols-xl-3 > * {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .row-cols-xl-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .row-cols-xl-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
      }
      .row-cols-xl-6 > * {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
      }
      .col-xl-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
      }
      .col-xl-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
      }
      .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%;
      }
      .col-xl-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
      }
      .col-xl-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
      }
      .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%;
      }
      .col-xl-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
      }
      .col-xl-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
      }
      .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%;
      }
      .col-xl-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
      }
      .col-xl-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
      }
      .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%;
      }
    }
    
    .d-none {
      display: none !important;
    }
    
    .d-inline {
      display: inline !important;
    }
    
    .d-inline-block {
      display: inline-block !important;
    }
    
    .d-block {
      display: block !important;
    }
    
    .d-table {
      display: table !important;
    }
    
    .d-table-row {
      display: table-row !important;
    }
    
    .d-table-cell {
      display: table-cell !important;
    }
    
    .d-flex {
      display: flex !important;
    }
    
    .d-inline-flex {
      display: inline-flex !important;
    }
    
    @media (min-width: 576px) {
      .d-sm-none {
        display: none !important;
      }
      .d-sm-inline {
        display: inline !important;
      }
      .d-sm-inline-block {
        display: inline-block !important;
      }
      .d-sm-block {
        display: block !important;
      }
      .d-sm-table {
        display: table !important;
      }
      .d-sm-table-row {
        display: table-row !important;
      }
      .d-sm-table-cell {
        display: table-cell !important;
      }
      .d-sm-flex {
        display: flex !important;
      }
      .d-sm-inline-flex {
        display: inline-flex !important;
      }
    }
    
    @media (min-width: 768px) {
      .d-md-none {
        display: none !important;
      }
      .d-md-inline {
        display: inline !important;
      }
      .d-md-inline-block {
        display: inline-block !important;
      }
      .d-md-block {
        display: block !important;
      }
      .d-md-table {
        display: table !important;
      }
      .d-md-table-row {
        display: table-row !important;
      }
      .d-md-table-cell {
        display: table-cell !important;
      }
      .d-md-flex {
        display: flex !important;
      }
      .d-md-inline-flex {
        display: inline-flex !important;
      }
    }
    
    @media (min-width: 1024px) {
      .d-lg-none {
        display: none !important;
      }
      .d-lg-inline {
        display: inline !important;
      }
      .d-lg-inline-block {
        display: inline-block !important;
      }
      .d-lg-block {
        display: block !important;
      }
      .d-lg-table {
        display: table !important;
      }
      .d-lg-table-row {
        display: table-row !important;
      }
      .d-lg-table-cell {
        display: table-cell !important;
      }
      .d-lg-flex {
        display: flex !important;
      }
      .d-lg-inline-flex {
        display: inline-flex !important;
      }
    }
    
    @media (min-width: 1281px ) {
      .d-xl-none {
        display: none !important;
      }
      .d-xl-inline {
        display: inline !important;
      }
      .d-xl-inline-block {
        display: inline-block !important;
      }
      .d-xl-block {
        display: block !important;
      }
      .d-xl-table {
        display: table !important;
      }
      .d-xl-table-row {
        display: table-row !important;
      }
      .d-xl-table-cell {
        display: table-cell !important;
      }
      .d-xl-flex {
        display: flex !important;
      }
      .d-xl-inline-flex {
        display: inline-flex !important;
      }
    }
    
    @media print {
      .d-print-none {
        display: none !important;
      }
      .d-print-inline {
        display: inline !important;
      }
      .d-print-inline-block {
        display: inline-block !important;
      }
      .d-print-block {
        display: block !important;
      }
      .d-print-table {
        display: table !important;
      }
      .d-print-table-row {
        display: table-row !important;
      }
      .d-print-table-cell {
        display: table-cell !important;
      }
      .d-print-flex {
        display: flex !important;
      }
      .d-print-inline-flex {
        display: inline-flex !important;
      }
    }
    
    .flex-row {
      flex-direction: row !important;
    }
    
    .flex-column {
      flex-direction: column !important;
    }
    
    .flex-row-reverse {
      flex-direction: row-reverse !important;
    }
    
    .flex-column-reverse {
      flex-direction: column-reverse !important;
    }
    
    .flex-wrap {
      flex-wrap: wrap !important;
    }
    
    .flex-nowrap {
      flex-wrap: nowrap !important;
    }
    
    .flex-wrap-reverse {
      flex-wrap: wrap-reverse !important;
    }
    
    @media (min-width: 1320px) {
      .flex-xl-wrap {
        flex-wrap: wrap !important;
      }
      .flex-xl-nowrap {
        flex-wrap: nowrap !important;
      }
      .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
      }
    }

    
    .flex-fill {
      flex: 1 1 auto !important;
    }
    
    .flex-grow-0 {
      flex-grow: 0 !important;
    }
    
    .flex-grow-1 {
      flex-grow: 1 !important;
    }
    
    .flex-shrink-0 {
      flex-shrink: 0 !important;
    }
    
    .flex-shrink-1 {
      flex-shrink: 1 !important;
    }
    
    .justify-content-start {
      justify-content: flex-start !important;
    }
    
    .justify-content-end {
      justify-content: flex-end !important;
    }
    
    .justify-content-center {
      justify-content: center !important;
    }
    
    .justify-content-between {
      justify-content: space-between !important;
    }
    
    .justify-content-around {
      justify-content: space-around !important;
    }
    
    .align-items-start {
      align-items: flex-start !important;
    }
    
    .align-items-end {
      align-items: flex-end !important;
    }
    
    .align-items-center {
      align-items: center !important;
    }
    
    .align-items-baseline {
      align-items: baseline !important;
    }
    
    .align-items-stretch {
      align-items: stretch !important;
    }
    
    .align-content-start {
      align-content: flex-start !important;
    }
    
    .align-content-end {
      align-content: flex-end !important;
    }
    
    .align-content-center {
      align-content: center !important;
    }
    
    .align-content-between {
      align-content: space-between !important;
    }
    
    .align-content-around {
      align-content: space-around !important;
    }
    
    .align-content-stretch {
      align-content: stretch !important;
    }
    
    .align-self-auto {
      align-self: auto !important;
    }
    
    .align-self-start {
      align-self: flex-start !important;
    }
    
    .align-self-end {
      align-self: flex-end !important;
    }
    
    .align-self-center {
      align-self: center !important;
    }
    
    .align-self-baseline {
      align-self: baseline !important;
    }
    
    .align-self-stretch {
      align-self: stretch !important;
    }
    
    @media (min-width: 576px) {
      .flex-sm-row {
        flex-direction: row !important;
      }
      .flex-sm-column {
        flex-direction: column !important;
      }
      .flex-sm-row-reverse {
        flex-direction: row-reverse !important;
      }
      .flex-sm-column-reverse {
        flex-direction: column-reverse !important;
      }
      .flex-sm-wrap {
        flex-wrap: wrap !important;
      }
      .flex-sm-nowrap {
        flex-wrap: nowrap !important;
      }
      .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important;
      }
      .flex-sm-fill {
        flex: 1 1 auto !important;
      }
      .flex-sm-grow-0 {
        flex-grow: 0 !important;
      }
      .flex-sm-grow-1 {
        flex-grow: 1 !important;
      }
      .flex-sm-shrink-0 {
        flex-shrink: 0 !important;
      }
      .flex-sm-shrink-1 {
        flex-shrink: 1 !important;
      }
      .justify-content-sm-start {
        justify-content: flex-start !important;
      }
      .justify-content-sm-end {
        justify-content: flex-end !important;
      }
      .justify-content-sm-center {
        justify-content: center !important;
      }
      .justify-content-sm-between {
        justify-content: space-between !important;
      }
      .justify-content-sm-around {
        justify-content: space-around !important;
      }
      .align-items-sm-start {
        align-items: flex-start !important;
      }
      .align-items-sm-end {
        align-items: flex-end !important;
      }
      .align-items-sm-center {
        align-items: center !important;
      }
      .align-items-sm-baseline {
        align-items: baseline !important;
      }
      .align-items-sm-stretch {
        align-items: stretch !important;
      }
      .align-content-sm-start {
        align-content: flex-start !important;
      }
      .align-content-sm-end {
        align-content: flex-end !important;
      }
      .align-content-sm-center {
        align-content: center !important;
      }
      .align-content-sm-between {
        align-content: space-between !important;
      }
      .align-content-sm-around {
        align-content: space-around !important;
      }
      .align-content-sm-stretch {
        align-content: stretch !important;
      }
      .align-self-sm-auto {
        align-self: auto !important;
      }
      .align-self-sm-start {
        align-self: flex-start !important;
      }
      .align-self-sm-end {
        align-self: flex-end !important;
      }
      .align-self-sm-center {
        align-self: center !important;
      }
      .align-self-sm-baseline {
        align-self: baseline !important;
      }
      .align-self-sm-stretch {
        align-self: stretch !important;
      }
    }
    
    @media (min-width: 768px) {
      .flex-md-row {
        flex-direction: row !important;
      }
      .flex-md-column {
        flex-direction: column !important;
      }
      .flex-md-row-reverse {
        flex-direction: row-reverse !important;
      }
      .flex-md-column-reverse {
        flex-direction: column-reverse !important;
      }
      .flex-md-wrap {
        flex-wrap: wrap !important;
      }
      .flex-md-nowrap {
        flex-wrap: nowrap !important;
      }
      .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important;
      }
      .flex-md-fill {
        flex: 1 1 auto !important;
      }
      .flex-md-grow-0 {
        flex-grow: 0 !important;
      }
      .flex-md-grow-1 {
        flex-grow: 1 !important;
      }
      .flex-md-shrink-0 {
        flex-shrink: 0 !important;
      }
      .flex-md-shrink-1 {
        flex-shrink: 1 !important;
      }
      .justify-content-md-start {
        justify-content: flex-start !important;
      }
      .justify-content-md-end {
        justify-content: flex-end !important;
      }
      .justify-content-md-center {
        justify-content: center !important;
      }
      .justify-content-md-between {
        justify-content: space-between !important;
      }
      .justify-content-md-around {
        justify-content: space-around !important;
      }
      .align-items-md-start {
        align-items: flex-start !important;
      }
      .align-items-md-end {
        align-items: flex-end !important;
      }
      .align-items-md-center {
        align-items: center !important;
      }
      .align-items-md-baseline {
        align-items: baseline !important;
      }
      .align-items-md-stretch {
        align-items: stretch !important;
      }
      .align-content-md-start {
        align-content: flex-start !important;
      }
      .align-content-md-end {
        align-content: flex-end !important;
      }
      .align-content-md-center {
        align-content: center !important;
      }
      .align-content-md-between {
        align-content: space-between !important;
      }
      .align-content-md-around {
        align-content: space-around !important;
      }
      .align-content-md-stretch {
        align-content: stretch !important;
      }
      .align-self-md-auto {
        align-self: auto !important;
      }
      .align-self-md-start {
        align-self: flex-start !important;
      }
      .align-self-md-end {
        align-self: flex-end !important;
      }
      .align-self-md-center {
        align-self: center !important;
      }
      .align-self-md-baseline {
        align-self: baseline !important;
      }
      .align-self-md-stretch {
        align-self: stretch !important;
      }
    }
    
    @media (min-width: 1024px) {
      .flex-lg-row {
        flex-direction: row !important;
      }
      .flex-lg-column {
        flex-direction: column !important;
      }
      .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
      }
      .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
      }
      .flex-lg-wrap {
        flex-wrap: wrap !important;
      }
      .flex-lg-nowrap {
        flex-wrap: nowrap !important;
      }
      .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important;
      }
      .flex-lg-fill {
        flex: 1 1 auto !important;
      }
      .flex-lg-grow-0 {
        flex-grow: 0 !important;
      }
      .flex-lg-grow-1 {
        flex-grow: 1 !important;
      }
      .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
      }
      .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
      }
      .justify-content-lg-start {
        justify-content: flex-start !important;
      }
      .justify-content-lg-end {
        justify-content: flex-end !important;
      }
      .justify-content-lg-center {
        justify-content: center !important;
      }
      .justify-content-lg-between {
        justify-content: space-between !important;
      }
      .justify-content-lg-around {
        justify-content: space-around !important;
      }
      .align-items-lg-start {
        align-items: flex-start !important;
      }
      .align-items-lg-end {
        align-items: flex-end !important;
      }
      .align-items-lg-center {
        align-items: center !important;
      }
      .align-items-lg-baseline {
        align-items: baseline !important;
      }
      .align-items-lg-stretch {
        align-items: stretch !important;
      }
      .align-content-lg-start {
        align-content: flex-start !important;
      }
      .align-content-lg-end {
        align-content: flex-end !important;
      }
      .align-content-lg-center {
        align-content: center !important;
      }
      .align-content-lg-between {
        align-content: space-between !important;
      }
      .align-content-lg-around {
        align-content: space-around !important;
      }
      .align-content-lg-stretch {
        align-content: stretch !important;
      }
      .align-self-lg-auto {
        align-self: auto !important;
      }
      .align-self-lg-start {
        align-self: flex-start !important;
      }
      .align-self-lg-end {
        align-self: flex-end !important;
      }
      .align-self-lg-center {
        align-self: center !important;
      }
      .align-self-lg-baseline {
        align-self: baseline !important;
      }
      .align-self-lg-stretch {
        align-self: stretch !important;
      }
    }
    
    @media (min-width: 1320px) {
      .flex-xl-row {
        flex-direction: row !important;
      }
      .flex-xl-column {
        flex-direction: column !important;
      }
      .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
      }
      .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
      }
      .flex-xl-wrap {
        flex-wrap: wrap !important;
      }
      .flex-xl-nowrap {
        flex-wrap: nowrap !important;
      }
      .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
      }
      .flex-xl-fill {
        flex: 1 1 auto !important;
      }
      .flex-xl-grow-0 {
        flex-grow: 0 !important;
      }
      .flex-xl-grow-1 {
        flex-grow: 1 !important;
      }
      .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
      }
      .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
      }
      .justify-content-xl-start {
        justify-content: flex-start !important;
      }
      .justify-content-xl-end {
        justify-content: flex-end !important;
      }
      .justify-content-xl-center {
        justify-content: center !important;
      }
      .justify-content-xl-between {
        justify-content: space-between !important;
      }
      .justify-content-xl-around {
        justify-content: space-around !important;
      }
      .align-items-xl-start {
        align-items: flex-start !important;
      }
      .align-items-xl-end {
        align-items: flex-end !important;
      }
      .align-items-xl-center {
        align-items: center !important;
      }
      .align-items-xl-baseline {
        align-items: baseline !important;
      }
      .align-items-xl-stretch {
        align-items: stretch !important;
      }
      .align-content-xl-start {
        align-content: flex-start !important;
      }
      .align-content-xl-end {
        align-content: flex-end !important;
      }
      .align-content-xl-center {
        align-content: center !important;
      }
      .align-content-xl-between {
        align-content: space-between !important;
      }
      .align-content-xl-around {
        align-content: space-around !important;
      }
      .align-content-xl-stretch {
        align-content: stretch !important;
      }
      .align-self-xl-auto {
        align-self: auto !important;
      }
      .align-self-xl-start {
        align-self: flex-start !important;
      }
      .align-self-xl-end {
        align-self: flex-end !important;
      }
      .align-self-xl-center {
        align-self: center !important;
      }
      .align-self-xl-baseline {
        align-self: baseline !important;
      }
      .align-self-xl-stretch {
        align-self: stretch !important;
      }
    }
    
    .m-0 {
      margin: 0 !important;
    }
    
    .mt-0,
    .my-0 {
      margin-top: 0 !important;
    }
    
    .mr-0,
    .mx-0 {
      margin-right: 0 !important;
    }
    
    .mb-0,
    .my-0 {
      margin-bottom: 0 !important;
    }
    
    .ml-0,
    .mx-0 {
      margin-left: 0 !important;
    }
    
    .m-1 {
      margin: 0.25rem !important;
    }
    
    .mt-1,
    .my-1 {
      margin-top: 0.25rem !important;
    }
    
    .mr-1,
    .mx-1 {
      margin-right: 0.25rem !important;
    }
    
    .mb-1,
    .my-1 {
      margin-bottom: 0.25rem !important;
    }
    
    .ml-1,
    .mx-1 {
      margin-left: 0.25rem !important;
    }
    
    .m-2 {
      margin: 0.5rem !important;
    }
    
    .mt-2,
    .my-2 {
      margin-top: 0.5rem !important;
    }
    
    .mr-2,
    .mx-2 {
      margin-right: 0.5rem !important;
    }
    
    .mb-2,
    .my-2 {
      margin-bottom: 0.5rem !important;
    }
    
    .ml-2,
    .mx-2 {
      margin-left: 0.5rem !important;
    }
    
    .m-3 {
      margin: 1rem !important;
    }
    
    .mt-3,
    .my-3 {
      margin-top: 1rem !important;
    }
    
    .mr-3,
    .mx-3 {
      margin-right: 1rem !important;
    }
    
    .mb-3,
    .my-3 {
      margin-bottom: 1rem !important;
    }
    
    .ml-3,
    .mx-3 {
      margin-left: 1rem !important;
    }
    
    .m-4 {
      margin: 1.5rem !important;
    }
    
    .mt-4,
    .my-4 {
      margin-top: 1.5rem !important;
    }
    .mt-4-5,
    .my-4-5 {
      margin-top: 2rem !important;
    }
    
    .mr-4,
    .mx-4 {
      margin-right: 1.5rem !important;
    }
    .mr-4-5,
    .mx-4-5 {
      margin-right: 2rem !important;
    }
    
    .mb-4,
    .my-4 {
      margin-bottom: 1.5rem !important;
    }
    .mb-4-5,
    .my-4-5 {
      margin-bottom: 2rem !important;
    }
    
    .ml-4,
    .mx-4 {
      margin-left: 1.5rem !important;
    }
    .ml-4-5,
    .mx-4-5 {
      margin-left: 2rem !important;
    }
    
    .m-5 {
      margin: 3rem !important;
    }
    
    .mt-5,
    .my-5 {
      margin-top: 3rem !important;
    }
    
    .mr-5,
    .mx-5 {
      margin-right: 3rem !important;
    }
    
    .mb-5,
    .my-5 {
      margin-bottom: 3rem !important;
    }
    
    .ml-5,
    .mx-5 {
      margin-left: 3rem !important;
    }
    
    
    .m-6 {
      margin: 4rem !important;
    }
    
    .mt-6,
    .my-6 {
      margin-top: 4rem !important;
    }
    
    .mr-6,
    .mx-6 {
      margin-right: 4rem !important;
    }
    
    .mb-6,
    .my-6 {
      margin-bottom: 4rem !important;
    }
    
    .ml-6,
    .mx-6 {
      margin-left: 4rem !important;
    }
    
    .p-0 {
      padding: 0 !important;
    }
    
    .pt-0,
    .py-0 {
      padding-top: 0 !important;
    }
    
    .pr-0,
    .px-0 {
      padding-right: 0 !important;
    }
    
    .pb-0,
    .py-0 {
      padding-bottom: 0 !important;
    }
    
    .pl-0,
    .px-0 {
      padding-left: 0 !important;
    }
    
    .p-1 {
      padding: 0.25rem !important;
    }
    
    .pt-1,
    .py-1 {
      padding-top: 0.25rem !important;
    }
    
    .pr-1,
    .px-1 {
      padding-right: 0.25rem !important;
    }
    
    .pb-1,
    .py-1 {
      padding-bottom: 0.25rem !important;
    }
    
    .pl-1,
    .px-1 {
      padding-left: 0.25rem !important;
    }
    
    .p-2 {
      padding: 0.5rem !important;
    }
    
    .pt-2,
    .py-2 {
      padding-top: 0.5rem !important;
    }
    
    .pr-2,
    .px-2 {
      padding-right: 0.5rem !important;
    }
    
    .pb-2,
    .py-2 {
      padding-bottom: 0.5rem !important;
    }
    
    .pl-2,
    .px-2 {
      padding-left: 0.5rem !important;
    }

    
    .p-2-5 {
      padding: .75rem !important;
    }
    
    .pt-2-5,
    .py-2-5 {
      padding-top: .75rem !important;
    }
    
    .pr-2-5,
    .px-2-5 {
      padding-right: .75rem !important;
    }
    
    .pb-2-5,
    .py-2-5 {
      padding-bottom: .75rem !important;
    }
    
    .pl-2-5,
    .px-2-5 {
      padding-left: .75rem !important;
    }
    
    .p-3 {
      padding: 1rem !important;
    }
    
    .pt-3,
    .py-3 {
      padding-top: 1rem !important;
    }
    
    .pr-3,
    .px-3 {
      padding-right: 1rem !important;
    }
    
    .pb-3,
    .py-3 {
      padding-bottom: 1rem !important;
    }
    
    .pl-3,
    .px-3 {
      padding-left: 1rem !important;
    }
    
    .p-4 {
      padding: 1.5rem !important;
    }
    
    .pt-4,
    .py-4 {
      padding-top: 1.5rem !important;
    }
    
    .pr-4,
    .px-4 {
      padding-right: 1.5rem !important;
    }
    
    .pb-4,
    .py-4 {
      padding-bottom: 1.5rem !important;
    }
    
    .pl-4,
    .px-4 {
      padding-left: 1.5rem !important;
    }
    
    .p-4-5 {
      padding: 2rem !important;
    }
    
    .pt-4-5,
    .py-4-5 {
      padding-top: 2rem !important;
    }
    
    .pr-4-5,
    .px-4-5 {
      padding-right: 2rem !important;
    }
    
    .pb-4-5,
    .py-4-5 {
      padding-bottom: 2rem !important;
    }
    
    .pl-4-5,
    .px-4-5 {
      padding-left: 2rem !important;
    }
    
    .p-5 {
      padding: 3rem !important;
    }
    .p-6 {
      padding: 4rem !important;
    }
    .p-10 {
      padding: 5rem !important;
    }
    
    .pt-5,
    .py-5 {
      padding-top: 3rem !important;
    }
    .pt-6,
    .py-6 {
      padding-top: 4rem !important;
    }
    
    .pr-5,
    .px-5 {
      padding-right: 3rem !important;
    }
    .pr-6,
    .px-6 {
      padding-right: 4rem !important;
    }
    
    .pb-5,
    .py-5 {
      padding-bottom: 3rem !important;
    }
    .pb-6,
    .py-6 {
      padding-bottom: 4rem !important;
    }
    
    .pl-5,
    .px-5 {
      padding-left: 3rem !important;
    }
    .pl-6,
    .px-6 {
      padding-left: 4rem !important;
    }
    
    .m-n1 {
      margin: -0.25rem !important;
    }
    
    .mt-n1,
    .my-n1 {
      margin-top: -0.25rem !important;
    }
    
    .mr-n1,
    .mx-n1 {
      margin-right: -0.25rem !important;
    }
    
    .mb-n1,
    .my-n1 {
      margin-bottom: -0.25rem !important;
    }
    
    .ml-n1,
    .mx-n1 {
      margin-left: -0.25rem !important;
    }
    
    .m-n2 {
      margin: -0.5rem !important;
    }
    
    .mt-n2,
    .my-n2 {
      margin-top: -0.5rem !important;
    }
    
    .mr-n2,
    .mx-n2 {
      margin-right: -0.5rem !important;
    }
    
    .mb-n2,
    .my-n2 {
      margin-bottom: -0.5rem !important;
    }
    
    .ml-n2,
    .mx-n2 {
      margin-left: -0.5rem !important;
    }
    
    .m-n3 {
      margin: -1rem !important;
    }
    
    .mt-n3,
    .my-n3 {
      margin-top: -1rem !important;
    }
    
    .mr-n3,
    .mx-n3 {
      margin-right: -1rem !important;
    }
    
    .mb-n3,
    .my-n3 {
      margin-bottom: -1rem !important;
    }
    
    .ml-n3,
    .mx-n3 {
      margin-left: -1rem !important;
    }
    
    .m-n4 {
      margin: -1.5rem !important;
    }
    
    .mt-n4,
    .my-n4 {
      margin-top: -1.5rem !important;
    }
    
    .mr-n4,
    .mx-n4 {
      margin-right: -1.5rem !important;
    }
    
    .mb-n4,
    .my-n4 {
      margin-bottom: -1.5rem !important;
    }
    
    .ml-n4,
    .mx-n4 {
      margin-left: -1.5rem !important;
    }
    
    .m-n5 {
      margin: -3rem !important;
    }
    
    .mt-n5,
    .my-n5 {
      margin-top: -3rem !important;
    }
    
    .mr-n5,
    .mx-n5 {
      margin-right: -3rem !important;
    }
    
    .mb-n5,
    .my-n5 {
      margin-bottom: -3rem !important;
    }
    
    .ml-n5,
    .mx-n5 {
      margin-left: -3rem !important;
    }
    
    .m-auto {
      margin: auto !important;
    }
    
    .mt-auto,
    .my-auto {
      margin-top: auto !important;
    }
    
    .mr-auto,
    .mx-auto {
      margin-right: auto !important;
    }
    
    .mb-auto,
    .my-auto {
      margin-bottom: auto !important;
    }
    
    .ml-auto,
    .mx-auto {
      margin-left: auto !important;
    }
    
    @media (min-width: 576px) {
      .m-sm-0 {
        margin: 0 !important;
      }
      .mt-sm-0,
      .my-sm-0 {
        margin-top: 0 !important;
      }
      .mr-sm-0,
      .mx-sm-0 {
        margin-right: 0 !important;
      }
      .mb-sm-0,
      .my-sm-0 {
        margin-bottom: 0 !important;
      }
      .ml-sm-0,
      .mx-sm-0 {
        margin-left: 0 !important;
      }
      .m-sm-1 {
        margin: 0.25rem !important;
      }
      .mt-sm-1,
      .my-sm-1 {
        margin-top: 0.25rem !important;
      }
      .mr-sm-1,
      .mx-sm-1 {
        margin-right: 0.25rem !important;
      }
      .mb-sm-1,
      .my-sm-1 {
        margin-bottom: 0.25rem !important;
      }
      .ml-sm-1,
      .mx-sm-1 {
        margin-left: 0.25rem !important;
      }
      .m-sm-2 {
        margin: 0.5rem !important;
      }
      .mt-sm-2,
      .my-sm-2 {
        margin-top: 0.5rem !important;
      }
      .mr-sm-2,
      .mx-sm-2 {
        margin-right: 0.5rem !important;
      }
      .mb-sm-2,
      .my-sm-2 {
        margin-bottom: 0.5rem !important;
      }
      .ml-sm-2,
      .mx-sm-2 {
        margin-left: 0.5rem !important;
      }
      
      
      .m-sm-2-5 {
        margin: .75rem !important;
      }
      .mt-sm-2-5,
      .my-sm-2-5 {
        margin-top: .75rem !important;
      }
      .mr-sm-2-5,
      .mx-sm-2-5 {
        margin-right: .75rem !important;
      }
      .mb-sm-2-5,
      .my-sm-2-5 {
        margin-bottom: .75rem !important;
      }
      .ml-sm-2-5,
      .mx-sm-2-5 {
        margin-left: .75rem !important;
      }
      .m-sm-3 {
        margin: 1rem !important;
      }
      .mt-sm-3,
      .my-sm-3 {
        margin-top: 1rem !important;
      }
      .mr-sm-3,
      .mx-sm-3 {
        margin-right: 1rem !important;
      }
      .mb-sm-3,
      .my-sm-3 {
        margin-bottom: 1rem !important;
      }
      .ml-sm-3,
      .mx-sm-3 {
        margin-left: 1rem !important;
      }
      .m-sm-4 {
        margin: 1.5rem !important;
      }
      .mt-sm-4,
      .my-sm-4 {
        margin-top: 1.5rem !important;
      }
      .mr-sm-4,
      .mx-sm-4 {
        margin-right: 1.5rem !important;
      }
      .mb-sm-4,
      .my-sm-4 {
        margin-bottom: 1.5rem !important;
      }
      .ml-sm-4,
      .mx-sm-4 {
        margin-left: 1.5rem !important;
      }
      .m-sm-5 {
        margin: 3rem !important;
      }
      .mt-sm-5,
      .my-sm-5 {
        margin-top: 3rem !important;
      }
      .mr-sm-5,
      .mx-sm-5 {
        margin-right: 3rem !important;
      }
      .mb-sm-5,
      .my-sm-5 {
        margin-bottom: 3rem !important;
      }
      .ml-sm-5,
      .mx-sm-5 {
        margin-left: 3rem !important;
      }

      
      .m-sm-6 {
        margin: 4rem !important;
      }
      .mt-sm-6,
      .my-sm-6 {
        margin-top: 4rem !important;
      }
      .mr-sm-6,
      .mx-sm-6 {
        margin-right: 4rem !important;
      }
      .mb-sm-6,
      .my-sm-6 {
        margin-bottom: 4rem !important;
      }
      .ml-sm-6,
      .mx-sm-6 {
        margin-left: 4rem !important;
      }
      .p-sm-0 {
        padding: 0 !important;
      }
      .pt-sm-0,
      .py-sm-0 {
        padding-top: 0 !important;
      }
      .pr-sm-0,
      .px-sm-0 {
        padding-right: 0 !important;
      }
      .pb-sm-0,
      .py-sm-0 {
        padding-bottom: 0 !important;
      }
      .pl-sm-0,
      .px-sm-0 {
        padding-left: 0 !important;
      }
      .p-sm-1 {
        padding: 0.25rem !important;
      }
      .pt-sm-1,
      .py-sm-1 {
        padding-top: 0.25rem !important;
      }
      .pr-sm-1,
      .px-sm-1 {
        padding-right: 0.25rem !important;
      }
      .pb-sm-1,
      .py-sm-1 {
        padding-bottom: 0.25rem !important;
      }
      .pl-sm-1,
      .px-sm-1 {
        padding-left: 0.25rem !important;
      }
      .p-sm-2 {
        padding: 0.5rem !important;
      }
      .pt-sm-2,
      .py-sm-2 {
        padding-top: 0.5rem !important;
      }
      .pr-sm-2,
      .px-sm-2 {
        padding-right: 0.5rem !important;
      }
      .pb-sm-2,
      .py-sm-2 {
        padding-bottom: 0.5rem !important;
      }
      .pl-sm-2,
      .px-sm-2 {
        padding-left: 0.5rem !important;
      }

      
      .p-sm-2-5 {
        padding: .75rem !important;
      }
      .pt-sm-2-5,
      .py-sm-2-5 {
        padding-top: .75rem !important;
      }
      .pr-sm-2-5,
      .px-sm-2-5 {
        padding-right: .75rem !important;
      }
      .pb-sm-2-5,
      .py-sm-2-5 {
        padding-bottom: .75rem !important;
      }
      .pl-sm-2-5,
      .px-sm-2-5 {
        padding-left: .75rem !important;
      }
      .p-sm-3 {
        padding: 1rem !important;
      }
      .pt-sm-3,
      .py-sm-3 {
        padding-top: 1rem !important;
      }
      .pr-sm-3,
      .px-sm-3 {
        padding-right: 1rem !important;
      }
      .pb-sm-3,
      .py-sm-3 {
        padding-bottom: 1rem !important;
      }
      .pl-sm-3,
      .px-sm-3 {
        padding-left: 1rem !important;
      }
      .p-sm-4 {
        padding: 1.5rem !important;
      }
      .pt-sm-4,
      .py-sm-4 {
        padding-top: 1.5rem !important;
      }
      .pr-sm-4,
      .px-sm-4 {
        padding-right: 1.5rem !important;
      }
      .pb-sm-4,
      .py-sm-4 {
        padding-bottom: 1.5rem !important;
      }
      .pl-sm-4,
      .px-sm-4 {
        padding-left: 1.5rem !important;
      }
      .p-sm-5 {
        padding: 3rem !important;
      }
      .pt-sm-5,
      .py-sm-5 {
        padding-top: 3rem !important;
      }
      .pr-sm-5,
      .px-sm-5 {
        padding-right: 3rem !important;
      }
      .pb-sm-5,
      .py-sm-5 {
        padding-bottom: 3rem !important;
      }
      .pl-sm-5,
      .px-sm-5 {
        padding-left: 3rem !important;
      }
      

      
      .p-sm-6 {
        padding: 4rem !important;
      }
      .pt-sm-6,
      .py-sm-6 {
        padding-top: 4rem !important;
      }
      .pr-sm-6,
      .px-sm-6 {
        padding-right: 4rem !important;
      }
      .pb-sm-6,
      .py-sm-6 {
        padding-bottom: 4rem !important;
      }
      .pl-sm-6,
      .px-sm-6 {
        padding-left: 4rem !important;
      }
      .m-sm-n1 {
        margin: -0.25rem !important;
      }
      .mt-sm-n1,
      .my-sm-n1 {
        margin-top: -0.25rem !important;
      }
      .mr-sm-n1,
      .mx-sm-n1 {
        margin-right: -0.25rem !important;
      }
      .mb-sm-n1,
      .my-sm-n1 {
        margin-bottom: -0.25rem !important;
      }
      .ml-sm-n1,
      .mx-sm-n1 {
        margin-left: -0.25rem !important;
      }
      .m-sm-n2 {
        margin: -0.5rem !important;
      }
      .mt-sm-n2,
      .my-sm-n2 {
        margin-top: -0.5rem !important;
      }
      .mr-sm-n2,
      .mx-sm-n2 {
        margin-right: -0.5rem !important;
      }
      .mb-sm-n2,
      .my-sm-n2 {
        margin-bottom: -0.5rem !important;
      }
      .ml-sm-n2,
      .mx-sm-n2 {
        margin-left: -0.5rem !important;
      }
      .m-sm-n3 {
        margin: -1rem !important;
      }
      .mt-sm-n3,
      .my-sm-n3 {
        margin-top: -1rem !important;
      }
      .mr-sm-n3,
      .mx-sm-n3 {
        margin-right: -1rem !important;
      }
      .mb-sm-n3,
      .my-sm-n3 {
        margin-bottom: -1rem !important;
      }
      .ml-sm-n3,
      .mx-sm-n3 {
        margin-left: -1rem !important;
      }
      .m-sm-n4 {
        margin: -1.5rem !important;
      }
      .mt-sm-n4,
      .my-sm-n4 {
        margin-top: -1.5rem !important;
      }
      .mr-sm-n4,
      .mx-sm-n4 {
        margin-right: -1.5rem !important;
      }
      .mb-sm-n4,
      .my-sm-n4 {
        margin-bottom: -1.5rem !important;
      }
      .ml-sm-n4,
      .mx-sm-n4 {
        margin-left: -1.5rem !important;
      }
      .m-sm-n5 {
        margin: -3rem !important;
      }
      .mt-sm-n5,
      .my-sm-n5 {
        margin-top: -3rem !important;
      }
      .mr-sm-n5,
      .mx-sm-n5 {
        margin-right: -3rem !important;
      }
      .mb-sm-n5,
      .my-sm-n5 {
        margin-bottom: -3rem !important;
      }
      .ml-sm-n5,
      .mx-sm-n5 {
        margin-left: -3rem !important;
      }
      .m-sm-auto {
        margin: auto !important;
      }
      .mt-sm-auto,
      .my-sm-auto {
        margin-top: auto !important;
      }
      .mr-sm-auto,
      .mx-sm-auto {
        margin-right: auto !important;
      }
      .mb-sm-auto,
      .my-sm-auto {
        margin-bottom: auto !important;
      }
      .ml-sm-auto,
      .mx-sm-auto {
        margin-left: auto !important;
      }

    }
    
    @media (min-width: 768px) {
      .m-md-0 {
        margin: 0 !important;
      }
      .mt-md-0,
      .my-md-0 {
        margin-top: 0 !important;
      }
      .mr-md-0,
      .mx-md-0 {
        margin-right: 0 !important;
      }
      .mb-md-0,
      .my-md-0 {
        margin-bottom: 0 !important;
      }
      .ml-md-0,
      .mx-md-0 {
        margin-left: 0 !important;
      }
      .m-md-1 {
        margin: 0.25rem !important;
      }
      .mt-md-1,
      .my-md-1 {
        margin-top: 0.25rem !important;
      }
      .mr-md-1,
      .mx-md-1 {
        margin-right: 0.25rem !important;
      }
      .mb-md-1,
      .my-md-1 {
        margin-bottom: 0.25rem !important;
      }
      .ml-md-1,
      .mx-md-1 {
        margin-left: 0.25rem !important;
      }
      .m-md-2 {
        margin: 0.5rem !important;
      }
      .mt-md-2,
      .my-md-2 {
        margin-top: 0.5rem !important;
      }
      .mr-md-2,
      .mx-md-2 {
        margin-right: 0.5rem !important;
      }
      .mb-md-2,
      .my-md-2 {
        margin-bottom: 0.5rem !important;
      }
      .ml-md-2,
      .mx-md-2 {
        margin-left: 0.5rem !important;
      }
      
      .m-md-2-5 {
        margin: .75rem !important;
      }
      .mt-md-2-5,
      .my-md-2-5 {
        margin-top: .75rem !important;
      }
      .mr-md-2-5,
      .mx-md-2-5 {
        margin-right: .75rem !important;
      }
      .mb-md-2-5,
      .my-md-2-5 {
        margin-bottom: .75rem !important;
      }
      .ml-md-2-5,
      .mx-md-2-5 {
        margin-left: .75rem !important;
      }
      .m-md-3 {
        margin: 1rem !important;
      }
      .mt-md-3,
      .my-md-3 {
        margin-top: 1rem !important;
      }
      .mr-md-3,
      .mx-md-3 {
        margin-right: 1rem !important;
      }
      .mb-md-3,
      .my-md-3 {
        margin-bottom: 1rem !important;
      }
      .ml-md-3,
      .mx-md-3 {
        margin-left: 1rem !important;
      }
      .m-md-4 {
        margin: 1.5rem !important;
      }
      .mt-md-4,
      .my-md-4 {
        margin-top: 1.5rem !important;
      }
      .mr-md-4,
      .mx-md-4 {
        margin-right: 1.5rem !important;
      }
      .mb-md-4,
      .my-md-4 {
        margin-bottom: 1.5rem !important;
      }
      .ml-md-4,
      .mx-md-4 {
        margin-left: 1.5rem !important;
      }
      .m-md-5 {
        margin: 3rem !important;
      }
      .mt-md-5,
      .my-md-5 {
        margin-top: 3rem !important;
      }
      .mr-md-5,
      .mx-md-5 {
        margin-right: 3rem !important;
      }
      .mb-md-5,
      .my-md-5 {
        margin-bottom: 3rem !important;
      }
      .ml-md-5,
      .mx-md-5 {
        margin-left: 3rem !important;
      }

      
      .m-md-6 {
        margin: 4rem !important;
      }
      .mt-md-6,
      .my-md-6 {
        margin-top: 4rem !important;
      }
      .mr-md-6,
      .mx-md-6 {
        margin-right: 4rem !important;
      }
      .mb-md-6,
      .my-md-6 {
        margin-bottom: 4rem !important;
      }
      .ml-md-6,
      .mx-md-6 {
        margin-left: 4rem !important;
      }
      .p-md-0 {
        padding: 0 !important;
      }
      .pt-md-0,
      .py-md-0 {
        padding-top: 0 !important;
      }
      .pr-md-0,
      .px-md-0 {
        padding-right: 0 !important;
      }
      .pb-md-0,
      .py-md-0 {
        padding-bottom: 0 !important;
      }
      .pl-md-0,
      .px-md-0 {
        padding-left: 0 !important;
      }
      .p-md-1 {
        padding: 0.25rem !important;
      }
      .pt-md-1,
      .py-md-1 {
        padding-top: 0.25rem !important;
      }
      .pr-md-1,
      .px-md-1 {
        padding-right: 0.25rem !important;
      }
      .pb-md-1,
      .py-md-1 {
        padding-bottom: 0.25rem !important;
      }
      .pl-md-1,
      .px-md-1 {
        padding-left: 0.25rem !important;
      }
      .p-md-2 {
        padding: 0.5rem !important;
      }
      .pt-md-2,
      .py-md-2 {
        padding-top: 0.5rem !important;
      }
      .pr-md-2,
      .px-md-2 {
        padding-right: 0.5rem !important;
      }
      .pb-md-2,
      .py-md-2 {
        padding-bottom: 0.5rem !important;
      }
      .pl-md-2,
      .px-md-2 {
        padding-left: 0.5rem !important;
      }

      
      .p-md-2-5 {
        padding: .75rem !important;
      }
      .pt-md-2-5,
      .py-md-2-5 {
        padding-top: .75rem !important;
      }
      .pr-md-2-5,
      .px-md-2-5 {
        padding-right: .75rem !important;
      }
      .pb-md-2-5,
      .py-md-2-5 {
        padding-bottom: .75rem !important;
      }
      .pl-md-2-5,
      .px-md-2-5 {
        padding-left: .75rem !important;
      }
      .p-md-3 {
        padding: 1rem !important;
      }
      .pt-md-3,
      .py-md-3 {
        padding-top: 1rem !important;
      }
      .pr-md-3,
      .px-md-3 {
        padding-right: 1rem !important;
      }
      .pb-md-3,
      .py-md-3 {
        padding-bottom: 1rem !important;
      }
      .pl-md-3,
      .px-md-3 {
        padding-left: 1rem !important;
      }
      .p-md-4 {
        padding: 1.5rem !important;
      }
      .pt-md-4,
      .py-md-4 {
        padding-top: 1.5rem !important;
      }
      .pr-md-4,
      .px-md-4 {
        padding-right: 1.5rem !important;
      }
      .pb-md-4,
      .py-md-4 {
        padding-bottom: 1.5rem !important;
      }
      .pl-md-4,
      .px-md-4 {
        padding-left: 1.5rem !important;
      }
      .p-md-5 {
        padding: 3rem !important;
      }
      .pt-md-5,
      .py-md-5 {
        padding-top: 3rem !important;
      }
      .pr-md-5,
      .px-md-5 {
        padding-right: 3rem !important;
      }
      .pb-md-5,
      .py-md-5 {
        padding-bottom: 3rem !important;
      }
      .pl-md-5,
      .px-md-5 {
        padding-left: 3rem !important;
      }

      
      .p-md-6 {
        padding: 4rem !important;
      }
      .pt-md-6,
      .py-md-6 {
        padding-top: 4rem !important;
      }
      .pr-md-6,
      .px-md-6 {
        padding-right: 4rem !important;
      }
      .pb-md-6,
      .py-md-6 {
        padding-bottom: 4rem !important;
      }
      .pl-md-6,
      .px-md-6 {
        padding-left: 4rem !important;
      }
      .m-md-n1 {
        margin: -0.25rem !important;
      }
      .mt-md-n1,
      .my-md-n1 {
        margin-top: -0.25rem !important;
      }
      .mr-md-n1,
      .mx-md-n1 {
        margin-right: -0.25rem !important;
      }
      .mb-md-n1,
      .my-md-n1 {
        margin-bottom: -0.25rem !important;
      }
      .ml-md-n1,
      .mx-md-n1 {
        margin-left: -0.25rem !important;
      }
      .m-md-n2 {
        margin: -0.5rem !important;
      }
      .mt-md-n2,
      .my-md-n2 {
        margin-top: -0.5rem !important;
      }
      .mr-md-n2,
      .mx-md-n2 {
        margin-right: -0.5rem !important;
      }
      .mb-md-n2,
      .my-md-n2 {
        margin-bottom: -0.5rem !important;
      }
      .ml-md-n2,
      .mx-md-n2 {
        margin-left: -0.5rem !important;
      }
      .m-md-n3 {
        margin: -1rem !important;
      }
      .mt-md-n3,
      .my-md-n3 {
        margin-top: -1rem !important;
      }
      .mr-md-n3,
      .mx-md-n3 {
        margin-right: -1rem !important;
      }
      .mb-md-n3,
      .my-md-n3 {
        margin-bottom: -1rem !important;
      }
      .ml-md-n3,
      .mx-md-n3 {
        margin-left: -1rem !important;
      }
      .m-md-n4 {
        margin: -1.5rem !important;
      }
      .mt-md-n4,
      .my-md-n4 {
        margin-top: -1.5rem !important;
      }
      .mr-md-n4,
      .mx-md-n4 {
        margin-right: -1.5rem !important;
      }
      .mb-md-n4,
      .my-md-n4 {
        margin-bottom: -1.5rem !important;
      }
      .ml-md-n4,
      .mx-md-n4 {
        margin-left: -1.5rem !important;
      }
      .m-md-n5 {
        margin: -3rem !important;
      }
      .mt-md-n5,
      .my-md-n5 {
        margin-top: -3rem !important;
      }
      .mr-md-n5,
      .mx-md-n5 {
        margin-right: -3rem !important;
      }
      .mb-md-n5,
      .my-md-n5 {
        margin-bottom: -3rem !important;
      }
      .ml-md-n5,
      .mx-md-n5 {
        margin-left: -3rem !important;
      }
      .m-md-auto {
        margin: auto !important;
      }
      .mt-md-auto,
      .my-md-auto {
        margin-top: auto !important;
      }
      .mr-md-auto,
      .mx-md-auto {
        margin-right: auto !important;
      }
      .mb-md-auto,
      .my-md-auto {
        margin-bottom: auto !important;
      }
      .ml-md-auto,
      .mx-md-auto {
        margin-left: auto !important;
      }
      .container--left.pr-md-10,
      .pr-md-10 {
        padding-right: 50px!important; 
      }
      .container--right.pl-md-10,
      .pl-md-10 {
        padding-left: 50px!important; 
      }
    }
    
    @media (min-width: 1024px) {
      .m-lg-0 {
        margin: 0 !important;
      }
      .mt-lg-0,
      .my-lg-0 {
        margin-top: 0 !important;
      }
      .mr-lg-0,
      .mx-lg-0 {
        margin-right: 0 !important;
      }
      .mb-lg-0,
      .my-lg-0 {
        margin-bottom: 0 !important;
      }
      .ml-lg-0,
      .mx-lg-0 {
        margin-left: 0 !important;
      }
      .m-lg-1 {
        margin: 0.25rem !important;
      }
      .mt-lg-1,
      .my-lg-1 {
        margin-top: 0.25rem !important;
      }
      .mr-lg-1,
      .mx-lg-1 {
        margin-right: 0.25rem !important;
      }
      .mb-lg-1,
      .my-lg-1 {
        margin-bottom: 0.25rem !important;
      }
      .ml-lg-1,
      .mx-lg-1 {
        margin-left: 0.25rem !important;
      }
      .m-lg-2 {
        margin: 0.5rem !important;
      }
      .mt-lg-2,
      .my-lg-2 {
        margin-top: 0.5rem !important;
      }
      .mr-lg-2,
      .mx-lg-2 {
        margin-right: 0.5rem !important;
      }
      .mb-lg-2,
      .my-lg-2 {
        margin-bottom: 0.5rem !important;
      }
      .ml-lg-2,
      .mx-lg-2 {
        margin-left: 0.5rem !important;
      }
      .m-lg-3 {
        margin: 1rem !important;
      }
      .mt-lg-3,
      .my-lg-3 {
        margin-top: 1rem !important;
      }
      .mr-lg-3,
      .mx-lg-3 {
        margin-right: 1rem !important;
      }
      .mb-lg-3,
      .my-lg-3 {
        margin-bottom: 1rem !important;
      }
      .ml-lg-3,
      .mx-lg-3 {
        margin-left: 1rem !important;
      }
      .m-lg-4 {
        margin: 1.5rem !important;
      }
      .mt-lg-4,
      .my-lg-4 {
        margin-top: 1.5rem !important;
      }
      .mr-lg-4,
      .mx-lg-4 {
        margin-right: 1.5rem !important;
      }
      .mb-lg-4,
      .my-lg-4 {
        margin-bottom: 1.5rem !important;
      }
      .ml-lg-4,
      .mx-lg-4 {
        margin-left: 1.5rem !important;
      }
      .m-lg-5 {
        margin: 3rem !important;
      }
      .mt-lg-5,
      .my-lg-5 {
        margin-top: 3rem !important;
      }
      .mr-lg-5,
      .mx-lg-5 {
        margin-right: 3rem !important;
      }
      .mb-lg-5,
      .my-lg-5 {
        margin-bottom: 3rem !important;
      }
      .ml-lg-5,
      .mx-lg-5 {
        margin-left: 3rem !important;
      }

      
      .m-lg-6 {
        margin: 4rem !important;
      }
      .mt-lg-6,
      .my-lg-6 {
        margin-top: 4rem !important;
      }
      .mr-lg-6,
      .mx-lg-6 {
        margin-right: 4rem !important;
      }
      .mb-lg-6,
      .my-lg-6 {
        margin-bottom: 4rem !important;
      }
      .ml-lg-6,
      .mx-lg-6 {
        margin-left: 4rem !important;
      }
      .p-lg-0 {
        padding: 0 !important;
      }
      .pt-lg-0,
      .py-lg-0 {
        padding-top: 0 !important;
      }
      .pr-lg-0,
      .px-lg-0 {
        padding-right: 0 !important;
      }
      .pb-lg-0,
      .py-lg-0 {
        padding-bottom: 0 !important;
      }
      .pl-lg-0,
      .px-lg-0 {
        padding-left: 0 !important;
      }
      .p-lg-1 {
        padding: 0.25rem !important;
      }
      .pt-lg-1,
      .py-lg-1 {
        padding-top: 0.25rem !important;
      }
      .pr-lg-1,
      .px-lg-1 {
        padding-right: 0.25rem !important;
      }
      .pb-lg-1,
      .py-lg-1 {
        padding-bottom: 0.25rem !important;
      }
      .pl-lg-1,
      .px-lg-1 {
        padding-left: 0.25rem !important;
      }
      .p-lg-2 {
        padding: 0.5rem !important;
      }
      .pt-lg-2,
      .py-lg-2 {
        padding-top: 0.5rem !important;
      }
      .pr-lg-2,
      .px-lg-2 {
        padding-right: 0.5rem !important;
      }
      .pb-lg-2,
      .py-lg-2 {
        padding-bottom: 0.5rem !important;
      }
      .pl-lg-2,
      .px-lg-2 {
        padding-left: 0.5rem !important;
      }
      .p-lg-3 {
        padding: 1rem !important;
      }
      .pt-lg-3,
      .py-lg-3 {
        padding-top: 1rem !important;
      }
      .pr-lg-3,
      .px-lg-3 {
        padding-right: 1rem !important;
      }
      .pb-lg-3,
      .py-lg-3 {
        padding-bottom: 1rem !important;
      }
      .pl-lg-3,
      .px-lg-3 {
        padding-left: 1rem !important;
      }
      .p-lg-4 {
        padding: 1.5rem !important;
      }
      .pt-lg-4,
      .py-lg-4 {
        padding-top: 1.5rem !important;
      }
      .pr-lg-4,
      .px-lg-4 {
        padding-right: 1.5rem !important;
      }
      .pb-lg-4,
      .py-lg-4 {
        padding-bottom: 1.5rem !important;
      }
      .pl-lg-4,
      .px-lg-4 {
        padding-left: 1.5rem !important;
      }
      .p-lg-5 {
        padding: 3rem !important;
      }
      .pt-lg-5,
      .py-lg-5 {
        padding-top: 3rem !important;
      }
      .pr-lg-5,
      .px-lg-5 {
        padding-right: 3rem !important;
      }
      .pb-lg-5,
      .py-lg-5 {
        padding-bottom: 3rem !important;
      }
      .pl-lg-5,
      .px-lg-5 {
        padding-left: 3rem !important;
      }

      
      .p-lg-6 {
        padding: 4rem !important;
      }
      .pt-lg-6,
      .py-lg-6 {
        padding-top: 4rem !important;
      }
      .pr-lg-6,
      .px-lg-6 {
        padding-right: 4rem !important;
      }
      .pb-lg-6,
      .py-lg-6 {
        padding-bottom: 4rem !important;
      }
      .pl-lg-6,
      .px-lg-6 {
        padding-left: 4rem !important;
      }
      .m-lg-n1 {
        margin: -0.25rem !important;
      }
      .mt-lg-n1,
      .my-lg-n1 {
        margin-top: -0.25rem !important;
      }
      .mr-lg-n1,
      .mx-lg-n1 {
        margin-right: -0.25rem !important;
      }
      .mb-lg-n1,
      .my-lg-n1 {
        margin-bottom: -0.25rem !important;
      }
      .ml-lg-n1,
      .mx-lg-n1 {
        margin-left: -0.25rem !important;
      }
      .m-lg-n2 {
        margin: -0.5rem !important;
      }
      .mt-lg-n2,
      .my-lg-n2 {
        margin-top: -0.5rem !important;
      }
      .mr-lg-n2,
      .mx-lg-n2 {
        margin-right: -0.5rem !important;
      }
      .mb-lg-n2,
      .my-lg-n2 {
        margin-bottom: -0.5rem !important;
      }
      .ml-lg-n2,
      .mx-lg-n2 {
        margin-left: -0.5rem !important;
      }
      .m-lg-n3 {
        margin: -1rem !important;
      }
      .mt-lg-n3,
      .my-lg-n3 {
        margin-top: -1rem !important;
      }
      .mr-lg-n3,
      .mx-lg-n3 {
        margin-right: -1rem !important;
      }
      .mb-lg-n3,
      .my-lg-n3 {
        margin-bottom: -1rem !important;
      }
      .ml-lg-n3,
      .mx-lg-n3 {
        margin-left: -1rem !important;
      }
      .m-lg-n4 {
        margin: -1.5rem !important;
      }
      .mt-lg-n4,
      .my-lg-n4 {
        margin-top: -1.5rem !important;
      }
      .mr-lg-n4,
      .mx-lg-n4 {
        margin-right: -1.5rem !important;
      }
      .mb-lg-n4,
      .my-lg-n4 {
        margin-bottom: -1.5rem !important;
      }
      .ml-lg-n4,
      .mx-lg-n4 {
        margin-left: -1.5rem !important;
      }
      .m-lg-n5 {
        margin: -3rem !important;
      }
      .mt-lg-n5,
      .my-lg-n5 {
        margin-top: -3rem !important;
      }
      .mr-lg-n5,
      .mx-lg-n5 {
        margin-right: -3rem !important;
      }
      .mb-lg-n5,
      .my-lg-n5 {
        margin-bottom: -3rem !important;
      }
      .ml-lg-n5,
      .mx-lg-n5 {
        margin-left: -3rem !important;
      }
      .m-lg-auto {
        margin: auto !important;
      }
      .mt-lg-auto,
      .my-lg-auto {
        margin-top: auto !important;
      }
      .mr-lg-auto,
      .mx-lg-auto {
        margin-right: auto !important;
      }
      .mb-lg-auto,
      .my-lg-auto {
        margin-bottom: auto !important;
      }
      .ml-lg-auto,
      .mx-lg-auto {
        margin-left: auto !important;
      }
      .container--left.pr-md-10,
      .pr-md-10 {
        padding-right: 15%!important; 
      }
      .container--right.pl-md-10,
      .pl-md-10 {
        padding-left: 15%!important; 
      }
    }
    
    @media (min-width: 1320px) {
      .m-xl-0 {
        margin: 0 !important;
      }
      .mt-xl-0,
      .my-xl-0 {
        margin-top: 0 !important;
      }
      .mr-xl-0,
      .mx-xl-0 {
        margin-right: 0 !important;
      }
      .mb-xl-0,
      .my-xl-0 {
        margin-bottom: 0 !important;
      }
      .ml-xl-0,
      .mx-xl-0 {
        margin-left: 0 !important;
      }
      .m-xl-1 {
        margin: 0.25rem !important;
      }
      .mt-xl-1,
      .my-xl-1 {
        margin-top: 0.25rem !important;
      }
      .mr-xl-1,
      .mx-xl-1 {
        margin-right: 0.25rem !important;
      }
      .mb-xl-1,
      .my-xl-1 {
        margin-bottom: 0.25rem !important;
      }
      .ml-xl-1,
      .mx-xl-1 {
        margin-left: 0.25rem !important;
      }
      .m-xl-2 {
        margin: 0.5rem !important;
      }
      .mt-xl-2,
      .my-xl-2 {
        margin-top: 0.5rem !important;
      }
      .mr-xl-2,
      .mx-xl-2 {
        margin-right: 0.5rem !important;
      }
      .mb-xl-2,
      .my-xl-2 {
        margin-bottom: 0.5rem !important;
      }
      .ml-xl-2,
      .mx-xl-2 {
        margin-left: 0.5rem !important;
      }
      .m-xl-3 {
        margin: 1rem !important;
      }
      .mt-xl-3,
      .my-xl-3 {
        margin-top: 1rem !important;
      }
      .mr-xl-3,
      .mx-xl-3 {
        margin-right: 1rem !important;
      }
      .mb-xl-3,
      .my-xl-3 {
        margin-bottom: 1rem !important;
      }
      .ml-xl-3,
      .mx-xl-3 {
        margin-left: 1rem !important;
      }
      .m-xl-4 {
        margin: 1.5rem !important;
      }
      .mt-xl-4,
      .my-xl-4 {
        margin-top: 1.5rem !important;
      }
      .mr-xl-4,
      .mx-xl-4 {
        margin-right: 1.5rem !important;
      }
      .mb-xl-4,
      .my-xl-4 {
        margin-bottom: 1.5rem !important;
      }
      .ml-xl-4,
      .mx-xl-4 {
        margin-left: 1.5rem !important;
      }
      .m-xl-5 {
        margin: 3rem !important;
      }
      .mt-xl-5,
      .my-xl-5 {
        margin-top: 3rem !important;
      }
      .mr-xl-5,
      .mx-xl-5 {
        margin-right: 3rem !important;
      }
      .mb-xl-5,
      .my-xl-5 {
        margin-bottom: 3rem !important;
      }
      .ml-xl-5,
      .mx-xl-5 {
        margin-left: 3rem !important;
      }

      
      .m-xl-6 {
        margin: 4rem !important;
      }
      .mt-xl-6,
      .my-xl-6 {
        margin-top: 4rem !important;
      }
      .mr-xl-6,
      .mx-xl-6 {
        margin-right: 4rem !important;
      }
      .mb-xl-6,
      .my-xl-6 {
        margin-bottom: 4rem !important;
      }
      .ml-xl-6,
      .mx-xl-6 {
        margin-left: 4rem !important;
      }
      .p-xl-0 {
        padding: 0 !important;
      }
      .pt-xl-0,
      .py-xl-0 {
        padding-top: 0 !important;
      }
      .pr-xl-0,
      .px-xl-0 {
        padding-right: 0 !important;
      }
      .pb-xl-0,
      .py-xl-0 {
        padding-bottom: 0 !important;
      }
      .pl-xl-0,
      .px-xl-0 {
        padding-left: 0 !important;
      }
      .p-xl-1 {
        padding: 0.25rem !important;
      }
      .pt-xl-1,
      .py-xl-1 {
        padding-top: 0.25rem !important;
      }
      .pr-xl-1,
      .px-xl-1 {
        padding-right: 0.25rem !important;
      }
      .pb-xl-1,
      .py-xl-1 {
        padding-bottom: 0.25rem !important;
      }
      .pl-xl-1,
      .px-xl-1 {
        padding-left: 0.25rem !important;
      }
      .p-xl-2 {
        padding: 0.5rem !important;
      }
      .pt-xl-2,
      .py-xl-2 {
        padding-top: 0.5rem !important;
      }
      .pr-xl-2,
      .px-xl-2 {
        padding-right: 0.5rem !important;
      }
      .pb-xl-2,
      .py-xl-2 {
        padding-bottom: 0.5rem !important;
      }
      .pl-xl-2,
      .px-xl-2 {
        padding-left: 0.5rem !important;
      }
      .p-xl-3 {
        padding: 1rem !important;
      }
      .pt-xl-3,
      .py-xl-3 {
        padding-top: 1rem !important;
      }
      .pr-xl-3,
      .px-xl-3 {
        padding-right: 1rem !important;
      }
      .pb-xl-3,
      .py-xl-3 {
        padding-bottom: 1rem !important;
      }
      .pl-xl-3,
      .px-xl-3 {
        padding-left: 1rem !important;
      }
      .p-xl-4 {
        padding: 1.5rem !important;
      }
      .pt-xl-4,
      .py-xl-4 {
        padding-top: 1.5rem !important;
      }
      .pr-xl-4,
      .px-xl-4 {
        padding-right: 1.5rem !important;
      }
      .pb-xl-4,
      .py-xl-4 {
        padding-bottom: 1.5rem !important;
      }
      .pl-xl-4,
      .px-xl-4 {
        padding-left: 1.5rem !important;
      }
      .p-xl-5 {
        padding: 3rem !important;
      }
      .pt-xl-5,
      .py-xl-5 {
        padding-top: 3rem !important;
      }
      .pr-xl-5,
      .px-xl-5 {
        padding-right: 3rem !important;
      }
      .pb-xl-5,
      .py-xl-5 {
        padding-bottom: 3rem !important;
      }
      .pl-xl-5,
      .px-xl-5 {
        padding-left: 3rem !important;
      }

      
      .p-xl-6 {
        padding: 4rem !important;
      }
      .pt-xl-6,
      .py-xl-6 {
        padding-top: 4rem !important;
      }
      .pr-xl-6,
      .px-xl-6 {
        padding-right: 4rem !important;
      }
      .pb-xl-6,
      .py-xl-6 {
        padding-bottom: 4rem !important;
      }
      .pl-xl-6,
      .px-xl-6 {
        padding-left: 4rem !important;
      }
      .m-xl-n1 {
        margin: -0.25rem !important;
      }
      .mt-xl-n1,
      .my-xl-n1 {
        margin-top: -0.25rem !important;
      }
      .mr-xl-n1,
      .mx-xl-n1 {
        margin-right: -0.25rem !important;
      }
      .mb-xl-n1,
      .my-xl-n1 {
        margin-bottom: -0.25rem !important;
      }
      .ml-xl-n1,
      .mx-xl-n1 {
        margin-left: -0.25rem !important;
      }
      .m-xl-n2 {
        margin: -0.5rem !important;
      }
      .mt-xl-n2,
      .my-xl-n2 {
        margin-top: -0.5rem !important;
      }
      .mr-xl-n2,
      .mx-xl-n2 {
        margin-right: -0.5rem !important;
      }
      .mb-xl-n2,
      .my-xl-n2 {
        margin-bottom: -0.5rem !important;
      }
      .ml-xl-n2,
      .mx-xl-n2 {
        margin-left: -0.5rem !important;
      }
      .m-xl-n3 {
        margin: -1rem !important;
      }
      .mt-xl-n3,
      .my-xl-n3 {
        margin-top: -1rem !important;
      }
      .mr-xl-n3,
      .mx-xl-n3 {
        margin-right: -1rem !important;
      }
      .mb-xl-n3,
      .my-xl-n3 {
        margin-bottom: -1rem !important;
      }
      .ml-xl-n3,
      .mx-xl-n3 {
        margin-left: -1rem !important;
      }
      .m-xl-n4 {
        margin: -1.5rem !important;
      }
      .mt-xl-n4,
      .my-xl-n4 {
        margin-top: -1.5rem !important;
      }
      .mr-xl-n4,
      .mx-xl-n4 {
        margin-right: -1.5rem !important;
      }
      .mb-xl-n4,
      .my-xl-n4 {
        margin-bottom: -1.5rem !important;
      }
      .ml-xl-n4,
      .mx-xl-n4 {
        margin-left: -1.5rem !important;
      }
      .m-xl-n5 {
        margin: -3rem !important;
      }
      .mt-xl-n5,
      .my-xl-n5 {
        margin-top: -3rem !important;
      }
      .mr-xl-n5,
      .mx-xl-n5 {
        margin-right: -3rem !important;
      }
      .mb-xl-n5,
      .my-xl-n5 {
        margin-bottom: -3rem !important;
      }
      .ml-xl-n5,
      .mx-xl-n5 {
        margin-left: -3rem !important;
      }
      .m-xl-auto {
        margin: auto !important;
      }
      .mt-xl-auto,
      .my-xl-auto {
        margin-top: auto !important;
      }
      .mr-xl-auto,
      .mx-xl-auto {
        margin-right: auto !important;
      }
      .mb-xl-auto,
      .my-xl-auto {
        margin-bottom: auto !important;
      }
      .ml-xl-auto,
      .mx-xl-auto {
        margin-left: auto !important;
      }
    }

















/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct box sizing in Firefox.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Remove the inheritance of text transform in Edge and Firefox.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}
*, *:before, *:after {
  box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
	overflow-x:hidden;
	--scrollbarBG: #f0f2f5;
	--thumbBG: rgba(19, 53, 90, 0.15);
}

.button,
.tbz-btn,
.hsfc-Button {
  cursor: pointer;
  position: relative;
  transition: all 0.15s linear;
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-weight: 500;
  font-size: .9375rem;
  line-height: 1.15;
  display: flex;
  min-width: 160px;
  padding: 15px 45px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 100px;
  /* Default clip-path matches the button shape exactly.
     On hover it expands to allow the glow but is bounded so
     the shadow cannot bleed onto adjacent buttons. */
  clip-path: inset(0px round 100px);
  backdrop-filter: blur(25px);
  text-decoration: none;
  color: rgba(255, 255, 255, 1);
  width: fit-content;
}

button:disabled,
.button:disabled,
.tbz-btn:disabled {
  opacity: .5;
}

@keyframes tbz-button-glare {
  0%   { opacity: 1; background-position: 100% 0; }
  100% { opacity: 0; background-position: -50% 0; }
}




  .tbz-module--light .tbz-btn--lime {
    border-radius: 100px;
    background: linear-gradient(107deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.10) 100.01%);
    border: 0;
    color: rgba(0, 44, 72, 1);
  }
  .tbz-module--light .tbz-btn--lime:hover {
    background: linear-gradient(135deg, transparent 0%,
      color-mix(in oklab, rgba(165, 211, 44, 1) 16%, transparent) 100%);
    box-shadow: 0 0 14px 0
      color-mix(in oklab, rgba(165, 211, 44, 1) 18%, transparent);
    text-shadow: 0 0 8px
      color-mix(in oklab, #fff 32%, transparent);
    /* Expand clip region to show glow up to 6px from the button edge.
       With the minimum button gap being 12px, this ensures the glow
       is clipped exactly at the midpoint and never bleeds onto a
       neighbouring button. */
    clip-path: inset(-16px round 106px);
  }
  .tbz-module--light .tbz-btn--lime:before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 1;
    transition: background 220ms cubic-bezier(0.16, 1, 0.3, 1), 220ms cubic-bezier(0.16, 1, 0.3, 1);
    background: linear-gradient(
      135deg,
      transparent 0%,
      color-mix(in oklab, rgba(165, 211, 44, 1) 25%, transparent) 22%,
      color-mix(in oklab, rgba(165, 211, 44, 1) 25%, transparent) 78%,
      rgba(165, 211, 44, 1) 100%
    );
  }
  .tbz-module--light .tbz-btn--lime:after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
    background: linear-gradient(115deg, transparent 0%, transparent 35%, 
      color-mix(in oklab, #fff 70%, transparent) 50%, transparent 65%, transparent 100%);
    background-size: 250% 100%;
    background-position: 100% 0;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
  }

  .tbz-module--light .tbz-btn--lime:hover:after {
    animation: tbz-button-glare 990ms cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
  }


  .tbz-module--light .tbz-btn--blue {
    border-radius: 100px;
    background: linear-gradient(107deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.10) 100.01%);
    border: 0;
    color: rgba(0, 44, 72, 1);
  }
  .tbz-module--light .tbz-btn--blue:hover {
    background: linear-gradient(135deg, transparent 0%,
      color-mix(in oklab, rgba(3, 137, 195, 1) 16%, transparent) 100%);
    box-shadow: 0 0 14px 0
      color-mix(in oklab, rgba(3, 137, 195, 1) 18%, transparent);
    text-shadow: 0 0 8px
      color-mix(in oklab, #fff 32%, transparent);
    /* Expand clip region to show glow up to 6px from the button edge.
       With the minimum button gap being 12px, this ensures the glow
       is clipped exactly at the midpoint and never bleeds onto a
       neighbouring button. */
    clip-path: inset(-16px round 106px);
  }
  .tbz-module--light .tbz-btn--blue:before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 1;
    transition: background 220ms cubic-bezier(0.16, 1, 0.3, 1), 220ms cubic-bezier(0.16, 1, 0.3, 1);
    background: linear-gradient(
      135deg,
      transparent 0%,
      color-mix(in oklab, rgba(3, 137, 195, 1) 25%, transparent) 22%,
      color-mix(in oklab, rgba(3, 137, 195, 1) 25%, transparent) 78%,
      rgba(3, 137, 195, 1) 100%
    );
  }
  .tbz-module--light .tbz-btn--blue:after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
    background: linear-gradient(115deg, transparent 0%, transparent 35%, 
      color-mix(in oklab, #fff 70%, transparent) 50%, transparent 65%, transparent 100%);
    background-size: 250% 100%;
    background-position: 100% 0;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
  }

  .tbz-module--light .tbz-btn--blue:hover:after {
    animation: tbz-button-glare 990ms cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
  }


  .tbz-module--light .tbz-btn--white {
    border-radius: 100px;
    background: linear-gradient(107deg, rgba(69, 77, 83, 0.00) 0%, rgba(69, 77, 83, 0.10) 100.01%);
    border: 0;
    color: rgba(0, 44, 72, 1);
  }
  .tbz-module--light .tbz-btn--white:hover {
    background: linear-gradient(135deg, transparent 0%,
      color-mix(in oklab, rgba(69, 77, 83, 1) 16%, transparent) 100%);
    box-shadow: 0 0 14px 0
      color-mix(in oklab, rgba(69, 77, 83, 1) 18%, transparent);
    text-shadow: 0 0 8px
      color-mix(in oklab, #fff 32%, transparent);
    /* Expand clip region to show glow up to 6px from the button edge.
       With the minimum button gap being 12px, this ensures the glow
       is clipped exactly at the midpoint and never bleeds onto a
       neighbouring button. */
    clip-path: inset(-16px round 106px);
  }
  .tbz-module--light .tbz-btn--white:before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 1;
    transition: background 220ms cubic-bezier(0.16, 1, 0.3, 1), 220ms cubic-bezier(0.16, 1, 0.3, 1);
    background: linear-gradient(
      135deg,
      transparent 0%,
      color-mix(in oklab, rgba(69, 77, 83, 1) 25%, transparent) 22%,
      color-mix(in oklab, rgba(69, 77, 83, 1) 25%, transparent) 78%,
      rgba(69, 77, 83, 1) 100%
    );
  }
  .tbz-module--light .tbz-btn--white:after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
    background: linear-gradient(115deg, transparent 0%, transparent 35%, 
      color-mix(in oklab, #fff 70%, transparent) 50%, transparent 65%, transparent 100%);
    background-size: 250% 100%;
    background-position: 100% 0;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
  }

  .tbz-module--light .tbz-btn--white:hover:after {
    animation: tbz-button-glare 990ms cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
  }



  .tbz-module--dark .tbz-btn--lime {
    border-radius: 100px;
    background: linear-gradient(107deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.10) 100.01%);
    border: 0;
    color: rgba(255, 255, 255, 1);
  }
  .tbz-module--dark .tbz-btn--lime:hover {
    background: linear-gradient(135deg, transparent 0%,
      color-mix(in oklab, rgba(200, 255, 58, 1) 16%, transparent) 100%);
    box-shadow: 0 0 14px 0
      color-mix(in oklab, rgba(200, 255, 58, 1) 18%, transparent);
    text-shadow: 0 0 8px
      color-mix(in oklab, #fff 32%, transparent);
    /* Expand clip region to show glow up to 6px from the button edge.
       With the minimum button gap being 12px, this ensures the glow
       is clipped exactly at the midpoint and never bleeds onto a
       neighbouring button. */
    clip-path: inset(-16px round 106px);
  }
  .tbz-module--dark .tbz-btn--lime:before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 1;
    transition: background 220ms cubic-bezier(0.16, 1, 0.3, 1), 220ms cubic-bezier(0.16, 1, 0.3, 1);
    background: linear-gradient(
      135deg,
      transparent 0%,
      color-mix(in oklab, rgba(200, 255, 58, 1) 25%, transparent) 22%,
      color-mix(in oklab, rgba(200, 255, 58, 1) 25%, transparent) 78%,
      rgba(200, 255, 58, 1) 100%
    );
  }
  .tbz-module--dark .tbz-btn--lime:after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
    background: linear-gradient(115deg, transparent 0%, transparent 35%, 
      color-mix(in oklab, #fff 70%, transparent) 50%, transparent 65%, transparent 100%);
    background-size: 250% 100%;
    background-position: 100% 0;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
  }

  .tbz-module--dark .tbz-btn--lime:hover:after {
    animation: tbz-button-glare 990ms cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
  }


  .tbz-module--dark .tbz-btn--blue {
    border-radius: 100px;
    background: linear-gradient(107deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.10) 100.01%);
    border: 0;
    color: rgba(255, 255, 255, 1);
  }
  .tbz-module--dark .tbz-btn--blue:hover {
    background: linear-gradient(135deg, transparent 0%,
      color-mix(in oklab, rgba(58, 245, 255, 1) 16%, transparent) 100%);
    box-shadow: 0 0 14px 0
      color-mix(in oklab, rgba(58, 245, 255, 1) 18%, transparent);
    text-shadow: 0 0 8px
      color-mix(in oklab, #fff 32%, transparent);
    /* Expand clip region to show glow up to 6px from the button edge.
       With the minimum button gap being 12px, this ensures the glow
       is clipped exactly at the midpoint and never bleeds onto a
       neighbouring button. */
    clip-path: inset(-16px round 106px);
  }
  .tbz-module--dark .tbz-btn--blue:before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 1;
    transition: background 220ms cubic-bezier(0.16, 1, 0.3, 1), 220ms cubic-bezier(0.16, 1, 0.3, 1);
    background: linear-gradient(
      135deg,
      transparent 0%,
      color-mix(in oklab, rgba(58, 245, 255, 1) 25%, transparent) 22%,
      color-mix(in oklab, rgba(58, 245, 255, 1) 25%, transparent) 78%,
      rgba(58, 245, 255, 1) 100%
    );
  }
  .tbz-module--dark .tbz-btn--blue:after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
    background: linear-gradient(115deg, transparent 0%, transparent 35%, 
      color-mix(in oklab, #fff 70%, transparent) 50%, transparent 65%, transparent 100%);
    background-size: 250% 100%;
    background-position: 100% 0;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
  }

  .tbz-module--dark .tbz-btn--blue:hover:after {
    animation: tbz-button-glare 990ms cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
  }


  .tbz-module--dark .tbz-btn--white {
    border-radius: 100px;
    background: linear-gradient(107deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.10) 100.01%);
    border: 0;
    color: rgba(255, 255, 255, 1);
  }
  .tbz-module--dark .tbz-btn--white:hover {
    background: linear-gradient(135deg, transparent 0%,
      color-mix(in oklab, rgba(255, 255, 255, 1) 16%, transparent) 100%);
    box-shadow: 0 0 14px 0
      color-mix(in oklab, rgba(255, 255, 255, 1) 18%, transparent);
    text-shadow: 0 0 8px
      color-mix(in oklab, #fff 32%, transparent);
    /* Expand clip region to show glow up to 6px from the button edge.
       With the minimum button gap being 12px, this ensures the glow
       is clipped exactly at the midpoint and never bleeds onto a
       neighbouring button. */
    clip-path: inset(-16px round 106px);
  }
  .tbz-module--dark .tbz-btn--white:before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 1;
    transition: background 220ms cubic-bezier(0.16, 1, 0.3, 1), 220ms cubic-bezier(0.16, 1, 0.3, 1);
    background: linear-gradient(
      135deg,
      transparent 0%,
      color-mix(in oklab, rgba(255, 255, 255, 1) 25%, transparent) 22%,
      color-mix(in oklab, rgba(255, 255, 255, 1) 25%, transparent) 78%,
      rgba(255, 255, 255, 1) 100%
    );
  }
  .tbz-module--dark .tbz-btn--white:after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    padding: 2px;
    background: linear-gradient(115deg, transparent 0%, transparent 35%, 
      color-mix(in oklab, #fff 70%, transparent) 50%, transparent 65%, transparent 100%);
    background-size: 250% 100%;
    background-position: 100% 0;
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    opacity: 0;
  }

  .tbz-module--dark .tbz-btn--white:hover:after {
    animation: tbz-button-glare 990ms cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
  }

/* Fields */

.hs-form-field {
  margin-bottom: 1.4rem;
}

/* Labels */

form label {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.35rem;
}

/* Form Title */
.form-title {
  margin-bottom: 0;
}

/* Help text */

form legend {
  font-size: 0.875rem;
}

/* Inputs */

form input[type=text],
form input[type=search],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form select,
form textarea {
  display: inline-block;
  font-size: 0.875rem;
  padding: 0.7rem;
  width: 100%;
}

form textarea {
  resize: vertical;
}

form fieldset {
  max-width: 100% !important;
}

/* Inputs - checkbox/radio */

form .inputs-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
  cursor: pointer;
  margin-right: 0.35rem;
}

/* Inputs - date picker */

.hs-dateinput {
  position: relative;
}

.hs-dateinput:before {
  content:'\01F4C5';
  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
  color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
  border-radius: 0;
  box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  border-radius: 0 !important;
  color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 0.875rem;
  margin: 0 0 1.4rem;
}

form .hs-richtext img {
  max-width: 100% !important;
}

/* GDPR */

.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  margin-left: 1rem !important;
}

/* Validation */

.hs-form-required {
  color: #EF6B51;
}

.hs-input.invalid.error {
  border-color: #EF6B51;
}

.hs-error-msg {
  color: #EF6B51;
  margin-top: 0.35rem;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}


/* Table */

table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  vertical-align: top;
}

/* Table header */

thead th {
  vertical-align: bottom;
}
body {
  font-size: 1.0625rem;
  line-height: 1.4;
  overflow-wrap: break-word;
  font-family: 'azo-sans-web','Helvetica Neue', Arial, sans-serif;
  font-variant-numeric: lining-nums;

}
html[lang^="ja"] body,
html[lang^="zh"] body,
html[lang^="ko"] body {
  line-break: strict;
  overflow-wrap: normal;
  word-break: break-all;
}

a {
  cursor: pointer;
  transition: all 300ms ease;
}
a:hover,
a:focus,
a:active {
  transition: all 300ms ease;
}

/* Headings */
p,
.p-style {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-size: 1.0625rem;
  font-weight: 400;
  line-height: 1.4;
}
p:first-of-type {
  margin-top: 0;
}
p:last-of-type {
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 1.625rem;
}

/* Lists */

ul,
ol {
  margin: 0 0 1.4rem;
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
}
li {
  position: relative;
}
ol {
  padding-left: 1.9rem;
}
ol li::marker {
  font-family: 'tiffin-latin-variable','Helvetica Neue', Arial, sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
}

ul.no-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  border-left: 3px solid;
  margin: 0 0 1.4rem;
  padding: 2rem;
}
blockquote * {
  font-family: 'tiffin-latin-variable','Helvetica Neue', Arial, sans-serif;
  font-weight: 300;
  font-size: 2rem;
  line-height: 1.15;
  margin: 0;
}
blockquote *:not(:last-child) {
  margin-bottom: .975rem;
}

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid #CCC;
}

/* Image alt text */

img {
  font-size: 0.583rem;
  word-break: normal;
}

h1,
.h1-style,
.h2-as-h1 h2,
.h3-as-h1 h3,
.h4-as-h1 h4,
.h5-as-h1 h5,
.h6-as-h1 h6 {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-weight: 600;
  font-size: clamp(2.5rem, 4.5vw, 4.25rem);
  line-height: 1.15;
  letter-spacing: -1.5px;
}

h1 em,
.h1-style em,
.h2-as-h1 h2 em,
.h3-as-h1 h3 em,
.h4-as-h1 h4 em,
.h5-as-h1 h5 em,
.h6-as-h1 h6 em {
  font-family: 'tiffin-latin-variable','Helvetica Neue', Arial, sans-serif;
  font-weight: 500;
  font-style: italic;
  font-size: clamp(2.75rem, 5vw, 4.5rem);
  line-height: 1.15;
}

h2,
.h2-style,
.h1-as-h2 h1,
.h3-as-h2 h3,
.h4-as-h2 h4,
.h5-as-h2 h5,
.h6-as-h2 h6  {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-weight: 700;
  font-size: clamp(1.75rem, 4.5vw, 2.375rem);
  line-height: 1.25;
  letter-spacing: -.57px;
}
h2 .tbz-serif {
  font-size: clamp(2rem, 4.5vw, 2.75rem)
}

h3,
.h3-style,
.h1-as-h3 h1,
.h2-as-h3 h2,
.h4-as-h3 h4,
.h5-as-h3 h5,
.h6-as-h3 h6  {
  font-family: 'tiffin-latin-variable','Helvetica Neue', Arial, sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1;
  margin-bottom: .975rem;
}

.hs-small-style h3,
.h3-small-style,
.h1-as-h3-small h1,
.h2-as-h3-small h2,
.h4-as-h3-small h4,
.h5-as-h3-small h5,
.h6-as-h3-small h6  {
  font-family: 'tiffin-latin-variable','Helvetica Neue', Arial, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1;
  margin-bottom: .975rem;
}
h4,
.h4-style,
.h1-as-h4 h1,
.h2-as-h4 h2,
.h3-as-h4 h3,
.h5-as-h4 h5,
.h6-as-h4 h6  {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.2;
}

h5,
.h5-style,
.h1-as-h5 h1,
.h2-as-h5 h2,
.h3-as-h5 h3,
.h4-as-h5 h4,
.h6-as-h5 h6  {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 1.25rem;
  line-height: 1.2;
}
h6,
.h6-style,
.h1-as-h3 h1,
.h2-as-h3 h2,
.h3-as-h3 h3,
.h4-as-h3 h4,
.h5-as-h3 h5  {
  font-family: 'tiffin-latin-variable','Helvetica Neue', Arial, sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1;
  margin-bottom: .975rem;
}

.body--large {
  font-size: 1.375rem;
}
.body--small {
  font-size: .8125rem;
}

.tbz-eyebrow,
h1.tbz-eyebrow,
h2.tbz-eyebrow,
h3.tbz-eyebrow,
h4.tbz-eyebrow,
h5.tbz-eyebrow,
h6.tbz-eyebrow {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-size: 1.0625rem;
  font-style: normal;
  font-weight: 500;
  line-height: 115%; /* 19.55px */
  letter-spacing: 3.4px;
  text-transform: uppercase;
  margin-bottom: 1.625rem;
  display: block;
}

.tbz-serif {
  font-family: 'tiffin-latin-variable','Helvetica Neue', Arial, sans-serif;
  font-style: italic;
  font-weight: 500;
  line-height: 115%; /* 19.55px */
}
.tbz-sans-serif {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-weight: 400;
  line-height: 115%; /* 19.55px */
}
.u-txt--small {
  font-size: 0.8125rem;
}

/* For content that needs to be visually hidden but stay visible for screenreaders */
.header__skip {
  height: 1px;
  left: -1000px;
  overflow: hidden;
  position: absolute;
  text-align: left;
  top: -1000px;
  width: 1px;
  transition: none;
}

.header__skip:hover,
.header__skip:focus,
.header__skip:active {
  height: auto;
  left: 0;
  overflow: visible;
  top: 0;
  width: auto;
  color: rgba(3, 137, 195, 1);
  font-size: 1rem;
  z-index: 100000;
  transition: none;
}

.sr-only {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

@media (max-width: 767px) {
  .sr-only-mobile {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}
/* Bottom (default) */
.fade-in {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Top */
.fade-in-top {
  opacity: 0;
  transform: translateY(-24px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Left */
.fade-in-left {
  opacity: 0;
  transform: translateX(-24px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Right */
.fade-in-right {
  opacity: 0;
  transform: translateX(24px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Single visible state works for all of them */
.fade-in.is-visible,
.fade-in-top.is-visible,
.fade-in-left.is-visible,
.fade-in-right.is-visible {
  opacity: 1;
  transform: translate(0);
}

@media (prefers-reduced-motion: reduce) {
  .fade-in,
  .fade-in-top,
 .fade-in-left,
 .fade-in-right {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
.module-wrapper {
    position: relative;
}
/* BACKGROUND COLORS */



    .tbz-module--dark {
        color: rgba(255, 255, 255, 1);
    }
    .tbz-module--dark a:not(.tbz-btn) {
        color: rgba(215, 242, 255, 1);
    }
    .tbz-module--dark a:not(.tbz-btn):hover,
    .tbz-module--dark a:not(.tbz-btn):focus,
    .tbz-module--dark a:not(.tbz-btn):active {
        color: rgba(255, 255, 255, 1);
    }
    .tbz-module--dark .tbz-eyebrow {
        color: rgba(200, 255, 58, 1);
    }
    .tbz-module--dark blockquote {
        border-color: rgba(200, 255, 58, 1);
        background: rgba(255, 255, 255, 0.05);
    }
    .tbz-module--dark ul {
        list-style: none;
    }

    .tbz-module--dark ul li:before {
        content: '\2022';
        /* padding: 10px; */
        color: rgba(200, 255, 58, 1);
        text-shadow: 0 0 10px rgba(200, 255, 58, 1),0 0 10px rgba(200, 255, 58, .5); 
        display: block;
        position: absolute;
        left: -30px;
        top: 9px;
        font-size: 1.5rem;
        line-height: 0;
    }
    .tbz-module--dark li::marker {
        color: rgba(200, 255, 58, 1);
    }


    .tbz-module--light {
        color: rgba(0, 44, 72, 1);
    }
    .tbz-module--light a:not(.tbz-btn) {
        color: rgba(3, 137, 195, 1);
    }
    .tbz-module--light a:not(.tbz-btn):hover,
    .tbz-module--light a:not(.tbz-btn):focus,
    .tbz-module--light a:not(.tbz-btn):active {
        color: rgba(0, 44, 72, 1);
    }
    .tbz-module--light .tbz-eyebrow {
        color: rgba(165, 211, 44, 1);
    }
    .tbz-module--light blockquote {
        border-color: rgba(165, 211, 44, 1);
        background: rgba(3, 137, 195, 0.03);
    }
    .tbz-module--light ul {
        list-style: none;
    }

    .tbz-module--light ul li:before {
        content: '\2022';
        /* padding: 10px; */
        color: rgba(165, 211, 44, 1);
        text-shadow: 0 0 10px rgba(165, 211, 44, 1),0 0 10px rgba(165, 211, 44, .5); 
        display: block;
        position: absolute;
        left: -30px;
        top: 9px;
        font-size: 1.5rem;
        line-height: 0;
    }
    .tbz-module--light li::marker {
        color: rgba(165, 211, 44, 1);
    }





/* --- Default (all breakpoints) --- */
.u-pt--xl       { padding-top:    12.0rem; }
.u-pt--l        { padding-top:    10.0rem; }
.u-pt--m        { padding-top:    8.0rem; }
.u-pt--s        { padding-top:    4.0rem; }
.u-pt--xs       { padding-top:    2.0rem; }
.u-pt--none     { padding-top:    0; }

.u-pb--xl       { padding-bottom: 12.0rem; }
.u-pb--l        { padding-bottom: 10.0rem; }
.u-pb--m        { padding-bottom: 8.0rem; }
.u-pb--s        { padding-bottom: 4.0rem; }
.u-pb--xs       { padding-bottom: 2.0rem; }
.u-pb--none     { padding-bottom: 0; }


.u-ta--left {
    text-align: left;
}

.u-ta--center {
    text-align: center;
}

.u-ta--right {
    text-align: right;
}
@media screen and (max-width: 767px) {
    .u-ta--mob-left {
        text-align: left;
    }
    .u-ta--mob-center {
        text-align: center;
    }
    .u-ta--mob-right {
        text-align: right;
    }
}

.u--grid {
    row-gap: 2rem;
}

.u-img--radius:not(.video-block),
.u-img--radius .hs-video-wrapper,
.u-border-radius {
    border-radius: 20px;
    overflow: hidden;
}


/* ---- Glass background ---- */
/* Translucent gradient fill + backdrop blur. Override --u-glass-fill and      */
/* --u-glass-fill-opacity with CSS custom properties for per-context theming.  */

.u-glass-bg {
  --u-glass-fill: rgba(215, 242, 255, 1);
  --u-glass-fill-opacity: 0.10;
  background: linear-gradient(
    135deg,
    transparent 0%,
    color-mix(in oklab, var(--u-glass-fill) calc(var(--u-glass-fill-opacity) * 100%), transparent) 100%
  );
  -webkit-backdrop-filter: blur(25px);
          backdrop-filter: blur(25px);
  isolation: isolate;
}

.tbz-module--light .u-glass-bg {
  --u-glass-fill: rgba(9, 22, 40, 1);
  --u-glass-fill-opacity: 0.06;
}


/* ---- Gradient border ---- */
/* 1px masked gradient stroke via ::before. Inherits border-radius from the   */
/* host element. Host must allow stacking-context (isolation:isolate helps).  */

.u-glass-border {
  --u-glass-stroke: rgba(215, 242, 255, 1);
  position: relative;
}

.u-glass-border:not(.video-block)::before,
.u-glass-border.video-block .hs-video-wrapper::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(
    135deg,
    color-mix(in oklab, var(--u-glass-stroke)  8%, transparent)  0%,
    color-mix(in oklab, var(--u-glass-stroke) 18%, transparent) 35%,
    color-mix(in oklab, var(--u-glass-stroke) 22%, transparent) 70%,
    color-mix(in oklab, var(--u-glass-stroke) 55%, transparent) 100%
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
}
.img-block.u-glass-border::before,
.u-glass-border.video-block .hs-video-wrapper::before {
    z-index: 2;
}

.tbz-module--light .u-glass-border {
  --u-glass-stroke: rgba(9, 22, 40, 1);
}


/* ---- Gradient divider ---- */
/* Horizontal rule that fades in from the edges. Use flex: 1 1 auto on the   */
/* element to let it grow and fill available space beside a CTA button.       */

.u-divider--gradient {
  --u-divider-color: rgba(215, 242, 255, 1);
  display: block;
  flex: 1 1 auto;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    color-mix(in oklab, var(--u-divider-color) 28%, transparent) 12%,
    color-mix(in oklab, var(--u-divider-color) 28%, transparent) 88%,
    transparent 100%
  );
}

.tbz-module--light .u-divider--gradient {
  --u-divider-color: rgba(9, 22, 40, 1);
}

.hs_cos_wrapper_type_icon {
    display: flex;
    align-items: center;
    justify-content: center;
}
.u-pos--relative {
    position: relative;
}

.tbz-column > *:last-child {
    margin-bottom: 0;
}
/* =============================================================================
   Global Footer
   Horizontal layout is handled by container--xl + row + col-md-* in the HTML.
   This file handles only footer-specific colour, spacing, and type styles.
   ============================================================================= */

.tbz-footer {
  background-color: rgba(0, 44, 72, 1);
  color: rgba(255, 255, 255, 1);
}



/* ---- Brand column ---- */

.tbz-footer__brand {
  gap: 1.5rem;
}

.tbz-footer__logo-link {
  display: inline-block;
  transition: opacity 150ms linear;
}

.tbz-footer__logo-link:hover {
  opacity: 0.8;
}

.tbz-footer__logo {
  width: clamp(150px, 14vw, 160px);
  height: auto;
}

/* Contact richtext */
.tbz-footer__contact,
.tbz-footer__contact a {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: color-mix(in oklab, rgba(255, 255, 255, 1) 80%, transparent);
  text-decoration: none;
}

/* Social — d-flex justify-content-start align-items-center on the element; gap + reset here */
.tbz-footer__social {
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.tbz-footer__social-link {
  display: inline-grid;
  place-items: center;
  color: rgba(200, 255, 58, 1);
  font-size: 1.25rem;
  text-decoration: none;
  transition: opacity 150ms linear;
}

.tbz-footer__social-link:hover {
  opacity: 0.75;
}

.tbz-footer__social-link svg {
  width: 20px;
  height: 20px;
  fill: rgba(200, 255, 58, 1);
}


/* ---- Nav columns — col-md-8 handles outer width; flex here distributes inner cols ---- */

.tbz-footer__nav {
  gap: clamp(3rem, 4vw, 5rem);
}
@media screen and (max-width: 992px) {
  .tbz-footer__col {
    flex: 1 1 40%;
  }
}
@media screen and (max-width: 767px) {
  .tbz-footer__col {
    flex: 1;
  }
}
.tbz-footer__col-title {
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-size: 1rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 1);
  margin: 0 0 1.25rem;
  line-height: 1.2;
}

.tbz-footer__col-title a {
  color: inherit;
  text-decoration: none;
  transition: opacity 150ms linear;
}

.tbz-footer__col-title a:hover {
  opacity: 0.75;
}

.tbz-footer__col-list {
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0.875rem;
}

/* Col link — inline-flex so lord icon and text align on the same baseline */
.tbz-footer__col-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: color-mix(in oklab, rgba(255, 255, 255, 1) 80%, transparent);
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.3;
  text-decoration: none;
  transition: color 150ms linear;
}

a.tbz-footer__col-link:hover {
  color: rgba(255, 255, 255, 1);
}

.tbz-footer__item-icon {
  display: inline-grid;
  place-items: center;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.tbz-footer__item-icon lord-icon {
  width: 20px;
  height: 20px;
}


/* ---- Mobile nav accordion ---- */

@media screen and (max-width: 767px) {
  .tbz-footer__nav {
    flex-direction: column;
    width: 100%;
    gap: 0;
  }

  .tbz-footer__col {
    width: 100%;
    margin-bottom: 0 !important;
  }

  /* Accordion trigger button */
  .tbz-footer__col-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    width: 100%;
    min-width: 0;
    padding: 1rem 0;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    color: rgba(255, 255, 255, 1);
    font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
  }

  .tbz-footer__col-icon {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    color: rgba(200, 255, 58, 1);
    transition: transform 350ms ease;
  }

  .tbz-footer__col.acc-open .tbz-footer__col-icon {
    transform: rotate(180deg);
  }

  /* Panel — grid trick for smooth height animation */
  .tbz-footer__col-panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 350ms ease;
  }

  .tbz-footer__col-panel .tbz-footer__col-list {
    overflow: hidden;
    min-height: 0;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .tbz-footer__col.acc-open .tbz-footer__col-panel {
    grid-template-rows: 1fr;
  }

  /* Add bottom padding inside open panel */
  .tbz-footer__col.acc-open .tbz-footer__col-list {
    padding-bottom: 1rem;
  }

  /* Closing divider at end of nav */
  .tbz-footer__nav-end-divider {
    width: 100%;
  }

  @media (prefers-reduced-motion: reduce) {
    .tbz-footer__col-icon,
    .tbz-footer__col-panel {
      transition: none;
    }
  }
}


/* ---- Bottom bar — row/justify-content-between/align-items-center + u-pt--m/u-pb--m handle layout ---- */

.tbz-footer__copyright {
  font-size: 0.875rem;
  color: color-mix(in oklab, rgba(255, 255, 255, 1) 65%, transparent);
}

.tbz-footer__copyright p {
  margin: 0;
}

.tbz-footer__legal {
  gap: 2rem;
  list-style: none;
}

.tbz-footer__legal-link {
  color: color-mix(in oklab, rgba(255, 255, 255, 1) 65%, transparent);
  font-size: 0.875rem;
  text-decoration: none;
  white-space: nowrap;
  transition: color 150ms linear;
}

.tbz-footer__legal-link:hover {
  color: rgba(255, 255, 255, 1);
}
/* =============================================================================
   Global Header
   Two rows: utility nav (upper right) + sticky glass pill (logo / nav / CTA).
   ============================================================================= */





@keyframes tbz-header-fadein {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* ---- HubSpot wrapper + layout --------------------------------------------
   #hs_cos_wrapper_global_header is fixed so the header overlays the page.
   The first DnD row gets padding-top to clear the header height.          */

#hs_cos_wrapper_global_header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 2;
  transition: top 500ms ease;
}

#hs_cos_wrapper_global_header:has(.header-up) {
  top: -50px;
}

.header-container-wrapper.section--dnd > .container-fluid .row-fluid-wrapper > .row-fluid > .span12.widget-span > .row-fluid-wrapper.row-depth-1:first-of-type .module-wrapper {
  padding-top: 160px;
}

@media screen and (max-width: 992px) {
  #hs_cos_wrapper_global_header:has(.header-up) {
    top: 0;
  }

  .header-container-wrapper.section--dnd > .container-fluid .row-fluid-wrapper.row-depth-1:first-of-type .module-wrapper {
    padding-top: 65px;
  }
}


/* ---- Structure -----------------------------------------------------------
   <header> and __inner collapse to display:contents so utility nav and the
   sticky pill are direct children of .tbz-page-shell for layout and
   sticky-containing-block purposes. The semantic landmark is preserved.   */

.tbz-header,
.tbz-header__inner {
  display: contents;
}

.tbz-page-shell {
  --tbz-header-height: 70px;
  --tbz-header-overlay-clearance: calc(var(--tbz-header-height) + 2.25rem + 4.0rem);
}

/* Pull main up behind the header so hero content renders under the bar */
.tbz-page-shell > main {
  margin-block-start: calc((var(--tbz-header-height) + 2.25rem) * -1);
}


/* ---- Utility nav ---------------------------------------------------------
   Phone / email / support row, floated right above the pill.             */

.tbz-utility-nav {
  position: relative;
  z-index: 12;
  display: flex;
  justify-content: flex-end;
  gap: 4.0rem;
  list-style: none;
  margin: 30px auto 0;
  padding-inline: 30px;
  width: min(100% - 30px, 1280px);
  animation: tbz-header-fadein 1500ms ease both;
}

@media (min-width: 48rem) {
  .tbz-utility-nav {
    width: min(100% - 10.0rem, 1280px);
  }
}

.tbz-utility-nav__link {
  --tbz-utility-icon-size: 20px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: rgba(255, 255, 255, 1);
  font-family: 'azo-sans-web','Helvetica Neue', Arial, sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.005em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: color 300ms ease, opacity 150ms linear;
}

.tbz-utility-nav__link:hover {
  opacity: 0.82;
}

.tbz-utility-nav__icon {
  display: inline-grid;
  place-items: center;
  width: var(--tbz-utility-icon-size);
  height: var(--tbz-utility-icon-size);
  flex-shrink: 0;
}

.utility-nav-item lord-icon,
.tbz-utility-nav__icon lord-icon {
  --lord-icon-primary: rgba(200, 255, 58, 1);
  --lord-icon-secondary: rgba(200, 255, 58, 1);
  width: 20px;
  height: 20px;
}


/* ---- Main bar (sticky pill) ----------------------------------------------
   Rounded glass capsule: logo left, nav center, CTA right.               */

.tbz-header__bar {
  --tbz-header-color: rgba(255, 255, 255, 1);
  --tbz-header-border-width: 1px;
  --tbz-header-fill-opacity: 0.1;
  --tbz-header-stroke-soft-opacity: 0.25;
  position: sticky;
  top: 2.0rem;
  left: 0;
  right: 0;
  z-index: 11;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  height: 70px;
  margin: 15px auto 0;
  padding-inline: 1.5rem;
  width: min(calc(100% - 4.0rem), 1280px);
  border-radius: 100px;
  background: linear-gradient(
    135deg,
    transparent 0%,
    color-mix(in oklab, var(--tbz-header-fill-color) calc(var(--tbz-header-fill-opacity) * 100%), transparent) 100%
  );
  -webkit-backdrop-filter: blur(25px);
          backdrop-filter: blur(25px);
  isolation: isolate;
  animation: tbz-header-fadein 1500ms ease 300ms both;
}
@media screen and (min-width: 1120px) {
  .tbz-header__bar {
    gap: 4rem;
    padding-inline: 4rem;
  }
}

@media (min-width: 48rem) {
  .tbz-header__bar {
    width: min(calc(100% - 10.0rem), 1280px);
  }
}

/* Gradient stroke */
.tbz-header__bar::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  padding: var(--tbz-header-border-width);
  background: linear-gradient(
    135deg,
    transparent 0%,
    color-mix(in oklab, var(--tbz-header-color) calc(var(--tbz-header-stroke-soft-opacity) * 100%), transparent) 22%,
    color-mix(in oklab, var(--tbz-header-color) calc(var(--tbz-header-stroke-soft-opacity) * 100%), transparent) 78%,
    var(--tbz-header-color) 100%
  );
  -webkit-mask:
    linear-gradient(rgba(69, 77, 83, 1) 0 0) content-box,
    linear-gradient(rgba(69, 77, 83, 1) 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
}


/* ---- Brand / logo ---- */

.tbz-header__brand {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  border-radius: 8px;
  filter: drop-shadow(0 0 0 transparent);
  transition: filter 120ms cubic-bezier(0.16, 1, 0.3, 1);
}

.tbz-header__brand:hover,
.tbz-header__brand:focus-visible {
  /* filter: drop-shadow(0 0 8px color-mix(in oklab, rgba(255, 255, 255, 1) 30%, transparent)); */
}

.tbz-header__brand:focus-visible {
  outline: 2px solid color-mix(in oklab, rgba(255, 255, 255, 1) 60%, transparent);
  outline-offset: 4px;
}

.tbz-header__logo {
  width: clamp(96px, 8.5vw, 120px);
  height: auto;
  display: block;
  transition: opacity 150ms ease;
}

/* Hidden source logo used by JS to clone into the mobile nav */
.tbz-header__mobile-logo {
  display: none;
}


/* ---- Primary nav ---- */

.tbz-primary-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 1 1 auto;
}

.tbz-primary-nav__item {
  position: relative;
}

.tbz-primary-nav__link {
  position: relative;
  display: inline-block;
  color: rgba(255, 255, 255, 1);
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-size: 0.9375rem;
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1;
  text-decoration: none;
  padding-block: 6px;
  white-space: nowrap;
  text-shadow: 0 0 0 transparent;
  transition:
    color       150ms linear,
    text-shadow 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* Lime underline indicator */
.tbz-primary-nav__link::after {
  content: '';
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0;
  height: 1px;
  background: rgba(200, 255, 58, 1);
  transform: scaleX(0);
  transform-origin: 50% 50%;
  transition: transform 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

.tbz-primary-nav__link:hover::after,
.tbz-primary-nav__link:focus-visible::after,
.tbz-primary-nav__link[aria-current='page']::after,
.tbz-primary-nav__item--has-dropdown:hover > .tbz-primary-nav__link::after,
.tbz-primary-nav__item--has-dropdown > .tbz-primary-nav__link[aria-expanded='true']::after,
.tbz-primary-nav__item--has-dropdown:focus-within > .tbz-primary-nav__link::after {
  transform: scaleX(1);
}

.tbz-primary-nav__link:hover,
.tbz-primary-nav__link:focus-visible {
  text-shadow: 0 0 8px color-mix(in oklab, rgba(255, 255, 255, 1) 45%, transparent);
}

/* Chevron for items with dropdowns */
.tbz-primary-nav__item--has-dropdown > .tbz-primary-nav__link {
  padding-right: 18px;
}

.tbz-primary-nav__item--has-dropdown > .tbz-primary-nav__link::before {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(calc(-50% - 1px)) rotate(45deg);
  opacity: 0.65;
  transition:
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity   150ms linear;
}

.tbz-primary-nav__item--has-dropdown:hover > .tbz-primary-nav__link::before,
.tbz-primary-nav__item--has-dropdown > .tbz-primary-nav__link[aria-expanded='true']::before,
.tbz-primary-nav__item--has-dropdown:focus-within > .tbz-primary-nav__link::before {
  transform: translateY(calc(-50% + 2px)) rotate(-135deg);
  opacity: 1;
}


/* ---- Dropdown flyout ---- */

.tbz-primary-nav__dropdown {
  list-style: none;
  margin: 0;
  padding: 2.0rem;
  position: absolute;
  top: calc(100% + 16px);
  left: 50%;
  transform: translateX(-50%) translateY(-6px);
  min-width: 210px;
  background: linear-gradient(
    150deg,
    color-mix(in oklab, rgba(9, 22, 40, 1) 92%, transparent) 0%,
    color-mix(in oklab, rgba(9, 22, 40, 1) 82%, transparent) 100%
  );
  -webkit-backdrop-filter: blur(25px);
          backdrop-filter: blur(25px);
  border-radius: 16px;
  border: 1px solid color-mix(in oklab, rgba(255, 255, 255, 1) 16%, transparent);
  box-shadow:
    0 12px 40px color-mix(in oklab, #000 40%, transparent),
    0 2px 8px  color-mix(in oklab, #000 20%, transparent);
  opacity: 0;
  pointer-events: none;
  z-index: 20;
  transition:
    opacity   180ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* Caret pointing up toward parent link */
.tbz-primary-nav__dropdown::before {
  content: '';
  position: absolute;
  top: -5px;
  left: 50%;
  width: 10px;
  height: 10px;
  background: color-mix(in oklab, rgba(9, 22, 40, 1) 92%, transparent);
  border-top: 1px solid color-mix(in oklab, rgba(255, 255, 255, 1) 16%, transparent);
  border-left: 1px solid color-mix(in oklab, rgba(255, 255, 255, 1) 16%, transparent);
  transform: translateX(-50%) rotate(45deg);
}

/* Invisible bridge so the dropdown stays open while moving the pointer from trigger to panel */
.tbz-primary-nav__dropdown::after {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  width: 100%;
  height: 20px;
}

/* Show on hover, aria-expanded, or focus-within (tab navigation) */
.tbz-primary-nav__item--has-dropdown:hover .tbz-primary-nav__dropdown,
.tbz-primary-nav__item--has-dropdown > .tbz-primary-nav__link[aria-expanded='true'] + .tbz-primary-nav__dropdown,
.tbz-primary-nav__item--has-dropdown:focus-within .tbz-primary-nav__dropdown {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.tbz-primary-nav__dropdown-link {
  display: block;
  padding: 9px 14px;
  color: rgba(255, 255, 255, 1);
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: -0.005em;
  line-height: 1.3;
  text-decoration: none;
  border-radius: 10px;
  white-space: nowrap;
  transition:
    background 150ms linear,
    color      150ms linear;
}

.tbz-primary-nav__dropdown-link:hover,
.tbz-primary-nav__dropdown-link:focus-visible {
  background: color-mix(in oklab, rgba(255, 255, 255, 1) 10%, transparent);
  color: rgba(200, 255, 58, 1);
  outline: none;
}

.tbz-primary-nav__dropdown-link[aria-current='page'] {
  color: rgba(200, 255, 58, 1);
}


/* ---- Header CTA ---- */

.tbz-btn.tbz-header__cta {
  padding: 12px 28px;
  min-height: 0;
  min-width: 0;
  flex-shrink: 0;
}


/* ---- Mobile menu toggle (hamburger) ---- */

.tbz-header__menu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  border-radius: 8px;
  color: rgba(255, 255, 255, 1);
  flex-shrink: 0;
  transition: opacity 150ms linear;
}

.tbz-header__menu-toggle:hover {
  opacity: 0.75;
}

.tbz-header__menu-toggle:focus-visible {
  outline: 2px solid color-mix(in oklab, rgba(255, 255, 255, 1) 60%, transparent);
  outline-offset: 2px;
}

.tbz-header__hamburger {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 22px;
  pointer-events: none;
}

.tbz-header__hamburger span {
  display: block;
  height: 2px;
  width: 100%;
  background: rgba(255, 255, 255, 1);
  border-radius: 2px;
  transform-origin: center;
  transition:
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity   150ms linear,
    width     220ms cubic-bezier(0.16, 1, 0.3, 1);
}

.tbz-header__hamburger span:nth-child(2) {
  width: 75%;
}

/* Open state — morphs bars into an X */
.tbz-header__menu-toggle[aria-expanded='true'] .tbz-header__hamburger span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.tbz-header__menu-toggle[aria-expanded='true'] .tbz-header__hamburger span:nth-child(2) {
  opacity: 0;
  width: 0;
}

.tbz-header__menu-toggle[aria-expanded='true'] .tbz-header__hamburger span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}


/* ---- Mobile nav panel ---- */

.tbz-mobile-nav {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9;
  background: color-mix(in oklab, rgba(9, 22, 40, 1) 95%, transparent);
  -webkit-backdrop-filter: blur(25px);
          backdrop-filter: blur(25px);
  padding: 4rem 2rem;
  overflow-y: auto;
  visibility: hidden;
  transform: translateX(100%);
  transition:
    transform  900ms cubic-bezier(0.16, 1, 0.3, 1),
    visibility 900ms cubic-bezier(0.16, 1, 0.3, 1);
}

.tbz-mobile-nav.is-open {
  visibility: visible;
  transform: translateX(0);
  transition:
    transform  900ms cubic-bezier(0.16, 1, 0.3, 1),
    visibility 900ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* Item stagger animations */
@keyframes tbz-mobile-item-in {
  from { opacity: 0; transform: translateY(16px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes tbz-mobile-item-out {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(8px); }
}

.tbz-mobile-nav__brand,
.tbz-mobile-nav__list > li,
.tbz-mobile-nav .u-divider--gradient,
.tbz-mobile-nav__ctas,
.tbz-mobile-nav__utility {
  opacity: 0;
}

.tbz-mobile-nav.is-open .tbz-mobile-nav__brand,
.tbz-mobile-nav.is-open .tbz-mobile-nav__list > li,
.tbz-mobile-nav.is-open .u-divider--gradient,
.tbz-mobile-nav.is-open .tbz-mobile-nav__ctas,
.tbz-mobile-nav.is-open .tbz-mobile-nav__utility {
  /* animation: tbz-mobile-item-in 600ms cubic-bezier(0.16, 1, 0.3, 1) var(--tbz-stagger-delay, 0ms) both; */
  animation: tbz-mobile-item-in 800ms ease var(--tbz-stagger-delay, 0ms) both;
}

/* Close button */
.tbz-mobile-nav__close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  background: none;
  border: none;
  border-radius: 8px;
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  transition: background 200ms ease;
}

.tbz-mobile-nav__close:hover,
.tbz-mobile-nav__close:focus-visible {
  background: color-mix(in oklab, rgba(255, 255, 255, 1) 10%, transparent);
  outline: none;
}

.tbz-mobile-nav__close svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  fill: none;
}

/* Logo */
.tbz-mobile-nav__brand {
  display: block;
  margin-bottom: 4.25rem;
  padding: 0 1rem;
}

.tbz-mobile-nav__brand img {
  display: block;
  height: 28px;
  width: auto;
}

/* Nav lists */
.tbz-mobile-nav__list,
.tbz-mobile-nav__sub,
.tbz-mobile-nav__utility {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tbz-mobile-nav__list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.tbz-mobile-nav__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  color: rgba(255, 255, 255, 1);
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: -0.01em;
  text-decoration: none;
  border-radius: 12px;
  transition: background 150ms linear;
}

.tbz-mobile-nav__link:hover,
.tbz-mobile-nav__link:focus-visible {
  background: color-mix(in oklab, rgba(255, 255, 255, 1) 8%, transparent);
  outline: none;
}

/* Chevron for items with children */
.tbz-mobile-nav__link--has-children::after {
  content: '';
  display: inline-block;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  opacity: 0.55;
  transition:
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity   150ms linear;
}

.tbz-mobile-nav__link--has-children[aria-expanded='true']::after {
  transform: translateY(2px) rotate(-135deg);
  opacity: 1;
}

/* Accordion sub-list */
.tbz-mobile-nav__sub {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-left: 16px;
  overflow: hidden;
  max-height: 0;
  transition: max-height 800ms ease;
}

.tbz-mobile-nav__sub.is-open {
  max-height: 800px;
  transition: max-height 1800ms ease;
}

.tbz-mobile-nav__sub li {
  opacity: 0;
  transform: translateY(8px);
}

.tbz-mobile-nav__sub.is-open li {
  animation: tbz-mobile-item-in 800ms ease var(--tbz-sub-stagger-delay, 0ms) both;
}

.tbz-mobile-nav__sub.is-closing li {
  animation: tbz-mobile-item-out 800ms ease var(--tbz-sub-stagger-delay, 0ms) both;
}

.tbz-mobile-nav__sub-link {
  display: block;
  padding: 10px 16px;
  color: color-mix(in oklab, rgba(255, 255, 255, 1) 72%, transparent);
  font-family: 'azo-sans-web','Iowan Old Style', 'Georgia', 'Times New Roman', serif;
  font-size: 1rem;
  font-weight: 400;
  text-decoration: none;
  border-radius: 8px;
  transition:
    background 150ms linear,
    color      150ms linear;
}

.tbz-mobile-nav__sub-link:hover,
.tbz-mobile-nav__sub-link:focus-visible {
  background: color-mix(in oklab, rgba(255, 255, 255, 1) 8%, transparent);
  color: rgba(255, 255, 255, 1);
  outline: none;
}

/* Divider */
.tbz-mobile-nav__divider {
  height: 1px;
  background: color-mix(in oklab, rgba(255, 255, 255, 1) 12%, transparent);
  margin: 4.0rem 0;
}

/* CTAs */
.tbz-mobile-nav__ctas {
  display: flex;
  flex-direction: column;
  gap: 4.0rem;
}

.tbz-mobile-nav__ctas .tbz-btn {
  width: 100%;
  justify-content: center;
  min-width: 0;
}

/* Utility links */
.tbz-mobile-nav__utility {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.tbz-mobile-nav__utility .tbz-utility-nav__link {
  padding: 10px 16px;
  border-radius: 8px;
}

.tbz-mobile-nav__utility .tbz-utility-nav__link:hover {
  opacity: 1;
  background: color-mix(in oklab, rgba(255, 255, 255, 1) 8%, transparent);
}


/* ---- Responsive breakpoints ---- */

@media (max-width: 992px) {
  .tbz-header__bar {
    padding-inline: 2rem;
  }
  .tbz-header__bar nav[aria-label='Primary'],
  .tbz-header__cta,
  .tbz-utility-nav {
    display: none;
  }

  .tbz-header__menu-toggle {
    display: flex;
  }

  .tbz-mobile-nav {
    display: block;
  }
}


/* =============================================================================
   Light theme overrides (.tbz-header--light)
   The dark theme (default) needs no extra class — base styles above apply.
   ============================================================================= */

/* Pill */
.tbz-header--light .tbz-header__bar {
  --tbz-header-color: #a9bac6;
  --tbz-header-fill-color: rgba(255, 255, 255, 1);
  --tbz-header-fill-opacity: 0.8;
  --tbz-header-stroke-soft-opacity: 0.2;
}

/* Utility nav */
.tbz-header--light .tbz-utility-nav__link {
  color: rgba(9, 22, 40, 1);
}

.tbz-header--light .tbz-utility-nav__link:hover {
  opacity: 0.7;
}

.tbz-header--light .utility-nav-item lord-icon,
.tbz-header--light .tbz-utility-nav__icon lord-icon {
  --lord-icon-primary: rgba(165, 211, 44, 1);
  --lord-icon-secondary: rgba(165, 211, 44, 1);
}

/* Brand */
.tbz-header--light .tbz-header__brand:hover,
.tbz-header--light .tbz-header__brand:focus-visible {
  /* filter: drop-shadow(0 0 8px color-mix(in oklab, rgba(9, 22, 40, 1) 25%, transparent)); */
}

.tbz-header--light .tbz-header__brand:focus-visible {
  outline-color: color-mix(in oklab, rgba(9, 22, 40, 1) 50%, transparent);
}

/* Primary nav */
.tbz-header--light .tbz-primary-nav__link {
  color: rgba(9, 22, 40, 1);
}

.tbz-header--light .tbz-primary-nav__link::after {
  background: rgba(165, 211, 44, 1);
}

.tbz-header--light .tbz-primary-nav__link:hover,
.tbz-header--light .tbz-primary-nav__link:focus-visible {
  text-shadow: 0 0 10px color-mix(in oklab, rgba(9, 22, 40, 1) 30%, transparent);
}

/* Hamburger */
.tbz-header--light .tbz-header__menu-toggle {
  color: rgba(9, 22, 40, 1);
}

.tbz-header--light .tbz-header__menu-toggle:focus-visible {
  outline-color: color-mix(in oklab, rgba(9, 22, 40, 1) 50%, transparent);
}

.tbz-header--light .tbz-header__hamburger span {
  background: rgba(9, 22, 40, 1);
}


/* ---- Reduced motion ---- */

@media (prefers-reduced-motion: reduce) {
  .tbz-mobile-nav__brand,
  .tbz-mobile-nav__list > li,
  .tbz-mobile-nav .u-divider--gradient,
  .tbz-mobile-nav__ctas,
  .tbz-mobile-nav__utility,
  .tbz-mobile-nav__sub li {
    opacity: 1;
    transform: none;
    animation: none;
  }

  .tbz-primary-nav__link,
  .tbz-primary-nav__link::after,
  .tbz-primary-nav__link::before,
  .tbz-header__brand,
  .tbz-header__logo,
  .tbz-utility-nav__link,
  .tbz-primary-nav__dropdown,
  .tbz-mobile-nav,
  .tbz-mobile-nav__sub,
  .tbz-header__hamburger span {
    transition: none;
  }

  .tbz-header__bar,
  .tbz-utility-nav {
    animation: none;
  }
}