@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css");

/* =========================================================
   상품권 사이트 공통 타이포그래피 v15
   목표: 상품 카드형 쇼핑몰처럼 선명하고 편안한 가독성
   ========================================================= */

:root{
  --gift-font:
    "Pretendard Variable",
    Pretendard,
    "SUIT Variable",
    SUIT,
    "Noto Sans KR",
    "Apple SD Gothic Neo",
    "Malgun Gothic",
    Arial,
    sans-serif;

  --gift-title:#121a27;
  --gift-body:#4d5968;
  --gift-muted:#7f8997;
  --gift-blue:#168fdb;
}

/* 기본 문장 체계 */
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

body,
button,
input,
select,
textarea{
  font-family:var(--gift-font)!important;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

body{
  color:var(--gift-body);
  font-size:16px;
  font-weight:400;
  line-height:1.55;
  letter-spacing:-.02em;
  word-break:keep-all;
}

button,
input,
select,
textarea{
  font-size:15px;
  font-weight:400;
  letter-spacing:-.02em;
}

h1,
h2,
h3,
h4,
h5,
h6{
  margin-top:0;
  color:var(--gift-title);
  font-family:var(--gift-font)!important;
  font-weight:700;
  line-height:1.35;
  letter-spacing:-.035em;
  word-break:keep-all;
}

p,
li,
dd,
dt,
label,
span{
  text-wrap:pretty;
}

/* 공통 섹션 제목 */
.ghome-section h2,
.gm3-process h2,
.gm3-faq h2,
.glive-card__heading h2,
.grate-head h2{
  color:var(--gift-title)!important;
  font-weight:700!important;
  letter-spacing:-.035em!important;
}

.ghome-section-head p,
.grate-date,
.gug-eyebrow,
.glive-card__heading p{
  font-weight:700!important;
  letter-spacing:-.018em!important;
}

/* 헤더 */
.glayout-header,
.glayout-header a,
.glayout-nav a,
.glayout-mobile-menu a{
  font-family:var(--gift-font)!important;
}

.glayout-nav a,
.glayout-mobile-menu a{
  color:#26303c;
  font-size:15px;
  font-weight:700;
  letter-spacing:-.025em;
}

/* 메인 배너 */
.ghero h1,
.ghero__content h1{
  font-family:var(--gift-font)!important;
  font-weight:700!important;
  letter-spacing:-.04em!important;
  line-height:1.25!important;
}

.ghero__description{
  font-size:17px;
  font-weight:400!important;
  line-height:1.72!important;
  letter-spacing:-.026em!important;
}

.ghero__button{
  font-size:15px;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}

/* 실시간 매입률 */
.grate-date{
  color:var(--gift-blue)!important;
  font-size:14px!important;
  font-weight:800!important;
}

.grate-head h2{
  font-size:34px!important;
  line-height:1.25!important;
}

.grate-fee strong{
  font-weight:700!important;
  letter-spacing:-.03em!important;
}

.grate-fee span{
  color:#252d38!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}

.grate-card__name{
  color:#202832!important;
  font-weight:600!important;
  letter-spacing:-.03em!important;
}

.grate-card__rate{
  font-weight:700!important;
  letter-spacing:-.025em!important;
}

/* 신청폼 */
.gapply-v3-card,
.gapply-v3-card input,
.gapply-v3-card select,
.gapply-v3-card button{
  font-family:var(--gift-font)!important;
}

.gapply-v3-card>h2{
  color:var(--gift-title)!important;
  font-size:28px!important;
  font-weight:700!important;
  letter-spacing:-.035em!important;
}

.gapply-v3-label{
  color:#202832!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:-.028em!important;
}

.gapply-v3-product-copy strong{
  color:#202832!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.35!important;
}

.gapply-v3-product-copy small{
  font-size:12px!important;
  font-weight:800!important;
}

.gapply-v3-card input::placeholder{
  color:#9aa3ae;
  font-weight:500;
}

.gapply-v3-submit-wrap button,
.gapply-v3-add,
.gapply-v3-add-mobile{
  font-weight:600!important;
  letter-spacing:-.025em!important;
}

/* 실시간 진행현황 */
.glive-card__heading h2{
  font-size:26px!important;
}

.glive-card__heading p{
  color:#7f8997!important;
  font-size:14px!important;
  font-weight:600!important;
}

.glive-row__product strong{
  color:#242c36!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}

.glive-row__name{
  color:#818a95!important;
  font-weight:550!important;
}

.glive-status{
  font-weight:800!important;
  letter-spacing:-.02em!important;
}

/* 4단계 카드 */
.gm3-process h2{
  font-size:32px!important;
}

.gm3-process-card h3,
.gm3-step-card h3,
.gm3-process article h3{
  color:#202832!important;
  font-size:18px!important;
  font-weight:800!important;
  letter-spacing:-.035em!important;
}

.gm3-process-card p,
.gm3-step-card p,
.gm3-process article p{
  color:#657181!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.7!important;
}

/* FAQ */
.gm3-faq h2{
  font-size:32px!important;
}

.gm3-faq button,
.gm3-faq summary,
.gm3-faq-question{
  color:#202832!important;
  font-size:15px!important;
  font-weight:600!important;
  line-height:1.55!important;
  letter-spacing:-.025em!important;
}

.gm3-faq-answer,
.gm3-faq dd{
  color:#5e6978!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.75!important;
}

/* 푸터 */
.glayout-footer,
.glayout-footer a,
.glayout-footer p,
.glayout-footer li{
  font-family:var(--gift-font)!important;
}

.glayout-footer{
  font-size:13px;
  line-height:1.75;
}

.glayout-footer strong,
.glayout-footer__title{
  font-weight:600!important;
  letter-spacing:-.025em!important;
}

/* 카드와 폼의 시각적 호흡 */
.grate-card,
.glive-card,
.gapply-v3-card,
.gm3-process article,
.gm3-faq details{
  text-rendering:optimizeLegibility;
}

/* 모바일 */
@media(max-width:720px){
  body{
    font-size:15px;
    line-height:1.55;
    letter-spacing:-.02em;
  }

  .ghero h1,
  .ghero__content h1{
    font-size:27px!important;
    line-height:1.2!important;
  }

  .ghero__description{
    font-size:13px!important;
    font-weight:400!important;
    line-height:1.62!important;
  }

  .grate-date{
    font-size:12px!important;
  }

  .grate-head h2{
    font-size:25px!important;
  }

  .grate-fee strong{
    font-size:16px!important;
  }

  .grate-fee span{
    font-size:12px!important;
    line-height:1.45!important;
  }

  .grate-card__name{
    font-size:12px!important;
  }

  .grate-card__rate{
    font-size:19px!important;
  }

  .gapply-v3-card>h2{
    font-size:23px!important;
  }

  .gapply-v3-label{
    font-size:13px!important;
  }

  .gapply-v3-card input,
  .gapply-v3-card select,
  .gapply-v3-card button{
    font-size:13px;
  }

  .glive-card__heading h2{
    font-size:21px!important;
  }

  .glive-card__heading p{
    font-size:12px!important;
  }

  .glive-row__product strong{
    font-size:12px!important;
  }

  .gm3-process h2,
  .gm3-faq h2{
    font-size:25px!important;
  }

  .gm3-process-card h3,
  .gm3-step-card h3,
  .gm3-process article h3{
    font-size:16px!important;
  }

  .gm3-process-card p,
  .gm3-step-card p,
  .gm3-process article p,
  .gm3-faq-answer,
  .gm3-faq dd{
    font-size:13px!important;
  }

  .gm3-faq button,
  .gm3-faq summary,
  .gm3-faq-question{
    font-size:13px!important;
  }
}

/* 아주 작은 화면에서 줄바꿈 안정화 */
@media(max-width:390px){
  body{
    word-break:normal;
    overflow-wrap:anywhere;
  }

  h1,
  h2,
  h3,
  h4{
    word-break:keep-all;
    overflow-wrap:normal;
  }
}