body {
    padding-top: 56px;
    overflow-x : hidden;
}

.smallImage {
    width: 50%;  
    height: auto; 
}
  
.dataframe {
    font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
    width: 100%;
    border-collapse: collapse;
    padding: 3vh 6vw;
    margin: 3vh 1vw;
    line-height: 1.4;
    font-weight: 200;
    font-size: 1.1vw;
}

.dataframe td,
.dataframe th {
  font-size: 15px !important;
  border: 1px solid black;
  padding: 3px 7px 2px 7px;
}

.dataframe td > em,
.dataframe th > em,
.dataframe td > em > i,
.dataframe th > em > i,
.dataframe td > i,
.dataframe th > i,
.dataframe td > a > em > i,
.dataframe td > a > em {
  font-size: 15px !important;
}

.dataframe th {
  font-size: 1.1em;
  text-align: left;
  padding-top: 5px;
  padding-bottom: 4px;
  /* background-color: black; */
  color: #ffffff;
}

.dataframe td > a {
  text-decoration: underline;
}


.left-aligned {
    margin-left: auto;
}

.bg-dark {
    background-color: #343a40 !important;
}

.bg-hero {
    background-color: #45b06cff;
}

/* CALLOUT */
.bd-callout {
    padding          : 1.25rem;
    margin-top       : 1.25rem;
    margin-bottom    : 1.25rem;
    border           : 1px solid #e9ecef;
    border-left-width: .25rem;
    border-radius    : .25rem
}

.bd-callout h4 {
    margin-bottom: .25rem
}

.bd-callout p:last-child {
    margin-bottom: 0
}

.bd-callout code {
    border-radius: .25rem
}

.bd-callout+.bd-callout {
    margin-top: -.25rem
}

.bd-callout-info {
    border-left-color: #5bc0de
}

.bd-callout-warning {
    border-left-color: #f0ad4e
}

.bd-callout-danger {
    border-left-color: #d9534f
}

/* footer */
footer a {
    color          : white;
    font-weight    : bold;
    text-decoration: none;
}

footer a:hover {
    color          : white;
    text-decoration: underline;
}

/* common */
.bar {
    width           : 10px;
    height          : auto;
    background-color: #f39800;
    padding         : 30px 0 30px 0;
}


/* timeline */
.timeline {
    padding : 50px 0;
    position: relative;
}

.timeline::before {
    content    : "";
    display    : block;
    position   : absolute;
    top        : 0;
    left       : 50%;
    width      : 0;
    border-left: 2px dashed black;
    height     : 100%;
    transform  : translateX(-50%);
    z-index    : -1;
}

.timeline-nodes:nth-child(even) {
    flex-direction: row-reverse;
}

.timeline-nodes {
    padding-bottom: 25px;
    position      : relative;
}

.timelineblock {
    background-color: #266f9c;
    padding         : 0px 40px 20px 40px;
    color           : white;
    border-radius   : 15px;
    width           : 100%;
    position        : relative;
    box-shadow      : 0 3px 6px rgb(0 0 0 / 40%);
}

.timeline .information {
    display        : flex;
    flex-direction : row;
    justify-content: space-between;
    align-items    : center;
    padding-top    : 1em;
    padding-right  : 0;
    padding-left   : 0;
}

.timeline .cutoff-text {
    width             : 100%;
    display           : -webkit-box;
    max-width         : 100%;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow          : hidden;
}

.timeline .readmore {
    background-color: #000000;
    justify-self    : center;
    align-self      : center;
    color           : white;
    text-transform  : uppercase;
    border-radius   : 10px;
    font-weight     : bold;
    padding         : 2px 15px 2px 15px;
    box-shadow      : 0 3px 6px rgba(0, 0, 0, 0.4);
    border          : none;
}

.timeline .numbered-milestone {
    position   : relative;
    color      : white;
    font-weight: bold;
    top        : -50%;
    right      : -45%;
}

/* team */
.team_card {
    position        : relative;
    display         : flex;
    min-height      : 350px;
    padding-top     : 3rem;
    margin          : 3rem 0;
    box-shadow      : 0 1rem 3rem rgba(0, 0, 0, .175);
    flex-direction  : column;
    min-width       : 0;
    word-wrap       : break-word;
    background-color: #1b263b;
    background-clip : border-box;
    border          : 1px solid rgba(0, 0, 0, .125);
    border-radius   : .25rem;
}

.team_card .portraits {
    position  : absolute;
    top       : -70px;
    left      : 0;
    width     : 100%;
    text-align: center;
}

.team_card .portraits img {
    width        : 140px;
    height       : 140px;
    margin       : auto;
    box-shadow   : 0 0.125rem 0.25rem rgb(0 0 0 / 8%);
    border-radius: 50%;
}

.team_card .text {
    padding: 4.5rem 1.5rem 1.5rem;
}

.team_card .name {
    font-size  : 1.25rem;
    line-height: 1.2;
    font-weight: 500;
    color      : #f39800;
    text-align : center;
}

.team_card .position {
    color        : #fff;
    text-align   : center;
    margin-bottom: 1rem;
}

.team_card .introduction {
    color: #fff;
}

/* anchor */
.anchor_div {
    margin  : 0 -1px 0 0px;
    width   : 20%;
    position: absolute;
    color   : white;
    height  : 88%;
}

.anchor_div .anchor {
    display        : flex;
    align-items    : flex-start;
    justify-content: flex-start;
    padding        : 5% 0%;
    height         : 100%;
}

.anchor_div .anchor_items {
    position        : sticky;
    z-index         : 100;
    background-color: #139b69;
    top             : 6rem;
    padding         : 1em;
    margin          : 1em;
    display         : flex;
    border-radius   : 5px/5px;
    flex-direction  : column;
}

.anchor_div .anchor_content p {
    scale     : 0.8;
    opacity   : 0.8;
    font-size : large;
    transition: 0.3s;
}

.anchor_div .anchor_content.list-group-item {
    position        : relative;
    display         : block;
    padding         : 0;
    color           : #fff;
    text-decoration : none;
    background-color: transparent;
    border          : 0;
    border-radius   : 0;
    border-bottom   : 2px solid white;
    margin-top      : 10px;
    padding-bottom  : 3px;
    text-align      : center;
    cursor          : pointer;
}

.anchor_div .anchor_content.active p {
    scale  : 1;
    opacity: 1;
}

.anchor_scroll_box {
    padding: 0 15%;
}

/* -----cus_accordion----- */
body {
    background: #63bcaa;
}

/* body{ filter: grayscale(100%); } */

.cus_accordion .accordion-item {
    margin-bottom: 10px;
    border       : 0;
}

.cus_accordion .accordion-button {
    border          : 0;
    outline         : none;
    box-shadow      : none;
    background-color: #266f9c;
    color           : white;
}

.cus_accordion .accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFFFFF'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.cus_accordion .accordion-body {
    border-left: 4px solid #f39800;
}

.team_card {
    padding-top     : 0;
    background-color: #fff;
}

.team_card:hover .text {
    display: block;
    opacity: 1;
}

.team_card .text {
    position  : absolute;
    top       : 0;
    bottom    : 0;
    background: rgba(27, 38, 59, .8);
    opacity   : 0;
    transition: opacity 0.5s ease-in-out;

}

.image-tofull-overview {
    width: 45%;
}

.home-circle {
    background    : #343a40;
    min-width     : 250px;
    width         : 250px;
    height        : 250px;
    border-radius : 50%;
    text-align    : center;
    margin        : 10px;
    padding-top   : 30px;
    padding       : 12px;
    padding-bottom: 50px;
    transition    : 0.2s;
}

.home-middle-col {
    display        : flex;
    justify-content: center;
    /* height      : 53%; */
    height         : 60%;
    left           : 50%;
    transform      : translateX(-50%);
    position       : absolute;
}

.scroll-container {
    width           : 15px;
    height          : 100%;
    border-radius   : 10px;
    /* background   : grey; */
}

.home-circle:hover {
    scale: 1.1;
}

.scroll-tracker {
    width           : 15px;
    height          : 0;
    border-radius   : 10px;
    /* background   : #2bb673; */
}

.c-homepage {
    position: relative;
}

.c-homepage-image {
    max-width  : 15%;
    max-height : 15%;
    position   : relative;
    top        : -3rem;
    left       : 50%;
    transform  : translateX(-50%);
    margin-left: 0.15rem;
}

.home-circle p {
    font-size: 75%;
}

.home-circle h3 {
    font-size: 110%;
}

/* .timeline::before {
    display: none;
} */

.active.fade-left {
    animation: fade-left 1s ease-in;
}

.treatment-point {
    display: flex;
    margin : 30px 0;
}

.treatment-image-left {
    width       : 10%;
    margin-right: 10px;
}

.home-treatment {
    margin-top: -175px;
}

.home-solution {
    margin-top: -150px;
}

.home-test-img {
    width           : 80%;
    height          : 150px;
    background-color: grey;
}

.selling-points {
    display: flex;
}

.selling-points-image {
    padding-right: 35px;
}

.home-selling-points {
    margin-top: -175px;
}

.sociallogos {
    display        : flex;
    direction      : row;
    justify-content: center;
}

.social-icon {
    padding: 4px;
}

.education-bottom-header {
    margin-top: -250px;
}

.bold {
    font-weight    : bold;
    color          : #f39800;
    text-decoration: none;
}

.reveal-circle {
    position: relative;
    opacity : 0;
}

.reveal-circle.active {
    opacity: 1;
}

.reveal {
    position: relative;
    opacity : 0;
}

.reveal.active {
    opacity: 1;
}

.active.fade-bottom {
    animation: fade-bottom 1s ease-in;
}

.active.fade-top {
    animation: fade-top 1s ease-in forwards;
}

.active.fade-left {
    animation: fade-left 1s ease-in;
}

.active.fade-right {
    animation: fade-right 1s ease-in;
}

@keyframes fade-bottom {
    0% {
        transform: translateY(50px);
        opacity  : 0;
    }

    100% {
        transform: translateY(0);
        opacity  : 1;
    }
}

@keyframes fade-top {
    0% {
        transform: translateY(-50px);
        opacity  : 0;
    }

    100% {
        transform: translateY(0);
        opacity  : 1;
    }
}

@keyframes fade-left {
    0% {
        transform: translateX(-100px);
        opacity  : 0;
    }

    100% {
        transform: translateX(0);
        opacity  : 1;
    }
}

@keyframes fade-right {
    0% {
        transform: translateX(100px);
        opacity  : 0;
    }

    100% {
        transform: translateX(0);
        opacity  : 1;
    }
}

/* --导航 */
.img-list {
    margin    : 20px 10px;
    text-align: center;
}

.img-list img {
    width: 100%;
}

.img-list span {
    margin-top : 20px;
    display    : block;
    font-size  : 30px;
    color      : #326789;
    margin-left: -20px;
    font-weight: bold;
}

.foot-logo {
    margin   : 20% 0 10% 0;
    width    : 80%;
    max-width: 333px;
}

.con-bj {
    background: linear-gradient(#a4eee0, #d2efea);
}

.home_bj {
    background: url("https://static.igem.wiki/teams/4833/wiki/body-bj.png") center top no-repeat, linear-gradient(#a4eee0, #d2efea);
    background-size: 50% 100%;
    background-position: center -100px; /* 这里的50px可以替换为您希望的垂直位置 */
}

.foot-pic {
    display    : flex;
    flex-shrink: 0;
    width      : 100%;
}

.foot-pic a {
    box-sizing: border-box;
    overflow  : hidden;
    display   : inline-block;
    margin    : 10px;
}

.foot-pic a img {
    width: 100%;
}

.zzs-box {
    text-align: center;
    margin    : 60px 0;
}

.zzs-box img {
    width: 100%;
}

.logo-menu-box {
    box-sizing: border-box;
    width     : 100%;
}

.logo-menu-box .img-box {
    margin  : 20px 0;
    overflow: hidden;
}

.logo-menu-box .img-box img {
    width: 100%;
}

/* homeCloud */
.homeCloud {
    position: absolute;
    z-index : 20;
    top     : -16rem;
}

.homeCloud.left {
    left: 0;
}

.homeCloud.right {
    right: 0;
}

.homeCloud.left.active {
    transform : translateX(-140%);
    opacity   : 0;
    transition: transform 1s, opacity 1s;
}

.homeCloud.right.active {
    transform : translateX(140%);
    opacity   : 0;
    transition: transform 1s, opacity 1s;
}


/* @keyframes slip_out_l {
    from {
        transform:translateX(0);
        opacity  : 0;
    }

    to {
        transform:translateX(-140%);
        opacity  : 1;
    }
}
@keyframes slip_out_r {
    from {
        transform:translateX(0);
        opacity  : 0;
    }

    to {
        transform:translateX(140%);
        opacity  : 1;
    }
} */
.scroll-con-title {
    font-size     : 2.6rem;
    font-weight   : bold;
    color         : #266f9c;
    position      : relative;
}

.scroll-con-title::before {
    position     : absolute;
    content      : "";
    left         : -60px;
    width        : 40px;
    height       : 40px;
    display      : block;
    background   : #f39800;
    border-radius: 50%;
}

.font-1 {
    font-size: 1.8rem;
    color    : gray;
}

.font-2 {
    font-size  : 1.8rem;
    font-weight: bold;
}

.color-sec {
    color: #f39800;
}

.loading {
    position      : fixed;
    top           : 0;
    left          : 0;
    right         : 0;
    bottom        : 0;
    z-index       : 99999;
    text-align    : center;
    vertical-align: middle;
    align-items   : center;
    background    : #fff;
}

.loading img {
    margin   : 0 auto;
    max-width: 1280px;
    width    : 100%;
}

.home-gif-box {
    text-align: center;
}

.home-gif-box img {
    width : 100%;
    margin: 0 auto;
}

/* -------cus_accordion-  end--------- */

@media (max-width: 767px) {
    .anchor_div {
        display: none;
    }

    .anchor_scroll_box {
        padding: 0;
    }
}

.aav-image {
    width: 85%;
}

@media (max-width: 767px) {
    .timeline-nodes:nth-child(even) {
        flex-direction: row;
    }

    .home-middle-col {
        left: 8%;
    }

    .c_homepage_box {
        position : absolute;
        left     : 8%;
        transform: translateX(-50%);
    }

    .c-homepage-image {
        max-width  : 28%;
        max-height : 28%;
        margin-left: 0;
    }

    .home-treatment {
        margin-top: 0;
    }

    .home-selling-points {
        margin-top: 0;
    }

    .home-middle-col {
        height: 46%;
    }
}

.hover-goals {
    transition: 0.2s;
    cursor    : pointer;
}


.subtitle-unselected {
    opacity   : 0.5;
    cursor    : pointer;
    scale     : 0.8;
    transition: 0.3s;
}

.subtitle-unselected:hover {
    opacity: 1;
    scale  : 1;
}

.home_bg {
    background     : url("https://static.igem.wiki/teams/4833/wiki/home-head-bg.jpg") no-repeat center;
    background-size: cover;
}

.line {
    margin-top: 100px;
}

.m-bg {
    background-color: #266f9c !important;
}

.banner_bj .banner {
    opacity  : 1;
    animation: fade-right 1s ease-in;
}

.team_bj {
    background     : url("https://static.igem.wiki/teams/4833/wiki/TEAM.jpg") no-repeat center;
    background-size: cover;
}

.m_big_title {
    font-size  : 3rem;
    color      : #326789;
    font-weight: bold;
    text-align : center;
    position   : absolute;
    bottom     : 4vh;
    left       : 0;
    right      : 0;
}


#btn-back-to-top {
    position        : fixed;
    z-index         : 22;
    bottom          : 70px;
    right           : 70px;
    display         : none;
    transition      : 0.3s;
    background-color: #326789;
    color           : white;
    width           : 35px;
    height          : 35px;
    padding         : 0;
}

#btn-back-to-top svg {
    vertical-align: 0px;
}





.img_border {
    padding      : 20px;
    margin-bottom: 20px;
}

.img_border div {
    position: relative;
}

.img_border div img {
    width: 100%;
}

.img_border div::before,
.img_border div::after {
    content   : "";
    position  : absolute;
    width     : 20%;
    height    : 20%;
    transition: .3s ease-in-out;
}

.img_border div::before {
    top        : -10px;
    left       : -10px;
    border-top : 3px solid #fabc3ce5;
    border-left: 3px solid #fabc3ce5;
}

.img_border div::after {
    right        : -10px;
    bottom       : -10px;
    border-bottom: 3px solid #fabc3ce5;
    border-right : 3px solid #fabc3ce5;
}

.img_border div:hover::before,
.img_border div:hover::after {
    width : calc(100% + 20px);
    height: calc(100% + 18px);
}

.readmore {
    background-color: #000000;
    justify-self    : center;
    align-self      : center;
    color           : white;
    text-transform  : uppercase;
    border-radius   : 10px;
    font-weight     : bold;
    padding         : 2px 15px 2px 15px;
    box-shadow      : 0 3px 6px rgba(0, 0, 0, 0.4);
    border          : none;
}

.cus_modal {
    display         : none;
    position        : fixed;
    top             : 50%;
    left            : 50%;
    width           : 90%;
    max-width       : 900px;
    height          : 400px;
    border-radius   : 10px;
    background-color: #343a40;
    /* background   : url("https://static.igem.wiki/teams/4833/wiki/modal_bg.png") no-repeat center;
    background-size : cover; */
    transform       : translate(-50%, -50%);
    z-index         : 1;
}
.cus_modal.bg_img{
    background-color: #fff;
}
.cus_modal.bg_img:before {
    content        : "";
    position       : absolute;
    top            : 0;
    left           : 0;
    width          : 100%;
    height         : 100%;
    border-radius  : 10px;
    background     : url("https://static.igem.wiki/teams/4833/wiki/modal_bg.png") no-repeat center;
    background-size: cover;
    z-index        : -1;
    /*-1 可以当背景*/
    opacity        : 0.3
}

.cus_modal_close {
    position: absolute;
    top     : 2px;
    right   : 10px;
    width   : 20px;
    height  : 20px;
    color   : #fff;
    cursor  : pointer;
}

.cus_modal_body {
    padding: 2rem;
    height : 100%;
}

.cus_modal.bg_img .cus_modal_close{
    color   : #000;
}

.cus_modal_scroll {
    height    : 100%;
    overflow-x: hidden;
    overflow-y: auto;
}

.cus_modal.show {
    display  : block;
    animation: bouncein1 .3s;
}

@keyframes bouncein1 {
    0% {
        opacity     : 0;
        /* transform: scale(0.3); */
    }

    100% {
        opacity     : 1;
        /* transform: scale(1); */
    }
}



/* 1010 */
.m_box {
    margin-top: 1.5rem;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    overflow: hidden;
}
.m_box .active::after,
.m_box h2{
    display: none;
}
.padding14{
    padding: 10px 14px;
}
.text-r{
    text-align: right;
}
.allm_boxPic.active::after{
    display: none !important;
}
.m_box .left_list, .allPic .right_list{
    box-sizing: border-box;
    padding: 10px;
}
.m_box .left_list img{
    width: 100%;
}
.m_box .right_list img{
    width: 100%;
}

.allText.active::after,
.allText h2::before{
    display: none !important;
}

.picText .active::after{
    display: none !important;
}
.picText{
    text-align: center;
}
.m_pic_box{
    padding: 10px;
    box-sizing: border-box;
}
.textCon .title{
    font-size: 2.1rem;
    color: goldenrod;
    font-weight: bold;
    margin-bottom: 2rem;
}
.textCon p{
    font-size: 1.2rem;
    line-height: 2rem;
    color: #46658d;
}

.color_orange{
    color: #f39800;
}
@media (max-width: 767px){
    .m_box{
        display: block;
    }
    .m_box .left_list{
        padding: 0;
    }
}

.bg_block {
    margin-bottom   : 30px;
    padding         : 20px;
    background-color: #dbdbae;
    box-shadow      : rgba(149, 157, 165, 0.4) 0px 8px 24px;
}