/* ---------- 반응형 (≤1100 태블릿 / ≤860 / ≤640 모바일) ---------- */
@media (max-width:1100px){
  .header .wrap{--hx:24px}
  .cases__page{grid-template-columns:1fr}
  .quick{display:none}
  .fcard b{font-size:18px}
  .fcard span{font-size:14.5px}
  .lcard{flex-basis:calc((100% - 32px)/3)}
  .lcard__cap{flex-direction:column;align-items:flex-start;gap:0;padding:28px 14px 12px}
  .lcard__cap b{font-size:17px}
  .lcard__cap span{font-size:12.5px}
}
@media (max-width:860px){
  .sgrid{grid-template-columns:repeat(2,1fr);gap:20px}
  .sitem:nth-child(3n+2){transform:none}
  .sitem:nth-child(even){transform:translateY(70px)}
  .js .sitem:nth-child(n){transition-delay:0s}
  .js .sitem:nth-child(even){transition-delay:.14s}
  .versus{flex-direction:column;--ring:min(340px,82vw)}
  .varrow{flex:0 0 auto;width:24px;height:55px;margin:22px 0}
  .varrow svg{transform:rotate(90deg);width:55px;height:24px;margin:15.5px -15.5px}
  .cases__page{grid-template-columns:1fr}
  .band__in{flex-direction:column;text-align:center;--bx:24px;padding-block:56px}
  .start{grid-template-columns:1fr}
  .header__tel{display:none}
  .footer .wrap{grid-template-columns:1fr;gap:28px}
  .footer .links{margin-top:0}
}
@media (max-width:640px){
  :root{--hh:64px;--tgap:36px;--sp:64px}
  body{font-size:16px}
  .m-br{display:inline}
  .pc-br{display:none}
  .wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
  .header .wrap{--hx:16px}
  .logo__svg{height:28px}
  .logo{gap:10px}
  .logo span{font-size:15px;padding:4px 0 4px 10px}
  .header .btn,.header__tel{display:none!important}
  .hero{min-height:calc(100svh - var(--hh) - 74px);padding-block:56px}
  .hero h1{font-size:clamp(29px,8.4vw,34px);line-height:1.45}
  .hero__stat{margin-top:40px;gap:14px}
  .hero__stat strong{font-size:42px}
  .hero__stat strong small{font-size:16px}
  .hero__stat p{font-size:14px;padding-left:14px}
  .hero__stat p b{font-size:16.5px}
  .hero__cta{margin-top:36px}
  .hero__cta p{font-size:13px}
  .h2{font-size:26px}
  .lead{font-size:15.5px;line-height:1.65}
  .btn{height:56px;padding:0 24px;font-size:16px}
  .cta-row{margin-top:40px}
  .sgrid{grid-template-columns:1fr;gap:12px;padding-bottom:0}
  .sitem:nth-child(n){transform:none}
  .js .sitem:nth-child(n){transition-delay:0s}
  .sitem{min-height:0;padding:26px 22px}
  .sitem__no{font-size:30px}
  .sitem{min-height:300px}
  .sitem__img{width:66%}
  .sitem h3{padding-top:90px;font-size:20px}
  .sitem p{font-size:14.5px}
  .situ__foot,.tf__close{margin-top:40px;font-size:20px}
  .quotes{gap:16px}
  .quotes p{font-size:16px;padding:14px 20px;border-radius:22px;max-width:88%;text-align:center}
  .no{margin-top:36px}
  .myth__fact{font-size:15.5px}
  .versus{margin-top:48px;--ring:min(320px,84vw)}
  .vring__ic svg{width:32px;height:32px}
  .vring h3{font-size:21px}
  .vring__body{translate:0 -16px}
  .vring p{font-size:14px}
  .myth__close{margin-top:44px;font-size:21px}
  .filters{margin-top:32px;gap:6px;flex-wrap:nowrap}
  .filter{height:42px;padding:0 15px;font-size:13.5px;white-space:nowrap}
    .cases__view{margin-top:28px}
  .cases__page{gap:12px}
  .tf{grid-template-columns:1fr;gap:12px}
  .vcard{grid-template-columns:1fr;min-height:0}
  .vcard__doc{padding:20px 20px 18px}
  .vcard__doc i{max-width:180px}
  .vcard__doc img{max-height:260px}
  .vcard__body{padding:20px}
  .vcard__sum{margin-top:8px}
  .vcard details{margin-top:12px}
  .vcard__res{padding-top:18px}
  .vcard h3{font-size:18px}
  .vcard__sum{font-size:14.5px}
  .vcard__res span{font-size:clamp(17px,calc((100cqi - 42px) / 11.8),24px)}
  .vcard__res svg{flex-basis:24px;width:24px;height:24px}
  .cases__nav{margin-top:20px}
  .cases__hint{display:block}
  .tf__fig{height:300px}
  .tf__badge{right:20px;transform:scale(.8);transform-origin:top right}
  .tf__body{padding:24px 22px 28px}
  .tf__name{font-size:28px}
  .tf__track{margin-top:20px;padding-block:20px;gap:12px}
  .tf__track li{font-size:15px}
  .tf__goal{margin-top:20px}
  .mats{margin-top:64px}
  .mats h3{font-size:22px}
  .flow{margin-top:28px;margin-inline:-16px}
  .flow__tabs{display:flex;gap:12px;overflow:hidden;padding:0 16px}
  .flow__tabs::after{left:16px;right:16px}
  .flow__tab,.flow__tab.on{flex:0 0 72%;height:48px;color:var(--pt)}
  .flow__tab::after,.flow__tab.on::after{transform:scaleX(1);transition:none}
  .flow__cards{margin-top:16px;display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 16px 4px}
  .flow__cards::-webkit-scrollbar{display:none}
  .fcard,.fcard.on{flex:0 0 72%;scroll-snap-align:center;opacity:1;background:var(--card-2);min-height:140px}
  .team{margin-top:56px}
  .team__list{gap:12px}
  .team__list{gap:14px!important;justify-content:flex-start}
  .lcard{flex-basis:calc((100% - 14px)/2)}
  .lcard__cap{flex-direction:row;align-items:baseline;gap:6px;padding:40px 16px 14px}
  .lcard__cap b{font-size:17px}
  .lcard__cap span{font-size:12.5px}
  .team__more{display:flex;justify-content:center;margin-top:-6px;position:relative}
  .team__more[hidden]{display:none}
  .band__in{--bx:16px}
  .band h2{font-size:24px}
  .band__act{width:96px;height:96px;font-size:13px}
  .offer__note{font-size:12.5px}
  .start{margin-top:44px;gap:12px}
  .start__item{padding:32px 22px}
  .start__mk{width:62px;height:62px;font-size:20px}
  .start__item h3{font-size:20px;margin-top:16px}
  .start__item p{font-size:14.5px}
  .faq__q{grid-template-columns:30px minmax(0,1fr) 24px;padding:22px 4px}
  .faq__q span{font-size:16.5px}
  .faq__a{grid-template-columns:1fr}
  .faq__a>div{grid-column:1}
  .faq__a p{padding:18px 20px;font-size:15px}
  .areas{padding:4px 20px}
  .areas dl{grid-template-columns:1fr;gap:2px}
  .areas dd{margin-bottom:10px}
  .final{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-bottom:16px}
  .final__in{padding:80px 16px 72px;border-radius:24px}
  .final h2{font-size:26px}
  .final__lab{margin-top:36px}
  .cform{padding:22px 18px 18px}
  .cform__grid{grid-template-columns:1fr}
  .cform .btn{width:100%;justify-content:center}
  .footer{padding-block:44px 40px;font-size:13px}
  .footer .wrap{gap:20px}
  .footer .links{margin-top:4px;padding-top:18px}
  .footer dl{grid-template-columns:1fr;gap:0}
  .footer dd{margin:0 0 8px}
}
