/*     534934 : 한줄 텍스트      */
<!-- 상단 -->
.sub-hero--signature{position:relative;overflow:hidden;padding:60px 0 0;}
.sub-hero__inner{position:relative;z-index:2;text-align:center;max-width:none;padding:0; margin-top:80px;}
.sub-hero__copy{position:relative;z-index:3;max-width:1440px;margin:0 auto;}
.sub-hero__copy .eyebrow{margin-bottom:24px;color:#0a44af;font-size:20px;font-weight:500;letter-spacing:.08em;font-family:"Cormorant Garamond",serif !important;}
.sub-hero__copy h2{margin:0; color:#3f3935; font-size: 3vw; line-height:1;font-weight:400;letter-spacing:-.06em;font-family:"Cormorant Garamond",serif !important;}
.sub-hero__copy p{margin:40px 0 0 0; color:#5e534a;font-size:20px;line-height:1.7;font-weight:400;word-break:keep-all;}
.sub-hero__visual{position:relative;margin-top:-100px;height:200px;width:100%;overflow:hidden;background:none;}
.sub-hero__visual:before{content:"";position:absolute;inset:0;background:url('/img_up/shop_pds/fatima11/build/option/gong-tong-ba-tang11784176084.jpg') no-repeat center/cover;transform:scale(1.08);transition:transform 4.8s ease;}
.sub-hero__visual:after{content:"";position:absolute;left:0;top:0;width:100%;height:180px;background:linear-gradient(to bottom,rgba(251,248,244,1) 0%,rgba(251,248,244,.88) 28%,rgba(251,248,244,.45) 62%,rgba(251,248,244,0) 100%);z-index:2;pointer-events:none;}
.sub-hero__visual.is-zoom-out:before{transform:scale(1);}
.signature-bg{display:none;}

@media(max-width:1200px){
.sub-hero__inner {margin-top:10px;}
.sub-hero__copy h2{font-size:6.5vw;}
.sub-hero__copy p{font-size:3vw;}
.sub-hero__visual{height:620px;}
}

@media(max-width:768px){
.sub-hero--signature{padding:30px 0 0;}
.sub-hero__copy{padding:0 20px;}
.sub-hero__copy .eyebrow{font-size:15px;}
.sub-hero__copy h2{line-height:1.06;}
.sub-hero__copy p{margin-top:28px;font-size:17px;}
.sub-hero__visual{margin-top:-100px;height:150px;width:100%;}
.sub-hero__visual:before{transform:scale(1.05);}
.sub-hero__visual:after{height:110px;}
}

/*     535934 : 진료시간      */
/* ==============================
   진료시간 섹션
============================== */

.text__1373035__ {
  width: 100%; padding:100px 0;
}

.text__1373035__ * {
  box-sizing: border-box;
}

.text__1373035__ p {
  margin: 0;
}

.text__1373035__ .time_cont {
  width: min(1400px, calc(100% - 40px));
  margin: 0 auto;
}

.text__1373035__ .grid_box {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.text__1373035__ .cont_tit {
  font-size: 28px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: -0.04em;
  color: #111827;
}

.text__1373035__ .right {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.text__1373035__ .right .cont {
  position: relative;
  display: block;
  min-height: 132px;
  padding: 22px 20px;
  overflow: hidden;
  border-radius: 18px;
  background: #f4f6fa;
  border: 1px solid rgba(17, 24, 39, 0.05);
  text-decoration: none;
  transition: transform .3s ease, box-shadow .3s ease, background-color .3s ease, border-color .3s ease;
}

.text__1373035__ .right .cont:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.09);
}

.text__1373035__ .right .cont .img {
  position: absolute;
  right: 18px;
  top: 16px;
  height: 42px;
  z-index: 1;
}

.text__1373035__ .right .cont .img svg {
  width: auto;
  height: 100%;
  overflow: visible;
  opacity: 0.16;
}

.text__1373035__ .right .cont .sub_tit {
  position: relative;
  z-index: 2;
  max-width: 80%;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  color: #8899a6;
  letter-spacing: -0.03em;
}

.text__1373035__ .right .cont .tit {
  position: relative;
  z-index: 2;
  margin-top: 6px;
  font-size: 19px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.04em;
  color: #111827;
}

.text__1373035__ .right .cont .txt {
  position: relative;
  z-index: 2;
  display: block;
  margin-top: 10px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  color: #8899a6;
  letter-spacing: -0.03em;
}

/* 네이버 / 카카오 카드 */
.text__1373035__ .right .cont.naver,
.text__1373035__ .right .cont.kakao {
  background: #fff;
}

.text__1373035__ .right .cont.naver {
  border-color: rgba(3, 199, 90, 0.35);
}

.text__1373035__ .right .cont.kakao {
  border-color: rgba(255, 202, 40, 0.65);
}

.text__1373035__ .right .cont.naver:hover {
  background: #eaf8f1;
  border-color: transparent;
}

.text__1373035__ .right .cont.kakao:hover {
  background: #fff6d7;
  border-color: transparent;
}

.text__1373035__ .right .cont.naver .img svg,
.text__1373035__ .right .cont.kakao .img svg {
  opacity: 1;
}

.text__1373035__ .right .cont.kakao .img {
  height: 48px;
}

.text__1373035__ .right .cont.naver .txt,
.text__1373035__ .right .cont.kakao .txt {
  display: flex;
  align-items: center;
  gap: 8px;
}

.text__1373035__ .right .cont.naver .txt svg,
.text__1373035__ .right .cont.kakao .txt svg {
  width: auto;
  height: 1em;
  fill: #8899a6;
  transition: transform .3s ease;
}

.text__1373035__ .right .cont.naver:hover .txt svg,
.text__1373035__ .right .cont.kakao:hover .txt svg {
  transform: translateX(4px);
}

/* PC */
@media all and (min-width:1024px) {
  .text__1373035__ .grid_box {
    grid-template-columns: 220px 1fr;
    gap: 0 56px;
    align-items: start;
  }

  .text__1373035__ .cont_tit {
    padding-top: 8px;
    font-size: 34px;
  }

  .text__1373035__ .right {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }

  .text__1373035__ .right .cont {
    min-height: 190px;
    padding: 36px 34px;
    border-radius: 24px;
  }

  .text__1373035__ .right .cont .img {
    right: 28px;
    top: 26px;
    height: 50px;
  }

  .text__1373035__ .right .cont.kakao .img {
    height: 58px;
  }

  .text__1373035__ .right .cont .sub_tit {
    font-size: 19px;
  }

  .text__1373035__ .right .cont .tit {
    margin-top: 6px;
    font-size: 24px;
  }

  .text__1373035__ .right .cont .txt {
    margin-top: 14px;
    font-size: 16px;
  }
}

/* 모바일 */
@media all and (max-width:767px) {
.text__1373035__ {padding:50px 0;}
  .text__1373035__ .time_cont {
    width: calc(100% - 0px);
  }

  .text__1373035__ .right {
    grid-template-columns: 1fr;
  }

  .text__1373035__ .cont_tit {
    font-size: 26px;
  }

  .text__1373035__ .right .cont {
    min-height: 118px;
    padding: 20px 18px;
    border-radius: 16px;
  }

  .text__1373035__ .right .cont .tit {
    font-size: 18px;
  }
}

/*     524954 : 지도 (주소 직접 입력)      */
.map__524954__ { max-width:1280px; margin:0px auto 0} 
.map__524954__ iframe {width:100%;vertical-align:top}
.map__524954__ p {display:none;margin:0;padding:1em 0;font-size:13px}
.map__524954__ .build_preview__524954__ {display:table;width:100%}
.map__524954__ .build_preview__524954__ .inner__524954__ {display:table-cell;height:500px;border:1px solid #ddd;background:#f8f8f8;text-align:center;vertical-align:middle}
.map__524954__ .build_preview__524954__ .inner__524954__ .subject__524954__ {display:block;font-size:16px;font-weight:bold}
.map__524954__ .build_preview__524954__ .inner__524954__ .exp_text__524954__ {display:block;margin-top:10px;font-weight:normal;font-size:13px;color:#777}

@media all and (max-width:767px){
.map__524954__ { margin-top:0px }
.map__524954__ iframe {height:200px  !important}
.map__524954__ .build_preview__524954__ .inner__524954__ {height:200px}
}

/*     535944 : 한줄 텍스트      */
/* ==============================
   LOCATION GUIDE - 오시는길
============================== */

.location_guide__gangdong {
  width: 100%;
  padding: 90px 0 0;
  background: #fff;
}

.location_guide__gangdong * {
  box-sizing: border-box;
}

.location_guide__gangdong p {
  margin: 0;
}

.location_guide__gangdong a {
  color: inherit;
  text-decoration: none;
}

.location_guide__gangdong .loc_inner {
  width: min(1400px, calc(100% - 40px));
  margin: 0 auto;
}

.location_guide__gangdong .loc_grid_box {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.location_guide__gangdong .loc_cont_tit {
  font-size: 28px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: -0.04em;
  color: #111827;
}

.location_guide__gangdong .loc_right {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.location_guide__gangdong .loc_card {
  position: relative;
  display: block;
  min-height: 170px;
  padding: 28px 24px;
  overflow: hidden;
  border-radius: 22px;
  background: #f4f6fa;
  border: 1px solid rgba(17, 24, 39, 0.06);
  transition: transform .3s ease, box-shadow .3s ease, background-color .3s ease;
}

.location_guide__gangdong .loc_card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.08);
}

.location_guide__gangdong .address_card {
  background: #111827;
}

.location_guide__gangdong .address_card .loc_sub_tit,
.location_guide__gangdong .address_card .loc_tit,
.location_guide__gangdong .address_card .loc_txt,
.location_guide__gangdong .address_card .notice_txt {
  color: #fff;
}

.location_guide__gangdong .address_card .loc_txt,
.location_guide__gangdong .address_card .notice_txt {
  opacity: .82;
}

.location_guide__gangdong .loc_icon {
  position: absolute;
  right: 22px;
  top: 22px;
  height: 46px;
  z-index: 1;
}

.location_guide__gangdong .loc_icon svg {
  width: auto;
  height: 100%;
  fill: #111827;
  opacity: .13;
}

.location_guide__gangdong .address_card .loc_icon {
  right: 30px;
  top: 30px;
  height: 72px;
}

.location_guide__gangdong .address_card .loc_icon svg {
  fill: #fff;
  opacity: .13;
}

.location_guide__gangdong .loc_sub_tit {
  position: relative;
  z-index: 2;
  max-width: 80%;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  color: #8899a6;
  letter-spacing: -0.03em;
}

.location_guide__gangdong .loc_tit {
  position: relative;
  z-index: 2;
  margin-top: 14px;
  font-size: 23px;
  font-weight: 800;
  line-height: 1.35;
  color: #111827;
  letter-spacing: -0.05em;
  word-break: keep-all;
}

.location_guide__gangdong .loc_txt {
  position: relative;
  z-index: 2;
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.7;
  color: #5f6b7a;
  letter-spacing: -0.035em;
  word-break: keep-all;
}

.location_guide__gangdong .loc_badges {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 18px;
}

.location_guide__gangdong .loc_badges span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  background: #fff;
  font-size: 13px;
  font-weight: 700;
  color: #4b5563;
}

.location_guide__gangdong .loc_badges .subway5 {
  background: rgba(153, 108, 172, 0.13);
  color: #7a4f90;
}


.location_guide__gangdong .loc_badges .bus_red {
  background: rgba(251, 88, 82, 0.1);
  color: #fb5852;
}

.location_guide__gangdong .loc_badges .bus_green {
  background: rgba(22, 163, 74, 0.1);
  color: #16a34a;
}

.location_guide__gangdong .map_btns {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 24px;
}

.location_guide__gangdong .map_btns a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  transition: all .3s ease;
}

.location_guide__gangdong .map_btns a:hover {
  background: #fff;
  color: #111827;
}

.location_guide__gangdong .notice_txt {
  position: relative;
  z-index: 2;
  margin-top: 22px;
  padding: 16px 18px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.08);
  font-size: 15px;
  line-height: 1.65;
  font-weight: 400;
  letter-spacing: -0.03em;
  word-break: keep-all;
}

/* PC */
@media all and (min-width:1024px) {
  .location_guide__gangdong .loc_grid_box {
    grid-template-columns: 220px 1fr;
    gap: 0 56px;
    align-items: start;
  }

  .location_guide__gangdong .loc_cont_tit {
    padding-top: 8px;
    font-size: 34px;
  }

  .location_guide__gangdong .loc_right {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .location_guide__gangdong .address_card {
    grid-column: 1 / -1;
    min-height: 250px;
    padding: 42px 40px;
    border-radius: 26px;
  }

  .location_guide__gangdong .loc_card:not(.address_card) {
    min-height: 230px;
    padding: 36px 34px;
    border-radius: 24px;
  }

  .location_guide__gangdong .loc_card:not(.address_card) .loc_icon {
    right: 28px;
    top: 28px;
    height: 54px;
  }

  .location_guide__gangdong .loc_sub_tit {
    font-size: 19px;
  }

  .location_guide__gangdong .address_card .loc_tit {
    font-size: 32px;
  }

  .location_guide__gangdong .loc_tit {
    margin-top: 18px;
    font-size: 25px;
  }

  .location_guide__gangdong .loc_txt {
    margin-top: 16px;
    font-size: 17px;
  }

  .location_guide__gangdong .address_card .loc_txt {
    max-width: 720px;
    font-size: 18px;
  }

  .location_guide__gangdong .notice_txt {
    max-width: 760px;
  }
}

/* Mobile */
@media all and (max-width:767px) {
  .location_guide__gangdong {
    padding: 30px 0 0px;
  }

  .location_guide__gangdong .loc_inner {
    width: calc(100% - 0px);
  }

  .location_guide__gangdong .loc_cont_tit {
    font-size: 28px;
  }

  .location_guide__gangdong .loc_card {
    min-height: auto;
    padding: 24px 20px;
    border-radius: 18px;
  }

  .location_guide__gangdong .address_card {
    padding: 28px 22px;
  }

  .location_guide__gangdong .loc_icon {
    right: 18px;
    top: 18px;
    height: 40px;
  }

  .location_guide__gangdong .address_card .loc_icon {
    right: 20px;
    top: 20px;
    height: 52px;
  }

  .location_guide__gangdong .loc_sub_tit {
    font-size: 15px;
  }

  .location_guide__gangdong .loc_tit {
    font-size: 21px;
  }

  .location_guide__gangdong .address_card .loc_tit {
    font-size: 24px;
  }

  .location_guide__gangdong .loc_txt {
    font-size: 15px;
  }

  .location_guide__gangdong .map_btns a {
    flex: 1;
    height: 40px;
    font-size: 13px;
  }

  .location_guide__gangdong .notice_txt {
    padding: 14px 16px;
    font-size: 14px;
  }
}

/*     536734 : 한줄 텍스트      */
/* =========================================
   FATIMA PARKING GUIDE
========================================= */

.ftr-parking-guide,
.ftr-parking-guide *{
  box-sizing:border-box;
}

.ftr-parking-guide{
  --ftr-navy:#123d61;
  --ftr-deep:#092d4b;
  --ftr-blue:#1671bd;
  --ftr-sky:#eaf5fd;
  --ftr-light:#f5f9fc;
  --ftr-line:#dce7ef;
  --ftr-red:#ef3f31;
  --ftr-text:#243746;
  --ftr-gray:#667786;

  position:relative;
  width:100%;
  overflow:hidden;
  background:#fff;
  font-family:"Pretendard","Noto Sans KR","Malgun Gothic",sans-serif;
  color:var(--ftr-text);
  word-break:keep-all;
}

.ftr-parking-guide button,
.ftr-parking-guide a{
  font-family:inherit;
}

.ftr-parking-guide button{
  appearance:none;
  -webkit-appearance:none;
  border:0;
}

.ftr-parking-guide img{
  display:block;
  max-width:100%;
}

.ftr-parking-guide svg{
  display:block;
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* =========================================
   상단 비주얼
========================================= */

.ftr-parking-hero{
  position:relative;
  display:flex;
  align-items:center;
  min-height:500px;
  padding:110px 40px;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 85% 18%,
      rgba(255,255,255,.16) 0 5%,
      transparent 5.5%
    ),
    radial-gradient(
      circle at 85% 18%,
      transparent 0 12%,
      rgba(255,255,255,.08) 12.5% 13%,
      transparent 13.5%
    ),
    linear-gradient(
      125deg,
      #092d4b 0%,
      #114e79 56%,
      #1977b9 100%
    );
}

.ftr-parking-hero::before{
  content:"";
  position:absolute;
  top:-240px;
  right:-170px;
  width:620px;
  height:620px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
}

.ftr-parking-hero::after{
  content:"P";
  position:absolute;
  right:clamp(30px,8vw,150px);
  bottom:-110px;
  color:rgba(255,255,255,.055);
  font-family:Arial,sans-serif;
  font-size:520px;
  font-weight:900;
  line-height:1;
  pointer-events:none;
}

.ftr-parking-hero-inner{
  position:relative;
  z-index:2;
  width:100%;
  max-width:1280px;
  margin:0 auto;
  color:#fff;
}

.ftr-parking-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-bottom:30px;
  font-size:15px;
  font-weight:700;
  letter-spacing:.18em;
}

.ftr-parking-eyebrow::before{
  content:"";
  width:44px;
  height:1px;
  background:rgba(255,255,255,.65);
}

.ftr-parking-hero h2{
  margin:0;
  font-size:clamp(40px,4.7vw,68px);
  font-weight:300;
  line-height:1.28;
  letter-spacing:-.055em;
}

.ftr-parking-hero h2 strong{
  font-weight:750;
}

.ftr-parking-hero p{
  margin:34px 0 0;
  color:rgba(255,255,255,.78);
  font-size:20px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:-.035em;
}

/* =========================================
   공통 내부
========================================= */

.ftr-parking-inner{
  width:100%;
  max-width:1400px;
  margin:0 auto;
  padding:90px 0 120px;
}

/* =========================================
   제목
========================================= */

.ftr-parking-heading{
  margin-bottom:52px;
  text-align:center;
}

.ftr-parking-heading > span,
.ftr-route-heading > div > span{
  display:block;
  margin-bottom:17px;
  color:var(--ftr-blue);
  font-size:15px;
  font-weight:800;
  letter-spacing:.12em;
}

.ftr-parking-heading h3,
.ftr-route-heading h3{
  margin:0;
  color:var(--ftr-navy);
  font-size:clamp(34px,3.3vw,40px);
  font-weight:400;
  line-height:1.35;
  letter-spacing:-.055em;
}

.ftr-parking-heading h3 strong,
.ftr-route-heading h3 strong{
  font-weight:750;
}

.ftr-parking-heading p{
  margin:10px 0 0;
  color:var(--ftr-gray);
  font-size:18px;
  line-height:1.75;
  letter-spacing:-.035em;
}

/* =========================================
   주차 카드
========================================= */

.ftr-parking-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.ftr-parking-card{
  position:relative;
  min-height:355px;
  padding:42px 38px;
  overflow:hidden;
  border:1px solid var(--ftr-line);
  border-radius:28px;
  background:#fff;
  box-shadow:0 15px 50px rgba(20,60,90,.06);
  transition:
    transform .35s ease,
    border-color .35s ease,
    box-shadow .35s ease;
}

.ftr-parking-card:hover{
  transform:translateY(-8px);
  border-color:#b5d5eb;
  box-shadow:0 24px 60px rgba(20,60,90,.12);
}

.ftr-parking-card.is-main{
  color:#fff;
  border-color:transparent;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(255,255,255,.15),
      transparent 40%
    ),
    linear-gradient(145deg,#0b3859,#176dab);
}

.ftr-parking-card-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:66px;
  height:66px;
  margin-bottom:38px;
  border-radius:20px;
  background:var(--ftr-sky);
  color:var(--ftr-blue);
}

.ftr-parking-card-icon svg{
  width:34px;
  height:34px;
  fill:currentColor;
  stroke:none;
}

.ftr-parking-card.is-main .ftr-parking-card-icon{
  background:rgba(255,255,255,.14);
  color:#fff;
}

.ftr-parking-card-label{
  display:block;
  margin-bottom:10px;
  color:var(--ftr-blue);
  font-size:14px;
  font-weight:750;
}

.ftr-parking-card.is-main .ftr-parking-card-label{
  color:#8bd0ff;
}

.ftr-parking-card h4{
  margin:0;
  color:var(--ftr-navy);
  font-size:28px;
  font-weight:750;
  line-height:1.35;
  letter-spacing:-.05em;
}

.ftr-parking-card.is-main h4{
  color:#fff;
}

.ftr-parking-card p{
  min-height:56px;
  margin:18px 0 0;
  color:var(--ftr-gray);
  font-size:17px;
  line-height:1.65;
  letter-spacing:-.035em;
}

.ftr-parking-card.is-main p{
  color:rgba(255,255,255,.72);
}

.ftr-parking-card-point{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  margin-top:24px;
  padding:0 16px;
  border-radius:100px;
  background:var(--ftr-sky);
  color:var(--ftr-blue);
  font-size:14px;
  font-weight:750;
}

.ftr-parking-card.is-main .ftr-parking-card-point{
  background:#fff;
  color:var(--ftr-navy);
}

/* =========================================
   차량 제한 안내
========================================= */

.ftr-parking-notice{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:28px;
  margin-top:24px;
  padding:34px 38px;
  border:1px solid #f0d9d5;
  border-radius:24px;
  background:#fff8f6;
}

.ftr-parking-notice-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  color:var(--ftr-red);
}

.ftr-parking-notice-icon svg{
  fill:currentColor;
  stroke:none;
}

.ftr-parking-notice-text > span{
  display:block;
  margin-bottom:7px;
  color:var(--ftr-red);
  font-size:14px;
  font-weight:800;
}

.ftr-parking-notice-text h4{
  margin:0;
  color:#293c4b;
  font-size:22px;
  font-weight:750;
  line-height:1.5;
  letter-spacing:-.045em;
}

.ftr-parking-notice-text p{
  margin:9px 0 0;
  color:#7b6965;
  font-size:15px;
  line-height:1.65;
  letter-spacing:-.025em;
}

.ftr-parking-notice-call{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:205px;
  min-height:78px;
  padding:13px 25px;
  border-radius:16px;
  background:var(--ftr-red);
  color:#fff;
  text-align:center;
  text-decoration:none;
  transition:
    transform .3s ease,
    box-shadow .3s ease;
}

.ftr-parking-notice-call:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 30px rgba(239,63,49,.22);
}

.ftr-parking-notice-call span{
  margin-bottom:3px;
  font-size:12px;
  font-weight:600;
  opacity:.8;
}

.ftr-parking-notice-call strong{
  font-size:20px;
  font-weight:800;
  letter-spacing:-.02em;
}

/* =========================================
   경로 안내
========================================= */

.ftr-route-section{
  margin-top:90px;
}

.ftr-route-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:50px;
  margin-bottom:55px;
}

.ftr-route-heading p{
  flex:0 0 auto;
  margin:0 0 5px;
  color:var(--ftr-gray);
  font-size:17px;
  line-height:1.75;
  letter-spacing:-.035em;
}

.ftr-route-layout{
  display:grid;
  grid-template-columns:minmax(300px,350px) minmax(0,1fr);
  gap:34px;
  align-items:start;
}

/* =========================================
   PC 단계 버튼
========================================= */

.ftr-route-tabs{
  display:flex;
  position:sticky;
  top:120px;
  flex-direction:column;
  gap:10px;
}

.ftr-route-tab{
  display:flex;
  align-items:center;
  gap:20px;
  width:100%;
  min-height:104px;
  padding:18px 20px;
  border:1px solid var(--ftr-line) !important;
  border-radius:20px;
  background:#fff;
  color:var(--ftr-text);
  text-align:left;
  cursor:pointer;
  transition:
    border-color .3s ease,
    background .3s ease,
    color .3s ease,
    transform .3s ease,
    box-shadow .3s ease;
}

.ftr-route-tab:hover{
  border-color:#9cc7e4 !important;
  transform:translateX(5px);
}

.ftr-route-tab.is-active{
  border-color:var(--ftr-blue) !important;
  background:var(--ftr-navy);
  color:#fff;
  box-shadow:0 18px 35px rgba(18,61,97,.16);
}

.ftr-route-number{
  display:flex;
  flex:0 0 48px;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border-radius:50%;
  background:var(--ftr-sky);
  color:var(--ftr-blue);
  font-size:14px;
  font-weight:800;
}

.ftr-route-tab.is-active .ftr-route-number{
  background:var(--ftr-blue);
  color:#fff;
}

.ftr-route-tab-text{
  display:block;
  min-width:0;
}

.ftr-route-tab-text strong{
  display:block;
  font-size:17px;
  font-weight:750;
  line-height:1.4;
  letter-spacing:-.04em;
}

.ftr-route-tab-text small{
  display:block;
  margin-top:5px;
  color:#7b8a96;
  font-size:13px;
  font-weight:450;
  line-height:1.45;
  letter-spacing:-.025em;
}

.ftr-route-tab.is-active .ftr-route-tab-text small{
  color:rgba(255,255,255,.62);
}

/* =========================================
   이미지 영역
========================================= */

.ftr-route-view{
  min-width:0;
}

.ftr-route-stage{
  position:relative;
  width:100%;
  aspect-ratio:5 / 3;
  overflow:hidden;
  border-radius:30px;
  background:#e7edf1;
  box-shadow:0 28px 70px rgba(18,61,97,.14);
}

.ftr-route-panel{
  position:absolute;
  inset:0;
  z-index:1;
  margin:0;
  visibility:hidden;
  opacity:0;
  transform:scale(1.025);
  transition:
    visibility .55s ease,
    opacity .55s ease,
    transform .8s ease;
}

.ftr-route-panel.is-active{
  z-index:2;
  visibility:visible;
  opacity:1;
  transform:scale(1);
}

.ftr-route-panel img{
  width:100%;
  height:100%;
  object-fit:contain;
  background:#e7edf1;
}

.ftr-route-controller{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:24px;
}

.ftr-route-progress{
  display:flex;
  align-items:baseline;
  color:var(--ftr-navy);
}

.ftr-route-progress span{
  margin-right:13px;
  color:#83919c;
  font-size:12px;
  font-weight:750;
  letter-spacing:.12em;
}

.ftr-route-progress strong{
  font-size:35px;
  font-weight:800;
}

.ftr-route-progress em{
  margin-left:5px;
  color:#97a3ac;
  font-size:16px;
  font-style:normal;
  font-weight:600;
}

.ftr-route-arrows{
  display:flex;
  gap:8px;
}

.ftr-route-arrows button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  border:1px solid var(--ftr-line);
  border-radius:50%;
  background:#fff;
  color:var(--ftr-navy);
  cursor:pointer;
  transition:
    border-color .3s ease,
    background .3s ease,
    color .3s ease,
    transform .3s ease;
}

.ftr-route-arrows button:hover{
  transform:translateY(-3px);
  border-color:var(--ftr-navy);
  background:var(--ftr-navy);
  color:#fff;
}

.ftr-route-arrows svg{
  width:21px;
  height:21px;
}

/* =========================================
   전화 CTA
========================================= */

.ftr-parking-contact{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  margin-top:150px;
  padding:60px 65px;
  overflow:hidden;
  border-radius:34px;
  background:
    radial-gradient(
      circle at 100% 50%,
      rgba(255,255,255,.12),
      transparent 35%
    ),
    linear-gradient(120deg,#092e4c,#155f94);
  color:#fff;
}

.ftr-parking-contact-symbol{
  display:flex;
  align-items:center;
  justify-content:center;
  width:88px;
  height:88px;
  border-radius:26px;
  background:rgba(255,255,255,.12);
  color:#fff;
}

.ftr-parking-contact-symbol svg{
  width:46px;
  height:46px;
  fill:currentColor;
  stroke:none;
}

.ftr-parking-contact-copy span{
  display:block;
  margin-bottom:10px;
  color:#8ed1ff;
  font-size:15px;
  font-weight:750;
}

.ftr-parking-contact-copy h3{
  margin:0;
  color:#fff;
  font-size:30px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:-.05em;
}

.ftr-parking-contact-copy h3 strong{
  font-weight:750;
}

.ftr-parking-contact-button{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  min-width:260px;
  min-height:92px;
  padding:18px 23px 18px 28px;
  border-radius:20px;
  background:#fff;
  color:var(--ftr-navy);
  text-decoration:none;
  transition:
    transform .3s ease,
    box-shadow .3s ease;
}

.ftr-parking-contact-button:hover{
  transform:translateY(-5px);
  box-shadow:0 20px 40px rgba(0,0,0,.16);
}

.ftr-parking-contact-button span{
  grid-column:1;
  font-size:12px;
  font-weight:700;
  opacity:.62;
}

.ftr-parking-contact-button strong{
  grid-column:1;
  margin-top:2px;
  font-size:24px;
  font-weight:850;
  letter-spacing:-.025em;
}

.ftr-parking-contact-button svg{
  grid-column:2;
  grid-row:1 / span 2;
  width:24px;
  height:24px;
  margin-left:20px;
}

/* =========================================
   스크롤 모션
========================================= */

.ftr-parking-guide [data-ftr-reveal]{
  opacity:0;
  transform:translateY(35px);
  transition:
    opacity .8s ease,
    transform .8s cubic-bezier(.2,.7,.2,1);
}

.ftr-parking-guide [data-ftr-reveal].is-ftr-visible{
  opacity:1;
  transform:translateY(0);
}

.ftr-parking-card:nth-child(2){
  transition-delay:.1s;
}

.ftr-parking-card:nth-child(3){
  transition-delay:.2s;
}

/* =========================================
   태블릿
========================================= */

@media screen and (max-width:1100px){

  .ftr-parking-hero{
    min-height:450px;
    padding:90px 40px;
  }

  .ftr-parking-inner{
    padding:100px 32px 110px;
  }

  .ftr-parking-cards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ftr-parking-card:last-child{
    grid-column:1 / -1;
    min-height:auto;
  }

  .ftr-parking-notice{
    grid-template-columns:auto minmax(0,1fr);
  }

  .ftr-parking-notice-call{
    grid-column:1 / -1;
    width:100%;
    min-height:70px;
  }

  .ftr-route-heading{
    display:block;
  }

  .ftr-route-heading p{
    margin-top:22px;
  }

  .ftr-route-layout{
    display:block;
  }

  .ftr-route-tabs{
    display:grid;
    position:relative;
    top:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-bottom:26px;
  }

  .ftr-route-tab{
    min-height:94px;
  }

  .ftr-route-tab:last-child{
    grid-column:1 / -1;
  }

  .ftr-route-tab:hover{
    transform:translateY(-3px);
  }

  .ftr-parking-contact{
    grid-template-columns:auto minmax(0,1fr);
    padding:48px;
  }

  .ftr-parking-contact-button{
    grid-column:1 / -1;
    width:100%;
    margin-top:5px;
  }
}

/* =========================================
   모바일
   각 단계 설명과 이미지를 세로로 표시
========================================= */

@media screen and (max-width:680px){

  .ftr-parking-hero{
    min-height:410px;
    padding:75px 20px;
  }

  .ftr-parking-hero::after{
    right:-35px;
    bottom:-50px;
    font-size:310px;
  }

  .ftr-parking-eyebrow{
    margin-bottom:22px;
    font-size:12px;
  }

  .ftr-parking-hero h2{
    font-size:36px;
    line-height:1.34;
  }

  .ftr-parking-hero p{
    margin-top:25px;
    font-size:16px;
    line-height:1.75;
  }

  .ftr-parking-hero p br{
    display:none;
  }

  .ftr-parking-inner{
    padding:75px 20px 80px;
  }

  .ftr-parking-heading{
    margin-bottom:34px;
    text-align:left;
  }

  .ftr-parking-heading > span,
  .ftr-route-heading > div > span{
    margin-bottom:12px;
    font-size:13px;
  }

  .ftr-parking-heading h3,
  .ftr-route-heading h3{
    font-size:32px;
    line-height:1.4;
  }

  .ftr-parking-heading p{
    margin-top:17px;
    font-size:16px;
  }

  /* 주차 안내 카드 */
  .ftr-parking-cards{
    display:block;
  }

  .ftr-parking-card{
    min-height:auto;
    margin-top:14px;
    padding:30px 26px;
    border-radius:22px;
  }

  .ftr-parking-card:first-child{
    margin-top:0;
  }

  .ftr-parking-card:hover{
    transform:none;
  }

  .ftr-parking-card-icon{
    width:56px;
    height:56px;
    margin-bottom:25px;
    border-radius:17px;
  }

  .ftr-parking-card-icon svg{
    width:29px;
    height:29px;
  }

  .ftr-parking-card h4{
    font-size:24px;
  }

  .ftr-parking-card p{
    min-height:0;
    font-size:15px;
  }

  .ftr-parking-card-point{
    margin-top:18px;
  }

  /* 차량 제한 안내 */
  .ftr-parking-notice{
    display:block;
    margin-top:16px;
    padding:27px 23px;
    border-radius:20px;
  }

  .ftr-parking-notice-icon{
    width:45px;
    height:45px;
    margin-bottom:17px;
  }

  .ftr-parking-notice-text h4{
    font-size:19px;
  }

  .ftr-parking-notice-text h4 br{
    display:none;
  }

  .ftr-parking-notice-text p{
    font-size:14px;
  }

  .ftr-parking-notice-call{
    width:100%;
    min-width:0;
    min-height:68px;
    margin-top:20px;
  }

  /* 경로 안내 */
  .ftr-route-section{
    margin-top:95px;
  }

  .ftr-route-heading{
    margin-bottom:32px;
  }

  .ftr-route-heading p{
    font-size:15px;
  }

  .ftr-route-heading p br{
    display:none;
  }

  .ftr-route-layout{
    display:block;
  }

  /*
   * 모바일에서는 자바스크립트가 각 이미지를
   * 해당 단계 버튼 바로 아래로 이동합니다.
   */
  .ftr-route-tabs{
    display:flex;
    position:relative;
    top:auto;
    flex-direction:column;
    grid-template-columns:none;
    width:100%;
    margin:0;
    padding:0;
    gap:0;
    overflow:visible;
  }

  /* 단계 설명 박스 */
  .ftr-route-tab,
  .ftr-route-tab:last-child{
    display:flex;
    flex:none;
    grid-column:auto;
    align-items:center;
    gap:15px;
    width:100%;
    min-height:auto;
    margin:0;
    padding:19px 18px;
    border:1px solid var(--ftr-line) !important;
    border-bottom:0 !important;
    border-radius:18px 18px 0 0;
    background:#f5f9fc;
    color:var(--ftr-text);
    box-shadow:none;
    cursor:default;
    pointer-events:none;
    transform:none;
  }

  .ftr-route-tab:hover,
  .ftr-route-tab.is-active{
    border-color:var(--ftr-line) !important;
    background:#f5f9fc;
    color:var(--ftr-text);
    box-shadow:none;
    transform:none;
  }

  .ftr-route-tab:disabled{
    opacity:1;
  }

  .ftr-route-number{
    display:flex;
    flex:0 0 44px;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    border-radius:50%;
    background:var(--ftr-navy);
    color:#fff;
    font-size:13px;
    font-weight:800;
  }

  .ftr-route-tab.is-active .ftr-route-number{
    background:var(--ftr-navy);
    color:#fff;
  }

  .ftr-route-tab-text{
    display:block;
    min-width:0;
  }

  .ftr-route-tab-text strong{
    display:block;
    color:var(--ftr-navy);
    font-size:17px;
    font-weight:750;
    line-height:1.4;
    letter-spacing:-.04em;
  }

  .ftr-route-tab-text small,
  .ftr-route-tab.is-active .ftr-route-tab-text small{
    display:block;
    margin-top:4px;
    color:#71818e;
    font-size:13px;
    font-weight:450;
    line-height:1.5;
    letter-spacing:-.025em;
  }

  /* 버튼 아래로 이동된 이미지 */
  .ftr-route-tabs .ftr-route-panel{
    display:block !important;
    position:relative;
    inset:auto;
    z-index:auto;
    width:100%;
    margin:0 0 24px;
    overflow:hidden;
    visibility:visible;
    opacity:1;
    transform:none;
    border:1px solid var(--ftr-line);
    border-top:0;
    border-radius:0 0 18px 18px;
    background:#e7edf1;
    box-shadow:0 13px 30px rgba(18,61,97,.1);
    transition:none;
  }

  .ftr-route-tabs .ftr-route-panel:last-child{
    margin-bottom:0;
  }

  .ftr-route-tabs .ftr-route-panel img{
    display:block;
    width:100%;
    height:auto;
    object-fit:contain;
    background:#e7edf1;
  }

  /* 기존 슬라이드 틀과 화살표 숨김 */
  .ftr-route-view{
    display:none;
  }

  /* 전화 안내 */
  .ftr-parking-contact{
    display:block;
    margin-top:95px;
    padding:35px 25px;
    border-radius:24px;
  }

  .ftr-parking-contact-symbol{
    width:65px;
    height:65px;
    margin-bottom:25px;
    border-radius:20px;
  }

  .ftr-parking-contact-symbol svg{
    width:34px;
    height:34px;
  }

  .ftr-parking-contact-copy h3{
    font-size:23px;
  }

  .ftr-parking-contact-copy h3 br{
    display:none;
  }

  .ftr-parking-contact-button{
    width:100%;
    min-width:0;
    min-height:82px;
    margin-top:28px;
    padding:15px 20px;
    border-radius:16px;
  }

  .ftr-parking-contact-button strong{
    font-size:22px;
  }
}

/* =========================================
   모션 최소화 설정
========================================= */

@media (prefers-reduced-motion:reduce){

  .ftr-parking-guide *,
  .ftr-parking-guide *::before,
  .ftr-parking-guide *::after{
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
  }

  .ftr-parking-guide [data-ftr-reveal]{
    opacity:1;
    transform:none;
  }
}

