@charset "utf-8";
/* ═══════════════════════════════════════════════════════════════════════
   invite_page.css — 조합원 초대(신조합원 추천) 상시 페이지 · v1.7.0 (2026-08-09)
   v1.7.0 : 월간증정 설명 개선 — 실제 달 이름 예시(.iv_gift_ex) + 쉬운 말 규칙 3줄(.iv_grules)
   v1.6.0 : 히어로 스크림 완화 — "상단 이미지를 밝고 행복한 사진으로"(사용자 지시) 반영
   v1.5.0 : 메인 배너(.ivband) **밝은 타이포 색면**으로 톤 통일(배너 3종 한 가족)
   v1.4.0 : 타이포 색면 정식 전환(사진·스크림·시안 게이트 제거) + 모바일 박스모델 잘림 수정
   v1.1.0 : "내가 건넨 초대" 현황 카드(.iv_mine) 추가 — 공유 밴드 하단, 로그인 전용

   대상 = /member/joinInfo.do?iv=1 · /member/joinStep1.do?iv=1 (PC/모바일 공용 1파일)
        + 메인 고정 배너(.ivband) · 진입점 버튼(.ivlink)

   ★ 성격 = 일회성 이벤트가 아니라 "상시 제도" 페이지.
     시즌·마감일 표기를 쓰지 않는다. 카피·레이아웃 모두 연중 유효한 톤으로 간다.
     기준선 = producer_page.css(v1.2.0) 의 따뜻한 크림 에디토리얼.

   ★ 스코프 = .ivz(페이지 루트) / .ivband(메인 배너) / .ivlink(진입 버튼).
     다른 화면은 이 파일을 로드해도 무영향. style_v2.css 무수정 원칙 유지.
   ★ 인라인 스타일 금지 — 시각 변경은 이 파일 버전업 + commScripts.jsp 의 ?v= 갱신으로만.
   ★ 50~60대 가독 기준: 본문 17px 하한, 행간 1.9 이상, 터치 타깃 52px, 대비 WCAG AA.
   ═══════════════════════════════════════════════════════════════════════ */

.ivz{
	--iv-paper:#f7f2e7;			/* 따뜻한 크림 — 페이지 바탕 */
	--iv-surface:#fffdf7;		/* 오프화이트 — 카드/블록 바탕 */
	--iv-ink:#1f2923;			/* 먹색 — 본문 */
	--iv-ink-soft:#414c43;		/* 본문 보조 (크림 위 대비 7.2:1) */
	--iv-muted:#6d766c;			/* 메타 (크림 위 대비 4.6:1) */
	--iv-gold:#8c6a29;			/* 갈색 포인트 — 크림 위 대비 4.8:1 */
	--iv-gold-l:#c6a35b;		/* 딥그린/사진 위 골드 */
	--iv-green:#3D6041;			/* 두레 딥그린 */
	--iv-green-d:#2F5233;
	--iv-forest:#17231d;
	--iv-line:#ddd4c1;
	--iv-line-soft:#e9e1d0;
	--iv-serif:"Noto Serif KR","Maru Buri","Nanum Myeongjo",serif;
	--iv-wrap:1180px;
}

/* ── 페이지 베이스 ─────────────────────────────────────────────── */
.ivz{ background:var(--iv-paper); color:var(--iv-ink); overflow-x:hidden;
	font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
	letter-spacing:-.01em; word-break:keep-all; padding-bottom:0; }
.ivz *{ box-sizing:border-box; }
.ivz .iv_in{ max-width:var(--iv-wrap); margin:0 auto; padding-left:24px; padding-right:24px; }
.ivz .serif{ font-family:var(--iv-serif); }
.ivz img{ max-width:100%; }

/* 섹션 눈썹 라벨 (01 / 02 + 가는 선) — producer_page 관례 계승 */
.ivz .iv_label{ display:flex; align-items:center; gap:16px; margin:0 0 30px;
	font-size:12px; font-weight:700; letter-spacing:.16em; color:var(--iv-muted); }
.ivz .iv_label .iv_num{ color:var(--iv-gold); font-weight:800; }
.ivz .iv_label:after{ content:''; flex:0 0 auto; width:64px; height:1px; background:var(--iv-line); }

.ivz .iv_h2{ margin:0; font-family:var(--iv-serif); font-size:38px; font-weight:600; line-height:1.4;
	letter-spacing:-.03em; color:var(--iv-ink); }

/* ── 히어로 ───────────────────────────────────────────────────── */
.ivz .iv_hero{ position:relative; overflow:hidden; background:#1b2a20; }
.ivz .iv_hero_bg{ position:absolute; inset:0;
	background:#1b2a20 url(../../images/comm/invite/producer_hero.jpg) 50% 30%/cover no-repeat;
	transform:scale(1.02); }
/* 스크림 — 2026-08-09 사용자 지시 "상단 이미지를 밝고 행복한 사진으로" 반영.
   사진(producer_hero.jpg = 황금빛 논·환하게 웃는 생산자, 평균휘도 127/좌40% 146)은 이미
   밝고 행복한 컷인데 **스크림이 좌측 .95 로 너무 무거워** 화면에서는 어두운 히어로로 읽혔다.
   → 사진을 바꾸는 대신 스크림을 걷어 사진 본래의 밝기를 살린다(교체보다 손실이 적다).
   대비 계산(크림 글자 #f6f0e4 기준): 좌측 텍스트존 .68 → 약 6.5:1, 42% 지점 .52 → 약 5:1
   로 WCAG AA(본문 4.5:1) 유지. 우측은 .06 까지 열어 논·미소가 그대로 보이게 한다. */
.ivz .iv_hero:before{ content:''; position:absolute; inset:0; z-index:1;
	background:linear-gradient(90deg,rgba(10,22,15,.68) 0,rgba(16,32,23,.52) 42%,rgba(16,30,22,.24) 76%,rgba(14,26,19,.06) 100%); }
.ivz .iv_hero_in{ position:relative; z-index:2; max-width:var(--iv-wrap); margin:0 auto;
	padding:104px 24px 96px; }
.ivz .iv_hero_in > *{ max-width:680px; }
.ivz .iv_eyebrow{ margin:0 0 22px; font-size:11.5px; font-weight:700; letter-spacing:.2em; color:var(--iv-gold-l); }
.ivz .iv_htitle{ margin:0; font-family:var(--iv-serif); font-size:54px; font-weight:600; line-height:1.26;
	letter-spacing:-.035em; color:#f6f0e4; text-shadow:0 2px 22px rgba(0,0,0,.34); }
/* 스크림을 걷은 만큼 리드 문단이 밝은 벼 위에 얹히는 구간이 생긴다 → 그림자로 가독 보정.
   (스크림을 다시 어둡게 하면 "밝고 행복한" 지시와 어긋나므로 글자 쪽에서 해결한다.) */
.ivz .iv_hlead{ margin:28px 0 0; font-size:18px; line-height:1.92; color:rgba(250,246,238,.96);
	text-shadow:0 1px 14px rgba(0,0,0,.55), 0 0 2px rgba(0,0,0,.35); }

/* 추천으로 오신 분 환영 리본 — 개인정보 최소(이름·번호 노출 없음) */
.ivz .iv_welcome{ display:inline-flex; align-items:center; gap:10px; margin:0 0 24px;
	padding:11px 20px; border-radius:999px;
	background:rgba(246,240,228,.13); border:1px solid rgba(198,163,91,.55);
	font-size:14.5px; font-weight:600; color:#f2e9d6; letter-spacing:-.01em; }
.ivz .iv_welcome:before{ content:''; flex:0 0 auto; width:7px; height:7px; border-radius:50%;
	background:var(--iv-gold-l); }

/* 히어로 CTA */
.ivz .iv_hcta{ display:flex; flex-wrap:wrap; gap:12px; margin:38px 0 0; max-width:none; }
.ivz .iv_btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px;
	min-height:56px; padding:0 34px; border:0; border-radius:4px; cursor:pointer;
	font-size:17px; font-weight:700; letter-spacing:-.01em; text-decoration:none;
	transition:background .2s, color .2s, border-color .2s, transform .2s; }
.ivz .iv_btn_primary{ background:var(--iv-gold-l); color:#1c1508; }
.ivz .iv_btn_primary:hover{ background:#d8b876; color:#1c1508; }
.ivz .iv_btn_ghost{ background:transparent; color:#f6f0e4; border:1px solid rgba(246,240,228,.55); }
.ivz .iv_btn_ghost:hover{ background:rgba(246,240,228,.12); color:#fff; }
.ivz .iv_btn:focus-visible{ outline:2px solid var(--iv-gold-l); outline-offset:3px; }

/* ── 01 편지(왜 초대인가) ─────────────────────────────────────── */
.ivz .iv_letter{ padding:86px 0 0; }
.ivz .iv_letter_grid{ display:grid; grid-template-columns:1.02fr .98fr; gap:70px; align-items:start; }
.ivz .iv_letter_txt p{ margin:0 0 22px; font-size:17px; line-height:2.02; color:var(--iv-ink-soft); }
.ivz .iv_letter_txt p:last-child{ margin-bottom:0; }
.ivz .iv_letter_txt strong{ font-weight:700; color:var(--iv-ink); }

.ivz .iv_quote{ position:relative; margin:74px 0 0; padding:58px 30px 46px; text-align:center;
	border-top:1px solid var(--iv-line); border-bottom:1px solid var(--iv-line); }
.ivz .iv_quote:before{ content:'\201C'; position:absolute; top:8px; left:50%; transform:translateX(-50%);
	font-family:Georgia,serif; font-size:58px; line-height:1; color:var(--iv-gold-l); }
.ivz .iv_quote blockquote{ margin:0; font-family:var(--iv-serif); font-size:27px; font-weight:500;
	line-height:1.64; letter-spacing:-.02em; color:var(--iv-ink); }
.ivz .iv_quote .iv_qby{ margin:22px 0 0; font-size:13.5px; color:var(--iv-muted); }

/* ── 02 혜택 ─────────────────────────────────────────────────── */
/* ── 01 안의 용어 선언 블록 — "상품이 아니라 생활재" ────────────── */
.ivz .iv_term{ margin:46px 0 0; padding:34px 36px; background:var(--iv-surface);
	border-left:3px solid var(--iv-green); }
.ivz .iv_term_d{ margin:0; font-family:var(--iv-serif); font-size:21px; font-weight:600;
	line-height:1.76; letter-spacing:-.025em; color:var(--iv-ink); }
.ivz .iv_term_s{ margin:16px 0 0; font-size:15.5px; line-height:1.9; color:var(--iv-ink-soft); }
.ivz .iv_term b{ color:var(--iv-green); font-weight:700; }

/* ── 02 장바구니가 바꿔 온 것들 ─────────────────────────────────
   ★ 수치·사례는 두레생협 연차보고서에서 확인된 것만 쓴다. 확인 안 된 값은
     일반 서술로 두고 숫자를 지어내지 않는다(카피 검수 기준). --------- */
.ivz .iv_change{ padding:88px 0 0; }
.ivz .iv_chgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:46px; }
.ivz .iv_chcard{ padding:36px 32px 34px; background:var(--iv-surface);
	border-top:2px solid var(--iv-green); }
.ivz .iv_chk{ display:block; margin:0 0 16px;
	font-size:11.5px; font-weight:700; letter-spacing:.18em; color:var(--iv-gold); }
.ivz .iv_cht{ margin:0 0 16px; font-family:var(--iv-serif); font-size:23px; font-weight:600;
	line-height:1.52; letter-spacing:-.025em; color:var(--iv-ink); }
.ivz .iv_chd{ margin:0; font-size:15.5px; line-height:1.9; color:var(--iv-ink-soft); }
.ivz .iv_chd + .iv_chd{ margin-top:13px; }
.ivz .iv_chnote{ margin:28px 0 0; font-size:13.5px; line-height:1.82; color:var(--iv-muted); }

/* ── 03 당신은 이미 운동을 하고 있습니다 ────────────────────────── */
.ivz .iv_already{ margin:88px 0 0; padding:82px 0; background:var(--iv-forest);
	color:#f6f0e4; text-align:center; }
/* 가운데 정렬 본문은 줄이 길면 읽기 어렵고 줄바꿈도 어색해진다 → 측정폭을 좁힌다.
   ★ style_v2 의 전역 break-word 가 keep-all 을 덮어 "100원"이 1/00원 으로 쪼개졌다 →
     .iv_al_d 에서 word-break·overflow-wrap 을 명시적으로 다시 못박는다. */
.ivz .iv_already .iv_in{ max-width:800px; }
.ivz .iv_al_h{ margin:0; font-family:var(--iv-serif); font-size:40px; font-weight:600;
	line-height:1.44; letter-spacing:-.035em; color:#f6f0e4; }
.ivz .iv_al_em{ color:var(--iv-gold-l); }
.ivz .iv_al_d{ margin:30px 0 0; font-size:17px; line-height:1.95; color:rgba(246,240,228,.88);
	word-break:keep-all; overflow-wrap:normal; }
.ivz .iv_al_d + .iv_al_d{ margin-top:16px; }

.ivz .iv_benefit{ padding:88px 0 0; }
.ivz .iv_bhead{ display:flex; align-items:flex-end; justify-content:space-between; gap:44px; margin-bottom:44px; }
.ivz .iv_bhead .iv_label{ margin-bottom:20px; }
.ivz .iv_bhead_r{ max-width:380px; margin-bottom:8px; text-align:right; }
.ivz .iv_bhead_r p{ margin:0; font-size:16px; line-height:1.94; color:var(--iv-ink-soft); }

/* ── 두 역할 블록 (받는 분 / 드리는 분) ───────────────────────────────
   같은 페이지를 성격이 다른 두 사람이 본다. 각자 자기 블록만 읽으면 되도록,
   색이나 아이콘에 기대지 않고 **큰 역할 라벨 + 굵은 구분선 + 좌우 대비**로 가른다.
   (색으로만 가르면 흑백 인쇄·색약·저조도에서 구분이 사라진다.) */
.ivz .iv_roles{ display:grid; grid-template-columns:1fr 1fr; gap:0;
	border:1px solid var(--iv-line); background:#fff; }
.ivz .iv_role{ display:flex; flex-direction:column; padding:0; }
.ivz .iv_role.is-new{ border-right:2px solid var(--iv-green); background:var(--iv-surface); }

.ivz .iv_role_top{ padding:32px 32px 26px; border-bottom:1px solid var(--iv-line); }
.ivz .iv_role_tag{ display:inline-block; margin:0 0 14px; padding:5px 12px;
	font-size:12px; font-weight:800; letter-spacing:.14em;
	color:#f6f0e4; background:var(--iv-green); }
.ivz .iv_role.is-inviter .iv_role_tag{ color:var(--iv-green); background:transparent;
	border:1.5px solid var(--iv-green); }
.ivz .iv_role_h{ margin:0; font-family:var(--iv-serif); font-size:29px; font-weight:700;
	line-height:1.36; letter-spacing:-.035em; color:var(--iv-ink); }
.ivz .iv_role_hs{ display:block; margin-top:6px;
	font-family:inherit; font-size:15px; font-weight:600; letter-spacing:-.01em; color:var(--iv-muted); }
.ivz .iv_role_sum{ display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; margin:20px 0 0; }
.ivz .iv_role_amt{ font-size:38px; font-weight:800; line-height:1.1;
	letter-spacing:-.04em; color:var(--iv-green); }
.ivz .iv_role_amt .iv_unit{ font-size:17px; font-weight:700; margin-left:2px; }
.ivz .iv_role_amt_d{ font-size:15px; color:var(--iv-ink-soft); }

.ivz .iv_role_body{ flex:1 1 auto; padding:26px 32px 8px; }
.ivz .iv_role_part{ margin:0 0 12px; font-size:13px; font-weight:800;
	letter-spacing:.1em; color:var(--iv-gold); }
.ivz .iv_role_part b{ color:var(--iv-green); font-weight:800; letter-spacing:-.01em; }
.ivz .iv_role_part + .iv_gifts{ margin-bottom:26px; }
.ivz .iv_role_body .iv_gifts + .iv_role_part{ margin-top:4px; }
.ivz .iv_role_note{ margin:16px 0 18px; font-size:14.5px; line-height:1.85;
	color:var(--iv-ink-soft); word-break:keep-all; }
/* .iv_gift_txt b 는 블록이라 문장 중간에 쓰면 줄이 쪼개진다 → 강조용 b 는 인라인으로 되돌린다. */
.ivz .iv_gift_txt b.iv_em{ display:inline; font-size:inherit; color:var(--iv-green); }
.ivz .iv_em{ color:var(--iv-green); }
.ivz .iv_role_link{ color:var(--iv-green); font-weight:700; text-decoration:underline;
	text-underline-offset:3px; }

/* 인원별 환산표 — "무제한"을 말로 하면 안 와닿는다. 숫자로 보여 준다. */
.ivz .iv_scale{ display:flex; gap:8px; margin:0; padding:0; list-style:none; }
.ivz .iv_scale li{ flex:1 1 0; padding:14px 8px; text-align:center;
	background:#fff; border:1px solid var(--iv-line); }
.ivz .iv_role.is-new .iv_scale li{ background:var(--iv-surface); }
.ivz .iv_sc_n{ display:block; font-size:13.5px; font-weight:700; color:var(--iv-muted); }
.ivz .iv_sc_v{ display:block; margin-top:5px; font-size:17px; font-weight:800;
	letter-spacing:-.02em; color:var(--iv-green); }

/* ★ 언제 받는지 — 두 블록 모두에 둔다. 기대 불일치가 문의의 대부분이다. */
.ivz .iv_role_when{ margin-top:auto; padding:20px 32px 26px;
	border-top:1px dashed var(--iv-line); background:rgba(61,96,65,.045); }
.ivz .iv_when_k{ display:block; margin:0 0 8px; font-size:12.5px; font-weight:800;
	letter-spacing:.12em; color:var(--iv-green); }
.ivz .iv_when_d{ margin:0; font-size:14.5px; line-height:1.85; color:var(--iv-ink-soft);
	word-break:keep-all; }
.ivz .iv_when_d strong{ color:var(--iv-ink); font-weight:700; }

/* ── 월간증정 타임라인 (썸네일 주인공) — "받는 분" 블록 안에 들어간다 ── */
.ivz .iv_gift{ margin:0; padding:0; background:transparent; border:0; }
.ivz .iv_gift_lead{ margin:0 0 18px; font-size:15px; line-height:1.85;
	color:var(--iv-ink-soft); word-break:keep-all; }
.ivz .iv_gift_lead strong{ color:var(--iv-green); font-weight:700; }

/* 반쪽 폭 안에 들어가므로 가로 3칸 대신 세로 타임라인으로 쌓는다.
   (반폭에서 3칸을 쓰면 썸네일이 100px 아래로 줄어 "실물 체감"이 사라진다.) */
.ivz .iv_gift_line{ display:grid; grid-template-columns:1fr; gap:12px;
	margin:0; padding:0; list-style:none; }
.ivz .iv_gcard{ position:relative; display:flex; flex-direction:row; align-items:center; gap:16px;
	padding:16px 16px; background:#fff; border:1px solid var(--iv-line);
	border-left:3px solid var(--iv-green); text-align:left; }
.ivz .iv_role.is-new .iv_gcard{ background:#fff; }
/* 카드 사이 이음선 — 석 달이 이어진다는 것을 형태로 보여 준다 */
.ivz .iv_gcard + .iv_gcard::before{ content:""; position:absolute; left:0; top:-9px;
	width:3px; height:9px; background:var(--iv-gold); }
/* 달 칸 — 큰 글씨는 **실제 달**("9월"), 작은 글씨는 그때 무슨 일이 일어나는지("첫 주문에").
   "1개월차"는 규칙을 아는 사람에게만 읽히는 말이라 예시(달 이름)를 앞세운다.
   "첫 주문에"가 2줄로 깨지면 리듬이 무너져 min-width 를 그 글자폭에 맞춰 잡는다. */
.ivz .iv_gmon{ flex:0 0 auto; display:inline-flex; flex-direction:column; align-items:center; gap:2px;
	min-width:58px; margin:0; line-height:1.05;
	letter-spacing:-.02em; color:var(--iv-green); }
.ivz .iv_gmon_m{ font-size:21px; font-weight:800; line-height:1.05; color:var(--iv-green);
	white-space:nowrap; }
.ivz .iv_gmon_s{ font-size:11.5px; font-weight:700; color:var(--iv-ink-soft); white-space:nowrap; }

/* ── "지금 8월에 가입하시면 → 9월·10월·11월" 예시 줄 ──────────────────
   규칙을 읽기 전에 **내 경우**가 먼저 보이게 하는 자리다.
   달 이름은 서버 날짜로 매달 저절로 갱신된다(문구 관리 불필요). */
.ivz .iv_gift_ex{ display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px;
	margin:0 0 16px; padding:14px 16px;
	background:var(--iv-surface); border-left:3px solid var(--iv-gold);
	font-size:14.5px; line-height:1.6; color:var(--iv-ink-soft); word-break:keep-all; }
.ivz .iv_gx_now b,
.ivz .iv_gx_mons b{ color:var(--iv-green); font-weight:800; }
.ivz .iv_gx_arw{ color:var(--iv-gold); font-weight:800; }
.ivz .iv_gx_mons{ color:var(--iv-ink); font-weight:600; }

/* ── 규칙 3줄 ─────────────────────────────────────────────────────────
   한 줄에 한 가지만 말한다. 문장을 짧게 끊어 50~60대 가독을 지킨다. */
.ivz .iv_grules{ margin:16px 0 0; padding:0; list-style:none;
	display:grid; grid-template-columns:1fr; gap:8px; }
.ivz .iv_grules li{ position:relative; padding:0 0 0 20px;
	font-size:14.5px; line-height:1.8; color:var(--iv-ink-soft); word-break:keep-all; }
.ivz .iv_grules li::before{ content:""; position:absolute; left:2px; top:.72em;
	width:6px; height:6px; background:var(--iv-green); }
.ivz .iv_grules b{ color:var(--iv-ink); font-weight:700; }
.ivz .iv_gthumb{ flex:0 0 auto; display:flex; align-items:center; justify-content:center;
	width:104px; max-width:104px; aspect-ratio:1/1; margin:0;
	background:#fff; border:1px solid var(--iv-line); overflow:hidden; }
.ivz .iv_gthumb img{ width:100%; height:100%; object-fit:contain; }
.ivz .iv_gthumb.is-noimg::after{ content:"생활재 사진 준비 중"; font-size:13px; color:var(--iv-muted); }
.ivz .iv_gtxt{ display:block; flex:1 1 auto; min-width:0; }
.ivz .iv_gnm{ display:block; font-size:16.5px; font-weight:700; line-height:1.6;
	letter-spacing:-.02em; color:var(--iv-ink); word-break:keep-all; }
.ivz .iv_gamt{ display:block; margin:7px 0 0; font-size:14px; color:var(--iv-muted); }
.ivz .iv_gift_note{ margin:16px 0 0; font-size:13px; line-height:1.8; color:var(--iv-muted);
	word-break:keep-all; }

.ivz .iv_bgrid{ display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.ivz .iv_bcard{ display:flex; flex-direction:column; padding:38px 36px 34px;
	background:var(--iv-surface); border-top:2px solid var(--iv-gold-l); }
.ivz .iv_bcard_who{ display:inline-flex; align-items:center; align-self:flex-start; gap:7px;
	margin:0 0 20px; padding:7px 14px; border-radius:999px;
	background:rgba(140,106,41,.10); color:var(--iv-gold);
	font-size:12px; font-weight:800; letter-spacing:.06em; }
.ivz .iv_bcard_t{ margin:0; font-family:var(--iv-serif); font-size:26px; font-weight:600; line-height:1.42;
	letter-spacing:-.028em; color:var(--iv-ink); }
.ivz .iv_bcard_d{ margin:14px 0 0; font-size:15.5px; line-height:1.9; color:var(--iv-ink-soft); }

.ivz .iv_gifts{ margin:26px 0 0; padding:0; list-style:none; border-top:1px solid var(--iv-line-soft); }
.ivz .iv_gifts li{ display:flex; align-items:baseline; gap:14px; padding:17px 0;
	border-bottom:1px solid var(--iv-line-soft); }
.ivz .iv_gifts li:last-child{ border-bottom:0; padding-bottom:4px; }
.ivz .iv_gift_amt{ flex:0 0 auto; font-family:var(--iv-serif); font-size:27px; font-weight:600;
	line-height:1.2; letter-spacing:-.03em; color:var(--iv-green); }
.ivz .iv_gift_amt .iv_unit{ font-size:16px; font-weight:600; margin-left:1px; }
.ivz .iv_gift_txt{ flex:1 1 auto; font-size:15.5px; line-height:1.75; color:var(--iv-ink-soft); }
.ivz .iv_gift_txt b{ display:block; font-size:16.5px; font-weight:700; color:var(--iv-ink); margin-bottom:3px; }
.ivz .iv_gifts .iv_gift_pending .iv_gift_amt{ font-size:19px; color:var(--iv-muted); }

.ivz .iv_bnote{ margin:34px 0 0; padding:22px 26px; background:rgba(61,96,65,.055);
	border-left:2px solid var(--iv-green); }
.ivz .iv_bnote p{ margin:0 0 9px; font-size:14.5px; line-height:1.85; color:var(--iv-ink-soft); }
.ivz .iv_bnote p:last-child{ margin-bottom:0; }

/* ── 03 세 걸음 ──────────────────────────────────────────────── */
.ivz .iv_steps{ padding:88px 0 0; }
.ivz .iv_sgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:44px; }
.ivz .iv_step{ position:relative; padding:34px 30px 30px; background:var(--iv-surface); }
.ivz .iv_step_n{ display:block; font-family:var(--iv-serif); font-size:15px; font-weight:700;
	letter-spacing:.14em; color:var(--iv-gold); margin:0 0 16px; }
.ivz .iv_step_t{ margin:0; font-family:var(--iv-serif); font-size:21px; font-weight:600; line-height:1.5;
	letter-spacing:-.025em; color:var(--iv-ink); }
.ivz .iv_step_d{ margin:12px 0 0; font-size:15.5px; line-height:1.9; color:var(--iv-ink-soft); }

/* ── 추천하기(공유) 박스 ─────────────────────────────────────── */
.ivz .iv_share{ margin:88px 0 0; padding:64px 0; background:var(--iv-forest); color:#f6f0e4;
	scroll-margin-top:76px; }		/* 헤더가 앵커 제목을 가리지 않게 */
.ivz .iv_share .iv_eyebrow{ color:var(--iv-gold-l); }
.ivz .iv_share_h{ margin:0; font-family:var(--iv-serif); font-size:34px; font-weight:600; line-height:1.44;
	letter-spacing:-.03em; color:#f6f0e4; }
.ivz .iv_share_d{ margin:18px 0 0; font-size:16px; line-height:1.9; color:rgba(246,240,228,.80); max-width:640px; }

.ivz .iv_linkrow{ display:flex; gap:10px; margin:34px 0 0; max-width:720px; }
.ivz .iv_linkbox{ flex:1 1 auto; min-width:0; min-height:56px; padding:0 18px;
	background:rgba(246,240,228,.09); border:1px solid rgba(246,240,228,.26); border-radius:4px;
	color:#f0e8d6; font-size:15px; line-height:54px; letter-spacing:-.01em;
	overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ivz .iv_sbtns{ display:flex; flex-wrap:wrap; gap:10px; margin:14px 0 0; }
.ivz .iv_sbtn{ display:inline-flex; align-items:center; justify-content:center; gap:8px;
	min-height:56px; padding:0 26px; border:1px solid rgba(246,240,228,.42); border-radius:4px;
	background:transparent; color:#f6f0e4; cursor:pointer;
	font-size:16px; font-weight:700; letter-spacing:-.01em; text-decoration:none;
	transition:background .2s, border-color .2s; }
.ivz .iv_sbtn:hover{ background:rgba(246,240,228,.12); border-color:rgba(246,240,228,.7); color:#fff; }
.ivz .iv_sbtn_kakao{ background:#FEE500; border-color:#FEE500; color:#1a1a1a; }
.ivz .iv_sbtn_kakao:hover{ background:#f5d800; border-color:#f5d800; color:#1a1a1a; }
.ivz .iv_sbtn:focus-visible{ outline:2px solid var(--iv-gold-l); outline-offset:3px; }
.ivz .iv_share_note{ margin:22px 0 0; font-size:14px; line-height:1.85; color:rgba(246,240,228,.62); }

/* ── 내가 건넨 초대(현황 카드) ────────────────────────────────────
   자리 = 공유 밴드(딥포레스트) 맨 아래. 크림 카드를 얹어 "내 기록"을 또렷하게 세운다.
   ★ 조합원 전용·로그인 상태에서만 렌더된다. 이름은 서버에서 마스킹해 내려온다.
   ★ 50~60대 가독: 이름 18px, 단계 라벨 14.5px 하한, 행 높이 넉넉하게. */
.ivz .iv_mine{ margin:40px 0 0; padding:30px 30px 26px; border-radius:4px;
	background:var(--iv-surface); border-top:2px solid var(--iv-gold-l); color:var(--iv-ink); }
.ivz .iv_mine[hidden]{ display:none; }
.ivz .iv_mine_head{ display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between;
	gap:8px 20px; padding-bottom:18px; border-bottom:1px solid var(--iv-line-soft); }
.ivz .iv_mine_t{ margin:0; font-family:var(--iv-serif); font-size:24px; font-weight:600;
	line-height:1.4; letter-spacing:-.028em; color:var(--iv-ink); }
.ivz .iv_mine_sum{ margin:0; font-size:16px; line-height:1.7; color:var(--iv-ink-soft); }
.ivz .iv_mine_sum b{ font-weight:700; color:var(--iv-green); }
.ivz .iv_mine_sum .iv_msep{ font-style:normal; color:var(--iv-line); margin:0 4px; }

.ivz .iv_mlist{ margin:0; padding:0; list-style:none; }
.ivz .iv_mrow{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
	gap:12px 24px; padding:18px 0; border-bottom:1px solid var(--iv-line-soft); }
.ivz .iv_mrow:last-child{ border-bottom:0; padding-bottom:4px; }
.ivz .iv_mwho{ display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 12px; min-width:0; }
.ivz .iv_mnm{ font-family:var(--iv-serif); font-size:19px; font-weight:600; letter-spacing:-.02em;
	color:var(--iv-ink); }
.ivz .iv_mwhen{ font-size:14.5px; color:var(--iv-muted); }

/* 단계 3단 — 지난 단계는 딥그린 점, 아직인 단계는 흐린 테두리 점 */
.ivz .iv_msteps{ display:flex; align-items:center; flex-wrap:wrap; gap:8px 6px; margin:0; padding:0; list-style:none; }
.ivz .iv_msteps li{ display:inline-flex; align-items:center; gap:7px;
	padding:7px 13px; border-radius:999px;
	background:rgba(109,118,108,.09); border:1px solid var(--iv-line-soft);
	font-size:14.5px; font-weight:600; letter-spacing:-.01em; color:var(--iv-muted); }
.ivz .iv_msteps li.is-done{ background:rgba(61,96,65,.10); border-color:rgba(61,96,65,.34);
	color:var(--iv-green); }
.ivz .iv_mstep_dot{ flex:0 0 auto; width:8px; height:8px; border-radius:50%;
	background:transparent; border:1.5px solid var(--iv-line); }
.ivz .iv_msteps li.is-done .iv_mstep_dot{ background:var(--iv-green); border-color:var(--iv-green); }

.ivz .iv_mmore{ margin:16px 0 0; font-size:14.5px; line-height:1.8; color:var(--iv-muted); }

/* 초대 0명 — 바로 위 공유 버튼으로 이어지는 자리다 */
.ivz .iv_mempty{ padding:26px 0 6px; text-align:center; }
.ivz .iv_mempty p{ margin:0; font-size:16.5px; line-height:1.9; color:var(--iv-ink-soft); }
.ivz .iv_mempty p:first-child{ font-family:var(--iv-serif); font-size:20px; font-weight:600;
	letter-spacing:-.025em; color:var(--iv-ink); margin-bottom:6px; }

/* 비로그인 안내(공유 불가) */
.ivz .iv_share_guest{ margin:30px 0 0; padding:26px 28px; border:1px solid rgba(246,240,228,.24); border-radius:4px; }
.ivz .iv_share_guest p{ margin:0 0 16px; font-size:15.5px; line-height:1.9; color:rgba(246,240,228,.86); }
.ivz .iv_share_guest .iv_sbtn{ min-height:52px; }

/* ── 04 자주 묻는 질문 ───────────────────────────────────────── */
.ivz .iv_faq{ padding:88px 0 96px; }
.ivz .iv_faqlist{ margin:40px 0 0; border-top:1px solid var(--iv-line); }
.ivz .iv_faqitem{ border-bottom:1px solid var(--iv-line); }
.ivz .iv_faqq{ display:flex; align-items:center; gap:16px; width:100%; min-height:76px;
	padding:20px 4px; border:0; background:none; cursor:pointer; text-align:left;
	font-family:var(--iv-serif); font-size:20px; font-weight:600; line-height:1.55;
	letter-spacing:-.025em; color:var(--iv-ink); }
.ivz .iv_faqq:hover{ color:var(--iv-gold); }
.ivz .iv_faqq:focus-visible{ outline:2px solid var(--iv-gold); outline-offset:2px; }
.ivz .iv_faqq .iv_qmark{ flex:0 0 auto; font-family:var(--iv-serif); font-size:17px; font-weight:700;
	color:var(--iv-gold); }
.ivz .iv_faqq .iv_arw{ flex:0 0 auto; margin-left:auto; font-size:15px; color:var(--iv-muted);
	transition:transform .25s; }
.ivz .iv_faqitem.is-open .iv_faqq .iv_arw{ transform:rotate(180deg); }
.ivz .iv_faqa{ display:none; padding:0 4px 30px 37px; }
.ivz .iv_faqitem.is-open .iv_faqa{ display:block; }
.ivz .iv_faqa p{ margin:0 0 12px; font-size:16.5px; line-height:1.98; color:var(--iv-ink-soft); }
.ivz .iv_faqa p:last-child{ margin-bottom:0; }

/* ── 클로징 CTA ──────────────────────────────────────────────── */
/* ★ 배경이 딥그린(--iv-green-d)이면 바로 아래 풋터의 "가까운 매장" 초록 밴드와 맞닿아
     두 초록이 뭉개진다(1차 시안 실측). 먹빛 포레스트로 내려 단차를 만든다. */
.ivz .iv_close{ padding:78px 0; text-align:center; background:var(--iv-forest); color:#f6f0e4; }
.ivz .iv_close .iv_eyebrow{ color:var(--iv-gold-l); margin-bottom:18px; }
.ivz .iv_close h3{ margin:0; font-family:var(--iv-serif); font-size:34px; font-weight:600; line-height:1.46;
	letter-spacing:-.03em; color:#f6f0e4; }
.ivz .iv_close p{ margin:20px 0 0; font-size:16px; line-height:1.9; color:rgba(246,240,228,.80); }
.ivz .iv_close .iv_hcta{ justify-content:center; margin-top:34px; }

/* ═══ 태블릿 ═══════════════════════════════════════════════════ */
@media screen and (max-width:1024px){
	.ivz .iv_letter_grid{ grid-template-columns:1fr; gap:34px; }
	.ivz .iv_bgrid{ grid-template-columns:1fr; }
	.ivz .iv_sgrid{ grid-template-columns:1fr; gap:14px; }
	.ivz .iv_bhead{ flex-direction:column; align-items:flex-start; gap:18px; }
	.ivz .iv_bhead_r{ text-align:left; max-width:none; }
	.ivz .iv_chgrid{ grid-template-columns:1fr; gap:14px; }
	.ivz .iv_al_h{ font-size:33px; }
}

/* ═══ 모바일 (모바일 우선 리듬 재정렬) ═════════════════════════ */
@media screen and (max-width:768px){
	.ivz .iv_in{ padding-left:18px; padding-right:18px; }

	/* 모바일은 세로 크롭이라 인물이 제목 뒤로 들어간다 → 가로 기준점을 왼쪽으로 당겨
	   인물이 화면 오른쪽에 서게 한다(제목은 왼쪽 정렬이라 겹침이 줄어든다). */
	.ivz .iv_hero_bg{ background-position:28% 30%; }

	/* 두 역할 블록 — 모바일은 위아래로 쌓는다.
	   좌우 대비가 사라지므로 **구분선을 굵게** 넣어 "여기부터 다른 사람 이야기"를 못박는다. */
	.ivz .iv_roles{ grid-template-columns:1fr; }
	.ivz .iv_role.is-new{ border-right:0; border-bottom:3px solid var(--iv-green); }
	.ivz .iv_role_top{ padding:24px 18px 20px; }
	.ivz .iv_role_h{ font-size:24px; }
	.ivz .iv_role_hs{ font-size:14px; }
	.ivz .iv_role_amt{ font-size:32px; }
	.ivz .iv_role_body{ padding:20px 18px 6px; }
	.ivz .iv_role_when{ padding:18px 18px 22px; }
	.ivz .iv_when_d{ font-size:14px; line-height:1.8; }
	.ivz .iv_role_note{ font-size:14px; }
	.ivz .iv_scale li{ padding:12px 4px; }
	.ivz .iv_sc_n{ font-size:12.5px; }
	.ivz .iv_sc_v{ font-size:15.5px; }

	/* 월간증정 — 이미 세로 타임라인이라 간격만 조인다. 썸네일은 96px 이하로 줄이지 않는다
	   (사진이 작아지면 "실물을 준다"는 체감이 사라진다 = 이 블록의 존재 이유). */
	.ivz .iv_gift_lead{ font-size:14.5px; line-height:1.8; }
	.ivz .iv_gift_line{ gap:10px; }
	.ivz .iv_gcard{ gap:12px; padding:14px 12px; }
	/* 달 칸은 좁히지 않는다 — "첫 주문에"가 두 줄로 깨지면 오히려 읽기 어려워진다. */
	.ivz .iv_gmon{ min-width:54px; }
	.ivz .iv_gmon_m{ font-size:19px; }
	.ivz .iv_gthumb{ width:96px; max-width:96px; }
	.ivz .iv_gnm{ font-size:15.5px; }
	.ivz .iv_gamt{ margin-top:4px; font-size:13px; }

	/* 예시 줄 — 390px 에서 "지금 8월에 가입하시면 → …" 을 한 줄에 욱여넣으면
	   글자가 잘게 쪼개진다. 화살표를 접고 위아래로 쌓는다. */
	.ivz .iv_gift_ex{ flex-direction:column; align-items:flex-start; gap:4px;
		padding:13px 14px; font-size:14px; }
	.ivz .iv_gx_arw{ display:none; }
	.ivz .iv_grules li{ font-size:14px; line-height:1.75; padding-left:18px; }

	/* 02·03 신규 서사 블록 모바일 리듬 */
	.ivz .iv_change{ padding-top:60px; }
	.ivz .iv_chgrid{ margin-top:30px; }
	.ivz .iv_chcard{ padding:28px 22px 26px; }
	.ivz .iv_cht{ font-size:20px; }
	.ivz .iv_chd{ font-size:15px; }
	.ivz .iv_term{ margin-top:32px; padding:26px 22px; }
	.ivz .iv_term_d{ font-size:18px; line-height:1.72; }
	.ivz .iv_term_s{ font-size:15px; }
	.ivz .iv_already{ margin-top:60px; padding:58px 0; }
	.ivz .iv_al_h{ font-size:27px; line-height:1.48; }
	.ivz .iv_al_d{ margin-top:22px; font-size:15.5px; line-height:1.9; }
	/* 모바일도 같은 취지로 걷는다 — 위(논·하늘·얼굴)는 열고 아래(글자)만 눌러
	   "밝고 행복한 사진 + 읽히는 글자"를 동시에 잡는다. 전면 암막 금지. */
	.ivz .iv_hero:before{ background:linear-gradient(180deg,rgba(10,22,15,.26) 0,rgba(14,28,20,.56) 46%,rgba(12,24,17,.84) 100%); }
	.ivz .iv_hero_in{ padding:64px 18px 56px; }
	.ivz .iv_hero_in > *{ max-width:none; }
	.ivz .iv_htitle{ font-size:34px; line-height:1.32; }
	.ivz .iv_hlead{ margin-top:20px; font-size:17px; line-height:1.88; }
	.ivz .iv_welcome{ margin-bottom:18px; padding:10px 16px; font-size:14px; }
	.ivz .iv_hcta{ margin-top:28px; gap:10px; }
	.ivz .iv_btn{ width:100%; min-height:56px; font-size:17px; padding:0 20px; }

	.ivz .iv_h2{ font-size:28px; line-height:1.44; }
	.ivz .iv_label{ margin-bottom:22px; }

	.ivz .iv_letter{ padding-top:56px; }
	.ivz .iv_letter_txt p{ font-size:17px; line-height:1.98; }
	.ivz .iv_quote{ margin-top:46px; padding:48px 6px 36px; }
	.ivz .iv_quote blockquote{ font-size:21px; line-height:1.68; }

	.ivz .iv_benefit{ padding-top:58px; }
	.ivz .iv_bcard{ padding:30px 22px 26px; }
	.ivz .iv_bcard_t{ font-size:23px; }
	.ivz .iv_gift_amt{ font-size:24px; }
	.ivz .iv_gifts li{ gap:12px; padding:15px 0; }
	.ivz .iv_bnote{ padding:20px 18px; }

	.ivz .iv_steps{ padding-top:58px; }
	.ivz .iv_sgrid{ margin-top:30px; }
	.ivz .iv_step{ padding:26px 22px 24px; }

	.ivz .iv_share{ margin-top:58px; padding:52px 0; }
	.ivz .iv_share_h{ font-size:26px; }
	.ivz .iv_linkrow{ flex-direction:column; gap:8px; }
	.ivz .iv_sbtns{ gap:8px; }
	.ivz .iv_sbtn{ width:100%; }

	/* 내가 건넨 초대 — 이름/단계를 세로로 쌓아 좁은 화면에서 줄바꿈이 깨지지 않게 */
	.ivz .iv_mine{ margin-top:32px; padding:24px 18px 22px; }
	.ivz .iv_mine_head{ gap:6px; padding-bottom:16px; }
	.ivz .iv_mine_t{ font-size:21px; }
	.ivz .iv_mine_sum{ font-size:15.5px; }
	.ivz .iv_mrow{ flex-direction:column; align-items:flex-start; gap:10px; padding:16px 0; }
	.ivz .iv_mnm{ font-size:18px; }
	.ivz .iv_msteps{ gap:6px; }
	.ivz .iv_msteps li{ padding:6px 11px; font-size:14px; }
	.ivz .iv_mempty p:first-child{ font-size:19px; }

	.ivz .iv_faq{ padding:58px 0 64px; }
	.ivz .iv_faqq{ font-size:18px; min-height:70px; gap:12px; }
	.ivz .iv_faqa{ padding-left:29px; padding-bottom:26px; }
	.ivz .iv_faqa p{ font-size:16.5px; }

	.ivz .iv_close{ padding:58px 0; }
	.ivz .iv_close h3{ font-size:26px; }
}

/* 아주 좁은 화면 */
@media screen and (max-width:360px){
	.ivz .iv_htitle{ font-size:30px; }
	.ivz .iv_gift_amt{ font-size:22px; }
}

/* ═══════════════════════════════════════════════════════════════
   메인 고정 배너 (.ivband) — PC/모바일 공용 마크업, 상시 노출 · v3 밝은 타이포 색면
   ─────────────────────────────────────────────────────────────
   2026-08-09 ① 사용자 확정 "타이포 색면으로 운영 반영" → 인물 사진 제거
              ② 사용자 정정 "초대 배너 톤을 다른 배너들과 맞춰줘"
                 → **딥그린 색면(어두움) → 밝은 지면 + 딥그린 포인트**로 재조정.
   메인 배너 3종을 '밝은 지면 + 세리프 카피 + 라인 모티프, 포인트색만 다름' 한 가족으로:
     · 생산자(.pzband)      = 크림 #f7f2e7        + 웜브라운 #8c6a29
     · 조합원 초대(.ivband) = 그린 아이보리 #f4f6ec + 두레 딥그린 #3D6041   ← 이 블록
     · 연차보고서(.annualband) = 연녹→아이보리      + 딥그린 #23422b (annual_band.css)
   셋 중 하나를 고치면 나머지 둘도 같이 볼 것. 혼자 어두우면 메인에서 튄다(이번 정정 사유).

   모티프 = 한 줄기에서 갈라져 뻗는 잎('이웃에게로'). CSS 데이터URI 인라인 SVG,
   이미지 파일 의존 0. 강도는 사용자 지시로 절제 유지(PC .34 / MO .26).
   제거분: 사진(.ivb__bg 이미지)·스크림(.ivb__scrim)·시안 게이트(?bandv).
   ═══════════════════════════════════════════════════════════════ */

/* 2026-08-11 모바일 우측 잘림 방어(점검리포트#5) — grid/flex 자식 min-width:auto가 뷰포트를 밀어내던 것 차단 + 긴 토큰 줄바꿈. .ivz는 overflow-x:hidden 스코프라 넘침=잘림이었음 */
.ivz .iv_roles, .ivz .iv_role{ min-width:0; }
.ivz .iv_scale li{ min-width:0; }
.ivz .iv_role_note, .ivz .iv_when_d, .ivz .iv_gift_txt{ overflow-wrap:anywhere; max-width:100%; }
.ivz .iv_gift_txt{ min-width:0; word-break:keep-all; }
/* ★ 스코프 내 박스모델 고정 — 호출 화면이 전역 box-sizing 을 주지 않아,
   이게 없으면 모바일 390px 에서 .ivb__sub / .ivb__cta 가 400px 로 계산돼(content-box
   + 좌우 padding 22px) 오른쪽 26px 이 overflow:hidden 에 잘려 나간다.
   (08-09 실측 후 운영 surgical 선반영한 수정이며, 여기서도 유지한다.) */
.ivband, .ivband *{ box-sizing:border-box; }

.ivband{ --ivb-serif:"Noto Serif KR","Maru Buri","Nanum Myeongjo",serif;
	--ivb-paper:#f4f6ec;		/* 그린 아이보리 지면 */
	--ivb-ink:#1f2923;			/* 헤드라인 먹색 (지면 위 대비 12.6:1) */
	--ivb-green:#3D6041;		/* 두레 딥그린 포인트 (지면 위 대비 5.9:1) */
	--ivb-green-d:#2F5233;		/* CTA 글자 (지면 위 대비 8.1:1) */
	--ivb-sub:#4a5a4d;			/* 서브카피 (지면 위 대비 7.1:1) */
	display:block; margin:0 0 60px; }
.ivband .ivb__link{ position:relative; display:block; overflow:hidden; min-height:275px;
	text-decoration:none; background:var(--ivb-paper);
	border-top:1px solid rgba(61,96,65,.20);
	border-bottom:1px solid rgba(61,96,65,.20); }
/* 색면 = 좌상단이 밝고 우하단으로 가라앉는 그린 아이보리. 사진 없음. */
.ivband .ivb__bg{ position:absolute; inset:0;
	background:radial-gradient(135% 165% at 6% -10%,#fffef9 0,#f6f8ef 42%,#eef2e2 78%,#e3e9d4 100%);
	background-color:var(--ivb-paper); }
.ivband .ivb__motif{ position:absolute; inset:0; left:0; right:0;
	max-width:1180px; margin:0 auto; pointer-events:none;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 280' fill='none' stroke='%233D6041' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M132,272 C128,214 120,168 108,118'/%3E%3Cpath d='M128,214 C146,178 168,148 186,108'/%3E%3Cpath d='M124,250 C100,218 78,196 52,172'/%3E%3Cpath d='M127.3,222.6 Q155.2,204.8 164.6,173.1 Q136.8,190.9 127.3,222.6 Z' stroke-width='1.9'/%3E%3Cpath d='M122.5,189 Q106,163.5 76.8,154.9 Q93.3,180.4 122.5,189 Z' stroke-width='1.9'/%3E%3Cpath d='M116.5,156.5 Q137.6,140.5 143.2,114.7 Q122.1,130.6 116.5,156.5 Z' stroke-width='1.9'/%3E%3Cpath d='M110.1,127 Q97.9,110.5 77.8,106.1 Q90.1,122.5 110.1,127 Z' stroke-width='1.9'/%3E%3Cpath d='M142.7,186.9 Q144.5,160.4 128.9,138.9 Q127.1,165.4 142.7,186.9 Z' stroke-width='1.9'/%3E%3Cpath d='M160.6,156.4 Q183.3,158.8 202.3,146.1 Q179.6,143.7 160.6,156.4 Z' stroke-width='1.9'/%3E%3Cpath d='M179.4,122 Q179.5,104.7 168.5,91.4 Q168.4,108.7 179.4,122 Z' stroke-width='1.9'/%3E%3Cpath d='M100,220.4 Q107.2,206.8 103.3,192 Q96.1,205.5 100,220.4 Z' stroke-width='1.9'/%3E%3Cpath d='M73,192 Q61.3,188.2 50.1,193.4 Q61.8,197.1 73,192 Z' stroke-width='1.9'/%3E%3Cpath d='M131.8,216.7 L159.4,180' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M117,184.9 L83.2,159.7' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M119.8,151.5 L139.5,120.5' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M106.2,124.5 L82.4,109' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M141.1,181.1 L130.8,145.6' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M165.6,155.1 L196.4,147.6' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M178.1,118.3 L170,95.7' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M100.4,217 L102.9,196' stroke-width='1.1' opacity='.75'/%3E%3Cpath d='M70.3,192.1 L53.3,193.2' stroke-width='1.1' opacity='.75'/%3E%3C/svg%3E") no-repeat;
	background-position:right 18px top -34px;
	background-size:auto 330px;
	opacity:.34; }
.ivband .ivb__inner{ position:relative; z-index:1; display:block;
	max-width:1180px; margin:0 auto; padding:48px 24px 46px; }
.ivband .ivb__eyebrow{ display:flex; align-items:center; gap:12px; margin:0 0 16px;
	font-size:11.5px; font-weight:700; letter-spacing:.2em; color:var(--ivb-green); }
.ivband .ivb__eyebrow::before{ content:""; display:block; width:26px; height:1px;
	background:var(--ivb-green); flex:none; }
.ivband .ivb__head{ display:block; max-width:640px; font-family:var(--ivb-serif);
	font-size:32px; font-weight:600; line-height:1.36; letter-spacing:-.032em; color:var(--ivb-ink);
	word-break:keep-all; }
.ivband .ivb__em{ color:var(--ivb-green); }
.ivband .ivb__row{ display:flex; flex-wrap:wrap; align-items:center; gap:14px 26px; margin:22px 0 0; }
.ivband .ivb__sub{ font-size:15.5px; line-height:1.75; color:var(--ivb-sub);
	letter-spacing:-.01em; word-break:keep-all; }
.ivband .ivb__cta{ display:inline-flex; align-items:center; gap:8px; min-height:46px; padding:0 22px;
	border:1px solid var(--ivb-green); border-radius:3px;
	font-size:15px; font-weight:700; color:var(--ivb-green-d); letter-spacing:-.01em;
	white-space:nowrap; transition:background .2s, color .2s; }
.ivband .ivb__link:hover .ivb__cta,
.ivband .ivb__link:focus .ivb__cta{ background:var(--ivb-green); color:#fbfdf7; }
.ivband .ivb__arw{ font-size:17px; line-height:1; }
.ivband .ivb__link:focus-visible{ outline:none; }
.ivband .ivb__link:focus-visible .ivb__cta{ outline:3px solid var(--ivb-green); outline-offset:3px; }

@media screen and (max-width:768px){
	.ivband{ margin:0 0 34px; }
	.ivband .ivb__link{ min-height:0; }
	.ivband .ivb__inner{ padding:36px 18px 34px; }
	.ivband .ivb__motif{
		background-position:right -34px top -26px; background-size:auto 210px; opacity:.26; }
	.ivband .ivb__head{ font-size:24px; line-height:1.42; max-width:none; }
	.ivband .ivb__row{ flex-direction:column; align-items:flex-start; gap:16px; margin-top:16px; }
	.ivband .ivb__sub{ font-size:15px; }
	.ivband .ivb__cta{ min-height:48px; width:100%; justify-content:center; }
}

@media (prefers-reduced-motion:reduce){
	.ivband .ivb__cta{ transition:none; }
}

/* ═══════════════════════════════════════════════════════════════
   진입점 버튼 (.ivlink) — 마이두레 메뉴 1행 / 주문완료 카드
   ═══════════════════════════════════════════════════════════════ */
.ivcard{ --ivc-serif:"Noto Serif KR","Maru Buri","Nanum Myeongjo",serif;
	display:block; margin:22px 0 0; padding:26px 24px; text-decoration:none;
	background:#f7f2e7; border-left:2px solid #3D6041; }
.ivcard:hover{ background:#f3ecdb; }
.ivcard .ivc__eyebrow{ display:block; margin:0 0 10px;
	font-size:11.5px; font-weight:700; letter-spacing:.16em; color:#8c6a29; }
.ivcard .ivc__t{ display:block; font-family:var(--ivc-serif); font-size:21px; font-weight:600;
	line-height:1.5; letter-spacing:-.028em; color:#1f2923; word-break:keep-all; }
.ivcard .ivc__d{ display:block; margin:10px 0 0; font-size:15.5px; line-height:1.85;
	color:#414c43; word-break:keep-all; }
.ivcard .ivc__go{ display:inline-flex; align-items:center; gap:6px; margin:16px 0 0; min-height:46px;
	font-size:15px; font-weight:700; color:#3D6041; letter-spacing:-.01em; }
.ivcard:hover .ivc__go{ color:#8c6a29; }

@media screen and (max-width:768px){
	.ivcard{ padding:22px 18px; }
	.ivcard .ivc__t{ font-size:19px; }
	.ivcard .ivc__d{ font-size:15px; }
}
