/* ============================================================
   SAFE MARKETING — main.css v0.9
   디자인 토큰: 오렌지 #FF4F00 · 라이트 홈 · 블랙 라운드탑 상세
   원칙: 미사용 규칙 없는 수기 CSS (강의 3), CLS 방지, 모바일 우선
   ============================================================ */

:root{
  --or:#ff4f00; --or-2:#ff7a3c; --or-3:#ff9556; --or-soft:#fff1ea;
  --ink:#111; --body:#555; --sub:#999; --line:#e8e8e8;
  --bg:#f7f7f7; --blk:#0a0a0a; --blk-2:#161616; --blk-line:#2a2a2a;
  --r-card:20px; --r-big:26px; --wrap:1140px;
  --font:'Pretendard','Pretendard Variable',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;
}

/* ── 리셋·베이스 ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:#fff;line-height:1.68;font-size:17px;letter-spacing:-.025em;word-break:keep-all}
/* 자간 -2.5% 전역 고정(사용자 지정) */
h1,h2,h3,h4,h5,h6,p,span,a,li,button,input,textarea,select,div,em,strong,b{letter-spacing:-.025em}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
address{font-style:normal}
.sr,.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--or);color:#fff;padding:10px 18px;z-index:200;border-radius:0 0 10px 0}
.skip-link:focus{left:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* ── 타이포 (addi 회사소개 스케일 참고: 헤드 lh~1.3 · 본문 lh~1.65) ── */
h1,h2,h3{line-height:1.3;letter-spacing:-.025em;font-weight:800}
h1{font-size:clamp(2.1rem,4.8vw,3.25rem);line-height:1.26}
h2{font-size:clamp(1.6rem,3.3vw,2.25rem)}
h3{font-size:1.18rem;line-height:1.45}
.eng{font-weight:800;font-size:clamp(2rem,4.4vw,3rem);letter-spacing:-.025em;line-height:1.12}
.kick{color:var(--or);font-weight:700;font-size:1rem;margin-bottom:14px;letter-spacing:-.02em}
.sub{color:var(--body);margin-top:16px;font-size:1.02rem;line-height:1.72}
/* 포인트 강조어 — 주황(형광펜 아님, 텍스트 컬러). addi식 헤드라인 포인트 컬러. */
.pt{color:var(--or)}
.center{text-align:center}
.center .sub{margin-left:auto;margin-right:auto;max-width:640px}

/* ── 버튼(필) ── */
.btns{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
.center .btns,.btns.center{justify-content:center}
.pill{border-radius:999px;padding:15px 30px;font-weight:700;font-size:.95rem;display:inline-block;border:0;cursor:pointer;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease}
.pill:hover{transform:translateY(-2px)}
.pill-or{background:var(--or);color:#fff}
.pill-or:hover{box-shadow:0 8px 20px rgba(255,79,0,.35)}
.pill-wt{background:#fff;color:var(--ink);border:1px solid #ddd}
.pill-wo{background:#fff;color:var(--or)}
.pill-ghost{background:transparent;color:#fff;border:1px solid #555}

/* ── 헤더 ── */
.site-head{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.head-in{display:flex;align-items:center;gap:28px;height:72px}
.brand{flex:0 0 auto}
.site-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.14rem}
.site-logo .logo-mark{width:34px;height:34px;border-radius:9px}
.logo-dot{color:var(--or);font-style:normal}
.gnb{margin-left:auto}
.gnb-list{display:flex;gap:32px;font-weight:600;font-size:.95rem}
.gnb-list a:hover{color:var(--or)}
.gnb-list .sub-menu{display:none;position:absolute;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 0;min-width:210px;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.gnb-list li{position:relative}
.gnb-list li:hover>.sub-menu,.gnb-list li:focus-within>.sub-menu{display:block}
.gnb-list .sub-menu a{display:block;padding:8px 20px;font-weight:500}
.gnb-list .sub-menu a:hover{background:var(--or-soft);color:var(--or)}
.nav-toggle{display:none;background:none;border:0;font-size:1.5rem;cursor:pointer}
.head-cta{padding:11px 22px;font-size:.87rem}

/* ── 브레드크럼 ── */
.crumb-bar{background:var(--bg);border-bottom:1px solid var(--line)}
.crumb{font-size:.8rem;color:var(--sub);padding:11px 0}
.crumb ol{display:flex;flex-wrap:wrap;gap:4px}
.crumb li:not(:first-child)::before{content:"›";margin:0 7px;color:#c9c9c9}
.crumb a:hover{color:var(--or)}
.crumb [aria-current]{color:var(--ink);font-weight:600}
/* Yoast 브레드크럼 span 마크업 호환 */
.crumb .breadcrumb_last{color:var(--ink);font-weight:600}

/* ── 섹션 공통 ── */
.sec{padding:104px 0}
.sec-tight{padding:64px 0}
.sec-gray{background:var(--bg)}
.sec-blk{background:var(--blk);color:#fff}
.sec-blk .sub{color:#aaa}
.sec-orange{background:linear-gradient(105deg,var(--or) 0%,var(--or-2) 55%,var(--or-3) 100%);color:#fff}
.sec-orange h2{color:#fff}
.round-top{border-radius:44px 44px 0 0;margin-top:-44px;position:relative}

/* ── 홈 히어로 ── */
.hero{position:relative;background:var(--blk);color:#fff;overflow:hidden}
.hero-media{position:absolute;inset:0;background:linear-gradient(rgba(10,10,10,.55),rgba(10,10,10,.66)),var(--hero-img,linear-gradient(135deg,#2b2b2b,#3d3d3d));background-size:cover;background-position:center}
.hero .wrap{position:relative;padding-top:150px;padding-bottom:130px}
.hero .kick{color:var(--or-2);letter-spacing:.12em;font-size:.9rem}
.hero h1{color:#fff;font-size:clamp(2.3rem,5.2vw,3.6rem)}
.hero .sub{color:#ccc;max-width:540px}
.hero-trust{margin-top:24px;color:#999;font-size:.88rem;letter-spacing:.02em}
.hero-more{background:#111;color:#fff;display:inline-block;padding:20px 28px 26px;font-weight:700;margin-top:46px}

/* ── 그리드·카드 ── */
.grid{display:grid;gap:18px;margin-top:40px}
.g2{grid-template-columns:1fr 1fr}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.card{border-radius:var(--r-card);padding:28px;background:#fff;border:1px solid var(--line)}
.card h3{margin-bottom:8px}
.card p{font-size:.9rem;color:var(--body)}
.card .more{display:inline-block;margin-top:14px;color:var(--or);font-weight:700;font-size:.88rem}
.sec-blk .card{background:var(--blk-2);border-color:var(--blk-line)}
.sec-blk .card h3{color:#fff}
.sec-blk .card p{color:#999}
.num{color:var(--or);font-weight:800;font-size:.95rem;display:block;margin-bottom:10px}

/* ── 스탯(Power) ── */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.stat{border-radius:var(--r-card);padding:34px 28px;color:#fff;min-height:150px}
.stat .n{font-size:2.6rem;font-weight:800;line-height:1.15}
.stat .l{opacity:.92;font-size:.92rem;margin-top:6px}
.stat-1{background:linear-gradient(135deg,#ff4f00,#ff8a4d)}
.stat-2{background:linear-gradient(135deg,#1a1a1a,#3a3a3a)}
.stat-3{background:linear-gradient(135deg,#ff7a3c,#ffb14e)}

/* ── Service 빅카드(홈) ── */
.svc-tabs{display:flex;gap:26px;margin-top:32px;border-bottom:1px solid var(--line);font-weight:600;color:var(--sub);font-size:.96rem;overflow-x:auto}
.svc-tabs a{padding-bottom:12px;white-space:nowrap}
.svc-tabs a[aria-selected="true"],.svc-tabs a:hover{color:var(--ink);box-shadow:inset 0 -3px 0 var(--or)}
.bigcard{background:var(--bg);border-radius:var(--r-big);padding:52px;margin-top:34px;display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:center}
.bigcard .lab{color:var(--or);font-weight:800;font-size:1.1rem;margin-bottom:12px}
.bigcard h3{font-size:1.45rem;line-height:1.45}
.bigcard p{color:var(--body);margin-top:12px;font-size:.95rem}

/* ── AS-IS / TO-BE ── */
.vs{display:grid;grid-template-columns:1fr 44px 1fr;align-items:stretch;gap:10px;margin-top:44px}
.vs .h{text-align:center;font-weight:800;font-size:1.4rem;margin-bottom:14px}
.vs .h-tobe{color:var(--or)}
.vs .bx{border-radius:18px;padding:34px 28px;text-align:center;font-weight:600;line-height:1.65;display:flex;align-items:center;justify-content:center;min-height:130px}
.vs .bx-asis{background:#111;color:#eee;border:1px solid var(--blk-line)}
.sec-blk .vs .bx-asis{background:#141414}
.vs .bx-tobe{background:var(--or);color:#fff}
.vs .ar{display:flex;align-items:center;justify-content:center;color:var(--or);font-size:1.5rem;font-weight:800}

/* ── 일하는 방식(다크) ── */
.how{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:center;padding:44px 0}
.how+.how{border-top:1px solid var(--blk-line)}
.how h3{font-size:1.4rem;line-height:1.4}
.how .o{color:var(--or);font-weight:800;font-size:1.05rem;display:block;margin-bottom:8px}
.how ul{margin-top:16px;font-size:.92rem;color:#aaa}
.how li{padding:4px 0 4px 16px;position:relative}
.how li::before{content:"";position:absolute;left:0;top:.85em;width:6px;height:6px;border-radius:50%;background:var(--or)}
.how-fig{border-radius:18px;overflow:hidden;background:#101010;border:1px solid var(--blk-line);min-height:220px;display:flex;align-items:center;justify-content:center;color:#666;font-size:.85rem}

/* ── FAQ(다크 넘버형) ── */
.faq{margin-top:40px;border-top:1px solid var(--blk-line)}
.faq details{border-bottom:1px solid var(--blk-line);padding:20px 6px}
.faq summary{font-weight:700;cursor:pointer;font-size:1rem;color:#fff;list-style:none;display:flex;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .q{color:var(--or);font-weight:800;flex:0 0 auto}
.faq summary::after{content:"⌄";margin-left:auto;color:#666;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(180deg)}
.faq .a{padding:12px 0 4px 30px;font-size:.92rem;color:#999}
/* 라이트 변형 */
.faq-light{border-top-color:var(--line)}
.faq-light details{border-bottom-color:var(--line)}
.faq-light summary{color:var(--ink)}
.faq-light .a{color:var(--body)}

/* ── 리뷰 ── */
.rv{background:#fff;border-radius:18px;padding:28px;border:1px solid var(--line)}
.rv p{font-size:.93rem;color:#444}
.rv .who{margin-top:16px;font-weight:700;font-size:.85rem}

/* ── 로고월 ── */
.logo-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.logo-wall a,.logo-wall .cell{border:1px solid var(--line);border-radius:14px;background:#fff;min-height:84px;display:flex;align-items:center;justify-content:center;padding:16px;filter:grayscale(1);opacity:.75;transition:.2s}
.logo-wall a:hover{filter:none;opacity:1;border-color:var(--or)}

/* ── 프로모션 허브(Works) ── */
.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 22px;margin-top:44px}
.promo-card .thumb{border-radius:18px;overflow:hidden;aspect-ratio:16/10;background:#e9e9e9;position:relative}
.promo-card .thumb img{width:100%;height:100%;object-fit:cover}
.promo-card h3{margin-top:14px;font-size:1.12rem}
.promo-card .tags{color:var(--sub);font-size:.84rem;margin-top:4px}
.promo-card .badge{color:var(--or);font-weight:700}
.filter-tabs{display:flex;gap:24px;margin-top:30px;border-bottom:1px solid var(--line);font-weight:600;color:var(--sub);overflow-x:auto}
.filter-tabs a{padding-bottom:12px;white-space:nowrap}
.filter-tabs .on{color:var(--ink);box-shadow:inset 0 -3px 0 var(--or)}

/* ── 혜택 블록 ── */
.benefit{border-radius:22px;background:#fff;color:var(--ink);padding:40px;margin-top:36px;text-align:center;box-shadow:0 14px 40px rgba(0,0,0,.08)}
.benefit h3{color:var(--or);font-size:1.25rem}
.benefit .cond{font-size:.83rem;color:var(--sub);margin-top:14px;border-top:1px dashed #ddd;padding-top:12px}

/* ── NAP 표 ── */
.nap{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin-top:36px}
.nap table{width:100%;font-size:.93rem;border-collapse:collapse}
.nap td{padding:11px 6px;border-bottom:1px solid var(--line);vertical-align:top}
.nap td:first-child{color:var(--sub);width:92px}
.map-embed{border-radius:16px;overflow:hidden;background:var(--bg);min-height:240px}

/* ── 블로그 ── */
.post-list{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:40px}
.post-card .thumb{border-radius:16px;overflow:hidden;aspect-ratio:1200/630;background:#ececec}
.post-card .thumb img{width:100%;height:100%;object-fit:cover}
.post-card h3{margin-top:12px;font-size:1.04rem}
.post-card time{color:var(--sub);font-size:.8rem}
.entry{max-width:760px;margin:0 auto}
.entry-content{margin-top:34px}
.entry-content h2{margin:2em 0 .7em;font-size:1.5rem}
.entry-content h3{margin:1.7em 0 .6em;font-size:1.2rem}
.entry-content p{margin:1em 0}
.entry-content a{color:var(--or);text-decoration:underline;text-underline-offset:3px}
.entry-content ul{list-style:disc;padding-left:1.3em;margin:1em 0}
.entry-content ol{list-style:decimal;padding-left:1.3em;margin:1em 0}
.entry-content img{border-radius:14px;margin:1.4em 0}
.entry-content blockquote{border-left:4px solid var(--or);background:var(--or-soft);padding:14px 20px;border-radius:0 12px 12px 0;margin:1.4em 0}
.toc{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:20px 24px;margin:26px 0;font-size:.92rem}
.toc b{display:block;margin-bottom:8px}
.author-box{display:flex;gap:16px;align-items:center;background:var(--bg);border-radius:16px;padding:22px;margin-top:44px}
.author-box .avatar{border-radius:50%;flex:0 0 56px}
.author-box .nm{font-weight:800}
.author-box .bio{font-size:.87rem;color:var(--body)}

/* ── 푸터 ── */
.site-foot{background:var(--blk);color:#888;padding:56px 0 40px;font-size:.87rem;line-height:2}
.foot-brand{font-weight:800;font-size:1.3rem;color:#fff;margin-bottom:14px}
.foot-nap a{color:#ddd}
.foot-list{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px}
.foot-list a{color:#aaa}
.foot-list a:hover{color:#fff}
.foot-copy{margin-top:20px;color:#555}

/* ── 플로팅 CTA ── */
.float-cta{position:fixed;right:22px;bottom:22px;background:var(--hl);color:#14181f;border-radius:999px;padding:14px 24px;font-weight:800;font-size:.9rem;box-shadow:0 8px 26px rgba(0,0,0,.28);z-index:80}
.float-cta:hover{transform:translateY(-2px)}

/* ── 폼 ── */
.form-grid{display:grid;gap:16px;max-width:560px;margin:36px auto 0}
.form-grid label{font-weight:700;font-size:.9rem}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1.5px solid #ddd;border-radius:12px;padding:13px 16px;font-family:inherit;font-size:.95rem;margin-top:6px}
.form-grid input:focus,.form-grid textarea:focus{outline:2px solid var(--or);border-color:var(--or)}

/* ── 블로그 허브 (own-clinic 형태) ── */
.blog-layout{display:grid;grid-template-columns:1fr 300px;gap:36px;margin-top:36px}
.post-list.cols-2{grid-template-columns:1fr 1fr;margin-top:0}
.post-card h2{font-size:1.06rem;margin-top:12px;line-height:1.45}
.card-meta{color:var(--sub);font-size:.8rem;margin-top:6px}
.card-meta a{color:var(--or);font-weight:600}
.side-box{border:1px solid var(--line);border-radius:16px;padding:22px;background:#fff}
.side-box+.side-box{margin-top:18px}
.side-title{font-size:.95rem;font-weight:800;margin-bottom:12px}
.popular li{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-top:1px solid var(--bg);font-size:.88rem}
.popular li:first-child{border-top:0}
.popular .rank{color:var(--or);font-weight:800;flex:0 0 14px}
.popular a{flex:1;line-height:1.45}
.popular a:hover{color:var(--or)}
.popular .views{color:var(--sub);font-size:.76rem;flex:0 0 auto}
.side-cta{background:var(--or-soft);border-color:#ffd2b8}
.side-cta p{font-size:.85rem;color:var(--body);margin-bottom:14px}
.side-cta .pill{padding:11px 20px;font-size:.85rem}
@media (max-width:960px){.blog-layout{grid-template-columns:1fr}.post-list.cols-2{grid-template-columns:1fr 1fr}}
@media (max-width:680px){.post-list.cols-2{grid-template-columns:1fr}}

/* ── 상세 보조 ── */
.price-badge{display:inline-block;background:var(--or-soft);color:var(--or);font-weight:800;border-radius:999px;padding:9px 20px;margin-top:18px}
.landing-hero{padding-bottom:120px}
/* 상품소개 히어로 여백 확대(사용자 요청): 타이틀·서브·금액·버튼 간격 넓게 */
.landing-hero{ padding-top:clamp(64px,8vw,120px); padding-bottom:clamp(96px,11vw,150px); }
.landing-hero h1{ line-height:1.32; }
.landing-hero .sub{ margin-top:clamp(24px,3vw,40px); }
.landing-hero .price-badge{ margin-top:clamp(30px,3.6vw,48px); padding:11px 24px; }
.landing-hero .btns{ margin-top:clamp(34px,4vw,56px); }
.landing-hero+.sec-blk.round-top{margin-top:-44px}
.demo-flag{background:#ffe1e1;color:#c22;font-size:.7rem;font-weight:700;border-radius:6px;padding:2px 8px;vertical-align:middle;margin-left:6px}
.post-meta-line{color:var(--sub);font-size:.85rem;margin-top:10px}
.post-meta-line a{color:var(--or);font-weight:600}
.post-hero{border-radius:16px;overflow:hidden;margin-top:26px}
.toc ol{counter-reset:toc}
.toc li{padding:3px 0}
.toc li.lv3{padding-left:18px;font-size:.88em}
.toc a:hover{color:var(--or)}
.related .post-list{margin-top:20px}

/* ── 404 ── */
.err-hero{padding:120px 0;text-align:center}
.err-hero .code{font-size:5rem;font-weight:800;color:var(--or);line-height:1}

/* ── 반응형 ── */
@media (max-width:960px){
  .g4{grid-template-columns:1fr 1fr}
  .bigcard{grid-template-columns:1fr;padding:36px}
  .how{grid-template-columns:1fr;gap:22px}
  .post-list{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  .sec{padding:64px 0}
  .g2,.g3,.g4,.stats,.promo-grid,.post-list,.nap{grid-template-columns:1fr}
  .vs{grid-template-columns:1fr}
  .vs .ar{transform:rotate(90deg);min-height:36px}
  .gnb-list{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:10px 24px 18px}
  .gnb-list.open{display:flex}
  .gnb-list li{padding:9px 0}
  .gnb-list .sub-menu{display:block;position:static;border:0;box-shadow:none;padding:4px 0 0 14px}
  .nav-toggle{display:block;margin-left:auto}
  .gnb{margin-left:auto}
  .head-cta{display:none}
  .logo-wall{grid-template-columns:1fr 1fr}
  .hero .wrap{padding-top:110px;padding-bottom:90px}
}

/* ── 인사이트 글 본문 심화 요소 (히트콘 패턴 대응) ── */
/* 핵심 요약 박스 (글 상단 3줄 요약) */
.entry-content .keybox{background:var(--or-soft);border:1px solid #ffd9c7;border-radius:14px;padding:20px 24px;margin:26px 0}
.entry-content .keybox .kb-t{font-weight:800;color:var(--or);font-size:.95rem;letter-spacing:-.01em;margin-bottom:10px;display:flex;align-items:center;gap:8px}
.entry-content .keybox ul{margin:0;padding-left:1.15em}
.entry-content .keybox li{margin:.35em 0;color:var(--ink)}
/* 체크리스트·포인트 콜아웃 */
.entry-content .callout{background:#fff;border:1px solid var(--line);border-left:4px solid var(--or);border-radius:0 12px 12px 0;padding:18px 22px;margin:1.6em 0}
.entry-content .callout .co-t{font-weight:700;margin-bottom:8px}
.entry-content .callout ul{margin:.4em 0 0;padding-left:1.2em}
.entry-content .callout li{margin:.3em 0}
/* 본문 비교표 */
.entry-content .tbl-scroll{overflow-x:auto;margin:1.6em 0;-webkit-overflow-scrolling:touch}
.entry-content table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:440px}
.entry-content table th,.entry-content table td{border:1px solid var(--line);padding:11px 14px;text-align:left;vertical-align:top}
.entry-content table th{background:var(--blk);color:#fff;font-weight:700;white-space:nowrap}
.entry-content table tr:nth-child(even) td{background:var(--bg)}
.entry-content table td strong{color:var(--or)}
/* 본문 인용 헤드라인(마무리형) */
.entry-content .wrapup{background:var(--blk);color:#fff;border-radius:16px;padding:28px 30px;margin:2em 0}
.entry-content .wrapup h2{color:#fff;margin:.1em 0 .5em}
.entry-content .wrapup p{color:#cfcfcf;margin:.5em 0}
/* 본문 FAQ (라이트) */
.entry-content .faq-wrap{margin:2.4em 0 0;border-top:2px solid var(--ink);padding-top:8px}
.entry-content .faq-wrap .faq-title{font-size:1.4rem;margin:.8em 0 .2em}
.entry-content .faq-item{border-bottom:1px solid var(--line);padding:18px 4px}
.entry-content .faq-item .faq-q{font-weight:700;cursor:pointer;font-size:1.02rem;color:var(--ink);list-style:none;display:flex;gap:10px;align-items:flex-start}
.entry-content .faq-item .faq-q::-webkit-details-marker{display:none}
.entry-content .faq-item .faq-q::before{content:"Q";color:var(--or);font-weight:800;flex:0 0 auto}
.entry-content .faq-item .faq-q::after{content:"⌄";margin-left:auto;color:#aaa;transition:transform .2s}
.entry-content .faq-item[open] .faq-q::after{transform:rotate(180deg)}
.entry-content .faq-item .faq-a{padding:12px 0 4px 24px;color:var(--body);font-size:.96rem}
.entry-content .faq-item .faq-a a{color:var(--or)}
/* 섹션 이미지 자리(추후 일괄 교체) — 은은한 스켈레톤, 이미지 없을 때만 */
.entry-content figure.sec-img{margin:1.4em 0}
.entry-content figure.sec-img img{width:100%;border-radius:14px}

/* ── 상품 개요·단가 강화 ── */
.card .tag-do{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.03em;color:var(--or);background:var(--or-soft);padding:3px 10px;border-radius:20px;margin-bottom:12px}
.sec-blk .card .tag-do{background:rgba(255,79,0,.16);color:var(--or-2)}
.effect-line{margin-top:10px;color:var(--or-2);font-weight:700;font-size:.92rem}
.svc-foot{display:flex;justify-content:space-between;align-items:center;margin-top:16px;flex-wrap:wrap;gap:8px}
.svc-price{font-weight:800;color:#fff;font-size:1.02rem}
.sec-gray .svc-price,.sec .svc-price{color:var(--ink)}
/* 패키지 비교 매트릭스 (다크 섹션) */
.pkg-wrap{overflow-x:auto;margin-top:38px;-webkit-overflow-scrolling:touch}
.pkg-table{width:100%;border-collapse:collapse;min-width:640px;color:#ddd;font-size:.95rem}
.pkg-table th,.pkg-table td{padding:14px 14px;text-align:center;border-bottom:1px solid var(--blk-line)}
.pkg-table thead th{color:#fff;font-size:1.05rem;border-bottom:2px solid #3a3a3a;padding-bottom:8px;vertical-align:bottom}
.pkg-table thead th small{display:block;color:var(--or-2);font-size:.8rem;font-weight:700;margin-top:4px}
.pkg-table td:first-child,.pkg-table th:first-child{text-align:left;color:#fff;font-weight:600}
.pkg-table .col-hot{background:rgba(255,79,0,.10)}
.pkg-table .yes{color:var(--or-2);font-weight:800}
.pkg-table .opt{color:#ffb38a;font-weight:700;font-size:.82rem}
.pkg-table .no{color:#555}
.pkg-table tr.fee td{font-size:1.2rem;font-weight:800;color:#fff;border-bottom:none;padding-top:18px}
.pkg-table tr.eff td{color:var(--or-2);font-size:.82rem;font-weight:700;padding-top:2px;padding-bottom:18px}
.pkg-note{color:var(--sub);font-size:.85rem;margin-top:14px;text-align:center}
.hot-tag{display:inline-block;background:var(--or);color:#fff;font-size:.66rem;font-weight:800;padding:2px 8px;border-radius:20px;margin-left:6px;vertical-align:middle}
.save-hl{color:var(--or-2);font-weight:800}
.save-strip{background:rgba(255,79,0,.12);border:1px solid rgba(255,79,0,.35);border-radius:12px;padding:10px 16px;margin-top:14px;color:#fff;font-weight:700;font-size:.95rem;text-align:center}

/* 다크 섹션에서 가격 흰색 강제 (specificity fix) */
.sec-blk .svc-price{color:#fff}

/* ── 오픈스키마 스타일 가격 카드 ── */
.price-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;align-items:stretch}
.pcard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:36px 30px;text-align:center;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.22,.61,.36,1),box-shadow .3s}
.pcard:hover{transform:translateY(-8px);box-shadow:0 24px 55px rgba(0,0,0,.12)}
.pcard.feat{border:2px solid var(--or);box-shadow:0 22px 50px rgba(255,79,0,.14);position:relative}
.pc-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--or);color:#fff;font-size:.75rem;font-weight:800;padding:6px 18px;border-radius:22px;letter-spacing:.02em;white-space:nowrap}
.pc-name{font-size:1.45rem;font-weight:800;color:var(--ink)}
.pc-tag{color:var(--or);margin-top:8px;font-size:.95rem;font-weight:700}
.pc-price{font-size:2.5rem;font-weight:800;color:var(--ink);margin:16px 0 2px;letter-spacing:-.02em;line-height:1.1}
.pc-price .won{font-size:1.3rem;font-weight:700;vertical-align:top;margin-right:2px}
.pc-price .per{font-size:1rem;color:var(--sub);font-weight:600}
.pc-alpha{color:var(--sub);font-size:.85rem;margin-top:2px}
.pc-btn{display:block;width:100%;background:var(--or);color:#fff;font-weight:800;padding:15px;border-radius:12px;margin:22px 0;transition:background .2s,transform .2s}
.pc-btn:hover{background:#e63f00;transform:translateY(-1px)}
.pcard.feat .pc-btn{box-shadow:0 10px 24px rgba(255,79,0,.3)}
.pc-list{list-style:none;padding:0;margin:0 0 6px;text-align:left;flex:1}
.pc-list li{padding:9px 0 9px 28px;position:relative;color:var(--body);font-size:.95rem;border-top:1px solid var(--line)}
.pc-list li:first-child{border-top:none}
.pc-list li::before{content:"✓";position:absolute;left:2px;top:9px;color:var(--or);font-weight:800}
.pc-note{margin-top:16px;color:var(--sub);font-size:.82rem;border-top:1px dashed var(--line);padding-top:14px}
.pc-note strong{color:var(--or)}
/* 중요 안내 박스 (다크) */
.notice-box{background:var(--blk-2);border:1px solid var(--blk-line);border-radius:18px;padding:28px 32px;max-width:780px;margin:36px auto 0}
.notice-box h3{color:#fff;font-size:1.15rem;margin:0 0 4px}
.ni-label{color:var(--or-2);font-weight:800;font-size:.9rem;margin-top:16px}
.notice-box ul{margin:8px 0 0;padding-left:1.25em}
.notice-box li{color:#c4c4c4;margin:6px 0}
.notice-box .ni-sub{color:var(--sub);font-size:.85rem;margin-top:14px}
/* ── 스크롤 모션(비-AI) ── */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,.61,.36,1)}
.reveal.in{opacity:1;transform:none}
.site-head{transition:box-shadow .25s ease,background .25s ease}
.site-head.scrolled{box-shadow:0 6px 24px rgba(0,0,0,.08);background:rgba(255,255,255,.98)}
.card{transition:transform .25s cubic-bezier(.22,.61,.36,1),box-shadow .25s}
.sec .card:hover{transform:translateY(-5px)}
.sec-blk .card:hover{box-shadow:0 16px 38px rgba(0,0,0,.35)}
.sec .card:not(.sec-blk .card):hover{box-shadow:0 16px 34px rgba(0,0,0,.10)}
@media (max-width:820px){.price-cards{grid-template-columns:1fr;gap:18px}}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;transition:none}.pcard:hover,.card:hover{transform:none}}

/* ── 무료 도구 허브(page-id 34411): 도구 2개가 3열 그리드의 우측 빈칸 때문에 허전해 보이던 문제.
   2열 중앙정렬 + 큰 카드 + 좌측정렬 본문 + 카드 전체 클릭(JS)으로 한눈에 들어오게. ── */
.page-id-34411 .price-cards{ grid-template-columns:repeat(2,minmax(0,1fr)); max-width:840px; margin-left:auto; margin-right:auto; gap:22px; }
.page-id-34411 .price-cards .pcard{ text-align:left; padding:36px 34px; }
.page-id-34411 .price-cards .pcard h3{ font-size:1.35rem; margin-bottom:12px; }
.page-id-34411 .price-cards .pcard > p:first-of-type{ color:var(--body); font-size:.97rem; line-height:1.7; flex:1; margin:0; }
.page-id-34411 .price-cards .pcard .pc-btn{ margin:24px 0 0; }
@media (max-width:820px){ .page-id-34411 .price-cards{ grid-template-columns:1fr; max-width:440px; } }

/* 카드 박스 전체 링크(JS가 .is-linked 부여) — 커서·이동 힌트 */
.is-linked{ cursor:pointer; }
a.card{ color:inherit; text-decoration:none; display:block; }
a.card .more{ text-decoration:none; }

/* ── 데이터 시각화 ── */
.chart-fig{margin-top:40px}
.linechart{max-width:780px;margin:0 auto}
.linechart svg{width:100%;height:auto;display:block;overflow:visible}
.lc-grid{stroke:#e6e6e6;stroke-width:1}
.lc-line{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1600;stroke-dashoffset:1600}
.chart-fig.in .lc-line{stroke-dashoffset:0;transition:stroke-dashoffset 1.7s cubic-bezier(.4,0,.2,1)}
.chart-fig.in .lc-ad{transition-delay:.15s}
.lc-area{opacity:0}
.chart-fig.in .lc-area{opacity:1;transition:opacity .9s .6s}
.lc-marker{stroke:#cbcbcb;stroke-width:1;stroke-dasharray:4 4}
.lc-mtext{fill:var(--sub);font-size:12px;font-weight:600}
.lc-endlbl{font-size:14px;font-weight:800}
.lc-xlbl{fill:var(--sub);font-size:12px}
.lc-dot{opacity:0}
.chart-fig.in .lc-dot{opacity:1;transition:opacity .3s 1.5s}
.legend{display:flex;gap:22px;justify-content:center;margin-top:18px;font-size:.92rem;color:var(--body);flex-wrap:wrap}
.legend b{display:inline-block;width:16px;height:4px;border-radius:2px;vertical-align:middle;margin-right:7px}
.demand-hero{text-align:center;margin:34px 0 6px}
.dh-num{font-size:clamp(2.8rem,7vw,4.4rem);font-weight:800;color:var(--or);line-height:1;letter-spacing:-.02em}
.dh-cap{color:#bbb;margin-top:10px;font-size:.98rem}
.databar{display:flex;flex-direction:column;gap:15px;max-width:760px;margin:34px auto 0}
.databar .row{display:grid;grid-template-columns:150px 1fr 74px;align-items:center;gap:14px}
.databar .lbl{font-weight:700;color:#fff;font-size:.93rem;text-align:right}
.databar .track{background:var(--blk-line);border-radius:8px;height:28px;overflow:hidden}
.databar .fill{height:100%;background:linear-gradient(90deg,var(--or),var(--or-3));border-radius:8px;width:0;transition:width 1.1s cubic-bezier(.22,.61,.36,1)}
.chart-fig.in .databar .fill{width:var(--w)}
.databar .val{font-weight:800;color:var(--or-2);font-size:.95rem;text-align:right}
@media (max-width:640px){.databar .row{grid-template-columns:104px 1fr 58px;gap:10px}.databar .lbl{font-size:.8rem}}
.databar .track,.databar .fill{display:block}

/* ── 정교화 상담문의 폼 ── */
.form-grid.form-lg{max-width:680px}
.form-err{background:#ffe9e9;color:#c22;font-weight:700;border-radius:12px;padding:12px 16px;margin-top:18px}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid .req{color:var(--or);font-weight:800}
.form-grid .opt{color:var(--sub);font-weight:600;font-size:.78rem;margin-left:4px}
.fg-help{display:block;color:var(--sub);font-weight:400;font-size:.8rem;margin-top:6px}
.fg-check{border:1.5px solid #ddd;border-radius:12px;padding:14px 16px;margin:0;text-align:left}
.fg-check legend{font-weight:700;font-size:.9rem;padding:0 6px}
.chk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.chk{display:flex;align-items:center;gap:8px;font-weight:500;font-size:.9rem;cursor:pointer;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:9px 12px;transition:border-color .15s,background .15s}
.chk input{width:auto;margin:0}
.chk:has(input:checked){border-color:var(--or);background:var(--or-soft)}
.fg-consent{display:flex;align-items:flex-start;gap:10px;font-weight:500;font-size:.88rem;background:var(--bg);border-radius:12px;padding:12px 16px;text-align:left}
.fg-consent input{width:auto;margin:2px 0 0}
.fg-note{color:var(--sub);font-size:.8rem;text-align:center;margin-top:2px}
.form-grid.form-lg button{margin-top:6px;justify-self:center;padding-left:40px;padding-right:40px}
.form-grid.form-lg label{text-align:left}
@media (max-width:620px){.fg-row{grid-template-columns:1fr}.chk-grid{grid-template-columns:1fr 1fr}}

/* ── 무료 도구(SEO 자가진단 · 키워드 검색량) ── */
.tool-hero{padding-bottom:44px}
.tool-intro{margin-bottom:0}
.tool-intro .sub{max-width:640px;margin-left:auto;margin-right:auto}
.tool-wrap{max-width:760px;margin:30px auto 0}
.tool-note{margin-top:12px;background:var(--or-soft);border:1px solid #ffd9c7;border-radius:12px;padding:12px 16px;color:#7a3a1c;font-size:.86rem;line-height:1.6}
.tool-note a{color:var(--or);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.tool-form{display:flex;gap:10px;flex-wrap:wrap}
.tool-form input{flex:1;min-width:220px;padding:16px 18px;border:1.5px solid var(--line);border-radius:14px;font-size:1rem;font-family:var(--font);transition:border-color .2s}
.tool-form input:focus{outline:none;border-color:var(--or)}
.tool-form button{white-space:nowrap}
.tool-help{color:var(--sub);font-size:.82rem;margin-top:10px}
.tool-status{min-height:0;margin-top:18px;color:var(--or);font-weight:600}
.tool-status:empty{margin-top:0}
.tool-result{margin-top:22px}
.tool-result:empty{margin-top:0}

/* SEO 결과 */
.seo-score{display:flex;align-items:center;gap:22px;background:var(--blk);color:#fff;border-radius:var(--r-card);padding:26px 28px}
.ss-ring{flex:0 0 auto;width:116px;height:116px;position:relative}
.ss-donut{width:116px;height:116px;transform:rotate(-90deg);display:block}
.ss-track{fill:none;stroke:#2f2f2f;stroke-width:11}
.ss-fill{fill:none;stroke:var(--or);stroke-width:11;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.22,.61,.36,1)}
.ss-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.ss-num{font-size:2.05rem;font-weight:800;color:#fff;line-height:1}
.ss-unit{font-size:.72rem;color:#bbb;margin-top:3px;font-style:normal}
.result-cta{margin-top:18px;background:var(--blk);color:#fff;border-radius:var(--r-card);padding:22px 24px;text-align:center}
.result-cta p{color:#eee;font-size:.95rem;line-height:1.65;margin-bottom:14px}
.result-cta strong{color:#fff}
.ss-grade{display:inline-block;background:var(--or);color:#fff;font-weight:700;font-size:.8rem;padding:3px 12px;border-radius:20px;margin-bottom:8px}
.ss-host{color:#bbb;font-size:.85rem;margin-bottom:6px;word-break:break-all}
.ss-sum{color:#eee;font-size:.95rem;line-height:1.6}
.seo-checks{margin-top:14px;display:grid;gap:8px}
.seo-checks li{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.seo-checks li.no{background:#fff8f4;border-color:#ffd9c7}
.ck-ico{flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem;color:#fff}
.seo-checks li.ok .ck-ico{background:#1eae62}
.seo-checks li.no .ck-ico{background:var(--or)}
.seo-checks li strong{display:block;font-size:.95rem;margin-bottom:2px}
.seo-checks li span{display:block;color:var(--body);font-size:.86rem;line-height:1.55}

/* 키워드 결과 */
.kw-q{font-weight:700;margin-bottom:12px}
.kw-table{border:1px solid var(--line);border-radius:16px;overflow:hidden}
.kw-head,.kw-row{display:grid;grid-template-columns:1fr 74px 74px 84px 62px;align-items:center;gap:6px}
.kw-head{background:var(--blk);color:#fff;padding:12px 16px;font-size:.78rem;font-weight:600}
.kw-head span:not(:first-child),.kw-row span:not(.kw-name){text-align:right}
.kw-row{padding:12px 16px;border-top:1px solid var(--line);font-size:.9rem}
.kw-row:nth-child(even){background:#fafafa}
.kw-name{position:relative;display:flex;flex-direction:column;gap:5px;text-align:left}
.kw-name b{font-weight:700}
.kw-bar{display:block;height:5px;border-radius:4px;background:linear-gradient(90deg,var(--or),var(--or-3));transition:width .5s ease}
.kw-total{font-weight:800;color:var(--or)}
.kw-comp{font-size:.78rem;font-weight:600}
.kw-comp.hi{color:#d13b00}.kw-comp.mid{color:#c98a00}.kw-comp.lo{color:#1eae62}
@media (max-width:560px){
	.kw-head,.kw-row{grid-template-columns:1fr 56px 66px 48px}
	.kw-head span:nth-child(2),.kw-row span:nth-child(2){display:none}
	.seo-score{flex-direction:column;text-align:center;gap:14px}
}

/* ── 버튼 색 수정: .entry-content a(오렌지)가 .pc-btn 텍스트를 덮어써 오렌지-온-오렌지로 보이던 문제 ── */
.entry-content .pc-btn{color:#fff;text-decoration:none}
.entry-content .pc-btn:hover{color:#fff}
.entry-content .pc-btn:visited{color:#fff}

/* ── 한글 가독성 — 구·문장 단위 자연 줄바꿈 + 원자 토큰(전화·시간) 보호 ── */
h1,h2,h3,h4,.kick,.sub,.lead,.eng,blockquote,.wrapup p{text-wrap:balance}
p,li,dd,figcaption,td,.entry-content p{text-wrap:pretty}
body{overflow-wrap:break-word}
.nowrap{white-space:nowrap}
a[href^="tel:"]{white-space:nowrap}
.sub-meta{margin-top:8px;font-size:.9rem;color:var(--sub)}

/* ============================================================
   LIQUID GLASS LAYER v2 — iOS 26/27 리퀴드 글래스 & 블러 (v0.9.19)
   목표: (1) 진짜 투과감(반투명·고블러) (2) 가장자리 굴절/렌즈감(SVG 리퀴드 필터)
        (3) 연한 회색·부드러운 경계(뚜렷한 흰테 제거) (4) 다층 스펙큘러로 깊이감
        — 돔형 3D·과광택 제거. 구조·H태그·크롤텍스트 불변 → SEO 영향 0.
   ============================================================ */
:root{
  --glass-blur:20px; --glass-sat:180%;
  /* 라이트 컨텍스트 — 연한 쿨그레이 유리(투명도↑) */
  --g-bg:rgba(244,247,251,.42);
  --g-brd:rgba(150,162,186,.20);        /* 연한 회색 헤어라인(흰 테 제거) */
  --g-hi:rgba(255,255,255,.50);          /* 상단 얇은 반사(약하게) */
  --g-lo:rgba(28,34,50,.045);
  --g-sheen:rgba(255,255,255,.30);
  /* 가장자리 색분산(리퀴드 글래스 시그니처) — 아주 옅게 */
  --g-disp1:rgba(120,170,255,.10);
  --g-disp2:rgba(255,150,120,.10);
  --g-shadow:0 12px 34px rgba(30,42,72,.09), 0 2px 8px rgba(30,42,72,.05);
  --r-glass:24px;
}

/* 앰비언트 컬러 메시 — 글래스가 투과·샘플할 은은한 배경(고정 레이어, 스크롤 리페인트 없음) */
body{ background:#fafbfd; }
body::before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(48vw 42vw at 6% -10%, rgba(255,79,0,.075), transparent 60%),
    radial-gradient(42vw 40vw at 98% 2%, rgba(255,138,77,.075), transparent 60%),
    radial-gradient(52vw 48vw at 84% 102%, rgba(96,132,255,.055), transparent 62%);
}

/* ── 유리 표면 공통 레시피 ──
   투과(반투명) + 백드롭 블러 + (지원 시)SVG 굴절 + 연회색 경계 + 다층 스펙큘러 */
.glass,
.card,.bigcard,.notice-box,.callout,.keybox,.tool-note,.fg-check,
.price-cards .pcard,.seo-checks li,.kw-table{
  position:relative;
  background:var(--g-bg);
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));
  backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));
  border:1px solid var(--g-brd);
  border-radius:var(--r-glass);
  box-shadow:
    var(--g-shadow),
    inset 0 1px 1px var(--g-hi),                 /* 상단 얇은 반사(돔 아님) */
    inset 1px 1px 0 var(--g-disp1),              /* 좌상 냉색 분산 */
    inset -1px -1px 0 var(--g-disp2),            /* 우하 온색 분산 */
    inset 0 -1px 1px var(--g-lo);
}
/* 스펙큘러 — 부드러운 코너 글로우(상단 절반 도포 금지 → 돔형 방지) */
.glass::before,
.card::before,.bigcard::before,.notice-box::before,.callout::before,
.keybox::before,.tool-note::before,.price-cards .pcard::before,.kw-table::before{
  content:""; position:absolute; inset:0; border-radius:inherit;
  pointer-events:none; z-index:0;
  background:
    radial-gradient(120% 78% at 14% -8%, rgba(255,255,255,.42), transparent 46%),
    radial-gradient(90% 60% at 108% 118%, rgba(255,255,255,.10), transparent 55%);
  opacity:.55;
}
/* 카드 자식 콘텐츠는 스펙큘러 위로 */
.card > *,.bigcard > *,.notice-box > *,.callout > *,.keybox > *,
.tool-note > *,.price-cards .pcard > *,.kw-table > *,.glass > *{ position:relative; z-index:1; }

/* 다크 컨텍스트(블랙 섹션·히어로·다크 매트릭스) 토큰 재정의 */
.sec-blk, .hero, .seo-score, .result-cta, .pkg-table{
  --g-bg:rgba(255,255,255,.07);
  --g-brd:rgba(255,255,255,.14);
  --g-hi:rgba(255,255,255,.28);
  --g-lo:rgba(0,0,0,.20);
  --g-sheen:rgba(255,255,255,.18);
  --g-disp1:rgba(140,180,255,.14);
  --g-disp2:rgba(255,160,120,.12);
  --g-shadow:0 18px 44px rgba(0,0,0,.40), 0 3px 10px rgba(0,0,0,.28);
}

/* 굴절 레이어는 파일 맨 끝에서 적용(요소별 backdrop-filter 재정의보다 뒤여야 이김) */

/* ── 헤더/GNB: 리퀴드 글래스 바(연회색 경계·투과) ── */
.site-head{
  background:rgba(250,251,253,.50);
  -webkit-backdrop-filter:blur(18px) saturate(180%);
  backdrop-filter:blur(18px) saturate(180%);
  border-bottom:1px solid rgba(150,162,186,.16);
  box-shadow:0 1px 0 rgba(255,255,255,.45) inset, 0 6px 26px rgba(30,42,72,.05);
  transition:background .3s, box-shadow .3s, backdrop-filter .3s;
}
.site-head.scrolled{
  background:rgba(250,251,253,.66);
  box-shadow:0 1px 0 rgba(255,255,255,.55) inset, 0 8px 30px rgba(30,42,72,.10);
}
.gnb-list .sub-menu{
  background:rgba(250,251,253,.68);
  -webkit-backdrop-filter:blur(22px) saturate(180%);
  backdrop-filter:blur(22px) saturate(180%);
  border:1px solid rgba(150,162,186,.18);
  box-shadow:0 18px 40px rgba(30,42,72,.14), inset 0 1px 0 rgba(255,255,255,.7);
}
.head-cta{ box-shadow:0 6px 18px rgba(255,79,0,.30), inset 0 1px 0 rgba(255,255,255,.4); }

/* ── 브레드크럼: 미세 글래스 ── */
.crumb-bar{
  background:rgba(247,248,251,.55);
  -webkit-backdrop-filter:blur(10px) saturate(150%);
  backdrop-filter:blur(10px) saturate(150%);
  border-bottom:1px solid rgba(150,162,186,.14);
}

/* 다크 섹션 카드는 어두운 유리(투과) 유지 */
.sec-blk .card{ background:var(--g-bg); border-color:var(--g-brd); }
.card:hover{ transform:translateY(-3px);
  box-shadow:var(--g-shadow), inset 0 1px 1px var(--g-hi), 0 22px 50px rgba(30,42,72,.14); }

/* stat(그라디언트 불투명) — 굴절/블러 불필요, 유리 테두리·부드러운 광택만 */
.stat,.result-cta,.seo-score{ position:relative; }
.stat{ border:1px solid rgba(255,255,255,.22);
  box-shadow:0 14px 34px rgba(30,42,72,.16), inset 0 1px 1px rgba(255,255,255,.34), inset 0 -1px 1px rgba(0,0,0,.10);
  border-radius:var(--r-glass); overflow:hidden; }
.stat::before{ content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(120% 75% at 12% -6%, rgba(255,255,255,.34), transparent 48%); }
.stat > *{ position:relative; z-index:1; }

/* 다크 패널(스코어·CTA) — 굴절 없이 유리 테두리만(텍스트 위 왜곡 방지) */
.price-cards .pcard.feat{ box-shadow:0 22px 50px rgba(255,79,0,.16), inset 0 1px 0 rgba(255,255,255,.7), 0 0 0 1.5px rgba(255,79,0,.45); }

/* ── 폼 인풋 — 유리 필드(연회색 경계) ── */
.form-grid input,.form-grid select,.form-grid textarea,.tool-form input{
  background:rgba(255,255,255,.52);
  -webkit-backdrop-filter:blur(10px) saturate(150%);
  backdrop-filter:blur(10px) saturate(150%);
  border:1px solid rgba(150,162,186,.30);
  box-shadow:inset 0 1px 2px rgba(30,42,72,.05), inset 0 1px 0 rgba(255,255,255,.7);
}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.tool-form input:focus{
  border-color:rgba(255,79,0,.5); box-shadow:0 0 0 3px rgba(255,79,0,.12), inset 0 1px 0 rgba(255,255,255,.7); outline:none;
}
.chk{ background:rgba(255,255,255,.5); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  border:1px solid rgba(150,162,186,.28); box-shadow:inset 0 1px 0 rgba(255,255,255,.7); }

/* ── 버튼(필): 얇은 유리 광택(돔형 과광택 제거) ── */
.pill{ position:relative; overflow:hidden;
  box-shadow:0 8px 20px rgba(30,42,72,.12), inset 0 1px 0 rgba(255,255,255,.28); }
/* 상단 1/3만 아주 옅은 하이라이트(돔 아님) */
.pill::before{ content:""; position:absolute; left:0; right:0; top:0; height:34%;
  background:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0));
  pointer-events:none; border-radius:inherit; opacity:.7; }
.pill > *{ position:relative; z-index:1; }
.pill-or{ box-shadow:0 10px 22px rgba(255,79,0,.30), inset 0 1px 0 rgba(255,255,255,.35); }
/* 라이트 배경용 프로스티드 버튼(반투명 유리) */
.pill-wt,.pill-wo{
  background:rgba(255,255,255,.5);
  -webkit-backdrop-filter:blur(14px) saturate(170%);
  backdrop-filter:blur(14px) saturate(170%);
  border:1px solid rgba(150,162,186,.28);
  box-shadow:0 8px 20px rgba(30,42,72,.10), inset 0 1px 0 rgba(255,255,255,.6);
}
.pill-ghost{ background:rgba(255,255,255,.10); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.28); }
/* 오렌지/다크 밴드 위 프로스티드 버튼 — 대비 확보(불투명 화이트) */
.sec-orange .pill-wt,.sec-orange .pill-wo,.sec-orange .pill-ghost{
  background:#fff; color:var(--or); border-color:rgba(255,255,255,.9);
  -webkit-backdrop-filter:none; backdrop-filter:none;
  box-shadow:0 10px 24px rgba(180,60,0,.22), inset 0 1px 0 rgba(255,255,255,.9);
}
.sec-blk .pill-wt,.sec-blk .pill-wo{ color:var(--ink); }
.pc-btn{ position:relative; overflow:hidden; box-shadow:0 8px 20px rgba(255,79,0,.28), inset 0 1px 0 rgba(255,255,255,.32); }
.pc-btn::before{ content:""; position:absolute; left:0; right:0; top:0; height:34%;
  background:linear-gradient(180deg, rgba(255,255,255,.28), transparent); pointer-events:none; opacity:.7; }

/* ── 플로팅 CTA: 우측 하단 고정 유리 알약(★fixed 복구) ── */
.float-cta{
  position:fixed; right:22px; bottom:22px; z-index:80;   /* 고정 복구(글래스 레이어가 relative로 덮던 버그 수정) */
  overflow:hidden;
  background:var(--hl);                                   /* 형광펜 컬러 포인트 CTA */
  color:#14181f;
  border:1px solid rgba(200,238,0,.9);
  box-shadow:0 12px 30px rgba(200,238,0,.28), inset 0 1px 0 rgba(255,255,255,.5);
}
.float-cta:hover{ transform:translateY(-2px); }

/* ── 히어로: 부드러운 스펙큘러 스윕(상단, 돔 아님) ── */
.hero{ isolation:isolate; }
.hero::after{ content:""; position:absolute; inset:0; pointer-events:none; z-index:1;
  background:radial-gradient(64% 42% at 20% -4%, rgba(255,255,255,.14), transparent 58%); }
.hero .wrap{ position:relative; z-index:2; }

/* ── 성능: 유리 표면 GPU 승격 최소화 ── */
.site-head,.card,.price-cards .pcard,.float-cta{ transform:translateZ(0); }

/* ============================================================
   접근성 폴백 — 투명도/모션/고대비 축소 시 불투명·무블러·무굴절
   ============================================================ */
@media (prefers-reduced-transparency: reduce){
  .site-head,.gnb-list .sub-menu,.crumb-bar,.card,.bigcard,.notice-box,.callout,.keybox,.tool-note,
  .price-cards .pcard,.kw-table,.seo-checks li,.form-grid input,.form-grid select,.form-grid textarea,
  .tool-form input,.chk,.pill-wt,.pill-wo,.float-cta,.glass{
    -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
    background:#fff !important; border-color:var(--line) !important;
  }
  .float-cta{ background:var(--hl) !important; color:#14181f !important; }
  .sec-blk .card,.result-cta,.seo-score{ background:var(--blk-2) !important; }
  body{ background:#fafbfd !important; }
  .card::before,.glass::before,.stat::before,.pill::before,.pc-btn::before,
  .notice-box::before,.callout::before,.keybox::before,.tool-note::before,
  .price-cards .pcard::before,.kw-table::before,.bigcard::before{ display:none !important; }
}
@media (prefers-contrast: more){
  .card,.notice-box,.callout,.keybox,.tool-note,.price-cards .pcard,.kw-table,.seo-checks li{ background:#fff !important; }
  .site-head{ background:#fff !important; }
  .glass,.card,.notice-box,.callout,.keybox,.tool-note,.price-cards .pcard{ border-color:#d7dbe4 !important; }
}
@media (prefers-reduced-motion: reduce){
  .card:hover,.float-cta:hover{ transform:none; }
  .site-head{ transition:none; }
}
/* 저사양·비지원 브라우저 폴백(backdrop-filter 미지원 시 불투명) */
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
  .site-head{ background:rgba(250,251,253,.97); }
  .card,.bigcard,.notice-box,.callout,.keybox,.tool-note,.price-cards .pcard,.kw-table,.seo-checks li{ background:#fff; }
  .form-grid input,.form-grid select,.form-grid textarea,.tool-form input,.pill-wt,.pill-wo,.float-cta{ background:#fff; }
}

/* ============================================================
   리퀴드 렌즈 굴절(SVG) — 배경이 있는/작은 플로팅 요소에만.
   파일 맨 끝: 요소별 backdrop-filter 재정의보다 뒤여서 실제 적용됨.
   헤더는 스크롤 시 본문 텍스트 왜곡 방지를 위해 제외(깨끗한 블러 유지).
   ============================================================ */
@supports (backdrop-filter:url(#lgGlass)) or (-webkit-backdrop-filter:url(#lgGlass)){
  .float-cta,
  .hero .pill-wt, .hero .pill-wo, .hero .pill-ghost,
  .glass{
    -webkit-backdrop-filter:blur(15px) saturate(175%) url(#lgGlass);
    backdrop-filter:blur(15px) saturate(175%) url(#lgGlass);
  }
}
@media (prefers-reduced-transparency: reduce){
  .float-cta,.hero .pill-wt,.hero .pill-wo,.glass{ -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
}

/* ============================================================
   INTERACTION / MOTION — 리퀴드 글래스 프리미엄 인터랙션 (v0.9.21)
   콘텐츠 몰입 + 핵심 CTA 강조·생동감 + 실제 유리의 빛반사·굴절·색변화·입체감.
   카드: 포인터 따라 움직이는 스펙큘러 라이트 + 미세 3D 틸트(입체).
   핵심 CTA: 샤인 스윕 · 그라디언트 · 클릭 리플 · 프레스 · 히어로 아이들 글로우.
   순수 시각/인터랙션(마크업·H태그 불변 → SEO 0). reduced-motion에서 전부 정지.
   ============================================================ */
.i-tilt{ transition:transform .34s cubic-bezier(.2,.7,.25,1), box-shadow .34s; transform-style:preserve-3d; }
/* 포인터 스펙큘러(빛 반사) + 미세 무지개(색변화) — 텍스트 뒤(z 아래), hover에만 보임 */
.i-tilt::after{ content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background:radial-gradient(240px 240px at var(--mx,50%) var(--my,50%),
    rgba(255,255,255,.60), rgba(150,200,255,.20) 26%, rgba(255,170,120,.12) 44%, transparent 62%);
  mix-blend-mode:screen; opacity:0; transition:opacity .4s; z-index:0; }
.i-tilt.i-on::after{ opacity:1; }
.i-tilt.i-on{ transition:transform .09s ease-out, box-shadow .34s; will-change:transform;
  box-shadow:var(--g-shadow), 0 34px 66px rgba(18,24,48,.20), inset 0 1px 1px var(--g-hi),
    inset 1px 1px 0 var(--g-disp1), inset -1px -1px 0 var(--g-disp2); }
.sec-blk .i-tilt.i-on::after,.stat.i-on::after{ background:radial-gradient(240px 240px at var(--mx,50%) var(--my,50%),
    rgba(255,255,255,.34), rgba(150,200,255,.14) 30%, transparent 60%); }

/* ── 핵심 CTA — 생동감 ── */
.pill-or{ background:linear-gradient(122deg,#ff5f1a 0%,#ff7a35 46%,#ff4f00 100%); }
.pc-btn{ background:linear-gradient(122deg,#ff5f1a,#ff4f00); }
.pc-btn:hover{ background:linear-gradient(122deg,#ff6a24,#ff5200); }
/* 샤인 스윕(hover) */
.pill-or::after,.pc-btn::after,.head-cta::after{ content:""; position:absolute; top:-30%; bottom:-30%; left:-72%; width:46%;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.6) 50%, transparent); transform:skewX(-16deg);
  opacity:0; pointer-events:none; z-index:1; }
.pill-or:hover::after,.pc-btn:hover::after,.head-cta:hover::after{ animation:fx-sweep .78s ease; }
@keyframes fx-sweep{ 0%{left:-72%;opacity:0} 10%{opacity:1} 100%{left:132%;opacity:0} }
.pill-or > *,.pc-btn > *{ position:relative; z-index:2; }
/* 프레스 피드백 */
.pill:active,.pc-btn:active,.head-cta:active,.float-cta:active{ transform:translateY(0) scale(.97); }
/* 클릭 리플(JS가 span.fx-ripple 삽입) */
.fx-ripple{ position:absolute; border-radius:50%; background:rgba(255,255,255,.55);
  transform:translate(-50%,-50%) scale(0); pointer-events:none; mix-blend-mode:screen;
  animation:fx-rip .6s ease-out forwards; z-index:1; }
@keyframes fx-rip{ to{ transform:translate(-50%,-50%) scale(1); opacity:0; } }
/* 히어로 핵심 CTA — 은은한 아이들 글로우(시선 유도) */
.hero .pill-or,.landing-hero .pill-or{ animation:fx-glow 2.9s ease-in-out infinite; }
@keyframes fx-glow{ 0%,100%{box-shadow:0 10px 22px rgba(255,79,0,.30)} 50%{box-shadow:0 14px 30px rgba(255,79,0,.44), 0 0 26px rgba(255,110,40,.34)} }

@media (prefers-reduced-motion:reduce){
  .i-tilt{ transition:none; }
  .i-tilt::after{ display:none; }
  .pill-or:hover::after,.pc-btn:hover::after,.head-cta:hover::after{ animation:none; }
  .hero .pill-or,.landing-hero .pill-or{ animation:none; }
  .fx-ripple{ display:none; }
  .pill:active,.pc-btn:active,.head-cta:active,.float-cta:active{ transform:none; }
}

/* ============================================================
   채널 허브(구글·네이버) 시각·가독성 강화 (v0.9.22)
   히어로 신뢰 칩 · 본문 강조 타이포 · 진행 방식 4단계 · 아이콘 서비스 카드.
   전부 .hubx 스코프 + 장식(aria-hidden)·마크업 무해 → 구조/H태그/크롤텍스트 불변, SEO 0.
   ============================================================ */
/* 히어로 하단 여백 축소(콘텐츠까지 빈 구간 제거) + 신뢰 칩 */
.hubx .landing-hero{ padding-bottom:72px; }
.hub-chips{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin:28px 0 0; padding:0; list-style:none; }
.hub-chips li{ font-size:.86rem; font-weight:700; color:#3d4350;
  background:rgba(255,255,255,.62); -webkit-backdrop-filter:blur(10px) saturate(160%); backdrop-filter:blur(10px) saturate(160%);
  border:1px solid rgba(150,162,186,.24); border-radius:999px; padding:8px 15px;
  box-shadow:0 6px 16px rgba(30,42,72,.06), inset 0 1px 0 rgba(255,255,255,.65); }
.hub-chips li::before{ content:"✓"; color:var(--or); font-weight:800; margin-right:6px; }

/* ── 본문(entry-content) 가독성·강조 강화 ── */
.hubx .hub-body{ margin-top:0; padding:80px 0; border-top:1px solid var(--line); }
.hubx .hub-body .wrap{ max-width:840px; }
.hubx .hub-body h2{ position:relative; padding-left:20px; font-size:clamp(1.5rem,2.7vw,1.95rem); margin:1.85em 0 .55em; }
.hubx .hub-body h2:first-child{ margin-top:0; }
.hubx .hub-body h2::before{ content:""; position:absolute; left:0; top:.16em; bottom:.16em; width:5px; border-radius:4px;
  background:linear-gradient(180deg,var(--or),var(--or-3)); }
.hubx .hub-body p{ font-size:1.06rem; line-height:1.86; color:#343943; }
.hubx .hub-body p strong{ color:var(--or); font-weight:800; }
/* 본문 콜아웃 — 미니 CTA 카드로 승격(툴 링크 강조) */
.hubx .hub-body .callout{ background:linear-gradient(135deg,#ffffff,var(--or-soft));
  border:1px solid #ffdcc9; border-left:5px solid var(--or); border-radius:16px; padding:22px 26px;
  box-shadow:0 14px 36px rgba(255,79,0,.09); }
.hubx .hub-body .callout p{ margin:0; font-size:1.02rem; color:#33383f; }
.hubx .hub-body .callout p strong{ color:var(--ink); }
.hubx .hub-body .callout a{ display:inline-block; margin-top:8px; font-weight:800; color:var(--or); text-decoration:none;
  border-bottom:2px solid rgba(255,79,0,.35); padding-bottom:1px; transition:border-color .2s; }
.hubx .hub-body .callout a:hover{ border-color:var(--or); }

/* ── 진행 방식 4단계(그래픽 밴드) ── */
.hub-process .hp-h,.hub-process > .wrap > .sub{ text-align:center; }
.hub-process > .wrap > .sub{ max-width:560px; margin-left:auto; margin-right:auto; }
.hub-process .proc{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:46px 0 0; padding:0; list-style:none; }
.hub-process .proc-step{ position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:6px;
  padding:26px 22px 24px; border-radius:18px; background:rgba(255,255,255,.72);
  -webkit-backdrop-filter:blur(12px) saturate(160%); backdrop-filter:blur(12px) saturate(160%);
  border:1px solid rgba(150,162,186,.20); box-shadow:0 12px 32px rgba(30,42,72,.07), inset 0 1px 0 rgba(255,255,255,.6); }
.hub-process .proc-n{ font-size:.78rem; font-weight:800; color:var(--or); letter-spacing:.12em; }
.hub-process .proc-ic{ width:48px; height:48px; margin:4px 0 6px; border-radius:14px; display:grid; place-items:center;
  color:var(--or); background:linear-gradient(135deg,var(--or-soft),#fff); border:1px solid #ffdcc9;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7); }
.hub-process .p-ic{ width:25px; height:25px; }
.hub-process .proc-t{ font-size:1.1rem; font-weight:800; color:var(--ink); letter-spacing:-.01em; }
.hub-process .proc-d{ font-size:.9rem; line-height:1.65; color:var(--body); }
/* 단계 연결 셰브런(데스크톱) */
.hub-process .proc-step:not(:last-child)::after{ content:""; position:absolute; right:-13px; top:44px;
  width:9px; height:9px; border-top:2px solid #cfd3dc; border-right:2px solid #cfd3dc;
  transform:rotate(45deg); z-index:1; }

/* ── 서비스 상세 — 아이콘형 카드 ── */
.hubx .grid.g-2c{ max-width:840px; margin-left:auto; margin-right:auto; }
.hubx .card-svc{ display:flex; flex-direction:column; align-items:flex-start; padding:30px 28px; }
.hubx .card-svc .svc-ic-wrap{ width:54px; height:54px; margin-bottom:16px; border-radius:15px; display:grid; place-items:center;
  color:var(--or); background:linear-gradient(135deg,var(--or-soft),#fff); border:1px solid #ffdcc9;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7); }
.hubx .card-svc .svc-ic{ width:27px; height:27px; }
.hubx .card-svc h3{ font-size:1.24rem; margin:0 0 8px; letter-spacing:-.01em; }
.hubx .card-svc p{ font-size:.95rem; line-height:1.72; color:var(--body); margin:0; flex:1; }
.hubx .card-svc .svc-price-tag{ display:inline-flex; align-items:center; margin:18px 0 0; padding:6px 14px;
  border-radius:999px; background:var(--or-soft); border:1px solid #ffdcc9;
  color:var(--or); font-weight:800; font-size:.92rem; }
.hubx .card-svc .more{ margin-top:16px; color:var(--or); font-weight:700; font-size:.9rem; }

@media (max-width:820px){
  .hub-process .proc{ grid-template-columns:1fr 1fr; }
  .hub-process .proc-step:not(:last-child)::after{ display:none; }
}
@media (max-width:520px){
  .hub-process .proc{ grid-template-columns:1fr; }
  .hub-chips li{ font-size:.82rem; padding:7px 13px; }
}
@media (prefers-reduced-transparency: reduce){
  .hub-chips li,.hub-process .proc-step{ -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
    background:#fff !important; border-color:var(--line) !important; }
}

/* ============================================================
   섹션 여백·구간 분리 강화 (v0.9.23) — 전체 페이지 공통
   .sec 세로 여백 확대(위에서 80→104) + 인접 동색 섹션 사이 헤어라인으로 구간 구분.
   히어로(landing-hero/다크 .hero)는 제외 — 자체로 구분됨. 순수 시각 → SEO 0.
   ============================================================ */
/* 흰 섹션이 연속될 때 상단 헤어라인(구간 분리) — 히어로 제외 */
.sec:not(.sec-gray):not(.sec-blk):not(.sec-orange):not(.landing-hero)
  + .sec:not(.sec-gray):not(.sec-blk):not(.sec-orange):not(.landing-hero){
  border-top:1px solid var(--line);
}
/* 회색 섹션이 연속될 때도 은은한 구분선 */
.sec-gray + .sec-gray{ border-top:1px solid rgba(20,28,46,.06); }

/* 채널 허브: '서비스 상세' 섹션 헤더도 중앙정렬(히어로·진행 방식과 리듬 통일) */
.hubx .hub-svc > .wrap > h2,
.hubx .hub-svc > .wrap > .sub{ text-align:center; }
.hubx .hub-svc > .wrap > .sub{ max-width:560px; margin-left:auto; margin-right:auto; }
.hubx .hub-svc .grid{ margin-top:46px; }

/* 반응형 섹션 여백(모바일에서 과하지 않게 단계 축소) */
@media (max-width:900px){ .sec{ padding:80px 0; } .hubx .hub-body{ padding:64px 0; } }
@media (max-width:680px){ .sec{ padding:60px 0; } .hubx .hub-body{ padding:52px 0; } .hubx .landing-hero{ padding-bottom:52px; } }

/* ============================================================
   TRENDY LAYER (v0.9.25) — 읽기 진행 띠 + 형광펜(스크롤-인) · 2색(주황 메인 × 형광 서브)
   careet 스타일: 중요 문구 형광펜, 스크롤 시 좌→우 채움 + 상단 진행 띠. 순수 시각 → SEO 0.
   ============================================================ */
:root{ --hl:#ebff50; --hl-deep:#c8ee00; }   /* careet 형광 컬러(#ebff50) */

/* 상단 읽기 진행 띠 (주황 메인) */
.read-progress{ position:fixed; top:0; left:0; height:3px; width:0; z-index:1000; pointer-events:none;
  background:linear-gradient(90deg,var(--or),var(--or-2),var(--or-3));
  box-shadow:0 0 12px rgba(255,79,0,.55); border-radius:0 2px 2px 0; transition:width .08s linear; }

/* 형광펜(형광 배경 마커) — 인사이트 본문 전용. 진한 텍스트가 '항상' 읽히고,
   형광이 글자 뒤 배경 전체를 덮으며 스크롤 진입 시 좌→우로 채워짐(careet 방식).
   ※ 사용처: (1) 인사이트 본문 .entry-content 안, (2) float CTA는 별도 .float-cta.
   홈/랜딩 헤드라인엔 사용하지 않음(주황 포인트 .pt 사용). */
.hl{ color:#14181f; font-weight:800;
  background-image:linear-gradient(var(--hl),var(--hl)); background-repeat:no-repeat;
  background-position:0 center; background-size:0% 90%;
  padding:.02em .14em; margin:0 -.09em; border-radius:.1em;
  -webkit-box-decoration-break:clone; box-decoration-break:clone;
  transition:background-size .55s cubic-bezier(.22,.61,.36,1); }
.hl.in{ background-size:100% 90%; }

/* 물결(웨이브) — 텍스트엔 쓰지 않고, 섹션 경계 장식으로만 '가끔' 한 줄. */
.wave-sep{ height:14px; width:100%; border:0; margin:0; padding:0; background:transparent;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='48'%20height='14'%20viewBox='0%200%2048%2014'%3E%3Cpath%20d='M0%207%20Q12%201%2024%207%20T48%207'%20fill='none'%20stroke='%23ebff50'%20stroke-width='2.6'%20stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:repeat-x; background-position:center; background-size:auto 14px; opacity:.95; }
.sec-blk .wave-sep{ opacity:.85; }

@media (prefers-reduced-motion:reduce){
  .hl,.read-progress{ transition:none; }
}

/* ============================================================
   VALUE STACK (v0.9.27) — addi 'EASY/DIRECT…' 고스트 타이포 인터랙션 이식
   왼쪽: 큰 단어 스택(활성=주황, 비활성=고스트 12%) / 오른쪽: 동기화 카드 크로스페이드.
   블랙+주황 포인트 · 넉넉한 여백 · 자간 -2.5%.
   ============================================================ */
.vstack{ padding-block:clamp(80px,11vw,140px); }
.vstack-grid{ display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(36px,5vw,84px); align-items:center; }
.vstack-lead .kick{ margin-bottom:16px; }
.vstack-lead h2{ margin-bottom:clamp(22px,3vw,40px); }
.vstack-words{ display:flex; flex-direction:column; gap:clamp(4px,.6vw,10px); }
.vw{ font-size:clamp(2.1rem,5vw,3.55rem); font-weight:800; line-height:1.16; letter-spacing:-.025em;
  color:rgba(17,17,17,.13); width:max-content; cursor:pointer; background:none; border:0; padding:0; text-align:left;
  font-family:inherit; transition:color .45s cubic-bezier(.22,.61,.36,1),transform .45s; transform-origin:left center; }
.vw:hover{ color:rgba(17,17,17,.4); }
.vw.is-on{ color:var(--or); }
.vw.is-on:hover{ color:var(--or); }
.vstack-panels{ display:grid; }
.vp{ grid-area:1/1; opacity:0; transform:translateY(14px); pointer-events:none;
  background:#fff; border:1px solid var(--line); border-radius:var(--r-big);
  padding:clamp(28px,3.6vw,46px); box-shadow:0 22px 60px rgba(0,0,0,.07);
  transition:opacity .5s ease,transform .5s cubic-bezier(.22,.61,.36,1); }
.vp.is-on{ opacity:1; transform:none; pointer-events:auto; }
.vp-ic{ width:54px; height:54px; border-radius:16px; background:var(--or-soft); color:var(--or);
  display:grid; place-items:center; margin-bottom:20px; }
.vp-ic svg{ width:26px; height:26px; }
.vp h3{ font-size:clamp(1.25rem,1.9vw,1.5rem); line-height:1.4; margin-bottom:12px; }
.vp p{ color:var(--body); line-height:1.72; font-size:1.02rem; }
.vp-meta{ margin-top:22px; display:inline-flex; align-items:center; gap:8px; color:var(--or); font-weight:700; font-size:.95rem; }
.vw-progress{ margin-top:clamp(26px,3vw,40px); height:3px; background:var(--line); border-radius:3px; overflow:hidden; max-width:220px; }
.vw-progress i{ display:block; height:100%; width:0; background:var(--or); border-radius:3px; }
.vw-progress.run i{ width:100%; transition:width var(--vw-dur,2800ms) linear; }
@media (max-width:820px){
  .vstack-grid{ grid-template-columns:1fr; gap:28px; }
  .vw{ font-size:clamp(1.9rem,9vw,2.6rem); }
  .vstack-words{ flex-flow:row wrap; gap:14px 22px; }
  .vw-progress{ display:none; }
}
@media (prefers-reduced-motion:reduce){
  .vw,.vp{ transition:none; }
  .vw-progress.run i{ transition:none; }
}

/* ============================================================
   v0.9.30 — 메인 후킹 강화: 히어로 형광 필기체·좌측 스크림,
   가치스택 스크롤 구동, Why now 타이틀 확대·그래프 채움
   ============================================================ */

/* ── 히어로: 좌측 다크 스크림(사진 위 텍스트 가독성) ── */
.hero::before{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(90deg,
    rgba(8,10,14,.86) 0%, rgba(8,10,14,.66) 34%,
    rgba(8,10,14,.28) 60%, rgba(8,10,14,0) 88%); }
.hero .kick{ color:#ff9a5e; font-weight:800; font-size:.96rem; letter-spacing:.14em;
  text-shadow:0 1px 14px rgba(0,0,0,.55); }
.hero .sub{ color:#dcdcdc; }

/* ── 히어로 포인트어(자산): 형광 필기체 마커 ── */
.hero h1 .hero-mark{
  font-family:'Gaegu', var(--font);
  color:var(--hl);
  font-weight:700;
  font-size:1.24em;
  line-height:.9;
  display:inline-block;
  transform:rotate(-3deg);
  padding:0 .04em;
  text-shadow:0 2px 22px rgba(235,255,80,.4), 0 0 1px rgba(235,255,80,.6);
}

/* ── ④ 가치 스택: 스크롤 구동(스티키 핀 + 진행에 따라 단어/카드 전환) ── */
@media (min-width:821px){
  .vstack.is-scroll{ min-height:320vh; padding-block:0; }
  .vstack.is-scroll .vstack-grid{
    position:sticky; top:0; min-height:100vh; box-sizing:border-box;
    align-content:center; align-items:center;
    padding-block:clamp(60px,10vh,110px); }
  .vstack.is-scroll .vw-progress.scrollmode i{ transition:width .12s linear; }
}

/* ── Why now: 타이틀 확대 + 서브 밸런스 ── */
.why-now h2{ font-size:clamp(2.05rem,4.7vw,3.2rem); line-height:1.22; }
.why-now .center .sub{ font-size:clamp(1.04rem,1.4vw,1.2rem); color:var(--body);
  max-width:660px; margin-top:20px; }

/* ── Why now 그래프: 검색 자산 영역이 좌→우로 채워지는 효과 ── */
.lc-area{ opacity:0; clip-path:inset(0 100% 0 0); }
.chart-fig.in .lc-area{ opacity:1; clip-path:inset(0 0 0 0);
  transition:opacity .5s ease, clip-path 1.8s cubic-bezier(.4,0,.2,1); }
@media (prefers-reduced-motion:reduce){
  .lc-area{ opacity:1; clip-path:none; }
  .chart-fig.in .lc-area{ transition:none; }
}

/* ============================================================
   v0.9.31 — 전 페이지 여백 균일·확대 + 버튼 간격 + 진단 결과 아이콘 리디자인
   ============================================================ */

/* ── 섹션 세로 여백: 전 페이지 균일·넉넉 ── */
.sec{ padding:clamp(88px,8.6vw,132px) 0; }
.sec-tight{ padding:clamp(60px,6vw,92px) 0; }

/* ── 섹션 내부 리듬(공통) ── */
.kick{ margin-bottom:16px; }
.sub{ margin-top:20px; }
.sec .grid{ margin-top:clamp(38px,4.2vw,58px); }
.btns{ margin-top:clamp(34px,3.6vw,48px); }
/* 헤딩·서브 다음에 오는 요소(카드/표/차트 등)와의 간격 하한 */
.center + .grid, .center + .chart-fig, .center + .pkg-wrap, .center + .faq{ margin-top:clamp(40px,4.6vw,62px); }

/* ── 버튼이 위 내용과 붙지 않도록 — 전역 안전장치 ── */
/* 텍스트 문단 안에 단독으로 들어간 버튼(p>a.pill)에도 최소 상단 간격 */
.sec .wrap p > .pill{ margin-top:10px; }
/* 다크 CTA 박스 등 버튼이 문단 바로 뒤 형제로 오는 경우 */
.result-cta{ margin-top:24px; padding:clamp(26px,3vw,36px) clamp(22px,3vw,30px); }
.result-cta p{ margin-bottom:24px; }
.sec-blk .btns, .sec-orange .btns{ margin-top:clamp(30px,3.4vw,44px); }

/* ── SEO 진단 결과: 원형 아이콘 제거 → 클린 틴트 사각 + SVG ── */
.seo-checks{ margin-top:22px; gap:12px; }
.seo-checks li{ padding:16px 18px; gap:14px; }
.ck-ico{ width:28px; height:28px; border-radius:9px; display:grid; place-items:center; flex:0 0 auto; }
.ck-ico svg{ width:16px; height:16px; }
.seo-checks li.ok .ck-ico{ background:#e7f6ee; color:#12a150; }
.seo-checks li.no .ck-ico{ background:#fdeee1; color:#e2650e; }
/* 분석 안내 노트(JS 렌더링 등) */
.ss-note{ margin-top:14px; background:#fff8f4; border:1px solid #ffd9c7; border-radius:12px;
  padding:13px 16px; color:#7a3a1c; font-size:.86rem; line-height:1.6; }

/* ============================================================
   v0.9.32 — 진단 아이콘 중앙정렬·문제강조 배너 + 헤더 균형 + 무료도구 페이지 가운데정렬
   ============================================================ */

/* 진단 결과: 아이콘 세로 중앙 정렬 */
.seo-checks li{ align-items:center; }

/* 문제 개수 강조 배너 — 위기감 조성 */
.ss-alert{ margin-top:16px; background:linear-gradient(135deg,#fff4ec,#ffe4d3);
  border:1px solid #ffc9a4; border-left:5px solid var(--or); border-radius:14px;
  padding:17px 22px; color:#7a2d0c; font-size:1rem; line-height:1.65; font-weight:600; }
.ss-alert b{ color:var(--or); font-weight:800; }
.ss-alert span{ display:block; margin-top:7px; color:#9a5232; font-size:.9rem; font-weight:500; }

/* ── 헤더 균형: 로고=좌끝 / 내비=가운데 / 상담문의=우끝 (데스크톱) ── */
@media (min-width:961px){
  .head-in .gnb{ margin:0 auto; }
}

/* ── 무료 마케팅 도구(34411): 전체 가운데 정렬 + 두 카드 좌우 확장 ── */
.page-id-34411 .entry{ max-width:1060px; text-align:center; }
.page-id-34411 .entry .lead{ max-width:720px; margin-left:auto; margin-right:auto; }
.page-id-34411 .entry h2{ text-align:center; }
.page-id-34411 .price-cards{ max-width:1060px; gap:30px; margin-top:clamp(38px,4.2vw,56px); }
.page-id-34411 .price-cards .pcard{ text-align:center; padding:42px 38px; }
.page-id-34411 .price-cards .pcard .pc-btn,
.page-id-34411 .price-cards .pcard .more{ margin-left:auto; margin-right:auto; }
@media (max-width:820px){ .page-id-34411 .entry, .page-id-34411 .price-cards{ max-width:460px; } }

/* ── v0.9.33 : 프로모션 '준비 중' · 상담 여백/버튼 ── */
.pill-lg{ padding:20px 46px; font-size:1.12rem; border-radius:18px; }
@media (max-width:520px){ .pill-lg{ padding:18px 30px; font-size:1.04rem; } }

/* 상담문의 여백 확대 */
.form-grid.form-lg{ gap:24px; margin-top:52px; }
.form-grid.form-lg .fg-row{ gap:24px; }
.form-grid.form-lg fieldset.fg-check{ margin-top:6px; }
.form-grid.form-lg .fg-consent{ margin-top:10px; }
.form-grid.form-lg button{ margin-top:20px; }
.form-grid.form-lg .fg-note{ margin-top:16px; }
.page-template-contact-php .sub-meta{ margin-bottom:8px; }

/* 프로모션 안내 배너 */
.promo-notice{ margin:26px 0 8px; background:var(--or-soft); border:1px solid #ffccb0; border-left:5px solid var(--or); border-radius:16px; padding:20px 24px; }
.promo-notice strong{ display:inline-block; color:var(--or); font-weight:800; font-size:1.02rem; margin-bottom:6px; }
.promo-notice p{ color:#8a4326; font-size:.94rem; line-height:1.6; margin:0; }

/* 프로모션 준비중 카드(링크 비활성) */
.promo-card.is-prep{ cursor:default; }
.promo-card .thumb.prep{ display:flex; align-items:center; justify-content:center;
	background:repeating-linear-gradient(135deg,#f4f4f4 0 14px,#ececec 14px 28px); }
.promo-card .thumb.prep span{ font-weight:800; letter-spacing:.06em; color:#b4b4b4; font-size:.9rem;
	border:1.5px dashed #cccccc; border-radius:999px; padding:8px 18px; background:rgba(255,255,255,.6); }
.badge-prep{ color:var(--sub) !important; font-weight:700; }

/* 홈 파트너 로고월: 준비중 셀 */
.logo-wall-prep .cell{ flex-direction:column; gap:5px; filter:none; opacity:1; text-align:center; }
.logo-wall-prep .cell b{ font-weight:700; color:var(--ink); font-size:.98rem; }
.logo-wall-prep .cell em{ font-style:normal; color:var(--sub); font-size:.76rem; font-weight:600; }

/* 페이지네이션(프로모션 5페이지) */
.pagination{ margin-top:clamp(34px,4vw,52px); display:flex; justify-content:center; }
.pagination .nav-links{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.pagination .page-numbers{ min-width:44px; height:44px; padding:0 12px; display:inline-flex; align-items:center; justify-content:center;
	border:1px solid var(--line); border-radius:12px; font-weight:700; font-size:.92rem; color:var(--body); background:#fff; transition:.15s; }
.pagination a.page-numbers:hover{ border-color:var(--or); color:var(--or); }
.pagination .page-numbers.current{ background:var(--or); border-color:var(--or); color:#fff; }
.pagination .page-numbers.dots{ border:0; background:transparent; }


/* ==== SAFEMKT v0.9.33 POLISH (append-only override) ==== */
.hero h1 .hero-mark{font-family:inherit !important;color:#fff !important;font-weight:inherit !important;font-size:inherit !important;line-height:inherit !important;display:inline !important;transform:none !important;padding:0 !important;text-shadow:inherit !important;}
.tool-wrap[data-tool="kw"] .tool-form label{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;}
.tool-wrap[data-tool="kw"] .tool-help{text-align:center !important;}
.form-grid.form-lg{gap:24px !important;margin-top:52px !important;}
.form-grid.form-lg .fg-row{gap:22px !important;}
.form-grid.form-lg button[type="submit"]{padding:20px 60px !important;font-size:1.14rem !important;margin-top:18px !important;}
/* ==== /SAFEMKT v0.9.33 POLISH ==== */


/* ===== SAFEMKT HOME IMG SECTIONS v2 (append) ===== */
/* A. 공장식 vs 칼럼형 VS 비교 */
.sm-naver .sm-vs{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:22px;margin-top:42px}
.sm-naver .sm-vs-card{margin:0;display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.sm-naver .sm-vs-card.is-good{border-color:rgba(235,255,80,.5);box-shadow:0 0 0 1px rgba(235,255,80,.22),0 20px 46px rgba(0,0,0,.42)}
.sm-naver .sm-vs-head{padding:15px 14px;text-align:center;font-weight:800;font-size:1.05rem;letter-spacing:.01em;color:#cfcfcf;background:rgba(255,255,255,.06)}
.sm-naver .sm-vs-card.is-good .sm-vs-head{color:#0e0e0e;background:var(--hl,#ebff50)}
.sm-naver .sm-vs-media{height:440px;background:#0c0c0c;overflow:hidden}
.sm-naver .sm-vs-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.sm-naver .sm-vs-foot{padding:18px 18px 22px;text-align:center;margin-top:auto}
.sm-naver .sm-vs-foot strong{display:block;font-size:1.16rem;margin-bottom:6px;color:#fff}
.sm-naver .sm-vs-card.is-good .sm-vs-foot strong{color:var(--hl,#ebff50)}
.sm-naver .sm-vs-foot span{display:block;font-size:.92rem;color:#b6b6b6;line-height:1.5}
.sm-naver .sm-vs-mark{align-self:center;font-weight:900;font-style:italic;font-size:1.7rem;color:#fff;opacity:.9;padding:0 2px}
.sm-naver .sm-lead{margin-top:34px;font-size:1.12rem;color:#eaeaea}
/* B. 실제 성과 (등높이 카드 · 캡션 정렬) */
.sm-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:42px;align-items:stretch}
.sm-result-card{margin:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line,#e7edf6);border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(41,77,128,.1);transition:transform .3s,box-shadow .3s}
.sm-result-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(41,77,128,.18)}
.sm-result-media{height:440px;background:#f5f8fc;display:flex;align-items:center;justify-content:center;padding:18px;box-sizing:border-box;border-bottom:1px solid #eef2f8}
.sm-result-media img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:6px;box-shadow:0 4px 14px rgba(41,77,128,.12)}
.sm-result-card figcaption{padding:20px;font-size:1rem;color:#5f6d84;line-height:1.5;margin-top:auto}
.sm-result-card figcaption strong{display:block;font-size:1.3rem;margin-bottom:4px}
/* C. 클라이언트 로고 이동 마퀴 (컬러) */
.sm-clients .sm-marquee{margin-top:42px;display:flex;flex-direction:column;gap:18px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.sm-clients .sm-marquee-row{overflow:hidden}
.sm-clients .sm-track{list-style:none;margin:0;padding:6px 0;display:flex;width:max-content;will-change:transform}
.sm-clients .sm-track li{flex:none;margin-right:18px}
.sm-clients .sm-track img{display:block;width:188px;height:80px;object-fit:contain;background:#fff;border:1px solid #eef2f8;border-radius:12px;padding:14px 20px;box-sizing:border-box;box-shadow:0 6px 16px rgba(41,77,128,.06)}
.sm-clients .sm-track-l{animation:sm-marq-l 46s linear infinite}
.sm-clients .sm-track-r{animation:sm-marq-r 46s linear infinite}
.sm-clients .sm-marquee:hover .sm-track{animation-play-state:paused}
@keyframes sm-marq-l{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes sm-marq-r{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.sm-clients .sm-track{animation:none}}
@media(max-width:820px){
	.sm-naver .sm-vs{grid-template-columns:1fr;gap:14px}
	.sm-naver .sm-vs-mark{padding:2px 0}
	.sm-naver .sm-vs-media{height:360px}
	.sm-results-grid{grid-template-columns:1fr;gap:18px}
	.sm-result-media{height:360px}
	.sm-clients .sm-track img{width:150px;height:66px;padding:11px 15px}
}
/* ===== /SAFEMKT HOME IMG SECTIONS v2 ===== */


/* ===== SAFEMKT PROCESS TIMELINE v1 ===== */
.sm-process .sm-timeline{list-style:none;margin:46px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.sm-process .sm-timeline::before{content:"";position:absolute;top:28px;left:12.5%;right:12.5%;height:3px;background:linear-gradient(90deg,#ff4f00,#ffc7ab);z-index:0;border-radius:3px}
.sm-process .sm-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 14px}
.sm-process .sm-step-no{width:58px;height:58px;border-radius:50%;background:#fff;border:3px solid #ff4f00;color:#ff4f00;font-weight:800;font-size:1.24rem;display:grid;place-items:center;box-shadow:0 8px 22px rgba(255,79,0,.18);margin-bottom:20px}
.sm-process .sm-step-body h3{margin:0 0 8px;font-size:1.12rem}
.sm-process .sm-step-body p{margin:0;color:#5f6d84;font-size:.96rem;line-height:1.5}
@media(max-width:820px){
.sm-process .sm-timeline{grid-template-columns:1fr}
.sm-process .sm-timeline::before{left:28px;right:auto;top:14px;bottom:14px;width:3px;height:auto;background:linear-gradient(180deg,#ff4f00,#ffc7ab)}
.sm-process .sm-step{flex-direction:row;align-items:flex-start;text-align:left;gap:18px;padding:12px 0}
.sm-process .sm-step-no{margin-bottom:0;flex:none;width:52px;height:52px;font-size:1.1rem}
}
/* ===== /SAFEMKT PROCESS TIMELINE v1 ===== */
/* ===== SAFEMKT REVIEWS MARQUEE v1 ===== */
.sm-reviews .sm-rv-marquee{margin-top:40px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.sm-reviews .sm-rv-track{list-style:none;margin:0;padding:8px 0;display:flex;width:max-content;animation:sm-rv-scroll 85s linear infinite}
.sm-reviews .sm-rv-marquee:hover .sm-rv-track{animation-play-state:paused}
.sm-reviews .sm-rv-card{flex:none;width:230px;margin-right:20px;background:#fff;border:1px solid #e7edf6;border-radius:16px;overflow:hidden;box-shadow:0 10px 26px rgba(41,77,128,.10)}
.sm-reviews .sm-rv-shot{height:360px;overflow:hidden;background:#f5f8fc;position:relative}
.sm-reviews .sm-rv-shot img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.sm-reviews .sm-rv-shot::after{content:"";position:absolute;left:0;right:0;bottom:0;height:56px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.92))}
.sm-reviews .sm-rv-cap{padding:14px 14px 16px;font-size:.96rem;font-weight:700;color:#2b3a52;text-align:center;line-height:1.4}
@keyframes sm-rv-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.sm-reviews .sm-rv-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}}
@media(max-width:820px){.sm-reviews .sm-rv-card{width:180px;margin-right:14px}.sm-reviews .sm-rv-shot{height:300px}}
/* ===== /SAFEMKT REVIEWS MARQUEE v1 ===== */
/* ===== SAFEMKT HOW-FIG IMAGES v1 ===== */
.how-fig{padding:0;overflow:hidden}
.how-fig img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;border-radius:inherit}
/* ===== /SAFEMKT HOW-FIG IMAGES v1 ===== */
/* ===== SAFEMKT INDIVIDUAL PROGRAM CARDS v1 (name-first) ===== */
.svc-price{font-size:.92rem!important;font-weight:600;color:#9a9a9a!important;letter-spacing:.01em}
.svc-price + h3{font-size:1.5rem!important;line-height:1.3}
.card:has(.svc-price){display:flex;flex-direction:column;align-items:flex-start}
.card:has(.svc-price) .tag-do{order:1;margin-bottom:12px}
.card:has(.svc-price) h3{order:2;margin:0 0 4px!important}
.card:has(.svc-price) .svc-price{order:3;margin:0 0 12px!important}
.card:has(.svc-price) p{order:4;margin:0 0 14px}
.card:has(.svc-price) .more{order:5}
/* ===== /SAFEMKT INDIVIDUAL PROGRAM CARDS v1 ===== */
/* ===== SAFEMKT HUB BODY ENHANCE v1 ===== */
.hub-body .hub-lead-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:40px;align-items:center;margin:6px 0 10px}
.hub-body .hub-lead-txt h2{margin-top:0}
.hub-body .hub-lead-img{margin:0;border-radius:20px;overflow:hidden;aspect-ratio:16/11;box-shadow:0 22px 48px rgba(41,77,128,.18);border:1px solid #ededed}
.hub-body .hub-lead-img img{display:block;width:100%;height:100%;object-fit:cover}
.hub-body .hub-axis-grid{display:grid;gap:22px;margin:24px 0 12px}
.hub-body .hub-axis-grid.cols2{grid-template-columns:1fr 1fr}
.hub-body .hub-axis-grid.cols3{grid-template-columns:1fr 1fr 1fr}
.hub-body .hub-axis-card{background:#fff;border:1px solid #e7edf6;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(41,77,128,.08);transition:transform .3s,box-shadow .3s}
.hub-body .hub-axis-card:hover{transform:translateY(-6px);box-shadow:0 22px 46px rgba(41,77,128,.16)}
.hub-body .hub-axis-media{aspect-ratio:16/9;background:#0e0e0e;overflow:hidden}
.hub-body .hub-axis-media img{display:block;width:100%;height:100%;object-fit:cover}
.hub-body .hub-axis-body{padding:20px 22px 24px}
.hub-body .hub-axis-tag{display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.03em;color:#ff4f00;background:rgba(255,79,0,.09);border-radius:999px;padding:5px 12px;margin-bottom:11px}
.hub-body .hub-axis-body h3{margin:0 0 8px;font-size:1.24rem}
.hub-body .hub-axis-body p{margin:0;color:#5f6d84;line-height:1.6}
@media(max-width:820px){
	.hub-body .hub-lead-grid{grid-template-columns:1fr;gap:20px}
	.hub-body .hub-lead-img{order:-1;aspect-ratio:16/10}
	.hub-body .hub-axis-grid.cols2,.hub-body .hub-axis-grid.cols3{grid-template-columns:1fr}
}
.hub-body p:empty{display:none}
/* ===== /SAFEMKT HUB BODY ENHANCE v1 ===== */
/* ===== SAFEMKT HUB INTRO CENTERED + CALLOUT LINK v1 ===== */
.hub-body .hub-lead-centered{text-align:center;max-width:800px;margin:6px auto 10px}
.hub-body .hub-lead-logo{margin:0 auto 22px;display:flex;justify-content:center;align-items:center;height:60px}
.hub-body .hub-lead-logo img{height:100%;width:auto;max-width:230px;object-fit:contain;display:block}
.hub-body .hub-lead-centered h2{margin:0 0 16px;padding-left:0;border-left:0;text-align:center}
.hub-body .hub-lead-centered h2::before{display:none}
.hub-body .hub-lead-centered p{text-align:center}
.hub-body a.callout{display:block;text-decoration:none;color:inherit;cursor:pointer;transition:transform .25s,box-shadow .25s}
.hub-body a.callout:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(255,79,0,.18)}
.hub-body a.callout .callout-txt{display:block}
.hub-body a.callout .callout-cta{display:inline-block;margin-top:10px;font-weight:800;color:#ff4f00}
.hub-body a.callout:hover .callout-cta{text-decoration:underline}
/* ===== /SAFEMKT HUB INTRO CENTERED + CALLOUT LINK v1 ===== */