.elementor-19641 .elementor-element.elementor-element-76b2c2b2{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:-30px;margin-bottom:-30px;padding:0px 0px 20px 0px;}.elementor-19641 .elementor-element.elementor-element-76b2c2b2 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-19641 .elementor-element.elementor-element-48e54799{text-align:start;}@media(max-width:767px){.elementor-19641 .elementor-element.elementor-element-ecd1f4a > .elementor-widget-container{padding:0px 0px 20px 0px;}}/* Start custom CSS for html, class: .elementor-element-47458438 *//* 整排容器，一排三卡片 */
.flip-card-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 4px;
  max-width: 1280px;
  margin: 0 auto;
  margin-top: 0px;
margin-bottom: 0px;
}
/* === 讓整排卡片上方留空 === */
.flip-card-wrapper{
    padding-top:10px;   /* ⇦ 需要多少空間就改這個數字 */
}
/* 單張卡片：固定寬高比，與上方一致 */
.flip-card {
  width: 32%;
  aspect-ratio: 16 / 9; /* 保持 1920x1080 比例 */
  perspective: 1000px;
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}

/* 卡片內部旋轉區 */
.flip-card-inner {
  width: 100%;
  height: 100%;
  transition: transform 0.7s ease;
  transform-style: preserve-3d;
  border-radius: 16px;
  position: relative;
}

/* 翻轉動畫 */
.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

/* 正反面共同屬性 */
.flip-card-front,
.flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 16px;
  backface-visibility: hidden;
  overflow: hidden;
}

/* 圖片正面樣式 */
.flip-card-front img {
  width: 100%;
  height: 100%;
  object-fit: contain; /* 重點：完整呈現圖片 */
  display: block;
}

/* 背面內容樣式 */
.flip-card-back {
  background-color: #9DADC3;
  color: #fff;
  transform: rotateY(180deg);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 16px;
}

.back-content {
  text-align: center;
  line-height: 1.5;
}

.back-content .lecture-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 6px;
}

.back-content .lecture-speaker {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 4px;
}

.back-content .lecture-desc {
  font-size: 13px;
  color: #f0f0f0;
}
/* 解開背面卡片中講師資訊的 display 限制 */
.flip-card-back .lecture-speaker {
  display: block;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 4px;
  color: #fff;
}
/* ─────────── 卡片外框＋ hashtag ─────────── */
.flip-card-container{
  width:32%;                         /* 一排 3 欄 */
  display:flex;flex-direction:column;align-items:center;
  margin-bottom:10px;                /* 上下排距離(統一) */
}

/* ─────────── hashtag 樣式 (可再自行微調) ─────────── */
.lecture-tag{
  margin-top:14px;                 /* 與卡片距離 */
  font-size:16px;                  /* 字級 */
  font-weight:600;                 /* 粗細：400=正常、600=半粗、700=粗 */
  font-style:normal;               /* 取消斜體 */
  color:#49637A;                   /* 文字顏色 */

  /* # 與文字留一格：寫 HTML 時打 #<空格>文字；若想強制加空格可用下行 */
  /* letter-spacing:0.05em; */     /* (可選) 微調 # 與文字間距 */

  text-align:center;

  /* 如需底色可解除註解：
  background:#e4eef7; padding:4px 8px; border-radius:4px; */
}

/* 讓卡片填滿 container */
.flip-card-container .flip-card{
  width:100%;
  aspect-ratio:16/9;
}

/* 手機版調整 */
@media (max-width: 768px) {
  .flip-card-container {
    width: 100%;
    margin-bottom: 32px;
  }
  .lecture-tag {
    font-size: 12px;
    margin-top: 6px;
  }
}

/* 手機 RWD */
@media (max-width: 768px) {
  .flip-card-container {
    width: 100%;
    margin-bottom: 32px;
  }

  .lecture-tag {
    font-size: 10px;
    margin-top: 6px;
  }
}

@media (max-width: 768px) {
  .flip-card-wrapper {
    flex-direction: column;
    gap: 16px;
  }

  .flip-card {
    width: 100%;
    aspect-ratio: 16 / 9;
  }

  .flip-card-inner {
    transform: none !important;
    transition: none;
  }

  .flip-card-front {
    display: block !important;
  }

  .flip-card-back {
    position: static;
    transform: none !important;
    background-color: #9DADC3;
    color: #fff;
    padding: 16px;
    display: block;
    height: auto;
    border-radius: 12px;
  }

  .back-content {
    text-align: center;
  }

  .back-content .lecture-title {
    font-size: 12px;
    margin-bottom: 8px;
    font-weight: bold;
  }

  .back-content .lecture-speaker {
    font-size: 10px;
    margin-bottom: 4px;
  }

  .back-content .lecture-desc {
    font-size: 8px;
    line-height: 1.4;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ecd1f4a *//* --- 總容器 --- */
.card-stack-wrapper {
    position: relative;
    width: 100%;
    max-width: 450px;
    /* 【修正1】增加總高度，給予內容足夠的空間 */
    height: 450px; 
    margin: auto;
}

/* 隱藏真正的 radio 按鈕 */
.card-stack-wrapper input[type="radio"] {
    display: none;
}

/* --- 卡片堆疊容器 --- */
.card-stack {
    position: relative;
    width: 100%;
    height: 100%;
    margin-bottom: 60px
}

/* --- 單張卡片的樣式 --- */
.lecture-card {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    /* 【修正2】微調上下邊距，釋放垂直空間 */
    padding: 25px 25px 20px; 
    border-radius: 24px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
    
    display: flex;
    flex-direction: column;
    
    opacity: 0;
    transform: scale(0.9) translateY(10px);
    transition: all 0.4s ease-in-out;
    z-index: 1;
}

/* 【CSS 核心】當 radio 被選中時，顯示對應的卡片 */
#card-1:checked ~ .card-stack .card-1,
#card-2:checked ~ .card-stack .card-2,
#card-3:checked ~ .card-stack .card-3 {
    opacity: 1;
    transform: scale(1) translateY(0);
    z-index: 2;
}

/* 不同卡片的底色 */
.card-1 { background-color: #F1F4F7; }
.card-2 { background-color: #C7D2DD; }
.card-3 { background-color: #F1F4F7; }

/* --- 卡片內容樣式 --- */
.lecture-card h2 { font-size: 24px; margin: 0 0 8px; color: #222; }
.lecture-card .speaker { font-size: 16px; margin: 0 0 12px; color: #555; }

.lecture-card .description {
    font-size: 16px;
    line-height: 1.6;
    color: #555;
    margin: 0;
    /* 【修正3】讓描述區塊自動延展，把圖片和按鈕往下推 */
}

.lecture-card .lecture-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 16px;
    margin-top: 20px; /* 取代原本的 auto 和 padding-top */
}

.lecture-card .hashtag-container {
    text-align: center;
    padding-top: 20px;
}

.lecture-card .hashtag-container span {
    display: inline-block;
    font-size: 14px;
    color: #555;
    background-color: rgba(0,0,0,0.05);
    padding: 6px 14px;
    border-radius: 16px;
}

/* --- 導航箭頭樣式 --- */
.card-nav {
    position: absolute;
    bottom: 25px;
    left: 25px;
    right: 25px;
    display: flex;
    justify-content: space-between;
    z-index: 3;
}

.card-nav label {
    width: 44px;
    height: 44px;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: bold;
    color: #333;
    cursor: pointer;
    backdrop-filter: blur(4px);
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    transition: background-color 0.2s;
}

.card-nav label:hover {
    background-color: rgba(255, 255, 255, 1);
}/* End custom CSS */