@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800;900&display=swap');

/*
   配色色卡： #00142F #504E63 #A88661 #EAD6BD
   配色參考：https://www.shutterstock.com/zh-Hant/blog/101-free-color-combinations-design-inspiration
*/

:root {
   --firstColor: #00142F;
   --secondColor: #504E63;
   --fontColor:#A88661;
   --fourColor: #EAD6BD;
}

* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
   font-family: 'Poppins', sans-serif;
}

body {
   width: 100%;
   min-height: 100vh;
/*
   display: flex;
*/
   justify-content: center;
   align-items: center;
   background: #504E63;
}

header {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100vh;
   padding: 0 100px;
   background: #000;
   display: flex;
   justify-content: flex-end;
   align-items: center;
   transition: 1s;
}
header.sticky {
   height: 80px;
}
header .banner {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: 1s;
}
header.sticky .banner {
   opacity: 0.1;
}
header .logo {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   font-size: 3em;
   color: #fff;
   font-weight: 700;
   transition: 1s;
   text-decoration: none;
   z-index: 1;
}
header .logo img {
   width: 110px;
   vertical-align: middle;
}

header.sticky .logo {
   position: absolute;
   font-size: 2em;
   left: 100px;
   transform: translate(0, -50%);
}
header.sticky .logo img {
   width: 74px;
}
header nav {
   position: relative;
   display: flex;
   z-index: 1;
}
header nav ul {
   position: relative;
   display: flex;
   transition: 0.25s;
   transform: translateX(100px);
   opacity: 0;
}
header.sticky nav ul {
   transform: translateX(0);
   opacity: 1;
   transition-delay: 0.75s;
   visibility: visible;
}
header nav ul li {
   list-style: none;
}
header nav ul li a {
   color: #fff;
   display: inline-block;
   padding: 10px 15px;
   font-size: 1.2em;
   text-decoration: none;
}
header nav ul li a:hover {
   color: #ff275f;
}

.container {
   position: relative;
   max-width: 1000px;
   display: flex;
   justify-content: center;
   align-items: center;
   flex-wrap: wrap;
}

section {
   margin-top: 15vh;
   padding: 80px;
   visibility: hidden;
}
section.sticky {
   visibility: visible;
}
section h2 {
   font-size: 3em;
}
section p {
   font-size: 1.2em;
}

.pageHeader {
   justify-content: center;
   align-items: center;
   color: var(--fontColor);
   text-align: center;
   text-decoration: underline;
   text-decoration-color: var(--fourColor);
   color: var(--fontColor);
}

/* 關於本協會 */
.aboutContent {
   min-height: 60vh;
   width: 1290px;
   max-width: 95%;
   margin 0 auto;
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   align-items: center;
   justify-content: space-around;
}
.aboutContent img {
   width: 580px;
   max-width: 100%;
   height: auto;
   padding: 0 10px;
   object-fit: cover;
}
.aboutContent .all-text {
   width: 600px;
   max-width: 100%;
   padding: 0 10px;
}
.aboutContent .all-text h4 {
   font-size: 18px;
   letter-spacing: 1px;
   font-weight: 400;
   margin-bottom: 10px;
   color: #777777;
}
.aboutContent .all-text h1 {
   font-size: 65px;
   color: var(--fourColor);
   font-weight: 700;
   margin-bottom: 20px;
}
.aboutContent .all-text p {
   font-size: 16px;
   color: var(--fontColor);
   line-height: 30px;
   margin-bottom: 35px;
}
.aboutContent .btn button {
   background: var(--white);
   padding: 20px 32px;
   font-size: 16px;
   font-weight: bold;
   border: none;
   outline: none;
   box-shadow: 0px 16px 32px 0px rgba(0 0 0 / 6%);
   margin-right: 20px;
}
.aboutContent .btn button:hover {
   background: var(--blue);
   color: var(--white);
   transition: 0.3s;
   cursor: pointer;
}

/* 友站鏈結 */
.linksContent {
   min-height: 60vh;
}

@media (max-width: 1290px) {
   header .logo {
     font-size: 2em; 
   }
   .aboutContent {
      height: auto;
      width: 100%;
      padding: 60px 0;
   }
   .aboutContent .all-text {
      text-align: center;
      margin-top: 40px;
   }
}

@media (max-width: 991px) {
   section,
   header {
      padding: 40px;
   }
   header h2 {
      font-size: 2em;
   }
   header.sticky .logo {
      left: 40px;
   }
   header.sticky .banner {
      opacity: 0;
   }
   header nav ul {
      display: none;
      opacity: 0;
      visibility: hidden;
   }
   header nav.active ul {
      position: fixed;
      top: 80px;
      left: 0;
      width: 100%;
      height: calc(100% - 80px);
      background: #000;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
   }
   header.sticky nav ul {
      opacity: 1;
      visibility: visible;
   }
   header nav ul li a {
      font-size: 1.5em;
      padding: 5px 15px;
   }
   header.sticky .toggle {
      position: fixed;
      top: 15px;
      right: 40px;
      width: 50px;
      height: 50px;
      cursor: pointer;
   }
   header.sticky .toggle span {
      background: var(--fourColor);
   }
   header.sticky .toggle.active {
   }
}

@media (max-width: 650px) {
   .aboutContent img {
      margin-bottom: 35px;
   }
   .aboutContent .all-text h1 {
      font-size: 45px;
   }
}

@media (max-width: 480px) {
   .pageHeader {
      margin-top: 30px;
   }
   section,
   header {
      padding: 10px;
   }
   header .logo img {
      width: 80px;
   }
   header .logo {
      font-size: 0em;
      color: transparent;
   }
   header.sticky .logo {
      font-size: 1em;
      color: white;
   }
   header.sticky .logo img {
       width: 50px;
   }
}

