/* Surface separation and consistent link feedback, without CTA underlines. */
.cm-header-shell,.cm-mega,.cm-rail,.kh-header-rule,.kh-anchor-nav,.kr-nav{border:0}
.cm-family-tabs button,.cm-service,.cm-menu-bottom{border:0}
.cm-about-services .cm-service p{font-size:13px;line-height:1.8;max-width:36ch;color:#555;margin:12px 0 0}
body a.text-link,body .kr-service a,body .kr-contact-aside a,body .kx-read,body .kr-nav a,body .cm-mega a,body .kr-actions a:not(.button){text-decoration:none;border-bottom:0;box-shadow:none;transition:color .18s}
body a.text-link::after,body .kr-service a::after,body .kx-read::after{border:0;box-shadow:none;text-decoration:none}
body a.text-link:hover,body a.text-link:focus-visible,body .kr-service a:hover,body .kr-service a:focus-visible,body .kr-actions a:not(.button):hover,body .kr-actions a:not(.button):focus-visible{color:#b29148;text-decoration:none;border-bottom:0}
body .kh-light a.text-link:hover,body .kh-light .kr-service a:hover,body .kc-contact-options>a:hover{color:#785a1f}
.cm-header-shell #kr-nav .kr-languages a[lang=ko],.cm-header-shell #kr-nav .kr-languages a[lang=ko]:is(:hover,:focus-visible,[aria-current]){color:#4285cf;text-decoration:none}
.cm-header-shell #kr-nav .kr-languages a[lang=en],.cm-header-shell #kr-nav .kr-languages a[lang=en]:is(:hover,:focus-visible,[aria-current]){color:#b44b58;text-decoration:none}
.cm-header-shell #kr-nav .kr-languages a:hover{filter:brightness(1.2)}
/* The active language stays underlined, including hover and keyboard focus. */
.cm-header-shell #kr-nav .kr-languages a[lang][aria-current=page],.cm-header-shell #kr-nav .kr-languages a[lang][aria-current=page]:is(:hover,:focus-visible){text-decoration-line:underline;text-decoration-color:currentColor;text-decoration-thickness:1.5px;text-underline-offset:5px}
/* Sticky anchor hover uses the same dark red as the EN language control. */
.kh-home .kh-anchor-track a:is(:hover,:focus-visible),.cd-page .cd-anchor a:is(:hover,:focus-visible),.ip-pilot .ip-anchors a:is(:hover,:focus-visible){color:#b44b58;border-bottom-color:transparent;text-decoration:none}
.kh-home .kh-anchor-track a:is(:hover,:focus-visible) .kh-chapter-number,.cd-page .cd-anchor a:is(:hover,:focus-visible) span,.ip-pilot .ip-anchors a:is(:hover,:focus-visible) span{color:inherit}
.kr-faq-photo img{border:0}
/* Light, translucent chapter strip meets the main header without a gap. */
.kh-home{--kh-main-header-height:90px}.kh-home .kh-anchor-nav{background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border:0}.kh-home .kh-anchor-track{scrollbar-color:#aaa transparent}.kh-home .kh-anchor-track a{color:#333;border-bottom:0}.kh-home .kh-anchor-track .kh-chapter-number{color:#777}.kh-home .kh-anchor-track a:is(:hover,:focus-visible,[aria-current=location]),.kh-home .kh-anchor-track a:is(:hover,:focus-visible,[aria-current=location]) .kh-chapter-number{color:#b44b58;text-decoration:none}
@media(max-width:780px){.kh-home{--kh-main-header-height:74px}}
/* Anchor interaction is bold black; language controls retain their own colors. */
.kh-home .kh-anchor-track a:is(:hover,:focus-visible,[aria-current=location]),.cd-page .cd-anchor a:is(:hover,:focus-visible,[aria-current]),.ip-pilot .ip-anchors a:is(:hover,:focus-visible,[aria-current]){color:#111;font-weight:700;text-decoration:none;border-bottom:0}
.kh-home .kh-anchor-track a:is(:hover,:focus-visible,[aria-current=location]) .kh-chapter-number,.cd-page .cd-anchor a:is(:hover,:focus-visible,[aria-current]) span,.ip-pilot .ip-anchors a:is(:hover,:focus-visible,[aria-current]) span{color:#111;font-weight:700}
/* A fine black rule separates the light anchor strip from white sections. */
.kh-home .kh-anchor-nav,.cd-page .cd-anchor,.ip-pilot .ip-anchors{border-bottom:1px solid #111}
/* Header actions share the compact typography and exact box dimensions. */
.cm-header-shell .kr-header-controls>.kr-header-quote,
.cm-header-shell .kr-header-controls>.kr-menu{box-sizing:border-box;width:136px;min-width:136px;max-width:136px;height:44px;min-height:44px;padding:0 12px;align-items:center;justify-content:center;gap:14px;border:1px solid #8b8b8b;border-radius:0;background:transparent;color:#f4f4f4;font-family:inherit;font-size:12px;font-weight:400;line-height:1;letter-spacing:0;white-space:nowrap;flex:0 0 136px;text-decoration:none}
.cm-header-shell .kr-header-controls>.kr-header-quote{display:inline-flex}
.cm-header-shell .kr-menu .cm-menu-icon{width:16px;height:14px;flex:0 0 16px}
.cm-header-shell .kr-menu .cm-menu-icon:before{top:4px}.cm-header-shell .kr-menu .cm-menu-icon:after{top:10px;left:5px}
@media(max-width:699px){.cm-header-shell .kr-header-controls>.kr-header-quote{display:none}}
@media(max-width:380px){.cm-header-shell .kr-header-controls>.kr-header-quote,.cm-header-shell .kr-header-controls>.kr-menu{width:120px;min-width:120px;max-width:120px;flex-basis:120px}.cm-header-shell .kr-header{gap:12px}}
/* Tablet: only the right-hand panel is translucent. Phone: solid white. */
html:not(.cm-desktop-nav) #campaign-mega-menu,
html:not(.cm-desktop-nav) #campaign-mega-menu .cm-menu-layout{background:transparent}
html:not(.cm-desktop-nav) #campaign-mega-menu .cm-main{background-color:rgba(255,255,255,.85);background-image:none}
@media(max-width:699px){html:not(.cm-desktop-nav) #campaign-mega-menu .cm-rail,html:not(.cm-desktop-nav) #campaign-mega-menu .cm-main{background-color:#fff;background-image:none}}

/* Compact touch layouts: retain every card and its copy in two readable columns. */
@media(max-width:780px){
 body a.button{box-sizing:border-box;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 body :is(.hub-audiences,.hub-channels,.hub-process,.kr-services,.kr-industries,.kr-work,.kx-categories,.kx-article-grid,.kx-deliverables,.kx-process,.ip-offers,.ip-process,.cd-benefits,.cd-deliverables),
 .ip-pilot #service-scope .kx-deliverables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}
 body :is(.hub-audiences,.hub-channels,.hub-process,.kr-services,.kr-industries,.kr-work,.kx-categories,.kx-article-grid,.kx-deliverables,.kx-process,.ip-offers,.ip-process,.cd-benefits,.cd-deliverables)>*{min-width:0;margin:0}
 body .kr-services{border:0}
 body .kr-service{padding:12px;min-height:0}
 body :is(.hub-channels,.hub-process)>article{padding-block:16px 0}
 body :is(.kx-category,.kx-article-card)>a>div:not(.kp-card-photo),body .kx-deliverables>div{padding:12px}
 body :is(.hub-audiences,.kr-service,.kr-industries,.kr-work,.kx-category,.kx-article-card,.ip-offers,.ip-scope-card) :is(img,.kp-card-photo),
 body .ip-scope-card>figure{width:100%;height:auto;min-height:0;aspect-ratio:3/2;object-fit:cover;margin-block:0 12px}
 body .kp-card-photo>img{margin:0}
 body .kr-service .kr-card-photo{margin:0 0 12px!important;width:100%}
 body :is(.hub-audiences,.hub-channels,.hub-process,.kr-service,.kr-industries,.kr-work,.kx-category,.kx-article-card,.kx-deliverables,.ip-offers,.ip-process,.ip-scope-card,.cd-benefits,.cd-deliverables) h3,
 html[lang=ko] body .kx-article-card h3,.ip-pilot .ip-scope-card h3{font-size:clamp(17px,4.5vw,20px);line-height:1.3;letter-spacing:-.025em;margin:12px 0 10px;font-weight:650;overflow-wrap:anywhere}
 body .kr-service h3 a{font-size:inherit;margin:0}
 body :is(.hub-audiences,.hub-channels,.hub-process,.kr-service,.kr-industries,.kr-work,.kx-category,.kx-article-card,.kx-deliverables,.kx-process,.ip-offers,.ip-process,.cd-benefits,.cd-deliverables) p{font-size:14px;line-height:1.6;margin:0 0 12px;overflow-wrap:anywhere}
 body :is(.hub-audiences,.hub-channels,.hub-process,.kr-service,.kx-category,.kx-article-card,.kx-deliverables,.ip-offers,.ip-scope-card,.cd-benefits) .mono{font-size:10px;line-height:1.5;letter-spacing:.035em;margin:12px 0 8px;overflow-wrap:anywhere}
 body :is(.hub-audiences,.hub-channels,.kr-service,.kr-industries,.kr-work,.kx-category,.kx-article-card,.ip-offers) :is(.text-link,.kx-read,.ip-card-link){display:inline-flex;align-items:center;min-height:44px;font-size:12px;line-height:1.45;margin-top:0}
 body .kr-service h3 a.text-link{display:inline;min-height:0;font-size:inherit;line-height:inherit;margin:0}
 body .kr-work figcaption,.ip-pilot .ip-scope-card-copy{padding-top:0}
 body .cd-benefits article{display:block;padding-top:14px}
 body .cd-benefits article p{grid-column:auto}
 body .cd-deliverables li{display:block;padding-top:14px}
 body .cd-deliverables li>span{display:block;margin-bottom:8px}
 /* A single mobile weight for all Courier labels, numbers and annotations. */
 body :is(.mono,.kr-brand span,.kh-chapter-number,.kh-scroll,.kp-detail-label,.kx-blog-search label,.kr-hero-photo figcaption,.cm-menu-brand>span,.cm-category-number,.cm-service-number,.kc-anchor a>span,.eyebrow,.section-meta,.annotation,.stage-foot,.card-top,.stage-center p,.thumb>span:not(.play)),
 body .kr-people-art:after{font-weight:700!important}
}
