:root{--navy:#103f58;--navy-deep:#092f43;--blue:#5b849b;--wine:#8b1933;--ivory:#f3ede8;--paper:#faf8f5;--ink:#18272f;--muted:#65727a;--line:#ddd7d1;--white:#fff;--radius:2px;--shadow:0 18px 50px rgba(9,47,67,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Avenir Next,Avenir,Arial,sans-serif;font-size:16px;line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.skip-link{position:fixed;left:12px;top:-60px;z-index:99;background:#fff;padding:10px}.skip-link:focus{top:12px}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;background:rgba(250,248,245,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(16,63,88,.1)}.nav-wrap{height:82px;width:min(1280px,calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand img{width:132px;height:68px;object-fit:contain}.site-header nav{display:flex;gap:28px;align-items:center;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.site-header nav a{position:relative}.site-header nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--wine);transition:.25s}.site-header nav a:hover:after{right:0}.nav-cta{display:inline-flex;align-items:center;gap:8px;background:#25D366;color:#fff;padding:12px 18px}.nav-cta:hover{background:#1ebe57}.nav-cta .wa-icon{width:18px;height:18px;fill:currentColor}.menu-toggle{display:none;background:none;border:0;padding:0;cursor:pointer}.menu-toggle svg{width:28px;height:28px;stroke:var(--navy);stroke-width:2;stroke-linecap:round;fill:none}.hero{min-height:830px;position:relative;display:flex;align-items:flex-end;color:#fff;overflow:hidden}.hero-photo,.hero-overlay{position:absolute;inset:0}.hero-photo{background:url('assets/photos/metal-worker.jpg') center 42%/cover no-repeat}.hero-overlay{background:linear-gradient(90deg,rgba(5,28,40,.93) 0%,rgba(8,45,63,.72) 48%,rgba(8,45,63,.18) 100%)}.hero-dragon{position:absolute;right:-90px;bottom:-290px;width:610px;opacity:.16}.hero-copy{position:relative;z-index:2;padding:210px 0 90px}.eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;margin:0 0 18px}.eyebrow.wine{color:var(--wine)}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-.04em;line-height:1.04}h1{font-size:clamp(54px,7vw,98px);max-width:900px;margin-bottom:28px}h1 em{font-weight:300}h2{font-size:clamp(40px,5vw,68px);margin-bottom:24px}h3{line-height:1.25}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:650px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:36px 0 50px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border:1px solid transparent;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.button-primary{background:var(--wine);color:#fff}.button-ghost{border-color:rgba(255,255,255,.55);color:#fff}.button-dark{background:var(--navy);color:#fff}.button-light{background:#fff;color:var(--navy)}.hero-proof{list-style:none;padding:0;margin:0;display:flex;gap:34px;font-size:13px}.hero-proof li:before{content:"●";color:#bd5b70;margin-right:10px}.section{padding:110px 0}.intro{background:var(--ivory)}.intro-grid{display:grid;grid-template-columns:1.05fr .8fr;gap:110px;align-items:start}.lead{font-size:21px;line-height:1.55}.section-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:end;margin-bottom:50px}.section-heading>p{color:var(--muted);margin-bottom:12px}.catalog-toolbar{display:grid;grid-template-columns:1.4fr repeat(3,1fr) auto;gap:12px;align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.catalog-toolbar label{display:grid;gap:7px}.catalog-toolbar label span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.catalog-toolbar input,.catalog-toolbar select{width:100%;height:45px;padding:0 12px;border:1px solid var(--line);background:#fff;color:var(--ink)}.text-button{height:45px;border:0;background:none;color:var(--wine);font-size:12px;font-weight:700;cursor:pointer}.results-count{margin:24px 0;color:var(--muted);font-size:13px}.load-more-wrap{text-align:center;margin-top:34px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.product-card{background:#fff;border:1px solid #ebe6e1;transition:.25s;position:relative}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.swatch-wrap{position:relative;aspect-ratio:1/1;overflow:hidden;background:#ddd}.swatch-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product-card:hover .swatch-wrap img{transform:scale(1.035)}.gloss-tag{position:absolute;top:12px;right:12px;background:rgba(250,248,245,.92);padding:6px 9px;font-size:10px;font-weight:700}.product-info{padding:20px}.product-code{color:var(--navy);font-size:12px;font-weight:700;letter-spacing:.1em}.product-info h3{font-size:19px;margin:6px 0 14px}.meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.meta span{font-size:10px;border:1px solid var(--line);padding:4px 7px;text-transform:uppercase;letter-spacing:.05em}.card-actions{display:flex;justify-content:space-between;align-items:center}.card-actions button,.card-actions a{border:0;background:none;padding:0;color:var(--wine);font-size:11px;font-weight:700;text-transform:uppercase;cursor:pointer}.empty-state{text-align:center;padding:80px 0}.solutions{background:var(--navy);color:#fff}.section-heading.inverse>p{color:#bdd0da}.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.25)}.solution-grid article{padding:34px 28px 18px;border-right:1px solid rgba(255,255,255,.2)}.solution-grid article:last-child{border-right:0}.solution-grid span,.service-cards span{color:#c97d8d;font-size:11px;font-weight:700}.solution-grid h3{font-size:21px;margin:42px 0 14px}.solution-grid p{font-size:14px;color:#d2e0e6}.industries h2{max-width:750px}.industry-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:45px}.industry-photo{min-height:650px}.industry-photo img{height:100%;width:100%;object-fit:cover;filter:saturate(.78)}.industry-list{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}.industry-list>div{padding:28px 20px 24px 0;border-bottom:1px solid var(--line)}.industry-list b{font-size:10px;color:var(--wine)}.industry-list h3{font-size:20px;margin:10px 0 8px}.industry-list p{font-size:13px;color:var(--muted)}.services{background:var(--ivory)}.service-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.service-copy{position:sticky;top:130px;align-self:start}.service-cards{border-top:1px solid #cfc6bf}.service-cards article{display:grid;grid-template-columns:50px 210px 1fr;gap:22px;padding:32px 0;border-bottom:1px solid #cfc6bf}.service-cards h3{font-size:20px}.service-cards p{font-size:14px}.human{display:grid;grid-template-columns:1.1fr .9fr;padding:0;background:var(--wine);color:#fff}.human-photo{min-height:650px}.human-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.human-copy{padding:110px 9vw;align-self:center}.human-copy h2{font-size:clamp(38px,4.2vw,62px)}.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:100px}.contact-card{border-top:1px solid var(--line)}.contact-card>a,.contact-card>div{display:grid;padding:22px 0;border-bottom:1px solid var(--line)}.contact-card small{text-transform:uppercase;letter-spacing:.13em;font-size:10px;color:var(--wine)}.contact-card strong{font-size:18px;margin:6px 0}.contact-card span{color:var(--muted);font-size:13px}.contact-card span a{color:var(--wine);font-weight:600}.contact-card span a:hover{text-decoration:underline}.contact-card .location-icon{width:16px;height:16px;fill:currentColor;display:inline-block;vertical-align:middle;margin-right:6px}.reg-mark{font-size:.55em;vertical-align:super;line-height:0;margin-left:2px}footer{background:var(--navy-deep);color:#e8eef1;padding:72px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:60px}.footer-grid img{width:180px}.footer-grid p{font-size:13px;color:#aec0c9;max-width:290px}.footer-grid h3{font-size:12px;text-transform:uppercase;letter-spacing:.13em}.footer-grid a,.footer-grid button{display:block;margin:10px 0;color:#c5d2d8;font-size:13px;background:none;border:0;padding:0;text-align:left;cursor:pointer}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;margin-top:50px;padding-top:20px;color:#91a8b3;font-size:11px}.floating-wa{position:fixed;right:22px;bottom:22px;z-index:12;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#1fae60;color:#fff;font-size:12px;font-weight:800;box-shadow:0 8px 25px rgba(0,0,0,.25)}.cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:30;background:#fff;box-shadow:var(--shadow);padding:22px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-left:5px solid var(--wine)}.cookie-banner[hidden]{display:none}.cookie-banner p{margin:0;font-size:13px;max-width:760px}.cookie-banner>div{display:flex;align-items:center;gap:18px}.cookie-banner a{font-size:12px;text-decoration:underline}dialog{border:0;padding:0;width:min(860px,calc(100% - 30px));box-shadow:0 30px 100px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(5,25,35,.75)}.dialog-close{position:absolute;right:12px;top:8px;z-index:2;background:#fff;border:0;width:38px;height:38px;font-size:25px;cursor:pointer}.dialog-product{display:grid;grid-template-columns:1fr 1fr}.dialog-product img{width:100%;height:100%;min-height:460px;object-fit:cover}.dialog-copy{padding:56px}.dialog-copy h2{font-size:42px}.dialog-copy dl{display:grid;grid-template-columns:100px 1fr;gap:10px;font-size:13px;margin:26px 0}.dialog-copy dt{color:var(--muted)}.legal{padding:150px 0 100px}.legal .container{max-width:820px}.legal h1{font-size:52px;color:var(--navy)}.legal h2{font-size:26px;margin-top:42px}.legal .notice{border-left:4px solid var(--wine);padding:14px 18px;background:var(--ivory)}
@media(max-width:1000px){.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.menu-toggle{display:block}.product-grid{grid-template-columns:repeat(3,1fr)}.catalog-toolbar{grid-template-columns:1fr 1fr}.solution-grid{grid-template-columns:1fr 1fr}.solution-grid article{border-bottom:1px solid rgba(255,255,255,.2)}.service-grid{grid-template-columns:1fr}.service-copy{position:static}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.container{width:min(100% - 28px,1180px)}.section{padding:78px 0}.nav-wrap{width:calc(100% - 28px);height:72px}.brand img{width:105px}.hero{min-height:760px}.hero-copy{padding:160px 0 65px}.hero-proof{flex-direction:column;gap:7px}.intro-grid,.section-heading,.industry-layout,.contact-grid,.human{grid-template-columns:1fr;gap:38px}.product-grid{grid-template-columns:1fr 1fr;gap:10px}.catalog-toolbar{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr}.solution-grid article{border-right:0}.industry-photo{min-height:420px}.industry-list{grid-template-columns:1fr}.service-cards article{grid-template-columns:35px 1fr}.service-cards p{grid-column:2}.human-photo{min-height:430px}.human-copy{padding:70px 28px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.cookie-banner{left:10px;right:10px;bottom:10px;display:block}.cookie-banner>div{margin-top:15px}.dialog-product{grid-template-columns:1fr}.dialog-product img{min-height:280px;max-height:340px}.dialog-copy{padding:34px}.dialog-copy h2{font-size:34px}}
@media(max-width:440px){.product-grid{grid-template-columns:1fr 1fr}.hero-actions .button{width:100%}.button-download{padding:10px 12px;font-size:10px;gap:6px}.button-download svg{width:16px;height:16px}}

/* Hero carousel */
.hero-carousel,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;pointer-events:none;transition:opacity .8s ease}.hero-slide.active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-slide:nth-child(3) img{object-position:center 42%}.hero-controls{position:absolute;z-index:4;right:max(30px,calc((100vw - 1180px)/2));bottom:88px;display:flex;align-items:center;gap:14px}.hero-arrow{width:42px;height:42px;border:1px solid rgba(255,255,255,.45);background:rgba(5,28,40,.28);color:#fff;cursor:pointer}.hero-dots{display:flex;gap:8px}.hero-dots button{width:24px;height:3px;border:0;padding:0;background:rgba(255,255,255,.45);cursor:pointer;transition:.25s}.hero-dots button.active{width:42px;background:#fff}@media(max-width:700px){.hero-controls{right:14px;bottom:22px}.hero-arrow{width:38px;height:38px}.hero-slide:first-child img{object-position:66% center}.hero-slide:nth-child(2) img{object-position:64% center}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Floating actions */
.floating-actions{position:fixed;right:22px;bottom:22px;z-index:12;display:flex;flex-direction:column;align-items:center;gap:10px}
.floating-actions .floating-wa,.back-to-top{position:static;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;box-shadow:0 8px 25px rgba(0,0,0,.22);transition:transform .2s ease,opacity .2s ease,visibility .2s ease}
.floating-actions .floating-wa{background:#25d366;color:#fff;font-size:0}
.floating-wa svg{width:31px;height:31px;fill:currentColor;stroke:none}
.back-to-top{border:1px solid rgba(16,63,88,.16);background:#fff;color:var(--navy);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px)}
.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.floating-actions .floating-wa:hover,.back-to-top:hover{transform:translateY(-3px)}.floating-download{position:fixed;left:22px;bottom:22px;z-index:12}.button-download{display:inline-flex;align-items:center;gap:10px;background:var(--navy);color:#fff;padding:14px 20px;border-radius:2px;box-shadow:0 8px 25px rgba(0,0,0,.22);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;transition:transform .2s ease,background .2s ease}.button-download:hover{background:var(--navy-deep);transform:translateY(-3px)}.button-download svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
