/********** 2026台灣因果推論研討會Taiwan Causal Inference Symposium(CI)**********/
/********** 未使用的部分**********/
@font-face {
font-family: 'NotoSansTC-Thin';
src: url("../Gfont/TC/NotoSansTC-Thin.otf")format("opentype");
}
@font-face {
font-family: 'NotoSansTC-Light';
src: url("../Gfont/TC/NotoSansTC-Light.otf")format("opentype");
}
@font-face {
font-family: 'NotoSansTC-Regular';
src: url("../Gfont/TC/NotoSansTC-Regular.otf")format("opentype");
}
@font-face {
font-family: 'NotoSansTC-Medium';
src: url("../Gfont/TC/NotoSansTC-Medium.otf")format("opentype");
}
@font-face {
font-family: 'NotoSansTC-Bold';
src: url("../Gfont/TC/NotoSansTC-Bold.otf")format("opentype");
}
@font-face {
font-family: 'NotoSansTC-Black';
src: url("../Gfont/TC/NotoSansTC-Black.otf")format("opentype");
}



.text-primary {
    color: #ffde73 !important;/*深粉紅*//*#ffeb02黃*/

}
.text-ltgreenblue {
    color: #4fd1c7 !important;/*淺綠藍*/
}

.text-yellow {
    color: #cb9913;/*鵝黃*/
}
.text-grayellow {
    color: #ffc159;/*灰黃*/
}
.text-purple {
    color: #433e76 !important;/*中深灰紫*/
}

.text-ltpurple {
    color: #cad1ee !important;/*淺灰紫*/
}
.text-ltgray {
    color: #d2d2d4 !important;/*淺灰*/
}
.text-grblue {
    color: #6487a1 !important;/*灰藍*/
}
.text-pink {
    color: #f5a6a6 !important;/*深粉紅*//*#ffeb02黃*/
}
.text-color {
  background: linear-gradient(90deg, #ff8fc7 0%, #ffe680 45%, #ffffff 75%, #5c93e5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}/*彩色漸層，粉紅、黃、白、天藍*/

.text-gold-gradient {
    background: linear-gradient(
        90deg,
        #aa771c 0%,
        #fcf6ba 45%,
        #bf953f 70%,
        #aa771c 100%
    );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}/*金色漸層*/


.text-m-small {
    font-size: 0.8em;
}
.text-small {
    font-size: 0.7em;
}
.text-smaller {
    font-size: 0.6em;
}
.text-Interbold700{
     font-family: 'Inter', sans-serif; font-weight: 700;
}

.btn-primary {
    background-color: #f9a6a5 !important;
    border-color: #f9a6a5;
} 
.btn-reg {
    background-color:#DBD26B;
    background: linear-gradient(337deg,rgba(219, 210, 107, 0.58) 0%, rgba(249, 166, 165, 0.91) 81%);
    border-color: #e5d69c91;
    font-weight: 700;
    transition: .5s;
    color: #3f0f44;
} 

.btn-activity{
   font-size: 1.1rem;
   font-weight: bold;
   text-decoration: none;
   color: #f0ecec;
    background-color: #7b528f;
    border-radius: 50rem !important;
    border: 1px solid #7b528f;
    padding: 5px 15px 5px 15px;
    display: inline;
}
.bg-gold{
    background: linear-gradient(105deg,rgba(73, 56, 62, 1) 0%, rgba(176, 131, 53, 1) 24%, rgba(252, 239, 186, 1) 42%, rgba(156, 129, 101, 1) 66%, rgba(73, 56, 62, 1) 82%, rgba(105, 86, 63, 1) 100%);
}
.bg-gold-2{
    background:linear-gradient(135deg, #bf953f, #fcf6ba, #b38728, #49383e, #aa771c);
}
.bg-gold-2{
    background:linear-gradient(90deg, #49383e 0%, #aa771c 25%, #fcf6ba 50%, #f4eebd 55%, #bf953f 80%, #49383e 100%);/*垂直角度(90deg)*/
}

.bg-purple {
    background-color: #755daf !important;
}  
.bg-secondary {
    background-color: #54a4ba !important; 
}   
.bg-dark {
    background-color: #4a436a !important;/*藍灰綠*/
}
.bg-gray {
    background-color: #8b8484 !important;
}
/*淺藍*/
.bg-miblue {
    background-color: #e5eaf9 !important;
}
/*淺粉紅*/
.bg-pink {
    background-color: #EEAECA !important;
}

.bg-lightgradient {
    --bs-bg-opacity: 1;
    background: radial-gradient(circle,rgba(238, 174, 202, 1) 27%, rgba(148, 222, 233, 1) 100%);
}
.bg-lightgradient-2 {
    --bs-bg-opacity: 1;
    background: linear-gradient(to top, #f8f9fa 70%, #6a555d 100%) !important;
}
.bg-darkgradient{
    background:linear-gradient(180deg,rgba(198, 131, 167, 1) 0%, rgba(187, 158, 187, 1) 11%, rgba(175, 186, 208, 1) 22%, rgba(240, 252, 255, 1) 49%, rgba(255, 255, 255, 1) 55%);
}

.border-primary {
    border-color: #e2ce46 !important;
}
.border-secondary {
    border-color: #7b528f !important;
}

.icon-red {
    color: #b66f6f; /* 灰暗紅 */
}
.icon-dkred {
    color: #b22222; /* 深紅 */
}

.icon-orange {
    color: #d2691e; /* 橘褐 */
}

.icon-yellow {
    color: #d4a017; /* 金黃 */
}

.icon-green {
    color: #2e8b57; /* 海綠 */
}

.icon-teal {
    color: #008080; /* 藍綠 */
}

.icon-blue {
    color: #1e6fd9; /* 藍色 */
}

.icon-navy {
    color: #26314e; /* 深藍 */
}

.icon-purple {
    color: #755daf; /* 紫色 */
}

.icon-pink {
    color: #d87093; /* 粉玫瑰 */
}

.icon-brown {
    color: #8b5e3c; /* 棕色 */
}

/**********  CSS **********/
body {
    background-color: #2f2d44;
}
a {
    color: #fddf0d;
}
a:hover {
    color: #d77c1e;
}
p {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

:root {
    --primary: #f9a6a5;/*粉紅*/  /*#ffeb02黃色*/
    --secondary: #FFF0E6; /*膚色*/
    --light: #F8F8F9;   /*淡灰藍色*/
    --dark: #001D23;    /*深灰藍色*/
    --ltpurple:#cad1ee;/*淺紫色*/
    --purple:#6a749bb5 ;/*中紫灰*/
    --dkpurple:#42324a ;/*紫深*/
    --seccess: #FF6F0F;  /*橘色*/
}

.back-to-top {
    position: fixed;
    display: none;
    right: 30px;
    bottom: 30px;
    z-index: 99;
}

.brand-title { 
    font-family: 'Saira', sans-serif;
    font-weight: 700;
    letter-spacing: .04em; 
    line-height: 1.2;
}

/*粗分隔線 中間*/
.section-divider { 
    width: 72px; 
    height: 3px; 
    margin: 0 auto 1.5rem; 
    background: #e1b131; 
    border-radius: 999px; 
}

/*** Spinner ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}


/*** Button ***/
.btn {
    font-weight: 500;
    transition: .5s;
}

.btn.btn-primary,
.btn.btn-outline-primary:hover {
    color: #5b509b;
}

.btn.btn-primary:hover {
    color: var(--primary);
    background: transparent;
}

.btn-square {
    width: 38px;
    height: 38px;
}

.btn-sm-square {
    width: 32px;
    height: 32px;
}

.btn-lg-square {
    width: 48px;
    height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}

/* ========================================
   TCIS Custom Buttons
   ======================================== */

/* Common button style */
.btn-tcis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 1.9em;
    padding: 0 0.75em;
    /*min-height: 1.85em;按鈕高度需連同字體大小一起設定*/
    /*padding: 0.05em 0.7em;按鈕高度需連同字體大小一起設定*/
    font-size: 0.95em;/*按鈕高度需連同字體大小一起設定*/
    font-weight: 600;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    border-radius: 50em;
    transition: all 0.2s ease;
}


/* Gold Gradient */
.btn-tcis-gold {
    color: #3f3040;
    border: 1px solid #7376a566;
    background: linear-gradient(
        105deg,
        #aa771c 0%,
        #bf953f 25%,
        #fcf6ba 50%,
        #bf953f 75%,
        #aa771c 100%
    );
}

.btn-tcis-gold:hover {
    color: #2f2d44;
    filter: brightness(1.08);
}


/* Purple */
.btn-tcis-purple {
    color: #ffffff;
    border: 1px solid #8d77bd;
    background: linear-gradient(
        135deg,
        #755daf 0%,
        #5c4b8d 100%
    );
}

.btn-tcis-purple:hover {
    color: #ffffff;
    filter: brightness(1.1);
}


/* Pink */
.btn-tcis-pink {
    color: #49383e;
    border: 1px solid #f9a6a5;
    background: linear-gradient(
        135deg,
        #f9a6a5 0%,
        #f4c4bd 100%
    );
}

.btn-tcis-pink:hover {
    color: #49383e;
    filter: brightness(1.05);
}



/*** Navbar ***/
.fixed-top {
    transition: .5s;
}

.top-bar {
    height: 25px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
    background: linear-gradient(
        135deg,
        #b08853 0%,   /* 左上角基調 */
        #dbdbdb 25%,  /* 暗面沉澱 */
        #ffffff 45%,  /* 強烈高光反射點 1 */
        #c19e6f 55%,  /* 中度暗面 */
        #957164 70%,  /* 次級高光反射點 2 */
        #4c3f48 100%  /* 右下角深色陰影 */
    );

}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    margin-left: 8px;
}

.navbar .navbar-nav .nav-link {
    margin-right: 30px;
    padding: 30px 0 10px; /*25px 0*/
    color: #FFFFFF;
    font-weight: 500;
    outline: none;
}

.navbar .navbar-nav .nav-link:hover {
  
}
.nav-link.active {
     border-bottom: 5px  solid #e2ce46;

}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--ltpurple);

}
.navbar{
    font-family: 'Noto Sans TC', sans-serif;
    background-color: #2c2c44e8;
    }

@media (max-width: 991.98px) {
    .navbar .navbar-nav {
        margin-top: 10px;
        border-top: 1px solid rgba(0, 0, 0, .07);
        background: var(--purple);
    }

    .navbar .navbar-nav .nav-link {
        padding: 10px 0;
        border-bottom: 2px #6e546e dotted;
    }
}

@media (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        visibility: hidden;
        top: 100%;
        transform: rotateX(-75deg);
        transform-origin: 0% 0%;
        transition: .5s;
        opacity: 0;
    }

    .navbar .nav-item:hover .dropdown-menu {
        transform: rotateX(0deg);
        visibility: visible;
        transition: .5s;
        opacity: 1;
    }
}


/*****2026新選單********/
 .nav-toggle {
            display: none;
        }
        .nav-toggle-btn {
            display: none;
            margin-left: auto;
            margin-right: 1rem;
            color: #fff;
            font-size: 1.5rem;
            line-height: 1;
            cursor: pointer;
            user-select: none;
        }
        @media (max-width: 991.98px) {
            .navbar {
                display: flex;
                align-items: center;
                flex-wrap: wrap;
                padding-top: .05rem;
                padding-bottom: .05rem;
            }
            .nav-toggle-btn {
                display: block;
            }
            .navbar-collapse {
                display: none !important;
                width: 100%;
                padding: 0px;
                background: rgb(226 163 162);
                text-align: center;
            }
            .nav-toggle:checked ~ .navbar-collapse {
                display: block !important;
            }
            .navbar-nav {
                display: block;
                padding: 0 !important;
            }
            .navbar-nav .nav-link {
                display: block;
                padding: .75rem 0;
            }
        }
        @media (min-width: 992px) {
            .navbar {
                display: flex;
                align-items: center;
            }
            .navbar-collapse {
                display: flex !important;
                flex-basis: auto;
            }
        }


/*** Header ***/
.carousel-caption {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: rgb(142 103 122 / 26%);  /*rgba(0, 29, 35, .6)*/
    z-index: 1;
    padding-bottom: 0.25rem;
}

.carousel-control-prev,
.carousel-control-next {
    width: 15%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 3rem;
    height: 3rem;
    background-color: var(--dark);
    border: 12px solid var(--dark);
    border-radius: 3rem;
}

.carousel-caption h1{
    font-family: 'Noto Sans TC', sans-serif;
    font-weight: 900;
    font-style: italic;
}

.carousel-caption h2{
     font-family: 'Saira', sans-serif;
    font-weight: 900;
}
.carousel-caption h3{
    font-family: 'Noto Sans TC','Saira', sans-serif;
    font-weight: 500;
    color: #FF6F0F;
}
/* 4. 大型桌上型電腦 (1200px 以上)：設定螢幕高度的 75% */
@media (min-width: 1200px) {
    #header-carousel .carousel-item img {
        height: 75vh; /* vh = viewport height */
    }
}

 /* 3. 筆記型電腦與平板 (768px 到 1199px)：設定固定高度 */
@media (min-width: 768px) and (max-width: 1199px) {
    #header-carousel .carousel-item img {
        height: 500px; /* 您可以依需求調整此固定數值 */
    }
}


/*平板尺寸*/
@media (max-width: 768px) {
    #header-carousel .carousel-item {
        position: relative;
        min-height: 480px;
    }
    
    #header-carousel .carousel-item img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .carousel-caption h3{
        font-size: 15pt;
    }
}

.page-header {
    padding-top: 12rem;
    padding-bottom: 6rem;
    background: linear-gradient(rgba(0, 29, 35, .8), rgba(0, 29, 35, .8)), url(../img/carousel-1.jpg) center center no-repeat;
    background-size: cover;
}

.page-header .breadcrumb-item+.breadcrumb-item::before {
    color: #999999;
}


/* 確保影片填滿滿版寬度，並透過 cover 屬性維持比例裁切不變形 */
#header-carousel .carousel-item video {
    width: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* 行動裝置預設高度 */
#header-carousel .carousel-item video {
    height: 450px;
}

/* 平板與標準筆記型電腦固定高度 */
@media (min-width: 768px) and (max-width: 1199px) {
    #header-carousel .carousel-item video {
        height: 500px;
    }
}

/* 桌上型電腦設定為瀏覽器可視高度的 75% */
@media (min-width: 1200px) {
    #header-carousel .carousel-item video {
        height: 75vh;
    }
}


/*** About ***/
.about {
    background-color: #1c1a1a;
}
.about p{
    font-size: 15pt;
    color: #FFFFFF;
}


/*** Causes ***/
.causes-item .progress {
    height: 5px;
    border-radius: 0;
    overflow: visible;
}

.causes-item .progress .progress-bar {
    position: relative;
    overflow: visible;
    width: 0px;
    border-radius: 0;
    transition: 5s;
}

.causes-item .progress .progress-bar span {
    position: absolute;
    top: -7px;
    right: 0;
    width: 40px;
    height: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    background: var(--primary);
    color: #FFFFFF;
}

.causes-item .causes-overlay {
    position: absolute;
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, .5);
    overflow: hidden;
    opacity: 0;
    transition: .5s;
}

.causes-item:hover .causes-overlay {
    height: 100%;
    opacity: 1;
}


/*** Service ***/
.service-item {
    box-shadow: 0 0 45px rgba(0, 0, 0, .06);
}


/*** program ***/
.program {
    /*background: #76c6cbd4;*/
}

.btn-group .btn-light:hover,
.btn-group input[type="radio"]:checked+label {
    color: var(--primary);
    border-color: var(--primary);
}

.program .table td {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCC;
    
    color: #08609f;
    padding: 3px 0px;
    vertical-align: middle;
    text-align: center;
}
.cleartd {
    border-bottom-style: none;
}
.program a{
    color: #d7620b;
    text-decoration:none;

}
.program a:hover{
    color: #a3450b;
    font-weight: bolder;
    text-decoration:underline;
}

/*** reg***/
.person-data{
    padding: 10px 30px;  
}
.person-data p{
    text-align: left;
    padding: 0px 50px;
    font-size: 0.9em;    
}
.regtable tr {
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: #bfb6d5;
}
.regtable td {
    font-size: 1em;
    color: #2a1756;
    padding: 3px 5px;
    vertical-align: middle;
}

.regtable input[type=text] {
  border: 1px solid #e9d910;
  border-radius: 8px;
}

@media (max-width: 768px) {
    .regtable td {
     font-size: 0.9em;
     font-weight: bold;
     color: #071f56;
     padding: 3px 3px;
     vertical-align: middle;
     }
     
    .person-data p{
     padding: 0px;    
     }
}

@media (max-width: 576px) {
    .regtable td {
     font-size: 0.8em;
     color: #0c0816;
     }
}


/*** Team ***/
.team-item img {
    position: relative;
    top: 0;
    transition: .5s;
    padding: 15px;
}

.team-item:hover img {
    top: -30px;

}

.team-item .team-text {
    position: relative;
    height: 100%;
    transition: .5s;
}

.team-item .team-text h5{
    color: #5f3a75;
    font-weight: 700;
    font-size: 1.1em;
    margin-bottom: 0.1rem;
}
.speaker-position{
    font-weight: bolder;
    font-size: 10pt;
    margin-bottom: 0.2rem;
    color: #bc9662; /*#f4bc71 淺黃金*/
    text-shadow:1px 0px 2px #43353b;
}

.speaker-country{
    font-size: 9pt;
}


.team-item:hover .team-text {
    margin-top: -30px;/*原來-60PX*/
    height: 160px;
}

.team-item .team-text .team-social {
    opacity: 0;
    transition: .5s;
}

.team-item:hover .team-text .team-social {
    opacity: 1;
}

.team-item .team-social .btn {
    display: inline-flex;
    color: var(--primary);
    background: #FFFFFF;
    border-radius: 40px;
}

.team-item .team-social .btn:hover {
    color: #FFFFFF;
    background: var(--primary);
}

.team-item2{
    background-color: #ffeeee;
}

/*** 與會嘉賓***/
/**background: #f7fefe;/*淺淺淺藍綠*//**/
#speakers{
    
    background-color: #49383e;
    background-image: url("../img/dot-bg.png");
    
    /* 
    background-color: #e4f6f9d4;
    background-image: radial-gradient(#fdfdfd 1px, transparent 1px);
    background-size: 24px 24px; 控制網格間距 */

}
/*bg-gold漸層色*/
#speakers .overflow-hidden {
    background: #89a3b3;
    background: linear-gradient(105deg,rgba(73, 56, 62, 1) 0%, rgba(176, 131, 53, 1) 24%, rgba(252, 239, 186, 1) 42%, rgba(156, 129, 101, 1) 66%, rgba(73, 56, 62, 1) 82%, rgba(105, 86, 63, 1) 100%);
}
/*灰藍-灰白-暗粉紅 linear-gradient(180deg,rgba(137, 163, 179, 1) 20%, rgba(182, 189, 212, 0.87) 64%, rgba(245, 166, 166, 0.64) 100%);*/


@media (min-width: 992px) {
  .speaker-row .speaker-col {
    flex: 0 0 auto;
    width: 14.285714%;
  }
}

@media (max-width: 768px) {
    h5, .h5{
        font-size: 1rem;
        line-height: 1em;
    }
    .small{
        margin-bottom: 0.2rem;
        font-size: 0.8rem;
    }
}
 @media (max-width: 767px) {
            .speaker-avatar { height: 150px; font-size: 1.8rem; }
            .team-text { min-height: 150px; }
            .carousel-caption { padding: 1rem; }
            .program-table { font-size: .9rem; }
        }




/* 新增：Speakers 使用獨立 grid，避免覆蓋 Bootstrap row/col 與 .team-item */
#speakers .speakers-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    max-width: 1180px;
    margin: 0 auto 1.75rem;
}

/* 新增：無照片版 speaker 卡片 */
#speakers .speaker-info-card {
    position: relative;
    min-height: 190px;
    padding: 1.35rem 1.25rem 1.2rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 20px;
    overflow: hidden;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, .96) 0%, rgba(241, 244, 250, .94) 58%, rgba(225, 234, 240, .92) 100%);
    box-shadow: 0 18px 42px rgba(0, 0, 0, .18);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

/* 新增：低調光暈，提升質感 */
#speakers .speaker-info-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 12%, rgba(249, 166, 165, .34), transparent 34%),
        radial-gradient(circle at 88% 86%, rgba(117, 93, 175, .20), transparent 32%);
    pointer-events: none;
}

#speakers .speaker-info-card:hover {
    transform: translateY(-5px);
    border-color: rgba(249, 166, 165, .46);
    box-shadow: 0 24px 52px rgba(0, 0, 0, .24);
}

#speakers .speaker-info-title,
#speakers .speaker-info-name,
#speakers .speaker-info-affiliation,
#speakers .speaker-info-country {
    position: relative;
    z-index: 1;
}

#speakers .speaker-info-title {
    display: inline-block;
    margin-bottom: .65rem;
    padding: .18rem .62rem;
    border-radius: 999px;
    background: rgba(123, 82, 143, .11);
    color: #755daf;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

#speakers .speaker-info-name {
    margin-bottom: .55rem;
    color: #2b2b4a;
    font-family: 'Saira', 'Inter', Arial, sans-serif;
    font-size: 1.22rem;
    font-weight: 700;
    line-height: 1.2;
}

#speakers .speaker-info-affiliation {
    margin-bottom: .85rem;
    color: #5c5870;
    font-size: .9rem;
    font-style: italic;
    line-height: 1.45;
}

#speakers .speaker-info-country {
    margin-bottom: 0;
    color: #9a6b0d;
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .04em;
}

@media (max-width: 991.98px) {
    #speakers .speakers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    #speakers .speakers-grid {
        grid-template-columns: 1fr;
        gap: .85rem;
    }

    #speakers .speaker-info-card {
        min-height: auto;
        padding: 1.1rem 1rem;
    }
}


/*** agenda***/
.agenda { align-items: stretch; }
.agenda .table-responsive-sm { height: 100%; }
.agenda .program-table { height: 100%; margin-bottom: 0; box-shadow: 0 18px 40px rgba(10, 22, 51, .14); }
.agenda .program-table th { background: #776153; } /*第一列*/
.agenda .day-card { height: 100%; border-radius: 16px; overflow: hidden; background: #ffffff; }
.agenda .speaker-item { margin: .35rem 0; line-height: 1.45; }
.agenda .speaker-item .small { display: inline-block; min-width: 48px; color: #6f79bb; font-weight: 700; }
.agenda .session-cell { background: #e5eaf4; }
.agenda .talk-cell { background: #EAF0F2; }
.agenda .break-cell { background: #CBD3E9; }
.agenda .lunch-cell { background: #9da3c5; }
.agenda .subject-cell { background: #c9d1ed; }
.agenda .speaker-title { font-weight: 700; color: #35457c; }
.agenda-note { color: #c9d6ff; max-width: 860px; margin: 0 auto; }


/*** Testimonial ***/
.testimonial-carousel::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    height: 100%;
    width: 0;
    background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 1;
}

.testimonial-carousel::after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    height: 100%;
    width: 0;
    background: linear-gradient(to left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 1;
}

@media (min-width: 768px) {
    .testimonial-carousel::before,
    .testimonial-carousel::after {
        width: 200px;
    }
}

@media (min-width: 992px) {
    .testimonial-carousel::before,
    .testimonial-carousel::after {
        width: 300px;
    }
}

.testimonial-carousel .owl-item .testimonial-text {
    background: var(--light);
    transform: scale(.8);
    transition: .5s;
}

.testimonial-carousel .owl-item.center .testimonial-text {
    background: var(--primary);
    transform: scale(1);
}

.testimonial-carousel .owl-item .testimonial-text *,
.testimonial-carousel .owl-item .testimonial-item img {
    transition: .5s;
}

.testimonial-carousel .owl-item.center .testimonial-text * {
    color: var(--light) !important;
}

.testimonial-carousel .owl-item.center .testimonial-item img {
    background: var(--primary) !important;
} 

.testimonial-carousel .owl-nav {
    position: absolute;
    width: 350px;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: space-between;
    opacity: 0;
    transition: .5s;
    z-index: 1;
}

.testimonial-carousel:hover .owl-nav {
    width: 300px;
    opacity: 1;
}

.testimonial-carousel .owl-nav .owl-prev,
.testimonial-carousel .owl-nav .owl-next {
    position: relative;
    color: var(--primary);
    font-size: 45px;
    transition: .5s;
}

.testimonial-carousel .owl-nav .owl-prev:hover,
.testimonial-carousel .owl-nav .owl-next:hover {
    color: var(--dark);
}

/*** map ***/
.bg-map{
    background: linear-gradient(0deg, rgba(64, 32, 79, 0.639093137254902) 0%, rgba(85, 85, 139, 0.7763480392156863) 49%, rgb(255 255 255 / 24%) 100%), url(../img/carousel-1.jpg) no-repeat center top / cover;
}




/* =========================
   Call for Poster Section
   ========================= */
#poster {
        background: linear-gradient(189deg, rgb(52 29 62 / 89%) 0%, rgba(85, 85, 139, 0.7763480392156863) 49%, rgb(255 255 255 / 24%) 100%), url(../img/carousel-1.jpg) no-repeat center top / cover;;
    /*background-color: #2f2d44;*/
}

#poster .poster-heading {
    max-width: 880px;
}

#poster .poster-lead {
    color: #cad1ee;
    font-size: 0.8rem;
    line-height: 1.75;
}

#poster .poster-panel {
    padding: 1.1rem;
    border-top: 4px solid #e2ce46;
    border-radius: 16px;
    background: linear-gradient(145deg, #ffffff 0%, #f4f5f8 100%);
    box-shadow: 0 14px 30px rgba(0, 0, 0, .16);
    color: #433e76;
}

#poster .poster-panel-title {
    margin-bottom: .35rem;
    color: #5f3a75;
    font-size: 1.25rem;
    font-weight: 700;
}

#poster .poster-timezone {
    margin-bottom: 1rem;
    color: #8b6b38;
    font-size: .9rem;
    font-weight: 600;
}

/* Important Dates: each row is independent for easy future expansion. */
#poster .poster-date-list {
    display: grid;
    gap: .75rem;
}

#poster .poster-date-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem 0;
    border-bottom: 1px solid #ddd9e7;
}

#poster .poster-date-item:last-child {
    border-bottom: 0;
}

#poster .poster-date-label {
    color: #433e76;
    font-weight: 600;
}

#poster .poster-date-value {
    flex: 0 0 auto;
    color: #9a6b0d;
    font-weight: 700;
    text-align: right;
}

#poster .poster-guidelines {
    padding-left: 1.2rem;
    color: #4f4a64;
}

#poster .poster-guidelines li {
    margin-bottom: .55rem;
    line-height: 1.55;
}

#poster .poster-guidelines li:last-child {
    margin-bottom: 0;
}

#poster .poster-submission {
    border-top: 4px solid transparent;
    border-image: linear-gradient(
        90deg,
        #49383e 0%,
        #aa771c 25%,
        #fcf6ba 50%,
        #bf953f 80%,
        #49383e 100%
    ) 1;
    /*border-top-color: #f9a6a5;*/

}

#poster .poster-submission p {
    color: #4f4a64;
    line-height: 1.6;
}

/* Call for Poster responsive adjustments */
@media (max-width: 767.98px) {
    #poster .poster-panel {
        padding: 1.2rem;
    }

    #poster .poster-date-item {
        display: block;
    }

    #poster .poster-date-value {
        display: block;
        margin-top: .25rem;
        text-align: left;
    }
}


/*** Footer ***/

.footer .btn.btn-link {
    display: block;
    margin-bottom: 5px;
    padding: 0;
    text-align: left;
    color: rgba(255,255,255,0.5);
    font-weight: normal;
    text-transform: capitalize;
    transition: .3s;
}

.footer .btn.btn-link::before {
    position: relative;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: rgba(255,255,255,0.5);
    margin-right: 10px;
}

.footer .btn.btn-link:hover {
    color: var(--light);
    letter-spacing: 1px;
    box-shadow: none;
}

.footer .btn.btn-square {
    color: rgba(255,255,255,0.5);
    border: 1px solid rgba(255,255,255,0.5);
}

.footer .btn.btn-square:hover {
    color: var(--secondary);
    border-color: var(--light);
}

.footer .copyright {
    padding: 25px 0;
    font-size: 15px;
    border-top: 1px solid rgba(256, 256, 256, .1);
}

.footer .copyright a {
    color: var(--secondary);
}

.footer .copyright a:hover {
    color: var(--primary);
}

.speaker-card { height: 100%; box-shadow: 0 14px 30px rgba(0,0,0,.16); }

/*
.carousel-caption { background: linear-gradient(90deg, rgba(8, 18, 44, .86), rgba(8, 18, 44, .52)); border-radius: 22px; padding: 2rem; }
<style>
        body { font-family: "Inter", Arial, sans-serif; }
        h1, h2, h3, h4, h5, .navbar-brand { font-family: "Saira", "Inter", Arial, sans-serif; }
        
        .speaker-card { height: 100%; box-shadow: 0 14px 30px rgba(0,0,0,.16); }
        .speaker-avatar {
            height: 210px; display: flex; align-items: center; justify-content: center;
            background: radial-gradient(circle at 30% 20%, #8ea7d8, #22345f 68%, #16223f);
            color: #f8d66d; font-size: 2.35rem; font-weight: 700; letter-spacing: .05em;
        }
        .team-text { min-height: 230px; }
        .team-text h5 { margin-bottom: .45rem; }
        .speaker-email { word-break: break-word; line-height: 1.25; }
        
        .program-table { margin-bottom: 2rem; border-radius: 14px; overflow: hidden; }
        .program-table td, .program-table th { border-color: rgba(255,255,255,.22); }
        .program-table h5 { color: #ffffff; }
        .badge.bg-gray { background: rgba(255,255,255,.16); color: #d8e2ff; }
        
    </style>
*/