*{-webkit-tap-highlight-color:transparent}html,body,#root{position:fixed;top:0;left:0;width:100%;height:100%;overflow:hidden;font-family:Fredoka,sans-serif;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;overscroll-behavior:none}.r3f{touch-action:none}.modal{z-index:999;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:85vmin;max-width:1300px;max-height:1000px;background-color:#ccd9f3;border:3px solid #eef2ff;border-radius:15px;overflow:auto;padding:20px 20px 30px;display:flex;justify-content:center;opacity:0;transform:translate(-50%,-50%) scale(.9);visibility:hidden;animation:none;transition:opacity .25s ease,transform .3s cubic-bezier(.56,.64,.47,1.32);scrollbar-color:rgba(57,110,179,.1) transparent}.modal.active{opacity:1;transform:translate(-50%,-50%) scale(1);visibility:visible;pointer-events:auto}.modal-wrapper{padding:10px 30px}.modal-header{width:100%;display:flex;flex-direction:row;justify-content:space-between}.modal-title{font-weight:600;font-size:32px;color:#3c3a5e;margin:.5em 1rem}.modal-exit-button{font-size:27px;font-weight:700;width:45px;height:45px;margin:8px;border-radius:50%;aspect-ratio:1 / 1;cursor:pointer;background-color:transparent;transition:background-color .2s ease;border:6px solid #3c3a5e;display:flex;align-items:center;justify-content:center}.modal-exit-button:hover{background-color:#f9fbff;font-size:30px}.modal-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.works{position:relative;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;box-shadow:#00000026 3px 3px 3.8px;transition:all .2s ease;will-change:transform;cursor:pointer}.works:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .2s ease;pointer-events:none}.works:hover{transform:scale(1.03)}.works:hover:after{opacity:1}.works img{width:100%;height:auto;object-fit:cover;display:block;touch-action:pan-y;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.modal2{z-index:999;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:85vw;height:90vh;max-width:1300px;max-height:1000px;background-color:#ccd9f3;border:3px solid #eef2ff;border-radius:15px;overflow:auto;padding:20px;display:flex;justify-content:center;opacity:0;transform:translate(-50%,-50%) scale(.9);visibility:hidden;animation:none;transition:opacity .25s ease,transform .3s cubic-bezier(.56,.64,.47,1.32);scrollbar-color:rgba(57,110,179,.1) transparent}.modal2.active{opacity:1;transform:translate(-50%,-50%) scale(1);visibility:visible;pointer-events:auto}.work-image{flex:0 0 50%;max-width:90%;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;box-shadow:#00000026 3px 3px 3.8px}.work-image img{width:100%;height:auto;max-width:700px;object-fit:cover;display:block}.modal2 .modal-wrapper{padding:40px 25px;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:center;gap:4rem}.modal2 .work-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.modal2 .work-detail-images{display:flex;justify-content:space-between;gap:1.5rem}.modal2 .work-detail-images img{aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;box-shadow:#00000026 3px 3px 3.8px}.modal2 .work-detail-images img{width:100%;height:auto;max-width:250px;object-fit:cover;display:block}.modal2 .modal-header{min-width:230px;padding-bottom:25px;flex:1;flex-direction:column}.modal2 .work-description{max-width:520px}.modal2 .modal-exit-button{position:absolute;top:0;right:0;margin:10px}.modal2 h1{font-weight:600;font-size:28px}.modal2 p{font-size:1.1rem}@media(max-width:1024px){.modal2 .modal-wrapper{display:block}.modal2 .work-image{margin:0 auto}.modal2 .work-content{align-items:center}.modal2 .work-title{margin:40px auto 30px;padding:0 15px}.modal2 .work-description{max-width:500px;margin:0 auto 10px;padding:0 15px}.modal2 .work-detail-images{padding-bottom:30px}}@media(max-width:550px){.modal{height:85vh}.modal-image-grid{grid-template-columns:repeat(2,1fr);padding-bottom:20px}.modal2{height:85vh}.modal2 .modal-wrapper{padding:25px}.modal2 .modal-header{padding-bottom:15px}.modal2 .work-title{margin:25px auto 15px}}
