/* ============================================================
   커넥트 광고 페이지 — Figma 3800:53597 (LP-ad, 1440×5244)
   공통(gnb·footer·modal·reveal·clients·cta)은 style.css 재사용,
   여기는 광고 페이지 전용 섹션만.
   ============================================================ */

body.page-ad { background: #FEFEFE; }

.gnb__link.is-active { color: #0A0A0A; font-weight: 600; }

/* ---------- 히어로 (Frame 1984078507, 1280×696 @ x80) ---------- */
.adhero {
  background: #FEFEFE;
  padding: 142px 0 0;   /* 헤더 아래 60px — 세 페이지 공통 */
}
.adhero__inner {
  max-width: 1280px; margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;   /* 세로 센터링이 만들던 과잉 상단 여백 제거 — 카피·비주얼 상단 정렬 */
  gap: 0;
}
.adhero__eyebrow {
  display: inline-block;
  font-size: 18px; font-weight: 600; letter-spacing: -.18px;
  color: var(--accent);
}
.adhero__title {
  margin-top: 17px;
  font-size: 56px; font-weight: 700; line-height: 1.28;
  letter-spacing: -.56px; color: #0A0A0A;
}
.adhero__sub {
  margin-top: 20px;
  font-size: 20px; font-weight: 400; line-height: 1.4;
  letter-spacing: -.18px; color: #4C4E52;
}
.adhero__btns { margin-top: 34px; display: flex; gap: 12px; }
/* 커넥트 메시지 — 타이틀 그룹 중앙정렬, 인물 카드는 그 아래로 (광고 히어로와 같은 결) */
body.page-msg .adhero__inner { grid-template-columns: 1fr; gap: 56px; }
/* 카드가 아래로 내려왔으니 좌우로 흐르게 — 오른쪽만 흐르면 한쪽으로 쏠려 보인다 */
body.page-msg .htick { margin-left: calc(-1 * max(40px, (100vw - 1280px) / 2 + 40px)); }
body.page-msg .adhero__copy { text-align: center; }
body.page-msg .adhero__btns { justify-content: center; }
.adhero__btns a {
  width: 160px; height: 52px;
  display: grid; place-items: center;
  border-radius: 8px;
  font-size: 19px; font-weight: 600; letter-spacing: -.19px;
  transition: transform .2s;
}
.adhero__btns a:hover { transform: translateY(-1px); }
.adhero__btn--primary { background: #0A0A0A; color: #fff; }
.adhero__btn--ghost {
  background: linear-gradient(120deg, #FF7A3D 0%, #FF5C00 100%);
  color: #fff;
}
.adhero__visual img { width: 100%; height: auto; display: block; }
.adhero__visual { min-width: 0; }

/* ---------- 히어로 인물 티커 (Figma Frame 77 — 2120px 트랙이 프레임 밖까지 흐름) ---------- */
.adhero { overflow-x: clip; }
.htick {
  display: flex;
  overflow: hidden;
  /* 우측 풀블리드 — 카드가 뷰포트 끝에서 흘러 들어온다 */
  margin-right: calc(-1 * max(40px, (100vw - 1280px) / 2 + 40px));
  mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}
.htick__track {
  display: flex; align-items: stretch; gap: 29px;
  padding-right: 29px;
  flex: 0 0 auto;
  animation: marquee 32s linear infinite;   /* 1.5배 빠르게 */
}
.htick:hover .htick__track { animation-play-state: paused; }
.htick__track img {
  height: 476px; width: auto;
  border-radius: 24px;
  flex: 0 0 auto;
}
@media (prefers-reduced-motion: reduce) { .htick__track { animation: none; } }

/* ---------- 스탯 3열 (Frame 9) ---------- */
/* 상단 72px = 히어로와의 호흡 (히어로 이미지 베이크 여백 제거 후 공통 적용) */
.adstats { background: #FEFEFE; padding: 72px 0 100px; }
.adstats__grid {
  max-width: 1280px; margin: 0 auto; padding: 0 40px;
  display: grid; grid-template-columns: repeat(3, 1fr);
}
.adstats__cell {
  border: 1px solid #C9C7C7;
  padding: 20px 24px 24px;
  margin-left: -1px;   /* 보더 겹침 */
}
.adstats__cell:first-child { margin-left: 0; }
.adstats__num {
  font-weight: 800; line-height: 1.6;
  font-size: 84px; letter-spacing: -2.3px; color: #EF641D;
}
.adstats__num small { font-size: 47px; font-weight: 700; letter-spacing: -1px; }
.adstats__label { margin-top: 4px; font-size: 24px; font-weight: 600; letter-spacing: -.48px; color: #0A0A0A; }
.adstats__desc { margin-top: 4px; font-size: 18px; line-height: 1.5; letter-spacing: -.18px; color: #4C4E52; }

/* ---------- 공통 섹션 셸 ---------- */
.adsec { padding: 100px var(--pad-x); display: flex; justify-content: center; }
.adsec--white { background: #FEFEFE; }
.adsec--grey { background: var(--surface); }
.adsec__inner { width: 100%; max-width: 1200px; }
.adsec__eyebrow {
  font-family: 'Founders Grotesk Condensed', Pretendard, sans-serif;
  font-weight: 500; font-size: 23px; line-height: 1.2; color: var(--accent);
}
.adsec__title {
  margin-top: 12px;
  font-size: 48px; font-weight: 700; line-height: 1.3;
  letter-spacing: -.48px; color: #0A0A0A;
}

/* ---------- 피드에 스며드는 광고 (Frame 1984078508) ---------- */
.adfeed__grid {
  margin-top: 48px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px;
  align-items: center;
}
.adfeed__visual { border-radius: 24px; overflow: hidden; }
.adfeed__visual img { width: 100%; height: auto; display: block; }
.adfeed__rows { display: flex; flex-direction: column; gap: 24px; }
.adfeed__row {
  padding: 24px 32px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .04);
  border-radius: 20px;
}
.adfeed__row strong {
  display: block;
  font-size: 24px; font-weight: 600; line-height: 1.45; letter-spacing: -.24px; color: #0A0A0A;
}
.adfeed__row p {
  margin-top: 8px;
  font-size: 18px; line-height: 1.5; letter-spacing: -.18px; color: #4C4E52;
  max-width: 380px;
}

/* ---------- 커넥트라서 가능한 세 가지 (Frame 15) ---------- */
.adwhy__cards {
  margin-top: 48px;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.adwhy__card {
  position: relative;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 24px;
  padding: 40px 24px;
  overflow: hidden;
}
.adwhy__card .bizcard__glow { left: 50%; top: 50%; transform: translate(-50%, -50%); }
.adwhy__card .bizcard__glow img { opacity: .4; object-fit: fill; }
.adwhy__body { position: relative; z-index: 1; }
.adwhy__body strong {
  display: block; margin-top: 20px;
  font-size: 20px; font-weight: 600; line-height: 1.5; letter-spacing: -.2px; color: #0A0A0A;
}
.adwhy__body p {
  margin-top: 8px;
  font-size: 18px; line-height: 1.5; letter-spacing: -.36px; color: #4C4E52;
}

/* ---------- 이렇게 광고할 수 있어요 (Frame 1984078509) — 가로 스크롤 ---------- */
.adcase__marquee {
  margin-top: 48px;
  width: 100vw;                       /* 컨테이너 탈출 — 풀블리드 티커 */
  margin-left: calc(50% - 50vw);
  display: flex;
  overflow: hidden;
}
.adcase__row {
  display: flex; gap: 20px;
  padding: 4px 20px 4px 0;
  flex: 0 0 auto;
  animation: adcase-flow 46s linear infinite;
}
.adcase__marquee:hover .adcase__row { animation-play-state: paused; }
@keyframes adcase-flow {
  from { transform: translateX(0); }
  to   { transform: translateX(-100%); }
}
@media (prefers-reduced-motion: reduce) { .adcase__row { animation: none; } }
.adcase__card {
  flex: 0 0 278px;
  height: 330px;
  scroll-snap-align: start;
  background: #FEFEFE;
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 24px;
  padding: 28px 24px;
  display: flex; flex-direction: column; justify-content: space-between;
}
.adcase__tag { font-size: 16px; font-weight: 500; letter-spacing: -.32px; color: var(--accent); }
.adcase__quote {
  margin-top: 8px;
  font-size: 22px; font-weight: 600; line-height: 1.5; letter-spacing: -.22px; color: #120F0D;
}
.adcase__when { font-size: 17px; line-height: 1.5; letter-spacing: -.34px; color: #4C4E52; }

/* ---------- 타겟 4종 (Frame 1984078510) ---------- */
.adtarget__grid {
  margin-top: 48px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
}
.adtarget__card {
  position: relative;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 24px;
  padding: 36px 32px;
  overflow: hidden;
  min-height: 190px;
  display: flex; flex-direction: column; justify-content: flex-start;
}
.adtarget__card strong { font-size: 24px; font-weight: 600; line-height: 1.5; letter-spacing: -.24px; color: #0A0A0A; }
.adtarget__card p { margin-top: 8px; font-size: 18px; line-height: 1.5; letter-spacing: -.36px; color: #4C4E52; max-width: 70%; }
/* 숫자 — 우하단, 카드 밖으로 흘러 잘리게 (피그마 2026-08-19) */
.adtarget__num {
  position: absolute; right: 40px; bottom: -62px;
  font-size: 168px; font-weight: 600; line-height: 1;
  letter-spacing: -6.7px; color: rgba(252, 93, 17, .4);
  pointer-events: none;
}

/* ---------- 반응형 ---------- */
@media (max-width: 1100px) {
  .adhero__inner { grid-template-columns: 1fr; gap: 40px; }
  .adhero__title { font-size: 40px; }
  .adfeed__grid { grid-template-columns: 1fr; }
  .adwhy__cards { grid-template-columns: 1fr; gap: 12px; }
  .adwhy__body strong { margin-top: 16px; }   /* 아이콘과 제목 사이 20 → 16 */
  .adtarget__grid { grid-template-columns: 1fr; }
  .adstats__grid { grid-template-columns: 1fr; }
  .adstats__cell { margin-left: 0; margin-top: -1px; }

  /* 커넥트 메시지 스탯 — 광고 히어로의 숫자 박스와 같은 형태로.
     라벨을 위로 올리고 셋을 한 줄에 넣어 약한 대비의 박스로 묶는다. */
  body.page-msg .adstats__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    margin: 0 20px; padding: 15px 4px 16px;
    border-radius: 16px;
    background: #F6F7F8;
    border: 1px solid rgba(0, 0, 0, .06);
    width: auto;
  }
  body.page-msg .adstats__cell {
    display: flex; flex-direction: column;
    margin: 0; padding: 0 6px; border: 0;
    text-align: center;
  }
  body.page-msg .adstats__label {
    order: -1; margin: 0;
    font-size: clamp(10px, 3vw, 12px); font-weight: 600; letter-spacing: -.2px;
    color: #6B7075;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  body.page-msg .adstats__num {
    margin-top: 3px;
    font-size: clamp(23px, 6.6vw, 28px); letter-spacing: -1px; line-height: 1.15;
  }
  body.page-msg .adstats__num small { font-size: .82em; letter-spacing: -.6px; }
  body.page-msg .adstats__desc { display: none; }   /* 박스가 좁아 설명은 뺀다 */
}
@media (max-width: 768px) {
  .adhero { padding-top: 114px; }   /* 헤더 아래 40px — 소개·광고 히어로와 같은 간격 */
  .adhero__inner, .adstats__grid { padding: 0 20px; }   /* 다른 섹션(--pad-x 20px)과 좌측 러일 통일 */
  .htick { margin-left: -20px; margin-right: -20px; }
  .htick__track { gap: 14px; padding-right: 14px; }
  .htick__track img { height: 300px; border-radius: 16px; }
  .adstats { padding-bottom: 72px; }                    /* 섹션 리듬 72px 통일 */
  .adhero__title { font-size: 32px; }
  .adstats__num { font-size: 56px; }
  .adsec__title { font-size: 30px; }
  .adtarget__card { min-height: 150px; padding: 28px 24px; }
  .adtarget__num { font-size: 104px; right: 20px; bottom: -38px; letter-spacing: -4.2px; }
}

/* ============================================================
   커넥트 메시지 페이지 (Figma 3803:73596)
   ============================================================ */
.msgstep__no {
  display: block;
  font-family: 'Founders Grotesk Condensed', Pretendard, sans-serif;
  font-size: 18px; font-weight: 500; color: var(--accent);
  margin-bottom: 6px;
}

/* 활용법 — 5카드 (3+2) */
.msguse__grid {
  margin-top: 48px;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
}
.msguse__card {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 24px;
  padding: 32px 28px;
  min-height: 168px;
}
.msguse__card strong { font-size: 21px; font-weight: 600; letter-spacing: -.21px; color: #0A0A0A; }
.msguse__card p { margin-top: 10px; font-size: 17px; line-height: 1.55; letter-spacing: -.17px; color: #4C4E52; }

/* 후기 2카드 */
.msgquote__grid {
  margin-top: 48px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
}
.msgquote__card {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 24px;
  padding: 36px 32px;
  display: flex; flex-direction: column; gap: 16px;
}
.msgquote__tag { font-size: 16px; font-weight: 600; letter-spacing: -.16px; color: var(--accent); }
.msgquote__body { font-size: 19px; font-weight: 500; line-height: 1.6; letter-spacing: -.19px; color: #120F0D; flex: 1; }
.msgquote__who { font-size: 15px; letter-spacing: -.15px; color: #8A9098; }

/* ============================================================
   크레딧 요금제 (러버블 정본 이식 — 개인 3플랜 + 할인 토글 + 팀 플랜)
   ============================================================ */
#pricing, #faq { scroll-margin-top: 104px; }

.price__lede {
  margin-top: 20px;
  font-size: 18px; line-height: 1.6; letter-spacing: -.18px; color: var(--text-sub);
}

.price {
  margin-top: 52px;
  display: grid;
  grid-template-columns: 1.06fr 1fr;
  grid-template-areas:
    "phead   thead"
    "pcards  tcard"
    "pnotice tcard";
  column-gap: 40px;
  row-gap: 20px;
  align-items: start;
}
.price__grouphead--personal { grid-area: phead; }
.price__grouphead--team     { grid-area: thead; }
.price__plans  { grid-area: pcards; display: flex; flex-direction: column; gap: 12px; }
.price__notice { grid-area: pnotice; }
.teamplan      { grid-area: tcard; height: 100%; }

/* 그룹 헤더 + 할인 토글 */
.price__groupbar { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.price__groupbar h3 { font-size: 21px; font-weight: 700; letter-spacing: -.21px; color: #0A0A0A; }
.price__groupnote { margin-top: 8px; font-size: 13px; letter-spacing: -.13px; color: #8A9098; }

/* 할인 토글 — [ON 스위치] + 라벨 (외곽 칩 제거 2026-08-19) */
.price__toggle {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 0;
}
.price__switch {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 9px 4px 5px;
  border-radius: 999px;
  background: linear-gradient(120deg, #FF7A3D, #FF5C00);
  transition: background .25s;
}
.price__knob {
  flex: 0 0 14px; width: 14px; height: 14px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
}
.price__onoff { font-size: 11px; font-weight: 800; letter-spacing: .02em; line-height: 1; color: #fff; font-style: normal; }
.price__togglelabel { font-size: 15px; font-weight: 700; letter-spacing: -.15px; color: #E0521A; white-space: nowrap; transition: color .25s; }
.price__toggle:not(.is-on) .price__switch { background: #C2C7CD; flex-direction: row-reverse; padding: 4px 5px 4px 9px; }
.price__toggle:not(.is-on) .price__togglelabel { color: #8A9098; }

/* 개인 플랜 카드 — 라운드 16 체계·요소 다이어트 (2026-08-19 레퍼런스 디벨롭) */
.plan {
  position: relative;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  background: var(--surface);              /* 보더 대신 톤으로 경계 — 라인 다이어트 */
  border: 1.5px solid transparent;
  border-radius: 16px;
  padding: 24px 26px;
}
.plan--featured { background: #fff; border-color: var(--accent); }   /* 추천만 화이트+오렌지 보더로 반전 */
.plan__badge {
  position: absolute; top: -11px; left: 22px;
  padding: 3px 12px;
  border-radius: 999px;
  background: var(--accent);
  font-size: 12px; font-weight: 700; letter-spacing: -.12px; color: #fff;
}
.plan__name { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.plan__name h4 { font-size: 16px; font-weight: 700; letter-spacing: -.16px; color: #0A0A0A; }
.plan__chip {
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(252, 93, 17, .08);
  font-size: 12.5px; font-weight: 600; letter-spacing: -.12px; color: #E0521A;
  white-space: nowrap;
}
.plan__price { margin-top: 10px; display: flex; align-items: baseline; gap: 9px; flex-wrap: wrap; }
.plan__now { font-size: 28px; font-weight: 800; letter-spacing: -.56px; color: #0A0A0A; font-variant-numeric: tabular-nums; }
.plan__per { font-size: 14px; letter-spacing: -.14px; color: var(--text-sub); }
.plan__was { font-size: 14px; letter-spacing: -.14px; color: #8A9098; }   /* 가격 앵커 — 캡션보다 진하게 */
.plan__was[hidden] { display: none; }
.plan__rate { font-size: 12px; font-weight: 700; font-style: normal; letter-spacing: -.12px; color: var(--accent); background: rgba(224,82,26,.10); padding: 3px 8px; border-radius: 999px; }   /* 요금제별 할인율 배지 */
.plan__rate[hidden] { display: none; }
.plan__buy {
  flex: 0 0 auto;
  padding: 14px 27px;
  border-radius: 12px;
  background: #0A0A0A;
  font-size: 15px; font-weight: 600; letter-spacing: -.15px; color: #fff;
  transition: transform .2s;
}
.plan__buy:hover { transform: translateY(-1px); }
.plan__buy--accent {
  background: linear-gradient(120deg, #FF7A3D 0%, #FF5C00 100%);
  color: #fff;
  box-shadow: 0 8px 20px -8px rgba(252, 93, 17, .55);
}

/* 개인 플랜 유의사항 */
.price__notice {
  background: var(--surface);
  border-radius: 12px;
  padding: 18px 22px;
}
.price__notice b { display: block; font-size: 13px; font-weight: 600; letter-spacing: -.13px; color: #4C4E52; }
.price__notice p {
  margin-top: 6px;
  padding-left: 12px; position: relative;
  font-size: 13px; line-height: 1.6; letter-spacing: -.13px; color: #8A9098;
}
.price__notice p::before { content: '·'; position: absolute; left: 2px; }

/* 팀 플랜 카드 — 개인 카드와 같은 그레이 톤, 타이포·블랙 CTA로 격 (블랙박스 반려 2026-08-19) */
.teamplan {
  display: flex; flex-direction: column;
  background: var(--surface);
  border-radius: 20px;
  padding: 40px 36px 32px;
  color: #0A0A0A;
}
.teamplan__title { font-size: 27px; font-weight: 800; letter-spacing: -.27px; line-height: 1.3; }
.teamplan__sub { margin-top: 10px; font-size: 16px; font-weight: 600; letter-spacing: -.16px; color: #E0521A; }
.teamplan__list {
  list-style: none;
  flex: 1;                          /* 데스크톱 스트레치 시 빈 공간을 리스트 사이로 분산 */
  margin-top: 26px; padding-top: 26px;
  margin-bottom: 30px;
  border-top: 1px solid rgba(0, 0, 0, .08);
  display: flex; flex-direction: column; justify-content: space-evenly; gap: 14px;
}
.teamplan__list li {
  position: relative;
  padding-left: 34px;
  font-size: 15px; line-height: 1.6; letter-spacing: -.15px; color: var(--text-sub);
}
.teamplan__list li::before {
  content: '✓';
  position: absolute; left: 0; top: -2px;
  font-size: 20px; font-weight: 700; color: var(--accent);
}
.teamplan__cta {
  margin-top: auto;
  display: grid; place-items: center;
  padding: 15px;
  border-radius: 12px;
  background: linear-gradient(120deg, #FF7A3D 0%, #FF5C00 100%);
  box-shadow: 0 8px 20px -8px rgba(252, 93, 17, .55);
  font-size: 16px; font-weight: 600; letter-spacing: -.16px; color: #fff;
  transition: transform .2s;
}
.teamplan__cta:hover { transform: translateY(-1px); }
.teamplan__hint { margin-top: 12px; font-size: 13px; letter-spacing: -.13px; text-align: center; color: #8A9098; }

/* ============================================================
   FAQ — 좌 타이틀(스티키) + 우 아코디언
   ============================================================ */
.faqwrap {
  display: grid; grid-template-columns: 1fr 2.1fr; gap: 60px;
  align-items: start;
}
.faqwrap__head { position: sticky; top: 120px; }
.faqwrap__sub { margin-top: 16px; font-size: 17px; line-height: 1.6; letter-spacing: -.17px; color: var(--text-sub); }

.faq { display: flex; flex-direction: column; gap: 12px; }
.faq__item {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .05);
  border-radius: 16px;
  padding: 0 28px;
}
.faq__item summary {
  list-style: none;
  cursor: pointer;
  padding: 22px 32px 22px 0;
  font-size: 17px; font-weight: 600; letter-spacing: -.17px; line-height: 1.5; color: #0A0A0A;
  position: relative;
}
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary::after {
  content: '+';
  position: absolute; right: 0; top: 50%;
  transform: translateY(-50%);
  font-size: 22px; font-weight: 400; color: #8A9098;
  transition: transform .2s;
}
.faq__item[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.faq__a { padding: 0 0 24px; max-width: 760px; }
.faq__a p { font-size: 15.5px; line-height: 1.7; letter-spacing: -.15px; color: var(--text-sub); }
.faq__a p + p { margin-top: 10px; }

/* ============================================================
   결제 확인 다이얼로그
   ============================================================ */
.modal__card--confirm { width: min(440px, calc(100vw - 40px)); padding: 32px 28px 24px; }
.payq[hidden] { display: none; }
.modal__card--confirm .modal__desc { margin-top: 12px; }
.payq__actions { margin-top: 26px; display: flex; flex-direction: column; gap: 10px; }
.payq__go {
  padding: 14px;
  border-radius: 10px;
  background: linear-gradient(120deg, #FF7A3D 0%, #FF5C00 100%);
  font-size: 16px; font-weight: 600; letter-spacing: -.16px; color: #fff;
  transition: transform .2s;
}
.payq__go:hover { transform: translateY(-1px); }
.payq__alt {
  padding: 13px;
  border-radius: 10px;
  background: #F1F3F5;
  font-size: 15px; font-weight: 500; letter-spacing: -.15px; color: #4C4E52;
}

/* ============================================================
   메시지 페이지 반응형
   ============================================================ */
@media (max-width: 1100px) {
  .htick { margin-left: -40px; margin-right: -40px; }
  .htick__track { gap: 20px; padding-right: 20px; }
  .htick__track img { height: 400px; border-radius: 20px; }
  .msguse__grid { grid-template-columns: 1fr 1fr; }
  .msgquote__grid { grid-template-columns: 1fr; }
  .price {
    grid-template-columns: 1fr;
    grid-template-areas: "phead" "pcards" "pnotice" "thead" "tcard";   /* 모바일도 개인 플랜 먼저 (2026-08-19 확정) */
    row-gap: 16px;
  }
  .price__grouphead--team { margin-top: 24px; }
  .teamplan { height: auto; }
  .faqwrap { grid-template-columns: 1fr; gap: 36px; }
  .faqwrap__head { position: static; }
  .faqwrap__sub br { display: none; }
}
@media (max-width: 700px) {
  .msguse__grid { grid-template-columns: 1fr; }
  .msguse__card { min-height: 0; padding: 26px 24px; }
}
/* 커넥트 메시지 히어로 — 커넥트 광고와 같은 타이틀 레이아웃으로 맞춘다
   (정렬·활자 크기·간격 모두 .pscroll 히어로 기준) */
@media (max-width: 760px) {
  body.page-msg .adhero__copy { text-align: center; }
  body.page-msg .adhero__title {
    margin-top: 13px;
    font-size: 28px; line-height: 1.26; letter-spacing: -.9px;
  }
  body.page-msg .adhero__title br { display: none; }   /* 강제 3줄 해제 — 자연스럽게 흐르게 */
  body.page-msg .adhero__sub { margin-top: 12px; font-size: 16px; line-height: 1.5; }
  body.page-msg .adhero__btns { margin-top: 26px; justify-content: center; gap: 8px; }
  body.page-msg .adhero__btns a { height: 48px; font-size: 16px; font-weight: 600; }
}

@media (max-width: 768px) {
  .adsec { padding-top: 72px; padding-bottom: 72px; }
  .adhero__btns a { flex: 1 1 0; width: auto; min-width: 0; font-size: 17px; }
  .adfeed__rows { gap: 12px; }        /* 24px 은 카드가 낮아 허전해 보인다 */
  .adfeed__grid { gap: 16px; }
  .adfeed__row { padding: 20px 22px; }
  .adfeed__row strong { font-size: 20px; }
  .adfeed__row p { font-size: 16px; max-width: none; }
  .msgquote__card { padding: 28px 24px; }
  .msgquote__body { font-size: 17px; }

  .price { margin-top: 36px; }
  .price__lede { font-size: 16px; }
  .price__groupbar h3 { font-size: 19px; }
  .price__togglelabel { font-size: 13.5px; }
  .plan { padding: 20px 18px; border-radius: 14px; flex-wrap: wrap; }   /* 320px에서도 안 깨지게 — 버튼 풀폭 스택 */
  .plan__name h4 { font-size: 17px; }
  .plan__now { font-size: 24px; }
  .plan__buy { flex: 1 1 100%; margin-top: 14px; padding: 13px; font-size: 14px; }
  .teamplan__list li { padding-left: 28px; font-size: 14px; }
  .teamplan__list li::before { font-size: 17px; top: -1px; }
  .teamplan { padding: 28px 22px 26px; }
  .teamplan__title { font-size: 22px; }
  .teamplan__sub { font-size: 14.5px; }
  .teamplan__list { margin-top: 20px; padding-top: 20px; margin-bottom: 24px; gap: 11px; }
  .teamplan__list li { font-size: 14px; padding-left: 22px; }

  .faq__item { padding: 0 20px; border-radius: 14px; }
  .faq__item summary { font-size: 15.5px; padding: 18px 28px 18px 0; }
  .faq__a { padding-bottom: 20px; }
  .faq__a p { font-size: 14.5px; }
}
