/* Owner-supplied identity and project photography. */
.logo-window{display:block;position:relative;width:205px;height:51.25px;overflow:hidden;direction:ltr;flex:none;filter:invert(1);mix-blend-mode:screen}
.brand .logo-window .original-logo,.footer-logo .logo-window .original-logo{position:absolute;width:150%;height:auto;max-width:none;left:-25%;top:-252%;object-fit:initial}
.brand{min-width:205px}.footer-logo .logo-window{width:265px;height:66.25px}
.hero{height:780px;min-height:700px;max-height:1000px}
.hero-body{padding-top:210px}.hero h1{font-size:clamp(50px,5.2vw,78px)}
.hero-media{background:#172023}.hero-slides,.hero-slide{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.hero-slide{opacity:0;z-index:0;transition:opacity 1.5s ease-in-out;will-change:opacity}
.hero-slide.is-active{opacity:1;z-index:2}.hero-slide.is-leaving{z-index:1}
.hero-slide img{width:100%;height:100%;object-fit:cover;max-width:none;transform:scale(1.03);filter:saturate(.78)}
.hero-slide.is-active img,.hero-slide.is-leaving img{animation:photo-drift 9s linear both}
.hero-slide:nth-child(2n).is-active img,.hero-slide:nth-child(2n).is-leaving img{animation-name:photo-drift-reverse}
.hero-slides.is-paused img{animation-play-state:paused!important}
.hero-shade{z-index:-1;background:linear-gradient(270deg,rgba(10,19,24,.89) 0%,rgba(10,19,24,.69) 35%,rgba(10,19,24,.12) 80%),linear-gradient(0deg,rgba(8,16,20,.86),transparent 40%),linear-gradient(180deg,rgba(8,16,20,.68),transparent 27%)}
.hero-index{color:#d7dfdbb3}.hero-project-caption{position:absolute;bottom:125px;left:5.5%;font-size:11px;color:#e7eee8;max-width:35%;text-align:left;border-inline-start:2px solid var(--green);padding-inline-start:13px}
.slideshow-navigation{display:flex;align-items:center;gap:24px;direction:ltr}.slide-selectors{display:flex;gap:7px;direction:ltr}.slide-selector{width:37px;height:32px;background:none;padding:13px 0;display:grid;place-items:center}.slide-selector span{width:100%;height:2px;background:#ffffff50;transition:background .3s,height .3s}.slide-selector:hover span,.slide-selector[aria-pressed=true] span{background:var(--green);height:3px}.slide-counter{font:9px var(--latin);letter-spacing:2px;color:#d9e1dc}.slideshow-navigation .motion-toggle{direction:rtl}
.drawing-stage.has-photo{min-height:435px;background:#c6cec3}.has-photo .product-drawing{position:absolute;inset:0;width:100%;height:100%;padding:0}.category-photo{width:100%;height:100%;object-fit:cover;object-position:center}.has-photo .drawing-tag{z-index:2;color:#fff;background:#182023cc;padding:7px 10px;left:20px;top:20px;backdrop-filter:blur(8px)}.has-photo .drawing-note{z-index:2;color:white;background:#182023c9;padding:5px 9px;bottom:17px;right:17px}.has-photo .drawing-corner{z-index:2;color:white}.has-photo:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#17201988);pointer-events:none}
.project-filters{display:flex;flex-wrap:wrap;gap:9px 24px;margin-bottom:33px;border-bottom:1px solid #ffffff23;padding-bottom:15px}.project-filters button{background:none;padding:6px 0;color:#9faa9f;font-size:12px;border-bottom:1px solid transparent}.project-filters button:hover,.project-filters button.is-selected{color:var(--green);border-color:var(--green)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.project-card{background:transparent;color:var(--paper);padding:0;text-align:right;min-width:0}.project-image-frame{display:block;position:relative;aspect-ratio:1.43;overflow:hidden;background:#26302b}.project-image-frame img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease,filter .7s;filter:saturate(.8)}.project-card:hover img{transform:scale(1.055);filter:saturate(1)}.project-id{position:absolute;top:15px;right:15px;background:#16201bcc;backdrop-filter:blur(8px);padding:5px 9px;font:9px/1.4 var(--latin);letter-spacing:1.5px}.project-card-text{display:grid;grid-template-columns:1fr 25px;gap:7px 13px;padding-top:17px}.project-card-title{font-size:20px;line-height:1.5}.project-arrow{font:23px var(--latin);color:var(--green);align-self:center}.project-client{font-size:10px;color:#98a58f;grid-column:1/-1}.project-count{font-size:10px;color:#87967e;margin-top:25px}.project-full-image{width:100%;max-height:460px;object-fit:contain;background:#e5e8df;margin:20px 0}.project-dialog .project-meta{font-size:12px;color:#667757;margin-bottom:12px}.project-dialog .button{margin-top:24px}
@keyframes photo-drift{from{transform:scale(1.025) translateX(.6%)}to{transform:scale(1.1) translateX(-.8%)}}
@keyframes photo-drift-reverse{from{transform:scale(1.105) translateX(-.7%)}to{transform:scale(1.03) translateX(.7%)}}
@media(min-width:1600px){.hero-project-caption{left:calc((100% - 1320px)/2)}}
@media(max-width:1100px){.logo-window{width:180px;height:45px}.brand{min-width:180px}.hero{height:760px}.drawing-stage.has-photo{min-height:410px}.project-card-title{font-size:18px}.project-grid{gap:33px 20px}}
@media(max-width:800px){.logo-window{width:156px;height:39px}.brand{min-width:156px}.hero{height:760px;min-height:680px}.hero-body{padding-top:205px}.hero h1{font-size:clamp(47px,8vw,64px)}.hero-shade{background:linear-gradient(270deg,#09141beb,#09141b38),linear-gradient(0deg,#09141beb,transparent 60%),linear-gradient(180deg,#09141b70,transparent 20%)}.hero-project-caption{left:6%;bottom:108px;max-width:55%;font-size:10px}.slideshow-navigation{gap:17px}.drawing-stage.has-photo{min-height:358px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-filters{gap:9px 20px}.footer-logo .logo-window{width:220px;height:55px}}
@media(max-width:560px){.logo-window{width:136px;height:34px}.brand{min-width:136px}.header-actions{gap:4px}.hero{height:750px;min-height:690px;max-height:none}.hero-body{padding-top:184px}.hero h1{font-size:clamp(40px,9.8vw,54px)}.hero-body>.eyebrow{font-size:5.5px;letter-spacing:.6px}.hero-project-caption{bottom:114px;font-size:9px;max-width:75%}.hero-footer{flex-wrap:nowrap;align-items:center;gap:8px;bottom:24px}.scroll-cue{gap:8px;font-size:9px}.slideshow-navigation{gap:12px}.slide-selector{width:25px}.slide-counter{font-size:8px;letter-spacing:1px}.motion-label{font-size:0}.motion-toggle{gap:0}.motion-icon{font-size:11px}.drawing-stage.has-photo{min-height:325px}.has-photo .drawing-tag{font-size:7px;top:15px;left:15px}.project-grid{grid-template-columns:1fr;gap:30px}.project-image-frame{aspect-ratio:1.45}.project-card-title{font-size:22px}.project-filters{gap:6px 19px}.project-filters button{font-size:11px}.project-client{font-size:11px}.footer-logo .logo-window{width:180px;height:45px}.footer-top{gap:20px}.footer-top>p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.hero-slide img{animation:none!important;transform:none}.project-card:hover img{transform:none}}

/* Robotics feature and expanded, portrait-aware header sequence. */
.hero-slide-portrait{background:#172023}
.hero-slide-portrait img{position:absolute;left:0;width:64%;object-fit:cover}
.hero-slide-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 40%,#172023 67%);pointer-events:none}
.slide-selector{width:28px}.slide-selectors{gap:6px}
.hero-project-caption{max-width:44%}
.robotics-section{background:#eeefe8;border-top:1px solid #d4d9cd;overflow:hidden}
.robotics-layout{display:grid;grid-template-columns:1fr 1.03fr;gap:8%;align-items:center}
.robotics-copy h2{font-size:clamp(40px,4.1vw,62px);line-height:1.4}
.robotics-copy h2 span{color:#6a8052}
.robotics-copy .eyebrow{font-size:10px;letter-spacing:1px}
.robotics-lead{font-size:19px;line-height:1.9;margin-top:24px;max-width:470px}
.robotics-description{font-size:15px;color:#6b7567;line-height:2;margin-top:16px;max-width:470px}
.robot-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-block:1px solid #c9d0c1;padding-block:20px;margin:28px 0}
.robot-specs dt{font-size:12px;font-weight:500}.robot-specs dd{margin:7px 0 0;font:9px var(--latin);color:#73836a;direction:ltr;text-align:right}
.robotics-visual{position:relative;padding:0 0 34px 40px}
.robot-main-figure{margin:0;position:relative;height:570px;background:#c1c9bb;overflow:hidden}
.robot-main-figure>img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.robot-main-figure>figcaption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;gap:12px;background:linear-gradient(transparent,#122019ed);padding:40px 20px 22px;color:white;font-size:9px;align-items:center}
.robot-main-figure>figcaption>span:first-child{font-family:var(--latin);font-size:8px;letter-spacing:1px}
.robot-design-figure{position:absolute;left:0;bottom:0;margin:0;width:43%;background:#fff;border:7px solid #eeefe8;box-shadow:0 12px 45px #17201924}
.robot-design-figure>img{width:100%;height:auto;aspect-ratio:1.15;object-fit:contain}
.robot-design-figure>figcaption{font-size:9px;padding:7px 10px;text-align:center;background:white;color:#718066}
.automation-strip{margin-top:66px;border-top:1px solid #c9d0c1;padding-top:24px;display:flex;flex-wrap:wrap;gap:16px 35px;justify-content:space-between;font-size:13px}
.automation-strip>span:first-child{font-size:10px;color:#87907f;align-self:center}
.project-extra-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.project-extra-photos:empty{display:none}.project-extra-photos figure{margin:0;min-width:0}
.project-extra-photos img{height:175px;width:100%;object-fit:contain;background:#e5e8df}
.project-extra-photos figcaption{font-size:10px;line-height:1.7;margin-top:8px;color:#738267}
@media(max-width:1100px){.robot-main-figure{height:520px}.robotics-layout{gap:6%}.robotics-lead{font-size:17px}.robotics-description{font-size:14px}.robotics-copy .eyebrow{font-size:8px}.robotics-copy h2{font-size:43px}.robot-specs{gap:9px}.robot-specs dt{font-size:11px}}
@media(max-width:800px){.hero-slide-portrait img{width:77%}.hero-slide-portrait:after{background:linear-gradient(90deg,transparent 48%,#172023 82%)}.hero-project-caption{max-width:65%}.robotics-layout{grid-template-columns:1fr;gap:40px}.robotics-copy h2{font-size:48px}.robotics-lead,.robotics-description{max-width:100%}.robotics-visual{max-width:570px;width:100%;margin-inline:auto}.robot-main-figure{height:560px}.robot-design-figure{width:39%}.automation-strip{margin-top:43px;gap:13px 25px}.slide-selector{width:22px}}
@media(max-width:560px){.hero-slide-portrait img{width:100%}.hero-slide-portrait:after{background:linear-gradient(90deg,transparent 35%,#17202399 100%)}.hero-project-caption{max-width:83%;bottom:106px}.hero-footer{flex-wrap:wrap}.hero-footer .scroll-cue{display:none}.slideshow-navigation{width:100%;gap:12px;justify-content:space-between}.slide-selectors{flex:1;gap:5px}.slide-selector{flex:1;width:auto;min-width:15px;max-width:32px}.slide-counter{flex:none}.motion-toggle{flex:none;min-width:32px;min-height:32px}.robotics-copy h2{font-size:39px}.robotics-copy .eyebrow{font-size:7px;letter-spacing:.7px}.robotics-lead{font-size:17px}.robotics-description{font-size:14px}.robot-specs dt{font-size:10px}.robot-specs dd{font-size:8px}.robotics-visual{padding-left:20px}.robot-main-figure{height:430px}.robot-main-figure>figcaption{font-size:7px;padding:35px 12px 15px}.robot-main-figure>figcaption>span:first-child{font-size:6px}.robot-design-figure{width:44%;border-width:5px}.robot-design-figure>figcaption{font-size:7px}.automation-strip{font-size:11px;gap:13px 21px}.automation-strip>span:first-child{width:100%}.project-extra-photos{grid-template-columns:1fr;gap:20px}.project-extra-photos img{height:280px}.project-extra-photos figcaption{font-size:12px}}
