/*
Theme Name: hkjokgu
Theme URI: hkjokgu.org
Author: chris kwan
Author URI: hkjokgu.org
Description: hkjokgu總會官網
Version: 1.6
License: GNU General Public License v2 or later
License URI: www.gnu.org
Text Domain: hkjokgu
*/

/*home page start*/



nav a{
  text-decoration: none;
  color: white;

}
nav img.icon{
    width: 150px;
}
nav {
  background-color: #0d1773;
}
nav span p.title-chinese{
    width: 100%;
    font-size: 30px;
    vertical-align: middle;
    text-overflow: ellipsis;
    padding-top: 30px;
    padding-left: 0px;
    padding-right: 30px;
    padding-bottom: 0px;
    color: #ffffff;
}
nav span p{
          font-size: 30px;
}
a.nav-link {
  font-size: 30px;
  color: #ffffff;
}
span.navbar-toggler-icon{
  background-color: white;
}

.nav-item{
  font-size: 28px;
}
/*手機header*/
@media (max-width: 991px) {
.icon {
  margin-left: 125px;
  }
.navbar-toggler-icon{
    margin-left: 169px;
  }
nav span p.title-chinese{
    width: 100%;
    font-size: 27px;
    vertical-align: middle;
    text-overflow: ellipsis;
    padding-top: 30px;
    padding-left: 58px;
    padding-right: 30px;
    padding-bottom: 0px;
    color: #ffffff;
  }
p.title-english{
    padding-left: 29px;
}
p.title-english2{
    padding-left: 20px;
}
}

img{
max-width: 100%;
}
video{
  max-width: 100%;
}



h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Sans TC", sans-serif;
}

p,a ,input,label,textarea,span,ul,li{
  font-family: "Open Sans", sans-serif;
}

footer .col-md-6 img {
width: 60px;
}
footer .col-md-6 span{
font-size: 30px;
}
footer a {
    color: black;
}

@media (max-width: 991px) {
  footer .col-md-6 img {
    width: 60px;
  }
  footer .col-md-6 span{
    font-size: 26px;
  }
  footer h5{
      font-size: 24px;
  }
  footer h3{
      text-align: center;
      margin-bottom: 40px;
  }
    
}
    

/* 1. 統一容器與圖片高度 */
#intro .carousel-item {
    height: 80vh;      /* 佔據螢幕高度的 80%，這比固定 950px 更靈活 */
    min-height: 450px; /* 確保手機版不會縮得太小 */
    background-color: #000;
}

#intro .carousel-item img {
    height: 100%;
    width: 100%;
    object-fit: cover;    /* 核心：圖片會自動填滿並裁切，不再一大一小 */
    object-position: center; 
}

/* 2. 覆蓋層優化 */
#intro .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

/* 3. 文字定位（關鍵修改） */
#intro .carousel-caption {
    z-index: 2;
    top: 70%;            /* 定位在垂直中央 */
    transform: translateY(-50%); /* 完美的垂直居中技巧 */
    bottom: auto;        /* 抵消 Bootstrap 預設的 bottom */
    text-align: center;
}
button.carousel-control-next, button.carousel-control-prev{
  width: 7%;
  background-color: rgba(128, 128, 128, 0.726);
}
#intro .carousel-p1-subtitle{
    font-size: 60px;
}
#intro .carousel-p1-title{
    font-size: 75px;
}
#intro .carousel-p4-subtitle{
    font-size: 40px;
}
#intro .carousel-p4-title{
    font-size: 50px;
}
#intro h2{
    font-size: 45px;
    font-weight: 500;
    color: #ffffff;
}
#intro h1{
  font-size: 50px;
  font-weight: 500;
  font-weight: bold;
  color: #ffffff;
}
/*手機版專屬調整 */
/* 確保所有新創建的 col 內圖片都不會變形 */
.d-block d-lg-none img,.d-block d-lg-none video  {
    height: auto !important;
    max-width: 100%;
}
@media (max-width: 991px) {
    /* 1. 調整輪播圖高度，避免圖片過扁 */
    #intro .carousel-item {
        height: 50vh !important; 
        min-height: 350px;
    }

    /* 2. 重新定義標題字體，解決你之前看到的「奇怪」問題 */
    #intro .carousel-caption {
        width: 90%;
        left: 5%;
        padding-bottom: 20px;
    }

    #intro .carousel-caption h1 {
        font-size: 1.8rem !important; /* 覆蓋 inline style */
        line-height: 1.3;
        text-shadow: 2px 2px 4px rgba(0,0,0,0.8); /* 增加陰影確保文字清晰 */
    }

    #intro .carousel-caption h2 {
        font-size: 1.1rem !important;
        font-weight: 300;
    }
}

#promote-training{
    background-image: url('img/2.png');
    background-size: cover; 
    background-position: center; 
    background-blend-mode: overlay; 
    position: relative;
  padding-top: 80px;
}
.col-md-12 .col-md-6 .col-md-4{
  padding: 0px;
}



#promote-training h3{
 line-height: 1.5;
 margin-bottom: 40px;
}

#promote-training-img {
    width: 100%;
    height: 79%;
}
#promote-training-gif {
padding-top: 21px;
padding-bottom: 42px;
height: 90%;
}

#promote-team{
    background-image: url('img/2.png');
    background-size: cover; 
    background-position: center; 
    background-blend-mode: overlay; 
    position: relative;
      padding-top: 80px;
      padding-bottom: 80px;
}

#promote-team h3{
 line-height: 1.5;
 margin-bottom: 40px;
}

#promote-team img {
 width: 100%;
 height: 90%;
}

#promote-team video {
padding-top: 25px;
width: 90%
}

#club-intro-img{
    background-image: url("img/club-intro-img.jpg");
        background-color: rgba(0, 0, 0, 0.5);
        background-blend-mode: overlay; 
    height: 1000px; 
    background-attachment: fixed; 
    background-position: center; 
    background-repeat: no-repeat; 
    background-size: cover; 
    padding-bottom: 80px;
}


#club-intro-img .col-md-5 {
    height: 1000px; 
    padding: 20px; 
}

#club-intro-img h2{
  width: 100%;
  font-size: 85px;
  font-weight: 1000;
  font-weight: bold;
  padding: 30px;
  line-height: 1000px;
  color: white;
  padding: 10px;
  overflow-wrap: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
}

#club-intro{
  padding: 80px;
}

.club-intro-icon{
  width: 440px;
  text-align: center;
}
.club-intro-text{
  background-color: #FFFFFF73;
    margin: 00px 00px 00px 00px;
    padding: 40px 40px 20px 40px;
    border-radius: 20px 20px 20px 20px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}
.club-intro-text h3{
    width: 100%;
    overflow-wrap: break-word;
    text-overflow: ellipsis;

  }

  
#club-class-list {
  background-image: url('img/5564526.jpg');
  background-size: cover;
}

#club-class-list .container{
  background-color: rgb(80, 97, 122);
}
#club-class-list-mobile {
  background-image: url('img/5564526.jpg');
  background-size: cover;
}

#club-class-list-mobile .container{
  background-color: rgb(80, 97, 122);
}
#club-class-list #img .col-md-4{
  border: 1.5px solid black; 
}

#club-class-list h4{
    padding: 10px;
    color: aliceblue;
    border: 1px solid  yellow;
}

#club-class-list h5{
    padding: 10px;
    color: aliceblue;
}

#club-class-list-mobile  h4{
    padding: 10px;
    color: aliceblue;
    border: 1px solid  yellow;
}
#club-class-list-mobile .custom-underline{
    display: inline-block;      /* 讓底線長度跟隨文字長度，而非滿版 */
    border-bottom: 2px solid #000; /* 底線粗細與顏色 */
    padding-bottom: 5px;        /* 文字與底線之間的間距 */
    margin-bottom: 15px;        /* 底線與下方內容的間距 */
}

#club-class-list #left-img1{
    padding-top: 200px;
}
#club-class-list #mid-img1{
    padding: 10px;
}
#club-class-list #right-img1{
    padding: 10px;
}

#club-class-list #left-img2{
    padding-top: 200px;
}
#club-class-list #mid-img2{
    padding: 10px;
}
#club-class-list #right-img2{
    padding-top: 200px;
}

#Sponsor #carouselExampleControls{
    max-height: 350px;
}
#Sponsor span{
  background-color: black;
}

/* 手機版專屬調整 contact-us*/
#contact-us-mobile{
    background-image: url("img/intro_background2.jpg");
    background-color: rgba(0, 0, 0, 0.5);
    background-position: 40% center;
    background-blend-mode: overlay; /* 讓背景圖變暗，字才清晰 */
    background-size: cover;
    color: rgb(214, 177, 13);
    padding: 40px 0;
}
#contact-us-mobile h2 {
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 20px;
    white-space: normal; /* 確保長標題會換行 */
}
#contact-us-mobile button {
      background-color: #FFA500; /* 按鈕背景顏色 */
      color: white; /* 按鈕文字顏色 */
      padding: 15px 30px; /* 按鈕內邊距 */
      border: none; /* 無邊框 */
      border-radius: 5px; /* 圓角 */
      font-size: 15px; /* 字體大小 */
      cursor: pointer; /* 鼠標指針樣式 */
      transition: background-color 0.3s; /* 漸變效果 */
      margin-right: 10px;
  }
#contact-us-mobile  button:hover {
      background-color: #00ff88b9; /* 懸停時的背景顏色 */
  }
#contact-us-mobile #fb-logo, #contact-us-mobile #ig-logo,#contact-us-mobile #yt-logo {
    width: 15%;
}
/* 手機版專屬調整 contact-us 結束*/
#contact-us{
    background-image: url("img/intro_background2.jpg");
    background-color: rgba(0, 0, 0, 0.5);
     background-blend-mode: overlay; 
    height: 1000px; 
    background-attachment: fixed; 
    background-position: center; 
    background-repeat: no-repeat; 
    background-size: cover; 
}
#contact-us .col-md-12 {
    height: 1000px; 
    padding: 20px; 
}
#contact-us h2{
  position: relative;
  position: relative;
  font-size: 85px;
  font-weight: bold;
  color: rgb(214, 177, 13);
  line-height: 1000px;
  padding: 10px;
  overflow-wrap: break-word;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
#contact-us .upper{
    position: relative;
}
#contact-us .lower{
    position: absolute;
    top: 615px;
    left: 110px;
}

#contact-us #icon{
  width: 18%;
}
#contact-us .lower button {
      background-color: #FFA500; /* 按鈕背景顏色 */
      color: white; /* 按鈕文字顏色 */
      padding: 15px 30px; /* 按鈕內邊距 */
      border: none; /* 無邊框 */
      border-radius: 5px; /* 圓角 */
      font-size: 25px; /* 字體大小 */
      cursor: pointer; /* 鼠標指針樣式 */
      transition: background-color 0.3s; /* 漸變效果 */
      margin-right: 10px;
  }
#contact-us .lower button:hover {
      background-color: #00ff88b9; /* 懸停時的背景顏色 */
  }
#contact-us #fb-logo{
  width: 80px;
  margin-right: 10px;
}
#contact-us #ig-logo{
  width: 95px;
  margin-right: 10px;
}
#contact-us #yt-logo{
  width: 115px;
}

#Cooperating-institutions #img2{
  padding-top: 100px;
}
#Cooperating-institutions #img1{
    padding-top: 76px;
}

footer{
   background-color: rgb(129, 135, 218);
}

/*home page end*/
/*club background page start*/
#club-background {
    padding-top: 80px;
}
#club-background p{
  font-size: 24px;
  font: bold;
  padding-top: 20px;
}
#jokgu-intro{
  padding-top: 80px;
}
#jokgu-intro p{
  font-size: 24px;
  font: bold;
}
#jokgu-intro img{
  padding-top: 10px;
}
/*club background page end*/

/*club structure page start*/
#international-member{
    padding-top: 80px;
    padding-bottom: 80px;
  }
  /*club structure page end*/

  /*ContactUs page start*/
#contact-us-text span{
  font-size: 40px;
}
#contact-us-text img{
  width: 100px;
}
@media (max-width: 991px){
    #contact-us-text-mobile img{
        width: 60%; 
        height: auto;
    }
    #contact-us-text-mobile span{
       font-size: 56px;
       word-wrap: break-word;
        display: block;
        margin-top: 10px;
    }
}
/*ContactUs page end*/

/*how to play page start*/
#how-to-play{
  padding-bottom: 80px;
}
#how-to-play .col-md-6{
  padding: 40px;
  border: 1px solid black;
    background-color: rgb(206, 226, 255);
}
#competition-sample{
  padding-bottom: 80px;
}
#jokgu-skill{
  padding-bottom: 80px;
}
#jokgu-skill .col-md-4{
  position: relative;
  padding: 10px;
}
#jokgu-skill .inner-text{
  position: absolute;
    top: 246px;
    left: 165px;
}
#jokgu-skill h5{
  color: #ff4b4b;
  font: bold;
}
@media (max-width: 991px){
    #how-to-play h2{
        text-align: center;
    }
}
/*how to play page end*/

/*hongkong team page start*/
#competition{
    padding-bottom: 80px;
}
#competition .col-md-6{  
    border: 1px solid black;
    background-color: rgb(206, 226, 255);
}
/*hongkong team page END*/
/*train-class team page start*/
#train-class{
    padding-bottom: 80px;  
}
#train-class-title.col-md-12{
    border: 1px solid black;
    background-color: rgb(206, 226, 255);
  }
#train-class-body.col-md-12{
    border: 1px solid black;
    background-color: rgb(206, 226, 255);
  }
/*train-class team page END*/
/*coach-class   team page start*/
#coach-class .col-md-6{  
    border: 1px solid black;
    background-color: rgb(206, 226, 255);
}
#coach-class{
    padding-bottom: 80px;  
}
/*equipmen page start*/
#equipment{
      padding-bottom: 80px;  
}
#equipment .col-md-6, #equipment .col-md-12{  
    border: 1px solid black;
    background-color: rgb(206, 226, 255);
}
#Cooperating-institutions{
        padding-bottom: 80px;  
}
/*Sponsors  page start*/
#sponsors{
      padding-bottom: 80px;  
}
@media (max-width: 991px) {
    #sponsors {
        padding-bottom: 40px; /* 這裡會覆蓋上面的 80px */
    }
}
#sponsors #title h1{
  padding-bottom: 120px;  
}
#sponsors .col-md-6{  
    border: 1px solid black;
    background-color: rgb(206, 226, 255);
}
#sponsors .next-table{
    padding-top: 120px;  
}
#sponsors{
        padding-bottom: 80px;  
}

/* 強制修正：手機模式下不准有東西撐開寬度 */
@media (max-width: 991px) {
    html, body {
        overflow-x: hidden; /* 禁止橫向捲動 */
        width: 100%;
    }
    
/* 修正手機版標題 */
    #club-intro-img h2, 
    #club-intro-img-mobile h2, 
    #contact-us h2 {
        white-space: normal !important; /* 允許換行 */
        line-height: 1.5 !important;    /* 恢復正常的行高，不要用 1000px */
        font-size: 32px !important;     /* 手機版適合的大小 */
        text-align: center;
        padding: 50px 20px !important;  /* 用 padding 來撐開上下空間 */
    }

    #club-intro-img-mobile {
        height: auto !important; 
        min-height: 300px;
        background-attachment: scroll !important; /* 手機不支援 fixed 背景，改為 scroll */
        background-image: url("img/club-intro-img.jpg");
        background-color: rgba(0, 0, 0, 0.5);
        background-blend-mode: overlay; 
        color: white;;
    }
}
