/* AItira V19 — mobile shell recovery, compact footer, overflow fixes */
:root{--aitira-mobile-header-h:68px;--aitira-mobile-bottom-h:66px}
html{scroll-padding-top:84px}
body{min-width:0}

/* Always keep the canonical shell visible on tablet/mobile. Fixed is more reliable than sticky
   across legacy pages that use overflow/transform containers. */
@media(max-width:1140px){
  .aitira-global-header{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:1900!important;transform:none!important;opacity:1!important;visibility:visible!important;display:block!important}
  body{padding-top:var(--aitira-mobile-header-h)!important}
  .aitira-global-header__inner{height:var(--aitira-mobile-header-h)!important;min-height:var(--aitira-mobile-header-h)!important;max-height:var(--aitira-mobile-header-h)!important;display:flex!important;align-items:center!important;width:min(calc(100% - 24px),1240px)!important;margin-inline:auto!important;padding:0!important;gap:8px!important;overflow:visible!important}
  .aitira-global-brand{flex:1 1 auto!important;min-width:0!important;max-width:none!important;display:flex!important;align-items:center!important;gap:8px!important;overflow:hidden!important}
  .aitira-global-brand img{flex:0 0 auto!important;width:86px!important;max-width:86px!important;height:auto!important}
  .aitira-global-hub-mini{display:inline-flex!important;flex:0 0 auto!important;min-width:54px!important;max-width:58px!important;height:42px!important;padding:0 8px!important;margin-left:auto!important}
  .aitira-global-menu-btn{display:inline-flex!important;flex:0 0 46px!important;width:46px!important;height:46px!important;margin-left:0!important}
  .aitira-global-nav,.aitira-global-hub,.aitira-global-cta{display:none!important}
}
@media(max-width:760px){
  .aitira-global-brand span{display:none!important}
  .aitira-global-brand img{width:92px!important;max-width:92px!important}
  .aitira-global-hub-mini b{font-size:11px!important}
  .aitira-global-hub-mini>span{font-size:8px!important}
  .aitira-mobile-menu-open .aitira-mobile-bottom-v17{opacity:0!important;pointer-events:none!important;transform:translate(-50%,12px)!important}
}
@media(max-width:360px){
  :root{--aitira-mobile-header-h:64px}
  .aitira-global-header__inner{width:calc(100% - 20px)!important}
  .aitira-global-brand img{width:82px!important;max-width:82px!important}
  .aitira-global-hub-mini{min-width:50px!important;max-width:52px!important;padding:0 6px!important}
  .aitira-global-menu-btn{flex-basis:44px!important;width:44px!important;height:44px!important}
}

/* The mobile footer is deliberately compact. Core/Labs are already in the fixed nav + hamburger. */
@media(max-width:760px){
  .aitira-global-footer{margin-top:38px!important;padding:0 0 calc(var(--aitira-mobile-bottom-h) + env(safe-area-inset-bottom))!important;overflow:visible!important}
  .aitira-global-footer__grid{display:block!important;width:calc(100% - 28px)!important;padding:24px 0 12px!important}
  .aitira-global-footer__brand{padding:0 0 11px!important;border:0!important}
  .aitira-global-footer__brand img{width:80px!important;margin-bottom:5px!important}
  .aitira-global-footer__brand p{display:none!important}
  .aitira-global-footer__brand .aitira-global-footer__mail{font-size:12px!important;margin-top:7px!important}
  .aitira-global-footer nav[aria-label="AItira 핵심 서비스"],
  .aitira-global-footer nav[aria-label="AItira Labs"]{display:none!important}
  .aitira-global-footer nav[aria-label="FlowLabs 관련 서비스"]{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:6px!important;padding:10px 0 2px!important;border-top:1px solid #e0e6ed!important}
  .aitira-global-footer nav[aria-label="FlowLabs 관련 서비스"]>b{flex:0 0 100%!important;width:100%!important;margin-bottom:2px!important}
  .aitira-global-footer nav[aria-label="FlowLabs 관련 서비스"]>a:not(.aitira-related-sites-nav__mail){display:inline-flex!important;align-items:center!important;width:auto!important;max-width:100%!important;padding:7px 9px!important;border:1px solid #dfe6ee!important;border-radius:999px!important;background:#fff!important;font-size:11.5px!important;line-height:1.2!important;text-decoration:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .aitira-global-footer nav[aria-label="FlowLabs 관련 서비스"] .aitira-related-sites-nav__mail{display:none!important}
  .aitira-global-footer__bottom{width:calc(100% - 28px)!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:7px 12px!important;padding:11px 0 14px!important;font-size:10.5px!important}
  .aitira-global-footer__bottom nav{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:6px 12px!important;padding:0!important;border:0!important}
  .aitira-global-footer__bottom nav a{font-size:10.5px!important}
}

/* AItira Match: recommendation criteria are one horizontal row on mobile. */
@media(max-width:760px){
  .match-hero{padding-top:24px!important}
  .match-hero__grid{gap:14px!important}
  .match-hero__copy,.match-hero__card{border-radius:22px!important}
  .match-hero__copy{padding:24px!important}
  .match-hero__copy h1{font-size:clamp(31px,9vw,42px)!important;line-height:1.16!important}
  .match-hero__card{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;padding:18px 16px!important;overflow-x:auto!important;overscroll-behavior-inline:contain!important;scrollbar-width:none!important}
  .match-hero__card::-webkit-scrollbar{display:none!important}
  .match-hero__card strong{flex:0 0 auto!important;font-size:15px!important;margin-right:2px!important;white-space:nowrap!important}
  .match-hero__card span{flex:0 0 auto!important;width:auto!important;padding:8px 11px!important;white-space:nowrap!important;font-size:12px!important}
}

/* Newsletter subscribe: never exceed viewport, regardless of legacy box sizing. */
.newsletter-subscribe-wide,.newsletter-subscribe-form,.newsletter-consent,.newsletter-subscribe-form input,.newsletter-subscribe-form button{box-sizing:border-box!important;min-width:0!important;max-width:100%!important}
@media(max-width:760px){
  .pro-shell,.newsletter-subscribe-wide{box-sizing:border-box!important;max-width:calc(100% - 24px)!important;width:calc(100% - 24px)!important;margin-left:auto!important;margin-right:auto!important}
  .newsletter-subscribe-wide{display:block!important;padding:20px 16px!important;border-radius:20px!important;overflow:hidden!important}
  .newsletter-subscribe-form{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important;width:100%!important;margin-top:14px!important}
  .newsletter-subscribe-form input[type=email],.newsletter-subscribe-form button{width:100%!important;max-width:100%!important;height:50px!important;margin:0!important}
  .newsletter-consent{display:flex!important;width:100%!important;margin:10px 0 0!important;grid-column:auto!important;font-size:11px!important;line-height:1.5!important}
  .newsletter-consent input{flex:0 0 auto!important;margin-top:2px!important}
}

/* Global mobile media normalization, including article/newsletter detail pages. */
@media(max-width:760px){
  main,main>*,main section,main article,.pro-article-wrap,.nl-pro-wrap,.nl-letter,.article-sheet,.article-body-prose{min-width:0!important;max-width:100%!important}
  main img,main video,main iframe,main canvas,main svg{max-width:100%!important}
  figure{max-width:100%!important;margin-left:0!important;margin-right:0!important}
  .pro-article__hero,.hotfix-article-hero img,.seo-image,.nl-pro-cover,.nl-detail__cover{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
  .blog-pro-item,.newsletter-pro-item{min-width:0!important}
}

/* Fixed mobile bottom bar, safely above browser home-indicator areas. */
@media(max-width:760px){
  body{padding-bottom:calc(var(--aitira-mobile-bottom-h) + env(safe-area-inset-bottom))!important}
  .aitira-mobile-bottom-v17{min-height:var(--aitira-mobile-bottom-h)!important;transition:opacity .18s ease,transform .18s ease!important}
  .aitira-do-dock{bottom:calc(var(--aitira-mobile-bottom-h) + 12px + env(safe-area-inset-bottom))!important}
}
