:root{--ink:#15191d;--orange:#ff6b35;--paper:#f5f5f2;--line:#dedfda}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}header{min-height:100px;display:flex;align-items:center;justify-content:space-between;padding:20px 5%;background:var(--ink);color:white;border-bottom:1px solid #363a3e}.brand{display:flex;align-items:center;gap:20px}.brand strong{font-size:42px;line-height:1;font-weight:900;letter-spacing:-3px}.brand strong span{color:var(--orange);font-size:18px;margin-left:5px}.brand-sub{font-size:10px;letter-spacing:1.4px;line-height:1.5}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav a:hover{color:var(--orange)}.nav-contact{padding:10px 18px;border:1px solid #707477}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.07fr 1fr;background:var(--ink);color:white;min-height:625px}.hero-content{padding:70px 8% 28px 9.35%;display:flex;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;color:#b2b7ba;margin:0 0 24px}.eyebrow span{display:inline-block;width:7px;height:7px;background:var(--orange);margin-right:8px}.eyebrow.dark{color:#686c6d}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,5.8vw,88px);line-height:1.04;letter-spacing:-4px;font-weight:800;margin-bottom:30px}em{font-style:normal;color:var(--orange)}.hero-description{font-size:18px;color:#c4c8ca;line-height:1.7;max-width:520px}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:15px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;font-weight:700;font-size:14px;border:0;min-height:54px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.orange{background:var(--orange);color:var(--ink)}.orange:hover{background:#ff885c}.black{background:var(--ink);color:white}.black:hover{background:#31383e}.text-link{border-bottom:1px solid #72787d;padding:5px 0;font-size:14px}.hero-bottom{margin-top:auto;padding-top:55px;display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#8b9297;letter-spacing:1.1px}.hero-visual{position:relative;overflow:hidden;background:#252b30;min-height:400px}.hero-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),transparent 30%,rgba(0,0,0,.65))}.image-top,.image-caption{position:absolute;z-index:1;font-size:11px;letter-spacing:1.6px}.image-top{top:30px;left:30px;color:#ddd}.image-caption{bottom:30px;left:30px;right:30px;display:flex;justify-content:space-between;gap:20px;color:#ddd;border-top:1px solid #85898c;padding-top:18px}.expertise-strip{padding:21px 5%;display:flex;justify-content:space-between;gap:20px;background:var(--orange);font-size:12px;letter-spacing:1.7px;font-weight:700}.section{padding:90px 5%}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:90px;margin-bottom:48px;align-items:end}h2{font-size:clamp(32px,3.1vw,48px);letter-spacing:-1.9px;line-height:1.15;margin-bottom:0}.section-heading>p{max-width:460px;color:#5d6264;margin-bottom:3px}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service{padding:30px 25px 34px;border-right:1px solid var(--line);transition:background .2s}.service:last-child{border:0}.service:hover{background:white}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.number{font-size:12px;color:#6e7477}.service svg{width:30px;height:30px;fill:none;stroke:var(--ink);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}h3{font-size:21px;line-height:1.35;letter-spacing:-.4px;margin-bottom:18px}.service p{font-size:15px;color:#5d6264;min-height:100px}.service ul{padding:20px 0 0;margin:0;list-style:none;border-top:1px solid var(--line);font-size:14px}.service li{margin:5px 0}.service li:before{content:"+";color:#cc4b1c;margin-right:10px}.process{background:var(--ink);color:white}.process .section-heading>p{color:#b2b7ba}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.steps article{border-top:1px solid #444a4f;padding-top:23px}.steps span{display:block;color:var(--orange);font-size:14px;margin-bottom:30px}.steps p{color:#b2b7ba;font-size:15px}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;align-items:center;border-bottom:1px solid var(--line)}.about-mark{font-size:clamp(100px,14vw,220px);line-height:1;font-weight:900;letter-spacing:-12px}.about-mark>span{font-size:45px;color:var(--orange);margin-left:8px}.about-mark small{display:block;font-size:12px;letter-spacing:3px;color:#6b7276;margin-top:25px}.about h2{margin-bottom:30px}.about p:not(.eyebrow){color:#5d6264;max-width:580px}.signature{padding-top:12px}.signature strong,.signature span{display:block}.signature span{font-size:14px;color:#6b7276}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h2{font-size:clamp(42px,4.3vw,66px);margin-bottom:27px}.contact p{color:#5d6264;max-width:440px}.contact-details{margin-top:36px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.contact-details>a{font-size:22px;font-weight:700}.contact-details>a:hover{color:#c94d21}address{font-style:normal;color:#5d6264;font-size:14px;margin-top:20px}form{display:flex;flex-direction:column;gap:10px;padding:32px;border:1px solid var(--line);background:white}label{font-size:14px;font-weight:700}input,select,textarea{width:100%;border:1px solid #d7dad8;padding:13px;background:#fafaf8;color:var(--ink);border-radius:0;font-size:16px;margin-bottom:10px}input:focus,select:focus,textarea:focus{outline:2px solid var(--orange);outline-offset:2px}textarea{resize:vertical}.form-note{font-size:12px;margin:5px 0 0}.contact #form-status{font-size:14px;margin:0}footer{background:var(--ink);color:#bac0c4;padding:40px 5%;display:grid;grid-template-columns:auto 1fr auto;gap:45px;align-items:center}footer .brand{color:white}footer p{font-size:12px;margin:0}footer>div{display:flex;gap:18px;align-items:center;font-size:12px;flex-wrap:wrap}.footer-link{background:none;border:0;color:inherit;padding:0;font-size:12px;text-decoration:underline;text-underline-offset:4px}dialog{border:0;padding:40px;max-width:620px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 20px 70px #0004}dialog::backdrop{background:#101519b8}dialog h2{font-size:30px;margin-bottom:25px}dialog p{color:#555d60}.close{position:absolute;right:13px;top:8px;background:none;border:0;font-size:28px}dialog a{text-decoration:underline}
@media(min-width:1600px){header,.section,.expertise-strip,footer{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}.hero-content{padding-left:max(9.35%,calc((100vw - 1440px)/2))}}
@media(max-width:1050px){.brand-sub{display:none}nav{gap:20px}.hero-content{padding-top:55px}.hero-description{font-size:16px}h1{letter-spacing:-2.5px}.hero-bottom{flex-direction:column}.section{padding-top:65px;padding-bottom:65px}.section-heading,.about,.contact{gap:45px}.services-grid{grid-template-columns:repeat(2,1fr)}.service:nth-child(2){border-right:0}.service:nth-child(-n+2){border-bottom:1px solid var(--line)}.service p{min-height:0}.steps{grid-template-columns:repeat(2,1fr);gap:30px}footer{gap:20px;grid-template-columns:auto 1fr}footer>div{grid-column:2}}
@media(max-width:680px){header{min-height:80px;padding:18px 6%;position:relative}.brand strong{font-size:36px}.menu-toggle{display:block;background:transparent;color:white;border:1px solid #6c7377;padding:7px 14px;font-size:14px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--ink);padding:20px 6%;z-index:5;align-items:stretch;flex-direction:column;border-top:1px solid #444}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-content{padding:42px 6% 28px}h1{font-size:56px;letter-spacing:-2.7px}.hero-description{font-size:16px}.hero-actions{gap:20px}.hero-bottom{padding-top:36px;flex-direction:row;font-size:9px}.hero-visual{min-height:320px}.image-top,.image-caption{left:6%;right:6%;font-size:9px}.expertise-strip{display:grid;grid-template-columns:1fr 1fr;padding:19px 6%;font-size:10px;gap:10px;letter-spacing:1px}.section{padding:55px 6%}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:30px}h2{font-size:34px;letter-spacing:-1.2px}.eyebrow{font-size:11px;margin-bottom:18px}.services-grid{grid-template-columns:1fr}.service{padding:25px;border-right:0;border-bottom:1px solid var(--line)}.service:nth-child(3){border-bottom:1px solid var(--line)}.service-top{margin-bottom:24px}.service h3 br{display:none}.service ul{padding-top:15px}.steps{grid-template-columns:1fr;gap:22px}.steps span{margin-bottom:16px}.about{grid-template-columns:1fr;gap:40px}.about-mark{font-size:120px;letter-spacing:-7px}.about-mark>span{font-size:30px}.about-mark small{margin-top:15px;font-size:10px}.contact{grid-template-columns:1fr;gap:32px}.contact h2{font-size:46px}.contact-details>a{font-size:21px}form{padding:24px 20px}footer{grid-template-columns:1fr;gap:24px;padding:35px 6%}footer>div{grid-column:auto;gap:20px}dialog{padding:35px 25px}.hero-bottom span:last-child{max-width:120px;text-align:right}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* MAF brand and technical emphasis */
:root{--orange:#dc7046;--paper:#f6f7f7;--line:#d7dcdf}
header{background:#fff;color:var(--ink);padding-top:12px;padding-bottom:12px;border-bottom:1px solid var(--line);min-height:128px}.brand .logo{display:block;width:144px;height:auto}.nav-contact{border-color:#b9c0c4;background:var(--ink);color:#fff}.nav-contact:hover{background:#343b40;color:#fff}nav{font-size:15px}h1{font-size:clamp(43px,4.7vw,71px);letter-spacing:-2.8px;line-height:1.1}.hero{min-height:610px}.hero-content{padding-top:58px}.hero-description{font-size:17px;max-width:500px}.hero-bottom{font-size:12px;letter-spacing:.8px;flex-wrap:wrap}.expertise-strip{background:#e5e9eb;color:#3d474e;border-bottom:1px solid #cfd6db}.applications{margin-top:55px;display:grid;grid-template-columns:.65fr 1.7fr;gap:50px;border-top:2px solid var(--ink);padding-top:32px}.applications-intro h3{font-size:28px;line-height:1.2;letter-spacing:-1px}.application-list article{display:grid;grid-template-columns:32px 1fr auto;gap:20px;padding:0 0 25px;margin:0 0 25px;border-bottom:1px solid var(--line)}.application-list article:last-child{margin-bottom:0}.application-list article>span{font-size:14px;color:#7a858d}.application-list h3{font-size:20px;margin:0 0 8px}.application-list p{font-size:15px;color:#5d6264;margin:0;max-width:620px}.application-list strong{font-size:12px;letter-spacing:1px;color:#5c6b75;padding-top:3px;white-space:nowrap}.about-mark{padding:35px 30px;background:white;border:1px solid var(--line);letter-spacing:normal;font-size:initial;line-height:1.4}.about-mark img{width:100%;height:auto;display:block}.brand-values{border-top:1px solid var(--line);padding-top:24px;margin-top:28px;font-size:14px;font-weight:700;letter-spacing:1.2px;line-height:1.8}.about h2{font-size:clamp(30px,2.8vw,44px)}footer .brand{background:white;padding:12px}footer .logo{width:120px}.brand-sub,.hero .image-top,.image-caption,.eyebrow,.expertise-strip{font-size:12px}.form-note,footer p,.footer-link,footer>div{font-size:14px}
@media(max-width:1050px){.applications{grid-template-columns:1fr;gap:22px}.application-list article{grid-template-columns:30px 1fr}.application-list strong{grid-column:2}.hero-bottom{flex-direction:column;font-size:12px}.about{gap:40px}nav{gap:22px}}
@media(max-width:680px){header{min-height:108px;padding:10px 6%}.brand .logo{width:116px}.menu-toggle{color:var(--ink);border-color:#aab2b7}nav{top:108px;background:white;color:var(--ink);border-color:var(--line)}h1{font-size:clamp(36px,9.5vw,55px);letter-spacing:-1.8px}.hero{min-height:0}.hero-content{padding-top:38px}.hero-bottom{flex-direction:column;padding-top:30px;font-size:12px}.hero-bottom span:last-child{max-width:none;text-align:left}.hero-visual{min-height:290px}.expertise-strip{font-size:12px;letter-spacing:.5px}.applications{margin-top:38px;padding-top:25px}.applications-intro h3{font-size:26px}.application-list article{gap:12px}.about-mark{padding:25px}.about h2{font-size:32px}.brand-values{font-size:14px}.contact h2{font-size:42px}.hero .image-top,.image-caption{font-size:12px;letter-spacing:.5px}.image-caption{flex-direction:column;gap:5px}footer .brand{width:max-content}footer .logo{width:140px}}
.project-section{background:#ebeff1;border-top:1px solid var(--line)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-card{background:white;border:1px solid #d4dade;min-width:0}.project-image{display:block;width:100%;position:relative;border:0;padding:0;background:#dce1e4;aspect-ratio:4/3;overflow:hidden}.project-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .3s}.project-image:hover img{transform:scale(1.025)}.image-count,.enlarge{position:absolute;bottom:12px;font-size:12px;padding:6px 10px;background:#15191de8;color:white}.image-count{left:12px}.enlarge{right:12px}.project-copy{padding:25px}.project-category{font-size:12px;letter-spacing:1.3px;color:#69747c;margin:0 0 12px;font-weight:700}.project-copy h3{font-size:21px;margin-bottom:12px}.project-copy>p:last-child{color:#5d6264;font-size:15px;margin:0}.project-viewer{max-width:1200px;width:calc(100% - 32px);padding:48px 20px 20px;background:#f5f6f7;max-height:94dvh}.viewer-image-wrap{height:min(70dvh,800px);display:flex;align-items:center;justify-content:center;background:#e4e8eb}.viewer-image-wrap img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.viewer-controls>div{text-align:center}.viewer-controls strong,.viewer-controls span{display:block}.viewer-controls span{font-size:14px;color:#646e75}.viewer-controls button{font-size:14px;padding:10px 14px;background:white;border:1px solid #b7c0c5;color:var(--ink)}.viewer-controls button:disabled{opacity:.5;cursor:default}nav{gap:24px}
@media(max-width:1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}nav{gap:17px;font-size:14px}}
@media(max-width:680px){.project-grid{grid-template-columns:1fr;gap:24px}.project-copy{padding:24px}.project-viewer{width:calc(100% - 20px);padding:45px 12px 15px}.viewer-image-wrap{height:60dvh}.viewer-controls{gap:8px;flex-wrap:wrap}.viewer-controls>div{order:-1;width:100%;margin-bottom:8px}.viewer-controls button{font-size:14px;flex:1}.project-copy h3{font-size:22px}.hero-visual img{object-position:center}}
.needle-project{background:var(--ink);color:white;padding:38px;margin-bottom:38px;border-top:3px solid var(--orange)}.needle-heading{display:grid;grid-template-columns:1fr 1.3fr;gap:65px;margin-bottom:28px}.needle-heading h3{font-size:34px;line-height:1.16;letter-spacing:-1px;margin:0}.needle-heading .project-category{color:#c7cdd1}.needle-heading>div>p{font-size:16px;color:#c7cdd1;margin-bottom:12px}.needle-heading .needle-details{font-size:14px;color:#a2afb7;margin:0}.needle-images{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.needle-images figure{margin:0;min-width:0}.needle-photo{aspect-ratio:16/10;background:#262c30}.needle-photo img{object-fit:contain}.needle-images figcaption{font-size:14px;padding-top:12px;color:#b8c3ca}.needle-images .weld-photo{background:#080a0b}
@media(max-width:1050px){.needle-heading{gap:35px}.needle-heading h3{font-size:30px}}
@media(max-width:680px){.needle-project{padding:25px 20px;margin-bottom:26px}.needle-heading{grid-template-columns:1fr;gap:22px;margin-bottom:24px}.needle-heading h3{font-size:30px}.needle-images{grid-template-columns:1fr;gap:25px}.needle-heading .needle-details{font-size:14px}.needle-images .image-count,.needle-images .enlarge{font-size:12px;padding:5px 7px}.needle-images .image-count{left:8px}.needle-images .enlarge{right:8px}}
/* Uniform landscape previews, with full photographs available in the viewer. */
.project-image,.needle-photo{aspect-ratio:16/9}.project-image img{object-fit:cover;object-position:center}.cad-project .project-image img,.needle-photo img{object-fit:contain}.viewer-image-wrap{height:auto;aspect-ratio:16/9;max-height:70dvh;width:100%}.viewer-image-wrap img{display:block;max-height:70dvh;max-width:100%;object-fit:contain}.project-viewer{overflow:auto}
@media(max-width:680px){.project-image,.needle-photo{aspect-ratio:16/9}.viewer-image-wrap{height:auto;aspect-ratio:16/9;max-height:65dvh}.viewer-image-wrap img{max-height:65dvh}}
.project-image.rotated-preview img{position:absolute;left:50%;top:50%;width:56.25%;height:177.7778%;max-width:none;max-height:none;object-fit:contain;transform:translate(-50%,-50%) rotate(90deg)}.project-image.rotated-preview:hover img{transform:translate(-50%,-50%) rotate(90deg)}.viewer-image-wrap{overflow:hidden}.viewer-image-wrap img{flex-shrink:0}
.legal-dialog{max-height:85dvh;overflow:auto}.legal-dialog h3{font-size:18px;margin:28px 0 12px}.legal-dialog p{font-size:16px}

.legal-dialog a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.inline-privacy{padding:0;border:0;background:none;color:inherit;text-decoration:underline;text-underline-offset:3px;font-size:inherit}

.measurement-choice{position:fixed;z-index:50;bottom:16px;left:16px;right:16px;background:#fff;color:var(--ink);border:1px solid #999;box-shadow:0 8px 40px #0004;padding:24px;display:flex;gap:30px;align-items:center;max-height:80dvh;overflow:auto}.measurement-choice[hidden]{display:none}.measurement-choice h2{font-size:22px;letter-spacing:normal;line-height:1.25;margin:0 0 10px}.measurement-choice p{font-size:14px;max-width:840px;margin:0 0 8px}.measurement-actions{display:flex;gap:12px;flex-shrink:0}.measurement-actions button{background:var(--ink);color:#fff;padding:12px 18px;border:0;min-width:120px;font-weight:bold}.measurement-details{background:none;border:0;padding:0;color:inherit;text-decoration:underline;font-size:14px}@media(max-width:800px){.measurement-choice{display:block;padding:20px;left:10px;right:10px;bottom:10px}.measurement-actions{margin-top:16px}.measurement-actions button{flex:1}}

.printing-service{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:30px;padding:35px;border:1px solid var(--line);background:#fff}.printing-service h3{font-size:30px;line-height:1.2}.printing-service p{color:#5d6264}.printing-service ul{padding-left:20px;margin:0 0 24px}.printing-service li{margin:8px 0}.printing-size{border-top:1px solid var(--line);padding-top:20px;margin-bottom:14px}.printing-size strong,.printing-size span{display:block}.printing-size span{font-size:26px;font-weight:700;color:var(--ink);margin-top:5px}.printing-note{font-size:14px;margin-bottom:0}.printing-fields{display:flex;flex-direction:column;gap:10px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:10px}.printing-fields[hidden]{display:none}.printing-fields p{font-size:14px;margin:0}.printing-fields input{margin-bottom:0}@media(max-width:680px){.printing-service{grid-template-columns:1fr;gap:28px;padding:25px}.printing-service h3{font-size:26px}.printing-size span{font-size:24px}}
