.wsp-card-link{display:block;text-decoration:none;color:inherit;width:100%}.wsp-card{position:relative;aspect-ratio:1/1;overflow:hidden;background:#f5f5f5;isolation:isolate}.wsp-card,.wsp-card__image{width:100%;border-radius:20px}.wsp-card__image{height:100%;object-fit:cover;z-index:0;transition:transform .4s ease}.wsp-card__image,.wsp-card__overlay{position:absolute;inset:0;pointer-events:none}.wsp-card__overlay{border-radius:20px;opacity:0;transition:opacity .3s ease;z-index:1}.wsp-card__overlay-bg{position:absolute;inset:0;background:rgba(43,124,255,.9);border-radius:20px}.wsp-card__inner{position:absolute;inset:30px;flex-direction:column;color:#ffffff}.wsp-card__inner,.wsp-card__top{display:flex;justify-content:space-between}.wsp-card__top{align-items:flex-start;gap:12px}.wsp-card__number,.wsp-card__type{font-family:Freesentation,Pretendard,system-ui,sans-serif;font-weight:500;font-size:14px;line-height:normal;color:#ffffff}.wsp-card__type{text-align:right}.wsp-card__bottom{display:flex;flex-direction:column;gap:6px;align-items:flex-start;width:100%}.wsp-card__title-row{display:flex;gap:8px;align-items:center}.ws-portfolio-page .wsp-card__title,.wsp-card .wsp-card__title{margin:0;font-family:Freesentation,Pretendard,system-ui,sans-serif;font-weight:600;font-size:28px;line-height:normal;color:#ffffff;white-space:nowrap}.wsp-card__arrow{flex-shrink:0;width:16px;height:16px;color:#ffffff}.ws-portfolio-page .wsp-card__desc,.wsp-card .wsp-card__desc{margin:0;font-family:Freesentation,Pretendard,system-ui,sans-serif;font-weight:400;font-size:16px;line-height:normal;color:#ffffff}.wsp-card-link:focus-visible .wsp-card__overlay,.wsp-card-link:hover .wsp-card__overlay{opacity:1}.wsp-card-link:focus-visible .wsp-card__image,.wsp-card-link:hover .wsp-card__image{transform:scale(1.04)}@media (max-width:1024px){.wsp-card__title{font-size:24px}.wsp-card__desc{font-size:14px}.wsp-card__inner{inset:24px}}@media (max-width:600px){.wsp-card__title{font-size:20px}.wsp-card__desc{font-size:14px}.wsp-card__number,.wsp-card__type{font-size:13px}.wsp-card__inner{inset:20px}.wsp-card__overlay{opacity:1}.wsp-card__overlay-bg{background:linear-gradient(180deg,rgba(5,12,26,0) 42%,rgba(5,12,26,.82))}.wsp-card__inner{justify-content:flex-end}.wsp-card__top{display:none}}.wsp-preview{position:fixed;inset:0;z-index:100000;background:rgba(10,16,36,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:40px;animation:wspPreviewFade .25s ease-out}@keyframes wspPreviewFade{0%{opacity:0}to{opacity:1}}.wsp-preview__stage{display:flex;gap:48px;align-items:center;max-width:1000px;width:100%;animation:wspPreviewRise .35s cubic-bezier(.22,1,.36,1)}.wsp-preview--laptop .wsp-preview__stage{max-width:1280px}@keyframes wspPreviewRise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.wsp-preview__meta{flex:1;display:flex;flex-direction:column;gap:32px;color:#ffffff;min-width:0}.wsp-preview__title-block{display:flex;flex-direction:column;gap:12px}.wsp-preview__eyebrow{font-family:Freesentation,Pretendard,system-ui,sans-serif;font-size:14px;font-weight:500;letter-spacing:.02em;color:rgba(255,255,255,.72)}.wsp-preview .wsp-preview__title{font-size:32px;font-weight:600;line-height:1.2;color:#ffffff;letter-spacing:-.02em}.wsp-preview .wsp-preview__desc,.wsp-preview .wsp-preview__title{margin:0;font-family:Freesentation,Pretendard,system-ui,sans-serif}.wsp-preview .wsp-preview__desc{font-size:16px;font-weight:400;line-height:1.6;color:rgba(255,255,255,.72)}.wsp-preview__actions{display:flex;gap:12px;align-items:center}.wsp-preview__open{display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:999px;background:#55a1fd;color:#ffffff;font-family:Freesentation,Pretendard,system-ui,sans-serif;font-size:15px;font-weight:500;text-decoration:none;letter-spacing:-.01em;transition:background .2s ease,transform .2s ease}.wsp-preview__open:hover{background:#3d8ff0;transform:translateY(-1px)}.wsp-preview__close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#ffffff;font-size:22px;cursor:pointer;transition:background .2s ease,border-color .2s ease}.wsp-preview__close:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5)}.wsp-preview__phone{position:relative;flex-shrink:0;width:399px;height:812px;background:#0a1024;border-radius:48px;padding:12px;box-shadow:0 0 0 3px #1a2143,0 30px 60px -20px rgba(0,0,0,.7)}.wsp-preview__notch{position:absolute;top:24px;left:50%;transform:translateX(-50%);width:108px;height:28px;background:#0a1024;border-radius:999px;z-index:2;pointer-events:none}.wsp-preview__statusbar{position:absolute;top:0;left:0;right:0;height:46px;padding:12px 26px 0;z-index:3;pointer-events:none;display:flex;align-items:center;justify-content:space-between;color:#000;background:rgba(255,255,255,.85);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Pretendard,system-ui,sans-serif;font-size:15px;font-weight:600;letter-spacing:-.02em;line-height:1}.wsp-preview__statusbar-time{padding-left:4px}.wsp-preview__statusbar-icons{display:inline-flex;align-items:center;gap:5px}.wsp-preview__statusbar-battery{position:relative;display:inline-block;width:25px;height:12px;border:1px solid;border-radius:3px;margin-left:2px}.wsp-preview__statusbar-battery:after{content:"";position:absolute;top:3px;right:-3px;width:2px;height:4px;border-radius:0 1px 1px 0;background:currentColor}.wsp-preview__statusbar-battery-fill{position:absolute;top:1.5px;left:1.5px;right:1.5px;bottom:1.5px;background:currentColor;border-radius:1.5px}.wsp-preview__home-indicator{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);width:128px;height:4px;background:rgba(255,255,255,.6);border-radius:999px;z-index:2;pointer-events:none}.wsp-preview__screen{position:relative;width:100%;height:100%;border-radius:38px;overflow:hidden;background:#ffffff;-webkit-overflow-scrolling:touch;touch-action:pan-y}.wsp-preview__iframe{width:100%;height:100%;border:0;display:block;touch-action:pan-y}.wsp-preview__phone .wsp-preview__iframe{width:100%;height:calc(100% - 46px);margin-top:46px}.wsp-preview__laptop{position:relative;flex-shrink:0;width:780px;display:flex;flex-direction:column;align-items:center;filter:drop-shadow(0 30px 60px rgba(0,0,0,.5))}.wsp-preview__laptop-body{position:relative;width:100%;background:#0a1024;border-radius:14px 14px 4px 4px;padding:24px 18px 18px;box-shadow:inset 0 0 0 2px #1a2143}.wsp-preview__laptop-camera{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:6px;height:6px;border-radius:999px;background:#2a3560;pointer-events:none}.wsp-preview__laptop .wsp-preview__screen{position:relative;width:100%;aspect-ratio:16/10;border-radius:6px;overflow:hidden;background:#ffffff;container-type:size}.wsp-preview__laptop .wsp-preview__iframe{position:absolute;top:0;left:0;width:1440px;height:900px;border:0;transform-origin:top left;transform:scale(calc(100cqw / 1440px))}.wsp-preview__laptop-base{position:relative;width:108%;height:14px;background:linear-gradient(180deg,#1a2143,#0a1024);border-radius:0 0 20px 20px;margin-top:2px;box-shadow:0 8px 20px -8px rgba(0,0,0,.4)}.wsp-preview__laptop-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:84px;height:6px;background:#050818;border-radius:0 0 8px 8px}@media (max-width:900px){.wsp-preview__laptop{width:min(90vw,640px)}.wsp-preview{padding:20px}.wsp-preview__stage{flex-direction:column-reverse;gap:24px;align-items:stretch}.wsp-preview__phone{align-self:center;width:min(351px,100%);height:min(712px,calc(100vh - 260px))}.wsp-preview__meta{text-align:left;gap:20px}.wsp-preview .wsp-preview__title{font-size:24px}.wsp-preview .wsp-preview__desc{font-size:14px}.wsp-preview__notch{top:16px;width:90px;height:22px}.wsp-preview__home-indicator{bottom:12px;width:96px;height:3px}.wsp-preview__screen{border-radius:32px}}.wsp-video{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(10,10,10,.82)}.wsp-video__stage{display:flex;flex-direction:column;gap:12px;width:min(420px,calc((100vh - 140px) * 9 / 16),100%)}.wsp-video__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;color:#fff}.wsp-video__title{margin:0;font-size:16px;font-weight:600}.wsp-video__desc{margin:4px 0 0;font-size:13px;opacity:.75}.wsp-video__close{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:22px;line-height:1;cursor:pointer}.wsp-video__frame{position:relative;width:100%;aspect-ratio:9/16;overflow:hidden;border-radius:12px;background:#000}.wsp-video__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.ws-portfolio-page{min-height:100vh;background:transparent}.wsp-section{padding:91px 0 96px}.wsp-container{width:100%;max-width:1440px;margin:0 auto;padding:0 60px}.wsp-filter{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:30px;padding-top:60px}.wsp-filter,.wsp-filter__pill{align-items:center;justify-content:center}.wsp-filter__pill{display:inline-flex;padding:9px 18px;border-radius:999px;border:1px solid #55a1fd;background:#ffffff;color:#55a1fd;font-family:Freesentation,Pretendard,system-ui,sans-serif;font-size:16px;font-weight:500;line-height:normal;letter-spacing:-.01em;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.wsp-filter__pill:hover{transform:translateY(-1px)}.wsp-filter__pill.is-active{background:#55a1fd;color:#ffffff;border-color:#55a1fd}.wsp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.wsp-empty{padding:clamp(56px,8vh,96px) 24px;text-align:center;border:1px dashed rgba(5,8,24,.15);border-radius:20px;background:rgba(5,8,24,.02)}.wsp-empty__title{margin:0 0 8px;font-size:20px;font-weight:500;color:#000}.wsp-empty__desc,.wsp-empty__title{font-family:Freesentation,Pretendard,system-ui,sans-serif;letter-spacing:-.01em}.wsp-empty__desc{margin:0;font-size:15px;color:#4c4c4c}.wsp-case{margin-top:60px}.wsp-case__header{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;margin-bottom:16px}.ws-portfolio-page .wsp-case__title{font-size:20px;font-weight:600;line-height:1.3;color:#000}.ws-portfolio-page .wsp-case__desc,.ws-portfolio-page .wsp-case__title{margin:0;font-family:Freesentation,Pretendard,system-ui,sans-serif;letter-spacing:-.01em}.ws-portfolio-page .wsp-case__desc{font-size:15px;line-height:1.5;color:#4c4c4c}.wsp-case__list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(0,0,0,.08)}.wsp-case__item{border-bottom:1px solid rgba(0,0,0,.08)}.ws-portfolio-page .wsp-case__link{display:flex;align-items:center;gap:16px;padding:16px 4px;color:inherit;text-decoration:none;transition:background .15s ease,padding .15s ease}.ws-portfolio-page .wsp-case__link:focus-visible,.ws-portfolio-page .wsp-case__link:hover{background:#f5f8ff;padding-left:12px;padding-right:12px}.wsp-case__tag{flex-shrink:0;padding:4px 10px;border-radius:999px;background:rgba(85,161,253,.1);color:#2b7cff;font-size:12px;line-height:normal;white-space:nowrap}.wsp-case__tag,.wsp-case__text{font-family:Freesentation,Pretendard,system-ui,sans-serif;font-weight:500}.wsp-case__text{flex:1;min-width:0;font-size:16px;line-height:1.5;color:#000;letter-spacing:-.01em}.wsp-case__arrow{flex-shrink:0;color:#55a1fd;font-size:16px;opacity:0;transform:translateX(-4px);transition:opacity .2s ease,transform .2s ease}.ws-portfolio-page .wsp-case__link:focus-visible .wsp-case__arrow,.ws-portfolio-page .wsp-case__link:hover .wsp-case__arrow{opacity:1;transform:translateX(0)}.ws-detail-modal{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:99999;display:flex;align-items:flex-start;justify-content:center;padding:48px;overflow-y:auto;animation:wspFadeIn .3s ease-out}@keyframes wspFadeIn{0%{opacity:0}to{opacity:1}}.ws-detail-modal__content{position:relative;max-width:600px;width:100%}.ws-detail-modal__close{position:fixed;top:16px;right:16px;width:48px;height:48px;background:rgba(255,255,255,.1);border:none;border-radius:50%;color:#ffffff;font-size:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;z-index:100000}.ws-detail-modal__close:hover{background:rgba(255,255,255,.2)}.ws-detail-modal__image{width:100%;height:auto;border-radius:12px;display:block}@media (max-width:1200px){.wsp-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.wsp-container{padding:0 32px}.wsp-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media (max-width:600px){.wsp-section{padding:103px 0 60px}.wsp-container,.wsp-filter{padding:0 16px}.wsp-filter{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;gap:8px;margin-left:-16px;margin-right:-16px;margin-bottom:20px;scroll-snap-type:x proximity}.wsp-filter::-webkit-scrollbar{display:none}.wsp-filter__pill{flex-shrink:0;padding:8px 16px;font-size:15px;scroll-snap-align:start}.wsp-grid{grid-template-columns:1fr;gap:16px}.wsp-case{margin-top:40px}.ws-portfolio-page .wsp-case__link{flex-wrap:wrap;gap:8px;padding:14px 4px}.wsp-case__text{flex-basis:100%;font-size:15px}.wsp-case__arrow{display:none}.ws-detail-modal{padding:16px}}