/* Shared responsive layer for every HBS page */
html{scroll-padding-top:92px}
body.nav-open{overflow:hidden}
.mobile-menu-toggle{display:none;width:46px;height:46px;border:1px solid #d8dde5;background:#fff;color:#08284f;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;flex:0 0 46px}
.mobile-menu-toggle span{display:block;width:20px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}
.mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:900px){
  .nav{position:sticky!important;top:0;height:76px!important;padding:0 18px!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(14px);z-index:1000}
  .nav .brand-logo{width:70px;height:68px;flex-basis:70px}.nav .brand-logo img{width:64px;height:64px}
  .mobile-menu-toggle{display:flex;order:3}.nav>.nav-cta{margin-left:auto;margin-right:12px;font-size:12px;white-space:nowrap}
  .nav nav{display:flex!important;position:fixed;inset:76px 0 auto 0;max-height:calc(100dvh - 76px);overflow:auto;margin:0!important;padding:20px 20px 28px;background:#fff;border-top:1px solid #e1e5eb;box-shadow:0 22px 50px rgba(2,8,23,.16);flex-direction:column;gap:0!important;transform:translateY(-115%);opacity:0;visibility:hidden;transition:transform .25s ease,opacity .2s ease,visibility .25s;z-index:-1}
  .nav nav.is-open{transform:translateY(0);opacity:1;visibility:visible}.nav nav a{display:flex;align-items:center;min-height:56px;border-bottom:1px solid #e8ebef;font-size:17px!important;letter-spacing:.02em!important;color:#08284f}.nav nav a.current{color:#ff7200}
  .section,.detail-content{padding-left:20px!important;padding-right:20px!important}.section-head{margin-bottom:38px}.section-head h2{font-size:clamp(34px,10vw,46px);word-break:keep-all}
  .brand-banner>img{height:auto!important;min-height:0!important;aspect-ratio:16/9;object-fit:contain!important;object-position:center!important}.banner-hotspot{left:7.5%;top:76%;width:24%;height:9%}
  .manifesto{padding:72px 20px;gap:34px}.business-tabs{overflow:hidden}.business-visual{min-height:430px}
  .flow{margin:50px -20px;padding:0 20px 12px;scroll-snap-type:x mandatory}.flow>div{scroll-snap-align:start}.command{min-height:auto}
  .solution-grid article>img{height:auto;aspect-ratio:16/10}.project-copy h2,.detail-cta h2{word-break:keep-all}
  .detail-hero{min-height:360px;padding:64px 20px 52px}.detail-hero h1{font-size:clamp(48px,13vw,72px);word-break:keep-all}.detail-hero p{font-size:15px;line-height:1.75}.detail-intro{margin-bottom:54px}.detail-cta{margin-top:68px}
}
@media(max-width:560px){
  .nav{height:70px!important;padding:0 14px!important}.nav nav{inset:70px 0 auto 0;max-height:calc(100dvh - 70px)}
  .nav .brand-logo{width:62px;height:60px;flex-basis:62px}.nav .brand-logo img{width:58px;height:58px}.mobile-menu-toggle{width:42px;height:42px;flex-basis:42px}
  .nav>.nav-cta{font-size:0;border:1px solid #ff7200;padding:9px 10px;margin-right:9px}.nav>.nav-cta::before{content:"문의";font-size:12px}.nav>.nav-cta span{font-size:12px;margin-left:5px}
  .section{padding-top:72px!important;padding-bottom:72px!important}.brand-banner{min-height:0}.manifesto>p{font-size:24px}
  .tab{min-height:76px;padding-right:8px;grid-template-columns:36px 1fr 20px}.tab span{font-size:16px}.business-visual{min-height:390px;padding:24px;margin-top:24px}.metric{margin-top:72px}.metric strong{font-size:48px}.chart{left:24px;right:24px;bottom:76px;height:112px}.visual-footer{left:24px;right:24px;bottom:28px}
  .kpis{grid-template-columns:1fr!important}.kpis>div{padding:18px}.briefing{padding:18px;gap:14px}.ai-orb{min-width:42px;height:42px}
  .solution-grid article{min-height:0}.solution-body{padding:24px}.project-card{height:300px;padding:28px}.insight-list a{grid-template-columns:58px 1fr 18px;min-height:96px;gap:8px}.insight-list h3{font-size:15px;line-height:1.45}
  .final-cta{min-height:440px;padding:70px 20px}.final-cta h2{font-size:38px}footer{padding:46px 20px 28px}.footer-logo{width:104px;height:104px}.footer-logo img{width:92px;height:92px}footer>div{flex-wrap:wrap;gap:18px 24px}
  dialog{max-height:calc(100dvh - 24px);overflow:auto;padding:38px 20px}dialog h2{font-size:32px}
  .category-card,.brand-card,.case{padding:26px;min-height:0}.brand-card{grid-template-columns:38px 1fr;gap:16px}.brand-copy h3{font-size:25px;margin-top:20px}.business-panel{padding:28px 22px}.business-panel>h2{font-size:34px}.service-list section{grid-template-columns:32px 1fr;gap:12px}
  .agent-build ol,.os-build-flow ol,.model-process,.consulting-process,.saas-modules,.consulting-form{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
