@media screen and (max-width: 1200px){	
.template-C ul{   grid-template-columns: repeat(3, 1fr); gap: 2%; }
	
	.university ul li { flex-wrap: wrap}	
	.university ul li img {max-height: 40px;}
	.university_text {text-align: center;}
	.area {width: 100%;}
	.region--home-center {flex-wrap: wrap;}
	#block-olivero-views-block-slideshow-block-2 {  width: 100%;}
	#block-olivero-mission {  width: 100%;  padding: 50px 0 0 00px;}
	.motto {text-align: center;}
	.university ul {max-width: 100%;}
	
	.swiper-slide::before {height: 150px;}
	
}

@media screen and (max-width: 960px){

html,body { font-size: 16px ; line-height:28px;		}
.screen{ padding:0 15px;}
#header{ position:  relative; min-height: 50px; z-index: 10}
.menu_arrow ul::before{ display:none;}
.right_top{ margin-right: 10px; width: auto; margin-left: auto}
	
	
	
	#header .screen {background: #026437;}	
	#logo img {max-height: 80px;  margin: 10px 0;}
	
#main-menu {
    position: fixed !important;
    top: 0; 
	background:#2b2d30 !important;
	padding:30px 10px;
    bottom: 0;
    width: 100%;
    transition: all 0.5s ease-in-out;
    max-width: 280px;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 12;
            transform: translateX(-100%);
}
#menu-mask {
    display: none; /* 默认不显示 */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* 黑色半透明 */
    z-index: 2; /* 确保遮罩层位于其他内容上方 */
}
	
.site-branding{ min-height: auto ; margin: 0 10px 0 10px; padding: 0;}
.title , .blocktitle , .sch_highlights b , #banner_title h1, .banner_title h1{  font-weight: 350;  margin:15px 0;  font-size:26px; line-height:32px; }
.sch_highlights .title::before {  top:23px;    }
	
.sch_highlights{ padding: 20px 0}
.sch_highlights ul {
  padding: 15px 0;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.bg_god_msg{ padding:0}
.bg_god_msg .contents{  width: calc(100% - 0px) ; margin:30px 0%;  padding:15px; }
	
ul#main-menu li a{ color:#fff;}
#main-menu.open{transform: translateX(0);}
	

#block_latest-news{ padding:20px 0 50px 0;}

#lang ul{ margin:15px -15px 0 0; background:none}
#lang ul li{ margin: 0 0; background: none; } 
#lang ul li+li{ margin:0 0 0 10px}
	
.more-link a{ font-size: 16px; line-height: 24px; padding: 10px 50px 10px 30px;  }
.more-link a:hover{ padding: 10px 50px 10px 10px; }
	
.cd-top{ right:0; bottom:0;}
	
.slider-slogan{  bottom: 10%; }
.slider-slogan .slogan_text{ font-size: 1.45em;
  padding: 0.45em;
  line-height: 1.6em;
}
.breadcrumb__content{ margin:0}
.breadcrumb::after{ display:none}

.Block_A ul {  grid-template-columns: repeat(1, 1fr);  gap: 2%;}	
.template-A ul{   grid-template-columns: repeat(2, 1fr); gap: 2%; }
.template-B ul{   grid-template-columns: repeat(2, 1fr); gap: 2%; }
.template-C ul{   grid-template-columns: repeat(2, 1fr); gap: 2%; }

	
h1{ font-size:30px; line-height:38px;}
h2{ font-size:26px; line-height:34px;}
h3{ font-size:21px; line-height:30px;}
h4{ font-size:21px; line-height:30px;}
h5{ font-size:21px; line-height:30px;}
h6{ font-size:21px; line-height:30px;}

#block-sidebar-nav h2{ padding:	15px 0}
	
#main_content{width:100%}
#sidebar-nav{width:100%}
.view-more , .view-more2{ padding: 40px 0 0 0;}
	
.useful-links ul{
  grid-template-columns: repeat(2, 1fr); column-gap:
  gap: 10px;
} 
footer .copyright , footer .power{
  text-align: center;
  width: 100%; float: none;
}

#banner_mission .slick-dots {bottom: 10px !important;}

footer{ padding:30px 0}
.list-item .content {flex-direction: column;}
.list-item .content b { text-align: center}
	.contact_info { width: 100%; padding: 0 40px }
.contact_info ul li{ margin:0;justify-content: center;}
.contact_info ul li + li{  width:100%; }
.contact_info ul ul li + li{  width:auto; }
.contact_area::before{display:none}
	
.Block_A ul {
  grid-template-columns: repeat(1, 1fr);
  gap: 2%;
}	
.slider-slogan{  bottom: 10%; }
.slider-slogan .slogan_text{ font-size: 1.4em;
  padding: 0.25em;
  line-height: 1.6em;
}
#block-olivero-breadcrumbs{ margin-bottom:0}
.sitemap-item ul {grid-template-columns: repeat(1, 1fr); gap: 15px;}
	
	
.template-A ul{   grid-template-columns: repeat(1, 1fr); gap: 2%; display: list-item; padding-bottom: 50px; }
.template-B ul{   grid-template-columns: repeat(1, 1fr); gap: 2%; display: list-item; padding-bottom: 50px; }
.template-C ul{   grid-template-columns: repeat(1, 1fr); gap: 2%; display: list-item; padding-bottom: 50px; }

.news-card a{overflow: hidden;  display: block;}
	
.region--breadcrumb {margin:0; padding: 0;}

.breadcrumb__list { padding:0px; margin: 0;}
.breadcrumb{ margin:0 0 30px 0; padding:0px; }
.category ul li a {  padding: 5px 10px; font-size:1.1em;  margin: 0 10px;}
.category{ float:none ; text-align:  center;}
	

.banner_title h1{ padding:70px 0 ; margin:0; z-index:1 } 
.banner_title h1::before { left:-46%; width:50%; height:1px;  bottom:30px;     }
.banner_title::afterr{ background-size: 70% auto}

#nonbanner_title { background: url(../images/web/bg_news.png) no-repeat bottom center; }
#nonbanner_title h1{  padding:120px 0 30px 5% ; color:var(--main-color) ; text-shadow: 0 0 0; } 
#nonbanner_title h1::before {background: var(--main2-color); bottom:43px;}

.sch_highlights b{ font-size:17px; line-height: 21px; margin:0}
.sch_highlights ul li span, .sch_highlights .boxing { font-size:15px; padding:10px 0; }  
	
#block_latest-news::before { display:none}
.bg_whystcc .contents{ width:100%}
.bg_whystcc{ padding:20px 0;}
	
	
	
	.admissions_l {width: 100%;}	
	.admissions_r {width: 100%;padding: 0;}
	.accordion-container {		width: 100%; }
	.sponsoring_area {padding: 40px 0 70px 0;}
	.sponsoring_block { width: 100%; margin:0}
	.contact_area .screen {
		display: block;}
	.bottom_logo {border-right:none;margin-bottom: 30px;}
	
	
		
	.university ul {flex-wrap: wrap;}	
	.about_zwa {flex-wrap: wrap; gap:0}	
	.about_img {  flex: auto;  width: 100%;
}
	
	.university ul li {margin-bottom: 40px;}	
	#block_explore ul {max-width: 100%;flex-wrap: wrap;}
	#block_explore ul li	{margin-bottom: 50px;}
	 
	.contact_area .title {padding: 0 0 30px 0; text-align: center}
	.footer_hover {justify-content: center;  width: 100%;}
	.admissions_l {padding: 0 0px 0 0px;}
	

.swiper-slide .slide-slogan {

  height: 100px;
}
	
	
	.exam {justify-content: center;}


	 .sidebar-nav ul.metismenu {
    margin: 10px 0;
    padding: 8px;
    gap: 6px;
  }

  .sidebar-nav ul.metismenu li.menu-item {
    margin: 0;
    padding: 0;
  }

  .sidebar-nav ul.metismenu li.menu-item > a {
    margin: 0;
    padding: 8px 12px;
  }
}


@media screen and (max-width: 576px){
	.button_right {width: 40px;}
	.button_right ul li img {max-height: 20px;}
	.footer_hover {gap: 15px;margin-bottom: 10px;}
	.button_right{ display:none}
#lang {
  margin: 0px 0;
}
#header .screen {
  padding: 0px 0px;
}

.sidebar-nav {
    margin: 30px 0 0 0;
  }

  .mobile-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 14px 18px;
    background: #fff9f0;
    border: 1.5px solid #ecdac6;
    border-radius: 16px;
    font-size: 15px;
    font-weight: 600;
    color: #333;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.25s ease;
  }

  /* 點擊按鈕微縮反饋 */
  .mobile-menu-toggle:active {
    transform: scale(0.98);
  }

  /* 箭頭旋轉動畫 */
  .mobile-toggle-arrow {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-right: 2px solid #555;
    border-bottom: 2px solid #555;
    transform: rotate(45deg);
    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    margin-right: 10px;
  }

  .mobile-menu-toggle.is-open .mobile-toggle-arrow {
    transform: rotate(-135deg);
  }

  /* ================= 彈開動畫容器 (CSS Grid 零卡頓方案) ================= */
  .mobile-menu-wrapper {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    visibility: hidden; /* 收合時徹底不佔位、不可見 */
    transform: translateY(-10px) scale(0.98);
    transition: 
      grid-template-rows 0.4s cubic-bezier(0.16, 1, 0.3, 1),
      opacity 0.3s ease,
      transform 0.4s cubic-bezier(0.34, 1.3, 0.64, 1),
      visibility 0s linear 0.4s; /* 收合動畫跑完才隱藏 */
    overflow: hidden;
  }

  /* 展開狀態 */
  .mobile-menu-wrapper.is-open {
    grid-template-rows: 1fr;
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    transition: 
      grid-template-rows 0.4s cubic-bezier(0.16, 1, 0.3, 1),
      opacity 0.3s ease,
      transform 0.4s cubic-bezier(0.34, 1.3, 0.64, 1),
      visibility 0s linear 0s; /* 展開時立刻變可見 */
  }

  /* 內部選單主體：收合時不要有 margin 撐出吉位 */
  .sidebar-nav .metismenu {
    height: 0;
    overflow: hidden; /* 防止子元素撐出高度 */
    margin-top: 0;
    padding: 0 10px;
    background: #fff9f0;
    border-radius: 16px;
    border: 0px solid #f0e2d3;
    box-shadow: none;
    box-sizing: border-box;
    transition: margin-top 0.3s ease, padding 0.3s ease;
  }

  /* 展開時才套用邊距、padding 與邊框陰影 */
  .mobile-menu-wrapper.is-open .sidebar-nav .metismenu,
  .mobile-menu-wrapper.is-open .metismenu {
    margin-top: 10px; height: auto;
    padding: 10px;
    border: 1px solid #f0e2d3;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
  }

  .sidebar-nav .metismenu {
    min-height: 0;
    margin-top: 10px;
    padding: 10px;
    background: #fff9f0;
    border-radius: 16px;
    border: 1px solid #f0e2d3;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
    box-sizing: border-box;
  }

  .sidebar-nav .metismenu > li {
    display: block;
    position: static;
    width: 100%;
  }

  .sidebar-nav .metismenu > li:not(:last-child) {
    border-bottom: 1px dashed #ecdac6;
    margin-bottom: 4px;
    padding-bottom: 4px;
  }

  .sidebar-nav .metismenu a {
    display: block;
    width: 100%;
    padding: 12px 14px;
    font-size: 15px;
    color: #333;
    text-decoration: none;
    border-radius: 12px;
    white-space: normal;
    box-sizing: border-box;
  }

  .sidebar-nav .metismenu li.mm-active > a,
  .sidebar-nav .metismenu a.current {
    background: var(--main-color);
    color: #fff;
  }

  /* 手機版二級選單 */
  .sidebar-nav .metismenu li ul {
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    min-width: unset !important;
    box-shadow: none !important;
    background: rgba(0, 0, 0, 0.04) !important;
    border-radius: 10px;
    padding: 4px 8px !important;
    margin: 4px 0 !important;
    box-sizing: border-box;
  }

  .sidebar-nav .metismenu li ul li a {
    padding: 10px 12px;
    font-size: 14px;
    color: #555;
  }

  .sidebar-nav .metismenu li ul li.current > a,
  .sidebar-nav .metismenu li ul li.mm-active > a {
    background: var(--main-color);
    color: #fff;
  }
	
		.swiper-slide::before {top: 0;height:60px;bottom: 0;margin: auto;}
	#block-olivero-views-block-slideshow-block-1 .swiper::before {bottom: 20px;
  left: 20px;}
	
	#block-olivero-views-block-slideshow-block-1 .swiper::after {bottom: 20px;
  right: 20px;}
}