@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap";
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_2ae47f08-module__h69qWW__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_2ae47f08-module__h69qWW__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_eb58308d-module__w_p2Lq__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_eb58308d-module__w_p2Lq__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
html{scroll-behavior:smooth}body{color:#333;background-color:#fff;margin:0;padding:0;font-family:Montserrat,sans-serif;font-weight:300;line-height:1.6;overflow-x:hidden}.main-header{text-align:center;background:#fff;justify-content:center;align-items:center;width:100%;padding:30px 0 10px;display:flex}.main-header .logo{color:#000;cursor:pointer;letter-spacing:2px;margin:0 auto;font-size:32px;font-weight:600;text-decoration:none;display:inline-block}nav{z-index:100;background:#fff;border-bottom:1px solid #f0f0f0;justify-content:center;align-items:center;height:40px;padding:0 30px;display:flex;position:sticky;top:0}.nav-links{gap:30px;height:100%;display:flex}.nav-links a{color:#888;cursor:pointer;letter-spacing:1px;text-transform:uppercase;align-items:center;height:100%;font-size:14px;font-weight:400;text-decoration:none;transition:color .3s;display:flex;position:relative}.nav-links a.active,.nav-links a:hover{color:#000}.nav-links a:after{content:"";background-color:#000;width:0;height:1.5px;transition:width .3s;position:absolute;bottom:-1px;left:0}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.social-icons{gap:15px;display:flex;position:absolute;right:30px}.social-icons a{color:#888;font-size:16px;text-decoration:none;transition:color .3s}.social-icons a:hover{color:#ff6b35}.hamburger{cursor:pointer;z-index:101;flex-direction:column;gap:6px;display:none}.hamburger span{background:#000;width:25px;height:2px;transition:all .3s}.page-section{max-width:1000px;margin:0 auto;padding:20px 20px 60px;animation:.5s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-header{text-align:center;margin-bottom:50px}.section-header h1{text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;font-size:36px;font-weight:400}.section-header p{color:#666;font-size:15px;font-weight:300}#portfolio{box-sizing:border-box;max-width:1400px;margin:0 auto;padding-top:40px;padding-left:20px;padding-right:20px}.portfolio-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:40px;padding:0 10px;display:flex}.portfolio-guide{color:#666;letter-spacing:.5px;margin:0 0 25px;font-size:15px;font-weight:400;line-height:1.5}.filter-btn{appearance:none;color:#888;cursor:pointer;background:0 0;border:0;border-radius:0;outline:none;padding:15px 8px 5px;font-family:Montserrat,sans-serif;font-size:13px;line-height:1;transition:all .2s}.filter-btn:hover{color:#333}.filter-btn.active{color:#ff6b35;border-bottom:1.2px solid #ff6b35;font-weight:450}.masonry{column-count:4;column-gap:15px}.masonry-item{break-inside:avoid;cursor:pointer;border-radius:4px;margin-bottom:15px;display:block;position:relative;overflow:hidden}.masonry-item img{width:100%;height:auto;transition:transform .4s;display:block}.masonry-item:hover img{transform:scale(1.05)}.masonry-item p{box-sizing:border-box;color:#fff;opacity:0;text-align:center;z-index:2;background-color:#ff6b35b3;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:20px;transition:all .3s;display:flex;position:absolute;inset:0;margin:0!important}.masonry-item p .item-title{letter-spacing:1px;font-size:18px;font-weight:600;line-height:1.3}.masonry-item p .item-location{opacity:.9;text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:300}.masonry-item:hover p{opacity:1}.modal{z-index:1000;opacity:0;background-color:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.modal.show{opacity:1;display:flex}.modal-content{text-align:center;scrollbar-width:thin;scrollbar-color:#ddd transparent;background:#fff;border-radius:8px;width:85%;max-width:1000px;max-height:calc(100vh - 120px);padding:20px 30px;transition:transform .3s;position:relative;overflow-y:auto;transform:translateY(20px)}.modal-content::-webkit-scrollbar{width:5px}.modal-content::-webkit-scrollbar-track{background:0 0}.modal-content::-webkit-scrollbar-thumb{background-color:#ddd;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background-color:#bbb}.modal.show .modal-content{transform:translateY(0)}.close-btn{color:#555;cursor:pointer;z-index:1100;background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:22px;transition:all .2s;display:flex;position:fixed;top:25px;right:25px;box-shadow:0 4px 12px #00000026}.close-btn:hover{color:#ff6b35;background-color:#f8f8f8;transform:scale(1.1)rotate(90deg)}.modal-detail-img{border-radius:4px;width:auto;max-width:100%;height:auto;max-height:80vh;margin:0 auto 25px;display:block}.modal-detail-img:last-child{margin-bottom:0}#modal-title{font-size:26px;font-weight:500}.dummy-box{text-align:center;background:#f9f9f9;border-radius:8px;margin-bottom:20px;padding:40px}.dummy-box h3{margin-top:0;font-size:22px;font-weight:500}.dummy-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (max-width:1200px){.masonry{column-count:3}}@media (max-width:900px){nav{justify-content:space-between;padding:0 20px}.social-icons{position:static}.masonry{column-count:2}.about-content{text-align:center;flex-direction:column}.about-content img{width:80%}.dummy-grid{grid-template-columns:1fr}.hamburger{display:flex}.nav-links{background:#fff;flex-direction:column;align-items:center;gap:10px;width:100%;height:auto;max-height:0;padding:0;transition:all .4s;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 10px 10px #0000000d}.nav-links.open{border-bottom:1px solid #eee;max-height:100vh;padding:20px 0;overflow-y:auto}.nav-links a{justify-content:center;width:100%;height:auto;padding:10px 0}.nav-links a:after{display:none}.hamburger.active span:first-child{transform:translateY(8px)rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}}@media (max-width:600px){.masonry{column-count:1}.portfolio-header{flex-direction:column;align-items:center;gap:20px}.filters a{margin:0 10px}.modal-content{padding:30px 20px}}.location-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;margin-top:20px;display:grid}.location-card{text-align:left;background:#fff;border-radius:8px;flex-direction:column;transition:transform .3s;display:flex;overflow:hidden;box-shadow:0 4px 15px #0000000d}.location-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000001a}.location-img{object-fit:cover;width:100%;height:200px}.location-info{flex-direction:column;flex-grow:1;padding:25px;display:flex}.location-info h3{margin:0 0 10px;font-size:20px;font-weight:500}.location-info p{color:#666;flex-grow:1;margin:0 0 20px;font-size:14px;line-height:1.5}.go-portfolio-btn{color:#ff6b35;text-transform:uppercase;letter-spacing:1px;cursor:pointer;align-self:flex-start;font-size:13px;font-weight:500;text-decoration:none;transition:color .3s;display:inline-block}.go-portfolio-btn:hover{color:#000}.go-portfolio-btn i{margin-left:5px;transition:transform .3s}.go-portfolio-btn:hover i{transform:translate(5px)}.contact-container{text-align:left;grid-template-columns:1fr 1fr;gap:40px;margin-top:20px;display:grid}.contact-info h3{margin-top:0;margin-bottom:15px;font-size:24px;font-weight:500}.contact-info p{color:#555;margin-bottom:15px;font-size:15px;line-height:1.6}.spam-notice{color:#666;background-color:#fdf5f2;border-left:3px solid #ff6b35;border-radius:4px;align-items:flex-start;gap:10px;margin:25px 0;padding:15px;font-size:13px;display:flex}.spam-notice i{color:#ff6b35;margin-top:2px}.direct-contact{border-top:1px solid #eee;margin-top:30px;padding-top:20px}.direct-contact p{color:#333;margin-bottom:15px;font-weight:500}.direct-contact ul{margin:0;padding:0;list-style:none}.direct-contact li{color:#ff6b35;align-items:center;gap:10px;margin-bottom:10px;display:flex}.direct-contact a{color:#555;font-size:14px;text-decoration:none;transition:color .3s}.direct-contact a:hover{color:#ff6b35}.contact-form-box{background:#f9f9f9;border-radius:8px;padding:40px}.form-guide{color:#ff6b35;margin-top:0;margin-bottom:25px;font-size:14px;font-weight:500;line-height:1.5}.form-group{margin-bottom:20px}.form-group label{color:#333;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px;font-weight:500;display:block}.form-group input,.form-group textarea{color:#333;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:4px;width:100%;padding:12px 15px;font-family:inherit;font-size:14px;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{border-color:#ff6b35;outline:none}.submit-btn{color:#fff;text-transform:uppercase;letter-spacing:1px;cursor:pointer;background:#333;border:none;border-radius:4px;width:100%;padding:15px;font-family:inherit;font-size:14px;font-weight:500;transition:background .3s}.submit-btn:hover{background:#ff6b35}.about-wrapper{flex-direction:column;gap:60px;margin-top:30px;display:flex}.about-hero{align-items:flex-start;gap:50px;display:flex}.about-hero-img{object-fit:cover;border-radius:4px;width:40%;position:sticky;top:80px;box-shadow:0 10px 30px #0000000d}.about-hero-text{text-align:left;width:60%}.about-hero-text h2{color:#111;margin:0 0 25px;font-size:24px;font-weight:500;line-height:1.5}.about-hero-text p{color:#555;margin-bottom:20px;font-size:15px;font-weight:300;line-height:1.8}.about-service-info{text-align:left;background:#fdfdfd;border:1px solid #eee;border-radius:8px;padding:40px}.about-service-info h3{color:#333;text-transform:uppercase;letter-spacing:1px;margin-top:0;margin-bottom:20px;font-size:18px;font-weight:500}.about-service-info p{color:#555;margin-bottom:15px;font-size:15px;line-height:1.7}.about-service-info p:last-child{margin-bottom:0}.about-resume-grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.resume-col h4{color:#000;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid #ddd;margin-bottom:20px;padding-bottom:10px;font-size:15px;font-weight:500}.resume-col ul{margin:0;padding:0;list-style:none}.resume-col li{color:#666;margin-bottom:20px;font-size:13.5px;line-height:1.5}.resume-col li span{color:#ff6b35;margin-bottom:5px;font-size:12px;font-weight:500;display:block}.about-philosophy{text-align:center;background-color:#fafafa;border-radius:8px;padding:50px}.about-philosophy h3{text-transform:uppercase;letter-spacing:1.5px;margin:0 0 20px;font-size:22px;font-weight:500}.about-philosophy p{color:#555;max-width:800px;margin:0 auto 15px;font-size:15px;line-height:1.8}.about-philosophy p:last-child{margin-bottom:0}@media (max-width:900px){.about-hero{flex-direction:column;gap:30px}.about-hero-img{width:100%;position:static}.about-hero-text{width:100%}.about-resume-grid{grid-template-columns:1fr;gap:40px}}.in-text-img{object-fit:cover;border-radius:4px;width:100%;max-height:450px;margin:40px 0;display:block;box-shadow:0 4px 15px #0000000d}.about-gallery{grid-template-columns:repeat(3,1fr);gap:20px;width:80%;margin:20px auto;display:grid}.about-gallery img{aspect-ratio:3/4;object-fit:cover;border-radius:4px;width:100%;transition:transform .4s;box-shadow:0 4px 10px #00000008}.about-gallery img:hover{z-index:1;position:relative;transform:scale(1)}@media (max-width:768px){.about-gallery{grid-template-columns:repeat(2,1fr);gap:10px;width:100%;margin:10px auto}.contact-container{grid-template-columns:1fr}.contact-form-box{padding:30px 20px}}.vimeo-responsive-wrapper{border-radius:8px;height:0;margin:40px 0;padding-bottom:56.25%;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000001a}.vimeo-responsive-wrapper iframe{width:100%;height:100%;position:absolute;top:0;left:0}.portfolio-detail-wrapper{text-align:center;flex-direction:column;align-items:center;max-width:1000px;margin:0 auto;padding:20px 20px 60px;animation:.5s fadeIn;display:flex}.detail-header{text-align:left;max-width:850px;margin:0 auto 70px}.detail-header h1{text-transform:uppercase;letter-spacing:2.5px;margin-bottom:15px;margin-left:0;font-size:36px;font-weight:400}.detail-header p{white-space:pre-wrap;color:#191919;font-size:15px;font-weight:300;line-height:1.8}.detail-location{color:#ff6b35;letter-spacing:2px;justify-content:flex-start;align-items:center;gap:8px;margin-bottom:25px;font-size:13px;display:flex}.detail-location i{opacity:.8;font-size:11px}.detail-header p{color:#1f1f1f;white-space:pre-wrap;margin-left:0;font-size:15.5px;font-weight:300;line-height:1.85}.detail-image-list{flex-direction:column;align-items:center;gap:50px;width:100%;display:flex}.detail-img{border-radius:2px;width:auto;max-width:800px;height:auto;max-height:85vh;display:block;box-shadow:0 10px 40px #00000008}.portfolio-footer-nav{border-top:none;width:100%;margin-top:120px;padding:40px 0}.footer-nav-container{justify-content:space-between;align-items:center;max-width:450px;margin:0 auto;display:flex}.nav-link{color:#bbb;align-items:center;gap:12px;text-decoration:none;transition:color .3s;display:flex}.nav-label{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:400}.nav-link i{font-size:16px}.nav-box.home .nav-link i{color:#333;font-size:22px}.nav-link:hover{color:#ff6b35}.nav-link.disabled{color:#eee;cursor:default}@media (max-width:600px){.nav-label{display:none}.footer-nav-container{max-width:280px}.detail-img{max-height:70vh}}.skeleton-wrapper.loading{background:linear-gradient(90deg,#f5f5f5 25%,#eaeaea 50%,#f5f5f5 75%) 0 0/200% 100%;border-radius:4px;justify-content:center;align-items:center;width:100%;min-height:100px;animation:1.5s linear infinite pulse;display:flex;position:relative;overflow:hidden}.skeleton-wrapper.loaded{background:0 0!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;animation:none!important;display:block!important}.masonry-img{width:100%;height:auto;display:block}.masonry-img.hide{opacity:0}.masonry-img.show{opacity:1;transition:opacity .6s}.masonry-item{cursor:pointer;border-radius:4px;display:block;position:relative;overflow:hidden;background-color:#0000!important;margin-bottom:15px!important}
