@charset "utf-8";
/* =====================================================================
   강남큐브안과 칼럼  (/column/)
   - 공통 → .cc-pc(PC, 1280 고정) / .cc-m(모바일) 순서
   - 호버 효과는 PC(.cc-pc)에서만 사용합니다.
   ===================================================================== */
.cc-wrap{--cc-blue:#115dcb;--cc-blue-d:#0b469c;--cc-navy:#292e42;--cc-gold:#c0a353;--cc-text:#3a3f4f;--cc-sub:#7a8091;--cc-line:#e4e8ef;--cc-bg:#f5f8fd;
  color:var(--cc-text);font-family:"Pretendard Variable",Pretendard,"Noto Sans KR",sans-serif;word-break:keep-all;}
.cc-wrap *{box-sizing:border-box;}
.cc-wrap a{color:inherit;text-decoration:none;}
.cc-wrap img{max-width:100%;height:auto;vertical-align:top;}

/* ---------- 공통 요소 */
.cc-cat{display:inline-block;padding:5px 12px;font-size:13px;font-weight:600;line-height:1.2;color:var(--cc-blue);background:#e9f1fc;border-radius:30px;}
.cc-btn{display:inline-block;min-width:160px;padding:14px 28px;font-size:16px;font-weight:600;text-align:center;color:#fff !important;background:var(--cc-blue);border-radius:4px;}
.cc-sec-tit{margin:0 0 24px;font-size:26px;font-weight:700;color:var(--cc-navy);}
.cc-empty{padding:120px 0;font-size:17px;line-height:1.8;text-align:center;color:var(--cc-sub);border-top:2px solid var(--cc-navy);border-bottom:1px solid var(--cc-line);}
.cc-empty .cc-btn{margin-top:24px;}

/* ---------- 목록 */
.cc-search{position:relative;width:420px;margin:10px auto 50px;}
.cc-search input{width:100%;height:52px;padding:0 56px 0 22px;font-size:16px;border:1px solid #d3d8e2;border-radius:26px;background:#fff;outline:none;}
.cc-search input:focus{border-color:var(--cc-blue);}
.cc-search button{position:absolute;top:0;right:6px;width:52px;height:52px;font-size:18px;color:var(--cc-blue);background:none;border:0;cursor:pointer;}
.cc-result-info{margin:-30px 0 30px;font-size:15px;text-align:center;color:var(--cc-sub);}
.cc-result-info a{margin-left:10px;color:var(--cc-blue);text-decoration:underline !important;}

.cc-cards{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;}
.cc-card{list-style:none;}
.cc-card>a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--cc-line);border-radius:10px;overflow:hidden;}
.cc-card-thumb{position:relative;aspect-ratio:16/9;background:var(--cc-bg);overflow:hidden;}
.cc-card-thumb img{width:100%;height:100%;object-fit:cover;}
.cc-card-thumb.is-empty{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f4fae 0%,#115dcb 55%,#3d86e6 100%);}
.cc-card-ph{font-size:22px;font-weight:700;letter-spacing:-0.02em;color:rgba(255,255,255,.92);}
.cc-card-thumb.is-empty:after{content:'';position:absolute;right:-30px;bottom:-30px;width:120px;height:120px;border:14px solid rgba(255,255,255,.14);border-radius:50%;}
.cc-card-body{display:flex;flex-direction:column;flex:1;padding:24px 24px 22px;}
.cc-card-body .cc-cat{align-self:flex-start;margin-bottom:12px;}
.cc-card-title{margin:0 0 10px;font-size:20px;font-weight:700;line-height:1.45;color:var(--cc-navy);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cc-card-excerpt{margin:0 0 18px;font-size:15px;line-height:1.65;color:var(--cc-sub);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cc-card-meta{display:flex;justify-content:space-between;margin:auto 0 0;padding-top:14px;font-size:13px;color:#9aa0ae;border-top:1px solid #f0f2f6;}

.cc-paging{display:flex;justify-content:center;gap:6px;margin:56px 0 0;}
.cc-paging a,.cc-paging strong{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 6px;font-size:15px;color:var(--cc-text);border:1px solid var(--cc-line);border-radius:4px;background:#fff;}
.cc-paging strong{color:#fff;background:var(--cc-blue);border-color:var(--cc-blue);}

/* ---------- 상세 */
.cc-crumb{font-size:14px;color:var(--cc-sub);}
.cc-crumb i{margin:0 8px;color:#c0c5d0;}
.cc-head{padding-bottom:28px;border-bottom:1px solid var(--cc-line);}
.cc-head .cc-cat{margin-bottom:16px;}
.cc-title{margin:0 0 18px;font-weight:700;color:var(--cc-navy);letter-spacing:-0.02em;}
.cc-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--cc-sub);}
.cc-meta-author{font-weight:600;color:var(--cc-text);}
.cc-meta-author i{margin-right:4px;color:var(--cc-blue);}
.cc-hero{margin:32px 0 0;border-radius:10px;overflow:hidden;}
.cc-hero img{width:100%;}

.cc-glance{margin:36px 0 0;padding:28px 30px;background:var(--cc-bg);border-radius:10px;}
.cc-glance-tit{margin:0 0 16px;font-size:18px;font-weight:700;color:var(--cc-blue);}
.cc-glance ol{margin:0;padding:0;list-style:none;}
.cc-glance li{display:flex;gap:14px;padding:12px 0;border-top:1px solid #dfe7f3;list-style:none;}
.cc-glance li:first-child{border-top:0;padding-top:0;}
.cc-glance li:last-child{padding-bottom:0;}
.cc-num{flex:none;font-size:15px;font-weight:700;line-height:1.75;color:var(--cc-gold);}
.cc-glance p{margin:0;font-size:16px;line-height:1.75;color:var(--cc-navy);}

.cc-toc{margin:28px 0 0;border:1px solid var(--cc-line);border-radius:10px;}
.cc-toc-tit{display:flex;justify-content:space-between;align-items:center;width:100%;padding:18px 24px;font-size:16px;font-weight:700;color:var(--cc-navy);background:none;border:0;cursor:pointer;text-align:left;}
.cc-toc-tit i{transition:transform .2s;}
.cc-toc[data-open="false"] .cc-toc-tit i{transform:rotate(-90deg);}
.cc-toc[data-open="false"] ol{display:none;}
.cc-toc ol{margin:0;padding:0 24px 20px 24px;list-style:none;counter-reset:cctoc;}
.cc-toc li{position:relative;padding:7px 0 7px 30px;font-size:15px;line-height:1.55;list-style:none;counter-increment:cctoc;}
.cc-toc li:before{content:counter(cctoc,decimal-leading-zero);position:absolute;left:0;top:7px;font-weight:700;color:var(--cc-gold);}

/* 본문 */
.cc-content{margin-top:40px;color:var(--cc-text);}
.cc-content>*:first-child{margin-top:0;}
.cc-content p{margin:0 0 18px;}
.cc-content h2{position:relative;margin:64px 0 22px;padding-top:22px;font-weight:700;line-height:1.45;color:var(--cc-navy);letter-spacing:-0.02em;scroll-margin-top:120px;}
.cc-content h2:before{content:'';position:absolute;top:0;left:0;width:28px;height:3px;background:var(--cc-blue);}
.cc-content h3{margin:36px 0 14px;font-weight:700;line-height:1.5;color:var(--cc-navy);}
.cc-content strong,.cc-content b{font-weight:700;color:var(--cc-navy);}
.cc-content ul,.cc-content ol{margin:0 0 20px;padding-left:1.4em;}
.cc-content ul>li{list-style:disc;margin:6px 0;}
.cc-content ol>li{list-style:decimal;margin:6px 0;}
.cc-content li::marker{color:var(--cc-blue);}
.cc-content a{color:var(--cc-blue);text-decoration:underline !important;text-underline-offset:3px;}
.cc-content img{display:block;margin:28px auto;border-radius:8px;}
.cc-content figure{margin:28px 0;}
.cc-content figcaption{margin-top:8px;font-size:14px;text-align:center;color:var(--cc-sub);}

.cc-table-wrap{margin:24px 0 28px;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.cc-content table{width:100%;border-collapse:collapse;border-top:2px solid var(--cc-navy);font-size:15px;line-height:1.6;}
.cc-content th,.cc-content td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--cc-line);}
.cc-content thead th{font-weight:700;color:var(--cc-navy);background:#eef3fb;}
.cc-content tbody td:first-child{font-weight:600;color:var(--cc-navy);background:#fafbfd;white-space:nowrap;}

.cc-content .col-key{margin:24px 0 8px;padding:20px 24px;color:var(--cc-navy);background:#f3f7fd;border-left:4px solid var(--cc-blue);border-radius:0 8px 8px 0;}
.cc-content .col-key strong:first-child{color:var(--cc-blue);}
.cc-content .col-sign{margin-top:40px;padding-top:24px;border-top:1px solid var(--cc-line);}
.cc-content .col-tags{margin-top:16px;font-size:14px;line-height:1.9;color:#8a90a0;word-break:break-all;}
.cc-content .notice{margin-top:28px;padding:16px 20px;font-size:14px;line-height:1.7;color:#7a8091;background:#f6f7f9;border-radius:6px;}

/* FAQ */
.cc-faq{margin-top:64px;}
.cc-faq-item{border-top:1px solid var(--cc-line);}
.cc-faq-item:last-child{border-bottom:1px solid var(--cc-line);}
.cc-faq-item summary{position:relative;display:flex;align-items:flex-start;gap:14px;padding:22px 44px 22px 0;font-size:17px;font-weight:600;line-height:1.55;color:var(--cc-navy);list-style:none;cursor:pointer;}
.cc-faq-item summary::-webkit-details-marker{display:none;}
.cc-faq-item summary i{position:absolute;right:6px;top:24px;font-size:20px;color:#9aa0ae;transition:transform .2s;}
.cc-faq-item[open] summary i{transform:rotate(180deg);}
.cc-q,.cc-a{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:14px;font-weight:700;border-radius:50%;}
.cc-q{color:#fff;background:var(--cc-blue);}
.cc-a{color:var(--cc-blue);background:#e9f1fc;}
.cc-faq-a{display:flex;gap:14px;padding:0 0 24px;font-size:16px;line-height:1.8;color:var(--cc-text);}

/* 글쓴이 */
.cc-author{display:flex;align-items:center;gap:20px;margin-top:56px;padding:26px 28px;border:1px solid var(--cc-line);border-radius:10px;}
.cc-author-badge{flex:none;display:flex;align-items:center;justify-content:center;width:64px;height:64px;font-size:24px;font-weight:700;color:#fff;background:var(--cc-blue);border-radius:50%;}
.cc-author-txt{flex:1;min-width:0;}
.cc-author-txt p{margin:0;}
.cc-author-label{font-size:13px;color:var(--cc-sub);}
.cc-author-name{margin:4px 0 2px !important;font-size:20px;font-weight:700;color:var(--cc-navy);}
.cc-author-name span{margin-left:4px;font-size:15px;font-weight:500;color:var(--cc-sub);}
.cc-author-org{font-size:14px;color:var(--cc-sub);}
.cc-author-link{flex:none;font-size:14px;font-weight:600;color:var(--cc-blue) !important;}

/* 이전/다음 */
.cc-pn{margin-top:40px;border-top:2px solid var(--cc-navy);}
.cc-pn-item{display:flex;gap:24px;padding:18px 8px;border-bottom:1px solid var(--cc-line);}
.cc-pn-lbl{flex:none;width:56px;font-size:14px;font-weight:600;color:var(--cc-sub);}
.cc-pn-tit{flex:1;min-width:0;font-size:15px;color:var(--cc-navy);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.cc-list-btn{margin-top:36px;text-align:center;}

/* 관련 칼럼 */
.cc-related{margin-top:90px;padding-top:60px;border-top:1px solid var(--cc-line);}
.cc-cards-sm .cc-card-title{font-size:18px;}

/* =====================================================================
   PC (1280 고정)
   ===================================================================== */
.cc-pc .cc-wrap{width:1280px;margin:0 auto;}
.cc-pc .cc-mtabs{display:flex;justify-content:center;gap:10px;margin:30px 0 26px;}
.cc-pc .cc-mtabs a{padding:11px 22px;font-size:15px;font-weight:600;color:var(--cc-text);background:#f1f3f7;border-radius:30px;}
.cc-pc .cc-mtabs a.on{color:#fff;background:var(--cc-blue);}
.cc-pc .cc-mtabs a:not(.on):hover{color:var(--cc-blue);}
.cc-pc .cc-cards{gap:32px;}
.cc-pc .cc-card{width:calc((100% - 64px) / 3);}
.cc-pc .cc-view-page{width:1200px;padding-top:40px;}
.cc-pc .cc-crumb{margin:0 0 28px;}
.cc-pc .cc-layout{display:flex;align-items:flex-start;gap:80px;}
.cc-pc .cc-article{flex:none;width:840px;}
.cc-pc .cc-title{font-size:40px;line-height:1.38;}
.cc-pc .cc-content{font-size:18px;line-height:1.9;}
.cc-pc .cc-content h2{font-size:28px;}
.cc-pc .cc-content h3{font-size:21px;}
.cc-pc .cc-toc-inline{display:none;}
.cc-pc .cc-side{flex:none;width:280px;position:sticky;top:120px;}
.cc-pc .cc-side-inner{padding:26px 24px;border:1px solid var(--cc-line);border-radius:10px;}
.cc-pc .cc-side-tit{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--cc-navy);}
.cc-pc .cc-side ol{margin:0;padding:0;list-style:none;counter-reset:ccside;}
.cc-pc .cc-side li{position:relative;padding:8px 0 8px 28px;font-size:14px;line-height:1.55;color:var(--cc-sub);list-style:none;counter-increment:ccside;}
.cc-pc .cc-side li:before{content:counter(ccside,decimal-leading-zero);position:absolute;left:0;top:8px;font-size:13px;font-weight:700;color:#c0c5d0;}
.cc-pc .cc-side li.on{color:var(--cc-blue);font-weight:600;}
.cc-pc .cc-side li.on:before{color:var(--cc-gold);}
.cc-pc .cc-related .cc-cards{gap:32px;}

/* PC 호버 (모바일에는 넣지 않음) */
.cc-pc .cc-card>a{transition:box-shadow .25s,transform .25s;}
.cc-pc .cc-card>a:hover{box-shadow:0 14px 34px rgba(17,93,203,.12);transform:translateY(-4px);}
.cc-pc .cc-card-thumb img{transition:transform .5s;}
.cc-pc .cc-card>a:hover .cc-card-thumb img{transform:scale(1.04);}
.cc-pc .cc-card>a:hover .cc-card-title{color:var(--cc-blue);}
.cc-pc .cc-paging a:hover{color:var(--cc-blue);border-color:var(--cc-blue);}
.cc-pc .cc-pn-item:hover .cc-pn-tit,
.cc-pc .cc-side li a:hover,
.cc-pc .cc-crumb a:hover{color:var(--cc-blue);}
.cc-pc .cc-btn:hover{background:var(--cc-blue-d);}

/* =====================================================================
   모바일
   ===================================================================== */
.cc-m .cc-wrap{padding:0 16px;}
.cc-m .cc-mtabs{display:flex;gap:8px;margin:0 -16px 22px;padding:0 16px 2px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.cc-m .cc-mtabs::-webkit-scrollbar{display:none;}
.cc-m .cc-mtabs a{flex:none;padding:9px 16px;font-size:14px;font-weight:600;color:var(--cc-text);background:#f1f3f7;border-radius:30px;}
.cc-m .cc-mtabs a.on{color:#fff;background:var(--cc-blue);}
.cc-m .cc-search{width:100%;margin:6px 0 28px;}
.cc-m .cc-search input{height:46px;font-size:15px;}
.cc-m .cc-search button{width:46px;height:46px;}
.cc-m .cc-result-info{margin:-14px 0 20px;font-size:14px;}
.cc-m .cc-cards{flex-direction:column;gap:18px;}
.cc-m .cc-card{width:100%;}
.cc-m .cc-card-body{padding:18px 18px 16px;}
.cc-m .cc-card-title{font-size:18px;}
.cc-m .cc-card-excerpt{font-size:14px;margin-bottom:14px;}
.cc-m .cc-paging{gap:4px;margin-top:36px;}
.cc-m .cc-paging a,.cc-m .cc-paging strong{min-width:36px;height:36px;font-size:14px;}
.cc-m .cc-empty{padding:70px 0;font-size:15px;}

.cc-m .cc-crumb{margin:0 0 18px;font-size:13px;}
.cc-m .cc-title{font-size:26px;line-height:1.42;}
.cc-m .cc-meta{font-size:13px;gap:4px 12px;}
.cc-m .cc-hero{margin-top:22px;border-radius:8px;}
.cc-m .cc-glance{margin-top:24px;padding:20px 18px;}
.cc-m .cc-glance-tit{font-size:16px;}
.cc-m .cc-glance p{font-size:15px;}
.cc-m .cc-toc{margin-top:18px;}
.cc-m .cc-toc-tit{padding:16px 18px;font-size:15px;}
.cc-m .cc-toc ol{padding:0 18px 16px;}
.cc-m .cc-toc li{font-size:14px;}
.cc-m .cc-content{margin-top:30px;font-size:16px;line-height:1.85;}
.cc-m .cc-content h2{margin:48px 0 16px;padding-top:18px;font-size:21px;scroll-margin-top:80px;}
.cc-m .cc-content h3{font-size:18px;}
.cc-m .cc-content table{font-size:14px;min-width:100%;}
.cc-m .cc-content th,.cc-m .cc-content td{padding:11px 12px;}
.cc-m .cc-content tbody td:first-child{white-space:normal;min-width:84px;}
.cc-m .cc-content .col-key{padding:16px 18px;}
.cc-m .cc-sec-tit{font-size:21px;margin-bottom:16px;}
.cc-m .cc-faq{margin-top:48px;}
.cc-m .cc-faq-item summary{padding:18px 36px 18px 0;font-size:15px;gap:10px;}
.cc-m .cc-faq-item summary i{top:20px;font-size:18px;}
.cc-m .cc-q,.cc-m .cc-a{width:24px;height:24px;font-size:12px;}
.cc-m .cc-faq-a{gap:10px;font-size:15px;}
.cc-m .cc-author{flex-wrap:wrap;gap:14px;margin-top:40px;padding:20px 18px;}
.cc-m .cc-author-badge{width:52px;height:52px;font-size:20px;}
.cc-m .cc-author-link{width:100%;padding-top:12px;border-top:1px solid #f0f2f6;}
.cc-m .cc-pn-item{gap:14px;padding:16px 4px;}
.cc-m .cc-pn-lbl{width:46px;font-size:13px;}
.cc-m .cc-pn-tit{font-size:14px;}
.cc-m .cc-btn{min-width:140px;padding:13px 24px;font-size:15px;}
.cc-m .cc-related{margin-top:56px;padding-top:40px;}
.cc-m .cc-related .cc-cards{gap:14px;}
.cc-m .cc-side{display:none;}

/* =====================================================================
   다국어
   ===================================================================== */
.cc-lang-ja .cc-wrap{font-family:"Pretendard Variable",Pretendard,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo","Noto Sans JP",sans-serif;}
.cc-lang-zh .cc-wrap{font-family:"Pretendard Variable",Pretendard,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;}
.cc-lang-ar .cc-wrap{font-family:"Segoe UI","Geeza Pro","Noto Sans Arabic","Noto Naskh Arabic",Tahoma,sans-serif;}
.cc-lang-en .cc-wrap,.cc-lang-zh .cc-wrap,.cc-lang-ja .cc-wrap{word-break:normal;overflow-wrap:break-word;}
.cc-lang-ja .cc-wrap,.cc-lang-zh .cc-wrap{line-break:strict;}

/* 다른 언어 바로가기 */
.cc-langs{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px 14px;margin:0 0 18px;font-size:14px;color:var(--cc-sub);}
.cc-langs i{color:#b5bbc7;}
.cc-langs a{color:var(--cc-sub);}
.cc-langs a.on{font-weight:700;color:var(--cc-blue);}
.cc-langs-view{justify-content:flex-start;margin:16px 0 0;padding-top:14px;border-top:1px dashed var(--cc-line);}
.cc-pc .cc-langs a:not(.on):hover{color:var(--cc-blue);}
.cc-m .cc-langs{justify-content:flex-start;gap:4px 12px;font-size:13px;}
.cc-pc .cc-lang-tabs{margin-bottom:115px;}

/* 아랍어 — 오른쪽에서 왼쪽 */
.cc-wrap[dir="rtl"]{text-align:right;}
.cc-wrap[dir="rtl"] .cc-content ul,.cc-wrap[dir="rtl"] .cc-content ol{padding-left:0;padding-right:1.4em;}
.cc-wrap[dir="rtl"] .cc-content h2:before{left:auto;right:0;}
.cc-wrap[dir="rtl"] .cc-content th,.cc-wrap[dir="rtl"] .cc-content td{text-align:right;}
.cc-wrap[dir="rtl"] .cc-content .col-key{border-left:0;border-right:4px solid var(--cc-blue);border-radius:8px 0 0 8px;}
.cc-wrap[dir="rtl"] .cc-toc-tit{text-align:right;}
.cc-wrap[dir="rtl"] .cc-toc li{padding:7px 30px 7px 0;}
.cc-wrap[dir="rtl"] .cc-toc li:before{left:auto;right:0;}
.cc-pc .cc-wrap[dir="rtl"] .cc-side li{padding:8px 28px 8px 0;}
.cc-pc .cc-wrap[dir="rtl"] .cc-side li:before{left:auto;right:0;}
.cc-wrap[dir="rtl"] .cc-faq-item summary{padding:22px 0 22px 44px;}
.cc-wrap[dir="rtl"] .cc-faq-item summary i{right:auto;left:6px;}
.cc-wrap[dir="rtl"] .cc-author-name span{margin-left:0;margin-right:4px;}
.cc-wrap[dir="rtl"] .cc-search input{padding:0 22px 0 56px;}
.cc-wrap[dir="rtl"] .cc-search button{right:auto;left:6px;}
.cc-wrap[dir="rtl"] .cc-result-info a{margin-left:0;margin-right:10px;}
.cc-wrap[dir="rtl"] .cc-card-thumb.is-empty:after{right:auto;left:-30px;}
.cc-wrap[dir="rtl"] .cc-card-body .cc-cat{align-self:flex-start;}
.cc-m .cc-wrap[dir="rtl"] .cc-faq-item summary{padding:18px 0 18px 36px;}
.cc-m .cc-wrap[dir="rtl"] .cc-langs{justify-content:flex-start;}

/* 자동으로 들어가는 본문 사진 */
.cc-content .cc-auto-img{margin:40px 0 8px;}
.cc-content .cc-auto-img img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;margin:0;border-radius:10px;}
.cc-m .cc-content .cc-auto-img{margin:30px 0 4px;}
.cc-m .cc-content .cc-auto-img img{border-radius:8px;}

/* 본문 소제목 번호 (목차와 같은 01, 02…) */
.cc-content h2{display:flex;align-items:baseline;gap:14px;}
.cc-content h2 .cc-h2-num{flex:none;font-weight:700;color:var(--cc-blue);letter-spacing:0;font-variant-numeric:tabular-nums;}
.cc-content h2 .cc-h2-txt{flex:1;min-width:0;}
.cc-m .cc-content h2{gap:10px;}
