/* =========================================================
   인스타그램 마케팅 페이지 (Figma: 올바른사람_인스타, 1440px 기준)
   ========================================================= */
.page-instagram {
  --ig-grad: linear-gradient(90deg, #ffa34d 0%, #f2599f 55%, #a23ee0 100%);
  --ig-grad-d: linear-gradient(135deg, #ffa34d 0%, #f2599f 50%, #a23ee0 100%);
}
.ig-wrap { width: 100%; max-width: 1332px; margin: 0 auto; padding: 0 28.8px; }
.ig-grad { background: var(--ig-grad); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
.ig-eyebrow { display: table; margin: 0 auto 14.4px; font-size: 16.8px; letter-spacing: .01em; }
.ig-eyebrow-left { margin-left: 0; }
.ig-pill { display: table; margin: 0 auto 26.4px; padding: 8.4px 18px; background: #fff; border-radius: 36px; font-size: 16.8px; line-height: 1.6; box-shadow: 0 2px 10px rgba(160, 90, 160, .06); }
.ig-title-md { font-size: 38.4px; line-height: 1.36; font-weight: 700; letter-spacing: -.03em; color: #111; text-align: center; }
.ig-title-lg { font-size: 52.8px; line-height: 1.3; font-weight: 700; letter-spacing: -.03em; color: #111; text-align: center; }
.ig-left { text-align: left; }
.ig-sub { margin-top: 31.2px; font-size: 19.2px; line-height: 1.7; color: #555; text-align: center; }
.ig-sub-lg { margin-top: 21.6px; font-size: 21.6px; color: #444; }
.ig-quote { margin-top: 55.2px; text-align: center; font-size: 40.8px; font-weight: 500; letter-spacing: -.03em; color: #111; }
.ig-quote .ig-grad { font-weight: 700; }
.ig-quote-sm { margin-top: 108px; font-size: 28.8px; font-weight: 700; }
.ig-bar { max-width: 1172.4px; margin: 88.8px auto 0; padding: 9.6px 24px; background: #fdf6fc; border-radius: 12px; text-align: center; font-size: 26.4px; font-weight: 700; letter-spacing: -.02em; color: #333; }
.ig-bar-white { background: #fff; color: #111; margin-top: 74.4px; }

/* ICON squares (그라데이션 둥근 사각) */
.ig-ico { display: inline-flex; align-items: center; justify-content: center; width: 63.6px; height: 63.6px; border-radius: 10.8px; color: #fff; flex: none; }
.ig-ico svg { width: 30px; height: 30px; }
.ig-ico-1 { background: linear-gradient(135deg, #ffb24a 0%, #f8683f 55%, #ef3e3e 100%); }
.ig-ico-2 { background: linear-gradient(135deg, #9b3fe0 0%, #c23aa6 60%, #e2457e 100%); }
.ig-ico-3 { background: linear-gradient(135deg, #4b6cf0 0%, #6d4fe0 100%); }
.ig-ico-4 { background: linear-gradient(135deg, #3d8ff0 0%, #4cc9e0 100%); }

/* ---------------- HERO ---------------- */
.ig-hero { margin-top: 73.2px; height: max(859px, 49.72vw); display: flex; align-items: flex-start; padding-top: 277.2px; background: #f4eef3 center top / cover no-repeat; }
.ig-hero-eyebrow { display: table; font-size: 15.6px; letter-spacing: .1em; margin-bottom: 4.8px; }
.ig-hero-title { font-size: 52.8px; line-height: 1.36; font-weight: 700; letter-spacing: -.03em; color: #111; }
.ig-hero-desc { margin-top: 19.2px; font-size: 21.6px; color: #222; }
.ig-hero-btn { display: inline-flex; align-items: center; justify-content: center; margin-top: 72px; width: 120px; height: 54px; background: #fff; border-radius: 2px; font-size: 19.2px; font-weight: 500; transition: box-shadow .2s, transform .2s; }
.ig-hero-btn:hover { box-shadow: 0 8px 22px rgba(200, 80, 160, .2); transform: translateY(-2px); }

/* ---------------- ABOUT ---------------- */
.ig-about { padding: 180px 0 192px; background: linear-gradient(180deg, #fff 0%, #fff 22%, #f8eef6 70%, #f4ebf7 100%); }
.ig-about-title { font-size: 67.2px; line-height: 1.25; font-weight: 700; letter-spacing: -.03em; color: #111; text-align: center; }
.ig-about-body { position: relative; display: flex; align-items: flex-start; justify-content: center; margin-top: 117.6px; padding-left: 50.4px; }
.ig-about-photo { margin: 0; width: 440.4px; flex: none; position: relative; z-index: 1; border-radius: 7.2px; overflow: hidden; box-shadow: 0 6px 18px rgba(0, 0, 0, .12); background: #e9e9ee; }
.ig-about-photo img { width: 100%; height: 630px; object-fit: cover; object-position: 50% 30%; }
.ig-about-card { width: 685.2px; margin-top: 48px; padding: 91.2px 81.6px 120px; background: #fff; border-radius: 0 12px 12px 0; box-shadow: 0 4px 30px rgba(180, 120, 180, .08); text-align: center; }
.ig-about-logo { display: inline-block; color: #111; }
.ig-about-logo .logo-mark { width: 79.2px; height: 93.6px; }
.ig-about-name { margin-top: 21.6px; font-size: 28.8px; color: #111; letter-spacing: -.02em; }
.ig-about-text { margin-top: 36px; text-align: left; font-size: 19.2px; line-height: 36px; color: #222; }

/* ---------------- PROBLEM ---------------- */
.ig-problem { position: relative; padding: 180px 0 168px; background: #fff; overflow: hidden; }
.ig-tiles { position: absolute; display: grid; grid-template-columns: repeat(3, 1fr); gap: 7.2px; pointer-events: none; }
.ig-tiles i { display: block; aspect-ratio: 1; }
.ig-tiles-r { width: 285.6px; top: 123.6px; left: calc(50% + 480px); }
.ig-tiles-l { width: 218.4px; top: 799.2px; left: calc(50% - 705.6px); }
.ig-tiles .t-p { background: #fef1f8; } .ig-tiles .t-o { background: #fff1ec; } .ig-tiles .t-b { background: #e9f4ff; }
.ig-tiles .t-y { background: #fff5e4; } .ig-tiles .t-r { background: #fff1f1; }
.ig-problem .ig-wrap { position: relative; }
.ig-prob-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 432px)); gap: 48px 44.4px; justify-content: center; margin-top: 62.4px; }
.ig-prob-card { position: relative; height: 240px; padding: 48px 52.8px; border-radius: 24px; background: #fff; display: flex; flex-direction: column; justify-content: center; gap: 26.4px; box-shadow: 0 4px 16px rgba(170, 100, 200, .06); }
.ig-prob-card::before { content: ""; position: absolute; inset: 0; border-radius: 24px; padding: 1px; background: linear-gradient(20deg, #ffb24a 0%, #f2599f 45%, #a23ee0 100%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }
.ig-prob-card p { font-size: 19.2px; line-height: 1.4; color: #222; }

/* ---------------- FREE CONSULTING ---------------- */
.ig-consult { padding: 192px 0 192px; background:
  radial-gradient(60% 70% at 40% 60%, rgba(252, 236, 238, .9), transparent 70%),
  radial-gradient(40% 50% at 85% 85%, rgba(255, 246, 225, .8), transparent 70%),
  linear-gradient(90deg, #f6f9ff 0%, #fbf4f4 50%, #f4f8fe 100%); }
.ig-consult-inner { display: flex; align-items: center; justify-content: space-between; max-width: 1200px; }
.ig-consult-text { padding-top: 7.2px; }
.ig-consult-lead { display: table; margin-top: 55.2px; font-size: 26.4px; font-weight: 700; letter-spacing: -.02em; }
.ig-consult-desc { margin-top: 52.8px; font-size: 16.8px; line-height: 1.5; color: #222; }
.ig-btn-grad { position: relative; display: inline-flex; align-items: center; justify-content: center; margin-top: 64.8px; width: 207.6px; height: 63.6px; border-radius: 12px; background: #fff; font-size: 16.8px; color: #111; transition: .2s; }
.ig-btn-grad::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1px; background: var(--ig-grad-d); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.ig-btn-grad:hover { background: var(--ig-grad); color: #fff; }
.ig-consult-card { width: 495.6px; padding: 72px 50.4px 60px 55.2px; background: #fff; border-radius: 36px; box-shadow: 0 10px 40px rgba(180, 140, 200, .08); }
.ig-consult-q { font-size: 16.8px; color: #222; }
.ig-consult-card ul { margin-top: 38.4px; }
.ig-consult-card li { display: flex; align-items: center; gap: 20.4px; padding: 24px 0; border-bottom: 1px solid #e8e8ec; }
.ig-consult-card li:first-child { padding-top: 0; }
.ig-consult-card li:last-child { border-bottom: 0; padding-bottom: 0; }
.ig-consult-card li > div { display: flex; flex-direction: column; gap: 7.2px; }
.ig-consult-card b { font-size: 21.6px; font-weight: 700; color: #111; }
.ig-consult-card small { font-size: 15.6px; color: #777; }
.ig-consult-card .ig-ico-3 { background: linear-gradient(135deg, #4b6cf0 0%, #6d4fe0 100%); }

/* ---------------- SERVICE ---------------- */
.ig-service { position: relative; padding: 139.2px 0 186px; background: #eee url("../img/package-bg.jpg") center / cover no-repeat; }
.ig-service::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(246, 244, 248, .86), rgba(230, 222, 236, .72)); }
.ig-service .ig-wrap { position: relative; max-width: 1358.4px; }
.ig-service .ig-pill { margin-bottom: 21.6px; }
.ig-svc-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px 31.2px; margin-top: 84px; }
.ig-svc-card { min-height: 225.6px; padding: 31.2px 45.6px 28.8px; background: #fff; border-radius: 7.2px; box-shadow: 0 4px 14px rgba(80, 40, 90, .06); }
.ig-svc-num { display: table; font-size: 31.2px; font-weight: 700; line-height: 1.2; }
.ig-svc-card h3 { margin-top: 12px; font-size: 26.4px; font-weight: 700; color: #111; letter-spacing: -.02em; }
.ig-svc-card p { margin-top: 14.4px; font-size: 16.8px; line-height: 36px; color: #333; }

/* ---------------- PROCESS ---------------- */
.ig-process { padding: 165.6px 0 90px; background: #fff; }
.ig-steps { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); margin: 108px auto 0; max-width: 1371.6px; list-style: none; padding: 0; }
.ig-steps li { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; }
.ig-steps li:not(:last-child) b::after { content: ""; position: absolute; top: 50%; right: 2px; width: 10.8px; height: 10.8px; margin-top: -6px; border-top: 1.6px solid #444; border-right: 1.6px solid #444; transform: rotate(45deg); }
.ig-orb { position: relative; width: 196.8px; height: 196.8px; }
.ig-orb::before { content: ""; position: absolute; left: -14.4px; top: -16.8px; width: 196.8px; height: 196.8px; border-radius: 50%; opacity: .32; }
.ig-orb > span { position: absolute; inset: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #fff; box-shadow: 4px 6px 12px rgba(60, 40, 90, .22); }
.ig-orb svg { width: 67.2px; height: 67.2px; }
.ig-orb-1 > span { background: linear-gradient(140deg, #ffb347 0%, #ff7a5c 55%, #ff5a6e 100%); } .ig-orb-1::before { background: #ffcf9a; }
.ig-orb-2 > span { background: linear-gradient(140deg, #ff6fc0 0%, #c25ee0 60%, #9c4dff 100%); } .ig-orb-2::before { background: #f7a8e0; }
.ig-orb-3 > span { background: linear-gradient(140deg, #8a4dff 0%, #6a55ff 50%, #3a7bff 100%); } .ig-orb-3::before { background: #b7a2ff; }
.ig-orb-4 > span { background: linear-gradient(140deg, #3a6cff 0%, #2f8dff 50%, #1ecbff 100%); } .ig-orb-4::before { background: #9fc3ff; }
.ig-orb-2 circle[fill] { fill: #b65ae6; }
.ig-steps em { margin-top: 62.4px; font-style: normal; font-size: 20.4px; color: #777; letter-spacing: .01em; }
.ig-steps b { position: relative; align-self: stretch; height: 51.6px; line-height: 51.6px; margin-top: 4.8px; background: #f4f4f4; font-size: 24px; font-weight: 700; color: #111; }
.ig-steps li:first-child b { border-radius: 14.4px 0 0 14.4px; }
.ig-steps li:last-child b { border-radius: 0 14.4px 14.4px 0; }
.ig-steps p { margin-top: 28.8px; font-size: 19.2px; line-height: 36px; color: #333; }

/* ---------------- BEFORE / AFTER ---------------- */
.ig-ba { padding: 132px 0 168px; background:
  linear-gradient(180deg, rgba(255,255,255,0) 0, rgba(255,255,255,0) 66%, #fff 84%),
  radial-gradient(1200px 764.4px at 50% 1570.8px, #f2effa 99.6%, rgba(242,239,250,0) 100%),
  #fff; }
.ig-ba-row { display: flex; align-items: flex-start; justify-content: center; gap: 0; margin-top: 88.8px; }
.ig-ba-col { display: flex; flex-direction: column; align-items: center; }
.ig-ba-tag { display: inline-flex; align-items: center; height: 43.2px; padding: 0 14.4px; border-radius: 21.6px; color: #fff; font-size: 20.4px; font-weight: 500; }
.ig-ba-before { background: #9aa0aa; }
.ig-ba-after { background: var(--ig-grad-d); }
.ig-ba-img img { width: 100%; height: 100%; object-fit: cover; }
.ig-ba-img-before { width: 463.2px; height: 609.6px; margin-top: 62.4px; border-radius: 12px; overflow: hidden; }
.ig-ba-img-after { width: 510px; height: 669.6px; margin-top: 30px; padding: 16.8px; background: #fff; border-radius: 24px; box-shadow: 0 6px 30px rgba(150, 120, 200, .16); }
.ig-ba-img-after img { border-radius: 9.6px; }
.ig-ba-cap { margin-top: 84px; font-size: 21.6px; color: #333; }
.ig-ba-col:last-child .ig-ba-cap { margin-top: 66px; font-weight: 500; }
.ig-ba-arrow { margin: 361.2px 98.4px 0 98.4px; }

/* ---------------- WHY ---------------- */
.ig-why { position: relative; padding: 148.8px 0 127.2px; overflow: hidden; background:
  linear-gradient(180deg, #dacbd9 0%, #cfbbd0 45%, #c5aec5 100%); }
.ig-why::before { content: ""; position: absolute; inset: -48px; background:
  repeating-linear-gradient(90deg, rgba(255,255,255,.07) 0 180px, rgba(120,80,120,.05) 180px 348px),
  repeating-linear-gradient(0deg, rgba(255,255,255,.06) 0 168px, rgba(120,80,120,.04) 168px 336px);
  filter: blur(14px); }
.ig-why .ig-wrap { position: relative; max-width: 1230px; }
.ig-why-sub { margin-top: 14.4px; text-align: center; font-size: 19.2px; color: rgba(255, 255, 255, .92); }
.ig-why-row { display: flex; align-items: flex-start; justify-content: space-between; margin-top: 45.6px; }
.ig-why-card { background: #fff; border-radius: 19.2px; }
.ig-why-card h3 { display: flex; align-items: center; justify-content: center; gap: 15.6px; font-size: 26.4px; font-weight: 700; letter-spacing: -.02em; }
.ig-why-card dl { margin: 0; }
.ig-why-card dt { font-size: 20.4px; font-weight: 700; color: #333; }
.ig-why-card dd { margin: 4.8px 0 0; font-size: 16.8px; line-height: 1.6; color: #666; }
.ig-why-bad { width: 544.8px; margin-top: 55.2px; padding: 60px 43.2px 50.4px; }
.ig-why-bad h3 { color: #555; margin-bottom: 45.6px; }
.ig-why-bad dt:not(:first-child) { margin-top: 26.4px; }
.ig-why-good { position: relative; width: 568.8px; padding: 64.8px 69.6px 52.8px; box-shadow: 0 0 34px rgba(255, 255, 255, .55); }
.ig-why-good::before { content: ""; position: absolute; inset: 0; border-radius: 19.2px; padding: 3.6px; background: linear-gradient(160deg, #ffa34d 0%, #f2599f 45%, #a23ee0 75%, #8a2be2 100%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.ig-why-good h3 { color: #111; margin-bottom: 49.2px; }
.ig-why-good dt:not(:first-child) { margin-top: 39.6px; }
.ig-why .ig-bar { max-width: none; margin-top: 88.8px; }

/* ---------------- DATA ---------------- */
.ig-data { padding: 168px 0 180px; background:
  radial-gradient(50% 40% at 50% 8%, #eaf3ff 0, transparent 70%),
  radial-gradient(40% 30% at 0% 10%, #fff6e6 0, transparent 70%),
  radial-gradient(40% 40% at 100% 60%, #fdf0f3 0, transparent 70%),
  linear-gradient(180deg, #f7f9ff 0%, #fbf6fb 40%, #f6f6fd 100%); }
.ig-data .ig-wrap { max-width: 1308px; }
.ig-data-group { margin-top: 108px; }
.ig-data-group:first-of-type { margin-top: 100.8px; }
.ig-data-group + .ig-data-group { margin-top: 84px; }
.ig-data-label { margin: 0 0 14.4px 16.8px; font-size: 24px; font-weight: 700; color: #8a7d95; letter-spacing: -.02em; }
.ig-data-grid { display: grid; grid-template-columns: repeat(3, 396px); gap: 105.6px 30px; }
.ig-data-card { padding: 24px 24px 36px; background: #fff; border-radius: 24px; box-shadow: 0 4px 22px rgba(150, 120, 170, .14); }
.ig-data-shot { height: 348px; border-bottom: 1px solid #e3e3e8; padding-bottom: 24px; overflow: hidden; }
.ig-data-shot :is(img, video) { width: 100%; height: 100%; object-fit: contain; object-position: center; background: #fbfbfc; border-radius: 7.2px; }
.ig-data-card.is-anim .ig-data-shot video { object-fit: cover; object-position: top center; }
.ig-data-info { padding: 33.6px 7.2px 0; }
.ig-data-t { font-size: 24px; font-weight: 700; color: #111; letter-spacing: -.02em; }
.ig-data-hl { display: table; margin-top: 7.2px; padding: 0 9.6px; background: #1e9bff; color: #fff; font-size: 28.8px; font-weight: 600; line-height: 33.6px; letter-spacing: -.01em; }
.ig-data-m { margin-top: 12px; font-size: 16.8px; color: #777; }
.ig-data-card.is-anim .ig-data-t { font-size: 21.6px; }
.ig-data-card.is-anim .ig-data-hl { font-size: 26.4px; line-height: 31.2px; }
.ig-data-card.is-anim .ig-data-m { font-size: 14.4px; }

/* ---------------- FAQ ---------------- */
.ig-faq { padding: 120px 0 150px; background: #f6f2f6; }
.ig-faq .ig-wrap { max-width: 1407.6px; }
.ig-faq-list { margin: 96px 0 0; }
.ig-faq-item + .ig-faq-item { margin-top: 88.8px; }
.ig-faq-item dt { padding-left: 10.8px; font-size: 26.4px; font-weight: 700; color: #111; letter-spacing: -.02em; }
.ig-faq-item dd { margin: 21.6px 0 0; padding: 36px 52.8px; background: #fff; border-radius: 19.2px; font-size: 20.4px; line-height: 36px; color: #222; }
.ig-faq-item dd span { color: #777; }

/* ---------------- REVIEW ---------------- */
.ig-review { padding: 153.6px 0 156px; background:
  radial-gradient(50% 50% at 50% 100%, #f9eefa 0, transparent 70%),
  linear-gradient(90deg, #f7f9ff 0%, #f8f7fc 50%, #f5f9fd 100%); }
.ig-review .ig-wrap { max-width: 1230px; }
.ig-review .blog-review-slider { margin-top: 55.2px; } /* 후기 슬라이더: partials/slider.html */

/* ---------------- CONTACT (라이트 테마 오버라이드) ---------------- */
.page-instagram .sec-contact::before { background: rgba(255, 255, 255, .74); backdrop-filter: blur(6px); }
.page-instagram .sec-contact { color: #111; }
.page-instagram .sec-contact .eyebrow-underline { border-bottom: 0; background: var(--ig-grad); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
.page-instagram .sec-contact .sec-title-white { color: #111; }
.page-instagram .contact-lead { color: #222; font-size: 20.4px; line-height: 54px; }
.page-instagram .contact-lead strong { background: var(--ig-grad); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
.page-instagram .contact-card { background: #fff; box-shadow: 0 10px 40px rgba(0, 0, 0, .05); }
.page-instagram .inq-field i { color: #f04f7a; }
.page-instagram .inq-check input:checked + span { background-color: #f2599f; border-color: #f2599f; }
.page-instagram .inq-field input[type="text"]:focus { border-color: #f2599f; }
.page-instagram .inq-submit .btn-primary { position: relative; background: #fff; color: #111; font-weight: 500; border-radius: 7.2px; }
.page-instagram .inq-submit .btn-primary::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; background: var(--ig-grad-d); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.page-instagram .inq-submit .btn-primary:hover { background: var(--ig-grad); color: #fff; }

/* ---------------- Responsive ---------------- */
@media (max-width: 1180px) {
  .ig-data-grid { grid-template-columns: repeat(3, 1fr); }
  .ig-tiles { display: none; }
}
@media (max-width: 1024px) {
  .ig-about-card { padding: 50px 40px 60px; }
  .ig-consult-inner { gap: 40px; }
  .ig-ba-arrow { margin: 40px 30px 0; }
  .ig-ba-img-before { width: 320px; height: 420px; }
  .ig-ba-img-after { width: 350px; height: 460px; }
}
@media (max-width: 760px) {
  .ig-wrap { padding: 0 20px; }
  .ig-title-md { font-size: 28.8px; }
  .ig-title-lg { font-size: 32.4px; }
  .ig-sub, .ig-sub-lg { font-size: 16.8px; margin-top: 16px; }
  .ig-sub br { display: none; }
  .ig-quote { margin-top: 44px; font-size: 25.2px; line-height: 1.5; }
  .ig-quote-sm { font-size: 20.4px; margin-top: 56px; }
  .ig-bar { margin-top: 44px; font-size: 19.2px; line-height: 1.5; padding: 12px 16px; }

  .ig-hero { position: relative; margin-top: 56px; height: 600px; align-items: flex-start; padding-top: 64px; background-position: 80% center; }
  .ig-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(248,243,247,.92) 0%, rgba(248,243,247,.75) 45%, rgba(248,243,247,0) 70%); pointer-events: none; }
  .ig-hero > * { position: relative; }
  .ig-hero-title { font-size: 33.6px; }
  .ig-hero-desc { margin-top: 16px; font-size: 18px; }
  .ig-hero-btn { margin-top: 30px; }

  .ig-about { padding: 90px 0 90px; }
  .ig-about-title { font-size: 40.8px; }
  .ig-about-body { flex-direction: column; align-items: center; margin-top: 50px; padding-left: 0; }
  .ig-about-photo { width: 100%; max-width: 320px; }
  .ig-about-photo img { height: 400px; }
  .ig-about-card { width: 100%; margin-top: -30px; padding: 60px 24px 40px; border-radius: 10px; }
  .ig-about-logo .logo-mark { width: 50px; height: 60px; }
  .ig-about-name { font-size: 24px; }
  .ig-about-text { font-size: 18px; line-height: 32.4px; margin-top: 20px; }

  .ig-problem { padding: 90px 0; }
  .ig-prob-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 36px; }
  .ig-prob-card { height: auto; padding: 26px 24px; flex-direction: row; align-items: center; justify-content: flex-start; gap: 16px; }
  .ig-prob-card p { font-size: 18px; }

  .ig-consult { padding: 90px 0; }
  .ig-consult-inner { flex-direction: column; align-items: stretch; gap: 44px; }
  .ig-consult-lead { margin-top: 24px; font-size: 21.6px; }
  .ig-consult-desc { margin-top: 24px; }
  .ig-btn-grad { margin-top: 30px; }
  .ig-consult-card { width: 100%; padding: 36px 24px; border-radius: 22px; }

  .ig-service { padding: 80px 0 90px; }
  .ig-svc-grid { grid-template-columns: 1fr; gap: 14px; margin-top: 40px; }
  .ig-svc-card { min-height: 0; padding: 24px 22px; }
  .ig-svc-card h3 { font-size: 22.8px; }
  .ig-svc-card p { line-height: 28.8px; }

  .ig-process { padding: 90px 0 60px; }
  .ig-steps { grid-template-columns: 1fr 1fr; gap: 50px 10px; margin-top: 50px; }
  .ig-steps li b::after { display: none; }
  .ig-orb, .ig-orb::before { width: 110px; height: 110px; }
  .ig-orb::before { left: -8px; top: -9px; }
  .ig-orb svg { width: 40px; height: 40px; }
  .ig-steps em { margin-top: 26px; font-size: 16.8px; }
  .ig-steps b, .ig-steps li:first-child b, .ig-steps li:last-child b { align-self: center; height: auto; line-height: 1.4; font-size: 21.6px; margin-top: 4px; padding: 6px 18px; border-radius: 10px; }
  .ig-steps p { margin-top: 12px; font-size: 15.6px; line-height: 26.4px; }

  .ig-ba { padding: 80px 0 90px; background: linear-gradient(180deg, #fff 0, #fff 30%, #f2effa 55%, #fff 95%); }
  .ig-ba-row { flex-direction: column; align-items: center; margin-top: 40px; }
  .ig-ba-img-before { width: 100%; max-width: 320px; height: auto; aspect-ratio: 386 / 508; margin-top: 20px; }
  .ig-ba-img-after { width: 100%; max-width: 340px; height: auto; aspect-ratio: 425 / 558; margin-top: 20px; padding: 10px; }
  .ig-ba-cap, .ig-ba-col:last-child .ig-ba-cap { margin-top: 20px; font-size: 19.2px; }
  .ig-ba-arrow { margin: 26px 0; transform: rotate(90deg); }

  .ig-why { padding: 80px 0; }
  .ig-why-sub { font-size: 16.8px; }
  .ig-why-row { flex-direction: column; gap: 20px; margin-top: 36px; }
  .ig-why-bad, .ig-why-good { width: 100%; margin-top: 0; padding: 34px 24px; }
  .ig-why-card h3 { font-size: 22.8px; margin-bottom: 28px; }
  .ig-why-good { order: -1; }
  .ig-why-good dt:not(:first-child), .ig-why-bad dt:not(:first-child) { margin-top: 20px; }
  .ig-why-card dt { font-size: 18px; }
  .ig-why-card dd { font-size: 15.6px; }

  .ig-data { padding: 80px 0 90px; }
  .ig-data-group:first-of-type { margin-top: 56px; }
  .ig-data-group + .ig-data-group { margin-top: 50px; }
  .ig-data-label { font-size: 20.4px; margin-left: 4px; }
  .ig-data-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .ig-data-card { padding: 10px 10px 16px; border-radius: 14px; }
  .ig-data-shot, .ig-data-card.is-anim .ig-data-shot { height: 150px; padding-bottom: 10px; }
  .ig-data-info { padding: 12px 2px 0; }
  .ig-data-t, .ig-data-card.is-anim .ig-data-t { font-size: 16.8px; }
  .ig-data-hl, .ig-data-card.is-anim .ig-data-hl { font-size: 16.8px; line-height: 24px; padding: 0 5px; display: inline-block; word-break: keep-all; letter-spacing: -.03em; }
  .ig-data-m, .ig-data-card.is-anim .ig-data-m { font-size: 13.2px; margin-top: 6px; }

  .ig-faq { padding: 80px 0; }
  .ig-faq-list { margin-top: 44px; }
  .ig-faq-item + .ig-faq-item { margin-top: 36px; }
  .ig-faq-item dt { font-size: 20.4px; padding-left: 2px; }
  .ig-faq-item dd { margin-top: 12px; padding: 20px 20px; font-size: 16.8px; line-height: 28.8px; }

  .ig-review { padding: 80px 0; }
  .ig-review .blog-review-slider { margin-top: 30px; }

  .page-instagram .contact-lead { font-size: 18px; line-height: 40.8px; }
}

/* ---------------- 1.2배 확대 후 중간 폭 보정 ---------------- */
@media (min-width: 761px) and (max-width: 1320px) {
  .ig-data-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1025px) and (max-width: 1240px) {
  .ig-ba-img-before { width: 386px; height: 508px; }
  .ig-ba-img-after { width: 425px; height: 558px; }
  .ig-ba-arrow { margin: 300px 50px 0; }
}
@media (min-width: 761px) and (max-width: 1024px) {
  .ig-orb, .ig-orb::before { width: 150px; height: 150px; }
  .ig-orb svg { width: 52px; height: 52px; }
}
@media (min-width: 761px) and (max-width: 900px) {
  .ig-ba-img-before { width: 290px; height: 381px; }
  .ig-ba-img-after { width: 318px; height: 418px; }
  .ig-ba-arrow { margin: 40px 16px 0; }
}
