:root{--ink:#232323;--muted:#bababa;--paper:#f6f6f6;--accent:#eeeeee;--line:#d9d9d9;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}.skip-link{position:fixed;top:-80px;background:var(--accent);padding:16px;z-index:100}.skip-link:focus{top:0}.header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;gap:14px;align-items:center;font-weight:900;font-size:23px;letter-spacing:-1px}.brand-icon{width:45px;height:45px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;font-size:33px;position:relative}.brand-icon span{color:var(--accent);font-size:20px;margin-left:-4px;margin-top:-17px}.brand-light{font-weight:400}.brand small{display:block;font-size:10px;letter-spacing:1.65px;margin-top:5px}.header nav{display:flex;align-items:center;gap:38px;font-size:14px;font-weight:600}.header nav>a:not(.nav-contact):hover{color:#555555}.nav-contact{border:1px solid var(--ink);padding:15px 20px;display:flex;gap:28px;transition:.2s}.nav-contact:hover{background:var(--ink);color:white}.menu-toggle{display:none}.hero{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.05fr 1fr}.hero-copy{padding:65px 8% 55px 9.5%}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.8px;line-height:1.7;margin:0 0 28px;color:var(--muted);display:flex;align-items:center;gap:10px}.eyebrow>span{height:7px;width:7px;background:var(--accent)}.eyebrow.dark{color:#6d6d6d}h1{font-size:clamp(58px,6.2vw,96px);line-height:.99;letter-spacing:-5px;margin:0 0 30px;font-weight:800}h1 em{color:#d1d1d1;font-style:normal}.hero-description{color:#c5c5c5;font-size:17px;line-height:1.75;max-width:420px;margin-bottom:30px}.button{display:flex;width:fit-content;gap:48px;align-items:center;background:var(--accent);padding:20px 24px;color:var(--ink);font-size:14px;font-weight:700;transition:background .2s}.button:hover{background:#ffffff}.button span{font-size:21px}.text-link{display:block;margin-top:25px;font-size:13px;color:#dcdcdc}.text-link span{margin-left:18px}.text-link:hover{text-decoration:underline}.hero-visual{position:relative;min-height:620px;overflow:hidden;background:#393939}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute}.image-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,20,20,.75),transparent 45%),linear-gradient(90deg,rgba(20,20,20,.12),transparent)}.image-label{position:absolute;left:35px;right:35px;bottom:55px;display:flex;flex-direction:column;gap:12px}.image-label span:first-child{font-size:17px;font-weight:700;letter-spacing:2px}.image-label span:last-child{font-size:11px;letter-spacing:2px;color:#c1c1c1}.image-caption{position:absolute;bottom:20px;right:25px;font-size:12px;color:#c1c1c1}.hero-bottom{grid-column:1/-1;padding:25px 5%;display:flex;align-items:center;gap:9%;border-top:1px solid #494949;font-size:13px;color:#cfcfcf}.hero-bottom span:before{content:'+';color:var(--accent);margin-right:12px}.hero-bottom a{margin-left:auto;font-size:24px}.section{padding:100px 7%}.heading-row{display:flex;justify-content:space-between;gap:70px;align-items:flex-end;margin-bottom:55px}h2{font-size:clamp(36px,4.1vw,61px);letter-spacing:-2.5px;line-height:1.08;margin:0;font-weight:700}.heading-row>p{max-width:355px;font-size:16px;line-height:1.8;color:#676767;margin:0 0 5px}.service-list{border-top:1px solid var(--ink)}details{border-bottom:1px solid var(--line)}summary{display:flex;gap:26px;align-items:center;padding:28px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service-number{font-size:12px;color:#767676;min-width:25px}h3{margin:0}summary h3{font-size:clamp(18px,1.7vw,26px);letter-spacing:-.6px;flex:1}.service-tags{font-size:10px;letter-spacing:1.4px;color:#777777;margin-right:25px}.plus{width:27px;height:27px;position:relative;flex-shrink:0}.plus:before,.plus:after{content:'';position:absolute;top:13px;left:5px;width:17px;height:1px;background:var(--ink)}.plus:after{transform:rotate(90deg);transition:transform .2s}details[open] .plus:after{transform:rotate(0)}details[open] summary{padding-bottom:15px}details[open] .service-number{color:#333333}.service-content{margin-left:51px;padding:0 0 28px;display:flex;gap:8%;align-items:flex-end}.service-content p{max-width:600px;font-size:16px;line-height:1.75;color:#676767;margin:0}.service-content a{margin-left:auto;font-size:13px;white-space:nowrap;border-bottom:1px solid #aeaeae;padding-bottom:6px}.service-content a span{margin-left:12px}.about{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:10%}.about-heading>p:not(.eyebrow){color:#bdbdbd;line-height:1.85;max-width:445px;font-size:16px;margin:28px 0 35px}.signature{display:flex;align-items:center;gap:16px}.signature-mark{background:var(--accent);color:var(--ink);height:47px;width:47px;display:grid;place-items:center;font-weight:bold}.signature strong{font-size:15px}.signature div span{display:block;color:#b5b5b5;font-size:12px;margin-top:7px}.principles article{display:flex;gap:23px;padding:30px 0;border-top:1px solid #4a4a4a}.principles article>span{font-size:12px;color:var(--accent);padding-top:4px}.principles h3{font-size:21px;letter-spacing:-.5px}.principles p{font-size:15px;line-height:1.8;color:#bdbdbd;margin:14px 0 0}.contact{background:#ececec}.contact .eyebrow{color:#5f5f5f}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:10%}.contact h2 span{color:#5f5f5f}.contact-grid>div>p{max-width:480px;font-size:17px;line-height:1.75;margin:30px 0 0}address{font-style:normal;border-left:1px solid #c3c3c3;padding-left:45px}.contact-label{font-size:11px;letter-spacing:1.5px}.contact h3{font-size:29px;margin:23px 0 16px}.contact address p{font-size:16px;line-height:1.7;margin:0}.contact address .contact-pending{border-top:1px solid #c3c3c3;padding-top:18px;margin-top:24px;font-size:14px}footer{display:flex;align-items:center;gap:5%;padding:45px 5%;background:var(--paper)}.footer-brand{font-size:21px;font-weight:800;letter-spacing:-.8px}.footer-brand>span{display:block;font-size:9px;letter-spacing:1.4px;font-weight:400;margin-top:7px}.footer-links{display:flex;gap:27px;margin-left:auto;font-size:12px;color:#6a6a6a}.footer-links a:hover{text-decoration:underline}.back-top{border:1px solid #c4c4c4;padding:12px 17px;font-size:20px}.legal{max-width:900px;padding:60px 30px;margin:auto}.legal h1{font-size:48px;letter-spacing:-2px;margin-top:70px}.legal h2{font-size:24px;letter-spacing:-.5px;margin:35px 0 15px}.legal p{line-height:1.8}.legal a{text-decoration:underline}
@media(min-width:1600px){.hero-copy{padding-top:90px;padding-bottom:80px}.hero-visual{min-height:740px}.section{padding-top:120px;padding-bottom:120px}}
@media(max-width:1050px){h1{letter-spacing:-3px}.hero-copy{padding-top:55px}.hero-visual{min-height:580px}.service-tags{display:none}.section{padding:75px 6%}.heading-row{gap:35px}.about{gap:7%}.hero-bottom{gap:5%}.contact-grid{gap:6%}address{padding-left:30px}.service-content{gap:25px}.footer-links{gap:18px}}
@media(max-width:720px){html{scroll-padding-top:20px}.header{height:82px;padding:0 6%;position:relative;z-index:10}.brand{font-size:21px}.brand-icon{width:38px;height:40px;font-size:29px}.brand small{font-size:8px;letter-spacing:1.5px}.menu-toggle{display:flex;flex-direction:column;gap:6px;border:0;background:transparent;padding:13px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:var(--ink)}.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:24px 6% 30px;border-bottom:1px solid var(--line);align-items:stretch;gap:24px}.header nav.is-open{display:flex;flex-direction:column}.nav-contact{justify-content:space-between}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6%}.eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:25px}h1{font-size:clamp(58px,12.5vw,86px);letter-spacing:-3px;line-height:1.02}.hero-description{font-size:16px;max-width:450px}.hero-visual{min-height:370px}.hero-visual img{object-position:center 56%}.hero-bottom{padding:23px 6%;gap:14px;flex-wrap:wrap;font-size:11px}.hero-bottom span{width:calc(50% - 14px)}.hero-bottom a{margin-right:10px}.image-label{left:6%;bottom:52px}.image-label span:first-child{font-size:15px}.section{padding:62px 6%}.heading-row{display:block;margin-bottom:35px}h2{font-size:39px;letter-spacing:-1.8px}.heading-row>p{margin-top:24px;max-width:none;font-size:16px}summary{gap:13px;padding:25px 0}summary h3{font-size:20px;line-height:1.3}.service-number{min-width:20px}.service-content{margin-left:33px;display:block}.service-content p{font-size:15px}.service-content a{display:inline-block;margin-top:20px}.about{grid-template-columns:1fr;gap:45px}.about-heading>p:not(.eyebrow){max-width:none}.principles article{padding:25px 0}.contact-grid{grid-template-columns:1fr;gap:40px}.contact h2{font-size:36px}.contact-grid>div>p{font-size:16px}address{border-left:0;border-top:1px solid #c3c3c3;padding:30px 0 0}.contact h3{margin-top:18px}.contact address .contact-pending{border-top:0;padding-top:0}.footer-links{flex-wrap:wrap;gap:18px;font-size:12px;margin:0}.footer-links>span{width:100%}footer{flex-wrap:wrap;gap:30px;padding:36px 6%}.footer-brand{width:calc(100% - 70px);order:0}.back-top{order:1}.footer-links{order:2}.legal{padding:30px 6%}.legal h1{font-size:40px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original Balz Metall logo, reconstructed as vector paths. */
.header{height:132px}.brand-logo{display:block;width:124px;height:auto}.brand{flex-shrink:0}.footer-brand{display:block;letter-spacing:normal}.footer-brand .brand-logo{width:112px}@media(max-width:720px){.header{height:110px}.header .brand-logo{width:105px}.header nav{top:110px}.footer-brand .brand-logo{width:105px}}

.contact address .contact-email{margin-top:24px}.email-link{display:inline-block;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.contact .email-link{background:var(--ink);color:#fff;padding:15px 22px;text-decoration:none;font-weight:600}.contact .email-link:hover{background:#454545}.footer-brand .brand-slogan{font-size:14px;letter-spacing:0;font-weight:600;margin-top:8px}.contact address .contact-pending{margin-top:15px;font-size:14px}

.contact address .contact-phone{margin-top:20px;font-size:clamp(22px,2.2vw,30px);font-weight:600}.contact-phone a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.contact-phone a:hover{color:#555}.legal nav{font-size:14px}.legal a{overflow-wrap:anywhere}
