/* Hive sub-page (procedure) template CSS ported from the previous Amorata site */

/* =============================================
   로컬 변수 + 초기화
============================================= */
:root {
    --sp-bg:    #ffffff;
    --sp-bg2:   #f9f6f3;
    --sp-bg3:   #f4ede8;
    --sp-gold:  #1E1C2E;
    --sp-gold2: #16141e;
    --sp-btn-primary: #1E1C2E;
    --sp-text:  #333333;
    --sp-muted: #333333;
    --ink: var(--sp-text); --ink-mute: var(--sp-muted); /* 레거시(guide.css) 텍스트색을 글로벌 기본색에 연결 */
    --sp-title-weight: 500;    --sp-body-weight: 500;    --sp-anim-dur: 1650ms;    --sp-anim-dist: 72px;    --sp-muted2:rgba(160,106,63,.3);
    --sp-line:  rgba(160,106,63,.1);
        --sp-t-sm:      clamp(16px,1.5vw,18px);
    --sp-t-body:    clamp(15px,1.42vw,17px);
    --sp-t-sub:     clamp(17px,1.67vw,20px);
    --sp-t-hd:      clamp(23px,2.5vw,30px);
                            --sp-pt01-c-body:  #433d3d;                    --sp-hero-min-h:55vh;
    --sp-hero-cols-order:flip;
    --sp-hero-img-h:470px;
    --sp-hero-img-move-x:-25px;
    --sp-hero-img-move-y:225px;
    --sp-hero-text-mw-mo:200px;
    --sp-hero-img-mw:770px;
    --sp-hero-h-align:left;
    --sp-hero-h-align-flex:flex-start;
    --sp-hero-h-align-justify:start;
    --sp-hero-v-align:flex-end;
    --sp-hero-en-mb:20px;
    --sp-hero-ko-mb:5px;
    --sp-hero-sec-bg:#f0ede5;
    --sp-hero-img-ratio:4/3;
    --sp-hero-tx-ml:70px;
    --sp-hero-tx-ml-mo:10px;
    --sp-hero-tx-mt:60px;
    --sp-hero-tx-mt-mo:70px;
    --sp-hero-bg-pos:center bottom;
    --sp-hero-bg-video-gray:100%;
    --sp-hero-bg-video-opacity:20%;
    --sp-hero-bg-bottom-grad-color:#f0ede5;
    --sp-hero-bg-bottom-grad:linear-gradient(to top,var(--sp-hero-bg-bottom-grad-color,#fff) 0%,var(--sp-hero-bg-bottom-grad-color,#fff) 12%,transparent 72%);
    --sp-hero-img-x:-6%;
    --sp-hero-img-y:35%;
    --sp-hero-anim:blur;
    --sp-hero-img-radius:60px;
    --sp-hero-h-align-mo:left;
    --sp-hero-h-align-mo-flex:flex-start;
    --sp-hero-h-align-mo-justify:start;
    --sp-hero-v-align-mo:flex-end;
    --sp-s3-pad-y:70px;
    --sp-pt02-cols-tmpl:1fr 1fr;
    --sp-pt02-gap:20px;
    --sp-pt02-mw:1200px;
    --sp-pt02-radius:14px;
    --sp-pt02-img-radius:20px;
    --sp-pt03-box-rad:16px;
    --sp-pt03-ico-bg:#695454;
    --sp-pt03-ico-radius:34px;
    --sp-pt03-ico-color:#ffffff;
    --sp-pt03-card-bg:#311c1c;
    --sp-pt03-box-rad:16px;
    --sp-pt05-ratio:2fr 3fr;
    --sp-pt05-img-ratio:1/1;
    --sp-pt05-img-radius:25px;
    --sp-pt06-gap:10px;
    --sp-pt06-ico-size:30px;
    --sp-pt06-ico-radius:9px;
    --sp-pt06-ico-color:#2e1f1f;
    --sp-pt06-radius:14px;
    --sp-pt07-cols-tmpl:1fr 1fr;
    --sp-pt07-gap:10px;
    --sp-pt07-radius:16px;
    --sp-related-noimg-style:review;
    --sp-related-card-eyebrow-off:none;
    --sp-related-gap:15px;
    --sp-related-radius:17px;
    --sp-pt01-ratio:3fr 2fr;
    --sp-pt01-img-radius:20px;
    --sp-doctor-img-ratio:1/1;
    --sp-doctor-img-radius:20px;
    --sp-ba-mw:40%;
    --sp-hero-t-etxt:clamp(13px,1.25vw,15px);
    --sp-hero-d-etxt:none;
    --sp-hero-t-en:clamp(29px,3.75vw,45px);
    --sp-hero-c-en:#4e311d;
    --sp-hero-w-en:700;
    --sp-hero-c-desc:#514d4d;
    --sp-s3-t-eyebrow:clamp(15px,1.42vw,17px);
    --sp-pt02-t-badge_num:clamp(13px,1.17vw,14px);
    --sp-pt02-c-badge_num:#ffffff;
    --sp-pt02-a-badge_num:center;
    --sp-pt02-x-badge_num-bg:#3e3232;
    --sp-pt02-x-badge_num-padx:10px;
    --sp-pt02-x-badge_num-pady:10px;
    --sp-pt02-x-badge_num-rad:7px;
    --sp-pt02-w-ctitle:500;
    --sp-pt02-c-cdesc:#4b4949;
    --sp-pt03-t-badge_num:clamp(13px,1.17vw,14px);
    --sp-pt03-c-badge_num:#ffffff;
    --sp-pt03-d-badge_num:none;
    --sp-pt03-x-badge_num-bg:#3e3232;
    --sp-pt03-x-badge_num-padx:10px;
    --sp-pt03-x-badge_num-pady:10px;
    --sp-pt03-x-badge_num-rad:7px;
    --sp-pt03-d-badge_txt:none;
    --sp-pt03-c-lbl:#fff2e0;
    --sp-pt03-c-val:#ffffff;
    --sp-pt04-t-badge_num:clamp(13px,1.17vw,14px);
    --sp-pt04-c-badge_num:#ffffff;
    --sp-pt04-x-badge_num-bg:#3e3232;
    --sp-pt04-x-badge_num-padx:10px;
    --sp-pt04-x-badge_num-pady:10px;
    --sp-pt04-x-badge_num-rad:7px;
    --sp-pt05-t-badge_num:clamp(13px,1.17vw,14px);
    --sp-pt05-c-badge_num:#ffffff;
    --sp-pt05-d-badge_num:none;
    --sp-pt05-x-badge_num-bg:#3e3232;
    --sp-pt05-x-badge_num-padx:10px;
    --sp-pt05-x-badge_num-pady:10px;
    --sp-pt05-x-badge_num-rad:7px;
    --sp-pt05-d-badge_txt:none;
    --sp-pt05-c-inum:#785117;
    --sp-pt06-t-badge_num:clamp(13px,1.17vw,14px);
    --sp-pt06-c-badge_num:#ffffff;
    --sp-pt06-d-badge_num:none;
    --sp-pt06-x-badge_num-bg:#3e3232;
    --sp-pt06-x-badge_num-padx:10px;
    --sp-pt06-x-badge_num-pady:10px;
    --sp-pt06-x-badge_num-rad:7px;
    --sp-pt06-d-badge_txt:none;
    --sp-pt06-c-txt:#655d5d;
    --sp-pt07-t-badge_num:clamp(13px,1.17vw,14px);
    --sp-pt07-c-badge_num:#ffffff;
    --sp-pt07-x-badge_num-bg:#3e3232;
    --sp-pt07-x-badge_num-padx:10px;
    --sp-pt07-x-badge_num-pady:10px;
    --sp-pt07-x-badge_num-rad:7px;
    --sp-pt07-c-body:#575252;
    --sp-faq-d-eyebrow:none;
    --sp-faq-w-q:600;
    --sp-faq-c-qnum:#ab782b;
    --sp-related-c-desc:#5e5555;
    --sp-pt01-t-badge_num:clamp(13px,1.17vw,14px);
    --sp-pt01-c-badge_num:#ffffff;
    --sp-pt01-x-badge_num-bg:#3e3232;
    --sp-pt01-x-badge_num-padx:10px;
    --sp-pt01-x-badge_num-pady:10px;
    --sp-pt01-x-badge_num-rad:7px;
    --sp-doctor-t-eyebrow:clamp(23px,2.5vw,30px);
    --sp-doctor-c-eyebrow:#482d05;
    --sp-ba-d-eyebrow:none;
        --sp-mw:        1480px;
    --v2-pad-y:     80px;
    
}
.sp-pt05:not([data-sty-ext]){padding-top:var(--sp-pt05-pt0,var(--sp-pt05-pad-y,100px))!important;padding-bottom:var(--sp-pt05-pb0,var(--sp-pt05-pad-y,100px))!important}
@media(max-width:768px){.sp-pt05:not([data-sty-ext]){padding-top:var(--sp-pt05-pt0,var(--sp-pt05-pad-y-mo,var(--sp-pt05-pad-y,100px)))!important;padding-bottom:var(--sp-pt05-pb0,var(--sp-pt05-pad-y-mo,var(--sp-pt05-pad-y,100px)))!important}}
.sp-pt06:not([data-sty-ext]){padding-top:var(--sp-pt06-pt0,var(--sp-pt06-pad-y,100px))!important;padding-bottom:var(--sp-pt06-pb0,var(--sp-pt06-pad-y,100px))!important}
@media(max-width:768px){.sp-pt06:not([data-sty-ext]){padding-top:var(--sp-pt06-pt0,var(--sp-pt06-pad-y-mo,var(--sp-pt06-pad-y,100px)))!important;padding-bottom:var(--sp-pt06-pb0,var(--sp-pt06-pad-y-mo,var(--sp-pt06-pad-y,100px)))!important}}
.sp-faq:not([data-sty-ext]){padding-top:var(--sp-faq-pt0,var(--sp-faq-pad-y,100px))!important;padding-bottom:var(--sp-faq-pb0,var(--sp-faq-pad-y,100px))!important}
@media(max-width:768px){.sp-faq:not([data-sty-ext]){padding-top:var(--sp-faq-pt0,var(--sp-faq-pad-y-mo,var(--sp-faq-pad-y,100px)))!important;padding-bottom:var(--sp-faq-pb0,var(--sp-faq-pad-y-mo,var(--sp-faq-pad-y,100px)))!important}}
.sp-related:not([data-sty-ext]){padding-top:var(--sp-related-pt0,var(--sp-related-pad-y,100px))!important;padding-bottom:var(--sp-related-pb0,var(--sp-related-pad-y,100px))!important}
@media(max-width:768px){.sp-related:not([data-sty-ext]){padding-top:var(--sp-related-pt0,var(--sp-related-pad-y-mo,var(--sp-related-pad-y,100px)))!important;padding-bottom:var(--sp-related-pb0,var(--sp-related-pad-y-mo,var(--sp-related-pad-y,100px)))!important}}
.sp-pt01:not([data-sty-ext]){padding-top:var(--sp-pt01-pt0,var(--sp-pt01-pad-y,100px))!important;padding-bottom:var(--sp-pt01-pb0,var(--sp-pt01-pad-y,100px))!important}
@media(max-width:768px){.sp-pt01:not([data-sty-ext]){padding-top:var(--sp-pt01-pt0,var(--sp-pt01-pad-y-mo,var(--sp-pt01-pad-y,100px)))!important;padding-bottom:var(--sp-pt01-pb0,var(--sp-pt01-pad-y-mo,var(--sp-pt01-pad-y,100px)))!important}}
.sp-doctor:not([data-sty-ext]){padding-top:var(--sp-doctor-pt0,var(--sp-doctor-pad-y,120px))!important;padding-bottom:var(--sp-doctor-pb0,var(--sp-doctor-pad-y,120px))!important}
@media(max-width:768px){.sp-doctor:not([data-sty-ext]){padding-top:var(--sp-doctor-pt0,var(--sp-doctor-pad-y-mo,var(--sp-doctor-pad-y,120px)))!important;padding-bottom:var(--sp-doctor-pb0,var(--sp-doctor-pad-y-mo,var(--sp-doctor-pad-y,120px)))!important}}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
img,video{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer;border:none;background:none}
.sp-eng{font-family:var(--font-eng);font-weight:400}
.sp-b{width:92%;max-width:var(--sp-mw,1200px);margin:0 auto}
/* per-ext sty 의 mw 가 set 되면 해당 섹션의 .sp-b 폭 오버라이드 */
[data-sty-ext] > .sp-b{max-width:var(--sty-mw,var(--sp-mw,1200px))}
/* 상/하 패딩 개별 지정 — 설정된 섹션만 덮어씀(미설정 섹션은 기존 기본값 유지), 모바일은 자동 70% */
[data-sty-ext][style*="--sty-pad-top"]{padding-top:var(--sty-pad-top)!important}
[data-sty-ext][style*="--sty-pad-bottom"]{padding-bottom:var(--sty-pad-bottom)!important}
@media (max-width:768px){
[data-sty-ext][style*="--sty-pad-top"]{padding-top:calc(var(--sty-pad-top) * .7)!important}
[data-sty-ext][style*="--sty-pad-bottom"]{padding-bottom:calc(var(--sty-pad-bottom) * .7)!important}
}
/* 제목 위/아래 여백 — 값 지정 시에만 적용(처음/끝 빈줄 대용, contenteditable 영향 없음) */
[data-sty-ext][style*="--sp-title-mt"] .sp-sec-title,[data-sty-ext][style*="--sp-title-mt"] .sp-ext-bnr-title,[data-sty-ext][style*="--sp-title-mt"] .sp-ext-bnrm-title{margin-top:var(--sp-title-mt)!important}
[data-sty-ext][style*="--sp-title-mb"] .sp-sec-title,[data-sty-ext][style*="--sp-title-mb"] .sp-ext-bnr-title,[data-sty-ext][style*="--sp-title-mb"] .sp-ext-bnrm-title{margin-bottom:var(--sp-title-mb)!important}
[data-sty-ext][style*="--sp-subt-mt"] .sp-ext-crd-subtitle,[data-sty-ext][style*="--sp-subt-mt"] .sp-ext-bnr-sub,[data-sty-ext][style*="--sp-subt-mt"] .sp-ext-bnrm-sub{margin-top:var(--sp-subt-mt)!important}
[data-sty-ext][style*="--sp-subt-mb"] .sp-ext-crd-subtitle,[data-sty-ext][style*="--sp-subt-mb"] .sp-ext-bnr-sub,[data-sty-ext][style*="--sp-subt-mb"] .sp-ext-bnrm-sub{margin-bottom:var(--sp-subt-mb)!important}
[data-sty-ext][style*="--sp-subheading-mt"] .sp-ext-crd-subheading{margin-top:var(--sp-subheading-mt)!important}
[data-sty-ext][style*="--sp-subheading-mb"] .sp-ext-crd-subheading{margin-bottom:var(--sp-subheading-mb)!important}
[data-sty-ext][style*="--sp-desc-mt"] .sp-ext-crd-desc{margin-top:var(--sp-desc-mt)!important}
[data-sty-ext][style*="--sp-desc-mb"] .sp-ext-crd-desc{margin-bottom:var(--sp-desc-mb)!important}
[data-sty-ext][style*="--sp-cards-gap"] .sp-ext-crd-grid,[data-sty-ext][style*="--sp-cards-gap"] .sp-ext-crd-slider{margin-top:var(--sp-cards-gap)!important}
@media(max-width:768px){[data-sty-ext][style*="--sp-cards-gap-mo"] .sp-ext-crd-grid,[data-sty-ext][style*="--sp-cards-gap-mo"] .sp-ext-crd-slider{margin-top:var(--sp-cards-gap-mo)!important}}

/* per-ext 텍스트 오버라이드 — sty 변수 set 시 적용, 미설정 시 각 섹션 기본값 유지(revert) */
[data-sty-ext] .sp-sec-title,
[data-sty-ext] .sp-pt01-title,
[data-sty-ext] .sp-pt05-title,
[data-sty-ext] .sp-pt06-title,
[data-sty-ext] .sp-pt07-title,
[data-sty-ext] .sp-ext-bnr-title,
[data-sty-ext] .sp-ext-bnrm-title{
    font-size:var(--sp-t-hd);
    color:var(--sty-c-title,inherit);
    font-weight:var(--sty-w-title,inherit)
}
[data-sty-ext] .sp-pt-badge-txt,
[data-sty-ext] .sp-sec-lbl,
[data-sty-ext] .sp-ext-bnr-tag,
[data-sty-ext] .sp-ext-bnrm-eyebrow{
    font-size:var(--sty-t-eyebrow,var(--sp-t-sm));
    color:var(--sty-c-eyebrow,inherit)
}
[data-sty-ext] .sp-pt01-body p,
[data-sty-ext] .sp-pt05-list,
[data-sty-ext] .sp-pt06-item,
[data-sty-ext] .sp-pt07-step,
[data-sty-ext] .sp-ext-bnr-sub,
[data-sty-ext] .sp-ext-bnrm-sub{
    font-size:var(--sty-t-sub,var(--sp-t-body));
    color:var(--sty-c-sub,inherit)
}
[data-sty-ext] .sp-ext-bnr-desc,
[data-sty-ext] .sp-ext-bnrm-desc{
    font-size:var(--sty-t-desc,var(--sp-t-sm));
    color:var(--sty-c-desc,inherit)
}
/* ext pt01(텍스트+이미지형) 본문 줄바꿈 보존 — PHP·JS 일관(pre-line). 빌트인 pt01 은 data-sty-ext 없어 영향 없음 */
/* + 정렬 독립: ext pt01 제목/본문은 빌트인 시술법의 --sp-pt01-a-* 를 상속하지 않고 자체 '가로 정렬'(섹션 text-align)만 따른다 */
[data-sty-ext] .sp-pt01-title,[data-sty-ext] .sp-pt01-body p{white-space:pre-line;text-align:inherit}
/* 카드형은 실제 <br> 노드로 개행을 통일한다.
   pre-line을 함께 쓰면 nl2br의 <br> 뒤 개행 문자까지 계산돼 PC에서 한 줄씩 과도하게 벌어진다. */
[data-sty-ext] .sp-ext-crd-desc,[data-sty-ext] .sp-ext-crd-title,[data-sty-ext] .sp-ext-crd-sub,[data-sty-ext] .sp-ext-crd-body{white-space:normal}
/* 모바일에서는 PC용 일반 헤더와 카드 내부의 강제 개행을 풀고 화면 폭에 맞춰 자동 줄바꿈한다. */
@media (max-width:768px){
    [data-sty-ext] .sp-pt01-title,[data-sty-ext] .sp-pt01-body p,
    [data-sty-ext] .sp-pt06-cd,
    .sp-ext-bnrm-eyebrow,.sp-ext-bnrm-title,.sp-ext-bnrm-sub,.sp-ext-bnrm-desc,
    .sp-ext-bnrm-gtitle,.sp-ext-bnrm-gdesc{white-space:pre-line}
    [data-sty-ext] .sp-sec-title,[data-sty-ext] .sp-ext-crd-eyebrow,
    [data-sty-ext] .sp-ext-crd-subtitle,[data-sty-ext] .sp-ext-crd-subheading,
    [data-sty-ext] .sp-ext-crd-desc,[data-sty-ext] .sp-ext-crd-title,
    [data-sty-ext] .sp-ext-crd-sub,[data-sty-ext] .sp-ext-crd-body,
    [data-sty-ext] .sp-ext-crd-point-title,[data-sty-ext] .sp-ext-crd-point-desc,
    [data-sty-ext] .sp-ext-crd-bottom-title,[data-sty-ext] .sp-ext-crd-bottom-subtitle,
    [data-sty-ext] .sp-ext-crd-bottom-text{white-space:normal}
    [data-sty-ext] .sp-sec-title br:not(.sp-br-keep),[data-sty-ext] .sp-ext-crd-eyebrow br:not(.sp-br-keep),
    [data-sty-ext] .sp-ext-crd-subtitle br:not(.sp-br-keep),[data-sty-ext] .sp-ext-crd-subheading br:not(.sp-br-keep),
    [data-sty-ext] .sp-ext-crd-desc br:not(.sp-br-keep),[data-sty-ext] .sp-ext-crd-title br:not(.sp-br-keep),
    [data-sty-ext] .sp-ext-crd-sub br:not(.sp-br-keep),[data-sty-ext] .sp-ext-crd-body br:not(.sp-br-keep),
    [data-sty-ext] .sp-ext-crd-point-title br:not(.sp-br-keep),[data-sty-ext] .sp-ext-crd-point-desc br:not(.sp-br-keep),
    [data-sty-ext] .sp-ext-crd-bottom-title br:not(.sp-br-keep),[data-sty-ext] .sp-ext-crd-bottom-subtitle br:not(.sp-br-keep),
    [data-sty-ext] .sp-ext-crd-bottom-text br:not(.sp-br-keep){display:none}
    [data-sty-ext] br.sp-br-keep{display:initial}
    /* 드래그 ↔ 강제 유지(sp-nowrap)로 지정한 구간은 모바일 자동 BR 해제에서 제외한다. */
    [data-sty-ext] .sp-nowrap{white-space:nowrap}
    [data-sty-ext] .sp-nowrap br{display:initial}
}
/* overflow-x:clip : hidden 은 body 를 스크롤 컨테이너로 만들어 내부 position:sticky 를 깨뜨림.
   clip 은 가로 풀블리드 클리핑은 동일하게 막으면서 sticky(스크롤 단계 등)는 정상 동작 (Chrome90+/FF81+/Safari16+) */
body{font-family:var(--font-pret);background:var(--sp-page-bg,var(--sp-bg));color:var(--sp-text);overflow-x:clip;word-break:keep-all;overflow-wrap:break-word;line-break:strict}
/* 한글 어절 단위 줄바꿈 — 테마 default.css 의 p{word-break:break-all} 무력화 */
body p,body h1,body h2,body h3,body h4,body h5,body h6,body li,body dd,body dt,body td,body th,body span,body a,body label,body button{word-break:keep-all;overflow-wrap:break-word;line-break:strict}
.sp-skip-main{position:fixed;left:12px;top:8px;z-index:100000;padding:10px 16px;border-radius:6px;background:#111;color:#fff;text-decoration:none;font-size:14px;transform:translateY(-160%);transition:transform .18s}.sp-skip-main:focus,.sp-skip-main:focus-visible{transform:translateY(0);outline:3px solid #fff;outline-offset:2px}

/* 모바일 오버레이 헤더(fixed/absolute)는 문서 흐름의 높이를 차지하지 않으므로
   JS에서 측정한 실제 헤더 높이만큼 본문 시작 공간을 확보한다. */
@media(max-width:900px){
  html.sp-mobile-header-overlay #sp-sections{padding-top:var(--sp-mobile-header-gap,0px)}
}

/* 오프스크린 섹션 렌더 스킵 — 첫 페인트의 Style&Layout 비용(거대 DOM 일괄 레이아웃 ~900ms)을
   화면에 보일 때로 미룸. 히어로(100vh)가 첫 화면을 덮으므로 아래 섹션들은 스크롤 접근 시 렌더.
   contain-intrinsic-size 로 자리(추정 높이)를 예약해 스크롤바 점프(CLS) 방지.
   편집 모드는 제외 — 인라인 편집·측정 로직이 전체 렌더를 전제로 함. */
body:not(.sp-edit) #sp-sections > section:not(.hero):not(.sp-hero){content-visibility:auto;contain-intrinsic-size:auto 760px}


/* 공통 섹션 헤더 */
.sp-sec-lbl{font-size:var(--sp-t-sm);color:var(--sp-gold);margin-bottom:14px;font-family:var(--font-eng)}
/* 연관/FAQ/블로그 영문 라벨 — 스타일 팝오버 '영문 라벨' 표시 토글로 끄기 가능(숨김 시 영역까지 제거) */
.sp-related .sp-sec-lbl{display:var(--sp-related-d-eyebrow,block);font-size:var(--sp-related-t-eyebrow,var(--sp-t-sm));font-weight:var(--sp-related-w-eyebrow,400);color:var(--sp-related-c-eyebrow,var(--sp-gold))}
.sp-faq .sp-sec-lbl{display:var(--sp-faq-d-eyebrow,block);font-size:var(--sp-faq-t-eyebrow,var(--sp-t-sm));font-weight:var(--sp-faq-w-eyebrow,400);color:var(--sp-faq-c-eyebrow,var(--sp-gold))}
.sp-sec-title{font-size:var(--sty-t-title,var(--sp-t-hd));font-weight:400;letter-spacing:-.02em}
.sp-pt01:not([data-sty-ext]) .sp-pt-badge-num{font-size:var(--sp-pt01-t-badge_num,var(--sp-t-body));font-weight:var(--sp-pt01-w-badge_num,300);color:var(--sp-pt01-c-badge_num,var(--sp-gold))}
.sp-pt01:not([data-sty-ext]) .sp-pt-badge-txt{font-size:var(--sp-pt01-t-badge_txt,var(--sp-t-sm));font-weight:var(--sp-pt01-w-badge_txt,400);color:var(--sp-pt01-c-badge_txt,var(--sp-muted2))}
.sp-pt05:not([data-sty-ext]) .sp-pt-badge-num{font-size:var(--sp-pt05-t-badge_num,var(--sp-t-body));font-weight:var(--sp-pt05-w-badge_num,300);color:var(--sp-pt05-c-badge_num,var(--sp-gold))}
.sp-pt05:not([data-sty-ext]) .sp-pt-badge-txt{font-size:var(--sp-pt05-t-badge_txt,var(--sp-t-sm));font-weight:var(--sp-pt05-w-badge_txt,400);color:var(--sp-pt05-c-badge_txt,var(--sp-muted2))}
.sp-pt06:not([data-sty-ext]) .sp-pt-badge-num{font-size:var(--sp-pt06-t-badge_num,var(--sp-t-body));font-weight:var(--sp-pt06-w-badge_num,300);color:var(--sp-pt06-c-badge_num,var(--sp-gold))}
.sp-pt06:not([data-sty-ext]) .sp-pt-badge-txt{font-size:var(--sp-pt06-t-badge_txt,var(--sp-t-sm));font-weight:var(--sp-pt06-w-badge_txt,400);color:var(--sp-pt06-c-badge_txt,var(--sp-muted2))}
.sp-pt05 .sp-sec-title{font-size:var(--sp-pt05-t-sec_title,var(--sp-t-hd));font-weight:var(--sp-pt05-w-sec_title,400);color:var(--sp-pt05-c-sec_title,inherit)}
.sp-pt06 .sp-sec-title{font-size:var(--sp-pt06-t-sec_title,var(--sp-t-hd));font-weight:var(--sp-pt06-w-sec_title,400);color:var(--sp-pt06-c-sec_title,inherit)}
.sp-faq .sp-sec-title{font-size:var(--sp-faq-t-sec_title,var(--sp-t-hd));font-weight:var(--sp-faq-w-sec_title,600);color:var(--sp-faq-c-sec_title,inherit)}
.sp-related .sp-sec-title{font-size:var(--sp-related-t-sec_title,var(--sp-t-hd));font-weight:var(--sp-related-w-sec_title,400);color:var(--sp-related-c-sec_title,inherit)}
.sp-ext-ba .sp-sec-title{font-size:var(--sp-ba-t-sec_title,var(--sp-t-hd));font-weight:var(--sp-ba-w-sec_title,400);color:var(--sp-ba-c-sec_title,inherit)}
.sp-ext-ba .sp-sec-lbl{font-size:var(--sp-ba-t-eyebrow,var(--sp-t-sm));font-weight:var(--sp-ba-w-eyebrow,400);color:var(--sp-ba-c-eyebrow,var(--sp-gold))}
section.ba-section{background:var(--sp-ba-sec-bg,var(--bg));padding:calc(var(--v2-pad-y,80px) * .5) 0}
.ba-section .sec-eyebrow{font-size:var(--sp-ba-t-eyebrow,var(--sp-t-sm))!important;font-weight:var(--sp-ba-w-eyebrow,400);color:var(--sp-ba-c-eyebrow,var(--sp-gold))}
.ba-section .sec-head h2{font-size:var(--sp-ba-t-sec_title,var(--sp-t-hd))!important;font-weight:var(--sp-ba-w-sec_title,400);color:var(--sp-ba-c-sec_title,inherit)}
.ba-section .hive_b{width:var(--sp-ba-mw,95%)!important;max-width:var(--sp-ba-mw,1320px)!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:900px){.ba-section .hive_b{width:95%!important;max-width:95%!important}}
.ba-section .bafs,.ba-section .bafb{max-width:100%!important}
.ba-section .sec-head,.ba-section .bafs-filterwrap,.ba-section .bafb-filterwrap,.ba-section .bafs-disclaimer,.ba-section .ba-case-wrap{max-width:var(--sp-mw,1320px)!important;margin-left:auto!important;margin-right:auto!important}
section.method .method-name,section.method .method-name>span:not(.method-name-ko){font-size:var(--sp-t-hd)!important}
.yt-featured .yt-featured-title{font-size:clamp(16px,1.6vw,20px)!important}
@media (max-width:900px){[class*="sx-wrap-"] .hive_b{width:95%!important}}
.sp-pt01:not([data-sty-ext]) > .sp-b{text-align:var(--sp-pt01-a-badge_num,var(--sp-pt01-a-badge_txt,inherit))}
.sp-pt05:not([data-sty-ext]) > .sp-b{text-align:var(--sp-pt05-a-badge_num,var(--sp-pt05-a-badge_txt,inherit))}
.sp-pt06:not([data-sty-ext]) > .sp-b{text-align:var(--sp-pt06-a-badge_num,var(--sp-pt06-a-badge_txt,inherit))}
.sp-hero-etxt{text-align:var(--sp-hero-a-etxt,inherit);display:var(--sp-hero-d-etxt,revert)}
.sp-hero-en{text-align:var(--sp-hero-a-en,inherit);display:var(--sp-hero-d-en,revert)}
.sp-hero-ko{text-align:var(--sp-hero-a-ko,inherit);display:var(--sp-hero-d-ko,revert)}
.sp-hero-desc{text-align:var(--sp-hero-a-desc,inherit);display:var(--sp-hero-d-desc,revert)}
.sp-pt01 .sp-pt-badge-num{text-align:var(--sp-pt01-a-badge_num,inherit);display:var(--sp-pt01-d-badge_num,revert)}
.sp-pt01 .sp-pt-badge-txt{text-align:var(--sp-pt01-a-badge_txt,inherit);display:var(--sp-pt01-d-badge_txt,revert)}
.sp-pt05 .sp-pt-badge-num{text-align:var(--sp-pt05-a-badge_num,inherit);display:var(--sp-pt05-d-badge_num,revert)}
.sp-pt05 .sp-pt-badge-txt{text-align:var(--sp-pt05-a-badge_txt,inherit);display:var(--sp-pt05-d-badge_txt,revert)}
.sp-pt05 .sp-sec-title{text-align:var(--sp-pt05-a-sec_title,inherit);display:var(--sp-pt05-d-sec_title,revert)}
.sp-pt05-inum{text-align:var(--sp-pt05-a-inum,inherit);display:var(--sp-pt05-d-inum,revert)}
.sp-pt05-itxt{text-align:var(--sp-pt05-a-itxt,inherit);display:var(--sp-pt05-d-itxt,revert)}
.sp-pt06 .sp-pt-badge-num{text-align:var(--sp-pt06-a-badge_num,inherit);display:var(--sp-pt06-d-badge_num,revert)}
.sp-pt06 .sp-pt-badge-txt{text-align:var(--sp-pt06-a-badge_txt,inherit);display:var(--sp-pt06-d-badge_txt,revert)}
.sp-pt06 .sp-sec-title{text-align:var(--sp-pt06-a-sec_title,inherit);display:var(--sp-pt06-d-sec_title,revert)}
.sp-pt06-txt{text-align:var(--sp-pt06-a-txt,inherit);display:var(--sp-pt06-d-txt,revert)}
.sp-faq .sp-sec-title{text-align:var(--sp-faq-a-sec_title,inherit);display:var(--sp-faq-d-sec_title,revert)}
.sp-faq-qtxt{text-align:var(--sp-faq-a-q,inherit);display:var(--sp-faq-d-q,revert)}
.sp-faq-a{text-align:var(--sp-faq-a-a,inherit);display:var(--sp-faq-d-a,revert)}
.sp-related .sp-sec-title{text-align:var(--sp-related-a-sec_title,inherit);display:var(--sp-related-d-sec_title,revert)}
.sp-related-cname{text-align:var(--sp-related-a-name,inherit);display:var(--sp-related-d-name,revert)}
.sp-related-cdesc{text-align:var(--sp-related-a-desc,inherit);display:var(--sp-related-d-desc,revert)}
.sp-doctor-eyebrow{text-align:var(--sp-doctor-a-eyebrow,inherit);display:var(--sp-doctor-d-eyebrow,revert)}
.sp-doctor-quote{text-align:var(--sp-doctor-a-quote,inherit);display:var(--sp-doctor-d-quote,revert)}
.sp-doctor-name{text-align:var(--sp-doctor-a-name,inherit);display:var(--sp-doctor-d-name,revert)}
.sp-ext-ba .sp-sec-lbl, .ba-section .sec-eyebrow{text-align:var(--sp-ba-a-eyebrow,inherit);display:var(--sp-ba-d-eyebrow,revert)}
.sp-ext-ba .sp-sec-title, .ba-section .sec-head h2{text-align:var(--sp-ba-a-sec_title,inherit);display:var(--sp-ba-d-sec_title,revert)}
.sp-ext-rsm .hvm-head__eyebrow{text-align:var(--sp-real_selfie_marquee-a-eyebrow,inherit);display:var(--sp-real_selfie_marquee-d-eyebrow,revert)}
.sp-ext-rsm .hvm-head__title{text-align:var(--sp-real_selfie_marquee-a-sec_title,inherit);display:var(--sp-real_selfie_marquee-d-sec_title,revert)}
.sp-ext-rsm .hvm-head__desc{text-align:var(--sp-real_selfie_marquee-a-desc,inherit);display:var(--sp-real_selfie_marquee-d-desc,revert)}
.sp-hero-etxt{background:var(--sp-hero-x-etxt-bg,transparent);padding:var(--sp-hero-x-etxt-pady,0) var(--sp-hero-x-etxt-padx,0);border-radius:var(--sp-hero-x-etxt-rad,0);border:var(--sp-hero-x-etxt-bd,0);border-top:var(--sp-hero-x-etxt-bd-top,var(--sp-hero-x-etxt-bd,0));border-bottom:var(--sp-hero-x-etxt-bd-bottom,var(--sp-hero-x-etxt-bd,0));border-left:var(--sp-hero-x-etxt-bd-left,var(--sp-hero-x-etxt-bd,0));border-right:var(--sp-hero-x-etxt-bd-right,var(--sp-hero-x-etxt-bd,0));}
.sp-pt01 .sp-pt-badge-num{background:var(--sp-pt01-x-badge_num-bg,transparent);padding:var(--sp-pt01-x-badge_num-pady,0) var(--sp-pt01-x-badge_num-padx,0);border-radius:var(--sp-pt01-x-badge_num-rad,0);border:var(--sp-pt01-x-badge_num-bd,0);border-top:var(--sp-pt01-x-badge_num-bd-top,var(--sp-pt01-x-badge_num-bd,0));border-bottom:var(--sp-pt01-x-badge_num-bd-bottom,var(--sp-pt01-x-badge_num-bd,0));border-left:var(--sp-pt01-x-badge_num-bd-left,var(--sp-pt01-x-badge_num-bd,0));border-right:var(--sp-pt01-x-badge_num-bd-right,var(--sp-pt01-x-badge_num-bd,0));}
.sp-pt01 .sp-pt-badge-txt{background:var(--sp-pt01-x-badge_txt-bg,transparent);padding:var(--sp-pt01-x-badge_txt-pady,0) var(--sp-pt01-x-badge_txt-padx,0);border-radius:var(--sp-pt01-x-badge_txt-rad,0);border:var(--sp-pt01-x-badge_txt-bd,0);border-top:var(--sp-pt01-x-badge_txt-bd-top,var(--sp-pt01-x-badge_txt-bd,0));border-bottom:var(--sp-pt01-x-badge_txt-bd-bottom,var(--sp-pt01-x-badge_txt-bd,0));border-left:var(--sp-pt01-x-badge_txt-bd-left,var(--sp-pt01-x-badge_txt-bd,0));border-right:var(--sp-pt01-x-badge_txt-bd-right,var(--sp-pt01-x-badge_txt-bd,0));}
.sp-pt05 .sp-pt-badge-num{background:var(--sp-pt05-x-badge_num-bg,transparent);padding:var(--sp-pt05-x-badge_num-pady,0) var(--sp-pt05-x-badge_num-padx,0);border-radius:var(--sp-pt05-x-badge_num-rad,0);border:var(--sp-pt05-x-badge_num-bd,0);border-top:var(--sp-pt05-x-badge_num-bd-top,var(--sp-pt05-x-badge_num-bd,0));border-bottom:var(--sp-pt05-x-badge_num-bd-bottom,var(--sp-pt05-x-badge_num-bd,0));border-left:var(--sp-pt05-x-badge_num-bd-left,var(--sp-pt05-x-badge_num-bd,0));border-right:var(--sp-pt05-x-badge_num-bd-right,var(--sp-pt05-x-badge_num-bd,0));}
.sp-pt05 .sp-pt-badge-txt{background:var(--sp-pt05-x-badge_txt-bg,transparent);padding:var(--sp-pt05-x-badge_txt-pady,0) var(--sp-pt05-x-badge_txt-padx,0);border-radius:var(--sp-pt05-x-badge_txt-rad,0);border:var(--sp-pt05-x-badge_txt-bd,0);border-top:var(--sp-pt05-x-badge_txt-bd-top,var(--sp-pt05-x-badge_txt-bd,0));border-bottom:var(--sp-pt05-x-badge_txt-bd-bottom,var(--sp-pt05-x-badge_txt-bd,0));border-left:var(--sp-pt05-x-badge_txt-bd-left,var(--sp-pt05-x-badge_txt-bd,0));border-right:var(--sp-pt05-x-badge_txt-bd-right,var(--sp-pt05-x-badge_txt-bd,0));}
.sp-pt05-inum{background:var(--sp-pt05-x-inum-bg,transparent);padding:var(--sp-pt05-x-inum-pady,0) var(--sp-pt05-x-inum-padx,0);border-radius:var(--sp-pt05-x-inum-rad,0);border:var(--sp-pt05-x-inum-bd,0);border-top:var(--sp-pt05-x-inum-bd-top,var(--sp-pt05-x-inum-bd,0));border-bottom:var(--sp-pt05-x-inum-bd-bottom,var(--sp-pt05-x-inum-bd,0));border-left:var(--sp-pt05-x-inum-bd-left,var(--sp-pt05-x-inum-bd,0));border-right:var(--sp-pt05-x-inum-bd-right,var(--sp-pt05-x-inum-bd,0));}
.sp-pt06 .sp-pt-badge-num{background:var(--sp-pt06-x-badge_num-bg,transparent);padding:var(--sp-pt06-x-badge_num-pady,0) var(--sp-pt06-x-badge_num-padx,0);border-radius:var(--sp-pt06-x-badge_num-rad,0);border:var(--sp-pt06-x-badge_num-bd,0);border-top:var(--sp-pt06-x-badge_num-bd-top,var(--sp-pt06-x-badge_num-bd,0));border-bottom:var(--sp-pt06-x-badge_num-bd-bottom,var(--sp-pt06-x-badge_num-bd,0));border-left:var(--sp-pt06-x-badge_num-bd-left,var(--sp-pt06-x-badge_num-bd,0));border-right:var(--sp-pt06-x-badge_num-bd-right,var(--sp-pt06-x-badge_num-bd,0));}
.sp-pt06 .sp-pt-badge-txt{background:var(--sp-pt06-x-badge_txt-bg,transparent);padding:var(--sp-pt06-x-badge_txt-pady,0) var(--sp-pt06-x-badge_txt-padx,0);border-radius:var(--sp-pt06-x-badge_txt-rad,0);border:var(--sp-pt06-x-badge_txt-bd,0);border-top:var(--sp-pt06-x-badge_txt-bd-top,var(--sp-pt06-x-badge_txt-bd,0));border-bottom:var(--sp-pt06-x-badge_txt-bd-bottom,var(--sp-pt06-x-badge_txt-bd,0));border-left:var(--sp-pt06-x-badge_txt-bd-left,var(--sp-pt06-x-badge_txt-bd,0));border-right:var(--sp-pt06-x-badge_txt-bd-right,var(--sp-pt06-x-badge_txt-bd,0));}
.sp-doctor-eyebrow{background:var(--sp-doctor-x-eyebrow-bg,transparent);padding:var(--sp-doctor-x-eyebrow-pady,0) var(--sp-doctor-x-eyebrow-padx,0);border-radius:var(--sp-doctor-x-eyebrow-rad,0);border:var(--sp-doctor-x-eyebrow-bd,0);border-top:var(--sp-doctor-x-eyebrow-bd-top,var(--sp-doctor-x-eyebrow-bd,0));border-bottom:var(--sp-doctor-x-eyebrow-bd-bottom,var(--sp-doctor-x-eyebrow-bd,0));border-left:var(--sp-doctor-x-eyebrow-bd-left,var(--sp-doctor-x-eyebrow-bd,0));border-right:var(--sp-doctor-x-eyebrow-bd-right,var(--sp-doctor-x-eyebrow-bd,0));}
.sp-ext-ba .sp-sec-lbl, .ba-section .sec-eyebrow{background:var(--sp-ba-x-eyebrow-bg,transparent);padding:var(--sp-ba-x-eyebrow-pady,0) var(--sp-ba-x-eyebrow-padx,0);border-radius:var(--sp-ba-x-eyebrow-rad,0);border:var(--sp-ba-x-eyebrow-bd,0);border-top:var(--sp-ba-x-eyebrow-bd-top,var(--sp-ba-x-eyebrow-bd,0));border-bottom:var(--sp-ba-x-eyebrow-bd-bottom,var(--sp-ba-x-eyebrow-bd,0));border-left:var(--sp-ba-x-eyebrow-bd-left,var(--sp-ba-x-eyebrow-bd,0));border-right:var(--sp-ba-x-eyebrow-bd-right,var(--sp-ba-x-eyebrow-bd,0));}
.sp-hero{padding-left:var(--sp-hero-pad-x,0);padding-right:var(--sp-hero-pad-x,0)}
@media(max-width:768px){.sp-hero{padding-left:var(--sp-hero-pad-x-mo,var(--sp-hero-pad-x,0));padding-right:var(--sp-hero-pad-x-mo,var(--sp-hero-pad-x,0))}}
.sp-pt05{padding-left:var(--sp-pt05-pad-x,0);padding-right:var(--sp-pt05-pad-x,0)}
@media(max-width:768px){.sp-pt05{padding-left:var(--sp-pt05-pad-x-mo,var(--sp-pt05-pad-x,0));padding-right:var(--sp-pt05-pad-x-mo,var(--sp-pt05-pad-x,0))}}
.sp-pt06{padding-left:var(--sp-pt06-pad-x,0);padding-right:var(--sp-pt06-pad-x,0)}
@media(max-width:768px){.sp-pt06{padding-left:var(--sp-pt06-pad-x-mo,var(--sp-pt06-pad-x,0));padding-right:var(--sp-pt06-pad-x-mo,var(--sp-pt06-pad-x,0))}}
.sp-faq{padding-left:var(--sp-faq-pad-x,0);padding-right:var(--sp-faq-pad-x,0)}
@media(max-width:768px){.sp-faq{padding-left:var(--sp-faq-pad-x-mo,var(--sp-faq-pad-x,0));padding-right:var(--sp-faq-pad-x-mo,var(--sp-faq-pad-x,0))}}
.sp-related{padding-left:var(--sp-related-pad-x,0);padding-right:var(--sp-related-pad-x,0)}
@media(max-width:768px){.sp-related{padding-left:var(--sp-related-pad-x-mo,var(--sp-related-pad-x,0));padding-right:var(--sp-related-pad-x-mo,var(--sp-related-pad-x,0))}}
.sp-pt01{padding-left:var(--sp-pt01-pad-x,0);padding-right:var(--sp-pt01-pad-x,0)}
@media(max-width:768px){.sp-pt01{padding-left:var(--sp-pt01-pad-x-mo,var(--sp-pt01-pad-x,0));padding-right:var(--sp-pt01-pad-x-mo,var(--sp-pt01-pad-x,0))}}
.sp-doctor{padding-left:var(--sp-doctor-pad-x,0);padding-right:var(--sp-doctor-pad-x,0)}
@media(max-width:768px){.sp-doctor{padding-left:var(--sp-doctor-pad-x-mo,var(--sp-doctor-pad-x,0));padding-right:var(--sp-doctor-pad-x-mo,var(--sp-doctor-pad-x,0))}}
.sp-ba{padding-left:var(--sp-ba-pad-x,0);padding-right:var(--sp-ba-pad-x,0)}
@media(max-width:768px){.sp-ba{padding-left:var(--sp-ba-pad-x-mo,var(--sp-ba-pad-x,0));padding-right:var(--sp-ba-pad-x-mo,var(--sp-ba-pad-x,0))}}
.sp-real_selfie_marquee{padding-left:var(--sp-real_selfie_marquee-pad-x,0);padding-right:var(--sp-real_selfie_marquee-pad-x,0)}
@media(max-width:768px){.sp-real_selfie_marquee{padding-left:var(--sp-real_selfie_marquee-pad-x-mo,var(--sp-real_selfie_marquee-pad-x,0));padding-right:var(--sp-real_selfie_marquee-pad-x-mo,var(--sp-real_selfie_marquee-pad-x,0))}}
.sp-hero .sp-b{max-width:var(--sp-hero-mw,var(--sp-mw,1200px))}
.sp-pt05 .sp-b{max-width:var(--sp-pt05-mw,var(--sp-mw,1200px))}
.sp-pt06 .sp-b{max-width:var(--sp-pt06-mw,var(--sp-mw,1200px))}
.sp-faq .sp-b{max-width:var(--sp-faq-mw,var(--sp-mw,1200px))}
.sp-related .sp-b{max-width:var(--sp-related-mw,var(--sp-mw,1200px))}
.sp-pt01 .sp-b{max-width:var(--sp-pt01-mw,var(--sp-mw,1200px))}
.sp-doctor .sp-b{max-width:var(--sp-doctor-mw,var(--sp-mw,1200px))}
.sp-ba .sp-b{max-width:var(--sp-ba-mw,var(--sp-mw,1200px))}
.sp-real_selfie_marquee .sp-b{max-width:var(--sp-real_selfie_marquee-mw,var(--sp-mw,1200px))}
.sp-hero-img{aspect-ratio:var(--sp-hero-img-ratio,auto);box-shadow:var(--sp-hero-shadow,none);border-width:var(--sp-hero-bd-w,0);border-style:solid;border-color:var(--sp-hero-bd-color,rgba(0,0,0,.08))}
.sp-pt01-img{aspect-ratio:var(--sp-pt01-img-ratio,auto);box-shadow:var(--sp-pt01-shadow,none);border-width:var(--sp-pt01-bd-w,0);border-style:solid;border-color:var(--sp-pt01-bd-color,rgba(0,0,0,.08))}
.sp-pt05-img{aspect-ratio:var(--sp-pt05-img-ratio,auto);box-shadow:var(--sp-pt05-shadow,none);border-width:var(--sp-pt05-bd-w,0);border-style:solid;border-color:var(--sp-pt05-bd-color,rgba(0,0,0,.08))}
.sp-doctor-img{aspect-ratio:var(--sp-doctor-img-ratio,auto);box-shadow:var(--sp-doctor-shadow,none);border-width:var(--sp-doctor-bd-w,0);border-style:solid;border-color:var(--sp-doctor-bd-color,rgba(0,0,0,.08))}
.sp-pt06-item{box-shadow:var(--sp-pt06-shadow,none);border-width:var(--sp-pt06-bd-w,0);border-style:solid;border-color:var(--sp-pt06-bd-color,rgba(0,0,0,.08))}
.sp-related-card{box-shadow:var(--sp-related-shadow,none);border-width:var(--sp-related-bd-w,0);border-style:solid;border-color:var(--sp-related-bd-color,rgba(0,0,0,.08))}
.sp-hero-overlay{display:block;position:absolute;inset:0;z-index:2;border-radius:var(--sp-hero-bd-rtl,0) var(--sp-hero-bd-rtr,0) var(--sp-hero-bd-rbr,0) var(--sp-hero-bd-rbl,0);background:linear-gradient(var(--sp-hero-ov-dir,180deg),rgba(0,0,0,var(--sp-hero-overlay,0%)) 0%,rgba(0,0,0,var(--sp-hero-ov-a2,var(--sp-hero-overlay,0%))) 78%,rgba(0,0,0,var(--sp-hero-ov-a2,var(--sp-hero-overlay,0%))) 100%);pointer-events:none;transition:background .3s}
@media (max-width:768px){.sp-hero-overlay{background:linear-gradient(var(--sp-hero-ov-dir,180deg),rgba(0,0,0,var(--sp-hero-overlay-mo,var(--sp-hero-overlay,0%))) 0%,rgba(0,0,0,var(--sp-hero-ov-a2,var(--sp-hero-overlay-mo,var(--sp-hero-overlay,0%)))) 78%,rgba(0,0,0,var(--sp-hero-ov-a2,var(--sp-hero-overlay-mo,var(--sp-hero-overlay,0%)))) 100%)}}
body.sp-pt06-no-hover .sp-pt06-item:hover{background:var(--sp-pt06-card-bg,var(--sp-card-bg,var(--sp-bg2))) !important;border-color:transparent !important;transition:none !important}
body.sp-pt06-no-hover .sp-pt06-item:hover::before,body.sp-pt06-no-hover .sp-pt06-item:hover::after{transform:none !important;transition:none !important}
body.sp-related-no-hover .sp-related-card:hover{background:var(--sp-related-card-bg,var(--sp-card-bg,var(--sp-bg2))) !important;border-color:transparent !important;transition:none !important}
body.sp-related-no-hover .sp-related-card:hover::before,body.sp-related-no-hover .sp-related-card:hover::after{transform:none !important;transition:none !important}

/* pt-badge */
.sp-pt-badge{display:var(--sty-d-badge,inline-flex);align-items:center;gap:10px;margin-bottom:var(--sty-badge-gap,18px)}
/* crd/cmp v2 헤더 모드(eyebrow+제목)에서도 '라벨↔제목 간격'(--sty-badge-gap) 적용 — eyebrow 하단여백은 0으로 단일화하고 h2 상단여백으로 제어 */
.sp-ext-crd .sec-head .sec-eyebrow,.sp-ext-cmp .sec-head .sec-eyebrow{margin-bottom:0}
.sp-ext-crd .sec-head h2,.sp-ext-cmp .sec-head h2{margin-top:var(--sty-badge-gap,24px)}
/* 섹션 제목/증상 설명 숨김 — 섹션별 옵션 변수로만 발동 (기본 표시) */
.sp-sec-title,.sp-pt01-title{display:var(--sty-d-title,block)}
.sp-ext-sym-txt .sp-ext-sym-desc{display:var(--sty-d-symd,block);font-size:var(--sty-t-itemd,var(--sp-t-sm));color:var(--sty-c-itemd,var(--sp-muted))}
.sp-no-badge .sp-pt-badge-num{display:none}
.sp-no-badge .sp-pt-badge-txt{border-left:none;padding-left:0}
.sp-pt-badge-num{font-family:var(--font-eng);font-size:var(--sp-t-body);font-weight:300;padding:4px 12px;border:1px solid var(--sp-gold);color:var(--sp-text)}
.sp-pt-badge-txt{font-size:var(--sp-t-sm);color:var(--sp-muted2);border-left:1px solid var(--sp-line);padding-left:10px}
/* 소제목(badge) 삭제 가능 — 비우면 일반 화면에선 배지 영역 자체를 숨김(여백까지 제거),
   편집 모드에선 data-ph 기본 라벨을 옅게 placeholder 로 표시(클릭해 다시 입력 가능). */
body:not(.sp-edit) .sp-pt-badge:has(> .sp-pt-badge-txt:empty){display:none}
body:not(.sp-edit) [data-ph]:empty{display:none}
body.sp-edit [data-ph][data-ext-field]:empty::before,
body.sp-edit [data-ph][data-f]:empty::before{content:attr(data-ph);opacity:.4;pointer-events:none}

/* =============================================
   HERO
============================================= */
/* 섹션 박스는 라운드 없이 정사각 — 섹션 배경색(--sp-hero-sec-bg)이 모서리까지 꽉 차고,
   그 위에 둥근 이미지(.sp-hero-bg)가 얹혀 라운드 바깥 모서리를 섹션 배경색으로 채움(body 변경 없이 모서리 색 맞춤) */
.sp-hero{position:relative;min-height:var(--sp-hero-min-h,100vh);display:flex;flex-direction:column;background:var(--sp-hero-sec-bg,transparent);box-sizing:border-box;border-style:var(--sp-hero-bd-style,solid);border-color:var(--sp-hero-bd-color,var(--sp-line,rgba(0,0,0,.1)));border-top-width:var(--sp-hero-bd-t,0);border-right-width:var(--sp-hero-bd-r,0);border-bottom-width:var(--sp-hero-bd-b,0);border-left-width:var(--sp-hero-bd-l,0)}
.sp-hero-bg{display:block;position:absolute;top:0;right:0;bottom:0;left:0;inset:0;overflow:hidden;border-radius:var(--sp-hero-bd-rtl,0) var(--sp-hero-bd-rtr,0) var(--sp-hero-bd-rbr,0) var(--sp-hero-bd-rbl,0)}
/* 메인 히어로 배경 좌우 반전(미러) — 컨테이너 scaleX(-1)로 이미지/영상만 뒤집음(텍스트는 영향 없음) */
.sp-hero--flip .sp-hero-bg{transform:scaleX(-1)}
.sp-hero-bg-btn.is-flipped{background:rgba(124,58,237,.75);border-color:#7c3aed}
.sp-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center top;transform:scale(1.1);animation:spBgZoom 2.4s cubic-bezier(.16,1,.3,1) forwards}
/* 메인 히어로 배경 위치 — 옵션값으로 인라인(object-position:center top) 덮어씀. 미설정 시 center top(기존과 동일) */
.sp-hero-bg img,.sp-hero-bg video{object-position:var(--sp-hero-bg-pos,center top)!important}
.sp-hero-bg video{
    filter:grayscale(var(--sp-hero-bg-video-gray,0%));
    opacity:var(--sp-hero-bg-video-opacity,100%);
    transition:filter .25s ease,opacity .25s ease
}
.sp-hero-bg::before{
    content:'';
    position:absolute;
    inset:0;
    z-index:1;
    background:var(--sp-hero-bg-bottom-grad,none);
    pointer-events:none;
    transition:background .25s ease
}
@media (max-width:768px){
    .sp-hero-bg img,.sp-hero-bg video{object-position:var(--sp-hero-bg-pos-mo,var(--sp-hero-bg-pos,center top))!important}
    .sp-hero-bg video{
        filter:grayscale(var(--sp-hero-bg-video-gray-mo,var(--sp-hero-bg-video-gray,0%)));
        opacity:var(--sp-hero-bg-video-opacity-mo,var(--sp-hero-bg-video-opacity,100%))
    }
}
/* 모바일 전용 배경 — 모바일에서 이미지 있으면 PC 배경 대신 표시(없으면 PC 배경 그대로) */
.sp-hero-bg-mo{display:none}
@media(max-width:768px){
    .sp-hero-bg-mo:has(img),.sp-hero-bg-mo:has(video){display:block}
    .sp-hero:has(.sp-hero-bg-mo:has(img)) > .sp-hero-bg:not(.sp-hero-bg-mo),
    .sp-hero:has(.sp-hero-bg-mo:has(video)) > .sp-hero-bg:not(.sp-hero-bg-mo){display:none}
}
/* 히어로 퀵 컨트롤 — 텍스트 위치·배경 위치·비율·딤 (편집 모드 전용, 팝오버 입력 프록시).
   하단 중앙 배치 — 상단 앵커 칩바/배경 우측 버튼들과 겹침 회피 */
.sp-hero-quick{display:none;position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:130;align-items:center;gap:6px;padding:7px 12px;background:rgba(0,0,0,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:10px;font-family:'Pretendard',sans-serif;max-width:min(96vw,980px);flex-wrap:wrap;justify-content:center}
body.sp-edit .sp-hero-quick{display:flex}
.sp-hero-quick .sp-hq-lbl{color:rgba(255,255,255,.55);font-size:11px;white-space:nowrap}
.sp-hero-quick button{min-width:30px;padding:5px 8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.75);font-size:11.5px;border-radius:6px;cursor:pointer;transition:background .15s,color .15s}
.sp-hero-quick button:hover{background:rgba(255,255,255,.18);color:#fff}
.sp-hero-quick button.on{background:#7c3aed;border-color:#7c3aed;color:#fff}
.sp-hero-quick .sp-hq-sep{width:1px;height:16px;background:rgba(255,255,255,.18)}
.sp-hero-quick .sp-hq-gap{width:4px}
.sp-hero-quick input[type=range]{width:80px;accent-color:#7c3aed}
.sp-hero-quick .sp-hq-dimv,.sp-hero-quick .sp-hq-ratiov{color:#fff;font-size:11px;min-width:30px;text-align:right;font-weight:400}
.sp-hero-quick .sp-hq-collapse{order:-999;white-space:nowrap}
.sp-hero-quick.is-mobile [data-hq-mode]{background:#0284c7;border-color:#38bdf8;color:#fff}
.sp-hero-quick.is-collapsed{left:16px;bottom:18px;transform:none;max-width:none;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
.sp-hero-quick.is-collapsed>:not(.sp-hq-collapse){display:none!important}
.sp-hero-quick.is-collapsed .sp-hq-collapse{padding:7px 11px;background:rgba(0,0,0,.72);border-color:rgba(255,255,255,.25);box-shadow:0 3px 12px rgba(0,0,0,.18)}
/* 히어로 배경 편집 버튼 묶음 — 세로 스택(겹침 방지) */
.sp-hero-bg-tools{display:none;position:absolute;bottom:16px;right:16px;z-index:120;flex-direction:column;align-items:flex-end;gap:8px}
body.sp-edit .sp-hero-bg-tools{display:flex}
.sp-hero-bg-tools .sp-hero-bg-btn,
.sp-hero-bg-tools .sp-bg-del-btn{position:static;inset:auto;bottom:auto;right:auto;top:auto;left:auto;margin:0}
@keyframes spBgZoom{to{transform:scale(1)}}
/* 모바일도 제목·본문에 입력한 강제 줄바꿈을 유지한다.
   각 강제 줄 안에서는 keep-all + overflow-wrap으로 화면 폭에 맞춰 자동 줄바꿈한다. */
@media(max-width:768px){
  /* pt06 부제목은 실제 개행 문자(\n)로 저장되므로 모바일에서도 강제 줄바꿈 보존 */
  .sp-pt06-subtitle{white-space:pre-line}
  #sp-sections h1,#sp-sections h2,#sp-sections h3,
  .sp-hero-ko{word-break:keep-all;overflow-wrap:break-word}
}
/* .sp-hero-overlay — 편집/방문자 공통 overlay (PHP loop 에서 출력) */
.sp-hero-grain{display:none}
.sp-hero-in{position:relative;z-index:100;flex:1;display:grid;grid-template-columns:var(--sp-hero-ratio,1fr 1fr);align-items:stretch;gap:var(--sp-hero-gap,0)}
/* 분할형 히어로 두 영역 교환 — 배경 미러(.sp-hero--flip)와 독립적으로 동작 */
.sp-hero--cols-flip .sp-hero-txt{order:2}
.sp-hero--cols-flip .sp-hero-img{order:1}
/* 거리(←/↑) — transform 순수 이동: 줄바꿈·정렬·폭에 영향 없이 블록 통째로 이동 (margin/width 방식은 정렬 풀림) */
.sp-hero-txt{display:flex;flex-direction:column;justify-content:var(--sp-hero-v-align,center);padding:var(--sp-hero-pad0,var(--sp-hero-pad-y,80px)) 0;text-align:var(--sp-hero-h-align,left);align-items:var(--sp-hero-h-align-flex,flex-start);max-width:var(--sp-hero-text-mw,none);transform:translate(var(--sp-hero-tx-ml,0px),var(--sp-hero-tx-mt,0px))}
/* 거리 모바일 — PC 상속 없이 모바일 값만 (px 절대값 상속은 좁은 화면에서 레이아웃 붕괴) */
@media (max-width:900px){.sp-hero-txt{transform:translate(var(--sp-hero-tx-ml-mo,0px),var(--sp-hero-tx-mt-mo,0px))}}
/* 서브nav / 시술요약 칩 자유 위치 — '왼쪽/오른쪽 모서리 기준'에서 직접 px (반응형 안전: 콘텐츠 박스 모서리 절대배치).
   기준 미지정(.sp-pos-* 없음)이면 기존 흐름 그대로. 지정 시 흐름에서 빠져 고정. */
.sp-subnav-hero-wrap.sp-fpos,.sp-geo-meta.sp-fpos{position:absolute;z-index:200;margin:0!important;width:max-content;max-width:92%}
/* 가로: 왼쪽/오른쪽 모서리 기준 직접 px */
.sp-subnav-hero-wrap.sp-fx-left {left:var(--sp-hero-subnav-x,0px);right:auto}
.sp-subnav-hero-wrap.sp-fx-right{right:var(--sp-hero-subnav-x,0px);left:auto}
.sp-geo-meta.sp-fx-left {left:var(--sp-hero-geo-x,0px);right:auto}
.sp-geo-meta.sp-fx-right{right:var(--sp-hero-geo-x,0px);left:auto}
/* 세로: 위/아래 모서리 기준 직접 px — '아래 기준'이면 높이가 바뀌어도 바닥에서 같은 거리 유지(반응형) */
.sp-subnav-hero-wrap.sp-fy-top   {top:var(--sp-hero-subnav-y,0px);bottom:auto}
.sp-subnav-hero-wrap.sp-fy-bottom{bottom:var(--sp-hero-subnav-y,0px);top:auto}
.sp-geo-meta.sp-fy-top   {top:var(--sp-hero-geo-y,0px);bottom:auto}
.sp-geo-meta.sp-fy-bottom{bottom:var(--sp-hero-geo-y,0px);top:auto}
@media (max-width:900px){
  .sp-subnav-hero-wrap.sp-fx-left {left:var(--sp-hero-subnav-x-mo,var(--sp-hero-subnav-x,0px))}
  .sp-subnav-hero-wrap.sp-fx-right{right:var(--sp-hero-subnav-x-mo,var(--sp-hero-subnav-x,0px))}
  .sp-subnav-hero-wrap.sp-fy-top   {top:var(--sp-hero-subnav-y-mo,var(--sp-hero-subnav-y,0px))}
  .sp-subnav-hero-wrap.sp-fy-bottom{bottom:var(--sp-hero-subnav-y-mo,var(--sp-hero-subnav-y,0px))}
  .sp-geo-meta.sp-fx-left {left:var(--sp-hero-geo-x-mo,var(--sp-hero-geo-x,0px))}
  .sp-geo-meta.sp-fx-right{right:var(--sp-hero-geo-x-mo,var(--sp-hero-geo-x,0px))}
  .sp-geo-meta.sp-fy-top   {top:var(--sp-hero-geo-y-mo,var(--sp-hero-geo-y,0px))}
  .sp-geo-meta.sp-fy-bottom{bottom:var(--sp-hero-geo-y-mo,var(--sp-hero-geo-y,0px))}
}
.sp-hero-img{width:min(100%,var(--sp-hero-img-mw,100%));max-width:none;justify-self:center;transform:translate(var(--sp-hero-img-move-x,0px),var(--sp-hero-img-move-y,0px))}
/* 낮은 데스크톱에서는 아래로 이동한 히어로 이미지가 다음 섹션을 덮지 않도록
   translate 양수값만큼 문서 흐름의 안전 공간을 확보한다. 가로 기준을 함께 둬
   단일 열 모바일 규칙과 모바일 가로 화면에는 영향을 주지 않는다. */
@media (min-width:901px) and (max-height:849px),
       (min-width:901px) and (min-aspect-ratio:3/2){
    body:not(.sp-edit) .sp-hero:not(.sp-hero--no-img){
        margin-bottom:var(--sp-hero-flow-guard,0px);
    }
    body:not(.sp-edit) .sp-hero:not(.sp-hero--no-img)::after{
        content:'';position:absolute;top:100%;left:0;right:0;
        height:var(--sp-hero-flow-guard,0px);
        background:var(--sp-hero-sec-bg,transparent);
        pointer-events:none;z-index:0;
    }
}
@media (min-width:901px) and (max-height:699px){
    body:not(.sp-edit) .sp-hero:not(.sp-hero--no-img){
        margin-bottom:var(--sp-hero-flow-guard,0px);
    }
}
@media (max-width:768px){
    /* 모바일 앞이미지는 PC의 고정 크기/박스 이동을 상속하지 않는다.
       PC용 px 크기나 translate가 좁은 화면에서 텍스트·서브내비와 겹치는 것을 막고,
       모바일에서 직접 저장한 _mo 값만 적용한다. */
    .sp-hero{min-height:var(--sp-hero-min-h-mo,var(--sp-hero-min-h,100vh))}
    .sp-hero-txt{padding:var(--sp-hero-pad0,var(--sp-hero-pad-y-mo,var(--sp-hero-pad-y,80px))) 0}
    .sp-hero-img{
        width:min(100%,var(--sp-hero-img-mw-mo,100%));
        max-width:100%;
        height:var(--sp-hero-img-h-mo,auto);
        justify-self:center;
        transform:translate(var(--sp-hero-img-move-x-mo,0px),var(--sp-hero-img-move-y-mo,0px))
    }
}
/* Eyebrow 끄기(hero_etxt_hide → --sp-hero-d-etxt:none) 시 선(eline)·여백까지 행 전체 숨김 */
.sp-hero-eyebrow{display:var(--sp-hero-d-etxt,flex);align-items:center;gap:12px;margin-bottom:20px}
.sp-hero-eline{width:32px;height:1px;background:var(--sp-gold);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.sp-hero.is-loaded .sp-hero-eline{transform:scaleX(1)}
.sp-hero-etxt{font-size:var(--sp-hero-t-etxt,var(--sp-t-sm));font-weight:var(--sp-hero-w-etxt,400);color:var(--sp-hero-c-etxt,var(--sp-gold));font-family:var(--font-eng);margin-bottom:var(--sp-hero-etxt-mb,0);opacity:0;transition:opacity .5s cubic-bezier(.16,1,.3,1)}
.sp-hero.is-loaded .sp-hero-etxt{opacity:1}
.sp-hr-w{display:block;overflow:hidden;padding-top:var(--sp-hero-reveal-pt,var(--sp-hero-en-pt,.18em));padding-bottom:var(--sp-hero-reveal-pb,.16em);margin-top:calc(var(--sp-hero-reveal-pt,var(--sp-hero-en-pt,.18em)) * -1);margin-bottom:calc(var(--sp-hero-reveal-pb,.16em) * -1)}
.sp-hr-l{display:block;transform:translateY(108%);opacity:0;transition:transform .9s cubic-bezier(.05,.7,.1,1),opacity .7s cubic-bezier(.16,1,.3,1)}
.sp-hero.is-loaded .sp-hr-l{transform:translateY(0);opacity:1}
.sp-hero.is-loaded .sp-hr-l:nth-child(2){transition-delay:.1s}
.sp-hero.is-loaded .sp-hr-l:nth-child(3){transition-delay:.18s}
/* 히어로 텍스트 등장 모션 옵션 (hero_anim) — @keyframes 자동 재생.
   transition+is-loaded 는 첫 페인트 전 동기 적용 시 트랜지션이 안 걸려 모션이 안 보일 수 있어,
   로드 시점/JS 타이밍과 무관하게 확실히 재생되는 애니메이션으로 처리. both 로 끝 상태(표시) 고정.
   영문 라인 리빌은 중립화하고, 히어로 텍스트 전체(eyebrow·영문·한글·설명)에 적용 → 한/영 제목 무관 */
@keyframes spHaFade{from{opacity:0}to{opacity:1}}
@keyframes spHaUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes spHaBlur{from{opacity:0;filter:blur(12px)}to{opacity:1;filter:blur(0)}}
@keyframes spHaZoom{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}
.sp-hero--anim-fade .sp-hr-w,.sp-hero--anim-up .sp-hr-w,.sp-hero--anim-blur .sp-hr-w,.sp-hero--anim-zoom .sp-hr-w{overflow:visible}
.sp-hero--anim-fade .sp-hr-l,.sp-hero--anim-up .sp-hr-l,.sp-hero--anim-blur .sp-hr-l,.sp-hero--anim-zoom .sp-hr-l{opacity:1;transform:none;filter:none;transition:none}
.sp-hero--anim-fade .sp-hero-etxt{animation:spHaFade .9s cubic-bezier(.22,1,.36,1) both}
.sp-hero--anim-fade .sp-hero-en{animation:spHaFade .9s cubic-bezier(.22,1,.36,1) .08s both}
.sp-hero--anim-fade .sp-hero-ko{animation:spHaFade .9s cubic-bezier(.22,1,.36,1) .16s both}
.sp-hero--anim-fade .sp-hero-desc{animation:spHaFade .9s cubic-bezier(.22,1,.36,1) .24s both}
.sp-hero--anim-up .sp-hero-etxt{animation:spHaUp .9s cubic-bezier(.22,1,.36,1) both}
.sp-hero--anim-up .sp-hero-en{animation:spHaUp .9s cubic-bezier(.22,1,.36,1) .08s both}
.sp-hero--anim-up .sp-hero-ko{animation:spHaUp .9s cubic-bezier(.22,1,.36,1) .16s both}
.sp-hero--anim-up .sp-hero-desc{animation:spHaUp .9s cubic-bezier(.22,1,.36,1) .24s both}
.sp-hero--anim-blur .sp-hero-etxt{animation:spHaBlur 1s cubic-bezier(.22,1,.36,1) both}
.sp-hero--anim-blur .sp-hero-en{animation:spHaBlur 1s cubic-bezier(.22,1,.36,1) .08s both}
.sp-hero--anim-blur .sp-hero-ko{animation:spHaBlur 1s cubic-bezier(.22,1,.36,1) .16s both}
.sp-hero--anim-blur .sp-hero-desc{animation:spHaBlur 1s cubic-bezier(.22,1,.36,1) .24s both}
.sp-hero--anim-zoom .sp-hero-etxt{animation:spHaZoom 1s cubic-bezier(.22,1,.36,1) both;transform-origin:left center}
.sp-hero--anim-zoom .sp-hero-en{animation:spHaZoom 1s cubic-bezier(.22,1,.36,1) .08s both;transform-origin:left center}
.sp-hero--anim-zoom .sp-hero-ko{animation:spHaZoom 1s cubic-bezier(.22,1,.36,1) .16s both;transform-origin:left center}
.sp-hero--anim-zoom .sp-hero-desc{animation:spHaZoom 1s cubic-bezier(.22,1,.36,1) .24s both;transform-origin:left center}
@media(max-width:768px){@keyframes spHaBlur{from{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}}
/* ===== 제목 글자별 등장 (sp-charev) — 시술법/히어로 제목. transform+opacity 만 사용(컴포지터 전용) → 성능 최상. JS 가 글자 span 분해, 스크롤 진입 시 재생 ===== */
.sp-charev{opacity:1!important;transform:none!important;filter:none!important;animation:none!important;transition:none!important}
.sp-charev .sp-cr-c{display:inline-block;opacity:0;transform:translateY(.5em);will-change:transform,opacity}
.sp-charev .sp-cr-sp{display:inline-block}
.sp-charev.is-revealed .sp-cr-c{animation:spCharRev .52s cubic-bezier(.22,.61,.36,1) both}
@keyframes spCharRev{from{opacity:0;transform:translateY(.5em)}to{opacity:1;transform:translateY(0)}}
/* 히어로 글자별 모드: 라인 슬라이드 끄고(글자 단위로 대체) 마스크 해제 — 글자가 줄 박스 밖에서 슬라이드 인 해도 안 잘리게 */
.sp-hero--anim-char .sp-hr-l{opacity:1;transform:none;filter:none;transition:none}
.sp-hero--anim-char .sp-hr-w{overflow:visible}
.sp-hero--anim-char .sp-hero-desc{opacity:1;transform:none;transition:none}
@media(prefers-reduced-motion:reduce){.sp-charev .sp-cr-c{opacity:1;transform:none;animation:none}}
.sp-hero-en{display:var(--sp-hero-d-en,block);font-family:var(--font-eng);font-size:var(--sp-hero-t-en,clamp(44px,6vw,88px));font-weight:var(--sp-hero-w-en,300);line-height:var(--sp-hero-en-lh,.96);color:var(--sp-hero-c-en,var(--sp-text));margin-bottom:var(--sp-hero-en-mb,8px)}
/* 영문 가로 꽉차게 — 영문 영역(h1)을 텍스트 영역 전체폭으로 늘리고(flex 내용폭 수축 해제) 각 줄을 양끝정렬해 좌우 끝까지 채움.
   (단어 2개 이상인 줄에서 단어가 양끝으로 벌어짐. 한 단어만 있는 줄은 못 벌어짐) */
.sp-hero--enfill .sp-hero-txt > h1{align-self:stretch;width:100%}
.sp-hero--enfill .sp-hero-en{width:100%}
.sp-hero--enfill .sp-hero-en .sp-hr-w{display:block;width:100%}
/* nowrap — _spEnFit 가 폭에 맞춰 키운 줄이 모바일 좁은 폭에서 justify/반올림 오차로
   둘째 단어가 줄바꿈되던 것 방지. 한 줄 강제 + justify-last 로 단어 간격만 벌어짐 */
.sp-hero--enfill .sp-hero-en .sp-hr-l{text-align:justify;text-align-last:justify;white-space:nowrap}
.sp-hero-ko{font-size:var(--sty-t-title,var(--sp-hero-t-ko,var(--sp-t-hd)));font-weight:var(--sp-hero-w-ko,400);letter-spacing:-.01em;color:var(--sp-hero-c-ko,var(--sp-muted));margin-bottom:var(--sp-hero-ko-mb,36px)}
.sp-hero-desc{font-size:var(--sp-hero-t-desc,var(--sp-t-body));font-weight:var(--sp-hero-w-desc,400);line-height:1.9;color:var(--sp-hero-c-desc,var(--sp-muted));max-width:420px;margin-bottom:var(--sp-hero-desc-mb,48px);opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.05,.7,.1,1)}
.sp-hero.is-loaded .sp-hero-desc{opacity:1;transform:translateY(0);transition-delay:.3s}
.sp-hero-acts{display:flex;align-items:center;gap:12px;flex-wrap:wrap;opacity:0;transform:translateY(12px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.05,.7,.1,1)}
.sp-hero.is-loaded .sp-hero-acts{opacity:1;transform:translateY(0);transition-delay:.45s}
.sp-btn-m{display:inline-flex;align-items:center;gap:8px;font-size:var(--sp-t-sm);padding:14px 30px;font-weight:600;transition:opacity .25s cubic-bezier(.16,1,.3,1)}
.sp-btn-m:hover{opacity:.82}
.sp-btn-s{display:inline-flex;align-items:center;gap:8px;font-size:var(--sp-t-sm);padding:13px 30px;border:1px solid rgba(26,14,6,.25);color:var(--sp-muted);transition:border-color .25s,color .25s}
.sp-btn-s:hover{border-color:var(--sp-gold);color:var(--sp-gold)}
.sp-btn-naver{display:inline-flex;align-items:center;gap:8px;font-size:var(--sp-t-sm);padding:13px 30px;font-weight:600;border:none;transition:opacity .25s cubic-bezier(.16,1,.3,1)}
.sp-btn-naver:hover{opacity:.82}
.index_bg_kk{background:#FEE500;color:#3C1E1E}
.index_bg_nv{background:#03C75A;color:#fff}
.index_bg1{background:var(--sp-btn-primary);color:#fff}
.sp-hero-img{position:relative;overflow:hidden;clip-path:inset(0 100% 0 0);transition:clip-path 1.1s cubic-bezier(.05,.7,.1,1);border-radius:var(--sp-hero-img-radius,0);height:var(--sp-hero-img-h,auto);min-height:var(--sp-hero-img-h,0)}
.sp-hero-img::after{content:'';position:absolute;inset:0;background:var(--sp-hero-img-grad,transparent);pointer-events:none;z-index:2;transition:background .3s}
.sp-hero-img.on{clip-path:inset(0 0% 0 0)}
.sp-hero-img img,.sp-hero-img video{width:100%;height:100%;object-fit:cover;object-position:calc(50% + var(--sp-hero-img-x,0%)) var(--sp-hero-img-y,0%)!important}
.sp-hero-img img{transform:scale(1.07);transition:transform 1.8s cubic-bezier(.16,1,.3,1)}
.sp-hero-img.on img{transform:scale(1)}
@media (max-width:900px){.sp-hero-img img,.sp-hero-img video{object-position:calc(50% + var(--sp-hero-img-x-mo,0%)) var(--sp-hero-img-y-mo,50%)!important}}
.sp-hero-img-ov{display:none}
.sp-hero--no-img .sp-hero-in{grid-template-columns:1fr}
.sp-hero--no-img .sp-hero-txt{max-width:var(--sp-hero-text-mw,960px);padding:var(--sp-hero-pad0,100px) 0;justify-self:var(--sp-hero-h-align-justify,start)}
.sp-hero--no-img .sp-hero-desc{max-width:none}
.sp-hero--no-img .sp-hero-img{display:none}
.sp-hero-bg-btn{display:none;position:absolute;bottom:60px;right:16px;top:auto;left:auto;z-index:100;align-items:center;gap:6px;padding:7px 14px;font-size:11px;font-weight:500;letter-spacing:.08em;background:rgba(0,0,0,.55);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:3px;cursor:pointer;transition:background .2s}
.sp-hero-bg-btn:hover{background:rgba(0,0,0,.75)}
body.sp-edit .sp-hero-bg-btn{display:inline-flex}

/* =============================================
   S2 — 증상/추천
============================================= */
.sp-s2{background:var(--sp-s2-sec-bg,var(--sp-bg2));position:relative;padding:var(--sp-s2-pad-y,0) 0;text-align:var(--sp-s2-h-align,inherit)}
@media (max-width:768px){.sp-s2{padding:var(--sp-s2-pad-y-mo,var(--sp-s2-pad-y,0)) 0}}
.sp-s2-lay{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:600px}
.sp-s2-img{position:relative;overflow:hidden}
.sp-s2-img img{width:100%;height:100%;object-fit:cover;object-position:center top}
.sp-s2-iov{display:none}
.sp-s2-cnt{padding:80px 0 80px 64px;display:flex;flex-direction:column;justify-content:center}
.sp-s2-eyebrow{font-size:var(--sp-s2-t-eyebrow,var(--sp-t-sm));font-weight:var(--sp-s2-w-eyebrow,400);color:var(--sp-s2-c-eyebrow,var(--sp-gold));margin-bottom:16px}
.sp-s2-title{font-size:var(--sty-t-title,var(--sp-s2-t-title,var(--sp-t-hd)));font-weight:var(--sp-s2-w-title,400);line-height:1.45;letter-spacing:-.01em;margin-bottom:44px;color:var(--sp-s2-c-title,inherit)}
.sp-s2-items{display:flex;flex-direction:column}
.sp-s2-item{display:flex;align-items:flex-start;gap:20px;padding:20px 0;border-bottom:1px solid var(--sp-line);opacity:0;transform:translateX(20px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.05,.7,.1,1)}
.sp-s2-item:first-child{border-top:1px solid var(--sp-line)}
.sp-s2-item.on{opacity:1;transform:translateX(0)}
.sp-s2-empty{display:none}
body.sp-edit .sp-s2-empty{display:flex}
body.sp-edit .sp-s2-empty .sp-s2-num,
body.sp-edit .sp-s2-empty .sp-s2-itxt{opacity:.35}
.sp-s2-num{font-family:var(--font-eng);font-size:var(--sp-s2-t-num,20px);font-weight:300;color:var(--sp-text);flex-shrink:0;line-height:1.2;min-width:36px}
.sp-s2-itxt{padding-top:4px;flex:1;min-width:0}
.sp-s2-iname{font-size:var(--sp-s2-t-iname,var(--sp-t-body));font-weight:var(--sp-s2-w-iname,500);margin-bottom:4px;color:var(--sp-s2-c-iname,inherit)}
.sp-s2-idesc{font-size:var(--sp-s2-t-idesc,var(--sp-t-sm));font-weight:var(--sp-s2-w-idesc,400);color:var(--sp-s2-c-idesc,var(--sp-muted));line-height:1.7}
/* s2 플립: 이미지를 오른쪽으로 */
.sp-s2--flip .sp-s2-img{order:2}
/* s2 번호 숨기기 */
.sp-s2--nonum .sp-s2-num{display:none}
/* s2 심플 리스트 디자인 — 소프트 카드 + 다크 둥근 번호 배지 (레퍼런스). 이미지/2단 레이아웃은 그대로 */
.sp-s2--simple .sp-s2-items{gap:12px}
.sp-s2--simple .sp-s2-item{background:rgba(0,0,0,.025);border:none!important;border-radius:14px;padding:22px 26px;align-items:flex-start;gap:16px}
.sp-s2--simple .sp-s2-item:first-child{border-top:none!important}
/* 번호 배지 — 원형 고정 크기. 전역 폰트 강제(!important)도 못 줄이게 !important */
.sp-s2--simple .sp-s2-num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;padding:0;margin-top:8px;font-size:16px!important;font-weight:600;line-height:1;color:#fff;background:var(--sp-text,#1a1a1a);border-radius:50%;opacity:1}
.sp-s2--simple .sp-s2-itxt{padding-top:2px}
/* 항목 제목 — 본문보다 큰 소제목 크기로 고정(전역 강제가 17px로 깔아뭉개는 것 방지).
   굵기는 팝오버 '증상 이름 → 굵기'(--sp-s2-w-iname) 로 조절 가능, 미지정 시 700. !important 로 전역 굵기 강제도 이김 */
.sp-s2--simple .sp-s2-iname{font-size:var(--sp-t-sub)!important;font-weight:var(--sp-s2-w-iname,700)!important;margin-bottom:6px}
/* ext sym 번호 숨기기 */
.sp-ext-sym--nonum .sp-ext-sym-num{display:none}
/* s2 아이템 삭제 버튼 */
.sp-s2-item{position:relative}
.sp-s2-item-del{display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%);z-index:10;width:22px;height:22px;background:rgba(220,38,38,.85);color:#fff;border-radius:50%;align-items:center;justify-content:center;font-size:15px;line-height:1;cursor:pointer;border:none;padding:0;flex-shrink:0}
.sp-s2-item-del:hover{background:#dc2626}

/* =============================================
   S3 — 다크 배너
============================================= */
.sp-s3{position:relative;overflow:hidden;padding:var(--sp-s3-pad-y,140px) 0;background:var(--sp-s3-sec-bg,var(--sp-gold));text-align:var(--sp-s3-h-align,center)}
/* s3 중앙 미디어 — PC/모바일 슬롯 별도 + img_mw (px 또는 100%) 로 폭 조절 */
.sp-s3-media-row{width:100%;display:block;margin:36px auto 28px}
.sp-s3-img{position:relative;width:100%;max-width:var(--sp-s3-img-mw,640px);margin:0 auto;border-radius:14px;overflow:hidden;background:rgba(255,255,255,.04)}
.sp-s3-img img,.sp-s3-img video{display:block;width:100%;height:auto;object-fit:cover}
.sp-s3-img.is-empty{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;border:1px dashed rgba(255,255,255,.22);background:rgba(255,255,255,.03)}
.sp-s3-img-ph{padding:24px;text-align:center;color:rgba(255,255,255,.6);font-size:13px;letter-spacing:.02em}
.sp-s3-desc{font-size:var(--sp-s3-t-desc,var(--sp-t-sm));line-height:1.85;color:var(--sp-s3-c-desc,rgba(255,255,255,.7));max-width:var(--sp-s3-desc-mw,760px);margin:0 auto 36px;font-weight:var(--sp-s3-w-desc,300);letter-spacing:-.005em}
/* PC 슬롯 — 모바일에서 자동 숨김 (모바일 슬롯이 있을 때만, 없으면 PC 그대로 보임) */
.sp-s3-media-row .sp-s3-img--mo{display:none}
body.sp-edit .sp-s3-media-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
body.sp-edit .sp-s3-media-row .sp-s3-img{flex:1 1 280px;max-width:380px;margin:0}
body.sp-edit .sp-s3-media-row .sp-s3-img--mo{display:flex}
body.sp-edit .sp-s3-media-row .sp-s3-img--mo::before{content:'📱 모바일';position:absolute;top:8px;left:8px;z-index:5;font-size:10px;background:rgba(0,0,0,.65);color:#fff;padding:3px 8px;border-radius:3px;letter-spacing:.05em}
body.sp-edit .sp-s3-media-row .sp-s3-img--pc::before{content:'🖥 PC';position:absolute;top:8px;left:8px;z-index:5;font-size:10px;background:rgba(0,0,0,.65);color:#fff;padding:3px 8px;border-radius:3px;letter-spacing:.05em}
@media (max-width:768px){
    .sp-s3-img{max-width:var(--sp-s3-img-mw-mo,var(--sp-s3-img-mw,520px));border-radius:12px}
    .sp-s3-media-row{margin:24px auto 20px}
    .sp-s3-desc{margin-bottom:28px}
    /* 모바일 상하단 여백 자동 축소 — 고정값(eyebrow 24·title 20·sub 60)이 모바일에서 과해서 줄임 */
    .sp-s3-eyebrow{margin-bottom:14px}
    .sp-s3-title{margin-bottom:13px}
    .sp-s3-sub{margin-bottom:32px}
    /* 모바일에서: 모바일 슬롯 있으면 그게 우선, 없으면 PC 그대로 */
    body:not(.sp-edit) .sp-s3-media-row:has(.sp-s3-img--mo:not(.is-empty)) .sp-s3-img--pc{display:none}
    body:not(.sp-edit) .sp-s3-media-row .sp-s3-img--mo:not(.is-empty){display:block}
}
@media (max-width:768px){.sp-s3{padding:var(--sp-s3-pad-y-mo,var(--sp-s3-pad-y,140px)) 0}}
.sp-s3-eyebrow{font-size:var(--sp-s3-t-eyebrow,var(--sp-t-sm));font-weight:var(--sp-s3-w-eyebrow,400);color:var(--sp-s3-c-eyebrow,rgba(255,255,255,.5));margin-bottom:24px;line-height:1.4}
.sp-s3-title{font-size:var(--sty-t-title,var(--sp-s3-t-title,var(--sp-t-hd)));font-weight:var(--sp-s3-w-title,400);line-height:1.4;letter-spacing:-.02em;margin-bottom:20px;color:var(--sp-s3-c-title,#fff)}
.sp-s3-sub{font-size:var(--sp-s3-t-sub,var(--sp-t-body));line-height:1.9;color:var(--sp-s3-c-sub,rgba(255,255,255,.55));margin-bottom:60px;font-weight:var(--sp-s3-w-sub,300)}
.sp-s3-tags{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}
.sp-s3-tag{font-size:var(--sp-s3-t-tag,var(--sp-t-sm));font-weight:var(--sp-s3-w-tag,400);padding:8px 20px;border:1px solid rgba(255,255,255,.25);color:var(--sp-s3-c-tag,rgba(255,255,255,.6));border-radius:100px;transition:background .25s cubic-bezier(.16,1,.3,1),border-color .25s,color .25s,transform .25s;cursor:default}
.sp-s3-tag.hl{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.7);color:#fff}
.sp-s3-tag:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.7);color:#fff;transform:translateY(-2px)}
/* 다른 태그 hover 중이면 .hl 활성화 해제 */
.sp-s3-tags:hover .sp-s3-tag.hl:not(:hover){background:transparent;border-color:rgba(255,255,255,.25);color:var(--sp-s3-c-tag,rgba(255,255,255,.6));transform:none}
.sp-s3-tag-edit{display:none;width:100%;max-width:600px;margin:0 auto 16px;padding:10px 16px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.3);border-radius:4px;color:#fff;font-size:var(--sp-t-sm);text-align:center;line-height:1.6}
body.sp-edit .sp-s3-tag-edit{display:block}
body.sp-edit .sp-s3-tags-preview{opacity:.4;pointer-events:none}
.sp-s3-bg{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;overflow:hidden;z-index:0}
.sp-s3-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.sp-s3-bg::after{display:none}
.sp-s3 .sp-b{position:relative;z-index:1}
.sp-s3-bg-btn{display:none;position:absolute;bottom:60px;right:16px;top:auto;left:auto;z-index:100;align-items:center;gap:6px;padding:8px 14px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;cursor:pointer;border-radius:4px;backdrop-filter:blur(4px)}
.sp-s3-bg-btn:hover{background:rgba(0,0,0,.75)}
body.sp-edit .sp-s3-bg-btn{display:inline-flex}

/* =============================================
   PT01 — 텍스트 + 이미지
============================================= */
.sp-pt01{background:var(--sp-pt01-sec-bg,var(--sp-bg2));padding:var(--sty-pad-y,var(--sp-pt01-pad-y,100px)) 0;position:relative;overflow:hidden}
@media (max-width:768px){.sp-pt01{padding:var(--sty-pad-y-mo,var(--sty-pad-y,var(--sp-pt01-pad-y,100px))) 0}}
.sp-pt01-bg{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;overflow:hidden;z-index:0}
.sp-pt01-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.sp-pt01-bg::after{display:none}
.sp-pt01>.sp-b{position:relative;z-index:1}
.sp-pt01-bg-btn{display:none;position:absolute;bottom:60px;right:16px;top:auto;left:auto;z-index:100;align-items:center;gap:6px;padding:8px 14px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;cursor:pointer;border-radius:4px;backdrop-filter:blur(4px)}
.sp-pt01-bg-btn:hover{background:rgba(0,0,0,.75)}
body.sp-edit .sp-pt01-bg-btn{display:inline-flex}
.sp-pt01-lay{display:grid;grid-template-columns:var(--sp-pt01-ratio,1fr 1.4fr);gap:var(--sp-pt01-gap,80px);align-items:center}
.sp-pt01-lay > div:first-child{max-width:var(--sp-pt01-text-mw,none)}
.sp-pt01-body p{font-size:var(--sp-pt01-t-body,var(--sp-t-body));font-weight:var(--sp-pt01-w-body,400);line-height:2;color:var(--sp-pt01-c-body,var(--sp-muted));text-align:var(--sp-pt01-a-body,inherit);display:var(--sp-pt01-d-body,revert)}
.sp-pt01-body p+p{margin-top:18px}
body.sp-edit .sp-pt01-body p[data-ph]:empty{display:block!important;min-height:1.5em}
.sp-pt01-title{font-size:var(--sty-t-title,var(--sp-pt01-t-hd,var(--sp-t-hd)));font-weight:var(--sp-pt01-w-title,400);line-height:1.5;letter-spacing:-.01em;margin-bottom:24px;color:var(--sp-pt01-c-title,inherit);text-align:var(--sp-pt01-a-title,inherit);display:var(--sp-pt01-d-title,revert)}
.sp-pt01-img{position:relative;overflow:hidden;background:var(--sp-bg3);min-height:60px;max-width:var(--sp-pt01-img-mw,none);border-radius:var(--sp-pt01-img-radius,0);display:var(--sp-pt01-img-display,revert)}
/* 기본값(--imgfit-h:auto, fill, pos:center) = 비율 미지정 시 기존 자연 높이 그대로. 비율 지정 시 cover+위치 조절 */
.sp-pt01-img img{width:100%;height:var(--sp-pt01-imgfit-h,auto);object-fit:var(--sp-pt01-imgfit,fill);object-position:var(--sp-pt01-img-pos,center);display:block}
/* 이미지 없을 때(placeholder) 최소 높이 확보 */
.sp-pt01-img.is-empty{aspect-ratio:4/5}
/* pt01 플립: 이미지를 왼쪽으로 */
.sp-pt01--flip .sp-pt01-img{order:-1}
/* pt01 텍스트만(이미지 0%) — 이미지 칼럼 숨기고 본문 전체폭. 업로드된 이미지가 있어도 옵션이 우선 */
.sp-pt01--noimg .sp-pt01-lay{grid-template-columns:1fr}
.sp-pt01--noimg .sp-pt01-img{display:none}
/* pt01 이미지만(텍스트 0%) — 텍스트 칼럼 숨기고 이미지 전체폭 */
.sp-pt01--notext .sp-pt01-lay{grid-template-columns:1fr}
.sp-pt01--notext .sp-pt01-lay > div:first-child{display:none}
/* pt05 플립: 이미지를 오른쪽으로 */
.sp-pt05--flip .sp-pt05-img{order:2}
/* pt05 체크 아이콘 카드 디자인 — 번호→체크 원형, 항목=카드 행 (색상 중립) */
.sp-pt05--check .sp-pt05-list{padding-top:8px}
.sp-pt05--check .sp-pt05-item{background:var(--sp-card-bg,var(--sp-pt05-check-bg,rgba(0,0,0,.035)));border:none!important;border-radius:12px;padding:18px 22px;margin-bottom:12px;align-items:center}
.sp-pt05--check .sp-pt05-item:last-child{margin-bottom:0}
.sp-pt05--check .sp-pt05-inum{font-size:0;width:26px;height:26px;min-width:26px;border-radius:50%;background:var(--sp-pt05-check-color,var(--sp-gold,#a8895a));display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}
.sp-pt05--check .sp-pt05-inum::before{content:"\2713";font-size:15px;color:#fff;line-height:1;font-family:inherit}
/* doctor 플립: 이미지를 오른쪽으로 */
.sp-doctor--flip .sp-doctor-img{order:2}
/* ext-sym 플립: 이미지를 오른쪽으로 */
.sp-ext-sym--flip .sp-ext-sym-img{order:2}
/* 플립 버튼 공통 */
.sp-s2,.sp-pt01,.sp-pt05,.sp-doctor,.sp-ext-sym{position:relative}
.sp-flip-btn{display:none;position:absolute;top:16px;left:16px;z-index:20;align-items:center;gap:5px;padding:7px 12px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:12px;font-family:inherit;cursor:pointer;border-radius:4px;backdrop-filter:blur(4px);white-space:nowrap}
.sp-flip-btn:hover{background:rgba(0,0,0,.75)}
.sp-flip-btn.is-flipped{background:rgba(99,102,241,.75);border-color:rgba(99,102,241,.5)}
body.sp-edit .sp-flip-btn{display:inline-flex}


/* =============================================
   PT02 — 2 카드
============================================= */
.sp-pt02{background:var(--sp-pt02-sec-bg,var(--sp-bg));padding:var(--sp-pt02-pad-y,100px) 0;position:relative}
@media (max-width:768px){.sp-pt02{padding:var(--sp-pt02-pad-y-mo,var(--sp-pt02-pad-y,100px)) 0}}
.sp-pt02-cards{display:grid;grid-template-columns:var(--sp-pt02-cols-tmpl,repeat(var(--sp-cols,2),1fr));gap:var(--sp-pt02-gap,2px);margin-top:56px}
.sp-pt02-card{background:var(--sp-pt02-card-bg,var(--sp-card-bg,var(--sp-bg2)));position:relative;overflow:hidden;transition:background .35s cubic-bezier(.16,1,.3,1);border-radius:var(--sp-pt02-radius,0)}
.sp-pt02-card:hover{background:var(--sp-pt02-card-bg-hv,var(--sp-pt02-card-bg,var(--sp-card-bg,var(--sp-bg3))))}
.sp-pt02-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--sp-gold);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.sp-pt02-card:hover::before{transform:scaleX(1)}
.sp-pt02-card:hover{background:var(--sp-card-bg-hv,var(--sp-bg3))}
.sp-pt02-cimg{aspect-ratio:var(--sp-pt02-img-ratio,3/2);overflow:hidden;background:var(--sp-bg3);border-radius:var(--sp-pt02-img-radius,0)}
.sp-pt02-cimg img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.sp-pt02-card:hover .sp-pt02-cimg img{transform:scale(1.05)}
.sp-pt02-cbody{padding:40px}
.sp-pt02-cnum{font-family:var(--font-eng);font-size:64px;font-weight:300;color:rgba(0,0,0,.07);line-height:1;margin-bottom:24px}
.sp-pt02-ctag{display:inline-flex;font-size:var(--sp-pt02-t-ctag,var(--sp-t-sm));font-weight:var(--sp-pt02-w-ctag,400);border:1px solid rgba(26,14,6,.25);color:var(--sp-pt02-c-ctag,var(--sp-gold));padding:4px 12px;margin-bottom:14px}
.sp-pt02-ctitle{font-size:var(--sp-pt02-t-ctitle,var(--sp-t-sub));font-weight:var(--sp-pt02-w-ctitle,400);letter-spacing:-.01em;margin-bottom:14px;line-height:1.4;color:var(--sp-pt02-c-ctitle,inherit)}
.sp-pt02-cdesc{font-size:var(--sp-pt02-t-cdesc,var(--sp-t-sm));font-weight:var(--sp-pt02-w-cdesc,400);line-height:1.9;color:var(--sp-pt02-c-cdesc,var(--sp-muted))}

/* =============================================
   PT03 — 시술 정보 표
============================================= */
.sp-pt03{background:var(--sp-pt03-sec-bg,var(--sp-bg2));padding:var(--sp-pt03-pad-y,100px) 0;position:relative}
@media (max-width:768px){.sp-pt03{padding:var(--sp-pt03-pad-y-mo,var(--sp-pt03-pad-y,100px)) 0}}
.sp-pt03-grid{display:grid;grid-template-columns:var(--sp-pt03-cols-tmpl,repeat(5,1fr));margin-top:52px;border:1px solid var(--sp-pt03-div-c,var(--sp-line));border-radius:var(--sp-pt03-box-rad,0);overflow:hidden}
/* 편집 화면도 '채운 개수'만큼만 칸 표시(예전엔 항상 5칸 고정). 빈 슬롯은 숨기고 [＋항목 추가]로 하나씩 노출 */
body.sp-edit .sp-pt03-item.sp-item-empty{display:none!important}
body.sp-edit .sp-pt03-item.sp-item-empty.is-revealed{display:block!important;opacity:.6}
.sp-pt03-additem{display:none}
body.sp-edit .sp-pt03-additem{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:9px 18px;background:rgba(124,58,237,.1);border:1px dashed rgba(124,58,237,.5);color:#7c3aed;font-family:'Pretendard',sans-serif;font-size:12.5px;font-weight:600;border-radius:8px;cursor:pointer}
body.sp-edit .sp-pt03-additem:hover{background:rgba(124,58,237,.18);border-style:solid}
body.sp-edit .sp-pt03-additem.is-full{opacity:.4;pointer-events:none}
/* 항목 비우기(×) — 편집, 항목 호버 시 노출 */
.sp-pt03-del{display:none}
body.sp-edit .sp-pt03-item .sp-pt03-del{display:flex;position:absolute;top:6px;right:6px;z-index:5;width:20px;height:20px;align-items:center;justify-content:center;background:rgba(220,38,38,.85);color:#fff;border:none;border-radius:50%;font-size:13px;line-height:1;cursor:pointer;padding:0;opacity:0;transition:opacity .15s}
body.sp-edit .sp-pt03-item:hover .sp-pt03-del{opacity:1}
.sp-pt03-item{padding:36px 28px;border-right:var(--sp-pt03-div-w,1px) solid var(--sp-pt03-div-c,var(--sp-line));position:relative;background:var(--sp-pt03-card-bg,transparent);border-radius:var(--sp-pt03-radius,0);transition:background .28s}
.sp-pt03-item:hover{background:var(--sp-pt03-card-bg-hv,var(--sp-pt03-card-bg,transparent))}
.sp-pt03-item:last-child{border-right:none}
.sp-pt03-item::before{content:'';display:var(--sp-pt03-accent-d,block);position:absolute;top:0;left:0;right:0;height:2px;background:var(--sp-pt03-accent-c,var(--sp-gold));transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.sp-pt03-item:hover::before{transform:scaleX(1)}
/* ── PT03 레이아웃 프리셋(design) ────────────────────────────── */
/* 카드 분리형 — 각 항목 독립 카드 */
.sp-pt03--card .sp-pt03-grid{border:none;border-radius:0;overflow:visible;gap:16px;margin-top:40px}
.sp-pt03--card .sp-pt03-item{border:1px solid var(--sp-pt03-div-c,var(--sp-line));border-radius:var(--sp-pt03-box-rad,14px)}
/* 세로 리스트형 — 라벨 좌 / 값 우 */
.sp-pt03--list .sp-pt03-grid{grid-template-columns:1fr!important;overflow:hidden}
.sp-pt03--list .sp-pt03-item{display:flex;align-items:center;justify-content:space-between;gap:24px;border-right:none;border-bottom:var(--sp-pt03-div-w,1px) solid var(--sp-pt03-div-c,var(--sp-line))}
.sp-pt03--list .sp-pt03-item:last-child{border-bottom:none}
.sp-pt03--list .sp-pt03-head{margin-bottom:0;flex-shrink:0}
.sp-pt03--list .sp-pt03-val{text-align:right}
/* 아이콘 위·중앙 정렬형 */
.sp-pt03--center .sp-pt03-head{flex-direction:column;text-align:center;gap:10px;margin-bottom:14px}
.sp-pt03--center .sp-pt03-item,.sp-pt03--center .sp-pt03-val{text-align:center}
.sp-pt03-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.sp-pt03-ico{width:var(--sp-pt03-ico-size,36px);height:var(--sp-pt03-ico-size,36px);flex-shrink:0;border-width:var(--sp-pt03-ico-bd-w,1px);border-style:solid;border-color:var(--sp-pt03-ico-bd-c,rgba(56,30,14,.2));background:var(--sp-pt03-ico-bg,transparent);border-radius:var(--sp-pt03-ico-radius,0);display:flex;align-items:center;justify-content:center;color:var(--sp-pt03-ico-color,var(--sp-gold))}
.sp-pt03-lbl{font-size:var(--sp-pt03-t-lbl,var(--sp-t-sm));color:var(--sp-pt03-c-lbl,var(--sp-gold));font-weight:var(--sp-pt03-w-lbl,400)}
.sp-pt03-val{font-size:var(--sp-pt03-t-val,var(--sp-t-body));color:var(--sp-pt03-c-val,var(--sp-text));line-height:1.6;font-weight:var(--sp-pt03-w-val,300)}

/* =============================================
   PT04 — 2열 비교
============================================= */
.sp-pt04{background:var(--sp-pt04-sec-bg,var(--sp-bg));padding:var(--sp-pt04-pad-y,100px) 0;position:relative}
@media (max-width:768px){.sp-pt04{padding:var(--sp-pt04-pad-y-mo,var(--sp-pt04-pad-y,100px)) 0}}
.sp-pt04-cols{display:grid;grid-template-columns:var(--sp-pt04-cols-tmpl,repeat(var(--sp-pt04-cols,2),1fr));gap:var(--sp-pt04-gap,2px);margin-top:56px}
.sp-pt04-col{background:var(--sp-pt04-card-bg,var(--sp-card-bg,var(--sp-bg2)));overflow:hidden;border-radius:var(--sp-pt04-radius,0)}
.sp-pt04-col:hover{background:var(--sp-pt04-card-bg-hv,var(--sp-pt04-card-bg,var(--sp-card-bg,var(--sp-bg2))))}
.sp-pt04-col.hl{background:var(--sp-pt04-card-bg,var(--sp-card-bg,var(--sp-bg3)))}
.sp-pt04-cimg{aspect-ratio:var(--sp-pt04-img-ratio,4/3);overflow:hidden;background:var(--sp-bg3);border-radius:var(--sp-pt04-img-radius,0)}
.sp-pt04-cimg img{width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.sp-pt04-col:hover .sp-pt04-cimg img{transform:scale(1.04)}
.sp-pt04-cbody{padding:40px 40px 44px}
.sp-pt04-clbl{font-size:var(--sp-pt04-t-clbl,var(--sp-t-sm));font-weight:var(--sp-pt04-w-clbl,400);color:var(--sp-pt04-c-clbl,var(--sp-gold));margin-bottom:16px}
.sp-pt04-ctitle{font-size:var(--sp-pt04-t-ctitle,var(--sp-t-sub));font-weight:var(--sp-pt04-w-ctitle,400);letter-spacing:-.01em;margin-bottom:20px;line-height:1.4;color:var(--sp-pt04-c-ctitle,inherit)}
.sp-pt04-cdesc{font-size:var(--sp-pt04-t-cdesc,var(--sp-t-body));font-weight:var(--sp-pt04-w-cdesc,400);line-height:2;color:var(--sp-pt04-c-cdesc,var(--sp-muted))}
.sp-pt04-cresult{margin-top:28px;padding-top:24px;border-top:1px solid var(--sp-line);font-size:var(--sp-pt04-t-cresult,var(--sp-t-sm));font-weight:var(--sp-pt04-w-cresult,400);color:var(--sp-pt04-c-cresult,var(--sp-gold))}

/* =============================================
   PT05 — 이미지 + 목록
============================================= */
.sp-pt05{background:var(--sp-pt05-sec-bg,var(--sp-bg2));padding:var(--sty-pad-y,var(--sp-pt05-pad-y,100px)) 0;position:relative;overflow:hidden}
@media (max-width:768px){.sp-pt05{padding:var(--sty-pad-y-mo,var(--sty-pad-y,var(--sp-pt05-pad-y,100px))) 0}}
@media (max-width:768px){.sp-pt05{padding:var(--sp-pt05-pad-y-mo,var(--sp-pt05-pad-y,100px)) 0}}
.sp-pt05-bg{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;overflow:hidden;z-index:0}
.sp-pt05-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.sp-pt05-bg::after{display:none}
.sp-pt05>.sp-b{position:relative;z-index:1}
.sp-pt05-bg-btn{display:none;position:absolute;bottom:60px;right:16px;top:auto;left:auto;z-index:100;align-items:center;gap:6px;padding:8px 14px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;cursor:pointer;border-radius:4px;backdrop-filter:blur(4px)}
.sp-pt05-bg-btn:hover{background:rgba(0,0,0,.75)}
body.sp-edit .sp-pt05-bg-btn{display:inline-flex}
.sp-pt05-lay{display:grid;grid-template-columns:var(--sp-pt05-ratio,340px 1fr);gap:var(--sp-pt05-gap,80px)}
.sp-pt05-lay > div:not(.sp-pt05-img){max-width:var(--sp-pt05-text-mw,none)}
.sp-pt05-img{position:relative;aspect-ratio:var(--sp-pt05-img-ratio,3/4);overflow:hidden;background:var(--sp-bg3);max-width:var(--sp-pt05-img-mw,none);border-radius:var(--sp-pt05-img-radius,0);display:var(--sp-pt05-img-display,revert)}
/* 이미지 끄기(img_off)여도 편집 화면에선 이미지 슬롯을 보여 업로드/재활성 관리가 가능하도록(방문자는 그대로 숨김). 컴팩트하게 표시 */
body.sp-edit .sp-pt05-img{display:revert!important;max-width:300px}
.sp-pt05-img img{width:100%;height:100%;object-fit:cover;object-position:var(--sp-pt05-img-pos,center top)}
.sp-pt05-list{display:grid;grid-template-columns:var(--sp-pt05-list-cols,1fr);column-gap:var(--sp-pt05-list-gap,56px);padding-top:8px}
.sp-pt05-item{position:relative;display:flex;align-items:baseline;gap:20px;padding:22px 0;border-bottom:1px solid var(--sp-pt05-item-line,var(--sp-line));opacity:0;transform:translateX(16px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.05,.7,.1,1)}
.sp-pt05-item:first-child{border-top:1px solid var(--sp-pt05-item-line,var(--sp-line))}
.sp-pt05-item.on{opacity:1;transform:translateX(0)}
.sp-pt05-inum{font-family:var(--font-eng);font-size:var(--sp-pt05-t-inum,clamp(26px,2.6vw,36px));font-weight:var(--sp-pt05-w-inum,300);color:var(--sp-text);flex-shrink:0;min-width:46px;line-height:1.3;display:var(--sp-pt05-inum-off,revert)}
.sp-pt05-itxt{font-size:var(--sp-pt05-t-itxt,var(--sp-t-sm));font-weight:var(--sp-pt05-w-itxt,400);line-height:1.7;color:var(--sp-pt05-c-itxt,var(--sp-text));white-space:pre-line}
.sp-pt05-item-del{display:none}
body.sp-edit .sp-pt05-item{padding-right:38px}
body.sp-edit .sp-pt05-item-del{position:absolute;right:0;top:50%;z-index:5;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid rgba(0,0,0,.14);border-radius:50%;background:#fff;color:#777;font-size:17px;line-height:1;cursor:pointer;transform:translateY(-50%)}
body.sp-edit .sp-pt05-item-del:hover{border-color:#111;color:#111}

/* =============================================
   PT06 — 3×2 그리드
============================================= */
.sp-pt06{background:var(--sp-pt06-sec-bg,var(--sp-bg));padding:var(--sty-pad-y,var(--sp-pt06-pad-y,100px)) 0;position:relative;overflow:hidden}
@media (max-width:768px){.sp-pt06{padding:var(--sty-pad-y-mo,var(--sty-pad-y,var(--sp-pt06-pad-y,100px))) 0}}
@media (max-width:768px){.sp-pt06{padding:var(--sp-pt06-pad-y-mo,var(--sp-pt06-pad-y,100px)) 0}}
/* 제목 아래 부제목(섹션 lead) — 제목 정렬을 따라감(inherit), 그리드와의 간격은 부제목 있을 때만 */
.sp-pt06-subtitle{font-size:var(--sp-t-body);line-height:1.75;color:var(--sp-muted);margin-top:14px;white-space:pre-line;word-break:keep-all;overflow-wrap:break-word}
.sp-pt06-grid{display:grid;grid-template-columns:var(--sp-pt06-cols-tmpl,repeat(var(--sp-cols,3),1fr));gap:var(--sp-pt06-gap,2px);margin-top:52px}
/* 아이콘 카드형 — 아이콘 + 제목 + 구분선 + 설명, 중앙 정렬 카드 */
.sp-pt06--iconcard .sp-pt06-grid{gap:var(--sty-card-gap,var(--sp-pt06-gap,18px))}
.sp-pt06--iconcard .sp-pt06-item{flex-direction:column;align-items:center;text-align:center;justify-content:var(--sp-pt06-card-just,flex-start);gap:0;padding:40px 26px;border-radius:var(--sty-card-radius,var(--sp-pt06-radius,14px));aspect-ratio:var(--sp-pt06-card-ratio,auto)}
/* 아이콘카드 외곽선·hover 정리 — 체크리스트용 '밑줄 2px + hover gold'는 중앙 카드엔 부적합.
   네 변 모두 외곽 두께(bd_w)/테두리 색(bd_color) 옵션을 따르고, hover 시 gold 밑줄을 없앰(마우스오버 끄기 옵션과 함께 깔끔). */
.sp-pt06--iconcard .sp-pt06-item{border:var(--sp-pt06-bd-w,0) solid var(--sp-pt06-bd-color,rgba(0,0,0,.08))}
.sp-pt06--iconcard .sp-pt06-item:hover{border-color:var(--sp-pt06-bd-color,rgba(0,0,0,.08))}
/* 중앙 아이콘카드 배경 — 기본은 투명(어두운 섹션 위에서 흰 박스 안 생기게), '카드 배경색' 지정 시 그 색.
   기본값이 흰색(--sp-bg2)이라 어두운 섹션서 카드가 흰색 고정되던 것 수정. base/hover 모두 --sp-card-bg 따름 */
.sp-pt06--iconcard .sp-pt06-item,
.sp-pt06--iconcard .sp-pt06-item:hover{background:var(--sp-card-bg,transparent)}
/* 구분선 그리드(표 형태) — 카드는 투명(섹션 배경 그대로 비침), 카드 사이에만 1px 선.
   각 카드 우/하단에 헤어라인(box-shadow)을 그리고, 바깥 4면은 clip-path:inset(0) 로 박스 경계에서 잘라냄(아래쪽 누수 없음, 컬럼 수 무관).
   선 색은 '테두리 색'(bd_color) 지정 시 그 색, 미지정 시 테마 라인색(--sp-line). */
.sp-pt06--gridline .sp-pt06-grid{gap:0;clip-path:inset(0)}
.sp-pt06--gridline .sp-pt06-item{background:var(--sp-card-bg,transparent);border:0;border-radius:0;box-shadow:1px 0 0 var(--sp-pt06-bd-color,var(--sp-line)), 0 1px 0 var(--sp-pt06-bd-color,var(--sp-line))}
.sp-pt06--iconcard .sp-pt06-cico{display:flex;align-items:center;justify-content:center;width:var(--sp-pt06-ico-size,56px);height:var(--sp-pt06-ico-size,56px);color:var(--sp-pt06-ico-color,var(--sp-gold));background:var(--sp-pt06-ico-bg,transparent);border-radius:var(--sp-pt06-ico-radius,0);margin-bottom:18px;flex-shrink:0}
.sp-pt06--iconcard .sp-pt06-cico svg{width:62%;height:62%}
/* 편집 가이드(아이콘 클릭=변경) — 박스(점선/외곽선)는 '아이콘 배경'으로 오해되므로 사용 안 함.
   클릭 가능 표시는 커서 + hover 시 살짝 확대로만(배경/박스 없음) */
body.sp-edit .sp-pt06--iconcard .sp-pt06-cico{cursor:pointer;transition:transform .15s}
body.sp-edit .sp-pt06--iconcard .sp-pt06-cico:hover{transform:scale(1.08)}
.sp-pt06--iconcard .sp-pt06-ct{font-size:var(--sty-t-itemt,var(--sp-t-sub));font-weight:500;line-height:1.5;color:var(--sty-c-itemt,inherit);display:var(--sty-d-symn,block)}
.sp-pt06--iconcard .sp-pt06-cdiv{display:block;width:64px;height:1px;background:var(--sp-line);margin:14px auto}
.sp-pt06--iconcard .sp-pt06-cd{font-size:var(--sty-t-itemd,var(--sp-t-sm));line-height:1.8;color:var(--sty-c-itemd,var(--sp-muted));white-space:pre-line;word-break:keep-all;overflow-wrap:break-word}
/* 편집 모드 — 설명 칸이 비어도 구분선/칸 유지 (방문자는 설명 있을 때만 출력) */
body.sp-edit .sp-pt06--iconcard .sp-pt06-cd:empty{min-height:1.2em;min-width:120px}
/* 업로드 이미지 아이콘 — 내장 SVG 대신 이미지일 때 */
.sp-pt06-icoimg{width:100%;height:100%;object-fit:contain;display:block}
/* ── 좌측 카드형 (icoleft) — 좌측정렬 + 아이콘 우상단 + 하단 가로 구분선 + 배경 없음 (스크린샷 스타일) ── */
.sp-pt06--icoleft .sp-pt06-grid{gap:var(--sty-card-gap,var(--sp-pt06-gap,44px)) 56px}
.sp-pt06--icoleft .sp-pt06-item{flex-direction:column;align-items:flex-start;text-align:left;justify-content:flex-start;background:var(--sp-card-bg,transparent);border-radius:0;aspect-ratio:auto;padding:6px 0 30px;position:relative;border-bottom:1px solid var(--sp-line)}
.sp-pt06--icoleft .sp-pt06-cico{position:absolute;top:4px;right:0;margin:0;width:var(--sp-pt06-ico-size,66px);height:var(--sp-pt06-ico-size,66px);background:transparent}
.sp-pt06--icoleft .sp-pt06-cico svg{width:100%;height:100%}
.sp-pt06--icoleft .sp-pt06-ct{margin:0 0 18px;padding-right:84px;color:var(--sty-c-itemt,var(--sp-muted));font-weight:500}
.sp-pt06--icoleft .sp-pt06-cdiv{display:none}
.sp-pt06--icoleft .sp-pt06-cd{margin:0;text-align:left}
/* 빌트인 pt06(주의사항, 항목=텍스트1줄) — 같은 좌측 카드 레이아웃 적용 (.sp-pt06-ico=체크아이콘박스 / .sp-pt06-txt=본문) */
.sp-pt06--icoleft .sp-pt06-ico{position:absolute;top:6px;right:0;margin:0;width:var(--sp-pt06-ico-size,44px);height:var(--sp-pt06-ico-size,44px)}
.sp-pt06--icoleft .sp-pt06-txt{margin:0;padding-right:60px;text-align:left}
@media(max-width:768px){
  .sp-pt06--icoleft .sp-pt06-cico{width:calc(var(--sp-pt06-ico-size,66px) * .8);height:calc(var(--sp-pt06-ico-size,66px) * .8)}
  .sp-pt06--icoleft .sp-pt06-ct{padding-right:64px}
}
/* pt06 슬라이드 — crd 슬라이더와 동일 메커니즘 (PC=스크롤스냅+화살표, 모바일=스와이프) */
.sp-pt06--pcslide .sp-b{position:relative}
@media(min-width:901px){
body:not(.sp-edit) .sp-pt06--pcslide .sp-pt06-grid{display:flex;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:var(--sty-card-gap,18px);scrollbar-width:none;scroll-behavior:smooth}
body:not(.sp-edit) .sp-pt06--pcslide .sp-pt06-grid::-webkit-scrollbar{display:none}
body:not(.sp-edit) .sp-pt06--pcslide .sp-pt06-item{flex:0 0 calc((100% - (var(--sp-cols,3) - 1) * var(--sty-card-gap,18px)) / var(--sp-cols,3));scroll-snap-align:start}
body:not(.sp-edit) .sp-pt06--pcslide .sp-ext-crd-nav{display:inline-flex;position:absolute;top:55%;transform:translateY(-50%);z-index:6;width:30px;height:54px;align-items:center;justify-content:center;border:none;background:none;color:var(--sp-text,#222);cursor:pointer;opacity:.12;transition:opacity .25s}
body:not(.sp-edit) .sp-pt06--pcslide:hover .sp-ext-crd-nav{opacity:.75}
body:not(.sp-edit) .sp-pt06--pcslide .sp-ext-crd-nav--prev{left:-44px}
body:not(.sp-edit) .sp-pt06--pcslide .sp-ext-crd-nav--next{right:-44px}
body:not(.sp-edit) .sp-pt06--pcslide .sp-ext-crd-dots{display:flex}
}
@media(max-width:768px){
.sp-pt06--mslide .sp-pt06-grid{display:flex;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:14px;padding-bottom:6px;scrollbar-width:none}
.sp-pt06--mslide .sp-pt06-grid::-webkit-scrollbar{display:none}
.sp-pt06--mslide .sp-pt06-item{flex:0 0 78%;scroll-snap-align:start}
.sp-pt06--mslide .sp-ext-crd-dots{display:flex}
}
/* 아이콘 선택 팝업 (편집) */
#spPt06IcoPick{position:fixed;z-index:100000;background:#1a1410;border:1px solid rgba(255,255,255,.15);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5);padding:14px;display:none;grid-template-columns:repeat(6,44px);gap:8px;max-width:90vw;max-height:62vh;overflow-y:auto}
#spPt06IcoPick.open{display:grid}
#spPt06IcoPick button{width:44px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:8px;color:#eee;cursor:pointer;padding:4px}
#spPt06IcoPick button:hover{background:#7c3aed;border-color:#7c3aed}
#spPt06IcoPick button svg{width:22px;height:22px}
#spPt06IcoPick button em{font-style:normal;font-size:8px;margin-top:2px;color:rgba(255,255,255,.6);white-space:nowrap;overflow:hidden;max-width:40px}
#spPt06IcoPick .spPt06IcoSearch{grid-column:1/-1;position:sticky;top:0;z-index:2;width:100%;box-sizing:border-box;background:#0f0c08;border:1px solid rgba(255,255,255,.18);border-radius:6px;color:#fff;font-size:12px;padding:8px 10px;margin-bottom:4px}
#spPt06IcoPick .spPt06IcoSearch::placeholder{color:rgba(255,255,255,.4)}
#spPt06IcoPick .spPt06IcoUp{grid-column:1/-1;width:auto;height:38px;flex-direction:row;gap:8px;background:rgba(124,58,237,.18);border-color:rgba(124,58,237,.55);margin-bottom:4px}
#spPt06IcoPick .spPt06IcoUp:hover{background:#7c3aed;border-color:#7c3aed}
#spPt06IcoPick .spPt06IcoUp svg{width:18px;height:18px}
#spPt06IcoPick .spPt06IcoUp em{font-size:12px;max-width:none;margin:0;color:#fff}
.sp-pt06-item{background:var(--sp-pt06-card-bg,var(--sp-card-bg,var(--sp-bg2)));padding:36px 30px;display:flex;gap:16px;align-items:var(--sp-pt06-ico-valign,center);border-bottom:2px solid transparent;transition:border-color .28s cubic-bezier(.16,1,.3,1),background .28s;border-radius:var(--sty-card-radius,var(--sp-pt06-radius,0))}
/* 체크 리스트(pt06 기본 레이아웃) — 정적 안내 목록이라 마우스오버 강조 불필요. hover 시 배경/골드 밑줄 변화 제거(iconcard 는 6258 자체 hover 유지) */
.sp-pt06-item:hover{background:var(--sp-pt06-card-bg,var(--sp-card-bg,var(--sp-bg2)));border-color:transparent}
.sp-pt06-ico{width:var(--sp-pt06-ico-size,40px);height:var(--sp-pt06-ico-size,40px);flex-shrink:0;border-width:var(--sp-pt06-ico-bd-w,1px);border-style:solid;border-color:var(--sp-pt06-ico-bd-c,rgba(56,30,14,.2));background:var(--sp-pt06-ico-bg,transparent);border-radius:var(--sp-pt06-ico-radius,0);display:flex;align-items:center;justify-content:center;color:var(--sp-pt06-ico-color,var(--sp-gold))}
.sp-pt06-txt{font-size:var(--sp-pt06-t-txt,var(--sp-t-sm));font-weight:var(--sp-pt06-w-txt,400);line-height:1.85;color:var(--sp-pt06-c-txt,var(--sp-muted));padding-top:10px}

/* =============================================
   PT07 — 4단계
============================================= */
.sp-pt07{background:var(--sp-pt07-sec-bg,var(--sp-bg2));padding:var(--sty-pad-y,var(--sp-pt07-pad-y,100px)) 0;position:relative;overflow:hidden}
@media (max-width:768px){.sp-pt07{padding:var(--sty-pad-y-mo,var(--sty-pad-y,var(--sp-pt07-pad-y,100px))) 0}}
@media (max-width:768px){.sp-pt07{padding:var(--sp-pt07-pad-y-mo,var(--sp-pt07-pad-y,100px)) 0}}
.sp-pt07-bg{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;overflow:hidden;z-index:0}
.sp-pt07-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.sp-pt07-bg::after{display:none}
.sp-pt07>.sp-b{position:relative;z-index:1}
.sp-pt07-bg-btn{display:none;position:absolute;bottom:60px;right:16px;top:auto;left:auto;z-index:100;align-items:center;gap:6px;padding:8px 14px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;cursor:pointer;border-radius:4px;backdrop-filter:blur(4px)}
.sp-pt07-bg-btn:hover{background:rgba(0,0,0,.75)}
body.sp-edit .sp-pt07-bg-btn{display:inline-flex}
.sp-pt07-steps{display:grid;grid-template-columns:var(--sp-pt07-cols-tmpl,repeat(var(--sp-cols,4),1fr));gap:var(--sp-pt07-gap,2px);margin-top:56px}
.sp-pt07-step{background:var(--sp-pt07-card-bg,var(--sp-card-bg,var(--sp-bg)));padding:40px 30px 44px;position:relative;overflow:hidden;border-radius:var(--sp-pt07-radius,0)}
.sp-pt07-step:hover{background:var(--sp-pt07-card-bg-hv,var(--sp-card-bg-hv,var(--sp-bg)))}
.sp-pt07-step::after{display:none}
.sp-pt07-step:last-child::after{display:none}
.sp-pt07-bg-num{font-family:var(--font-eng);font-size:80px;font-weight:300;color:rgba(0,0,0,.05);line-height:1;position:absolute;top:20px;right:16px;pointer-events:none}
.sp-pt07--no-num .sp-pt07-bg-num{display:none}
.sp-pt07--no-step .sp-pt07-tag{display:none}
.sp-pt07-ico{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--sp-pt07-ico-bg,rgba(0,0,0,.04));color:var(--sp-pt07-ico-color,var(--sp-gold));margin-bottom:16px;position:relative;z-index:1}
.sp-pt07-ico svg{width:26px;height:26px}
.sp-pt07-ico img{width:26px;height:26px;object-fit:contain}
body.sp-edit .sp-pt07-ico--edit{cursor:pointer;outline:1px dashed rgba(124,58,237,.4);outline-offset:2px}
body.sp-edit .sp-pt07-ico--edit:hover{background:rgba(124,58,237,.12)}
.sp-pt07-tag{font-size:var(--sp-pt07-t-tag,var(--sp-t-sm));font-weight:var(--sp-pt07-w-tag,400);color:var(--sp-pt07-c-tag,var(--sp-gold));margin-bottom:12px}
.sp-pt07-title{font-size:var(--sp-pt07-t-title,var(--sp-t-sub));font-weight:var(--sp-pt07-w-title,400);letter-spacing:-.01em;margin-bottom:14px;position:relative;color:var(--sp-pt07-c-title,inherit)}
.sp-pt07-body{font-size:var(--sp-pt07-t-body,var(--sp-t-sm));font-weight:var(--sp-pt07-w-body,400);line-height:1.9;color:var(--sp-pt07-c-body,var(--sp-muted));position:relative}

/* =============================================
   EXT — 카드형 (crd)
============================================= */
.sp-ext-crd{background:var(--sp-bg2);padding:var(--sty-pad-y,100px) 0;position:relative;overflow:hidden}
@media (max-width:768px){.sp-ext-crd{padding:var(--sty-pad-y-mo,var(--sty-pad-y,80px)) 0}}
.sp-ext-crd-grid{display:grid;grid-template-columns:repeat(var(--sp-cols,2),1fr);gap:var(--sty-card-gap,2px);margin-top:52px}
.sp-ext-crd-item{background:var(--sp-card-bg,var(--sp-bg));position:relative;overflow:hidden;display:flex;flex-direction:column;transition:background .28s;border:var(--sty-card-bd,0) solid var(--sty-card-bd-c,var(--sp-line));border-radius:var(--sty-card-radius,0)}
.sp-ext-crd-common .sp-card-underline{overflow:visible}.sp-ext-crd-common .sp-card-underline::before{content:"";position:absolute;z-index:7;bottom:0;left:50%;width:var(--sp-crd-line-width,100%);border-bottom:var(--sp-crd-line-thickness,1px) var(--sp-crd-line-style,solid) var(--sp-crd-line-color,var(--sp-line));transform:translateX(-50%);pointer-events:none}.sp-ext-crd--underline-style-dashed{--sp-crd-line-style:dashed}.sp-ext-crd--underline-style-dotted{--sp-crd-line-style:dotted}.sp-ext-crd--underline-style-double{--sp-crd-line-style:double}.sp-ext-crd--underline-thickness-1{--sp-crd-line-thickness:1px}.sp-ext-crd--underline-thickness-2{--sp-crd-line-thickness:2px}.sp-ext-crd--underline-thickness-3{--sp-crd-line-thickness:3px}.sp-ext-crd--underline-thickness-4{--sp-crd-line-thickness:4px}.sp-ext-crd--underline-thickness-6{--sp-crd-line-thickness:6px}.sp-ext-crd--underline-width-25{--sp-crd-line-width:25%}.sp-ext-crd--underline-width-40{--sp-crd-line-width:40%}.sp-ext-crd--underline-width-60{--sp-crd-line-width:60%}.sp-ext-crd--underline-width-80{--sp-crd-line-width:80%}.sp-ext-crd--underline-width-100{--sp-crd-line-width:100%}.sp-ext-crd--underline-align-left .sp-card-underline::before{left:0;transform:none}.sp-ext-crd--underline-align-right .sp-card-underline::before{left:auto;right:0;transform:none}.sp-ext-crd--underline-tone-dark{--sp-crd-line-color:#171717}.sp-ext-crd--underline-tone-light{--sp-crd-line-color:#fff}.sp-ext-crd--underline-tone-accent{--sp-crd-line-color:var(--sp-gold)}
.sp-ext-crd-item:hover{background:var(--sp-card-bg,var(--sp-bg))}
/* 카드 삭제 버튼 — 편집모드 전용 (cmp 카드 삭제와 동일 룩). 오버레이 ::after(z1) 위로 z12 */
.sp-ext-crd-item-del,.sp-ext-crd-item-move{display:none}
body.sp-edit .sp-ext-crd-item-del{display:flex;position:absolute;top:8px;right:8px;z-index:12;width:22px;height:22px;background:rgba(220,38,38,.85);color:#fff;border-radius:50%;align-items:center;justify-content:center;font-size:15px;line-height:1;cursor:pointer;border:none;padding:0}
body.sp-edit .sp-ext-crd-item-del:hover{background:#dc2626}
body.sp-edit .sp-ext-crd-item-move{display:flex;position:absolute;top:8px;z-index:12;width:22px;height:22px;background:rgba(17,24,39,.72);color:#fff;border-radius:50%;align-items:center;justify-content:center;font-size:14px;line-height:1;cursor:pointer;border:none;padding:0}
body.sp-edit .sp-ext-crd-item-up{right:38px}
body.sp-edit .sp-ext-crd-item-down{right:68px}
body.sp-edit .sp-ext-crd-item-move:hover{background:#111827}
.sp-ext-crd-thumb{position:relative;width:100%;aspect-ratio:var(--sp-crd-img-ratio,16/10);overflow:hidden;flex-shrink:0;border-radius:var(--sp-crd-img-radius,0)}
/* 원형 이미지 + 카드 묶음 박스 */
.sp-ext-crd--circleimg .sp-ext-crd-thumb{aspect-ratio:1/1;border-radius:50%}
.sp-ext-crd--boxed .sp-ext-crd-grid{background:var(--sp-crd-box-bg,rgba(0,0,0,.03));border-radius:20px;padding:clamp(26px,3vw,44px)}
.sp-ext-crd-thumb img{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--sp-crd-img-pos,center);transition:transform .5s}
.sp-ext-crd-item:hover .sp-ext-crd-thumb img{transform:none}
/* 카드형 이미지 모양 '원본' — 표준 카드 썸네일을 비율강제·크롭 없이 원본 그대로(가로 100%·세로 자동).
   오버레이/아이콘/원형/원형이미지/웹진(zine)형은 고정 형태라 제외 */
.sp-ext-crd--imgorig:not(.sp-ext-crd--overlay):not(.sp-ext-crd--icon):not(.sp-ext-crd--circle):not(.sp-ext-crd--circleimg):not(.sp-ext-crd--zine) .sp-ext-crd-thumb{aspect-ratio:auto;height:auto;min-height:0}
.sp-ext-crd--imgorig:not(.sp-ext-crd--overlay):not(.sp-ext-crd--icon):not(.sp-ext-crd--circle):not(.sp-ext-crd--circleimg):not(.sp-ext-crd--zine) .sp-ext-crd-thumb img,.sp-ext-crd--imgorig:not(.sp-ext-crd--overlay):not(.sp-ext-crd--icon):not(.sp-ext-crd--circle):not(.sp-ext-crd--circleimg):not(.sp-ext-crd--zine) .sp-ext-crd-thumb video{position:static;width:100%;height:auto;object-fit:initial}
.sp-ext-crd-thumb-ph{width:100%;height:100%;background:var(--sp-bg3)}
body.sp-edit .sp-ext-crd-thumb-ph{display:flex;align-items:center;justify-content:center;min-height:180px;border:1px dashed rgba(17,24,39,.28);background:rgba(255,255,255,.72);color:#4b5563;cursor:pointer}
body.sp-edit .sp-ext-crd-thumb-ph span{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;background:#111827;color:#fff;font-size:12px;font-weight:700;box-shadow:0 5px 16px rgba(17,24,39,.16)}
.sp-ext-crd-content{padding:32px 30px;flex:1;display:flex;flex-direction:column;text-align:var(--sp-crd-card-ta,inherit);align-items:var(--sp-crd-card-ai,stretch)}
.sp-ext-crd-num{font-family:var(--font-eng);font-size:52px;font-weight:300;opacity:.12;line-height:1;margin-bottom:12px}
.sp-ext-crd-common.sp-ext-crd--num-medium .sp-ext-crd-num{font-size:36px}
.sp-ext-crd-num.is-icon{color:var(--index_color,var(--main,var(--hv-main,currentColor)));opacity:1}
.sp-ext-crd-num.is-icon svg,.sp-ext-crd-num.is-icon img{display:block;width:24px;height:24px;object-fit:contain}
.sp-ext-crd-common.sp-ext-crd--num-circle .sp-ext-crd-num.is-icon svg,.sp-ext-crd-common.sp-ext-crd--num-square .sp-ext-crd-num.is-icon svg,.sp-ext-crd-common.sp-ext-crd--num-outline .sp-ext-crd-num.is-icon svg{width:22px;height:22px}
.sp-ext-crd-tag{display:inline-flex;align-self:flex-start;font-size:var(--sp-t-sm);letter-spacing:.12em;border:0;color:var(--sp-gold);padding:0;margin-bottom:10px}
.sp-ext-crd-title{font-size:var(--sty-t-itemt,var(--sp-t-sub));font-weight:400;letter-spacing:-.01em;margin-bottom:14px;line-height:1.5;color:var(--sty-c-itemt,inherit);display:var(--sty-d-symn,block)}
.sp-ext-crd-sub{font-size:var(--sp-t-sm);font-weight:500;letter-spacing:-.01em;line-height:1.6;margin-top:0;margin-bottom:14px;color:var(--sp-gold)}
.sp-ext-crd-body{font-size:var(--sty-t-itemd,var(--sp-t-sm));line-height:1.9;color:var(--sty-c-itemd,var(--sp-muted))}
.sp-ext-crd-points{--sp-point-accent:var(--index_color,var(--main,var(--hv-main,#888)));order:99;grid-column:1/-1;width:min(var(--sp-crd-point-width,100%),100%);list-style:none;margin:var(--sp-crd-point-mt,24px) 0 0;padding:0;border-top:1px solid rgba(17,24,39,.14)}
.sp-ext-crd--pointw-40{--sp-crd-point-width:40%}.sp-ext-crd--pointw-50{--sp-crd-point-width:50%}.sp-ext-crd--pointw-60{--sp-crd-point-width:60%}.sp-ext-crd--pointw-70{--sp-crd-point-width:70%}.sp-ext-crd--pointw-80{--sp-crd-point-width:80%}.sp-ext-crd--pointw-90{--sp-crd-point-width:90%}.sp-ext-crd--pointw-100{--sp-crd-point-width:100%}
.sp-ext-crd--pointmt-0{--sp-crd-point-mt:0}.sp-ext-crd--pointmt-8{--sp-crd-point-mt:8px}.sp-ext-crd--pointmt-12{--sp-crd-point-mt:12px}.sp-ext-crd--pointmt-16{--sp-crd-point-mt:16px}.sp-ext-crd--pointmt-20{--sp-crd-point-mt:20px}.sp-ext-crd--pointmt-24{--sp-crd-point-mt:24px}.sp-ext-crd--pointmt-32{--sp-crd-point-mt:32px}.sp-ext-crd--pointmt-40{--sp-crd-point-mt:40px}.sp-ext-crd--pointmt-48{--sp-crd-point-mt:48px}
.sp-ext-crd--pointdir-horizontal .sp-ext-crd-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:10px;border-top:0}.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-2 .sp-ext-crd-points{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-3 .sp-ext-crd-points{grid-template-columns:repeat(3,minmax(0,1fr))}.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-4 .sp-ext-crd-points{grid-template-columns:repeat(4,minmax(0,1fr))}.sp-ext-crd--pointdir-horizontal .sp-ext-crd-point{min-width:0;border:1px solid color-mix(in srgb,var(--sp-point-accent) 28%,transparent);padding:12px 14px}
.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-fit .sp-ext-crd-points{display:flex;flex-wrap:wrap;align-items:stretch}.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-fit .sp-ext-crd-point{flex:0 0 auto;width:auto;max-width:100%}
.sp-ext-crd-point{position:relative;display:grid;grid-template-columns:10px minmax(0,1fr);gap:12px;align-items:start;padding:var(--sp-crd-point-py,18px) 0;border-bottom:1px solid rgba(17,24,39,.14)}
.sp-ext-crd-point-marker{width:4px;height:4px;margin-top:.68em;border-radius:50%;background:var(--sp-point-accent);opacity:.75}
.sp-ext-crd-point-title{display:block;font-size:var(--sty-t-itemd,var(--sp-t-sm));font-weight:var(--sp-body-weight,400);line-height:1.65;color:var(--sty-c-itemt,var(--sp-text))}
.sp-ext-crd-point-desc{margin:5px 0 0;font-size:var(--sty-t-itemd,var(--sp-t-sm));font-weight:var(--sp-body-weight,400);line-height:1.65;color:var(--sty-c-itemd,var(--sp-muted))}
.sp-ext-crd-point-desc:empty{display:none}body.sp-edit .sp-ext-crd-point-desc:empty{display:block;min-height:1.4em;opacity:.5}
.sp-ext-crd-point-add{order:100;align-self:flex-start;margin-top:14px;border:1px dashed rgba(17,24,39,.3);border-radius:999px;background:#fff;color:#374151;padding:8px 13px;font-size:11px;font-weight:700;cursor:pointer}.sp-ext-crd-point-del{position:absolute;right:0;top:12px;width:24px;height:24px;border:0;border-radius:50%;background:#ef4444;color:#fff;font-size:15px;line-height:1;cursor:pointer;z-index:2}body.sp-edit .sp-ext-crd-point-text{padding-right:30px}
.sp-ext-crd--points-chip .sp-ext-crd-points{gap:10px;border:0}.sp-ext-crd--points-chip .sp-ext-crd-point{grid-template-columns:7px minmax(0,auto);padding:10px 14px;border:1px solid color-mix(in srgb,var(--sp-point-accent) 35%,transparent);border-radius:999px;background:#fff}.sp-ext-crd--points-chip .sp-ext-crd-point-desc{display:none}
.sp-ext-crd--points-hashtag .sp-ext-crd-points{display:flex;flex-wrap:wrap;gap:10px;border:0}.sp-ext-crd--points-hashtag .sp-ext-crd-point{display:block;width:auto;padding:10px 15px;border:0;border-radius:999px;background:color-mix(in srgb,var(--sp-point-accent) 18%,#f4f1ee);color:var(--sp-point-accent)}.sp-ext-crd--points-hashtag .sp-ext-crd-point-marker,.sp-ext-crd--points-hashtag .sp-ext-crd-point-desc{display:none}.sp-ext-crd--points-hashtag .sp-ext-crd-point-title:before{content:'#';margin-right:1px}.sp-ext-crd--points-hashtag .sp-ext-crd-point-title{font-weight:var(--sp-body-weight,400);color:inherit;white-space:nowrap}
.sp-ext-crd--points-soft .sp-ext-crd-points{display:grid;gap:10px;border:0}.sp-ext-crd--points-soft .sp-ext-crd-point{padding:16px;border:0;border-radius:12px;background:color-mix(in srgb,var(--sp-point-accent) 14%,#fff)}
.sp-ext-crd--points-border .sp-ext-crd-points{display:grid;gap:10px;border:0}.sp-ext-crd--points-border .sp-ext-crd-point{padding:15px 16px;border:1px solid color-mix(in srgb,var(--sp-point-accent) 35%,transparent);background:transparent}
.sp-ext-crd--points-round .sp-ext-crd-points{display:grid;gap:10px;border:0}.sp-ext-crd--points-round .sp-ext-crd-point{padding:15px 17px;border:1px solid color-mix(in srgb,var(--sp-point-accent) 28%,transparent);border-radius:14px;background:color-mix(in srgb,var(--sp-point-accent) 8%,#fff)}
.sp-ext-crd--points-number .sp-ext-crd-points{counter-reset:sp-point;border:0;gap:12px}.sp-ext-crd--points-number .sp-ext-crd-point{counter-increment:sp-point;grid-template-columns:42px minmax(0,1fr);align-items:center;padding:16px 18px;border:1px solid color-mix(in srgb,var(--sp-point-accent) 22%,transparent);border-radius:14px;background:#fff}.sp-ext-crd--points-number .sp-ext-crd-point-marker{width:34px;height:34px;margin:0;border:0;border-radius:10px;color:#fff;background:var(--sp-point-accent);box-shadow:0 5px 14px color-mix(in srgb,var(--sp-point-accent) 22%,transparent);opacity:1}.sp-ext-crd--points-number .sp-ext-crd-point-marker:after{content:counter(sp-point,decimal-leading-zero);display:flex;align-items:center;justify-content:center;height:100%;font-size:11px;font-weight:400;letter-spacing:.06em}
.sp-ext-crd--points-check .sp-ext-crd-points{gap:12px;border:0}.sp-ext-crd--points-check .sp-ext-crd-point{grid-template-columns:34px minmax(0,1fr);align-items:center;padding:15px 17px;border:1px solid color-mix(in srgb,var(--sp-point-accent) 20%,transparent);border-radius:14px;background:color-mix(in srgb,var(--sp-point-accent) 6%,#fff)}.sp-ext-crd--points-check .sp-ext-crd-point-marker{width:26px;height:26px;margin:0;border-radius:8px;background:var(--sp-point-accent);box-shadow:0 4px 12px color-mix(in srgb,var(--sp-point-accent) 20%,transparent);opacity:1}.sp-ext-crd--points-check .sp-ext-crd-point-marker:after{content:'✓';display:flex;align-items:center;justify-content:center;height:100%;color:#fff;font-size:13px;font-weight:400}
.sp-ext-crd--pointalign-left .sp-ext-crd-points{margin-left:0;margin-right:auto;text-align:left}.sp-ext-crd--pointalign-center .sp-ext-crd-points{margin-left:auto;margin-right:auto;text-align:center}.sp-ext-crd--pointalign-right .sp-ext-crd-points{margin-left:auto;margin-right:0;text-align:right}.sp-ext-crd--pointalign-center.sp-ext-crd--pointcols-fit .sp-ext-crd-points,.sp-ext-crd--pointalign-center.sp-ext-crd--points-hashtag .sp-ext-crd-points{justify-content:center}.sp-ext-crd--pointalign-right.sp-ext-crd--pointcols-fit .sp-ext-crd-points,.sp-ext-crd--pointalign-right.sp-ext-crd--points-hashtag .sp-ext-crd-points{justify-content:flex-end}
.sp-ext-crd--pointmarker-none .sp-ext-crd-point{grid-template-columns:minmax(0,1fr)}.sp-ext-crd--pointmarker-none .sp-ext-crd-point-marker{display:none}
@media(max-width:768px){.sp-ext-crd--pointdir-horizontal .sp-ext-crd-points,.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-2 .sp-ext-crd-points,.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-3 .sp-ext-crd-points,.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-4 .sp-ext-crd-points{grid-template-columns:1fr}.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-fit .sp-ext-crd-points{display:flex}.sp-ext-crd--pointdir-horizontal.sp-ext-crd--pointcols-fit .sp-ext-crd-point{width:auto}}
/* 카드 텍스트 글로벌 폰트 — 테마 default.css 의 요소(h3/p 등)별 font-family 가 body 글로벌폰트(--font-pret) 상속을 덮던 것 차단. (번호 .sp-ext-crd-num 은 영문폰트 의도 유지) */
.sp-ext-crd-title,.sp-ext-crd-body,.sp-ext-crd-sub,.sp-ext-crd-subtitle,.sp-ext-crd-desc,.sp-ext-crd-tag,.sp-ext-crd-aside-t,.sp-ext-crd-aside-b,.sp-ext-crd-check li{font-family:var(--font-pret)}
.sp-ext-crd-tag.eng_b2{font-family:var(--font-eng,Georgia,serif)!important;font-weight:300}.sp-ext-crd-tag.pret{font-family:var(--font-pret)!important}
/* crd 섹션 제목 영역 정렬 — 옵션(제목 정렬). 미설정 시 기존 동작 유지(inherit) */
.sp-ext-crd>.sp-b>.sp-sec-title,.sp-ext-crd>.sp-b>.sp-ext-crd-subtitle,.sp-ext-crd>.sp-b>.sp-ext-crd-desc{text-align:var(--sp-crd-head-ta,inherit)}
.sp-ext-crd-common>.sp-b>.sp-ext-crd-eyebrow,.sp-ext-crd-common>.sp-b>.sp-ext-crd-subheading{text-align:var(--sp-crd-head-ta,inherit)}
/* 배지(영문 라벨)는 inline-flex(내용폭)이라 justify-content 가 안 먹어 헤드 가운데/오른쪽 정렬이
   배지만 안 되던 문제 → 카드형에선 flex(전체폭)로 바꿔 정렬 적용. 숨김(--sty-d-badge:none)은 보존. */
.sp-ext-crd>.sp-b>.sp-pt-badge{display:var(--sty-d-badge,flex);justify-content:var(--sp-crd-head-jc,flex-start)}
/* cmp(탭형) 제목 정렬 — 카드형과 동일 옵션(--sp-crd-head-ta/jc 재사용). 헤더(v2 sec-head/레거시 badge·제목·소제목)만, 탭/본문은 그대로 */
.sp-ext-cmp .sp-ext-cmp-sticky-inner>.sp-sec-title,.sp-ext-cmp .sp-ext-cmp-sticky-inner>.sp-ext-crd-subtitle,.sp-ext-cmp .sp-ext-cmp-sticky-inner>.sec-head{text-align:var(--sp-crd-head-ta,inherit)}
.sp-ext-cmp .sp-ext-cmp-sticky-inner>.sp-pt-badge{display:var(--sty-d-badge,flex);justify-content:var(--sp-crd-head-jc,flex-start)}
@media(max-width:900px){.sp-ext-crd-grid{grid-template-columns:repeat(var(--sp-cols-mo,1),1fr)}.sp-ext-crd-thumb{aspect-ratio:var(--sp-crd-img-ratio,16/9)}}
/* 웹진형(가로 행 리스트) — sty.layout=zine. 이미지 좌 / 텍스트 우, 1열 세로 나열. cols 옵션은 무시(항상 1열) */
.sp-ext-crd--zine .sp-ext-crd-grid{grid-template-columns:1fr;gap:var(--sty-card-gap,24px)}
.sp-ext-crd--zine .sp-ext-crd-item{flex-direction:row;align-items:stretch}
.sp-ext-crd--zine .sp-ext-crd-thumb{width:var(--sp-crd-zine-w,42%);max-width:var(--sp-crd-zine-mw,520px);flex-shrink:0;aspect-ratio:var(--sp-crd-img-ratio,auto);min-height:var(--sp-crd-zine-h,280px)}
.sp-ext-crd--zine .sp-ext-crd-content{flex:1;justify-content:center;padding:40px clamp(28px,4vw,56px)}
/* 웹진형 이미지 오른쪽 — 텍스트 좌 | 이미지 우 (슬라이드 조합 시 통째 슬라이드용) */
.sp-ext-crd--zflip .sp-ext-crd-item{flex-direction:row-reverse}
.sp-ext-crd-common.sp-ext-crd--connector .sp-ext-crd-grid{overflow:visible}.sp-ext-crd-common.sp-ext-crd--connector .sp-ext-crd-item{overflow:visible}.sp-ext-crd-common.sp-ext-crd--connector .sp-ext-crd-item:not(:last-child)::after{content:"+";position:absolute;z-index:8;right:calc(var(--sty-card-gap,2px)/-2);top:50%;display:grid;place-items:center;width:var(--sp-crd-connector-size,36px);height:var(--sp-crd-connector-size,36px);border-radius:50%;background:#9c8f84;color:#fff;font-size:calc(var(--sp-crd-connector-size,36px)*.55);font-weight:400;line-height:1;transform:translate(50%,-50%)}.sp-ext-crd--connector-minus .sp-ext-crd-item:not(:last-child)::after{content:"−"}.sp-ext-crd--connector-multiply .sp-ext-crd-item:not(:last-child)::after{content:"×"}.sp-ext-crd--connector-arrow .sp-ext-crd-item:not(:last-child)::after{content:"→"}.sp-ext-crd--connector-and .sp-ext-crd-item:not(:last-child)::after{content:"&"}.sp-ext-crd--connector-slash .sp-ext-crd-item:not(:last-child)::after{content:"/"}.sp-ext-crd--connector-dot .sp-ext-crd-item:not(:last-child)::after{content:"•"}.sp-ext-crd--connector-size-28{--sp-crd-connector-size:28px}.sp-ext-crd--connector-size-36{--sp-crd-connector-size:36px}.sp-ext-crd--connector-size-44{--sp-crd-connector-size:44px}.sp-ext-crd--connector-size-52{--sp-crd-connector-size:52px}.sp-ext-crd--connector-size-64{--sp-crd-connector-size:64px}.sp-ext-crd--connector-style-outline .sp-ext-crd-item:not(:last-child)::after{background:var(--sp-bg);color:var(--sp-text);border:1px solid currentColor}.sp-ext-crd--connector-style-square .sp-ext-crd-item:not(:last-child)::after{border-radius:8px}.sp-ext-crd--connector-style-diamond .sp-ext-crd-item:not(:last-child)::after{border-radius:8px;transform:translate(50%,-50%) rotate(45deg)}.sp-ext-crd--connector-style-diamond.sp-ext-crd--connector-arrow .sp-ext-crd-item:not(:last-child)::after,.sp-ext-crd--connector-style-diamond.sp-ext-crd--connector-plus .sp-ext-crd-item:not(:last-child)::after{line-height:1}.sp-ext-crd--connector-style-plain .sp-ext-crd-item:not(:last-child)::after{background:transparent;color:var(--sp-text)}.sp-ext-crd--connector-style-line .sp-ext-crd-item:not(:last-child)::after{width:var(--sp-crd-connector-size,36px);height:1px;border-radius:0;background:var(--sp-text);color:transparent}.sp-ext-crd--connector-tone-dark .sp-ext-crd-item:not(:last-child)::after{background:#171717;color:#fff}.sp-ext-crd--connector-tone-light .sp-ext-crd-item:not(:last-child)::after{background:#fff;color:#222;border:1px solid var(--sp-line)}.sp-ext-crd--connector-tone-accent .sp-ext-crd-item:not(:last-child)::after{background:var(--sp-gold);color:#fff}.sp-ext-crd--connector-pos-top .sp-ext-crd-item:not(:last-child)::after{top:24%}.sp-ext-crd--connector-pos-bottom .sp-ext-crd-item:not(:last-child)::after{top:76%}@media(max-width:768px){.sp-ext-crd-common.sp-ext-crd--connector .sp-ext-crd-grid{gap:max(var(--sty-card-gap,2px),54px)}.sp-ext-crd-common.sp-ext-crd--connector .sp-ext-crd-item:not(:last-child)::after{right:50%;top:auto;bottom:calc(max(var(--sty-card-gap,2px),54px)/-2);transform:translate(50%,50%)}.sp-ext-crd-common.sp-ext-crd--connector-style-diamond .sp-ext-crd-item:not(:last-child)::after{transform:translate(50%,50%) rotate(45deg)}}
.sp-ext-crd--zine .sp-ext-crd-item.sp-card-zflip{flex-direction:row-reverse}.sp-ext-crd--zine.sp-ext-crd--zflip .sp-ext-crd-item.sp-card-zflip{flex-direction:row}
.sp-ext-crd--zine.sp-ext-crd--alternate-left .sp-ext-crd-item:nth-child(even),.sp-ext-crd--zine.sp-ext-crd--alternate-right .sp-ext-crd-item:nth-child(odd){flex-direction:row-reverse}.sp-ext-crd--zine.sp-ext-crd--alternate-left .sp-ext-crd-item:nth-child(even).sp-card-zflip,.sp-ext-crd--zine.sp-ext-crd--alternate-right .sp-ext-crd-item:nth-child(odd).sp-card-zflip{flex-direction:row}.sp-ext-crd--zine.sp-ext-crd--alternate-left .sp-ext-crd-item:nth-child(odd).sp-card-zflip,.sp-ext-crd--zine.sp-ext-crd--alternate-right .sp-ext-crd-item:nth-child(even).sp-card-zflip{flex-direction:row-reverse}
@media(max-width:768px){.sp-ext-crd--zine .sp-ext-crd-grid{grid-template-columns:1fr}.sp-ext-crd--zine .sp-ext-crd-item{flex-direction:column}.sp-ext-crd--zine .sp-ext-crd-thumb{width:100%;max-width:none;aspect-ratio:16/9;min-height:0}.sp-ext-crd--zine .sp-ext-crd-content{padding:28px 24px}}
@media(max-width:768px){.sp-ext-crd--zine .sp-ext-crd-item.sp-card-zflip,.sp-ext-crd--zine.sp-ext-crd--zflip .sp-ext-crd-item.sp-card-zflip,.sp-ext-crd--zine.sp-ext-crd--alternate-left .sp-ext-crd-item,.sp-ext-crd--zine.sp-ext-crd--alternate-right .sp-ext-crd-item{flex-direction:column!important}.sp-ext-crd--zine .sp-ext-crd-item .sp-ext-crd-thumb{order:1!important}.sp-ext-crd--zine .sp-ext-crd-item .sp-ext-crd-content{order:2!important}}
/* 웹진형 + 원본(imgorig) — 이미지 칸 폭(zine_w)은 유지하되 비율강제·크롭 없이 원본 그대로(세로 자동). PC/모바일 동일.
   (기본 imgorig 규칙은 :not(zine) 라 제외되므로 웹진형 전용으로 별도 처리 — 원본 눌러도 안 먹던 버그) */
.sp-ext-crd--zine.sp-ext-crd--imgorig .sp-ext-crd-thumb{aspect-ratio:auto;min-height:0;align-self:flex-start}
.sp-ext-crd--zine.sp-ext-crd--imgorig .sp-ext-crd-thumb img,.sp-ext-crd--zine.sp-ext-crd--imgorig .sp-ext-crd-thumb video{position:static;width:100%;height:auto;object-fit:initial}
/* 내부 텍스트 카드형(overlay) — 이미지 위에 텍스트 오버레이 */
/* 오버레이(내부 텍스트) — 이미지가 카드를 absolute 로 채우므로, 이미지 모양 옵션은 '카드 박스' 비율로 적용.
   비율 지정 시 min-height 바닥을 풀어(--sp-crd-ov-minh:0) 비율이 높이를 결정하게 함 */
.sp-ext-crd--overlay .sp-ext-crd-item{min-height:var(--sp-crd-ov-minh,clamp(300px,30vw,420px));aspect-ratio:var(--sp-crd-img-ratio,auto)}
.sp-ext-crd--overlay .sp-ext-crd-thumb{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;width:100%;height:100%;aspect-ratio:auto}
.sp-ext-crd--overlay .sp-ext-crd-item::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;inset:0;background:linear-gradient(180deg,transparent 0%,var(--sp-crd-card-overlay,rgba(0,0,0,.78)) 100%);z-index:1;pointer-events:none}
.sp-ext-crd--overlay .sp-ext-crd-content{position:relative;z-index:2;justify-content:flex-end}
.sp-ext-crd--overlay .sp-ext-crd-num{opacity:.55;color:var(--sp-crd-card-text,#fff)}
.sp-ext-crd--overlay .sp-ext-crd-title,.sp-ext-crd--overlay .sp-ext-crd-sub,.sp-ext-crd--overlay .sp-ext-crd-body,.sp-ext-crd--overlay .sp-ext-crd-tag{color:var(--sp-crd-card-text,#fff)}
.sp-ext-crd-common.sp-ext-crd--overlay .sp-ext-crd-tag{padding-left:0;padding-right:0;border-left:0;border-right:0}
.sp-ext-crd-common.sp-ext-crd--stagger .sp-ext-crd-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--sty-card-gap,clamp(24px,4vw,56px))}.sp-ext-crd--stagger .sp-crd-stagger-col{display:flex;min-width:0;flex-direction:column;gap:var(--sty-card-gap,clamp(24px,4vw,56px))}.sp-ext-crd--stagger .sp-ext-crd-item{width:100%;margin:0!important}.sp-ext-crd--stagger-left .sp-crd-stagger-col:nth-child(2),.sp-ext-crd--stagger-right .sp-crd-stagger-col:nth-child(1){padding-top:var(--sp-crd-stagger-offset,120px)}@media(max-width:768px){.sp-ext-crd-common.sp-ext-crd--stagger .sp-ext-crd-grid{grid-template-columns:1fr}.sp-ext-crd--stagger .sp-crd-stagger-col{display:contents}.sp-ext-crd--stagger-left .sp-crd-stagger-col:nth-child(2),.sp-ext-crd--stagger-right .sp-crd-stagger-col:nth-child(1){padding-top:0}.sp-ext-crd--stagger .sp-ext-crd-item{margin:0!important}}
/* 방문자 화면은 편집기처럼 카드를 좌/우 column div 로 재구성하지 않을 수 있다.
   그 경우에도 직속 카드의 홀짝에 동일한 높이차를 적용해 교차 디자인을 보장한다. */
@media(min-width:769px){.sp-ext-crd--stagger-left .sp-ext-crd-grid>.sp-ext-crd-item:nth-child(even){margin-top:var(--sp-crd-stagger-offset,120px)!important}.sp-ext-crd--stagger-right .sp-ext-crd-grid>.sp-ext-crd-item:nth-child(odd){margin-top:var(--sp-crd-stagger-offset,120px)!important}}
.sp-ext-crd--overlay .sp-ext-crd-item:hover .sp-ext-crd-thumb img{transform:none}
/* 편집모드 복구 — body.sp-edit .sp-imgf{position:relative}(이미지 편집표시용)가 특이도로 overlay/icon
   썸네일의 absolute 를 덮어써, 썸네일이 흐름에 끼어들며 overlay 카드(overflow:hidden)가 텍스트를 잘라
   편집 불가하던 버그 복구. overlay 는 빈 영역 클릭이 이미지 교체로 가도록 content 통과(텍스트 필드는 편집 유지) */
body.sp-edit .sp-ext-crd--overlay .sp-ext-crd-thumb,
body.sp-edit .sp-ext-crd--icon .sp-ext-crd-thumb{position:absolute}
body.sp-edit .sp-ext-crd--overlay .sp-ext-crd-content{pointer-events:none}
body.sp-edit .sp-ext-crd--overlay .sp-ext-crd-content [data-ext-field]{pointer-events:auto}
/* 오버레이 + 원본(imgorig) — 카드를 이미지 자연 비율로(크롭 없음), 텍스트는 이미지 위 오버레이 유지.
   (기본 imgorig 규칙은 :not(overlay) 라 제외되므로 오버레이 전용으로 별도 처리) */
.sp-ext-crd--overlay.sp-ext-crd--imgorig .sp-ext-crd-item{min-height:0;aspect-ratio:auto}
.sp-ext-crd--overlay.sp-ext-crd--imgorig .sp-ext-crd-thumb{position:relative;height:auto;aspect-ratio:auto}
.sp-ext-crd--overlay.sp-ext-crd--imgorig .sp-ext-crd-thumb img,
.sp-ext-crd--overlay.sp-ext-crd--imgorig .sp-ext-crd-thumb video{position:static;width:100%;height:auto;object-fit:initial}
.sp-ext-crd--overlay.sp-ext-crd--imgorig .sp-ext-crd-content{position:absolute;top:0;right:0;bottom:0;left:0;inset:0}
body.sp-edit .sp-ext-crd--overlay.sp-ext-crd--imgorig .sp-ext-crd-thumb{position:relative}
/* 원본 카드는 그리드가 행 높이로 늘려(stretch) 이미지가 잘려 보이지 않도록, 각 카드가 제 높이를 갖게 함 */
.sp-ext-crd--imgorig .sp-ext-crd-grid{align-items:start}
/* 텍스트 나열형(text) — 이미지 없이 텍스트만 */
.sp-ext-crd--text .sp-ext-crd-thumb{display:none}
.sp-ext-crd--text .sp-ext-crd-content{padding:clamp(28px,3vw,40px) clamp(28px,4vw,48px)}
/* 이미지+텍스트형 — 기존 side_media 업로더와 자유 분할 옵션을 사용하는 PT01 대체 프리셋. */
.sp-ext-crd--image-text.sp-ext-crd--side .sp-b{align-items:center}.sp-ext-crd--image-text .sp-ext-crd-grid,.sp-ext-crd--image-text .sp-ext-crd-slider,.sp-ext-crd--image-text .sp-ext-additem{display:none}.sp-ext-crd-common.sp-ext-crd--image-text .sp-ext-crd-grid{display:grid;margin-top:clamp(28px,4vw,52px)}.sp-ext-crd-common.sp-ext-crd--image-text .sp-ext-crd-slider{display:block;margin-top:clamp(28px,4vw,52px)}.sp-ext-crd-common.sp-ext-crd--image-text .sp-ext-additem{display:inline-flex}.sp-ext-crd--image-text .sp-ext-crd-desc{max-width:760px}.sp-ext-crd--image-text .sp-ext-crd-side{min-height:clamp(420px,55vw,780px)}
/* 원형 카드 — 채워진 원 안에 텍스트 중앙정렬, 이미지 없음 (레퍼런스) */
.sp-ext-crd--circle .sp-ext-crd-grid{gap:var(--sty-card-gap,24px);margin-top:48px;align-items:start}
.sp-ext-crd--circle .sp-ext-crd-thumb{display:none}
.sp-ext-crd--circle .sp-ext-crd-item{aspect-ratio:1/1;border-radius:50%;background:var(--sp-card-bg,var(--sp-bg3,#d8d2c8));overflow:hidden;align-items:center;justify-content:center}
.sp-ext-crd--circle .sp-ext-crd-content{display:flex;flex-direction:column;justify-content:center;align-items:var(--sp-crd-card-ai,center);text-align:var(--sp-crd-card-ta,center);gap:6px;width:100%;height:100%;padding:14% 16%}
.sp-ext-crd--circle .sp-ext-crd-num{display:none}
.sp-ext-crd--circle .sp-ext-crd-tag{display:none}
.sp-ext-crd--circle .sp-ext-crd-title{margin:0;line-height:1.5}
.sp-ext-crd--circle .sp-ext-crd-body{line-height:1.55}
@media(max-width:900px){.sp-ext-crd--circle .sp-ext-crd-grid{grid-template-columns:repeat(var(--sp-cols-mo,2),1fr)}}
@media(max-width:768px){.sp-ext-crd--circle .sp-ext-crd-content{padding:12% 14%}}
/* 아이콘형 — 카드 이미지를 우상단 작은 아이콘으로 + 좌측 텍스트 + 하단 구분선 + 배경 없음 (스크린샷 스타일) */
.sp-ext-crd--icon .sp-ext-crd-grid{gap:var(--sty-card-gap,44px) 56px}
.sp-ext-crd--icon .sp-ext-crd-item{display:block;background:var(--sp-card-bg,transparent);border-radius:0;overflow:visible;border-bottom:1px solid var(--sp-line);padding:6px 0 30px}
.sp-ext-crd--icon .sp-ext-crd-thumb{position:absolute;top:2px;right:0;width:var(--sp-crd-ico-size,66px);height:var(--sp-crd-ico-size,66px);aspect-ratio:auto;border-radius:0;background:transparent;overflow:visible}
.sp-ext-crd--icon .sp-ext-crd-thumb img,.sp-ext-crd--icon .sp-ext-crd-thumb video{position:static;width:100%;height:100%;object-fit:contain}
.sp-ext-crd--icon .sp-ext-crd-thumb-ph{display:none}
.sp-ext-crd--icon .sp-ext-crd-content{padding:0}
.sp-ext-crd--icon .sp-ext-crd-title{padding-right:84px}
body.sp-edit .sp-ext-crd--icon .sp-ext-crd-thumb{outline:1px dashed rgba(124,58,237,.4);outline-offset:3px;min-height:44px}
@media(max-width:768px){.sp-ext-crd--icon .sp-ext-crd-thumb{width:calc(var(--sp-crd-ico-size,66px)*.8);height:calc(var(--sp-crd-ico-size,66px)*.8)}.sp-ext-crd--icon .sp-ext-crd-title{padding-right:60px}}
/* 요소 on/off */
.sp-ext-crd--no-tag .sp-ext-crd-tag{display:none}
.sp-ext-crd--no-num .sp-ext-crd-num{display:none}
/* 원형 숫자 배지(numbadge) — 텍스트/웹진 나열 카드에서 큰 반투명 번호 대신 작은 원형 배지. num 숨김 옵션보다 우선 */
.sp-ext-crd--numbadge .sp-ext-crd-num,
.sp-ext-crd--numbadge.sp-ext-crd--no-num .sp-ext-crd-num{display:inline-flex;align-items:center;justify-content:center;width:var(--sp-crd-numbadge-size,34px);height:var(--sp-crd-numbadge-size,34px);min-width:var(--sp-crd-numbadge-size,34px);margin:0 0 14px;font-size:14px;font-weight:600;line-height:1;opacity:1;color:var(--sp-crd-numbadge-fg,#fff);background:var(--sp-crd-numbadge-bg,var(--sp-text,#1a1a1a));border-radius:50%}
/* 텍스트형 + 배지 — 번호를 제목 왼쪽에 인라인 배치, 본문은 그 아래 전폭 (스크린샷 레이아웃) */
.sp-ext-crd--numbadge.sp-ext-crd--text .sp-ext-crd-content{display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center}
.sp-ext-crd--numbadge.sp-ext-crd--text .sp-ext-crd-num{grid-column:1;grid-row:1;margin:0}
.sp-ext-crd--numbadge.sp-ext-crd--text .sp-ext-crd-tag,
.sp-ext-crd--numbadge.sp-ext-crd--text .sp-ext-crd-title{grid-column:2;grid-row:1;margin:0}
.sp-ext-crd--numbadge.sp-ext-crd--text .sp-ext-crd-body,
.sp-ext-crd--numbadge.sp-ext-crd--text .sp-ext-crd-checks{grid-column:1/-1;grid-row:2;margin-top:12px}
.sp-ext-crd-common.sp-ext-crd--num-circle .sp-ext-crd-num,.sp-ext-crd-common.sp-ext-crd--num-square .sp-ext-crd-num{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;opacity:1;border:1px solid currentColor}.sp-ext-crd-common.sp-ext-crd--num-circle .sp-ext-crd-num{border-radius:50%}.sp-ext-crd-common.sp-ext-crd--num-square .sp-ext-crd-num{border-radius:8px;background:var(--sp-text);color:#fff}.sp-ext-crd-common.sp-ext-crd--num-outline .sp-ext-crd-num{width:58px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid currentColor;border-radius:999px;font-size:12px;letter-spacing:.1em;opacity:1}.sp-ext-crd-common.sp-ext-crd--num-underline .sp-ext-crd-num{position:relative;display:inline-flex;width:max-content;padding:0 2px 9px;border:0;font-size:15px;letter-spacing:.12em;opacity:1}.sp-ext-crd-common.sp-ext-crd--num-underline .sp-ext-crd-num:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--index_color,var(--main,var(--hv-main,currentColor)));border-radius:2px}.sp-ext-crd-common.sp-ext-crd--num-background .sp-ext-crd-num{position:absolute;right:16px;bottom:4px;font-size:clamp(72px,9vw,140px);opacity:.055;margin:0}.sp-ext-crd-common.sp-ext-crd--num-step .sp-ext-crd-num:before{content:'STEP ';font-size:10px;margin-right:4px}.sp-ext-crd--numpos-top_right .sp-ext-crd-num{align-self:flex-end}.sp-ext-crd--numpos-center .sp-ext-crd-num{align-self:center}.sp-ext-crd--numpos-title .sp-ext-crd-content{display:grid;grid-template-columns:auto 1fr;gap:12px}.sp-ext-crd--numpos-title .sp-ext-crd-title{grid-column:2}.sp-ext-crd--numpos-title .sp-ext-crd-body{grid-column:1/-1}
.sp-ext-crd-common.sp-ext-crd--num-small_center .sp-ext-crd-num{display:flex;align-items:center;justify-content:center;align-self:center;width:auto;height:auto;margin:0 auto 12px;font-size:12px;font-weight:400;letter-spacing:.14em;line-height:1;opacity:.72;color:var(--index_color,var(--sp-text))}.sp-ext-crd-common.sp-ext-crd--num-mini_circle .sp-ext-crd-num{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:28px;height:28px;min-width:28px;margin:0 auto 12px;border:1px solid color-mix(in srgb,var(--index_color,var(--sp-text)) 55%,transparent);border-radius:50%;font-size:10px;font-weight:400;letter-spacing:.05em;line-height:1;opacity:1;color:var(--index_color,var(--sp-text));background:transparent}.sp-ext-crd-common.sp-ext-crd--num-soft_badge .sp-ext-crd-num{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-width:44px;height:26px;padding:0 11px;margin:0 0 12px;border:0;border-radius:999px;font-size:10px;font-weight:400;letter-spacing:.08em;line-height:1;opacity:1;color:var(--index_color,var(--sp-text));background:color-mix(in srgb,var(--index_color,var(--sp-text)) 12%,transparent)}.sp-ext-crd-common.sp-ext-crd--num-side_line .sp-ext-crd-num{display:flex;align-items:center;justify-content:center;align-self:center;width:min(100%,150px);gap:10px;margin:0 auto 14px;font-size:11px;font-weight:400;letter-spacing:.12em;line-height:1;opacity:.8;color:var(--index_color,var(--sp-text))}.sp-ext-crd-common.sp-ext-crd--num-side_line .sp-ext-crd-num:before,.sp-ext-crd-common.sp-ext-crd--num-side_line .sp-ext-crd-num:after{content:'';display:block;flex:1;height:1px;background:currentColor;opacity:.28}.sp-ext-crd-common.sp-ext-crd--num-bracket .sp-ext-crd-num{display:inline-flex;width:max-content;margin:0 0 12px;font-size:12px;font-weight:400;letter-spacing:.1em;line-height:1;opacity:.8;color:var(--index_color,var(--sp-text))}.sp-ext-crd-common.sp-ext-crd--num-bracket .sp-ext-crd-num:before{content:'[';margin-right:5px}.sp-ext-crd-common.sp-ext-crd--num-bracket .sp-ext-crd-num:after{content:']';margin-left:5px}
.sp-ext-crd--numpos-title.sp-ext-crd--all-off-number .sp-ext-crd-content,.sp-ext-crd--numpos-title .sp-card-off-number .sp-ext-crd-content{display:flex;gap:0}.sp-ext-crd--numpos-title.sp-ext-crd--all-off-number .sp-ext-crd-title,.sp-ext-crd--numpos-title .sp-card-off-number .sp-ext-crd-title{grid-column:auto}
.sp-ext-crd-card-config{display:none}body.sp-edit .sp-ext-crd-card-config{display:block;position:absolute;left:8px;top:8px;z-index:15;border:0;border-radius:5px;background:#111827;color:#fff;padding:5px 8px;font-size:10px;cursor:pointer}.sp-ext-crd-card-action{position:absolute;inset:0;z-index:8;border:0;background:transparent;cursor:pointer}.sp-ext-crd-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:clamp(24px,3vw,42px) 0 0}.sp-ext-crd-tabs button{border:1px solid var(--sp-line);background:transparent;padding:10px 18px;cursor:pointer;color:inherit}.sp-ext-crd--tabs-pill .sp-ext-crd-tabs button{border-radius:999px}.sp-ext-crd--tabs-segment .sp-ext-crd-tabs{display:inline-flex;padding:4px;background:var(--sp-bg3);border-radius:12px}.sp-ext-crd--tabs-segment .sp-ext-crd-tabs button{border:0;border-radius:9px}.sp-ext-crd--tabs-underline .sp-ext-crd-tabs button{border-width:0 0 2px}.sp-ext-crd-tabs button[aria-selected="true"]{background:var(--sp-text);color:var(--sp-bg)}.sp-ext-crd--tabs .sp-ext-crd-item[hidden]{display:none!important}
/* 공통 카드 탭 — 프리셋별 형태·호버·활성 상태를 명확히 분리 */
.sp-ext-crd-common .sp-ext-crd-tabs{gap:10px;align-items:center}.sp-ext-crd-common .sp-ext-crd-tabs button{position:relative;min-height:42px;border:0;padding:10px 18px;background:transparent;color:var(--sp-muted);font-weight:600;transition:color .25s,background .25s,border-color .25s,box-shadow .25s,transform .25s}.sp-ext-crd-common .sp-ext-crd-tabs button:hover{color:var(--sp-text);transform:translateY(-2px)}
.sp-ext-crd-common.sp-ext-crd--tabs-pill .sp-ext-crd-tabs button{border-radius:999px;background:var(--sp-bg3)}.sp-ext-crd-common.sp-ext-crd--tabs-pill .sp-ext-crd-tabs button[aria-selected="true"]{background:var(--sp-text);color:var(--sp-bg);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.sp-ext-crd-common.sp-ext-crd--tabs-segment .sp-ext-crd-tabs{display:inline-flex;gap:2px;padding:5px;border:1px solid var(--sp-line);border-radius:14px;background:var(--sp-bg3)}.sp-ext-crd-common.sp-ext-crd--tabs-segment .sp-ext-crd-tabs button{border-radius:10px}.sp-ext-crd-common.sp-ext-crd--tabs-segment .sp-ext-crd-tabs button[aria-selected="true"]{background:var(--sp-bg);color:var(--sp-text);box-shadow:0 3px 14px rgba(0,0,0,.12)}
.sp-ext-crd-common.sp-ext-crd--tabs-underline .sp-ext-crd-tabs{gap:clamp(20px,4vw,52px);border-bottom:1px solid var(--sp-line)}.sp-ext-crd-common.sp-ext-crd--tabs-underline .sp-ext-crd-tabs button{padding:12px 2px 15px;border-radius:0}.sp-ext-crd-common.sp-ext-crd--tabs-underline .sp-ext-crd-tabs button::after{content:"";position:absolute;left:50%;right:50%;bottom:-1px;height:2px;background:var(--sp-gold);transition:left .3s,right .3s}.sp-ext-crd-common.sp-ext-crd--tabs-underline .sp-ext-crd-tabs button[aria-selected="true"]{background:transparent;color:var(--sp-text)}.sp-ext-crd-common.sp-ext-crd--tabs-underline .sp-ext-crd-tabs button[aria-selected="true"]::after{left:0;right:0}
.sp-ext-crd-common.sp-ext-crd--tabs-box .sp-ext-crd-tabs{gap:0}.sp-ext-crd-common.sp-ext-crd--tabs-box .sp-ext-crd-tabs button{border:1px solid var(--sp-line);border-radius:0;margin-left:-1px}.sp-ext-crd-common.sp-ext-crd--tabs-box .sp-ext-crd-tabs button:first-child{margin-left:0}.sp-ext-crd-common.sp-ext-crd--tabs-box .sp-ext-crd-tabs button[aria-selected="true"]{z-index:1;background:transparent;color:var(--sp-text);border-color:var(--sp-text);box-shadow:inset 0 0 0 1px var(--sp-text)}
.sp-ext-crd-common.sp-ext-crd--tabs-soft .sp-ext-crd-tabs button{border-radius:12px;background:color-mix(in srgb,var(--sp-gold) 8%,transparent)}.sp-ext-crd-common.sp-ext-crd--tabs-soft .sp-ext-crd-tabs button[aria-selected="true"]{background:color-mix(in srgb,var(--sp-gold) 18%,var(--sp-bg));color:var(--sp-text);box-shadow:0 10px 30px color-mix(in srgb,var(--sp-gold) 18%,transparent)}
.sp-ext-crd-common.sp-ext-crd--tabs-editorial .sp-ext-crd-tabs{gap:0}.sp-ext-crd-common.sp-ext-crd--tabs-editorial .sp-ext-crd-tabs button{padding:8px clamp(16px,3vw,34px);font-family:var(--font-en,var(--font-pret));font-size:clamp(16px,2vw,24px);font-weight:400}.sp-ext-crd-common.sp-ext-crd--tabs-editorial .sp-ext-crd-tabs button+button::before{content:"";position:absolute;left:0;top:25%;bottom:25%;width:1px;background:var(--sp-line)}.sp-ext-crd-common.sp-ext-crd--tabs-editorial .sp-ext-crd-tabs button[aria-selected="true"]{background:transparent;color:var(--sp-gold);font-style:italic}
.sp-ext-crd-common.sp-ext-crd--tabs-vertical .sp-ext-crd-tabs{width:min(100%,280px);flex-direction:column;align-items:stretch;gap:0;border-left:1px solid var(--sp-line)}.sp-ext-crd-common.sp-ext-crd--tabs-vertical .sp-ext-crd-tabs button{text-align:left;border-radius:0;padding:13px 18px}.sp-ext-crd-common.sp-ext-crd--tabs-vertical .sp-ext-crd-tabs button[aria-selected="true"]{background:var(--sp-bg3);color:var(--sp-text);box-shadow:inset 3px 0 0 var(--sp-gold)}
.sp-ext-crd-common.sp-ext-crd--tabs-glass .sp-ext-crd-tabs{display:inline-flex;padding:6px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:rgba(255,255,255,.25);backdrop-filter:blur(14px);box-shadow:0 12px 38px rgba(0,0,0,.08)}.sp-ext-crd-common.sp-ext-crd--tabs-glass .sp-ext-crd-tabs button{border-radius:999px}.sp-ext-crd-common.sp-ext-crd--tabs-glass .sp-ext-crd-tabs button[aria-selected="true"]{background:rgba(255,255,255,.82);color:#222;box-shadow:0 4px 14px rgba(0,0,0,.1)}
.sp-ext-crd-common .sp-ext-crd-item{transition:transform .38s cubic-bezier(.2,.75,.25,1),border-color .3s}.sp-ext-crd-common .sp-ext-crd-thumb{transition:border-radius .42s,border-color .32s}.sp-ext-crd-common .sp-ext-crd-thumb img,.sp-ext-crd-common .sp-ext-crd-thumb video{transition:transform .65s cubic-bezier(.2,.75,.25,1),filter .4s}.sp-ext-crd-common .sp-ext-crd-thumb::before{content:"";position:absolute;inset:0;z-index:2;background:var(--sp-gold);opacity:0;pointer-events:none;transition:opacity .4s}.sp-ext-crd-common.sp-ext-crd--hover-lift .sp-ext-crd-item:hover{transform:translateY(-6px)}.sp-ext-crd-common.sp-ext-crd--hover-zoom .sp-ext-crd-item:hover .sp-ext-crd-thumb img,.sp-ext-crd-common.sp-ext-crd--hover-zoom .sp-ext-crd-item:hover .sp-ext-crd-thumb video{transform:scale(1.075)}.sp-ext-crd-common.sp-ext-crd--hover-image_overlay .sp-ext-crd-item:hover .sp-ext-crd-thumb::before{opacity:.18}.sp-ext-crd-common.sp-ext-crd--hover-image_overlay .sp-ext-crd-item:hover .sp-ext-crd-thumb img,.sp-ext-crd-common.sp-ext-crd--hover-image_overlay .sp-ext-crd-item:hover .sp-ext-crd-thumb video{transform:scale(1.035)}.sp-ext-crd-common.sp-ext-crd--hover-image_round .sp-ext-crd-item:hover .sp-ext-crd-thumb{border-radius:clamp(18px,3vw,36px)}.sp-ext-crd-common.sp-ext-crd--hover-image_border .sp-ext-crd-thumb{border:1px solid transparent}.sp-ext-crd-common.sp-ext-crd--hover-image_border .sp-ext-crd-item:hover .sp-ext-crd-thumb{border-color:var(--sp-gold)}.sp-ext-crd-common.sp-ext-crd--hover-outline .sp-ext-crd-item:hover{border-color:var(--sp-gold);box-shadow:inset 0 0 0 1px var(--sp-gold)}
.sp-ext-crd-common.sp-ext-crd--padding-compact .sp-ext-crd-content{padding:18px 16px}.sp-ext-crd-common.sp-ext-crd--padding-none .sp-ext-crd-content{padding:0}
.sp-ext-crd-common:not(.sp-ext-crd--zine) .sp-ext-crd-thumb{width:var(--sp-crd-quick-img-w,100%);max-width:var(--sp-crd-quick-img-mw,none);margin-top:var(--sp-crd-quick-img-mt,0);margin-bottom:var(--sp-crd-quick-img-mb,0)}.sp-ext-crd-common.sp-ext-crd--imgalign-left .sp-ext-crd-thumb{align-self:flex-start}.sp-ext-crd-common.sp-ext-crd--imgalign-center .sp-ext-crd-thumb{align-self:center}.sp-ext-crd-common.sp-ext-crd--imgalign-right .sp-ext-crd-thumb{align-self:flex-end}
@media(max-width:768px){.sp-ext-crd-common:not(.sp-ext-crd--zine) .sp-ext-crd-thumb{width:var(--sp-crd-quick-img-w-mo,var(--sp-crd-quick-img-w,100%))}}
.sp-ext-crd-common[class*="sp-ext-crd--pady-"] .sp-ext-crd-content{box-sizing:border-box;padding-top:var(--sp-crd-pad-y,32px);padding-bottom:var(--sp-crd-pad-y,32px)}.sp-ext-crd-common[class*="sp-ext-crd--padx-"] .sp-ext-crd-content{box-sizing:border-box;padding-left:var(--sp-crd-pad-x,32px);padding-right:var(--sp-crd-pad-x,32px)}.sp-ext-crd--pady-0{--sp-crd-pad-y:0px;--sp-crd-pad-y-mo:0px}.sp-ext-crd--pady-8{--sp-crd-pad-y:8px;--sp-crd-pad-y-mo:4px}.sp-ext-crd--pady-16{--sp-crd-pad-y:16px;--sp-crd-pad-y-mo:8px}.sp-ext-crd--pady-24{--sp-crd-pad-y:24px;--sp-crd-pad-y-mo:12px}.sp-ext-crd--pady-32{--sp-crd-pad-y:32px;--sp-crd-pad-y-mo:16px}.sp-ext-crd--pady-40{--sp-crd-pad-y:40px;--sp-crd-pad-y-mo:20px}.sp-ext-crd--pady-48{--sp-crd-pad-y:48px;--sp-crd-pad-y-mo:24px}.sp-ext-crd--pady-64{--sp-crd-pad-y:64px;--sp-crd-pad-y-mo:32px}.sp-ext-crd--padx-0{--sp-crd-pad-x:0px;--sp-crd-pad-x-mo:0px}.sp-ext-crd--padx-8{--sp-crd-pad-x:8px;--sp-crd-pad-x-mo:4px}.sp-ext-crd--padx-16{--sp-crd-pad-x:16px;--sp-crd-pad-x-mo:8px}.sp-ext-crd--padx-24{--sp-crd-pad-x:24px;--sp-crd-pad-x-mo:12px}.sp-ext-crd--padx-32{--sp-crd-pad-x:32px;--sp-crd-pad-x-mo:16px}.sp-ext-crd--padx-40{--sp-crd-pad-x:40px;--sp-crd-pad-x-mo:20px}.sp-ext-crd--padx-48{--sp-crd-pad-x:48px;--sp-crd-pad-x-mo:24px}.sp-ext-crd--padx-64{--sp-crd-pad-x:64px;--sp-crd-pad-x-mo:32px}@media(max-width:768px){.sp-ext-crd-common[class*="sp-ext-crd--pady-"] .sp-ext-crd-content{padding-top:var(--sp-crd-pad-y-mo,16px);padding-bottom:var(--sp-crd-pad-y-mo,16px)}.sp-ext-crd-common[class*="sp-ext-crd--padx-"] .sp-ext-crd-content{padding-left:var(--sp-crd-pad-x-mo,16px);padding-right:var(--sp-crd-pad-x-mo,16px)}}
.sp-ext-crd-common.sp-ext-crd--padding-none .sp-ext-crd-content{padding:0!important}
.sp-ext-crd-common.sp-ext-crd--media-text_top .sp-ext-crd-content{order:1}.sp-ext-crd-common.sp-ext-crd--media-text_top .sp-ext-crd-thumb{order:2}.sp-ext-crd-common.sp-ext-crd--media-image_left .sp-ext-crd-item,.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-item{flex-direction:row;align-items:stretch}.sp-ext-crd-common.sp-ext-crd--media-image_left .sp-ext-crd-thumb,.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-thumb{width:50%;aspect-ratio:auto;min-height:260px}.sp-ext-crd-common.sp-ext-crd--media-image_left .sp-ext-crd-content,.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-content{width:50%;justify-content:center}.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-thumb{order:2}.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-content{order:1}@media(max-width:768px){.sp-ext-crd-common.sp-ext-crd--media-image_left .sp-ext-crd-item,.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-item{flex-direction:column}.sp-ext-crd-common.sp-ext-crd--media-image_left .sp-ext-crd-thumb,.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-thumb,.sp-ext-crd-common.sp-ext-crd--media-image_left .sp-ext-crd-content,.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-content{width:100%}.sp-ext-crd-common.sp-ext-crd--media-image_left .sp-ext-crd-thumb,.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-thumb{min-height:0;aspect-ratio:16/10}.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-thumb{order:2}.sp-ext-crd-common.sp-ext-crd--media-image_right .sp-ext-crd-content{order:1}}
.sp-ext-crd-link-button{position:relative;z-index:7;display:flex;width:max-content;align-items:center;justify-content:center;gap:10px;margin-top:clamp(18px,2vw,28px);min-height:44px;padding:10px 20px;border:1px solid var(--sp-text);background:var(--sp-text);color:var(--sp-bg);font-size:14px;font-weight:600;line-height:1.2;transition:transform .25s,background .25s,color .25s,border-color .25s;pointer-events:none}.sp-ext-crd-item:hover .sp-ext-crd-link-button{transform:translateY(-2px)}.sp-ext-crd--btn-outline .sp-ext-crd-link-button{background:transparent;color:inherit}.sp-ext-crd--btn-arrow .sp-ext-crd-link-button{min-height:0;padding:5px 0;border-width:0 0 1px;background:transparent;color:inherit}.sp-ext-crd--btn-arrow .sp-ext-crd-link-button i{transition:transform .25s}.sp-ext-crd--btn-arrow .sp-ext-crd-item:hover .sp-ext-crd-link-button i{transform:translateX(5px)}.sp-ext-crd--btn-pill .sp-ext-crd-link-button{border-radius:999px;padding-inline:24px}.sp-ext-crd--btn-circle .sp-ext-crd-link-button{width:48px;height:48px;min-height:48px;padding:0;border-radius:50%}.sp-ext-crd--btn-circle .sp-ext-crd-link-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.sp-ext-crd--btn-circle .sp-ext-crd-link-button i{font-size:20px}.sp-ext-crd--btn-align-center .sp-ext-crd-link-button{margin-inline:auto}.sp-ext-crd--btn-align-right .sp-ext-crd-link-button{margin-left:auto}
.sp-crd-part-tools{position:absolute;z-index:18;left:8px;right:8px;top:38px;display:flex;flex-wrap:wrap;gap:4px;pointer-events:auto}.sp-crd-part-tools button{border:1px solid rgba(17,24,39,.18);border-radius:999px;background:rgba(255,255,255,.94);color:#111827;padding:4px 7px;font-size:9px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.08)}.sp-crd-part-tools button b{font-size:11px;color:#dc2626}.sp-crd-part-tools button.is-off{background:#374151;color:#fff;opacity:.88}.sp-crd-part-tools button.is-off b{color:#86efac}.sp-card-off-image .sp-ext-crd-thumb,.sp-card-off-number .sp-ext-crd-num,.sp-card-off-tag .sp-ext-crd-tag,.sp-card-off-title .sp-ext-crd-title,.sp-card-off-body .sp-ext-crd-body,.sp-card-off-body .sp-ext-crd-checks{display:none!important}body.sp-edit .sp-card-off-image .sp-ext-crd-thumb,body.sp-edit .sp-card-off-number .sp-ext-crd-num,body.sp-edit .sp-card-off-tag .sp-ext-crd-tag,body.sp-edit .sp-card-off-title .sp-ext-crd-title,body.sp-edit .sp-card-off-body .sp-ext-crd-body,body.sp-edit .sp-card-off-body .sp-ext-crd-checks{display:block!important;opacity:.14;filter:grayscale(1)}
.sp-crd-item-flip{display:none}body.sp-edit .sp-ext-crd-common.sp-ext-crd--zine .sp-crd-item-flip{display:block;position:absolute;z-index:19;right:8px;bottom:8px;border:1px solid rgba(17,24,39,.2);border-radius:999px;background:rgba(255,255,255,.94);color:#111827;padding:6px 10px;font-size:10px;font-weight:700;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.1)}body.sp-edit .sp-ext-crd-common.sp-ext-crd--zine .sp-crd-item-flip.is-on{background:#7c3aed;border-color:#7c3aed;color:#fff}
.sp-crd-global-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:18px 0 12px;padding:9px 10px;border:1px dashed rgba(17,24,39,.22);border-radius:10px;background:rgba(255,255,255,.88);position:relative;z-index:20;grid-column:1/-1!important;width:100%!important;max-width:none!important;box-sizing:border-box;order:initial!important;align-self:auto!important}.sp-crd-global-tools>span{margin-right:4px;font-size:11px;font-weight:700;color:#6b7280}.sp-crd-global-tools>i{width:1px;height:26px;margin:0 4px;background:#d1d5db}.sp-crd-global-tools button{display:inline-flex;align-items:center;gap:6px;border:1px solid #d1d5db;border-radius:999px;background:#fff;color:#111827;padding:6px 10px;font-size:11px;font-weight:700;cursor:pointer}.sp-crd-global-tools button b{color:#dc2626;font-size:13px;line-height:1}.sp-crd-global-tools button.is-off{border-color:#374151;background:#374151;color:#fff}.sp-crd-global-tools button.is-off b{color:#86efac}.sp-crd-global-tools button.is-on{border-color:#6366f1;background:#6366f1;color:#fff}.sp-crd-global-tools label{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;color:#6b7280}.sp-crd-global-tools select{border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827;padding:5px 7px;font-size:11px}
.sp-crd-global-tools input[type=text]{width:190px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827;padding:5px 7px;font-size:11px}.sp-crd-global-tools input[type=color]{width:32px;height:28px;padding:2px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer}
.sp-crd-tools-accordion{grid-column:1/-1;width:100%;margin:22px 0 18px;border:1px solid #d7dbe2;border-radius:12px;background:#f8fafc;overflow:hidden;position:relative;z-index:30;box-sizing:border-box}.sp-crd-tools-title{padding:12px 14px;background:#111827;color:#fff;font-size:12px;font-weight:800;letter-spacing:-.01em}.sp-crd-tools-accordion .sp-crd-global-tools{display:flex!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;border-top:1px solid #e5e7eb!important;border-radius:0!important;background:#fff!important;gap:6px;grid-column:auto!important}.sp-crd-tools-accordion .sp-crd-global-tools:first-of-type{border-top:0!important}.sp-crd-tool-head{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:42px!important;padding:10px 14px!important;border:0!important;border-radius:0!important;background:#fff!important;color:#374151!important;box-shadow:none!important;font-size:11px!important;font-weight:800!important;text-align:left!important}.sp-crd-tool-head::after{content:"＋";font-size:15px;font-weight:400;color:#6b7280}.sp-crd-global-tools.is-open>.sp-crd-tool-head::after{content:"−"}.sp-crd-tools-accordion .sp-crd-global-tools:not(.is-open)>:not(.sp-crd-tool-head){display:none!important}.sp-crd-tools-accordion .sp-crd-global-tools.is-open{padding:0 12px 12px!important;background:#fbfcfe!important}.sp-crd-tools-accordion .sp-crd-global-tools.is-open>.sp-crd-tool-head{margin:0 -12px 8px!important;width:calc(100% + 24px)!important;background:#f3f4f6!important}.sp-crd-tools-accordion .sp-crd-global-tools>i{height:24px}.sp-crd-tools-accordion .sp-crd-global-tools>span:not(:first-child){font-size:10px;color:#6b7280}@media(max-width:768px){.sp-crd-tools-accordion{margin:16px 0 14px}.sp-crd-tools-accordion .sp-crd-global-tools.is-open{align-items:flex-start;gap:8px}.sp-crd-tools-accordion .sp-crd-global-tools label{flex-wrap:wrap}.sp-crd-tools-accordion .sp-crd-global-tools input[type=text]{width:min(100%,220px)}}
.sp-ext-crd-common .sp-crd-tools-accordion,.sp-ext-crd-common .sp-crd-global-tools:not([aria-label="상단 제목 빠른 설정"]):not([data-crd-cross-quick]):not(.sp-crd-primary-tools--outer){display:none!important}.sp-ext-crd-common .sp-crd-global-tools[aria-label="상단 제목 빠른 설정"],.sp-ext-crd-common .sp-crd-global-tools[data-crd-cross-quick],.sp-ext-crd-common .sp-crd-primary-tools--outer{display:flex!important;margin:14px 0 12px!important;padding:9px 10px!important;border:1px dashed rgba(17,24,39,.22)!important;border-radius:10px!important;background:rgba(255,255,255,.92)!important}.sp-ext-crd-common .sp-crd-global-tools[data-crd-cross-quick]{margin-top:-4px!important;width:max-content!important;max-width:100%!important}
.sp-ext-crd--head-off-eyebrow>.sp-b>.sp-ext-crd-eyebrow,.sp-ext-crd--head-off-title>.sp-b>.sp-sec-title,.sp-ext-crd--head-off-subtitle>.sp-b>.sp-ext-crd-subtitle,.sp-ext-crd--head-off-subheading>.sp-b>.sp-ext-crd-subheading,.sp-ext-crd--head-off-desc>.sp-b>.sp-ext-crd-desc{display:none!important}
.sp-ext-crd--all-off-image .sp-ext-crd-thumb,.sp-ext-crd--all-off-number .sp-ext-crd-num,.sp-ext-crd--all-off-tag .sp-ext-crd-tag,.sp-ext-crd--all-off-title .sp-ext-crd-title,.sp-ext-crd--all-off-body .sp-ext-crd-body,.sp-ext-crd--all-off-body .sp-ext-crd-checks{display:none!important}
body.sp-edit .sp-ext-crd--all-off-image .sp-ext-crd-thumb,body.sp-edit .sp-ext-crd--all-off-number .sp-ext-crd-num,body.sp-edit .sp-ext-crd--all-off-tag .sp-ext-crd-tag,body.sp-edit .sp-ext-crd--all-off-title .sp-ext-crd-title,body.sp-edit .sp-ext-crd--all-off-body .sp-ext-crd-body,body.sp-edit .sp-ext-crd--all-off-body .sp-ext-crd-checks{display:none!important}
.sp-crd-layer{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px}.sp-crd-layer-bg{position:absolute;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(5px)}.sp-crd-layer-box{position:relative;z-index:1;width:min(92vw,760px);max-height:86vh;overflow:auto;background:#fff;color:#222;border-radius:18px;padding:clamp(28px,5vw,58px);box-shadow:0 24px 80px rgba(0,0,0,.28)}.sp-crd-layer-box>button{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px;cursor:pointer}.sp-crd-layer-box h3{font-size:clamp(24px,3vw,40px);margin:0 0 20px}.sp-crd-layer-media{margin:-10px 0 24px}.sp-crd-layer-media img,.sp-crd-layer-media video{display:block;width:100%;max-height:55vh;object-fit:contain;border-radius:12px}.sp-crd-layer-body{font-size:16px;line-height:1.8;white-space:pre-line}
.sp-crd-layer-point{grid-area:point;margin:0 0 8px;font-size:12px;color:#777}.sp-crd-layer-box h3{grid-area:title}.sp-crd-layer-media{grid-area:media}.sp-crd-layer-body{grid-area:body}.sp-crd-layer-tags{grid-area:tags;display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.sp-crd-layer-tags:empty{display:none}.sp-crd-layer-tags span{display:inline-flex;align-items:center;min-height:28px;padding:5px 11px;border-radius:999px;background:#f1f1f1;color:#444;font-size:12px}.sp-crd-layer--title-center .sp-crd-layer-box h3{text-align:center}.sp-crd-layer--title-right .sp-crd-layer-box h3{text-align:right}.sp-crd-layer--body-center .sp-crd-layer-body{text-align:center}.sp-crd-layer--body-right .sp-crd-layer-body{text-align:right}.sp-crd-layer--vertical .sp-crd-layer-box{display:grid;grid-template-areas:"point" "title" "media" "body" "tags"}.sp-crd-layer--vertical.sp-crd-layer--media-end .sp-crd-layer-box{grid-template-areas:"point" "title" "body" "tags" "media"}.sp-crd-layer--vertical.sp-crd-layer--media-end .sp-crd-layer-media{margin:24px 0 0}.sp-crd-layer--horizontal .sp-crd-layer-box{width:min(94vw,1080px);display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,1fr);grid-template-areas:"media point" "media title" "media body" "media tags";column-gap:clamp(28px,4vw,56px);align-content:center}.sp-crd-layer--horizontal.sp-crd-layer--media-end .sp-crd-layer-box{grid-template-columns:minmax(0,1fr) minmax(280px,1fr);grid-template-areas:"point media" "title media" "body media" "tags media"}.sp-crd-layer--horizontal .sp-crd-layer-media{margin:0;align-self:stretch}.sp-crd-layer--horizontal .sp-crd-layer-media img,.sp-crd-layer--horizontal .sp-crd-layer-media video{height:100%;max-height:70vh;object-fit:contain;background:#f7f7f7}@media(max-width:720px){.sp-crd-layer--horizontal .sp-crd-layer-box,.sp-crd-layer--horizontal.sp-crd-layer--media-end .sp-crd-layer-box{grid-template-columns:1fr;grid-template-areas:"point" "title" "media" "body" "tags"}.sp-crd-layer--horizontal.sp-crd-layer--media-end .sp-crd-layer-box{grid-template-areas:"point" "title" "body" "tags" "media"}.sp-crd-layer--horizontal .sp-crd-layer-media{margin:0 0 20px}.sp-crd-layer--horizontal.sp-crd-layer--media-end .sp-crd-layer-media{margin:20px 0 0}}
.sp-crd-layer-bg{animation:spLayerFade .28s ease both}.sp-crd-layer-box{animation:spLayerEnter .42s cubic-bezier(.2,.8,.2,1) both}.sp-crd-layer-box>button{display:grid;place-items:center;width:44px;height:44px;right:14px;top:14px;border-radius:50%;background:#171717;color:#fff;font-size:24px;line-height:1;transition:transform .25s,background .25s}.sp-crd-layer-box>button:hover{transform:rotate(90deg);background:var(--sp-gold)}.sp-crd-layer-point:empty,.sp-crd-layer-body:empty,.sp-crd-layer-box h3:empty{display:none}.sp-crd-layer-point{letter-spacing:.04em}.sp-crd-layer-box h3{letter-spacing:-.035em}.sp-crd-layer-tags span{transition:transform .2s,background .2s}.sp-crd-layer-tags span:hover{transform:translateY(-2px);background:#e7e7e7}@keyframes spLayerFade{from{opacity:0}to{opacity:1}}@keyframes spLayerEnter{from{opacity:0;transform:translateY(24px) scale(.975)}to{opacity:1;transform:none}}
/* 세로형은 단일 컬럼 Flex로 고정 — Grid area 충돌 없이 미디어 위/아래 순서 보장 */
.sp-crd-layer--vertical .sp-crd-layer-box{display:flex;flex-direction:column;width:min(92vw,760px)}.sp-crd-layer--vertical .sp-crd-layer-point{order:2;width:100%}.sp-crd-layer--vertical .sp-crd-layer-box h3{order:3;width:100%}.sp-crd-layer--vertical .sp-crd-layer-body{order:4;width:100%}.sp-crd-layer--vertical .sp-crd-layer-tags{order:5;width:100%}.sp-crd-layer--vertical .sp-crd-layer-media{order:1;width:100%;margin:0 0 clamp(22px,3vw,34px)}.sp-crd-layer--vertical.sp-crd-layer--media-end .sp-crd-layer-media{order:6;margin:clamp(22px,3vw,34px) 0 0}.sp-crd-layer--vertical .sp-crd-layer-media img,.sp-crd-layer--vertical .sp-crd-layer-media video{width:100%;height:auto;max-height:58vh;object-fit:contain}.sp-crd-layer--vertical .sp-crd-layer-box>button{order:0}
@media(max-width:640px){.sp-crd-layer--vertical .sp-crd-layer-box{width:94vw;padding:26px 20px}.sp-crd-layer--vertical .sp-crd-layer-box h3{padding-right:44px;font-size:clamp(24px,8vw,34px)}.sp-crd-layer--vertical .sp-crd-layer-media img,.sp-crd-layer--vertical .sp-crd-layer-media video{max-height:48vh}}
@media(max-width:720px){.sp-crd-layer{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));place-items:center;overflow:hidden}.sp-crd-layer-box,.sp-crd-layer--vertical .sp-crd-layer-box,.sp-crd-layer--horizontal .sp-crd-layer-box,.sp-crd-layer--horizontal.sp-crd-layer--media-end .sp-crd-layer-box{box-sizing:border-box;width:100%;max-width:none;height:auto;max-height:calc(100dvh - max(16px,env(safe-area-inset-top) + env(safe-area-inset-bottom)));margin:0;padding:58px 18px 24px;border-radius:14px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.sp-crd-layer-box>button{position:fixed;right:max(18px,calc(env(safe-area-inset-right) + 10px));top:max(18px,calc(env(safe-area-inset-top) + 10px));width:40px;height:40px;font-size:22px}.sp-crd-layer-point{order:2;width:100%;margin-bottom:7px}.sp-crd-layer-box h3,.sp-crd-layer--vertical .sp-crd-layer-box h3{order:3;width:100%;padding-right:0;margin-bottom:14px;font-size:clamp(22px,7vw,30px);line-height:1.25;overflow-wrap:anywhere}.sp-crd-layer-body{order:4;width:100%;font-size:15px;line-height:1.75;overflow-wrap:anywhere;word-break:keep-all}.sp-crd-layer-tags{order:5;width:100%;margin-top:16px}.sp-crd-layer-media,.sp-crd-layer--horizontal .sp-crd-layer-media{order:1;width:100%;min-width:0;margin:0 0 20px}.sp-crd-layer--media-end .sp-crd-layer-media,.sp-crd-layer--horizontal.sp-crd-layer--media-end .sp-crd-layer-media{order:6;margin:20px 0 0}.sp-crd-layer-media img,.sp-crd-layer-media video,.sp-crd-layer--horizontal .sp-crd-layer-media img,.sp-crd-layer--horizontal .sp-crd-layer-media video{display:block;width:100%;height:auto;max-width:100%;max-height:42dvh;object-fit:contain;border-radius:10px;background:#f7f7f7}.sp-crd-layer--title-center .sp-crd-layer-box h3,.sp-crd-layer--body-center .sp-crd-layer-body{text-align:center}.sp-crd-layer--title-right .sp-crd-layer-box h3,.sp-crd-layer--body-right .sp-crd-layer-body{text-align:right}}
body.sp-layer-open,body:has(.sp-crd-layer){overflow:hidden}
.sp-crd-config{position:fixed;inset:0;z-index:100100;display:grid;place-items:center;padding:18px}.sp-crd-config-bg{position:absolute;inset:0;background:rgba(10,12,16,.64);backdrop-filter:blur(5px)}.sp-crd-config-box{position:relative;z-index:1;width:min(94vw,760px);max-height:92vh;overflow:auto;background:#fff;color:#1f2937;border-radius:16px;padding:26px;box-shadow:0 28px 90px rgba(0,0,0,.3)}.sp-crd-config-box h3{margin:0 0 20px;font-size:22px}.sp-crd-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sp-crd-config-field{display:flex;flex-direction:column;gap:6px}.sp-crd-config-field.is-wide{grid-column:1/-1}.sp-crd-config-field label{font-size:12px;font-weight:700;color:#4b5563}.sp-crd-config-field input,.sp-crd-config-field select,.sp-crd-config-field textarea{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:7px;padding:10px 12px;font:inherit;background:#fff;color:#111}.sp-crd-config-layer-media{min-height:86px;border:1px dashed #9ca3af;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;background:#f9fafb}.sp-crd-config-layer-media img,.sp-crd-config-layer-media video{width:100%;max-height:180px;object-fit:contain}.sp-crd-config-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.sp-crd-config-actions button{border:0;border-radius:7px;padding:10px 18px;cursor:pointer}.sp-crd-config-save{background:#111827;color:#fff}.sp-crd-config-cancel{background:#e5e7eb;color:#111}.sp-crd-config-clear-media{margin-top:7px;border:1px solid #d1d5db!important;background:#fff!important;color:#374151!important;padding:7px 10px!important}@media(max-width:640px){.sp-crd-config-grid{grid-template-columns:1fr}.sp-crd-config-field.is-wide{grid-column:auto}}
.sp-crd-config-preview{margin-right:auto;background:#e0f2fe;color:#075985}@media(max-width:640px){.sp-crd-config-actions{flex-wrap:wrap}.sp-crd-config-preview{width:100%;margin-right:0}}
.sp-ext-crd-common[class*="sp-ext-crd--motion-"] .sp-ext-crd-item{animation-duration:var(--sp-crd-motion-duration,.65s);animation-fill-mode:both;animation-delay:calc(var(--motion-index,0)*var(--sp-crd-motion-stagger,.08s));animation-play-state:paused}.sp-ext-crd-common.is-crd-motion-visible .sp-ext-crd-item{animation-play-state:running}.sp-ext-crd--motion-fade .sp-ext-crd-item{animation-name:crdFade}.sp-ext-crd--motion-up .sp-ext-crd-item,.sp-ext-crd--motion-stagger .sp-ext-crd-item{animation-name:crdUp}.sp-ext-crd--motion-scale .sp-ext-crd-item{animation-name:crdScale}.sp-ext-crd--motion-slide .sp-ext-crd-item{animation-name:crdSlide}@keyframes crdFade{from{opacity:0}to{opacity:1}}@keyframes crdUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes crdScale{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@keyframes crdSlide{from{opacity:0;transform:translateX(34px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.sp-ext-crd-common .sp-ext-crd-item{animation:none!important}}
.sp-ext-crd-common[class*="sp-ext-crd--imgmotion-"] .sp-ext-crd-thumb{animation-duration:.95s;animation-fill-mode:both;animation-play-state:paused;animation-timing-function:cubic-bezier(.2,.75,.2,1)}.sp-ext-crd-common.is-crd-motion-visible[class*="sp-ext-crd--imgmotion-"] .sp-ext-crd-thumb{animation-play-state:running}.sp-ext-crd--imgmotion-curtain_left .sp-ext-crd-thumb{animation-name:crdCurtainLeft}.sp-ext-crd--imgmotion-curtain_right .sp-ext-crd-thumb{animation-name:crdCurtainRight}.sp-ext-crd--imgmotion-curtain_top .sp-ext-crd-thumb{animation-name:crdCurtainTop}.sp-ext-crd--imgmotion-curtain_bottom .sp-ext-crd-thumb{animation-name:crdCurtainBottom}.sp-ext-crd--imgmotion-curtain_center .sp-ext-crd-thumb{animation-name:crdCurtainCenter}.sp-ext-crd--imgmotion-zoom .sp-ext-crd-thumb{animation-name:crdImgZoom}.sp-ext-crd--imgmotion-fade .sp-ext-crd-thumb{animation-name:crdFade}@keyframes crdCurtainLeft{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes crdCurtainRight{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}@keyframes crdCurtainTop{from{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}@keyframes crdCurtainBottom{from{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes crdCurtainCenter{from{clip-path:inset(0 50%)}to{clip-path:inset(0)}}@keyframes crdImgZoom{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:none}}
.sp-ext-crd-common[class*="sp-ext-crd--textmotion-"] .sp-sec-title,.sp-ext-crd-common[class*="sp-ext-crd--textmotion-"] .sp-ext-crd-subtitle,.sp-ext-crd-common[class*="sp-ext-crd--textmotion-"] .sp-ext-crd-desc,.sp-ext-crd-common[class*="sp-ext-crd--textmotion-"] .sp-ext-crd-content>*{animation-duration:.72s;animation-fill-mode:both;animation-play-state:paused;animation-timing-function:cubic-bezier(.2,.75,.2,1)}.sp-ext-crd-common.is-crd-motion-visible[class*="sp-ext-crd--textmotion-"] .sp-sec-title,.sp-ext-crd-common.is-crd-motion-visible[class*="sp-ext-crd--textmotion-"] .sp-ext-crd-subtitle,.sp-ext-crd-common.is-crd-motion-visible[class*="sp-ext-crd--textmotion-"] .sp-ext-crd-desc,.sp-ext-crd-common.is-crd-motion-visible[class*="sp-ext-crd--textmotion-"] .sp-ext-crd-content>*{animation-play-state:running}.sp-ext-crd--textmotion-up .sp-sec-title,.sp-ext-crd--textmotion-up .sp-ext-crd-subtitle,.sp-ext-crd--textmotion-up .sp-ext-crd-desc,.sp-ext-crd--textmotion-up .sp-ext-crd-content>*{animation-name:crdUp}.sp-ext-crd--textmotion-down .sp-sec-title,.sp-ext-crd--textmotion-down .sp-ext-crd-subtitle,.sp-ext-crd--textmotion-down .sp-ext-crd-desc,.sp-ext-crd--textmotion-down .sp-ext-crd-content>*{animation-name:crdTextDown}.sp-ext-crd--textmotion-left .sp-sec-title,.sp-ext-crd--textmotion-left .sp-ext-crd-content>*{animation-name:crdTextLeft}.sp-ext-crd--textmotion-right .sp-sec-title,.sp-ext-crd--textmotion-right .sp-ext-crd-content>*{animation-name:crdTextRight}.sp-ext-crd--textmotion-blur .sp-sec-title,.sp-ext-crd--textmotion-blur .sp-ext-crd-content>*{animation-name:crdTextBlur}.sp-ext-crd--textmotion-reveal .sp-sec-title,.sp-ext-crd--textmotion-reveal .sp-ext-crd-content>*{animation-name:crdTextReveal}.sp-ext-crd--textmotion-stagger .sp-ext-crd-content>*{animation-name:crdUp;animation-delay:calc(var(--motion-index,0)*.08s)}@keyframes crdTextDown{from{opacity:0;transform:translateY(-28px)}to{opacity:1;transform:none}}@keyframes crdTextLeft{from{opacity:0;transform:translateX(34px)}to{opacity:1;transform:none}}@keyframes crdTextRight{from{opacity:0;transform:translateX(-34px)}to{opacity:1;transform:none}}@keyframes crdTextBlur{from{opacity:0;filter:blur(12px)}to{opacity:1;filter:none}}@keyframes crdTextReveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media(prefers-reduced-motion:reduce){.sp-ext-crd-common [class*="sp-ext-crd-"]{animation:none!important}}
/* 모바일 첫 화면의 H1·설명은 LCP 후보이므로 관찰자 실행을 기다리지 않는다.
   PC 히어로와 히어로 아래 카드·후속 섹션 모션은 기존 설정을 유지한다. */
@media(max-width:768px){
  .sp-ext-crd--role-hero.sp-ext-crd-common .sp-sec-title,
  .sp-ext-crd--role-hero.sp-ext-crd-common .sp-ext-crd-subtitle,
  .sp-ext-crd--role-hero.sp-ext-crd-common .sp-ext-crd-desc{
    animation:none!important;
    transition:none!important;
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    clip-path:none!important;
  }
  /* 느린 모바일 회선에서 500KB Pretendard 가변폰트가 swap되며 장문 설명의
     줄 수가 바뀌는 CLS를 차단한다. PC와 후속 섹션의 선택 폰트는 유지한다. */
  .sp-ext-crd--role-hero.sp-ext-crd-common .sp-ext-crd-desc{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",Arial,sans-serif!important;
    font-size:15px!important;
  }
}
/* 본문 체크리스트 — 카드 본문 줄마다 체크 아이콘 */
.sp-ext-crd-checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.sp-ext-crd-checks li{display:flex;align-items:center;gap:10px;font-size:var(--sp-t-sm);line-height:1.5;color:var(--sp-text)}
.sp-ext-crd-check-ico{flex-shrink:0;width:22px;height:22px;border-radius:6px;background:var(--sp-gold);color:#fff;display:inline-flex;align-items:center;justify-content:center}
/* 섹션 제목 바로 아래 소제목(서브타이틀) */
.sp-ext-crd-subtitle{font-size:var(--sp-t-body);font-weight:400;line-height:1.85;letter-spacing:-.01em;color:var(--sp-muted);margin-top:10px}
.sp-ext-crd-eyebrow{font-size:var(--sty-t-badge,var(--sp-t-sm));letter-spacing:.15em;color:var(--sty-c-eyebrow,var(--sp-gold));margin:0 0 var(--sty-badge-gap,18px)}.sp-ext-crd-subheading{font-size:var(--sty-t-itemt,var(--sp-t-sub));font-weight:var(--sty-w-subheading,600);line-height:1.45;margin:clamp(18px,2vw,28px) 0 0}.sp-eeat-doctor-profile{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;font-size:13px}.sp-eeat-doctor-profile .sp-eeat-doctor-label{font-size:10px;letter-spacing:.14em;color:var(--sp-gold)}.sp-eeat-doctor-profile strong{font-weight:600}.sp-eeat-doctor-profile a{color:inherit;text-decoration:underline;text-underline-offset:3px}.sp-doctor-import-btn{position:absolute;top:48px;right:156px;z-index:326;display:none;border:1px solid #a855f7;background:#fff;color:#6b21a8;border-radius:999px;padding:8px 13px;font:600 11px/1 Pretendard,sans-serif;cursor:pointer}body.sp-edit .sp-doctor-import-btn{display:block}.sp-doctor-import-btn:disabled{opacity:.45;cursor:not-allowed}.sp-ext-crd-custom-html{margin-top:clamp(22px,3vw,42px)}.sp-ext-crd-after-html{grid-column:1/-1;width:100%;margin-top:clamp(28px,4vw,58px)}.sp-ext-crd-html-btn{position:relative!important;inset:auto!important;margin-top:10px}
/* 섹션 설명 + 인트로 왼쪽 레이아웃 (PC) — 번호+제목+설명을 왼쪽 열, 카드 그리드를 오른쪽 열에 배치 */
.sp-ext-crd-desc{font-size:var(--sty-t-desc,var(--sp-t-body));line-height:1.85;color:var(--sty-c-desc,var(--sp-muted));margin-top:18px;max-width:560px}
.sp-ext-crd-common .sp-ext-crd-desc{width:100%;max-width:none}
/* 선별 디자인 프리셋 — 기존 옵션 조합으로 만들 수 없는 구조만 제공 */
.sp-ext-crd--preset-editorial .sp-b{overflow:visible}.sp-ext-crd--preset-editorial .sp-sec-title{position:relative;z-index:4;max-width:1100px;margin-bottom:clamp(-70px,-5vw,-34px);font-size:clamp(58px,9vw,150px)!important;line-height:.82;letter-spacing:-.055em;text-align:left}.sp-ext-crd--preset-editorial .sp-ext-crd-grid{display:block;margin-top:0}.sp-ext-crd--preset-editorial .sp-ext-crd-item{display:block;max-width:1000px;margin-inline:auto;background:transparent;border:0;box-shadow:none;overflow:visible}.sp-ext-crd--preset-editorial .sp-ext-crd-item:not(:first-child){display:none}.sp-ext-crd--preset-editorial .sp-ext-crd-thumb{width:100%;aspect-ratio:16/8;min-height:360px;border-radius:0}.sp-ext-crd--preset-editorial .sp-ext-crd-content{display:none}.sp-ext-crd--preset-editorial .sp-ext-crd-desc{max-width:760px;margin:clamp(24px,3vw,46px) auto 0;text-align:center}
.sp-ext-crd--preset-connector .sp-ext-crd-grid{overflow:visible;gap:clamp(54px,6vw,90px)}.sp-ext-crd--preset-connector .sp-ext-crd-item{overflow:visible;text-align:center}.sp-ext-crd--preset-connector .sp-ext-crd-thumb{width:min(68%,260px);aspect-ratio:1;border-radius:50%;margin:clamp(22px,3vw,42px) auto 0;overflow:hidden}.sp-ext-crd--preset-connector .sp-ext-crd-content{text-align:center}.sp-ext-crd--preset-connector .sp-ext-crd-item:not(:last-child)::after{content:"+";position:absolute;z-index:5;right:clamp(-64px,-4vw,-46px);top:50%;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--sp-gold);color:#fff;font-size:24px;line-height:1;transform:translateY(-50%)}
.sp-ext-crd--preset-alternating .sp-ext-crd-grid{display:grid;grid-template-columns:1fr;gap:clamp(56px,8vw,120px)}.sp-ext-crd--preset-alternating .sp-ext-crd-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,7vw,110px);background:transparent;border:0;box-shadow:none;overflow:visible}.sp-ext-crd--preset-alternating .sp-ext-crd-thumb{height:auto;min-height:300px;aspect-ratio:16/9;border-radius:clamp(12px,2vw,28px)}.sp-ext-crd--preset-alternating .sp-ext-crd-content{padding:clamp(10px,3vw,38px)}.sp-ext-crd--preset-alternating .sp-ext-crd-item:nth-child(even) .sp-ext-crd-thumb{order:2}.sp-ext-crd--preset-alternating .sp-ext-crd-item:nth-child(even) .sp-ext-crd-content{order:1;text-align:right}
.sp-ext-crd--preset-masonry .sp-ext-crd-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px)}.sp-ext-crd--preset-masonry .sp-ext-crd-item{position:relative;min-height:clamp(420px,48vw,680px);border:0;border-radius:clamp(16px,2vw,30px);overflow:hidden;background:var(--sp-card-bg)}.sp-ext-crd--preset-masonry .sp-ext-crd-item:nth-child(even){margin-top:clamp(70px,10vw,150px)}.sp-ext-crd--preset-masonry .sp-ext-crd-thumb{position:absolute;inset:0;width:100%;height:100%;min-height:0}.sp-ext-crd--preset-masonry .sp-ext-crd-thumb::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78))}.sp-ext-crd--preset-masonry .sp-ext-crd-content{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:clamp(24px,4vw,52px);color:#fff}.sp-ext-crd--preset-masonry .sp-ext-crd-title,.sp-ext-crd--preset-masonry .sp-ext-crd-body,.sp-ext-crd--preset-masonry .sp-ext-crd-tag{color:inherit}.sp-ext-crd--preset-masonry .sp-ext-crd-num{color:rgba(255,255,255,.65)}.sp-ext-crd--preset-masonry .sp-ext-crd-bottom{margin-top:clamp(100px,14vw,190px)}
@media(max-width:768px){.sp-ext-crd--preset-editorial .sp-sec-title{margin-bottom:-20px;font-size:clamp(46px,16vw,82px)!important}.sp-ext-crd--preset-editorial .sp-ext-crd-thumb{min-height:240px;aspect-ratio:4/3}.sp-ext-crd--preset-connector .sp-ext-crd-grid{gap:52px}.sp-ext-crd--preset-connector .sp-ext-crd-item:not(:last-child)::after{left:50%;right:auto;top:auto;bottom:-45px;transform:translateX(-50%)}.sp-ext-crd--preset-alternating .sp-ext-crd-item{grid-template-columns:1fr;gap:18px}.sp-ext-crd--preset-alternating .sp-ext-crd-item:nth-child(even) .sp-ext-crd-thumb,.sp-ext-crd--preset-alternating .sp-ext-crd-item:nth-child(even) .sp-ext-crd-content{order:initial;text-align:left}.sp-ext-crd--preset-masonry .sp-ext-crd-grid{grid-template-columns:1fr}.sp-ext-crd--preset-masonry .sp-ext-crd-item:nth-child(even){margin-top:0}.sp-ext-crd--preset-masonry .sp-ext-crd-bottom{margin-top:50px}}
.sp-ext-crd-common{position:relative;isolation:isolate}.sp-ext-crd-common>.sp-b,.sp-ext-crd-common>.sp-ext-style-chip,.sp-ext-crd-common>.sp-ext-crd-bg-editbar{position:relative;z-index:2}.sp-ext-crd-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.sp-ext-crd-bg-pc,.sp-ext-crd-bg-mobile,.sp-ext-crd-bg img,.sp-ext-crd-bg video{position:absolute;inset:0;width:100%;height:100%}.sp-ext-crd-bg img,.sp-ext-crd-bg video{object-fit:var(--sp-crd-bg-fit,cover);object-position:var(--sp-crd-bg-pos,center)}.sp-ext-crd-bg-mobile{display:none}.sp-ext-crd-bg-overlay{position:absolute;inset:0;background:var(--sp-crd-bg-overlay-color,#000);opacity:var(--sp-crd-bg-overlay-op,0)}.sp-ext-crd-bg-editbar{display:flex;gap:8px;padding:8px 12px;background:rgba(20,20,24,.82);color:#fff}.sp-ext-crd-bg-editbar>.sp-ext-img{display:flex;align-items:center;justify-content:center;min-height:38px;flex:1;border:1px dashed rgba(255,255,255,.45);border-radius:6px;cursor:pointer;font-size:12px}
@media(max-width:768px){.sp-ext-crd-bg-mobile{display:block}.sp-ext-crd-bg-mobile~.sp-ext-crd-bg-pc{display:none}.sp-ext-crd-bg:has(.sp-ext-crd-bg-mobile) .sp-ext-crd-bg-pc{display:none}}
.sp-ext-crd--role-hero{min-height:min(900px,100svh);display:flex;flex-direction:column;align-items:stretch;justify-content:center}.sp-ext-crd--role-hero>.sp-b{width:100%;flex:1;display:flex;flex-direction:column;justify-content:center}.sp-ext-crd--role-hero>.sp-ext-crd-bg-editbar{width:100%;flex:none;align-self:stretch;box-sizing:border-box}.sp-ext-crd--role-hero.sp-ext-crd--introleft>.sp-b,.sp-ext-crd--role-hero.sp-ext-crd--topsplit>.sp-b{display:block}.sp-ext-crd--role-hero.sp-ext-crd--introleft .sp-ext-crd-grid,.sp-ext-crd--role-hero.sp-ext-crd--introleft .sp-ext-crd-slider,.sp-ext-crd--role-hero.sp-ext-crd--topsplit .sp-ext-crd-grid,.sp-ext-crd--role-hero.sp-ext-crd--topsplit .sp-ext-crd-slider{margin-top:52px}.sp-geo-meta{display:flex;flex-wrap:wrap;gap:18px;margin:-16px 0 6px}.sp-geo-chip{position:relative;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#8a857f;cursor:default;outline:none;transition:color .15s}.sp-geo-chip:hover,.sp-geo-chip:focus{color:#5a554f}.sp-geo-chip>svg{width:15px;height:15px;opacity:.7;flex:none}.sp-geo-pop{position:absolute;left:0;top:calc(100% + 10px);width:max-content;max-width:min(380px,82vw);background:#1f1f1f;color:#f2f2f2;font-size:13px;line-height:1.75;padding:13px 15px;border-radius:9px;box-shadow:0 12px 34px rgba(0,0,0,.22);opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .16s,transform .16s,visibility .16s;z-index:50;text-align:left;font-weight:400;white-space:normal;word-break:keep-all}.sp-geo-pop::after{content:"";position:absolute;bottom:100%;left:18px;border:6px solid transparent;border-bottom-color:#1f1f1f}.sp-geo-chip:hover .sp-geo-pop,.sp-geo-chip:focus .sp-geo-pop,.sp-geo-chip:focus-within .sp-geo-pop{opacity:1;visibility:visible;transform:translateY(0)}.sp-ext-crd-hero-meta{margin-top:clamp(18px,2.4vw,30px);margin-bottom:6px;position:relative;z-index:12;justify-content:var(--sp-crd-geo-align,flex-start)}
.sp-geo-summary-answer{display:block;margin:0 0 9px}.sp-geo-summary-answer:last-child{margin-bottom:0}.sp-geo-facts{display:block;min-width:min(340px,72vw);border-top:1px solid rgba(255,255,255,.18);padding-top:8px}.sp-geo-fact{display:grid;grid-template-columns:minmax(86px,34%) 1fr;gap:10px;padding:3px 0}.sp-geo-fact-label,.sp-geo-fact-value{display:block;font-weight:400}.sp-geo-fact-label{color:#fff}.sp-geo-fact-value{color:#c8c8c8}
@media(max-width:768px){.sp-geo-pop{position:fixed;left:50vw;top:50svh;width:calc(100vw - 40px);max-width:380px;box-sizing:border-box;transform:translate(-50%,-50%) translateY(5px);z-index:99990}.sp-geo-pop::after{display:none}.sp-geo-chip:hover .sp-geo-pop,.sp-geo-chip:focus .sp-geo-pop,.sp-geo-chip:focus-within .sp-geo-pop{transform:translate(-50%,-50%) translateY(0)}}
@media(min-width:769px){.sp-ext-crd--role-hero.sp-ext-crd--sectionw-pc>.sp-b{width:min(var(--sp-crd-section-w-pc),100%)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box}}
@media(max-width:768px){.sp-ext-crd--role-hero.sp-ext-crd--sectionw-mo>.sp-b{width:min(var(--sp-crd-section-w-mo),100%)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box}}
@media(min-width:769px){.sp-ext-crd--role-hero:not(.sp-ext-crd--sectionw-pc)>.sp-b{width:92%!important;max-width:var(--sty-mw,var(--sp-mw,1200px))!important;margin-left:auto!important;margin-right:auto!important}}
@media(max-width:768px){.sp-ext-crd--role-hero:not(.sp-ext-crd--sectionw-mo)>.sp-b{width:92%!important;max-width:var(--sty-mw,var(--sp-mw,1200px))!important;margin-left:auto!important;margin-right:auto!important}}
@media(max-width:768px){.sp-ext-crd-hero-meta{justify-content:var(--sp-crd-geo-align-mo,var(--sp-crd-geo-align,flex-start))}}
@media(max-width:768px){
  .sp-ext-crd-common.sp-ext-crd--mwidth-default>.sp-b{width:92%;max-width:var(--sty-mw,var(--sp-mw,1200px));margin-left:auto;margin-right:auto;box-sizing:border-box}
  .sp-ext-crd-common.sp-ext-crd--mwidth-inset20>.sp-b{width:calc(100% - 40px);max-width:none;margin-left:auto;margin-right:auto;box-sizing:border-box}
  .sp-ext-crd-common.sp-ext-crd--mwidth-inset32>.sp-b{width:calc(100% - 64px);max-width:none;margin-left:auto;margin-right:auto;box-sizing:border-box}
  .sp-ext-crd-common.sp-ext-crd--mwidth-full>.sp-b{width:100%;max-width:none;margin-left:0;margin-right:0;box-sizing:border-box}
}
.sp-crd-structure-tools label:has(>select[data-crd-quick-sty="layout"]),.sp-crd-structure-tools label:has(>select[data-crd-quick-sty="cardstyle"]){display:none!important}
.sp-ext-crd-grid>.sp-crd-primary-tools{display:none!important}
.sp-crd-flip-tools{display:none;position:absolute;top:16px;left:16px;z-index:24;flex-flow:row wrap;align-items:center;gap:6px}.sp-crd-flip-tools .sp-flip-btn{position:static;display:inline-flex}body.sp-edit .sp-crd-flip-tools{display:flex}
.sp-ext-crd--role-hero.sp-ext-crd--head-off-title>.sp-b>.sp-sec-title{display:block!important;position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#sp-sections:has(.sp-ext-crd--role-hero)>#sp-sec-hero{display:none!important}
.sp-ext-crd-bottom-text{width:100%;margin-top:clamp(24px,3vw,38px);padding:clamp(18px,2.2vw,28px);background:var(--sp-card-bg,var(--sp-bg2,#f7f7f4));color:var(--sty-c-desc,var(--sp-text,#222));font-size:var(--sty-t-desc,var(--sp-t-body));line-height:1.85;white-space:normal}
.sp-ext-crd-common .sp-ext-crd-bottom{grid-column:1/-1;width:100%;margin-top:clamp(28px,4vw,56px);padding:0;background:var(--sp-crd-bottom-bg,transparent);color:var(--sp-crd-bottom-color,var(--sty-c-desc,var(--sp-text)));text-align:var(--sp-crd-head-ta,inherit)}.sp-ext-crd-common .sp-ext-crd-bottom-title{width:100%;font-size:var(--sty-t-itemt,var(--sp-t-sub));font-weight:var(--sty-w-title,600);margin:0 0 10px;text-align:inherit}.sp-ext-crd-common .sp-ext-crd-bottom-subtitle{width:100%;margin:0 0 12px;font-size:var(--sty-t-subt,var(--sp-t-body));color:inherit;text-align:inherit}.sp-ext-crd-common .sp-ext-crd-bottom .sp-ext-crd-bottom-text{width:100%;margin:0;padding:0;background:transparent;color:inherit;text-align:inherit}.sp-ext-crd-common .sp-ext-crd-bottom-cta{margin-left:0;margin-right:0}.sp-ext-crd-common .sp-ext-crd-bottom[style*="text-align: center"] .sp-ext-crd-bottom-cta{margin-left:auto;margin-right:auto}.sp-crd-bottom-tools{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:7px;width:100%;margin:16px 0;padding:9px 10px;border:1px dashed rgba(17,24,39,.22);border-radius:9px;background:rgba(255,255,255,.94);color:#374151;text-align:left;font-size:11px}.sp-crd-bottom-tools label{display:inline-flex;align-items:center;gap:5px}.sp-crd-bottom-tools select,.sp-crd-bottom-tools input{border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827;padding:6px 8px;font:inherit}.sp-crd-bottom-tools input{min-width:210px}
.sp-ext-crd-socials{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0;grid-column:1/-1}.sp-ext-crd-socials a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 18px;border:1px solid var(--sp-gold);border-radius:8px;color:var(--sp-gold);text-decoration:none;transition:transform .25s,background .25s,color .25s}.sp-ext-crd-socials a:hover{transform:translateY(-2px)}.sp-ext-crd-socials a span::before{font-size:13px;font-weight:800}.sp-ext-crd-socials a[data-social=instagram] span::before{content:"◎"}.sp-ext-crd-socials a[data-social=youtube] span::before{content:"▶"}.sp-ext-crd-socials a[data-social=blog] span::before{content:"B"}.sp-ext-crd-socials a[data-social=kakao] span::before{content:"K"}.sp-ext-crd-socials a[data-social=facebook] span::before{content:"f"}.sp-ext-crd-socials a[data-social=x] span::before{content:"X"}.sp-ext-crd-socials a[data-social=link] span::before{content:"↗"}.sp-ext-crd--social-solid .sp-ext-crd-socials a{background:var(--sp-gold);color:#fff}.sp-ext-crd--social-pill .sp-ext-crd-socials a{border-radius:999px}.sp-ext-crd--social-icon .sp-ext-crd-socials a{width:44px;padding:0;border-radius:50%}.sp-ext-crd--social-icon .sp-ext-crd-socials b{display:none}.sp-ext-crd--social-text .sp-ext-crd-socials a{border:0;padding-inline:4px}.sp-ext-crd-bottom-cta{display:inline-flex;align-items:center;justify-content:center;min-width:184px;margin-top:28px;padding:12px 24px;border-radius:8px;background:var(--sp-gold);color:#fff;text-decoration:none;cursor:pointer}.sp-ext-crd--bottom-cta-outline .sp-ext-crd-bottom-cta{background:transparent;color:var(--sp-gold);border:1px solid var(--sp-gold)}.sp-ext-crd--bottom-cta-pill .sp-ext-crd-bottom-cta{border-radius:999px}.sp-ext-crd--bottom-cta-arrow .sp-ext-crd-bottom-cta,.sp-ext-crd--bottom-cta-text .sp-ext-crd-bottom-cta{min-width:0;padding:7px 0;border-radius:0;background:transparent;color:inherit;border-bottom:1px solid currentColor}.sp-ext-crd--bottom-cta-arrow .sp-ext-crd-bottom-cta::after{content:"→";margin-left:18px}
.sp-crd-social-tools .sp-social-cf-hint{flex:1 1 100%;font-style:normal;font-size:11px;color:#6b7280;line-height:1.5}.sp-crd-social-tools .sp-social-input-label{display:inline-flex;align-items:center;gap:6px}.sp-crd-social-tools .sp-social-input-label input{min-width:220px}
/* 리프티크 의료진 프로필 — 좌측 소개/SNS, 우측 인물 이미지, 하단 브랜드 메시지 */
.sp-ext-crd--doctor-profile{background:var(--sp-bg,#f8f7f3)}
.sp-ext-crd--doctor-profile>.sp-b{padding-top:clamp(70px,8vw,110px);padding-bottom:clamp(70px,8vw,110px)}
.sp-ext-crd--doctor-profile .sp-ext-crd-eyebrow{font-size:13px!important;letter-spacing:.08em!important;margin-bottom:18px!important}.sp-ext-crd--doctor-profile .sp-sec-title{font-size:clamp(28px,2.5vw,36px)!important;font-weight:var(--sty-w-title,600)!important;line-height:1.35!important;margin-bottom:22px!important}.sp-ext-crd--doctor-profile .sp-ext-crd-desc{max-width:430px;font-size:16px!important;line-height:1.8!important;color:var(--sp-text)!important}
.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-b{grid-template-columns:minmax(280px,42%) minmax(0,1fr);grid-template-rows:auto auto auto auto auto auto auto;column-gap:clamp(52px,7vw,104px);align-items:start;align-content:center}
.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-grid,.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-slider{grid-column:2;grid-row:1/7;width:min(100%,460px);justify-self:center;align-self:center;margin:0}
.sp-ext-crd--doctor-profile .sp-ext-crd-item{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.sp-ext-crd--doctor-profile .sp-ext-crd-thumb{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1/1!important;background:color-mix(in srgb,var(--index_color,#b8a178) 12%,#f2ebe7);border-radius:var(--sp-crd-img-radius,0)!important}.sp-ext-crd--doctor-profile .sp-ext-crd-thumb img,.sp-ext-crd--doctor-profile .sp-ext-crd-thumb video{width:100%;height:100%!important;object-fit:cover!important;object-position:center top}
.sp-ext-crd--doctor-profile .sp-ext-crd-content:empty{display:none}
.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-socials{grid-column:1;grid-row:6;margin:clamp(30px,4vw,52px) 0 0;gap:8px;align-self:start}
.sp-ext-crd--doctor-profile .sp-ext-crd-socials a{flex:1;min-width:104px;min-height:48px;padding-inline:14px;border-color:color-mix(in srgb,var(--index_color,var(--sp-gold)) 62%,transparent);color:var(--index_color,var(--sp-gold));border-radius:10px;font-size:12px}
.sp-ext-crd--doctor-profile .sp-ext-crd-bottom{grid-column:1/-1!important;grid-row:7!important;width:100%!important;max-width:none!important;margin:clamp(90px,11vw,150px) auto 0!important;padding:0!important;text-align:center!important;background:transparent!important;border:0!important;justify-self:stretch}
.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-title{font-size:clamp(34px,3.6vw,52px)!important;font-weight:400!important;line-height:1.25!important;letter-spacing:.01em!important;margin:0 0 clamp(46px,6vw,72px)!important;text-align:center!important}.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-title.eng_b2{font-family:var(--font-eng)!important}.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-title.pret{font-family:var(--font-pret)!important;letter-spacing:-.02em!important}
.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-subtitle{font-size:clamp(21px,2vw,28px)!important;font-weight:500!important;line-height:1.55!important;color:var(--sp-text)!important;margin:0 0 clamp(30px,4vw,48px)!important;text-align:center!important}
.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-text{font-size:15px!important;line-height:1.75!important;color:var(--sp-muted)!important;text-align:center!important}
.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-cta{min-width:184px;border-radius:999px;background:var(--index_color,var(--sp-gold));color:#fff;margin-left:auto!important;margin-right:auto!important}
.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-title,.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-subtitle{white-space:pre-line!important;word-break:keep-all;overflow-wrap:normal}.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-text{white-space:normal!important;word-break:keep-all;overflow-wrap:normal}
@media(min-width:769px){.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-b{display:block!important;position:relative;min-height:0}.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-eyebrow,.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-sec-title,.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-subtitle,.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-subheading,.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-desc,.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-socials{width:calc(100% - 570px);max-width:440px}.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-grid,.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-slider{position:absolute!important;top:0;right:0;width:500px!important;max-width:42vw!important;margin:0!important}.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-ext-crd-socials{margin-top:clamp(34px,4vw,52px)!important}.sp-ext-crd--doctor-profile .sp-ext-crd-bottom{padding-top:var(--sp-crd-doctor-bottom-gap,clamp(250px,25vw,330px))!important;margin-top:0!important}}
@media(max-width:768px){.sp-ext-crd--doctor-profile.sp-ext-crd--introleft .sp-b{display:flex;flex-direction:column;align-items:stretch}.sp-ext-crd--doctor-profile .sp-ext-crd-grid,.sp-ext-crd--doctor-profile .sp-ext-crd-slider{order:5;margin-top:32px!important}.sp-ext-crd--doctor-profile .sp-ext-crd-socials{order:4!important}.sp-ext-crd--doctor-profile .sp-ext-crd-bottom{order:7!important;margin-top:72px}.sp-ext-crd--doctor-profile .sp-ext-crd-thumb{aspect-ratio:4/5}.sp-ext-crd--doctor-profile .sp-ext-crd-bottom-title{font-size:clamp(30px,9vw,42px)}}
body.sp-edit .sp-ext-crd-bottom-text:empty{min-height:72px;background:rgba(124,58,237,.045)}
body:not(.sp-edit) .sp-ext-crd-bottom-text:empty{display:none!important}
.sp-ext-crd--introleft .sp-ext-crd-bottom-text,.sp-ext-crd--topsplit .sp-ext-crd-bottom-text{grid-column:1/-1;grid-row:6}
@media(min-width:901px){
.sp-ext-crd--introleft .sp-b{display:grid;grid-template-columns:minmax(240px,330px) 1fr;grid-template-rows:auto auto auto auto 1fr;column-gap:clamp(32px,5vw,72px);align-items:start}
.sp-ext-crd--introleft .sp-b{grid-template-columns:minmax(0,var(--sp-crd-split-pc,32%)) minmax(0,calc(100% - var(--sp-crd-split-pc,32%) - var(--sp-crd-split-gap,64px)));column-gap:var(--sp-crd-split-gap,64px)}
/* 왼쪽 열 항목들 행 고정 — 명시 row 없이는 grid-row:1/-1(카드영역)이 1행에만 박혀
   설명 등 추가 입력 시 항목들이 카드 그리드 아래로 밀리며 레이아웃이 틀어짐 (소제목 행 포함) */
.sp-ext-crd--introleft .sp-pt-badge{grid-column:1;grid-row:1}
.sp-ext-crd--introleft .sp-ext-crd-eyebrow{grid-column:1;grid-row:1}
.sp-ext-crd--introleft .sp-sec-title{grid-column:1;grid-row:2}
.sp-ext-crd--introleft .sp-ext-crd-subtitle{grid-column:1;grid-row:3}
.sp-ext-crd--introleft .sp-ext-crd-subheading{grid-column:1;grid-row:4}.sp-ext-crd--introleft .sp-ext-crd-desc{grid-column:1;grid-row:5}
/* 카드 영역 = 2열 (슬라이드 켜면 .sp-ext-crd-slider 가, 아니면 .sp-ext-crd-grid 가 직속 자식) */
.sp-ext-crd--introleft .sp-ext-crd-grid,
.sp-ext-crd--introleft .sp-ext-crd-slider{grid-column:2;grid-row:1 / -1;margin-top:0}
.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-pt-badge,.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-ext-crd-eyebrow,.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-sec-title,.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-ext-crd-subtitle,.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-ext-crd-subheading,.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-ext-crd-desc{grid-column:2}
.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-ext-crd-grid,.sp-ext-crd--introleft.sp-ext-crd--introflip .sp-ext-crd-slider{grid-column:1}
}
/* 상단 분할(topsplit) — 제목/내용은 상단 전폭, 그 아래 [추가텍스트(좌) | 카드박스(우)] 2단.
   폭은 fr 비율(--sp-crd-aside-w / --sp-crd-box-w)로 분할 → 합이 100 아니어도 넘침 없음. introleft 와 동일한 명시 row 로 행 밀림 방지. */
.sp-ext-crd-aside{text-align:var(--sp-crd-aside-ta,inherit)}
.sp-ext-crd-aside-img{width:100%;aspect-ratio:var(--sp-crd-aside-img-ratio,16/10);margin:0 0 clamp(22px,2.8vw,36px);overflow:hidden;background:var(--sp-bg3);border-radius:var(--sp-crd-aside-img-radius,0)}
.sp-ext-crd-aside-img.is-empty{display:none}
body.sp-edit .sp-ext-crd-aside-img.is-empty{display:block}
.sp-ext-crd-aside-img img,.sp-ext-crd-aside-img video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.sp-ext-crd-aside-img-ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:180px;color:rgba(0,0,0,.38);font-size:14px}
.sp-ext-crd-aside-t{font-size:var(--sp-t-sub);line-height:1.4;margin:0 0 12px;font-weight:600}
.sp-ext-crd-aside-b{font-size:var(--sp-t-body);line-height:1.85;color:var(--sp-muted)}
@media(min-width:901px){
.sp-ext-crd--topsplit .sp-b{display:grid;grid-template-columns:var(--sp-crd-aside-w,38fr) var(--sp-crd-box-w,62fr);grid-template-rows:auto auto auto auto auto;column-gap:clamp(28px,5vw,64px);align-items:start}
.sp-ext-crd--topsplit .sp-b{grid-template-columns:minmax(0,var(--sp-crd-split-pc,38%)) minmax(0,calc(100% - var(--sp-crd-split-pc,38%) - var(--sp-crd-split-gap,64px)));column-gap:var(--sp-crd-split-gap,64px)}
.sp-ext-crd--topsplit .sp-pt-badge{grid-column:1 / -1;grid-row:1}
.sp-ext-crd--topsplit .sp-ext-crd-eyebrow{grid-column:1 / -1;grid-row:1}
.sp-ext-crd--topsplit .sp-sec-title{grid-column:1 / -1;grid-row:2}
.sp-ext-crd--topsplit .sp-ext-crd-subtitle{grid-column:1 / -1;grid-row:3}
.sp-ext-crd--topsplit .sp-ext-crd-subheading{grid-column:1/-1;grid-row:4}.sp-ext-crd--topsplit .sp-ext-crd-desc{grid-column:1 / -1;grid-row:5;max-width:none}
/* 좌(추가텍스트)·우(카드박스) 모두 내용 높이에만 맞춤(align-self:start) — 한쪽이 길어도 다른쪽이 늘어나 빈 여백 생기는 것 방지 */
.sp-ext-crd--topsplit .sp-ext-crd-aside{grid-column:1;grid-row:6;margin-top:0;align-self:start}
.sp-ext-crd--topsplit .sp-ext-crd-grid,
.sp-ext-crd--topsplit .sp-ext-crd-slider{grid-column:2;grid-row:6;margin-top:0;align-self:start}
/* 카드끼리 같은 높이로 늘어나며 제목 아래 큰 여백 생기던 것 방지 — 각 카드를 내용 높이에 맞춤 */
.sp-ext-crd--topsplit .sp-ext-crd-aside{position:relative;overflow:visible;min-height:var(--sp-crd-bgico-size,220px)}
.sp-ext-crd--topsplit .sp-ext-crd-aside>*:not(.sp-ext-crd-bgico){position:relative;z-index:2}
.sp-ext-crd--topsplit .sp-ext-crd-grid{position:relative;overflow:hidden}
.sp-ext-crd--topsplit .sp-ext-crd-bgico{position:absolute;right:clamp(-42px,-3vw,-16px);bottom:clamp(34px,4vw,72px);z-index:1;display:flex;width:var(--sp-crd-bgico-size,220px);height:var(--sp-crd-bgico-size,220px);align-items:center;justify-content:center;color:var(--sp-crd-bgico-c,#d7d4e8);opacity:var(--sp-crd-bgico-op,.16);pointer-events:none}
.sp-ext-crd--topsplit .sp-ext-crd-bgico svg,.sp-ext-crd--topsplit .sp-ext-crd-bgico img{display:block;width:100%;height:100%;object-fit:contain}
.sp-ext-crd--topsplit .sp-ext-crd-grid .sp-ext-crd-item{position:relative;z-index:1;align-self:start}
.sp-ext-crd--topsplit .sp-ext-additem{grid-column:1 / -1}
}
@media(max-width:900px){
.sp-ext-crd--topsplit .sp-ext-crd-aside{position:relative;overflow:visible;min-height:0}
.sp-ext-crd--topsplit .sp-ext-crd-aside>*:not(.sp-ext-crd-bgico){position:relative;z-index:2}
.sp-ext-crd--topsplit .sp-ext-crd-bgico{position:absolute!important;right:-8px!important;bottom:0!important;width:min(28vw,112px)!important;height:min(28vw,112px)!important;opacity:.12!important}
}
/* 모바일 슬라이드 — 가로 스크롤 + 스냅(네이티브 스와이프, JS 불필요). cols_mo 대신 카드 폭으로 노출 */
@media(max-width:768px){
.sp-ext-crd--mslide .sp-ext-crd-grid{display:flex;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:14px;padding-bottom:6px;scrollbar-width:none;scroll-padding-left:var(--sp-pad-x,20px)}
.sp-ext-crd--mslide .sp-ext-crd-grid::-webkit-scrollbar{display:none}
.sp-ext-crd--mslide .sp-ext-crd-item{flex:0 0 82%;scroll-snap-align:start}
}
/* PC 슬라이드 — PC(≥901)에서 가로 스크롤스냅. 편집 화면(body.sp-edit)에선 일반 그리드 유지(편집 편의) */
.sp-ext-crd-nav{display:none}
.sp-ext-crd-track{position:relative}
@media(min-width:901px){
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-grid{display:flex;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:20px;scrollbar-width:none;scroll-behavior:smooth}
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-grid::-webkit-scrollbar{display:none}
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-item{flex:0 0 calc((100% - (var(--sp-cols,3) - 1) * 20px) / var(--sp-cols,3));scroll-snap-align:start}
/* 화살표 — 슬라이더(카드 행) 기준 수직 중앙, 카드 가장자리에 걸침 */
/* PC 화살표 — 둥근 버튼 없이 얇은 셰브론(>)만, 카드 바깥쪽으로. 평소 거의 안 보이고(.12) 섹션 hover 시 노출 */
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-nav{display:inline-flex;position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:30px;height:54px;align-items:center;justify-content:center;border:none;background:none;color:var(--sp-text,#222);cursor:pointer;opacity:.12;transition:opacity .25s}
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-nav svg{width:26px;height:26px}
body:not(.sp-edit) .sp-ext-crd--pcslide:hover .sp-ext-crd-nav{opacity:.75}
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-nav:hover,
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-nav:focus-visible{opacity:1}
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-nav--prev{left:-52px}
body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-nav--next{right:-52px}
}
/* 도트 페이지네이션 — 슬라이드일 때만(PC=pcslide / 모바일=mslide), JS 가 페이지 수만큼 생성.
   비활성=원, 활성=가로로 늘어난 알약(지렁이) 모양 — 높이는 동일, 폭만 증가 */
.sp-ext-crd-dots{display:none;justify-content:center;align-items:center;gap:2px;margin-top:24px}
/* 버튼 자체는 24×24 터치 타깃(WCAG 2.5.8), 시각 도트는 ::before 로 8px(활성=22px 알약) */
.sp-ext-crd-dot{width:24px;height:24px;padding:0;border:none;background:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;-webkit-appearance:none;appearance:none}
.sp-ext-crd-dot::before{content:"";display:block;width:8px;height:8px;border-radius:100px;background:var(--sp-muted,rgba(0,0,0,.5));transition:width .25s,background .25s}
.sp-ext-crd-dot.is-active::before{width:22px;background:var(--sp-gold)}
@media(min-width:901px){body:not(.sp-edit) .sp-ext-crd--pcslide .sp-ext-crd-dots{display:flex}}
@media(max-width:768px){.sp-ext-crd--mslide .sp-ext-crd-dots{display:flex}}
/* 공통 카드형 슬라이드 버튼·페이지 네비게이션 프리셋 */
.sp-ext-crd-common .sp-ext-crd-slider{position:relative}.sp-ext-crd-common.sp-ext-crd--nav-circle .sp-ext-crd-nav,.sp-ext-crd-common.sp-ext-crd--nav-square .sp-ext-crd-nav,.sp-ext-crd-common.sp-ext-crd--nav-dark .sp-ext-crd-nav,.sp-ext-crd-common.sp-ext-crd--nav-glass .sp-ext-crd-nav{width:46px!important;height:46px!important;opacity:1!important;border:1px solid var(--sp-line)!important;background:var(--sp-bg)!important;box-shadow:0 8px 28px rgba(0,0,0,.12)}.sp-ext-crd-common.sp-ext-crd--nav-circle .sp-ext-crd-nav,.sp-ext-crd-common.sp-ext-crd--nav-dark .sp-ext-crd-nav,.sp-ext-crd-common.sp-ext-crd--nav-glass .sp-ext-crd-nav{border-radius:50%}.sp-ext-crd-common.sp-ext-crd--nav-square .sp-ext-crd-nav{border-radius:8px}.sp-ext-crd-common.sp-ext-crd--nav-dark .sp-ext-crd-nav{background:#17181b!important;color:#fff!important;border-color:#17181b!important}.sp-ext-crd-common.sp-ext-crd--nav-glass .sp-ext-crd-nav{background:rgba(255,255,255,.56)!important;backdrop-filter:blur(12px);border-color:rgba(255,255,255,.72)!important}.sp-ext-crd-common.sp-ext-crd--navpos-inside .sp-ext-crd-nav--prev{left:14px!important}.sp-ext-crd-common.sp-ext-crd--navpos-inside .sp-ext-crd-nav--next{right:14px!important}.sp-ext-crd-common.sp-ext-crd--navpos-top .sp-ext-crd-nav{top:-28px!important;transform:none!important}.sp-ext-crd-common.sp-ext-crd--navpos-top .sp-ext-crd-nav--prev{left:auto!important;right:58px!important}.sp-ext-crd-common.sp-ext-crd--navpos-top .sp-ext-crd-nav--next{right:6px!important}
.sp-ext-crd-common.sp-ext-crd--page-dot .sp-ext-crd-dot.is-active::before{width:8px}.sp-ext-crd-common.sp-ext-crd--page-line .sp-ext-crd-dots{gap:6px}.sp-ext-crd-common.sp-ext-crd--page-line .sp-ext-crd-dot{width:34px;height:20px}.sp-ext-crd-common.sp-ext-crd--page-line .sp-ext-crd-dot::before{width:100%;height:2px;border-radius:0}.sp-ext-crd-common.sp-ext-crd--page-line .sp-ext-crd-dot.is-active::before{width:100%;height:4px}.sp-ext-crd-common.sp-ext-crd--page-number .sp-ext-crd-dots{counter-reset:crdpage;gap:5px}.sp-ext-crd-common.sp-ext-crd--page-number .sp-ext-crd-dot{counter-increment:crdpage;width:34px;height:34px;border:1px solid var(--sp-line);border-radius:50%;font-size:12px}.sp-ext-crd-common.sp-ext-crd--page-number .sp-ext-crd-dot::before{content:counter(crdpage);width:auto;height:auto;background:none;border-radius:0}.sp-ext-crd-common.sp-ext-crd--page-number .sp-ext-crd-dot.is-active{background:var(--sp-text);color:var(--sp-bg)}.sp-ext-crd-common.sp-ext-crd--page-number .sp-ext-crd-dot.is-active::before{width:auto;background:none}.sp-ext-crd-common.sp-ext-crd--page-progress .sp-ext-crd-dots{width:min(100%,520px);margin-inline:auto;gap:0}.sp-ext-crd-common.sp-ext-crd--page-progress .sp-ext-crd-dot{height:18px;flex:1;width:auto}.sp-ext-crd-common.sp-ext-crd--page-progress .sp-ext-crd-dot::before{width:100%;height:3px;border-radius:0;background:var(--sp-line)}.sp-ext-crd-common.sp-ext-crd--page-progress .sp-ext-crd-dot.is-active::before{width:100%;background:var(--sp-gold)}
.sp-ext-crd-common.sp-ext-crd--page-fraction .sp-ext-crd-dots{font-family:var(--font-eng-b2,var(--font-eng));font-variant-numeric:tabular-nums;letter-spacing:.04em;gap:8px;color:var(--sp-muted)}.sp-ext-crd-fraction{display:inline-flex;align-items:baseline;gap:9px;font-family:var(--font-eng-b2,var(--font-eng));font-size:14px;font-style:normal;font-weight:400;line-height:1}.sp-ext-crd-fraction b,.sp-ext-crd-fraction em{font:inherit;font-style:normal}.sp-ext-crd-fraction b{color:var(--sp-text)}.sp-ext-crd-fraction i{font:inherit;font-style:normal;opacity:.45}
@media(max-width:768px){body:not(.sp-edit) .sp-ext-crd-common.sp-ext-crd--mslide.sp-ext-crd--mobile-arrows .sp-ext-crd-nav{display:inline-flex;position:absolute;top:50%;z-index:9;align-items:center;justify-content:center;transform:translateY(-50%);cursor:pointer}.sp-ext-crd-common.sp-ext-crd--nav-minimal.sp-ext-crd--mobile-arrows .sp-ext-crd-nav{width:38px;height:46px;border:0;background:transparent;color:var(--sp-text)}.sp-ext-crd-common.sp-ext-crd--mobile-arrows .sp-ext-crd-nav--prev{left:10px}.sp-ext-crd-common.sp-ext-crd--mobile-arrows .sp-ext-crd-nav--next{right:10px}.sp-ext-crd-common.sp-ext-crd--navpos-top.sp-ext-crd--mobile-arrows .sp-ext-crd-nav{top:-24px}}
/* 사이드 이미지 — 콘텐츠(제목+카드) 옆 풀블리드 이미지/영상 열. 명시 row 로 행 밀림 방지(introleft 와 동일 함정) */
.sp-ext-crd-side{display:none}
.sp-ext-crd--side{padding:0;overflow:hidden}
.sp-ext-crd--side .sp-b{max-width:none;width:100%;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) var(--sp-crd-side-w,42%);grid-template-rows:repeat(4,auto) 1fr;column-gap:clamp(28px,5vw,72px);align-items:start;padding:var(--sty-pad-y,90px) 0 var(--sty-pad-y,90px) clamp(24px,6vw,96px)}
.sp-ext-crd--side .sp-b{grid-template-columns:minmax(0,calc(100% - var(--sp-crd-split-pc,var(--sp-crd-side-w,42%)) - var(--sp-crd-split-gap,64px))) minmax(0,var(--sp-crd-split-pc,var(--sp-crd-side-w,42%)));column-gap:var(--sp-crd-split-gap,64px)}
.sp-ext-crd--side .sp-b>*:not(.sp-ext-crd-side){grid-column:1;min-width:0}
.sp-ext-crd--side .sp-ext-crd-side{display:block;grid-column:2;grid-row:1/-1;align-self:stretch;position:relative;overflow:hidden;min-height:420px;margin:calc(var(--sty-pad-y,90px) * -1) 0}
.sp-ext-crd--side .sp-ext-crd-side img,.sp-ext-crd--side .sp-ext-crd-side video{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;width:100%;height:100%;object-fit:var(--sp-crd-side-fit,cover);object-position:var(--sp-crd-img-pos,center)}
.sp-ext-crd--side .sp-ext-crd-side-ph{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;display:flex;align-items:center;justify-content:center;background:var(--sp-bg3);color:var(--sp-muted);font-size:13px}
.sp-ext-crd--side-left .sp-b{grid-template-columns:var(--sp-crd-side-w,42%) minmax(0,1fr);padding-left:0;padding-right:clamp(24px,6vw,96px)}
.sp-ext-crd--side-left .sp-b{grid-template-columns:minmax(0,var(--sp-crd-split-pc,var(--sp-crd-side-w,42%))) minmax(0,calc(100% - var(--sp-crd-split-pc,var(--sp-crd-side-w,42%)) - var(--sp-crd-split-gap,64px)))}
.sp-ext-crd--side-left .sp-b>*:not(.sp-ext-crd-side){grid-column:2}
.sp-ext-crd--side-left .sp-ext-crd-side{grid-column:1}
/* 자유 분할 반응형 — PC/노트북/태블릿/모바일 값을 독립 적용. */
@media(min-width:1440px){.sp-ext-crd{--sp-crd-split-current:var(--sp-crd-split-pc,38%)}}
@media(min-width:1024px) and (max-width:1439px){.sp-ext-crd{--sp-crd-split-pc:var(--sp-crd-split-laptop,40%)}}
@media(min-width:901px) and (max-width:1023px){.sp-ext-crd{--sp-crd-split-pc:var(--sp-crd-split-tablet,44%)}}
@media(max-width:900px){
.sp-ext-crd--mobile-split.sp-ext-crd--introleft .sp-b,.sp-ext-crd--mobile-split.sp-ext-crd--topsplit .sp-b{display:grid;grid-template-columns:minmax(0,var(--sp-crd-split-tablet,44%)) minmax(0,calc(100% - var(--sp-crd-split-tablet,44%) - var(--sp-crd-split-gap,24px)));column-gap:var(--sp-crd-split-gap,24px)}
.sp-ext-crd--mobile-scroll .sp-ext-crd-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px}.sp-ext-crd--mobile-scroll .sp-ext-crd-item{flex:0 0 82%;scroll-snap-align:start}
}
@media(max-width:767px){.sp-ext-crd--mobile-split.sp-ext-crd--introleft .sp-b,.sp-ext-crd--mobile-split.sp-ext-crd--topsplit .sp-b{grid-template-columns:minmax(0,var(--sp-crd-split-mobile,50%)) minmax(0,calc(100% - var(--sp-crd-split-mobile,50%) - var(--sp-crd-split-gap,16px)))}}
/* 선택 영역 스티키. 기본은 PC/노트북만, 기기별 off 클래스가 명시적으로 해제한다. */
.sp-ext-crd--sticky-head .sp-pt-badge,.sp-ext-crd--sticky-head .sp-sec-title,.sp-ext-crd--sticky-head .sp-ext-crd-subtitle,.sp-ext-crd--sticky-head .sp-ext-crd-desc{position:relative}
.sp-ext-crd--sticky-aside .sp-ext-crd-aside,.sp-ext-crd--sticky-cards .sp-ext-crd-grid,.sp-ext-crd--sticky-cards .sp-ext-crd-slider,.sp-ext-crd--sticky-media .sp-ext-crd-side{position:sticky;top:var(--sp-crd-sticky-top,110px);align-self:start}
.sp-ext-crd--sticky-head .sp-sec-title{position:sticky;top:var(--sp-crd-sticky-top,110px);z-index:3}
@media(min-width:1440px){.sp-ext-crd--sticky-off-pc .sp-ext-crd-aside,.sp-ext-crd--sticky-off-pc .sp-ext-crd-grid,.sp-ext-crd--sticky-off-pc .sp-ext-crd-slider,.sp-ext-crd--sticky-off-pc .sp-ext-crd-side,.sp-ext-crd--sticky-off-pc .sp-sec-title{position:static}}
@media(min-width:1024px) and (max-width:1439px){.sp-ext-crd--sticky-off-laptop .sp-ext-crd-aside,.sp-ext-crd--sticky-off-laptop .sp-ext-crd-grid,.sp-ext-crd--sticky-off-laptop .sp-ext-crd-slider,.sp-ext-crd--sticky-off-laptop .sp-ext-crd-side,.sp-ext-crd--sticky-off-laptop .sp-sec-title{position:static}}
@media(min-width:768px) and (max-width:1023px){.sp-ext-crd--sticky-off-tablet .sp-ext-crd-aside,.sp-ext-crd--sticky-off-tablet .sp-ext-crd-grid,.sp-ext-crd--sticky-off-tablet .sp-ext-crd-slider,.sp-ext-crd--sticky-off-tablet .sp-ext-crd-side,.sp-ext-crd--sticky-off-tablet .sp-sec-title{position:static}}
@media(max-width:767px){.sp-ext-crd--sticky-off-mobile .sp-ext-crd-aside,.sp-ext-crd--sticky-off-mobile .sp-ext-crd-grid,.sp-ext-crd--sticky-off-mobile .sp-ext-crd-slider,.sp-ext-crd--sticky-off-mobile .sp-ext-crd-side,.sp-ext-crd--sticky-off-mobile .sp-sec-title{position:static}}
@media(max-width:900px){
.sp-ext-crd--side .sp-b,.sp-ext-crd--side-left .sp-b{display:block;padding:var(--sty-pad-y-mo,var(--sty-pad-y,60px)) var(--sp-pad-x,20px)}
.sp-ext-crd--side .sp-ext-crd-side,.sp-ext-crd--side-left .sp-ext-crd-side{position:relative;min-height:0;height:auto;aspect-ratio:16/9;margin:0 0 24px}
}

/* =============================================
   EXT — 비교 탭형 (cmp)
============================================= */
.sp-ext-cmp{--sp-cmp-tab-accent:var(--hv-main,var(--main-color,#381e0e));background:var(--sp-bg2);padding:var(--sty-pad-y,100px) 0;position:relative;overflow:hidden;word-break:keep-all;overflow-wrap:break-word}
@media (max-width:768px){.sp-ext-cmp{padding:var(--sty-pad-y-mo,var(--sty-pad-y,80px)) 0}}
/* 스티키 2단 — 제목·부제목·탭이 든 왼쪽 패널은 섹션 안에서 고정되고, 활성 탭 카드만 오른쪽에서 스크롤 */
.sp-ext-cmp-sticky-head,.sp-ext-cmp-sticky-content,.sp-ext-cmp-sticky-inner{min-width:0}
.sp-ext-cmp-sticky-bg{display:none}
.sp-ext-cmp--sticky{overflow:clip}
.sp-ext-cmp--sticky>.sp-b{display:grid;grid-template-columns:minmax(260px,var(--sp-cmp-sticky-w,38%)) minmax(0,1fr);gap:var(--sp-cmp-sticky-gap,clamp(42px,6vw,96px));align-items:start}
.sp-ext-cmp--sticky .sp-ext-cmp-sticky-head{position:sticky;top:var(--sp-cmp-sticky-top,100px);min-height:clamp(480px,calc(100vh - 160px),820px);overflow:hidden;border-radius:var(--sp-cmp-sticky-rad,0);background:var(--sp-cmp-sticky-bg,var(--sp-bg3,#f3efe8));isolation:isolate}
.sp-ext-cmp--sticky .sp-ext-cmp-sticky-head::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:rgba(0,0,0,var(--sp-cmp-sticky-dim,0))}
.sp-ext-cmp--sticky .sp-ext-cmp-sticky-inner{position:relative;z-index:2;display:flex;min-height:inherit;box-sizing:border-box;flex-direction:column;justify-content:center;padding:var(--sp-cmp-sticky-pad,clamp(34px,5vw,72px))}
.sp-ext-cmp--sticky .sp-ext-cmp-sticky-bg{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}
.sp-ext-cmp--sticky .sp-ext-cmp-sticky-bg img,.sp-ext-cmp--sticky .sp-ext-cmp-sticky-bg video{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.sp-ext-cmp--sticky .sp-ext-cmp-sticky-bgpick{display:none}
body.sp-edit .sp-ext-cmp--sticky .sp-ext-cmp-sticky-bgpick{position:absolute;right:14px;bottom:14px;z-index:4;display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(0,0,0,.58);color:#fff;font-size:11px;line-height:1;pointer-events:auto;cursor:pointer}
body.sp-edit .sp-ext-cmp--sticky .sp-ext-cmp-sticky-bg .sp-imgf-del{pointer-events:auto}
.sp-ext-cmp--sticky .sp-ext-cmp-tabswrap,.sp-ext-cmp--sticky .sp-ext-cmp-tabs{margin-top:clamp(24px,4vw,46px)}
.sp-ext-cmp--sticky .sp-ext-cmp-tabswrap .sp-ext-cmp-tabs{margin-top:0}
.sp-ext-cmp--sticky .sp-ext-cmp-sticky-content{min-width:0}
.sp-ext-cmp--sticky .sp-ext-cmp-pane{margin-top:0}
body.sp-edit .sp-ext-cmp--sticky .sp-ext-cmp-sticky-head{position:relative;top:auto}
@media(max-width:900px){
  .sp-ext-cmp--sticky{overflow:hidden}
  .sp-ext-cmp--sticky>.sp-b{display:block}
  .sp-ext-cmp--sticky .sp-ext-cmp-sticky-head{position:relative;top:auto;min-height:0;overflow:visible;border-radius:0;background:transparent}
  .sp-ext-cmp--sticky .sp-ext-cmp-sticky-head::after,.sp-ext-cmp--sticky .sp-ext-cmp-sticky-bg{display:none}
  .sp-ext-cmp--sticky .sp-ext-cmp-sticky-inner{display:block;min-height:0;padding:0}
  .sp-ext-cmp--sticky .sp-ext-cmp-pane{margin-top:32px}
}
/* 탭 바 — 하단 보더 + 활성 탭 언더라인. 탭이 많아 넘치면 가로 스크롤(+JS 화살표) */
.sp-ext-cmp-tabswrap{position:relative;margin-top:46px}
.sp-ext-cmp-tabswrap .sp-ext-cmp-tabs{margin-top:0}
/* justify-content:center 는 넘칠 때 첫 탭을 스크롤 불가 영역으로 밀어 잘림 → flex-start + auto-margin 스페이서로
   "들어맞으면 가운데, 넘치면 좌측부터 풀스크롤" 동작. overflow-y:hidden 으로 모바일 세로 스크롤(밑줄 1px 넘침) 차단. */
.sp-ext-cmp-tabs{position:relative;display:flex;justify-content:flex-start;align-items:stretch;margin-top:46px;border-bottom:1px solid var(--sp-line);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}
.sp-ext-cmp-tabs::-webkit-scrollbar{display:none}
/* 스페이서 — 기본 모드는 탭이 가로를 균등 분할(꽉 채움)하므로 비활성. (좌측정렬 모드도 비활성) */
.sp-ext-cmp-tabs::before,.sp-ext-cmp-tabs::after{display:none}
/* 탭 — 개수에 맞춰 가로 균등 분할(1=100% / 2=50% / 3=33% / 4=25% / 5=20% …). 넘치면 min-width 로 가로 스크롤 */
.sp-ext-cmp-tab{position:relative;flex:1 1 0;min-width:110px;max-width:none;padding:14px 18px 16px;text-align:center;cursor:pointer;opacity:.45;transition:opacity .2s}
/* 탭 왼쪽 정렬 — 콘텐츠 폭만큼만, 좌측부터. 간격 넉넉히 + 제목과 같은 좌측 라인 + 밑줄은 글자 폭 */
.sp-ext-cmp--tabsleft .sp-ext-cmp-tabs{justify-content:flex-start}
.sp-ext-cmp--tabsleft .sp-ext-cmp-tab{flex:0 0 auto;min-width:0;max-width:none;padding:14px 4px 16px;margin-right:clamp(32px,5vw,72px);text-align:left}
.sp-ext-cmp--tabsleft .sp-ext-cmp-tab:last-of-type{margin-right:0}
/* 탭 스크롤 화살표 — 넘칠 때만 JS 가 표시 */
.sp-ext-cmp-tnav{display:none;position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:28px;height:34px;align-items:center;justify-content:center;border:none;background:var(--sp-bg2,#fff);color:var(--sp-text,#222);cursor:pointer;opacity:.7}
.sp-ext-cmp-tnav:hover{opacity:1}
.sp-ext-cmp-tnav--prev{left:-6px}
.sp-ext-cmp-tnav--next{right:-6px}
.sp-ext-cmp-tab:hover{opacity:.75}
.sp-ext-cmp-tab.is-active{color:var(--sp-cmp-tab-accent);opacity:1}
.sp-ext-cmp-tab.is-active::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--sp-cmp-tab-accent)}
/* 슬라이딩 언더라인 — JS가 활성 탭 위치/폭으로 이동시킴. JS 미동작 시 위 ::after 폴백 */
.sp-ext-cmp-ind{position:absolute;bottom:0;height:2px;background:var(--sp-cmp-tab-accent);transition:left .35s cubic-bezier(.22,1,.36,1),width .35s cubic-bezier(.22,1,.36,1);pointer-events:none}
.sp-ext-cmp-tabs.has-ind .sp-ext-cmp-tab.is-active::after{display:none}
.sp-ext-cmp-tab-lb{display:block;font-size:var(--sty-t-sub,var(--sp-t-sub))}
.sp-ext-cmp-tab-sub{display:var(--sty-d-subt,block);margin-top:4px;font-size:var(--sty-t-sub,var(--sp-t-sm));color:var(--sty-c-sub,var(--sp-muted))}
/* 알약형 — 각 탭을 독립된 캡슐 버튼으로 표시 */
.sp-ext-cmp--tabpill .sp-ext-cmp-tabs{gap:10px;border-bottom:0}
.sp-ext-cmp--tabpill .sp-ext-cmp-tab,
.sp-ext-cmp--tabpill.sp-ext-cmp--tabsleft .sp-ext-cmp-tab{min-width:110px;margin-right:0;padding:12px 22px;border:1px solid var(--sp-line);border-radius:999px;background:rgba(127,127,127,.10);opacity:.78;transition:color .2s,background .2s,border-color .2s,opacity .2s,transform .2s}
.sp-ext-cmp--tabpill .sp-ext-cmp-tab:hover{background:rgba(127,127,127,.14);opacity:1;transform:translateY(-1px)}
.sp-ext-cmp--tabpill .sp-ext-cmp-tab.is-active{border-color:var(--sp-cmp-tab-accent);background:var(--sp-cmp-tab-accent);color:#fff;opacity:1}
.sp-ext-cmp--tabpill .sp-ext-cmp-tab.is-active .sp-ext-cmp-tab-sub{color:currentColor;opacity:.72}
.sp-ext-cmp--tabpill .sp-ext-cmp-tab.is-active::after,.sp-ext-cmp--tabpill .sp-ext-cmp-ind{display:none!important}
/* 라운드 박스형 — 얇은 테두리와 활성 카드 강조 */
.sp-ext-cmp--tabround .sp-ext-cmp-tabs{gap:10px;padding:8px 6px 12px;border-bottom:0}
.sp-ext-cmp--tabround .sp-ext-cmp-tab,
.sp-ext-cmp--tabround.sp-ext-cmp--tabsleft .sp-ext-cmp-tab{min-width:120px;margin-right:0;padding:16px 20px;border:1px solid var(--sp-line);border-radius:12px;background:transparent;opacity:.58;transition:background .2s,border-color .2s,box-shadow .2s,opacity .2s}
.sp-ext-cmp--tabround .sp-ext-cmp-tab:hover{opacity:.9}
.sp-ext-cmp--tabround .sp-ext-cmp-tab.is-active{border-color:var(--sp-cmp-tab-accent);background:var(--sp-bg2,#fff);color:var(--sp-cmp-tab-accent);box-shadow:0 4px 12px rgba(0,0,0,.08);opacity:1}
.sp-ext-cmp--tabround .sp-ext-cmp-tab.is-active::after,.sp-ext-cmp--tabround .sp-ext-cmp-ind{display:none!important}
/* 세그먼트형 — 하나의 트랙 안에서 활성 탭만 떠오르는 형태 */
.sp-ext-cmp--tabsegment .sp-ext-cmp-tabs{gap:4px;padding:5px;border:0;border-radius:14px;background:rgba(127,127,127,.09)}
.sp-ext-cmp--tabsegment .sp-ext-cmp-tab,
.sp-ext-cmp--tabsegment.sp-ext-cmp--tabsleft .sp-ext-cmp-tab{min-width:110px;margin-right:0;padding:12px 18px;border-radius:10px;opacity:.55;transition:background .2s,box-shadow .2s,opacity .2s}
.sp-ext-cmp--tabsegment .sp-ext-cmp-tab:hover{opacity:.85}
.sp-ext-cmp--tabsegment .sp-ext-cmp-tab.is-active{background:var(--sp-bg2,#fff);color:var(--sp-cmp-tab-accent);box-shadow:0 2px 9px rgba(0,0,0,.09);opacity:1}
.sp-ext-cmp--tabsegment .sp-ext-cmp-tab.is-active::after,.sp-ext-cmp--tabsegment .sp-ext-cmp-ind{display:none!important}
/* 미니멀 텍스트형 — 선·박스 없이 글자 대비만 사용 */
.sp-ext-cmp--tabminimal .sp-ext-cmp-tabs{gap:clamp(24px,5vw,72px);border-bottom:0}
.sp-ext-cmp--tabminimal .sp-ext-cmp-tab,
.sp-ext-cmp--tabminimal.sp-ext-cmp--tabsleft .sp-ext-cmp-tab{flex:0 0 auto;min-width:0;margin-right:0;padding:10px 2px 12px;opacity:.34}
.sp-ext-cmp--tabminimal:not(.sp-ext-cmp--tabsleft) .sp-ext-cmp-tabs{justify-content:center}
.sp-ext-cmp--tabminimal .sp-ext-cmp-tab:hover{opacity:.7}
.sp-ext-cmp--tabminimal .sp-ext-cmp-tab.is-active{color:var(--sp-cmp-tab-accent);box-shadow:inset 0 -2px 0 var(--sp-cmp-tab-accent);opacity:1}
.sp-ext-cmp--tabminimal .sp-ext-cmp-tab.is-active::after,.sp-ext-cmp--tabminimal .sp-ext-cmp-ind{display:none!important}
/* 탭 디자인 옵션 — 스텝 라인형: 첨부 레퍼런스처럼 균등 탭·넓은 호흡·하단 전체 라인/활성 구간 */
.sp-ext-cmp--tabstep .sp-ext-cmp-tabs{margin-top:clamp(42px,5vw,68px);border-bottom-color:rgba(34,34,34,.13)}
.sp-ext-cmp--tabstep .sp-ext-cmp-tab,
.sp-ext-cmp--tabstep.sp-ext-cmp--tabsleft .sp-ext-cmp-tab{flex:1 1 0;min-width:150px;margin-right:0;padding:20px clamp(12px,2vw,28px) 16px;text-align:center;opacity:.3}
.sp-ext-cmp--tabstep .sp-ext-cmp-tab:hover{opacity:.62}
.sp-ext-cmp--tabstep .sp-ext-cmp-tab.is-active{opacity:1}
.sp-ext-cmp--tabstep .sp-ext-cmp-tab-lb{font-size:var(--sty-t-sub,18px)!important;font-weight:400!important;line-height:1.35;letter-spacing:.07em}
.sp-ext-cmp--tabstep .sp-ext-cmp-tab-sub{margin-top:8px;font-size:var(--sty-t-sub,17px)!important;font-weight:400;line-height:1.4;color:currentColor}
.sp-ext-cmp--tabstep .sp-ext-cmp-tab.is-active::after,
.sp-ext-cmp--tabstep .sp-ext-cmp-ind{height:2px;background:var(--sp-cmp-tab-accent)}
/* 패널 — 미디어 | 본문 2단 */
.sp-ext-cmp-pane{display:none;margin-top:48px;grid-template-columns:var(--sp-cmp-ratio,minmax(0,5fr) minmax(0,6fr));gap:clamp(28px,4vw,56px);align-items:start}
.sp-ext-cmp-pane.is-active{display:grid}
/* 탭 전환 모션 — display 전환 시마다 스태거 등장. 모션 최소화/편집 모드는 전역·아래 규칙이 차단 */
@keyframes spCmpIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-media{animation:spCmpIn .55s cubic-bezier(.16,1,.3,1) both}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-t{animation:spCmpIn .5s .06s cubic-bezier(.16,1,.3,1) both}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-b{animation:spCmpIn .5s .12s cubic-bezier(.16,1,.3,1) both}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-card{animation:spCmpIn .5s .18s cubic-bezier(.16,1,.3,1) both}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-card:nth-child(2){animation-delay:.24s}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-card:nth-child(3){animation-delay:.3s}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-card:nth-child(4){animation-delay:.36s}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-card:nth-child(5){animation-delay:.42s}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-card:nth-child(n+6){animation-delay:.48s}
.sp-ext-cmp-pane.is-active .sp-ext-cmp-note{animation:spCmpIn .5s .42s cubic-bezier(.16,1,.3,1) both}
body.sp-edit .sp-ext-cmp-pane,body.sp-edit .sp-ext-cmp-pane *{animation:none!important}
.sp-ext-cmp-media{position:relative;overflow:hidden;border-radius:var(--sp-cmp-img-radius,14px);aspect-ratio:var(--sp-cmp-img-ratio,4/5);max-width:var(--sp-cmp-img-mw,none);background:var(--sp-bg3)}
.sp-ext-cmp-media img,.sp-ext-cmp-media video{width:100%;height:100%;object-fit:var(--sp-cmp-imgfit,cover);object-position:var(--sp-cmp-img-pos,center);display:block}
.sp-ext-cmp-media-ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:300px;color:var(--sp-muted);font-size:14px}
.sp-ext-cmp-t{font-size:var(--sty-t-title,var(--sp-t-sub));font-weight:var(--sty-w-title,400);margin-bottom:14px;white-space:pre-line;color:var(--sty-c-title,inherit)}
/* 맨위 설명 텍스트 — '항목 설명 크기/색'(t_itemd/c_itemd)으로 제어(특징 설명과 통일).
   cmp 패널엔 본문(t_body) 컨트롤이 없어 예전엔 조정 불가였음. 미설정 시 기존 폴백 유지. */
.sp-ext-cmp-b{font-size:var(--sty-t-itemd,var(--sty-t-body,var(--sp-t-sm)));line-height:1.9;color:var(--sty-c-itemd,var(--sty-c-desc,var(--sp-muted)));white-space:pre-line;margin-bottom:26px}
/* 특징 카드 — 세로 스택 */
.sp-ext-cmp-cards{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--sp-cmp-card-gap,var(--sty-card-gap,14px))}
.sp-ext-cmp-card{position:relative;background:var(--sp-card-bg,var(--sp-bg));border:var(--sty-card-bd,1px) solid var(--sty-card-bd-c,var(--sp-line));border-radius:var(--sty-card-radius,12px);padding:20px 24px;transition:background .28s;min-height:var(--sp-cmp-card-h,auto)}
.sp-ext-cmp-cards>.sp-ext-cmp-card{flex:0 0 calc((100% - (var(--sp-cmp-card-cols,1) - 1)*var(--sp-cmp-card-gap,var(--sty-card-gap,14px)))/var(--sp-cmp-card-cols,1));min-width:0}
.sp-ext-cmp-cards>.sp-ext-cmp-addcard{flex:0 0 100%}
/* 비편집 화면 — 제목·설명 모두 빈 특징 카드는 박스째 숨김 (편집용 빈 슬롯이 관리자 일반 화면에 흰 박스로 남는 것 방지) */
body:not(.sp-edit) .sp-ext-cmp-card:not(:has(h3:not(:empty))):not(:has(p:not(:empty))){display:none}
.sp-ext-cmp-card:hover{background:var(--sp-card-bg-hv,var(--sp-card-bg,var(--sp-bg)))}
.sp-ext-cmp-card h3{font-size:var(--sty-t-itemt,var(--sp-t-sm));font-weight:400;line-height:1.5;margin-bottom:6px;color:var(--sty-c-itemt,inherit);display:var(--sty-d-symn,block);white-space:pre-line;word-break:keep-all;overflow-wrap:break-word}
.sp-ext-cmp-card p{font-size:var(--sty-t-itemd,var(--sp-t-sm));color:var(--sty-c-itemd,var(--sp-muted));line-height:1.7;white-space:pre-line}
/* 특징 카드 원형 숫자 배지 — crd numbadge 와 동일 룩. 기본 숨김, 섹션 옵션(card_num) 켜면 표시 */
.sp-ext-cmp-cnum{display:none}
.sp-ext-cmp--cardnum .sp-ext-cmp-cnum{display:inline-flex;align-items:center;justify-content:center;width:var(--sp-cmp-cnum-size,32px);height:var(--sp-cmp-cnum-size,32px);min-width:var(--sp-cmp-cnum-size,32px);margin:0 0 12px;font-family:var(--font-eng);font-size:14px;font-weight:600;line-height:1;color:var(--sp-cmp-cnum-fg,#fff);background:var(--sp-cmp-cnum-bg,var(--sp-text,#1a1a1a));border-radius:50%}
/* 강조 코멘트 — 좌측 포인트 보더 */
/* 강조(note) — 크기는 '항목 설명 크기'(t_itemd)로 제어(예전엔 --sp-t-sm 하드코딩이라 조정 불가).
   색은 전용 컨트롤(강조 라벨/문구 색)이 우선, 미설정 시 '항목 설명 색'(c_itemd) 폴백 → 통일. */
.sp-ext-cmp-note{margin-top:22px;padding:18px 22px;border-left:2px solid var(--sp-cmp-note-bar,var(--sp-gold));background:var(--sp-card-bg,var(--sp-bg));border-radius:0 12px 12px 0;font-size:var(--sty-t-itemd,var(--sp-t-sm));line-height:1.8;color:var(--sp-cmp-note-tx,var(--sty-c-itemd,var(--sp-muted)))}
.sp-ext-cmp-note strong{color:var(--sp-cmp-note-lb,var(--sty-c-itemd,var(--sp-text,inherit)));font-weight:400;margin-right:6px}
.sp-ext-cmp-note span{white-space:pre-line}
/* 좌측 미디어 끔 — 텍스트 전용 1열 (편집 화면에선 미디어 슬롯 숨김) */
.sp-ext-cmp--nomedia .sp-ext-cmp-pane{grid-template-columns:1fr}
.sp-ext-cmp--nomedia .sp-ext-cmp-media{display:none}
/* 텍스트 100% + 이미지 — 이미지 위(전체폭) + 텍스트 아래(전체폭) */
.sp-ext-cmp--fullimg .sp-ext-cmp-pane{grid-template-columns:1fr}
/* 이미지 모양 '원본' + 텍스트100%+이미지 — 비율강제·크롭 없이 원본 그대로(가로 100%·세로 자동) */
.sp-ext-cmp--fullimg .sp-ext-cmp-media,.sp-ext-cmp--imgorig .sp-ext-cmp-media{width:100%;max-width:none;max-height:none;aspect-ratio:auto;height:auto;background:transparent}
.sp-ext-cmp--fullimg .sp-ext-cmp-media-track,.sp-ext-cmp--imgorig .sp-ext-cmp-media-track{height:auto;align-items:flex-start}
.sp-ext-cmp--fullimg .sp-ext-cmp-mslide,.sp-ext-cmp--imgorig .sp-ext-cmp-mslide{height:auto}
.sp-ext-cmp--fullimg .sp-ext-cmp-media img,.sp-ext-cmp--fullimg .sp-ext-cmp-media video,.sp-ext-cmp--imgorig .sp-ext-cmp-media img,.sp-ext-cmp--imgorig .sp-ext-cmp-media video{height:auto;object-fit:initial}
/* 방문자 — 이미지 없는 칸은 빈 미디어 박스(aspect-ratio 높이)가 큰 공백을 만들므로 숨기고 본문 풀폭으로.
   아코디언 active 규칙(display:block)이 더 구체적이라 !important 로 확실히 숨김 */
body:not(.sp-edit) .sp-ext-cmp-media.is-empty{display:none!important}
body:not(.sp-edit) .sp-ext-cmp-pane.is-active:has(> .sp-ext-cmp-media.is-empty){grid-template-columns:1fr!important}
body:not(.sp-edit) .sp-ext-cmp--acc .sp-ext-cmp-pane.is-active:has(> .sp-ext-cmp-media.is-empty) > .sp-ext-cmp-body{padding:0 26px 26px}
/* 특징 카드 이미지(웹진형) — [이미지 | 제목+설명] 행 구조 */
.sp-ext-cmp-cimg{display:none}
.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-card{display:flex;align-items:stretch;gap:var(--sp-cmp-cimg-gap,0);padding:0;overflow:hidden}
.sp-ext-cmp-pane.cmp-cardimg:not(.cmp-cardv) .sp-ext-cmp-card.is-flip{flex-direction:row-reverse}
.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-cimg{display:block;position:relative;flex:0 0 var(--sp-cmp-cimg-w,34%);width:var(--sp-cmp-cimg-w,34%);min-height:var(--sp-cmp-cimg-minh,120px);overflow:hidden;background:var(--sp-card-bg,var(--sp-bg3));border-radius:var(--sp-cmp-cimg-radius,0);aspect-ratio:var(--sp-cmp-cimg-ratio,auto)}
.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-cimg img,.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-cimg video{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--sp-cmp-img-pos,center)}
.sp-ext-cmp-cimg-ph{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;display:flex;align-items:center;justify-content:center;color:var(--sp-muted);font-size:12px}
/* 편집모드: 빈 카드 이미지(업로드 타깃)는 비율 지정 시 min-height 가 0 으로 풀려(좁은 5:5 웹진형) 칸이 작게 붕괴 →
   클릭(업로드)이 어려운 것 방지. 빈 칸일 때만 최소 클릭 높이 보장(이미지 올리면 비율대로 복귀) */
body.sp-edit .sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-cimg.is-empty,
body.sp-edit .sp-ext-cmp-pane.cmp-cardv .sp-ext-cmp-cimg.is-empty{min-height:120px}
.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-ctxt{flex:1;min-width:0;padding:20px 24px;display:flex;flex-direction:column;justify-content:center}
/* 카드에 이미지 없는 카드(방문자) — 텍스트 풀폭 그대로 */
@media (max-width:768px){
/* 웹진형 카드 이미지 — 모바일은 가로 행(이미지|텍스트)이 좁아 이미지가 세로 띠로 잘리므로
   세로 전환: 이미지 풀폭 위 + 텍스트 아래. 이미지 비율은 탭별 PC 설정을 그대로 사용.
   Safari 등에서 flex/grid 자식의 min-content 폭이 부모보다 커지는 경우가 있어
   패널→본문→카드 목록→카드를 전부 부모 폭 안으로 제한한다. */
.sp-ext-cmp-pane,
.sp-ext-cmp-body,
.sp-ext-cmp-cards{width:100%;max-width:100%;min-width:0}
.sp-ext-cmp-cards>.sp-ext-cmp-card{max-width:100%;min-width:0}
.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-card{flex-direction:column}
.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-cimg{flex:0 0 auto;width:100%;min-height:0;aspect-ratio:var(--sp-cmp-cimg-ratio,16/9)}
.sp-ext-cmp-pane.cmp-cardimg .sp-ext-cmp-ctxt{width:100%;max-width:100%;min-width:0}
}
/* 특징 카드 — 카드형(세로): 이미지 위, 텍스트 아래 (웹진형 가로 행을 세로로 전환) */
.sp-ext-cmp-pane.cmp-cardv .sp-ext-cmp-card{flex-direction:column;align-items:stretch}
.sp-ext-cmp-pane.cmp-cardv .sp-ext-cmp-cimg{flex:0 0 auto;width:100%;min-height:0;aspect-ratio:var(--sp-cmp-cimg-ratio,4/3)}
.sp-ext-cmp-pane.cmp-cardv .sp-ext-cmp-ctxt{flex:0 1 auto;justify-content:flex-start;padding:18px 20px}
/* 특징 카드 — 가로 슬라이드(스크롤스냅). PC/모바일 한 화면 칸수 = --sp-cmp-card-cols(-mo) */
.sp-ext-cmp-pane.cmp-cardslide .sp-ext-cmp-cards{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;padding-bottom:2px}
.sp-ext-cmp-pane.cmp-cardslide .sp-ext-cmp-cards::-webkit-scrollbar{display:none}
.sp-ext-cmp-pane.cmp-cardslide .sp-ext-cmp-card{flex:0 0 calc((100% - (var(--sp-cmp-card-cols,2) - 1)*var(--sp-cmp-card-gap,var(--sty-card-gap,14px)))/var(--sp-cmp-card-cols,2));scroll-snap-align:start}
/* 편집 모드 — 슬라이드라도 가로 스크롤 대신 줄바꿈(wrap)으로 모든 카드 + "특징 카드 추가" 버튼이 보이게(추가 쉽게). 실제 슬라이드는 발행 페이지에서만 */
body.sp-edit .sp-ext-cmp-pane.cmp-cardslide .sp-ext-cmp-cards{flex-wrap:wrap;overflow-x:visible;scroll-snap-type:none}
body.sp-edit .sp-ext-cmp-pane.cmp-cardslide .sp-ext-cmp-addcard{flex:0 0 100%}
@media (max-width:768px){
.sp-ext-cmp-cards>.sp-ext-cmp-card{flex-basis:calc((100% - (var(--sp-cmp-card-cols-mo,1) - 1)*var(--sp-cmp-card-gap,var(--sty-card-gap,14px)))/var(--sp-cmp-card-cols-mo,1))}
.sp-ext-cmp-pane.cmp-cardslide .sp-ext-cmp-card{flex-basis:calc((100% - (var(--sp-cmp-card-cols-mo,1) - 1)*var(--sp-cmp-card-gap,var(--sty-card-gap,14px)))/var(--sp-cmp-card-cols-mo,1))}
.sp-ext-cmp-pane.cmp-cardslide.cmp-cardimg .sp-ext-cmp-cimg{flex:0 0 auto;width:100%}
}
/* 특징 카드 이미지 '원본'(cimg_ratio=orig) — 웹진형/카드형 모두 비율강제·크롭 없이 원본 그대로(가로 100%·세로 자동).
   세로가 짧은 이미지가 object-fit:cover 로 잘리던 것 + 모바일 16/9·4/3 강제로 잘리던 것 해소(PC·모바일 동일).
   :not(media) 없이 cmp-cardimg/cardv 의 cover 규칙보다 뒤에 와서 동일 특이도로 덮음 */
.sp-ext-cmp-pane.cmp-cimg-orig .sp-ext-cmp-cimg{aspect-ratio:auto;min-height:0}
/* 가로 웹진형(행)만 — 이미지를 행 위쪽에 두고 자연 높이(세로 카드형은 폭 100% 유지해야 하므로 제외) */
.sp-ext-cmp-pane.cmp-cimg-orig:not(.cmp-cardv) .sp-ext-cmp-cimg{align-self:flex-start}
.sp-ext-cmp-pane.cmp-cimg-orig .sp-ext-cmp-cimg img,.sp-ext-cmp-pane.cmp-cimg-orig .sp-ext-cmp-cimg video{position:static;width:100%;height:auto;object-fit:initial}
/* 탭별 특징 카드 설정 인라인 바 — 편집 전용. 본문 최상단(txt2 그리드면 grid-column:1/-1 로 풀폭) */
.sp-cmp-tcbar{display:none}
body.sp-edit .sp-cmp-tcbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px;padding:7px 9px;background:rgba(124,58,237,.06);border:1px dashed rgba(124,58,237,.4);border-radius:8px;grid-column:1/-1}
.sp-cmp-tcbar-lbl{font-size:11px;font-weight:700;color:#7c3aed;white-space:nowrap}
.sp-cmp-tcbar-sel,.sp-cmp-tcbar-num{font-size:11px;font-family:'Pretendard',sans-serif;padding:4px 6px;border:1px solid var(--sp-line,#ddd);border-radius:5px;background:#fff;color:var(--sp-text,#222);max-width:150px}
.sp-cmp-tcbar-num{width:66px}
.sp-cmp-tcbar-mini{display:inline-flex;align-items:center;height:24px;padding:0 7px;border-radius:999px;background:rgba(124,58,237,.12);color:#5b21b6;font-size:11px;font-weight:700;line-height:1;white-space:nowrap}
/* 카드 슬라이드 네비게이션 — JS(방문자)가 래퍼/화살표/도트 주입. PC는 마우스로 넘길 수단 필요 */
.sp-ext-cmp-cardswrap{position:relative}
.sp-ext-cmp-cnav{position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:34px;height:34px;border-radius:50%;border:1px solid var(--sty-card-bd-c,var(--sp-line));background:var(--sp-card-bg,var(--sp-bg,#fff));color:var(--sty-c-title,var(--sp-text,#222));font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.14);opacity:.92;transition:opacity .2s,background .2s}
.sp-ext-cmp-cnav:hover{opacity:1;background:var(--sp-card-bg-hv,var(--sp-bg3))}
.sp-ext-cmp-cnav--prev{left:-8px}
.sp-ext-cmp-cnav--next{right:-8px}
.sp-ext-cmp-cdots{display:flex;justify-content:center;gap:6px;margin-top:16px}
.sp-ext-cmp-cdot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:var(--sp-line,#ccc);cursor:pointer;transition:width .25s,background .25s}
.sp-ext-cmp-cdot.is-active{width:18px;border-radius:4px;background:var(--sty-c-title,var(--sp-text,#222))}
@media (max-width:768px){.sp-ext-cmp-cnav{display:none!important}}
/* 방문자 — 라벨·문구 모두 빈 코멘트 박스 숨김(개별 필드는 [data-ph]:empty 공통 규칙이 처리) */
body:not(.sp-edit) .sp-ext-cmp-note:not(:has(strong:not(:empty))):not(:has(span:not(:empty))){display:none}
@media (max-width:768px){
.sp-ext-cmp-pane{grid-template-columns:1fr;gap:24px;margin-top:32px}
.sp-ext-cmp-media{aspect-ratio:var(--sp-cmp-img-ratio,16/10)}
.sp-ext-cmp-tab{box-sizing:border-box;min-width:33.333%;padding:11px 6px 12px;display:flex;flex-direction:column;justify-content:center}
.sp-ext-cmp-tab-lb,.sp-ext-cmp-tab-sub{line-height:1.35;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
.sp-ext-cmp-tab-lb{font-size:var(--sp-cmp-tab-lb-mo,15px)}
.sp-ext-cmp-tab-sub{font-size:var(--sp-cmp-tab-sub-mo,12px)}
}
/* 편집 전용 — 탭/카드 추가·삭제 버튼 */
.sp-ext-cmp-tab-del,.sp-ext-cmp-tab-moves,.sp-ext-cmp-card-del,.sp-ext-cmp-tab-add{display:none}
body.sp-edit .sp-ext-cmp-tab-del{display:flex;position:absolute;top:4px;right:4px;z-index:10;width:18px;height:18px;background:rgba(220,38,38,.85);color:#fff;border-radius:50%;align-items:center;justify-content:center;font-size:12px;line-height:1;cursor:pointer;border:none;padding:0}
body.sp-edit .sp-ext-cmp-tab-del:hover{background:#dc2626}
body.sp-edit .sp-ext-cmp-tab{padding-top:max(28px,calc(var(--sty-tab-py,18px) + 8px))}
body.sp-edit .sp-ext-cmp-tab-moves{display:flex;position:absolute;top:4px;left:4px;z-index:10;gap:3px}
body.sp-edit .sp-ext-cmp-tab-moves button{display:flex;width:22px;height:20px;padding:0;align-items:center;justify-content:center;border:1px solid rgba(124,58,237,.35);border-radius:5px;background:rgba(255,255,255,.94);color:#6d28d9;font-size:12px;line-height:1;cursor:pointer}
body.sp-edit .sp-ext-cmp-tab-moves button:hover:not(:disabled),body.sp-edit .sp-ext-cmp-tab-moves button:focus-visible{background:#7c3aed;color:#fff;outline:2px solid rgba(124,58,237,.32);outline-offset:1px}
body.sp-edit .sp-ext-cmp-tab-moves button:disabled{opacity:.3;cursor:not-allowed}
body.sp-edit .sp-ext-cmp-card-del{display:flex;position:absolute;top:8px;right:8px;z-index:10;width:20px;height:20px;background:rgba(220,38,38,.85);color:#fff;border-radius:50%;align-items:center;justify-content:center;font-size:13px;line-height:1;cursor:pointer;border:none;padding:0}
body.sp-edit .sp-ext-cmp-card-del:hover{background:#dc2626}
body.sp-edit .sp-ext-cmp-card-flip{display:flex;position:absolute;top:8px;right:34px;z-index:10;width:22px;height:20px;background:rgba(17,24,39,.72);color:#fff;border-radius:999px;align-items:center;justify-content:center;font-size:13px;line-height:1;cursor:pointer;border:none;padding:0}
body.sp-edit .sp-ext-cmp-card-flip.is-on{background:#2563eb}
body.sp-edit .sp-ext-cmp-card-flip:hover{background:#111827}
body.sp-edit .sp-ext-cmp-tab-add{display:inline-flex;align-self:center;margin-left:10px;padding:7px 14px;background:rgba(124,58,237,.1);border:1px dashed rgba(124,58,237,.5);color:#7c3aed;font-family:'Pretendard',sans-serif;font-size:12px;font-weight:600;border-radius:8px;cursor:pointer;white-space:nowrap}
body.sp-edit .sp-ext-cmp-tab-add:hover{background:rgba(124,58,237,.2);border-style:solid}
body.sp-edit .sp-ext-cmp-addcard{margin:4px 0 0}
/* 미디어 슬라이드 — 박스(aspect-ratio 고정) 안에서 가로 스크롤스냅 트랙 + 도트(+자동재생은 JS). 슬라이드는 박스를 꽉 채움 */
.sp-ext-cmp-media--slider{position:relative}
.sp-ext-cmp-media-track{display:flex;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;border-radius:inherit}
.sp-ext-cmp-media-track::-webkit-scrollbar{display:none}
.sp-ext-cmp-mslide{position:relative;flex:0 0 100%;width:100%;height:100%;min-width:0;scroll-snap-align:start;background:var(--sp-bg3)}
.sp-ext-cmp-mslide img,.sp-ext-cmp-mslide video{width:100%;height:100%;object-fit:var(--sp-cmp-imgfit,cover);object-position:var(--sp-cmp-img-pos,center);display:block}
.sp-ext-cmp-mdots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;z-index:6;pointer-events:auto}
.sp-ext-cmp-mdot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 0 4px rgba(0,0,0,.25);cursor:pointer;transition:width .25s,background .25s}
.sp-ext-cmp-mdot.is-active{width:18px;border-radius:4px;background:#fff}
/* 편집 모드 — 스냅 끄고(슬라이드 자유 스크롤) 추가 버튼 좌상단 오버레이 */
body.sp-edit .sp-ext-cmp-media-track{scroll-snap-type:none}
.sp-ext-cmp-maddslide{display:none}
body.sp-edit .sp-ext-cmp-maddslide{display:inline-flex;align-items:center;gap:4px;position:absolute;left:8px;top:8px;z-index:7;padding:6px 12px;background:rgba(124,58,237,.92);border:none;color:#fff;font-family:'Pretendard',sans-serif;font-size:12px;font-weight:600;border-radius:8px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.2)}
body.sp-edit .sp-ext-cmp-maddslide:hover{background:#7c3aed}
/* ── 표시 방식: 아코디언(sty.mode=accordion) — 같은 탭 데이터를 펼침/접힘 목록으로 ─────────
   탭바 대신 라벨 헤더(번호 자동) + 클릭 시 본문 펼침. 탭형/아코디언은 sty 토글로 라이브 전환(재렌더 불필요) */
.sp-ext-cmp-acchead{display:none}
.sp-ext-cmp--acc .sp-ext-cmp-tabs,.sp-ext-cmp--acc .sp-ext-cmp-tabswrap{display:none!important}
.sp-ext-cmp--acc .sp-ext-cmp-pane{display:block!important;margin:0 0 var(--sp-cmp-acc-gap,14px);border:1px solid var(--sty-card-bd-c,var(--sp-line));border-radius:var(--sty-card-radius,12px);overflow:hidden;background:var(--sp-card-bg,var(--sp-bg))}
/* 보더 위치 — 아래만(line) / 없음(none) */
.sp-ext-cmp--acc.sp-ext-cmp--acc-line .sp-ext-cmp-pane{border:none;border-bottom:1px solid var(--sty-card-bd-c,var(--sp-line));border-radius:0;box-shadow:none}
.sp-ext-cmp--acc.sp-ext-cmp--acc-line .sp-ext-cmp-pane:last-child{border-bottom:none}
.sp-ext-cmp--acc.sp-ext-cmp--acc-none .sp-ext-cmp-pane{border:none;border-radius:0;box-shadow:none}
.sp-ext-cmp--acc .sp-ext-cmp-pane[data-cmp-pane="0"]{margin-top:40px}
.sp-ext-cmp--acc .sp-ext-cmp-acchead{display:flex;align-items:center;gap:16px;width:100%;padding:var(--sp-cmp-acc-pad,22px) 26px;cursor:pointer;transition:background .25s}
/* 펼친(active/편집) 헤더 — 아래 여백을 줄이고 연한 구분선으로 본문과 분리. 헤더 세로폭(acc_pad)이 커도 펼친 칸의 헤더↔본문 큰 공백 방지. 닫힌 칸은 acc_pad 그대로(클릭 영역).
   위 패딩은 acc_pad 따르되 과하지 않게 캡(min). 아래는 구분선 + 작은 여백으로 고정. */
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-acchead,
body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-acchead{padding-top:min(var(--sp-cmp-acc-pad,22px),24px);padding-bottom:20px;margin-bottom:10px;border-bottom:1px solid var(--sty-card-bd-c,var(--sp-line))}
/* 펼친 본문 첫 요소(보통 p/h3)의 테마 기본 위쪽 마진 제거 — 구분선과 본문 사이 추가 공백의 진짜 원인 */
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body>:first-child,
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-media>:first-child,
body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-body>:first-child{margin-top:0}
.sp-ext-cmp--acc .sp-ext-cmp-acchead:hover{background:var(--sp-card-bg-hv,var(--sp-bg3))}
/* 펼쳐진(active) 패널 — 연한 색으로 채움(hover 채움색과 동일). 카드 호버색 옵션으로 조절 */
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active{background:var(--sp-cmp-acc-fill,var(--sp-card-bg-hv,var(--sp-bg3)))}
/* 내부 레이아웃 = 텍스트:텍스트 — 미디어 자리도 텍스트로(제목+설명 | 특징목록). 비율은 이미지:텍스트 비율(col_img/col_tx) 따라감(미설정 시 1:1) */
.sp-ext-cmp--txt2 .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body,
body.sp-edit .sp-ext-cmp--txt2 .sp-ext-cmp-pane>.sp-ext-cmp-body{display:grid!important;grid-template-columns:var(--sp-cmp-ratio,1fr 1fr);column-gap:clamp(24px,4vw,56px);row-gap:6px;align-items:start}
.sp-ext-cmp--txt2 .sp-ext-cmp-t{grid-column:1;grid-row:1}
.sp-ext-cmp--txt2 .sp-ext-cmp-b{grid-column:1;grid-row:2}
.sp-ext-cmp--txt2 .sp-ext-cmp-cards{grid-column:2;grid-row:1/span 2;margin-top:0}
.sp-ext-cmp--txt2 .sp-ext-cmp-cardswrap{grid-column:2;grid-row:1/span 2}
.sp-ext-cmp--txt2 .sp-ext-cmp-note{grid-column:1/-1;grid-row:3}
@media(max-width:768px){
  .sp-ext-cmp--txt2 .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body,
  body.sp-edit .sp-ext-cmp--txt2 .sp-ext-cmp-pane>.sp-ext-cmp-body{grid-template-columns:1fr}
  .sp-ext-cmp--txt2 .sp-ext-cmp-t,.sp-ext-cmp--txt2 .sp-ext-cmp-b,.sp-ext-cmp--txt2 .sp-ext-cmp-cards,.sp-ext-cmp--txt2 .sp-ext-cmp-note{grid-column:1;grid-row:auto}
}
.sp-ext-cmp--acc .sp-ext-cmp-accnum{flex:0 0 auto;font-size:var(--sp-t-sm);letter-spacing:.04em;color:var(--sty-c-title,var(--sp-text,#222));opacity:.55;min-width:1.6em}
/* 헤더 번호 숨김(acc_num=hide) — 번호 자체를 미표시 */
.sp-ext-cmp--acc.sp-ext-cmp--accnumoff .sp-ext-cmp-accnum{display:none}
/* 아코디언 헤더 번호 배지 옵션(acc_num) — 특징 카드(card_num)와 독립. 켜면 헤더 번호가 원형 배지로 */
.sp-ext-cmp--acc.sp-ext-cmp--accnum .sp-ext-cmp-accnum{display:inline-flex;align-items:center;justify-content:center;width:var(--sp-cmp-cnum-size,32px);height:var(--sp-cmp-cnum-size,32px);min-width:var(--sp-cmp-cnum-size,32px);font-family:var(--font-eng);font-size:14px;font-weight:600;line-height:1;letter-spacing:0;opacity:1;color:var(--sp-cmp-cnum-fg,#fff);background:var(--sp-cmp-cnum-bg,var(--sp-text,#1a1a1a));border-radius:50%}
.sp-ext-cmp--acc .sp-ext-cmp-acchead-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.sp-ext-cmp--acc .sp-ext-cmp-acchead-lb{font-size:var(--sty-t-sub,var(--sp-t-sub));color:var(--sty-c-title,inherit);white-space:pre-line}
.sp-ext-cmp--acc .sp-ext-cmp-acchead-sub{font-size:var(--sp-t-sm);color:var(--sty-c-sub,var(--sp-muted));display:var(--sty-d-subt,block)}
.sp-ext-cmp--acc .sp-ext-cmp-acchead-ico{flex:0 0 auto;display:flex;color:var(--sp-muted);transition:transform .3s cubic-bezier(.22,1,.36,1)}
.sp-ext-cmp--acc .sp-ext-cmp-acchead-ico svg{display:block}
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-acchead .sp-ext-cmp-acchead-ico{transform:rotate(180deg)}
/* 펼친 내용 = 탭형과 동일하게 데스크탑 5:5(이미지|텍스트) 그리드, 모바일만 1열 100% */
.sp-ext-cmp--acc .sp-ext-cmp-media,.sp-ext-cmp--acc .sp-ext-cmp-body{display:none}
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active{display:grid!important;grid-template-columns:var(--sp-cmp-ratio,minmax(0,5fr) minmax(0,6fr));column-gap:clamp(20px,3vw,40px);align-items:start}
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-acchead{grid-column:1/-1}
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-media{display:block;margin:0 0 26px 26px}
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body{display:block;padding:0 26px 26px 0}
.sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane.is-active{grid-template-columns:1fr}
.sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane.is-active>.sp-ext-cmp-media{display:none!important}
.sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body{padding:0 26px 26px}
/* 페러런스형(panelcard) — 펼친 회색 패널 안에 콘텐츠를 흰 카드로 감쌈(미디어+본문 통합 / 미디어 없으면 본문 단독). opt-in */
.sp-ext-cmp--panelcard .sp-ext-cmp-pane{box-shadow:0 2px 12px rgba(0,0,0,.05)}
.sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active,
body.sp-edit .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane{column-gap:0;padding:0 22px 22px}
.sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-media,
body.sp-edit .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-media{background:var(--sp-cmp-card-bg,#fff);margin:0;border-radius:14px 0 0 14px;padding:22px}
.sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body,
body.sp-edit .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-body{background:var(--sp-cmp-card-bg,#fff);margin:0;border-radius:0 14px 14px 0;padding:22px}
.sp-ext-cmp--panelcard.sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body,
body.sp-edit .sp-ext-cmp--panelcard.sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane>.sp-ext-cmp-body{border-radius:14px}
@media(max-width:768px){
  .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-media,
  .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body,
  body.sp-edit .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-media,
  body.sp-edit .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-body{border-radius:12px;margin:0}
  .sp-ext-cmp--panelcard.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-media{margin-bottom:12px}
}
/* 편집 모드 — 전 항목 펼쳐서 편집(같은 5:5 그리드) */
body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane{display:grid!important;grid-template-columns:var(--sp-cmp-ratio,minmax(0,5fr) minmax(0,6fr));column-gap:clamp(20px,3vw,40px);align-items:start}
body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-acchead{grid-column:1/-1}
body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-media{display:block;margin:0 0 26px 26px}
body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-body{display:block;padding:0 26px 26px 0}
body.sp-edit .sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane{grid-template-columns:1fr}
body.sp-edit .sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane>.sp-ext-cmp-media{display:none!important}
body.sp-edit .sp-ext-cmp--acc.sp-ext-cmp--nomedia .sp-ext-cmp-pane>.sp-ext-cmp-body{padding:0 26px 26px}
/* 모바일 — 아코디언 펼친 내용 1열 100% */
@media (max-width:768px){
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active,body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane{grid-template-columns:1fr!important}
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-media,body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-media{margin:0 20px 20px}
.sp-ext-cmp--acc .sp-ext-cmp-pane.is-active>.sp-ext-cmp-body,body.sp-edit .sp-ext-cmp--acc .sp-ext-cmp-pane>.sp-ext-cmp-body{padding:0 20px 22px}
}

/* =============================================
   EXT — 비교표 (ctab)  ※ 데스크톱=표 / 모바일=옵션카드 하이브리드, sty 변수는 cmp 와 동일 토큰
============================================= */
.sp-ext-ctab{background:var(--sp-bg2);padding-top:var(--sty-pad-top,var(--sty-pad-y,100px));padding-bottom:var(--sty-pad-bottom,var(--sty-pad-y,100px));position:relative;overflow:hidden;word-break:keep-all;overflow-wrap:break-word}
@media (max-width:768px){.sp-ext-ctab{padding-top:var(--sty-pad-y-mo,var(--sty-pad-top,var(--sty-pad-y,72px)));padding-bottom:var(--sty-pad-y-mo,var(--sty-pad-bottom,var(--sty-pad-y,72px)))}}
.sp-ext-ctab .sp-sec-title{color:var(--sty-c-title,inherit);font-size:var(--sty-t-title,var(--sp-t-hd));font-weight:var(--sty-w-title,400);letter-spacing:-.02em;display:var(--sty-d-title,block)}
.sp-ext-ctab-desc{margin:14px 0 0;font-size:var(--sty-t-desc,var(--sp-t-sm));line-height:1.9;color:var(--sty-c-desc,var(--sp-muted));max-width:var(--sp-ctab-desc-mw,720px);white-space:pre-line}
/* 가로 스크롤 래퍼 (모바일/좁은 폭 대응) */
.sp-ext-ctab-scroll{margin-top:46px;overflow-x:auto;scrollbar-width:thin;border:var(--sty-card-bd,1px) solid var(--sty-card-bd-c,var(--sp-line));border-radius:var(--sty-card-radius,0)}
.sp-ext-ctab-scroll::-webkit-scrollbar{height:6px}
.sp-ext-ctab-scroll::-webkit-scrollbar-thumb{background:var(--sp-muted2);border-radius:6px}
.sp-ext-ctab-table{width:100%;border-collapse:collapse;min-width:560px;background:var(--sp-card-bg,var(--sp-bg));font-family:inherit}
.sp-ext-ctab-table caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.sp-ext-ctab-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sp-ext-ctab-table th,.sp-ext-ctab-table td{padding:20px 22px;text-align:center;vertical-align:middle;border-bottom:1px solid var(--sty-card-bd-c,var(--sp-line));font-size:var(--sty-t-itemd,var(--sp-t-sm));font-weight:400;line-height:1.75;color:var(--sty-c-itemd,inherit);font-family:inherit}
/* 셀 값 줄바꿈(\n) 살리기 — 옛날엔 pre-line 이 없어 줄바꿈이 공백으로 무시됨. 편집 저장도 computed white-space 로 \n 보존됨 */
.sp-ext-ctab-v{white-space:pre-line}
/* 프레임(scroll 래퍼)과 마지막 행 보더 중복 방지 — 첫 칸은 th 이므로 td,th 모두 */
.sp-ext-ctab-table tbody tr:last-child td,.sp-ext-ctab-table tbody tr:last-child th{border-bottom:0}
/* 헤더 행 — 위 영역. head_bg 지정 시 본문과 배경 구분. 하단 구분선 색은 '카드 보더 색'으로 제어(기본 진한 텍스트색) */
.sp-ext-ctab-table thead th{background:var(--sp-ctab-head-bg,var(--sp-card-bg,var(--sp-bg)));position:sticky;top:0;z-index:3;border-bottom:var(--sty-card-bd,1px) solid var(--sty-card-bd-c,var(--sp-text));padding-top:24px;padding-bottom:22px;color:inherit}
.sp-ext-ctab-colh{display:flex;flex-direction:column;gap:5px;align-items:center}
/* 열 제목(매몰법 등) = '항목 제목 크기/색' 옵션으로 제어 */
.sp-ext-ctab-colh-name{font-size:var(--sty-t-itemt,var(--sp-t-sub));font-weight:400;letter-spacing:-.01em;color:var(--sty-c-itemt,inherit)}
.sp-ext-ctab-colh-sub{font-size:var(--sty-t-sub,var(--sp-t-sm));color:var(--sty-c-sub,var(--sp-muted));font-family:var(--font-eng);font-weight:300;letter-spacing:.04em;display:var(--sty-d-subt,block)}
/* 첫 열(항목 라벨) 고정 */
.sp-ext-ctab-table th:first-child,.sp-ext-ctab-table td:first-child{position:sticky;left:0;z-index:2;text-align:left;background:var(--sp-card-bg,var(--sp-bg));min-width:130px;color:var(--sty-c-itemd,inherit);font-weight:400;box-shadow:1px 0 0 var(--sp-line)}
.sp-ext-ctab-table thead th:first-child{z-index:4;background:var(--sp-ctab-head-bg,var(--sp-card-bg,var(--sp-bg)))}
/* 행 라벨 + 셀 값(본문) = '항목 설명 크기/색' 옵션으로 제어 */
.sp-ext-ctab-rowlabel{font-size:var(--sty-t-itemd,inherit)}
/* 강조(추천) 컬럼 — 골드 전체 테두리 + 옅은 골드 틴트 (color-mix 미지원 브라우저는 rgba 폴백) */
.sp-ext-ctab-table .is-hl{border-left:1px solid var(--sp-gold);border-right:1px solid var(--sp-gold)}
.sp-ext-ctab-table td.is-hl,.sp-ext-ctab-table thead th.is-hl{background:rgba(150,120,80,.06);background:color-mix(in srgb,var(--sp-gold) 7%,transparent)}
.sp-ext-ctab-table thead th.is-hl{border-top:1px solid var(--sp-gold);border-bottom-color:var(--sp-gold)}
.sp-ext-ctab-table tbody tr:last-child td.is-hl{border-bottom:1px solid var(--sp-gold)}
.sp-ext-ctab-table thead th.is-hl .sp-ext-ctab-colh-name{color:var(--sp-gold)}
.sp-ext-ctab-badge{display:inline-block;margin-bottom:7px;font-family:var(--font-eng);font-size:var(--sp-t-sm);font-weight:400;letter-spacing:.1em;color:var(--sp-gold);border:1px solid var(--sp-gold);border-radius:999px;padding:2px 12px}
/* 강조 컬럼 셀 텍스트 강조 */
.sp-ext-ctab-table tbody td.is-hl .sp-ext-ctab-v,.sp-ext-ctab-table tbody td.is-hl.sp-ext-ctab-vtd{color:var(--sp-gold)}
/* 마크 (○ / ✕ / △) */
.sp-ext-ctab-mk{display:inline-block;font-size:17px;line-height:1;font-weight:300}
.sp-ext-ctab-mk--o{color:var(--sp-gold)}
.sp-ext-ctab-mk--x{color:var(--sp-muted2)}
.sp-ext-ctab-mk--tri{color:var(--sp-muted);font-size:14px}
/* 행 라벨 아이콘 (pt06 체크리스트 아이콘 재사용) */
.sp-ext-ctab-rowico{display:inline-flex;align-items:center;justify-content:center;width:1.3em;height:1.3em;color:var(--sp-gold);vertical-align:-.28em;margin-right:7px;flex:0 0 auto}
.sp-ext-ctab-rowico svg{width:100%;height:100%}
.sp-ext-ctab-rl-line{display:flex;align-items:center;gap:7px;width:100%}
body.sp-edit .sp-ext-ctab-rowico--edit{cursor:pointer;width:1.7em;height:1.7em;border:1px dashed rgba(124,58,237,.45);border-radius:6px;color:#7c3aed}
.sp-ext-ctab-rowico--edit.is-empty{color:var(--sp-muted2);font-size:13px;font-weight:400}
.sp-ext-ctab-rowico--edit:hover{border-color:#7c3aed;background:rgba(124,58,237,.08)}
/* 셀 이미지 — 셀 꽉 채움 */
.sp-ext-ctab-td--img{padding:0!important}
.sp-ext-ctab-cimg{display:block;width:100%;height:120px;overflow:hidden;background:var(--sp-bg3)}
.sp-ext-ctab-cimg img,.sp-ext-ctab-cimg video{width:100%;height:100%;object-fit:cover;display:block}
.sp-ext-ctab-cimg-ph{display:flex;align-items:center;justify-content:center;width:100%;height:120px;color:var(--sp-muted);font-size:12px}
.sp-ext-ctab-foot{margin-top:18px;font-size:var(--sty-t-desc,var(--sp-t-sm));color:var(--sty-c-desc,var(--sp-muted));white-space:pre-line}
@media (max-width:768px){
.sp-ext-ctab-scroll{margin-top:32px}
.sp-ext-ctab-table th,.sp-ext-ctab-table td{padding:15px 14px}
.sp-ext-ctab-cimg,.sp-ext-ctab-cimg-ph{height:96px}
}
/* ── 하이브리드: 모바일 옵션 카드 ── */
.sp-ext-ctab-cards{display:none;margin-top:32px;flex-direction:column;gap:var(--sty-card-gap,16px)}
.sp-ext-ctab-card{border:var(--sty-card-bd,1px) solid var(--sty-card-bd-c,var(--sp-line));border-radius:var(--sty-card-radius,0);background:var(--sp-card-bg,var(--sp-bg));overflow:hidden}
.sp-ext-ctab-card.is-hl{border:1px solid var(--sp-gold)}
.sp-ext-ctab-card-h{padding:18px 20px;border-bottom:1px solid var(--sp-line);display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.sp-ext-ctab-card.is-hl .sp-ext-ctab-card-h{background:color-mix(in srgb,var(--sp-gold) 6%,transparent);border-bottom-color:var(--sp-gold)}
.sp-ext-ctab-card-name{font-size:var(--sty-t-sub,var(--sp-t-sub));font-weight:400;letter-spacing:-.01em;color:var(--sty-c-title,inherit)}
.sp-ext-ctab-card.is-hl .sp-ext-ctab-card-name{color:var(--sp-gold)}
.sp-ext-ctab-card-sub{font-size:var(--sp-t-sm);color:var(--sp-muted);font-family:var(--font-eng);font-weight:300;letter-spacing:.04em}
.sp-ext-ctab-card-dl{margin:0}
.sp-ext-ctab-card-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--sp-line);font-size:var(--sp-t-sm)}
.sp-ext-ctab-card-row:last-child{border-bottom:0}
.sp-ext-ctab-card-row dt{color:var(--sp-muted);flex:0 0 auto}
.sp-ext-ctab-card-row dd{margin:0;text-align:right;font-weight:400}
.sp-ext-ctab-card-row--img{flex-direction:column;align-items:stretch;gap:10px;padding:0}
.sp-ext-ctab-card-row--img dt{padding:14px 20px 0}
.sp-ext-ctab-card-row--img dd{text-align:left}
.sp-ext-ctab-card-row--img .sp-ext-ctab-cimg,.sp-ext-ctab-card-row--img .sp-ext-ctab-cimg img,.sp-ext-ctab-card-row--img .sp-ext-ctab-cimg video{width:100%;height:160px}
/* 표↔카드 스왑 — 방문자 모바일만 카드, 편집은 항상 표 */
@media (max-width:768px){
.sp-ext-ctab-scroll{display:none}
.sp-ext-ctab-cards{display:flex}
}
body.sp-edit .sp-ext-ctab-scroll{display:none!important}
body.sp-edit .sp-ext-ctab-cards{display:none!important}
/* ── 편집 전용 컨트롤 ── */
.sp-ext-ctab-colctl,.sp-ext-ctab-rowctl,.sp-ext-ctab-add-col,.sp-ext-ctab-add-row,.sp-ext-ctab-addcol,.sp-ext-ctab-addrow-tr{display:none}
.sp-ext-ctab-corner-tx{font-size:11px;color:var(--sp-muted2)}
body.sp-edit .sp-ext-ctab-colctl,body.sp-edit .sp-ext-ctab-rowctl{display:inline-flex;gap:4px;justify-content:center;margin-bottom:8px}
body.sp-edit .sp-ext-ctab-rowctl{margin-bottom:6px}
body.sp-edit .sp-ext-ctab-addcol{display:table-cell;width:46px}
body.sp-edit .sp-ext-ctab-addrow-tr{display:table-row}
body.sp-edit .sp-ext-ctab-addrow-tr td{text-align:center;padding:10px;border-bottom:0}
.sp-ext-ctab-col-hl,.sp-ext-ctab-col-del,.sp-ext-ctab-row-kind,.sp-ext-ctab-row-del{cursor:pointer;border:none;border-radius:4px;font-family:'Pretendard',sans-serif;font-size:11px;line-height:1;padding:4px 6px}
.sp-ext-ctab-col-hl{background:rgba(154,123,79,.12);color:var(--sp-gold);border:1px solid rgba(154,123,79,.4)}
.sp-ext-ctab-col-hl.is-on{background:var(--sp-gold);color:#fff}
.sp-ext-ctab-row-kind{background:rgba(124,58,237,.1);color:#7c3aed;border:1px solid rgba(124,58,237,.4);font-weight:600}
.sp-ext-ctab-col-del,.sp-ext-ctab-row-del{background:rgba(220,38,38,.85);color:#fff;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0}
.sp-ext-ctab-col-del:hover,.sp-ext-ctab-row-del:hover{background:#dc2626}
.sp-ext-ctab-add-col{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:rgba(124,58,237,.1);border:1px dashed rgba(124,58,237,.5);color:#7c3aed;border-radius:6px;cursor:pointer;font-size:16px}
.sp-ext-ctab-add-row{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;background:rgba(124,58,237,.1);border:1px dashed rgba(124,58,237,.5);color:#7c3aed;font-family:'Pretendard',sans-serif;font-size:12px;font-weight:600;border-radius:8px;cursor:pointer}
.sp-ext-ctab-add-col:hover,.sp-ext-ctab-add-row:hover{background:rgba(124,58,237,.2)}
.sp-ext-ctab-mkbtn{cursor:pointer;background:transparent;border:1px dashed var(--sp-line);border-radius:6px;padding:6px 10px;min-width:40px;font-size:17px;line-height:1;color:inherit}
.sp-ext-ctab-mkbtn:hover{border-color:var(--sp-gold)}
.sp-ext-ctab-mk-ph{color:var(--sp-muted2);font-size:14px}
/* 편집 호스트는 블록 레벨로 — Chrome 표 셀 inline contenteditable 입력 이탈 버그 회피.
   텍스트 셀은 <td> 자체(.sp-ext-ctab-vtd)가 편집 호스트, 행라벨/열헤더는 block 스팬 */
.sp-ext-ctab-vtd{cursor:text}
body.sp-edit td.sp-ext-ctab-vtd{min-width:60px}
body.sp-edit td.sp-ext-ctab-vtd:empty::before{content:attr(data-ph);color:var(--sp-muted2)}
body.sp-edit .sp-ext-ctab-rowlabel,body.sp-edit .sp-ext-ctab-colh-name,body.sp-edit .sp-ext-ctab-colh-sub{display:block;min-height:1.1em;min-width:40px}
/* 빈 인라인편집 필드 클릭영역 확보 */
body.sp-edit .sp-ext-ctab-rowlabel:empty,body.sp-edit .sp-ext-ctab-colh-name:empty,body.sp-edit .sp-ext-ctab-colh-sub:empty{outline:1px dashed var(--sp-line)}
/* ── 편집 모드: div 격자(grid). 표 셀 contenteditable Chrome 입력 누락 회피용. 평소 숨김, 편집 중에만 표시 ── */
.sp-ext-ctab-escroll{display:none;margin-top:46px;overflow-x:auto}
body.sp-edit .sp-ext-ctab-escroll{display:block}
.sp-ext-ctab-egrid{display:grid;align-items:stretch;border:1px solid var(--sty-card-bd-c,var(--sp-line));border-right:0;border-bottom:0;border-radius:var(--sty-card-radius,0);overflow:hidden;background:var(--sp-card-bg,var(--sp-bg));min-width:max-content}
.sp-ext-ctab-egrid>div{padding:12px 14px;border-bottom:1px solid var(--sty-card-bd-c,var(--sp-line));border-right:1px solid var(--sty-card-bd-c,var(--sp-line));display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0}
.sp-ext-ctab-ehc{background:var(--sp-ctab-head-bg,var(--sp-card-bg,var(--sp-bg)));align-items:center;text-align:center;border-bottom:var(--sty-card-bd,1px) solid var(--sty-card-bd-c,var(--sp-text))}
.sp-ext-ctab-ecorner{color:var(--sp-muted2);font-size:var(--sp-t-sm)}
.sp-ext-ctab-egrid .sp-ext-ctab-colh-name{font-size:var(--sty-t-itemt,var(--sp-t-sub));color:var(--sty-c-itemt,inherit);min-height:1.2em;width:100%;text-align:center}
.sp-ext-ctab-egrid .sp-ext-ctab-colh-sub{font-size:var(--sp-t-sm);color:var(--sp-muted);font-family:var(--font-eng);min-height:1em;width:100%;text-align:center}
.sp-ext-ctab-ecol.is-hl{background:rgba(150,120,80,.07);background:color-mix(in srgb,var(--sp-gold) 8%,transparent);box-shadow:inset 0 2px 0 var(--sp-gold)}
.sp-ext-ctab-ecol.is-hl .sp-ext-ctab-colh-name{color:var(--sp-gold)}
.sp-ext-ctab-erl{background:var(--sp-card-bg,var(--sp-bg));align-items:flex-start}
.sp-ext-ctab-egrid .sp-ext-ctab-rowlabel{min-height:1.2em;width:100%;text-align:left}
.sp-ext-ctab-ec{align-items:center;text-align:center}
.sp-ext-ctab-ec.is-hl{background:rgba(150,120,80,.05);background:color-mix(in srgb,var(--sp-gold) 6%,transparent)}
.sp-ext-ctab-egrid .sp-ext-ctab-v{min-height:1.5em;width:100%;display:block;color:var(--sty-c-itemd,inherit)}
.sp-ext-ctab-egrid .sp-ext-ctab-rowlabel{color:var(--sty-c-itemd,inherit)}
.sp-ext-ctab-ec.is-hl .sp-ext-ctab-v{color:var(--sp-gold)}
.sp-ext-ctab-ec.sp-ext-ctab-td--img{padding:0}
.sp-ext-ctab-egrid [contenteditable]{cursor:text;outline:none;border-radius:3px}
.sp-ext-ctab-egrid [contenteditable]:focus{box-shadow:0 0 0 2px rgba(124,58,237,.4)}
.sp-ext-ctab-egrid [contenteditable]:empty::before{content:attr(data-ph);color:var(--sp-muted2);font-weight:400}
.sp-ext-ctab-ectl{display:flex;gap:4px;justify-content:center;margin-bottom:2px}
.sp-ext-ctab-erl .sp-ext-ctab-ectl{justify-content:flex-start}
.sp-ext-ctab-eaddcol,.sp-ext-ctab-espacer{padding:0!important;justify-content:center}
.sp-ext-ctab-eaddrow{grid-column:1/-1;align-items:center!important;padding:10px!important;border-right:0!important}

/* =============================================
   EXT — 증상형 (sym)
============================================= */
.sp-ext-sym{background:var(--sp-bg);position:relative;overflow:hidden;padding-top:var(--sty-pad-y,0);padding-bottom:var(--sty-pad-y,0)}
@media (max-width:768px){.sp-ext-sym{padding-top:var(--sty-pad-y-mo,var(--sty-pad-y,0));padding-bottom:var(--sty-pad-y-mo,var(--sty-pad-y,0))}}
.sp-ext-sym-lay{display:grid;grid-template-columns:1fr 1fr;min-height:600px;max-width:var(--sp-sym-mw,var(--sty-mw,none));margin:0 auto}
.sp-ext-sym-img{position:relative;overflow:hidden;min-height:480px}
.sp-ext-sym-img img{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;width:100%;height:100%;object-fit:cover}
.sp-ext-sym-body{padding:100px 60px;display:flex;align-items:center}
.sp-ext-sym-grid{display:grid;grid-template-columns:repeat(var(--sp-sym-cols,2),1fr);gap:2px;margin-top:40px}
/* 소제목 — 팝오버 '부제 사이즈/색'(t_sub/c_sub) 으로 제어, '소제목 표시' 옵션(--sty-d-subt)으로 숨김 */
.sp-ext-sym-sub{font-size:var(--sty-t-sub,var(--sp-t-sm));font-weight:600;line-height:1.5;margin:2px 0 6px;color:var(--sty-c-sub,inherit);display:var(--sty-d-subt,block)}
.sp-ext-sym-item{position:relative;display:flex;align-items:flex-start;gap:16px;padding:28px 22px;border-bottom:var(--sty-sym-bd,1px) solid var(--sp-line)}
.sp-ext-sym-item-del{display:none;position:absolute;top:50%;left:0;transform:translateY(-50%);z-index:10;width:22px;height:22px;background:rgba(220,38,38,.85);color:#fff;border-radius:50%;align-items:center;justify-content:center;font-size:15px;line-height:1;cursor:pointer;border:none;padding:0;flex-shrink:0}
body.sp-edit .sp-ext-sym-item-del{display:flex}
.sp-ext-sym-item-del:hover{background:#dc2626}
.sp-ext-sym-num{font-family:var(--font-eng);font-size:42px;font-weight:300;opacity:.15;line-height:1;flex-shrink:0;min-width:42px}
.sp-ext-sym-txt h3{font-size:var(--sty-t-itemt,var(--sp-t-sub));font-weight:400;line-height:1.5;margin-bottom:8px;letter-spacing:-.01em;color:var(--sty-c-itemt,inherit);display:var(--sty-d-symn,block)}
.sp-ext-sym-txt p{font-size:var(--sp-t-sm);line-height:1.9;color:var(--sp-muted)}
/* 이미지 없음 — 텍스트 전용 풀폭 (이미지 비우면 자동) */
.sp-ext-sym--noimg .sp-ext-sym-lay{grid-template-columns:1fr;min-height:0}
.sp-ext-sym--noimg .sp-ext-sym-body{padding:var(--sty-pad-y,90px) 24px}
.sp-ext-sym--noimg .sp-ext-sym-body .sp-b{max-width:var(--sty-mw,1200px);margin:0 auto}
/* 증상형 — 심플 리스트 디자인(번호+제목+설명, 가로 구분선). 이미지/레이아웃은 그대로, 오른쪽 리스트만 변경 */
.sp-ext-sym--simple .sp-ext-sym-grid{grid-template-columns:1fr;gap:0;margin-top:36px}
.sp-ext-sym--simple .sp-ext-sym-item{align-items:baseline;gap:28px;padding:30px 4px;border-bottom:var(--sty-sym-bd,1px) solid var(--sp-line)}
.sp-ext-sym--simple .sp-ext-sym-item:first-child{border-top:var(--sty-sym-bd,1px) solid var(--sp-line)}
.sp-ext-sym--simple .sp-ext-sym-num{font-size:16px;font-weight:500;opacity:1;color:var(--sp-gold);min-width:30px;line-height:1.7}
.sp-ext-sym--simple .sp-ext-sym-txt h3{margin-bottom:6px}
@media (max-width:768px){.sp-ext-sym--simple .sp-ext-sym-item{gap:16px;padding:22px 4px}}
@media(max-width:900px){
    .sp-ext-sym-lay{grid-template-columns:1fr}
    .sp-ext-sym-img{min-height:300px}
    .sp-ext-sym-body{padding:60px 24px}
    .sp-ext-sym-grid{grid-template-columns:1fr}
}

/* =============================================
   EXT — 배너형 (bnr)
============================================= */
/* =============================================
   흐르는 텍스트 (marq) — CSS 무한 가로 스크롤
============================================= */
.sp-ext-marq{background:var(--sp-marq-bg,var(--sp-bg3));overflow:hidden;position:relative;padding:var(--sty-pad-y,30px) 0}
@media (max-width:768px){.sp-ext-marq{padding:var(--sty-pad-y-mo,var(--sty-pad-y,20px)) 0}}
.sp-ext-marq-viewport{overflow:hidden;width:100%}
.sp-ext-marq-track{display:flex;flex-wrap:nowrap;width:max-content;animation:sp-marq-scroll var(--sp-marq-dur,25s) linear infinite;will-change:transform}
.sp-ext-marq--right .sp-ext-marq-track{animation-direction:reverse}
.sp-ext-marq:hover .sp-ext-marq-track{animation-play-state:paused}
.sp-ext-marq-track.is-edit{animation:none;width:auto}
.sp-ext-marq-item{flex-shrink:0;white-space:nowrap;padding:0 .5em;font-size:var(--sp-marq-fs,clamp(28px,6vw,72px));font-weight:var(--sp-marq-weight,800);color:var(--sp-marq-color,var(--sp-gold));letter-spacing:-.01em;line-height:1.15}
@keyframes sp-marq-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.sp-ext-marq-track{animation:none}}
body.sp-edit .sp-ext-marq-track{animation:none}
/* 부분 서식 선택 툴바 */
.sp-rt-bar{position:absolute;z-index:100000;display:none;gap:2px;align-items:center;background:#1a1410;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:4px;box-shadow:0 8px 24px rgba(0,0,0,.45)}
.sp-rt-bar.show{display:flex}
.sp-rt-bar button,.sp-rt-bar .sp-rt-color{background:transparent;border:none;color:#fff;cursor:pointer;font-size:13px;line-height:1;padding:6px 9px;border-radius:5px;display:inline-flex;align-items:center;gap:3px;font-family:inherit}
.sp-rt-bar button:hover,.sp-rt-bar .sp-rt-color:hover{background:rgba(255,255,255,.14)}
.sp-rt-bar .sp-rt-color{position:relative}
.sp-rt-bar .sp-rt-color i{display:inline-block;width:12px;height:3px;background:#e0322b}
.sp-rt-bar .sp-rt-color input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.sp-rt-bar .sp-rt-hlc i{background:#f5c451}
.sp-font-serif{font-family:var(--font-kr-serif)!important;font-weight:400}
.sp-font-serif-light{font-family:var(--font-kr-serif-light)!important;font-weight:300!important}
.sp-nowrap{white-space:nowrap}
.sp-nowrap.sp-nowrap-break{white-space:pre-line}
body.sp-edit .sp-nowrap{outline:1px dashed rgba(124,58,237,.45);outline-offset:2px}
.sp-font-sans{font-family:var(--font-pret,'Pretendard',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif)!important}
/* 형광펜 — 스크롤 진입 시 왼→오 부드럽게 채워짐 */
.sp-hl{background-color:transparent;background-image:linear-gradient(var(--hl-c,#f5c451),var(--hl-c,#f5c451));background-repeat:no-repeat;background-position:0 86%;background-size:0% 36%;padding:0 .04em;color:inherit;border-radius:1px;transition:background-size .85s cubic-bezier(.22,1,.36,1);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.sp-hl.on{background-size:100% 36%}
body.sp-edit .sp-hl{background-size:100% 36%}
@media(prefers-reduced-motion:reduce){.sp-hl{transition:none;background-size:100% 36%}}
/* 형광펜 물결 — 텍스트는 그대로, 글자 밑에 물결선 (mask 안 씀 → 글자 안 사라짐) */
.sp-hl.sp-hl-wave{background:none!important;-webkit-mask:none;mask:none;clip-path:none;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:var(--hl-c,#f5c451);text-decoration-thickness:3px;text-underline-offset:4px;color:inherit}
.sp-ext-bnr{background:var(--sp-bg3);padding:var(--sty-pad-y,80px) 0;position:relative;overflow:hidden}
@media (max-width:768px){.sp-ext-bnr{padding:var(--sty-pad-y-mo,var(--sty-pad-y,60px)) 0}}
.sp-ext-bnr-inner{text-align:center;display:flex;flex-direction:column;align-items:center}
.sp-ext-bnr-tag{display:inline-flex;font-size:var(--sp-t-sm);letter-spacing:.28em;color:var(--sp-gold);border:1px solid var(--sp-line);padding:5px 16px;margin-bottom:28px}
.sp-ext-bnr-title{font-size:var(--sp-t-hd);font-weight:300;letter-spacing:-.02em;line-height:1.25;margin-bottom:20px}
/* 중앙 이미지 (선택) — 제목과 부제 사이 배치, 비율 유지 + max-width 캡 */
.sp-ext-bnr-img{position:relative;width:100%;max-width:480px;margin:0 auto 28px;display:flex;align-items:center;justify-content:center;border-radius:12px;overflow:hidden}
.sp-ext-bnr-img img,.sp-ext-bnr-img video{display:block;width:100%;height:auto;object-fit:cover}
.sp-ext-bnr-img-ph{padding:36px 18px;width:100%;text-align:center;color:rgba(255,255,255,.55);background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.22);border-radius:12px;font-size:13px}
body.sp-edit .sp-ext-bnr-img.is-empty{min-height:120px}
body.sp-edit .sp-ext-bnr-img:hover .sp-imgf-del{display:flex}
@media (max-width:768px){.sp-ext-bnr-img{max-width:360px;margin-bottom:22px}}
/* 이미지/영상 아래 보조 설명 — sub 보다 좀 더 작고 좁게, 두 문단을 자연스럽게 구분 */
.sp-ext-bnr-desc{font-size:var(--sp-t-sm);line-height:1.85;color:var(--sp-muted);max-width:720px;text-align:center;margin:0 auto 18px;letter-spacing:-.005em}
.sp-ext-bnr-sub{font-size:var(--sp-t-sm);line-height:1.9;color:var(--sp-muted);max-width:600px;text-align:center;margin-bottom:32px}
.sp-ext-bnr-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.sp-ext-bnr-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;border:1px solid var(--sp-gold);color:var(--sp-gold);font-size:var(--sp-t-sm);letter-spacing:.12em;text-decoration:none;transition:background .25s,color .25s}
.sp-ext-bnr-btn:hover{background:var(--sp-gold);color:#fff}

/* ===== bnrm — 이미지/영상 배너 ext (s3 복제, per-instance --sty-* CSS var) ===== */
.sp-ext-bnrm{position:relative;overflow:hidden;padding:var(--sty-pad-y,140px) 0;background:var(--sp-gold);text-align:center;color:#fff}
/* 배경 이미지/영상 레이어 (선택) — 단색 배경 위에 깔림, 콘텐츠는 그 위 */
.sp-ext-bnrm-bg{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;z-index:0;overflow:hidden}
.sp-ext-bnrm-bg img,.sp-ext-bnrm-bg video{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(calc(var(--sty-bg-gray,0)*1%)) blur(calc(var(--sty-bg-blur,0)*1px));transform:scale(calc(1 + var(--sty-bg-blur,0)*0.004))}
.sp-ext-bnrm-bg::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .2s;
    background:
        linear-gradient(to bottom, rgba(0,0,0,calc(var(--sty-dim-top,0)/100)), transparent 45%),
        linear-gradient(to top, rgba(0,0,0,calc(var(--sty-dim-bottom,0)/100)), transparent 45%),
        rgba(0,0,0,calc(var(--sty-dim,30)/100))}
.sp-ext-bnrm-bg:has(img)::after,.sp-ext-bnrm-bg:has(video)::after{opacity:1}
.sp-ext-bnrm-bg-btn{display:none;position:absolute;bottom:16px;right:16px;top:auto;left:auto;z-index:20;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:500;background:rgba(0,0,0,.55);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:4px;cursor:pointer;backdrop-filter:blur(4px)}
.sp-ext-bnrm-bg-btn:hover{background:rgba(0,0,0,.78)}
.sp-ext-bnrm-bg-del{display:none;position:absolute;bottom:16px;right:140px;top:auto;left:auto;z-index:20;padding:8px 12px;font-size:12px;background:rgba(160,20,20,.85);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:4px;cursor:pointer}
.sp-ext-bnrm-bg-del:hover{background:rgba(185,30,30,1)}
body.sp-edit .sp-ext-bnrm-bg-btn,body.sp-edit .sp-ext-bnrm-bg-del{display:inline-flex}
/* bnrm 배경+이미지 일괄적용 — 배경 버튼 위에 세로 스택 (보라 톤 = 일괄적용 계열 통일) */
.sp-ext-bnrm-bcast{display:none;position:absolute;bottom:58px;right:16px;z-index:20;align-items:center;gap:5px;padding:8px 14px;font-size:12px;font-weight:600;font-family:'Pretendard',sans-serif;background:rgba(124,58,237,.85);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:4px;cursor:pointer;backdrop-filter:blur(4px);white-space:nowrap}
.sp-ext-bnrm-bcast--cat{bottom:100px}
.sp-ext-bnrm-bcast:hover{background:rgba(124,58,237,1)}
.sp-ext-bnrm-bcast.is-busy{opacity:.6;cursor:wait}
body.sp-edit .sp-ext-bnrm-bcast{display:inline-flex}
.sp-ext-bnrm-inner{position:relative;z-index:1;max-width:var(--sty-mw,1200px);margin:0 auto;padding:0 20px}
/* 본문 텍스트 줄바꿈(엔터) 보존 — PHP·JS 일관, 캡션과 동일 처리 */
.sp-ext-bnrm-eyebrow,.sp-ext-bnrm-title,.sp-ext-bnrm-sub,.sp-ext-bnrm-desc{white-space:pre-line}
.sp-ext-bnrm-eyebrow{font-size:var(--sty-t-eyebrow,var(--sp-t-sm));letter-spacing:.18em;color:var(--sty-c-eyebrow,rgba(255,255,255,.55));margin-bottom:18px;text-transform:uppercase}
.sp-ext-bnrm-title{font-size:var(--sty-t-title,var(--sp-t-hd));font-weight:var(--sty-w-title,400);line-height:1.35;letter-spacing:-.02em;margin-bottom:20px;color:var(--sty-c-title,#fff)}
.sp-ext-bnrm-sub{font-size:var(--sty-t-sub,var(--sp-t-sub));line-height:1.9;color:var(--sty-c-sub,rgba(255,255,255,.7));margin:0 var(--sty-tx-mr,auto) 36px var(--sty-tx-ml,auto);max-width:var(--sty-tx-mw,760px);font-weight:300}
.sp-ext-bnrm-media-row{width:100%;display:block;margin:0 auto 28px}
.sp-ext-bnrm-img{position:relative;width:100%;max-width:var(--sty-img-mw,640px);margin-top:0;margin-bottom:0;margin-left:var(--sty-img-ml,auto);margin-right:var(--sty-img-mr,auto);border-radius:var(--sty-img-radius,0);overflow:hidden;background:transparent}
.sp-ext-bnrm-img img,.sp-ext-bnrm-img video{display:block;width:100%;height:auto;object-fit:cover}
.sp-ext-bnrm-img.is-empty{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;border:1px dashed rgba(255,255,255,.22);background:rgba(255,255,255,.03)}
.sp-ext-bnrm-img-ph{padding:24px;text-align:center;color:rgba(255,255,255,.6);font-size:13px}
.sp-ext-bnrm-media-row .sp-ext-bnrm-img--mo{display:none}
body.sp-edit .sp-ext-bnrm-media-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
body.sp-edit .sp-ext-bnrm-media-row .sp-ext-bnrm-img{flex:1 1 280px;max-width:380px;margin:0}
body.sp-edit .sp-ext-bnrm-media-row .sp-ext-bnrm-img--mo{display:flex}
body.sp-edit .sp-ext-bnrm-media-row .sp-ext-bnrm-img--pc::before{content:'🖥 PC';position:absolute;top:8px;left:8px;z-index:5;font-size:10px;background:rgba(0,0,0,.65);color:#fff;padding:3px 8px;border-radius:3px;letter-spacing:.05em}
body.sp-edit .sp-ext-bnrm-media-row .sp-ext-bnrm-img--mo::before{content:'📱 모바일';position:absolute;top:8px;left:8px;z-index:5;font-size:10px;background:rgba(0,0,0,.65);color:#fff;padding:3px 8px;border-radius:3px;letter-spacing:.05em}
.sp-ext-bnrm-desc{font-size:var(--sty-t-desc,var(--sp-t-sm));line-height:1.85;color:var(--sty-c-desc,rgba(255,255,255,.7));max-width:var(--sty-tx-mw,760px);margin:0 var(--sty-tx-mr,auto) 36px var(--sty-tx-ml,auto);font-weight:300;letter-spacing:-.005em}
.sp-ext-bnrm-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:8px auto 0}
.sp-ext-bnrm-tag{font-size:var(--sty-t-tag,var(--sp-t-sm));padding:8px 20px;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.6);border-radius:100px}
.sp-ext-bnrm-tag.hl{border-color:#fff;color:#fff;background:rgba(255,255,255,.08)}
.sp-ext-bnrm-tag-edit{margin-top:16px;padding:10px 14px;font-size:13px;border:1px dashed rgba(255,255,255,.25);color:rgba(255,255,255,.65);text-align:center;border-radius:8px}
@media (max-width:768px){
    .sp-ext-bnrm{padding:var(--sty-pad-y-mo,var(--sty-pad-y,80px)) 0}
    .sp-ext-bnrm-img{max-width:var(--sty-img-mw-mo,var(--sty-img-mw,520px));border-radius:var(--sty-img-radius,0)}
    .sp-ext-bnrm-media-row{margin-bottom:20px}
    body:not(.sp-edit) .sp-ext-bnrm-media-row:has(.sp-ext-bnrm-img--mo:not(.is-empty)) .sp-ext-bnrm-img--pc{display:none}
    body:not(.sp-edit) .sp-ext-bnrm-media-row .sp-ext-bnrm-img--mo:not(.is-empty){display:block}
    /* 모바일 간격 자동 축소 — 레거시와 동일하게 텍스트·갤러리 여백 줄임 */
    .sp-ext-bnrm-eyebrow{margin-bottom:12px}
    .sp-ext-bnrm-title{margin-bottom:13px}
    .sp-ext-bnrm-sub{margin-bottom:22px}
    .sp-ext-bnrm-desc{margin-bottom:22px}
    .sp-ext-bnrm-galwrap{margin-bottom:20px}
    .sp-ext-bnrm-gallery{gap:12px}
    .sp-ext-bnrm-gcap{padding-top:12px}
    .sp-ext-bnrm-gtitle{margin-bottom:4px}
    .sp-ext-bnrm-gallery.cap-overlay .sp-ext-bnrm-gcap{padding:16px 14px}
}
/* ===== bnrm 다중 이미지 갤러리 + 슬라이드 (PC·모바일 공통 scroll-snap + 화살표/도트) ===== */
.sp-ext-bnrm-galwrap{position:relative;width:100%;max-width:var(--sty-mw,1100px);margin:0 auto 28px}
.sp-ext-bnrm-gallery{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;align-items:flex-start;width:100%}
/* 슬라이드 화살표 — 슬라이드 모드일 때만 JS 가 표시 */
.sp-ext-bnrm-nav{display:none;position:absolute;top:42%;transform:translateY(-50%);z-index:6;width:42px;height:42px;border-radius:50%;border:none;background:rgba(0,0,0,.45);color:#fff;cursor:pointer;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 4px 16px rgba(0,0,0,.3);transition:background .2s,transform .15s}
.sp-ext-bnrm-nav:hover{background:rgba(0,0,0,.7);transform:translateY(-50%) scale(1.08)}
.sp-ext-bnrm-nav--prev{left:8px}
.sp-ext-bnrm-nav--next{right:8px}
/* 슬라이드 도트 */
.sp-ext-bnrm-dots{display:none;justify-content:center;gap:8px;margin-top:16px}
.sp-ext-bnrm-dot{width:8px;height:8px;border-radius:50%;border:none;background:rgba(255,255,255,.3);cursor:pointer;padding:0;transition:background .2s,width .2s}
.sp-ext-bnrm-dot.is-active{background:#fff;width:22px;border-radius:4px}
/* 중앙 이미지가 하나도 없으면(빈 갤러리) 여백 없이 숨김 — 배경만 쓸 때 깔끔 */
.sp-ext-bnrm-gallery:empty{display:none;margin:0}
/* gitem = 이미지 + 캡션(제목·설명) 세로 묶음, 갤러리의 flex 아이템 */
.sp-ext-bnrm-gitem{position:relative;flex:1 1 280px;max-width:var(--sp-bnrm-img-mw,420px);display:flex;flex-direction:column}
.sp-ext-bnrm-gimg{position:relative;width:100%;aspect-ratio:var(--sp-bnrm-img-ratio,auto);overflow:hidden;border-radius:var(--sp-bnrm-img-radius,var(--sty-img-radius,0));background:var(--sp-bnrm-gimg-bg,transparent)}
.sp-ext-bnrm-gimg img,.sp-ext-bnrm-gimg video{width:100%;height:var(--sp-bnrm-imgfit-h,auto);object-fit:var(--sp-bnrm-imgfit,cover);object-position:var(--sp-bnrm-img-pos,center);display:block}
/* 캡션 — 이미지 아래 제목 + 설명 (정렬·좌우패딩 변수) */
.sp-ext-bnrm-gcap{padding:18px var(--sty-gcap-px,6px) 0;text-align:var(--sty-gcap-align,center)}
.sp-ext-bnrm-gtitle{font-size:var(--sty-t-gtitle,var(--sp-t-sub));font-weight:600;color:var(--sty-c-gtitle,#fff);line-height:1.4;margin:0 0 8px;letter-spacing:-.01em;white-space:pre-line}
.sp-ext-bnrm-gdesc{font-size:var(--sty-t-gdesc,var(--sp-t-sm));line-height:1.7;color:var(--sty-c-gdesc,rgba(255,255,255,.65));margin:0;font-weight:300;white-space:pre-line}
body.sp-edit .sp-ext-bnrm-gtitle,body.sp-edit .sp-ext-bnrm-gdesc{cursor:text;outline:1px dashed rgba(255,255,255,.2);border-radius:3px;min-height:1.2em;transition:outline-color .15s}
body.sp-edit .sp-ext-bnrm-gtitle:hover,body.sp-edit .sp-ext-bnrm-gdesc:hover{outline-color:rgba(255,255,255,.5)}
body.sp-edit .sp-ext-bnrm-gtitle:focus,body.sp-edit .sp-ext-bnrm-gdesc:focus{outline-color:#fff}
body.sp-edit .sp-ext-bnrm-gtitle.is-empty::before,body.sp-edit .sp-ext-bnrm-gdesc.is-empty::before{content:attr(data-ph);opacity:.4}
/* 카드 텍스트 오버레이(이미지 위) + 자동 딤 그라데이션 — cap_pos=overlay */
.sp-ext-bnrm-gallery.cap-overlay .sp-ext-bnrm-gimg::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.28) 45%,transparent 72%);pointer-events:none;z-index:1}
.sp-ext-bnrm-gallery.cap-overlay .sp-ext-bnrm-gcap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px var(--sty-gcap-px,20px);text-align:var(--sty-gcap-align,left)}
.sp-ext-bnrm-gallery.cap-overlay .sp-ext-bnrm-gtitle{color:var(--sty-c-gtitle,#fff);margin-bottom:5px}
.sp-ext-bnrm-gallery.cap-overlay .sp-ext-bnrm-gdesc{color:var(--sty-c-gdesc,rgba(255,255,255,.85))}
/* 슬라이드 모드 — 가로 스크롤 스냅 (모바일 스와이프 + PC 스크롤/트랙패드/스크롤바) */
.sp-ext-bnrm-gallery.is-slide{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-padding:0 8px;scrollbar-width:none;-ms-overflow-style:none}
/* 표시 갯수 지정(has-cols) — 그리드·슬라이드 공통: 한 줄/한 화면 N개 (gap 16px 보정) */
.sp-ext-bnrm-gallery.has-cols .sp-ext-bnrm-gitem{flex:0 0 auto;max-width:none;width:calc((100% - (var(--sp-bnrm-scols,1) - 1)*16px) / var(--sp-bnrm-scols,1))}
/* 태블릿(769~1024px) — 2단으로 정리 (PC 갯수가 3~4면 좁게 눌리는 것 방지). 그리드 자동 모드도 2단 */
@media(min-width:769px) and (max-width:1024px){
    .sp-ext-bnrm-gallery:not(.is-slide) .sp-ext-bnrm-gitem{flex:0 0 auto;max-width:none;width:calc((100% - 16px)/min(var(--sp-bnrm-scols,2),2))}
    .sp-ext-bnrm-gallery.is-slide .sp-ext-bnrm-gitem{width:calc((100% - 16px)/min(var(--sp-bnrm-scols,2),2))}
}
@media(max-width:768px){
    .sp-ext-bnrm-gallery.has-cols .sp-ext-bnrm-gitem{width:calc((100% - (var(--sp-bnrm-scols-mo,var(--sp-bnrm-scols,1)) - 1)*16px) / var(--sp-bnrm-scols-mo,var(--sp-bnrm-scols,1)))}
}
/* 슬라이드 — 가로 스냅. 갯수 미지정 시 살짝 다음 카드 보이는 peek 폭 */
.sp-ext-bnrm-gallery.is-slide .sp-ext-bnrm-gitem{scroll-snap-align:center}
.sp-ext-bnrm-gallery.is-slide:not(.has-cols) .sp-ext-bnrm-gitem{flex:0 0 auto;max-width:none;width:min(82%,var(--sp-bnrm-img-mw,520px))}
.sp-ext-bnrm-gallery.is-slide::-webkit-scrollbar{display:none}
/* 이미지 추가 버튼 (편집 모드 전용) */
.sp-ext-bnrm-add{display:none;flex:0 0 auto;align-self:center;min-height:60px;padding:0 24px;border:1px dashed rgba(255,255,255,.3);background:rgba(255,255,255,.04);color:rgba(255,255,255,.72);border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;white-space:nowrap}
.sp-ext-bnrm-add:hover{background:rgba(255,255,255,.1);color:#fff}
body.sp-edit .sp-ext-bnrm-add{display:inline-flex;align-items:center}
/* per-ext 옵션 칩 — 모든 ext 타입 공통, 삭제버튼(× 28px @right:12px) 왼쪽 */
/* 추가형 옵션 칩 — 빌트인 칩과 동일한 좌상단 위치로 통일 (반전 버튼이 있는 섹션은 그 아래 칸) */
.sp-sty-chip-ext{display:none;position:absolute;top:58px;left:16px;right:auto;z-index:11}
body.sp-edit .sp-sty-chip-ext{display:inline-flex}
/* ext 섹션은 섹션별 "옵션"(⚙) 칩만 사용 — 전역 "스타일" 칩(data-sty-trig)은 같은 type 전체를
   한꺼번에 바꿔 섹션끼리 충돌하므로 ext 안에서는 숨김. (전체 적용은 옵션 팝오버의 일괄 버튼으로) */
[data-sty-ext] .sp-sty-chip[data-sty-trig],
[data-sty-ext] .sp-sty-popover[data-sty-popover]{display:none !important}

/* ===== Shared ext 옵션 popover — 단일 인스턴스, sid 동적 바인딩 ===== */
.sp-sty-popover-ext{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(.96);z-index:1000;width:min(560px,92vw);max-height:80vh;overflow-y:auto;background:#1a1410;border:1px solid rgba(255,255,255,.15);border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.5);color:#fff;font-family:inherit;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s}
.sp-sty-popover-ext.is-open{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1)}
.sp-sty-popover-ext-bg{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:999;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}
.sp-sty-popover-ext-bg.is-open{opacity:1;visibility:visible}
.sp-sty-popover-ext .sp-sty-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1)}
.sp-sty-popover-ext .sp-sty-body{padding:16px 20px}
.sp-sty-popover-ext .sp-sty-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.sp-sty-popover-ext .sp-sty-row:last-child{border-bottom:0}
.sp-sty-popover-ext .sp-sty-sub{flex:0 0 130px;font-size:12px;color:rgba(255,255,255,.6)}
.sp-sty-popover-ext input[type=number],.sp-sty-popover-ext select,.sp-sty-popover-ext input[type=text]{background:#0a0608;border:1px solid rgba(255,255,255,.18);color:#fff;padding:6px 10px;border-radius:5px;font-family:inherit;font-size:12px;color-scheme:dark}
.sp-sty-popover-ext input[type=number]:focus,.sp-sty-popover-ext select:focus,.sp-sty-popover-ext input[type=text]:focus{outline:none;border-color:rgba(255,255,255,.45);background:#000}
.sp-sty-popover-ext input::placeholder{color:rgba(255,255,255,.35)}
.sp-sty-popover-ext input[type=color]{background:transparent;border:1px solid rgba(255,255,255,.2);padding:2px;border-radius:5px;width:36px;height:30px;cursor:pointer}
.sp-sty-popover-ext input[type=color]::-webkit-color-swatch{border:none;border-radius:3px}
.sp-sty-popover-ext input[type=color]::-moz-color-swatch{border:none;border-radius:3px}
.sp-sty-popover-ext input[type=number]{width:90px}
.sp-sty-popover-ext select{flex:1;min-width:0}
.sp-sty-popover-ext .sp-sty-close{background:transparent;border:0;color:#fff;font-size:22px;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center}
/* 공통 카드 옵션은 라벨/필드를 한 쌍으로 정렬한다. 기존 flex 나열은 좁은 폭에서
   select 값이 한 글자만 보이고 항목 관계도 흐려져, 실제 설정창 완성도를 크게 떨어뜨렸다. */
.sp-sty-popover-ext:has([data-sty-only="crd_common"]){width:min(920px,calc(100vw - 32px));max-height:min(88vh,920px);border-radius:18px;background:#15110e;box-shadow:0 34px 110px rgba(0,0,0,.58)}
.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row{display:grid;grid-template-columns:104px minmax(130px,1fr) 104px minmax(130px,1fr) 104px minmax(130px,1fr);align-items:center;gap:9px 12px;margin:0;padding:14px 2px;border-bottom:1px solid rgba(255,255,255,.075)}
.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row>.sp-sty-sub{min-width:0;flex:none;font-size:11px;line-height:1.35;color:rgba(255,255,255,.58);text-transform:none;letter-spacing:0;word-break:keep-all}
.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row>select,.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row>input[type=text],.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row>input[type=number]{display:block;width:100%!important;min-width:0;height:36px;box-sizing:border-box;padding:7px 10px;border-radius:8px;background:#090708}
.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row>em{grid-column:2/-1;margin-top:-3px;font-style:normal;line-height:1.45}
.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row:has(>strong){display:flex;align-items:center;min-height:38px;margin:14px -20px 0;padding:10px 20px;border:0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035)}
.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row:has(>strong)>strong{font-size:12px;letter-spacing:-.01em}
.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row:has(>strong)>em{margin-left:8px;color:rgba(255,255,255,.4)!important}
@media(max-width:760px){.sp-sty-popover-ext:has([data-sty-only="crd_common"]){width:calc(100vw - 18px);max-height:calc(100dvh - 18px);border-radius:14px}.sp-sty-popover-ext .sp-sty-body{padding:12px 16px}.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row{grid-template-columns:minmax(88px,34%) minmax(0,1fr);gap:8px 10px;padding:12px 0}.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row>em{grid-column:1/-1;margin:0}.sp-sty-popover-ext [data-sty-only="crd_common"].sp-sty-row:has(>strong){margin:12px -16px 0;padding:10px 16px}}

/* =============================================
   EXT 데이터 연동 (전후/유튜브/쇼츠)
============================================= */
/* 어드민 설정 바 — 편집 모드에서만 표시 */
.sp-ext-cfg{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 28px;padding:14px 16px;background:rgba(0,0,0,.04);border:1px dashed rgba(0,0,0,.18);border-radius:6px;align-items:center;font-size:12px}
.sp-ext-cfg-label{display:inline-flex;align-items:center;padding:4px 10px;background:var(--sp-gold,#694c3b);color:#fff;font-size:11.5px;letter-spacing:.06em;border-radius:3px;font-weight:500}
.sp-ext-cfg label{display:inline-flex;align-items:center;gap:6px;color:#666}
.sp-ext-cfg-inp{padding:5px 8px;border:1px solid #ccc;background:#fff;border-radius:3px;font-size:12px;min-width:140px;font-family:inherit}
.sp-ext-cfg-sel{min-width:200px;cursor:pointer}
.sp-ext-cfg-mode{min-width:150px;cursor:pointer;margin-right:4px}
.sp-ext-cfg-cat{min-width:120px}
.sp-ext-cfg-cat:disabled{background:#f3f3f3;color:#888;cursor:not-allowed}
.sp-ext-cfg-num{min-width:60px;width:60px}
.sp-ext-cfg-color{min-width:38px;width:38px;height:30px;padding:2px;cursor:pointer}
.sp-ext-cfg-info{color:#888;font-size:11.5px;padding:4px 10px;background:#fff;border-radius:3px;border:1px solid #eee;margin-left:auto}
.sp-ext-cfg-diag{margin:-20px 0 20px;padding:8px 14px;background:#fff8e1;border:1px solid #ffe69c;border-radius:4px;font-size:11.5px;color:#7a5a00;font-family:'Pretendard',sans-serif}
.sp-ext-cfg-add{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:#7a5a00;padding:4px 10px;background:#fffdf5;border:1px solid #ffe69c;border-radius:3px;pointer-events:auto;user-select:none}
.sp-ext-cfg-add input[type="checkbox"]{
    -webkit-appearance:checkbox !important;
    -moz-appearance:checkbox !important;
    appearance:checkbox !important;
    margin:0 !important;
    padding:0 !important;
    width:16px !important;
    height:16px !important;
    min-width:16px !important;
    border:1px solid #999 !important;
    background:#fff !important;
    cursor:pointer;
    pointer-events:auto;
    flex-shrink:0;
    box-shadow:none !important;
    opacity:1 !important;
    position:static !important;
    vertical-align:middle;
    display:inline-block !important;
}
.sp-ext-cfg-add label{margin:0;cursor:pointer;pointer-events:auto;color:#7a5a00 !important;line-height:1;font-size:11.5px}

/* 회원전용 체크박스 — 빨간/주황 톤으로 구분 */
.sp-ext-cfg-lock{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;padding:4px 10px;background:#fdf2f0;border:1px solid #f4c5b5;border-radius:3px;pointer-events:auto;user-select:none}
.sp-ext-cfg-lock input[type="checkbox"]{
    -webkit-appearance:checkbox !important;
    -moz-appearance:checkbox !important;
    appearance:checkbox !important;
    margin:0 !important;padding:0 !important;
    width:16px !important;height:16px !important;min-width:16px !important;
    border:1px solid #999 !important;background:#fff !important;
    cursor:pointer;pointer-events:auto;flex-shrink:0;
    box-shadow:none !important;opacity:1 !important;
    position:static !important;vertical-align:middle;display:inline-block !important;
}
.sp-ext-cfg-lock label{margin:0;cursor:pointer;pointer-events:auto;color:#b04a2a !important;line-height:1;font-size:11.5px;font-weight:500}

/* 전후 잠금 화면 — 회원 전용 안내 */
.sp-ba-lock{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 30px;text-align:center;background:linear-gradient(135deg,#fafaf8 0%,#f4f0eb 100%);border:1px solid var(--sp-line,#e4e4e0);border-radius:8px;min-height:340px}
.sp-ba-lock-icon{color:var(--sp-gold,#694c3b);margin-bottom:24px;opacity:.7}
.sp-ba-lock-title{font-size:clamp(18px,2vw,22px);font-weight:500;color:var(--sp-main,#1a1a1a);margin:0 0 12px;letter-spacing:-.01em}
.sp-ba-lock-desc{font-size:14px;color:var(--sp-muted,#666);line-height:1.7;margin:0 0 28px;max-width:380px}
.sp-ba-lock-btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.sp-ba-lock-btn{display:inline-flex;align-items:center;padding:11px 28px;border:1px solid var(--sp-main,#1a1a1a);color:var(--sp-main,#1a1a1a);font-size:13px;letter-spacing:.04em;text-decoration:none;border-radius:30px;transition:all .25s cubic-bezier(0.16,1,0.3,1)}
.sp-ba-lock-btn:hover{background:var(--sp-main,#1a1a1a);color:#fff}
.sp-ba-lock-btn-primary{background:var(--sp-main,#1a1a1a);color:#fff}
.sp-ba-lock-btn-primary:hover{background:var(--sp-gold,#694c3b);border-color:var(--sp-gold,#694c3b);color:#fff}
.sp-cat-act{display:inline-flex;gap:0;border:1px solid #c9b59a;border-radius:4px;overflow:hidden;vertical-align:middle;margin-left:2px}
.sp-cat-act button{padding:5px 10px;border:0;background:#fff;color:#7a5a00;font-size:11.5px;cursor:pointer;font-family:inherit;transition:background .2s,color .2s;white-space:nowrap;font-weight:600}
.sp-cat-act button:first-child{border-right:1px solid #c9b59a;background:#faf6ef}
.sp-cat-act button:hover{background:#c9b59a;color:#fff}
.sp-cat-act button.is-busy{opacity:.5;cursor:wait}
.sp-ext-cfg-bcast-group{display:inline-flex;gap:0;border:1px solid #c9b59a;border-radius:3px;overflow:hidden}
.sp-ext-cfg-bcast{padding:5px 10px;border:0;border-right:1px solid #c9b59a;background:#fff;color:#7a5a00;font-size:11.5px;cursor:pointer;font-family:inherit;transition:background .2s,color .2s}
.sp-ext-cfg-bcast:last-child{border-right:0}
.sp-ext-cfg-bcast:hover{background:#c9b59a;color:#fff}
.sp-ext-cfg-bcast.is-busy{opacity:.5;cursor:wait}
.sp-ext-cfg-apply-all{padding:5px 10px;border:0;background:#fff;color:#7a5a00;font-size:11.5px;cursor:pointer;font-family:inherit;transition:background .2s,color .2s;white-space:nowrap}
.sp-ext-cfg-apply-all:hover{background:#c9b59a;color:#fff}
.sp-ext-cfg-apply-all.is-busy{opacity:.5;cursor:wait}
.sp-ext-empty-data{padding:60px 20px;text-align:center;color:#999;background:#fafafa;border:1px dashed #ddd;border-radius:6px;font-size:13px}
.sp-ext-empty-data.sp-ext-empty-edit{background:repeating-linear-gradient(45deg,#fafafa,#fafafa 10px,#f4f4f4 10px,#f4f4f4 20px);color:#777}

/* 전후 슬라이더 */
.sp-ext-ba{padding:100px 0;position:relative;background:var(--sp-ba-sec-bg,linear-gradient(to bottom,#fafaf8 0%,#fff 100%))}
/* 개별 배경색 옵션(background-color)이 지정된 레거시 전후는 기본 그라데이션을 제거해야 선택색이 그대로 보인다. */
.sp-ext-ba[data-sty-ext][style*="background-color"]{background-image:none}
.sp-ba-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px;justify-content:center}
.sp-ba-tab{padding:8px 22px;border:1px solid var(--sp-line,#e4e4e0);background:#fff;color:#888;font-size:13px;letter-spacing:.04em;cursor:pointer;border-radius:30px;transition:all .25s cubic-bezier(0.16,1,0.3,1);font-family:inherit}
.sp-ba-tab:hover{color:var(--sp-main,#1a1a1a);border-color:var(--sp-main,#1a1a1a)}
.sp-ba-tab.is-active{background:var(--sp-main,#1a1a1a);color:#fff;border-color:var(--sp-main,#1a1a1a)}
.sp-ba-slider{position:relative;margin-top:36px;overflow:hidden;width:100%}
.sp-ba-track{display:flex;gap:24px;transition:transform .55s cubic-bezier(0.16,1,0.3,1);will-change:transform}
.sp-ba-slide{flex:0 0 calc(50% - 12px);width:calc(50% - 12px);min-width:0;display:grid;grid-template-columns:1fr;gap:20px}
.sp-ba-slide.sp-ba-fullwidth{grid-template-columns:1fr}
.sp-ba-compare{position:relative;width:100%;aspect-ratio:4/3;min-width:0;overflow:hidden;border-radius:6px;background:#1a1a1a;user-select:none;cursor:ew-resize;box-shadow:0 10px 40px rgba(0,0,0,.08)}
.sp-ba-layer{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;overflow:hidden}
.sp-ba-layer img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;-webkit-user-drag:none}
.sp-ba-before-layer{clip-path:inset(0 50% 0 0);-webkit-clip-path:inset(0 50% 0 0)}
.sp-ba-divider{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;box-shadow:0 0 12px rgba(0,0,0,.4);pointer-events:none;transform:translateX(-50%);-webkit-transform:translateX(-50%);margin-left:-1px}
.sp-ba-handle{position:absolute;top:50%;left:50%;margin:-26px 0 0 -26px;transform:translate(0,0);-webkit-transform:translate(0,0);width:52px;height:52px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#1a1a1a;box-shadow:0 4px 20px rgba(0,0,0,.3);cursor:ew-resize;transition:transform .2s cubic-bezier(0.34,1.56,0.64,1)}
.sp-ba-handle:hover{transform:scale(1.08);-webkit-transform:scale(1.08)}
.sp-ba-badge{position:absolute;top:16px;padding:6px 16px;background:rgba(0,0,0,.7);color:#fff;font-size:var(--sp-t-sm);border-radius:30px;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-eng);font-weight:500;text-transform:uppercase}
.sp-ba-badge-b{left:18px}
.sp-ba-badge-a{right:18px;background:var(--sp-gold,#694c3b)}
.sp-ba-single-img{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:6px;background:#1a1a1a;box-shadow:0 10px 40px rgba(0,0,0,.08)}
.sp-ba-single-img img{width:100%;height:100%;object-fit:cover;display:block}
/* === aspect-ratio 미지원 브라우저 폴백 (iOS14↓, 구 Android WebView, 인앱 브라우저) === */
@supports not (aspect-ratio: 1/1){
  /* 4:3 (75%) */
  .sp-ba-compare,.sp-ba-single-img,.sp-pt04-cimg{height:0;padding-bottom:75%}
  /* 3:2 (66.66%) */
  .sp-pt02-cimg{height:0;padding-bottom:66.66%}
  /* 4:5 (125%) */
  .sp-pt01-img.is-empty{height:0;padding-bottom:125%}
  /* 3:4 portrait (133.33%) */
  .sp-pt05-img,.sp-doctor-img{height:0;padding-bottom:133.33%}
  /* 16:10 (62.5%) */
  .sp-ext-crd-thumb{height:0;padding-bottom:62.5%}
  /* 원본(imgorig) — aspect-ratio 미지원 브라우저에선 padding-bottom 강제비율을 풀어 원본 높이로 */
  .sp-ext-crd--imgorig .sp-ext-crd-thumb{height:auto;padding-bottom:0}
  /* 16:9 (56.25%) */
  .sp-ext-ytv .sp-yt-card,.sp-yt-modal-box iframe{height:0;padding-bottom:56.25%}
  /* 9:16 portrait (177.77%) */
  .sp-ext-yts .sp-yt-card,.sp-yt-modal[data-kind="shorts"] .sp-yt-modal-box iframe{height:0;padding-bottom:177.77%}
  /* 모바일 오버라이드 (max-width:900px) */
  @media(max-width:900px){
    .sp-ext-crd-thumb,.sp-hero-img,.sp-s2-img{height:0;padding-bottom:56.25%}
  }
}
.sp-ba-info{padding:20px 0;position:relative}
.sp-ba-info-num{font-family:var(--font-eng);font-size:13px;color:var(--sp-text);margin-bottom:18px;display:block;opacity:.8}
.sp-ba-cat{display:inline-block;font-size:var(--sp-t-sm);color:var(--sp-gold,#694c3b);letter-spacing:.16em;margin-bottom:16px;padding:5px 14px;border:1px solid var(--sp-gold,#694c3b);border-radius:30px;text-transform:uppercase;font-weight:500}
.sp-ba-name{font-size:var(--sp-t-sub);font-weight:500;margin:0 0 18px;line-height:1.3;color:var(--sp-main,#1a1a1a);letter-spacing:-.01em}
.sp-ba-detail{font-size:var(--sp-t-sm,15px);line-height:1.9;color:var(--sp-muted,#666);margin:0 0 24px;word-break:keep-all}
.sp-ba-period{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(0,0,0,.04);font-size:var(--sp-t-sm);color:#666;border-radius:20px;letter-spacing:.04em}
.sp-ba-period::before{content:'';width:6px;height:6px;background:var(--sp-gold,#694c3b);border-radius:50%}
.sp-ba-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:40px}
.sp-ba-nav-btn{width:44px;height:44px;border:1px solid var(--sp-line,#e4e4e0);border-radius:50%;background:#fff;color:#1a1a1a;font-size:14px;cursor:pointer;transition:all .22s cubic-bezier(0.16,1,0.3,1);font-family:inherit}
.sp-ba-nav-btn:hover:not(.is-disabled){background:var(--sp-main,#1a1a1a);color:#fff;border-color:var(--sp-main,#1a1a1a);transform:scale(1.05)}
.sp-ba-nav-btn.is-disabled,.sp-ba-nav-btn:disabled{opacity:.3;cursor:not-allowed}
.sp-ba-counter{font-size:14px;color:#888;font-family:var(--font-eng);min-width:60px;text-align:center}
.sp-ba-counter span[data-ba-cur]{color:var(--sp-main,#1a1a1a);font-weight:500}
@media (max-width:900px){
    .sp-ext-ba{padding:60px 0}
    .sp-ba-track{gap:16px}
    .sp-ba-slide{flex:0 0 calc(85% - 8px);width:calc(85% - 8px)}
    .sp-ba-info{padding:0;text-align:left}
    .sp-ba-cat{margin-bottom:12px}
    .sp-ba-name{font-size:var(--sp-t-sub);margin-bottom:14px}
}

/* 유튜브 영상 / 쇼츠 슬라이더 */
.sp-ext-yt{padding:100px 0;position:relative;background:linear-gradient(to bottom,#fafaf8 0%,#fff 100%)}
.sp-yt-slider{position:relative;margin-top:36px;overflow:hidden;width:100%}
.sp-yt-track{display:flex;gap:16px;cursor:grab;transition:transform .55s cubic-bezier(0.16,1,0.3,1);will-change:transform;width:100%}
.sp-yt-track:active{cursor:grabbing}
.sp-yt-slide{min-width:0;text-decoration:none;cursor:pointer}
.sp-ext-ytv .sp-yt-slide{flex:0 0 calc(33.333% - 11px)}
.sp-ext-yts .sp-yt-slide{flex:0 0 calc(20% - 13px)}
.sp-yt-card{position:relative;overflow:hidden;border-radius:4px;background:#1a1a1a}
.sp-ext-ytv .sp-yt-card{aspect-ratio:16/9}
.sp-ext-yts .sp-yt-card{aspect-ratio:9/16}
.sp-yt-thumb{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;background-size:cover;background-position:center;transition:transform .55s cubic-bezier(0.16,1,0.3,1)}
.sp-yt-thumb-empty{background:linear-gradient(135deg,#2a2a2a,#1a1a1a)}
.sp-yt-slide:hover .sp-yt-thumb{transform:scale(1.06)}
.sp-yt-dim{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;background:linear-gradient(to top,rgba(0,0,0,.62) 30%,rgba(0,0,0,.04) 75%);pointer-events:none}
.sp-yt-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:40px;opacity:.85;transition:opacity .3s,transform .3s;pointer-events:none}
.sp-yt-play svg{width:100%;height:100%}
.sp-yt-slide:hover .sp-yt-play{opacity:1;transform:translate(-50%,-50%) scale(1.1)}
.sp-yt-cap{position:absolute;bottom:18px;left:16px;right:16px;color:#fff;margin:0;font-size:var(--sp-t-body);line-height:1.5;font-weight:500;word-break:keep-all;letter-spacing:-.01em}
.sp-ext-yts .sp-yt-cap{font-size:var(--sp-t-body);bottom:16px;left:14px;right:14px;line-height:1.4}
.sp-yt-nav{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:24px}
.sp-yt-nav-btn{width:44px;height:44px;border:1px solid var(--sp-line,#e4e4e0);border-radius:50%;background:#fff;color:#1a1a1a;font-size:14px;cursor:pointer;transition:all .22s cubic-bezier(0.16,1,0.3,1)}
.sp-yt-nav-btn:hover:not(.is-disabled){background:#1a1a1a;color:#fff;border-color:#1a1a1a;transform:scale(1.05)}
.sp-yt-nav-btn.is-disabled,.sp-yt-nav-btn:disabled{opacity:.3;cursor:not-allowed}

/* 유튜브 모달 */
.sp-yt-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;inset:0;z-index:100000;background:rgba(0,0,0,.92);align-items:center;justify-content:center;padding:20px}
.sp-yt-modal.is-open{display:flex}
.sp-yt-modal-box{position:relative;width:100%;max-width:920px}
.sp-ext-yts ~ .sp-yt-modal .sp-yt-modal-box,.sp-yt-modal[data-kind="shorts"] .sp-yt-modal-box{max-width:420px}
.sp-yt-modal-box iframe{width:100%;aspect-ratio:16/9;border:0;display:block;border-radius:4px;background:#000}
.sp-yt-modal[data-kind="shorts"] .sp-yt-modal-box iframe{aspect-ratio:9/16}
.sp-yt-modal-close{position:absolute;top:-44px;right:0;width:36px;height:36px;border:0;background:none;color:#fff;font-size:24px;cursor:pointer;opacity:.8}
.sp-yt-modal-close:hover{opacity:1}

@media (max-width:900px){
    .sp-ba-slide{grid-template-columns:1fr;gap:20px}
    .sp-ext-ytv .sp-yt-slide{flex:0 0 calc(50% - 8px)}
    .sp-ext-yts .sp-yt-slide{flex:0 0 calc(33.333% - 11px)}
}
@media (max-width:600px){
    .sp-ext-ytv .sp-yt-slide{flex:0 0 calc(85% - 8px)}
    .sp-ext-yts .sp-yt-slide{flex:0 0 calc(60% - 11px)}
}

/* =============================================
   DOCTOR
============================================= */
.sp-doctor{position:relative;background:var(--sp-doctor-sec-bg,var(--sp-bg3));padding:var(--sp-doctor-pad-y,120px) 0;overflow:hidden}
@media (max-width:768px){.sp-doctor{padding:var(--sp-doctor-pad-y-mo,var(--sp-doctor-pad-y,120px)) 0}}
.sp-doctor-bg{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;overflow:hidden;z-index:0}
.sp-doctor-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.sp-doctor-bg::after{display:none}
.sp-doctor .sp-b{position:relative;z-index:1}
.sp-doctor-bg-btn{display:none;position:absolute;bottom:60px;right:16px;top:auto;left:auto;z-index:100;align-items:center;gap:6px;padding:8px 14px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;cursor:pointer;border-radius:4px;backdrop-filter:blur(4px)}
.sp-doctor-bg-btn:hover{background:rgba(0,0,0,.75)}
body.sp-edit .sp-doctor-bg-btn{display:inline-flex}
/* 배경 삭제 버튼 — 다른 닫기/편집 아이콘(sp-imgf-del, sp-sty-chip 등) 과 겹치지 않도록
   우측 하단으로 이동 + z-index 100 으로 상승. backdrop-filter 호환성 호스팅 차이 대비 background 진하게. */
.sp-bg-del-btn{display:none;position:absolute;bottom:16px;right:16px;top:auto;left:auto;z-index:100;align-items:center;gap:6px;padding:8px 14px;background:rgba(160,20,20,.85);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;cursor:pointer;border-radius:4px;backdrop-filter:blur(4px);box-shadow:0 2px 8px rgba(0,0,0,.3)}
.sp-bg-del-btn:hover{background:rgba(180,30,30,1)}
body.sp-edit .sp-bg-del-btn{display:inline-flex}
.sp-doctor-lay{display:grid;grid-template-columns:var(--sp-doctor-ratio,1fr 1.5fr);gap:var(--sp-doctor-gap,80px);align-items:var(--sp-doctor-v-align,center)}
.sp-doctor-lay > div:not(.sp-doctor-img){max-width:var(--sp-doctor-text-mw,none)}
.sp-doctor-img{max-width:var(--sp-doctor-img-mw,none)}
.sp-doctor-img{position:relative;aspect-ratio:var(--sp-doctor-img-ratio,3/4);overflow:hidden;background:var(--sp-bg2);border-radius:var(--sp-doctor-img-shape,var(--sp-doctor-img-radius,0));display:var(--sp-doctor-img-display,revert)}
.sp-doctor-img img{width:100%;height:100%;object-fit:cover;object-position:var(--sp-doctor-img-pos,center top)}
.sp-doctor-cap{position:absolute;bottom:0;left:0;right:0;padding:20px 24px;background:transparent;font-size:var(--sp-t-sm);color:var(--sp-text);letter-spacing:.06em}
.sp-doctor-eyebrow{font-size:var(--sp-doctor-t-eyebrow,var(--sp-t-sm));font-weight:var(--sp-doctor-w-eyebrow,400);color:var(--sp-doctor-c-eyebrow,var(--sp-gold));margin-bottom:32px;font-family:var(--font-eng)}
/* 한글 헤드라인 (wr_193) — h3급, eyebrow 와 인용 사이 */
.sp-doctor-sub{font-size:var(--sty-t-title,var(--sp-doctor-t-sub,var(--sp-t-hd)));font-weight:var(--sp-doctor-w-sub,500);line-height:1.5;letter-spacing:-.01em;color:var(--sp-doctor-c-sub,inherit);margin:-18px 0 22px;display:var(--sp-doctor-d-sub,block)}
.sp-doctor-quote{font-size:var(--sp-doctor-t-quote,var(--sp-t-body));font-weight:var(--sp-doctor-w-quote,300);line-height:1.9;letter-spacing:-.01em;color:var(--sp-doctor-c-quote,var(--sp-text));margin-bottom:40px;border-left:2px solid var(--sp-doctor-quote-bar,var(--sp-gold));padding-left:28px}
.sp-doctor-name{font-size:var(--sp-doctor-t-name,var(--sp-t-sm));font-weight:var(--sp-doctor-w-name,400);letter-spacing:.1em;color:var(--sp-doctor-c-name,var(--sp-muted2))}
.sp-doctor-name strong{color:var(--sp-text);font-weight:500}

/* =============================================
   FAQ
============================================= */
.sp-faq{background:var(--sp-faq-sec-bg,var(--sp-bg2));padding:var(--sp-faq-pad-y,100px) 0;position:relative}
@media (max-width:768px){.sp-faq{padding:var(--sp-faq-pad-y-mo,var(--sp-faq-pad-y,100px)) 0}}
.sp-faq-hd{margin-bottom:52px}
.sp-faq-list{display:flex;flex-direction:column;gap:var(--sp-faq-gap,0)}
.sp-faq-item{border-top:1px solid var(--sp-faq-bd-c,var(--sp-line));background:var(--sp-faq-open-bg-base,transparent);transition:background .25s}
.sp-faq-item:last-child{border-bottom:1px solid var(--sp-faq-bd-c,var(--sp-line))}
.sp-faq-item:hover{background:var(--sp-faq-hv-bg,var(--sp-faq-open-bg-base,transparent))}
.sp-faq-item[open]{background:var(--sp-faq-open-bg,var(--sp-faq-open-bg-base,transparent))}
.sp-faq-q{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:var(--sp-faq-qpad,26px) 0;cursor:pointer;list-style:none}
.sp-faq-q::-webkit-details-marker{display:none}
.sp-faq-q:hover .sp-faq-qtxt{color:var(--sp-faq-accent,var(--sp-gold))}
.sp-faq-qw{display:flex;align-items:flex-start;gap:18px;flex:1}
.sp-faq-qnum{font-family:var(--font-eng);font-size:var(--sp-faq-t-qnum,var(--sp-t-sm));font-weight:var(--sp-faq-w-qnum,400);color:var(--sp-text);flex-shrink:0;padding-top:2px;display:var(--sp-faq-d-qnum,block)}
.sp-faq-qtxt{margin:0;font-size:var(--sp-faq-t-q,var(--sp-t-body));font-weight:var(--sp-faq-w-q,300);color:var(--sp-faq-c-q,var(--sp-text));line-height:1.55;transition:color .25s}
.sp-img-alt-btn{display:none!important}
body.sp-edit .sp-img-alt-btn{display:block!important}
/* 아이콘 — 기본 ＋ → 펼치면 ×(45° 회전) */
.sp-faq-ico{flex-shrink:0;width:26px;height:26px;border:1px solid var(--sp-faq-bd-c,rgba(26,14,6,.2));border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1;color:var(--sp-faq-ico-c,var(--sp-muted2));margin-top:2px;transition:transform .46s cubic-bezier(.33,1,.68,1),border-color .25s,color .25s}
.sp-faq-ico::before{content:'+';font-size:var(--sp-t-body);line-height:1}
details[open] .sp-faq-ico{transform:rotate(45deg);border-color:var(--sp-faq-accent,var(--sp-gold));color:var(--sp-faq-accent,var(--sp-gold))}
/* 아이콘 변형: 화살표(∨) */
.sp-faq--ico-chevron .sp-faq-ico{border:0;width:22px;height:22px;color:var(--sp-faq-ico-c,var(--sp-muted))}
.sp-faq--ico-chevron .sp-faq-ico::before{content:'\2304';font-size:1.6em;margin-top:-.34em}
.sp-faq--ico-chevron details[open] .sp-faq-ico{transform:rotate(180deg);color:var(--sp-faq-accent,var(--sp-gold))}
/* 아이콘 변형: 없음 */
.sp-faq--ico-none .sp-faq-ico{display:none}
/* 답변 — 부드러운 높이 펼침(JS) */
.sp-faq-a{overflow:hidden;padding:0 44px 26px 36px;font-size:var(--sp-faq-t-a,var(--sp-t-body));font-weight:var(--sp-faq-w-a,400);line-height:1.95;color:var(--sp-faq-c-a,var(--sp-muted));transition:height .46s cubic-bezier(.33,1,.68,1),opacity .34s ease .06s;will-change:height}
/* 아이템 스타일: 카드(박스) */
.sp-faq--card .sp-faq-list{gap:var(--sp-faq-gap,12px)}
.sp-faq--card .sp-faq-item{border:1px solid var(--sp-faq-bd-c,var(--sp-line));border-radius:14px;background:var(--sp-faq-open-bg-base,var(--sp-bg));padding:0 24px;overflow:hidden;transition:border-color .3s,box-shadow .3s,background .25s}
.sp-faq--card .sp-faq-item:hover{background:var(--sp-faq-hv-bg,var(--sp-faq-open-bg-base,var(--sp-bg)))}
.sp-faq--card .sp-faq-item[open]{border-color:var(--sp-faq-accent,var(--sp-gold));background:var(--sp-faq-open-bg,var(--sp-faq-open-bg-base,var(--sp-bg)));box-shadow:0 8px 28px rgba(0,0,0,.07)}
.sp-faq--card .sp-faq-q{padding:var(--sp-faq-qpad,24px) 0}
.sp-faq--card .sp-faq-a{padding:0 8px 24px 36px}
/* 아이템 스타일: 소프트(연한 배경) */
.sp-faq--soft .sp-faq-list{gap:var(--sp-faq-gap,10px)}
.sp-faq--soft .sp-faq-item{border:0;border-radius:14px;background:var(--sp-faq-open-bg-base,var(--sp-bg3));padding:0 24px;transition:background .3s}
.sp-faq--soft .sp-faq-item:hover{background:var(--sp-faq-hv-bg,var(--sp-faq-open-bg-base,var(--sp-bg3)))}
.sp-faq--soft .sp-faq-item[open]{background:var(--sp-faq-open-bg,var(--sp-bg2))}
.sp-faq--soft .sp-faq-q{padding:var(--sp-faq-qpad,24px) 0}
.sp-faq--soft .sp-faq-a{padding:0 8px 24px 36px}

/* =============================================
   RELATED
============================================= */
.sp-related{background:var(--sp-related-sec-bg,#fafafa);padding:var(--sp-related-pad-y,100px) 0;position:relative}
@media (max-width:768px){.sp-related{padding:var(--sp-related-pad-y-mo,var(--sp-related-pad-y,100px)) 0}}
.sp-related-hd{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:52px}
.sp-related-grid{display:grid;grid-template-columns:var(--sp-related-cols-tmpl,repeat(var(--sp-cols,4),1fr));gap:var(--sp-related-gap,2px)}
.sp-related-card{display:block;background:var(--sp-related-card-bg,var(--sp-card-bg,var(--sp-bg2)));padding:36px 28px 44px;position:relative;overflow:hidden;transition:background .32s cubic-bezier(.16,1,.3,1);border-radius:var(--sp-related-radius,0)}
.sp-related-card:hover{background:var(--sp-related-card-bg-hv,var(--sp-card-bg-hv,var(--sp-bg3)))}
.sp-related-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--sp-gold);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.16,1,.3,1)}
.sp-related-card:hover::after{transform:scaleX(1)}
.sp-related-cimg{width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:6px;margin-bottom:22px;background:var(--sp-bg3)}
.sp-related-cimg img{width:100%;height:100%;object-fit:cover;display:block}
body.sp-edit .sp-related-cimg{cursor:pointer;outline:1px dashed rgba(0,0,0,.22);transition:outline-color .2s}
body.sp-edit .sp-related-cimg:hover{outline-color:var(--sp-gold)}
.sp-related-card-eyebrow{display:none;margin:0 0 18px;font-size:11px;line-height:1;letter-spacing:.12em;color:var(--sp-gold)}
body.sp-edit .sp-related-card-eyebrow[data-related-eyebrow]{cursor:text;outline:1px dashed rgba(169,111,60,.45);outline-offset:4px}
body.sp-edit .sp-related-card-eyebrow[data-related-eyebrow]:focus{outline:2px solid var(--sp-gold,#a96f3c);outline-offset:4px}
.sp-related-cnum{display:none;font-family:var(--font-eng);font-size:48px;font-weight:300;color:rgba(0,0,0,.07);line-height:1;margin-bottom:24px}
.sp-related-cname{font-size:var(--sp-related-t-name,var(--sp-t-sub));font-weight:var(--sp-related-w-name,400);letter-spacing:-.01em;margin-bottom:8px;color:var(--sp-related-c-name,inherit)}
.sp-related-cdesc{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;font-size:var(--sp-related-t-desc,var(--sp-t-sm));font-weight:var(--sp-related-w-desc,400);color:var(--sp-related-c-desc,#666);line-height:1.7;margin-bottom:28px}
.sp-related-clink{display:inline-flex;align-items:center;gap:6px;font-size:15px;line-height:1.45;letter-spacing:-.01em;color:var(--sp-gold);opacity:0;transform:translateX(-6px);transition:opacity .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1)}
.sp-related-card:hover .sp-related-clink,.sp-related-card:focus-visible .sp-related-clink{opacity:1;transform:translateX(0)}
.sp-related-clink-review{display:none}
.sp-related--noimg-review .sp-related-hd{display:none}
.sp-related--noimg-review .sp-related-card--noimg{display:flex;flex-direction:column;align-items:flex-start;min-height:245px;padding:38px 30px 32px;background:#fff;border-radius:0;transition:box-shadow .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1)}
.sp-related--noimg-review .sp-related-card--noimg:hover{background:#fff;box-shadow:0 12px 34px rgba(0,0,0,.07);transform:translateY(-2px)}
.sp-related--noimg-review .sp-related-card--noimg::after{display:none}
.sp-related--noimg-review .sp-related-card--noimg .sp-related-cimg{display:none}
.sp-related--noimg-review .sp-related-card--noimg .sp-related-card-eyebrow{display:var(--sp-related-card-eyebrow-off,block)}
.sp-related--noimg-review .sp-related-card--noimg .sp-related-cname{margin-bottom:14px}
.sp-related--noimg-review .sp-related-card--noimg .sp-related-cdesc{flex:1;margin-bottom:22px;line-height:1.75}
.sp-related--noimg-review .sp-related-card--noimg .sp-related-clink{min-height:42px;padding:10px 22px;border-radius:999px;background:var(--index_color,var(--main,var(--hv-main,#888)));color:#fff;opacity:1;transform:none}
.sp-related--noimg-review .sp-related-card--noimg .sp-related-clink-default{display:none}
.sp-related--noimg-review .sp-related-card--noimg .sp-related-clink-review{display:inline}
.sp-related-url-row{display:none;margin-top:auto;padding-top:12px}
.sp-related-linktext-row{display:none;width:100%;margin-top:10px}
.sp-related-linktext-lbl{display:block;margin-bottom:5px;font-size:11px;line-height:1.4;color:var(--sp-muted);letter-spacing:0}
.sp-related-linktext-inp{width:100%;padding:7px 10px;font-size:12px;line-height:1.4;background:rgba(0,0,0,.04);border:1px solid var(--sp-line);border-radius:3px;color:var(--sp-text);font-family:inherit}
.sp-related-linktext-inp:focus-visible{outline:2px solid var(--sp-gold);outline-offset:1px}
.sp-related-url-inp{width:auto;min-width:0;flex:1;padding:7px 10px;font-size:11px;background:rgba(0,0,0,.04);border:1px solid var(--sp-line);border-radius:3px;color:var(--sp-text);font-family:monospace}
.sp-related-noimg-label{display:inline-flex!important;align-items:center;gap:5px;flex-shrink:0;white-space:nowrap;padding:7px 9px;border:1px solid var(--sp-line);border-radius:3px;background:var(--sp-bg,#fff);font-size:11px;color:var(--sp-text);cursor:pointer;position:relative;z-index:2}
.sp-related-noimg-inp,.sx-related-image-disable{-webkit-appearance:checkbox!important;appearance:auto!important;display:inline-block!important;position:static!important;visibility:visible!important;opacity:1!important;flex:0 0 16px!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;margin:0!important;padding:0!important;border:1px solid #8b8b8b!important;background:#fff!important;accent-color:var(--sp-gold,#a96f3c);cursor:pointer!important;vertical-align:middle!important}
.sp-related-noimg-inp:focus-visible,.sx-related-image-disable:focus-visible{outline:2px solid var(--sp-gold,#a96f3c)!important;outline-offset:2px}
body.sp-edit .sp-related-url-row{display:flex!important;align-items:center;gap:7px;width:100%;overflow:visible}
body.sp-edit .sp-related-linktext-row{display:block}
@media(max-width:768px){body.sp-edit .sp-related-url-row{flex-wrap:wrap}.sp-related-noimg-label{width:100%;justify-content:center}}
@media(max-width:768px){.sp-related-clink{font-size:14px;letter-spacing:-.01em}}
.sp-online-url-row{display:none;align-items:center;gap:8px;margin-top:10px}
.sp-online-url-lbl{font-size:11px;color:#888;white-space:nowrap;letter-spacing:.04em}
.sp-online-url-inp{flex:1}
body.sp-edit .sp-online-url-row{display:flex}

/* =============================================
   AOS 애니메이션
============================================= */
.js-rdy [data-anim]{opacity:0;transform:translateY(var(--sp-anim-dist,24px));transition:opacity var(--sp-anim-dur,.7s) cubic-bezier(.16,1,.3,1),transform var(--sp-anim-dur,.7s) cubic-bezier(.05,.7,.1,1)}
.js-rdy [data-anim].on{opacity:1;transform:translateY(0)}
/* 섹션(전체) 등장 모션 옵션 (sec_anim) — #sp-sections 클래스로 모든 [data-anim] 섹션 일괄 스왑. 기본('')=슬라이드업 */
.js-rdy .sp-secanim-fade [data-anim]{transform:none;transition:opacity var(--sp-anim-dur,.7s) cubic-bezier(.16,1,.3,1)}
.js-rdy .sp-secanim-blur [data-anim]{transform:none;filter:blur(12px);transition:opacity var(--sp-anim-dur,.8s) cubic-bezier(.22,1,.36,1),filter var(--sp-anim-dur,.8s) cubic-bezier(.22,1,.36,1)}
.js-rdy .sp-secanim-blur [data-anim].on{filter:none}
.js-rdy .sp-secanim-zoom [data-anim]{transform:scale(.96);transition:opacity var(--sp-anim-dur,.8s) cubic-bezier(.22,1,.36,1),transform var(--sp-anim-dur,.8s) cubic-bezier(.22,1,.36,1)}
.js-rdy .sp-secanim-zoom [data-anim].on{transform:none}
/* 커튼 와이프 — 클립패스로 좌→우 닦이며 등장 (페이드 없이 wipe). 박스/이미지에 깔끔 */
.js-rdy .sp-secanim-curtain [data-anim]{opacity:1;transform:none;-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0);transition:clip-path var(--sp-anim-dur,.9s) cubic-bezier(.65,0,.35,1),-webkit-clip-path var(--sp-anim-dur,.9s) cubic-bezier(.65,0,.35,1)}
.js-rdy .sp-secanim-curtain [data-anim].on{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}
.js-rdy .sp-secanim-none [data-anim]{opacity:1;transform:none;filter:none;transition:none}
@media(max-width:768px){.js-rdy .sp-secanim-blur [data-anim]{filter:blur(6px)}}

/* 빈 항목 처리 */
.sp-item-empty{display:none!important}
body.sp-edit .sp-item-empty{display:flex!important;opacity:.3;pointer-events:auto}
body.sp-edit .sp-pt03-item.sp-item-empty,
body.sp-edit .sp-pt04-col.sp-item-empty,
body.sp-edit .sp-pt06-item.sp-item-empty,
body.sp-edit .sp-pt07-step.sp-item-empty,
body.sp-edit .sp-faq-item.sp-item-empty{display:block!important}
body.sp-edit .sp-pt02-card.sp-item-empty{display:flex!important;opacity:.3}
body.sp-edit .sp-related-card.sp-item-empty{display:flex!important;opacity:.3}
body.sp-edit .sp-pt01-body p.sp-item-empty{display:block!important;opacity:.3}
body.sp-edit .sp-pt02-cdesc.sp-item-empty{display:block!important;opacity:.3}
/* ext 섹션 빈 항목 편집 모드 표시 */
body.sp-edit .sp-ext-sym-item.sp-item-empty{display:flex!important;opacity:.3}
body.sp-edit .sp-ext-crd-item.sp-item-empty{display:flex!important;opacity:.3}
body.sp-edit .sp-pt05-item.sp-item-empty{display:flex!important;opacity:.3}
body.sp-edit .sp-pt06-item.sp-item-empty{display:block!important;opacity:.3}
body.sp-edit .sp-pt07-step.sp-item-empty{display:block!important;opacity:.3}


/* =============================================
   반응형
============================================= */
@media(max-width:900px){
    .sp-hero-in{grid-template-columns:1fr}
    .sp-hero-txt{padding:var(--sp-hero-pad0,60px) 0 var(--sp-hero-pad0,50px);position:relative;z-index:100;text-align:var(--sp-hero-h-align-mo,var(--sp-hero-h-align,left));align-items:var(--sp-hero-h-align-mo-flex,var(--sp-hero-h-align-flex,flex-start));justify-content:var(--sp-hero-v-align-mo,var(--sp-hero-v-align,center));max-width:var(--sp-hero-text-mw-mo,var(--sp-hero-text-mw,none))}
    .sp-hero--no-img .sp-hero-txt{justify-self:var(--sp-hero-h-align-mo-justify,var(--sp-hero-h-align-justify,start))}
    /* 단일 열로 바뀌는 구간에서는 PC 이미지 크기·이동값을 차단한다.
       transform은 문서 흐름의 공간을 바꾸지 않으므로 PC 이동값을 상속하면
       다음 행의 서브내비/제목 위로 이미지가 겹칠 수 있다. */
    .sp-hero-img{
        aspect-ratio:4/3;
        width:min(100%,var(--sp-hero-img-mw-mo,100%));
        max-width:100%;
        height:var(--sp-hero-img-h-mo,auto);
        min-height:0;
        justify-self:center;
        /* 헤더 바로 아래에 달라붙지 않도록 모바일 기본 숨통을 확보한다.
           아래 이동(양수)은 margin으로 처리해 뒤의 제목 영역도 함께 밀고,
           위 이동(음수)만 translate로 처리해 이미지·텍스트 겹침을 막는다. */
        margin-top:calc(var(--sp-hero-img-top-gap-mo,clamp(48px,12vw,80px)) + max(0px,var(--sp-hero-img-move-y-mo,0px)));
        transform:translate(var(--sp-hero-img-move-x-mo,0px),min(0px,var(--sp-hero-img-move-y-mo,0px)))
    }

    /* (구) 모바일 강제 다크 그라데이션 — 삭제됨. 어둡게는 딤 슬라이더(PC/📱) 한 가지로 통일.
       텍스트 흰색 강제는 옵션(모바일 텍스트 흰색: 켬 → .sp-hero--mowhite)으로만 적용 */
    #sp-sec-hero.sp-hero--mowhite .sp-hero-en.sp-eng,
    #sp-sec-hero.sp-hero--mowhite h1 .sp-hero-en.sp-eng,
    #sp-sec-hero.sp-hero--mowhite .sp-hero-en .sp-hr-l,
    #sp-sec-hero.sp-hero--mowhite h1 .sp-hr-l { color: #ffffff !important; }

    #sp-sec-hero.sp-hero--mowhite .sp-hero-ko.sp-hero-ko,
    #sp-sec-hero.sp-hero--mowhite .sp-hero-desc.sp-hero-desc { color: rgba(255,255,255,.88) !important; }

    #sp-sec-hero.sp-hero--mowhite .sp-hero-etxt.sp-eng { color: #ffffff !important; }
    #sp-sec-hero.sp-hero--mowhite .sp-hero-eline { background: #ffffff !important; }
    /* 흰색 모드 — 그림자로 가독성 보강 */
    .sp-hero--mowhite .sp-hero-etxt,
    .sp-hero--mowhite .sp-hero-en,
    .sp-hero--mowhite .sp-hero-ko,
    .sp-hero--mowhite .sp-hero-desc {
        text-shadow: 0 2px 12px rgba(0,0,0,.45), 0 0 1px rgba(0,0,0,.25);
    }
    .sp-s2-lay{grid-template-columns:1fr}
    .sp-s2-img{aspect-ratio:16/9;order:-1}
    .sp-s2--flip .sp-s2-img{order:-1}
    .sp-s2-cnt{padding:60px 0}
    .sp-pt01-lay{grid-template-columns:1fr;gap:48px}
    .sp-pt01--flip .sp-pt01-img{order:0}
    .sp-pt05--flip .sp-pt05-img{order:-1}
    .sp-doctor--flip .sp-doctor-img{order:-1}
    .sp-ext-sym--flip .sp-ext-sym-img{order:0}
    .sp-pt02-cards{grid-template-columns:1fr}
    .sp-pt03-grid{grid-template-columns:1fr 1fr !important}
    .sp-pt03-item{padding:24px 18px;border-right:1px solid var(--sp-pt03-div-c,var(--sp-line));border-bottom:1px solid var(--sp-pt03-div-c,var(--sp-line))}
    .sp-pt03-item:nth-child(2n){border-right:none}
    .sp-pt03-item:nth-last-child(-n+2):nth-child(2n+1):not(:last-child),
    .sp-pt03-item:last-child{border-bottom:none}
    /* 항목이 홀수면 마지막 카드를 풀폭으로 — 2열에서 한 칸 비어 보이는 '이빨 빠짐' 방지 */
    .sp-pt03-item:last-child:nth-child(odd){grid-column:1 / -1;border-right:none}
    .sp-pt03-head{gap:10px;margin-bottom:12px}
    .sp-pt03-ico{width:30px;height:30px}
    .sp-pt03-ico svg{width:16px;height:16px}
    .sp-pt04-cols{grid-template-columns:1fr}
    /* 모바일에선 POINT 04 카드 이미지 원본 비율로 (크롭 없음) */
    .sp-pt04-cimg{aspect-ratio:auto;height:auto;padding-bottom:0;background:transparent}
    .sp-pt04-cimg img{width:100%;height:auto;object-fit:initial}
    .sp-pt05-lay{grid-template-columns:1fr;gap:48px}
    /* 모바일에선 목록 컬럼(5:5 등) 강제 1열 */
    .sp-pt05-list{grid-template-columns:1fr;column-gap:0}
    /* 모바일에선 pt05 이미지 원본 비율로 (크롭 없음) */
    .sp-pt05-img{aspect-ratio:auto;height:auto;padding-bottom:0;background:transparent;max-width:100%}
    .sp-pt05-img img{width:100%;height:auto;object-fit:initial;object-position:initial}
    .sp-pt06-grid{grid-template-columns:1fr 1fr}
    .sp-pt07-steps{grid-template-columns:1fr 1fr;gap:2px}
    .sp-pt07-step::after{display:none}
    .sp-doctor-lay{grid-template-columns:1fr;gap:48px}
    /* 모바일에선 원장 사진 원본 비율로 (크롭 없음) */
    .sp-doctor-img{aspect-ratio:auto;height:auto;padding-bottom:0;background:transparent;max-width:100%}
    .sp-doctor-img img{width:100%;height:auto;object-fit:initial;object-position:initial}
    .sp-related-grid{grid-template-columns:1fr 1fr}
    /* 모바일 2열 — 카드 세로 압축 (padding/숫자/margin 축소) */
    .sp-related-card{padding:22px 16px 26px}
    .sp-related-cnum{font-size:32px;margin-bottom:14px}
    .sp-related-cname{margin-bottom:6px}
    .sp-related-cdesc{margin-bottom:14px;line-height:1.55}
    .sp-related--noimg-review .sp-related-card--noimg{padding:30px 24px;min-height:230px}
}
@media(max-width:600px){
    .sp-hero-acts{flex-wrap:wrap}
    .sp-pt06-grid{grid-template-columns:1fr}
    .sp-pt07-steps{grid-template-columns:1fr}
    .sp-related--noimg-review .sp-related-grid{grid-template-columns:1fr}
    /* 시술 정보 표 — 좁은 화면에서도 2열(5:5) 유지 (사용자 요청).
       768px 이하 미디어쿼리(.sp-pt03-grid{grid-template-columns:1fr 1fr})가 살아남아 적용됨. */
    .sp-pt03{padding:60px 0}
}
@media(prefers-reduced-motion:reduce){
    *{animation-duration:.01ms!important;transition-duration:.01ms!important}.sp-s2-item,.sp-pt05-item,[data-anim],.sp-hero .sp-hr-l,.sp-hero .sp-hero-etxt,.sp-hero .sp-hero-desc,.sp-hero .sp-hero-acts,.sp-hero .sp-hero-eline{opacity:1!important;transform:none!important}
}

/* 서브 네비게이션 */
.hive_sub_nav{width:100%;position:relative;background:transparent;z-index:100}
.hive_sub_nav__inner{width:95%;max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:26px;padding:8px 0}
/* hero 안 위치 — 기존 스타일 유지를 위해 inner 너비 100% 로 강제 */
.sp-subnav-hero-wrap .hive_sub_nav__inner{width:100%;max-width:none;padding:0}
/* 페이지 상단 위치 — hero 비활성 시 자동 노출 */
.sp-subnav-top{position:relative;z-index:400;width:100%;background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(0,0,0,.06)}
.sp-subnav-top .hive_sub_nav__inner{padding:14px 0}
@media (max-width:768px){ .sp-subnav-top .hive_sub_nav__inner{padding:10px 0} }
.hive_sub_nav__home{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;text-decoration:none;flex-shrink:0;transition:background .22s cubic-bezier(.16,1,.3,1)}
.hive_sub_nav__home:hover{background:rgba(0,0,0,.05)}
.hive_sub_nav__home svg{color:#a06a3f;stroke:#a06a3f}
.hive_snav_drop{position:relative;display:flex;align-items:center}
.hive_snav_btn{position:relative;display:flex;align-items:center;height:40px;padding:0 26px 0 6px;border:0;background:transparent;cursor:pointer;transition:opacity .2s cubic-bezier(.16,1,.3,1)}
.hive_snav_btn__text{display:block;white-space:nowrap;color:#222;font-size:var(--t-caption,13px);font-weight:500}
.hive_snav_btn__arrow{position:absolute;right:0;top:50%;width:7px;height:7px;border-right:1px solid #999;border-bottom:1px solid #999;transform:translateY(-60%) rotate(45deg);transition:transform .25s cubic-bezier(.16,1,.3,1)}
.hive_snav_drop.open .hive_snav_btn__arrow{transform:translateY(-40%) rotate(-135deg)}
.hive_snav_list{position:absolute;top:42px;left:0;min-width:200px;background:#fff;border:1px solid #eee;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:6px 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1),visibility .22s;z-index:200;max-height:320px;overflow-y:auto}
.hive_snav_list::-webkit-scrollbar{width:6px}
.hive_snav_list::-webkit-scrollbar-track{background:#f2f2f2;border-radius:10px}
.hive_snav_list::-webkit-scrollbar-thumb{background:#a06a3f;border-radius:10px}
.hive_snav_drop.open .hive_snav_list{opacity:1;visibility:visible;transform:translateY(0)}
.hive_snav_item{display:block;width:100%;padding:11px 16px;box-sizing:border-box;cursor:pointer;font-size:var(--t-caption,13px);color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .15s,color .15s}
.hive_snav_item:hover{background:#f6f6f6;color:#a06a3f}
.hive_snav_item.is-active{color:#a06a3f;background:#f2f2f2;font-weight:600}
.hive_sr_only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){
    .hive_sub_nav__inner{width:92%;gap:18px;padding:6px 0}
    .hive_snav_btn{height:36px;padding:0 22px 0 6px}
    .hive_snav_list{top:38px;min-width:170px;border-radius:8px}
    .hive_snav_item{padding:10px 14px}
}
/* 모바일 — hero 안 subnav 흰색은 '모바일 텍스트 흰색' 옵션(.sp-hero--mowhite)일 때만 (히어로 텍스트와 동일 게이트) */
@media(max-width:768px){
    .sp-hero.sp-hero--mowhite .sp-subnav-hero-wrap .hive_sub_nav__home svg,
    .sp-hero.sp-hero--mowhite .sp-subnav-hero-wrap .hive_sub_nav__home svg path,
    .sp-hero.sp-hero--mowhite .sp-subnav-hero-wrap .hive_sub_nav__home svg polyline,
    .sp-hero.sp-hero--mowhite .sp-subnav-hero-wrap .hive_sub_nav__home svg line { color:#fff !important; stroke:#fff !important; fill:none !important; }
    .sp-hero.sp-hero--mowhite .sp-subnav-hero-wrap .hive_sub_nav__home:hover { background:rgba(255,255,255,.12) !important; }
    .sp-hero.sp-hero--mowhite .sp-subnav-hero-wrap .hive_snav_btn__text { color:#fff !important; }
    .sp-hero.sp-hero--mowhite .sp-subnav-hero-wrap .hive_snav_btn__arrow { border-color:#fff !important; }
    /* 드롭다운 열렸을 때 — 흰 배경 위 텍스트는 다크 톤 그대로 유지 (가독성),
       단 활성 항목은 골드 대신 검정으로 바꿔 흰 배경 위에서도 명확히 */
    .sp-hero .sp-subnav-hero-wrap .hive_snav_item.is-active {
        color:#1a1a1a !important;
        background:rgba(0,0,0,.06) !important;
        font-weight:600;
    }
    /* 동일하게 sp-subnav-top (페이지 상단 모드) — 다크 오버레이 hero 위에 떠있으면 흰색이 더 적합.
       이건 옵션이라 사용자가 sp-subnav-top 을 hero 위에 깔았을 때만 적용 — 기본은 변경 없음. */
}

/* 서브nav 글자색 흰색 옵션(수동 토글) — 어두운 히어로/배경 위일 때. 기본(클래스 없음)=검정.
   바(버튼) 텍스트·홈·화살표만 흰색, 드롭다운 목록은 흰 배경이라 다크 유지 */
.hive_sub_nav.sp-subnav--white .hive_snav_btn__text{color:#fff}
.hive_sub_nav.sp-subnav--white .hive_snav_btn__arrow{border-color:#fff}
.hive_sub_nav.sp-subnav--white .hive_sub_nav__home svg{color:#fff;stroke:#fff}
.hive_sub_nav.sp-subnav--white .hive_sub_nav__home:hover{background:rgba(255,255,255,.12)}


/* --- enl_style_02.css --- */
.sp-pt-badge-num{display:none}.sp-pt-badge-txt{border-left:none!important;padding-left:0!important}
/* --- enl_style_03.css --- */

                .sp-geo-meta{display:flex;flex-wrap:wrap;gap:18px;margin:-16px 0 6px}
                .sp-geo-chip{position:relative;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#8a857f;cursor:default;outline:none;transition:color .15s}
                .sp-geo-chip:hover,.sp-geo-chip:focus{color:#5a554f}
                .sp-geo-chip>svg{width:15px;height:15px;opacity:.7;flex:none}
                .sp-geo-pop{position:absolute;left:0;top:calc(100% + 10px);width:max-content;max-width:min(380px,82vw);background:#1f1f1f;color:#f2f2f2;font-size:13px;line-height:1.75;padding:13px 15px;border-radius:9px;box-shadow:0 12px 34px rgba(0,0,0,.22);opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .16s,transform .16s,visibility .16s;z-index:50;text-align:left;font-weight:400;white-space:normal;word-break:keep-all}
                .sp-geo-pop::after{content:'';position:absolute;bottom:100%;left:18px;border:6px solid transparent;border-bottom-color:#1f1f1f}
                .sp-geo-chip:hover .sp-geo-pop,.sp-geo-chip:focus .sp-geo-pop,.sp-geo-chip:focus-within .sp-geo-pop{opacity:1;visibility:visible;transform:translateY(0)}
                
/* --- enl_style_04.css --- */
.sp-hero .sp-hr-l,.sp-hero .sp-hero-etxt,.sp-hero .sp-hero-desc,.sp-hero .sp-hero-acts,.sp-hero .sp-hero-eline{opacity:1!important;transform:none!important;filter:none!important}
/* --- enl_style_05.css --- */

.bafcrs{--crs-accent:var(--index_color,var(--main,var(--hv-main,#a66c43)));--crs-gap:34px;width:100%;max-width:none;margin:0;color:#28211c;word-break:keep-all}.bafcrs *{box-sizing:border-box}.bafcrs-grid{display:flex;gap:var(--crs-gap);width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.bafcrs-grid::-webkit-scrollbar{display:none}.bafcrs-card{flex:0 0 calc((100% - (var(--crs-per) - 1) * var(--crs-gap)) / var(--crs-per));min-width:0;overflow:hidden;border:var(--crs-border-w,1px) solid var(--crs-border-color,#e3d8cc);background:var(--crs-card-bg,#fffdfa);box-shadow:0 16px 38px rgba(79,55,34,.07);scroll-snap-align:start}.bafcrs-head{min-height:190px;padding:24px 26px 18px}.bafcrs-brand{display:flex;align-items:center;justify-content:center;min-height:58px;padding-bottom:18px;border-bottom:1px dashed #e6d9cc;text-align:center}.bafcrs-brand img{display:block;width:auto;max-width:170px;height:auto;max-height:46px;object-fit:contain}.bafcrs-brand strong{display:block;line-height:1;color:#111}.bafcrs-kicker{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}.bafcrs-cat{padding:8px 14px;border:1px solid #ddccba;border-radius:999px;color:#746456}.bafcrs-popular{display:inline-flex;align-items:center;gap:5px;margin-left:auto;padding:8px 12px;border:1px solid #d9d9d9;border-radius:999px;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.12);font-weight:700;color:#555}.bafcrs-popular i{font-style:normal}.bafcrs-photos{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:1.75/1;gap:2px;background:#eee7df}.bafcrs-photo{position:relative;min-width:0;margin:0;overflow:hidden;background:#eee5dc}.bafcrs-photo>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%}.bafcrs-photo.is-empty>img{display:none}.bafcrs-photo figcaption{position:absolute;z-index:2;top:13px;left:13px;padding:8px 12px;color:#fff;background:rgba(91,53,31,.88);font-weight:800;letter-spacing:.1em}.bafcrs-photo.is-empty:after{content:"등록된 사진이 없습니다";position:absolute;inset:0;display:grid;place-items:center;color:#766b62}.bafcrs-lock{position:absolute;inset:0;z-index:1;width:100%;border:0;padding:24px;color:#fff;background:rgba(167,105,63,.46);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;cursor:pointer}.bafcrs-lock strong{color:#fff;text-shadow:0 1px 4px rgba(84,43,18,.22)}.bafcrs-angles{display:flex;justify-content:center;gap:6px;padding:10px 20px 14px;border-bottom:1px dashed #e6d9cc}.bafcrs-angles button{min-width:62px;min-height:42px;padding:8px 16px;border:1px solid #ddcfc2;background:#fff;color:#6f6257;font-family:inherit;cursor:pointer}.bafcrs-angles button.active{border-color:var(--crs-accent);background:var(--crs-accent);color:#fff}.bafcrs-content{padding:24px 26px 24px}.bafcrs-content h3{margin:0;line-height:1.55;font-weight:500}.bafcrs-content h3 a{color:inherit;text-decoration:none}.bafcrs-summary{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:12px;color:#8b7c70}.bafcrs-summary:empty{display:none}.bafcrs-summary span:before{content:"◆";margin-right:5px;color:var(--crs-accent);font-size:7px}.bafcrs-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:18px}.bafcrs-chips span{display:flex;align-items:center;justify-content:center;min-width:0;min-height:38px;padding:7px 12px;border:1px solid #d9cec4;background:#fff;color:#9a918b;font-weight:700;text-align:center}.bafcrs-excerpt{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:20px 0 0;color:#9b9189;line-height:1.75}.bafcrs-content footer{display:flex;justify-content:flex-end;align-items:center;min-height:52px;margin-top:6px}.bafcrs-content footer a{color:#2b241f;text-decoration:none;font-weight:800}.bafcrs-content footer span{color:var(--crs-accent)}.bafcrs-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:28px}.bafcrs-nav button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #d9cec4;border-radius:50%;background:#fff;color:#6f6257;font-family:inherit;font-size:18px;cursor:pointer}.bafcrs-nav button:disabled{opacity:.3;cursor:default}.bafcrs-nav span{min-width:58px;text-align:center;color:#8b7c70}.bafcrs-nav b{color:#28211c}
.bafcrs-card{display:flex;flex-direction:column}.bafcrs-head{min-height:0;padding:24px 26px}.bafcrs-angles{padding:12px 20px}.bafcrs-content{display:flex;flex:1;flex-direction:column}.bafcrs-content footer{margin-top:auto;padding-top:20px}
.bafcrs-card.is-locked .bafcrs-photos{width:100%;min-width:100%}.bafcrs-card.is-locked .bafcrs-photo,.bafcrs-card.is-locked .bafcrs-photo>img{width:100%;max-width:none}.bafcrs-card.is-locked .bafcrs-lock{width:100%;height:100%;max-width:none}
@media(max-width:900px){.bafcrs{--crs-gap:20px}.bafcrs-head{min-height:0;padding:20px}}
@media(max-width:700px){.bafcrs-card{flex-basis:calc((100% - (var(--crs-per-mo) - 1) * var(--crs-gap)) / var(--crs-per-mo))}.bafcrs-photos{aspect-ratio:1.5/1}.bafcrs-angles{padding:10px 12px}.bafcrs-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.bafcrs-content{padding:22px 20px}}

/* --- enl_style_06.css --- */

.sp-ext-rsm{position:relative;overflow:visible;padding:80px 0;background:var(--sp-bg,#fff)}.sp-ext-rsm .hvm-rsm__inner{width:100%;max-width:none;overflow:visible}.sp-ext-rsm .hvm-rsm__top,.sp-ext-rsm .hvm-rsm__inner>.sp-ext-cfg{width:92%;max-width:var(--sty-mw,var(--sp-mw,1200px));margin-left:auto;margin-right:auto}.sp-ext-rsm .hvm-rsm__top{margin-bottom:30px}.sp-ext-rsm .hvm-head{text-align:left}.sp-ext-rsm .hvm-head[data-align=center]{text-align:center}.sp-ext-rsm .hvm-head[data-align=right]{text-align:right}.sp-ext-rsm .hvm-head__eyebrow{font-size:var(--sty-t-eyebrow,12px);letter-spacing:.22em;text-transform:uppercase;color:var(--sty-c-eyebrow,#999);margin:0 0 14px;font-weight:600}.sp-ext-rsm .hvm-head__title{font-size:var(--sty-t-sec_title,clamp(28px,4vw,48px));font-weight:700;margin:0 0 16px;line-height:1.2;color:var(--sty-c-sec_title,inherit);letter-spacing:-.01em}.sp-ext-rsm .hvm-head__desc{font-size:var(--sty-t-desc,15px);line-height:1.75;color:var(--sty-c-desc,rgba(0,0,0,.6));margin:0;max-width:720px}.sp-ext-rsm .hvm-head[data-align=center] .hvm-head__desc{margin-left:auto;margin-right:auto}
.sp-ext-rsm .hvm-rsm__stage{--rsm-current-width:var(--rsm-stage-width);--rsm-current-offset:var(--rsm-stage-offset);display:block;width:var(--rsm-current-width);max-width:none;position:relative;margin-left:calc(50% - var(--rsm-current-offset))}.sp-ext-rsm .hvm-rsm__viewport{width:100%;overflow:hidden;padding:16px 0;margin:-16px 0;user-select:none;-webkit-user-select:none;touch-action:pan-y}.sp-ext-rsm .hvm-rsm__viewport.can-drag{cursor:grab}.sp-ext-rsm .hvm-rsm__viewport.is-dragging{cursor:grabbing}.sp-ext-rsm .hvm-rsm__track{display:flex;width:max-content;will-change:transform}.sp-ext-rsm .hvm-rsm__group{display:flex;flex:none;gap:var(--rsm-gap);padding-right:var(--rsm-gap)}.sp-ext-rsm .hvm-rsm__card{position:relative;display:block;flex:none;width:calc((var(--rsm-vw,100vw) - (var(--rsm-per) - 1) * var(--rsm-gap)) / var(--rsm-per));max-width:none;aspect-ratio:var(--rsm-ratio);overflow:hidden;border-radius:var(--rsm-radius);background:#eee;color:#fff;text-decoration:none;transform:translateZ(0) scale(1);transform-origin:center;transition:border-radius .38s cubic-bezier(.22,.61,.36,1),transform .38s cubic-bezier(.22,.61,.36,1);isolation:isolate}.sp-ext-rsm .hvm-rsm__card img,.sp-ext-rsm .hvm-rsm__card video{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none;transition:transform .5s cubic-bezier(.22,.61,.36,1)}.sp-ext-rsm .hvm-rsm__card.has-hover:hover{z-index:3;transform:translateZ(0) scale(1.045)}.sp-ext-rsm .hvm-rsm__card.has-round:hover{border-radius:var(--rsm-hover-radius)}.sp-ext-rsm .hvm-rsm__card.has-zoom:hover img,.sp-ext-rsm .hvm-rsm__card.has-zoom:hover video{transform:scale(1.025)}
.sp-ext-rsm .hvm-rsm__video-badge{position:absolute;top:14px;right:14px;z-index:2;display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(18,18,18,.42);backdrop-filter:blur(6px);font-size:12px;line-height:1;color:#fff}.sp-ext-rsm .hvm-rsm__video-badge svg{width:14px;height:14px;fill:currentColor}.sp-ext-rsm .hvm-rsm__card.is-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#d8cec5,#9eaeb2)}.sp-ext-rsm .hvm-rsm__placeholder-label{font-size:14px;letter-spacing:.04em}.sp-ext-rsm .hvm-rsm__empty{padding:56px 20px;text-align:center;color:#888}.sp-ext-rsm .hvm-rsm__viewport.is-dragging a{pointer-events:none}
.sp-ext-rsm .hvm-rsm__more{position:absolute;right:18px;top:50%;z-index:4;display:grid;place-items:center;width:64px;height:64px;border:0;border-radius:0;background:transparent;backdrop-filter:none;color:#fff;text-decoration:none;opacity:0;pointer-events:none;transform:translateY(-50%) translateX(-8px);transition:opacity .25s ease,transform .25s ease}.sp-ext-rsm .hvm-rsm__stage:hover .hvm-rsm__more,.sp-ext-rsm .hvm-rsm__stage:focus-within .hvm-rsm__more,.sp-ext-rsm .hvm-rsm__more:focus-visible{opacity:1;pointer-events:auto;transform:translateY(-50%) translateX(0)}.sp-ext-rsm .hvm-rsm__more span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.sp-ext-rsm .hvm-rsm__more svg{width:38px;height:22px;overflow:visible;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45));transition:transform .25s ease}.sp-ext-rsm .hvm-rsm__more path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sp-ext-rsm .hvm-rsm__more:hover svg{transform:translateX(4px)}
@media(max-width:768px){.sp-ext-rsm{padding:60px 0}.sp-ext-rsm .hvm-rsm__top{margin-bottom:20px}.sp-ext-rsm .hvm-rsm__stage{--rsm-current-width:var(--rsm-stage-width-mo);--rsm-current-offset:var(--rsm-stage-offset-mo)}.sp-ext-rsm .hvm-rsm__more{right:10px;width:44px;height:44px}.sp-ext-rsm .hvm-rsm__more svg{width:27px}.sp-ext-rsm .hvm-rsm__card{width:calc((var(--rsm-vw,100vw) - (var(--rsm-per-mo) - 1) * var(--rsm-gap)) / var(--rsm-per-mo));max-width:none}.sp-ext-rsm .hvm-rsm__video-badge{top:10px;right:10px;padding:6px 8px}.sp-ext-rsm .hvm-rsm__video-badge span{display:none}}
@media(hover:none){.sp-ext-rsm .hvm-rsm__more{opacity:.9;pointer-events:auto;transform:translateY(-50%) translateX(0)}}
@media(prefers-reduced-motion:reduce){.sp-ext-rsm .hvm-rsm__card,.sp-ext-rsm .hvm-rsm__card img,.sp-ext-rsm .hvm-rsm__card video,.sp-ext-rsm .hvm-rsm__more svg{transition:none!important}}

/* --- enl_style_07.css --- */

/* #sp-sections 는 flex+order 로 섹션을 재배치(v2 정렬)하므로, 관련칼럼은 order 최대값으로 항상 맨 아래 고정 */
#sp-sec-blogrel{order:9999}
/* 볼드 제거 — 블록 내 모든 텍스트 일반 굵기 (spbr 범위 한정, 다른 섹션 영향 없음) */
.spbr,.spbr .sp-sec-title,.spbr .sp-sec-lbl,.spbr .spbr-title,.spbr .spbr-cat,.spbr .spbr-more-btn{font-weight:400}
/* 블로그 섹션 전용 텍스트 사이즈 — 위젯 관리바에서 설정한 --sp-blogrel-t-* 우선, 없으면 기존 폴백.
   섹션 제목/영문뱃지는 .spbr 스코프로 한정해 연관시술(.sp-related) 섹션과 분리. */
.spbr .sp-sec-title{font-size:var(--sp-blogrel-t-sectitle,var(--sp-t-hd));line-height:1.25}
.spbr .sp-sec-lbl{font-size:var(--sp-blogrel-t-eyebrow,var(--sp-t-sm))}
.spbr .spbr-list{display:grid;gap:20px;margin-top:8px}
.spbr-card{display:flex;flex-direction:column;background:var(--sp-bg2,#fafafa);border:0;border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s}
.spbr-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(0,0,0,.08)}
.spbr-thumb{position:relative;display:block;background:var(--sp-bg3,#f1efea);overflow:hidden}
.spbr-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.spbr-card:hover .spbr-thumb img{transform:scale(1.05)}
.spbr-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Cormorant SC',serif;letter-spacing:.1em;color:var(--sp-muted,#999);font-size:var(--sp-t-body)}
.spbr-body{display:flex;flex-direction:column;gap:7px;padding:18px 20px;flex:1}
.spbr-meta{display:flex;align-items:center;gap:8px;font-size:var(--sp-t-sm);color:var(--sp-muted,#999)}
.spbr-cat{padding:2px 9px;border:1px solid rgba(0,0,0,.12);border-radius:999px;color:var(--sp-muted,#999);letter-spacing:.03em}
.spbr-title{font-size:var(--sp-blogrel-t-title,var(--sp-t-sub));font-weight:400;color:var(--sp-text,#1a1a1a);line-height:1.5;word-break:keep-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.spbr-desc{font-size:var(--sp-blogrel-t-desc,var(--sp-t-body));font-weight:400;color:var(--sp-sub,#666);line-height:1.7;word-break:keep-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* webzine — 큰 카드 그리드 */
.spbr--webzine .spbr-list{grid-template-columns:repeat(3,1fr)}
.spbr--webzine .spbr-thumb{aspect-ratio:16/10}
/* thumbnail — 정사각 그리드, 평소 이미지만 / 마우스오버 시 제목 오버레이 */
.spbr--thumbnail .spbr-list{grid-template-columns:repeat(4,1fr);gap:16px}
.spbr--thumbnail .spbr-card{position:relative}
.spbr--thumbnail .spbr-thumb{aspect-ratio:1/1}
.spbr--thumbnail .spbr-body{position:absolute;inset:0;justify-content:flex-end;gap:4px;padding:16px;background:linear-gradient(to top,rgba(0,0,0,.8),rgba(0,0,0,.05) 55%,transparent);opacity:0;transition:opacity .28s ease}
.spbr--thumbnail .spbr-card:hover .spbr-body,.spbr--thumbnail .spbr-card:focus-within .spbr-body{opacity:1}
.spbr--thumbnail .spbr-meta,.spbr--thumbnail .spbr-desc{display:none}
.spbr--thumbnail .spbr-title{font-size:var(--sp-t-sub);color:#fff;-webkit-line-clamp:3}
/* 보기 전환 스위처 (일반 사용자, SVG) */
.spbr-hd-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.spbr-switch{display:inline-flex;gap:3px;padding:4px;border:0;border-radius:999px;background:var(--sp-bg2,#fff)}
.spbr-search{position:relative;display:inline-flex}
.spbr-search-in{height:34px;padding:0 14px;border:1px solid var(--sp-line,rgba(0,0,0,.15));border-radius:999px;font-size:13px;background:var(--sp-bg2,#fafafa);color:inherit;width:150px;transition:width .2s,border-color .2s}
.spbr-search-in:focus{outline:none;width:200px;border-color:var(--index_color,var(--main,var(--hv-main,#888)))}
.spbr-card.is-hidden{display:none!important}
.spbr-noresult{display:block;margin-top:16px}
.spbr-sw-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;background:transparent;border-radius:999px;cursor:pointer;color:var(--sp-muted,#9aa);transition:background .18s,color .18s}
.spbr-sw-btn:hover{color:var(--sp-text,#333);background:var(--sp-bg3,rgba(0,0,0,.05))}
.spbr-sw-btn.is-on{background:var(--index_color,var(--main,var(--hv-main,#888)));color:#fff}
.spbr-sw-btn svg{width:18px;height:18px;display:block}
.spbr-view-save{height:34px;padding:0 13px;border:1px solid var(--index_color,var(--main,var(--hv-main,#888)));border-radius:999px;background:#fff;color:var(--index_color,var(--main,var(--hv-main,#888)));font:600 12px/1 inherit;cursor:pointer;white-space:nowrap}
.spbr-view-save:hover,.spbr-view-save:focus-visible{background:var(--index_color,var(--main,var(--hv-main,#888)));color:#fff}
.spbr-view-save:disabled{opacity:.55;cursor:wait}
/* list — 가로 행 */
.spbr--list .spbr-list{grid-template-columns:1fr}
.spbr--list .spbr-card{flex-direction:row;align-items:stretch}
.spbr--list .spbr-thumb{flex:0 0 200px;aspect-ratio:16/10}
.spbr--list .spbr-body{justify-content:center}
/* title — 제목만(배지+제목+날짜) 한 줄 */
.spbr--title .spbr-list{grid-template-columns:1fr;gap:12px}
.spbr--title .spbr-card{flex-direction:row;align-items:center;gap:14px;padding:18px 24px}
.spbr--title .spbr-thumb,.spbr--title .spbr-desc{display:none}
.spbr--title .spbr-body{flex-direction:row;align-items:center;gap:14px;width:100%}
.spbr--title .spbr-meta{display:contents}
.spbr--title .spbr-cat{order:1;flex:0 0 auto}
.spbr--title .spbr-title{order:2;flex:1 1 auto;-webkit-line-clamp:1;font-size:var(--sp-t-sub);margin:0}
.spbr--title .spbr-date{order:3;margin-left:auto;flex:0 0 auto;white-space:nowrap}
.spbr--title .spbr-card:hover{transform:none;box-shadow:0 6px 18px rgba(0,0,0,.06)}
@media(max-width:640px){
.spbr--title .spbr-card{padding:14px 16px;gap:8px}
.spbr--title .spbr-body{flex-wrap:wrap;gap:8px 10px}
.spbr--title .spbr-title{order:0;flex:1 1 100%;font-size:var(--sp-t-sub);-webkit-line-clamp:2;line-height:1.45}
.spbr--title .spbr-cat{order:1}
.spbr--title .spbr-date{order:2;margin-left:auto}
}
.spbr-card--more{display:none}
.spbr-doc-av{width:26px;height:26px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid rgba(0,0,0,.1);background:var(--sp-bg3,#eee);vertical-align:middle}
.spbr--thumbnail .spbr-doc-av{width:22px;height:22px}
.spbr-more{display:flex;justify-content:center;margin-top:28px}
.spbr-more-btn{display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 28px;border-radius:999px;border:1px solid var(--index_color,var(--main,var(--hv-main,#888)));background:transparent;color:var(--index_color,var(--main,var(--hv-main,#888)));font-size:14px;font-family:inherit;cursor:pointer;text-decoration:none;transition:.25s}
.spbr-more-btn:hover{background:var(--index_color,var(--main,var(--hv-main,#888)));color:#fff}
.spbr-more-btn span{opacity:.7;font-size:12px}
.spbr-empty{padding:20px;border:1px dashed var(--sp-line,rgba(0,0,0,.15));border-radius:10px;color:var(--sp-muted,#999);font-size:var(--sp-t-sm);line-height:1.7}
.spbr-admin{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--sp-sub,#555);background:rgba(124,58,237,.06);border:1px solid rgba(124,58,237,.2);border-radius:8px;padding:8px 12px}
.spbr-admin label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.spbr-admin select,.spbr-admin input[type=number]{padding:4px 8px;border:1px solid #d1d5db;border-radius:5px;font-size:12px}
@media(max-width:1024px){.spbr--webzine .spbr-list{grid-template-columns:repeat(2,1fr)}.spbr--thumbnail .spbr-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.spbr--webzine .spbr-list,.spbr--thumbnail .spbr-list{grid-template-columns:repeat(2,1fr)}.spbr--list .spbr-card{flex-direction:column}.spbr--list .spbr-thumb{flex:none;width:100%;aspect-ratio:16/9}}
/* 모바일 — 제목과 도구(검색·보기전환·관리)가 옆으로 붙어 제목이 짓눌리지 않도록 세로로 분리 */
@media(max-width:768px){
  .spbr .sp-related-hd{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px}
  .spbr .spbr-hd-tools{width:100%;flex-wrap:wrap}
  /* 검색 + 보기전환 토글을 한 줄에 — 검색이 남는 폭을 채우고 토글은 그 옆에 (관리바만 아래로 줄바꿈) */
  .spbr .spbr-search{flex:1 1 auto;min-width:0}
  .spbr .spbr-search-in,.spbr .spbr-search-in:focus{width:100%}
}

#sp-sections{display:flex;flex-direction:column}#sp-sections>section{margin-top:-1px}
