{"id":17,"date":"2026-05-22T19:13:07","date_gmt":"2026-05-22T19:13:07","guid":{"rendered":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/?page_id=17"},"modified":"2026-08-11T06:39:14","modified_gmt":"2026-08-11T06:39:14","slug":"home","status":"publish","type":"page","link":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/","title":{"rendered":"Home"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"17\" class=\"elementor elementor-17\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-74c60ad e-con-full e-flex e-con e-parent\" data-id=\"74c60ad\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9f9db01 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"9f9db01\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\n  BHT \u2014 ENGINEERING & MANUFACTURING: HEADER + HERO + SERVICES CONTENT + FOOTER\n  ======================================================\n  Single Elementor \"HTML\" widget.\n\n  UPDATES IN THIS REVISION\n  -------------------------\n  1. Footer background changed to the exact requested gradient:\n       linear-gradient(135deg, #3F290F 0%, #82552A 35%, #A56B38 100%)\n     Since this is lighter\/warmer than the near-black footers on the other\n     subsites, footer text\/link\/border colors were all re-tuned for contrast\n     against it (ivory\/cream text instead of dim grey).\n  2. Language switcher (EN \/ DE) added to the header, matching the globe +\n     UK\/German flag pattern used across the rest of the site, sharing the\n     same \"bhtLang\" localStorage key. Every visible string \u2014 header nav,\n     hero, all four \"Doc.\" sections of the services content, the closing\n     CTA, and the footer \u2014 now has a data-i18n key resolved against a\n     hand-written German dictionary at the bottom of the file (no machine\n     translation). The 3D turbine visualization has no text of its own, so\n     it needs no translation handling.\n  3. Responsiveness pass: added an intermediate 2-column tablet layout for\n     the capability cards (previously jumped straight from 3 columns to 1),\n     tightened hero\/heading type scale on very narrow phones (<380px), and\n     confirmed the language switcher collapses cleanly into the mobile nav\n     accordion like it does elsewhere on the site.\n-->\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<div id=\"bht-page\" style=\"--bht-max:1600px; --bht-pad-inline: clamp(20px, 5vw, 80px); --bht-header-h: 160px;\">\n\n<header class=\"bht-header-wrap\">\n  <div class=\"bht-header-bg\"><\/div>\n\n  <div class=\"bht-header-inner\">\n    <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/\" class=\"bht-header-logo\">\n      <img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/wp-content\/uploads\/2026\/05\/BHT-Logo-300-w.png\" alt=\"BHT Logo\">\n    <\/a>\n\n    <nav class=\"bht-header-nav\">\n      <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/\" data-i18n=\"nav_home\">Home<\/a>\n      <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/about-us\/\" data-i18n=\"nav_about\">About us<\/a>\n      <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/services\/\" data-i18n=\"nav_services\">Services<\/a>\n      <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/contact\/\" data-i18n=\"nav_contact\">Contact<\/a>\n\n      <div class=\"bht-lang-switch\" role=\"group\" aria-label=\"Language selector\">\n        <svg class=\"bht-lang-globe\" viewBox=\"0 0 24 24\" width=\"16\" height=\"16\" aria-hidden=\"true\" focusable=\"false\">\n          <circle cx=\"12\" cy=\"12\" r=\"9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><\/circle>\n          <path d=\"M3 12h18M12 3c2.5 2.6 3.8 5.7 3.8 9s-1.3 6.4-3.8 9c-2.5-2.6-3.8-5.7-3.8-9s1.3-6.4 3.8-9z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><\/path>\n        <\/svg>\n        <button type=\"button\" class=\"bht-lang-btn is-active\" data-lang=\"en\" aria-pressed=\"true\" aria-label=\"Switch to English\">\n          <span class=\"bht-lang-flag\" aria-hidden=\"true\">\n            <svg viewBox=\"0 0 60 40\" width=\"18\" height=\"12\"><rect width=\"60\" height=\"40\" fill=\"#00247d\"\/><path d=\"M0,0 60,40M60,0 0,40\" stroke=\"#fff\" stroke-width=\"8\"\/><path d=\"M0,0 60,40M60,0 0,40\" stroke=\"#cf142b\" stroke-width=\"4\"\/><path d=\"M30,0V40M0,20H60\" stroke=\"#fff\" stroke-width=\"12\"\/><path d=\"M30,0V40M0,20H60\" stroke=\"#cf142b\" stroke-width=\"7\"\/><\/svg>\n          <\/span>\n          <span>EN<\/span>\n        <\/button>\n        <button type=\"button\" class=\"bht-lang-btn\" data-lang=\"de\" aria-pressed=\"false\" aria-label=\"Auf Deutsch umschalten\">\n          <span class=\"bht-lang-flag\" aria-hidden=\"true\">\n            <svg viewBox=\"0 0 60 40\" width=\"18\" height=\"12\"><rect width=\"60\" height=\"13.3\" y=\"0\" fill=\"#000\"\/><rect width=\"60\" height=\"13.3\" y=\"13.3\" fill=\"#dd0000\"\/><rect width=\"60\" height=\"13.4\" y=\"26.6\" fill=\"#ffce00\"\/><\/svg>\n          <\/span>\n          <span>DE<\/span>\n        <\/button>\n      <\/div>\n    <\/nav>\n\n    <button class=\"bht-header-toggle\" aria-label=\"Toggle navigation\" aria-expanded=\"false\">\n      <span><\/span>\n      <span><\/span>\n      <span><\/span>\n    <\/button>\n  <\/div>\n<\/header>\n\n<section class=\"bht-em-hero\">\n  <video class=\"bht-em-hero-video\" autoplay muted loop playsinline>\n    <source src=\"https:\/\/demowebsite.ir\/bht\/wp-content\/uploads\/2026\/07\/upscaled_2160p.mp4\" type=\"video\/mp4\">\n  <\/video>\n  <div class=\"bht-em-hero-scrim\"><\/div>\n\n  <div class=\"bht-em-hero-inner\">\n    <div class=\"bht-em-hero-content\">\n      <h1 class=\"bht-em-hero-title\"><span data-i18n=\"hero_title_1\">High-Precision Engineering,<\/span><br><span class=\"bht-em-hero-accent\" data-i18n=\"hero_title_2\">Reverse Engineering<\/span> <span data-i18n=\"hero_title_3\">&amp; Industrial Manufacturing Services<\/span><\/h1>\n      <p data-i18n=\"hero_body\">In modern industrial sectors, maintaining mechanical integrity and optimizing component lifecycles are essential for operational profitability. BHT provides specialized engineering and contract manufacturing services tailored to the requirements of the German and European industrial markets. We transform technical challenges into precise physical solutions by bridging the gap between legacy machinery requirements and state-of-the-art manufacturing technologies. From initial dimensional analysis to final production, our engineering services prioritize mechanical accuracy, rigorous material compliance, and verifiable tolerances.<\/p>\n      <a href=\"#services\" class=\"bht-em-hero-btn\" data-i18n=\"hero_btn\">Learn about our services<\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ============ SERVICES CONTENT ============ -->\n<div class=\"bht-services\">\n<style>\n.bht-services{\n  --bg:#EFEDEA;\n  --panel:#F8F7F4;\n  --panel-alt:#E7E4DE;\n  --steel:#B0703C;\n  --steel-bright:#C68347;\n  --steel-dim:#9A9691;\n  --ink:#2B2A27;\n  --ink-dim:#6E6A63;\n  --line:rgba(42,40,35,.14);\n  --line-strong:rgba(42,40,35,.26);\n  position:relative;\n\n  color:var(--ink);\n  font-family:Inter,sans-serif;\n  line-height:1.6;\n  -webkit-font-smoothing:antialiased;\n}\n.bht-services, .bht-services *{box-sizing:border-box}\n\n.bht-services .wrap{max-width:1490px;margin:0 auto;padding:0 28px;position:relative;z-index:1}\n\n\/* ---- type ---- *\/\n.bht-services .mono{font-family:Archivo,sans-serif;font-weight:600;letter-spacing:1.5px}\n.bht-services .eyebrow{display:inline-flex;align-items:center;gap:10px;font:600 11px\/1 Archivo,sans-serif;letter-spacing:2.5px;text-transform:uppercase;color:var(--steel-bright)}\n.bht-services .eyebrow:before{content:\"\";width:22px;height:1px;background:var(--steel-bright)}\n.bht-services h1{font:900 clamp(34px,5.2vw,64px)\/1.08 Archivo,sans-serif;text-transform:uppercase;letter-spacing:-.5px;margin:20px 0 22px}\n.bht-services h2{font:800 clamp(24px,2.8vw,34px)\/1.18 Archivo,sans-serif;text-transform:uppercase;letter-spacing:-.2px;margin:0 0 16px}\n.bht-services h3{font:700 18px\/1.3 Archivo,sans-serif;text-transform:uppercase;letter-spacing:.2px;margin:0 0 10px}\n.bht-services p{color:var(--ink-dim);margin:0}\n.bht-services .accent{color:var(--steel-bright)}\n.bht-services .sp{color:var(--steel-bright)}\n\n\/* ---- reveal ---- *\/\n.bht-services .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}\n.bht-services .rv.in{opacity:1;transform:translateY(0)}\n\n\/* ---- title-block card: literal spec-plate motif ---- *\/\n.bht-services .plate{position:relative;border:1px solid var(--line-strong);background:linear-gradient(180deg,var(--panel),var(--panel-alt));padding:26px}\n.bht-services .plate:before,.bht-services .plate:after{content:\"\";position:absolute;width:14px;height:14px;border:1.5px solid var(--steel-bright)}\n.bht-services .plate:before{top:-1px;left:-1px;border-right:none;border-bottom:none}\n.bht-services .plate:after{bottom:-1px;right:-1px;border-left:none;border-top:none}\n.bht-services .plate-ref{position:absolute;top:12px;right:14px;font:600 10px\/1 Archivo,sans-serif;letter-spacing:1.5px;color:var(--ink-dim);z-index:2}\n\n\/* ---- section shell ---- *\/\n.bht-services section{padding:90px 0;border-bottom:1px solid var(--line);position:relative}\n.bht-services section:first-of-type{padding-top:120px}\n.bht-services .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:56px;flex-wrap:wrap}\n.bht-services .section-head h2{max-width:600px}\n.bht-services .section-note{max-width:340px;font-size:14px;color:var(--ink-dim);border-left:2px solid var(--steel-bright);padding-left:16px}\n\n\/* ---- reverse-engineering feature ---- *\/\n.bht-services .feature-row{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:stretch}\n.bht-services .feature-text{display:grid;grid-template-rows:1fr 1fr}\n.bht-services .feature-head{display:flex;flex-direction:column;justify-content:flex-end}\n.bht-services .feature-head h2{margin:20px 0 0}\n.bht-services .feature-body{display:flex;align-items:flex-start;padding-top:22px}\n.bht-services .feature-body p{margin:0}\n\n\/* ---- live 3D turbine panel (used in the Reverse Engineering feature row) ---- *\/\n.bht-services .turbine-panel{padding:0;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:none}\n.bht-services .turbine-panel:before,.bht-services .turbine-panel:after{display:none}\n.bht-services .turbine-panel .cap-canvas{border-bottom:none;flex:1 1 auto;aspect-ratio:auto;min-height:480px}\n\n\/* ---- capability cards (with images) ---- *\/\n.bht-services .cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}\n.bht-services .cap-card{padding:0;overflow:hidden}\n.bht-services .cap-img{position:relative;aspect-ratio:4\/3;overflow:hidden;border-bottom:1px solid var(--line-strong)}\n.bht-services .cap-img img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(25%) contrast(1.05);transition:filter .5s ease,transform .6s ease}\n.bht-services .cap-card:hover .cap-img img{filter:grayscale(0%) contrast(1.1);transform:scale(1.04)}\n.bht-services .cap-canvas{position:relative;aspect-ratio:4\/3;overflow:hidden;border-bottom:1px solid var(--line-strong);background:transparent}\n.bht-services .cap-canvas canvas{display:block;width:100%;height:100%}\n.bht-services .cap-canvas-hint{position:absolute;bottom:10px;left:12px;z-index:2;font:600 9.5px\/1 Archivo,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--steel-dim);pointer-events:none}\n.bht-services .cap-body{padding:24px 26px 26px}\n.bht-services .cap-body p{margin-bottom:16px;font-size:14.5px}\n.bht-services .tag-row{display:flex;flex-wrap:wrap;gap:8px}\n.bht-services .tag{font:600 10.5px Archivo,sans-serif;letter-spacing:.6px;text-transform:uppercase;color:var(--steel-bright);border:1px solid rgba(198,131,71,.4);padding:5px 10px}\n\n\/* ---- QA workflow timeline ---- *\/\n.bht-services .qa-timeline{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}\n.bht-services .qa-timeline:before{content:\"\";position:absolute;top:34px;left:0;right:0;height:1px;background:var(--line-strong);z-index:0}\n.bht-services .qa-step{position:relative;z-index:1}\n.bht-services .qa-num{width:68px;height:68px;border:1.5px solid var(--steel-bright);border-radius:50%;display:flex;align-items:center;justify-content:center;font:800 20px Archivo,sans-serif;color:var(--steel-bright);background:var(--bg);margin-bottom:20px}\n.bht-services .qa-step h3{font-size:15px}\n.bht-services .qa-step p{font-size:13.5px}\n.bht-services .qa-step .mono{display:block;margin-top:10px;font-size:10.5px;color:var(--steel-dim);letter-spacing:1px}\n\n\/* ---- why partner ---- *\/\n.bht-services .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}\n.bht-services .why-grid .plate h3{color:var(--steel-bright)}\n.bht-services .why-grid .plate p{font-size:14px}\n\n\/* ---- closing CTA ---- *\/\n.bht-services .closing{padding:100px 0;text-align:center;border-bottom:none}\n.bht-services .closing h2{max-width:720px;margin:0 auto 18px}\n.bht-services .closing p{max-width:560px;margin:0 auto 36px;font-size:15.5px}\n.bht-services .btn{display:inline-flex;align-items:center;gap:10px;background:var(--steel-bright);color:#FBF9F5;font:700 12.5px Archivo,sans-serif;letter-spacing:1px;text-transform:uppercase;text-decoration:none;padding:15px 26px;transition:background .25s,transform .25s}\n.bht-services .btn:hover{background:var(--steel);color:var(--ink);transform:translateY(-1px)}\n.bht-services .btn:after{content:\"\u2192\"}\n\n.bht-services footer{padding:34px 0;text-align:center}\n.bht-services footer p{font:600 11px Archivo,sans-serif;letter-spacing:1.5px;color:var(--ink-dim);text-transform:uppercase}\n\n@media(max-width:900px){\n  .bht-services .feature-row{grid-template-columns:1fr}\n  .bht-services .turbine-panel .cap-canvas{min-height:340px}\n  .bht-services .qa-timeline{grid-template-columns:1fr;gap:36px}\n  .bht-services .qa-timeline:before{display:none}\n  .bht-services .why-grid{grid-template-columns:1fr}\n  .bht-services .section-head{flex-direction:column;align-items:flex-start}\n  .bht-services .section-note{border-left:none;border-top:2px solid var(--steel-bright);padding-left:0;padding-top:14px}\n}\n@media(prefers-reduced-motion:reduce){.bht-services .rv{opacity:1;transform:none;transition:none}}\n\n\/* ---- RESPONSIVENESS PATCH: intermediate tablet layout + small-phone tightening ----\n   Kept as a separate, later block (rather than edited inline above) so the\n   supplied services markup\/CSS stays otherwise byte-for-byte as delivered. *\/\n@media (min-width:601px) and (max-width:900px){\n  .bht-services .cap-grid{grid-template-columns:repeat(2,1fr)}\n}\n@media (max-width:600px){\n  .bht-services .cap-grid{grid-template-columns:1fr}\n}\n@media (max-width:400px){\n  .bht-services section{padding:64px 0}\n  .bht-services section:first-of-type{padding-top:96px}\n  .bht-services .wrap{padding:0 18px}\n  .bht-services .turbine-panel .cap-canvas{min-height:260px}\n  .bht-services .qa-num{width:56px;height:56px;font-size:17px}\n}\n<\/style>\n\n<section id=\"services\">\n  <div class=\"wrap\">\n    <div class=\"feature-row rv\">\n      <div class=\"feature-text\">\n        <div class=\"feature-head\">\n          <span class=\"eyebrow\" data-i18n=\"s1_eyebrow\">Doc. 01 \u2014 Reverse Engineering<\/span>\n          <h2 data-i18n=\"s1_h2\">Advanced Reverse Engineering &amp; Obsolescence Solutions<\/h2>\n        <\/div>\n        <div class=\"feature-body\">\n          <p data-i18n=\"s1_body\">Using high-precision coordinate measuring machines (CMM) and industrial 3D scanning, we capture the exact geometry of worn or damaged components. Our engineering team translates the data into precise 2D production drawings and 3D parametric CAD models, applying correct ISO\/DIN tolerance classes to ensure perfect fitment during assembly.<\/p>\n        <\/div>\n      <\/div>\n      <div class=\"plate turbine-panel\">\n        <span class=\"plate-ref\" data-i18n=\"s1_fig\">FIG.01 \u2014 Live Model<\/span>\n        <div class=\"cap-canvas\" id=\"turbine-canvas-wrap\">\n          <canvas id=\"turbine-canvas\"><\/canvas>\n          <span class=\"cap-canvas-hint\" data-i18n=\"s1_hint\">Self-assembling from scan data<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section>\n  <div class=\"wrap\">\n    <div class=\"section-head rv\">\n      <div>\n        <span class=\"eyebrow\" data-i18n=\"s2_eyebrow\">Doc. 02 \u2014 Manufacturing<\/span>\n        <h2 data-i18n=\"s2_h2\">Industrial Manufacturing &amp; Fabrication Capabilities<\/h2>\n      <\/div>\n      <p class=\"section-note\" data-i18n=\"s2_note\">Six core capabilities, each executed under certified European standards from raw material to finished part.<\/p>\n    <\/div>\n    <div class=\"cap-grid rv\">\n      <div class=\"plate cap-card\">\n        <span class=\"plate-ref\">CAP.01<\/span>\n        <div class=\"cap-img\"><img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-content\/uploads\/sites\/3\/2026\/06\/Walzlager-768x512.jpg\" alt=\"Precision bearings\"><\/div>\n        <div class=\"cap-body\">\n          <h3 data-i18n=\"cap1_title\">Precision Bearings &amp; Rotating Components<\/h3>\n          <p data-i18n=\"cap1_body\">High-tolerance bearing and rotating-assembly components manufactured and inspected to strict dimensional and material specifications for continuous-duty machinery.<\/p>\n          <div class=\"tag-row\"><span class=\"tag\" data-i18n=\"cap1_tag1\">IT7 Tolerance<\/span><span class=\"tag\" data-i18n=\"cap1_tag2\">Rotating Assemblies<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"plate cap-card\">\n        <span class=\"plate-ref\">CAP.02<\/span>\n        <div class=\"cap-img\"><img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-content\/uploads\/sites\/3\/2026\/06\/CNC-optimized-683x1024.jpg\" alt=\"CNC machining\" style=\"object-position:center 100%;\"><\/div>\n        <div class=\"cap-body\">\n          <h3 data-i18n=\"cap2_title\">CNC Machining &amp; Precision Milling<\/h3>\n          <p data-i18n=\"cap2_body\">Multi-axis CNC milling and turning centers holding tight tolerances up to IT7 or closer. Materials include high-tensile steels, stainless alloys, duplex steels, and engineering plastics.<\/p>\n          <div class=\"tag-row\"><span class=\"tag\">1.4404 \/ 316L<\/span><span class=\"tag\" data-i18n=\"cap2_tag2\">Duplex Steel<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"plate cap-card\">\n        <span class=\"plate-ref\">CAP.03<\/span>\n        <div class=\"cap-img\"><img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-content\/uploads\/sites\/3\/2026\/06\/Montage-von-Elektronikplatinen-mit-Roboterarmen-768x432.jpg\" alt=\"Robotic assembly line\"><\/div>\n        <div class=\"cap-body\">\n          <h3 data-i18n=\"cap3_title\">Automated Assembly &amp; Robotics Integration<\/h3>\n          <p data-i18n=\"cap3_body\">Robotic assembly cells for high-repeatability production, integrating electronic and mechanical subassemblies under controlled process parameters.<\/p>\n          <div class=\"tag-row\"><span class=\"tag\" data-i18n=\"cap3_tag1\">Controlled Process<\/span><span class=\"tag\" data-i18n=\"cap3_tag2\">Traceable Output<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"plate cap-card\">\n        <span class=\"plate-ref\">CAP.04<\/span>\n        <div class=\"cap-img\"><img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-content\/uploads\/sites\/3\/2026\/06\/die-Turbinenschaufeln-768x605.jpeg\" alt=\"Turbine blades\"><\/div>\n        <div class=\"cap-body\">\n          <h3 data-i18n=\"cap4_title\">Heavy-Duty Casting &amp; Forging<\/h3>\n          <p data-i18n=\"cap4_body\">Custom casting and forging for components under extreme structural fatigue \u2014 pattern design, solidification simulation, and heat treatment including normalizing, quenching, and tempering.<\/p>\n          <div class=\"tag-row\"><span class=\"tag\">EN 1561<\/span><span class=\"tag\">EN 10250<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"plate cap-card\">\n        <span class=\"plate-ref\">CAP.05<\/span>\n        <div class=\"cap-img\"><img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-content\/uploads\/sites\/3\/2026\/06\/CNC-gefraster-Ventilkorper-768x511.jpg\" alt=\"CNC-milled valve body\"><\/div>\n        <div class=\"cap-body\">\n          <h3 data-i18n=\"cap5_title\">Structural Steel Fabrication &amp; Welding<\/h3>\n          <p data-i18n=\"cap5_body\">Heavy steel frames, pressure-retaining housings, and custom industrial structures. All welding performed by certified welders under full Welding Procedure Specifications.<\/p>\n          <div class=\"tag-row\"><span class=\"tag\">ISO 9806<\/span><span class=\"tag\">EN ISO 15614<\/span><\/div>\n        <\/div>\n      <\/div>\n      <div class=\"plate cap-card\">\n        <span class=\"plate-ref\">CAP.06<\/span>\n        <div class=\"cap-img\"><img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-content\/uploads\/sites\/3\/2026\/06\/im-Inneren-einer-Turbine.png\" alt=\"Interior of a gas turbine\"><\/div>\n        <div class=\"cap-body\">\n          <h3 data-i18n=\"cap6_title\">Gas Turbine Components &amp; Axial Rotor Assemblies<\/h3>\n          <p data-i18n=\"cap6_body\">Precision-machined blades, discs, and shaft assemblies for axial-flow gas turbines, balanced and inspected to rotating-equipment standards for continuous high-speed duty.<\/p>\n          <div class=\"tag-row\"><span class=\"tag\">ISO 1940 G2.5<\/span><span class=\"tag\" data-i18n=\"cap6_tag2\">Axial Rotor<\/span><\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section>\n  <div class=\"wrap\">\n    <div class=\"section-head rv\">\n      <div>\n        <span class=\"eyebrow\" data-i18n=\"s3_eyebrow\">Doc. 03 \u2014 Quality Assurance<\/span>\n        <h2 data-i18n=\"s3_h2\">Systematic Quality Assurance &amp; Testing Workflow<\/h2>\n      <\/div>\n      <p class=\"section-note\" data-i18n=\"s3_note\">Every component moves through the same four-stage control sequence, in order, before it ships.<\/p>\n    <\/div>\n    <div class=\"qa-timeline rv\">\n      <div class=\"qa-step\">\n        <div class=\"qa-num\">01<\/div>\n        <h3 data-i18n=\"qa1_title\">Metrology &amp; Analysis<\/h3>\n        <p data-i18n=\"qa1_body\">Detailed scanning and mechanical measurement of the physical sample or design envelope.<\/p>\n      <\/div>\n      <div class=\"qa-step\">\n        <div class=\"qa-num\">02<\/div>\n        <h3 data-i18n=\"qa2_title\">Finite Element Analysis<\/h3>\n        <p data-i18n=\"qa2_body\">Stress, thermal, and fatigue simulations identify weak points and optimize geometry before manufacturing.<\/p>\n      <\/div>\n      <div class=\"qa-step\">\n        <div class=\"qa-num\">03<\/div>\n        <h3 data-i18n=\"qa3_title\">Controlled Fabrication<\/h3>\n        <p data-i18n=\"qa3_body\">Manufacturing under strict process control with programmed CNC paths and traceable certified raw materials.<\/p>\n      <\/div>\n      <div class=\"qa-step\">\n        <div class=\"qa-num\">04<\/div>\n        <h3 data-i18n=\"qa4_title\">Non-Destructive Testing<\/h3>\n        <p data-i18n=\"qa4_body\">Internal integrity verification via UT, RT, MT, or PT testing, certified by EN ISO 9712 Level II\/III inspectors.<\/p>\n        <span class=\"mono\">EN ISO 9712<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section>\n  <div class=\"wrap\">\n    <div class=\"section-head rv\">\n      <div>\n        <span class=\"eyebrow\" data-i18n=\"s4_eyebrow\">Doc. 04 \u2014 Partnership<\/span>\n        <h2 data-i18n=\"s4_h2\">Why European Engineering Teams Partner with BHT<\/h2>\n      <\/div>\n    <\/div>\n    <div class=\"why-grid rv\">\n      <div class=\"plate\">\n        <span class=\"plate-ref\">01<\/span>\n        <h3 data-i18n=\"why1_title\">DIN \/ ISO Compliance<\/h3>\n        <p data-i18n=\"why1_body\">All designs, tolerances, and material specifications are executed strictly within the framework of European industrial standards.<\/p>\n      <\/div>\n      <div class=\"plate\">\n        <span class=\"plate-ref\">02<\/span>\n        <h3 data-i18n=\"why2_title\">Component Optimization<\/h3>\n        <p data-i18n=\"why2_body\">We don't just replicate parts \u2014 we analyze failure modes such as wear, fatigue, and corrosion, then propose design or material upgrades to extend service life.<\/p>\n      <\/div>\n      <div class=\"plate\">\n        <span class=\"plate-ref\">03<\/span>\n        <h3 data-i18n=\"why3_title\">Full Documentation Dossier<\/h3>\n        <p data-i18n=\"why3_body\">Every component ships with a complete technical package: CAD files, material test reports, heat treatment protocols, and dimensional inspection sheets.<\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section class=\"closing\" id=\"contact\">\n  <div class=\"wrap rv\">\n    <span class=\"eyebrow\" style=\"justify-content:center\" data-i18n=\"closing_eyebrow\">Get Started<\/span>\n    <h2 data-i18n=\"closing_h2\">Precision Engineering for Modern Manufacturing Challenges<\/h2>\n    <p data-i18n=\"closing_body\">Solving complex industrial problems through high-spec design, technical reengineering, and precision-driven production solutions.<\/p>\n  <\/div>\n<\/section>\n\n<\/div>\n\n<script>\n(function(){\n  var els = document.querySelectorAll('.bht-services .rv');\n  if(!('IntersectionObserver' in window)){ els.forEach(function(e){e.classList.add('in')}); return; }\n  var io = new IntersectionObserver(function(entries){\n    entries.forEach(function(en){\n      if(en.isIntersecting){ en.target.classList.add('in'); io.unobserve(en.target); }\n    });\n  },{threshold:.15});\n  els.forEach(function(e){ io.observe(e); });\n})();\n<\/script>\n\n<script>\n(function(){\n  var cardEl = document.getElementById('turbine-canvas-wrap');\n  var canvas = document.getElementById('turbine-canvas');\n  if(!cardEl || !canvas) return;\n\n  var reduced = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n  function boot(){\n    if(!window.THREE){ return; }\n    try{ initScene(); }catch(e){ \/* fail silently \u2014 HUD\/text still render *\/ }\n  }\n\n  if(window.THREE){\n    boot();\n  } else {\n    var s = document.createElement('script');\n    s.src = 'https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/three.js\/r128\/three.min.js';\n    s.onload = boot;\n    s.onerror = function(){ \/* no three.js available \u2014 degrade gracefully *\/ };\n    document.head.appendChild(s);\n  }\n\n  function easeInOutCubic(x){\n    return x < 0.5 ? 4*x*x*x : 1 - Math.pow(-2*x+2, 3)\/2;\n  }\n\n  function makeShadowTexture(){\n    var c = document.createElement('canvas');\n    c.width = c.height = 256;\n    var ctx = c.getContext('2d');\n    var g = ctx.createRadialGradient(128,128,0,128,128,128);\n    g.addColorStop(0, 'rgba(0,0,0,0.28)');\n    g.addColorStop(0.55, 'rgba(0,0,0,0.1)');\n    g.addColorStop(1, 'rgba(0,0,0,0)');\n    ctx.fillStyle = g;\n    ctx.fillRect(0,0,256,256);\n    return new THREE.CanvasTexture(c);\n  }\n\n  function makeGlowTexture(inner, outer){\n    var c = document.createElement('canvas');\n    c.width = c.height = 256;\n    var ctx = c.getContext('2d');\n    var g = ctx.createRadialGradient(128,128,0,128,128,128);\n    g.addColorStop(0, inner);\n    g.addColorStop(0.4, outer);\n    g.addColorStop(1, 'rgba(0,0,0,0)');\n    ctx.fillStyle = g;\n    ctx.fillRect(0,0,256,256);\n    return new THREE.CanvasTexture(c);\n  }\n\n  function makeBrushedTexture(){\n    var c = document.createElement('canvas');\n    c.width = 512; c.height = 512;\n    var ctx = c.getContext('2d');\n    ctx.fillStyle = '#bfbcb5';\n    ctx.fillRect(0,0,512,512);\n\n    for(var i=0;i<420;i++){\n      var y = Math.random()*512;\n      var shade = 150 + Math.random()*90;\n      ctx.strokeStyle = 'rgba(' + shade + ',' + shade + ',' + shade + ',' + (0.08 + Math.random()*0.1) + ')';\n      ctx.lineWidth = 1 + Math.random()*1.4;\n      ctx.beginPath();\n      ctx.moveTo(0, y);\n      ctx.lineTo(512, y + (Math.random()*10-5));\n      ctx.stroke();\n    }\n    for(var j=0;j<1400;j++){\n      var y2 = Math.random()*512;\n      var shade2 = 130 + Math.random()*130;\n      ctx.strokeStyle = 'rgba(' + shade2 + ',' + shade2 + ',' + shade2 + ',' + (0.05 + Math.random()*0.09) + ')';\n      ctx.lineWidth = 0.4 + Math.random()*0.5;\n      ctx.beginPath();\n      ctx.moveTo(0, y2);\n      ctx.lineTo(512, y2 + (Math.random()*4-2));\n      ctx.stroke();\n    }\n    for(var k=0;k<500;k++){\n      var sx = Math.random()*512, sy = Math.random()*512;\n      var s = 160 + Math.random()*80;\n      ctx.fillStyle = 'rgba(' + s + ',' + s + ',' + s + ',0.06)';\n      ctx.fillRect(sx, sy, 1.5, 1.5);\n    }\n\n    [171, 341].forEach(function(seamY){\n      ctx.fillStyle = 'rgba(40,38,34,0.4)';\n      ctx.fillRect(0, seamY-2, 512, 4);\n      ctx.fillStyle = 'rgba(255,252,244,0.35)';\n      ctx.fillRect(0, seamY+2, 512, 1);\n\n      for(var b=0;b<26;b++){\n        var bx = (b\/26)*512 + 9;\n        ctx.beginPath();\n        ctx.arc(bx, seamY, 4.2, 0, Math.PI*2);\n        var rg = ctx.createRadialGradient(bx-1.2,seamY-1.2,0.4,bx,seamY,4.2);\n        rg.addColorStop(0, 'rgba(255,250,240,0.85)');\n        rg.addColorStop(0.5, 'rgba(90,86,78,0.9)');\n        rg.addColorStop(1, 'rgba(30,28,25,0.9)');\n        ctx.fillStyle = rg;\n        ctx.fill();\n      }\n    });\n\n    for(var v=0;v<9;v++){\n      var vx = 60 + v*22;\n      ctx.fillStyle = 'rgba(35,33,30,0.55)';\n      ctx.fillRect(vx, 236, 12, 3.5);\n    }\n\n    var tex = new THREE.CanvasTexture(c);\n    tex.wrapS = tex.wrapT = THREE.RepeatWrapping;\n    tex.repeat.set(2,2);\n    if('anisotropy' in tex){ tex.anisotropy = 4; }\n    return tex;\n  }\n\n  function makeCubeFace(topColor, botColor, hotspot){\n    var c = document.createElement('canvas');\n    c.width = c.height = 128;\n    var ctx = c.getContext('2d');\n    var g = ctx.createLinearGradient(0,0,0,128);\n    g.addColorStop(0, topColor);\n    g.addColorStop(1, botColor);\n    ctx.fillStyle = g;\n    ctx.fillRect(0,0,128,128);\n    if(hotspot){\n      var rg = ctx.createRadialGradient(hotspot[0],hotspot[1],0,hotspot[0],hotspot[1],hotspot[2]);\n      rg.addColorStop(0, 'rgba(255,252,244,0.95)');\n      rg.addColorStop(1, 'rgba(255,252,244,0)');\n      ctx.fillStyle = rg;\n      ctx.fillRect(0,0,128,128);\n    }\n    return c;\n  }\n\n  function buildEnvironment(){\n    var px = makeCubeFace('#f3efe6', '#cdc6b8', [40,60,60]);\n    var nx = makeCubeFace('#f3efe6', '#cdc6b8', [96,60,60]);\n    var py = makeCubeFace('#fffdf8', '#efe9dc', [64,40,70]);\n    var ny = makeCubeFace('#a49e91', '#726b5e', null);\n    var pz = makeCubeFace('#f3efe6', '#cdc6b8', [64,30,60]);\n    var nz = makeCubeFace('#f3efe6', '#cdc6b8', [64,96,60]);\n    var cubeTex = new THREE.CubeTexture([px,nx,py,ny,pz,nz]);\n    if('encoding' in cubeTex){ cubeTex.encoding = THREE.sRGBEncoding; }\n    cubeTex.needsUpdate = true;\n    return cubeTex;\n  }\n\n  function initScene(){\n    var renderer = new THREE.WebGLRenderer({ canvas: canvas, alpha: true, antialias: true });\n    renderer.setPixelRatio(Math.min(window.devicePixelRatio || 1, 2));\n    renderer.setClearColor(0xffffff, 1);\n    if('outputEncoding' in renderer){ renderer.outputEncoding = THREE.sRGBEncoding; }\n    renderer.toneMapping = THREE.ACESFilmicToneMapping;\n    renderer.toneMappingExposure = 1.05;\n\n    var scene = new THREE.Scene();\n    var envTex = buildEnvironment();\n\n    var camera = new THREE.PerspectiveCamera(38, 1, 0.1, 100);\n    camera.position.set(0, 0.15, 7.0);\n    camera.lookAt(0, 0, 0);\n\n    scene.add(new THREE.AmbientLight(0xffffff, 0.32));\n    scene.add(new THREE.HemisphereLight(0xfffaf0, 0x6b6459, 0.5));\n    var key = new THREE.DirectionalLight(0xfff5e8, 1.15);\n    key.position.set(3.2, 4.2, 5);\n    scene.add(key);\n    var fill = new THREE.DirectionalLight(0xe6edff, 0.4);\n    fill.position.set(-4, 1.5, 2);\n    scene.add(fill);\n    var top = new THREE.DirectionalLight(0xffffff, 0.3);\n    top.position.set(0, 6, 1);\n    scene.add(top);\n    var under = new THREE.DirectionalLight(0xd8cfc0, 0.2);\n    under.position.set(0, -5, 2);\n    scene.add(under);\n    var warm = new THREE.PointLight(0xc68347, 1.0, 14, 2);\n    warm.position.set(-2.2, 1.6, 3.2);\n    scene.add(warm);\n    var rim = new THREE.PointLight(0xffffff, 0.55, 16, 2);\n    rim.position.set(2.5, -2, -3.5);\n    scene.add(rim);\n    var exhaustGlow = new THREE.PointLight(0xff8a3d, 0, 5, 2);\n\n    var sceneGroup = new THREE.Group();\n    sceneGroup.position.y = 0.4;\n    scene.add(sceneGroup);\n\n    var shadowMat = new THREE.MeshBasicMaterial({\n      map: makeShadowTexture(), transparent: true, depthWrite: false, opacity: 0\n    });\n    var shadowPlane = new THREE.Mesh(new THREE.PlaneGeometry(4.6, 4.6), shadowMat);\n    shadowPlane.rotation.x = -Math.PI \/ 2;\n    shadowPlane.position.y = -1.3;\n    scene.add(shadowPlane);\n\n    var glowTex = makeGlowTexture('rgba(255,190,120,0.95)', 'rgba(255,120,40,0.35)');\n    var glowSprite = new THREE.Sprite(new THREE.SpriteMaterial({\n      map: glowTex, transparent: true, depthWrite: false, blending: THREE.AdditiveBlending, opacity: 0\n    }));\n    glowSprite.scale.set(0.1,0.1,0.1);\n\n    var brushedTex = makeBrushedTexture();\n\n    var turbineGroup = new THREE.Group();\n    turbineGroup.rotation.z = Math.PI \/ 2;\n    turbineGroup.add(exhaustGlow);\n    exhaustGlow.position.set(0, -2.0, 0);\n    turbineGroup.add(glowSprite);\n    glowSprite.position.set(0, -2.05, 0);\n    sceneGroup.add(turbineGroup);\n\n    var parts = [];\n    var heatParts = [];\n    var spinAngles = { fan: 0, comp1: 0, comp2: 0, turb: 0 };\n    var spinSpeeds = { fan: 2.6, comp1: 1.9, comp2: 2.2, turb: 3.1 };\n\n    function addPart(opts){\n      var geometry = opts.geometry, color = opts.color, position = opts.position,\n          rotation = opts.rotation, explodeY = opts.explode || 0,\n          polished = !!opts.polished, spinGroup = opts.spinGroup || null,\n          brushed = !!opts.brushed, heat = opts.heat || 0,\n          envIntensity = opts.envIntensity != null ? opts.envIntensity : (polished ? 1.25 : 0.85);\n\n      var matParams = {\n        color: color,\n        metalness: polished ? 0.72 : 0.5,\n        roughness: polished ? 0.32 : 0.5,\n        transparent: true,\n        opacity: 0,\n        envMap: envTex,\n        envMapIntensity: envIntensity\n      };\n      if(brushed){\n        matParams.map = brushedTex;\n        matParams.roughnessMap = brushedTex;\n        matParams.bumpMap = brushedTex;\n        matParams.bumpScale = 0.01;\n      }\n\n      var solid;\n      if(polished){\n        matParams.clearcoat = 0.4;\n        matParams.clearcoatRoughness = 0.3;\n        solid = new THREE.Mesh(geometry, new THREE.MeshPhysicalMaterial(matParams));\n      } else {\n        solid = new THREE.Mesh(geometry, new THREE.MeshStandardMaterial(matParams));\n      }\n      if(heat > 0){\n        solid.material.emissive = new THREE.Color(0xff5a1f);\n        solid.material.emissiveIntensity = 0;\n      }\n\n      var wireMat = new THREE.LineBasicMaterial({ color: 0xc68347, transparent: true, opacity: 1 });\n      var wire = new THREE.LineSegments(new THREE.EdgesGeometry(geometry, 25), wireMat);\n\n      if(rotation){ solid.rotation.copy(rotation); wire.rotation.copy(rotation); }\n      turbineGroup.add(solid);\n      turbineGroup.add(wire);\n\n      var part = { solid: solid, wire: wire, base: position, explode: explodeY, heat: heat };\n      if(spinGroup){\n        var r = Math.sqrt(position.x*position.x + position.z*position.z);\n        part.polar = { r: r, angle: Math.atan2(position.z, position.x), y: position.y };\n        part.spinGroup = spinGroup;\n      }\n      parts.push(part);\n      if(heat > 0) heatParts.push(part);\n      return part;\n    }\n\n    addPart({\n      geometry: new THREE.CylinderGeometry(0.62, 0.48, 2.5, 64, 1, true),\n      color: 0x6e6a63, position: new THREE.Vector3(0,0,0), brushed: true\n    });\n\n    addPart({\n      geometry: new THREE.TorusGeometry(0.565, 0.03, 12, 48),\n      color: 0x545049, position: new THREE.Vector3(0,0.62,0),\n      rotation: new THREE.Euler(Math.PI\/2,0,0), brushed: true, envIntensity: 0.7\n    });\n    addPart({\n      geometry: new THREE.TorusGeometry(0.5, 0.028, 12, 48),\n      color: 0x545049, position: new THREE.Vector3(0,-0.62,0),\n      rotation: new THREE.Euler(Math.PI\/2,0,0), brushed: true, envIntensity: 0.7\n    });\n\n    function addBoltRing(y, radius, count){\n      for(var b=0;b<count;b++){\n        var ang = (b\/count) * Math.PI * 2;\n        addPart({\n          geometry: new THREE.IcosahedronGeometry(0.022, 0),\n          color: 0x54504a,\n          position: new THREE.Vector3(Math.cos(ang)*radius, y, Math.sin(ang)*radius),\n          envIntensity: 0.55\n        });\n      }\n    }\n    addBoltRing(0.62, 0.588, 18);\n    addBoltRing(-0.62, 0.512, 18);\n\n    function makeNameplateTexture(){\n      var c = document.createElement('canvas');\n      c.width = 320; c.height = 160;\n      var ctx = c.getContext('2d');\n      ctx.clearRect(0,0,320,160);\n      ctx.fillStyle = 'rgba(58,55,50,0.92)';\n      if(ctx.roundRect){ ctx.beginPath(); ctx.roundRect(6,6,308,148,6); ctx.fill(); }\n      else { ctx.fillRect(6,6,308,148); }\n      ctx.strokeStyle = 'rgba(198,131,71,0.85)';\n      ctx.lineWidth = 2;\n      ctx.strokeRect(14,14,292,132);\n      ctx.fillStyle = 'rgba(230,224,214,0.92)';\n      ctx.font = '700 30px Arial, sans-serif';\n      ctx.fillText('BHT', 26, 62);\n      ctx.font = '600 13px Arial, sans-serif';\n      ctx.fillStyle = 'rgba(198,131,71,0.85)';\n      ctx.fillText('RE-7 \/ AXIAL ROTOR', 26, 88);\n      ctx.fillStyle = 'rgba(200,196,188,0.75)';\n      ctx.font = '500 11px Arial, sans-serif';\n      ctx.fillText('EN ISO 1940 G2.5 \u2014 DIN CERT.', 26, 108);\n      [ [20,20],[300,20],[20,140],[300,140] ].forEach(function(p){\n        var rg = ctx.createRadialGradient(p[0]-1,p[1]-1,0.3,p[0],p[1],4);\n        rg.addColorStop(0,'rgba(255,250,240,0.9)');\n        rg.addColorStop(1,'rgba(70,66,60,0.9)');\n        ctx.fillStyle = rg;\n        ctx.beginPath(); ctx.arc(p[0],p[1],4,0,Math.PI*2); ctx.fill();\n      });\n      var tex = new THREE.CanvasTexture(c);\n      return tex;\n    }\n    (function(){\n      var plateGeo = new THREE.PlaneGeometry(0.42, 0.21);\n      var plateMat = new THREE.MeshStandardMaterial({\n        map: makeNameplateTexture(), transparent: true, opacity: 0,\n        metalness: 0.3, roughness: 0.6, side: THREE.DoubleSide, envMap: envTex, envMapIntensity: 0.4\n      });\n      var plate = new THREE.Mesh(plateGeo, plateMat);\n      var plateAngle = 0.95, plateRadius = 0.565, plateY = 0.05;\n      plate.position.set(Math.cos(plateAngle)*plateRadius, plateY, Math.sin(plateAngle)*plateRadius);\n      plate.rotation.y = -plateAngle + Math.PI\/2;\n      turbineGroup.add(plate);\n      parts.push({ solid: plate, wire: { position: { set: function(){} }, material: { opacity: 0 } }, base: plate.position.clone(), explode: 0, heat: 0 });\n    })();\n\n    addPart({\n      geometry: new THREE.ConeGeometry(0.2, 0.4, 48),\n      color: 0x716d66, position: new THREE.Vector3(0,1.55,0),\n      polished: true, explode: 0.55\n    });\n\n    addPart({\n      geometry: new THREE.CylinderGeometry(0.17, 0.2, 0.24, 48),\n      color: 0x716d66, position: new THREE.Vector3(0,1.28,0), explode: 0.42, brushed: true\n    });\n    var fanBladeGeo = new THREE.BoxGeometry(0.05, 0.4, 0.2, 1, 3, 1);\n    for(var i=0;i<12;i++){\n      var a = (i\/12) * Math.PI * 2;\n      var r = 0.38;\n      addPart({\n        geometry: fanBladeGeo, color: 0x827d73,\n        position: new THREE.Vector3(Math.cos(a)*r, 1.28, Math.sin(a)*r),\n        rotation: new THREE.Euler(0, -a, 0.22),\n        explode: 0.42, polished: true, spinGroup: 'fan'\n      });\n    }\n\n    var stageDef = [\n      { y:0.68, r:0.34, ex:0.28, group:'comp1' },\n      { y:0.1,  r:0.29, ex:0.14, group:'comp2' }\n    ];\n    var stageBladeGeo = new THREE.BoxGeometry(0.042, 0.3, 0.15, 1, 3, 1);\n    stageDef.forEach(function(st, s){\n      for(var j=0;j<10;j++){\n        var a2 = (j\/10) * Math.PI * 2 + s*0.31;\n        addPart({\n          geometry: stageBladeGeo, color: 0x7a7669,\n          position: new THREE.Vector3(Math.cos(a2)*st.r, st.y, Math.sin(a2)*st.r),\n          rotation: new THREE.Euler(0, -a2, 0.18),\n          explode: st.ex, polished: true, spinGroup: st.group\n        });\n      }\n    });\n\n    addPart({\n      geometry: new THREE.CylinderGeometry(0.3, 0.32, 0.5, 32),\n      color: 0x5f5b53, position: new THREE.Vector3(0,-0.4,0), heat: 0.35\n    });\n\n    var turbBladeGeo = new THREE.BoxGeometry(0.045, 0.28, 0.16, 1, 3, 1);\n    for(var k=0;k<10;k++){\n      var a3 = (k\/10) * Math.PI * 2;\n      var r3 = 0.3;\n      addPart({\n        geometry: turbBladeGeo, color: 0xc68347,\n        position: new THREE.Vector3(Math.cos(a3)*r3, -0.85, Math.sin(a3)*r3),\n        rotation: new THREE.Euler(0, -a3, -0.16),\n        explode: -0.24, polished: true, spinGroup: 'turb', heat: 1\n      });\n    }\n\n    addPart({\n      geometry: new THREE.CylinderGeometry(0.07, 0.07, 2.15, 24),\n      color: 0x605c54, position: new THREE.Vector3(0,0.15,0), brushed: true\n    });\n\n    addPart({\n      geometry: new THREE.ConeGeometry(0.32, 0.55, 32),\n      color: 0x5f5b53, position: new THREE.Vector3(0,-1.55,0),\n      rotation: new THREE.Euler(Math.PI,0,0), explode: -0.5, heat: 0.5\n    });\n\n    var baseHeight = 300;\n    var MODEL_SCALE = 0.98;\n    function resize(){\n      var w = cardEl.clientWidth;\n      var h = cardEl.clientHeight || baseHeight;\n      renderer.setSize(w, h, false);\n      camera.aspect = w \/ h;\n      camera.updateProjectionMatrix();\n      sceneGroup.scale.setScalar(MODEL_SCALE);\n    }\n    window.addEventListener('resize', resize);\n    resize();\n\n    var targetMouseX = 0, targetMouseY = 0, mouseX = 0, mouseY = 0;\n    if(!reduced){\n      cardEl.addEventListener('mousemove', function(e){\n        var rect = cardEl.getBoundingClientRect();\n        targetMouseX = ((e.clientX - rect.left) \/ rect.width - 0.5) * 2;\n        targetMouseY = ((e.clientY - rect.top) \/ rect.height - 0.5) * 2;\n      });\n    }\n\n    var HOLD_EXPLODED = 1400;\n    var ASSEMBLE_DUR  = 3200;\n    var HOLD_ASSEMBLED = 2200;\n    var EXPLODE_DUR    = 2600;\n    var CYCLE = HOLD_EXPLODED + ASSEMBLE_DUR + HOLD_ASSEMBLED + EXPLODE_DUR;\n\n    function cycleProgress(elapsed){\n      var t = elapsed % CYCLE;\n      if(t < HOLD_EXPLODED) return 0;\n      t -= HOLD_EXPLODED;\n      if(t < ASSEMBLE_DUR) return easeInOutCubic(t \/ ASSEMBLE_DUR);\n      t -= ASSEMBLE_DUR;\n      if(t < HOLD_ASSEMBLED) return 1;\n      t -= HOLD_ASSEMBLED;\n      return 1 - easeInOutCubic(Math.min(t \/ EXPLODE_DUR, 1));\n    }\n\n    var autoRotate = 0;\n    var startTime = performance.now();\n    var lastTime = startTime;\n    function animate(){\n      requestAnimationFrame(animate);\n\n      var now = performance.now();\n      var dt = Math.min((now - lastTime) \/ 1000, 0.05);\n      lastTime = now;\n\n      var p;\n      if(reduced){\n        p = 1;\n      } else {\n        autoRotate += 0.0011;\n        mouseX += (targetMouseX - mouseX) * 0.06;\n        mouseY += (targetMouseY - mouseY) * 0.06;\n        p = cycleProgress(now - startTime);\n      }\n\nvar running = Math.max(0, p - 0.6) \/ 0.4;\n\nsceneGroup.rotation.y = autoRotate + p * 0.4 + mouseX * 0.34;\nsceneGroup.rotation.x = mouseY * 0.16;\ncamera.position.z = 7.0 - p * 1.0;\n\n      if(!reduced){\n        for(var g in spinAngles){\n          spinAngles[g] += spinSpeeds[g] * p * p * dt;\n        }\n      }\n\n      var solidOp = p;\n      var wireOp = Math.max(0, 1 - p * 1.15);\n      var spread = (1 - p) * 1;\n      for(var i=0;i<parts.length;i++){\n        var part = parts[i];\n        var x, y, z;\n        if(part.polar){\n          var ang = part.polar.angle + spinAngles[part.spinGroup];\n          x = Math.cos(ang) * part.polar.r;\n          z = Math.sin(ang) * part.polar.r;\n          y = part.polar.y + part.explode * spread;\n          part.solid.rotation.y = -ang;\n          part.wire.rotation.y = -ang;\n        } else {\n          x = part.base.x;\n          z = part.base.z;\n          y = part.base.y + part.explode * spread;\n        }\n        part.solid.position.set(x, y, z);\n        part.wire.position.set(x, y, z);\n        part.solid.material.opacity = solidOp;\n        part.wire.material.opacity = wireOp;\n        if(part.heat > 0){\n          part.solid.material.emissiveIntensity = part.heat * running * 0.55;\n        }\n      }\n\n      var glowP = p * running;\n      exhaustGlow.intensity = p * (0.9 + running * 0.4) + Math.sin(now * 0.01) * 0.06 * running;\n      glowSprite.material.opacity = glowP * (0.65 + Math.sin(now*0.02)*0.08);\n      var glowScale = 0.35 + glowP * 0.55 + Math.sin(now*0.017)*0.03*glowP;\n      glowSprite.scale.set(glowScale, glowScale, glowScale);\n\n      shadowMat.opacity = Math.max(0, p - 0.25) * 0.9;\n\n      renderer.render(scene, camera);\n    }\n    animate();\n  }\n})();\n<\/script>\n<!-- ============ END SERVICES CONTENT ============ -->\n\n<footer class=\"bht-em-footer\">\n  <div class=\"bht-em-footer-inner\">\n\n    <div class=\"bht-em-footer-brand\">\n      <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/\" class=\"bht-em-footer-logo\">\n        <img decoding=\"async\" src=\"https:\/\/demowebsite.ir\/bht\/wp-content\/uploads\/2026\/05\/BHT-Logo-300-w.png\" alt=\"BHT Logo\">\n      <\/a>\n\n      <div class=\"bht-em-footer-socials\">\n        <a href=\"https:\/\/de.linkedin.com\/company\/bht-electric-control-mechanic-gmbh-&-co.-kg\" class=\"bht-em-footer-social\" aria-label=\"LinkedIn\" target=\"_blank\" rel=\"noopener\">\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"currentColor\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n            <path d=\"M20.45 20.45h-3.56v-5.57c0-1.33-.02-3.04-1.85-3.04-1.86 0-2.14 1.45-2.14 2.94v5.67H9.34V9h3.41v1.56h.05c.48-.9 1.64-1.85 3.38-1.85 3.6 0 4.27 2.37 4.27 5.46v6.28zM5.34 7.43a2.07 2.07 0 1 1 0-4.13 2.07 2.07 0 0 1 0 4.13zM7.12 20.45H3.56V9h3.56v11.45z\"\/>\n          <\/svg>\n        <\/a>\n      <\/div>\n    <\/div>\n\n    <div class=\"bht-em-footer-col\">\n      <h4 class=\"bht-em-footer-heading\" data-i18n=\"footer_companies_heading\">Companies<\/h4>\n      <nav class=\"bht-em-footer-links\">\n        <a href=\"https:\/\/demowebsite.ir\/bht\/industrial-supply\/\" data-i18n=\"footer_link_industrial\">Industrial supply<\/a>\n        <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/\" data-i18n=\"footer_link_engineering\">Engineering &amp; Manufacturing<\/a>\n        <a href=\"https:\/\/demowebsite.ir\/bht\/it-cybersecurity\/\" data-i18n=\"footer_link_it\">IT &amp; Cybersecurity<\/a>\n        <a href=\"https:\/\/demowebsite.ir\/bht\/raw-materials-supply\/\" data-i18n=\"footer_link_raw\">Raw Materials supply<\/a>\n        <a href=\"https:\/\/demowebsite.ir\/bht\/renewable-clean-energy\/\" data-i18n=\"footer_link_renewable\">Renewable &amp; Clean Energy<\/a>\n      <\/nav>\n    <\/div>\n\n    <div class=\"bht-em-footer-col\">\n      <h4 class=\"bht-em-footer-heading\" data-i18n=\"footer_quicklinks_heading\">Quick Links<\/h4>\n      <nav class=\"bht-em-footer-links\">\n        <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/\" data-i18n=\"nav_home\">Home<\/a>\n        <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/about-us\/\" data-i18n=\"nav_about\">About us<\/a>\n        <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/services\/\" data-i18n=\"nav_services\">Services<\/a>\n        <a href=\"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/contact\/\" data-i18n=\"nav_contact\">Contact<\/a>\n      <\/nav>\n    <\/div>\n\n  <\/div>\n\n  <div class=\"bht-em-footer-bottom\">\n    <span>&copy; <span class=\"bht-em-footer-year\"><\/span> <span data-i18n=\"footer_rights\">BHT Electric Control Mechanic. All rights reserved.<\/span><\/span>\n  <\/div>\n<\/footer>\n\n<\/div><!-- \/#bht-page -->\n\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Archivo:wght@400;500;600;700;800;900&family=Inter:wght@400;500;600&display=swap');\n\n#bht-page, #bht-page * { box-sizing: border-box; }\n#bht-page a { text-decoration: none; }\n\n\/* ============================================================\n   SHARED ALIGNMENT\n============================================================ *\/\n.bht-header-inner,\n.bht-em-hero-inner,\n.bht-em-footer-inner,\n.bht-em-footer-bottom {\n  max-width: var(--bht-max);\n  margin-inline: auto;\n  width: 100%;\n  padding-inline: var(--bht-pad-inline);\n  box-sizing: border-box;\n}\n\n\/* ============ HEADER ============ *\/\n.bht-header-wrap {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  width: 100%;\n  z-index: 999;\n  isolation: isolate;\n  padding-block: 44px;\n  background: rgba(255, 255, 255, 0.08);\n  backdrop-filter: blur(5px) saturate(160%);\n  -webkit-backdrop-filter: blur(10px) saturate(160%);\n  border: none;\n  border-bottom: 1px solid rgba(255, 255, 255, 0.25);\n  box-shadow:\n    0 8px 32px rgba(0, 0, 0, 0.25),\n    inset 0 1px 0 rgba(255, 255, 255, 0.3),\n    inset 0 -1px 0 rgba(0, 0, 0, 0.1);\n  transition: box-shadow 0.6s ease;\n}\n\n.bht-header-wrap:hover {\n  box-shadow:\n    0 12px 40px rgba(0, 0, 0, 0.3),\n    inset 0 1px 0 rgba(255, 255, 255, 0.4),\n    inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n}\n\n.bht-header-bg {\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  z-index: -1;\n  overflow: hidden;\n  pointer-events: none;\n}\n\n.bht-header-bg::before {\n  content: '';\n  position: absolute;\n  top: -30%; left: -20%;\n  width: 160%; height: 160%;\n  background: radial-gradient(circle at 30% 30%, rgba(165, 107, 56, 0.4), transparent 60%),\n              radial-gradient(circle at 70% 70%, rgba(63, 41, 15, 0.35), transparent 60%);\n  filter: blur(40px);\n  animation: bht-liquid-morph 12s ease-in-out infinite;\n}\n\n@keyframes bht-liquid-morph {\n  0%, 100% { border-radius: 42% 58% 63% 37% \/ 41% 44% 56% 59%; transform: rotate(0deg) scale(1); }\n  33% { border-radius: 63% 37% 41% 59% \/ 51% 62% 38% 49%; transform: rotate(8deg) scale(1.05); }\n  66% { border-radius: 37% 63% 55% 45% \/ 60% 40% 60% 40%; transform: rotate(-6deg) scale(0.97); }\n}\n\n.bht-header-inner {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 20px;\n}\n\n.bht-header-logo {\n  flex-shrink: 0;\n  display: flex;\n  align-items: center;\n  padding: 0;\n  margin: 0;\n}\n\n.bht-header-logo img {\n  height: 64px;\n  width: auto;\n  display: block;\n}\n\n.bht-header-nav {\n  display: flex;\n  align-items: center;\n  gap: clamp(18px, 3vw, 44px);\n  flex-wrap: nowrap;\n}\n\n.bht-header-nav a {\n  position: relative;\n  color: #ffffff;\n  text-decoration: none;\n  font-family: 'Archivo', sans-serif;\n  font-size: 0.72rem;\n  font-weight: 700;\n  text-transform: uppercase;\n  letter-spacing: 0.03em;\n  white-space: nowrap;\n  opacity: 0.92;\n  padding-bottom: 8px;\n  transition: opacity 0.6s ease, color 0.6s ease;\n}\n\n.bht-header-nav a::after {\n  content: '';\n  position: absolute;\n  left: 0; bottom: 0;\n  width: 100%; height: 2px;\n  background: #C68347;\n  transform: scaleX(0);\n  transform-origin: left;\n  transition: transform 0.6s ease;\n}\n\n.bht-header-nav a:hover { opacity: 1; color: #C68347; }\n.bht-header-nav a:hover::after { transform: scaleX(1); }\n\n\/* ============ LANGUAGE SWITCH ============ *\/\n.bht-lang-switch {\n  display: flex;\n  align-items: center;\n  gap: 6px;\n  margin-left: clamp(4px, 1.2vw, 20px);\n  padding-left: clamp(4px, 1.2vw, 20px);\n  border-left: 1px solid rgba(255, 255, 255, 0.25);\n}\n\n.bht-lang-globe { color: rgba(255, 255, 255, 0.65); flex-shrink: 0; }\n\n.bht-lang-btn {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  background: rgba(255, 255, 255, 0.06);\n  border: 1px solid rgba(255, 255, 255, 0.2);\n  border-radius: 20px;\n  padding: 5px 10px 5px 6px;\n  color: rgba(255, 255, 255, 0.75);\n  font-family: 'Archivo', sans-serif;\n  font-size: 0.63rem;\n  font-weight: 700;\n  letter-spacing: 0.03em;\n  cursor: pointer;\n  transition: background .2s ease, border-color .2s ease, color .2s ease;\n  -webkit-tap-highlight-color: transparent;\n}\n\n.bht-lang-btn:hover { border-color: rgba(198, 131, 71, 0.7); color: #ffffff; }\n.bht-lang-btn.is-active { background: rgba(198, 131, 71, 0.22); border-color: #C68347; color: #ffffff; }\n.bht-lang-flag { display: inline-flex; align-items: center; border-radius: 2px; overflow: hidden; line-height: 0; }\n.bht-lang-flag svg { display: block; }\n\n.bht-header-toggle {\n  display: none;\n  flex-direction: column;\n  justify-content: center;\n  align-items: center;\n  gap: 5px;\n  width: 32px; height: 32px;\n  background: transparent;\n  border: none;\n  outline: none;\n  cursor: pointer;\n  padding: 0;\n  flex-shrink: 0;\n  -webkit-tap-highlight-color: transparent;\n  -webkit-appearance: none;\n  appearance: none;\n}\n\n.bht-header-toggle:focus,\n.bht-header-toggle:active { outline: none; background: transparent; }\n\n.bht-header-toggle span {\n  display: block;\n  width: 26px; height: 2px;\n  background: #ffffff;\n  border-radius: 2px;\n  transition: transform 0.6s ease, opacity 0.6s ease;\n}\n\n.bht-header-toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }\n.bht-header-toggle.is-active span:nth-child(2) { opacity: 0; }\n.bht-header-toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }\n\n@media (max-width: 1000px) {\n  .bht-header-wrap { padding-block: 20px; }\n  .bht-header-logo img { height: 52px; }\n\n  .bht-header-nav {\n    position: absolute;\n    top: 100%; left: 0; right: 0;\n    flex-direction: column;\n    align-items: flex-start;\n    gap: 4px;\n    padding-inline: var(--bht-pad-inline);\n    background: #1c130a;\n    border-top: 1px solid rgba(255, 255, 255, 0.15);\n    max-height: 0;\n    overflow: hidden;\n    opacity: 0;\n    pointer-events: none;\n    transition: max-height 0.6s ease, opacity 0.6s ease, padding 0.6s ease;\n  }\n\n  .bht-header-nav.is-open { max-height: 420px; opacity: 1; pointer-events: auto; padding-block: 16px; }\n  .bht-header-nav a { width: 100%; padding: 10px 4px; font-size: 0.85rem; }\n  .bht-header-toggle { display: flex; }\n\n  .bht-lang-switch {\n    margin-left: 0;\n    padding-left: 0;\n    border-left: none;\n    width: 100%;\n    padding-block: 10px 4px;\n  }\n}\n\n@media (max-width: 480px) {\n  .bht-header-wrap { padding-block: 14px; }\n  .bht-header-logo img { height: 42px; }\n}\n\n\/* ============ HERO ============ *\/\n.bht-em-hero {\n  position: relative;\n  width: 100%;\n  min-height: 100vh;\n  display: flex;\n  align-items: center;\n  overflow: hidden;\n  background: #14100a;\n}\n\n.bht-em-hero-video {\n  position: absolute;\n  inset: 0;\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  z-index: 0;\n}\n\n.bht-em-hero-scrim {\n  position: absolute;\n  inset: 0;\n  z-index: 1;\n  background:\n    linear-gradient(90deg, rgba(20,16,10,0.88) 0%, rgba(20,16,10,0.62) 42%, rgba(20,16,10,0.24) 75%, rgba(20,16,10,0.12) 100%),\n    linear-gradient(0deg, rgba(20,16,10,0.5) 0%, rgba(20,16,10,0) 30%);\n}\n\n.bht-em-hero-inner {\n  position: relative;\n  z-index: 2;\n  width: 100%;\n}\n\n.bht-em-hero-content {\n  max-width: 680px;\n  padding-top: 150px;\n  padding-bottom: 60px;\n}\n\n.bht-em-hero-title {\n  font-family: 'Archivo', sans-serif;\n  font-weight: 800;\n  font-size: clamp(26px, 4.2vw, 50px);\n  line-height: 1.18;\n  color: #ffffff;\n  margin: 0 0 22px;\n  word-wrap: break-word;\n}\n\n.bht-em-hero-accent { color: #C68347; }\n\n.bht-em-hero-content p {\n  font-family: 'Inter', sans-serif;\n  font-size: clamp(0.9rem, 1.6vw, 1rem);\n  line-height: 1.75;\n  color: #DCD5C9;\n  margin: 0 0 28px;\n}\n\n.bht-em-hero-btn {\n  display: inline-block;\n  padding: 14px 26px;\n  background: linear-gradient(135deg, #3F290F 0%, #82552A 35%, #A56B38 100%);\n  color: #FBF6EF;\n  font-family: 'Archivo', sans-serif;\n  font-size: 0.78rem;\n  font-weight: 700;\n  text-transform: uppercase;\n  letter-spacing: 0.06em;\n  border-radius: 4px;\n  box-shadow: 0 10px 26px rgba(63, 41, 15, 0.45);\n  transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease;\n  text-align: center;\n}\n\n.bht-em-hero-btn:hover {\n  transform: translateY(-2px);\n  box-shadow: 0 14px 32px rgba(63, 41, 15, 0.55);\n  filter: brightness(1.08);\n}\n\n@media (max-width: 1000px) {\n  .bht-em-hero-content { padding-top: 128px; max-width: 580px; }\n}\n\n@media (max-width: 640px) {\n  .bht-em-hero { min-height: 94vh; }\n  .bht-em-hero-content { padding-top: 116px; max-width: 100%; }\n  .bht-em-hero-scrim {\n    background:\n      linear-gradient(180deg, rgba(20,16,10,0.55) 0%, rgba(20,16,10,0.55) 30%, rgba(20,16,10,0.92) 100%),\n      linear-gradient(90deg, rgba(20,16,10,0.55) 0%, rgba(20,16,10,0.2) 100%);\n  }\n}\n\n@media (max-width: 380px) {\n  .bht-em-hero-content { padding-top: 104px; padding-bottom: 44px; }\n  .bht-em-hero-title { font-size: 23px; margin-bottom: 16px; }\n  .bht-em-hero-content p { font-size: 0.86rem; margin-bottom: 22px; }\n  .bht-em-hero-btn { width: 100%; padding: 13px 20px; }\n}\n\n\/* ============ FOOTER ============\n   Exact requested gradient. Text\/link\/border colors re-tuned for contrast\n   against this lighter, warmer background (the old palette assumed a\n   near-black footer and would wash out here). *\/\n.bht-em-footer {\n  position: relative;\n  width: 100%;\n  background: linear-gradient(135deg, #3F290F 0%, #82552A 35%, #A56B38 100%);\n  padding-block: 64px 28px;\n  font-family: 'Archivo', sans-serif;\n}\n\n.bht-em-footer-inner {\n  display: flex;\n  align-items: flex-start;\n  justify-content: space-between;\n  flex-wrap: wrap;\n  gap: 44px;\n}\n\n.bht-em-footer-brand {\n  display: flex;\n  flex-direction: column;\n  gap: 20px;\n  flex-shrink: 0;\n}\n\n.bht-em-footer-logo {\n  display: inline-flex;\n  width: fit-content;\n}\n\n.bht-em-footer-logo img {\n  height: 50px;\n  width: auto;\n  display: block;\n  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.25));\n}\n\n.bht-em-footer-socials { display: flex; gap: 10px; }\n\n.bht-em-footer-social {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 34px; height: 34px;\n  border-radius: 8px;\n  background: rgba(255, 255, 255, 0.14);\n  color: #FBF6EF;\n  transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;\n}\n\n.bht-em-footer-social:hover { background: rgba(255, 255, 255, 0.3); transform: translateY(-2px); }\n\n.bht-em-footer-heading {\n  margin: 0 0 20px;\n  color: #FBF6EF;\n  font-size: 0.76rem;\n  font-weight: 700;\n  text-transform: uppercase;\n  letter-spacing: 0.05em;\n}\n\n.bht-em-footer-links { display: flex; flex-direction: column; gap: 13px; }\n\n.bht-em-footer-links a {\n  color: rgba(255, 255, 255, 0.8);\n  text-decoration: none;\n  font-size: 0.82rem;\n  font-weight: 400;\n  line-height: 1.4;\n  transition: color 0.3s ease, transform 0.3s ease;\n  width: fit-content;\n  display: block;\n}\n\n.bht-em-footer-links a:hover { color: #FFFFFF; transform: translateX(2px); }\n\n.bht-em-footer-bottom {\n  margin-top: 48px;\n  padding-top: 22px;\n  border-top: 1px solid rgba(255, 255, 255, 0.25);\n  color: rgba(255, 255, 255, 0.68);\n  font-size: 0.7rem;\n  letter-spacing: 0.02em;\n  text-align: center;\n}\n\n@media (max-width: 900px) {\n  .bht-em-footer { padding-block: 52px 26px; }\n  .bht-em-footer-inner {\n    flex-direction: column;\n    align-items: center;\n    text-align: center;\n    gap: 36px;\n  }\n  .bht-em-footer-brand,\n  .bht-em-footer-col { width: 100%; align-items: center; }\n  .bht-em-footer-socials { justify-content: center; }\n}\n\n@media (max-width: 480px) {\n  .bht-em-footer { padding-block-start: 40px; }\n  .bht-em-footer-logo img { height: 40px; }\n  .bht-em-footer-inner { gap: 30px; }\n}\n\n\/* ---- global small-screen safety net ---- *\/\n@media (max-width: 340px) {\n  #bht-page { --bht-pad-inline: 16px; }\n  .bht-header-logo img { height: 36px; }\n}\n<\/style>\n\n<script>\n(function() {\n  var toggle = document.querySelector('.bht-header-toggle');\n  var nav = document.querySelector('.bht-header-nav');\n\n  if (!toggle || !nav) return;\n\n  (function markActiveLink() {\n    var currentPath = window.location.pathname.replace(\/\\\/+$\/, '') + '\/';\n    var allLinks = nav.querySelectorAll('a');\n    allLinks.forEach(function(link) {\n      var linkPath = link.pathname.replace(\/\\\/+$\/, '') + '\/';\n      if (linkPath === currentPath) { link.classList.add('bht-active'); }\n    });\n  })();\n\n  toggle.addEventListener('click', function() {\n    var isOpen = nav.classList.toggle('is-open');\n    toggle.classList.toggle('is-active', isOpen);\n    toggle.setAttribute('aria-expanded', isOpen ? 'true' : 'false');\n  });\n\n  document.addEventListener('click', function(e) {\n    if (!nav.contains(e.target) && !toggle.contains(e.target)) {\n      nav.classList.remove('is-open');\n      toggle.classList.remove('is-active');\n      toggle.setAttribute('aria-expanded', 'false');\n    }\n  });\n\n  window.addEventListener('resize', function() {\n    if (window.innerWidth > 1000) {\n      nav.classList.remove('is-open');\n      toggle.classList.remove('is-active');\n      toggle.setAttribute('aria-expanded', 'false');\n    }\n  });\n})();\n<\/script>\n\n<script>\ndocument.querySelector('.bht-em-footer-year').textContent = new Date().getFullYear();\n<\/script>\n\n<!-- ============ LANGUAGE SWITCHER (EN \/ DE) ============\n     Hand-written translations, shares the \"bhtLang\" localStorage key with\n     the rest of the site. -->\n<script>\n(function(){\n  var TRANSLATIONS = {\n    nav_home:     { en: 'Home',      de: 'Startseite' },\n    nav_about:    { en: 'About us',  de: '\u00dcber uns' },\n    nav_services: { en: 'Services',  de: 'Dienstleistungen' },\n    nav_contact:  { en: 'Contact',   de: 'Kontakt' },\n\n    hero_title_1: { en: 'High-Precision Engineering,', de: 'Hochpr\u00e4zises Engineering,' },\n    hero_title_2: { en: 'Reverse Engineering', de: 'Reverse Engineering' },\n    hero_title_3: { en: '& Industrial Manufacturing Services', de: '& industrielle Fertigungsdienstleistungen' },\n    hero_body: { en: 'In modern industrial sectors, maintaining mechanical integrity and optimizing component lifecycles are essential for operational profitability. BHT provides specialized engineering and contract manufacturing services tailored to the requirements of the German and European industrial markets. We transform technical challenges into precise physical solutions by bridging the gap between legacy machinery requirements and state-of-the-art manufacturing technologies. From initial dimensional analysis to final production, our engineering services prioritize mechanical accuracy, rigorous material compliance, and verifiable tolerances.',\n               de: 'In modernen Industriesektoren sind der Erhalt der mechanischen Integrit\u00e4t und die Optimierung der Lebenszyklen von Komponenten entscheidend f\u00fcr die betriebliche Rentabilit\u00e4t. BHT bietet spezialisierte Engineering- und Lohnfertigungsdienstleistungen, zugeschnitten auf die Anforderungen der deutschen und europ\u00e4ischen Industriem\u00e4rkte. Wir verwandeln technische Herausforderungen in pr\u00e4zise physische L\u00f6sungen, indem wir die L\u00fccke zwischen den Anforderungen bestehender Altanlagen und modernsten Fertigungstechnologien schlie\u00dfen. Von der ersten Ma\u00dfanalyse bis zur finalen Produktion legen unsere Engineering-Dienstleistungen Wert auf mechanische Genauigkeit, strenge Materialkonformit\u00e4t und nachweisbare Toleranzen.' },\n    hero_btn: { en: 'Learn about our services', de: 'Mehr \u00fcber unsere Dienstleistungen' },\n\n    s1_eyebrow: { en: 'Doc. 01 \u2014 Reverse Engineering', de: 'Dok. 01 \u2014 Reverse Engineering' },\n    s1_h2: { en: 'Advanced Reverse Engineering & Obsolescence Solutions', de: 'Fortschrittliches Reverse Engineering & L\u00f6sungen f\u00fcr Auslaufteile' },\n    s1_body: { en: 'Using high-precision coordinate measuring machines (CMM) and industrial 3D scanning, we capture the exact geometry of worn or damaged components. Our engineering team translates the data into precise 2D production drawings and 3D parametric CAD models, applying correct ISO\/DIN tolerance classes to ensure perfect fitment during assembly.',\n               de: 'Mit hochpr\u00e4zisen Koordinatenmessmaschinen (KMG) und industriellem 3D-Scanning erfassen wir die exakte Geometrie verschlissener oder besch\u00e4digter Bauteile. Unser Engineering-Team \u00fcbertr\u00e4gt die Daten in pr\u00e4zise 2D-Fertigungszeichnungen und 3D-parametrische CAD-Modelle unter Anwendung der korrekten ISO-\/DIN-Toleranzklassen, um eine perfekte Passgenauigkeit bei der Montage zu gew\u00e4hrleisten.' },\n    s1_fig: { en: 'FIG.01 \u2014 Live Model', de: 'ABB.01 \u2014 Live-Modell' },\n    s1_hint: { en: 'Self-assembling from scan data', de: 'Selbstmontage aus Scandaten' },\n\n    s2_eyebrow: { en: 'Doc. 02 \u2014 Manufacturing', de: 'Dok. 02 \u2014 Fertigung' },\n    s2_h2: { en: 'Industrial Manufacturing & Fabrication Capabilities', de: 'Industrielle Fertigungs- & Herstellungskompetenzen' },\n    s2_note: { en: 'Six core capabilities, each executed under certified European standards from raw material to finished part.',\n               de: 'Sechs Kernkompetenzen, jede nach zertifizierten europ\u00e4ischen Normen umgesetzt \u2013 vom Rohmaterial bis zum fertigen Bauteil.' },\n\n    cap1_title: { en: 'Precision Bearings & Rotating Components', de: 'Pr\u00e4zisionslager & rotierende Komponenten' },\n    cap1_body: { en: 'High-tolerance bearing and rotating-assembly components manufactured and inspected to strict dimensional and material specifications for continuous-duty machinery.',\n                 de: 'Lager- und rotierende Baugruppenkomponenten mit engen Toleranzen, gefertigt und gepr\u00fcft nach strengen Ma\u00df- und Materialvorgaben f\u00fcr den Dauerbetrieb.' },\n    cap1_tag1: { en: 'IT7 Tolerance', de: 'IT7-Toleranz' },\n    cap1_tag2: { en: 'Rotating Assemblies', de: 'Rotierende Baugruppen' },\n\n    cap2_title: { en: 'CNC Machining & Precision Milling', de: 'CNC-Bearbeitung & Pr\u00e4zisionsfr\u00e4sen' },\n    cap2_body: { en: 'Multi-axis CNC milling and turning centers holding tight tolerances up to IT7 or closer. Materials include high-tensile steels, stainless alloys, duplex steels, and engineering plastics.',\n                 de: 'Mehrachsige CNC-Fr\u00e4s- und Drehzentren mit engen Toleranzen bis IT7 oder darunter. Zu den Materialien z\u00e4hlen hochfeste St\u00e4hle, nichtrostende Legierungen, Duplexst\u00e4hle und technische Kunststoffe.' },\n    cap2_tag2: { en: 'Duplex Steel', de: 'Duplexstahl' },\n\n    cap3_title: { en: 'Automated Assembly & Robotics Integration', de: 'Automatisierte Montage & Roboterintegration' },\n    cap3_body: { en: 'Robotic assembly cells for high-repeatability production, integrating electronic and mechanical subassemblies under controlled process parameters.',\n                 de: 'Roboterzellen f\u00fcr hochpr\u00e4zise, wiederholgenaue Produktion, die elektronische und mechanische Baugruppen unter kontrollierten Prozessparametern integrieren.' },\n    cap3_tag1: { en: 'Controlled Process', de: 'Kontrollierter Prozess' },\n    cap3_tag2: { en: 'Traceable Output', de: 'R\u00fcckverfolgbare Ausgabe' },\n\n    cap4_title: { en: 'Heavy-Duty Casting & Forging', de: 'Schwerlastguss & Schmieden' },\n    cap4_body: { en: 'Custom casting and forging for components under extreme structural fatigue \u2014 pattern design, solidification simulation, and heat treatment including normalizing, quenching, and tempering.',\n                 de: 'Individueller Guss und Schmiedeteile f\u00fcr Komponenten unter extremer struktureller Erm\u00fcdung \u2013 Modellkonstruktion, Erstarrungssimulation und W\u00e4rmebehandlung einschlie\u00dflich Normalisieren, H\u00e4rten und Anlassen.' },\n\n    cap5_title: { en: 'Structural Steel Fabrication & Welding', de: 'Stahlbau & Schwei\u00dftechnik' },\n    cap5_body: { en: 'Heavy steel frames, pressure-retaining housings, and custom industrial structures. All welding performed by certified welders under full Welding Procedure Specifications.',\n                 de: 'Schwere Stahlrahmen, druckhaltende Geh\u00e4use und individuelle Industriestrukturen. Alle Schwei\u00dfarbeiten werden von zertifizierten Schwei\u00dfern nach vollst\u00e4ndigen Schwei\u00dfverfahrensspezifikationen durchgef\u00fchrt.' },\n\n    cap6_title: { en: 'Gas Turbine Components & Axial Rotor Assemblies', de: 'Gasturbinenkomponenten & Axialrotor-Baugruppen' },\n    cap6_body: { en: 'Precision-machined blades, discs, and shaft assemblies for axial-flow gas turbines, balanced and inspected to rotating-equipment standards for continuous high-speed duty.',\n                 de: 'Pr\u00e4zisionsbearbeitete Schaufeln, Scheiben und Wellenbaugruppen f\u00fcr Axialgasturbinen, ausgewuchtet und gepr\u00fcft nach Normen f\u00fcr rotierende Anlagen im dauerhaften Hochgeschwindigkeitsbetrieb.' },\n    cap6_tag2: { en: 'Axial Rotor', de: 'Axialrotor' },\n\n    s3_eyebrow: { en: 'Doc. 03 \u2014 Quality Assurance', de: 'Dok. 03 \u2014 Qualit\u00e4tssicherung' },\n    s3_h2: { en: 'Systematic Quality Assurance & Testing Workflow', de: 'Systematischer Qualit\u00e4tssicherungs- & Pr\u00fcfablauf' },\n    s3_note: { en: 'Every component moves through the same four-stage control sequence, in order, before it ships.',\n               de: 'Jedes Bauteil durchl\u00e4uft vor dem Versand denselben vierstufigen Kontrollablauf, in dieser Reihenfolge.' },\n\n    qa1_title: { en: 'Metrology & Analysis', de: 'Messtechnik & Analyse' },\n    qa1_body: { en: 'Detailed scanning and mechanical measurement of the physical sample or design envelope.',\n                de: 'Detailliertes Scannen und mechanisches Vermessen des physischen Musters oder der Konstruktionsh\u00fclle.' },\n    qa2_title: { en: 'Finite Element Analysis', de: 'Finite-Elemente-Analyse' },\n    qa2_body: { en: 'Stress, thermal, and fatigue simulations identify weak points and optimize geometry before manufacturing.',\n                de: 'Spannungs-, thermische und Erm\u00fcdungssimulationen identifizieren Schwachstellen und optimieren die Geometrie vor der Fertigung.' },\n    qa3_title: { en: 'Controlled Fabrication', de: 'Kontrollierte Fertigung' },\n    qa3_body: { en: 'Manufacturing under strict process control with programmed CNC paths and traceable certified raw materials.',\n                de: 'Fertigung unter strenger Prozesskontrolle mit programmierten CNC-Bahnen und r\u00fcckverfolgbaren zertifizierten Rohmaterialien.' },\n    qa4_title: { en: 'Non-Destructive Testing', de: 'Zerst\u00f6rungsfreie Pr\u00fcfung' },\n    qa4_body: { en: 'Internal integrity verification via UT, RT, MT, or PT testing, certified by EN ISO 9712 Level II\/III inspectors.',\n                de: 'Interne Integrit\u00e4tspr\u00fcfung mittels UT-, RT-, MT- oder PT-Verfahren, zertifiziert durch Pr\u00fcfer nach EN ISO 9712 Stufe II\/III.' },\n\n    s4_eyebrow: { en: 'Doc. 04 \u2014 Partnership', de: 'Dok. 04 \u2014 Partnerschaft' },\n    s4_h2: { en: 'Why European Engineering Teams Partner with BHT', de: 'Warum europ\u00e4ische Engineering-Teams mit BHT zusammenarbeiten' },\n\n    why1_title: { en: 'DIN \/ ISO Compliance', de: 'DIN-\/ISO-Konformit\u00e4t' },\n    why1_body: { en: 'All designs, tolerances, and material specifications are executed strictly within the framework of European industrial standards.',\n                 de: 'Alle Konstruktionen, Toleranzen und Materialspezifikationen werden strikt im Rahmen europ\u00e4ischer Industrienormen umgesetzt.' },\n    why2_title: { en: 'Component Optimization', de: 'Bauteiloptimierung' },\n    why2_body: { en: \"We don't just replicate parts \u2014 we analyze failure modes such as wear, fatigue, and corrosion, then propose design or material upgrades to extend service life.\",\n                 de: 'Wir replizieren Bauteile nicht nur \u2013 wir analysieren Fehlermodi wie Verschlei\u00df, Erm\u00fcdung und Korrosion und schlagen anschlie\u00dfend Design- oder Materialverbesserungen zur Verl\u00e4ngerung der Lebensdauer vor.' },\n    why3_title: { en: 'Full Documentation Dossier', de: 'Vollst\u00e4ndige Dokumentationsmappe' },\n    why3_body: { en: 'Every component ships with a complete technical package: CAD files, material test reports, heat treatment protocols, and dimensional inspection sheets.',\n                 de: 'Jedes Bauteil wird mit einem vollst\u00e4ndigen technischen Paket geliefert: CAD-Dateien, Materialpr\u00fcfberichte, W\u00e4rmebehandlungsprotokolle und Ma\u00dfpr\u00fcfbl\u00e4tter.' },\n\n    closing_eyebrow: { en: 'Get Started', de: 'Jetzt starten' },\n    closing_h2: { en: 'Precision Engineering for Modern Manufacturing Challenges', de: 'Pr\u00e4zisionstechnik f\u00fcr moderne Fertigungsherausforderungen' },\n    closing_body: { en: 'Solving complex industrial problems through high-spec design, technical reengineering, and precision-driven production solutions.',\n                    de: 'Wir l\u00f6sen komplexe industrielle Probleme durch hochspezifiziertes Design, technisches Reengineering und pr\u00e4zisionsgetriebene Produktionsl\u00f6sungen.' },\n\n    footer_companies_heading:   { en: 'Companies',   de: 'Unternehmen' },\n    footer_quicklinks_heading:  { en: 'Quick Links', de: 'Schnellzugriff' },\n    footer_link_industrial:     { en: 'Industrial supply',              de: 'Industrielle Zulieferung' },\n    footer_link_engineering:    { en: 'Engineering & Manufacturing',    de: 'Ingenieurwesen & Fertigung' },\n    footer_link_it:             { en: 'IT & Cybersecurity',              de: 'IT & Cybersicherheit' },\n    footer_link_raw:            { en: 'Raw Materials supply',            de: 'Rohstoffversorgung' },\n    footer_link_renewable:      { en: 'Renewable & Clean Energy',        de: 'Erneuerbare & Saubere Energie' },\n    footer_rights:              { en: 'BHT Electric Control Mechanic. All rights reserved.',\n                                   de: 'BHT Electric Control Mechanic. Alle Rechte vorbehalten.' }\n  };\n\n  var STORAGE_KEY = 'bhtLang';\n\n  function getSavedLang(){\n    try {\n      var v = window.localStorage.getItem(STORAGE_KEY);\n      return (v === 'de' || v === 'en') ? v : null;\n    } catch(e){ return null; }\n  }\n\n  function saveLang(lang){\n    try { window.localStorage.setItem(STORAGE_KEY, lang); } catch(e){ \/* storage unavailable, ignore *\/ }\n  }\n\n  function applyLanguage(lang){\n    var nodes = document.querySelectorAll('[data-i18n]');\n    nodes.forEach(function(node){\n      var key = node.getAttribute('data-i18n');\n      var entry = TRANSLATIONS[key];\n      if (!entry) return;\n      node.textContent = entry[lang] || entry.en;\n    });\n\n    document.documentElement.setAttribute('lang', lang);\n\n    var buttons = document.querySelectorAll('.bht-lang-btn');\n    buttons.forEach(function(btn){\n      var isActive = btn.getAttribute('data-lang') === lang;\n      btn.classList.toggle('is-active', isActive);\n      btn.setAttribute('aria-pressed', isActive ? 'true' : 'false');\n    });\n\n    saveLang(lang);\n  }\n\n  function initLanguage(){\n    var saved = getSavedLang();\n    var browserLang = (navigator.language || '').toLowerCase().indexOf('de') === 0 ? 'de' : 'en';\n    applyLanguage(saved || browserLang);\n  }\n\n  document.addEventListener('click', function(e){\n    var btn = e.target.closest ? e.target.closest('.bht-lang-btn') : null;\n    if (!btn) return;\n    var lang = btn.getAttribute('data-lang');\n    if (lang === 'de' || lang === 'en') applyLanguage(lang);\n  });\n\n  initLanguage();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Home About us Services Contact EN DE High-Precision Engineering,Reverse Engineering &amp; Industrial Manufacturing Services In modern industrial sectors, maintaining mechanical integrity and optimizing component lifecycles are essential for operational profitability. BHT provides specialized engineering and contract manufacturing services tailored to the requirements of the German and European industrial markets. We transform technical challenges into precise [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-17","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/pages\/17","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/comments?post=17"}],"version-history":[{"count":259,"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/pages\/17\/revisions"}],"predecessor-version":[{"id":575,"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/pages\/17\/revisions\/575"}],"wp:attachment":[{"href":"https:\/\/demowebsite.ir\/bht\/engineering-manufacturing\/wp-json\/wp\/v2\/media?parent=17"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}