/* Reading rhythm and intrinsic sizing. Media tracks and video assets are unchanged. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
#header,footer{font-family:Pretendard,Arial,sans-serif}
.detail-page h1,.detail-page h2,.detail-page h3,.people-page h1,.people-page h2,
.activity-copy,.representative-copy,.career-hero-copy{word-break:keep-all;overflow-wrap:break-word;min-width:0}
.sentence-prose,.activity-meta,.activity-description,.detail-lead,.detail-section p,
.career-main p{letter-spacing:-.02em}
#new_main .tit h3{word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}
.wall-category{white-space:nowrap;width:max-content;max-width:100%}
.n_m_sales .case-diagram{min-width:0;max-width:100%}
.n_m_sales .case-diagram .flow{flex-wrap:wrap}
.n_m_sales .con ul li .info-con{min-width:0}
.n_m_contents .interview h4{word-break:keep-all;text-wrap:pretty}
.profile-links,.detail-related,.career-actions{flex-wrap:wrap}
.profile-links a,.detail-link,.career-link,.career-button{max-width:100%;overflow-wrap:break-word}
@media(min-width:981px){
 #new_main .tit h3{font-size:clamp(36px,3.6vw,48px);line-height:1.45}
 .n_m_three h3,.n_m_client h3{font-size:42px;line-height:1.45}
 .n_m_who .who_con h4{font-size:38px;line-height:1.45}
 .n_m_who .who_con .txt{font-size:24px;line-height:1.85}
 .n_m_who .who_con .txt .detail .d_tit{font-size:26px}
 .n_m_philo .con p{font-size:23px;line-height:1.85}
 .n_m_philo .con strong{font-size:34px;line-height:1.5}
 .n_m_why .con,.n_m_last p{font-size:26px;line-height:1.85}
}
/* Compact records on phones: a small title row, then full-width supporting text. */
@media(max-width:640px){
 .representative-activities{margin-top:30px}
 .representative-activities .activities-heading{margin-bottom:20px}
 .representative-activities .activities-heading h3{font-size:22px;line-height:1.4;margin-bottom:8px}
 .representative-activities .activities-heading>p{font-size:13px;line-height:1.65;margin:0}
 .representative-activities .activity-category{padding:18px 0;gap:12px}
 .representative-activities .activity-category>h4{font-size:15px;line-height:1.4;padding:0}
 .representative-activities .activity-item,
 .representative-activities .activity-item.activity-award-highlight{grid-template-columns:64px minmax(0,1fr);gap:5px 12px;align-items:center}
 .representative-activities .activity-item+.activity-item,
 .representative-activities .activity-awards-more .activity-item{margin-top:18px;padding-top:18px}
 .representative-activities .activity-thumb{grid-column:1;grid-row:1;align-self:center}
 .representative-activities .activity-thumb img{width:100%;height:72px;object-fit:contain}
 .representative-activities .activity-award-highlight .activity-thumb img{height:auto;aspect-ratio:16/9}
 .representative-activities .activity-copy{display:contents}
 .representative-activities .activity-copy h5{grid-column:2;grid-row:1;font-size:16px;line-height:1.5;margin:0;letter-spacing:-.025em}
 .representative-activities .activity-copy>p,
 .representative-activities .activity-copy>a{grid-column:1/-1}
 .representative-activities .activity-copy>p{font-size:13px;line-height:1.65;margin:3px 0 0;word-break:keep-all}
 .representative-activities .activity-copy>.activity-meta{margin-top:8px;color:#61798b}
 .representative-activities .activity-copy>.activity-link{justify-self:start;font-size:13px;min-height:40px;margin:0;padding:7px 0;line-height:1.6}
 .representative-activities .book-rank-label{justify-self:start;padding:5px 8px;gap:4px}
 .representative-activities .book-rank-label strong{font-size:14px}
 .representative-activities .activity-copy>.book-rank-source{font-size:11px;line-height:1.6;margin:0}
 .representative-activities .company-awards-film,
 .representative-activities .activity-awards-more{display:inline-block;vertical-align:top;max-width:100%;margin:0}
 .representative-activities .company-awards-film{margin-right:16px}
 .representative-activities .company-awards-film[open],
 .representative-activities .activity-awards-more[open]{display:block;width:100%;margin:0}
 .representative-activities .company-awards-film>summary,
 .representative-activities .activity-awards-more>summary{font-size:13px;line-height:1.6;min-height:44px;padding:11px 0;margin:0}
 .representative-activities .activity-archive{font-size:12px;line-height:1.65;margin:12px 0 0}
 .representative-activities .company-awards-film .career-film{margin:5px 0 14px}
}
@media(min-width:641px) and (max-width:980px){
 #new_main .tit h3,#new_main .tit.sm h3{font-size:34px;line-height:1.5}
 .n_m_three h3,.n_m_client h3{font-size:34px;line-height:1.5}
 .n_m_free .free_video{display:block;width:calc(100% - 60px);max-width:720px;margin:45px auto 0;padding:0}
 .n_m_free .self-check{width:100%;height:auto;min-height:0;aspect-ratio:auto;padding:30px 24px}
 .n_m_free .con{padding-top:0;margin-top:35px;font-size:22px;line-height:1.8}
 .n_m_free .con:before{display:none}
 .n_m_free .tit p{font-size:34px;line-height:1.5}
 .company-keywords .keyword-row{flex-wrap:wrap;justify-content:center}
 .n_m_who .tit{margin-bottom:60px}
 .n_m_who .who_con+.who_con{margin-top:75px}
 .n_m_contents .interview{margin-top:90px}
 .n_m_contents .desc{font-size:26px;line-height:1.7;margin:50px 0}
 .n_m_contents .desc h4{margin-bottom:30px}
 .detail-split{grid-template-columns:1fr;gap:32px}
 .empathy-grid{grid-template-columns:1fr}
 .empathy-card{padding:26px 30px}
 .empathy-card h3{font-size:22px}
 .empathy-card p{font-size:16px}
 .activity-category{grid-template-columns:1fr;gap:16px}
 .n_m_who .who_con .txt{font-size:21px;line-height:1.8}
 .n_m_who .who_con .txt .detail .d_tit{font-size:24px}
 .n_m_who .who_con .btns{gap:18px}
 .n_m_who .who_con .btns a{font-size:22px;min-height:60px;height:auto;padding:14px}
}
@media(max-width:640px){
 html{scroll-padding-top:72px}
 section{scroll-margin-top:16px}
 .wrapper,.people-container,.detail-container{width:calc(100% - 40px);max-width:none;margin-left:auto;margin-right:auto}
 #header>.wrapper{margin-left:auto;margin-right:auto}
 .representative>.wrapper{margin:0 auto}
 #new_main .tit h3,#new_main .tit.sm h3{display:block;width:100%;font-size:27px;line-height:1.5;letter-spacing:-.035em}
 #new_main .tit em{font-size:12px;letter-spacing:.08em;margin-bottom:16px}
 #new_main .dp_mb{display:none}
 #new_main .tit h3 strong{display:inline}
 .company-hero-label{font-size:12px;letter-spacing:0}
 .company-hero h1{font-size:clamp(27px,7.6vw,32px);line-height:1.45;letter-spacing:-.035em}
 .company-hero-description{font-size:16px;line-height:1.8;max-width:30em}
 .empathy-heading h2{font-size:clamp(26px,7.1vw,31px);line-height:1.5;letter-spacing:-.035em}
 .empathy-heading>p{font-size:18px;line-height:1.85;margin-top:24px}
 .empathy-card{padding:24px 22px}
 .empathy-card h3{font-size:20px;line-height:1.55;margin-bottom:14px}
 .empathy-card p{font-size:16px;line-height:1.85}
 .empathy-transition{font-size:18px;line-height:1.85;text-align:left}
 .company-team .people-heading h2{font-size:28px;line-height:1.5}
 .consultant-toolbar{gap:12px;margin-bottom:26px}
 .consultant-toolbar p{font-size:14px}
 .consultant-toolbar p br{display:none!important}
 .consultant-toolbar p{flex-basis:100%}
 .consultant-pause{min-height:44px;padding:10px 14px;font-size:13px}
 .people-more p{font-size:14px}
 .representative-copy h4{font-size:30px;line-height:1.5}
 .representative-copy h4>span{display:inline-block;margin-left:8px}
 .representative-copy dl{font-size:14px;line-height:1.8}
 .profile-intro{font-size:17px;line-height:1.85}
 .profile-links a{min-height:44px;display:inline-flex;align-items:center}
 .activities-heading>p{font-size:15px}
 .activity-copy h5{font-size:18px;line-height:1.55}
 .activity-meta,.activity-description{font-size:14px;line-height:1.8}
 .activity-link{min-height:44px}
 .activity-awards-more,.activity-awards-more[open]>summary{margin-left:0}
 .n_m_contents>.tit{padding:0 20px}
 .n_m_contents .desc{margin:32px 20px;padding:0;font-size:17px;line-height:1.8}
 .n_m_contents .desc h4{margin-bottom:25px;font-size:21px;line-height:1.55}
 .n_m_contents .real-interview{margin:65px 20px 0}
 .n_m_contents .interview h4{font-size:27px;line-height:1.5;margin-bottom:26px}
 .n_m_contents .iv_list.wrapper,.n_m_contents .iv_list{padding-left:0!important;padding-right:0!important}
 .interview-info>p{font-size:17px;line-height:1.65}
 .interview-info small,.media-source-note{font-size:12px;line-height:1.8}
 .n_m_contents{padding-bottom:65px}
 .n_m_sales .tit{padding:0 20px;margin-bottom:30px}
 #new_main .n_m_sales .tit h3{font-size:19px;font-weight:500;line-height:1.8}
 #new_main .n_m_sales .tit h3>strong{display:block;font-size:27px;font-weight:700;line-height:1.5;margin-bottom:14px}
 #new_main .n_m_sales .tit h3>strong+br{display:none}
 .section-note{font-size:13px;line-height:1.8;max-width:none;margin:0 20px 30px;padding:0}
 .n_m_sales .con ul li{min-height:0;height:auto;padding-bottom:24px}
 .n_m_sales .con ul li .info{padding:24px 22px}
 .n_m_sales .con ul li .info .name{font-size:23px}
 .n_m_sales .con ul li .info .con{font-size:17px;line-height:1.8}
 .n_m_sales .con ul li:nth-child(n) .info-con{display:block;width:100%;height:auto;min-height:0}
 .n_m_sales .case-diagram{padding:0 22px 10px}
 .n_m_sales .case-diagram small{font-size:11px;line-height:1.7}
 .n_m_sales .case-diagram .flow{font-size:14px;line-height:1.7;gap:8px;margin:18px 0 12px}
 .n_m_sales .case-diagram .flow strong{font-size:18px}
 .n_m_sales .case-diagram p{font-size:17px;line-height:1.7}
 .n_m_sales .con ul li .reels{width:calc(100% - 44px);height:auto;margin-top:22px}
 .n_m_sales .case-guide-sheet{height:auto;min-height:200px;padding:20px 18px 65px}
 .n_m_sales .case-guide-sheet>strong{font-size:25px;margin-top:45px;line-height:1.45}
 .n_m_sales .case-sheet-number{top:32px;font-size:55px}
 .n_m_sales .sheet-cta{font-size:13px;bottom:20px}
 .n_m_client h3,.n_m_three h3{font-size:27px;line-height:1.5;padding:0 20px;margin-bottom:32px}
 .company-keywords .keyword-two-rows{overflow:visible;padding:0 20px}
 .company-keywords .keyword-row{width:100%;flex-wrap:wrap;justify-content:center;gap:8px}
 .company-keywords .keyword-row span{font-size:13px;padding:9px 12px}
 .n_m_three ol{display:flex;padding:0 20px;gap:30px}
 .n_m_three ol li .tit{font-size:21px;line-height:1.5;padding-left:30px}
 .n_m_three ol li .con{font-size:16px;line-height:1.85;text-align:left}
 .n_m_who .tit{margin-bottom:36px}
 .n_m_who .who_con:nth-of-type(n){padding:0;min-height:0}
 .n_m_who .who_con+.who_con{margin-top:50px}
 .n_m_who .who_con h4{font-size:25px;line-height:1.5}
 .n_m_who .who_con .txt{font-size:16px;line-height:1.85;margin:22px 0}
 .n_m_who .who_con .txt .detail .d_tit{font-size:20px;line-height:1.6}
 .n_m_who .who_con .btns{padding:0}
 .n_m_who .who_con .btns a,.n_m_why .btns a{min-height:48px;padding:12px 18px;line-height:1.6}
 .n_m_why .con{font-size:17px;line-height:1.85;text-align:left;gap:24px;margin:30px 0}
 .n_m_philo .con{display:block;margin:30px 0 40px;padding:0 20px;text-align:left}
 .n_m_philo .con strong{font-size:23px;line-height:1.5}
 .n_m_philo .con p{font-size:16px;line-height:1.85}
 .n_m_free{padding:60px 0}
 .n_m_free .tit{padding:0 20px}
 .n_m_free .tit p{font-size:27px;line-height:1.5;word-break:keep-all}
 .n_m_free .con{padding:0 20px;margin-top:30px;font-size:17px;line-height:1.85}
 .n_m_free .con:before{display:none}
 .n_m_free .con p+p{margin-top:24px}
 .n_m_free .free_video{padding:0 20px;margin-top:30px}
 .n_m_free .free_video .self-check{padding:26px 18px;border-radius:8px}
 .n_m_free .btn_wrap{padding:0 20px}
 .n_m_free .btn_wrap a{min-height:48px;height:auto;width:100%;padding:12px 18px;font-size:16px;line-height:1.6}
 .n_m_service{padding:60px 0}
 .n_m_service .con{margin:28px auto 0;width:calc(100% - 40px);gap:16px}
 .n_m_service .con li{width:100%;height:auto;min-height:116px}
 .n_m_service .con li a{padding:24px 20px;min-height:116px}
 .n_m_service .con li a .sub{position:relative;opacity:1;display:block;font-size:15px;line-height:1.8;margin-top:10px;max-width:26em}
 .n_m_service .con li a .tit,.n_m_service .con li a:hover .tit{opacity:1;font-size:22px}
 .n_m_last{padding:65px 0}
 .n_m_last p{font-size:17px;line-height:1.85}
 .n_m_last h3{font-size:28px;line-height:1.5;margin:32px 20px 0}
 .n_m_last .last-brand{margin-top:24px}
 #new_main .faq_list li .tit{font-size:17px;line-height:1.7;padding:20px 42px 20px 28px}
 #new_main .faq_list li .tit:before{left:0;top:23px;font-size:20px;transform:none;margin:0}
 #new_main .faq_list li .tit:after{right:0;width:26px;height:26px;line-height:24px;font-size:24px;margin-top:-13px}
 #new_main .faq_list li .con{padding:20px 8px;font-size:15px;line-height:1.85}
 .detail-section h2{font-size:27px;line-height:1.5}
 .detail-hero h1{line-height:1.45!important}
 .detail-check .check-card{padding:24px 18px}
 .career-editorial-grid article{grid-template-columns:1fr;gap:20px}
 .career-editorial-grid .career-magazine{max-width:170px}
 .career-editorial-grid h3{font-size:23px;line-height:1.55}
 .career-editorial-grid p{font-size:15px;line-height:1.85}
 .career-editorial-grid h3 br{display:none}
 .career-section-head>div{min-width:0}
 .career-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:6px 16px}
 .career-index a{justify-content:center;min-height:38px;font-size:12px;padding:7px 3px}
 .career-section{scroll-margin-top:90px}
 footer address{font-size:13px;line-height:1.85;overflow-wrap:anywhere}
 footer .foot-links{gap:10px 18px}
 footer .foot-links a,footer .foot-links button{min-height:34px;display:inline-flex;align-items:center;font-size:13px}
 .consent-row span{font-size:14px!important;line-height:1.75}
 .consent-details summary{line-height:1.7}
}
