/* 친구초대·환영·양도: 모바일 한 화면 중심, PC는 읽기 쉬운 중앙 카드. */
/* 공통 모바일 헤더는 일반 서브페이지에서 로고를 숨기므로 이 화면에서만 중앙 로고를 복원한다. */
@media(max-width:767px){.header--referral .top__logo{display:block!important;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:145px;height:auto;margin:0}.header--referral .top__logo img{width:100%;height:auto;display:block}.rf-header-back{position:absolute;left:16px;top:14px;color:#092637;display:flex;align-items:center;width:28px;height:28px}}
@media(min-width:768px){.rf-header-back{display:none}}
@media(max-width:767px){#header.header--referral{min-height:56px;background:#fff;border-bottom:1px solid #eee}#header.header--referral .top{height:56px}}
@media(max-width:767px){.rf-page .rf-visual{height:clamp(175px,46vw,245px)}.rf-page .rf-welcome-hero h1{font-size:clamp(34px,8.5vw,46px)}.rf-page .rf-lead{font-size:17px}.rf-page .rf-benefits li{font-size:16px;padding:13px 0}}
.rf-page{max-width:540px;margin:0 auto;padding:30px 22px 50px;color:#092637;background:#fff;font-family:inherit;box-sizing:border-box}.rf-page *{box-sizing:border-box}.rf-eyebrow{font-size:15px;font-weight:700;margin-bottom:14px}.rf-page h1{font-size:clamp(30px,7.8vw,43px);font-weight:800;line-height:1.22;letter-spacing:-1.5px;margin:0 0 20px}.rf-page h1 strong{display:inline-block;color:#ff6b1a;font-size:clamp(36px,9vw,52px);margin-top:12px}.rf-lead{font-size:19px;color:#686868;line-height:1.65;margin:16px 0 24px}.rf-visual{height:245px;overflow:hidden;border-radius:20px 20px 0 0;background:#ece5dc}.rf-visual img{height:100%;width:100%;object-fit:cover;object-position:82% center}.rf-benefits{list-style:none;padding:12px 20px;margin:0 0 24px;border-radius:0 0 20px 20px;background:#f4f5f6}.rf-benefits li{display:flex;align-items:center;gap:15px;padding:16px 0;font-size:17px;font-weight:700;border-bottom:1px solid #e5e5e5}.rf-benefits li:last-child{border:0}.rf-benefits b{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:#fff;color:#ff7900;font-size:26px}.rf-button{display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:13px;background:#123a49;color:#fff;font-weight:700;font-size:19px;text-align:center;min-height:60px;width:100%;padding:15px;text-decoration:none;cursor:pointer;margin:16px 0}.rf-button:disabled{opacity:.6;cursor:wait}.rf-kakao{background:#fee500;color:#171b1e}.rf-secondary{background:#f0f3f5;color:#123a49}.rf-note{font-size:13px;color:#858585;line-height:1.65;text-align:center;margin:12px 0}.rf-notice{font-size:15px;color:#a74312;line-height:1.6;white-space:pre-line}.rf-links{display:flex;justify-content:center;gap:28px;margin:22px 0}.rf-page details{border-top:1px solid #e7e7e7;padding:18px 0;font-size:14px;line-height:1.8}.rf-page summary{cursor:pointer;font-weight:700}.rf-page details p{margin:12px 0}.rf-welcome-hero{position:relative;overflow:hidden;min-height:390px;padding:15px 0 180px}.rf-welcome-hero img{position:absolute;inset:auto -22px 0;width:calc(100% + 44px);height:205px;object-fit:cover;object-position:85% center}.rf-welcome-hero h1{font-size:46px}.rf-coupon{position:relative;background:#fff1e8;border-radius:15px;padding:23px;margin:18px 0;font-size:21px;font-weight:700;line-height:1.5}.rf-coupon strong{color:#ff6b1a;font-size:38px}.rf-coupon span{position:absolute;right:20px;top:25px;background:#ff7900;color:#fff;padding:0 16px;font-size:40px;border-radius:9px;transform:rotate(12deg)}.rf-brand{text-align:center;border-top:1px solid #e7e7e7;padding:25px 0 0;margin-top:25px}.rf-brand h2{font-size:26px;font-weight:800;margin:10px 0 20px}.rf-brand ul{display:flex;list-style:none;padding:0;gap:12px}.rf-brand li{flex:1;font-size:13px;line-height:1.7}.rf-brand b{display:block;font-size:30px;background:#f4f5f6;border-radius:50%;width:55px;margin:0 auto 10px}.rf-form label{display:block;margin:18px 0;font-weight:700}.rf-form input{display:block;width:100%;padding:15px;border:1px solid #cdd4d8;border-radius:9px;margin-top:8px;font-size:18px;color:#092637;background:#fff}.rf-small{display:block;margin:20px 0;text-align:center;text-decoration:underline;font-size:14px}.rf-page .rf-coupon p{font-size:15px;font-weight:400}.rf-page :focus-visible{outline:3px solid #ff7900;outline-offset:3px}@media(min-width:768px){.rf-page{margin:30px auto 70px;border:1px solid #eee;border-radius:22px;padding:35px;box-shadow:0 12px 45px #123a4908}}

/* 적립금 양도: 확인된 수신자 이름을 큰 글씨와 구분된 카드로 표시한다. */
/* 친구초대 시안: 큰 혜택 문구와 남성 친구 이미지, 겹쳐진 혜택 카드, 카카오 CTA. 다른 화면은 유지한다. */
.rf-page.rf-invite{padding:0 0 36px;overflow:hidden}
.rf-invite-title{text-align:center;font-size:18px;font-weight:700;line-height:1.5;padding:15px 20px;border-bottom:1px solid #e8ebed}
.rf-invite-body{padding:30px 20px 0}
.rf-invite h1{font-size:clamp(25px,6.7vw,38px);line-height:1.25;letter-spacing:-1.5px;margin:0}
.rf-invite h1 strong{font-size:clamp(37px,10.5vw,57px);color:#ff6b1a;line-height:1.15;letter-spacing:-2px;margin-top:6px;white-space:nowrap}
.rf-invite .rf-lead{font-size:clamp(16px,4.2vw,22px);line-height:1.5;margin:14px 0 0;color:#555}
.rf-invite .rf-visual{height:auto;aspect-ratio:3/2;margin:0 -6px;background:#fff;border-radius:0;overflow:hidden}
.rf-invite .rf-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
.rf-invite .rf-benefits{position:relative;margin:-14px 0 20px;padding:9px 18px;border-radius:18px;background:#f4f4f5}
.rf-invite .rf-benefits li{padding:13px 0;gap:14px;font-size:clamp(14px,3.9vw,19px);font-weight:700;line-height:1.5;border:0;position:relative}
.rf-invite .rf-benefits li+li:before{content:"";position:absolute;top:0;left:64px;right:0;height:1px;background:#e4e5e7}
.rf-invite .rf-benefits b{flex:0 0 48px;width:48px;height:48px;background:#fff;color:#ff7900;border-radius:50%}
.rf-invite .rf-benefits svg{width:29px;height:29px}
.rf-invite .rf-button.rf-kakao,.rf-invite a.rf-button.rf-kakao:link,.rf-invite a.rf-button.rf-kakao:visited{background:#fee500;color:#171b1e;font-size:clamp(17px,4.5vw,22px);min-height:64px;margin:0;border-radius:14px;gap:12px}
.rf-talk{display:inline-flex;position:relative;align-items:center;justify-content:center;width:36px;height:32px;flex:0 0 36px;border-radius:50%;background:#38251c;color:#fee500;font-size:10px;font-weight:800;letter-spacing:-.4px}
.rf-talk:after{content:"";position:absolute;left:7px;bottom:-4px;border-top:8px solid #38251c;border-right:7px solid transparent;transform:rotate(10deg)}
.rf-invite .rf-note{margin:10px 0 24px;font-size:13px}
.rf-invite #rf-message:empty{display:none}
@media(max-width:359px){.rf-invite-body{padding:26px 16px 0}.rf-invite .rf-benefits{padding:8px 13px}.rf-invite .rf-benefits li{gap:10px}.rf-invite h1 strong{letter-spacing:-1.8px}}
/* 환영페이지: 사진은 오른쪽, 문구는 왼쪽. 쿠폰/CTA 이후 이벤트 460 본문을 원래 순서로 표시한다. */
.rf-page.rf-welcome{padding:0 0 40px;overflow:hidden}
.rf-welcome .rf-welcome-hero{min-height:0;aspect-ratio:1/1;position:relative;padding:0}
.rf-welcome .rf-welcome-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.rf-welcome-copy{position:relative;z-index:1;padding:50px 22px 0;width:62%}
.rf-welcome .rf-eyebrow{font-size:clamp(20px,5vw,29px);margin:0 0 12px}
.rf-welcome .rf-welcome-hero h1{font-size:clamp(32px,7.8vw,46px);line-height:1.2;margin:0 0 20px;letter-spacing:-1.8px}
.rf-welcome .rf-lead{font-size:clamp(15px,3.9vw,21px);line-height:1.45;margin:0;color:#777}
.rf-welcome-offer{padding:0 20px 22px}
.rf-welcome .rf-coupon{font-size:clamp(18px,4.5vw,24px);padding:20px 24px;margin:10px 0 14px;line-height:1.35}
.rf-welcome .rf-coupon strong{font-size:clamp(34px,8.5vw,48px)}
.rf-welcome .rf-coupon span{right:20px;top:32px;font-size:34px}
.rf-welcome .rf-coupon{padding-right:86px}
/* 전역 a:link/visited 색상 상속보다 우선하며 카카오/보조 버튼은 기존 전용 색상을 유지한다. */
.rf-page a.rf-button:not(.rf-kakao):not(.rf-secondary),
.rf-page a.rf-button:not(.rf-kakao):not(.rf-secondary):link,
.rf-page a.rf-button:not(.rf-kakao):not(.rf-secondary):visited,
.rf-page a.rf-button:not(.rf-kakao):not(.rf-secondary):hover,
.rf-page a.rf-button:not(.rf-kakao):not(.rf-secondary):active{color:#fff}
.rf-welcome .rf-button{margin:0 0 12px;font-size:clamp(18px,4.5vw,24px);min-height:58px;background:#123a49}
.rf-welcome-content{border-top:1px solid #e7e7e7;padding-top:20px;overflow-wrap:anywhere}
.rf-welcome .rf-welcome-content img{max-width:100%;height:auto;vertical-align:top}
.rf-welcome .rf-welcome-content iframe,.rf-welcome .rf-welcome-content video{max-width:100%}
@media(max-width:359px){.rf-welcome-copy{padding-top:30px;padding-left:18px}.rf-welcome .rf-coupon{padding-left:18px;padding-right:66px}.rf-welcome .rf-coupon span{right:12px;font-size:28px}}
.rf-page .rf-recipient-card[hidden]{display:none}
.rf-page .rf-recipient-card{margin:18px 0 24px;padding:20px;border:1px solid #c6dfd8;border-radius:14px;background:#f1f8f5}
.rf-recipient-card__label{display:block;font-size:14px;font-weight:700;color:#26705d;line-height:1.5}
.rf-page .rf-recipient-card strong{display:block;margin:9px 0 7px;font-size:26px;font-weight:800;color:#123a49;line-height:1.4;overflow-wrap:anywhere}
.rf-page .rf-recipient-card p{margin:0;font-size:14px;color:#5b716a;line-height:1.6}
