:root{--bg:#fff;--text:#1e2023;--muted:#747975;--border:#e3e6e2;--dark:#526d3b;--space:72px;--container:1600px}
body{font-size:16px}h1,h2,h3{font-weight:500}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #9dc6aa;outline-offset:4px}
.site-header,.site-header.scrolled{position:sticky;height:88px;background:#fff;color:#1e2023;border-bottom:1px solid var(--border);grid-template-columns:190px 1fr auto;padding:0 36px;backdrop-filter:none}.brand small{font-size:10px}.brand span{font-size:36px}.desktop-nav{gap:20px;font-size:14px}.header-cta{font-size:14px;background:var(--dark);color:#fff;border:0;padding:12px 18px}.menu-btn{font-size:16px}.mobile-menu{background:#fff;font-size:26px}.mobile-menu button{font-size:16px}
.visual{position:relative;margin:0;overflow:hidden;background:#edf0ec}.visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s}.visual figcaption{position:absolute;right:12px;bottom:10px;font-size:12px;line-height:1.4;background:rgba(255,255,255,.87);color:#494f49;padding:3px 7px;border-radius:2px}.visual-hero{display:grid;grid-template-columns:1.85fr 1fr;gap:10px;padding:12px 12px 0;height:clamp(460px,43vw,700px)}.hero-main,.hero-side>a{position:relative;overflow:hidden;display:block;min-height:0}.hero-main>.visual,.hero-side .visual{height:100%}.hero-main:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(9,20,13,.68))}.hero-title{position:absolute;left:38px;bottom:38px;color:#fff;z-index:2}.hero-title p{font-size:13px;letter-spacing:.13em;margin:0 0 16px}.hero-title h1{font-size:clamp(40px,4.3vw,72px);letter-spacing:-.045em;line-height:1.06;margin:0 0 26px}.photo-button{display:inline-block;background:#fff;color:#526d3b;padding:12px 20px;font-size:14px}.hero-side{display:grid;grid-template-rows:1fr 1fr;gap:10px;min-height:0}.photo-caption{position:absolute;left:0;right:0;bottom:0;padding:24px;color:white;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(transparent,rgba(5,16,10,.8))}.photo-caption h2{font-size:23px;margin:18px 0 0;letter-spacing:-.025em}.photo-caption>span{font-size:26px}.hero-side .visual figcaption{bottom:auto;top:10px}.hero-main .visual figcaption{top:12px;bottom:auto;z-index:3}a:hover>.visual img{transform:scale(1.025)}
.quick-categories{display:flex;align-items:center;gap:28px;padding:25px 36px;border-bottom:1px solid var(--border);overflow:auto;white-space:nowrap;font-size:14px}.quick-categories>span{font-size:12px;letter-spacing:.13em;color:#69716a;margin-right:8px}.quick-categories a:hover{color:#526d3b}.section{padding:72px 36px}.eyebrow{font-size:12px;letter-spacing:.14em;color:#6b776c;margin:0 0 12px}.section-head{margin-bottom:28px;align-items:center}.section-head h2,.compact-about h2{font-size:clamp(29px,3vw,46px);line-height:1.1;letter-spacing:-.04em;margin:0}.text-link{font-size:14px;border-bottom:1px solid #89908a;padding-bottom:5px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 18px}.product-image{aspect-ratio:1.2;margin:0 0 17px}.card-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.card-title small,.product-card>small{font-size:12px;color:#727973}.card-title h3,.product-card h2{font-size:22px;letter-spacing:-.03em;line-height:1.25;margin:5px 0 0}.card-title>span{font-size:23px}.product-card .card-action{display:block;font-size:14px;margin-top:12px}.product-card:hover .product-image,.project-card:hover .project-img{transform:none}.lookbook{display:grid;grid-template-columns:1.45fr 1fr;background:#eff2ed;margin:0 12px;min-height:480px}.lookbook-photo{height:100%;min-height:480px}.lookbook-copy{align-self:center;padding:64px}.lookbook-copy h2{font-size:clamp(35px,4.2vw,64px);letter-spacing:-.05em;line-height:1.04;margin:15px 0 22px}.lookbook-copy p:not(.eyebrow){max-width:360px;color:#5e675f}.lookbook-copy .btn{margin:14px 0 22px}.lookbook-copy small{display:block;font-size:12px;color:#697269}.sector-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sector-image{aspect-ratio:1.1;margin-bottom:15px}.compact-about{border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;gap:60px}.compact-about p{margin-top:0;color:#69706b;max-width:620px}.compact-about details{font-size:14px;margin-top:20px}.compact-about summary{cursor:pointer;padding-bottom:15px}.compact-about details p{margin-top:10px}.visual-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#526d3b;color:white;padding:52px 36px}.visual-cta h2{font-size:clamp(27px,3vw,42px);line-height:1.15;letter-spacing:-.035em;margin:0}.btn{font-size:14px;padding:14px 20px}
.page-hero{padding:52px 36px 28px;max-width:1600px;margin:auto}.page-hero h1{font-size:clamp(34px,4.2vw,62px);letter-spacing:-.045em;line-height:1.08;margin:0}.page-hero p:not(.eyebrow){margin-bottom:0;color:#6d756e;font-size:16px}.page-hero+.section{padding-top:28px}.filters{margin-bottom:25px;gap:8px}.filters button{font-size:14px;padding:9px 15px;border-radius:0}.project-img{aspect-ratio:1.25;margin:0 0 17px}.project-card h2,.sector-grid h2{font-size:24px}.project-card p{font-size:14px;max-width:400px}.sector-grid{gap:36px 20px}.sector-grid h2{margin:12px 0}.sector-grid>a>span,.solution-grid>a>span{font-size:14px}.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 20px}.solution-image{aspect-ratio:1.25}.solution-grid h2{font-size:24px;margin:15px 0 8px;letter-spacing:-.035em}.detail-hero{grid-template-columns:.85fr 1.5fr;padding:20px 20px 0;min-height:0;gap:32px}.detail-hero>div:first-child{padding:38px 24px;align-self:center}.detail-hero h1{font-size:clamp(34px,4vw,64px);line-height:1.08}.detail-hero .detail-image{min-height:0;aspect-ratio:1.25;height:100%}.detail-hero p:not(.eyebrow){max-width:480px}.detail-hero .btn{margin-top:16px}.prose-grid{padding-top:55px;padding-bottom:55px;gap:80px}.prose-grid h2{font-size:36px}.gallery>div{min-height:360px}.cta-band{padding:52px 36px;background:#526d3b}.cta-band h2{font-size:clamp(28px,3.5vw,48px);line-height:1.1}.project-detail-hero{height:70svh}.project-detail-hero h1{font-size:clamp(42px,5.3vw,78px)}.article{padding-top:60px}.article h1{font-size:clamp(36px,5vw,64px);line-height:1.08}.form label{font-size:14px}.cookie{max-width:360px;padding:16px}.cookie p{font-size:13px;margin-top:0}.cookie button{font-size:12px;border:1px solid #cbd1ca;background:#fff;padding:8px}.footer{padding:52px 36px 25px;background:#1e2023;gap:40px;font-size:14px}.footer p{color:#b4bfb7}.copyright{margin-top:10px;font-size:12px}
@media(min-width:1700px){.visual-hero,.quick-categories,.visual-cta{max-width:1700px;margin:auto}}
@media(max-width:1100px){.site-header,.site-header.scrolled{grid-template-columns:1fr auto}.desktop-nav,.header-cta{display:none}.menu-btn{display:block}.visual-hero{height:490px;grid-template-columns:1.5fr 1fr}.hero-title{left:24px;bottom:26px}.hero-title h1{font-size:46px}.photo-caption{padding:18px}.photo-caption h2{font-size:20px}.lookbook-copy{padding:35px}.lookbook,.lookbook-photo{min-height:380px}.detail-hero{grid-template-columns:1fr 1.3fr}.detail-hero>div:first-child{padding:20px 10px}.detail-hero h1{font-size:36px}}
@media(max-width:700px){.site-header,.site-header.scrolled{height:72px;padding:0 20px}.brand span{font-size:30px}.brand small{font-size:9px}.visual-hero{display:block;height:auto;padding:8px 8px 0}.hero-main{height:470px}.hero-title h1{font-size:44px}.hero-title p{font-size:11px}.hero-title{left:22px;bottom:28px}.hero-side{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:180px;margin-top:8px;gap:8px}.hero-side .visual figcaption{font-size:10px;right:6px;top:6px}.photo-caption{padding:12px}.photo-caption h2{font-size:16px;max-width:145px;line-height:1.2}.photo-caption>span{font-size:20px}.quick-categories{padding:19px 20px;gap:22px}.quick-categories>span{display:none}.section{padding:44px 20px}.section-head{display:flex;align-items:end;gap:15px;margin-bottom:23px}.section-head h2{font-size:29px}.text-link{font-size:12px;white-space:nowrap}.eyebrow{font-size:11px}.product-grid{grid-template-columns:1fr 1fr;gap:27px 12px}.product-image{aspect-ratio:1;margin-bottom:12px}.visual figcaption{font-size:10px;padding:2px 5px;bottom:7px;right:7px}.card-title h3,.product-card h2{font-size:17px}.card-title small,.product-card>small{font-size:11px}.card-title{align-items:start;gap:6px}.card-title>span{font-size:18px}.lookbook{display:flex;flex-direction:column;margin:0 8px;min-height:0}.lookbook-photo{min-height:0;aspect-ratio:1.25}.lookbook-copy{padding:32px 24px}.lookbook-copy h2{font-size:40px}.lookbook-copy .btn{margin-bottom:15px}.sector-preview-grid{grid-template-columns:1fr 1fr;gap:24px 12px}.sector-preview-grid>a:last-child{grid-column:1/-1}.sector-preview-grid>a:last-child .sector-image{aspect-ratio:2}.compact-about{grid-template-columns:1fr;gap:22px}.compact-about h2{font-size:30px}.visual-cta{padding:38px 24px;flex-direction:column;align-items:start}.visual-cta h2{font-size:32px}.page-hero{padding:36px 20px 16px}.page-hero h1{font-size:38px}.page-hero+.section{padding-top:22px}.filters{gap:6px}.filters button{font-size:12px;padding:8px 11px}.product-card .card-action{font-size:12px}.project-grid,.sector-grid,.solution-grid{grid-template-columns:1fr 1fr;gap:25px 12px}.project-card h2,.sector-grid h2,.solution-grid h2{font-size:19px}.project-card p{font-size:13px}.detail-hero{display:flex;flex-direction:column-reverse;padding:8px 8px 0;gap:0}.detail-hero .detail-image{width:100%;aspect-ratio:1.15}.detail-hero>div:first-child{padding:30px 16px}.detail-hero h1{font-size:38px}.prose-grid{grid-template-columns:1fr;gap:20px}.prose-grid h2{font-size:30px}.footer{padding:40px 24px 24px;grid-template-columns:1fr;gap:25px}.cookie{left:12px;bottom:12px;right:12px;max-width:340px}.article{padding:40px 20px 60px}.gallery>div{min-height:60vw}}

.project-backdrop{position:absolute;inset:0;height:100%}.project-backdrop figcaption{z-index:4;top:16px;bottom:auto}.gallery-photo{min-height:360px}.gallery{grid-template-columns:repeat(3,1fr);padding:12px;gap:12px}.gallery-photo img{height:100%;object-fit:cover}@media(max-width:700px){.gallery{grid-template-columns:1fr}.gallery-photo{min-height:0;aspect-ratio:1.3}}
/* Product collection and illustrated blog */
.catalog-heading{max-width:1600px;margin:auto;padding:45px 36px 36px;display:flex;align-items:end;justify-content:space-between;gap:24px;border-bottom:1px solid var(--border)}.catalog-heading h1{font-size:clamp(36px,4.3vw,64px);line-height:1.05;letter-spacing:-.045em;margin:0}.catalog-heading>p{font-size:14px;color:#6a736c;margin:0 0 4px}.catalog-layout{max-width:1600px;margin:auto;padding:32px 36px 80px;display:grid;grid-template-columns:210px minmax(0,1fr);gap:36px}.catalog-sidebar{position:sticky;top:120px;align-self:start}.catalog-filters{display:flex;flex-direction:column;border-top:1px solid var(--border)}.catalog-filters button{display:flex;justify-content:space-between;align-items:center;gap:10px;border:0;border-bottom:1px solid var(--border);padding:16px 10px;background:white;text-align:left;font-size:14px;cursor:pointer}.catalog-filters button.active{background:#526d3b;color:#fff}.catalog-filters button span{font-size:12px;opacity:.65}.catalog-help{display:block;font-size:13px;color:#69736b;margin-top:36px;padding:22px 0;border-top:1px solid var(--border)}.catalog-help strong{font-size:14px;display:block;margin-top:12px;color:#526d3b;font-weight:500}.catalog-all{font-size:13px;display:block;margin-top:20px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#748077;padding:0 0 16px}.catalog-item{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(210px,1fr);margin-bottom:24px;background:#f3f5f1;min-height:340px}.catalog-picture{display:block;min-width:0}.catalog-photo{height:100%;min-height:340px;aspect-ratio:1.2}.catalog-info{padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}.catalog-number{font-size:13px;color:#859087}.catalog-info .eyebrow{font-size:11px;margin-bottom:12px}.catalog-info h2{font-size:clamp(26px,2.6vw,40px);line-height:1.1;letter-spacing:-.04em;margin:0}.catalog-use{font-size:14px;color:#748077;line-height:1.5;margin:15px 0 0}.catalog-open{display:flex;align-items:center;justify-content:space-between;font-size:14px;border-top:1px solid #cbd3c9;padding-top:17px}.catalog-open span{font-size:24px}.catalog-item[hidden]{display:none}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 26px}.blog-image{aspect-ratio:1.65;margin-bottom:20px}.blog-grid small{font-size:12px;letter-spacing:.1em;color:#68776b}.blog-grid h2{font-size:clamp(24px,2.5vw,36px);line-height:1.15;margin:12px 0}.blog-grid p{font-size:15px;max-width:580px}.blog-grid>a>span{font-size:14px}
@media(max-width:1100px){.catalog-layout{grid-template-columns:170px minmax(0,1fr);gap:24px;padding-left:24px;padding-right:24px}.catalog-heading{padding-left:24px;padding-right:24px}.catalog-item{grid-template-columns:1fr}.catalog-photo{min-height:0;aspect-ratio:1.4}.catalog-info{display:grid;grid-template-columns:1fr auto;padding:24px;gap:14px}.catalog-number{display:none}.catalog-info h2{font-size:30px}.catalog-info .catalog-open{align-self:end;gap:20px}.catalog-use{margin-bottom:0}.catalog-heading>p{max-width:170px}.catalog-info .eyebrow{font-size:12px}}
@media(max-width:700px){.catalog-heading{padding:30px 20px 24px;display:block}.catalog-heading h1{font-size:39px}.catalog-heading>p{max-width:none;margin:16px 0 0}.catalog-layout{display:block;padding:0 16px 40px}.catalog-sidebar{position:static;margin:0 -16px 22px;padding:14px 16px;border-bottom:1px solid var(--border)}.catalog-sidebar>.eyebrow,.catalog-help{display:none}.catalog-filters{flex-direction:row;overflow:auto;gap:8px;border:0;padding-bottom:3px}.catalog-filters button{white-space:nowrap;padding:10px 13px;border:1px solid var(--border);font-size:13px;flex-shrink:0}.catalog-all{margin-top:10px}.catalog-item{margin-bottom:22px;min-height:0}.catalog-photo{aspect-ratio:1.18}.catalog-info{display:block;padding:22px}.catalog-info h2{font-size:30px}.catalog-info .eyebrow{font-size:11px}.catalog-open{margin-top:22px}.catalog-toolbar{font-size:12px}.blog-grid{grid-template-columns:1fr;gap:35px}.blog-image{margin-bottom:17px}.blog-grid h2{font-size:27px}.blog-grid p{font-size:15px}}
.about-hero{display:grid;grid-template-columns:1fr 1.4fr;min-height:510px;margin:12px;background:#eff2ed}.about-title{align-self:center;padding:60px}.about-title h1{font-size:clamp(45px,5vw,80px);line-height:1.03;letter-spacing:-.045em;margin:18px 0 24px}.about-title>p:not(.eyebrow){max-width:330px;color:#667367;margin-bottom:30px}.about-hero-photo{height:100%;min-height:510px}.about-intro{display:grid;grid-template-columns:1fr 2fr;gap:50px}.about-intro h2{font-size:clamp(35px,4vw,58px);line-height:1.08;letter-spacing:-.04em;margin:0}.about-intro>div{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.about-intro p:not(.eyebrow){color:#677568;max-width:450px}.about-panels{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:0}.about-panel-photo{aspect-ratio:1.3}.about-panels article>div{padding:24px 0}.about-panels span{font-size:12px;letter-spacing:.1em;color:#69766b}.about-panels h2{font-size:32px;line-height:1.12;letter-spacing:-.035em;margin:14px 0}.about-panels p{color:#657367;max-width:450px}.about-process{background:#526d3b;color:white;display:grid;grid-template-columns:1fr 1.3fr;padding:65px;gap:80px}.about-process .eyebrow{color:#bccdbf}.about-process h2{font-size:56px;line-height:1.05;letter-spacing:-.04em;margin:15px 0 30px}.about-process ol{list-style:decimal-leading-zero;margin:0;padding-left:35px}.about-process li{border-bottom:1px solid #576e5d;padding:0 0 16px 16px;margin-bottom:20px}.about-process h3{font-size:23px;margin:0 0 6px}.about-process li p{color:#c0cfc3;font-size:14px;margin:0}.about-last{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:55px}.about-last-photo{aspect-ratio:1.5}.about-last h2{font-size:40px;line-height:1.12;letter-spacing:-.04em;margin:10px 0 26px}[id]{scroll-margin-top:110px}
.contact-heading{padding:45px 36px 30px;max-width:1600px;margin:auto}.contact-heading h1{font-size:clamp(42px,4.8vw,70px);letter-spacing:-.05em;line-height:1.08;margin:0}.contact-heading>p:last-child{color:#6b786d}.contact-layout{display:grid;grid-template-columns:.8fr 1.3fr;gap:70px;max-width:1600px;margin:auto;padding:10px 36px 65px}.contact-details{padding-top:30px}.contact-details h2,.contact-form-panel h2{font-size:30px;letter-spacing:-.035em;margin:0 0 12px}.demo-note{font-size:13px;color:#7b867d;max-width:320px;margin-bottom:30px}.contact-method{display:flex;gap:17px;padding:22px 0;border-top:1px solid var(--border)}.method-icon{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;border:1px solid #d6dfd5;border-radius:50%;color:#526d3b}.contact-method h3{font-size:14px;margin:0 0 6px;color:#6f7c70}.contact-method p{font-size:18px;line-height:1.4;margin:0;overflow-wrap:anywhere}.contact-method small{font-size:12px;color:#859087}.contact-form-panel{padding:32px;background:#f2f5f0}.contact-form-panel>p{font-size:13px;color:#768274;margin:0 0 25px}.contact-form{gap:20px 16px}.form label{min-width:0}.form input:not([type=checkbox]),.form select,.form textarea{width:100%;min-width:0;font-size:16px;border-color:#d5ddd1;border-radius:0}.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid #526d3b;outline-offset:1px}.contact-form textarea{min-height:150px;resize:vertical}.upload-label>span{font-size:12px;color:#7d8879}.form input[type=file]{padding:12px;background:#fff;font-size:13px}.form .check{align-items:flex-start;line-height:1.5;font-size:13px}.check input{margin:3px 5px 0 0;width:17px;height:17px;accent-color:#526d3b;flex-shrink:0}.check a{text-decoration:underline;text-underline-offset:3px}.form-submit{display:flex;justify-content:space-between;align-items:center;gap:20px}.form-submit small{font-size:12px;color:#7d8879;max-width:240px}.form-submit button{white-space:nowrap}.form-feedback{padding:15px;background:#e1ecdc;color:#526d3b;font-size:14px;margin:0}.form-feedback[data-error=true]{background:#f6e5e1;color:#843d31}.contact-map{margin:0 36px 65px;background:#f2f5f0}.map-heading{padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:25px}.map-heading h2{font-size:29px;margin:0;letter-spacing:-.03em}.map-heading .eyebrow{margin:0 0 7px}.map-heading>p{font-size:13px;color:#778373}.contact-map iframe{width:100%;height:370px;border:0;display:block}.map-external{display:block;padding:15px 30px;font-size:14px}
.footer.footer-v3{display:block;padding:55px 36px 25px}.footer-brand-row{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid #42464b;padding-bottom:34px}.footer-brand-row p{font-size:14px;margin:12px 0 0}.social-icons{display:flex;gap:10px;justify-content:end}.social-icons :is(button,a){display:grid;place-items:center;width:38px;height:38px;color:#d6e0d7;border:1px solid #68725f;border-radius:50%;background:none;opacity:.85}.social-icons svg{width:19px;height:19px}.social-area small{font-size:11px;color:#9bad9e;display:block;margin-top:10px}.footer-columns{display:grid;grid-template-columns:1.3fr 1fr 1.15fr 1.1fr 1.2fr;gap:30px;padding:38px 0 42px}.footer-columns>div{min-width:0}.footer-columns h2{font-size:16px;font-weight:600;margin:0 0 21px;color:#fff}.footer-columns a{display:block;width:auto;font-size:13px;line-height:1.5;margin-bottom:11px;color:#bbcbbd}.footer-columns h2 a{font-size:16px;color:#fff}.footer-v3 a:after{display:none}.footer-v3 a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid #42464b;padding-top:24px;font-size:12px;color:#9bae9f}.footer-bottom nav{display:flex;gap:24px;flex-wrap:wrap}.footer-bottom a{width:auto}
@media(max-width:1100px){.about-title{padding:36px}.about-hero{min-height:430px}.about-hero-photo{min-height:430px}.about-title h1{font-size:51px}.about-intro{grid-template-columns:1fr;gap:20px}.about-process{padding:45px 36px;gap:40px}.contact-layout{grid-template-columns:.85fr 1.25fr;gap:25px;padding-left:24px;padding-right:24px}.contact-form-panel{padding:24px}.contact-form{grid-template-columns:1fr}.form-submit{flex-direction:column;align-items:stretch}.form-submit small{max-width:none}.contact-method p{font-size:16px}.contact-method{gap:12px}.contact-map{margin-left:24px;margin-right:24px}.footer-columns{grid-template-columns:repeat(3,1fr);gap:30px 24px}.footer-bottom{align-items:start}.footer-bottom nav{gap:14px}}
@media(max-width:700px){.about-hero{display:flex;flex-direction:column;margin:8px}.about-title{padding:34px 24px}.about-title h1{font-size:46px}.about-hero-photo{min-height:0;aspect-ratio:1.15}.about-intro>div{grid-template-columns:1fr;gap:12px}.about-panels{grid-template-columns:1fr;gap:24px}.about-panels article>div{padding:18px 0 0}.about-panels h2{font-size:28px}.about-process{grid-template-columns:1fr;padding:36px 24px;gap:35px}.about-process h2{font-size:43px}.about-last{grid-template-columns:1fr;gap:26px}.about-last h2{font-size:34px}.contact-heading{padding:32px 20px 20px}.contact-heading h1{font-size:41px}.contact-layout{display:flex;flex-direction:column;padding:0 20px 35px;gap:25px}.contact-details{padding-top:0}.contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.contact-method{flex-direction:column;gap:12px}.contact-method p{font-size:14px}.contact-method small{font-size:11px}.contact-details h2{font-size:26px}.demo-note{max-width:none}.contact-form-panel{padding:25px 20px;margin:0 -8px}.contact-form-panel h2{font-size:28px}.contact-map{margin:0 12px 35px}.map-heading{padding:24px;display:block}.map-heading p{margin-bottom:0}.contact-map iframe{height:300px}.footer.footer-v3{padding:38px 24px 24px}.footer-brand-row{align-items:start;flex-direction:column;gap:22px}.social-icons{justify-content:start}.footer-columns{grid-template-columns:1fr 1fr;gap:28px 18px;padding:30px 0}.footer-columns h2{margin-bottom:15px}.footer-columns a{font-size:12px}.footer-bottom{flex-direction:column;gap:17px}.footer-bottom nav{gap:12px;font-size:11px}}
.project-request-hero{display:grid;grid-template-columns:1.4fr 1fr;gap:0;background:#eef2eb;margin:12px;min-height:470px}.request-hero-photo{height:100%;min-height:470px}.project-request-hero>div{padding:55px;align-self:center}.project-request-hero h1{font-size:clamp(46px,5vw,72px);line-height:1.03;letter-spacing:-.045em;margin:15px 0 24px}.project-request-hero p:not(.eyebrow){color:#6c796b;max-width:380px}.project-request-hero .btn{margin-top:20px}.request-intro,.market-guide{display:grid;grid-template-columns:1fr 1fr;gap:65px}.request-intro h2,.market-guide h2{font-size:40px;line-height:1.1;letter-spacing:-.04em;margin:0}.request-intro>p,.market-guide p{color:#6d796c}.request-steps{display:grid;grid-template-columns:repeat(3,1fr);margin:0 36px;padding:24px 0;border-block:1px solid var(--border);gap:20px;font-size:14px}.reference-note{font-size:13px;color:#7c877d;margin:-10px 0 24px}.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.reference-photo{aspect-ratio:1.35;margin-bottom:17px}.reference-grid small{font-size:12px;color:#758372}.reference-grid h3{font-size:24px;line-height:1.2;letter-spacing:-.03em;margin:8px 0}.reference-grid h3 span{float:right}.reference-logos{padding:42px 36px;background:#f2f4f0}.reference-logos h2{font-size:28px;margin:0 0 10px;letter-spacing:-.03em}.reference-logos p:not(.eyebrow){font-size:13px;color:#7a8679}.logo-placeholders{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:25px}.logo-placeholders>div{display:flex;justify-content:center;align-items:center;gap:12px;border:1px dashed #b8c4b6;color:#849180;min-height:95px;font-size:16px;letter-spacing:.12em}.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:60px}.faq-section h2{font-size:39px;letter-spacing:-.04em;line-height:1.1;margin:0}.faq-list details{border-top:1px solid var(--border)}.faq-list details:last-child{border-bottom:1px solid var(--border)}.faq-list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;font-size:17px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:25px;color:#526d3b}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:15px;color:#6b7869;margin:0 0 22px;line-height:1.65}.project-form-heading{max-width:1000px;margin:auto;padding:40px 32px 0}.project-form-heading h2{font-size:43px;letter-spacing:-.04em;line-height:1.1;margin:12px 0}.project-form-heading>p:last-child{font-size:13px;color:#7a8777}.project-form-heading+.section{max-width:1000px;padding-top:25px}.project-form{background:#f2f5f0;padding:32px}.market-guide{background:#f3f5f1;max-width:none}.market-guide h3{font-size:23px;margin-top:0}.market-guide a{font-size:14px;text-decoration:underline}.page-sektorler .reference-section .reference-grid:has(>a:only-child){grid-template-columns:minmax(0,720px)}
@media(max-width:1100px){.project-request-hero>div{padding:30px}.project-request-hero h1{font-size:48px}.request-hero-photo{min-height:430px}.faq-section{gap:30px;grid-template-columns:.8fr 1.2fr}.request-intro,.market-guide{gap:35px}.reference-grid h3{font-size:21px}}
@media(max-width:700px){.project-request-hero{display:flex;flex-direction:column-reverse;margin:8px}.project-request-hero>div{padding:30px 24px}.project-request-hero h1{font-size:44px}.request-hero-photo{min-height:0;aspect-ratio:1.4}.request-intro,.market-guide{grid-template-columns:1fr;gap:20px}.request-intro h2,.market-guide h2{font-size:32px}.request-steps{grid-template-columns:1fr;gap:14px;margin:0 20px}.reference-grid{grid-template-columns:1fr;gap:28px}.reference-logos{padding:30px 20px}.reference-logos h2{font-size:27px}.logo-placeholders{grid-template-columns:1fr 1fr;gap:12px}.logo-placeholders>div{min-height:80px;font-size:13px}.faq-section{grid-template-columns:1fr;gap:25px}.faq-section h2{font-size:33px}.faq-list summary{font-size:16px}.project-form-heading{padding:25px 20px 0}.project-form-heading h2{font-size:34px}.project-form{padding:22px 18px}.project-form-heading+.section{padding:22px 12px 40px}}
.project-form-surface{background:#f4f4f2;padding:76px 36px 84px;border-block:1px solid #e9e9e5}.project-form-inner{max-width:980px;margin:auto}.project-form-surface .project-form-heading{padding:0;margin:0 0 50px;max-width:none}.project-form-surface .project-form-heading h2{font-size:clamp(36px,4vw,54px);letter-spacing:-.045em;margin:12px 0 18px}.project-form-surface .project-form-heading>p:last-child{font-size:15px;color:#757a74}.project-form-heading>p>span{font-size:12px;display:inline-block;margin-left:18px;color:#898d87}.project-form-surface .project-form{background:transparent;padding:0;gap:38px 56px}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) label{font-size:14px;color:#424a42;gap:7px}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) input:not([type=checkbox]),:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) select,:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) textarea{border:0;border-bottom:1px solid #b8bfb5;border-radius:0;background:transparent;box-shadow:none;padding:13px 0 16px;font-size:17px;color:#1e2023;outline:none;transition:border-color .2s}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) input::placeholder,:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) textarea::placeholder{color:#949a91;opacity:1}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) input:focus,:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) select:focus,:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) textarea:focus{border-bottom:2px solid #526d3b;padding-bottom:15px;outline:none}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) label:focus-within{color:#526d3b}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) textarea{min-height:110px;resize:vertical}.project-form-surface .project-file{margin-top:0}.project-file>span{display:flex;align-items:center;justify-content:space-between;gap:18px}.project-file small{font-size:12px;color:#8a9286}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) input[type=file]{font-size:13px;padding:16px 0 20px;cursor:pointer}.project-form-surface input[type=file]::file-selector-button{border:0;background:transparent;color:#526d3b;padding:7px 20px 7px 0;margin-right:20px;font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:5px;cursor:pointer}.project-send{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:3px}.project-send>div{max-width:620px}.project-send p{font-size:12px;color:#8a9185;margin:12px 0 0}.project-form-surface .project-send label{font-size:13px}.project-send button{min-width:205px;display:flex;gap:32px;padding:18px 23px}.project-send button span{font-size:22px;line-height:1}.project-send button:disabled{opacity:.6;cursor:wait}
@media(max-width:700px){.project-form-surface{padding:45px 24px 52px}.project-form-surface .project-form-heading{margin-bottom:34px}.project-form-surface .project-form-heading h2{font-size:37px}.project-form-surface .project-form-heading>p:last-child{font-size:14px}.project-form-heading>p>span{display:block;margin:12px 0 0}.project-form-surface .project-form{grid-template-columns:1fr;gap:28px}:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) input:not([type=checkbox]),:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) select,:is(.project-form-surface,.contact-form-panel) :is(.project-form,.contact-form) textarea{font-size:16px}.project-file>span{display:block}.project-file small{display:block;margin-top:8px}.project-send{align-items:stretch;flex-direction:column;gap:24px}.project-send button{width:100%;justify-content:space-between}.project-send p{line-height:1.5}}
.catalog-photo-cover{position:relative;padding:0;overflow:hidden;background:#e6ebe3}.catalog-photo-cover .catalog-cover-image{position:absolute;inset:0;height:100%}.catalog-photo-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,23,15,.64),transparent 65%);pointer-events:none}.catalog-cover-type{position:absolute;z-index:2;top:28px;left:28px;right:20px}.catalog-cover-type>span{font-size:54px;line-height:1;letter-spacing:-.07em;font-weight:600}.catalog-cover-type>small{font-size:19px;line-height:1.25;margin-top:15px;max-width:220px}.catalog-photo-cover figcaption{z-index:3}.catalog-grid>article>h2{font-size:26px;line-height:1.15;letter-spacing:-.03em}.catalog-grid>article>p{font-size:14px;color:#798474}.catalog-grid>article>button{font-size:13px;border:1px solid #d1d9cf;background:#f3f5f1;color:#7f8a7b}@media(max-width:700px){.catalog-cover-type{top:22px;left:22px}.catalog-cover-type>span{font-size:48px}.catalog-cover-type>small{font-size:20px}}
/* TDM corporate identity: original supplied logo, #526d3b and #1e2023. */
:root{--brand-green:#526d3b;--brand-charcoal:#1e2023;--dark:var(--brand-green);--text:var(--brand-charcoal);--accent:var(--brand-green)}.brand{display:inline-flex;align-items:center;line-height:1}.brand-logo{display:block;width:180px;height:auto;max-width:100%;object-fit:contain}.site-header,.site-header.scrolled{grid-template-columns:195px 1fr auto}.footer-brand-row .brand{background:transparent;padding:0;width:244px}.footer-brand-row .brand-logo{width:204px;filter:brightness(0) invert(1)}.footer.footer-v3{background:var(--brand-charcoal)}.catalog-brand-logo{display:block;width:195px;height:auto;padding:13px;background:#fff;letter-spacing:normal}.catalog-cover-type>small{margin-top:18px}.btn.dark,.header-cta,.catalog-filters button.active,.filters button.active{background:var(--brand-green);color:#fff}.btn.dark:hover{background:#435a30}.visual-cta,.about-process,.cta-band{background:var(--brand-green)}.eyebrow{color:var(--brand-green)}.about-process .eyebrow{color:#e3eadc}.project-form-surface{background:#f4f4f2}.social-icons :is(button,a){border-color:#647056}.footer-columns a{color:#c5cac2}.footer-brand-row p{color:#bdc5b8}.footer-bottom{color:#a9b19f}.footer-v3 .brand:hover{text-decoration:none}.catalog-cover-type img{max-width:90%}
@media(max-width:1100px){.site-header,.site-header.scrolled{grid-template-columns:1fr auto}.brand-logo{width:175px}}
@media(max-width:700px){.brand-logo{width:156px}.footer-brand-row .brand{width:224px;padding:14px 18px}.footer-brand-row .brand-logo{width:188px}.catalog-brand-logo{width:180px}}
.page-blog .article-image{margin-bottom:0}.article-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid #dce1d7;margin-bottom:38px}.article-date{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px}.article-date>span,.article-share>span{color:#7d8579;font-size:13px}.article-date small{color:#858d7f;font-size:11px}.article-share{display:flex;align-items:center;gap:15px}.article-share a{display:inline-flex;align-items:center;gap:7px;color:#526d3b;font-size:13px;padding:7px 0}.article-share svg{width:20px;height:20px}.article-share a:hover{text-decoration:underline;text-underline-offset:4px}.latest-posts{max-width:none;background:#f4f4f2;border-top:1px solid #e5e7e0}.latest-posts>.section-head,.latest-posts-grid{max-width:1528px;margin-left:auto;margin-right:auto}.latest-posts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.latest-posts .blog-image{aspect-ratio:1.5;margin-bottom:17px}.latest-post-card time{font-size:12px;color:#7b8377}.latest-post-card h3{font-size:clamp(23px,2.2vw,31px);line-height:1.2;letter-spacing:-.035em;margin:12px 0 20px}.latest-read{font-size:14px;color:#526d3b}.page-blog .article{padding-bottom:65px}
@media(max-width:700px){.article-meta{align-items:start;flex-direction:column;gap:14px;padding:20px 0;margin-bottom:28px}.article-date{gap:9px;font-size:13px}.article-share{gap:20px}.latest-posts-grid{grid-template-columns:1fr;gap:32px}.latest-post-card h3{font-size:27px;margin-bottom:14px}.page-blog .article{padding-bottom:45px}}
.breadcrumbs{padding:18px 36px;border-bottom:1px solid #eceee8;background:#fff;font-size:13px;color:#7b8377}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:5px 0;padding:0;margin:0;max-width:1528px;margin-inline:auto}.breadcrumbs li{display:inline-flex;align-items:baseline;min-width:0;gap:12px;margin-right:12px}.breadcrumbs a:hover{color:#526d3b;text-decoration:underline;text-underline-offset:3px}.breadcrumbs [aria-current=page]{color:#343e32;overflow-wrap:anywhere}.crumb-separator{color:#a0a69a}.demo-brand-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:30px;border-block:1px solid #dce1d6}.demo-brand{display:flex;align-items:center;justify-content:center;gap:14px;color:#56624e;min-height:130px;padding:24px 15px}.demo-brand+.demo-brand{border-left:1px solid #dce1d6}.demo-brand>svg{width:38px;height:38px;flex-shrink:0}.demo-brand>div{display:flex;flex-direction:column}.demo-brand strong{font-size:29px;line-height:1.15;letter-spacing:.025em}.demo-brand>div>span{font-size:9px;letter-spacing:.19em;margin-top:5px}.demo-brand-market strong{font-weight:800;letter-spacing:.12em}.demo-brand-studio strong{font-family:Georgia,serif;font-weight:400;font-size:31px;font-style:italic}.demo-brand-alan strong{font-size:27px;letter-spacing:.16em}.demo-brand-depo strong{font-size:23px;font-weight:800}.demo-brand-depo strong span{font-weight:400;margin-left:3px}
@media(max-width:1000px){.demo-brand-logos{grid-template-columns:1fr 1fr}.demo-brand:nth-child(3){border-left:0}.demo-brand:nth-child(n+3){border-top:1px solid #dce1d6}}
@media(max-width:700px){.breadcrumbs{padding:14px 20px;font-size:12px;line-height:1.6}.breadcrumbs li{gap:8px;margin-right:8px}.demo-brand{padding:20px 8px;min-height:110px;gap:9px}.demo-brand>svg{width:29px;height:29px}.demo-brand strong{font-size:24px}.demo-brand-studio strong{font-size:25px}.demo-brand-alan strong{font-size:22px}.demo-brand-depo strong{font-size:19px}.demo-brand>div>span{font-size:8px;letter-spacing:.12em}}

.contact-form-panel{background:#f4f4f2;padding:40px}
.contact-form-panel .contact-form{gap:30px 26px;background:transparent;padding:0}
.contact-form-panel input[type=file]::file-selector-button{border:0;background:transparent;color:var(--brand-green);padding:7px 16px 7px 0;margin-right:12px;font:inherit;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
a,button,summary{transition:color .2s,background-color .2s,border-color .2s,transform .2s}
button:not(:disabled),summary{cursor:pointer}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--brand-green);outline-offset:5px}
button:disabled,[aria-disabled=true]{cursor:not-allowed}
:is(.btn.dark,.header-cta):is(:hover,:focus-visible):not(:disabled){background:#3f552d;color:#fff;transform:translateY(-2px)}
:is(.btn.light,.photo-button):is(:hover,:focus-visible){background:#e6ebdf;color:#26341e}
.btn.outline:is(:hover,:focus-visible){background:var(--brand-green);border-color:var(--brand-green);color:#fff}
.btn.ghost:is(:hover,:focus-visible){background:#fff;color:var(--brand-green)}
:is(.menu-btn,.mobile-menu button,.cookie button):is(:hover,:focus-visible):not(:disabled){background:#e8edde;color:#354727}
:is(.filters,.catalog-filters) button:is(:hover,:focus-visible):not(.active){background:#e8edde;border-color:var(--brand-green);color:#354727}
:is(.filters,.catalog-filters) button.active:is(:hover,:focus-visible){background:#3f552d;color:white}
:is(.text-link,.catalog-open,.catalog-all,.catalog-help,.map-external,.quick-categories a,.mobile-menu>a:not(.btn),.desktop-nav a):is(:hover,:focus-visible){color:var(--brand-green);text-decoration:underline;text-underline-offset:5px}
:is(.product-card,.project-card,.sector-grid>a,.sector-preview-grid>a,.solution-grid>a,.blog-grid>a,.latest-post-card):is(:hover,:focus-visible) :is(h2,h3,.card-action,.latest-read){color:var(--brand-green)}
a:focus-visible .visual img{transform:scale(1.025)}
summary:is(:hover,:focus-visible){color:var(--brand-green);background:#f4f4f2}
.footer-v3 a:not(.brand):is(:hover,:focus-visible){color:#fff;text-decoration:underline;text-underline-offset:5px}
:is(.project-form,.contact-form) input[type=file]:hover::file-selector-button{color:#26341e}
@media(max-width:700px){.contact-form-panel{padding:30px 22px}.contact-form-panel .contact-form{gap:28px}}
@media(prefers-reduced-motion:reduce){a,button,summary{transition:none!important}.btn:is(:hover,:focus-visible){transform:none!important}}

/* Imported product catalog */
.product-catalog-visual img{object-fit:contain;background:#f1f3ef}.product-image-pending{display:grid;place-items:center;background:linear-gradient(135deg,#eef1ec,#f8f9f6);color:#526d3b}.product-image-pending>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:100%;padding:30px;text-align:center}.product-image-pending span{font-size:12px;letter-spacing:.13em;text-transform:uppercase}.product-image-pending small{max-width:260px;color:#7b8579}.catalog-category-tree{display:flex;flex-direction:column;border-top:1px solid var(--border)}.catalog-category-tree a{display:flex;align-items:start;justify-content:space-between;gap:10px;padding:13px 10px;border-bottom:1px solid var(--border);font-size:13px;line-height:1.35}.catalog-category-tree a small{color:#859087;font-size:11px}.catalog-category-tree a:is(:hover,:focus-visible){background:#e8edde;color:#354727}.catalog-category-tree a.active{background:var(--brand-green);color:#fff}.catalog-category-tree a.active small{color:#fff;opacity:.75}.catalog-subcategories{margin-left:13px;border-left:1px solid #d9ded6}.catalog-subcategories a{padding-left:14px;font-size:12px}.catalog-pagination{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;padding:22px 0 4px}.catalog-pagination a,.catalog-pagination span{display:grid;place-items:center;min-width:40px;min-height:40px;padding:8px 12px;border:1px solid var(--border);font-size:13px}.catalog-pagination a:is(:hover,:focus-visible),.catalog-pagination a.active{background:var(--brand-green);border-color:var(--brand-green);color:#fff}.catalog-empty{padding:70px 20px;text-align:center;background:#f3f5f1}.product-code{margin-top:25px}.product-specs{margin:12px 0 0;border-top:1px solid var(--border)}.product-specs>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--border)}.product-specs dt{color:#70796f}.product-specs dd{margin:0;font-weight:600}.reference-grid .product-image-pending{aspect-ratio:1.25}.catalog-photo.product-image-pending>div{min-height:340px}
@media(max-width:700px){.catalog-category-tree{flex-direction:row;overflow:auto;gap:8px;border:0;padding-bottom:3px}.catalog-category-group{display:contents}.catalog-category-tree a{white-space:nowrap;padding:10px 13px;border:1px solid var(--border);font-size:12px;flex-shrink:0}.catalog-subcategories{display:contents;margin:0;border:0}.catalog-category-tree a small{margin-left:5px}.catalog-photo.product-image-pending>div{min-height:0}.catalog-pagination{justify-content:flex-start}.catalog-pagination a,.catalog-pagination span{min-width:36px;min-height:36px;padding:7px 10px}}
@media(min-width:701px){.catalog-category-tree{max-height:calc(100vh - 210px);overflow:auto}}

/* Homepage product banner */
.visual-hero.home-banner{display:block;height:clamp(460px,43vw,700px)}
.home-banner{position:relative;overflow:hidden}.home-slider-track{display:flex;height:100%;transition:transform .8s cubic-bezier(.22,.61,.36,1);will-change:transform}.home-banner .hero-main{display:block;height:100%;flex:0 0 100%}
.home-banner .hero-main>.visual{height:100%}
.home-banner .hero-picture{position:relative;isolation:isolate;background:#263328}
.home-banner .hero-picture::before{content:"";position:absolute;z-index:0;inset:-30px;background-image:var(--hero-bg);background-size:cover;background-position:center;filter:blur(24px) saturate(.8);transform:scale(1.12);opacity:.68}
.home-banner .hero-picture::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(17,28,20,.4),rgba(17,28,20,.05) 28%,rgba(17,28,20,.05) 72%,rgba(17,28,20,.4))}
.home-banner .hero-picture.product-catalog-visual img{position:relative;z-index:2;object-fit:contain;object-position:center 48%;background:transparent;filter:drop-shadow(0 20px 38px rgba(10,20,13,.24))}
.home-slider-dots{position:absolute;right:34px;bottom:30px;z-index:4;display:flex;gap:9px}.home-slider-dots button{width:32px;height:4px;padding:0;border:0;background:rgba(255,255,255,.48);cursor:pointer}.home-slider-dots button[aria-pressed=true]{background:#fff}.home-slider-dots button:is(:hover,:focus-visible){background:#fff}
@media(max-width:700px){.visual-hero.home-banner{height:500px}.home-banner .hero-main{height:500px}.home-slider-dots{right:22px;bottom:20px}.home-slider-dots button{width:25px}}

/* Infinite reference-brand marquee moved from Corporate to the homepage. */
.home-reference-marquee{padding:58px 0;background:#f2f4f0;border-block:1px solid #e2e6df;overflow:hidden}.home-reference-heading{padding:0 36px 28px}.home-reference-heading h2{font-size:clamp(29px,3vw,46px);line-height:1.1;letter-spacing:-.04em;margin:0 0 10px}.home-reference-heading>p:last-child{font-size:13px;color:#7a8679;margin:0}.reference-marquee-viewport{overflow:hidden}.reference-marquee-track{display:flex;width:max-content;animation:reference-marquee 28s linear infinite}.reference-marquee-track>.demo-brand-logos,.reference-marquee-track>div>.demo-brand-logos{display:flex;grid-template-columns:none;flex-shrink:0;margin:0;border-block:1px solid #dce1d6}.reference-marquee-track>div{display:flex;flex-shrink:0}.reference-marquee-track .demo-brand{width:280px;flex:0 0 280px}.reference-marquee-viewport:is(:hover,:focus-within) .reference-marquee-track{animation-play-state:paused}@keyframes reference-marquee{to{transform:translateX(-50%)}}
@media(max-width:700px){.home-reference-marquee{padding:42px 0}.home-reference-heading{padding:0 20px 22px}.home-reference-heading h2{font-size:30px}.reference-marquee-track .demo-brand{width:220px;flex-basis:220px}}

/* Compact, scan-friendly product catalog cards. */
.catalog-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 16px}.catalog-product-grid .catalog-item{display:block;min-height:0;margin:0;background:transparent}.catalog-product-grid .catalog-photo{width:100%;height:auto;min-height:0;aspect-ratio:1;background:#f1f3ef}.catalog-product-grid .catalog-info{display:block;padding:15px 2px 0}.catalog-product-grid .catalog-info .eyebrow{margin:0 0 8px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-product-grid .catalog-info h2{font-size:18px;line-height:1.25;letter-spacing:-.025em;margin:0;min-height:2.5em}.catalog-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;padding-top:10px;border-top:1px solid var(--border);font-size:11px;color:#7a8478}.catalog-card-meta a{font-size:12px;color:var(--brand-green)}.catalog-product-grid .catalog-item:is(:hover,:focus-within) h2{color:var(--brand-green)}
@media(max-width:1250px){.catalog-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.catalog-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.catalog-product-grid .catalog-info h2{font-size:17px}}
@media(max-width:420px){.catalog-product-grid .catalog-info h2{font-size:15px}.catalog-card-meta{font-size:10px}.catalog-card-meta a{font-size:11px}}

/* Product detail gallery: one main image and three selectable views. */
.product-detail-gallery{min-width:0;align-self:stretch;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:12px}.product-detail-gallery .detail-image{width:100%;height:100%;min-height:0;aspect-ratio:1.25}.product-gallery-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.product-gallery-thumbs button{display:block;border:1px solid var(--border);background:#f1f3ef;padding:0;aspect-ratio:1.75;overflow:hidden;cursor:pointer}.product-gallery-thumbs button.active{border:2px solid var(--brand-green)}.product-gallery-thumbs img{display:block;width:100%;height:100%;object-fit:contain;background:#f1f3ef}.product-gallery-thumbs button:is(:hover,:focus-visible){border-color:var(--brand-green);background:#e8edde}.product-gallery-main img{transition:opacity .2s ease}
@media(max-width:700px){.product-detail-gallery{width:100%;display:block}.product-detail-gallery .detail-image{aspect-ratio:1.15}.product-gallery-thumbs{margin-top:8px;gap:8px}.product-gallery-thumbs button{aspect-ratio:1.25}}

/* Final interaction polish: the brand ribbon always moves and contact rows are links. */
.reference-marquee-track{animation:reference-marquee 28s linear infinite!important}
.reference-marquee-track .demo-brand img{display:block;max-width:180px;max-height:72px;width:auto;height:auto;object-fit:contain}.reference-marquee-track .demo-brand{text-decoration:none}
.reference-marquee-viewport:is(:hover,:focus-within) .reference-marquee-track{animation-play-state:running!important}
.home-slider-track{transition:transform .8s cubic-bezier(.22,.61,.36,1)!important}
.contact-method{color:inherit;text-decoration:none;transition:background-color .2s,padding .2s}
.contact-method:is(:hover,:focus-visible){background:#edf1ea;padding-left:10px;padding-right:10px}
@media(max-width:700px){a,button{touch-action:manipulation}.catalog-pagination{position:relative;z-index:2;justify-content:center;gap:8px;padding:28px 0 8px}.catalog-pagination a,.catalog-pagination span{min-width:44px;min-height:44px;padding:10px 12px}.catalog-pagination a[rel]{flex:1 1 auto;max-width:130px}}
