@charset "utf-8";
@import url('../fonts/A2Z/font.css');

/**************************************************************************
	파일명	: style.css
	최초작성자	: 박다혜
	최초작성일	: 2026-08-04
	-----------------------------------------------------------------------
	Dec. 타임알바 프로모션 랜딩 페이지 (브레이크포인트 : 1200 / 1024 / 768 / 640)
	-----------------------------------------------------------------------
	최종수정자	: 
	최종수정일	: 
	수정내용	: 
***************************************************************************/


/* color variables */
:root {
	--blue:rgb(41,112,255);
	--blue-deep:rgb(0,78,235);
	--blue-dark:rgb(0,64,193);
	--blue-light:rgb(223,240,255);
	--blue-pale:rgb(239,246,255);
	--orange:rgb(254,104,7);
	--orange-soft:rgb(255,159,90);
	--txt:rgb(17,24,39);
	--txt-sub:rgb(55,65,81);
	--txt-weak:rgb(107,114,128);
	--txt-mute:rgb(156,163,175);
	--dark:rgb(17,24,39);
	--navy:rgb(47,67,101);
	--bd:rgb(229,231,235);
}

html { scroll-behavior:smooth; }
body { font-family:'A2Z', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; color:var(--txt); background:#fff; word-break:keep-all; }
.inner { position:relative; max-width:1280px; margin:0 auto; padding:0 32px; }

/* 아이콘 스프라이트 (64×128 : 상단 흰색 / 하단 파랑) */
.ico { display:block; position:relative; width:64px; height:64px; overflow:hidden; }
.ico img { position:absolute; left:0; top:0; width:100%; }
.ico.b img { top:-100%; }

/* ─────────── header (히어로 위 투명) ─────────── */
#header { position:absolute; left:0; top:0; width:100%; z-index:10; height:100px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:10px 40px; }
#header .logo a { display:block; }
#header .logo img { display:block; height:40px; }
#gnb ul { display:flex; gap:70px; }
#gnb a { font-weight:600; font-size:17px; color:#fff; transition:opacity 0.2s; }
#gnb a:hover { opacity:0.75; }
#header .btn-download { display:inline-flex; align-items:center; height:44px; padding:12px 18px; border-radius:999px; background:var(--blue); color:#fff; font-weight:700; font-size:16px; white-space:nowrap; transition:background 0.2s; }
#header .btn-download:hover { background:var(--blue-deep); }
.btn-menu { display:none; }

/* ─────────── 공통 ─────────── */
.section { position:relative; padding:120px 0; overflow:hidden; }
.sec-head { display:flex; flex-direction:column; gap:20px; margin-bottom:60px; }
.sec-head.center { align-items:center; text-align:center; }
.br-t, .br-m { display:none; }
.sec-head h2 { font-weight:800; font-size:clamp(30px, 22px + 1.7vw, 40px); line-height:1.3; color:var(--txt); }
.sec-head p { font-size:18px; line-height:1.5; color:var(--txt-weak); }
.cate-badge { display:inline-flex; padding:6px 16px; border-radius:999px; font-weight:700; font-size:15px; }
.cate-badge.blue { background:var(--blue-light); color:var(--blue); }
.cate-badge.orange { background:rgb(255,245,237); color:var(--orange); }

.icon-circle { display:flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:999px; flex-shrink:0; }
.icon-circle.grd { background:linear-gradient(135deg, rgb(82,139,255), rgb(0,78,235)); box-shadow:0 12px 26px rgba(0,78,235,0.3); }
.icon-circle.light { background:var(--blue-light); }
.icon-circle .ico { width:64px; height:64px; }
.icon-circle.sm .ico, .icon-circle .ico { width:64px; height:64px; }
.icon-circle.md { width:58px; height:58px; }
.icon-circle.md .ico { width:76px; height:76px; }
.icon-circle.lg { width:76px; height:76px; }
.icon-circle.lg .ico { width:100px; height:100px; }

/* ─────────── section1 : 히어로 ─────────── */
.mv { position:relative; height:960px; background:#000; overflow:hidden; }
.mv-bg { position:absolute; inset:0; background:url('../img/section1_BG.png') center / cover no-repeat; }
.mv-bg:after { content:''; position:absolute; inset:0; background:rgba(0,0,0,0.6); }
.mv-cont { position:relative; width:1280px; max-width: 90%; height:100%; margin:0 auto; padding:0; }
.mv-mockup { position:absolute; right:0; top:50%; transform:translateY(-50%); width:640px; max-width:52vw; pointer-events:none; animation:floaty 4.5s ease-in-out infinite; }
@keyframes floaty { 0%, 100% { translate:0 0; } 50% { translate:0 -16px; } }
.hero-left { position:absolute; left:0; top:220px; width:580px; display:flex; flex-direction:column; align-items:flex-start; gap:35px; }
.hero-badge { display:inline-flex; padding:8px 16px 9px; border-radius:999px; background:rgb(255,244,237); color:var(--orange); font-weight:700; font-size:15px; }
.hero-title { display:flex; flex-direction:column; gap:25px; }
.hero-title h2 { font-weight:800; font-size:clamp(36px, 20px + 3.4vw, 56px); line-height:1.35; color:#fff; }
.hero-title p { font-weight:500; font-size:clamp(14px, 10px + 0.95vw, 20px); line-height:1.6; color:#fff; }
.btn-group { display:flex; gap:16px; flex-wrap:wrap; }
.btn-pill { display:inline-flex; align-items:center; gap:8px; height:58px; padding:18px 32px; border-radius:999px; font-weight:700; font-size:18px; transition:transform 0.2s, background 0.2s; }
.btn-pill:hover { transform:translateY(-2px); }
.btn-pill.primary { background:var(--blue); color:#fff; }
.btn-pill.primary:hover { background:var(--blue-deep); }
.btn-pill.line { background:transparent; box-shadow:inset 0 0 0 2px #fff; color:#fff; }
.ico-chevron { width:8px; height:8px; border-top:2px solid #fff; border-right:2px solid #fff; transform:rotate(45deg); }

/* ─────────── section2 : 핵심 가치 ─────────── */
.value { background:linear-gradient(140deg, rgb(240,247,255) 22%, rgb(239,246,255) 55%, rgb(228,245,255) 78%); }
.value .deco { position:absolute; pointer-events:none; }
.value .deco-clock { left:-20px; top:38px; width:414px; transform:matrix(-0.952,0.307,0.307,0.952); mix-blend-mode:multiply; }
.value .deco-coin { right:-90px; top:436px; width:267px; transform:rotate(7.3deg); }
.deco-glow { position:absolute; border-radius:999px; pointer-events:none; }
.value .deco-glow.left { left:-210px; top:430px; width:560px; height:560px; opacity:0.7; background:radial-gradient(closest-side, rgba(0,183,253,0.18), rgba(0,183,253,0)); }
.value .deco-glow.right { right:-220px; top:-190px; width:620px; height:620px; background:radial-gradient(closest-side, rgba(255,255,255,0.9), rgba(255,255,255,0)); }
.value-list { display:grid; grid-template-columns:repeat(3, 1fr); gap:30px; }
.value-list li { display:flex; flex-direction:column; gap:24px; border-radius:24px; background:#fff; box-shadow:inset 0 0 0 1px rgba(0,78,235,0.06), 0 2px 6px rgba(0,50,150,0.04), 0 24px 48px rgba(0,50,150,0.08); padding:40px; }
.value-list .txt { display:flex; flex-direction:column; gap:12px; }
.value-list strong { font-weight:800; font-size:22px; color:var(--txt); }
.value-list p { font-size:16px; line-height:1.7; color:var(--txt-sub); }

/* ─────────── section3 : 사장님 ─────────── */
.owner { background:#fff; overflow:visible; }
.owner .inner { display:flex; gap:100px; align-items:center; }
.owner-phone { position:relative; flex:0 1 520px; min-width:320px; display:flex; justify-content:flex-end; padding:12px; }
.phone-slide { width:400px; max-width:100%; aspect-ratio:400 / 777; border-radius:40px; background:#fff; box-shadow:0 0 0 12px var(--navy), 0 2px 12px rgba(0,0,0,0.06); overflow:hidden; }
.slide-track { display:flex; height:100%; transition:transform 0.6s cubic-bezier(0.25,0.8,0.3,1); }
.slide-track img { display:block; width:100%; height:100%; object-fit:contain; flex-shrink:0; }
.owner-char { position:absolute; left:-145px; bottom:-55px; width:320px; pointer-events:none; }
.owner-cont { flex:1; min-width:320px; display:flex; flex-direction:column; gap:50px; }
.owner-cont .sec-head { margin-bottom:0; align-items:flex-start; }
.feature-list { display:flex; flex-direction:column; gap:20px; }
.feature-list li { display:flex; gap:24px; align-items:flex-start; border-radius:24px; background:#fff; box-shadow:0 20px 44px rgba(0,50,150,0.1); padding:40px; cursor:pointer; transition:box-shadow 0.25s; }
.feature-list li.on { box-shadow:inset 0 0 0 2px rgb(82,139,255), 0 20px 44px rgba(0,50,150,0.1); }
.feature-list .txt { display:flex; flex-direction:column; gap:12px; }
.feature-list strong { font-weight:800; font-size:22px; color:var(--txt); }
.feature-list p { font-size:16px; line-height:1.7; color:var(--txt-sub); }

/* ─────────── section4 : 알바생 ─────────── */
.worker { background:var(--dark); padding-bottom:0; }
.worker .sec-head h2 { color:#fff; }
.worker .sec-head p { color:rgb(194,203,222); }
.step-list { display:flex; gap:55px; justify-content:center; align-items:flex-end; flex-wrap:wrap; }
.step-list > li { width:360px; display:flex; flex-direction:column; gap:24px; align-items:center; }
.step-label { display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; }
.step-label em { font-weight:800; font-size:15px; letter-spacing:1.2px; color:var(--orange-soft); }
.step-label strong { font-weight:800; font-size:20px; color:#fff; }
.step-label span { font-size:14px; color:rgb(194,203,222); }
.step-phone { align-self:stretch; height:490px; border-radius:50px 50px 0 0; background:var(--navy); padding:10px 10px 0; overflow:hidden; }
.step-phone.tall { height:550px; }
.step-phone img { display:block; width:100%; border-radius:40px 40px 0 0; box-shadow:0 14px 44px rgba(0,0,0,0.16); }

/* ─────────── section5 : 신뢰 ─────────── */
.trust { background:linear-gradient(121deg, rgb(249,251,255) 19%, rgba(224,238,255,0.5) 53%, #fff 87%); }
.trust-list { display:grid; grid-template-columns:repeat(3, 1fr); gap:30px; }
.trust-list li { display:flex; flex-direction:column; gap:24px; border-radius:24px; background:#fff; box-shadow:inset 0 0 0 1px rgba(0,78,235,0.06), 0 2px 6px rgba(0,50,150,0.04), 0 24px 48px rgba(0,50,150,0.08); padding:40px; }
.trust-list .txt { display:flex; flex-direction:column; gap:12px; }
.trust-list strong { font-weight:800; font-size:22px; color:var(--txt); }
.trust-list p { font-size:16px; line-height:1.6; color:var(--txt-sub); }

/* ─────────── section6 : FAQ ─────────── */
.faq { background:#fff; }
.faq .inner { max-width:1064px; }
.faq .sec-head { margin-bottom:44px; }
.faq-list { display:flex; flex-direction:column; gap:14px; }
.faq-list li { border-radius:20px; background:#fff; border:1px solid rgba(0,0,0,0.08); overflow:hidden; transition:box-shadow 0.25s, border-color 0.25s; }
.faq-list li.on { border-color:transparent; box-shadow:inset 0 0 0 2px rgb(82,139,255), 0 15px 30px rgba(0,50,150,0.07); }
.faq-q { display:flex; align-items:center; gap:14px; width:100%; padding:24px 28px; text-align:left; }
.faq-q em { font-weight:800; font-size:19px; color:var(--blue); }
.faq-q span { flex:1; font-weight:700; font-size:18px; color:var(--txt); }
.faq-q i { position:relative; width:14px; height:14px; flex-shrink:0; }
.faq-q i:before, .faq-q i:after { content:''; position:absolute; background:var(--txt-mute); transition:transform 0.25s; }
.faq-q i:before { left:0; top:6px; width:14px; height:2px; }
.faq-q i:after { left:6px; top:0; width:2px; height:14px; }
.faq-list li.on .faq-q i:after { transform:scaleY(0); }
.faq-a { display:none; padding:0 28px 24px 61px; }
.faq-list li.on .faq-a { display:block; }
.faq-a p { font-size:17px; line-height:1.7; color:var(--txt-sub); }

/* ─────────── section7 : CTA ─────────── */
.cta { padding:140px 0; background:linear-gradient(138deg, rgb(0,64,193) 14%, rgb(0,78,235) 57%, rgb(41,112,255) 86%); }
.cta .deco-glow.tl { left:-120px; top:-140px; width:440px; height:440px; background:radial-gradient(closest-side, rgba(255,255,255,0.14), rgba(255,255,255,0)); }
.cta .deco-glow.br { right:-170px; bottom:-235px; width:600px; height:600px; background:radial-gradient(closest-side, rgba(0,183,253,0.3), rgba(0,183,253,0)); }
.cta .inner { display:flex; align-items:flex-end; gap:clamp(40px, 4.2vw, 80px); flex-wrap:wrap; z-index:1; }
.cta-txt { display:flex; flex-direction:column; gap:28px; }
.cta-txt h2 { font-weight:800; font-size:clamp(40px, 26.7px + 1.12vw, 48px); line-height:1.35; color:#fff; }
.cta-txt p { font-size:clamp(17px, 12px + 0.42vw, 20px); color:#fff; }
.cta-links { display:flex; align-items:center; gap:clamp(18px, 1.4vw, 26px); flex-wrap:wrap; }
.store-btns { display:flex; flex-direction:column; gap:clamp(13px, 0.95vw, 18px); }
.store-btns a { display:block; transition:transform 0.2s; }
.store-btns a:hover { transform:translateY(-2px); }
.store-btns img { display:block; width:clamp(190px, 13.4vw, 256px); height:auto; }
.qr-download { display:flex; flex-direction:column; align-items:center; gap:14px; }
.qr-img { display:block; width:clamp(114px, 8vw, 152px); aspect-ratio:1; border-radius:clamp(26px, 1.8vw, 34px); overflow:hidden; }
.qr-img img { display:block; width:100%; height:100%; }
.qr-label { font-weight:500; font-size:clamp(15px, 1vw, 19px); color:rgb(178,204,255); }
/* 캐릭터 : 버튼 그룹 끝점 + 45px 지점을 따라감 (텍스트·버튼의 유동 폭과 동일한 식) */
.cta { --char-left:calc(50vw - 377px + 9.1vw + clamp(40px, 4.2vw, 80px) + clamp(190px, 13.4vw, 256px) + clamp(18px, 1.4vw, 26px) + clamp(114px, 8vw, 152px)); }
.cta-char { position:absolute; left:var(--char-left); top:auto; bottom:0; width:min(475px, 100vw - var(--char-left) - 24px); aspect-ratio:475 / 416; object-fit:cover; object-position:top; pointer-events:none; }

/* ─────────── footer ─────────── */
#footer { background:var(--dark); }
#footer .inner { display:flex; flex-direction:column; align-items:flex-start; gap:30px; padding-top:40px; padding-bottom:40px; }
#footer .f-logo img { display:block; height:24px; filter:brightness(0) invert(1); }
.f-info { display:flex; flex-wrap:wrap; gap:10px 30px; }
.f-info li { font-weight:400; font-size:14px; color:var(--txt-mute); }
.f-bottom { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; align-self:stretch; border-top:1px solid rgba(255,255,255,0.1); padding-top:30px; }
.f-links { display:flex; gap:24px; flex-wrap:wrap; }
.f-links a { font-weight:500; font-size:14px; color:#fff; transition:color 0.2s; }
.f-links a:hover { color:var(--txt-mute); }
.copyright { font-size:13px; color:var(--txt-mute); }

/* ─────────── 스크롤 등장 애니메이션 ─────────── */
.reveal { opacity:0; transform:translateY(28px); transition:opacity 0.6s ease, transform 0.7s cubic-bezier(0.22,0.8,0.3,1); will-change:opacity, transform; }
.reveal.in { opacity:1; transform:translateY(0); }
.cta-char.reveal { transform:translateY(48px) scale(0.85); }
.cta-char.reveal.in { transform:translateY(0) scale(1); transition:opacity 0.5s ease, transform 0.7s cubic-bezier(0.34,1.56,0.64,1); }
@media (prefers-reduced-motion:reduce) {
	.reveal, .reveal.in { opacity:1; transform:none; transition:none; }
	.mv-mockup { animation:none; }
}

/* ─────────── responsive (피그마 web-태블릿 1080 / web-모바일 480 기준) ─────────── */
@media all and (max-width:1500px) {
	.mv-mockup { right:32px; }
}

/* ── 태블릿 : web-태블릿(1080) 시안 ── */
@media all and (max-width:1200px) {
	.inner { padding:0 56px; }
	/* 히어로 : 텍스트 상단 좌측, 목업은 우측 하단으로 겹쳐 배치 */
	.mv { height:auto; padding-bottom:120px; }
	.mv-cont { height:auto; padding-top:188px; display:flex; flex-direction:column; }
	.hero-left { position:static; order:-1; width:580px; max-width:100%; }
	.mv-mockup { position:relative; right:auto; top:auto; transform:none; display:block; width:min(48%, 500px); max-width:none; margin:clamp(-150px, 300px - 37.5vw, 0px) 0 0 auto; }
	/* 핵심 가치 : 카드 세로 스택(아이콘 좌측 가로형) */
	.value-list { grid-template-columns:1fr; gap:20px; }
	.value-list li { flex-direction:row; align-items:flex-start; }
	.value .deco-clock { width:320px; left:-40px; }
	.value .deco-coin { width:260px; right:-60px; }
	/* 사장님 : 시안 순서대로 타이틀 → 폰 슬라이드 → 카드 */
	.owner .inner { flex-direction:column; gap:50px; }
	.owner-cont { display:contents; }
	.owner-cont .sec-head { order:-1; align-items:center; text-align:center; width:100%; }
	.owner-phone { flex:none; justify-content:center; order:0; }
	.feature-list { order:1; width:100%; }
	.phone-slide { width:302px; border-radius:30px; box-shadow:0 0 0 9px var(--navy), 0 2px 9px rgba(0,0,0,0.06); }
	.owner-char { left:-115px; bottom:-30px; width:241px; }
	.br-t { display:inline; }
	/* 알바생 : 3단 유지, 화면 폭에 따라 폰 축소 */
	.step-list { gap:clamp(18px, 2.8vw, 30px); flex-wrap:nowrap; }
	.step-list > li { flex:0 1 270px; min-width:0; width:auto; gap:clamp(14px, 2.2vw, 24px); }
	.step-label strong { font-size:clamp(15px, 1.9vw, 20px); }
	.step-label em { font-size:clamp(12px, 1.4vw, 15px); }
	.step-label span { font-size:clamp(11px, 1.3vw, 14px); }
	.step-phone { height:auto; aspect-ratio:270 / 368; border-radius:38px 38px 0 0; padding:clamp(5px, 0.75vw, 8px) clamp(5px, 0.75vw, 8px) 0; }
	.step-phone.tall { height:auto; aspect-ratio:270 / 413; }
	.step-phone img { border-radius:30px 30px 0 0; }
	/* 신뢰 : 카드 세로 스택(아이콘 좌측, 세로 중앙) */
	.trust-list { grid-template-columns:1fr; }
	.trust-list li { flex-direction:row; align-items:center; }
	/* CTA : 시안(1080) — 텍스트+버튼 세로 스택 좌측, 캐릭터 우측(하체 크롭) */
	.cta { padding:80px 0; }
	.cta .inner { flex-direction:column; align-items:flex-start; gap:50px; flex-wrap:nowrap; }
	.cta-char { display:block; left:54.5%; right:auto; top:auto; bottom:0; width:min(40.6%, 438px); aspect-ratio:438 / 385; object-fit:cover; object-position:top; }
	.cta-links { flex-wrap:nowrap; gap:clamp(14px, 2.4vw, 26px); }
	.store-btns { gap:clamp(10px, 1.7vw, 18px); }
	.store-btns img { width:clamp(160px, 23.5vw, 256px); height:auto; }
	.qr-img { width:clamp(95px, 14vw, 152px); height:auto; aspect-ratio:1; border-radius:clamp(20px, 3.1vw, 34px); }
	.qr-img img { width:100%; height:100%; }
	.qr-label { font-size:clamp(13px, 1.75vw, 19px); }
}

@media all and (max-width:1024px) {
	#gnb ul { gap:40px; }
	#gnb a { font-size:16px; }
}

@media all and (max-width:768px) {
	#gnb { display:none; }
	#header .btn-download { margin-left:auto; }
	.section { padding:80px 0; }
	.inner { padding:0 32px; }
	.sec-head p { font-size:16px; }
	.faq-q { padding:20px; }
	.faq-q span { font-size:16px; }
	.faq-a { padding:0 20px 20px 53px; }
	.faq-a p { font-size:15px; }
	#footer .inner { gap:20px; }
	.f-bottom { flex-direction:column; align-items:flex-start; gap:20px; padding-top:30px; }
}

/* ── 모바일 : web-모바일(480) 시안 ── */
@media all and (max-width:640px) {
	.br-m { display:inline; }
	#header { padding:10px 24px; }
	#header .logo img { height:30px; }
	#header .btn-download { height:40px; padding:10px 16px; font-size:14px; }
	/* 히어로 : 텍스트 위, 목업은 하단 중앙(하단 살짝 크롭) */
	.mv { padding-bottom:0; }
	.mv-cont { padding-top:152px; }
	.hero-left { gap:24px; }
	.hero-badge { font-size:11px; padding:6px 11px; }
	.hero-title { gap:17px; }
	.hero-title h2 { font-size:36px; }
	.hero-title p { font-size:14px; }
	/* 알바생 : 세로 스택 + 풀블리드 구분선, step2는 이미지에 딱 맞게 */
	.step-list { flex-wrap:wrap; gap:40px; }
	.step-list > li { flex:none; width:calc(100% + 64px); margin:0 -32px; max-width:none; gap:18px; border-bottom:1px solid rgba(255,255,255,0.2); }
	.step-list > li:last-child { border-bottom:none; }
	.worker { padding-bottom:0; }
	.step-phone, .step-phone.tall { align-self:center; width:270px; height:405px; aspect-ratio:auto; border-radius:38px 38px 0 0; padding:8px 8px 0; }
	.step-phone.tall { height:auto; padding-bottom:0; }
	.step-label strong { font-size:20px; }
	.step-label em { font-size:15px; }
	.step-label span { font-size:14px; }
	.btn-group { gap:11px; }
	.btn-pill { height:40px; padding:12px 22px; font-size:12.5px; gap:6px; }
	.ico-chevron { width:6px; height:6px; }
	.mv-mockup { width:79%; margin:54px auto -25px; }
	/* 핵심 가치 */
	.value .deco-clock { width:182px; left:-35px; top:4px; }
	.value .deco-coin { width:180px; right:-65px; top:auto; bottom:20px; }
	.value-list li { padding:30px 25px; gap:20px; }
	.value-list strong { font-size:20px; }
	.value-list p { font-size:14px; }
	.icon-circle { width:50px; height:50px; }
	.icon-circle .ico, .icon-circle.sm .ico { width:50px; height:50px; }
	/* 사장님 */
	.owner-phone { padding:12px 0; }
	.phone-slide { width:200px; border-radius:19px; box-shadow:0 0 0 6px var(--navy), 0 2px 6px rgba(0,0,0,0.06); }
	.owner-char { left:-80px; bottom:-20px; width:155px; }
	.feature-list li { padding:35px 25px; gap:20px; }
	.feature-list strong { font-size:20px; }
	.feature-list p { font-size:14px; }
	/* 신뢰 : 아이콘 상단 + 중앙 정렬 */
	.trust-list li { flex-direction:column; align-items:center; text-align:center; padding:30px 40px; }
	.trust-list .txt { align-items:center; }
	.trust-list strong { font-size:20px; }
	.trust-list p { font-size:14px; }
	/* CTA : web-모바일 시안(중앙 정렬 + 캐릭터 하단) */
	.cta { padding:70px 0 0; }
	.cta .inner { flex-direction:column; align-items:center; gap:40px; }
	.cta-txt { padding-right:0; align-items:center; text-align:center; gap:28px; }
	.cta-txt h2 { font-size:clamp(34px, 10.5vw, 42px); line-height:1.35; }
	.cta-txt p { font-size:17px; }
	.cta-links { justify-content:center; gap:18px; }
	.store-btns { gap:12px; }
	.store-btns img { width:177px; height:55px; }
	.qr-download { justify-content:space-between; gap:10px; }
	.qr-img, .qr-img img { width:105px; height:105px; }
	.qr-img { border-radius:23px; }
	.qr-label { font-size:13px; }
	.cta-char { position:relative; z-index:1; left:auto; right:auto; top:auto; bottom:auto; display:block; width:min(68%, 274px); margin:8px auto 0; aspect-ratio:274 / 234; object-fit:cover; object-position:top; }
	/* 푸터 */
	#footer .inner { padding-top:40px; padding-bottom:40px; }
	.f-info { gap:10px 30px; }
}
