:root{ --main-color:#F2CEA6;--main-color-dark:#936F46;--btn-color:#BF9770; }

/* Shared layout for /sub pages (cuclinicjeju.com style) */
.sub-wrap{
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    color:#333;
}

.s_visual{
    padding:110px 0;
    background:#333;
    color:#fff;
}
.s_visual .h2_tit{ text-align:center; }
.s_visual .h2_tit b{ display:block; font-size:16px; letter-spacing:2px; color:var(--main-color); margin-bottom:10px; }
.s_visual .h2_tit .tit{ font-size:56px; font-weight:700; margin:0; }

.sub-section{ padding:80px 0; }

.p_text.large{ font-size:28px; line-height:1.6; }
.p_text.large b{ font-weight:800; }
.center{ text-align:center; }

/* s0102 (doctor) */
.s0102_sec1 .cont{ padding:60px 0; }
.s0102_sec1 .cont.s2 .container{ display:flex; gap:60px; align-items:flex-start; }
.s0102_sec1 .info_con{ flex:1; }
.s0102_sec1 .logo_text{ font-size:16px; letter-spacing:2px; color:#777; }
.s0102_sec1 .cate{ font-size:18px; margin-top:10px; color:#444; }
.s0102_sec1 .cate .eng{ font-size:16px; color:#777; margin-left:6px; }
.s0102_sec1 .name{ font-size:42px; margin:10px 0 20px; color:#111; }
.s0102_sec1 .name b{ font-weight:800; }
.s0102_sec1 .name .eng{ font-size:18px; color:#777; margin-left:10px; }
.s0102_sec1 .infoG{ display:flex; gap:40px; flex-wrap:wrap; }
.s0102_sec1 .infoG ul{ margin:0; padding:0; list-style:none; }
.s0102_sec1 .infoG li{ line-height:1.9; color:#555; }
.s0102_sec1 .photo_con img{ width:100%; height:auto; border-radius:16px; display:block; }
.s0102_sec1 .photo_con._pc{ width:420px; flex:0 0 420px; }
.s0102_sec1 .photo_con._mo{ display:none; margin:15px 0 25px; }

/* s0103 (interior swiper) */
.s0103_sec1 .cont.s2 .swiper{ max-width:920px; margin:0 auto; }
.s0103_sec1 .cont.s2 .swiper .tit{ display:block; font-size:22px; font-weight:700; margin:0 0 12px; }
.s0103_sec1 .cont.s2 .swiper .img img{ width:100%; height:auto; border-radius:16px; display:block; }
.s0103_sec1 .swiper-button-prev,
.s0103_sec1 .swiper-button-next{ width:50px; height:50px; border-radius:50px; background:rgba(235,235,235,0.8); box-shadow:0 0 10px rgba(0,0,0,0.03); }
.s0103_sec1 .swiper-button-prev::after,
.s0103_sec1 .swiper-button-next::after{ content:''; display:block; width:50px; height:50px; background-size:50px; background-repeat:no-repeat; background-position:center; }
.s0103_sec1 .swiper-button-prev::after{ background-image:url("/static/img/swiper_prev.png"); }
.s0103_sec1 .swiper-button-next::after{ background-image:url("/static/img/swiper_next.png"); }
.s0103_sec1 .swiper-pagination{ color:#333; font-weight:300; }
.s0103_sec1 .cont.s3 ul{ display:flex; justify-content:center; gap:40px; list-style:none; margin:0; padding:0; }
.s0103_sec1 .cont.s3 li{ font-size:18px; color:#555; }

/* s0104 (directions) */
.s0104_sec1 .h3_tit .tit{ font-size:36px; font-weight:800; margin:0; }
.s0104_sec1 .map_con{ margin:30px 0 40px; }
.s0104_sec1 .info_con{ display:flex; gap:60px; justify-content:space-between; align-items:flex-start; }
.s0104_sec1 .infoG{ flex:1; }
.s0104_sec1 .infoG .address{ font-size:28px; font-weight:800; }
.s0104_sec1 .infoG .btn{ display:flex; gap:15px; margin-top:20px; flex-wrap:wrap; }
.s0104_sec1 .infoG .btn a{ line-height:56px; font-size:16px; color:#fff; width:170px; border-radius:50px; text-align:center; text-decoration:none; }
.s0104_sec1 .infoG .btn a.naver{ background:#3FB83F; }
.s0104_sec1 .infoG .btn a.kakao{ background:#EAA435; }
.s0104_sec1 .officeG{ width:320px; }
.s0104_sec1 .officeG .tit,
.s0104_sec1 .telG .tit{ font-size:22px; font-weight:800; margin-bottom:10px; }
.s0104_sec1 .officeG .list{ margin:0; padding:0; list-style:none; }
.s0104_sec1 .officeG .list li{ margin-bottom:10px; }
.s0104_sec1 .officeG .list li span{ display:inline-block; width:80px; }
.s0104_sec1 .officeG .check{ font-size:14px; color:#555; }
.s0104_sec1 .telG{ width:320px; }
.s0104_sec1 .telG .tel a{ font-size:34px; font-weight:800; color:#111; text-decoration:none; }
.s0104_sec1 .telG .add{ font-size:14px; color:#555; margin-top:10px; }

@media all and (max-width:1024px){
    .s_visual{ padding:70px 0; }
    .s_visual .h2_tit .tit{ font-size:32px; }

    .sub-section{ padding:60px 0; }
    .p_text.large{ font-size:18px; }

    .s0102_sec1 .cont.s2 .container{ display:block; }
    .s0102_sec1 .photo_con._pc{ display:none; }
    .s0102_sec1 .photo_con._mo{ display:block; }
    .s0102_sec1 .name{ font-size:26px; }

    .s0103_sec1 .cont.s2 .swiper{ max-width:100%; }
    .s0103_sec1 .cont.s3 ul{ gap:14px; flex-wrap:wrap; }
    .s0103_sec1 .cont.s3 li{ font-size:14px; }

    .s0104_sec1 .h3_tit .tit{ font-size:24px; }
    .s0104_sec1 .info_con{ display:block; }
    .s0104_sec1 .infoG .address{ font-size:18px; }
    .s0104_sec1 .infoG .btn a{ width:140px; line-height:48px; font-size:14px; }
    .s0104_sec1 .officeG,
    .s0104_sec1 .telG{ width:auto; margin-top:25px; }
}
