/**
 * @file
 * custom.css
 * 
 * Layout and Theme styles for the entire site
 * 
 * -------------------------------------------------
 * Attached thru `.info.yml`
 *
 ============================================================================ */

/**
 * Global
 ========================================*/

h1,h2,h3,h4,h5,h6,body {
  font-family: "Nunito Sans", 'Roboto', Arial, sans-serif;
}
body {
  line-height: 1.5;
  font-size: 16px;
  color: #2D3959;
}
.page {
    display: flex;
    flex-direction: row;
}
.page__body {
    width: 100%;
}
.header {
    background: #445172;
    color: white;
    display: flex;
    flex-direction: column;   
    align-items: center;
}

h1 {
    font-size: 56px !important;
    font-weight: 700 !important;
    line-height: 120%;
}
h2 {
    font-size: 48px !important;
    font-weight: 700 !important;
    line-height: 120%;
}
h3 {
    font-size: 40px !important;
    font-weight: 700 !important;
    line-height: 120%;
}
h4 {
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 130%;
}
h5 {
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 140%;
}
h6 {
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 140%;
}
.flex_col {
    display: flex;
    flex-direction: column;
}
.items_center {
    align-items: center;    
}
.text_center {
    text-align: center;
}
.absolute {
    position: absolute;
}
.w_full {
    width: 100%;
}
.h_full {
    height: 100%;
}
.t_0 {
    top: 0;
}
.b_0 {
    bottom: 0;
}
.l_0 {
    left: 0;
}
.r_0 {
    right: 0;
}
.relative {
    position: relative;
}

.main {
    background: #F1EDE7;
}
.main-inner {
    width: 100%;
    max-width: 100%;    
    padding: 0;
}
footer {
    color: #FFF;
    background: #445172;
    width: 100%;
}

.link__group {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
}
.link__button {
    padding: 12px 16px;
    border-radius: 35px;
    width: fit-content;
}
.link__primary {
    background: #A0BCBA;
}
.link__primary a {
    color: #1D2435;
}

.link__secondary {
    background: #FFF;
    border: 2px solid #2D3959;
    box-sizing: border-box;
}
.link__secondary a {
    color: #2D3959;
}
.link__plain {
    display: flex;
    flex-direction: row;
    gap: 8px;
    color: #445172;
}
.link_url:after {
    content: url('../images/arrow-circle-right.svg');
    width: 24px;
    height: 24px;
}
.link_download:after {
    content: url('../images/icon_link_download.svg');
    width: 24px;
    height: 22px;
}

.gap_24 {
    gap: 24px;
}
.gap_64 {
    gap: 64px;
}

.p_x_default {
    padding-left: 64px;
    padding-right: 64px;
}
.p_y_default {
    padding-top: 112px;
    padding-bottom: 112px;
}

/**
 * Regions
 ========================================*/

/**
 * Responsive
 ========================================*/
 @media screen and (min-width: 900px) {

  .layout-sidebar {
    width: 21em;
    min-width: 21em;
    opacity: .9;
    margin-left: 2em;
  }
}


/*nav*/
/*//////////////*/
/*/////////////////////*/
.header-inner {
    padding: 40px 20px;
}
#block-letsgo-mainnavigation ul {
    display: flex;
    flex-direction: column;
    gap: 40px
}
#superfish-main {
    width: fit-content;
    margin: auto;
}
#block-letsgo-mainnavigation ul li,
#block-letsgo-mainnavigation ul li a {
    width: fit-content;
    padding: 0;
}
.menu-bar {
    width: 194px;
    height: 100vh;
}
.menu-bar .site-branding {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.menu-bar-inner {
    position: fixed;    
}
.menu-bar #block-letsgo-sitebranding {
    margin-bottom: 80px;
}
/*.menu-bar #block-letsgo-mainnavigation {*/
/*    margin-bottom: 100px;*/
/*}*/

/*banner*/
/*////////////////*/
/*///////////////////*/
.banner {
    max-width: 1206px;
    width: 100%;
}

/*home banner*/
.banner__home {
    height: 960px;
    display: flex;
    margin: auto;
}
.banner__home h1 {
    font-size: 72px !important;
    font-weight: 900 !important;
    line-height: 84%;
}
.banner__home .banner_content {
    gap: 60px;
    position: relative;
    bottom: 0;
    padding: 0 60px 120px 60px;
    width: 100%;
    align-self: flex-end;    
}
.banner__home h1 .field__item {
    display: flex;
    flex-direction: column;    
}
.banner__home h1 .field__item span:nth-child(2) {
    font-family: "Nothing You Could Do", cursive;;
    color: #C1805A;
}
.banner__home .banner_img {
    z-index: 1;
}
.banner__home .banner_img:nth-child(1) {
    left: 460px;
    top: 70px;
}
.banner__home .banner_img:nth-child(2) {
    top: 437px;
    right: 108px;
}
.banner__home .banner_deco {
    left: 327px;
    top: 84px;
    z-index: 0;
}
/*banner about*/
.banner.banner_about {
    display: flex;
    flex-direction: row;
    max-width: 1206px;
    margin: auto;
    gap: 85px;
    align-items: center;
    padding: 100px 0;
}
.banner_about_text {
    text-align: center;
    max-width: 372px;
    gap: 24px;
}
.banner_about_text p {
    margin: 0 !important;
}


.block__linkdesc_container {
    padding-top: 96px;
}
.block__linkdesc {
    max-width: 635px;
    margin: auto;
}
.block__linkdesc p {
    margin-bottom: 0 !important;
}

.block__content_hub {
    gap: 85px;
}
.block__3grid_hub {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    max-width: 1086px;
    width: 100%;    
}
.block__content_hub .link__button {
    width: fit-content;
    margin: auto;
}
.block__content_teaser_frame,
.block__persuvasive_text_frame,
.img_frame {
    border: 4px solid #87A1B8;
}
.img_frame_m {
    margin: 10px;
}
.banner_about .img_frame_m {
    margin: 20px;
}
.deco_teaser {
    top: 0;
    right: 0;
    z-index: 0;
}
.block__content_teaser_body .teaser_main {
    position: relative;
    z-index: 1;
    height: 100%;
    justify-content: space-between;
}
.block__content_teaser_body {
    margin: 10px;
    height: 373px;
    background: #BCD0CF;
    padding: 40px 20px;
}
.teaser_upper {
    gap: 20px
}
.teaser_upper .flex-col {
    gap: 10px;
}
.teaser_main h6 {
    font-size: 18px;
}
.hub_teaser_deco.deco_1 {
    z-index: 1;
    right: 0;
    bottom: 0;    
}
.hub_teaser_deco.deco_2 {
    z-index: 1;
    right: 15px;
    bottom: 20px;    
}
.hub_teaser_grid_deco {
    background: #87A1B8;
    height: 28px;
    z-index: 2;
}

/*persuvasive text*/
.block__persuvasive_text {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding-bottom: 176px;
    max-width: 1206px;
    margin: auto;
    gap: 44px;
}
.block__persuvasive_text .field__item {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.block__persuvasive_text .field__item p {
    margin-bottom: 0px;
}
.block__persuvasive_text_content {
    gap: 30px;
    max-width: 453px;
}

.block__persuvasive_text_img {
    margin: 10px;
}
.block__persuvasive_quote {
    padding: 28px 12px;
    gap: 28px;
    max-width: 371px;
    width: 100%;
    color: #1F2637;
    background: #F5F5F0;
    border-radius: 8px;
    top: 392px;
    /*right: 257px;*/
    left: 570px;
    font-family: "Nothing You Could Do", cursive;;
}
.block__quote_deco {
    left: 1px;
    top: -15px;
}
.block__quote_brick_deco {
    left: 330px;
    bottom: 65px;
}

/*cta*/
.cta {
    width: 100%;
    max-width: 1206px;
    margin: auto;
    margin-top: 112px;
    margin-bottom: 112px;
}
.cta__home {
    display: flex;
    flex-direction: row;
    align-items: center;
}
.cta__text {
    max-width: 498px;
    gap: 40px;
    /*padding-left: 150px;*/
    left: 64px;
    /*margin-top: 62px;*/
    z-index: 1;
}
.cta__text h2 {
    font-size: 56px;
    line-height: 110%;
    color: #F5F5F0;
    text-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1), 0px 2px 4px rgba(0, 0, 0, 0.06);
}
.cta__text h2 span {
    font-size: 72px;
    color: #2D3959;
    font-family: "Nothing You Could Do", cursive;;
}
.cta__text p {
    margin: 0 !important;
}
.cta_deco_featured {
    right: 20px;
    bottom: 40px;
}
.cta__home .cta_deco_wind {
    right: 115px;
    bottom: 195px;
}
.cta_deco {
    max-height: 499px;
    top: 0;
}
@media (min-width: 1440px) {
    .cta,
    .field-paragraph--field-cta-background {
        width: 100%;
        max-width: 100%;
    }
    .cta img {
        width: 100%;
        max-height: 499px;
        object-fit: cover;        
    }
}


/*story block*/
.block__story {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 21px;
    margin: auto;
    max-width: 1206px;
}
.block__story_text {
    max-width: 445px;
    gap: 20px;
}
.block__story_p {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;    
}
.story__deco {
    top: 0;
}
.story__deco.about {
    right: 0;
}
.story__deco img {
    max-height: 397px;
}


/*sponsors*/
.field-paragraph--field-logo-list .field__items {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    align-items: center;
    padding: 96px 132px;
    gap: 64px;
}
.field-paragraph--field-logo-list .field__items .field__item {
    justify-self: center;
}
.field-paragraph--field-logo-list .field__item .field__items {
    display: block;
    padding: 0;
}


/*community involvement*/
.img__photo_frame {
    padding: 30px 25px 135px 25px;
    background: white;
    box-shadow: 7.1663px 7.1663px 14.3326px rgba(0, 0, 0, 0.04), 0.71663px 0.71663px 14.3326px 2.86652px rgba(0, 0, 0, 0.04);
}
.img__photo_frame img {
    width: 333.36px;
    height: 333.36px;
}


