@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;500;700&display=swap');
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
@import url('https://fonts.googleapis.com/css?family=Roboto');
html {
	font-family: 'Inter', 'Noto Sans TC', sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

  

/**  slider top test **/
a { text-decoration:none;}
.national-parks-top{
height: 442px;
  position: relative;
  overflow: hidden;
  background-color: #FF6100;
  margin-top: 20px;}
.national-parks-top a.block{ display:}

.extra-copy-fluff
{
  text-align:center;
  margin:0 auto;
  padding: 15px 10% 15px;
  background: #FF6100;
  background: #111;
  font-size: 12px;
  color: #fff;
  display: none;
}

@media(min-width:768px)
{
  .extra-copy-fluff
  {
    padding: 20px 20% 20px;
    font-size: 21px;
    text-transform:uppercase;
  }

  .extra-copy-fluff p
  {
    max-width:600px;
    margin:0 auto;
  }
}

.cb-slideshow,
.cb-slideshow .banner_content h1,
.cb-slideshow .banner_content h2,
.cb-slideshow .banner_content h3,
.cb-slideshow:after {
    position: relative;
    width: 100%;
    height:110vh;
    min-height: 400px;
    top: 15px;
    left: 0px;
    z-index: 0;
    overflow:hidden;
    background:#FF5A00;
}

@media(min-width:992px)
{
  .cb-slideshow:after { 
      content: '';
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+40,0.66+100 */
  background: -moz-radial-gradient(center, ellipse cover,  rgba(0,0,0,0) 0%, rgba(0,0,0,0) 40%, rgba(0,0,0,0.66) 100%); /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 40%,rgba(0,0,0,0.66) 100%); /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 40%,rgba(0,0,0,0.66) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a8000000',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  width:100%;
  display:block;
  position:absolute;
  z-index:33;
  left:0;
  top:0;
  height: 100vh;
  min-height: 768px;
  }
}
.cb-slideshow .nat-park-logo
{
  position:absolute;
  z-index:50;
  top:40px;
  left:30px;
  width:96px;
  display:block;
}
.national-parks-top a.languege
{
  position:absolute;
  z-index:50;
  line-height:40px;
  top:30px;
  right:30px;
  width:96px;
  display:block;
  color:#fff;
  padding-left:50px;
  background:url(../images/lang.png) no-repeat left center;
}
.cb-slideshow .banner_content{
	position:relative;
	width:90%;
	margin:150px auto 0 auto;
	color:#fff;
	text-align:center !important;
	font-weight:bold;
	}
.cb-slideshow .banner_content h1{
font-size:40px;
font-family: 'Inter', 'Noto Sans TC', sans-serif;
line-height:66px;

	}
.cb-slideshow .banner_content h2{
	width:100%;
font-size:90px;
font-family:'Roboto', sans-serif;
display: block;
margin:auto;
text-align:center !important;
	}
.cb-slideshow .banner_content h3{
font-size:40px;
display: block;
margin:50px 0 50px;

}
@media(min-width:1480px){
	.cb-slideshow .banner_content h3{
font-size:40px;
display: block;
margin:50px 10px;
text-align:center !important;
	}
.cb-slideshow .banner_content h3:before, .cb-slideshow .banner_content h3:after{
	content:'';
	display:block;
	border-top:1px #fff solid;
	width:100px;
	display: inline-block;
	vertical-align:top;
	margin:25px 15px 0;
	}
	}
	
.cb-slideshow a{display:block !important; color:#fff;}
.cb-slideshow .button
{
  position:relative;
  z-index:10;
  display:block;
  text-align:center;
  padding:12.5px;
  border:2px solid #fff;
  border-radius:3px;
  max-width:250px;
  margin:0px auto 30px;
  font-family: 'Inter', 'Noto Sans TC', sans-serif;
  font-weight:bold;
  color:#fff;
  font-size:24px;
  text-decoration:none;
  transition:all ease-out 0.33s;
}

.cb-slideshow:hover .button
  {
    background:#00a1df;
    border-color:#00a1df;
    box-shadow:2px 2px 10px -1px rgba(0,0,0,.66);
   
  }
.cb-slideshow .button:hover
  {
    background:#00a1df;
    border-color:#00a1df;
    box-shadow:2px 2px 10px -1px rgba(0,0,0,.66);
   
  }
@media(min-width:992px)
{
 .cb-slideshow .button
 {
   margin-bottom:80px;
  }
  
}

.cb-slideshow li{ list-style:none;}
.cb-slideshow li span { 
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position:50% 25%;
    background-repeat: none;
    opacity: 0;
    z-index: 0;
  -webkit-backface-visibility: hidden;
    -webkit-animation: imageAnimation 40s linear infinite 0s;
    -moz-animation: imageAnimation 40s linear infinite 0s;
    -o-animation: imageAnimation 40s linear infinite 0s;
    -ms-animation: imageAnimation 40s linear infinite 0s;
    animation: imageAnimation 40s linear infinite 0s; 
}


.cb-slideshow li:nth-child(1) span { 
    background-image: url(../images/n1.png) ;
}
.cb-slideshow li:nth-child(2) span { 
    background-image: url(../images/n2.png);
    -webkit-animation-delay: 10s;
    -moz-animation-delay: 10s;
    -o-animation-delay: 10s;
    -ms-animation-delay: 10s;
    animation-delay: 10s; 
}
.cb-slideshow li:nth-child(3) span { 
    background-image: url(../images/n3.png);
    -webkit-animation-delay: 20s;
    -moz-animation-delay: 20s;
    -o-animation-delay: 20s;
    -ms-animation-delay: 20s;
    animation-delay: 20s; 
}
.cb-slideshow li:nth-child(4) span { 
    background-image: url(../images/n4.png);
    -webkit-animation-delay: 30s;
    -moz-animation-delay: 30s;
    -o-animation-delay: 30s;
    -ms-animation-delay: 30s;
    animation-delay: 30s; 
}
/*-------------------手機--------------------------*/
@media(max-width:480px){
img.nat-park-badge{
	max-width:60px;
	}
.cb-slideshow .banner_content{
	width:90%;
	margin:90px auto 0 auto;
	}
.cb-slideshow .banner_content h1{
font-size:26px;
line-height:1;
	}
.cb-slideshow .banner_content h2{
font-size:45px;
	}
.cb-slideshow .banner_content h3{
font-size:26px;
}
.cb-slideshow .button
{
   background:#00a1df;
    border-color:#00a1df;
}

.cb-slideshow li:nth-child(1) span { 
    background-image: url(../images/image-01-s.jpg?t=680) ;
}
.cb-slideshow li:nth-child(2) span { 
    background-image: url(../images/image-02-s.jpg?t=680) ;
}
.cb-slideshow li:nth-child(3) span { 
    background-image: url(../images/image-03-s.jpg?t=680) ;
}
.cb-slideshow li:nth-child(4) span { 
    background-image: url(../images/image-04-s.jpg?t=680) ;
	}
}



/* Animation for the slideshow images */
@-webkit-keyframes imageAnimation { 
   0% { opacity: 0;
    -ms-animation-timing-function: ease-in; }
    10% { opacity: 1;
         -ms-animation-timing-function: ease-out;
         -webkit-transform: scale(1.05) translate(1.5%, 1);
      }
    20% { opacity: 1; 
          -webkit-transform: scale(1.15) translate(3%, 2%);
        }
    30% { opacity: 0;
          -webkit-transform: scale(1.2) translate(4%, 2.5%)
         }
    100% { opacity: 0 }
}
@-moz-keyframes imageAnimation { 
    0% { opacity: 0;
    -ms-animation-timing-function: ease-in; }
    10% { opacity: 1;
         -ms-animation-timing-function: ease-out;
         -webkit-transform: scale(1.05) translate(1.5%, 1);
      }
    20% { opacity: 1; 
          -webkit-transform: scale(1.15) translate(3%, 2%);
        }
    30% { opacity: 0;
          -webkit-transform: scale(1.2) translate(4%, 2.5%)
         }
    100% { opacity: 0 }
}
@-o-keyframes imageAnimation { 
    0% { opacity: 0;
    -ms-animation-timing-function: ease-in; }
    10% { opacity: 1;
         -ms-animation-timing-function: ease-out;
         -webkit-transform: scale(1.05) translate(1.5%, 1);
      }
    20% { opacity: 1; 
          -webkit-transform: scale(1.15) translate(3%, 2%);
        }
    30% { opacity: 0;
          -webkit-transform: scale(1.2) translate(4%, 2.5%)
         }
    100% { opacity: 0 }
}
@-ms-keyframes imageAnimation { 
   0% { opacity: 0;
    -ms-animation-timing-function: ease-in; }
    10% { opacity: 1;
         -ms-animation-timing-function: ease-out;
         -webkit-transform: scale(1.05) translate(1.5%, 1);
      }
    20% { opacity: 1; 
          -webkit-transform: scale(1.15) translate(3%, 2%);
        }
    30% { opacity: 0;
          -webkit-transform: scale(1.2) translate(4%, 2.5%)
         }
    100% { opacity: 0 }
}
@keyframes imageAnimation { 
    0% { opacity: 0;
    -ms-animation-timing-function: ease-in; }
    10% { opacity: 1;
         -ms-animation-timing-function: ease-out;
         -webkit-transform: scale(1.05) translate(1.5%, 1);
      }
    20% { opacity: 1; 
          -webkit-transform: scale(1.15) translate(3%, 2%);
        }
    30% { opacity: 0;
          -webkit-transform: scale(1.2) translate(4%, 2.5%)
         }
    100% { opacity: 0 }
}


/* Show at least something when animations not supported */
.no-cssanimations .cb-slideshow li span{
  opacity: 1;
}

/*=========第2區=======*/
.contanier{
	width:1000px;
	margin:auto;
	padding:0;
	line-height:1.8;
	}
.zone2{
	color:#333;
	padding:60px 0;
	}
.contanier h2{
	font-size:42px;
	}
.zone2 p{
	font-size:20px;
	}
.zone2 li {
  font-size: 20px;
        }
.zone2 p.discript{
	font-size:20px;
	font-weight:bold;
	}
.zone2 p.discript_en{
	font-size:20px;
	font-weight:normal;
	}
.textcenter{text-align:left;}
/*=========第3區=======*/
.zone3{
	background-color:#e5e5e5;
	padding:60px 0;
	}


/*=========TAG=======*/
#abgne-block {
	width:900px;
	min-width:240px;
	}
	#abgne-block ul, #abgne-block li {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	#abgne-block .tabs li {
		float: left;
		margin: 0 0 0 5px;
		/*border: 1px solid #ddd;  */
		border:none;
		width:215px;
		height:180px;
		cursor: pointer;
		border-radius: 5px;
	}
	#abgne-block .tabs li img{
		width:120px;
		margin:auto;
		display: block;
		}
	#abgne-block .tabs li.active {
		background: #d7d7d7;
		padding-bottom: 1px;
		border-bottom: none;
	}
	#abgne-block .tabs li.hover{
		background: #d7d7d7; 
	}
	#abgne-block .tabs span {
		display: block;
		width:100%;
		font-size:24px;
		text-align:center;
		overflow: hidden;
	}
	#abgne-block .tab_container {
		clear: both;
		/*border: 1px solid #DDD; */
		border-radius: 5px;
		font-size:16px;
	}
	#abgne-block .tab_container ul {
		position: relative;
		min-height: 450px;
		overflow: hidden;
	}
	#abgne-block .tab_container .tab_content li.no {
		position: absolute;
		width:95%;
		height: 100%;
		padding: 15px;
		margin: 10px auto;
	}
	#abgne-block .tab_container .tab_content li.no img {
		display: block;
		float: left;
		margin-right: 15px;
	}
	#abgne-block .tab_container .tab_content li.no h3 {
		font-size: 22px;
		line-height: 22px;
		margin: 5px 0 15px;
		color:#999;
		font-family: 'Inter', 'Noto Sans TC', sans-serif;
	}
	.tab_content ol{ margin-left:20px;}
	.tab_content ol li{
		list-style-type:decimal !important;
		line-height:1.8rem;
		}
		
		
	
footer {
	width:100%;
	border-top:1px #b5b5b5 solid;
	padding:50px 0;
	}
footer ul{
	width:700px;
	display:block;
	margin:auto;
	}
footer ul li{
	display:inline-block;
	width:250px;
	margin:auto;
	margin-left:30px;
	}
	
@media(max-width:480px){
	.contanier{
	width:90%;
	}
	.contanier h2{
	font-size:24px;
	}
.zone2 p{
	font-size:18px;
	padding:15px;
	}
.zone2 p.discript{
	font-size:16px;
	font-weight:bold;
	}
.zone2 p.discript_en{
	font-size:16px;
	font-weight:normal;
	}

#abgne-block {
	width:100%;
	min-width:240px;
	}
	#abgne-block .tabs{ }
	#abgne-block .tabs li {
		float: left;
		width:23.3%;
		height:130px;
		margin:20px 0.4%;
		border-radius:0;
		border:none;
	}
	#abgne-block .tabs li img{ max-width:90%;}
	#abgne-block .tabs span {
		font-size:16px;
	}
	#abgne-block .tab_container ul {
		min-height: 600px;
	}
	
	#abgne-block .tab_container .tab_content li.no {
		position: absolute;
	}
	.tab_content ol{ margin-left:0px;}
	
footer ul{
	width:90%;
	}
footer ul li{
	display:inline-block;
	width:40%;
	margin-left:5%;
	}
footer ul li img{
	max-width:100px;
	}
		}	
		
		



/* ===== Top Menu Bar ===== */
.top-menu-bar {
  background-color: #FF6100;
  height: 25px;
  padding: 0 30px;
  align-items: center;
  width: 100%;
  color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 30;
  z-index: 9999;
  display: flex;
  justify-content: flex-end;
  padding: 10px 30px;
  gap: 20px;
  font-size: 16px;
}

.top-menu-bar a {
  color: #fff;
  text-decoration: none;
  font-weight: bold;
}

.top-menu-bar a:hover {
  text-decoration: underline;
}

.cb-slideshow .banner_content h1,
.cb-slideshow .banner_content h2,
.cb-slideshow .banner_content h3 {
    color: white !important;
}

.hero-banner {
  display: flex;
  height: 100%;
  background: #FF6100;
  color: white;
  align-items: center;
  justify-content: center;
  position: relative;
}
.hero-carousel {
  flex: 0 0 auto;
  position: relative;
  width: 442px;
  height: 100%;
  margin-left: 160px;
  overflow: hidden;
}
.hero-carousel .carousel-image {
  position: absolute;
  width: 100%;
  height: auto;
  object-fit: cover;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}
.hero-carousel .carousel-image.active {
  opacity: 1;
}
.hero-text {
  flex: 1;
  padding: 20px 50px;
  color: white;
}
.hero-text h1,
.hero-text h2,
.hero-text h3 {
  color: white;
  margin: 10px 0;
}
.hero-text h1 { font-size: 48px; }
.hero-text h2 { font-size: 36px; }
.hero-text h3 { font-size: 24px; }
.hero-text .button {
  display: inline-block;
  margin-top: 20px;
  padding: 12px 24px;
  background-color: white;
  color: #FF5A00;
  font-weight: bold;
  border-radius: 5px;
  text-decoration: none;
}
.zone2 h2, .zone3 h2 {
  color: #FF5A00 !important;
}

/* ----------- RWD for hero banner and menu ---------- */
@media (max-width: 768px) {
  .top-menu-bar {
  background-color: #FF6100;
  height: 25px;
  padding: 0 30px;
  align-items: center;
    flex-direction: column;
    align-items: flex-start;
    padding: 10px 20px;
    font-size: 14px;
  }

  .hero-banner {
    flex-direction: column;
    height: auto;
    padding: 20px 0;
    margin-top: 60px;
  }

  .hero-carousel {
    width: 80%;
    height: auto;
    margin: 0 auto 20px;
  }

  .hero-carousel .carousel-image {
    position: relative;
    width: 100%;
    height: auto;
  }

  .hero-text {
    text-align: center;
    padding: 0 20px;
  }

  .hero-text h1 { font-size: 32px; }
  .hero-text h2 { font-size: 24px; }
  .hero-text h3 { font-size: 18px; }
  .hero-text .button {
    font-size: 16px;
    padding: 10px 20px;
  }

  #abgne-block .tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  #abgne-block .tabs li {
    width: 45%;
    margin: 10px;
    height: 120px;
  }

  .zone2, .zone3 {
    padding: 30px 10px;
  }

  .zone2 h2, .zone3 h2 {
    font-size: 22px;
    text-align: center;
  }

  .zone2 p, .zone3 p {
    font-size: 16px;
    padding: 10px;
  }

  footer {
    padding: 20px 10px;
  }

  footer img {
    height: 80px;
  }
}

@media (max-width: 768px) {
  /* ✅ 修正 top-menu-bar 選項橫向排列 */
  .top-menu-bar {
  background-color: #FF6100;
  height: 25px;
  padding: 0 30px;
  align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 14px;
    padding: 10px;
    gap: 10px;
  }

  /* ✅ 修正 hero-banner 保持橫向排版 */
  .hero-banner {
    flex-direction: row;
    flex-wrap: wrap;
    height: 442px;
    padding: 0;
    margin-top: 60px;
  }

  .hero-carousel {
    width: 442px;
    height: 100%;
    margin: 0;
  }

  .hero-carousel .carousel-image {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
  }

  .hero-text {
    flex: 1;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .hero-text h1 { font-size: 28px; }
  .hero-text h2 { font-size: 20px; }
  .hero-text h3 { font-size: 16px; }
  .hero-text .button {
    font-size: 14px;
    padding: 8px 16px;
    align-self: start;
  }
}

  .color-part {
            color: black;
        }
  .color-part2 {
            color: orange;
        }
.top-menu-bar img {
  height: 20px;
  margin: 2.5px 1px 2.5px 1px;
}


ul li {
  font-size: 16px;
  margin-left: 0.1em;
}


@media (max-width: 768px) {
  ul li {
    font-size: 16px;
    margin-left: 1.2em;
  }
}


.container p,
.container li {
  font-size: 15px;
  line-height: 1.8;
}


@media (max-width: 768px) {
  .container p,
  .container li {
    font-size: 15px;
    line-height: 1.8;
  }
}


body, p, li, h1, h2, h3, h4, h5, h6, a, span, strong, b {
  font-weight: normal !important;
}
/* 自訂段落符號為橘色圓點，並對齊段首文字 */
p.discript {
  position: relative;
  padding-left: 1.2em;
  text-indent: -1.2em;
}

p.discript_en {
  position: relative;
  padding-left: 1.2em;
  text-indent: -1.2em;
}


p.discript .color-part2 {
  display: inline-block;
  color: #FF6100;
  font-weight: normal;
  width: 1.2em;
}

/* 手機版斷行與縮排一致 */
@media (max-width: 768px) {
  p.discript {
    padding-left: 1.2em;
    text-indent: -1.2em;
  }
  
  p.discript_en {
    padding-left: 1.2em;
    text-indent: -1.2em;
  }

  p.discript .color-part2 {
    width: 1.2em;
  }
}

@media (max-width: 768px) {
  .tabs {
    display: flex;
    flex-direction: column;
    gap: 20px; /* 增加圖示間距 */
    align-items: flex-start;
  }

  .tabs li {
    width: 100%;
  }

  .tabs li img {
    max-width: 100%;
    height: auto;
  }

  .tab_container {
    min-height: 800px; /* 增加內容容納區域高度 */
    padding-bottom: 30px;
  }
}

@media (max-width: 768px) {
  .tab_container {
    min-height: auto !important;
    height: auto !important;
    padding-bottom: 80px; /* 增加底部空間避免最後項目被遮 */
    overflow: visible !important;
    min-height: 750px; /* 增加內容容納區域高度 */
    height: 750px !important;
  }

  .tab_content {
    overflow: visible !important;
    height: auto !important;
  }

  .tab_content li {
    display: block;
    height: auto !important;
  }
}

@media (max-width: 768px) {
  .zone2 {
    margin-top: 20px;
  }
}
/* =======================  新增：手機只允許垂直捲動、禁止整頁橫向滑動  ======================= */
@media (max-width: 768px) {
  html, body {
    overflow-x: hidden !important;
    width: 100%;
  }
  #abgne-block,
  .tab_container,
  .tabs,
  .tab_content {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }
}

/* =======================  新增：手機 .tabs 四圖示橫列且縮小（不需要橫向滑動） ======================= */
@media (max-width: 768px) {
  ul.tabs{
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 0 6px !important;
    margin: 10px 0 !important;
  }
  ul.tabs li{
    flex: 0 0 23% !important;
    width: 23% !important;
    margin: 0 !important;
    height: auto !important;
    text-align: center !important;
  }
  ul.tabs li span{
    display: block !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    margin-top: 4px !important;
    white-space: nowrap !important;
  }
  ul.tabs li img{
    display: block !important;
    max-width: 60% !important;
    height: auto !important;
    margin: 0 auto 4px !important;
  }
}

/* =======================  新增：平板（768–1024px） 同步套用上述三項修改  ======================= */
@media (min-width: 769px) and (max-width: 1024px) {
  /* 1) 只允許垂直捲動 */
  html, body {
    overflow-x: hidden !important;
    width: 100%;
  }
  #abgne-block,
  .tab_container,
  .tabs,
  .tab_content {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  /* 2) footer logo 縮小 10%（與手機一致 90px） */
  footer ul li img{
    max-width: 90px !important;
    height: auto !important;
  }

  /* 3) .tabs 四圖示橫列顯示（無需橫向滑動） */
  ul.tabs{
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 0 8px !important;
    margin: 12px 0 !important;
  }
  ul.tabs li{
    flex: 0 0 23% !important;
    width: 23% !important;
    margin: 0 !important;
    height: auto !important;
    text-align: center !important;
  }
  ul.tabs li img{
    display: block !important;
    max-width: 60% !important;
    height: auto !important;
    margin: 0 auto 6px !important;
  }
  ul.tabs li span{
    display: block !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
  }
}
@media (max-width: 1024px) {
  .tab_container ol {
    list-style: decimal !important; /* 確保使用數字編號 */
    padding-left: 1.5em; /* 預留數字空間 */
  }

  .tab_container ol li {
    display: list-item !important; /* 確保 li 顯示成清單項目 */
    list-style-position: outside;  /* 數字在文字外側 */
  }
}


@media (max-width: 768px), (min-width: 769px) and (max-width: 1024px) {
  ul.tabs {
    display: flex !important;
    flex-direction: row !important;     /* 直接蓋掉前面 column 的設定 */
    flex-wrap: nowrap !important;       /* 一列到底，不換行 */
    justify-content: space-between !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 0 6px !important;
    margin: 10px 0 !important;
    overflow-x: hidden !important;
  }
  ul.tabs li {
    flex: 0 0 24% !important;           /* 四等分 */
    width: 24% !important;
    max-width: 24% !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    list-style: none !important;
    text-align: center !important;
    box-sizing: border-box !important;
    float: none !important;             /* 移除舊 float 影響 */
  }
  ul.tabs li img {
    display: block !important;
    width: 70% !important;
    max-width: 70% !important;
    height: auto !important;
    margin: 0 auto 4px !important;
  }
  ul.tabs li span {
    display: block !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    margin-top: 4px !important;
  }
}
@media (max-width: 768px) {
  .hero-banner { flex-direction: row; height: 442px; }
  .hero-carousel { position: relative; width: 442px; height: 100%; overflow: hidden; }
  .hero-carousel .carousel-image {
    position: absolute !important;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1.5s ease-in-out;
    will-change: opacity;
  }
  .hero-carousel .carousel-image.active { opacity: 1; }
}