/* ============================================================
   Faculty Welcome Pack - custom styles
   由 page/main.php 内联 <style> 提取,勿改选择器/覆盖顺序
   ============================================================ */

.industrium-subheading {
  color: #e5790d;

  font-family: Manrope, Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.875em;
  text-transform: none;
  letter-spacing: 0em;
  word-spacing: 0px;
  font-style: normal;
  font-weight: 400;
}
p { text-align: justify; }

@media (min-width: 768px) {
  .col-md-4 {
    max-width: 100% !important;
  }
}
@media (min-width: 576px) {
  .col-sm-6 {
    max-width: 100% !important;
  }
}
.section-spacing {
  padding: 20px 0px;
  height: auto; /* 覆盖 styles.css 的 height: 1000px */
}
.themeix-header-navigation .themeix-brand {
  padding-top: 0px;
}
iframe {
  border: none;
}

body { font-family: Arial, Helvetica, sans-serif; }

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  padding-top: 60px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

a:hover,
a:focus {
  cursor: pointer !important;
}
a {
  color: #348FD1;
  text-decoration: underline;
}
.hyperlink {
  color: #348FD1 !important ;
  text-decoration: underline !important;
}

/* Menu styling */
.list-group-item a {
  color: #348FD1 !important;
  text-decoration: none !important;
  transition: all 0.3s ease;
}

.list-group-item a:hover {
  color: #2171b5 !important;
  text-decoration: underline !important;
}

.list-group-item:hover {
  background-color: #f8f9fa;
  cursor: pointer;
}

/* Content section styling */
#ig, #tl, #el, #fr, #uss, #cl, #fhu, #faq {
  min-height: 200px;
  padding: 15px;
}

/* Table styling for better responsiveness */
.content-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 20px;
  table-layout: auto;
}

/* 最外层边框 */
.content-table tr:first-child td { border-top-color: #eb9a49; }
.content-table tr:last-child td { border-bottom-color: #eb9a49; }
.content-table td:last-child { border-right-color: #eb9a49; }

.content-table td {
  padding: 12px 8px;
  border: 1px solid #e5790d;
  vertical-align: top;
  background-color: #189E75;
  color: #fff;
}

.content-table tbody td {
  background-color: #fff;
  color: #2c3e50;
}

.content-table a {
  color: #e5790d;
  word-break: break-word; /* 长链接强制换行 */
}

.content-table .col-number {
  display: none;
  width: auto;
  min-width: 60px;
  text-align: center;
  font-weight: bold;
  white-space: nowrap;
}

.content-table .col-title {
  width: auto;
  /* min-width: 200px; */
  font-weight: bold;
  background-color: #189E75;
  color: #fff;
  border-color: #a4c6bb;
  border-left-color: #eb9a49;
}

.content-table .col-content {
  width: auto;
  /* min-width: 300px; */
}

/* Wide table for sections with more content */
.wide-content-table .col-title {
  /* min-width: 250px; */
}

.wide-content-table .col-content {
  /* min-width: 400px; */
}

@media (max-width: 768px) {
  .content-table {
    font-size: 14px;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .content-table .col-number {
    min-width: 40px;
  }
  .content-table .col-title {
    /* min-width: 120px; */
  }
  .content-table .col-content {
    /* min-width: 200px; */
  }
  .wide-content-table .col-title {
    /* min-width: 150px; */
  }
  .wide-content-table .col-content {
    /* min-width: 250px; */
  }
}
/* New Mini Site Style */
:root{
  --c-primary: #e5790d;
  /* --font-main: 'Manrope'; */
  --font-main: Arial, Helvetica, sans-serif;
}
h1,h2,h3,h4,h5,h6{
	font-family: var(--font-main);
  color: white;
}
h1{
  font-size: 60px;
}
@media (max-width: 768px) {
  h1{
    font-size: 32px;
  }
}
.mini-site-container{
  display: none; /* 桌面端导航常显在 header 行,隐藏旧下拉面板 */
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 5;
  padding: 0 30px;
  background: #fff;
  box-shadow: 0 8px 16px rgba(0, 0, 0, .08);
}
.mini-site-header-wrap{
  position: sticky;
  top: 0;
  z-index: 100;
  box-sizing: border-box;
  background: linear-gradient(180deg, #FFF 0%, rgba(255, 255, 255, 1) 90%, rgba(255, 255, 255, 0) 100%);
}
/* .mini-site-header-wrap.scrolled, */
.mini-site-header-wrap.menu-open{
  background: #fff;
}
.mini-site-header-wrap::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 6px;
  background: transparent; /* 显示导航时不显示 border;仅窄屏展开抽屉时橙色 */
  transition: background-color .3s ease;
  z-index: 6;
}
.mini-site-header{
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1560px;
  padding: 10px 30px;
  margin: 0 auto;
  box-sizing: border-box;
  /* gap: 230px; */
}
.mini-container{
  max-width: 1560px;
  padding: 10px 30px;
  margin: 0 auto;
}
.mini-site-header-logo{
  width: 280px;
  height: auto;
  display: block;
  flex-shrink: 0; /* 防止被导航行挤压变形 */
}
.mini-site-header-menu{
  width: 18px;
  cursor: pointer;
}
/* 桌面端:导航常显在 header 行,与 logo 同一行 */
.mini-site-header-right{

  display: flex;
  align-items: center;
  gap: 16px;
}
.mini-site-header-nav{
  display: flex;
  align-items: center;
  flex-wrap: wrap; /* 兜底:空间不足时换行,避免把汉堡包挤出视口 */
  gap: 24px;
  justify-content: end;
  max-width: 1000px;
}
.mini-site-header-nav a{
  font-family: var(--font-main);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-transform: capitalize;
  text-decoration: none;
  white-space: nowrap;
  color: black;
}
.mini-site-header-nav a:hover,
.mini-site-header-nav a.active{
  color: var(--c-primary);
}
.mini-site-header-nav a.active{
  /* border-bottom: 2px solid var(--c-primary); */
}
.menu-icon{
  display: none; /* PC 端导航常显,隐藏汉堡包 */
  align-items: center;
}
.themeix-banner-wells{
  /* height: 375px;*/
  display: flex;
  align-items: center;
  text-align: center;
  transform: translateY(-20px);
  margin-bottom: -20px;
}
.mini-site-menu-item{
  max-width: 1500px;
  margin: 0 auto;
  padding: 40px 0;
  display: none; /* 仅移动端抽屉内使用 */
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  color: #2c3e50;
}
.mini-site-menu-item a{
  display: block;
  font-family: var(--font-main);
  font-size: 16px;
  font-weight: 700;
  line-height: 27px; /* 168.75% */
  letter-spacing: -0.005px;
  text-transform: capitalize;
  text-decoration: none;
  color: var(--c-primary);
}
.mini-site-menu-item a:hover{
  text-decoration: underline;
}

/* Special text effect: fill text + stroke outline overlay */
.special-text{
  position: relative;
  display: block;
  margin: 0;
  color: var(--c-primary);
}
.special-text .special-text-effect-stroke{
  position: absolute;
  top: -0.03em;
  left: 0.05em;
  color: transparent;
  -webkit-text-stroke: 0.5px var(--c-primary);
  pointer-events: none;
  user-select: none;
}
.themeix-wells-container{
  text-shadow: 0 4px 8px rgba(0, 0, 0, 0.50);
}
.content-table td{
  padding: 20px 30px;
}

.mini-footer{
  background-color: #f0c999;
}
.footer-container{
  max-width: 1340px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  box-sizing: border-box;
  padding-top: 30px;
  padding-bottom: 30px;
}
.mini-site-menu-close{
  display: none;
}
@media (max-width: 1400px) {
  .mini-site-header{
    gap: 0;
  }
  /* 窄屏:隐藏横向导航,汉堡包展开抽屉 */
  .menu-icon{
    display: flex;
  }
  .mini-site-header-wrap.menu-open::after{
    background: var(--c-primary);
  }
  .mini-site-header-nav{
    display: none;
  }
  .mini-site-container{
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: auto;
    width: min(320px, 85vw);
    z-index: 1000;
    padding: 80px 20px 20px;
    background: #fff;
    box-shadow: -8px 0 16px rgba(0, 0, 0, .12);
    transform: translateX(100%);
    transition: transform .3s ease;
    overflow-y: auto;
  }
  .mini-site-menu-close{
    display: block;
    position: absolute;
    top: 16px;
    right: 16px;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    font-size: 30px;
    line-height: 1;
    color: #2c3e50;
    cursor: pointer;
  }
  .mini-site-header-wrap.menu-open .mini-site-container{
    transform: translateX(0);
  }
  .mini-site-menu-item{
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
  .mini-site-menu-item a{
    padding: 14px 4px;
    border-bottom: 1px solid #f0f0f0;
  }
}
@media (max-width: 768px) {
  .mini-site-header-logo{
    width: 150px;
  }
  /* 移动端:footer 图标与版权堆叠居中 */
  .footer-container{
    flex-direction: column;
    gap: 16px;
    text-align: center;
  }
  .content-table td{
    padding: 12px 8px;
  }
}
/* 装饰块:上 100px 白色,下 100px 橙色(单伪元素渐变实现) */
.block-style1::after{
  content: "";
  position: absolute;
  bottom: -100px;
  right: 63px;
  z-index: 5;
  height: 200px;
  width: 100px;
  background: linear-gradient(180deg, #fff 0%, #fff 50%, var(--c-primary) 50%, var(--c-primary) 100%);
}

/* 内容区装饰:顶部 646px 橙色线条 */
.themeix-feature{
  position: relative;
}
/* 内容区容器宽度 1340px */
.themeix-feature .container{
  max-width: 1340px;
}
.themeix-feature::before{
  content: "";
  position: absolute;
  top: 124px;
  right: 0;
  width: 646px;
  height: 1px;
  background: var(--c-primary);
  z-index: 5;
}
@media (max-width: 1330px) { 
  .themeix-feature::before,
  .block-style1::after{
    display: none;
  }
}

/* 100x100 装饰色块 */
.block-style2,
.style-card2::after{
  content: "";
  position: absolute;
  z-index: 5;
  width: 100px;
  height: 100px;
  background: #fcf2e7;
}
.block-style2{ top: 123px; left: 0; }
.style-card2::after{ top: 223px; left: 100px; }
@media (max-width: 1700px) { 
  .block-style2,
  .style-card2::after{
    display: none;
  }
}
.content-table{
  margin-top: 40px;
}
.col-title{
  /* font-size: 20px; */
}
/* 社交图标横向排列 */
.social-icons{
  list-style: none;
  display: flex;
  gap: 5px;
  margin: 10px 0 0;
  padding: 0;
}
.footer-item{
  display: flex;
  gap: 24px;
}
.footer-item:hover{
  cursor: pointer;
}
.menu-icon{
  /* display: flex; */
  align-items: center;
}