:root{--bg-dark:#121212;--bg-dark-soft:#181818;--bronze:#c48a3a;--bronze-light:#e0b060;--steel:#b5b5b5;--steel-dark:#7d7d7d;--text-light:#f5f5f5;--text-muted:#cfcfcf;--accent:var(--bronze)}main{overflow:visible}body{background-color:var(--bg-dark);color:var(--text-light);font-family:Poppins,Segoe UI,sans-serif;line-height:1.7;padding-top:5rem}a{color:var(--bronze);text-decoration:none}a:hover{color:var(--bronze-light)}.navbar{background-color:#0d0d0d}.navbar-dark .navbar-nav .nav-link{color:var(--bronze);font-weight:500;transition:color .3s}.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link:hover{color:var(--text-light)}.navbar-dark .navbar-brand{color:var(--bronze)}.section-metal{border-bottom:2px solid rgba(196,138,58,.5);padding-bottom:5rem;padding-top:5rem;position:relative}.section-metal:after{background:linear-gradient(to bottom,hsla(0,0%,7%,0),var(--bg-dark));bottom:0;content:"";height:60px;left:0;pointer-events:none;position:absolute;width:100%}.bg-dark-custom{background-color:var(--bg-dark)}.hero-logo{animation:fadeZoom 1.2s ease-out forwards;display:block;margin:auto;max-width:500px}.hero-title{animation:slideUp 1s ease-out .3s forwards;opacity:0}.hero-text{animation:slideUp 1s ease-out .6s forwards;opacity:0}.hero-cta{animation:slideUp 1s ease-out .9s forwards;opacity:0}.text-bronze{color:var(--bronze)}.text-muted{color:var(--text-muted)!important}.btn-primary{background-color:var(--bronze);border-color:var(--bronze);color:#121212;font-weight:600}.btn-primary:hover{background-color:var(--bronze-light);border-color:var(--bronze-light);color:#121212}.btn-outline-primary{border-color:var(--bronze);color:var(--bronze)}.btn-outline-primary:hover{background-color:var(--bronze);color:#121212}.card{background-color:var(--bg-dark-soft);border:none;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease}.card:hover{box-shadow:0 10px 30px rgba(0,0,0,.8);transform:translateY(-6px)}.card:after{background:radial-gradient(circle at top left,rgba(196,138,58,.15),transparent 60%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .3s ease}.card:hover:after{opacity:1}.card-title{margin-top:.5rem}.card-text{color:var(--text-muted)}.carousel-item{min-height:80px}.carousel-item>div{align-items:center;display:flex;height:80px;justify-content:center}.carousel-control-next-icon,.carousel-control-prev-icon{filter:invert(1)}img{max-width:100%}img.rounded{border-radius:.75rem}.shadow-lg{box-shadow:0 15px 40px rgba(0,0,0,.9)}.realisation-link{border-radius:.75rem;display:block;overflow:hidden}.realisation-link:hover .realisation-img{box-shadow:0 12px 35px rgba(0,0,0,.6);transform:scale(1.05)}.realisation-img{cursor:pointer;display:block;filter:contrast(1.05) brightness(.95);height:380px;object-fit:cover;object-position:center;transition:transform .4s ease,box-shadow .4s ease;width:100%}#cta{background:linear-gradient(to top,#0e0e0e,var(--bg-dark))}.lightbox-overlay{align-items:center;background:rgba(0,0,0,.92);display:flex;inset:0;justify-content:center;opacity:0;pointer-events:none;position:fixed;transition:opacity .3s ease;z-index:2000}.lightbox-overlay.active{opacity:1;pointer-events:auto}.lightbox-content{max-height:90%;max-width:90%;position:relative}.lightbox-content img{border-radius:.5rem;box-shadow:0 15px 40px rgba(0,0,0,.9);max-height:70vh;max-width:100%}.lightbox-close{font-size:2.5rem;right:2rem;top:2rem}.lightbox-close,.lightbox-next,.lightbox-prev{background:none;border:none;color:#fff;cursor:pointer;position:fixed;z-index:2100}.lightbox-next,.lightbox-prev{font-size:3rem;opacity:.7;top:50%;transform:translateY(-50%);transition:opacity .2s ease}.lightbox-next:hover,.lightbox-prev:hover{opacity:1}.lightbox-prev{left:2rem}.lightbox-next{right:2rem}.realisation-wrapper{background-color:#000;border-radius:.75rem;height:360px;overflow:hidden;position:relative;width:100%}.realisation-wrapper:hover .realisation-img{box-shadow:0 12px 35px rgba(0,0,0,.6);transform:scale(1.05)}.realisation-caption{color:var(--text-light);font-size:.95rem;font-weight:500;margin-top:.75rem;text-align:start}.lightbox-caption{color:var(--text-light);margin-top:1.5rem;max-width:800px;text-align:center}.lightbox-caption h3{color:var(--bronze);font-size:1.2rem;margin-bottom:.5rem}.lightbox-caption p{color:var(--text-muted);font-size:.95rem;line-height:1.6}.alert{opacity:0;transform:translateY(-20px);transition:opacity .6s ease,transform .6s ease}.animate-on-scroll.is-visible.alert{opacity:1;transform:translateY(0)}.form-label+.text-danger{margin-left:.25rem}.footer-metal{background-color:#0d0d0d;color:var(--text-muted);font-size:.95rem;padding:4rem 0 2rem}.footer-block{padding:0 3rem}.footer-title{color:var(--bronze);font-size:1.1rem;letter-spacing:1px;margin-bottom:1rem;text-transform:uppercase}.footer-text{line-height:1.7}.footer-link{color:var(--bronze);transition:color .3s ease}.footer-link:hover{color:var(--bronze-light)}.nav-link{color:var(--text-muted);transition:color .3s ease}.nav-link:hover{color:var(--bronze-light)}.footer-nav ul{list-style:none;margin:0;padding:0}.footer-nav li{margin-bottom:.4rem}.footer-bottom{border-top:1px solid rgba(196,138,58,.2);font-size:.85rem;padding-top:1.5rem}.footer-social a{display:inline-block;font-size:1.4rem;margin:0 .5rem}#togglePassword i{transition:transform .2s ease,color .2s ease}#togglePassword:hover i{color:#c48a3a;transform:scale(1.2)}#togglePassword:active i{transform:scale(1.05)}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease;--animate-delay:0s}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0);transition-delay:var(--animate-delay)}@keyframes fadeZoom{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.animate-on-scroll{opacity:1;transform:none;transition:none}}@media (max-width:768px){.hero-logo{max-width:300px}.hero-title{font-size:1.8rem}.hero-cta,.hero-text{font-size:1rem}.hero-cta{padding:.75rem 1.5rem}.section-metal:after{height:40px}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.lightbox-close{right:1rem;top:1rem}.footer-block{margin-bottom:2rem}}