.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hero-v3{min-height:700px}.home-about{background:#fff}.about-home-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}.about-photo{position:relative}.about-photo:before{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid #cfd9e1;z-index:0}.about-photo img{position:relative;z-index:1;width:100%;height:500px;object-fit:cover;box-shadow:0 25px 55px rgba(7,29,59,.14)}.photo-caption{position:absolute;z-index:2;left:28px;bottom:28px;background:rgba(6,24,45,.92);color:#fff;padding:15px 18px;border-left:4px solid var(--accent);font:600 13px/1.2 "Oswald",sans-serif;text-transform:uppercase;letter-spacing:.06em}.about-copy h2,.safety-home h2,.industries-home h2,.support-home h2,.contact-band h2{font:600 clamp(40px,4.2vw,60px)/1.08 "Oswald",sans-serif;text-transform:uppercase;letter-spacing:-.02em;margin:14px 0 24px}.about-copy p{color:var(--muted)}.text-arrow{display:inline-flex;align-items:center;gap:18px;margin-top:18px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}.text-arrow span{display:grid;place-items:center;width:36px;height:36px;background:var(--navy);color:#fff;transition:.25s}.text-arrow:hover span{background:var(--accent);transform:translateX(4px)}
.services-home{background:linear-gradient(rgba(246,248,250,.96),rgba(246,248,250,.98)),url("assets/hero-industrial.jpg") center/cover fixed}.service-cards-v3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-cards-v3 article{min-height:310px;background:#fff;border:1px solid var(--line);padding:35px;box-shadow:0 14px 35px rgba(12,42,72,.06);position:relative;transition:.3s}.service-cards-v3 article:hover{background:var(--navy);color:#fff;transform:translateY(-7px);box-shadow:0 25px 55px rgba(6,24,45,.18)}.service-icon{width:42px;height:42px;border:1px solid #cfd9e0;position:relative}.service-icon:before{content:"";position:absolute;width:18px;height:3px;left:11px;top:18px;background:var(--accent)}.service-cards-v3 h3{font:600 25px/1.1 "Oswald",sans-serif;text-transform:uppercase;margin:45px 0 14px}.service-cards-v3 p{font-size:13px;color:var(--muted)}.service-cards-v3 article:hover p{color:#bdcad5}.service-cards-v3 a{position:absolute;left:35px;bottom:28px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--blue)}.service-cards-v3 a span{margin-left:8px}.service-cards-v3 article:hover a{color:var(--accent)}
.industries-home{padding:105px 0;background:linear-gradient(100deg,rgba(4,20,38,.97),rgba(4,20,38,.68)),url("assets/hero-industrial.jpg") center/cover fixed;color:#fff}.industries-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.industries-home p{color:#c3d1dc}.industry-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:74px;gap:12px}.industry-tags span{display:flex;align-items:center;padding:16px 20px;border:1px solid rgba(255,255,255,.26);background:rgba(4,20,38,.35);font-size:12px;line-height:1.45;box-sizing:border-box;backdrop-filter:blur(6px)}
.safety-home{background:#fff}.safety-home-grid{display:grid;grid-template-columns:1.15fr .75fr;gap:100px;align-items:center}.safety-home p{color:var(--muted)}.commitment-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;list-style:none;padding:0;margin:28px 0}.commitment-list li{padding:13px 15px;background:var(--soft);font-size:12px;font-weight:800}.commitment-list li:before{content:"✓";color:var(--accent);margin-right:10px}.safety-visual{padding:45px;background:linear-gradient(145deg,#f8fafb,#edf2f5);border-top:6px solid var(--accent);box-shadow:20px 20px 0 var(--navy);text-align:center}.safety-visual img{height:140px;object-fit:contain;margin:auto}.safety-visual strong,.safety-visual small{display:block}.safety-visual strong{margin-top:25px;font:600 19px/1.2 "Oswald",sans-serif;text-transform:uppercase}.safety-visual small{margin-top:10px;color:var(--muted)}
.support-home{padding:85px 0;background:var(--navy);color:#fff;position:relative;overflow:hidden}.support-home:after{content:"SUPPORT";position:absolute;right:-20px;bottom:-70px;color:rgba(255,255,255,.035);font:700 180px/1 "Oswald",sans-serif;pointer-events:none}.support-home-grid{display:flex;align-items:center;justify-content:space-between;gap:70px;position:relative;z-index:1}.support-home p{color:#bdcad5;max-width:720px}.faq-preview{display:grid;grid-template-columns:1fr 1fr;gap:15px}.faq-preview details{padding:22px 24px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(6,24,45,.05)}.faq-preview summary{cursor:pointer;font:600 17px/1.25 "Oswald",sans-serif;text-transform:uppercase}.faq-preview p{font-size:13px;color:var(--muted)}.contact-band{padding:110px 0;background:linear-gradient(90deg,rgba(4,20,38,.97),rgba(4,20,38,.65)),url("assets/quality-inspection.jpg") center/cover;color:#fff}.contact-band .wrap{max-width:900px;margin-left:max(24px,calc((100vw - 1220px)/2))}.contact-band p{color:#c8d5df;max-width:760px}
.page-hero-v3{padding:115px 0}.service-jump{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:96px;z-index:20}.service-jump .wrap{display:flex;gap:0;overflow-x:auto}.service-jump a{padding:19px 16px;border-right:1px solid var(--line);font:600 11px/1.2 "Oswald",sans-serif;text-transform:uppercase;white-space:nowrap}.service-jump a:hover{background:var(--navy);color:#fff}.service-detail{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;scroll-margin-top:180px}.service-detail-intro h2{font:600 clamp(36px,4vw,52px)/1.08 "Oswald",sans-serif;text-transform:uppercase;margin:14px 0 20px}.service-detail-intro p{color:var(--muted)}.service-detail-groups{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-detail-groups>div{background:var(--soft);padding:28px}.service-detail-groups h3{font:600 18px/1.2 "Oswald",sans-serif;text-transform:uppercase;margin-top:0}.service-detail-groups ul{padding-left:18px;margin-bottom:0}.service-detail-groups li{font-size:13px;margin:7px 0}.service-divider{height:1px;background:var(--line);margin:75px 0}.editorial-grid{display:grid;grid-template-columns:1.2fr .75fr;gap:90px;align-items:start}.image-side img{width:100%;height:245px;object-fit:cover;margin-bottom:28px}.quality-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.quality-list span{padding:14px;background:var(--soft);font-size:13px;font-weight:800}.quality-side{text-align:center}.quality-side img{height:150px;object-fit:contain;margin:auto}.quality-side strong{display:block;margin:22px 0;font:600 18px/1.2 "Oswald",sans-serif;text-transform:uppercase}.industry-grid,.project-grid,.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.industry-grid article,.project-grid article,.article-grid article{min-height:260px;padding:32px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px rgba(7,29,59,.06);position:relative}.industry-grid h3,.project-grid h2,.article-grid h2{font:600 22px/1.15 "Oswald",sans-serif;text-transform:uppercase}.industry-grid p,.project-grid p,.article-grid p{font-size:13px;color:var(--muted)}.industry-grid a{position:absolute;left:32px;bottom:25px;color:var(--blue);font-size:11px;font-weight:900;text-transform:uppercase}.project-grid article,.article-grid article{border-top:5px solid var(--accent)}.project-grid span,.article-grid span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--blue)}.project-note{margin-top:25px;font-size:12px;color:var(--muted)}.form-title{font:600 45px/1.1 "Oswald",sans-serif;text-transform:uppercase}.brochure-link{display:inline-block!important;margin-top:15px!important;color:var(--accent);font-weight:800!important}
.chat-launcher{position:fixed;right:24px;bottom:24px;z-index:1000;height:56px;padding:0 20px;border:0;background:var(--accent);color:#fff;display:flex;align-items:center;gap:10px;box-shadow:0 18px 45px rgba(6,24,45,.28);cursor:pointer;font:800 12px/1 "Manrope",sans-serif}.chat-launcher:hover{transform:translateY(-3px)}.chat-pulse{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.6);animation:chatPulse 2s infinite}.chat-symbol{font-size:18px}.chat-panel{position:fixed;right:24px;bottom:92px;z-index:1001;width:min(380px,calc(100vw - 30px));height:540px;background:#fff;box-shadow:0 30px 80px rgba(2,18,34,.32);border:1px solid #d8e1e8;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(18px) scale(.98);transition:.25s}.chat-panel.open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.chat-head{position:static;background:var(--navy);color:#fff;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;box-shadow:none}.chat-head>div{display:grid;grid-template-columns:12px 1fr;column-gap:9px}.chat-status{width:9px;height:9px;border-radius:50%;background:#35d27f;grid-row:1/3;margin-top:5px}.chat-head strong{font:600 17px/1.1 "Oswald",sans-serif;text-transform:uppercase}.chat-head small{color:#aebfcd}.chat-close{border:0;background:transparent;color:#fff;font-size:26px;cursor:pointer}.chat-body{flex:1;padding:18px;overflow-y:auto;background:#f4f7f9}.chat-message{max-width:88%;padding:11px 13px;margin-bottom:11px;font-size:12px;line-height:1.55}.chat-message.bot{background:#fff;border-left:3px solid var(--accent);box-shadow:0 7px 20px rgba(7,29,59,.06)}.chat-message.user{background:var(--navy);color:#fff;margin-left:auto}.chat-message a{display:block;margin-top:8px;color:var(--blue);font-weight:900}.chat-suggestions{display:flex;gap:6px;overflow-x:auto;padding:10px 12px;background:#fff;border-top:1px solid var(--line)}.chat-suggestions button{border:1px solid #cdd8e0;background:#fff;padding:7px 9px;white-space:nowrap;font-size:10px;cursor:pointer}.chat-suggestions button:hover{border-color:var(--accent);color:var(--accent)}.chat-form{display:flex;padding:12px;background:#fff;border-top:1px solid var(--line)}.chat-form input{flex:1;border:1px solid #cad5dd;padding:11px;font:12px "Manrope",sans-serif}.chat-form button{width:44px;border:0;background:var(--accent);color:#fff;font-size:19px;cursor:pointer}@keyframes chatPulse{70%{box-shadow:0 0 0 9px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@media(max-width:1100px){.about-home-grid,.safety-home-grid,.industries-home-grid,.service-detail,.editorial-grid{gap:50px}.service-cards-v3{grid-template-columns:1fr 1fr}.nav nav{gap:12px}.nav nav a{font-size:10px}}
@media(max-width:1000px){.service-jump{top:78px}.about-home-grid,.safety-home-grid,.industries-home-grid,.service-detail,.editorial-grid{grid-template-columns:1fr}.about-photo{order:2}.industries-home-grid{gap:45px}.support-home-grid{align-items:flex-start;flex-direction:column}.industry-grid,.project-grid,.article-grid{grid-template-columns:1fr 1fr}.contact-band .wrap{margin:auto}.chat-panel{bottom:88px}}
@media(max-width:650px){.hero-v3{min-height:690px}.about-photo img{height:330px}.service-cards-v3,.industry-grid,.project-grid,.article-grid,.service-detail-groups,.faq-preview,.quality-list,.commitment-list{grid-template-columns:1fr}.service-cards-v3 article{min-height:285px}.industries-home,.contact-band{padding:80px 0;background-attachment:scroll}.industry-tags{grid-auto-rows:84px;gap:10px}.industry-tags span{padding:15px 14px}.safety-visual{box-shadow:10px 10px 0 var(--navy)}.service-jump{display:none}.service-detail{scroll-margin-top:95px}.service-divider{margin:55px 0}.chat-launcher{right:15px;bottom:15px}.chat-label{display:none}.chat-launcher{width:55px;padding:0;justify-content:center}.chat-pulse{display:none}.chat-panel{right:15px;bottom:80px;height:min(540px,calc(100vh - 100px))}}
@media(prefers-reduced-motion:reduce){.chat-pulse{animation:none}.chat-panel,.chat-launcher{transition:none}}
.service-cards-v3>.service-card-v3{position:static;display:block;color:inherit;letter-spacing:normal;text-transform:none}.service-card-v3 article{height:100%}.service-card-action{position:absolute;left:35px;bottom:28px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--blue)}.service-card-v3:hover .service-card-action{color:var(--accent)}
.safety-visual img{width:220px;height:140px;object-fit:cover;object-position:center}
.quality-side img{width:235px;height:150px;object-fit:cover;object-position:center}

/* Complete company story and unnumbered delivery process */
.about-scope{margin-top:26px;padding:24px 26px;background:linear-gradient(135deg,#f3f6f8,#eaf0f4);border-left:5px solid var(--accent)}
.about-scope strong{display:block;margin-bottom:8px;font:600 17px/1.2 "Oswald",sans-serif;text-transform:uppercase;color:var(--navy)}
.about-scope p{font-size:13px;margin:0}
.why-home{position:relative;display:grid;grid-template-columns:.76fr 1.24fr;gap:18px;margin-top:95px;padding:18px;scroll-margin-top:130px;overflow:hidden;border:1px solid rgba(8,45,78,.12);border-top:4px solid var(--accent);border-radius:12px;background:linear-gradient(135deg,rgba(239,245,249,.98),rgba(218,229,238,.94)),url("assets/hero-industrial.jpg") center/cover;box-shadow:0 30px 70px rgba(6,24,45,.14)}
.why-home-heading{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:44px 40px;border-radius:7px;background:linear-gradient(145deg,rgba(5,24,45,.97),rgba(8,53,88,.91)),url("assets/hero-industrial.jpg") center/cover;color:#fff;box-shadow:0 18px 42px rgba(6,24,45,.2)}
.why-home-heading .eyebrow{color:#9fc4df}
.why-home-heading h2{font:600 clamp(32px,3.2vw,46px)/1.08 "Oswald",sans-serif;text-transform:uppercase;letter-spacing:-.02em;margin:14px 0 18px;color:#fff}
.why-home-heading p{max-width:420px;margin-bottom:0;color:#c9d8e4;font-size:14px}
.why-capability-panel{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:32px 40px;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:linear-gradient(145deg,rgba(5,24,45,.97),rgba(8,53,88,.9)),url("assets/quality-inspection.jpg") center/cover;color:#fff;box-shadow:0 18px 42px rgba(6,24,45,.2)}
.why-capability-panel:after{content:"TQI";position:absolute;right:-18px;bottom:-48px;color:rgba(255,255,255,.035);font:700 125px/1 "Oswald",sans-serif;pointer-events:none}
.why-capability-panel p{position:relative;z-index:1;margin:0;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.17);color:#fff;font:600 clamp(15px,1.55vw,21px)/1.2 "Oswald",sans-serif;text-transform:uppercase;letter-spacing:.025em}
.why-capability-panel p:last-child{border-bottom:0}
.process-home{position:relative;overflow:hidden;background:linear-gradient(105deg,rgba(4,20,38,.985),rgba(7,38,70,.91)),url("assets/hero-industrial.jpg") center/cover fixed;color:#fff}
.process-home:after{content:"PROCESS";position:absolute;right:-25px;top:-65px;color:rgba(255,255,255,.03);font:700 190px/1 "Oswald",sans-serif;pointer-events:none}
.process-home .wrap{position:relative;z-index:1}.process-home .section-title{color:#fff}.process-home .section-heading>p{color:#c0cfdb}
.process-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16)}
.process-flow article{position:relative;min-height:265px;padding:31px 25px;background:rgba(5,25,47,.88);transition:.3s}
.process-flow article:hover{background:rgba(15,58,97,.96);transform:translateY(-5px)}
.process-mark{position:relative;display:block;width:42px;height:42px;border:1px solid rgba(255,255,255,.3)}
.process-mark:before,.process-mark:after{content:"";position:absolute;background:var(--accent)}
.process-mark:before{left:11px;right:11px;height:3px;top:19px}.process-mark:after{top:11px;bottom:11px;width:3px;left:19px}
.process-flow h3{font:600 20px/1.12 "Oswald",sans-serif;text-transform:uppercase;margin:38px 0 14px}
.process-flow p{font-size:12px;line-height:1.65;color:#b9c9d6}

/* Full-width, image-led mobile navigation */
@media(max-width:1000px){
  body.menu-open{overflow:hidden}
  body.menu-open:before{content:"";position:fixed;inset:0;z-index:45;background:rgba(2,14,27,.74);backdrop-filter:blur(3px)}
  body.menu-open .chat-launcher,body.menu-open .chat-panel{opacity:0;visibility:hidden;pointer-events:none}
  header{z-index:60;backdrop-filter:none}.nav{height:82px}.logo{width:200px;height:68px}
  .menu{display:block;position:relative;width:48px;height:48px;padding:0;border:1px solid #dbe3e9;background:#f4f7f9;color:transparent;z-index:72;cursor:pointer;transition:.25s}
  .menu:before,.menu:after{content:"";position:absolute;left:12px;width:23px;height:2px;background:var(--navy);transition:.25s}
  .menu:before{top:15px;box-shadow:0 8px 0 var(--navy)}.menu:after{top:31px}
  .menu[aria-expanded="true"]{position:fixed;right:20px;top:17px;background:var(--accent);border-color:var(--accent);box-shadow:0 12px 32px rgba(0,0,0,.25)}
  .menu[aria-expanded="true"]:before,.menu[aria-expanded="true"]:after{top:23px;background:var(--navy);box-shadow:none}
  .menu[aria-expanded="true"]:before{transform:rotate(45deg)}.menu[aria-expanded="true"]:after{transform:rotate(-45deg)}
  .nav nav{display:flex;flex-direction:column;align-items:stretch;gap:0;position:fixed;inset:82px 0 0;width:100%;max-height:calc(100dvh - 82px);overflow:auto;padding:38px clamp(30px,8vw,76px) 30px;background:linear-gradient(135deg,rgba(3,17,31,.97),rgba(8,53,88,.91)),url("assets/hero-industrial.jpg") center/cover no-repeat;border:0;border-radius:0;box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-14px);transform-origin:top;transition:opacity .23s ease,transform .23s ease,visibility .23s;z-index:70}
  .nav nav.open{display:flex;opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .nav nav:before{content:"EXPLORE TQI ENGINEERING";color:var(--accent);font:600 11px/1 "Oswald",sans-serif;letter-spacing:.2em;padding:0 0 22px;border-bottom:1px solid rgba(255,255,255,.2)}
  .nav nav:after{content:"ENGINEERING EXCELLENCE · PRECISION DELIVERED";color:#b8cad8;font:700 9px/1.4 "Manrope",sans-serif;letter-spacing:.13em;padding-top:25px;text-align:left}
  .nav nav>a:not(.nav-cta){display:flex;align-items:center;justify-content:space-between;min-height:60px;padding:17px 0!important;color:#fff;font:600 17px/1.25 "Oswald",sans-serif!important;text-transform:uppercase;letter-spacing:.065em;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.2);border-radius:0;box-shadow:none}
  .nav nav>a:not(.nav-cta):before{content:none}
  .nav nav>a:not(.nav-cta):after{content:"↗";display:block;position:static;width:auto;height:auto;margin-left:18px;color:var(--accent);font:400 14px/1 "Manrope",sans-serif;background:none;transition:transform .2s ease}
  .nav nav>a:not(.nav-cta):hover,.nav nav>a.active{background:transparent;border-color:rgba(143,197,216,.72);color:#fff;box-shadow:none}
  .nav nav>a:not(.nav-cta):hover:after,.nav nav>a.active:after{transform:translate(3px,-3px)}
  .nav .nav-cta{display:flex;align-items:center;justify-content:space-between;margin-top:18px;min-height:60px;padding:17px 0;background:transparent;border:0;border-top:1px solid var(--accent);border-bottom:1px solid var(--accent);color:#fff!important;font:600 17px/1.25 "Oswald",sans-serif;text-align:left;text-transform:uppercase;letter-spacing:.065em;box-shadow:none}
  .nav .nav-cta span{color:var(--accent);font-family:"Manrope",sans-serif}
  .nav .nav-cta:hover{background:transparent;color:#fff!important;transform:none}
  .why-home{grid-template-columns:1fr;gap:14px;margin-top:70px;padding:14px}.why-home-heading{padding:38px 34px}.why-capability-panel{padding:32px 34px}.process-flow{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .about-copy p{font-size:14px}.about-scope{padding:21px 20px}.why-home{margin-top:62px;padding:10px;border-radius:10px}.why-home-heading{padding:30px 24px;border-radius:6px}.why-home-heading h2{font-size:clamp(31px,9vw,40px);margin:12px 0 15px}.why-home-heading p{font-size:13px}.why-capability-panel{padding:25px 24px;border-radius:6px}.why-capability-panel p{padding:11px 0;font-size:clamp(15px,4.4vw,18px);line-height:1.24}
  .process-home{background-attachment:scroll}.process-flow{grid-template-columns:1fr}.process-flow article{min-height:auto;padding:25px 24px}.process-flow h3{margin:26px 0 10px}
  .nav nav{inset:82px 0 0;padding:32px 27px 26px}.nav nav:before{padding-bottom:18px}.nav nav>a:not(.nav-cta),.nav .nav-cta{min-height:56px;padding:15px 0!important;font-size:16px!important}.nav nav:after{padding-top:22px;font-size:8px}
  .chat-launcher{right:14px;bottom:14px;width:auto;height:52px;padding:0 18px;border-radius:28px;background:linear-gradient(135deg,var(--accent),#b7dce8);box-shadow:0 16px 36px rgba(6,24,45,.28);justify-content:center}
  .chat-label{display:inline}.chat-symbol{font-size:16px}.chat-pulse{display:block;width:7px;height:7px}
  .chat-panel{right:10px;bottom:76px;width:calc(100vw - 20px);height:min(590px,calc(100dvh - 96px));border-radius:16px 16px 4px 4px;overflow:hidden}
}

/* Keep the company identity anchored to the left edge at every viewport. */
header .nav{width:100%;max-width:none;margin:0;padding-inline:clamp(18px,3vw,48px)}
header .logo{justify-content:flex-start}
header .logo img{object-position:left center}
@media(max-width:650px){header .nav{padding-inline:14px}}

/* Image-led service cards */
.service-precision{--service-image:url("assets/services/precision-machining.webp")}
.service-machine-maintenance{--service-image:url("assets/services/machine-maintenance.webp")}
.service-plant-maintenance{--service-image:url("assets/services/plant-maintenance.webp")}
.service-process-engineering{--service-image:url("assets/services/process-engineering.webp")}
.service-calibration{--service-image:url("assets/services/calibration-services.webp")}
.service-machine-design{--service-image:url("assets/services/machine-design.webp")}
.service-fabrication{--service-image:url("assets/services/engineering-fabrication.webp")}
.service-cards-v3>.service-card-v3{border-radius:9px}
.service-card-v3 article{isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:360px;padding:32px 30px 70px;overflow:hidden;border:0;border-radius:9px;background:var(--navy);box-shadow:0 18px 42px rgba(6,24,45,.17)}
.service-card-v3 article:before{content:"";position:absolute;inset:0;z-index:-2;background:var(--service-image) center/cover no-repeat;transform:scale(1.015);transition:transform .55s ease}
.service-card-v3 article:after{content:"";position:absolute;inset:0;z-index:-1;border:1px solid rgba(255,255,255,.12);border-radius:inherit;background:linear-gradient(180deg,rgba(4,20,38,.12) 0%,rgba(4,20,38,.34) 38%,rgba(4,20,38,.97) 100%);transition:background .35s ease,border-color .35s ease}
.service-card-v3:hover article:before{transform:scale(1.09)}
.service-card-v3:hover article:after{border-color:rgba(92,145,171,.48);background:linear-gradient(180deg,rgba(4,20,38,.06) 0%,rgba(4,20,38,.28) 35%,rgba(4,20,38,.96) 100%)}
.service-card-v3 .service-icon{position:absolute;top:27px;left:28px;z-index:2;width:40px;height:40px;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:rgba(4,20,38,.52);box-shadow:0 8px 20px rgba(0,0,0,.2);backdrop-filter:blur(5px)}
.service-card-v3 .service-icon:before{left:10px;top:18px;width:18px;height:3px;border-radius:3px}
.service-cards-v3 .service-card-v3 h3{position:relative;z-index:1;margin:0 0 13px;color:#fff;font-size:26px;text-shadow:0 2px 14px rgba(0,0,0,.24)}
.service-cards-v3 .service-card-v3 p{position:relative;z-index:1;margin:0;color:#d3dfe8;font-size:12.5px;line-height:1.65}
.service-card-v3 .service-card-action{z-index:2;color:#fff}
.service-card-v3 .service-card-action>span{color:var(--accent);transition:transform .25s ease}
.service-card-v3:hover .service-card-action{color:#fff}
.service-card-v3:hover .service-card-action>span{display:inline-block;transform:translateX(5px)}
@media(max-width:650px){
  .service-card-v3 article{min-height:310px;padding:28px 24px 64px}
  .service-card-v3 .service-icon{top:22px;left:23px}
  .service-cards-v3 .service-card-v3 h3{font-size:24px}
  .service-card-v3 .service-card-action{left:24px;bottom:23px}
}
@media(prefers-reduced-motion:reduce){
  .service-card-v3 article:before,.service-card-v3 .service-card-action>span{transition:none}
  .service-card-v3:hover article:before{transform:scale(1.015)}
}

/* Professional motion system: restrained, responsive and accessibility-aware. */
.js .reveal{opacity:1;transform:none;filter:none}
.js .reveal:not(.visible){
  opacity:0;
  transform:translate3d(0,28px,0);
  filter:blur(2px);
}
.js .reveal.reveal-left:not(.visible){transform:translate3d(-28px,12px,0)}
.js .reveal.reveal-right:not(.visible){transform:translate3d(28px,12px,0)}
.js .reveal.reveal-media:not(.visible){transform:translate3d(0,20px,0) scale(.985)}
.js .reveal.visible{
  opacity:1;
  transform:none;
  filter:none;
  transition:
    opacity .72s cubic-bezier(.2,.7,.2,1),
    transform .82s cubic-bezier(.2,.7,.2,1),
    filter .65s ease;
  transition-delay:var(--reveal-delay,0ms);
}
.js body:not(.motion-ready) .hero-enter{
  opacity:0;
  transform:translate3d(0,24px,0);
}
.js body.motion-ready .hero-enter{
  opacity:1;
  transform:none;
  transition:
    opacity .8s cubic-bezier(.2,.7,.2,1),
    transform .9s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--hero-delay,0ms);
}

header,.nav,.logo{transition:height .32s ease,width .32s ease,box-shadow .32s ease,background-color .32s ease}
header.is-scrolled{box-shadow:0 12px 36px rgba(4,20,38,.12)}
.motion-image{
  --parallax-y:0px;
  transform:translate3d(0,var(--parallax-y),0) scale(var(--media-scale,1.025));
  transition:transform .9s cubic-bezier(.2,.7,.2,1);
  will-change:transform;
}
.about-photo:hover,.image-side:hover,.safety-visual:hover,.quality-side:hover{--media-scale:1.055}

/* Reveal transitions and the existing premium hover states work together. */
.js .process-flow article.reveal.visible:hover{transform:translateY(-5px)}
.js .cards article.reveal.visible:hover{transform:translateY(-8px)}
.js .steps article.reveal.visible:hover{transform:translateY(-4px)}
.faq-preview details[open] p,.faqs details[open] p{animation:detailReveal .35s ease both}
@keyframes detailReveal{
  from{opacity:0;transform:translateY(-6px)}
  to{opacity:1;transform:none}
}

@media(min-width:1001px){
  header.is-scrolled .nav{height:82px}
  header.is-scrolled .logo{width:235px;height:70px}
  header.is-scrolled .nav nav>a:not(.nav-cta){padding:30px 0}
}
@media(max-width:800px){
  .js .reveal:not(.visible){filter:none}
}
@media(prefers-reduced-motion:reduce){
  .js .reveal,
  .js .reveal:not(.visible),
  .js .reveal.visible,
  .js body:not(.motion-ready) .hero-enter,
  .js body.motion-ready .hero-enter{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
  }
  .motion-image{transform:none!important;transition:none!important;will-change:auto}
  .faq-preview details[open] p,.faqs details[open] p{animation:none}
}

/* Company contact system */
.top-contact-bar{gap:28px}
.top-contact-links{display:flex;align-items:center;gap:0}
.top-contact-links a{display:flex;align-items:center;height:36px;padding:0 16px;border-left:1px solid rgba(255,255,255,.13);letter-spacing:.045em;transition:background-color .22s ease,color .22s ease}
.top-contact-links a:hover{background:rgba(255,255,255,.07)}
.top-contact-links .top-whatsapp{color:#7be2a6}

.footer-grid{grid-template-columns:1.45fr .8fr 1fr 1.45fr;gap:44px}
.footer-contact-col{min-width:0}
.footer-contact-link{padding:9px 0 11px!important;margin:0!important;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-contact-link small,.footer-contact-col address>small{display:block;margin-bottom:3px;color:#71889a;font:800 8px/1.2 "Manrope",sans-serif;text-transform:uppercase;letter-spacing:.15em}
.footer-contact-link strong{display:block;color:#fff;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.footer-whatsapp{display:inline-flex!important;align-items:center;width:auto;margin:15px 0 19px!important;padding:9px 12px;border:1px solid rgba(76,211,126,.36);border-radius:4px;background:rgba(35,169,86,.1);color:#76dea0;font-weight:800!important}
.footer-contact-col address{margin:0;padding:15px 0 13px;border-top:1px solid rgba(255,255,255,.1);font-style:normal}
.footer-contact-col address a{margin:0;font-size:11px;line-height:1.65;color:#b6c4cf}
.footer-legal{display:flex;flex-wrap:wrap;gap:3px 13px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1)}
.footer-legal a{display:inline-block!important;margin:2px 0!important;color:#778c9d;font-size:9px!important}

.contact-overview{position:relative;overflow:hidden;background:linear-gradient(105deg,rgba(247,250,252,.98),rgba(232,240,246,.94)),url("assets/hero-industrial.jpg") center/cover}
.contact-overview:after{content:"CONTACT";position:absolute;right:-20px;bottom:-82px;color:rgba(6,24,45,.035);font:700 170px/1 "Oswald",sans-serif;pointer-events:none}
.contact-overview .wrap{position:relative;z-index:1}
.contact-overview-head{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:45px}
.contact-overview-head h2{max-width:720px;margin:12px 0 0;font:600 clamp(38px,4.2vw,58px)/1.08 "Oswald",sans-serif;text-transform:uppercase;letter-spacing:-.02em}
.contact-overview-head>p{margin:0;color:var(--muted);font-size:15px}
.contact-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.contact-card{position:relative;display:flex;flex-direction:column;min-height:218px;padding:30px 27px 27px;overflow:hidden;border:1px solid rgba(7,42,72,.14);border-top:4px solid var(--blue);border-radius:8px;background:rgba(255,255,255,.95);box-shadow:0 16px 38px rgba(6,24,45,.09);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background-color .3s ease}
.contact-card:before{content:"";width:8px;height:8px;margin-bottom:27px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px rgba(92,145,171,.11)}
.contact-card>span{color:var(--blue);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.15em}
.contact-card strong{margin:9px 0 8px;color:var(--navy);font:600 20px/1.25 "Oswald",sans-serif;overflow-wrap:anywhere}
.contact-card small{margin-top:auto;color:var(--muted);font-size:10px}
.contact-card i{position:absolute;right:24px;top:25px;color:var(--blue);font-style:normal;font-size:19px;transition:transform .25s ease}
.contact-card:hover{transform:translateY(-7px);border-color:rgba(23,104,166,.35);background:#fff;box-shadow:0 24px 52px rgba(6,24,45,.16)}
.contact-card:hover i{transform:translate(3px,-3px)}
.contact-whatsapp{border-top-color:#24a85d}.contact-whatsapp:before{background:#24a85d;box-shadow:0 0 0 6px rgba(36,168,93,.12)}.contact-whatsapp>span,.contact-whatsapp i{color:#168347}
.contact-location{border-top-color:var(--accent)}

.quote-section{background:#fff}
.quote-layout{align-items:start}
.quote-form-panel{padding:45px;border:1px solid #dce4ea;border-top:5px solid var(--accent);border-radius:8px;background:#fff;box-shadow:0 24px 60px rgba(6,24,45,.09)}
.quote-intro{max-width:680px;margin:-4px 0 28px;color:var(--muted);font-size:13px}
.quote-form-panel .form-grid input:focus,.quote-form-panel .form-grid select:focus,.quote-form-panel .form-grid textarea:focus{outline:2px solid rgba(23,104,166,.22);border-color:var(--blue);background:#fff}
.contact-side{position:relative;overflow:hidden;border-top-color:var(--accent);background:linear-gradient(145deg,rgba(4,20,38,.98),rgba(8,53,88,.92)),url("assets/hero-industrial.jpg") center/cover;color:#fff}
.contact-side:after{content:"TQI";position:absolute;right:-18px;bottom:-32px;color:rgba(255,255,255,.035);font:700 115px/1 "Oswald",sans-serif;pointer-events:none}
.contact-side h3{position:relative;z-index:1;margin:12px 0 18px;font:600 29px/1.15 "Oswald",sans-serif;text-transform:uppercase}
.contact-side p{position:relative;z-index:1;color:#c0cfdb;font-size:13px}
.contact-side-list{position:relative;z-index:1;margin:25px 0}
.contact-side-list a{display:block;padding:14px 0;border-top:1px solid rgba(255,255,255,.16)}
.contact-side-list small{display:block;color:#88a8c0;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}
.contact-side-list strong{display:block;margin-top:4px;color:#fff;font-size:12px;overflow-wrap:anywhere}
.contact-side-actions{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.contact-side-actions .btn.navy{background:#fff;color:var(--navy)}
.contact-side .text-arrow{color:#a9cae2}

.office-location{padding:100px 0;scroll-margin-top:95px;background:#03111f}
.map-panel{display:grid;grid-template-columns:.72fr 1.28fr;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-top:5px solid var(--accent);border-radius:10px;box-shadow:0 30px 75px rgba(0,0,0,.3)}
.office-card{display:flex;flex-direction:column;justify-content:center;padding:55px 48px;background:radial-gradient(circle at 0 0,rgba(23,104,166,.32),transparent 46%),linear-gradient(145deg,#06182d,#0a2d4e);color:#fff}
.office-card h2{margin:13px 0 24px;font:600 clamp(35px,3.8vw,52px)/1.08 "Oswald",sans-serif;text-transform:uppercase;letter-spacing:-.02em}
.office-card address{padding:20px 0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);color:#fff;font-style:normal;font-weight:700;line-height:1.75}
.office-card p{color:#b8c9d6;font-size:12px}
.office-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.map-frame{position:relative;min-height:520px;background:#dce4e9}
.map-frame iframe{display:block;width:100%;height:100%;min-height:520px;border:0;filter:saturate(.78) contrast(1.02)}
.map-frame>a{position:absolute;right:20px;bottom:20px;padding:11px 15px;border-radius:4px;background:rgba(4,20,38,.94);box-shadow:0 12px 28px rgba(0,0,0,.25);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}

.contact-direct{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:900px;margin-top:30px}
.contact-direct>a{position:relative;padding:16px 18px;border:1px solid rgba(255,255,255,.2);border-left:3px solid var(--accent);background:rgba(255,255,255,.07);backdrop-filter:blur(6px);transition:background-color .25s ease,transform .25s ease}
.contact-direct>a:hover{transform:translateY(-3px);background:rgba(255,255,255,.13)}
.contact-direct small{display:block;color:#94b4cc;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}
.contact-direct strong{display:block;margin-top:4px;color:#fff;font-size:11px;overflow-wrap:anywhere}
.emergency-direct{display:grid;gap:8px;margin-top:25px}
.emergency-direct a{padding:14px 16px;border-left:3px solid var(--accent);background:#fff;box-shadow:0 8px 20px rgba(6,24,45,.07)}
.emergency-direct small{display:block;color:var(--blue);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.emergency-direct strong{display:block;margin-top:3px;color:var(--navy);font-size:12px}

@media(max-width:1100px){
  .top-contact-links a{padding:0 11px;font-size:9px}
  .contact-card-grid{grid-template-columns:1fr 1fr}
  .map-panel{grid-template-columns:1fr}
  .map-frame,.map-frame iframe{min-height:460px}
}
@media(max-width:1000px){
  .footer-grid{grid-template-columns:1fr 1fr;gap:48px}
  .contact-overview-head{grid-template-columns:1fr;gap:20px}
  .quote-form-panel{padding:38px}
}
@media(max-width:650px){
  .footer-grid{grid-template-columns:1fr;gap:38px}
  .footer-contact-col{padding-top:3px}
  .contact-overview{padding:75px 0}
  .contact-overview:after{font-size:100px;bottom:-45px}
  .contact-card-grid{grid-template-columns:1fr;gap:10px}
  .contact-card{min-height:180px;padding:25px 23px 22px}
  .contact-card:before{margin-bottom:21px}
  .quote-form-panel{padding:28px 21px}
  .contact-side{padding:30px 24px}
  .office-location{padding:72px 0}
  .office-card{padding:38px 25px}
  .office-actions{flex-direction:column;align-items:stretch}
  .office-actions .btn{width:100%}
  .map-frame,.map-frame iframe{min-height:380px}
  .map-frame>a{right:12px;bottom:12px}
  .contact-direct{grid-template-columns:1fr}
}

/* Customer-approved cool steel accent system. */
.hero-trust{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 22px;
  width:min(680px,100%);
  max-width:100%;
  margin-top:34px;
  padding:17px 20px;
  border:1px solid rgba(143,197,216,.28);
  background:rgba(6,24,45,.28);
  backdrop-filter:blur(7px);
}
.hero-trust span{width:auto}
.btn.accent{color:var(--navy)}
.nav-cta:hover{color:var(--navy)!important}
.nav-cta:hover span,.text-arrow:hover span{color:var(--navy)}
.cta{
  color:var(--navy);
  background:linear-gradient(135deg,var(--accent-soft),var(--accent));
}
.cta:after{color:rgba(6,24,45,.055)}
.chat-launcher,.chat-form button{color:var(--navy)}
@media(max-width:1000px){
  .menu[aria-expanded="true"]:before,
  .menu[aria-expanded="true"]:after{background:var(--navy)}
}
@media(max-width:620px){
  .hero-trust{gap:11px 14px;padding:15px 17px;font-size:9.5px}
  .hero-trust span{width:auto}
}

/* Image-led information panels on the Services page. */
.service-detail-groups{
  align-items:stretch;
}
.service-detail-groups>.service-info-card{
  --panel-image:url("assets/hero-industrial.jpg");
  position:relative;
  isolation:isolate;
  min-height:340px;
  padding:31px 30px;
  overflow:hidden;
  border:1px solid rgba(143,197,216,.3);
  border-radius:9px;
  background-color:var(--navy);
  background-image:
    linear-gradient(135deg,rgba(3,17,31,.96) 0%,rgba(6,42,72,.88) 55%,rgba(23,104,166,.72) 100%),
    var(--panel-image);
  background-position:center;
  background-size:cover;
  box-shadow:0 18px 42px rgba(6,24,45,.18);
  color:#fff;
  transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease;
}
.service-detail-groups>.service-info-card:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 36%,rgba(3,17,31,.18));
  pointer-events:none;
}
.service-detail-groups>.service-info-card:after{
  content:"";
  position:absolute;
  left:30px;
  top:66px;
  width:44px;
  height:3px;
  border-radius:2px;
  background:var(--accent);
  box-shadow:0 0 18px rgba(143,197,216,.35);
}
.service-detail-groups>.service-info-card:hover{
  transform:translateY(-6px);
  border-color:rgba(143,197,216,.58);
  box-shadow:0 26px 58px rgba(6,24,45,.26);
}
.service-detail-groups>.service-info-card h3{
  margin:0 0 35px;
  color:#fff;
  font-size:20px;
  letter-spacing:.025em;
  text-shadow:0 2px 14px rgba(0,0,0,.35);
}
.service-detail-groups>.service-info-card ul{
  position:relative;
  z-index:1;
  margin:0;
  padding:0;
  list-style:none;
}
.service-detail-groups>.service-info-card li{
  position:relative;
  margin:0;
  padding:7px 0 7px 19px;
  border-bottom:1px solid rgba(255,255,255,.12);
  color:#f3f8fb;
  font-size:12.5px;
  line-height:1.45;
  text-shadow:0 1px 10px rgba(0,0,0,.32);
}
.service-detail-groups>.service-info-card li:last-child{
  border-bottom:0;
}
.service-detail-groups>.service-info-card li:before{
  content:"";
  position:absolute;
  left:0;
  top:14px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 4px rgba(143,197,216,.12);
}

.service-info-precision{--panel-image:url("assets/services/precision-machining.webp")}
.service-info-precision-applications{--panel-image:url("assets/service-panels/precision-applications.webp")}
.service-info-machine-maintenance{--panel-image:url("assets/services/machine-maintenance.webp")}
.service-info-machine-benefits{--panel-image:url("assets/service-panels/machine-maintenance-benefits.webp")}
.service-info-plant-maintenance{--panel-image:url("assets/services/plant-maintenance.webp")}
.service-info-plant-industries{--panel-image:url("assets/service-panels/plant-industries.webp")}
.service-info-process-engineering{--panel-image:url("assets/services/process-engineering.webp")}
.service-info-process-benefits{--panel-image:url("assets/service-panels/process-benefits.webp")}
.service-info-calibration{--panel-image:url("assets/services/calibration-services.webp")}
.service-info-calibration-equipment{--panel-image:url("assets/service-panels/calibration-equipment.webp")}
.service-info-machine-design{--panel-image:url("assets/services/machine-design.webp")}
.service-info-machine-applications{--panel-image:url("assets/service-panels/machine-design-applications.webp")}
.service-info-fabrication{--panel-image:url("assets/services/engineering-fabrication.webp")}
.service-info-fabrication-approach{--panel-image:url("assets/service-panels/fabrication-approach.webp")}

@media(max-width:650px){
  .service-detail-groups>.service-info-card{
    min-height:310px;
    padding:27px 24px;
  }
  .service-detail-groups>.service-info-card:after{
    left:24px;
    top:61px;
  }
  .service-detail-groups>.service-info-card h3{
    margin-bottom:33px;
    font-size:19px;
  }
}
