:root{--bs-primary:#006781;--bs-secondary:#006783;--bs-body-bg:#f5f8fb;--bs-body-color:#191c1e;--brand-primary:#006781;--brand-primary-dark:#005166;--brand-primary-darker:#004052;--brand-secondary:#006783;--brand-secondary-dark:#004d64;--brand-teal:#014857;--brand-accent:#76c4e2;--brand-inverse:#1e2428;--brand-muted:#5a656b;--brand-border:rgba(111,120,125,0.18);--brand-surface:#ffffff;--brand-surface-soft:#f5f8fb;--radius-sm:0.5rem;--radius-md:0.75rem;--radius-lg:1rem;--radius-xl:1.25rem;--shadow-xs:0 1px 2px rgba(25,28,30,0.04);--shadow-sm:0 4px 14px rgba(25,28,30,0.06);--shadow-md:0 10px 28px -8px rgba(0,103,129,0.14);--shadow-lg:0 18px 40px -12px rgba(0,103,129,0.18);--shadow-focus:0 0 0 0.25rem rgba(0,103,129,0.22);--transition-fast:0.2s ease;--transition-base:0.3s cubic-bezier(0.23,1,0.32,1);--header-height:76px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:'Work Sans',sans-serif;background-color:var(--bs-body-bg);color:var(--bs-body-color);line-height:1.65;overflow-x:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6,.navbar-brand{font-family:'Hanken Grotesk',sans-serif;letter-spacing:-0.02em;line-height:1.2;color:inherit}.display-4,.display-5,.display-6{letter-spacing:-0.03em;line-height:1.15}.lead{font-weight:400;line-height:1.7;color:var(--brand-muted)}p{margin-bottom:1rem}img{max-width:100%;height:auto}a{transition:color var(--transition-fast),opacity var(--transition-fast)}::selection{background-color:rgba(0,103,129,0.18);color:var(--bs-body-color)}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px}.btn:focus-visible,.form-control:focus-visible,.form-select:focus-visible,.nav-link:focus-visible,.navbar-toggler:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn,.nav-link,label,input,select,textarea{font-family:'IBM Plex Sans',sans-serif}.material-symbols-outlined{font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24;vertical-align:middle;display:inline-block;line-height:1}.tracking-wider{letter-spacing:0.08em}.tracking-widest{letter-spacing:0.14em}.mb-n5{margin-bottom:-3rem !important}.shadow-md{box-shadow:var(--shadow-md) !important}.border-secondary-custom{border-color:var(--brand-secondary) !important}.bg-inverse{background-color:var(--brand-inverse) !important;color:#eff1f4}.text-primary-custom{color:var(--bs-primary) !important}.text-secondary-custom{color:var(--bs-secondary) !important}.bg-primary-custom{background-color:var(--bs-primary) !important}.bg-secondary-custom{background-color:var(--bs-secondary) !important}.bg-brand-teal{background:radial-gradient(ellipse at top right,rgba(118,196,226,0.18),transparent 55%),radial-gradient(ellipse at bottom left,rgba(0,103,129,0.35),transparent 50%),var(--brand-teal) !important}.btn{border-radius:var(--radius-sm);font-weight:600;letter-spacing:0.01em;padding:0.625rem 1.25rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.btn-lg{padding:0.8rem 1.6rem;border-radius:var(--radius-md)}.btn-primary-custom{background-color:var(--bs-primary);border-color:var(--bs-primary);color:#fff}.btn-primary-custom:hover,.btn-primary-custom:focus{background-color:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:#fff}.btn-secondary-custom{background-color:var(--bs-secondary);border-color:var(--bs-secondary);color:#fff;border-radius:999px}.btn-secondary-custom:hover,.btn-secondary-custom:focus{background-color:var(--brand-secondary-dark);border-color:var(--brand-secondary-dark);color:#fff}.btn-primary{background-color:var(--bs-secondary);border-color:var(--bs-secondary);color:#fff}.btn-primary:hover,.btn-primary:focus{background-color:var(--bs-primary);border-color:var(--bs-primary);color:#fff}.btn-outline-secondary{color:#3f484c;border-color:#6f787d;background-color:transparent}.btn-outline-secondary:hover,.btn-outline-secondary:focus{background-color:#e6e8eb;color:#191c1e;border-color:#6f787d}.btn-primary-custom:hover,.btn-secondary-custom:hover,.btn-primary:hover,.btn-outline-secondary:hover,.btn-outline-light:hover,.btn-light:hover{transform:translateY(-3px)}.btn-primary-custom:hover,.btn-secondary-custom:hover,.btn-primary:hover{box-shadow:0 10px 24px rgba(0,103,129,0.28)}.btn-outline-secondary:hover,.btn-outline-light:hover{box-shadow:0 10px 20px rgba(0,0,0,0.1)}.btn-light:hover{box-shadow:0 10px 24px rgba(0,0,0,0.18)}.btn:active{transform:translateY(-1px)}.btn .btn-icon-arrow,.text-primary-custom .btn-icon-arrow{transition:transform 0.25s ease;display:inline-flex}.btn:hover .btn-icon-arrow,a:hover .btn-icon-arrow{transform:translateX(5px)}.btn-outline-glow{position:relative;color:var(--bs-primary);border:2px solid var(--bs-primary);background-color:transparent;overflow:hidden;z-index:1;border-radius:999px;transition:color 0.3s cubic-bezier(0.23,1,0.32,1),transform 0.3s cubic-bezier(0.23,1,0.32,1),box-shadow 0.3s cubic-bezier(0.23,1,0.32,1)}.btn-outline-glow::before{content:'';position:absolute;inset:0;border-radius:inherit;transform:scaleX(0);transform-origin:center;z-index:-1;background-color:var(--bs-primary);transition:transform 0.45s cubic-bezier(0.23,1,0.32,1)}.btn-outline-glow:hover{color:#fff;transform:translateY(-3px) scale(1.03);box-shadow:0 10px 24px rgba(0,103,129,0.35)}.btn-outline-glow:hover::before{transform:scaleX(1)}.btn-outline-glow:active{transform:translateY(-1px) scale(1)}.btn-outline-glow-light{position:relative;color:#fff;border:2px solid rgba(255,255,255,0.7);background-color:transparent;overflow:hidden;z-index:1;border-radius:999px;transition:color 0.3s cubic-bezier(0.23,1,0.32,1),transform 0.3s cubic-bezier(0.23,1,0.32,1),box-shadow 0.3s cubic-bezier(0.23,1,0.32,1),border-color 0.3s ease}.btn-outline-glow-light::before{content:'';position:absolute;inset:0;border-radius:inherit;transform:scaleX(0);transform-origin:center;z-index:-1;background-color:#fff;transition:transform 0.45s cubic-bezier(0.23,1,0.32,1)}.btn-outline-glow-light:hover{color:var(--bs-primary);border-color:#fff;transform:translateY(-3px) scale(1.03);box-shadow:0 10px 24px rgba(0,0,0,0.25)}.btn-outline-glow-light:hover::before{transform:scaleX(1)}.btn-outline-glow-light:active{transform:translateY(-1px) scale(1)}.form-label{margin-bottom:0.4rem;letter-spacing:0.01em}.form-control,.form-select{border-radius:var(--radius-sm);border:1px solid var(--brand-border);background-color:#fafbfc;padding:0.7rem 0.95rem;color:var(--bs-body-color);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);min-height:48px}.form-control:hover,.form-select:hover{border-color:rgba(0,103,129,0.35);background-color:#fff}.form-control:focus,.form-select:focus{border-color:var(--brand-primary);background-color:#fff;box-shadow:var(--shadow-focus)}.form-control::placeholder{color:#8a9499}textarea.form-control{min-height:140px;resize:vertical}.glass-header{backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);background-color:rgba(245,248,251,0.82);border-bottom:1px solid var(--brand-border);transition:background-color var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.navbar{min-height:var(--header-height)}.navbar.bg-white{background-color:rgba(255,255,255,0.96) !important}.navbar-brand img{transition:transform var(--transition-fast)}.navbar-brand:hover img{transform:scale(1.03)}.navbar-toggler{border:1px solid var(--brand-border);border-radius:var(--radius-sm);padding:0.45rem 0.6rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.navbar-toggler:hover{border-color:rgba(0,103,129,0.4)}.navbar-toggler:focus{box-shadow:var(--shadow-focus)}.navbar-nav .nav-item{margin:0 0.15rem}.navbar-nav .nav-link{position:relative;color:#4a5568 !important;font-weight:500;padding:0.5rem 0.9rem !important;border-radius:var(--radius-sm);transition:color 0.3s ease,background-color 0.3s ease}.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{color:var(--bs-primary) !important;font-weight:600}.navbar-nav .nav-link::after{content:'';position:absolute;width:0;height:3px;bottom:0;left:50%;background-color:var(--bs-primary);transition:all 0.3s ease;transform:translateX(-50%);border-radius:3px 3px 0 0}.navbar-nav .nav-link:hover::after{width:70%}.navbar-nav .nav-link.active::after{width:100%}.industrial-grid{background-size:40px 40px;background-image:linear-gradient(to right,rgba(111,120,125,0.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(111,120,125,0.05) 1px,transparent 1px)}.blueprint-grid{background-size:40px 40px;background-image:linear-gradient(to right,rgba(118,196,226,0.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(118,196,226,0.05) 1px,transparent 1px)}main{overflow-x:hidden}section{position:relative}.hero-section{min-height:clamp(560px,85vh,900px);display:flex;align-items:center;position:relative;padding-block:3rem}.hero-bg{position:absolute;inset:0;background-image:url('../images/hero-industrial-plant.jpg');background-size:cover;background-position:center;opacity:0.38;filter:grayscale(100%) contrast(1.05);z-index:1}.hero-gradient{position:absolute;inset:0;background:linear-gradient(105deg,var(--bs-body-bg) 0%,rgba(245,248,251,0.94) 48%,rgba(245,248,251,0.35) 72%,transparent 100%);z-index:2}.hero-content{z-index:3;position:relative}.card{border-color:var(--brand-border);background-color:var(--brand-surface);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.card-hover-effect{transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);will-change:transform}.card-hover-effect:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:rgba(0,103,129,0.18)}.icon-box{width:48px;height:48px;background-color:rgba(118,196,226,0.12);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);margin-bottom:1.5rem;transition:background-color 0.3s ease,transform 0.3s ease,box-shadow 0.3s ease}.card-hover-effect:hover .icon-box{background-color:var(--bs-primary) !important;transform:scale(1.05);box-shadow:0 8px 18px rgba(0,103,129,0.22)}.card-hover-effect:hover .icon-box .material-symbols-outlined{color:#fff !important}.badge{font-weight:600;letter-spacing:0.06em;font-size:0.72rem}.hero-img-box{position:relative;height:500px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--brand-border)}.glass-card{background:rgba(245,248,251,0.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-left:4px solid var(--bs-secondary);border-radius:0 var(--radius-md) var(--radius-md) 0;box-shadow:var(--shadow-sm)}.decorative-gradient{background:linear-gradient(to left,rgba(0,103,129,0.05),transparent)}.card-accent{border-top:4px solid var(--bs-secondary)}.map-container{height:320px;border-radius:var(--radius-md);border:1px solid var(--brand-border);position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.map-bg{position:absolute;inset:0;background-image:url('../images/gallery-testing-lab.jpg');background-size:cover;background-position:center;filter:grayscale(100%);opacity:0.4;transition:opacity 0.3s ease,transform 0.5s ease}.map-container:hover .map-bg{opacity:0.6;transform:scale(1.04)}.map-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:rgba(245,248,251,0.62);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}footer.bg-inverse{background:linear-gradient(180deg,#232a2e 0%,var(--brand-inverse) 100%)}.footer-link{transition:all 0.3s ease;display:inline-block;position:relative}.footer-link:hover{color:#fff !important;transform:translateX(6px)}.contact-action{transition:all 0.3s ease;display:flex;align-items:center;border-radius:var(--radius-sm);padding:0.375rem 0.75rem;margin-left:-0.75rem;text-decoration:none;color:inherit}.contact-action:hover{background-color:rgba(118,196,226,0.12);color:var(--brand-accent) !important}.contact-action:hover .material-symbols-outlined{transform:scale(1.15) rotate(-5deg);color:var(--brand-accent) !important}.contact-action .material-symbols-outlined{transition:all 0.3s ease}#scrollToTopBtn{position:fixed;bottom:28px;right:28px;z-index:99;border:none;outline:none;cursor:pointer;width:52px;height:52px;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(20px);transition:all 0.3s ease;box-shadow:var(--shadow-md)}#scrollToTopBtn.show{opacity:1;visibility:visible;transform:translateY(0)}#scrollToTopBtn:hover{background-color:var(--brand-primary-dark);transform:translateY(-3px) scale(1.05)}#scrollToTopBtn:focus-visible{box-shadow:var(--shadow-focus),var(--shadow-md)}#overlay{position:fixed;top:0;z-index:9999;width:100%;height:100%;display:none;background:rgba(15,23,28,0.65);backdrop-filter:blur(2px)}.cv-spinner{height:100%;display:flex;justify-content:center;align-items:center;flex-direction:column}.spinner{width:50px;height:50px;border:4px rgba(255,255,255,0.2) solid;border-top:4px var(--brand-accent) solid;border-radius:50%;animation:sp-anime 0.8s infinite linear}@keyframes sp-anime{100%{transform:rotate(360deg)}}.cv-spinner p{color:#fff;margin-top:15px;font-weight:500}.btn-green{background-color:var(--bs-primary) !important;color:#fff !important;border-radius:var(--radius-sm) !important;padding:10px 24px !important;border:none !important}.btn-red{background-color:var(--bs-secondary) !important;color:#fff !important;border-radius:var(--radius-sm) !important;padding:10px 24px !important;border:none !important}.table{--bs-table-striped-bg:rgba(0,103,129,0.04);border-color:var(--brand-border)}.table >:not(caption) > * > *{padding:0.85rem 1rem;vertical-align:middle}.table thead th{font-family:'IBM Plex Sans',sans-serif;font-weight:600;letter-spacing:0.03em;text-transform:uppercase;font-size:0.78rem;color:var(--brand-primary);background-color:rgba(0,103,129,0.06);border-bottom-width:1px}.bg-brand-teal .btn{box-shadow:0 8px 20px rgba(0,0,0,0.18)}.rounded-3.shadow-lg.overflow-hidden.border{border-radius:var(--radius-lg) !important;border-color:var(--brand-border) !important;box-shadow:var(--shadow-lg) !important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}.card-hover-effect:hover,.btn:hover,.btn-outline-glow:hover,.btn-outline-glow-light:hover{transform:none}}@media (max-width:991.98px){.navbar-collapse{background:rgba(255,255,255,0.98);border:1px solid var(--brand-border);border-radius:var(--radius-lg);margin-top:0.75rem;padding:1rem;box-shadow:var(--shadow-md)}.navbar-nav .nav-link{padding:0.7rem 1rem !important}.navbar-nav .nav-link::after{left:1rem;transform:none;bottom:0.35rem}.navbar-nav .nav-link:hover::after,.navbar-nav .nav-link.active::after{width:2.5rem}.navbar-collapse .btn-secondary-custom{width:100%;margin-top:0.5rem;text-align:center}.hero-section{min-height:auto;padding-block:4rem 3rem}.hero-gradient{background:linear-gradient( to bottom,var(--bs-body-bg) 0%,rgba(245,248,251,0.92) 55%,rgba(245,248,251,0.55) 100% )}}@media (max-width:767.98px){:root{--header-height:68px}.display-4{font-size:calc(1.65rem + 1.5vw)}.display-5{font-size:calc(1.45rem + 1.2vw)}.display-6{font-size:calc(1.3rem + 0.9vw)}.hero-section .d-flex.gap-3{flex-direction:column;align-items:stretch !important}.hero-section .btn{width:100%;justify-content:center}.position-absolute.ms-5.mb-n5{position:relative !important;transform:none !important;margin:1rem 0 0 !important;max-width:100% !important;left:auto !important;bottom:auto !important;inset-inline-start:auto !important}.hero-img-box{height:280px}.map-container{height:260px}#scrollToTopBtn{bottom:18px;right:18px;width:46px;height:46px}.bg-brand-teal.rounded-4.p-5{padding:2rem !important;text-align:center}.bg-brand-teal.rounded-4.p-5 .btn{width:100%}}@media (min-width:1400px){.container{max-width:1240px}.hero-section{min-height:88vh}}@media (min-width:1920px){.container{max-width:1320px}}@media print{.glass-header,#scrollToTopBtn,.navbar-toggler{display:none !important}main{padding-top:0 !important}body{background:#fff;color:#000}}.btn-primary-glow{position:relative;color:#fff;background-color:var(--bs-primary);border:2px solid var(--bs-primary);overflow:hidden;z-index:1;transition:color 0.3s cubic-bezier(0.23,1,0.32,1),transform 0.3s cubic-bezier(0.23,1,0.32,1),box-shadow 0.3s cubic-bezier(0.23,1,0.32,1)}.btn-primary-glow::before{content:'';position:absolute;inset:0;border-radius:inherit;transform:scaleX(0);transform-origin:center;z-index:-1;background-color:#fff;transition:transform 0.45s cubic-bezier(0.23,1,0.32,1)}.btn-primary-glow:hover{color:var(--bs-primary);transform:translateY(-3px) scale(1.03);box-shadow:0 10px 24px rgba(0,103,129,0.35)}.btn-primary-glow:hover::before{transform:scaleX(1)}.btn-primary-glow:active{transform:translateY(-1px) scale(1)}