/* STRUCTURE*/

.main-wrapp { 
    max-width: 1830px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 55px;
    box-sizing: border-box;
}

.main-wrapp-nopad { 
    max-width: 1830px;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    box-sizing: border-box;
}

.ref-wrapp { 
    padding: 0 40px;
    box-sizing: border-box;
}

@media only screen and (max-width: 920px) { 


    .ref-wrapp { 
        padding: 0 30px;
        box-sizing: border-box;
    }
    

}

@media only screen and (max-width: 768px) { 


    .main-wrapp { 
        padding: 0 30px;
        box-sizing: border-box;
    }
    

}

/* HOME BANNER */
.top-home-banner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    
    padding: 20px 20px 0 20px;
    margin: 80px 0;

    background: linear-gradient(107.04deg, #2640AB -3.7%, #00122B 69.25%, #440784 91.12%);
    border-radius: 10px;
}
.top-home-banner img {
    max-width: 100%;
    vertical-align: bottom
}
.top-home-banner div:first-child {
    padding: 15px 6vw 35px 6vw;
    align-self: center;
}
.top-home-banner div:last-child {
    align-self: end;
}


@media only screen and (max-width: 768px) {

    .top-home-banner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px;
    }

}

/* HOME BANNER */
.small-home-banner {
    display: grid;
    grid-template-columns: 3fr 5fr;
    
    margin: 80px 0 80px 0;

    background: linear-gradient(107.04deg, #2640AB -3.7%, #00122B 69.25%, #440784 91.12%);
    border-radius: 10px;
}
.small-home-banner img {
    max-width: 100%;
    vertical-align: bottom
}
.small-home-banner div:first-child {
    align-self: center;
    padding: 3rem;
}
.small-home-banner div:last-child {
    align-self: center;
    padding: 4rem 4rem;
}


@media only screen and (max-width: 768px) {

    .small-home-banner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px;
    }

}


/* HOME GRID BIG LINKS */
.home-grid-link {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 24px;
}

.home-grid-link div img {
    width: 100%;
}

.home-grid-link div h3 {
    text-align: center;
    color:#464646;
}
.home-grid-link div p {
    text-align: center;
    color:#464646;
}


@media only screen and (max-width: 992px) {

    .home-grid-link {
        grid-template-columns: 1fr 1fr;
        row-gap: 46px;
    }

}


@media only screen and (max-width: 480px) {

    .home-grid-link {
        grid-template-columns: 1fr;
    }

}


/* HOME GRID BIG LINKS */
.footer {
    display: grid;
    grid-template-columns: 2fr 2fr 5fr;
    gap: 26px;
}

.footer h6:last-child {
    text-align: right;
}


.footer div img {
    width: 100%;
}



@media only screen and (max-width: 992px) {

    .footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
        row-gap: 55px;
    }

    .footer h6 {
        font-size: 1.6rem;
    }

    .footer h6:last-child {
        grid-column: 1 / -1;
        text-align: center;
    }

}


@media only screen and (max-width: 480px) {

    .footer {
        display: grid;
        grid-template-columns: 1fr;
        row-gap: 55px;
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

}



/* MODAL BOX */
.modal-box { width: 60%;
    position: absolute;
    background: #C88F00;
    display: none;
    z-index: 1000;
}

.modal-box header,
.modal-box .modal-header {
  padding: 1.25em 1.5em;
}

.modal-box header h3,
.modal-box header h4,
.modal-box .modal-header h3,
.modal-box .modal-header h4 { margin: 0; }

.modal-box .modal-body { padding: 3rem 3rem; }


.modal-overlay {
  opacity: 0;
  filter: alpha(opacity=0);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 900;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4) !important;
}

a.close {
  line-height: 1;
  font-size: 2.5rem;
  position: absolute;
  top: 5%;
  right: 2%;
  text-decoration: none;
  color: #fff;
}

a.close:hover {
  color: #eee;
  -webkit-transition: color 1s ease;
  -moz-transition: color 1s ease;
  transition: color 1s ease;
}

@media only screen and (max-width: 992px) {

    .modal-box { width: 80%;
        position: absolute;
        background: #C88F00;
        display: none;
        z-index: 1000;
    }
    

}





















/* HOME NEWS GRID */
.home-articles-wrapp {
    padding: 60px 0 80px 0;
}
.home-articles-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 35px;
}

.home-articles-grid .article-image {
    width: 100%;
    padding-bottom: 90%;
    height: 0;
    margin-bottom: 2rem;
    border-radius: 10px;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}
.home-articles-grid div .article-image .image-holder {
    background-size: cover;
    background-position: center center;
    width: 100%;
    padding-bottom: 100%;
    transition: all 1s;
}
.home-articles-grid div:hover .article-image .image-holder {
    transform: scale(1.16);
}

.home-articles-grid .article-image-guide {
    width: 100%;
    padding-bottom: 60%;
    height: 0;
    margin-bottom: 2rem;
    border-radius: 10px;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}
.home-articles-grid div .article-image-guide .image-holder {
    background-size: cover;
    background-position: center center;
    width: 100%;
    padding-bottom: 100%;
    transition: all 1s;
}
.home-articles-grid div:hover .article-image-guide .image-holder {
    transform: scale(1.16);
}

.home-articles-grid div h3 {
    color:#464646;
}

.home-articles-grid div p {
    color:#464646;
}

.home-articles-grid .article-read a {
    color:#878787;
    font-size: 1.4rem;
    font-weight: 900;
}

.home-articles-grid .article-read a img {
    vertical-align: middle;
    width: 3rem;
}



@media only screen and (max-width: 768px) {

    .home-articles-grid {
        grid-template-columns: 1fr 1fr;
        row-gap: 85px;
    }

}

@media only screen and (max-width: 480px) {

    .home-articles-grid {
        grid-template-columns: 1fr;
        row-gap: 85px;
    }

}



/* ARTICLE PAGE */
.article-page-title img {
    margin: 60px 0 60px 0;
}
.article-page-title img {
    vertical-align: middle;
    width: 5.5rem;
}


.article-page-grid {
    display: grid;
    grid-template-columns: 4fr 2fr;
    gap: 80px;
}


/* ARTICLE */
.article-page-grid article {
    overflow: auto;
    padding-bottom: 4rem;
}
.article-page-grid article .main-image img {
    width: 100%;
}
.article-page-grid article p {
    margin-bottom: 1.7rem;
}
.article-page-grid article pre {
    margin-bottom: 1.7rem;
}





/* ARTICLES SIDEBAR */
.page-articles-wrapp {
    padding: 60px 0 80px 0;
}
.page-articles-grid {
    display: grid;
    grid-template: 1fr;
    align-content: start;
    gap: 60px;
    padding-bottom: 60px;
}

.page-articles-grid div {
    border-bottom: 3px solid #fff;
    padding: 35px;
    box-sizing: border-box;
}

.page-articles-grid div:last-child {
    border-bottom: none;
}

.page-articles-grid .article-image {
    width: 100%;
    max-width: 100%;
    padding: 0 0 90% 0;
    height: 0;
    margin-bottom: 2rem;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}
.page-articles-grid div .article-image .image-holder {
    background-size: cover;
    background-position: center center;
    width: 100%;
    padding-bottom: 100%;
    transition: all 1s;
}
.page-articles-grid div:hover .article-image .image-holder {
    transform: scale(1.16);
}

.page-articles-grid .article-image-guide {
    width: 100%;
    padding: 0 0 60% 0;
    height: 0;
    margin-bottom: 2rem;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    overflow: hidden;
    position: relative;
}
.page-articles-grid div .article-image-guide .image-holder {
    background-size: cover;
    background-position: center center;
    width: 100%;
    padding-bottom: 100%;
    transition: all 1s;
}
.page-articles-grid div:hover .article-image-guide .image-holder {
    transform: scale(1.16);
}

.page-articles-grid div h3 {
    color:#464646;
}

.page-articles-grid div p {
    color:#464646;
}

.page-articles-grid .article-read a {
    color:#878787;
    font-size: 1.4rem;
    font-weight: 900;
}

.page-articles-grid .article-read a img {
    vertical-align: middle;
    width: 3rem;
}


@media only screen and (max-width: 1200px) {

    .article-page-grid {
        display: grid;
        grid-template-columns: 5fr 3fr;
        gap: 40px;
    }

}

@media only screen and (max-width: 920px) {

    .article-page-grid {
        display: grid;
        grid-template-columns: 1fr;
        row-gap: 85px;
    }

    .page-articles-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }

    .page-articles-grid div {
        border-bottom: none;
        padding: 15px;
    } 

}

@media only screen and (max-width: 550px) {

    .page-articles-grid {
        display: grid;
        grid-template-columns: 1fr;
        row-gap: 80px;
    }

    .page-articles-grid div {
        border-bottom: 3px solid #fff;
        padding: 30px;
    } 

}



/* REFERENCE PAGE */

/* BREADCRUMBS */
.ref-page-bread {
    margin: 28px 0 0 0;
    border-bottom: 1px solid #B5B5B5;
    padding-bottom: 28px;
}
.ref-page-bread h4, .ref-page-bread p {
    display: inline-block;

}
.ref-page-bread img {
    vertical-align: middle;
}

/* REFERENCE GRID */
.ref-page-grid {
    display: grid;
    grid-template-columns: 1fr 2fr 1fr;
    gap: 35px;
}

/* REFERENCE ARTICLE */

.ref-page-grid article {
    padding: 46px 0 60px 0;
}
.ref-page-grid article h3 {
    font-size: 3rem;
    margin-bottom: 4.4rem;
    color: #2640AB;
}
.ref-page-grid article h4 {
    font-size: 2.4rem;
    margin-bottom: 3.5rem;
    text-transform: uppercase;
}
.ref-page-grid article table {
    margin-bottom: 2.8rem;
    width: 100%;
}
.ref-page-grid article table tr {
    width: auto;
}
.ref-page-grid article table tr td {
    width: auto;
    vertical-align: top;
    padding: 1rem 0;
}
.ref-page-grid article table tr:first-child td {
    font-style: italic;
    padding: 1rem 0.8rem;
    background-color: #f1f1f1;
}
.ref-page-grid article table tr td:first-child {
    padding-right: 2rem;
}

@media only screen and (max-width: 920px) {
    .ref-page-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .ref-page-grid article {
        padding: 0px 0 60px 0;
    }
}


/* RIGHT VERTICAL nav */


.ref-page-grid .ref-right-menu {
    display: block;
    padding-top: 46px;
    border-left: 1px solid #B5B5B5;
}
.ref-page-grid .ref-right-menu-mobile {
    display: none;
}

.ref-page-grid .ref-right-menu h5 {
    font-weight: 400 !important;
    padding-left: 28px;
    margin-bottom: 4rem;
}
.ref-page-grid .ref-right-menu ul {
    list-style: none;
    margin: 0;
    padding-left: 28px;
}
.ref-page-grid .ref-right-menu ul li {
    margin-bottom: 2.2rem;
}
.ref-page-grid .ref-right-menu ul li a {
    font-size: 1.7rem;
    color: #2640AB;
}
.ref-page-grid .ref-right-menu ul li a:hover {
    color: #7d97ff;
}


@media only screen and (max-width: 920px) {
    .ref-page-grid .ref-right-menu {
        display: none;
    }

    .ref-page-grid .ref-right-menu-mobile {
        display: block;
        padding-bottom: 35px;
        border-bottom: 1px solid #B5B5B5;
    }
    .ref-page-grid .ref-right-menu-mobile h3 {
        font-weight: 400 !important;
    }
    .ref-page-grid .ref-right-menu-mobile ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    .ref-page-grid .ref-right-menu-mobile ul li {
        margin-bottom: 2.2rem;
    }
    .ref-page-grid .ref-right-menu-mobile ul li a {
        font-size: 1.8rem;
        color: #2640AB;
    }
    .ref-page-grid .ref-right-menu-mobile ul li a:hover {
        color: #7d97ff;
    }
}



/* LEFT VERTICAL nav */
.ref-page-grid ul { list-style: none; }

#menu-wrapper {
    overflow: hidden;
    max-width: 100%;
    cursor: pointer;
}


#menu-wrapper #hamburger-menu {
    display: none;
}

#menu-container {
    border-right: 1px solid #B5B5B5;
    padding-right: 20px;
    padding-bottom: 60px;
}
#menu-container .menu-list .menu-submenu {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
}
#menu-container .menu-list {
    display: block;
    position: relative;
    width: 100%;
    max-width: 100%;
    background: white;
    box-shadow: none;
    z-index: 999;
    overflow-y: auto;
    overflow-x: hidden;
    left: 0;
    padding: 26px 0 0 0;
    margin: 0;
}

#menu-container .menu-list li.accordion-toggle, #menu-container .menu-list .menu-login, #menu-container .menu-list .no-toggle {
    font-size: 1.7rem;
    padding: 20px 31px 20px 0;
    text-transform: uppercase;
}
#menu-container .menu-list li:first-of-type {
    border-top: 0;
}

.ref-page-grid .accordion-toggle, .ref-page-grid .accordion-content {
    cursor: pointer;
    font-size: 1.7rem;
    position: relative;
}
.ref-page-grid .accordion-toggle a, .ref-page-grid .no-toggle a {
    color: #464646;
    font-weight: 700;
}
.ref-page-grid .accordion-toggle a:hover, .ref-page-grid .no-toggle a:hover {
    color: #888888;
    font-weight: 700;
}
.ref-page-grid .accordion-content {
    display: none;
}
.ref-page-grid .accordion-content li {
    margin-bottom: 2.2rem;
}
.ref-page-grid .accordion-content li a {
    color: #2640AB;
}
.ref-page-grid .accordion-content li a:hover {
    color: #7d97ff;
}

.ref-page-grid .accordion-toggle a:before, .ref-page-grid .accordion-toggle a:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 17px;
    width: 10px;
    height: 1px;
    margin-top: -1px;
    background-color: #464646;
    transform-origin: 50% 50%;
    transition: all 0.3s ease-out;
    transform: rotate(45deg);
}

.ref-page-grid .accordion-toggle a:before {
    transform: rotate(-45deg);
    opacity: 1;
    z-index: 2;
    right: 10px;
}

.ref-page-grid .accordion-toggle.active-tab {
  transition: all 0.3s ease;
}
.ref-page-grid .accordion-toggle a.active:before {
    transform: rotate(45deg);
    background: #464646 !important;
}

.ref-page-grid .accordion-toggle a.active:after {
    transform: rotate(-45deg);
    background: #464646 !important;
    opacity: 1;
}

@media only screen and (min-width: 920px) {
    /* fix left position */ 
    #menu-container .menu-list {
        left: 0 !important;
    }
}

@media only screen and (max-width: 920px) {

    #menu-container {
        border-right: none;
        padding:0;
    }

    #menu-wrapper {
        overflow: hidden;
        max-width: 100%;
        cursor: pointer;
        display: inline-block;
        vertical-align: middle;
    }
    
    
    #menu-wrapper #hamburger-menu {
        position: relative;
        width: 25px;
        height: 20px;
        margin: 5px 30px 15px 0;
        display: block;
    }
    
    #menu-wrapper #hamburger-menu span {
        opacity: 1;
        left: 0;
        display: block;
        width: 100%;
        height: 2px;
        border-radius: 10px;
        color: black;
        background-color: #464646;
        position: absolute;
        transform: rotate(0deg);
        transition: .4s ease-in-out;
    }
    
    #menu-wrapper #hamburger-menu span:nth-child(1) {
        top: 0;
    }
    #menu-wrapper #hamburger-menu span:nth-child(2) {
        top: 9px;
    }
    #menu-wrapper #hamburger-menu span:nth-child(3) {
        top: 18px;
    }
    #menu-wrapper #hamburger-menu.open span:nth-child(1) {
        transform: translateY(9px) rotate(135deg);
    }
    #menu-wrapper #hamburger-menu.open span:nth-child(2) {
        opacity: 0;
        transform: translateX(-60px);
    }
    #menu-wrapper #hamburger-menu.open span:nth-child(3) {
        transform: translateY(-9px) rotate(-135deg);
    }
    
    #menu-container .menu-list .menu-submenu {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    #menu-container .menu-list {
        display: block;
        position: absolute;
        width: 100%;
        max-width: 490px;
        background: white;
        box-shadow: rgba(100,100,100,0.15) 2px 2px 10px;
        z-index: 999;
        overflow-y: auto;
        overflow-x: hidden;
        left: -100%;
        padding: 20px;
        box-sizing: border-box;
    }
    
    #menu-container .menu-list li:first-of-type {
        border-top: 0;
    }
    
    .ref-page-grid .accordion-toggle, .ref-page-grid .accordion-content {
        cursor: pointer;
        font-size: 1.7rem;
        position: relative;
    }
    
    .ref-page-grid .accordion-content {
        display: none;
    }

    .ref-page-grid .accordion-toggle a:after {
        right: 27px;

    }
    
    .ref-page-grid .accordion-toggle a:before {

        right: 20px;
    }
    
    

}



