body{font-family:var(--e-global-typography-text-font-family,"Inter");font-size:var(--e-global-typography-text-font-size,16px);line-height:var(--e-global-typography-text-line-height,1.5em);font-weight:var(--e-global-typography-text-font-weight,400);color:var(--e-global-color-text,#3a3a3a);background:var(--e-global-color-70074f4)}.portfolio-filter{display:flex;flex-wrap:wrap;gap:10px;padding:20px;max-width:1400px;margin:0 auto 30px;justify-content:center;background:var(--e-global-color-9c8a604);border-radius:12px;box-shadow:0 4px 20px rgb(0 0 0 / .08);position:relative;overflow:hidden}a.modal-button{margin:10px 0 0 10px!important}.portfolio-filter button{background:var(--e-global-color-9c8a604);color:var(--e-global-color-text);border:2px solid var(--e-global-color-a257b32);padding:10px 22px;border-radius:50px;font-family:var(--e-global-typography-secondary-font-family);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;z-index:1;height:auto}.portfolio-filter button:hover:after,.portfolio-filter button.active:after{width:200%;height:200%}.portfolio-filter button:hover,.portfolio-filter button.active{color:#3e546e;box-shadow:0 6px 20px rgb(255 107 107 / .3);transform:translateY(-3px);background-color:#edff21}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(372px,340px));gap:30px;padding:30px;max-width:1400px;justify-content:center;margin:0 auto;font-family:var(--e-global-typography-text-font-family);position:relative;min-height:300px}a.view-all-btn{position:relative;font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block;padding:12px 24px;background:#edff21;color:#334a73;text-decoration:none;border-radius:50px;font-family:var(--e-global-typography-accent-font-family);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px rgb(0 0 0 / .2);overflow:hidden;z-index:1}.portfolio-grid.loading:after{content:'';position:absolute;top:50%;left:50%;width:40px;height:40px;border:4px solid var(--e-global-color-accent);border-top-color:#fff0;border-radius:50%;animation:spin 1s linear infinite;transform:translate(-50%,-50%)}.project-card{background:#334a73;border-radius:10px;overflow:hidden;box-shadow:0 6px 25px rgb(0 0 0 / .1);transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s;cursor:pointer;position:relative;transform:perspective(1000px) rotateY(0deg);padding:20px}.project-card:hover{transform:perspective(1000px) rotateY(2deg) translateY(-8px);box-shadow:0 12px 40px rgb(0 0 0 / .15)}.project-card img{width:100%;height:240px;object-fit:cover;border-bottom:2px solid var(--e-global-color-a257b32);transition:transform .5s ease,opacity .3s ease;border-radius:10px!important}.project-card:hover img{transform:scale(1.05);opacity:.95}.project-card-content{padding:8px 0 0 10px;position:relative;z-index:1}.project-card h4{font-family:"Inter",Sans-serif;font-size:25px;font-weight:500;line-height:32px;letter-spacing:0;margin:0 0 14px;color:#fff;padding-top:14px}.project-card p{margin:0;color:#e7e9ed;font-size:18px;line-height:30px;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal{overflow-x:hidden;display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgb(0 0 0 / .6);z-index:10000;overflow-y:auto;align-items:center;justify-content:center;padding:24px;animation:fadeIn .4s ease-out}.modal[style*="display: block"],.modal.active{display:flex;align-items:center;justify-content:center}.modal-content{background:var(--e-global-color-9c8a604);margin:auto;padding:40px;max-width:1280px;max-height:90vh;overflow-y:auto;border-radius:16px;box-shadow:0 12px 50px rgb(0 0 0 / .25);position:relative;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;font-family:var(--e-global-typography-text-font-family);animation:slideIn .5s cubic-bezier(.4,0,.2,1);border:1px solid var(--e-global-color-e5dedae);z-index:10001}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:0 0;border-radius:12px;margin:8px 4px}.modal-content::-webkit-scrollbar-thumb{background:#4a5a6b;border-radius:12px;border:2px solid #fff}.modal-content::-webkit-scrollbar-thumb:hover{background:#4a5a6b}.modal-content>*{position:relative;z-index:1}.modal-close{position:absolute;top:15px;right:15px;font-size:32px;cursor:pointer;color:var(--e-global-color-05fda1c);background:var(--e-global-color-9c8a604);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:2}.modal-close:hover{color:var(--e-global-color-accent);background:var(--e-global-color-primary);transform:rotate(180deg);box-shadow:0 4px 15px rgb(0 0 0 / .2)}.modal-slider{position:relative;overflow:hidden;border-radius:12px;box-shadow:0 4px 20px rgb(0 0 0 / .1);padding-bottom:20px}.modal-slider img{width:100%;height:500px;object-fit:cover;display:none;border-radius:12px;transition:opacity .6s ease,transform .6s ease}.modal-slider img.active{display:block;transform:scale(1);opacity:1}.slider-dots{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);display:flex;gap:12px}.slider-dot{width:14px;height:14px;background:rgb(255 255 255 / .5);border:2px solid var(--e-global-color-9c8a604);border-radius:50%;cursor:pointer;transition:all .3s ease}.slider-dot.active{background:var(--e-global-color-accent);border-color:var(--e-global-color-accent);transform:scale(1.4)}.modal-slider .tags{color:var(--e-global-color-05fda1c);font-size:.95rem;margin:10px 20px;font-style:normal;background:var(--e-global-color-70074f4);padding:8px 16px!important;border-radius:20px;display:inline-block;text-align:left}.modal-slider .modal-button{display:inline-flex;align-items:center;gap:10px;color:#334a73;padding:12px 24px;background-color:#edff21;text-decoration:none;border-radius:50px;transition:all .4s cubic-bezier(.4,0,.2,1);font-family:var(--e-global-typography-accent-font-family);box-shadow:0 4px 15px rgb(0 0 0 / .2);position:relative;overflow:hidden;margin:10px 20px;width:auto;font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:0}.modal-slider .modal-button:after{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:rgb(255 255 255 / .2);border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;z-index:0}.modal-slider .modal-button:hover:after{width:200%;height:200%}.modal-slider .modal-button:hover{background:linear-gradient(135deg,#ff8e53 0%,#ff6b6b 100%);transform:translateY(-4px);box-shadow:0 8px 25px rgb(255 107 107 / .4)}.modal-slider .modal-button i{font-size:1.1rem}.modal-details{padding:30px;background:var(--e-global-color-da56098);border-radius:12px;box-shadow:0 4px 15px rgb(0 0 0 / .05)}.modal-details h2{margin:0 0 20px;font-size:32px;line-height:50px;color:var(--e-global-color-primary);font-family:var(--e-global-typography-primary-font-family);font-weight:var(--e-global-typography-primary-font-weight);letter-spacing:-1px}.modal-details .short-desc{color:var(--e-global-color-05fda1c);line-height:1.8em;margin-bottom:20px;font-size:1rem;font-style:italic;border-left:4px solid var(--e-global-color-accent);padding-left:12px}.modal-details .long-desc{color:var(--e-global-color-text);line-height:1.8em;margin-bottom:20px;font-size:1rem}.modal-details .long-desc:before{content:"Project Details";display:block;font-size:1.15rem;color:var(--e-global-color-primary);margin-bottom:12px;font-weight:600;font-family:var(--e-global-typography-secondary-font-family);text-transform:uppercase}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideIn{from{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0deg)}100%{transform:translate(-50%,-50%) rotate(360deg)}}@media (max-width:1024px){.modal-content{grid-template-columns:1fr;max-width:90%;padding:24px}.modal-slider img{height:360px}}@media (max-width:768px){.portfolio-filter{gap:8px;padding:16px}.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(280px,280px));justify-content:center}.project-card img{height:200px}.modal-slider img{height:280px}.modal-slider .modal-button{width:calc(100% - 40px);justify-content:center}}@media (max-width:480px){.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(260px,260px));justify-content:center}.project-card h4{font-size:1.25rem}.modal-details h2{font-size:1.5rem}.modal-slider .tags,.modal-slider .modal-button{margin:8px 16px}}