/*Import brands fonts from Adobe webkit*/
@import url("https://use.typekit.net/hzx8xvv.css");

/*Set body font to Brother 1816 Book*/
.body{
    font-family: brother-1816, sans-serif;
    font-weight: 300;
    font-size: 18px;
    line-height: 1.65;
    color: #2E2D27;
}

/*Vertically center text in custom banner text zone*/
.row:has([data-zone-alias="custom-banner-text"]){
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

/*Remove upper, lower, right padding for custom banner*/
.custom-banner{
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}
[data-zone-alias="custom-banner-image"]{
    padding-right: 0px;
}

/*Adjust left padding on custom banner row at different breakpoints*/
.custom-banner .container-fluid{
    margin-right: 0px;
    margin-left: 15px;
}

@media (min-width: 768px){
    .custom-banner .container-fluid{
        margin-left: calc((100% - 732px) / 2);
    }
}

@media (min-width: 850px){ /*Extra, non-Bootstrap breakpoint*/
    .custom-banner .container-fluid{
        margin-left: calc((100% - 820px) / 2);
    }
}

@media (min-width: 950px){ /*Extra, non-Bootstrap breakpoint*/
    .custom-banner .container-fluid{
        margin-left: calc((100% - 920px) / 2);
    }
}

@media (min-width: 992px){
    .custom-banner .container-fluid{
        margin-left: calc((100% - 952px) / 2);
    }
}

@media (min-width: 1200px){
    .custom-banner .container-fluid{
        margin-left: calc((100% - 1152px) / 2);
    }
    [data-zone-alias="custom-banner-text"]{
        padding-right: 50px;
    }
}

/*Adjust custom banner title size based on breakpoint*/
.custom-banner-title{
    font-family: raleway, sans-serif;
    font-weight: 700;
    font-size: 36px;
    line-height: 1.5;
    color: white;
}
@media (min-width: 1200px) {
    .custom-banner-title{
        font-size: 46px;
    }
}
/*Style custom banner subtitle*/
.custom-banner-subtitle{
    font-family: brother-1816, sans-serif;
    font-weight: 300;
    font-size: 18px;
    color: white;
}

/*Style custom banner background with half-circle and border*/
.custom-banner-background {
    border-radius: 250px 0px 0px 250px;
    outline: 2px solid white;
    outline-offset: 12px;
}

/*Style custom footer text*/
.custom-footer h3,
.custom-footer p,
.custom-footer a{
     color: #ffffff;   
}

/*Style all icon boxes*/
.icon-box-row .zone-33{
    border-style: solid;
    border-width: 1.5px;
    border-color: #753696;
    border-radius: 10px;
    padding: 35px 45px 18px 45px;
    max-width: 31%;
}

/*Set padding on left and right icon boxes*/
.icon-box-row .zone-33:first-child{
    margin-right: 30px;
}
.icon-box-row .zone-33:last-child{
    margin-left: 30px;
}

/*Change icon box padding, margins for smallest breakpoint*/
@media (max-width: 767px) {
    .icon-box-row .zone-33{
        max-width: none;
        margin-bottom: 30px; 
        margin-left: 15px !important;
        margin-right: 15px !important;
    }
}

/*Style header components*/
.header{
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}
.header .mod-header-logo{
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    min-width: 300px !important;
    height: auto !important;
}
.member-login.btn{
    font-size: 18px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.switch-language {
    border-style: solid !important;
    border-color: #753696 !important;
    border-radius: 5px !important;
    color: #753696 !important;
     }

/* Align checkbox + option text properly */
.checkbox,
.radio {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
}

/* Keep the checkbox fixed on the left */
.checkbox input[type="checkbox"],
.radio input[type="radio"] {
  flex: 0 0 auto !important;
  margin: 4px 0 0 0 !important;
}

/* Let the text use the available width */
.checkbox label,
.radio label {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  display: block !important;
  margin: 0 !important;
  padding-left: 0 !important;
  line-height: 1.4 !important;
  white-space: normal !important;
}