:root{
    --grd:linear-gradient(to right,#5A7DB8 0%,#6C63C9 50%,#8E44AD 100%);

    --tan:#30c3f0;
    --men:#a820b2;
    --spo:#103288;
    --mas:#3065ea;
}

body {
    padding-top:4.167vw;
}

h1.component-heading,
h2.component-heading {
    font-family:'Inter';
    text-transform:uppercase;
    letter-spacing:0;
    font-size:42px;
    position:relative;
}

.box > h1.component-heading::after,
.box > h2.component-heading::after {
    content:"";
    display:block;
    position:absolute;
    left:0;
    bottom:-20px;
    width:60px;
    height:5px;
    background:var(--grd);
}

@media only screen and (min-width:1324px) {

    h1.component-heading,
    h2.component-heading {
        font-size:2.188vw;
    }

    .box > h1.component-heading::after,
    .box > h2.component-heading::after {
        width:3.125vw;
        height:0.26vw;
        bottom:-1vw;
    }
}

@media only screen and (max-width:639px) {
    h1.component-heading,
    h2.component-heading {
        font-size:32px;
    }
}

@media only screen and (max-width:479px) {
    h1.component-heading,
    h2.component-heading {
        font-size:24px;
    }
}

.box.smalltitle h1.component-heading,
.box.smalltitle h2.component-heading {
    font-size:inherit;
    text-transform:uppercase;
    margin-bottom:0;
    opacity:0.5;
}

.box.smalltitle h1.component-heading::after,
.box.smalltitle h2.component-heading::after {
    display:none;
}

/* pad */

.pad {
    padding-top:var(--pad_mob);
    padding-bottom:var(--pad_mob);
}

@media only screen and (min-width:1324px) {
    .pad {
        padding-top:var(--pad);
        padding-bottom:var(--pad);
    }
}

/* pad end */

/* table */

table {
    margin-top:0;
    margin-bottom:20px;
    border:none;
}

table th,
table td {
    background:none;
    border:none;
    padding-left:0;
    padding-right:32px;
    padding-top:5px;
    padding-bottom:5px;
}

table th {
    color:var(--pri);
    opacity:0.5;
    text-align:left;
}

table td {
    font-weight:bold;
}

table td a {
    color:inherit;
}

table td a span {
    display:inline-block;
    padding:5px 20px;
    font-size:14px;
    text-transform:uppercase;
    background-color:var(--pri);
    color:#ffffff;
    transition:0.5s;
    white-space:nowrap;
}

table td a span:hover {
    opacity:0.5;
}

table td a span.men {
    background-color:var(--men);
}

table td a span.spo {
    background-color:var(--spo);
}

table td a span.tan {
    background-color:var(--tan);
}

table td a span.mas {
    background-color:var(--mas);
}

table td h1,
table td h2,
table td h3,
table td h4,
table td h5,
table td h6 {
    margin:0 !important;
}

table td h1 a,
table td h2 a,
table td h3 a,
table td h4 a,
table td h5 a,
table td h6 a {
    text-decoration:none !important;
}

table.menu {

}

table.menu th, table.menu td {
    padding-right:var(--pad_mob);
}

table.menu tr td img {
    max-width:none !important;
    margin-right:10px !important;
    position:relative;
    top:5px;
    width:revert-layer;
}

table.menu h4 {
    padding-left:46px;
}

@media only screen and (min-width:1324px) {
    table {
        margin-bottom:1vw;
    }

    table th,
    table td {
        padding-top:0.25vw;
        padding-bottom:0.25vw;
        padding-right:1.667vw;
    }

    table td {
        font-size:1.25vw;
    }

    table td a span {
        padding:0.25vw 1vw;
        font-size:0.729vw;
    }

    table.menu th, table.menu td {
        padding-right:var(--pad);
    }

    table.menu tr td img {
        margin-right:0.5vw !important;
        top:0.25vw;
    }

    table.menu h4 {
        padding-left:2.396vw;
    }

}

@media only screen and (max-width:993px) {
    table.menu,
    table.menu thead,
    table.menu tbody,
    table.menu tr,
    table.menu th,
    table.menu td {
        display:block;
    }

    table.menu img {
        display:inline !important;
    }
}

@media only screen and (max-width:639px) {
    table th,
    table td {
        font-size:20px;
    }
}

@media only screen and (max-width:479px) {
    table td h1,
    table td h2,
    table td h3,
    table td h4,
    table td h5,
    table td h6 {
        margin-top:7px !important;
    }
}

/* table end */

/* header */

header {
    background-color:#ffffff;
    height:4.167vw;
}

header::before {
    display:none;
}

body.scrolled header {
    height:4.167vw;
}

div#logo h1,
div#logo h2 {
    display:flex;
    align-items:center;
}

div#logo a,
body.menuopen div#logo a,
body.scrolled div#logo a {
    background-image:url('../gfx/logo_2k.svg');
    width:7.865vw;
}

div#logo a.logo_mob,
body.menuopen div#logo a.logo_mob,
body.scrolled div#logo a.logo_mob {
    background-image:url('../gfx/logo_mob.svg');
    width:4.01vw;
}

div#logo #logo-sep {
    height:1.563vw;
    width:1px;
    margin-left:1vw;
    margin-right:1vw;
    background-color:var(--pri);
}

.header-controls {
    margin-left:32px;
}

.header-controls h2.component-heading {
    width:24px;
    height:24px;
    background-size:contain;
}

.header-controls .part-globalsearch h2.component-heading {
    background-image: url('../gfx/controls_search.svg');
}

body.menuopen .header-controls {
    opacity:1;
    pointer-events:auto;
}

h2#main-menu-control {
    display:none;
}

h2#main-menu-control span {
    background-color:var(--pri);
}

#main-menu-wrap {
    pointer-events:auto;
    overflow:visible;
}

body.menuopen #main-menu-wrap {
    height:auto;
}

@media only screen and (min-width:1324px) {
    .header-controls {
        flex-grow:0;
        margin-left:32px;
    }

    .header-controls h2.component-heading {
        width:1.25vw;
        height:1.25vw;
    }

    #main-menu-wrap {
        position:static;
        display:block !important;
        background:none;
        width:auto;
        height:auto;
        flex-grow:1;
        padding-top:0;
        opacity:1;
    }
}

@media only screen and (max-width:1323px) {
    header,
    body.scrolled header {
        height:80px;
    }

    div#logo a {
        width:151px;
    }

    div#logo a.logo_mob {
        width:120px;
    }

    div#logo a,
    body.menuopen div#logo a,
    body.scrolled div#logo a {
        width:151px;
    }

    div#logo a.logo_mob,
    body.menuopen div#logo a.logo_mob,
    body.scrolled div#logo a.logo_mob {
        width:120px;
    }

    div#logo #logo-sep {
        height:30px;
        margin-left:20px;
        margin-right:20px;
    }

    h2#main-menu-control {
        display:block;
    }

    body.menuopen h2#main-menu-control span:nth-child(1) {
        transform:rotate(-45deg) translatex(-47%);
    }

    body.menuopen h2#main-menu-control span:nth-child(3) {
        transform:rotate(45deg) translatex(-47%);
    }

    #main-menu-wrap {
        top:80px;
        background-image:none;
        padding-top:0;
        pointer-events:none;
        height:0;
    }

    body.menuopen #main-menu-wrap {
        height:calc(100% - 80px);
        pointer-events:auto;
    }

}

@media only screen and (max-width:639px) {
    div#logo a,
    body.menuopen div#logo a,
    body.scrolled div#logo a {
        width:100px;
    }

    div#logo a.logo_mob,
    body.menuopen div#logo a.logo_mob,
    body.scrolled div#logo a.logo_mob {
        width:80px;
    }

    div#logo #logo-sep {
        margin-left:10px;
        margin-right:10px;
    }
}

@media only screen and (max-width:479px) {
    .header-controls {
        margin-left:0;
    }
}

/* header end */

/* globalsearch */

body.showSearch .header-controls div.part-globalsearch .component-body {
    height:80px;
    top:-4px;
}

@media only screen and (min-width:1324px) {
    body.showSearch .header-controls div.part-globalsearch .component-body {
        height:4.167vw;
        top:-1.458vw;
    }
}

/* globalsearch end */

/* slider mod */

.part-slider_extra {
    aspect-ratio:80 / 24 !important;
}

.part-slider_extra .sli-cnt-bg .sli-cnt-img {
    display:none;
}

.part-slider_extra .component-body {
    overflow:hidden;
}

.part-slider_extra h2.component-heading {
    position:static;
}

.part-slider_extra h2.component-heading::before {
    top:-200% !important;
    left:-45% !important;
    width:100% !important;
    height:100vw !important;
    transform:rotate(-53.5deg) !important;
}

.part-slider_extra::after {
    display:none !important;
}

.part-slider_extra .sli-cnt-txt {
    height:auto !important;
}



.part-slider_extra .sli-cnt-bg .sli-cnt-img {
    margin-left:auto;
    margin-right:auto;
    width:var(--pw);
}

.part-slider_extra .sli-cnt-bg .sli-cnt-imgb {
    width:7.813vw;
    aspect-ratio:1 / 1;
    background-size:contain;
    background-position:center !important;
}

.part-slider_extra .sli-cnt-bg .sli-cnt-txt {
    padding-right:33vw;
}

@media only screen and (max-width:1323px) {
    .part-slider_extra .sli-cnt-bg .sli-cnt-img {
        width:960px;
    }

    .part-slider_extra .sli-cnt-bg .sli-cnt-imgb {
        width:150px;
    }

    .part-slider_extra .sli-cnt-bg .sli-cnt-txt {
        padding-right:480px;
    }

    .part-slider_extra h2.component-heading {
        font-size:36px !important;
        margin-bottom:10px !important;
    }

    .part-slider_extra .sli-cnt-but a {
        margin-top:10px !important;
    }
}

@media only screen and (max-width:993px) {
    .part-slider_extra .sli-cnt-bg .sli-cnt-img {
        width:624px;
    }

    .part-slider_extra .sli-cnt-bg .sli-cnt-imgb {
        width:90px;
    }

    .part-slider_extra .sli-cnt-bg .sli-cnt-txt {
        padding-right:0;
    }
}

@media only screen and (max-width:639px) {
    .part-slider_extra .sli-cnt-bg .sli-cnt-img {
        display:none;
    }

    .part-slider_extra h2.component-heading::before {
        left:-15% !important;
    }
}

@media only screen and (max-width:479px) {
    .part-slider_extra h2.component-heading {
        font-size:24px !important;
        margin-bottom:0 !important;
    }
}

body.inner.index.com_content .part-slider_extra {
    aspect-ratio:80 / 39 !important;
}

body.inner.index.com_content .part-slider_extra h2.component-heading::before {
    display:none !important;
}

body.inner.index.com_content .part-slider_extra .sli-cnt-bg .sli-cnt-img {
    display:block;
}

@media only screen and (max-width:639px) {
    body.inner.index.com_content .part-slider_extra .sli-cnt-bg .sli-cnt-img {
        display:none;
    }

}

/* slider mod end */

/* news mod */

div.part-newsbox_with_image.news {
    background:none !important;
}

.part-newsbox_with_image.news h2.component-heading {
    color:var(--pri) !important;
}

.part-newsbox_with_image.news .item > h3 {
    color:var(--pri) !important;
    font-family:inherit;
    font-size:inherit;
    font-weight:normal;
    letter-spacing:0;
    line-height:inherit;
}

.part-newsbox_with_image.news .item > h3 a {
    color:var(--pri) !important;
}

.part-newsbox_with_image.news .next-btn a {
    color:var(--sec) !important;
}

@media only screen and (max-width:1323px) {
    .part-newsbox_with_image.news .item > h3 {
        font-size:inherit !important;
    }
}

/* news mod end */

/* content mod */

div.part-content {
    /* padding-top:0 !important; */
}

body.com_content div.main-content#content {
    /* padding-top:var(--pad); */
}

div.part-content .img-wrap {
    top:4.167vw !important;
}

div.part-content .article-lead {
    display:none;
}

div.part-content p {
    line-height:2em;
    margin-bottom:1em;
}

@media only screen and (max-width:1323px) {
    body.com_content div.main-content#content {
        /* padding-top:var(--pad_mob); */
    }
    
    div.part-content .img-wrap {
        top:80px !important;
    }
}


/* content mod end */

/* showmenu mod */

@media only screen and (max-width:639px) {
    .part-showmenu.socials {
        float:none !important;
    }
}

/* showmenu mod end */

/* footer */

footer .footer-col-2k {
    width: calc(50% - 1.25vw);
}

footer .footer-col-2k p {
    display:flex;
    align-items:center;
}

@media only screen and (max-width:1323px) {
    body {
        padding-top:80px;
    }

    footer .footer-col-2k {
        width: calc(50% - 24px);
    }

}

@media only screen and (max-width:639px) {
    footer .footer-col-2k.fc1 {
        margin-bottom:var(--pad_mob);
    }
    
    footer .footer-col-2k {
        width:auto;
    }
}

/* footer end */