@font-face{font-family:bebas neue;src:url(/fonts/bebas-neue-v16-latin_latin-ext-regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:barlow;src:url(/fonts/barlow-v13-latin_latin-ext-300.woff2)format('woff2');font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:barlow;src:url(/fonts/barlow-v13-latin_latin-ext-regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:barlow;src:url(/fonts/barlow-v13-latin_latin-ext-500.woff2)format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:barlow;src:url(/fonts/barlow-v13-latin_latin-ext-600.woff2)format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:barlow;src:url(/fonts/barlow-v13-latin_latin-ext-700.woff2)format('woff2');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:barlow condensed;src:url(/fonts/barlow-condensed-v13-latin-regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:barlow condensed;src:url(/fonts/barlow-condensed-v13-latin-500.woff2)format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:barlow condensed;src:url(/fonts/barlow-condensed-v13-latin-600.woff2)format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:barlow condensed;src:url(/fonts/barlow-condensed-v13-latin-700.woff2)format('woff2');font-weight:700;font-style:normal;font-display:swap}:root{--c-bg:#0f0f0f;--c-bg-alt:#1a1a1a;--c-bg-card:#1e1e1e;--c-surface:#252525;--c-border:#333;--c-text:#e8e8e8;--c-text-muted:#999;--c-text-dim:#666;--c-accent:#cc2200;--c-accent-light:#e83a15;--c-accent-glow:rgba(204, 34, 0, 0.15);--c-white:#ffffff;--font-display:'Bebas Neue', 'Arial Black', sans-serif;--font-heading:'Barlow Condensed', 'Arial Narrow', sans-serif;--font-body:'Barlow', 'Helvetica Neue', Arial, sans-serif;--container:1200px;--gap:clamp(1rem, 3vw, 2rem);--radius:4px;--transition:0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px}:focus-visible{outline:2px solid var(--c-accent-light);outline-offset:3px}body{font-family:var(--font-body);font-size:16px;line-height:1.7;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--c-accent-light);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--c-white)}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gap)}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(15,15,15,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,5%);transition:background var(--transition)}.header-inner{max-width:var(--container);margin:0 auto;padding:0 var(--gap);display:flex;align-items:center;justify-content:space-between;height:72px}.logo-link{display:flex;align-items:center;gap:12px;color:var(--c-white)}.logo-link:hover{color:var(--c-white)}.logo-img{width:42px;height:42px;object-fit:contain}.logo-text{display:flex;flex-direction:column;line-height:1.1}.logo-name{font-family:var(--font-heading);font-weight:700;font-size:18px;letter-spacing:1px;text-transform:uppercase}.logo-sub{font-family:var(--font-body);font-size:11px;font-weight:300;color:var(--c-text-muted);letter-spacing:2px;text-transform:uppercase}.main-nav{display:flex;gap:2px}.nav-link{font-family:var(--font-heading);font-size:15px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--c-text-muted);padding:8px 16px;border-radius:var(--radius);transition:all var(--transition)}.nav-link:hover{color:var(--c-white);background:rgba(255,255,255,5%)}.menu-toggle{display:none;flex-direction:column;gap:5px;background:0 0;border:none;cursor:pointer;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--c-white);transition:var(--transition)}.menu-toggle.active span:nth-child(1){transform:translateY(7px)rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url(/images/tlo3.jpg)50%/cover no-repeat;transform:scale(1.05);animation:heroZoom 20s ease-in-out infinite alternate}@keyframes heroZoom{from{transform:scale(1.05)}to{transform:scale(1.15)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,15,15,.92) 0%,rgba(15,15,15,.6) 50%,rgba(15,15,15,.85) 100%)}.hero-content{position:relative;z-index:2;text-align:center;padding:0 var(--gap);animation:fadeInUp 1s ease-out .3s both}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-badge{margin-bottom:32px}.hero-logo{width:100px;height:100px;object-fit:contain;margin:0 auto;filter:drop-shadow(0 4px 20px rgba(204,34,0,.3));animation:fadeInUp 1s ease-out .1s both}.hero-title{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:16px}.hero-title-main{font-family:var(--font-display);font-size:clamp(48px,10vw,96px);line-height:1;letter-spacing:4px;color:var(--c-white)}.hero-title-divider{width:60px;height:3px;background:var(--c-accent);margin:4px 0}.hero-title-sub{font-family:var(--font-heading);font-size:clamp(16px,3vw,24px);font-weight:400;letter-spacing:6px;text-transform:uppercase;color:var(--c-text-muted)}.hero-tagline{font-size:18px;font-weight:300;color:var(--c-text-muted);margin-bottom:40px;letter-spacing:.5px}.hero-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.hero-scroll{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--c-text-dim);font-size:11px;letter-spacing:2px;text-transform:uppercase;animation:fadeInUp 1s ease-out 1s both}.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--c-text-dim),transparent);animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%,100%{opacity:.3}50%{opacity:1}}.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;font-family:var(--font-heading);font-size:15px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;transition:all var(--transition)}.btn-primary{background:var(--c-accent);color:var(--c-white);border-color:var(--c-accent)}.btn-primary:hover{background:var(--c-accent-light);border-color:var(--c-accent-light);color:var(--c-white);box-shadow:0 4px 20px var(--c-accent-glow)}.btn-outline{background:0 0;color:var(--c-white);border-color:rgba(255,255,255,.25)}.btn-outline:hover{border-color:var(--c-white);color:var(--c-white)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:40px}.section{padding:clamp(60px,10vw,120px)0}.section-header{text-align:center;margin-bottom:clamp(40px,6vw,64px)}.section-tag{display:inline-block;font-family:var(--font-heading);font-size:13px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--c-accent-light);margin-bottom:12px}.section-title{font-family:var(--font-display);font-size:clamp(36px,6vw,64px);line-height:1.05;letter-spacing:2px;color:var(--c-white)}.section-description{max-width:600px;margin:16px auto 0;color:var(--c-text-muted);text-align:center;font-size:17px}.section-about{background:var(--c-bg);position:relative}.section-about::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--c-border),transparent)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,64px);align-items:start}.about-text p{margin-bottom:20px;color:var(--c-text);font-size:16px;line-height:1.8}.about-text p strong{color:var(--c-white)}.about-stats{display:grid;gap:20px}.stat-card{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius);padding:32px;text-align:center;transition:all var(--transition)}.stat-card:hover{border-color:var(--c-accent);box-shadow:0 0 30px var(--c-accent-glow)}.stat-number{display:block;font-family:var(--font-display);font-size:48px;color:var(--c-accent-light);line-height:1;margin-bottom:4px}.stat-label{font-family:var(--font-heading);font-size:14px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--c-text-muted)}.section-services{background:var(--c-bg-alt)}.services-group+.services-group{margin-top:clamp(40px,6vw,64px)}.services-group-title{font-family:var(--font-heading);font-size:15px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--c-accent-light);margin-bottom:20px;display:flex;align-items:center;gap:16px}.services-group-title::after{content:'';flex:1;height:1px;background:var(--c-border)}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.service-card{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius);padding:32px 28px;transition:all var(--transition);position:relative;overflow:hidden;display:flex;flex-direction:column}.service-card::before,.service-card::after{content:'';position:absolute;left:0;right:0;height:3px;background-image:linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent));background-repeat:no-repeat;background-position:0,100%;background-size:0% 100%,0% 100%;transition:background-size .4s ease}.service-card::before{top:0}.service-card::after{bottom:0}.service-card:hover::before,.service-card:hover::after,.service-card[data-kolumna=lewa]:hover::before,.service-card[data-kolumna=lewa]:hover::after{background-size:100% 100%,0% 100%}.service-card[data-kolumna=prawa]:hover::before,.service-card[data-kolumna=prawa]:hover::after{background-size:0% 100%,100% 100%}.service-card[data-kolumna=srodek]:hover::before,.service-card[data-kolumna=srodek]:hover::after{background-size:50% 100%,50% 100%}.service-card:hover{border-color:rgba(204,34,0,.3)}.service-icon{width:48px;height:48px;margin-bottom:20px;color:var(--c-accent-light)}.service-icon svg{width:100%;height:100%}.service-card h4{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--c-white);margin-bottom:12px;letter-spacing:.5px}.service-card p{color:var(--c-text-muted);font-size:14px;line-height:1.7}.service-scope{list-style:none;margin-top:16px;display:flex;flex-direction:column;gap:6px}.service-scope li{position:relative;padding-left:16px;font-size:14px;line-height:1.5;color:var(--c-text)}.service-scope li::before{content:'';position:absolute;left:0;top:.6em;width:6px;height:2px;background:var(--c-accent)}.service-link{display:inline-block;margin-top:auto;padding-top:20px;font-family:var(--font-heading);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--c-accent-light);align-self:flex-start}.service-link:hover{color:var(--c-white);text-decoration:underline;text-underline-offset:4px}.services-cta{margin-top:clamp(40px,6vw,64px);padding:32px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-bg-card);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.services-cta p{color:var(--c-text-muted);max-width:60ch}.section-gallery-preview{background:var(--c-bg);position:relative}.gallery-cta{text-align:center;margin-top:32px}.section-references{background:var(--c-bg-alt);overflow:hidden}.references-intro{text-align:center;max-width:600px;margin:0 auto clamp(40px,6vw,64px);color:var(--c-text-muted);font-size:17px;line-height:1.8}.references-intro strong{color:var(--c-white)}.refs-slider-wrapper{position:relative}.refs-slider{overflow:hidden;position:relative}.refs-track{display:flex;transition:transform .6s cubic-bezier(.77,0,.18,1);will-change:transform}.refs-slide{min-width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:0 2px}.ref-card{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius);padding:18px 16px;display:flex;align-items:center;justify-content:center;text-align:center;min-height:72px;font-family:var(--font-heading);font-size:14px;font-weight:500;letter-spacing:.3px;color:var(--c-text-muted);transition:all var(--transition);line-height:1.4;position:relative;overflow:hidden}@property --h-l{syntax: '<percentage>'; inherits: false; initial-value: 0%; }@property --h-p{syntax: '<percentage>'; inherits: false; initial-value: 0%; }@property --v-g{syntax: '<percentage>'; inherits: false; initial-value: 0%; }@property --v-d{syntax: '<percentage>'; inherits: false; initial-value: 0%; }.ref-card::after{--e-gora:0;--e-dol:1;--e-lewa:0;--e-prawa:0;content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent)),linear-gradient(var(--c-accent),var(--c-accent));background-repeat:no-repeat;background-position:0 0,100% 0,0 100%,100% 100%,0 0,0 100%,100% 0,100% 100%;background-size:calc(var(--h-l) * var(--e-gora))2px,calc(var(--h-p) * var(--e-gora))2px,calc(var(--h-l) * var(--e-dol))2px,calc(var(--h-p) * var(--e-dol))2px,2px calc(var(--v-g) * var(--e-lewa)),2px calc(var(--v-d) * var(--e-lewa)),2px calc(var(--v-g) * var(--e-prawa)),2px calc(var(--v-d) * var(--e-prawa));transition:--h-l .35s ease,--h-p .35s ease,--v-g .35s ease,--v-d .35s ease}.ref-card[data-wiersz=gora]::after{--e-gora:1;--e-dol:0}.ref-card[data-wiersz=srodek]::after,.ref-card[data-wiersz=jedyny]::after{--e-gora:1;--e-dol:1}.ref-card[data-kolumna=lewa]::after{--e-lewa:1}.ref-card[data-kolumna=prawa]::after{--e-prawa:1}.ref-card[data-kolumna=srodek]::after{--e-lewa:1;--e-prawa:1}.ref-card:hover::after,.ref-card[data-kolumna=lewa]:hover::after{--h-l:100%}.ref-card[data-kolumna=prawa]:hover::after{--h-l:0%;--h-p:100%}.ref-card[data-kolumna=srodek]:hover::after{--h-l:50%;--h-p:50%}.ref-card[data-wiersz=gora]:hover::after{--v-g:100%}.ref-card[data-wiersz=dol]:hover::after{--v-d:100%}.ref-card[data-wiersz=srodek]:hover::after,.ref-card[data-wiersz=jedyny]:hover::after{--v-g:50%;--v-d:50%}.ref-card:hover{border-color:rgba(204,34,0,.35);color:var(--c-white);background:var(--c-surface);transform:translateY(-2px);box-shadow:0 6px 24px rgba(0,0,0,.35)}.refs-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:36px}.refs-btn{width:40px;height:40px;background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:50%;color:var(--c-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);flex-shrink:0}.refs-btn:hover{border-color:var(--c-accent);color:var(--c-white);background:var(--c-surface)}.refs-btn svg{width:18px;height:18px}.refs-dots{display:flex;align-items:center}.refs-dot{width:20px;height:24px;background:0 0;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:width .35s ease}.refs-dot::before{content:'';display:block;width:6px;height:6px;border-radius:3px;background:var(--c-text-dim);transition:all .35s ease}.refs-dot:hover::before{background:var(--c-text-muted)}.refs-dot.active{width:36px}.refs-dot.active::before{background:var(--c-accent);width:24px}.refs-toggle .icon-play{display:block}.refs-toggle .icon-pause{display:none}.is-playing .refs-toggle .icon-play{display:none}.is-playing .refs-toggle .icon-pause{display:block}.refs-progress{height:2px;background:var(--c-border);border-radius:1px;margin-top:24px;overflow:hidden}.refs-progress-bar{height:100%;background:var(--c-accent);border-radius:1px;transition:width .1s linear;width:0%}@media(max-width:768px){.refs-slide{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.refs-controls{gap:8px}.refs-dot{width:16px}.refs-dot.active{width:32px}.refs-slide{grid-template-columns:1fr 1fr;gap:8px}.ref-card{font-size:12px;padding:14px 10px;min-height:60px}}.section-jobs{background:var(--c-bg)}.jobs-content{max-width:600px;margin:0 auto}.job-card{background:var(--c-bg-card);border:1px solid var(--c-border);border-left:4px solid var(--c-accent);border-radius:var(--radius);padding:40px;text-align:center}.job-card h3{font-family:var(--font-heading);font-size:24px;font-weight:600;color:var(--c-white);margin-bottom:16px}.job-card p{color:var(--c-text-muted);margin-bottom:24px;line-height:1.8}.section-contact{background:var(--c-bg-alt)}.contact-grid{max-width:600px;margin:0 auto}.contact-info{display:flex;flex-direction:column;gap:28px}.contact-item{display:flex;align-items:flex-start;gap:20px;padding:24px;background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius);transition:all var(--transition)}.contact-item:hover{border-color:var(--c-accent)}.contact-item svg{flex-shrink:0;color:var(--c-accent-light);margin-top:2px}.contact-item strong{display:block;font-family:var(--font-heading);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--c-text-muted);margin-bottom:4px}.contact-item span,.contact-item a{font-size:16px;color:var(--c-white);line-height:1.5}.contact-item a:hover{color:var(--c-accent-light)}.site-footer{background:var(--c-bg);border-top:1px solid var(--c-border);padding:48px 0}.footer-inner{max-width:var(--container);margin:0 auto;padding:0 var(--gap);display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;align-items:start}.footer-logo{width:40px;height:40px;margin-bottom:12px}.footer-company{font-size:14px;color:var(--c-text-muted);line-height:1.6}.footer-contact p{font-size:14px;color:var(--c-text-muted);margin-bottom:8px}.footer-contact strong{color:var(--c-white)}.footer-contact a{color:var(--c-text)}.footer-legal{text-align:right}.footer-legal p{font-size:13px;color:var(--c-text-dim);margin-bottom:8px}.footer-legal a{font-size:13px;color:var(--c-text-dim)}.footer-legal a:hover{color:var(--c-accent-light)}.call-fab{display:none}@media(max-width:768px){.call-fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:900;display:flex;align-items:center;gap:8px;padding:12px 20px;border-radius:999px;background:var(--c-accent);color:var(--c-white);font-family:var(--font-heading);font-size:18px;letter-spacing:1px;box-shadow:0 6px 24px rgba(0,0,0,.5)}.call-fab:hover,.call-fab:focus-visible{background:var(--c-accent-light);color:var(--c-white)}.site-footer{padding-bottom:96px}}.page-hero{position:relative;height:40vh;min-height:280px;display:flex;align-items:center;justify-content:center;overflow:hidden}.page-hero-small{height:30vh;min-height:200px}.page-hero-bg{position:absolute;inset:0;background:url(/images/tlo1.jpg)50%/cover no-repeat}.page-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,15,15,.9) 0%,rgba(15,15,15,.7) 100%)}.page-hero-content{position:relative;z-index:2;text-align:center}.page-hero-content h1{font-family:var(--font-display);font-size:clamp(36px,8vw,72px);letter-spacing:3px;color:var(--c-white)}.page-hero-content p{font-family:var(--font-heading);font-size:18px;font-weight:400;color:var(--c-text-muted);letter-spacing:2px;text-transform:uppercase;margin-top:8px}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.category-card{position:relative;display:flex;flex-direction:column;background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius);overflow:hidden;color:var(--c-white);transition:all var(--transition)}.category-card:hover{color:var(--c-white);border-color:rgba(204,34,0,.3);transform:translateY(-3px);box-shadow:0 12px 40px rgba(0,0,0,.4)}.category-card-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--c-surface)}.category-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.category-card:hover .category-card-img img{transform:scale(1.08)}.category-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 50%);pointer-events:none}.category-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--c-text-dim)}.category-card-placeholder svg{width:48px;height:48px}.category-card-body{padding:20px 24px;flex:1}.category-card-body h3{font-family:var(--font-heading);font-size:20px;font-weight:600;letter-spacing:.5px;margin-bottom:4px}.category-count{font-size:13px;color:var(--c-text-muted)}.category-card-arrow{position:absolute;bottom:20px;right:20px;font-size:20px;color:var(--c-accent-light);opacity:0;transform:translateX(-8px);transition:all .3s ease}.category-card:hover .category-card-arrow{opacity:1;transform:translateX(0)}.section-gallery-single{padding-bottom:clamp(60px,10vw,120px)}.gallery-description{max-width:700px;margin:0 auto clamp(32px,5vw,48px);text-align:center;color:var(--c-text);font-size:17px;line-height:1.8}.gallery-description p{margin-bottom:12px}.breadcrumb-link{color:var(--c-accent-light)!important;font-weight:500}.breadcrumb-link:hover{color:var(--c-white)!important}.gallery-images{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.gallery-item{position:relative;display:block;width:100%;padding:0;border:0;font:inherit;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius);cursor:pointer;background:var(--c-surface)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.08)}.gallery-item::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.5) 0%,transparent 50%);opacity:0;transition:opacity var(--transition)}.gallery-item:hover::after{opacity:1}.lightbox-overlay{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.95);display:none;align-items:center;justify-content:center}.lightbox-overlay.active{display:flex}.lightbox-content{max-width:90vw;max-height:90vh;position:relative}.lightbox-content img{max-width:90vw;max-height:85vh;object-fit:contain}.lightbox-counter{margin-top:12px;text-align:center;font-size:14px;letter-spacing:1px;color:var(--c-text-muted)}.lightbox-close{position:absolute;top:20px;right:24px;background:0 0;border:none;color:#fff;font-size:36px;cursor:pointer;z-index:10;line-height:1;transition:color var(--transition)}.lightbox-close:hover{color:var(--c-accent-light)}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.1);border:none;color:#fff;font-size:28px;padding:16px 20px;cursor:pointer;z-index:10;transition:background var(--transition)}.lightbox-prev:hover,.lightbox-next:hover{background:rgba(255,255,255,.2)}.lightbox-prev{left:16px}.lightbox-next{right:16px}.gallery-empty{text-align:center;padding:clamp(40px,8vw,80px)0;color:var(--c-text-dim)}.gallery-empty svg{margin:0 auto 20px;opacity:.4}.gallery-empty p{font-size:17px;color:var(--c-text-muted)}.gallery-back{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;text-align:center;margin-top:clamp(32px,5vw,56px);padding-top:32px;border-top:1px solid var(--c-border)}.content-page{max-width:800px;padding-top:20px;padding-bottom:40px}.content-page h2{font-family:var(--font-heading);font-size:24px;font-weight:600;color:var(--c-white);margin-top:40px;margin-bottom:16px}.content-page h3{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--c-white);margin-top:28px;margin-bottom:12px}.content-page p{margin-bottom:16px;line-height:1.8;color:var(--c-text)}@media(max-width:900px){.about-grid{grid-template-columns:1fr}.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-legal{text-align:center}}@media(max-width:768px){.menu-toggle{display:flex}.main-nav{position:fixed;top:72px;left:0;right:0;bottom:0;background:rgba(15,15,15,.98);backdrop-filter:blur(20px);flex-direction:column;align-items:center;justify-content:center;gap:8px;transform:translateX(100%);visibility:hidden;transition:transform .4s ease,visibility 0s linear .4s}.main-nav.open{transform:translateX(0);visibility:visible;transition:transform .4s ease}.nav-link{font-size:20px;padding:12px 24px}.about-stats{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr}.gallery-images{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}