*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --primary: rgb(64,40,32);
  --white: #ffffff;
  --bg: rgb(249,249,249);
}

html {
  scroll-behavior: smooth;
}

@media (min-width: 1440px) {
  html {
    zoom: 1.5;
  }
}

@media (min-width: 2560px) {
  html {
    zoom: 1.7;
  }
}

@media (min-width: 3860px) {
  html {
    zoom: 2.5;
  }
}

body {
    background: var(--bg);
    font-family: 'Cormorant Infant','Cactus Classical Serif';
  }
  .main {
    margin-right: auto; 
    font-size: 60px;
  }
  .table {
    position:fixed;
    top:0px;
    height:100px;
    width: 100%;
    background-color: rgb(249,249,249);
    display: flex;
    align-items:center;
    padding: 20px 50px;
    z-index: 2000;
    box-sizing: border-box;
    border-bottom: 2px solid #333348;
  }
  .table img{
    height: 130px;
    width: auto;
    margin-top: 30px;
    margin-bottom: 20px;
    object-fit: cover;
    z-index: 1000;
  }
  
  /* 右側群組 */
  .nav-items {
      display: flex; 
  }
  
  .nav-items .intro,
  .nav-items .activity,
  .nav-items .member,
  .nav-items .lesson {
      justify-content: flex-end;
      font-size:18px;
  }
  .table a{
      color: rgb(66, 45, 38);
      text-decoration:none;
      padding:10px 30px;
      transition: background-color 0.2s;
  }
  
  .table a:hover {
    transform: scale(1.3);
  }
.intro {
    padding: 120px 0px 60px 10px;
    text-align: center;
}
.content > div {
  border: 1px solid #333348;
  box-sizing: border-box;
  outline: 1px solid #333348;
}

.content {
    display: grid;
    width: 100%;
    height: auto;
    margin-top:40px;
    grid-template-columns: 1fr 1fr;
    /*grid-template-rows:repeat(9, 0.5fr 2fr);*/
    grid-auto-rows: auto; 
    grid-template-areas: 
    "order1 order1"
    "order2 order3"
    "order4 order4"
    "order6 order5"
    "order7 order7"
    "order8 order9"
    "order10 order10"
    "order12 order11"
    "order13 order13"
    "order14 order15"
    "order16 order16"
    "order18 order17"
    "order19 order19"
    "order20 order21"
    "order22 order22"
    "order24 order23"
    "order25 order25"
    "order26 order27"
    ;
    
}
.order1 { grid-area: order1; }
.order2 { grid-area: order2; }
.order3 { grid-area: order3; }
.order4 { grid-area: order4; }
.order5 { grid-area: order5; }
.order6 { grid-area: order6; }
.order7 { grid-area: order7; }
.order8 { grid-area: order8; }
.order9 { grid-area: order9; }
.order10 { grid-area: order10; }
.order11 { grid-area: order11; }
.order12 { grid-area: order12; }
.order13 { grid-area: order13; }
.order14 { grid-area: order14; }
.order15 { grid-area: order15; }
.order16 { grid-area: order16; }
.order17 { grid-area: order17; }
.order18 { grid-area: order18; }
.order19 { grid-area: order19; }
.order20 { grid-area: order20; }
.order21 { grid-area: order21; }
.order22 { grid-area: order22; }
.order23 { grid-area: order23; }
.order24 { grid-area: order24; }
.order25 { grid-area: order25; }
.order26 { grid-area: order26; }
.order27 { grid-area: order27; }

.title {
    grid-column: 1 / -1;
    align-items: center;
    justify-items: center;
    vertical-align: middle;

}
.title p{
    color: rgb(66, 45, 38);
    text-align:center;
    font-size: 30px;
    line-height: 1.6;
    margin: 10px;
}
/*
@media (max-width: 1000px) {
    .title {
        max-width:100%;
        height:60px;
        background-color: rgb(240, 229, 229);
        padding:5px;
        border-radius:10px;
        box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
        display:flex;
        justify-content:center; 
        align-items: center;
    }
     .order1{
        order:1;
     }
     .order2{
        order:2;
     }
     .order3{
        order:3;
     }
     .order4{
        order:4;
     }
     .order5{
        order:5;
     }
     .order6{
        order:6;
     }
     .order7{
        order:7;
     }
     .order8{
        order:8;
     }
     .order9{
        order:9
     }
     .order10{
        order:10;
     }
     .order11{
        order:11;
     }
     .order12{
        order:12;
     }
}
     */
.picture img {
    width: 100%;
    height:100%;
    vertical-align: middle;
    align-items: center;
    object-fit: cover;
    overflow: hidden;
}
.swiper {
  width: 100%;
  height:100%;
  max-width: 100%;
}

.swiper-slide {
    align-items: center;
    justify-content: center;
}

.profile {
    max-width:100%;
    height:100%;
    background-color:#fef5e9;
    padding: 20px;
    vertical-align: middle;
    align-items: center;
    justify-content: center;
}

.profile p {
    color: rgb(66, 45, 38);
    text-align: left;
    font-size: 18px;
    line-height: 1.6;
    font-family: Arial, Helvetica, sans-serif;
}

.end2 {
    background-color: rgb(186, 213, 213);
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    border-radius: 20px;
    padding:15px;
    text-align: center;
    font-size: 18px;
    line-height: 1.6;
    color: white;
  
}
.end1 a{
    background-color: rgb(186, 213, 213);
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    border-radius: 20px;
    padding: 20px;
    text-align: center;
    font-size: 18px;
    line-height: 1.6;
    color: white;
    text-decoration:none; 
    transition: color 0.3s;
}
.end1 a:hover {
    background-color: cadetblue;
    color:rgb(84, 110, 110);
    text-decoration:underline;
}
.endbtn{
    display:flex;
    justify-content:center; 
    align-items:center; 
    width:100%;
    height:30px;  
    gap:100px;
    margin-top:25px;
    margin-bottom:25px;
}

.contact {
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: rgba(240, 240, 240, 0.9);
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 10px 0;
    z-index: 1000;
}

.contact a {
    color: rgb(66, 45, 38);
    text-decoration: none;
    font-size: 16px;
    padding: 5px 10px;
    transition: color 0.3s;
}

.contact a:hover {
    color: rgb(217, 175, 83);
}

.activityofzsisc img{
  width: 100%;
  height: auto;
  object-fit: cover;
}
.activityofzsisc{
  margin-top: 75px;
  position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.activityofzsisc p{
  position: absolute;
  font-size: 60px;
  padding: 10px;
  align-items: center;
  justify-items: center;
  text-align: center;
  color: var(--primary);
}


.guide {
  display: flex;
  align-items: center;
  margin-left: 30px;
  margin-right: 30px;
  margin-top: 20px;
}

.guide a {
  position: relative;
  text-decoration: none;
  color: rgb(64,40,32);
  font-size: 18px;
  padding: 10px 15px;
  transition: all 0.3s;
}

.guide a:hover {
  background-color: #ddd;
  color: #000;
}

.guide a:not(:last-child)::after {
  content: "";
  position: absolute;
  top:50%;
  right: 0;
  transform: translateY(-50%); 
  height: 50%; 
  width: 1px;
  background-color: #333348;
}

.hidden {
  opacity: 0;
  transform: translateY(100px);
  will-change: transform, opacity;
}

.slide-in {
  animation: slideInUp 3s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes slideInUp {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  80% {
    opacity: 1;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}