/* =================================================================
<2000-bandabi/current.css>
- 2000-bandabi 현재 스타일
- 순서 및 분류에 따라 그룹화
- SCSS 중첩 구조로 재작성
================================================================= */

@charset "UTF-8";

/* ========== 1. 전역 변수 ========== */
:root {
  /* Colors */
  --main: #00a651;
  --main-light: #b5d334;
  --main2: #00b2c2;
  --main3: #f8b62d;
  --type5: var(--mint-blue);
  --gray-light: #777;
  --gray-mid: #555;
}
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

@font-face {
  font-family: 'AliceDigitalLearning';
  src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_elice@1.0/EliceDigitalBaeum.woff2') format('woff2');
  font-weight: normal;
  font-display: swap;
}

@font-face {
  font-family: 'AliceDigitalLearning';
  src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_elice@1.0/EliceDigitalBaeum-Bd.woff2') format('woff2');
  font-weight: 700;
  font-display: swap;
}
body,
input,
textarea,
table,
button,
select,
optgroup,
option {
  letter-spacing: -0.04em;
  font-size: 18px;
}
h1,
h2,
h3,
h4 {
  letter-spacing: -0.03em;
  line-height: 1.2;
}

html,
body {
  margin: 0;
  padding: 0;
  letter-spacing: -0.05em;
}
.material-icons-two-tone {
  font-size: inherit;
}
.course-guide {
  --type1: #ed1b23;
  --type2: #0183cb;
  --type3: #fff200;
  --type4: var(--gray-pale);
  .course-card:nth-child(3) {
    .hole-badge,
    .course-title {
      color: #000;
    }
    .course-table {
      thead {
        th {
          color: #000;
        }
      }
    }
  }

  .course-card:nth-child(4) {
    .course-table-wrap {
      background-color: var(--gray-pale);
    }
    .hole-badge,
    .course-title {
      --color: #000;
      color: #fff;
    }
    .course-title {
    }
    .course-table {
      thead {
        th {
          color: #000;
        }
      }
    }
  }
}
.main {
  position: static;
  background-color: transparent;
  min-height: 100dvh;
  min-height: -webkit-fill-available;
  display: flex;
  flex-direction: column;

  .gnb {
    color: #fff;
    background-color: transparent;
    overflow: initial;
    .menu {
      .logo {
        img {
          &.logo-ori {
            display: none;
          }
          &.logo-w {
            display: block;
          }
        }
      }
      .right-menu {
        display: flex;
        gap: 14px;
      }
    }
  }
  .contents {
    padding-top: 0;
    padding-bottom: var(--safe-bottom);
  }
}

.gnb {
  transition: border-radius 0.3s;
  .menu .logo img {
    max-height: 30px;
  }
  .menu .menu-n {
    --menu-space: 40px;
  }
}
.calendar .pignose-calendar {
  .weekly & {
    & .element {
      .ctg-name {
        display: none;
      }
      & .schedule-wrapper {
        .title {
          display: none;
        }
      }
    }
  }
}
.sect {
  & .head {
    &.copy {
      h4 {
        word-break: keep-all;
        line-height: 1.35;
        font-size: 1.2em;
        strong {
          position: relative;
          color: var(--black);
        }
      }
    }
  }
}
ul.notification {
  &.vertical {
    &.link {
      li {
        .icon {
          width: 40%;
        }
        &.link-my-reserv {
          display: none;
        }
      }
    }
    .notion & {
      --cell: 4;
      font-size: 1.15em;
      li .icon {
        width: 50%;
        font-size: 3em;
        @media (max-width: 812px) {
          width: 60%;
          font-size: 2.4em;
        }
      }
    }
    .key-highlight {
      font-weight: bold;
      color: var(--blue);
    }
    .s0101 & {
      --cell: 4;
    }
    > li {
    }
  }
}
time-clock {
  & .infos {
    p {
      font-size: 1rem;
      color: var(--gray-mid);
    }
  }
}
.visual,
.images {
  --visual-heading-font-family: 'AliceDigitalLearning';
  --visual-heading-letter-spacing: 0;
  .text {
    h2 {
      line-height: 1.2;
    }
    .gradient-text {
      --main-gra: linear-gradient(to right, var(--main-light), var(--main-color), var(--mint-blue));
    }
  }
  .links {
    .btn {
      &.secondary {
        background-color: var(--mint-blue);
      }
    }
  }
}
.sect.over {
  h1 {
    font-weight: 700;
  }
}

.ui-sect {
  .ui-item {
    &.prices {
    }
  }
}
.time-clock {
  flex-wrap: nowrap;
  width: auto;
  .weekend {
    --main-light: var(--orange);
    --main: var(--red);
    --main-color: var(--red);
  }
  @media (max-width: 812px) {
    &.horizon > div {
      width: calc(50% - 1em);
    }
  }
}
.list {
  &.prices {
    .subinfo {
      > li {
        &.key-pricing {
          strong {
            display: none;
          }
          .pricing {
            font-size: 1.2em;
          }
        }
      }
    }
  }
}
.images * {
  transition: none !important;
}
@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.list.swim {
  .infos .info:has(.data-time) {
    > p {
      display: none;
    }
  }
}
.contents {
  & .static {
    & .irregular {
      &:is(.tri) {
        & > div {
          & h2 {
            font-size: 1.3em;
          }
        }
      }
    }
  }
}
/* 모바일 */
@media (max-width: 812px) {
  .visual {
    .text {
      .links {
        gap: 0;
        width: 100%;
        .btn {
          border-radius: 0;
          aspect-ratio: initial;
          width: auto;
          height: auto;
          padding: 15px;
          flex-grow: 1;
          border-right: 0;
          gap: 8px;
        }
      }
    }
    h2 {
      font-size: 2.4em;
      line-height: 1.1;
    }
    p {
      display: none;
    }
  }

  .list.vertical {
    &.program > li {
      --cell: 2;
      .thumb {
        --ratio: 4/3;
      }
    }
  }
  .static .sect {
    & .head.copy {
      & h4 {
        font-size: 1.15em;
        br {
          display: block;
          line-height: 1.4;
        }
      }
    }
  }
}
.calendar {
  .district {
    & .ctg {
      & .ctg-name {
        .weekly &::after {
          font-size: 14px;
          font-weight: 500;
        }
      }
    }
  }
  .pignose-calendar {
    .element {
      font-weight: 500;
      .district {
        .ctg-name {
          color: var(--map-color);
          &::after {
            display: block;
          }
        }
        .schedule-wrapper {
          &:only-of-type {
            .title::before {
              display: none;
            }
          }
          /* flex-direction: column;
          align-items: flex-start;
          gap: 5px;

          .schedules {
            flex-direction: column;
            width: 100%;
            .schedule {
              width: 100%;
              max-width: 100%;
            }
          } */
        }
      }
    }
  }
}
.ui-item {
  &.prices {
    display: flex;
    flex-direction: row;
    @media (max-width: 812px) {
      flex-direction: column;
    }
    & li {
      & .item-name {
        & .price-multi {
          .oneday-complex & {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            row-gap: 12px;
          }
          gap: 0;
          .price {
            flex-grow: 1;
          }
          row-gap: 4px;
          > h5 {
            width: 100%;
          }

          & + & {
            margin-top: 24px;
          }
        }
      }
    }
  }
  .images .text {
    padding-bottom: 0;
  }
}
.list.horizon {
  &.prices.program {
    @media (max-width: 812px) {
      & li {
        & .go-btn {
          .now:not(.soldout) & {
            &::before {
              content: '등록접수';
            }
          }
        }
      }
    }
  }
}
@media (max-width: 812px) {
  body {
    font-size: 14px;
  }
}
