/* senior.css - 시니어 애프터 페이지 */

/* --------------------- header */
#senior_header {
}
#senior_header .container {
}
#senior_header .container .wrapper {
}
#senior_header .container .wrapper .main-banner {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
#senior_header .container .wrapper .main-banner img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#senior_header .container .wrapper .main-banner .txt {
  position: absolute;
  width: 100%;
  z-index: 10;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  font-family: var(--font-heading);
  text-shadow: 5px 0 #0000002c;
  /*  */
}

#senior_header .container .wrapper .main-banner .txt h1 {
  font-size: var(--text-xl);
}
#senior_header .container .wrapper .main-banner .txt h1 span {
  color: #00d8b5;
}
#senior_header .container .wrapper .main-banner .txt h4 {
  font-size: var(--text-lg);
  font-weight: var(--font-light);
  opacity: 0.9;
  padding: 20px;
  line-height: 1.45;
}

/* --------------------- senior section 01 */

#senior_1 {
  background: url("../assets/images/senior/section1-bg.png") no-repeat;
  background-size: contain;
}
#senior_1 .container {
}
#senior_1 .container .wrapper {
}
#senior_1 .container .wrapper .content {
}
#senior_1 .container .wrapper .content p {
  text-align: center;
  font-weight: var(--font-light);
  font-size: var(--text-md);
  padding-bottom: 70px;
}

#senior_1 .container .wrapper .content .program-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}
#senior_1 .container .wrapper .content .program-list li {
  display: flex;
  width: calc((100% - 100px) / 2);
  gap: 15px;
  border: 1px solid;
  padding: 10px 30px;
  border: 3px solid transparent;
  background: linear-gradient(to right, white, white) padding-box,
    linear-gradient(22deg, rgba(75, 187, 171, 1) 0%, rgba(49, 137, 198, 1) 100%)
      border-box;
  border-radius: 40px;
}

#senior_1 .container .wrapper .content .program-list li img {
  width: 50px;
  height: 45px;
}
#senior_1 .container .wrapper .content .program-list li .txt {
  font-size: var(--text-md);
  align-self: center;
  font-weight: 500;
}

/* --------------------- senior section 02 */

#senior_2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 170px;
  background: linear-gradient(110.04deg, #019982 1.53%, #00D8B5 126.55%);
}

#senior_2 .container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 90px 20px;
  max-width: 1580px;
}

#senior_2 .container .wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  width: 100%;
}

#senior_2 .container .wrapper h2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 0 20px;
  width: 100%;
  font-family: var(--font-body);
  font-weight: var(--font-bold);
  font-size: var(--text-lg);
  line-height: 60px;
  text-align: center;
  color: #FFFFFF;
}

#senior_2 .container .wrapper h2 span {
  color: #FFFFFF;
}

#senior_2 .container .wrapper .content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 35px 0 0;
  width: 100%;
}

#senior_2 .container .wrapper .content > p {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 70px;
  width: 100%;
  font-family: var(--font-body);
  font-weight: var(--font-normal);
  font-size: var(--text-md);
  line-height: 36px;
  text-align: center;
  color: #FFFFFF;
}

#senior_2 .container .wrapper .content > p span {
  font-weight: var(--font-normal);
}

#senior_2 .container .wrapper .content .cards {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 36px;
  width: 100%;
}

#senior_2 .container .wrapper .content .cards .card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
  margin: 0 auto;
  width: 490px;
  height: 650px;
  filter: drop-shadow(0px 5px 10px rgba(0, 0, 0, 0.35));
  border-radius: 20px;
  overflow: hidden;
}

#senior_2 .container .wrapper .content .cards .card:first-child,
#senior_2 .container .wrapper .content .cards .card:nth-child(3) {
  background: #DCF3ED;
}

#senior_2 .container .wrapper .content .cards .card:nth-child(2) {
  background: #FFFFFF;
}

#senior_2 .container .wrapper .content .cards .card .card-txt {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 30px 30px 0;
  gap: 20px;
  width: 100%;
  height: 190px;
  box-sizing: border-box;
}

#senior_2 .container .wrapper .content .cards .card:first-child .card-txt,
#senior_2 .container .wrapper .content .cards .card:nth-child(3) .card-txt {
  background: #DCF3ED;
}

#senior_2 .container .wrapper .content .cards .card:nth-child(2) .card-txt {
  background: #FFFFFF;
}

#senior_2 .container .wrapper .content .cards .card .card-txt .card-number {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  background: #019982;
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.2);
  border-radius: 30px;
  font-family: var(--font-body);
  font-weight: var(--font-bold);
  font-size: var(--text-md);
  line-height: 29px;
  color: #FFFFFF;
  flex-shrink: 0;
}

#senior_2 .container .wrapper .content .cards .card .card-txt .card-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 320px;
  height: 160px;
}

#senior_2 .container .wrapper .content .cards .card .card-txt h3 {
  font-family: var(--font-body);
  font-weight: 600;
  font-size: var(--text-lg);
  line-height: 42px;
  color: #393838;
  margin: 0;
}

#senior_2 .container .wrapper .content .cards .card .card-txt p {
  font-family: var(--font-body);
  font-weight: var(--font-normal);
  font-size: var(--text-sm);
  line-height: 27px;
  color: #393838;
  padding: 5px 0;
  text-align: left;
  margin: 0;
}

#senior_2 .container .wrapper .content .cards .card .card-img {
  width: 100%;
  height: auto;
  overflow: hidden;
}

#senior_2 .container .wrapper .content .cards .card:first-child .card-img,
#senior_2 .container .wrapper .content .cards .card:nth-child(3) .card-img {
  background: #DCF3ED;
}

#senior_2 .container .wrapper .content .cards .card:nth-child(2) .card-img {
  background: #FFFFFF;
}

#senior_2 .container .wrapper .content .cards .card .card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* --------------------- senior section 03 */

#senior_3 {
  background: #fff;
}

#senior_3 .container .wrapper .content {
  text-align: center;
}

#senior_3 .container .wrapper .content .sub-title {
  font-size: var(--text-md);
  font-weight: 600;
  color: #333;
  margin-bottom: 30px;
}

#senior_3 .container .wrapper .content img {
  max-width: 700px;
  border-radius: 15px;
  margin-bottom: 40px;
}

#senior_3 .container .wrapper .content .desc-text {
  font-size: var(--text-md);
  font-weight: 600;
  color: #333;
  margin-bottom: 30px;
}

#senior_3 .container .wrapper .content .main-text {
  font-size: var(--text-sm);
  font-weight: var(--font-normal);
  line-height: 1.8;
  color: #333;
}

/* --------------------- senior section 04 */

#senior_4 {
  background: #f5f5f5;
}

#senior_4 .container .wrapper .content {
  text-align: center;
}

#senior_4 .container .wrapper .content img {
  max-width: 700px;
  border-radius: 15px;
  margin-bottom: 40px;
}

#senior_4 .container .wrapper .content .desc-text {
  font-size: var(--text-md);
  font-weight: 600;
  color: #333;
  margin-bottom: 20px;
}

#senior_4 .container .wrapper .content .highlight-text {
  font-size: var(--text-sm);
  font-weight: 600;
  color: #333;
  margin-bottom: 15px;
}

#senior_4 .container .wrapper .content .main-text {
  font-size: var(--text-sm);
  font-weight: var(--font-normal);
  color: #666;
}

/* --------------------- senior section 05 */

#senior_5 {
  background: #f7f7f7;
}

#senior_5 .container .wrapper .content {
  text-align: center;
}

#senior_5 .container .wrapper .content p {
  font-size: var(--text-lg);
  font-weight: var(--font-light);
  line-height: 1.8;
}
#senior_5 .container .wrapper .content p span {
  font-weight: 600;
}

#senior_5 .container .wrapper .content img {
  padding: 75px 0;
}

/* --------------------- senior section 06 */

#senior_6 {
  background: url("../assets/images/senior/section6.jpg");
  background-repeat: no-repeat;
  background-size: contain;
}

#senior_6 .container .wrapper .content {
  text-align: center;
}

#senior_6 .container .wrapper .content p {
  font-size: var(--text-lg);
  font-weight: var(--font-light);
  line-height: 1.8;
}
#senior_6 .container .wrapper .content p span {
  font-weight: 600;
}

#senior_6 .container .wrapper .content .img-list {
  padding: 75px 0 55px 0;
  white-space: nowrap;
}

#senior_6 .container .wrapper .content .img-list li {
  display: inline-block;
  padding: 0 13px;
}

#senior_6 .container .wrapper .content .img-list li img {
  max-width: 300px;
  height: auto;
  border-radius: 10px;
}

.img-list img {
}

/* --------------------- senior section 07 */

#senior_7 {
  background: url("../assets/images/one_day/section4.jpg");
  background-repeat: no-repeat;
}

#senior_main #senior_7 .container {
  padding: 0;
  padding-top: 90px;
  max-width: 1920px;
}

#senior_7 .container .wrapper .content {
  text-align: center;
  padding-top: 55px;
}

#senior_7 .container .wrapper .content p {
  font-size: var(--text-lg);
  font-weight: var(--font-light);
}
#senior_7 .container .wrapper .content p span {
  font-weight: 600;
}

#senior_7 .container .wrapper .content img {
  max-width: 400px;
  padding-top: 55px;
}

/* --------------------- senior section 08 */

#senior_8 {
  background: #f0f2ef;
}

#senior_8 .container .wrapper .content {
  text-align: center;
}

#senior_8 .container .wrapper .content .sub-title {
  font-size: var(--text-md);
  font-weight: var(--font-normal);
  color: #333;
  margin-bottom: 40px;
}

#senior_8 .container .wrapper .content img {
  max-width: 900px;
  border-radius: 15px;
  margin-bottom: 40px;
}

#senior_8 .container .wrapper .content .desc-text {
  font-size: var(--text-sm);
  font-weight: 600;
  color: #333;
  margin-bottom: 15px;
}

#senior_8 .container .wrapper .content .main-text {
  font-size: var(--text-sm);
  font-weight: var(--font-normal);
  color: #666;
}

/* --------------------- senior main section container */
#senior_main section .container {
  padding: 90px 20px;
}

#senior_main section .container .wrapper h2 {
  font-size: var(--text-lg);
  padding-bottom: 20px;
}

#senior_main section .container .wrapper p {
  line-height: 1.3;
}

#senior_main section .container .wrapper .content {
  padding-top: 35px;
}

/********************************************* DENTURES IMPLANT ************************************
*/
.container .wrapper .content {
  color: #292929;
}

#dentures_main section .container {
  padding: 90px 20px;
}

#dentures_main section .container .wrapper h2 {
  font-size: var(--text-lg);
  padding-bottom: 20px;
}

#dentures_main section .container .wrapper p {
  line-height: 1.3;
}

#dentures_main section .container .wrapper .content {
  padding-top: 35px;
}

/* =====================================================
   SENIOR PAGE RESPONSIVE STYLES
   ===================================================== */

/* --------------------- Tablet (max-width: 1024px) --------------------- */
@media screen and (max-width: 1024px) {
    /* Header */
    #senior_header .container .wrapper .main-banner {
        height: 100vh;
    }

    #senior_header .container .wrapper .main-banner .txt h1 {
        font-size: var(--text-xl);
    }

    #senior_header .container .wrapper .main-banner .txt h4 {
        font-size: var(--text-md);
    }

    /* Section 1 */
    #senior_1 .container .wrapper .content p {
        font-size: var(--text-md);
    }

    #senior_1 .container .wrapper .content .program-list li {
        width: calc((100% - 30px) / 2);
        padding: 10px 20px;
    }

    #senior_1 .container .wrapper .content .program-list li .txt {
        font-size: var(--text-sm);
    }

    /* Section 2 */
    #senior_2 {
        padding: 0 50px;
    }

    #senior_2 .container .wrapper h2 {
        font-size: var(--text-lg);
        line-height: 50px;
    }

    #senior_2 .container .wrapper .content > p {
        font-size: var(--text-md);
    }

    #senior_2 .container .wrapper .content .cards {
        gap: 20px;
    }

    #senior_2 .container .wrapper .content .cards .card {
        width: 100%;
        max-width: 350px;
        height: auto;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt {
        height: auto;
        padding: 25px 20px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt h3 {
        font-size: var(--text-md);
        line-height: 36px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt p {
        font-size: var(--text-xs);
        line-height: 24px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-img {
        height: auto;
    }

    /* Section 3-4 */
    #senior_3 .container .wrapper .content img,
    #senior_4 .container .wrapper .content img {
        max-width: 100%;
    }

    /* Section 5 */
    #senior_5 .container .wrapper .content p {
        font-size: var(--text-md);
    }

    #senior_5 .container .wrapper .content img {
        max-width: 100%;
        padding: 50px 0;
    }

    /* Section 6 */
    #senior_6 .container .wrapper .content p {
        font-size: var(--text-md);
    }

    #senior_6 .container .wrapper .content .img-list li img {
        max-width: 220px;
    }

    /* Section 7 */
    #senior_7 .container .wrapper .content p {
        font-size: var(--text-md);
    }

    #senior_7 .container .wrapper .content img {
        max-width: 350px;
    }

    /* Section 8 */
    #senior_8 .container .wrapper .content img {
        max-width: 100%;
    }
}

/* --------------------- Mobile (max-width: 768px) --------------------- */
@media screen and (max-width: 768px) {
    /* Header */
    #senior_header .container .wrapper .main-banner {
        height: 100vh;
    }

    #senior_header .container .wrapper .main-banner .txt {
        top: 30%;
    }

    #senior_header .container .wrapper .main-banner .txt h1 {
        font-size: var(--text-lg);
    }

    #senior_header .container .wrapper .main-banner .txt h1 br {
        display: none;
    }

    #senior_header .container .wrapper .main-banner .txt h4 {
        font-size: var(--text-sm);
        padding: 15px 10px;
        line-height: 1.5;
    }

    #senior_header .container .wrapper .main-banner .txt h4 br {
        display: none;
    }

    /* Section 1 */
    #senior_1 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_1 .container .wrapper .content p {
        font-size: var(--text-sm);
        padding-bottom: 40px;
    }

    #senior_1 .container .wrapper .content p br {
        display: none;
    }

    #senior_1 .container .wrapper .content .program-list {
        flex-direction: column;
        gap: 15px;
    }

    #senior_1 .container .wrapper .content .program-list li {
        width: 100%;
        padding: 12px 20px;
        gap: 10px;
    }

    #senior_1 .container .wrapper .content .program-list li img {
        width: 35px;
        height: 32px;
    }

    #senior_1 .container .wrapper .content .program-list li .txt {
        font-size: var(--text-xs);
    }

    /* Section 2 */
    #senior_2 {
        padding: 0 15px;
    }

    #senior_2 .container {
        padding: 60px 15px;
    }

    #senior_2 .container .wrapper h2 {
        font-size: var(--text-md);
        line-height: 38px;
    }

    #senior_2 .container .wrapper h2 br {
        display: none;
    }

    #senior_2 .container .wrapper .content > p {
        font-size: var(--text-sm);
        line-height: 26px;
        padding-bottom: 40px;
    }

    #senior_2 .container .wrapper .content > p br {
        display: none;
    }

    #senior_2 .container .wrapper .content .cards {
        flex-direction: column;
        gap: 25px;
    }

    #senior_2 .container .wrapper .content .cards .card {
        max-width: 100%;
        width: 100%;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt {
        padding: 20px 15px;
        gap: 15px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt .card-number {
        width: 50px;
        height: 50px;
        font-size: var(--text-sm);
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt .card-content {
        width: calc(100% - 65px);
        height: auto;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt h3 {
        font-size: var(--text-md);
        line-height: 30px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt p {
        font-size: var(--text-xs);
        line-height: 22px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-img {
        height: auto;
    }

    /* Section 3 */
    #senior_3 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_3 .container .wrapper .content .sub-title {
        font-size: var(--text-sm);
    }

    #senior_3 .container .wrapper .content img {
        max-width: 100%;
        margin-bottom: 25px;
    }

    #senior_3 .container .wrapper .content .desc-text {
        font-size: var(--text-sm);
        margin-bottom: 20px;
    }

    #senior_3 .container .wrapper .content .main-text {
        font-size: var(--text-xs);
    }

    #senior_3 .container .wrapper .content .main-text br {
        display: none;
    }

    /* Section 4 */
    #senior_4 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_4 .container .wrapper .content img {
        max-width: 100%;
        margin-bottom: 25px;
    }

    #senior_4 .container .wrapper .content .desc-text {
        font-size: var(--text-sm);
    }

    #senior_4 .container .wrapper .content .highlight-text {
        font-size: var(--text-sm);
    }

    #senior_4 .container .wrapper .content .main-text {
        font-size: var(--text-xs);
    }

    /* Section 5 */
    #senior_5 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_5 .container .wrapper .content p {
        font-size: var(--text-sm);
    }

    #senior_5 .container .wrapper .content p br {
        display: none;
    }

    #senior_5 .container .wrapper .content img {
        max-width: 100%;
        padding: 40px 0;
    }

    /* Section 6 */
    #senior_6 {
        background-size: cover !important;
    }

    #senior_6 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_6 .container .wrapper .content p {
        font-size: var(--text-sm);
    }

    #senior_6 .container .wrapper .content p br {
        display: none;
    }

    #senior_6 .container .wrapper .content .img-list {
        padding: 40px 0 30px 0;
        white-space: normal;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
    }

    #senior_6 .container .wrapper .content .img-list li {
        padding: 0;
        width: calc(50% - 10px);
    }

    #senior_6 .container .wrapper .content .img-list li img {
        max-width: 100%;
        width: 100%;
    }

    /* Section 7 */
    #senior_main #senior_7 .container {
        padding-top: 60px;
    }

    #senior_7 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_7 .container .wrapper .content {
        padding-top: 30px;
    }

    #senior_7 .container .wrapper .content p {
        font-size: var(--text-sm);
    }

    #senior_7 .container .wrapper .content p br {
        display: none;
    }

    #senior_7 .container .wrapper .content img {
        max-width: 280px;
        padding-top: 30px;
    }

    /* Section 8 */
    #senior_8 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_8 .container .wrapper .content .sub-title {
        font-size: var(--text-sm);
        margin-bottom: 25px;
    }

    #senior_8 .container .wrapper .content img {
        max-width: 100%;
        margin-bottom: 25px;
    }

    #senior_8 .container .wrapper .content .desc-text {
        font-size: var(--text-sm);
    }

    #senior_8 .container .wrapper .content .main-text {
        font-size: var(--text-xs);
    }
}

/* --------------------- Small Mobile (max-width: 480px) --------------------- */
@media screen and (max-width: 480px) {
    /* Header */
    #senior_header .container .wrapper .main-banner {
        height: 100vh;
    }

    #senior_header .container .wrapper .main-banner .txt {
        top: 25%;
    }

    #senior_header .container .wrapper .main-banner .txt h1 {
        font-size: var(--text-md);
    }

    #senior_header .container .wrapper .main-banner .txt h4 {
        font-size: var(--text-xs);
        padding: 10px 5px;
    }

    /* Section 1 */
    #senior_1 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_1 .container .wrapper .content p {
        font-size: var(--text-xs);
        padding-bottom: 30px;
    }

    #senior_1 .container .wrapper .content .program-list li {
        padding: 10px 15px;
    }

    #senior_1 .container .wrapper .content .program-list li img {
        width: 30px;
        height: 27px;
    }

    #senior_1 .container .wrapper .content .program-list li .txt {
        font-size: var(--text-xs);
    }

    /* Section 2 */
    #senior_2 .container .wrapper h2 {
        font-size: var(--text-md);
        line-height: 34px;
    }

    #senior_2 .container .wrapper .content > p {
        font-size: var(--text-xs);
        line-height: 24px;
        padding-bottom: 30px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt .card-number {
        width: 45px;
        height: 45px;
        font-size: var(--text-sm);
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt h3 {
        font-size: var(--text-sm);
        line-height: 28px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-txt p {
        font-size: var(--text-xs);
        line-height: 20px;
    }

    #senior_2 .container .wrapper .content .cards .card .card-img {
        height: auto;
    }

    /* Section 3-8 공통 */
    #senior_3 .container .wrapper h2,
    #senior_4 .container .wrapper h2,
    #senior_5 .container .wrapper h2,
    #senior_6 .container .wrapper h2,
    #senior_7 .container .wrapper h2,
    #senior_8 .container .wrapper h2 {
        font-size: var(--text-md);
    }

    #senior_3 .container .wrapper .content .sub-title {
        font-size: var(--text-sm);
    }

    #senior_3 .container .wrapper .content .desc-text,
    #senior_4 .container .wrapper .content .desc-text,
    #senior_8 .container .wrapper .content .desc-text {
        font-size: var(--text-xs);
    }

    #senior_3 .container .wrapper .content .main-text,
    #senior_4 .container .wrapper .content .main-text,
    #senior_8 .container .wrapper .content .main-text {
        font-size: var(--text-xs);
    }

    #senior_4 .container .wrapper .content .highlight-text {
        font-size: var(--text-xs);
    }

    #senior_5 .container .wrapper .content p,
    #senior_6 .container .wrapper .content p,
    #senior_7 .container .wrapper .content p {
        font-size: var(--text-xs);
    }

    #senior_5 .container .wrapper .content img {
        padding: 30px 0;
    }

    #senior_6 .container .wrapper .content .img-list {
        padding: 30px 0 20px 0;
    }

    #senior_6 .container .wrapper .content .img-list li {
        width: 100%;
    }

    #senior_7 .container .wrapper .content img {
        max-width: 220px;
    }

    #senior_8 .container .wrapper .content .sub-title {
        font-size: var(--text-xs);
    }
}

