/***************************************************
 * A. Slideshow（首页大轮播）布局/高度/适配
 ***************************************************/

/* A1) Slideshow 外层容器全宽 */
#sp-slideshow .container,
#sp-slideshow .sppb-row-container,
#sp-slideshow .sppb-container{
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* A2) Desktop 默认高度（>=1025） */
#sp-slideshow .yt-content-slider .yt-content-slide{
  height: 681px !important;
  max-height: 681px !important;
  overflow: hidden;
  position: relative;
  background: #ffffff;
}

/* A3) Mobile 高度（<=768） */
@media (max-width: 768px){
  #sp-slideshow .yt-content-slider .yt-content-slide{
    height: clamp(320px, 80vw, 520px) !important;
    max-height: none !important;
  }
}

/* A4) Tablet 高度（769~1024） */
@media (min-width: 769px) and (max-width: 1024px){
  #sp-slideshow .yt-content-slider .yt-content-slide{
    height: clamp(340px, 42vw, 681px) !important;
    max-height: none !important;
    overflow: hidden;
    position: relative;
    background: #ffffff;
  }
}

/* A5) Desktop 图片：不放大（contain） */
#sp-slideshow .yt-content-slider .yt-content-slide img{
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* A6) Mobile 图片：铺满（cover） */
@media (max-width: 768px){
  #sp-slideshow .yt-content-slider .yt-content-slide img{
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
  }
}

/* A7) Tablet 图片：铺满（cover） */
@media (min-width: 769px) and (max-width: 1024px){
  #sp-slideshow .yt-content-slider .yt-content-slide img{
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    display: block;
  }
}

/* A8) 左右渐隐到白色（桌面） */
#sp-slideshow .yt-content-slider .yt-content-slide::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 2;
  background: linear-gradient(
    to right,
    white 0%,
    rgba(255,255,255,0) 22%,
    rgba(255,255,255,0) 78%,
    white 100%
  );
}

/* A9) Mobile 渐隐收窄（避免遮太多画面） */
@media (max-width: 768px){
  #sp-slideshow .yt-content-slider .yt-content-slide::after{
    background: linear-gradient(
      to right,
      white 0%,
      rgba(255,255,255,0) 10%,
      rgba(255,255,255,0) 90%,
      white 100%
    );
  }
}

/* A10) dots 往上 */
#sp-slideshow .owl-dots,
#sp-slideshow .owl-controls .owl-dots,
#sp-slideshow .owl2-controls .owl-dots{
  position: absolute !important;
  left: 0;
  right: 0;
  bottom: 40px !important;
  z-index: 10;
}
#sp-slideshow .yt-content-slider{ position: relative !important; }

/* A11) 背景渐变：Desktop/Tablet */
@media (min-width: 1025px){
  #sp-slideshow .yt-content-slider .yt-content-slide{
    background: linear-gradient(to right, #f1f2f4 0%, #ffffff 100%) !important;
  }
}
@media (min-width: 769px) and (max-width: 1024px){
  #sp-slideshow .yt-content-slider .yt-content-slide{
    background: linear-gradient(to right, #f1f2f4 0%, #ffffff 100%) !important;
  }
}
/* Mobile 背景：你原来写 100%/100% 等于纯色，这里直接写纯色 */
@media (max-width: 768px){
  #sp-slideshow .yt-content-slider .yt-content-slide{
    background: #f1f2f4 !important;
  }
}

/***************************************************
 * B. Header / Logo / Menu 字体与对齐
 ***************************************************/

/* B1) Header 固定 */
#sp-header{
  position: fixed !important;
  top: 0; left: 0; right: 0;
  z-index: 9999 !important;
  background: rgba(255,255,255,0.95);
}
body{ padding-top: 80px; }

/* B2) Logo 保持原图尺寸，不缩放 */
#sp-logo img,
.logo img,
.sp-default-logo img{
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: none !important;
}

/* B3) Logo 上下居中 + 靠左 */
#sp-logo,
#sp-logo .logo,
#sp-logo a{
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start !important;
}
#sp-logo{ text-align: left !important; }

/* B4) 菜单区域靠右（让 logo 自然在最左） */
#sp-header #sp-menu{ margin-left: auto !important; }

/* B5) 主菜单字体（PC） */
#sp-menu .sp-megamenu-parent > li > a,
#sp-menu .sp-megamenu-parent > li > span{
  font-family: "Open Sans", "Noto Sans SC", "Microsoft YaHei", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}
/* B6) 下拉菜单字体 */
#sp-menu .sp-dropdown li > a,
#sp-menu .sp-dropdown li > span{
  font-family: "Open Sans", "Noto Sans SC", "Microsoft YaHei", sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}
/* 让 header 这一整行变成 flex 布局 */
#sp-header .container-inner,
#sp-header .row{
  display: flex !important;
  align-items: center !important;   /* 垂直居中 */
}

/* 让三个模块本身也是 flex */
#sp-header .sp-module,
#sp-header #sp-logo,
#sp-header #sp-menu,
#sp-header #sp-user1{
  display: flex;
  align-items: center;
}

/* 避免 logo 图片撑开高度 */
#sp-logo img{
  display: block;
}
/***************************************************
 * C. Project Video Gallery（你自定义的 proj-gallery 网格与弹窗）
 ***************************************************/

/* C7) 弹窗容器（如果你同时保留了 pg-modal HTML） */
.proj-gallery .pg-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.75);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:999999;
  padding:24px;
}
.proj-gallery .pg-modal.open{ display:flex; }
.proj-gallery .pg-modal-box{
  width:min(980px, 96vw);
  aspect-ratio:16/9;
  background:#000;
  border-radius:12px;
  overflow:hidden;
  position:relative;
}
.proj-gallery .pg-modal-box iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}
.proj-gallery .pg-close{
  position:absolute;
  top:10px; right:10px;
  width:38px; height:38px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  font-size:22px;
  cursor:pointer;
}
/* 文章中被链接包裹的图片 */


/* 只作用于 Joomla 单文章页面里的“图片链接” */
body.com_content.view-article a:has(> img){
  position: relative !important;
  display: inline-block !important;
}

/* 图片本身：过渡 + 鼠标手势 */
body.com_content.view-article a:has(> img) > img{
  display: block;
  transition: filter .2s ease, transform .2s ease;
}

/* 悬停：图片变暗（颜色变化） */
body.com_content.view-article a:has(> img):hover > img{
  filter: brightness(95%);
}


/* 悬停：图标出现 + 变大 + 更亮 */
body.com_content.view-article a:has(> img):hover::after{
  opacity: 1;
  transform: scale(1.05);
  background: rgba(0,0,0,0.85);
}


/* C8) video-thumb 播放标识（用于 yt_gallery 的视频缩略图自动标记） */
.video-thumb{ position: relative; }
body{font-family: 'Open Sans', sans-serif;font-size: 14px;font-weight: 400;text-decoration: none;}

.logo-image {height:56px;}.logo-image-phone {height:56px;}
#sp-section-bread{ background-image:url("/static/migrated-site/233e5ecfeb72822f98d81e95.jpg");background-repeat:no-repeat;background-size:cover;background-attachment:scroll; }
.migrated-inline-4{width: 240px;}
.migrated-inline-5{width: 240px;}
.migrated-inline-6{display: block; width: 100%; height: 900px; border: 1px solid #ddd;}
.migrated-inline-7{border-collapse: collapse; width: 38.1717%; border-width: 0px;}
.migrated-inline-8{width: 45.8867%;}
.migrated-inline-9{width: 54.1133%;}
.migrated-inline-10{border-width: 0px;}
.migrated-inline-11{border-width: 0px;}
.migrated-inline-12{width: 13.56px;position: relative;top: -1.5px;}