body{font-family:Inter,sans-serif;color:$text-color!important}body,html{height:100%;margin:0}body{margin:0;font-family:var(--font-poppins),sans-serif;overflow-x:hidden;color:#313131;background-color:#fff;line-height:1.6;padding:0;flex-direction:column}body,main{min-height:100vh;display:flex}main{flex:1 0 auto;flex-direction:column}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6{color:#616161}h2,h3{font-weight:600}a{color:#dddcb8;text-decoration:none}a:hover{text-decoration:underline}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.sections{padding:40px 0}.nav__link{color:#dddcb8;text-decoration:none;transition:color .2s ease}.nav__link:hover{color:#fff;text-decoration:none}.nav__link:visited{color:#d4af37}.nav-link-custom:active,.nav__link:active{color:#fff!important}.nav-link-custom:visited{color:#fff}.navbar-custom{background-color:rgba(0,0,0,0);transition:background-color .3s ease,box-shadow .3s ease;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}@media(min-width:992px){.navbar-custom .navbar-brand img{width:200px!important;height:200px!important;transition:all .3s ease}}@media(max-width:991px){.navbar-custom .navbar-brand img{width:100px!important;height:100px!important;transition:all .3s ease}.navbar-custom .navbar-collapse{background-color:#fff;padding:.5rem;border-radius:8px;margin:-.5rem 0 0;box-shadow:0 4px 6px rgba(0,0,0,.1)}.navbar-custom .navbar-collapse .nav-link{color:#d4af37!important}.navbar-custom .navbar-collapse .nav-link:hover{color:#1b3a1b!important}}.navbar-custom .navbar-toggler-icon span,.navbar-custom .navbar-toggler-icon:after,.navbar-custom .navbar-toggler-icon:before{background-color:#fff}.navbar-custom .nav-link{color:#fff;font-size:1.2rem}.navbar-custom .nav-link:hover{color:#d4af37;text-decoration:none}.navbar-scrolled{background-color:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 6px rgba(0,0,0,.1)}@media(min-width:992px){.navbar-scrolled .navbar-brand img{width:100px!important;height:100px!important}}@media(max-width:991px){.navbar-scrolled .navbar-brand img{width:80px!important;height:80px!important}.navbar-scrolled .navbar-collapse{background-color:rgba(0,0,0,0);padding:.5rem;margin:-.5rem 0 0;box-shadow:none}.navbar-scrolled .navbar-collapse .nav-link{color:#d4af37!important}.navbar-scrolled .navbar-collapse .nav-link:hover{color:#1b3a1b!important}}.navbar-scrolled .nav-link{color:#d4af37}.navbar-scrolled .nav-link:hover{color:#1b3a1b}.navbar-scrolled .navbar-brand{color:#000}.navbar-toggler{border:none;padding:.5rem;background-color:rgba(0,0,0,0)}.navbar-toggler:focus{outline:none;box-shadow:none}.navbar-toggler:hover{background-color:hsla(0,0%,100%,.1);border-radius:8px}.navbar-toggler .navbar-toggler-icon{width:2rem;height:2rem;background-image:none;position:relative;display:inline-block}.navbar-toggler .navbar-toggler-icon span,.navbar-toggler .navbar-toggler-icon:after,.navbar-toggler .navbar-toggler-icon:before{content:"";position:absolute;left:0;width:100%;height:3px;background-color:#fff;border-radius:2px;transition:all .3s ease}.navbar-toggler .navbar-toggler-icon span{top:50%;transform:translateY(-50%)}.navbar-toggler .navbar-toggler-icon:before{top:0}.navbar-toggler .navbar-toggler-icon:after{bottom:0}.navbar-scrolled .navbar-toggler-icon span,.navbar-scrolled .navbar-toggler-icon:after,.navbar-scrolled .navbar-toggler-icon:before{background-color:gray}.hero-section{background-image:url(/images/feature-work-1.png);background-size:cover;background-position:50%}.hero-section .hero-overlay{background-color:rgba(0,0,0,.4);z-index:1}.hero-section .position-relative.z-2{width:100%;max-width:600px;padding:0 20px}.hero-section .hero-button,.hero-section .hero-button-secondary{background-color:#1b3a1b;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .3s ease;box-shadow:0 4px 6px rgba(0,0,0,.2);font-size:1rem;font-weight:600;text-decoration:none;display:inline-block;text-align:center;min-height:48px;line-height:1.2;white-space:nowrap}.hero-section .hero-button-secondary:hover,.hero-section .hero-button:hover{background-color:#d4af37;transform:translateY(-2px);box-shadow:0 6px 12px rgba(0,0,0,.3)}.hero-section .hero-button-secondary:focus,.hero-section .hero-button:focus{outline:2px solid #fff;outline-offset:2px}.hero-section .hero-button-secondary:active,.hero-section .hero-button:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.2)}.hero-section .hero-button-secondary{margin-right:0;margin-bottom:16px}@media(max-width:767px){.hero-section .position-relative.z-2{padding:0 16px}.hero-section .hero-button,.hero-section .hero-button-secondary{width:100%;max-width:280px;padding:16px 24px;font-size:1.1rem;margin:0 auto 16px;display:block;border-radius:10px}.hero-section .hero-button-secondary{margin-bottom:20px}}@media(max-width:767px)and (max-width:480px){.hero-section .hero-button,.hero-section .hero-button-secondary{max-width:260px;padding:18px 20px;font-size:1rem}}@media(min-width:768px)and (max-width:1023px){.hero-section .hero-button,.hero-section .hero-button-secondary{padding:14px 28px;font-size:1.05rem}.hero-section .hero-button-secondary{margin-right:20px;margin-bottom:0}}@media(min-width:1024px){.hero-section .hero-button,.hero-section .hero-button-secondary{padding:12px 24px;font-size:1rem}.hero-section .hero-button-secondary{margin-right:30px;margin-bottom:0}}.hero-section h1{color:#dddcb8}.hero-section h2{color:#d4af37}.services-section .service-item{text-align:center}.services-section .service-item .service-icon{font-size:40px;margin-bottom:15px;color:#d4af37}.services-section p{color:#313131;line-height:1.5rem}.services-section h4{color:#1b3a1b}.featured-work{background-color:#f9f9f9;padding:4rem 0}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:300px;grid-gap:1rem;gap:1rem;margin:0 auto;max-width:1800px}.gallery-item{cursor:pointer;overflow:hidden;position:relative;transition:transform .3s ease}.gallery-item:hover{transform:scale(1.02)}.item-1,.item-11,.item-17,.item-21,.item-7{grid-column:span 8;grid-row:span 2}.item-10,.item-12,.item-13,.item-14,.item-15,.item-16,.item-18,.item-19,.item-2,.item-20,.item-22,.item-23,.item-24,.item-25,.item-3,.item-4,.item-5,.item-6,.item-8,.item-9{grid-column:span 4;grid-row:span 2}@media(max-width:1200px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:250px}.gallery-item{grid-column:span 1!important;grid-row:span 1!important}}@media(max-width:768px){.gallery-grid{grid-template-columns:repeat(2,1fr);padding:1rem}}.gallery-modal .modal-content{background-color:rgba(0,0,0,.9);border:none;border-radius:0}.gallery-carousel .carousel-control-next,.gallery-carousel .carousel-control-prev{width:10%;opacity:.8;transition:opacity .3s ease}.gallery-carousel .carousel-control-next:hover,.gallery-carousel .carousel-control-prev:hover{opacity:1}.gallery-carousel .carousel-indicators{margin-bottom:1rem}.gallery-carousel .carousel-indicators button{width:10px;height:10px;border-radius:50%;margin:0 5px;background-color:hsla(0,0%,100%,.5);border:none;transition:all .3s ease}.gallery-carousel .carousel-indicators button.active{background-color:#fff;transform:scale(1.2)}.gallery-carousel .carousel-item{transition:transform .3s ease}.gallery-carousel .carousel-control-next-icon,.gallery-carousel .carousel-control-prev-icon{background-color:rgba(0,0,0,.5);border-radius:50%;width:40px;height:40px;background-size:50%}.mission-section{background:linear-gradient(135deg,#D4AF37,#b8860b);color:#fff;padding:4rem 0}.mission-section .mission-text{max-width:800px;margin:0 auto;font-size:1.25rem;line-height:1.6}@media(max-width:768px){.mission-section .mission-text{font-size:1.1rem;padding:0 1rem}}.contact-section{padding:5rem 0;background-color:#fff}.contact-section h2{margin-bottom:3rem}.contact-section .contact-form{max-width:800px;margin:0 auto;background:#fff;padding:2.5rem;border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.05)}.contact-section .contact-form .form-label{color:#333}.contact-section .contact-form .form-control{border:1px solid #ddd;padding:.75rem;border-radius:8px;transition:border-color .3s ease}.contact-section .contact-form .form-control:focus{border-color:#d4af37;box-shadow:0 0 0 .2rem rgba(212,175,55,.25)}.contact-section .contact-form .btn-primary{background:linear-gradient(135deg,#D4AF37,#b8860b);border:none;padding:.75rem 2.5rem;transition:transform .3s ease}.contact-section .contact-form .btn-primary:hover{transform:translateY(-2px);background:linear-gradient(135deg,#b8860b,#D4AF37)}.contact-section .contact-form .invalid-feedback{color:#dc3545;font-size:.875rem}@media(max-width:768px){.contact-section{padding:3rem 0}.contact-section .contact-form{padding:1.5rem}}.footer{background-color:#313131;color:#ecf0f1;padding:4rem 0 2rem;margin-top:auto;width:100%}.footer h3{color:#d4af37;font-weight:600;margin-bottom:1.5rem;font-size:1.25rem}.footer .footer-logo img{filter:brightness(0) invert(1);opacity:.9;transition:opacity .3s ease}.footer .footer-logo img:hover{opacity:1}.footer .footer-contact ul li,.footer .footer-hours ul li{margin-bottom:.75rem;display:flex;align-items:flex-start;gap:.5rem;color:#bdc3c7;word-break:break-word;overflow-wrap:break-word;max-width:100%}.footer .footer-contact ul li i,.footer .footer-hours ul li i{color:#d4af37;font-size:1.1rem;margin-top:.2rem}.footer .footer-social{display:flex;justify-content:center;gap:1.5rem;margin-bottom:2rem}.footer .footer-social .social-link{color:#bdc3c7;font-size:1.5rem;transition:color .3s ease,transform .3s ease}.footer .footer-social .social-link:hover{color:#d4af37;transform:translateY(-3px)}.footer .footer-bottom{border-top:1px solid hsla(0,0%,100%,.1);padding-top:1.5rem;color:#fff;font-size:.9rem}.footer .footer-bottom .porttech-attribution{font-size:.8rem;color:#fff}.footer .footer-bottom .porttech-attribution a{color:#d4af37;text-decoration:none;transition:color .3s ease}.footer .footer-bottom .porttech-attribution a:hover{color:#d4af37;text-decoration:underline}@media(max-width:768px){.footer{padding:3rem 0 1.5rem;text-align:center}.footer .footer-contact ul li,.footer .footer-hours ul li{justify-content:center}}